From 59518cca11567e06d5fa545f787c29badc6d52f8 Mon Sep 17 00:00:00 2001 From: Le Roux Erwan <erwan.le-roux@irstea.fr> Date: Wed, 25 Mar 2020 15:45:55 +0100 Subject: [PATCH] [contrasting project] modify year_max, from now on it will be the year max reached by the data, and not the year max + 1. --- .../scm_models_data/abstract_study.py | 9 +- .../scm_models_data/utils.py | 1288 ++++++++++++++++- .../visualization/main_study_visualizer.py | 4 +- .../stations_data/comparison_analysis.py | 6 +- .../test_edf_data/test_weather_types.py | 5 + .../test_SCM_oriented_data.py | 2 +- .../test_meteo_france_data/test_SCM_study.py | 4 +- 7 files changed, 1291 insertions(+), 27 deletions(-) diff --git a/extreme_data/meteo_france_data/scm_models_data/abstract_study.py b/extreme_data/meteo_france_data/scm_models_data/abstract_study.py index a36101eb..fb266947 100644 --- a/extreme_data/meteo_france_data/scm_models_data/abstract_study.py +++ b/extreme_data/meteo_france_data/scm_models_data/abstract_study.py @@ -21,7 +21,7 @@ from netCDF4 import Dataset from extreme_data.meteo_france_data.scm_models_data.abstract_variable import AbstractVariable from extreme_data.meteo_france_data.scm_models_data.utils import ALTITUDES, ZS_INT_23, ZS_INT_MASK, LONGITUDES, \ LATITUDES, ORIENTATIONS, SLOPES, ORDERED_ALLSLOPES_ALTITUDES, ORDERED_ALLSLOPES_ORIENTATIONS, \ - ORDERED_ALLSLOPES_SLOPES, ORDERED_ALLSLOPES_MASSIFNUM, date_to_str + ORDERED_ALLSLOPES_SLOPES, ORDERED_ALLSLOPES_MASSIFNUM, date_to_str, WP_PATTERN_MAX_YEAR from extreme_data.meteo_france_data.scm_models_data.visualization.utils import get_km_formatter from extreme_fit.function.margin_function.abstract_margin_function import \ AbstractMarginFunction @@ -58,7 +58,7 @@ class AbstractStudy(object): # REANALYSIS_FOLDER = 'SAFRAN_montagne-CROCUS_2019/postes/reanalysis' - def __init__(self, variable_class: type, altitude: int = 1800, year_min=1959, year_max=2020, + def __init__(self, variable_class: type, altitude: int = 1800, year_min=1959, year_max=2019, multiprocessing=True, orientation=None, slope=20.0): assert isinstance(altitude, int), type(altitude) assert altitude in ALTITUDES, altitude @@ -93,8 +93,7 @@ class AbstractStudy(object): @cached_property def year_to_wps(self): - year_max_with_data = self.year_max - 1 - assert 1954 <= self.year_min and year_max_with_data <= 2008, \ + assert 1954 <= self.year_min and self.year_max <= WP_PATTERN_MAX_YEAR, \ 'Weather patterns are not available between {} and {}'.format(self.year_min, self.year_max) pass @@ -249,7 +248,7 @@ class AbstractStudy(object): nc_files = [(int(f.split('_')[-2][:4])+1, f) for f in os.listdir(self.study_full_path) if f.endswith('.nc')] ordered_years, path_files = zip(*[(year, op.join(self.study_full_path, nc_file)) for year, nc_file in sorted(nc_files, key=lambda t: t[0]) - if self.year_min <= year < self.year_max]) + if self.year_min <= year <= self.year_max]) return path_files, ordered_years """ Temporal properties """ diff --git a/extreme_data/meteo_france_data/scm_models_data/utils.py b/extreme_data/meteo_france_data/scm_models_data/utils.py index 0ae80847..f73d6db2 100644 --- a/extreme_data/meteo_france_data/scm_models_data/utils.py +++ b/extreme_data/meteo_france_data/scm_models_data/utils.py @@ -1,4 +1,3 @@ - """ ZS was extracted from a netcdf file """ @@ -6,10 +5,13 @@ from datetime import datetime import numpy as np +WP_PATTERN_MAX_YEAR = 2008 + def date_to_str(date: datetime) -> str: return str(date).split()[0] + ZS = """[ 300. 600. 900. 1200. 1500. 1800. 2100. 2400. 2700. 3000. 3300. 300. 600. 900. 1200. 1500. 1800. 2100. 2400. 2700. 3000. 300. 600. 900. 1200. 1500. 1800. 2100. 2400. 2700. 3000. 3300. 3600. 3900. 4200. 4500. @@ -36,7 +38,6 @@ ZS = """[ 300. 600. 900. 1200. 1500. 1800. 2100. 2400. 2700. 3000. 3300. 300. ZS_INT = [int(float(e)) for e in ZS[1:-1].split()] ALTITUDES = sorted(set(ZS_INT)) - # Create a ZS_INT with only the 23 first massifs ZS_INT_23 = ZS_INT[:-10].copy() @@ -45,8 +46,56 @@ ZS_INT_MASK = np.array(ZS_INT) ZS_INT_MASK[-10:] = np.nan # Longitudes and Latitudes in degrees -LONGITUDES = [6.64493, 6.64493, 6.64493, 6.64493, 6.64493, 6.64493, 6.64493, 6.64493, 6.64493, 6.64493, 6.64493, 6.39738, 6.39738, 6.39738, 6.39738, 6.39738, 6.39738, 6.39738, 6.39738, 6.39738, 6.39738, 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, 6.10178, 6.10178, 6.10178, 6.10178, 6.10178, 6.10178, 6.10178, 6.10178, 6.10178, 6.57668, 6.57668, 6.57668, 6.57668, 6.57668, 6.57668, 6.57668, 6.57668, 6.57668, 6.57668, 6.90053, 6.90053, 6.90053, 6.90053, 6.90053, 6.90053, 6.90053, 6.90053, 6.90053, 6.90053, 6.90053, 6.90053, 5.80795, 5.80795, 5.80795, 5.80795, 5.80795, 5.80795, 5.80795, 5.80795, 6.00201, 6.00201, 6.00201, 6.00201, 6.00201, 6.00201, 6.00201, 6.00201, 6.00201, 6.00201, 6.00201, 6.35451, 6.35451, 6.35451, 6.35451, 6.35451, 6.35451, 6.35451, 6.35451, 6.35451, 6.35451, 6.35451, 6.35451, 6.61786, 6.61786, 6.61786, 6.61786, 6.61786, 6.61786, 6.61786, 6.61786, 6.61786, 6.61786, 6.61786, 6.61786, 6.61786, 6.91492, 6.91492, 6.91492, 6.91492, 6.91492, 6.91492, 6.91492, 6.91492, 6.91492, 6.91492, 6.91492, 6.21836, 6.21836, 6.21836, 6.21836, 6.21836, 6.21836, 6.21836, 6.21836, 6.21836, 6.21836, 6.21836, 6.59154, 6.59154, 6.59154, 6.59154, 6.59154, 6.59154, 6.59154, 6.59154, 6.59154, 5.4932, 5.4932, 5.4932, 5.4932, 5.4932, 5.4932, 5.4932, 5.4932, 5.4932, 5.99951, 5.99951, 5.99951, 5.99951, 5.99951, 5.99951, 5.99951, 5.99951, 5.99951, 5.99951, 5.99951, 5.99951, 5.99951, 5.99951, 5.99951, 6.45769, 6.45769, 6.45769, 6.45769, 6.45769, 6.45769, 6.45769, 6.45769, 6.45769, 6.45769, 6.45769, 6.45769, 6.79352, 6.79352, 6.79352, 6.79352, 6.79352, 6.79352, 6.79352, 6.79352, 6.79352, 5.8499, 5.8499, 5.8499, 5.8499, 5.8499, 5.8499, 5.8499, 5.8499, 5.8499, 5.8499, 6.23469, 6.23469, 6.23469, 6.23469, 6.23469, 6.23469, 6.23469, 6.23469, 6.23469, 6.23469, 6.23469, 6.50065, 6.50065, 6.50065, 6.50065, 6.50065, 6.50065, 6.50065, 6.50065, 6.50065, 6.50065, 6.67076, 6.67076, 6.67076, 6.67076, 6.67076, 6.67076, 6.67076, 6.67076, 6.67076, 6.67076, 6.67076, 6.79647, 6.79647, 6.79647, 6.79647, 6.79647, 6.79647, 6.79647, 6.79647, 6.79647, 6.79647, 6.79647, 6.79647, 7.31586, 7.31586, 7.31586, 7.31586, 7.31586, 7.31586, 7.31586, 7.31586, 7.31586, 7.31586, 7.31586, 7.3025, 7.3025, 7.3025, 7.3025, 7.3025, 7.3025, 7.3025, 7.3025, 7.3025, 7.3025] -LATITUDES = [46.17685, 46.17685, 46.17685, 46.17685, 46.17685, 46.17685, 46.17685, 46.17685, 46.17685, 46.17685, 46.17685, 45.89494, 45.89494, 45.89494, 45.89494, 45.89494, 45.89494, 45.89494, 45.89494, 45.89494, 45.89494, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.65578, 45.65578, 45.65578, 45.65578, 45.65578, 45.65578, 45.65578, 45.65578, 45.65578, 45.65756, 45.65756, 45.65756, 45.65756, 45.65756, 45.65756, 45.65756, 45.65756, 45.65756, 45.65756, 45.54313, 45.54313, 45.54313, 45.54313, 45.54313, 45.54313, 45.54313, 45.54313, 45.54313, 45.54313, 45.54313, 45.54313, 45.37753, 45.37753, 45.37753, 45.37753, 45.37753, 45.37753, 45.37753, 45.37753, 45.27395, 45.27395, 45.27395, 45.27395, 45.27395, 45.27395, 45.27395, 45.27395, 45.27395, 45.27395, 45.27395, 45.32783, 45.32783, 45.32783, 45.32783, 45.32783, 45.32783, 45.32783, 45.32783, 45.32783, 45.32783, 45.32783, 45.32783, 45.411, 45.411, 45.411, 45.411, 45.411, 45.411, 45.411, 45.411, 45.411, 45.411, 45.411, 45.411, 45.411, 45.26072, 45.26072, 45.26072, 45.26072, 45.26072, 45.26072, 45.26072, 45.26072, 45.26072, 45.26072, 45.26072, 45.11517, 45.11517, 45.11517, 45.11517, 45.11517, 45.11517, 45.11517, 45.11517, 45.11517, 45.11517, 45.11517, 45.01923, 45.01923, 45.01923, 45.01923, 45.01923, 45.01923, 45.01923, 45.01923, 45.01923, 45.00409, 45.00409, 45.00409, 45.00409, 45.00409, 45.00409, 45.00409, 45.00409, 45.00409, 44.94609, 44.94609, 44.94609, 44.94609, 44.94609, 44.94609, 44.94609, 44.94609, 44.94609, 44.94609, 44.94609, 44.94609, 44.94609, 44.94609, 44.94609, 44.83699, 44.83699, 44.83699, 44.83699, 44.83699, 44.83699, 44.83699, 44.83699, 44.83699, 44.83699, 44.83699, 44.83699, 44.77139, 44.77139, 44.77139, 44.77139, 44.77139, 44.77139, 44.77139, 44.77139, 44.77139, 44.69552, 44.69552, 44.69552, 44.69552, 44.69552, 44.69552, 44.69552, 44.69552, 44.69552, 44.69552, 44.70565, 44.70565, 44.70565, 44.70565, 44.70565, 44.70565, 44.70565, 44.70565, 44.70565, 44.70565, 44.70565, 44.57217, 44.57217, 44.57217, 44.57217, 44.57217, 44.57217, 44.57217, 44.57217, 44.57217, 44.57217, 44.44757, 44.44757, 44.44757, 44.44757, 44.44757, 44.44757, 44.44757, 44.44757, 44.44757, 44.44757, 44.44757, 44.12458, 44.12458, 44.12458, 44.12458, 44.12458, 44.12458, 44.12458, 44.12458, 44.12458, 44.12458, 44.12458, 44.12458, 44.12649, 44.12649, 44.12649, 44.12649, 44.12649, 44.12649, 44.12649, 44.12649, 44.12649, 44.12649, 44.12649, 46.39, 46.39, 46.39, 46.39, 46.39, 46.39, 46.39, 46.39, 46.39, 46.39] +LONGITUDES = [6.64493, 6.64493, 6.64493, 6.64493, 6.64493, 6.64493, 6.64493, 6.64493, 6.64493, 6.64493, 6.64493, + 6.39738, 6.39738, 6.39738, 6.39738, 6.39738, 6.39738, 6.39738, 6.39738, 6.39738, 6.39738, 6.82392, + 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, 6.82392, + 6.82392, 6.82392, 6.82392, 6.82392, 6.10178, 6.10178, 6.10178, 6.10178, 6.10178, 6.10178, 6.10178, + 6.10178, 6.10178, 6.57668, 6.57668, 6.57668, 6.57668, 6.57668, 6.57668, 6.57668, 6.57668, 6.57668, + 6.57668, 6.90053, 6.90053, 6.90053, 6.90053, 6.90053, 6.90053, 6.90053, 6.90053, 6.90053, 6.90053, + 6.90053, 6.90053, 5.80795, 5.80795, 5.80795, 5.80795, 5.80795, 5.80795, 5.80795, 5.80795, 6.00201, + 6.00201, 6.00201, 6.00201, 6.00201, 6.00201, 6.00201, 6.00201, 6.00201, 6.00201, 6.00201, 6.35451, + 6.35451, 6.35451, 6.35451, 6.35451, 6.35451, 6.35451, 6.35451, 6.35451, 6.35451, 6.35451, 6.35451, + 6.61786, 6.61786, 6.61786, 6.61786, 6.61786, 6.61786, 6.61786, 6.61786, 6.61786, 6.61786, 6.61786, + 6.61786, 6.61786, 6.91492, 6.91492, 6.91492, 6.91492, 6.91492, 6.91492, 6.91492, 6.91492, 6.91492, + 6.91492, 6.91492, 6.21836, 6.21836, 6.21836, 6.21836, 6.21836, 6.21836, 6.21836, 6.21836, 6.21836, + 6.21836, 6.21836, 6.59154, 6.59154, 6.59154, 6.59154, 6.59154, 6.59154, 6.59154, 6.59154, 6.59154, 5.4932, + 5.4932, 5.4932, 5.4932, 5.4932, 5.4932, 5.4932, 5.4932, 5.4932, 5.99951, 5.99951, 5.99951, 5.99951, + 5.99951, 5.99951, 5.99951, 5.99951, 5.99951, 5.99951, 5.99951, 5.99951, 5.99951, 5.99951, 5.99951, + 6.45769, 6.45769, 6.45769, 6.45769, 6.45769, 6.45769, 6.45769, 6.45769, 6.45769, 6.45769, 6.45769, + 6.45769, 6.79352, 6.79352, 6.79352, 6.79352, 6.79352, 6.79352, 6.79352, 6.79352, 6.79352, 5.8499, 5.8499, + 5.8499, 5.8499, 5.8499, 5.8499, 5.8499, 5.8499, 5.8499, 5.8499, 6.23469, 6.23469, 6.23469, 6.23469, + 6.23469, 6.23469, 6.23469, 6.23469, 6.23469, 6.23469, 6.23469, 6.50065, 6.50065, 6.50065, 6.50065, + 6.50065, 6.50065, 6.50065, 6.50065, 6.50065, 6.50065, 6.67076, 6.67076, 6.67076, 6.67076, 6.67076, + 6.67076, 6.67076, 6.67076, 6.67076, 6.67076, 6.67076, 6.79647, 6.79647, 6.79647, 6.79647, 6.79647, + 6.79647, 6.79647, 6.79647, 6.79647, 6.79647, 6.79647, 6.79647, 7.31586, 7.31586, 7.31586, 7.31586, + 7.31586, 7.31586, 7.31586, 7.31586, 7.31586, 7.31586, 7.31586, 7.3025, 7.3025, 7.3025, 7.3025, 7.3025, + 7.3025, 7.3025, 7.3025, 7.3025, 7.3025] +LATITUDES = [46.17685, 46.17685, 46.17685, 46.17685, 46.17685, 46.17685, 46.17685, 46.17685, 46.17685, 46.17685, + 46.17685, 45.89494, 45.89494, 45.89494, 45.89494, 45.89494, 45.89494, 45.89494, 45.89494, 45.89494, + 45.89494, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, + 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.89794, 45.65578, 45.65578, 45.65578, + 45.65578, 45.65578, 45.65578, 45.65578, 45.65578, 45.65578, 45.65756, 45.65756, 45.65756, 45.65756, + 45.65756, 45.65756, 45.65756, 45.65756, 45.65756, 45.65756, 45.54313, 45.54313, 45.54313, 45.54313, + 45.54313, 45.54313, 45.54313, 45.54313, 45.54313, 45.54313, 45.54313, 45.54313, 45.37753, 45.37753, + 45.37753, 45.37753, 45.37753, 45.37753, 45.37753, 45.37753, 45.27395, 45.27395, 45.27395, 45.27395, + 45.27395, 45.27395, 45.27395, 45.27395, 45.27395, 45.27395, 45.27395, 45.32783, 45.32783, 45.32783, + 45.32783, 45.32783, 45.32783, 45.32783, 45.32783, 45.32783, 45.32783, 45.32783, 45.32783, 45.411, 45.411, + 45.411, 45.411, 45.411, 45.411, 45.411, 45.411, 45.411, 45.411, 45.411, 45.411, 45.411, 45.26072, 45.26072, + 45.26072, 45.26072, 45.26072, 45.26072, 45.26072, 45.26072, 45.26072, 45.26072, 45.26072, 45.11517, + 45.11517, 45.11517, 45.11517, 45.11517, 45.11517, 45.11517, 45.11517, 45.11517, 45.11517, 45.11517, + 45.01923, 45.01923, 45.01923, 45.01923, 45.01923, 45.01923, 45.01923, 45.01923, 45.01923, 45.00409, + 45.00409, 45.00409, 45.00409, 45.00409, 45.00409, 45.00409, 45.00409, 45.00409, 44.94609, 44.94609, + 44.94609, 44.94609, 44.94609, 44.94609, 44.94609, 44.94609, 44.94609, 44.94609, 44.94609, 44.94609, + 44.94609, 44.94609, 44.94609, 44.83699, 44.83699, 44.83699, 44.83699, 44.83699, 44.83699, 44.83699, + 44.83699, 44.83699, 44.83699, 44.83699, 44.83699, 44.77139, 44.77139, 44.77139, 44.77139, 44.77139, + 44.77139, 44.77139, 44.77139, 44.77139, 44.69552, 44.69552, 44.69552, 44.69552, 44.69552, 44.69552, + 44.69552, 44.69552, 44.69552, 44.69552, 44.70565, 44.70565, 44.70565, 44.70565, 44.70565, 44.70565, + 44.70565, 44.70565, 44.70565, 44.70565, 44.70565, 44.57217, 44.57217, 44.57217, 44.57217, 44.57217, + 44.57217, 44.57217, 44.57217, 44.57217, 44.57217, 44.44757, 44.44757, 44.44757, 44.44757, 44.44757, + 44.44757, 44.44757, 44.44757, 44.44757, 44.44757, 44.44757, 44.12458, 44.12458, 44.12458, 44.12458, + 44.12458, 44.12458, 44.12458, 44.12458, 44.12458, 44.12458, 44.12458, 44.12458, 44.12649, 44.12649, + 44.12649, 44.12649, 44.12649, 44.12649, 44.12649, 44.12649, 44.12649, 44.12649, 44.12649, 46.39, 46.39, + 46.39, 46.39, 46.39, 46.39, 46.39, 46.39, 46.39, 46.39] # All the type of study STUDY_TYPES = ['alp_flat', 'postes', 'alp_allslopes'] @@ -58,13 +107,1224 @@ SLOPES = [20.0, 40.0] # Slopes are in degrees, 3 slopes (0, 20°, 40°) # Aspect are in the order N then NE, then E, in the same order as specified above # Its seems logical they start with the east, just like following clockwise -ORDERED_ALLSLOPES_ALTITUDES = [300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0] -ORDERED_ALLSLOPES_ORIENTATIONS= [-1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0] -ORDERED_ALLSLOPES_SLOPES = [0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0] -ORDERED_ALLSLOPES_MASSIFNUM = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30] - - - - - - +ORDERED_ALLSLOPES_ALTITUDES = [300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 300.0, 300.0, 300.0, + 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 3300.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, + 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3900.0, + 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, + 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, + 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, + 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, + 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4500.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, + 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, 4800.0, + 4800.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, + 0.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, + 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3900.0, 3900.0, + 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, + 3900.0, 3900.0, 3900.0, 3900.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, + 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 0.0, 0.0, 0.0, 0.0, 0.0, + 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 0.0, 0.0, 0.0, 0.0, 0.0, + 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3600.0, 3600.0, + 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, + 3600.0, 3600.0, 3600.0, 3600.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, + 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3600.0, 3600.0, 3600.0, + 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, + 3600.0, 3600.0, 3600.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, + 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, + 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, + 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, + 0.0, 0.0, 0.0, 0.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, + 0.0, 0.0, 0.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3600.0, 3600.0, + 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, + 3600.0, 3600.0, 3600.0, 3600.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, + 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 4200.0, + 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, + 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, + 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3900.0, 3900.0, 3900.0, + 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, 3900.0, + 3900.0, 3900.0, 3900.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, + 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 4200.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3600.0, + 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, + 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3600.0, 3600.0, + 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, 3600.0, + 3600.0, 3600.0, 3600.0, 3600.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, + 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 300.0, + 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 300.0, 300.0, 300.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, + 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 3300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, + 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 300.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, 600.0, + 600.0, 600.0, 600.0, 600.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, + 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 900.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, 1200.0, + 1200.0, 1200.0, 1200.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, + 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, 1800.0, + 1800.0, 1800.0, 1800.0, 1800.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, + 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2100.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, + 2400.0, 2400.0, 2400.0, 2400.0, 2400.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, 2700.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, + 3000.0, 3000.0, 3000.0, 3000.0, 3000.0, 3000.0] +ORDERED_ALLSLOPES_ORIENTATIONS = [-1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, + 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, + 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, + 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, + 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, + 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, + 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, + 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0, -1.0, 0.0, 45.0, 90.0, 135.0, + 180.0, 225.0, 270.0, 315.0, 0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0] +ORDERED_ALLSLOPES_SLOPES = [0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, 20.0, 20.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 0.0, + 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 20.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, + 40.0] +ORDERED_ALLSLOPES_MASSIFNUM = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, + 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, + 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, + 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, + 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, + 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, + 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, + 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, + 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, + 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, + 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, + 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, + 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, + 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, + 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, + 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, + 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, + 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, + 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, + 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, + 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, + 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, + 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, + 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, + 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, + 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, + 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, + 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, + 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, + 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, + 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, + 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, + 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, + 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, + 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, + 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, + 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 18, 18, 18, + 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, + 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, + 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, + 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, + 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, + 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, + 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, + 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 19, 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 21, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 21, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 23, 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30] diff --git a/extreme_data/meteo_france_data/scm_models_data/visualization/main_study_visualizer.py b/extreme_data/meteo_france_data/scm_models_data/visualization/main_study_visualizer.py index 7470f697..b933c39f 100644 --- a/extreme_data/meteo_france_data/scm_models_data/visualization/main_study_visualizer.py +++ b/extreme_data/meteo_france_data/scm_models_data/visualization/main_study_visualizer.py @@ -139,12 +139,12 @@ def extended_visualization(): def annual_mean_vizu_compare_durand_study(safran=True, take_mean_value=True, altitude=1800): if safran: for study_class in [SafranPrecipitation, SafranRainfall, SafranSnowfall, SafranTemperature][-1:]: - study = study_class(altitude=altitude, year_min=1958, year_max=2002) + study = study_class(altitude=altitude, year_min=1958, year_max=2001) study_visualizer = StudyVisualizer(study) study_visualizer.visualize_annual_mean_values(take_mean_value=True) else: for study_class in [CrocusSweTotal, CrocusDepth, CrocusDaysWithSnowOnGround][-1:]: - study = study_class(altitude=altitude, year_min=1958, year_max=2005) + study = study_class(altitude=altitude, year_min=1958, year_max=2004) study_visualizer = StudyVisualizer(study) study_visualizer.visualize_annual_mean_values(take_mean_value=take_mean_value) diff --git a/extreme_data/meteo_france_data/stations_data/comparison_analysis.py b/extreme_data/meteo_france_data/stations_data/comparison_analysis.py index 426de151..d4bd1bd1 100644 --- a/extreme_data/meteo_france_data/stations_data/comparison_analysis.py +++ b/extreme_data/meteo_france_data/stations_data/comparison_analysis.py @@ -47,7 +47,7 @@ class ComparisonAnalysis(object): self.transformation_class = transformation_class self.nb_border_data_to_remove = nb_border_data_to_remove self.year_min = 1958 + nb_border_data_to_remove - self.year_max = 2004 - nb_border_data_to_remove + self.year_max = 2003 - nb_border_data_to_remove ##################### STATION ATTRIBUTES ############################ @@ -115,7 +115,7 @@ class ComparisonAnalysis(object): def get_values(self, df): df = df.iloc[:, 7:] df.columns = df.columns.astype(int) - df = df.loc[:, self.year_min:self.year_max] + df = df.loc[:, self.year_min:self.year_max+1] return df @property @@ -135,7 +135,7 @@ class ComparisonAnalysis(object): def study(self): # Build the study for the same years return SafranSnowfall(altitude=self.altitude, nb_consecutive_days=3, year_min=self.year_min, - year_max=self.year_max + 1) + year_max=self.year_max) @property def nb_massifs(self): diff --git a/test/test_extreme_data/test_edf_data/test_weather_types.py b/test/test_extreme_data/test_edf_data/test_weather_types.py index 1b70bf90..71cc814d 100644 --- a/test/test_extreme_data/test_edf_data/test_weather_types.py +++ b/test/test_extreme_data/test_edf_data/test_weather_types.py @@ -45,6 +45,11 @@ class TestWeatherTypes(unittest.TestCase): # wp_to_found_percentages = wp_to_found_percentages.astype(int) self.assertEqual(wp_to_expected_percentages, wp_to_found_percentages) + def test_anticyclonique_weather_pattern(self): + study = CrocusSwe3Days(altitude=900, year_min=1954, year_max=2008) + pass + + if __name__ == '__main__': unittest.main() diff --git a/test/test_extreme_data/test_meteo_france_data/test_SCM_oriented_data.py b/test/test_extreme_data/test_meteo_france_data/test_SCM_oriented_data.py index a21c7ea2..dc2de572 100644 --- a/test/test_extreme_data/test_meteo_france_data/test_SCM_oriented_data.py +++ b/test/test_extreme_data/test_meteo_france_data/test_SCM_oriented_data.py @@ -16,7 +16,7 @@ class TestSCMOrientedData(unittest.TestCase): for slope in SLOPES: for orientation in [None, 45.0, 180.0][:2]: for study_class in [SafranSnowfall, CrocusSwe3Days][:]: - study = study_class(altitude=altitude, orientation=orientation, slope=slope, year_max=1960, multiprocessing=False) + study = study_class(altitude=altitude, orientation=orientation, slope=slope, year_max=1959, multiprocessing=False) assert study.year_to_daily_time_serie_array[1959].shape == (365, 23) diff --git a/test/test_extreme_data/test_meteo_france_data/test_SCM_study.py b/test/test_extreme_data/test_meteo_france_data/test_SCM_study.py index a04a1405..7d355027 100644 --- a/test/test_extreme_data/test_meteo_france_data/test_SCM_study.py +++ b/test/test_extreme_data/test_meteo_france_data/test_SCM_study.py @@ -58,7 +58,7 @@ class TestSCMPrecipitation(TestSCMStudy): def setUp(self) -> None: super().setUp() - self.study = SafranPrecipitation(altitude=1800, year_min=1959, year_max=2003, nb_consecutive_days=1) + self.study = SafranPrecipitation(altitude=1800, year_min=1959, year_max=2002, nb_consecutive_days=1) def test_durand(self): # Test based on Durand paper @@ -77,7 +77,7 @@ class TestSafranTemperature(TestSCMStudy): def setUp(self): super().setUp() - self.study = SafranTemperature(altitude=1800, year_min=1959, year_max=2003) + self.study = SafranTemperature(altitude=1800, year_min=1959, year_max=2002) def test_durand(self): # Test based on Durand paper -- GitLab