From e9005add1417628c819debc5ab80863c37313a16 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Thu, 14 Dec 2017 15:43:05 -0800 Subject: [PATCH 01/95] Fix tests that were failing. --- compiler/tests/21_hspice_delay_test.py | 16 ++++++------- compiler/tests/21_ngspice_delay_test.py | 19 +++++++-------- .../tests/golden/sram_2_16_1_scn3me_subm.lib | 24 +++++++++---------- 3 files changed, 29 insertions(+), 30 deletions(-) diff --git a/compiler/tests/21_hspice_delay_test.py b/compiler/tests/21_hspice_delay_test.py index 65ebe508..6a6dd94f 100644 --- a/compiler/tests/21_hspice_delay_test.py +++ b/compiler/tests/21_hspice_delay_test.py @@ -62,15 +62,15 @@ class timing_sram_test(unittest.TestCase): 'slew0': [0.026966], 'slew1': [0.019338]} elif OPTS.tech_name == "scn3me_subm": - golden_data = {'read1_power': 3.1765, - 'read0_power': 3.1929, - 'write0_power': 2.874, - 'delay1': [0.8900045999999999], - 'delay0': [1.9975000000000003], + golden_data = {'read1_power': 4.3678, + 'read0_power': 4.3914, + 'write0_power': 2.9394, + 'delay1': [0.8901521], + 'delay0': [2.001], 'min_period': 5.781, - 'write1_power': 2.6611, - 'slew0': [1.2993000000000001], - 'slew1': [0.9903856]} + 'write1_power': 2.7163, + 'slew0': [1.3044000000000002], + 'slew1': [0.9904079]} else: self.assertTrue(False) # other techs fail # Check if no too many or too few results diff --git a/compiler/tests/21_ngspice_delay_test.py b/compiler/tests/21_ngspice_delay_test.py index 2c333ad5..31025044 100644 --- a/compiler/tests/21_ngspice_delay_test.py +++ b/compiler/tests/21_ngspice_delay_test.py @@ -46,7 +46,6 @@ class timing_sram_test(unittest.TestCase): loads = [tech.spice["FF_in_cap"]*4] slews = [tech.spice["rise_time"]*2] data = d.analyze(probe_address, probe_data,slews,loads) - if OPTS.tech_name == "freepdk45": golden_data = {'read1_power': 0.02527215, 'read0_power': 0.02573022, @@ -58,15 +57,15 @@ class timing_sram_test(unittest.TestCase): 'slew0': [0.0273352], 'slew1': [0.021216870000000002]} elif OPTS.tech_name == "scn3me_subm": - golden_data = {'read1_power': 3.244839, - 'read0_power': 3.088234, - 'write0_power': 2.6857420000000003, - 'delay1': [0.9200643], - 'delay0': [2.0509399999999998], + golden_data = {'read1_power': 4.250786000000001, + 'read0_power': 4.093461, + 'write0_power': 2.762675, + 'delay1': [0.920068], + 'delay0': [2.051821], 'min_period': 6.563, - 'write1_power': 2.378355, - 'slew0': [1.342019], - 'slew1': [1.040885]} + 'write1_power': 2.4545719999999998, + 'slew0': [1.342015], + 'slew1': [1.040868]} else: self.assertTrue(False) # other techs fail @@ -78,7 +77,7 @@ class timing_sram_test(unittest.TestCase): for i in range(len(data[k])): self.assertTrue(isclose(data[k][i],golden_data[k][i],0.10)) else: - self.assertTrue(isclose(data[k],golden_data[k]),0.10) + self.assertTrue(isclose(data[k],golden_data[k],0.10)) # reset these options OPTS.check_lvsdrc = True diff --git a/compiler/tests/golden/sram_2_16_1_scn3me_subm.lib b/compiler/tests/golden/sram_2_16_1_scn3me_subm.lib index 0d4fe452..e68148e1 100644 --- a/compiler/tests/golden/sram_2_16_1_scn3me_subm.lib +++ b/compiler/tests/golden/sram_2_16_1_scn3me_subm.lib @@ -92,10 +92,10 @@ cell (sram_2_16_1_scn3me_subm){ internal_power(){ when : "OEb & !clk"; rise_power(scalar){ - values("3.1588"); + values("3.1581"); } fall_power(scalar){ - values("3.4922"); + values("3.4945"); } } timing(){ @@ -129,10 +129,10 @@ cell (sram_2_16_1_scn3me_subm){ internal_power(){ when : "!OEb & !clk"; rise_power(scalar){ - values("3.9389"); + values("5.0577"); } fall_power(scalar){ - values("3.9642"); + values("5.0831"); } } timing(){ @@ -141,23 +141,23 @@ cell (sram_2_16_1_scn3me_subm){ timing_type : falling_edge; cell_rise(CELL_TABLE) { values("0.542, 0.626, 1.298",\ - "0.545, 0.628, 1.304",\ + "0.544, 0.627, 1.304",\ "0.594, 0.674, 1.35"); } cell_fall(CELL_TABLE) { - values("1.532, 1.634, 2.6",\ - "1.536, 1.639, 2.607",\ - "1.587, 1.69, 2.657"); + values("1.535, 1.637, 2.604",\ + "1.54, 1.641, 2.612",\ + "1.59, 1.693, 2.662"); } rise_transition(CELL_TABLE) { - values("0.191, 0.337, 1.884",\ + values("0.191, 0.337, 1.883",\ "0.193, 0.338, 1.885",\ "0.195, 0.341, 1.884"); } fall_transition(CELL_TABLE) { - values("0.255, 0.448, 2.467",\ - "0.256, 0.447, 2.468",\ - "0.256, 0.447, 2.454"); + values("0.252, 0.446, 2.468",\ + "0.253, 0.448, 2.448",\ + "0.253, 0.447, 2.454"); } } } From ed4ca62dbf12ad8f68159464264d55570702877d Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 15 Dec 2017 08:01:19 -0800 Subject: [PATCH 02/95] Update thresholds to 15 percent. Fix ngspice data. --- compiler/tests/21_hspice_delay_test.py | 4 ++-- compiler/tests/21_hspice_setuphold_test.py | 4 ++-- compiler/tests/21_ngspice_delay_test.py | 21 +++++++++++---------- compiler/tests/21_ngspice_setuphold_test.py | 4 ++-- 4 files changed, 17 insertions(+), 16 deletions(-) diff --git a/compiler/tests/21_hspice_delay_test.py b/compiler/tests/21_hspice_delay_test.py index 6a6dd94f..8f2053eb 100644 --- a/compiler/tests/21_hspice_delay_test.py +++ b/compiler/tests/21_hspice_delay_test.py @@ -79,9 +79,9 @@ class timing_sram_test(unittest.TestCase): for k in data.keys(): if type(data[k])==list: for i in range(len(data[k])): - self.assertTrue(isclose(data[k][i],golden_data[k][i],0.10)) + self.assertTrue(isclose(data[k][i],golden_data[k][i],0.15)) else: - self.assertTrue(isclose(data[k],golden_data[k],0.10)) + self.assertTrue(isclose(data[k],golden_data[k],0.15)) # reset these options diff --git a/compiler/tests/21_hspice_setuphold_test.py b/compiler/tests/21_hspice_setuphold_test.py index d2ad0411..762749a3 100644 --- a/compiler/tests/21_hspice_setuphold_test.py +++ b/compiler/tests/21_hspice_setuphold_test.py @@ -54,9 +54,9 @@ class timing_setup_test(unittest.TestCase): for k in data.keys(): if type(data[k])==list: for i in range(len(data[k])): - self.assertTrue(isclose(data[k][i],golden_data[k][i],0.10)) + self.assertTrue(isclose(data[k][i],golden_data[k][i],0.15)) else: - self.assertTrue(isclose(data[k],golden_data[k],0.10)) + self.assertTrue(isclose(data[k],golden_data[k],0.15)) OPTS.check_lvsdrc = True OPTS.analytical_delay = True diff --git a/compiler/tests/21_ngspice_delay_test.py b/compiler/tests/21_ngspice_delay_test.py index 31025044..d9aedd1f 100644 --- a/compiler/tests/21_ngspice_delay_test.py +++ b/compiler/tests/21_ngspice_delay_test.py @@ -46,16 +46,17 @@ class timing_sram_test(unittest.TestCase): loads = [tech.spice["FF_in_cap"]*4] slews = [tech.spice["rise_time"]*2] data = d.analyze(probe_address, probe_data,slews,loads) + #print data if OPTS.tech_name == "freepdk45": - golden_data = {'read1_power': 0.02527215, - 'read0_power': 0.02573022, - 'write0_power': 0.02237065, - 'delay1': [0.04867785], - 'delay0': [0.1423512], + golden_data = {'read1_power': 0.026660760000000002, + 'read0_power': 0.02711731, + 'write0_power': 0.02501428, + 'delay1': [0.04867702], + 'delay0': [0.1423633], 'min_period': 0.332, - 'write1_power': 0.02152122, - 'slew0': [0.0273352], - 'slew1': [0.021216870000000002]} + 'write1_power': 0.024162890000000003, + 'slew0': [0.02733451], + 'slew1': [0.02121624]} elif OPTS.tech_name == "scn3me_subm": golden_data = {'read1_power': 4.250786000000001, 'read0_power': 4.093461, @@ -75,9 +76,9 @@ class timing_sram_test(unittest.TestCase): for k in data.keys(): if type(data[k])==list: for i in range(len(data[k])): - self.assertTrue(isclose(data[k][i],golden_data[k][i],0.10)) + self.assertTrue(isclose(data[k][i],golden_data[k][i],0.15)) else: - self.assertTrue(isclose(data[k],golden_data[k],0.10)) + self.assertTrue(isclose(data[k],golden_data[k],0.15)) # reset these options OPTS.check_lvsdrc = True diff --git a/compiler/tests/21_ngspice_setuphold_test.py b/compiler/tests/21_ngspice_setuphold_test.py index f7b78515..7f02e2c6 100644 --- a/compiler/tests/21_ngspice_setuphold_test.py +++ b/compiler/tests/21_ngspice_setuphold_test.py @@ -55,9 +55,9 @@ class timing_setup_test(unittest.TestCase): for k in data.keys(): if type(data[k])==list: for i in range(len(data[k])): - self.assertTrue(isclose(data[k][i],golden_data[k][i],0.10)) + self.assertTrue(isclose(data[k][i],golden_data[k][i],0.15)) else: - self.assertTrue(isclose(data[k],golden_data[k],0.10)) + self.assertTrue(isclose(data[k],golden_data[k],0.15)) # reset these options OPTS.check_lvsdrc = True From f98155fc0b6019dc61b73b59ca2a9d52245bb41c Mon Sep 17 00:00:00 2001 From: mguthaus Date: Tue, 19 Dec 2017 07:39:43 -0800 Subject: [PATCH 03/95] Increase lib file tolerance to 25 percent. --- compiler/tests/23_lib_sram_test.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/compiler/tests/23_lib_sram_test.py b/compiler/tests/23_lib_sram_test.py index 7e869b7f..f9c3fc40 100644 --- a/compiler/tests/23_lib_sram_test.py +++ b/compiler/tests/23_lib_sram_test.py @@ -42,8 +42,7 @@ class lib_test(unittest.TestCase): # let's diff the result with a golden model golden = "{0}/golden/{1}".format(os.path.dirname(os.path.realpath(__file__)),filename) - # Randomly decided 10% difference between spice simulators is ok. - self.assertEqual(isapproxdiff(libname,golden,0.10),True) + self.assertEqual(isapproxdiff(libname,golden,0.25),True) OPTS.analytical_delay = True OPTS.trim_netlist = True From 4aee700331a2d07fe052e12c74b32329f74fe35d Mon Sep 17 00:00:00 2001 From: mguthaus Date: Wed, 31 Jan 2018 11:48:41 -0800 Subject: [PATCH 04/95] Modify unit tests to distinguish between FAIL and ERROR. Move comparison utilities into our derived unit test class. --- compiler/debug.py | 7 +- compiler/tests/21_hspice_delay_test.py | 6 +- compiler/tests/21_hspice_setuphold_test.py | 6 +- compiler/tests/21_ngspice_delay_test.py | 6 +- compiler/tests/21_ngspice_setuphold_test.py | 6 +- compiler/tests/23_lib_sram_model_test.py | 4 +- compiler/tests/23_lib_sram_prune_test.py | 4 +- compiler/tests/23_lib_sram_test.py | 4 +- compiler/tests/24_lef_sram_test.py | 4 +- compiler/tests/25_verilog_sram_test.py | 4 +- compiler/tests/testutils.py | 193 ++++++++++---------- 11 files changed, 121 insertions(+), 123 deletions(-) diff --git a/compiler/debug.py b/compiler/debug.py index a5502fda..96303fed 100644 --- a/compiler/debug.py +++ b/compiler/debug.py @@ -14,14 +14,13 @@ def check(check,str): index) = inspect.getouterframes(inspect.currentframe())[1] if not check: print("ERROR: file {0}: line {1}: {2}".format(os.path.basename(filename),line_number,str)) - sys.exit(-1) + assert 0 -def error(str,return_value=None): +def error(str,return_value): (frame, filename, line_number, function_name, lines, index) = inspect.getouterframes(inspect.currentframe())[1] print("ERROR: file {0}: line {1}: {2}".format(os.path.basename(filename),line_number,str)) - if return_value: - sys.exit(return_value) + assert return_value==0 def warning(str): (frame, filename, line_number, function_name, lines, diff --git a/compiler/tests/21_hspice_delay_test.py b/compiler/tests/21_hspice_delay_test.py index b2568fd3..d408646c 100644 --- a/compiler/tests/21_hspice_delay_test.py +++ b/compiler/tests/21_hspice_delay_test.py @@ -4,7 +4,7 @@ Run a regresion test on various srams """ import unittest -from testutils import header,openram_test,isclose +from testutils import header,openram_test import sys,os sys.path.append(os.path.join(sys.path[0],"..")) import globals @@ -77,9 +77,9 @@ class timing_sram_test(openram_test): for k in data.keys(): if type(data[k])==list: for i in range(len(data[k])): - self.assertTrue(isclose(data[k][i],golden_data[k][i],0.15)) + self.isclose(data[k][i],golden_data[k][i],0.15) else: - self.assertTrue(isclose(data[k],golden_data[k],0.15)) + self.isclose(data[k],golden_data[k],0.15) # reset these options diff --git a/compiler/tests/21_hspice_setuphold_test.py b/compiler/tests/21_hspice_setuphold_test.py index ab0964fb..aae583a7 100644 --- a/compiler/tests/21_hspice_setuphold_test.py +++ b/compiler/tests/21_hspice_setuphold_test.py @@ -4,7 +4,7 @@ Run a regresion test on various srams """ import unittest -from testutils import header,openram_test,isclose +from testutils import header,openram_test import sys,os sys.path.append(os.path.join(sys.path[0],"..")) import globals @@ -54,9 +54,9 @@ class timing_setup_test(openram_test): for k in data.keys(): if type(data[k])==list: for i in range(len(data[k])): - self.assertTrue(isclose(data[k][i],golden_data[k][i],0.15)) + self.isclose(data[k][i],golden_data[k][i],0.15) else: - self.assertTrue(isclose(data[k],golden_data[k],0.15)) + self.isclose(data[k],golden_data[k],0.15) OPTS.check_lvsdrc = True OPTS.analytical_delay = True diff --git a/compiler/tests/21_ngspice_delay_test.py b/compiler/tests/21_ngspice_delay_test.py index fb1c2134..08ce0752 100644 --- a/compiler/tests/21_ngspice_delay_test.py +++ b/compiler/tests/21_ngspice_delay_test.py @@ -4,7 +4,7 @@ Run a regresion test on various srams """ import unittest -from testutils import header,openram_test,isclose +from testutils import header,openram_test import sys,os sys.path.append(os.path.join(sys.path[0],"..")) import globals @@ -76,9 +76,9 @@ class timing_sram_test(openram_test): for k in data.keys(): if type(data[k])==list: for i in range(len(data[k])): - self.assertTrue(isclose(data[k][i],golden_data[k][i],0.15)) + self.isclose(data[k][i],golden_data[k][i],0.15) else: - self.assertTrue(isclose(data[k],golden_data[k],0.15)) + self.isclose(data[k],golden_data[k],0.15) # reset these options OPTS.check_lvsdrc = True diff --git a/compiler/tests/21_ngspice_setuphold_test.py b/compiler/tests/21_ngspice_setuphold_test.py index 9cd9001c..87207271 100644 --- a/compiler/tests/21_ngspice_setuphold_test.py +++ b/compiler/tests/21_ngspice_setuphold_test.py @@ -4,7 +4,7 @@ Run a regresion test on various srams """ import unittest -from testutils import header,openram_test,isclose +from testutils import header,openram_test import sys,os sys.path.append(os.path.join(sys.path[0],"..")) import globals @@ -53,9 +53,9 @@ class timing_setup_test(openram_test): for k in data.keys(): if type(data[k])==list: for i in range(len(data[k])): - self.assertTrue(isclose(data[k][i],golden_data[k][i],0.15)) + self.isclose(data[k][i],golden_data[k][i],0.15) else: - self.assertTrue(isclose(data[k],golden_data[k],0.15)) + self.isclose(data[k],golden_data[k],0.15) # reset these options OPTS.check_lvsdrc = True diff --git a/compiler/tests/23_lib_sram_model_test.py b/compiler/tests/23_lib_sram_model_test.py index 0b318831..9b6ff73a 100644 --- a/compiler/tests/23_lib_sram_model_test.py +++ b/compiler/tests/23_lib_sram_model_test.py @@ -4,7 +4,7 @@ Check the .lib file for an SRAM """ import unittest -from testutils import header,openram_test,isapproxdiff +from testutils import header,openram_test import sys,os sys.path.append(os.path.join(sys.path[0],"..")) import globals @@ -36,7 +36,7 @@ class lib_test(openram_test): # let's diff the result with a golden model golden = "{0}/golden/{1}".format(os.path.dirname(os.path.realpath(__file__)),filename) - self.assertEqual(isapproxdiff(libname,golden,0.15),True) + self.isapproxdiff(libname,golden,0.15) globals.end_openram() diff --git a/compiler/tests/23_lib_sram_prune_test.py b/compiler/tests/23_lib_sram_prune_test.py index 0c5a5324..7bb6b557 100644 --- a/compiler/tests/23_lib_sram_prune_test.py +++ b/compiler/tests/23_lib_sram_prune_test.py @@ -4,7 +4,7 @@ Check the .lib file for an SRAM with pruning """ import unittest -from testutils import header,openram_test,isapproxdiff +from testutils import header,openram_test import sys,os sys.path.append(os.path.join(sys.path[0],"..")) import globals @@ -40,7 +40,7 @@ class lib_test(openram_test): # let's diff the result with a golden model golden = "{0}/golden/{1}".format(os.path.dirname(os.path.realpath(__file__)),filename) - self.assertEqual(isapproxdiff(libname,golden,0.30),True) + self.isapproxdiff(libname,golden,0.30) OPTS.analytical_delay = True reload(characterizer) diff --git a/compiler/tests/23_lib_sram_test.py b/compiler/tests/23_lib_sram_test.py index 37fa7d67..2c24bbc7 100644 --- a/compiler/tests/23_lib_sram_test.py +++ b/compiler/tests/23_lib_sram_test.py @@ -4,7 +4,7 @@ Check the .lib file for an SRAM """ import unittest -from testutils import header,openram_test,isapproxdiff +from testutils import header,openram_test import sys,os sys.path.append(os.path.join(sys.path[0],"..")) import globals @@ -40,7 +40,7 @@ class lib_test(openram_test): # let's diff the result with a golden model golden = "{0}/golden/{1}".format(os.path.dirname(os.path.realpath(__file__)),filename) - self.assertEqual(isapproxdiff(libname,golden,0.15),True) + self.isapproxdiff(libname,golden,0.15) OPTS.analytical_delay = True OPTS.trim_netlist = True diff --git a/compiler/tests/24_lef_sram_test.py b/compiler/tests/24_lef_sram_test.py index b85e7a83..8ebe94bc 100644 --- a/compiler/tests/24_lef_sram_test.py +++ b/compiler/tests/24_lef_sram_test.py @@ -4,7 +4,7 @@ Check the LEF file for an SRMA """ import unittest -from testutils import header,openram_test,isdiff +from testutils import header,openram_test import sys,os sys.path.append(os.path.join(sys.path[0],"..")) import globals @@ -37,7 +37,7 @@ class lef_test(openram_test): # let's diff the result with a golden model golden = "{0}/golden/{1}".format(os.path.dirname(os.path.realpath(__file__)),leffile) - self.assertEqual(isdiff(lefname,golden),True) + self.isdiff(lefname,golden) os.system("rm {0}".format(gdsname)) os.system("rm {0}".format(lefname)) diff --git a/compiler/tests/25_verilog_sram_test.py b/compiler/tests/25_verilog_sram_test.py index 319ffe2a..0da165dd 100644 --- a/compiler/tests/25_verilog_sram_test.py +++ b/compiler/tests/25_verilog_sram_test.py @@ -4,7 +4,7 @@ Check the .v file for an SRAM """ import unittest -from testutils import header,openram_test,isdiff +from testutils import header,openram_test import sys,os sys.path.append(os.path.join(sys.path[0],"..")) import globals @@ -35,7 +35,7 @@ class verilog_test(openram_test): # let's diff the result with a golden model golden = "{0}/golden/{1}".format(os.path.dirname(os.path.realpath(__file__)),vfile) - self.assertEqual(isdiff(vname,golden),True) + self.isdiff(vname,golden) os.system("rm {0}".format(vname)) diff --git a/compiler/tests/testutils.py b/compiler/tests/testutils.py index 57932a68..76f7b7fc 100644 --- a/compiler/tests/testutils.py +++ b/compiler/tests/testutils.py @@ -27,16 +27,17 @@ class openram_test(unittest.TestCase): import verify try: - self.assertFalse(verify.run_drc(a.name, tempgds)==0) + self.assertTrue(verify.run_drc(a.name, tempgds)==0) except: self.reset() - raise Exception('DRC failed: {}'.format(a.name)) + self.fail("DRC failed: {}".format(a.name)) + try: - self.assertFalse(verify.run_lvs(a.name, tempgds, tempspice)==0) + self.assertTrue(verify.run_lvs(a.name, tempgds, tempspice)==0) except: self.reset() - raise Exception('LVS failed: {}'.format(a.name)) + self.fail("LVS mismatch: {}".format(a.name)) self.cleanup() @@ -55,108 +56,106 @@ class openram_test(unittest.TestCase): import design design.design.name_map=[] -def isclose(value1,value2,error_tolerance=1e-2): - """ This is used to compare relative values. """ - import debug - relative_diff = abs(value1 - value2) / max(value1,value2) - check = relative_diff <= error_tolerance - if not check: - debug.info(1,"NOT CLOSE {0} {1} relative diff={2}".format(value1,value2,relative_diff)) - else: - debug.info(2,"CLOSE {0} {1} relative diff={2}".format(value1,value2,relative_diff)) - return (check) + def isclose(self, value1,value2,error_tolerance=1e-2): + """ This is used to compare relative values. """ + import debug + relative_diff = abs(value1 - value2) / max(value1,value2) + check = relative_diff <= error_tolerance + if not check: + debug.info(1,"NOT CLOSE {0} {1} relative diff={2}".format(value1,value2,relative_diff)) + else: + debug.info(2,"CLOSE {0} {1} relative diff={2}".format(value1,value2,relative_diff)) + return (check) -def relative_compare(value1,value2,error_tolerance): - """ This is used to compare relative values. """ - if (value1==value2): # if we don't need a relative comparison! - return True - return (abs(value1 - value2) / max(value1,value2) <= error_tolerance) + def relative_compare(self, value1,value2,error_tolerance): + """ This is used to compare relative values. """ + if (value1==value2): # if we don't need a relative comparison! + return True + return (abs(value1 - value2) / max(value1,value2) <= error_tolerance) -def isapproxdiff(f1, f2, error_tolerance=0.001): - """Compare two files. + def isapproxdiff(self, f1, f2, error_tolerance=0.001): + """Compare two files. - Arguments: - - f1 -- First file name - - f2 -- Second file name - - Return value: - - True if the files are the same, False otherwise. - - """ - import re - import debug - - with open(f1, 'rb') as fp1, open(f2, 'rb') as fp2: - while True: - b1 = fp1.readline() - b2 = fp2.readline() - #print "b1:",b1, - #print "b2:",b2, - - # 1. Find all of the floats using a regex - numeric_const_pattern = r""" - [-+]? # optional sign - (?: - (?: \d* \. \d+ ) # .1 .12 .123 etc 9.1 etc 98.1 etc - | - (?: \d+ \.? ) # 1. 12. 123. etc 1 12 123 etc - ) - # followed by optional exponent part if desired - (?: [Ee] [+-]? \d+ ) ? - """ - rx = re.compile(numeric_const_pattern, re.VERBOSE) - b1_floats=rx.findall(b1) - b2_floats=rx.findall(b2) - debug.info(3,"b1_floats: "+str(b1_floats)) - debug.info(3,"b2_floats: "+str(b2_floats)) + Arguments: - # 2. Remove the floats from the string - for f in b1_floats: - b1=b1.replace(str(f),"",1) - for f in b2_floats: - b2=b2.replace(str(f),"",1) - #print "b1:",b1, - #print "b2:",b2, + f1 -- First file name + + f2 -- Second file name + + Return value: + + True if the files are the same, False otherwise. + + """ + import re + import debug + + with open(f1, 'rb') as fp1, open(f2, 'rb') as fp2: + while True: + b1 = fp1.readline() + b2 = fp2.readline() + #print "b1:",b1, + #print "b2:",b2, + + # 1. Find all of the floats using a regex + numeric_const_pattern = r""" + [-+]? # optional sign + (?: + (?: \d* \. \d+ ) # .1 .12 .123 etc 9.1 etc 98.1 etc + | + (?: \d+ \.? ) # 1. 12. 123. etc 1 12 123 etc + ) + # followed by optional exponent part if desired + (?: [Ee] [+-]? \d+ ) ? + """ + rx = re.compile(numeric_const_pattern, re.VERBOSE) + b1_floats=rx.findall(b1) + b2_floats=rx.findall(b2) + debug.info(3,"b1_floats: "+str(b1_floats)) + debug.info(3,"b2_floats: "+str(b2_floats)) + + # 2. Remove the floats from the string + for f in b1_floats: + b1=b1.replace(str(f),"",1) + for f in b2_floats: + b2=b2.replace(str(f),"",1) + #print "b1:",b1, + #print "b2:",b2, - # 3. Check if remaining string matches - if b1 != b2: - debug.info(1,"Line: {0}\n!=\nLine: {1}".format(b1,b2)) - return False + # 3. Check if remaining string matches + if b1 != b2: + self.fail("Line: {0}\n!=\nLine: {1}".format(b1,b2)) - # 4. Now compare that the floats match - if len(b1_floats)!=len(b2_floats): - debug.info(1,"Len {0} != {1}".format(len(b1_floats),len(b2_floats))) - return False - for (f1,f2) in zip(b1_floats,b2_floats): - if not relative_compare(float(f1),float(f2),error_tolerance): - debug.info(1, "Float {0} != {1}".format(f1,f2)) - return False + # 4. Now compare that the floats match + if len(b1_floats)!=len(b2_floats): + self.fail("Len {0} != {1}".format(len(b1_floats),len(b2_floats))) + for (f1,f2) in zip(b1_floats,b2_floats): + if not relative_compare(float(f1),float(f2),error_tolerance): + self.fail("Float {0} != {1}".format(f1,f2)) - if not b1: - return True + if not b1: + return -def isdiff(file1,file2): - """ This is used to compare two files and display the diff if they are different.. """ - import debug - import filecmp - import difflib - check = filecmp.cmp(file1,file2) - if not check: - debug.info(2,"MISMATCH {0} {1}".format(file1,file2)) - f1 = open(file1,"r") - s1 = f1.readlines() - f2 = open(file2,"r") - s2 = f2.readlines() - for line in difflib.unified_diff(s1, s2): - debug.info(3,line) - debug.error("MISMATCH {0} {1}".format(file1,file2)) - else: - debug.info(2,"MATCH {0} {1}".format(file1,file2)) - return (check) + + def isdiff(self,file1,file2): + """ This is used to compare two files and display the diff if they are different.. """ + import debug + import filecmp + import difflib + check = filecmp.cmp(file1,file2) + if not check: + debug.info(2,"MISMATCH {0} {1}".format(file1,file2)) + f1 = open(file1,"r") + s1 = f1.readlines() + f2 = open(file2,"r") + s2 = f2.readlines() + for line in difflib.unified_diff(s1, s2): + debug.info(3,line) + self.fail("MISMATCH {0} {1}".format(file1,file2)) + else: + debug.info(2,"MATCH {0} {1}".format(file1,file2)) + def header(filename, technology): tst = "Running Test for:" From 4273a3717d51d9e768704c449adbc61298be0096 Mon Sep 17 00:00:00 2001 From: mguthaus Date: Wed, 31 Jan 2018 11:54:20 -0800 Subject: [PATCH 05/95] Clean up messages. --- compiler/debug.py | 2 +- compiler/tests/testutils.py | 11 +++++------ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/compiler/debug.py b/compiler/debug.py index 96303fed..7001373e 100644 --- a/compiler/debug.py +++ b/compiler/debug.py @@ -16,7 +16,7 @@ def check(check,str): print("ERROR: file {0}: line {1}: {2}".format(os.path.basename(filename),line_number,str)) assert 0 -def error(str,return_value): +def error(str,return_value=0): (frame, filename, line_number, function_name, lines, index) = inspect.getouterframes(inspect.currentframe())[1] print("ERROR: file {0}: line {1}: {2}".format(os.path.basename(filename),line_number,str)) diff --git a/compiler/tests/testutils.py b/compiler/tests/testutils.py index 76f7b7fc..4907574b 100644 --- a/compiler/tests/testutils.py +++ b/compiler/tests/testutils.py @@ -62,10 +62,9 @@ class openram_test(unittest.TestCase): relative_diff = abs(value1 - value2) / max(value1,value2) check = relative_diff <= error_tolerance if not check: - debug.info(1,"NOT CLOSE {0} {1} relative diff={2}".format(value1,value2,relative_diff)) + self.fail("NOT CLOSE {0} {1} relative diff={2}".format(value1,value2,relative_diff)) else: debug.info(2,"CLOSE {0} {1} relative diff={2}".format(value1,value2,relative_diff)) - return (check) def relative_compare(self, value1,value2,error_tolerance): """ This is used to compare relative values. """ @@ -124,16 +123,16 @@ class openram_test(unittest.TestCase): # 3. Check if remaining string matches if b1 != b2: - self.fail("Line: {0}\n!=\nLine: {1}".format(b1,b2)) + self.fail("MISMATCH Line: {0}\n!=\nLine: {1}".format(b1,b2)) # 4. Now compare that the floats match if len(b1_floats)!=len(b2_floats): - self.fail("Len {0} != {1}".format(len(b1_floats),len(b2_floats))) + self.fail("MISMATCH Length {0} != {1}".format(len(b1_floats),len(b2_floats))) for (f1,f2) in zip(b1_floats,b2_floats): if not relative_compare(float(f1),float(f2),error_tolerance): - self.fail("Float {0} != {1}".format(f1,f2)) + self.fail("MISMATCH Float {0} != {1}".format(f1,f2)) - if not b1: + if not b1 and not b2: return From acf3fe83760b239bfb58d7ed51cc5c6e3c42f68e Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Wed, 31 Jan 2018 14:31:50 -0800 Subject: [PATCH 06/95] Add well around column muxes. --- compiler/hierarchy_layout.py | 20 ++++++++++++++++++++ compiler/single_level_column_mux_array.py | 2 ++ 2 files changed, 22 insertions(+) diff --git a/compiler/hierarchy_layout.py b/compiler/hierarchy_layout.py index 1c136dd9..dc923d44 100644 --- a/compiler/hierarchy_layout.py +++ b/compiler/hierarchy_layout.py @@ -496,6 +496,26 @@ class layout(lef.lef): return blockages + def add_enclosure(self, insts, layer="nwell"): + """ Add a layer that surrounds the given instances. Useful + for creating wells, for example. Doesn't check for minimum widths or + spacings.""" + + xmin=insts[0].lx() + ymin=insts[0].by() + xmax=insts[0].rx() + ymax=insts[0].uy() + for inst in insts: + xmin = min(xmin, inst.lx()) + ymin = min(ymin, inst.by()) + xmax = max(xmax, inst.rx()) + ymax = max(ymax, inst.uy()) + + self.add_rect(layer=layer, + offset=vector(xmin,ymin), + width=xmax-xmin, + height=ymax-ymin) + def pdf_write(self, pdf_name): # NOTE: Currently does not work (Needs further research) #self.pdf_name = self.name + ".pdf" diff --git a/compiler/single_level_column_mux_array.py b/compiler/single_level_column_mux_array.py index 1cadae8d..0e2c8752 100644 --- a/compiler/single_level_column_mux_array.py +++ b/compiler/single_level_column_mux_array.py @@ -40,6 +40,7 @@ class single_level_column_mux_array(design.design): self.setup_layout_constants() self.create_array() self.add_routing() + self.add_enclosure(self.mux_inst, "pwell") def add_modules(self): self.mux = single_level_column_mux(name="single_level_column_mux", @@ -60,6 +61,7 @@ class single_level_column_mux_array(design.design): # mux height plus routing signal height plus well spacing at the top self.height = self.mux.height + self.route_height + drc["pwell_to_nwell"] + def create_array(self): self.mux_inst = [] From 590f6e01d15e48725030a07186de7d44fb0963a3 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Wed, 31 Jan 2018 15:38:02 -0800 Subject: [PATCH 07/95] Fix assertion error syntax problem. Do not require hspice for functional test. Improve delay fail error message. --- compiler/characterizer/delay.py | 2 +- compiler/control_logic.py | 2 +- compiler/tests/21_hspice_delay_test.py | 3 +- compiler/tests/21_hspice_setuphold_test.py | 3 +- compiler/tests/21_ngspice_delay_test.py | 3 +- compiler/tests/21_ngspice_setuphold_test.py | 3 +- compiler/tests/23_lib_sram_prune_test.py | 2 +- .../tests/golden/sram_2_16_1_scn3me_subm.lef | 9848 ++++++++--------- compiler/tests/testutils.py | 2 +- 9 files changed, 4930 insertions(+), 4938 deletions(-) diff --git a/compiler/characterizer/delay.py b/compiler/characterizer/delay.py index 094d2e15..1bf01f45 100644 --- a/compiler/characterizer/delay.py +++ b/compiler/characterizer/delay.py @@ -364,7 +364,7 @@ class delay(): for slew in slews: for load in loads: (success, delay1, slew1, delay0, slew0) = self.run_simulation(feasible_period, load, slew) - debug.check(success,"Couldn't run a simulation properly.\n") + debug.check(success,"Couldn't run a simulation. slew={0} load={1}\n".format(slew,load)) LH_delay.append(delay1) HL_delay.append(delay0) LH_slew.append(slew1) diff --git a/compiler/control_logic.py b/compiler/control_logic.py index b016196e..eceeb29a 100644 --- a/compiler/control_logic.py +++ b/compiler/control_logic.py @@ -275,7 +275,7 @@ class control_logic(design.design): mod=self.nand2, offset=self.tri_en_bar_offset, mirror="MX") - self.connect_inst(["oe", "clk_bar", "tri_en_bar", "vdd", "gnd"]) + self.connect_inst(["clk_bar", "oe", "tri_en_bar", "vdd", "gnd"]) x_off += self.nand2.width x_off += self.inv1.width + self.cell_gap diff --git a/compiler/tests/21_hspice_delay_test.py b/compiler/tests/21_hspice_delay_test.py index d408646c..1647adbc 100644 --- a/compiler/tests/21_hspice_delay_test.py +++ b/compiler/tests/21_hspice_delay_test.py @@ -24,8 +24,7 @@ class timing_sram_test(openram_test): reload(characterizer) from characterizer import delay if not OPTS.spice_exe: - self.error("Could not find {} simulator.".format(OPTS.spice_name)) - self.assertTrue(OPTS.spice_exe) + debug.error("Could not find {} simulator.".format(OPTS.spice_name),-1) import sram diff --git a/compiler/tests/21_hspice_setuphold_test.py b/compiler/tests/21_hspice_setuphold_test.py index aae583a7..5ec3b77e 100644 --- a/compiler/tests/21_hspice_setuphold_test.py +++ b/compiler/tests/21_hspice_setuphold_test.py @@ -24,8 +24,7 @@ class timing_setup_test(openram_test): reload(characterizer) from characterizer import setup_hold if not OPTS.spice_exe: - self.error("Could not find {} simulator.".format(OPTS.spice_name)) - self.assertTrue(OPTS.spice_exe) + debug.error("Could not find {} simulator.".format(OPTS.spice_name),-1) import sram diff --git a/compiler/tests/21_ngspice_delay_test.py b/compiler/tests/21_ngspice_delay_test.py index 08ce0752..ea0df783 100644 --- a/compiler/tests/21_ngspice_delay_test.py +++ b/compiler/tests/21_ngspice_delay_test.py @@ -24,8 +24,7 @@ class timing_sram_test(openram_test): reload(characterizer) from characterizer import delay if not OPTS.spice_exe: - self.error("Could not find {} simulator.".format(OPTS.spice_name)) - self.assertTrue(OPTS.spice_exe) + debug.error("Could not find {} simulator.".format(OPTS.spice_name),-1) import sram diff --git a/compiler/tests/21_ngspice_setuphold_test.py b/compiler/tests/21_ngspice_setuphold_test.py index 87207271..5fa383fc 100644 --- a/compiler/tests/21_ngspice_setuphold_test.py +++ b/compiler/tests/21_ngspice_setuphold_test.py @@ -24,8 +24,7 @@ class timing_setup_test(openram_test): reload(characterizer) from characterizer import setup_hold if not OPTS.spice_exe: - self.error("Could not find {} simulator.".format(OPTS.spice_name)) - self.assertTrue(OPTS.spice_exe) + debug.error("Could not find {} simulator.".format(OPTS.spice_name),-1) import sram import tech diff --git a/compiler/tests/23_lib_sram_prune_test.py b/compiler/tests/23_lib_sram_prune_test.py index 7bb6b557..71b6bd38 100644 --- a/compiler/tests/23_lib_sram_prune_test.py +++ b/compiler/tests/23_lib_sram_prune_test.py @@ -16,8 +16,8 @@ class lib_test(openram_test): def runTest(self): globals.init_openram("config_20_{0}".format(OPTS.tech_name)) OPTS.check_lvsdrc = False - OPTS.spice_name="hspice" OPTS.analytical_delay = False + OPTS.trim_netlist = True import characterizer reload(characterizer) from characterizer import lib diff --git a/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef b/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef index 068ff856..b0090eaa 100644 --- a/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef +++ b/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef @@ -18,42 +18,42 @@ MACRO sram_2_16_1_scn3me_subm DIRECTION INOUT ; PORT LAYER metal2 ; - RECT 180300.0 0.0 181200.0 1800.0 ; + RECT 180000.0 0.0 180900.0 1800.0 ; END END DATA[0] PIN DATA[1] DIRECTION INOUT ; PORT LAYER metal2 ; - RECT 190500.0 0.0 191400.0 1800.0 ; + RECT 190200.0 0.0 191100.0 1800.0 ; END END DATA[1] PIN ADDR[0] DIRECTION INPUT ; PORT LAYER metal3 ; - RECT 53100.0 75000.0 60300.0 76500.0 ; + RECT 52800.0 77400.0 60000.0 78900.0 ; END END ADDR[0] PIN ADDR[1] DIRECTION INPUT ; PORT LAYER metal3 ; - RECT 53100.0 64800.0 60300.0 66300.0 ; + RECT 52800.0 67200.0 60000.0 68700.0 ; END END ADDR[1] PIN ADDR[2] DIRECTION INPUT ; PORT LAYER metal3 ; - RECT 53100.0 54600.0 60300.0 56100.0 ; + RECT 52800.0 57000.0 60000.0 58500.0 ; END END ADDR[2] PIN ADDR[3] DIRECTION INPUT ; PORT LAYER metal3 ; - RECT 53100.0 44400.0 60300.0 45900.0 ; + RECT 52800.0 46800.0 60000.0 48300.0 ; END END ADDR[3] PIN CSb @@ -81,7 +81,7 @@ MACRO sram_2_16_1_scn3me_subm DIRECTION INPUT ; PORT LAYER metal1 ; - RECT 43050.0 202200.0 44250.0 205800.0 ; + RECT 42600.0 202200.0 43800.0 205800.0 ; END END clk PIN vdd @@ -90,9 +90,9 @@ MACRO sram_2_16_1_scn3me_subm SHAPE ABUTMENT ; PORT LAYER metal1 ; - RECT 198900.0 0.0 203400.0 444600.0 ; + RECT 198600.0 0.0 203100.0 436800.0 ; LAYER metal1 ; - RECT 53100.0 0.0 57600.0 444600.0 ; + RECT 52800.0 0.0 57300.0 436800.0 ; END END vdd PIN gnd @@ -101,3613 +101,3611 @@ MACRO sram_2_16_1_scn3me_subm SHAPE ABUTMENT ; PORT LAYER metal2 ; - RECT 148350.0 0.0 152850.0 444600.0 ; + RECT 148050.0 0.0 152550.0 436800.0 ; END END gnd OBS LAYER metal1 ; - RECT 54900.0 295650.0 55800.0 298350.0 ; - RECT 97800.0 205200.0 98700.0 206100.0 ; - RECT 97800.0 202950.0 98700.0 203850.0 ; - RECT 96450.0 205200.0 98250.0 206100.0 ; - RECT 97800.0 203400.0 98700.0 205650.0 ; - RECT 98250.0 202950.0 100200.0 203850.0 ; - RECT 155250.0 205200.0 156150.0 206100.0 ; - RECT 155250.0 201450.0 156150.0 202350.0 ; - RECT 136350.0 205200.0 155700.0 206100.0 ; - RECT 155250.0 201900.0 156150.0 205650.0 ; - RECT 155700.0 201450.0 175200.0 202350.0 ; - RECT 97800.0 220500.0 98700.0 221400.0 ; - RECT 97800.0 222750.0 98700.0 223650.0 ; - RECT 96450.0 220500.0 98250.0 221400.0 ; - RECT 97800.0 220950.0 98700.0 223200.0 ; - RECT 98250.0 222750.0 100200.0 223650.0 ; - RECT 155250.0 220500.0 156150.0 221400.0 ; - RECT 155250.0 224250.0 156150.0 225150.0 ; - RECT 136350.0 220500.0 155700.0 221400.0 ; - RECT 155250.0 220950.0 156150.0 224700.0 ; - RECT 155700.0 224250.0 175200.0 225150.0 ; - RECT 97800.0 233400.0 98700.0 234300.0 ; - RECT 97800.0 231150.0 98700.0 232050.0 ; - RECT 96450.0 233400.0 98250.0 234300.0 ; - RECT 97800.0 231600.0 98700.0 233850.0 ; - RECT 98250.0 231150.0 100200.0 232050.0 ; - RECT 155250.0 233400.0 156150.0 234300.0 ; - RECT 155250.0 229650.0 156150.0 230550.0 ; - RECT 136350.0 233400.0 155700.0 234300.0 ; - RECT 155250.0 230100.0 156150.0 233850.0 ; - RECT 155700.0 229650.0 175200.0 230550.0 ; - RECT 97800.0 248700.0 98700.0 249600.0 ; - RECT 97800.0 250950.0 98700.0 251850.0 ; - RECT 96450.0 248700.0 98250.0 249600.0 ; - RECT 97800.0 249150.0 98700.0 251400.0 ; - RECT 98250.0 250950.0 100200.0 251850.0 ; - RECT 155250.0 248700.0 156150.0 249600.0 ; - RECT 155250.0 252450.0 156150.0 253350.0 ; - RECT 136350.0 248700.0 155700.0 249600.0 ; - RECT 155250.0 249150.0 156150.0 252900.0 ; - RECT 155700.0 252450.0 175200.0 253350.0 ; - RECT 97800.0 261600.0 98700.0 262500.0 ; - RECT 97800.0 259350.0 98700.0 260250.0 ; - RECT 96450.0 261600.0 98250.0 262500.0 ; - RECT 97800.0 259800.0 98700.0 262050.0 ; - RECT 98250.0 259350.0 100200.0 260250.0 ; - RECT 155250.0 261600.0 156150.0 262500.0 ; - RECT 155250.0 257850.0 156150.0 258750.0 ; - RECT 136350.0 261600.0 155700.0 262500.0 ; - RECT 155250.0 258300.0 156150.0 262050.0 ; - RECT 155700.0 257850.0 175200.0 258750.0 ; - RECT 97800.0 276900.0 98700.0 277800.0 ; - RECT 97800.0 279150.0 98700.0 280050.0 ; - RECT 96450.0 276900.0 98250.0 277800.0 ; - RECT 97800.0 277350.0 98700.0 279600.0 ; - RECT 98250.0 279150.0 100200.0 280050.0 ; - RECT 155250.0 276900.0 156150.0 277800.0 ; - RECT 155250.0 280650.0 156150.0 281550.0 ; - RECT 136350.0 276900.0 155700.0 277800.0 ; - RECT 155250.0 277350.0 156150.0 281100.0 ; - RECT 155700.0 280650.0 175200.0 281550.0 ; - RECT 97800.0 289800.0 98700.0 290700.0 ; - RECT 97800.0 287550.0 98700.0 288450.0 ; - RECT 96450.0 289800.0 98250.0 290700.0 ; - RECT 97800.0 288000.0 98700.0 290250.0 ; - RECT 98250.0 287550.0 100200.0 288450.0 ; - RECT 155250.0 289800.0 156150.0 290700.0 ; - RECT 155250.0 286050.0 156150.0 286950.0 ; - RECT 136350.0 289800.0 155700.0 290700.0 ; - RECT 155250.0 286500.0 156150.0 290250.0 ; - RECT 155700.0 286050.0 175200.0 286950.0 ; - RECT 97800.0 305100.0 98700.0 306000.0 ; - RECT 97800.0 307350.0 98700.0 308250.0 ; - RECT 96450.0 305100.0 98250.0 306000.0 ; - RECT 97800.0 305550.0 98700.0 307800.0 ; - RECT 98250.0 307350.0 100200.0 308250.0 ; - RECT 155250.0 305100.0 156150.0 306000.0 ; - RECT 155250.0 308850.0 156150.0 309750.0 ; - RECT 136350.0 305100.0 155700.0 306000.0 ; - RECT 155250.0 305550.0 156150.0 309300.0 ; - RECT 155700.0 308850.0 175200.0 309750.0 ; - RECT 97800.0 318000.0 98700.0 318900.0 ; - RECT 97800.0 315750.0 98700.0 316650.0 ; - RECT 96450.0 318000.0 98250.0 318900.0 ; - RECT 97800.0 316200.0 98700.0 318450.0 ; - RECT 98250.0 315750.0 100200.0 316650.0 ; - RECT 155250.0 318000.0 156150.0 318900.0 ; - RECT 155250.0 314250.0 156150.0 315150.0 ; - RECT 136350.0 318000.0 155700.0 318900.0 ; - RECT 155250.0 314700.0 156150.0 318450.0 ; - RECT 155700.0 314250.0 175200.0 315150.0 ; - RECT 97800.0 333300.0 98700.0 334200.0 ; - RECT 97800.0 335550.0 98700.0 336450.0 ; - RECT 96450.0 333300.0 98250.0 334200.0 ; - RECT 97800.0 333750.0 98700.0 336000.0 ; - RECT 98250.0 335550.0 100200.0 336450.0 ; - RECT 155250.0 333300.0 156150.0 334200.0 ; - RECT 155250.0 337050.0 156150.0 337950.0 ; - RECT 136350.0 333300.0 155700.0 334200.0 ; - RECT 155250.0 333750.0 156150.0 337500.0 ; - RECT 155700.0 337050.0 175200.0 337950.0 ; - RECT 97800.0 346200.0 98700.0 347100.0 ; - RECT 97800.0 343950.0 98700.0 344850.0 ; - RECT 96450.0 346200.0 98250.0 347100.0 ; - RECT 97800.0 344400.0 98700.0 346650.0 ; - RECT 98250.0 343950.0 100200.0 344850.0 ; - RECT 155250.0 346200.0 156150.0 347100.0 ; - RECT 155250.0 342450.0 156150.0 343350.0 ; - RECT 136350.0 346200.0 155700.0 347100.0 ; - RECT 155250.0 342900.0 156150.0 346650.0 ; - RECT 155700.0 342450.0 175200.0 343350.0 ; - RECT 97800.0 361500.0 98700.0 362400.0 ; - RECT 97800.0 363750.0 98700.0 364650.0 ; - RECT 96450.0 361500.0 98250.0 362400.0 ; - RECT 97800.0 361950.0 98700.0 364200.0 ; - RECT 98250.0 363750.0 100200.0 364650.0 ; - RECT 155250.0 361500.0 156150.0 362400.0 ; - RECT 155250.0 365250.0 156150.0 366150.0 ; - RECT 136350.0 361500.0 155700.0 362400.0 ; - RECT 155250.0 361950.0 156150.0 365700.0 ; - RECT 155700.0 365250.0 175200.0 366150.0 ; - RECT 97800.0 374400.0 98700.0 375300.0 ; - RECT 97800.0 372150.0 98700.0 373050.0 ; - RECT 96450.0 374400.0 98250.0 375300.0 ; - RECT 97800.0 372600.0 98700.0 374850.0 ; - RECT 98250.0 372150.0 100200.0 373050.0 ; - RECT 155250.0 374400.0 156150.0 375300.0 ; - RECT 155250.0 370650.0 156150.0 371550.0 ; - RECT 136350.0 374400.0 155700.0 375300.0 ; - RECT 155250.0 371100.0 156150.0 374850.0 ; - RECT 155700.0 370650.0 175200.0 371550.0 ; - RECT 97800.0 389700.0 98700.0 390600.0 ; - RECT 97800.0 391950.0 98700.0 392850.0 ; - RECT 96450.0 389700.0 98250.0 390600.0 ; - RECT 97800.0 390150.0 98700.0 392400.0 ; - RECT 98250.0 391950.0 100200.0 392850.0 ; - RECT 155250.0 389700.0 156150.0 390600.0 ; - RECT 155250.0 393450.0 156150.0 394350.0 ; - RECT 136350.0 389700.0 155700.0 390600.0 ; - RECT 155250.0 390150.0 156150.0 393900.0 ; - RECT 155700.0 393450.0 175200.0 394350.0 ; - RECT 97800.0 402600.0 98700.0 403500.0 ; - RECT 97800.0 400350.0 98700.0 401250.0 ; - RECT 96450.0 402600.0 98250.0 403500.0 ; - RECT 97800.0 400800.0 98700.0 403050.0 ; - RECT 98250.0 400350.0 100200.0 401250.0 ; - RECT 155250.0 402600.0 156150.0 403500.0 ; - RECT 155250.0 398850.0 156150.0 399750.0 ; - RECT 136350.0 402600.0 155700.0 403500.0 ; - RECT 155250.0 399300.0 156150.0 403050.0 ; - RECT 155700.0 398850.0 175200.0 399750.0 ; - RECT 97800.0 417900.0 98700.0 418800.0 ; - RECT 97800.0 420150.0 98700.0 421050.0 ; - RECT 96450.0 417900.0 98250.0 418800.0 ; - RECT 97800.0 418350.0 98700.0 420600.0 ; - RECT 98250.0 420150.0 100200.0 421050.0 ; - RECT 155250.0 417900.0 156150.0 418800.0 ; - RECT 155250.0 421650.0 156150.0 422550.0 ; - RECT 136350.0 417900.0 155700.0 418800.0 ; - RECT 155250.0 418350.0 156150.0 422100.0 ; - RECT 155700.0 421650.0 175200.0 422550.0 ; - RECT 106500.0 198750.0 175800.0 199650.0 ; - RECT 106500.0 226950.0 175800.0 227850.0 ; - RECT 106500.0 255150.0 175800.0 256050.0 ; - RECT 106500.0 283350.0 175800.0 284250.0 ; - RECT 106500.0 311550.0 175800.0 312450.0 ; - RECT 106500.0 339750.0 175800.0 340650.0 ; - RECT 106500.0 367950.0 175800.0 368850.0 ; - RECT 106500.0 396150.0 175800.0 397050.0 ; - RECT 106500.0 424350.0 175800.0 425250.0 ; - RECT 53100.0 212850.0 203400.0 213750.0 ; - RECT 53100.0 241050.0 203400.0 241950.0 ; - RECT 53100.0 269250.0 203400.0 270150.0 ; - RECT 53100.0 297450.0 203400.0 298350.0 ; - RECT 53100.0 325650.0 203400.0 326550.0 ; - RECT 53100.0 353850.0 203400.0 354750.0 ; - RECT 53100.0 382050.0 203400.0 382950.0 ; - RECT 53100.0 410250.0 203400.0 411150.0 ; - RECT 130800.0 88650.0 135300.0 89550.0 ; - RECT 127800.0 102750.0 138000.0 103650.0 ; - RECT 130800.0 145050.0 140700.0 145950.0 ; - RECT 127800.0 159150.0 143400.0 160050.0 ; - RECT 130800.0 85950.0 132300.0 86850.0 ; - RECT 130800.0 114150.0 132300.0 115050.0 ; - RECT 130800.0 142350.0 132300.0 143250.0 ; - RECT 130800.0 170550.0 132300.0 171450.0 ; - RECT 53100.0 100050.0 130800.0 100950.0 ; - RECT 53100.0 128250.0 130800.0 129150.0 ; - RECT 53100.0 156450.0 130800.0 157350.0 ; - RECT 53100.0 184650.0 130800.0 185550.0 ; - RECT 119400.0 75450.0 135300.0 76350.0 ; - RECT 119400.0 65250.0 138000.0 66150.0 ; - RECT 119400.0 55050.0 140700.0 55950.0 ; - RECT 119400.0 44850.0 143400.0 45750.0 ; - RECT 119400.0 70350.0 149550.0 71250.0 ; - RECT 119400.0 49950.0 149550.0 50850.0 ; - RECT 115800.0 37650.0 116700.0 38550.0 ; - RECT 115800.0 38100.0 116700.0 40200.0 ; - RECT 53100.0 37650.0 116250.0 38550.0 ; - RECT 164100.0 32400.0 175800.0 33300.0 ; - RECT 158700.0 27900.0 175800.0 28800.0 ; - RECT 161400.0 25500.0 175800.0 26400.0 ; - RECT 164100.0 429600.0 175800.0 430500.0 ; - RECT 166800.0 96900.0 175800.0 97800.0 ; - RECT 169500.0 195000.0 175800.0 195900.0 ; - RECT 61800.0 82650.0 62700.0 83550.0 ; - RECT 61800.0 81000.0 62700.0 83100.0 ; - RECT 62250.0 82650.0 156000.0 83550.0 ; - RECT 103350.0 426450.0 156900.0 427350.0 ; - RECT 175800.0 443700.0 198900.0 444600.0 ; - RECT 175800.0 167700.0 198900.0 168600.0 ; - RECT 175800.0 99000.0 198900.0 99900.0 ; - RECT 175800.0 86400.0 198900.0 87300.0 ; - RECT 175800.0 9600.0 198900.0 10500.0 ; - RECT 152850.0 23400.0 175800.0 24300.0 ; - RECT 152850.0 192900.0 175800.0 193800.0 ; - RECT 152850.0 94800.0 175800.0 95700.0 ; - RECT 175800.0 199200.0 186000.0 213300.0 ; - RECT 175800.0 227400.0 186000.0 213300.0 ; - RECT 175800.0 227400.0 186000.0 241500.0 ; - RECT 175800.0 255600.0 186000.0 241500.0 ; - RECT 175800.0 255600.0 186000.0 269700.0 ; - RECT 175800.0 283800.0 186000.0 269700.0 ; - RECT 175800.0 283800.0 186000.0 297900.0 ; - RECT 175800.0 312000.0 186000.0 297900.0 ; - RECT 175800.0 312000.0 186000.0 326100.0 ; - RECT 175800.0 340200.0 186000.0 326100.0 ; - RECT 175800.0 340200.0 186000.0 354300.0 ; - RECT 175800.0 368400.0 186000.0 354300.0 ; - RECT 175800.0 368400.0 186000.0 382500.0 ; - RECT 175800.0 396600.0 186000.0 382500.0 ; - RECT 175800.0 396600.0 186000.0 410700.0 ; - RECT 175800.0 424800.0 186000.0 410700.0 ; - RECT 186000.0 199200.0 196200.0 213300.0 ; - RECT 186000.0 227400.0 196200.0 213300.0 ; - RECT 186000.0 227400.0 196200.0 241500.0 ; - RECT 186000.0 255600.0 196200.0 241500.0 ; - RECT 186000.0 255600.0 196200.0 269700.0 ; - RECT 186000.0 283800.0 196200.0 269700.0 ; - RECT 186000.0 283800.0 196200.0 297900.0 ; - RECT 186000.0 312000.0 196200.0 297900.0 ; - RECT 186000.0 312000.0 196200.0 326100.0 ; - RECT 186000.0 340200.0 196200.0 326100.0 ; - RECT 186000.0 340200.0 196200.0 354300.0 ; - RECT 186000.0 368400.0 196200.0 354300.0 ; - RECT 186000.0 368400.0 196200.0 382500.0 ; - RECT 186000.0 396600.0 196200.0 382500.0 ; - RECT 186000.0 396600.0 196200.0 410700.0 ; - RECT 186000.0 424800.0 196200.0 410700.0 ; - RECT 175200.0 201300.0 196800.0 202500.0 ; - RECT 175200.0 224100.0 196800.0 225300.0 ; - RECT 175200.0 229500.0 196800.0 230700.0 ; - RECT 175200.0 252300.0 196800.0 253500.0 ; - RECT 175200.0 257700.0 196800.0 258900.0 ; - RECT 175200.0 280500.0 196800.0 281700.0 ; - RECT 175200.0 285900.0 196800.0 287100.0 ; - RECT 175200.0 308700.0 196800.0 309900.0 ; - RECT 175200.0 314100.0 196800.0 315300.0 ; - RECT 175200.0 336900.0 196800.0 338100.0 ; - RECT 175200.0 342300.0 196800.0 343500.0 ; - RECT 175200.0 365100.0 196800.0 366300.0 ; - RECT 175200.0 370500.0 196800.0 371700.0 ; - RECT 175200.0 393300.0 196800.0 394500.0 ; - RECT 175200.0 398700.0 196800.0 399900.0 ; - RECT 175200.0 421500.0 196800.0 422700.0 ; - RECT 175200.0 212700.0 196800.0 213600.0 ; - RECT 175200.0 240900.0 196800.0 241800.0 ; - RECT 175200.0 269100.0 196800.0 270000.0 ; - RECT 175200.0 297300.0 196800.0 298200.0 ; - RECT 175200.0 325500.0 196800.0 326400.0 ; - RECT 175200.0 353700.0 196800.0 354600.0 ; - RECT 175200.0 381900.0 196800.0 382800.0 ; - RECT 175200.0 410100.0 196800.0 411000.0 ; - RECT 181200.0 436200.0 182400.0 444600.0 ; - RECT 178800.0 427200.0 180000.0 428400.0 ; - RECT 181200.0 427200.0 182400.0 428400.0 ; - RECT 181200.0 427200.0 182400.0 428400.0 ; - RECT 178800.0 427200.0 180000.0 428400.0 ; - RECT 178800.0 436200.0 180000.0 437400.0 ; - RECT 181200.0 436200.0 182400.0 437400.0 ; - RECT 181200.0 436200.0 182400.0 437400.0 ; - RECT 178800.0 436200.0 180000.0 437400.0 ; - RECT 181200.0 436200.0 182400.0 437400.0 ; - RECT 183600.0 436200.0 184800.0 437400.0 ; - RECT 183600.0 436200.0 184800.0 437400.0 ; - RECT 181200.0 436200.0 182400.0 437400.0 ; - RECT 180900.0 429450.0 179700.0 430650.0 ; - RECT 181200.0 442800.0 182400.0 444000.0 ; - RECT 178800.0 427200.0 180000.0 428400.0 ; - RECT 181200.0 427200.0 182400.0 428400.0 ; - RECT 178800.0 436200.0 180000.0 437400.0 ; - RECT 183600.0 436200.0 184800.0 437400.0 ; - RECT 175800.0 429600.0 186000.0 430500.0 ; - RECT 175800.0 443700.0 186000.0 444600.0 ; - RECT 191400.0 436200.0 192600.0 444600.0 ; - RECT 189000.0 427200.0 190200.0 428400.0 ; - RECT 191400.0 427200.0 192600.0 428400.0 ; - RECT 191400.0 427200.0 192600.0 428400.0 ; - RECT 189000.0 427200.0 190200.0 428400.0 ; - RECT 189000.0 436200.0 190200.0 437400.0 ; - RECT 191400.0 436200.0 192600.0 437400.0 ; - RECT 191400.0 436200.0 192600.0 437400.0 ; - RECT 189000.0 436200.0 190200.0 437400.0 ; - RECT 191400.0 436200.0 192600.0 437400.0 ; - RECT 193800.0 436200.0 195000.0 437400.0 ; - RECT 193800.0 436200.0 195000.0 437400.0 ; - RECT 191400.0 436200.0 192600.0 437400.0 ; - RECT 191100.0 429450.0 189900.0 430650.0 ; - RECT 191400.0 442800.0 192600.0 444000.0 ; - RECT 189000.0 427200.0 190200.0 428400.0 ; - RECT 191400.0 427200.0 192600.0 428400.0 ; - RECT 189000.0 436200.0 190200.0 437400.0 ; - RECT 193800.0 436200.0 195000.0 437400.0 ; - RECT 186000.0 429600.0 196200.0 430500.0 ; - RECT 186000.0 443700.0 196200.0 444600.0 ; - RECT 175800.0 429600.0 196200.0 430500.0 ; - RECT 175800.0 443700.0 196200.0 444600.0 ; - RECT 175800.0 150300.0 186000.0 199200.0 ; - RECT 186000.0 150300.0 196200.0 199200.0 ; - RECT 175800.0 195000.0 196200.0 195900.0 ; - RECT 175800.0 167700.0 196200.0 168600.0 ; - RECT 175800.0 192900.0 196200.0 193800.0 ; - RECT 175800.0 90000.0 186000.0 150300.0 ; - RECT 186000.0 90000.0 196200.0 150300.0 ; - RECT 175800.0 96900.0 196200.0 97800.0 ; - RECT 175800.0 99000.0 196200.0 99900.0 ; - RECT 175800.0 94800.0 196200.0 95700.0 ; - RECT 175800.0 30000.0 186000.0 90000.0 ; - RECT 196200.0 30000.0 186000.0 90000.0 ; - RECT 175800.0 32400.0 196200.0 33300.0 ; - RECT 175800.0 86400.0 196200.0 87300.0 ; - RECT 175800.0 30000.0 186000.0 8100.0 ; - RECT 186000.0 30000.0 196200.0 8100.0 ; - RECT 175800.0 26400.0 196200.0 25500.0 ; - RECT 175800.0 28800.0 196200.0 27900.0 ; - RECT 175800.0 10500.0 196200.0 9600.0 ; - RECT 175800.0 24300.0 196200.0 23400.0 ; - RECT 88050.0 206550.0 88950.0 207450.0 ; - RECT 88050.0 205200.0 88950.0 206100.0 ; - RECT 84000.0 206550.0 88500.0 207450.0 ; - RECT 88050.0 205650.0 88950.0 207000.0 ; - RECT 88500.0 205200.0 93000.0 206100.0 ; - RECT 88050.0 219150.0 88950.0 220050.0 ; - RECT 88050.0 220500.0 88950.0 221400.0 ; - RECT 84000.0 219150.0 88500.0 220050.0 ; - RECT 88050.0 219600.0 88950.0 220950.0 ; - RECT 88500.0 220500.0 93000.0 221400.0 ; - RECT 88050.0 234750.0 88950.0 235650.0 ; - RECT 88050.0 233400.0 88950.0 234300.0 ; - RECT 84000.0 234750.0 88500.0 235650.0 ; - RECT 88050.0 233850.0 88950.0 235200.0 ; - RECT 88500.0 233400.0 93000.0 234300.0 ; - RECT 88050.0 247350.0 88950.0 248250.0 ; - RECT 88050.0 248700.0 88950.0 249600.0 ; - RECT 84000.0 247350.0 88500.0 248250.0 ; - RECT 88050.0 247800.0 88950.0 249150.0 ; - RECT 88500.0 248700.0 93000.0 249600.0 ; - RECT 88050.0 262950.0 88950.0 263850.0 ; - RECT 88050.0 261600.0 88950.0 262500.0 ; - RECT 84000.0 262950.0 88500.0 263850.0 ; - RECT 88050.0 262050.0 88950.0 263400.0 ; - RECT 88500.0 261600.0 93000.0 262500.0 ; - RECT 88050.0 275550.0 88950.0 276450.0 ; - RECT 88050.0 276900.0 88950.0 277800.0 ; - RECT 84000.0 275550.0 88500.0 276450.0 ; - RECT 88050.0 276000.0 88950.0 277350.0 ; - RECT 88500.0 276900.0 93000.0 277800.0 ; - RECT 88050.0 291150.0 88950.0 292050.0 ; - RECT 88050.0 289800.0 88950.0 290700.0 ; - RECT 84000.0 291150.0 88500.0 292050.0 ; - RECT 88050.0 290250.0 88950.0 291600.0 ; - RECT 88500.0 289800.0 93000.0 290700.0 ; - RECT 88050.0 303750.0 88950.0 304650.0 ; - RECT 88050.0 305100.0 88950.0 306000.0 ; - RECT 84000.0 303750.0 88500.0 304650.0 ; - RECT 88050.0 304200.0 88950.0 305550.0 ; - RECT 88500.0 305100.0 93000.0 306000.0 ; - RECT 88050.0 319350.0 88950.0 320250.0 ; - RECT 88050.0 318000.0 88950.0 318900.0 ; - RECT 84000.0 319350.0 88500.0 320250.0 ; - RECT 88050.0 318450.0 88950.0 319800.0 ; - RECT 88500.0 318000.0 93000.0 318900.0 ; - RECT 88050.0 331950.0 88950.0 332850.0 ; - RECT 88050.0 333300.0 88950.0 334200.0 ; - RECT 84000.0 331950.0 88500.0 332850.0 ; - RECT 88050.0 332400.0 88950.0 333750.0 ; - RECT 88500.0 333300.0 93000.0 334200.0 ; - RECT 88050.0 347550.0 88950.0 348450.0 ; - RECT 88050.0 346200.0 88950.0 347100.0 ; - RECT 84000.0 347550.0 88500.0 348450.0 ; - RECT 88050.0 346650.0 88950.0 348000.0 ; - RECT 88500.0 346200.0 93000.0 347100.0 ; - RECT 88050.0 360150.0 88950.0 361050.0 ; - RECT 88050.0 361500.0 88950.0 362400.0 ; - RECT 84000.0 360150.0 88500.0 361050.0 ; - RECT 88050.0 360600.0 88950.0 361950.0 ; - RECT 88500.0 361500.0 93000.0 362400.0 ; - RECT 88050.0 375750.0 88950.0 376650.0 ; - RECT 88050.0 374400.0 88950.0 375300.0 ; - RECT 84000.0 375750.0 88500.0 376650.0 ; - RECT 88050.0 374850.0 88950.0 376200.0 ; - RECT 88500.0 374400.0 93000.0 375300.0 ; - RECT 88050.0 388350.0 88950.0 389250.0 ; - RECT 88050.0 389700.0 88950.0 390600.0 ; - RECT 84000.0 388350.0 88500.0 389250.0 ; - RECT 88050.0 388800.0 88950.0 390150.0 ; - RECT 88500.0 389700.0 93000.0 390600.0 ; - RECT 88050.0 403950.0 88950.0 404850.0 ; - RECT 88050.0 402600.0 88950.0 403500.0 ; - RECT 84000.0 403950.0 88500.0 404850.0 ; - RECT 88050.0 403050.0 88950.0 404400.0 ; - RECT 88500.0 402600.0 93000.0 403500.0 ; - RECT 88050.0 416550.0 88950.0 417450.0 ; - RECT 88050.0 417900.0 88950.0 418800.0 ; - RECT 84000.0 416550.0 88500.0 417450.0 ; - RECT 88050.0 417000.0 88950.0 418350.0 ; - RECT 88500.0 417900.0 93000.0 418800.0 ; - RECT 59850.0 92400.0 76200.0 93300.0 ; - RECT 61950.0 107700.0 76200.0 108600.0 ; - RECT 64050.0 120600.0 76200.0 121500.0 ; - RECT 66150.0 135900.0 76200.0 136800.0 ; - RECT 68250.0 148800.0 76200.0 149700.0 ; - RECT 70350.0 164100.0 76200.0 165000.0 ; - RECT 72450.0 177000.0 76200.0 177900.0 ; - RECT 74550.0 192300.0 76200.0 193200.0 ; - RECT 59850.0 206550.0 78600.0 207450.0 ; - RECT 68250.0 203850.0 81600.0 204750.0 ; - RECT 59850.0 219150.0 78600.0 220050.0 ; - RECT 70350.0 221850.0 81600.0 222750.0 ; - RECT 59850.0 234750.0 78600.0 235650.0 ; - RECT 72450.0 232050.0 81600.0 232950.0 ; - RECT 59850.0 247350.0 78600.0 248250.0 ; - RECT 74550.0 250050.0 81600.0 250950.0 ; - RECT 61950.0 262950.0 78600.0 263850.0 ; - RECT 68250.0 260250.0 81600.0 261150.0 ; - RECT 61950.0 275550.0 78600.0 276450.0 ; - RECT 70350.0 278250.0 81600.0 279150.0 ; - RECT 61950.0 291150.0 78600.0 292050.0 ; - RECT 72450.0 288450.0 81600.0 289350.0 ; - RECT 61950.0 303750.0 78600.0 304650.0 ; - RECT 74550.0 306450.0 81600.0 307350.0 ; - RECT 64050.0 319350.0 78600.0 320250.0 ; - RECT 68250.0 316650.0 81600.0 317550.0 ; - RECT 64050.0 331950.0 78600.0 332850.0 ; - RECT 70350.0 334650.0 81600.0 335550.0 ; - RECT 64050.0 347550.0 78600.0 348450.0 ; - RECT 72450.0 344850.0 81600.0 345750.0 ; - RECT 64050.0 360150.0 78600.0 361050.0 ; - RECT 74550.0 362850.0 81600.0 363750.0 ; - RECT 66150.0 375750.0 78600.0 376650.0 ; - RECT 68250.0 373050.0 81600.0 373950.0 ; - RECT 66150.0 388350.0 78600.0 389250.0 ; - RECT 70350.0 391050.0 81600.0 391950.0 ; - RECT 66150.0 403950.0 78600.0 404850.0 ; - RECT 72450.0 401250.0 81600.0 402150.0 ; - RECT 66150.0 416550.0 78600.0 417450.0 ; - RECT 74550.0 419250.0 81600.0 420150.0 ; - RECT 114750.0 92400.0 113850.0 93300.0 ; - RECT 114750.0 97350.0 113850.0 98250.0 ; - RECT 118950.0 92400.0 114300.0 93300.0 ; - RECT 114750.0 92850.0 113850.0 97800.0 ; - RECT 114300.0 97350.0 111750.0 98250.0 ; - RECT 130350.0 92400.0 122400.0 93300.0 ; - RECT 114750.0 107700.0 113850.0 108600.0 ; - RECT 114750.0 111450.0 113850.0 112350.0 ; - RECT 118950.0 107700.0 114300.0 108600.0 ; - RECT 114750.0 108150.0 113850.0 111900.0 ; - RECT 114300.0 111450.0 108750.0 112350.0 ; - RECT 127350.0 107700.0 122400.0 108600.0 ; - RECT 130350.0 116250.0 105750.0 117150.0 ; - RECT 127350.0 130350.0 102750.0 131250.0 ; - RECT 111750.0 93750.0 97800.0 94650.0 ; - RECT 108750.0 91050.0 94800.0 91950.0 ; - RECT 105750.0 106350.0 97800.0 107250.0 ; - RECT 108750.0 109050.0 94800.0 109950.0 ; - RECT 111750.0 121950.0 97800.0 122850.0 ; - RECT 102750.0 119250.0 94800.0 120150.0 ; - RECT 105750.0 134550.0 97800.0 135450.0 ; - RECT 102750.0 137250.0 94800.0 138150.0 ; - RECT 88350.0 93750.0 87450.0 94650.0 ; - RECT 88350.0 92400.0 87450.0 93300.0 ; - RECT 92400.0 93750.0 87900.0 94650.0 ; - RECT 88350.0 92850.0 87450.0 94200.0 ; - RECT 87900.0 92400.0 83400.0 93300.0 ; - RECT 88350.0 106350.0 87450.0 107250.0 ; - RECT 88350.0 107700.0 87450.0 108600.0 ; - RECT 92400.0 106350.0 87900.0 107250.0 ; - RECT 88350.0 106800.0 87450.0 108150.0 ; - RECT 87900.0 107700.0 83400.0 108600.0 ; - RECT 88350.0 121950.0 87450.0 122850.0 ; - RECT 88350.0 120600.0 87450.0 121500.0 ; - RECT 92400.0 121950.0 87900.0 122850.0 ; - RECT 88350.0 121050.0 87450.0 122400.0 ; - RECT 87900.0 120600.0 83400.0 121500.0 ; - RECT 88350.0 134550.0 87450.0 135450.0 ; - RECT 88350.0 135900.0 87450.0 136800.0 ; - RECT 92400.0 134550.0 87900.0 135450.0 ; - RECT 88350.0 135000.0 87450.0 136350.0 ; - RECT 87900.0 135900.0 83400.0 136800.0 ; - RECT 118200.0 98550.0 117000.0 100500.0 ; - RECT 118200.0 86400.0 117000.0 88650.0 ; - RECT 123000.0 87750.0 121800.0 85950.0 ; - RECT 123000.0 97350.0 121800.0 100950.0 ; - RECT 120300.0 88950.0 119400.0 97350.0 ; - RECT 123000.0 97350.0 121800.0 98550.0 ; - RECT 120600.0 97350.0 119400.0 98550.0 ; - RECT 120600.0 97350.0 119400.0 98550.0 ; - RECT 123000.0 97350.0 121800.0 98550.0 ; - RECT 123000.0 87750.0 121800.0 88950.0 ; - RECT 120600.0 87750.0 119400.0 88950.0 ; - RECT 120600.0 87750.0 119400.0 88950.0 ; - RECT 123000.0 87750.0 121800.0 88950.0 ; - RECT 118200.0 97950.0 117000.0 99150.0 ; - RECT 118200.0 88050.0 117000.0 89250.0 ; - RECT 122400.0 92250.0 121200.0 93450.0 ; - RECT 122400.0 92250.0 121200.0 93450.0 ; - RECT 119850.0 92400.0 118950.0 93300.0 ; - RECT 124800.0 100050.0 115200.0 100950.0 ; - RECT 124800.0 85950.0 115200.0 86850.0 ; - RECT 118200.0 102450.0 117000.0 100500.0 ; - RECT 118200.0 114600.0 117000.0 112350.0 ; - RECT 123000.0 113250.0 121800.0 115050.0 ; - RECT 123000.0 103650.0 121800.0 100050.0 ; - RECT 120300.0 112050.0 119400.0 103650.0 ; - RECT 123000.0 103650.0 121800.0 102450.0 ; - RECT 120600.0 103650.0 119400.0 102450.0 ; - RECT 120600.0 103650.0 119400.0 102450.0 ; - RECT 123000.0 103650.0 121800.0 102450.0 ; - RECT 123000.0 113250.0 121800.0 112050.0 ; - RECT 120600.0 113250.0 119400.0 112050.0 ; - RECT 120600.0 113250.0 119400.0 112050.0 ; - RECT 123000.0 113250.0 121800.0 112050.0 ; - RECT 118200.0 103050.0 117000.0 101850.0 ; - RECT 118200.0 112950.0 117000.0 111750.0 ; - RECT 122400.0 108750.0 121200.0 107550.0 ; - RECT 122400.0 108750.0 121200.0 107550.0 ; - RECT 119850.0 108600.0 118950.0 107700.0 ; - RECT 124800.0 100950.0 115200.0 100050.0 ; - RECT 124800.0 115050.0 115200.0 114150.0 ; - RECT 79200.0 98550.0 78000.0 100500.0 ; - RECT 79200.0 86400.0 78000.0 88650.0 ; - RECT 84000.0 87750.0 82800.0 85950.0 ; - RECT 84000.0 97350.0 82800.0 100950.0 ; - RECT 81300.0 88950.0 80400.0 97350.0 ; - RECT 84000.0 97350.0 82800.0 98550.0 ; - RECT 81600.0 97350.0 80400.0 98550.0 ; - RECT 81600.0 97350.0 80400.0 98550.0 ; - RECT 84000.0 97350.0 82800.0 98550.0 ; - RECT 84000.0 87750.0 82800.0 88950.0 ; - RECT 81600.0 87750.0 80400.0 88950.0 ; - RECT 81600.0 87750.0 80400.0 88950.0 ; - RECT 84000.0 87750.0 82800.0 88950.0 ; - RECT 79200.0 97950.0 78000.0 99150.0 ; - RECT 79200.0 88050.0 78000.0 89250.0 ; - RECT 83400.0 92250.0 82200.0 93450.0 ; - RECT 83400.0 92250.0 82200.0 93450.0 ; - RECT 80850.0 92400.0 79950.0 93300.0 ; - RECT 85800.0 100050.0 76200.0 100950.0 ; - RECT 85800.0 85950.0 76200.0 86850.0 ; - RECT 79200.0 102450.0 78000.0 100500.0 ; - RECT 79200.0 114600.0 78000.0 112350.0 ; - RECT 84000.0 113250.0 82800.0 115050.0 ; - RECT 84000.0 103650.0 82800.0 100050.0 ; - RECT 81300.0 112050.0 80400.0 103650.0 ; - RECT 84000.0 103650.0 82800.0 102450.0 ; - RECT 81600.0 103650.0 80400.0 102450.0 ; - RECT 81600.0 103650.0 80400.0 102450.0 ; - RECT 84000.0 103650.0 82800.0 102450.0 ; - RECT 84000.0 113250.0 82800.0 112050.0 ; - RECT 81600.0 113250.0 80400.0 112050.0 ; - RECT 81600.0 113250.0 80400.0 112050.0 ; - RECT 84000.0 113250.0 82800.0 112050.0 ; - RECT 79200.0 103050.0 78000.0 101850.0 ; - RECT 79200.0 112950.0 78000.0 111750.0 ; - RECT 83400.0 108750.0 82200.0 107550.0 ; - RECT 83400.0 108750.0 82200.0 107550.0 ; - RECT 80850.0 108600.0 79950.0 107700.0 ; - RECT 85800.0 100950.0 76200.0 100050.0 ; - RECT 85800.0 115050.0 76200.0 114150.0 ; - RECT 79200.0 126750.0 78000.0 128700.0 ; - RECT 79200.0 114600.0 78000.0 116850.0 ; - RECT 84000.0 115950.0 82800.0 114150.0 ; - RECT 84000.0 125550.0 82800.0 129150.0 ; - RECT 81300.0 117150.0 80400.0 125550.0 ; - RECT 84000.0 125550.0 82800.0 126750.0 ; - RECT 81600.0 125550.0 80400.0 126750.0 ; - RECT 81600.0 125550.0 80400.0 126750.0 ; - RECT 84000.0 125550.0 82800.0 126750.0 ; - RECT 84000.0 115950.0 82800.0 117150.0 ; - RECT 81600.0 115950.0 80400.0 117150.0 ; - RECT 81600.0 115950.0 80400.0 117150.0 ; - RECT 84000.0 115950.0 82800.0 117150.0 ; - RECT 79200.0 126150.0 78000.0 127350.0 ; - RECT 79200.0 116250.0 78000.0 117450.0 ; - RECT 83400.0 120450.0 82200.0 121650.0 ; - RECT 83400.0 120450.0 82200.0 121650.0 ; - RECT 80850.0 120600.0 79950.0 121500.0 ; - RECT 85800.0 128250.0 76200.0 129150.0 ; - RECT 85800.0 114150.0 76200.0 115050.0 ; - RECT 79200.0 130650.0 78000.0 128700.0 ; - RECT 79200.0 142800.0 78000.0 140550.0 ; - RECT 84000.0 141450.0 82800.0 143250.0 ; - RECT 84000.0 131850.0 82800.0 128250.0 ; - RECT 81300.0 140250.0 80400.0 131850.0 ; - RECT 84000.0 131850.0 82800.0 130650.0 ; - RECT 81600.0 131850.0 80400.0 130650.0 ; - RECT 81600.0 131850.0 80400.0 130650.0 ; - RECT 84000.0 131850.0 82800.0 130650.0 ; - RECT 84000.0 141450.0 82800.0 140250.0 ; - RECT 81600.0 141450.0 80400.0 140250.0 ; - RECT 81600.0 141450.0 80400.0 140250.0 ; - RECT 84000.0 141450.0 82800.0 140250.0 ; - RECT 79200.0 131250.0 78000.0 130050.0 ; - RECT 79200.0 141150.0 78000.0 139950.0 ; - RECT 83400.0 136950.0 82200.0 135750.0 ; - RECT 83400.0 136950.0 82200.0 135750.0 ; - RECT 80850.0 136800.0 79950.0 135900.0 ; - RECT 85800.0 129150.0 76200.0 128250.0 ; - RECT 85800.0 143250.0 76200.0 142350.0 ; - RECT 98400.0 88350.0 97200.0 85950.0 ; - RECT 98400.0 97350.0 97200.0 100950.0 ; - RECT 93600.0 97350.0 92400.0 100950.0 ; - RECT 91200.0 98550.0 90000.0 100500.0 ; - RECT 91200.0 86400.0 90000.0 88650.0 ; - RECT 98400.0 97350.0 97200.0 98550.0 ; - RECT 96000.0 97350.0 94800.0 98550.0 ; - RECT 96000.0 97350.0 94800.0 98550.0 ; - RECT 98400.0 97350.0 97200.0 98550.0 ; - RECT 96000.0 97350.0 94800.0 98550.0 ; - RECT 93600.0 97350.0 92400.0 98550.0 ; - RECT 93600.0 97350.0 92400.0 98550.0 ; - RECT 96000.0 97350.0 94800.0 98550.0 ; - RECT 98400.0 88350.0 97200.0 89550.0 ; - RECT 96000.0 88350.0 94800.0 89550.0 ; - RECT 96000.0 88350.0 94800.0 89550.0 ; - RECT 98400.0 88350.0 97200.0 89550.0 ; - RECT 96000.0 88350.0 94800.0 89550.0 ; - RECT 93600.0 88350.0 92400.0 89550.0 ; - RECT 93600.0 88350.0 92400.0 89550.0 ; - RECT 96000.0 88350.0 94800.0 89550.0 ; - RECT 91200.0 97950.0 90000.0 99150.0 ; - RECT 91200.0 88050.0 90000.0 89250.0 ; - RECT 93600.0 90900.0 94800.0 92100.0 ; - RECT 96600.0 93600.0 97800.0 94800.0 ; - RECT 96000.0 97350.0 94800.0 98550.0 ; - RECT 93600.0 88350.0 92400.0 89550.0 ; - RECT 92400.0 93600.0 93600.0 94800.0 ; - RECT 97800.0 93600.0 96600.0 94800.0 ; - RECT 94800.0 90900.0 93600.0 92100.0 ; - RECT 93600.0 93600.0 92400.0 94800.0 ; - RECT 100200.0 100050.0 85800.0 100950.0 ; - RECT 100200.0 85950.0 85800.0 86850.0 ; - RECT 98400.0 112650.0 97200.0 115050.0 ; - RECT 98400.0 103650.0 97200.0 100050.0 ; - RECT 93600.0 103650.0 92400.0 100050.0 ; - RECT 91200.0 102450.0 90000.0 100500.0 ; - RECT 91200.0 114600.0 90000.0 112350.0 ; - RECT 98400.0 103650.0 97200.0 102450.0 ; - RECT 96000.0 103650.0 94800.0 102450.0 ; - RECT 96000.0 103650.0 94800.0 102450.0 ; - RECT 98400.0 103650.0 97200.0 102450.0 ; - RECT 96000.0 103650.0 94800.0 102450.0 ; - RECT 93600.0 103650.0 92400.0 102450.0 ; - RECT 93600.0 103650.0 92400.0 102450.0 ; - RECT 96000.0 103650.0 94800.0 102450.0 ; - RECT 98400.0 112650.0 97200.0 111450.0 ; - RECT 96000.0 112650.0 94800.0 111450.0 ; - RECT 96000.0 112650.0 94800.0 111450.0 ; - RECT 98400.0 112650.0 97200.0 111450.0 ; - RECT 96000.0 112650.0 94800.0 111450.0 ; - RECT 93600.0 112650.0 92400.0 111450.0 ; - RECT 93600.0 112650.0 92400.0 111450.0 ; - RECT 96000.0 112650.0 94800.0 111450.0 ; - RECT 91200.0 103050.0 90000.0 101850.0 ; - RECT 91200.0 112950.0 90000.0 111750.0 ; - RECT 93600.0 110100.0 94800.0 108900.0 ; - RECT 96600.0 107400.0 97800.0 106200.0 ; - RECT 96000.0 103650.0 94800.0 102450.0 ; - RECT 93600.0 112650.0 92400.0 111450.0 ; - RECT 92400.0 107400.0 93600.0 106200.0 ; - RECT 97800.0 107400.0 96600.0 106200.0 ; - RECT 94800.0 110100.0 93600.0 108900.0 ; - RECT 93600.0 107400.0 92400.0 106200.0 ; - RECT 100200.0 100950.0 85800.0 100050.0 ; - RECT 100200.0 115050.0 85800.0 114150.0 ; - RECT 98400.0 116550.0 97200.0 114150.0 ; - RECT 98400.0 125550.0 97200.0 129150.0 ; - RECT 93600.0 125550.0 92400.0 129150.0 ; - RECT 91200.0 126750.0 90000.0 128700.0 ; - RECT 91200.0 114600.0 90000.0 116850.0 ; - RECT 98400.0 125550.0 97200.0 126750.0 ; - RECT 96000.0 125550.0 94800.0 126750.0 ; - RECT 96000.0 125550.0 94800.0 126750.0 ; - RECT 98400.0 125550.0 97200.0 126750.0 ; - RECT 96000.0 125550.0 94800.0 126750.0 ; - RECT 93600.0 125550.0 92400.0 126750.0 ; - RECT 93600.0 125550.0 92400.0 126750.0 ; - RECT 96000.0 125550.0 94800.0 126750.0 ; - RECT 98400.0 116550.0 97200.0 117750.0 ; - RECT 96000.0 116550.0 94800.0 117750.0 ; - RECT 96000.0 116550.0 94800.0 117750.0 ; - RECT 98400.0 116550.0 97200.0 117750.0 ; - RECT 96000.0 116550.0 94800.0 117750.0 ; - RECT 93600.0 116550.0 92400.0 117750.0 ; - RECT 93600.0 116550.0 92400.0 117750.0 ; - RECT 96000.0 116550.0 94800.0 117750.0 ; - RECT 91200.0 126150.0 90000.0 127350.0 ; - RECT 91200.0 116250.0 90000.0 117450.0 ; - RECT 93600.0 119100.0 94800.0 120300.0 ; - RECT 96600.0 121800.0 97800.0 123000.0 ; - RECT 96000.0 125550.0 94800.0 126750.0 ; - RECT 93600.0 116550.0 92400.0 117750.0 ; - RECT 92400.0 121800.0 93600.0 123000.0 ; - RECT 97800.0 121800.0 96600.0 123000.0 ; - RECT 94800.0 119100.0 93600.0 120300.0 ; - RECT 93600.0 121800.0 92400.0 123000.0 ; - RECT 100200.0 128250.0 85800.0 129150.0 ; - RECT 100200.0 114150.0 85800.0 115050.0 ; - RECT 98400.0 140850.0 97200.0 143250.0 ; - RECT 98400.0 131850.0 97200.0 128250.0 ; - RECT 93600.0 131850.0 92400.0 128250.0 ; - RECT 91200.0 130650.0 90000.0 128700.0 ; - RECT 91200.0 142800.0 90000.0 140550.0 ; - RECT 98400.0 131850.0 97200.0 130650.0 ; - RECT 96000.0 131850.0 94800.0 130650.0 ; - RECT 96000.0 131850.0 94800.0 130650.0 ; - RECT 98400.0 131850.0 97200.0 130650.0 ; - RECT 96000.0 131850.0 94800.0 130650.0 ; - RECT 93600.0 131850.0 92400.0 130650.0 ; - RECT 93600.0 131850.0 92400.0 130650.0 ; - RECT 96000.0 131850.0 94800.0 130650.0 ; - RECT 98400.0 140850.0 97200.0 139650.0 ; - RECT 96000.0 140850.0 94800.0 139650.0 ; - RECT 96000.0 140850.0 94800.0 139650.0 ; - RECT 98400.0 140850.0 97200.0 139650.0 ; - RECT 96000.0 140850.0 94800.0 139650.0 ; - RECT 93600.0 140850.0 92400.0 139650.0 ; - RECT 93600.0 140850.0 92400.0 139650.0 ; - RECT 96000.0 140850.0 94800.0 139650.0 ; - RECT 91200.0 131250.0 90000.0 130050.0 ; - RECT 91200.0 141150.0 90000.0 139950.0 ; - RECT 93600.0 138300.0 94800.0 137100.0 ; - RECT 96600.0 135600.0 97800.0 134400.0 ; - RECT 96000.0 131850.0 94800.0 130650.0 ; - RECT 93600.0 140850.0 92400.0 139650.0 ; - RECT 92400.0 135600.0 93600.0 134400.0 ; - RECT 97800.0 135600.0 96600.0 134400.0 ; - RECT 94800.0 138300.0 93600.0 137100.0 ; - RECT 93600.0 135600.0 92400.0 134400.0 ; - RECT 100200.0 129150.0 85800.0 128250.0 ; - RECT 100200.0 143250.0 85800.0 142350.0 ; - RECT 111150.0 97200.0 112350.0 98400.0 ; - RECT 129750.0 92250.0 130950.0 93450.0 ; - RECT 108150.0 111300.0 109350.0 112500.0 ; - RECT 126750.0 107550.0 127950.0 108750.0 ; - RECT 129750.0 116100.0 130950.0 117300.0 ; - RECT 105150.0 116100.0 106350.0 117300.0 ; - RECT 126750.0 130200.0 127950.0 131400.0 ; - RECT 102150.0 130200.0 103350.0 131400.0 ; - RECT 111150.0 93600.0 112350.0 94800.0 ; - RECT 108150.0 90900.0 109350.0 92100.0 ; - RECT 105150.0 106200.0 106350.0 107400.0 ; - RECT 108150.0 108900.0 109350.0 110100.0 ; - RECT 111150.0 121800.0 112350.0 123000.0 ; - RECT 102150.0 119100.0 103350.0 120300.0 ; - RECT 105150.0 134400.0 106350.0 135600.0 ; - RECT 102150.0 137100.0 103350.0 138300.0 ; - RECT 79950.0 92400.0 76200.0 93300.0 ; - RECT 79950.0 107700.0 76200.0 108600.0 ; - RECT 79950.0 120600.0 76200.0 121500.0 ; - RECT 79950.0 135900.0 76200.0 136800.0 ; - RECT 130800.0 100050.0 76200.0 100950.0 ; - RECT 130800.0 128250.0 76200.0 129150.0 ; - RECT 130800.0 85950.0 76200.0 86850.0 ; - RECT 130800.0 114150.0 76200.0 115050.0 ; - RECT 130800.0 142350.0 76200.0 143250.0 ; - RECT 114750.0 148800.0 113850.0 149700.0 ; - RECT 114750.0 153750.0 113850.0 154650.0 ; - RECT 118950.0 148800.0 114300.0 149700.0 ; - RECT 114750.0 149250.0 113850.0 154200.0 ; - RECT 114300.0 153750.0 111750.0 154650.0 ; - RECT 130350.0 148800.0 122400.0 149700.0 ; - RECT 114750.0 164100.0 113850.0 165000.0 ; - RECT 114750.0 167850.0 113850.0 168750.0 ; - RECT 118950.0 164100.0 114300.0 165000.0 ; - RECT 114750.0 164550.0 113850.0 168300.0 ; - RECT 114300.0 167850.0 108750.0 168750.0 ; - RECT 127350.0 164100.0 122400.0 165000.0 ; - RECT 130350.0 172650.0 105750.0 173550.0 ; - RECT 127350.0 186750.0 102750.0 187650.0 ; - RECT 111750.0 150150.0 97800.0 151050.0 ; - RECT 108750.0 147450.0 94800.0 148350.0 ; - RECT 105750.0 162750.0 97800.0 163650.0 ; - RECT 108750.0 165450.0 94800.0 166350.0 ; - RECT 111750.0 178350.0 97800.0 179250.0 ; - RECT 102750.0 175650.0 94800.0 176550.0 ; - RECT 105750.0 190950.0 97800.0 191850.0 ; - RECT 102750.0 193650.0 94800.0 194550.0 ; - RECT 88350.0 150150.0 87450.0 151050.0 ; - RECT 88350.0 148800.0 87450.0 149700.0 ; - RECT 92400.0 150150.0 87900.0 151050.0 ; - RECT 88350.0 149250.0 87450.0 150600.0 ; - RECT 87900.0 148800.0 83400.0 149700.0 ; - RECT 88350.0 162750.0 87450.0 163650.0 ; - RECT 88350.0 164100.0 87450.0 165000.0 ; - RECT 92400.0 162750.0 87900.0 163650.0 ; - RECT 88350.0 163200.0 87450.0 164550.0 ; - RECT 87900.0 164100.0 83400.0 165000.0 ; - RECT 88350.0 178350.0 87450.0 179250.0 ; - RECT 88350.0 177000.0 87450.0 177900.0 ; - RECT 92400.0 178350.0 87900.0 179250.0 ; - RECT 88350.0 177450.0 87450.0 178800.0 ; - RECT 87900.0 177000.0 83400.0 177900.0 ; - RECT 88350.0 190950.0 87450.0 191850.0 ; - RECT 88350.0 192300.0 87450.0 193200.0 ; - RECT 92400.0 190950.0 87900.0 191850.0 ; - RECT 88350.0 191400.0 87450.0 192750.0 ; - RECT 87900.0 192300.0 83400.0 193200.0 ; - RECT 118200.0 154950.0 117000.0 156900.0 ; - RECT 118200.0 142800.0 117000.0 145050.0 ; - RECT 123000.0 144150.0 121800.0 142350.0 ; - RECT 123000.0 153750.0 121800.0 157350.0 ; - RECT 120300.0 145350.0 119400.0 153750.0 ; - RECT 123000.0 153750.0 121800.0 154950.0 ; - RECT 120600.0 153750.0 119400.0 154950.0 ; - RECT 120600.0 153750.0 119400.0 154950.0 ; - RECT 123000.0 153750.0 121800.0 154950.0 ; - RECT 123000.0 144150.0 121800.0 145350.0 ; - RECT 120600.0 144150.0 119400.0 145350.0 ; - RECT 120600.0 144150.0 119400.0 145350.0 ; - RECT 123000.0 144150.0 121800.0 145350.0 ; - RECT 118200.0 154350.0 117000.0 155550.0 ; - RECT 118200.0 144450.0 117000.0 145650.0 ; - RECT 122400.0 148650.0 121200.0 149850.0 ; - RECT 122400.0 148650.0 121200.0 149850.0 ; - RECT 119850.0 148800.0 118950.0 149700.0 ; - RECT 124800.0 156450.0 115200.0 157350.0 ; - RECT 124800.0 142350.0 115200.0 143250.0 ; - RECT 118200.0 158850.0 117000.0 156900.0 ; - RECT 118200.0 171000.0 117000.0 168750.0 ; - RECT 123000.0 169650.0 121800.0 171450.0 ; - RECT 123000.0 160050.0 121800.0 156450.0 ; - RECT 120300.0 168450.0 119400.0 160050.0 ; - RECT 123000.0 160050.0 121800.0 158850.0 ; - RECT 120600.0 160050.0 119400.0 158850.0 ; - RECT 120600.0 160050.0 119400.0 158850.0 ; - RECT 123000.0 160050.0 121800.0 158850.0 ; - RECT 123000.0 169650.0 121800.0 168450.0 ; - RECT 120600.0 169650.0 119400.0 168450.0 ; - RECT 120600.0 169650.0 119400.0 168450.0 ; - RECT 123000.0 169650.0 121800.0 168450.0 ; - RECT 118200.0 159450.0 117000.0 158250.0 ; - RECT 118200.0 169350.0 117000.0 168150.0 ; - RECT 122400.0 165150.0 121200.0 163950.0 ; - RECT 122400.0 165150.0 121200.0 163950.0 ; - RECT 119850.0 165000.0 118950.0 164100.0 ; - RECT 124800.0 157350.0 115200.0 156450.0 ; - RECT 124800.0 171450.0 115200.0 170550.0 ; - RECT 79200.0 154950.0 78000.0 156900.0 ; - RECT 79200.0 142800.0 78000.0 145050.0 ; - RECT 84000.0 144150.0 82800.0 142350.0 ; - RECT 84000.0 153750.0 82800.0 157350.0 ; - RECT 81300.0 145350.0 80400.0 153750.0 ; - RECT 84000.0 153750.0 82800.0 154950.0 ; - RECT 81600.0 153750.0 80400.0 154950.0 ; - RECT 81600.0 153750.0 80400.0 154950.0 ; - RECT 84000.0 153750.0 82800.0 154950.0 ; - RECT 84000.0 144150.0 82800.0 145350.0 ; - RECT 81600.0 144150.0 80400.0 145350.0 ; - RECT 81600.0 144150.0 80400.0 145350.0 ; - RECT 84000.0 144150.0 82800.0 145350.0 ; - RECT 79200.0 154350.0 78000.0 155550.0 ; - RECT 79200.0 144450.0 78000.0 145650.0 ; - RECT 83400.0 148650.0 82200.0 149850.0 ; - RECT 83400.0 148650.0 82200.0 149850.0 ; - RECT 80850.0 148800.0 79950.0 149700.0 ; - RECT 85800.0 156450.0 76200.0 157350.0 ; - RECT 85800.0 142350.0 76200.0 143250.0 ; - RECT 79200.0 158850.0 78000.0 156900.0 ; - RECT 79200.0 171000.0 78000.0 168750.0 ; - RECT 84000.0 169650.0 82800.0 171450.0 ; - RECT 84000.0 160050.0 82800.0 156450.0 ; - RECT 81300.0 168450.0 80400.0 160050.0 ; - RECT 84000.0 160050.0 82800.0 158850.0 ; - RECT 81600.0 160050.0 80400.0 158850.0 ; - RECT 81600.0 160050.0 80400.0 158850.0 ; - RECT 84000.0 160050.0 82800.0 158850.0 ; - RECT 84000.0 169650.0 82800.0 168450.0 ; - RECT 81600.0 169650.0 80400.0 168450.0 ; - RECT 81600.0 169650.0 80400.0 168450.0 ; - RECT 84000.0 169650.0 82800.0 168450.0 ; - RECT 79200.0 159450.0 78000.0 158250.0 ; - RECT 79200.0 169350.0 78000.0 168150.0 ; - RECT 83400.0 165150.0 82200.0 163950.0 ; - RECT 83400.0 165150.0 82200.0 163950.0 ; - RECT 80850.0 165000.0 79950.0 164100.0 ; - RECT 85800.0 157350.0 76200.0 156450.0 ; - RECT 85800.0 171450.0 76200.0 170550.0 ; - RECT 79200.0 183150.0 78000.0 185100.0 ; - RECT 79200.0 171000.0 78000.0 173250.0 ; - RECT 84000.0 172350.0 82800.0 170550.0 ; - RECT 84000.0 181950.0 82800.0 185550.0 ; - RECT 81300.0 173550.0 80400.0 181950.0 ; - RECT 84000.0 181950.0 82800.0 183150.0 ; - RECT 81600.0 181950.0 80400.0 183150.0 ; - RECT 81600.0 181950.0 80400.0 183150.0 ; - RECT 84000.0 181950.0 82800.0 183150.0 ; - RECT 84000.0 172350.0 82800.0 173550.0 ; - RECT 81600.0 172350.0 80400.0 173550.0 ; - RECT 81600.0 172350.0 80400.0 173550.0 ; - RECT 84000.0 172350.0 82800.0 173550.0 ; - RECT 79200.0 182550.0 78000.0 183750.0 ; - RECT 79200.0 172650.0 78000.0 173850.0 ; - RECT 83400.0 176850.0 82200.0 178050.0 ; - RECT 83400.0 176850.0 82200.0 178050.0 ; - RECT 80850.0 177000.0 79950.0 177900.0 ; - RECT 85800.0 184650.0 76200.0 185550.0 ; - RECT 85800.0 170550.0 76200.0 171450.0 ; - RECT 79200.0 187050.0 78000.0 185100.0 ; - RECT 79200.0 199200.0 78000.0 196950.0 ; - RECT 84000.0 197850.0 82800.0 199650.0 ; - RECT 84000.0 188250.0 82800.0 184650.0 ; - RECT 81300.0 196650.0 80400.0 188250.0 ; - RECT 84000.0 188250.0 82800.0 187050.0 ; - RECT 81600.0 188250.0 80400.0 187050.0 ; - RECT 81600.0 188250.0 80400.0 187050.0 ; - RECT 84000.0 188250.0 82800.0 187050.0 ; - RECT 84000.0 197850.0 82800.0 196650.0 ; - RECT 81600.0 197850.0 80400.0 196650.0 ; - RECT 81600.0 197850.0 80400.0 196650.0 ; - RECT 84000.0 197850.0 82800.0 196650.0 ; - RECT 79200.0 187650.0 78000.0 186450.0 ; - RECT 79200.0 197550.0 78000.0 196350.0 ; - RECT 83400.0 193350.0 82200.0 192150.0 ; - RECT 83400.0 193350.0 82200.0 192150.0 ; - RECT 80850.0 193200.0 79950.0 192300.0 ; - RECT 85800.0 185550.0 76200.0 184650.0 ; - RECT 85800.0 199650.0 76200.0 198750.0 ; - RECT 98400.0 144750.0 97200.0 142350.0 ; - RECT 98400.0 153750.0 97200.0 157350.0 ; - RECT 93600.0 153750.0 92400.0 157350.0 ; - RECT 91200.0 154950.0 90000.0 156900.0 ; - RECT 91200.0 142800.0 90000.0 145050.0 ; - RECT 98400.0 153750.0 97200.0 154950.0 ; - RECT 96000.0 153750.0 94800.0 154950.0 ; - RECT 96000.0 153750.0 94800.0 154950.0 ; - RECT 98400.0 153750.0 97200.0 154950.0 ; - RECT 96000.0 153750.0 94800.0 154950.0 ; - RECT 93600.0 153750.0 92400.0 154950.0 ; - RECT 93600.0 153750.0 92400.0 154950.0 ; - RECT 96000.0 153750.0 94800.0 154950.0 ; - RECT 98400.0 144750.0 97200.0 145950.0 ; - RECT 96000.0 144750.0 94800.0 145950.0 ; - RECT 96000.0 144750.0 94800.0 145950.0 ; - RECT 98400.0 144750.0 97200.0 145950.0 ; - RECT 96000.0 144750.0 94800.0 145950.0 ; - RECT 93600.0 144750.0 92400.0 145950.0 ; - RECT 93600.0 144750.0 92400.0 145950.0 ; - RECT 96000.0 144750.0 94800.0 145950.0 ; - RECT 91200.0 154350.0 90000.0 155550.0 ; - RECT 91200.0 144450.0 90000.0 145650.0 ; - RECT 93600.0 147300.0 94800.0 148500.0 ; - RECT 96600.0 150000.0 97800.0 151200.0 ; - RECT 96000.0 153750.0 94800.0 154950.0 ; - RECT 93600.0 144750.0 92400.0 145950.0 ; - RECT 92400.0 150000.0 93600.0 151200.0 ; - RECT 97800.0 150000.0 96600.0 151200.0 ; - RECT 94800.0 147300.0 93600.0 148500.0 ; - RECT 93600.0 150000.0 92400.0 151200.0 ; - RECT 100200.0 156450.0 85800.0 157350.0 ; - RECT 100200.0 142350.0 85800.0 143250.0 ; - RECT 98400.0 169050.0 97200.0 171450.0 ; - RECT 98400.0 160050.0 97200.0 156450.0 ; - RECT 93600.0 160050.0 92400.0 156450.0 ; - RECT 91200.0 158850.0 90000.0 156900.0 ; - RECT 91200.0 171000.0 90000.0 168750.0 ; - RECT 98400.0 160050.0 97200.0 158850.0 ; - RECT 96000.0 160050.0 94800.0 158850.0 ; - RECT 96000.0 160050.0 94800.0 158850.0 ; - RECT 98400.0 160050.0 97200.0 158850.0 ; - RECT 96000.0 160050.0 94800.0 158850.0 ; - RECT 93600.0 160050.0 92400.0 158850.0 ; - RECT 93600.0 160050.0 92400.0 158850.0 ; - RECT 96000.0 160050.0 94800.0 158850.0 ; - RECT 98400.0 169050.0 97200.0 167850.0 ; - RECT 96000.0 169050.0 94800.0 167850.0 ; - RECT 96000.0 169050.0 94800.0 167850.0 ; - RECT 98400.0 169050.0 97200.0 167850.0 ; - RECT 96000.0 169050.0 94800.0 167850.0 ; - RECT 93600.0 169050.0 92400.0 167850.0 ; - RECT 93600.0 169050.0 92400.0 167850.0 ; - RECT 96000.0 169050.0 94800.0 167850.0 ; - RECT 91200.0 159450.0 90000.0 158250.0 ; - RECT 91200.0 169350.0 90000.0 168150.0 ; - RECT 93600.0 166500.0 94800.0 165300.0 ; - RECT 96600.0 163800.0 97800.0 162600.0 ; - RECT 96000.0 160050.0 94800.0 158850.0 ; - RECT 93600.0 169050.0 92400.0 167850.0 ; - RECT 92400.0 163800.0 93600.0 162600.0 ; - RECT 97800.0 163800.0 96600.0 162600.0 ; - RECT 94800.0 166500.0 93600.0 165300.0 ; - RECT 93600.0 163800.0 92400.0 162600.0 ; - RECT 100200.0 157350.0 85800.0 156450.0 ; - RECT 100200.0 171450.0 85800.0 170550.0 ; - RECT 98400.0 172950.0 97200.0 170550.0 ; - RECT 98400.0 181950.0 97200.0 185550.0 ; - RECT 93600.0 181950.0 92400.0 185550.0 ; - RECT 91200.0 183150.0 90000.0 185100.0 ; - RECT 91200.0 171000.0 90000.0 173250.0 ; - RECT 98400.0 181950.0 97200.0 183150.0 ; - RECT 96000.0 181950.0 94800.0 183150.0 ; - RECT 96000.0 181950.0 94800.0 183150.0 ; - RECT 98400.0 181950.0 97200.0 183150.0 ; - RECT 96000.0 181950.0 94800.0 183150.0 ; - RECT 93600.0 181950.0 92400.0 183150.0 ; - RECT 93600.0 181950.0 92400.0 183150.0 ; - RECT 96000.0 181950.0 94800.0 183150.0 ; - RECT 98400.0 172950.0 97200.0 174150.0 ; - RECT 96000.0 172950.0 94800.0 174150.0 ; - RECT 96000.0 172950.0 94800.0 174150.0 ; - RECT 98400.0 172950.0 97200.0 174150.0 ; - RECT 96000.0 172950.0 94800.0 174150.0 ; - RECT 93600.0 172950.0 92400.0 174150.0 ; - RECT 93600.0 172950.0 92400.0 174150.0 ; - RECT 96000.0 172950.0 94800.0 174150.0 ; - RECT 91200.0 182550.0 90000.0 183750.0 ; - RECT 91200.0 172650.0 90000.0 173850.0 ; - RECT 93600.0 175500.0 94800.0 176700.0 ; - RECT 96600.0 178200.0 97800.0 179400.0 ; - RECT 96000.0 181950.0 94800.0 183150.0 ; - RECT 93600.0 172950.0 92400.0 174150.0 ; - RECT 92400.0 178200.0 93600.0 179400.0 ; - RECT 97800.0 178200.0 96600.0 179400.0 ; - RECT 94800.0 175500.0 93600.0 176700.0 ; - RECT 93600.0 178200.0 92400.0 179400.0 ; - RECT 100200.0 184650.0 85800.0 185550.0 ; - RECT 100200.0 170550.0 85800.0 171450.0 ; - RECT 98400.0 197250.0 97200.0 199650.0 ; - RECT 98400.0 188250.0 97200.0 184650.0 ; - RECT 93600.0 188250.0 92400.0 184650.0 ; - RECT 91200.0 187050.0 90000.0 185100.0 ; - RECT 91200.0 199200.0 90000.0 196950.0 ; - RECT 98400.0 188250.0 97200.0 187050.0 ; - RECT 96000.0 188250.0 94800.0 187050.0 ; - RECT 96000.0 188250.0 94800.0 187050.0 ; - RECT 98400.0 188250.0 97200.0 187050.0 ; - RECT 96000.0 188250.0 94800.0 187050.0 ; - RECT 93600.0 188250.0 92400.0 187050.0 ; - RECT 93600.0 188250.0 92400.0 187050.0 ; - RECT 96000.0 188250.0 94800.0 187050.0 ; - RECT 98400.0 197250.0 97200.0 196050.0 ; - RECT 96000.0 197250.0 94800.0 196050.0 ; - RECT 96000.0 197250.0 94800.0 196050.0 ; - RECT 98400.0 197250.0 97200.0 196050.0 ; - RECT 96000.0 197250.0 94800.0 196050.0 ; - RECT 93600.0 197250.0 92400.0 196050.0 ; - RECT 93600.0 197250.0 92400.0 196050.0 ; - RECT 96000.0 197250.0 94800.0 196050.0 ; - RECT 91200.0 187650.0 90000.0 186450.0 ; - RECT 91200.0 197550.0 90000.0 196350.0 ; - RECT 93600.0 194700.0 94800.0 193500.0 ; - RECT 96600.0 192000.0 97800.0 190800.0 ; - RECT 96000.0 188250.0 94800.0 187050.0 ; - RECT 93600.0 197250.0 92400.0 196050.0 ; - RECT 92400.0 192000.0 93600.0 190800.0 ; - RECT 97800.0 192000.0 96600.0 190800.0 ; - RECT 94800.0 194700.0 93600.0 193500.0 ; - RECT 93600.0 192000.0 92400.0 190800.0 ; - RECT 100200.0 185550.0 85800.0 184650.0 ; - RECT 100200.0 199650.0 85800.0 198750.0 ; - RECT 111150.0 153600.0 112350.0 154800.0 ; - RECT 129750.0 148650.0 130950.0 149850.0 ; - RECT 108150.0 167700.0 109350.0 168900.0 ; - RECT 126750.0 163950.0 127950.0 165150.0 ; - RECT 129750.0 172500.0 130950.0 173700.0 ; - RECT 105150.0 172500.0 106350.0 173700.0 ; - RECT 126750.0 186600.0 127950.0 187800.0 ; - RECT 102150.0 186600.0 103350.0 187800.0 ; - RECT 111150.0 150000.0 112350.0 151200.0 ; - RECT 108150.0 147300.0 109350.0 148500.0 ; - RECT 105150.0 162600.0 106350.0 163800.0 ; - RECT 108150.0 165300.0 109350.0 166500.0 ; - RECT 111150.0 178200.0 112350.0 179400.0 ; - RECT 102150.0 175500.0 103350.0 176700.0 ; - RECT 105150.0 190800.0 106350.0 192000.0 ; - RECT 102150.0 193500.0 103350.0 194700.0 ; - RECT 79950.0 148800.0 76200.0 149700.0 ; - RECT 79950.0 164100.0 76200.0 165000.0 ; - RECT 79950.0 177000.0 76200.0 177900.0 ; - RECT 79950.0 192300.0 76200.0 193200.0 ; - RECT 130800.0 156450.0 76200.0 157350.0 ; - RECT 130800.0 184650.0 76200.0 185550.0 ; - RECT 130800.0 142350.0 76200.0 143250.0 ; - RECT 130800.0 170550.0 76200.0 171450.0 ; - RECT 130800.0 198750.0 76200.0 199650.0 ; - RECT 78000.0 201150.0 79200.0 198750.0 ; - RECT 78000.0 210150.0 79200.0 213750.0 ; - RECT 82800.0 210150.0 84000.0 213750.0 ; - RECT 85200.0 211350.0 86400.0 213300.0 ; - RECT 85200.0 199200.0 86400.0 201450.0 ; - RECT 78000.0 210150.0 79200.0 211350.0 ; - RECT 80400.0 210150.0 81600.0 211350.0 ; - RECT 80400.0 210150.0 81600.0 211350.0 ; - RECT 78000.0 210150.0 79200.0 211350.0 ; - RECT 80400.0 210150.0 81600.0 211350.0 ; - RECT 82800.0 210150.0 84000.0 211350.0 ; - RECT 82800.0 210150.0 84000.0 211350.0 ; - RECT 80400.0 210150.0 81600.0 211350.0 ; - RECT 78000.0 201150.0 79200.0 202350.0 ; - RECT 80400.0 201150.0 81600.0 202350.0 ; - RECT 80400.0 201150.0 81600.0 202350.0 ; - RECT 78000.0 201150.0 79200.0 202350.0 ; - RECT 80400.0 201150.0 81600.0 202350.0 ; - RECT 82800.0 201150.0 84000.0 202350.0 ; - RECT 82800.0 201150.0 84000.0 202350.0 ; - RECT 80400.0 201150.0 81600.0 202350.0 ; - RECT 85200.0 210750.0 86400.0 211950.0 ; - RECT 85200.0 200850.0 86400.0 202050.0 ; - RECT 82800.0 203700.0 81600.0 204900.0 ; - RECT 79800.0 206400.0 78600.0 207600.0 ; - RECT 80400.0 210150.0 81600.0 211350.0 ; - RECT 82800.0 201150.0 84000.0 202350.0 ; - RECT 84000.0 206400.0 82800.0 207600.0 ; - RECT 78600.0 206400.0 79800.0 207600.0 ; - RECT 81600.0 203700.0 82800.0 204900.0 ; - RECT 82800.0 206400.0 84000.0 207600.0 ; - RECT 76200.0 212850.0 90600.0 213750.0 ; - RECT 76200.0 198750.0 90600.0 199650.0 ; - RECT 78000.0 225450.0 79200.0 227850.0 ; - RECT 78000.0 216450.0 79200.0 212850.0 ; - RECT 82800.0 216450.0 84000.0 212850.0 ; - RECT 85200.0 215250.0 86400.0 213300.0 ; - RECT 85200.0 227400.0 86400.0 225150.0 ; - RECT 78000.0 216450.0 79200.0 215250.0 ; - RECT 80400.0 216450.0 81600.0 215250.0 ; - RECT 80400.0 216450.0 81600.0 215250.0 ; - RECT 78000.0 216450.0 79200.0 215250.0 ; - RECT 80400.0 216450.0 81600.0 215250.0 ; - RECT 82800.0 216450.0 84000.0 215250.0 ; - RECT 82800.0 216450.0 84000.0 215250.0 ; - RECT 80400.0 216450.0 81600.0 215250.0 ; - RECT 78000.0 225450.0 79200.0 224250.0 ; - RECT 80400.0 225450.0 81600.0 224250.0 ; - RECT 80400.0 225450.0 81600.0 224250.0 ; - RECT 78000.0 225450.0 79200.0 224250.0 ; - RECT 80400.0 225450.0 81600.0 224250.0 ; - RECT 82800.0 225450.0 84000.0 224250.0 ; - RECT 82800.0 225450.0 84000.0 224250.0 ; - RECT 80400.0 225450.0 81600.0 224250.0 ; - RECT 85200.0 215850.0 86400.0 214650.0 ; - RECT 85200.0 225750.0 86400.0 224550.0 ; - RECT 82800.0 222900.0 81600.0 221700.0 ; - RECT 79800.0 220200.0 78600.0 219000.0 ; - RECT 80400.0 216450.0 81600.0 215250.0 ; - RECT 82800.0 225450.0 84000.0 224250.0 ; - RECT 84000.0 220200.0 82800.0 219000.0 ; - RECT 78600.0 220200.0 79800.0 219000.0 ; - RECT 81600.0 222900.0 82800.0 221700.0 ; - RECT 82800.0 220200.0 84000.0 219000.0 ; - RECT 76200.0 213750.0 90600.0 212850.0 ; - RECT 76200.0 227850.0 90600.0 226950.0 ; - RECT 78000.0 229350.0 79200.0 226950.0 ; - RECT 78000.0 238350.0 79200.0 241950.0 ; - RECT 82800.0 238350.0 84000.0 241950.0 ; - RECT 85200.0 239550.0 86400.0 241500.0 ; - RECT 85200.0 227400.0 86400.0 229650.0 ; - RECT 78000.0 238350.0 79200.0 239550.0 ; - RECT 80400.0 238350.0 81600.0 239550.0 ; - RECT 80400.0 238350.0 81600.0 239550.0 ; - RECT 78000.0 238350.0 79200.0 239550.0 ; - RECT 80400.0 238350.0 81600.0 239550.0 ; - RECT 82800.0 238350.0 84000.0 239550.0 ; - RECT 82800.0 238350.0 84000.0 239550.0 ; - RECT 80400.0 238350.0 81600.0 239550.0 ; - RECT 78000.0 229350.0 79200.0 230550.0 ; - RECT 80400.0 229350.0 81600.0 230550.0 ; - RECT 80400.0 229350.0 81600.0 230550.0 ; - RECT 78000.0 229350.0 79200.0 230550.0 ; - RECT 80400.0 229350.0 81600.0 230550.0 ; - RECT 82800.0 229350.0 84000.0 230550.0 ; - RECT 82800.0 229350.0 84000.0 230550.0 ; - RECT 80400.0 229350.0 81600.0 230550.0 ; - RECT 85200.0 238950.0 86400.0 240150.0 ; - RECT 85200.0 229050.0 86400.0 230250.0 ; - RECT 82800.0 231900.0 81600.0 233100.0 ; - RECT 79800.0 234600.0 78600.0 235800.0 ; - RECT 80400.0 238350.0 81600.0 239550.0 ; - RECT 82800.0 229350.0 84000.0 230550.0 ; - RECT 84000.0 234600.0 82800.0 235800.0 ; - RECT 78600.0 234600.0 79800.0 235800.0 ; - RECT 81600.0 231900.0 82800.0 233100.0 ; - RECT 82800.0 234600.0 84000.0 235800.0 ; - RECT 76200.0 241050.0 90600.0 241950.0 ; - RECT 76200.0 226950.0 90600.0 227850.0 ; - RECT 78000.0 253650.0 79200.0 256050.0 ; - RECT 78000.0 244650.0 79200.0 241050.0 ; - RECT 82800.0 244650.0 84000.0 241050.0 ; - RECT 85200.0 243450.0 86400.0 241500.0 ; - RECT 85200.0 255600.0 86400.0 253350.0 ; - RECT 78000.0 244650.0 79200.0 243450.0 ; - RECT 80400.0 244650.0 81600.0 243450.0 ; - RECT 80400.0 244650.0 81600.0 243450.0 ; - RECT 78000.0 244650.0 79200.0 243450.0 ; - RECT 80400.0 244650.0 81600.0 243450.0 ; - RECT 82800.0 244650.0 84000.0 243450.0 ; - RECT 82800.0 244650.0 84000.0 243450.0 ; - RECT 80400.0 244650.0 81600.0 243450.0 ; - RECT 78000.0 253650.0 79200.0 252450.0 ; - RECT 80400.0 253650.0 81600.0 252450.0 ; - RECT 80400.0 253650.0 81600.0 252450.0 ; - RECT 78000.0 253650.0 79200.0 252450.0 ; - RECT 80400.0 253650.0 81600.0 252450.0 ; - RECT 82800.0 253650.0 84000.0 252450.0 ; - RECT 82800.0 253650.0 84000.0 252450.0 ; - RECT 80400.0 253650.0 81600.0 252450.0 ; - RECT 85200.0 244050.0 86400.0 242850.0 ; - RECT 85200.0 253950.0 86400.0 252750.0 ; - RECT 82800.0 251100.0 81600.0 249900.0 ; - RECT 79800.0 248400.0 78600.0 247200.0 ; - RECT 80400.0 244650.0 81600.0 243450.0 ; - RECT 82800.0 253650.0 84000.0 252450.0 ; - RECT 84000.0 248400.0 82800.0 247200.0 ; - RECT 78600.0 248400.0 79800.0 247200.0 ; - RECT 81600.0 251100.0 82800.0 249900.0 ; - RECT 82800.0 248400.0 84000.0 247200.0 ; - RECT 76200.0 241950.0 90600.0 241050.0 ; - RECT 76200.0 256050.0 90600.0 255150.0 ; - RECT 78000.0 257550.0 79200.0 255150.0 ; - RECT 78000.0 266550.0 79200.0 270150.0 ; - RECT 82800.0 266550.0 84000.0 270150.0 ; - RECT 85200.0 267750.0 86400.0 269700.0 ; - RECT 85200.0 255600.0 86400.0 257850.0 ; - RECT 78000.0 266550.0 79200.0 267750.0 ; - RECT 80400.0 266550.0 81600.0 267750.0 ; - RECT 80400.0 266550.0 81600.0 267750.0 ; - RECT 78000.0 266550.0 79200.0 267750.0 ; - RECT 80400.0 266550.0 81600.0 267750.0 ; - RECT 82800.0 266550.0 84000.0 267750.0 ; - RECT 82800.0 266550.0 84000.0 267750.0 ; - RECT 80400.0 266550.0 81600.0 267750.0 ; - RECT 78000.0 257550.0 79200.0 258750.0 ; - RECT 80400.0 257550.0 81600.0 258750.0 ; - RECT 80400.0 257550.0 81600.0 258750.0 ; - RECT 78000.0 257550.0 79200.0 258750.0 ; - RECT 80400.0 257550.0 81600.0 258750.0 ; - RECT 82800.0 257550.0 84000.0 258750.0 ; - RECT 82800.0 257550.0 84000.0 258750.0 ; - RECT 80400.0 257550.0 81600.0 258750.0 ; - RECT 85200.0 267150.0 86400.0 268350.0 ; - RECT 85200.0 257250.0 86400.0 258450.0 ; - RECT 82800.0 260100.0 81600.0 261300.0 ; - RECT 79800.0 262800.0 78600.0 264000.0 ; - RECT 80400.0 266550.0 81600.0 267750.0 ; - RECT 82800.0 257550.0 84000.0 258750.0 ; - RECT 84000.0 262800.0 82800.0 264000.0 ; - RECT 78600.0 262800.0 79800.0 264000.0 ; - RECT 81600.0 260100.0 82800.0 261300.0 ; - RECT 82800.0 262800.0 84000.0 264000.0 ; - RECT 76200.0 269250.0 90600.0 270150.0 ; - RECT 76200.0 255150.0 90600.0 256050.0 ; - RECT 78000.0 281850.0 79200.0 284250.0 ; - RECT 78000.0 272850.0 79200.0 269250.0 ; - RECT 82800.0 272850.0 84000.0 269250.0 ; - RECT 85200.0 271650.0 86400.0 269700.0 ; - RECT 85200.0 283800.0 86400.0 281550.0 ; - RECT 78000.0 272850.0 79200.0 271650.0 ; - RECT 80400.0 272850.0 81600.0 271650.0 ; - RECT 80400.0 272850.0 81600.0 271650.0 ; - RECT 78000.0 272850.0 79200.0 271650.0 ; - RECT 80400.0 272850.0 81600.0 271650.0 ; - RECT 82800.0 272850.0 84000.0 271650.0 ; - RECT 82800.0 272850.0 84000.0 271650.0 ; - RECT 80400.0 272850.0 81600.0 271650.0 ; - RECT 78000.0 281850.0 79200.0 280650.0 ; - RECT 80400.0 281850.0 81600.0 280650.0 ; - RECT 80400.0 281850.0 81600.0 280650.0 ; - RECT 78000.0 281850.0 79200.0 280650.0 ; - RECT 80400.0 281850.0 81600.0 280650.0 ; - RECT 82800.0 281850.0 84000.0 280650.0 ; - RECT 82800.0 281850.0 84000.0 280650.0 ; - RECT 80400.0 281850.0 81600.0 280650.0 ; - RECT 85200.0 272250.0 86400.0 271050.0 ; - RECT 85200.0 282150.0 86400.0 280950.0 ; - RECT 82800.0 279300.0 81600.0 278100.0 ; - RECT 79800.0 276600.0 78600.0 275400.0 ; - RECT 80400.0 272850.0 81600.0 271650.0 ; - RECT 82800.0 281850.0 84000.0 280650.0 ; - RECT 84000.0 276600.0 82800.0 275400.0 ; - RECT 78600.0 276600.0 79800.0 275400.0 ; - RECT 81600.0 279300.0 82800.0 278100.0 ; - RECT 82800.0 276600.0 84000.0 275400.0 ; - RECT 76200.0 270150.0 90600.0 269250.0 ; - RECT 76200.0 284250.0 90600.0 283350.0 ; - RECT 78000.0 285750.0 79200.0 283350.0 ; - RECT 78000.0 294750.0 79200.0 298350.0 ; - RECT 82800.0 294750.0 84000.0 298350.0 ; - RECT 85200.0 295950.0 86400.0 297900.0 ; - RECT 85200.0 283800.0 86400.0 286050.0 ; - RECT 78000.0 294750.0 79200.0 295950.0 ; - RECT 80400.0 294750.0 81600.0 295950.0 ; - RECT 80400.0 294750.0 81600.0 295950.0 ; - RECT 78000.0 294750.0 79200.0 295950.0 ; - RECT 80400.0 294750.0 81600.0 295950.0 ; - RECT 82800.0 294750.0 84000.0 295950.0 ; - RECT 82800.0 294750.0 84000.0 295950.0 ; - RECT 80400.0 294750.0 81600.0 295950.0 ; - RECT 78000.0 285750.0 79200.0 286950.0 ; - RECT 80400.0 285750.0 81600.0 286950.0 ; - RECT 80400.0 285750.0 81600.0 286950.0 ; - RECT 78000.0 285750.0 79200.0 286950.0 ; - RECT 80400.0 285750.0 81600.0 286950.0 ; - RECT 82800.0 285750.0 84000.0 286950.0 ; - RECT 82800.0 285750.0 84000.0 286950.0 ; - RECT 80400.0 285750.0 81600.0 286950.0 ; - RECT 85200.0 295350.0 86400.0 296550.0 ; - RECT 85200.0 285450.0 86400.0 286650.0 ; - RECT 82800.0 288300.0 81600.0 289500.0 ; - RECT 79800.0 291000.0 78600.0 292200.0 ; - RECT 80400.0 294750.0 81600.0 295950.0 ; - RECT 82800.0 285750.0 84000.0 286950.0 ; - RECT 84000.0 291000.0 82800.0 292200.0 ; - RECT 78600.0 291000.0 79800.0 292200.0 ; - RECT 81600.0 288300.0 82800.0 289500.0 ; - RECT 82800.0 291000.0 84000.0 292200.0 ; - RECT 76200.0 297450.0 90600.0 298350.0 ; - RECT 76200.0 283350.0 90600.0 284250.0 ; - RECT 78000.0 310050.0 79200.0 312450.0 ; - RECT 78000.0 301050.0 79200.0 297450.0 ; - RECT 82800.0 301050.0 84000.0 297450.0 ; - RECT 85200.0 299850.0 86400.0 297900.0 ; - RECT 85200.0 312000.0 86400.0 309750.0 ; - RECT 78000.0 301050.0 79200.0 299850.0 ; - RECT 80400.0 301050.0 81600.0 299850.0 ; - RECT 80400.0 301050.0 81600.0 299850.0 ; - RECT 78000.0 301050.0 79200.0 299850.0 ; - RECT 80400.0 301050.0 81600.0 299850.0 ; - RECT 82800.0 301050.0 84000.0 299850.0 ; - RECT 82800.0 301050.0 84000.0 299850.0 ; - RECT 80400.0 301050.0 81600.0 299850.0 ; - RECT 78000.0 310050.0 79200.0 308850.0 ; - RECT 80400.0 310050.0 81600.0 308850.0 ; - RECT 80400.0 310050.0 81600.0 308850.0 ; - RECT 78000.0 310050.0 79200.0 308850.0 ; - RECT 80400.0 310050.0 81600.0 308850.0 ; - RECT 82800.0 310050.0 84000.0 308850.0 ; - RECT 82800.0 310050.0 84000.0 308850.0 ; - RECT 80400.0 310050.0 81600.0 308850.0 ; - RECT 85200.0 300450.0 86400.0 299250.0 ; - RECT 85200.0 310350.0 86400.0 309150.0 ; - RECT 82800.0 307500.0 81600.0 306300.0 ; - RECT 79800.0 304800.0 78600.0 303600.0 ; - RECT 80400.0 301050.0 81600.0 299850.0 ; - RECT 82800.0 310050.0 84000.0 308850.0 ; - RECT 84000.0 304800.0 82800.0 303600.0 ; - RECT 78600.0 304800.0 79800.0 303600.0 ; - RECT 81600.0 307500.0 82800.0 306300.0 ; - RECT 82800.0 304800.0 84000.0 303600.0 ; - RECT 76200.0 298350.0 90600.0 297450.0 ; - RECT 76200.0 312450.0 90600.0 311550.0 ; - RECT 78000.0 313950.0 79200.0 311550.0 ; - RECT 78000.0 322950.0 79200.0 326550.0 ; - RECT 82800.0 322950.0 84000.0 326550.0 ; - RECT 85200.0 324150.0 86400.0 326100.0 ; - RECT 85200.0 312000.0 86400.0 314250.0 ; - RECT 78000.0 322950.0 79200.0 324150.0 ; - RECT 80400.0 322950.0 81600.0 324150.0 ; - RECT 80400.0 322950.0 81600.0 324150.0 ; - RECT 78000.0 322950.0 79200.0 324150.0 ; - RECT 80400.0 322950.0 81600.0 324150.0 ; - RECT 82800.0 322950.0 84000.0 324150.0 ; - RECT 82800.0 322950.0 84000.0 324150.0 ; - RECT 80400.0 322950.0 81600.0 324150.0 ; - RECT 78000.0 313950.0 79200.0 315150.0 ; - RECT 80400.0 313950.0 81600.0 315150.0 ; - RECT 80400.0 313950.0 81600.0 315150.0 ; - RECT 78000.0 313950.0 79200.0 315150.0 ; - RECT 80400.0 313950.0 81600.0 315150.0 ; - RECT 82800.0 313950.0 84000.0 315150.0 ; - RECT 82800.0 313950.0 84000.0 315150.0 ; - RECT 80400.0 313950.0 81600.0 315150.0 ; - RECT 85200.0 323550.0 86400.0 324750.0 ; - RECT 85200.0 313650.0 86400.0 314850.0 ; - RECT 82800.0 316500.0 81600.0 317700.0 ; - RECT 79800.0 319200.0 78600.0 320400.0 ; - RECT 80400.0 322950.0 81600.0 324150.0 ; - RECT 82800.0 313950.0 84000.0 315150.0 ; - RECT 84000.0 319200.0 82800.0 320400.0 ; - RECT 78600.0 319200.0 79800.0 320400.0 ; - RECT 81600.0 316500.0 82800.0 317700.0 ; - RECT 82800.0 319200.0 84000.0 320400.0 ; - RECT 76200.0 325650.0 90600.0 326550.0 ; - RECT 76200.0 311550.0 90600.0 312450.0 ; - RECT 78000.0 338250.0 79200.0 340650.0 ; - RECT 78000.0 329250.0 79200.0 325650.0 ; - RECT 82800.0 329250.0 84000.0 325650.0 ; - RECT 85200.0 328050.0 86400.0 326100.0 ; - RECT 85200.0 340200.0 86400.0 337950.0 ; - RECT 78000.0 329250.0 79200.0 328050.0 ; - RECT 80400.0 329250.0 81600.0 328050.0 ; - RECT 80400.0 329250.0 81600.0 328050.0 ; - RECT 78000.0 329250.0 79200.0 328050.0 ; - RECT 80400.0 329250.0 81600.0 328050.0 ; - RECT 82800.0 329250.0 84000.0 328050.0 ; - RECT 82800.0 329250.0 84000.0 328050.0 ; - RECT 80400.0 329250.0 81600.0 328050.0 ; - RECT 78000.0 338250.0 79200.0 337050.0 ; - RECT 80400.0 338250.0 81600.0 337050.0 ; - RECT 80400.0 338250.0 81600.0 337050.0 ; - RECT 78000.0 338250.0 79200.0 337050.0 ; - RECT 80400.0 338250.0 81600.0 337050.0 ; - RECT 82800.0 338250.0 84000.0 337050.0 ; - RECT 82800.0 338250.0 84000.0 337050.0 ; - RECT 80400.0 338250.0 81600.0 337050.0 ; - RECT 85200.0 328650.0 86400.0 327450.0 ; - RECT 85200.0 338550.0 86400.0 337350.0 ; - RECT 82800.0 335700.0 81600.0 334500.0 ; - RECT 79800.0 333000.0 78600.0 331800.0 ; - RECT 80400.0 329250.0 81600.0 328050.0 ; - RECT 82800.0 338250.0 84000.0 337050.0 ; - RECT 84000.0 333000.0 82800.0 331800.0 ; - RECT 78600.0 333000.0 79800.0 331800.0 ; - RECT 81600.0 335700.0 82800.0 334500.0 ; - RECT 82800.0 333000.0 84000.0 331800.0 ; - RECT 76200.0 326550.0 90600.0 325650.0 ; - RECT 76200.0 340650.0 90600.0 339750.0 ; - RECT 78000.0 342150.0 79200.0 339750.0 ; - RECT 78000.0 351150.0 79200.0 354750.0 ; - RECT 82800.0 351150.0 84000.0 354750.0 ; - RECT 85200.0 352350.0 86400.0 354300.0 ; - RECT 85200.0 340200.0 86400.0 342450.0 ; - RECT 78000.0 351150.0 79200.0 352350.0 ; - RECT 80400.0 351150.0 81600.0 352350.0 ; - RECT 80400.0 351150.0 81600.0 352350.0 ; - RECT 78000.0 351150.0 79200.0 352350.0 ; - RECT 80400.0 351150.0 81600.0 352350.0 ; - RECT 82800.0 351150.0 84000.0 352350.0 ; - RECT 82800.0 351150.0 84000.0 352350.0 ; - RECT 80400.0 351150.0 81600.0 352350.0 ; - RECT 78000.0 342150.0 79200.0 343350.0 ; - RECT 80400.0 342150.0 81600.0 343350.0 ; - RECT 80400.0 342150.0 81600.0 343350.0 ; - RECT 78000.0 342150.0 79200.0 343350.0 ; - RECT 80400.0 342150.0 81600.0 343350.0 ; - RECT 82800.0 342150.0 84000.0 343350.0 ; - RECT 82800.0 342150.0 84000.0 343350.0 ; - RECT 80400.0 342150.0 81600.0 343350.0 ; - RECT 85200.0 351750.0 86400.0 352950.0 ; - RECT 85200.0 341850.0 86400.0 343050.0 ; - RECT 82800.0 344700.0 81600.0 345900.0 ; - RECT 79800.0 347400.0 78600.0 348600.0 ; - RECT 80400.0 351150.0 81600.0 352350.0 ; - RECT 82800.0 342150.0 84000.0 343350.0 ; - RECT 84000.0 347400.0 82800.0 348600.0 ; - RECT 78600.0 347400.0 79800.0 348600.0 ; - RECT 81600.0 344700.0 82800.0 345900.0 ; - RECT 82800.0 347400.0 84000.0 348600.0 ; - RECT 76200.0 353850.0 90600.0 354750.0 ; - RECT 76200.0 339750.0 90600.0 340650.0 ; - RECT 78000.0 366450.0 79200.0 368850.0 ; - RECT 78000.0 357450.0 79200.0 353850.0 ; - RECT 82800.0 357450.0 84000.0 353850.0 ; - RECT 85200.0 356250.0 86400.0 354300.0 ; - RECT 85200.0 368400.0 86400.0 366150.0 ; - RECT 78000.0 357450.0 79200.0 356250.0 ; - RECT 80400.0 357450.0 81600.0 356250.0 ; - RECT 80400.0 357450.0 81600.0 356250.0 ; - RECT 78000.0 357450.0 79200.0 356250.0 ; - RECT 80400.0 357450.0 81600.0 356250.0 ; - RECT 82800.0 357450.0 84000.0 356250.0 ; - RECT 82800.0 357450.0 84000.0 356250.0 ; - RECT 80400.0 357450.0 81600.0 356250.0 ; - RECT 78000.0 366450.0 79200.0 365250.0 ; - RECT 80400.0 366450.0 81600.0 365250.0 ; - RECT 80400.0 366450.0 81600.0 365250.0 ; - RECT 78000.0 366450.0 79200.0 365250.0 ; - RECT 80400.0 366450.0 81600.0 365250.0 ; - RECT 82800.0 366450.0 84000.0 365250.0 ; - RECT 82800.0 366450.0 84000.0 365250.0 ; - RECT 80400.0 366450.0 81600.0 365250.0 ; - RECT 85200.0 356850.0 86400.0 355650.0 ; - RECT 85200.0 366750.0 86400.0 365550.0 ; - RECT 82800.0 363900.0 81600.0 362700.0 ; - RECT 79800.0 361200.0 78600.0 360000.0 ; - RECT 80400.0 357450.0 81600.0 356250.0 ; - RECT 82800.0 366450.0 84000.0 365250.0 ; - RECT 84000.0 361200.0 82800.0 360000.0 ; - RECT 78600.0 361200.0 79800.0 360000.0 ; - RECT 81600.0 363900.0 82800.0 362700.0 ; - RECT 82800.0 361200.0 84000.0 360000.0 ; - RECT 76200.0 354750.0 90600.0 353850.0 ; - RECT 76200.0 368850.0 90600.0 367950.0 ; - RECT 78000.0 370350.0 79200.0 367950.0 ; - RECT 78000.0 379350.0 79200.0 382950.0 ; - RECT 82800.0 379350.0 84000.0 382950.0 ; - RECT 85200.0 380550.0 86400.0 382500.0 ; - RECT 85200.0 368400.0 86400.0 370650.0 ; - RECT 78000.0 379350.0 79200.0 380550.0 ; - RECT 80400.0 379350.0 81600.0 380550.0 ; - RECT 80400.0 379350.0 81600.0 380550.0 ; - RECT 78000.0 379350.0 79200.0 380550.0 ; - RECT 80400.0 379350.0 81600.0 380550.0 ; - RECT 82800.0 379350.0 84000.0 380550.0 ; - RECT 82800.0 379350.0 84000.0 380550.0 ; - RECT 80400.0 379350.0 81600.0 380550.0 ; - RECT 78000.0 370350.0 79200.0 371550.0 ; - RECT 80400.0 370350.0 81600.0 371550.0 ; - RECT 80400.0 370350.0 81600.0 371550.0 ; - RECT 78000.0 370350.0 79200.0 371550.0 ; - RECT 80400.0 370350.0 81600.0 371550.0 ; - RECT 82800.0 370350.0 84000.0 371550.0 ; - RECT 82800.0 370350.0 84000.0 371550.0 ; - RECT 80400.0 370350.0 81600.0 371550.0 ; - RECT 85200.0 379950.0 86400.0 381150.0 ; - RECT 85200.0 370050.0 86400.0 371250.0 ; - RECT 82800.0 372900.0 81600.0 374100.0 ; - RECT 79800.0 375600.0 78600.0 376800.0 ; - RECT 80400.0 379350.0 81600.0 380550.0 ; - RECT 82800.0 370350.0 84000.0 371550.0 ; - RECT 84000.0 375600.0 82800.0 376800.0 ; - RECT 78600.0 375600.0 79800.0 376800.0 ; - RECT 81600.0 372900.0 82800.0 374100.0 ; - RECT 82800.0 375600.0 84000.0 376800.0 ; - RECT 76200.0 382050.0 90600.0 382950.0 ; - RECT 76200.0 367950.0 90600.0 368850.0 ; - RECT 78000.0 394650.0 79200.0 397050.0 ; - RECT 78000.0 385650.0 79200.0 382050.0 ; - RECT 82800.0 385650.0 84000.0 382050.0 ; - RECT 85200.0 384450.0 86400.0 382500.0 ; - RECT 85200.0 396600.0 86400.0 394350.0 ; - RECT 78000.0 385650.0 79200.0 384450.0 ; - RECT 80400.0 385650.0 81600.0 384450.0 ; - RECT 80400.0 385650.0 81600.0 384450.0 ; - RECT 78000.0 385650.0 79200.0 384450.0 ; - RECT 80400.0 385650.0 81600.0 384450.0 ; - RECT 82800.0 385650.0 84000.0 384450.0 ; - RECT 82800.0 385650.0 84000.0 384450.0 ; - RECT 80400.0 385650.0 81600.0 384450.0 ; - RECT 78000.0 394650.0 79200.0 393450.0 ; - RECT 80400.0 394650.0 81600.0 393450.0 ; - RECT 80400.0 394650.0 81600.0 393450.0 ; - RECT 78000.0 394650.0 79200.0 393450.0 ; - RECT 80400.0 394650.0 81600.0 393450.0 ; - RECT 82800.0 394650.0 84000.0 393450.0 ; - RECT 82800.0 394650.0 84000.0 393450.0 ; - RECT 80400.0 394650.0 81600.0 393450.0 ; - RECT 85200.0 385050.0 86400.0 383850.0 ; - RECT 85200.0 394950.0 86400.0 393750.0 ; - RECT 82800.0 392100.0 81600.0 390900.0 ; - RECT 79800.0 389400.0 78600.0 388200.0 ; - RECT 80400.0 385650.0 81600.0 384450.0 ; - RECT 82800.0 394650.0 84000.0 393450.0 ; - RECT 84000.0 389400.0 82800.0 388200.0 ; - RECT 78600.0 389400.0 79800.0 388200.0 ; - RECT 81600.0 392100.0 82800.0 390900.0 ; - RECT 82800.0 389400.0 84000.0 388200.0 ; - RECT 76200.0 382950.0 90600.0 382050.0 ; - RECT 76200.0 397050.0 90600.0 396150.0 ; - RECT 78000.0 398550.0 79200.0 396150.0 ; - RECT 78000.0 407550.0 79200.0 411150.0 ; - RECT 82800.0 407550.0 84000.0 411150.0 ; - RECT 85200.0 408750.0 86400.0 410700.0 ; - RECT 85200.0 396600.0 86400.0 398850.0 ; - RECT 78000.0 407550.0 79200.0 408750.0 ; - RECT 80400.0 407550.0 81600.0 408750.0 ; - RECT 80400.0 407550.0 81600.0 408750.0 ; - RECT 78000.0 407550.0 79200.0 408750.0 ; - RECT 80400.0 407550.0 81600.0 408750.0 ; - RECT 82800.0 407550.0 84000.0 408750.0 ; - RECT 82800.0 407550.0 84000.0 408750.0 ; - RECT 80400.0 407550.0 81600.0 408750.0 ; - RECT 78000.0 398550.0 79200.0 399750.0 ; - RECT 80400.0 398550.0 81600.0 399750.0 ; - RECT 80400.0 398550.0 81600.0 399750.0 ; - RECT 78000.0 398550.0 79200.0 399750.0 ; - RECT 80400.0 398550.0 81600.0 399750.0 ; - RECT 82800.0 398550.0 84000.0 399750.0 ; - RECT 82800.0 398550.0 84000.0 399750.0 ; - RECT 80400.0 398550.0 81600.0 399750.0 ; - RECT 85200.0 408150.0 86400.0 409350.0 ; - RECT 85200.0 398250.0 86400.0 399450.0 ; - RECT 82800.0 401100.0 81600.0 402300.0 ; - RECT 79800.0 403800.0 78600.0 405000.0 ; - RECT 80400.0 407550.0 81600.0 408750.0 ; - RECT 82800.0 398550.0 84000.0 399750.0 ; - RECT 84000.0 403800.0 82800.0 405000.0 ; - RECT 78600.0 403800.0 79800.0 405000.0 ; - RECT 81600.0 401100.0 82800.0 402300.0 ; - RECT 82800.0 403800.0 84000.0 405000.0 ; - RECT 76200.0 410250.0 90600.0 411150.0 ; - RECT 76200.0 396150.0 90600.0 397050.0 ; - RECT 78000.0 422850.0 79200.0 425250.0 ; - RECT 78000.0 413850.0 79200.0 410250.0 ; - RECT 82800.0 413850.0 84000.0 410250.0 ; - RECT 85200.0 412650.0 86400.0 410700.0 ; - RECT 85200.0 424800.0 86400.0 422550.0 ; - RECT 78000.0 413850.0 79200.0 412650.0 ; - RECT 80400.0 413850.0 81600.0 412650.0 ; - RECT 80400.0 413850.0 81600.0 412650.0 ; - RECT 78000.0 413850.0 79200.0 412650.0 ; - RECT 80400.0 413850.0 81600.0 412650.0 ; - RECT 82800.0 413850.0 84000.0 412650.0 ; - RECT 82800.0 413850.0 84000.0 412650.0 ; - RECT 80400.0 413850.0 81600.0 412650.0 ; - RECT 78000.0 422850.0 79200.0 421650.0 ; - RECT 80400.0 422850.0 81600.0 421650.0 ; - RECT 80400.0 422850.0 81600.0 421650.0 ; - RECT 78000.0 422850.0 79200.0 421650.0 ; - RECT 80400.0 422850.0 81600.0 421650.0 ; - RECT 82800.0 422850.0 84000.0 421650.0 ; - RECT 82800.0 422850.0 84000.0 421650.0 ; - RECT 80400.0 422850.0 81600.0 421650.0 ; - RECT 85200.0 413250.0 86400.0 412050.0 ; - RECT 85200.0 423150.0 86400.0 421950.0 ; - RECT 82800.0 420300.0 81600.0 419100.0 ; - RECT 79800.0 417600.0 78600.0 416400.0 ; - RECT 80400.0 413850.0 81600.0 412650.0 ; - RECT 82800.0 422850.0 84000.0 421650.0 ; - RECT 84000.0 417600.0 82800.0 416400.0 ; - RECT 78600.0 417600.0 79800.0 416400.0 ; - RECT 81600.0 420300.0 82800.0 419100.0 ; - RECT 82800.0 417600.0 84000.0 416400.0 ; - RECT 76200.0 411150.0 90600.0 410250.0 ; - RECT 76200.0 425250.0 90600.0 424350.0 ; - RECT 97200.0 211350.0 98400.0 213300.0 ; - RECT 97200.0 199200.0 98400.0 201450.0 ; - RECT 92400.0 200550.0 93600.0 198750.0 ; - RECT 92400.0 210150.0 93600.0 213750.0 ; - RECT 95100.0 201750.0 96000.0 210150.0 ; - RECT 92400.0 210150.0 93600.0 211350.0 ; - RECT 94800.0 210150.0 96000.0 211350.0 ; - RECT 94800.0 210150.0 96000.0 211350.0 ; - RECT 92400.0 210150.0 93600.0 211350.0 ; - RECT 92400.0 200550.0 93600.0 201750.0 ; - RECT 94800.0 200550.0 96000.0 201750.0 ; - RECT 94800.0 200550.0 96000.0 201750.0 ; - RECT 92400.0 200550.0 93600.0 201750.0 ; - RECT 97200.0 210750.0 98400.0 211950.0 ; - RECT 97200.0 200850.0 98400.0 202050.0 ; - RECT 93000.0 205050.0 94200.0 206250.0 ; - RECT 93000.0 205050.0 94200.0 206250.0 ; - RECT 95550.0 205200.0 96450.0 206100.0 ; - RECT 90600.0 212850.0 100200.0 213750.0 ; - RECT 90600.0 198750.0 100200.0 199650.0 ; - RECT 97200.0 215250.0 98400.0 213300.0 ; - RECT 97200.0 227400.0 98400.0 225150.0 ; - RECT 92400.0 226050.0 93600.0 227850.0 ; - RECT 92400.0 216450.0 93600.0 212850.0 ; - RECT 95100.0 224850.0 96000.0 216450.0 ; - RECT 92400.0 216450.0 93600.0 215250.0 ; - RECT 94800.0 216450.0 96000.0 215250.0 ; - RECT 94800.0 216450.0 96000.0 215250.0 ; - RECT 92400.0 216450.0 93600.0 215250.0 ; - RECT 92400.0 226050.0 93600.0 224850.0 ; - RECT 94800.0 226050.0 96000.0 224850.0 ; - RECT 94800.0 226050.0 96000.0 224850.0 ; - RECT 92400.0 226050.0 93600.0 224850.0 ; - RECT 97200.0 215850.0 98400.0 214650.0 ; - RECT 97200.0 225750.0 98400.0 224550.0 ; - RECT 93000.0 221550.0 94200.0 220350.0 ; - RECT 93000.0 221550.0 94200.0 220350.0 ; - RECT 95550.0 221400.0 96450.0 220500.0 ; - RECT 90600.0 213750.0 100200.0 212850.0 ; - RECT 90600.0 227850.0 100200.0 226950.0 ; - RECT 97200.0 239550.0 98400.0 241500.0 ; - RECT 97200.0 227400.0 98400.0 229650.0 ; - RECT 92400.0 228750.0 93600.0 226950.0 ; - RECT 92400.0 238350.0 93600.0 241950.0 ; - RECT 95100.0 229950.0 96000.0 238350.0 ; - RECT 92400.0 238350.0 93600.0 239550.0 ; - RECT 94800.0 238350.0 96000.0 239550.0 ; - RECT 94800.0 238350.0 96000.0 239550.0 ; - RECT 92400.0 238350.0 93600.0 239550.0 ; - RECT 92400.0 228750.0 93600.0 229950.0 ; - RECT 94800.0 228750.0 96000.0 229950.0 ; - RECT 94800.0 228750.0 96000.0 229950.0 ; - RECT 92400.0 228750.0 93600.0 229950.0 ; - RECT 97200.0 238950.0 98400.0 240150.0 ; - RECT 97200.0 229050.0 98400.0 230250.0 ; - RECT 93000.0 233250.0 94200.0 234450.0 ; - RECT 93000.0 233250.0 94200.0 234450.0 ; - RECT 95550.0 233400.0 96450.0 234300.0 ; - RECT 90600.0 241050.0 100200.0 241950.0 ; - RECT 90600.0 226950.0 100200.0 227850.0 ; - RECT 97200.0 243450.0 98400.0 241500.0 ; - RECT 97200.0 255600.0 98400.0 253350.0 ; - RECT 92400.0 254250.0 93600.0 256050.0 ; - RECT 92400.0 244650.0 93600.0 241050.0 ; - RECT 95100.0 253050.0 96000.0 244650.0 ; - RECT 92400.0 244650.0 93600.0 243450.0 ; - RECT 94800.0 244650.0 96000.0 243450.0 ; - RECT 94800.0 244650.0 96000.0 243450.0 ; - RECT 92400.0 244650.0 93600.0 243450.0 ; - RECT 92400.0 254250.0 93600.0 253050.0 ; - RECT 94800.0 254250.0 96000.0 253050.0 ; - RECT 94800.0 254250.0 96000.0 253050.0 ; - RECT 92400.0 254250.0 93600.0 253050.0 ; - RECT 97200.0 244050.0 98400.0 242850.0 ; - RECT 97200.0 253950.0 98400.0 252750.0 ; - RECT 93000.0 249750.0 94200.0 248550.0 ; - RECT 93000.0 249750.0 94200.0 248550.0 ; - RECT 95550.0 249600.0 96450.0 248700.0 ; - RECT 90600.0 241950.0 100200.0 241050.0 ; - RECT 90600.0 256050.0 100200.0 255150.0 ; - RECT 97200.0 267750.0 98400.0 269700.0 ; - RECT 97200.0 255600.0 98400.0 257850.0 ; - RECT 92400.0 256950.0 93600.0 255150.0 ; - RECT 92400.0 266550.0 93600.0 270150.0 ; - RECT 95100.0 258150.0 96000.0 266550.0 ; - RECT 92400.0 266550.0 93600.0 267750.0 ; - RECT 94800.0 266550.0 96000.0 267750.0 ; - RECT 94800.0 266550.0 96000.0 267750.0 ; - RECT 92400.0 266550.0 93600.0 267750.0 ; - RECT 92400.0 256950.0 93600.0 258150.0 ; - RECT 94800.0 256950.0 96000.0 258150.0 ; - RECT 94800.0 256950.0 96000.0 258150.0 ; - RECT 92400.0 256950.0 93600.0 258150.0 ; - RECT 97200.0 267150.0 98400.0 268350.0 ; - RECT 97200.0 257250.0 98400.0 258450.0 ; - RECT 93000.0 261450.0 94200.0 262650.0 ; - RECT 93000.0 261450.0 94200.0 262650.0 ; - RECT 95550.0 261600.0 96450.0 262500.0 ; - RECT 90600.0 269250.0 100200.0 270150.0 ; - RECT 90600.0 255150.0 100200.0 256050.0 ; - RECT 97200.0 271650.0 98400.0 269700.0 ; - RECT 97200.0 283800.0 98400.0 281550.0 ; - RECT 92400.0 282450.0 93600.0 284250.0 ; - RECT 92400.0 272850.0 93600.0 269250.0 ; - RECT 95100.0 281250.0 96000.0 272850.0 ; - RECT 92400.0 272850.0 93600.0 271650.0 ; - RECT 94800.0 272850.0 96000.0 271650.0 ; - RECT 94800.0 272850.0 96000.0 271650.0 ; - RECT 92400.0 272850.0 93600.0 271650.0 ; - RECT 92400.0 282450.0 93600.0 281250.0 ; - RECT 94800.0 282450.0 96000.0 281250.0 ; - RECT 94800.0 282450.0 96000.0 281250.0 ; - RECT 92400.0 282450.0 93600.0 281250.0 ; - RECT 97200.0 272250.0 98400.0 271050.0 ; - RECT 97200.0 282150.0 98400.0 280950.0 ; - RECT 93000.0 277950.0 94200.0 276750.0 ; - RECT 93000.0 277950.0 94200.0 276750.0 ; - RECT 95550.0 277800.0 96450.0 276900.0 ; - RECT 90600.0 270150.0 100200.0 269250.0 ; - RECT 90600.0 284250.0 100200.0 283350.0 ; - RECT 97200.0 295950.0 98400.0 297900.0 ; - RECT 97200.0 283800.0 98400.0 286050.0 ; - RECT 92400.0 285150.0 93600.0 283350.0 ; - RECT 92400.0 294750.0 93600.0 298350.0 ; - RECT 95100.0 286350.0 96000.0 294750.0 ; - RECT 92400.0 294750.0 93600.0 295950.0 ; - RECT 94800.0 294750.0 96000.0 295950.0 ; - RECT 94800.0 294750.0 96000.0 295950.0 ; - RECT 92400.0 294750.0 93600.0 295950.0 ; - RECT 92400.0 285150.0 93600.0 286350.0 ; - RECT 94800.0 285150.0 96000.0 286350.0 ; - RECT 94800.0 285150.0 96000.0 286350.0 ; - RECT 92400.0 285150.0 93600.0 286350.0 ; - RECT 97200.0 295350.0 98400.0 296550.0 ; - RECT 97200.0 285450.0 98400.0 286650.0 ; - RECT 93000.0 289650.0 94200.0 290850.0 ; - RECT 93000.0 289650.0 94200.0 290850.0 ; - RECT 95550.0 289800.0 96450.0 290700.0 ; - RECT 90600.0 297450.0 100200.0 298350.0 ; - RECT 90600.0 283350.0 100200.0 284250.0 ; - RECT 97200.0 299850.0 98400.0 297900.0 ; - RECT 97200.0 312000.0 98400.0 309750.0 ; - RECT 92400.0 310650.0 93600.0 312450.0 ; - RECT 92400.0 301050.0 93600.0 297450.0 ; - RECT 95100.0 309450.0 96000.0 301050.0 ; - RECT 92400.0 301050.0 93600.0 299850.0 ; - RECT 94800.0 301050.0 96000.0 299850.0 ; - RECT 94800.0 301050.0 96000.0 299850.0 ; - RECT 92400.0 301050.0 93600.0 299850.0 ; - RECT 92400.0 310650.0 93600.0 309450.0 ; - RECT 94800.0 310650.0 96000.0 309450.0 ; - RECT 94800.0 310650.0 96000.0 309450.0 ; - RECT 92400.0 310650.0 93600.0 309450.0 ; - RECT 97200.0 300450.0 98400.0 299250.0 ; - RECT 97200.0 310350.0 98400.0 309150.0 ; - RECT 93000.0 306150.0 94200.0 304950.0 ; - RECT 93000.0 306150.0 94200.0 304950.0 ; - RECT 95550.0 306000.0 96450.0 305100.0 ; - RECT 90600.0 298350.0 100200.0 297450.0 ; - RECT 90600.0 312450.0 100200.0 311550.0 ; - RECT 97200.0 324150.0 98400.0 326100.0 ; - RECT 97200.0 312000.0 98400.0 314250.0 ; - RECT 92400.0 313350.0 93600.0 311550.0 ; - RECT 92400.0 322950.0 93600.0 326550.0 ; - RECT 95100.0 314550.0 96000.0 322950.0 ; - RECT 92400.0 322950.0 93600.0 324150.0 ; - RECT 94800.0 322950.0 96000.0 324150.0 ; - RECT 94800.0 322950.0 96000.0 324150.0 ; - RECT 92400.0 322950.0 93600.0 324150.0 ; - RECT 92400.0 313350.0 93600.0 314550.0 ; - RECT 94800.0 313350.0 96000.0 314550.0 ; - RECT 94800.0 313350.0 96000.0 314550.0 ; - RECT 92400.0 313350.0 93600.0 314550.0 ; - RECT 97200.0 323550.0 98400.0 324750.0 ; - RECT 97200.0 313650.0 98400.0 314850.0 ; - RECT 93000.0 317850.0 94200.0 319050.0 ; - RECT 93000.0 317850.0 94200.0 319050.0 ; - RECT 95550.0 318000.0 96450.0 318900.0 ; - RECT 90600.0 325650.0 100200.0 326550.0 ; - RECT 90600.0 311550.0 100200.0 312450.0 ; - RECT 97200.0 328050.0 98400.0 326100.0 ; - RECT 97200.0 340200.0 98400.0 337950.0 ; - RECT 92400.0 338850.0 93600.0 340650.0 ; - RECT 92400.0 329250.0 93600.0 325650.0 ; - RECT 95100.0 337650.0 96000.0 329250.0 ; - RECT 92400.0 329250.0 93600.0 328050.0 ; - RECT 94800.0 329250.0 96000.0 328050.0 ; - RECT 94800.0 329250.0 96000.0 328050.0 ; - RECT 92400.0 329250.0 93600.0 328050.0 ; - RECT 92400.0 338850.0 93600.0 337650.0 ; - RECT 94800.0 338850.0 96000.0 337650.0 ; - RECT 94800.0 338850.0 96000.0 337650.0 ; - RECT 92400.0 338850.0 93600.0 337650.0 ; - RECT 97200.0 328650.0 98400.0 327450.0 ; - RECT 97200.0 338550.0 98400.0 337350.0 ; - RECT 93000.0 334350.0 94200.0 333150.0 ; - RECT 93000.0 334350.0 94200.0 333150.0 ; - RECT 95550.0 334200.0 96450.0 333300.0 ; - RECT 90600.0 326550.0 100200.0 325650.0 ; - RECT 90600.0 340650.0 100200.0 339750.0 ; - RECT 97200.0 352350.0 98400.0 354300.0 ; - RECT 97200.0 340200.0 98400.0 342450.0 ; - RECT 92400.0 341550.0 93600.0 339750.0 ; - RECT 92400.0 351150.0 93600.0 354750.0 ; - RECT 95100.0 342750.0 96000.0 351150.0 ; - RECT 92400.0 351150.0 93600.0 352350.0 ; - RECT 94800.0 351150.0 96000.0 352350.0 ; - RECT 94800.0 351150.0 96000.0 352350.0 ; - RECT 92400.0 351150.0 93600.0 352350.0 ; - RECT 92400.0 341550.0 93600.0 342750.0 ; - RECT 94800.0 341550.0 96000.0 342750.0 ; - RECT 94800.0 341550.0 96000.0 342750.0 ; - RECT 92400.0 341550.0 93600.0 342750.0 ; - RECT 97200.0 351750.0 98400.0 352950.0 ; - RECT 97200.0 341850.0 98400.0 343050.0 ; - RECT 93000.0 346050.0 94200.0 347250.0 ; - RECT 93000.0 346050.0 94200.0 347250.0 ; - RECT 95550.0 346200.0 96450.0 347100.0 ; - RECT 90600.0 353850.0 100200.0 354750.0 ; - RECT 90600.0 339750.0 100200.0 340650.0 ; - RECT 97200.0 356250.0 98400.0 354300.0 ; - RECT 97200.0 368400.0 98400.0 366150.0 ; - RECT 92400.0 367050.0 93600.0 368850.0 ; - RECT 92400.0 357450.0 93600.0 353850.0 ; - RECT 95100.0 365850.0 96000.0 357450.0 ; - RECT 92400.0 357450.0 93600.0 356250.0 ; - RECT 94800.0 357450.0 96000.0 356250.0 ; - RECT 94800.0 357450.0 96000.0 356250.0 ; - RECT 92400.0 357450.0 93600.0 356250.0 ; - RECT 92400.0 367050.0 93600.0 365850.0 ; - RECT 94800.0 367050.0 96000.0 365850.0 ; - RECT 94800.0 367050.0 96000.0 365850.0 ; - RECT 92400.0 367050.0 93600.0 365850.0 ; - RECT 97200.0 356850.0 98400.0 355650.0 ; - RECT 97200.0 366750.0 98400.0 365550.0 ; - RECT 93000.0 362550.0 94200.0 361350.0 ; - RECT 93000.0 362550.0 94200.0 361350.0 ; - RECT 95550.0 362400.0 96450.0 361500.0 ; - RECT 90600.0 354750.0 100200.0 353850.0 ; - RECT 90600.0 368850.0 100200.0 367950.0 ; - RECT 97200.0 380550.0 98400.0 382500.0 ; - RECT 97200.0 368400.0 98400.0 370650.0 ; - RECT 92400.0 369750.0 93600.0 367950.0 ; - RECT 92400.0 379350.0 93600.0 382950.0 ; - RECT 95100.0 370950.0 96000.0 379350.0 ; - RECT 92400.0 379350.0 93600.0 380550.0 ; - RECT 94800.0 379350.0 96000.0 380550.0 ; - RECT 94800.0 379350.0 96000.0 380550.0 ; - RECT 92400.0 379350.0 93600.0 380550.0 ; - RECT 92400.0 369750.0 93600.0 370950.0 ; - RECT 94800.0 369750.0 96000.0 370950.0 ; - RECT 94800.0 369750.0 96000.0 370950.0 ; - RECT 92400.0 369750.0 93600.0 370950.0 ; - RECT 97200.0 379950.0 98400.0 381150.0 ; - RECT 97200.0 370050.0 98400.0 371250.0 ; - RECT 93000.0 374250.0 94200.0 375450.0 ; - RECT 93000.0 374250.0 94200.0 375450.0 ; - RECT 95550.0 374400.0 96450.0 375300.0 ; - RECT 90600.0 382050.0 100200.0 382950.0 ; - RECT 90600.0 367950.0 100200.0 368850.0 ; - RECT 97200.0 384450.0 98400.0 382500.0 ; - RECT 97200.0 396600.0 98400.0 394350.0 ; - RECT 92400.0 395250.0 93600.0 397050.0 ; - RECT 92400.0 385650.0 93600.0 382050.0 ; - RECT 95100.0 394050.0 96000.0 385650.0 ; - RECT 92400.0 385650.0 93600.0 384450.0 ; - RECT 94800.0 385650.0 96000.0 384450.0 ; - RECT 94800.0 385650.0 96000.0 384450.0 ; - RECT 92400.0 385650.0 93600.0 384450.0 ; - RECT 92400.0 395250.0 93600.0 394050.0 ; - RECT 94800.0 395250.0 96000.0 394050.0 ; - RECT 94800.0 395250.0 96000.0 394050.0 ; - RECT 92400.0 395250.0 93600.0 394050.0 ; - RECT 97200.0 385050.0 98400.0 383850.0 ; - RECT 97200.0 394950.0 98400.0 393750.0 ; - RECT 93000.0 390750.0 94200.0 389550.0 ; - RECT 93000.0 390750.0 94200.0 389550.0 ; - RECT 95550.0 390600.0 96450.0 389700.0 ; - RECT 90600.0 382950.0 100200.0 382050.0 ; - RECT 90600.0 397050.0 100200.0 396150.0 ; - RECT 97200.0 408750.0 98400.0 410700.0 ; - RECT 97200.0 396600.0 98400.0 398850.0 ; - RECT 92400.0 397950.0 93600.0 396150.0 ; - RECT 92400.0 407550.0 93600.0 411150.0 ; - RECT 95100.0 399150.0 96000.0 407550.0 ; - RECT 92400.0 407550.0 93600.0 408750.0 ; - RECT 94800.0 407550.0 96000.0 408750.0 ; - RECT 94800.0 407550.0 96000.0 408750.0 ; - RECT 92400.0 407550.0 93600.0 408750.0 ; - RECT 92400.0 397950.0 93600.0 399150.0 ; - RECT 94800.0 397950.0 96000.0 399150.0 ; - RECT 94800.0 397950.0 96000.0 399150.0 ; - RECT 92400.0 397950.0 93600.0 399150.0 ; - RECT 97200.0 408150.0 98400.0 409350.0 ; - RECT 97200.0 398250.0 98400.0 399450.0 ; - RECT 93000.0 402450.0 94200.0 403650.0 ; - RECT 93000.0 402450.0 94200.0 403650.0 ; - RECT 95550.0 402600.0 96450.0 403500.0 ; - RECT 90600.0 410250.0 100200.0 411150.0 ; - RECT 90600.0 396150.0 100200.0 397050.0 ; - RECT 97200.0 412650.0 98400.0 410700.0 ; - RECT 97200.0 424800.0 98400.0 422550.0 ; - RECT 92400.0 423450.0 93600.0 425250.0 ; - RECT 92400.0 413850.0 93600.0 410250.0 ; - RECT 95100.0 422250.0 96000.0 413850.0 ; - RECT 92400.0 413850.0 93600.0 412650.0 ; - RECT 94800.0 413850.0 96000.0 412650.0 ; - RECT 94800.0 413850.0 96000.0 412650.0 ; - RECT 92400.0 413850.0 93600.0 412650.0 ; - RECT 92400.0 423450.0 93600.0 422250.0 ; - RECT 94800.0 423450.0 96000.0 422250.0 ; - RECT 94800.0 423450.0 96000.0 422250.0 ; - RECT 92400.0 423450.0 93600.0 422250.0 ; - RECT 97200.0 413250.0 98400.0 412050.0 ; - RECT 97200.0 423150.0 98400.0 421950.0 ; - RECT 93000.0 418950.0 94200.0 417750.0 ; - RECT 93000.0 418950.0 94200.0 417750.0 ; - RECT 95550.0 418800.0 96450.0 417900.0 ; - RECT 90600.0 411150.0 100200.0 410250.0 ; - RECT 90600.0 425250.0 100200.0 424350.0 ; - RECT 60450.0 92250.0 59250.0 93450.0 ; - RECT 62550.0 107550.0 61350.0 108750.0 ; - RECT 64650.0 120450.0 63450.0 121650.0 ; - RECT 66750.0 135750.0 65550.0 136950.0 ; - RECT 68850.0 148650.0 67650.0 149850.0 ; - RECT 70950.0 163950.0 69750.0 165150.0 ; - RECT 73050.0 176850.0 71850.0 178050.0 ; - RECT 75150.0 192150.0 73950.0 193350.0 ; - RECT 60450.0 206400.0 59250.0 207600.0 ; - RECT 68850.0 203700.0 67650.0 204900.0 ; - RECT 60450.0 219000.0 59250.0 220200.0 ; - RECT 70950.0 221700.0 69750.0 222900.0 ; - RECT 60450.0 234600.0 59250.0 235800.0 ; - RECT 73050.0 231900.0 71850.0 233100.0 ; - RECT 60450.0 247200.0 59250.0 248400.0 ; - RECT 75150.0 249900.0 73950.0 251100.0 ; - RECT 62550.0 262800.0 61350.0 264000.0 ; - RECT 68850.0 260100.0 67650.0 261300.0 ; - RECT 62550.0 275400.0 61350.0 276600.0 ; - RECT 70950.0 278100.0 69750.0 279300.0 ; - RECT 62550.0 291000.0 61350.0 292200.0 ; - RECT 73050.0 288300.0 71850.0 289500.0 ; - RECT 62550.0 303600.0 61350.0 304800.0 ; - RECT 75150.0 306300.0 73950.0 307500.0 ; - RECT 64650.0 319200.0 63450.0 320400.0 ; - RECT 68850.0 316500.0 67650.0 317700.0 ; - RECT 64650.0 331800.0 63450.0 333000.0 ; - RECT 70950.0 334500.0 69750.0 335700.0 ; - RECT 64650.0 347400.0 63450.0 348600.0 ; - RECT 73050.0 344700.0 71850.0 345900.0 ; - RECT 64650.0 360000.0 63450.0 361200.0 ; - RECT 75150.0 362700.0 73950.0 363900.0 ; - RECT 66750.0 375600.0 65550.0 376800.0 ; - RECT 68850.0 372900.0 67650.0 374100.0 ; - RECT 66750.0 388200.0 65550.0 389400.0 ; - RECT 70950.0 390900.0 69750.0 392100.0 ; - RECT 66750.0 403800.0 65550.0 405000.0 ; - RECT 73050.0 401100.0 71850.0 402300.0 ; - RECT 66750.0 416400.0 65550.0 417600.0 ; - RECT 75150.0 419100.0 73950.0 420300.0 ; - RECT 95550.0 205200.0 96450.0 206100.0 ; - RECT 95550.0 220500.0 96450.0 221400.0 ; - RECT 95550.0 233400.0 96450.0 234300.0 ; - RECT 95550.0 248700.0 96450.0 249600.0 ; - RECT 95550.0 261600.0 96450.0 262500.0 ; - RECT 95550.0 276900.0 96450.0 277800.0 ; - RECT 95550.0 289800.0 96450.0 290700.0 ; - RECT 95550.0 305100.0 96450.0 306000.0 ; - RECT 95550.0 318000.0 96450.0 318900.0 ; - RECT 95550.0 333300.0 96450.0 334200.0 ; - RECT 95550.0 346200.0 96450.0 347100.0 ; - RECT 95550.0 361500.0 96450.0 362400.0 ; - RECT 95550.0 374400.0 96450.0 375300.0 ; - RECT 95550.0 389700.0 96450.0 390600.0 ; - RECT 95550.0 402600.0 96450.0 403500.0 ; - RECT 95550.0 417900.0 96450.0 418800.0 ; - RECT 59400.0 100050.0 130800.0 100950.0 ; - RECT 59400.0 128250.0 130800.0 129150.0 ; - RECT 59400.0 156450.0 130800.0 157350.0 ; - RECT 59400.0 184650.0 130800.0 185550.0 ; - RECT 59400.0 212850.0 130800.0 213750.0 ; - RECT 59400.0 241050.0 130800.0 241950.0 ; - RECT 59400.0 269250.0 130800.0 270150.0 ; - RECT 59400.0 297450.0 130800.0 298350.0 ; - RECT 59400.0 325650.0 130800.0 326550.0 ; - RECT 59400.0 353850.0 130800.0 354750.0 ; - RECT 59400.0 382050.0 130800.0 382950.0 ; - RECT 59400.0 410250.0 130800.0 411150.0 ; - RECT 59400.0 85950.0 130800.0 86850.0 ; - RECT 59400.0 114150.0 130800.0 115050.0 ; - RECT 59400.0 142350.0 130800.0 143250.0 ; - RECT 59400.0 170550.0 130800.0 171450.0 ; - RECT 59400.0 198750.0 130800.0 199650.0 ; - RECT 59400.0 226950.0 130800.0 227850.0 ; - RECT 59400.0 255150.0 130800.0 256050.0 ; - RECT 59400.0 283350.0 130800.0 284250.0 ; - RECT 59400.0 311550.0 130800.0 312450.0 ; - RECT 59400.0 339750.0 130800.0 340650.0 ; - RECT 59400.0 367950.0 130800.0 368850.0 ; - RECT 59400.0 396150.0 130800.0 397050.0 ; - RECT 59400.0 424350.0 130800.0 425250.0 ; - RECT 103350.0 205200.0 108900.0 206100.0 ; - RECT 111450.0 206550.0 112350.0 207450.0 ; - RECT 111450.0 205200.0 112350.0 206100.0 ; - RECT 111450.0 206100.0 112350.0 207000.0 ; - RECT 111900.0 206550.0 118500.0 207450.0 ; - RECT 118500.0 206550.0 119700.0 207450.0 ; - RECT 127950.0 206550.0 128850.0 207450.0 ; - RECT 127950.0 205200.0 128850.0 206100.0 ; - RECT 123900.0 206550.0 128400.0 207450.0 ; - RECT 127950.0 205650.0 128850.0 207000.0 ; - RECT 128400.0 205200.0 132900.0 206100.0 ; - RECT 103350.0 220500.0 108900.0 221400.0 ; - RECT 111450.0 219150.0 112350.0 220050.0 ; - RECT 111450.0 220500.0 112350.0 221400.0 ; - RECT 111450.0 219600.0 112350.0 221400.0 ; - RECT 111900.0 219150.0 118500.0 220050.0 ; - RECT 118500.0 219150.0 119700.0 220050.0 ; - RECT 127950.0 219150.0 128850.0 220050.0 ; - RECT 127950.0 220500.0 128850.0 221400.0 ; - RECT 123900.0 219150.0 128400.0 220050.0 ; - RECT 127950.0 219600.0 128850.0 220950.0 ; - RECT 128400.0 220500.0 132900.0 221400.0 ; - RECT 103350.0 233400.0 108900.0 234300.0 ; - RECT 111450.0 234750.0 112350.0 235650.0 ; - RECT 111450.0 233400.0 112350.0 234300.0 ; - RECT 111450.0 234300.0 112350.0 235200.0 ; - RECT 111900.0 234750.0 118500.0 235650.0 ; - RECT 118500.0 234750.0 119700.0 235650.0 ; - RECT 127950.0 234750.0 128850.0 235650.0 ; - RECT 127950.0 233400.0 128850.0 234300.0 ; - RECT 123900.0 234750.0 128400.0 235650.0 ; - RECT 127950.0 233850.0 128850.0 235200.0 ; - RECT 128400.0 233400.0 132900.0 234300.0 ; - RECT 103350.0 248700.0 108900.0 249600.0 ; - RECT 111450.0 247350.0 112350.0 248250.0 ; - RECT 111450.0 248700.0 112350.0 249600.0 ; - RECT 111450.0 247800.0 112350.0 249600.0 ; - RECT 111900.0 247350.0 118500.0 248250.0 ; - RECT 118500.0 247350.0 119700.0 248250.0 ; - RECT 127950.0 247350.0 128850.0 248250.0 ; - RECT 127950.0 248700.0 128850.0 249600.0 ; - RECT 123900.0 247350.0 128400.0 248250.0 ; - RECT 127950.0 247800.0 128850.0 249150.0 ; - RECT 128400.0 248700.0 132900.0 249600.0 ; - RECT 103350.0 261600.0 108900.0 262500.0 ; - RECT 111450.0 262950.0 112350.0 263850.0 ; - RECT 111450.0 261600.0 112350.0 262500.0 ; - RECT 111450.0 262500.0 112350.0 263400.0 ; - RECT 111900.0 262950.0 118500.0 263850.0 ; - RECT 118500.0 262950.0 119700.0 263850.0 ; - RECT 127950.0 262950.0 128850.0 263850.0 ; - RECT 127950.0 261600.0 128850.0 262500.0 ; - RECT 123900.0 262950.0 128400.0 263850.0 ; - RECT 127950.0 262050.0 128850.0 263400.0 ; - RECT 128400.0 261600.0 132900.0 262500.0 ; - RECT 103350.0 276900.0 108900.0 277800.0 ; - RECT 111450.0 275550.0 112350.0 276450.0 ; - RECT 111450.0 276900.0 112350.0 277800.0 ; - RECT 111450.0 276000.0 112350.0 277800.0 ; - RECT 111900.0 275550.0 118500.0 276450.0 ; - RECT 118500.0 275550.0 119700.0 276450.0 ; - RECT 127950.0 275550.0 128850.0 276450.0 ; - RECT 127950.0 276900.0 128850.0 277800.0 ; - RECT 123900.0 275550.0 128400.0 276450.0 ; - RECT 127950.0 276000.0 128850.0 277350.0 ; - RECT 128400.0 276900.0 132900.0 277800.0 ; - RECT 103350.0 289800.0 108900.0 290700.0 ; - RECT 111450.0 291150.0 112350.0 292050.0 ; - RECT 111450.0 289800.0 112350.0 290700.0 ; - RECT 111450.0 290700.0 112350.0 291600.0 ; - RECT 111900.0 291150.0 118500.0 292050.0 ; - RECT 118500.0 291150.0 119700.0 292050.0 ; - RECT 127950.0 291150.0 128850.0 292050.0 ; - RECT 127950.0 289800.0 128850.0 290700.0 ; - RECT 123900.0 291150.0 128400.0 292050.0 ; - RECT 127950.0 290250.0 128850.0 291600.0 ; - RECT 128400.0 289800.0 132900.0 290700.0 ; - RECT 103350.0 305100.0 108900.0 306000.0 ; - RECT 111450.0 303750.0 112350.0 304650.0 ; - RECT 111450.0 305100.0 112350.0 306000.0 ; - RECT 111450.0 304200.0 112350.0 306000.0 ; - RECT 111900.0 303750.0 118500.0 304650.0 ; - RECT 118500.0 303750.0 119700.0 304650.0 ; - RECT 127950.0 303750.0 128850.0 304650.0 ; - RECT 127950.0 305100.0 128850.0 306000.0 ; - RECT 123900.0 303750.0 128400.0 304650.0 ; - RECT 127950.0 304200.0 128850.0 305550.0 ; - RECT 128400.0 305100.0 132900.0 306000.0 ; - RECT 103350.0 318000.0 108900.0 318900.0 ; - RECT 111450.0 319350.0 112350.0 320250.0 ; - RECT 111450.0 318000.0 112350.0 318900.0 ; - RECT 111450.0 318900.0 112350.0 319800.0 ; - RECT 111900.0 319350.0 118500.0 320250.0 ; - RECT 118500.0 319350.0 119700.0 320250.0 ; - RECT 127950.0 319350.0 128850.0 320250.0 ; - RECT 127950.0 318000.0 128850.0 318900.0 ; - RECT 123900.0 319350.0 128400.0 320250.0 ; - RECT 127950.0 318450.0 128850.0 319800.0 ; - RECT 128400.0 318000.0 132900.0 318900.0 ; - RECT 103350.0 333300.0 108900.0 334200.0 ; - RECT 111450.0 331950.0 112350.0 332850.0 ; - RECT 111450.0 333300.0 112350.0 334200.0 ; - RECT 111450.0 332400.0 112350.0 334200.0 ; - RECT 111900.0 331950.0 118500.0 332850.0 ; - RECT 118500.0 331950.0 119700.0 332850.0 ; - RECT 127950.0 331950.0 128850.0 332850.0 ; - RECT 127950.0 333300.0 128850.0 334200.0 ; - RECT 123900.0 331950.0 128400.0 332850.0 ; - RECT 127950.0 332400.0 128850.0 333750.0 ; - RECT 128400.0 333300.0 132900.0 334200.0 ; - RECT 103350.0 346200.0 108900.0 347100.0 ; - RECT 111450.0 347550.0 112350.0 348450.0 ; - RECT 111450.0 346200.0 112350.0 347100.0 ; - RECT 111450.0 347100.0 112350.0 348000.0 ; - RECT 111900.0 347550.0 118500.0 348450.0 ; - RECT 118500.0 347550.0 119700.0 348450.0 ; - RECT 127950.0 347550.0 128850.0 348450.0 ; - RECT 127950.0 346200.0 128850.0 347100.0 ; - RECT 123900.0 347550.0 128400.0 348450.0 ; - RECT 127950.0 346650.0 128850.0 348000.0 ; - RECT 128400.0 346200.0 132900.0 347100.0 ; - RECT 103350.0 361500.0 108900.0 362400.0 ; - RECT 111450.0 360150.0 112350.0 361050.0 ; - RECT 111450.0 361500.0 112350.0 362400.0 ; - RECT 111450.0 360600.0 112350.0 362400.0 ; - RECT 111900.0 360150.0 118500.0 361050.0 ; - RECT 118500.0 360150.0 119700.0 361050.0 ; - RECT 127950.0 360150.0 128850.0 361050.0 ; - RECT 127950.0 361500.0 128850.0 362400.0 ; - RECT 123900.0 360150.0 128400.0 361050.0 ; - RECT 127950.0 360600.0 128850.0 361950.0 ; - RECT 128400.0 361500.0 132900.0 362400.0 ; - RECT 103350.0 374400.0 108900.0 375300.0 ; - RECT 111450.0 375750.0 112350.0 376650.0 ; - RECT 111450.0 374400.0 112350.0 375300.0 ; - RECT 111450.0 375300.0 112350.0 376200.0 ; - RECT 111900.0 375750.0 118500.0 376650.0 ; - RECT 118500.0 375750.0 119700.0 376650.0 ; - RECT 127950.0 375750.0 128850.0 376650.0 ; - RECT 127950.0 374400.0 128850.0 375300.0 ; - RECT 123900.0 375750.0 128400.0 376650.0 ; - RECT 127950.0 374850.0 128850.0 376200.0 ; - RECT 128400.0 374400.0 132900.0 375300.0 ; - RECT 103350.0 389700.0 108900.0 390600.0 ; - RECT 111450.0 388350.0 112350.0 389250.0 ; - RECT 111450.0 389700.0 112350.0 390600.0 ; - RECT 111450.0 388800.0 112350.0 390600.0 ; - RECT 111900.0 388350.0 118500.0 389250.0 ; - RECT 118500.0 388350.0 119700.0 389250.0 ; - RECT 127950.0 388350.0 128850.0 389250.0 ; - RECT 127950.0 389700.0 128850.0 390600.0 ; - RECT 123900.0 388350.0 128400.0 389250.0 ; - RECT 127950.0 388800.0 128850.0 390150.0 ; - RECT 128400.0 389700.0 132900.0 390600.0 ; - RECT 103350.0 402600.0 108900.0 403500.0 ; - RECT 111450.0 403950.0 112350.0 404850.0 ; - RECT 111450.0 402600.0 112350.0 403500.0 ; - RECT 111450.0 403500.0 112350.0 404400.0 ; - RECT 111900.0 403950.0 118500.0 404850.0 ; - RECT 118500.0 403950.0 119700.0 404850.0 ; - RECT 127950.0 403950.0 128850.0 404850.0 ; - RECT 127950.0 402600.0 128850.0 403500.0 ; - RECT 123900.0 403950.0 128400.0 404850.0 ; - RECT 127950.0 403050.0 128850.0 404400.0 ; - RECT 128400.0 402600.0 132900.0 403500.0 ; - RECT 103350.0 417900.0 108900.0 418800.0 ; - RECT 111450.0 416550.0 112350.0 417450.0 ; - RECT 111450.0 417900.0 112350.0 418800.0 ; - RECT 111450.0 417000.0 112350.0 418800.0 ; - RECT 111900.0 416550.0 118500.0 417450.0 ; - RECT 118500.0 416550.0 119700.0 417450.0 ; - RECT 127950.0 416550.0 128850.0 417450.0 ; - RECT 127950.0 417900.0 128850.0 418800.0 ; - RECT 123900.0 416550.0 128400.0 417450.0 ; - RECT 127950.0 417000.0 128850.0 418350.0 ; - RECT 128400.0 417900.0 132900.0 418800.0 ; - RECT 113100.0 211350.0 114300.0 213300.0 ; - RECT 113100.0 199200.0 114300.0 201450.0 ; - RECT 108300.0 200550.0 109500.0 198750.0 ; - RECT 108300.0 210150.0 109500.0 213750.0 ; - RECT 111000.0 201750.0 111900.0 210150.0 ; - RECT 108300.0 210150.0 109500.0 211350.0 ; - RECT 110700.0 210150.0 111900.0 211350.0 ; - RECT 110700.0 210150.0 111900.0 211350.0 ; - RECT 108300.0 210150.0 109500.0 211350.0 ; - RECT 108300.0 200550.0 109500.0 201750.0 ; - RECT 110700.0 200550.0 111900.0 201750.0 ; - RECT 110700.0 200550.0 111900.0 201750.0 ; - RECT 108300.0 200550.0 109500.0 201750.0 ; - RECT 113100.0 210750.0 114300.0 211950.0 ; - RECT 113100.0 200850.0 114300.0 202050.0 ; - RECT 108900.0 205050.0 110100.0 206250.0 ; - RECT 108900.0 205050.0 110100.0 206250.0 ; - RECT 111450.0 205200.0 112350.0 206100.0 ; - RECT 106500.0 212850.0 116100.0 213750.0 ; - RECT 106500.0 198750.0 116100.0 199650.0 ; - RECT 117900.0 201150.0 119100.0 198750.0 ; - RECT 117900.0 210150.0 119100.0 213750.0 ; - RECT 122700.0 210150.0 123900.0 213750.0 ; - RECT 125100.0 211350.0 126300.0 213300.0 ; - RECT 125100.0 199200.0 126300.0 201450.0 ; - RECT 117900.0 210150.0 119100.0 211350.0 ; - RECT 120300.0 210150.0 121500.0 211350.0 ; - RECT 120300.0 210150.0 121500.0 211350.0 ; - RECT 117900.0 210150.0 119100.0 211350.0 ; - RECT 120300.0 210150.0 121500.0 211350.0 ; - RECT 122700.0 210150.0 123900.0 211350.0 ; - RECT 122700.0 210150.0 123900.0 211350.0 ; - RECT 120300.0 210150.0 121500.0 211350.0 ; - RECT 117900.0 201150.0 119100.0 202350.0 ; - RECT 120300.0 201150.0 121500.0 202350.0 ; - RECT 120300.0 201150.0 121500.0 202350.0 ; - RECT 117900.0 201150.0 119100.0 202350.0 ; - RECT 120300.0 201150.0 121500.0 202350.0 ; - RECT 122700.0 201150.0 123900.0 202350.0 ; - RECT 122700.0 201150.0 123900.0 202350.0 ; - RECT 120300.0 201150.0 121500.0 202350.0 ; - RECT 125100.0 210750.0 126300.0 211950.0 ; - RECT 125100.0 200850.0 126300.0 202050.0 ; - RECT 122700.0 203700.0 121500.0 204900.0 ; - RECT 119700.0 206400.0 118500.0 207600.0 ; - RECT 120300.0 210150.0 121500.0 211350.0 ; - RECT 122700.0 201150.0 123900.0 202350.0 ; - RECT 123900.0 206400.0 122700.0 207600.0 ; - RECT 118500.0 206400.0 119700.0 207600.0 ; - RECT 121500.0 203700.0 122700.0 204900.0 ; - RECT 122700.0 206400.0 123900.0 207600.0 ; - RECT 116100.0 212850.0 130500.0 213750.0 ; - RECT 116100.0 198750.0 130500.0 199650.0 ; - RECT 137100.0 211350.0 138300.0 213300.0 ; - RECT 137100.0 199200.0 138300.0 201450.0 ; - RECT 132300.0 200550.0 133500.0 198750.0 ; - RECT 132300.0 210150.0 133500.0 213750.0 ; - RECT 135000.0 201750.0 135900.0 210150.0 ; - RECT 132300.0 210150.0 133500.0 211350.0 ; - RECT 134700.0 210150.0 135900.0 211350.0 ; - RECT 134700.0 210150.0 135900.0 211350.0 ; - RECT 132300.0 210150.0 133500.0 211350.0 ; - RECT 132300.0 200550.0 133500.0 201750.0 ; - RECT 134700.0 200550.0 135900.0 201750.0 ; - RECT 134700.0 200550.0 135900.0 201750.0 ; - RECT 132300.0 200550.0 133500.0 201750.0 ; - RECT 137100.0 210750.0 138300.0 211950.0 ; - RECT 137100.0 200850.0 138300.0 202050.0 ; - RECT 132900.0 205050.0 134100.0 206250.0 ; - RECT 132900.0 205050.0 134100.0 206250.0 ; - RECT 135450.0 205200.0 136350.0 206100.0 ; - RECT 130500.0 212850.0 140100.0 213750.0 ; - RECT 130500.0 198750.0 140100.0 199650.0 ; - RECT 102750.0 205050.0 103950.0 206250.0 ; - RECT 104700.0 202800.0 105900.0 204000.0 ; - RECT 121500.0 203700.0 120300.0 204900.0 ; - RECT 113100.0 215250.0 114300.0 213300.0 ; - RECT 113100.0 227400.0 114300.0 225150.0 ; - RECT 108300.0 226050.0 109500.0 227850.0 ; - RECT 108300.0 216450.0 109500.0 212850.0 ; - RECT 111000.0 224850.0 111900.0 216450.0 ; - RECT 108300.0 216450.0 109500.0 215250.0 ; - RECT 110700.0 216450.0 111900.0 215250.0 ; - RECT 110700.0 216450.0 111900.0 215250.0 ; - RECT 108300.0 216450.0 109500.0 215250.0 ; - RECT 108300.0 226050.0 109500.0 224850.0 ; - RECT 110700.0 226050.0 111900.0 224850.0 ; - RECT 110700.0 226050.0 111900.0 224850.0 ; - RECT 108300.0 226050.0 109500.0 224850.0 ; - RECT 113100.0 215850.0 114300.0 214650.0 ; - RECT 113100.0 225750.0 114300.0 224550.0 ; - RECT 108900.0 221550.0 110100.0 220350.0 ; - RECT 108900.0 221550.0 110100.0 220350.0 ; - RECT 111450.0 221400.0 112350.0 220500.0 ; - RECT 106500.0 213750.0 116100.0 212850.0 ; - RECT 106500.0 227850.0 116100.0 226950.0 ; - RECT 117900.0 225450.0 119100.0 227850.0 ; - RECT 117900.0 216450.0 119100.0 212850.0 ; - RECT 122700.0 216450.0 123900.0 212850.0 ; - RECT 125100.0 215250.0 126300.0 213300.0 ; - RECT 125100.0 227400.0 126300.0 225150.0 ; - RECT 117900.0 216450.0 119100.0 215250.0 ; - RECT 120300.0 216450.0 121500.0 215250.0 ; - RECT 120300.0 216450.0 121500.0 215250.0 ; - RECT 117900.0 216450.0 119100.0 215250.0 ; - RECT 120300.0 216450.0 121500.0 215250.0 ; - RECT 122700.0 216450.0 123900.0 215250.0 ; - RECT 122700.0 216450.0 123900.0 215250.0 ; - RECT 120300.0 216450.0 121500.0 215250.0 ; - RECT 117900.0 225450.0 119100.0 224250.0 ; - RECT 120300.0 225450.0 121500.0 224250.0 ; - RECT 120300.0 225450.0 121500.0 224250.0 ; - RECT 117900.0 225450.0 119100.0 224250.0 ; - RECT 120300.0 225450.0 121500.0 224250.0 ; - RECT 122700.0 225450.0 123900.0 224250.0 ; - RECT 122700.0 225450.0 123900.0 224250.0 ; - RECT 120300.0 225450.0 121500.0 224250.0 ; - RECT 125100.0 215850.0 126300.0 214650.0 ; - RECT 125100.0 225750.0 126300.0 224550.0 ; - RECT 122700.0 222900.0 121500.0 221700.0 ; - RECT 119700.0 220200.0 118500.0 219000.0 ; - RECT 120300.0 216450.0 121500.0 215250.0 ; - RECT 122700.0 225450.0 123900.0 224250.0 ; - RECT 123900.0 220200.0 122700.0 219000.0 ; - RECT 118500.0 220200.0 119700.0 219000.0 ; - RECT 121500.0 222900.0 122700.0 221700.0 ; - RECT 122700.0 220200.0 123900.0 219000.0 ; - RECT 116100.0 213750.0 130500.0 212850.0 ; - RECT 116100.0 227850.0 130500.0 226950.0 ; - RECT 137100.0 215250.0 138300.0 213300.0 ; - RECT 137100.0 227400.0 138300.0 225150.0 ; - RECT 132300.0 226050.0 133500.0 227850.0 ; - RECT 132300.0 216450.0 133500.0 212850.0 ; - RECT 135000.0 224850.0 135900.0 216450.0 ; - RECT 132300.0 216450.0 133500.0 215250.0 ; - RECT 134700.0 216450.0 135900.0 215250.0 ; - RECT 134700.0 216450.0 135900.0 215250.0 ; - RECT 132300.0 216450.0 133500.0 215250.0 ; - RECT 132300.0 226050.0 133500.0 224850.0 ; - RECT 134700.0 226050.0 135900.0 224850.0 ; - RECT 134700.0 226050.0 135900.0 224850.0 ; - RECT 132300.0 226050.0 133500.0 224850.0 ; - RECT 137100.0 215850.0 138300.0 214650.0 ; - RECT 137100.0 225750.0 138300.0 224550.0 ; - RECT 132900.0 221550.0 134100.0 220350.0 ; - RECT 132900.0 221550.0 134100.0 220350.0 ; - RECT 135450.0 221400.0 136350.0 220500.0 ; - RECT 130500.0 213750.0 140100.0 212850.0 ; - RECT 130500.0 227850.0 140100.0 226950.0 ; - RECT 102750.0 220350.0 103950.0 221550.0 ; - RECT 104700.0 222600.0 105900.0 223800.0 ; - RECT 121500.0 221700.0 120300.0 222900.0 ; - RECT 113100.0 239550.0 114300.0 241500.0 ; - RECT 113100.0 227400.0 114300.0 229650.0 ; - RECT 108300.0 228750.0 109500.0 226950.0 ; - RECT 108300.0 238350.0 109500.0 241950.0 ; - RECT 111000.0 229950.0 111900.0 238350.0 ; - RECT 108300.0 238350.0 109500.0 239550.0 ; - RECT 110700.0 238350.0 111900.0 239550.0 ; - RECT 110700.0 238350.0 111900.0 239550.0 ; - RECT 108300.0 238350.0 109500.0 239550.0 ; - RECT 108300.0 228750.0 109500.0 229950.0 ; - RECT 110700.0 228750.0 111900.0 229950.0 ; - RECT 110700.0 228750.0 111900.0 229950.0 ; - RECT 108300.0 228750.0 109500.0 229950.0 ; - RECT 113100.0 238950.0 114300.0 240150.0 ; - RECT 113100.0 229050.0 114300.0 230250.0 ; - RECT 108900.0 233250.0 110100.0 234450.0 ; - RECT 108900.0 233250.0 110100.0 234450.0 ; - RECT 111450.0 233400.0 112350.0 234300.0 ; - RECT 106500.0 241050.0 116100.0 241950.0 ; - RECT 106500.0 226950.0 116100.0 227850.0 ; - RECT 117900.0 229350.0 119100.0 226950.0 ; - RECT 117900.0 238350.0 119100.0 241950.0 ; - RECT 122700.0 238350.0 123900.0 241950.0 ; - RECT 125100.0 239550.0 126300.0 241500.0 ; - RECT 125100.0 227400.0 126300.0 229650.0 ; - RECT 117900.0 238350.0 119100.0 239550.0 ; - RECT 120300.0 238350.0 121500.0 239550.0 ; - RECT 120300.0 238350.0 121500.0 239550.0 ; - RECT 117900.0 238350.0 119100.0 239550.0 ; - RECT 120300.0 238350.0 121500.0 239550.0 ; - RECT 122700.0 238350.0 123900.0 239550.0 ; - RECT 122700.0 238350.0 123900.0 239550.0 ; - RECT 120300.0 238350.0 121500.0 239550.0 ; - RECT 117900.0 229350.0 119100.0 230550.0 ; - RECT 120300.0 229350.0 121500.0 230550.0 ; - RECT 120300.0 229350.0 121500.0 230550.0 ; - RECT 117900.0 229350.0 119100.0 230550.0 ; - RECT 120300.0 229350.0 121500.0 230550.0 ; - RECT 122700.0 229350.0 123900.0 230550.0 ; - RECT 122700.0 229350.0 123900.0 230550.0 ; - RECT 120300.0 229350.0 121500.0 230550.0 ; - RECT 125100.0 238950.0 126300.0 240150.0 ; - RECT 125100.0 229050.0 126300.0 230250.0 ; - RECT 122700.0 231900.0 121500.0 233100.0 ; - RECT 119700.0 234600.0 118500.0 235800.0 ; - RECT 120300.0 238350.0 121500.0 239550.0 ; - RECT 122700.0 229350.0 123900.0 230550.0 ; - RECT 123900.0 234600.0 122700.0 235800.0 ; - RECT 118500.0 234600.0 119700.0 235800.0 ; - RECT 121500.0 231900.0 122700.0 233100.0 ; - RECT 122700.0 234600.0 123900.0 235800.0 ; - RECT 116100.0 241050.0 130500.0 241950.0 ; - RECT 116100.0 226950.0 130500.0 227850.0 ; - RECT 137100.0 239550.0 138300.0 241500.0 ; - RECT 137100.0 227400.0 138300.0 229650.0 ; - RECT 132300.0 228750.0 133500.0 226950.0 ; - RECT 132300.0 238350.0 133500.0 241950.0 ; - RECT 135000.0 229950.0 135900.0 238350.0 ; - RECT 132300.0 238350.0 133500.0 239550.0 ; - RECT 134700.0 238350.0 135900.0 239550.0 ; - RECT 134700.0 238350.0 135900.0 239550.0 ; - RECT 132300.0 238350.0 133500.0 239550.0 ; - RECT 132300.0 228750.0 133500.0 229950.0 ; - RECT 134700.0 228750.0 135900.0 229950.0 ; - RECT 134700.0 228750.0 135900.0 229950.0 ; - RECT 132300.0 228750.0 133500.0 229950.0 ; - RECT 137100.0 238950.0 138300.0 240150.0 ; - RECT 137100.0 229050.0 138300.0 230250.0 ; - RECT 132900.0 233250.0 134100.0 234450.0 ; - RECT 132900.0 233250.0 134100.0 234450.0 ; - RECT 135450.0 233400.0 136350.0 234300.0 ; - RECT 130500.0 241050.0 140100.0 241950.0 ; - RECT 130500.0 226950.0 140100.0 227850.0 ; - RECT 102750.0 233250.0 103950.0 234450.0 ; - RECT 104700.0 231000.0 105900.0 232200.0 ; - RECT 121500.0 231900.0 120300.0 233100.0 ; - RECT 113100.0 243450.0 114300.0 241500.0 ; - RECT 113100.0 255600.0 114300.0 253350.0 ; - RECT 108300.0 254250.0 109500.0 256050.0 ; - RECT 108300.0 244650.0 109500.0 241050.0 ; - RECT 111000.0 253050.0 111900.0 244650.0 ; - RECT 108300.0 244650.0 109500.0 243450.0 ; - RECT 110700.0 244650.0 111900.0 243450.0 ; - RECT 110700.0 244650.0 111900.0 243450.0 ; - RECT 108300.0 244650.0 109500.0 243450.0 ; - RECT 108300.0 254250.0 109500.0 253050.0 ; - RECT 110700.0 254250.0 111900.0 253050.0 ; - RECT 110700.0 254250.0 111900.0 253050.0 ; - RECT 108300.0 254250.0 109500.0 253050.0 ; - RECT 113100.0 244050.0 114300.0 242850.0 ; - RECT 113100.0 253950.0 114300.0 252750.0 ; - RECT 108900.0 249750.0 110100.0 248550.0 ; - RECT 108900.0 249750.0 110100.0 248550.0 ; - RECT 111450.0 249600.0 112350.0 248700.0 ; - RECT 106500.0 241950.0 116100.0 241050.0 ; - RECT 106500.0 256050.0 116100.0 255150.0 ; - RECT 117900.0 253650.0 119100.0 256050.0 ; - RECT 117900.0 244650.0 119100.0 241050.0 ; - RECT 122700.0 244650.0 123900.0 241050.0 ; - RECT 125100.0 243450.0 126300.0 241500.0 ; - RECT 125100.0 255600.0 126300.0 253350.0 ; - RECT 117900.0 244650.0 119100.0 243450.0 ; - RECT 120300.0 244650.0 121500.0 243450.0 ; - RECT 120300.0 244650.0 121500.0 243450.0 ; - RECT 117900.0 244650.0 119100.0 243450.0 ; - RECT 120300.0 244650.0 121500.0 243450.0 ; - RECT 122700.0 244650.0 123900.0 243450.0 ; - RECT 122700.0 244650.0 123900.0 243450.0 ; - RECT 120300.0 244650.0 121500.0 243450.0 ; - RECT 117900.0 253650.0 119100.0 252450.0 ; - RECT 120300.0 253650.0 121500.0 252450.0 ; - RECT 120300.0 253650.0 121500.0 252450.0 ; - RECT 117900.0 253650.0 119100.0 252450.0 ; - RECT 120300.0 253650.0 121500.0 252450.0 ; - RECT 122700.0 253650.0 123900.0 252450.0 ; - RECT 122700.0 253650.0 123900.0 252450.0 ; - RECT 120300.0 253650.0 121500.0 252450.0 ; - RECT 125100.0 244050.0 126300.0 242850.0 ; - RECT 125100.0 253950.0 126300.0 252750.0 ; - RECT 122700.0 251100.0 121500.0 249900.0 ; - RECT 119700.0 248400.0 118500.0 247200.0 ; - RECT 120300.0 244650.0 121500.0 243450.0 ; - RECT 122700.0 253650.0 123900.0 252450.0 ; - RECT 123900.0 248400.0 122700.0 247200.0 ; - RECT 118500.0 248400.0 119700.0 247200.0 ; - RECT 121500.0 251100.0 122700.0 249900.0 ; - RECT 122700.0 248400.0 123900.0 247200.0 ; - RECT 116100.0 241950.0 130500.0 241050.0 ; - RECT 116100.0 256050.0 130500.0 255150.0 ; - RECT 137100.0 243450.0 138300.0 241500.0 ; - RECT 137100.0 255600.0 138300.0 253350.0 ; - RECT 132300.0 254250.0 133500.0 256050.0 ; - RECT 132300.0 244650.0 133500.0 241050.0 ; - RECT 135000.0 253050.0 135900.0 244650.0 ; - RECT 132300.0 244650.0 133500.0 243450.0 ; - RECT 134700.0 244650.0 135900.0 243450.0 ; - RECT 134700.0 244650.0 135900.0 243450.0 ; - RECT 132300.0 244650.0 133500.0 243450.0 ; - RECT 132300.0 254250.0 133500.0 253050.0 ; - RECT 134700.0 254250.0 135900.0 253050.0 ; - RECT 134700.0 254250.0 135900.0 253050.0 ; - RECT 132300.0 254250.0 133500.0 253050.0 ; - RECT 137100.0 244050.0 138300.0 242850.0 ; - RECT 137100.0 253950.0 138300.0 252750.0 ; - RECT 132900.0 249750.0 134100.0 248550.0 ; - RECT 132900.0 249750.0 134100.0 248550.0 ; - RECT 135450.0 249600.0 136350.0 248700.0 ; - RECT 130500.0 241950.0 140100.0 241050.0 ; - RECT 130500.0 256050.0 140100.0 255150.0 ; - RECT 102750.0 248550.0 103950.0 249750.0 ; - RECT 104700.0 250800.0 105900.0 252000.0 ; - RECT 121500.0 249900.0 120300.0 251100.0 ; - RECT 113100.0 267750.0 114300.0 269700.0 ; - RECT 113100.0 255600.0 114300.0 257850.0 ; - RECT 108300.0 256950.0 109500.0 255150.0 ; - RECT 108300.0 266550.0 109500.0 270150.0 ; - RECT 111000.0 258150.0 111900.0 266550.0 ; - RECT 108300.0 266550.0 109500.0 267750.0 ; - RECT 110700.0 266550.0 111900.0 267750.0 ; - RECT 110700.0 266550.0 111900.0 267750.0 ; - RECT 108300.0 266550.0 109500.0 267750.0 ; - RECT 108300.0 256950.0 109500.0 258150.0 ; - RECT 110700.0 256950.0 111900.0 258150.0 ; - RECT 110700.0 256950.0 111900.0 258150.0 ; - RECT 108300.0 256950.0 109500.0 258150.0 ; - RECT 113100.0 267150.0 114300.0 268350.0 ; - RECT 113100.0 257250.0 114300.0 258450.0 ; - RECT 108900.0 261450.0 110100.0 262650.0 ; - RECT 108900.0 261450.0 110100.0 262650.0 ; - RECT 111450.0 261600.0 112350.0 262500.0 ; - RECT 106500.0 269250.0 116100.0 270150.0 ; - RECT 106500.0 255150.0 116100.0 256050.0 ; - RECT 117900.0 257550.0 119100.0 255150.0 ; - RECT 117900.0 266550.0 119100.0 270150.0 ; - RECT 122700.0 266550.0 123900.0 270150.0 ; - RECT 125100.0 267750.0 126300.0 269700.0 ; - RECT 125100.0 255600.0 126300.0 257850.0 ; - RECT 117900.0 266550.0 119100.0 267750.0 ; - RECT 120300.0 266550.0 121500.0 267750.0 ; - RECT 120300.0 266550.0 121500.0 267750.0 ; - RECT 117900.0 266550.0 119100.0 267750.0 ; - RECT 120300.0 266550.0 121500.0 267750.0 ; - RECT 122700.0 266550.0 123900.0 267750.0 ; - RECT 122700.0 266550.0 123900.0 267750.0 ; - RECT 120300.0 266550.0 121500.0 267750.0 ; - RECT 117900.0 257550.0 119100.0 258750.0 ; - RECT 120300.0 257550.0 121500.0 258750.0 ; - RECT 120300.0 257550.0 121500.0 258750.0 ; - RECT 117900.0 257550.0 119100.0 258750.0 ; - RECT 120300.0 257550.0 121500.0 258750.0 ; - RECT 122700.0 257550.0 123900.0 258750.0 ; - RECT 122700.0 257550.0 123900.0 258750.0 ; - RECT 120300.0 257550.0 121500.0 258750.0 ; - RECT 125100.0 267150.0 126300.0 268350.0 ; - RECT 125100.0 257250.0 126300.0 258450.0 ; - RECT 122700.0 260100.0 121500.0 261300.0 ; - RECT 119700.0 262800.0 118500.0 264000.0 ; - RECT 120300.0 266550.0 121500.0 267750.0 ; - RECT 122700.0 257550.0 123900.0 258750.0 ; - RECT 123900.0 262800.0 122700.0 264000.0 ; - RECT 118500.0 262800.0 119700.0 264000.0 ; - RECT 121500.0 260100.0 122700.0 261300.0 ; - RECT 122700.0 262800.0 123900.0 264000.0 ; - RECT 116100.0 269250.0 130500.0 270150.0 ; - RECT 116100.0 255150.0 130500.0 256050.0 ; - RECT 137100.0 267750.0 138300.0 269700.0 ; - RECT 137100.0 255600.0 138300.0 257850.0 ; - RECT 132300.0 256950.0 133500.0 255150.0 ; - RECT 132300.0 266550.0 133500.0 270150.0 ; - RECT 135000.0 258150.0 135900.0 266550.0 ; - RECT 132300.0 266550.0 133500.0 267750.0 ; - RECT 134700.0 266550.0 135900.0 267750.0 ; - RECT 134700.0 266550.0 135900.0 267750.0 ; - RECT 132300.0 266550.0 133500.0 267750.0 ; - RECT 132300.0 256950.0 133500.0 258150.0 ; - RECT 134700.0 256950.0 135900.0 258150.0 ; - RECT 134700.0 256950.0 135900.0 258150.0 ; - RECT 132300.0 256950.0 133500.0 258150.0 ; - RECT 137100.0 267150.0 138300.0 268350.0 ; - RECT 137100.0 257250.0 138300.0 258450.0 ; - RECT 132900.0 261450.0 134100.0 262650.0 ; - RECT 132900.0 261450.0 134100.0 262650.0 ; - RECT 135450.0 261600.0 136350.0 262500.0 ; - RECT 130500.0 269250.0 140100.0 270150.0 ; - RECT 130500.0 255150.0 140100.0 256050.0 ; - RECT 102750.0 261450.0 103950.0 262650.0 ; - RECT 104700.0 259200.0 105900.0 260400.0 ; - RECT 121500.0 260100.0 120300.0 261300.0 ; - RECT 113100.0 271650.0 114300.0 269700.0 ; - RECT 113100.0 283800.0 114300.0 281550.0 ; - RECT 108300.0 282450.0 109500.0 284250.0 ; - RECT 108300.0 272850.0 109500.0 269250.0 ; - RECT 111000.0 281250.0 111900.0 272850.0 ; - RECT 108300.0 272850.0 109500.0 271650.0 ; - RECT 110700.0 272850.0 111900.0 271650.0 ; - RECT 110700.0 272850.0 111900.0 271650.0 ; - RECT 108300.0 272850.0 109500.0 271650.0 ; - RECT 108300.0 282450.0 109500.0 281250.0 ; - RECT 110700.0 282450.0 111900.0 281250.0 ; - RECT 110700.0 282450.0 111900.0 281250.0 ; - RECT 108300.0 282450.0 109500.0 281250.0 ; - RECT 113100.0 272250.0 114300.0 271050.0 ; - RECT 113100.0 282150.0 114300.0 280950.0 ; - RECT 108900.0 277950.0 110100.0 276750.0 ; - RECT 108900.0 277950.0 110100.0 276750.0 ; - RECT 111450.0 277800.0 112350.0 276900.0 ; - RECT 106500.0 270150.0 116100.0 269250.0 ; - RECT 106500.0 284250.0 116100.0 283350.0 ; - RECT 117900.0 281850.0 119100.0 284250.0 ; - RECT 117900.0 272850.0 119100.0 269250.0 ; - RECT 122700.0 272850.0 123900.0 269250.0 ; - RECT 125100.0 271650.0 126300.0 269700.0 ; - RECT 125100.0 283800.0 126300.0 281550.0 ; - RECT 117900.0 272850.0 119100.0 271650.0 ; - RECT 120300.0 272850.0 121500.0 271650.0 ; - RECT 120300.0 272850.0 121500.0 271650.0 ; - RECT 117900.0 272850.0 119100.0 271650.0 ; - RECT 120300.0 272850.0 121500.0 271650.0 ; - RECT 122700.0 272850.0 123900.0 271650.0 ; - RECT 122700.0 272850.0 123900.0 271650.0 ; - RECT 120300.0 272850.0 121500.0 271650.0 ; - RECT 117900.0 281850.0 119100.0 280650.0 ; - RECT 120300.0 281850.0 121500.0 280650.0 ; - RECT 120300.0 281850.0 121500.0 280650.0 ; - RECT 117900.0 281850.0 119100.0 280650.0 ; - RECT 120300.0 281850.0 121500.0 280650.0 ; - RECT 122700.0 281850.0 123900.0 280650.0 ; - RECT 122700.0 281850.0 123900.0 280650.0 ; - RECT 120300.0 281850.0 121500.0 280650.0 ; - RECT 125100.0 272250.0 126300.0 271050.0 ; - RECT 125100.0 282150.0 126300.0 280950.0 ; - RECT 122700.0 279300.0 121500.0 278100.0 ; - RECT 119700.0 276600.0 118500.0 275400.0 ; - RECT 120300.0 272850.0 121500.0 271650.0 ; - RECT 122700.0 281850.0 123900.0 280650.0 ; - RECT 123900.0 276600.0 122700.0 275400.0 ; - RECT 118500.0 276600.0 119700.0 275400.0 ; - RECT 121500.0 279300.0 122700.0 278100.0 ; - RECT 122700.0 276600.0 123900.0 275400.0 ; - RECT 116100.0 270150.0 130500.0 269250.0 ; - RECT 116100.0 284250.0 130500.0 283350.0 ; - RECT 137100.0 271650.0 138300.0 269700.0 ; - RECT 137100.0 283800.0 138300.0 281550.0 ; - RECT 132300.0 282450.0 133500.0 284250.0 ; - RECT 132300.0 272850.0 133500.0 269250.0 ; - RECT 135000.0 281250.0 135900.0 272850.0 ; - RECT 132300.0 272850.0 133500.0 271650.0 ; - RECT 134700.0 272850.0 135900.0 271650.0 ; - RECT 134700.0 272850.0 135900.0 271650.0 ; - RECT 132300.0 272850.0 133500.0 271650.0 ; - RECT 132300.0 282450.0 133500.0 281250.0 ; - RECT 134700.0 282450.0 135900.0 281250.0 ; - RECT 134700.0 282450.0 135900.0 281250.0 ; - RECT 132300.0 282450.0 133500.0 281250.0 ; - RECT 137100.0 272250.0 138300.0 271050.0 ; - RECT 137100.0 282150.0 138300.0 280950.0 ; - RECT 132900.0 277950.0 134100.0 276750.0 ; - RECT 132900.0 277950.0 134100.0 276750.0 ; - RECT 135450.0 277800.0 136350.0 276900.0 ; - RECT 130500.0 270150.0 140100.0 269250.0 ; - RECT 130500.0 284250.0 140100.0 283350.0 ; - RECT 102750.0 276750.0 103950.0 277950.0 ; - RECT 104700.0 279000.0 105900.0 280200.0 ; - RECT 121500.0 278100.0 120300.0 279300.0 ; - RECT 113100.0 295950.0 114300.0 297900.0 ; - RECT 113100.0 283800.0 114300.0 286050.0 ; - RECT 108300.0 285150.0 109500.0 283350.0 ; - RECT 108300.0 294750.0 109500.0 298350.0 ; - RECT 111000.0 286350.0 111900.0 294750.0 ; - RECT 108300.0 294750.0 109500.0 295950.0 ; - RECT 110700.0 294750.0 111900.0 295950.0 ; - RECT 110700.0 294750.0 111900.0 295950.0 ; - RECT 108300.0 294750.0 109500.0 295950.0 ; - RECT 108300.0 285150.0 109500.0 286350.0 ; - RECT 110700.0 285150.0 111900.0 286350.0 ; - RECT 110700.0 285150.0 111900.0 286350.0 ; - RECT 108300.0 285150.0 109500.0 286350.0 ; - RECT 113100.0 295350.0 114300.0 296550.0 ; - RECT 113100.0 285450.0 114300.0 286650.0 ; - RECT 108900.0 289650.0 110100.0 290850.0 ; - RECT 108900.0 289650.0 110100.0 290850.0 ; - RECT 111450.0 289800.0 112350.0 290700.0 ; - RECT 106500.0 297450.0 116100.0 298350.0 ; - RECT 106500.0 283350.0 116100.0 284250.0 ; - RECT 117900.0 285750.0 119100.0 283350.0 ; - RECT 117900.0 294750.0 119100.0 298350.0 ; - RECT 122700.0 294750.0 123900.0 298350.0 ; - RECT 125100.0 295950.0 126300.0 297900.0 ; - RECT 125100.0 283800.0 126300.0 286050.0 ; - RECT 117900.0 294750.0 119100.0 295950.0 ; - RECT 120300.0 294750.0 121500.0 295950.0 ; - RECT 120300.0 294750.0 121500.0 295950.0 ; - RECT 117900.0 294750.0 119100.0 295950.0 ; - RECT 120300.0 294750.0 121500.0 295950.0 ; - RECT 122700.0 294750.0 123900.0 295950.0 ; - RECT 122700.0 294750.0 123900.0 295950.0 ; - RECT 120300.0 294750.0 121500.0 295950.0 ; - RECT 117900.0 285750.0 119100.0 286950.0 ; - RECT 120300.0 285750.0 121500.0 286950.0 ; - RECT 120300.0 285750.0 121500.0 286950.0 ; - RECT 117900.0 285750.0 119100.0 286950.0 ; - RECT 120300.0 285750.0 121500.0 286950.0 ; - RECT 122700.0 285750.0 123900.0 286950.0 ; - RECT 122700.0 285750.0 123900.0 286950.0 ; - RECT 120300.0 285750.0 121500.0 286950.0 ; - RECT 125100.0 295350.0 126300.0 296550.0 ; - RECT 125100.0 285450.0 126300.0 286650.0 ; - RECT 122700.0 288300.0 121500.0 289500.0 ; - RECT 119700.0 291000.0 118500.0 292200.0 ; - RECT 120300.0 294750.0 121500.0 295950.0 ; - RECT 122700.0 285750.0 123900.0 286950.0 ; - RECT 123900.0 291000.0 122700.0 292200.0 ; - RECT 118500.0 291000.0 119700.0 292200.0 ; - RECT 121500.0 288300.0 122700.0 289500.0 ; - RECT 122700.0 291000.0 123900.0 292200.0 ; - RECT 116100.0 297450.0 130500.0 298350.0 ; - RECT 116100.0 283350.0 130500.0 284250.0 ; - RECT 137100.0 295950.0 138300.0 297900.0 ; - RECT 137100.0 283800.0 138300.0 286050.0 ; - RECT 132300.0 285150.0 133500.0 283350.0 ; - RECT 132300.0 294750.0 133500.0 298350.0 ; - RECT 135000.0 286350.0 135900.0 294750.0 ; - RECT 132300.0 294750.0 133500.0 295950.0 ; - RECT 134700.0 294750.0 135900.0 295950.0 ; - RECT 134700.0 294750.0 135900.0 295950.0 ; - RECT 132300.0 294750.0 133500.0 295950.0 ; - RECT 132300.0 285150.0 133500.0 286350.0 ; - RECT 134700.0 285150.0 135900.0 286350.0 ; - RECT 134700.0 285150.0 135900.0 286350.0 ; - RECT 132300.0 285150.0 133500.0 286350.0 ; - RECT 137100.0 295350.0 138300.0 296550.0 ; - RECT 137100.0 285450.0 138300.0 286650.0 ; - RECT 132900.0 289650.0 134100.0 290850.0 ; - RECT 132900.0 289650.0 134100.0 290850.0 ; - RECT 135450.0 289800.0 136350.0 290700.0 ; - RECT 130500.0 297450.0 140100.0 298350.0 ; - RECT 130500.0 283350.0 140100.0 284250.0 ; - RECT 102750.0 289650.0 103950.0 290850.0 ; - RECT 104700.0 287400.0 105900.0 288600.0 ; - RECT 121500.0 288300.0 120300.0 289500.0 ; - RECT 113100.0 299850.0 114300.0 297900.0 ; - RECT 113100.0 312000.0 114300.0 309750.0 ; - RECT 108300.0 310650.0 109500.0 312450.0 ; - RECT 108300.0 301050.0 109500.0 297450.0 ; - RECT 111000.0 309450.0 111900.0 301050.0 ; - RECT 108300.0 301050.0 109500.0 299850.0 ; - RECT 110700.0 301050.0 111900.0 299850.0 ; - RECT 110700.0 301050.0 111900.0 299850.0 ; - RECT 108300.0 301050.0 109500.0 299850.0 ; - RECT 108300.0 310650.0 109500.0 309450.0 ; - RECT 110700.0 310650.0 111900.0 309450.0 ; - RECT 110700.0 310650.0 111900.0 309450.0 ; - RECT 108300.0 310650.0 109500.0 309450.0 ; - RECT 113100.0 300450.0 114300.0 299250.0 ; - RECT 113100.0 310350.0 114300.0 309150.0 ; - RECT 108900.0 306150.0 110100.0 304950.0 ; - RECT 108900.0 306150.0 110100.0 304950.0 ; - RECT 111450.0 306000.0 112350.0 305100.0 ; - RECT 106500.0 298350.0 116100.0 297450.0 ; - RECT 106500.0 312450.0 116100.0 311550.0 ; - RECT 117900.0 310050.0 119100.0 312450.0 ; - RECT 117900.0 301050.0 119100.0 297450.0 ; - RECT 122700.0 301050.0 123900.0 297450.0 ; - RECT 125100.0 299850.0 126300.0 297900.0 ; - RECT 125100.0 312000.0 126300.0 309750.0 ; - RECT 117900.0 301050.0 119100.0 299850.0 ; - RECT 120300.0 301050.0 121500.0 299850.0 ; - RECT 120300.0 301050.0 121500.0 299850.0 ; - RECT 117900.0 301050.0 119100.0 299850.0 ; - RECT 120300.0 301050.0 121500.0 299850.0 ; - RECT 122700.0 301050.0 123900.0 299850.0 ; - RECT 122700.0 301050.0 123900.0 299850.0 ; - RECT 120300.0 301050.0 121500.0 299850.0 ; - RECT 117900.0 310050.0 119100.0 308850.0 ; - RECT 120300.0 310050.0 121500.0 308850.0 ; - RECT 120300.0 310050.0 121500.0 308850.0 ; - RECT 117900.0 310050.0 119100.0 308850.0 ; - RECT 120300.0 310050.0 121500.0 308850.0 ; - RECT 122700.0 310050.0 123900.0 308850.0 ; - RECT 122700.0 310050.0 123900.0 308850.0 ; - RECT 120300.0 310050.0 121500.0 308850.0 ; - RECT 125100.0 300450.0 126300.0 299250.0 ; - RECT 125100.0 310350.0 126300.0 309150.0 ; - RECT 122700.0 307500.0 121500.0 306300.0 ; - RECT 119700.0 304800.0 118500.0 303600.0 ; - RECT 120300.0 301050.0 121500.0 299850.0 ; - RECT 122700.0 310050.0 123900.0 308850.0 ; - RECT 123900.0 304800.0 122700.0 303600.0 ; - RECT 118500.0 304800.0 119700.0 303600.0 ; - RECT 121500.0 307500.0 122700.0 306300.0 ; - RECT 122700.0 304800.0 123900.0 303600.0 ; - RECT 116100.0 298350.0 130500.0 297450.0 ; - RECT 116100.0 312450.0 130500.0 311550.0 ; - RECT 137100.0 299850.0 138300.0 297900.0 ; - RECT 137100.0 312000.0 138300.0 309750.0 ; - RECT 132300.0 310650.0 133500.0 312450.0 ; - RECT 132300.0 301050.0 133500.0 297450.0 ; - RECT 135000.0 309450.0 135900.0 301050.0 ; - RECT 132300.0 301050.0 133500.0 299850.0 ; - RECT 134700.0 301050.0 135900.0 299850.0 ; - RECT 134700.0 301050.0 135900.0 299850.0 ; - RECT 132300.0 301050.0 133500.0 299850.0 ; - RECT 132300.0 310650.0 133500.0 309450.0 ; - RECT 134700.0 310650.0 135900.0 309450.0 ; - RECT 134700.0 310650.0 135900.0 309450.0 ; - RECT 132300.0 310650.0 133500.0 309450.0 ; - RECT 137100.0 300450.0 138300.0 299250.0 ; - RECT 137100.0 310350.0 138300.0 309150.0 ; - RECT 132900.0 306150.0 134100.0 304950.0 ; - RECT 132900.0 306150.0 134100.0 304950.0 ; - RECT 135450.0 306000.0 136350.0 305100.0 ; - RECT 130500.0 298350.0 140100.0 297450.0 ; - RECT 130500.0 312450.0 140100.0 311550.0 ; - RECT 102750.0 304950.0 103950.0 306150.0 ; - RECT 104700.0 307200.0 105900.0 308400.0 ; - RECT 121500.0 306300.0 120300.0 307500.0 ; - RECT 113100.0 324150.0 114300.0 326100.0 ; - RECT 113100.0 312000.0 114300.0 314250.0 ; - RECT 108300.0 313350.0 109500.0 311550.0 ; - RECT 108300.0 322950.0 109500.0 326550.0 ; - RECT 111000.0 314550.0 111900.0 322950.0 ; - RECT 108300.0 322950.0 109500.0 324150.0 ; - RECT 110700.0 322950.0 111900.0 324150.0 ; - RECT 110700.0 322950.0 111900.0 324150.0 ; - RECT 108300.0 322950.0 109500.0 324150.0 ; - RECT 108300.0 313350.0 109500.0 314550.0 ; - RECT 110700.0 313350.0 111900.0 314550.0 ; - RECT 110700.0 313350.0 111900.0 314550.0 ; - RECT 108300.0 313350.0 109500.0 314550.0 ; - RECT 113100.0 323550.0 114300.0 324750.0 ; - RECT 113100.0 313650.0 114300.0 314850.0 ; - RECT 108900.0 317850.0 110100.0 319050.0 ; - RECT 108900.0 317850.0 110100.0 319050.0 ; - RECT 111450.0 318000.0 112350.0 318900.0 ; - RECT 106500.0 325650.0 116100.0 326550.0 ; - RECT 106500.0 311550.0 116100.0 312450.0 ; - RECT 117900.0 313950.0 119100.0 311550.0 ; - RECT 117900.0 322950.0 119100.0 326550.0 ; - RECT 122700.0 322950.0 123900.0 326550.0 ; - RECT 125100.0 324150.0 126300.0 326100.0 ; - RECT 125100.0 312000.0 126300.0 314250.0 ; - RECT 117900.0 322950.0 119100.0 324150.0 ; - RECT 120300.0 322950.0 121500.0 324150.0 ; - RECT 120300.0 322950.0 121500.0 324150.0 ; - RECT 117900.0 322950.0 119100.0 324150.0 ; - RECT 120300.0 322950.0 121500.0 324150.0 ; - RECT 122700.0 322950.0 123900.0 324150.0 ; - RECT 122700.0 322950.0 123900.0 324150.0 ; - RECT 120300.0 322950.0 121500.0 324150.0 ; - RECT 117900.0 313950.0 119100.0 315150.0 ; - RECT 120300.0 313950.0 121500.0 315150.0 ; - RECT 120300.0 313950.0 121500.0 315150.0 ; - RECT 117900.0 313950.0 119100.0 315150.0 ; - RECT 120300.0 313950.0 121500.0 315150.0 ; - RECT 122700.0 313950.0 123900.0 315150.0 ; - RECT 122700.0 313950.0 123900.0 315150.0 ; - RECT 120300.0 313950.0 121500.0 315150.0 ; - RECT 125100.0 323550.0 126300.0 324750.0 ; - RECT 125100.0 313650.0 126300.0 314850.0 ; - RECT 122700.0 316500.0 121500.0 317700.0 ; - RECT 119700.0 319200.0 118500.0 320400.0 ; - RECT 120300.0 322950.0 121500.0 324150.0 ; - RECT 122700.0 313950.0 123900.0 315150.0 ; - RECT 123900.0 319200.0 122700.0 320400.0 ; - RECT 118500.0 319200.0 119700.0 320400.0 ; - RECT 121500.0 316500.0 122700.0 317700.0 ; - RECT 122700.0 319200.0 123900.0 320400.0 ; - RECT 116100.0 325650.0 130500.0 326550.0 ; - RECT 116100.0 311550.0 130500.0 312450.0 ; - RECT 137100.0 324150.0 138300.0 326100.0 ; - RECT 137100.0 312000.0 138300.0 314250.0 ; - RECT 132300.0 313350.0 133500.0 311550.0 ; - RECT 132300.0 322950.0 133500.0 326550.0 ; - RECT 135000.0 314550.0 135900.0 322950.0 ; - RECT 132300.0 322950.0 133500.0 324150.0 ; - RECT 134700.0 322950.0 135900.0 324150.0 ; - RECT 134700.0 322950.0 135900.0 324150.0 ; - RECT 132300.0 322950.0 133500.0 324150.0 ; - RECT 132300.0 313350.0 133500.0 314550.0 ; - RECT 134700.0 313350.0 135900.0 314550.0 ; - RECT 134700.0 313350.0 135900.0 314550.0 ; - RECT 132300.0 313350.0 133500.0 314550.0 ; - RECT 137100.0 323550.0 138300.0 324750.0 ; - RECT 137100.0 313650.0 138300.0 314850.0 ; - RECT 132900.0 317850.0 134100.0 319050.0 ; - RECT 132900.0 317850.0 134100.0 319050.0 ; - RECT 135450.0 318000.0 136350.0 318900.0 ; - RECT 130500.0 325650.0 140100.0 326550.0 ; - RECT 130500.0 311550.0 140100.0 312450.0 ; - RECT 102750.0 317850.0 103950.0 319050.0 ; - RECT 104700.0 315600.0 105900.0 316800.0 ; - RECT 121500.0 316500.0 120300.0 317700.0 ; - RECT 113100.0 328050.0 114300.0 326100.0 ; - RECT 113100.0 340200.0 114300.0 337950.0 ; - RECT 108300.0 338850.0 109500.0 340650.0 ; - RECT 108300.0 329250.0 109500.0 325650.0 ; - RECT 111000.0 337650.0 111900.0 329250.0 ; - RECT 108300.0 329250.0 109500.0 328050.0 ; - RECT 110700.0 329250.0 111900.0 328050.0 ; - RECT 110700.0 329250.0 111900.0 328050.0 ; - RECT 108300.0 329250.0 109500.0 328050.0 ; - RECT 108300.0 338850.0 109500.0 337650.0 ; - RECT 110700.0 338850.0 111900.0 337650.0 ; - RECT 110700.0 338850.0 111900.0 337650.0 ; - RECT 108300.0 338850.0 109500.0 337650.0 ; - RECT 113100.0 328650.0 114300.0 327450.0 ; - RECT 113100.0 338550.0 114300.0 337350.0 ; - RECT 108900.0 334350.0 110100.0 333150.0 ; - RECT 108900.0 334350.0 110100.0 333150.0 ; - RECT 111450.0 334200.0 112350.0 333300.0 ; - RECT 106500.0 326550.0 116100.0 325650.0 ; - RECT 106500.0 340650.0 116100.0 339750.0 ; - RECT 117900.0 338250.0 119100.0 340650.0 ; - RECT 117900.0 329250.0 119100.0 325650.0 ; - RECT 122700.0 329250.0 123900.0 325650.0 ; - RECT 125100.0 328050.0 126300.0 326100.0 ; - RECT 125100.0 340200.0 126300.0 337950.0 ; - RECT 117900.0 329250.0 119100.0 328050.0 ; - RECT 120300.0 329250.0 121500.0 328050.0 ; - RECT 120300.0 329250.0 121500.0 328050.0 ; - RECT 117900.0 329250.0 119100.0 328050.0 ; - RECT 120300.0 329250.0 121500.0 328050.0 ; - RECT 122700.0 329250.0 123900.0 328050.0 ; - RECT 122700.0 329250.0 123900.0 328050.0 ; - RECT 120300.0 329250.0 121500.0 328050.0 ; - RECT 117900.0 338250.0 119100.0 337050.0 ; - RECT 120300.0 338250.0 121500.0 337050.0 ; - RECT 120300.0 338250.0 121500.0 337050.0 ; - RECT 117900.0 338250.0 119100.0 337050.0 ; - RECT 120300.0 338250.0 121500.0 337050.0 ; - RECT 122700.0 338250.0 123900.0 337050.0 ; - RECT 122700.0 338250.0 123900.0 337050.0 ; - RECT 120300.0 338250.0 121500.0 337050.0 ; - RECT 125100.0 328650.0 126300.0 327450.0 ; - RECT 125100.0 338550.0 126300.0 337350.0 ; - RECT 122700.0 335700.0 121500.0 334500.0 ; - RECT 119700.0 333000.0 118500.0 331800.0 ; - RECT 120300.0 329250.0 121500.0 328050.0 ; - RECT 122700.0 338250.0 123900.0 337050.0 ; - RECT 123900.0 333000.0 122700.0 331800.0 ; - RECT 118500.0 333000.0 119700.0 331800.0 ; - RECT 121500.0 335700.0 122700.0 334500.0 ; - RECT 122700.0 333000.0 123900.0 331800.0 ; - RECT 116100.0 326550.0 130500.0 325650.0 ; - RECT 116100.0 340650.0 130500.0 339750.0 ; - RECT 137100.0 328050.0 138300.0 326100.0 ; - RECT 137100.0 340200.0 138300.0 337950.0 ; - RECT 132300.0 338850.0 133500.0 340650.0 ; - RECT 132300.0 329250.0 133500.0 325650.0 ; - RECT 135000.0 337650.0 135900.0 329250.0 ; - RECT 132300.0 329250.0 133500.0 328050.0 ; - RECT 134700.0 329250.0 135900.0 328050.0 ; - RECT 134700.0 329250.0 135900.0 328050.0 ; - RECT 132300.0 329250.0 133500.0 328050.0 ; - RECT 132300.0 338850.0 133500.0 337650.0 ; - RECT 134700.0 338850.0 135900.0 337650.0 ; - RECT 134700.0 338850.0 135900.0 337650.0 ; - RECT 132300.0 338850.0 133500.0 337650.0 ; - RECT 137100.0 328650.0 138300.0 327450.0 ; - RECT 137100.0 338550.0 138300.0 337350.0 ; - RECT 132900.0 334350.0 134100.0 333150.0 ; - RECT 132900.0 334350.0 134100.0 333150.0 ; - RECT 135450.0 334200.0 136350.0 333300.0 ; - RECT 130500.0 326550.0 140100.0 325650.0 ; - RECT 130500.0 340650.0 140100.0 339750.0 ; - RECT 102750.0 333150.0 103950.0 334350.0 ; - RECT 104700.0 335400.0 105900.0 336600.0 ; - RECT 121500.0 334500.0 120300.0 335700.0 ; - RECT 113100.0 352350.0 114300.0 354300.0 ; - RECT 113100.0 340200.0 114300.0 342450.0 ; - RECT 108300.0 341550.0 109500.0 339750.0 ; - RECT 108300.0 351150.0 109500.0 354750.0 ; - RECT 111000.0 342750.0 111900.0 351150.0 ; - RECT 108300.0 351150.0 109500.0 352350.0 ; - RECT 110700.0 351150.0 111900.0 352350.0 ; - RECT 110700.0 351150.0 111900.0 352350.0 ; - RECT 108300.0 351150.0 109500.0 352350.0 ; - RECT 108300.0 341550.0 109500.0 342750.0 ; - RECT 110700.0 341550.0 111900.0 342750.0 ; - RECT 110700.0 341550.0 111900.0 342750.0 ; - RECT 108300.0 341550.0 109500.0 342750.0 ; - RECT 113100.0 351750.0 114300.0 352950.0 ; - RECT 113100.0 341850.0 114300.0 343050.0 ; - RECT 108900.0 346050.0 110100.0 347250.0 ; - RECT 108900.0 346050.0 110100.0 347250.0 ; - RECT 111450.0 346200.0 112350.0 347100.0 ; - RECT 106500.0 353850.0 116100.0 354750.0 ; - RECT 106500.0 339750.0 116100.0 340650.0 ; - RECT 117900.0 342150.0 119100.0 339750.0 ; - RECT 117900.0 351150.0 119100.0 354750.0 ; - RECT 122700.0 351150.0 123900.0 354750.0 ; - RECT 125100.0 352350.0 126300.0 354300.0 ; - RECT 125100.0 340200.0 126300.0 342450.0 ; - RECT 117900.0 351150.0 119100.0 352350.0 ; - RECT 120300.0 351150.0 121500.0 352350.0 ; - RECT 120300.0 351150.0 121500.0 352350.0 ; - RECT 117900.0 351150.0 119100.0 352350.0 ; - RECT 120300.0 351150.0 121500.0 352350.0 ; - RECT 122700.0 351150.0 123900.0 352350.0 ; - RECT 122700.0 351150.0 123900.0 352350.0 ; - RECT 120300.0 351150.0 121500.0 352350.0 ; - RECT 117900.0 342150.0 119100.0 343350.0 ; - RECT 120300.0 342150.0 121500.0 343350.0 ; - RECT 120300.0 342150.0 121500.0 343350.0 ; - RECT 117900.0 342150.0 119100.0 343350.0 ; - RECT 120300.0 342150.0 121500.0 343350.0 ; - RECT 122700.0 342150.0 123900.0 343350.0 ; - RECT 122700.0 342150.0 123900.0 343350.0 ; - RECT 120300.0 342150.0 121500.0 343350.0 ; - RECT 125100.0 351750.0 126300.0 352950.0 ; - RECT 125100.0 341850.0 126300.0 343050.0 ; - RECT 122700.0 344700.0 121500.0 345900.0 ; - RECT 119700.0 347400.0 118500.0 348600.0 ; - RECT 120300.0 351150.0 121500.0 352350.0 ; - RECT 122700.0 342150.0 123900.0 343350.0 ; - RECT 123900.0 347400.0 122700.0 348600.0 ; - RECT 118500.0 347400.0 119700.0 348600.0 ; - RECT 121500.0 344700.0 122700.0 345900.0 ; - RECT 122700.0 347400.0 123900.0 348600.0 ; - RECT 116100.0 353850.0 130500.0 354750.0 ; - RECT 116100.0 339750.0 130500.0 340650.0 ; - RECT 137100.0 352350.0 138300.0 354300.0 ; - RECT 137100.0 340200.0 138300.0 342450.0 ; - RECT 132300.0 341550.0 133500.0 339750.0 ; - RECT 132300.0 351150.0 133500.0 354750.0 ; - RECT 135000.0 342750.0 135900.0 351150.0 ; - RECT 132300.0 351150.0 133500.0 352350.0 ; - RECT 134700.0 351150.0 135900.0 352350.0 ; - RECT 134700.0 351150.0 135900.0 352350.0 ; - RECT 132300.0 351150.0 133500.0 352350.0 ; - RECT 132300.0 341550.0 133500.0 342750.0 ; - RECT 134700.0 341550.0 135900.0 342750.0 ; - RECT 134700.0 341550.0 135900.0 342750.0 ; - RECT 132300.0 341550.0 133500.0 342750.0 ; - RECT 137100.0 351750.0 138300.0 352950.0 ; - RECT 137100.0 341850.0 138300.0 343050.0 ; - RECT 132900.0 346050.0 134100.0 347250.0 ; - RECT 132900.0 346050.0 134100.0 347250.0 ; - RECT 135450.0 346200.0 136350.0 347100.0 ; - RECT 130500.0 353850.0 140100.0 354750.0 ; - RECT 130500.0 339750.0 140100.0 340650.0 ; - RECT 102750.0 346050.0 103950.0 347250.0 ; - RECT 104700.0 343800.0 105900.0 345000.0 ; - RECT 121500.0 344700.0 120300.0 345900.0 ; - RECT 113100.0 356250.0 114300.0 354300.0 ; - RECT 113100.0 368400.0 114300.0 366150.0 ; - RECT 108300.0 367050.0 109500.0 368850.0 ; - RECT 108300.0 357450.0 109500.0 353850.0 ; - RECT 111000.0 365850.0 111900.0 357450.0 ; - RECT 108300.0 357450.0 109500.0 356250.0 ; - RECT 110700.0 357450.0 111900.0 356250.0 ; - RECT 110700.0 357450.0 111900.0 356250.0 ; - RECT 108300.0 357450.0 109500.0 356250.0 ; - RECT 108300.0 367050.0 109500.0 365850.0 ; - RECT 110700.0 367050.0 111900.0 365850.0 ; - RECT 110700.0 367050.0 111900.0 365850.0 ; - RECT 108300.0 367050.0 109500.0 365850.0 ; - RECT 113100.0 356850.0 114300.0 355650.0 ; - RECT 113100.0 366750.0 114300.0 365550.0 ; - RECT 108900.0 362550.0 110100.0 361350.0 ; - RECT 108900.0 362550.0 110100.0 361350.0 ; - RECT 111450.0 362400.0 112350.0 361500.0 ; - RECT 106500.0 354750.0 116100.0 353850.0 ; - RECT 106500.0 368850.0 116100.0 367950.0 ; - RECT 117900.0 366450.0 119100.0 368850.0 ; - RECT 117900.0 357450.0 119100.0 353850.0 ; - RECT 122700.0 357450.0 123900.0 353850.0 ; - RECT 125100.0 356250.0 126300.0 354300.0 ; - RECT 125100.0 368400.0 126300.0 366150.0 ; - RECT 117900.0 357450.0 119100.0 356250.0 ; - RECT 120300.0 357450.0 121500.0 356250.0 ; - RECT 120300.0 357450.0 121500.0 356250.0 ; - RECT 117900.0 357450.0 119100.0 356250.0 ; - RECT 120300.0 357450.0 121500.0 356250.0 ; - RECT 122700.0 357450.0 123900.0 356250.0 ; - RECT 122700.0 357450.0 123900.0 356250.0 ; - RECT 120300.0 357450.0 121500.0 356250.0 ; - RECT 117900.0 366450.0 119100.0 365250.0 ; - RECT 120300.0 366450.0 121500.0 365250.0 ; - RECT 120300.0 366450.0 121500.0 365250.0 ; - RECT 117900.0 366450.0 119100.0 365250.0 ; - RECT 120300.0 366450.0 121500.0 365250.0 ; - RECT 122700.0 366450.0 123900.0 365250.0 ; - RECT 122700.0 366450.0 123900.0 365250.0 ; - RECT 120300.0 366450.0 121500.0 365250.0 ; - RECT 125100.0 356850.0 126300.0 355650.0 ; - RECT 125100.0 366750.0 126300.0 365550.0 ; - RECT 122700.0 363900.0 121500.0 362700.0 ; - RECT 119700.0 361200.0 118500.0 360000.0 ; - RECT 120300.0 357450.0 121500.0 356250.0 ; - RECT 122700.0 366450.0 123900.0 365250.0 ; - RECT 123900.0 361200.0 122700.0 360000.0 ; - RECT 118500.0 361200.0 119700.0 360000.0 ; - RECT 121500.0 363900.0 122700.0 362700.0 ; - RECT 122700.0 361200.0 123900.0 360000.0 ; - RECT 116100.0 354750.0 130500.0 353850.0 ; - RECT 116100.0 368850.0 130500.0 367950.0 ; - RECT 137100.0 356250.0 138300.0 354300.0 ; - RECT 137100.0 368400.0 138300.0 366150.0 ; - RECT 132300.0 367050.0 133500.0 368850.0 ; - RECT 132300.0 357450.0 133500.0 353850.0 ; - RECT 135000.0 365850.0 135900.0 357450.0 ; - RECT 132300.0 357450.0 133500.0 356250.0 ; - RECT 134700.0 357450.0 135900.0 356250.0 ; - RECT 134700.0 357450.0 135900.0 356250.0 ; - RECT 132300.0 357450.0 133500.0 356250.0 ; - RECT 132300.0 367050.0 133500.0 365850.0 ; - RECT 134700.0 367050.0 135900.0 365850.0 ; - RECT 134700.0 367050.0 135900.0 365850.0 ; - RECT 132300.0 367050.0 133500.0 365850.0 ; - RECT 137100.0 356850.0 138300.0 355650.0 ; - RECT 137100.0 366750.0 138300.0 365550.0 ; - RECT 132900.0 362550.0 134100.0 361350.0 ; - RECT 132900.0 362550.0 134100.0 361350.0 ; - RECT 135450.0 362400.0 136350.0 361500.0 ; - RECT 130500.0 354750.0 140100.0 353850.0 ; - RECT 130500.0 368850.0 140100.0 367950.0 ; - RECT 102750.0 361350.0 103950.0 362550.0 ; - RECT 104700.0 363600.0 105900.0 364800.0 ; - RECT 121500.0 362700.0 120300.0 363900.0 ; - RECT 113100.0 380550.0 114300.0 382500.0 ; - RECT 113100.0 368400.0 114300.0 370650.0 ; - RECT 108300.0 369750.0 109500.0 367950.0 ; - RECT 108300.0 379350.0 109500.0 382950.0 ; - RECT 111000.0 370950.0 111900.0 379350.0 ; - RECT 108300.0 379350.0 109500.0 380550.0 ; - RECT 110700.0 379350.0 111900.0 380550.0 ; - RECT 110700.0 379350.0 111900.0 380550.0 ; - RECT 108300.0 379350.0 109500.0 380550.0 ; - RECT 108300.0 369750.0 109500.0 370950.0 ; - RECT 110700.0 369750.0 111900.0 370950.0 ; - RECT 110700.0 369750.0 111900.0 370950.0 ; - RECT 108300.0 369750.0 109500.0 370950.0 ; - RECT 113100.0 379950.0 114300.0 381150.0 ; - RECT 113100.0 370050.0 114300.0 371250.0 ; - RECT 108900.0 374250.0 110100.0 375450.0 ; - RECT 108900.0 374250.0 110100.0 375450.0 ; - RECT 111450.0 374400.0 112350.0 375300.0 ; - RECT 106500.0 382050.0 116100.0 382950.0 ; - RECT 106500.0 367950.0 116100.0 368850.0 ; - RECT 117900.0 370350.0 119100.0 367950.0 ; - RECT 117900.0 379350.0 119100.0 382950.0 ; - RECT 122700.0 379350.0 123900.0 382950.0 ; - RECT 125100.0 380550.0 126300.0 382500.0 ; - RECT 125100.0 368400.0 126300.0 370650.0 ; - RECT 117900.0 379350.0 119100.0 380550.0 ; - RECT 120300.0 379350.0 121500.0 380550.0 ; - RECT 120300.0 379350.0 121500.0 380550.0 ; - RECT 117900.0 379350.0 119100.0 380550.0 ; - RECT 120300.0 379350.0 121500.0 380550.0 ; - RECT 122700.0 379350.0 123900.0 380550.0 ; - RECT 122700.0 379350.0 123900.0 380550.0 ; - RECT 120300.0 379350.0 121500.0 380550.0 ; - RECT 117900.0 370350.0 119100.0 371550.0 ; - RECT 120300.0 370350.0 121500.0 371550.0 ; - RECT 120300.0 370350.0 121500.0 371550.0 ; - RECT 117900.0 370350.0 119100.0 371550.0 ; - RECT 120300.0 370350.0 121500.0 371550.0 ; - RECT 122700.0 370350.0 123900.0 371550.0 ; - RECT 122700.0 370350.0 123900.0 371550.0 ; - RECT 120300.0 370350.0 121500.0 371550.0 ; - RECT 125100.0 379950.0 126300.0 381150.0 ; - RECT 125100.0 370050.0 126300.0 371250.0 ; - RECT 122700.0 372900.0 121500.0 374100.0 ; - RECT 119700.0 375600.0 118500.0 376800.0 ; - RECT 120300.0 379350.0 121500.0 380550.0 ; - RECT 122700.0 370350.0 123900.0 371550.0 ; - RECT 123900.0 375600.0 122700.0 376800.0 ; - RECT 118500.0 375600.0 119700.0 376800.0 ; - RECT 121500.0 372900.0 122700.0 374100.0 ; - RECT 122700.0 375600.0 123900.0 376800.0 ; - RECT 116100.0 382050.0 130500.0 382950.0 ; - RECT 116100.0 367950.0 130500.0 368850.0 ; - RECT 137100.0 380550.0 138300.0 382500.0 ; - RECT 137100.0 368400.0 138300.0 370650.0 ; - RECT 132300.0 369750.0 133500.0 367950.0 ; - RECT 132300.0 379350.0 133500.0 382950.0 ; - RECT 135000.0 370950.0 135900.0 379350.0 ; - RECT 132300.0 379350.0 133500.0 380550.0 ; - RECT 134700.0 379350.0 135900.0 380550.0 ; - RECT 134700.0 379350.0 135900.0 380550.0 ; - RECT 132300.0 379350.0 133500.0 380550.0 ; - RECT 132300.0 369750.0 133500.0 370950.0 ; - RECT 134700.0 369750.0 135900.0 370950.0 ; - RECT 134700.0 369750.0 135900.0 370950.0 ; - RECT 132300.0 369750.0 133500.0 370950.0 ; - RECT 137100.0 379950.0 138300.0 381150.0 ; - RECT 137100.0 370050.0 138300.0 371250.0 ; - RECT 132900.0 374250.0 134100.0 375450.0 ; - RECT 132900.0 374250.0 134100.0 375450.0 ; - RECT 135450.0 374400.0 136350.0 375300.0 ; - RECT 130500.0 382050.0 140100.0 382950.0 ; - RECT 130500.0 367950.0 140100.0 368850.0 ; - RECT 102750.0 374250.0 103950.0 375450.0 ; - RECT 104700.0 372000.0 105900.0 373200.0 ; - RECT 121500.0 372900.0 120300.0 374100.0 ; - RECT 113100.0 384450.0 114300.0 382500.0 ; - RECT 113100.0 396600.0 114300.0 394350.0 ; - RECT 108300.0 395250.0 109500.0 397050.0 ; - RECT 108300.0 385650.0 109500.0 382050.0 ; - RECT 111000.0 394050.0 111900.0 385650.0 ; - RECT 108300.0 385650.0 109500.0 384450.0 ; - RECT 110700.0 385650.0 111900.0 384450.0 ; - RECT 110700.0 385650.0 111900.0 384450.0 ; - RECT 108300.0 385650.0 109500.0 384450.0 ; - RECT 108300.0 395250.0 109500.0 394050.0 ; - RECT 110700.0 395250.0 111900.0 394050.0 ; - RECT 110700.0 395250.0 111900.0 394050.0 ; - RECT 108300.0 395250.0 109500.0 394050.0 ; - RECT 113100.0 385050.0 114300.0 383850.0 ; - RECT 113100.0 394950.0 114300.0 393750.0 ; - RECT 108900.0 390750.0 110100.0 389550.0 ; - RECT 108900.0 390750.0 110100.0 389550.0 ; - RECT 111450.0 390600.0 112350.0 389700.0 ; - RECT 106500.0 382950.0 116100.0 382050.0 ; - RECT 106500.0 397050.0 116100.0 396150.0 ; - RECT 117900.0 394650.0 119100.0 397050.0 ; - RECT 117900.0 385650.0 119100.0 382050.0 ; - RECT 122700.0 385650.0 123900.0 382050.0 ; - RECT 125100.0 384450.0 126300.0 382500.0 ; - RECT 125100.0 396600.0 126300.0 394350.0 ; - RECT 117900.0 385650.0 119100.0 384450.0 ; - RECT 120300.0 385650.0 121500.0 384450.0 ; - RECT 120300.0 385650.0 121500.0 384450.0 ; - RECT 117900.0 385650.0 119100.0 384450.0 ; - RECT 120300.0 385650.0 121500.0 384450.0 ; - RECT 122700.0 385650.0 123900.0 384450.0 ; - RECT 122700.0 385650.0 123900.0 384450.0 ; - RECT 120300.0 385650.0 121500.0 384450.0 ; - RECT 117900.0 394650.0 119100.0 393450.0 ; - RECT 120300.0 394650.0 121500.0 393450.0 ; - RECT 120300.0 394650.0 121500.0 393450.0 ; - RECT 117900.0 394650.0 119100.0 393450.0 ; - RECT 120300.0 394650.0 121500.0 393450.0 ; - RECT 122700.0 394650.0 123900.0 393450.0 ; - RECT 122700.0 394650.0 123900.0 393450.0 ; - RECT 120300.0 394650.0 121500.0 393450.0 ; - RECT 125100.0 385050.0 126300.0 383850.0 ; - RECT 125100.0 394950.0 126300.0 393750.0 ; - RECT 122700.0 392100.0 121500.0 390900.0 ; - RECT 119700.0 389400.0 118500.0 388200.0 ; - RECT 120300.0 385650.0 121500.0 384450.0 ; - RECT 122700.0 394650.0 123900.0 393450.0 ; - RECT 123900.0 389400.0 122700.0 388200.0 ; - RECT 118500.0 389400.0 119700.0 388200.0 ; - RECT 121500.0 392100.0 122700.0 390900.0 ; - RECT 122700.0 389400.0 123900.0 388200.0 ; - RECT 116100.0 382950.0 130500.0 382050.0 ; - RECT 116100.0 397050.0 130500.0 396150.0 ; - RECT 137100.0 384450.0 138300.0 382500.0 ; - RECT 137100.0 396600.0 138300.0 394350.0 ; - RECT 132300.0 395250.0 133500.0 397050.0 ; - RECT 132300.0 385650.0 133500.0 382050.0 ; - RECT 135000.0 394050.0 135900.0 385650.0 ; - RECT 132300.0 385650.0 133500.0 384450.0 ; - RECT 134700.0 385650.0 135900.0 384450.0 ; - RECT 134700.0 385650.0 135900.0 384450.0 ; - RECT 132300.0 385650.0 133500.0 384450.0 ; - RECT 132300.0 395250.0 133500.0 394050.0 ; - RECT 134700.0 395250.0 135900.0 394050.0 ; - RECT 134700.0 395250.0 135900.0 394050.0 ; - RECT 132300.0 395250.0 133500.0 394050.0 ; - RECT 137100.0 385050.0 138300.0 383850.0 ; - RECT 137100.0 394950.0 138300.0 393750.0 ; - RECT 132900.0 390750.0 134100.0 389550.0 ; - RECT 132900.0 390750.0 134100.0 389550.0 ; - RECT 135450.0 390600.0 136350.0 389700.0 ; - RECT 130500.0 382950.0 140100.0 382050.0 ; - RECT 130500.0 397050.0 140100.0 396150.0 ; - RECT 102750.0 389550.0 103950.0 390750.0 ; - RECT 104700.0 391800.0 105900.0 393000.0 ; - RECT 121500.0 390900.0 120300.0 392100.0 ; - RECT 113100.0 408750.0 114300.0 410700.0 ; - RECT 113100.0 396600.0 114300.0 398850.0 ; - RECT 108300.0 397950.0 109500.0 396150.0 ; - RECT 108300.0 407550.0 109500.0 411150.0 ; - RECT 111000.0 399150.0 111900.0 407550.0 ; - RECT 108300.0 407550.0 109500.0 408750.0 ; - RECT 110700.0 407550.0 111900.0 408750.0 ; - RECT 110700.0 407550.0 111900.0 408750.0 ; - RECT 108300.0 407550.0 109500.0 408750.0 ; - RECT 108300.0 397950.0 109500.0 399150.0 ; - RECT 110700.0 397950.0 111900.0 399150.0 ; - RECT 110700.0 397950.0 111900.0 399150.0 ; - RECT 108300.0 397950.0 109500.0 399150.0 ; - RECT 113100.0 408150.0 114300.0 409350.0 ; - RECT 113100.0 398250.0 114300.0 399450.0 ; - RECT 108900.0 402450.0 110100.0 403650.0 ; - RECT 108900.0 402450.0 110100.0 403650.0 ; - RECT 111450.0 402600.0 112350.0 403500.0 ; - RECT 106500.0 410250.0 116100.0 411150.0 ; - RECT 106500.0 396150.0 116100.0 397050.0 ; - RECT 117900.0 398550.0 119100.0 396150.0 ; - RECT 117900.0 407550.0 119100.0 411150.0 ; - RECT 122700.0 407550.0 123900.0 411150.0 ; - RECT 125100.0 408750.0 126300.0 410700.0 ; - RECT 125100.0 396600.0 126300.0 398850.0 ; - RECT 117900.0 407550.0 119100.0 408750.0 ; - RECT 120300.0 407550.0 121500.0 408750.0 ; - RECT 120300.0 407550.0 121500.0 408750.0 ; - RECT 117900.0 407550.0 119100.0 408750.0 ; - RECT 120300.0 407550.0 121500.0 408750.0 ; - RECT 122700.0 407550.0 123900.0 408750.0 ; - RECT 122700.0 407550.0 123900.0 408750.0 ; - RECT 120300.0 407550.0 121500.0 408750.0 ; - RECT 117900.0 398550.0 119100.0 399750.0 ; - RECT 120300.0 398550.0 121500.0 399750.0 ; - RECT 120300.0 398550.0 121500.0 399750.0 ; - RECT 117900.0 398550.0 119100.0 399750.0 ; - RECT 120300.0 398550.0 121500.0 399750.0 ; - RECT 122700.0 398550.0 123900.0 399750.0 ; - RECT 122700.0 398550.0 123900.0 399750.0 ; - RECT 120300.0 398550.0 121500.0 399750.0 ; - RECT 125100.0 408150.0 126300.0 409350.0 ; - RECT 125100.0 398250.0 126300.0 399450.0 ; - RECT 122700.0 401100.0 121500.0 402300.0 ; - RECT 119700.0 403800.0 118500.0 405000.0 ; - RECT 120300.0 407550.0 121500.0 408750.0 ; - RECT 122700.0 398550.0 123900.0 399750.0 ; - RECT 123900.0 403800.0 122700.0 405000.0 ; - RECT 118500.0 403800.0 119700.0 405000.0 ; - RECT 121500.0 401100.0 122700.0 402300.0 ; - RECT 122700.0 403800.0 123900.0 405000.0 ; - RECT 116100.0 410250.0 130500.0 411150.0 ; - RECT 116100.0 396150.0 130500.0 397050.0 ; - RECT 137100.0 408750.0 138300.0 410700.0 ; - RECT 137100.0 396600.0 138300.0 398850.0 ; - RECT 132300.0 397950.0 133500.0 396150.0 ; - RECT 132300.0 407550.0 133500.0 411150.0 ; - RECT 135000.0 399150.0 135900.0 407550.0 ; - RECT 132300.0 407550.0 133500.0 408750.0 ; - RECT 134700.0 407550.0 135900.0 408750.0 ; - RECT 134700.0 407550.0 135900.0 408750.0 ; - RECT 132300.0 407550.0 133500.0 408750.0 ; - RECT 132300.0 397950.0 133500.0 399150.0 ; - RECT 134700.0 397950.0 135900.0 399150.0 ; - RECT 134700.0 397950.0 135900.0 399150.0 ; - RECT 132300.0 397950.0 133500.0 399150.0 ; - RECT 137100.0 408150.0 138300.0 409350.0 ; - RECT 137100.0 398250.0 138300.0 399450.0 ; - RECT 132900.0 402450.0 134100.0 403650.0 ; - RECT 132900.0 402450.0 134100.0 403650.0 ; - RECT 135450.0 402600.0 136350.0 403500.0 ; - RECT 130500.0 410250.0 140100.0 411150.0 ; - RECT 130500.0 396150.0 140100.0 397050.0 ; - RECT 102750.0 402450.0 103950.0 403650.0 ; - RECT 104700.0 400200.0 105900.0 401400.0 ; - RECT 121500.0 401100.0 120300.0 402300.0 ; - RECT 113100.0 412650.0 114300.0 410700.0 ; - RECT 113100.0 424800.0 114300.0 422550.0 ; - RECT 108300.0 423450.0 109500.0 425250.0 ; - RECT 108300.0 413850.0 109500.0 410250.0 ; - RECT 111000.0 422250.0 111900.0 413850.0 ; - RECT 108300.0 413850.0 109500.0 412650.0 ; - RECT 110700.0 413850.0 111900.0 412650.0 ; - RECT 110700.0 413850.0 111900.0 412650.0 ; - RECT 108300.0 413850.0 109500.0 412650.0 ; - RECT 108300.0 423450.0 109500.0 422250.0 ; - RECT 110700.0 423450.0 111900.0 422250.0 ; - RECT 110700.0 423450.0 111900.0 422250.0 ; - RECT 108300.0 423450.0 109500.0 422250.0 ; - RECT 113100.0 413250.0 114300.0 412050.0 ; - RECT 113100.0 423150.0 114300.0 421950.0 ; - RECT 108900.0 418950.0 110100.0 417750.0 ; - RECT 108900.0 418950.0 110100.0 417750.0 ; - RECT 111450.0 418800.0 112350.0 417900.0 ; - RECT 106500.0 411150.0 116100.0 410250.0 ; - RECT 106500.0 425250.0 116100.0 424350.0 ; - RECT 117900.0 422850.0 119100.0 425250.0 ; - RECT 117900.0 413850.0 119100.0 410250.0 ; - RECT 122700.0 413850.0 123900.0 410250.0 ; - RECT 125100.0 412650.0 126300.0 410700.0 ; - RECT 125100.0 424800.0 126300.0 422550.0 ; - RECT 117900.0 413850.0 119100.0 412650.0 ; - RECT 120300.0 413850.0 121500.0 412650.0 ; - RECT 120300.0 413850.0 121500.0 412650.0 ; - RECT 117900.0 413850.0 119100.0 412650.0 ; - RECT 120300.0 413850.0 121500.0 412650.0 ; - RECT 122700.0 413850.0 123900.0 412650.0 ; - RECT 122700.0 413850.0 123900.0 412650.0 ; - RECT 120300.0 413850.0 121500.0 412650.0 ; - RECT 117900.0 422850.0 119100.0 421650.0 ; - RECT 120300.0 422850.0 121500.0 421650.0 ; - RECT 120300.0 422850.0 121500.0 421650.0 ; - RECT 117900.0 422850.0 119100.0 421650.0 ; - RECT 120300.0 422850.0 121500.0 421650.0 ; - RECT 122700.0 422850.0 123900.0 421650.0 ; - RECT 122700.0 422850.0 123900.0 421650.0 ; - RECT 120300.0 422850.0 121500.0 421650.0 ; - RECT 125100.0 413250.0 126300.0 412050.0 ; - RECT 125100.0 423150.0 126300.0 421950.0 ; - RECT 122700.0 420300.0 121500.0 419100.0 ; - RECT 119700.0 417600.0 118500.0 416400.0 ; - RECT 120300.0 413850.0 121500.0 412650.0 ; - RECT 122700.0 422850.0 123900.0 421650.0 ; - RECT 123900.0 417600.0 122700.0 416400.0 ; - RECT 118500.0 417600.0 119700.0 416400.0 ; - RECT 121500.0 420300.0 122700.0 419100.0 ; - RECT 122700.0 417600.0 123900.0 416400.0 ; - RECT 116100.0 411150.0 130500.0 410250.0 ; - RECT 116100.0 425250.0 130500.0 424350.0 ; - RECT 137100.0 412650.0 138300.0 410700.0 ; - RECT 137100.0 424800.0 138300.0 422550.0 ; - RECT 132300.0 423450.0 133500.0 425250.0 ; - RECT 132300.0 413850.0 133500.0 410250.0 ; - RECT 135000.0 422250.0 135900.0 413850.0 ; - RECT 132300.0 413850.0 133500.0 412650.0 ; - RECT 134700.0 413850.0 135900.0 412650.0 ; - RECT 134700.0 413850.0 135900.0 412650.0 ; - RECT 132300.0 413850.0 133500.0 412650.0 ; - RECT 132300.0 423450.0 133500.0 422250.0 ; - RECT 134700.0 423450.0 135900.0 422250.0 ; - RECT 134700.0 423450.0 135900.0 422250.0 ; - RECT 132300.0 423450.0 133500.0 422250.0 ; - RECT 137100.0 413250.0 138300.0 412050.0 ; - RECT 137100.0 423150.0 138300.0 421950.0 ; - RECT 132900.0 418950.0 134100.0 417750.0 ; - RECT 132900.0 418950.0 134100.0 417750.0 ; - RECT 135450.0 418800.0 136350.0 417900.0 ; - RECT 130500.0 411150.0 140100.0 410250.0 ; - RECT 130500.0 425250.0 140100.0 424350.0 ; - RECT 102750.0 417750.0 103950.0 418950.0 ; - RECT 104700.0 420000.0 105900.0 421200.0 ; - RECT 121500.0 419100.0 120300.0 420300.0 ; - RECT 100200.0 202950.0 105300.0 203850.0 ; - RECT 100200.0 222750.0 105300.0 223650.0 ; - RECT 100200.0 231150.0 105300.0 232050.0 ; - RECT 100200.0 250950.0 105300.0 251850.0 ; - RECT 100200.0 259350.0 105300.0 260250.0 ; - RECT 100200.0 279150.0 105300.0 280050.0 ; - RECT 100200.0 287550.0 105300.0 288450.0 ; - RECT 100200.0 307350.0 105300.0 308250.0 ; - RECT 100200.0 315750.0 105300.0 316650.0 ; - RECT 100200.0 335550.0 105300.0 336450.0 ; - RECT 100200.0 343950.0 105300.0 344850.0 ; - RECT 100200.0 363750.0 105300.0 364650.0 ; - RECT 100200.0 372150.0 105300.0 373050.0 ; - RECT 100200.0 391950.0 105300.0 392850.0 ; - RECT 100200.0 400350.0 105300.0 401250.0 ; - RECT 100200.0 420150.0 105300.0 421050.0 ; - RECT 135450.0 205200.0 136350.0 206100.0 ; - RECT 135450.0 220500.0 136350.0 221400.0 ; - RECT 135450.0 233400.0 136350.0 234300.0 ; - RECT 135450.0 248700.0 136350.0 249600.0 ; - RECT 135450.0 261600.0 136350.0 262500.0 ; - RECT 135450.0 276900.0 136350.0 277800.0 ; - RECT 135450.0 289800.0 136350.0 290700.0 ; - RECT 135450.0 305100.0 136350.0 306000.0 ; - RECT 135450.0 318000.0 136350.0 318900.0 ; - RECT 135450.0 333300.0 136350.0 334200.0 ; - RECT 135450.0 346200.0 136350.0 347100.0 ; - RECT 135450.0 361500.0 136350.0 362400.0 ; - RECT 135450.0 374400.0 136350.0 375300.0 ; - RECT 135450.0 389700.0 136350.0 390600.0 ; - RECT 135450.0 402600.0 136350.0 403500.0 ; - RECT 135450.0 417900.0 136350.0 418800.0 ; - RECT 100200.0 212850.0 106500.0 213750.0 ; - RECT 100200.0 241050.0 106500.0 241950.0 ; - RECT 100200.0 269250.0 106500.0 270150.0 ; - RECT 100200.0 297450.0 106500.0 298350.0 ; - RECT 100200.0 325650.0 106500.0 326550.0 ; - RECT 100200.0 353850.0 106500.0 354750.0 ; - RECT 100200.0 382050.0 106500.0 382950.0 ; - RECT 100200.0 410250.0 106500.0 411150.0 ; - RECT 100200.0 198750.0 106500.0 199650.0 ; - RECT 100200.0 226950.0 106500.0 227850.0 ; - RECT 100200.0 255150.0 106500.0 256050.0 ; - RECT 100200.0 283350.0 106500.0 284250.0 ; - RECT 100200.0 311550.0 106500.0 312450.0 ; - RECT 100200.0 339750.0 106500.0 340650.0 ; - RECT 100200.0 367950.0 106500.0 368850.0 ; - RECT 100200.0 396150.0 106500.0 397050.0 ; - RECT 100200.0 424350.0 106500.0 425250.0 ; - RECT 59400.0 81000.0 119400.0 70800.0 ; - RECT 59400.0 60600.0 119400.0 70800.0 ; - RECT 59400.0 60600.0 119400.0 50400.0 ; - RECT 59400.0 40200.0 119400.0 50400.0 ; - RECT 61800.0 81000.0 62700.0 40200.0 ; - RECT 115800.0 81000.0 116700.0 40200.0 ; - RECT 148350.0 199800.0 149550.0 198600.0 ; - RECT 148350.0 228000.0 149550.0 226800.0 ; - RECT 148350.0 256200.0 149550.0 255000.0 ; - RECT 148350.0 284400.0 149550.0 283200.0 ; - RECT 148350.0 312600.0 149550.0 311400.0 ; - RECT 148350.0 340800.0 149550.0 339600.0 ; - RECT 148350.0 369000.0 149550.0 367800.0 ; - RECT 148350.0 397200.0 149550.0 396000.0 ; - RECT 148350.0 425400.0 149550.0 424200.0 ; - RECT 130800.0 88650.0 129600.0 89850.0 ; - RECT 135900.0 88500.0 134700.0 89700.0 ; - RECT 127800.0 102750.0 126600.0 103950.0 ; - RECT 138600.0 102600.0 137400.0 103800.0 ; - RECT 130800.0 145050.0 129600.0 146250.0 ; - RECT 141300.0 144900.0 140100.0 146100.0 ; - RECT 127800.0 159150.0 126600.0 160350.0 ; - RECT 144000.0 159000.0 142800.0 160200.0 ; - RECT 132900.0 85800.0 131700.0 87000.0 ; - RECT 132900.0 114000.0 131700.0 115200.0 ; - RECT 132900.0 142200.0 131700.0 143400.0 ; - RECT 132900.0 170400.0 131700.0 171600.0 ; - RECT 120000.0 75300.0 118800.0 76500.0 ; - RECT 135900.0 75300.0 134700.0 76500.0 ; - RECT 120000.0 65100.0 118800.0 66300.0 ; - RECT 138600.0 65100.0 137400.0 66300.0 ; - RECT 120000.0 54900.0 118800.0 56100.0 ; - RECT 141300.0 54900.0 140100.0 56100.0 ; - RECT 120000.0 44700.0 118800.0 45900.0 ; - RECT 144000.0 44700.0 142800.0 45900.0 ; - RECT 120600.0 70200.0 119400.0 71400.0 ; - RECT 149550.0 70350.0 148350.0 71550.0 ; - RECT 120600.0 49800.0 119400.0 51000.0 ; - RECT 149550.0 49950.0 148350.0 51150.0 ; - RECT 164700.0 32250.0 163500.0 33450.0 ; - RECT 159300.0 27750.0 158100.0 28950.0 ; - RECT 162000.0 25350.0 160800.0 26550.0 ; - RECT 164700.0 429450.0 163500.0 430650.0 ; - RECT 167400.0 96750.0 166200.0 97950.0 ; - RECT 170100.0 194850.0 168900.0 196050.0 ; - RECT 156600.0 82500.0 155400.0 83700.0 ; - RECT 103950.0 426300.0 102750.0 427500.0 ; - RECT 156600.0 426300.0 155400.0 427500.0 ; - RECT 152850.0 23400.0 151650.0 24600.0 ; - RECT 152850.0 192900.0 151650.0 194100.0 ; - RECT 152850.0 94800.0 151650.0 96000.0 ; - RECT 198900.0 0.0 203400.0 444600.0 ; - RECT 53100.0 0.0 57600.0 444600.0 ; - RECT 44250.0 207150.0 43350.0 208050.0 ; - RECT 43800.0 207150.0 43650.0 208050.0 ; - RECT 44250.0 207600.0 43350.0 217200.0 ; - RECT 44400.0 223950.0 43500.0 224850.0 ; - RECT 43950.0 223950.0 43800.0 224850.0 ; - RECT 44400.0 224400.0 43500.0 231600.0 ; - RECT 44400.0 243600.0 43500.0 250800.0 ; + RECT 54600.0 295650.0 55500.0 298350.0 ; + RECT 97500.0 205350.0 98400.0 206250.0 ; + RECT 97500.0 202950.0 98400.0 203850.0 ; + RECT 96150.0 205350.0 97950.0 206250.0 ; + RECT 97500.0 203400.0 98400.0 205800.0 ; + RECT 97950.0 202950.0 99900.0 203850.0 ; + RECT 154950.0 205350.0 155850.0 206250.0 ; + RECT 154950.0 200850.0 155850.0 201750.0 ; + RECT 136050.0 205350.0 155400.0 206250.0 ; + RECT 154950.0 201300.0 155850.0 205800.0 ; + RECT 155400.0 200850.0 174900.0 201750.0 ; + RECT 97500.0 219750.0 98400.0 220650.0 ; + RECT 97500.0 222150.0 98400.0 223050.0 ; + RECT 96150.0 219750.0 97950.0 220650.0 ; + RECT 97500.0 220200.0 98400.0 222600.0 ; + RECT 97950.0 222150.0 99900.0 223050.0 ; + RECT 154950.0 219750.0 155850.0 220650.0 ; + RECT 154950.0 224250.0 155850.0 225150.0 ; + RECT 136050.0 219750.0 155400.0 220650.0 ; + RECT 154950.0 220200.0 155850.0 224700.0 ; + RECT 155400.0 224250.0 174900.0 225150.0 ; + RECT 97500.0 232950.0 98400.0 233850.0 ; + RECT 97500.0 230550.0 98400.0 231450.0 ; + RECT 96150.0 232950.0 97950.0 233850.0 ; + RECT 97500.0 231000.0 98400.0 233400.0 ; + RECT 97950.0 230550.0 99900.0 231450.0 ; + RECT 154950.0 232950.0 155850.0 233850.0 ; + RECT 154950.0 228450.0 155850.0 229350.0 ; + RECT 136050.0 232950.0 155400.0 233850.0 ; + RECT 154950.0 228900.0 155850.0 233400.0 ; + RECT 155400.0 228450.0 174900.0 229350.0 ; + RECT 97500.0 247350.0 98400.0 248250.0 ; + RECT 97500.0 249750.0 98400.0 250650.0 ; + RECT 96150.0 247350.0 97950.0 248250.0 ; + RECT 97500.0 247800.0 98400.0 250200.0 ; + RECT 97950.0 249750.0 99900.0 250650.0 ; + RECT 154950.0 247350.0 155850.0 248250.0 ; + RECT 154950.0 251850.0 155850.0 252750.0 ; + RECT 136050.0 247350.0 155400.0 248250.0 ; + RECT 154950.0 247800.0 155850.0 252300.0 ; + RECT 155400.0 251850.0 174900.0 252750.0 ; + RECT 97500.0 260550.0 98400.0 261450.0 ; + RECT 97500.0 258150.0 98400.0 259050.0 ; + RECT 96150.0 260550.0 97950.0 261450.0 ; + RECT 97500.0 258600.0 98400.0 261000.0 ; + RECT 97950.0 258150.0 99900.0 259050.0 ; + RECT 154950.0 260550.0 155850.0 261450.0 ; + RECT 154950.0 256050.0 155850.0 256950.0 ; + RECT 136050.0 260550.0 155400.0 261450.0 ; + RECT 154950.0 256500.0 155850.0 261000.0 ; + RECT 155400.0 256050.0 174900.0 256950.0 ; + RECT 97500.0 274950.0 98400.0 275850.0 ; + RECT 97500.0 277350.0 98400.0 278250.0 ; + RECT 96150.0 274950.0 97950.0 275850.0 ; + RECT 97500.0 275400.0 98400.0 277800.0 ; + RECT 97950.0 277350.0 99900.0 278250.0 ; + RECT 154950.0 274950.0 155850.0 275850.0 ; + RECT 154950.0 279450.0 155850.0 280350.0 ; + RECT 136050.0 274950.0 155400.0 275850.0 ; + RECT 154950.0 275400.0 155850.0 279900.0 ; + RECT 155400.0 279450.0 174900.0 280350.0 ; + RECT 97500.0 288150.0 98400.0 289050.0 ; + RECT 97500.0 285750.0 98400.0 286650.0 ; + RECT 96150.0 288150.0 97950.0 289050.0 ; + RECT 97500.0 286200.0 98400.0 288600.0 ; + RECT 97950.0 285750.0 99900.0 286650.0 ; + RECT 154950.0 288150.0 155850.0 289050.0 ; + RECT 154950.0 283650.0 155850.0 284550.0 ; + RECT 136050.0 288150.0 155400.0 289050.0 ; + RECT 154950.0 284100.0 155850.0 288600.0 ; + RECT 155400.0 283650.0 174900.0 284550.0 ; + RECT 97500.0 302550.0 98400.0 303450.0 ; + RECT 97500.0 304950.0 98400.0 305850.0 ; + RECT 96150.0 302550.0 97950.0 303450.0 ; + RECT 97500.0 303000.0 98400.0 305400.0 ; + RECT 97950.0 304950.0 99900.0 305850.0 ; + RECT 154950.0 302550.0 155850.0 303450.0 ; + RECT 154950.0 307050.0 155850.0 307950.0 ; + RECT 136050.0 302550.0 155400.0 303450.0 ; + RECT 154950.0 303000.0 155850.0 307500.0 ; + RECT 155400.0 307050.0 174900.0 307950.0 ; + RECT 97500.0 315750.0 98400.0 316650.0 ; + RECT 97500.0 313350.0 98400.0 314250.0 ; + RECT 96150.0 315750.0 97950.0 316650.0 ; + RECT 97500.0 313800.0 98400.0 316200.0 ; + RECT 97950.0 313350.0 99900.0 314250.0 ; + RECT 154950.0 315750.0 155850.0 316650.0 ; + RECT 154950.0 311250.0 155850.0 312150.0 ; + RECT 136050.0 315750.0 155400.0 316650.0 ; + RECT 154950.0 311700.0 155850.0 316200.0 ; + RECT 155400.0 311250.0 174900.0 312150.0 ; + RECT 97500.0 330150.0 98400.0 331050.0 ; + RECT 97500.0 332550.0 98400.0 333450.0 ; + RECT 96150.0 330150.0 97950.0 331050.0 ; + RECT 97500.0 330600.0 98400.0 333000.0 ; + RECT 97950.0 332550.0 99900.0 333450.0 ; + RECT 154950.0 330150.0 155850.0 331050.0 ; + RECT 154950.0 334650.0 155850.0 335550.0 ; + RECT 136050.0 330150.0 155400.0 331050.0 ; + RECT 154950.0 330600.0 155850.0 335100.0 ; + RECT 155400.0 334650.0 174900.0 335550.0 ; + RECT 97500.0 343350.0 98400.0 344250.0 ; + RECT 97500.0 340950.0 98400.0 341850.0 ; + RECT 96150.0 343350.0 97950.0 344250.0 ; + RECT 97500.0 341400.0 98400.0 343800.0 ; + RECT 97950.0 340950.0 99900.0 341850.0 ; + RECT 154950.0 343350.0 155850.0 344250.0 ; + RECT 154950.0 338850.0 155850.0 339750.0 ; + RECT 136050.0 343350.0 155400.0 344250.0 ; + RECT 154950.0 339300.0 155850.0 343800.0 ; + RECT 155400.0 338850.0 174900.0 339750.0 ; + RECT 97500.0 357750.0 98400.0 358650.0 ; + RECT 97500.0 360150.0 98400.0 361050.0 ; + RECT 96150.0 357750.0 97950.0 358650.0 ; + RECT 97500.0 358200.0 98400.0 360600.0 ; + RECT 97950.0 360150.0 99900.0 361050.0 ; + RECT 154950.0 357750.0 155850.0 358650.0 ; + RECT 154950.0 362250.0 155850.0 363150.0 ; + RECT 136050.0 357750.0 155400.0 358650.0 ; + RECT 154950.0 358200.0 155850.0 362700.0 ; + RECT 155400.0 362250.0 174900.0 363150.0 ; + RECT 97500.0 370950.0 98400.0 371850.0 ; + RECT 97500.0 368550.0 98400.0 369450.0 ; + RECT 96150.0 370950.0 97950.0 371850.0 ; + RECT 97500.0 369000.0 98400.0 371400.0 ; + RECT 97950.0 368550.0 99900.0 369450.0 ; + RECT 154950.0 370950.0 155850.0 371850.0 ; + RECT 154950.0 366450.0 155850.0 367350.0 ; + RECT 136050.0 370950.0 155400.0 371850.0 ; + RECT 154950.0 366900.0 155850.0 371400.0 ; + RECT 155400.0 366450.0 174900.0 367350.0 ; + RECT 97500.0 385350.0 98400.0 386250.0 ; + RECT 97500.0 387750.0 98400.0 388650.0 ; + RECT 96150.0 385350.0 97950.0 386250.0 ; + RECT 97500.0 385800.0 98400.0 388200.0 ; + RECT 97950.0 387750.0 99900.0 388650.0 ; + RECT 154950.0 385350.0 155850.0 386250.0 ; + RECT 154950.0 389850.0 155850.0 390750.0 ; + RECT 136050.0 385350.0 155400.0 386250.0 ; + RECT 154950.0 385800.0 155850.0 390300.0 ; + RECT 155400.0 389850.0 174900.0 390750.0 ; + RECT 97500.0 398550.0 98400.0 399450.0 ; + RECT 97500.0 396150.0 98400.0 397050.0 ; + RECT 96150.0 398550.0 97950.0 399450.0 ; + RECT 97500.0 396600.0 98400.0 399000.0 ; + RECT 97950.0 396150.0 99900.0 397050.0 ; + RECT 154950.0 398550.0 155850.0 399450.0 ; + RECT 154950.0 394050.0 155850.0 394950.0 ; + RECT 136050.0 398550.0 155400.0 399450.0 ; + RECT 154950.0 394500.0 155850.0 399000.0 ; + RECT 155400.0 394050.0 174900.0 394950.0 ; + RECT 97500.0 412950.0 98400.0 413850.0 ; + RECT 97500.0 415350.0 98400.0 416250.0 ; + RECT 96150.0 412950.0 97950.0 413850.0 ; + RECT 97500.0 413400.0 98400.0 415800.0 ; + RECT 97950.0 415350.0 99900.0 416250.0 ; + RECT 154950.0 412950.0 155850.0 413850.0 ; + RECT 154950.0 417450.0 155850.0 418350.0 ; + RECT 136050.0 412950.0 155400.0 413850.0 ; + RECT 154950.0 413400.0 155850.0 417900.0 ; + RECT 155400.0 417450.0 174900.0 418350.0 ; + RECT 106200.0 198750.0 175500.0 199650.0 ; + RECT 106200.0 226350.0 175500.0 227250.0 ; + RECT 106200.0 253950.0 175500.0 254850.0 ; + RECT 106200.0 281550.0 175500.0 282450.0 ; + RECT 106200.0 309150.0 175500.0 310050.0 ; + RECT 106200.0 336750.0 175500.0 337650.0 ; + RECT 106200.0 364350.0 175500.0 365250.0 ; + RECT 106200.0 391950.0 175500.0 392850.0 ; + RECT 106200.0 419550.0 175500.0 420450.0 ; + RECT 52800.0 212550.0 203100.0 213450.0 ; + RECT 52800.0 240150.0 203100.0 241050.0 ; + RECT 52800.0 267750.0 203100.0 268650.0 ; + RECT 52800.0 295350.0 203100.0 296250.0 ; + RECT 52800.0 322950.0 203100.0 323850.0 ; + RECT 52800.0 350550.0 203100.0 351450.0 ; + RECT 52800.0 378150.0 203100.0 379050.0 ; + RECT 52800.0 405750.0 203100.0 406650.0 ; + RECT 130500.0 91050.0 135000.0 91950.0 ; + RECT 127500.0 104850.0 137700.0 105750.0 ; + RECT 130500.0 146250.0 140400.0 147150.0 ; + RECT 127500.0 160050.0 143100.0 160950.0 ; + RECT 130500.0 88350.0 132000.0 89250.0 ; + RECT 130500.0 115950.0 132000.0 116850.0 ; + RECT 130500.0 143550.0 132000.0 144450.0 ; + RECT 130500.0 171150.0 132000.0 172050.0 ; + RECT 52800.0 102150.0 130500.0 103050.0 ; + RECT 52800.0 129750.0 130500.0 130650.0 ; + RECT 52800.0 157350.0 130500.0 158250.0 ; + RECT 52800.0 184950.0 130500.0 185850.0 ; + RECT 117900.0 77100.0 135000.0 78000.0 ; + RECT 117900.0 68400.0 137700.0 69300.0 ; + RECT 117900.0 56700.0 140400.0 57600.0 ; + RECT 117900.0 48000.0 143100.0 48900.0 ; + RECT 119100.0 72750.0 149250.0 73650.0 ; + RECT 119100.0 52350.0 149250.0 53250.0 ; + RECT 115500.0 40050.0 116400.0 40950.0 ; + RECT 115500.0 40500.0 116400.0 42600.0 ; + RECT 52800.0 40050.0 115950.0 40950.0 ; + RECT 163800.0 32400.0 175500.0 33300.0 ; + RECT 158400.0 27900.0 175500.0 28800.0 ; + RECT 161100.0 25500.0 175500.0 26400.0 ; + RECT 163800.0 424800.0 175500.0 425700.0 ; + RECT 166500.0 96900.0 175500.0 97800.0 ; + RECT 169200.0 195000.0 175500.0 195900.0 ; + RECT 61500.0 85050.0 62400.0 85950.0 ; + RECT 61500.0 83400.0 62400.0 85500.0 ; + RECT 61950.0 85050.0 155700.0 85950.0 ; + RECT 103050.0 421650.0 156600.0 422550.0 ; + RECT 175500.0 435900.0 198600.0 436800.0 ; + RECT 175500.0 167700.0 198600.0 168600.0 ; + RECT 175500.0 99000.0 198600.0 99900.0 ; + RECT 175500.0 86400.0 198600.0 87300.0 ; + RECT 175500.0 9600.0 198600.0 10500.0 ; + RECT 152550.0 23400.0 175500.0 24300.0 ; + RECT 152550.0 192900.0 175500.0 193800.0 ; + RECT 152550.0 94800.0 175500.0 95700.0 ; + RECT 175500.0 199200.0 185700.0 213000.0 ; + RECT 175500.0 226800.0 185700.0 213000.0 ; + RECT 175500.0 226800.0 185700.0 240600.0 ; + RECT 175500.0 254400.0 185700.0 240600.0 ; + RECT 175500.0 254400.0 185700.0 268200.0 ; + RECT 175500.0 282000.0 185700.0 268200.0 ; + RECT 175500.0 282000.0 185700.0 295800.0 ; + RECT 175500.0 309600.0 185700.0 295800.0 ; + RECT 175500.0 309600.0 185700.0 323400.0 ; + RECT 175500.0 337200.0 185700.0 323400.0 ; + RECT 175500.0 337200.0 185700.0 351000.0 ; + RECT 175500.0 364800.0 185700.0 351000.0 ; + RECT 175500.0 364800.0 185700.0 378600.0 ; + RECT 175500.0 392400.0 185700.0 378600.0 ; + RECT 175500.0 392400.0 185700.0 406200.0 ; + RECT 175500.0 420000.0 185700.0 406200.0 ; + RECT 185700.0 199200.0 195900.0 213000.0 ; + RECT 185700.0 226800.0 195900.0 213000.0 ; + RECT 185700.0 226800.0 195900.0 240600.0 ; + RECT 185700.0 254400.0 195900.0 240600.0 ; + RECT 185700.0 254400.0 195900.0 268200.0 ; + RECT 185700.0 282000.0 195900.0 268200.0 ; + RECT 185700.0 282000.0 195900.0 295800.0 ; + RECT 185700.0 309600.0 195900.0 295800.0 ; + RECT 185700.0 309600.0 195900.0 323400.0 ; + RECT 185700.0 337200.0 195900.0 323400.0 ; + RECT 185700.0 337200.0 195900.0 351000.0 ; + RECT 185700.0 364800.0 195900.0 351000.0 ; + RECT 185700.0 364800.0 195900.0 378600.0 ; + RECT 185700.0 392400.0 195900.0 378600.0 ; + RECT 185700.0 392400.0 195900.0 406200.0 ; + RECT 185700.0 420000.0 195900.0 406200.0 ; + RECT 174900.0 200700.0 196500.0 201900.0 ; + RECT 174900.0 224100.0 196500.0 225300.0 ; + RECT 174900.0 228300.0 196500.0 229500.0 ; + RECT 174900.0 251700.0 196500.0 252900.0 ; + RECT 174900.0 255900.0 196500.0 257100.0 ; + RECT 174900.0 279300.0 196500.0 280500.0 ; + RECT 174900.0 283500.0 196500.0 284700.0 ; + RECT 174900.0 306900.0 196500.0 308100.0 ; + RECT 174900.0 311100.0 196500.0 312300.0 ; + RECT 174900.0 334500.0 196500.0 335700.0 ; + RECT 174900.0 338700.0 196500.0 339900.0 ; + RECT 174900.0 362100.0 196500.0 363300.0 ; + RECT 174900.0 366300.0 196500.0 367500.0 ; + RECT 174900.0 389700.0 196500.0 390900.0 ; + RECT 174900.0 393900.0 196500.0 395100.0 ; + RECT 174900.0 417300.0 196500.0 418500.0 ; + RECT 174900.0 212400.0 196500.0 213300.0 ; + RECT 174900.0 240000.0 196500.0 240900.0 ; + RECT 174900.0 267600.0 196500.0 268500.0 ; + RECT 174900.0 295200.0 196500.0 296100.0 ; + RECT 174900.0 322800.0 196500.0 323700.0 ; + RECT 174900.0 350400.0 196500.0 351300.0 ; + RECT 174900.0 378000.0 196500.0 378900.0 ; + RECT 174900.0 405600.0 196500.0 406500.0 ; + RECT 180900.0 429600.0 182100.0 436800.0 ; + RECT 178500.0 422400.0 179700.0 423600.0 ; + RECT 180900.0 422400.0 182100.0 423600.0 ; + RECT 180900.0 422400.0 182100.0 423600.0 ; + RECT 178500.0 422400.0 179700.0 423600.0 ; + RECT 178500.0 429600.0 179700.0 430800.0 ; + RECT 180900.0 429600.0 182100.0 430800.0 ; + RECT 180900.0 429600.0 182100.0 430800.0 ; + RECT 178500.0 429600.0 179700.0 430800.0 ; + RECT 180900.0 429600.0 182100.0 430800.0 ; + RECT 183300.0 429600.0 184500.0 430800.0 ; + RECT 183300.0 429600.0 184500.0 430800.0 ; + RECT 180900.0 429600.0 182100.0 430800.0 ; + RECT 180600.0 424650.0 179400.0 425850.0 ; + RECT 180900.0 435000.0 182100.0 436200.0 ; + RECT 178500.0 422400.0 179700.0 423600.0 ; + RECT 180900.0 422400.0 182100.0 423600.0 ; + RECT 178500.0 429600.0 179700.0 430800.0 ; + RECT 183300.0 429600.0 184500.0 430800.0 ; + RECT 175500.0 424800.0 185700.0 425700.0 ; + RECT 175500.0 435900.0 185700.0 436800.0 ; + RECT 191100.0 429600.0 192300.0 436800.0 ; + RECT 188700.0 422400.0 189900.0 423600.0 ; + RECT 191100.0 422400.0 192300.0 423600.0 ; + RECT 191100.0 422400.0 192300.0 423600.0 ; + RECT 188700.0 422400.0 189900.0 423600.0 ; + RECT 188700.0 429600.0 189900.0 430800.0 ; + RECT 191100.0 429600.0 192300.0 430800.0 ; + RECT 191100.0 429600.0 192300.0 430800.0 ; + RECT 188700.0 429600.0 189900.0 430800.0 ; + RECT 191100.0 429600.0 192300.0 430800.0 ; + RECT 193500.0 429600.0 194700.0 430800.0 ; + RECT 193500.0 429600.0 194700.0 430800.0 ; + RECT 191100.0 429600.0 192300.0 430800.0 ; + RECT 190800.0 424650.0 189600.0 425850.0 ; + RECT 191100.0 435000.0 192300.0 436200.0 ; + RECT 188700.0 422400.0 189900.0 423600.0 ; + RECT 191100.0 422400.0 192300.0 423600.0 ; + RECT 188700.0 429600.0 189900.0 430800.0 ; + RECT 193500.0 429600.0 194700.0 430800.0 ; + RECT 185700.0 424800.0 195900.0 425700.0 ; + RECT 185700.0 435900.0 195900.0 436800.0 ; + RECT 175500.0 424800.0 195900.0 425700.0 ; + RECT 175500.0 435900.0 195900.0 436800.0 ; + RECT 175500.0 150300.0 185700.0 199200.0 ; + RECT 185700.0 150300.0 195900.0 199200.0 ; + RECT 175500.0 195000.0 195900.0 195900.0 ; + RECT 175500.0 167700.0 195900.0 168600.0 ; + RECT 175500.0 192900.0 195900.0 193800.0 ; + RECT 175500.0 90000.0 185700.0 150300.0 ; + RECT 185700.0 90000.0 195900.0 150300.0 ; + RECT 175500.0 96900.0 195900.0 97800.0 ; + RECT 175500.0 99000.0 195900.0 99900.0 ; + RECT 175500.0 94800.0 195900.0 95700.0 ; + RECT 175500.0 30000.0 185700.0 90000.0 ; + RECT 195900.0 30000.0 185700.0 90000.0 ; + RECT 175500.0 32400.0 195900.0 33300.0 ; + RECT 175500.0 86400.0 195900.0 87300.0 ; + RECT 175500.0 30000.0 185700.0 8100.0 ; + RECT 185700.0 30000.0 195900.0 8100.0 ; + RECT 175500.0 26400.0 195900.0 25500.0 ; + RECT 175500.0 28800.0 195900.0 27900.0 ; + RECT 175500.0 10500.0 195900.0 9600.0 ; + RECT 175500.0 24300.0 195900.0 23400.0 ; + RECT 87750.0 206550.0 88650.0 207450.0 ; + RECT 87750.0 205350.0 88650.0 206250.0 ; + RECT 83700.0 206550.0 88200.0 207450.0 ; + RECT 87750.0 205800.0 88650.0 207000.0 ; + RECT 88200.0 205350.0 92700.0 206250.0 ; + RECT 87750.0 218550.0 88650.0 219450.0 ; + RECT 87750.0 219750.0 88650.0 220650.0 ; + RECT 83700.0 218550.0 88200.0 219450.0 ; + RECT 87750.0 219000.0 88650.0 220200.0 ; + RECT 88200.0 219750.0 92700.0 220650.0 ; + RECT 87750.0 234150.0 88650.0 235050.0 ; + RECT 87750.0 232950.0 88650.0 233850.0 ; + RECT 83700.0 234150.0 88200.0 235050.0 ; + RECT 87750.0 233400.0 88650.0 234600.0 ; + RECT 88200.0 232950.0 92700.0 233850.0 ; + RECT 87750.0 246150.0 88650.0 247050.0 ; + RECT 87750.0 247350.0 88650.0 248250.0 ; + RECT 83700.0 246150.0 88200.0 247050.0 ; + RECT 87750.0 246600.0 88650.0 247800.0 ; + RECT 88200.0 247350.0 92700.0 248250.0 ; + RECT 87750.0 261750.0 88650.0 262650.0 ; + RECT 87750.0 260550.0 88650.0 261450.0 ; + RECT 83700.0 261750.0 88200.0 262650.0 ; + RECT 87750.0 261000.0 88650.0 262200.0 ; + RECT 88200.0 260550.0 92700.0 261450.0 ; + RECT 87750.0 273750.0 88650.0 274650.0 ; + RECT 87750.0 274950.0 88650.0 275850.0 ; + RECT 83700.0 273750.0 88200.0 274650.0 ; + RECT 87750.0 274200.0 88650.0 275400.0 ; + RECT 88200.0 274950.0 92700.0 275850.0 ; + RECT 87750.0 289350.0 88650.0 290250.0 ; + RECT 87750.0 288150.0 88650.0 289050.0 ; + RECT 83700.0 289350.0 88200.0 290250.0 ; + RECT 87750.0 288600.0 88650.0 289800.0 ; + RECT 88200.0 288150.0 92700.0 289050.0 ; + RECT 87750.0 301350.0 88650.0 302250.0 ; + RECT 87750.0 302550.0 88650.0 303450.0 ; + RECT 83700.0 301350.0 88200.0 302250.0 ; + RECT 87750.0 301800.0 88650.0 303000.0 ; + RECT 88200.0 302550.0 92700.0 303450.0 ; + RECT 87750.0 316950.0 88650.0 317850.0 ; + RECT 87750.0 315750.0 88650.0 316650.0 ; + RECT 83700.0 316950.0 88200.0 317850.0 ; + RECT 87750.0 316200.0 88650.0 317400.0 ; + RECT 88200.0 315750.0 92700.0 316650.0 ; + RECT 87750.0 328950.0 88650.0 329850.0 ; + RECT 87750.0 330150.0 88650.0 331050.0 ; + RECT 83700.0 328950.0 88200.0 329850.0 ; + RECT 87750.0 329400.0 88650.0 330600.0 ; + RECT 88200.0 330150.0 92700.0 331050.0 ; + RECT 87750.0 344550.0 88650.0 345450.0 ; + RECT 87750.0 343350.0 88650.0 344250.0 ; + RECT 83700.0 344550.0 88200.0 345450.0 ; + RECT 87750.0 343800.0 88650.0 345000.0 ; + RECT 88200.0 343350.0 92700.0 344250.0 ; + RECT 87750.0 356550.0 88650.0 357450.0 ; + RECT 87750.0 357750.0 88650.0 358650.0 ; + RECT 83700.0 356550.0 88200.0 357450.0 ; + RECT 87750.0 357000.0 88650.0 358200.0 ; + RECT 88200.0 357750.0 92700.0 358650.0 ; + RECT 87750.0 372150.0 88650.0 373050.0 ; + RECT 87750.0 370950.0 88650.0 371850.0 ; + RECT 83700.0 372150.0 88200.0 373050.0 ; + RECT 87750.0 371400.0 88650.0 372600.0 ; + RECT 88200.0 370950.0 92700.0 371850.0 ; + RECT 87750.0 384150.0 88650.0 385050.0 ; + RECT 87750.0 385350.0 88650.0 386250.0 ; + RECT 83700.0 384150.0 88200.0 385050.0 ; + RECT 87750.0 384600.0 88650.0 385800.0 ; + RECT 88200.0 385350.0 92700.0 386250.0 ; + RECT 87750.0 399750.0 88650.0 400650.0 ; + RECT 87750.0 398550.0 88650.0 399450.0 ; + RECT 83700.0 399750.0 88200.0 400650.0 ; + RECT 87750.0 399000.0 88650.0 400200.0 ; + RECT 88200.0 398550.0 92700.0 399450.0 ; + RECT 87750.0 411750.0 88650.0 412650.0 ; + RECT 87750.0 412950.0 88650.0 413850.0 ; + RECT 83700.0 411750.0 88200.0 412650.0 ; + RECT 87750.0 412200.0 88650.0 413400.0 ; + RECT 88200.0 412950.0 92700.0 413850.0 ; + RECT 59550.0 94950.0 75900.0 95850.0 ; + RECT 61650.0 109350.0 75900.0 110250.0 ; + RECT 63750.0 122550.0 75900.0 123450.0 ; + RECT 65850.0 136950.0 75900.0 137850.0 ; + RECT 67950.0 150150.0 75900.0 151050.0 ; + RECT 70050.0 164550.0 75900.0 165450.0 ; + RECT 72150.0 177750.0 75900.0 178650.0 ; + RECT 74250.0 192150.0 75900.0 193050.0 ; + RECT 59550.0 206550.0 78300.0 207450.0 ; + RECT 67950.0 203850.0 81300.0 204750.0 ; + RECT 59550.0 218550.0 78300.0 219450.0 ; + RECT 70050.0 221250.0 81300.0 222150.0 ; + RECT 59550.0 234150.0 78300.0 235050.0 ; + RECT 72150.0 231450.0 81300.0 232350.0 ; + RECT 59550.0 246150.0 78300.0 247050.0 ; + RECT 74250.0 248850.0 81300.0 249750.0 ; + RECT 61650.0 261750.0 78300.0 262650.0 ; + RECT 67950.0 259050.0 81300.0 259950.0 ; + RECT 61650.0 273750.0 78300.0 274650.0 ; + RECT 70050.0 276450.0 81300.0 277350.0 ; + RECT 61650.0 289350.0 78300.0 290250.0 ; + RECT 72150.0 286650.0 81300.0 287550.0 ; + RECT 61650.0 301350.0 78300.0 302250.0 ; + RECT 74250.0 304050.0 81300.0 304950.0 ; + RECT 63750.0 316950.0 78300.0 317850.0 ; + RECT 67950.0 314250.0 81300.0 315150.0 ; + RECT 63750.0 328950.0 78300.0 329850.0 ; + RECT 70050.0 331650.0 81300.0 332550.0 ; + RECT 63750.0 344550.0 78300.0 345450.0 ; + RECT 72150.0 341850.0 81300.0 342750.0 ; + RECT 63750.0 356550.0 78300.0 357450.0 ; + RECT 74250.0 359250.0 81300.0 360150.0 ; + RECT 65850.0 372150.0 78300.0 373050.0 ; + RECT 67950.0 369450.0 81300.0 370350.0 ; + RECT 65850.0 384150.0 78300.0 385050.0 ; + RECT 70050.0 386850.0 81300.0 387750.0 ; + RECT 65850.0 399750.0 78300.0 400650.0 ; + RECT 72150.0 397050.0 81300.0 397950.0 ; + RECT 65850.0 411750.0 78300.0 412650.0 ; + RECT 74250.0 414450.0 81300.0 415350.0 ; + RECT 114450.0 94950.0 113550.0 95850.0 ; + RECT 114450.0 99450.0 113550.0 100350.0 ; + RECT 118650.0 94950.0 114000.0 95850.0 ; + RECT 114450.0 95400.0 113550.0 99900.0 ; + RECT 114000.0 99450.0 111450.0 100350.0 ; + RECT 130050.0 94950.0 122100.0 95850.0 ; + RECT 114450.0 109350.0 113550.0 110250.0 ; + RECT 114450.0 113250.0 113550.0 114150.0 ; + RECT 118650.0 109350.0 114000.0 110250.0 ; + RECT 114450.0 109800.0 113550.0 113700.0 ; + RECT 114000.0 113250.0 108450.0 114150.0 ; + RECT 127050.0 109350.0 122100.0 110250.0 ; + RECT 130050.0 118050.0 105450.0 118950.0 ; + RECT 127050.0 131850.0 102450.0 132750.0 ; + RECT 111450.0 93450.0 94500.0 94350.0 ; + RECT 108450.0 96150.0 97500.0 97050.0 ; + RECT 105450.0 110850.0 94500.0 111750.0 ; + RECT 108450.0 108150.0 97500.0 109050.0 ; + RECT 111450.0 121050.0 94500.0 121950.0 ; + RECT 102450.0 123750.0 97500.0 124650.0 ; + RECT 105450.0 138450.0 94500.0 139350.0 ; + RECT 102450.0 135750.0 97500.0 136650.0 ; + RECT 88050.0 96150.0 87150.0 97050.0 ; + RECT 88050.0 94950.0 87150.0 95850.0 ; + RECT 92100.0 96150.0 87600.0 97050.0 ; + RECT 88050.0 95400.0 87150.0 96600.0 ; + RECT 87600.0 94950.0 83100.0 95850.0 ; + RECT 88050.0 108150.0 87150.0 109050.0 ; + RECT 88050.0 109350.0 87150.0 110250.0 ; + RECT 92100.0 108150.0 87600.0 109050.0 ; + RECT 88050.0 108600.0 87150.0 109800.0 ; + RECT 87600.0 109350.0 83100.0 110250.0 ; + RECT 88050.0 123750.0 87150.0 124650.0 ; + RECT 88050.0 122550.0 87150.0 123450.0 ; + RECT 92100.0 123750.0 87600.0 124650.0 ; + RECT 88050.0 123000.0 87150.0 124200.0 ; + RECT 87600.0 122550.0 83100.0 123450.0 ; + RECT 88050.0 135750.0 87150.0 136650.0 ; + RECT 88050.0 136950.0 87150.0 137850.0 ; + RECT 92100.0 135750.0 87600.0 136650.0 ; + RECT 88050.0 136200.0 87150.0 137400.0 ; + RECT 87600.0 136950.0 83100.0 137850.0 ; + RECT 117900.0 100650.0 116700.0 102600.0 ; + RECT 117900.0 88800.0 116700.0 90750.0 ; + RECT 122700.0 90150.0 121500.0 88350.0 ; + RECT 122700.0 99450.0 121500.0 103050.0 ; + RECT 120000.0 90150.0 119100.0 99450.0 ; + RECT 122700.0 99450.0 121500.0 100650.0 ; + RECT 120300.0 99450.0 119100.0 100650.0 ; + RECT 120300.0 99450.0 119100.0 100650.0 ; + RECT 122700.0 99450.0 121500.0 100650.0 ; + RECT 122700.0 90150.0 121500.0 91350.0 ; + RECT 120300.0 90150.0 119100.0 91350.0 ; + RECT 120300.0 90150.0 119100.0 91350.0 ; + RECT 122700.0 90150.0 121500.0 91350.0 ; + RECT 117900.0 100050.0 116700.0 101250.0 ; + RECT 117900.0 90150.0 116700.0 91350.0 ; + RECT 122100.0 94800.0 120900.0 96000.0 ; + RECT 122100.0 94800.0 120900.0 96000.0 ; + RECT 119550.0 94950.0 118650.0 95850.0 ; + RECT 124500.0 102150.0 114900.0 103050.0 ; + RECT 124500.0 88350.0 114900.0 89250.0 ; + RECT 117900.0 104550.0 116700.0 102600.0 ; + RECT 117900.0 116400.0 116700.0 114450.0 ; + RECT 122700.0 115050.0 121500.0 116850.0 ; + RECT 122700.0 105750.0 121500.0 102150.0 ; + RECT 120000.0 115050.0 119100.0 105750.0 ; + RECT 122700.0 105750.0 121500.0 104550.0 ; + RECT 120300.0 105750.0 119100.0 104550.0 ; + RECT 120300.0 105750.0 119100.0 104550.0 ; + RECT 122700.0 105750.0 121500.0 104550.0 ; + RECT 122700.0 115050.0 121500.0 113850.0 ; + RECT 120300.0 115050.0 119100.0 113850.0 ; + RECT 120300.0 115050.0 119100.0 113850.0 ; + RECT 122700.0 115050.0 121500.0 113850.0 ; + RECT 117900.0 105150.0 116700.0 103950.0 ; + RECT 117900.0 115050.0 116700.0 113850.0 ; + RECT 122100.0 110400.0 120900.0 109200.0 ; + RECT 122100.0 110400.0 120900.0 109200.0 ; + RECT 119550.0 110250.0 118650.0 109350.0 ; + RECT 124500.0 103050.0 114900.0 102150.0 ; + RECT 124500.0 116850.0 114900.0 115950.0 ; + RECT 78900.0 100650.0 77700.0 102600.0 ; + RECT 78900.0 88800.0 77700.0 90750.0 ; + RECT 83700.0 90150.0 82500.0 88350.0 ; + RECT 83700.0 99450.0 82500.0 103050.0 ; + RECT 81000.0 90150.0 80100.0 99450.0 ; + RECT 83700.0 99450.0 82500.0 100650.0 ; + RECT 81300.0 99450.0 80100.0 100650.0 ; + RECT 81300.0 99450.0 80100.0 100650.0 ; + RECT 83700.0 99450.0 82500.0 100650.0 ; + RECT 83700.0 90150.0 82500.0 91350.0 ; + RECT 81300.0 90150.0 80100.0 91350.0 ; + RECT 81300.0 90150.0 80100.0 91350.0 ; + RECT 83700.0 90150.0 82500.0 91350.0 ; + RECT 78900.0 100050.0 77700.0 101250.0 ; + RECT 78900.0 90150.0 77700.0 91350.0 ; + RECT 83100.0 94800.0 81900.0 96000.0 ; + RECT 83100.0 94800.0 81900.0 96000.0 ; + RECT 80550.0 94950.0 79650.0 95850.0 ; + RECT 85500.0 102150.0 75900.0 103050.0 ; + RECT 85500.0 88350.0 75900.0 89250.0 ; + RECT 78900.0 104550.0 77700.0 102600.0 ; + RECT 78900.0 116400.0 77700.0 114450.0 ; + RECT 83700.0 115050.0 82500.0 116850.0 ; + RECT 83700.0 105750.0 82500.0 102150.0 ; + RECT 81000.0 115050.0 80100.0 105750.0 ; + RECT 83700.0 105750.0 82500.0 104550.0 ; + RECT 81300.0 105750.0 80100.0 104550.0 ; + RECT 81300.0 105750.0 80100.0 104550.0 ; + RECT 83700.0 105750.0 82500.0 104550.0 ; + RECT 83700.0 115050.0 82500.0 113850.0 ; + RECT 81300.0 115050.0 80100.0 113850.0 ; + RECT 81300.0 115050.0 80100.0 113850.0 ; + RECT 83700.0 115050.0 82500.0 113850.0 ; + RECT 78900.0 105150.0 77700.0 103950.0 ; + RECT 78900.0 115050.0 77700.0 113850.0 ; + RECT 83100.0 110400.0 81900.0 109200.0 ; + RECT 83100.0 110400.0 81900.0 109200.0 ; + RECT 80550.0 110250.0 79650.0 109350.0 ; + RECT 85500.0 103050.0 75900.0 102150.0 ; + RECT 85500.0 116850.0 75900.0 115950.0 ; + RECT 78900.0 128250.0 77700.0 130200.0 ; + RECT 78900.0 116400.0 77700.0 118350.0 ; + RECT 83700.0 117750.0 82500.0 115950.0 ; + RECT 83700.0 127050.0 82500.0 130650.0 ; + RECT 81000.0 117750.0 80100.0 127050.0 ; + RECT 83700.0 127050.0 82500.0 128250.0 ; + RECT 81300.0 127050.0 80100.0 128250.0 ; + RECT 81300.0 127050.0 80100.0 128250.0 ; + RECT 83700.0 127050.0 82500.0 128250.0 ; + RECT 83700.0 117750.0 82500.0 118950.0 ; + RECT 81300.0 117750.0 80100.0 118950.0 ; + RECT 81300.0 117750.0 80100.0 118950.0 ; + RECT 83700.0 117750.0 82500.0 118950.0 ; + RECT 78900.0 127650.0 77700.0 128850.0 ; + RECT 78900.0 117750.0 77700.0 118950.0 ; + RECT 83100.0 122400.0 81900.0 123600.0 ; + RECT 83100.0 122400.0 81900.0 123600.0 ; + RECT 80550.0 122550.0 79650.0 123450.0 ; + RECT 85500.0 129750.0 75900.0 130650.0 ; + RECT 85500.0 115950.0 75900.0 116850.0 ; + RECT 78900.0 132150.0 77700.0 130200.0 ; + RECT 78900.0 144000.0 77700.0 142050.0 ; + RECT 83700.0 142650.0 82500.0 144450.0 ; + RECT 83700.0 133350.0 82500.0 129750.0 ; + RECT 81000.0 142650.0 80100.0 133350.0 ; + RECT 83700.0 133350.0 82500.0 132150.0 ; + RECT 81300.0 133350.0 80100.0 132150.0 ; + RECT 81300.0 133350.0 80100.0 132150.0 ; + RECT 83700.0 133350.0 82500.0 132150.0 ; + RECT 83700.0 142650.0 82500.0 141450.0 ; + RECT 81300.0 142650.0 80100.0 141450.0 ; + RECT 81300.0 142650.0 80100.0 141450.0 ; + RECT 83700.0 142650.0 82500.0 141450.0 ; + RECT 78900.0 132750.0 77700.0 131550.0 ; + RECT 78900.0 142650.0 77700.0 141450.0 ; + RECT 83100.0 138000.0 81900.0 136800.0 ; + RECT 83100.0 138000.0 81900.0 136800.0 ; + RECT 80550.0 137850.0 79650.0 136950.0 ; + RECT 85500.0 130650.0 75900.0 129750.0 ; + RECT 85500.0 144450.0 75900.0 143550.0 ; + RECT 98100.0 90750.0 96900.0 88350.0 ; + RECT 98100.0 99450.0 96900.0 103050.0 ; + RECT 93300.0 99450.0 92100.0 103050.0 ; + RECT 90900.0 100650.0 89700.0 102600.0 ; + RECT 90900.0 88800.0 89700.0 90750.0 ; + RECT 98100.0 99450.0 96900.0 100650.0 ; + RECT 95700.0 99450.0 94500.0 100650.0 ; + RECT 95700.0 99450.0 94500.0 100650.0 ; + RECT 98100.0 99450.0 96900.0 100650.0 ; + RECT 95700.0 99450.0 94500.0 100650.0 ; + RECT 93300.0 99450.0 92100.0 100650.0 ; + RECT 93300.0 99450.0 92100.0 100650.0 ; + RECT 95700.0 99450.0 94500.0 100650.0 ; + RECT 98100.0 90750.0 96900.0 91950.0 ; + RECT 95700.0 90750.0 94500.0 91950.0 ; + RECT 95700.0 90750.0 94500.0 91950.0 ; + RECT 98100.0 90750.0 96900.0 91950.0 ; + RECT 95700.0 90750.0 94500.0 91950.0 ; + RECT 93300.0 90750.0 92100.0 91950.0 ; + RECT 93300.0 90750.0 92100.0 91950.0 ; + RECT 95700.0 90750.0 94500.0 91950.0 ; + RECT 90900.0 100050.0 89700.0 101250.0 ; + RECT 90900.0 90150.0 89700.0 91350.0 ; + RECT 93300.0 93300.0 94500.0 94500.0 ; + RECT 96300.0 96000.0 97500.0 97200.0 ; + RECT 95700.0 99450.0 94500.0 100650.0 ; + RECT 93300.0 90750.0 92100.0 91950.0 ; + RECT 92100.0 96000.0 93300.0 97200.0 ; + RECT 97500.0 96000.0 96300.0 97200.0 ; + RECT 94500.0 93300.0 93300.0 94500.0 ; + RECT 93300.0 96000.0 92100.0 97200.0 ; + RECT 99900.0 102150.0 85500.0 103050.0 ; + RECT 99900.0 88350.0 85500.0 89250.0 ; + RECT 98100.0 114450.0 96900.0 116850.0 ; + RECT 98100.0 105750.0 96900.0 102150.0 ; + RECT 93300.0 105750.0 92100.0 102150.0 ; + RECT 90900.0 104550.0 89700.0 102600.0 ; + RECT 90900.0 116400.0 89700.0 114450.0 ; + RECT 98100.0 105750.0 96900.0 104550.0 ; + RECT 95700.0 105750.0 94500.0 104550.0 ; + RECT 95700.0 105750.0 94500.0 104550.0 ; + RECT 98100.0 105750.0 96900.0 104550.0 ; + RECT 95700.0 105750.0 94500.0 104550.0 ; + RECT 93300.0 105750.0 92100.0 104550.0 ; + RECT 93300.0 105750.0 92100.0 104550.0 ; + RECT 95700.0 105750.0 94500.0 104550.0 ; + RECT 98100.0 114450.0 96900.0 113250.0 ; + RECT 95700.0 114450.0 94500.0 113250.0 ; + RECT 95700.0 114450.0 94500.0 113250.0 ; + RECT 98100.0 114450.0 96900.0 113250.0 ; + RECT 95700.0 114450.0 94500.0 113250.0 ; + RECT 93300.0 114450.0 92100.0 113250.0 ; + RECT 93300.0 114450.0 92100.0 113250.0 ; + RECT 95700.0 114450.0 94500.0 113250.0 ; + RECT 90900.0 105150.0 89700.0 103950.0 ; + RECT 90900.0 115050.0 89700.0 113850.0 ; + RECT 93300.0 111900.0 94500.0 110700.0 ; + RECT 96300.0 109200.0 97500.0 108000.0 ; + RECT 95700.0 105750.0 94500.0 104550.0 ; + RECT 93300.0 114450.0 92100.0 113250.0 ; + RECT 92100.0 109200.0 93300.0 108000.0 ; + RECT 97500.0 109200.0 96300.0 108000.0 ; + RECT 94500.0 111900.0 93300.0 110700.0 ; + RECT 93300.0 109200.0 92100.0 108000.0 ; + RECT 99900.0 103050.0 85500.0 102150.0 ; + RECT 99900.0 116850.0 85500.0 115950.0 ; + RECT 98100.0 118350.0 96900.0 115950.0 ; + RECT 98100.0 127050.0 96900.0 130650.0 ; + RECT 93300.0 127050.0 92100.0 130650.0 ; + RECT 90900.0 128250.0 89700.0 130200.0 ; + RECT 90900.0 116400.0 89700.0 118350.0 ; + RECT 98100.0 127050.0 96900.0 128250.0 ; + RECT 95700.0 127050.0 94500.0 128250.0 ; + RECT 95700.0 127050.0 94500.0 128250.0 ; + RECT 98100.0 127050.0 96900.0 128250.0 ; + RECT 95700.0 127050.0 94500.0 128250.0 ; + RECT 93300.0 127050.0 92100.0 128250.0 ; + RECT 93300.0 127050.0 92100.0 128250.0 ; + RECT 95700.0 127050.0 94500.0 128250.0 ; + RECT 98100.0 118350.0 96900.0 119550.0 ; + RECT 95700.0 118350.0 94500.0 119550.0 ; + RECT 95700.0 118350.0 94500.0 119550.0 ; + RECT 98100.0 118350.0 96900.0 119550.0 ; + RECT 95700.0 118350.0 94500.0 119550.0 ; + RECT 93300.0 118350.0 92100.0 119550.0 ; + RECT 93300.0 118350.0 92100.0 119550.0 ; + RECT 95700.0 118350.0 94500.0 119550.0 ; + RECT 90900.0 127650.0 89700.0 128850.0 ; + RECT 90900.0 117750.0 89700.0 118950.0 ; + RECT 93300.0 120900.0 94500.0 122100.0 ; + RECT 96300.0 123600.0 97500.0 124800.0 ; + RECT 95700.0 127050.0 94500.0 128250.0 ; + RECT 93300.0 118350.0 92100.0 119550.0 ; + RECT 92100.0 123600.0 93300.0 124800.0 ; + RECT 97500.0 123600.0 96300.0 124800.0 ; + RECT 94500.0 120900.0 93300.0 122100.0 ; + RECT 93300.0 123600.0 92100.0 124800.0 ; + RECT 99900.0 129750.0 85500.0 130650.0 ; + RECT 99900.0 115950.0 85500.0 116850.0 ; + RECT 98100.0 142050.0 96900.0 144450.0 ; + RECT 98100.0 133350.0 96900.0 129750.0 ; + RECT 93300.0 133350.0 92100.0 129750.0 ; + RECT 90900.0 132150.0 89700.0 130200.0 ; + RECT 90900.0 144000.0 89700.0 142050.0 ; + RECT 98100.0 133350.0 96900.0 132150.0 ; + RECT 95700.0 133350.0 94500.0 132150.0 ; + RECT 95700.0 133350.0 94500.0 132150.0 ; + RECT 98100.0 133350.0 96900.0 132150.0 ; + RECT 95700.0 133350.0 94500.0 132150.0 ; + RECT 93300.0 133350.0 92100.0 132150.0 ; + RECT 93300.0 133350.0 92100.0 132150.0 ; + RECT 95700.0 133350.0 94500.0 132150.0 ; + RECT 98100.0 142050.0 96900.0 140850.0 ; + RECT 95700.0 142050.0 94500.0 140850.0 ; + RECT 95700.0 142050.0 94500.0 140850.0 ; + RECT 98100.0 142050.0 96900.0 140850.0 ; + RECT 95700.0 142050.0 94500.0 140850.0 ; + RECT 93300.0 142050.0 92100.0 140850.0 ; + RECT 93300.0 142050.0 92100.0 140850.0 ; + RECT 95700.0 142050.0 94500.0 140850.0 ; + RECT 90900.0 132750.0 89700.0 131550.0 ; + RECT 90900.0 142650.0 89700.0 141450.0 ; + RECT 93300.0 139500.0 94500.0 138300.0 ; + RECT 96300.0 136800.0 97500.0 135600.0 ; + RECT 95700.0 133350.0 94500.0 132150.0 ; + RECT 93300.0 142050.0 92100.0 140850.0 ; + RECT 92100.0 136800.0 93300.0 135600.0 ; + RECT 97500.0 136800.0 96300.0 135600.0 ; + RECT 94500.0 139500.0 93300.0 138300.0 ; + RECT 93300.0 136800.0 92100.0 135600.0 ; + RECT 99900.0 130650.0 85500.0 129750.0 ; + RECT 99900.0 144450.0 85500.0 143550.0 ; + RECT 110850.0 99300.0 112050.0 100500.0 ; + RECT 129450.0 94800.0 130650.0 96000.0 ; + RECT 107850.0 113100.0 109050.0 114300.0 ; + RECT 126450.0 109200.0 127650.0 110400.0 ; + RECT 129450.0 117900.0 130650.0 119100.0 ; + RECT 104850.0 117900.0 106050.0 119100.0 ; + RECT 126450.0 131700.0 127650.0 132900.0 ; + RECT 101850.0 131700.0 103050.0 132900.0 ; + RECT 110850.0 93300.0 112050.0 94500.0 ; + RECT 107850.0 96000.0 109050.0 97200.0 ; + RECT 104850.0 110700.0 106050.0 111900.0 ; + RECT 107850.0 108000.0 109050.0 109200.0 ; + RECT 110850.0 120900.0 112050.0 122100.0 ; + RECT 101850.0 123600.0 103050.0 124800.0 ; + RECT 104850.0 138300.0 106050.0 139500.0 ; + RECT 101850.0 135600.0 103050.0 136800.0 ; + RECT 79650.0 94950.0 75900.0 95850.0 ; + RECT 79650.0 109350.0 75900.0 110250.0 ; + RECT 79650.0 122550.0 75900.0 123450.0 ; + RECT 79650.0 136950.0 75900.0 137850.0 ; + RECT 130500.0 102150.0 75900.0 103050.0 ; + RECT 130500.0 129750.0 75900.0 130650.0 ; + RECT 130500.0 88350.0 75900.0 89250.0 ; + RECT 130500.0 115950.0 75900.0 116850.0 ; + RECT 130500.0 143550.0 75900.0 144450.0 ; + RECT 114450.0 150150.0 113550.0 151050.0 ; + RECT 114450.0 154650.0 113550.0 155550.0 ; + RECT 118650.0 150150.0 114000.0 151050.0 ; + RECT 114450.0 150600.0 113550.0 155100.0 ; + RECT 114000.0 154650.0 111450.0 155550.0 ; + RECT 130050.0 150150.0 122100.0 151050.0 ; + RECT 114450.0 164550.0 113550.0 165450.0 ; + RECT 114450.0 168450.0 113550.0 169350.0 ; + RECT 118650.0 164550.0 114000.0 165450.0 ; + RECT 114450.0 165000.0 113550.0 168900.0 ; + RECT 114000.0 168450.0 108450.0 169350.0 ; + RECT 127050.0 164550.0 122100.0 165450.0 ; + RECT 130050.0 173250.0 105450.0 174150.0 ; + RECT 127050.0 187050.0 102450.0 187950.0 ; + RECT 111450.0 148650.0 94500.0 149550.0 ; + RECT 108450.0 151350.0 97500.0 152250.0 ; + RECT 105450.0 166050.0 94500.0 166950.0 ; + RECT 108450.0 163350.0 97500.0 164250.0 ; + RECT 111450.0 176250.0 94500.0 177150.0 ; + RECT 102450.0 178950.0 97500.0 179850.0 ; + RECT 105450.0 193650.0 94500.0 194550.0 ; + RECT 102450.0 190950.0 97500.0 191850.0 ; + RECT 88050.0 151350.0 87150.0 152250.0 ; + RECT 88050.0 150150.0 87150.0 151050.0 ; + RECT 92100.0 151350.0 87600.0 152250.0 ; + RECT 88050.0 150600.0 87150.0 151800.0 ; + RECT 87600.0 150150.0 83100.0 151050.0 ; + RECT 88050.0 163350.0 87150.0 164250.0 ; + RECT 88050.0 164550.0 87150.0 165450.0 ; + RECT 92100.0 163350.0 87600.0 164250.0 ; + RECT 88050.0 163800.0 87150.0 165000.0 ; + RECT 87600.0 164550.0 83100.0 165450.0 ; + RECT 88050.0 178950.0 87150.0 179850.0 ; + RECT 88050.0 177750.0 87150.0 178650.0 ; + RECT 92100.0 178950.0 87600.0 179850.0 ; + RECT 88050.0 178200.0 87150.0 179400.0 ; + RECT 87600.0 177750.0 83100.0 178650.0 ; + RECT 88050.0 190950.0 87150.0 191850.0 ; + RECT 88050.0 192150.0 87150.0 193050.0 ; + RECT 92100.0 190950.0 87600.0 191850.0 ; + RECT 88050.0 191400.0 87150.0 192600.0 ; + RECT 87600.0 192150.0 83100.0 193050.0 ; + RECT 117900.0 155850.0 116700.0 157800.0 ; + RECT 117900.0 144000.0 116700.0 145950.0 ; + RECT 122700.0 145350.0 121500.0 143550.0 ; + RECT 122700.0 154650.0 121500.0 158250.0 ; + RECT 120000.0 145350.0 119100.0 154650.0 ; + RECT 122700.0 154650.0 121500.0 155850.0 ; + RECT 120300.0 154650.0 119100.0 155850.0 ; + RECT 120300.0 154650.0 119100.0 155850.0 ; + RECT 122700.0 154650.0 121500.0 155850.0 ; + RECT 122700.0 145350.0 121500.0 146550.0 ; + RECT 120300.0 145350.0 119100.0 146550.0 ; + RECT 120300.0 145350.0 119100.0 146550.0 ; + RECT 122700.0 145350.0 121500.0 146550.0 ; + RECT 117900.0 155250.0 116700.0 156450.0 ; + RECT 117900.0 145350.0 116700.0 146550.0 ; + RECT 122100.0 150000.0 120900.0 151200.0 ; + RECT 122100.0 150000.0 120900.0 151200.0 ; + RECT 119550.0 150150.0 118650.0 151050.0 ; + RECT 124500.0 157350.0 114900.0 158250.0 ; + RECT 124500.0 143550.0 114900.0 144450.0 ; + RECT 117900.0 159750.0 116700.0 157800.0 ; + RECT 117900.0 171600.0 116700.0 169650.0 ; + RECT 122700.0 170250.0 121500.0 172050.0 ; + RECT 122700.0 160950.0 121500.0 157350.0 ; + RECT 120000.0 170250.0 119100.0 160950.0 ; + RECT 122700.0 160950.0 121500.0 159750.0 ; + RECT 120300.0 160950.0 119100.0 159750.0 ; + RECT 120300.0 160950.0 119100.0 159750.0 ; + RECT 122700.0 160950.0 121500.0 159750.0 ; + RECT 122700.0 170250.0 121500.0 169050.0 ; + RECT 120300.0 170250.0 119100.0 169050.0 ; + RECT 120300.0 170250.0 119100.0 169050.0 ; + RECT 122700.0 170250.0 121500.0 169050.0 ; + RECT 117900.0 160350.0 116700.0 159150.0 ; + RECT 117900.0 170250.0 116700.0 169050.0 ; + RECT 122100.0 165600.0 120900.0 164400.0 ; + RECT 122100.0 165600.0 120900.0 164400.0 ; + RECT 119550.0 165450.0 118650.0 164550.0 ; + RECT 124500.0 158250.0 114900.0 157350.0 ; + RECT 124500.0 172050.0 114900.0 171150.0 ; + RECT 78900.0 155850.0 77700.0 157800.0 ; + RECT 78900.0 144000.0 77700.0 145950.0 ; + RECT 83700.0 145350.0 82500.0 143550.0 ; + RECT 83700.0 154650.0 82500.0 158250.0 ; + RECT 81000.0 145350.0 80100.0 154650.0 ; + RECT 83700.0 154650.0 82500.0 155850.0 ; + RECT 81300.0 154650.0 80100.0 155850.0 ; + RECT 81300.0 154650.0 80100.0 155850.0 ; + RECT 83700.0 154650.0 82500.0 155850.0 ; + RECT 83700.0 145350.0 82500.0 146550.0 ; + RECT 81300.0 145350.0 80100.0 146550.0 ; + RECT 81300.0 145350.0 80100.0 146550.0 ; + RECT 83700.0 145350.0 82500.0 146550.0 ; + RECT 78900.0 155250.0 77700.0 156450.0 ; + RECT 78900.0 145350.0 77700.0 146550.0 ; + RECT 83100.0 150000.0 81900.0 151200.0 ; + RECT 83100.0 150000.0 81900.0 151200.0 ; + RECT 80550.0 150150.0 79650.0 151050.0 ; + RECT 85500.0 157350.0 75900.0 158250.0 ; + RECT 85500.0 143550.0 75900.0 144450.0 ; + RECT 78900.0 159750.0 77700.0 157800.0 ; + RECT 78900.0 171600.0 77700.0 169650.0 ; + RECT 83700.0 170250.0 82500.0 172050.0 ; + RECT 83700.0 160950.0 82500.0 157350.0 ; + RECT 81000.0 170250.0 80100.0 160950.0 ; + RECT 83700.0 160950.0 82500.0 159750.0 ; + RECT 81300.0 160950.0 80100.0 159750.0 ; + RECT 81300.0 160950.0 80100.0 159750.0 ; + RECT 83700.0 160950.0 82500.0 159750.0 ; + RECT 83700.0 170250.0 82500.0 169050.0 ; + RECT 81300.0 170250.0 80100.0 169050.0 ; + RECT 81300.0 170250.0 80100.0 169050.0 ; + RECT 83700.0 170250.0 82500.0 169050.0 ; + RECT 78900.0 160350.0 77700.0 159150.0 ; + RECT 78900.0 170250.0 77700.0 169050.0 ; + RECT 83100.0 165600.0 81900.0 164400.0 ; + RECT 83100.0 165600.0 81900.0 164400.0 ; + RECT 80550.0 165450.0 79650.0 164550.0 ; + RECT 85500.0 158250.0 75900.0 157350.0 ; + RECT 85500.0 172050.0 75900.0 171150.0 ; + RECT 78900.0 183450.0 77700.0 185400.0 ; + RECT 78900.0 171600.0 77700.0 173550.0 ; + RECT 83700.0 172950.0 82500.0 171150.0 ; + RECT 83700.0 182250.0 82500.0 185850.0 ; + RECT 81000.0 172950.0 80100.0 182250.0 ; + RECT 83700.0 182250.0 82500.0 183450.0 ; + RECT 81300.0 182250.0 80100.0 183450.0 ; + RECT 81300.0 182250.0 80100.0 183450.0 ; + RECT 83700.0 182250.0 82500.0 183450.0 ; + RECT 83700.0 172950.0 82500.0 174150.0 ; + RECT 81300.0 172950.0 80100.0 174150.0 ; + RECT 81300.0 172950.0 80100.0 174150.0 ; + RECT 83700.0 172950.0 82500.0 174150.0 ; + RECT 78900.0 182850.0 77700.0 184050.0 ; + RECT 78900.0 172950.0 77700.0 174150.0 ; + RECT 83100.0 177600.0 81900.0 178800.0 ; + RECT 83100.0 177600.0 81900.0 178800.0 ; + RECT 80550.0 177750.0 79650.0 178650.0 ; + RECT 85500.0 184950.0 75900.0 185850.0 ; + RECT 85500.0 171150.0 75900.0 172050.0 ; + RECT 78900.0 187350.0 77700.0 185400.0 ; + RECT 78900.0 199200.0 77700.0 197250.0 ; + RECT 83700.0 197850.0 82500.0 199650.0 ; + RECT 83700.0 188550.0 82500.0 184950.0 ; + RECT 81000.0 197850.0 80100.0 188550.0 ; + RECT 83700.0 188550.0 82500.0 187350.0 ; + RECT 81300.0 188550.0 80100.0 187350.0 ; + RECT 81300.0 188550.0 80100.0 187350.0 ; + RECT 83700.0 188550.0 82500.0 187350.0 ; + RECT 83700.0 197850.0 82500.0 196650.0 ; + RECT 81300.0 197850.0 80100.0 196650.0 ; + RECT 81300.0 197850.0 80100.0 196650.0 ; + RECT 83700.0 197850.0 82500.0 196650.0 ; + RECT 78900.0 187950.0 77700.0 186750.0 ; + RECT 78900.0 197850.0 77700.0 196650.0 ; + RECT 83100.0 193200.0 81900.0 192000.0 ; + RECT 83100.0 193200.0 81900.0 192000.0 ; + RECT 80550.0 193050.0 79650.0 192150.0 ; + RECT 85500.0 185850.0 75900.0 184950.0 ; + RECT 85500.0 199650.0 75900.0 198750.0 ; + RECT 98100.0 145950.0 96900.0 143550.0 ; + RECT 98100.0 154650.0 96900.0 158250.0 ; + RECT 93300.0 154650.0 92100.0 158250.0 ; + RECT 90900.0 155850.0 89700.0 157800.0 ; + RECT 90900.0 144000.0 89700.0 145950.0 ; + RECT 98100.0 154650.0 96900.0 155850.0 ; + RECT 95700.0 154650.0 94500.0 155850.0 ; + RECT 95700.0 154650.0 94500.0 155850.0 ; + RECT 98100.0 154650.0 96900.0 155850.0 ; + RECT 95700.0 154650.0 94500.0 155850.0 ; + RECT 93300.0 154650.0 92100.0 155850.0 ; + RECT 93300.0 154650.0 92100.0 155850.0 ; + RECT 95700.0 154650.0 94500.0 155850.0 ; + RECT 98100.0 145950.0 96900.0 147150.0 ; + RECT 95700.0 145950.0 94500.0 147150.0 ; + RECT 95700.0 145950.0 94500.0 147150.0 ; + RECT 98100.0 145950.0 96900.0 147150.0 ; + RECT 95700.0 145950.0 94500.0 147150.0 ; + RECT 93300.0 145950.0 92100.0 147150.0 ; + RECT 93300.0 145950.0 92100.0 147150.0 ; + RECT 95700.0 145950.0 94500.0 147150.0 ; + RECT 90900.0 155250.0 89700.0 156450.0 ; + RECT 90900.0 145350.0 89700.0 146550.0 ; + RECT 93300.0 148500.0 94500.0 149700.0 ; + RECT 96300.0 151200.0 97500.0 152400.0 ; + RECT 95700.0 154650.0 94500.0 155850.0 ; + RECT 93300.0 145950.0 92100.0 147150.0 ; + RECT 92100.0 151200.0 93300.0 152400.0 ; + RECT 97500.0 151200.0 96300.0 152400.0 ; + RECT 94500.0 148500.0 93300.0 149700.0 ; + RECT 93300.0 151200.0 92100.0 152400.0 ; + RECT 99900.0 157350.0 85500.0 158250.0 ; + RECT 99900.0 143550.0 85500.0 144450.0 ; + RECT 98100.0 169650.0 96900.0 172050.0 ; + RECT 98100.0 160950.0 96900.0 157350.0 ; + RECT 93300.0 160950.0 92100.0 157350.0 ; + RECT 90900.0 159750.0 89700.0 157800.0 ; + RECT 90900.0 171600.0 89700.0 169650.0 ; + RECT 98100.0 160950.0 96900.0 159750.0 ; + RECT 95700.0 160950.0 94500.0 159750.0 ; + RECT 95700.0 160950.0 94500.0 159750.0 ; + RECT 98100.0 160950.0 96900.0 159750.0 ; + RECT 95700.0 160950.0 94500.0 159750.0 ; + RECT 93300.0 160950.0 92100.0 159750.0 ; + RECT 93300.0 160950.0 92100.0 159750.0 ; + RECT 95700.0 160950.0 94500.0 159750.0 ; + RECT 98100.0 169650.0 96900.0 168450.0 ; + RECT 95700.0 169650.0 94500.0 168450.0 ; + RECT 95700.0 169650.0 94500.0 168450.0 ; + RECT 98100.0 169650.0 96900.0 168450.0 ; + RECT 95700.0 169650.0 94500.0 168450.0 ; + RECT 93300.0 169650.0 92100.0 168450.0 ; + RECT 93300.0 169650.0 92100.0 168450.0 ; + RECT 95700.0 169650.0 94500.0 168450.0 ; + RECT 90900.0 160350.0 89700.0 159150.0 ; + RECT 90900.0 170250.0 89700.0 169050.0 ; + RECT 93300.0 167100.0 94500.0 165900.0 ; + RECT 96300.0 164400.0 97500.0 163200.0 ; + RECT 95700.0 160950.0 94500.0 159750.0 ; + RECT 93300.0 169650.0 92100.0 168450.0 ; + RECT 92100.0 164400.0 93300.0 163200.0 ; + RECT 97500.0 164400.0 96300.0 163200.0 ; + RECT 94500.0 167100.0 93300.0 165900.0 ; + RECT 93300.0 164400.0 92100.0 163200.0 ; + RECT 99900.0 158250.0 85500.0 157350.0 ; + RECT 99900.0 172050.0 85500.0 171150.0 ; + RECT 98100.0 173550.0 96900.0 171150.0 ; + RECT 98100.0 182250.0 96900.0 185850.0 ; + RECT 93300.0 182250.0 92100.0 185850.0 ; + RECT 90900.0 183450.0 89700.0 185400.0 ; + RECT 90900.0 171600.0 89700.0 173550.0 ; + RECT 98100.0 182250.0 96900.0 183450.0 ; + RECT 95700.0 182250.0 94500.0 183450.0 ; + RECT 95700.0 182250.0 94500.0 183450.0 ; + RECT 98100.0 182250.0 96900.0 183450.0 ; + RECT 95700.0 182250.0 94500.0 183450.0 ; + RECT 93300.0 182250.0 92100.0 183450.0 ; + RECT 93300.0 182250.0 92100.0 183450.0 ; + RECT 95700.0 182250.0 94500.0 183450.0 ; + RECT 98100.0 173550.0 96900.0 174750.0 ; + RECT 95700.0 173550.0 94500.0 174750.0 ; + RECT 95700.0 173550.0 94500.0 174750.0 ; + RECT 98100.0 173550.0 96900.0 174750.0 ; + RECT 95700.0 173550.0 94500.0 174750.0 ; + RECT 93300.0 173550.0 92100.0 174750.0 ; + RECT 93300.0 173550.0 92100.0 174750.0 ; + RECT 95700.0 173550.0 94500.0 174750.0 ; + RECT 90900.0 182850.0 89700.0 184050.0 ; + RECT 90900.0 172950.0 89700.0 174150.0 ; + RECT 93300.0 176100.0 94500.0 177300.0 ; + RECT 96300.0 178800.0 97500.0 180000.0 ; + RECT 95700.0 182250.0 94500.0 183450.0 ; + RECT 93300.0 173550.0 92100.0 174750.0 ; + RECT 92100.0 178800.0 93300.0 180000.0 ; + RECT 97500.0 178800.0 96300.0 180000.0 ; + RECT 94500.0 176100.0 93300.0 177300.0 ; + RECT 93300.0 178800.0 92100.0 180000.0 ; + RECT 99900.0 184950.0 85500.0 185850.0 ; + RECT 99900.0 171150.0 85500.0 172050.0 ; + RECT 98100.0 197250.0 96900.0 199650.0 ; + RECT 98100.0 188550.0 96900.0 184950.0 ; + RECT 93300.0 188550.0 92100.0 184950.0 ; + RECT 90900.0 187350.0 89700.0 185400.0 ; + RECT 90900.0 199200.0 89700.0 197250.0 ; + RECT 98100.0 188550.0 96900.0 187350.0 ; + RECT 95700.0 188550.0 94500.0 187350.0 ; + RECT 95700.0 188550.0 94500.0 187350.0 ; + RECT 98100.0 188550.0 96900.0 187350.0 ; + RECT 95700.0 188550.0 94500.0 187350.0 ; + RECT 93300.0 188550.0 92100.0 187350.0 ; + RECT 93300.0 188550.0 92100.0 187350.0 ; + RECT 95700.0 188550.0 94500.0 187350.0 ; + RECT 98100.0 197250.0 96900.0 196050.0 ; + RECT 95700.0 197250.0 94500.0 196050.0 ; + RECT 95700.0 197250.0 94500.0 196050.0 ; + RECT 98100.0 197250.0 96900.0 196050.0 ; + RECT 95700.0 197250.0 94500.0 196050.0 ; + RECT 93300.0 197250.0 92100.0 196050.0 ; + RECT 93300.0 197250.0 92100.0 196050.0 ; + RECT 95700.0 197250.0 94500.0 196050.0 ; + RECT 90900.0 187950.0 89700.0 186750.0 ; + RECT 90900.0 197850.0 89700.0 196650.0 ; + RECT 93300.0 194700.0 94500.0 193500.0 ; + RECT 96300.0 192000.0 97500.0 190800.0 ; + RECT 95700.0 188550.0 94500.0 187350.0 ; + RECT 93300.0 197250.0 92100.0 196050.0 ; + RECT 92100.0 192000.0 93300.0 190800.0 ; + RECT 97500.0 192000.0 96300.0 190800.0 ; + RECT 94500.0 194700.0 93300.0 193500.0 ; + RECT 93300.0 192000.0 92100.0 190800.0 ; + RECT 99900.0 185850.0 85500.0 184950.0 ; + RECT 99900.0 199650.0 85500.0 198750.0 ; + RECT 110850.0 154500.0 112050.0 155700.0 ; + RECT 129450.0 150000.0 130650.0 151200.0 ; + RECT 107850.0 168300.0 109050.0 169500.0 ; + RECT 126450.0 164400.0 127650.0 165600.0 ; + RECT 129450.0 173100.0 130650.0 174300.0 ; + RECT 104850.0 173100.0 106050.0 174300.0 ; + RECT 126450.0 186900.0 127650.0 188100.0 ; + RECT 101850.0 186900.0 103050.0 188100.0 ; + RECT 110850.0 148500.0 112050.0 149700.0 ; + RECT 107850.0 151200.0 109050.0 152400.0 ; + RECT 104850.0 165900.0 106050.0 167100.0 ; + RECT 107850.0 163200.0 109050.0 164400.0 ; + RECT 110850.0 176100.0 112050.0 177300.0 ; + RECT 101850.0 178800.0 103050.0 180000.0 ; + RECT 104850.0 193500.0 106050.0 194700.0 ; + RECT 101850.0 190800.0 103050.0 192000.0 ; + RECT 79650.0 150150.0 75900.0 151050.0 ; + RECT 79650.0 164550.0 75900.0 165450.0 ; + RECT 79650.0 177750.0 75900.0 178650.0 ; + RECT 79650.0 192150.0 75900.0 193050.0 ; + RECT 130500.0 157350.0 75900.0 158250.0 ; + RECT 130500.0 184950.0 75900.0 185850.0 ; + RECT 130500.0 143550.0 75900.0 144450.0 ; + RECT 130500.0 171150.0 75900.0 172050.0 ; + RECT 130500.0 198750.0 75900.0 199650.0 ; + RECT 77700.0 201150.0 78900.0 198750.0 ; + RECT 77700.0 209850.0 78900.0 213450.0 ; + RECT 82500.0 209850.0 83700.0 213450.0 ; + RECT 84900.0 211050.0 86100.0 213000.0 ; + RECT 84900.0 199200.0 86100.0 201150.0 ; + RECT 77700.0 209850.0 78900.0 211050.0 ; + RECT 80100.0 209850.0 81300.0 211050.0 ; + RECT 80100.0 209850.0 81300.0 211050.0 ; + RECT 77700.0 209850.0 78900.0 211050.0 ; + RECT 80100.0 209850.0 81300.0 211050.0 ; + RECT 82500.0 209850.0 83700.0 211050.0 ; + RECT 82500.0 209850.0 83700.0 211050.0 ; + RECT 80100.0 209850.0 81300.0 211050.0 ; + RECT 77700.0 201150.0 78900.0 202350.0 ; + RECT 80100.0 201150.0 81300.0 202350.0 ; + RECT 80100.0 201150.0 81300.0 202350.0 ; + RECT 77700.0 201150.0 78900.0 202350.0 ; + RECT 80100.0 201150.0 81300.0 202350.0 ; + RECT 82500.0 201150.0 83700.0 202350.0 ; + RECT 82500.0 201150.0 83700.0 202350.0 ; + RECT 80100.0 201150.0 81300.0 202350.0 ; + RECT 84900.0 210450.0 86100.0 211650.0 ; + RECT 84900.0 200550.0 86100.0 201750.0 ; + RECT 82500.0 203700.0 81300.0 204900.0 ; + RECT 79500.0 206400.0 78300.0 207600.0 ; + RECT 80100.0 209850.0 81300.0 211050.0 ; + RECT 82500.0 201150.0 83700.0 202350.0 ; + RECT 83700.0 206400.0 82500.0 207600.0 ; + RECT 78300.0 206400.0 79500.0 207600.0 ; + RECT 81300.0 203700.0 82500.0 204900.0 ; + RECT 82500.0 206400.0 83700.0 207600.0 ; + RECT 75900.0 212550.0 90300.0 213450.0 ; + RECT 75900.0 198750.0 90300.0 199650.0 ; + RECT 77700.0 224850.0 78900.0 227250.0 ; + RECT 77700.0 216150.0 78900.0 212550.0 ; + RECT 82500.0 216150.0 83700.0 212550.0 ; + RECT 84900.0 214950.0 86100.0 213000.0 ; + RECT 84900.0 226800.0 86100.0 224850.0 ; + RECT 77700.0 216150.0 78900.0 214950.0 ; + RECT 80100.0 216150.0 81300.0 214950.0 ; + RECT 80100.0 216150.0 81300.0 214950.0 ; + RECT 77700.0 216150.0 78900.0 214950.0 ; + RECT 80100.0 216150.0 81300.0 214950.0 ; + RECT 82500.0 216150.0 83700.0 214950.0 ; + RECT 82500.0 216150.0 83700.0 214950.0 ; + RECT 80100.0 216150.0 81300.0 214950.0 ; + RECT 77700.0 224850.0 78900.0 223650.0 ; + RECT 80100.0 224850.0 81300.0 223650.0 ; + RECT 80100.0 224850.0 81300.0 223650.0 ; + RECT 77700.0 224850.0 78900.0 223650.0 ; + RECT 80100.0 224850.0 81300.0 223650.0 ; + RECT 82500.0 224850.0 83700.0 223650.0 ; + RECT 82500.0 224850.0 83700.0 223650.0 ; + RECT 80100.0 224850.0 81300.0 223650.0 ; + RECT 84900.0 215550.0 86100.0 214350.0 ; + RECT 84900.0 225450.0 86100.0 224250.0 ; + RECT 82500.0 222300.0 81300.0 221100.0 ; + RECT 79500.0 219600.0 78300.0 218400.0 ; + RECT 80100.0 216150.0 81300.0 214950.0 ; + RECT 82500.0 224850.0 83700.0 223650.0 ; + RECT 83700.0 219600.0 82500.0 218400.0 ; + RECT 78300.0 219600.0 79500.0 218400.0 ; + RECT 81300.0 222300.0 82500.0 221100.0 ; + RECT 82500.0 219600.0 83700.0 218400.0 ; + RECT 75900.0 213450.0 90300.0 212550.0 ; + RECT 75900.0 227250.0 90300.0 226350.0 ; + RECT 77700.0 228750.0 78900.0 226350.0 ; + RECT 77700.0 237450.0 78900.0 241050.0 ; + RECT 82500.0 237450.0 83700.0 241050.0 ; + RECT 84900.0 238650.0 86100.0 240600.0 ; + RECT 84900.0 226800.0 86100.0 228750.0 ; + RECT 77700.0 237450.0 78900.0 238650.0 ; + RECT 80100.0 237450.0 81300.0 238650.0 ; + RECT 80100.0 237450.0 81300.0 238650.0 ; + RECT 77700.0 237450.0 78900.0 238650.0 ; + RECT 80100.0 237450.0 81300.0 238650.0 ; + RECT 82500.0 237450.0 83700.0 238650.0 ; + RECT 82500.0 237450.0 83700.0 238650.0 ; + RECT 80100.0 237450.0 81300.0 238650.0 ; + RECT 77700.0 228750.0 78900.0 229950.0 ; + RECT 80100.0 228750.0 81300.0 229950.0 ; + RECT 80100.0 228750.0 81300.0 229950.0 ; + RECT 77700.0 228750.0 78900.0 229950.0 ; + RECT 80100.0 228750.0 81300.0 229950.0 ; + RECT 82500.0 228750.0 83700.0 229950.0 ; + RECT 82500.0 228750.0 83700.0 229950.0 ; + RECT 80100.0 228750.0 81300.0 229950.0 ; + RECT 84900.0 238050.0 86100.0 239250.0 ; + RECT 84900.0 228150.0 86100.0 229350.0 ; + RECT 82500.0 231300.0 81300.0 232500.0 ; + RECT 79500.0 234000.0 78300.0 235200.0 ; + RECT 80100.0 237450.0 81300.0 238650.0 ; + RECT 82500.0 228750.0 83700.0 229950.0 ; + RECT 83700.0 234000.0 82500.0 235200.0 ; + RECT 78300.0 234000.0 79500.0 235200.0 ; + RECT 81300.0 231300.0 82500.0 232500.0 ; + RECT 82500.0 234000.0 83700.0 235200.0 ; + RECT 75900.0 240150.0 90300.0 241050.0 ; + RECT 75900.0 226350.0 90300.0 227250.0 ; + RECT 77700.0 252450.0 78900.0 254850.0 ; + RECT 77700.0 243750.0 78900.0 240150.0 ; + RECT 82500.0 243750.0 83700.0 240150.0 ; + RECT 84900.0 242550.0 86100.0 240600.0 ; + RECT 84900.0 254400.0 86100.0 252450.0 ; + RECT 77700.0 243750.0 78900.0 242550.0 ; + RECT 80100.0 243750.0 81300.0 242550.0 ; + RECT 80100.0 243750.0 81300.0 242550.0 ; + RECT 77700.0 243750.0 78900.0 242550.0 ; + RECT 80100.0 243750.0 81300.0 242550.0 ; + RECT 82500.0 243750.0 83700.0 242550.0 ; + RECT 82500.0 243750.0 83700.0 242550.0 ; + RECT 80100.0 243750.0 81300.0 242550.0 ; + RECT 77700.0 252450.0 78900.0 251250.0 ; + RECT 80100.0 252450.0 81300.0 251250.0 ; + RECT 80100.0 252450.0 81300.0 251250.0 ; + RECT 77700.0 252450.0 78900.0 251250.0 ; + RECT 80100.0 252450.0 81300.0 251250.0 ; + RECT 82500.0 252450.0 83700.0 251250.0 ; + RECT 82500.0 252450.0 83700.0 251250.0 ; + RECT 80100.0 252450.0 81300.0 251250.0 ; + RECT 84900.0 243150.0 86100.0 241950.0 ; + RECT 84900.0 253050.0 86100.0 251850.0 ; + RECT 82500.0 249900.0 81300.0 248700.0 ; + RECT 79500.0 247200.0 78300.0 246000.0 ; + RECT 80100.0 243750.0 81300.0 242550.0 ; + RECT 82500.0 252450.0 83700.0 251250.0 ; + RECT 83700.0 247200.0 82500.0 246000.0 ; + RECT 78300.0 247200.0 79500.0 246000.0 ; + RECT 81300.0 249900.0 82500.0 248700.0 ; + RECT 82500.0 247200.0 83700.0 246000.0 ; + RECT 75900.0 241050.0 90300.0 240150.0 ; + RECT 75900.0 254850.0 90300.0 253950.0 ; + RECT 77700.0 256350.0 78900.0 253950.0 ; + RECT 77700.0 265050.0 78900.0 268650.0 ; + RECT 82500.0 265050.0 83700.0 268650.0 ; + RECT 84900.0 266250.0 86100.0 268200.0 ; + RECT 84900.0 254400.0 86100.0 256350.0 ; + RECT 77700.0 265050.0 78900.0 266250.0 ; + RECT 80100.0 265050.0 81300.0 266250.0 ; + RECT 80100.0 265050.0 81300.0 266250.0 ; + RECT 77700.0 265050.0 78900.0 266250.0 ; + RECT 80100.0 265050.0 81300.0 266250.0 ; + RECT 82500.0 265050.0 83700.0 266250.0 ; + RECT 82500.0 265050.0 83700.0 266250.0 ; + RECT 80100.0 265050.0 81300.0 266250.0 ; + RECT 77700.0 256350.0 78900.0 257550.0 ; + RECT 80100.0 256350.0 81300.0 257550.0 ; + RECT 80100.0 256350.0 81300.0 257550.0 ; + RECT 77700.0 256350.0 78900.0 257550.0 ; + RECT 80100.0 256350.0 81300.0 257550.0 ; + RECT 82500.0 256350.0 83700.0 257550.0 ; + RECT 82500.0 256350.0 83700.0 257550.0 ; + RECT 80100.0 256350.0 81300.0 257550.0 ; + RECT 84900.0 265650.0 86100.0 266850.0 ; + RECT 84900.0 255750.0 86100.0 256950.0 ; + RECT 82500.0 258900.0 81300.0 260100.0 ; + RECT 79500.0 261600.0 78300.0 262800.0 ; + RECT 80100.0 265050.0 81300.0 266250.0 ; + RECT 82500.0 256350.0 83700.0 257550.0 ; + RECT 83700.0 261600.0 82500.0 262800.0 ; + RECT 78300.0 261600.0 79500.0 262800.0 ; + RECT 81300.0 258900.0 82500.0 260100.0 ; + RECT 82500.0 261600.0 83700.0 262800.0 ; + RECT 75900.0 267750.0 90300.0 268650.0 ; + RECT 75900.0 253950.0 90300.0 254850.0 ; + RECT 77700.0 280050.0 78900.0 282450.0 ; + RECT 77700.0 271350.0 78900.0 267750.0 ; + RECT 82500.0 271350.0 83700.0 267750.0 ; + RECT 84900.0 270150.0 86100.0 268200.0 ; + RECT 84900.0 282000.0 86100.0 280050.0 ; + RECT 77700.0 271350.0 78900.0 270150.0 ; + RECT 80100.0 271350.0 81300.0 270150.0 ; + RECT 80100.0 271350.0 81300.0 270150.0 ; + RECT 77700.0 271350.0 78900.0 270150.0 ; + RECT 80100.0 271350.0 81300.0 270150.0 ; + RECT 82500.0 271350.0 83700.0 270150.0 ; + RECT 82500.0 271350.0 83700.0 270150.0 ; + RECT 80100.0 271350.0 81300.0 270150.0 ; + RECT 77700.0 280050.0 78900.0 278850.0 ; + RECT 80100.0 280050.0 81300.0 278850.0 ; + RECT 80100.0 280050.0 81300.0 278850.0 ; + RECT 77700.0 280050.0 78900.0 278850.0 ; + RECT 80100.0 280050.0 81300.0 278850.0 ; + RECT 82500.0 280050.0 83700.0 278850.0 ; + RECT 82500.0 280050.0 83700.0 278850.0 ; + RECT 80100.0 280050.0 81300.0 278850.0 ; + RECT 84900.0 270750.0 86100.0 269550.0 ; + RECT 84900.0 280650.0 86100.0 279450.0 ; + RECT 82500.0 277500.0 81300.0 276300.0 ; + RECT 79500.0 274800.0 78300.0 273600.0 ; + RECT 80100.0 271350.0 81300.0 270150.0 ; + RECT 82500.0 280050.0 83700.0 278850.0 ; + RECT 83700.0 274800.0 82500.0 273600.0 ; + RECT 78300.0 274800.0 79500.0 273600.0 ; + RECT 81300.0 277500.0 82500.0 276300.0 ; + RECT 82500.0 274800.0 83700.0 273600.0 ; + RECT 75900.0 268650.0 90300.0 267750.0 ; + RECT 75900.0 282450.0 90300.0 281550.0 ; + RECT 77700.0 283950.0 78900.0 281550.0 ; + RECT 77700.0 292650.0 78900.0 296250.0 ; + RECT 82500.0 292650.0 83700.0 296250.0 ; + RECT 84900.0 293850.0 86100.0 295800.0 ; + RECT 84900.0 282000.0 86100.0 283950.0 ; + RECT 77700.0 292650.0 78900.0 293850.0 ; + RECT 80100.0 292650.0 81300.0 293850.0 ; + RECT 80100.0 292650.0 81300.0 293850.0 ; + RECT 77700.0 292650.0 78900.0 293850.0 ; + RECT 80100.0 292650.0 81300.0 293850.0 ; + RECT 82500.0 292650.0 83700.0 293850.0 ; + RECT 82500.0 292650.0 83700.0 293850.0 ; + RECT 80100.0 292650.0 81300.0 293850.0 ; + RECT 77700.0 283950.0 78900.0 285150.0 ; + RECT 80100.0 283950.0 81300.0 285150.0 ; + RECT 80100.0 283950.0 81300.0 285150.0 ; + RECT 77700.0 283950.0 78900.0 285150.0 ; + RECT 80100.0 283950.0 81300.0 285150.0 ; + RECT 82500.0 283950.0 83700.0 285150.0 ; + RECT 82500.0 283950.0 83700.0 285150.0 ; + RECT 80100.0 283950.0 81300.0 285150.0 ; + RECT 84900.0 293250.0 86100.0 294450.0 ; + RECT 84900.0 283350.0 86100.0 284550.0 ; + RECT 82500.0 286500.0 81300.0 287700.0 ; + RECT 79500.0 289200.0 78300.0 290400.0 ; + RECT 80100.0 292650.0 81300.0 293850.0 ; + RECT 82500.0 283950.0 83700.0 285150.0 ; + RECT 83700.0 289200.0 82500.0 290400.0 ; + RECT 78300.0 289200.0 79500.0 290400.0 ; + RECT 81300.0 286500.0 82500.0 287700.0 ; + RECT 82500.0 289200.0 83700.0 290400.0 ; + RECT 75900.0 295350.0 90300.0 296250.0 ; + RECT 75900.0 281550.0 90300.0 282450.0 ; + RECT 77700.0 307650.0 78900.0 310050.0 ; + RECT 77700.0 298950.0 78900.0 295350.0 ; + RECT 82500.0 298950.0 83700.0 295350.0 ; + RECT 84900.0 297750.0 86100.0 295800.0 ; + RECT 84900.0 309600.0 86100.0 307650.0 ; + RECT 77700.0 298950.0 78900.0 297750.0 ; + RECT 80100.0 298950.0 81300.0 297750.0 ; + RECT 80100.0 298950.0 81300.0 297750.0 ; + RECT 77700.0 298950.0 78900.0 297750.0 ; + RECT 80100.0 298950.0 81300.0 297750.0 ; + RECT 82500.0 298950.0 83700.0 297750.0 ; + RECT 82500.0 298950.0 83700.0 297750.0 ; + RECT 80100.0 298950.0 81300.0 297750.0 ; + RECT 77700.0 307650.0 78900.0 306450.0 ; + RECT 80100.0 307650.0 81300.0 306450.0 ; + RECT 80100.0 307650.0 81300.0 306450.0 ; + RECT 77700.0 307650.0 78900.0 306450.0 ; + RECT 80100.0 307650.0 81300.0 306450.0 ; + RECT 82500.0 307650.0 83700.0 306450.0 ; + RECT 82500.0 307650.0 83700.0 306450.0 ; + RECT 80100.0 307650.0 81300.0 306450.0 ; + RECT 84900.0 298350.0 86100.0 297150.0 ; + RECT 84900.0 308250.0 86100.0 307050.0 ; + RECT 82500.0 305100.0 81300.0 303900.0 ; + RECT 79500.0 302400.0 78300.0 301200.0 ; + RECT 80100.0 298950.0 81300.0 297750.0 ; + RECT 82500.0 307650.0 83700.0 306450.0 ; + RECT 83700.0 302400.0 82500.0 301200.0 ; + RECT 78300.0 302400.0 79500.0 301200.0 ; + RECT 81300.0 305100.0 82500.0 303900.0 ; + RECT 82500.0 302400.0 83700.0 301200.0 ; + RECT 75900.0 296250.0 90300.0 295350.0 ; + RECT 75900.0 310050.0 90300.0 309150.0 ; + RECT 77700.0 311550.0 78900.0 309150.0 ; + RECT 77700.0 320250.0 78900.0 323850.0 ; + RECT 82500.0 320250.0 83700.0 323850.0 ; + RECT 84900.0 321450.0 86100.0 323400.0 ; + RECT 84900.0 309600.0 86100.0 311550.0 ; + RECT 77700.0 320250.0 78900.0 321450.0 ; + RECT 80100.0 320250.0 81300.0 321450.0 ; + RECT 80100.0 320250.0 81300.0 321450.0 ; + RECT 77700.0 320250.0 78900.0 321450.0 ; + RECT 80100.0 320250.0 81300.0 321450.0 ; + RECT 82500.0 320250.0 83700.0 321450.0 ; + RECT 82500.0 320250.0 83700.0 321450.0 ; + RECT 80100.0 320250.0 81300.0 321450.0 ; + RECT 77700.0 311550.0 78900.0 312750.0 ; + RECT 80100.0 311550.0 81300.0 312750.0 ; + RECT 80100.0 311550.0 81300.0 312750.0 ; + RECT 77700.0 311550.0 78900.0 312750.0 ; + RECT 80100.0 311550.0 81300.0 312750.0 ; + RECT 82500.0 311550.0 83700.0 312750.0 ; + RECT 82500.0 311550.0 83700.0 312750.0 ; + RECT 80100.0 311550.0 81300.0 312750.0 ; + RECT 84900.0 320850.0 86100.0 322050.0 ; + RECT 84900.0 310950.0 86100.0 312150.0 ; + RECT 82500.0 314100.0 81300.0 315300.0 ; + RECT 79500.0 316800.0 78300.0 318000.0 ; + RECT 80100.0 320250.0 81300.0 321450.0 ; + RECT 82500.0 311550.0 83700.0 312750.0 ; + RECT 83700.0 316800.0 82500.0 318000.0 ; + RECT 78300.0 316800.0 79500.0 318000.0 ; + RECT 81300.0 314100.0 82500.0 315300.0 ; + RECT 82500.0 316800.0 83700.0 318000.0 ; + RECT 75900.0 322950.0 90300.0 323850.0 ; + RECT 75900.0 309150.0 90300.0 310050.0 ; + RECT 77700.0 335250.0 78900.0 337650.0 ; + RECT 77700.0 326550.0 78900.0 322950.0 ; + RECT 82500.0 326550.0 83700.0 322950.0 ; + RECT 84900.0 325350.0 86100.0 323400.0 ; + RECT 84900.0 337200.0 86100.0 335250.0 ; + RECT 77700.0 326550.0 78900.0 325350.0 ; + RECT 80100.0 326550.0 81300.0 325350.0 ; + RECT 80100.0 326550.0 81300.0 325350.0 ; + RECT 77700.0 326550.0 78900.0 325350.0 ; + RECT 80100.0 326550.0 81300.0 325350.0 ; + RECT 82500.0 326550.0 83700.0 325350.0 ; + RECT 82500.0 326550.0 83700.0 325350.0 ; + RECT 80100.0 326550.0 81300.0 325350.0 ; + RECT 77700.0 335250.0 78900.0 334050.0 ; + RECT 80100.0 335250.0 81300.0 334050.0 ; + RECT 80100.0 335250.0 81300.0 334050.0 ; + RECT 77700.0 335250.0 78900.0 334050.0 ; + RECT 80100.0 335250.0 81300.0 334050.0 ; + RECT 82500.0 335250.0 83700.0 334050.0 ; + RECT 82500.0 335250.0 83700.0 334050.0 ; + RECT 80100.0 335250.0 81300.0 334050.0 ; + RECT 84900.0 325950.0 86100.0 324750.0 ; + RECT 84900.0 335850.0 86100.0 334650.0 ; + RECT 82500.0 332700.0 81300.0 331500.0 ; + RECT 79500.0 330000.0 78300.0 328800.0 ; + RECT 80100.0 326550.0 81300.0 325350.0 ; + RECT 82500.0 335250.0 83700.0 334050.0 ; + RECT 83700.0 330000.0 82500.0 328800.0 ; + RECT 78300.0 330000.0 79500.0 328800.0 ; + RECT 81300.0 332700.0 82500.0 331500.0 ; + RECT 82500.0 330000.0 83700.0 328800.0 ; + RECT 75900.0 323850.0 90300.0 322950.0 ; + RECT 75900.0 337650.0 90300.0 336750.0 ; + RECT 77700.0 339150.0 78900.0 336750.0 ; + RECT 77700.0 347850.0 78900.0 351450.0 ; + RECT 82500.0 347850.0 83700.0 351450.0 ; + RECT 84900.0 349050.0 86100.0 351000.0 ; + RECT 84900.0 337200.0 86100.0 339150.0 ; + RECT 77700.0 347850.0 78900.0 349050.0 ; + RECT 80100.0 347850.0 81300.0 349050.0 ; + RECT 80100.0 347850.0 81300.0 349050.0 ; + RECT 77700.0 347850.0 78900.0 349050.0 ; + RECT 80100.0 347850.0 81300.0 349050.0 ; + RECT 82500.0 347850.0 83700.0 349050.0 ; + RECT 82500.0 347850.0 83700.0 349050.0 ; + RECT 80100.0 347850.0 81300.0 349050.0 ; + RECT 77700.0 339150.0 78900.0 340350.0 ; + RECT 80100.0 339150.0 81300.0 340350.0 ; + RECT 80100.0 339150.0 81300.0 340350.0 ; + RECT 77700.0 339150.0 78900.0 340350.0 ; + RECT 80100.0 339150.0 81300.0 340350.0 ; + RECT 82500.0 339150.0 83700.0 340350.0 ; + RECT 82500.0 339150.0 83700.0 340350.0 ; + RECT 80100.0 339150.0 81300.0 340350.0 ; + RECT 84900.0 348450.0 86100.0 349650.0 ; + RECT 84900.0 338550.0 86100.0 339750.0 ; + RECT 82500.0 341700.0 81300.0 342900.0 ; + RECT 79500.0 344400.0 78300.0 345600.0 ; + RECT 80100.0 347850.0 81300.0 349050.0 ; + RECT 82500.0 339150.0 83700.0 340350.0 ; + RECT 83700.0 344400.0 82500.0 345600.0 ; + RECT 78300.0 344400.0 79500.0 345600.0 ; + RECT 81300.0 341700.0 82500.0 342900.0 ; + RECT 82500.0 344400.0 83700.0 345600.0 ; + RECT 75900.0 350550.0 90300.0 351450.0 ; + RECT 75900.0 336750.0 90300.0 337650.0 ; + RECT 77700.0 362850.0 78900.0 365250.0 ; + RECT 77700.0 354150.0 78900.0 350550.0 ; + RECT 82500.0 354150.0 83700.0 350550.0 ; + RECT 84900.0 352950.0 86100.0 351000.0 ; + RECT 84900.0 364800.0 86100.0 362850.0 ; + RECT 77700.0 354150.0 78900.0 352950.0 ; + RECT 80100.0 354150.0 81300.0 352950.0 ; + RECT 80100.0 354150.0 81300.0 352950.0 ; + RECT 77700.0 354150.0 78900.0 352950.0 ; + RECT 80100.0 354150.0 81300.0 352950.0 ; + RECT 82500.0 354150.0 83700.0 352950.0 ; + RECT 82500.0 354150.0 83700.0 352950.0 ; + RECT 80100.0 354150.0 81300.0 352950.0 ; + RECT 77700.0 362850.0 78900.0 361650.0 ; + RECT 80100.0 362850.0 81300.0 361650.0 ; + RECT 80100.0 362850.0 81300.0 361650.0 ; + RECT 77700.0 362850.0 78900.0 361650.0 ; + RECT 80100.0 362850.0 81300.0 361650.0 ; + RECT 82500.0 362850.0 83700.0 361650.0 ; + RECT 82500.0 362850.0 83700.0 361650.0 ; + RECT 80100.0 362850.0 81300.0 361650.0 ; + RECT 84900.0 353550.0 86100.0 352350.0 ; + RECT 84900.0 363450.0 86100.0 362250.0 ; + RECT 82500.0 360300.0 81300.0 359100.0 ; + RECT 79500.0 357600.0 78300.0 356400.0 ; + RECT 80100.0 354150.0 81300.0 352950.0 ; + RECT 82500.0 362850.0 83700.0 361650.0 ; + RECT 83700.0 357600.0 82500.0 356400.0 ; + RECT 78300.0 357600.0 79500.0 356400.0 ; + RECT 81300.0 360300.0 82500.0 359100.0 ; + RECT 82500.0 357600.0 83700.0 356400.0 ; + RECT 75900.0 351450.0 90300.0 350550.0 ; + RECT 75900.0 365250.0 90300.0 364350.0 ; + RECT 77700.0 366750.0 78900.0 364350.0 ; + RECT 77700.0 375450.0 78900.0 379050.0 ; + RECT 82500.0 375450.0 83700.0 379050.0 ; + RECT 84900.0 376650.0 86100.0 378600.0 ; + RECT 84900.0 364800.0 86100.0 366750.0 ; + RECT 77700.0 375450.0 78900.0 376650.0 ; + RECT 80100.0 375450.0 81300.0 376650.0 ; + RECT 80100.0 375450.0 81300.0 376650.0 ; + RECT 77700.0 375450.0 78900.0 376650.0 ; + RECT 80100.0 375450.0 81300.0 376650.0 ; + RECT 82500.0 375450.0 83700.0 376650.0 ; + RECT 82500.0 375450.0 83700.0 376650.0 ; + RECT 80100.0 375450.0 81300.0 376650.0 ; + RECT 77700.0 366750.0 78900.0 367950.0 ; + RECT 80100.0 366750.0 81300.0 367950.0 ; + RECT 80100.0 366750.0 81300.0 367950.0 ; + RECT 77700.0 366750.0 78900.0 367950.0 ; + RECT 80100.0 366750.0 81300.0 367950.0 ; + RECT 82500.0 366750.0 83700.0 367950.0 ; + RECT 82500.0 366750.0 83700.0 367950.0 ; + RECT 80100.0 366750.0 81300.0 367950.0 ; + RECT 84900.0 376050.0 86100.0 377250.0 ; + RECT 84900.0 366150.0 86100.0 367350.0 ; + RECT 82500.0 369300.0 81300.0 370500.0 ; + RECT 79500.0 372000.0 78300.0 373200.0 ; + RECT 80100.0 375450.0 81300.0 376650.0 ; + RECT 82500.0 366750.0 83700.0 367950.0 ; + RECT 83700.0 372000.0 82500.0 373200.0 ; + RECT 78300.0 372000.0 79500.0 373200.0 ; + RECT 81300.0 369300.0 82500.0 370500.0 ; + RECT 82500.0 372000.0 83700.0 373200.0 ; + RECT 75900.0 378150.0 90300.0 379050.0 ; + RECT 75900.0 364350.0 90300.0 365250.0 ; + RECT 77700.0 390450.0 78900.0 392850.0 ; + RECT 77700.0 381750.0 78900.0 378150.0 ; + RECT 82500.0 381750.0 83700.0 378150.0 ; + RECT 84900.0 380550.0 86100.0 378600.0 ; + RECT 84900.0 392400.0 86100.0 390450.0 ; + RECT 77700.0 381750.0 78900.0 380550.0 ; + RECT 80100.0 381750.0 81300.0 380550.0 ; + RECT 80100.0 381750.0 81300.0 380550.0 ; + RECT 77700.0 381750.0 78900.0 380550.0 ; + RECT 80100.0 381750.0 81300.0 380550.0 ; + RECT 82500.0 381750.0 83700.0 380550.0 ; + RECT 82500.0 381750.0 83700.0 380550.0 ; + RECT 80100.0 381750.0 81300.0 380550.0 ; + RECT 77700.0 390450.0 78900.0 389250.0 ; + RECT 80100.0 390450.0 81300.0 389250.0 ; + RECT 80100.0 390450.0 81300.0 389250.0 ; + RECT 77700.0 390450.0 78900.0 389250.0 ; + RECT 80100.0 390450.0 81300.0 389250.0 ; + RECT 82500.0 390450.0 83700.0 389250.0 ; + RECT 82500.0 390450.0 83700.0 389250.0 ; + RECT 80100.0 390450.0 81300.0 389250.0 ; + RECT 84900.0 381150.0 86100.0 379950.0 ; + RECT 84900.0 391050.0 86100.0 389850.0 ; + RECT 82500.0 387900.0 81300.0 386700.0 ; + RECT 79500.0 385200.0 78300.0 384000.0 ; + RECT 80100.0 381750.0 81300.0 380550.0 ; + RECT 82500.0 390450.0 83700.0 389250.0 ; + RECT 83700.0 385200.0 82500.0 384000.0 ; + RECT 78300.0 385200.0 79500.0 384000.0 ; + RECT 81300.0 387900.0 82500.0 386700.0 ; + RECT 82500.0 385200.0 83700.0 384000.0 ; + RECT 75900.0 379050.0 90300.0 378150.0 ; + RECT 75900.0 392850.0 90300.0 391950.0 ; + RECT 77700.0 394350.0 78900.0 391950.0 ; + RECT 77700.0 403050.0 78900.0 406650.0 ; + RECT 82500.0 403050.0 83700.0 406650.0 ; + RECT 84900.0 404250.0 86100.0 406200.0 ; + RECT 84900.0 392400.0 86100.0 394350.0 ; + RECT 77700.0 403050.0 78900.0 404250.0 ; + RECT 80100.0 403050.0 81300.0 404250.0 ; + RECT 80100.0 403050.0 81300.0 404250.0 ; + RECT 77700.0 403050.0 78900.0 404250.0 ; + RECT 80100.0 403050.0 81300.0 404250.0 ; + RECT 82500.0 403050.0 83700.0 404250.0 ; + RECT 82500.0 403050.0 83700.0 404250.0 ; + RECT 80100.0 403050.0 81300.0 404250.0 ; + RECT 77700.0 394350.0 78900.0 395550.0 ; + RECT 80100.0 394350.0 81300.0 395550.0 ; + RECT 80100.0 394350.0 81300.0 395550.0 ; + RECT 77700.0 394350.0 78900.0 395550.0 ; + RECT 80100.0 394350.0 81300.0 395550.0 ; + RECT 82500.0 394350.0 83700.0 395550.0 ; + RECT 82500.0 394350.0 83700.0 395550.0 ; + RECT 80100.0 394350.0 81300.0 395550.0 ; + RECT 84900.0 403650.0 86100.0 404850.0 ; + RECT 84900.0 393750.0 86100.0 394950.0 ; + RECT 82500.0 396900.0 81300.0 398100.0 ; + RECT 79500.0 399600.0 78300.0 400800.0 ; + RECT 80100.0 403050.0 81300.0 404250.0 ; + RECT 82500.0 394350.0 83700.0 395550.0 ; + RECT 83700.0 399600.0 82500.0 400800.0 ; + RECT 78300.0 399600.0 79500.0 400800.0 ; + RECT 81300.0 396900.0 82500.0 398100.0 ; + RECT 82500.0 399600.0 83700.0 400800.0 ; + RECT 75900.0 405750.0 90300.0 406650.0 ; + RECT 75900.0 391950.0 90300.0 392850.0 ; + RECT 77700.0 418050.0 78900.0 420450.0 ; + RECT 77700.0 409350.0 78900.0 405750.0 ; + RECT 82500.0 409350.0 83700.0 405750.0 ; + RECT 84900.0 408150.0 86100.0 406200.0 ; + RECT 84900.0 420000.0 86100.0 418050.0 ; + RECT 77700.0 409350.0 78900.0 408150.0 ; + RECT 80100.0 409350.0 81300.0 408150.0 ; + RECT 80100.0 409350.0 81300.0 408150.0 ; + RECT 77700.0 409350.0 78900.0 408150.0 ; + RECT 80100.0 409350.0 81300.0 408150.0 ; + RECT 82500.0 409350.0 83700.0 408150.0 ; + RECT 82500.0 409350.0 83700.0 408150.0 ; + RECT 80100.0 409350.0 81300.0 408150.0 ; + RECT 77700.0 418050.0 78900.0 416850.0 ; + RECT 80100.0 418050.0 81300.0 416850.0 ; + RECT 80100.0 418050.0 81300.0 416850.0 ; + RECT 77700.0 418050.0 78900.0 416850.0 ; + RECT 80100.0 418050.0 81300.0 416850.0 ; + RECT 82500.0 418050.0 83700.0 416850.0 ; + RECT 82500.0 418050.0 83700.0 416850.0 ; + RECT 80100.0 418050.0 81300.0 416850.0 ; + RECT 84900.0 408750.0 86100.0 407550.0 ; + RECT 84900.0 418650.0 86100.0 417450.0 ; + RECT 82500.0 415500.0 81300.0 414300.0 ; + RECT 79500.0 412800.0 78300.0 411600.0 ; + RECT 80100.0 409350.0 81300.0 408150.0 ; + RECT 82500.0 418050.0 83700.0 416850.0 ; + RECT 83700.0 412800.0 82500.0 411600.0 ; + RECT 78300.0 412800.0 79500.0 411600.0 ; + RECT 81300.0 415500.0 82500.0 414300.0 ; + RECT 82500.0 412800.0 83700.0 411600.0 ; + RECT 75900.0 406650.0 90300.0 405750.0 ; + RECT 75900.0 420450.0 90300.0 419550.0 ; + RECT 96900.0 211050.0 98100.0 213000.0 ; + RECT 96900.0 199200.0 98100.0 201150.0 ; + RECT 92100.0 200550.0 93300.0 198750.0 ; + RECT 92100.0 209850.0 93300.0 213450.0 ; + RECT 94800.0 200550.0 95700.0 209850.0 ; + RECT 92100.0 209850.0 93300.0 211050.0 ; + RECT 94500.0 209850.0 95700.0 211050.0 ; + RECT 94500.0 209850.0 95700.0 211050.0 ; + RECT 92100.0 209850.0 93300.0 211050.0 ; + RECT 92100.0 200550.0 93300.0 201750.0 ; + RECT 94500.0 200550.0 95700.0 201750.0 ; + RECT 94500.0 200550.0 95700.0 201750.0 ; + RECT 92100.0 200550.0 93300.0 201750.0 ; + RECT 96900.0 210450.0 98100.0 211650.0 ; + RECT 96900.0 200550.0 98100.0 201750.0 ; + RECT 92700.0 205200.0 93900.0 206400.0 ; + RECT 92700.0 205200.0 93900.0 206400.0 ; + RECT 95250.0 205350.0 96150.0 206250.0 ; + RECT 90300.0 212550.0 99900.0 213450.0 ; + RECT 90300.0 198750.0 99900.0 199650.0 ; + RECT 96900.0 214950.0 98100.0 213000.0 ; + RECT 96900.0 226800.0 98100.0 224850.0 ; + RECT 92100.0 225450.0 93300.0 227250.0 ; + RECT 92100.0 216150.0 93300.0 212550.0 ; + RECT 94800.0 225450.0 95700.0 216150.0 ; + RECT 92100.0 216150.0 93300.0 214950.0 ; + RECT 94500.0 216150.0 95700.0 214950.0 ; + RECT 94500.0 216150.0 95700.0 214950.0 ; + RECT 92100.0 216150.0 93300.0 214950.0 ; + RECT 92100.0 225450.0 93300.0 224250.0 ; + RECT 94500.0 225450.0 95700.0 224250.0 ; + RECT 94500.0 225450.0 95700.0 224250.0 ; + RECT 92100.0 225450.0 93300.0 224250.0 ; + RECT 96900.0 215550.0 98100.0 214350.0 ; + RECT 96900.0 225450.0 98100.0 224250.0 ; + RECT 92700.0 220800.0 93900.0 219600.0 ; + RECT 92700.0 220800.0 93900.0 219600.0 ; + RECT 95250.0 220650.0 96150.0 219750.0 ; + RECT 90300.0 213450.0 99900.0 212550.0 ; + RECT 90300.0 227250.0 99900.0 226350.0 ; + RECT 96900.0 238650.0 98100.0 240600.0 ; + RECT 96900.0 226800.0 98100.0 228750.0 ; + RECT 92100.0 228150.0 93300.0 226350.0 ; + RECT 92100.0 237450.0 93300.0 241050.0 ; + RECT 94800.0 228150.0 95700.0 237450.0 ; + RECT 92100.0 237450.0 93300.0 238650.0 ; + RECT 94500.0 237450.0 95700.0 238650.0 ; + RECT 94500.0 237450.0 95700.0 238650.0 ; + RECT 92100.0 237450.0 93300.0 238650.0 ; + RECT 92100.0 228150.0 93300.0 229350.0 ; + RECT 94500.0 228150.0 95700.0 229350.0 ; + RECT 94500.0 228150.0 95700.0 229350.0 ; + RECT 92100.0 228150.0 93300.0 229350.0 ; + RECT 96900.0 238050.0 98100.0 239250.0 ; + RECT 96900.0 228150.0 98100.0 229350.0 ; + RECT 92700.0 232800.0 93900.0 234000.0 ; + RECT 92700.0 232800.0 93900.0 234000.0 ; + RECT 95250.0 232950.0 96150.0 233850.0 ; + RECT 90300.0 240150.0 99900.0 241050.0 ; + RECT 90300.0 226350.0 99900.0 227250.0 ; + RECT 96900.0 242550.0 98100.0 240600.0 ; + RECT 96900.0 254400.0 98100.0 252450.0 ; + RECT 92100.0 253050.0 93300.0 254850.0 ; + RECT 92100.0 243750.0 93300.0 240150.0 ; + RECT 94800.0 253050.0 95700.0 243750.0 ; + RECT 92100.0 243750.0 93300.0 242550.0 ; + RECT 94500.0 243750.0 95700.0 242550.0 ; + RECT 94500.0 243750.0 95700.0 242550.0 ; + RECT 92100.0 243750.0 93300.0 242550.0 ; + RECT 92100.0 253050.0 93300.0 251850.0 ; + RECT 94500.0 253050.0 95700.0 251850.0 ; + RECT 94500.0 253050.0 95700.0 251850.0 ; + RECT 92100.0 253050.0 93300.0 251850.0 ; + RECT 96900.0 243150.0 98100.0 241950.0 ; + RECT 96900.0 253050.0 98100.0 251850.0 ; + RECT 92700.0 248400.0 93900.0 247200.0 ; + RECT 92700.0 248400.0 93900.0 247200.0 ; + RECT 95250.0 248250.0 96150.0 247350.0 ; + RECT 90300.0 241050.0 99900.0 240150.0 ; + RECT 90300.0 254850.0 99900.0 253950.0 ; + RECT 96900.0 266250.0 98100.0 268200.0 ; + RECT 96900.0 254400.0 98100.0 256350.0 ; + RECT 92100.0 255750.0 93300.0 253950.0 ; + RECT 92100.0 265050.0 93300.0 268650.0 ; + RECT 94800.0 255750.0 95700.0 265050.0 ; + RECT 92100.0 265050.0 93300.0 266250.0 ; + RECT 94500.0 265050.0 95700.0 266250.0 ; + RECT 94500.0 265050.0 95700.0 266250.0 ; + RECT 92100.0 265050.0 93300.0 266250.0 ; + RECT 92100.0 255750.0 93300.0 256950.0 ; + RECT 94500.0 255750.0 95700.0 256950.0 ; + RECT 94500.0 255750.0 95700.0 256950.0 ; + RECT 92100.0 255750.0 93300.0 256950.0 ; + RECT 96900.0 265650.0 98100.0 266850.0 ; + RECT 96900.0 255750.0 98100.0 256950.0 ; + RECT 92700.0 260400.0 93900.0 261600.0 ; + RECT 92700.0 260400.0 93900.0 261600.0 ; + RECT 95250.0 260550.0 96150.0 261450.0 ; + RECT 90300.0 267750.0 99900.0 268650.0 ; + RECT 90300.0 253950.0 99900.0 254850.0 ; + RECT 96900.0 270150.0 98100.0 268200.0 ; + RECT 96900.0 282000.0 98100.0 280050.0 ; + RECT 92100.0 280650.0 93300.0 282450.0 ; + RECT 92100.0 271350.0 93300.0 267750.0 ; + RECT 94800.0 280650.0 95700.0 271350.0 ; + RECT 92100.0 271350.0 93300.0 270150.0 ; + RECT 94500.0 271350.0 95700.0 270150.0 ; + RECT 94500.0 271350.0 95700.0 270150.0 ; + RECT 92100.0 271350.0 93300.0 270150.0 ; + RECT 92100.0 280650.0 93300.0 279450.0 ; + RECT 94500.0 280650.0 95700.0 279450.0 ; + RECT 94500.0 280650.0 95700.0 279450.0 ; + RECT 92100.0 280650.0 93300.0 279450.0 ; + RECT 96900.0 270750.0 98100.0 269550.0 ; + RECT 96900.0 280650.0 98100.0 279450.0 ; + RECT 92700.0 276000.0 93900.0 274800.0 ; + RECT 92700.0 276000.0 93900.0 274800.0 ; + RECT 95250.0 275850.0 96150.0 274950.0 ; + RECT 90300.0 268650.0 99900.0 267750.0 ; + RECT 90300.0 282450.0 99900.0 281550.0 ; + RECT 96900.0 293850.0 98100.0 295800.0 ; + RECT 96900.0 282000.0 98100.0 283950.0 ; + RECT 92100.0 283350.0 93300.0 281550.0 ; + RECT 92100.0 292650.0 93300.0 296250.0 ; + RECT 94800.0 283350.0 95700.0 292650.0 ; + RECT 92100.0 292650.0 93300.0 293850.0 ; + RECT 94500.0 292650.0 95700.0 293850.0 ; + RECT 94500.0 292650.0 95700.0 293850.0 ; + RECT 92100.0 292650.0 93300.0 293850.0 ; + RECT 92100.0 283350.0 93300.0 284550.0 ; + RECT 94500.0 283350.0 95700.0 284550.0 ; + RECT 94500.0 283350.0 95700.0 284550.0 ; + RECT 92100.0 283350.0 93300.0 284550.0 ; + RECT 96900.0 293250.0 98100.0 294450.0 ; + RECT 96900.0 283350.0 98100.0 284550.0 ; + RECT 92700.0 288000.0 93900.0 289200.0 ; + RECT 92700.0 288000.0 93900.0 289200.0 ; + RECT 95250.0 288150.0 96150.0 289050.0 ; + RECT 90300.0 295350.0 99900.0 296250.0 ; + RECT 90300.0 281550.0 99900.0 282450.0 ; + RECT 96900.0 297750.0 98100.0 295800.0 ; + RECT 96900.0 309600.0 98100.0 307650.0 ; + RECT 92100.0 308250.0 93300.0 310050.0 ; + RECT 92100.0 298950.0 93300.0 295350.0 ; + RECT 94800.0 308250.0 95700.0 298950.0 ; + RECT 92100.0 298950.0 93300.0 297750.0 ; + RECT 94500.0 298950.0 95700.0 297750.0 ; + RECT 94500.0 298950.0 95700.0 297750.0 ; + RECT 92100.0 298950.0 93300.0 297750.0 ; + RECT 92100.0 308250.0 93300.0 307050.0 ; + RECT 94500.0 308250.0 95700.0 307050.0 ; + RECT 94500.0 308250.0 95700.0 307050.0 ; + RECT 92100.0 308250.0 93300.0 307050.0 ; + RECT 96900.0 298350.0 98100.0 297150.0 ; + RECT 96900.0 308250.0 98100.0 307050.0 ; + RECT 92700.0 303600.0 93900.0 302400.0 ; + RECT 92700.0 303600.0 93900.0 302400.0 ; + RECT 95250.0 303450.0 96150.0 302550.0 ; + RECT 90300.0 296250.0 99900.0 295350.0 ; + RECT 90300.0 310050.0 99900.0 309150.0 ; + RECT 96900.0 321450.0 98100.0 323400.0 ; + RECT 96900.0 309600.0 98100.0 311550.0 ; + RECT 92100.0 310950.0 93300.0 309150.0 ; + RECT 92100.0 320250.0 93300.0 323850.0 ; + RECT 94800.0 310950.0 95700.0 320250.0 ; + RECT 92100.0 320250.0 93300.0 321450.0 ; + RECT 94500.0 320250.0 95700.0 321450.0 ; + RECT 94500.0 320250.0 95700.0 321450.0 ; + RECT 92100.0 320250.0 93300.0 321450.0 ; + RECT 92100.0 310950.0 93300.0 312150.0 ; + RECT 94500.0 310950.0 95700.0 312150.0 ; + RECT 94500.0 310950.0 95700.0 312150.0 ; + RECT 92100.0 310950.0 93300.0 312150.0 ; + RECT 96900.0 320850.0 98100.0 322050.0 ; + RECT 96900.0 310950.0 98100.0 312150.0 ; + RECT 92700.0 315600.0 93900.0 316800.0 ; + RECT 92700.0 315600.0 93900.0 316800.0 ; + RECT 95250.0 315750.0 96150.0 316650.0 ; + RECT 90300.0 322950.0 99900.0 323850.0 ; + RECT 90300.0 309150.0 99900.0 310050.0 ; + RECT 96900.0 325350.0 98100.0 323400.0 ; + RECT 96900.0 337200.0 98100.0 335250.0 ; + RECT 92100.0 335850.0 93300.0 337650.0 ; + RECT 92100.0 326550.0 93300.0 322950.0 ; + RECT 94800.0 335850.0 95700.0 326550.0 ; + RECT 92100.0 326550.0 93300.0 325350.0 ; + RECT 94500.0 326550.0 95700.0 325350.0 ; + RECT 94500.0 326550.0 95700.0 325350.0 ; + RECT 92100.0 326550.0 93300.0 325350.0 ; + RECT 92100.0 335850.0 93300.0 334650.0 ; + RECT 94500.0 335850.0 95700.0 334650.0 ; + RECT 94500.0 335850.0 95700.0 334650.0 ; + RECT 92100.0 335850.0 93300.0 334650.0 ; + RECT 96900.0 325950.0 98100.0 324750.0 ; + RECT 96900.0 335850.0 98100.0 334650.0 ; + RECT 92700.0 331200.0 93900.0 330000.0 ; + RECT 92700.0 331200.0 93900.0 330000.0 ; + RECT 95250.0 331050.0 96150.0 330150.0 ; + RECT 90300.0 323850.0 99900.0 322950.0 ; + RECT 90300.0 337650.0 99900.0 336750.0 ; + RECT 96900.0 349050.0 98100.0 351000.0 ; + RECT 96900.0 337200.0 98100.0 339150.0 ; + RECT 92100.0 338550.0 93300.0 336750.0 ; + RECT 92100.0 347850.0 93300.0 351450.0 ; + RECT 94800.0 338550.0 95700.0 347850.0 ; + RECT 92100.0 347850.0 93300.0 349050.0 ; + RECT 94500.0 347850.0 95700.0 349050.0 ; + RECT 94500.0 347850.0 95700.0 349050.0 ; + RECT 92100.0 347850.0 93300.0 349050.0 ; + RECT 92100.0 338550.0 93300.0 339750.0 ; + RECT 94500.0 338550.0 95700.0 339750.0 ; + RECT 94500.0 338550.0 95700.0 339750.0 ; + RECT 92100.0 338550.0 93300.0 339750.0 ; + RECT 96900.0 348450.0 98100.0 349650.0 ; + RECT 96900.0 338550.0 98100.0 339750.0 ; + RECT 92700.0 343200.0 93900.0 344400.0 ; + RECT 92700.0 343200.0 93900.0 344400.0 ; + RECT 95250.0 343350.0 96150.0 344250.0 ; + RECT 90300.0 350550.0 99900.0 351450.0 ; + RECT 90300.0 336750.0 99900.0 337650.0 ; + RECT 96900.0 352950.0 98100.0 351000.0 ; + RECT 96900.0 364800.0 98100.0 362850.0 ; + RECT 92100.0 363450.0 93300.0 365250.0 ; + RECT 92100.0 354150.0 93300.0 350550.0 ; + RECT 94800.0 363450.0 95700.0 354150.0 ; + RECT 92100.0 354150.0 93300.0 352950.0 ; + RECT 94500.0 354150.0 95700.0 352950.0 ; + RECT 94500.0 354150.0 95700.0 352950.0 ; + RECT 92100.0 354150.0 93300.0 352950.0 ; + RECT 92100.0 363450.0 93300.0 362250.0 ; + RECT 94500.0 363450.0 95700.0 362250.0 ; + RECT 94500.0 363450.0 95700.0 362250.0 ; + RECT 92100.0 363450.0 93300.0 362250.0 ; + RECT 96900.0 353550.0 98100.0 352350.0 ; + RECT 96900.0 363450.0 98100.0 362250.0 ; + RECT 92700.0 358800.0 93900.0 357600.0 ; + RECT 92700.0 358800.0 93900.0 357600.0 ; + RECT 95250.0 358650.0 96150.0 357750.0 ; + RECT 90300.0 351450.0 99900.0 350550.0 ; + RECT 90300.0 365250.0 99900.0 364350.0 ; + RECT 96900.0 376650.0 98100.0 378600.0 ; + RECT 96900.0 364800.0 98100.0 366750.0 ; + RECT 92100.0 366150.0 93300.0 364350.0 ; + RECT 92100.0 375450.0 93300.0 379050.0 ; + RECT 94800.0 366150.0 95700.0 375450.0 ; + RECT 92100.0 375450.0 93300.0 376650.0 ; + RECT 94500.0 375450.0 95700.0 376650.0 ; + RECT 94500.0 375450.0 95700.0 376650.0 ; + RECT 92100.0 375450.0 93300.0 376650.0 ; + RECT 92100.0 366150.0 93300.0 367350.0 ; + RECT 94500.0 366150.0 95700.0 367350.0 ; + RECT 94500.0 366150.0 95700.0 367350.0 ; + RECT 92100.0 366150.0 93300.0 367350.0 ; + RECT 96900.0 376050.0 98100.0 377250.0 ; + RECT 96900.0 366150.0 98100.0 367350.0 ; + RECT 92700.0 370800.0 93900.0 372000.0 ; + RECT 92700.0 370800.0 93900.0 372000.0 ; + RECT 95250.0 370950.0 96150.0 371850.0 ; + RECT 90300.0 378150.0 99900.0 379050.0 ; + RECT 90300.0 364350.0 99900.0 365250.0 ; + RECT 96900.0 380550.0 98100.0 378600.0 ; + RECT 96900.0 392400.0 98100.0 390450.0 ; + RECT 92100.0 391050.0 93300.0 392850.0 ; + RECT 92100.0 381750.0 93300.0 378150.0 ; + RECT 94800.0 391050.0 95700.0 381750.0 ; + RECT 92100.0 381750.0 93300.0 380550.0 ; + RECT 94500.0 381750.0 95700.0 380550.0 ; + RECT 94500.0 381750.0 95700.0 380550.0 ; + RECT 92100.0 381750.0 93300.0 380550.0 ; + RECT 92100.0 391050.0 93300.0 389850.0 ; + RECT 94500.0 391050.0 95700.0 389850.0 ; + RECT 94500.0 391050.0 95700.0 389850.0 ; + RECT 92100.0 391050.0 93300.0 389850.0 ; + RECT 96900.0 381150.0 98100.0 379950.0 ; + RECT 96900.0 391050.0 98100.0 389850.0 ; + RECT 92700.0 386400.0 93900.0 385200.0 ; + RECT 92700.0 386400.0 93900.0 385200.0 ; + RECT 95250.0 386250.0 96150.0 385350.0 ; + RECT 90300.0 379050.0 99900.0 378150.0 ; + RECT 90300.0 392850.0 99900.0 391950.0 ; + RECT 96900.0 404250.0 98100.0 406200.0 ; + RECT 96900.0 392400.0 98100.0 394350.0 ; + RECT 92100.0 393750.0 93300.0 391950.0 ; + RECT 92100.0 403050.0 93300.0 406650.0 ; + RECT 94800.0 393750.0 95700.0 403050.0 ; + RECT 92100.0 403050.0 93300.0 404250.0 ; + RECT 94500.0 403050.0 95700.0 404250.0 ; + RECT 94500.0 403050.0 95700.0 404250.0 ; + RECT 92100.0 403050.0 93300.0 404250.0 ; + RECT 92100.0 393750.0 93300.0 394950.0 ; + RECT 94500.0 393750.0 95700.0 394950.0 ; + RECT 94500.0 393750.0 95700.0 394950.0 ; + RECT 92100.0 393750.0 93300.0 394950.0 ; + RECT 96900.0 403650.0 98100.0 404850.0 ; + RECT 96900.0 393750.0 98100.0 394950.0 ; + RECT 92700.0 398400.0 93900.0 399600.0 ; + RECT 92700.0 398400.0 93900.0 399600.0 ; + RECT 95250.0 398550.0 96150.0 399450.0 ; + RECT 90300.0 405750.0 99900.0 406650.0 ; + RECT 90300.0 391950.0 99900.0 392850.0 ; + RECT 96900.0 408150.0 98100.0 406200.0 ; + RECT 96900.0 420000.0 98100.0 418050.0 ; + RECT 92100.0 418650.0 93300.0 420450.0 ; + RECT 92100.0 409350.0 93300.0 405750.0 ; + RECT 94800.0 418650.0 95700.0 409350.0 ; + RECT 92100.0 409350.0 93300.0 408150.0 ; + RECT 94500.0 409350.0 95700.0 408150.0 ; + RECT 94500.0 409350.0 95700.0 408150.0 ; + RECT 92100.0 409350.0 93300.0 408150.0 ; + RECT 92100.0 418650.0 93300.0 417450.0 ; + RECT 94500.0 418650.0 95700.0 417450.0 ; + RECT 94500.0 418650.0 95700.0 417450.0 ; + RECT 92100.0 418650.0 93300.0 417450.0 ; + RECT 96900.0 408750.0 98100.0 407550.0 ; + RECT 96900.0 418650.0 98100.0 417450.0 ; + RECT 92700.0 414000.0 93900.0 412800.0 ; + RECT 92700.0 414000.0 93900.0 412800.0 ; + RECT 95250.0 413850.0 96150.0 412950.0 ; + RECT 90300.0 406650.0 99900.0 405750.0 ; + RECT 90300.0 420450.0 99900.0 419550.0 ; + RECT 60150.0 94800.0 58950.0 96000.0 ; + RECT 62250.0 109200.0 61050.0 110400.0 ; + RECT 64350.0 122400.0 63150.0 123600.0 ; + RECT 66450.0 136800.0 65250.0 138000.0 ; + RECT 68550.0 150000.0 67350.0 151200.0 ; + RECT 70650.0 164400.0 69450.0 165600.0 ; + RECT 72750.0 177600.0 71550.0 178800.0 ; + RECT 74850.0 192000.0 73650.0 193200.0 ; + RECT 60150.0 206400.0 58950.0 207600.0 ; + RECT 68550.0 203700.0 67350.0 204900.0 ; + RECT 60150.0 218400.0 58950.0 219600.0 ; + RECT 70650.0 221100.0 69450.0 222300.0 ; + RECT 60150.0 234000.0 58950.0 235200.0 ; + RECT 72750.0 231300.0 71550.0 232500.0 ; + RECT 60150.0 246000.0 58950.0 247200.0 ; + RECT 74850.0 248700.0 73650.0 249900.0 ; + RECT 62250.0 261600.0 61050.0 262800.0 ; + RECT 68550.0 258900.0 67350.0 260100.0 ; + RECT 62250.0 273600.0 61050.0 274800.0 ; + RECT 70650.0 276300.0 69450.0 277500.0 ; + RECT 62250.0 289200.0 61050.0 290400.0 ; + RECT 72750.0 286500.0 71550.0 287700.0 ; + RECT 62250.0 301200.0 61050.0 302400.0 ; + RECT 74850.0 303900.0 73650.0 305100.0 ; + RECT 64350.0 316800.0 63150.0 318000.0 ; + RECT 68550.0 314100.0 67350.0 315300.0 ; + RECT 64350.0 328800.0 63150.0 330000.0 ; + RECT 70650.0 331500.0 69450.0 332700.0 ; + RECT 64350.0 344400.0 63150.0 345600.0 ; + RECT 72750.0 341700.0 71550.0 342900.0 ; + RECT 64350.0 356400.0 63150.0 357600.0 ; + RECT 74850.0 359100.0 73650.0 360300.0 ; + RECT 66450.0 372000.0 65250.0 373200.0 ; + RECT 68550.0 369300.0 67350.0 370500.0 ; + RECT 66450.0 384000.0 65250.0 385200.0 ; + RECT 70650.0 386700.0 69450.0 387900.0 ; + RECT 66450.0 399600.0 65250.0 400800.0 ; + RECT 72750.0 396900.0 71550.0 398100.0 ; + RECT 66450.0 411600.0 65250.0 412800.0 ; + RECT 74850.0 414300.0 73650.0 415500.0 ; + RECT 95250.0 205350.0 96150.0 206250.0 ; + RECT 95250.0 219750.0 96150.0 220650.0 ; + RECT 95250.0 232950.0 96150.0 233850.0 ; + RECT 95250.0 247350.0 96150.0 248250.0 ; + RECT 95250.0 260550.0 96150.0 261450.0 ; + RECT 95250.0 274950.0 96150.0 275850.0 ; + RECT 95250.0 288150.0 96150.0 289050.0 ; + RECT 95250.0 302550.0 96150.0 303450.0 ; + RECT 95250.0 315750.0 96150.0 316650.0 ; + RECT 95250.0 330150.0 96150.0 331050.0 ; + RECT 95250.0 343350.0 96150.0 344250.0 ; + RECT 95250.0 357750.0 96150.0 358650.0 ; + RECT 95250.0 370950.0 96150.0 371850.0 ; + RECT 95250.0 385350.0 96150.0 386250.0 ; + RECT 95250.0 398550.0 96150.0 399450.0 ; + RECT 95250.0 412950.0 96150.0 413850.0 ; + RECT 59100.0 102150.0 130500.0 103050.0 ; + RECT 59100.0 129750.0 130500.0 130650.0 ; + RECT 59100.0 157350.0 130500.0 158250.0 ; + RECT 59100.0 184950.0 130500.0 185850.0 ; + RECT 59100.0 212550.0 130500.0 213450.0 ; + RECT 59100.0 240150.0 130500.0 241050.0 ; + RECT 59100.0 267750.0 130500.0 268650.0 ; + RECT 59100.0 295350.0 130500.0 296250.0 ; + RECT 59100.0 322950.0 130500.0 323850.0 ; + RECT 59100.0 350550.0 130500.0 351450.0 ; + RECT 59100.0 378150.0 130500.0 379050.0 ; + RECT 59100.0 405750.0 130500.0 406650.0 ; + RECT 59100.0 88350.0 130500.0 89250.0 ; + RECT 59100.0 115950.0 130500.0 116850.0 ; + RECT 59100.0 143550.0 130500.0 144450.0 ; + RECT 59100.0 171150.0 130500.0 172050.0 ; + RECT 59100.0 198750.0 130500.0 199650.0 ; + RECT 59100.0 226350.0 130500.0 227250.0 ; + RECT 59100.0 253950.0 130500.0 254850.0 ; + RECT 59100.0 281550.0 130500.0 282450.0 ; + RECT 59100.0 309150.0 130500.0 310050.0 ; + RECT 59100.0 336750.0 130500.0 337650.0 ; + RECT 59100.0 364350.0 130500.0 365250.0 ; + RECT 59100.0 391950.0 130500.0 392850.0 ; + RECT 59100.0 419550.0 130500.0 420450.0 ; + RECT 103050.0 205350.0 108600.0 206250.0 ; + RECT 111150.0 206550.0 112050.0 207450.0 ; + RECT 111150.0 205350.0 112050.0 206250.0 ; + RECT 111150.0 206250.0 112050.0 207000.0 ; + RECT 111600.0 206550.0 118200.0 207450.0 ; + RECT 118200.0 206550.0 119400.0 207450.0 ; + RECT 127650.0 206550.0 128550.0 207450.0 ; + RECT 127650.0 205350.0 128550.0 206250.0 ; + RECT 123600.0 206550.0 128100.0 207450.0 ; + RECT 127650.0 205800.0 128550.0 207000.0 ; + RECT 128100.0 205350.0 132600.0 206250.0 ; + RECT 103050.0 219750.0 108600.0 220650.0 ; + RECT 111150.0 218550.0 112050.0 219450.0 ; + RECT 111150.0 219750.0 112050.0 220650.0 ; + RECT 111150.0 219000.0 112050.0 220650.0 ; + RECT 111600.0 218550.0 118200.0 219450.0 ; + RECT 118200.0 218550.0 119400.0 219450.0 ; + RECT 127650.0 218550.0 128550.0 219450.0 ; + RECT 127650.0 219750.0 128550.0 220650.0 ; + RECT 123600.0 218550.0 128100.0 219450.0 ; + RECT 127650.0 219000.0 128550.0 220200.0 ; + RECT 128100.0 219750.0 132600.0 220650.0 ; + RECT 103050.0 232950.0 108600.0 233850.0 ; + RECT 111150.0 234150.0 112050.0 235050.0 ; + RECT 111150.0 232950.0 112050.0 233850.0 ; + RECT 111150.0 233850.0 112050.0 234600.0 ; + RECT 111600.0 234150.0 118200.0 235050.0 ; + RECT 118200.0 234150.0 119400.0 235050.0 ; + RECT 127650.0 234150.0 128550.0 235050.0 ; + RECT 127650.0 232950.0 128550.0 233850.0 ; + RECT 123600.0 234150.0 128100.0 235050.0 ; + RECT 127650.0 233400.0 128550.0 234600.0 ; + RECT 128100.0 232950.0 132600.0 233850.0 ; + RECT 103050.0 247350.0 108600.0 248250.0 ; + RECT 111150.0 246150.0 112050.0 247050.0 ; + RECT 111150.0 247350.0 112050.0 248250.0 ; + RECT 111150.0 246600.0 112050.0 248250.0 ; + RECT 111600.0 246150.0 118200.0 247050.0 ; + RECT 118200.0 246150.0 119400.0 247050.0 ; + RECT 127650.0 246150.0 128550.0 247050.0 ; + RECT 127650.0 247350.0 128550.0 248250.0 ; + RECT 123600.0 246150.0 128100.0 247050.0 ; + RECT 127650.0 246600.0 128550.0 247800.0 ; + RECT 128100.0 247350.0 132600.0 248250.0 ; + RECT 103050.0 260550.0 108600.0 261450.0 ; + RECT 111150.0 261750.0 112050.0 262650.0 ; + RECT 111150.0 260550.0 112050.0 261450.0 ; + RECT 111150.0 261450.0 112050.0 262200.0 ; + RECT 111600.0 261750.0 118200.0 262650.0 ; + RECT 118200.0 261750.0 119400.0 262650.0 ; + RECT 127650.0 261750.0 128550.0 262650.0 ; + RECT 127650.0 260550.0 128550.0 261450.0 ; + RECT 123600.0 261750.0 128100.0 262650.0 ; + RECT 127650.0 261000.0 128550.0 262200.0 ; + RECT 128100.0 260550.0 132600.0 261450.0 ; + RECT 103050.0 274950.0 108600.0 275850.0 ; + RECT 111150.0 273750.0 112050.0 274650.0 ; + RECT 111150.0 274950.0 112050.0 275850.0 ; + RECT 111150.0 274200.0 112050.0 275850.0 ; + RECT 111600.0 273750.0 118200.0 274650.0 ; + RECT 118200.0 273750.0 119400.0 274650.0 ; + RECT 127650.0 273750.0 128550.0 274650.0 ; + RECT 127650.0 274950.0 128550.0 275850.0 ; + RECT 123600.0 273750.0 128100.0 274650.0 ; + RECT 127650.0 274200.0 128550.0 275400.0 ; + RECT 128100.0 274950.0 132600.0 275850.0 ; + RECT 103050.0 288150.0 108600.0 289050.0 ; + RECT 111150.0 289350.0 112050.0 290250.0 ; + RECT 111150.0 288150.0 112050.0 289050.0 ; + RECT 111150.0 289050.0 112050.0 289800.0 ; + RECT 111600.0 289350.0 118200.0 290250.0 ; + RECT 118200.0 289350.0 119400.0 290250.0 ; + RECT 127650.0 289350.0 128550.0 290250.0 ; + RECT 127650.0 288150.0 128550.0 289050.0 ; + RECT 123600.0 289350.0 128100.0 290250.0 ; + RECT 127650.0 288600.0 128550.0 289800.0 ; + RECT 128100.0 288150.0 132600.0 289050.0 ; + RECT 103050.0 302550.0 108600.0 303450.0 ; + RECT 111150.0 301350.0 112050.0 302250.0 ; + RECT 111150.0 302550.0 112050.0 303450.0 ; + RECT 111150.0 301800.0 112050.0 303450.0 ; + RECT 111600.0 301350.0 118200.0 302250.0 ; + RECT 118200.0 301350.0 119400.0 302250.0 ; + RECT 127650.0 301350.0 128550.0 302250.0 ; + RECT 127650.0 302550.0 128550.0 303450.0 ; + RECT 123600.0 301350.0 128100.0 302250.0 ; + RECT 127650.0 301800.0 128550.0 303000.0 ; + RECT 128100.0 302550.0 132600.0 303450.0 ; + RECT 103050.0 315750.0 108600.0 316650.0 ; + RECT 111150.0 316950.0 112050.0 317850.0 ; + RECT 111150.0 315750.0 112050.0 316650.0 ; + RECT 111150.0 316650.0 112050.0 317400.0 ; + RECT 111600.0 316950.0 118200.0 317850.0 ; + RECT 118200.0 316950.0 119400.0 317850.0 ; + RECT 127650.0 316950.0 128550.0 317850.0 ; + RECT 127650.0 315750.0 128550.0 316650.0 ; + RECT 123600.0 316950.0 128100.0 317850.0 ; + RECT 127650.0 316200.0 128550.0 317400.0 ; + RECT 128100.0 315750.0 132600.0 316650.0 ; + RECT 103050.0 330150.0 108600.0 331050.0 ; + RECT 111150.0 328950.0 112050.0 329850.0 ; + RECT 111150.0 330150.0 112050.0 331050.0 ; + RECT 111150.0 329400.0 112050.0 331050.0 ; + RECT 111600.0 328950.0 118200.0 329850.0 ; + RECT 118200.0 328950.0 119400.0 329850.0 ; + RECT 127650.0 328950.0 128550.0 329850.0 ; + RECT 127650.0 330150.0 128550.0 331050.0 ; + RECT 123600.0 328950.0 128100.0 329850.0 ; + RECT 127650.0 329400.0 128550.0 330600.0 ; + RECT 128100.0 330150.0 132600.0 331050.0 ; + RECT 103050.0 343350.0 108600.0 344250.0 ; + RECT 111150.0 344550.0 112050.0 345450.0 ; + RECT 111150.0 343350.0 112050.0 344250.0 ; + RECT 111150.0 344250.0 112050.0 345000.0 ; + RECT 111600.0 344550.0 118200.0 345450.0 ; + RECT 118200.0 344550.0 119400.0 345450.0 ; + RECT 127650.0 344550.0 128550.0 345450.0 ; + RECT 127650.0 343350.0 128550.0 344250.0 ; + RECT 123600.0 344550.0 128100.0 345450.0 ; + RECT 127650.0 343800.0 128550.0 345000.0 ; + RECT 128100.0 343350.0 132600.0 344250.0 ; + RECT 103050.0 357750.0 108600.0 358650.0 ; + RECT 111150.0 356550.0 112050.0 357450.0 ; + RECT 111150.0 357750.0 112050.0 358650.0 ; + RECT 111150.0 357000.0 112050.0 358650.0 ; + RECT 111600.0 356550.0 118200.0 357450.0 ; + RECT 118200.0 356550.0 119400.0 357450.0 ; + RECT 127650.0 356550.0 128550.0 357450.0 ; + RECT 127650.0 357750.0 128550.0 358650.0 ; + RECT 123600.0 356550.0 128100.0 357450.0 ; + RECT 127650.0 357000.0 128550.0 358200.0 ; + RECT 128100.0 357750.0 132600.0 358650.0 ; + RECT 103050.0 370950.0 108600.0 371850.0 ; + RECT 111150.0 372150.0 112050.0 373050.0 ; + RECT 111150.0 370950.0 112050.0 371850.0 ; + RECT 111150.0 371850.0 112050.0 372600.0 ; + RECT 111600.0 372150.0 118200.0 373050.0 ; + RECT 118200.0 372150.0 119400.0 373050.0 ; + RECT 127650.0 372150.0 128550.0 373050.0 ; + RECT 127650.0 370950.0 128550.0 371850.0 ; + RECT 123600.0 372150.0 128100.0 373050.0 ; + RECT 127650.0 371400.0 128550.0 372600.0 ; + RECT 128100.0 370950.0 132600.0 371850.0 ; + RECT 103050.0 385350.0 108600.0 386250.0 ; + RECT 111150.0 384150.0 112050.0 385050.0 ; + RECT 111150.0 385350.0 112050.0 386250.0 ; + RECT 111150.0 384600.0 112050.0 386250.0 ; + RECT 111600.0 384150.0 118200.0 385050.0 ; + RECT 118200.0 384150.0 119400.0 385050.0 ; + RECT 127650.0 384150.0 128550.0 385050.0 ; + RECT 127650.0 385350.0 128550.0 386250.0 ; + RECT 123600.0 384150.0 128100.0 385050.0 ; + RECT 127650.0 384600.0 128550.0 385800.0 ; + RECT 128100.0 385350.0 132600.0 386250.0 ; + RECT 103050.0 398550.0 108600.0 399450.0 ; + RECT 111150.0 399750.0 112050.0 400650.0 ; + RECT 111150.0 398550.0 112050.0 399450.0 ; + RECT 111150.0 399450.0 112050.0 400200.0 ; + RECT 111600.0 399750.0 118200.0 400650.0 ; + RECT 118200.0 399750.0 119400.0 400650.0 ; + RECT 127650.0 399750.0 128550.0 400650.0 ; + RECT 127650.0 398550.0 128550.0 399450.0 ; + RECT 123600.0 399750.0 128100.0 400650.0 ; + RECT 127650.0 399000.0 128550.0 400200.0 ; + RECT 128100.0 398550.0 132600.0 399450.0 ; + RECT 103050.0 412950.0 108600.0 413850.0 ; + RECT 111150.0 411750.0 112050.0 412650.0 ; + RECT 111150.0 412950.0 112050.0 413850.0 ; + RECT 111150.0 412200.0 112050.0 413850.0 ; + RECT 111600.0 411750.0 118200.0 412650.0 ; + RECT 118200.0 411750.0 119400.0 412650.0 ; + RECT 127650.0 411750.0 128550.0 412650.0 ; + RECT 127650.0 412950.0 128550.0 413850.0 ; + RECT 123600.0 411750.0 128100.0 412650.0 ; + RECT 127650.0 412200.0 128550.0 413400.0 ; + RECT 128100.0 412950.0 132600.0 413850.0 ; + RECT 112800.0 211050.0 114000.0 213000.0 ; + RECT 112800.0 199200.0 114000.0 201150.0 ; + RECT 108000.0 200550.0 109200.0 198750.0 ; + RECT 108000.0 209850.0 109200.0 213450.0 ; + RECT 110700.0 200550.0 111600.0 209850.0 ; + RECT 108000.0 209850.0 109200.0 211050.0 ; + RECT 110400.0 209850.0 111600.0 211050.0 ; + RECT 110400.0 209850.0 111600.0 211050.0 ; + RECT 108000.0 209850.0 109200.0 211050.0 ; + RECT 108000.0 200550.0 109200.0 201750.0 ; + RECT 110400.0 200550.0 111600.0 201750.0 ; + RECT 110400.0 200550.0 111600.0 201750.0 ; + RECT 108000.0 200550.0 109200.0 201750.0 ; + RECT 112800.0 210450.0 114000.0 211650.0 ; + RECT 112800.0 200550.0 114000.0 201750.0 ; + RECT 108600.0 205200.0 109800.0 206400.0 ; + RECT 108600.0 205200.0 109800.0 206400.0 ; + RECT 111150.0 205350.0 112050.0 206250.0 ; + RECT 106200.0 212550.0 115800.0 213450.0 ; + RECT 106200.0 198750.0 115800.0 199650.0 ; + RECT 117600.0 201150.0 118800.0 198750.0 ; + RECT 117600.0 209850.0 118800.0 213450.0 ; + RECT 122400.0 209850.0 123600.0 213450.0 ; + RECT 124800.0 211050.0 126000.0 213000.0 ; + RECT 124800.0 199200.0 126000.0 201150.0 ; + RECT 117600.0 209850.0 118800.0 211050.0 ; + RECT 120000.0 209850.0 121200.0 211050.0 ; + RECT 120000.0 209850.0 121200.0 211050.0 ; + RECT 117600.0 209850.0 118800.0 211050.0 ; + RECT 120000.0 209850.0 121200.0 211050.0 ; + RECT 122400.0 209850.0 123600.0 211050.0 ; + RECT 122400.0 209850.0 123600.0 211050.0 ; + RECT 120000.0 209850.0 121200.0 211050.0 ; + RECT 117600.0 201150.0 118800.0 202350.0 ; + RECT 120000.0 201150.0 121200.0 202350.0 ; + RECT 120000.0 201150.0 121200.0 202350.0 ; + RECT 117600.0 201150.0 118800.0 202350.0 ; + RECT 120000.0 201150.0 121200.0 202350.0 ; + RECT 122400.0 201150.0 123600.0 202350.0 ; + RECT 122400.0 201150.0 123600.0 202350.0 ; + RECT 120000.0 201150.0 121200.0 202350.0 ; + RECT 124800.0 210450.0 126000.0 211650.0 ; + RECT 124800.0 200550.0 126000.0 201750.0 ; + RECT 122400.0 203700.0 121200.0 204900.0 ; + RECT 119400.0 206400.0 118200.0 207600.0 ; + RECT 120000.0 209850.0 121200.0 211050.0 ; + RECT 122400.0 201150.0 123600.0 202350.0 ; + RECT 123600.0 206400.0 122400.0 207600.0 ; + RECT 118200.0 206400.0 119400.0 207600.0 ; + RECT 121200.0 203700.0 122400.0 204900.0 ; + RECT 122400.0 206400.0 123600.0 207600.0 ; + RECT 115800.0 212550.0 130200.0 213450.0 ; + RECT 115800.0 198750.0 130200.0 199650.0 ; + RECT 136800.0 211050.0 138000.0 213000.0 ; + RECT 136800.0 199200.0 138000.0 201150.0 ; + RECT 132000.0 200550.0 133200.0 198750.0 ; + RECT 132000.0 209850.0 133200.0 213450.0 ; + RECT 134700.0 200550.0 135600.0 209850.0 ; + RECT 132000.0 209850.0 133200.0 211050.0 ; + RECT 134400.0 209850.0 135600.0 211050.0 ; + RECT 134400.0 209850.0 135600.0 211050.0 ; + RECT 132000.0 209850.0 133200.0 211050.0 ; + RECT 132000.0 200550.0 133200.0 201750.0 ; + RECT 134400.0 200550.0 135600.0 201750.0 ; + RECT 134400.0 200550.0 135600.0 201750.0 ; + RECT 132000.0 200550.0 133200.0 201750.0 ; + RECT 136800.0 210450.0 138000.0 211650.0 ; + RECT 136800.0 200550.0 138000.0 201750.0 ; + RECT 132600.0 205200.0 133800.0 206400.0 ; + RECT 132600.0 205200.0 133800.0 206400.0 ; + RECT 135150.0 205350.0 136050.0 206250.0 ; + RECT 130200.0 212550.0 139800.0 213450.0 ; + RECT 130200.0 198750.0 139800.0 199650.0 ; + RECT 102450.0 205200.0 103650.0 206400.0 ; + RECT 104400.0 202800.0 105600.0 204000.0 ; + RECT 121200.0 203700.0 120000.0 204900.0 ; + RECT 112800.0 214950.0 114000.0 213000.0 ; + RECT 112800.0 226800.0 114000.0 224850.0 ; + RECT 108000.0 225450.0 109200.0 227250.0 ; + RECT 108000.0 216150.0 109200.0 212550.0 ; + RECT 110700.0 225450.0 111600.0 216150.0 ; + RECT 108000.0 216150.0 109200.0 214950.0 ; + RECT 110400.0 216150.0 111600.0 214950.0 ; + RECT 110400.0 216150.0 111600.0 214950.0 ; + RECT 108000.0 216150.0 109200.0 214950.0 ; + RECT 108000.0 225450.0 109200.0 224250.0 ; + RECT 110400.0 225450.0 111600.0 224250.0 ; + RECT 110400.0 225450.0 111600.0 224250.0 ; + RECT 108000.0 225450.0 109200.0 224250.0 ; + RECT 112800.0 215550.0 114000.0 214350.0 ; + RECT 112800.0 225450.0 114000.0 224250.0 ; + RECT 108600.0 220800.0 109800.0 219600.0 ; + RECT 108600.0 220800.0 109800.0 219600.0 ; + RECT 111150.0 220650.0 112050.0 219750.0 ; + RECT 106200.0 213450.0 115800.0 212550.0 ; + RECT 106200.0 227250.0 115800.0 226350.0 ; + RECT 117600.0 224850.0 118800.0 227250.0 ; + RECT 117600.0 216150.0 118800.0 212550.0 ; + RECT 122400.0 216150.0 123600.0 212550.0 ; + RECT 124800.0 214950.0 126000.0 213000.0 ; + RECT 124800.0 226800.0 126000.0 224850.0 ; + RECT 117600.0 216150.0 118800.0 214950.0 ; + RECT 120000.0 216150.0 121200.0 214950.0 ; + RECT 120000.0 216150.0 121200.0 214950.0 ; + RECT 117600.0 216150.0 118800.0 214950.0 ; + RECT 120000.0 216150.0 121200.0 214950.0 ; + RECT 122400.0 216150.0 123600.0 214950.0 ; + RECT 122400.0 216150.0 123600.0 214950.0 ; + RECT 120000.0 216150.0 121200.0 214950.0 ; + RECT 117600.0 224850.0 118800.0 223650.0 ; + RECT 120000.0 224850.0 121200.0 223650.0 ; + RECT 120000.0 224850.0 121200.0 223650.0 ; + RECT 117600.0 224850.0 118800.0 223650.0 ; + RECT 120000.0 224850.0 121200.0 223650.0 ; + RECT 122400.0 224850.0 123600.0 223650.0 ; + RECT 122400.0 224850.0 123600.0 223650.0 ; + RECT 120000.0 224850.0 121200.0 223650.0 ; + RECT 124800.0 215550.0 126000.0 214350.0 ; + RECT 124800.0 225450.0 126000.0 224250.0 ; + RECT 122400.0 222300.0 121200.0 221100.0 ; + RECT 119400.0 219600.0 118200.0 218400.0 ; + RECT 120000.0 216150.0 121200.0 214950.0 ; + RECT 122400.0 224850.0 123600.0 223650.0 ; + RECT 123600.0 219600.0 122400.0 218400.0 ; + RECT 118200.0 219600.0 119400.0 218400.0 ; + RECT 121200.0 222300.0 122400.0 221100.0 ; + RECT 122400.0 219600.0 123600.0 218400.0 ; + RECT 115800.0 213450.0 130200.0 212550.0 ; + RECT 115800.0 227250.0 130200.0 226350.0 ; + RECT 136800.0 214950.0 138000.0 213000.0 ; + RECT 136800.0 226800.0 138000.0 224850.0 ; + RECT 132000.0 225450.0 133200.0 227250.0 ; + RECT 132000.0 216150.0 133200.0 212550.0 ; + RECT 134700.0 225450.0 135600.0 216150.0 ; + RECT 132000.0 216150.0 133200.0 214950.0 ; + RECT 134400.0 216150.0 135600.0 214950.0 ; + RECT 134400.0 216150.0 135600.0 214950.0 ; + RECT 132000.0 216150.0 133200.0 214950.0 ; + RECT 132000.0 225450.0 133200.0 224250.0 ; + RECT 134400.0 225450.0 135600.0 224250.0 ; + RECT 134400.0 225450.0 135600.0 224250.0 ; + RECT 132000.0 225450.0 133200.0 224250.0 ; + RECT 136800.0 215550.0 138000.0 214350.0 ; + RECT 136800.0 225450.0 138000.0 224250.0 ; + RECT 132600.0 220800.0 133800.0 219600.0 ; + RECT 132600.0 220800.0 133800.0 219600.0 ; + RECT 135150.0 220650.0 136050.0 219750.0 ; + RECT 130200.0 213450.0 139800.0 212550.0 ; + RECT 130200.0 227250.0 139800.0 226350.0 ; + RECT 102450.0 219600.0 103650.0 220800.0 ; + RECT 104400.0 222000.0 105600.0 223200.0 ; + RECT 121200.0 221100.0 120000.0 222300.0 ; + RECT 112800.0 238650.0 114000.0 240600.0 ; + RECT 112800.0 226800.0 114000.0 228750.0 ; + RECT 108000.0 228150.0 109200.0 226350.0 ; + RECT 108000.0 237450.0 109200.0 241050.0 ; + RECT 110700.0 228150.0 111600.0 237450.0 ; + RECT 108000.0 237450.0 109200.0 238650.0 ; + RECT 110400.0 237450.0 111600.0 238650.0 ; + RECT 110400.0 237450.0 111600.0 238650.0 ; + RECT 108000.0 237450.0 109200.0 238650.0 ; + RECT 108000.0 228150.0 109200.0 229350.0 ; + RECT 110400.0 228150.0 111600.0 229350.0 ; + RECT 110400.0 228150.0 111600.0 229350.0 ; + RECT 108000.0 228150.0 109200.0 229350.0 ; + RECT 112800.0 238050.0 114000.0 239250.0 ; + RECT 112800.0 228150.0 114000.0 229350.0 ; + RECT 108600.0 232800.0 109800.0 234000.0 ; + RECT 108600.0 232800.0 109800.0 234000.0 ; + RECT 111150.0 232950.0 112050.0 233850.0 ; + RECT 106200.0 240150.0 115800.0 241050.0 ; + RECT 106200.0 226350.0 115800.0 227250.0 ; + RECT 117600.0 228750.0 118800.0 226350.0 ; + RECT 117600.0 237450.0 118800.0 241050.0 ; + RECT 122400.0 237450.0 123600.0 241050.0 ; + RECT 124800.0 238650.0 126000.0 240600.0 ; + RECT 124800.0 226800.0 126000.0 228750.0 ; + RECT 117600.0 237450.0 118800.0 238650.0 ; + RECT 120000.0 237450.0 121200.0 238650.0 ; + RECT 120000.0 237450.0 121200.0 238650.0 ; + RECT 117600.0 237450.0 118800.0 238650.0 ; + RECT 120000.0 237450.0 121200.0 238650.0 ; + RECT 122400.0 237450.0 123600.0 238650.0 ; + RECT 122400.0 237450.0 123600.0 238650.0 ; + RECT 120000.0 237450.0 121200.0 238650.0 ; + RECT 117600.0 228750.0 118800.0 229950.0 ; + RECT 120000.0 228750.0 121200.0 229950.0 ; + RECT 120000.0 228750.0 121200.0 229950.0 ; + RECT 117600.0 228750.0 118800.0 229950.0 ; + RECT 120000.0 228750.0 121200.0 229950.0 ; + RECT 122400.0 228750.0 123600.0 229950.0 ; + RECT 122400.0 228750.0 123600.0 229950.0 ; + RECT 120000.0 228750.0 121200.0 229950.0 ; + RECT 124800.0 238050.0 126000.0 239250.0 ; + RECT 124800.0 228150.0 126000.0 229350.0 ; + RECT 122400.0 231300.0 121200.0 232500.0 ; + RECT 119400.0 234000.0 118200.0 235200.0 ; + RECT 120000.0 237450.0 121200.0 238650.0 ; + RECT 122400.0 228750.0 123600.0 229950.0 ; + RECT 123600.0 234000.0 122400.0 235200.0 ; + RECT 118200.0 234000.0 119400.0 235200.0 ; + RECT 121200.0 231300.0 122400.0 232500.0 ; + RECT 122400.0 234000.0 123600.0 235200.0 ; + RECT 115800.0 240150.0 130200.0 241050.0 ; + RECT 115800.0 226350.0 130200.0 227250.0 ; + RECT 136800.0 238650.0 138000.0 240600.0 ; + RECT 136800.0 226800.0 138000.0 228750.0 ; + RECT 132000.0 228150.0 133200.0 226350.0 ; + RECT 132000.0 237450.0 133200.0 241050.0 ; + RECT 134700.0 228150.0 135600.0 237450.0 ; + RECT 132000.0 237450.0 133200.0 238650.0 ; + RECT 134400.0 237450.0 135600.0 238650.0 ; + RECT 134400.0 237450.0 135600.0 238650.0 ; + RECT 132000.0 237450.0 133200.0 238650.0 ; + RECT 132000.0 228150.0 133200.0 229350.0 ; + RECT 134400.0 228150.0 135600.0 229350.0 ; + RECT 134400.0 228150.0 135600.0 229350.0 ; + RECT 132000.0 228150.0 133200.0 229350.0 ; + RECT 136800.0 238050.0 138000.0 239250.0 ; + RECT 136800.0 228150.0 138000.0 229350.0 ; + RECT 132600.0 232800.0 133800.0 234000.0 ; + RECT 132600.0 232800.0 133800.0 234000.0 ; + RECT 135150.0 232950.0 136050.0 233850.0 ; + RECT 130200.0 240150.0 139800.0 241050.0 ; + RECT 130200.0 226350.0 139800.0 227250.0 ; + RECT 102450.0 232800.0 103650.0 234000.0 ; + RECT 104400.0 230400.0 105600.0 231600.0 ; + RECT 121200.0 231300.0 120000.0 232500.0 ; + RECT 112800.0 242550.0 114000.0 240600.0 ; + RECT 112800.0 254400.0 114000.0 252450.0 ; + RECT 108000.0 253050.0 109200.0 254850.0 ; + RECT 108000.0 243750.0 109200.0 240150.0 ; + RECT 110700.0 253050.0 111600.0 243750.0 ; + RECT 108000.0 243750.0 109200.0 242550.0 ; + RECT 110400.0 243750.0 111600.0 242550.0 ; + RECT 110400.0 243750.0 111600.0 242550.0 ; + RECT 108000.0 243750.0 109200.0 242550.0 ; + RECT 108000.0 253050.0 109200.0 251850.0 ; + RECT 110400.0 253050.0 111600.0 251850.0 ; + RECT 110400.0 253050.0 111600.0 251850.0 ; + RECT 108000.0 253050.0 109200.0 251850.0 ; + RECT 112800.0 243150.0 114000.0 241950.0 ; + RECT 112800.0 253050.0 114000.0 251850.0 ; + RECT 108600.0 248400.0 109800.0 247200.0 ; + RECT 108600.0 248400.0 109800.0 247200.0 ; + RECT 111150.0 248250.0 112050.0 247350.0 ; + RECT 106200.0 241050.0 115800.0 240150.0 ; + RECT 106200.0 254850.0 115800.0 253950.0 ; + RECT 117600.0 252450.0 118800.0 254850.0 ; + RECT 117600.0 243750.0 118800.0 240150.0 ; + RECT 122400.0 243750.0 123600.0 240150.0 ; + RECT 124800.0 242550.0 126000.0 240600.0 ; + RECT 124800.0 254400.0 126000.0 252450.0 ; + RECT 117600.0 243750.0 118800.0 242550.0 ; + RECT 120000.0 243750.0 121200.0 242550.0 ; + RECT 120000.0 243750.0 121200.0 242550.0 ; + RECT 117600.0 243750.0 118800.0 242550.0 ; + RECT 120000.0 243750.0 121200.0 242550.0 ; + RECT 122400.0 243750.0 123600.0 242550.0 ; + RECT 122400.0 243750.0 123600.0 242550.0 ; + RECT 120000.0 243750.0 121200.0 242550.0 ; + RECT 117600.0 252450.0 118800.0 251250.0 ; + RECT 120000.0 252450.0 121200.0 251250.0 ; + RECT 120000.0 252450.0 121200.0 251250.0 ; + RECT 117600.0 252450.0 118800.0 251250.0 ; + RECT 120000.0 252450.0 121200.0 251250.0 ; + RECT 122400.0 252450.0 123600.0 251250.0 ; + RECT 122400.0 252450.0 123600.0 251250.0 ; + RECT 120000.0 252450.0 121200.0 251250.0 ; + RECT 124800.0 243150.0 126000.0 241950.0 ; + RECT 124800.0 253050.0 126000.0 251850.0 ; + RECT 122400.0 249900.0 121200.0 248700.0 ; + RECT 119400.0 247200.0 118200.0 246000.0 ; + RECT 120000.0 243750.0 121200.0 242550.0 ; + RECT 122400.0 252450.0 123600.0 251250.0 ; + RECT 123600.0 247200.0 122400.0 246000.0 ; + RECT 118200.0 247200.0 119400.0 246000.0 ; + RECT 121200.0 249900.0 122400.0 248700.0 ; + RECT 122400.0 247200.0 123600.0 246000.0 ; + RECT 115800.0 241050.0 130200.0 240150.0 ; + RECT 115800.0 254850.0 130200.0 253950.0 ; + RECT 136800.0 242550.0 138000.0 240600.0 ; + RECT 136800.0 254400.0 138000.0 252450.0 ; + RECT 132000.0 253050.0 133200.0 254850.0 ; + RECT 132000.0 243750.0 133200.0 240150.0 ; + RECT 134700.0 253050.0 135600.0 243750.0 ; + RECT 132000.0 243750.0 133200.0 242550.0 ; + RECT 134400.0 243750.0 135600.0 242550.0 ; + RECT 134400.0 243750.0 135600.0 242550.0 ; + RECT 132000.0 243750.0 133200.0 242550.0 ; + RECT 132000.0 253050.0 133200.0 251850.0 ; + RECT 134400.0 253050.0 135600.0 251850.0 ; + RECT 134400.0 253050.0 135600.0 251850.0 ; + RECT 132000.0 253050.0 133200.0 251850.0 ; + RECT 136800.0 243150.0 138000.0 241950.0 ; + RECT 136800.0 253050.0 138000.0 251850.0 ; + RECT 132600.0 248400.0 133800.0 247200.0 ; + RECT 132600.0 248400.0 133800.0 247200.0 ; + RECT 135150.0 248250.0 136050.0 247350.0 ; + RECT 130200.0 241050.0 139800.0 240150.0 ; + RECT 130200.0 254850.0 139800.0 253950.0 ; + RECT 102450.0 247200.0 103650.0 248400.0 ; + RECT 104400.0 249600.0 105600.0 250800.0 ; + RECT 121200.0 248700.0 120000.0 249900.0 ; + RECT 112800.0 266250.0 114000.0 268200.0 ; + RECT 112800.0 254400.0 114000.0 256350.0 ; + RECT 108000.0 255750.0 109200.0 253950.0 ; + RECT 108000.0 265050.0 109200.0 268650.0 ; + RECT 110700.0 255750.0 111600.0 265050.0 ; + RECT 108000.0 265050.0 109200.0 266250.0 ; + RECT 110400.0 265050.0 111600.0 266250.0 ; + RECT 110400.0 265050.0 111600.0 266250.0 ; + RECT 108000.0 265050.0 109200.0 266250.0 ; + RECT 108000.0 255750.0 109200.0 256950.0 ; + RECT 110400.0 255750.0 111600.0 256950.0 ; + RECT 110400.0 255750.0 111600.0 256950.0 ; + RECT 108000.0 255750.0 109200.0 256950.0 ; + RECT 112800.0 265650.0 114000.0 266850.0 ; + RECT 112800.0 255750.0 114000.0 256950.0 ; + RECT 108600.0 260400.0 109800.0 261600.0 ; + RECT 108600.0 260400.0 109800.0 261600.0 ; + RECT 111150.0 260550.0 112050.0 261450.0 ; + RECT 106200.0 267750.0 115800.0 268650.0 ; + RECT 106200.0 253950.0 115800.0 254850.0 ; + RECT 117600.0 256350.0 118800.0 253950.0 ; + RECT 117600.0 265050.0 118800.0 268650.0 ; + RECT 122400.0 265050.0 123600.0 268650.0 ; + RECT 124800.0 266250.0 126000.0 268200.0 ; + RECT 124800.0 254400.0 126000.0 256350.0 ; + RECT 117600.0 265050.0 118800.0 266250.0 ; + RECT 120000.0 265050.0 121200.0 266250.0 ; + RECT 120000.0 265050.0 121200.0 266250.0 ; + RECT 117600.0 265050.0 118800.0 266250.0 ; + RECT 120000.0 265050.0 121200.0 266250.0 ; + RECT 122400.0 265050.0 123600.0 266250.0 ; + RECT 122400.0 265050.0 123600.0 266250.0 ; + RECT 120000.0 265050.0 121200.0 266250.0 ; + RECT 117600.0 256350.0 118800.0 257550.0 ; + RECT 120000.0 256350.0 121200.0 257550.0 ; + RECT 120000.0 256350.0 121200.0 257550.0 ; + RECT 117600.0 256350.0 118800.0 257550.0 ; + RECT 120000.0 256350.0 121200.0 257550.0 ; + RECT 122400.0 256350.0 123600.0 257550.0 ; + RECT 122400.0 256350.0 123600.0 257550.0 ; + RECT 120000.0 256350.0 121200.0 257550.0 ; + RECT 124800.0 265650.0 126000.0 266850.0 ; + RECT 124800.0 255750.0 126000.0 256950.0 ; + RECT 122400.0 258900.0 121200.0 260100.0 ; + RECT 119400.0 261600.0 118200.0 262800.0 ; + RECT 120000.0 265050.0 121200.0 266250.0 ; + RECT 122400.0 256350.0 123600.0 257550.0 ; + RECT 123600.0 261600.0 122400.0 262800.0 ; + RECT 118200.0 261600.0 119400.0 262800.0 ; + RECT 121200.0 258900.0 122400.0 260100.0 ; + RECT 122400.0 261600.0 123600.0 262800.0 ; + RECT 115800.0 267750.0 130200.0 268650.0 ; + RECT 115800.0 253950.0 130200.0 254850.0 ; + RECT 136800.0 266250.0 138000.0 268200.0 ; + RECT 136800.0 254400.0 138000.0 256350.0 ; + RECT 132000.0 255750.0 133200.0 253950.0 ; + RECT 132000.0 265050.0 133200.0 268650.0 ; + RECT 134700.0 255750.0 135600.0 265050.0 ; + RECT 132000.0 265050.0 133200.0 266250.0 ; + RECT 134400.0 265050.0 135600.0 266250.0 ; + RECT 134400.0 265050.0 135600.0 266250.0 ; + RECT 132000.0 265050.0 133200.0 266250.0 ; + RECT 132000.0 255750.0 133200.0 256950.0 ; + RECT 134400.0 255750.0 135600.0 256950.0 ; + RECT 134400.0 255750.0 135600.0 256950.0 ; + RECT 132000.0 255750.0 133200.0 256950.0 ; + RECT 136800.0 265650.0 138000.0 266850.0 ; + RECT 136800.0 255750.0 138000.0 256950.0 ; + RECT 132600.0 260400.0 133800.0 261600.0 ; + RECT 132600.0 260400.0 133800.0 261600.0 ; + RECT 135150.0 260550.0 136050.0 261450.0 ; + RECT 130200.0 267750.0 139800.0 268650.0 ; + RECT 130200.0 253950.0 139800.0 254850.0 ; + RECT 102450.0 260400.0 103650.0 261600.0 ; + RECT 104400.0 258000.0 105600.0 259200.0 ; + RECT 121200.0 258900.0 120000.0 260100.0 ; + RECT 112800.0 270150.0 114000.0 268200.0 ; + RECT 112800.0 282000.0 114000.0 280050.0 ; + RECT 108000.0 280650.0 109200.0 282450.0 ; + RECT 108000.0 271350.0 109200.0 267750.0 ; + RECT 110700.0 280650.0 111600.0 271350.0 ; + RECT 108000.0 271350.0 109200.0 270150.0 ; + RECT 110400.0 271350.0 111600.0 270150.0 ; + RECT 110400.0 271350.0 111600.0 270150.0 ; + RECT 108000.0 271350.0 109200.0 270150.0 ; + RECT 108000.0 280650.0 109200.0 279450.0 ; + RECT 110400.0 280650.0 111600.0 279450.0 ; + RECT 110400.0 280650.0 111600.0 279450.0 ; + RECT 108000.0 280650.0 109200.0 279450.0 ; + RECT 112800.0 270750.0 114000.0 269550.0 ; + RECT 112800.0 280650.0 114000.0 279450.0 ; + RECT 108600.0 276000.0 109800.0 274800.0 ; + RECT 108600.0 276000.0 109800.0 274800.0 ; + RECT 111150.0 275850.0 112050.0 274950.0 ; + RECT 106200.0 268650.0 115800.0 267750.0 ; + RECT 106200.0 282450.0 115800.0 281550.0 ; + RECT 117600.0 280050.0 118800.0 282450.0 ; + RECT 117600.0 271350.0 118800.0 267750.0 ; + RECT 122400.0 271350.0 123600.0 267750.0 ; + RECT 124800.0 270150.0 126000.0 268200.0 ; + RECT 124800.0 282000.0 126000.0 280050.0 ; + RECT 117600.0 271350.0 118800.0 270150.0 ; + RECT 120000.0 271350.0 121200.0 270150.0 ; + RECT 120000.0 271350.0 121200.0 270150.0 ; + RECT 117600.0 271350.0 118800.0 270150.0 ; + RECT 120000.0 271350.0 121200.0 270150.0 ; + RECT 122400.0 271350.0 123600.0 270150.0 ; + RECT 122400.0 271350.0 123600.0 270150.0 ; + RECT 120000.0 271350.0 121200.0 270150.0 ; + RECT 117600.0 280050.0 118800.0 278850.0 ; + RECT 120000.0 280050.0 121200.0 278850.0 ; + RECT 120000.0 280050.0 121200.0 278850.0 ; + RECT 117600.0 280050.0 118800.0 278850.0 ; + RECT 120000.0 280050.0 121200.0 278850.0 ; + RECT 122400.0 280050.0 123600.0 278850.0 ; + RECT 122400.0 280050.0 123600.0 278850.0 ; + RECT 120000.0 280050.0 121200.0 278850.0 ; + RECT 124800.0 270750.0 126000.0 269550.0 ; + RECT 124800.0 280650.0 126000.0 279450.0 ; + RECT 122400.0 277500.0 121200.0 276300.0 ; + RECT 119400.0 274800.0 118200.0 273600.0 ; + RECT 120000.0 271350.0 121200.0 270150.0 ; + RECT 122400.0 280050.0 123600.0 278850.0 ; + RECT 123600.0 274800.0 122400.0 273600.0 ; + RECT 118200.0 274800.0 119400.0 273600.0 ; + RECT 121200.0 277500.0 122400.0 276300.0 ; + RECT 122400.0 274800.0 123600.0 273600.0 ; + RECT 115800.0 268650.0 130200.0 267750.0 ; + RECT 115800.0 282450.0 130200.0 281550.0 ; + RECT 136800.0 270150.0 138000.0 268200.0 ; + RECT 136800.0 282000.0 138000.0 280050.0 ; + RECT 132000.0 280650.0 133200.0 282450.0 ; + RECT 132000.0 271350.0 133200.0 267750.0 ; + RECT 134700.0 280650.0 135600.0 271350.0 ; + RECT 132000.0 271350.0 133200.0 270150.0 ; + RECT 134400.0 271350.0 135600.0 270150.0 ; + RECT 134400.0 271350.0 135600.0 270150.0 ; + RECT 132000.0 271350.0 133200.0 270150.0 ; + RECT 132000.0 280650.0 133200.0 279450.0 ; + RECT 134400.0 280650.0 135600.0 279450.0 ; + RECT 134400.0 280650.0 135600.0 279450.0 ; + RECT 132000.0 280650.0 133200.0 279450.0 ; + RECT 136800.0 270750.0 138000.0 269550.0 ; + RECT 136800.0 280650.0 138000.0 279450.0 ; + RECT 132600.0 276000.0 133800.0 274800.0 ; + RECT 132600.0 276000.0 133800.0 274800.0 ; + RECT 135150.0 275850.0 136050.0 274950.0 ; + RECT 130200.0 268650.0 139800.0 267750.0 ; + RECT 130200.0 282450.0 139800.0 281550.0 ; + RECT 102450.0 274800.0 103650.0 276000.0 ; + RECT 104400.0 277200.0 105600.0 278400.0 ; + RECT 121200.0 276300.0 120000.0 277500.0 ; + RECT 112800.0 293850.0 114000.0 295800.0 ; + RECT 112800.0 282000.0 114000.0 283950.0 ; + RECT 108000.0 283350.0 109200.0 281550.0 ; + RECT 108000.0 292650.0 109200.0 296250.0 ; + RECT 110700.0 283350.0 111600.0 292650.0 ; + RECT 108000.0 292650.0 109200.0 293850.0 ; + RECT 110400.0 292650.0 111600.0 293850.0 ; + RECT 110400.0 292650.0 111600.0 293850.0 ; + RECT 108000.0 292650.0 109200.0 293850.0 ; + RECT 108000.0 283350.0 109200.0 284550.0 ; + RECT 110400.0 283350.0 111600.0 284550.0 ; + RECT 110400.0 283350.0 111600.0 284550.0 ; + RECT 108000.0 283350.0 109200.0 284550.0 ; + RECT 112800.0 293250.0 114000.0 294450.0 ; + RECT 112800.0 283350.0 114000.0 284550.0 ; + RECT 108600.0 288000.0 109800.0 289200.0 ; + RECT 108600.0 288000.0 109800.0 289200.0 ; + RECT 111150.0 288150.0 112050.0 289050.0 ; + RECT 106200.0 295350.0 115800.0 296250.0 ; + RECT 106200.0 281550.0 115800.0 282450.0 ; + RECT 117600.0 283950.0 118800.0 281550.0 ; + RECT 117600.0 292650.0 118800.0 296250.0 ; + RECT 122400.0 292650.0 123600.0 296250.0 ; + RECT 124800.0 293850.0 126000.0 295800.0 ; + RECT 124800.0 282000.0 126000.0 283950.0 ; + RECT 117600.0 292650.0 118800.0 293850.0 ; + RECT 120000.0 292650.0 121200.0 293850.0 ; + RECT 120000.0 292650.0 121200.0 293850.0 ; + RECT 117600.0 292650.0 118800.0 293850.0 ; + RECT 120000.0 292650.0 121200.0 293850.0 ; + RECT 122400.0 292650.0 123600.0 293850.0 ; + RECT 122400.0 292650.0 123600.0 293850.0 ; + RECT 120000.0 292650.0 121200.0 293850.0 ; + RECT 117600.0 283950.0 118800.0 285150.0 ; + RECT 120000.0 283950.0 121200.0 285150.0 ; + RECT 120000.0 283950.0 121200.0 285150.0 ; + RECT 117600.0 283950.0 118800.0 285150.0 ; + RECT 120000.0 283950.0 121200.0 285150.0 ; + RECT 122400.0 283950.0 123600.0 285150.0 ; + RECT 122400.0 283950.0 123600.0 285150.0 ; + RECT 120000.0 283950.0 121200.0 285150.0 ; + RECT 124800.0 293250.0 126000.0 294450.0 ; + RECT 124800.0 283350.0 126000.0 284550.0 ; + RECT 122400.0 286500.0 121200.0 287700.0 ; + RECT 119400.0 289200.0 118200.0 290400.0 ; + RECT 120000.0 292650.0 121200.0 293850.0 ; + RECT 122400.0 283950.0 123600.0 285150.0 ; + RECT 123600.0 289200.0 122400.0 290400.0 ; + RECT 118200.0 289200.0 119400.0 290400.0 ; + RECT 121200.0 286500.0 122400.0 287700.0 ; + RECT 122400.0 289200.0 123600.0 290400.0 ; + RECT 115800.0 295350.0 130200.0 296250.0 ; + RECT 115800.0 281550.0 130200.0 282450.0 ; + RECT 136800.0 293850.0 138000.0 295800.0 ; + RECT 136800.0 282000.0 138000.0 283950.0 ; + RECT 132000.0 283350.0 133200.0 281550.0 ; + RECT 132000.0 292650.0 133200.0 296250.0 ; + RECT 134700.0 283350.0 135600.0 292650.0 ; + RECT 132000.0 292650.0 133200.0 293850.0 ; + RECT 134400.0 292650.0 135600.0 293850.0 ; + RECT 134400.0 292650.0 135600.0 293850.0 ; + RECT 132000.0 292650.0 133200.0 293850.0 ; + RECT 132000.0 283350.0 133200.0 284550.0 ; + RECT 134400.0 283350.0 135600.0 284550.0 ; + RECT 134400.0 283350.0 135600.0 284550.0 ; + RECT 132000.0 283350.0 133200.0 284550.0 ; + RECT 136800.0 293250.0 138000.0 294450.0 ; + RECT 136800.0 283350.0 138000.0 284550.0 ; + RECT 132600.0 288000.0 133800.0 289200.0 ; + RECT 132600.0 288000.0 133800.0 289200.0 ; + RECT 135150.0 288150.0 136050.0 289050.0 ; + RECT 130200.0 295350.0 139800.0 296250.0 ; + RECT 130200.0 281550.0 139800.0 282450.0 ; + RECT 102450.0 288000.0 103650.0 289200.0 ; + RECT 104400.0 285600.0 105600.0 286800.0 ; + RECT 121200.0 286500.0 120000.0 287700.0 ; + RECT 112800.0 297750.0 114000.0 295800.0 ; + RECT 112800.0 309600.0 114000.0 307650.0 ; + RECT 108000.0 308250.0 109200.0 310050.0 ; + RECT 108000.0 298950.0 109200.0 295350.0 ; + RECT 110700.0 308250.0 111600.0 298950.0 ; + RECT 108000.0 298950.0 109200.0 297750.0 ; + RECT 110400.0 298950.0 111600.0 297750.0 ; + RECT 110400.0 298950.0 111600.0 297750.0 ; + RECT 108000.0 298950.0 109200.0 297750.0 ; + RECT 108000.0 308250.0 109200.0 307050.0 ; + RECT 110400.0 308250.0 111600.0 307050.0 ; + RECT 110400.0 308250.0 111600.0 307050.0 ; + RECT 108000.0 308250.0 109200.0 307050.0 ; + RECT 112800.0 298350.0 114000.0 297150.0 ; + RECT 112800.0 308250.0 114000.0 307050.0 ; + RECT 108600.0 303600.0 109800.0 302400.0 ; + RECT 108600.0 303600.0 109800.0 302400.0 ; + RECT 111150.0 303450.0 112050.0 302550.0 ; + RECT 106200.0 296250.0 115800.0 295350.0 ; + RECT 106200.0 310050.0 115800.0 309150.0 ; + RECT 117600.0 307650.0 118800.0 310050.0 ; + RECT 117600.0 298950.0 118800.0 295350.0 ; + RECT 122400.0 298950.0 123600.0 295350.0 ; + RECT 124800.0 297750.0 126000.0 295800.0 ; + RECT 124800.0 309600.0 126000.0 307650.0 ; + RECT 117600.0 298950.0 118800.0 297750.0 ; + RECT 120000.0 298950.0 121200.0 297750.0 ; + RECT 120000.0 298950.0 121200.0 297750.0 ; + RECT 117600.0 298950.0 118800.0 297750.0 ; + RECT 120000.0 298950.0 121200.0 297750.0 ; + RECT 122400.0 298950.0 123600.0 297750.0 ; + RECT 122400.0 298950.0 123600.0 297750.0 ; + RECT 120000.0 298950.0 121200.0 297750.0 ; + RECT 117600.0 307650.0 118800.0 306450.0 ; + RECT 120000.0 307650.0 121200.0 306450.0 ; + RECT 120000.0 307650.0 121200.0 306450.0 ; + RECT 117600.0 307650.0 118800.0 306450.0 ; + RECT 120000.0 307650.0 121200.0 306450.0 ; + RECT 122400.0 307650.0 123600.0 306450.0 ; + RECT 122400.0 307650.0 123600.0 306450.0 ; + RECT 120000.0 307650.0 121200.0 306450.0 ; + RECT 124800.0 298350.0 126000.0 297150.0 ; + RECT 124800.0 308250.0 126000.0 307050.0 ; + RECT 122400.0 305100.0 121200.0 303900.0 ; + RECT 119400.0 302400.0 118200.0 301200.0 ; + RECT 120000.0 298950.0 121200.0 297750.0 ; + RECT 122400.0 307650.0 123600.0 306450.0 ; + RECT 123600.0 302400.0 122400.0 301200.0 ; + RECT 118200.0 302400.0 119400.0 301200.0 ; + RECT 121200.0 305100.0 122400.0 303900.0 ; + RECT 122400.0 302400.0 123600.0 301200.0 ; + RECT 115800.0 296250.0 130200.0 295350.0 ; + RECT 115800.0 310050.0 130200.0 309150.0 ; + RECT 136800.0 297750.0 138000.0 295800.0 ; + RECT 136800.0 309600.0 138000.0 307650.0 ; + RECT 132000.0 308250.0 133200.0 310050.0 ; + RECT 132000.0 298950.0 133200.0 295350.0 ; + RECT 134700.0 308250.0 135600.0 298950.0 ; + RECT 132000.0 298950.0 133200.0 297750.0 ; + RECT 134400.0 298950.0 135600.0 297750.0 ; + RECT 134400.0 298950.0 135600.0 297750.0 ; + RECT 132000.0 298950.0 133200.0 297750.0 ; + RECT 132000.0 308250.0 133200.0 307050.0 ; + RECT 134400.0 308250.0 135600.0 307050.0 ; + RECT 134400.0 308250.0 135600.0 307050.0 ; + RECT 132000.0 308250.0 133200.0 307050.0 ; + RECT 136800.0 298350.0 138000.0 297150.0 ; + RECT 136800.0 308250.0 138000.0 307050.0 ; + RECT 132600.0 303600.0 133800.0 302400.0 ; + RECT 132600.0 303600.0 133800.0 302400.0 ; + RECT 135150.0 303450.0 136050.0 302550.0 ; + RECT 130200.0 296250.0 139800.0 295350.0 ; + RECT 130200.0 310050.0 139800.0 309150.0 ; + RECT 102450.0 302400.0 103650.0 303600.0 ; + RECT 104400.0 304800.0 105600.0 306000.0 ; + RECT 121200.0 303900.0 120000.0 305100.0 ; + RECT 112800.0 321450.0 114000.0 323400.0 ; + RECT 112800.0 309600.0 114000.0 311550.0 ; + RECT 108000.0 310950.0 109200.0 309150.0 ; + RECT 108000.0 320250.0 109200.0 323850.0 ; + RECT 110700.0 310950.0 111600.0 320250.0 ; + RECT 108000.0 320250.0 109200.0 321450.0 ; + RECT 110400.0 320250.0 111600.0 321450.0 ; + RECT 110400.0 320250.0 111600.0 321450.0 ; + RECT 108000.0 320250.0 109200.0 321450.0 ; + RECT 108000.0 310950.0 109200.0 312150.0 ; + RECT 110400.0 310950.0 111600.0 312150.0 ; + RECT 110400.0 310950.0 111600.0 312150.0 ; + RECT 108000.0 310950.0 109200.0 312150.0 ; + RECT 112800.0 320850.0 114000.0 322050.0 ; + RECT 112800.0 310950.0 114000.0 312150.0 ; + RECT 108600.0 315600.0 109800.0 316800.0 ; + RECT 108600.0 315600.0 109800.0 316800.0 ; + RECT 111150.0 315750.0 112050.0 316650.0 ; + RECT 106200.0 322950.0 115800.0 323850.0 ; + RECT 106200.0 309150.0 115800.0 310050.0 ; + RECT 117600.0 311550.0 118800.0 309150.0 ; + RECT 117600.0 320250.0 118800.0 323850.0 ; + RECT 122400.0 320250.0 123600.0 323850.0 ; + RECT 124800.0 321450.0 126000.0 323400.0 ; + RECT 124800.0 309600.0 126000.0 311550.0 ; + RECT 117600.0 320250.0 118800.0 321450.0 ; + RECT 120000.0 320250.0 121200.0 321450.0 ; + RECT 120000.0 320250.0 121200.0 321450.0 ; + RECT 117600.0 320250.0 118800.0 321450.0 ; + RECT 120000.0 320250.0 121200.0 321450.0 ; + RECT 122400.0 320250.0 123600.0 321450.0 ; + RECT 122400.0 320250.0 123600.0 321450.0 ; + RECT 120000.0 320250.0 121200.0 321450.0 ; + RECT 117600.0 311550.0 118800.0 312750.0 ; + RECT 120000.0 311550.0 121200.0 312750.0 ; + RECT 120000.0 311550.0 121200.0 312750.0 ; + RECT 117600.0 311550.0 118800.0 312750.0 ; + RECT 120000.0 311550.0 121200.0 312750.0 ; + RECT 122400.0 311550.0 123600.0 312750.0 ; + RECT 122400.0 311550.0 123600.0 312750.0 ; + RECT 120000.0 311550.0 121200.0 312750.0 ; + RECT 124800.0 320850.0 126000.0 322050.0 ; + RECT 124800.0 310950.0 126000.0 312150.0 ; + RECT 122400.0 314100.0 121200.0 315300.0 ; + RECT 119400.0 316800.0 118200.0 318000.0 ; + RECT 120000.0 320250.0 121200.0 321450.0 ; + RECT 122400.0 311550.0 123600.0 312750.0 ; + RECT 123600.0 316800.0 122400.0 318000.0 ; + RECT 118200.0 316800.0 119400.0 318000.0 ; + RECT 121200.0 314100.0 122400.0 315300.0 ; + RECT 122400.0 316800.0 123600.0 318000.0 ; + RECT 115800.0 322950.0 130200.0 323850.0 ; + RECT 115800.0 309150.0 130200.0 310050.0 ; + RECT 136800.0 321450.0 138000.0 323400.0 ; + RECT 136800.0 309600.0 138000.0 311550.0 ; + RECT 132000.0 310950.0 133200.0 309150.0 ; + RECT 132000.0 320250.0 133200.0 323850.0 ; + RECT 134700.0 310950.0 135600.0 320250.0 ; + RECT 132000.0 320250.0 133200.0 321450.0 ; + RECT 134400.0 320250.0 135600.0 321450.0 ; + RECT 134400.0 320250.0 135600.0 321450.0 ; + RECT 132000.0 320250.0 133200.0 321450.0 ; + RECT 132000.0 310950.0 133200.0 312150.0 ; + RECT 134400.0 310950.0 135600.0 312150.0 ; + RECT 134400.0 310950.0 135600.0 312150.0 ; + RECT 132000.0 310950.0 133200.0 312150.0 ; + RECT 136800.0 320850.0 138000.0 322050.0 ; + RECT 136800.0 310950.0 138000.0 312150.0 ; + RECT 132600.0 315600.0 133800.0 316800.0 ; + RECT 132600.0 315600.0 133800.0 316800.0 ; + RECT 135150.0 315750.0 136050.0 316650.0 ; + RECT 130200.0 322950.0 139800.0 323850.0 ; + RECT 130200.0 309150.0 139800.0 310050.0 ; + RECT 102450.0 315600.0 103650.0 316800.0 ; + RECT 104400.0 313200.0 105600.0 314400.0 ; + RECT 121200.0 314100.0 120000.0 315300.0 ; + RECT 112800.0 325350.0 114000.0 323400.0 ; + RECT 112800.0 337200.0 114000.0 335250.0 ; + RECT 108000.0 335850.0 109200.0 337650.0 ; + RECT 108000.0 326550.0 109200.0 322950.0 ; + RECT 110700.0 335850.0 111600.0 326550.0 ; + RECT 108000.0 326550.0 109200.0 325350.0 ; + RECT 110400.0 326550.0 111600.0 325350.0 ; + RECT 110400.0 326550.0 111600.0 325350.0 ; + RECT 108000.0 326550.0 109200.0 325350.0 ; + RECT 108000.0 335850.0 109200.0 334650.0 ; + RECT 110400.0 335850.0 111600.0 334650.0 ; + RECT 110400.0 335850.0 111600.0 334650.0 ; + RECT 108000.0 335850.0 109200.0 334650.0 ; + RECT 112800.0 325950.0 114000.0 324750.0 ; + RECT 112800.0 335850.0 114000.0 334650.0 ; + RECT 108600.0 331200.0 109800.0 330000.0 ; + RECT 108600.0 331200.0 109800.0 330000.0 ; + RECT 111150.0 331050.0 112050.0 330150.0 ; + RECT 106200.0 323850.0 115800.0 322950.0 ; + RECT 106200.0 337650.0 115800.0 336750.0 ; + RECT 117600.0 335250.0 118800.0 337650.0 ; + RECT 117600.0 326550.0 118800.0 322950.0 ; + RECT 122400.0 326550.0 123600.0 322950.0 ; + RECT 124800.0 325350.0 126000.0 323400.0 ; + RECT 124800.0 337200.0 126000.0 335250.0 ; + RECT 117600.0 326550.0 118800.0 325350.0 ; + RECT 120000.0 326550.0 121200.0 325350.0 ; + RECT 120000.0 326550.0 121200.0 325350.0 ; + RECT 117600.0 326550.0 118800.0 325350.0 ; + RECT 120000.0 326550.0 121200.0 325350.0 ; + RECT 122400.0 326550.0 123600.0 325350.0 ; + RECT 122400.0 326550.0 123600.0 325350.0 ; + RECT 120000.0 326550.0 121200.0 325350.0 ; + RECT 117600.0 335250.0 118800.0 334050.0 ; + RECT 120000.0 335250.0 121200.0 334050.0 ; + RECT 120000.0 335250.0 121200.0 334050.0 ; + RECT 117600.0 335250.0 118800.0 334050.0 ; + RECT 120000.0 335250.0 121200.0 334050.0 ; + RECT 122400.0 335250.0 123600.0 334050.0 ; + RECT 122400.0 335250.0 123600.0 334050.0 ; + RECT 120000.0 335250.0 121200.0 334050.0 ; + RECT 124800.0 325950.0 126000.0 324750.0 ; + RECT 124800.0 335850.0 126000.0 334650.0 ; + RECT 122400.0 332700.0 121200.0 331500.0 ; + RECT 119400.0 330000.0 118200.0 328800.0 ; + RECT 120000.0 326550.0 121200.0 325350.0 ; + RECT 122400.0 335250.0 123600.0 334050.0 ; + RECT 123600.0 330000.0 122400.0 328800.0 ; + RECT 118200.0 330000.0 119400.0 328800.0 ; + RECT 121200.0 332700.0 122400.0 331500.0 ; + RECT 122400.0 330000.0 123600.0 328800.0 ; + RECT 115800.0 323850.0 130200.0 322950.0 ; + RECT 115800.0 337650.0 130200.0 336750.0 ; + RECT 136800.0 325350.0 138000.0 323400.0 ; + RECT 136800.0 337200.0 138000.0 335250.0 ; + RECT 132000.0 335850.0 133200.0 337650.0 ; + RECT 132000.0 326550.0 133200.0 322950.0 ; + RECT 134700.0 335850.0 135600.0 326550.0 ; + RECT 132000.0 326550.0 133200.0 325350.0 ; + RECT 134400.0 326550.0 135600.0 325350.0 ; + RECT 134400.0 326550.0 135600.0 325350.0 ; + RECT 132000.0 326550.0 133200.0 325350.0 ; + RECT 132000.0 335850.0 133200.0 334650.0 ; + RECT 134400.0 335850.0 135600.0 334650.0 ; + RECT 134400.0 335850.0 135600.0 334650.0 ; + RECT 132000.0 335850.0 133200.0 334650.0 ; + RECT 136800.0 325950.0 138000.0 324750.0 ; + RECT 136800.0 335850.0 138000.0 334650.0 ; + RECT 132600.0 331200.0 133800.0 330000.0 ; + RECT 132600.0 331200.0 133800.0 330000.0 ; + RECT 135150.0 331050.0 136050.0 330150.0 ; + RECT 130200.0 323850.0 139800.0 322950.0 ; + RECT 130200.0 337650.0 139800.0 336750.0 ; + RECT 102450.0 330000.0 103650.0 331200.0 ; + RECT 104400.0 332400.0 105600.0 333600.0 ; + RECT 121200.0 331500.0 120000.0 332700.0 ; + RECT 112800.0 349050.0 114000.0 351000.0 ; + RECT 112800.0 337200.0 114000.0 339150.0 ; + RECT 108000.0 338550.0 109200.0 336750.0 ; + RECT 108000.0 347850.0 109200.0 351450.0 ; + RECT 110700.0 338550.0 111600.0 347850.0 ; + RECT 108000.0 347850.0 109200.0 349050.0 ; + RECT 110400.0 347850.0 111600.0 349050.0 ; + RECT 110400.0 347850.0 111600.0 349050.0 ; + RECT 108000.0 347850.0 109200.0 349050.0 ; + RECT 108000.0 338550.0 109200.0 339750.0 ; + RECT 110400.0 338550.0 111600.0 339750.0 ; + RECT 110400.0 338550.0 111600.0 339750.0 ; + RECT 108000.0 338550.0 109200.0 339750.0 ; + RECT 112800.0 348450.0 114000.0 349650.0 ; + RECT 112800.0 338550.0 114000.0 339750.0 ; + RECT 108600.0 343200.0 109800.0 344400.0 ; + RECT 108600.0 343200.0 109800.0 344400.0 ; + RECT 111150.0 343350.0 112050.0 344250.0 ; + RECT 106200.0 350550.0 115800.0 351450.0 ; + RECT 106200.0 336750.0 115800.0 337650.0 ; + RECT 117600.0 339150.0 118800.0 336750.0 ; + RECT 117600.0 347850.0 118800.0 351450.0 ; + RECT 122400.0 347850.0 123600.0 351450.0 ; + RECT 124800.0 349050.0 126000.0 351000.0 ; + RECT 124800.0 337200.0 126000.0 339150.0 ; + RECT 117600.0 347850.0 118800.0 349050.0 ; + RECT 120000.0 347850.0 121200.0 349050.0 ; + RECT 120000.0 347850.0 121200.0 349050.0 ; + RECT 117600.0 347850.0 118800.0 349050.0 ; + RECT 120000.0 347850.0 121200.0 349050.0 ; + RECT 122400.0 347850.0 123600.0 349050.0 ; + RECT 122400.0 347850.0 123600.0 349050.0 ; + RECT 120000.0 347850.0 121200.0 349050.0 ; + RECT 117600.0 339150.0 118800.0 340350.0 ; + RECT 120000.0 339150.0 121200.0 340350.0 ; + RECT 120000.0 339150.0 121200.0 340350.0 ; + RECT 117600.0 339150.0 118800.0 340350.0 ; + RECT 120000.0 339150.0 121200.0 340350.0 ; + RECT 122400.0 339150.0 123600.0 340350.0 ; + RECT 122400.0 339150.0 123600.0 340350.0 ; + RECT 120000.0 339150.0 121200.0 340350.0 ; + RECT 124800.0 348450.0 126000.0 349650.0 ; + RECT 124800.0 338550.0 126000.0 339750.0 ; + RECT 122400.0 341700.0 121200.0 342900.0 ; + RECT 119400.0 344400.0 118200.0 345600.0 ; + RECT 120000.0 347850.0 121200.0 349050.0 ; + RECT 122400.0 339150.0 123600.0 340350.0 ; + RECT 123600.0 344400.0 122400.0 345600.0 ; + RECT 118200.0 344400.0 119400.0 345600.0 ; + RECT 121200.0 341700.0 122400.0 342900.0 ; + RECT 122400.0 344400.0 123600.0 345600.0 ; + RECT 115800.0 350550.0 130200.0 351450.0 ; + RECT 115800.0 336750.0 130200.0 337650.0 ; + RECT 136800.0 349050.0 138000.0 351000.0 ; + RECT 136800.0 337200.0 138000.0 339150.0 ; + RECT 132000.0 338550.0 133200.0 336750.0 ; + RECT 132000.0 347850.0 133200.0 351450.0 ; + RECT 134700.0 338550.0 135600.0 347850.0 ; + RECT 132000.0 347850.0 133200.0 349050.0 ; + RECT 134400.0 347850.0 135600.0 349050.0 ; + RECT 134400.0 347850.0 135600.0 349050.0 ; + RECT 132000.0 347850.0 133200.0 349050.0 ; + RECT 132000.0 338550.0 133200.0 339750.0 ; + RECT 134400.0 338550.0 135600.0 339750.0 ; + RECT 134400.0 338550.0 135600.0 339750.0 ; + RECT 132000.0 338550.0 133200.0 339750.0 ; + RECT 136800.0 348450.0 138000.0 349650.0 ; + RECT 136800.0 338550.0 138000.0 339750.0 ; + RECT 132600.0 343200.0 133800.0 344400.0 ; + RECT 132600.0 343200.0 133800.0 344400.0 ; + RECT 135150.0 343350.0 136050.0 344250.0 ; + RECT 130200.0 350550.0 139800.0 351450.0 ; + RECT 130200.0 336750.0 139800.0 337650.0 ; + RECT 102450.0 343200.0 103650.0 344400.0 ; + RECT 104400.0 340800.0 105600.0 342000.0 ; + RECT 121200.0 341700.0 120000.0 342900.0 ; + RECT 112800.0 352950.0 114000.0 351000.0 ; + RECT 112800.0 364800.0 114000.0 362850.0 ; + RECT 108000.0 363450.0 109200.0 365250.0 ; + RECT 108000.0 354150.0 109200.0 350550.0 ; + RECT 110700.0 363450.0 111600.0 354150.0 ; + RECT 108000.0 354150.0 109200.0 352950.0 ; + RECT 110400.0 354150.0 111600.0 352950.0 ; + RECT 110400.0 354150.0 111600.0 352950.0 ; + RECT 108000.0 354150.0 109200.0 352950.0 ; + RECT 108000.0 363450.0 109200.0 362250.0 ; + RECT 110400.0 363450.0 111600.0 362250.0 ; + RECT 110400.0 363450.0 111600.0 362250.0 ; + RECT 108000.0 363450.0 109200.0 362250.0 ; + RECT 112800.0 353550.0 114000.0 352350.0 ; + RECT 112800.0 363450.0 114000.0 362250.0 ; + RECT 108600.0 358800.0 109800.0 357600.0 ; + RECT 108600.0 358800.0 109800.0 357600.0 ; + RECT 111150.0 358650.0 112050.0 357750.0 ; + RECT 106200.0 351450.0 115800.0 350550.0 ; + RECT 106200.0 365250.0 115800.0 364350.0 ; + RECT 117600.0 362850.0 118800.0 365250.0 ; + RECT 117600.0 354150.0 118800.0 350550.0 ; + RECT 122400.0 354150.0 123600.0 350550.0 ; + RECT 124800.0 352950.0 126000.0 351000.0 ; + RECT 124800.0 364800.0 126000.0 362850.0 ; + RECT 117600.0 354150.0 118800.0 352950.0 ; + RECT 120000.0 354150.0 121200.0 352950.0 ; + RECT 120000.0 354150.0 121200.0 352950.0 ; + RECT 117600.0 354150.0 118800.0 352950.0 ; + RECT 120000.0 354150.0 121200.0 352950.0 ; + RECT 122400.0 354150.0 123600.0 352950.0 ; + RECT 122400.0 354150.0 123600.0 352950.0 ; + RECT 120000.0 354150.0 121200.0 352950.0 ; + RECT 117600.0 362850.0 118800.0 361650.0 ; + RECT 120000.0 362850.0 121200.0 361650.0 ; + RECT 120000.0 362850.0 121200.0 361650.0 ; + RECT 117600.0 362850.0 118800.0 361650.0 ; + RECT 120000.0 362850.0 121200.0 361650.0 ; + RECT 122400.0 362850.0 123600.0 361650.0 ; + RECT 122400.0 362850.0 123600.0 361650.0 ; + RECT 120000.0 362850.0 121200.0 361650.0 ; + RECT 124800.0 353550.0 126000.0 352350.0 ; + RECT 124800.0 363450.0 126000.0 362250.0 ; + RECT 122400.0 360300.0 121200.0 359100.0 ; + RECT 119400.0 357600.0 118200.0 356400.0 ; + RECT 120000.0 354150.0 121200.0 352950.0 ; + RECT 122400.0 362850.0 123600.0 361650.0 ; + RECT 123600.0 357600.0 122400.0 356400.0 ; + RECT 118200.0 357600.0 119400.0 356400.0 ; + RECT 121200.0 360300.0 122400.0 359100.0 ; + RECT 122400.0 357600.0 123600.0 356400.0 ; + RECT 115800.0 351450.0 130200.0 350550.0 ; + RECT 115800.0 365250.0 130200.0 364350.0 ; + RECT 136800.0 352950.0 138000.0 351000.0 ; + RECT 136800.0 364800.0 138000.0 362850.0 ; + RECT 132000.0 363450.0 133200.0 365250.0 ; + RECT 132000.0 354150.0 133200.0 350550.0 ; + RECT 134700.0 363450.0 135600.0 354150.0 ; + RECT 132000.0 354150.0 133200.0 352950.0 ; + RECT 134400.0 354150.0 135600.0 352950.0 ; + RECT 134400.0 354150.0 135600.0 352950.0 ; + RECT 132000.0 354150.0 133200.0 352950.0 ; + RECT 132000.0 363450.0 133200.0 362250.0 ; + RECT 134400.0 363450.0 135600.0 362250.0 ; + RECT 134400.0 363450.0 135600.0 362250.0 ; + RECT 132000.0 363450.0 133200.0 362250.0 ; + RECT 136800.0 353550.0 138000.0 352350.0 ; + RECT 136800.0 363450.0 138000.0 362250.0 ; + RECT 132600.0 358800.0 133800.0 357600.0 ; + RECT 132600.0 358800.0 133800.0 357600.0 ; + RECT 135150.0 358650.0 136050.0 357750.0 ; + RECT 130200.0 351450.0 139800.0 350550.0 ; + RECT 130200.0 365250.0 139800.0 364350.0 ; + RECT 102450.0 357600.0 103650.0 358800.0 ; + RECT 104400.0 360000.0 105600.0 361200.0 ; + RECT 121200.0 359100.0 120000.0 360300.0 ; + RECT 112800.0 376650.0 114000.0 378600.0 ; + RECT 112800.0 364800.0 114000.0 366750.0 ; + RECT 108000.0 366150.0 109200.0 364350.0 ; + RECT 108000.0 375450.0 109200.0 379050.0 ; + RECT 110700.0 366150.0 111600.0 375450.0 ; + RECT 108000.0 375450.0 109200.0 376650.0 ; + RECT 110400.0 375450.0 111600.0 376650.0 ; + RECT 110400.0 375450.0 111600.0 376650.0 ; + RECT 108000.0 375450.0 109200.0 376650.0 ; + RECT 108000.0 366150.0 109200.0 367350.0 ; + RECT 110400.0 366150.0 111600.0 367350.0 ; + RECT 110400.0 366150.0 111600.0 367350.0 ; + RECT 108000.0 366150.0 109200.0 367350.0 ; + RECT 112800.0 376050.0 114000.0 377250.0 ; + RECT 112800.0 366150.0 114000.0 367350.0 ; + RECT 108600.0 370800.0 109800.0 372000.0 ; + RECT 108600.0 370800.0 109800.0 372000.0 ; + RECT 111150.0 370950.0 112050.0 371850.0 ; + RECT 106200.0 378150.0 115800.0 379050.0 ; + RECT 106200.0 364350.0 115800.0 365250.0 ; + RECT 117600.0 366750.0 118800.0 364350.0 ; + RECT 117600.0 375450.0 118800.0 379050.0 ; + RECT 122400.0 375450.0 123600.0 379050.0 ; + RECT 124800.0 376650.0 126000.0 378600.0 ; + RECT 124800.0 364800.0 126000.0 366750.0 ; + RECT 117600.0 375450.0 118800.0 376650.0 ; + RECT 120000.0 375450.0 121200.0 376650.0 ; + RECT 120000.0 375450.0 121200.0 376650.0 ; + RECT 117600.0 375450.0 118800.0 376650.0 ; + RECT 120000.0 375450.0 121200.0 376650.0 ; + RECT 122400.0 375450.0 123600.0 376650.0 ; + RECT 122400.0 375450.0 123600.0 376650.0 ; + RECT 120000.0 375450.0 121200.0 376650.0 ; + RECT 117600.0 366750.0 118800.0 367950.0 ; + RECT 120000.0 366750.0 121200.0 367950.0 ; + RECT 120000.0 366750.0 121200.0 367950.0 ; + RECT 117600.0 366750.0 118800.0 367950.0 ; + RECT 120000.0 366750.0 121200.0 367950.0 ; + RECT 122400.0 366750.0 123600.0 367950.0 ; + RECT 122400.0 366750.0 123600.0 367950.0 ; + RECT 120000.0 366750.0 121200.0 367950.0 ; + RECT 124800.0 376050.0 126000.0 377250.0 ; + RECT 124800.0 366150.0 126000.0 367350.0 ; + RECT 122400.0 369300.0 121200.0 370500.0 ; + RECT 119400.0 372000.0 118200.0 373200.0 ; + RECT 120000.0 375450.0 121200.0 376650.0 ; + RECT 122400.0 366750.0 123600.0 367950.0 ; + RECT 123600.0 372000.0 122400.0 373200.0 ; + RECT 118200.0 372000.0 119400.0 373200.0 ; + RECT 121200.0 369300.0 122400.0 370500.0 ; + RECT 122400.0 372000.0 123600.0 373200.0 ; + RECT 115800.0 378150.0 130200.0 379050.0 ; + RECT 115800.0 364350.0 130200.0 365250.0 ; + RECT 136800.0 376650.0 138000.0 378600.0 ; + RECT 136800.0 364800.0 138000.0 366750.0 ; + RECT 132000.0 366150.0 133200.0 364350.0 ; + RECT 132000.0 375450.0 133200.0 379050.0 ; + RECT 134700.0 366150.0 135600.0 375450.0 ; + RECT 132000.0 375450.0 133200.0 376650.0 ; + RECT 134400.0 375450.0 135600.0 376650.0 ; + RECT 134400.0 375450.0 135600.0 376650.0 ; + RECT 132000.0 375450.0 133200.0 376650.0 ; + RECT 132000.0 366150.0 133200.0 367350.0 ; + RECT 134400.0 366150.0 135600.0 367350.0 ; + RECT 134400.0 366150.0 135600.0 367350.0 ; + RECT 132000.0 366150.0 133200.0 367350.0 ; + RECT 136800.0 376050.0 138000.0 377250.0 ; + RECT 136800.0 366150.0 138000.0 367350.0 ; + RECT 132600.0 370800.0 133800.0 372000.0 ; + RECT 132600.0 370800.0 133800.0 372000.0 ; + RECT 135150.0 370950.0 136050.0 371850.0 ; + RECT 130200.0 378150.0 139800.0 379050.0 ; + RECT 130200.0 364350.0 139800.0 365250.0 ; + RECT 102450.0 370800.0 103650.0 372000.0 ; + RECT 104400.0 368400.0 105600.0 369600.0 ; + RECT 121200.0 369300.0 120000.0 370500.0 ; + RECT 112800.0 380550.0 114000.0 378600.0 ; + RECT 112800.0 392400.0 114000.0 390450.0 ; + RECT 108000.0 391050.0 109200.0 392850.0 ; + RECT 108000.0 381750.0 109200.0 378150.0 ; + RECT 110700.0 391050.0 111600.0 381750.0 ; + RECT 108000.0 381750.0 109200.0 380550.0 ; + RECT 110400.0 381750.0 111600.0 380550.0 ; + RECT 110400.0 381750.0 111600.0 380550.0 ; + RECT 108000.0 381750.0 109200.0 380550.0 ; + RECT 108000.0 391050.0 109200.0 389850.0 ; + RECT 110400.0 391050.0 111600.0 389850.0 ; + RECT 110400.0 391050.0 111600.0 389850.0 ; + RECT 108000.0 391050.0 109200.0 389850.0 ; + RECT 112800.0 381150.0 114000.0 379950.0 ; + RECT 112800.0 391050.0 114000.0 389850.0 ; + RECT 108600.0 386400.0 109800.0 385200.0 ; + RECT 108600.0 386400.0 109800.0 385200.0 ; + RECT 111150.0 386250.0 112050.0 385350.0 ; + RECT 106200.0 379050.0 115800.0 378150.0 ; + RECT 106200.0 392850.0 115800.0 391950.0 ; + RECT 117600.0 390450.0 118800.0 392850.0 ; + RECT 117600.0 381750.0 118800.0 378150.0 ; + RECT 122400.0 381750.0 123600.0 378150.0 ; + RECT 124800.0 380550.0 126000.0 378600.0 ; + RECT 124800.0 392400.0 126000.0 390450.0 ; + RECT 117600.0 381750.0 118800.0 380550.0 ; + RECT 120000.0 381750.0 121200.0 380550.0 ; + RECT 120000.0 381750.0 121200.0 380550.0 ; + RECT 117600.0 381750.0 118800.0 380550.0 ; + RECT 120000.0 381750.0 121200.0 380550.0 ; + RECT 122400.0 381750.0 123600.0 380550.0 ; + RECT 122400.0 381750.0 123600.0 380550.0 ; + RECT 120000.0 381750.0 121200.0 380550.0 ; + RECT 117600.0 390450.0 118800.0 389250.0 ; + RECT 120000.0 390450.0 121200.0 389250.0 ; + RECT 120000.0 390450.0 121200.0 389250.0 ; + RECT 117600.0 390450.0 118800.0 389250.0 ; + RECT 120000.0 390450.0 121200.0 389250.0 ; + RECT 122400.0 390450.0 123600.0 389250.0 ; + RECT 122400.0 390450.0 123600.0 389250.0 ; + RECT 120000.0 390450.0 121200.0 389250.0 ; + RECT 124800.0 381150.0 126000.0 379950.0 ; + RECT 124800.0 391050.0 126000.0 389850.0 ; + RECT 122400.0 387900.0 121200.0 386700.0 ; + RECT 119400.0 385200.0 118200.0 384000.0 ; + RECT 120000.0 381750.0 121200.0 380550.0 ; + RECT 122400.0 390450.0 123600.0 389250.0 ; + RECT 123600.0 385200.0 122400.0 384000.0 ; + RECT 118200.0 385200.0 119400.0 384000.0 ; + RECT 121200.0 387900.0 122400.0 386700.0 ; + RECT 122400.0 385200.0 123600.0 384000.0 ; + RECT 115800.0 379050.0 130200.0 378150.0 ; + RECT 115800.0 392850.0 130200.0 391950.0 ; + RECT 136800.0 380550.0 138000.0 378600.0 ; + RECT 136800.0 392400.0 138000.0 390450.0 ; + RECT 132000.0 391050.0 133200.0 392850.0 ; + RECT 132000.0 381750.0 133200.0 378150.0 ; + RECT 134700.0 391050.0 135600.0 381750.0 ; + RECT 132000.0 381750.0 133200.0 380550.0 ; + RECT 134400.0 381750.0 135600.0 380550.0 ; + RECT 134400.0 381750.0 135600.0 380550.0 ; + RECT 132000.0 381750.0 133200.0 380550.0 ; + RECT 132000.0 391050.0 133200.0 389850.0 ; + RECT 134400.0 391050.0 135600.0 389850.0 ; + RECT 134400.0 391050.0 135600.0 389850.0 ; + RECT 132000.0 391050.0 133200.0 389850.0 ; + RECT 136800.0 381150.0 138000.0 379950.0 ; + RECT 136800.0 391050.0 138000.0 389850.0 ; + RECT 132600.0 386400.0 133800.0 385200.0 ; + RECT 132600.0 386400.0 133800.0 385200.0 ; + RECT 135150.0 386250.0 136050.0 385350.0 ; + RECT 130200.0 379050.0 139800.0 378150.0 ; + RECT 130200.0 392850.0 139800.0 391950.0 ; + RECT 102450.0 385200.0 103650.0 386400.0 ; + RECT 104400.0 387600.0 105600.0 388800.0 ; + RECT 121200.0 386700.0 120000.0 387900.0 ; + RECT 112800.0 404250.0 114000.0 406200.0 ; + RECT 112800.0 392400.0 114000.0 394350.0 ; + RECT 108000.0 393750.0 109200.0 391950.0 ; + RECT 108000.0 403050.0 109200.0 406650.0 ; + RECT 110700.0 393750.0 111600.0 403050.0 ; + RECT 108000.0 403050.0 109200.0 404250.0 ; + RECT 110400.0 403050.0 111600.0 404250.0 ; + RECT 110400.0 403050.0 111600.0 404250.0 ; + RECT 108000.0 403050.0 109200.0 404250.0 ; + RECT 108000.0 393750.0 109200.0 394950.0 ; + RECT 110400.0 393750.0 111600.0 394950.0 ; + RECT 110400.0 393750.0 111600.0 394950.0 ; + RECT 108000.0 393750.0 109200.0 394950.0 ; + RECT 112800.0 403650.0 114000.0 404850.0 ; + RECT 112800.0 393750.0 114000.0 394950.0 ; + RECT 108600.0 398400.0 109800.0 399600.0 ; + RECT 108600.0 398400.0 109800.0 399600.0 ; + RECT 111150.0 398550.0 112050.0 399450.0 ; + RECT 106200.0 405750.0 115800.0 406650.0 ; + RECT 106200.0 391950.0 115800.0 392850.0 ; + RECT 117600.0 394350.0 118800.0 391950.0 ; + RECT 117600.0 403050.0 118800.0 406650.0 ; + RECT 122400.0 403050.0 123600.0 406650.0 ; + RECT 124800.0 404250.0 126000.0 406200.0 ; + RECT 124800.0 392400.0 126000.0 394350.0 ; + RECT 117600.0 403050.0 118800.0 404250.0 ; + RECT 120000.0 403050.0 121200.0 404250.0 ; + RECT 120000.0 403050.0 121200.0 404250.0 ; + RECT 117600.0 403050.0 118800.0 404250.0 ; + RECT 120000.0 403050.0 121200.0 404250.0 ; + RECT 122400.0 403050.0 123600.0 404250.0 ; + RECT 122400.0 403050.0 123600.0 404250.0 ; + RECT 120000.0 403050.0 121200.0 404250.0 ; + RECT 117600.0 394350.0 118800.0 395550.0 ; + RECT 120000.0 394350.0 121200.0 395550.0 ; + RECT 120000.0 394350.0 121200.0 395550.0 ; + RECT 117600.0 394350.0 118800.0 395550.0 ; + RECT 120000.0 394350.0 121200.0 395550.0 ; + RECT 122400.0 394350.0 123600.0 395550.0 ; + RECT 122400.0 394350.0 123600.0 395550.0 ; + RECT 120000.0 394350.0 121200.0 395550.0 ; + RECT 124800.0 403650.0 126000.0 404850.0 ; + RECT 124800.0 393750.0 126000.0 394950.0 ; + RECT 122400.0 396900.0 121200.0 398100.0 ; + RECT 119400.0 399600.0 118200.0 400800.0 ; + RECT 120000.0 403050.0 121200.0 404250.0 ; + RECT 122400.0 394350.0 123600.0 395550.0 ; + RECT 123600.0 399600.0 122400.0 400800.0 ; + RECT 118200.0 399600.0 119400.0 400800.0 ; + RECT 121200.0 396900.0 122400.0 398100.0 ; + RECT 122400.0 399600.0 123600.0 400800.0 ; + RECT 115800.0 405750.0 130200.0 406650.0 ; + RECT 115800.0 391950.0 130200.0 392850.0 ; + RECT 136800.0 404250.0 138000.0 406200.0 ; + RECT 136800.0 392400.0 138000.0 394350.0 ; + RECT 132000.0 393750.0 133200.0 391950.0 ; + RECT 132000.0 403050.0 133200.0 406650.0 ; + RECT 134700.0 393750.0 135600.0 403050.0 ; + RECT 132000.0 403050.0 133200.0 404250.0 ; + RECT 134400.0 403050.0 135600.0 404250.0 ; + RECT 134400.0 403050.0 135600.0 404250.0 ; + RECT 132000.0 403050.0 133200.0 404250.0 ; + RECT 132000.0 393750.0 133200.0 394950.0 ; + RECT 134400.0 393750.0 135600.0 394950.0 ; + RECT 134400.0 393750.0 135600.0 394950.0 ; + RECT 132000.0 393750.0 133200.0 394950.0 ; + RECT 136800.0 403650.0 138000.0 404850.0 ; + RECT 136800.0 393750.0 138000.0 394950.0 ; + RECT 132600.0 398400.0 133800.0 399600.0 ; + RECT 132600.0 398400.0 133800.0 399600.0 ; + RECT 135150.0 398550.0 136050.0 399450.0 ; + RECT 130200.0 405750.0 139800.0 406650.0 ; + RECT 130200.0 391950.0 139800.0 392850.0 ; + RECT 102450.0 398400.0 103650.0 399600.0 ; + RECT 104400.0 396000.0 105600.0 397200.0 ; + RECT 121200.0 396900.0 120000.0 398100.0 ; + RECT 112800.0 408150.0 114000.0 406200.0 ; + RECT 112800.0 420000.0 114000.0 418050.0 ; + RECT 108000.0 418650.0 109200.0 420450.0 ; + RECT 108000.0 409350.0 109200.0 405750.0 ; + RECT 110700.0 418650.0 111600.0 409350.0 ; + RECT 108000.0 409350.0 109200.0 408150.0 ; + RECT 110400.0 409350.0 111600.0 408150.0 ; + RECT 110400.0 409350.0 111600.0 408150.0 ; + RECT 108000.0 409350.0 109200.0 408150.0 ; + RECT 108000.0 418650.0 109200.0 417450.0 ; + RECT 110400.0 418650.0 111600.0 417450.0 ; + RECT 110400.0 418650.0 111600.0 417450.0 ; + RECT 108000.0 418650.0 109200.0 417450.0 ; + RECT 112800.0 408750.0 114000.0 407550.0 ; + RECT 112800.0 418650.0 114000.0 417450.0 ; + RECT 108600.0 414000.0 109800.0 412800.0 ; + RECT 108600.0 414000.0 109800.0 412800.0 ; + RECT 111150.0 413850.0 112050.0 412950.0 ; + RECT 106200.0 406650.0 115800.0 405750.0 ; + RECT 106200.0 420450.0 115800.0 419550.0 ; + RECT 117600.0 418050.0 118800.0 420450.0 ; + RECT 117600.0 409350.0 118800.0 405750.0 ; + RECT 122400.0 409350.0 123600.0 405750.0 ; + RECT 124800.0 408150.0 126000.0 406200.0 ; + RECT 124800.0 420000.0 126000.0 418050.0 ; + RECT 117600.0 409350.0 118800.0 408150.0 ; + RECT 120000.0 409350.0 121200.0 408150.0 ; + RECT 120000.0 409350.0 121200.0 408150.0 ; + RECT 117600.0 409350.0 118800.0 408150.0 ; + RECT 120000.0 409350.0 121200.0 408150.0 ; + RECT 122400.0 409350.0 123600.0 408150.0 ; + RECT 122400.0 409350.0 123600.0 408150.0 ; + RECT 120000.0 409350.0 121200.0 408150.0 ; + RECT 117600.0 418050.0 118800.0 416850.0 ; + RECT 120000.0 418050.0 121200.0 416850.0 ; + RECT 120000.0 418050.0 121200.0 416850.0 ; + RECT 117600.0 418050.0 118800.0 416850.0 ; + RECT 120000.0 418050.0 121200.0 416850.0 ; + RECT 122400.0 418050.0 123600.0 416850.0 ; + RECT 122400.0 418050.0 123600.0 416850.0 ; + RECT 120000.0 418050.0 121200.0 416850.0 ; + RECT 124800.0 408750.0 126000.0 407550.0 ; + RECT 124800.0 418650.0 126000.0 417450.0 ; + RECT 122400.0 415500.0 121200.0 414300.0 ; + RECT 119400.0 412800.0 118200.0 411600.0 ; + RECT 120000.0 409350.0 121200.0 408150.0 ; + RECT 122400.0 418050.0 123600.0 416850.0 ; + RECT 123600.0 412800.0 122400.0 411600.0 ; + RECT 118200.0 412800.0 119400.0 411600.0 ; + RECT 121200.0 415500.0 122400.0 414300.0 ; + RECT 122400.0 412800.0 123600.0 411600.0 ; + RECT 115800.0 406650.0 130200.0 405750.0 ; + RECT 115800.0 420450.0 130200.0 419550.0 ; + RECT 136800.0 408150.0 138000.0 406200.0 ; + RECT 136800.0 420000.0 138000.0 418050.0 ; + RECT 132000.0 418650.0 133200.0 420450.0 ; + RECT 132000.0 409350.0 133200.0 405750.0 ; + RECT 134700.0 418650.0 135600.0 409350.0 ; + RECT 132000.0 409350.0 133200.0 408150.0 ; + RECT 134400.0 409350.0 135600.0 408150.0 ; + RECT 134400.0 409350.0 135600.0 408150.0 ; + RECT 132000.0 409350.0 133200.0 408150.0 ; + RECT 132000.0 418650.0 133200.0 417450.0 ; + RECT 134400.0 418650.0 135600.0 417450.0 ; + RECT 134400.0 418650.0 135600.0 417450.0 ; + RECT 132000.0 418650.0 133200.0 417450.0 ; + RECT 136800.0 408750.0 138000.0 407550.0 ; + RECT 136800.0 418650.0 138000.0 417450.0 ; + RECT 132600.0 414000.0 133800.0 412800.0 ; + RECT 132600.0 414000.0 133800.0 412800.0 ; + RECT 135150.0 413850.0 136050.0 412950.0 ; + RECT 130200.0 406650.0 139800.0 405750.0 ; + RECT 130200.0 420450.0 139800.0 419550.0 ; + RECT 102450.0 412800.0 103650.0 414000.0 ; + RECT 104400.0 415200.0 105600.0 416400.0 ; + RECT 121200.0 414300.0 120000.0 415500.0 ; + RECT 99900.0 202950.0 105000.0 203850.0 ; + RECT 99900.0 222150.0 105000.0 223050.0 ; + RECT 99900.0 230550.0 105000.0 231450.0 ; + RECT 99900.0 249750.0 105000.0 250650.0 ; + RECT 99900.0 258150.0 105000.0 259050.0 ; + RECT 99900.0 277350.0 105000.0 278250.0 ; + RECT 99900.0 285750.0 105000.0 286650.0 ; + RECT 99900.0 304950.0 105000.0 305850.0 ; + RECT 99900.0 313350.0 105000.0 314250.0 ; + RECT 99900.0 332550.0 105000.0 333450.0 ; + RECT 99900.0 340950.0 105000.0 341850.0 ; + RECT 99900.0 360150.0 105000.0 361050.0 ; + RECT 99900.0 368550.0 105000.0 369450.0 ; + RECT 99900.0 387750.0 105000.0 388650.0 ; + RECT 99900.0 396150.0 105000.0 397050.0 ; + RECT 99900.0 415350.0 105000.0 416250.0 ; + RECT 135150.0 205350.0 136050.0 206250.0 ; + RECT 135150.0 219750.0 136050.0 220650.0 ; + RECT 135150.0 232950.0 136050.0 233850.0 ; + RECT 135150.0 247350.0 136050.0 248250.0 ; + RECT 135150.0 260550.0 136050.0 261450.0 ; + RECT 135150.0 274950.0 136050.0 275850.0 ; + RECT 135150.0 288150.0 136050.0 289050.0 ; + RECT 135150.0 302550.0 136050.0 303450.0 ; + RECT 135150.0 315750.0 136050.0 316650.0 ; + RECT 135150.0 330150.0 136050.0 331050.0 ; + RECT 135150.0 343350.0 136050.0 344250.0 ; + RECT 135150.0 357750.0 136050.0 358650.0 ; + RECT 135150.0 370950.0 136050.0 371850.0 ; + RECT 135150.0 385350.0 136050.0 386250.0 ; + RECT 135150.0 398550.0 136050.0 399450.0 ; + RECT 135150.0 412950.0 136050.0 413850.0 ; + RECT 99900.0 212550.0 106200.0 213450.0 ; + RECT 99900.0 240150.0 106200.0 241050.0 ; + RECT 99900.0 267750.0 106200.0 268650.0 ; + RECT 99900.0 295350.0 106200.0 296250.0 ; + RECT 99900.0 322950.0 106200.0 323850.0 ; + RECT 99900.0 350550.0 106200.0 351450.0 ; + RECT 99900.0 378150.0 106200.0 379050.0 ; + RECT 99900.0 405750.0 106200.0 406650.0 ; + RECT 99900.0 198750.0 106200.0 199650.0 ; + RECT 99900.0 226350.0 106200.0 227250.0 ; + RECT 99900.0 253950.0 106200.0 254850.0 ; + RECT 99900.0 281550.0 106200.0 282450.0 ; + RECT 99900.0 309150.0 106200.0 310050.0 ; + RECT 99900.0 336750.0 106200.0 337650.0 ; + RECT 99900.0 364350.0 106200.0 365250.0 ; + RECT 99900.0 391950.0 106200.0 392850.0 ; + RECT 99900.0 419550.0 106200.0 420450.0 ; + RECT 59100.0 83400.0 119100.0 73200.0 ; + RECT 59100.0 63000.0 119100.0 73200.0 ; + RECT 59100.0 63000.0 119100.0 52800.0 ; + RECT 59100.0 42600.0 119100.0 52800.0 ; + RECT 61500.0 83400.0 62400.0 42600.0 ; + RECT 115500.0 83400.0 116400.0 42600.0 ; + RECT 148050.0 199800.0 149250.0 198600.0 ; + RECT 148050.0 227400.0 149250.0 226200.0 ; + RECT 148050.0 255000.0 149250.0 253800.0 ; + RECT 148050.0 282600.0 149250.0 281400.0 ; + RECT 148050.0 310200.0 149250.0 309000.0 ; + RECT 148050.0 337800.0 149250.0 336600.0 ; + RECT 148050.0 365400.0 149250.0 364200.0 ; + RECT 148050.0 393000.0 149250.0 391800.0 ; + RECT 148050.0 420600.0 149250.0 419400.0 ; + RECT 130500.0 91050.0 129300.0 92250.0 ; + RECT 135600.0 90900.0 134400.0 92100.0 ; + RECT 127500.0 104850.0 126300.0 106050.0 ; + RECT 138300.0 104700.0 137100.0 105900.0 ; + RECT 130500.0 146250.0 129300.0 147450.0 ; + RECT 141000.0 146100.0 139800.0 147300.0 ; + RECT 127500.0 160050.0 126300.0 161250.0 ; + RECT 143700.0 159900.0 142500.0 161100.0 ; + RECT 132600.0 88200.0 131400.0 89400.0 ; + RECT 132600.0 115800.0 131400.0 117000.0 ; + RECT 132600.0 143400.0 131400.0 144600.0 ; + RECT 132600.0 171000.0 131400.0 172200.0 ; + RECT 118500.0 76950.0 117300.0 78150.0 ; + RECT 135600.0 76950.0 134400.0 78150.0 ; + RECT 118500.0 68250.0 117300.0 69450.0 ; + RECT 138300.0 68250.0 137100.0 69450.0 ; + RECT 118500.0 56550.0 117300.0 57750.0 ; + RECT 141000.0 56550.0 139800.0 57750.0 ; + RECT 118500.0 47850.0 117300.0 49050.0 ; + RECT 143700.0 47850.0 142500.0 49050.0 ; + RECT 120300.0 72600.0 119100.0 73800.0 ; + RECT 149250.0 72750.0 148050.0 73950.0 ; + RECT 120300.0 52200.0 119100.0 53400.0 ; + RECT 149250.0 52350.0 148050.0 53550.0 ; + RECT 164400.0 32250.0 163200.0 33450.0 ; + RECT 159000.0 27750.0 157800.0 28950.0 ; + RECT 161700.0 25350.0 160500.0 26550.0 ; + RECT 164400.0 424650.0 163200.0 425850.0 ; + RECT 167100.0 96750.0 165900.0 97950.0 ; + RECT 169800.0 194850.0 168600.0 196050.0 ; + RECT 156300.0 84900.0 155100.0 86100.0 ; + RECT 103650.0 421500.0 102450.0 422700.0 ; + RECT 156300.0 421500.0 155100.0 422700.0 ; + RECT 152550.0 23400.0 151350.0 24600.0 ; + RECT 152550.0 192900.0 151350.0 194100.0 ; + RECT 152550.0 94800.0 151350.0 96000.0 ; + RECT 198600.0 0.0 203100.0 436800.0 ; + RECT 52800.0 0.0 57300.0 436800.0 ; + RECT 43650.0 207600.0 42750.0 217200.0 ; + RECT 43800.0 223800.0 42900.0 224700.0 ; + RECT 43350.0 223800.0 43200.0 224700.0 ; + RECT 43800.0 224250.0 42900.0 231600.0 ; + RECT 43800.0 243450.0 42900.0 250800.0 ; RECT 35550.0 258600.0 30600.0 259500.0 ; - RECT 44100.0 207150.0 43200.0 208050.0 ; - RECT 44250.0 223950.0 43350.0 224850.0 ; - RECT 28800.0 362100.0 27900.0 375450.0 ; - RECT 44400.0 272850.0 43500.0 284850.0 ; + RECT 43650.0 207150.0 42750.0 208050.0 ; + RECT 43650.0 223800.0 42750.0 224700.0 ; + RECT 29250.0 362100.0 28350.0 375450.0 ; + RECT 43800.0 272700.0 42900.0 284850.0 ; RECT 33300.0 204600.0 30600.0 205500.0 ; - RECT 29400.0 284850.0 28500.0 311700.0 ; - RECT 26700.0 290250.0 25800.0 314700.0 ; - RECT 41250.0 303750.0 40350.0 312300.0 ; - RECT 43200.0 301050.0 42300.0 314700.0 ; - RECT 45150.0 292950.0 44250.0 317100.0 ; - RECT 41250.0 326850.0 40350.0 327750.0 ; - RECT 41250.0 318300.0 40350.0 327300.0 ; - RECT 43650.0 326850.0 40800.0 327750.0 ; - RECT 44250.0 329250.0 43350.0 330150.0 ; - RECT 43800.0 329250.0 43650.0 330150.0 ; - RECT 44250.0 329700.0 43350.0 387300.0 ; - RECT 13050.0 303750.0 12150.0 321900.0 ; - RECT 15000.0 292950.0 14100.0 324300.0 ; - RECT 16950.0 295650.0 16050.0 326700.0 ; - RECT 13050.0 336450.0 12150.0 337350.0 ; - RECT 13050.0 327900.0 12150.0 336900.0 ; - RECT 15450.0 336450.0 12600.0 337350.0 ; - RECT 15900.0 339300.0 15000.0 346500.0 ; - RECT 15900.0 348900.0 15000.0 356100.0 ; - RECT 28800.0 361650.0 27900.0 362550.0 ; - RECT 28350.0 361650.0 27900.0 362550.0 ; - RECT 28800.0 359700.0 27900.0 362100.0 ; - RECT 28800.0 349500.0 27900.0 356700.0 ; - RECT 29400.0 316800.0 28500.0 323100.0 ; - RECT 30150.0 333000.0 29250.0 340200.0 ; - RECT 15900.0 358500.0 15000.0 362700.0 ; - RECT 28800.0 342900.0 27900.0 347100.0 ; - RECT 50550.0 202200.0 49650.0 362100.0 ; - RECT 50550.0 287550.0 49650.0 308700.0 ; + RECT 29700.0 284850.0 28800.0 311700.0 ; + RECT 27000.0 290250.0 26100.0 314700.0 ; + RECT 41700.0 303750.0 40800.0 312300.0 ; + RECT 43650.0 301050.0 42750.0 314700.0 ; + RECT 45600.0 292950.0 44700.0 317100.0 ; + RECT 41700.0 326850.0 40800.0 327750.0 ; + RECT 41700.0 318300.0 40800.0 327300.0 ; + RECT 43200.0 326850.0 41250.0 327750.0 ; + RECT 43800.0 329250.0 42900.0 330150.0 ; + RECT 43350.0 329250.0 43200.0 330150.0 ; + RECT 43800.0 329700.0 42900.0 387300.0 ; + RECT 14100.0 303750.0 13200.0 321900.0 ; + RECT 16050.0 292950.0 15150.0 324300.0 ; + RECT 18000.0 295650.0 17100.0 326700.0 ; + RECT 14100.0 336450.0 13200.0 337350.0 ; + RECT 14100.0 327900.0 13200.0 336900.0 ; + RECT 15600.0 336450.0 13650.0 337350.0 ; + RECT 16050.0 339300.0 15150.0 346500.0 ; + RECT 16050.0 348900.0 15150.0 356100.0 ; + RECT 29250.0 361650.0 28350.0 362550.0 ; + RECT 28800.0 361650.0 28350.0 362550.0 ; + RECT 29250.0 359700.0 28350.0 362100.0 ; + RECT 29250.0 349500.0 28350.0 356700.0 ; + RECT 29700.0 316800.0 28800.0 323100.0 ; + RECT 30450.0 333000.0 29550.0 340200.0 ; + RECT 16050.0 358500.0 15150.0 362700.0 ; + RECT 29250.0 342900.0 28350.0 347100.0 ; + RECT 50250.0 202200.0 49350.0 362100.0 ; + RECT 50250.0 287550.0 49350.0 308700.0 ; RECT 36450.0 202200.0 35550.0 362100.0 ; RECT 36450.0 298350.0 35550.0 308700.0 ; - RECT 22350.0 308700.0 21450.0 362100.0 ; - RECT 22350.0 287550.0 21450.0 308700.0 ; - RECT 8250.0 308700.0 7350.0 362100.0 ; - RECT 8250.0 298350.0 7350.0 308700.0 ; - RECT 8250.0 361650.0 7350.0 362550.0 ; - RECT 8250.0 360000.0 7350.0 362100.0 ; - RECT 7800.0 361650.0 3300.0 362550.0 ; - RECT 0.0 202200.0 10200.0 262200.0 ; + RECT 22650.0 308700.0 21750.0 362100.0 ; + RECT 22650.0 287550.0 21750.0 308700.0 ; + RECT 8850.0 308700.0 7950.0 362100.0 ; + RECT 8850.0 298350.0 7950.0 308700.0 ; + RECT 8850.0 361650.0 7950.0 362550.0 ; + RECT 8850.0 360000.0 7950.0 362100.0 ; + RECT 8400.0 361650.0 3600.0 362550.0 ; + RECT 7.1054273576e-12 202200.0 10200.0 262200.0 ; RECT 20400.0 202200.0 10200.0 262200.0 ; RECT 20400.0 202200.0 30600.0 262200.0 ; - RECT 0.0 204600.0 30600.0 205500.0 ; - RECT 7.1054273576e-12 258600.0 30600.0 259500.0 ; + RECT 7.1054273576e-12 204600.0 30600.0 205500.0 ; + RECT 1.42108547152e-11 258600.0 30600.0 259500.0 ; RECT 37950.0 211200.0 36000.0 212400.0 ; - RECT 50100.0 211200.0 47850.0 212400.0 ; - RECT 47550.0 206700.0 39150.0 207600.0 ; + RECT 49800.0 211200.0 47850.0 212400.0 ; + RECT 48450.0 206700.0 39150.0 207600.0 ; RECT 38550.0 204150.0 36600.0 205050.0 ; RECT 38550.0 208950.0 36600.0 209850.0 ; RECT 39150.0 204000.0 37950.0 205200.0 ; RECT 39150.0 208800.0 37950.0 210000.0 ; RECT 39150.0 206400.0 37950.0 207600.0 ; RECT 39150.0 206400.0 37950.0 207600.0 ; - RECT 37050.0 204000.0 36150.0 210000.0 ; - RECT 50100.0 204150.0 48150.0 205050.0 ; - RECT 50100.0 208950.0 48150.0 209850.0 ; - RECT 48750.0 204000.0 47550.0 205200.0 ; - RECT 48750.0 208800.0 47550.0 210000.0 ; - RECT 48750.0 206400.0 47550.0 207600.0 ; - RECT 48750.0 206400.0 47550.0 207600.0 ; - RECT 50550.0 204000.0 49650.0 210000.0 ; + RECT 37050.0 204150.0 36150.0 209850.0 ; + RECT 49800.0 204150.0 47850.0 205050.0 ; + RECT 49800.0 208950.0 47850.0 209850.0 ; + RECT 48450.0 204000.0 47250.0 205200.0 ; + RECT 48450.0 208800.0 47250.0 210000.0 ; + RECT 48450.0 206400.0 47250.0 207600.0 ; + RECT 48450.0 206400.0 47250.0 207600.0 ; + RECT 50250.0 204150.0 49350.0 209850.0 ; RECT 38550.0 211200.0 37350.0 212400.0 ; RECT 48450.0 211200.0 47250.0 212400.0 ; - RECT 44250.0 204600.0 43050.0 205800.0 ; - RECT 44250.0 204600.0 43050.0 205800.0 ; - RECT 44100.0 207150.0 43200.0 208050.0 ; + RECT 43800.0 204600.0 42600.0 205800.0 ; + RECT 43800.0 204600.0 42600.0 205800.0 ; + RECT 43650.0 207150.0 42750.0 208050.0 ; RECT 36450.0 202200.0 35550.0 214200.0 ; - RECT 50550.0 202200.0 49650.0 214200.0 ; + RECT 50250.0 202200.0 49350.0 214200.0 ; RECT 37950.0 225600.0 36000.0 226800.0 ; - RECT 50100.0 225600.0 47850.0 226800.0 ; - RECT 37350.0 216000.0 35550.0 222000.0 ; - RECT 45450.0 223500.0 41250.0 224400.0 ; + RECT 49800.0 225600.0 47850.0 226800.0 ; + RECT 37350.0 216150.0 35550.0 221850.0 ; + RECT 46050.0 223350.0 41250.0 224250.0 ; RECT 38850.0 216150.0 36900.0 217050.0 ; RECT 38850.0 220950.0 36900.0 221850.0 ; RECT 40800.0 218550.0 38850.0 219450.0 ; @@ -3716,29 +3714,29 @@ MACRO sram_2_16_1_scn3me_subm RECT 39450.0 220800.0 38250.0 222000.0 ; RECT 39450.0 218400.0 38250.0 219600.0 ; RECT 39450.0 223200.0 38250.0 224400.0 ; - RECT 41250.0 218400.0 40350.0 224400.0 ; - RECT 37350.0 216000.0 36450.0 222000.0 ; - RECT 49800.0 216150.0 47850.0 217050.0 ; - RECT 49800.0 220950.0 47850.0 221850.0 ; - RECT 47850.0 218550.0 45900.0 219450.0 ; - RECT 47850.0 223350.0 45900.0 224250.0 ; - RECT 48450.0 216000.0 47250.0 217200.0 ; - RECT 48450.0 220800.0 47250.0 222000.0 ; - RECT 48450.0 218400.0 47250.0 219600.0 ; - RECT 48450.0 223200.0 47250.0 224400.0 ; - RECT 46350.0 218400.0 45450.0 224400.0 ; - RECT 50250.0 216000.0 49350.0 222000.0 ; + RECT 41250.0 218550.0 40350.0 224250.0 ; + RECT 37350.0 216150.0 36450.0 221850.0 ; + RECT 49500.0 216150.0 47550.0 217050.0 ; + RECT 49500.0 220950.0 47550.0 221850.0 ; + RECT 47550.0 218550.0 45600.0 219450.0 ; + RECT 47550.0 223350.0 45600.0 224250.0 ; + RECT 48150.0 216000.0 46950.0 217200.0 ; + RECT 48150.0 220800.0 46950.0 222000.0 ; + RECT 48150.0 218400.0 46950.0 219600.0 ; + RECT 48150.0 223200.0 46950.0 224400.0 ; + RECT 46050.0 218550.0 45150.0 224250.0 ; + RECT 49950.0 216150.0 49050.0 221850.0 ; RECT 38550.0 225600.0 37350.0 226800.0 ; RECT 48450.0 225600.0 47250.0 226800.0 ; - RECT 44400.0 216600.0 43200.0 217800.0 ; - RECT 44400.0 216600.0 43200.0 217800.0 ; - RECT 44250.0 223950.0 43350.0 224850.0 ; + RECT 43800.0 216600.0 42600.0 217800.0 ; + RECT 43800.0 216600.0 42600.0 217800.0 ; + RECT 43650.0 223800.0 42750.0 224700.0 ; RECT 36450.0 214200.0 35550.0 228600.0 ; - RECT 50550.0 214200.0 49650.0 228600.0 ; + RECT 50250.0 214200.0 49350.0 228600.0 ; RECT 37950.0 244800.0 36000.0 246000.0 ; - RECT 50100.0 244800.0 47850.0 246000.0 ; - RECT 37800.0 230400.0 35550.0 241200.0 ; - RECT 45300.0 242700.0 41700.0 243600.0 ; + RECT 49800.0 244800.0 47850.0 246000.0 ; + RECT 37800.0 230550.0 35550.0 241050.0 ; + RECT 45900.0 242550.0 41700.0 243450.0 ; RECT 39300.0 230550.0 37350.0 231450.0 ; RECT 39300.0 235350.0 37350.0 236250.0 ; RECT 39300.0 240150.0 37350.0 241050.0 ; @@ -3751,33 +3749,33 @@ MACRO sram_2_16_1_scn3me_subm RECT 39900.0 232800.0 38700.0 234000.0 ; RECT 39900.0 237600.0 38700.0 238800.0 ; RECT 39900.0 242400.0 38700.0 243600.0 ; - RECT 41700.0 232800.0 40800.0 243600.0 ; - RECT 37800.0 230400.0 36900.0 241200.0 ; - RECT 49650.0 230550.0 47700.0 231450.0 ; - RECT 49650.0 235350.0 47700.0 236250.0 ; - RECT 49650.0 240150.0 47700.0 241050.0 ; - RECT 47700.0 232950.0 45750.0 233850.0 ; - RECT 47700.0 237750.0 45750.0 238650.0 ; - RECT 47700.0 242550.0 45750.0 243450.0 ; - RECT 48300.0 230400.0 47100.0 231600.0 ; - RECT 48300.0 235200.0 47100.0 236400.0 ; - RECT 48300.0 240000.0 47100.0 241200.0 ; - RECT 48300.0 232800.0 47100.0 234000.0 ; - RECT 48300.0 237600.0 47100.0 238800.0 ; - RECT 48300.0 242400.0 47100.0 243600.0 ; - RECT 46200.0 232800.0 45300.0 243600.0 ; - RECT 50100.0 230400.0 49200.0 241200.0 ; + RECT 41700.0 232950.0 40800.0 243450.0 ; + RECT 37800.0 230550.0 36900.0 241050.0 ; + RECT 49350.0 230550.0 47400.0 231450.0 ; + RECT 49350.0 235350.0 47400.0 236250.0 ; + RECT 49350.0 240150.0 47400.0 241050.0 ; + RECT 47400.0 232950.0 45450.0 233850.0 ; + RECT 47400.0 237750.0 45450.0 238650.0 ; + RECT 47400.0 242550.0 45450.0 243450.0 ; + RECT 48000.0 230400.0 46800.0 231600.0 ; + RECT 48000.0 235200.0 46800.0 236400.0 ; + RECT 48000.0 240000.0 46800.0 241200.0 ; + RECT 48000.0 232800.0 46800.0 234000.0 ; + RECT 48000.0 237600.0 46800.0 238800.0 ; + RECT 48000.0 242400.0 46800.0 243600.0 ; + RECT 45900.0 232950.0 45000.0 243450.0 ; + RECT 49800.0 230550.0 48900.0 241050.0 ; RECT 38550.0 244800.0 37350.0 246000.0 ; RECT 48450.0 244800.0 47250.0 246000.0 ; - RECT 44550.0 231000.0 43350.0 232200.0 ; - RECT 44550.0 231000.0 43350.0 232200.0 ; - RECT 44400.0 243150.0 43500.0 244050.0 ; + RECT 43950.0 231000.0 42750.0 232200.0 ; + RECT 43950.0 231000.0 42750.0 232200.0 ; + RECT 43800.0 243000.0 42900.0 243900.0 ; RECT 36450.0 228600.0 35550.0 247800.0 ; - RECT 50550.0 228600.0 49650.0 247800.0 ; + RECT 50250.0 228600.0 49350.0 247800.0 ; RECT 37950.0 276000.0 36000.0 277200.0 ; - RECT 50100.0 276000.0 47850.0 277200.0 ; - RECT 37800.0 249600.0 35550.0 274800.0 ; - RECT 45300.0 271500.0 41700.0 272400.0 ; + RECT 49800.0 276000.0 47850.0 277200.0 ; + RECT 37800.0 249750.0 35550.0 274650.0 ; + RECT 45900.0 271350.0 41700.0 272250.0 ; RECT 39300.0 249750.0 37350.0 250650.0 ; RECT 39300.0 254550.0 37350.0 255450.0 ; RECT 39300.0 259350.0 37350.0 260250.0 ; @@ -3800,108 +3798,108 @@ MACRO sram_2_16_1_scn3me_subm RECT 39900.0 261600.0 38700.0 262800.0 ; RECT 39900.0 266400.0 38700.0 267600.0 ; RECT 39900.0 271200.0 38700.0 272400.0 ; - RECT 41700.0 252000.0 40800.0 272400.0 ; - RECT 37800.0 249600.0 36900.0 274800.0 ; - RECT 49650.0 249750.0 47700.0 250650.0 ; - RECT 49650.0 254550.0 47700.0 255450.0 ; - RECT 49650.0 259350.0 47700.0 260250.0 ; - RECT 49650.0 264150.0 47700.0 265050.0 ; - RECT 49650.0 268950.0 47700.0 269850.0 ; - RECT 49650.0 273750.0 47700.0 274650.0 ; - RECT 47700.0 252150.0 45750.0 253050.0 ; - RECT 47700.0 256950.0 45750.0 257850.0 ; - RECT 47700.0 261750.0 45750.0 262650.0 ; - RECT 47700.0 266550.0 45750.0 267450.0 ; - RECT 47700.0 271350.0 45750.0 272250.0 ; - RECT 48300.0 249600.0 47100.0 250800.0 ; - RECT 48300.0 254400.0 47100.0 255600.0 ; - RECT 48300.0 259200.0 47100.0 260400.0 ; - RECT 48300.0 264000.0 47100.0 265200.0 ; - RECT 48300.0 268800.0 47100.0 270000.0 ; - RECT 48300.0 273600.0 47100.0 274800.0 ; - RECT 48300.0 252000.0 47100.0 253200.0 ; - RECT 48300.0 256800.0 47100.0 258000.0 ; - RECT 48300.0 261600.0 47100.0 262800.0 ; - RECT 48300.0 266400.0 47100.0 267600.0 ; - RECT 48300.0 271200.0 47100.0 272400.0 ; - RECT 46200.0 252000.0 45300.0 272400.0 ; - RECT 50100.0 249600.0 49200.0 274800.0 ; + RECT 41700.0 252150.0 40800.0 272250.0 ; + RECT 37800.0 249750.0 36900.0 274650.0 ; + RECT 49350.0 249750.0 47400.0 250650.0 ; + RECT 49350.0 254550.0 47400.0 255450.0 ; + RECT 49350.0 259350.0 47400.0 260250.0 ; + RECT 49350.0 264150.0 47400.0 265050.0 ; + RECT 49350.0 268950.0 47400.0 269850.0 ; + RECT 49350.0 273750.0 47400.0 274650.0 ; + RECT 47400.0 252150.0 45450.0 253050.0 ; + RECT 47400.0 256950.0 45450.0 257850.0 ; + RECT 47400.0 261750.0 45450.0 262650.0 ; + RECT 47400.0 266550.0 45450.0 267450.0 ; + RECT 47400.0 271350.0 45450.0 272250.0 ; + RECT 48000.0 249600.0 46800.0 250800.0 ; + RECT 48000.0 254400.0 46800.0 255600.0 ; + RECT 48000.0 259200.0 46800.0 260400.0 ; + RECT 48000.0 264000.0 46800.0 265200.0 ; + RECT 48000.0 268800.0 46800.0 270000.0 ; + RECT 48000.0 273600.0 46800.0 274800.0 ; + RECT 48000.0 252000.0 46800.0 253200.0 ; + RECT 48000.0 256800.0 46800.0 258000.0 ; + RECT 48000.0 261600.0 46800.0 262800.0 ; + RECT 48000.0 266400.0 46800.0 267600.0 ; + RECT 48000.0 271200.0 46800.0 272400.0 ; + RECT 45900.0 252150.0 45000.0 272250.0 ; + RECT 49800.0 249750.0 48900.0 274650.0 ; RECT 38550.0 276000.0 37350.0 277200.0 ; RECT 48450.0 276000.0 47250.0 277200.0 ; - RECT 44550.0 250200.0 43350.0 251400.0 ; - RECT 44550.0 250200.0 43350.0 251400.0 ; - RECT 44400.0 271950.0 43500.0 272850.0 ; + RECT 43950.0 250200.0 42750.0 251400.0 ; + RECT 43950.0 250200.0 42750.0 251400.0 ; + RECT 43800.0 271800.0 42900.0 272700.0 ; RECT 36450.0 247800.0 35550.0 279000.0 ; - RECT 50550.0 247800.0 49650.0 279000.0 ; - RECT 48000.0 310500.0 50550.0 311700.0 ; - RECT 38700.0 310500.0 35550.0 311700.0 ; - RECT 38700.0 315300.0 35550.0 316500.0 ; - RECT 37500.0 320100.0 36000.0 321300.0 ; - RECT 50100.0 320100.0 47850.0 321300.0 ; - RECT 38700.0 310500.0 37500.0 311700.0 ; - RECT 38700.0 312900.0 37500.0 314100.0 ; - RECT 38700.0 312900.0 37500.0 314100.0 ; - RECT 38700.0 310500.0 37500.0 311700.0 ; - RECT 38700.0 312900.0 37500.0 314100.0 ; - RECT 38700.0 315300.0 37500.0 316500.0 ; - RECT 38700.0 315300.0 37500.0 316500.0 ; - RECT 38700.0 312900.0 37500.0 314100.0 ; - RECT 38700.0 315300.0 37500.0 316500.0 ; - RECT 38700.0 317700.0 37500.0 318900.0 ; - RECT 38700.0 317700.0 37500.0 318900.0 ; - RECT 38700.0 315300.0 37500.0 316500.0 ; - RECT 48000.0 310500.0 46800.0 311700.0 ; - RECT 48000.0 312900.0 46800.0 314100.0 ; - RECT 48000.0 312900.0 46800.0 314100.0 ; - RECT 48000.0 310500.0 46800.0 311700.0 ; - RECT 48000.0 312900.0 46800.0 314100.0 ; - RECT 48000.0 315300.0 46800.0 316500.0 ; - RECT 48000.0 315300.0 46800.0 316500.0 ; - RECT 48000.0 312900.0 46800.0 314100.0 ; - RECT 48000.0 315300.0 46800.0 316500.0 ; - RECT 48000.0 317700.0 46800.0 318900.0 ; - RECT 48000.0 317700.0 46800.0 318900.0 ; - RECT 48000.0 315300.0 46800.0 316500.0 ; - RECT 38100.0 320100.0 36900.0 321300.0 ; + RECT 50250.0 247800.0 49350.0 279000.0 ; + RECT 47850.0 310500.0 50250.0 311700.0 ; + RECT 39150.0 310500.0 35550.0 311700.0 ; + RECT 39150.0 315300.0 35550.0 316500.0 ; + RECT 37950.0 320100.0 36000.0 321300.0 ; + RECT 49800.0 320100.0 47850.0 321300.0 ; + RECT 39150.0 310500.0 37950.0 311700.0 ; + RECT 39150.0 312900.0 37950.0 314100.0 ; + RECT 39150.0 312900.0 37950.0 314100.0 ; + RECT 39150.0 310500.0 37950.0 311700.0 ; + RECT 39150.0 312900.0 37950.0 314100.0 ; + RECT 39150.0 315300.0 37950.0 316500.0 ; + RECT 39150.0 315300.0 37950.0 316500.0 ; + RECT 39150.0 312900.0 37950.0 314100.0 ; + RECT 39150.0 315300.0 37950.0 316500.0 ; + RECT 39150.0 317700.0 37950.0 318900.0 ; + RECT 39150.0 317700.0 37950.0 318900.0 ; + RECT 39150.0 315300.0 37950.0 316500.0 ; + RECT 47850.0 310500.0 46650.0 311700.0 ; + RECT 47850.0 312900.0 46650.0 314100.0 ; + RECT 47850.0 312900.0 46650.0 314100.0 ; + RECT 47850.0 310500.0 46650.0 311700.0 ; + RECT 47850.0 312900.0 46650.0 314100.0 ; + RECT 47850.0 315300.0 46650.0 316500.0 ; + RECT 47850.0 315300.0 46650.0 316500.0 ; + RECT 47850.0 312900.0 46650.0 314100.0 ; + RECT 47850.0 315300.0 46650.0 316500.0 ; + RECT 47850.0 317700.0 46650.0 318900.0 ; + RECT 47850.0 317700.0 46650.0 318900.0 ; + RECT 47850.0 315300.0 46650.0 316500.0 ; + RECT 38550.0 320100.0 37350.0 321300.0 ; RECT 48450.0 320100.0 47250.0 321300.0 ; - RECT 45300.0 317700.0 44100.0 316500.0 ; - RECT 43350.0 315300.0 42150.0 314100.0 ; - RECT 41400.0 312900.0 40200.0 311700.0 ; - RECT 38700.0 312900.0 37500.0 314100.0 ; - RECT 38700.0 317700.0 37500.0 318900.0 ; - RECT 48000.0 317700.0 46800.0 318900.0 ; - RECT 41400.0 317700.0 40200.0 318900.0 ; - RECT 41400.0 311700.0 40200.0 312900.0 ; - RECT 43350.0 314100.0 42150.0 315300.0 ; - RECT 45300.0 316500.0 44100.0 317700.0 ; - RECT 41400.0 317700.0 40200.0 318900.0 ; + RECT 45750.0 317700.0 44550.0 316500.0 ; + RECT 43800.0 315300.0 42600.0 314100.0 ; + RECT 41850.0 312900.0 40650.0 311700.0 ; + RECT 39150.0 312900.0 37950.0 314100.0 ; + RECT 39150.0 317700.0 37950.0 318900.0 ; + RECT 47850.0 317700.0 46650.0 318900.0 ; + RECT 41850.0 317700.0 40650.0 318900.0 ; + RECT 41850.0 311700.0 40650.0 312900.0 ; + RECT 43800.0 314100.0 42600.0 315300.0 ; + RECT 45750.0 316500.0 44550.0 317700.0 ; + RECT 41850.0 317700.0 40650.0 318900.0 ; RECT 36450.0 308700.0 35550.0 324300.0 ; - RECT 50550.0 308700.0 49650.0 324300.0 ; + RECT 50250.0 308700.0 49350.0 324300.0 ; RECT 37950.0 330900.0 36000.0 332100.0 ; - RECT 50100.0 330900.0 47850.0 332100.0 ; - RECT 48750.0 326100.0 50550.0 327300.0 ; + RECT 49800.0 330900.0 47850.0 332100.0 ; + RECT 48450.0 326100.0 50250.0 327300.0 ; RECT 39150.0 326100.0 35550.0 327300.0 ; - RECT 47550.0 328800.0 39150.0 329700.0 ; + RECT 48450.0 328800.0 39150.0 329700.0 ; RECT 39150.0 326100.0 37950.0 327300.0 ; RECT 39150.0 328500.0 37950.0 329700.0 ; RECT 39150.0 328500.0 37950.0 329700.0 ; RECT 39150.0 326100.0 37950.0 327300.0 ; - RECT 48750.0 326100.0 47550.0 327300.0 ; - RECT 48750.0 328500.0 47550.0 329700.0 ; - RECT 48750.0 328500.0 47550.0 329700.0 ; - RECT 48750.0 326100.0 47550.0 327300.0 ; + RECT 48450.0 326100.0 47250.0 327300.0 ; + RECT 48450.0 328500.0 47250.0 329700.0 ; + RECT 48450.0 328500.0 47250.0 329700.0 ; + RECT 48450.0 326100.0 47250.0 327300.0 ; RECT 38550.0 330900.0 37350.0 332100.0 ; RECT 48450.0 330900.0 47250.0 332100.0 ; - RECT 44250.0 326700.0 43050.0 327900.0 ; - RECT 44250.0 326700.0 43050.0 327900.0 ; - RECT 44100.0 329250.0 43200.0 330150.0 ; + RECT 43800.0 326700.0 42600.0 327900.0 ; + RECT 43800.0 326700.0 42600.0 327900.0 ; + RECT 43650.0 329250.0 42750.0 330150.0 ; RECT 36450.0 324300.0 35550.0 333900.0 ; - RECT 50550.0 324300.0 49650.0 333900.0 ; - RECT 23250.0 310500.0 21450.0 311700.0 ; - RECT 23250.0 315300.0 21450.0 316500.0 ; + RECT 50250.0 324300.0 49350.0 333900.0 ; + RECT 23550.0 310500.0 21750.0 311700.0 ; + RECT 23550.0 315300.0 21750.0 316500.0 ; RECT 32250.0 310500.0 36450.0 311700.0 ; RECT 34050.0 317700.0 36000.0 318900.0 ; - RECT 21900.0 317700.0 24150.0 318900.0 ; + RECT 22200.0 317700.0 24150.0 318900.0 ; RECT 32250.0 310500.0 33450.0 311700.0 ; RECT 32250.0 312900.0 33450.0 314100.0 ; RECT 32250.0 312900.0 33450.0 314100.0 ; @@ -3910,31 +3908,31 @@ MACRO sram_2_16_1_scn3me_subm RECT 32250.0 315300.0 33450.0 316500.0 ; RECT 32250.0 315300.0 33450.0 316500.0 ; RECT 32250.0 312900.0 33450.0 314100.0 ; - RECT 23250.0 310500.0 24450.0 311700.0 ; - RECT 23250.0 312900.0 24450.0 314100.0 ; - RECT 23250.0 312900.0 24450.0 314100.0 ; - RECT 23250.0 310500.0 24450.0 311700.0 ; - RECT 23250.0 312900.0 24450.0 314100.0 ; - RECT 23250.0 315300.0 24450.0 316500.0 ; - RECT 23250.0 315300.0 24450.0 316500.0 ; - RECT 23250.0 312900.0 24450.0 314100.0 ; + RECT 23550.0 310500.0 24750.0 311700.0 ; + RECT 23550.0 312900.0 24750.0 314100.0 ; + RECT 23550.0 312900.0 24750.0 314100.0 ; + RECT 23550.0 310500.0 24750.0 311700.0 ; + RECT 23550.0 312900.0 24750.0 314100.0 ; + RECT 23550.0 315300.0 24750.0 316500.0 ; + RECT 23550.0 315300.0 24750.0 316500.0 ; + RECT 23550.0 312900.0 24750.0 314100.0 ; RECT 33450.0 317700.0 34650.0 318900.0 ; RECT 23550.0 317700.0 24750.0 318900.0 ; - RECT 25650.0 315300.0 26850.0 314100.0 ; - RECT 28350.0 312300.0 29550.0 311100.0 ; + RECT 25950.0 315300.0 27150.0 314100.0 ; + RECT 28650.0 312300.0 29850.0 311100.0 ; RECT 32250.0 315300.0 33450.0 316500.0 ; - RECT 23250.0 314100.0 24450.0 312900.0 ; - RECT 28350.0 317400.0 29550.0 316200.0 ; - RECT 28350.0 311100.0 29550.0 312300.0 ; - RECT 25650.0 314100.0 26850.0 315300.0 ; - RECT 28350.0 316200.0 29550.0 317400.0 ; + RECT 23550.0 314100.0 24750.0 312900.0 ; + RECT 28650.0 317400.0 29850.0 316200.0 ; + RECT 28650.0 311100.0 29850.0 312300.0 ; + RECT 25950.0 314100.0 27150.0 315300.0 ; + RECT 28650.0 316200.0 29850.0 317400.0 ; RECT 35550.0 308700.0 36450.0 323100.0 ; - RECT 21450.0 308700.0 22350.0 323100.0 ; - RECT 23850.0 327600.0 21450.0 328800.0 ; + RECT 21750.0 308700.0 22650.0 323100.0 ; + RECT 24150.0 327600.0 21750.0 328800.0 ; RECT 32850.0 327600.0 36450.0 328800.0 ; RECT 32850.0 332400.0 36450.0 333600.0 ; RECT 34050.0 334800.0 36000.0 336000.0 ; - RECT 21900.0 334800.0 24150.0 336000.0 ; + RECT 22200.0 334800.0 24150.0 336000.0 ; RECT 32850.0 327600.0 34050.0 328800.0 ; RECT 32850.0 330000.0 34050.0 331200.0 ; RECT 32850.0 330000.0 34050.0 331200.0 ; @@ -3943,1133 +3941,1130 @@ MACRO sram_2_16_1_scn3me_subm RECT 32850.0 332400.0 34050.0 333600.0 ; RECT 32850.0 332400.0 34050.0 333600.0 ; RECT 32850.0 330000.0 34050.0 331200.0 ; - RECT 23850.0 327600.0 25050.0 328800.0 ; - RECT 23850.0 330000.0 25050.0 331200.0 ; - RECT 23850.0 330000.0 25050.0 331200.0 ; - RECT 23850.0 327600.0 25050.0 328800.0 ; - RECT 23850.0 330000.0 25050.0 331200.0 ; - RECT 23850.0 332400.0 25050.0 333600.0 ; - RECT 23850.0 332400.0 25050.0 333600.0 ; - RECT 23850.0 330000.0 25050.0 331200.0 ; + RECT 24150.0 327600.0 25350.0 328800.0 ; + RECT 24150.0 330000.0 25350.0 331200.0 ; + RECT 24150.0 330000.0 25350.0 331200.0 ; + RECT 24150.0 327600.0 25350.0 328800.0 ; + RECT 24150.0 330000.0 25350.0 331200.0 ; + RECT 24150.0 332400.0 25350.0 333600.0 ; + RECT 24150.0 332400.0 25350.0 333600.0 ; + RECT 24150.0 330000.0 25350.0 331200.0 ; RECT 33450.0 334800.0 34650.0 336000.0 ; RECT 23550.0 334800.0 24750.0 336000.0 ; - RECT 26400.0 332400.0 27600.0 331200.0 ; - RECT 29100.0 329400.0 30300.0 328200.0 ; + RECT 26700.0 332400.0 27900.0 331200.0 ; + RECT 29400.0 329400.0 30600.0 328200.0 ; RECT 32850.0 330000.0 34050.0 331200.0 ; - RECT 23850.0 332400.0 25050.0 333600.0 ; - RECT 29100.0 333600.0 30300.0 332400.0 ; - RECT 29100.0 328200.0 30300.0 329400.0 ; - RECT 26400.0 331200.0 27600.0 332400.0 ; - RECT 29100.0 332400.0 30300.0 333600.0 ; + RECT 24150.0 332400.0 25350.0 333600.0 ; + RECT 29400.0 333600.0 30600.0 332400.0 ; + RECT 29400.0 328200.0 30600.0 329400.0 ; + RECT 26700.0 331200.0 27900.0 332400.0 ; + RECT 29400.0 332400.0 30600.0 333600.0 ; RECT 35550.0 325800.0 36450.0 340200.0 ; - RECT 21450.0 325800.0 22350.0 340200.0 ; + RECT 21750.0 325800.0 22650.0 340200.0 ; RECT 34050.0 345900.0 36000.0 344700.0 ; - RECT 21900.0 345900.0 24150.0 344700.0 ; - RECT 23250.0 350700.0 21450.0 349500.0 ; + RECT 22200.0 345900.0 24150.0 344700.0 ; + RECT 23550.0 350700.0 21750.0 349500.0 ; RECT 32850.0 350700.0 36450.0 349500.0 ; - RECT 24450.0 348000.0 32850.0 347100.0 ; + RECT 23550.0 348000.0 32850.0 347100.0 ; RECT 32850.0 350700.0 34050.0 349500.0 ; RECT 32850.0 348300.0 34050.0 347100.0 ; RECT 32850.0 348300.0 34050.0 347100.0 ; RECT 32850.0 350700.0 34050.0 349500.0 ; - RECT 23250.0 350700.0 24450.0 349500.0 ; - RECT 23250.0 348300.0 24450.0 347100.0 ; - RECT 23250.0 348300.0 24450.0 347100.0 ; - RECT 23250.0 350700.0 24450.0 349500.0 ; + RECT 23550.0 350700.0 24750.0 349500.0 ; + RECT 23550.0 348300.0 24750.0 347100.0 ; + RECT 23550.0 348300.0 24750.0 347100.0 ; + RECT 23550.0 350700.0 24750.0 349500.0 ; RECT 33450.0 345900.0 34650.0 344700.0 ; RECT 23550.0 345900.0 24750.0 344700.0 ; - RECT 27750.0 350100.0 28950.0 348900.0 ; - RECT 27750.0 350100.0 28950.0 348900.0 ; - RECT 27900.0 347550.0 28800.0 346650.0 ; + RECT 28200.0 350100.0 29400.0 348900.0 ; + RECT 28200.0 350100.0 29400.0 348900.0 ; + RECT 28350.0 347550.0 29250.0 346650.0 ; RECT 35550.0 352500.0 36450.0 342900.0 ; - RECT 21450.0 352500.0 22350.0 342900.0 ; + RECT 21750.0 352500.0 22650.0 342900.0 ; RECT 34050.0 355500.0 36000.0 354300.0 ; - RECT 21900.0 355500.0 24150.0 354300.0 ; - RECT 23250.0 360300.0 21450.0 359100.0 ; + RECT 22200.0 355500.0 24150.0 354300.0 ; + RECT 23550.0 360300.0 21750.0 359100.0 ; RECT 32850.0 360300.0 36450.0 359100.0 ; - RECT 24450.0 357600.0 32850.0 356700.0 ; + RECT 23550.0 357600.0 32850.0 356700.0 ; RECT 32850.0 360300.0 34050.0 359100.0 ; RECT 32850.0 357900.0 34050.0 356700.0 ; RECT 32850.0 357900.0 34050.0 356700.0 ; RECT 32850.0 360300.0 34050.0 359100.0 ; - RECT 23250.0 360300.0 24450.0 359100.0 ; - RECT 23250.0 357900.0 24450.0 356700.0 ; - RECT 23250.0 357900.0 24450.0 356700.0 ; - RECT 23250.0 360300.0 24450.0 359100.0 ; + RECT 23550.0 360300.0 24750.0 359100.0 ; + RECT 23550.0 357900.0 24750.0 356700.0 ; + RECT 23550.0 357900.0 24750.0 356700.0 ; + RECT 23550.0 360300.0 24750.0 359100.0 ; RECT 33450.0 355500.0 34650.0 354300.0 ; RECT 23550.0 355500.0 24750.0 354300.0 ; - RECT 27750.0 359700.0 28950.0 358500.0 ; - RECT 27750.0 359700.0 28950.0 358500.0 ; - RECT 27900.0 357150.0 28800.0 356250.0 ; + RECT 28200.0 359700.0 29400.0 358500.0 ; + RECT 28200.0 359700.0 29400.0 358500.0 ; + RECT 28350.0 357150.0 29250.0 356250.0 ; RECT 35550.0 362100.0 36450.0 352500.0 ; - RECT 21450.0 362100.0 22350.0 352500.0 ; - RECT 19800.0 320100.0 22350.0 321300.0 ; - RECT 10500.0 320100.0 7350.0 321300.0 ; - RECT 10500.0 324900.0 7350.0 326100.0 ; - RECT 9300.0 329700.0 7800.0 330900.0 ; - RECT 21900.0 329700.0 19650.0 330900.0 ; - RECT 10500.0 320100.0 9300.0 321300.0 ; - RECT 10500.0 322500.0 9300.0 323700.0 ; - RECT 10500.0 322500.0 9300.0 323700.0 ; - RECT 10500.0 320100.0 9300.0 321300.0 ; - RECT 10500.0 322500.0 9300.0 323700.0 ; - RECT 10500.0 324900.0 9300.0 326100.0 ; - RECT 10500.0 324900.0 9300.0 326100.0 ; - RECT 10500.0 322500.0 9300.0 323700.0 ; - RECT 10500.0 324900.0 9300.0 326100.0 ; - RECT 10500.0 327300.0 9300.0 328500.0 ; - RECT 10500.0 327300.0 9300.0 328500.0 ; - RECT 10500.0 324900.0 9300.0 326100.0 ; - RECT 19800.0 320100.0 18600.0 321300.0 ; - RECT 19800.0 322500.0 18600.0 323700.0 ; - RECT 19800.0 322500.0 18600.0 323700.0 ; - RECT 19800.0 320100.0 18600.0 321300.0 ; - RECT 19800.0 322500.0 18600.0 323700.0 ; - RECT 19800.0 324900.0 18600.0 326100.0 ; - RECT 19800.0 324900.0 18600.0 326100.0 ; - RECT 19800.0 322500.0 18600.0 323700.0 ; - RECT 19800.0 324900.0 18600.0 326100.0 ; - RECT 19800.0 327300.0 18600.0 328500.0 ; - RECT 19800.0 327300.0 18600.0 328500.0 ; - RECT 19800.0 324900.0 18600.0 326100.0 ; - RECT 9900.0 329700.0 8700.0 330900.0 ; - RECT 20250.0 329700.0 19050.0 330900.0 ; - RECT 17100.0 327300.0 15900.0 326100.0 ; - RECT 15150.0 324900.0 13950.0 323700.0 ; - RECT 13200.0 322500.0 12000.0 321300.0 ; - RECT 10500.0 322500.0 9300.0 323700.0 ; - RECT 10500.0 327300.0 9300.0 328500.0 ; - RECT 19800.0 327300.0 18600.0 328500.0 ; - RECT 13200.0 327300.0 12000.0 328500.0 ; - RECT 13200.0 321300.0 12000.0 322500.0 ; - RECT 15150.0 323700.0 13950.0 324900.0 ; - RECT 17100.0 326100.0 15900.0 327300.0 ; - RECT 13200.0 327300.0 12000.0 328500.0 ; - RECT 8250.0 318300.0 7350.0 333900.0 ; - RECT 22350.0 318300.0 21450.0 333900.0 ; - RECT 9750.0 340500.0 7800.0 341700.0 ; - RECT 21900.0 340500.0 19650.0 341700.0 ; - RECT 20550.0 335700.0 22350.0 336900.0 ; - RECT 10950.0 335700.0 7350.0 336900.0 ; - RECT 19350.0 338400.0 10950.0 339300.0 ; - RECT 10950.0 335700.0 9750.0 336900.0 ; - RECT 10950.0 338100.0 9750.0 339300.0 ; - RECT 10950.0 338100.0 9750.0 339300.0 ; - RECT 10950.0 335700.0 9750.0 336900.0 ; - RECT 20550.0 335700.0 19350.0 336900.0 ; - RECT 20550.0 338100.0 19350.0 339300.0 ; - RECT 20550.0 338100.0 19350.0 339300.0 ; - RECT 20550.0 335700.0 19350.0 336900.0 ; - RECT 10350.0 340500.0 9150.0 341700.0 ; - RECT 20250.0 340500.0 19050.0 341700.0 ; - RECT 16050.0 336300.0 14850.0 337500.0 ; - RECT 16050.0 336300.0 14850.0 337500.0 ; - RECT 15900.0 338850.0 15000.0 339750.0 ; - RECT 8250.0 333900.0 7350.0 343500.0 ; - RECT 22350.0 333900.0 21450.0 343500.0 ; - RECT 9750.0 350100.0 7800.0 351300.0 ; - RECT 21900.0 350100.0 19650.0 351300.0 ; - RECT 20550.0 345300.0 22350.0 346500.0 ; - RECT 10950.0 345300.0 7350.0 346500.0 ; - RECT 19350.0 348000.0 10950.0 348900.0 ; - RECT 10950.0 345300.0 9750.0 346500.0 ; - RECT 10950.0 347700.0 9750.0 348900.0 ; - RECT 10950.0 347700.0 9750.0 348900.0 ; - RECT 10950.0 345300.0 9750.0 346500.0 ; - RECT 20550.0 345300.0 19350.0 346500.0 ; - RECT 20550.0 347700.0 19350.0 348900.0 ; - RECT 20550.0 347700.0 19350.0 348900.0 ; - RECT 20550.0 345300.0 19350.0 346500.0 ; - RECT 10350.0 350100.0 9150.0 351300.0 ; - RECT 20250.0 350100.0 19050.0 351300.0 ; - RECT 16050.0 345900.0 14850.0 347100.0 ; - RECT 16050.0 345900.0 14850.0 347100.0 ; - RECT 15900.0 348450.0 15000.0 349350.0 ; - RECT 8250.0 343500.0 7350.0 353100.0 ; - RECT 22350.0 343500.0 21450.0 353100.0 ; - RECT 9750.0 359700.0 7800.0 360900.0 ; - RECT 21900.0 359700.0 19650.0 360900.0 ; - RECT 20550.0 354900.0 22350.0 356100.0 ; - RECT 10950.0 354900.0 7350.0 356100.0 ; - RECT 19350.0 357600.0 10950.0 358500.0 ; - RECT 10950.0 354900.0 9750.0 356100.0 ; - RECT 10950.0 357300.0 9750.0 358500.0 ; - RECT 10950.0 357300.0 9750.0 358500.0 ; - RECT 10950.0 354900.0 9750.0 356100.0 ; - RECT 20550.0 354900.0 19350.0 356100.0 ; - RECT 20550.0 357300.0 19350.0 358500.0 ; - RECT 20550.0 357300.0 19350.0 358500.0 ; - RECT 20550.0 354900.0 19350.0 356100.0 ; - RECT 10350.0 359700.0 9150.0 360900.0 ; - RECT 20250.0 359700.0 19050.0 360900.0 ; - RECT 16050.0 355500.0 14850.0 356700.0 ; - RECT 16050.0 355500.0 14850.0 356700.0 ; - RECT 15900.0 358050.0 15000.0 358950.0 ; - RECT 8250.0 353100.0 7350.0 362700.0 ; - RECT 22350.0 353100.0 21450.0 362700.0 ; - RECT 22350.0 398100.0 16500.0 399000.0 ; - RECT 22350.0 420900.0 16500.0 421800.0 ; - RECT 21900.0 426450.0 6300.0 427350.0 ; - RECT 4200.0 409500.0 16500.0 410400.0 ; - RECT 4200.0 381300.0 16500.0 382200.0 ; - RECT 28800.0 397500.0 27900.0 410100.0 ; - RECT 28800.0 392850.0 27900.0 393750.0 ; - RECT 28800.0 393300.0 27900.0 397500.0 ; - RECT 28350.0 392850.0 16500.0 393750.0 ; - RECT 36000.0 398250.0 33600.0 399150.0 ; - RECT 33450.0 383550.0 32550.0 384450.0 ; - RECT 28800.0 383550.0 27900.0 384450.0 ; - RECT 33450.0 384000.0 32550.0 395700.0 ; - RECT 33000.0 383550.0 28350.0 384450.0 ; - RECT 28800.0 378900.0 27900.0 384000.0 ; - RECT 28350.0 383550.0 19650.0 384450.0 ; - RECT 19650.0 376050.0 12900.0 376950.0 ; - RECT 28950.0 377700.0 27750.0 378900.0 ; - RECT 28800.0 410100.0 27900.0 413850.0 ; + RECT 21750.0 362100.0 22650.0 352500.0 ; + RECT 20250.0 320100.0 22650.0 321300.0 ; + RECT 11550.0 320100.0 7950.0 321300.0 ; + RECT 11550.0 324900.0 7950.0 326100.0 ; + RECT 10350.0 329700.0 8400.0 330900.0 ; + RECT 22200.0 329700.0 20250.0 330900.0 ; + RECT 11550.0 320100.0 10350.0 321300.0 ; + RECT 11550.0 322500.0 10350.0 323700.0 ; + RECT 11550.0 322500.0 10350.0 323700.0 ; + RECT 11550.0 320100.0 10350.0 321300.0 ; + RECT 11550.0 322500.0 10350.0 323700.0 ; + RECT 11550.0 324900.0 10350.0 326100.0 ; + RECT 11550.0 324900.0 10350.0 326100.0 ; + RECT 11550.0 322500.0 10350.0 323700.0 ; + RECT 11550.0 324900.0 10350.0 326100.0 ; + RECT 11550.0 327300.0 10350.0 328500.0 ; + RECT 11550.0 327300.0 10350.0 328500.0 ; + RECT 11550.0 324900.0 10350.0 326100.0 ; + RECT 20250.0 320100.0 19050.0 321300.0 ; + RECT 20250.0 322500.0 19050.0 323700.0 ; + RECT 20250.0 322500.0 19050.0 323700.0 ; + RECT 20250.0 320100.0 19050.0 321300.0 ; + RECT 20250.0 322500.0 19050.0 323700.0 ; + RECT 20250.0 324900.0 19050.0 326100.0 ; + RECT 20250.0 324900.0 19050.0 326100.0 ; + RECT 20250.0 322500.0 19050.0 323700.0 ; + RECT 20250.0 324900.0 19050.0 326100.0 ; + RECT 20250.0 327300.0 19050.0 328500.0 ; + RECT 20250.0 327300.0 19050.0 328500.0 ; + RECT 20250.0 324900.0 19050.0 326100.0 ; + RECT 10950.0 329700.0 9750.0 330900.0 ; + RECT 20850.0 329700.0 19650.0 330900.0 ; + RECT 18150.0 327300.0 16950.0 326100.0 ; + RECT 16200.0 324900.0 15000.0 323700.0 ; + RECT 14250.0 322500.0 13050.0 321300.0 ; + RECT 11550.0 322500.0 10350.0 323700.0 ; + RECT 11550.0 327300.0 10350.0 328500.0 ; + RECT 20250.0 327300.0 19050.0 328500.0 ; + RECT 14250.0 327300.0 13050.0 328500.0 ; + RECT 14250.0 321300.0 13050.0 322500.0 ; + RECT 16200.0 323700.0 15000.0 324900.0 ; + RECT 18150.0 326100.0 16950.0 327300.0 ; + RECT 14250.0 327300.0 13050.0 328500.0 ; + RECT 8850.0 318300.0 7950.0 333900.0 ; + RECT 22650.0 318300.0 21750.0 333900.0 ; + RECT 10350.0 340500.0 8400.0 341700.0 ; + RECT 22200.0 340500.0 20250.0 341700.0 ; + RECT 20850.0 335700.0 22650.0 336900.0 ; + RECT 11550.0 335700.0 7950.0 336900.0 ; + RECT 20850.0 338400.0 11550.0 339300.0 ; + RECT 11550.0 335700.0 10350.0 336900.0 ; + RECT 11550.0 338100.0 10350.0 339300.0 ; + RECT 11550.0 338100.0 10350.0 339300.0 ; + RECT 11550.0 335700.0 10350.0 336900.0 ; + RECT 20850.0 335700.0 19650.0 336900.0 ; + RECT 20850.0 338100.0 19650.0 339300.0 ; + RECT 20850.0 338100.0 19650.0 339300.0 ; + RECT 20850.0 335700.0 19650.0 336900.0 ; + RECT 10950.0 340500.0 9750.0 341700.0 ; + RECT 20850.0 340500.0 19650.0 341700.0 ; + RECT 16200.0 336300.0 15000.0 337500.0 ; + RECT 16200.0 336300.0 15000.0 337500.0 ; + RECT 16050.0 338850.0 15150.0 339750.0 ; + RECT 8850.0 333900.0 7950.0 343500.0 ; + RECT 22650.0 333900.0 21750.0 343500.0 ; + RECT 10350.0 350100.0 8400.0 351300.0 ; + RECT 22200.0 350100.0 20250.0 351300.0 ; + RECT 20850.0 345300.0 22650.0 346500.0 ; + RECT 11550.0 345300.0 7950.0 346500.0 ; + RECT 20850.0 348000.0 11550.0 348900.0 ; + RECT 11550.0 345300.0 10350.0 346500.0 ; + RECT 11550.0 347700.0 10350.0 348900.0 ; + RECT 11550.0 347700.0 10350.0 348900.0 ; + RECT 11550.0 345300.0 10350.0 346500.0 ; + RECT 20850.0 345300.0 19650.0 346500.0 ; + RECT 20850.0 347700.0 19650.0 348900.0 ; + RECT 20850.0 347700.0 19650.0 348900.0 ; + RECT 20850.0 345300.0 19650.0 346500.0 ; + RECT 10950.0 350100.0 9750.0 351300.0 ; + RECT 20850.0 350100.0 19650.0 351300.0 ; + RECT 16200.0 345900.0 15000.0 347100.0 ; + RECT 16200.0 345900.0 15000.0 347100.0 ; + RECT 16050.0 348450.0 15150.0 349350.0 ; + RECT 8850.0 343500.0 7950.0 353100.0 ; + RECT 22650.0 343500.0 21750.0 353100.0 ; + RECT 10350.0 359700.0 8400.0 360900.0 ; + RECT 22200.0 359700.0 20250.0 360900.0 ; + RECT 20850.0 354900.0 22650.0 356100.0 ; + RECT 11550.0 354900.0 7950.0 356100.0 ; + RECT 20850.0 357600.0 11550.0 358500.0 ; + RECT 11550.0 354900.0 10350.0 356100.0 ; + RECT 11550.0 357300.0 10350.0 358500.0 ; + RECT 11550.0 357300.0 10350.0 358500.0 ; + RECT 11550.0 354900.0 10350.0 356100.0 ; + RECT 20850.0 354900.0 19650.0 356100.0 ; + RECT 20850.0 357300.0 19650.0 358500.0 ; + RECT 20850.0 357300.0 19650.0 358500.0 ; + RECT 20850.0 354900.0 19650.0 356100.0 ; + RECT 10950.0 359700.0 9750.0 360900.0 ; + RECT 20850.0 359700.0 19650.0 360900.0 ; + RECT 16200.0 355500.0 15000.0 356700.0 ; + RECT 16200.0 355500.0 15000.0 356700.0 ; + RECT 16050.0 358050.0 15150.0 358950.0 ; + RECT 8850.0 353100.0 7950.0 362700.0 ; + RECT 22650.0 353100.0 21750.0 362700.0 ; + RECT 22650.0 396600.0 16800.0 397500.0 ; + RECT 22650.0 420000.0 16800.0 420900.0 ; + RECT 22200.0 425550.0 16800.0 426450.0 ; + RECT 4500.0 408300.0 16800.0 409200.0 ; + RECT 4500.0 380700.0 16800.0 381600.0 ; + RECT 29250.0 397500.0 28350.0 410100.0 ; + RECT 29250.0 392550.0 28350.0 393450.0 ; + RECT 29250.0 393000.0 28350.0 397500.0 ; + RECT 28800.0 392550.0 17400.0 393450.0 ; + RECT 36000.0 398250.0 33750.0 399150.0 ; + RECT 33600.0 383550.0 32700.0 384450.0 ; + RECT 29250.0 383550.0 28350.0 384450.0 ; + RECT 33600.0 384000.0 32700.0 395700.0 ; + RECT 33150.0 383550.0 28800.0 384450.0 ; + RECT 29250.0 378900.0 28350.0 384000.0 ; + RECT 28800.0 383550.0 19950.0 384450.0 ; + RECT 19950.0 375450.0 13200.0 376350.0 ; + RECT 29400.0 377700.0 28200.0 378900.0 ; + RECT 29250.0 410100.0 28350.0 413850.0 ; RECT 34050.0 374700.0 36000.0 373500.0 ; - RECT 21900.0 374700.0 24150.0 373500.0 ; - RECT 23250.0 379500.0 21450.0 378300.0 ; + RECT 22200.0 374700.0 24150.0 373500.0 ; + RECT 23550.0 379500.0 21750.0 378300.0 ; RECT 32850.0 379500.0 36450.0 378300.0 ; - RECT 24450.0 376800.0 32850.0 375900.0 ; + RECT 23550.0 376800.0 32850.0 375900.0 ; RECT 32850.0 379500.0 34050.0 378300.0 ; RECT 32850.0 377100.0 34050.0 375900.0 ; RECT 32850.0 377100.0 34050.0 375900.0 ; RECT 32850.0 379500.0 34050.0 378300.0 ; - RECT 23250.0 379500.0 24450.0 378300.0 ; - RECT 23250.0 377100.0 24450.0 375900.0 ; - RECT 23250.0 377100.0 24450.0 375900.0 ; - RECT 23250.0 379500.0 24450.0 378300.0 ; + RECT 23550.0 379500.0 24750.0 378300.0 ; + RECT 23550.0 377100.0 24750.0 375900.0 ; + RECT 23550.0 377100.0 24750.0 375900.0 ; + RECT 23550.0 379500.0 24750.0 378300.0 ; RECT 33450.0 374700.0 34650.0 373500.0 ; RECT 23550.0 374700.0 24750.0 373500.0 ; - RECT 27750.0 378900.0 28950.0 377700.0 ; - RECT 27750.0 378900.0 28950.0 377700.0 ; - RECT 27900.0 376350.0 28800.0 375450.0 ; + RECT 28200.0 378900.0 29400.0 377700.0 ; + RECT 28200.0 378900.0 29400.0 377700.0 ; + RECT 28350.0 376350.0 29250.0 375450.0 ; RECT 35550.0 381300.0 36450.0 371700.0 ; - RECT 21450.0 381300.0 22350.0 371700.0 ; - RECT 32400.0 395700.0 33600.0 396900.0 ; - RECT 32400.0 398100.0 33600.0 399300.0 ; - RECT 32400.0 398100.0 33600.0 399300.0 ; - RECT 32400.0 395700.0 33600.0 396900.0 ; - RECT 21450.0 430650.0 22350.0 431550.0 ; - RECT 49650.0 430650.0 50550.0 431550.0 ; - RECT 21450.0 429300.0 22350.0 431100.0 ; - RECT 21900.0 430650.0 50100.0 431550.0 ; - RECT 49650.0 429300.0 50550.0 431100.0 ; + RECT 21750.0 381300.0 22650.0 371700.0 ; + RECT 32550.0 395700.0 33750.0 396900.0 ; + RECT 32550.0 398100.0 33750.0 399300.0 ; + RECT 32550.0 398100.0 33750.0 399300.0 ; + RECT 32550.0 395700.0 33750.0 396900.0 ; + RECT 21750.0 430650.0 22650.0 431550.0 ; + RECT 49350.0 430650.0 50250.0 431550.0 ; + RECT 21750.0 429300.0 22650.0 431100.0 ; + RECT 22200.0 430650.0 49800.0 431550.0 ; + RECT 49350.0 429300.0 50250.0 431100.0 ; RECT 37950.0 416700.0 36000.0 417900.0 ; - RECT 50100.0 416700.0 47850.0 417900.0 ; - RECT 48750.0 411900.0 50550.0 413100.0 ; + RECT 49800.0 416700.0 47850.0 417900.0 ; + RECT 48450.0 411900.0 50250.0 413100.0 ; RECT 39150.0 411900.0 35550.0 413100.0 ; - RECT 47550.0 414600.0 39150.0 415500.0 ; + RECT 48450.0 414600.0 39150.0 415500.0 ; RECT 39150.0 411900.0 37950.0 413100.0 ; RECT 39150.0 414300.0 37950.0 415500.0 ; RECT 39150.0 414300.0 37950.0 415500.0 ; RECT 39150.0 411900.0 37950.0 413100.0 ; - RECT 48750.0 411900.0 47550.0 413100.0 ; - RECT 48750.0 414300.0 47550.0 415500.0 ; - RECT 48750.0 414300.0 47550.0 415500.0 ; - RECT 48750.0 411900.0 47550.0 413100.0 ; + RECT 48450.0 411900.0 47250.0 413100.0 ; + RECT 48450.0 414300.0 47250.0 415500.0 ; + RECT 48450.0 414300.0 47250.0 415500.0 ; + RECT 48450.0 411900.0 47250.0 413100.0 ; RECT 38550.0 416700.0 37350.0 417900.0 ; RECT 48450.0 416700.0 47250.0 417900.0 ; - RECT 44250.0 412500.0 43050.0 413700.0 ; - RECT 44250.0 412500.0 43050.0 413700.0 ; - RECT 44100.0 415050.0 43200.0 415950.0 ; + RECT 43800.0 412500.0 42600.0 413700.0 ; + RECT 43800.0 412500.0 42600.0 413700.0 ; + RECT 43650.0 415050.0 42750.0 415950.0 ; RECT 36450.0 410100.0 35550.0 419700.0 ; - RECT 50550.0 410100.0 49650.0 419700.0 ; + RECT 50250.0 410100.0 49350.0 419700.0 ; RECT 37950.0 426300.0 36000.0 427500.0 ; - RECT 50100.0 426300.0 47850.0 427500.0 ; - RECT 48750.0 421500.0 50550.0 422700.0 ; + RECT 49800.0 426300.0 47850.0 427500.0 ; + RECT 48450.0 421500.0 50250.0 422700.0 ; RECT 39150.0 421500.0 35550.0 422700.0 ; - RECT 47550.0 424200.0 39150.0 425100.0 ; + RECT 48450.0 424200.0 39150.0 425100.0 ; RECT 39150.0 421500.0 37950.0 422700.0 ; RECT 39150.0 423900.0 37950.0 425100.0 ; RECT 39150.0 423900.0 37950.0 425100.0 ; RECT 39150.0 421500.0 37950.0 422700.0 ; - RECT 48750.0 421500.0 47550.0 422700.0 ; - RECT 48750.0 423900.0 47550.0 425100.0 ; - RECT 48750.0 423900.0 47550.0 425100.0 ; - RECT 48750.0 421500.0 47550.0 422700.0 ; + RECT 48450.0 421500.0 47250.0 422700.0 ; + RECT 48450.0 423900.0 47250.0 425100.0 ; + RECT 48450.0 423900.0 47250.0 425100.0 ; + RECT 48450.0 421500.0 47250.0 422700.0 ; RECT 38550.0 426300.0 37350.0 427500.0 ; RECT 48450.0 426300.0 47250.0 427500.0 ; - RECT 44250.0 422100.0 43050.0 423300.0 ; - RECT 44250.0 422100.0 43050.0 423300.0 ; - RECT 44100.0 424650.0 43200.0 425550.0 ; + RECT 43800.0 422100.0 42600.0 423300.0 ; + RECT 43800.0 422100.0 42600.0 423300.0 ; + RECT 43650.0 424650.0 42750.0 425550.0 ; RECT 36450.0 419700.0 35550.0 429300.0 ; - RECT 50550.0 419700.0 49650.0 429300.0 ; - RECT 43050.0 422100.0 44250.0 423300.0 ; + RECT 50250.0 419700.0 49350.0 429300.0 ; + RECT 42600.0 422100.0 43800.0 423300.0 ; RECT 34050.0 422700.0 36000.0 421500.0 ; - RECT 21900.0 422700.0 24150.0 421500.0 ; - RECT 23250.0 427500.0 21450.0 426300.0 ; + RECT 22200.0 422700.0 24150.0 421500.0 ; + RECT 23550.0 427500.0 21750.0 426300.0 ; RECT 32850.0 427500.0 36450.0 426300.0 ; - RECT 24450.0 424800.0 32850.0 423900.0 ; + RECT 23550.0 424800.0 32850.0 423900.0 ; RECT 32850.0 427500.0 34050.0 426300.0 ; RECT 32850.0 425100.0 34050.0 423900.0 ; RECT 32850.0 425100.0 34050.0 423900.0 ; RECT 32850.0 427500.0 34050.0 426300.0 ; - RECT 23250.0 427500.0 24450.0 426300.0 ; - RECT 23250.0 425100.0 24450.0 423900.0 ; - RECT 23250.0 425100.0 24450.0 423900.0 ; - RECT 23250.0 427500.0 24450.0 426300.0 ; + RECT 23550.0 427500.0 24750.0 426300.0 ; + RECT 23550.0 425100.0 24750.0 423900.0 ; + RECT 23550.0 425100.0 24750.0 423900.0 ; + RECT 23550.0 427500.0 24750.0 426300.0 ; RECT 33450.0 422700.0 34650.0 421500.0 ; RECT 23550.0 422700.0 24750.0 421500.0 ; - RECT 27750.0 426900.0 28950.0 425700.0 ; - RECT 27750.0 426900.0 28950.0 425700.0 ; - RECT 27900.0 424350.0 28800.0 423450.0 ; + RECT 28200.0 426900.0 29400.0 425700.0 ; + RECT 28200.0 426900.0 29400.0 425700.0 ; + RECT 28350.0 424350.0 29250.0 423450.0 ; RECT 35550.0 429300.0 36450.0 419700.0 ; - RECT 21450.0 429300.0 22350.0 419700.0 ; - RECT 27750.0 425700.0 28950.0 426900.0 ; + RECT 21750.0 429300.0 22650.0 419700.0 ; + RECT 28200.0 425700.0 29400.0 426900.0 ; RECT 34050.0 413100.0 36000.0 411900.0 ; - RECT 21900.0 413100.0 24150.0 411900.0 ; - RECT 23250.0 417900.0 21450.0 416700.0 ; + RECT 22200.0 413100.0 24150.0 411900.0 ; + RECT 23550.0 417900.0 21750.0 416700.0 ; RECT 32850.0 417900.0 36450.0 416700.0 ; - RECT 24450.0 415200.0 32850.0 414300.0 ; + RECT 23550.0 415200.0 32850.0 414300.0 ; RECT 32850.0 417900.0 34050.0 416700.0 ; RECT 32850.0 415500.0 34050.0 414300.0 ; RECT 32850.0 415500.0 34050.0 414300.0 ; RECT 32850.0 417900.0 34050.0 416700.0 ; - RECT 23250.0 417900.0 24450.0 416700.0 ; - RECT 23250.0 415500.0 24450.0 414300.0 ; - RECT 23250.0 415500.0 24450.0 414300.0 ; - RECT 23250.0 417900.0 24450.0 416700.0 ; + RECT 23550.0 417900.0 24750.0 416700.0 ; + RECT 23550.0 415500.0 24750.0 414300.0 ; + RECT 23550.0 415500.0 24750.0 414300.0 ; + RECT 23550.0 417900.0 24750.0 416700.0 ; RECT 33450.0 413100.0 34650.0 411900.0 ; RECT 23550.0 413100.0 24750.0 411900.0 ; - RECT 27750.0 417300.0 28950.0 416100.0 ; - RECT 27750.0 417300.0 28950.0 416100.0 ; - RECT 27900.0 414750.0 28800.0 413850.0 ; + RECT 28200.0 417300.0 29400.0 416100.0 ; + RECT 28200.0 417300.0 29400.0 416100.0 ; + RECT 28350.0 414750.0 29250.0 413850.0 ; RECT 35550.0 419700.0 36450.0 410100.0 ; - RECT 21450.0 419700.0 22350.0 410100.0 ; - RECT 27750.0 416100.0 28950.0 417300.0 ; - RECT 43050.0 414900.0 44250.0 416100.0 ; - RECT 43050.0 424500.0 44250.0 425700.0 ; - RECT 27750.0 423300.0 28950.0 424500.0 ; - RECT 43050.0 412500.0 44250.0 413700.0 ; - RECT 27900.0 410100.0 28800.0 413850.0 ; + RECT 21750.0 419700.0 22650.0 410100.0 ; + RECT 28200.0 416100.0 29400.0 417300.0 ; + RECT 42600.0 414900.0 43800.0 416100.0 ; + RECT 42600.0 424500.0 43800.0 425700.0 ; + RECT 28200.0 423300.0 29400.0 424500.0 ; + RECT 42600.0 412500.0 43800.0 413700.0 ; + RECT 28350.0 410100.0 29250.0 413850.0 ; RECT 35550.0 410100.0 36450.0 429300.0 ; - RECT 21450.0 410100.0 22350.0 429300.0 ; - RECT 49650.0 410100.0 50550.0 429300.0 ; - RECT 16500.0 396000.0 6300.0 381300.0 ; - RECT 16500.0 396000.0 6300.0 410100.0 ; - RECT 16500.0 424200.0 6300.0 410100.0 ; - RECT 17100.0 398100.0 5700.0 399300.0 ; - RECT 17100.0 420900.0 5700.0 422100.0 ; - RECT 17100.0 409500.0 5700.0 410400.0 ; - RECT 22350.0 398100.0 21150.0 399300.0 ; - RECT 22350.0 420900.0 21150.0 422100.0 ; - RECT 22350.0 410100.0 21150.0 411300.0 ; - RECT 22350.0 370500.0 21150.0 371700.0 ; - RECT 21300.0 426300.0 22500.0 427500.0 ; - RECT 5700.0 426300.0 6900.0 427500.0 ; - RECT 28950.0 396900.0 27750.0 398100.0 ; - RECT 19050.0 383400.0 20250.0 384600.0 ; - RECT 19050.0 375900.0 20250.0 377100.0 ; - RECT 12300.0 375900.0 13500.0 377100.0 ; - RECT 44250.0 362100.0 43350.0 412500.0 ; - RECT 28800.0 362100.0 27900.0 375450.0 ; - RECT 4200.0 362100.0 3300.0 424650.0 ; + RECT 21750.0 410100.0 22650.0 429300.0 ; + RECT 49350.0 410100.0 50250.0 429300.0 ; + RECT 16800.0 395100.0 6600.0 381300.0 ; + RECT 16800.0 395100.0 6600.0 408900.0 ; + RECT 16800.0 422700.0 6600.0 408900.0 ; + RECT 17400.0 396600.0 6000.0 397800.0 ; + RECT 17400.0 420000.0 6000.0 421200.0 ; + RECT 17400.0 408300.0 6000.0 409200.0 ; + RECT 22650.0 396600.0 21450.0 397800.0 ; + RECT 22650.0 420000.0 21450.0 421200.0 ; + RECT 22650.0 410100.0 21450.0 411300.0 ; + RECT 22650.0 370500.0 21450.0 371700.0 ; + RECT 21600.0 425400.0 22800.0 426600.0 ; + RECT 16200.0 425400.0 17400.0 426600.0 ; + RECT 29400.0 396900.0 28200.0 398100.0 ; + RECT 19350.0 383400.0 20550.0 384600.0 ; + RECT 19350.0 375300.0 20550.0 376500.0 ; + RECT 12600.0 375300.0 13800.0 376500.0 ; + RECT 43800.0 362100.0 42900.0 412500.0 ; + RECT 29250.0 362100.0 28350.0 375450.0 ; + RECT 4500.0 362100.0 3600.0 423150.0 ; RECT 36450.0 362100.0 35550.0 410100.0 ; - RECT 22350.0 362100.0 21450.0 381300.0 ; - RECT 50550.0 362100.0 49650.0 410100.0 ; - RECT 44550.0 285450.0 43350.0 284250.0 ; - RECT 44550.0 244650.0 43350.0 243450.0 ; + RECT 22650.0 362100.0 21750.0 381300.0 ; + RECT 50250.0 362100.0 49350.0 410100.0 ; + RECT 43950.0 285450.0 42750.0 284250.0 ; + RECT 43950.0 244500.0 42750.0 243300.0 ; RECT 33900.0 205650.0 32700.0 204450.0 ; - RECT 29550.0 285450.0 28350.0 284250.0 ; - RECT 26850.0 290850.0 25650.0 289650.0 ; - RECT 30300.0 328200.0 29100.0 327000.0 ; - RECT 27600.0 331200.0 26400.0 330000.0 ; - RECT 41400.0 304350.0 40200.0 303150.0 ; - RECT 43350.0 301650.0 42150.0 300450.0 ; - RECT 45300.0 293550.0 44100.0 292350.0 ; - RECT 13200.0 304350.0 12000.0 303150.0 ; - RECT 15150.0 293550.0 13950.0 292350.0 ; - RECT 17100.0 296250.0 15900.0 295050.0 ; - RECT 29550.0 322500.0 28350.0 323700.0 ; - RECT 30300.0 339600.0 29100.0 340800.0 ; - RECT 16050.0 362100.0 14850.0 363300.0 ; - RECT 28950.0 342300.0 27750.0 343500.0 ; - RECT 50700.0 288150.0 49500.0 286950.0 ; + RECT 29850.0 285450.0 28650.0 284250.0 ; + RECT 27150.0 290850.0 25950.0 289650.0 ; + RECT 30600.0 328200.0 29400.0 327000.0 ; + RECT 27900.0 331200.0 26700.0 330000.0 ; + RECT 41850.0 304350.0 40650.0 303150.0 ; + RECT 43800.0 301650.0 42600.0 300450.0 ; + RECT 45750.0 293550.0 44550.0 292350.0 ; + RECT 14250.0 304350.0 13050.0 303150.0 ; + RECT 16200.0 293550.0 15000.0 292350.0 ; + RECT 18150.0 296250.0 16950.0 295050.0 ; + RECT 29850.0 322500.0 28650.0 323700.0 ; + RECT 30600.0 339600.0 29400.0 340800.0 ; + RECT 16200.0 362100.0 15000.0 363300.0 ; + RECT 29400.0 342300.0 28200.0 343500.0 ; + RECT 50400.0 288150.0 49200.0 286950.0 ; RECT 36600.0 298950.0 35400.0 297750.0 ; - RECT 22500.0 288150.0 21300.0 286950.0 ; - RECT 8400.0 298950.0 7200.0 297750.0 ; - RECT 44250.0 202200.0 43050.0 205800.0 ; + RECT 22800.0 288150.0 21600.0 286950.0 ; + RECT 9000.0 298950.0 7800.0 297750.0 ; + RECT 43800.0 202200.0 42600.0 205800.0 ; RECT 36450.0 202200.0 35550.0 203100.0 ; - RECT 50550.0 202200.0 49650.0 203100.0 ; - RECT 55950.0 297750.0 54750.0 298950.0 ; + RECT 50250.0 202200.0 49350.0 203100.0 ; + RECT 55650.0 297750.0 54450.0 298950.0 ; LAYER metal2 ; - RECT 169050.0 340200.0 169950.0 342900.0 ; - RECT 166350.0 360000.0 167250.0 362700.0 ; - RECT 160950.0 320400.0 161850.0 323100.0 ; - RECT 158250.0 337500.0 159150.0 340200.0 ; - RECT 163650.0 301050.0 164550.0 303750.0 ; - RECT 155550.0 282150.0 156450.0 284850.0 ; - RECT 50100.0 297900.0 55350.0 298800.0 ; - RECT 150150.0 284850.0 151050.0 287550.0 ; - RECT 155550.0 0.0 156450.0 444600.0 ; - RECT 158250.0 0.0 159150.0 444600.0 ; - RECT 160950.0 0.0 161850.0 444600.0 ; - RECT 163650.0 0.0 164550.0 444600.0 ; - RECT 166350.0 0.0 167250.0 444600.0 ; - RECT 169050.0 0.0 169950.0 444600.0 ; - RECT 134850.0 34800.0 135750.0 199200.0 ; - RECT 137550.0 34800.0 138450.0 199200.0 ; - RECT 140250.0 34800.0 141150.0 199200.0 ; - RECT 142950.0 34800.0 143850.0 199200.0 ; - RECT 180450.0 5850.0 181350.0 6750.0 ; - RECT 177300.0 5850.0 180900.0 6750.0 ; - RECT 180450.0 6300.0 181350.0 8100.0 ; - RECT 190650.0 5850.0 191550.0 6750.0 ; - RECT 187500.0 5850.0 191100.0 6750.0 ; - RECT 190650.0 6300.0 191550.0 8100.0 ; - RECT 102900.0 424800.0 103800.0 426900.0 ; - RECT 175800.0 199200.0 186000.0 213300.0 ; - RECT 175800.0 227400.0 186000.0 213300.0 ; - RECT 175800.0 227400.0 186000.0 241500.0 ; - RECT 175800.0 255600.0 186000.0 241500.0 ; - RECT 175800.0 255600.0 186000.0 269700.0 ; - RECT 175800.0 283800.0 186000.0 269700.0 ; - RECT 175800.0 283800.0 186000.0 297900.0 ; - RECT 175800.0 312000.0 186000.0 297900.0 ; - RECT 175800.0 312000.0 186000.0 326100.0 ; - RECT 175800.0 340200.0 186000.0 326100.0 ; - RECT 175800.0 340200.0 186000.0 354300.0 ; - RECT 175800.0 368400.0 186000.0 354300.0 ; - RECT 175800.0 368400.0 186000.0 382500.0 ; - RECT 175800.0 396600.0 186000.0 382500.0 ; - RECT 175800.0 396600.0 186000.0 410700.0 ; - RECT 175800.0 424800.0 186000.0 410700.0 ; - RECT 186000.0 199200.0 196200.0 213300.0 ; - RECT 186000.0 227400.0 196200.0 213300.0 ; - RECT 186000.0 227400.0 196200.0 241500.0 ; - RECT 186000.0 255600.0 196200.0 241500.0 ; - RECT 186000.0 255600.0 196200.0 269700.0 ; - RECT 186000.0 283800.0 196200.0 269700.0 ; - RECT 186000.0 283800.0 196200.0 297900.0 ; - RECT 186000.0 312000.0 196200.0 297900.0 ; - RECT 186000.0 312000.0 196200.0 326100.0 ; - RECT 186000.0 340200.0 196200.0 326100.0 ; - RECT 186000.0 340200.0 196200.0 354300.0 ; - RECT 186000.0 368400.0 196200.0 354300.0 ; - RECT 186000.0 368400.0 196200.0 382500.0 ; - RECT 186000.0 396600.0 196200.0 382500.0 ; - RECT 186000.0 396600.0 196200.0 410700.0 ; - RECT 186000.0 424800.0 196200.0 410700.0 ; - RECT 178800.0 199200.0 180000.0 424800.0 ; - RECT 181800.0 199200.0 183000.0 424800.0 ; - RECT 189000.0 199200.0 190200.0 424800.0 ; - RECT 192000.0 199200.0 193200.0 424800.0 ; - RECT 185400.0 199200.0 186600.0 424800.0 ; - RECT 178800.0 427200.0 180000.0 428400.0 ; - RECT 181200.0 427200.0 182850.0 428400.0 ; - RECT 178800.0 436200.0 180000.0 437400.0 ; - RECT 181950.0 436200.0 184800.0 437400.0 ; - RECT 178800.0 427200.0 180000.0 428400.0 ; - RECT 181200.0 427200.0 182400.0 428400.0 ; - RECT 178800.0 436200.0 180000.0 437400.0 ; - RECT 183600.0 436200.0 184800.0 437400.0 ; - RECT 178950.0 424800.0 179850.0 444600.0 ; - RECT 181950.0 424800.0 182850.0 444600.0 ; - RECT 189000.0 427200.0 190200.0 428400.0 ; - RECT 191400.0 427200.0 193050.0 428400.0 ; - RECT 189000.0 436200.0 190200.0 437400.0 ; - RECT 192150.0 436200.0 195000.0 437400.0 ; - RECT 189000.0 427200.0 190200.0 428400.0 ; - RECT 191400.0 427200.0 192600.0 428400.0 ; - RECT 189000.0 436200.0 190200.0 437400.0 ; - RECT 193800.0 436200.0 195000.0 437400.0 ; - RECT 189150.0 424800.0 190050.0 444600.0 ; - RECT 192150.0 424800.0 193050.0 444600.0 ; - RECT 178950.0 424800.0 179850.0 444600.0 ; - RECT 181950.0 424800.0 182850.0 444600.0 ; - RECT 189150.0 424800.0 190050.0 444600.0 ; - RECT 192150.0 424800.0 193050.0 444600.0 ; - RECT 175800.0 150300.0 186000.0 199200.0 ; - RECT 186000.0 150300.0 196200.0 199200.0 ; - RECT 178800.0 150300.0 180000.0 163500.0 ; - RECT 181800.0 150300.0 183000.0 163500.0 ; - RECT 189000.0 150300.0 190200.0 163500.0 ; - RECT 192000.0 150300.0 193200.0 163500.0 ; - RECT 175800.0 90000.0 186000.0 150300.0 ; - RECT 186000.0 90000.0 196200.0 150300.0 ; - RECT 180300.0 90000.0 181500.0 92700.0 ; - RECT 190500.0 90000.0 191700.0 92700.0 ; - RECT 178800.0 148200.0 180000.0 150300.0 ; - RECT 181800.0 142800.0 183000.0 150300.0 ; - RECT 189000.0 148200.0 190200.0 150300.0 ; - RECT 192000.0 142800.0 193200.0 150300.0 ; - RECT 175800.0 30000.0 186000.0 90000.0 ; - RECT 196200.0 30000.0 186000.0 90000.0 ; - RECT 180300.0 30000.0 181500.0 31200.0 ; - RECT 190500.0 30000.0 191700.0 31200.0 ; - RECT 180300.0 88800.0 181500.0 90000.0 ; - RECT 177600.0 85500.0 178800.0 90000.0 ; - RECT 190500.0 88800.0 191700.0 90000.0 ; - RECT 193200.0 85500.0 194400.0 90000.0 ; - RECT 185400.0 30000.0 186600.0 90000.0 ; - RECT 175800.0 30000.0 186000.0 8100.0 ; - RECT 186000.0 30000.0 196200.0 8100.0 ; - RECT 180300.0 15000.0 181500.0 8100.0 ; - RECT 190500.0 15000.0 191700.0 8100.0 ; - RECT 180300.0 30000.0 181500.0 28500.0 ; - RECT 190500.0 30000.0 191700.0 28500.0 ; - RECT 59400.0 86400.0 60300.0 424800.0 ; - RECT 61500.0 86400.0 62400.0 424800.0 ; - RECT 63600.0 86400.0 64500.0 424800.0 ; - RECT 65700.0 86400.0 66600.0 424800.0 ; - RECT 67800.0 86400.0 68700.0 424800.0 ; - RECT 69900.0 86400.0 70800.0 424800.0 ; - RECT 72000.0 86400.0 72900.0 424800.0 ; - RECT 74100.0 86400.0 75000.0 424800.0 ; - RECT 106200.0 86400.0 105300.0 141000.0 ; - RECT 103200.0 86400.0 102300.0 141000.0 ; - RECT 112200.0 86400.0 111300.0 141000.0 ; - RECT 109200.0 86400.0 108300.0 141000.0 ; - RECT 95850.0 93750.0 94950.0 94650.0 ; - RECT 93450.0 93750.0 92550.0 94650.0 ; - RECT 95850.0 94200.0 94950.0 97350.0 ; - RECT 95400.0 93750.0 93000.0 94650.0 ; - RECT 93450.0 89550.0 92550.0 94200.0 ; - RECT 96000.0 97350.0 94800.0 98550.0 ; - RECT 93600.0 88350.0 92400.0 89550.0 ; - RECT 92400.0 93600.0 93600.0 94800.0 ; - RECT 95850.0 107250.0 94950.0 106350.0 ; - RECT 93450.0 107250.0 92550.0 106350.0 ; - RECT 95850.0 106800.0 94950.0 103650.0 ; - RECT 95400.0 107250.0 93000.0 106350.0 ; - RECT 93450.0 111450.0 92550.0 106800.0 ; - RECT 96000.0 103650.0 94800.0 102450.0 ; - RECT 93600.0 112650.0 92400.0 111450.0 ; - RECT 92400.0 107400.0 93600.0 106200.0 ; - RECT 95850.0 121950.0 94950.0 122850.0 ; - RECT 93450.0 121950.0 92550.0 122850.0 ; - RECT 95850.0 122400.0 94950.0 125550.0 ; - RECT 95400.0 121950.0 93000.0 122850.0 ; - RECT 93450.0 117750.0 92550.0 122400.0 ; - RECT 96000.0 125550.0 94800.0 126750.0 ; - RECT 93600.0 116550.0 92400.0 117750.0 ; - RECT 92400.0 121800.0 93600.0 123000.0 ; - RECT 95850.0 135450.0 94950.0 134550.0 ; - RECT 93450.0 135450.0 92550.0 134550.0 ; - RECT 95850.0 135000.0 94950.0 131850.0 ; - RECT 95400.0 135450.0 93000.0 134550.0 ; - RECT 93450.0 139650.0 92550.0 135000.0 ; - RECT 96000.0 131850.0 94800.0 130650.0 ; - RECT 93600.0 140850.0 92400.0 139650.0 ; - RECT 92400.0 135600.0 93600.0 134400.0 ; - RECT 111150.0 97200.0 112350.0 98400.0 ; - RECT 129750.0 92250.0 130950.0 93450.0 ; - RECT 108150.0 111300.0 109350.0 112500.0 ; - RECT 126750.0 107550.0 127950.0 108750.0 ; - RECT 129750.0 116100.0 130950.0 117300.0 ; - RECT 105150.0 116100.0 106350.0 117300.0 ; - RECT 126750.0 130200.0 127950.0 131400.0 ; - RECT 102150.0 130200.0 103350.0 131400.0 ; - RECT 111150.0 93600.0 112350.0 94800.0 ; - RECT 108150.0 90900.0 109350.0 92100.0 ; - RECT 105150.0 106200.0 106350.0 107400.0 ; - RECT 108150.0 108900.0 109350.0 110100.0 ; - RECT 111150.0 121800.0 112350.0 123000.0 ; - RECT 102150.0 119100.0 103350.0 120300.0 ; - RECT 105150.0 134400.0 106350.0 135600.0 ; - RECT 102150.0 137100.0 103350.0 138300.0 ; - RECT 130800.0 86400.0 129900.0 141000.0 ; - RECT 127800.0 86400.0 126900.0 141000.0 ; - RECT 106200.0 142800.0 105300.0 197400.0 ; - RECT 103200.0 142800.0 102300.0 197400.0 ; - RECT 112200.0 142800.0 111300.0 197400.0 ; - RECT 109200.0 142800.0 108300.0 197400.0 ; - RECT 95850.0 150150.0 94950.0 151050.0 ; - RECT 93450.0 150150.0 92550.0 151050.0 ; - RECT 95850.0 150600.0 94950.0 153750.0 ; - RECT 95400.0 150150.0 93000.0 151050.0 ; - RECT 93450.0 145950.0 92550.0 150600.0 ; - RECT 96000.0 153750.0 94800.0 154950.0 ; - RECT 93600.0 144750.0 92400.0 145950.0 ; - RECT 92400.0 150000.0 93600.0 151200.0 ; - RECT 95850.0 163650.0 94950.0 162750.0 ; - RECT 93450.0 163650.0 92550.0 162750.0 ; - RECT 95850.0 163200.0 94950.0 160050.0 ; - RECT 95400.0 163650.0 93000.0 162750.0 ; - RECT 93450.0 167850.0 92550.0 163200.0 ; - RECT 96000.0 160050.0 94800.0 158850.0 ; - RECT 93600.0 169050.0 92400.0 167850.0 ; - RECT 92400.0 163800.0 93600.0 162600.0 ; - RECT 95850.0 178350.0 94950.0 179250.0 ; - RECT 93450.0 178350.0 92550.0 179250.0 ; - RECT 95850.0 178800.0 94950.0 181950.0 ; - RECT 95400.0 178350.0 93000.0 179250.0 ; - RECT 93450.0 174150.0 92550.0 178800.0 ; - RECT 96000.0 181950.0 94800.0 183150.0 ; - RECT 93600.0 172950.0 92400.0 174150.0 ; - RECT 92400.0 178200.0 93600.0 179400.0 ; - RECT 95850.0 191850.0 94950.0 190950.0 ; - RECT 93450.0 191850.0 92550.0 190950.0 ; - RECT 95850.0 191400.0 94950.0 188250.0 ; - RECT 95400.0 191850.0 93000.0 190950.0 ; - RECT 93450.0 196050.0 92550.0 191400.0 ; - RECT 96000.0 188250.0 94800.0 187050.0 ; - RECT 93600.0 197250.0 92400.0 196050.0 ; - RECT 92400.0 192000.0 93600.0 190800.0 ; - RECT 111150.0 153600.0 112350.0 154800.0 ; - RECT 129750.0 148650.0 130950.0 149850.0 ; - RECT 108150.0 167700.0 109350.0 168900.0 ; - RECT 126750.0 163950.0 127950.0 165150.0 ; - RECT 129750.0 172500.0 130950.0 173700.0 ; - RECT 105150.0 172500.0 106350.0 173700.0 ; - RECT 126750.0 186600.0 127950.0 187800.0 ; - RECT 102150.0 186600.0 103350.0 187800.0 ; - RECT 111150.0 150000.0 112350.0 151200.0 ; - RECT 108150.0 147300.0 109350.0 148500.0 ; - RECT 105150.0 162600.0 106350.0 163800.0 ; - RECT 108150.0 165300.0 109350.0 166500.0 ; - RECT 111150.0 178200.0 112350.0 179400.0 ; - RECT 102150.0 175500.0 103350.0 176700.0 ; - RECT 105150.0 190800.0 106350.0 192000.0 ; - RECT 102150.0 193500.0 103350.0 194700.0 ; - RECT 130800.0 142800.0 129900.0 197400.0 ; - RECT 127800.0 142800.0 126900.0 197400.0 ; - RECT 80550.0 206550.0 81450.0 207450.0 ; - RECT 82950.0 206550.0 83850.0 207450.0 ; - RECT 80550.0 207000.0 81450.0 210150.0 ; - RECT 81000.0 206550.0 83400.0 207450.0 ; - RECT 82950.0 202350.0 83850.0 207000.0 ; - RECT 80400.0 210150.0 81600.0 211350.0 ; - RECT 82800.0 201150.0 84000.0 202350.0 ; - RECT 84000.0 206400.0 82800.0 207600.0 ; - RECT 80550.0 220050.0 81450.0 219150.0 ; - RECT 82950.0 220050.0 83850.0 219150.0 ; - RECT 80550.0 219600.0 81450.0 216450.0 ; - RECT 81000.0 220050.0 83400.0 219150.0 ; - RECT 82950.0 224250.0 83850.0 219600.0 ; - RECT 80400.0 216450.0 81600.0 215250.0 ; - RECT 82800.0 225450.0 84000.0 224250.0 ; - RECT 84000.0 220200.0 82800.0 219000.0 ; - RECT 80550.0 234750.0 81450.0 235650.0 ; - RECT 82950.0 234750.0 83850.0 235650.0 ; - RECT 80550.0 235200.0 81450.0 238350.0 ; - RECT 81000.0 234750.0 83400.0 235650.0 ; - RECT 82950.0 230550.0 83850.0 235200.0 ; - RECT 80400.0 238350.0 81600.0 239550.0 ; - RECT 82800.0 229350.0 84000.0 230550.0 ; - RECT 84000.0 234600.0 82800.0 235800.0 ; - RECT 80550.0 248250.0 81450.0 247350.0 ; - RECT 82950.0 248250.0 83850.0 247350.0 ; - RECT 80550.0 247800.0 81450.0 244650.0 ; - RECT 81000.0 248250.0 83400.0 247350.0 ; - RECT 82950.0 252450.0 83850.0 247800.0 ; - RECT 80400.0 244650.0 81600.0 243450.0 ; - RECT 82800.0 253650.0 84000.0 252450.0 ; - RECT 84000.0 248400.0 82800.0 247200.0 ; - RECT 80550.0 262950.0 81450.0 263850.0 ; - RECT 82950.0 262950.0 83850.0 263850.0 ; - RECT 80550.0 263400.0 81450.0 266550.0 ; - RECT 81000.0 262950.0 83400.0 263850.0 ; - RECT 82950.0 258750.0 83850.0 263400.0 ; - RECT 80400.0 266550.0 81600.0 267750.0 ; - RECT 82800.0 257550.0 84000.0 258750.0 ; - RECT 84000.0 262800.0 82800.0 264000.0 ; - RECT 80550.0 276450.0 81450.0 275550.0 ; - RECT 82950.0 276450.0 83850.0 275550.0 ; - RECT 80550.0 276000.0 81450.0 272850.0 ; - RECT 81000.0 276450.0 83400.0 275550.0 ; - RECT 82950.0 280650.0 83850.0 276000.0 ; - RECT 80400.0 272850.0 81600.0 271650.0 ; - RECT 82800.0 281850.0 84000.0 280650.0 ; - RECT 84000.0 276600.0 82800.0 275400.0 ; - RECT 80550.0 291150.0 81450.0 292050.0 ; - RECT 82950.0 291150.0 83850.0 292050.0 ; - RECT 80550.0 291600.0 81450.0 294750.0 ; - RECT 81000.0 291150.0 83400.0 292050.0 ; - RECT 82950.0 286950.0 83850.0 291600.0 ; - RECT 80400.0 294750.0 81600.0 295950.0 ; - RECT 82800.0 285750.0 84000.0 286950.0 ; - RECT 84000.0 291000.0 82800.0 292200.0 ; - RECT 80550.0 304650.0 81450.0 303750.0 ; - RECT 82950.0 304650.0 83850.0 303750.0 ; - RECT 80550.0 304200.0 81450.0 301050.0 ; - RECT 81000.0 304650.0 83400.0 303750.0 ; - RECT 82950.0 308850.0 83850.0 304200.0 ; - RECT 80400.0 301050.0 81600.0 299850.0 ; - RECT 82800.0 310050.0 84000.0 308850.0 ; - RECT 84000.0 304800.0 82800.0 303600.0 ; - RECT 80550.0 319350.0 81450.0 320250.0 ; - RECT 82950.0 319350.0 83850.0 320250.0 ; - RECT 80550.0 319800.0 81450.0 322950.0 ; - RECT 81000.0 319350.0 83400.0 320250.0 ; - RECT 82950.0 315150.0 83850.0 319800.0 ; - RECT 80400.0 322950.0 81600.0 324150.0 ; - RECT 82800.0 313950.0 84000.0 315150.0 ; - RECT 84000.0 319200.0 82800.0 320400.0 ; - RECT 80550.0 332850.0 81450.0 331950.0 ; - RECT 82950.0 332850.0 83850.0 331950.0 ; - RECT 80550.0 332400.0 81450.0 329250.0 ; - RECT 81000.0 332850.0 83400.0 331950.0 ; - RECT 82950.0 337050.0 83850.0 332400.0 ; - RECT 80400.0 329250.0 81600.0 328050.0 ; - RECT 82800.0 338250.0 84000.0 337050.0 ; - RECT 84000.0 333000.0 82800.0 331800.0 ; - RECT 80550.0 347550.0 81450.0 348450.0 ; - RECT 82950.0 347550.0 83850.0 348450.0 ; - RECT 80550.0 348000.0 81450.0 351150.0 ; - RECT 81000.0 347550.0 83400.0 348450.0 ; - RECT 82950.0 343350.0 83850.0 348000.0 ; - RECT 80400.0 351150.0 81600.0 352350.0 ; - RECT 82800.0 342150.0 84000.0 343350.0 ; - RECT 84000.0 347400.0 82800.0 348600.0 ; - RECT 80550.0 361050.0 81450.0 360150.0 ; - RECT 82950.0 361050.0 83850.0 360150.0 ; - RECT 80550.0 360600.0 81450.0 357450.0 ; - RECT 81000.0 361050.0 83400.0 360150.0 ; - RECT 82950.0 365250.0 83850.0 360600.0 ; - RECT 80400.0 357450.0 81600.0 356250.0 ; - RECT 82800.0 366450.0 84000.0 365250.0 ; - RECT 84000.0 361200.0 82800.0 360000.0 ; - RECT 80550.0 375750.0 81450.0 376650.0 ; - RECT 82950.0 375750.0 83850.0 376650.0 ; - RECT 80550.0 376200.0 81450.0 379350.0 ; - RECT 81000.0 375750.0 83400.0 376650.0 ; - RECT 82950.0 371550.0 83850.0 376200.0 ; - RECT 80400.0 379350.0 81600.0 380550.0 ; - RECT 82800.0 370350.0 84000.0 371550.0 ; - RECT 84000.0 375600.0 82800.0 376800.0 ; - RECT 80550.0 389250.0 81450.0 388350.0 ; - RECT 82950.0 389250.0 83850.0 388350.0 ; - RECT 80550.0 388800.0 81450.0 385650.0 ; - RECT 81000.0 389250.0 83400.0 388350.0 ; - RECT 82950.0 393450.0 83850.0 388800.0 ; - RECT 80400.0 385650.0 81600.0 384450.0 ; - RECT 82800.0 394650.0 84000.0 393450.0 ; - RECT 84000.0 389400.0 82800.0 388200.0 ; - RECT 80550.0 403950.0 81450.0 404850.0 ; - RECT 82950.0 403950.0 83850.0 404850.0 ; - RECT 80550.0 404400.0 81450.0 407550.0 ; - RECT 81000.0 403950.0 83400.0 404850.0 ; - RECT 82950.0 399750.0 83850.0 404400.0 ; - RECT 80400.0 407550.0 81600.0 408750.0 ; - RECT 82800.0 398550.0 84000.0 399750.0 ; - RECT 84000.0 403800.0 82800.0 405000.0 ; - RECT 80550.0 417450.0 81450.0 416550.0 ; - RECT 82950.0 417450.0 83850.0 416550.0 ; - RECT 80550.0 417000.0 81450.0 413850.0 ; - RECT 81000.0 417450.0 83400.0 416550.0 ; - RECT 82950.0 421650.0 83850.0 417000.0 ; - RECT 80400.0 413850.0 81600.0 412650.0 ; - RECT 82800.0 422850.0 84000.0 421650.0 ; - RECT 84000.0 417600.0 82800.0 416400.0 ; - RECT 60450.0 92250.0 59250.0 93450.0 ; - RECT 62550.0 107550.0 61350.0 108750.0 ; - RECT 64650.0 120450.0 63450.0 121650.0 ; - RECT 66750.0 135750.0 65550.0 136950.0 ; - RECT 68850.0 148650.0 67650.0 149850.0 ; - RECT 70950.0 163950.0 69750.0 165150.0 ; - RECT 73050.0 176850.0 71850.0 178050.0 ; - RECT 75150.0 192150.0 73950.0 193350.0 ; - RECT 60450.0 206400.0 59250.0 207600.0 ; - RECT 68850.0 203700.0 67650.0 204900.0 ; - RECT 60450.0 219000.0 59250.0 220200.0 ; - RECT 70950.0 221700.0 69750.0 222900.0 ; - RECT 60450.0 234600.0 59250.0 235800.0 ; - RECT 73050.0 231900.0 71850.0 233100.0 ; - RECT 60450.0 247200.0 59250.0 248400.0 ; - RECT 75150.0 249900.0 73950.0 251100.0 ; - RECT 62550.0 262800.0 61350.0 264000.0 ; - RECT 68850.0 260100.0 67650.0 261300.0 ; - RECT 62550.0 275400.0 61350.0 276600.0 ; - RECT 70950.0 278100.0 69750.0 279300.0 ; - RECT 62550.0 291000.0 61350.0 292200.0 ; - RECT 73050.0 288300.0 71850.0 289500.0 ; - RECT 62550.0 303600.0 61350.0 304800.0 ; - RECT 75150.0 306300.0 73950.0 307500.0 ; - RECT 64650.0 319200.0 63450.0 320400.0 ; - RECT 68850.0 316500.0 67650.0 317700.0 ; - RECT 64650.0 331800.0 63450.0 333000.0 ; - RECT 70950.0 334500.0 69750.0 335700.0 ; - RECT 64650.0 347400.0 63450.0 348600.0 ; - RECT 73050.0 344700.0 71850.0 345900.0 ; - RECT 64650.0 360000.0 63450.0 361200.0 ; - RECT 75150.0 362700.0 73950.0 363900.0 ; - RECT 66750.0 375600.0 65550.0 376800.0 ; - RECT 68850.0 372900.0 67650.0 374100.0 ; - RECT 66750.0 388200.0 65550.0 389400.0 ; - RECT 70950.0 390900.0 69750.0 392100.0 ; - RECT 66750.0 403800.0 65550.0 405000.0 ; - RECT 73050.0 401100.0 71850.0 402300.0 ; - RECT 66750.0 416400.0 65550.0 417600.0 ; - RECT 75150.0 419100.0 73950.0 420300.0 ; - RECT 129900.0 86400.0 130800.0 141000.0 ; - RECT 126900.0 86400.0 127800.0 141000.0 ; - RECT 129900.0 142800.0 130800.0 197400.0 ; - RECT 126900.0 142800.0 127800.0 197400.0 ; - RECT 104850.0 203850.0 105750.0 204750.0 ; - RECT 104850.0 203400.0 105750.0 204300.0 ; - RECT 105300.0 203850.0 121500.0 204750.0 ; - RECT 104850.0 221850.0 105750.0 222750.0 ; - RECT 104850.0 222300.0 105750.0 223200.0 ; - RECT 105300.0 221850.0 121500.0 222750.0 ; - RECT 104850.0 232050.0 105750.0 232950.0 ; - RECT 104850.0 231600.0 105750.0 232500.0 ; - RECT 105300.0 232050.0 121500.0 232950.0 ; - RECT 104850.0 250050.0 105750.0 250950.0 ; - RECT 104850.0 250500.0 105750.0 251400.0 ; - RECT 105300.0 250050.0 121500.0 250950.0 ; - RECT 104850.0 260250.0 105750.0 261150.0 ; - RECT 104850.0 259800.0 105750.0 260700.0 ; - RECT 105300.0 260250.0 121500.0 261150.0 ; - RECT 104850.0 278250.0 105750.0 279150.0 ; - RECT 104850.0 278700.0 105750.0 279600.0 ; - RECT 105300.0 278250.0 121500.0 279150.0 ; - RECT 104850.0 288450.0 105750.0 289350.0 ; - RECT 104850.0 288000.0 105750.0 288900.0 ; - RECT 105300.0 288450.0 121500.0 289350.0 ; - RECT 104850.0 306450.0 105750.0 307350.0 ; - RECT 104850.0 306900.0 105750.0 307800.0 ; - RECT 105300.0 306450.0 121500.0 307350.0 ; - RECT 104850.0 316650.0 105750.0 317550.0 ; - RECT 104850.0 316200.0 105750.0 317100.0 ; - RECT 105300.0 316650.0 121500.0 317550.0 ; - RECT 104850.0 334650.0 105750.0 335550.0 ; - RECT 104850.0 335100.0 105750.0 336000.0 ; - RECT 105300.0 334650.0 121500.0 335550.0 ; - RECT 104850.0 344850.0 105750.0 345750.0 ; - RECT 104850.0 344400.0 105750.0 345300.0 ; - RECT 105300.0 344850.0 121500.0 345750.0 ; - RECT 104850.0 362850.0 105750.0 363750.0 ; - RECT 104850.0 363300.0 105750.0 364200.0 ; - RECT 105300.0 362850.0 121500.0 363750.0 ; - RECT 104850.0 373050.0 105750.0 373950.0 ; - RECT 104850.0 372600.0 105750.0 373500.0 ; - RECT 105300.0 373050.0 121500.0 373950.0 ; - RECT 104850.0 391050.0 105750.0 391950.0 ; - RECT 104850.0 391500.0 105750.0 392400.0 ; - RECT 105300.0 391050.0 121500.0 391950.0 ; - RECT 104850.0 401250.0 105750.0 402150.0 ; - RECT 104850.0 400800.0 105750.0 401700.0 ; - RECT 105300.0 401250.0 121500.0 402150.0 ; - RECT 104850.0 419250.0 105750.0 420150.0 ; - RECT 104850.0 419700.0 105750.0 420600.0 ; - RECT 105300.0 419250.0 121500.0 420150.0 ; - RECT 120450.0 206550.0 121350.0 207450.0 ; - RECT 122850.0 206550.0 123750.0 207450.0 ; - RECT 120450.0 207000.0 121350.0 210150.0 ; - RECT 120900.0 206550.0 123300.0 207450.0 ; - RECT 122850.0 202350.0 123750.0 207000.0 ; - RECT 120300.0 210150.0 121500.0 211350.0 ; - RECT 122700.0 201150.0 123900.0 202350.0 ; - RECT 123900.0 206400.0 122700.0 207600.0 ; - RECT 102750.0 205050.0 103950.0 206250.0 ; - RECT 104700.0 202800.0 105900.0 204000.0 ; - RECT 121500.0 203700.0 120300.0 204900.0 ; - RECT 120450.0 220050.0 121350.0 219150.0 ; - RECT 122850.0 220050.0 123750.0 219150.0 ; - RECT 120450.0 219600.0 121350.0 216450.0 ; - RECT 120900.0 220050.0 123300.0 219150.0 ; - RECT 122850.0 224250.0 123750.0 219600.0 ; - RECT 120300.0 216450.0 121500.0 215250.0 ; - RECT 122700.0 225450.0 123900.0 224250.0 ; - RECT 123900.0 220200.0 122700.0 219000.0 ; - RECT 102750.0 220350.0 103950.0 221550.0 ; - RECT 104700.0 222600.0 105900.0 223800.0 ; - RECT 121500.0 221700.0 120300.0 222900.0 ; - RECT 120450.0 234750.0 121350.0 235650.0 ; - RECT 122850.0 234750.0 123750.0 235650.0 ; - RECT 120450.0 235200.0 121350.0 238350.0 ; - RECT 120900.0 234750.0 123300.0 235650.0 ; - RECT 122850.0 230550.0 123750.0 235200.0 ; - RECT 120300.0 238350.0 121500.0 239550.0 ; - RECT 122700.0 229350.0 123900.0 230550.0 ; - RECT 123900.0 234600.0 122700.0 235800.0 ; - RECT 102750.0 233250.0 103950.0 234450.0 ; - RECT 104700.0 231000.0 105900.0 232200.0 ; - RECT 121500.0 231900.0 120300.0 233100.0 ; - RECT 120450.0 248250.0 121350.0 247350.0 ; - RECT 122850.0 248250.0 123750.0 247350.0 ; - RECT 120450.0 247800.0 121350.0 244650.0 ; - RECT 120900.0 248250.0 123300.0 247350.0 ; - RECT 122850.0 252450.0 123750.0 247800.0 ; - RECT 120300.0 244650.0 121500.0 243450.0 ; - RECT 122700.0 253650.0 123900.0 252450.0 ; - RECT 123900.0 248400.0 122700.0 247200.0 ; - RECT 102750.0 248550.0 103950.0 249750.0 ; - RECT 104700.0 250800.0 105900.0 252000.0 ; - RECT 121500.0 249900.0 120300.0 251100.0 ; - RECT 120450.0 262950.0 121350.0 263850.0 ; - RECT 122850.0 262950.0 123750.0 263850.0 ; - RECT 120450.0 263400.0 121350.0 266550.0 ; - RECT 120900.0 262950.0 123300.0 263850.0 ; - RECT 122850.0 258750.0 123750.0 263400.0 ; - RECT 120300.0 266550.0 121500.0 267750.0 ; - RECT 122700.0 257550.0 123900.0 258750.0 ; - RECT 123900.0 262800.0 122700.0 264000.0 ; - RECT 102750.0 261450.0 103950.0 262650.0 ; - RECT 104700.0 259200.0 105900.0 260400.0 ; - RECT 121500.0 260100.0 120300.0 261300.0 ; - RECT 120450.0 276450.0 121350.0 275550.0 ; - RECT 122850.0 276450.0 123750.0 275550.0 ; - RECT 120450.0 276000.0 121350.0 272850.0 ; - RECT 120900.0 276450.0 123300.0 275550.0 ; - RECT 122850.0 280650.0 123750.0 276000.0 ; - RECT 120300.0 272850.0 121500.0 271650.0 ; - RECT 122700.0 281850.0 123900.0 280650.0 ; - RECT 123900.0 276600.0 122700.0 275400.0 ; - RECT 102750.0 276750.0 103950.0 277950.0 ; - RECT 104700.0 279000.0 105900.0 280200.0 ; - RECT 121500.0 278100.0 120300.0 279300.0 ; - RECT 120450.0 291150.0 121350.0 292050.0 ; - RECT 122850.0 291150.0 123750.0 292050.0 ; - RECT 120450.0 291600.0 121350.0 294750.0 ; - RECT 120900.0 291150.0 123300.0 292050.0 ; - RECT 122850.0 286950.0 123750.0 291600.0 ; - RECT 120300.0 294750.0 121500.0 295950.0 ; - RECT 122700.0 285750.0 123900.0 286950.0 ; - RECT 123900.0 291000.0 122700.0 292200.0 ; - RECT 102750.0 289650.0 103950.0 290850.0 ; - RECT 104700.0 287400.0 105900.0 288600.0 ; - RECT 121500.0 288300.0 120300.0 289500.0 ; - RECT 120450.0 304650.0 121350.0 303750.0 ; - RECT 122850.0 304650.0 123750.0 303750.0 ; - RECT 120450.0 304200.0 121350.0 301050.0 ; - RECT 120900.0 304650.0 123300.0 303750.0 ; - RECT 122850.0 308850.0 123750.0 304200.0 ; - RECT 120300.0 301050.0 121500.0 299850.0 ; - RECT 122700.0 310050.0 123900.0 308850.0 ; - RECT 123900.0 304800.0 122700.0 303600.0 ; - RECT 102750.0 304950.0 103950.0 306150.0 ; - RECT 104700.0 307200.0 105900.0 308400.0 ; - RECT 121500.0 306300.0 120300.0 307500.0 ; - RECT 120450.0 319350.0 121350.0 320250.0 ; - RECT 122850.0 319350.0 123750.0 320250.0 ; - RECT 120450.0 319800.0 121350.0 322950.0 ; - RECT 120900.0 319350.0 123300.0 320250.0 ; - RECT 122850.0 315150.0 123750.0 319800.0 ; - RECT 120300.0 322950.0 121500.0 324150.0 ; - RECT 122700.0 313950.0 123900.0 315150.0 ; - RECT 123900.0 319200.0 122700.0 320400.0 ; - RECT 102750.0 317850.0 103950.0 319050.0 ; - RECT 104700.0 315600.0 105900.0 316800.0 ; - RECT 121500.0 316500.0 120300.0 317700.0 ; - RECT 120450.0 332850.0 121350.0 331950.0 ; - RECT 122850.0 332850.0 123750.0 331950.0 ; - RECT 120450.0 332400.0 121350.0 329250.0 ; - RECT 120900.0 332850.0 123300.0 331950.0 ; - RECT 122850.0 337050.0 123750.0 332400.0 ; - RECT 120300.0 329250.0 121500.0 328050.0 ; - RECT 122700.0 338250.0 123900.0 337050.0 ; - RECT 123900.0 333000.0 122700.0 331800.0 ; - RECT 102750.0 333150.0 103950.0 334350.0 ; - RECT 104700.0 335400.0 105900.0 336600.0 ; - RECT 121500.0 334500.0 120300.0 335700.0 ; - RECT 120450.0 347550.0 121350.0 348450.0 ; - RECT 122850.0 347550.0 123750.0 348450.0 ; - RECT 120450.0 348000.0 121350.0 351150.0 ; - RECT 120900.0 347550.0 123300.0 348450.0 ; - RECT 122850.0 343350.0 123750.0 348000.0 ; - RECT 120300.0 351150.0 121500.0 352350.0 ; - RECT 122700.0 342150.0 123900.0 343350.0 ; - RECT 123900.0 347400.0 122700.0 348600.0 ; - RECT 102750.0 346050.0 103950.0 347250.0 ; - RECT 104700.0 343800.0 105900.0 345000.0 ; - RECT 121500.0 344700.0 120300.0 345900.0 ; - RECT 120450.0 361050.0 121350.0 360150.0 ; - RECT 122850.0 361050.0 123750.0 360150.0 ; - RECT 120450.0 360600.0 121350.0 357450.0 ; - RECT 120900.0 361050.0 123300.0 360150.0 ; - RECT 122850.0 365250.0 123750.0 360600.0 ; - RECT 120300.0 357450.0 121500.0 356250.0 ; - RECT 122700.0 366450.0 123900.0 365250.0 ; - RECT 123900.0 361200.0 122700.0 360000.0 ; - RECT 102750.0 361350.0 103950.0 362550.0 ; - RECT 104700.0 363600.0 105900.0 364800.0 ; - RECT 121500.0 362700.0 120300.0 363900.0 ; - RECT 120450.0 375750.0 121350.0 376650.0 ; - RECT 122850.0 375750.0 123750.0 376650.0 ; - RECT 120450.0 376200.0 121350.0 379350.0 ; - RECT 120900.0 375750.0 123300.0 376650.0 ; - RECT 122850.0 371550.0 123750.0 376200.0 ; - RECT 120300.0 379350.0 121500.0 380550.0 ; - RECT 122700.0 370350.0 123900.0 371550.0 ; - RECT 123900.0 375600.0 122700.0 376800.0 ; - RECT 102750.0 374250.0 103950.0 375450.0 ; - RECT 104700.0 372000.0 105900.0 373200.0 ; - RECT 121500.0 372900.0 120300.0 374100.0 ; - RECT 120450.0 389250.0 121350.0 388350.0 ; - RECT 122850.0 389250.0 123750.0 388350.0 ; - RECT 120450.0 388800.0 121350.0 385650.0 ; - RECT 120900.0 389250.0 123300.0 388350.0 ; - RECT 122850.0 393450.0 123750.0 388800.0 ; - RECT 120300.0 385650.0 121500.0 384450.0 ; - RECT 122700.0 394650.0 123900.0 393450.0 ; - RECT 123900.0 389400.0 122700.0 388200.0 ; - RECT 102750.0 389550.0 103950.0 390750.0 ; - RECT 104700.0 391800.0 105900.0 393000.0 ; - RECT 121500.0 390900.0 120300.0 392100.0 ; - RECT 120450.0 403950.0 121350.0 404850.0 ; - RECT 122850.0 403950.0 123750.0 404850.0 ; - RECT 120450.0 404400.0 121350.0 407550.0 ; - RECT 120900.0 403950.0 123300.0 404850.0 ; - RECT 122850.0 399750.0 123750.0 404400.0 ; - RECT 120300.0 407550.0 121500.0 408750.0 ; - RECT 122700.0 398550.0 123900.0 399750.0 ; - RECT 123900.0 403800.0 122700.0 405000.0 ; - RECT 102750.0 402450.0 103950.0 403650.0 ; - RECT 104700.0 400200.0 105900.0 401400.0 ; - RECT 121500.0 401100.0 120300.0 402300.0 ; - RECT 120450.0 417450.0 121350.0 416550.0 ; - RECT 122850.0 417450.0 123750.0 416550.0 ; - RECT 120450.0 417000.0 121350.0 413850.0 ; - RECT 120900.0 417450.0 123300.0 416550.0 ; - RECT 122850.0 421650.0 123750.0 417000.0 ; - RECT 120300.0 413850.0 121500.0 412650.0 ; - RECT 122700.0 422850.0 123900.0 421650.0 ; - RECT 123900.0 417600.0 122700.0 416400.0 ; - RECT 102750.0 417750.0 103950.0 418950.0 ; - RECT 104700.0 420000.0 105900.0 421200.0 ; - RECT 121500.0 419100.0 120300.0 420300.0 ; - RECT 102900.0 199200.0 103800.0 424800.0 ; - RECT 59400.0 81000.0 119400.0 70800.0 ; - RECT 59400.0 60600.0 119400.0 70800.0 ; - RECT 59400.0 60600.0 119400.0 50400.0 ; - RECT 59400.0 40200.0 119400.0 50400.0 ; - RECT 59400.0 76500.0 60600.0 75300.0 ; - RECT 59400.0 66300.0 60600.0 65100.0 ; - RECT 59400.0 56100.0 60600.0 54900.0 ; - RECT 59400.0 45900.0 60600.0 44700.0 ; - RECT 118200.0 76500.0 119400.0 75300.0 ; - RECT 114900.0 79200.0 119400.0 78000.0 ; - RECT 118200.0 66300.0 119400.0 65100.0 ; - RECT 114900.0 63600.0 119400.0 62400.0 ; - RECT 118200.0 56100.0 119400.0 54900.0 ; - RECT 114900.0 58800.0 119400.0 57600.0 ; - RECT 118200.0 45900.0 119400.0 44700.0 ; - RECT 114900.0 43200.0 119400.0 42000.0 ; - RECT 59400.0 71400.0 119400.0 70200.0 ; - RECT 59400.0 51000.0 119400.0 49800.0 ; - RECT 176850.0 5850.0 178050.0 7050.0 ; - RECT 187050.0 5850.0 188250.0 7050.0 ; - RECT 180600.0 300.0 181800.0 1500.0 ; - RECT 190800.0 300.0 192000.0 1500.0 ; - RECT 148350.0 199800.0 149550.0 198600.0 ; - RECT 148350.0 228000.0 149550.0 226800.0 ; - RECT 148350.0 256200.0 149550.0 255000.0 ; - RECT 148350.0 284400.0 149550.0 283200.0 ; - RECT 148350.0 312600.0 149550.0 311400.0 ; - RECT 148350.0 340800.0 149550.0 339600.0 ; - RECT 148350.0 369000.0 149550.0 367800.0 ; - RECT 148350.0 397200.0 149550.0 396000.0 ; - RECT 148350.0 425400.0 149550.0 424200.0 ; - RECT 130800.0 88650.0 129600.0 89850.0 ; - RECT 135900.0 88500.0 134700.0 89700.0 ; - RECT 127800.0 102750.0 126600.0 103950.0 ; - RECT 138600.0 102600.0 137400.0 103800.0 ; - RECT 130800.0 145050.0 129600.0 146250.0 ; - RECT 141300.0 144900.0 140100.0 146100.0 ; - RECT 127800.0 159150.0 126600.0 160350.0 ; - RECT 144000.0 159000.0 142800.0 160200.0 ; - RECT 132900.0 85800.0 131700.0 87000.0 ; - RECT 132900.0 85800.0 131700.0 87000.0 ; - RECT 147750.0 87000.0 148950.0 85800.0 ; - RECT 132900.0 114000.0 131700.0 115200.0 ; - RECT 132900.0 114000.0 131700.0 115200.0 ; - RECT 147750.0 115200.0 148950.0 114000.0 ; - RECT 132900.0 142200.0 131700.0 143400.0 ; - RECT 132900.0 142200.0 131700.0 143400.0 ; - RECT 147750.0 143400.0 148950.0 142200.0 ; - RECT 132900.0 170400.0 131700.0 171600.0 ; - RECT 132900.0 170400.0 131700.0 171600.0 ; - RECT 147750.0 171600.0 148950.0 170400.0 ; - RECT 120000.0 75300.0 118800.0 76500.0 ; - RECT 135900.0 75300.0 134700.0 76500.0 ; - RECT 120000.0 65100.0 118800.0 66300.0 ; - RECT 138600.0 65100.0 137400.0 66300.0 ; - RECT 120000.0 54900.0 118800.0 56100.0 ; - RECT 141300.0 54900.0 140100.0 56100.0 ; - RECT 120000.0 44700.0 118800.0 45900.0 ; - RECT 144000.0 44700.0 142800.0 45900.0 ; - RECT 120600.0 70200.0 119400.0 71400.0 ; - RECT 149550.0 70350.0 148350.0 71550.0 ; - RECT 120600.0 49800.0 119400.0 51000.0 ; - RECT 149550.0 49950.0 148350.0 51150.0 ; - RECT 164700.0 32250.0 163500.0 33450.0 ; - RECT 159300.0 27750.0 158100.0 28950.0 ; - RECT 162000.0 25350.0 160800.0 26550.0 ; - RECT 164700.0 429450.0 163500.0 430650.0 ; - RECT 167400.0 96750.0 166200.0 97950.0 ; - RECT 170100.0 194850.0 168900.0 196050.0 ; - RECT 156600.0 82500.0 155400.0 83700.0 ; - RECT 103950.0 426300.0 102750.0 427500.0 ; - RECT 156600.0 426300.0 155400.0 427500.0 ; - RECT 152850.0 23400.0 151650.0 24600.0 ; - RECT 152850.0 192900.0 151650.0 194100.0 ; - RECT 152850.0 94800.0 151650.0 96000.0 ; - RECT 180300.0 0.0 181200.0 1800.0 ; - RECT 190500.0 0.0 191400.0 1800.0 ; - RECT 169050.0 0.0 169950.0 444600.0 ; - RECT 166350.0 0.0 167250.0 444600.0 ; - RECT 158250.0 0.0 159150.0 444600.0 ; - RECT 160950.0 0.0 161850.0 444600.0 ; - RECT 163650.0 0.0 164550.0 444600.0 ; - RECT 155550.0 0.0 156450.0 444600.0 ; - RECT 148350.0 0.0 152850.0 444600.0 ; - RECT 50100.0 289800.0 7.1054273576e-12 290700.0 ; - RECT 50100.0 292500.0 7.1054273576e-12 293400.0 ; - RECT 50100.0 295200.0 7.1054273576e-12 296100.0 ; - RECT 50100.0 300600.0 7.1054273576e-12 301500.0 ; + RECT 168750.0 340200.0 169650.0 342900.0 ; + RECT 166050.0 360000.0 166950.0 362700.0 ; + RECT 160650.0 320400.0 161550.0 323100.0 ; + RECT 157950.0 337500.0 158850.0 340200.0 ; + RECT 163350.0 301050.0 164250.0 303750.0 ; + RECT 155250.0 282150.0 156150.0 284850.0 ; + RECT 49800.0 297900.0 55050.0 298800.0 ; + RECT 149850.0 284850.0 150750.0 287550.0 ; + RECT 155250.0 0.0 156150.0 436800.0 ; + RECT 157950.0 0.0 158850.0 436800.0 ; + RECT 160650.0 0.0 161550.0 436800.0 ; + RECT 163350.0 0.0 164250.0 436800.0 ; + RECT 166050.0 0.0 166950.0 436800.0 ; + RECT 168750.0 0.0 169650.0 436800.0 ; + RECT 134550.0 37200.0 135450.0 199200.0 ; + RECT 137250.0 37200.0 138150.0 199200.0 ; + RECT 139950.0 37200.0 140850.0 199200.0 ; + RECT 142650.0 37200.0 143550.0 199200.0 ; + RECT 178650.0 420000.0 179550.0 421800.0 ; + RECT 181650.0 420000.0 182550.0 420600.0 ; + RECT 188850.0 420000.0 189750.0 421800.0 ; + RECT 191850.0 420000.0 192750.0 420600.0 ; + RECT 180150.0 5850.0 181050.0 6750.0 ; + RECT 177000.0 5850.0 180600.0 6750.0 ; + RECT 180150.0 6300.0 181050.0 8100.0 ; + RECT 190350.0 5850.0 191250.0 6750.0 ; + RECT 187200.0 5850.0 190800.0 6750.0 ; + RECT 190350.0 6300.0 191250.0 8100.0 ; + RECT 102600.0 420000.0 103500.0 422100.0 ; + RECT 175500.0 199200.0 185700.0 213000.0 ; + RECT 175500.0 226800.0 185700.0 213000.0 ; + RECT 175500.0 226800.0 185700.0 240600.0 ; + RECT 175500.0 254400.0 185700.0 240600.0 ; + RECT 175500.0 254400.0 185700.0 268200.0 ; + RECT 175500.0 282000.0 185700.0 268200.0 ; + RECT 175500.0 282000.0 185700.0 295800.0 ; + RECT 175500.0 309600.0 185700.0 295800.0 ; + RECT 175500.0 309600.0 185700.0 323400.0 ; + RECT 175500.0 337200.0 185700.0 323400.0 ; + RECT 175500.0 337200.0 185700.0 351000.0 ; + RECT 175500.0 364800.0 185700.0 351000.0 ; + RECT 175500.0 364800.0 185700.0 378600.0 ; + RECT 175500.0 392400.0 185700.0 378600.0 ; + RECT 175500.0 392400.0 185700.0 406200.0 ; + RECT 175500.0 420000.0 185700.0 406200.0 ; + RECT 185700.0 199200.0 195900.0 213000.0 ; + RECT 185700.0 226800.0 195900.0 213000.0 ; + RECT 185700.0 226800.0 195900.0 240600.0 ; + RECT 185700.0 254400.0 195900.0 240600.0 ; + RECT 185700.0 254400.0 195900.0 268200.0 ; + RECT 185700.0 282000.0 195900.0 268200.0 ; + RECT 185700.0 282000.0 195900.0 295800.0 ; + RECT 185700.0 309600.0 195900.0 295800.0 ; + RECT 185700.0 309600.0 195900.0 323400.0 ; + RECT 185700.0 337200.0 195900.0 323400.0 ; + RECT 185700.0 337200.0 195900.0 351000.0 ; + RECT 185700.0 364800.0 195900.0 351000.0 ; + RECT 185700.0 364800.0 195900.0 378600.0 ; + RECT 185700.0 392400.0 195900.0 378600.0 ; + RECT 185700.0 392400.0 195900.0 406200.0 ; + RECT 185700.0 420000.0 195900.0 406200.0 ; + RECT 178500.0 199800.0 179700.0 421800.0 ; + RECT 181500.0 198600.0 182700.0 420600.0 ; + RECT 188700.0 199800.0 189900.0 421800.0 ; + RECT 191700.0 198600.0 192900.0 420600.0 ; + RECT 174900.0 198600.0 176100.0 420600.0 ; + RECT 185100.0 198600.0 186300.0 420600.0 ; + RECT 195300.0 198600.0 196500.0 420600.0 ; + RECT 178500.0 422400.0 179700.0 423600.0 ; + RECT 180900.0 422400.0 182550.0 423600.0 ; + RECT 178500.0 429600.0 179700.0 430800.0 ; + RECT 181650.0 429600.0 184500.0 430800.0 ; + RECT 178500.0 422400.0 179700.0 423600.0 ; + RECT 180900.0 422400.0 182100.0 423600.0 ; + RECT 178500.0 429600.0 179700.0 430800.0 ; + RECT 183300.0 429600.0 184500.0 430800.0 ; + RECT 178650.0 420000.0 179550.0 436800.0 ; + RECT 181650.0 420000.0 182550.0 436800.0 ; + RECT 188700.0 422400.0 189900.0 423600.0 ; + RECT 191100.0 422400.0 192750.0 423600.0 ; + RECT 188700.0 429600.0 189900.0 430800.0 ; + RECT 191850.0 429600.0 194700.0 430800.0 ; + RECT 188700.0 422400.0 189900.0 423600.0 ; + RECT 191100.0 422400.0 192300.0 423600.0 ; + RECT 188700.0 429600.0 189900.0 430800.0 ; + RECT 193500.0 429600.0 194700.0 430800.0 ; + RECT 188850.0 420000.0 189750.0 436800.0 ; + RECT 191850.0 420000.0 192750.0 436800.0 ; + RECT 178650.0 420000.0 179550.0 436800.0 ; + RECT 181650.0 420000.0 182550.0 436800.0 ; + RECT 188850.0 420000.0 189750.0 436800.0 ; + RECT 191850.0 420000.0 192750.0 436800.0 ; + RECT 175500.0 150300.0 185700.0 199200.0 ; + RECT 185700.0 150300.0 195900.0 199200.0 ; + RECT 178500.0 150300.0 179700.0 163500.0 ; + RECT 181500.0 150300.0 182700.0 163500.0 ; + RECT 188700.0 150300.0 189900.0 163500.0 ; + RECT 191700.0 150300.0 192900.0 163500.0 ; + RECT 175500.0 90000.0 185700.0 150300.0 ; + RECT 185700.0 90000.0 195900.0 150300.0 ; + RECT 180000.0 90000.0 181200.0 92700.0 ; + RECT 190200.0 90000.0 191400.0 92700.0 ; + RECT 178500.0 148200.0 179700.0 150300.0 ; + RECT 181500.0 142800.0 182700.0 150300.0 ; + RECT 188700.0 148200.0 189900.0 150300.0 ; + RECT 191700.0 142800.0 192900.0 150300.0 ; + RECT 175500.0 30000.0 185700.0 90000.0 ; + RECT 195900.0 30000.0 185700.0 90000.0 ; + RECT 180000.0 87600.0 182700.0 88800.0 ; + RECT 177300.0 85500.0 178500.0 90000.0 ; + RECT 188700.0 87600.0 191400.0 88800.0 ; + RECT 192900.0 85500.0 194100.0 90000.0 ; + RECT 185100.0 30000.0 186300.0 90000.0 ; + RECT 175500.0 30000.0 185700.0 8100.0 ; + RECT 185700.0 30000.0 195900.0 8100.0 ; + RECT 180000.0 15000.0 181200.0 8100.0 ; + RECT 190200.0 15000.0 191400.0 8100.0 ; + RECT 180000.0 30000.0 181200.0 28500.0 ; + RECT 190200.0 30000.0 191400.0 28500.0 ; + RECT 59100.0 88800.0 60000.0 420000.0 ; + RECT 61200.0 88800.0 62100.0 420000.0 ; + RECT 63300.0 88800.0 64200.0 420000.0 ; + RECT 65400.0 88800.0 66300.0 420000.0 ; + RECT 67500.0 88800.0 68400.0 420000.0 ; + RECT 69600.0 88800.0 70500.0 420000.0 ; + RECT 71700.0 88800.0 72600.0 420000.0 ; + RECT 73800.0 88800.0 74700.0 420000.0 ; + RECT 105900.0 88800.0 105000.0 142200.0 ; + RECT 102900.0 88800.0 102000.0 142200.0 ; + RECT 111900.0 88800.0 111000.0 142200.0 ; + RECT 108900.0 88800.0 108000.0 142200.0 ; + RECT 95550.0 96150.0 94650.0 97050.0 ; + RECT 93150.0 96150.0 92250.0 97050.0 ; + RECT 95550.0 96600.0 94650.0 99450.0 ; + RECT 95100.0 96150.0 92700.0 97050.0 ; + RECT 93150.0 91950.0 92250.0 96600.0 ; + RECT 95700.0 99450.0 94500.0 100650.0 ; + RECT 93300.0 90750.0 92100.0 91950.0 ; + RECT 92100.0 96000.0 93300.0 97200.0 ; + RECT 95550.0 109050.0 94650.0 108150.0 ; + RECT 93150.0 109050.0 92250.0 108150.0 ; + RECT 95550.0 108600.0 94650.0 105750.0 ; + RECT 95100.0 109050.0 92700.0 108150.0 ; + RECT 93150.0 113250.0 92250.0 108600.0 ; + RECT 95700.0 105750.0 94500.0 104550.0 ; + RECT 93300.0 114450.0 92100.0 113250.0 ; + RECT 92100.0 109200.0 93300.0 108000.0 ; + RECT 95550.0 123750.0 94650.0 124650.0 ; + RECT 93150.0 123750.0 92250.0 124650.0 ; + RECT 95550.0 124200.0 94650.0 127050.0 ; + RECT 95100.0 123750.0 92700.0 124650.0 ; + RECT 93150.0 119550.0 92250.0 124200.0 ; + RECT 95700.0 127050.0 94500.0 128250.0 ; + RECT 93300.0 118350.0 92100.0 119550.0 ; + RECT 92100.0 123600.0 93300.0 124800.0 ; + RECT 95550.0 136650.0 94650.0 135750.0 ; + RECT 93150.0 136650.0 92250.0 135750.0 ; + RECT 95550.0 136200.0 94650.0 133350.0 ; + RECT 95100.0 136650.0 92700.0 135750.0 ; + RECT 93150.0 140850.0 92250.0 136200.0 ; + RECT 95700.0 133350.0 94500.0 132150.0 ; + RECT 93300.0 142050.0 92100.0 140850.0 ; + RECT 92100.0 136800.0 93300.0 135600.0 ; + RECT 110850.0 99300.0 112050.0 100500.0 ; + RECT 129450.0 94800.0 130650.0 96000.0 ; + RECT 107850.0 113100.0 109050.0 114300.0 ; + RECT 126450.0 109200.0 127650.0 110400.0 ; + RECT 129450.0 117900.0 130650.0 119100.0 ; + RECT 104850.0 117900.0 106050.0 119100.0 ; + RECT 126450.0 131700.0 127650.0 132900.0 ; + RECT 101850.0 131700.0 103050.0 132900.0 ; + RECT 110850.0 93300.0 112050.0 94500.0 ; + RECT 107850.0 96000.0 109050.0 97200.0 ; + RECT 104850.0 110700.0 106050.0 111900.0 ; + RECT 107850.0 108000.0 109050.0 109200.0 ; + RECT 110850.0 120900.0 112050.0 122100.0 ; + RECT 101850.0 123600.0 103050.0 124800.0 ; + RECT 104850.0 138300.0 106050.0 139500.0 ; + RECT 101850.0 135600.0 103050.0 136800.0 ; + RECT 130500.0 88800.0 129600.0 142200.0 ; + RECT 127500.0 88800.0 126600.0 142200.0 ; + RECT 105900.0 144000.0 105000.0 197400.0 ; + RECT 102900.0 144000.0 102000.0 197400.0 ; + RECT 111900.0 144000.0 111000.0 197400.0 ; + RECT 108900.0 144000.0 108000.0 197400.0 ; + RECT 95550.0 151350.0 94650.0 152250.0 ; + RECT 93150.0 151350.0 92250.0 152250.0 ; + RECT 95550.0 151800.0 94650.0 154650.0 ; + RECT 95100.0 151350.0 92700.0 152250.0 ; + RECT 93150.0 147150.0 92250.0 151800.0 ; + RECT 95700.0 154650.0 94500.0 155850.0 ; + RECT 93300.0 145950.0 92100.0 147150.0 ; + RECT 92100.0 151200.0 93300.0 152400.0 ; + RECT 95550.0 164250.0 94650.0 163350.0 ; + RECT 93150.0 164250.0 92250.0 163350.0 ; + RECT 95550.0 163800.0 94650.0 160950.0 ; + RECT 95100.0 164250.0 92700.0 163350.0 ; + RECT 93150.0 168450.0 92250.0 163800.0 ; + RECT 95700.0 160950.0 94500.0 159750.0 ; + RECT 93300.0 169650.0 92100.0 168450.0 ; + RECT 92100.0 164400.0 93300.0 163200.0 ; + RECT 95550.0 178950.0 94650.0 179850.0 ; + RECT 93150.0 178950.0 92250.0 179850.0 ; + RECT 95550.0 179400.0 94650.0 182250.0 ; + RECT 95100.0 178950.0 92700.0 179850.0 ; + RECT 93150.0 174750.0 92250.0 179400.0 ; + RECT 95700.0 182250.0 94500.0 183450.0 ; + RECT 93300.0 173550.0 92100.0 174750.0 ; + RECT 92100.0 178800.0 93300.0 180000.0 ; + RECT 95550.0 191850.0 94650.0 190950.0 ; + RECT 93150.0 191850.0 92250.0 190950.0 ; + RECT 95550.0 191400.0 94650.0 188550.0 ; + RECT 95100.0 191850.0 92700.0 190950.0 ; + RECT 93150.0 196050.0 92250.0 191400.0 ; + RECT 95700.0 188550.0 94500.0 187350.0 ; + RECT 93300.0 197250.0 92100.0 196050.0 ; + RECT 92100.0 192000.0 93300.0 190800.0 ; + RECT 110850.0 154500.0 112050.0 155700.0 ; + RECT 129450.0 150000.0 130650.0 151200.0 ; + RECT 107850.0 168300.0 109050.0 169500.0 ; + RECT 126450.0 164400.0 127650.0 165600.0 ; + RECT 129450.0 173100.0 130650.0 174300.0 ; + RECT 104850.0 173100.0 106050.0 174300.0 ; + RECT 126450.0 186900.0 127650.0 188100.0 ; + RECT 101850.0 186900.0 103050.0 188100.0 ; + RECT 110850.0 148500.0 112050.0 149700.0 ; + RECT 107850.0 151200.0 109050.0 152400.0 ; + RECT 104850.0 165900.0 106050.0 167100.0 ; + RECT 107850.0 163200.0 109050.0 164400.0 ; + RECT 110850.0 176100.0 112050.0 177300.0 ; + RECT 101850.0 178800.0 103050.0 180000.0 ; + RECT 104850.0 193500.0 106050.0 194700.0 ; + RECT 101850.0 190800.0 103050.0 192000.0 ; + RECT 130500.0 144000.0 129600.0 197400.0 ; + RECT 127500.0 144000.0 126600.0 197400.0 ; + RECT 80250.0 206550.0 81150.0 207450.0 ; + RECT 82650.0 206550.0 83550.0 207450.0 ; + RECT 80250.0 207000.0 81150.0 209850.0 ; + RECT 80700.0 206550.0 83100.0 207450.0 ; + RECT 82650.0 202350.0 83550.0 207000.0 ; + RECT 80100.0 209850.0 81300.0 211050.0 ; + RECT 82500.0 201150.0 83700.0 202350.0 ; + RECT 83700.0 206400.0 82500.0 207600.0 ; + RECT 80250.0 219450.0 81150.0 218550.0 ; + RECT 82650.0 219450.0 83550.0 218550.0 ; + RECT 80250.0 219000.0 81150.0 216150.0 ; + RECT 80700.0 219450.0 83100.0 218550.0 ; + RECT 82650.0 223650.0 83550.0 219000.0 ; + RECT 80100.0 216150.0 81300.0 214950.0 ; + RECT 82500.0 224850.0 83700.0 223650.0 ; + RECT 83700.0 219600.0 82500.0 218400.0 ; + RECT 80250.0 234150.0 81150.0 235050.0 ; + RECT 82650.0 234150.0 83550.0 235050.0 ; + RECT 80250.0 234600.0 81150.0 237450.0 ; + RECT 80700.0 234150.0 83100.0 235050.0 ; + RECT 82650.0 229950.0 83550.0 234600.0 ; + RECT 80100.0 237450.0 81300.0 238650.0 ; + RECT 82500.0 228750.0 83700.0 229950.0 ; + RECT 83700.0 234000.0 82500.0 235200.0 ; + RECT 80250.0 247050.0 81150.0 246150.0 ; + RECT 82650.0 247050.0 83550.0 246150.0 ; + RECT 80250.0 246600.0 81150.0 243750.0 ; + RECT 80700.0 247050.0 83100.0 246150.0 ; + RECT 82650.0 251250.0 83550.0 246600.0 ; + RECT 80100.0 243750.0 81300.0 242550.0 ; + RECT 82500.0 252450.0 83700.0 251250.0 ; + RECT 83700.0 247200.0 82500.0 246000.0 ; + RECT 80250.0 261750.0 81150.0 262650.0 ; + RECT 82650.0 261750.0 83550.0 262650.0 ; + RECT 80250.0 262200.0 81150.0 265050.0 ; + RECT 80700.0 261750.0 83100.0 262650.0 ; + RECT 82650.0 257550.0 83550.0 262200.0 ; + RECT 80100.0 265050.0 81300.0 266250.0 ; + RECT 82500.0 256350.0 83700.0 257550.0 ; + RECT 83700.0 261600.0 82500.0 262800.0 ; + RECT 80250.0 274650.0 81150.0 273750.0 ; + RECT 82650.0 274650.0 83550.0 273750.0 ; + RECT 80250.0 274200.0 81150.0 271350.0 ; + RECT 80700.0 274650.0 83100.0 273750.0 ; + RECT 82650.0 278850.0 83550.0 274200.0 ; + RECT 80100.0 271350.0 81300.0 270150.0 ; + RECT 82500.0 280050.0 83700.0 278850.0 ; + RECT 83700.0 274800.0 82500.0 273600.0 ; + RECT 80250.0 289350.0 81150.0 290250.0 ; + RECT 82650.0 289350.0 83550.0 290250.0 ; + RECT 80250.0 289800.0 81150.0 292650.0 ; + RECT 80700.0 289350.0 83100.0 290250.0 ; + RECT 82650.0 285150.0 83550.0 289800.0 ; + RECT 80100.0 292650.0 81300.0 293850.0 ; + RECT 82500.0 283950.0 83700.0 285150.0 ; + RECT 83700.0 289200.0 82500.0 290400.0 ; + RECT 80250.0 302250.0 81150.0 301350.0 ; + RECT 82650.0 302250.0 83550.0 301350.0 ; + RECT 80250.0 301800.0 81150.0 298950.0 ; + RECT 80700.0 302250.0 83100.0 301350.0 ; + RECT 82650.0 306450.0 83550.0 301800.0 ; + RECT 80100.0 298950.0 81300.0 297750.0 ; + RECT 82500.0 307650.0 83700.0 306450.0 ; + RECT 83700.0 302400.0 82500.0 301200.0 ; + RECT 80250.0 316950.0 81150.0 317850.0 ; + RECT 82650.0 316950.0 83550.0 317850.0 ; + RECT 80250.0 317400.0 81150.0 320250.0 ; + RECT 80700.0 316950.0 83100.0 317850.0 ; + RECT 82650.0 312750.0 83550.0 317400.0 ; + RECT 80100.0 320250.0 81300.0 321450.0 ; + RECT 82500.0 311550.0 83700.0 312750.0 ; + RECT 83700.0 316800.0 82500.0 318000.0 ; + RECT 80250.0 329850.0 81150.0 328950.0 ; + RECT 82650.0 329850.0 83550.0 328950.0 ; + RECT 80250.0 329400.0 81150.0 326550.0 ; + RECT 80700.0 329850.0 83100.0 328950.0 ; + RECT 82650.0 334050.0 83550.0 329400.0 ; + RECT 80100.0 326550.0 81300.0 325350.0 ; + RECT 82500.0 335250.0 83700.0 334050.0 ; + RECT 83700.0 330000.0 82500.0 328800.0 ; + RECT 80250.0 344550.0 81150.0 345450.0 ; + RECT 82650.0 344550.0 83550.0 345450.0 ; + RECT 80250.0 345000.0 81150.0 347850.0 ; + RECT 80700.0 344550.0 83100.0 345450.0 ; + RECT 82650.0 340350.0 83550.0 345000.0 ; + RECT 80100.0 347850.0 81300.0 349050.0 ; + RECT 82500.0 339150.0 83700.0 340350.0 ; + RECT 83700.0 344400.0 82500.0 345600.0 ; + RECT 80250.0 357450.0 81150.0 356550.0 ; + RECT 82650.0 357450.0 83550.0 356550.0 ; + RECT 80250.0 357000.0 81150.0 354150.0 ; + RECT 80700.0 357450.0 83100.0 356550.0 ; + RECT 82650.0 361650.0 83550.0 357000.0 ; + RECT 80100.0 354150.0 81300.0 352950.0 ; + RECT 82500.0 362850.0 83700.0 361650.0 ; + RECT 83700.0 357600.0 82500.0 356400.0 ; + RECT 80250.0 372150.0 81150.0 373050.0 ; + RECT 82650.0 372150.0 83550.0 373050.0 ; + RECT 80250.0 372600.0 81150.0 375450.0 ; + RECT 80700.0 372150.0 83100.0 373050.0 ; + RECT 82650.0 367950.0 83550.0 372600.0 ; + RECT 80100.0 375450.0 81300.0 376650.0 ; + RECT 82500.0 366750.0 83700.0 367950.0 ; + RECT 83700.0 372000.0 82500.0 373200.0 ; + RECT 80250.0 385050.0 81150.0 384150.0 ; + RECT 82650.0 385050.0 83550.0 384150.0 ; + RECT 80250.0 384600.0 81150.0 381750.0 ; + RECT 80700.0 385050.0 83100.0 384150.0 ; + RECT 82650.0 389250.0 83550.0 384600.0 ; + RECT 80100.0 381750.0 81300.0 380550.0 ; + RECT 82500.0 390450.0 83700.0 389250.0 ; + RECT 83700.0 385200.0 82500.0 384000.0 ; + RECT 80250.0 399750.0 81150.0 400650.0 ; + RECT 82650.0 399750.0 83550.0 400650.0 ; + RECT 80250.0 400200.0 81150.0 403050.0 ; + RECT 80700.0 399750.0 83100.0 400650.0 ; + RECT 82650.0 395550.0 83550.0 400200.0 ; + RECT 80100.0 403050.0 81300.0 404250.0 ; + RECT 82500.0 394350.0 83700.0 395550.0 ; + RECT 83700.0 399600.0 82500.0 400800.0 ; + RECT 80250.0 412650.0 81150.0 411750.0 ; + RECT 82650.0 412650.0 83550.0 411750.0 ; + RECT 80250.0 412200.0 81150.0 409350.0 ; + RECT 80700.0 412650.0 83100.0 411750.0 ; + RECT 82650.0 416850.0 83550.0 412200.0 ; + RECT 80100.0 409350.0 81300.0 408150.0 ; + RECT 82500.0 418050.0 83700.0 416850.0 ; + RECT 83700.0 412800.0 82500.0 411600.0 ; + RECT 60150.0 94800.0 58950.0 96000.0 ; + RECT 62250.0 109200.0 61050.0 110400.0 ; + RECT 64350.0 122400.0 63150.0 123600.0 ; + RECT 66450.0 136800.0 65250.0 138000.0 ; + RECT 68550.0 150000.0 67350.0 151200.0 ; + RECT 70650.0 164400.0 69450.0 165600.0 ; + RECT 72750.0 177600.0 71550.0 178800.0 ; + RECT 74850.0 192000.0 73650.0 193200.0 ; + RECT 60150.0 206400.0 58950.0 207600.0 ; + RECT 68550.0 203700.0 67350.0 204900.0 ; + RECT 60150.0 218400.0 58950.0 219600.0 ; + RECT 70650.0 221100.0 69450.0 222300.0 ; + RECT 60150.0 234000.0 58950.0 235200.0 ; + RECT 72750.0 231300.0 71550.0 232500.0 ; + RECT 60150.0 246000.0 58950.0 247200.0 ; + RECT 74850.0 248700.0 73650.0 249900.0 ; + RECT 62250.0 261600.0 61050.0 262800.0 ; + RECT 68550.0 258900.0 67350.0 260100.0 ; + RECT 62250.0 273600.0 61050.0 274800.0 ; + RECT 70650.0 276300.0 69450.0 277500.0 ; + RECT 62250.0 289200.0 61050.0 290400.0 ; + RECT 72750.0 286500.0 71550.0 287700.0 ; + RECT 62250.0 301200.0 61050.0 302400.0 ; + RECT 74850.0 303900.0 73650.0 305100.0 ; + RECT 64350.0 316800.0 63150.0 318000.0 ; + RECT 68550.0 314100.0 67350.0 315300.0 ; + RECT 64350.0 328800.0 63150.0 330000.0 ; + RECT 70650.0 331500.0 69450.0 332700.0 ; + RECT 64350.0 344400.0 63150.0 345600.0 ; + RECT 72750.0 341700.0 71550.0 342900.0 ; + RECT 64350.0 356400.0 63150.0 357600.0 ; + RECT 74850.0 359100.0 73650.0 360300.0 ; + RECT 66450.0 372000.0 65250.0 373200.0 ; + RECT 68550.0 369300.0 67350.0 370500.0 ; + RECT 66450.0 384000.0 65250.0 385200.0 ; + RECT 70650.0 386700.0 69450.0 387900.0 ; + RECT 66450.0 399600.0 65250.0 400800.0 ; + RECT 72750.0 396900.0 71550.0 398100.0 ; + RECT 66450.0 411600.0 65250.0 412800.0 ; + RECT 74850.0 414300.0 73650.0 415500.0 ; + RECT 129600.0 88800.0 130500.0 142200.0 ; + RECT 126600.0 88800.0 127500.0 142200.0 ; + RECT 129600.0 144000.0 130500.0 197400.0 ; + RECT 126600.0 144000.0 127500.0 197400.0 ; + RECT 104550.0 203850.0 105450.0 204750.0 ; + RECT 104550.0 203400.0 105450.0 204300.0 ; + RECT 105000.0 203850.0 121200.0 204750.0 ; + RECT 104550.0 221250.0 105450.0 222150.0 ; + RECT 104550.0 221700.0 105450.0 222600.0 ; + RECT 105000.0 221250.0 121200.0 222150.0 ; + RECT 104550.0 231450.0 105450.0 232350.0 ; + RECT 104550.0 231000.0 105450.0 231900.0 ; + RECT 105000.0 231450.0 121200.0 232350.0 ; + RECT 104550.0 248850.0 105450.0 249750.0 ; + RECT 104550.0 249300.0 105450.0 250200.0 ; + RECT 105000.0 248850.0 121200.0 249750.0 ; + RECT 104550.0 259050.0 105450.0 259950.0 ; + RECT 104550.0 258600.0 105450.0 259500.0 ; + RECT 105000.0 259050.0 121200.0 259950.0 ; + RECT 104550.0 276450.0 105450.0 277350.0 ; + RECT 104550.0 276900.0 105450.0 277800.0 ; + RECT 105000.0 276450.0 121200.0 277350.0 ; + RECT 104550.0 286650.0 105450.0 287550.0 ; + RECT 104550.0 286200.0 105450.0 287100.0 ; + RECT 105000.0 286650.0 121200.0 287550.0 ; + RECT 104550.0 304050.0 105450.0 304950.0 ; + RECT 104550.0 304500.0 105450.0 305400.0 ; + RECT 105000.0 304050.0 121200.0 304950.0 ; + RECT 104550.0 314250.0 105450.0 315150.0 ; + RECT 104550.0 313800.0 105450.0 314700.0 ; + RECT 105000.0 314250.0 121200.0 315150.0 ; + RECT 104550.0 331650.0 105450.0 332550.0 ; + RECT 104550.0 332100.0 105450.0 333000.0 ; + RECT 105000.0 331650.0 121200.0 332550.0 ; + RECT 104550.0 341850.0 105450.0 342750.0 ; + RECT 104550.0 341400.0 105450.0 342300.0 ; + RECT 105000.0 341850.0 121200.0 342750.0 ; + RECT 104550.0 359250.0 105450.0 360150.0 ; + RECT 104550.0 359700.0 105450.0 360600.0 ; + RECT 105000.0 359250.0 121200.0 360150.0 ; + RECT 104550.0 369450.0 105450.0 370350.0 ; + RECT 104550.0 369000.0 105450.0 369900.0 ; + RECT 105000.0 369450.0 121200.0 370350.0 ; + RECT 104550.0 386850.0 105450.0 387750.0 ; + RECT 104550.0 387300.0 105450.0 388200.0 ; + RECT 105000.0 386850.0 121200.0 387750.0 ; + RECT 104550.0 397050.0 105450.0 397950.0 ; + RECT 104550.0 396600.0 105450.0 397500.0 ; + RECT 105000.0 397050.0 121200.0 397950.0 ; + RECT 104550.0 414450.0 105450.0 415350.0 ; + RECT 104550.0 414900.0 105450.0 415800.0 ; + RECT 105000.0 414450.0 121200.0 415350.0 ; + RECT 120150.0 206550.0 121050.0 207450.0 ; + RECT 122550.0 206550.0 123450.0 207450.0 ; + RECT 120150.0 207000.0 121050.0 209850.0 ; + RECT 120600.0 206550.0 123000.0 207450.0 ; + RECT 122550.0 202350.0 123450.0 207000.0 ; + RECT 120000.0 209850.0 121200.0 211050.0 ; + RECT 122400.0 201150.0 123600.0 202350.0 ; + RECT 123600.0 206400.0 122400.0 207600.0 ; + RECT 102450.0 205200.0 103650.0 206400.0 ; + RECT 104400.0 202800.0 105600.0 204000.0 ; + RECT 121200.0 203700.0 120000.0 204900.0 ; + RECT 120150.0 219450.0 121050.0 218550.0 ; + RECT 122550.0 219450.0 123450.0 218550.0 ; + RECT 120150.0 219000.0 121050.0 216150.0 ; + RECT 120600.0 219450.0 123000.0 218550.0 ; + RECT 122550.0 223650.0 123450.0 219000.0 ; + RECT 120000.0 216150.0 121200.0 214950.0 ; + RECT 122400.0 224850.0 123600.0 223650.0 ; + RECT 123600.0 219600.0 122400.0 218400.0 ; + RECT 102450.0 219600.0 103650.0 220800.0 ; + RECT 104400.0 222000.0 105600.0 223200.0 ; + RECT 121200.0 221100.0 120000.0 222300.0 ; + RECT 120150.0 234150.0 121050.0 235050.0 ; + RECT 122550.0 234150.0 123450.0 235050.0 ; + RECT 120150.0 234600.0 121050.0 237450.0 ; + RECT 120600.0 234150.0 123000.0 235050.0 ; + RECT 122550.0 229950.0 123450.0 234600.0 ; + RECT 120000.0 237450.0 121200.0 238650.0 ; + RECT 122400.0 228750.0 123600.0 229950.0 ; + RECT 123600.0 234000.0 122400.0 235200.0 ; + RECT 102450.0 232800.0 103650.0 234000.0 ; + RECT 104400.0 230400.0 105600.0 231600.0 ; + RECT 121200.0 231300.0 120000.0 232500.0 ; + RECT 120150.0 247050.0 121050.0 246150.0 ; + RECT 122550.0 247050.0 123450.0 246150.0 ; + RECT 120150.0 246600.0 121050.0 243750.0 ; + RECT 120600.0 247050.0 123000.0 246150.0 ; + RECT 122550.0 251250.0 123450.0 246600.0 ; + RECT 120000.0 243750.0 121200.0 242550.0 ; + RECT 122400.0 252450.0 123600.0 251250.0 ; + RECT 123600.0 247200.0 122400.0 246000.0 ; + RECT 102450.0 247200.0 103650.0 248400.0 ; + RECT 104400.0 249600.0 105600.0 250800.0 ; + RECT 121200.0 248700.0 120000.0 249900.0 ; + RECT 120150.0 261750.0 121050.0 262650.0 ; + RECT 122550.0 261750.0 123450.0 262650.0 ; + RECT 120150.0 262200.0 121050.0 265050.0 ; + RECT 120600.0 261750.0 123000.0 262650.0 ; + RECT 122550.0 257550.0 123450.0 262200.0 ; + RECT 120000.0 265050.0 121200.0 266250.0 ; + RECT 122400.0 256350.0 123600.0 257550.0 ; + RECT 123600.0 261600.0 122400.0 262800.0 ; + RECT 102450.0 260400.0 103650.0 261600.0 ; + RECT 104400.0 258000.0 105600.0 259200.0 ; + RECT 121200.0 258900.0 120000.0 260100.0 ; + RECT 120150.0 274650.0 121050.0 273750.0 ; + RECT 122550.0 274650.0 123450.0 273750.0 ; + RECT 120150.0 274200.0 121050.0 271350.0 ; + RECT 120600.0 274650.0 123000.0 273750.0 ; + RECT 122550.0 278850.0 123450.0 274200.0 ; + RECT 120000.0 271350.0 121200.0 270150.0 ; + RECT 122400.0 280050.0 123600.0 278850.0 ; + RECT 123600.0 274800.0 122400.0 273600.0 ; + RECT 102450.0 274800.0 103650.0 276000.0 ; + RECT 104400.0 277200.0 105600.0 278400.0 ; + RECT 121200.0 276300.0 120000.0 277500.0 ; + RECT 120150.0 289350.0 121050.0 290250.0 ; + RECT 122550.0 289350.0 123450.0 290250.0 ; + RECT 120150.0 289800.0 121050.0 292650.0 ; + RECT 120600.0 289350.0 123000.0 290250.0 ; + RECT 122550.0 285150.0 123450.0 289800.0 ; + RECT 120000.0 292650.0 121200.0 293850.0 ; + RECT 122400.0 283950.0 123600.0 285150.0 ; + RECT 123600.0 289200.0 122400.0 290400.0 ; + RECT 102450.0 288000.0 103650.0 289200.0 ; + RECT 104400.0 285600.0 105600.0 286800.0 ; + RECT 121200.0 286500.0 120000.0 287700.0 ; + RECT 120150.0 302250.0 121050.0 301350.0 ; + RECT 122550.0 302250.0 123450.0 301350.0 ; + RECT 120150.0 301800.0 121050.0 298950.0 ; + RECT 120600.0 302250.0 123000.0 301350.0 ; + RECT 122550.0 306450.0 123450.0 301800.0 ; + RECT 120000.0 298950.0 121200.0 297750.0 ; + RECT 122400.0 307650.0 123600.0 306450.0 ; + RECT 123600.0 302400.0 122400.0 301200.0 ; + RECT 102450.0 302400.0 103650.0 303600.0 ; + RECT 104400.0 304800.0 105600.0 306000.0 ; + RECT 121200.0 303900.0 120000.0 305100.0 ; + RECT 120150.0 316950.0 121050.0 317850.0 ; + RECT 122550.0 316950.0 123450.0 317850.0 ; + RECT 120150.0 317400.0 121050.0 320250.0 ; + RECT 120600.0 316950.0 123000.0 317850.0 ; + RECT 122550.0 312750.0 123450.0 317400.0 ; + RECT 120000.0 320250.0 121200.0 321450.0 ; + RECT 122400.0 311550.0 123600.0 312750.0 ; + RECT 123600.0 316800.0 122400.0 318000.0 ; + RECT 102450.0 315600.0 103650.0 316800.0 ; + RECT 104400.0 313200.0 105600.0 314400.0 ; + RECT 121200.0 314100.0 120000.0 315300.0 ; + RECT 120150.0 329850.0 121050.0 328950.0 ; + RECT 122550.0 329850.0 123450.0 328950.0 ; + RECT 120150.0 329400.0 121050.0 326550.0 ; + RECT 120600.0 329850.0 123000.0 328950.0 ; + RECT 122550.0 334050.0 123450.0 329400.0 ; + RECT 120000.0 326550.0 121200.0 325350.0 ; + RECT 122400.0 335250.0 123600.0 334050.0 ; + RECT 123600.0 330000.0 122400.0 328800.0 ; + RECT 102450.0 330000.0 103650.0 331200.0 ; + RECT 104400.0 332400.0 105600.0 333600.0 ; + RECT 121200.0 331500.0 120000.0 332700.0 ; + RECT 120150.0 344550.0 121050.0 345450.0 ; + RECT 122550.0 344550.0 123450.0 345450.0 ; + RECT 120150.0 345000.0 121050.0 347850.0 ; + RECT 120600.0 344550.0 123000.0 345450.0 ; + RECT 122550.0 340350.0 123450.0 345000.0 ; + RECT 120000.0 347850.0 121200.0 349050.0 ; + RECT 122400.0 339150.0 123600.0 340350.0 ; + RECT 123600.0 344400.0 122400.0 345600.0 ; + RECT 102450.0 343200.0 103650.0 344400.0 ; + RECT 104400.0 340800.0 105600.0 342000.0 ; + RECT 121200.0 341700.0 120000.0 342900.0 ; + RECT 120150.0 357450.0 121050.0 356550.0 ; + RECT 122550.0 357450.0 123450.0 356550.0 ; + RECT 120150.0 357000.0 121050.0 354150.0 ; + RECT 120600.0 357450.0 123000.0 356550.0 ; + RECT 122550.0 361650.0 123450.0 357000.0 ; + RECT 120000.0 354150.0 121200.0 352950.0 ; + RECT 122400.0 362850.0 123600.0 361650.0 ; + RECT 123600.0 357600.0 122400.0 356400.0 ; + RECT 102450.0 357600.0 103650.0 358800.0 ; + RECT 104400.0 360000.0 105600.0 361200.0 ; + RECT 121200.0 359100.0 120000.0 360300.0 ; + RECT 120150.0 372150.0 121050.0 373050.0 ; + RECT 122550.0 372150.0 123450.0 373050.0 ; + RECT 120150.0 372600.0 121050.0 375450.0 ; + RECT 120600.0 372150.0 123000.0 373050.0 ; + RECT 122550.0 367950.0 123450.0 372600.0 ; + RECT 120000.0 375450.0 121200.0 376650.0 ; + RECT 122400.0 366750.0 123600.0 367950.0 ; + RECT 123600.0 372000.0 122400.0 373200.0 ; + RECT 102450.0 370800.0 103650.0 372000.0 ; + RECT 104400.0 368400.0 105600.0 369600.0 ; + RECT 121200.0 369300.0 120000.0 370500.0 ; + RECT 120150.0 385050.0 121050.0 384150.0 ; + RECT 122550.0 385050.0 123450.0 384150.0 ; + RECT 120150.0 384600.0 121050.0 381750.0 ; + RECT 120600.0 385050.0 123000.0 384150.0 ; + RECT 122550.0 389250.0 123450.0 384600.0 ; + RECT 120000.0 381750.0 121200.0 380550.0 ; + RECT 122400.0 390450.0 123600.0 389250.0 ; + RECT 123600.0 385200.0 122400.0 384000.0 ; + RECT 102450.0 385200.0 103650.0 386400.0 ; + RECT 104400.0 387600.0 105600.0 388800.0 ; + RECT 121200.0 386700.0 120000.0 387900.0 ; + RECT 120150.0 399750.0 121050.0 400650.0 ; + RECT 122550.0 399750.0 123450.0 400650.0 ; + RECT 120150.0 400200.0 121050.0 403050.0 ; + RECT 120600.0 399750.0 123000.0 400650.0 ; + RECT 122550.0 395550.0 123450.0 400200.0 ; + RECT 120000.0 403050.0 121200.0 404250.0 ; + RECT 122400.0 394350.0 123600.0 395550.0 ; + RECT 123600.0 399600.0 122400.0 400800.0 ; + RECT 102450.0 398400.0 103650.0 399600.0 ; + RECT 104400.0 396000.0 105600.0 397200.0 ; + RECT 121200.0 396900.0 120000.0 398100.0 ; + RECT 120150.0 412650.0 121050.0 411750.0 ; + RECT 122550.0 412650.0 123450.0 411750.0 ; + RECT 120150.0 412200.0 121050.0 409350.0 ; + RECT 120600.0 412650.0 123000.0 411750.0 ; + RECT 122550.0 416850.0 123450.0 412200.0 ; + RECT 120000.0 409350.0 121200.0 408150.0 ; + RECT 122400.0 418050.0 123600.0 416850.0 ; + RECT 123600.0 412800.0 122400.0 411600.0 ; + RECT 102450.0 412800.0 103650.0 414000.0 ; + RECT 104400.0 415200.0 105600.0 416400.0 ; + RECT 121200.0 414300.0 120000.0 415500.0 ; + RECT 102600.0 199200.0 103500.0 420000.0 ; + RECT 59100.0 83400.0 119100.0 73200.0 ; + RECT 59100.0 63000.0 119100.0 73200.0 ; + RECT 59100.0 63000.0 119100.0 52800.0 ; + RECT 59100.0 42600.0 119100.0 52800.0 ; + RECT 116700.0 78900.0 117900.0 76200.0 ; + RECT 114600.0 81600.0 119100.0 80400.0 ; + RECT 116700.0 70200.0 117900.0 67500.0 ; + RECT 114600.0 66000.0 119100.0 64800.0 ; + RECT 116700.0 58500.0 117900.0 55800.0 ; + RECT 114600.0 61200.0 119100.0 60000.0 ; + RECT 116700.0 49800.0 117900.0 47100.0 ; + RECT 114600.0 45600.0 119100.0 44400.0 ; + RECT 59100.0 73800.0 119100.0 72600.0 ; + RECT 59100.0 53400.0 119100.0 52200.0 ; + RECT 176550.0 5850.0 177750.0 7050.0 ; + RECT 186750.0 5850.0 187950.0 7050.0 ; + RECT 180300.0 300.0 181500.0 1500.0 ; + RECT 190500.0 300.0 191700.0 1500.0 ; + RECT 148050.0 199800.0 149250.0 198600.0 ; + RECT 148050.0 227400.0 149250.0 226200.0 ; + RECT 148050.0 255000.0 149250.0 253800.0 ; + RECT 148050.0 282600.0 149250.0 281400.0 ; + RECT 148050.0 310200.0 149250.0 309000.0 ; + RECT 148050.0 337800.0 149250.0 336600.0 ; + RECT 148050.0 365400.0 149250.0 364200.0 ; + RECT 148050.0 393000.0 149250.0 391800.0 ; + RECT 148050.0 420600.0 149250.0 419400.0 ; + RECT 130500.0 91050.0 129300.0 92250.0 ; + RECT 135600.0 90900.0 134400.0 92100.0 ; + RECT 127500.0 104850.0 126300.0 106050.0 ; + RECT 138300.0 104700.0 137100.0 105900.0 ; + RECT 130500.0 146250.0 129300.0 147450.0 ; + RECT 141000.0 146100.0 139800.0 147300.0 ; + RECT 127500.0 160050.0 126300.0 161250.0 ; + RECT 143700.0 159900.0 142500.0 161100.0 ; + RECT 132600.0 88200.0 131400.0 89400.0 ; + RECT 132600.0 88200.0 131400.0 89400.0 ; + RECT 147450.0 89400.0 148650.0 88200.0 ; + RECT 132600.0 115800.0 131400.0 117000.0 ; + RECT 132600.0 115800.0 131400.0 117000.0 ; + RECT 147450.0 117000.0 148650.0 115800.0 ; + RECT 132600.0 143400.0 131400.0 144600.0 ; + RECT 132600.0 143400.0 131400.0 144600.0 ; + RECT 147450.0 144600.0 148650.0 143400.0 ; + RECT 132600.0 171000.0 131400.0 172200.0 ; + RECT 132600.0 171000.0 131400.0 172200.0 ; + RECT 147450.0 172200.0 148650.0 171000.0 ; + RECT 118500.0 76950.0 117300.0 78150.0 ; + RECT 135600.0 76950.0 134400.0 78150.0 ; + RECT 118500.0 68250.0 117300.0 69450.0 ; + RECT 138300.0 68250.0 137100.0 69450.0 ; + RECT 118500.0 56550.0 117300.0 57750.0 ; + RECT 141000.0 56550.0 139800.0 57750.0 ; + RECT 118500.0 47850.0 117300.0 49050.0 ; + RECT 143700.0 47850.0 142500.0 49050.0 ; + RECT 120300.0 72600.0 119100.0 73800.0 ; + RECT 149250.0 72750.0 148050.0 73950.0 ; + RECT 120300.0 52200.0 119100.0 53400.0 ; + RECT 149250.0 52350.0 148050.0 53550.0 ; + RECT 164400.0 32250.0 163200.0 33450.0 ; + RECT 159000.0 27750.0 157800.0 28950.0 ; + RECT 161700.0 25350.0 160500.0 26550.0 ; + RECT 164400.0 424650.0 163200.0 425850.0 ; + RECT 167100.0 96750.0 165900.0 97950.0 ; + RECT 169800.0 194850.0 168600.0 196050.0 ; + RECT 156300.0 84900.0 155100.0 86100.0 ; + RECT 103650.0 421500.0 102450.0 422700.0 ; + RECT 156300.0 421500.0 155100.0 422700.0 ; + RECT 152550.0 23400.0 151350.0 24600.0 ; + RECT 152550.0 192900.0 151350.0 194100.0 ; + RECT 152550.0 94800.0 151350.0 96000.0 ; + RECT 180000.0 0.0 180900.0 1800.0 ; + RECT 190200.0 0.0 191100.0 1800.0 ; + RECT 168750.0 0.0 169650.0 436800.0 ; + RECT 166050.0 0.0 166950.0 436800.0 ; + RECT 157950.0 0.0 158850.0 436800.0 ; + RECT 160650.0 0.0 161550.0 436800.0 ; + RECT 163350.0 0.0 164250.0 436800.0 ; + RECT 155250.0 0.0 156150.0 436800.0 ; + RECT 148050.0 0.0 152550.0 436800.0 ; + RECT 49800.0 289800.0 1.42108547152e-11 290700.0 ; + RECT 49800.0 292500.0 1.42108547152e-11 293400.0 ; + RECT 49800.0 295200.0 1.42108547152e-11 296100.0 ; + RECT 49800.0 300600.0 1.42108547152e-11 301500.0 ; RECT 33750.0 205050.0 32850.0 284850.0 ; - RECT 50100.0 287100.0 47400.0 288000.0 ; + RECT 49800.0 287100.0 47100.0 288000.0 ; RECT 38700.0 297900.0 36000.0 298800.0 ; - RECT 24600.0 287100.0 21900.0 288000.0 ; - RECT 10500.0 297900.0 7800.0 298800.0 ; - RECT 0.0 202200.0 10200.0 262200.0 ; + RECT 24900.0 287100.0 22200.0 288000.0 ; + RECT 11100.0 297900.0 8400.0 298800.0 ; + RECT 7.1054273576e-12 202200.0 10200.0 262200.0 ; RECT 20400.0 202200.0 10200.0 262200.0 ; RECT 20400.0 202200.0 30600.0 262200.0 ; - RECT 4500.0 202200.0 5700.0 203400.0 ; - RECT 14700.0 202200.0 15900.0 203400.0 ; - RECT 24900.0 202200.0 26100.0 203400.0 ; - RECT 4500.0 261000.0 5700.0 262200.0 ; + RECT 4500.0 259800.0 7200.0 261000.0 ; RECT 1800.0 257700.0 3000.0 262200.0 ; - RECT 14700.0 261000.0 15900.0 262200.0 ; + RECT 13200.0 259800.0 15900.0 261000.0 ; RECT 17400.0 257700.0 18600.0 262200.0 ; - RECT 24900.0 261000.0 26100.0 262200.0 ; + RECT 24900.0 259800.0 27600.0 261000.0 ; RECT 22200.0 257700.0 23400.0 262200.0 ; RECT 9600.0 202200.0 10800.0 262200.0 ; RECT 30000.0 202200.0 31200.0 262200.0 ; - RECT 46800.0 317850.0 38700.0 318750.0 ; - RECT 41250.0 313050.0 40350.0 313950.0 ; - RECT 41250.0 317850.0 40350.0 318750.0 ; - RECT 40800.0 313050.0 38700.0 313950.0 ; - RECT 41250.0 313500.0 40350.0 318300.0 ; - RECT 46800.0 317850.0 40800.0 318750.0 ; - RECT 38700.0 312900.0 37500.0 314100.0 ; - RECT 38700.0 317700.0 37500.0 318900.0 ; - RECT 48000.0 317700.0 46800.0 318900.0 ; - RECT 41400.0 317700.0 40200.0 318900.0 ; - RECT 28500.0 315450.0 29400.0 316350.0 ; - RECT 28950.0 315450.0 32250.0 316350.0 ; - RECT 28500.0 315900.0 29400.0 316800.0 ; - RECT 23400.0 315450.0 24300.0 316350.0 ; - RECT 23400.0 314100.0 24300.0 315900.0 ; - RECT 23850.0 315450.0 28950.0 316350.0 ; + RECT 46650.0 317850.0 39150.0 318750.0 ; + RECT 41700.0 313050.0 40800.0 313950.0 ; + RECT 41700.0 317850.0 40800.0 318750.0 ; + RECT 41250.0 313050.0 39150.0 313950.0 ; + RECT 41700.0 313500.0 40800.0 318300.0 ; + RECT 46650.0 317850.0 41250.0 318750.0 ; + RECT 39150.0 312900.0 37950.0 314100.0 ; + RECT 39150.0 317700.0 37950.0 318900.0 ; + RECT 47850.0 317700.0 46650.0 318900.0 ; + RECT 41850.0 317700.0 40650.0 318900.0 ; + RECT 28800.0 315450.0 29700.0 316350.0 ; + RECT 29250.0 315450.0 32250.0 316350.0 ; + RECT 28800.0 315900.0 29700.0 316800.0 ; + RECT 23700.0 315450.0 24600.0 316350.0 ; + RECT 23700.0 314100.0 24600.0 315900.0 ; + RECT 24150.0 315450.0 29250.0 316350.0 ; RECT 32250.0 315300.0 33450.0 316500.0 ; - RECT 23250.0 314100.0 24450.0 312900.0 ; - RECT 28350.0 317400.0 29550.0 316200.0 ; - RECT 29250.0 330150.0 30150.0 331050.0 ; - RECT 29250.0 332550.0 30150.0 333450.0 ; - RECT 29700.0 330150.0 32850.0 331050.0 ; - RECT 29250.0 330600.0 30150.0 333000.0 ; - RECT 25050.0 332550.0 29700.0 333450.0 ; + RECT 23550.0 314100.0 24750.0 312900.0 ; + RECT 28650.0 317400.0 29850.0 316200.0 ; + RECT 29550.0 330150.0 30450.0 331050.0 ; + RECT 29550.0 332550.0 30450.0 333450.0 ; + RECT 30000.0 330150.0 32850.0 331050.0 ; + RECT 29550.0 330600.0 30450.0 333000.0 ; + RECT 25350.0 332550.0 30000.0 333450.0 ; RECT 32850.0 330000.0 34050.0 331200.0 ; - RECT 23850.0 332400.0 25050.0 333600.0 ; - RECT 29100.0 333600.0 30300.0 332400.0 ; - RECT 18600.0 327450.0 10500.0 328350.0 ; - RECT 13050.0 322650.0 12150.0 323550.0 ; - RECT 13050.0 327450.0 12150.0 328350.0 ; - RECT 12600.0 322650.0 10500.0 323550.0 ; - RECT 13050.0 323100.0 12150.0 327900.0 ; - RECT 18600.0 327450.0 12600.0 328350.0 ; - RECT 10500.0 322500.0 9300.0 323700.0 ; - RECT 10500.0 327300.0 9300.0 328500.0 ; - RECT 19800.0 327300.0 18600.0 328500.0 ; - RECT 13200.0 327300.0 12000.0 328500.0 ; + RECT 24150.0 332400.0 25350.0 333600.0 ; + RECT 29400.0 333600.0 30600.0 332400.0 ; + RECT 19050.0 327450.0 11550.0 328350.0 ; + RECT 14100.0 322650.0 13200.0 323550.0 ; + RECT 14100.0 327450.0 13200.0 328350.0 ; + RECT 13650.0 322650.0 11550.0 323550.0 ; + RECT 14100.0 323100.0 13200.0 327900.0 ; + RECT 19050.0 327450.0 13650.0 328350.0 ; + RECT 11550.0 322500.0 10350.0 323700.0 ; + RECT 11550.0 327300.0 10350.0 328500.0 ; + RECT 20250.0 327300.0 19050.0 328500.0 ; + RECT 14250.0 327300.0 13050.0 328500.0 ; RECT 3000.0 262800.0 1800.0 261600.0 ; RECT 3000.0 301650.0 1800.0 300450.0 ; - RECT 5700.0 262800.0 4500.0 261600.0 ; - RECT 5700.0 290850.0 4500.0 289650.0 ; + RECT 6450.0 261600.0 5250.0 260400.0 ; + RECT 6450.0 290850.0 5250.0 289650.0 ; RECT 18600.0 262800.0 17400.0 261600.0 ; RECT 18600.0 293550.0 17400.0 292350.0 ; RECT 23400.0 262800.0 22200.0 261600.0 ; @@ -5078,146 +5073,147 @@ MACRO sram_2_16_1_scn3me_subm RECT 10800.0 288150.0 9600.0 286950.0 ; RECT 31200.0 262800.0 30000.0 261600.0 ; RECT 31200.0 288150.0 30000.0 286950.0 ; - RECT 22350.0 371700.0 21450.0 426900.0 ; - RECT 22350.0 381300.0 21450.0 384000.0 ; - RECT 22350.0 384000.0 21450.0 426900.0 ; - RECT 6750.0 424200.0 5850.0 426900.0 ; - RECT 20100.0 376500.0 19200.0 384000.0 ; - RECT 13350.0 376500.0 12450.0 381300.0 ; - RECT 43200.0 415500.0 44100.0 422700.0 ; + RECT 22650.0 371700.0 21750.0 425400.0 ; + RECT 22650.0 381300.0 21750.0 384000.0 ; + RECT 22650.0 384000.0 21750.0 426000.0 ; + RECT 17250.0 423300.0 16350.0 426000.0 ; + RECT 20400.0 375900.0 19500.0 384000.0 ; + RECT 13650.0 375900.0 12750.0 380700.0 ; + RECT 42750.0 415500.0 43650.0 422700.0 ; RECT 35550.0 424650.0 36450.0 425550.0 ; RECT 35550.0 425850.0 36450.0 426750.0 ; - RECT 36000.0 424650.0 43650.0 425550.0 ; + RECT 36000.0 424650.0 43200.0 425550.0 ; RECT 35550.0 425100.0 36450.0 426300.0 ; - RECT 28350.0 425850.0 36000.0 426750.0 ; - RECT 27900.0 416700.0 28800.0 423900.0 ; - RECT 43050.0 422100.0 44250.0 423300.0 ; - RECT 27750.0 425700.0 28950.0 426900.0 ; - RECT 27750.0 416100.0 28950.0 417300.0 ; - RECT 43050.0 414900.0 44250.0 416100.0 ; - RECT 43050.0 424500.0 44250.0 425700.0 ; - RECT 27750.0 423300.0 28950.0 424500.0 ; - RECT 16500.0 396000.0 6300.0 381300.0 ; - RECT 16500.0 396000.0 6300.0 410100.0 ; - RECT 16500.0 424200.0 6300.0 410100.0 ; - RECT 13500.0 396000.0 12300.0 424200.0 ; - RECT 10500.0 396000.0 9300.0 424200.0 ; - RECT 6900.0 396000.0 5700.0 424200.0 ; - RECT 22350.0 398100.0 21150.0 399300.0 ; - RECT 22350.0 420900.0 21150.0 422100.0 ; - RECT 22350.0 410100.0 21150.0 411300.0 ; - RECT 22350.0 370500.0 21150.0 371700.0 ; - RECT 21300.0 426300.0 22500.0 427500.0 ; - RECT 5700.0 426300.0 6900.0 427500.0 ; - RECT 19050.0 383400.0 20250.0 384600.0 ; - RECT 19050.0 375900.0 20250.0 377100.0 ; - RECT 12300.0 375900.0 13500.0 377100.0 ; - RECT 44550.0 285450.0 43350.0 284250.0 ; - RECT 44550.0 244650.0 43350.0 243450.0 ; - RECT 44550.0 304350.0 43350.0 303150.0 ; - RECT 44550.0 244650.0 43350.0 243450.0 ; + RECT 28800.0 425850.0 36000.0 426750.0 ; + RECT 28350.0 416700.0 29250.0 423900.0 ; + RECT 42600.0 422100.0 43800.0 423300.0 ; + RECT 28200.0 425700.0 29400.0 426900.0 ; + RECT 28200.0 416100.0 29400.0 417300.0 ; + RECT 42600.0 414900.0 43800.0 416100.0 ; + RECT 42600.0 424500.0 43800.0 425700.0 ; + RECT 28200.0 423300.0 29400.0 424500.0 ; + RECT 16800.0 395100.0 6600.0 381300.0 ; + RECT 16800.0 395100.0 6600.0 408900.0 ; + RECT 16800.0 422700.0 6600.0 408900.0 ; + RECT 13800.0 395700.0 12600.0 424500.0 ; + RECT 10800.0 394500.0 9600.0 423300.0 ; + RECT 17400.0 394500.0 16200.0 423300.0 ; + RECT 7200.0 394500.0 6000.0 423300.0 ; + RECT 22650.0 396600.0 21450.0 397800.0 ; + RECT 22650.0 420000.0 21450.0 421200.0 ; + RECT 22650.0 410100.0 21450.0 411300.0 ; + RECT 22650.0 370500.0 21450.0 371700.0 ; + RECT 21600.0 425400.0 22800.0 426600.0 ; + RECT 16200.0 425400.0 17400.0 426600.0 ; + RECT 19350.0 383400.0 20550.0 384600.0 ; + RECT 19350.0 375300.0 20550.0 376500.0 ; + RECT 12600.0 375300.0 13800.0 376500.0 ; + RECT 43950.0 285450.0 42750.0 284250.0 ; + RECT 43950.0 244500.0 42750.0 243300.0 ; + RECT 43950.0 304350.0 42750.0 303150.0 ; + RECT 43950.0 244500.0 42750.0 243300.0 ; RECT 33900.0 205650.0 32700.0 204450.0 ; - RECT 29550.0 285450.0 28350.0 284250.0 ; - RECT 26850.0 290850.0 25650.0 289650.0 ; - RECT 30300.0 328200.0 29100.0 327000.0 ; - RECT 30300.0 328200.0 29100.0 327000.0 ; - RECT 30300.0 304350.0 29100.0 303150.0 ; - RECT 27600.0 331200.0 26400.0 330000.0 ; - RECT 27600.0 331200.0 26400.0 330000.0 ; - RECT 27600.0 301650.0 26400.0 300450.0 ; - RECT 41400.0 304350.0 40200.0 303150.0 ; - RECT 43350.0 301650.0 42150.0 300450.0 ; - RECT 45300.0 293550.0 44100.0 292350.0 ; - RECT 13200.0 304350.0 12000.0 303150.0 ; - RECT 15150.0 293550.0 13950.0 292350.0 ; - RECT 17100.0 296250.0 15900.0 295050.0 ; - RECT 29550.0 322500.0 28350.0 323700.0 ; - RECT 30300.0 339600.0 29100.0 340800.0 ; - RECT 16050.0 362100.0 14850.0 363300.0 ; - RECT 28950.0 342300.0 27750.0 343500.0 ; - RECT 50700.0 288150.0 49500.0 286950.0 ; + RECT 29850.0 285450.0 28650.0 284250.0 ; + RECT 27150.0 290850.0 25950.0 289650.0 ; + RECT 30600.0 328200.0 29400.0 327000.0 ; + RECT 30600.0 328200.0 29400.0 327000.0 ; + RECT 30600.0 304350.0 29400.0 303150.0 ; + RECT 27900.0 331200.0 26700.0 330000.0 ; + RECT 27900.0 331200.0 26700.0 330000.0 ; + RECT 27900.0 301650.0 26700.0 300450.0 ; + RECT 41850.0 304350.0 40650.0 303150.0 ; + RECT 43800.0 301650.0 42600.0 300450.0 ; + RECT 45750.0 293550.0 44550.0 292350.0 ; + RECT 14250.0 304350.0 13050.0 303150.0 ; + RECT 16200.0 293550.0 15000.0 292350.0 ; + RECT 18150.0 296250.0 16950.0 295050.0 ; + RECT 29850.0 322500.0 28650.0 323700.0 ; + RECT 30600.0 339600.0 29400.0 340800.0 ; + RECT 16200.0 362100.0 15000.0 363300.0 ; + RECT 29400.0 342300.0 28200.0 343500.0 ; + RECT 50400.0 288150.0 49200.0 286950.0 ; RECT 36600.0 298950.0 35400.0 297750.0 ; - RECT 22500.0 288150.0 21300.0 286950.0 ; - RECT 8400.0 298950.0 7200.0 297750.0 ; - RECT 50100.0 342450.0 28350.0 343350.0 ; - RECT 50100.0 362250.0 15450.0 363150.0 ; - RECT 50100.0 322650.0 28950.0 323550.0 ; - RECT 50100.0 339750.0 29700.0 340650.0 ; - RECT 50100.0 303300.0 7.1054273576e-12 304200.0 ; - RECT 50100.0 284400.0 7.1054273576e-12 285300.0 ; - RECT 50100.0 297900.0 7.1054273576e-12 298800.0 ; - RECT 50100.0 287100.0 7.1054273576e-12 288000.0 ; - RECT 170100.0 342300.0 168900.0 343500.0 ; - RECT 49800.0 342450.0 48600.0 343650.0 ; - RECT 167400.0 362100.0 166200.0 363300.0 ; - RECT 49800.0 362250.0 48600.0 363450.0 ; - RECT 162000.0 322500.0 160800.0 323700.0 ; - RECT 49800.0 322650.0 48600.0 323850.0 ; - RECT 159300.0 339600.0 158100.0 340800.0 ; - RECT 49800.0 339750.0 48600.0 340950.0 ; - RECT 164700.0 303150.0 163500.0 304350.0 ; - RECT 49800.0 303300.0 48600.0 304500.0 ; - RECT 156600.0 284250.0 155400.0 285450.0 ; - RECT 49800.0 284400.0 48600.0 285600.0 ; - RECT 55950.0 297750.0 54750.0 298950.0 ; - RECT 151200.0 286950.0 150000.0 288150.0 ; - RECT 49800.0 287100.0 48600.0 288300.0 ; + RECT 22800.0 288150.0 21600.0 286950.0 ; + RECT 9000.0 298950.0 7800.0 297750.0 ; + RECT 49800.0 342450.0 28800.0 343350.0 ; + RECT 49800.0 362250.0 15600.0 363150.0 ; + RECT 49800.0 322650.0 29250.0 323550.0 ; + RECT 49800.0 339750.0 30000.0 340650.0 ; + RECT 49800.0 303300.0 1.42108547152e-11 304200.0 ; + RECT 49800.0 284400.0 1.42108547152e-11 285300.0 ; + RECT 49800.0 297900.0 1.42108547152e-11 298800.0 ; + RECT 49800.0 287100.0 1.42108547152e-11 288000.0 ; + RECT 169800.0 342300.0 168600.0 343500.0 ; + RECT 49500.0 342450.0 48300.0 343650.0 ; + RECT 167100.0 362100.0 165900.0 363300.0 ; + RECT 49500.0 362250.0 48300.0 363450.0 ; + RECT 161700.0 322500.0 160500.0 323700.0 ; + RECT 49500.0 322650.0 48300.0 323850.0 ; + RECT 159000.0 339600.0 157800.0 340800.0 ; + RECT 49500.0 339750.0 48300.0 340950.0 ; + RECT 164400.0 303150.0 163200.0 304350.0 ; + RECT 49500.0 303300.0 48300.0 304500.0 ; + RECT 156300.0 284250.0 155100.0 285450.0 ; + RECT 49500.0 284400.0 48300.0 285600.0 ; + RECT 55650.0 297750.0 54450.0 298950.0 ; + RECT 150900.0 286950.0 149700.0 288150.0 ; + RECT 49500.0 287100.0 48300.0 288300.0 ; LAYER metal3 ; - RECT 50100.0 342150.0 169500.0 343650.0 ; - RECT 50100.0 361950.0 166800.0 363450.0 ; - RECT 50100.0 322350.0 161400.0 323850.0 ; - RECT 50100.0 339450.0 158700.0 340950.0 ; - RECT 50100.0 303000.0 164100.0 304500.0 ; - RECT 50100.0 284100.0 156000.0 285600.0 ; - RECT 50100.0 286800.0 150600.0 288300.0 ; - RECT 176550.0 6300.0 178050.0 151200.0 ; - RECT 186750.0 6300.0 188250.0 151200.0 ; - RECT 180300.0 0.0 181800.0 30000.0 ; - RECT 190500.0 0.0 192000.0 30000.0 ; - RECT 132300.0 85650.0 148350.0 87150.0 ; - RECT 132300.0 113850.0 148350.0 115350.0 ; - RECT 132300.0 142050.0 148350.0 143550.0 ; - RECT 132300.0 170250.0 148350.0 171750.0 ; - RECT 176400.0 151200.0 178200.0 153000.0 ; - RECT 186600.0 151200.0 188400.0 153000.0 ; - RECT 180000.0 30900.0 181800.0 32700.0 ; - RECT 190200.0 30900.0 192000.0 32700.0 ; - RECT 60300.0 76800.0 62100.0 75000.0 ; - RECT 60300.0 66600.0 62100.0 64800.0 ; - RECT 60300.0 56400.0 62100.0 54600.0 ; - RECT 60300.0 46200.0 62100.0 44400.0 ; - RECT 176550.0 5550.0 178350.0 7350.0 ; - RECT 186750.0 5550.0 188550.0 7350.0 ; - RECT 180300.0 0.0 182100.0 1800.0 ; - RECT 190500.0 0.0 192300.0 1800.0 ; - RECT 133200.0 85500.0 131400.0 87300.0 ; - RECT 147450.0 87300.0 149250.0 85500.0 ; - RECT 133200.0 113700.0 131400.0 115500.0 ; - RECT 147450.0 115500.0 149250.0 113700.0 ; - RECT 133200.0 141900.0 131400.0 143700.0 ; - RECT 147450.0 143700.0 149250.0 141900.0 ; - RECT 133200.0 170100.0 131400.0 171900.0 ; - RECT 147450.0 171900.0 149250.0 170100.0 ; - RECT 53100.0 75000.0 60300.0 76500.0 ; - RECT 53100.0 64800.0 60300.0 66300.0 ; - RECT 53100.0 54600.0 60300.0 56100.0 ; - RECT 53100.0 44400.0 60300.0 45900.0 ; + RECT 49800.0 342150.0 169200.0 343650.0 ; + RECT 49800.0 361950.0 166500.0 363450.0 ; + RECT 49800.0 322350.0 161100.0 323850.0 ; + RECT 49800.0 339450.0 158400.0 340950.0 ; + RECT 49800.0 303000.0 163800.0 304500.0 ; + RECT 49800.0 284100.0 155700.0 285600.0 ; + RECT 49800.0 286800.0 150300.0 288300.0 ; + RECT 176250.0 6300.0 177750.0 151200.0 ; + RECT 186450.0 6300.0 187950.0 151200.0 ; + RECT 180000.0 0.0 181500.0 30000.0 ; + RECT 190200.0 0.0 191700.0 30000.0 ; + RECT 132000.0 88050.0 148050.0 89550.0 ; + RECT 132000.0 115650.0 148050.0 117150.0 ; + RECT 132000.0 143250.0 148050.0 144750.0 ; + RECT 132000.0 170850.0 148050.0 172350.0 ; + RECT 176100.0 151200.0 177900.0 153000.0 ; + RECT 186300.0 151200.0 188100.0 153000.0 ; + RECT 179700.0 30900.0 181500.0 32700.0 ; + RECT 189900.0 30900.0 191700.0 32700.0 ; + RECT 60000.0 79200.0 61800.0 77400.0 ; + RECT 60000.0 69000.0 61800.0 67200.0 ; + RECT 60000.0 58800.0 61800.0 57000.0 ; + RECT 60000.0 48600.0 61800.0 46800.0 ; + RECT 176250.0 5550.0 178050.0 7350.0 ; + RECT 186450.0 5550.0 188250.0 7350.0 ; + RECT 180000.0 0.0 181800.0 1800.0 ; + RECT 190200.0 0.0 192000.0 1800.0 ; + RECT 132900.0 87900.0 131100.0 89700.0 ; + RECT 147150.0 89700.0 148950.0 87900.0 ; + RECT 132900.0 115500.0 131100.0 117300.0 ; + RECT 147150.0 117300.0 148950.0 115500.0 ; + RECT 132900.0 143100.0 131100.0 144900.0 ; + RECT 147150.0 144900.0 148950.0 143100.0 ; + RECT 132900.0 170700.0 131100.0 172500.0 ; + RECT 147150.0 172500.0 148950.0 170700.0 ; + RECT 52800.0 77400.0 60000.0 78900.0 ; + RECT 52800.0 67200.0 60000.0 68700.0 ; + RECT 52800.0 57000.0 60000.0 58500.0 ; + RECT 52800.0 46800.0 60000.0 48300.0 ; RECT 3150.0 262200.0 1650.0 301050.0 ; - RECT 5850.0 262200.0 4350.0 290250.0 ; + RECT 6600.0 261000.0 5100.0 290250.0 ; RECT 18750.0 262200.0 17250.0 292950.0 ; RECT 23550.0 262200.0 22050.0 295650.0 ; RECT 10950.0 262200.0 9450.0 287550.0 ; RECT 31350.0 262200.0 29850.0 287550.0 ; - RECT 44700.0 244050.0 43200.0 303750.0 ; - RECT 30450.0 303750.0 28950.0 327600.0 ; - RECT 27750.0 301050.0 26250.0 330600.0 ; + RECT 44100.0 243900.0 42600.0 303750.0 ; + RECT 30750.0 303750.0 29250.0 327600.0 ; + RECT 28050.0 301050.0 26550.0 330600.0 ; RECT 4200.0 203100.0 6000.0 204900.0 ; RECT 14400.0 203100.0 16200.0 204900.0 ; RECT 24600.0 203100.0 26400.0 204900.0 ; RECT 3300.0 263100.0 1500.0 261300.0 ; RECT 3300.0 301950.0 1500.0 300150.0 ; - RECT 6000.0 263100.0 4200.0 261300.0 ; - RECT 6000.0 291150.0 4200.0 289350.0 ; + RECT 6750.0 261900.0 4950.0 260100.0 ; + RECT 6750.0 291150.0 4950.0 289350.0 ; RECT 18900.0 263100.0 17100.0 261300.0 ; RECT 18900.0 293850.0 17100.0 292050.0 ; RECT 23700.0 263100.0 21900.0 261300.0 ; @@ -5226,29 +5222,29 @@ MACRO sram_2_16_1_scn3me_subm RECT 11100.0 288450.0 9300.0 286650.0 ; RECT 31500.0 263100.0 29700.0 261300.0 ; RECT 31500.0 288450.0 29700.0 286650.0 ; - RECT 44850.0 244950.0 43050.0 243150.0 ; - RECT 44850.0 304650.0 43050.0 302850.0 ; - RECT 30600.0 328500.0 28800.0 326700.0 ; - RECT 30600.0 304650.0 28800.0 302850.0 ; - RECT 27900.0 331500.0 26100.0 329700.0 ; - RECT 27900.0 301950.0 26100.0 300150.0 ; + RECT 44250.0 244800.0 42450.0 243000.0 ; + RECT 44250.0 304650.0 42450.0 302850.0 ; + RECT 30900.0 328500.0 29100.0 326700.0 ; + RECT 30900.0 304650.0 29100.0 302850.0 ; + RECT 28200.0 331500.0 26400.0 329700.0 ; + RECT 28200.0 301950.0 26400.0 300150.0 ; RECT 16200.0 203100.0 14400.0 204900.0 ; RECT 26400.0 203100.0 24600.0 204900.0 ; RECT 6000.0 203100.0 4200.0 204900.0 ; - RECT 170400.0 342000.0 168600.0 343800.0 ; - RECT 50100.0 342150.0 48300.0 343950.0 ; - RECT 167700.0 361800.0 165900.0 363600.0 ; - RECT 50100.0 361950.0 48300.0 363750.0 ; - RECT 162300.0 322200.0 160500.0 324000.0 ; - RECT 50100.0 322350.0 48300.0 324150.0 ; - RECT 159600.0 339300.0 157800.0 341100.0 ; - RECT 50100.0 339450.0 48300.0 341250.0 ; - RECT 165000.0 302850.0 163200.0 304650.0 ; - RECT 50100.0 303000.0 48300.0 304800.0 ; - RECT 156900.0 283950.0 155100.0 285750.0 ; - RECT 50100.0 284100.0 48300.0 285900.0 ; - RECT 151500.0 286650.0 149700.0 288450.0 ; - RECT 50100.0 286800.0 48300.0 288600.0 ; + RECT 170100.0 342000.0 168300.0 343800.0 ; + RECT 49800.0 342150.0 48000.0 343950.0 ; + RECT 167400.0 361800.0 165600.0 363600.0 ; + RECT 49800.0 361950.0 48000.0 363750.0 ; + RECT 162000.0 322200.0 160200.0 324000.0 ; + RECT 49800.0 322350.0 48000.0 324150.0 ; + RECT 159300.0 339300.0 157500.0 341100.0 ; + RECT 49800.0 339450.0 48000.0 341250.0 ; + RECT 164700.0 302850.0 162900.0 304650.0 ; + RECT 49800.0 303000.0 48000.0 304800.0 ; + RECT 156600.0 283950.0 154800.0 285750.0 ; + RECT 49800.0 284100.0 48000.0 285900.0 ; + RECT 151200.0 286650.0 149400.0 288450.0 ; + RECT 49800.0 286800.0 48000.0 288600.0 ; END END sram_2_16_1_scn3me_subm END LIBRARY diff --git a/compiler/tests/testutils.py b/compiler/tests/testutils.py index 4907574b..c7d62071 100644 --- a/compiler/tests/testutils.py +++ b/compiler/tests/testutils.py @@ -129,7 +129,7 @@ class openram_test(unittest.TestCase): if len(b1_floats)!=len(b2_floats): self.fail("MISMATCH Length {0} != {1}".format(len(b1_floats),len(b2_floats))) for (f1,f2) in zip(b1_floats,b2_floats): - if not relative_compare(float(f1),float(f2),error_tolerance): + if not self.relative_compare(float(f1),float(f2),error_tolerance): self.fail("MISMATCH Float {0} != {1}".format(f1,f2)) if not b1 and not b2: From 9fea4a1a2dfadd48523e7579810c177ac2d70c6c Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Wed, 31 Jan 2018 16:21:43 -0800 Subject: [PATCH 08/95] Do not require hspice during tests. Check if a valid simulator is found, however. --- compiler/characterizer/stimuli.py | 1 + compiler/tests/22_sram_func_test.py | 5 +++++ compiler/tests/23_lib_sram_prune_test.py | 5 +++++ compiler/tests/23_lib_sram_test.py | 5 +++++ 4 files changed, 16 insertions(+) diff --git a/compiler/characterizer/stimuli.py b/compiler/characterizer/stimuli.py index 69a0bb32..6cba2015 100644 --- a/compiler/characterizer/stimuli.py +++ b/compiler/characterizer/stimuli.py @@ -282,6 +282,7 @@ def run_sim(): temp_stim = "{0}stim.sp".format(OPTS.openram_temp) import datetime start_time = datetime.datetime.now() + debug.check(OPTS.spice_exe!="","No spice simulator has been found.") if OPTS.spice_name == "xa": # Output the xa configurations here. FIXME: Move this to write it once. diff --git a/compiler/tests/22_sram_func_test.py b/compiler/tests/22_sram_func_test.py index 4e42a775..ec6eabf2 100644 --- a/compiler/tests/22_sram_func_test.py +++ b/compiler/tests/22_sram_func_test.py @@ -16,10 +16,15 @@ class sram_func_test(openram_test): def runTest(self): globals.init_openram("config_20_{0}".format(OPTS.tech_name)) OPTS.check_lvsdrc = False + OPTS.spice_name="" # Unset to use any simulator OPTS.analytical_delay = False + + # This is a hack to reload the characterizer __init__ with the spice version import characterizer reload(characterizer) from characterizer import delay + if not OPTS.spice_exe: + debug.error("Could not find {} simulator.".format(OPTS.spice_name),-1) import sram diff --git a/compiler/tests/23_lib_sram_prune_test.py b/compiler/tests/23_lib_sram_prune_test.py index 71b6bd38..9c9f6667 100644 --- a/compiler/tests/23_lib_sram_prune_test.py +++ b/compiler/tests/23_lib_sram_prune_test.py @@ -16,11 +16,16 @@ class lib_test(openram_test): def runTest(self): globals.init_openram("config_20_{0}".format(OPTS.tech_name)) OPTS.check_lvsdrc = False + OPTS.spice_name="" # Unset to use any simulator OPTS.analytical_delay = False OPTS.trim_netlist = True + + # This is a hack to reload the characterizer __init__ with the spice version import characterizer reload(characterizer) from characterizer import lib + if not OPTS.spice_exe: + debug.error("Could not find {} simulator.".format(OPTS.spice_name),-1) import sram diff --git a/compiler/tests/23_lib_sram_test.py b/compiler/tests/23_lib_sram_test.py index 2c24bbc7..c1d2eb6a 100644 --- a/compiler/tests/23_lib_sram_test.py +++ b/compiler/tests/23_lib_sram_test.py @@ -16,11 +16,16 @@ class lib_test(openram_test): def runTest(self): globals.init_openram("config_20_{0}".format(OPTS.tech_name)) OPTS.check_lvsdrc = False + OPTS.spice_name="" # Unset to use any simulator OPTS.analytical_delay = False OPTS.trim_netlist = False + + # This is a hack to reload the characterizer __init__ with the spice version import characterizer reload(characterizer) from characterizer import lib + if not OPTS.spice_exe: + debug.error("Could not find {} simulator.".format(OPTS.spice_name),-1) import sram From 512448f9e81498a8f98ed5d787ae1c766f9d6019 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Wed, 31 Jan 2018 17:37:16 -0800 Subject: [PATCH 09/95] Fix pin names to lower case. Fix write driver DRC errors and LVS error. --- compiler/bank.py | 4 +- compiler/bitcell_array.py | 3 +- compiler/write_driver.py | 2 +- compiler/write_driver_array.py | 4 +- technology/freepdk45/gds_lib/write_driver.gds | Bin 24576 -> 24576 bytes technology/freepdk45/sp_lib/write_driver.sp | 2 +- .../scn3me_subm/gds_lib/write_driver.gds | Bin 12132 -> 12132 bytes .../scn3me_subm/mag_lib/write_driver.mag | 432 +++++++++--------- technology/scn3me_subm/sp_lib/write_driver.sp | 2 +- 9 files changed, 225 insertions(+), 224 deletions(-) diff --git a/compiler/bank.py b/compiler/bank.py index ce686c84..c792ee23 100644 --- a/compiler/bank.py +++ b/compiler/bank.py @@ -234,8 +234,8 @@ class bank(design.design): """ Adding Precharge """ # The wells must be far enough apart - # We use two well spacings because the bitcells tend to have a shared rail in the height - y_offset = self.bitcell_array.height + 2*drc["pwell_to_nwell"] + # The enclosure is for the well and the spacig is to the bitcell wells + y_offset = self.bitcell_array.height + 2*drc["pwell_to_nwell"] + drc["well_enclosure_active"] self.precharge_array_inst=self.add_inst(name="precharge_array", mod=self.precharge_array, offset=vector(0,y_offset)) diff --git a/compiler/bitcell_array.py b/compiler/bitcell_array.py index 30696b7c..44318206 100644 --- a/compiler/bitcell_array.py +++ b/compiler/bitcell_array.py @@ -26,7 +26,8 @@ class bitcell_array(design.design): self.cell = self.mod_bitcell() self.add_mod(self.cell) - self.height = self.row_size*self.cell.height + # We increase it by a well enclosure so the precharges don't overlap our wells + self.height = self.row_size*self.cell.height + drc["well_enclosure_active"] self.width = self.column_size*self.cell.width self.add_pins() diff --git a/compiler/write_driver.py b/compiler/write_driver.py index 57ba39c3..67477a8d 100644 --- a/compiler/write_driver.py +++ b/compiler/write_driver.py @@ -11,7 +11,7 @@ class write_driver(design.design): the technology library. """ - pin_names = ["din", "BL", "BR", "en", "gnd", "vdd"] + pin_names = ["din", "bl", "br", "en", "gnd", "vdd"] (width,height) = utils.get_libcell_size("write_driver", GDS["unit"], layer["boundary"]) pin_map = utils.get_libcell_pins(pin_names, "write_driver", GDS["unit"], layer["boundary"]) diff --git a/compiler/write_driver_array.py b/compiler/write_driver_array.py index 0bf5d32d..a220e473 100644 --- a/compiler/write_driver_array.py +++ b/compiler/write_driver_array.py @@ -69,14 +69,14 @@ class write_driver_array(design.design): offset=din_pin.ll(), width=din_pin.width(), height=din_pin.height()) - bl_pin = self.driver_insts[i].get_pin("BL") + bl_pin = self.driver_insts[i].get_pin("bl") self.add_layout_pin(text="bl[{0}]".format(i), layer="metal2", offset=bl_pin.ll(), width=bl_pin.width(), height=bl_pin.height()) - br_pin = self.driver_insts[i].get_pin("BR") + br_pin = self.driver_insts[i].get_pin("br") self.add_layout_pin(text="br[{0}]".format(i), layer="metal2", offset=br_pin.ll(), diff --git a/technology/freepdk45/gds_lib/write_driver.gds b/technology/freepdk45/gds_lib/write_driver.gds index c1b0d0b9e692c609168ea4258af5d12b13488e10..4954fc800572cf2e762aeff8e3af7144a709ca3a 100644 GIT binary patch delta 201 zcmZoTz}Rqrae{cb5CbEFJcA&E9D^nU4-;ETYFc7xP6-2p2s5jl!jaia9|wQ4REiP5 z;Ja3gL57uyfscWkL6U)!L4(1B0a>pA8(Vo%W=U#%N>OH6YSH98R(tjk1~y5yq@2kO zY*LfYu{un4Vbz)3#wN0{Wev;ZHg=26MQkFBAc4(K*mD>syRnN-=4VTuypNrWDXD03 tAE(jg8qU)ki`#{mCc6tcY;G56(3yNURB-bRS399ijt5vai$%O*2LN1#H}(Jk delta 195 zcmZoTz}Rqrae{cbAOi=31Opd?C4(>n4-;ETYFc7xP6-2p2s5jl!jaia9|wQ4REiP5 z;Ja3VL57uyfscWkL6U)!L4(1B0a>pA8(Vo%W=U#%N>OH6YSCs3#zQQVcQJ`f=3~^E z%*JWK!&t+>pb*T!CduaHGueS%dg6Ke$+tLCHXE^tFai}gF*yZoc3^K~oIHh7XLAkb nX^zS6A`Xk)g_t(Ci!|tLjt$<)GFdE8VzY#!ozP~nh*#_YVr4Pc diff --git a/technology/freepdk45/sp_lib/write_driver.sp b/technology/freepdk45/sp_lib/write_driver.sp index 8f1a551f..1267eb91 100644 --- a/technology/freepdk45/sp_lib/write_driver.sp +++ b/technology/freepdk45/sp_lib/write_driver.sp @@ -1,5 +1,5 @@ -.SUBCKT write_driver din bl br wen vdd gnd +.SUBCKT write_driver din bl br en vdd gnd *inverters for enable and data input minP bl_bar din vdd vdd pmos_vtg w=360.000000n l=50.000000n minN bl_bar din gnd gnd nmos_vtg w=180.000000n l=50.000000n diff --git a/technology/scn3me_subm/gds_lib/write_driver.gds b/technology/scn3me_subm/gds_lib/write_driver.gds index af90e33d8d7583b684d586f58b27d236a70a215b..a8a9c176943ac71d6f817b59c2025814ec4005bd 100644 GIT binary patch literal 12132 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 literal 12132 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 PHLAPrh`TQFl6&mGf%r+f diff --git a/technology/scn3me_subm/mag_lib/write_driver.mag b/technology/scn3me_subm/mag_lib/write_driver.mag index 53a509e4..7398bb84 100644 --- a/technology/scn3me_subm/mag_lib/write_driver.mag +++ b/technology/scn3me_subm/mag_lib/write_driver.mag @@ -1,236 +1,236 @@ magic tech scmos -timestamp 1516828491 +timestamp 1517448475 << nwell >> -rect -3 100 37 137 -rect -3 -1 37 50 +rect -3 101 37 138 +rect -3 0 37 51 << pwell >> -rect -3 137 37 201 -rect -3 50 37 100 +rect -3 138 37 202 +rect -3 51 37 101 << ntransistor >> -rect 9 176 11 188 -rect 17 176 19 188 -rect 15 161 27 163 -rect 9 143 11 147 -rect 17 143 19 147 -rect 10 81 12 88 -rect 18 81 20 88 -rect 8 56 10 63 -rect 16 56 18 63 -rect 24 59 26 63 +rect 9 177 11 189 +rect 17 177 19 189 +rect 15 162 27 164 +rect 9 144 11 148 +rect 17 144 19 148 +rect 10 82 12 89 +rect 18 82 20 89 +rect 8 57 10 64 +rect 16 57 18 64 +rect 24 60 26 64 << ptransistor >> -rect 9 124 11 131 -rect 17 124 19 131 -rect 10 106 12 113 -rect 18 106 20 113 -rect 8 37 10 44 -rect 16 37 18 44 -rect 24 37 26 44 +rect 9 125 11 132 +rect 17 125 19 132 +rect 10 107 12 114 +rect 18 107 20 114 +rect 8 38 10 45 +rect 16 38 18 45 +rect 24 38 26 45 << ndiffusion >> -rect 8 176 9 188 -rect 11 176 12 188 -rect 16 176 17 188 -rect 19 176 20 188 -rect 15 163 27 164 -rect 15 160 27 161 -rect 12 156 15 159 -rect 12 155 16 156 -rect 8 143 9 147 -rect 11 143 12 147 -rect 16 143 17 147 -rect 19 143 20 147 -rect 9 81 10 88 -rect 12 81 13 88 -rect 17 81 18 88 -rect 20 81 21 88 -rect 25 81 26 85 -rect 7 56 8 63 -rect 10 56 11 63 -rect 15 56 16 63 -rect 18 56 19 63 -rect 23 59 24 63 -rect 26 59 27 63 +rect 8 177 9 189 +rect 11 177 12 189 +rect 16 177 17 189 +rect 19 177 20 189 +rect 15 164 27 165 +rect 15 161 27 162 +rect 12 157 15 160 +rect 12 156 16 157 +rect 8 144 9 148 +rect 11 144 12 148 +rect 16 144 17 148 +rect 19 144 20 148 +rect 9 82 10 89 +rect 12 82 13 89 +rect 17 82 18 89 +rect 20 82 21 89 +rect 25 82 26 86 +rect 7 57 8 64 +rect 10 57 11 64 +rect 15 57 16 64 +rect 18 57 19 64 +rect 23 60 24 64 +rect 26 60 27 64 << pdiffusion >> -rect 8 124 9 131 -rect 11 124 12 131 -rect 16 124 17 131 -rect 19 124 20 131 -rect 12 121 16 124 -rect 9 106 10 113 -rect 12 106 13 113 -rect 17 106 18 113 -rect 20 106 21 113 -rect 7 37 8 44 -rect 10 37 11 44 -rect 15 37 16 44 -rect 18 37 19 44 -rect 23 37 24 44 -rect 26 37 27 44 -rect 3 34 7 37 +rect 8 125 9 132 +rect 11 125 12 132 +rect 16 125 17 132 +rect 19 125 20 132 +rect 12 122 16 125 +rect 9 107 10 114 +rect 12 107 13 114 +rect 17 107 18 114 +rect 20 107 21 114 +rect 7 38 8 45 +rect 10 38 11 45 +rect 15 38 16 45 +rect 18 38 19 45 +rect 23 38 24 45 +rect 26 38 27 45 +rect 3 35 7 38 << ndcontact >> -rect 4 176 8 188 -rect 12 176 16 188 -rect 20 176 24 188 -rect 15 164 27 168 -rect 15 156 27 160 -rect 4 143 8 147 -rect 12 143 16 147 -rect 20 143 24 147 -rect 5 81 9 88 -rect 13 81 17 88 -rect 21 81 25 88 -rect 3 56 7 63 -rect 11 56 15 63 -rect 19 56 23 63 -rect 27 59 31 63 +rect 4 177 8 189 +rect 12 177 16 189 +rect 20 177 24 189 +rect 15 165 27 169 +rect 15 157 27 161 +rect 4 144 8 148 +rect 12 144 16 148 +rect 20 144 24 148 +rect 5 82 9 89 +rect 13 82 17 89 +rect 21 82 25 89 +rect 3 57 7 64 +rect 11 57 15 64 +rect 19 57 23 64 +rect 27 60 31 64 << pdcontact >> -rect 4 124 8 131 -rect 12 124 16 131 -rect 20 124 24 131 -rect 5 106 9 113 -rect 13 106 17 113 -rect 21 106 25 113 -rect 3 37 7 44 -rect 11 37 15 44 -rect 19 37 23 44 -rect 27 37 31 44 +rect 4 125 8 132 +rect 12 125 16 132 +rect 20 125 24 132 +rect 5 107 9 114 +rect 13 107 17 114 +rect 21 107 25 114 +rect 3 38 7 45 +rect 11 38 15 45 +rect 19 38 23 45 +rect 27 38 31 45 << psubstratepcontact >> -rect 12 151 16 155 -rect 26 81 30 85 +rect 12 152 16 156 +rect 26 82 30 86 << nsubstratencontact >> -rect 12 117 16 121 -rect 3 30 7 34 +rect 12 118 16 122 +rect 3 31 7 35 << polysilicon >> -rect 9 193 30 195 -rect 9 188 11 193 -rect 17 188 19 190 -rect 28 184 30 193 -rect 9 174 11 176 -rect 17 171 19 176 -rect 6 169 19 171 -rect 6 166 8 169 -rect 13 161 15 163 -rect 27 161 33 163 -rect 9 147 11 149 -rect 17 147 19 149 -rect 9 131 11 143 -rect 17 131 19 143 -rect 9 123 11 124 -rect 2 121 11 123 -rect 17 123 19 124 -rect 17 121 28 123 -rect 2 74 4 121 -rect 10 113 12 115 -rect 18 113 20 115 -rect 10 88 12 106 -rect 18 105 20 106 -rect 16 103 20 105 -rect 16 91 18 103 -rect 26 99 28 121 -rect 27 95 28 99 -rect 16 89 20 91 -rect 18 88 20 89 -rect 10 80 12 81 -rect 10 78 13 80 -rect 2 70 3 74 -rect 11 70 13 78 -rect 18 78 20 81 -rect 18 76 23 78 -rect 31 70 33 161 -rect 11 68 33 70 -rect 11 66 13 68 -rect 8 64 13 66 -rect 8 63 10 64 -rect 16 63 18 65 -rect 24 63 26 65 -rect 8 44 10 56 -rect 16 51 18 56 -rect 24 51 26 59 -rect 16 49 26 51 -rect 16 44 18 49 -rect 24 44 26 49 -rect 8 27 10 37 -rect 16 13 18 37 -rect 24 35 26 37 +rect 9 194 30 196 +rect 9 189 11 194 +rect 17 189 19 191 +rect 28 185 30 194 +rect 9 175 11 177 +rect 17 172 19 177 +rect 6 170 19 172 +rect 6 167 8 170 +rect 13 162 15 164 +rect 27 162 33 164 +rect 9 148 11 150 +rect 17 148 19 150 +rect 9 132 11 144 +rect 17 132 19 144 +rect 9 124 11 125 +rect 2 122 11 124 +rect 17 124 19 125 +rect 17 122 28 124 +rect 2 75 4 122 +rect 10 114 12 116 +rect 18 114 20 116 +rect 10 89 12 107 +rect 18 106 20 107 +rect 16 104 20 106 +rect 16 92 18 104 +rect 26 100 28 122 +rect 27 96 28 100 +rect 16 90 20 92 +rect 18 89 20 90 +rect 10 81 12 82 +rect 10 79 13 81 +rect 2 71 3 75 +rect 11 71 13 79 +rect 18 79 20 82 +rect 18 77 23 79 +rect 31 71 33 162 +rect 11 69 33 71 +rect 11 67 13 69 +rect 8 65 13 67 +rect 8 64 10 65 +rect 16 64 18 66 +rect 24 64 26 66 +rect 8 45 10 57 +rect 16 52 18 57 +rect 24 52 26 60 +rect 16 50 26 52 +rect 16 45 18 50 +rect 24 45 26 50 +rect 8 28 10 38 +rect 16 14 18 38 +rect 24 36 26 38 << polycontact >> -rect 28 180 32 184 -rect 4 162 8 166 -rect 23 95 27 99 -rect 3 70 7 74 -rect 23 74 27 78 -rect 7 23 11 27 -rect 16 9 20 13 +rect 28 181 32 185 +rect 4 163 8 167 +rect 23 96 27 100 +rect 3 71 7 75 +rect 23 75 27 79 +rect 7 24 11 28 +rect 16 10 20 14 << metal1 >> -rect 5 188 8 190 -rect 32 180 33 184 -rect 13 168 16 176 -rect 13 164 15 168 -rect 4 147 8 162 -rect 12 155 16 156 -rect 12 147 16 151 -rect 4 131 8 143 -rect 20 141 24 143 -rect 30 141 33 180 -rect 20 137 33 141 -rect 20 131 24 137 -rect 12 121 16 124 -rect 0 117 8 121 -rect 16 117 36 121 -rect 13 113 17 117 -rect 5 103 9 106 -rect 21 103 25 106 -rect 5 100 25 103 -rect 5 88 9 100 -rect 21 99 25 100 -rect 21 95 23 99 -rect 25 81 26 85 -rect 4 63 7 70 -rect 27 63 31 78 -rect 3 50 7 56 -rect 3 47 15 50 -rect 11 44 15 47 -rect 27 44 31 59 -rect 3 34 7 37 -rect 19 34 23 37 -rect 0 30 3 34 -rect 7 30 8 34 -rect 12 30 36 34 -rect 0 23 7 27 -rect 11 23 36 27 -rect 0 16 32 20 +rect 5 189 8 191 +rect 32 181 33 185 +rect 13 169 16 177 +rect 13 165 15 169 +rect 4 148 8 163 +rect 12 156 16 157 +rect 12 148 16 152 +rect 4 132 8 144 +rect 20 142 24 144 +rect 30 142 33 181 +rect 20 138 33 142 +rect 20 132 24 138 +rect 12 122 16 125 +rect 0 118 8 122 +rect 16 118 36 122 +rect 13 114 17 118 +rect 5 104 9 107 +rect 21 104 25 107 +rect 5 101 25 104 +rect 5 89 9 101 +rect 21 100 25 101 +rect 21 96 23 100 +rect 25 82 26 86 +rect 4 64 7 71 +rect 27 64 31 79 +rect 3 51 7 57 +rect 3 48 15 51 +rect 11 45 15 48 +rect 27 45 31 60 +rect 3 35 7 38 +rect 19 35 23 38 +rect 0 31 3 35 +rect 7 31 8 35 +rect 12 31 36 35 +rect 0 24 7 28 +rect 11 24 36 28 +rect 0 17 32 21 << m2contact >> -rect 5 190 9 194 -rect 20 188 24 192 -rect 11 156 15 160 -rect 8 117 12 121 -rect 30 81 34 85 -rect 19 63 23 67 -rect 8 30 12 34 -rect 32 16 36 20 -rect 12 9 16 13 +rect 5 191 9 195 +rect 20 189 24 193 +rect 11 157 15 161 +rect 8 118 12 122 +rect 30 82 34 86 +rect 19 64 23 68 +rect 8 31 12 35 +rect 32 17 36 21 +rect 12 10 16 14 << metal2 >> -rect 10 194 14 201 -rect 9 190 14 194 -rect 20 192 24 201 -rect 20 176 24 188 -rect 32 160 36 195 -rect 15 156 36 160 -rect 8 34 12 117 -rect 32 85 36 156 -rect 34 81 36 85 -rect 32 71 36 81 -rect 19 67 36 71 -rect 32 20 36 67 -rect 16 9 20 13 -rect 15 0 19 9 -rect 32 0 36 16 +rect 10 195 14 202 +rect 9 191 14 195 +rect 20 193 24 202 +rect 20 177 24 189 +rect 32 161 36 196 +rect 15 157 36 161 +rect 8 35 12 118 +rect 32 86 36 157 +rect 34 82 36 86 +rect 32 72 36 82 +rect 19 68 36 72 +rect 32 21 36 68 +rect 16 10 20 14 +rect 15 0 19 10 +rect 32 0 36 17 << m3p >> -rect 0 0 34 201 +rect 0 0 34 202 << labels >> -rlabel metal1 0 30 0 30 1 vdd -rlabel metal1 0 16 0 16 7 gnd -rlabel metal2 15 0 15 0 1 din -rlabel metal1 0 23 3 24 3 en -rlabel metal2 11 197 11 197 5 BL -rlabel metal2 21 197 21 197 5 BR +rlabel metal1 0 31 0 31 1 vdd +rlabel metal1 0 17 0 17 7 gnd +rlabel metal2 15 1 15 1 1 din +rlabel metal1 2 25 2 25 3 en +rlabel metal2 12 200 12 200 5 bl +rlabel metal2 22 200 22 200 5 br << end >> diff --git a/technology/scn3me_subm/sp_lib/write_driver.sp b/technology/scn3me_subm/sp_lib/write_driver.sp index 45fa5097..0d244673 100644 --- a/technology/scn3me_subm/sp_lib/write_driver.sp +++ b/technology/scn3me_subm/sp_lib/write_driver.sp @@ -1,5 +1,5 @@ *********************** Write_Driver ****************************** -.SUBCKT write_driver din bl br wen vdd gnd +.SUBCKT write_driver din bl br en vdd gnd **** Inverter to conver Data_in to data_in_bar ****** M_1 net_3 din gnd gnd n W='1.2*1u' L=0.6u From 64546ad3dd1577723464a3095d19670898e6d6a3 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Thu, 1 Feb 2018 05:38:48 -0800 Subject: [PATCH 10/95] Change wen to en in spice lib files. Check lvs report insted of stdout with netgen. --- compiler/verify/magic.py | 16 +++++++--------- technology/freepdk45/sp_lib/write_driver.sp | 12 ++++++------ technology/scn3me_subm/sp_lib/write_driver.sp | 10 +++++----- 3 files changed, 18 insertions(+), 20 deletions(-) diff --git a/compiler/verify/magic.py b/compiler/verify/magic.py index 623c1c52..f521fac9 100644 --- a/compiler/verify/magic.py +++ b/compiler/verify/magic.py @@ -193,6 +193,7 @@ def run_lvs(cell_name, gds_name, sp_name): os.chdir(OPTS.openram_temp) errfile = "{0}{1}.lvs.err".format(OPTS.openram_temp, cell_name) outfile = "{0}{1}.lvs.out".format(OPTS.openram_temp, cell_name) + resultsfile = "{0}lvs.results".format(OPTS.openram_temp, cell_name) cmd = "{0}run_lvs.sh lvs 2> {1} 1> {2}".format(OPTS.openram_temp, errfile, @@ -202,7 +203,7 @@ def run_lvs(cell_name, gds_name, sp_name): os.chdir(cwd) # check the result for these lines in the summary: - f = open(outfile, "r") + f = open(resultsfile, "r") results = f.readlines() f.close() @@ -213,8 +214,12 @@ def run_lvs(cell_name, gds_name, sp_name): # There were property errors. test = re.compile("Property errors were found.") propertyerrors = filter(test.search, results) + # Require pins to match? + # Cell pin lists for pnand2_1.spice and pnand2_1 altered to match. + test = re.compile(".*altered to match.") + pinerrors = filter(test.search, results) - total_errors = len(propertyerrors) + len(incorrect) + total_errors = len(propertyerrors) + len(incorrect) + len(pinerrors) # If we want to ignore property errors #total_errors = len(incorrect) #if len(propertyerrors)>0: @@ -227,14 +232,7 @@ def run_lvs(cell_name, gds_name, sp_name): if correct == 0: total_errors += 1 - # Require pins to match? - # Cell pin lists for pnand2_1.spice and pnand2_1 altered to match. - if total_errors>0: - # check the result for these lines in the summary: - f = open("{}lvs.results".format(OPTS.openram_temp), "r") - results = f.readlines() - f.close() # Just print out the whole file, it is short. for e in results: debug.info(1,e.strip("\n")) diff --git a/technology/freepdk45/sp_lib/write_driver.sp b/technology/freepdk45/sp_lib/write_driver.sp index 1267eb91..6f2451aa 100644 --- a/technology/freepdk45/sp_lib/write_driver.sp +++ b/technology/freepdk45/sp_lib/write_driver.sp @@ -3,19 +3,19 @@ *inverters for enable and data input minP bl_bar din vdd vdd pmos_vtg w=360.000000n l=50.000000n minN bl_bar din gnd gnd nmos_vtg w=180.000000n l=50.000000n -moutP wen_bar wen vdd vdd pmos_vtg w=360.000000n l=50.000000n -moutN wen_bar wen gnd gnd nmos_vtg w=180.000000n l=50.000000n +moutP en_bar en vdd vdd pmos_vtg w=360.000000n l=50.000000n +moutN en_bar en gnd gnd nmos_vtg w=180.000000n l=50.000000n *tristate for BL mout0P int1 bl_bar vdd vdd pmos_vtg w=360.000000n l=50.000000n -mout0P2 bl wen_bar int1 vdd pmos_vtg w=360.000000n l=50.000000n -mout0N bl wen int2 gnd nmos_vtg w=180.000000n l=50.000000n +mout0P2 bl en_bar int1 vdd pmos_vtg w=360.000000n l=50.000000n +mout0N bl en int2 gnd nmos_vtg w=180.000000n l=50.000000n mout0N2 int2 bl_bar gnd gnd nmos_vtg w=180.000000n l=50.000000n *tristate for BR mout1P int3 din vdd vdd pmos_vtg w=360.000000n l=50.000000n -mout1P2 br wen_bar int3 vdd pmos_vtg w=360.000000n l=50.000000n -mout1N br wen int4 gnd nmos_vtg w=180.000000n l=50.000000n +mout1P2 br en_bar int3 vdd pmos_vtg w=360.000000n l=50.000000n +mout1N br en int4 gnd nmos_vtg w=180.000000n l=50.000000n mout1N2 int4 din gnd gnd nmos_vtg w=180.000000n l=50.000000n .ENDS write_driver diff --git a/technology/scn3me_subm/sp_lib/write_driver.sp b/technology/scn3me_subm/sp_lib/write_driver.sp index 0d244673..a203d1ba 100644 --- a/technology/scn3me_subm/sp_lib/write_driver.sp +++ b/technology/scn3me_subm/sp_lib/write_driver.sp @@ -6,9 +6,9 @@ M_1 net_3 din gnd gnd n W='1.2*1u' L=0.6u M_2 net_3 din vdd vdd p W='2.1*1u' L=0.6u **** 2input nand gate follwed by inverter to drive BL ****** -M_3 net_2 wen net_7 gnd n W='2.1*1u' L=0.6u +M_3 net_2 en net_7 gnd n W='2.1*1u' L=0.6u M_4 net_7 din gnd gnd n W='2.1*1u' L=0.6u -M_5 net_2 wen vdd vdd p W='2.1*1u' L=0.6u +M_5 net_2 en vdd vdd p W='2.1*1u' L=0.6u M_6 net_2 din vdd vdd p W='2.1*1u' L=0.6u @@ -17,8 +17,8 @@ M_8 net_1 net_2 gnd gnd n W='1.2*1u' L=0.6u **** 2input nand gate follwed by inverter to drive BR****** -M_9 net_4 wen vdd vdd p W='2.1*1u' L=0.6u -M_10 net_4 wen net_8 gnd n W='2.1*1u' L=0.6u +M_9 net_4 en vdd vdd p W='2.1*1u' L=0.6u +M_10 net_4 en net_8 gnd n W='2.1*1u' L=0.6u M_11 net_8 net_3 gnd gnd n W='2.1*1u' L=0.6u M_12 net_4 net_3 vdd vdd p W='2.1*1u' L=0.6u @@ -29,7 +29,7 @@ M_14 net_6 net_4 gnd gnd n W='1.2*1u' L=0.6u M_15 bl net_6 net_5 gnd n W='3.6*1u' L=0.6u M_16 br net_1 net_5 gnd n W='3.6*1u' L=0.6u -M_17 net_5 wen gnd gnd n W='3.6*1u' L=0.6u +M_17 net_5 en gnd gnd n W='3.6*1u' L=0.6u From 8ef1e0af2c8fe204fac6b4195cf06f6a918b4102 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Thu, 1 Feb 2018 05:43:37 -0800 Subject: [PATCH 11/95] Replace LEF files with new changes. --- .../tests/golden/sram_2_16_1_freepdk45.lef | 1995 +-- .../tests/golden/sram_2_16_1_scn3me_subm.lef | 10180 ++++++++-------- 2 files changed, 6087 insertions(+), 6088 deletions(-) diff --git a/compiler/tests/golden/sram_2_16_1_freepdk45.lef b/compiler/tests/golden/sram_2_16_1_freepdk45.lef index 8d3aa365..88cd5035 100644 --- a/compiler/tests/golden/sram_2_16_1_freepdk45.lef +++ b/compiler/tests/golden/sram_2_16_1_freepdk45.lef @@ -81,7 +81,7 @@ MACRO sram_2_16_1_freepdk45 DIRECTION INPUT ; PORT LAYER metal1 ; - RECT 3385.0 19230.0 3520.0 19420.0 ; + RECT 3340.0 19230.0 3475.0 19420.0 ; END END clk PIN vdd @@ -90,9 +90,9 @@ MACRO sram_2_16_1_freepdk45 SHAPE ABUTMENT ; PORT LAYER metal1 ; - RECT 16125.0 0.0 16475.0 42270.0 ; + RECT 16125.0 0.0 16475.0 42337.5 ; LAYER metal1 ; - RECT 4175.0 0.0 4525.0 42270.0 ; + RECT 4175.0 0.0 4525.0 42337.5 ; END END vdd PIN gnd @@ -101,171 +101,171 @@ MACRO sram_2_16_1_freepdk45 SHAPE ABUTMENT ; PORT LAYER metal2 ; - RECT 12427.5 0.0 12777.5 42270.0 ; + RECT 12427.5 0.0 12777.5 42337.5 ; END END gnd OBS LAYER metal1 ; RECT 4317.5 26935.0 4382.5 27140.0 ; - RECT 8475.0 19640.0 8540.0 19705.0 ; + RECT 8475.0 19685.0 8540.0 19750.0 ; RECT 8475.0 19412.5 8540.0 19477.5 ; - RECT 8405.0 19640.0 8507.5 19705.0 ; - RECT 8475.0 19445.0 8540.0 19672.5 ; + RECT 8405.0 19685.0 8507.5 19750.0 ; + RECT 8475.0 19445.0 8540.0 19717.5 ; RECT 8507.5 19412.5 8610.0 19477.5 ; - RECT 12632.5 19640.0 12697.5 19705.0 ; + RECT 12632.5 19685.0 12697.5 19750.0 ; RECT 12632.5 19197.5 12697.5 19262.5 ; - RECT 10900.0 19640.0 12665.0 19705.0 ; - RECT 12632.5 19230.0 12697.5 19672.5 ; + RECT 10900.0 19685.0 12665.0 19750.0 ; + RECT 12632.5 19230.0 12697.5 19717.5 ; RECT 12665.0 19197.5 14430.0 19262.5 ; - RECT 8475.0 21165.0 8540.0 21230.0 ; + RECT 8475.0 21120.0 8540.0 21185.0 ; RECT 8475.0 21392.5 8540.0 21457.5 ; - RECT 8405.0 21165.0 8507.5 21230.0 ; - RECT 8475.0 21197.5 8540.0 21425.0 ; + RECT 8405.0 21120.0 8507.5 21185.0 ; + RECT 8475.0 21152.5 8540.0 21425.0 ; RECT 8507.5 21392.5 8610.0 21457.5 ; - RECT 12632.5 21165.0 12697.5 21230.0 ; + RECT 12632.5 21120.0 12697.5 21185.0 ; RECT 12632.5 21607.5 12697.5 21672.5 ; - RECT 10900.0 21165.0 12665.0 21230.0 ; - RECT 12632.5 21197.5 12697.5 21640.0 ; + RECT 10900.0 21120.0 12665.0 21185.0 ; + RECT 12632.5 21152.5 12697.5 21640.0 ; RECT 12665.0 21607.5 14430.0 21672.5 ; - RECT 8475.0 22330.0 8540.0 22395.0 ; + RECT 8475.0 22375.0 8540.0 22440.0 ; RECT 8475.0 22102.5 8540.0 22167.5 ; - RECT 8405.0 22330.0 8507.5 22395.0 ; - RECT 8475.0 22135.0 8540.0 22362.5 ; + RECT 8405.0 22375.0 8507.5 22440.0 ; + RECT 8475.0 22135.0 8540.0 22407.5 ; RECT 8507.5 22102.5 8610.0 22167.5 ; - RECT 12632.5 22330.0 12697.5 22395.0 ; + RECT 12632.5 22375.0 12697.5 22440.0 ; RECT 12632.5 21887.5 12697.5 21952.5 ; - RECT 10900.0 22330.0 12665.0 22395.0 ; - RECT 12632.5 21920.0 12697.5 22362.5 ; + RECT 10900.0 22375.0 12665.0 22440.0 ; + RECT 12632.5 21920.0 12697.5 22407.5 ; RECT 12665.0 21887.5 14430.0 21952.5 ; - RECT 8475.0 23855.0 8540.0 23920.0 ; + RECT 8475.0 23810.0 8540.0 23875.0 ; RECT 8475.0 24082.5 8540.0 24147.5 ; - RECT 8405.0 23855.0 8507.5 23920.0 ; - RECT 8475.0 23887.5 8540.0 24115.0 ; + RECT 8405.0 23810.0 8507.5 23875.0 ; + RECT 8475.0 23842.5 8540.0 24115.0 ; RECT 8507.5 24082.5 8610.0 24147.5 ; - RECT 12632.5 23855.0 12697.5 23920.0 ; + RECT 12632.5 23810.0 12697.5 23875.0 ; RECT 12632.5 24297.5 12697.5 24362.5 ; - RECT 10900.0 23855.0 12665.0 23920.0 ; - RECT 12632.5 23887.5 12697.5 24330.0 ; + RECT 10900.0 23810.0 12665.0 23875.0 ; + RECT 12632.5 23842.5 12697.5 24330.0 ; RECT 12665.0 24297.5 14430.0 24362.5 ; - RECT 8475.0 25020.0 8540.0 25085.0 ; + RECT 8475.0 25065.0 8540.0 25130.0 ; RECT 8475.0 24792.5 8540.0 24857.5 ; - RECT 8405.0 25020.0 8507.5 25085.0 ; - RECT 8475.0 24825.0 8540.0 25052.5 ; + RECT 8405.0 25065.0 8507.5 25130.0 ; + RECT 8475.0 24825.0 8540.0 25097.5 ; RECT 8507.5 24792.5 8610.0 24857.5 ; - RECT 12632.5 25020.0 12697.5 25085.0 ; + RECT 12632.5 25065.0 12697.5 25130.0 ; RECT 12632.5 24577.5 12697.5 24642.5 ; - RECT 10900.0 25020.0 12665.0 25085.0 ; - RECT 12632.5 24610.0 12697.5 25052.5 ; + RECT 10900.0 25065.0 12665.0 25130.0 ; + RECT 12632.5 24610.0 12697.5 25097.5 ; RECT 12665.0 24577.5 14430.0 24642.5 ; - RECT 8475.0 26545.0 8540.0 26610.0 ; + RECT 8475.0 26500.0 8540.0 26565.0 ; RECT 8475.0 26772.5 8540.0 26837.5 ; - RECT 8405.0 26545.0 8507.5 26610.0 ; - RECT 8475.0 26577.5 8540.0 26805.0 ; + RECT 8405.0 26500.0 8507.5 26565.0 ; + RECT 8475.0 26532.5 8540.0 26805.0 ; RECT 8507.5 26772.5 8610.0 26837.5 ; - RECT 12632.5 26545.0 12697.5 26610.0 ; + RECT 12632.5 26500.0 12697.5 26565.0 ; RECT 12632.5 26987.5 12697.5 27052.5 ; - RECT 10900.0 26545.0 12665.0 26610.0 ; - RECT 12632.5 26577.5 12697.5 27020.0 ; + RECT 10900.0 26500.0 12665.0 26565.0 ; + RECT 12632.5 26532.5 12697.5 27020.0 ; RECT 12665.0 26987.5 14430.0 27052.5 ; - RECT 8475.0 27710.0 8540.0 27775.0 ; + RECT 8475.0 27755.0 8540.0 27820.0 ; RECT 8475.0 27482.5 8540.0 27547.5 ; - RECT 8405.0 27710.0 8507.5 27775.0 ; - RECT 8475.0 27515.0 8540.0 27742.5 ; + RECT 8405.0 27755.0 8507.5 27820.0 ; + RECT 8475.0 27515.0 8540.0 27787.5 ; RECT 8507.5 27482.5 8610.0 27547.5 ; - RECT 12632.5 27710.0 12697.5 27775.0 ; + RECT 12632.5 27755.0 12697.5 27820.0 ; RECT 12632.5 27267.5 12697.5 27332.5 ; - RECT 10900.0 27710.0 12665.0 27775.0 ; - RECT 12632.5 27300.0 12697.5 27742.5 ; + RECT 10900.0 27755.0 12665.0 27820.0 ; + RECT 12632.5 27300.0 12697.5 27787.5 ; RECT 12665.0 27267.5 14430.0 27332.5 ; - RECT 8475.0 29235.0 8540.0 29300.0 ; + RECT 8475.0 29190.0 8540.0 29255.0 ; RECT 8475.0 29462.5 8540.0 29527.5 ; - RECT 8405.0 29235.0 8507.5 29300.0 ; - RECT 8475.0 29267.5 8540.0 29495.0 ; + RECT 8405.0 29190.0 8507.5 29255.0 ; + RECT 8475.0 29222.5 8540.0 29495.0 ; RECT 8507.5 29462.5 8610.0 29527.5 ; - RECT 12632.5 29235.0 12697.5 29300.0 ; + RECT 12632.5 29190.0 12697.5 29255.0 ; RECT 12632.5 29677.5 12697.5 29742.5 ; - RECT 10900.0 29235.0 12665.0 29300.0 ; - RECT 12632.5 29267.5 12697.5 29710.0 ; + RECT 10900.0 29190.0 12665.0 29255.0 ; + RECT 12632.5 29222.5 12697.5 29710.0 ; RECT 12665.0 29677.5 14430.0 29742.5 ; - RECT 8475.0 30400.0 8540.0 30465.0 ; + RECT 8475.0 30445.0 8540.0 30510.0 ; RECT 8475.0 30172.5 8540.0 30237.5 ; - RECT 8405.0 30400.0 8507.5 30465.0 ; - RECT 8475.0 30205.0 8540.0 30432.5 ; + RECT 8405.0 30445.0 8507.5 30510.0 ; + RECT 8475.0 30205.0 8540.0 30477.5 ; RECT 8507.5 30172.5 8610.0 30237.5 ; - RECT 12632.5 30400.0 12697.5 30465.0 ; + RECT 12632.5 30445.0 12697.5 30510.0 ; RECT 12632.5 29957.5 12697.5 30022.5 ; - RECT 10900.0 30400.0 12665.0 30465.0 ; - RECT 12632.5 29990.0 12697.5 30432.5 ; + RECT 10900.0 30445.0 12665.0 30510.0 ; + RECT 12632.5 29990.0 12697.5 30477.5 ; RECT 12665.0 29957.5 14430.0 30022.5 ; - RECT 8475.0 31925.0 8540.0 31990.0 ; + RECT 8475.0 31880.0 8540.0 31945.0 ; RECT 8475.0 32152.5 8540.0 32217.5 ; - RECT 8405.0 31925.0 8507.5 31990.0 ; - RECT 8475.0 31957.5 8540.0 32185.0 ; + RECT 8405.0 31880.0 8507.5 31945.0 ; + RECT 8475.0 31912.5 8540.0 32185.0 ; RECT 8507.5 32152.5 8610.0 32217.5 ; - RECT 12632.5 31925.0 12697.5 31990.0 ; + RECT 12632.5 31880.0 12697.5 31945.0 ; RECT 12632.5 32367.5 12697.5 32432.5 ; - RECT 10900.0 31925.0 12665.0 31990.0 ; - RECT 12632.5 31957.5 12697.5 32400.0 ; + RECT 10900.0 31880.0 12665.0 31945.0 ; + RECT 12632.5 31912.5 12697.5 32400.0 ; RECT 12665.0 32367.5 14430.0 32432.5 ; - RECT 8475.0 33090.0 8540.0 33155.0 ; + RECT 8475.0 33135.0 8540.0 33200.0 ; RECT 8475.0 32862.5 8540.0 32927.5 ; - RECT 8405.0 33090.0 8507.5 33155.0 ; - RECT 8475.0 32895.0 8540.0 33122.5 ; + RECT 8405.0 33135.0 8507.5 33200.0 ; + RECT 8475.0 32895.0 8540.0 33167.5 ; RECT 8507.5 32862.5 8610.0 32927.5 ; - RECT 12632.5 33090.0 12697.5 33155.0 ; + RECT 12632.5 33135.0 12697.5 33200.0 ; RECT 12632.5 32647.5 12697.5 32712.5 ; - RECT 10900.0 33090.0 12665.0 33155.0 ; - RECT 12632.5 32680.0 12697.5 33122.5 ; + RECT 10900.0 33135.0 12665.0 33200.0 ; + RECT 12632.5 32680.0 12697.5 33167.5 ; RECT 12665.0 32647.5 14430.0 32712.5 ; - RECT 8475.0 34615.0 8540.0 34680.0 ; + RECT 8475.0 34570.0 8540.0 34635.0 ; RECT 8475.0 34842.5 8540.0 34907.5 ; - RECT 8405.0 34615.0 8507.5 34680.0 ; - RECT 8475.0 34647.5 8540.0 34875.0 ; + RECT 8405.0 34570.0 8507.5 34635.0 ; + RECT 8475.0 34602.5 8540.0 34875.0 ; RECT 8507.5 34842.5 8610.0 34907.5 ; - RECT 12632.5 34615.0 12697.5 34680.0 ; + RECT 12632.5 34570.0 12697.5 34635.0 ; RECT 12632.5 35057.5 12697.5 35122.5 ; - RECT 10900.0 34615.0 12665.0 34680.0 ; - RECT 12632.5 34647.5 12697.5 35090.0 ; + RECT 10900.0 34570.0 12665.0 34635.0 ; + RECT 12632.5 34602.5 12697.5 35090.0 ; RECT 12665.0 35057.5 14430.0 35122.5 ; - RECT 8475.0 35780.0 8540.0 35845.0 ; + RECT 8475.0 35825.0 8540.0 35890.0 ; RECT 8475.0 35552.5 8540.0 35617.5 ; - RECT 8405.0 35780.0 8507.5 35845.0 ; - RECT 8475.0 35585.0 8540.0 35812.5 ; + RECT 8405.0 35825.0 8507.5 35890.0 ; + RECT 8475.0 35585.0 8540.0 35857.5 ; RECT 8507.5 35552.5 8610.0 35617.5 ; - RECT 12632.5 35780.0 12697.5 35845.0 ; + RECT 12632.5 35825.0 12697.5 35890.0 ; RECT 12632.5 35337.5 12697.5 35402.5 ; - RECT 10900.0 35780.0 12665.0 35845.0 ; - RECT 12632.5 35370.0 12697.5 35812.5 ; + RECT 10900.0 35825.0 12665.0 35890.0 ; + RECT 12632.5 35370.0 12697.5 35857.5 ; RECT 12665.0 35337.5 14430.0 35402.5 ; - RECT 8475.0 37305.0 8540.0 37370.0 ; + RECT 8475.0 37260.0 8540.0 37325.0 ; RECT 8475.0 37532.5 8540.0 37597.5 ; - RECT 8405.0 37305.0 8507.5 37370.0 ; - RECT 8475.0 37337.5 8540.0 37565.0 ; + RECT 8405.0 37260.0 8507.5 37325.0 ; + RECT 8475.0 37292.5 8540.0 37565.0 ; RECT 8507.5 37532.5 8610.0 37597.5 ; - RECT 12632.5 37305.0 12697.5 37370.0 ; + RECT 12632.5 37260.0 12697.5 37325.0 ; RECT 12632.5 37747.5 12697.5 37812.5 ; - RECT 10900.0 37305.0 12665.0 37370.0 ; - RECT 12632.5 37337.5 12697.5 37780.0 ; + RECT 10900.0 37260.0 12665.0 37325.0 ; + RECT 12632.5 37292.5 12697.5 37780.0 ; RECT 12665.0 37747.5 14430.0 37812.5 ; - RECT 8475.0 38470.0 8540.0 38535.0 ; + RECT 8475.0 38515.0 8540.0 38580.0 ; RECT 8475.0 38242.5 8540.0 38307.5 ; - RECT 8405.0 38470.0 8507.5 38535.0 ; - RECT 8475.0 38275.0 8540.0 38502.5 ; + RECT 8405.0 38515.0 8507.5 38580.0 ; + RECT 8475.0 38275.0 8540.0 38547.5 ; RECT 8507.5 38242.5 8610.0 38307.5 ; - RECT 12632.5 38470.0 12697.5 38535.0 ; + RECT 12632.5 38515.0 12697.5 38580.0 ; RECT 12632.5 38027.5 12697.5 38092.5 ; - RECT 10900.0 38470.0 12665.0 38535.0 ; - RECT 12632.5 38060.0 12697.5 38502.5 ; + RECT 10900.0 38515.0 12665.0 38580.0 ; + RECT 12632.5 38060.0 12697.5 38547.5 ; RECT 12665.0 38027.5 14430.0 38092.5 ; - RECT 8475.0 39995.0 8540.0 40060.0 ; + RECT 8475.0 39950.0 8540.0 40015.0 ; RECT 8475.0 40222.5 8540.0 40287.5 ; - RECT 8405.0 39995.0 8507.5 40060.0 ; - RECT 8475.0 40027.5 8540.0 40255.0 ; + RECT 8405.0 39950.0 8507.5 40015.0 ; + RECT 8475.0 39982.5 8540.0 40255.0 ; RECT 8507.5 40222.5 8610.0 40287.5 ; - RECT 12632.5 39995.0 12697.5 40060.0 ; + RECT 12632.5 39950.0 12697.5 40015.0 ; RECT 12632.5 40437.5 12697.5 40502.5 ; - RECT 10900.0 39995.0 12665.0 40060.0 ; - RECT 12632.5 40027.5 12697.5 40470.0 ; + RECT 10900.0 39950.0 12665.0 40015.0 ; + RECT 12632.5 39982.5 12697.5 40470.0 ; RECT 12665.0 40437.5 14430.0 40502.5 ; RECT 9065.0 19057.5 14520.0 19122.5 ; RECT 9065.0 21747.5 14520.0 21812.5 ; @@ -320,14 +320,14 @@ MACRO sram_2_16_1_freepdk45 RECT 13632.5 3795.0 14520.0 3860.0 ; RECT 13222.5 1610.0 14520.0 1675.0 ; RECT 13427.5 3157.5 14520.0 3222.5 ; - RECT 13632.5 41477.5 14520.0 41542.5 ; + RECT 13632.5 41587.5 14520.0 41652.5 ; RECT 13837.5 10297.5 14520.0 10362.5 ; RECT 14042.5 14322.5 14520.0 14387.5 ; RECT 4860.0 8092.5 4925.0 8157.5 ; RECT 4860.0 7920.0 4925.0 8125.0 ; RECT 4892.5 8092.5 13017.5 8157.5 ; RECT 8840.0 40782.5 13082.5 40847.5 ; - RECT 14520.0 42205.0 16125.0 42270.0 ; + RECT 14520.0 42272.5 16125.0 42337.5 ; RECT 14520.0 18895.0 16125.0 18960.0 ; RECT 14520.0 10427.5 16125.0 10492.5 ; RECT 14520.0 6800.0 16125.0 6865.0 ; @@ -404,50 +404,50 @@ MACRO sram_2_16_1_freepdk45 RECT 14430.0 35197.5 16020.0 35262.5 ; RECT 14430.0 37887.5 16020.0 37952.5 ; RECT 14430.0 40577.5 16020.0 40642.5 ; - RECT 14872.5 41767.5 14937.5 42270.0 ; - RECT 14682.5 41182.5 14747.5 41317.5 ; - RECT 14872.5 41182.5 14937.5 41317.5 ; - RECT 14872.5 41182.5 14937.5 41317.5 ; - RECT 14682.5 41182.5 14747.5 41317.5 ; - RECT 14682.5 41767.5 14747.5 41902.5 ; - RECT 14872.5 41767.5 14937.5 41902.5 ; - RECT 14872.5 41767.5 14937.5 41902.5 ; - RECT 14682.5 41767.5 14747.5 41902.5 ; - RECT 14872.5 41767.5 14937.5 41902.5 ; - RECT 15062.5 41767.5 15127.5 41902.5 ; - RECT 15062.5 41767.5 15127.5 41902.5 ; - RECT 14872.5 41767.5 14937.5 41902.5 ; - RECT 14852.5 41477.5 14717.5 41542.5 ; - RECT 14872.5 42067.5 14937.5 42202.5 ; - RECT 14682.5 41182.5 14747.5 41317.5 ; - RECT 14872.5 41182.5 14937.5 41317.5 ; - RECT 14682.5 41767.5 14747.5 41902.5 ; - RECT 15062.5 41767.5 15127.5 41902.5 ; - RECT 14520.0 41477.5 15225.0 41542.5 ; - RECT 14520.0 42205.0 15225.0 42270.0 ; - RECT 15577.5 41767.5 15642.5 42270.0 ; - RECT 15387.5 41182.5 15452.5 41317.5 ; - RECT 15577.5 41182.5 15642.5 41317.5 ; - RECT 15577.5 41182.5 15642.5 41317.5 ; - RECT 15387.5 41182.5 15452.5 41317.5 ; - RECT 15387.5 41767.5 15452.5 41902.5 ; - RECT 15577.5 41767.5 15642.5 41902.5 ; - RECT 15577.5 41767.5 15642.5 41902.5 ; - RECT 15387.5 41767.5 15452.5 41902.5 ; - RECT 15577.5 41767.5 15642.5 41902.5 ; - RECT 15767.5 41767.5 15832.5 41902.5 ; - RECT 15767.5 41767.5 15832.5 41902.5 ; - RECT 15577.5 41767.5 15642.5 41902.5 ; - RECT 15557.5 41477.5 15422.5 41542.5 ; - RECT 15577.5 42067.5 15642.5 42202.5 ; - RECT 15387.5 41182.5 15452.5 41317.5 ; - RECT 15577.5 41182.5 15642.5 41317.5 ; - RECT 15387.5 41767.5 15452.5 41902.5 ; - RECT 15767.5 41767.5 15832.5 41902.5 ; - RECT 15225.0 41477.5 15930.0 41542.5 ; - RECT 15225.0 42205.0 15930.0 42270.0 ; - RECT 14520.0 41477.5 15930.0 41542.5 ; - RECT 14520.0 42205.0 15930.0 42270.0 ; + RECT 14872.5 41822.5 14937.5 42337.5 ; + RECT 14682.5 41292.5 14747.5 41427.5 ; + RECT 14872.5 41292.5 14937.5 41427.5 ; + RECT 14872.5 41292.5 14937.5 41427.5 ; + RECT 14682.5 41292.5 14747.5 41427.5 ; + RECT 14682.5 41822.5 14747.5 41957.5 ; + RECT 14872.5 41822.5 14937.5 41957.5 ; + RECT 14872.5 41822.5 14937.5 41957.5 ; + RECT 14682.5 41822.5 14747.5 41957.5 ; + RECT 14872.5 41822.5 14937.5 41957.5 ; + RECT 15062.5 41822.5 15127.5 41957.5 ; + RECT 15062.5 41822.5 15127.5 41957.5 ; + RECT 14872.5 41822.5 14937.5 41957.5 ; + RECT 14852.5 41587.5 14717.5 41652.5 ; + RECT 14872.5 42135.0 14937.5 42270.0 ; + RECT 14682.5 41292.5 14747.5 41427.5 ; + RECT 14872.5 41292.5 14937.5 41427.5 ; + RECT 14682.5 41822.5 14747.5 41957.5 ; + RECT 15062.5 41822.5 15127.5 41957.5 ; + RECT 14520.0 41587.5 15225.0 41652.5 ; + RECT 14520.0 42272.5 15225.0 42337.5 ; + RECT 15577.5 41822.5 15642.5 42337.5 ; + RECT 15387.5 41292.5 15452.5 41427.5 ; + RECT 15577.5 41292.5 15642.5 41427.5 ; + RECT 15577.5 41292.5 15642.5 41427.5 ; + RECT 15387.5 41292.5 15452.5 41427.5 ; + RECT 15387.5 41822.5 15452.5 41957.5 ; + RECT 15577.5 41822.5 15642.5 41957.5 ; + RECT 15577.5 41822.5 15642.5 41957.5 ; + RECT 15387.5 41822.5 15452.5 41957.5 ; + RECT 15577.5 41822.5 15642.5 41957.5 ; + RECT 15767.5 41822.5 15832.5 41957.5 ; + RECT 15767.5 41822.5 15832.5 41957.5 ; + RECT 15577.5 41822.5 15642.5 41957.5 ; + RECT 15557.5 41587.5 15422.5 41652.5 ; + RECT 15577.5 42135.0 15642.5 42270.0 ; + RECT 15387.5 41292.5 15452.5 41427.5 ; + RECT 15577.5 41292.5 15642.5 41427.5 ; + RECT 15387.5 41822.5 15452.5 41957.5 ; + RECT 15767.5 41822.5 15832.5 41957.5 ; + RECT 15225.0 41587.5 15930.0 41652.5 ; + RECT 15225.0 42272.5 15930.0 42337.5 ; + RECT 14520.0 41587.5 15930.0 41652.5 ; + RECT 14520.0 42272.5 15930.0 42337.5 ; RECT 14520.0 14205.0 15225.0 19090.0 ; RECT 15225.0 14205.0 15930.0 19090.0 ; RECT 14520.0 14322.5 15930.0 14387.5 ; @@ -473,93 +473,93 @@ MACRO sram_2_16_1_freepdk45 RECT 14520.0 1805.0 15930.0 1740.0 ; RECT 14520.0 3092.5 15930.0 3027.5 ; RECT 7895.0 19697.5 7960.0 19762.5 ; - RECT 7895.0 19640.0 7960.0 19705.0 ; + RECT 7895.0 19685.0 7960.0 19750.0 ; RECT 7677.5 19697.5 7927.5 19762.5 ; - RECT 7895.0 19672.5 7960.0 19730.0 ; - RECT 7927.5 19640.0 8175.0 19705.0 ; + RECT 7895.0 19717.5 7960.0 19730.0 ; + RECT 7927.5 19685.0 8175.0 19750.0 ; RECT 7895.0 21107.5 7960.0 21172.5 ; - RECT 7895.0 21165.0 7960.0 21230.0 ; + RECT 7895.0 21120.0 7960.0 21185.0 ; RECT 7677.5 21107.5 7927.5 21172.5 ; - RECT 7895.0 21140.0 7960.0 21197.5 ; - RECT 7927.5 21165.0 8175.0 21230.0 ; + RECT 7895.0 21140.0 7960.0 21152.5 ; + RECT 7927.5 21120.0 8175.0 21185.0 ; RECT 7895.0 22387.5 7960.0 22452.5 ; - RECT 7895.0 22330.0 7960.0 22395.0 ; + RECT 7895.0 22375.0 7960.0 22440.0 ; RECT 7677.5 22387.5 7927.5 22452.5 ; - RECT 7895.0 22362.5 7960.0 22420.0 ; - RECT 7927.5 22330.0 8175.0 22395.0 ; + RECT 7895.0 22407.5 7960.0 22420.0 ; + RECT 7927.5 22375.0 8175.0 22440.0 ; RECT 7895.0 23797.5 7960.0 23862.5 ; - RECT 7895.0 23855.0 7960.0 23920.0 ; + RECT 7895.0 23810.0 7960.0 23875.0 ; RECT 7677.5 23797.5 7927.5 23862.5 ; - RECT 7895.0 23830.0 7960.0 23887.5 ; - RECT 7927.5 23855.0 8175.0 23920.0 ; + RECT 7895.0 23830.0 7960.0 23842.5 ; + RECT 7927.5 23810.0 8175.0 23875.0 ; RECT 7895.0 25077.5 7960.0 25142.5 ; - RECT 7895.0 25020.0 7960.0 25085.0 ; + RECT 7895.0 25065.0 7960.0 25130.0 ; RECT 7677.5 25077.5 7927.5 25142.5 ; - RECT 7895.0 25052.5 7960.0 25110.0 ; - RECT 7927.5 25020.0 8175.0 25085.0 ; + RECT 7895.0 25097.5 7960.0 25110.0 ; + RECT 7927.5 25065.0 8175.0 25130.0 ; RECT 7895.0 26487.5 7960.0 26552.5 ; - RECT 7895.0 26545.0 7960.0 26610.0 ; + RECT 7895.0 26500.0 7960.0 26565.0 ; RECT 7677.5 26487.5 7927.5 26552.5 ; - RECT 7895.0 26520.0 7960.0 26577.5 ; - RECT 7927.5 26545.0 8175.0 26610.0 ; + RECT 7895.0 26520.0 7960.0 26532.5 ; + RECT 7927.5 26500.0 8175.0 26565.0 ; RECT 7895.0 27767.5 7960.0 27832.5 ; - RECT 7895.0 27710.0 7960.0 27775.0 ; + RECT 7895.0 27755.0 7960.0 27820.0 ; RECT 7677.5 27767.5 7927.5 27832.5 ; - RECT 7895.0 27742.5 7960.0 27800.0 ; - RECT 7927.5 27710.0 8175.0 27775.0 ; + RECT 7895.0 27787.5 7960.0 27800.0 ; + RECT 7927.5 27755.0 8175.0 27820.0 ; RECT 7895.0 29177.5 7960.0 29242.5 ; - RECT 7895.0 29235.0 7960.0 29300.0 ; + RECT 7895.0 29190.0 7960.0 29255.0 ; RECT 7677.5 29177.5 7927.5 29242.5 ; - RECT 7895.0 29210.0 7960.0 29267.5 ; - RECT 7927.5 29235.0 8175.0 29300.0 ; + RECT 7895.0 29210.0 7960.0 29222.5 ; + RECT 7927.5 29190.0 8175.0 29255.0 ; RECT 7895.0 30457.5 7960.0 30522.5 ; - RECT 7895.0 30400.0 7960.0 30465.0 ; + RECT 7895.0 30445.0 7960.0 30510.0 ; RECT 7677.5 30457.5 7927.5 30522.5 ; - RECT 7895.0 30432.5 7960.0 30490.0 ; - RECT 7927.5 30400.0 8175.0 30465.0 ; + RECT 7895.0 30477.5 7960.0 30490.0 ; + RECT 7927.5 30445.0 8175.0 30510.0 ; RECT 7895.0 31867.5 7960.0 31932.5 ; - RECT 7895.0 31925.0 7960.0 31990.0 ; + RECT 7895.0 31880.0 7960.0 31945.0 ; RECT 7677.5 31867.5 7927.5 31932.5 ; - RECT 7895.0 31900.0 7960.0 31957.5 ; - RECT 7927.5 31925.0 8175.0 31990.0 ; + RECT 7895.0 31900.0 7960.0 31912.5 ; + RECT 7927.5 31880.0 8175.0 31945.0 ; RECT 7895.0 33147.5 7960.0 33212.5 ; - RECT 7895.0 33090.0 7960.0 33155.0 ; + RECT 7895.0 33135.0 7960.0 33200.0 ; RECT 7677.5 33147.5 7927.5 33212.5 ; - RECT 7895.0 33122.5 7960.0 33180.0 ; - RECT 7927.5 33090.0 8175.0 33155.0 ; + RECT 7895.0 33167.5 7960.0 33180.0 ; + RECT 7927.5 33135.0 8175.0 33200.0 ; RECT 7895.0 34557.5 7960.0 34622.5 ; - RECT 7895.0 34615.0 7960.0 34680.0 ; + RECT 7895.0 34570.0 7960.0 34635.0 ; RECT 7677.5 34557.5 7927.5 34622.5 ; - RECT 7895.0 34590.0 7960.0 34647.5 ; - RECT 7927.5 34615.0 8175.0 34680.0 ; + RECT 7895.0 34590.0 7960.0 34602.5 ; + RECT 7927.5 34570.0 8175.0 34635.0 ; RECT 7895.0 35837.5 7960.0 35902.5 ; - RECT 7895.0 35780.0 7960.0 35845.0 ; + RECT 7895.0 35825.0 7960.0 35890.0 ; RECT 7677.5 35837.5 7927.5 35902.5 ; - RECT 7895.0 35812.5 7960.0 35870.0 ; - RECT 7927.5 35780.0 8175.0 35845.0 ; + RECT 7895.0 35857.5 7960.0 35870.0 ; + RECT 7927.5 35825.0 8175.0 35890.0 ; RECT 7895.0 37247.5 7960.0 37312.5 ; - RECT 7895.0 37305.0 7960.0 37370.0 ; + RECT 7895.0 37260.0 7960.0 37325.0 ; RECT 7677.5 37247.5 7927.5 37312.5 ; - RECT 7895.0 37280.0 7960.0 37337.5 ; - RECT 7927.5 37305.0 8175.0 37370.0 ; + RECT 7895.0 37280.0 7960.0 37292.5 ; + RECT 7927.5 37260.0 8175.0 37325.0 ; RECT 7895.0 38527.5 7960.0 38592.5 ; - RECT 7895.0 38470.0 7960.0 38535.0 ; + RECT 7895.0 38515.0 7960.0 38580.0 ; RECT 7677.5 38527.5 7927.5 38592.5 ; - RECT 7895.0 38502.5 7960.0 38560.0 ; - RECT 7927.5 38470.0 8175.0 38535.0 ; + RECT 7895.0 38547.5 7960.0 38560.0 ; + RECT 7927.5 38515.0 8175.0 38580.0 ; RECT 7895.0 39937.5 7960.0 40002.5 ; - RECT 7895.0 39995.0 7960.0 40060.0 ; + RECT 7895.0 39950.0 7960.0 40015.0 ; RECT 7677.5 39937.5 7927.5 40002.5 ; - RECT 7895.0 39970.0 7960.0 40027.5 ; - RECT 7927.5 39995.0 8175.0 40060.0 ; - RECT 5765.0 8880.0 7130.0 8945.0 ; - RECT 5940.0 10405.0 7130.0 10470.0 ; - RECT 6115.0 11570.0 7130.0 11635.0 ; - RECT 6290.0 13095.0 7130.0 13160.0 ; - RECT 6465.0 14260.0 7130.0 14325.0 ; - RECT 6640.0 15785.0 7130.0 15850.0 ; - RECT 6815.0 16950.0 7130.0 17015.0 ; - RECT 6990.0 18475.0 7130.0 18540.0 ; + RECT 7895.0 39970.0 7960.0 39982.5 ; + RECT 7927.5 39950.0 8175.0 40015.0 ; + RECT 5765.0 8925.0 7130.0 8990.0 ; + RECT 5940.0 10360.0 7130.0 10425.0 ; + RECT 6115.0 11615.0 7130.0 11680.0 ; + RECT 6290.0 13050.0 7130.0 13115.0 ; + RECT 6465.0 14305.0 7130.0 14370.0 ; + RECT 6640.0 15740.0 7130.0 15805.0 ; + RECT 6815.0 16995.0 7130.0 17060.0 ; + RECT 6990.0 18430.0 7130.0 18495.0 ; RECT 5765.0 19697.5 7190.0 19762.5 ; RECT 6465.0 19482.5 7447.5 19547.5 ; RECT 5765.0 21107.5 7190.0 21172.5 ; @@ -592,53 +592,53 @@ MACRO sram_2_16_1_freepdk45 RECT 6815.0 38312.5 7447.5 38377.5 ; RECT 6290.0 39937.5 7190.0 40002.5 ; RECT 6990.0 40152.5 7447.5 40217.5 ; - RECT 9952.5 8880.0 9887.5 8945.0 ; + RECT 9952.5 8925.0 9887.5 8990.0 ; RECT 9952.5 9447.5 9887.5 9512.5 ; - RECT 10190.0 8880.0 9920.0 8945.0 ; - RECT 9952.5 8912.5 9887.5 9480.0 ; + RECT 10190.0 8925.0 9920.0 8990.0 ; + RECT 9952.5 8957.5 9887.5 9480.0 ; RECT 9920.0 9447.5 9675.0 9512.5 ; - RECT 11060.0 8880.0 10420.0 8945.0 ; - RECT 9952.5 10405.0 9887.5 10470.0 ; + RECT 11060.0 8925.0 10420.0 8990.0 ; + RECT 9952.5 10360.0 9887.5 10425.0 ; RECT 9952.5 10792.5 9887.5 10857.5 ; - RECT 10190.0 10405.0 9920.0 10470.0 ; - RECT 9952.5 10437.5 9887.5 10825.0 ; + RECT 10190.0 10360.0 9920.0 10425.0 ; + RECT 9952.5 10392.5 9887.5 10825.0 ; RECT 9920.0 10792.5 9400.0 10857.5 ; - RECT 10785.0 10405.0 10420.0 10470.0 ; + RECT 10785.0 10360.0 10420.0 10425.0 ; RECT 11060.0 11122.5 9125.0 11187.5 ; RECT 10785.0 12467.5 8850.0 12532.5 ; - RECT 9675.0 8937.5 8550.0 9002.5 ; - RECT 9400.0 8722.5 8292.5 8787.5 ; - RECT 9125.0 10347.5 8550.0 10412.5 ; - RECT 9400.0 10562.5 8292.5 10627.5 ; - RECT 9675.0 11627.5 8550.0 11692.5 ; - RECT 8850.0 11412.5 8292.5 11477.5 ; - RECT 9125.0 13037.5 8550.0 13102.5 ; - RECT 8850.0 13252.5 8292.5 13317.5 ; + RECT 9675.0 8722.5 8292.5 8787.5 ; + RECT 9400.0 8937.5 8550.0 9002.5 ; + RECT 9125.0 10562.5 8292.5 10627.5 ; + RECT 9400.0 10347.5 8550.0 10412.5 ; + RECT 9675.0 11412.5 8292.5 11477.5 ; + RECT 8850.0 11627.5 8550.0 11692.5 ; + RECT 9125.0 13252.5 8292.5 13317.5 ; + RECT 8850.0 13037.5 8550.0 13102.5 ; RECT 7845.0 8937.5 7780.0 9002.5 ; - RECT 7845.0 8880.0 7780.0 8945.0 ; + RECT 7845.0 8925.0 7780.0 8990.0 ; RECT 8062.5 8937.5 7812.5 9002.5 ; - RECT 7845.0 8912.5 7780.0 8970.0 ; - RECT 7812.5 8880.0 7565.0 8945.0 ; + RECT 7845.0 8957.5 7780.0 8970.0 ; + RECT 7812.5 8925.0 7565.0 8990.0 ; RECT 7845.0 10347.5 7780.0 10412.5 ; - RECT 7845.0 10405.0 7780.0 10470.0 ; + RECT 7845.0 10360.0 7780.0 10425.0 ; RECT 8062.5 10347.5 7812.5 10412.5 ; - RECT 7845.0 10380.0 7780.0 10437.5 ; - RECT 7812.5 10405.0 7565.0 10470.0 ; + RECT 7845.0 10380.0 7780.0 10392.5 ; + RECT 7812.5 10360.0 7565.0 10425.0 ; RECT 7845.0 11627.5 7780.0 11692.5 ; - RECT 7845.0 11570.0 7780.0 11635.0 ; + RECT 7845.0 11615.0 7780.0 11680.0 ; RECT 8062.5 11627.5 7812.5 11692.5 ; - RECT 7845.0 11602.5 7780.0 11660.0 ; - RECT 7812.5 11570.0 7565.0 11635.0 ; + RECT 7845.0 11647.5 7780.0 11660.0 ; + RECT 7812.5 11615.0 7565.0 11680.0 ; RECT 7845.0 13037.5 7780.0 13102.5 ; - RECT 7845.0 13095.0 7780.0 13160.0 ; + RECT 7845.0 13050.0 7780.0 13115.0 ; RECT 8062.5 13037.5 7812.5 13102.5 ; - RECT 7845.0 13070.0 7780.0 13127.5 ; - RECT 7812.5 13095.0 7565.0 13160.0 ; + RECT 7845.0 13070.0 7780.0 13082.5 ; + RECT 7812.5 13050.0 7565.0 13115.0 ; RECT 10117.5 9490.0 10052.5 9675.0 ; RECT 10117.5 8330.0 10052.5 8515.0 ; RECT 10477.5 8447.5 10412.5 8297.5 ; RECT 10477.5 9332.5 10412.5 9707.5 ; - RECT 10287.5 8582.5 10222.5 9332.5 ; + RECT 10287.5 8447.5 10222.5 9332.5 ; RECT 10477.5 9332.5 10412.5 9467.5 ; RECT 10287.5 9332.5 10222.5 9467.5 ; RECT 10287.5 9332.5 10222.5 9467.5 ; @@ -649,16 +649,16 @@ MACRO sram_2_16_1_freepdk45 RECT 10477.5 8447.5 10412.5 8582.5 ; RECT 10117.5 9422.5 10052.5 9557.5 ; RECT 10117.5 8447.5 10052.5 8582.5 ; - RECT 10420.0 8845.0 10355.0 8980.0 ; - RECT 10420.0 8845.0 10355.0 8980.0 ; - RECT 10255.0 8880.0 10190.0 8945.0 ; + RECT 10420.0 8890.0 10355.0 9025.0 ; + RECT 10420.0 8890.0 10355.0 9025.0 ; + RECT 10255.0 8925.0 10190.0 8990.0 ; RECT 10545.0 9642.5 9985.0 9707.5 ; RECT 10545.0 8297.5 9985.0 8362.5 ; RECT 10117.5 9860.0 10052.5 9675.0 ; RECT 10117.5 11020.0 10052.5 10835.0 ; RECT 10477.5 10902.5 10412.5 11052.5 ; RECT 10477.5 10017.5 10412.5 9642.5 ; - RECT 10287.5 10767.5 10222.5 10017.5 ; + RECT 10287.5 10902.5 10222.5 10017.5 ; RECT 10477.5 10017.5 10412.5 9882.5 ; RECT 10287.5 10017.5 10222.5 9882.5 ; RECT 10287.5 10017.5 10222.5 9882.5 ; @@ -669,16 +669,16 @@ MACRO sram_2_16_1_freepdk45 RECT 10477.5 10902.5 10412.5 10767.5 ; RECT 10117.5 9927.5 10052.5 9792.5 ; RECT 10117.5 10902.5 10052.5 10767.5 ; - RECT 10420.0 10505.0 10355.0 10370.0 ; - RECT 10420.0 10505.0 10355.0 10370.0 ; - RECT 10255.0 10470.0 10190.0 10405.0 ; + RECT 10420.0 10460.0 10355.0 10325.0 ; + RECT 10420.0 10460.0 10355.0 10325.0 ; + RECT 10255.0 10425.0 10190.0 10360.0 ; RECT 10545.0 9707.5 9985.0 9642.5 ; RECT 10545.0 11052.5 9985.0 10987.5 ; RECT 7262.5 9490.0 7197.5 9675.0 ; RECT 7262.5 8330.0 7197.5 8515.0 ; RECT 7622.5 8447.5 7557.5 8297.5 ; RECT 7622.5 9332.5 7557.5 9707.5 ; - RECT 7432.5 8582.5 7367.5 9332.5 ; + RECT 7432.5 8447.5 7367.5 9332.5 ; RECT 7622.5 9332.5 7557.5 9467.5 ; RECT 7432.5 9332.5 7367.5 9467.5 ; RECT 7432.5 9332.5 7367.5 9467.5 ; @@ -689,16 +689,16 @@ MACRO sram_2_16_1_freepdk45 RECT 7622.5 8447.5 7557.5 8582.5 ; RECT 7262.5 9422.5 7197.5 9557.5 ; RECT 7262.5 8447.5 7197.5 8582.5 ; - RECT 7565.0 8845.0 7500.0 8980.0 ; - RECT 7565.0 8845.0 7500.0 8980.0 ; - RECT 7400.0 8880.0 7335.0 8945.0 ; + RECT 7565.0 8890.0 7500.0 9025.0 ; + RECT 7565.0 8890.0 7500.0 9025.0 ; + RECT 7400.0 8925.0 7335.0 8990.0 ; RECT 7690.0 9642.5 7130.0 9707.5 ; RECT 7690.0 8297.5 7130.0 8362.5 ; RECT 7262.5 9860.0 7197.5 9675.0 ; RECT 7262.5 11020.0 7197.5 10835.0 ; RECT 7622.5 10902.5 7557.5 11052.5 ; RECT 7622.5 10017.5 7557.5 9642.5 ; - RECT 7432.5 10767.5 7367.5 10017.5 ; + RECT 7432.5 10902.5 7367.5 10017.5 ; RECT 7622.5 10017.5 7557.5 9882.5 ; RECT 7432.5 10017.5 7367.5 9882.5 ; RECT 7432.5 10017.5 7367.5 9882.5 ; @@ -709,16 +709,16 @@ MACRO sram_2_16_1_freepdk45 RECT 7622.5 10902.5 7557.5 10767.5 ; RECT 7262.5 9927.5 7197.5 9792.5 ; RECT 7262.5 10902.5 7197.5 10767.5 ; - RECT 7565.0 10505.0 7500.0 10370.0 ; - RECT 7565.0 10505.0 7500.0 10370.0 ; - RECT 7400.0 10470.0 7335.0 10405.0 ; + RECT 7565.0 10460.0 7500.0 10325.0 ; + RECT 7565.0 10460.0 7500.0 10325.0 ; + RECT 7400.0 10425.0 7335.0 10360.0 ; RECT 7690.0 9707.5 7130.0 9642.5 ; RECT 7690.0 11052.5 7130.0 10987.5 ; RECT 7262.5 12180.0 7197.5 12365.0 ; RECT 7262.5 11020.0 7197.5 11205.0 ; RECT 7622.5 11137.5 7557.5 10987.5 ; RECT 7622.5 12022.5 7557.5 12397.5 ; - RECT 7432.5 11272.5 7367.5 12022.5 ; + RECT 7432.5 11137.5 7367.5 12022.5 ; RECT 7622.5 12022.5 7557.5 12157.5 ; RECT 7432.5 12022.5 7367.5 12157.5 ; RECT 7432.5 12022.5 7367.5 12157.5 ; @@ -729,16 +729,16 @@ MACRO sram_2_16_1_freepdk45 RECT 7622.5 11137.5 7557.5 11272.5 ; RECT 7262.5 12112.5 7197.5 12247.5 ; RECT 7262.5 11137.5 7197.5 11272.5 ; - RECT 7565.0 11535.0 7500.0 11670.0 ; - RECT 7565.0 11535.0 7500.0 11670.0 ; - RECT 7400.0 11570.0 7335.0 11635.0 ; + RECT 7565.0 11580.0 7500.0 11715.0 ; + RECT 7565.0 11580.0 7500.0 11715.0 ; + RECT 7400.0 11615.0 7335.0 11680.0 ; RECT 7690.0 12332.5 7130.0 12397.5 ; RECT 7690.0 10987.5 7130.0 11052.5 ; RECT 7262.5 12550.0 7197.5 12365.0 ; RECT 7262.5 13710.0 7197.5 13525.0 ; RECT 7622.5 13592.5 7557.5 13742.5 ; RECT 7622.5 12707.5 7557.5 12332.5 ; - RECT 7432.5 13457.5 7367.5 12707.5 ; + RECT 7432.5 13592.5 7367.5 12707.5 ; RECT 7622.5 12707.5 7557.5 12572.5 ; RECT 7432.5 12707.5 7367.5 12572.5 ; RECT 7432.5 12707.5 7367.5 12572.5 ; @@ -749,9 +749,9 @@ MACRO sram_2_16_1_freepdk45 RECT 7622.5 13592.5 7557.5 13457.5 ; RECT 7262.5 12617.5 7197.5 12482.5 ; RECT 7262.5 13592.5 7197.5 13457.5 ; - RECT 7565.0 13195.0 7500.0 13060.0 ; - RECT 7565.0 13195.0 7500.0 13060.0 ; - RECT 7400.0 13160.0 7335.0 13095.0 ; + RECT 7565.0 13150.0 7500.0 13015.0 ; + RECT 7565.0 13150.0 7500.0 13015.0 ; + RECT 7400.0 13115.0 7335.0 13050.0 ; RECT 7690.0 12397.5 7130.0 12332.5 ; RECT 7690.0 13742.5 7130.0 13677.5 ; RECT 8542.5 8492.5 8477.5 8297.5 ; @@ -887,77 +887,77 @@ MACRO sram_2_16_1_freepdk45 RECT 8610.0 12397.5 7690.0 12332.5 ; RECT 8610.0 13742.5 7690.0 13677.5 ; RECT 9607.5 9447.5 9742.5 9512.5 ; - RECT 10992.5 8880.0 11127.5 8945.0 ; + RECT 10992.5 8925.0 11127.5 8990.0 ; RECT 9332.5 10792.5 9467.5 10857.5 ; - RECT 10717.5 10405.0 10852.5 10470.0 ; + RECT 10717.5 10360.0 10852.5 10425.0 ; RECT 10992.5 11122.5 11127.5 11187.5 ; RECT 9057.5 11122.5 9192.5 11187.5 ; RECT 10717.5 12467.5 10852.5 12532.5 ; RECT 8782.5 12467.5 8917.5 12532.5 ; - RECT 9607.5 8937.5 9742.5 9002.5 ; - RECT 9332.5 8722.5 9467.5 8787.5 ; - RECT 9057.5 10347.5 9192.5 10412.5 ; - RECT 9332.5 10562.5 9467.5 10627.5 ; - RECT 9607.5 11627.5 9742.5 11692.5 ; - RECT 8782.5 11412.5 8917.5 11477.5 ; - RECT 9057.5 13037.5 9192.5 13102.5 ; - RECT 8782.5 13252.5 8917.5 13317.5 ; - RECT 7335.0 8880.0 7130.0 8945.0 ; - RECT 7335.0 10405.0 7130.0 10470.0 ; - RECT 7335.0 11570.0 7130.0 11635.0 ; - RECT 7335.0 13095.0 7130.0 13160.0 ; + RECT 9607.5 8722.5 9742.5 8787.5 ; + RECT 9332.5 8937.5 9467.5 9002.5 ; + RECT 9057.5 10562.5 9192.5 10627.5 ; + RECT 9332.5 10347.5 9467.5 10412.5 ; + RECT 9607.5 11412.5 9742.5 11477.5 ; + RECT 8782.5 11627.5 8917.5 11692.5 ; + RECT 9057.5 13252.5 9192.5 13317.5 ; + RECT 8782.5 13037.5 8917.5 13102.5 ; + RECT 7335.0 8925.0 7130.0 8990.0 ; + RECT 7335.0 10360.0 7130.0 10425.0 ; + RECT 7335.0 11615.0 7130.0 11680.0 ; + RECT 7335.0 13050.0 7130.0 13115.0 ; RECT 11095.0 9642.5 7130.0 9707.5 ; RECT 11095.0 12332.5 7130.0 12397.5 ; RECT 11095.0 8297.5 7130.0 8362.5 ; RECT 11095.0 10987.5 7130.0 11052.5 ; RECT 11095.0 13677.5 7130.0 13742.5 ; - RECT 9952.5 14260.0 9887.5 14325.0 ; + RECT 9952.5 14305.0 9887.5 14370.0 ; RECT 9952.5 14827.5 9887.5 14892.5 ; - RECT 10190.0 14260.0 9920.0 14325.0 ; - RECT 9952.5 14292.5 9887.5 14860.0 ; + RECT 10190.0 14305.0 9920.0 14370.0 ; + RECT 9952.5 14337.5 9887.5 14860.0 ; RECT 9920.0 14827.5 9675.0 14892.5 ; - RECT 11060.0 14260.0 10420.0 14325.0 ; - RECT 9952.5 15785.0 9887.5 15850.0 ; + RECT 11060.0 14305.0 10420.0 14370.0 ; + RECT 9952.5 15740.0 9887.5 15805.0 ; RECT 9952.5 16172.5 9887.5 16237.5 ; - RECT 10190.0 15785.0 9920.0 15850.0 ; - RECT 9952.5 15817.5 9887.5 16205.0 ; + RECT 10190.0 15740.0 9920.0 15805.0 ; + RECT 9952.5 15772.5 9887.5 16205.0 ; RECT 9920.0 16172.5 9400.0 16237.5 ; - RECT 10785.0 15785.0 10420.0 15850.0 ; + RECT 10785.0 15740.0 10420.0 15805.0 ; RECT 11060.0 16502.5 9125.0 16567.5 ; RECT 10785.0 17847.5 8850.0 17912.5 ; - RECT 9675.0 14317.5 8550.0 14382.5 ; - RECT 9400.0 14102.5 8292.5 14167.5 ; - RECT 9125.0 15727.5 8550.0 15792.5 ; - RECT 9400.0 15942.5 8292.5 16007.5 ; - RECT 9675.0 17007.5 8550.0 17072.5 ; - RECT 8850.0 16792.5 8292.5 16857.5 ; - RECT 9125.0 18417.5 8550.0 18482.5 ; - RECT 8850.0 18632.5 8292.5 18697.5 ; + RECT 9675.0 14102.5 8292.5 14167.5 ; + RECT 9400.0 14317.5 8550.0 14382.5 ; + RECT 9125.0 15942.5 8292.5 16007.5 ; + RECT 9400.0 15727.5 8550.0 15792.5 ; + RECT 9675.0 16792.5 8292.5 16857.5 ; + RECT 8850.0 17007.5 8550.0 17072.5 ; + RECT 9125.0 18632.5 8292.5 18697.5 ; + RECT 8850.0 18417.5 8550.0 18482.5 ; RECT 7845.0 14317.5 7780.0 14382.5 ; - RECT 7845.0 14260.0 7780.0 14325.0 ; + RECT 7845.0 14305.0 7780.0 14370.0 ; RECT 8062.5 14317.5 7812.5 14382.5 ; - RECT 7845.0 14292.5 7780.0 14350.0 ; - RECT 7812.5 14260.0 7565.0 14325.0 ; + RECT 7845.0 14337.5 7780.0 14350.0 ; + RECT 7812.5 14305.0 7565.0 14370.0 ; RECT 7845.0 15727.5 7780.0 15792.5 ; - RECT 7845.0 15785.0 7780.0 15850.0 ; + RECT 7845.0 15740.0 7780.0 15805.0 ; RECT 8062.5 15727.5 7812.5 15792.5 ; - RECT 7845.0 15760.0 7780.0 15817.5 ; - RECT 7812.5 15785.0 7565.0 15850.0 ; + RECT 7845.0 15760.0 7780.0 15772.5 ; + RECT 7812.5 15740.0 7565.0 15805.0 ; RECT 7845.0 17007.5 7780.0 17072.5 ; - RECT 7845.0 16950.0 7780.0 17015.0 ; + RECT 7845.0 16995.0 7780.0 17060.0 ; RECT 8062.5 17007.5 7812.5 17072.5 ; - RECT 7845.0 16982.5 7780.0 17040.0 ; - RECT 7812.5 16950.0 7565.0 17015.0 ; + RECT 7845.0 17027.5 7780.0 17040.0 ; + RECT 7812.5 16995.0 7565.0 17060.0 ; RECT 7845.0 18417.5 7780.0 18482.5 ; - RECT 7845.0 18475.0 7780.0 18540.0 ; + RECT 7845.0 18430.0 7780.0 18495.0 ; RECT 8062.5 18417.5 7812.5 18482.5 ; - RECT 7845.0 18450.0 7780.0 18507.5 ; - RECT 7812.5 18475.0 7565.0 18540.0 ; + RECT 7845.0 18450.0 7780.0 18462.5 ; + RECT 7812.5 18430.0 7565.0 18495.0 ; RECT 10117.5 14870.0 10052.5 15055.0 ; RECT 10117.5 13710.0 10052.5 13895.0 ; RECT 10477.5 13827.5 10412.5 13677.5 ; RECT 10477.5 14712.5 10412.5 15087.5 ; - RECT 10287.5 13962.5 10222.5 14712.5 ; + RECT 10287.5 13827.5 10222.5 14712.5 ; RECT 10477.5 14712.5 10412.5 14847.5 ; RECT 10287.5 14712.5 10222.5 14847.5 ; RECT 10287.5 14712.5 10222.5 14847.5 ; @@ -968,16 +968,16 @@ MACRO sram_2_16_1_freepdk45 RECT 10477.5 13827.5 10412.5 13962.5 ; RECT 10117.5 14802.5 10052.5 14937.5 ; RECT 10117.5 13827.5 10052.5 13962.5 ; - RECT 10420.0 14225.0 10355.0 14360.0 ; - RECT 10420.0 14225.0 10355.0 14360.0 ; - RECT 10255.0 14260.0 10190.0 14325.0 ; + RECT 10420.0 14270.0 10355.0 14405.0 ; + RECT 10420.0 14270.0 10355.0 14405.0 ; + RECT 10255.0 14305.0 10190.0 14370.0 ; RECT 10545.0 15022.5 9985.0 15087.5 ; RECT 10545.0 13677.5 9985.0 13742.5 ; RECT 10117.5 15240.0 10052.5 15055.0 ; RECT 10117.5 16400.0 10052.5 16215.0 ; RECT 10477.5 16282.5 10412.5 16432.5 ; RECT 10477.5 15397.5 10412.5 15022.5 ; - RECT 10287.5 16147.5 10222.5 15397.5 ; + RECT 10287.5 16282.5 10222.5 15397.5 ; RECT 10477.5 15397.5 10412.5 15262.5 ; RECT 10287.5 15397.5 10222.5 15262.5 ; RECT 10287.5 15397.5 10222.5 15262.5 ; @@ -988,16 +988,16 @@ MACRO sram_2_16_1_freepdk45 RECT 10477.5 16282.5 10412.5 16147.5 ; RECT 10117.5 15307.5 10052.5 15172.5 ; RECT 10117.5 16282.5 10052.5 16147.5 ; - RECT 10420.0 15885.0 10355.0 15750.0 ; - RECT 10420.0 15885.0 10355.0 15750.0 ; - RECT 10255.0 15850.0 10190.0 15785.0 ; + RECT 10420.0 15840.0 10355.0 15705.0 ; + RECT 10420.0 15840.0 10355.0 15705.0 ; + RECT 10255.0 15805.0 10190.0 15740.0 ; RECT 10545.0 15087.5 9985.0 15022.5 ; RECT 10545.0 16432.5 9985.0 16367.5 ; RECT 7262.5 14870.0 7197.5 15055.0 ; RECT 7262.5 13710.0 7197.5 13895.0 ; RECT 7622.5 13827.5 7557.5 13677.5 ; RECT 7622.5 14712.5 7557.5 15087.5 ; - RECT 7432.5 13962.5 7367.5 14712.5 ; + RECT 7432.5 13827.5 7367.5 14712.5 ; RECT 7622.5 14712.5 7557.5 14847.5 ; RECT 7432.5 14712.5 7367.5 14847.5 ; RECT 7432.5 14712.5 7367.5 14847.5 ; @@ -1008,16 +1008,16 @@ MACRO sram_2_16_1_freepdk45 RECT 7622.5 13827.5 7557.5 13962.5 ; RECT 7262.5 14802.5 7197.5 14937.5 ; RECT 7262.5 13827.5 7197.5 13962.5 ; - RECT 7565.0 14225.0 7500.0 14360.0 ; - RECT 7565.0 14225.0 7500.0 14360.0 ; - RECT 7400.0 14260.0 7335.0 14325.0 ; + RECT 7565.0 14270.0 7500.0 14405.0 ; + RECT 7565.0 14270.0 7500.0 14405.0 ; + RECT 7400.0 14305.0 7335.0 14370.0 ; RECT 7690.0 15022.5 7130.0 15087.5 ; RECT 7690.0 13677.5 7130.0 13742.5 ; RECT 7262.5 15240.0 7197.5 15055.0 ; RECT 7262.5 16400.0 7197.5 16215.0 ; RECT 7622.5 16282.5 7557.5 16432.5 ; RECT 7622.5 15397.5 7557.5 15022.5 ; - RECT 7432.5 16147.5 7367.5 15397.5 ; + RECT 7432.5 16282.5 7367.5 15397.5 ; RECT 7622.5 15397.5 7557.5 15262.5 ; RECT 7432.5 15397.5 7367.5 15262.5 ; RECT 7432.5 15397.5 7367.5 15262.5 ; @@ -1028,16 +1028,16 @@ MACRO sram_2_16_1_freepdk45 RECT 7622.5 16282.5 7557.5 16147.5 ; RECT 7262.5 15307.5 7197.5 15172.5 ; RECT 7262.5 16282.5 7197.5 16147.5 ; - RECT 7565.0 15885.0 7500.0 15750.0 ; - RECT 7565.0 15885.0 7500.0 15750.0 ; - RECT 7400.0 15850.0 7335.0 15785.0 ; + RECT 7565.0 15840.0 7500.0 15705.0 ; + RECT 7565.0 15840.0 7500.0 15705.0 ; + RECT 7400.0 15805.0 7335.0 15740.0 ; RECT 7690.0 15087.5 7130.0 15022.5 ; RECT 7690.0 16432.5 7130.0 16367.5 ; RECT 7262.5 17560.0 7197.5 17745.0 ; RECT 7262.5 16400.0 7197.5 16585.0 ; RECT 7622.5 16517.5 7557.5 16367.5 ; RECT 7622.5 17402.5 7557.5 17777.5 ; - RECT 7432.5 16652.5 7367.5 17402.5 ; + RECT 7432.5 16517.5 7367.5 17402.5 ; RECT 7622.5 17402.5 7557.5 17537.5 ; RECT 7432.5 17402.5 7367.5 17537.5 ; RECT 7432.5 17402.5 7367.5 17537.5 ; @@ -1048,16 +1048,16 @@ MACRO sram_2_16_1_freepdk45 RECT 7622.5 16517.5 7557.5 16652.5 ; RECT 7262.5 17492.5 7197.5 17627.5 ; RECT 7262.5 16517.5 7197.5 16652.5 ; - RECT 7565.0 16915.0 7500.0 17050.0 ; - RECT 7565.0 16915.0 7500.0 17050.0 ; - RECT 7400.0 16950.0 7335.0 17015.0 ; + RECT 7565.0 16960.0 7500.0 17095.0 ; + RECT 7565.0 16960.0 7500.0 17095.0 ; + RECT 7400.0 16995.0 7335.0 17060.0 ; RECT 7690.0 17712.5 7130.0 17777.5 ; RECT 7690.0 16367.5 7130.0 16432.5 ; RECT 7262.5 17930.0 7197.5 17745.0 ; RECT 7262.5 19090.0 7197.5 18905.0 ; RECT 7622.5 18972.5 7557.5 19122.5 ; RECT 7622.5 18087.5 7557.5 17712.5 ; - RECT 7432.5 18837.5 7367.5 18087.5 ; + RECT 7432.5 18972.5 7367.5 18087.5 ; RECT 7622.5 18087.5 7557.5 17952.5 ; RECT 7432.5 18087.5 7367.5 17952.5 ; RECT 7432.5 18087.5 7367.5 17952.5 ; @@ -1068,9 +1068,9 @@ MACRO sram_2_16_1_freepdk45 RECT 7622.5 18972.5 7557.5 18837.5 ; RECT 7262.5 17997.5 7197.5 17862.5 ; RECT 7262.5 18972.5 7197.5 18837.5 ; - RECT 7565.0 18575.0 7500.0 18440.0 ; - RECT 7565.0 18575.0 7500.0 18440.0 ; - RECT 7400.0 18540.0 7335.0 18475.0 ; + RECT 7565.0 18530.0 7500.0 18395.0 ; + RECT 7565.0 18530.0 7500.0 18395.0 ; + RECT 7400.0 18495.0 7335.0 18430.0 ; RECT 7690.0 17777.5 7130.0 17712.5 ; RECT 7690.0 19122.5 7130.0 19057.5 ; RECT 8542.5 13872.5 8477.5 13677.5 ; @@ -1206,25 +1206,25 @@ MACRO sram_2_16_1_freepdk45 RECT 8610.0 17777.5 7690.0 17712.5 ; RECT 8610.0 19122.5 7690.0 19057.5 ; RECT 9607.5 14827.5 9742.5 14892.5 ; - RECT 10992.5 14260.0 11127.5 14325.0 ; + RECT 10992.5 14305.0 11127.5 14370.0 ; RECT 9332.5 16172.5 9467.5 16237.5 ; - RECT 10717.5 15785.0 10852.5 15850.0 ; + RECT 10717.5 15740.0 10852.5 15805.0 ; RECT 10992.5 16502.5 11127.5 16567.5 ; RECT 9057.5 16502.5 9192.5 16567.5 ; RECT 10717.5 17847.5 10852.5 17912.5 ; RECT 8782.5 17847.5 8917.5 17912.5 ; - RECT 9607.5 14317.5 9742.5 14382.5 ; - RECT 9332.5 14102.5 9467.5 14167.5 ; - RECT 9057.5 15727.5 9192.5 15792.5 ; - RECT 9332.5 15942.5 9467.5 16007.5 ; - RECT 9607.5 17007.5 9742.5 17072.5 ; - RECT 8782.5 16792.5 8917.5 16857.5 ; - RECT 9057.5 18417.5 9192.5 18482.5 ; - RECT 8782.5 18632.5 8917.5 18697.5 ; - RECT 7335.0 14260.0 7130.0 14325.0 ; - RECT 7335.0 15785.0 7130.0 15850.0 ; - RECT 7335.0 16950.0 7130.0 17015.0 ; - RECT 7335.0 18475.0 7130.0 18540.0 ; + RECT 9607.5 14102.5 9742.5 14167.5 ; + RECT 9332.5 14317.5 9467.5 14382.5 ; + RECT 9057.5 15942.5 9192.5 16007.5 ; + RECT 9332.5 15727.5 9467.5 15792.5 ; + RECT 9607.5 16792.5 9742.5 16857.5 ; + RECT 8782.5 17007.5 8917.5 17072.5 ; + RECT 9057.5 18632.5 9192.5 18697.5 ; + RECT 8782.5 18417.5 8917.5 18482.5 ; + RECT 7335.0 14305.0 7130.0 14370.0 ; + RECT 7335.0 15740.0 7130.0 15805.0 ; + RECT 7335.0 16995.0 7130.0 17060.0 ; + RECT 7335.0 18430.0 7130.0 18495.0 ; RECT 11095.0 15022.5 7130.0 15087.5 ; RECT 11095.0 17712.5 7130.0 17777.5 ; RECT 11095.0 13677.5 7130.0 13742.5 ; @@ -1762,7 +1762,7 @@ MACRO sram_2_16_1_freepdk45 RECT 8477.5 19090.0 8542.5 19275.0 ; RECT 8117.5 19207.5 8182.5 19057.5 ; RECT 8117.5 20092.5 8182.5 20467.5 ; - RECT 8307.5 19342.5 8372.5 20092.5 ; + RECT 8307.5 19207.5 8372.5 20092.5 ; RECT 8117.5 20092.5 8182.5 20227.5 ; RECT 8307.5 20092.5 8372.5 20227.5 ; RECT 8307.5 20092.5 8372.5 20227.5 ; @@ -1773,16 +1773,16 @@ MACRO sram_2_16_1_freepdk45 RECT 8117.5 19207.5 8182.5 19342.5 ; RECT 8477.5 20182.5 8542.5 20317.5 ; RECT 8477.5 19207.5 8542.5 19342.5 ; - RECT 8175.0 19605.0 8240.0 19740.0 ; - RECT 8175.0 19605.0 8240.0 19740.0 ; - RECT 8340.0 19640.0 8405.0 19705.0 ; + RECT 8175.0 19650.0 8240.0 19785.0 ; + RECT 8175.0 19650.0 8240.0 19785.0 ; + RECT 8340.0 19685.0 8405.0 19750.0 ; RECT 8050.0 20402.5 8610.0 20467.5 ; RECT 8050.0 19057.5 8610.0 19122.5 ; RECT 8477.5 20620.0 8542.5 20435.0 ; RECT 8477.5 21780.0 8542.5 21595.0 ; RECT 8117.5 21662.5 8182.5 21812.5 ; RECT 8117.5 20777.5 8182.5 20402.5 ; - RECT 8307.5 21527.5 8372.5 20777.5 ; + RECT 8307.5 21662.5 8372.5 20777.5 ; RECT 8117.5 20777.5 8182.5 20642.5 ; RECT 8307.5 20777.5 8372.5 20642.5 ; RECT 8307.5 20777.5 8372.5 20642.5 ; @@ -1793,16 +1793,16 @@ MACRO sram_2_16_1_freepdk45 RECT 8117.5 21662.5 8182.5 21527.5 ; RECT 8477.5 20687.5 8542.5 20552.5 ; RECT 8477.5 21662.5 8542.5 21527.5 ; - RECT 8175.0 21265.0 8240.0 21130.0 ; - RECT 8175.0 21265.0 8240.0 21130.0 ; - RECT 8340.0 21230.0 8405.0 21165.0 ; + RECT 8175.0 21220.0 8240.0 21085.0 ; + RECT 8175.0 21220.0 8240.0 21085.0 ; + RECT 8340.0 21185.0 8405.0 21120.0 ; RECT 8050.0 20467.5 8610.0 20402.5 ; RECT 8050.0 21812.5 8610.0 21747.5 ; RECT 8477.5 22940.0 8542.5 23125.0 ; RECT 8477.5 21780.0 8542.5 21965.0 ; RECT 8117.5 21897.5 8182.5 21747.5 ; RECT 8117.5 22782.5 8182.5 23157.5 ; - RECT 8307.5 22032.5 8372.5 22782.5 ; + RECT 8307.5 21897.5 8372.5 22782.5 ; RECT 8117.5 22782.5 8182.5 22917.5 ; RECT 8307.5 22782.5 8372.5 22917.5 ; RECT 8307.5 22782.5 8372.5 22917.5 ; @@ -1813,16 +1813,16 @@ MACRO sram_2_16_1_freepdk45 RECT 8117.5 21897.5 8182.5 22032.5 ; RECT 8477.5 22872.5 8542.5 23007.5 ; RECT 8477.5 21897.5 8542.5 22032.5 ; - RECT 8175.0 22295.0 8240.0 22430.0 ; - RECT 8175.0 22295.0 8240.0 22430.0 ; - RECT 8340.0 22330.0 8405.0 22395.0 ; + RECT 8175.0 22340.0 8240.0 22475.0 ; + RECT 8175.0 22340.0 8240.0 22475.0 ; + RECT 8340.0 22375.0 8405.0 22440.0 ; RECT 8050.0 23092.5 8610.0 23157.5 ; RECT 8050.0 21747.5 8610.0 21812.5 ; RECT 8477.5 23310.0 8542.5 23125.0 ; RECT 8477.5 24470.0 8542.5 24285.0 ; RECT 8117.5 24352.5 8182.5 24502.5 ; RECT 8117.5 23467.5 8182.5 23092.5 ; - RECT 8307.5 24217.5 8372.5 23467.5 ; + RECT 8307.5 24352.5 8372.5 23467.5 ; RECT 8117.5 23467.5 8182.5 23332.5 ; RECT 8307.5 23467.5 8372.5 23332.5 ; RECT 8307.5 23467.5 8372.5 23332.5 ; @@ -1833,16 +1833,16 @@ MACRO sram_2_16_1_freepdk45 RECT 8117.5 24352.5 8182.5 24217.5 ; RECT 8477.5 23377.5 8542.5 23242.5 ; RECT 8477.5 24352.5 8542.5 24217.5 ; - RECT 8175.0 23955.0 8240.0 23820.0 ; - RECT 8175.0 23955.0 8240.0 23820.0 ; - RECT 8340.0 23920.0 8405.0 23855.0 ; + RECT 8175.0 23910.0 8240.0 23775.0 ; + RECT 8175.0 23910.0 8240.0 23775.0 ; + RECT 8340.0 23875.0 8405.0 23810.0 ; RECT 8050.0 23157.5 8610.0 23092.5 ; RECT 8050.0 24502.5 8610.0 24437.5 ; RECT 8477.5 25630.0 8542.5 25815.0 ; RECT 8477.5 24470.0 8542.5 24655.0 ; RECT 8117.5 24587.5 8182.5 24437.5 ; RECT 8117.5 25472.5 8182.5 25847.5 ; - RECT 8307.5 24722.5 8372.5 25472.5 ; + RECT 8307.5 24587.5 8372.5 25472.5 ; RECT 8117.5 25472.5 8182.5 25607.5 ; RECT 8307.5 25472.5 8372.5 25607.5 ; RECT 8307.5 25472.5 8372.5 25607.5 ; @@ -1853,16 +1853,16 @@ MACRO sram_2_16_1_freepdk45 RECT 8117.5 24587.5 8182.5 24722.5 ; RECT 8477.5 25562.5 8542.5 25697.5 ; RECT 8477.5 24587.5 8542.5 24722.5 ; - RECT 8175.0 24985.0 8240.0 25120.0 ; - RECT 8175.0 24985.0 8240.0 25120.0 ; - RECT 8340.0 25020.0 8405.0 25085.0 ; + RECT 8175.0 25030.0 8240.0 25165.0 ; + RECT 8175.0 25030.0 8240.0 25165.0 ; + RECT 8340.0 25065.0 8405.0 25130.0 ; RECT 8050.0 25782.5 8610.0 25847.5 ; RECT 8050.0 24437.5 8610.0 24502.5 ; RECT 8477.5 26000.0 8542.5 25815.0 ; RECT 8477.5 27160.0 8542.5 26975.0 ; RECT 8117.5 27042.5 8182.5 27192.5 ; RECT 8117.5 26157.5 8182.5 25782.5 ; - RECT 8307.5 26907.5 8372.5 26157.5 ; + RECT 8307.5 27042.5 8372.5 26157.5 ; RECT 8117.5 26157.5 8182.5 26022.5 ; RECT 8307.5 26157.5 8372.5 26022.5 ; RECT 8307.5 26157.5 8372.5 26022.5 ; @@ -1873,16 +1873,16 @@ MACRO sram_2_16_1_freepdk45 RECT 8117.5 27042.5 8182.5 26907.5 ; RECT 8477.5 26067.5 8542.5 25932.5 ; RECT 8477.5 27042.5 8542.5 26907.5 ; - RECT 8175.0 26645.0 8240.0 26510.0 ; - RECT 8175.0 26645.0 8240.0 26510.0 ; - RECT 8340.0 26610.0 8405.0 26545.0 ; + RECT 8175.0 26600.0 8240.0 26465.0 ; + RECT 8175.0 26600.0 8240.0 26465.0 ; + RECT 8340.0 26565.0 8405.0 26500.0 ; RECT 8050.0 25847.5 8610.0 25782.5 ; RECT 8050.0 27192.5 8610.0 27127.5 ; RECT 8477.5 28320.0 8542.5 28505.0 ; RECT 8477.5 27160.0 8542.5 27345.0 ; RECT 8117.5 27277.5 8182.5 27127.5 ; RECT 8117.5 28162.5 8182.5 28537.5 ; - RECT 8307.5 27412.5 8372.5 28162.5 ; + RECT 8307.5 27277.5 8372.5 28162.5 ; RECT 8117.5 28162.5 8182.5 28297.5 ; RECT 8307.5 28162.5 8372.5 28297.5 ; RECT 8307.5 28162.5 8372.5 28297.5 ; @@ -1893,16 +1893,16 @@ MACRO sram_2_16_1_freepdk45 RECT 8117.5 27277.5 8182.5 27412.5 ; RECT 8477.5 28252.5 8542.5 28387.5 ; RECT 8477.5 27277.5 8542.5 27412.5 ; - RECT 8175.0 27675.0 8240.0 27810.0 ; - RECT 8175.0 27675.0 8240.0 27810.0 ; - RECT 8340.0 27710.0 8405.0 27775.0 ; + RECT 8175.0 27720.0 8240.0 27855.0 ; + RECT 8175.0 27720.0 8240.0 27855.0 ; + RECT 8340.0 27755.0 8405.0 27820.0 ; RECT 8050.0 28472.5 8610.0 28537.5 ; RECT 8050.0 27127.5 8610.0 27192.5 ; RECT 8477.5 28690.0 8542.5 28505.0 ; RECT 8477.5 29850.0 8542.5 29665.0 ; RECT 8117.5 29732.5 8182.5 29882.5 ; RECT 8117.5 28847.5 8182.5 28472.5 ; - RECT 8307.5 29597.5 8372.5 28847.5 ; + RECT 8307.5 29732.5 8372.5 28847.5 ; RECT 8117.5 28847.5 8182.5 28712.5 ; RECT 8307.5 28847.5 8372.5 28712.5 ; RECT 8307.5 28847.5 8372.5 28712.5 ; @@ -1913,16 +1913,16 @@ MACRO sram_2_16_1_freepdk45 RECT 8117.5 29732.5 8182.5 29597.5 ; RECT 8477.5 28757.5 8542.5 28622.5 ; RECT 8477.5 29732.5 8542.5 29597.5 ; - RECT 8175.0 29335.0 8240.0 29200.0 ; - RECT 8175.0 29335.0 8240.0 29200.0 ; - RECT 8340.0 29300.0 8405.0 29235.0 ; + RECT 8175.0 29290.0 8240.0 29155.0 ; + RECT 8175.0 29290.0 8240.0 29155.0 ; + RECT 8340.0 29255.0 8405.0 29190.0 ; RECT 8050.0 28537.5 8610.0 28472.5 ; RECT 8050.0 29882.5 8610.0 29817.5 ; RECT 8477.5 31010.0 8542.5 31195.0 ; RECT 8477.5 29850.0 8542.5 30035.0 ; RECT 8117.5 29967.5 8182.5 29817.5 ; RECT 8117.5 30852.5 8182.5 31227.5 ; - RECT 8307.5 30102.5 8372.5 30852.5 ; + RECT 8307.5 29967.5 8372.5 30852.5 ; RECT 8117.5 30852.5 8182.5 30987.5 ; RECT 8307.5 30852.5 8372.5 30987.5 ; RECT 8307.5 30852.5 8372.5 30987.5 ; @@ -1933,16 +1933,16 @@ MACRO sram_2_16_1_freepdk45 RECT 8117.5 29967.5 8182.5 30102.5 ; RECT 8477.5 30942.5 8542.5 31077.5 ; RECT 8477.5 29967.5 8542.5 30102.5 ; - RECT 8175.0 30365.0 8240.0 30500.0 ; - RECT 8175.0 30365.0 8240.0 30500.0 ; - RECT 8340.0 30400.0 8405.0 30465.0 ; + RECT 8175.0 30410.0 8240.0 30545.0 ; + RECT 8175.0 30410.0 8240.0 30545.0 ; + RECT 8340.0 30445.0 8405.0 30510.0 ; RECT 8050.0 31162.5 8610.0 31227.5 ; RECT 8050.0 29817.5 8610.0 29882.5 ; RECT 8477.5 31380.0 8542.5 31195.0 ; RECT 8477.5 32540.0 8542.5 32355.0 ; RECT 8117.5 32422.5 8182.5 32572.5 ; RECT 8117.5 31537.5 8182.5 31162.5 ; - RECT 8307.5 32287.5 8372.5 31537.5 ; + RECT 8307.5 32422.5 8372.5 31537.5 ; RECT 8117.5 31537.5 8182.5 31402.5 ; RECT 8307.5 31537.5 8372.5 31402.5 ; RECT 8307.5 31537.5 8372.5 31402.5 ; @@ -1953,16 +1953,16 @@ MACRO sram_2_16_1_freepdk45 RECT 8117.5 32422.5 8182.5 32287.5 ; RECT 8477.5 31447.5 8542.5 31312.5 ; RECT 8477.5 32422.5 8542.5 32287.5 ; - RECT 8175.0 32025.0 8240.0 31890.0 ; - RECT 8175.0 32025.0 8240.0 31890.0 ; - RECT 8340.0 31990.0 8405.0 31925.0 ; + RECT 8175.0 31980.0 8240.0 31845.0 ; + RECT 8175.0 31980.0 8240.0 31845.0 ; + RECT 8340.0 31945.0 8405.0 31880.0 ; RECT 8050.0 31227.5 8610.0 31162.5 ; RECT 8050.0 32572.5 8610.0 32507.5 ; RECT 8477.5 33700.0 8542.5 33885.0 ; RECT 8477.5 32540.0 8542.5 32725.0 ; RECT 8117.5 32657.5 8182.5 32507.5 ; RECT 8117.5 33542.5 8182.5 33917.5 ; - RECT 8307.5 32792.5 8372.5 33542.5 ; + RECT 8307.5 32657.5 8372.5 33542.5 ; RECT 8117.5 33542.5 8182.5 33677.5 ; RECT 8307.5 33542.5 8372.5 33677.5 ; RECT 8307.5 33542.5 8372.5 33677.5 ; @@ -1973,16 +1973,16 @@ MACRO sram_2_16_1_freepdk45 RECT 8117.5 32657.5 8182.5 32792.5 ; RECT 8477.5 33632.5 8542.5 33767.5 ; RECT 8477.5 32657.5 8542.5 32792.5 ; - RECT 8175.0 33055.0 8240.0 33190.0 ; - RECT 8175.0 33055.0 8240.0 33190.0 ; - RECT 8340.0 33090.0 8405.0 33155.0 ; + RECT 8175.0 33100.0 8240.0 33235.0 ; + RECT 8175.0 33100.0 8240.0 33235.0 ; + RECT 8340.0 33135.0 8405.0 33200.0 ; RECT 8050.0 33852.5 8610.0 33917.5 ; RECT 8050.0 32507.5 8610.0 32572.5 ; RECT 8477.5 34070.0 8542.5 33885.0 ; RECT 8477.5 35230.0 8542.5 35045.0 ; RECT 8117.5 35112.5 8182.5 35262.5 ; RECT 8117.5 34227.5 8182.5 33852.5 ; - RECT 8307.5 34977.5 8372.5 34227.5 ; + RECT 8307.5 35112.5 8372.5 34227.5 ; RECT 8117.5 34227.5 8182.5 34092.5 ; RECT 8307.5 34227.5 8372.5 34092.5 ; RECT 8307.5 34227.5 8372.5 34092.5 ; @@ -1993,16 +1993,16 @@ MACRO sram_2_16_1_freepdk45 RECT 8117.5 35112.5 8182.5 34977.5 ; RECT 8477.5 34137.5 8542.5 34002.5 ; RECT 8477.5 35112.5 8542.5 34977.5 ; - RECT 8175.0 34715.0 8240.0 34580.0 ; - RECT 8175.0 34715.0 8240.0 34580.0 ; - RECT 8340.0 34680.0 8405.0 34615.0 ; + RECT 8175.0 34670.0 8240.0 34535.0 ; + RECT 8175.0 34670.0 8240.0 34535.0 ; + RECT 8340.0 34635.0 8405.0 34570.0 ; RECT 8050.0 33917.5 8610.0 33852.5 ; RECT 8050.0 35262.5 8610.0 35197.5 ; RECT 8477.5 36390.0 8542.5 36575.0 ; RECT 8477.5 35230.0 8542.5 35415.0 ; RECT 8117.5 35347.5 8182.5 35197.5 ; RECT 8117.5 36232.5 8182.5 36607.5 ; - RECT 8307.5 35482.5 8372.5 36232.5 ; + RECT 8307.5 35347.5 8372.5 36232.5 ; RECT 8117.5 36232.5 8182.5 36367.5 ; RECT 8307.5 36232.5 8372.5 36367.5 ; RECT 8307.5 36232.5 8372.5 36367.5 ; @@ -2013,16 +2013,16 @@ MACRO sram_2_16_1_freepdk45 RECT 8117.5 35347.5 8182.5 35482.5 ; RECT 8477.5 36322.5 8542.5 36457.5 ; RECT 8477.5 35347.5 8542.5 35482.5 ; - RECT 8175.0 35745.0 8240.0 35880.0 ; - RECT 8175.0 35745.0 8240.0 35880.0 ; - RECT 8340.0 35780.0 8405.0 35845.0 ; + RECT 8175.0 35790.0 8240.0 35925.0 ; + RECT 8175.0 35790.0 8240.0 35925.0 ; + RECT 8340.0 35825.0 8405.0 35890.0 ; RECT 8050.0 36542.5 8610.0 36607.5 ; RECT 8050.0 35197.5 8610.0 35262.5 ; RECT 8477.5 36760.0 8542.5 36575.0 ; RECT 8477.5 37920.0 8542.5 37735.0 ; RECT 8117.5 37802.5 8182.5 37952.5 ; RECT 8117.5 36917.5 8182.5 36542.5 ; - RECT 8307.5 37667.5 8372.5 36917.5 ; + RECT 8307.5 37802.5 8372.5 36917.5 ; RECT 8117.5 36917.5 8182.5 36782.5 ; RECT 8307.5 36917.5 8372.5 36782.5 ; RECT 8307.5 36917.5 8372.5 36782.5 ; @@ -2033,16 +2033,16 @@ MACRO sram_2_16_1_freepdk45 RECT 8117.5 37802.5 8182.5 37667.5 ; RECT 8477.5 36827.5 8542.5 36692.5 ; RECT 8477.5 37802.5 8542.5 37667.5 ; - RECT 8175.0 37405.0 8240.0 37270.0 ; - RECT 8175.0 37405.0 8240.0 37270.0 ; - RECT 8340.0 37370.0 8405.0 37305.0 ; + RECT 8175.0 37360.0 8240.0 37225.0 ; + RECT 8175.0 37360.0 8240.0 37225.0 ; + RECT 8340.0 37325.0 8405.0 37260.0 ; RECT 8050.0 36607.5 8610.0 36542.5 ; RECT 8050.0 37952.5 8610.0 37887.5 ; RECT 8477.5 39080.0 8542.5 39265.0 ; RECT 8477.5 37920.0 8542.5 38105.0 ; RECT 8117.5 38037.5 8182.5 37887.5 ; RECT 8117.5 38922.5 8182.5 39297.5 ; - RECT 8307.5 38172.5 8372.5 38922.5 ; + RECT 8307.5 38037.5 8372.5 38922.5 ; RECT 8117.5 38922.5 8182.5 39057.5 ; RECT 8307.5 38922.5 8372.5 39057.5 ; RECT 8307.5 38922.5 8372.5 39057.5 ; @@ -2053,16 +2053,16 @@ MACRO sram_2_16_1_freepdk45 RECT 8117.5 38037.5 8182.5 38172.5 ; RECT 8477.5 39012.5 8542.5 39147.5 ; RECT 8477.5 38037.5 8542.5 38172.5 ; - RECT 8175.0 38435.0 8240.0 38570.0 ; - RECT 8175.0 38435.0 8240.0 38570.0 ; - RECT 8340.0 38470.0 8405.0 38535.0 ; + RECT 8175.0 38480.0 8240.0 38615.0 ; + RECT 8175.0 38480.0 8240.0 38615.0 ; + RECT 8340.0 38515.0 8405.0 38580.0 ; RECT 8050.0 39232.5 8610.0 39297.5 ; RECT 8050.0 37887.5 8610.0 37952.5 ; RECT 8477.5 39450.0 8542.5 39265.0 ; RECT 8477.5 40610.0 8542.5 40425.0 ; RECT 8117.5 40492.5 8182.5 40642.5 ; RECT 8117.5 39607.5 8182.5 39232.5 ; - RECT 8307.5 40357.5 8372.5 39607.5 ; + RECT 8307.5 40492.5 8372.5 39607.5 ; RECT 8117.5 39607.5 8182.5 39472.5 ; RECT 8307.5 39607.5 8372.5 39472.5 ; RECT 8307.5 39607.5 8372.5 39472.5 ; @@ -2073,19 +2073,19 @@ MACRO sram_2_16_1_freepdk45 RECT 8117.5 40492.5 8182.5 40357.5 ; RECT 8477.5 39517.5 8542.5 39382.5 ; RECT 8477.5 40492.5 8542.5 40357.5 ; - RECT 8175.0 40095.0 8240.0 39960.0 ; - RECT 8175.0 40095.0 8240.0 39960.0 ; - RECT 8340.0 40060.0 8405.0 39995.0 ; + RECT 8175.0 40050.0 8240.0 39915.0 ; + RECT 8175.0 40050.0 8240.0 39915.0 ; + RECT 8340.0 40015.0 8405.0 39950.0 ; RECT 8050.0 39297.5 8610.0 39232.5 ; RECT 8050.0 40642.5 8610.0 40577.5 ; - RECT 5832.5 8880.0 5697.5 8945.0 ; - RECT 6007.5 10405.0 5872.5 10470.0 ; - RECT 6182.5 11570.0 6047.5 11635.0 ; - RECT 6357.5 13095.0 6222.5 13160.0 ; - RECT 6532.5 14260.0 6397.5 14325.0 ; - RECT 6707.5 15785.0 6572.5 15850.0 ; - RECT 6882.5 16950.0 6747.5 17015.0 ; - RECT 7057.5 18475.0 6922.5 18540.0 ; + RECT 5832.5 8925.0 5697.5 8990.0 ; + RECT 6007.5 10360.0 5872.5 10425.0 ; + RECT 6182.5 11615.0 6047.5 11680.0 ; + RECT 6357.5 13050.0 6222.5 13115.0 ; + RECT 6532.5 14305.0 6397.5 14370.0 ; + RECT 6707.5 15740.0 6572.5 15805.0 ; + RECT 6882.5 16995.0 6747.5 17060.0 ; + RECT 7057.5 18430.0 6922.5 18495.0 ; RECT 5832.5 19697.5 5697.5 19762.5 ; RECT 6532.5 19482.5 6397.5 19547.5 ; RECT 5832.5 21107.5 5697.5 21172.5 ; @@ -2118,22 +2118,22 @@ MACRO sram_2_16_1_freepdk45 RECT 6882.5 38312.5 6747.5 38377.5 ; RECT 6357.5 39937.5 6222.5 40002.5 ; RECT 7057.5 40152.5 6922.5 40217.5 ; - RECT 8340.0 19640.0 8405.0 19705.0 ; - RECT 8340.0 21165.0 8405.0 21230.0 ; - RECT 8340.0 22330.0 8405.0 22395.0 ; - RECT 8340.0 23855.0 8405.0 23920.0 ; - RECT 8340.0 25020.0 8405.0 25085.0 ; - RECT 8340.0 26545.0 8405.0 26610.0 ; - RECT 8340.0 27710.0 8405.0 27775.0 ; - RECT 8340.0 29235.0 8405.0 29300.0 ; - RECT 8340.0 30400.0 8405.0 30465.0 ; - RECT 8340.0 31925.0 8405.0 31990.0 ; - RECT 8340.0 33090.0 8405.0 33155.0 ; - RECT 8340.0 34615.0 8405.0 34680.0 ; - RECT 8340.0 35780.0 8405.0 35845.0 ; - RECT 8340.0 37305.0 8405.0 37370.0 ; - RECT 8340.0 38470.0 8405.0 38535.0 ; - RECT 8340.0 39995.0 8405.0 40060.0 ; + RECT 8340.0 19685.0 8405.0 19750.0 ; + RECT 8340.0 21120.0 8405.0 21185.0 ; + RECT 8340.0 22375.0 8405.0 22440.0 ; + RECT 8340.0 23810.0 8405.0 23875.0 ; + RECT 8340.0 25065.0 8405.0 25130.0 ; + RECT 8340.0 26500.0 8405.0 26565.0 ; + RECT 8340.0 27755.0 8405.0 27820.0 ; + RECT 8340.0 29190.0 8405.0 29255.0 ; + RECT 8340.0 30445.0 8405.0 30510.0 ; + RECT 8340.0 31880.0 8405.0 31945.0 ; + RECT 8340.0 33135.0 8405.0 33200.0 ; + RECT 8340.0 34570.0 8405.0 34635.0 ; + RECT 8340.0 35825.0 8405.0 35890.0 ; + RECT 8340.0 37260.0 8405.0 37325.0 ; + RECT 8340.0 38515.0 8405.0 38580.0 ; + RECT 8340.0 39950.0 8405.0 40015.0 ; RECT 5730.0 9642.5 11095.0 9707.5 ; RECT 5730.0 12332.5 11095.0 12397.5 ; RECT 5730.0 15022.5 11095.0 15087.5 ; @@ -2159,187 +2159,187 @@ MACRO sram_2_16_1_freepdk45 RECT 5730.0 35197.5 11095.0 35262.5 ; RECT 5730.0 37887.5 11095.0 37952.5 ; RECT 5730.0 40577.5 11095.0 40642.5 ; - RECT 8840.0 19640.0 9190.0 19705.0 ; + RECT 8840.0 19685.0 9190.0 19750.0 ; RECT 9355.0 19697.5 9420.0 19762.5 ; - RECT 9355.0 19640.0 9420.0 19705.0 ; - RECT 9355.0 19705.0 9420.0 19730.0 ; + RECT 9355.0 19685.0 9420.0 19750.0 ; + RECT 9355.0 19730.0 9420.0 19750.0 ; RECT 9387.5 19697.5 9685.0 19762.5 ; RECT 9685.0 19697.5 9820.0 19762.5 ; RECT 10390.0 19697.5 10455.0 19762.5 ; - RECT 10390.0 19640.0 10455.0 19705.0 ; + RECT 10390.0 19685.0 10455.0 19750.0 ; RECT 10172.5 19697.5 10422.5 19762.5 ; - RECT 10390.0 19672.5 10455.0 19730.0 ; - RECT 10422.5 19640.0 10670.0 19705.0 ; - RECT 8840.0 21165.0 9190.0 21230.0 ; + RECT 10390.0 19717.5 10455.0 19730.0 ; + RECT 10422.5 19685.0 10670.0 19750.0 ; + RECT 8840.0 21120.0 9190.0 21185.0 ; RECT 9355.0 21107.5 9420.0 21172.5 ; - RECT 9355.0 21165.0 9420.0 21230.0 ; - RECT 9355.0 21140.0 9420.0 21230.0 ; + RECT 9355.0 21120.0 9420.0 21185.0 ; + RECT 9355.0 21140.0 9420.0 21185.0 ; RECT 9387.5 21107.5 9685.0 21172.5 ; RECT 9685.0 21107.5 9820.0 21172.5 ; RECT 10390.0 21107.5 10455.0 21172.5 ; - RECT 10390.0 21165.0 10455.0 21230.0 ; + RECT 10390.0 21120.0 10455.0 21185.0 ; RECT 10172.5 21107.5 10422.5 21172.5 ; - RECT 10390.0 21140.0 10455.0 21197.5 ; - RECT 10422.5 21165.0 10670.0 21230.0 ; - RECT 8840.0 22330.0 9190.0 22395.0 ; + RECT 10390.0 21140.0 10455.0 21152.5 ; + RECT 10422.5 21120.0 10670.0 21185.0 ; + RECT 8840.0 22375.0 9190.0 22440.0 ; RECT 9355.0 22387.5 9420.0 22452.5 ; - RECT 9355.0 22330.0 9420.0 22395.0 ; - RECT 9355.0 22395.0 9420.0 22420.0 ; + RECT 9355.0 22375.0 9420.0 22440.0 ; + RECT 9355.0 22420.0 9420.0 22440.0 ; RECT 9387.5 22387.5 9685.0 22452.5 ; RECT 9685.0 22387.5 9820.0 22452.5 ; RECT 10390.0 22387.5 10455.0 22452.5 ; - RECT 10390.0 22330.0 10455.0 22395.0 ; + RECT 10390.0 22375.0 10455.0 22440.0 ; RECT 10172.5 22387.5 10422.5 22452.5 ; - RECT 10390.0 22362.5 10455.0 22420.0 ; - RECT 10422.5 22330.0 10670.0 22395.0 ; - RECT 8840.0 23855.0 9190.0 23920.0 ; + RECT 10390.0 22407.5 10455.0 22420.0 ; + RECT 10422.5 22375.0 10670.0 22440.0 ; + RECT 8840.0 23810.0 9190.0 23875.0 ; RECT 9355.0 23797.5 9420.0 23862.5 ; - RECT 9355.0 23855.0 9420.0 23920.0 ; - RECT 9355.0 23830.0 9420.0 23920.0 ; + RECT 9355.0 23810.0 9420.0 23875.0 ; + RECT 9355.0 23830.0 9420.0 23875.0 ; RECT 9387.5 23797.5 9685.0 23862.5 ; RECT 9685.0 23797.5 9820.0 23862.5 ; RECT 10390.0 23797.5 10455.0 23862.5 ; - RECT 10390.0 23855.0 10455.0 23920.0 ; + RECT 10390.0 23810.0 10455.0 23875.0 ; RECT 10172.5 23797.5 10422.5 23862.5 ; - RECT 10390.0 23830.0 10455.0 23887.5 ; - RECT 10422.5 23855.0 10670.0 23920.0 ; - RECT 8840.0 25020.0 9190.0 25085.0 ; + RECT 10390.0 23830.0 10455.0 23842.5 ; + RECT 10422.5 23810.0 10670.0 23875.0 ; + RECT 8840.0 25065.0 9190.0 25130.0 ; RECT 9355.0 25077.5 9420.0 25142.5 ; - RECT 9355.0 25020.0 9420.0 25085.0 ; - RECT 9355.0 25085.0 9420.0 25110.0 ; + RECT 9355.0 25065.0 9420.0 25130.0 ; + RECT 9355.0 25110.0 9420.0 25130.0 ; RECT 9387.5 25077.5 9685.0 25142.5 ; RECT 9685.0 25077.5 9820.0 25142.5 ; RECT 10390.0 25077.5 10455.0 25142.5 ; - RECT 10390.0 25020.0 10455.0 25085.0 ; + RECT 10390.0 25065.0 10455.0 25130.0 ; RECT 10172.5 25077.5 10422.5 25142.5 ; - RECT 10390.0 25052.5 10455.0 25110.0 ; - RECT 10422.5 25020.0 10670.0 25085.0 ; - RECT 8840.0 26545.0 9190.0 26610.0 ; + RECT 10390.0 25097.5 10455.0 25110.0 ; + RECT 10422.5 25065.0 10670.0 25130.0 ; + RECT 8840.0 26500.0 9190.0 26565.0 ; RECT 9355.0 26487.5 9420.0 26552.5 ; - RECT 9355.0 26545.0 9420.0 26610.0 ; - RECT 9355.0 26520.0 9420.0 26610.0 ; + RECT 9355.0 26500.0 9420.0 26565.0 ; + RECT 9355.0 26520.0 9420.0 26565.0 ; RECT 9387.5 26487.5 9685.0 26552.5 ; RECT 9685.0 26487.5 9820.0 26552.5 ; RECT 10390.0 26487.5 10455.0 26552.5 ; - RECT 10390.0 26545.0 10455.0 26610.0 ; + RECT 10390.0 26500.0 10455.0 26565.0 ; RECT 10172.5 26487.5 10422.5 26552.5 ; - RECT 10390.0 26520.0 10455.0 26577.5 ; - RECT 10422.5 26545.0 10670.0 26610.0 ; - RECT 8840.0 27710.0 9190.0 27775.0 ; + RECT 10390.0 26520.0 10455.0 26532.5 ; + RECT 10422.5 26500.0 10670.0 26565.0 ; + RECT 8840.0 27755.0 9190.0 27820.0 ; RECT 9355.0 27767.5 9420.0 27832.5 ; - RECT 9355.0 27710.0 9420.0 27775.0 ; - RECT 9355.0 27775.0 9420.0 27800.0 ; + RECT 9355.0 27755.0 9420.0 27820.0 ; + RECT 9355.0 27800.0 9420.0 27820.0 ; RECT 9387.5 27767.5 9685.0 27832.5 ; RECT 9685.0 27767.5 9820.0 27832.5 ; RECT 10390.0 27767.5 10455.0 27832.5 ; - RECT 10390.0 27710.0 10455.0 27775.0 ; + RECT 10390.0 27755.0 10455.0 27820.0 ; RECT 10172.5 27767.5 10422.5 27832.5 ; - RECT 10390.0 27742.5 10455.0 27800.0 ; - RECT 10422.5 27710.0 10670.0 27775.0 ; - RECT 8840.0 29235.0 9190.0 29300.0 ; + RECT 10390.0 27787.5 10455.0 27800.0 ; + RECT 10422.5 27755.0 10670.0 27820.0 ; + RECT 8840.0 29190.0 9190.0 29255.0 ; RECT 9355.0 29177.5 9420.0 29242.5 ; - RECT 9355.0 29235.0 9420.0 29300.0 ; - RECT 9355.0 29210.0 9420.0 29300.0 ; + RECT 9355.0 29190.0 9420.0 29255.0 ; + RECT 9355.0 29210.0 9420.0 29255.0 ; RECT 9387.5 29177.5 9685.0 29242.5 ; RECT 9685.0 29177.5 9820.0 29242.5 ; RECT 10390.0 29177.5 10455.0 29242.5 ; - RECT 10390.0 29235.0 10455.0 29300.0 ; + RECT 10390.0 29190.0 10455.0 29255.0 ; RECT 10172.5 29177.5 10422.5 29242.5 ; - RECT 10390.0 29210.0 10455.0 29267.5 ; - RECT 10422.5 29235.0 10670.0 29300.0 ; - RECT 8840.0 30400.0 9190.0 30465.0 ; + RECT 10390.0 29210.0 10455.0 29222.5 ; + RECT 10422.5 29190.0 10670.0 29255.0 ; + RECT 8840.0 30445.0 9190.0 30510.0 ; RECT 9355.0 30457.5 9420.0 30522.5 ; - RECT 9355.0 30400.0 9420.0 30465.0 ; - RECT 9355.0 30465.0 9420.0 30490.0 ; + RECT 9355.0 30445.0 9420.0 30510.0 ; + RECT 9355.0 30490.0 9420.0 30510.0 ; RECT 9387.5 30457.5 9685.0 30522.5 ; RECT 9685.0 30457.5 9820.0 30522.5 ; RECT 10390.0 30457.5 10455.0 30522.5 ; - RECT 10390.0 30400.0 10455.0 30465.0 ; + RECT 10390.0 30445.0 10455.0 30510.0 ; RECT 10172.5 30457.5 10422.5 30522.5 ; - RECT 10390.0 30432.5 10455.0 30490.0 ; - RECT 10422.5 30400.0 10670.0 30465.0 ; - RECT 8840.0 31925.0 9190.0 31990.0 ; + RECT 10390.0 30477.5 10455.0 30490.0 ; + RECT 10422.5 30445.0 10670.0 30510.0 ; + RECT 8840.0 31880.0 9190.0 31945.0 ; RECT 9355.0 31867.5 9420.0 31932.5 ; - RECT 9355.0 31925.0 9420.0 31990.0 ; - RECT 9355.0 31900.0 9420.0 31990.0 ; + RECT 9355.0 31880.0 9420.0 31945.0 ; + RECT 9355.0 31900.0 9420.0 31945.0 ; RECT 9387.5 31867.5 9685.0 31932.5 ; RECT 9685.0 31867.5 9820.0 31932.5 ; RECT 10390.0 31867.5 10455.0 31932.5 ; - RECT 10390.0 31925.0 10455.0 31990.0 ; + RECT 10390.0 31880.0 10455.0 31945.0 ; RECT 10172.5 31867.5 10422.5 31932.5 ; - RECT 10390.0 31900.0 10455.0 31957.5 ; - RECT 10422.5 31925.0 10670.0 31990.0 ; - RECT 8840.0 33090.0 9190.0 33155.0 ; + RECT 10390.0 31900.0 10455.0 31912.5 ; + RECT 10422.5 31880.0 10670.0 31945.0 ; + RECT 8840.0 33135.0 9190.0 33200.0 ; RECT 9355.0 33147.5 9420.0 33212.5 ; - RECT 9355.0 33090.0 9420.0 33155.0 ; - RECT 9355.0 33155.0 9420.0 33180.0 ; + RECT 9355.0 33135.0 9420.0 33200.0 ; + RECT 9355.0 33180.0 9420.0 33200.0 ; RECT 9387.5 33147.5 9685.0 33212.5 ; RECT 9685.0 33147.5 9820.0 33212.5 ; RECT 10390.0 33147.5 10455.0 33212.5 ; - RECT 10390.0 33090.0 10455.0 33155.0 ; + RECT 10390.0 33135.0 10455.0 33200.0 ; RECT 10172.5 33147.5 10422.5 33212.5 ; - RECT 10390.0 33122.5 10455.0 33180.0 ; - RECT 10422.5 33090.0 10670.0 33155.0 ; - RECT 8840.0 34615.0 9190.0 34680.0 ; + RECT 10390.0 33167.5 10455.0 33180.0 ; + RECT 10422.5 33135.0 10670.0 33200.0 ; + RECT 8840.0 34570.0 9190.0 34635.0 ; RECT 9355.0 34557.5 9420.0 34622.5 ; - RECT 9355.0 34615.0 9420.0 34680.0 ; - RECT 9355.0 34590.0 9420.0 34680.0 ; + RECT 9355.0 34570.0 9420.0 34635.0 ; + RECT 9355.0 34590.0 9420.0 34635.0 ; RECT 9387.5 34557.5 9685.0 34622.5 ; RECT 9685.0 34557.5 9820.0 34622.5 ; RECT 10390.0 34557.5 10455.0 34622.5 ; - RECT 10390.0 34615.0 10455.0 34680.0 ; + RECT 10390.0 34570.0 10455.0 34635.0 ; RECT 10172.5 34557.5 10422.5 34622.5 ; - RECT 10390.0 34590.0 10455.0 34647.5 ; - RECT 10422.5 34615.0 10670.0 34680.0 ; - RECT 8840.0 35780.0 9190.0 35845.0 ; + RECT 10390.0 34590.0 10455.0 34602.5 ; + RECT 10422.5 34570.0 10670.0 34635.0 ; + RECT 8840.0 35825.0 9190.0 35890.0 ; RECT 9355.0 35837.5 9420.0 35902.5 ; - RECT 9355.0 35780.0 9420.0 35845.0 ; - RECT 9355.0 35845.0 9420.0 35870.0 ; + RECT 9355.0 35825.0 9420.0 35890.0 ; + RECT 9355.0 35870.0 9420.0 35890.0 ; RECT 9387.5 35837.5 9685.0 35902.5 ; RECT 9685.0 35837.5 9820.0 35902.5 ; RECT 10390.0 35837.5 10455.0 35902.5 ; - RECT 10390.0 35780.0 10455.0 35845.0 ; + RECT 10390.0 35825.0 10455.0 35890.0 ; RECT 10172.5 35837.5 10422.5 35902.5 ; - RECT 10390.0 35812.5 10455.0 35870.0 ; - RECT 10422.5 35780.0 10670.0 35845.0 ; - RECT 8840.0 37305.0 9190.0 37370.0 ; + RECT 10390.0 35857.5 10455.0 35870.0 ; + RECT 10422.5 35825.0 10670.0 35890.0 ; + RECT 8840.0 37260.0 9190.0 37325.0 ; RECT 9355.0 37247.5 9420.0 37312.5 ; - RECT 9355.0 37305.0 9420.0 37370.0 ; - RECT 9355.0 37280.0 9420.0 37370.0 ; + RECT 9355.0 37260.0 9420.0 37325.0 ; + RECT 9355.0 37280.0 9420.0 37325.0 ; RECT 9387.5 37247.5 9685.0 37312.5 ; RECT 9685.0 37247.5 9820.0 37312.5 ; RECT 10390.0 37247.5 10455.0 37312.5 ; - RECT 10390.0 37305.0 10455.0 37370.0 ; + RECT 10390.0 37260.0 10455.0 37325.0 ; RECT 10172.5 37247.5 10422.5 37312.5 ; - RECT 10390.0 37280.0 10455.0 37337.5 ; - RECT 10422.5 37305.0 10670.0 37370.0 ; - RECT 8840.0 38470.0 9190.0 38535.0 ; + RECT 10390.0 37280.0 10455.0 37292.5 ; + RECT 10422.5 37260.0 10670.0 37325.0 ; + RECT 8840.0 38515.0 9190.0 38580.0 ; RECT 9355.0 38527.5 9420.0 38592.5 ; - RECT 9355.0 38470.0 9420.0 38535.0 ; - RECT 9355.0 38535.0 9420.0 38560.0 ; + RECT 9355.0 38515.0 9420.0 38580.0 ; + RECT 9355.0 38560.0 9420.0 38580.0 ; RECT 9387.5 38527.5 9685.0 38592.5 ; RECT 9685.0 38527.5 9820.0 38592.5 ; RECT 10390.0 38527.5 10455.0 38592.5 ; - RECT 10390.0 38470.0 10455.0 38535.0 ; + RECT 10390.0 38515.0 10455.0 38580.0 ; RECT 10172.5 38527.5 10422.5 38592.5 ; - RECT 10390.0 38502.5 10455.0 38560.0 ; - RECT 10422.5 38470.0 10670.0 38535.0 ; - RECT 8840.0 39995.0 9190.0 40060.0 ; + RECT 10390.0 38547.5 10455.0 38560.0 ; + RECT 10422.5 38515.0 10670.0 38580.0 ; + RECT 8840.0 39950.0 9190.0 40015.0 ; RECT 9355.0 39937.5 9420.0 40002.5 ; - RECT 9355.0 39995.0 9420.0 40060.0 ; - RECT 9355.0 39970.0 9420.0 40060.0 ; + RECT 9355.0 39950.0 9420.0 40015.0 ; + RECT 9355.0 39970.0 9420.0 40015.0 ; RECT 9387.5 39937.5 9685.0 40002.5 ; RECT 9685.0 39937.5 9820.0 40002.5 ; RECT 10390.0 39937.5 10455.0 40002.5 ; - RECT 10390.0 39995.0 10455.0 40060.0 ; + RECT 10390.0 39950.0 10455.0 40015.0 ; RECT 10172.5 39937.5 10422.5 40002.5 ; - RECT 10390.0 39970.0 10455.0 40027.5 ; - RECT 10422.5 39995.0 10670.0 40060.0 ; + RECT 10390.0 39970.0 10455.0 39982.5 ; + RECT 10422.5 39950.0 10670.0 40015.0 ; RECT 9492.5 20250.0 9557.5 20435.0 ; RECT 9492.5 19090.0 9557.5 19275.0 ; RECT 9132.5 19207.5 9197.5 19057.5 ; RECT 9132.5 20092.5 9197.5 20467.5 ; - RECT 9322.5 19342.5 9387.5 20092.5 ; + RECT 9322.5 19207.5 9387.5 20092.5 ; RECT 9132.5 20092.5 9197.5 20227.5 ; RECT 9322.5 20092.5 9387.5 20227.5 ; RECT 9322.5 20092.5 9387.5 20227.5 ; @@ -2350,9 +2350,9 @@ MACRO sram_2_16_1_freepdk45 RECT 9132.5 19207.5 9197.5 19342.5 ; RECT 9492.5 20182.5 9557.5 20317.5 ; RECT 9492.5 19207.5 9557.5 19342.5 ; - RECT 9190.0 19605.0 9255.0 19740.0 ; - RECT 9190.0 19605.0 9255.0 19740.0 ; - RECT 9355.0 19640.0 9420.0 19705.0 ; + RECT 9190.0 19650.0 9255.0 19785.0 ; + RECT 9190.0 19650.0 9255.0 19785.0 ; + RECT 9355.0 19685.0 9420.0 19750.0 ; RECT 9065.0 20402.5 9625.0 20467.5 ; RECT 9065.0 19057.5 9625.0 19122.5 ; RECT 9692.5 19252.5 9757.5 19057.5 ; @@ -2392,7 +2392,7 @@ MACRO sram_2_16_1_freepdk45 RECT 10972.5 19090.0 11037.5 19275.0 ; RECT 10612.5 19207.5 10677.5 19057.5 ; RECT 10612.5 20092.5 10677.5 20467.5 ; - RECT 10802.5 19342.5 10867.5 20092.5 ; + RECT 10802.5 19207.5 10867.5 20092.5 ; RECT 10612.5 20092.5 10677.5 20227.5 ; RECT 10802.5 20092.5 10867.5 20227.5 ; RECT 10802.5 20092.5 10867.5 20227.5 ; @@ -2403,19 +2403,19 @@ MACRO sram_2_16_1_freepdk45 RECT 10612.5 19207.5 10677.5 19342.5 ; RECT 10972.5 20182.5 11037.5 20317.5 ; RECT 10972.5 19207.5 11037.5 19342.5 ; - RECT 10670.0 19605.0 10735.0 19740.0 ; - RECT 10670.0 19605.0 10735.0 19740.0 ; - RECT 10835.0 19640.0 10900.0 19705.0 ; + RECT 10670.0 19650.0 10735.0 19785.0 ; + RECT 10670.0 19650.0 10735.0 19785.0 ; + RECT 10835.0 19685.0 10900.0 19750.0 ; RECT 10545.0 20402.5 11105.0 20467.5 ; RECT 10545.0 19057.5 11105.0 19122.5 ; - RECT 8807.5 19605.0 8872.5 19740.0 ; + RECT 8807.5 19650.0 8872.5 19785.0 ; RECT 8947.5 19377.5 9012.5 19512.5 ; RECT 9942.5 19482.5 9807.5 19547.5 ; RECT 9492.5 20620.0 9557.5 20435.0 ; RECT 9492.5 21780.0 9557.5 21595.0 ; RECT 9132.5 21662.5 9197.5 21812.5 ; RECT 9132.5 20777.5 9197.5 20402.5 ; - RECT 9322.5 21527.5 9387.5 20777.5 ; + RECT 9322.5 21662.5 9387.5 20777.5 ; RECT 9132.5 20777.5 9197.5 20642.5 ; RECT 9322.5 20777.5 9387.5 20642.5 ; RECT 9322.5 20777.5 9387.5 20642.5 ; @@ -2426,9 +2426,9 @@ MACRO sram_2_16_1_freepdk45 RECT 9132.5 21662.5 9197.5 21527.5 ; RECT 9492.5 20687.5 9557.5 20552.5 ; RECT 9492.5 21662.5 9557.5 21527.5 ; - RECT 9190.0 21265.0 9255.0 21130.0 ; - RECT 9190.0 21265.0 9255.0 21130.0 ; - RECT 9355.0 21230.0 9420.0 21165.0 ; + RECT 9190.0 21220.0 9255.0 21085.0 ; + RECT 9190.0 21220.0 9255.0 21085.0 ; + RECT 9355.0 21185.0 9420.0 21120.0 ; RECT 9065.0 20467.5 9625.0 20402.5 ; RECT 9065.0 21812.5 9625.0 21747.5 ; RECT 9692.5 21617.5 9757.5 21812.5 ; @@ -2468,7 +2468,7 @@ MACRO sram_2_16_1_freepdk45 RECT 10972.5 21780.0 11037.5 21595.0 ; RECT 10612.5 21662.5 10677.5 21812.5 ; RECT 10612.5 20777.5 10677.5 20402.5 ; - RECT 10802.5 21527.5 10867.5 20777.5 ; + RECT 10802.5 21662.5 10867.5 20777.5 ; RECT 10612.5 20777.5 10677.5 20642.5 ; RECT 10802.5 20777.5 10867.5 20642.5 ; RECT 10802.5 20777.5 10867.5 20642.5 ; @@ -2479,19 +2479,19 @@ MACRO sram_2_16_1_freepdk45 RECT 10612.5 21662.5 10677.5 21527.5 ; RECT 10972.5 20687.5 11037.5 20552.5 ; RECT 10972.5 21662.5 11037.5 21527.5 ; - RECT 10670.0 21265.0 10735.0 21130.0 ; - RECT 10670.0 21265.0 10735.0 21130.0 ; - RECT 10835.0 21230.0 10900.0 21165.0 ; + RECT 10670.0 21220.0 10735.0 21085.0 ; + RECT 10670.0 21220.0 10735.0 21085.0 ; + RECT 10835.0 21185.0 10900.0 21120.0 ; RECT 10545.0 20467.5 11105.0 20402.5 ; RECT 10545.0 21812.5 11105.0 21747.5 ; - RECT 8807.5 21130.0 8872.5 21265.0 ; + RECT 8807.5 21085.0 8872.5 21220.0 ; RECT 8947.5 21357.5 9012.5 21492.5 ; RECT 9942.5 21322.5 9807.5 21387.5 ; RECT 9492.5 22940.0 9557.5 23125.0 ; RECT 9492.5 21780.0 9557.5 21965.0 ; RECT 9132.5 21897.5 9197.5 21747.5 ; RECT 9132.5 22782.5 9197.5 23157.5 ; - RECT 9322.5 22032.5 9387.5 22782.5 ; + RECT 9322.5 21897.5 9387.5 22782.5 ; RECT 9132.5 22782.5 9197.5 22917.5 ; RECT 9322.5 22782.5 9387.5 22917.5 ; RECT 9322.5 22782.5 9387.5 22917.5 ; @@ -2502,9 +2502,9 @@ MACRO sram_2_16_1_freepdk45 RECT 9132.5 21897.5 9197.5 22032.5 ; RECT 9492.5 22872.5 9557.5 23007.5 ; RECT 9492.5 21897.5 9557.5 22032.5 ; - RECT 9190.0 22295.0 9255.0 22430.0 ; - RECT 9190.0 22295.0 9255.0 22430.0 ; - RECT 9355.0 22330.0 9420.0 22395.0 ; + RECT 9190.0 22340.0 9255.0 22475.0 ; + RECT 9190.0 22340.0 9255.0 22475.0 ; + RECT 9355.0 22375.0 9420.0 22440.0 ; RECT 9065.0 23092.5 9625.0 23157.5 ; RECT 9065.0 21747.5 9625.0 21812.5 ; RECT 9692.5 21942.5 9757.5 21747.5 ; @@ -2544,7 +2544,7 @@ MACRO sram_2_16_1_freepdk45 RECT 10972.5 21780.0 11037.5 21965.0 ; RECT 10612.5 21897.5 10677.5 21747.5 ; RECT 10612.5 22782.5 10677.5 23157.5 ; - RECT 10802.5 22032.5 10867.5 22782.5 ; + RECT 10802.5 21897.5 10867.5 22782.5 ; RECT 10612.5 22782.5 10677.5 22917.5 ; RECT 10802.5 22782.5 10867.5 22917.5 ; RECT 10802.5 22782.5 10867.5 22917.5 ; @@ -2555,19 +2555,19 @@ MACRO sram_2_16_1_freepdk45 RECT 10612.5 21897.5 10677.5 22032.5 ; RECT 10972.5 22872.5 11037.5 23007.5 ; RECT 10972.5 21897.5 11037.5 22032.5 ; - RECT 10670.0 22295.0 10735.0 22430.0 ; - RECT 10670.0 22295.0 10735.0 22430.0 ; - RECT 10835.0 22330.0 10900.0 22395.0 ; + RECT 10670.0 22340.0 10735.0 22475.0 ; + RECT 10670.0 22340.0 10735.0 22475.0 ; + RECT 10835.0 22375.0 10900.0 22440.0 ; RECT 10545.0 23092.5 11105.0 23157.5 ; RECT 10545.0 21747.5 11105.0 21812.5 ; - RECT 8807.5 22295.0 8872.5 22430.0 ; + RECT 8807.5 22340.0 8872.5 22475.0 ; RECT 8947.5 22067.5 9012.5 22202.5 ; RECT 9942.5 22172.5 9807.5 22237.5 ; RECT 9492.5 23310.0 9557.5 23125.0 ; RECT 9492.5 24470.0 9557.5 24285.0 ; RECT 9132.5 24352.5 9197.5 24502.5 ; RECT 9132.5 23467.5 9197.5 23092.5 ; - RECT 9322.5 24217.5 9387.5 23467.5 ; + RECT 9322.5 24352.5 9387.5 23467.5 ; RECT 9132.5 23467.5 9197.5 23332.5 ; RECT 9322.5 23467.5 9387.5 23332.5 ; RECT 9322.5 23467.5 9387.5 23332.5 ; @@ -2578,9 +2578,9 @@ MACRO sram_2_16_1_freepdk45 RECT 9132.5 24352.5 9197.5 24217.5 ; RECT 9492.5 23377.5 9557.5 23242.5 ; RECT 9492.5 24352.5 9557.5 24217.5 ; - RECT 9190.0 23955.0 9255.0 23820.0 ; - RECT 9190.0 23955.0 9255.0 23820.0 ; - RECT 9355.0 23920.0 9420.0 23855.0 ; + RECT 9190.0 23910.0 9255.0 23775.0 ; + RECT 9190.0 23910.0 9255.0 23775.0 ; + RECT 9355.0 23875.0 9420.0 23810.0 ; RECT 9065.0 23157.5 9625.0 23092.5 ; RECT 9065.0 24502.5 9625.0 24437.5 ; RECT 9692.5 24307.5 9757.5 24502.5 ; @@ -2620,7 +2620,7 @@ MACRO sram_2_16_1_freepdk45 RECT 10972.5 24470.0 11037.5 24285.0 ; RECT 10612.5 24352.5 10677.5 24502.5 ; RECT 10612.5 23467.5 10677.5 23092.5 ; - RECT 10802.5 24217.5 10867.5 23467.5 ; + RECT 10802.5 24352.5 10867.5 23467.5 ; RECT 10612.5 23467.5 10677.5 23332.5 ; RECT 10802.5 23467.5 10867.5 23332.5 ; RECT 10802.5 23467.5 10867.5 23332.5 ; @@ -2631,19 +2631,19 @@ MACRO sram_2_16_1_freepdk45 RECT 10612.5 24352.5 10677.5 24217.5 ; RECT 10972.5 23377.5 11037.5 23242.5 ; RECT 10972.5 24352.5 11037.5 24217.5 ; - RECT 10670.0 23955.0 10735.0 23820.0 ; - RECT 10670.0 23955.0 10735.0 23820.0 ; - RECT 10835.0 23920.0 10900.0 23855.0 ; + RECT 10670.0 23910.0 10735.0 23775.0 ; + RECT 10670.0 23910.0 10735.0 23775.0 ; + RECT 10835.0 23875.0 10900.0 23810.0 ; RECT 10545.0 23157.5 11105.0 23092.5 ; RECT 10545.0 24502.5 11105.0 24437.5 ; - RECT 8807.5 23820.0 8872.5 23955.0 ; + RECT 8807.5 23775.0 8872.5 23910.0 ; RECT 8947.5 24047.5 9012.5 24182.5 ; RECT 9942.5 24012.5 9807.5 24077.5 ; RECT 9492.5 25630.0 9557.5 25815.0 ; RECT 9492.5 24470.0 9557.5 24655.0 ; RECT 9132.5 24587.5 9197.5 24437.5 ; RECT 9132.5 25472.5 9197.5 25847.5 ; - RECT 9322.5 24722.5 9387.5 25472.5 ; + RECT 9322.5 24587.5 9387.5 25472.5 ; RECT 9132.5 25472.5 9197.5 25607.5 ; RECT 9322.5 25472.5 9387.5 25607.5 ; RECT 9322.5 25472.5 9387.5 25607.5 ; @@ -2654,9 +2654,9 @@ MACRO sram_2_16_1_freepdk45 RECT 9132.5 24587.5 9197.5 24722.5 ; RECT 9492.5 25562.5 9557.5 25697.5 ; RECT 9492.5 24587.5 9557.5 24722.5 ; - RECT 9190.0 24985.0 9255.0 25120.0 ; - RECT 9190.0 24985.0 9255.0 25120.0 ; - RECT 9355.0 25020.0 9420.0 25085.0 ; + RECT 9190.0 25030.0 9255.0 25165.0 ; + RECT 9190.0 25030.0 9255.0 25165.0 ; + RECT 9355.0 25065.0 9420.0 25130.0 ; RECT 9065.0 25782.5 9625.0 25847.5 ; RECT 9065.0 24437.5 9625.0 24502.5 ; RECT 9692.5 24632.5 9757.5 24437.5 ; @@ -2696,7 +2696,7 @@ MACRO sram_2_16_1_freepdk45 RECT 10972.5 24470.0 11037.5 24655.0 ; RECT 10612.5 24587.5 10677.5 24437.5 ; RECT 10612.5 25472.5 10677.5 25847.5 ; - RECT 10802.5 24722.5 10867.5 25472.5 ; + RECT 10802.5 24587.5 10867.5 25472.5 ; RECT 10612.5 25472.5 10677.5 25607.5 ; RECT 10802.5 25472.5 10867.5 25607.5 ; RECT 10802.5 25472.5 10867.5 25607.5 ; @@ -2707,19 +2707,19 @@ MACRO sram_2_16_1_freepdk45 RECT 10612.5 24587.5 10677.5 24722.5 ; RECT 10972.5 25562.5 11037.5 25697.5 ; RECT 10972.5 24587.5 11037.5 24722.5 ; - RECT 10670.0 24985.0 10735.0 25120.0 ; - RECT 10670.0 24985.0 10735.0 25120.0 ; - RECT 10835.0 25020.0 10900.0 25085.0 ; + RECT 10670.0 25030.0 10735.0 25165.0 ; + RECT 10670.0 25030.0 10735.0 25165.0 ; + RECT 10835.0 25065.0 10900.0 25130.0 ; RECT 10545.0 25782.5 11105.0 25847.5 ; RECT 10545.0 24437.5 11105.0 24502.5 ; - RECT 8807.5 24985.0 8872.5 25120.0 ; + RECT 8807.5 25030.0 8872.5 25165.0 ; RECT 8947.5 24757.5 9012.5 24892.5 ; RECT 9942.5 24862.5 9807.5 24927.5 ; RECT 9492.5 26000.0 9557.5 25815.0 ; RECT 9492.5 27160.0 9557.5 26975.0 ; RECT 9132.5 27042.5 9197.5 27192.5 ; RECT 9132.5 26157.5 9197.5 25782.5 ; - RECT 9322.5 26907.5 9387.5 26157.5 ; + RECT 9322.5 27042.5 9387.5 26157.5 ; RECT 9132.5 26157.5 9197.5 26022.5 ; RECT 9322.5 26157.5 9387.5 26022.5 ; RECT 9322.5 26157.5 9387.5 26022.5 ; @@ -2730,9 +2730,9 @@ MACRO sram_2_16_1_freepdk45 RECT 9132.5 27042.5 9197.5 26907.5 ; RECT 9492.5 26067.5 9557.5 25932.5 ; RECT 9492.5 27042.5 9557.5 26907.5 ; - RECT 9190.0 26645.0 9255.0 26510.0 ; - RECT 9190.0 26645.0 9255.0 26510.0 ; - RECT 9355.0 26610.0 9420.0 26545.0 ; + RECT 9190.0 26600.0 9255.0 26465.0 ; + RECT 9190.0 26600.0 9255.0 26465.0 ; + RECT 9355.0 26565.0 9420.0 26500.0 ; RECT 9065.0 25847.5 9625.0 25782.5 ; RECT 9065.0 27192.5 9625.0 27127.5 ; RECT 9692.5 26997.5 9757.5 27192.5 ; @@ -2772,7 +2772,7 @@ MACRO sram_2_16_1_freepdk45 RECT 10972.5 27160.0 11037.5 26975.0 ; RECT 10612.5 27042.5 10677.5 27192.5 ; RECT 10612.5 26157.5 10677.5 25782.5 ; - RECT 10802.5 26907.5 10867.5 26157.5 ; + RECT 10802.5 27042.5 10867.5 26157.5 ; RECT 10612.5 26157.5 10677.5 26022.5 ; RECT 10802.5 26157.5 10867.5 26022.5 ; RECT 10802.5 26157.5 10867.5 26022.5 ; @@ -2783,19 +2783,19 @@ MACRO sram_2_16_1_freepdk45 RECT 10612.5 27042.5 10677.5 26907.5 ; RECT 10972.5 26067.5 11037.5 25932.5 ; RECT 10972.5 27042.5 11037.5 26907.5 ; - RECT 10670.0 26645.0 10735.0 26510.0 ; - RECT 10670.0 26645.0 10735.0 26510.0 ; - RECT 10835.0 26610.0 10900.0 26545.0 ; + RECT 10670.0 26600.0 10735.0 26465.0 ; + RECT 10670.0 26600.0 10735.0 26465.0 ; + RECT 10835.0 26565.0 10900.0 26500.0 ; RECT 10545.0 25847.5 11105.0 25782.5 ; RECT 10545.0 27192.5 11105.0 27127.5 ; - RECT 8807.5 26510.0 8872.5 26645.0 ; + RECT 8807.5 26465.0 8872.5 26600.0 ; RECT 8947.5 26737.5 9012.5 26872.5 ; RECT 9942.5 26702.5 9807.5 26767.5 ; RECT 9492.5 28320.0 9557.5 28505.0 ; RECT 9492.5 27160.0 9557.5 27345.0 ; RECT 9132.5 27277.5 9197.5 27127.5 ; RECT 9132.5 28162.5 9197.5 28537.5 ; - RECT 9322.5 27412.5 9387.5 28162.5 ; + RECT 9322.5 27277.5 9387.5 28162.5 ; RECT 9132.5 28162.5 9197.5 28297.5 ; RECT 9322.5 28162.5 9387.5 28297.5 ; RECT 9322.5 28162.5 9387.5 28297.5 ; @@ -2806,9 +2806,9 @@ MACRO sram_2_16_1_freepdk45 RECT 9132.5 27277.5 9197.5 27412.5 ; RECT 9492.5 28252.5 9557.5 28387.5 ; RECT 9492.5 27277.5 9557.5 27412.5 ; - RECT 9190.0 27675.0 9255.0 27810.0 ; - RECT 9190.0 27675.0 9255.0 27810.0 ; - RECT 9355.0 27710.0 9420.0 27775.0 ; + RECT 9190.0 27720.0 9255.0 27855.0 ; + RECT 9190.0 27720.0 9255.0 27855.0 ; + RECT 9355.0 27755.0 9420.0 27820.0 ; RECT 9065.0 28472.5 9625.0 28537.5 ; RECT 9065.0 27127.5 9625.0 27192.5 ; RECT 9692.5 27322.5 9757.5 27127.5 ; @@ -2848,7 +2848,7 @@ MACRO sram_2_16_1_freepdk45 RECT 10972.5 27160.0 11037.5 27345.0 ; RECT 10612.5 27277.5 10677.5 27127.5 ; RECT 10612.5 28162.5 10677.5 28537.5 ; - RECT 10802.5 27412.5 10867.5 28162.5 ; + RECT 10802.5 27277.5 10867.5 28162.5 ; RECT 10612.5 28162.5 10677.5 28297.5 ; RECT 10802.5 28162.5 10867.5 28297.5 ; RECT 10802.5 28162.5 10867.5 28297.5 ; @@ -2859,19 +2859,19 @@ MACRO sram_2_16_1_freepdk45 RECT 10612.5 27277.5 10677.5 27412.5 ; RECT 10972.5 28252.5 11037.5 28387.5 ; RECT 10972.5 27277.5 11037.5 27412.5 ; - RECT 10670.0 27675.0 10735.0 27810.0 ; - RECT 10670.0 27675.0 10735.0 27810.0 ; - RECT 10835.0 27710.0 10900.0 27775.0 ; + RECT 10670.0 27720.0 10735.0 27855.0 ; + RECT 10670.0 27720.0 10735.0 27855.0 ; + RECT 10835.0 27755.0 10900.0 27820.0 ; RECT 10545.0 28472.5 11105.0 28537.5 ; RECT 10545.0 27127.5 11105.0 27192.5 ; - RECT 8807.5 27675.0 8872.5 27810.0 ; + RECT 8807.5 27720.0 8872.5 27855.0 ; RECT 8947.5 27447.5 9012.5 27582.5 ; RECT 9942.5 27552.5 9807.5 27617.5 ; RECT 9492.5 28690.0 9557.5 28505.0 ; RECT 9492.5 29850.0 9557.5 29665.0 ; RECT 9132.5 29732.5 9197.5 29882.5 ; RECT 9132.5 28847.5 9197.5 28472.5 ; - RECT 9322.5 29597.5 9387.5 28847.5 ; + RECT 9322.5 29732.5 9387.5 28847.5 ; RECT 9132.5 28847.5 9197.5 28712.5 ; RECT 9322.5 28847.5 9387.5 28712.5 ; RECT 9322.5 28847.5 9387.5 28712.5 ; @@ -2882,9 +2882,9 @@ MACRO sram_2_16_1_freepdk45 RECT 9132.5 29732.5 9197.5 29597.5 ; RECT 9492.5 28757.5 9557.5 28622.5 ; RECT 9492.5 29732.5 9557.5 29597.5 ; - RECT 9190.0 29335.0 9255.0 29200.0 ; - RECT 9190.0 29335.0 9255.0 29200.0 ; - RECT 9355.0 29300.0 9420.0 29235.0 ; + RECT 9190.0 29290.0 9255.0 29155.0 ; + RECT 9190.0 29290.0 9255.0 29155.0 ; + RECT 9355.0 29255.0 9420.0 29190.0 ; RECT 9065.0 28537.5 9625.0 28472.5 ; RECT 9065.0 29882.5 9625.0 29817.5 ; RECT 9692.5 29687.5 9757.5 29882.5 ; @@ -2924,7 +2924,7 @@ MACRO sram_2_16_1_freepdk45 RECT 10972.5 29850.0 11037.5 29665.0 ; RECT 10612.5 29732.5 10677.5 29882.5 ; RECT 10612.5 28847.5 10677.5 28472.5 ; - RECT 10802.5 29597.5 10867.5 28847.5 ; + RECT 10802.5 29732.5 10867.5 28847.5 ; RECT 10612.5 28847.5 10677.5 28712.5 ; RECT 10802.5 28847.5 10867.5 28712.5 ; RECT 10802.5 28847.5 10867.5 28712.5 ; @@ -2935,19 +2935,19 @@ MACRO sram_2_16_1_freepdk45 RECT 10612.5 29732.5 10677.5 29597.5 ; RECT 10972.5 28757.5 11037.5 28622.5 ; RECT 10972.5 29732.5 11037.5 29597.5 ; - RECT 10670.0 29335.0 10735.0 29200.0 ; - RECT 10670.0 29335.0 10735.0 29200.0 ; - RECT 10835.0 29300.0 10900.0 29235.0 ; + RECT 10670.0 29290.0 10735.0 29155.0 ; + RECT 10670.0 29290.0 10735.0 29155.0 ; + RECT 10835.0 29255.0 10900.0 29190.0 ; RECT 10545.0 28537.5 11105.0 28472.5 ; RECT 10545.0 29882.5 11105.0 29817.5 ; - RECT 8807.5 29200.0 8872.5 29335.0 ; + RECT 8807.5 29155.0 8872.5 29290.0 ; RECT 8947.5 29427.5 9012.5 29562.5 ; RECT 9942.5 29392.5 9807.5 29457.5 ; RECT 9492.5 31010.0 9557.5 31195.0 ; RECT 9492.5 29850.0 9557.5 30035.0 ; RECT 9132.5 29967.5 9197.5 29817.5 ; RECT 9132.5 30852.5 9197.5 31227.5 ; - RECT 9322.5 30102.5 9387.5 30852.5 ; + RECT 9322.5 29967.5 9387.5 30852.5 ; RECT 9132.5 30852.5 9197.5 30987.5 ; RECT 9322.5 30852.5 9387.5 30987.5 ; RECT 9322.5 30852.5 9387.5 30987.5 ; @@ -2958,9 +2958,9 @@ MACRO sram_2_16_1_freepdk45 RECT 9132.5 29967.5 9197.5 30102.5 ; RECT 9492.5 30942.5 9557.5 31077.5 ; RECT 9492.5 29967.5 9557.5 30102.5 ; - RECT 9190.0 30365.0 9255.0 30500.0 ; - RECT 9190.0 30365.0 9255.0 30500.0 ; - RECT 9355.0 30400.0 9420.0 30465.0 ; + RECT 9190.0 30410.0 9255.0 30545.0 ; + RECT 9190.0 30410.0 9255.0 30545.0 ; + RECT 9355.0 30445.0 9420.0 30510.0 ; RECT 9065.0 31162.5 9625.0 31227.5 ; RECT 9065.0 29817.5 9625.0 29882.5 ; RECT 9692.5 30012.5 9757.5 29817.5 ; @@ -3000,7 +3000,7 @@ MACRO sram_2_16_1_freepdk45 RECT 10972.5 29850.0 11037.5 30035.0 ; RECT 10612.5 29967.5 10677.5 29817.5 ; RECT 10612.5 30852.5 10677.5 31227.5 ; - RECT 10802.5 30102.5 10867.5 30852.5 ; + RECT 10802.5 29967.5 10867.5 30852.5 ; RECT 10612.5 30852.5 10677.5 30987.5 ; RECT 10802.5 30852.5 10867.5 30987.5 ; RECT 10802.5 30852.5 10867.5 30987.5 ; @@ -3011,19 +3011,19 @@ MACRO sram_2_16_1_freepdk45 RECT 10612.5 29967.5 10677.5 30102.5 ; RECT 10972.5 30942.5 11037.5 31077.5 ; RECT 10972.5 29967.5 11037.5 30102.5 ; - RECT 10670.0 30365.0 10735.0 30500.0 ; - RECT 10670.0 30365.0 10735.0 30500.0 ; - RECT 10835.0 30400.0 10900.0 30465.0 ; + RECT 10670.0 30410.0 10735.0 30545.0 ; + RECT 10670.0 30410.0 10735.0 30545.0 ; + RECT 10835.0 30445.0 10900.0 30510.0 ; RECT 10545.0 31162.5 11105.0 31227.5 ; RECT 10545.0 29817.5 11105.0 29882.5 ; - RECT 8807.5 30365.0 8872.5 30500.0 ; + RECT 8807.5 30410.0 8872.5 30545.0 ; RECT 8947.5 30137.5 9012.5 30272.5 ; RECT 9942.5 30242.5 9807.5 30307.5 ; RECT 9492.5 31380.0 9557.5 31195.0 ; RECT 9492.5 32540.0 9557.5 32355.0 ; RECT 9132.5 32422.5 9197.5 32572.5 ; RECT 9132.5 31537.5 9197.5 31162.5 ; - RECT 9322.5 32287.5 9387.5 31537.5 ; + RECT 9322.5 32422.5 9387.5 31537.5 ; RECT 9132.5 31537.5 9197.5 31402.5 ; RECT 9322.5 31537.5 9387.5 31402.5 ; RECT 9322.5 31537.5 9387.5 31402.5 ; @@ -3034,9 +3034,9 @@ MACRO sram_2_16_1_freepdk45 RECT 9132.5 32422.5 9197.5 32287.5 ; RECT 9492.5 31447.5 9557.5 31312.5 ; RECT 9492.5 32422.5 9557.5 32287.5 ; - RECT 9190.0 32025.0 9255.0 31890.0 ; - RECT 9190.0 32025.0 9255.0 31890.0 ; - RECT 9355.0 31990.0 9420.0 31925.0 ; + RECT 9190.0 31980.0 9255.0 31845.0 ; + RECT 9190.0 31980.0 9255.0 31845.0 ; + RECT 9355.0 31945.0 9420.0 31880.0 ; RECT 9065.0 31227.5 9625.0 31162.5 ; RECT 9065.0 32572.5 9625.0 32507.5 ; RECT 9692.5 32377.5 9757.5 32572.5 ; @@ -3076,7 +3076,7 @@ MACRO sram_2_16_1_freepdk45 RECT 10972.5 32540.0 11037.5 32355.0 ; RECT 10612.5 32422.5 10677.5 32572.5 ; RECT 10612.5 31537.5 10677.5 31162.5 ; - RECT 10802.5 32287.5 10867.5 31537.5 ; + RECT 10802.5 32422.5 10867.5 31537.5 ; RECT 10612.5 31537.5 10677.5 31402.5 ; RECT 10802.5 31537.5 10867.5 31402.5 ; RECT 10802.5 31537.5 10867.5 31402.5 ; @@ -3087,19 +3087,19 @@ MACRO sram_2_16_1_freepdk45 RECT 10612.5 32422.5 10677.5 32287.5 ; RECT 10972.5 31447.5 11037.5 31312.5 ; RECT 10972.5 32422.5 11037.5 32287.5 ; - RECT 10670.0 32025.0 10735.0 31890.0 ; - RECT 10670.0 32025.0 10735.0 31890.0 ; - RECT 10835.0 31990.0 10900.0 31925.0 ; + RECT 10670.0 31980.0 10735.0 31845.0 ; + RECT 10670.0 31980.0 10735.0 31845.0 ; + RECT 10835.0 31945.0 10900.0 31880.0 ; RECT 10545.0 31227.5 11105.0 31162.5 ; RECT 10545.0 32572.5 11105.0 32507.5 ; - RECT 8807.5 31890.0 8872.5 32025.0 ; + RECT 8807.5 31845.0 8872.5 31980.0 ; RECT 8947.5 32117.5 9012.5 32252.5 ; RECT 9942.5 32082.5 9807.5 32147.5 ; RECT 9492.5 33700.0 9557.5 33885.0 ; RECT 9492.5 32540.0 9557.5 32725.0 ; RECT 9132.5 32657.5 9197.5 32507.5 ; RECT 9132.5 33542.5 9197.5 33917.5 ; - RECT 9322.5 32792.5 9387.5 33542.5 ; + RECT 9322.5 32657.5 9387.5 33542.5 ; RECT 9132.5 33542.5 9197.5 33677.5 ; RECT 9322.5 33542.5 9387.5 33677.5 ; RECT 9322.5 33542.5 9387.5 33677.5 ; @@ -3110,9 +3110,9 @@ MACRO sram_2_16_1_freepdk45 RECT 9132.5 32657.5 9197.5 32792.5 ; RECT 9492.5 33632.5 9557.5 33767.5 ; RECT 9492.5 32657.5 9557.5 32792.5 ; - RECT 9190.0 33055.0 9255.0 33190.0 ; - RECT 9190.0 33055.0 9255.0 33190.0 ; - RECT 9355.0 33090.0 9420.0 33155.0 ; + RECT 9190.0 33100.0 9255.0 33235.0 ; + RECT 9190.0 33100.0 9255.0 33235.0 ; + RECT 9355.0 33135.0 9420.0 33200.0 ; RECT 9065.0 33852.5 9625.0 33917.5 ; RECT 9065.0 32507.5 9625.0 32572.5 ; RECT 9692.5 32702.5 9757.5 32507.5 ; @@ -3152,7 +3152,7 @@ MACRO sram_2_16_1_freepdk45 RECT 10972.5 32540.0 11037.5 32725.0 ; RECT 10612.5 32657.5 10677.5 32507.5 ; RECT 10612.5 33542.5 10677.5 33917.5 ; - RECT 10802.5 32792.5 10867.5 33542.5 ; + RECT 10802.5 32657.5 10867.5 33542.5 ; RECT 10612.5 33542.5 10677.5 33677.5 ; RECT 10802.5 33542.5 10867.5 33677.5 ; RECT 10802.5 33542.5 10867.5 33677.5 ; @@ -3163,19 +3163,19 @@ MACRO sram_2_16_1_freepdk45 RECT 10612.5 32657.5 10677.5 32792.5 ; RECT 10972.5 33632.5 11037.5 33767.5 ; RECT 10972.5 32657.5 11037.5 32792.5 ; - RECT 10670.0 33055.0 10735.0 33190.0 ; - RECT 10670.0 33055.0 10735.0 33190.0 ; - RECT 10835.0 33090.0 10900.0 33155.0 ; + RECT 10670.0 33100.0 10735.0 33235.0 ; + RECT 10670.0 33100.0 10735.0 33235.0 ; + RECT 10835.0 33135.0 10900.0 33200.0 ; RECT 10545.0 33852.5 11105.0 33917.5 ; RECT 10545.0 32507.5 11105.0 32572.5 ; - RECT 8807.5 33055.0 8872.5 33190.0 ; + RECT 8807.5 33100.0 8872.5 33235.0 ; RECT 8947.5 32827.5 9012.5 32962.5 ; RECT 9942.5 32932.5 9807.5 32997.5 ; RECT 9492.5 34070.0 9557.5 33885.0 ; RECT 9492.5 35230.0 9557.5 35045.0 ; RECT 9132.5 35112.5 9197.5 35262.5 ; RECT 9132.5 34227.5 9197.5 33852.5 ; - RECT 9322.5 34977.5 9387.5 34227.5 ; + RECT 9322.5 35112.5 9387.5 34227.5 ; RECT 9132.5 34227.5 9197.5 34092.5 ; RECT 9322.5 34227.5 9387.5 34092.5 ; RECT 9322.5 34227.5 9387.5 34092.5 ; @@ -3186,9 +3186,9 @@ MACRO sram_2_16_1_freepdk45 RECT 9132.5 35112.5 9197.5 34977.5 ; RECT 9492.5 34137.5 9557.5 34002.5 ; RECT 9492.5 35112.5 9557.5 34977.5 ; - RECT 9190.0 34715.0 9255.0 34580.0 ; - RECT 9190.0 34715.0 9255.0 34580.0 ; - RECT 9355.0 34680.0 9420.0 34615.0 ; + RECT 9190.0 34670.0 9255.0 34535.0 ; + RECT 9190.0 34670.0 9255.0 34535.0 ; + RECT 9355.0 34635.0 9420.0 34570.0 ; RECT 9065.0 33917.5 9625.0 33852.5 ; RECT 9065.0 35262.5 9625.0 35197.5 ; RECT 9692.5 35067.5 9757.5 35262.5 ; @@ -3228,7 +3228,7 @@ MACRO sram_2_16_1_freepdk45 RECT 10972.5 35230.0 11037.5 35045.0 ; RECT 10612.5 35112.5 10677.5 35262.5 ; RECT 10612.5 34227.5 10677.5 33852.5 ; - RECT 10802.5 34977.5 10867.5 34227.5 ; + RECT 10802.5 35112.5 10867.5 34227.5 ; RECT 10612.5 34227.5 10677.5 34092.5 ; RECT 10802.5 34227.5 10867.5 34092.5 ; RECT 10802.5 34227.5 10867.5 34092.5 ; @@ -3239,19 +3239,19 @@ MACRO sram_2_16_1_freepdk45 RECT 10612.5 35112.5 10677.5 34977.5 ; RECT 10972.5 34137.5 11037.5 34002.5 ; RECT 10972.5 35112.5 11037.5 34977.5 ; - RECT 10670.0 34715.0 10735.0 34580.0 ; - RECT 10670.0 34715.0 10735.0 34580.0 ; - RECT 10835.0 34680.0 10900.0 34615.0 ; + RECT 10670.0 34670.0 10735.0 34535.0 ; + RECT 10670.0 34670.0 10735.0 34535.0 ; + RECT 10835.0 34635.0 10900.0 34570.0 ; RECT 10545.0 33917.5 11105.0 33852.5 ; RECT 10545.0 35262.5 11105.0 35197.5 ; - RECT 8807.5 34580.0 8872.5 34715.0 ; + RECT 8807.5 34535.0 8872.5 34670.0 ; RECT 8947.5 34807.5 9012.5 34942.5 ; RECT 9942.5 34772.5 9807.5 34837.5 ; RECT 9492.5 36390.0 9557.5 36575.0 ; RECT 9492.5 35230.0 9557.5 35415.0 ; RECT 9132.5 35347.5 9197.5 35197.5 ; RECT 9132.5 36232.5 9197.5 36607.5 ; - RECT 9322.5 35482.5 9387.5 36232.5 ; + RECT 9322.5 35347.5 9387.5 36232.5 ; RECT 9132.5 36232.5 9197.5 36367.5 ; RECT 9322.5 36232.5 9387.5 36367.5 ; RECT 9322.5 36232.5 9387.5 36367.5 ; @@ -3262,9 +3262,9 @@ MACRO sram_2_16_1_freepdk45 RECT 9132.5 35347.5 9197.5 35482.5 ; RECT 9492.5 36322.5 9557.5 36457.5 ; RECT 9492.5 35347.5 9557.5 35482.5 ; - RECT 9190.0 35745.0 9255.0 35880.0 ; - RECT 9190.0 35745.0 9255.0 35880.0 ; - RECT 9355.0 35780.0 9420.0 35845.0 ; + RECT 9190.0 35790.0 9255.0 35925.0 ; + RECT 9190.0 35790.0 9255.0 35925.0 ; + RECT 9355.0 35825.0 9420.0 35890.0 ; RECT 9065.0 36542.5 9625.0 36607.5 ; RECT 9065.0 35197.5 9625.0 35262.5 ; RECT 9692.5 35392.5 9757.5 35197.5 ; @@ -3304,7 +3304,7 @@ MACRO sram_2_16_1_freepdk45 RECT 10972.5 35230.0 11037.5 35415.0 ; RECT 10612.5 35347.5 10677.5 35197.5 ; RECT 10612.5 36232.5 10677.5 36607.5 ; - RECT 10802.5 35482.5 10867.5 36232.5 ; + RECT 10802.5 35347.5 10867.5 36232.5 ; RECT 10612.5 36232.5 10677.5 36367.5 ; RECT 10802.5 36232.5 10867.5 36367.5 ; RECT 10802.5 36232.5 10867.5 36367.5 ; @@ -3315,19 +3315,19 @@ MACRO sram_2_16_1_freepdk45 RECT 10612.5 35347.5 10677.5 35482.5 ; RECT 10972.5 36322.5 11037.5 36457.5 ; RECT 10972.5 35347.5 11037.5 35482.5 ; - RECT 10670.0 35745.0 10735.0 35880.0 ; - RECT 10670.0 35745.0 10735.0 35880.0 ; - RECT 10835.0 35780.0 10900.0 35845.0 ; + RECT 10670.0 35790.0 10735.0 35925.0 ; + RECT 10670.0 35790.0 10735.0 35925.0 ; + RECT 10835.0 35825.0 10900.0 35890.0 ; RECT 10545.0 36542.5 11105.0 36607.5 ; RECT 10545.0 35197.5 11105.0 35262.5 ; - RECT 8807.5 35745.0 8872.5 35880.0 ; + RECT 8807.5 35790.0 8872.5 35925.0 ; RECT 8947.5 35517.5 9012.5 35652.5 ; RECT 9942.5 35622.5 9807.5 35687.5 ; RECT 9492.5 36760.0 9557.5 36575.0 ; RECT 9492.5 37920.0 9557.5 37735.0 ; RECT 9132.5 37802.5 9197.5 37952.5 ; RECT 9132.5 36917.5 9197.5 36542.5 ; - RECT 9322.5 37667.5 9387.5 36917.5 ; + RECT 9322.5 37802.5 9387.5 36917.5 ; RECT 9132.5 36917.5 9197.5 36782.5 ; RECT 9322.5 36917.5 9387.5 36782.5 ; RECT 9322.5 36917.5 9387.5 36782.5 ; @@ -3338,9 +3338,9 @@ MACRO sram_2_16_1_freepdk45 RECT 9132.5 37802.5 9197.5 37667.5 ; RECT 9492.5 36827.5 9557.5 36692.5 ; RECT 9492.5 37802.5 9557.5 37667.5 ; - RECT 9190.0 37405.0 9255.0 37270.0 ; - RECT 9190.0 37405.0 9255.0 37270.0 ; - RECT 9355.0 37370.0 9420.0 37305.0 ; + RECT 9190.0 37360.0 9255.0 37225.0 ; + RECT 9190.0 37360.0 9255.0 37225.0 ; + RECT 9355.0 37325.0 9420.0 37260.0 ; RECT 9065.0 36607.5 9625.0 36542.5 ; RECT 9065.0 37952.5 9625.0 37887.5 ; RECT 9692.5 37757.5 9757.5 37952.5 ; @@ -3380,7 +3380,7 @@ MACRO sram_2_16_1_freepdk45 RECT 10972.5 37920.0 11037.5 37735.0 ; RECT 10612.5 37802.5 10677.5 37952.5 ; RECT 10612.5 36917.5 10677.5 36542.5 ; - RECT 10802.5 37667.5 10867.5 36917.5 ; + RECT 10802.5 37802.5 10867.5 36917.5 ; RECT 10612.5 36917.5 10677.5 36782.5 ; RECT 10802.5 36917.5 10867.5 36782.5 ; RECT 10802.5 36917.5 10867.5 36782.5 ; @@ -3391,19 +3391,19 @@ MACRO sram_2_16_1_freepdk45 RECT 10612.5 37802.5 10677.5 37667.5 ; RECT 10972.5 36827.5 11037.5 36692.5 ; RECT 10972.5 37802.5 11037.5 37667.5 ; - RECT 10670.0 37405.0 10735.0 37270.0 ; - RECT 10670.0 37405.0 10735.0 37270.0 ; - RECT 10835.0 37370.0 10900.0 37305.0 ; + RECT 10670.0 37360.0 10735.0 37225.0 ; + RECT 10670.0 37360.0 10735.0 37225.0 ; + RECT 10835.0 37325.0 10900.0 37260.0 ; RECT 10545.0 36607.5 11105.0 36542.5 ; RECT 10545.0 37952.5 11105.0 37887.5 ; - RECT 8807.5 37270.0 8872.5 37405.0 ; + RECT 8807.5 37225.0 8872.5 37360.0 ; RECT 8947.5 37497.5 9012.5 37632.5 ; RECT 9942.5 37462.5 9807.5 37527.5 ; RECT 9492.5 39080.0 9557.5 39265.0 ; RECT 9492.5 37920.0 9557.5 38105.0 ; RECT 9132.5 38037.5 9197.5 37887.5 ; RECT 9132.5 38922.5 9197.5 39297.5 ; - RECT 9322.5 38172.5 9387.5 38922.5 ; + RECT 9322.5 38037.5 9387.5 38922.5 ; RECT 9132.5 38922.5 9197.5 39057.5 ; RECT 9322.5 38922.5 9387.5 39057.5 ; RECT 9322.5 38922.5 9387.5 39057.5 ; @@ -3414,9 +3414,9 @@ MACRO sram_2_16_1_freepdk45 RECT 9132.5 38037.5 9197.5 38172.5 ; RECT 9492.5 39012.5 9557.5 39147.5 ; RECT 9492.5 38037.5 9557.5 38172.5 ; - RECT 9190.0 38435.0 9255.0 38570.0 ; - RECT 9190.0 38435.0 9255.0 38570.0 ; - RECT 9355.0 38470.0 9420.0 38535.0 ; + RECT 9190.0 38480.0 9255.0 38615.0 ; + RECT 9190.0 38480.0 9255.0 38615.0 ; + RECT 9355.0 38515.0 9420.0 38580.0 ; RECT 9065.0 39232.5 9625.0 39297.5 ; RECT 9065.0 37887.5 9625.0 37952.5 ; RECT 9692.5 38082.5 9757.5 37887.5 ; @@ -3456,7 +3456,7 @@ MACRO sram_2_16_1_freepdk45 RECT 10972.5 37920.0 11037.5 38105.0 ; RECT 10612.5 38037.5 10677.5 37887.5 ; RECT 10612.5 38922.5 10677.5 39297.5 ; - RECT 10802.5 38172.5 10867.5 38922.5 ; + RECT 10802.5 38037.5 10867.5 38922.5 ; RECT 10612.5 38922.5 10677.5 39057.5 ; RECT 10802.5 38922.5 10867.5 39057.5 ; RECT 10802.5 38922.5 10867.5 39057.5 ; @@ -3467,19 +3467,19 @@ MACRO sram_2_16_1_freepdk45 RECT 10612.5 38037.5 10677.5 38172.5 ; RECT 10972.5 39012.5 11037.5 39147.5 ; RECT 10972.5 38037.5 11037.5 38172.5 ; - RECT 10670.0 38435.0 10735.0 38570.0 ; - RECT 10670.0 38435.0 10735.0 38570.0 ; - RECT 10835.0 38470.0 10900.0 38535.0 ; + RECT 10670.0 38480.0 10735.0 38615.0 ; + RECT 10670.0 38480.0 10735.0 38615.0 ; + RECT 10835.0 38515.0 10900.0 38580.0 ; RECT 10545.0 39232.5 11105.0 39297.5 ; RECT 10545.0 37887.5 11105.0 37952.5 ; - RECT 8807.5 38435.0 8872.5 38570.0 ; + RECT 8807.5 38480.0 8872.5 38615.0 ; RECT 8947.5 38207.5 9012.5 38342.5 ; RECT 9942.5 38312.5 9807.5 38377.5 ; RECT 9492.5 39450.0 9557.5 39265.0 ; RECT 9492.5 40610.0 9557.5 40425.0 ; RECT 9132.5 40492.5 9197.5 40642.5 ; RECT 9132.5 39607.5 9197.5 39232.5 ; - RECT 9322.5 40357.5 9387.5 39607.5 ; + RECT 9322.5 40492.5 9387.5 39607.5 ; RECT 9132.5 39607.5 9197.5 39472.5 ; RECT 9322.5 39607.5 9387.5 39472.5 ; RECT 9322.5 39607.5 9387.5 39472.5 ; @@ -3490,9 +3490,9 @@ MACRO sram_2_16_1_freepdk45 RECT 9132.5 40492.5 9197.5 40357.5 ; RECT 9492.5 39517.5 9557.5 39382.5 ; RECT 9492.5 40492.5 9557.5 40357.5 ; - RECT 9190.0 40095.0 9255.0 39960.0 ; - RECT 9190.0 40095.0 9255.0 39960.0 ; - RECT 9355.0 40060.0 9420.0 39995.0 ; + RECT 9190.0 40050.0 9255.0 39915.0 ; + RECT 9190.0 40050.0 9255.0 39915.0 ; + RECT 9355.0 40015.0 9420.0 39950.0 ; RECT 9065.0 39297.5 9625.0 39232.5 ; RECT 9065.0 40642.5 9625.0 40577.5 ; RECT 9692.5 40447.5 9757.5 40642.5 ; @@ -3532,7 +3532,7 @@ MACRO sram_2_16_1_freepdk45 RECT 10972.5 40610.0 11037.5 40425.0 ; RECT 10612.5 40492.5 10677.5 40642.5 ; RECT 10612.5 39607.5 10677.5 39232.5 ; - RECT 10802.5 40357.5 10867.5 39607.5 ; + RECT 10802.5 40492.5 10867.5 39607.5 ; RECT 10612.5 39607.5 10677.5 39472.5 ; RECT 10802.5 39607.5 10867.5 39472.5 ; RECT 10802.5 39607.5 10867.5 39472.5 ; @@ -3543,12 +3543,12 @@ MACRO sram_2_16_1_freepdk45 RECT 10612.5 40492.5 10677.5 40357.5 ; RECT 10972.5 39517.5 11037.5 39382.5 ; RECT 10972.5 40492.5 11037.5 40357.5 ; - RECT 10670.0 40095.0 10735.0 39960.0 ; - RECT 10670.0 40095.0 10735.0 39960.0 ; - RECT 10835.0 40060.0 10900.0 39995.0 ; + RECT 10670.0 40050.0 10735.0 39915.0 ; + RECT 10670.0 40050.0 10735.0 39915.0 ; + RECT 10835.0 40015.0 10900.0 39950.0 ; RECT 10545.0 39297.5 11105.0 39232.5 ; RECT 10545.0 40642.5 11105.0 40577.5 ; - RECT 8807.5 39960.0 8872.5 40095.0 ; + RECT 8807.5 39915.0 8872.5 40050.0 ; RECT 8947.5 40187.5 9012.5 40322.5 ; RECT 9942.5 40152.5 9807.5 40217.5 ; RECT 8610.0 19412.5 8980.0 19477.5 ; @@ -3567,22 +3567,22 @@ MACRO sram_2_16_1_freepdk45 RECT 8610.0 37532.5 8980.0 37597.5 ; RECT 8610.0 38242.5 8980.0 38307.5 ; RECT 8610.0 40222.5 8980.0 40287.5 ; - RECT 10835.0 19640.0 10900.0 19705.0 ; - RECT 10835.0 21165.0 10900.0 21230.0 ; - RECT 10835.0 22330.0 10900.0 22395.0 ; - RECT 10835.0 23855.0 10900.0 23920.0 ; - RECT 10835.0 25020.0 10900.0 25085.0 ; - RECT 10835.0 26545.0 10900.0 26610.0 ; - RECT 10835.0 27710.0 10900.0 27775.0 ; - RECT 10835.0 29235.0 10900.0 29300.0 ; - RECT 10835.0 30400.0 10900.0 30465.0 ; - RECT 10835.0 31925.0 10900.0 31990.0 ; - RECT 10835.0 33090.0 10900.0 33155.0 ; - RECT 10835.0 34615.0 10900.0 34680.0 ; - RECT 10835.0 35780.0 10900.0 35845.0 ; - RECT 10835.0 37305.0 10900.0 37370.0 ; - RECT 10835.0 38470.0 10900.0 38535.0 ; - RECT 10835.0 39995.0 10900.0 40060.0 ; + RECT 10835.0 19685.0 10900.0 19750.0 ; + RECT 10835.0 21120.0 10900.0 21185.0 ; + RECT 10835.0 22375.0 10900.0 22440.0 ; + RECT 10835.0 23810.0 10900.0 23875.0 ; + RECT 10835.0 25065.0 10900.0 25130.0 ; + RECT 10835.0 26500.0 10900.0 26565.0 ; + RECT 10835.0 27755.0 10900.0 27820.0 ; + RECT 10835.0 29190.0 10900.0 29255.0 ; + RECT 10835.0 30445.0 10900.0 30510.0 ; + RECT 10835.0 31880.0 10900.0 31945.0 ; + RECT 10835.0 33135.0 10900.0 33200.0 ; + RECT 10835.0 34570.0 10900.0 34635.0 ; + RECT 10835.0 35825.0 10900.0 35890.0 ; + RECT 10835.0 37260.0 10900.0 37325.0 ; + RECT 10835.0 38515.0 10900.0 38580.0 ; + RECT 10835.0 39950.0 10900.0 40015.0 ; RECT 8610.0 20402.5 9065.0 20467.5 ; RECT 8610.0 23092.5 9065.0 23157.5 ; RECT 8610.0 25782.5 9065.0 25847.5 ; @@ -3652,7 +3652,7 @@ MACRO sram_2_16_1_freepdk45 RECT 13700.0 3795.0 13565.0 3860.0 ; RECT 13290.0 1610.0 13155.0 1675.0 ; RECT 13495.0 3157.5 13360.0 3222.5 ; - RECT 13700.0 41477.5 13565.0 41542.5 ; + RECT 13700.0 41587.5 13565.0 41652.5 ; RECT 13905.0 10297.5 13770.0 10362.5 ; RECT 14110.0 14322.5 13975.0 14387.5 ; RECT 13085.0 8092.5 12950.0 8157.5 ; @@ -3662,49 +3662,49 @@ MACRO sram_2_16_1_freepdk45 RECT 12777.5 14452.5 12642.5 14517.5 ; RECT 12777.5 3955.0 12642.5 4020.0 ; RECT 12777.5 11230.0 12642.5 11295.0 ; - RECT 16125.0 0.0 16475.0 42270.0 ; - RECT 4175.0 0.0 4525.0 42270.0 ; - RECT 3515.0 19520.0 3450.0 19585.0 ; - RECT 3482.5 19520.0 3452.5 19585.0 ; - RECT 3515.0 19552.5 3450.0 20137.5 ; - RECT 3515.0 20682.5 3450.0 21077.5 ; - RECT 3515.0 22002.5 3450.0 22587.5 ; + RECT 16125.0 0.0 16475.0 42337.5 ; + RECT 4175.0 0.0 4525.0 42337.5 ; + RECT 3455.0 19520.0 3390.0 19585.0 ; + RECT 3422.5 19520.0 3407.5 19585.0 ; + RECT 3455.0 19552.5 3390.0 20137.5 ; + RECT 3455.0 20682.5 3390.0 21077.5 ; + RECT 3455.0 22002.5 3390.0 22587.5 ; RECT 2657.5 22440.0 2280.0 22505.0 ; RECT 2657.5 25400.0 2280.0 25465.0 ; RECT 2657.5 20450.0 2280.0 20515.0 ; RECT 2657.5 23410.0 2280.0 23475.0 ; - RECT 3485.0 19520.0 3420.0 19585.0 ; - RECT 3515.0 20650.0 3450.0 20715.0 ; - RECT 1960.0 31335.0 1895.0 32100.0 ; - RECT 3515.0 24685.0 3450.0 26115.0 ; + RECT 3440.0 19520.0 3375.0 19585.0 ; + RECT 3455.0 20650.0 3390.0 20715.0 ; + RECT 2005.0 31335.0 1940.0 32100.0 ; + RECT 3455.0 24685.0 3390.0 26115.0 ; RECT 2485.0 19435.0 2280.0 19500.0 ; RECT 1962.5 26115.0 1897.5 28052.5 ; RECT 1747.5 26525.0 1682.5 28310.0 ; - RECT 3290.0 27550.0 3225.0 28120.0 ; - RECT 3430.0 27345.0 3365.0 28310.0 ; - RECT 3570.0 26730.0 3505.0 28500.0 ; - RECT 3290.0 29060.0 3225.0 29125.0 ; - RECT 3290.0 28595.0 3225.0 29092.5 ; - RECT 3452.5 29060.0 3257.5 29125.0 ; - RECT 3520.0 29225.0 3455.0 29290.0 ; - RECT 3487.5 29225.0 3452.5 29290.0 ; - RECT 3520.0 29257.5 3455.0 32797.5 ; - RECT 600.0 27550.0 535.0 28680.0 ; - RECT 740.0 26730.0 675.0 28870.0 ; - RECT 880.0 26935.0 815.0 29060.0 ; - RECT 600.0 29620.0 535.0 29685.0 ; - RECT 600.0 29155.0 535.0 29652.5 ; - RECT 762.5 29620.0 567.5 29685.0 ; - RECT 795.0 29817.5 730.0 30212.5 ; - RECT 795.0 30377.5 730.0 30772.5 ; - RECT 1960.0 31302.5 1895.0 31367.5 ; - RECT 1927.5 31302.5 1895.0 31367.5 ; - RECT 1960.0 31210.0 1895.0 31335.0 ; - RECT 1960.0 30617.5 1895.0 31012.5 ; + RECT 3380.0 27550.0 3315.0 28120.0 ; + RECT 3520.0 27345.0 3455.0 28310.0 ; + RECT 3660.0 26730.0 3595.0 28500.0 ; + RECT 3380.0 29060.0 3315.0 29125.0 ; + RECT 3380.0 28595.0 3315.0 29092.5 ; + RECT 3407.5 29060.0 3347.5 29125.0 ; + RECT 3475.0 29225.0 3410.0 29290.0 ; + RECT 3442.5 29225.0 3407.5 29290.0 ; + RECT 3475.0 29257.5 3410.0 32797.5 ; + RECT 690.0 27550.0 625.0 28680.0 ; + RECT 830.0 26730.0 765.0 28870.0 ; + RECT 970.0 26935.0 905.0 29060.0 ; + RECT 690.0 29620.0 625.0 29685.0 ; + RECT 690.0 29155.0 625.0 29652.5 ; + RECT 717.5 29620.0 657.5 29685.0 ; + RECT 750.0 29817.5 685.0 30212.5 ; + RECT 750.0 30377.5 685.0 30772.5 ; + RECT 2005.0 31302.5 1940.0 31367.5 ; + RECT 1972.5 31302.5 1940.0 31367.5 ; + RECT 2005.0 31210.0 1940.0 31335.0 ; + RECT 2005.0 30617.5 1940.0 31012.5 ; RECT 1962.5 28475.0 1897.5 28845.0 ; RECT 2017.5 29550.0 1952.5 29990.0 ; - RECT 795.0 30937.5 730.0 31175.0 ; - RECT 1960.0 30215.0 1895.0 30452.5 ; + RECT 750.0 30937.5 685.0 31175.0 ; + RECT 2005.0 30215.0 1940.0 30452.5 ; RECT 4067.5 19230.0 4002.5 31335.0 ; RECT 4067.5 26320.0 4002.5 27925.0 ; RECT 2722.5 19230.0 2657.5 31335.0 ; @@ -3728,7 +3728,7 @@ MACRO sram_2_16_1_freepdk45 RECT 2875.0 19847.5 2690.0 19912.5 ; RECT 4035.0 19847.5 3850.0 19912.5 ; RECT 2832.5 19297.5 2657.5 19742.5 ; - RECT 3782.5 19487.5 3032.5 19552.5 ; + RECT 3917.5 19487.5 3032.5 19552.5 ; RECT 2965.0 19297.5 2800.0 19362.5 ; RECT 2965.0 19677.5 2800.0 19742.5 ; RECT 3032.5 19297.5 2897.5 19362.5 ; @@ -3745,15 +3745,15 @@ MACRO sram_2_16_1_freepdk45 RECT 4047.5 19297.5 3982.5 19742.5 ; RECT 2942.5 19847.5 2807.5 19912.5 ; RECT 3917.5 19847.5 3782.5 19912.5 ; - RECT 3520.0 19355.0 3385.0 19420.0 ; - RECT 3520.0 19355.0 3385.0 19420.0 ; - RECT 3485.0 19520.0 3420.0 19585.0 ; + RECT 3475.0 19355.0 3340.0 19420.0 ; + RECT 3475.0 19355.0 3340.0 19420.0 ; + RECT 3440.0 19520.0 3375.0 19585.0 ; RECT 2722.5 19230.0 2657.5 19980.0 ; RECT 4067.5 19230.0 4002.5 19980.0 ; RECT 2875.0 20787.5 2690.0 20852.5 ; RECT 4035.0 20787.5 3850.0 20852.5 ; RECT 2877.5 20047.5 2657.5 20492.5 ; - RECT 3637.5 20617.5 3207.5 20682.5 ; + RECT 3702.5 20617.5 3207.5 20682.5 ; RECT 3010.0 20047.5 2845.0 20112.5 ; RECT 3010.0 20427.5 2845.0 20492.5 ; RECT 3175.0 20237.5 3010.0 20302.5 ; @@ -3776,15 +3776,15 @@ MACRO sram_2_16_1_freepdk45 RECT 4032.5 20047.5 3967.5 20492.5 ; RECT 2942.5 20787.5 2807.5 20852.5 ; RECT 3917.5 20787.5 3782.5 20852.5 ; - RECT 3550.0 20105.0 3415.0 20170.0 ; - RECT 3550.0 20105.0 3415.0 20170.0 ; - RECT 3515.0 20650.0 3450.0 20715.0 ; + RECT 3490.0 20105.0 3355.0 20170.0 ; + RECT 3490.0 20105.0 3355.0 20170.0 ; + RECT 3455.0 20650.0 3390.0 20715.0 ; RECT 2722.5 19980.0 2657.5 20920.0 ; RECT 4067.5 19980.0 4002.5 20920.0 ; RECT 2875.0 22297.5 2690.0 22362.5 ; RECT 4035.0 22297.5 3850.0 22362.5 ; RECT 2877.5 20987.5 2657.5 22192.5 ; - RECT 3637.5 21937.5 3207.5 22002.5 ; + RECT 3702.5 21937.5 3207.5 22002.5 ; RECT 3010.0 20987.5 2845.0 21052.5 ; RECT 3010.0 21367.5 2845.0 21432.5 ; RECT 3010.0 21747.5 2845.0 21812.5 ; @@ -3819,15 +3819,15 @@ MACRO sram_2_16_1_freepdk45 RECT 4032.5 20987.5 3967.5 22192.5 ; RECT 2942.5 22297.5 2807.5 22362.5 ; RECT 3917.5 22297.5 3782.5 22362.5 ; - RECT 3550.0 21045.0 3415.0 21110.0 ; - RECT 3550.0 21045.0 3415.0 21110.0 ; - RECT 3515.0 21970.0 3450.0 22035.0 ; + RECT 3490.0 21045.0 3355.0 21110.0 ; + RECT 3490.0 21045.0 3355.0 21110.0 ; + RECT 3455.0 21970.0 3390.0 22035.0 ; RECT 2722.5 20920.0 2657.5 22430.0 ; RECT 4067.5 20920.0 4002.5 22430.0 ; RECT 2875.0 24947.5 2690.0 25012.5 ; RECT 4035.0 24947.5 3850.0 25012.5 ; RECT 2877.5 22497.5 2657.5 24842.5 ; - RECT 3637.5 24587.5 3207.5 24652.5 ; + RECT 3702.5 24587.5 3207.5 24652.5 ; RECT 3010.0 22497.5 2845.0 22562.5 ; RECT 3010.0 22877.5 2845.0 22942.5 ; RECT 3010.0 23257.5 2845.0 23322.5 ; @@ -3886,12 +3886,12 @@ MACRO sram_2_16_1_freepdk45 RECT 4032.5 22497.5 3967.5 24842.5 ; RECT 2942.5 24947.5 2807.5 25012.5 ; RECT 3917.5 24947.5 3782.5 25012.5 ; - RECT 3550.0 22555.0 3415.0 22620.0 ; - RECT 3550.0 22555.0 3415.0 22620.0 ; - RECT 3515.0 24620.0 3450.0 24685.0 ; + RECT 3490.0 22555.0 3355.0 22620.0 ; + RECT 3490.0 22555.0 3355.0 22620.0 ; + RECT 3455.0 24620.0 3390.0 24685.0 ; RECT 2722.5 22430.0 2657.5 25080.0 ; RECT 4067.5 22430.0 4002.5 25080.0 ; - RECT 3827.5 27992.5 4067.5 28057.5 ; + RECT 3872.5 27992.5 4067.5 28057.5 ; RECT 3032.5 27992.5 2657.5 28057.5 ; RECT 3032.5 28372.5 2657.5 28437.5 ; RECT 2875.0 28732.5 2690.0 28797.5 ; @@ -3908,38 +3908,38 @@ MACRO sram_2_16_1_freepdk45 RECT 3032.5 28562.5 2897.5 28627.5 ; RECT 3032.5 28562.5 2897.5 28627.5 ; RECT 3032.5 28372.5 2897.5 28437.5 ; - RECT 3827.5 27992.5 3692.5 28057.5 ; - RECT 3827.5 28182.5 3692.5 28247.5 ; - RECT 3827.5 28182.5 3692.5 28247.5 ; - RECT 3827.5 27992.5 3692.5 28057.5 ; - RECT 3827.5 28182.5 3692.5 28247.5 ; - RECT 3827.5 28372.5 3692.5 28437.5 ; - RECT 3827.5 28372.5 3692.5 28437.5 ; - RECT 3827.5 28182.5 3692.5 28247.5 ; - RECT 3827.5 28372.5 3692.5 28437.5 ; - RECT 3827.5 28562.5 3692.5 28627.5 ; - RECT 3827.5 28562.5 3692.5 28627.5 ; - RECT 3827.5 28372.5 3692.5 28437.5 ; + RECT 3872.5 27992.5 3737.5 28057.5 ; + RECT 3872.5 28182.5 3737.5 28247.5 ; + RECT 3872.5 28182.5 3737.5 28247.5 ; + RECT 3872.5 27992.5 3737.5 28057.5 ; + RECT 3872.5 28182.5 3737.5 28247.5 ; + RECT 3872.5 28372.5 3737.5 28437.5 ; + RECT 3872.5 28372.5 3737.5 28437.5 ; + RECT 3872.5 28182.5 3737.5 28247.5 ; + RECT 3872.5 28372.5 3737.5 28437.5 ; + RECT 3872.5 28562.5 3737.5 28627.5 ; + RECT 3872.5 28562.5 3737.5 28627.5 ; + RECT 3872.5 28372.5 3737.5 28437.5 ; RECT 2942.5 28732.5 2807.5 28797.5 ; RECT 3917.5 28732.5 3782.5 28797.5 ; - RECT 3570.0 28567.5 3505.0 28432.5 ; - RECT 3430.0 28377.5 3365.0 28242.5 ; - RECT 3290.0 28187.5 3225.0 28052.5 ; + RECT 3660.0 28567.5 3595.0 28432.5 ; + RECT 3520.0 28377.5 3455.0 28242.5 ; + RECT 3380.0 28187.5 3315.0 28052.5 ; RECT 3032.5 28182.5 2897.5 28247.5 ; RECT 3032.5 28562.5 2897.5 28627.5 ; - RECT 3827.5 28562.5 3692.5 28627.5 ; - RECT 3325.0 28562.5 3190.0 28627.5 ; - RECT 3290.0 28052.5 3225.0 28187.5 ; - RECT 3430.0 28242.5 3365.0 28377.5 ; - RECT 3570.0 28432.5 3505.0 28567.5 ; - RECT 3325.0 28562.5 3190.0 28627.5 ; + RECT 3872.5 28562.5 3737.5 28627.5 ; + RECT 3415.0 28562.5 3280.0 28627.5 ; + RECT 3380.0 28052.5 3315.0 28187.5 ; + RECT 3520.0 28242.5 3455.0 28377.5 ; + RECT 3660.0 28432.5 3595.0 28567.5 ; + RECT 3415.0 28562.5 3280.0 28627.5 ; RECT 2722.5 27925.0 2657.5 28935.0 ; RECT 4067.5 27925.0 4002.5 28935.0 ; RECT 2875.0 29362.5 2690.0 29427.5 ; RECT 4035.0 29362.5 3850.0 29427.5 ; RECT 3917.5 29002.5 4067.5 29067.5 ; RECT 3032.5 29002.5 2657.5 29067.5 ; - RECT 3782.5 29192.5 3032.5 29257.5 ; + RECT 3917.5 29192.5 3032.5 29257.5 ; RECT 3032.5 29002.5 2897.5 29067.5 ; RECT 3032.5 29192.5 2897.5 29257.5 ; RECT 3032.5 29192.5 2897.5 29257.5 ; @@ -3950,9 +3950,9 @@ MACRO sram_2_16_1_freepdk45 RECT 3917.5 29002.5 3782.5 29067.5 ; RECT 2942.5 29362.5 2807.5 29427.5 ; RECT 3917.5 29362.5 3782.5 29427.5 ; - RECT 3520.0 29060.0 3385.0 29125.0 ; - RECT 3520.0 29060.0 3385.0 29125.0 ; - RECT 3485.0 29225.0 3420.0 29290.0 ; + RECT 3475.0 29060.0 3340.0 29125.0 ; + RECT 3475.0 29060.0 3340.0 29125.0 ; + RECT 3440.0 29225.0 3375.0 29290.0 ; RECT 2722.5 28935.0 2657.5 29495.0 ; RECT 4067.5 28935.0 4002.5 29495.0 ; RECT 1462.5 27992.5 1312.5 28057.5 ; @@ -4025,7 +4025,7 @@ MACRO sram_2_16_1_freepdk45 RECT 1345.0 30347.5 1530.0 30282.5 ; RECT 1462.5 30707.5 1312.5 30642.5 ; RECT 2347.5 30707.5 2722.5 30642.5 ; - RECT 1597.5 30517.5 2347.5 30452.5 ; + RECT 1462.5 30517.5 2347.5 30452.5 ; RECT 2347.5 30707.5 2482.5 30642.5 ; RECT 2347.5 30517.5 2482.5 30452.5 ; RECT 2347.5 30517.5 2482.5 30452.5 ; @@ -4036,16 +4036,16 @@ MACRO sram_2_16_1_freepdk45 RECT 1462.5 30707.5 1597.5 30642.5 ; RECT 2437.5 30347.5 2572.5 30282.5 ; RECT 1462.5 30347.5 1597.5 30282.5 ; - RECT 1860.0 30650.0 1995.0 30585.0 ; - RECT 1860.0 30650.0 1995.0 30585.0 ; - RECT 1895.0 30485.0 1960.0 30420.0 ; + RECT 1905.0 30650.0 2040.0 30585.0 ; + RECT 1905.0 30650.0 2040.0 30585.0 ; + RECT 1940.0 30485.0 2005.0 30420.0 ; RECT 2657.5 30775.0 2722.5 30215.0 ; RECT 1312.5 30775.0 1377.5 30215.0 ; RECT 2505.0 30907.5 2690.0 30842.5 ; RECT 1345.0 30907.5 1530.0 30842.5 ; RECT 1462.5 31267.5 1312.5 31202.5 ; RECT 2347.5 31267.5 2722.5 31202.5 ; - RECT 1597.5 31077.5 2347.5 31012.5 ; + RECT 1462.5 31077.5 2347.5 31012.5 ; RECT 2347.5 31267.5 2482.5 31202.5 ; RECT 2347.5 31077.5 2482.5 31012.5 ; RECT 2347.5 31077.5 2482.5 31012.5 ; @@ -4056,12 +4056,12 @@ MACRO sram_2_16_1_freepdk45 RECT 1462.5 31267.5 1597.5 31202.5 ; RECT 2437.5 30907.5 2572.5 30842.5 ; RECT 1462.5 30907.5 1597.5 30842.5 ; - RECT 1860.0 31210.0 1995.0 31145.0 ; - RECT 1860.0 31210.0 1995.0 31145.0 ; - RECT 1895.0 31045.0 1960.0 30980.0 ; + RECT 1905.0 31210.0 2040.0 31145.0 ; + RECT 1905.0 31210.0 2040.0 31145.0 ; + RECT 1940.0 31045.0 2005.0 30980.0 ; RECT 2657.5 31335.0 2722.5 30775.0 ; RECT 1312.5 31335.0 1377.5 30775.0 ; - RECT 1137.5 28552.5 1377.5 28617.5 ; + RECT 1182.5 28552.5 1377.5 28617.5 ; RECT 342.5 28552.5 -32.5 28617.5 ; RECT 342.5 28932.5 -32.5 28997.5 ; RECT 185.0 29292.5 8.881784197e-13 29357.5 ; @@ -4078,38 +4078,38 @@ MACRO sram_2_16_1_freepdk45 RECT 342.5 29122.5 207.5 29187.5 ; RECT 342.5 29122.5 207.5 29187.5 ; RECT 342.5 28932.5 207.5 28997.5 ; - RECT 1137.5 28552.5 1002.5 28617.5 ; - RECT 1137.5 28742.5 1002.5 28807.5 ; - RECT 1137.5 28742.5 1002.5 28807.5 ; - RECT 1137.5 28552.5 1002.5 28617.5 ; - RECT 1137.5 28742.5 1002.5 28807.5 ; - RECT 1137.5 28932.5 1002.5 28997.5 ; - RECT 1137.5 28932.5 1002.5 28997.5 ; - RECT 1137.5 28742.5 1002.5 28807.5 ; - RECT 1137.5 28932.5 1002.5 28997.5 ; - RECT 1137.5 29122.5 1002.5 29187.5 ; - RECT 1137.5 29122.5 1002.5 29187.5 ; - RECT 1137.5 28932.5 1002.5 28997.5 ; + RECT 1182.5 28552.5 1047.5 28617.5 ; + RECT 1182.5 28742.5 1047.5 28807.5 ; + RECT 1182.5 28742.5 1047.5 28807.5 ; + RECT 1182.5 28552.5 1047.5 28617.5 ; + RECT 1182.5 28742.5 1047.5 28807.5 ; + RECT 1182.5 28932.5 1047.5 28997.5 ; + RECT 1182.5 28932.5 1047.5 28997.5 ; + RECT 1182.5 28742.5 1047.5 28807.5 ; + RECT 1182.5 28932.5 1047.5 28997.5 ; + RECT 1182.5 29122.5 1047.5 29187.5 ; + RECT 1182.5 29122.5 1047.5 29187.5 ; + RECT 1182.5 28932.5 1047.5 28997.5 ; RECT 252.5 29292.5 117.5 29357.5 ; RECT 1227.5 29292.5 1092.5 29357.5 ; - RECT 880.0 29127.5 815.0 28992.5 ; - RECT 740.0 28937.5 675.0 28802.5 ; - RECT 600.0 28747.5 535.0 28612.5 ; + RECT 970.0 29127.5 905.0 28992.5 ; + RECT 830.0 28937.5 765.0 28802.5 ; + RECT 690.0 28747.5 625.0 28612.5 ; RECT 342.5 28742.5 207.5 28807.5 ; RECT 342.5 29122.5 207.5 29187.5 ; - RECT 1137.5 29122.5 1002.5 29187.5 ; - RECT 635.0 29122.5 500.0 29187.5 ; - RECT 600.0 28612.5 535.0 28747.5 ; - RECT 740.0 28802.5 675.0 28937.5 ; - RECT 880.0 28992.5 815.0 29127.5 ; - RECT 635.0 29122.5 500.0 29187.5 ; + RECT 1182.5 29122.5 1047.5 29187.5 ; + RECT 725.0 29122.5 590.0 29187.5 ; + RECT 690.0 28612.5 625.0 28747.5 ; + RECT 830.0 28802.5 765.0 28937.5 ; + RECT 970.0 28992.5 905.0 29127.5 ; + RECT 725.0 29122.5 590.0 29187.5 ; RECT 32.5 28485.0 -32.5 29495.0 ; RECT 1377.5 28485.0 1312.5 29495.0 ; RECT 185.0 29922.5 8.881784197e-13 29987.5 ; RECT 1345.0 29922.5 1160.0 29987.5 ; RECT 1227.5 29562.5 1377.5 29627.5 ; RECT 342.5 29562.5 -32.5 29627.5 ; - RECT 1092.5 29752.5 342.5 29817.5 ; + RECT 1227.5 29752.5 342.5 29817.5 ; RECT 342.5 29562.5 207.5 29627.5 ; RECT 342.5 29752.5 207.5 29817.5 ; RECT 342.5 29752.5 207.5 29817.5 ; @@ -4120,16 +4120,16 @@ MACRO sram_2_16_1_freepdk45 RECT 1227.5 29562.5 1092.5 29627.5 ; RECT 252.5 29922.5 117.5 29987.5 ; RECT 1227.5 29922.5 1092.5 29987.5 ; - RECT 830.0 29620.0 695.0 29685.0 ; - RECT 830.0 29620.0 695.0 29685.0 ; - RECT 795.0 29785.0 730.0 29850.0 ; + RECT 785.0 29620.0 650.0 29685.0 ; + RECT 785.0 29620.0 650.0 29685.0 ; + RECT 750.0 29785.0 685.0 29850.0 ; RECT 32.5 29495.0 -32.5 30055.0 ; RECT 1377.5 29495.0 1312.5 30055.0 ; RECT 185.0 30482.5 8.881784197e-13 30547.5 ; RECT 1345.0 30482.5 1160.0 30547.5 ; RECT 1227.5 30122.5 1377.5 30187.5 ; RECT 342.5 30122.5 -32.5 30187.5 ; - RECT 1092.5 30312.5 342.5 30377.5 ; + RECT 1227.5 30312.5 342.5 30377.5 ; RECT 342.5 30122.5 207.5 30187.5 ; RECT 342.5 30312.5 207.5 30377.5 ; RECT 342.5 30312.5 207.5 30377.5 ; @@ -4140,16 +4140,16 @@ MACRO sram_2_16_1_freepdk45 RECT 1227.5 30122.5 1092.5 30187.5 ; RECT 252.5 30482.5 117.5 30547.5 ; RECT 1227.5 30482.5 1092.5 30547.5 ; - RECT 830.0 30180.0 695.0 30245.0 ; - RECT 830.0 30180.0 695.0 30245.0 ; - RECT 795.0 30345.0 730.0 30410.0 ; + RECT 785.0 30180.0 650.0 30245.0 ; + RECT 785.0 30180.0 650.0 30245.0 ; + RECT 750.0 30345.0 685.0 30410.0 ; RECT 32.5 30055.0 -32.5 30615.0 ; RECT 1377.5 30055.0 1312.5 30615.0 ; RECT 185.0 31042.5 8.881784197e-13 31107.5 ; RECT 1345.0 31042.5 1160.0 31107.5 ; RECT 1227.5 30682.5 1377.5 30747.5 ; RECT 342.5 30682.5 -32.5 30747.5 ; - RECT 1092.5 30872.5 342.5 30937.5 ; + RECT 1227.5 30872.5 342.5 30937.5 ; RECT 342.5 30682.5 207.5 30747.5 ; RECT 342.5 30872.5 207.5 30937.5 ; RECT 342.5 30872.5 207.5 30937.5 ; @@ -4160,35 +4160,35 @@ MACRO sram_2_16_1_freepdk45 RECT 1227.5 30682.5 1092.5 30747.5 ; RECT 252.5 31042.5 117.5 31107.5 ; RECT 1227.5 31042.5 1092.5 31107.5 ; - RECT 830.0 30740.0 695.0 30805.0 ; - RECT 830.0 30740.0 695.0 30805.0 ; - RECT 795.0 30905.0 730.0 30970.0 ; + RECT 785.0 30740.0 650.0 30805.0 ; + RECT 785.0 30740.0 650.0 30805.0 ; + RECT 750.0 30905.0 685.0 30970.0 ; RECT 32.5 30615.0 -32.5 31175.0 ; RECT 1377.5 30615.0 1312.5 31175.0 ; RECT 1380.0 33907.5 935.0 33972.5 ; RECT 1380.0 36317.5 935.0 36382.5 ; - RECT 1345.0 36762.5 935.0 36827.5 ; + RECT 1345.0 36817.5 935.0 36882.5 ; RECT 20.0 35112.5 935.0 35177.5 ; RECT 20.0 32422.5 935.0 32487.5 ; - RECT 1960.0 33435.0 1895.0 34135.0 ; - RECT 1960.0 33627.5 1895.0 33692.5 ; - RECT 1960.0 33435.0 1895.0 33660.0 ; - RECT 1927.5 33627.5 1025.0 33692.5 ; + RECT 2005.0 33435.0 1940.0 34135.0 ; + RECT 2005.0 33627.5 1940.0 33692.5 ; + RECT 2005.0 33435.0 1940.0 33660.0 ; + RECT 1972.5 33627.5 1025.0 33692.5 ; RECT 2690.0 33497.5 2465.0 33562.5 ; RECT 2430.0 32627.5 2365.0 32692.5 ; - RECT 1960.0 32627.5 1895.0 32692.5 ; + RECT 2005.0 32627.5 1940.0 32692.5 ; RECT 2430.0 32660.0 2365.0 33307.5 ; - RECT 2397.5 32627.5 1927.5 32692.5 ; - RECT 1960.0 32330.0 1895.0 32660.0 ; - RECT 1927.5 32627.5 1172.5 32692.5 ; + RECT 2397.5 32627.5 1972.5 32692.5 ; + RECT 2005.0 32330.0 1940.0 32660.0 ; + RECT 1972.5 32627.5 1172.5 32692.5 ; RECT 1172.5 32030.0 750.0 32095.0 ; - RECT 1995.0 32265.0 1860.0 32330.0 ; - RECT 1960.0 34135.0 1895.0 34340.0 ; + RECT 2040.0 32265.0 1905.0 32330.0 ; + RECT 2005.0 34135.0 1940.0 34340.0 ; RECT 2505.0 32027.5 2690.0 31962.5 ; RECT 1345.0 32027.5 1530.0 31962.5 ; RECT 1462.5 32387.5 1312.5 32322.5 ; RECT 2347.5 32387.5 2722.5 32322.5 ; - RECT 1597.5 32197.5 2347.5 32132.5 ; + RECT 1462.5 32197.5 2347.5 32132.5 ; RECT 2347.5 32387.5 2482.5 32322.5 ; RECT 2347.5 32197.5 2482.5 32132.5 ; RECT 2347.5 32197.5 2482.5 32132.5 ; @@ -4199,9 +4199,9 @@ MACRO sram_2_16_1_freepdk45 RECT 1462.5 32387.5 1597.5 32322.5 ; RECT 2437.5 32027.5 2572.5 31962.5 ; RECT 1462.5 32027.5 1597.5 31962.5 ; - RECT 1860.0 32330.0 1995.0 32265.0 ; - RECT 1860.0 32330.0 1995.0 32265.0 ; - RECT 1895.0 32165.0 1960.0 32100.0 ; + RECT 1905.0 32330.0 2040.0 32265.0 ; + RECT 1905.0 32330.0 2040.0 32265.0 ; + RECT 1940.0 32165.0 2005.0 32100.0 ; RECT 2657.5 32455.0 2722.5 31895.0 ; RECT 1312.5 32455.0 1377.5 31895.0 ; RECT 2330.0 33307.5 2465.0 33372.5 ; @@ -4217,7 +4217,7 @@ MACRO sram_2_16_1_freepdk45 RECT 4035.0 34562.5 3850.0 34627.5 ; RECT 3917.5 34202.5 4067.5 34267.5 ; RECT 3032.5 34202.5 2657.5 34267.5 ; - RECT 3782.5 34392.5 3032.5 34457.5 ; + RECT 3917.5 34392.5 3032.5 34457.5 ; RECT 3032.5 34202.5 2897.5 34267.5 ; RECT 3032.5 34392.5 2897.5 34457.5 ; RECT 3032.5 34392.5 2897.5 34457.5 ; @@ -4228,16 +4228,16 @@ MACRO sram_2_16_1_freepdk45 RECT 3917.5 34202.5 3782.5 34267.5 ; RECT 2942.5 34562.5 2807.5 34627.5 ; RECT 3917.5 34562.5 3782.5 34627.5 ; - RECT 3520.0 34260.0 3385.0 34325.0 ; - RECT 3520.0 34260.0 3385.0 34325.0 ; - RECT 3485.0 34425.0 3420.0 34490.0 ; + RECT 3475.0 34260.0 3340.0 34325.0 ; + RECT 3475.0 34260.0 3340.0 34325.0 ; + RECT 3440.0 34425.0 3375.0 34490.0 ; RECT 2722.5 34135.0 2657.5 34695.0 ; RECT 4067.5 34135.0 4002.5 34695.0 ; RECT 2875.0 35122.5 2690.0 35187.5 ; RECT 4035.0 35122.5 3850.0 35187.5 ; RECT 3917.5 34762.5 4067.5 34827.5 ; RECT 3032.5 34762.5 2657.5 34827.5 ; - RECT 3782.5 34952.5 3032.5 35017.5 ; + RECT 3917.5 34952.5 3032.5 35017.5 ; RECT 3032.5 34762.5 2897.5 34827.5 ; RECT 3032.5 34952.5 2897.5 35017.5 ; RECT 3032.5 34952.5 2897.5 35017.5 ; @@ -4248,17 +4248,17 @@ MACRO sram_2_16_1_freepdk45 RECT 3917.5 34762.5 3782.5 34827.5 ; RECT 2942.5 35122.5 2807.5 35187.5 ; RECT 3917.5 35122.5 3782.5 35187.5 ; - RECT 3520.0 34820.0 3385.0 34885.0 ; - RECT 3520.0 34820.0 3385.0 34885.0 ; - RECT 3485.0 34985.0 3420.0 35050.0 ; + RECT 3475.0 34820.0 3340.0 34885.0 ; + RECT 3475.0 34820.0 3340.0 34885.0 ; + RECT 3440.0 34985.0 3375.0 35050.0 ; RECT 2722.5 34695.0 2657.5 35255.0 ; RECT 4067.5 34695.0 4002.5 35255.0 ; - RECT 3385.0 34820.0 3520.0 34885.0 ; + RECT 3340.0 34820.0 3475.0 34885.0 ; RECT 2505.0 34827.5 2690.0 34762.5 ; RECT 1345.0 34827.5 1530.0 34762.5 ; RECT 1462.5 35187.5 1312.5 35122.5 ; RECT 2347.5 35187.5 2722.5 35122.5 ; - RECT 1597.5 34997.5 2347.5 34932.5 ; + RECT 1462.5 34997.5 2347.5 34932.5 ; RECT 2347.5 35187.5 2482.5 35122.5 ; RECT 2347.5 34997.5 2482.5 34932.5 ; RECT 2347.5 34997.5 2482.5 34932.5 ; @@ -4269,17 +4269,17 @@ MACRO sram_2_16_1_freepdk45 RECT 1462.5 35187.5 1597.5 35122.5 ; RECT 2437.5 34827.5 2572.5 34762.5 ; RECT 1462.5 34827.5 1597.5 34762.5 ; - RECT 1860.0 35130.0 1995.0 35065.0 ; - RECT 1860.0 35130.0 1995.0 35065.0 ; - RECT 1895.0 34965.0 1960.0 34900.0 ; + RECT 1905.0 35130.0 2040.0 35065.0 ; + RECT 1905.0 35130.0 2040.0 35065.0 ; + RECT 1940.0 34965.0 2005.0 34900.0 ; RECT 2657.5 35255.0 2722.5 34695.0 ; RECT 1312.5 35255.0 1377.5 34695.0 ; - RECT 1860.0 35065.0 1995.0 35130.0 ; + RECT 1905.0 35065.0 2040.0 35130.0 ; RECT 2505.0 34267.5 2690.0 34202.5 ; RECT 1345.0 34267.5 1530.0 34202.5 ; RECT 1462.5 34627.5 1312.5 34562.5 ; RECT 2347.5 34627.5 2722.5 34562.5 ; - RECT 1597.5 34437.5 2347.5 34372.5 ; + RECT 1462.5 34437.5 2347.5 34372.5 ; RECT 2347.5 34627.5 2482.5 34562.5 ; RECT 2347.5 34437.5 2482.5 34372.5 ; RECT 2347.5 34437.5 2482.5 34372.5 ; @@ -4290,17 +4290,17 @@ MACRO sram_2_16_1_freepdk45 RECT 1462.5 34627.5 1597.5 34562.5 ; RECT 2437.5 34267.5 2572.5 34202.5 ; RECT 1462.5 34267.5 1597.5 34202.5 ; - RECT 1860.0 34570.0 1995.0 34505.0 ; - RECT 1860.0 34570.0 1995.0 34505.0 ; - RECT 1895.0 34405.0 1960.0 34340.0 ; + RECT 1905.0 34570.0 2040.0 34505.0 ; + RECT 1905.0 34570.0 2040.0 34505.0 ; + RECT 1940.0 34405.0 2005.0 34340.0 ; RECT 2657.5 34695.0 2722.5 34135.0 ; RECT 1312.5 34695.0 1377.5 34135.0 ; - RECT 1860.0 34505.0 1995.0 34570.0 ; - RECT 3385.0 34425.0 3520.0 34490.0 ; - RECT 3385.0 34985.0 3520.0 35050.0 ; - RECT 1860.0 34900.0 1995.0 34965.0 ; - RECT 3385.0 34260.0 3520.0 34325.0 ; - RECT 1895.0 34135.0 1960.0 34340.0 ; + RECT 1905.0 34505.0 2040.0 34570.0 ; + RECT 3340.0 34425.0 3475.0 34490.0 ; + RECT 3340.0 34985.0 3475.0 35050.0 ; + RECT 1905.0 34900.0 2040.0 34965.0 ; + RECT 3340.0 34260.0 3475.0 34325.0 ; + RECT 1940.0 34135.0 2005.0 34340.0 ; RECT 2657.5 34135.0 2722.5 35255.0 ; RECT 1312.5 34135.0 1377.5 35255.0 ; RECT 4002.5 34135.0 4067.5 35255.0 ; @@ -4316,40 +4316,40 @@ MACRO sram_2_16_1_freepdk45 RECT 1377.5 36317.5 1312.5 36452.5 ; RECT 1377.5 34135.0 1312.5 34270.0 ; RECT 1377.5 31760.0 1312.5 31895.0 ; - RECT 1277.5 36762.5 1412.5 36827.5 ; - RECT 867.5 36762.5 1002.5 36827.5 ; - RECT 1960.0 33367.5 1895.0 33502.5 ; + RECT 1277.5 36817.5 1412.5 36882.5 ; + RECT 867.5 36817.5 1002.5 36882.5 ; + RECT 2005.0 33367.5 1940.0 33502.5 ; RECT 1105.0 32627.5 1240.0 32692.5 ; RECT 1105.0 32030.0 1240.0 32095.0 ; RECT 682.5 32030.0 817.5 32095.0 ; - RECT 3520.0 31335.0 3455.0 34260.0 ; - RECT 1960.0 31335.0 1895.0 32100.0 ; - RECT 20.0 31335.0 -45.0 36522.5 ; + RECT 3475.0 31335.0 3410.0 34260.0 ; + RECT 2005.0 31335.0 1940.0 32100.0 ; + RECT 20.0 31335.0 -45.0 36577.5 ; RECT 2722.5 31335.0 2657.5 34135.0 ; RECT 1380.0 31335.0 1310.0 32455.0 ; RECT 4067.5 31335.0 4002.5 34135.0 ; - RECT 3515.0 26182.5 3450.0 26047.5 ; - RECT 3515.0 22102.5 3450.0 21967.5 ; + RECT 3455.0 26182.5 3390.0 26047.5 ; + RECT 3455.0 22102.5 3390.0 21967.5 ; RECT 2517.5 19535.0 2452.5 19400.0 ; RECT 1962.5 26182.5 1897.5 26047.5 ; RECT 1747.5 26592.5 1682.5 26457.5 ; RECT 2017.5 29130.0 1952.5 28995.0 ; RECT 1802.5 29387.5 1737.5 29252.5 ; - RECT 3290.0 27617.5 3225.0 27482.5 ; - RECT 3430.0 27412.5 3365.0 27277.5 ; - RECT 3570.0 26797.5 3505.0 26662.5 ; - RECT 600.0 27617.5 535.0 27482.5 ; - RECT 740.0 26797.5 675.0 26662.5 ; - RECT 880.0 27002.5 815.0 26867.5 ; + RECT 3380.0 27617.5 3315.0 27482.5 ; + RECT 3520.0 27412.5 3455.0 27277.5 ; + RECT 3660.0 26797.5 3595.0 26662.5 ; + RECT 690.0 27617.5 625.0 27482.5 ; + RECT 830.0 26797.5 765.0 26662.5 ; + RECT 970.0 27002.5 905.0 26867.5 ; RECT 1997.5 28812.5 1862.5 28877.5 ; RECT 2052.5 29957.5 1917.5 30022.5 ; - RECT 830.0 31142.5 695.0 31207.5 ; - RECT 1995.0 30182.5 1860.0 30247.5 ; + RECT 785.0 31142.5 650.0 31207.5 ; + RECT 2040.0 30182.5 1905.0 30247.5 ; RECT 4067.5 26387.5 4002.5 26252.5 ; RECT 2722.5 27207.5 2657.5 27072.5 ; RECT 1377.5 26387.5 1312.5 26252.5 ; RECT 32.5 27207.5 -32.5 27072.5 ; - RECT 3520.0 19230.0 3385.0 19420.0 ; + RECT 3475.0 19230.0 3340.0 19420.0 ; RECT 2722.5 19230.0 2657.5 19295.0 ; RECT 4067.5 19230.0 4002.5 19295.0 ; RECT 4417.5 27107.5 4282.5 27172.5 ; @@ -4362,20 +4362,20 @@ MACRO sram_2_16_1_freepdk45 RECT 12982.5 25910.0 13052.5 26115.0 ; RECT 4035.0 27105.0 4350.0 27175.0 ; RECT 12567.5 26115.0 12637.5 26320.0 ; - RECT 12982.5 0.0 13052.5 42270.0 ; - RECT 13187.5 0.0 13257.5 42270.0 ; - RECT 13392.5 0.0 13462.5 42270.0 ; - RECT 13597.5 0.0 13667.5 42270.0 ; - RECT 13802.5 0.0 13872.5 42270.0 ; - RECT 14007.5 0.0 14077.5 42270.0 ; + RECT 12982.5 0.0 13052.5 42337.5 ; + RECT 13187.5 0.0 13257.5 42337.5 ; + RECT 13392.5 0.0 13462.5 42337.5 ; + RECT 13597.5 0.0 13667.5 42337.5 ; + RECT 13802.5 0.0 13872.5 42337.5 ; + RECT 14007.5 0.0 14077.5 42337.5 ; RECT 11402.5 4690.0 11472.5 19090.0 ; RECT 11607.5 4690.0 11677.5 19090.0 ; RECT 11812.5 4690.0 11882.5 19090.0 ; RECT 12017.5 4690.0 12087.5 19090.0 ; - RECT 14670.0 40710.0 14740.0 41060.0 ; - RECT 15005.0 40710.0 15075.0 41060.0 ; - RECT 15375.0 40710.0 15445.0 41060.0 ; - RECT 15710.0 40710.0 15780.0 41060.0 ; + RECT 14670.0 40765.0 14740.0 41170.0 ; + RECT 15005.0 40765.0 15075.0 41170.0 ; + RECT 15375.0 40765.0 15445.0 41170.0 ; + RECT 15710.0 40765.0 15780.0 41170.0 ; RECT 14837.5 440.0 14907.5 510.0 ; RECT 14662.5 440.0 14872.5 510.0 ; RECT 14837.5 475.0 14907.5 615.0 ; @@ -4415,36 +4415,37 @@ MACRO sram_2_16_1_freepdk45 RECT 15225.0 37920.0 15930.0 36575.0 ; RECT 15225.0 37920.0 15930.0 39265.0 ; RECT 15225.0 40610.0 15930.0 39265.0 ; - RECT 14670.0 18990.0 14740.0 40710.0 ; - RECT 15005.0 18990.0 15075.0 40710.0 ; - RECT 15375.0 18990.0 15445.0 40710.0 ; - RECT 15710.0 18990.0 15780.0 40710.0 ; - RECT 14485.0 18990.0 14555.0 40710.0 ; - RECT 15190.0 18990.0 15260.0 40710.0 ; - RECT 14670.0 41182.5 14747.5 41317.5 ; - RECT 14872.5 41182.5 15075.0 41317.5 ; - RECT 14670.0 41767.5 14747.5 41902.5 ; - RECT 15005.0 41767.5 15127.5 41902.5 ; - RECT 14680.0 41182.5 14750.0 41317.5 ; - RECT 14870.0 41182.5 14940.0 41317.5 ; - RECT 14680.0 41767.5 14750.0 41902.5 ; - RECT 15060.0 41767.5 15130.0 41902.5 ; - RECT 14670.0 41060.0 14740.0 42270.0 ; - RECT 15005.0 41060.0 15075.0 42270.0 ; - RECT 15375.0 41182.5 15452.5 41317.5 ; - RECT 15577.5 41182.5 15780.0 41317.5 ; - RECT 15375.0 41767.5 15452.5 41902.5 ; - RECT 15710.0 41767.5 15832.5 41902.5 ; - RECT 15385.0 41182.5 15455.0 41317.5 ; - RECT 15575.0 41182.5 15645.0 41317.5 ; - RECT 15385.0 41767.5 15455.0 41902.5 ; - RECT 15765.0 41767.5 15835.0 41902.5 ; - RECT 15375.0 41060.0 15445.0 42270.0 ; - RECT 15710.0 41060.0 15780.0 42270.0 ; - RECT 14670.0 41060.0 14740.0 42270.0 ; - RECT 15005.0 41060.0 15075.0 42270.0 ; - RECT 15375.0 41060.0 15445.0 42270.0 ; - RECT 15710.0 41060.0 15780.0 42270.0 ; + RECT 14670.0 18990.0 14740.0 40765.0 ; + RECT 15005.0 18990.0 15075.0 40765.0 ; + RECT 15375.0 18990.0 15445.0 40765.0 ; + RECT 15710.0 18990.0 15780.0 40765.0 ; + RECT 14485.0 18990.0 14555.0 40765.0 ; + RECT 15190.0 18990.0 15260.0 40765.0 ; + RECT 15895.0 18990.0 15965.0 40765.0 ; + RECT 14670.0 41292.5 14747.5 41427.5 ; + RECT 14872.5 41292.5 15075.0 41427.5 ; + RECT 14670.0 41822.5 14747.5 41957.5 ; + RECT 15005.0 41822.5 15127.5 41957.5 ; + RECT 14680.0 41292.5 14750.0 41427.5 ; + RECT 14870.0 41292.5 14940.0 41427.5 ; + RECT 14680.0 41822.5 14750.0 41957.5 ; + RECT 15060.0 41822.5 15130.0 41957.5 ; + RECT 14670.0 41170.0 14740.0 42337.5 ; + RECT 15005.0 41170.0 15075.0 42337.5 ; + RECT 15375.0 41292.5 15452.5 41427.5 ; + RECT 15577.5 41292.5 15780.0 41427.5 ; + RECT 15375.0 41822.5 15452.5 41957.5 ; + RECT 15710.0 41822.5 15832.5 41957.5 ; + RECT 15385.0 41292.5 15455.0 41427.5 ; + RECT 15575.0 41292.5 15645.0 41427.5 ; + RECT 15385.0 41822.5 15455.0 41957.5 ; + RECT 15765.0 41822.5 15835.0 41957.5 ; + RECT 15375.0 41170.0 15445.0 42337.5 ; + RECT 15710.0 41170.0 15780.0 42337.5 ; + RECT 14670.0 41170.0 14740.0 42337.5 ; + RECT 15005.0 41170.0 15075.0 42337.5 ; + RECT 15375.0 41170.0 15445.0 42337.5 ; + RECT 15710.0 41170.0 15780.0 42337.5 ; RECT 14520.0 14205.0 15225.0 19090.0 ; RECT 15225.0 14205.0 15930.0 19090.0 ; RECT 14670.0 14205.0 14740.0 19090.0 ; @@ -4521,21 +4522,21 @@ MACRO sram_2_16_1_freepdk45 RECT 8165.0 13547.5 8095.0 13412.5 ; RECT 8062.5 13105.0 8197.5 13035.0 ; RECT 9607.5 9445.0 9742.5 9515.0 ; - RECT 10992.5 8877.5 11127.5 8947.5 ; + RECT 10992.5 8922.5 11127.5 8992.5 ; RECT 9332.5 10790.0 9467.5 10860.0 ; - RECT 10717.5 10402.5 10852.5 10472.5 ; + RECT 10717.5 10357.5 10852.5 10427.5 ; RECT 10992.5 11120.0 11127.5 11190.0 ; RECT 9057.5 11120.0 9192.5 11190.0 ; RECT 10717.5 12465.0 10852.5 12535.0 ; RECT 8782.5 12465.0 8917.5 12535.0 ; - RECT 9607.5 8935.0 9742.5 9005.0 ; - RECT 9332.5 8720.0 9467.5 8790.0 ; - RECT 9057.5 10345.0 9192.5 10415.0 ; - RECT 9332.5 10560.0 9467.5 10630.0 ; - RECT 9607.5 11625.0 9742.5 11695.0 ; - RECT 8782.5 11410.0 8917.5 11480.0 ; - RECT 9057.5 13035.0 9192.5 13105.0 ; - RECT 8782.5 13250.0 8917.5 13320.0 ; + RECT 9607.5 8720.0 9742.5 8790.0 ; + RECT 9332.5 8935.0 9467.5 9005.0 ; + RECT 9057.5 10560.0 9192.5 10630.0 ; + RECT 9332.5 10345.0 9467.5 10415.0 ; + RECT 9607.5 11410.0 9742.5 11480.0 ; + RECT 8782.5 11625.0 8917.5 11695.0 ; + RECT 9057.5 13250.0 9192.5 13320.0 ; + RECT 8782.5 13035.0 8917.5 13105.0 ; RECT 11095.0 8330.0 11025.0 13570.0 ; RECT 10820.0 8330.0 10750.0 13570.0 ; RECT 9160.0 13710.0 9090.0 18950.0 ; @@ -4575,21 +4576,21 @@ MACRO sram_2_16_1_freepdk45 RECT 8165.0 18927.5 8095.0 18792.5 ; RECT 8062.5 18485.0 8197.5 18415.0 ; RECT 9607.5 14825.0 9742.5 14895.0 ; - RECT 10992.5 14257.5 11127.5 14327.5 ; + RECT 10992.5 14302.5 11127.5 14372.5 ; RECT 9332.5 16170.0 9467.5 16240.0 ; - RECT 10717.5 15782.5 10852.5 15852.5 ; + RECT 10717.5 15737.5 10852.5 15807.5 ; RECT 10992.5 16500.0 11127.5 16570.0 ; RECT 9057.5 16500.0 9192.5 16570.0 ; RECT 10717.5 17845.0 10852.5 17915.0 ; RECT 8782.5 17845.0 8917.5 17915.0 ; - RECT 9607.5 14315.0 9742.5 14385.0 ; - RECT 9332.5 14100.0 9467.5 14170.0 ; - RECT 9057.5 15725.0 9192.5 15795.0 ; - RECT 9332.5 15940.0 9467.5 16010.0 ; - RECT 9607.5 17005.0 9742.5 17075.0 ; - RECT 8782.5 16790.0 8917.5 16860.0 ; - RECT 9057.5 18415.0 9192.5 18485.0 ; - RECT 8782.5 18630.0 8917.5 18700.0 ; + RECT 9607.5 14100.0 9742.5 14170.0 ; + RECT 9332.5 14315.0 9467.5 14385.0 ; + RECT 9057.5 15940.0 9192.5 16010.0 ; + RECT 9332.5 15725.0 9467.5 15795.0 ; + RECT 9607.5 16790.0 9742.5 16860.0 ; + RECT 8782.5 17005.0 8917.5 17075.0 ; + RECT 9057.5 18630.0 9192.5 18700.0 ; + RECT 8782.5 18415.0 8917.5 18485.0 ; RECT 11095.0 13710.0 11025.0 18950.0 ; RECT 10820.0 13710.0 10750.0 18950.0 ; RECT 7385.0 19695.0 7455.0 19765.0 ; @@ -4720,14 +4721,14 @@ MACRO sram_2_16_1_freepdk45 RECT 7385.0 39607.5 7455.0 39472.5 ; RECT 7575.0 40447.5 7645.0 40312.5 ; RECT 7677.5 40005.0 7542.5 39935.0 ; - RECT 5832.5 8877.5 5697.5 8947.5 ; - RECT 6007.5 10402.5 5872.5 10472.5 ; - RECT 6182.5 11567.5 6047.5 11637.5 ; - RECT 6357.5 13092.5 6222.5 13162.5 ; - RECT 6532.5 14257.5 6397.5 14327.5 ; - RECT 6707.5 15782.5 6572.5 15852.5 ; - RECT 6882.5 16947.5 6747.5 17017.5 ; - RECT 7057.5 18472.5 6922.5 18542.5 ; + RECT 5832.5 8922.5 5697.5 8992.5 ; + RECT 6007.5 10357.5 5872.5 10427.5 ; + RECT 6182.5 11612.5 6047.5 11682.5 ; + RECT 6357.5 13047.5 6222.5 13117.5 ; + RECT 6532.5 14302.5 6397.5 14372.5 ; + RECT 6707.5 15737.5 6572.5 15807.5 ; + RECT 6882.5 16992.5 6747.5 17062.5 ; + RECT 7057.5 18427.5 6922.5 18497.5 ; RECT 5832.5 19695.0 5697.5 19765.0 ; RECT 6532.5 19480.0 6397.5 19550.0 ; RECT 5832.5 21105.0 5697.5 21175.0 ; @@ -4820,7 +4821,7 @@ MACRO sram_2_16_1_freepdk45 RECT 9880.0 20092.5 9950.0 20227.5 ; RECT 10070.0 19252.5 10140.0 19387.5 ; RECT 10172.5 19695.0 10037.5 19765.0 ; - RECT 8805.0 19605.0 8875.0 19740.0 ; + RECT 8805.0 19650.0 8875.0 19785.0 ; RECT 8945.0 19377.5 9015.0 19512.5 ; RECT 9942.5 19480.0 9807.5 19550.0 ; RECT 9880.0 21175.0 9950.0 21105.0 ; @@ -4831,7 +4832,7 @@ MACRO sram_2_16_1_freepdk45 RECT 9880.0 20777.5 9950.0 20642.5 ; RECT 10070.0 21617.5 10140.0 21482.5 ; RECT 10172.5 21175.0 10037.5 21105.0 ; - RECT 8805.0 21130.0 8875.0 21265.0 ; + RECT 8805.0 21085.0 8875.0 21220.0 ; RECT 8945.0 21357.5 9015.0 21492.5 ; RECT 9942.5 21320.0 9807.5 21390.0 ; RECT 9880.0 22385.0 9950.0 22455.0 ; @@ -4842,7 +4843,7 @@ MACRO sram_2_16_1_freepdk45 RECT 9880.0 22782.5 9950.0 22917.5 ; RECT 10070.0 21942.5 10140.0 22077.5 ; RECT 10172.5 22385.0 10037.5 22455.0 ; - RECT 8805.0 22295.0 8875.0 22430.0 ; + RECT 8805.0 22340.0 8875.0 22475.0 ; RECT 8945.0 22067.5 9015.0 22202.5 ; RECT 9942.5 22170.0 9807.5 22240.0 ; RECT 9880.0 23865.0 9950.0 23795.0 ; @@ -4853,7 +4854,7 @@ MACRO sram_2_16_1_freepdk45 RECT 9880.0 23467.5 9950.0 23332.5 ; RECT 10070.0 24307.5 10140.0 24172.5 ; RECT 10172.5 23865.0 10037.5 23795.0 ; - RECT 8805.0 23820.0 8875.0 23955.0 ; + RECT 8805.0 23775.0 8875.0 23910.0 ; RECT 8945.0 24047.5 9015.0 24182.5 ; RECT 9942.5 24010.0 9807.5 24080.0 ; RECT 9880.0 25075.0 9950.0 25145.0 ; @@ -4864,7 +4865,7 @@ MACRO sram_2_16_1_freepdk45 RECT 9880.0 25472.5 9950.0 25607.5 ; RECT 10070.0 24632.5 10140.0 24767.5 ; RECT 10172.5 25075.0 10037.5 25145.0 ; - RECT 8805.0 24985.0 8875.0 25120.0 ; + RECT 8805.0 25030.0 8875.0 25165.0 ; RECT 8945.0 24757.5 9015.0 24892.5 ; RECT 9942.5 24860.0 9807.5 24930.0 ; RECT 9880.0 26555.0 9950.0 26485.0 ; @@ -4875,7 +4876,7 @@ MACRO sram_2_16_1_freepdk45 RECT 9880.0 26157.5 9950.0 26022.5 ; RECT 10070.0 26997.5 10140.0 26862.5 ; RECT 10172.5 26555.0 10037.5 26485.0 ; - RECT 8805.0 26510.0 8875.0 26645.0 ; + RECT 8805.0 26465.0 8875.0 26600.0 ; RECT 8945.0 26737.5 9015.0 26872.5 ; RECT 9942.5 26700.0 9807.5 26770.0 ; RECT 9880.0 27765.0 9950.0 27835.0 ; @@ -4886,7 +4887,7 @@ MACRO sram_2_16_1_freepdk45 RECT 9880.0 28162.5 9950.0 28297.5 ; RECT 10070.0 27322.5 10140.0 27457.5 ; RECT 10172.5 27765.0 10037.5 27835.0 ; - RECT 8805.0 27675.0 8875.0 27810.0 ; + RECT 8805.0 27720.0 8875.0 27855.0 ; RECT 8945.0 27447.5 9015.0 27582.5 ; RECT 9942.5 27550.0 9807.5 27620.0 ; RECT 9880.0 29245.0 9950.0 29175.0 ; @@ -4897,7 +4898,7 @@ MACRO sram_2_16_1_freepdk45 RECT 9880.0 28847.5 9950.0 28712.5 ; RECT 10070.0 29687.5 10140.0 29552.5 ; RECT 10172.5 29245.0 10037.5 29175.0 ; - RECT 8805.0 29200.0 8875.0 29335.0 ; + RECT 8805.0 29155.0 8875.0 29290.0 ; RECT 8945.0 29427.5 9015.0 29562.5 ; RECT 9942.5 29390.0 9807.5 29460.0 ; RECT 9880.0 30455.0 9950.0 30525.0 ; @@ -4908,7 +4909,7 @@ MACRO sram_2_16_1_freepdk45 RECT 9880.0 30852.5 9950.0 30987.5 ; RECT 10070.0 30012.5 10140.0 30147.5 ; RECT 10172.5 30455.0 10037.5 30525.0 ; - RECT 8805.0 30365.0 8875.0 30500.0 ; + RECT 8805.0 30410.0 8875.0 30545.0 ; RECT 8945.0 30137.5 9015.0 30272.5 ; RECT 9942.5 30240.0 9807.5 30310.0 ; RECT 9880.0 31935.0 9950.0 31865.0 ; @@ -4919,7 +4920,7 @@ MACRO sram_2_16_1_freepdk45 RECT 9880.0 31537.5 9950.0 31402.5 ; RECT 10070.0 32377.5 10140.0 32242.5 ; RECT 10172.5 31935.0 10037.5 31865.0 ; - RECT 8805.0 31890.0 8875.0 32025.0 ; + RECT 8805.0 31845.0 8875.0 31980.0 ; RECT 8945.0 32117.5 9015.0 32252.5 ; RECT 9942.5 32080.0 9807.5 32150.0 ; RECT 9880.0 33145.0 9950.0 33215.0 ; @@ -4930,7 +4931,7 @@ MACRO sram_2_16_1_freepdk45 RECT 9880.0 33542.5 9950.0 33677.5 ; RECT 10070.0 32702.5 10140.0 32837.5 ; RECT 10172.5 33145.0 10037.5 33215.0 ; - RECT 8805.0 33055.0 8875.0 33190.0 ; + RECT 8805.0 33100.0 8875.0 33235.0 ; RECT 8945.0 32827.5 9015.0 32962.5 ; RECT 9942.5 32930.0 9807.5 33000.0 ; RECT 9880.0 34625.0 9950.0 34555.0 ; @@ -4941,7 +4942,7 @@ MACRO sram_2_16_1_freepdk45 RECT 9880.0 34227.5 9950.0 34092.5 ; RECT 10070.0 35067.5 10140.0 34932.5 ; RECT 10172.5 34625.0 10037.5 34555.0 ; - RECT 8805.0 34580.0 8875.0 34715.0 ; + RECT 8805.0 34535.0 8875.0 34670.0 ; RECT 8945.0 34807.5 9015.0 34942.5 ; RECT 9942.5 34770.0 9807.5 34840.0 ; RECT 9880.0 35835.0 9950.0 35905.0 ; @@ -4952,7 +4953,7 @@ MACRO sram_2_16_1_freepdk45 RECT 9880.0 36232.5 9950.0 36367.5 ; RECT 10070.0 35392.5 10140.0 35527.5 ; RECT 10172.5 35835.0 10037.5 35905.0 ; - RECT 8805.0 35745.0 8875.0 35880.0 ; + RECT 8805.0 35790.0 8875.0 35925.0 ; RECT 8945.0 35517.5 9015.0 35652.5 ; RECT 9942.5 35620.0 9807.5 35690.0 ; RECT 9880.0 37315.0 9950.0 37245.0 ; @@ -4963,7 +4964,7 @@ MACRO sram_2_16_1_freepdk45 RECT 9880.0 36917.5 9950.0 36782.5 ; RECT 10070.0 37757.5 10140.0 37622.5 ; RECT 10172.5 37315.0 10037.5 37245.0 ; - RECT 8805.0 37270.0 8875.0 37405.0 ; + RECT 8805.0 37225.0 8875.0 37360.0 ; RECT 8945.0 37497.5 9015.0 37632.5 ; RECT 9942.5 37460.0 9807.5 37530.0 ; RECT 9880.0 38525.0 9950.0 38595.0 ; @@ -4974,7 +4975,7 @@ MACRO sram_2_16_1_freepdk45 RECT 9880.0 38922.5 9950.0 39057.5 ; RECT 10070.0 38082.5 10140.0 38217.5 ; RECT 10172.5 38525.0 10037.5 38595.0 ; - RECT 8805.0 38435.0 8875.0 38570.0 ; + RECT 8805.0 38480.0 8875.0 38615.0 ; RECT 8945.0 38207.5 9015.0 38342.5 ; RECT 9942.5 38310.0 9807.5 38380.0 ; RECT 9880.0 40005.0 9950.0 39935.0 ; @@ -4985,7 +4986,7 @@ MACRO sram_2_16_1_freepdk45 RECT 9880.0 39607.5 9950.0 39472.5 ; RECT 10070.0 40447.5 10140.0 40312.5 ; RECT 10172.5 40005.0 10037.5 39935.0 ; - RECT 8805.0 39960.0 8875.0 40095.0 ; + RECT 8805.0 39915.0 8875.0 40050.0 ; RECT 8945.0 40187.5 9015.0 40322.5 ; RECT 9942.5 40150.0 9807.5 40220.0 ; RECT 8805.0 19090.0 8875.0 40610.0 ; @@ -5064,7 +5065,7 @@ MACRO sram_2_16_1_freepdk45 RECT 13700.0 3792.5 13565.0 3862.5 ; RECT 13290.0 1607.5 13155.0 1677.5 ; RECT 13495.0 3155.0 13360.0 3225.0 ; - RECT 13700.0 41475.0 13565.0 41545.0 ; + RECT 13700.0 41585.0 13565.0 41655.0 ; RECT 13905.0 10295.0 13770.0 10365.0 ; RECT 14110.0 14320.0 13975.0 14390.0 ; RECT 13085.0 8090.0 12950.0 8160.0 ; @@ -5076,13 +5077,13 @@ MACRO sram_2_16_1_freepdk45 RECT 12777.5 11227.5 12642.5 11297.5 ; RECT 14837.5 0.0 14907.5 140.0 ; RECT 15542.5 0.0 15612.5 140.0 ; - RECT 14007.5 0.0 14077.5 42270.0 ; - RECT 13802.5 0.0 13872.5 42270.0 ; - RECT 13187.5 0.0 13257.5 42270.0 ; - RECT 13392.5 0.0 13462.5 42270.0 ; - RECT 13597.5 0.0 13667.5 42270.0 ; - RECT 12982.5 0.0 13052.5 42270.0 ; - RECT 12427.5 0.0 12777.5 42270.0 ; + RECT 14007.5 0.0 14077.5 42337.5 ; + RECT 13802.5 0.0 13872.5 42337.5 ; + RECT 13187.5 0.0 13257.5 42337.5 ; + RECT 13392.5 0.0 13462.5 42337.5 ; + RECT 13597.5 0.0 13667.5 42337.5 ; + RECT 12982.5 0.0 13052.5 42337.5 ; + RECT 12427.5 0.0 12777.5 42337.5 ; RECT 4035.0 26490.0 8.881784197e-13 26560.0 ; RECT 4035.0 26695.0 8.881784197e-13 26765.0 ; RECT 4035.0 26900.0 8.881784197e-13 26970.0 ; @@ -5108,16 +5109,16 @@ MACRO sram_2_16_1_freepdk45 RECT 835.0 19230.0 905.0 25670.0 ; RECT 1540.0 19230.0 1610.0 25670.0 ; RECT 2245.0 19230.0 2315.0 25670.0 ; - RECT 3692.5 28560.0 3032.5 28630.0 ; - RECT 3292.5 28180.0 3222.5 28250.0 ; - RECT 3292.5 28560.0 3222.5 28630.0 ; - RECT 3257.5 28180.0 3032.5 28250.0 ; - RECT 3292.5 28215.0 3222.5 28595.0 ; - RECT 3692.5 28560.0 3257.5 28630.0 ; + RECT 3737.5 28560.0 3032.5 28630.0 ; + RECT 3382.5 28180.0 3312.5 28250.0 ; + RECT 3382.5 28560.0 3312.5 28630.0 ; + RECT 3347.5 28180.0 3032.5 28250.0 ; + RECT 3382.5 28215.0 3312.5 28595.0 ; + RECT 3737.5 28560.0 3347.5 28630.0 ; RECT 3032.5 28180.0 2897.5 28250.0 ; RECT 3032.5 28560.0 2897.5 28630.0 ; - RECT 3827.5 28560.0 3692.5 28630.0 ; - RECT 3325.0 28560.0 3190.0 28630.0 ; + RECT 3872.5 28560.0 3737.5 28630.0 ; + RECT 3415.0 28560.0 3280.0 28630.0 ; RECT 1895.0 28370.0 1965.0 28440.0 ; RECT 1930.0 28370.0 2280.0 28440.0 ; RECT 1895.0 28405.0 1965.0 28475.0 ; @@ -5135,16 +5136,16 @@ MACRO sram_2_16_1_freepdk45 RECT 2347.5 29325.0 2482.5 29395.0 ; RECT 1507.5 29515.0 1642.5 29585.0 ; RECT 1950.0 29617.5 2020.0 29482.5 ; - RECT 1002.5 29120.0 342.5 29190.0 ; - RECT 602.5 28740.0 532.5 28810.0 ; - RECT 602.5 29120.0 532.5 29190.0 ; - RECT 567.5 28740.0 342.5 28810.0 ; - RECT 602.5 28775.0 532.5 29155.0 ; - RECT 1002.5 29120.0 567.5 29190.0 ; + RECT 1047.5 29120.0 342.5 29190.0 ; + RECT 692.5 28740.0 622.5 28810.0 ; + RECT 692.5 29120.0 622.5 29190.0 ; + RECT 657.5 28740.0 342.5 28810.0 ; + RECT 692.5 28775.0 622.5 29155.0 ; + RECT 1047.5 29120.0 657.5 29190.0 ; RECT 342.5 28740.0 207.5 28810.0 ; RECT 342.5 29120.0 207.5 29190.0 ; - RECT 1137.5 29120.0 1002.5 29190.0 ; - RECT 635.0 29120.0 500.0 29190.0 ; + RECT 1182.5 29120.0 1047.5 29190.0 ; + RECT 725.0 29120.0 590.0 29190.0 ; RECT 397.5 25737.5 327.5 25602.5 ; RECT 397.5 27412.5 327.5 27277.5 ; RECT 552.5 25737.5 482.5 25602.5 ; @@ -5161,45 +5162,45 @@ MACRO sram_2_16_1_freepdk45 RECT 1610.0 26387.5 1540.0 26252.5 ; RECT 2315.0 25737.5 2245.0 25602.5 ; RECT 2315.0 26387.5 2245.0 26252.5 ; - RECT 1380.0 31895.0 1310.0 36695.0 ; + RECT 1380.0 31895.0 1310.0 36750.0 ; RECT 1380.0 32455.0 1310.0 32660.0 ; - RECT 1380.0 32660.0 1310.0 36795.0 ; - RECT 970.0 36590.0 900.0 36795.0 ; + RECT 1380.0 32660.0 1310.0 36850.0 ; + RECT 970.0 36645.0 900.0 36850.0 ; RECT 1207.5 32062.5 1137.5 32660.0 ; RECT 785.0 32062.5 715.0 32342.5 ; - RECT 3417.5 34457.5 3487.5 34852.5 ; + RECT 3372.5 34457.5 3442.5 34852.5 ; RECT 2655.0 34982.5 2725.0 35052.5 ; RECT 2655.0 35062.5 2725.0 35132.5 ; - RECT 2690.0 34982.5 3452.5 35052.5 ; + RECT 2690.0 34982.5 3407.5 35052.5 ; RECT 2655.0 35017.5 2725.0 35097.5 ; - RECT 1927.5 35062.5 2690.0 35132.5 ; - RECT 1892.5 34537.5 1962.5 34932.5 ; - RECT 3385.0 34817.5 3520.0 34887.5 ; - RECT 1860.0 35062.5 1995.0 35132.5 ; - RECT 1860.0 34502.5 1995.0 34572.5 ; - RECT 3385.0 34422.5 3520.0 34492.5 ; - RECT 3385.0 34982.5 3520.0 35052.5 ; - RECT 1860.0 34897.5 1995.0 34967.5 ; + RECT 1972.5 35062.5 2690.0 35132.5 ; + RECT 1937.5 34537.5 2007.5 34932.5 ; + RECT 3340.0 34817.5 3475.0 34887.5 ; + RECT 1905.0 35062.5 2040.0 35132.5 ; + RECT 1905.0 34502.5 2040.0 34572.5 ; + RECT 3340.0 34422.5 3475.0 34492.5 ; + RECT 3340.0 34982.5 3475.0 35052.5 ; + RECT 1905.0 34897.5 2040.0 34967.5 ; RECT 935.0 33800.0 225.0 32455.0 ; RECT 935.0 33800.0 230.0 35145.0 ; RECT 935.0 36490.0 230.0 35145.0 ; - RECT 785.0 33700.0 715.0 36590.0 ; - RECT 450.0 33700.0 380.0 36590.0 ; - RECT 970.0 33700.0 900.0 36590.0 ; - RECT 265.0 33700.0 195.0 36590.0 ; + RECT 785.0 33700.0 715.0 36645.0 ; + RECT 450.0 33700.0 380.0 36645.0 ; + RECT 970.0 33700.0 900.0 36645.0 ; + RECT 265.0 33700.0 195.0 36645.0 ; RECT 1380.0 33907.5 1310.0 34042.5 ; RECT 1380.0 36317.5 1310.0 36452.5 ; RECT 1380.0 34135.0 1310.0 34270.0 ; RECT 1380.0 31760.0 1310.0 31895.0 ; - RECT 1277.5 36760.0 1412.5 36830.0 ; - RECT 867.5 36760.0 1002.5 36830.0 ; + RECT 1277.5 36815.0 1412.5 36885.0 ; + RECT 867.5 36815.0 1002.5 36885.0 ; RECT 1105.0 32625.0 1240.0 32695.0 ; RECT 1105.0 32027.5 1240.0 32097.5 ; RECT 682.5 32027.5 817.5 32097.5 ; - RECT 3517.5 26182.5 3447.5 26047.5 ; - RECT 3517.5 22102.5 3447.5 21967.5 ; - RECT 3517.5 27617.5 3447.5 27482.5 ; - RECT 3517.5 22102.5 3447.5 21967.5 ; + RECT 3457.5 26182.5 3387.5 26047.5 ; + RECT 3457.5 22102.5 3387.5 21967.5 ; + RECT 3457.5 27617.5 3387.5 27482.5 ; + RECT 3457.5 22102.5 3387.5 21967.5 ; RECT 2520.0 19535.0 2450.0 19400.0 ; RECT 1965.0 26182.5 1895.0 26047.5 ; RECT 1750.0 26592.5 1680.0 26457.5 ; @@ -5209,22 +5210,22 @@ MACRO sram_2_16_1_freepdk45 RECT 1805.0 29387.5 1735.0 29252.5 ; RECT 1805.0 29387.5 1735.0 29252.5 ; RECT 1805.0 27412.5 1735.0 27277.5 ; - RECT 3292.5 27617.5 3222.5 27482.5 ; - RECT 3432.5 27412.5 3362.5 27277.5 ; - RECT 3572.5 26797.5 3502.5 26662.5 ; - RECT 602.5 27617.5 532.5 27482.5 ; - RECT 742.5 26797.5 672.5 26662.5 ; - RECT 882.5 27002.5 812.5 26867.5 ; + RECT 3382.5 27617.5 3312.5 27482.5 ; + RECT 3522.5 27412.5 3452.5 27277.5 ; + RECT 3662.5 26797.5 3592.5 26662.5 ; + RECT 692.5 27617.5 622.5 27482.5 ; + RECT 832.5 26797.5 762.5 26662.5 ; + RECT 972.5 27002.5 902.5 26867.5 ; RECT 1997.5 28810.0 1862.5 28880.0 ; RECT 2052.5 29955.0 1917.5 30025.0 ; - RECT 830.0 31140.0 695.0 31210.0 ; - RECT 1995.0 30180.0 1860.0 30250.0 ; + RECT 785.0 31140.0 650.0 31210.0 ; + RECT 2040.0 30180.0 1905.0 30250.0 ; RECT 4070.0 26387.5 4000.0 26252.5 ; RECT 2725.0 27207.5 2655.0 27072.5 ; RECT 1380.0 26387.5 1310.0 26252.5 ; RECT 35.0 27207.5 -35.0 27072.5 ; - RECT 4035.0 30180.0 1927.5 30250.0 ; - RECT 4035.0 31140.0 762.5 31210.0 ; + RECT 4035.0 30180.0 1972.5 30250.0 ; + RECT 4035.0 31140.0 717.5 31210.0 ; RECT 4035.0 28810.0 1930.0 28880.0 ; RECT 4035.0 29955.0 1985.0 30025.0 ; RECT 4035.0 27515.0 8.881784197e-13 27585.0 ; @@ -5298,7 +5299,7 @@ MACRO sram_2_16_1_freepdk45 RECT 905.0 25670.0 835.0 26320.0 ; RECT 1610.0 25670.0 1540.0 26320.0 ; RECT 2315.0 25670.0 2245.0 26320.0 ; - RECT 3517.5 22035.0 3447.5 27550.0 ; + RECT 3457.5 22035.0 3387.5 27550.0 ; RECT 2020.0 27550.0 1950.0 29062.5 ; RECT 1805.0 27345.0 1735.0 29320.0 ; RECT 482.5 19230.0 552.5 19370.0 ; @@ -5320,8 +5321,8 @@ MACRO sram_2_16_1_freepdk45 RECT 1610.0 26387.5 1540.0 26252.5 ; RECT 2315.0 25737.5 2245.0 25602.5 ; RECT 2315.0 26387.5 2245.0 26252.5 ; - RECT 3517.5 22102.5 3447.5 21967.5 ; - RECT 3517.5 27617.5 3447.5 27482.5 ; + RECT 3457.5 22102.5 3387.5 21967.5 ; + RECT 3457.5 27617.5 3387.5 27482.5 ; RECT 2020.0 29130.0 1950.0 28995.0 ; RECT 2020.0 27617.5 1950.0 27482.5 ; RECT 1805.0 29387.5 1735.0 29252.5 ; diff --git a/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef b/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef index b0090eaa..5e8d62ab 100644 --- a/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef +++ b/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef @@ -32,56 +32,56 @@ MACRO sram_2_16_1_scn3me_subm DIRECTION INPUT ; PORT LAYER metal3 ; - RECT 52800.0 77400.0 60000.0 78900.0 ; + RECT 52800.0 77700.0 60000.0 79200.0 ; END END ADDR[0] PIN ADDR[1] DIRECTION INPUT ; PORT LAYER metal3 ; - RECT 52800.0 67200.0 60000.0 68700.0 ; + RECT 52800.0 67500.0 60000.0 69000.0 ; END END ADDR[1] PIN ADDR[2] DIRECTION INPUT ; PORT LAYER metal3 ; - RECT 52800.0 57000.0 60000.0 58500.0 ; + RECT 52800.0 57300.0 60000.0 58800.0 ; END END ADDR[2] PIN ADDR[3] DIRECTION INPUT ; PORT LAYER metal3 ; - RECT 52800.0 46800.0 60000.0 48300.0 ; + RECT 52800.0 47100.0 60000.0 48600.0 ; END END ADDR[3] PIN CSb DIRECTION INPUT ; PORT LAYER metal3 ; - RECT 14400.0 203100.0 16200.0 204900.0 ; + RECT 14400.0 203400.0 16200.0 205200.0 ; END END CSb PIN WEb DIRECTION INPUT ; PORT LAYER metal3 ; - RECT 24600.0 203100.0 26400.0 204900.0 ; + RECT 24600.0 203400.0 26400.0 205200.0 ; END END WEb PIN OEb DIRECTION INPUT ; PORT LAYER metal3 ; - RECT 4200.0 203100.0 6000.0 204900.0 ; + RECT 4200.0 203400.0 6000.0 205200.0 ; END END OEb PIN clk DIRECTION INPUT ; PORT LAYER metal1 ; - RECT 42600.0 202200.0 43800.0 205800.0 ; + RECT 42600.0 202500.0 43800.0 206100.0 ; END END clk PIN vdd @@ -90,9 +90,9 @@ MACRO sram_2_16_1_scn3me_subm SHAPE ABUTMENT ; PORT LAYER metal1 ; - RECT 198600.0 0.0 203100.0 436800.0 ; + RECT 198600.0 0.0 203100.0 440700.0 ; LAYER metal1 ; - RECT 52800.0 0.0 57300.0 436800.0 ; + RECT 52800.0 0.0 57300.0 440700.0 ; END END vdd PIN gnd @@ -101,338 +101,338 @@ MACRO sram_2_16_1_scn3me_subm SHAPE ABUTMENT ; PORT LAYER metal2 ; - RECT 148050.0 0.0 152550.0 436800.0 ; + RECT 148050.0 0.0 152550.0 440700.0 ; END END gnd OBS LAYER metal1 ; - RECT 54600.0 295650.0 55500.0 298350.0 ; - RECT 97500.0 205350.0 98400.0 206250.0 ; - RECT 97500.0 202950.0 98400.0 203850.0 ; - RECT 96150.0 205350.0 97950.0 206250.0 ; - RECT 97500.0 203400.0 98400.0 205800.0 ; - RECT 97950.0 202950.0 99900.0 203850.0 ; - RECT 154950.0 205350.0 155850.0 206250.0 ; - RECT 154950.0 200850.0 155850.0 201750.0 ; - RECT 136050.0 205350.0 155400.0 206250.0 ; - RECT 154950.0 201300.0 155850.0 205800.0 ; - RECT 155400.0 200850.0 174900.0 201750.0 ; - RECT 97500.0 219750.0 98400.0 220650.0 ; - RECT 97500.0 222150.0 98400.0 223050.0 ; - RECT 96150.0 219750.0 97950.0 220650.0 ; - RECT 97500.0 220200.0 98400.0 222600.0 ; - RECT 97950.0 222150.0 99900.0 223050.0 ; - RECT 154950.0 219750.0 155850.0 220650.0 ; - RECT 154950.0 224250.0 155850.0 225150.0 ; - RECT 136050.0 219750.0 155400.0 220650.0 ; - RECT 154950.0 220200.0 155850.0 224700.0 ; - RECT 155400.0 224250.0 174900.0 225150.0 ; - RECT 97500.0 232950.0 98400.0 233850.0 ; - RECT 97500.0 230550.0 98400.0 231450.0 ; - RECT 96150.0 232950.0 97950.0 233850.0 ; - RECT 97500.0 231000.0 98400.0 233400.0 ; - RECT 97950.0 230550.0 99900.0 231450.0 ; - RECT 154950.0 232950.0 155850.0 233850.0 ; - RECT 154950.0 228450.0 155850.0 229350.0 ; - RECT 136050.0 232950.0 155400.0 233850.0 ; - RECT 154950.0 228900.0 155850.0 233400.0 ; - RECT 155400.0 228450.0 174900.0 229350.0 ; - RECT 97500.0 247350.0 98400.0 248250.0 ; - RECT 97500.0 249750.0 98400.0 250650.0 ; - RECT 96150.0 247350.0 97950.0 248250.0 ; - RECT 97500.0 247800.0 98400.0 250200.0 ; - RECT 97950.0 249750.0 99900.0 250650.0 ; - RECT 154950.0 247350.0 155850.0 248250.0 ; - RECT 154950.0 251850.0 155850.0 252750.0 ; - RECT 136050.0 247350.0 155400.0 248250.0 ; - RECT 154950.0 247800.0 155850.0 252300.0 ; - RECT 155400.0 251850.0 174900.0 252750.0 ; - RECT 97500.0 260550.0 98400.0 261450.0 ; - RECT 97500.0 258150.0 98400.0 259050.0 ; - RECT 96150.0 260550.0 97950.0 261450.0 ; - RECT 97500.0 258600.0 98400.0 261000.0 ; - RECT 97950.0 258150.0 99900.0 259050.0 ; - RECT 154950.0 260550.0 155850.0 261450.0 ; - RECT 154950.0 256050.0 155850.0 256950.0 ; - RECT 136050.0 260550.0 155400.0 261450.0 ; - RECT 154950.0 256500.0 155850.0 261000.0 ; - RECT 155400.0 256050.0 174900.0 256950.0 ; - RECT 97500.0 274950.0 98400.0 275850.0 ; - RECT 97500.0 277350.0 98400.0 278250.0 ; - RECT 96150.0 274950.0 97950.0 275850.0 ; - RECT 97500.0 275400.0 98400.0 277800.0 ; - RECT 97950.0 277350.0 99900.0 278250.0 ; - RECT 154950.0 274950.0 155850.0 275850.0 ; - RECT 154950.0 279450.0 155850.0 280350.0 ; - RECT 136050.0 274950.0 155400.0 275850.0 ; - RECT 154950.0 275400.0 155850.0 279900.0 ; - RECT 155400.0 279450.0 174900.0 280350.0 ; - RECT 97500.0 288150.0 98400.0 289050.0 ; - RECT 97500.0 285750.0 98400.0 286650.0 ; - RECT 96150.0 288150.0 97950.0 289050.0 ; - RECT 97500.0 286200.0 98400.0 288600.0 ; - RECT 97950.0 285750.0 99900.0 286650.0 ; - RECT 154950.0 288150.0 155850.0 289050.0 ; - RECT 154950.0 283650.0 155850.0 284550.0 ; - RECT 136050.0 288150.0 155400.0 289050.0 ; - RECT 154950.0 284100.0 155850.0 288600.0 ; - RECT 155400.0 283650.0 174900.0 284550.0 ; - RECT 97500.0 302550.0 98400.0 303450.0 ; - RECT 97500.0 304950.0 98400.0 305850.0 ; - RECT 96150.0 302550.0 97950.0 303450.0 ; - RECT 97500.0 303000.0 98400.0 305400.0 ; - RECT 97950.0 304950.0 99900.0 305850.0 ; - RECT 154950.0 302550.0 155850.0 303450.0 ; - RECT 154950.0 307050.0 155850.0 307950.0 ; - RECT 136050.0 302550.0 155400.0 303450.0 ; - RECT 154950.0 303000.0 155850.0 307500.0 ; - RECT 155400.0 307050.0 174900.0 307950.0 ; - RECT 97500.0 315750.0 98400.0 316650.0 ; - RECT 97500.0 313350.0 98400.0 314250.0 ; - RECT 96150.0 315750.0 97950.0 316650.0 ; - RECT 97500.0 313800.0 98400.0 316200.0 ; - RECT 97950.0 313350.0 99900.0 314250.0 ; - RECT 154950.0 315750.0 155850.0 316650.0 ; - RECT 154950.0 311250.0 155850.0 312150.0 ; - RECT 136050.0 315750.0 155400.0 316650.0 ; - RECT 154950.0 311700.0 155850.0 316200.0 ; - RECT 155400.0 311250.0 174900.0 312150.0 ; - RECT 97500.0 330150.0 98400.0 331050.0 ; - RECT 97500.0 332550.0 98400.0 333450.0 ; - RECT 96150.0 330150.0 97950.0 331050.0 ; - RECT 97500.0 330600.0 98400.0 333000.0 ; - RECT 97950.0 332550.0 99900.0 333450.0 ; - RECT 154950.0 330150.0 155850.0 331050.0 ; - RECT 154950.0 334650.0 155850.0 335550.0 ; - RECT 136050.0 330150.0 155400.0 331050.0 ; - RECT 154950.0 330600.0 155850.0 335100.0 ; - RECT 155400.0 334650.0 174900.0 335550.0 ; - RECT 97500.0 343350.0 98400.0 344250.0 ; - RECT 97500.0 340950.0 98400.0 341850.0 ; - RECT 96150.0 343350.0 97950.0 344250.0 ; - RECT 97500.0 341400.0 98400.0 343800.0 ; - RECT 97950.0 340950.0 99900.0 341850.0 ; - RECT 154950.0 343350.0 155850.0 344250.0 ; - RECT 154950.0 338850.0 155850.0 339750.0 ; - RECT 136050.0 343350.0 155400.0 344250.0 ; - RECT 154950.0 339300.0 155850.0 343800.0 ; - RECT 155400.0 338850.0 174900.0 339750.0 ; - RECT 97500.0 357750.0 98400.0 358650.0 ; - RECT 97500.0 360150.0 98400.0 361050.0 ; - RECT 96150.0 357750.0 97950.0 358650.0 ; - RECT 97500.0 358200.0 98400.0 360600.0 ; - RECT 97950.0 360150.0 99900.0 361050.0 ; - RECT 154950.0 357750.0 155850.0 358650.0 ; - RECT 154950.0 362250.0 155850.0 363150.0 ; - RECT 136050.0 357750.0 155400.0 358650.0 ; - RECT 154950.0 358200.0 155850.0 362700.0 ; - RECT 155400.0 362250.0 174900.0 363150.0 ; - RECT 97500.0 370950.0 98400.0 371850.0 ; - RECT 97500.0 368550.0 98400.0 369450.0 ; - RECT 96150.0 370950.0 97950.0 371850.0 ; - RECT 97500.0 369000.0 98400.0 371400.0 ; - RECT 97950.0 368550.0 99900.0 369450.0 ; - RECT 154950.0 370950.0 155850.0 371850.0 ; - RECT 154950.0 366450.0 155850.0 367350.0 ; - RECT 136050.0 370950.0 155400.0 371850.0 ; - RECT 154950.0 366900.0 155850.0 371400.0 ; - RECT 155400.0 366450.0 174900.0 367350.0 ; - RECT 97500.0 385350.0 98400.0 386250.0 ; - RECT 97500.0 387750.0 98400.0 388650.0 ; - RECT 96150.0 385350.0 97950.0 386250.0 ; - RECT 97500.0 385800.0 98400.0 388200.0 ; - RECT 97950.0 387750.0 99900.0 388650.0 ; - RECT 154950.0 385350.0 155850.0 386250.0 ; - RECT 154950.0 389850.0 155850.0 390750.0 ; - RECT 136050.0 385350.0 155400.0 386250.0 ; - RECT 154950.0 385800.0 155850.0 390300.0 ; - RECT 155400.0 389850.0 174900.0 390750.0 ; - RECT 97500.0 398550.0 98400.0 399450.0 ; - RECT 97500.0 396150.0 98400.0 397050.0 ; - RECT 96150.0 398550.0 97950.0 399450.0 ; - RECT 97500.0 396600.0 98400.0 399000.0 ; - RECT 97950.0 396150.0 99900.0 397050.0 ; - RECT 154950.0 398550.0 155850.0 399450.0 ; - RECT 154950.0 394050.0 155850.0 394950.0 ; - RECT 136050.0 398550.0 155400.0 399450.0 ; - RECT 154950.0 394500.0 155850.0 399000.0 ; - RECT 155400.0 394050.0 174900.0 394950.0 ; - RECT 97500.0 412950.0 98400.0 413850.0 ; - RECT 97500.0 415350.0 98400.0 416250.0 ; - RECT 96150.0 412950.0 97950.0 413850.0 ; - RECT 97500.0 413400.0 98400.0 415800.0 ; - RECT 97950.0 415350.0 99900.0 416250.0 ; - RECT 154950.0 412950.0 155850.0 413850.0 ; - RECT 154950.0 417450.0 155850.0 418350.0 ; - RECT 136050.0 412950.0 155400.0 413850.0 ; - RECT 154950.0 413400.0 155850.0 417900.0 ; - RECT 155400.0 417450.0 174900.0 418350.0 ; - RECT 106200.0 198750.0 175500.0 199650.0 ; - RECT 106200.0 226350.0 175500.0 227250.0 ; - RECT 106200.0 253950.0 175500.0 254850.0 ; - RECT 106200.0 281550.0 175500.0 282450.0 ; - RECT 106200.0 309150.0 175500.0 310050.0 ; - RECT 106200.0 336750.0 175500.0 337650.0 ; - RECT 106200.0 364350.0 175500.0 365250.0 ; - RECT 106200.0 391950.0 175500.0 392850.0 ; - RECT 106200.0 419550.0 175500.0 420450.0 ; - RECT 52800.0 212550.0 203100.0 213450.0 ; - RECT 52800.0 240150.0 203100.0 241050.0 ; - RECT 52800.0 267750.0 203100.0 268650.0 ; - RECT 52800.0 295350.0 203100.0 296250.0 ; - RECT 52800.0 322950.0 203100.0 323850.0 ; - RECT 52800.0 350550.0 203100.0 351450.0 ; - RECT 52800.0 378150.0 203100.0 379050.0 ; - RECT 52800.0 405750.0 203100.0 406650.0 ; - RECT 130500.0 91050.0 135000.0 91950.0 ; - RECT 127500.0 104850.0 137700.0 105750.0 ; - RECT 130500.0 146250.0 140400.0 147150.0 ; - RECT 127500.0 160050.0 143100.0 160950.0 ; - RECT 130500.0 88350.0 132000.0 89250.0 ; - RECT 130500.0 115950.0 132000.0 116850.0 ; - RECT 130500.0 143550.0 132000.0 144450.0 ; - RECT 130500.0 171150.0 132000.0 172050.0 ; - RECT 52800.0 102150.0 130500.0 103050.0 ; - RECT 52800.0 129750.0 130500.0 130650.0 ; - RECT 52800.0 157350.0 130500.0 158250.0 ; - RECT 52800.0 184950.0 130500.0 185850.0 ; - RECT 117900.0 77100.0 135000.0 78000.0 ; - RECT 117900.0 68400.0 137700.0 69300.0 ; - RECT 117900.0 56700.0 140400.0 57600.0 ; - RECT 117900.0 48000.0 143100.0 48900.0 ; - RECT 119100.0 72750.0 149250.0 73650.0 ; - RECT 119100.0 52350.0 149250.0 53250.0 ; - RECT 115500.0 40050.0 116400.0 40950.0 ; - RECT 115500.0 40500.0 116400.0 42600.0 ; - RECT 52800.0 40050.0 115950.0 40950.0 ; + RECT 54600.0 295950.0 55500.0 298650.0 ; + RECT 97500.0 205650.0 98400.0 206550.0 ; + RECT 97500.0 203250.0 98400.0 204150.0 ; + RECT 96150.0 205650.0 97950.0 206550.0 ; + RECT 97500.0 203700.0 98400.0 206100.0 ; + RECT 97950.0 203250.0 99900.0 204150.0 ; + RECT 154950.0 205650.0 155850.0 206550.0 ; + RECT 154950.0 201150.0 155850.0 202050.0 ; + RECT 136050.0 205650.0 155400.0 206550.0 ; + RECT 154950.0 201600.0 155850.0 206100.0 ; + RECT 155400.0 201150.0 174900.0 202050.0 ; + RECT 97500.0 220050.0 98400.0 220950.0 ; + RECT 97500.0 222450.0 98400.0 223350.0 ; + RECT 96150.0 220050.0 97950.0 220950.0 ; + RECT 97500.0 220500.0 98400.0 222900.0 ; + RECT 97950.0 222450.0 99900.0 223350.0 ; + RECT 154950.0 220050.0 155850.0 220950.0 ; + RECT 154950.0 224550.0 155850.0 225450.0 ; + RECT 136050.0 220050.0 155400.0 220950.0 ; + RECT 154950.0 220500.0 155850.0 225000.0 ; + RECT 155400.0 224550.0 174900.0 225450.0 ; + RECT 97500.0 233250.0 98400.0 234150.0 ; + RECT 97500.0 230850.0 98400.0 231750.0 ; + RECT 96150.0 233250.0 97950.0 234150.0 ; + RECT 97500.0 231300.0 98400.0 233700.0 ; + RECT 97950.0 230850.0 99900.0 231750.0 ; + RECT 154950.0 233250.0 155850.0 234150.0 ; + RECT 154950.0 228750.0 155850.0 229650.0 ; + RECT 136050.0 233250.0 155400.0 234150.0 ; + RECT 154950.0 229200.0 155850.0 233700.0 ; + RECT 155400.0 228750.0 174900.0 229650.0 ; + RECT 97500.0 247650.0 98400.0 248550.0 ; + RECT 97500.0 250050.0 98400.0 250950.0 ; + RECT 96150.0 247650.0 97950.0 248550.0 ; + RECT 97500.0 248100.0 98400.0 250500.0 ; + RECT 97950.0 250050.0 99900.0 250950.0 ; + RECT 154950.0 247650.0 155850.0 248550.0 ; + RECT 154950.0 252150.0 155850.0 253050.0 ; + RECT 136050.0 247650.0 155400.0 248550.0 ; + RECT 154950.0 248100.0 155850.0 252600.0 ; + RECT 155400.0 252150.0 174900.0 253050.0 ; + RECT 97500.0 260850.0 98400.0 261750.0 ; + RECT 97500.0 258450.0 98400.0 259350.0 ; + RECT 96150.0 260850.0 97950.0 261750.0 ; + RECT 97500.0 258900.0 98400.0 261300.0 ; + RECT 97950.0 258450.0 99900.0 259350.0 ; + RECT 154950.0 260850.0 155850.0 261750.0 ; + RECT 154950.0 256350.0 155850.0 257250.0 ; + RECT 136050.0 260850.0 155400.0 261750.0 ; + RECT 154950.0 256800.0 155850.0 261300.0 ; + RECT 155400.0 256350.0 174900.0 257250.0 ; + RECT 97500.0 275250.0 98400.0 276150.0 ; + RECT 97500.0 277650.0 98400.0 278550.0 ; + RECT 96150.0 275250.0 97950.0 276150.0 ; + RECT 97500.0 275700.0 98400.0 278100.0 ; + RECT 97950.0 277650.0 99900.0 278550.0 ; + RECT 154950.0 275250.0 155850.0 276150.0 ; + RECT 154950.0 279750.0 155850.0 280650.0 ; + RECT 136050.0 275250.0 155400.0 276150.0 ; + RECT 154950.0 275700.0 155850.0 280200.0 ; + RECT 155400.0 279750.0 174900.0 280650.0 ; + RECT 97500.0 288450.0 98400.0 289350.0 ; + RECT 97500.0 286050.0 98400.0 286950.0 ; + RECT 96150.0 288450.0 97950.0 289350.0 ; + RECT 97500.0 286500.0 98400.0 288900.0 ; + RECT 97950.0 286050.0 99900.0 286950.0 ; + RECT 154950.0 288450.0 155850.0 289350.0 ; + RECT 154950.0 283950.0 155850.0 284850.0 ; + RECT 136050.0 288450.0 155400.0 289350.0 ; + RECT 154950.0 284400.0 155850.0 288900.0 ; + RECT 155400.0 283950.0 174900.0 284850.0 ; + RECT 97500.0 302850.0 98400.0 303750.0 ; + RECT 97500.0 305250.0 98400.0 306150.0 ; + RECT 96150.0 302850.0 97950.0 303750.0 ; + RECT 97500.0 303300.0 98400.0 305700.0 ; + RECT 97950.0 305250.0 99900.0 306150.0 ; + RECT 154950.0 302850.0 155850.0 303750.0 ; + RECT 154950.0 307350.0 155850.0 308250.0 ; + RECT 136050.0 302850.0 155400.0 303750.0 ; + RECT 154950.0 303300.0 155850.0 307800.0 ; + RECT 155400.0 307350.0 174900.0 308250.0 ; + RECT 97500.0 316050.0 98400.0 316950.0 ; + RECT 97500.0 313650.0 98400.0 314550.0 ; + RECT 96150.0 316050.0 97950.0 316950.0 ; + RECT 97500.0 314100.0 98400.0 316500.0 ; + RECT 97950.0 313650.0 99900.0 314550.0 ; + RECT 154950.0 316050.0 155850.0 316950.0 ; + RECT 154950.0 311550.0 155850.0 312450.0 ; + RECT 136050.0 316050.0 155400.0 316950.0 ; + RECT 154950.0 312000.0 155850.0 316500.0 ; + RECT 155400.0 311550.0 174900.0 312450.0 ; + RECT 97500.0 330450.0 98400.0 331350.0 ; + RECT 97500.0 332850.0 98400.0 333750.0 ; + RECT 96150.0 330450.0 97950.0 331350.0 ; + RECT 97500.0 330900.0 98400.0 333300.0 ; + RECT 97950.0 332850.0 99900.0 333750.0 ; + RECT 154950.0 330450.0 155850.0 331350.0 ; + RECT 154950.0 334950.0 155850.0 335850.0 ; + RECT 136050.0 330450.0 155400.0 331350.0 ; + RECT 154950.0 330900.0 155850.0 335400.0 ; + RECT 155400.0 334950.0 174900.0 335850.0 ; + RECT 97500.0 343650.0 98400.0 344550.0 ; + RECT 97500.0 341250.0 98400.0 342150.0 ; + RECT 96150.0 343650.0 97950.0 344550.0 ; + RECT 97500.0 341700.0 98400.0 344100.0 ; + RECT 97950.0 341250.0 99900.0 342150.0 ; + RECT 154950.0 343650.0 155850.0 344550.0 ; + RECT 154950.0 339150.0 155850.0 340050.0 ; + RECT 136050.0 343650.0 155400.0 344550.0 ; + RECT 154950.0 339600.0 155850.0 344100.0 ; + RECT 155400.0 339150.0 174900.0 340050.0 ; + RECT 97500.0 358050.0 98400.0 358950.0 ; + RECT 97500.0 360450.0 98400.0 361350.0 ; + RECT 96150.0 358050.0 97950.0 358950.0 ; + RECT 97500.0 358500.0 98400.0 360900.0 ; + RECT 97950.0 360450.0 99900.0 361350.0 ; + RECT 154950.0 358050.0 155850.0 358950.0 ; + RECT 154950.0 362550.0 155850.0 363450.0 ; + RECT 136050.0 358050.0 155400.0 358950.0 ; + RECT 154950.0 358500.0 155850.0 363000.0 ; + RECT 155400.0 362550.0 174900.0 363450.0 ; + RECT 97500.0 371250.0 98400.0 372150.0 ; + RECT 97500.0 368850.0 98400.0 369750.0 ; + RECT 96150.0 371250.0 97950.0 372150.0 ; + RECT 97500.0 369300.0 98400.0 371700.0 ; + RECT 97950.0 368850.0 99900.0 369750.0 ; + RECT 154950.0 371250.0 155850.0 372150.0 ; + RECT 154950.0 366750.0 155850.0 367650.0 ; + RECT 136050.0 371250.0 155400.0 372150.0 ; + RECT 154950.0 367200.0 155850.0 371700.0 ; + RECT 155400.0 366750.0 174900.0 367650.0 ; + RECT 97500.0 385650.0 98400.0 386550.0 ; + RECT 97500.0 388050.0 98400.0 388950.0 ; + RECT 96150.0 385650.0 97950.0 386550.0 ; + RECT 97500.0 386100.0 98400.0 388500.0 ; + RECT 97950.0 388050.0 99900.0 388950.0 ; + RECT 154950.0 385650.0 155850.0 386550.0 ; + RECT 154950.0 390150.0 155850.0 391050.0 ; + RECT 136050.0 385650.0 155400.0 386550.0 ; + RECT 154950.0 386100.0 155850.0 390600.0 ; + RECT 155400.0 390150.0 174900.0 391050.0 ; + RECT 97500.0 398850.0 98400.0 399750.0 ; + RECT 97500.0 396450.0 98400.0 397350.0 ; + RECT 96150.0 398850.0 97950.0 399750.0 ; + RECT 97500.0 396900.0 98400.0 399300.0 ; + RECT 97950.0 396450.0 99900.0 397350.0 ; + RECT 154950.0 398850.0 155850.0 399750.0 ; + RECT 154950.0 394350.0 155850.0 395250.0 ; + RECT 136050.0 398850.0 155400.0 399750.0 ; + RECT 154950.0 394800.0 155850.0 399300.0 ; + RECT 155400.0 394350.0 174900.0 395250.0 ; + RECT 97500.0 413250.0 98400.0 414150.0 ; + RECT 97500.0 415650.0 98400.0 416550.0 ; + RECT 96150.0 413250.0 97950.0 414150.0 ; + RECT 97500.0 413700.0 98400.0 416100.0 ; + RECT 97950.0 415650.0 99900.0 416550.0 ; + RECT 154950.0 413250.0 155850.0 414150.0 ; + RECT 154950.0 417750.0 155850.0 418650.0 ; + RECT 136050.0 413250.0 155400.0 414150.0 ; + RECT 154950.0 413700.0 155850.0 418200.0 ; + RECT 155400.0 417750.0 174900.0 418650.0 ; + RECT 106200.0 199050.0 175500.0 199950.0 ; + RECT 106200.0 226650.0 175500.0 227550.0 ; + RECT 106200.0 254250.0 175500.0 255150.0 ; + RECT 106200.0 281850.0 175500.0 282750.0 ; + RECT 106200.0 309450.0 175500.0 310350.0 ; + RECT 106200.0 337050.0 175500.0 337950.0 ; + RECT 106200.0 364650.0 175500.0 365550.0 ; + RECT 106200.0 392250.0 175500.0 393150.0 ; + RECT 106200.0 419850.0 175500.0 420750.0 ; + RECT 52800.0 212850.0 203100.0 213750.0 ; + RECT 52800.0 240450.0 203100.0 241350.0 ; + RECT 52800.0 268050.0 203100.0 268950.0 ; + RECT 52800.0 295650.0 203100.0 296550.0 ; + RECT 52800.0 323250.0 203100.0 324150.0 ; + RECT 52800.0 350850.0 203100.0 351750.0 ; + RECT 52800.0 378450.0 203100.0 379350.0 ; + RECT 52800.0 406050.0 203100.0 406950.0 ; + RECT 130500.0 91350.0 135000.0 92250.0 ; + RECT 127500.0 105150.0 137700.0 106050.0 ; + RECT 130500.0 146550.0 140400.0 147450.0 ; + RECT 127500.0 160350.0 143100.0 161250.0 ; + RECT 130500.0 88650.0 132000.0 89550.0 ; + RECT 130500.0 116250.0 132000.0 117150.0 ; + RECT 130500.0 143850.0 132000.0 144750.0 ; + RECT 130500.0 171450.0 132000.0 172350.0 ; + RECT 52800.0 102450.0 130500.0 103350.0 ; + RECT 52800.0 130050.0 130500.0 130950.0 ; + RECT 52800.0 157650.0 130500.0 158550.0 ; + RECT 52800.0 185250.0 130500.0 186150.0 ; + RECT 117900.0 77400.0 135000.0 78300.0 ; + RECT 117900.0 68700.0 137700.0 69600.0 ; + RECT 117900.0 57000.0 140400.0 57900.0 ; + RECT 117900.0 48300.0 143100.0 49200.0 ; + RECT 119100.0 73050.0 149250.0 73950.0 ; + RECT 119100.0 52650.0 149250.0 53550.0 ; + RECT 115500.0 40350.0 116400.0 41250.0 ; + RECT 115500.0 40800.0 116400.0 42900.0 ; + RECT 52800.0 40350.0 115950.0 41250.0 ; RECT 163800.0 32400.0 175500.0 33300.0 ; RECT 158400.0 27900.0 175500.0 28800.0 ; RECT 161100.0 25500.0 175500.0 26400.0 ; - RECT 163800.0 424800.0 175500.0 425700.0 ; - RECT 166500.0 96900.0 175500.0 97800.0 ; - RECT 169200.0 195000.0 175500.0 195900.0 ; - RECT 61500.0 85050.0 62400.0 85950.0 ; - RECT 61500.0 83400.0 62400.0 85500.0 ; - RECT 61950.0 85050.0 155700.0 85950.0 ; - RECT 103050.0 421650.0 156600.0 422550.0 ; - RECT 175500.0 435900.0 198600.0 436800.0 ; - RECT 175500.0 167700.0 198600.0 168600.0 ; - RECT 175500.0 99000.0 198600.0 99900.0 ; + RECT 163800.0 428700.0 175500.0 429600.0 ; + RECT 166500.0 97200.0 175500.0 98100.0 ; + RECT 169200.0 195300.0 175500.0 196200.0 ; + RECT 61500.0 85350.0 62400.0 86250.0 ; + RECT 61500.0 83700.0 62400.0 85800.0 ; + RECT 61950.0 85350.0 155700.0 86250.0 ; + RECT 103050.0 421950.0 156600.0 422850.0 ; + RECT 175500.0 439800.0 198600.0 440700.0 ; + RECT 175500.0 168000.0 198600.0 168900.0 ; + RECT 175500.0 99300.0 198600.0 100200.0 ; RECT 175500.0 86400.0 198600.0 87300.0 ; RECT 175500.0 9600.0 198600.0 10500.0 ; RECT 152550.0 23400.0 175500.0 24300.0 ; - RECT 152550.0 192900.0 175500.0 193800.0 ; - RECT 152550.0 94800.0 175500.0 95700.0 ; - RECT 175500.0 199200.0 185700.0 213000.0 ; - RECT 175500.0 226800.0 185700.0 213000.0 ; - RECT 175500.0 226800.0 185700.0 240600.0 ; - RECT 175500.0 254400.0 185700.0 240600.0 ; - RECT 175500.0 254400.0 185700.0 268200.0 ; - RECT 175500.0 282000.0 185700.0 268200.0 ; - RECT 175500.0 282000.0 185700.0 295800.0 ; - RECT 175500.0 309600.0 185700.0 295800.0 ; - RECT 175500.0 309600.0 185700.0 323400.0 ; - RECT 175500.0 337200.0 185700.0 323400.0 ; - RECT 175500.0 337200.0 185700.0 351000.0 ; - RECT 175500.0 364800.0 185700.0 351000.0 ; - RECT 175500.0 364800.0 185700.0 378600.0 ; - RECT 175500.0 392400.0 185700.0 378600.0 ; - RECT 175500.0 392400.0 185700.0 406200.0 ; - RECT 175500.0 420000.0 185700.0 406200.0 ; - RECT 185700.0 199200.0 195900.0 213000.0 ; - RECT 185700.0 226800.0 195900.0 213000.0 ; - RECT 185700.0 226800.0 195900.0 240600.0 ; - RECT 185700.0 254400.0 195900.0 240600.0 ; - RECT 185700.0 254400.0 195900.0 268200.0 ; - RECT 185700.0 282000.0 195900.0 268200.0 ; - RECT 185700.0 282000.0 195900.0 295800.0 ; - RECT 185700.0 309600.0 195900.0 295800.0 ; - RECT 185700.0 309600.0 195900.0 323400.0 ; - RECT 185700.0 337200.0 195900.0 323400.0 ; - RECT 185700.0 337200.0 195900.0 351000.0 ; - RECT 185700.0 364800.0 195900.0 351000.0 ; - RECT 185700.0 364800.0 195900.0 378600.0 ; - RECT 185700.0 392400.0 195900.0 378600.0 ; - RECT 185700.0 392400.0 195900.0 406200.0 ; - RECT 185700.0 420000.0 195900.0 406200.0 ; - RECT 174900.0 200700.0 196500.0 201900.0 ; - RECT 174900.0 224100.0 196500.0 225300.0 ; - RECT 174900.0 228300.0 196500.0 229500.0 ; - RECT 174900.0 251700.0 196500.0 252900.0 ; - RECT 174900.0 255900.0 196500.0 257100.0 ; - RECT 174900.0 279300.0 196500.0 280500.0 ; - RECT 174900.0 283500.0 196500.0 284700.0 ; - RECT 174900.0 306900.0 196500.0 308100.0 ; - RECT 174900.0 311100.0 196500.0 312300.0 ; - RECT 174900.0 334500.0 196500.0 335700.0 ; - RECT 174900.0 338700.0 196500.0 339900.0 ; - RECT 174900.0 362100.0 196500.0 363300.0 ; - RECT 174900.0 366300.0 196500.0 367500.0 ; - RECT 174900.0 389700.0 196500.0 390900.0 ; - RECT 174900.0 393900.0 196500.0 395100.0 ; - RECT 174900.0 417300.0 196500.0 418500.0 ; - RECT 174900.0 212400.0 196500.0 213300.0 ; - RECT 174900.0 240000.0 196500.0 240900.0 ; - RECT 174900.0 267600.0 196500.0 268500.0 ; - RECT 174900.0 295200.0 196500.0 296100.0 ; - RECT 174900.0 322800.0 196500.0 323700.0 ; - RECT 174900.0 350400.0 196500.0 351300.0 ; - RECT 174900.0 378000.0 196500.0 378900.0 ; - RECT 174900.0 405600.0 196500.0 406500.0 ; - RECT 180900.0 429600.0 182100.0 436800.0 ; - RECT 178500.0 422400.0 179700.0 423600.0 ; - RECT 180900.0 422400.0 182100.0 423600.0 ; - RECT 180900.0 422400.0 182100.0 423600.0 ; - RECT 178500.0 422400.0 179700.0 423600.0 ; - RECT 178500.0 429600.0 179700.0 430800.0 ; - RECT 180900.0 429600.0 182100.0 430800.0 ; - RECT 180900.0 429600.0 182100.0 430800.0 ; - RECT 178500.0 429600.0 179700.0 430800.0 ; - RECT 180900.0 429600.0 182100.0 430800.0 ; - RECT 183300.0 429600.0 184500.0 430800.0 ; - RECT 183300.0 429600.0 184500.0 430800.0 ; - RECT 180900.0 429600.0 182100.0 430800.0 ; - RECT 180600.0 424650.0 179400.0 425850.0 ; - RECT 180900.0 435000.0 182100.0 436200.0 ; - RECT 178500.0 422400.0 179700.0 423600.0 ; - RECT 180900.0 422400.0 182100.0 423600.0 ; - RECT 178500.0 429600.0 179700.0 430800.0 ; - RECT 183300.0 429600.0 184500.0 430800.0 ; - RECT 175500.0 424800.0 185700.0 425700.0 ; - RECT 175500.0 435900.0 185700.0 436800.0 ; - RECT 191100.0 429600.0 192300.0 436800.0 ; - RECT 188700.0 422400.0 189900.0 423600.0 ; - RECT 191100.0 422400.0 192300.0 423600.0 ; - RECT 191100.0 422400.0 192300.0 423600.0 ; - RECT 188700.0 422400.0 189900.0 423600.0 ; - RECT 188700.0 429600.0 189900.0 430800.0 ; - RECT 191100.0 429600.0 192300.0 430800.0 ; - RECT 191100.0 429600.0 192300.0 430800.0 ; - RECT 188700.0 429600.0 189900.0 430800.0 ; - RECT 191100.0 429600.0 192300.0 430800.0 ; - RECT 193500.0 429600.0 194700.0 430800.0 ; - RECT 193500.0 429600.0 194700.0 430800.0 ; - RECT 191100.0 429600.0 192300.0 430800.0 ; - RECT 190800.0 424650.0 189600.0 425850.0 ; - RECT 191100.0 435000.0 192300.0 436200.0 ; - RECT 188700.0 422400.0 189900.0 423600.0 ; - RECT 191100.0 422400.0 192300.0 423600.0 ; - RECT 188700.0 429600.0 189900.0 430800.0 ; - RECT 193500.0 429600.0 194700.0 430800.0 ; - RECT 185700.0 424800.0 195900.0 425700.0 ; - RECT 185700.0 435900.0 195900.0 436800.0 ; - RECT 175500.0 424800.0 195900.0 425700.0 ; - RECT 175500.0 435900.0 195900.0 436800.0 ; - RECT 175500.0 150300.0 185700.0 199200.0 ; - RECT 185700.0 150300.0 195900.0 199200.0 ; - RECT 175500.0 195000.0 195900.0 195900.0 ; - RECT 175500.0 167700.0 195900.0 168600.0 ; - RECT 175500.0 192900.0 195900.0 193800.0 ; - RECT 175500.0 90000.0 185700.0 150300.0 ; - RECT 185700.0 90000.0 195900.0 150300.0 ; - RECT 175500.0 96900.0 195900.0 97800.0 ; - RECT 175500.0 99000.0 195900.0 99900.0 ; - RECT 175500.0 94800.0 195900.0 95700.0 ; + RECT 152550.0 193200.0 175500.0 194100.0 ; + RECT 152550.0 95100.0 175500.0 96000.0 ; + RECT 175500.0 199500.0 185700.0 213300.0 ; + RECT 175500.0 227100.0 185700.0 213300.0 ; + RECT 175500.0 227100.0 185700.0 240900.0 ; + RECT 175500.0 254700.0 185700.0 240900.0 ; + RECT 175500.0 254700.0 185700.0 268500.0 ; + RECT 175500.0 282300.0 185700.0 268500.0 ; + RECT 175500.0 282300.0 185700.0 296100.0 ; + RECT 175500.0 309900.0 185700.0 296100.0 ; + RECT 175500.0 309900.0 185700.0 323700.0 ; + RECT 175500.0 337500.0 185700.0 323700.0 ; + RECT 175500.0 337500.0 185700.0 351300.0 ; + RECT 175500.0 365100.0 185700.0 351300.0 ; + RECT 175500.0 365100.0 185700.0 378900.0 ; + RECT 175500.0 392700.0 185700.0 378900.0 ; + RECT 175500.0 392700.0 185700.0 406500.0 ; + RECT 175500.0 420300.0 185700.0 406500.0 ; + RECT 185700.0 199500.0 195900.0 213300.0 ; + RECT 185700.0 227100.0 195900.0 213300.0 ; + RECT 185700.0 227100.0 195900.0 240900.0 ; + RECT 185700.0 254700.0 195900.0 240900.0 ; + RECT 185700.0 254700.0 195900.0 268500.0 ; + RECT 185700.0 282300.0 195900.0 268500.0 ; + RECT 185700.0 282300.0 195900.0 296100.0 ; + RECT 185700.0 309900.0 195900.0 296100.0 ; + RECT 185700.0 309900.0 195900.0 323700.0 ; + RECT 185700.0 337500.0 195900.0 323700.0 ; + RECT 185700.0 337500.0 195900.0 351300.0 ; + RECT 185700.0 365100.0 195900.0 351300.0 ; + RECT 185700.0 365100.0 195900.0 378900.0 ; + RECT 185700.0 392700.0 195900.0 378900.0 ; + RECT 185700.0 392700.0 195900.0 406500.0 ; + RECT 185700.0 420300.0 195900.0 406500.0 ; + RECT 174900.0 201000.0 196500.0 202200.0 ; + RECT 174900.0 224400.0 196500.0 225600.0 ; + RECT 174900.0 228600.0 196500.0 229800.0 ; + RECT 174900.0 252000.0 196500.0 253200.0 ; + RECT 174900.0 256200.0 196500.0 257400.0 ; + RECT 174900.0 279600.0 196500.0 280800.0 ; + RECT 174900.0 283800.0 196500.0 285000.0 ; + RECT 174900.0 307200.0 196500.0 308400.0 ; + RECT 174900.0 311400.0 196500.0 312600.0 ; + RECT 174900.0 334800.0 196500.0 336000.0 ; + RECT 174900.0 339000.0 196500.0 340200.0 ; + RECT 174900.0 362400.0 196500.0 363600.0 ; + RECT 174900.0 366600.0 196500.0 367800.0 ; + RECT 174900.0 390000.0 196500.0 391200.0 ; + RECT 174900.0 394200.0 196500.0 395400.0 ; + RECT 174900.0 417600.0 196500.0 418800.0 ; + RECT 174900.0 212700.0 196500.0 213600.0 ; + RECT 174900.0 240300.0 196500.0 241200.0 ; + RECT 174900.0 267900.0 196500.0 268800.0 ; + RECT 174900.0 295500.0 196500.0 296400.0 ; + RECT 174900.0 323100.0 196500.0 324000.0 ; + RECT 174900.0 350700.0 196500.0 351600.0 ; + RECT 174900.0 378300.0 196500.0 379200.0 ; + RECT 174900.0 405900.0 196500.0 406800.0 ; + RECT 180900.0 433500.0 182100.0 440700.0 ; + RECT 178500.0 426300.0 179700.0 427500.0 ; + RECT 180900.0 426300.0 182100.0 427500.0 ; + RECT 180900.0 426300.0 182100.0 427500.0 ; + RECT 178500.0 426300.0 179700.0 427500.0 ; + RECT 178500.0 433500.0 179700.0 434700.0 ; + RECT 180900.0 433500.0 182100.0 434700.0 ; + RECT 180900.0 433500.0 182100.0 434700.0 ; + RECT 178500.0 433500.0 179700.0 434700.0 ; + RECT 180900.0 433500.0 182100.0 434700.0 ; + RECT 183300.0 433500.0 184500.0 434700.0 ; + RECT 183300.0 433500.0 184500.0 434700.0 ; + RECT 180900.0 433500.0 182100.0 434700.0 ; + RECT 180600.0 428550.0 179400.0 429750.0 ; + RECT 180900.0 438900.0 182100.0 440100.0 ; + RECT 178500.0 426300.0 179700.0 427500.0 ; + RECT 180900.0 426300.0 182100.0 427500.0 ; + RECT 178500.0 433500.0 179700.0 434700.0 ; + RECT 183300.0 433500.0 184500.0 434700.0 ; + RECT 175500.0 428700.0 185700.0 429600.0 ; + RECT 175500.0 439800.0 185700.0 440700.0 ; + RECT 191100.0 433500.0 192300.0 440700.0 ; + RECT 188700.0 426300.0 189900.0 427500.0 ; + RECT 191100.0 426300.0 192300.0 427500.0 ; + RECT 191100.0 426300.0 192300.0 427500.0 ; + RECT 188700.0 426300.0 189900.0 427500.0 ; + RECT 188700.0 433500.0 189900.0 434700.0 ; + RECT 191100.0 433500.0 192300.0 434700.0 ; + RECT 191100.0 433500.0 192300.0 434700.0 ; + RECT 188700.0 433500.0 189900.0 434700.0 ; + RECT 191100.0 433500.0 192300.0 434700.0 ; + RECT 193500.0 433500.0 194700.0 434700.0 ; + RECT 193500.0 433500.0 194700.0 434700.0 ; + RECT 191100.0 433500.0 192300.0 434700.0 ; + RECT 190800.0 428550.0 189600.0 429750.0 ; + RECT 191100.0 438900.0 192300.0 440100.0 ; + RECT 188700.0 426300.0 189900.0 427500.0 ; + RECT 191100.0 426300.0 192300.0 427500.0 ; + RECT 188700.0 433500.0 189900.0 434700.0 ; + RECT 193500.0 433500.0 194700.0 434700.0 ; + RECT 185700.0 428700.0 195900.0 429600.0 ; + RECT 185700.0 439800.0 195900.0 440700.0 ; + RECT 175500.0 428700.0 195900.0 429600.0 ; + RECT 175500.0 439800.0 195900.0 440700.0 ; + RECT 175500.0 150600.0 185700.0 199500.0 ; + RECT 185700.0 150600.0 195900.0 199500.0 ; + RECT 175500.0 195300.0 195900.0 196200.0 ; + RECT 175500.0 168000.0 195900.0 168900.0 ; + RECT 175500.0 193200.0 195900.0 194100.0 ; + RECT 175500.0 90000.0 185700.0 150600.0 ; + RECT 185700.0 90000.0 195900.0 150600.0 ; + RECT 175500.0 97200.0 195900.0 98100.0 ; + RECT 175500.0 99300.0 195900.0 100200.0 ; + RECT 175500.0 95100.0 195900.0 96000.0 ; RECT 175500.0 30000.0 185700.0 90000.0 ; RECT 195900.0 30000.0 185700.0 90000.0 ; RECT 175500.0 32400.0 195900.0 33300.0 ; @@ -443,3961 +443,3959 @@ MACRO sram_2_16_1_scn3me_subm RECT 175500.0 28800.0 195900.0 27900.0 ; RECT 175500.0 10500.0 195900.0 9600.0 ; RECT 175500.0 24300.0 195900.0 23400.0 ; - RECT 87750.0 206550.0 88650.0 207450.0 ; - RECT 87750.0 205350.0 88650.0 206250.0 ; - RECT 83700.0 206550.0 88200.0 207450.0 ; - RECT 87750.0 205800.0 88650.0 207000.0 ; - RECT 88200.0 205350.0 92700.0 206250.0 ; - RECT 87750.0 218550.0 88650.0 219450.0 ; - RECT 87750.0 219750.0 88650.0 220650.0 ; - RECT 83700.0 218550.0 88200.0 219450.0 ; - RECT 87750.0 219000.0 88650.0 220200.0 ; - RECT 88200.0 219750.0 92700.0 220650.0 ; - RECT 87750.0 234150.0 88650.0 235050.0 ; - RECT 87750.0 232950.0 88650.0 233850.0 ; - RECT 83700.0 234150.0 88200.0 235050.0 ; - RECT 87750.0 233400.0 88650.0 234600.0 ; - RECT 88200.0 232950.0 92700.0 233850.0 ; - RECT 87750.0 246150.0 88650.0 247050.0 ; - RECT 87750.0 247350.0 88650.0 248250.0 ; - RECT 83700.0 246150.0 88200.0 247050.0 ; - RECT 87750.0 246600.0 88650.0 247800.0 ; - RECT 88200.0 247350.0 92700.0 248250.0 ; - RECT 87750.0 261750.0 88650.0 262650.0 ; - RECT 87750.0 260550.0 88650.0 261450.0 ; - RECT 83700.0 261750.0 88200.0 262650.0 ; - RECT 87750.0 261000.0 88650.0 262200.0 ; - RECT 88200.0 260550.0 92700.0 261450.0 ; - RECT 87750.0 273750.0 88650.0 274650.0 ; - RECT 87750.0 274950.0 88650.0 275850.0 ; - RECT 83700.0 273750.0 88200.0 274650.0 ; - RECT 87750.0 274200.0 88650.0 275400.0 ; - RECT 88200.0 274950.0 92700.0 275850.0 ; - RECT 87750.0 289350.0 88650.0 290250.0 ; - RECT 87750.0 288150.0 88650.0 289050.0 ; - RECT 83700.0 289350.0 88200.0 290250.0 ; - RECT 87750.0 288600.0 88650.0 289800.0 ; - RECT 88200.0 288150.0 92700.0 289050.0 ; - RECT 87750.0 301350.0 88650.0 302250.0 ; - RECT 87750.0 302550.0 88650.0 303450.0 ; - RECT 83700.0 301350.0 88200.0 302250.0 ; - RECT 87750.0 301800.0 88650.0 303000.0 ; - RECT 88200.0 302550.0 92700.0 303450.0 ; - RECT 87750.0 316950.0 88650.0 317850.0 ; - RECT 87750.0 315750.0 88650.0 316650.0 ; - RECT 83700.0 316950.0 88200.0 317850.0 ; - RECT 87750.0 316200.0 88650.0 317400.0 ; - RECT 88200.0 315750.0 92700.0 316650.0 ; - RECT 87750.0 328950.0 88650.0 329850.0 ; - RECT 87750.0 330150.0 88650.0 331050.0 ; - RECT 83700.0 328950.0 88200.0 329850.0 ; - RECT 87750.0 329400.0 88650.0 330600.0 ; - RECT 88200.0 330150.0 92700.0 331050.0 ; - RECT 87750.0 344550.0 88650.0 345450.0 ; - RECT 87750.0 343350.0 88650.0 344250.0 ; - RECT 83700.0 344550.0 88200.0 345450.0 ; - RECT 87750.0 343800.0 88650.0 345000.0 ; - RECT 88200.0 343350.0 92700.0 344250.0 ; - RECT 87750.0 356550.0 88650.0 357450.0 ; - RECT 87750.0 357750.0 88650.0 358650.0 ; - RECT 83700.0 356550.0 88200.0 357450.0 ; - RECT 87750.0 357000.0 88650.0 358200.0 ; - RECT 88200.0 357750.0 92700.0 358650.0 ; - RECT 87750.0 372150.0 88650.0 373050.0 ; - RECT 87750.0 370950.0 88650.0 371850.0 ; - RECT 83700.0 372150.0 88200.0 373050.0 ; - RECT 87750.0 371400.0 88650.0 372600.0 ; - RECT 88200.0 370950.0 92700.0 371850.0 ; - RECT 87750.0 384150.0 88650.0 385050.0 ; - RECT 87750.0 385350.0 88650.0 386250.0 ; - RECT 83700.0 384150.0 88200.0 385050.0 ; - RECT 87750.0 384600.0 88650.0 385800.0 ; - RECT 88200.0 385350.0 92700.0 386250.0 ; - RECT 87750.0 399750.0 88650.0 400650.0 ; - RECT 87750.0 398550.0 88650.0 399450.0 ; - RECT 83700.0 399750.0 88200.0 400650.0 ; - RECT 87750.0 399000.0 88650.0 400200.0 ; - RECT 88200.0 398550.0 92700.0 399450.0 ; - RECT 87750.0 411750.0 88650.0 412650.0 ; - RECT 87750.0 412950.0 88650.0 413850.0 ; - RECT 83700.0 411750.0 88200.0 412650.0 ; - RECT 87750.0 412200.0 88650.0 413400.0 ; - RECT 88200.0 412950.0 92700.0 413850.0 ; - RECT 59550.0 94950.0 75900.0 95850.0 ; - RECT 61650.0 109350.0 75900.0 110250.0 ; - RECT 63750.0 122550.0 75900.0 123450.0 ; - RECT 65850.0 136950.0 75900.0 137850.0 ; - RECT 67950.0 150150.0 75900.0 151050.0 ; - RECT 70050.0 164550.0 75900.0 165450.0 ; - RECT 72150.0 177750.0 75900.0 178650.0 ; - RECT 74250.0 192150.0 75900.0 193050.0 ; - RECT 59550.0 206550.0 78300.0 207450.0 ; - RECT 67950.0 203850.0 81300.0 204750.0 ; - RECT 59550.0 218550.0 78300.0 219450.0 ; - RECT 70050.0 221250.0 81300.0 222150.0 ; - RECT 59550.0 234150.0 78300.0 235050.0 ; - RECT 72150.0 231450.0 81300.0 232350.0 ; - RECT 59550.0 246150.0 78300.0 247050.0 ; - RECT 74250.0 248850.0 81300.0 249750.0 ; - RECT 61650.0 261750.0 78300.0 262650.0 ; - RECT 67950.0 259050.0 81300.0 259950.0 ; - RECT 61650.0 273750.0 78300.0 274650.0 ; - RECT 70050.0 276450.0 81300.0 277350.0 ; - RECT 61650.0 289350.0 78300.0 290250.0 ; - RECT 72150.0 286650.0 81300.0 287550.0 ; - RECT 61650.0 301350.0 78300.0 302250.0 ; - RECT 74250.0 304050.0 81300.0 304950.0 ; - RECT 63750.0 316950.0 78300.0 317850.0 ; - RECT 67950.0 314250.0 81300.0 315150.0 ; - RECT 63750.0 328950.0 78300.0 329850.0 ; - RECT 70050.0 331650.0 81300.0 332550.0 ; - RECT 63750.0 344550.0 78300.0 345450.0 ; - RECT 72150.0 341850.0 81300.0 342750.0 ; - RECT 63750.0 356550.0 78300.0 357450.0 ; - RECT 74250.0 359250.0 81300.0 360150.0 ; - RECT 65850.0 372150.0 78300.0 373050.0 ; - RECT 67950.0 369450.0 81300.0 370350.0 ; - RECT 65850.0 384150.0 78300.0 385050.0 ; - RECT 70050.0 386850.0 81300.0 387750.0 ; - RECT 65850.0 399750.0 78300.0 400650.0 ; - RECT 72150.0 397050.0 81300.0 397950.0 ; - RECT 65850.0 411750.0 78300.0 412650.0 ; - RECT 74250.0 414450.0 81300.0 415350.0 ; - RECT 114450.0 94950.0 113550.0 95850.0 ; - RECT 114450.0 99450.0 113550.0 100350.0 ; - RECT 118650.0 94950.0 114000.0 95850.0 ; - RECT 114450.0 95400.0 113550.0 99900.0 ; - RECT 114000.0 99450.0 111450.0 100350.0 ; - RECT 130050.0 94950.0 122100.0 95850.0 ; - RECT 114450.0 109350.0 113550.0 110250.0 ; - RECT 114450.0 113250.0 113550.0 114150.0 ; - RECT 118650.0 109350.0 114000.0 110250.0 ; - RECT 114450.0 109800.0 113550.0 113700.0 ; - RECT 114000.0 113250.0 108450.0 114150.0 ; - RECT 127050.0 109350.0 122100.0 110250.0 ; - RECT 130050.0 118050.0 105450.0 118950.0 ; - RECT 127050.0 131850.0 102450.0 132750.0 ; - RECT 111450.0 93450.0 94500.0 94350.0 ; - RECT 108450.0 96150.0 97500.0 97050.0 ; - RECT 105450.0 110850.0 94500.0 111750.0 ; - RECT 108450.0 108150.0 97500.0 109050.0 ; - RECT 111450.0 121050.0 94500.0 121950.0 ; - RECT 102450.0 123750.0 97500.0 124650.0 ; - RECT 105450.0 138450.0 94500.0 139350.0 ; - RECT 102450.0 135750.0 97500.0 136650.0 ; - RECT 88050.0 96150.0 87150.0 97050.0 ; - RECT 88050.0 94950.0 87150.0 95850.0 ; - RECT 92100.0 96150.0 87600.0 97050.0 ; - RECT 88050.0 95400.0 87150.0 96600.0 ; - RECT 87600.0 94950.0 83100.0 95850.0 ; - RECT 88050.0 108150.0 87150.0 109050.0 ; - RECT 88050.0 109350.0 87150.0 110250.0 ; - RECT 92100.0 108150.0 87600.0 109050.0 ; - RECT 88050.0 108600.0 87150.0 109800.0 ; - RECT 87600.0 109350.0 83100.0 110250.0 ; - RECT 88050.0 123750.0 87150.0 124650.0 ; - RECT 88050.0 122550.0 87150.0 123450.0 ; - RECT 92100.0 123750.0 87600.0 124650.0 ; - RECT 88050.0 123000.0 87150.0 124200.0 ; - RECT 87600.0 122550.0 83100.0 123450.0 ; - RECT 88050.0 135750.0 87150.0 136650.0 ; - RECT 88050.0 136950.0 87150.0 137850.0 ; - RECT 92100.0 135750.0 87600.0 136650.0 ; - RECT 88050.0 136200.0 87150.0 137400.0 ; - RECT 87600.0 136950.0 83100.0 137850.0 ; - RECT 117900.0 100650.0 116700.0 102600.0 ; - RECT 117900.0 88800.0 116700.0 90750.0 ; - RECT 122700.0 90150.0 121500.0 88350.0 ; - RECT 122700.0 99450.0 121500.0 103050.0 ; - RECT 120000.0 90150.0 119100.0 99450.0 ; - RECT 122700.0 99450.0 121500.0 100650.0 ; - RECT 120300.0 99450.0 119100.0 100650.0 ; - RECT 120300.0 99450.0 119100.0 100650.0 ; - RECT 122700.0 99450.0 121500.0 100650.0 ; - RECT 122700.0 90150.0 121500.0 91350.0 ; - RECT 120300.0 90150.0 119100.0 91350.0 ; - RECT 120300.0 90150.0 119100.0 91350.0 ; - RECT 122700.0 90150.0 121500.0 91350.0 ; - RECT 117900.0 100050.0 116700.0 101250.0 ; - RECT 117900.0 90150.0 116700.0 91350.0 ; - RECT 122100.0 94800.0 120900.0 96000.0 ; - RECT 122100.0 94800.0 120900.0 96000.0 ; - RECT 119550.0 94950.0 118650.0 95850.0 ; - RECT 124500.0 102150.0 114900.0 103050.0 ; - RECT 124500.0 88350.0 114900.0 89250.0 ; - RECT 117900.0 104550.0 116700.0 102600.0 ; - RECT 117900.0 116400.0 116700.0 114450.0 ; - RECT 122700.0 115050.0 121500.0 116850.0 ; - RECT 122700.0 105750.0 121500.0 102150.0 ; - RECT 120000.0 115050.0 119100.0 105750.0 ; - RECT 122700.0 105750.0 121500.0 104550.0 ; - RECT 120300.0 105750.0 119100.0 104550.0 ; - RECT 120300.0 105750.0 119100.0 104550.0 ; - RECT 122700.0 105750.0 121500.0 104550.0 ; - RECT 122700.0 115050.0 121500.0 113850.0 ; - RECT 120300.0 115050.0 119100.0 113850.0 ; - RECT 120300.0 115050.0 119100.0 113850.0 ; - RECT 122700.0 115050.0 121500.0 113850.0 ; - RECT 117900.0 105150.0 116700.0 103950.0 ; - RECT 117900.0 115050.0 116700.0 113850.0 ; - RECT 122100.0 110400.0 120900.0 109200.0 ; - RECT 122100.0 110400.0 120900.0 109200.0 ; - RECT 119550.0 110250.0 118650.0 109350.0 ; - RECT 124500.0 103050.0 114900.0 102150.0 ; - RECT 124500.0 116850.0 114900.0 115950.0 ; - RECT 78900.0 100650.0 77700.0 102600.0 ; - RECT 78900.0 88800.0 77700.0 90750.0 ; - RECT 83700.0 90150.0 82500.0 88350.0 ; - RECT 83700.0 99450.0 82500.0 103050.0 ; - RECT 81000.0 90150.0 80100.0 99450.0 ; - RECT 83700.0 99450.0 82500.0 100650.0 ; - RECT 81300.0 99450.0 80100.0 100650.0 ; - RECT 81300.0 99450.0 80100.0 100650.0 ; - RECT 83700.0 99450.0 82500.0 100650.0 ; - RECT 83700.0 90150.0 82500.0 91350.0 ; - RECT 81300.0 90150.0 80100.0 91350.0 ; - RECT 81300.0 90150.0 80100.0 91350.0 ; - RECT 83700.0 90150.0 82500.0 91350.0 ; - RECT 78900.0 100050.0 77700.0 101250.0 ; - RECT 78900.0 90150.0 77700.0 91350.0 ; - RECT 83100.0 94800.0 81900.0 96000.0 ; - RECT 83100.0 94800.0 81900.0 96000.0 ; - RECT 80550.0 94950.0 79650.0 95850.0 ; - RECT 85500.0 102150.0 75900.0 103050.0 ; - RECT 85500.0 88350.0 75900.0 89250.0 ; - RECT 78900.0 104550.0 77700.0 102600.0 ; - RECT 78900.0 116400.0 77700.0 114450.0 ; - RECT 83700.0 115050.0 82500.0 116850.0 ; - RECT 83700.0 105750.0 82500.0 102150.0 ; - RECT 81000.0 115050.0 80100.0 105750.0 ; - RECT 83700.0 105750.0 82500.0 104550.0 ; - RECT 81300.0 105750.0 80100.0 104550.0 ; - RECT 81300.0 105750.0 80100.0 104550.0 ; - RECT 83700.0 105750.0 82500.0 104550.0 ; - RECT 83700.0 115050.0 82500.0 113850.0 ; - RECT 81300.0 115050.0 80100.0 113850.0 ; - RECT 81300.0 115050.0 80100.0 113850.0 ; - RECT 83700.0 115050.0 82500.0 113850.0 ; - RECT 78900.0 105150.0 77700.0 103950.0 ; - RECT 78900.0 115050.0 77700.0 113850.0 ; - RECT 83100.0 110400.0 81900.0 109200.0 ; - RECT 83100.0 110400.0 81900.0 109200.0 ; - RECT 80550.0 110250.0 79650.0 109350.0 ; - RECT 85500.0 103050.0 75900.0 102150.0 ; - RECT 85500.0 116850.0 75900.0 115950.0 ; - RECT 78900.0 128250.0 77700.0 130200.0 ; - RECT 78900.0 116400.0 77700.0 118350.0 ; - RECT 83700.0 117750.0 82500.0 115950.0 ; - RECT 83700.0 127050.0 82500.0 130650.0 ; - RECT 81000.0 117750.0 80100.0 127050.0 ; - RECT 83700.0 127050.0 82500.0 128250.0 ; - RECT 81300.0 127050.0 80100.0 128250.0 ; - RECT 81300.0 127050.0 80100.0 128250.0 ; - RECT 83700.0 127050.0 82500.0 128250.0 ; - RECT 83700.0 117750.0 82500.0 118950.0 ; - RECT 81300.0 117750.0 80100.0 118950.0 ; - RECT 81300.0 117750.0 80100.0 118950.0 ; - RECT 83700.0 117750.0 82500.0 118950.0 ; - RECT 78900.0 127650.0 77700.0 128850.0 ; - RECT 78900.0 117750.0 77700.0 118950.0 ; - RECT 83100.0 122400.0 81900.0 123600.0 ; - RECT 83100.0 122400.0 81900.0 123600.0 ; - RECT 80550.0 122550.0 79650.0 123450.0 ; - RECT 85500.0 129750.0 75900.0 130650.0 ; - RECT 85500.0 115950.0 75900.0 116850.0 ; - RECT 78900.0 132150.0 77700.0 130200.0 ; - RECT 78900.0 144000.0 77700.0 142050.0 ; - RECT 83700.0 142650.0 82500.0 144450.0 ; - RECT 83700.0 133350.0 82500.0 129750.0 ; - RECT 81000.0 142650.0 80100.0 133350.0 ; - RECT 83700.0 133350.0 82500.0 132150.0 ; - RECT 81300.0 133350.0 80100.0 132150.0 ; - RECT 81300.0 133350.0 80100.0 132150.0 ; - RECT 83700.0 133350.0 82500.0 132150.0 ; - RECT 83700.0 142650.0 82500.0 141450.0 ; - RECT 81300.0 142650.0 80100.0 141450.0 ; - RECT 81300.0 142650.0 80100.0 141450.0 ; - RECT 83700.0 142650.0 82500.0 141450.0 ; - RECT 78900.0 132750.0 77700.0 131550.0 ; - RECT 78900.0 142650.0 77700.0 141450.0 ; - RECT 83100.0 138000.0 81900.0 136800.0 ; - RECT 83100.0 138000.0 81900.0 136800.0 ; - RECT 80550.0 137850.0 79650.0 136950.0 ; - RECT 85500.0 130650.0 75900.0 129750.0 ; - RECT 85500.0 144450.0 75900.0 143550.0 ; - RECT 98100.0 90750.0 96900.0 88350.0 ; - RECT 98100.0 99450.0 96900.0 103050.0 ; - RECT 93300.0 99450.0 92100.0 103050.0 ; - RECT 90900.0 100650.0 89700.0 102600.0 ; - RECT 90900.0 88800.0 89700.0 90750.0 ; - RECT 98100.0 99450.0 96900.0 100650.0 ; - RECT 95700.0 99450.0 94500.0 100650.0 ; - RECT 95700.0 99450.0 94500.0 100650.0 ; - RECT 98100.0 99450.0 96900.0 100650.0 ; - RECT 95700.0 99450.0 94500.0 100650.0 ; - RECT 93300.0 99450.0 92100.0 100650.0 ; - RECT 93300.0 99450.0 92100.0 100650.0 ; - RECT 95700.0 99450.0 94500.0 100650.0 ; - RECT 98100.0 90750.0 96900.0 91950.0 ; - RECT 95700.0 90750.0 94500.0 91950.0 ; - RECT 95700.0 90750.0 94500.0 91950.0 ; - RECT 98100.0 90750.0 96900.0 91950.0 ; - RECT 95700.0 90750.0 94500.0 91950.0 ; - RECT 93300.0 90750.0 92100.0 91950.0 ; - RECT 93300.0 90750.0 92100.0 91950.0 ; - RECT 95700.0 90750.0 94500.0 91950.0 ; - RECT 90900.0 100050.0 89700.0 101250.0 ; - RECT 90900.0 90150.0 89700.0 91350.0 ; - RECT 93300.0 93300.0 94500.0 94500.0 ; - RECT 96300.0 96000.0 97500.0 97200.0 ; - RECT 95700.0 99450.0 94500.0 100650.0 ; - RECT 93300.0 90750.0 92100.0 91950.0 ; - RECT 92100.0 96000.0 93300.0 97200.0 ; - RECT 97500.0 96000.0 96300.0 97200.0 ; - RECT 94500.0 93300.0 93300.0 94500.0 ; - RECT 93300.0 96000.0 92100.0 97200.0 ; - RECT 99900.0 102150.0 85500.0 103050.0 ; - RECT 99900.0 88350.0 85500.0 89250.0 ; - RECT 98100.0 114450.0 96900.0 116850.0 ; - RECT 98100.0 105750.0 96900.0 102150.0 ; - RECT 93300.0 105750.0 92100.0 102150.0 ; - RECT 90900.0 104550.0 89700.0 102600.0 ; - RECT 90900.0 116400.0 89700.0 114450.0 ; - RECT 98100.0 105750.0 96900.0 104550.0 ; - RECT 95700.0 105750.0 94500.0 104550.0 ; - RECT 95700.0 105750.0 94500.0 104550.0 ; - RECT 98100.0 105750.0 96900.0 104550.0 ; - RECT 95700.0 105750.0 94500.0 104550.0 ; - RECT 93300.0 105750.0 92100.0 104550.0 ; - RECT 93300.0 105750.0 92100.0 104550.0 ; - RECT 95700.0 105750.0 94500.0 104550.0 ; - RECT 98100.0 114450.0 96900.0 113250.0 ; - RECT 95700.0 114450.0 94500.0 113250.0 ; - RECT 95700.0 114450.0 94500.0 113250.0 ; - RECT 98100.0 114450.0 96900.0 113250.0 ; - RECT 95700.0 114450.0 94500.0 113250.0 ; - RECT 93300.0 114450.0 92100.0 113250.0 ; - RECT 93300.0 114450.0 92100.0 113250.0 ; - RECT 95700.0 114450.0 94500.0 113250.0 ; - RECT 90900.0 105150.0 89700.0 103950.0 ; - RECT 90900.0 115050.0 89700.0 113850.0 ; - RECT 93300.0 111900.0 94500.0 110700.0 ; - RECT 96300.0 109200.0 97500.0 108000.0 ; - RECT 95700.0 105750.0 94500.0 104550.0 ; - RECT 93300.0 114450.0 92100.0 113250.0 ; - RECT 92100.0 109200.0 93300.0 108000.0 ; - RECT 97500.0 109200.0 96300.0 108000.0 ; - RECT 94500.0 111900.0 93300.0 110700.0 ; - RECT 93300.0 109200.0 92100.0 108000.0 ; - RECT 99900.0 103050.0 85500.0 102150.0 ; - RECT 99900.0 116850.0 85500.0 115950.0 ; - RECT 98100.0 118350.0 96900.0 115950.0 ; - RECT 98100.0 127050.0 96900.0 130650.0 ; - RECT 93300.0 127050.0 92100.0 130650.0 ; - RECT 90900.0 128250.0 89700.0 130200.0 ; - RECT 90900.0 116400.0 89700.0 118350.0 ; - RECT 98100.0 127050.0 96900.0 128250.0 ; - RECT 95700.0 127050.0 94500.0 128250.0 ; - RECT 95700.0 127050.0 94500.0 128250.0 ; - RECT 98100.0 127050.0 96900.0 128250.0 ; - RECT 95700.0 127050.0 94500.0 128250.0 ; - RECT 93300.0 127050.0 92100.0 128250.0 ; - RECT 93300.0 127050.0 92100.0 128250.0 ; - RECT 95700.0 127050.0 94500.0 128250.0 ; - RECT 98100.0 118350.0 96900.0 119550.0 ; - RECT 95700.0 118350.0 94500.0 119550.0 ; - RECT 95700.0 118350.0 94500.0 119550.0 ; - RECT 98100.0 118350.0 96900.0 119550.0 ; - RECT 95700.0 118350.0 94500.0 119550.0 ; - RECT 93300.0 118350.0 92100.0 119550.0 ; - RECT 93300.0 118350.0 92100.0 119550.0 ; - RECT 95700.0 118350.0 94500.0 119550.0 ; - RECT 90900.0 127650.0 89700.0 128850.0 ; - RECT 90900.0 117750.0 89700.0 118950.0 ; - RECT 93300.0 120900.0 94500.0 122100.0 ; - RECT 96300.0 123600.0 97500.0 124800.0 ; - RECT 95700.0 127050.0 94500.0 128250.0 ; - RECT 93300.0 118350.0 92100.0 119550.0 ; - RECT 92100.0 123600.0 93300.0 124800.0 ; - RECT 97500.0 123600.0 96300.0 124800.0 ; - RECT 94500.0 120900.0 93300.0 122100.0 ; - RECT 93300.0 123600.0 92100.0 124800.0 ; - RECT 99900.0 129750.0 85500.0 130650.0 ; - RECT 99900.0 115950.0 85500.0 116850.0 ; - RECT 98100.0 142050.0 96900.0 144450.0 ; - RECT 98100.0 133350.0 96900.0 129750.0 ; - RECT 93300.0 133350.0 92100.0 129750.0 ; - RECT 90900.0 132150.0 89700.0 130200.0 ; - RECT 90900.0 144000.0 89700.0 142050.0 ; - RECT 98100.0 133350.0 96900.0 132150.0 ; - RECT 95700.0 133350.0 94500.0 132150.0 ; - RECT 95700.0 133350.0 94500.0 132150.0 ; - RECT 98100.0 133350.0 96900.0 132150.0 ; - RECT 95700.0 133350.0 94500.0 132150.0 ; - RECT 93300.0 133350.0 92100.0 132150.0 ; - RECT 93300.0 133350.0 92100.0 132150.0 ; - RECT 95700.0 133350.0 94500.0 132150.0 ; - RECT 98100.0 142050.0 96900.0 140850.0 ; - RECT 95700.0 142050.0 94500.0 140850.0 ; - RECT 95700.0 142050.0 94500.0 140850.0 ; - RECT 98100.0 142050.0 96900.0 140850.0 ; - RECT 95700.0 142050.0 94500.0 140850.0 ; - RECT 93300.0 142050.0 92100.0 140850.0 ; - RECT 93300.0 142050.0 92100.0 140850.0 ; - RECT 95700.0 142050.0 94500.0 140850.0 ; - RECT 90900.0 132750.0 89700.0 131550.0 ; - RECT 90900.0 142650.0 89700.0 141450.0 ; - RECT 93300.0 139500.0 94500.0 138300.0 ; - RECT 96300.0 136800.0 97500.0 135600.0 ; - RECT 95700.0 133350.0 94500.0 132150.0 ; - RECT 93300.0 142050.0 92100.0 140850.0 ; - RECT 92100.0 136800.0 93300.0 135600.0 ; - RECT 97500.0 136800.0 96300.0 135600.0 ; - RECT 94500.0 139500.0 93300.0 138300.0 ; - RECT 93300.0 136800.0 92100.0 135600.0 ; - RECT 99900.0 130650.0 85500.0 129750.0 ; - RECT 99900.0 144450.0 85500.0 143550.0 ; - RECT 110850.0 99300.0 112050.0 100500.0 ; - RECT 129450.0 94800.0 130650.0 96000.0 ; - RECT 107850.0 113100.0 109050.0 114300.0 ; - RECT 126450.0 109200.0 127650.0 110400.0 ; - RECT 129450.0 117900.0 130650.0 119100.0 ; - RECT 104850.0 117900.0 106050.0 119100.0 ; - RECT 126450.0 131700.0 127650.0 132900.0 ; - RECT 101850.0 131700.0 103050.0 132900.0 ; - RECT 110850.0 93300.0 112050.0 94500.0 ; - RECT 107850.0 96000.0 109050.0 97200.0 ; - RECT 104850.0 110700.0 106050.0 111900.0 ; - RECT 107850.0 108000.0 109050.0 109200.0 ; - RECT 110850.0 120900.0 112050.0 122100.0 ; - RECT 101850.0 123600.0 103050.0 124800.0 ; - RECT 104850.0 138300.0 106050.0 139500.0 ; - RECT 101850.0 135600.0 103050.0 136800.0 ; - RECT 79650.0 94950.0 75900.0 95850.0 ; - RECT 79650.0 109350.0 75900.0 110250.0 ; - RECT 79650.0 122550.0 75900.0 123450.0 ; - RECT 79650.0 136950.0 75900.0 137850.0 ; - RECT 130500.0 102150.0 75900.0 103050.0 ; - RECT 130500.0 129750.0 75900.0 130650.0 ; - RECT 130500.0 88350.0 75900.0 89250.0 ; - RECT 130500.0 115950.0 75900.0 116850.0 ; - RECT 130500.0 143550.0 75900.0 144450.0 ; - RECT 114450.0 150150.0 113550.0 151050.0 ; - RECT 114450.0 154650.0 113550.0 155550.0 ; - RECT 118650.0 150150.0 114000.0 151050.0 ; - RECT 114450.0 150600.0 113550.0 155100.0 ; - RECT 114000.0 154650.0 111450.0 155550.0 ; - RECT 130050.0 150150.0 122100.0 151050.0 ; - RECT 114450.0 164550.0 113550.0 165450.0 ; - RECT 114450.0 168450.0 113550.0 169350.0 ; - RECT 118650.0 164550.0 114000.0 165450.0 ; - RECT 114450.0 165000.0 113550.0 168900.0 ; - RECT 114000.0 168450.0 108450.0 169350.0 ; - RECT 127050.0 164550.0 122100.0 165450.0 ; - RECT 130050.0 173250.0 105450.0 174150.0 ; - RECT 127050.0 187050.0 102450.0 187950.0 ; - RECT 111450.0 148650.0 94500.0 149550.0 ; - RECT 108450.0 151350.0 97500.0 152250.0 ; - RECT 105450.0 166050.0 94500.0 166950.0 ; - RECT 108450.0 163350.0 97500.0 164250.0 ; - RECT 111450.0 176250.0 94500.0 177150.0 ; - RECT 102450.0 178950.0 97500.0 179850.0 ; - RECT 105450.0 193650.0 94500.0 194550.0 ; - RECT 102450.0 190950.0 97500.0 191850.0 ; - RECT 88050.0 151350.0 87150.0 152250.0 ; - RECT 88050.0 150150.0 87150.0 151050.0 ; - RECT 92100.0 151350.0 87600.0 152250.0 ; - RECT 88050.0 150600.0 87150.0 151800.0 ; - RECT 87600.0 150150.0 83100.0 151050.0 ; - RECT 88050.0 163350.0 87150.0 164250.0 ; - RECT 88050.0 164550.0 87150.0 165450.0 ; - RECT 92100.0 163350.0 87600.0 164250.0 ; - RECT 88050.0 163800.0 87150.0 165000.0 ; - RECT 87600.0 164550.0 83100.0 165450.0 ; - RECT 88050.0 178950.0 87150.0 179850.0 ; - RECT 88050.0 177750.0 87150.0 178650.0 ; - RECT 92100.0 178950.0 87600.0 179850.0 ; - RECT 88050.0 178200.0 87150.0 179400.0 ; - RECT 87600.0 177750.0 83100.0 178650.0 ; - RECT 88050.0 190950.0 87150.0 191850.0 ; - RECT 88050.0 192150.0 87150.0 193050.0 ; - RECT 92100.0 190950.0 87600.0 191850.0 ; - RECT 88050.0 191400.0 87150.0 192600.0 ; - RECT 87600.0 192150.0 83100.0 193050.0 ; - RECT 117900.0 155850.0 116700.0 157800.0 ; - RECT 117900.0 144000.0 116700.0 145950.0 ; - RECT 122700.0 145350.0 121500.0 143550.0 ; - RECT 122700.0 154650.0 121500.0 158250.0 ; - RECT 120000.0 145350.0 119100.0 154650.0 ; - RECT 122700.0 154650.0 121500.0 155850.0 ; - RECT 120300.0 154650.0 119100.0 155850.0 ; - RECT 120300.0 154650.0 119100.0 155850.0 ; - RECT 122700.0 154650.0 121500.0 155850.0 ; - RECT 122700.0 145350.0 121500.0 146550.0 ; - RECT 120300.0 145350.0 119100.0 146550.0 ; - RECT 120300.0 145350.0 119100.0 146550.0 ; - RECT 122700.0 145350.0 121500.0 146550.0 ; - RECT 117900.0 155250.0 116700.0 156450.0 ; - RECT 117900.0 145350.0 116700.0 146550.0 ; - RECT 122100.0 150000.0 120900.0 151200.0 ; - RECT 122100.0 150000.0 120900.0 151200.0 ; - RECT 119550.0 150150.0 118650.0 151050.0 ; - RECT 124500.0 157350.0 114900.0 158250.0 ; - RECT 124500.0 143550.0 114900.0 144450.0 ; - RECT 117900.0 159750.0 116700.0 157800.0 ; - RECT 117900.0 171600.0 116700.0 169650.0 ; - RECT 122700.0 170250.0 121500.0 172050.0 ; - RECT 122700.0 160950.0 121500.0 157350.0 ; - RECT 120000.0 170250.0 119100.0 160950.0 ; - RECT 122700.0 160950.0 121500.0 159750.0 ; - RECT 120300.0 160950.0 119100.0 159750.0 ; - RECT 120300.0 160950.0 119100.0 159750.0 ; - RECT 122700.0 160950.0 121500.0 159750.0 ; - RECT 122700.0 170250.0 121500.0 169050.0 ; - RECT 120300.0 170250.0 119100.0 169050.0 ; - RECT 120300.0 170250.0 119100.0 169050.0 ; - RECT 122700.0 170250.0 121500.0 169050.0 ; - RECT 117900.0 160350.0 116700.0 159150.0 ; - RECT 117900.0 170250.0 116700.0 169050.0 ; - RECT 122100.0 165600.0 120900.0 164400.0 ; - RECT 122100.0 165600.0 120900.0 164400.0 ; - RECT 119550.0 165450.0 118650.0 164550.0 ; - RECT 124500.0 158250.0 114900.0 157350.0 ; - RECT 124500.0 172050.0 114900.0 171150.0 ; - RECT 78900.0 155850.0 77700.0 157800.0 ; - RECT 78900.0 144000.0 77700.0 145950.0 ; - RECT 83700.0 145350.0 82500.0 143550.0 ; - RECT 83700.0 154650.0 82500.0 158250.0 ; - RECT 81000.0 145350.0 80100.0 154650.0 ; - RECT 83700.0 154650.0 82500.0 155850.0 ; - RECT 81300.0 154650.0 80100.0 155850.0 ; - RECT 81300.0 154650.0 80100.0 155850.0 ; - RECT 83700.0 154650.0 82500.0 155850.0 ; - RECT 83700.0 145350.0 82500.0 146550.0 ; - RECT 81300.0 145350.0 80100.0 146550.0 ; - RECT 81300.0 145350.0 80100.0 146550.0 ; - RECT 83700.0 145350.0 82500.0 146550.0 ; - RECT 78900.0 155250.0 77700.0 156450.0 ; - RECT 78900.0 145350.0 77700.0 146550.0 ; - RECT 83100.0 150000.0 81900.0 151200.0 ; - RECT 83100.0 150000.0 81900.0 151200.0 ; - RECT 80550.0 150150.0 79650.0 151050.0 ; - RECT 85500.0 157350.0 75900.0 158250.0 ; - RECT 85500.0 143550.0 75900.0 144450.0 ; - RECT 78900.0 159750.0 77700.0 157800.0 ; - RECT 78900.0 171600.0 77700.0 169650.0 ; - RECT 83700.0 170250.0 82500.0 172050.0 ; - RECT 83700.0 160950.0 82500.0 157350.0 ; - RECT 81000.0 170250.0 80100.0 160950.0 ; - RECT 83700.0 160950.0 82500.0 159750.0 ; - RECT 81300.0 160950.0 80100.0 159750.0 ; - RECT 81300.0 160950.0 80100.0 159750.0 ; - RECT 83700.0 160950.0 82500.0 159750.0 ; - RECT 83700.0 170250.0 82500.0 169050.0 ; - RECT 81300.0 170250.0 80100.0 169050.0 ; - RECT 81300.0 170250.0 80100.0 169050.0 ; - RECT 83700.0 170250.0 82500.0 169050.0 ; - RECT 78900.0 160350.0 77700.0 159150.0 ; - RECT 78900.0 170250.0 77700.0 169050.0 ; - RECT 83100.0 165600.0 81900.0 164400.0 ; - RECT 83100.0 165600.0 81900.0 164400.0 ; - RECT 80550.0 165450.0 79650.0 164550.0 ; - RECT 85500.0 158250.0 75900.0 157350.0 ; - RECT 85500.0 172050.0 75900.0 171150.0 ; - RECT 78900.0 183450.0 77700.0 185400.0 ; - RECT 78900.0 171600.0 77700.0 173550.0 ; - RECT 83700.0 172950.0 82500.0 171150.0 ; - RECT 83700.0 182250.0 82500.0 185850.0 ; - RECT 81000.0 172950.0 80100.0 182250.0 ; - RECT 83700.0 182250.0 82500.0 183450.0 ; - RECT 81300.0 182250.0 80100.0 183450.0 ; - RECT 81300.0 182250.0 80100.0 183450.0 ; - RECT 83700.0 182250.0 82500.0 183450.0 ; - RECT 83700.0 172950.0 82500.0 174150.0 ; - RECT 81300.0 172950.0 80100.0 174150.0 ; - RECT 81300.0 172950.0 80100.0 174150.0 ; - RECT 83700.0 172950.0 82500.0 174150.0 ; - RECT 78900.0 182850.0 77700.0 184050.0 ; - RECT 78900.0 172950.0 77700.0 174150.0 ; - RECT 83100.0 177600.0 81900.0 178800.0 ; - RECT 83100.0 177600.0 81900.0 178800.0 ; - RECT 80550.0 177750.0 79650.0 178650.0 ; - RECT 85500.0 184950.0 75900.0 185850.0 ; - RECT 85500.0 171150.0 75900.0 172050.0 ; - RECT 78900.0 187350.0 77700.0 185400.0 ; - RECT 78900.0 199200.0 77700.0 197250.0 ; - RECT 83700.0 197850.0 82500.0 199650.0 ; - RECT 83700.0 188550.0 82500.0 184950.0 ; - RECT 81000.0 197850.0 80100.0 188550.0 ; - RECT 83700.0 188550.0 82500.0 187350.0 ; - RECT 81300.0 188550.0 80100.0 187350.0 ; - RECT 81300.0 188550.0 80100.0 187350.0 ; - RECT 83700.0 188550.0 82500.0 187350.0 ; - RECT 83700.0 197850.0 82500.0 196650.0 ; - RECT 81300.0 197850.0 80100.0 196650.0 ; - RECT 81300.0 197850.0 80100.0 196650.0 ; - RECT 83700.0 197850.0 82500.0 196650.0 ; - RECT 78900.0 187950.0 77700.0 186750.0 ; - RECT 78900.0 197850.0 77700.0 196650.0 ; - RECT 83100.0 193200.0 81900.0 192000.0 ; - RECT 83100.0 193200.0 81900.0 192000.0 ; - RECT 80550.0 193050.0 79650.0 192150.0 ; - RECT 85500.0 185850.0 75900.0 184950.0 ; - RECT 85500.0 199650.0 75900.0 198750.0 ; - RECT 98100.0 145950.0 96900.0 143550.0 ; - RECT 98100.0 154650.0 96900.0 158250.0 ; - RECT 93300.0 154650.0 92100.0 158250.0 ; - RECT 90900.0 155850.0 89700.0 157800.0 ; - RECT 90900.0 144000.0 89700.0 145950.0 ; - RECT 98100.0 154650.0 96900.0 155850.0 ; - RECT 95700.0 154650.0 94500.0 155850.0 ; - RECT 95700.0 154650.0 94500.0 155850.0 ; - RECT 98100.0 154650.0 96900.0 155850.0 ; - RECT 95700.0 154650.0 94500.0 155850.0 ; - RECT 93300.0 154650.0 92100.0 155850.0 ; - RECT 93300.0 154650.0 92100.0 155850.0 ; - RECT 95700.0 154650.0 94500.0 155850.0 ; - RECT 98100.0 145950.0 96900.0 147150.0 ; - RECT 95700.0 145950.0 94500.0 147150.0 ; - RECT 95700.0 145950.0 94500.0 147150.0 ; - RECT 98100.0 145950.0 96900.0 147150.0 ; - RECT 95700.0 145950.0 94500.0 147150.0 ; - RECT 93300.0 145950.0 92100.0 147150.0 ; - RECT 93300.0 145950.0 92100.0 147150.0 ; - RECT 95700.0 145950.0 94500.0 147150.0 ; - RECT 90900.0 155250.0 89700.0 156450.0 ; - RECT 90900.0 145350.0 89700.0 146550.0 ; - RECT 93300.0 148500.0 94500.0 149700.0 ; - RECT 96300.0 151200.0 97500.0 152400.0 ; - RECT 95700.0 154650.0 94500.0 155850.0 ; - RECT 93300.0 145950.0 92100.0 147150.0 ; - RECT 92100.0 151200.0 93300.0 152400.0 ; - RECT 97500.0 151200.0 96300.0 152400.0 ; - RECT 94500.0 148500.0 93300.0 149700.0 ; - RECT 93300.0 151200.0 92100.0 152400.0 ; - RECT 99900.0 157350.0 85500.0 158250.0 ; - RECT 99900.0 143550.0 85500.0 144450.0 ; - RECT 98100.0 169650.0 96900.0 172050.0 ; - RECT 98100.0 160950.0 96900.0 157350.0 ; - RECT 93300.0 160950.0 92100.0 157350.0 ; - RECT 90900.0 159750.0 89700.0 157800.0 ; - RECT 90900.0 171600.0 89700.0 169650.0 ; - RECT 98100.0 160950.0 96900.0 159750.0 ; - RECT 95700.0 160950.0 94500.0 159750.0 ; - RECT 95700.0 160950.0 94500.0 159750.0 ; - RECT 98100.0 160950.0 96900.0 159750.0 ; - RECT 95700.0 160950.0 94500.0 159750.0 ; - RECT 93300.0 160950.0 92100.0 159750.0 ; - RECT 93300.0 160950.0 92100.0 159750.0 ; - RECT 95700.0 160950.0 94500.0 159750.0 ; - RECT 98100.0 169650.0 96900.0 168450.0 ; - RECT 95700.0 169650.0 94500.0 168450.0 ; - RECT 95700.0 169650.0 94500.0 168450.0 ; - RECT 98100.0 169650.0 96900.0 168450.0 ; - RECT 95700.0 169650.0 94500.0 168450.0 ; - RECT 93300.0 169650.0 92100.0 168450.0 ; - RECT 93300.0 169650.0 92100.0 168450.0 ; - RECT 95700.0 169650.0 94500.0 168450.0 ; - RECT 90900.0 160350.0 89700.0 159150.0 ; - RECT 90900.0 170250.0 89700.0 169050.0 ; - RECT 93300.0 167100.0 94500.0 165900.0 ; - RECT 96300.0 164400.0 97500.0 163200.0 ; - RECT 95700.0 160950.0 94500.0 159750.0 ; - RECT 93300.0 169650.0 92100.0 168450.0 ; - RECT 92100.0 164400.0 93300.0 163200.0 ; - RECT 97500.0 164400.0 96300.0 163200.0 ; - RECT 94500.0 167100.0 93300.0 165900.0 ; - RECT 93300.0 164400.0 92100.0 163200.0 ; - RECT 99900.0 158250.0 85500.0 157350.0 ; - RECT 99900.0 172050.0 85500.0 171150.0 ; - RECT 98100.0 173550.0 96900.0 171150.0 ; - RECT 98100.0 182250.0 96900.0 185850.0 ; - RECT 93300.0 182250.0 92100.0 185850.0 ; - RECT 90900.0 183450.0 89700.0 185400.0 ; - RECT 90900.0 171600.0 89700.0 173550.0 ; - RECT 98100.0 182250.0 96900.0 183450.0 ; - RECT 95700.0 182250.0 94500.0 183450.0 ; - RECT 95700.0 182250.0 94500.0 183450.0 ; - RECT 98100.0 182250.0 96900.0 183450.0 ; - RECT 95700.0 182250.0 94500.0 183450.0 ; - RECT 93300.0 182250.0 92100.0 183450.0 ; - RECT 93300.0 182250.0 92100.0 183450.0 ; - RECT 95700.0 182250.0 94500.0 183450.0 ; - RECT 98100.0 173550.0 96900.0 174750.0 ; - RECT 95700.0 173550.0 94500.0 174750.0 ; - RECT 95700.0 173550.0 94500.0 174750.0 ; - RECT 98100.0 173550.0 96900.0 174750.0 ; - RECT 95700.0 173550.0 94500.0 174750.0 ; - RECT 93300.0 173550.0 92100.0 174750.0 ; - RECT 93300.0 173550.0 92100.0 174750.0 ; - RECT 95700.0 173550.0 94500.0 174750.0 ; - RECT 90900.0 182850.0 89700.0 184050.0 ; - RECT 90900.0 172950.0 89700.0 174150.0 ; - RECT 93300.0 176100.0 94500.0 177300.0 ; - RECT 96300.0 178800.0 97500.0 180000.0 ; - RECT 95700.0 182250.0 94500.0 183450.0 ; - RECT 93300.0 173550.0 92100.0 174750.0 ; - RECT 92100.0 178800.0 93300.0 180000.0 ; - RECT 97500.0 178800.0 96300.0 180000.0 ; - RECT 94500.0 176100.0 93300.0 177300.0 ; - RECT 93300.0 178800.0 92100.0 180000.0 ; - RECT 99900.0 184950.0 85500.0 185850.0 ; - RECT 99900.0 171150.0 85500.0 172050.0 ; - RECT 98100.0 197250.0 96900.0 199650.0 ; - RECT 98100.0 188550.0 96900.0 184950.0 ; - RECT 93300.0 188550.0 92100.0 184950.0 ; - RECT 90900.0 187350.0 89700.0 185400.0 ; - RECT 90900.0 199200.0 89700.0 197250.0 ; - RECT 98100.0 188550.0 96900.0 187350.0 ; - RECT 95700.0 188550.0 94500.0 187350.0 ; - RECT 95700.0 188550.0 94500.0 187350.0 ; - RECT 98100.0 188550.0 96900.0 187350.0 ; - RECT 95700.0 188550.0 94500.0 187350.0 ; - RECT 93300.0 188550.0 92100.0 187350.0 ; - RECT 93300.0 188550.0 92100.0 187350.0 ; - RECT 95700.0 188550.0 94500.0 187350.0 ; - RECT 98100.0 197250.0 96900.0 196050.0 ; - RECT 95700.0 197250.0 94500.0 196050.0 ; - RECT 95700.0 197250.0 94500.0 196050.0 ; - RECT 98100.0 197250.0 96900.0 196050.0 ; - RECT 95700.0 197250.0 94500.0 196050.0 ; - RECT 93300.0 197250.0 92100.0 196050.0 ; - RECT 93300.0 197250.0 92100.0 196050.0 ; - RECT 95700.0 197250.0 94500.0 196050.0 ; - RECT 90900.0 187950.0 89700.0 186750.0 ; - RECT 90900.0 197850.0 89700.0 196650.0 ; - RECT 93300.0 194700.0 94500.0 193500.0 ; - RECT 96300.0 192000.0 97500.0 190800.0 ; - RECT 95700.0 188550.0 94500.0 187350.0 ; - RECT 93300.0 197250.0 92100.0 196050.0 ; - RECT 92100.0 192000.0 93300.0 190800.0 ; - RECT 97500.0 192000.0 96300.0 190800.0 ; - RECT 94500.0 194700.0 93300.0 193500.0 ; - RECT 93300.0 192000.0 92100.0 190800.0 ; - RECT 99900.0 185850.0 85500.0 184950.0 ; - RECT 99900.0 199650.0 85500.0 198750.0 ; - RECT 110850.0 154500.0 112050.0 155700.0 ; - RECT 129450.0 150000.0 130650.0 151200.0 ; - RECT 107850.0 168300.0 109050.0 169500.0 ; - RECT 126450.0 164400.0 127650.0 165600.0 ; - RECT 129450.0 173100.0 130650.0 174300.0 ; - RECT 104850.0 173100.0 106050.0 174300.0 ; - RECT 126450.0 186900.0 127650.0 188100.0 ; - RECT 101850.0 186900.0 103050.0 188100.0 ; - RECT 110850.0 148500.0 112050.0 149700.0 ; - RECT 107850.0 151200.0 109050.0 152400.0 ; - RECT 104850.0 165900.0 106050.0 167100.0 ; - RECT 107850.0 163200.0 109050.0 164400.0 ; - RECT 110850.0 176100.0 112050.0 177300.0 ; - RECT 101850.0 178800.0 103050.0 180000.0 ; - RECT 104850.0 193500.0 106050.0 194700.0 ; - RECT 101850.0 190800.0 103050.0 192000.0 ; - RECT 79650.0 150150.0 75900.0 151050.0 ; - RECT 79650.0 164550.0 75900.0 165450.0 ; - RECT 79650.0 177750.0 75900.0 178650.0 ; - RECT 79650.0 192150.0 75900.0 193050.0 ; - RECT 130500.0 157350.0 75900.0 158250.0 ; - RECT 130500.0 184950.0 75900.0 185850.0 ; - RECT 130500.0 143550.0 75900.0 144450.0 ; - RECT 130500.0 171150.0 75900.0 172050.0 ; - RECT 130500.0 198750.0 75900.0 199650.0 ; - RECT 77700.0 201150.0 78900.0 198750.0 ; - RECT 77700.0 209850.0 78900.0 213450.0 ; - RECT 82500.0 209850.0 83700.0 213450.0 ; - RECT 84900.0 211050.0 86100.0 213000.0 ; - RECT 84900.0 199200.0 86100.0 201150.0 ; - RECT 77700.0 209850.0 78900.0 211050.0 ; - RECT 80100.0 209850.0 81300.0 211050.0 ; - RECT 80100.0 209850.0 81300.0 211050.0 ; - RECT 77700.0 209850.0 78900.0 211050.0 ; - RECT 80100.0 209850.0 81300.0 211050.0 ; - RECT 82500.0 209850.0 83700.0 211050.0 ; - RECT 82500.0 209850.0 83700.0 211050.0 ; - RECT 80100.0 209850.0 81300.0 211050.0 ; - RECT 77700.0 201150.0 78900.0 202350.0 ; - RECT 80100.0 201150.0 81300.0 202350.0 ; - RECT 80100.0 201150.0 81300.0 202350.0 ; - RECT 77700.0 201150.0 78900.0 202350.0 ; - RECT 80100.0 201150.0 81300.0 202350.0 ; - RECT 82500.0 201150.0 83700.0 202350.0 ; - RECT 82500.0 201150.0 83700.0 202350.0 ; - RECT 80100.0 201150.0 81300.0 202350.0 ; - RECT 84900.0 210450.0 86100.0 211650.0 ; - RECT 84900.0 200550.0 86100.0 201750.0 ; - RECT 82500.0 203700.0 81300.0 204900.0 ; - RECT 79500.0 206400.0 78300.0 207600.0 ; - RECT 80100.0 209850.0 81300.0 211050.0 ; - RECT 82500.0 201150.0 83700.0 202350.0 ; - RECT 83700.0 206400.0 82500.0 207600.0 ; - RECT 78300.0 206400.0 79500.0 207600.0 ; - RECT 81300.0 203700.0 82500.0 204900.0 ; - RECT 82500.0 206400.0 83700.0 207600.0 ; - RECT 75900.0 212550.0 90300.0 213450.0 ; - RECT 75900.0 198750.0 90300.0 199650.0 ; - RECT 77700.0 224850.0 78900.0 227250.0 ; - RECT 77700.0 216150.0 78900.0 212550.0 ; - RECT 82500.0 216150.0 83700.0 212550.0 ; - RECT 84900.0 214950.0 86100.0 213000.0 ; - RECT 84900.0 226800.0 86100.0 224850.0 ; - RECT 77700.0 216150.0 78900.0 214950.0 ; - RECT 80100.0 216150.0 81300.0 214950.0 ; - RECT 80100.0 216150.0 81300.0 214950.0 ; - RECT 77700.0 216150.0 78900.0 214950.0 ; - RECT 80100.0 216150.0 81300.0 214950.0 ; - RECT 82500.0 216150.0 83700.0 214950.0 ; - RECT 82500.0 216150.0 83700.0 214950.0 ; - RECT 80100.0 216150.0 81300.0 214950.0 ; - RECT 77700.0 224850.0 78900.0 223650.0 ; - RECT 80100.0 224850.0 81300.0 223650.0 ; - RECT 80100.0 224850.0 81300.0 223650.0 ; - RECT 77700.0 224850.0 78900.0 223650.0 ; - RECT 80100.0 224850.0 81300.0 223650.0 ; - RECT 82500.0 224850.0 83700.0 223650.0 ; - RECT 82500.0 224850.0 83700.0 223650.0 ; - RECT 80100.0 224850.0 81300.0 223650.0 ; - RECT 84900.0 215550.0 86100.0 214350.0 ; - RECT 84900.0 225450.0 86100.0 224250.0 ; - RECT 82500.0 222300.0 81300.0 221100.0 ; - RECT 79500.0 219600.0 78300.0 218400.0 ; - RECT 80100.0 216150.0 81300.0 214950.0 ; - RECT 82500.0 224850.0 83700.0 223650.0 ; - RECT 83700.0 219600.0 82500.0 218400.0 ; - RECT 78300.0 219600.0 79500.0 218400.0 ; - RECT 81300.0 222300.0 82500.0 221100.0 ; - RECT 82500.0 219600.0 83700.0 218400.0 ; - RECT 75900.0 213450.0 90300.0 212550.0 ; - RECT 75900.0 227250.0 90300.0 226350.0 ; - RECT 77700.0 228750.0 78900.0 226350.0 ; - RECT 77700.0 237450.0 78900.0 241050.0 ; - RECT 82500.0 237450.0 83700.0 241050.0 ; - RECT 84900.0 238650.0 86100.0 240600.0 ; - RECT 84900.0 226800.0 86100.0 228750.0 ; - RECT 77700.0 237450.0 78900.0 238650.0 ; - RECT 80100.0 237450.0 81300.0 238650.0 ; - RECT 80100.0 237450.0 81300.0 238650.0 ; - RECT 77700.0 237450.0 78900.0 238650.0 ; - RECT 80100.0 237450.0 81300.0 238650.0 ; - RECT 82500.0 237450.0 83700.0 238650.0 ; - RECT 82500.0 237450.0 83700.0 238650.0 ; - RECT 80100.0 237450.0 81300.0 238650.0 ; - RECT 77700.0 228750.0 78900.0 229950.0 ; - RECT 80100.0 228750.0 81300.0 229950.0 ; - RECT 80100.0 228750.0 81300.0 229950.0 ; - RECT 77700.0 228750.0 78900.0 229950.0 ; - RECT 80100.0 228750.0 81300.0 229950.0 ; - RECT 82500.0 228750.0 83700.0 229950.0 ; - RECT 82500.0 228750.0 83700.0 229950.0 ; - RECT 80100.0 228750.0 81300.0 229950.0 ; - RECT 84900.0 238050.0 86100.0 239250.0 ; - RECT 84900.0 228150.0 86100.0 229350.0 ; - RECT 82500.0 231300.0 81300.0 232500.0 ; - RECT 79500.0 234000.0 78300.0 235200.0 ; - RECT 80100.0 237450.0 81300.0 238650.0 ; - RECT 82500.0 228750.0 83700.0 229950.0 ; - RECT 83700.0 234000.0 82500.0 235200.0 ; - RECT 78300.0 234000.0 79500.0 235200.0 ; - RECT 81300.0 231300.0 82500.0 232500.0 ; - RECT 82500.0 234000.0 83700.0 235200.0 ; - RECT 75900.0 240150.0 90300.0 241050.0 ; - RECT 75900.0 226350.0 90300.0 227250.0 ; - RECT 77700.0 252450.0 78900.0 254850.0 ; - RECT 77700.0 243750.0 78900.0 240150.0 ; - RECT 82500.0 243750.0 83700.0 240150.0 ; - RECT 84900.0 242550.0 86100.0 240600.0 ; - RECT 84900.0 254400.0 86100.0 252450.0 ; - RECT 77700.0 243750.0 78900.0 242550.0 ; - RECT 80100.0 243750.0 81300.0 242550.0 ; - RECT 80100.0 243750.0 81300.0 242550.0 ; - RECT 77700.0 243750.0 78900.0 242550.0 ; - RECT 80100.0 243750.0 81300.0 242550.0 ; - RECT 82500.0 243750.0 83700.0 242550.0 ; - RECT 82500.0 243750.0 83700.0 242550.0 ; - RECT 80100.0 243750.0 81300.0 242550.0 ; - RECT 77700.0 252450.0 78900.0 251250.0 ; - RECT 80100.0 252450.0 81300.0 251250.0 ; - RECT 80100.0 252450.0 81300.0 251250.0 ; - RECT 77700.0 252450.0 78900.0 251250.0 ; - RECT 80100.0 252450.0 81300.0 251250.0 ; - RECT 82500.0 252450.0 83700.0 251250.0 ; - RECT 82500.0 252450.0 83700.0 251250.0 ; - RECT 80100.0 252450.0 81300.0 251250.0 ; - RECT 84900.0 243150.0 86100.0 241950.0 ; - RECT 84900.0 253050.0 86100.0 251850.0 ; - RECT 82500.0 249900.0 81300.0 248700.0 ; - RECT 79500.0 247200.0 78300.0 246000.0 ; - RECT 80100.0 243750.0 81300.0 242550.0 ; - RECT 82500.0 252450.0 83700.0 251250.0 ; - RECT 83700.0 247200.0 82500.0 246000.0 ; - RECT 78300.0 247200.0 79500.0 246000.0 ; - RECT 81300.0 249900.0 82500.0 248700.0 ; - RECT 82500.0 247200.0 83700.0 246000.0 ; - RECT 75900.0 241050.0 90300.0 240150.0 ; - RECT 75900.0 254850.0 90300.0 253950.0 ; - RECT 77700.0 256350.0 78900.0 253950.0 ; - RECT 77700.0 265050.0 78900.0 268650.0 ; - RECT 82500.0 265050.0 83700.0 268650.0 ; - RECT 84900.0 266250.0 86100.0 268200.0 ; - RECT 84900.0 254400.0 86100.0 256350.0 ; - RECT 77700.0 265050.0 78900.0 266250.0 ; - RECT 80100.0 265050.0 81300.0 266250.0 ; - RECT 80100.0 265050.0 81300.0 266250.0 ; - RECT 77700.0 265050.0 78900.0 266250.0 ; - RECT 80100.0 265050.0 81300.0 266250.0 ; - RECT 82500.0 265050.0 83700.0 266250.0 ; - RECT 82500.0 265050.0 83700.0 266250.0 ; - RECT 80100.0 265050.0 81300.0 266250.0 ; - RECT 77700.0 256350.0 78900.0 257550.0 ; - RECT 80100.0 256350.0 81300.0 257550.0 ; - RECT 80100.0 256350.0 81300.0 257550.0 ; - RECT 77700.0 256350.0 78900.0 257550.0 ; - RECT 80100.0 256350.0 81300.0 257550.0 ; - RECT 82500.0 256350.0 83700.0 257550.0 ; - RECT 82500.0 256350.0 83700.0 257550.0 ; - RECT 80100.0 256350.0 81300.0 257550.0 ; - RECT 84900.0 265650.0 86100.0 266850.0 ; - RECT 84900.0 255750.0 86100.0 256950.0 ; - RECT 82500.0 258900.0 81300.0 260100.0 ; - RECT 79500.0 261600.0 78300.0 262800.0 ; - RECT 80100.0 265050.0 81300.0 266250.0 ; - RECT 82500.0 256350.0 83700.0 257550.0 ; - RECT 83700.0 261600.0 82500.0 262800.0 ; - RECT 78300.0 261600.0 79500.0 262800.0 ; - RECT 81300.0 258900.0 82500.0 260100.0 ; - RECT 82500.0 261600.0 83700.0 262800.0 ; - RECT 75900.0 267750.0 90300.0 268650.0 ; - RECT 75900.0 253950.0 90300.0 254850.0 ; - RECT 77700.0 280050.0 78900.0 282450.0 ; - RECT 77700.0 271350.0 78900.0 267750.0 ; - RECT 82500.0 271350.0 83700.0 267750.0 ; - RECT 84900.0 270150.0 86100.0 268200.0 ; - RECT 84900.0 282000.0 86100.0 280050.0 ; - RECT 77700.0 271350.0 78900.0 270150.0 ; - RECT 80100.0 271350.0 81300.0 270150.0 ; - RECT 80100.0 271350.0 81300.0 270150.0 ; - RECT 77700.0 271350.0 78900.0 270150.0 ; - RECT 80100.0 271350.0 81300.0 270150.0 ; - RECT 82500.0 271350.0 83700.0 270150.0 ; - RECT 82500.0 271350.0 83700.0 270150.0 ; - RECT 80100.0 271350.0 81300.0 270150.0 ; - RECT 77700.0 280050.0 78900.0 278850.0 ; - RECT 80100.0 280050.0 81300.0 278850.0 ; - RECT 80100.0 280050.0 81300.0 278850.0 ; - RECT 77700.0 280050.0 78900.0 278850.0 ; - RECT 80100.0 280050.0 81300.0 278850.0 ; - RECT 82500.0 280050.0 83700.0 278850.0 ; - RECT 82500.0 280050.0 83700.0 278850.0 ; - RECT 80100.0 280050.0 81300.0 278850.0 ; - RECT 84900.0 270750.0 86100.0 269550.0 ; - RECT 84900.0 280650.0 86100.0 279450.0 ; - RECT 82500.0 277500.0 81300.0 276300.0 ; - RECT 79500.0 274800.0 78300.0 273600.0 ; - RECT 80100.0 271350.0 81300.0 270150.0 ; - RECT 82500.0 280050.0 83700.0 278850.0 ; - RECT 83700.0 274800.0 82500.0 273600.0 ; - RECT 78300.0 274800.0 79500.0 273600.0 ; - RECT 81300.0 277500.0 82500.0 276300.0 ; - RECT 82500.0 274800.0 83700.0 273600.0 ; - RECT 75900.0 268650.0 90300.0 267750.0 ; - RECT 75900.0 282450.0 90300.0 281550.0 ; - RECT 77700.0 283950.0 78900.0 281550.0 ; - RECT 77700.0 292650.0 78900.0 296250.0 ; - RECT 82500.0 292650.0 83700.0 296250.0 ; - RECT 84900.0 293850.0 86100.0 295800.0 ; - RECT 84900.0 282000.0 86100.0 283950.0 ; - RECT 77700.0 292650.0 78900.0 293850.0 ; - RECT 80100.0 292650.0 81300.0 293850.0 ; - RECT 80100.0 292650.0 81300.0 293850.0 ; - RECT 77700.0 292650.0 78900.0 293850.0 ; - RECT 80100.0 292650.0 81300.0 293850.0 ; - RECT 82500.0 292650.0 83700.0 293850.0 ; - RECT 82500.0 292650.0 83700.0 293850.0 ; - RECT 80100.0 292650.0 81300.0 293850.0 ; - RECT 77700.0 283950.0 78900.0 285150.0 ; - RECT 80100.0 283950.0 81300.0 285150.0 ; - RECT 80100.0 283950.0 81300.0 285150.0 ; - RECT 77700.0 283950.0 78900.0 285150.0 ; - RECT 80100.0 283950.0 81300.0 285150.0 ; - RECT 82500.0 283950.0 83700.0 285150.0 ; - RECT 82500.0 283950.0 83700.0 285150.0 ; - RECT 80100.0 283950.0 81300.0 285150.0 ; - RECT 84900.0 293250.0 86100.0 294450.0 ; - RECT 84900.0 283350.0 86100.0 284550.0 ; - RECT 82500.0 286500.0 81300.0 287700.0 ; - RECT 79500.0 289200.0 78300.0 290400.0 ; - RECT 80100.0 292650.0 81300.0 293850.0 ; - RECT 82500.0 283950.0 83700.0 285150.0 ; - RECT 83700.0 289200.0 82500.0 290400.0 ; - RECT 78300.0 289200.0 79500.0 290400.0 ; - RECT 81300.0 286500.0 82500.0 287700.0 ; - RECT 82500.0 289200.0 83700.0 290400.0 ; - RECT 75900.0 295350.0 90300.0 296250.0 ; - RECT 75900.0 281550.0 90300.0 282450.0 ; - RECT 77700.0 307650.0 78900.0 310050.0 ; - RECT 77700.0 298950.0 78900.0 295350.0 ; - RECT 82500.0 298950.0 83700.0 295350.0 ; - RECT 84900.0 297750.0 86100.0 295800.0 ; - RECT 84900.0 309600.0 86100.0 307650.0 ; - RECT 77700.0 298950.0 78900.0 297750.0 ; - RECT 80100.0 298950.0 81300.0 297750.0 ; - RECT 80100.0 298950.0 81300.0 297750.0 ; - RECT 77700.0 298950.0 78900.0 297750.0 ; - RECT 80100.0 298950.0 81300.0 297750.0 ; - RECT 82500.0 298950.0 83700.0 297750.0 ; - RECT 82500.0 298950.0 83700.0 297750.0 ; - RECT 80100.0 298950.0 81300.0 297750.0 ; - RECT 77700.0 307650.0 78900.0 306450.0 ; - RECT 80100.0 307650.0 81300.0 306450.0 ; - RECT 80100.0 307650.0 81300.0 306450.0 ; - RECT 77700.0 307650.0 78900.0 306450.0 ; - RECT 80100.0 307650.0 81300.0 306450.0 ; - RECT 82500.0 307650.0 83700.0 306450.0 ; - RECT 82500.0 307650.0 83700.0 306450.0 ; - RECT 80100.0 307650.0 81300.0 306450.0 ; - RECT 84900.0 298350.0 86100.0 297150.0 ; - RECT 84900.0 308250.0 86100.0 307050.0 ; - RECT 82500.0 305100.0 81300.0 303900.0 ; - RECT 79500.0 302400.0 78300.0 301200.0 ; - RECT 80100.0 298950.0 81300.0 297750.0 ; - RECT 82500.0 307650.0 83700.0 306450.0 ; - RECT 83700.0 302400.0 82500.0 301200.0 ; - RECT 78300.0 302400.0 79500.0 301200.0 ; - RECT 81300.0 305100.0 82500.0 303900.0 ; - RECT 82500.0 302400.0 83700.0 301200.0 ; - RECT 75900.0 296250.0 90300.0 295350.0 ; - RECT 75900.0 310050.0 90300.0 309150.0 ; - RECT 77700.0 311550.0 78900.0 309150.0 ; - RECT 77700.0 320250.0 78900.0 323850.0 ; - RECT 82500.0 320250.0 83700.0 323850.0 ; - RECT 84900.0 321450.0 86100.0 323400.0 ; - RECT 84900.0 309600.0 86100.0 311550.0 ; - RECT 77700.0 320250.0 78900.0 321450.0 ; - RECT 80100.0 320250.0 81300.0 321450.0 ; - RECT 80100.0 320250.0 81300.0 321450.0 ; - RECT 77700.0 320250.0 78900.0 321450.0 ; - RECT 80100.0 320250.0 81300.0 321450.0 ; - RECT 82500.0 320250.0 83700.0 321450.0 ; - RECT 82500.0 320250.0 83700.0 321450.0 ; - RECT 80100.0 320250.0 81300.0 321450.0 ; - RECT 77700.0 311550.0 78900.0 312750.0 ; - RECT 80100.0 311550.0 81300.0 312750.0 ; - RECT 80100.0 311550.0 81300.0 312750.0 ; - RECT 77700.0 311550.0 78900.0 312750.0 ; - RECT 80100.0 311550.0 81300.0 312750.0 ; - RECT 82500.0 311550.0 83700.0 312750.0 ; - RECT 82500.0 311550.0 83700.0 312750.0 ; - RECT 80100.0 311550.0 81300.0 312750.0 ; - RECT 84900.0 320850.0 86100.0 322050.0 ; - RECT 84900.0 310950.0 86100.0 312150.0 ; - RECT 82500.0 314100.0 81300.0 315300.0 ; - RECT 79500.0 316800.0 78300.0 318000.0 ; - RECT 80100.0 320250.0 81300.0 321450.0 ; - RECT 82500.0 311550.0 83700.0 312750.0 ; - RECT 83700.0 316800.0 82500.0 318000.0 ; - RECT 78300.0 316800.0 79500.0 318000.0 ; - RECT 81300.0 314100.0 82500.0 315300.0 ; - RECT 82500.0 316800.0 83700.0 318000.0 ; - RECT 75900.0 322950.0 90300.0 323850.0 ; - RECT 75900.0 309150.0 90300.0 310050.0 ; - RECT 77700.0 335250.0 78900.0 337650.0 ; - RECT 77700.0 326550.0 78900.0 322950.0 ; - RECT 82500.0 326550.0 83700.0 322950.0 ; - RECT 84900.0 325350.0 86100.0 323400.0 ; - RECT 84900.0 337200.0 86100.0 335250.0 ; - RECT 77700.0 326550.0 78900.0 325350.0 ; - RECT 80100.0 326550.0 81300.0 325350.0 ; - RECT 80100.0 326550.0 81300.0 325350.0 ; - RECT 77700.0 326550.0 78900.0 325350.0 ; - RECT 80100.0 326550.0 81300.0 325350.0 ; - RECT 82500.0 326550.0 83700.0 325350.0 ; - RECT 82500.0 326550.0 83700.0 325350.0 ; - RECT 80100.0 326550.0 81300.0 325350.0 ; - RECT 77700.0 335250.0 78900.0 334050.0 ; - RECT 80100.0 335250.0 81300.0 334050.0 ; - RECT 80100.0 335250.0 81300.0 334050.0 ; - RECT 77700.0 335250.0 78900.0 334050.0 ; - RECT 80100.0 335250.0 81300.0 334050.0 ; - RECT 82500.0 335250.0 83700.0 334050.0 ; - RECT 82500.0 335250.0 83700.0 334050.0 ; - RECT 80100.0 335250.0 81300.0 334050.0 ; - RECT 84900.0 325950.0 86100.0 324750.0 ; - RECT 84900.0 335850.0 86100.0 334650.0 ; - RECT 82500.0 332700.0 81300.0 331500.0 ; - RECT 79500.0 330000.0 78300.0 328800.0 ; - RECT 80100.0 326550.0 81300.0 325350.0 ; - RECT 82500.0 335250.0 83700.0 334050.0 ; - RECT 83700.0 330000.0 82500.0 328800.0 ; - RECT 78300.0 330000.0 79500.0 328800.0 ; - RECT 81300.0 332700.0 82500.0 331500.0 ; - RECT 82500.0 330000.0 83700.0 328800.0 ; - RECT 75900.0 323850.0 90300.0 322950.0 ; - RECT 75900.0 337650.0 90300.0 336750.0 ; - RECT 77700.0 339150.0 78900.0 336750.0 ; - RECT 77700.0 347850.0 78900.0 351450.0 ; - RECT 82500.0 347850.0 83700.0 351450.0 ; - RECT 84900.0 349050.0 86100.0 351000.0 ; - RECT 84900.0 337200.0 86100.0 339150.0 ; - RECT 77700.0 347850.0 78900.0 349050.0 ; - RECT 80100.0 347850.0 81300.0 349050.0 ; - RECT 80100.0 347850.0 81300.0 349050.0 ; - RECT 77700.0 347850.0 78900.0 349050.0 ; - RECT 80100.0 347850.0 81300.0 349050.0 ; - RECT 82500.0 347850.0 83700.0 349050.0 ; - RECT 82500.0 347850.0 83700.0 349050.0 ; - RECT 80100.0 347850.0 81300.0 349050.0 ; - RECT 77700.0 339150.0 78900.0 340350.0 ; - RECT 80100.0 339150.0 81300.0 340350.0 ; - RECT 80100.0 339150.0 81300.0 340350.0 ; - RECT 77700.0 339150.0 78900.0 340350.0 ; - RECT 80100.0 339150.0 81300.0 340350.0 ; - RECT 82500.0 339150.0 83700.0 340350.0 ; - RECT 82500.0 339150.0 83700.0 340350.0 ; - RECT 80100.0 339150.0 81300.0 340350.0 ; - RECT 84900.0 348450.0 86100.0 349650.0 ; - RECT 84900.0 338550.0 86100.0 339750.0 ; - RECT 82500.0 341700.0 81300.0 342900.0 ; - RECT 79500.0 344400.0 78300.0 345600.0 ; - RECT 80100.0 347850.0 81300.0 349050.0 ; - RECT 82500.0 339150.0 83700.0 340350.0 ; - RECT 83700.0 344400.0 82500.0 345600.0 ; - RECT 78300.0 344400.0 79500.0 345600.0 ; - RECT 81300.0 341700.0 82500.0 342900.0 ; - RECT 82500.0 344400.0 83700.0 345600.0 ; - RECT 75900.0 350550.0 90300.0 351450.0 ; - RECT 75900.0 336750.0 90300.0 337650.0 ; - RECT 77700.0 362850.0 78900.0 365250.0 ; - RECT 77700.0 354150.0 78900.0 350550.0 ; - RECT 82500.0 354150.0 83700.0 350550.0 ; - RECT 84900.0 352950.0 86100.0 351000.0 ; - RECT 84900.0 364800.0 86100.0 362850.0 ; - RECT 77700.0 354150.0 78900.0 352950.0 ; - RECT 80100.0 354150.0 81300.0 352950.0 ; - RECT 80100.0 354150.0 81300.0 352950.0 ; - RECT 77700.0 354150.0 78900.0 352950.0 ; - RECT 80100.0 354150.0 81300.0 352950.0 ; - RECT 82500.0 354150.0 83700.0 352950.0 ; - RECT 82500.0 354150.0 83700.0 352950.0 ; - RECT 80100.0 354150.0 81300.0 352950.0 ; - RECT 77700.0 362850.0 78900.0 361650.0 ; - RECT 80100.0 362850.0 81300.0 361650.0 ; - RECT 80100.0 362850.0 81300.0 361650.0 ; - RECT 77700.0 362850.0 78900.0 361650.0 ; - RECT 80100.0 362850.0 81300.0 361650.0 ; - RECT 82500.0 362850.0 83700.0 361650.0 ; - RECT 82500.0 362850.0 83700.0 361650.0 ; - RECT 80100.0 362850.0 81300.0 361650.0 ; - RECT 84900.0 353550.0 86100.0 352350.0 ; - RECT 84900.0 363450.0 86100.0 362250.0 ; - RECT 82500.0 360300.0 81300.0 359100.0 ; - RECT 79500.0 357600.0 78300.0 356400.0 ; - RECT 80100.0 354150.0 81300.0 352950.0 ; - RECT 82500.0 362850.0 83700.0 361650.0 ; - RECT 83700.0 357600.0 82500.0 356400.0 ; - RECT 78300.0 357600.0 79500.0 356400.0 ; - RECT 81300.0 360300.0 82500.0 359100.0 ; - RECT 82500.0 357600.0 83700.0 356400.0 ; - RECT 75900.0 351450.0 90300.0 350550.0 ; - RECT 75900.0 365250.0 90300.0 364350.0 ; - RECT 77700.0 366750.0 78900.0 364350.0 ; - RECT 77700.0 375450.0 78900.0 379050.0 ; - RECT 82500.0 375450.0 83700.0 379050.0 ; - RECT 84900.0 376650.0 86100.0 378600.0 ; - RECT 84900.0 364800.0 86100.0 366750.0 ; - RECT 77700.0 375450.0 78900.0 376650.0 ; - RECT 80100.0 375450.0 81300.0 376650.0 ; - RECT 80100.0 375450.0 81300.0 376650.0 ; - RECT 77700.0 375450.0 78900.0 376650.0 ; - RECT 80100.0 375450.0 81300.0 376650.0 ; - RECT 82500.0 375450.0 83700.0 376650.0 ; - RECT 82500.0 375450.0 83700.0 376650.0 ; - RECT 80100.0 375450.0 81300.0 376650.0 ; - RECT 77700.0 366750.0 78900.0 367950.0 ; - RECT 80100.0 366750.0 81300.0 367950.0 ; - RECT 80100.0 366750.0 81300.0 367950.0 ; - RECT 77700.0 366750.0 78900.0 367950.0 ; - RECT 80100.0 366750.0 81300.0 367950.0 ; - RECT 82500.0 366750.0 83700.0 367950.0 ; - RECT 82500.0 366750.0 83700.0 367950.0 ; - RECT 80100.0 366750.0 81300.0 367950.0 ; - RECT 84900.0 376050.0 86100.0 377250.0 ; - RECT 84900.0 366150.0 86100.0 367350.0 ; - RECT 82500.0 369300.0 81300.0 370500.0 ; - RECT 79500.0 372000.0 78300.0 373200.0 ; - RECT 80100.0 375450.0 81300.0 376650.0 ; - RECT 82500.0 366750.0 83700.0 367950.0 ; - RECT 83700.0 372000.0 82500.0 373200.0 ; - RECT 78300.0 372000.0 79500.0 373200.0 ; - RECT 81300.0 369300.0 82500.0 370500.0 ; - RECT 82500.0 372000.0 83700.0 373200.0 ; - RECT 75900.0 378150.0 90300.0 379050.0 ; - RECT 75900.0 364350.0 90300.0 365250.0 ; - RECT 77700.0 390450.0 78900.0 392850.0 ; - RECT 77700.0 381750.0 78900.0 378150.0 ; - RECT 82500.0 381750.0 83700.0 378150.0 ; - RECT 84900.0 380550.0 86100.0 378600.0 ; - RECT 84900.0 392400.0 86100.0 390450.0 ; - RECT 77700.0 381750.0 78900.0 380550.0 ; - RECT 80100.0 381750.0 81300.0 380550.0 ; - RECT 80100.0 381750.0 81300.0 380550.0 ; - RECT 77700.0 381750.0 78900.0 380550.0 ; - RECT 80100.0 381750.0 81300.0 380550.0 ; - RECT 82500.0 381750.0 83700.0 380550.0 ; - RECT 82500.0 381750.0 83700.0 380550.0 ; - RECT 80100.0 381750.0 81300.0 380550.0 ; - RECT 77700.0 390450.0 78900.0 389250.0 ; - RECT 80100.0 390450.0 81300.0 389250.0 ; - RECT 80100.0 390450.0 81300.0 389250.0 ; - RECT 77700.0 390450.0 78900.0 389250.0 ; - RECT 80100.0 390450.0 81300.0 389250.0 ; - RECT 82500.0 390450.0 83700.0 389250.0 ; - RECT 82500.0 390450.0 83700.0 389250.0 ; - RECT 80100.0 390450.0 81300.0 389250.0 ; - RECT 84900.0 381150.0 86100.0 379950.0 ; - RECT 84900.0 391050.0 86100.0 389850.0 ; - RECT 82500.0 387900.0 81300.0 386700.0 ; - RECT 79500.0 385200.0 78300.0 384000.0 ; - RECT 80100.0 381750.0 81300.0 380550.0 ; - RECT 82500.0 390450.0 83700.0 389250.0 ; - RECT 83700.0 385200.0 82500.0 384000.0 ; - RECT 78300.0 385200.0 79500.0 384000.0 ; - RECT 81300.0 387900.0 82500.0 386700.0 ; - RECT 82500.0 385200.0 83700.0 384000.0 ; - RECT 75900.0 379050.0 90300.0 378150.0 ; - RECT 75900.0 392850.0 90300.0 391950.0 ; - RECT 77700.0 394350.0 78900.0 391950.0 ; - RECT 77700.0 403050.0 78900.0 406650.0 ; - RECT 82500.0 403050.0 83700.0 406650.0 ; - RECT 84900.0 404250.0 86100.0 406200.0 ; - RECT 84900.0 392400.0 86100.0 394350.0 ; - RECT 77700.0 403050.0 78900.0 404250.0 ; - RECT 80100.0 403050.0 81300.0 404250.0 ; - RECT 80100.0 403050.0 81300.0 404250.0 ; - RECT 77700.0 403050.0 78900.0 404250.0 ; - RECT 80100.0 403050.0 81300.0 404250.0 ; - RECT 82500.0 403050.0 83700.0 404250.0 ; - RECT 82500.0 403050.0 83700.0 404250.0 ; - RECT 80100.0 403050.0 81300.0 404250.0 ; - RECT 77700.0 394350.0 78900.0 395550.0 ; - RECT 80100.0 394350.0 81300.0 395550.0 ; - RECT 80100.0 394350.0 81300.0 395550.0 ; - RECT 77700.0 394350.0 78900.0 395550.0 ; - RECT 80100.0 394350.0 81300.0 395550.0 ; - RECT 82500.0 394350.0 83700.0 395550.0 ; - RECT 82500.0 394350.0 83700.0 395550.0 ; - RECT 80100.0 394350.0 81300.0 395550.0 ; - RECT 84900.0 403650.0 86100.0 404850.0 ; - RECT 84900.0 393750.0 86100.0 394950.0 ; - RECT 82500.0 396900.0 81300.0 398100.0 ; - RECT 79500.0 399600.0 78300.0 400800.0 ; - RECT 80100.0 403050.0 81300.0 404250.0 ; - RECT 82500.0 394350.0 83700.0 395550.0 ; - RECT 83700.0 399600.0 82500.0 400800.0 ; - RECT 78300.0 399600.0 79500.0 400800.0 ; - RECT 81300.0 396900.0 82500.0 398100.0 ; - RECT 82500.0 399600.0 83700.0 400800.0 ; - RECT 75900.0 405750.0 90300.0 406650.0 ; - RECT 75900.0 391950.0 90300.0 392850.0 ; - RECT 77700.0 418050.0 78900.0 420450.0 ; - RECT 77700.0 409350.0 78900.0 405750.0 ; - RECT 82500.0 409350.0 83700.0 405750.0 ; - RECT 84900.0 408150.0 86100.0 406200.0 ; - RECT 84900.0 420000.0 86100.0 418050.0 ; - RECT 77700.0 409350.0 78900.0 408150.0 ; - RECT 80100.0 409350.0 81300.0 408150.0 ; - RECT 80100.0 409350.0 81300.0 408150.0 ; - RECT 77700.0 409350.0 78900.0 408150.0 ; - RECT 80100.0 409350.0 81300.0 408150.0 ; - RECT 82500.0 409350.0 83700.0 408150.0 ; - RECT 82500.0 409350.0 83700.0 408150.0 ; - RECT 80100.0 409350.0 81300.0 408150.0 ; - RECT 77700.0 418050.0 78900.0 416850.0 ; - RECT 80100.0 418050.0 81300.0 416850.0 ; - RECT 80100.0 418050.0 81300.0 416850.0 ; - RECT 77700.0 418050.0 78900.0 416850.0 ; - RECT 80100.0 418050.0 81300.0 416850.0 ; - RECT 82500.0 418050.0 83700.0 416850.0 ; - RECT 82500.0 418050.0 83700.0 416850.0 ; - RECT 80100.0 418050.0 81300.0 416850.0 ; - RECT 84900.0 408750.0 86100.0 407550.0 ; - RECT 84900.0 418650.0 86100.0 417450.0 ; - RECT 82500.0 415500.0 81300.0 414300.0 ; - RECT 79500.0 412800.0 78300.0 411600.0 ; - RECT 80100.0 409350.0 81300.0 408150.0 ; - RECT 82500.0 418050.0 83700.0 416850.0 ; - RECT 83700.0 412800.0 82500.0 411600.0 ; - RECT 78300.0 412800.0 79500.0 411600.0 ; - RECT 81300.0 415500.0 82500.0 414300.0 ; - RECT 82500.0 412800.0 83700.0 411600.0 ; - RECT 75900.0 406650.0 90300.0 405750.0 ; - RECT 75900.0 420450.0 90300.0 419550.0 ; - RECT 96900.0 211050.0 98100.0 213000.0 ; - RECT 96900.0 199200.0 98100.0 201150.0 ; - RECT 92100.0 200550.0 93300.0 198750.0 ; - RECT 92100.0 209850.0 93300.0 213450.0 ; - RECT 94800.0 200550.0 95700.0 209850.0 ; - RECT 92100.0 209850.0 93300.0 211050.0 ; - RECT 94500.0 209850.0 95700.0 211050.0 ; - RECT 94500.0 209850.0 95700.0 211050.0 ; - RECT 92100.0 209850.0 93300.0 211050.0 ; - RECT 92100.0 200550.0 93300.0 201750.0 ; - RECT 94500.0 200550.0 95700.0 201750.0 ; - RECT 94500.0 200550.0 95700.0 201750.0 ; - RECT 92100.0 200550.0 93300.0 201750.0 ; - RECT 96900.0 210450.0 98100.0 211650.0 ; - RECT 96900.0 200550.0 98100.0 201750.0 ; - RECT 92700.0 205200.0 93900.0 206400.0 ; - RECT 92700.0 205200.0 93900.0 206400.0 ; - RECT 95250.0 205350.0 96150.0 206250.0 ; - RECT 90300.0 212550.0 99900.0 213450.0 ; - RECT 90300.0 198750.0 99900.0 199650.0 ; - RECT 96900.0 214950.0 98100.0 213000.0 ; - RECT 96900.0 226800.0 98100.0 224850.0 ; - RECT 92100.0 225450.0 93300.0 227250.0 ; - RECT 92100.0 216150.0 93300.0 212550.0 ; - RECT 94800.0 225450.0 95700.0 216150.0 ; - RECT 92100.0 216150.0 93300.0 214950.0 ; - RECT 94500.0 216150.0 95700.0 214950.0 ; - RECT 94500.0 216150.0 95700.0 214950.0 ; - RECT 92100.0 216150.0 93300.0 214950.0 ; - RECT 92100.0 225450.0 93300.0 224250.0 ; - RECT 94500.0 225450.0 95700.0 224250.0 ; - RECT 94500.0 225450.0 95700.0 224250.0 ; - RECT 92100.0 225450.0 93300.0 224250.0 ; - RECT 96900.0 215550.0 98100.0 214350.0 ; - RECT 96900.0 225450.0 98100.0 224250.0 ; - RECT 92700.0 220800.0 93900.0 219600.0 ; - RECT 92700.0 220800.0 93900.0 219600.0 ; - RECT 95250.0 220650.0 96150.0 219750.0 ; - RECT 90300.0 213450.0 99900.0 212550.0 ; - RECT 90300.0 227250.0 99900.0 226350.0 ; - RECT 96900.0 238650.0 98100.0 240600.0 ; - RECT 96900.0 226800.0 98100.0 228750.0 ; - RECT 92100.0 228150.0 93300.0 226350.0 ; - RECT 92100.0 237450.0 93300.0 241050.0 ; - RECT 94800.0 228150.0 95700.0 237450.0 ; - RECT 92100.0 237450.0 93300.0 238650.0 ; - RECT 94500.0 237450.0 95700.0 238650.0 ; - RECT 94500.0 237450.0 95700.0 238650.0 ; - RECT 92100.0 237450.0 93300.0 238650.0 ; - RECT 92100.0 228150.0 93300.0 229350.0 ; - RECT 94500.0 228150.0 95700.0 229350.0 ; - RECT 94500.0 228150.0 95700.0 229350.0 ; - RECT 92100.0 228150.0 93300.0 229350.0 ; - RECT 96900.0 238050.0 98100.0 239250.0 ; - RECT 96900.0 228150.0 98100.0 229350.0 ; - RECT 92700.0 232800.0 93900.0 234000.0 ; - RECT 92700.0 232800.0 93900.0 234000.0 ; - RECT 95250.0 232950.0 96150.0 233850.0 ; - RECT 90300.0 240150.0 99900.0 241050.0 ; - RECT 90300.0 226350.0 99900.0 227250.0 ; - RECT 96900.0 242550.0 98100.0 240600.0 ; - RECT 96900.0 254400.0 98100.0 252450.0 ; - RECT 92100.0 253050.0 93300.0 254850.0 ; - RECT 92100.0 243750.0 93300.0 240150.0 ; - RECT 94800.0 253050.0 95700.0 243750.0 ; - RECT 92100.0 243750.0 93300.0 242550.0 ; - RECT 94500.0 243750.0 95700.0 242550.0 ; - RECT 94500.0 243750.0 95700.0 242550.0 ; - RECT 92100.0 243750.0 93300.0 242550.0 ; - RECT 92100.0 253050.0 93300.0 251850.0 ; - RECT 94500.0 253050.0 95700.0 251850.0 ; - RECT 94500.0 253050.0 95700.0 251850.0 ; - RECT 92100.0 253050.0 93300.0 251850.0 ; - RECT 96900.0 243150.0 98100.0 241950.0 ; - RECT 96900.0 253050.0 98100.0 251850.0 ; - RECT 92700.0 248400.0 93900.0 247200.0 ; - RECT 92700.0 248400.0 93900.0 247200.0 ; - RECT 95250.0 248250.0 96150.0 247350.0 ; - RECT 90300.0 241050.0 99900.0 240150.0 ; - RECT 90300.0 254850.0 99900.0 253950.0 ; - RECT 96900.0 266250.0 98100.0 268200.0 ; - RECT 96900.0 254400.0 98100.0 256350.0 ; - RECT 92100.0 255750.0 93300.0 253950.0 ; - RECT 92100.0 265050.0 93300.0 268650.0 ; - RECT 94800.0 255750.0 95700.0 265050.0 ; - RECT 92100.0 265050.0 93300.0 266250.0 ; - RECT 94500.0 265050.0 95700.0 266250.0 ; - RECT 94500.0 265050.0 95700.0 266250.0 ; - RECT 92100.0 265050.0 93300.0 266250.0 ; - RECT 92100.0 255750.0 93300.0 256950.0 ; - RECT 94500.0 255750.0 95700.0 256950.0 ; - RECT 94500.0 255750.0 95700.0 256950.0 ; - RECT 92100.0 255750.0 93300.0 256950.0 ; - RECT 96900.0 265650.0 98100.0 266850.0 ; - RECT 96900.0 255750.0 98100.0 256950.0 ; - RECT 92700.0 260400.0 93900.0 261600.0 ; - RECT 92700.0 260400.0 93900.0 261600.0 ; - RECT 95250.0 260550.0 96150.0 261450.0 ; - RECT 90300.0 267750.0 99900.0 268650.0 ; - RECT 90300.0 253950.0 99900.0 254850.0 ; - RECT 96900.0 270150.0 98100.0 268200.0 ; - RECT 96900.0 282000.0 98100.0 280050.0 ; - RECT 92100.0 280650.0 93300.0 282450.0 ; - RECT 92100.0 271350.0 93300.0 267750.0 ; - RECT 94800.0 280650.0 95700.0 271350.0 ; - RECT 92100.0 271350.0 93300.0 270150.0 ; - RECT 94500.0 271350.0 95700.0 270150.0 ; - RECT 94500.0 271350.0 95700.0 270150.0 ; - RECT 92100.0 271350.0 93300.0 270150.0 ; - RECT 92100.0 280650.0 93300.0 279450.0 ; - RECT 94500.0 280650.0 95700.0 279450.0 ; - RECT 94500.0 280650.0 95700.0 279450.0 ; - RECT 92100.0 280650.0 93300.0 279450.0 ; - RECT 96900.0 270750.0 98100.0 269550.0 ; - RECT 96900.0 280650.0 98100.0 279450.0 ; - RECT 92700.0 276000.0 93900.0 274800.0 ; - RECT 92700.0 276000.0 93900.0 274800.0 ; - RECT 95250.0 275850.0 96150.0 274950.0 ; - RECT 90300.0 268650.0 99900.0 267750.0 ; - RECT 90300.0 282450.0 99900.0 281550.0 ; - RECT 96900.0 293850.0 98100.0 295800.0 ; - RECT 96900.0 282000.0 98100.0 283950.0 ; - RECT 92100.0 283350.0 93300.0 281550.0 ; - RECT 92100.0 292650.0 93300.0 296250.0 ; - RECT 94800.0 283350.0 95700.0 292650.0 ; - RECT 92100.0 292650.0 93300.0 293850.0 ; - RECT 94500.0 292650.0 95700.0 293850.0 ; - RECT 94500.0 292650.0 95700.0 293850.0 ; - RECT 92100.0 292650.0 93300.0 293850.0 ; - RECT 92100.0 283350.0 93300.0 284550.0 ; - RECT 94500.0 283350.0 95700.0 284550.0 ; - RECT 94500.0 283350.0 95700.0 284550.0 ; - RECT 92100.0 283350.0 93300.0 284550.0 ; - RECT 96900.0 293250.0 98100.0 294450.0 ; - RECT 96900.0 283350.0 98100.0 284550.0 ; - RECT 92700.0 288000.0 93900.0 289200.0 ; - RECT 92700.0 288000.0 93900.0 289200.0 ; - RECT 95250.0 288150.0 96150.0 289050.0 ; - RECT 90300.0 295350.0 99900.0 296250.0 ; - RECT 90300.0 281550.0 99900.0 282450.0 ; - RECT 96900.0 297750.0 98100.0 295800.0 ; - RECT 96900.0 309600.0 98100.0 307650.0 ; - RECT 92100.0 308250.0 93300.0 310050.0 ; - RECT 92100.0 298950.0 93300.0 295350.0 ; - RECT 94800.0 308250.0 95700.0 298950.0 ; - RECT 92100.0 298950.0 93300.0 297750.0 ; - RECT 94500.0 298950.0 95700.0 297750.0 ; - RECT 94500.0 298950.0 95700.0 297750.0 ; - RECT 92100.0 298950.0 93300.0 297750.0 ; - RECT 92100.0 308250.0 93300.0 307050.0 ; - RECT 94500.0 308250.0 95700.0 307050.0 ; - RECT 94500.0 308250.0 95700.0 307050.0 ; - RECT 92100.0 308250.0 93300.0 307050.0 ; - RECT 96900.0 298350.0 98100.0 297150.0 ; - RECT 96900.0 308250.0 98100.0 307050.0 ; - RECT 92700.0 303600.0 93900.0 302400.0 ; - RECT 92700.0 303600.0 93900.0 302400.0 ; - RECT 95250.0 303450.0 96150.0 302550.0 ; - RECT 90300.0 296250.0 99900.0 295350.0 ; - RECT 90300.0 310050.0 99900.0 309150.0 ; - RECT 96900.0 321450.0 98100.0 323400.0 ; - RECT 96900.0 309600.0 98100.0 311550.0 ; - RECT 92100.0 310950.0 93300.0 309150.0 ; - RECT 92100.0 320250.0 93300.0 323850.0 ; - RECT 94800.0 310950.0 95700.0 320250.0 ; - RECT 92100.0 320250.0 93300.0 321450.0 ; - RECT 94500.0 320250.0 95700.0 321450.0 ; - RECT 94500.0 320250.0 95700.0 321450.0 ; - RECT 92100.0 320250.0 93300.0 321450.0 ; - RECT 92100.0 310950.0 93300.0 312150.0 ; - RECT 94500.0 310950.0 95700.0 312150.0 ; - RECT 94500.0 310950.0 95700.0 312150.0 ; - RECT 92100.0 310950.0 93300.0 312150.0 ; - RECT 96900.0 320850.0 98100.0 322050.0 ; - RECT 96900.0 310950.0 98100.0 312150.0 ; - RECT 92700.0 315600.0 93900.0 316800.0 ; - RECT 92700.0 315600.0 93900.0 316800.0 ; - RECT 95250.0 315750.0 96150.0 316650.0 ; - RECT 90300.0 322950.0 99900.0 323850.0 ; - RECT 90300.0 309150.0 99900.0 310050.0 ; - RECT 96900.0 325350.0 98100.0 323400.0 ; - RECT 96900.0 337200.0 98100.0 335250.0 ; - RECT 92100.0 335850.0 93300.0 337650.0 ; - RECT 92100.0 326550.0 93300.0 322950.0 ; - RECT 94800.0 335850.0 95700.0 326550.0 ; - RECT 92100.0 326550.0 93300.0 325350.0 ; - RECT 94500.0 326550.0 95700.0 325350.0 ; - RECT 94500.0 326550.0 95700.0 325350.0 ; - RECT 92100.0 326550.0 93300.0 325350.0 ; - RECT 92100.0 335850.0 93300.0 334650.0 ; - RECT 94500.0 335850.0 95700.0 334650.0 ; - RECT 94500.0 335850.0 95700.0 334650.0 ; - RECT 92100.0 335850.0 93300.0 334650.0 ; - RECT 96900.0 325950.0 98100.0 324750.0 ; - RECT 96900.0 335850.0 98100.0 334650.0 ; - RECT 92700.0 331200.0 93900.0 330000.0 ; - RECT 92700.0 331200.0 93900.0 330000.0 ; - RECT 95250.0 331050.0 96150.0 330150.0 ; - RECT 90300.0 323850.0 99900.0 322950.0 ; - RECT 90300.0 337650.0 99900.0 336750.0 ; - RECT 96900.0 349050.0 98100.0 351000.0 ; - RECT 96900.0 337200.0 98100.0 339150.0 ; - RECT 92100.0 338550.0 93300.0 336750.0 ; - RECT 92100.0 347850.0 93300.0 351450.0 ; - RECT 94800.0 338550.0 95700.0 347850.0 ; - RECT 92100.0 347850.0 93300.0 349050.0 ; - RECT 94500.0 347850.0 95700.0 349050.0 ; - RECT 94500.0 347850.0 95700.0 349050.0 ; - RECT 92100.0 347850.0 93300.0 349050.0 ; - RECT 92100.0 338550.0 93300.0 339750.0 ; - RECT 94500.0 338550.0 95700.0 339750.0 ; - RECT 94500.0 338550.0 95700.0 339750.0 ; - RECT 92100.0 338550.0 93300.0 339750.0 ; - RECT 96900.0 348450.0 98100.0 349650.0 ; - RECT 96900.0 338550.0 98100.0 339750.0 ; - RECT 92700.0 343200.0 93900.0 344400.0 ; - RECT 92700.0 343200.0 93900.0 344400.0 ; - RECT 95250.0 343350.0 96150.0 344250.0 ; - RECT 90300.0 350550.0 99900.0 351450.0 ; - RECT 90300.0 336750.0 99900.0 337650.0 ; - RECT 96900.0 352950.0 98100.0 351000.0 ; - RECT 96900.0 364800.0 98100.0 362850.0 ; - RECT 92100.0 363450.0 93300.0 365250.0 ; - RECT 92100.0 354150.0 93300.0 350550.0 ; - RECT 94800.0 363450.0 95700.0 354150.0 ; - RECT 92100.0 354150.0 93300.0 352950.0 ; - RECT 94500.0 354150.0 95700.0 352950.0 ; - RECT 94500.0 354150.0 95700.0 352950.0 ; - RECT 92100.0 354150.0 93300.0 352950.0 ; - RECT 92100.0 363450.0 93300.0 362250.0 ; - RECT 94500.0 363450.0 95700.0 362250.0 ; - RECT 94500.0 363450.0 95700.0 362250.0 ; - RECT 92100.0 363450.0 93300.0 362250.0 ; - RECT 96900.0 353550.0 98100.0 352350.0 ; - RECT 96900.0 363450.0 98100.0 362250.0 ; - RECT 92700.0 358800.0 93900.0 357600.0 ; - RECT 92700.0 358800.0 93900.0 357600.0 ; - RECT 95250.0 358650.0 96150.0 357750.0 ; - RECT 90300.0 351450.0 99900.0 350550.0 ; - RECT 90300.0 365250.0 99900.0 364350.0 ; - RECT 96900.0 376650.0 98100.0 378600.0 ; - RECT 96900.0 364800.0 98100.0 366750.0 ; - RECT 92100.0 366150.0 93300.0 364350.0 ; - RECT 92100.0 375450.0 93300.0 379050.0 ; - RECT 94800.0 366150.0 95700.0 375450.0 ; - RECT 92100.0 375450.0 93300.0 376650.0 ; - RECT 94500.0 375450.0 95700.0 376650.0 ; - RECT 94500.0 375450.0 95700.0 376650.0 ; - RECT 92100.0 375450.0 93300.0 376650.0 ; - RECT 92100.0 366150.0 93300.0 367350.0 ; - RECT 94500.0 366150.0 95700.0 367350.0 ; - RECT 94500.0 366150.0 95700.0 367350.0 ; - RECT 92100.0 366150.0 93300.0 367350.0 ; - RECT 96900.0 376050.0 98100.0 377250.0 ; - RECT 96900.0 366150.0 98100.0 367350.0 ; - RECT 92700.0 370800.0 93900.0 372000.0 ; - RECT 92700.0 370800.0 93900.0 372000.0 ; - RECT 95250.0 370950.0 96150.0 371850.0 ; - RECT 90300.0 378150.0 99900.0 379050.0 ; - RECT 90300.0 364350.0 99900.0 365250.0 ; - RECT 96900.0 380550.0 98100.0 378600.0 ; - RECT 96900.0 392400.0 98100.0 390450.0 ; - RECT 92100.0 391050.0 93300.0 392850.0 ; - RECT 92100.0 381750.0 93300.0 378150.0 ; - RECT 94800.0 391050.0 95700.0 381750.0 ; - RECT 92100.0 381750.0 93300.0 380550.0 ; - RECT 94500.0 381750.0 95700.0 380550.0 ; - RECT 94500.0 381750.0 95700.0 380550.0 ; - RECT 92100.0 381750.0 93300.0 380550.0 ; - RECT 92100.0 391050.0 93300.0 389850.0 ; - RECT 94500.0 391050.0 95700.0 389850.0 ; - RECT 94500.0 391050.0 95700.0 389850.0 ; - RECT 92100.0 391050.0 93300.0 389850.0 ; - RECT 96900.0 381150.0 98100.0 379950.0 ; - RECT 96900.0 391050.0 98100.0 389850.0 ; - RECT 92700.0 386400.0 93900.0 385200.0 ; - RECT 92700.0 386400.0 93900.0 385200.0 ; - RECT 95250.0 386250.0 96150.0 385350.0 ; - RECT 90300.0 379050.0 99900.0 378150.0 ; - RECT 90300.0 392850.0 99900.0 391950.0 ; - RECT 96900.0 404250.0 98100.0 406200.0 ; - RECT 96900.0 392400.0 98100.0 394350.0 ; - RECT 92100.0 393750.0 93300.0 391950.0 ; - RECT 92100.0 403050.0 93300.0 406650.0 ; - RECT 94800.0 393750.0 95700.0 403050.0 ; - RECT 92100.0 403050.0 93300.0 404250.0 ; - RECT 94500.0 403050.0 95700.0 404250.0 ; - RECT 94500.0 403050.0 95700.0 404250.0 ; - RECT 92100.0 403050.0 93300.0 404250.0 ; - RECT 92100.0 393750.0 93300.0 394950.0 ; - RECT 94500.0 393750.0 95700.0 394950.0 ; - RECT 94500.0 393750.0 95700.0 394950.0 ; - RECT 92100.0 393750.0 93300.0 394950.0 ; - RECT 96900.0 403650.0 98100.0 404850.0 ; - RECT 96900.0 393750.0 98100.0 394950.0 ; - RECT 92700.0 398400.0 93900.0 399600.0 ; - RECT 92700.0 398400.0 93900.0 399600.0 ; - RECT 95250.0 398550.0 96150.0 399450.0 ; - RECT 90300.0 405750.0 99900.0 406650.0 ; - RECT 90300.0 391950.0 99900.0 392850.0 ; - RECT 96900.0 408150.0 98100.0 406200.0 ; - RECT 96900.0 420000.0 98100.0 418050.0 ; - RECT 92100.0 418650.0 93300.0 420450.0 ; - RECT 92100.0 409350.0 93300.0 405750.0 ; - RECT 94800.0 418650.0 95700.0 409350.0 ; - RECT 92100.0 409350.0 93300.0 408150.0 ; - RECT 94500.0 409350.0 95700.0 408150.0 ; - RECT 94500.0 409350.0 95700.0 408150.0 ; - RECT 92100.0 409350.0 93300.0 408150.0 ; - RECT 92100.0 418650.0 93300.0 417450.0 ; - RECT 94500.0 418650.0 95700.0 417450.0 ; - RECT 94500.0 418650.0 95700.0 417450.0 ; - RECT 92100.0 418650.0 93300.0 417450.0 ; - RECT 96900.0 408750.0 98100.0 407550.0 ; - RECT 96900.0 418650.0 98100.0 417450.0 ; - RECT 92700.0 414000.0 93900.0 412800.0 ; - RECT 92700.0 414000.0 93900.0 412800.0 ; - RECT 95250.0 413850.0 96150.0 412950.0 ; - RECT 90300.0 406650.0 99900.0 405750.0 ; - RECT 90300.0 420450.0 99900.0 419550.0 ; - RECT 60150.0 94800.0 58950.0 96000.0 ; - RECT 62250.0 109200.0 61050.0 110400.0 ; - RECT 64350.0 122400.0 63150.0 123600.0 ; - RECT 66450.0 136800.0 65250.0 138000.0 ; - RECT 68550.0 150000.0 67350.0 151200.0 ; - RECT 70650.0 164400.0 69450.0 165600.0 ; - RECT 72750.0 177600.0 71550.0 178800.0 ; - RECT 74850.0 192000.0 73650.0 193200.0 ; - RECT 60150.0 206400.0 58950.0 207600.0 ; - RECT 68550.0 203700.0 67350.0 204900.0 ; - RECT 60150.0 218400.0 58950.0 219600.0 ; - RECT 70650.0 221100.0 69450.0 222300.0 ; - RECT 60150.0 234000.0 58950.0 235200.0 ; - RECT 72750.0 231300.0 71550.0 232500.0 ; - RECT 60150.0 246000.0 58950.0 247200.0 ; - RECT 74850.0 248700.0 73650.0 249900.0 ; - RECT 62250.0 261600.0 61050.0 262800.0 ; - RECT 68550.0 258900.0 67350.0 260100.0 ; - RECT 62250.0 273600.0 61050.0 274800.0 ; - RECT 70650.0 276300.0 69450.0 277500.0 ; - RECT 62250.0 289200.0 61050.0 290400.0 ; - RECT 72750.0 286500.0 71550.0 287700.0 ; - RECT 62250.0 301200.0 61050.0 302400.0 ; - RECT 74850.0 303900.0 73650.0 305100.0 ; - RECT 64350.0 316800.0 63150.0 318000.0 ; - RECT 68550.0 314100.0 67350.0 315300.0 ; - RECT 64350.0 328800.0 63150.0 330000.0 ; - RECT 70650.0 331500.0 69450.0 332700.0 ; - RECT 64350.0 344400.0 63150.0 345600.0 ; - RECT 72750.0 341700.0 71550.0 342900.0 ; - RECT 64350.0 356400.0 63150.0 357600.0 ; - RECT 74850.0 359100.0 73650.0 360300.0 ; - RECT 66450.0 372000.0 65250.0 373200.0 ; - RECT 68550.0 369300.0 67350.0 370500.0 ; - RECT 66450.0 384000.0 65250.0 385200.0 ; - RECT 70650.0 386700.0 69450.0 387900.0 ; - RECT 66450.0 399600.0 65250.0 400800.0 ; - RECT 72750.0 396900.0 71550.0 398100.0 ; - RECT 66450.0 411600.0 65250.0 412800.0 ; - RECT 74850.0 414300.0 73650.0 415500.0 ; - RECT 95250.0 205350.0 96150.0 206250.0 ; - RECT 95250.0 219750.0 96150.0 220650.0 ; - RECT 95250.0 232950.0 96150.0 233850.0 ; - RECT 95250.0 247350.0 96150.0 248250.0 ; - RECT 95250.0 260550.0 96150.0 261450.0 ; - RECT 95250.0 274950.0 96150.0 275850.0 ; - RECT 95250.0 288150.0 96150.0 289050.0 ; - RECT 95250.0 302550.0 96150.0 303450.0 ; - RECT 95250.0 315750.0 96150.0 316650.0 ; - RECT 95250.0 330150.0 96150.0 331050.0 ; - RECT 95250.0 343350.0 96150.0 344250.0 ; - RECT 95250.0 357750.0 96150.0 358650.0 ; - RECT 95250.0 370950.0 96150.0 371850.0 ; - RECT 95250.0 385350.0 96150.0 386250.0 ; - RECT 95250.0 398550.0 96150.0 399450.0 ; - RECT 95250.0 412950.0 96150.0 413850.0 ; - RECT 59100.0 102150.0 130500.0 103050.0 ; - RECT 59100.0 129750.0 130500.0 130650.0 ; - RECT 59100.0 157350.0 130500.0 158250.0 ; - RECT 59100.0 184950.0 130500.0 185850.0 ; - RECT 59100.0 212550.0 130500.0 213450.0 ; - RECT 59100.0 240150.0 130500.0 241050.0 ; - RECT 59100.0 267750.0 130500.0 268650.0 ; - RECT 59100.0 295350.0 130500.0 296250.0 ; - RECT 59100.0 322950.0 130500.0 323850.0 ; - RECT 59100.0 350550.0 130500.0 351450.0 ; - RECT 59100.0 378150.0 130500.0 379050.0 ; - RECT 59100.0 405750.0 130500.0 406650.0 ; - RECT 59100.0 88350.0 130500.0 89250.0 ; - RECT 59100.0 115950.0 130500.0 116850.0 ; - RECT 59100.0 143550.0 130500.0 144450.0 ; - RECT 59100.0 171150.0 130500.0 172050.0 ; - RECT 59100.0 198750.0 130500.0 199650.0 ; - RECT 59100.0 226350.0 130500.0 227250.0 ; - RECT 59100.0 253950.0 130500.0 254850.0 ; - RECT 59100.0 281550.0 130500.0 282450.0 ; - RECT 59100.0 309150.0 130500.0 310050.0 ; - RECT 59100.0 336750.0 130500.0 337650.0 ; - RECT 59100.0 364350.0 130500.0 365250.0 ; - RECT 59100.0 391950.0 130500.0 392850.0 ; - RECT 59100.0 419550.0 130500.0 420450.0 ; - RECT 103050.0 205350.0 108600.0 206250.0 ; - RECT 111150.0 206550.0 112050.0 207450.0 ; - RECT 111150.0 205350.0 112050.0 206250.0 ; - RECT 111150.0 206250.0 112050.0 207000.0 ; - RECT 111600.0 206550.0 118200.0 207450.0 ; - RECT 118200.0 206550.0 119400.0 207450.0 ; - RECT 127650.0 206550.0 128550.0 207450.0 ; - RECT 127650.0 205350.0 128550.0 206250.0 ; - RECT 123600.0 206550.0 128100.0 207450.0 ; - RECT 127650.0 205800.0 128550.0 207000.0 ; - RECT 128100.0 205350.0 132600.0 206250.0 ; - RECT 103050.0 219750.0 108600.0 220650.0 ; - RECT 111150.0 218550.0 112050.0 219450.0 ; - RECT 111150.0 219750.0 112050.0 220650.0 ; - RECT 111150.0 219000.0 112050.0 220650.0 ; - RECT 111600.0 218550.0 118200.0 219450.0 ; - RECT 118200.0 218550.0 119400.0 219450.0 ; - RECT 127650.0 218550.0 128550.0 219450.0 ; - RECT 127650.0 219750.0 128550.0 220650.0 ; - RECT 123600.0 218550.0 128100.0 219450.0 ; - RECT 127650.0 219000.0 128550.0 220200.0 ; - RECT 128100.0 219750.0 132600.0 220650.0 ; - RECT 103050.0 232950.0 108600.0 233850.0 ; - RECT 111150.0 234150.0 112050.0 235050.0 ; - RECT 111150.0 232950.0 112050.0 233850.0 ; - RECT 111150.0 233850.0 112050.0 234600.0 ; - RECT 111600.0 234150.0 118200.0 235050.0 ; - RECT 118200.0 234150.0 119400.0 235050.0 ; - RECT 127650.0 234150.0 128550.0 235050.0 ; - RECT 127650.0 232950.0 128550.0 233850.0 ; - RECT 123600.0 234150.0 128100.0 235050.0 ; - RECT 127650.0 233400.0 128550.0 234600.0 ; - RECT 128100.0 232950.0 132600.0 233850.0 ; - RECT 103050.0 247350.0 108600.0 248250.0 ; - RECT 111150.0 246150.0 112050.0 247050.0 ; - RECT 111150.0 247350.0 112050.0 248250.0 ; - RECT 111150.0 246600.0 112050.0 248250.0 ; - RECT 111600.0 246150.0 118200.0 247050.0 ; - RECT 118200.0 246150.0 119400.0 247050.0 ; - RECT 127650.0 246150.0 128550.0 247050.0 ; - RECT 127650.0 247350.0 128550.0 248250.0 ; - RECT 123600.0 246150.0 128100.0 247050.0 ; - RECT 127650.0 246600.0 128550.0 247800.0 ; - RECT 128100.0 247350.0 132600.0 248250.0 ; - RECT 103050.0 260550.0 108600.0 261450.0 ; - RECT 111150.0 261750.0 112050.0 262650.0 ; - RECT 111150.0 260550.0 112050.0 261450.0 ; - RECT 111150.0 261450.0 112050.0 262200.0 ; - RECT 111600.0 261750.0 118200.0 262650.0 ; - RECT 118200.0 261750.0 119400.0 262650.0 ; - RECT 127650.0 261750.0 128550.0 262650.0 ; - RECT 127650.0 260550.0 128550.0 261450.0 ; - RECT 123600.0 261750.0 128100.0 262650.0 ; - RECT 127650.0 261000.0 128550.0 262200.0 ; - RECT 128100.0 260550.0 132600.0 261450.0 ; - RECT 103050.0 274950.0 108600.0 275850.0 ; - RECT 111150.0 273750.0 112050.0 274650.0 ; - RECT 111150.0 274950.0 112050.0 275850.0 ; - RECT 111150.0 274200.0 112050.0 275850.0 ; - RECT 111600.0 273750.0 118200.0 274650.0 ; - RECT 118200.0 273750.0 119400.0 274650.0 ; - RECT 127650.0 273750.0 128550.0 274650.0 ; - RECT 127650.0 274950.0 128550.0 275850.0 ; - RECT 123600.0 273750.0 128100.0 274650.0 ; - RECT 127650.0 274200.0 128550.0 275400.0 ; - RECT 128100.0 274950.0 132600.0 275850.0 ; - RECT 103050.0 288150.0 108600.0 289050.0 ; - RECT 111150.0 289350.0 112050.0 290250.0 ; - RECT 111150.0 288150.0 112050.0 289050.0 ; - RECT 111150.0 289050.0 112050.0 289800.0 ; - RECT 111600.0 289350.0 118200.0 290250.0 ; - RECT 118200.0 289350.0 119400.0 290250.0 ; - RECT 127650.0 289350.0 128550.0 290250.0 ; - RECT 127650.0 288150.0 128550.0 289050.0 ; - RECT 123600.0 289350.0 128100.0 290250.0 ; - RECT 127650.0 288600.0 128550.0 289800.0 ; - RECT 128100.0 288150.0 132600.0 289050.0 ; - RECT 103050.0 302550.0 108600.0 303450.0 ; - RECT 111150.0 301350.0 112050.0 302250.0 ; - RECT 111150.0 302550.0 112050.0 303450.0 ; - RECT 111150.0 301800.0 112050.0 303450.0 ; - RECT 111600.0 301350.0 118200.0 302250.0 ; - RECT 118200.0 301350.0 119400.0 302250.0 ; - RECT 127650.0 301350.0 128550.0 302250.0 ; - RECT 127650.0 302550.0 128550.0 303450.0 ; - RECT 123600.0 301350.0 128100.0 302250.0 ; - RECT 127650.0 301800.0 128550.0 303000.0 ; - RECT 128100.0 302550.0 132600.0 303450.0 ; - RECT 103050.0 315750.0 108600.0 316650.0 ; - RECT 111150.0 316950.0 112050.0 317850.0 ; - RECT 111150.0 315750.0 112050.0 316650.0 ; - RECT 111150.0 316650.0 112050.0 317400.0 ; - RECT 111600.0 316950.0 118200.0 317850.0 ; - RECT 118200.0 316950.0 119400.0 317850.0 ; - RECT 127650.0 316950.0 128550.0 317850.0 ; - RECT 127650.0 315750.0 128550.0 316650.0 ; - RECT 123600.0 316950.0 128100.0 317850.0 ; - RECT 127650.0 316200.0 128550.0 317400.0 ; - RECT 128100.0 315750.0 132600.0 316650.0 ; - RECT 103050.0 330150.0 108600.0 331050.0 ; - RECT 111150.0 328950.0 112050.0 329850.0 ; - RECT 111150.0 330150.0 112050.0 331050.0 ; - RECT 111150.0 329400.0 112050.0 331050.0 ; - RECT 111600.0 328950.0 118200.0 329850.0 ; - RECT 118200.0 328950.0 119400.0 329850.0 ; - RECT 127650.0 328950.0 128550.0 329850.0 ; - RECT 127650.0 330150.0 128550.0 331050.0 ; - RECT 123600.0 328950.0 128100.0 329850.0 ; - RECT 127650.0 329400.0 128550.0 330600.0 ; - RECT 128100.0 330150.0 132600.0 331050.0 ; - RECT 103050.0 343350.0 108600.0 344250.0 ; - RECT 111150.0 344550.0 112050.0 345450.0 ; - RECT 111150.0 343350.0 112050.0 344250.0 ; - RECT 111150.0 344250.0 112050.0 345000.0 ; - RECT 111600.0 344550.0 118200.0 345450.0 ; - RECT 118200.0 344550.0 119400.0 345450.0 ; - RECT 127650.0 344550.0 128550.0 345450.0 ; - RECT 127650.0 343350.0 128550.0 344250.0 ; - RECT 123600.0 344550.0 128100.0 345450.0 ; - RECT 127650.0 343800.0 128550.0 345000.0 ; - RECT 128100.0 343350.0 132600.0 344250.0 ; - RECT 103050.0 357750.0 108600.0 358650.0 ; - RECT 111150.0 356550.0 112050.0 357450.0 ; - RECT 111150.0 357750.0 112050.0 358650.0 ; - RECT 111150.0 357000.0 112050.0 358650.0 ; - RECT 111600.0 356550.0 118200.0 357450.0 ; - RECT 118200.0 356550.0 119400.0 357450.0 ; - RECT 127650.0 356550.0 128550.0 357450.0 ; - RECT 127650.0 357750.0 128550.0 358650.0 ; - RECT 123600.0 356550.0 128100.0 357450.0 ; - RECT 127650.0 357000.0 128550.0 358200.0 ; - RECT 128100.0 357750.0 132600.0 358650.0 ; - RECT 103050.0 370950.0 108600.0 371850.0 ; - RECT 111150.0 372150.0 112050.0 373050.0 ; - RECT 111150.0 370950.0 112050.0 371850.0 ; - RECT 111150.0 371850.0 112050.0 372600.0 ; - RECT 111600.0 372150.0 118200.0 373050.0 ; - RECT 118200.0 372150.0 119400.0 373050.0 ; - RECT 127650.0 372150.0 128550.0 373050.0 ; - RECT 127650.0 370950.0 128550.0 371850.0 ; - RECT 123600.0 372150.0 128100.0 373050.0 ; - RECT 127650.0 371400.0 128550.0 372600.0 ; - RECT 128100.0 370950.0 132600.0 371850.0 ; - RECT 103050.0 385350.0 108600.0 386250.0 ; - RECT 111150.0 384150.0 112050.0 385050.0 ; - RECT 111150.0 385350.0 112050.0 386250.0 ; - RECT 111150.0 384600.0 112050.0 386250.0 ; - RECT 111600.0 384150.0 118200.0 385050.0 ; - RECT 118200.0 384150.0 119400.0 385050.0 ; - RECT 127650.0 384150.0 128550.0 385050.0 ; - RECT 127650.0 385350.0 128550.0 386250.0 ; - RECT 123600.0 384150.0 128100.0 385050.0 ; - RECT 127650.0 384600.0 128550.0 385800.0 ; - RECT 128100.0 385350.0 132600.0 386250.0 ; - RECT 103050.0 398550.0 108600.0 399450.0 ; - RECT 111150.0 399750.0 112050.0 400650.0 ; - RECT 111150.0 398550.0 112050.0 399450.0 ; - RECT 111150.0 399450.0 112050.0 400200.0 ; - RECT 111600.0 399750.0 118200.0 400650.0 ; - RECT 118200.0 399750.0 119400.0 400650.0 ; - RECT 127650.0 399750.0 128550.0 400650.0 ; - RECT 127650.0 398550.0 128550.0 399450.0 ; - RECT 123600.0 399750.0 128100.0 400650.0 ; - RECT 127650.0 399000.0 128550.0 400200.0 ; - RECT 128100.0 398550.0 132600.0 399450.0 ; - RECT 103050.0 412950.0 108600.0 413850.0 ; - RECT 111150.0 411750.0 112050.0 412650.0 ; - RECT 111150.0 412950.0 112050.0 413850.0 ; - RECT 111150.0 412200.0 112050.0 413850.0 ; - RECT 111600.0 411750.0 118200.0 412650.0 ; - RECT 118200.0 411750.0 119400.0 412650.0 ; - RECT 127650.0 411750.0 128550.0 412650.0 ; - RECT 127650.0 412950.0 128550.0 413850.0 ; - RECT 123600.0 411750.0 128100.0 412650.0 ; - RECT 127650.0 412200.0 128550.0 413400.0 ; - RECT 128100.0 412950.0 132600.0 413850.0 ; - RECT 112800.0 211050.0 114000.0 213000.0 ; - RECT 112800.0 199200.0 114000.0 201150.0 ; - RECT 108000.0 200550.0 109200.0 198750.0 ; - RECT 108000.0 209850.0 109200.0 213450.0 ; - RECT 110700.0 200550.0 111600.0 209850.0 ; - RECT 108000.0 209850.0 109200.0 211050.0 ; - RECT 110400.0 209850.0 111600.0 211050.0 ; - RECT 110400.0 209850.0 111600.0 211050.0 ; - RECT 108000.0 209850.0 109200.0 211050.0 ; - RECT 108000.0 200550.0 109200.0 201750.0 ; - RECT 110400.0 200550.0 111600.0 201750.0 ; - RECT 110400.0 200550.0 111600.0 201750.0 ; - RECT 108000.0 200550.0 109200.0 201750.0 ; - RECT 112800.0 210450.0 114000.0 211650.0 ; - RECT 112800.0 200550.0 114000.0 201750.0 ; - RECT 108600.0 205200.0 109800.0 206400.0 ; - RECT 108600.0 205200.0 109800.0 206400.0 ; - RECT 111150.0 205350.0 112050.0 206250.0 ; - RECT 106200.0 212550.0 115800.0 213450.0 ; - RECT 106200.0 198750.0 115800.0 199650.0 ; - RECT 117600.0 201150.0 118800.0 198750.0 ; - RECT 117600.0 209850.0 118800.0 213450.0 ; - RECT 122400.0 209850.0 123600.0 213450.0 ; - RECT 124800.0 211050.0 126000.0 213000.0 ; - RECT 124800.0 199200.0 126000.0 201150.0 ; - RECT 117600.0 209850.0 118800.0 211050.0 ; - RECT 120000.0 209850.0 121200.0 211050.0 ; - RECT 120000.0 209850.0 121200.0 211050.0 ; - RECT 117600.0 209850.0 118800.0 211050.0 ; - RECT 120000.0 209850.0 121200.0 211050.0 ; - RECT 122400.0 209850.0 123600.0 211050.0 ; - RECT 122400.0 209850.0 123600.0 211050.0 ; - RECT 120000.0 209850.0 121200.0 211050.0 ; - RECT 117600.0 201150.0 118800.0 202350.0 ; - RECT 120000.0 201150.0 121200.0 202350.0 ; - RECT 120000.0 201150.0 121200.0 202350.0 ; - RECT 117600.0 201150.0 118800.0 202350.0 ; - RECT 120000.0 201150.0 121200.0 202350.0 ; - RECT 122400.0 201150.0 123600.0 202350.0 ; - RECT 122400.0 201150.0 123600.0 202350.0 ; - RECT 120000.0 201150.0 121200.0 202350.0 ; - RECT 124800.0 210450.0 126000.0 211650.0 ; - RECT 124800.0 200550.0 126000.0 201750.0 ; - RECT 122400.0 203700.0 121200.0 204900.0 ; - RECT 119400.0 206400.0 118200.0 207600.0 ; - RECT 120000.0 209850.0 121200.0 211050.0 ; - RECT 122400.0 201150.0 123600.0 202350.0 ; - RECT 123600.0 206400.0 122400.0 207600.0 ; - RECT 118200.0 206400.0 119400.0 207600.0 ; - RECT 121200.0 203700.0 122400.0 204900.0 ; - RECT 122400.0 206400.0 123600.0 207600.0 ; - RECT 115800.0 212550.0 130200.0 213450.0 ; - RECT 115800.0 198750.0 130200.0 199650.0 ; - RECT 136800.0 211050.0 138000.0 213000.0 ; - RECT 136800.0 199200.0 138000.0 201150.0 ; - RECT 132000.0 200550.0 133200.0 198750.0 ; - RECT 132000.0 209850.0 133200.0 213450.0 ; - RECT 134700.0 200550.0 135600.0 209850.0 ; - RECT 132000.0 209850.0 133200.0 211050.0 ; - RECT 134400.0 209850.0 135600.0 211050.0 ; - RECT 134400.0 209850.0 135600.0 211050.0 ; - RECT 132000.0 209850.0 133200.0 211050.0 ; - RECT 132000.0 200550.0 133200.0 201750.0 ; - RECT 134400.0 200550.0 135600.0 201750.0 ; - RECT 134400.0 200550.0 135600.0 201750.0 ; - RECT 132000.0 200550.0 133200.0 201750.0 ; - RECT 136800.0 210450.0 138000.0 211650.0 ; - RECT 136800.0 200550.0 138000.0 201750.0 ; - RECT 132600.0 205200.0 133800.0 206400.0 ; - RECT 132600.0 205200.0 133800.0 206400.0 ; - RECT 135150.0 205350.0 136050.0 206250.0 ; - RECT 130200.0 212550.0 139800.0 213450.0 ; - RECT 130200.0 198750.0 139800.0 199650.0 ; - RECT 102450.0 205200.0 103650.0 206400.0 ; - RECT 104400.0 202800.0 105600.0 204000.0 ; - RECT 121200.0 203700.0 120000.0 204900.0 ; - RECT 112800.0 214950.0 114000.0 213000.0 ; - RECT 112800.0 226800.0 114000.0 224850.0 ; - RECT 108000.0 225450.0 109200.0 227250.0 ; - RECT 108000.0 216150.0 109200.0 212550.0 ; - RECT 110700.0 225450.0 111600.0 216150.0 ; - RECT 108000.0 216150.0 109200.0 214950.0 ; - RECT 110400.0 216150.0 111600.0 214950.0 ; - RECT 110400.0 216150.0 111600.0 214950.0 ; - RECT 108000.0 216150.0 109200.0 214950.0 ; - RECT 108000.0 225450.0 109200.0 224250.0 ; - RECT 110400.0 225450.0 111600.0 224250.0 ; - RECT 110400.0 225450.0 111600.0 224250.0 ; - RECT 108000.0 225450.0 109200.0 224250.0 ; - RECT 112800.0 215550.0 114000.0 214350.0 ; - RECT 112800.0 225450.0 114000.0 224250.0 ; - RECT 108600.0 220800.0 109800.0 219600.0 ; - RECT 108600.0 220800.0 109800.0 219600.0 ; - RECT 111150.0 220650.0 112050.0 219750.0 ; - RECT 106200.0 213450.0 115800.0 212550.0 ; - RECT 106200.0 227250.0 115800.0 226350.0 ; - RECT 117600.0 224850.0 118800.0 227250.0 ; - RECT 117600.0 216150.0 118800.0 212550.0 ; - RECT 122400.0 216150.0 123600.0 212550.0 ; - RECT 124800.0 214950.0 126000.0 213000.0 ; - RECT 124800.0 226800.0 126000.0 224850.0 ; - RECT 117600.0 216150.0 118800.0 214950.0 ; - RECT 120000.0 216150.0 121200.0 214950.0 ; - RECT 120000.0 216150.0 121200.0 214950.0 ; - RECT 117600.0 216150.0 118800.0 214950.0 ; - RECT 120000.0 216150.0 121200.0 214950.0 ; - RECT 122400.0 216150.0 123600.0 214950.0 ; - RECT 122400.0 216150.0 123600.0 214950.0 ; - RECT 120000.0 216150.0 121200.0 214950.0 ; - RECT 117600.0 224850.0 118800.0 223650.0 ; - RECT 120000.0 224850.0 121200.0 223650.0 ; - RECT 120000.0 224850.0 121200.0 223650.0 ; - RECT 117600.0 224850.0 118800.0 223650.0 ; - RECT 120000.0 224850.0 121200.0 223650.0 ; - RECT 122400.0 224850.0 123600.0 223650.0 ; - RECT 122400.0 224850.0 123600.0 223650.0 ; - RECT 120000.0 224850.0 121200.0 223650.0 ; - RECT 124800.0 215550.0 126000.0 214350.0 ; - RECT 124800.0 225450.0 126000.0 224250.0 ; - RECT 122400.0 222300.0 121200.0 221100.0 ; - RECT 119400.0 219600.0 118200.0 218400.0 ; - RECT 120000.0 216150.0 121200.0 214950.0 ; - RECT 122400.0 224850.0 123600.0 223650.0 ; - RECT 123600.0 219600.0 122400.0 218400.0 ; - RECT 118200.0 219600.0 119400.0 218400.0 ; - RECT 121200.0 222300.0 122400.0 221100.0 ; - RECT 122400.0 219600.0 123600.0 218400.0 ; - RECT 115800.0 213450.0 130200.0 212550.0 ; - RECT 115800.0 227250.0 130200.0 226350.0 ; - RECT 136800.0 214950.0 138000.0 213000.0 ; - RECT 136800.0 226800.0 138000.0 224850.0 ; - RECT 132000.0 225450.0 133200.0 227250.0 ; - RECT 132000.0 216150.0 133200.0 212550.0 ; - RECT 134700.0 225450.0 135600.0 216150.0 ; - RECT 132000.0 216150.0 133200.0 214950.0 ; - RECT 134400.0 216150.0 135600.0 214950.0 ; - RECT 134400.0 216150.0 135600.0 214950.0 ; - RECT 132000.0 216150.0 133200.0 214950.0 ; - RECT 132000.0 225450.0 133200.0 224250.0 ; - RECT 134400.0 225450.0 135600.0 224250.0 ; - RECT 134400.0 225450.0 135600.0 224250.0 ; - RECT 132000.0 225450.0 133200.0 224250.0 ; - RECT 136800.0 215550.0 138000.0 214350.0 ; - RECT 136800.0 225450.0 138000.0 224250.0 ; - RECT 132600.0 220800.0 133800.0 219600.0 ; - RECT 132600.0 220800.0 133800.0 219600.0 ; - RECT 135150.0 220650.0 136050.0 219750.0 ; - RECT 130200.0 213450.0 139800.0 212550.0 ; - RECT 130200.0 227250.0 139800.0 226350.0 ; - RECT 102450.0 219600.0 103650.0 220800.0 ; - RECT 104400.0 222000.0 105600.0 223200.0 ; - RECT 121200.0 221100.0 120000.0 222300.0 ; - RECT 112800.0 238650.0 114000.0 240600.0 ; - RECT 112800.0 226800.0 114000.0 228750.0 ; - RECT 108000.0 228150.0 109200.0 226350.0 ; - RECT 108000.0 237450.0 109200.0 241050.0 ; - RECT 110700.0 228150.0 111600.0 237450.0 ; - RECT 108000.0 237450.0 109200.0 238650.0 ; - RECT 110400.0 237450.0 111600.0 238650.0 ; - RECT 110400.0 237450.0 111600.0 238650.0 ; - RECT 108000.0 237450.0 109200.0 238650.0 ; - RECT 108000.0 228150.0 109200.0 229350.0 ; - RECT 110400.0 228150.0 111600.0 229350.0 ; - RECT 110400.0 228150.0 111600.0 229350.0 ; - RECT 108000.0 228150.0 109200.0 229350.0 ; - RECT 112800.0 238050.0 114000.0 239250.0 ; - RECT 112800.0 228150.0 114000.0 229350.0 ; - RECT 108600.0 232800.0 109800.0 234000.0 ; - RECT 108600.0 232800.0 109800.0 234000.0 ; - RECT 111150.0 232950.0 112050.0 233850.0 ; - RECT 106200.0 240150.0 115800.0 241050.0 ; - RECT 106200.0 226350.0 115800.0 227250.0 ; - RECT 117600.0 228750.0 118800.0 226350.0 ; - RECT 117600.0 237450.0 118800.0 241050.0 ; - RECT 122400.0 237450.0 123600.0 241050.0 ; - RECT 124800.0 238650.0 126000.0 240600.0 ; - RECT 124800.0 226800.0 126000.0 228750.0 ; - RECT 117600.0 237450.0 118800.0 238650.0 ; - RECT 120000.0 237450.0 121200.0 238650.0 ; - RECT 120000.0 237450.0 121200.0 238650.0 ; - RECT 117600.0 237450.0 118800.0 238650.0 ; - RECT 120000.0 237450.0 121200.0 238650.0 ; - RECT 122400.0 237450.0 123600.0 238650.0 ; - RECT 122400.0 237450.0 123600.0 238650.0 ; - RECT 120000.0 237450.0 121200.0 238650.0 ; - RECT 117600.0 228750.0 118800.0 229950.0 ; - RECT 120000.0 228750.0 121200.0 229950.0 ; - RECT 120000.0 228750.0 121200.0 229950.0 ; - RECT 117600.0 228750.0 118800.0 229950.0 ; - RECT 120000.0 228750.0 121200.0 229950.0 ; - RECT 122400.0 228750.0 123600.0 229950.0 ; - RECT 122400.0 228750.0 123600.0 229950.0 ; - RECT 120000.0 228750.0 121200.0 229950.0 ; - RECT 124800.0 238050.0 126000.0 239250.0 ; - RECT 124800.0 228150.0 126000.0 229350.0 ; - RECT 122400.0 231300.0 121200.0 232500.0 ; - RECT 119400.0 234000.0 118200.0 235200.0 ; - RECT 120000.0 237450.0 121200.0 238650.0 ; - RECT 122400.0 228750.0 123600.0 229950.0 ; - RECT 123600.0 234000.0 122400.0 235200.0 ; - RECT 118200.0 234000.0 119400.0 235200.0 ; - RECT 121200.0 231300.0 122400.0 232500.0 ; - RECT 122400.0 234000.0 123600.0 235200.0 ; - RECT 115800.0 240150.0 130200.0 241050.0 ; - RECT 115800.0 226350.0 130200.0 227250.0 ; - RECT 136800.0 238650.0 138000.0 240600.0 ; - RECT 136800.0 226800.0 138000.0 228750.0 ; - RECT 132000.0 228150.0 133200.0 226350.0 ; - RECT 132000.0 237450.0 133200.0 241050.0 ; - RECT 134700.0 228150.0 135600.0 237450.0 ; - RECT 132000.0 237450.0 133200.0 238650.0 ; - RECT 134400.0 237450.0 135600.0 238650.0 ; - RECT 134400.0 237450.0 135600.0 238650.0 ; - RECT 132000.0 237450.0 133200.0 238650.0 ; - RECT 132000.0 228150.0 133200.0 229350.0 ; - RECT 134400.0 228150.0 135600.0 229350.0 ; - RECT 134400.0 228150.0 135600.0 229350.0 ; - RECT 132000.0 228150.0 133200.0 229350.0 ; - RECT 136800.0 238050.0 138000.0 239250.0 ; - RECT 136800.0 228150.0 138000.0 229350.0 ; - RECT 132600.0 232800.0 133800.0 234000.0 ; - RECT 132600.0 232800.0 133800.0 234000.0 ; - RECT 135150.0 232950.0 136050.0 233850.0 ; - RECT 130200.0 240150.0 139800.0 241050.0 ; - RECT 130200.0 226350.0 139800.0 227250.0 ; - RECT 102450.0 232800.0 103650.0 234000.0 ; - RECT 104400.0 230400.0 105600.0 231600.0 ; - RECT 121200.0 231300.0 120000.0 232500.0 ; - RECT 112800.0 242550.0 114000.0 240600.0 ; - RECT 112800.0 254400.0 114000.0 252450.0 ; - RECT 108000.0 253050.0 109200.0 254850.0 ; - RECT 108000.0 243750.0 109200.0 240150.0 ; - RECT 110700.0 253050.0 111600.0 243750.0 ; - RECT 108000.0 243750.0 109200.0 242550.0 ; - RECT 110400.0 243750.0 111600.0 242550.0 ; - RECT 110400.0 243750.0 111600.0 242550.0 ; - RECT 108000.0 243750.0 109200.0 242550.0 ; - RECT 108000.0 253050.0 109200.0 251850.0 ; - RECT 110400.0 253050.0 111600.0 251850.0 ; - RECT 110400.0 253050.0 111600.0 251850.0 ; - RECT 108000.0 253050.0 109200.0 251850.0 ; - RECT 112800.0 243150.0 114000.0 241950.0 ; - RECT 112800.0 253050.0 114000.0 251850.0 ; - RECT 108600.0 248400.0 109800.0 247200.0 ; - RECT 108600.0 248400.0 109800.0 247200.0 ; - RECT 111150.0 248250.0 112050.0 247350.0 ; - RECT 106200.0 241050.0 115800.0 240150.0 ; - RECT 106200.0 254850.0 115800.0 253950.0 ; - RECT 117600.0 252450.0 118800.0 254850.0 ; - RECT 117600.0 243750.0 118800.0 240150.0 ; - RECT 122400.0 243750.0 123600.0 240150.0 ; - RECT 124800.0 242550.0 126000.0 240600.0 ; - RECT 124800.0 254400.0 126000.0 252450.0 ; - RECT 117600.0 243750.0 118800.0 242550.0 ; - RECT 120000.0 243750.0 121200.0 242550.0 ; - RECT 120000.0 243750.0 121200.0 242550.0 ; - RECT 117600.0 243750.0 118800.0 242550.0 ; - RECT 120000.0 243750.0 121200.0 242550.0 ; - RECT 122400.0 243750.0 123600.0 242550.0 ; - RECT 122400.0 243750.0 123600.0 242550.0 ; - RECT 120000.0 243750.0 121200.0 242550.0 ; - RECT 117600.0 252450.0 118800.0 251250.0 ; - RECT 120000.0 252450.0 121200.0 251250.0 ; - RECT 120000.0 252450.0 121200.0 251250.0 ; - RECT 117600.0 252450.0 118800.0 251250.0 ; - RECT 120000.0 252450.0 121200.0 251250.0 ; - RECT 122400.0 252450.0 123600.0 251250.0 ; - RECT 122400.0 252450.0 123600.0 251250.0 ; - RECT 120000.0 252450.0 121200.0 251250.0 ; - RECT 124800.0 243150.0 126000.0 241950.0 ; - RECT 124800.0 253050.0 126000.0 251850.0 ; - RECT 122400.0 249900.0 121200.0 248700.0 ; - RECT 119400.0 247200.0 118200.0 246000.0 ; - RECT 120000.0 243750.0 121200.0 242550.0 ; - RECT 122400.0 252450.0 123600.0 251250.0 ; - RECT 123600.0 247200.0 122400.0 246000.0 ; - RECT 118200.0 247200.0 119400.0 246000.0 ; - RECT 121200.0 249900.0 122400.0 248700.0 ; - RECT 122400.0 247200.0 123600.0 246000.0 ; - RECT 115800.0 241050.0 130200.0 240150.0 ; - RECT 115800.0 254850.0 130200.0 253950.0 ; - RECT 136800.0 242550.0 138000.0 240600.0 ; - RECT 136800.0 254400.0 138000.0 252450.0 ; - RECT 132000.0 253050.0 133200.0 254850.0 ; - RECT 132000.0 243750.0 133200.0 240150.0 ; - RECT 134700.0 253050.0 135600.0 243750.0 ; - RECT 132000.0 243750.0 133200.0 242550.0 ; - RECT 134400.0 243750.0 135600.0 242550.0 ; - RECT 134400.0 243750.0 135600.0 242550.0 ; - RECT 132000.0 243750.0 133200.0 242550.0 ; - RECT 132000.0 253050.0 133200.0 251850.0 ; - RECT 134400.0 253050.0 135600.0 251850.0 ; - RECT 134400.0 253050.0 135600.0 251850.0 ; - RECT 132000.0 253050.0 133200.0 251850.0 ; - RECT 136800.0 243150.0 138000.0 241950.0 ; - RECT 136800.0 253050.0 138000.0 251850.0 ; - RECT 132600.0 248400.0 133800.0 247200.0 ; - RECT 132600.0 248400.0 133800.0 247200.0 ; - RECT 135150.0 248250.0 136050.0 247350.0 ; - RECT 130200.0 241050.0 139800.0 240150.0 ; - RECT 130200.0 254850.0 139800.0 253950.0 ; - RECT 102450.0 247200.0 103650.0 248400.0 ; - RECT 104400.0 249600.0 105600.0 250800.0 ; - RECT 121200.0 248700.0 120000.0 249900.0 ; - RECT 112800.0 266250.0 114000.0 268200.0 ; - RECT 112800.0 254400.0 114000.0 256350.0 ; - RECT 108000.0 255750.0 109200.0 253950.0 ; - RECT 108000.0 265050.0 109200.0 268650.0 ; - RECT 110700.0 255750.0 111600.0 265050.0 ; - RECT 108000.0 265050.0 109200.0 266250.0 ; - RECT 110400.0 265050.0 111600.0 266250.0 ; - RECT 110400.0 265050.0 111600.0 266250.0 ; - RECT 108000.0 265050.0 109200.0 266250.0 ; - RECT 108000.0 255750.0 109200.0 256950.0 ; - RECT 110400.0 255750.0 111600.0 256950.0 ; - RECT 110400.0 255750.0 111600.0 256950.0 ; - RECT 108000.0 255750.0 109200.0 256950.0 ; - RECT 112800.0 265650.0 114000.0 266850.0 ; - RECT 112800.0 255750.0 114000.0 256950.0 ; - RECT 108600.0 260400.0 109800.0 261600.0 ; - RECT 108600.0 260400.0 109800.0 261600.0 ; - RECT 111150.0 260550.0 112050.0 261450.0 ; - RECT 106200.0 267750.0 115800.0 268650.0 ; - RECT 106200.0 253950.0 115800.0 254850.0 ; - RECT 117600.0 256350.0 118800.0 253950.0 ; - RECT 117600.0 265050.0 118800.0 268650.0 ; - RECT 122400.0 265050.0 123600.0 268650.0 ; - RECT 124800.0 266250.0 126000.0 268200.0 ; - RECT 124800.0 254400.0 126000.0 256350.0 ; - RECT 117600.0 265050.0 118800.0 266250.0 ; - RECT 120000.0 265050.0 121200.0 266250.0 ; - RECT 120000.0 265050.0 121200.0 266250.0 ; - RECT 117600.0 265050.0 118800.0 266250.0 ; - RECT 120000.0 265050.0 121200.0 266250.0 ; - RECT 122400.0 265050.0 123600.0 266250.0 ; - RECT 122400.0 265050.0 123600.0 266250.0 ; - RECT 120000.0 265050.0 121200.0 266250.0 ; - RECT 117600.0 256350.0 118800.0 257550.0 ; - RECT 120000.0 256350.0 121200.0 257550.0 ; - RECT 120000.0 256350.0 121200.0 257550.0 ; - RECT 117600.0 256350.0 118800.0 257550.0 ; - RECT 120000.0 256350.0 121200.0 257550.0 ; - RECT 122400.0 256350.0 123600.0 257550.0 ; - RECT 122400.0 256350.0 123600.0 257550.0 ; - RECT 120000.0 256350.0 121200.0 257550.0 ; - RECT 124800.0 265650.0 126000.0 266850.0 ; - RECT 124800.0 255750.0 126000.0 256950.0 ; - RECT 122400.0 258900.0 121200.0 260100.0 ; - RECT 119400.0 261600.0 118200.0 262800.0 ; - RECT 120000.0 265050.0 121200.0 266250.0 ; - RECT 122400.0 256350.0 123600.0 257550.0 ; - RECT 123600.0 261600.0 122400.0 262800.0 ; - RECT 118200.0 261600.0 119400.0 262800.0 ; - RECT 121200.0 258900.0 122400.0 260100.0 ; - RECT 122400.0 261600.0 123600.0 262800.0 ; - RECT 115800.0 267750.0 130200.0 268650.0 ; - RECT 115800.0 253950.0 130200.0 254850.0 ; - RECT 136800.0 266250.0 138000.0 268200.0 ; - RECT 136800.0 254400.0 138000.0 256350.0 ; - RECT 132000.0 255750.0 133200.0 253950.0 ; - RECT 132000.0 265050.0 133200.0 268650.0 ; - RECT 134700.0 255750.0 135600.0 265050.0 ; - RECT 132000.0 265050.0 133200.0 266250.0 ; - RECT 134400.0 265050.0 135600.0 266250.0 ; - RECT 134400.0 265050.0 135600.0 266250.0 ; - RECT 132000.0 265050.0 133200.0 266250.0 ; - RECT 132000.0 255750.0 133200.0 256950.0 ; - RECT 134400.0 255750.0 135600.0 256950.0 ; - RECT 134400.0 255750.0 135600.0 256950.0 ; - RECT 132000.0 255750.0 133200.0 256950.0 ; - RECT 136800.0 265650.0 138000.0 266850.0 ; - RECT 136800.0 255750.0 138000.0 256950.0 ; - RECT 132600.0 260400.0 133800.0 261600.0 ; - RECT 132600.0 260400.0 133800.0 261600.0 ; - RECT 135150.0 260550.0 136050.0 261450.0 ; - RECT 130200.0 267750.0 139800.0 268650.0 ; - RECT 130200.0 253950.0 139800.0 254850.0 ; - RECT 102450.0 260400.0 103650.0 261600.0 ; - RECT 104400.0 258000.0 105600.0 259200.0 ; - RECT 121200.0 258900.0 120000.0 260100.0 ; - RECT 112800.0 270150.0 114000.0 268200.0 ; - RECT 112800.0 282000.0 114000.0 280050.0 ; - RECT 108000.0 280650.0 109200.0 282450.0 ; - RECT 108000.0 271350.0 109200.0 267750.0 ; - RECT 110700.0 280650.0 111600.0 271350.0 ; - RECT 108000.0 271350.0 109200.0 270150.0 ; - RECT 110400.0 271350.0 111600.0 270150.0 ; - RECT 110400.0 271350.0 111600.0 270150.0 ; - RECT 108000.0 271350.0 109200.0 270150.0 ; - RECT 108000.0 280650.0 109200.0 279450.0 ; - RECT 110400.0 280650.0 111600.0 279450.0 ; - RECT 110400.0 280650.0 111600.0 279450.0 ; - RECT 108000.0 280650.0 109200.0 279450.0 ; - RECT 112800.0 270750.0 114000.0 269550.0 ; - RECT 112800.0 280650.0 114000.0 279450.0 ; - RECT 108600.0 276000.0 109800.0 274800.0 ; - RECT 108600.0 276000.0 109800.0 274800.0 ; - RECT 111150.0 275850.0 112050.0 274950.0 ; - RECT 106200.0 268650.0 115800.0 267750.0 ; - RECT 106200.0 282450.0 115800.0 281550.0 ; - RECT 117600.0 280050.0 118800.0 282450.0 ; - RECT 117600.0 271350.0 118800.0 267750.0 ; - RECT 122400.0 271350.0 123600.0 267750.0 ; - RECT 124800.0 270150.0 126000.0 268200.0 ; - RECT 124800.0 282000.0 126000.0 280050.0 ; - RECT 117600.0 271350.0 118800.0 270150.0 ; - RECT 120000.0 271350.0 121200.0 270150.0 ; - RECT 120000.0 271350.0 121200.0 270150.0 ; - RECT 117600.0 271350.0 118800.0 270150.0 ; - RECT 120000.0 271350.0 121200.0 270150.0 ; - RECT 122400.0 271350.0 123600.0 270150.0 ; - RECT 122400.0 271350.0 123600.0 270150.0 ; - RECT 120000.0 271350.0 121200.0 270150.0 ; - RECT 117600.0 280050.0 118800.0 278850.0 ; - RECT 120000.0 280050.0 121200.0 278850.0 ; - RECT 120000.0 280050.0 121200.0 278850.0 ; - RECT 117600.0 280050.0 118800.0 278850.0 ; - RECT 120000.0 280050.0 121200.0 278850.0 ; - RECT 122400.0 280050.0 123600.0 278850.0 ; - RECT 122400.0 280050.0 123600.0 278850.0 ; - RECT 120000.0 280050.0 121200.0 278850.0 ; - RECT 124800.0 270750.0 126000.0 269550.0 ; - RECT 124800.0 280650.0 126000.0 279450.0 ; - RECT 122400.0 277500.0 121200.0 276300.0 ; - RECT 119400.0 274800.0 118200.0 273600.0 ; - RECT 120000.0 271350.0 121200.0 270150.0 ; - RECT 122400.0 280050.0 123600.0 278850.0 ; - RECT 123600.0 274800.0 122400.0 273600.0 ; - RECT 118200.0 274800.0 119400.0 273600.0 ; - RECT 121200.0 277500.0 122400.0 276300.0 ; - RECT 122400.0 274800.0 123600.0 273600.0 ; - RECT 115800.0 268650.0 130200.0 267750.0 ; - RECT 115800.0 282450.0 130200.0 281550.0 ; - RECT 136800.0 270150.0 138000.0 268200.0 ; - RECT 136800.0 282000.0 138000.0 280050.0 ; - RECT 132000.0 280650.0 133200.0 282450.0 ; - RECT 132000.0 271350.0 133200.0 267750.0 ; - RECT 134700.0 280650.0 135600.0 271350.0 ; - RECT 132000.0 271350.0 133200.0 270150.0 ; - RECT 134400.0 271350.0 135600.0 270150.0 ; - RECT 134400.0 271350.0 135600.0 270150.0 ; - RECT 132000.0 271350.0 133200.0 270150.0 ; - RECT 132000.0 280650.0 133200.0 279450.0 ; - RECT 134400.0 280650.0 135600.0 279450.0 ; - RECT 134400.0 280650.0 135600.0 279450.0 ; - RECT 132000.0 280650.0 133200.0 279450.0 ; - RECT 136800.0 270750.0 138000.0 269550.0 ; - RECT 136800.0 280650.0 138000.0 279450.0 ; - RECT 132600.0 276000.0 133800.0 274800.0 ; - RECT 132600.0 276000.0 133800.0 274800.0 ; - RECT 135150.0 275850.0 136050.0 274950.0 ; - RECT 130200.0 268650.0 139800.0 267750.0 ; - RECT 130200.0 282450.0 139800.0 281550.0 ; - RECT 102450.0 274800.0 103650.0 276000.0 ; - RECT 104400.0 277200.0 105600.0 278400.0 ; - RECT 121200.0 276300.0 120000.0 277500.0 ; - RECT 112800.0 293850.0 114000.0 295800.0 ; - RECT 112800.0 282000.0 114000.0 283950.0 ; - RECT 108000.0 283350.0 109200.0 281550.0 ; - RECT 108000.0 292650.0 109200.0 296250.0 ; - RECT 110700.0 283350.0 111600.0 292650.0 ; - RECT 108000.0 292650.0 109200.0 293850.0 ; - RECT 110400.0 292650.0 111600.0 293850.0 ; - RECT 110400.0 292650.0 111600.0 293850.0 ; - RECT 108000.0 292650.0 109200.0 293850.0 ; - RECT 108000.0 283350.0 109200.0 284550.0 ; - RECT 110400.0 283350.0 111600.0 284550.0 ; - RECT 110400.0 283350.0 111600.0 284550.0 ; - RECT 108000.0 283350.0 109200.0 284550.0 ; - RECT 112800.0 293250.0 114000.0 294450.0 ; - RECT 112800.0 283350.0 114000.0 284550.0 ; - RECT 108600.0 288000.0 109800.0 289200.0 ; - RECT 108600.0 288000.0 109800.0 289200.0 ; - RECT 111150.0 288150.0 112050.0 289050.0 ; - RECT 106200.0 295350.0 115800.0 296250.0 ; - RECT 106200.0 281550.0 115800.0 282450.0 ; - RECT 117600.0 283950.0 118800.0 281550.0 ; - RECT 117600.0 292650.0 118800.0 296250.0 ; - RECT 122400.0 292650.0 123600.0 296250.0 ; - RECT 124800.0 293850.0 126000.0 295800.0 ; - RECT 124800.0 282000.0 126000.0 283950.0 ; - RECT 117600.0 292650.0 118800.0 293850.0 ; - RECT 120000.0 292650.0 121200.0 293850.0 ; - RECT 120000.0 292650.0 121200.0 293850.0 ; - RECT 117600.0 292650.0 118800.0 293850.0 ; - RECT 120000.0 292650.0 121200.0 293850.0 ; - RECT 122400.0 292650.0 123600.0 293850.0 ; - RECT 122400.0 292650.0 123600.0 293850.0 ; - RECT 120000.0 292650.0 121200.0 293850.0 ; - RECT 117600.0 283950.0 118800.0 285150.0 ; - RECT 120000.0 283950.0 121200.0 285150.0 ; - RECT 120000.0 283950.0 121200.0 285150.0 ; - RECT 117600.0 283950.0 118800.0 285150.0 ; - RECT 120000.0 283950.0 121200.0 285150.0 ; - RECT 122400.0 283950.0 123600.0 285150.0 ; - RECT 122400.0 283950.0 123600.0 285150.0 ; - RECT 120000.0 283950.0 121200.0 285150.0 ; - RECT 124800.0 293250.0 126000.0 294450.0 ; - RECT 124800.0 283350.0 126000.0 284550.0 ; - RECT 122400.0 286500.0 121200.0 287700.0 ; - RECT 119400.0 289200.0 118200.0 290400.0 ; - RECT 120000.0 292650.0 121200.0 293850.0 ; - RECT 122400.0 283950.0 123600.0 285150.0 ; - RECT 123600.0 289200.0 122400.0 290400.0 ; - RECT 118200.0 289200.0 119400.0 290400.0 ; - RECT 121200.0 286500.0 122400.0 287700.0 ; - RECT 122400.0 289200.0 123600.0 290400.0 ; - RECT 115800.0 295350.0 130200.0 296250.0 ; - RECT 115800.0 281550.0 130200.0 282450.0 ; - RECT 136800.0 293850.0 138000.0 295800.0 ; - RECT 136800.0 282000.0 138000.0 283950.0 ; - RECT 132000.0 283350.0 133200.0 281550.0 ; - RECT 132000.0 292650.0 133200.0 296250.0 ; - RECT 134700.0 283350.0 135600.0 292650.0 ; - RECT 132000.0 292650.0 133200.0 293850.0 ; - RECT 134400.0 292650.0 135600.0 293850.0 ; - RECT 134400.0 292650.0 135600.0 293850.0 ; - RECT 132000.0 292650.0 133200.0 293850.0 ; - RECT 132000.0 283350.0 133200.0 284550.0 ; - RECT 134400.0 283350.0 135600.0 284550.0 ; - RECT 134400.0 283350.0 135600.0 284550.0 ; - RECT 132000.0 283350.0 133200.0 284550.0 ; - RECT 136800.0 293250.0 138000.0 294450.0 ; - RECT 136800.0 283350.0 138000.0 284550.0 ; - RECT 132600.0 288000.0 133800.0 289200.0 ; - RECT 132600.0 288000.0 133800.0 289200.0 ; - RECT 135150.0 288150.0 136050.0 289050.0 ; - RECT 130200.0 295350.0 139800.0 296250.0 ; - RECT 130200.0 281550.0 139800.0 282450.0 ; - RECT 102450.0 288000.0 103650.0 289200.0 ; - RECT 104400.0 285600.0 105600.0 286800.0 ; - RECT 121200.0 286500.0 120000.0 287700.0 ; - RECT 112800.0 297750.0 114000.0 295800.0 ; - RECT 112800.0 309600.0 114000.0 307650.0 ; - RECT 108000.0 308250.0 109200.0 310050.0 ; - RECT 108000.0 298950.0 109200.0 295350.0 ; - RECT 110700.0 308250.0 111600.0 298950.0 ; - RECT 108000.0 298950.0 109200.0 297750.0 ; - RECT 110400.0 298950.0 111600.0 297750.0 ; - RECT 110400.0 298950.0 111600.0 297750.0 ; - RECT 108000.0 298950.0 109200.0 297750.0 ; - RECT 108000.0 308250.0 109200.0 307050.0 ; - RECT 110400.0 308250.0 111600.0 307050.0 ; - RECT 110400.0 308250.0 111600.0 307050.0 ; - RECT 108000.0 308250.0 109200.0 307050.0 ; - RECT 112800.0 298350.0 114000.0 297150.0 ; - RECT 112800.0 308250.0 114000.0 307050.0 ; - RECT 108600.0 303600.0 109800.0 302400.0 ; - RECT 108600.0 303600.0 109800.0 302400.0 ; - RECT 111150.0 303450.0 112050.0 302550.0 ; - RECT 106200.0 296250.0 115800.0 295350.0 ; - RECT 106200.0 310050.0 115800.0 309150.0 ; - RECT 117600.0 307650.0 118800.0 310050.0 ; - RECT 117600.0 298950.0 118800.0 295350.0 ; - RECT 122400.0 298950.0 123600.0 295350.0 ; - RECT 124800.0 297750.0 126000.0 295800.0 ; - RECT 124800.0 309600.0 126000.0 307650.0 ; - RECT 117600.0 298950.0 118800.0 297750.0 ; - RECT 120000.0 298950.0 121200.0 297750.0 ; - RECT 120000.0 298950.0 121200.0 297750.0 ; - RECT 117600.0 298950.0 118800.0 297750.0 ; - RECT 120000.0 298950.0 121200.0 297750.0 ; - RECT 122400.0 298950.0 123600.0 297750.0 ; - RECT 122400.0 298950.0 123600.0 297750.0 ; - RECT 120000.0 298950.0 121200.0 297750.0 ; - RECT 117600.0 307650.0 118800.0 306450.0 ; - RECT 120000.0 307650.0 121200.0 306450.0 ; - RECT 120000.0 307650.0 121200.0 306450.0 ; - RECT 117600.0 307650.0 118800.0 306450.0 ; - RECT 120000.0 307650.0 121200.0 306450.0 ; - RECT 122400.0 307650.0 123600.0 306450.0 ; - RECT 122400.0 307650.0 123600.0 306450.0 ; - RECT 120000.0 307650.0 121200.0 306450.0 ; - RECT 124800.0 298350.0 126000.0 297150.0 ; - RECT 124800.0 308250.0 126000.0 307050.0 ; - RECT 122400.0 305100.0 121200.0 303900.0 ; - RECT 119400.0 302400.0 118200.0 301200.0 ; - RECT 120000.0 298950.0 121200.0 297750.0 ; - RECT 122400.0 307650.0 123600.0 306450.0 ; - RECT 123600.0 302400.0 122400.0 301200.0 ; - RECT 118200.0 302400.0 119400.0 301200.0 ; - RECT 121200.0 305100.0 122400.0 303900.0 ; - RECT 122400.0 302400.0 123600.0 301200.0 ; - RECT 115800.0 296250.0 130200.0 295350.0 ; - RECT 115800.0 310050.0 130200.0 309150.0 ; - RECT 136800.0 297750.0 138000.0 295800.0 ; - RECT 136800.0 309600.0 138000.0 307650.0 ; - RECT 132000.0 308250.0 133200.0 310050.0 ; - RECT 132000.0 298950.0 133200.0 295350.0 ; - RECT 134700.0 308250.0 135600.0 298950.0 ; - RECT 132000.0 298950.0 133200.0 297750.0 ; - RECT 134400.0 298950.0 135600.0 297750.0 ; - RECT 134400.0 298950.0 135600.0 297750.0 ; - RECT 132000.0 298950.0 133200.0 297750.0 ; - RECT 132000.0 308250.0 133200.0 307050.0 ; - RECT 134400.0 308250.0 135600.0 307050.0 ; - RECT 134400.0 308250.0 135600.0 307050.0 ; - RECT 132000.0 308250.0 133200.0 307050.0 ; - RECT 136800.0 298350.0 138000.0 297150.0 ; - RECT 136800.0 308250.0 138000.0 307050.0 ; - RECT 132600.0 303600.0 133800.0 302400.0 ; - RECT 132600.0 303600.0 133800.0 302400.0 ; - RECT 135150.0 303450.0 136050.0 302550.0 ; - RECT 130200.0 296250.0 139800.0 295350.0 ; - RECT 130200.0 310050.0 139800.0 309150.0 ; - RECT 102450.0 302400.0 103650.0 303600.0 ; - RECT 104400.0 304800.0 105600.0 306000.0 ; - RECT 121200.0 303900.0 120000.0 305100.0 ; - RECT 112800.0 321450.0 114000.0 323400.0 ; - RECT 112800.0 309600.0 114000.0 311550.0 ; - RECT 108000.0 310950.0 109200.0 309150.0 ; - RECT 108000.0 320250.0 109200.0 323850.0 ; - RECT 110700.0 310950.0 111600.0 320250.0 ; - RECT 108000.0 320250.0 109200.0 321450.0 ; - RECT 110400.0 320250.0 111600.0 321450.0 ; - RECT 110400.0 320250.0 111600.0 321450.0 ; - RECT 108000.0 320250.0 109200.0 321450.0 ; - RECT 108000.0 310950.0 109200.0 312150.0 ; - RECT 110400.0 310950.0 111600.0 312150.0 ; - RECT 110400.0 310950.0 111600.0 312150.0 ; - RECT 108000.0 310950.0 109200.0 312150.0 ; - RECT 112800.0 320850.0 114000.0 322050.0 ; - RECT 112800.0 310950.0 114000.0 312150.0 ; - RECT 108600.0 315600.0 109800.0 316800.0 ; - RECT 108600.0 315600.0 109800.0 316800.0 ; - RECT 111150.0 315750.0 112050.0 316650.0 ; - RECT 106200.0 322950.0 115800.0 323850.0 ; - RECT 106200.0 309150.0 115800.0 310050.0 ; - RECT 117600.0 311550.0 118800.0 309150.0 ; - RECT 117600.0 320250.0 118800.0 323850.0 ; - RECT 122400.0 320250.0 123600.0 323850.0 ; - RECT 124800.0 321450.0 126000.0 323400.0 ; - RECT 124800.0 309600.0 126000.0 311550.0 ; - RECT 117600.0 320250.0 118800.0 321450.0 ; - RECT 120000.0 320250.0 121200.0 321450.0 ; - RECT 120000.0 320250.0 121200.0 321450.0 ; - RECT 117600.0 320250.0 118800.0 321450.0 ; - RECT 120000.0 320250.0 121200.0 321450.0 ; - RECT 122400.0 320250.0 123600.0 321450.0 ; - RECT 122400.0 320250.0 123600.0 321450.0 ; - RECT 120000.0 320250.0 121200.0 321450.0 ; - RECT 117600.0 311550.0 118800.0 312750.0 ; - RECT 120000.0 311550.0 121200.0 312750.0 ; - RECT 120000.0 311550.0 121200.0 312750.0 ; - RECT 117600.0 311550.0 118800.0 312750.0 ; - RECT 120000.0 311550.0 121200.0 312750.0 ; - RECT 122400.0 311550.0 123600.0 312750.0 ; - RECT 122400.0 311550.0 123600.0 312750.0 ; - RECT 120000.0 311550.0 121200.0 312750.0 ; - RECT 124800.0 320850.0 126000.0 322050.0 ; - RECT 124800.0 310950.0 126000.0 312150.0 ; - RECT 122400.0 314100.0 121200.0 315300.0 ; - RECT 119400.0 316800.0 118200.0 318000.0 ; - RECT 120000.0 320250.0 121200.0 321450.0 ; - RECT 122400.0 311550.0 123600.0 312750.0 ; - RECT 123600.0 316800.0 122400.0 318000.0 ; - RECT 118200.0 316800.0 119400.0 318000.0 ; - RECT 121200.0 314100.0 122400.0 315300.0 ; - RECT 122400.0 316800.0 123600.0 318000.0 ; - RECT 115800.0 322950.0 130200.0 323850.0 ; - RECT 115800.0 309150.0 130200.0 310050.0 ; - RECT 136800.0 321450.0 138000.0 323400.0 ; - RECT 136800.0 309600.0 138000.0 311550.0 ; - RECT 132000.0 310950.0 133200.0 309150.0 ; - RECT 132000.0 320250.0 133200.0 323850.0 ; - RECT 134700.0 310950.0 135600.0 320250.0 ; - RECT 132000.0 320250.0 133200.0 321450.0 ; - RECT 134400.0 320250.0 135600.0 321450.0 ; - RECT 134400.0 320250.0 135600.0 321450.0 ; - RECT 132000.0 320250.0 133200.0 321450.0 ; - RECT 132000.0 310950.0 133200.0 312150.0 ; - RECT 134400.0 310950.0 135600.0 312150.0 ; - RECT 134400.0 310950.0 135600.0 312150.0 ; - RECT 132000.0 310950.0 133200.0 312150.0 ; - RECT 136800.0 320850.0 138000.0 322050.0 ; - RECT 136800.0 310950.0 138000.0 312150.0 ; - RECT 132600.0 315600.0 133800.0 316800.0 ; - RECT 132600.0 315600.0 133800.0 316800.0 ; - RECT 135150.0 315750.0 136050.0 316650.0 ; - RECT 130200.0 322950.0 139800.0 323850.0 ; - RECT 130200.0 309150.0 139800.0 310050.0 ; - RECT 102450.0 315600.0 103650.0 316800.0 ; - RECT 104400.0 313200.0 105600.0 314400.0 ; - RECT 121200.0 314100.0 120000.0 315300.0 ; - RECT 112800.0 325350.0 114000.0 323400.0 ; - RECT 112800.0 337200.0 114000.0 335250.0 ; - RECT 108000.0 335850.0 109200.0 337650.0 ; - RECT 108000.0 326550.0 109200.0 322950.0 ; - RECT 110700.0 335850.0 111600.0 326550.0 ; - RECT 108000.0 326550.0 109200.0 325350.0 ; - RECT 110400.0 326550.0 111600.0 325350.0 ; - RECT 110400.0 326550.0 111600.0 325350.0 ; - RECT 108000.0 326550.0 109200.0 325350.0 ; - RECT 108000.0 335850.0 109200.0 334650.0 ; - RECT 110400.0 335850.0 111600.0 334650.0 ; - RECT 110400.0 335850.0 111600.0 334650.0 ; - RECT 108000.0 335850.0 109200.0 334650.0 ; - RECT 112800.0 325950.0 114000.0 324750.0 ; - RECT 112800.0 335850.0 114000.0 334650.0 ; - RECT 108600.0 331200.0 109800.0 330000.0 ; - RECT 108600.0 331200.0 109800.0 330000.0 ; - RECT 111150.0 331050.0 112050.0 330150.0 ; - RECT 106200.0 323850.0 115800.0 322950.0 ; - RECT 106200.0 337650.0 115800.0 336750.0 ; - RECT 117600.0 335250.0 118800.0 337650.0 ; - RECT 117600.0 326550.0 118800.0 322950.0 ; - RECT 122400.0 326550.0 123600.0 322950.0 ; - RECT 124800.0 325350.0 126000.0 323400.0 ; - RECT 124800.0 337200.0 126000.0 335250.0 ; - RECT 117600.0 326550.0 118800.0 325350.0 ; - RECT 120000.0 326550.0 121200.0 325350.0 ; - RECT 120000.0 326550.0 121200.0 325350.0 ; - RECT 117600.0 326550.0 118800.0 325350.0 ; - RECT 120000.0 326550.0 121200.0 325350.0 ; - RECT 122400.0 326550.0 123600.0 325350.0 ; - RECT 122400.0 326550.0 123600.0 325350.0 ; - RECT 120000.0 326550.0 121200.0 325350.0 ; - RECT 117600.0 335250.0 118800.0 334050.0 ; - RECT 120000.0 335250.0 121200.0 334050.0 ; - RECT 120000.0 335250.0 121200.0 334050.0 ; - RECT 117600.0 335250.0 118800.0 334050.0 ; - RECT 120000.0 335250.0 121200.0 334050.0 ; - RECT 122400.0 335250.0 123600.0 334050.0 ; - RECT 122400.0 335250.0 123600.0 334050.0 ; - RECT 120000.0 335250.0 121200.0 334050.0 ; - RECT 124800.0 325950.0 126000.0 324750.0 ; - RECT 124800.0 335850.0 126000.0 334650.0 ; - RECT 122400.0 332700.0 121200.0 331500.0 ; - RECT 119400.0 330000.0 118200.0 328800.0 ; - RECT 120000.0 326550.0 121200.0 325350.0 ; - RECT 122400.0 335250.0 123600.0 334050.0 ; - RECT 123600.0 330000.0 122400.0 328800.0 ; - RECT 118200.0 330000.0 119400.0 328800.0 ; - RECT 121200.0 332700.0 122400.0 331500.0 ; - RECT 122400.0 330000.0 123600.0 328800.0 ; - RECT 115800.0 323850.0 130200.0 322950.0 ; - RECT 115800.0 337650.0 130200.0 336750.0 ; - RECT 136800.0 325350.0 138000.0 323400.0 ; - RECT 136800.0 337200.0 138000.0 335250.0 ; - RECT 132000.0 335850.0 133200.0 337650.0 ; - RECT 132000.0 326550.0 133200.0 322950.0 ; - RECT 134700.0 335850.0 135600.0 326550.0 ; - RECT 132000.0 326550.0 133200.0 325350.0 ; - RECT 134400.0 326550.0 135600.0 325350.0 ; - RECT 134400.0 326550.0 135600.0 325350.0 ; - RECT 132000.0 326550.0 133200.0 325350.0 ; - RECT 132000.0 335850.0 133200.0 334650.0 ; - RECT 134400.0 335850.0 135600.0 334650.0 ; - RECT 134400.0 335850.0 135600.0 334650.0 ; - RECT 132000.0 335850.0 133200.0 334650.0 ; - RECT 136800.0 325950.0 138000.0 324750.0 ; - RECT 136800.0 335850.0 138000.0 334650.0 ; - RECT 132600.0 331200.0 133800.0 330000.0 ; - RECT 132600.0 331200.0 133800.0 330000.0 ; - RECT 135150.0 331050.0 136050.0 330150.0 ; - RECT 130200.0 323850.0 139800.0 322950.0 ; - RECT 130200.0 337650.0 139800.0 336750.0 ; - RECT 102450.0 330000.0 103650.0 331200.0 ; - RECT 104400.0 332400.0 105600.0 333600.0 ; - RECT 121200.0 331500.0 120000.0 332700.0 ; - RECT 112800.0 349050.0 114000.0 351000.0 ; - RECT 112800.0 337200.0 114000.0 339150.0 ; - RECT 108000.0 338550.0 109200.0 336750.0 ; - RECT 108000.0 347850.0 109200.0 351450.0 ; - RECT 110700.0 338550.0 111600.0 347850.0 ; - RECT 108000.0 347850.0 109200.0 349050.0 ; - RECT 110400.0 347850.0 111600.0 349050.0 ; - RECT 110400.0 347850.0 111600.0 349050.0 ; - RECT 108000.0 347850.0 109200.0 349050.0 ; - RECT 108000.0 338550.0 109200.0 339750.0 ; - RECT 110400.0 338550.0 111600.0 339750.0 ; - RECT 110400.0 338550.0 111600.0 339750.0 ; - RECT 108000.0 338550.0 109200.0 339750.0 ; - RECT 112800.0 348450.0 114000.0 349650.0 ; - RECT 112800.0 338550.0 114000.0 339750.0 ; - RECT 108600.0 343200.0 109800.0 344400.0 ; - RECT 108600.0 343200.0 109800.0 344400.0 ; - RECT 111150.0 343350.0 112050.0 344250.0 ; - RECT 106200.0 350550.0 115800.0 351450.0 ; - RECT 106200.0 336750.0 115800.0 337650.0 ; - RECT 117600.0 339150.0 118800.0 336750.0 ; - RECT 117600.0 347850.0 118800.0 351450.0 ; - RECT 122400.0 347850.0 123600.0 351450.0 ; - RECT 124800.0 349050.0 126000.0 351000.0 ; - RECT 124800.0 337200.0 126000.0 339150.0 ; - RECT 117600.0 347850.0 118800.0 349050.0 ; - RECT 120000.0 347850.0 121200.0 349050.0 ; - RECT 120000.0 347850.0 121200.0 349050.0 ; - RECT 117600.0 347850.0 118800.0 349050.0 ; - RECT 120000.0 347850.0 121200.0 349050.0 ; - RECT 122400.0 347850.0 123600.0 349050.0 ; - RECT 122400.0 347850.0 123600.0 349050.0 ; - RECT 120000.0 347850.0 121200.0 349050.0 ; - RECT 117600.0 339150.0 118800.0 340350.0 ; - RECT 120000.0 339150.0 121200.0 340350.0 ; - RECT 120000.0 339150.0 121200.0 340350.0 ; - RECT 117600.0 339150.0 118800.0 340350.0 ; - RECT 120000.0 339150.0 121200.0 340350.0 ; - RECT 122400.0 339150.0 123600.0 340350.0 ; - RECT 122400.0 339150.0 123600.0 340350.0 ; - RECT 120000.0 339150.0 121200.0 340350.0 ; - RECT 124800.0 348450.0 126000.0 349650.0 ; - RECT 124800.0 338550.0 126000.0 339750.0 ; - RECT 122400.0 341700.0 121200.0 342900.0 ; - RECT 119400.0 344400.0 118200.0 345600.0 ; - RECT 120000.0 347850.0 121200.0 349050.0 ; - RECT 122400.0 339150.0 123600.0 340350.0 ; - RECT 123600.0 344400.0 122400.0 345600.0 ; - RECT 118200.0 344400.0 119400.0 345600.0 ; - RECT 121200.0 341700.0 122400.0 342900.0 ; - RECT 122400.0 344400.0 123600.0 345600.0 ; - RECT 115800.0 350550.0 130200.0 351450.0 ; - RECT 115800.0 336750.0 130200.0 337650.0 ; - RECT 136800.0 349050.0 138000.0 351000.0 ; - RECT 136800.0 337200.0 138000.0 339150.0 ; - RECT 132000.0 338550.0 133200.0 336750.0 ; - RECT 132000.0 347850.0 133200.0 351450.0 ; - RECT 134700.0 338550.0 135600.0 347850.0 ; - RECT 132000.0 347850.0 133200.0 349050.0 ; - RECT 134400.0 347850.0 135600.0 349050.0 ; - RECT 134400.0 347850.0 135600.0 349050.0 ; - RECT 132000.0 347850.0 133200.0 349050.0 ; - RECT 132000.0 338550.0 133200.0 339750.0 ; - RECT 134400.0 338550.0 135600.0 339750.0 ; - RECT 134400.0 338550.0 135600.0 339750.0 ; - RECT 132000.0 338550.0 133200.0 339750.0 ; - RECT 136800.0 348450.0 138000.0 349650.0 ; - RECT 136800.0 338550.0 138000.0 339750.0 ; - RECT 132600.0 343200.0 133800.0 344400.0 ; - RECT 132600.0 343200.0 133800.0 344400.0 ; - RECT 135150.0 343350.0 136050.0 344250.0 ; - RECT 130200.0 350550.0 139800.0 351450.0 ; - RECT 130200.0 336750.0 139800.0 337650.0 ; - RECT 102450.0 343200.0 103650.0 344400.0 ; - RECT 104400.0 340800.0 105600.0 342000.0 ; - RECT 121200.0 341700.0 120000.0 342900.0 ; - RECT 112800.0 352950.0 114000.0 351000.0 ; - RECT 112800.0 364800.0 114000.0 362850.0 ; - RECT 108000.0 363450.0 109200.0 365250.0 ; - RECT 108000.0 354150.0 109200.0 350550.0 ; - RECT 110700.0 363450.0 111600.0 354150.0 ; - RECT 108000.0 354150.0 109200.0 352950.0 ; - RECT 110400.0 354150.0 111600.0 352950.0 ; - RECT 110400.0 354150.0 111600.0 352950.0 ; - RECT 108000.0 354150.0 109200.0 352950.0 ; - RECT 108000.0 363450.0 109200.0 362250.0 ; - RECT 110400.0 363450.0 111600.0 362250.0 ; - RECT 110400.0 363450.0 111600.0 362250.0 ; - RECT 108000.0 363450.0 109200.0 362250.0 ; - RECT 112800.0 353550.0 114000.0 352350.0 ; - RECT 112800.0 363450.0 114000.0 362250.0 ; - RECT 108600.0 358800.0 109800.0 357600.0 ; - RECT 108600.0 358800.0 109800.0 357600.0 ; - RECT 111150.0 358650.0 112050.0 357750.0 ; - RECT 106200.0 351450.0 115800.0 350550.0 ; - RECT 106200.0 365250.0 115800.0 364350.0 ; - RECT 117600.0 362850.0 118800.0 365250.0 ; - RECT 117600.0 354150.0 118800.0 350550.0 ; - RECT 122400.0 354150.0 123600.0 350550.0 ; - RECT 124800.0 352950.0 126000.0 351000.0 ; - RECT 124800.0 364800.0 126000.0 362850.0 ; - RECT 117600.0 354150.0 118800.0 352950.0 ; - RECT 120000.0 354150.0 121200.0 352950.0 ; - RECT 120000.0 354150.0 121200.0 352950.0 ; - RECT 117600.0 354150.0 118800.0 352950.0 ; - RECT 120000.0 354150.0 121200.0 352950.0 ; - RECT 122400.0 354150.0 123600.0 352950.0 ; - RECT 122400.0 354150.0 123600.0 352950.0 ; - RECT 120000.0 354150.0 121200.0 352950.0 ; - RECT 117600.0 362850.0 118800.0 361650.0 ; - RECT 120000.0 362850.0 121200.0 361650.0 ; - RECT 120000.0 362850.0 121200.0 361650.0 ; - RECT 117600.0 362850.0 118800.0 361650.0 ; - RECT 120000.0 362850.0 121200.0 361650.0 ; - RECT 122400.0 362850.0 123600.0 361650.0 ; - RECT 122400.0 362850.0 123600.0 361650.0 ; - RECT 120000.0 362850.0 121200.0 361650.0 ; - RECT 124800.0 353550.0 126000.0 352350.0 ; - RECT 124800.0 363450.0 126000.0 362250.0 ; - RECT 122400.0 360300.0 121200.0 359100.0 ; - RECT 119400.0 357600.0 118200.0 356400.0 ; - RECT 120000.0 354150.0 121200.0 352950.0 ; - RECT 122400.0 362850.0 123600.0 361650.0 ; - RECT 123600.0 357600.0 122400.0 356400.0 ; - RECT 118200.0 357600.0 119400.0 356400.0 ; - RECT 121200.0 360300.0 122400.0 359100.0 ; - RECT 122400.0 357600.0 123600.0 356400.0 ; - RECT 115800.0 351450.0 130200.0 350550.0 ; - RECT 115800.0 365250.0 130200.0 364350.0 ; - RECT 136800.0 352950.0 138000.0 351000.0 ; - RECT 136800.0 364800.0 138000.0 362850.0 ; - RECT 132000.0 363450.0 133200.0 365250.0 ; - RECT 132000.0 354150.0 133200.0 350550.0 ; - RECT 134700.0 363450.0 135600.0 354150.0 ; - RECT 132000.0 354150.0 133200.0 352950.0 ; - RECT 134400.0 354150.0 135600.0 352950.0 ; - RECT 134400.0 354150.0 135600.0 352950.0 ; - RECT 132000.0 354150.0 133200.0 352950.0 ; - RECT 132000.0 363450.0 133200.0 362250.0 ; - RECT 134400.0 363450.0 135600.0 362250.0 ; - RECT 134400.0 363450.0 135600.0 362250.0 ; - RECT 132000.0 363450.0 133200.0 362250.0 ; - RECT 136800.0 353550.0 138000.0 352350.0 ; - RECT 136800.0 363450.0 138000.0 362250.0 ; - RECT 132600.0 358800.0 133800.0 357600.0 ; - RECT 132600.0 358800.0 133800.0 357600.0 ; - RECT 135150.0 358650.0 136050.0 357750.0 ; - RECT 130200.0 351450.0 139800.0 350550.0 ; - RECT 130200.0 365250.0 139800.0 364350.0 ; - RECT 102450.0 357600.0 103650.0 358800.0 ; - RECT 104400.0 360000.0 105600.0 361200.0 ; - RECT 121200.0 359100.0 120000.0 360300.0 ; - RECT 112800.0 376650.0 114000.0 378600.0 ; - RECT 112800.0 364800.0 114000.0 366750.0 ; - RECT 108000.0 366150.0 109200.0 364350.0 ; - RECT 108000.0 375450.0 109200.0 379050.0 ; - RECT 110700.0 366150.0 111600.0 375450.0 ; - RECT 108000.0 375450.0 109200.0 376650.0 ; - RECT 110400.0 375450.0 111600.0 376650.0 ; - RECT 110400.0 375450.0 111600.0 376650.0 ; - RECT 108000.0 375450.0 109200.0 376650.0 ; - RECT 108000.0 366150.0 109200.0 367350.0 ; - RECT 110400.0 366150.0 111600.0 367350.0 ; - RECT 110400.0 366150.0 111600.0 367350.0 ; - RECT 108000.0 366150.0 109200.0 367350.0 ; - RECT 112800.0 376050.0 114000.0 377250.0 ; - RECT 112800.0 366150.0 114000.0 367350.0 ; - RECT 108600.0 370800.0 109800.0 372000.0 ; - RECT 108600.0 370800.0 109800.0 372000.0 ; - RECT 111150.0 370950.0 112050.0 371850.0 ; - RECT 106200.0 378150.0 115800.0 379050.0 ; - RECT 106200.0 364350.0 115800.0 365250.0 ; - RECT 117600.0 366750.0 118800.0 364350.0 ; - RECT 117600.0 375450.0 118800.0 379050.0 ; - RECT 122400.0 375450.0 123600.0 379050.0 ; - RECT 124800.0 376650.0 126000.0 378600.0 ; - RECT 124800.0 364800.0 126000.0 366750.0 ; - RECT 117600.0 375450.0 118800.0 376650.0 ; - RECT 120000.0 375450.0 121200.0 376650.0 ; - RECT 120000.0 375450.0 121200.0 376650.0 ; - RECT 117600.0 375450.0 118800.0 376650.0 ; - RECT 120000.0 375450.0 121200.0 376650.0 ; - RECT 122400.0 375450.0 123600.0 376650.0 ; - RECT 122400.0 375450.0 123600.0 376650.0 ; - RECT 120000.0 375450.0 121200.0 376650.0 ; - RECT 117600.0 366750.0 118800.0 367950.0 ; - RECT 120000.0 366750.0 121200.0 367950.0 ; - RECT 120000.0 366750.0 121200.0 367950.0 ; - RECT 117600.0 366750.0 118800.0 367950.0 ; - RECT 120000.0 366750.0 121200.0 367950.0 ; - RECT 122400.0 366750.0 123600.0 367950.0 ; - RECT 122400.0 366750.0 123600.0 367950.0 ; - RECT 120000.0 366750.0 121200.0 367950.0 ; - RECT 124800.0 376050.0 126000.0 377250.0 ; - RECT 124800.0 366150.0 126000.0 367350.0 ; - RECT 122400.0 369300.0 121200.0 370500.0 ; - RECT 119400.0 372000.0 118200.0 373200.0 ; - RECT 120000.0 375450.0 121200.0 376650.0 ; - RECT 122400.0 366750.0 123600.0 367950.0 ; - RECT 123600.0 372000.0 122400.0 373200.0 ; - RECT 118200.0 372000.0 119400.0 373200.0 ; - RECT 121200.0 369300.0 122400.0 370500.0 ; - RECT 122400.0 372000.0 123600.0 373200.0 ; - RECT 115800.0 378150.0 130200.0 379050.0 ; - RECT 115800.0 364350.0 130200.0 365250.0 ; - RECT 136800.0 376650.0 138000.0 378600.0 ; - RECT 136800.0 364800.0 138000.0 366750.0 ; - RECT 132000.0 366150.0 133200.0 364350.0 ; - RECT 132000.0 375450.0 133200.0 379050.0 ; - RECT 134700.0 366150.0 135600.0 375450.0 ; - RECT 132000.0 375450.0 133200.0 376650.0 ; - RECT 134400.0 375450.0 135600.0 376650.0 ; - RECT 134400.0 375450.0 135600.0 376650.0 ; - RECT 132000.0 375450.0 133200.0 376650.0 ; - RECT 132000.0 366150.0 133200.0 367350.0 ; - RECT 134400.0 366150.0 135600.0 367350.0 ; - RECT 134400.0 366150.0 135600.0 367350.0 ; - RECT 132000.0 366150.0 133200.0 367350.0 ; - RECT 136800.0 376050.0 138000.0 377250.0 ; - RECT 136800.0 366150.0 138000.0 367350.0 ; - RECT 132600.0 370800.0 133800.0 372000.0 ; - RECT 132600.0 370800.0 133800.0 372000.0 ; - RECT 135150.0 370950.0 136050.0 371850.0 ; - RECT 130200.0 378150.0 139800.0 379050.0 ; - RECT 130200.0 364350.0 139800.0 365250.0 ; - RECT 102450.0 370800.0 103650.0 372000.0 ; - RECT 104400.0 368400.0 105600.0 369600.0 ; - RECT 121200.0 369300.0 120000.0 370500.0 ; - RECT 112800.0 380550.0 114000.0 378600.0 ; - RECT 112800.0 392400.0 114000.0 390450.0 ; - RECT 108000.0 391050.0 109200.0 392850.0 ; - RECT 108000.0 381750.0 109200.0 378150.0 ; - RECT 110700.0 391050.0 111600.0 381750.0 ; - RECT 108000.0 381750.0 109200.0 380550.0 ; - RECT 110400.0 381750.0 111600.0 380550.0 ; - RECT 110400.0 381750.0 111600.0 380550.0 ; - RECT 108000.0 381750.0 109200.0 380550.0 ; - RECT 108000.0 391050.0 109200.0 389850.0 ; - RECT 110400.0 391050.0 111600.0 389850.0 ; - RECT 110400.0 391050.0 111600.0 389850.0 ; - RECT 108000.0 391050.0 109200.0 389850.0 ; - RECT 112800.0 381150.0 114000.0 379950.0 ; - RECT 112800.0 391050.0 114000.0 389850.0 ; - RECT 108600.0 386400.0 109800.0 385200.0 ; - RECT 108600.0 386400.0 109800.0 385200.0 ; - RECT 111150.0 386250.0 112050.0 385350.0 ; - RECT 106200.0 379050.0 115800.0 378150.0 ; - RECT 106200.0 392850.0 115800.0 391950.0 ; - RECT 117600.0 390450.0 118800.0 392850.0 ; - RECT 117600.0 381750.0 118800.0 378150.0 ; - RECT 122400.0 381750.0 123600.0 378150.0 ; - RECT 124800.0 380550.0 126000.0 378600.0 ; - RECT 124800.0 392400.0 126000.0 390450.0 ; - RECT 117600.0 381750.0 118800.0 380550.0 ; - RECT 120000.0 381750.0 121200.0 380550.0 ; - RECT 120000.0 381750.0 121200.0 380550.0 ; - RECT 117600.0 381750.0 118800.0 380550.0 ; - RECT 120000.0 381750.0 121200.0 380550.0 ; - RECT 122400.0 381750.0 123600.0 380550.0 ; - RECT 122400.0 381750.0 123600.0 380550.0 ; - RECT 120000.0 381750.0 121200.0 380550.0 ; - RECT 117600.0 390450.0 118800.0 389250.0 ; - RECT 120000.0 390450.0 121200.0 389250.0 ; - RECT 120000.0 390450.0 121200.0 389250.0 ; - RECT 117600.0 390450.0 118800.0 389250.0 ; - RECT 120000.0 390450.0 121200.0 389250.0 ; - RECT 122400.0 390450.0 123600.0 389250.0 ; - RECT 122400.0 390450.0 123600.0 389250.0 ; - RECT 120000.0 390450.0 121200.0 389250.0 ; - RECT 124800.0 381150.0 126000.0 379950.0 ; - RECT 124800.0 391050.0 126000.0 389850.0 ; - RECT 122400.0 387900.0 121200.0 386700.0 ; - RECT 119400.0 385200.0 118200.0 384000.0 ; - RECT 120000.0 381750.0 121200.0 380550.0 ; - RECT 122400.0 390450.0 123600.0 389250.0 ; - RECT 123600.0 385200.0 122400.0 384000.0 ; - RECT 118200.0 385200.0 119400.0 384000.0 ; - RECT 121200.0 387900.0 122400.0 386700.0 ; - RECT 122400.0 385200.0 123600.0 384000.0 ; - RECT 115800.0 379050.0 130200.0 378150.0 ; - RECT 115800.0 392850.0 130200.0 391950.0 ; - RECT 136800.0 380550.0 138000.0 378600.0 ; - RECT 136800.0 392400.0 138000.0 390450.0 ; - RECT 132000.0 391050.0 133200.0 392850.0 ; - RECT 132000.0 381750.0 133200.0 378150.0 ; - RECT 134700.0 391050.0 135600.0 381750.0 ; - RECT 132000.0 381750.0 133200.0 380550.0 ; - RECT 134400.0 381750.0 135600.0 380550.0 ; - RECT 134400.0 381750.0 135600.0 380550.0 ; - RECT 132000.0 381750.0 133200.0 380550.0 ; - RECT 132000.0 391050.0 133200.0 389850.0 ; - RECT 134400.0 391050.0 135600.0 389850.0 ; - RECT 134400.0 391050.0 135600.0 389850.0 ; - RECT 132000.0 391050.0 133200.0 389850.0 ; - RECT 136800.0 381150.0 138000.0 379950.0 ; - RECT 136800.0 391050.0 138000.0 389850.0 ; - RECT 132600.0 386400.0 133800.0 385200.0 ; - RECT 132600.0 386400.0 133800.0 385200.0 ; - RECT 135150.0 386250.0 136050.0 385350.0 ; - RECT 130200.0 379050.0 139800.0 378150.0 ; - RECT 130200.0 392850.0 139800.0 391950.0 ; - RECT 102450.0 385200.0 103650.0 386400.0 ; - RECT 104400.0 387600.0 105600.0 388800.0 ; - RECT 121200.0 386700.0 120000.0 387900.0 ; - RECT 112800.0 404250.0 114000.0 406200.0 ; - RECT 112800.0 392400.0 114000.0 394350.0 ; - RECT 108000.0 393750.0 109200.0 391950.0 ; - RECT 108000.0 403050.0 109200.0 406650.0 ; - RECT 110700.0 393750.0 111600.0 403050.0 ; - RECT 108000.0 403050.0 109200.0 404250.0 ; - RECT 110400.0 403050.0 111600.0 404250.0 ; - RECT 110400.0 403050.0 111600.0 404250.0 ; - RECT 108000.0 403050.0 109200.0 404250.0 ; - RECT 108000.0 393750.0 109200.0 394950.0 ; - RECT 110400.0 393750.0 111600.0 394950.0 ; - RECT 110400.0 393750.0 111600.0 394950.0 ; - RECT 108000.0 393750.0 109200.0 394950.0 ; - RECT 112800.0 403650.0 114000.0 404850.0 ; - RECT 112800.0 393750.0 114000.0 394950.0 ; - RECT 108600.0 398400.0 109800.0 399600.0 ; - RECT 108600.0 398400.0 109800.0 399600.0 ; - RECT 111150.0 398550.0 112050.0 399450.0 ; - RECT 106200.0 405750.0 115800.0 406650.0 ; - RECT 106200.0 391950.0 115800.0 392850.0 ; - RECT 117600.0 394350.0 118800.0 391950.0 ; - RECT 117600.0 403050.0 118800.0 406650.0 ; - RECT 122400.0 403050.0 123600.0 406650.0 ; - RECT 124800.0 404250.0 126000.0 406200.0 ; - RECT 124800.0 392400.0 126000.0 394350.0 ; - RECT 117600.0 403050.0 118800.0 404250.0 ; - RECT 120000.0 403050.0 121200.0 404250.0 ; - RECT 120000.0 403050.0 121200.0 404250.0 ; - RECT 117600.0 403050.0 118800.0 404250.0 ; - RECT 120000.0 403050.0 121200.0 404250.0 ; - RECT 122400.0 403050.0 123600.0 404250.0 ; - RECT 122400.0 403050.0 123600.0 404250.0 ; - RECT 120000.0 403050.0 121200.0 404250.0 ; - RECT 117600.0 394350.0 118800.0 395550.0 ; - RECT 120000.0 394350.0 121200.0 395550.0 ; - RECT 120000.0 394350.0 121200.0 395550.0 ; - RECT 117600.0 394350.0 118800.0 395550.0 ; - RECT 120000.0 394350.0 121200.0 395550.0 ; - RECT 122400.0 394350.0 123600.0 395550.0 ; - RECT 122400.0 394350.0 123600.0 395550.0 ; - RECT 120000.0 394350.0 121200.0 395550.0 ; - RECT 124800.0 403650.0 126000.0 404850.0 ; - RECT 124800.0 393750.0 126000.0 394950.0 ; - RECT 122400.0 396900.0 121200.0 398100.0 ; - RECT 119400.0 399600.0 118200.0 400800.0 ; - RECT 120000.0 403050.0 121200.0 404250.0 ; - RECT 122400.0 394350.0 123600.0 395550.0 ; - RECT 123600.0 399600.0 122400.0 400800.0 ; - RECT 118200.0 399600.0 119400.0 400800.0 ; - RECT 121200.0 396900.0 122400.0 398100.0 ; - RECT 122400.0 399600.0 123600.0 400800.0 ; - RECT 115800.0 405750.0 130200.0 406650.0 ; - RECT 115800.0 391950.0 130200.0 392850.0 ; - RECT 136800.0 404250.0 138000.0 406200.0 ; - RECT 136800.0 392400.0 138000.0 394350.0 ; - RECT 132000.0 393750.0 133200.0 391950.0 ; - RECT 132000.0 403050.0 133200.0 406650.0 ; - RECT 134700.0 393750.0 135600.0 403050.0 ; - RECT 132000.0 403050.0 133200.0 404250.0 ; - RECT 134400.0 403050.0 135600.0 404250.0 ; - RECT 134400.0 403050.0 135600.0 404250.0 ; - RECT 132000.0 403050.0 133200.0 404250.0 ; - RECT 132000.0 393750.0 133200.0 394950.0 ; - RECT 134400.0 393750.0 135600.0 394950.0 ; - RECT 134400.0 393750.0 135600.0 394950.0 ; - RECT 132000.0 393750.0 133200.0 394950.0 ; - RECT 136800.0 403650.0 138000.0 404850.0 ; - RECT 136800.0 393750.0 138000.0 394950.0 ; - RECT 132600.0 398400.0 133800.0 399600.0 ; - RECT 132600.0 398400.0 133800.0 399600.0 ; - RECT 135150.0 398550.0 136050.0 399450.0 ; - RECT 130200.0 405750.0 139800.0 406650.0 ; - RECT 130200.0 391950.0 139800.0 392850.0 ; - RECT 102450.0 398400.0 103650.0 399600.0 ; - RECT 104400.0 396000.0 105600.0 397200.0 ; - RECT 121200.0 396900.0 120000.0 398100.0 ; - RECT 112800.0 408150.0 114000.0 406200.0 ; - RECT 112800.0 420000.0 114000.0 418050.0 ; - RECT 108000.0 418650.0 109200.0 420450.0 ; - RECT 108000.0 409350.0 109200.0 405750.0 ; - RECT 110700.0 418650.0 111600.0 409350.0 ; - RECT 108000.0 409350.0 109200.0 408150.0 ; - RECT 110400.0 409350.0 111600.0 408150.0 ; - RECT 110400.0 409350.0 111600.0 408150.0 ; - RECT 108000.0 409350.0 109200.0 408150.0 ; - RECT 108000.0 418650.0 109200.0 417450.0 ; - RECT 110400.0 418650.0 111600.0 417450.0 ; - RECT 110400.0 418650.0 111600.0 417450.0 ; - RECT 108000.0 418650.0 109200.0 417450.0 ; - RECT 112800.0 408750.0 114000.0 407550.0 ; - RECT 112800.0 418650.0 114000.0 417450.0 ; - RECT 108600.0 414000.0 109800.0 412800.0 ; - RECT 108600.0 414000.0 109800.0 412800.0 ; - RECT 111150.0 413850.0 112050.0 412950.0 ; - RECT 106200.0 406650.0 115800.0 405750.0 ; - RECT 106200.0 420450.0 115800.0 419550.0 ; - RECT 117600.0 418050.0 118800.0 420450.0 ; - RECT 117600.0 409350.0 118800.0 405750.0 ; - RECT 122400.0 409350.0 123600.0 405750.0 ; - RECT 124800.0 408150.0 126000.0 406200.0 ; - RECT 124800.0 420000.0 126000.0 418050.0 ; - RECT 117600.0 409350.0 118800.0 408150.0 ; - RECT 120000.0 409350.0 121200.0 408150.0 ; - RECT 120000.0 409350.0 121200.0 408150.0 ; - RECT 117600.0 409350.0 118800.0 408150.0 ; - RECT 120000.0 409350.0 121200.0 408150.0 ; - RECT 122400.0 409350.0 123600.0 408150.0 ; - RECT 122400.0 409350.0 123600.0 408150.0 ; - RECT 120000.0 409350.0 121200.0 408150.0 ; - RECT 117600.0 418050.0 118800.0 416850.0 ; - RECT 120000.0 418050.0 121200.0 416850.0 ; - RECT 120000.0 418050.0 121200.0 416850.0 ; - RECT 117600.0 418050.0 118800.0 416850.0 ; - RECT 120000.0 418050.0 121200.0 416850.0 ; - RECT 122400.0 418050.0 123600.0 416850.0 ; - RECT 122400.0 418050.0 123600.0 416850.0 ; - RECT 120000.0 418050.0 121200.0 416850.0 ; - RECT 124800.0 408750.0 126000.0 407550.0 ; - RECT 124800.0 418650.0 126000.0 417450.0 ; - RECT 122400.0 415500.0 121200.0 414300.0 ; - RECT 119400.0 412800.0 118200.0 411600.0 ; - RECT 120000.0 409350.0 121200.0 408150.0 ; - RECT 122400.0 418050.0 123600.0 416850.0 ; - RECT 123600.0 412800.0 122400.0 411600.0 ; - RECT 118200.0 412800.0 119400.0 411600.0 ; - RECT 121200.0 415500.0 122400.0 414300.0 ; - RECT 122400.0 412800.0 123600.0 411600.0 ; - RECT 115800.0 406650.0 130200.0 405750.0 ; - RECT 115800.0 420450.0 130200.0 419550.0 ; - RECT 136800.0 408150.0 138000.0 406200.0 ; - RECT 136800.0 420000.0 138000.0 418050.0 ; - RECT 132000.0 418650.0 133200.0 420450.0 ; - RECT 132000.0 409350.0 133200.0 405750.0 ; - RECT 134700.0 418650.0 135600.0 409350.0 ; - RECT 132000.0 409350.0 133200.0 408150.0 ; - RECT 134400.0 409350.0 135600.0 408150.0 ; - RECT 134400.0 409350.0 135600.0 408150.0 ; - RECT 132000.0 409350.0 133200.0 408150.0 ; - RECT 132000.0 418650.0 133200.0 417450.0 ; - RECT 134400.0 418650.0 135600.0 417450.0 ; - RECT 134400.0 418650.0 135600.0 417450.0 ; - RECT 132000.0 418650.0 133200.0 417450.0 ; - RECT 136800.0 408750.0 138000.0 407550.0 ; - RECT 136800.0 418650.0 138000.0 417450.0 ; - RECT 132600.0 414000.0 133800.0 412800.0 ; - RECT 132600.0 414000.0 133800.0 412800.0 ; - RECT 135150.0 413850.0 136050.0 412950.0 ; - RECT 130200.0 406650.0 139800.0 405750.0 ; - RECT 130200.0 420450.0 139800.0 419550.0 ; - RECT 102450.0 412800.0 103650.0 414000.0 ; - RECT 104400.0 415200.0 105600.0 416400.0 ; - RECT 121200.0 414300.0 120000.0 415500.0 ; - RECT 99900.0 202950.0 105000.0 203850.0 ; - RECT 99900.0 222150.0 105000.0 223050.0 ; - RECT 99900.0 230550.0 105000.0 231450.0 ; - RECT 99900.0 249750.0 105000.0 250650.0 ; - RECT 99900.0 258150.0 105000.0 259050.0 ; - RECT 99900.0 277350.0 105000.0 278250.0 ; - RECT 99900.0 285750.0 105000.0 286650.0 ; - RECT 99900.0 304950.0 105000.0 305850.0 ; - RECT 99900.0 313350.0 105000.0 314250.0 ; - RECT 99900.0 332550.0 105000.0 333450.0 ; - RECT 99900.0 340950.0 105000.0 341850.0 ; - RECT 99900.0 360150.0 105000.0 361050.0 ; - RECT 99900.0 368550.0 105000.0 369450.0 ; - RECT 99900.0 387750.0 105000.0 388650.0 ; - RECT 99900.0 396150.0 105000.0 397050.0 ; - RECT 99900.0 415350.0 105000.0 416250.0 ; - RECT 135150.0 205350.0 136050.0 206250.0 ; - RECT 135150.0 219750.0 136050.0 220650.0 ; - RECT 135150.0 232950.0 136050.0 233850.0 ; - RECT 135150.0 247350.0 136050.0 248250.0 ; - RECT 135150.0 260550.0 136050.0 261450.0 ; - RECT 135150.0 274950.0 136050.0 275850.0 ; - RECT 135150.0 288150.0 136050.0 289050.0 ; - RECT 135150.0 302550.0 136050.0 303450.0 ; - RECT 135150.0 315750.0 136050.0 316650.0 ; - RECT 135150.0 330150.0 136050.0 331050.0 ; - RECT 135150.0 343350.0 136050.0 344250.0 ; - RECT 135150.0 357750.0 136050.0 358650.0 ; - RECT 135150.0 370950.0 136050.0 371850.0 ; - RECT 135150.0 385350.0 136050.0 386250.0 ; - RECT 135150.0 398550.0 136050.0 399450.0 ; - RECT 135150.0 412950.0 136050.0 413850.0 ; - RECT 99900.0 212550.0 106200.0 213450.0 ; - RECT 99900.0 240150.0 106200.0 241050.0 ; - RECT 99900.0 267750.0 106200.0 268650.0 ; - RECT 99900.0 295350.0 106200.0 296250.0 ; - RECT 99900.0 322950.0 106200.0 323850.0 ; - RECT 99900.0 350550.0 106200.0 351450.0 ; - RECT 99900.0 378150.0 106200.0 379050.0 ; - RECT 99900.0 405750.0 106200.0 406650.0 ; - RECT 99900.0 198750.0 106200.0 199650.0 ; - RECT 99900.0 226350.0 106200.0 227250.0 ; - RECT 99900.0 253950.0 106200.0 254850.0 ; - RECT 99900.0 281550.0 106200.0 282450.0 ; - RECT 99900.0 309150.0 106200.0 310050.0 ; - RECT 99900.0 336750.0 106200.0 337650.0 ; - RECT 99900.0 364350.0 106200.0 365250.0 ; - RECT 99900.0 391950.0 106200.0 392850.0 ; - RECT 99900.0 419550.0 106200.0 420450.0 ; - RECT 59100.0 83400.0 119100.0 73200.0 ; - RECT 59100.0 63000.0 119100.0 73200.0 ; - RECT 59100.0 63000.0 119100.0 52800.0 ; - RECT 59100.0 42600.0 119100.0 52800.0 ; - RECT 61500.0 83400.0 62400.0 42600.0 ; - RECT 115500.0 83400.0 116400.0 42600.0 ; - RECT 148050.0 199800.0 149250.0 198600.0 ; - RECT 148050.0 227400.0 149250.0 226200.0 ; - RECT 148050.0 255000.0 149250.0 253800.0 ; - RECT 148050.0 282600.0 149250.0 281400.0 ; - RECT 148050.0 310200.0 149250.0 309000.0 ; - RECT 148050.0 337800.0 149250.0 336600.0 ; - RECT 148050.0 365400.0 149250.0 364200.0 ; - RECT 148050.0 393000.0 149250.0 391800.0 ; - RECT 148050.0 420600.0 149250.0 419400.0 ; - RECT 130500.0 91050.0 129300.0 92250.0 ; - RECT 135600.0 90900.0 134400.0 92100.0 ; - RECT 127500.0 104850.0 126300.0 106050.0 ; - RECT 138300.0 104700.0 137100.0 105900.0 ; - RECT 130500.0 146250.0 129300.0 147450.0 ; - RECT 141000.0 146100.0 139800.0 147300.0 ; - RECT 127500.0 160050.0 126300.0 161250.0 ; - RECT 143700.0 159900.0 142500.0 161100.0 ; - RECT 132600.0 88200.0 131400.0 89400.0 ; - RECT 132600.0 115800.0 131400.0 117000.0 ; - RECT 132600.0 143400.0 131400.0 144600.0 ; - RECT 132600.0 171000.0 131400.0 172200.0 ; - RECT 118500.0 76950.0 117300.0 78150.0 ; - RECT 135600.0 76950.0 134400.0 78150.0 ; - RECT 118500.0 68250.0 117300.0 69450.0 ; - RECT 138300.0 68250.0 137100.0 69450.0 ; - RECT 118500.0 56550.0 117300.0 57750.0 ; - RECT 141000.0 56550.0 139800.0 57750.0 ; - RECT 118500.0 47850.0 117300.0 49050.0 ; - RECT 143700.0 47850.0 142500.0 49050.0 ; - RECT 120300.0 72600.0 119100.0 73800.0 ; - RECT 149250.0 72750.0 148050.0 73950.0 ; - RECT 120300.0 52200.0 119100.0 53400.0 ; - RECT 149250.0 52350.0 148050.0 53550.0 ; + RECT 87750.0 206850.0 88650.0 207750.0 ; + RECT 87750.0 205650.0 88650.0 206550.0 ; + RECT 83700.0 206850.0 88200.0 207750.0 ; + RECT 87750.0 206100.0 88650.0 207300.0 ; + RECT 88200.0 205650.0 92700.0 206550.0 ; + RECT 87750.0 218850.0 88650.0 219750.0 ; + RECT 87750.0 220050.0 88650.0 220950.0 ; + RECT 83700.0 218850.0 88200.0 219750.0 ; + RECT 87750.0 219300.0 88650.0 220500.0 ; + RECT 88200.0 220050.0 92700.0 220950.0 ; + RECT 87750.0 234450.0 88650.0 235350.0 ; + RECT 87750.0 233250.0 88650.0 234150.0 ; + RECT 83700.0 234450.0 88200.0 235350.0 ; + RECT 87750.0 233700.0 88650.0 234900.0 ; + RECT 88200.0 233250.0 92700.0 234150.0 ; + RECT 87750.0 246450.0 88650.0 247350.0 ; + RECT 87750.0 247650.0 88650.0 248550.0 ; + RECT 83700.0 246450.0 88200.0 247350.0 ; + RECT 87750.0 246900.0 88650.0 248100.0 ; + RECT 88200.0 247650.0 92700.0 248550.0 ; + RECT 87750.0 262050.0 88650.0 262950.0 ; + RECT 87750.0 260850.0 88650.0 261750.0 ; + RECT 83700.0 262050.0 88200.0 262950.0 ; + RECT 87750.0 261300.0 88650.0 262500.0 ; + RECT 88200.0 260850.0 92700.0 261750.0 ; + RECT 87750.0 274050.0 88650.0 274950.0 ; + RECT 87750.0 275250.0 88650.0 276150.0 ; + RECT 83700.0 274050.0 88200.0 274950.0 ; + RECT 87750.0 274500.0 88650.0 275700.0 ; + RECT 88200.0 275250.0 92700.0 276150.0 ; + RECT 87750.0 289650.0 88650.0 290550.0 ; + RECT 87750.0 288450.0 88650.0 289350.0 ; + RECT 83700.0 289650.0 88200.0 290550.0 ; + RECT 87750.0 288900.0 88650.0 290100.0 ; + RECT 88200.0 288450.0 92700.0 289350.0 ; + RECT 87750.0 301650.0 88650.0 302550.0 ; + RECT 87750.0 302850.0 88650.0 303750.0 ; + RECT 83700.0 301650.0 88200.0 302550.0 ; + RECT 87750.0 302100.0 88650.0 303300.0 ; + RECT 88200.0 302850.0 92700.0 303750.0 ; + RECT 87750.0 317250.0 88650.0 318150.0 ; + RECT 87750.0 316050.0 88650.0 316950.0 ; + RECT 83700.0 317250.0 88200.0 318150.0 ; + RECT 87750.0 316500.0 88650.0 317700.0 ; + RECT 88200.0 316050.0 92700.0 316950.0 ; + RECT 87750.0 329250.0 88650.0 330150.0 ; + RECT 87750.0 330450.0 88650.0 331350.0 ; + RECT 83700.0 329250.0 88200.0 330150.0 ; + RECT 87750.0 329700.0 88650.0 330900.0 ; + RECT 88200.0 330450.0 92700.0 331350.0 ; + RECT 87750.0 344850.0 88650.0 345750.0 ; + RECT 87750.0 343650.0 88650.0 344550.0 ; + RECT 83700.0 344850.0 88200.0 345750.0 ; + RECT 87750.0 344100.0 88650.0 345300.0 ; + RECT 88200.0 343650.0 92700.0 344550.0 ; + RECT 87750.0 356850.0 88650.0 357750.0 ; + RECT 87750.0 358050.0 88650.0 358950.0 ; + RECT 83700.0 356850.0 88200.0 357750.0 ; + RECT 87750.0 357300.0 88650.0 358500.0 ; + RECT 88200.0 358050.0 92700.0 358950.0 ; + RECT 87750.0 372450.0 88650.0 373350.0 ; + RECT 87750.0 371250.0 88650.0 372150.0 ; + RECT 83700.0 372450.0 88200.0 373350.0 ; + RECT 87750.0 371700.0 88650.0 372900.0 ; + RECT 88200.0 371250.0 92700.0 372150.0 ; + RECT 87750.0 384450.0 88650.0 385350.0 ; + RECT 87750.0 385650.0 88650.0 386550.0 ; + RECT 83700.0 384450.0 88200.0 385350.0 ; + RECT 87750.0 384900.0 88650.0 386100.0 ; + RECT 88200.0 385650.0 92700.0 386550.0 ; + RECT 87750.0 400050.0 88650.0 400950.0 ; + RECT 87750.0 398850.0 88650.0 399750.0 ; + RECT 83700.0 400050.0 88200.0 400950.0 ; + RECT 87750.0 399300.0 88650.0 400500.0 ; + RECT 88200.0 398850.0 92700.0 399750.0 ; + RECT 87750.0 412050.0 88650.0 412950.0 ; + RECT 87750.0 413250.0 88650.0 414150.0 ; + RECT 83700.0 412050.0 88200.0 412950.0 ; + RECT 87750.0 412500.0 88650.0 413700.0 ; + RECT 88200.0 413250.0 92700.0 414150.0 ; + RECT 59550.0 95250.0 75900.0 96150.0 ; + RECT 61650.0 109650.0 75900.0 110550.0 ; + RECT 63750.0 122850.0 75900.0 123750.0 ; + RECT 65850.0 137250.0 75900.0 138150.0 ; + RECT 67950.0 150450.0 75900.0 151350.0 ; + RECT 70050.0 164850.0 75900.0 165750.0 ; + RECT 72150.0 178050.0 75900.0 178950.0 ; + RECT 74250.0 192450.0 75900.0 193350.0 ; + RECT 59550.0 206850.0 78300.0 207750.0 ; + RECT 67950.0 204150.0 81300.0 205050.0 ; + RECT 59550.0 218850.0 78300.0 219750.0 ; + RECT 70050.0 221550.0 81300.0 222450.0 ; + RECT 59550.0 234450.0 78300.0 235350.0 ; + RECT 72150.0 231750.0 81300.0 232650.0 ; + RECT 59550.0 246450.0 78300.0 247350.0 ; + RECT 74250.0 249150.0 81300.0 250050.0 ; + RECT 61650.0 262050.0 78300.0 262950.0 ; + RECT 67950.0 259350.0 81300.0 260250.0 ; + RECT 61650.0 274050.0 78300.0 274950.0 ; + RECT 70050.0 276750.0 81300.0 277650.0 ; + RECT 61650.0 289650.0 78300.0 290550.0 ; + RECT 72150.0 286950.0 81300.0 287850.0 ; + RECT 61650.0 301650.0 78300.0 302550.0 ; + RECT 74250.0 304350.0 81300.0 305250.0 ; + RECT 63750.0 317250.0 78300.0 318150.0 ; + RECT 67950.0 314550.0 81300.0 315450.0 ; + RECT 63750.0 329250.0 78300.0 330150.0 ; + RECT 70050.0 331950.0 81300.0 332850.0 ; + RECT 63750.0 344850.0 78300.0 345750.0 ; + RECT 72150.0 342150.0 81300.0 343050.0 ; + RECT 63750.0 356850.0 78300.0 357750.0 ; + RECT 74250.0 359550.0 81300.0 360450.0 ; + RECT 65850.0 372450.0 78300.0 373350.0 ; + RECT 67950.0 369750.0 81300.0 370650.0 ; + RECT 65850.0 384450.0 78300.0 385350.0 ; + RECT 70050.0 387150.0 81300.0 388050.0 ; + RECT 65850.0 400050.0 78300.0 400950.0 ; + RECT 72150.0 397350.0 81300.0 398250.0 ; + RECT 65850.0 412050.0 78300.0 412950.0 ; + RECT 74250.0 414750.0 81300.0 415650.0 ; + RECT 114450.0 95250.0 113550.0 96150.0 ; + RECT 114450.0 99750.0 113550.0 100650.0 ; + RECT 118650.0 95250.0 114000.0 96150.0 ; + RECT 114450.0 95700.0 113550.0 100200.0 ; + RECT 114000.0 99750.0 111450.0 100650.0 ; + RECT 130050.0 95250.0 122100.0 96150.0 ; + RECT 114450.0 109650.0 113550.0 110550.0 ; + RECT 114450.0 113550.0 113550.0 114450.0 ; + RECT 118650.0 109650.0 114000.0 110550.0 ; + RECT 114450.0 110100.0 113550.0 114000.0 ; + RECT 114000.0 113550.0 108450.0 114450.0 ; + RECT 127050.0 109650.0 122100.0 110550.0 ; + RECT 130050.0 118350.0 105450.0 119250.0 ; + RECT 127050.0 132150.0 102450.0 133050.0 ; + RECT 111450.0 93750.0 94500.0 94650.0 ; + RECT 108450.0 96450.0 97500.0 97350.0 ; + RECT 105450.0 111150.0 94500.0 112050.0 ; + RECT 108450.0 108450.0 97500.0 109350.0 ; + RECT 111450.0 121350.0 94500.0 122250.0 ; + RECT 102450.0 124050.0 97500.0 124950.0 ; + RECT 105450.0 138750.0 94500.0 139650.0 ; + RECT 102450.0 136050.0 97500.0 136950.0 ; + RECT 88050.0 96450.0 87150.0 97350.0 ; + RECT 88050.0 95250.0 87150.0 96150.0 ; + RECT 92100.0 96450.0 87600.0 97350.0 ; + RECT 88050.0 95700.0 87150.0 96900.0 ; + RECT 87600.0 95250.0 83100.0 96150.0 ; + RECT 88050.0 108450.0 87150.0 109350.0 ; + RECT 88050.0 109650.0 87150.0 110550.0 ; + RECT 92100.0 108450.0 87600.0 109350.0 ; + RECT 88050.0 108900.0 87150.0 110100.0 ; + RECT 87600.0 109650.0 83100.0 110550.0 ; + RECT 88050.0 124050.0 87150.0 124950.0 ; + RECT 88050.0 122850.0 87150.0 123750.0 ; + RECT 92100.0 124050.0 87600.0 124950.0 ; + RECT 88050.0 123300.0 87150.0 124500.0 ; + RECT 87600.0 122850.0 83100.0 123750.0 ; + RECT 88050.0 136050.0 87150.0 136950.0 ; + RECT 88050.0 137250.0 87150.0 138150.0 ; + RECT 92100.0 136050.0 87600.0 136950.0 ; + RECT 88050.0 136500.0 87150.0 137700.0 ; + RECT 87600.0 137250.0 83100.0 138150.0 ; + RECT 117900.0 100950.0 116700.0 102900.0 ; + RECT 117900.0 89100.0 116700.0 91050.0 ; + RECT 122700.0 90450.0 121500.0 88650.0 ; + RECT 122700.0 99750.0 121500.0 103350.0 ; + RECT 120000.0 90450.0 119100.0 99750.0 ; + RECT 122700.0 99750.0 121500.0 100950.0 ; + RECT 120300.0 99750.0 119100.0 100950.0 ; + RECT 120300.0 99750.0 119100.0 100950.0 ; + RECT 122700.0 99750.0 121500.0 100950.0 ; + RECT 122700.0 90450.0 121500.0 91650.0 ; + RECT 120300.0 90450.0 119100.0 91650.0 ; + RECT 120300.0 90450.0 119100.0 91650.0 ; + RECT 122700.0 90450.0 121500.0 91650.0 ; + RECT 117900.0 100350.0 116700.0 101550.0 ; + RECT 117900.0 90450.0 116700.0 91650.0 ; + RECT 122100.0 95100.0 120900.0 96300.0 ; + RECT 122100.0 95100.0 120900.0 96300.0 ; + RECT 119550.0 95250.0 118650.0 96150.0 ; + RECT 124500.0 102450.0 114900.0 103350.0 ; + RECT 124500.0 88650.0 114900.0 89550.0 ; + RECT 117900.0 104850.0 116700.0 102900.0 ; + RECT 117900.0 116700.0 116700.0 114750.0 ; + RECT 122700.0 115350.0 121500.0 117150.0 ; + RECT 122700.0 106050.0 121500.0 102450.0 ; + RECT 120000.0 115350.0 119100.0 106050.0 ; + RECT 122700.0 106050.0 121500.0 104850.0 ; + RECT 120300.0 106050.0 119100.0 104850.0 ; + RECT 120300.0 106050.0 119100.0 104850.0 ; + RECT 122700.0 106050.0 121500.0 104850.0 ; + RECT 122700.0 115350.0 121500.0 114150.0 ; + RECT 120300.0 115350.0 119100.0 114150.0 ; + RECT 120300.0 115350.0 119100.0 114150.0 ; + RECT 122700.0 115350.0 121500.0 114150.0 ; + RECT 117900.0 105450.0 116700.0 104250.0 ; + RECT 117900.0 115350.0 116700.0 114150.0 ; + RECT 122100.0 110700.0 120900.0 109500.0 ; + RECT 122100.0 110700.0 120900.0 109500.0 ; + RECT 119550.0 110550.0 118650.0 109650.0 ; + RECT 124500.0 103350.0 114900.0 102450.0 ; + RECT 124500.0 117150.0 114900.0 116250.0 ; + RECT 78900.0 100950.0 77700.0 102900.0 ; + RECT 78900.0 89100.0 77700.0 91050.0 ; + RECT 83700.0 90450.0 82500.0 88650.0 ; + RECT 83700.0 99750.0 82500.0 103350.0 ; + RECT 81000.0 90450.0 80100.0 99750.0 ; + RECT 83700.0 99750.0 82500.0 100950.0 ; + RECT 81300.0 99750.0 80100.0 100950.0 ; + RECT 81300.0 99750.0 80100.0 100950.0 ; + RECT 83700.0 99750.0 82500.0 100950.0 ; + RECT 83700.0 90450.0 82500.0 91650.0 ; + RECT 81300.0 90450.0 80100.0 91650.0 ; + RECT 81300.0 90450.0 80100.0 91650.0 ; + RECT 83700.0 90450.0 82500.0 91650.0 ; + RECT 78900.0 100350.0 77700.0 101550.0 ; + RECT 78900.0 90450.0 77700.0 91650.0 ; + RECT 83100.0 95100.0 81900.0 96300.0 ; + RECT 83100.0 95100.0 81900.0 96300.0 ; + RECT 80550.0 95250.0 79650.0 96150.0 ; + RECT 85500.0 102450.0 75900.0 103350.0 ; + RECT 85500.0 88650.0 75900.0 89550.0 ; + RECT 78900.0 104850.0 77700.0 102900.0 ; + RECT 78900.0 116700.0 77700.0 114750.0 ; + RECT 83700.0 115350.0 82500.0 117150.0 ; + RECT 83700.0 106050.0 82500.0 102450.0 ; + RECT 81000.0 115350.0 80100.0 106050.0 ; + RECT 83700.0 106050.0 82500.0 104850.0 ; + RECT 81300.0 106050.0 80100.0 104850.0 ; + RECT 81300.0 106050.0 80100.0 104850.0 ; + RECT 83700.0 106050.0 82500.0 104850.0 ; + RECT 83700.0 115350.0 82500.0 114150.0 ; + RECT 81300.0 115350.0 80100.0 114150.0 ; + RECT 81300.0 115350.0 80100.0 114150.0 ; + RECT 83700.0 115350.0 82500.0 114150.0 ; + RECT 78900.0 105450.0 77700.0 104250.0 ; + RECT 78900.0 115350.0 77700.0 114150.0 ; + RECT 83100.0 110700.0 81900.0 109500.0 ; + RECT 83100.0 110700.0 81900.0 109500.0 ; + RECT 80550.0 110550.0 79650.0 109650.0 ; + RECT 85500.0 103350.0 75900.0 102450.0 ; + RECT 85500.0 117150.0 75900.0 116250.0 ; + RECT 78900.0 128550.0 77700.0 130500.0 ; + RECT 78900.0 116700.0 77700.0 118650.0 ; + RECT 83700.0 118050.0 82500.0 116250.0 ; + RECT 83700.0 127350.0 82500.0 130950.0 ; + RECT 81000.0 118050.0 80100.0 127350.0 ; + RECT 83700.0 127350.0 82500.0 128550.0 ; + RECT 81300.0 127350.0 80100.0 128550.0 ; + RECT 81300.0 127350.0 80100.0 128550.0 ; + RECT 83700.0 127350.0 82500.0 128550.0 ; + RECT 83700.0 118050.0 82500.0 119250.0 ; + RECT 81300.0 118050.0 80100.0 119250.0 ; + RECT 81300.0 118050.0 80100.0 119250.0 ; + RECT 83700.0 118050.0 82500.0 119250.0 ; + RECT 78900.0 127950.0 77700.0 129150.0 ; + RECT 78900.0 118050.0 77700.0 119250.0 ; + RECT 83100.0 122700.0 81900.0 123900.0 ; + RECT 83100.0 122700.0 81900.0 123900.0 ; + RECT 80550.0 122850.0 79650.0 123750.0 ; + RECT 85500.0 130050.0 75900.0 130950.0 ; + RECT 85500.0 116250.0 75900.0 117150.0 ; + RECT 78900.0 132450.0 77700.0 130500.0 ; + RECT 78900.0 144300.0 77700.0 142350.0 ; + RECT 83700.0 142950.0 82500.0 144750.0 ; + RECT 83700.0 133650.0 82500.0 130050.0 ; + RECT 81000.0 142950.0 80100.0 133650.0 ; + RECT 83700.0 133650.0 82500.0 132450.0 ; + RECT 81300.0 133650.0 80100.0 132450.0 ; + RECT 81300.0 133650.0 80100.0 132450.0 ; + RECT 83700.0 133650.0 82500.0 132450.0 ; + RECT 83700.0 142950.0 82500.0 141750.0 ; + RECT 81300.0 142950.0 80100.0 141750.0 ; + RECT 81300.0 142950.0 80100.0 141750.0 ; + RECT 83700.0 142950.0 82500.0 141750.0 ; + RECT 78900.0 133050.0 77700.0 131850.0 ; + RECT 78900.0 142950.0 77700.0 141750.0 ; + RECT 83100.0 138300.0 81900.0 137100.0 ; + RECT 83100.0 138300.0 81900.0 137100.0 ; + RECT 80550.0 138150.0 79650.0 137250.0 ; + RECT 85500.0 130950.0 75900.0 130050.0 ; + RECT 85500.0 144750.0 75900.0 143850.0 ; + RECT 98100.0 91050.0 96900.0 88650.0 ; + RECT 98100.0 99750.0 96900.0 103350.0 ; + RECT 93300.0 99750.0 92100.0 103350.0 ; + RECT 90900.0 100950.0 89700.0 102900.0 ; + RECT 90900.0 89100.0 89700.0 91050.0 ; + RECT 98100.0 99750.0 96900.0 100950.0 ; + RECT 95700.0 99750.0 94500.0 100950.0 ; + RECT 95700.0 99750.0 94500.0 100950.0 ; + RECT 98100.0 99750.0 96900.0 100950.0 ; + RECT 95700.0 99750.0 94500.0 100950.0 ; + RECT 93300.0 99750.0 92100.0 100950.0 ; + RECT 93300.0 99750.0 92100.0 100950.0 ; + RECT 95700.0 99750.0 94500.0 100950.0 ; + RECT 98100.0 91050.0 96900.0 92250.0 ; + RECT 95700.0 91050.0 94500.0 92250.0 ; + RECT 95700.0 91050.0 94500.0 92250.0 ; + RECT 98100.0 91050.0 96900.0 92250.0 ; + RECT 95700.0 91050.0 94500.0 92250.0 ; + RECT 93300.0 91050.0 92100.0 92250.0 ; + RECT 93300.0 91050.0 92100.0 92250.0 ; + RECT 95700.0 91050.0 94500.0 92250.0 ; + RECT 90900.0 100350.0 89700.0 101550.0 ; + RECT 90900.0 90450.0 89700.0 91650.0 ; + RECT 93300.0 93600.0 94500.0 94800.0 ; + RECT 96300.0 96300.0 97500.0 97500.0 ; + RECT 95700.0 99750.0 94500.0 100950.0 ; + RECT 93300.0 91050.0 92100.0 92250.0 ; + RECT 92100.0 96300.0 93300.0 97500.0 ; + RECT 97500.0 96300.0 96300.0 97500.0 ; + RECT 94500.0 93600.0 93300.0 94800.0 ; + RECT 93300.0 96300.0 92100.0 97500.0 ; + RECT 99900.0 102450.0 85500.0 103350.0 ; + RECT 99900.0 88650.0 85500.0 89550.0 ; + RECT 98100.0 114750.0 96900.0 117150.0 ; + RECT 98100.0 106050.0 96900.0 102450.0 ; + RECT 93300.0 106050.0 92100.0 102450.0 ; + RECT 90900.0 104850.0 89700.0 102900.0 ; + RECT 90900.0 116700.0 89700.0 114750.0 ; + RECT 98100.0 106050.0 96900.0 104850.0 ; + RECT 95700.0 106050.0 94500.0 104850.0 ; + RECT 95700.0 106050.0 94500.0 104850.0 ; + RECT 98100.0 106050.0 96900.0 104850.0 ; + RECT 95700.0 106050.0 94500.0 104850.0 ; + RECT 93300.0 106050.0 92100.0 104850.0 ; + RECT 93300.0 106050.0 92100.0 104850.0 ; + RECT 95700.0 106050.0 94500.0 104850.0 ; + RECT 98100.0 114750.0 96900.0 113550.0 ; + RECT 95700.0 114750.0 94500.0 113550.0 ; + RECT 95700.0 114750.0 94500.0 113550.0 ; + RECT 98100.0 114750.0 96900.0 113550.0 ; + RECT 95700.0 114750.0 94500.0 113550.0 ; + RECT 93300.0 114750.0 92100.0 113550.0 ; + RECT 93300.0 114750.0 92100.0 113550.0 ; + RECT 95700.0 114750.0 94500.0 113550.0 ; + RECT 90900.0 105450.0 89700.0 104250.0 ; + RECT 90900.0 115350.0 89700.0 114150.0 ; + RECT 93300.0 112200.0 94500.0 111000.0 ; + RECT 96300.0 109500.0 97500.0 108300.0 ; + RECT 95700.0 106050.0 94500.0 104850.0 ; + RECT 93300.0 114750.0 92100.0 113550.0 ; + RECT 92100.0 109500.0 93300.0 108300.0 ; + RECT 97500.0 109500.0 96300.0 108300.0 ; + RECT 94500.0 112200.0 93300.0 111000.0 ; + RECT 93300.0 109500.0 92100.0 108300.0 ; + RECT 99900.0 103350.0 85500.0 102450.0 ; + RECT 99900.0 117150.0 85500.0 116250.0 ; + RECT 98100.0 118650.0 96900.0 116250.0 ; + RECT 98100.0 127350.0 96900.0 130950.0 ; + RECT 93300.0 127350.0 92100.0 130950.0 ; + RECT 90900.0 128550.0 89700.0 130500.0 ; + RECT 90900.0 116700.0 89700.0 118650.0 ; + RECT 98100.0 127350.0 96900.0 128550.0 ; + RECT 95700.0 127350.0 94500.0 128550.0 ; + RECT 95700.0 127350.0 94500.0 128550.0 ; + RECT 98100.0 127350.0 96900.0 128550.0 ; + RECT 95700.0 127350.0 94500.0 128550.0 ; + RECT 93300.0 127350.0 92100.0 128550.0 ; + RECT 93300.0 127350.0 92100.0 128550.0 ; + RECT 95700.0 127350.0 94500.0 128550.0 ; + RECT 98100.0 118650.0 96900.0 119850.0 ; + RECT 95700.0 118650.0 94500.0 119850.0 ; + RECT 95700.0 118650.0 94500.0 119850.0 ; + RECT 98100.0 118650.0 96900.0 119850.0 ; + RECT 95700.0 118650.0 94500.0 119850.0 ; + RECT 93300.0 118650.0 92100.0 119850.0 ; + RECT 93300.0 118650.0 92100.0 119850.0 ; + RECT 95700.0 118650.0 94500.0 119850.0 ; + RECT 90900.0 127950.0 89700.0 129150.0 ; + RECT 90900.0 118050.0 89700.0 119250.0 ; + RECT 93300.0 121200.0 94500.0 122400.0 ; + RECT 96300.0 123900.0 97500.0 125100.0 ; + RECT 95700.0 127350.0 94500.0 128550.0 ; + RECT 93300.0 118650.0 92100.0 119850.0 ; + RECT 92100.0 123900.0 93300.0 125100.0 ; + RECT 97500.0 123900.0 96300.0 125100.0 ; + RECT 94500.0 121200.0 93300.0 122400.0 ; + RECT 93300.0 123900.0 92100.0 125100.0 ; + RECT 99900.0 130050.0 85500.0 130950.0 ; + RECT 99900.0 116250.0 85500.0 117150.0 ; + RECT 98100.0 142350.0 96900.0 144750.0 ; + RECT 98100.0 133650.0 96900.0 130050.0 ; + RECT 93300.0 133650.0 92100.0 130050.0 ; + RECT 90900.0 132450.0 89700.0 130500.0 ; + RECT 90900.0 144300.0 89700.0 142350.0 ; + RECT 98100.0 133650.0 96900.0 132450.0 ; + RECT 95700.0 133650.0 94500.0 132450.0 ; + RECT 95700.0 133650.0 94500.0 132450.0 ; + RECT 98100.0 133650.0 96900.0 132450.0 ; + RECT 95700.0 133650.0 94500.0 132450.0 ; + RECT 93300.0 133650.0 92100.0 132450.0 ; + RECT 93300.0 133650.0 92100.0 132450.0 ; + RECT 95700.0 133650.0 94500.0 132450.0 ; + RECT 98100.0 142350.0 96900.0 141150.0 ; + RECT 95700.0 142350.0 94500.0 141150.0 ; + RECT 95700.0 142350.0 94500.0 141150.0 ; + RECT 98100.0 142350.0 96900.0 141150.0 ; + RECT 95700.0 142350.0 94500.0 141150.0 ; + RECT 93300.0 142350.0 92100.0 141150.0 ; + RECT 93300.0 142350.0 92100.0 141150.0 ; + RECT 95700.0 142350.0 94500.0 141150.0 ; + RECT 90900.0 133050.0 89700.0 131850.0 ; + RECT 90900.0 142950.0 89700.0 141750.0 ; + RECT 93300.0 139800.0 94500.0 138600.0 ; + RECT 96300.0 137100.0 97500.0 135900.0 ; + RECT 95700.0 133650.0 94500.0 132450.0 ; + RECT 93300.0 142350.0 92100.0 141150.0 ; + RECT 92100.0 137100.0 93300.0 135900.0 ; + RECT 97500.0 137100.0 96300.0 135900.0 ; + RECT 94500.0 139800.0 93300.0 138600.0 ; + RECT 93300.0 137100.0 92100.0 135900.0 ; + RECT 99900.0 130950.0 85500.0 130050.0 ; + RECT 99900.0 144750.0 85500.0 143850.0 ; + RECT 110850.0 99600.0 112050.0 100800.0 ; + RECT 129450.0 95100.0 130650.0 96300.0 ; + RECT 107850.0 113400.0 109050.0 114600.0 ; + RECT 126450.0 109500.0 127650.0 110700.0 ; + RECT 129450.0 118200.0 130650.0 119400.0 ; + RECT 104850.0 118200.0 106050.0 119400.0 ; + RECT 126450.0 132000.0 127650.0 133200.0 ; + RECT 101850.0 132000.0 103050.0 133200.0 ; + RECT 110850.0 93600.0 112050.0 94800.0 ; + RECT 107850.0 96300.0 109050.0 97500.0 ; + RECT 104850.0 111000.0 106050.0 112200.0 ; + RECT 107850.0 108300.0 109050.0 109500.0 ; + RECT 110850.0 121200.0 112050.0 122400.0 ; + RECT 101850.0 123900.0 103050.0 125100.0 ; + RECT 104850.0 138600.0 106050.0 139800.0 ; + RECT 101850.0 135900.0 103050.0 137100.0 ; + RECT 79650.0 95250.0 75900.0 96150.0 ; + RECT 79650.0 109650.0 75900.0 110550.0 ; + RECT 79650.0 122850.0 75900.0 123750.0 ; + RECT 79650.0 137250.0 75900.0 138150.0 ; + RECT 130500.0 102450.0 75900.0 103350.0 ; + RECT 130500.0 130050.0 75900.0 130950.0 ; + RECT 130500.0 88650.0 75900.0 89550.0 ; + RECT 130500.0 116250.0 75900.0 117150.0 ; + RECT 130500.0 143850.0 75900.0 144750.0 ; + RECT 114450.0 150450.0 113550.0 151350.0 ; + RECT 114450.0 154950.0 113550.0 155850.0 ; + RECT 118650.0 150450.0 114000.0 151350.0 ; + RECT 114450.0 150900.0 113550.0 155400.0 ; + RECT 114000.0 154950.0 111450.0 155850.0 ; + RECT 130050.0 150450.0 122100.0 151350.0 ; + RECT 114450.0 164850.0 113550.0 165750.0 ; + RECT 114450.0 168750.0 113550.0 169650.0 ; + RECT 118650.0 164850.0 114000.0 165750.0 ; + RECT 114450.0 165300.0 113550.0 169200.0 ; + RECT 114000.0 168750.0 108450.0 169650.0 ; + RECT 127050.0 164850.0 122100.0 165750.0 ; + RECT 130050.0 173550.0 105450.0 174450.0 ; + RECT 127050.0 187350.0 102450.0 188250.0 ; + RECT 111450.0 148950.0 94500.0 149850.0 ; + RECT 108450.0 151650.0 97500.0 152550.0 ; + RECT 105450.0 166350.0 94500.0 167250.0 ; + RECT 108450.0 163650.0 97500.0 164550.0 ; + RECT 111450.0 176550.0 94500.0 177450.0 ; + RECT 102450.0 179250.0 97500.0 180150.0 ; + RECT 105450.0 193950.0 94500.0 194850.0 ; + RECT 102450.0 191250.0 97500.0 192150.0 ; + RECT 88050.0 151650.0 87150.0 152550.0 ; + RECT 88050.0 150450.0 87150.0 151350.0 ; + RECT 92100.0 151650.0 87600.0 152550.0 ; + RECT 88050.0 150900.0 87150.0 152100.0 ; + RECT 87600.0 150450.0 83100.0 151350.0 ; + RECT 88050.0 163650.0 87150.0 164550.0 ; + RECT 88050.0 164850.0 87150.0 165750.0 ; + RECT 92100.0 163650.0 87600.0 164550.0 ; + RECT 88050.0 164100.0 87150.0 165300.0 ; + RECT 87600.0 164850.0 83100.0 165750.0 ; + RECT 88050.0 179250.0 87150.0 180150.0 ; + RECT 88050.0 178050.0 87150.0 178950.0 ; + RECT 92100.0 179250.0 87600.0 180150.0 ; + RECT 88050.0 178500.0 87150.0 179700.0 ; + RECT 87600.0 178050.0 83100.0 178950.0 ; + RECT 88050.0 191250.0 87150.0 192150.0 ; + RECT 88050.0 192450.0 87150.0 193350.0 ; + RECT 92100.0 191250.0 87600.0 192150.0 ; + RECT 88050.0 191700.0 87150.0 192900.0 ; + RECT 87600.0 192450.0 83100.0 193350.0 ; + RECT 117900.0 156150.0 116700.0 158100.0 ; + RECT 117900.0 144300.0 116700.0 146250.0 ; + RECT 122700.0 145650.0 121500.0 143850.0 ; + RECT 122700.0 154950.0 121500.0 158550.0 ; + RECT 120000.0 145650.0 119100.0 154950.0 ; + RECT 122700.0 154950.0 121500.0 156150.0 ; + RECT 120300.0 154950.0 119100.0 156150.0 ; + RECT 120300.0 154950.0 119100.0 156150.0 ; + RECT 122700.0 154950.0 121500.0 156150.0 ; + RECT 122700.0 145650.0 121500.0 146850.0 ; + RECT 120300.0 145650.0 119100.0 146850.0 ; + RECT 120300.0 145650.0 119100.0 146850.0 ; + RECT 122700.0 145650.0 121500.0 146850.0 ; + RECT 117900.0 155550.0 116700.0 156750.0 ; + RECT 117900.0 145650.0 116700.0 146850.0 ; + RECT 122100.0 150300.0 120900.0 151500.0 ; + RECT 122100.0 150300.0 120900.0 151500.0 ; + RECT 119550.0 150450.0 118650.0 151350.0 ; + RECT 124500.0 157650.0 114900.0 158550.0 ; + RECT 124500.0 143850.0 114900.0 144750.0 ; + RECT 117900.0 160050.0 116700.0 158100.0 ; + RECT 117900.0 171900.0 116700.0 169950.0 ; + RECT 122700.0 170550.0 121500.0 172350.0 ; + RECT 122700.0 161250.0 121500.0 157650.0 ; + RECT 120000.0 170550.0 119100.0 161250.0 ; + RECT 122700.0 161250.0 121500.0 160050.0 ; + RECT 120300.0 161250.0 119100.0 160050.0 ; + RECT 120300.0 161250.0 119100.0 160050.0 ; + RECT 122700.0 161250.0 121500.0 160050.0 ; + RECT 122700.0 170550.0 121500.0 169350.0 ; + RECT 120300.0 170550.0 119100.0 169350.0 ; + RECT 120300.0 170550.0 119100.0 169350.0 ; + RECT 122700.0 170550.0 121500.0 169350.0 ; + RECT 117900.0 160650.0 116700.0 159450.0 ; + RECT 117900.0 170550.0 116700.0 169350.0 ; + RECT 122100.0 165900.0 120900.0 164700.0 ; + RECT 122100.0 165900.0 120900.0 164700.0 ; + RECT 119550.0 165750.0 118650.0 164850.0 ; + RECT 124500.0 158550.0 114900.0 157650.0 ; + RECT 124500.0 172350.0 114900.0 171450.0 ; + RECT 78900.0 156150.0 77700.0 158100.0 ; + RECT 78900.0 144300.0 77700.0 146250.0 ; + RECT 83700.0 145650.0 82500.0 143850.0 ; + RECT 83700.0 154950.0 82500.0 158550.0 ; + RECT 81000.0 145650.0 80100.0 154950.0 ; + RECT 83700.0 154950.0 82500.0 156150.0 ; + RECT 81300.0 154950.0 80100.0 156150.0 ; + RECT 81300.0 154950.0 80100.0 156150.0 ; + RECT 83700.0 154950.0 82500.0 156150.0 ; + RECT 83700.0 145650.0 82500.0 146850.0 ; + RECT 81300.0 145650.0 80100.0 146850.0 ; + RECT 81300.0 145650.0 80100.0 146850.0 ; + RECT 83700.0 145650.0 82500.0 146850.0 ; + RECT 78900.0 155550.0 77700.0 156750.0 ; + RECT 78900.0 145650.0 77700.0 146850.0 ; + RECT 83100.0 150300.0 81900.0 151500.0 ; + RECT 83100.0 150300.0 81900.0 151500.0 ; + RECT 80550.0 150450.0 79650.0 151350.0 ; + RECT 85500.0 157650.0 75900.0 158550.0 ; + RECT 85500.0 143850.0 75900.0 144750.0 ; + RECT 78900.0 160050.0 77700.0 158100.0 ; + RECT 78900.0 171900.0 77700.0 169950.0 ; + RECT 83700.0 170550.0 82500.0 172350.0 ; + RECT 83700.0 161250.0 82500.0 157650.0 ; + RECT 81000.0 170550.0 80100.0 161250.0 ; + RECT 83700.0 161250.0 82500.0 160050.0 ; + RECT 81300.0 161250.0 80100.0 160050.0 ; + RECT 81300.0 161250.0 80100.0 160050.0 ; + RECT 83700.0 161250.0 82500.0 160050.0 ; + RECT 83700.0 170550.0 82500.0 169350.0 ; + RECT 81300.0 170550.0 80100.0 169350.0 ; + RECT 81300.0 170550.0 80100.0 169350.0 ; + RECT 83700.0 170550.0 82500.0 169350.0 ; + RECT 78900.0 160650.0 77700.0 159450.0 ; + RECT 78900.0 170550.0 77700.0 169350.0 ; + RECT 83100.0 165900.0 81900.0 164700.0 ; + RECT 83100.0 165900.0 81900.0 164700.0 ; + RECT 80550.0 165750.0 79650.0 164850.0 ; + RECT 85500.0 158550.0 75900.0 157650.0 ; + RECT 85500.0 172350.0 75900.0 171450.0 ; + RECT 78900.0 183750.0 77700.0 185700.0 ; + RECT 78900.0 171900.0 77700.0 173850.0 ; + RECT 83700.0 173250.0 82500.0 171450.0 ; + RECT 83700.0 182550.0 82500.0 186150.0 ; + RECT 81000.0 173250.0 80100.0 182550.0 ; + RECT 83700.0 182550.0 82500.0 183750.0 ; + RECT 81300.0 182550.0 80100.0 183750.0 ; + RECT 81300.0 182550.0 80100.0 183750.0 ; + RECT 83700.0 182550.0 82500.0 183750.0 ; + RECT 83700.0 173250.0 82500.0 174450.0 ; + RECT 81300.0 173250.0 80100.0 174450.0 ; + RECT 81300.0 173250.0 80100.0 174450.0 ; + RECT 83700.0 173250.0 82500.0 174450.0 ; + RECT 78900.0 183150.0 77700.0 184350.0 ; + RECT 78900.0 173250.0 77700.0 174450.0 ; + RECT 83100.0 177900.0 81900.0 179100.0 ; + RECT 83100.0 177900.0 81900.0 179100.0 ; + RECT 80550.0 178050.0 79650.0 178950.0 ; + RECT 85500.0 185250.0 75900.0 186150.0 ; + RECT 85500.0 171450.0 75900.0 172350.0 ; + RECT 78900.0 187650.0 77700.0 185700.0 ; + RECT 78900.0 199500.0 77700.0 197550.0 ; + RECT 83700.0 198150.0 82500.0 199950.0 ; + RECT 83700.0 188850.0 82500.0 185250.0 ; + RECT 81000.0 198150.0 80100.0 188850.0 ; + RECT 83700.0 188850.0 82500.0 187650.0 ; + RECT 81300.0 188850.0 80100.0 187650.0 ; + RECT 81300.0 188850.0 80100.0 187650.0 ; + RECT 83700.0 188850.0 82500.0 187650.0 ; + RECT 83700.0 198150.0 82500.0 196950.0 ; + RECT 81300.0 198150.0 80100.0 196950.0 ; + RECT 81300.0 198150.0 80100.0 196950.0 ; + RECT 83700.0 198150.0 82500.0 196950.0 ; + RECT 78900.0 188250.0 77700.0 187050.0 ; + RECT 78900.0 198150.0 77700.0 196950.0 ; + RECT 83100.0 193500.0 81900.0 192300.0 ; + RECT 83100.0 193500.0 81900.0 192300.0 ; + RECT 80550.0 193350.0 79650.0 192450.0 ; + RECT 85500.0 186150.0 75900.0 185250.0 ; + RECT 85500.0 199950.0 75900.0 199050.0 ; + RECT 98100.0 146250.0 96900.0 143850.0 ; + RECT 98100.0 154950.0 96900.0 158550.0 ; + RECT 93300.0 154950.0 92100.0 158550.0 ; + RECT 90900.0 156150.0 89700.0 158100.0 ; + RECT 90900.0 144300.0 89700.0 146250.0 ; + RECT 98100.0 154950.0 96900.0 156150.0 ; + RECT 95700.0 154950.0 94500.0 156150.0 ; + RECT 95700.0 154950.0 94500.0 156150.0 ; + RECT 98100.0 154950.0 96900.0 156150.0 ; + RECT 95700.0 154950.0 94500.0 156150.0 ; + RECT 93300.0 154950.0 92100.0 156150.0 ; + RECT 93300.0 154950.0 92100.0 156150.0 ; + RECT 95700.0 154950.0 94500.0 156150.0 ; + RECT 98100.0 146250.0 96900.0 147450.0 ; + RECT 95700.0 146250.0 94500.0 147450.0 ; + RECT 95700.0 146250.0 94500.0 147450.0 ; + RECT 98100.0 146250.0 96900.0 147450.0 ; + RECT 95700.0 146250.0 94500.0 147450.0 ; + RECT 93300.0 146250.0 92100.0 147450.0 ; + RECT 93300.0 146250.0 92100.0 147450.0 ; + RECT 95700.0 146250.0 94500.0 147450.0 ; + RECT 90900.0 155550.0 89700.0 156750.0 ; + RECT 90900.0 145650.0 89700.0 146850.0 ; + RECT 93300.0 148800.0 94500.0 150000.0 ; + RECT 96300.0 151500.0 97500.0 152700.0 ; + RECT 95700.0 154950.0 94500.0 156150.0 ; + RECT 93300.0 146250.0 92100.0 147450.0 ; + RECT 92100.0 151500.0 93300.0 152700.0 ; + RECT 97500.0 151500.0 96300.0 152700.0 ; + RECT 94500.0 148800.0 93300.0 150000.0 ; + RECT 93300.0 151500.0 92100.0 152700.0 ; + RECT 99900.0 157650.0 85500.0 158550.0 ; + RECT 99900.0 143850.0 85500.0 144750.0 ; + RECT 98100.0 169950.0 96900.0 172350.0 ; + RECT 98100.0 161250.0 96900.0 157650.0 ; + RECT 93300.0 161250.0 92100.0 157650.0 ; + RECT 90900.0 160050.0 89700.0 158100.0 ; + RECT 90900.0 171900.0 89700.0 169950.0 ; + RECT 98100.0 161250.0 96900.0 160050.0 ; + RECT 95700.0 161250.0 94500.0 160050.0 ; + RECT 95700.0 161250.0 94500.0 160050.0 ; + RECT 98100.0 161250.0 96900.0 160050.0 ; + RECT 95700.0 161250.0 94500.0 160050.0 ; + RECT 93300.0 161250.0 92100.0 160050.0 ; + RECT 93300.0 161250.0 92100.0 160050.0 ; + RECT 95700.0 161250.0 94500.0 160050.0 ; + RECT 98100.0 169950.0 96900.0 168750.0 ; + RECT 95700.0 169950.0 94500.0 168750.0 ; + RECT 95700.0 169950.0 94500.0 168750.0 ; + RECT 98100.0 169950.0 96900.0 168750.0 ; + RECT 95700.0 169950.0 94500.0 168750.0 ; + RECT 93300.0 169950.0 92100.0 168750.0 ; + RECT 93300.0 169950.0 92100.0 168750.0 ; + RECT 95700.0 169950.0 94500.0 168750.0 ; + RECT 90900.0 160650.0 89700.0 159450.0 ; + RECT 90900.0 170550.0 89700.0 169350.0 ; + RECT 93300.0 167400.0 94500.0 166200.0 ; + RECT 96300.0 164700.0 97500.0 163500.0 ; + RECT 95700.0 161250.0 94500.0 160050.0 ; + RECT 93300.0 169950.0 92100.0 168750.0 ; + RECT 92100.0 164700.0 93300.0 163500.0 ; + RECT 97500.0 164700.0 96300.0 163500.0 ; + RECT 94500.0 167400.0 93300.0 166200.0 ; + RECT 93300.0 164700.0 92100.0 163500.0 ; + RECT 99900.0 158550.0 85500.0 157650.0 ; + RECT 99900.0 172350.0 85500.0 171450.0 ; + RECT 98100.0 173850.0 96900.0 171450.0 ; + RECT 98100.0 182550.0 96900.0 186150.0 ; + RECT 93300.0 182550.0 92100.0 186150.0 ; + RECT 90900.0 183750.0 89700.0 185700.0 ; + RECT 90900.0 171900.0 89700.0 173850.0 ; + RECT 98100.0 182550.0 96900.0 183750.0 ; + RECT 95700.0 182550.0 94500.0 183750.0 ; + RECT 95700.0 182550.0 94500.0 183750.0 ; + RECT 98100.0 182550.0 96900.0 183750.0 ; + RECT 95700.0 182550.0 94500.0 183750.0 ; + RECT 93300.0 182550.0 92100.0 183750.0 ; + RECT 93300.0 182550.0 92100.0 183750.0 ; + RECT 95700.0 182550.0 94500.0 183750.0 ; + RECT 98100.0 173850.0 96900.0 175050.0 ; + RECT 95700.0 173850.0 94500.0 175050.0 ; + RECT 95700.0 173850.0 94500.0 175050.0 ; + RECT 98100.0 173850.0 96900.0 175050.0 ; + RECT 95700.0 173850.0 94500.0 175050.0 ; + RECT 93300.0 173850.0 92100.0 175050.0 ; + RECT 93300.0 173850.0 92100.0 175050.0 ; + RECT 95700.0 173850.0 94500.0 175050.0 ; + RECT 90900.0 183150.0 89700.0 184350.0 ; + RECT 90900.0 173250.0 89700.0 174450.0 ; + RECT 93300.0 176400.0 94500.0 177600.0 ; + RECT 96300.0 179100.0 97500.0 180300.0 ; + RECT 95700.0 182550.0 94500.0 183750.0 ; + RECT 93300.0 173850.0 92100.0 175050.0 ; + RECT 92100.0 179100.0 93300.0 180300.0 ; + RECT 97500.0 179100.0 96300.0 180300.0 ; + RECT 94500.0 176400.0 93300.0 177600.0 ; + RECT 93300.0 179100.0 92100.0 180300.0 ; + RECT 99900.0 185250.0 85500.0 186150.0 ; + RECT 99900.0 171450.0 85500.0 172350.0 ; + RECT 98100.0 197550.0 96900.0 199950.0 ; + RECT 98100.0 188850.0 96900.0 185250.0 ; + RECT 93300.0 188850.0 92100.0 185250.0 ; + RECT 90900.0 187650.0 89700.0 185700.0 ; + RECT 90900.0 199500.0 89700.0 197550.0 ; + RECT 98100.0 188850.0 96900.0 187650.0 ; + RECT 95700.0 188850.0 94500.0 187650.0 ; + RECT 95700.0 188850.0 94500.0 187650.0 ; + RECT 98100.0 188850.0 96900.0 187650.0 ; + RECT 95700.0 188850.0 94500.0 187650.0 ; + RECT 93300.0 188850.0 92100.0 187650.0 ; + RECT 93300.0 188850.0 92100.0 187650.0 ; + RECT 95700.0 188850.0 94500.0 187650.0 ; + RECT 98100.0 197550.0 96900.0 196350.0 ; + RECT 95700.0 197550.0 94500.0 196350.0 ; + RECT 95700.0 197550.0 94500.0 196350.0 ; + RECT 98100.0 197550.0 96900.0 196350.0 ; + RECT 95700.0 197550.0 94500.0 196350.0 ; + RECT 93300.0 197550.0 92100.0 196350.0 ; + RECT 93300.0 197550.0 92100.0 196350.0 ; + RECT 95700.0 197550.0 94500.0 196350.0 ; + RECT 90900.0 188250.0 89700.0 187050.0 ; + RECT 90900.0 198150.0 89700.0 196950.0 ; + RECT 93300.0 195000.0 94500.0 193800.0 ; + RECT 96300.0 192300.0 97500.0 191100.0 ; + RECT 95700.0 188850.0 94500.0 187650.0 ; + RECT 93300.0 197550.0 92100.0 196350.0 ; + RECT 92100.0 192300.0 93300.0 191100.0 ; + RECT 97500.0 192300.0 96300.0 191100.0 ; + RECT 94500.0 195000.0 93300.0 193800.0 ; + RECT 93300.0 192300.0 92100.0 191100.0 ; + RECT 99900.0 186150.0 85500.0 185250.0 ; + RECT 99900.0 199950.0 85500.0 199050.0 ; + RECT 110850.0 154800.0 112050.0 156000.0 ; + RECT 129450.0 150300.0 130650.0 151500.0 ; + RECT 107850.0 168600.0 109050.0 169800.0 ; + RECT 126450.0 164700.0 127650.0 165900.0 ; + RECT 129450.0 173400.0 130650.0 174600.0 ; + RECT 104850.0 173400.0 106050.0 174600.0 ; + RECT 126450.0 187200.0 127650.0 188400.0 ; + RECT 101850.0 187200.0 103050.0 188400.0 ; + RECT 110850.0 148800.0 112050.0 150000.0 ; + RECT 107850.0 151500.0 109050.0 152700.0 ; + RECT 104850.0 166200.0 106050.0 167400.0 ; + RECT 107850.0 163500.0 109050.0 164700.0 ; + RECT 110850.0 176400.0 112050.0 177600.0 ; + RECT 101850.0 179100.0 103050.0 180300.0 ; + RECT 104850.0 193800.0 106050.0 195000.0 ; + RECT 101850.0 191100.0 103050.0 192300.0 ; + RECT 79650.0 150450.0 75900.0 151350.0 ; + RECT 79650.0 164850.0 75900.0 165750.0 ; + RECT 79650.0 178050.0 75900.0 178950.0 ; + RECT 79650.0 192450.0 75900.0 193350.0 ; + RECT 130500.0 157650.0 75900.0 158550.0 ; + RECT 130500.0 185250.0 75900.0 186150.0 ; + RECT 130500.0 143850.0 75900.0 144750.0 ; + RECT 130500.0 171450.0 75900.0 172350.0 ; + RECT 130500.0 199050.0 75900.0 199950.0 ; + RECT 77700.0 201450.0 78900.0 199050.0 ; + RECT 77700.0 210150.0 78900.0 213750.0 ; + RECT 82500.0 210150.0 83700.0 213750.0 ; + RECT 84900.0 211350.0 86100.0 213300.0 ; + RECT 84900.0 199500.0 86100.0 201450.0 ; + RECT 77700.0 210150.0 78900.0 211350.0 ; + RECT 80100.0 210150.0 81300.0 211350.0 ; + RECT 80100.0 210150.0 81300.0 211350.0 ; + RECT 77700.0 210150.0 78900.0 211350.0 ; + RECT 80100.0 210150.0 81300.0 211350.0 ; + RECT 82500.0 210150.0 83700.0 211350.0 ; + RECT 82500.0 210150.0 83700.0 211350.0 ; + RECT 80100.0 210150.0 81300.0 211350.0 ; + RECT 77700.0 201450.0 78900.0 202650.0 ; + RECT 80100.0 201450.0 81300.0 202650.0 ; + RECT 80100.0 201450.0 81300.0 202650.0 ; + RECT 77700.0 201450.0 78900.0 202650.0 ; + RECT 80100.0 201450.0 81300.0 202650.0 ; + RECT 82500.0 201450.0 83700.0 202650.0 ; + RECT 82500.0 201450.0 83700.0 202650.0 ; + RECT 80100.0 201450.0 81300.0 202650.0 ; + RECT 84900.0 210750.0 86100.0 211950.0 ; + RECT 84900.0 200850.0 86100.0 202050.0 ; + RECT 82500.0 204000.0 81300.0 205200.0 ; + RECT 79500.0 206700.0 78300.0 207900.0 ; + RECT 80100.0 210150.0 81300.0 211350.0 ; + RECT 82500.0 201450.0 83700.0 202650.0 ; + RECT 83700.0 206700.0 82500.0 207900.0 ; + RECT 78300.0 206700.0 79500.0 207900.0 ; + RECT 81300.0 204000.0 82500.0 205200.0 ; + RECT 82500.0 206700.0 83700.0 207900.0 ; + RECT 75900.0 212850.0 90300.0 213750.0 ; + RECT 75900.0 199050.0 90300.0 199950.0 ; + RECT 77700.0 225150.0 78900.0 227550.0 ; + RECT 77700.0 216450.0 78900.0 212850.0 ; + RECT 82500.0 216450.0 83700.0 212850.0 ; + RECT 84900.0 215250.0 86100.0 213300.0 ; + RECT 84900.0 227100.0 86100.0 225150.0 ; + RECT 77700.0 216450.0 78900.0 215250.0 ; + RECT 80100.0 216450.0 81300.0 215250.0 ; + RECT 80100.0 216450.0 81300.0 215250.0 ; + RECT 77700.0 216450.0 78900.0 215250.0 ; + RECT 80100.0 216450.0 81300.0 215250.0 ; + RECT 82500.0 216450.0 83700.0 215250.0 ; + RECT 82500.0 216450.0 83700.0 215250.0 ; + RECT 80100.0 216450.0 81300.0 215250.0 ; + RECT 77700.0 225150.0 78900.0 223950.0 ; + RECT 80100.0 225150.0 81300.0 223950.0 ; + RECT 80100.0 225150.0 81300.0 223950.0 ; + RECT 77700.0 225150.0 78900.0 223950.0 ; + RECT 80100.0 225150.0 81300.0 223950.0 ; + RECT 82500.0 225150.0 83700.0 223950.0 ; + RECT 82500.0 225150.0 83700.0 223950.0 ; + RECT 80100.0 225150.0 81300.0 223950.0 ; + RECT 84900.0 215850.0 86100.0 214650.0 ; + RECT 84900.0 225750.0 86100.0 224550.0 ; + RECT 82500.0 222600.0 81300.0 221400.0 ; + RECT 79500.0 219900.0 78300.0 218700.0 ; + RECT 80100.0 216450.0 81300.0 215250.0 ; + RECT 82500.0 225150.0 83700.0 223950.0 ; + RECT 83700.0 219900.0 82500.0 218700.0 ; + RECT 78300.0 219900.0 79500.0 218700.0 ; + RECT 81300.0 222600.0 82500.0 221400.0 ; + RECT 82500.0 219900.0 83700.0 218700.0 ; + RECT 75900.0 213750.0 90300.0 212850.0 ; + RECT 75900.0 227550.0 90300.0 226650.0 ; + RECT 77700.0 229050.0 78900.0 226650.0 ; + RECT 77700.0 237750.0 78900.0 241350.0 ; + RECT 82500.0 237750.0 83700.0 241350.0 ; + RECT 84900.0 238950.0 86100.0 240900.0 ; + RECT 84900.0 227100.0 86100.0 229050.0 ; + RECT 77700.0 237750.0 78900.0 238950.0 ; + RECT 80100.0 237750.0 81300.0 238950.0 ; + RECT 80100.0 237750.0 81300.0 238950.0 ; + RECT 77700.0 237750.0 78900.0 238950.0 ; + RECT 80100.0 237750.0 81300.0 238950.0 ; + RECT 82500.0 237750.0 83700.0 238950.0 ; + RECT 82500.0 237750.0 83700.0 238950.0 ; + RECT 80100.0 237750.0 81300.0 238950.0 ; + RECT 77700.0 229050.0 78900.0 230250.0 ; + RECT 80100.0 229050.0 81300.0 230250.0 ; + RECT 80100.0 229050.0 81300.0 230250.0 ; + RECT 77700.0 229050.0 78900.0 230250.0 ; + RECT 80100.0 229050.0 81300.0 230250.0 ; + RECT 82500.0 229050.0 83700.0 230250.0 ; + RECT 82500.0 229050.0 83700.0 230250.0 ; + RECT 80100.0 229050.0 81300.0 230250.0 ; + RECT 84900.0 238350.0 86100.0 239550.0 ; + RECT 84900.0 228450.0 86100.0 229650.0 ; + RECT 82500.0 231600.0 81300.0 232800.0 ; + RECT 79500.0 234300.0 78300.0 235500.0 ; + RECT 80100.0 237750.0 81300.0 238950.0 ; + RECT 82500.0 229050.0 83700.0 230250.0 ; + RECT 83700.0 234300.0 82500.0 235500.0 ; + RECT 78300.0 234300.0 79500.0 235500.0 ; + RECT 81300.0 231600.0 82500.0 232800.0 ; + RECT 82500.0 234300.0 83700.0 235500.0 ; + RECT 75900.0 240450.0 90300.0 241350.0 ; + RECT 75900.0 226650.0 90300.0 227550.0 ; + RECT 77700.0 252750.0 78900.0 255150.0 ; + RECT 77700.0 244050.0 78900.0 240450.0 ; + RECT 82500.0 244050.0 83700.0 240450.0 ; + RECT 84900.0 242850.0 86100.0 240900.0 ; + RECT 84900.0 254700.0 86100.0 252750.0 ; + RECT 77700.0 244050.0 78900.0 242850.0 ; + RECT 80100.0 244050.0 81300.0 242850.0 ; + RECT 80100.0 244050.0 81300.0 242850.0 ; + RECT 77700.0 244050.0 78900.0 242850.0 ; + RECT 80100.0 244050.0 81300.0 242850.0 ; + RECT 82500.0 244050.0 83700.0 242850.0 ; + RECT 82500.0 244050.0 83700.0 242850.0 ; + RECT 80100.0 244050.0 81300.0 242850.0 ; + RECT 77700.0 252750.0 78900.0 251550.0 ; + RECT 80100.0 252750.0 81300.0 251550.0 ; + RECT 80100.0 252750.0 81300.0 251550.0 ; + RECT 77700.0 252750.0 78900.0 251550.0 ; + RECT 80100.0 252750.0 81300.0 251550.0 ; + RECT 82500.0 252750.0 83700.0 251550.0 ; + RECT 82500.0 252750.0 83700.0 251550.0 ; + RECT 80100.0 252750.0 81300.0 251550.0 ; + RECT 84900.0 243450.0 86100.0 242250.0 ; + RECT 84900.0 253350.0 86100.0 252150.0 ; + RECT 82500.0 250200.0 81300.0 249000.0 ; + RECT 79500.0 247500.0 78300.0 246300.0 ; + RECT 80100.0 244050.0 81300.0 242850.0 ; + RECT 82500.0 252750.0 83700.0 251550.0 ; + RECT 83700.0 247500.0 82500.0 246300.0 ; + RECT 78300.0 247500.0 79500.0 246300.0 ; + RECT 81300.0 250200.0 82500.0 249000.0 ; + RECT 82500.0 247500.0 83700.0 246300.0 ; + RECT 75900.0 241350.0 90300.0 240450.0 ; + RECT 75900.0 255150.0 90300.0 254250.0 ; + RECT 77700.0 256650.0 78900.0 254250.0 ; + RECT 77700.0 265350.0 78900.0 268950.0 ; + RECT 82500.0 265350.0 83700.0 268950.0 ; + RECT 84900.0 266550.0 86100.0 268500.0 ; + RECT 84900.0 254700.0 86100.0 256650.0 ; + RECT 77700.0 265350.0 78900.0 266550.0 ; + RECT 80100.0 265350.0 81300.0 266550.0 ; + RECT 80100.0 265350.0 81300.0 266550.0 ; + RECT 77700.0 265350.0 78900.0 266550.0 ; + RECT 80100.0 265350.0 81300.0 266550.0 ; + RECT 82500.0 265350.0 83700.0 266550.0 ; + RECT 82500.0 265350.0 83700.0 266550.0 ; + RECT 80100.0 265350.0 81300.0 266550.0 ; + RECT 77700.0 256650.0 78900.0 257850.0 ; + RECT 80100.0 256650.0 81300.0 257850.0 ; + RECT 80100.0 256650.0 81300.0 257850.0 ; + RECT 77700.0 256650.0 78900.0 257850.0 ; + RECT 80100.0 256650.0 81300.0 257850.0 ; + RECT 82500.0 256650.0 83700.0 257850.0 ; + RECT 82500.0 256650.0 83700.0 257850.0 ; + RECT 80100.0 256650.0 81300.0 257850.0 ; + RECT 84900.0 265950.0 86100.0 267150.0 ; + RECT 84900.0 256050.0 86100.0 257250.0 ; + RECT 82500.0 259200.0 81300.0 260400.0 ; + RECT 79500.0 261900.0 78300.0 263100.0 ; + RECT 80100.0 265350.0 81300.0 266550.0 ; + RECT 82500.0 256650.0 83700.0 257850.0 ; + RECT 83700.0 261900.0 82500.0 263100.0 ; + RECT 78300.0 261900.0 79500.0 263100.0 ; + RECT 81300.0 259200.0 82500.0 260400.0 ; + RECT 82500.0 261900.0 83700.0 263100.0 ; + RECT 75900.0 268050.0 90300.0 268950.0 ; + RECT 75900.0 254250.0 90300.0 255150.0 ; + RECT 77700.0 280350.0 78900.0 282750.0 ; + RECT 77700.0 271650.0 78900.0 268050.0 ; + RECT 82500.0 271650.0 83700.0 268050.0 ; + RECT 84900.0 270450.0 86100.0 268500.0 ; + RECT 84900.0 282300.0 86100.0 280350.0 ; + RECT 77700.0 271650.0 78900.0 270450.0 ; + RECT 80100.0 271650.0 81300.0 270450.0 ; + RECT 80100.0 271650.0 81300.0 270450.0 ; + RECT 77700.0 271650.0 78900.0 270450.0 ; + RECT 80100.0 271650.0 81300.0 270450.0 ; + RECT 82500.0 271650.0 83700.0 270450.0 ; + RECT 82500.0 271650.0 83700.0 270450.0 ; + RECT 80100.0 271650.0 81300.0 270450.0 ; + RECT 77700.0 280350.0 78900.0 279150.0 ; + RECT 80100.0 280350.0 81300.0 279150.0 ; + RECT 80100.0 280350.0 81300.0 279150.0 ; + RECT 77700.0 280350.0 78900.0 279150.0 ; + RECT 80100.0 280350.0 81300.0 279150.0 ; + RECT 82500.0 280350.0 83700.0 279150.0 ; + RECT 82500.0 280350.0 83700.0 279150.0 ; + RECT 80100.0 280350.0 81300.0 279150.0 ; + RECT 84900.0 271050.0 86100.0 269850.0 ; + RECT 84900.0 280950.0 86100.0 279750.0 ; + RECT 82500.0 277800.0 81300.0 276600.0 ; + RECT 79500.0 275100.0 78300.0 273900.0 ; + RECT 80100.0 271650.0 81300.0 270450.0 ; + RECT 82500.0 280350.0 83700.0 279150.0 ; + RECT 83700.0 275100.0 82500.0 273900.0 ; + RECT 78300.0 275100.0 79500.0 273900.0 ; + RECT 81300.0 277800.0 82500.0 276600.0 ; + RECT 82500.0 275100.0 83700.0 273900.0 ; + RECT 75900.0 268950.0 90300.0 268050.0 ; + RECT 75900.0 282750.0 90300.0 281850.0 ; + RECT 77700.0 284250.0 78900.0 281850.0 ; + RECT 77700.0 292950.0 78900.0 296550.0 ; + RECT 82500.0 292950.0 83700.0 296550.0 ; + RECT 84900.0 294150.0 86100.0 296100.0 ; + RECT 84900.0 282300.0 86100.0 284250.0 ; + RECT 77700.0 292950.0 78900.0 294150.0 ; + RECT 80100.0 292950.0 81300.0 294150.0 ; + RECT 80100.0 292950.0 81300.0 294150.0 ; + RECT 77700.0 292950.0 78900.0 294150.0 ; + RECT 80100.0 292950.0 81300.0 294150.0 ; + RECT 82500.0 292950.0 83700.0 294150.0 ; + RECT 82500.0 292950.0 83700.0 294150.0 ; + RECT 80100.0 292950.0 81300.0 294150.0 ; + RECT 77700.0 284250.0 78900.0 285450.0 ; + RECT 80100.0 284250.0 81300.0 285450.0 ; + RECT 80100.0 284250.0 81300.0 285450.0 ; + RECT 77700.0 284250.0 78900.0 285450.0 ; + RECT 80100.0 284250.0 81300.0 285450.0 ; + RECT 82500.0 284250.0 83700.0 285450.0 ; + RECT 82500.0 284250.0 83700.0 285450.0 ; + RECT 80100.0 284250.0 81300.0 285450.0 ; + RECT 84900.0 293550.0 86100.0 294750.0 ; + RECT 84900.0 283650.0 86100.0 284850.0 ; + RECT 82500.0 286800.0 81300.0 288000.0 ; + RECT 79500.0 289500.0 78300.0 290700.0 ; + RECT 80100.0 292950.0 81300.0 294150.0 ; + RECT 82500.0 284250.0 83700.0 285450.0 ; + RECT 83700.0 289500.0 82500.0 290700.0 ; + RECT 78300.0 289500.0 79500.0 290700.0 ; + RECT 81300.0 286800.0 82500.0 288000.0 ; + RECT 82500.0 289500.0 83700.0 290700.0 ; + RECT 75900.0 295650.0 90300.0 296550.0 ; + RECT 75900.0 281850.0 90300.0 282750.0 ; + RECT 77700.0 307950.0 78900.0 310350.0 ; + RECT 77700.0 299250.0 78900.0 295650.0 ; + RECT 82500.0 299250.0 83700.0 295650.0 ; + RECT 84900.0 298050.0 86100.0 296100.0 ; + RECT 84900.0 309900.0 86100.0 307950.0 ; + RECT 77700.0 299250.0 78900.0 298050.0 ; + RECT 80100.0 299250.0 81300.0 298050.0 ; + RECT 80100.0 299250.0 81300.0 298050.0 ; + RECT 77700.0 299250.0 78900.0 298050.0 ; + RECT 80100.0 299250.0 81300.0 298050.0 ; + RECT 82500.0 299250.0 83700.0 298050.0 ; + RECT 82500.0 299250.0 83700.0 298050.0 ; + RECT 80100.0 299250.0 81300.0 298050.0 ; + RECT 77700.0 307950.0 78900.0 306750.0 ; + RECT 80100.0 307950.0 81300.0 306750.0 ; + RECT 80100.0 307950.0 81300.0 306750.0 ; + RECT 77700.0 307950.0 78900.0 306750.0 ; + RECT 80100.0 307950.0 81300.0 306750.0 ; + RECT 82500.0 307950.0 83700.0 306750.0 ; + RECT 82500.0 307950.0 83700.0 306750.0 ; + RECT 80100.0 307950.0 81300.0 306750.0 ; + RECT 84900.0 298650.0 86100.0 297450.0 ; + RECT 84900.0 308550.0 86100.0 307350.0 ; + RECT 82500.0 305400.0 81300.0 304200.0 ; + RECT 79500.0 302700.0 78300.0 301500.0 ; + RECT 80100.0 299250.0 81300.0 298050.0 ; + RECT 82500.0 307950.0 83700.0 306750.0 ; + RECT 83700.0 302700.0 82500.0 301500.0 ; + RECT 78300.0 302700.0 79500.0 301500.0 ; + RECT 81300.0 305400.0 82500.0 304200.0 ; + RECT 82500.0 302700.0 83700.0 301500.0 ; + RECT 75900.0 296550.0 90300.0 295650.0 ; + RECT 75900.0 310350.0 90300.0 309450.0 ; + RECT 77700.0 311850.0 78900.0 309450.0 ; + RECT 77700.0 320550.0 78900.0 324150.0 ; + RECT 82500.0 320550.0 83700.0 324150.0 ; + RECT 84900.0 321750.0 86100.0 323700.0 ; + RECT 84900.0 309900.0 86100.0 311850.0 ; + RECT 77700.0 320550.0 78900.0 321750.0 ; + RECT 80100.0 320550.0 81300.0 321750.0 ; + RECT 80100.0 320550.0 81300.0 321750.0 ; + RECT 77700.0 320550.0 78900.0 321750.0 ; + RECT 80100.0 320550.0 81300.0 321750.0 ; + RECT 82500.0 320550.0 83700.0 321750.0 ; + RECT 82500.0 320550.0 83700.0 321750.0 ; + RECT 80100.0 320550.0 81300.0 321750.0 ; + RECT 77700.0 311850.0 78900.0 313050.0 ; + RECT 80100.0 311850.0 81300.0 313050.0 ; + RECT 80100.0 311850.0 81300.0 313050.0 ; + RECT 77700.0 311850.0 78900.0 313050.0 ; + RECT 80100.0 311850.0 81300.0 313050.0 ; + RECT 82500.0 311850.0 83700.0 313050.0 ; + RECT 82500.0 311850.0 83700.0 313050.0 ; + RECT 80100.0 311850.0 81300.0 313050.0 ; + RECT 84900.0 321150.0 86100.0 322350.0 ; + RECT 84900.0 311250.0 86100.0 312450.0 ; + RECT 82500.0 314400.0 81300.0 315600.0 ; + RECT 79500.0 317100.0 78300.0 318300.0 ; + RECT 80100.0 320550.0 81300.0 321750.0 ; + RECT 82500.0 311850.0 83700.0 313050.0 ; + RECT 83700.0 317100.0 82500.0 318300.0 ; + RECT 78300.0 317100.0 79500.0 318300.0 ; + RECT 81300.0 314400.0 82500.0 315600.0 ; + RECT 82500.0 317100.0 83700.0 318300.0 ; + RECT 75900.0 323250.0 90300.0 324150.0 ; + RECT 75900.0 309450.0 90300.0 310350.0 ; + RECT 77700.0 335550.0 78900.0 337950.0 ; + RECT 77700.0 326850.0 78900.0 323250.0 ; + RECT 82500.0 326850.0 83700.0 323250.0 ; + RECT 84900.0 325650.0 86100.0 323700.0 ; + RECT 84900.0 337500.0 86100.0 335550.0 ; + RECT 77700.0 326850.0 78900.0 325650.0 ; + RECT 80100.0 326850.0 81300.0 325650.0 ; + RECT 80100.0 326850.0 81300.0 325650.0 ; + RECT 77700.0 326850.0 78900.0 325650.0 ; + RECT 80100.0 326850.0 81300.0 325650.0 ; + RECT 82500.0 326850.0 83700.0 325650.0 ; + RECT 82500.0 326850.0 83700.0 325650.0 ; + RECT 80100.0 326850.0 81300.0 325650.0 ; + RECT 77700.0 335550.0 78900.0 334350.0 ; + RECT 80100.0 335550.0 81300.0 334350.0 ; + RECT 80100.0 335550.0 81300.0 334350.0 ; + RECT 77700.0 335550.0 78900.0 334350.0 ; + RECT 80100.0 335550.0 81300.0 334350.0 ; + RECT 82500.0 335550.0 83700.0 334350.0 ; + RECT 82500.0 335550.0 83700.0 334350.0 ; + RECT 80100.0 335550.0 81300.0 334350.0 ; + RECT 84900.0 326250.0 86100.0 325050.0 ; + RECT 84900.0 336150.0 86100.0 334950.0 ; + RECT 82500.0 333000.0 81300.0 331800.0 ; + RECT 79500.0 330300.0 78300.0 329100.0 ; + RECT 80100.0 326850.0 81300.0 325650.0 ; + RECT 82500.0 335550.0 83700.0 334350.0 ; + RECT 83700.0 330300.0 82500.0 329100.0 ; + RECT 78300.0 330300.0 79500.0 329100.0 ; + RECT 81300.0 333000.0 82500.0 331800.0 ; + RECT 82500.0 330300.0 83700.0 329100.0 ; + RECT 75900.0 324150.0 90300.0 323250.0 ; + RECT 75900.0 337950.0 90300.0 337050.0 ; + RECT 77700.0 339450.0 78900.0 337050.0 ; + RECT 77700.0 348150.0 78900.0 351750.0 ; + RECT 82500.0 348150.0 83700.0 351750.0 ; + RECT 84900.0 349350.0 86100.0 351300.0 ; + RECT 84900.0 337500.0 86100.0 339450.0 ; + RECT 77700.0 348150.0 78900.0 349350.0 ; + RECT 80100.0 348150.0 81300.0 349350.0 ; + RECT 80100.0 348150.0 81300.0 349350.0 ; + RECT 77700.0 348150.0 78900.0 349350.0 ; + RECT 80100.0 348150.0 81300.0 349350.0 ; + RECT 82500.0 348150.0 83700.0 349350.0 ; + RECT 82500.0 348150.0 83700.0 349350.0 ; + RECT 80100.0 348150.0 81300.0 349350.0 ; + RECT 77700.0 339450.0 78900.0 340650.0 ; + RECT 80100.0 339450.0 81300.0 340650.0 ; + RECT 80100.0 339450.0 81300.0 340650.0 ; + RECT 77700.0 339450.0 78900.0 340650.0 ; + RECT 80100.0 339450.0 81300.0 340650.0 ; + RECT 82500.0 339450.0 83700.0 340650.0 ; + RECT 82500.0 339450.0 83700.0 340650.0 ; + RECT 80100.0 339450.0 81300.0 340650.0 ; + RECT 84900.0 348750.0 86100.0 349950.0 ; + RECT 84900.0 338850.0 86100.0 340050.0 ; + RECT 82500.0 342000.0 81300.0 343200.0 ; + RECT 79500.0 344700.0 78300.0 345900.0 ; + RECT 80100.0 348150.0 81300.0 349350.0 ; + RECT 82500.0 339450.0 83700.0 340650.0 ; + RECT 83700.0 344700.0 82500.0 345900.0 ; + RECT 78300.0 344700.0 79500.0 345900.0 ; + RECT 81300.0 342000.0 82500.0 343200.0 ; + RECT 82500.0 344700.0 83700.0 345900.0 ; + RECT 75900.0 350850.0 90300.0 351750.0 ; + RECT 75900.0 337050.0 90300.0 337950.0 ; + RECT 77700.0 363150.0 78900.0 365550.0 ; + RECT 77700.0 354450.0 78900.0 350850.0 ; + RECT 82500.0 354450.0 83700.0 350850.0 ; + RECT 84900.0 353250.0 86100.0 351300.0 ; + RECT 84900.0 365100.0 86100.0 363150.0 ; + RECT 77700.0 354450.0 78900.0 353250.0 ; + RECT 80100.0 354450.0 81300.0 353250.0 ; + RECT 80100.0 354450.0 81300.0 353250.0 ; + RECT 77700.0 354450.0 78900.0 353250.0 ; + RECT 80100.0 354450.0 81300.0 353250.0 ; + RECT 82500.0 354450.0 83700.0 353250.0 ; + RECT 82500.0 354450.0 83700.0 353250.0 ; + RECT 80100.0 354450.0 81300.0 353250.0 ; + RECT 77700.0 363150.0 78900.0 361950.0 ; + RECT 80100.0 363150.0 81300.0 361950.0 ; + RECT 80100.0 363150.0 81300.0 361950.0 ; + RECT 77700.0 363150.0 78900.0 361950.0 ; + RECT 80100.0 363150.0 81300.0 361950.0 ; + RECT 82500.0 363150.0 83700.0 361950.0 ; + RECT 82500.0 363150.0 83700.0 361950.0 ; + RECT 80100.0 363150.0 81300.0 361950.0 ; + RECT 84900.0 353850.0 86100.0 352650.0 ; + RECT 84900.0 363750.0 86100.0 362550.0 ; + RECT 82500.0 360600.0 81300.0 359400.0 ; + RECT 79500.0 357900.0 78300.0 356700.0 ; + RECT 80100.0 354450.0 81300.0 353250.0 ; + RECT 82500.0 363150.0 83700.0 361950.0 ; + RECT 83700.0 357900.0 82500.0 356700.0 ; + RECT 78300.0 357900.0 79500.0 356700.0 ; + RECT 81300.0 360600.0 82500.0 359400.0 ; + RECT 82500.0 357900.0 83700.0 356700.0 ; + RECT 75900.0 351750.0 90300.0 350850.0 ; + RECT 75900.0 365550.0 90300.0 364650.0 ; + RECT 77700.0 367050.0 78900.0 364650.0 ; + RECT 77700.0 375750.0 78900.0 379350.0 ; + RECT 82500.0 375750.0 83700.0 379350.0 ; + RECT 84900.0 376950.0 86100.0 378900.0 ; + RECT 84900.0 365100.0 86100.0 367050.0 ; + RECT 77700.0 375750.0 78900.0 376950.0 ; + RECT 80100.0 375750.0 81300.0 376950.0 ; + RECT 80100.0 375750.0 81300.0 376950.0 ; + RECT 77700.0 375750.0 78900.0 376950.0 ; + RECT 80100.0 375750.0 81300.0 376950.0 ; + RECT 82500.0 375750.0 83700.0 376950.0 ; + RECT 82500.0 375750.0 83700.0 376950.0 ; + RECT 80100.0 375750.0 81300.0 376950.0 ; + RECT 77700.0 367050.0 78900.0 368250.0 ; + RECT 80100.0 367050.0 81300.0 368250.0 ; + RECT 80100.0 367050.0 81300.0 368250.0 ; + RECT 77700.0 367050.0 78900.0 368250.0 ; + RECT 80100.0 367050.0 81300.0 368250.0 ; + RECT 82500.0 367050.0 83700.0 368250.0 ; + RECT 82500.0 367050.0 83700.0 368250.0 ; + RECT 80100.0 367050.0 81300.0 368250.0 ; + RECT 84900.0 376350.0 86100.0 377550.0 ; + RECT 84900.0 366450.0 86100.0 367650.0 ; + RECT 82500.0 369600.0 81300.0 370800.0 ; + RECT 79500.0 372300.0 78300.0 373500.0 ; + RECT 80100.0 375750.0 81300.0 376950.0 ; + RECT 82500.0 367050.0 83700.0 368250.0 ; + RECT 83700.0 372300.0 82500.0 373500.0 ; + RECT 78300.0 372300.0 79500.0 373500.0 ; + RECT 81300.0 369600.0 82500.0 370800.0 ; + RECT 82500.0 372300.0 83700.0 373500.0 ; + RECT 75900.0 378450.0 90300.0 379350.0 ; + RECT 75900.0 364650.0 90300.0 365550.0 ; + RECT 77700.0 390750.0 78900.0 393150.0 ; + RECT 77700.0 382050.0 78900.0 378450.0 ; + RECT 82500.0 382050.0 83700.0 378450.0 ; + RECT 84900.0 380850.0 86100.0 378900.0 ; + RECT 84900.0 392700.0 86100.0 390750.0 ; + RECT 77700.0 382050.0 78900.0 380850.0 ; + RECT 80100.0 382050.0 81300.0 380850.0 ; + RECT 80100.0 382050.0 81300.0 380850.0 ; + RECT 77700.0 382050.0 78900.0 380850.0 ; + RECT 80100.0 382050.0 81300.0 380850.0 ; + RECT 82500.0 382050.0 83700.0 380850.0 ; + RECT 82500.0 382050.0 83700.0 380850.0 ; + RECT 80100.0 382050.0 81300.0 380850.0 ; + RECT 77700.0 390750.0 78900.0 389550.0 ; + RECT 80100.0 390750.0 81300.0 389550.0 ; + RECT 80100.0 390750.0 81300.0 389550.0 ; + RECT 77700.0 390750.0 78900.0 389550.0 ; + RECT 80100.0 390750.0 81300.0 389550.0 ; + RECT 82500.0 390750.0 83700.0 389550.0 ; + RECT 82500.0 390750.0 83700.0 389550.0 ; + RECT 80100.0 390750.0 81300.0 389550.0 ; + RECT 84900.0 381450.0 86100.0 380250.0 ; + RECT 84900.0 391350.0 86100.0 390150.0 ; + RECT 82500.0 388200.0 81300.0 387000.0 ; + RECT 79500.0 385500.0 78300.0 384300.0 ; + RECT 80100.0 382050.0 81300.0 380850.0 ; + RECT 82500.0 390750.0 83700.0 389550.0 ; + RECT 83700.0 385500.0 82500.0 384300.0 ; + RECT 78300.0 385500.0 79500.0 384300.0 ; + RECT 81300.0 388200.0 82500.0 387000.0 ; + RECT 82500.0 385500.0 83700.0 384300.0 ; + RECT 75900.0 379350.0 90300.0 378450.0 ; + RECT 75900.0 393150.0 90300.0 392250.0 ; + RECT 77700.0 394650.0 78900.0 392250.0 ; + RECT 77700.0 403350.0 78900.0 406950.0 ; + RECT 82500.0 403350.0 83700.0 406950.0 ; + RECT 84900.0 404550.0 86100.0 406500.0 ; + RECT 84900.0 392700.0 86100.0 394650.0 ; + RECT 77700.0 403350.0 78900.0 404550.0 ; + RECT 80100.0 403350.0 81300.0 404550.0 ; + RECT 80100.0 403350.0 81300.0 404550.0 ; + RECT 77700.0 403350.0 78900.0 404550.0 ; + RECT 80100.0 403350.0 81300.0 404550.0 ; + RECT 82500.0 403350.0 83700.0 404550.0 ; + RECT 82500.0 403350.0 83700.0 404550.0 ; + RECT 80100.0 403350.0 81300.0 404550.0 ; + RECT 77700.0 394650.0 78900.0 395850.0 ; + RECT 80100.0 394650.0 81300.0 395850.0 ; + RECT 80100.0 394650.0 81300.0 395850.0 ; + RECT 77700.0 394650.0 78900.0 395850.0 ; + RECT 80100.0 394650.0 81300.0 395850.0 ; + RECT 82500.0 394650.0 83700.0 395850.0 ; + RECT 82500.0 394650.0 83700.0 395850.0 ; + RECT 80100.0 394650.0 81300.0 395850.0 ; + RECT 84900.0 403950.0 86100.0 405150.0 ; + RECT 84900.0 394050.0 86100.0 395250.0 ; + RECT 82500.0 397200.0 81300.0 398400.0 ; + RECT 79500.0 399900.0 78300.0 401100.0 ; + RECT 80100.0 403350.0 81300.0 404550.0 ; + RECT 82500.0 394650.0 83700.0 395850.0 ; + RECT 83700.0 399900.0 82500.0 401100.0 ; + RECT 78300.0 399900.0 79500.0 401100.0 ; + RECT 81300.0 397200.0 82500.0 398400.0 ; + RECT 82500.0 399900.0 83700.0 401100.0 ; + RECT 75900.0 406050.0 90300.0 406950.0 ; + RECT 75900.0 392250.0 90300.0 393150.0 ; + RECT 77700.0 418350.0 78900.0 420750.0 ; + RECT 77700.0 409650.0 78900.0 406050.0 ; + RECT 82500.0 409650.0 83700.0 406050.0 ; + RECT 84900.0 408450.0 86100.0 406500.0 ; + RECT 84900.0 420300.0 86100.0 418350.0 ; + RECT 77700.0 409650.0 78900.0 408450.0 ; + RECT 80100.0 409650.0 81300.0 408450.0 ; + RECT 80100.0 409650.0 81300.0 408450.0 ; + RECT 77700.0 409650.0 78900.0 408450.0 ; + RECT 80100.0 409650.0 81300.0 408450.0 ; + RECT 82500.0 409650.0 83700.0 408450.0 ; + RECT 82500.0 409650.0 83700.0 408450.0 ; + RECT 80100.0 409650.0 81300.0 408450.0 ; + RECT 77700.0 418350.0 78900.0 417150.0 ; + RECT 80100.0 418350.0 81300.0 417150.0 ; + RECT 80100.0 418350.0 81300.0 417150.0 ; + RECT 77700.0 418350.0 78900.0 417150.0 ; + RECT 80100.0 418350.0 81300.0 417150.0 ; + RECT 82500.0 418350.0 83700.0 417150.0 ; + RECT 82500.0 418350.0 83700.0 417150.0 ; + RECT 80100.0 418350.0 81300.0 417150.0 ; + RECT 84900.0 409050.0 86100.0 407850.0 ; + RECT 84900.0 418950.0 86100.0 417750.0 ; + RECT 82500.0 415800.0 81300.0 414600.0 ; + RECT 79500.0 413100.0 78300.0 411900.0 ; + RECT 80100.0 409650.0 81300.0 408450.0 ; + RECT 82500.0 418350.0 83700.0 417150.0 ; + RECT 83700.0 413100.0 82500.0 411900.0 ; + RECT 78300.0 413100.0 79500.0 411900.0 ; + RECT 81300.0 415800.0 82500.0 414600.0 ; + RECT 82500.0 413100.0 83700.0 411900.0 ; + RECT 75900.0 406950.0 90300.0 406050.0 ; + RECT 75900.0 420750.0 90300.0 419850.0 ; + RECT 96900.0 211350.0 98100.0 213300.0 ; + RECT 96900.0 199500.0 98100.0 201450.0 ; + RECT 92100.0 200850.0 93300.0 199050.0 ; + RECT 92100.0 210150.0 93300.0 213750.0 ; + RECT 94800.0 200850.0 95700.0 210150.0 ; + RECT 92100.0 210150.0 93300.0 211350.0 ; + RECT 94500.0 210150.0 95700.0 211350.0 ; + RECT 94500.0 210150.0 95700.0 211350.0 ; + RECT 92100.0 210150.0 93300.0 211350.0 ; + RECT 92100.0 200850.0 93300.0 202050.0 ; + RECT 94500.0 200850.0 95700.0 202050.0 ; + RECT 94500.0 200850.0 95700.0 202050.0 ; + RECT 92100.0 200850.0 93300.0 202050.0 ; + RECT 96900.0 210750.0 98100.0 211950.0 ; + RECT 96900.0 200850.0 98100.0 202050.0 ; + RECT 92700.0 205500.0 93900.0 206700.0 ; + RECT 92700.0 205500.0 93900.0 206700.0 ; + RECT 95250.0 205650.0 96150.0 206550.0 ; + RECT 90300.0 212850.0 99900.0 213750.0 ; + RECT 90300.0 199050.0 99900.0 199950.0 ; + RECT 96900.0 215250.0 98100.0 213300.0 ; + RECT 96900.0 227100.0 98100.0 225150.0 ; + RECT 92100.0 225750.0 93300.0 227550.0 ; + RECT 92100.0 216450.0 93300.0 212850.0 ; + RECT 94800.0 225750.0 95700.0 216450.0 ; + RECT 92100.0 216450.0 93300.0 215250.0 ; + RECT 94500.0 216450.0 95700.0 215250.0 ; + RECT 94500.0 216450.0 95700.0 215250.0 ; + RECT 92100.0 216450.0 93300.0 215250.0 ; + RECT 92100.0 225750.0 93300.0 224550.0 ; + RECT 94500.0 225750.0 95700.0 224550.0 ; + RECT 94500.0 225750.0 95700.0 224550.0 ; + RECT 92100.0 225750.0 93300.0 224550.0 ; + RECT 96900.0 215850.0 98100.0 214650.0 ; + RECT 96900.0 225750.0 98100.0 224550.0 ; + RECT 92700.0 221100.0 93900.0 219900.0 ; + RECT 92700.0 221100.0 93900.0 219900.0 ; + RECT 95250.0 220950.0 96150.0 220050.0 ; + RECT 90300.0 213750.0 99900.0 212850.0 ; + RECT 90300.0 227550.0 99900.0 226650.0 ; + RECT 96900.0 238950.0 98100.0 240900.0 ; + RECT 96900.0 227100.0 98100.0 229050.0 ; + RECT 92100.0 228450.0 93300.0 226650.0 ; + RECT 92100.0 237750.0 93300.0 241350.0 ; + RECT 94800.0 228450.0 95700.0 237750.0 ; + RECT 92100.0 237750.0 93300.0 238950.0 ; + RECT 94500.0 237750.0 95700.0 238950.0 ; + RECT 94500.0 237750.0 95700.0 238950.0 ; + RECT 92100.0 237750.0 93300.0 238950.0 ; + RECT 92100.0 228450.0 93300.0 229650.0 ; + RECT 94500.0 228450.0 95700.0 229650.0 ; + RECT 94500.0 228450.0 95700.0 229650.0 ; + RECT 92100.0 228450.0 93300.0 229650.0 ; + RECT 96900.0 238350.0 98100.0 239550.0 ; + RECT 96900.0 228450.0 98100.0 229650.0 ; + RECT 92700.0 233100.0 93900.0 234300.0 ; + RECT 92700.0 233100.0 93900.0 234300.0 ; + RECT 95250.0 233250.0 96150.0 234150.0 ; + RECT 90300.0 240450.0 99900.0 241350.0 ; + RECT 90300.0 226650.0 99900.0 227550.0 ; + RECT 96900.0 242850.0 98100.0 240900.0 ; + RECT 96900.0 254700.0 98100.0 252750.0 ; + RECT 92100.0 253350.0 93300.0 255150.0 ; + RECT 92100.0 244050.0 93300.0 240450.0 ; + RECT 94800.0 253350.0 95700.0 244050.0 ; + RECT 92100.0 244050.0 93300.0 242850.0 ; + RECT 94500.0 244050.0 95700.0 242850.0 ; + RECT 94500.0 244050.0 95700.0 242850.0 ; + RECT 92100.0 244050.0 93300.0 242850.0 ; + RECT 92100.0 253350.0 93300.0 252150.0 ; + RECT 94500.0 253350.0 95700.0 252150.0 ; + RECT 94500.0 253350.0 95700.0 252150.0 ; + RECT 92100.0 253350.0 93300.0 252150.0 ; + RECT 96900.0 243450.0 98100.0 242250.0 ; + RECT 96900.0 253350.0 98100.0 252150.0 ; + RECT 92700.0 248700.0 93900.0 247500.0 ; + RECT 92700.0 248700.0 93900.0 247500.0 ; + RECT 95250.0 248550.0 96150.0 247650.0 ; + RECT 90300.0 241350.0 99900.0 240450.0 ; + RECT 90300.0 255150.0 99900.0 254250.0 ; + RECT 96900.0 266550.0 98100.0 268500.0 ; + RECT 96900.0 254700.0 98100.0 256650.0 ; + RECT 92100.0 256050.0 93300.0 254250.0 ; + RECT 92100.0 265350.0 93300.0 268950.0 ; + RECT 94800.0 256050.0 95700.0 265350.0 ; + RECT 92100.0 265350.0 93300.0 266550.0 ; + RECT 94500.0 265350.0 95700.0 266550.0 ; + RECT 94500.0 265350.0 95700.0 266550.0 ; + RECT 92100.0 265350.0 93300.0 266550.0 ; + RECT 92100.0 256050.0 93300.0 257250.0 ; + RECT 94500.0 256050.0 95700.0 257250.0 ; + RECT 94500.0 256050.0 95700.0 257250.0 ; + RECT 92100.0 256050.0 93300.0 257250.0 ; + RECT 96900.0 265950.0 98100.0 267150.0 ; + RECT 96900.0 256050.0 98100.0 257250.0 ; + RECT 92700.0 260700.0 93900.0 261900.0 ; + RECT 92700.0 260700.0 93900.0 261900.0 ; + RECT 95250.0 260850.0 96150.0 261750.0 ; + RECT 90300.0 268050.0 99900.0 268950.0 ; + RECT 90300.0 254250.0 99900.0 255150.0 ; + RECT 96900.0 270450.0 98100.0 268500.0 ; + RECT 96900.0 282300.0 98100.0 280350.0 ; + RECT 92100.0 280950.0 93300.0 282750.0 ; + RECT 92100.0 271650.0 93300.0 268050.0 ; + RECT 94800.0 280950.0 95700.0 271650.0 ; + RECT 92100.0 271650.0 93300.0 270450.0 ; + RECT 94500.0 271650.0 95700.0 270450.0 ; + RECT 94500.0 271650.0 95700.0 270450.0 ; + RECT 92100.0 271650.0 93300.0 270450.0 ; + RECT 92100.0 280950.0 93300.0 279750.0 ; + RECT 94500.0 280950.0 95700.0 279750.0 ; + RECT 94500.0 280950.0 95700.0 279750.0 ; + RECT 92100.0 280950.0 93300.0 279750.0 ; + RECT 96900.0 271050.0 98100.0 269850.0 ; + RECT 96900.0 280950.0 98100.0 279750.0 ; + RECT 92700.0 276300.0 93900.0 275100.0 ; + RECT 92700.0 276300.0 93900.0 275100.0 ; + RECT 95250.0 276150.0 96150.0 275250.0 ; + RECT 90300.0 268950.0 99900.0 268050.0 ; + RECT 90300.0 282750.0 99900.0 281850.0 ; + RECT 96900.0 294150.0 98100.0 296100.0 ; + RECT 96900.0 282300.0 98100.0 284250.0 ; + RECT 92100.0 283650.0 93300.0 281850.0 ; + RECT 92100.0 292950.0 93300.0 296550.0 ; + RECT 94800.0 283650.0 95700.0 292950.0 ; + RECT 92100.0 292950.0 93300.0 294150.0 ; + RECT 94500.0 292950.0 95700.0 294150.0 ; + RECT 94500.0 292950.0 95700.0 294150.0 ; + RECT 92100.0 292950.0 93300.0 294150.0 ; + RECT 92100.0 283650.0 93300.0 284850.0 ; + RECT 94500.0 283650.0 95700.0 284850.0 ; + RECT 94500.0 283650.0 95700.0 284850.0 ; + RECT 92100.0 283650.0 93300.0 284850.0 ; + RECT 96900.0 293550.0 98100.0 294750.0 ; + RECT 96900.0 283650.0 98100.0 284850.0 ; + RECT 92700.0 288300.0 93900.0 289500.0 ; + RECT 92700.0 288300.0 93900.0 289500.0 ; + RECT 95250.0 288450.0 96150.0 289350.0 ; + RECT 90300.0 295650.0 99900.0 296550.0 ; + RECT 90300.0 281850.0 99900.0 282750.0 ; + RECT 96900.0 298050.0 98100.0 296100.0 ; + RECT 96900.0 309900.0 98100.0 307950.0 ; + RECT 92100.0 308550.0 93300.0 310350.0 ; + RECT 92100.0 299250.0 93300.0 295650.0 ; + RECT 94800.0 308550.0 95700.0 299250.0 ; + RECT 92100.0 299250.0 93300.0 298050.0 ; + RECT 94500.0 299250.0 95700.0 298050.0 ; + RECT 94500.0 299250.0 95700.0 298050.0 ; + RECT 92100.0 299250.0 93300.0 298050.0 ; + RECT 92100.0 308550.0 93300.0 307350.0 ; + RECT 94500.0 308550.0 95700.0 307350.0 ; + RECT 94500.0 308550.0 95700.0 307350.0 ; + RECT 92100.0 308550.0 93300.0 307350.0 ; + RECT 96900.0 298650.0 98100.0 297450.0 ; + RECT 96900.0 308550.0 98100.0 307350.0 ; + RECT 92700.0 303900.0 93900.0 302700.0 ; + RECT 92700.0 303900.0 93900.0 302700.0 ; + RECT 95250.0 303750.0 96150.0 302850.0 ; + RECT 90300.0 296550.0 99900.0 295650.0 ; + RECT 90300.0 310350.0 99900.0 309450.0 ; + RECT 96900.0 321750.0 98100.0 323700.0 ; + RECT 96900.0 309900.0 98100.0 311850.0 ; + RECT 92100.0 311250.0 93300.0 309450.0 ; + RECT 92100.0 320550.0 93300.0 324150.0 ; + RECT 94800.0 311250.0 95700.0 320550.0 ; + RECT 92100.0 320550.0 93300.0 321750.0 ; + RECT 94500.0 320550.0 95700.0 321750.0 ; + RECT 94500.0 320550.0 95700.0 321750.0 ; + RECT 92100.0 320550.0 93300.0 321750.0 ; + RECT 92100.0 311250.0 93300.0 312450.0 ; + RECT 94500.0 311250.0 95700.0 312450.0 ; + RECT 94500.0 311250.0 95700.0 312450.0 ; + RECT 92100.0 311250.0 93300.0 312450.0 ; + RECT 96900.0 321150.0 98100.0 322350.0 ; + RECT 96900.0 311250.0 98100.0 312450.0 ; + RECT 92700.0 315900.0 93900.0 317100.0 ; + RECT 92700.0 315900.0 93900.0 317100.0 ; + RECT 95250.0 316050.0 96150.0 316950.0 ; + RECT 90300.0 323250.0 99900.0 324150.0 ; + RECT 90300.0 309450.0 99900.0 310350.0 ; + RECT 96900.0 325650.0 98100.0 323700.0 ; + RECT 96900.0 337500.0 98100.0 335550.0 ; + RECT 92100.0 336150.0 93300.0 337950.0 ; + RECT 92100.0 326850.0 93300.0 323250.0 ; + RECT 94800.0 336150.0 95700.0 326850.0 ; + RECT 92100.0 326850.0 93300.0 325650.0 ; + RECT 94500.0 326850.0 95700.0 325650.0 ; + RECT 94500.0 326850.0 95700.0 325650.0 ; + RECT 92100.0 326850.0 93300.0 325650.0 ; + RECT 92100.0 336150.0 93300.0 334950.0 ; + RECT 94500.0 336150.0 95700.0 334950.0 ; + RECT 94500.0 336150.0 95700.0 334950.0 ; + RECT 92100.0 336150.0 93300.0 334950.0 ; + RECT 96900.0 326250.0 98100.0 325050.0 ; + RECT 96900.0 336150.0 98100.0 334950.0 ; + RECT 92700.0 331500.0 93900.0 330300.0 ; + RECT 92700.0 331500.0 93900.0 330300.0 ; + RECT 95250.0 331350.0 96150.0 330450.0 ; + RECT 90300.0 324150.0 99900.0 323250.0 ; + RECT 90300.0 337950.0 99900.0 337050.0 ; + RECT 96900.0 349350.0 98100.0 351300.0 ; + RECT 96900.0 337500.0 98100.0 339450.0 ; + RECT 92100.0 338850.0 93300.0 337050.0 ; + RECT 92100.0 348150.0 93300.0 351750.0 ; + RECT 94800.0 338850.0 95700.0 348150.0 ; + RECT 92100.0 348150.0 93300.0 349350.0 ; + RECT 94500.0 348150.0 95700.0 349350.0 ; + RECT 94500.0 348150.0 95700.0 349350.0 ; + RECT 92100.0 348150.0 93300.0 349350.0 ; + RECT 92100.0 338850.0 93300.0 340050.0 ; + RECT 94500.0 338850.0 95700.0 340050.0 ; + RECT 94500.0 338850.0 95700.0 340050.0 ; + RECT 92100.0 338850.0 93300.0 340050.0 ; + RECT 96900.0 348750.0 98100.0 349950.0 ; + RECT 96900.0 338850.0 98100.0 340050.0 ; + RECT 92700.0 343500.0 93900.0 344700.0 ; + RECT 92700.0 343500.0 93900.0 344700.0 ; + RECT 95250.0 343650.0 96150.0 344550.0 ; + RECT 90300.0 350850.0 99900.0 351750.0 ; + RECT 90300.0 337050.0 99900.0 337950.0 ; + RECT 96900.0 353250.0 98100.0 351300.0 ; + RECT 96900.0 365100.0 98100.0 363150.0 ; + RECT 92100.0 363750.0 93300.0 365550.0 ; + RECT 92100.0 354450.0 93300.0 350850.0 ; + RECT 94800.0 363750.0 95700.0 354450.0 ; + RECT 92100.0 354450.0 93300.0 353250.0 ; + RECT 94500.0 354450.0 95700.0 353250.0 ; + RECT 94500.0 354450.0 95700.0 353250.0 ; + RECT 92100.0 354450.0 93300.0 353250.0 ; + RECT 92100.0 363750.0 93300.0 362550.0 ; + RECT 94500.0 363750.0 95700.0 362550.0 ; + RECT 94500.0 363750.0 95700.0 362550.0 ; + RECT 92100.0 363750.0 93300.0 362550.0 ; + RECT 96900.0 353850.0 98100.0 352650.0 ; + RECT 96900.0 363750.0 98100.0 362550.0 ; + RECT 92700.0 359100.0 93900.0 357900.0 ; + RECT 92700.0 359100.0 93900.0 357900.0 ; + RECT 95250.0 358950.0 96150.0 358050.0 ; + RECT 90300.0 351750.0 99900.0 350850.0 ; + RECT 90300.0 365550.0 99900.0 364650.0 ; + RECT 96900.0 376950.0 98100.0 378900.0 ; + RECT 96900.0 365100.0 98100.0 367050.0 ; + RECT 92100.0 366450.0 93300.0 364650.0 ; + RECT 92100.0 375750.0 93300.0 379350.0 ; + RECT 94800.0 366450.0 95700.0 375750.0 ; + RECT 92100.0 375750.0 93300.0 376950.0 ; + RECT 94500.0 375750.0 95700.0 376950.0 ; + RECT 94500.0 375750.0 95700.0 376950.0 ; + RECT 92100.0 375750.0 93300.0 376950.0 ; + RECT 92100.0 366450.0 93300.0 367650.0 ; + RECT 94500.0 366450.0 95700.0 367650.0 ; + RECT 94500.0 366450.0 95700.0 367650.0 ; + RECT 92100.0 366450.0 93300.0 367650.0 ; + RECT 96900.0 376350.0 98100.0 377550.0 ; + RECT 96900.0 366450.0 98100.0 367650.0 ; + RECT 92700.0 371100.0 93900.0 372300.0 ; + RECT 92700.0 371100.0 93900.0 372300.0 ; + RECT 95250.0 371250.0 96150.0 372150.0 ; + RECT 90300.0 378450.0 99900.0 379350.0 ; + RECT 90300.0 364650.0 99900.0 365550.0 ; + RECT 96900.0 380850.0 98100.0 378900.0 ; + RECT 96900.0 392700.0 98100.0 390750.0 ; + RECT 92100.0 391350.0 93300.0 393150.0 ; + RECT 92100.0 382050.0 93300.0 378450.0 ; + RECT 94800.0 391350.0 95700.0 382050.0 ; + RECT 92100.0 382050.0 93300.0 380850.0 ; + RECT 94500.0 382050.0 95700.0 380850.0 ; + RECT 94500.0 382050.0 95700.0 380850.0 ; + RECT 92100.0 382050.0 93300.0 380850.0 ; + RECT 92100.0 391350.0 93300.0 390150.0 ; + RECT 94500.0 391350.0 95700.0 390150.0 ; + RECT 94500.0 391350.0 95700.0 390150.0 ; + RECT 92100.0 391350.0 93300.0 390150.0 ; + RECT 96900.0 381450.0 98100.0 380250.0 ; + RECT 96900.0 391350.0 98100.0 390150.0 ; + RECT 92700.0 386700.0 93900.0 385500.0 ; + RECT 92700.0 386700.0 93900.0 385500.0 ; + RECT 95250.0 386550.0 96150.0 385650.0 ; + RECT 90300.0 379350.0 99900.0 378450.0 ; + RECT 90300.0 393150.0 99900.0 392250.0 ; + RECT 96900.0 404550.0 98100.0 406500.0 ; + RECT 96900.0 392700.0 98100.0 394650.0 ; + RECT 92100.0 394050.0 93300.0 392250.0 ; + RECT 92100.0 403350.0 93300.0 406950.0 ; + RECT 94800.0 394050.0 95700.0 403350.0 ; + RECT 92100.0 403350.0 93300.0 404550.0 ; + RECT 94500.0 403350.0 95700.0 404550.0 ; + RECT 94500.0 403350.0 95700.0 404550.0 ; + RECT 92100.0 403350.0 93300.0 404550.0 ; + RECT 92100.0 394050.0 93300.0 395250.0 ; + RECT 94500.0 394050.0 95700.0 395250.0 ; + RECT 94500.0 394050.0 95700.0 395250.0 ; + RECT 92100.0 394050.0 93300.0 395250.0 ; + RECT 96900.0 403950.0 98100.0 405150.0 ; + RECT 96900.0 394050.0 98100.0 395250.0 ; + RECT 92700.0 398700.0 93900.0 399900.0 ; + RECT 92700.0 398700.0 93900.0 399900.0 ; + RECT 95250.0 398850.0 96150.0 399750.0 ; + RECT 90300.0 406050.0 99900.0 406950.0 ; + RECT 90300.0 392250.0 99900.0 393150.0 ; + RECT 96900.0 408450.0 98100.0 406500.0 ; + RECT 96900.0 420300.0 98100.0 418350.0 ; + RECT 92100.0 418950.0 93300.0 420750.0 ; + RECT 92100.0 409650.0 93300.0 406050.0 ; + RECT 94800.0 418950.0 95700.0 409650.0 ; + RECT 92100.0 409650.0 93300.0 408450.0 ; + RECT 94500.0 409650.0 95700.0 408450.0 ; + RECT 94500.0 409650.0 95700.0 408450.0 ; + RECT 92100.0 409650.0 93300.0 408450.0 ; + RECT 92100.0 418950.0 93300.0 417750.0 ; + RECT 94500.0 418950.0 95700.0 417750.0 ; + RECT 94500.0 418950.0 95700.0 417750.0 ; + RECT 92100.0 418950.0 93300.0 417750.0 ; + RECT 96900.0 409050.0 98100.0 407850.0 ; + RECT 96900.0 418950.0 98100.0 417750.0 ; + RECT 92700.0 414300.0 93900.0 413100.0 ; + RECT 92700.0 414300.0 93900.0 413100.0 ; + RECT 95250.0 414150.0 96150.0 413250.0 ; + RECT 90300.0 406950.0 99900.0 406050.0 ; + RECT 90300.0 420750.0 99900.0 419850.0 ; + RECT 60150.0 95100.0 58950.0 96300.0 ; + RECT 62250.0 109500.0 61050.0 110700.0 ; + RECT 64350.0 122700.0 63150.0 123900.0 ; + RECT 66450.0 137100.0 65250.0 138300.0 ; + RECT 68550.0 150300.0 67350.0 151500.0 ; + RECT 70650.0 164700.0 69450.0 165900.0 ; + RECT 72750.0 177900.0 71550.0 179100.0 ; + RECT 74850.0 192300.0 73650.0 193500.0 ; + RECT 60150.0 206700.0 58950.0 207900.0 ; + RECT 68550.0 204000.0 67350.0 205200.0 ; + RECT 60150.0 218700.0 58950.0 219900.0 ; + RECT 70650.0 221400.0 69450.0 222600.0 ; + RECT 60150.0 234300.0 58950.0 235500.0 ; + RECT 72750.0 231600.0 71550.0 232800.0 ; + RECT 60150.0 246300.0 58950.0 247500.0 ; + RECT 74850.0 249000.0 73650.0 250200.0 ; + RECT 62250.0 261900.0 61050.0 263100.0 ; + RECT 68550.0 259200.0 67350.0 260400.0 ; + RECT 62250.0 273900.0 61050.0 275100.0 ; + RECT 70650.0 276600.0 69450.0 277800.0 ; + RECT 62250.0 289500.0 61050.0 290700.0 ; + RECT 72750.0 286800.0 71550.0 288000.0 ; + RECT 62250.0 301500.0 61050.0 302700.0 ; + RECT 74850.0 304200.0 73650.0 305400.0 ; + RECT 64350.0 317100.0 63150.0 318300.0 ; + RECT 68550.0 314400.0 67350.0 315600.0 ; + RECT 64350.0 329100.0 63150.0 330300.0 ; + RECT 70650.0 331800.0 69450.0 333000.0 ; + RECT 64350.0 344700.0 63150.0 345900.0 ; + RECT 72750.0 342000.0 71550.0 343200.0 ; + RECT 64350.0 356700.0 63150.0 357900.0 ; + RECT 74850.0 359400.0 73650.0 360600.0 ; + RECT 66450.0 372300.0 65250.0 373500.0 ; + RECT 68550.0 369600.0 67350.0 370800.0 ; + RECT 66450.0 384300.0 65250.0 385500.0 ; + RECT 70650.0 387000.0 69450.0 388200.0 ; + RECT 66450.0 399900.0 65250.0 401100.0 ; + RECT 72750.0 397200.0 71550.0 398400.0 ; + RECT 66450.0 411900.0 65250.0 413100.0 ; + RECT 74850.0 414600.0 73650.0 415800.0 ; + RECT 95250.0 205650.0 96150.0 206550.0 ; + RECT 95250.0 220050.0 96150.0 220950.0 ; + RECT 95250.0 233250.0 96150.0 234150.0 ; + RECT 95250.0 247650.0 96150.0 248550.0 ; + RECT 95250.0 260850.0 96150.0 261750.0 ; + RECT 95250.0 275250.0 96150.0 276150.0 ; + RECT 95250.0 288450.0 96150.0 289350.0 ; + RECT 95250.0 302850.0 96150.0 303750.0 ; + RECT 95250.0 316050.0 96150.0 316950.0 ; + RECT 95250.0 330450.0 96150.0 331350.0 ; + RECT 95250.0 343650.0 96150.0 344550.0 ; + RECT 95250.0 358050.0 96150.0 358950.0 ; + RECT 95250.0 371250.0 96150.0 372150.0 ; + RECT 95250.0 385650.0 96150.0 386550.0 ; + RECT 95250.0 398850.0 96150.0 399750.0 ; + RECT 95250.0 413250.0 96150.0 414150.0 ; + RECT 59100.0 102450.0 130500.0 103350.0 ; + RECT 59100.0 130050.0 130500.0 130950.0 ; + RECT 59100.0 157650.0 130500.0 158550.0 ; + RECT 59100.0 185250.0 130500.0 186150.0 ; + RECT 59100.0 212850.0 130500.0 213750.0 ; + RECT 59100.0 240450.0 130500.0 241350.0 ; + RECT 59100.0 268050.0 130500.0 268950.0 ; + RECT 59100.0 295650.0 130500.0 296550.0 ; + RECT 59100.0 323250.0 130500.0 324150.0 ; + RECT 59100.0 350850.0 130500.0 351750.0 ; + RECT 59100.0 378450.0 130500.0 379350.0 ; + RECT 59100.0 406050.0 130500.0 406950.0 ; + RECT 59100.0 88650.0 130500.0 89550.0 ; + RECT 59100.0 116250.0 130500.0 117150.0 ; + RECT 59100.0 143850.0 130500.0 144750.0 ; + RECT 59100.0 171450.0 130500.0 172350.0 ; + RECT 59100.0 199050.0 130500.0 199950.0 ; + RECT 59100.0 226650.0 130500.0 227550.0 ; + RECT 59100.0 254250.0 130500.0 255150.0 ; + RECT 59100.0 281850.0 130500.0 282750.0 ; + RECT 59100.0 309450.0 130500.0 310350.0 ; + RECT 59100.0 337050.0 130500.0 337950.0 ; + RECT 59100.0 364650.0 130500.0 365550.0 ; + RECT 59100.0 392250.0 130500.0 393150.0 ; + RECT 59100.0 419850.0 130500.0 420750.0 ; + RECT 103050.0 205650.0 108600.0 206550.0 ; + RECT 111150.0 206850.0 112050.0 207750.0 ; + RECT 111150.0 205650.0 112050.0 206550.0 ; + RECT 111150.0 206550.0 112050.0 207300.0 ; + RECT 111600.0 206850.0 118200.0 207750.0 ; + RECT 118200.0 206850.0 119400.0 207750.0 ; + RECT 127650.0 206850.0 128550.0 207750.0 ; + RECT 127650.0 205650.0 128550.0 206550.0 ; + RECT 123600.0 206850.0 128100.0 207750.0 ; + RECT 127650.0 206100.0 128550.0 207300.0 ; + RECT 128100.0 205650.0 132600.0 206550.0 ; + RECT 103050.0 220050.0 108600.0 220950.0 ; + RECT 111150.0 218850.0 112050.0 219750.0 ; + RECT 111150.0 220050.0 112050.0 220950.0 ; + RECT 111150.0 219300.0 112050.0 220950.0 ; + RECT 111600.0 218850.0 118200.0 219750.0 ; + RECT 118200.0 218850.0 119400.0 219750.0 ; + RECT 127650.0 218850.0 128550.0 219750.0 ; + RECT 127650.0 220050.0 128550.0 220950.0 ; + RECT 123600.0 218850.0 128100.0 219750.0 ; + RECT 127650.0 219300.0 128550.0 220500.0 ; + RECT 128100.0 220050.0 132600.0 220950.0 ; + RECT 103050.0 233250.0 108600.0 234150.0 ; + RECT 111150.0 234450.0 112050.0 235350.0 ; + RECT 111150.0 233250.0 112050.0 234150.0 ; + RECT 111150.0 234150.0 112050.0 234900.0 ; + RECT 111600.0 234450.0 118200.0 235350.0 ; + RECT 118200.0 234450.0 119400.0 235350.0 ; + RECT 127650.0 234450.0 128550.0 235350.0 ; + RECT 127650.0 233250.0 128550.0 234150.0 ; + RECT 123600.0 234450.0 128100.0 235350.0 ; + RECT 127650.0 233700.0 128550.0 234900.0 ; + RECT 128100.0 233250.0 132600.0 234150.0 ; + RECT 103050.0 247650.0 108600.0 248550.0 ; + RECT 111150.0 246450.0 112050.0 247350.0 ; + RECT 111150.0 247650.0 112050.0 248550.0 ; + RECT 111150.0 246900.0 112050.0 248550.0 ; + RECT 111600.0 246450.0 118200.0 247350.0 ; + RECT 118200.0 246450.0 119400.0 247350.0 ; + RECT 127650.0 246450.0 128550.0 247350.0 ; + RECT 127650.0 247650.0 128550.0 248550.0 ; + RECT 123600.0 246450.0 128100.0 247350.0 ; + RECT 127650.0 246900.0 128550.0 248100.0 ; + RECT 128100.0 247650.0 132600.0 248550.0 ; + RECT 103050.0 260850.0 108600.0 261750.0 ; + RECT 111150.0 262050.0 112050.0 262950.0 ; + RECT 111150.0 260850.0 112050.0 261750.0 ; + RECT 111150.0 261750.0 112050.0 262500.0 ; + RECT 111600.0 262050.0 118200.0 262950.0 ; + RECT 118200.0 262050.0 119400.0 262950.0 ; + RECT 127650.0 262050.0 128550.0 262950.0 ; + RECT 127650.0 260850.0 128550.0 261750.0 ; + RECT 123600.0 262050.0 128100.0 262950.0 ; + RECT 127650.0 261300.0 128550.0 262500.0 ; + RECT 128100.0 260850.0 132600.0 261750.0 ; + RECT 103050.0 275250.0 108600.0 276150.0 ; + RECT 111150.0 274050.0 112050.0 274950.0 ; + RECT 111150.0 275250.0 112050.0 276150.0 ; + RECT 111150.0 274500.0 112050.0 276150.0 ; + RECT 111600.0 274050.0 118200.0 274950.0 ; + RECT 118200.0 274050.0 119400.0 274950.0 ; + RECT 127650.0 274050.0 128550.0 274950.0 ; + RECT 127650.0 275250.0 128550.0 276150.0 ; + RECT 123600.0 274050.0 128100.0 274950.0 ; + RECT 127650.0 274500.0 128550.0 275700.0 ; + RECT 128100.0 275250.0 132600.0 276150.0 ; + RECT 103050.0 288450.0 108600.0 289350.0 ; + RECT 111150.0 289650.0 112050.0 290550.0 ; + RECT 111150.0 288450.0 112050.0 289350.0 ; + RECT 111150.0 289350.0 112050.0 290100.0 ; + RECT 111600.0 289650.0 118200.0 290550.0 ; + RECT 118200.0 289650.0 119400.0 290550.0 ; + RECT 127650.0 289650.0 128550.0 290550.0 ; + RECT 127650.0 288450.0 128550.0 289350.0 ; + RECT 123600.0 289650.0 128100.0 290550.0 ; + RECT 127650.0 288900.0 128550.0 290100.0 ; + RECT 128100.0 288450.0 132600.0 289350.0 ; + RECT 103050.0 302850.0 108600.0 303750.0 ; + RECT 111150.0 301650.0 112050.0 302550.0 ; + RECT 111150.0 302850.0 112050.0 303750.0 ; + RECT 111150.0 302100.0 112050.0 303750.0 ; + RECT 111600.0 301650.0 118200.0 302550.0 ; + RECT 118200.0 301650.0 119400.0 302550.0 ; + RECT 127650.0 301650.0 128550.0 302550.0 ; + RECT 127650.0 302850.0 128550.0 303750.0 ; + RECT 123600.0 301650.0 128100.0 302550.0 ; + RECT 127650.0 302100.0 128550.0 303300.0 ; + RECT 128100.0 302850.0 132600.0 303750.0 ; + RECT 103050.0 316050.0 108600.0 316950.0 ; + RECT 111150.0 317250.0 112050.0 318150.0 ; + RECT 111150.0 316050.0 112050.0 316950.0 ; + RECT 111150.0 316950.0 112050.0 317700.0 ; + RECT 111600.0 317250.0 118200.0 318150.0 ; + RECT 118200.0 317250.0 119400.0 318150.0 ; + RECT 127650.0 317250.0 128550.0 318150.0 ; + RECT 127650.0 316050.0 128550.0 316950.0 ; + RECT 123600.0 317250.0 128100.0 318150.0 ; + RECT 127650.0 316500.0 128550.0 317700.0 ; + RECT 128100.0 316050.0 132600.0 316950.0 ; + RECT 103050.0 330450.0 108600.0 331350.0 ; + RECT 111150.0 329250.0 112050.0 330150.0 ; + RECT 111150.0 330450.0 112050.0 331350.0 ; + RECT 111150.0 329700.0 112050.0 331350.0 ; + RECT 111600.0 329250.0 118200.0 330150.0 ; + RECT 118200.0 329250.0 119400.0 330150.0 ; + RECT 127650.0 329250.0 128550.0 330150.0 ; + RECT 127650.0 330450.0 128550.0 331350.0 ; + RECT 123600.0 329250.0 128100.0 330150.0 ; + RECT 127650.0 329700.0 128550.0 330900.0 ; + RECT 128100.0 330450.0 132600.0 331350.0 ; + RECT 103050.0 343650.0 108600.0 344550.0 ; + RECT 111150.0 344850.0 112050.0 345750.0 ; + RECT 111150.0 343650.0 112050.0 344550.0 ; + RECT 111150.0 344550.0 112050.0 345300.0 ; + RECT 111600.0 344850.0 118200.0 345750.0 ; + RECT 118200.0 344850.0 119400.0 345750.0 ; + RECT 127650.0 344850.0 128550.0 345750.0 ; + RECT 127650.0 343650.0 128550.0 344550.0 ; + RECT 123600.0 344850.0 128100.0 345750.0 ; + RECT 127650.0 344100.0 128550.0 345300.0 ; + RECT 128100.0 343650.0 132600.0 344550.0 ; + RECT 103050.0 358050.0 108600.0 358950.0 ; + RECT 111150.0 356850.0 112050.0 357750.0 ; + RECT 111150.0 358050.0 112050.0 358950.0 ; + RECT 111150.0 357300.0 112050.0 358950.0 ; + RECT 111600.0 356850.0 118200.0 357750.0 ; + RECT 118200.0 356850.0 119400.0 357750.0 ; + RECT 127650.0 356850.0 128550.0 357750.0 ; + RECT 127650.0 358050.0 128550.0 358950.0 ; + RECT 123600.0 356850.0 128100.0 357750.0 ; + RECT 127650.0 357300.0 128550.0 358500.0 ; + RECT 128100.0 358050.0 132600.0 358950.0 ; + RECT 103050.0 371250.0 108600.0 372150.0 ; + RECT 111150.0 372450.0 112050.0 373350.0 ; + RECT 111150.0 371250.0 112050.0 372150.0 ; + RECT 111150.0 372150.0 112050.0 372900.0 ; + RECT 111600.0 372450.0 118200.0 373350.0 ; + RECT 118200.0 372450.0 119400.0 373350.0 ; + RECT 127650.0 372450.0 128550.0 373350.0 ; + RECT 127650.0 371250.0 128550.0 372150.0 ; + RECT 123600.0 372450.0 128100.0 373350.0 ; + RECT 127650.0 371700.0 128550.0 372900.0 ; + RECT 128100.0 371250.0 132600.0 372150.0 ; + RECT 103050.0 385650.0 108600.0 386550.0 ; + RECT 111150.0 384450.0 112050.0 385350.0 ; + RECT 111150.0 385650.0 112050.0 386550.0 ; + RECT 111150.0 384900.0 112050.0 386550.0 ; + RECT 111600.0 384450.0 118200.0 385350.0 ; + RECT 118200.0 384450.0 119400.0 385350.0 ; + RECT 127650.0 384450.0 128550.0 385350.0 ; + RECT 127650.0 385650.0 128550.0 386550.0 ; + RECT 123600.0 384450.0 128100.0 385350.0 ; + RECT 127650.0 384900.0 128550.0 386100.0 ; + RECT 128100.0 385650.0 132600.0 386550.0 ; + RECT 103050.0 398850.0 108600.0 399750.0 ; + RECT 111150.0 400050.0 112050.0 400950.0 ; + RECT 111150.0 398850.0 112050.0 399750.0 ; + RECT 111150.0 399750.0 112050.0 400500.0 ; + RECT 111600.0 400050.0 118200.0 400950.0 ; + RECT 118200.0 400050.0 119400.0 400950.0 ; + RECT 127650.0 400050.0 128550.0 400950.0 ; + RECT 127650.0 398850.0 128550.0 399750.0 ; + RECT 123600.0 400050.0 128100.0 400950.0 ; + RECT 127650.0 399300.0 128550.0 400500.0 ; + RECT 128100.0 398850.0 132600.0 399750.0 ; + RECT 103050.0 413250.0 108600.0 414150.0 ; + RECT 111150.0 412050.0 112050.0 412950.0 ; + RECT 111150.0 413250.0 112050.0 414150.0 ; + RECT 111150.0 412500.0 112050.0 414150.0 ; + RECT 111600.0 412050.0 118200.0 412950.0 ; + RECT 118200.0 412050.0 119400.0 412950.0 ; + RECT 127650.0 412050.0 128550.0 412950.0 ; + RECT 127650.0 413250.0 128550.0 414150.0 ; + RECT 123600.0 412050.0 128100.0 412950.0 ; + RECT 127650.0 412500.0 128550.0 413700.0 ; + RECT 128100.0 413250.0 132600.0 414150.0 ; + RECT 112800.0 211350.0 114000.0 213300.0 ; + RECT 112800.0 199500.0 114000.0 201450.0 ; + RECT 108000.0 200850.0 109200.0 199050.0 ; + RECT 108000.0 210150.0 109200.0 213750.0 ; + RECT 110700.0 200850.0 111600.0 210150.0 ; + RECT 108000.0 210150.0 109200.0 211350.0 ; + RECT 110400.0 210150.0 111600.0 211350.0 ; + RECT 110400.0 210150.0 111600.0 211350.0 ; + RECT 108000.0 210150.0 109200.0 211350.0 ; + RECT 108000.0 200850.0 109200.0 202050.0 ; + RECT 110400.0 200850.0 111600.0 202050.0 ; + RECT 110400.0 200850.0 111600.0 202050.0 ; + RECT 108000.0 200850.0 109200.0 202050.0 ; + RECT 112800.0 210750.0 114000.0 211950.0 ; + RECT 112800.0 200850.0 114000.0 202050.0 ; + RECT 108600.0 205500.0 109800.0 206700.0 ; + RECT 108600.0 205500.0 109800.0 206700.0 ; + RECT 111150.0 205650.0 112050.0 206550.0 ; + RECT 106200.0 212850.0 115800.0 213750.0 ; + RECT 106200.0 199050.0 115800.0 199950.0 ; + RECT 117600.0 201450.0 118800.0 199050.0 ; + RECT 117600.0 210150.0 118800.0 213750.0 ; + RECT 122400.0 210150.0 123600.0 213750.0 ; + RECT 124800.0 211350.0 126000.0 213300.0 ; + RECT 124800.0 199500.0 126000.0 201450.0 ; + RECT 117600.0 210150.0 118800.0 211350.0 ; + RECT 120000.0 210150.0 121200.0 211350.0 ; + RECT 120000.0 210150.0 121200.0 211350.0 ; + RECT 117600.0 210150.0 118800.0 211350.0 ; + RECT 120000.0 210150.0 121200.0 211350.0 ; + RECT 122400.0 210150.0 123600.0 211350.0 ; + RECT 122400.0 210150.0 123600.0 211350.0 ; + RECT 120000.0 210150.0 121200.0 211350.0 ; + RECT 117600.0 201450.0 118800.0 202650.0 ; + RECT 120000.0 201450.0 121200.0 202650.0 ; + RECT 120000.0 201450.0 121200.0 202650.0 ; + RECT 117600.0 201450.0 118800.0 202650.0 ; + RECT 120000.0 201450.0 121200.0 202650.0 ; + RECT 122400.0 201450.0 123600.0 202650.0 ; + RECT 122400.0 201450.0 123600.0 202650.0 ; + RECT 120000.0 201450.0 121200.0 202650.0 ; + RECT 124800.0 210750.0 126000.0 211950.0 ; + RECT 124800.0 200850.0 126000.0 202050.0 ; + RECT 122400.0 204000.0 121200.0 205200.0 ; + RECT 119400.0 206700.0 118200.0 207900.0 ; + RECT 120000.0 210150.0 121200.0 211350.0 ; + RECT 122400.0 201450.0 123600.0 202650.0 ; + RECT 123600.0 206700.0 122400.0 207900.0 ; + RECT 118200.0 206700.0 119400.0 207900.0 ; + RECT 121200.0 204000.0 122400.0 205200.0 ; + RECT 122400.0 206700.0 123600.0 207900.0 ; + RECT 115800.0 212850.0 130200.0 213750.0 ; + RECT 115800.0 199050.0 130200.0 199950.0 ; + RECT 136800.0 211350.0 138000.0 213300.0 ; + RECT 136800.0 199500.0 138000.0 201450.0 ; + RECT 132000.0 200850.0 133200.0 199050.0 ; + RECT 132000.0 210150.0 133200.0 213750.0 ; + RECT 134700.0 200850.0 135600.0 210150.0 ; + RECT 132000.0 210150.0 133200.0 211350.0 ; + RECT 134400.0 210150.0 135600.0 211350.0 ; + RECT 134400.0 210150.0 135600.0 211350.0 ; + RECT 132000.0 210150.0 133200.0 211350.0 ; + RECT 132000.0 200850.0 133200.0 202050.0 ; + RECT 134400.0 200850.0 135600.0 202050.0 ; + RECT 134400.0 200850.0 135600.0 202050.0 ; + RECT 132000.0 200850.0 133200.0 202050.0 ; + RECT 136800.0 210750.0 138000.0 211950.0 ; + RECT 136800.0 200850.0 138000.0 202050.0 ; + RECT 132600.0 205500.0 133800.0 206700.0 ; + RECT 132600.0 205500.0 133800.0 206700.0 ; + RECT 135150.0 205650.0 136050.0 206550.0 ; + RECT 130200.0 212850.0 139800.0 213750.0 ; + RECT 130200.0 199050.0 139800.0 199950.0 ; + RECT 102450.0 205500.0 103650.0 206700.0 ; + RECT 104400.0 203100.0 105600.0 204300.0 ; + RECT 121200.0 204000.0 120000.0 205200.0 ; + RECT 112800.0 215250.0 114000.0 213300.0 ; + RECT 112800.0 227100.0 114000.0 225150.0 ; + RECT 108000.0 225750.0 109200.0 227550.0 ; + RECT 108000.0 216450.0 109200.0 212850.0 ; + RECT 110700.0 225750.0 111600.0 216450.0 ; + RECT 108000.0 216450.0 109200.0 215250.0 ; + RECT 110400.0 216450.0 111600.0 215250.0 ; + RECT 110400.0 216450.0 111600.0 215250.0 ; + RECT 108000.0 216450.0 109200.0 215250.0 ; + RECT 108000.0 225750.0 109200.0 224550.0 ; + RECT 110400.0 225750.0 111600.0 224550.0 ; + RECT 110400.0 225750.0 111600.0 224550.0 ; + RECT 108000.0 225750.0 109200.0 224550.0 ; + RECT 112800.0 215850.0 114000.0 214650.0 ; + RECT 112800.0 225750.0 114000.0 224550.0 ; + RECT 108600.0 221100.0 109800.0 219900.0 ; + RECT 108600.0 221100.0 109800.0 219900.0 ; + RECT 111150.0 220950.0 112050.0 220050.0 ; + RECT 106200.0 213750.0 115800.0 212850.0 ; + RECT 106200.0 227550.0 115800.0 226650.0 ; + RECT 117600.0 225150.0 118800.0 227550.0 ; + RECT 117600.0 216450.0 118800.0 212850.0 ; + RECT 122400.0 216450.0 123600.0 212850.0 ; + RECT 124800.0 215250.0 126000.0 213300.0 ; + RECT 124800.0 227100.0 126000.0 225150.0 ; + RECT 117600.0 216450.0 118800.0 215250.0 ; + RECT 120000.0 216450.0 121200.0 215250.0 ; + RECT 120000.0 216450.0 121200.0 215250.0 ; + RECT 117600.0 216450.0 118800.0 215250.0 ; + RECT 120000.0 216450.0 121200.0 215250.0 ; + RECT 122400.0 216450.0 123600.0 215250.0 ; + RECT 122400.0 216450.0 123600.0 215250.0 ; + RECT 120000.0 216450.0 121200.0 215250.0 ; + RECT 117600.0 225150.0 118800.0 223950.0 ; + RECT 120000.0 225150.0 121200.0 223950.0 ; + RECT 120000.0 225150.0 121200.0 223950.0 ; + RECT 117600.0 225150.0 118800.0 223950.0 ; + RECT 120000.0 225150.0 121200.0 223950.0 ; + RECT 122400.0 225150.0 123600.0 223950.0 ; + RECT 122400.0 225150.0 123600.0 223950.0 ; + RECT 120000.0 225150.0 121200.0 223950.0 ; + RECT 124800.0 215850.0 126000.0 214650.0 ; + RECT 124800.0 225750.0 126000.0 224550.0 ; + RECT 122400.0 222600.0 121200.0 221400.0 ; + RECT 119400.0 219900.0 118200.0 218700.0 ; + RECT 120000.0 216450.0 121200.0 215250.0 ; + RECT 122400.0 225150.0 123600.0 223950.0 ; + RECT 123600.0 219900.0 122400.0 218700.0 ; + RECT 118200.0 219900.0 119400.0 218700.0 ; + RECT 121200.0 222600.0 122400.0 221400.0 ; + RECT 122400.0 219900.0 123600.0 218700.0 ; + RECT 115800.0 213750.0 130200.0 212850.0 ; + RECT 115800.0 227550.0 130200.0 226650.0 ; + RECT 136800.0 215250.0 138000.0 213300.0 ; + RECT 136800.0 227100.0 138000.0 225150.0 ; + RECT 132000.0 225750.0 133200.0 227550.0 ; + RECT 132000.0 216450.0 133200.0 212850.0 ; + RECT 134700.0 225750.0 135600.0 216450.0 ; + RECT 132000.0 216450.0 133200.0 215250.0 ; + RECT 134400.0 216450.0 135600.0 215250.0 ; + RECT 134400.0 216450.0 135600.0 215250.0 ; + RECT 132000.0 216450.0 133200.0 215250.0 ; + RECT 132000.0 225750.0 133200.0 224550.0 ; + RECT 134400.0 225750.0 135600.0 224550.0 ; + RECT 134400.0 225750.0 135600.0 224550.0 ; + RECT 132000.0 225750.0 133200.0 224550.0 ; + RECT 136800.0 215850.0 138000.0 214650.0 ; + RECT 136800.0 225750.0 138000.0 224550.0 ; + RECT 132600.0 221100.0 133800.0 219900.0 ; + RECT 132600.0 221100.0 133800.0 219900.0 ; + RECT 135150.0 220950.0 136050.0 220050.0 ; + RECT 130200.0 213750.0 139800.0 212850.0 ; + RECT 130200.0 227550.0 139800.0 226650.0 ; + RECT 102450.0 219900.0 103650.0 221100.0 ; + RECT 104400.0 222300.0 105600.0 223500.0 ; + RECT 121200.0 221400.0 120000.0 222600.0 ; + RECT 112800.0 238950.0 114000.0 240900.0 ; + RECT 112800.0 227100.0 114000.0 229050.0 ; + RECT 108000.0 228450.0 109200.0 226650.0 ; + RECT 108000.0 237750.0 109200.0 241350.0 ; + RECT 110700.0 228450.0 111600.0 237750.0 ; + RECT 108000.0 237750.0 109200.0 238950.0 ; + RECT 110400.0 237750.0 111600.0 238950.0 ; + RECT 110400.0 237750.0 111600.0 238950.0 ; + RECT 108000.0 237750.0 109200.0 238950.0 ; + RECT 108000.0 228450.0 109200.0 229650.0 ; + RECT 110400.0 228450.0 111600.0 229650.0 ; + RECT 110400.0 228450.0 111600.0 229650.0 ; + RECT 108000.0 228450.0 109200.0 229650.0 ; + RECT 112800.0 238350.0 114000.0 239550.0 ; + RECT 112800.0 228450.0 114000.0 229650.0 ; + RECT 108600.0 233100.0 109800.0 234300.0 ; + RECT 108600.0 233100.0 109800.0 234300.0 ; + RECT 111150.0 233250.0 112050.0 234150.0 ; + RECT 106200.0 240450.0 115800.0 241350.0 ; + RECT 106200.0 226650.0 115800.0 227550.0 ; + RECT 117600.0 229050.0 118800.0 226650.0 ; + RECT 117600.0 237750.0 118800.0 241350.0 ; + RECT 122400.0 237750.0 123600.0 241350.0 ; + RECT 124800.0 238950.0 126000.0 240900.0 ; + RECT 124800.0 227100.0 126000.0 229050.0 ; + RECT 117600.0 237750.0 118800.0 238950.0 ; + RECT 120000.0 237750.0 121200.0 238950.0 ; + RECT 120000.0 237750.0 121200.0 238950.0 ; + RECT 117600.0 237750.0 118800.0 238950.0 ; + RECT 120000.0 237750.0 121200.0 238950.0 ; + RECT 122400.0 237750.0 123600.0 238950.0 ; + RECT 122400.0 237750.0 123600.0 238950.0 ; + RECT 120000.0 237750.0 121200.0 238950.0 ; + RECT 117600.0 229050.0 118800.0 230250.0 ; + RECT 120000.0 229050.0 121200.0 230250.0 ; + RECT 120000.0 229050.0 121200.0 230250.0 ; + RECT 117600.0 229050.0 118800.0 230250.0 ; + RECT 120000.0 229050.0 121200.0 230250.0 ; + RECT 122400.0 229050.0 123600.0 230250.0 ; + RECT 122400.0 229050.0 123600.0 230250.0 ; + RECT 120000.0 229050.0 121200.0 230250.0 ; + RECT 124800.0 238350.0 126000.0 239550.0 ; + RECT 124800.0 228450.0 126000.0 229650.0 ; + RECT 122400.0 231600.0 121200.0 232800.0 ; + RECT 119400.0 234300.0 118200.0 235500.0 ; + RECT 120000.0 237750.0 121200.0 238950.0 ; + RECT 122400.0 229050.0 123600.0 230250.0 ; + RECT 123600.0 234300.0 122400.0 235500.0 ; + RECT 118200.0 234300.0 119400.0 235500.0 ; + RECT 121200.0 231600.0 122400.0 232800.0 ; + RECT 122400.0 234300.0 123600.0 235500.0 ; + RECT 115800.0 240450.0 130200.0 241350.0 ; + RECT 115800.0 226650.0 130200.0 227550.0 ; + RECT 136800.0 238950.0 138000.0 240900.0 ; + RECT 136800.0 227100.0 138000.0 229050.0 ; + RECT 132000.0 228450.0 133200.0 226650.0 ; + RECT 132000.0 237750.0 133200.0 241350.0 ; + RECT 134700.0 228450.0 135600.0 237750.0 ; + RECT 132000.0 237750.0 133200.0 238950.0 ; + RECT 134400.0 237750.0 135600.0 238950.0 ; + RECT 134400.0 237750.0 135600.0 238950.0 ; + RECT 132000.0 237750.0 133200.0 238950.0 ; + RECT 132000.0 228450.0 133200.0 229650.0 ; + RECT 134400.0 228450.0 135600.0 229650.0 ; + RECT 134400.0 228450.0 135600.0 229650.0 ; + RECT 132000.0 228450.0 133200.0 229650.0 ; + RECT 136800.0 238350.0 138000.0 239550.0 ; + RECT 136800.0 228450.0 138000.0 229650.0 ; + RECT 132600.0 233100.0 133800.0 234300.0 ; + RECT 132600.0 233100.0 133800.0 234300.0 ; + RECT 135150.0 233250.0 136050.0 234150.0 ; + RECT 130200.0 240450.0 139800.0 241350.0 ; + RECT 130200.0 226650.0 139800.0 227550.0 ; + RECT 102450.0 233100.0 103650.0 234300.0 ; + RECT 104400.0 230700.0 105600.0 231900.0 ; + RECT 121200.0 231600.0 120000.0 232800.0 ; + RECT 112800.0 242850.0 114000.0 240900.0 ; + RECT 112800.0 254700.0 114000.0 252750.0 ; + RECT 108000.0 253350.0 109200.0 255150.0 ; + RECT 108000.0 244050.0 109200.0 240450.0 ; + RECT 110700.0 253350.0 111600.0 244050.0 ; + RECT 108000.0 244050.0 109200.0 242850.0 ; + RECT 110400.0 244050.0 111600.0 242850.0 ; + RECT 110400.0 244050.0 111600.0 242850.0 ; + RECT 108000.0 244050.0 109200.0 242850.0 ; + RECT 108000.0 253350.0 109200.0 252150.0 ; + RECT 110400.0 253350.0 111600.0 252150.0 ; + RECT 110400.0 253350.0 111600.0 252150.0 ; + RECT 108000.0 253350.0 109200.0 252150.0 ; + RECT 112800.0 243450.0 114000.0 242250.0 ; + RECT 112800.0 253350.0 114000.0 252150.0 ; + RECT 108600.0 248700.0 109800.0 247500.0 ; + RECT 108600.0 248700.0 109800.0 247500.0 ; + RECT 111150.0 248550.0 112050.0 247650.0 ; + RECT 106200.0 241350.0 115800.0 240450.0 ; + RECT 106200.0 255150.0 115800.0 254250.0 ; + RECT 117600.0 252750.0 118800.0 255150.0 ; + RECT 117600.0 244050.0 118800.0 240450.0 ; + RECT 122400.0 244050.0 123600.0 240450.0 ; + RECT 124800.0 242850.0 126000.0 240900.0 ; + RECT 124800.0 254700.0 126000.0 252750.0 ; + RECT 117600.0 244050.0 118800.0 242850.0 ; + RECT 120000.0 244050.0 121200.0 242850.0 ; + RECT 120000.0 244050.0 121200.0 242850.0 ; + RECT 117600.0 244050.0 118800.0 242850.0 ; + RECT 120000.0 244050.0 121200.0 242850.0 ; + RECT 122400.0 244050.0 123600.0 242850.0 ; + RECT 122400.0 244050.0 123600.0 242850.0 ; + RECT 120000.0 244050.0 121200.0 242850.0 ; + RECT 117600.0 252750.0 118800.0 251550.0 ; + RECT 120000.0 252750.0 121200.0 251550.0 ; + RECT 120000.0 252750.0 121200.0 251550.0 ; + RECT 117600.0 252750.0 118800.0 251550.0 ; + RECT 120000.0 252750.0 121200.0 251550.0 ; + RECT 122400.0 252750.0 123600.0 251550.0 ; + RECT 122400.0 252750.0 123600.0 251550.0 ; + RECT 120000.0 252750.0 121200.0 251550.0 ; + RECT 124800.0 243450.0 126000.0 242250.0 ; + RECT 124800.0 253350.0 126000.0 252150.0 ; + RECT 122400.0 250200.0 121200.0 249000.0 ; + RECT 119400.0 247500.0 118200.0 246300.0 ; + RECT 120000.0 244050.0 121200.0 242850.0 ; + RECT 122400.0 252750.0 123600.0 251550.0 ; + RECT 123600.0 247500.0 122400.0 246300.0 ; + RECT 118200.0 247500.0 119400.0 246300.0 ; + RECT 121200.0 250200.0 122400.0 249000.0 ; + RECT 122400.0 247500.0 123600.0 246300.0 ; + RECT 115800.0 241350.0 130200.0 240450.0 ; + RECT 115800.0 255150.0 130200.0 254250.0 ; + RECT 136800.0 242850.0 138000.0 240900.0 ; + RECT 136800.0 254700.0 138000.0 252750.0 ; + RECT 132000.0 253350.0 133200.0 255150.0 ; + RECT 132000.0 244050.0 133200.0 240450.0 ; + RECT 134700.0 253350.0 135600.0 244050.0 ; + RECT 132000.0 244050.0 133200.0 242850.0 ; + RECT 134400.0 244050.0 135600.0 242850.0 ; + RECT 134400.0 244050.0 135600.0 242850.0 ; + RECT 132000.0 244050.0 133200.0 242850.0 ; + RECT 132000.0 253350.0 133200.0 252150.0 ; + RECT 134400.0 253350.0 135600.0 252150.0 ; + RECT 134400.0 253350.0 135600.0 252150.0 ; + RECT 132000.0 253350.0 133200.0 252150.0 ; + RECT 136800.0 243450.0 138000.0 242250.0 ; + RECT 136800.0 253350.0 138000.0 252150.0 ; + RECT 132600.0 248700.0 133800.0 247500.0 ; + RECT 132600.0 248700.0 133800.0 247500.0 ; + RECT 135150.0 248550.0 136050.0 247650.0 ; + RECT 130200.0 241350.0 139800.0 240450.0 ; + RECT 130200.0 255150.0 139800.0 254250.0 ; + RECT 102450.0 247500.0 103650.0 248700.0 ; + RECT 104400.0 249900.0 105600.0 251100.0 ; + RECT 121200.0 249000.0 120000.0 250200.0 ; + RECT 112800.0 266550.0 114000.0 268500.0 ; + RECT 112800.0 254700.0 114000.0 256650.0 ; + RECT 108000.0 256050.0 109200.0 254250.0 ; + RECT 108000.0 265350.0 109200.0 268950.0 ; + RECT 110700.0 256050.0 111600.0 265350.0 ; + RECT 108000.0 265350.0 109200.0 266550.0 ; + RECT 110400.0 265350.0 111600.0 266550.0 ; + RECT 110400.0 265350.0 111600.0 266550.0 ; + RECT 108000.0 265350.0 109200.0 266550.0 ; + RECT 108000.0 256050.0 109200.0 257250.0 ; + RECT 110400.0 256050.0 111600.0 257250.0 ; + RECT 110400.0 256050.0 111600.0 257250.0 ; + RECT 108000.0 256050.0 109200.0 257250.0 ; + RECT 112800.0 265950.0 114000.0 267150.0 ; + RECT 112800.0 256050.0 114000.0 257250.0 ; + RECT 108600.0 260700.0 109800.0 261900.0 ; + RECT 108600.0 260700.0 109800.0 261900.0 ; + RECT 111150.0 260850.0 112050.0 261750.0 ; + RECT 106200.0 268050.0 115800.0 268950.0 ; + RECT 106200.0 254250.0 115800.0 255150.0 ; + RECT 117600.0 256650.0 118800.0 254250.0 ; + RECT 117600.0 265350.0 118800.0 268950.0 ; + RECT 122400.0 265350.0 123600.0 268950.0 ; + RECT 124800.0 266550.0 126000.0 268500.0 ; + RECT 124800.0 254700.0 126000.0 256650.0 ; + RECT 117600.0 265350.0 118800.0 266550.0 ; + RECT 120000.0 265350.0 121200.0 266550.0 ; + RECT 120000.0 265350.0 121200.0 266550.0 ; + RECT 117600.0 265350.0 118800.0 266550.0 ; + RECT 120000.0 265350.0 121200.0 266550.0 ; + RECT 122400.0 265350.0 123600.0 266550.0 ; + RECT 122400.0 265350.0 123600.0 266550.0 ; + RECT 120000.0 265350.0 121200.0 266550.0 ; + RECT 117600.0 256650.0 118800.0 257850.0 ; + RECT 120000.0 256650.0 121200.0 257850.0 ; + RECT 120000.0 256650.0 121200.0 257850.0 ; + RECT 117600.0 256650.0 118800.0 257850.0 ; + RECT 120000.0 256650.0 121200.0 257850.0 ; + RECT 122400.0 256650.0 123600.0 257850.0 ; + RECT 122400.0 256650.0 123600.0 257850.0 ; + RECT 120000.0 256650.0 121200.0 257850.0 ; + RECT 124800.0 265950.0 126000.0 267150.0 ; + RECT 124800.0 256050.0 126000.0 257250.0 ; + RECT 122400.0 259200.0 121200.0 260400.0 ; + RECT 119400.0 261900.0 118200.0 263100.0 ; + RECT 120000.0 265350.0 121200.0 266550.0 ; + RECT 122400.0 256650.0 123600.0 257850.0 ; + RECT 123600.0 261900.0 122400.0 263100.0 ; + RECT 118200.0 261900.0 119400.0 263100.0 ; + RECT 121200.0 259200.0 122400.0 260400.0 ; + RECT 122400.0 261900.0 123600.0 263100.0 ; + RECT 115800.0 268050.0 130200.0 268950.0 ; + RECT 115800.0 254250.0 130200.0 255150.0 ; + RECT 136800.0 266550.0 138000.0 268500.0 ; + RECT 136800.0 254700.0 138000.0 256650.0 ; + RECT 132000.0 256050.0 133200.0 254250.0 ; + RECT 132000.0 265350.0 133200.0 268950.0 ; + RECT 134700.0 256050.0 135600.0 265350.0 ; + RECT 132000.0 265350.0 133200.0 266550.0 ; + RECT 134400.0 265350.0 135600.0 266550.0 ; + RECT 134400.0 265350.0 135600.0 266550.0 ; + RECT 132000.0 265350.0 133200.0 266550.0 ; + RECT 132000.0 256050.0 133200.0 257250.0 ; + RECT 134400.0 256050.0 135600.0 257250.0 ; + RECT 134400.0 256050.0 135600.0 257250.0 ; + RECT 132000.0 256050.0 133200.0 257250.0 ; + RECT 136800.0 265950.0 138000.0 267150.0 ; + RECT 136800.0 256050.0 138000.0 257250.0 ; + RECT 132600.0 260700.0 133800.0 261900.0 ; + RECT 132600.0 260700.0 133800.0 261900.0 ; + RECT 135150.0 260850.0 136050.0 261750.0 ; + RECT 130200.0 268050.0 139800.0 268950.0 ; + RECT 130200.0 254250.0 139800.0 255150.0 ; + RECT 102450.0 260700.0 103650.0 261900.0 ; + RECT 104400.0 258300.0 105600.0 259500.0 ; + RECT 121200.0 259200.0 120000.0 260400.0 ; + RECT 112800.0 270450.0 114000.0 268500.0 ; + RECT 112800.0 282300.0 114000.0 280350.0 ; + RECT 108000.0 280950.0 109200.0 282750.0 ; + RECT 108000.0 271650.0 109200.0 268050.0 ; + RECT 110700.0 280950.0 111600.0 271650.0 ; + RECT 108000.0 271650.0 109200.0 270450.0 ; + RECT 110400.0 271650.0 111600.0 270450.0 ; + RECT 110400.0 271650.0 111600.0 270450.0 ; + RECT 108000.0 271650.0 109200.0 270450.0 ; + RECT 108000.0 280950.0 109200.0 279750.0 ; + RECT 110400.0 280950.0 111600.0 279750.0 ; + RECT 110400.0 280950.0 111600.0 279750.0 ; + RECT 108000.0 280950.0 109200.0 279750.0 ; + RECT 112800.0 271050.0 114000.0 269850.0 ; + RECT 112800.0 280950.0 114000.0 279750.0 ; + RECT 108600.0 276300.0 109800.0 275100.0 ; + RECT 108600.0 276300.0 109800.0 275100.0 ; + RECT 111150.0 276150.0 112050.0 275250.0 ; + RECT 106200.0 268950.0 115800.0 268050.0 ; + RECT 106200.0 282750.0 115800.0 281850.0 ; + RECT 117600.0 280350.0 118800.0 282750.0 ; + RECT 117600.0 271650.0 118800.0 268050.0 ; + RECT 122400.0 271650.0 123600.0 268050.0 ; + RECT 124800.0 270450.0 126000.0 268500.0 ; + RECT 124800.0 282300.0 126000.0 280350.0 ; + RECT 117600.0 271650.0 118800.0 270450.0 ; + RECT 120000.0 271650.0 121200.0 270450.0 ; + RECT 120000.0 271650.0 121200.0 270450.0 ; + RECT 117600.0 271650.0 118800.0 270450.0 ; + RECT 120000.0 271650.0 121200.0 270450.0 ; + RECT 122400.0 271650.0 123600.0 270450.0 ; + RECT 122400.0 271650.0 123600.0 270450.0 ; + RECT 120000.0 271650.0 121200.0 270450.0 ; + RECT 117600.0 280350.0 118800.0 279150.0 ; + RECT 120000.0 280350.0 121200.0 279150.0 ; + RECT 120000.0 280350.0 121200.0 279150.0 ; + RECT 117600.0 280350.0 118800.0 279150.0 ; + RECT 120000.0 280350.0 121200.0 279150.0 ; + RECT 122400.0 280350.0 123600.0 279150.0 ; + RECT 122400.0 280350.0 123600.0 279150.0 ; + RECT 120000.0 280350.0 121200.0 279150.0 ; + RECT 124800.0 271050.0 126000.0 269850.0 ; + RECT 124800.0 280950.0 126000.0 279750.0 ; + RECT 122400.0 277800.0 121200.0 276600.0 ; + RECT 119400.0 275100.0 118200.0 273900.0 ; + RECT 120000.0 271650.0 121200.0 270450.0 ; + RECT 122400.0 280350.0 123600.0 279150.0 ; + RECT 123600.0 275100.0 122400.0 273900.0 ; + RECT 118200.0 275100.0 119400.0 273900.0 ; + RECT 121200.0 277800.0 122400.0 276600.0 ; + RECT 122400.0 275100.0 123600.0 273900.0 ; + RECT 115800.0 268950.0 130200.0 268050.0 ; + RECT 115800.0 282750.0 130200.0 281850.0 ; + RECT 136800.0 270450.0 138000.0 268500.0 ; + RECT 136800.0 282300.0 138000.0 280350.0 ; + RECT 132000.0 280950.0 133200.0 282750.0 ; + RECT 132000.0 271650.0 133200.0 268050.0 ; + RECT 134700.0 280950.0 135600.0 271650.0 ; + RECT 132000.0 271650.0 133200.0 270450.0 ; + RECT 134400.0 271650.0 135600.0 270450.0 ; + RECT 134400.0 271650.0 135600.0 270450.0 ; + RECT 132000.0 271650.0 133200.0 270450.0 ; + RECT 132000.0 280950.0 133200.0 279750.0 ; + RECT 134400.0 280950.0 135600.0 279750.0 ; + RECT 134400.0 280950.0 135600.0 279750.0 ; + RECT 132000.0 280950.0 133200.0 279750.0 ; + RECT 136800.0 271050.0 138000.0 269850.0 ; + RECT 136800.0 280950.0 138000.0 279750.0 ; + RECT 132600.0 276300.0 133800.0 275100.0 ; + RECT 132600.0 276300.0 133800.0 275100.0 ; + RECT 135150.0 276150.0 136050.0 275250.0 ; + RECT 130200.0 268950.0 139800.0 268050.0 ; + RECT 130200.0 282750.0 139800.0 281850.0 ; + RECT 102450.0 275100.0 103650.0 276300.0 ; + RECT 104400.0 277500.0 105600.0 278700.0 ; + RECT 121200.0 276600.0 120000.0 277800.0 ; + RECT 112800.0 294150.0 114000.0 296100.0 ; + RECT 112800.0 282300.0 114000.0 284250.0 ; + RECT 108000.0 283650.0 109200.0 281850.0 ; + RECT 108000.0 292950.0 109200.0 296550.0 ; + RECT 110700.0 283650.0 111600.0 292950.0 ; + RECT 108000.0 292950.0 109200.0 294150.0 ; + RECT 110400.0 292950.0 111600.0 294150.0 ; + RECT 110400.0 292950.0 111600.0 294150.0 ; + RECT 108000.0 292950.0 109200.0 294150.0 ; + RECT 108000.0 283650.0 109200.0 284850.0 ; + RECT 110400.0 283650.0 111600.0 284850.0 ; + RECT 110400.0 283650.0 111600.0 284850.0 ; + RECT 108000.0 283650.0 109200.0 284850.0 ; + RECT 112800.0 293550.0 114000.0 294750.0 ; + RECT 112800.0 283650.0 114000.0 284850.0 ; + RECT 108600.0 288300.0 109800.0 289500.0 ; + RECT 108600.0 288300.0 109800.0 289500.0 ; + RECT 111150.0 288450.0 112050.0 289350.0 ; + RECT 106200.0 295650.0 115800.0 296550.0 ; + RECT 106200.0 281850.0 115800.0 282750.0 ; + RECT 117600.0 284250.0 118800.0 281850.0 ; + RECT 117600.0 292950.0 118800.0 296550.0 ; + RECT 122400.0 292950.0 123600.0 296550.0 ; + RECT 124800.0 294150.0 126000.0 296100.0 ; + RECT 124800.0 282300.0 126000.0 284250.0 ; + RECT 117600.0 292950.0 118800.0 294150.0 ; + RECT 120000.0 292950.0 121200.0 294150.0 ; + RECT 120000.0 292950.0 121200.0 294150.0 ; + RECT 117600.0 292950.0 118800.0 294150.0 ; + RECT 120000.0 292950.0 121200.0 294150.0 ; + RECT 122400.0 292950.0 123600.0 294150.0 ; + RECT 122400.0 292950.0 123600.0 294150.0 ; + RECT 120000.0 292950.0 121200.0 294150.0 ; + RECT 117600.0 284250.0 118800.0 285450.0 ; + RECT 120000.0 284250.0 121200.0 285450.0 ; + RECT 120000.0 284250.0 121200.0 285450.0 ; + RECT 117600.0 284250.0 118800.0 285450.0 ; + RECT 120000.0 284250.0 121200.0 285450.0 ; + RECT 122400.0 284250.0 123600.0 285450.0 ; + RECT 122400.0 284250.0 123600.0 285450.0 ; + RECT 120000.0 284250.0 121200.0 285450.0 ; + RECT 124800.0 293550.0 126000.0 294750.0 ; + RECT 124800.0 283650.0 126000.0 284850.0 ; + RECT 122400.0 286800.0 121200.0 288000.0 ; + RECT 119400.0 289500.0 118200.0 290700.0 ; + RECT 120000.0 292950.0 121200.0 294150.0 ; + RECT 122400.0 284250.0 123600.0 285450.0 ; + RECT 123600.0 289500.0 122400.0 290700.0 ; + RECT 118200.0 289500.0 119400.0 290700.0 ; + RECT 121200.0 286800.0 122400.0 288000.0 ; + RECT 122400.0 289500.0 123600.0 290700.0 ; + RECT 115800.0 295650.0 130200.0 296550.0 ; + RECT 115800.0 281850.0 130200.0 282750.0 ; + RECT 136800.0 294150.0 138000.0 296100.0 ; + RECT 136800.0 282300.0 138000.0 284250.0 ; + RECT 132000.0 283650.0 133200.0 281850.0 ; + RECT 132000.0 292950.0 133200.0 296550.0 ; + RECT 134700.0 283650.0 135600.0 292950.0 ; + RECT 132000.0 292950.0 133200.0 294150.0 ; + RECT 134400.0 292950.0 135600.0 294150.0 ; + RECT 134400.0 292950.0 135600.0 294150.0 ; + RECT 132000.0 292950.0 133200.0 294150.0 ; + RECT 132000.0 283650.0 133200.0 284850.0 ; + RECT 134400.0 283650.0 135600.0 284850.0 ; + RECT 134400.0 283650.0 135600.0 284850.0 ; + RECT 132000.0 283650.0 133200.0 284850.0 ; + RECT 136800.0 293550.0 138000.0 294750.0 ; + RECT 136800.0 283650.0 138000.0 284850.0 ; + RECT 132600.0 288300.0 133800.0 289500.0 ; + RECT 132600.0 288300.0 133800.0 289500.0 ; + RECT 135150.0 288450.0 136050.0 289350.0 ; + RECT 130200.0 295650.0 139800.0 296550.0 ; + RECT 130200.0 281850.0 139800.0 282750.0 ; + RECT 102450.0 288300.0 103650.0 289500.0 ; + RECT 104400.0 285900.0 105600.0 287100.0 ; + RECT 121200.0 286800.0 120000.0 288000.0 ; + RECT 112800.0 298050.0 114000.0 296100.0 ; + RECT 112800.0 309900.0 114000.0 307950.0 ; + RECT 108000.0 308550.0 109200.0 310350.0 ; + RECT 108000.0 299250.0 109200.0 295650.0 ; + RECT 110700.0 308550.0 111600.0 299250.0 ; + RECT 108000.0 299250.0 109200.0 298050.0 ; + RECT 110400.0 299250.0 111600.0 298050.0 ; + RECT 110400.0 299250.0 111600.0 298050.0 ; + RECT 108000.0 299250.0 109200.0 298050.0 ; + RECT 108000.0 308550.0 109200.0 307350.0 ; + RECT 110400.0 308550.0 111600.0 307350.0 ; + RECT 110400.0 308550.0 111600.0 307350.0 ; + RECT 108000.0 308550.0 109200.0 307350.0 ; + RECT 112800.0 298650.0 114000.0 297450.0 ; + RECT 112800.0 308550.0 114000.0 307350.0 ; + RECT 108600.0 303900.0 109800.0 302700.0 ; + RECT 108600.0 303900.0 109800.0 302700.0 ; + RECT 111150.0 303750.0 112050.0 302850.0 ; + RECT 106200.0 296550.0 115800.0 295650.0 ; + RECT 106200.0 310350.0 115800.0 309450.0 ; + RECT 117600.0 307950.0 118800.0 310350.0 ; + RECT 117600.0 299250.0 118800.0 295650.0 ; + RECT 122400.0 299250.0 123600.0 295650.0 ; + RECT 124800.0 298050.0 126000.0 296100.0 ; + RECT 124800.0 309900.0 126000.0 307950.0 ; + RECT 117600.0 299250.0 118800.0 298050.0 ; + RECT 120000.0 299250.0 121200.0 298050.0 ; + RECT 120000.0 299250.0 121200.0 298050.0 ; + RECT 117600.0 299250.0 118800.0 298050.0 ; + RECT 120000.0 299250.0 121200.0 298050.0 ; + RECT 122400.0 299250.0 123600.0 298050.0 ; + RECT 122400.0 299250.0 123600.0 298050.0 ; + RECT 120000.0 299250.0 121200.0 298050.0 ; + RECT 117600.0 307950.0 118800.0 306750.0 ; + RECT 120000.0 307950.0 121200.0 306750.0 ; + RECT 120000.0 307950.0 121200.0 306750.0 ; + RECT 117600.0 307950.0 118800.0 306750.0 ; + RECT 120000.0 307950.0 121200.0 306750.0 ; + RECT 122400.0 307950.0 123600.0 306750.0 ; + RECT 122400.0 307950.0 123600.0 306750.0 ; + RECT 120000.0 307950.0 121200.0 306750.0 ; + RECT 124800.0 298650.0 126000.0 297450.0 ; + RECT 124800.0 308550.0 126000.0 307350.0 ; + RECT 122400.0 305400.0 121200.0 304200.0 ; + RECT 119400.0 302700.0 118200.0 301500.0 ; + RECT 120000.0 299250.0 121200.0 298050.0 ; + RECT 122400.0 307950.0 123600.0 306750.0 ; + RECT 123600.0 302700.0 122400.0 301500.0 ; + RECT 118200.0 302700.0 119400.0 301500.0 ; + RECT 121200.0 305400.0 122400.0 304200.0 ; + RECT 122400.0 302700.0 123600.0 301500.0 ; + RECT 115800.0 296550.0 130200.0 295650.0 ; + RECT 115800.0 310350.0 130200.0 309450.0 ; + RECT 136800.0 298050.0 138000.0 296100.0 ; + RECT 136800.0 309900.0 138000.0 307950.0 ; + RECT 132000.0 308550.0 133200.0 310350.0 ; + RECT 132000.0 299250.0 133200.0 295650.0 ; + RECT 134700.0 308550.0 135600.0 299250.0 ; + RECT 132000.0 299250.0 133200.0 298050.0 ; + RECT 134400.0 299250.0 135600.0 298050.0 ; + RECT 134400.0 299250.0 135600.0 298050.0 ; + RECT 132000.0 299250.0 133200.0 298050.0 ; + RECT 132000.0 308550.0 133200.0 307350.0 ; + RECT 134400.0 308550.0 135600.0 307350.0 ; + RECT 134400.0 308550.0 135600.0 307350.0 ; + RECT 132000.0 308550.0 133200.0 307350.0 ; + RECT 136800.0 298650.0 138000.0 297450.0 ; + RECT 136800.0 308550.0 138000.0 307350.0 ; + RECT 132600.0 303900.0 133800.0 302700.0 ; + RECT 132600.0 303900.0 133800.0 302700.0 ; + RECT 135150.0 303750.0 136050.0 302850.0 ; + RECT 130200.0 296550.0 139800.0 295650.0 ; + RECT 130200.0 310350.0 139800.0 309450.0 ; + RECT 102450.0 302700.0 103650.0 303900.0 ; + RECT 104400.0 305100.0 105600.0 306300.0 ; + RECT 121200.0 304200.0 120000.0 305400.0 ; + RECT 112800.0 321750.0 114000.0 323700.0 ; + RECT 112800.0 309900.0 114000.0 311850.0 ; + RECT 108000.0 311250.0 109200.0 309450.0 ; + RECT 108000.0 320550.0 109200.0 324150.0 ; + RECT 110700.0 311250.0 111600.0 320550.0 ; + RECT 108000.0 320550.0 109200.0 321750.0 ; + RECT 110400.0 320550.0 111600.0 321750.0 ; + RECT 110400.0 320550.0 111600.0 321750.0 ; + RECT 108000.0 320550.0 109200.0 321750.0 ; + RECT 108000.0 311250.0 109200.0 312450.0 ; + RECT 110400.0 311250.0 111600.0 312450.0 ; + RECT 110400.0 311250.0 111600.0 312450.0 ; + RECT 108000.0 311250.0 109200.0 312450.0 ; + RECT 112800.0 321150.0 114000.0 322350.0 ; + RECT 112800.0 311250.0 114000.0 312450.0 ; + RECT 108600.0 315900.0 109800.0 317100.0 ; + RECT 108600.0 315900.0 109800.0 317100.0 ; + RECT 111150.0 316050.0 112050.0 316950.0 ; + RECT 106200.0 323250.0 115800.0 324150.0 ; + RECT 106200.0 309450.0 115800.0 310350.0 ; + RECT 117600.0 311850.0 118800.0 309450.0 ; + RECT 117600.0 320550.0 118800.0 324150.0 ; + RECT 122400.0 320550.0 123600.0 324150.0 ; + RECT 124800.0 321750.0 126000.0 323700.0 ; + RECT 124800.0 309900.0 126000.0 311850.0 ; + RECT 117600.0 320550.0 118800.0 321750.0 ; + RECT 120000.0 320550.0 121200.0 321750.0 ; + RECT 120000.0 320550.0 121200.0 321750.0 ; + RECT 117600.0 320550.0 118800.0 321750.0 ; + RECT 120000.0 320550.0 121200.0 321750.0 ; + RECT 122400.0 320550.0 123600.0 321750.0 ; + RECT 122400.0 320550.0 123600.0 321750.0 ; + RECT 120000.0 320550.0 121200.0 321750.0 ; + RECT 117600.0 311850.0 118800.0 313050.0 ; + RECT 120000.0 311850.0 121200.0 313050.0 ; + RECT 120000.0 311850.0 121200.0 313050.0 ; + RECT 117600.0 311850.0 118800.0 313050.0 ; + RECT 120000.0 311850.0 121200.0 313050.0 ; + RECT 122400.0 311850.0 123600.0 313050.0 ; + RECT 122400.0 311850.0 123600.0 313050.0 ; + RECT 120000.0 311850.0 121200.0 313050.0 ; + RECT 124800.0 321150.0 126000.0 322350.0 ; + RECT 124800.0 311250.0 126000.0 312450.0 ; + RECT 122400.0 314400.0 121200.0 315600.0 ; + RECT 119400.0 317100.0 118200.0 318300.0 ; + RECT 120000.0 320550.0 121200.0 321750.0 ; + RECT 122400.0 311850.0 123600.0 313050.0 ; + RECT 123600.0 317100.0 122400.0 318300.0 ; + RECT 118200.0 317100.0 119400.0 318300.0 ; + RECT 121200.0 314400.0 122400.0 315600.0 ; + RECT 122400.0 317100.0 123600.0 318300.0 ; + RECT 115800.0 323250.0 130200.0 324150.0 ; + RECT 115800.0 309450.0 130200.0 310350.0 ; + RECT 136800.0 321750.0 138000.0 323700.0 ; + RECT 136800.0 309900.0 138000.0 311850.0 ; + RECT 132000.0 311250.0 133200.0 309450.0 ; + RECT 132000.0 320550.0 133200.0 324150.0 ; + RECT 134700.0 311250.0 135600.0 320550.0 ; + RECT 132000.0 320550.0 133200.0 321750.0 ; + RECT 134400.0 320550.0 135600.0 321750.0 ; + RECT 134400.0 320550.0 135600.0 321750.0 ; + RECT 132000.0 320550.0 133200.0 321750.0 ; + RECT 132000.0 311250.0 133200.0 312450.0 ; + RECT 134400.0 311250.0 135600.0 312450.0 ; + RECT 134400.0 311250.0 135600.0 312450.0 ; + RECT 132000.0 311250.0 133200.0 312450.0 ; + RECT 136800.0 321150.0 138000.0 322350.0 ; + RECT 136800.0 311250.0 138000.0 312450.0 ; + RECT 132600.0 315900.0 133800.0 317100.0 ; + RECT 132600.0 315900.0 133800.0 317100.0 ; + RECT 135150.0 316050.0 136050.0 316950.0 ; + RECT 130200.0 323250.0 139800.0 324150.0 ; + RECT 130200.0 309450.0 139800.0 310350.0 ; + RECT 102450.0 315900.0 103650.0 317100.0 ; + RECT 104400.0 313500.0 105600.0 314700.0 ; + RECT 121200.0 314400.0 120000.0 315600.0 ; + RECT 112800.0 325650.0 114000.0 323700.0 ; + RECT 112800.0 337500.0 114000.0 335550.0 ; + RECT 108000.0 336150.0 109200.0 337950.0 ; + RECT 108000.0 326850.0 109200.0 323250.0 ; + RECT 110700.0 336150.0 111600.0 326850.0 ; + RECT 108000.0 326850.0 109200.0 325650.0 ; + RECT 110400.0 326850.0 111600.0 325650.0 ; + RECT 110400.0 326850.0 111600.0 325650.0 ; + RECT 108000.0 326850.0 109200.0 325650.0 ; + RECT 108000.0 336150.0 109200.0 334950.0 ; + RECT 110400.0 336150.0 111600.0 334950.0 ; + RECT 110400.0 336150.0 111600.0 334950.0 ; + RECT 108000.0 336150.0 109200.0 334950.0 ; + RECT 112800.0 326250.0 114000.0 325050.0 ; + RECT 112800.0 336150.0 114000.0 334950.0 ; + RECT 108600.0 331500.0 109800.0 330300.0 ; + RECT 108600.0 331500.0 109800.0 330300.0 ; + RECT 111150.0 331350.0 112050.0 330450.0 ; + RECT 106200.0 324150.0 115800.0 323250.0 ; + RECT 106200.0 337950.0 115800.0 337050.0 ; + RECT 117600.0 335550.0 118800.0 337950.0 ; + RECT 117600.0 326850.0 118800.0 323250.0 ; + RECT 122400.0 326850.0 123600.0 323250.0 ; + RECT 124800.0 325650.0 126000.0 323700.0 ; + RECT 124800.0 337500.0 126000.0 335550.0 ; + RECT 117600.0 326850.0 118800.0 325650.0 ; + RECT 120000.0 326850.0 121200.0 325650.0 ; + RECT 120000.0 326850.0 121200.0 325650.0 ; + RECT 117600.0 326850.0 118800.0 325650.0 ; + RECT 120000.0 326850.0 121200.0 325650.0 ; + RECT 122400.0 326850.0 123600.0 325650.0 ; + RECT 122400.0 326850.0 123600.0 325650.0 ; + RECT 120000.0 326850.0 121200.0 325650.0 ; + RECT 117600.0 335550.0 118800.0 334350.0 ; + RECT 120000.0 335550.0 121200.0 334350.0 ; + RECT 120000.0 335550.0 121200.0 334350.0 ; + RECT 117600.0 335550.0 118800.0 334350.0 ; + RECT 120000.0 335550.0 121200.0 334350.0 ; + RECT 122400.0 335550.0 123600.0 334350.0 ; + RECT 122400.0 335550.0 123600.0 334350.0 ; + RECT 120000.0 335550.0 121200.0 334350.0 ; + RECT 124800.0 326250.0 126000.0 325050.0 ; + RECT 124800.0 336150.0 126000.0 334950.0 ; + RECT 122400.0 333000.0 121200.0 331800.0 ; + RECT 119400.0 330300.0 118200.0 329100.0 ; + RECT 120000.0 326850.0 121200.0 325650.0 ; + RECT 122400.0 335550.0 123600.0 334350.0 ; + RECT 123600.0 330300.0 122400.0 329100.0 ; + RECT 118200.0 330300.0 119400.0 329100.0 ; + RECT 121200.0 333000.0 122400.0 331800.0 ; + RECT 122400.0 330300.0 123600.0 329100.0 ; + RECT 115800.0 324150.0 130200.0 323250.0 ; + RECT 115800.0 337950.0 130200.0 337050.0 ; + RECT 136800.0 325650.0 138000.0 323700.0 ; + RECT 136800.0 337500.0 138000.0 335550.0 ; + RECT 132000.0 336150.0 133200.0 337950.0 ; + RECT 132000.0 326850.0 133200.0 323250.0 ; + RECT 134700.0 336150.0 135600.0 326850.0 ; + RECT 132000.0 326850.0 133200.0 325650.0 ; + RECT 134400.0 326850.0 135600.0 325650.0 ; + RECT 134400.0 326850.0 135600.0 325650.0 ; + RECT 132000.0 326850.0 133200.0 325650.0 ; + RECT 132000.0 336150.0 133200.0 334950.0 ; + RECT 134400.0 336150.0 135600.0 334950.0 ; + RECT 134400.0 336150.0 135600.0 334950.0 ; + RECT 132000.0 336150.0 133200.0 334950.0 ; + RECT 136800.0 326250.0 138000.0 325050.0 ; + RECT 136800.0 336150.0 138000.0 334950.0 ; + RECT 132600.0 331500.0 133800.0 330300.0 ; + RECT 132600.0 331500.0 133800.0 330300.0 ; + RECT 135150.0 331350.0 136050.0 330450.0 ; + RECT 130200.0 324150.0 139800.0 323250.0 ; + RECT 130200.0 337950.0 139800.0 337050.0 ; + RECT 102450.0 330300.0 103650.0 331500.0 ; + RECT 104400.0 332700.0 105600.0 333900.0 ; + RECT 121200.0 331800.0 120000.0 333000.0 ; + RECT 112800.0 349350.0 114000.0 351300.0 ; + RECT 112800.0 337500.0 114000.0 339450.0 ; + RECT 108000.0 338850.0 109200.0 337050.0 ; + RECT 108000.0 348150.0 109200.0 351750.0 ; + RECT 110700.0 338850.0 111600.0 348150.0 ; + RECT 108000.0 348150.0 109200.0 349350.0 ; + RECT 110400.0 348150.0 111600.0 349350.0 ; + RECT 110400.0 348150.0 111600.0 349350.0 ; + RECT 108000.0 348150.0 109200.0 349350.0 ; + RECT 108000.0 338850.0 109200.0 340050.0 ; + RECT 110400.0 338850.0 111600.0 340050.0 ; + RECT 110400.0 338850.0 111600.0 340050.0 ; + RECT 108000.0 338850.0 109200.0 340050.0 ; + RECT 112800.0 348750.0 114000.0 349950.0 ; + RECT 112800.0 338850.0 114000.0 340050.0 ; + RECT 108600.0 343500.0 109800.0 344700.0 ; + RECT 108600.0 343500.0 109800.0 344700.0 ; + RECT 111150.0 343650.0 112050.0 344550.0 ; + RECT 106200.0 350850.0 115800.0 351750.0 ; + RECT 106200.0 337050.0 115800.0 337950.0 ; + RECT 117600.0 339450.0 118800.0 337050.0 ; + RECT 117600.0 348150.0 118800.0 351750.0 ; + RECT 122400.0 348150.0 123600.0 351750.0 ; + RECT 124800.0 349350.0 126000.0 351300.0 ; + RECT 124800.0 337500.0 126000.0 339450.0 ; + RECT 117600.0 348150.0 118800.0 349350.0 ; + RECT 120000.0 348150.0 121200.0 349350.0 ; + RECT 120000.0 348150.0 121200.0 349350.0 ; + RECT 117600.0 348150.0 118800.0 349350.0 ; + RECT 120000.0 348150.0 121200.0 349350.0 ; + RECT 122400.0 348150.0 123600.0 349350.0 ; + RECT 122400.0 348150.0 123600.0 349350.0 ; + RECT 120000.0 348150.0 121200.0 349350.0 ; + RECT 117600.0 339450.0 118800.0 340650.0 ; + RECT 120000.0 339450.0 121200.0 340650.0 ; + RECT 120000.0 339450.0 121200.0 340650.0 ; + RECT 117600.0 339450.0 118800.0 340650.0 ; + RECT 120000.0 339450.0 121200.0 340650.0 ; + RECT 122400.0 339450.0 123600.0 340650.0 ; + RECT 122400.0 339450.0 123600.0 340650.0 ; + RECT 120000.0 339450.0 121200.0 340650.0 ; + RECT 124800.0 348750.0 126000.0 349950.0 ; + RECT 124800.0 338850.0 126000.0 340050.0 ; + RECT 122400.0 342000.0 121200.0 343200.0 ; + RECT 119400.0 344700.0 118200.0 345900.0 ; + RECT 120000.0 348150.0 121200.0 349350.0 ; + RECT 122400.0 339450.0 123600.0 340650.0 ; + RECT 123600.0 344700.0 122400.0 345900.0 ; + RECT 118200.0 344700.0 119400.0 345900.0 ; + RECT 121200.0 342000.0 122400.0 343200.0 ; + RECT 122400.0 344700.0 123600.0 345900.0 ; + RECT 115800.0 350850.0 130200.0 351750.0 ; + RECT 115800.0 337050.0 130200.0 337950.0 ; + RECT 136800.0 349350.0 138000.0 351300.0 ; + RECT 136800.0 337500.0 138000.0 339450.0 ; + RECT 132000.0 338850.0 133200.0 337050.0 ; + RECT 132000.0 348150.0 133200.0 351750.0 ; + RECT 134700.0 338850.0 135600.0 348150.0 ; + RECT 132000.0 348150.0 133200.0 349350.0 ; + RECT 134400.0 348150.0 135600.0 349350.0 ; + RECT 134400.0 348150.0 135600.0 349350.0 ; + RECT 132000.0 348150.0 133200.0 349350.0 ; + RECT 132000.0 338850.0 133200.0 340050.0 ; + RECT 134400.0 338850.0 135600.0 340050.0 ; + RECT 134400.0 338850.0 135600.0 340050.0 ; + RECT 132000.0 338850.0 133200.0 340050.0 ; + RECT 136800.0 348750.0 138000.0 349950.0 ; + RECT 136800.0 338850.0 138000.0 340050.0 ; + RECT 132600.0 343500.0 133800.0 344700.0 ; + RECT 132600.0 343500.0 133800.0 344700.0 ; + RECT 135150.0 343650.0 136050.0 344550.0 ; + RECT 130200.0 350850.0 139800.0 351750.0 ; + RECT 130200.0 337050.0 139800.0 337950.0 ; + RECT 102450.0 343500.0 103650.0 344700.0 ; + RECT 104400.0 341100.0 105600.0 342300.0 ; + RECT 121200.0 342000.0 120000.0 343200.0 ; + RECT 112800.0 353250.0 114000.0 351300.0 ; + RECT 112800.0 365100.0 114000.0 363150.0 ; + RECT 108000.0 363750.0 109200.0 365550.0 ; + RECT 108000.0 354450.0 109200.0 350850.0 ; + RECT 110700.0 363750.0 111600.0 354450.0 ; + RECT 108000.0 354450.0 109200.0 353250.0 ; + RECT 110400.0 354450.0 111600.0 353250.0 ; + RECT 110400.0 354450.0 111600.0 353250.0 ; + RECT 108000.0 354450.0 109200.0 353250.0 ; + RECT 108000.0 363750.0 109200.0 362550.0 ; + RECT 110400.0 363750.0 111600.0 362550.0 ; + RECT 110400.0 363750.0 111600.0 362550.0 ; + RECT 108000.0 363750.0 109200.0 362550.0 ; + RECT 112800.0 353850.0 114000.0 352650.0 ; + RECT 112800.0 363750.0 114000.0 362550.0 ; + RECT 108600.0 359100.0 109800.0 357900.0 ; + RECT 108600.0 359100.0 109800.0 357900.0 ; + RECT 111150.0 358950.0 112050.0 358050.0 ; + RECT 106200.0 351750.0 115800.0 350850.0 ; + RECT 106200.0 365550.0 115800.0 364650.0 ; + RECT 117600.0 363150.0 118800.0 365550.0 ; + RECT 117600.0 354450.0 118800.0 350850.0 ; + RECT 122400.0 354450.0 123600.0 350850.0 ; + RECT 124800.0 353250.0 126000.0 351300.0 ; + RECT 124800.0 365100.0 126000.0 363150.0 ; + RECT 117600.0 354450.0 118800.0 353250.0 ; + RECT 120000.0 354450.0 121200.0 353250.0 ; + RECT 120000.0 354450.0 121200.0 353250.0 ; + RECT 117600.0 354450.0 118800.0 353250.0 ; + RECT 120000.0 354450.0 121200.0 353250.0 ; + RECT 122400.0 354450.0 123600.0 353250.0 ; + RECT 122400.0 354450.0 123600.0 353250.0 ; + RECT 120000.0 354450.0 121200.0 353250.0 ; + RECT 117600.0 363150.0 118800.0 361950.0 ; + RECT 120000.0 363150.0 121200.0 361950.0 ; + RECT 120000.0 363150.0 121200.0 361950.0 ; + RECT 117600.0 363150.0 118800.0 361950.0 ; + RECT 120000.0 363150.0 121200.0 361950.0 ; + RECT 122400.0 363150.0 123600.0 361950.0 ; + RECT 122400.0 363150.0 123600.0 361950.0 ; + RECT 120000.0 363150.0 121200.0 361950.0 ; + RECT 124800.0 353850.0 126000.0 352650.0 ; + RECT 124800.0 363750.0 126000.0 362550.0 ; + RECT 122400.0 360600.0 121200.0 359400.0 ; + RECT 119400.0 357900.0 118200.0 356700.0 ; + RECT 120000.0 354450.0 121200.0 353250.0 ; + RECT 122400.0 363150.0 123600.0 361950.0 ; + RECT 123600.0 357900.0 122400.0 356700.0 ; + RECT 118200.0 357900.0 119400.0 356700.0 ; + RECT 121200.0 360600.0 122400.0 359400.0 ; + RECT 122400.0 357900.0 123600.0 356700.0 ; + RECT 115800.0 351750.0 130200.0 350850.0 ; + RECT 115800.0 365550.0 130200.0 364650.0 ; + RECT 136800.0 353250.0 138000.0 351300.0 ; + RECT 136800.0 365100.0 138000.0 363150.0 ; + RECT 132000.0 363750.0 133200.0 365550.0 ; + RECT 132000.0 354450.0 133200.0 350850.0 ; + RECT 134700.0 363750.0 135600.0 354450.0 ; + RECT 132000.0 354450.0 133200.0 353250.0 ; + RECT 134400.0 354450.0 135600.0 353250.0 ; + RECT 134400.0 354450.0 135600.0 353250.0 ; + RECT 132000.0 354450.0 133200.0 353250.0 ; + RECT 132000.0 363750.0 133200.0 362550.0 ; + RECT 134400.0 363750.0 135600.0 362550.0 ; + RECT 134400.0 363750.0 135600.0 362550.0 ; + RECT 132000.0 363750.0 133200.0 362550.0 ; + RECT 136800.0 353850.0 138000.0 352650.0 ; + RECT 136800.0 363750.0 138000.0 362550.0 ; + RECT 132600.0 359100.0 133800.0 357900.0 ; + RECT 132600.0 359100.0 133800.0 357900.0 ; + RECT 135150.0 358950.0 136050.0 358050.0 ; + RECT 130200.0 351750.0 139800.0 350850.0 ; + RECT 130200.0 365550.0 139800.0 364650.0 ; + RECT 102450.0 357900.0 103650.0 359100.0 ; + RECT 104400.0 360300.0 105600.0 361500.0 ; + RECT 121200.0 359400.0 120000.0 360600.0 ; + RECT 112800.0 376950.0 114000.0 378900.0 ; + RECT 112800.0 365100.0 114000.0 367050.0 ; + RECT 108000.0 366450.0 109200.0 364650.0 ; + RECT 108000.0 375750.0 109200.0 379350.0 ; + RECT 110700.0 366450.0 111600.0 375750.0 ; + RECT 108000.0 375750.0 109200.0 376950.0 ; + RECT 110400.0 375750.0 111600.0 376950.0 ; + RECT 110400.0 375750.0 111600.0 376950.0 ; + RECT 108000.0 375750.0 109200.0 376950.0 ; + RECT 108000.0 366450.0 109200.0 367650.0 ; + RECT 110400.0 366450.0 111600.0 367650.0 ; + RECT 110400.0 366450.0 111600.0 367650.0 ; + RECT 108000.0 366450.0 109200.0 367650.0 ; + RECT 112800.0 376350.0 114000.0 377550.0 ; + RECT 112800.0 366450.0 114000.0 367650.0 ; + RECT 108600.0 371100.0 109800.0 372300.0 ; + RECT 108600.0 371100.0 109800.0 372300.0 ; + RECT 111150.0 371250.0 112050.0 372150.0 ; + RECT 106200.0 378450.0 115800.0 379350.0 ; + RECT 106200.0 364650.0 115800.0 365550.0 ; + RECT 117600.0 367050.0 118800.0 364650.0 ; + RECT 117600.0 375750.0 118800.0 379350.0 ; + RECT 122400.0 375750.0 123600.0 379350.0 ; + RECT 124800.0 376950.0 126000.0 378900.0 ; + RECT 124800.0 365100.0 126000.0 367050.0 ; + RECT 117600.0 375750.0 118800.0 376950.0 ; + RECT 120000.0 375750.0 121200.0 376950.0 ; + RECT 120000.0 375750.0 121200.0 376950.0 ; + RECT 117600.0 375750.0 118800.0 376950.0 ; + RECT 120000.0 375750.0 121200.0 376950.0 ; + RECT 122400.0 375750.0 123600.0 376950.0 ; + RECT 122400.0 375750.0 123600.0 376950.0 ; + RECT 120000.0 375750.0 121200.0 376950.0 ; + RECT 117600.0 367050.0 118800.0 368250.0 ; + RECT 120000.0 367050.0 121200.0 368250.0 ; + RECT 120000.0 367050.0 121200.0 368250.0 ; + RECT 117600.0 367050.0 118800.0 368250.0 ; + RECT 120000.0 367050.0 121200.0 368250.0 ; + RECT 122400.0 367050.0 123600.0 368250.0 ; + RECT 122400.0 367050.0 123600.0 368250.0 ; + RECT 120000.0 367050.0 121200.0 368250.0 ; + RECT 124800.0 376350.0 126000.0 377550.0 ; + RECT 124800.0 366450.0 126000.0 367650.0 ; + RECT 122400.0 369600.0 121200.0 370800.0 ; + RECT 119400.0 372300.0 118200.0 373500.0 ; + RECT 120000.0 375750.0 121200.0 376950.0 ; + RECT 122400.0 367050.0 123600.0 368250.0 ; + RECT 123600.0 372300.0 122400.0 373500.0 ; + RECT 118200.0 372300.0 119400.0 373500.0 ; + RECT 121200.0 369600.0 122400.0 370800.0 ; + RECT 122400.0 372300.0 123600.0 373500.0 ; + RECT 115800.0 378450.0 130200.0 379350.0 ; + RECT 115800.0 364650.0 130200.0 365550.0 ; + RECT 136800.0 376950.0 138000.0 378900.0 ; + RECT 136800.0 365100.0 138000.0 367050.0 ; + RECT 132000.0 366450.0 133200.0 364650.0 ; + RECT 132000.0 375750.0 133200.0 379350.0 ; + RECT 134700.0 366450.0 135600.0 375750.0 ; + RECT 132000.0 375750.0 133200.0 376950.0 ; + RECT 134400.0 375750.0 135600.0 376950.0 ; + RECT 134400.0 375750.0 135600.0 376950.0 ; + RECT 132000.0 375750.0 133200.0 376950.0 ; + RECT 132000.0 366450.0 133200.0 367650.0 ; + RECT 134400.0 366450.0 135600.0 367650.0 ; + RECT 134400.0 366450.0 135600.0 367650.0 ; + RECT 132000.0 366450.0 133200.0 367650.0 ; + RECT 136800.0 376350.0 138000.0 377550.0 ; + RECT 136800.0 366450.0 138000.0 367650.0 ; + RECT 132600.0 371100.0 133800.0 372300.0 ; + RECT 132600.0 371100.0 133800.0 372300.0 ; + RECT 135150.0 371250.0 136050.0 372150.0 ; + RECT 130200.0 378450.0 139800.0 379350.0 ; + RECT 130200.0 364650.0 139800.0 365550.0 ; + RECT 102450.0 371100.0 103650.0 372300.0 ; + RECT 104400.0 368700.0 105600.0 369900.0 ; + RECT 121200.0 369600.0 120000.0 370800.0 ; + RECT 112800.0 380850.0 114000.0 378900.0 ; + RECT 112800.0 392700.0 114000.0 390750.0 ; + RECT 108000.0 391350.0 109200.0 393150.0 ; + RECT 108000.0 382050.0 109200.0 378450.0 ; + RECT 110700.0 391350.0 111600.0 382050.0 ; + RECT 108000.0 382050.0 109200.0 380850.0 ; + RECT 110400.0 382050.0 111600.0 380850.0 ; + RECT 110400.0 382050.0 111600.0 380850.0 ; + RECT 108000.0 382050.0 109200.0 380850.0 ; + RECT 108000.0 391350.0 109200.0 390150.0 ; + RECT 110400.0 391350.0 111600.0 390150.0 ; + RECT 110400.0 391350.0 111600.0 390150.0 ; + RECT 108000.0 391350.0 109200.0 390150.0 ; + RECT 112800.0 381450.0 114000.0 380250.0 ; + RECT 112800.0 391350.0 114000.0 390150.0 ; + RECT 108600.0 386700.0 109800.0 385500.0 ; + RECT 108600.0 386700.0 109800.0 385500.0 ; + RECT 111150.0 386550.0 112050.0 385650.0 ; + RECT 106200.0 379350.0 115800.0 378450.0 ; + RECT 106200.0 393150.0 115800.0 392250.0 ; + RECT 117600.0 390750.0 118800.0 393150.0 ; + RECT 117600.0 382050.0 118800.0 378450.0 ; + RECT 122400.0 382050.0 123600.0 378450.0 ; + RECT 124800.0 380850.0 126000.0 378900.0 ; + RECT 124800.0 392700.0 126000.0 390750.0 ; + RECT 117600.0 382050.0 118800.0 380850.0 ; + RECT 120000.0 382050.0 121200.0 380850.0 ; + RECT 120000.0 382050.0 121200.0 380850.0 ; + RECT 117600.0 382050.0 118800.0 380850.0 ; + RECT 120000.0 382050.0 121200.0 380850.0 ; + RECT 122400.0 382050.0 123600.0 380850.0 ; + RECT 122400.0 382050.0 123600.0 380850.0 ; + RECT 120000.0 382050.0 121200.0 380850.0 ; + RECT 117600.0 390750.0 118800.0 389550.0 ; + RECT 120000.0 390750.0 121200.0 389550.0 ; + RECT 120000.0 390750.0 121200.0 389550.0 ; + RECT 117600.0 390750.0 118800.0 389550.0 ; + RECT 120000.0 390750.0 121200.0 389550.0 ; + RECT 122400.0 390750.0 123600.0 389550.0 ; + RECT 122400.0 390750.0 123600.0 389550.0 ; + RECT 120000.0 390750.0 121200.0 389550.0 ; + RECT 124800.0 381450.0 126000.0 380250.0 ; + RECT 124800.0 391350.0 126000.0 390150.0 ; + RECT 122400.0 388200.0 121200.0 387000.0 ; + RECT 119400.0 385500.0 118200.0 384300.0 ; + RECT 120000.0 382050.0 121200.0 380850.0 ; + RECT 122400.0 390750.0 123600.0 389550.0 ; + RECT 123600.0 385500.0 122400.0 384300.0 ; + RECT 118200.0 385500.0 119400.0 384300.0 ; + RECT 121200.0 388200.0 122400.0 387000.0 ; + RECT 122400.0 385500.0 123600.0 384300.0 ; + RECT 115800.0 379350.0 130200.0 378450.0 ; + RECT 115800.0 393150.0 130200.0 392250.0 ; + RECT 136800.0 380850.0 138000.0 378900.0 ; + RECT 136800.0 392700.0 138000.0 390750.0 ; + RECT 132000.0 391350.0 133200.0 393150.0 ; + RECT 132000.0 382050.0 133200.0 378450.0 ; + RECT 134700.0 391350.0 135600.0 382050.0 ; + RECT 132000.0 382050.0 133200.0 380850.0 ; + RECT 134400.0 382050.0 135600.0 380850.0 ; + RECT 134400.0 382050.0 135600.0 380850.0 ; + RECT 132000.0 382050.0 133200.0 380850.0 ; + RECT 132000.0 391350.0 133200.0 390150.0 ; + RECT 134400.0 391350.0 135600.0 390150.0 ; + RECT 134400.0 391350.0 135600.0 390150.0 ; + RECT 132000.0 391350.0 133200.0 390150.0 ; + RECT 136800.0 381450.0 138000.0 380250.0 ; + RECT 136800.0 391350.0 138000.0 390150.0 ; + RECT 132600.0 386700.0 133800.0 385500.0 ; + RECT 132600.0 386700.0 133800.0 385500.0 ; + RECT 135150.0 386550.0 136050.0 385650.0 ; + RECT 130200.0 379350.0 139800.0 378450.0 ; + RECT 130200.0 393150.0 139800.0 392250.0 ; + RECT 102450.0 385500.0 103650.0 386700.0 ; + RECT 104400.0 387900.0 105600.0 389100.0 ; + RECT 121200.0 387000.0 120000.0 388200.0 ; + RECT 112800.0 404550.0 114000.0 406500.0 ; + RECT 112800.0 392700.0 114000.0 394650.0 ; + RECT 108000.0 394050.0 109200.0 392250.0 ; + RECT 108000.0 403350.0 109200.0 406950.0 ; + RECT 110700.0 394050.0 111600.0 403350.0 ; + RECT 108000.0 403350.0 109200.0 404550.0 ; + RECT 110400.0 403350.0 111600.0 404550.0 ; + RECT 110400.0 403350.0 111600.0 404550.0 ; + RECT 108000.0 403350.0 109200.0 404550.0 ; + RECT 108000.0 394050.0 109200.0 395250.0 ; + RECT 110400.0 394050.0 111600.0 395250.0 ; + RECT 110400.0 394050.0 111600.0 395250.0 ; + RECT 108000.0 394050.0 109200.0 395250.0 ; + RECT 112800.0 403950.0 114000.0 405150.0 ; + RECT 112800.0 394050.0 114000.0 395250.0 ; + RECT 108600.0 398700.0 109800.0 399900.0 ; + RECT 108600.0 398700.0 109800.0 399900.0 ; + RECT 111150.0 398850.0 112050.0 399750.0 ; + RECT 106200.0 406050.0 115800.0 406950.0 ; + RECT 106200.0 392250.0 115800.0 393150.0 ; + RECT 117600.0 394650.0 118800.0 392250.0 ; + RECT 117600.0 403350.0 118800.0 406950.0 ; + RECT 122400.0 403350.0 123600.0 406950.0 ; + RECT 124800.0 404550.0 126000.0 406500.0 ; + RECT 124800.0 392700.0 126000.0 394650.0 ; + RECT 117600.0 403350.0 118800.0 404550.0 ; + RECT 120000.0 403350.0 121200.0 404550.0 ; + RECT 120000.0 403350.0 121200.0 404550.0 ; + RECT 117600.0 403350.0 118800.0 404550.0 ; + RECT 120000.0 403350.0 121200.0 404550.0 ; + RECT 122400.0 403350.0 123600.0 404550.0 ; + RECT 122400.0 403350.0 123600.0 404550.0 ; + RECT 120000.0 403350.0 121200.0 404550.0 ; + RECT 117600.0 394650.0 118800.0 395850.0 ; + RECT 120000.0 394650.0 121200.0 395850.0 ; + RECT 120000.0 394650.0 121200.0 395850.0 ; + RECT 117600.0 394650.0 118800.0 395850.0 ; + RECT 120000.0 394650.0 121200.0 395850.0 ; + RECT 122400.0 394650.0 123600.0 395850.0 ; + RECT 122400.0 394650.0 123600.0 395850.0 ; + RECT 120000.0 394650.0 121200.0 395850.0 ; + RECT 124800.0 403950.0 126000.0 405150.0 ; + RECT 124800.0 394050.0 126000.0 395250.0 ; + RECT 122400.0 397200.0 121200.0 398400.0 ; + RECT 119400.0 399900.0 118200.0 401100.0 ; + RECT 120000.0 403350.0 121200.0 404550.0 ; + RECT 122400.0 394650.0 123600.0 395850.0 ; + RECT 123600.0 399900.0 122400.0 401100.0 ; + RECT 118200.0 399900.0 119400.0 401100.0 ; + RECT 121200.0 397200.0 122400.0 398400.0 ; + RECT 122400.0 399900.0 123600.0 401100.0 ; + RECT 115800.0 406050.0 130200.0 406950.0 ; + RECT 115800.0 392250.0 130200.0 393150.0 ; + RECT 136800.0 404550.0 138000.0 406500.0 ; + RECT 136800.0 392700.0 138000.0 394650.0 ; + RECT 132000.0 394050.0 133200.0 392250.0 ; + RECT 132000.0 403350.0 133200.0 406950.0 ; + RECT 134700.0 394050.0 135600.0 403350.0 ; + RECT 132000.0 403350.0 133200.0 404550.0 ; + RECT 134400.0 403350.0 135600.0 404550.0 ; + RECT 134400.0 403350.0 135600.0 404550.0 ; + RECT 132000.0 403350.0 133200.0 404550.0 ; + RECT 132000.0 394050.0 133200.0 395250.0 ; + RECT 134400.0 394050.0 135600.0 395250.0 ; + RECT 134400.0 394050.0 135600.0 395250.0 ; + RECT 132000.0 394050.0 133200.0 395250.0 ; + RECT 136800.0 403950.0 138000.0 405150.0 ; + RECT 136800.0 394050.0 138000.0 395250.0 ; + RECT 132600.0 398700.0 133800.0 399900.0 ; + RECT 132600.0 398700.0 133800.0 399900.0 ; + RECT 135150.0 398850.0 136050.0 399750.0 ; + RECT 130200.0 406050.0 139800.0 406950.0 ; + RECT 130200.0 392250.0 139800.0 393150.0 ; + RECT 102450.0 398700.0 103650.0 399900.0 ; + RECT 104400.0 396300.0 105600.0 397500.0 ; + RECT 121200.0 397200.0 120000.0 398400.0 ; + RECT 112800.0 408450.0 114000.0 406500.0 ; + RECT 112800.0 420300.0 114000.0 418350.0 ; + RECT 108000.0 418950.0 109200.0 420750.0 ; + RECT 108000.0 409650.0 109200.0 406050.0 ; + RECT 110700.0 418950.0 111600.0 409650.0 ; + RECT 108000.0 409650.0 109200.0 408450.0 ; + RECT 110400.0 409650.0 111600.0 408450.0 ; + RECT 110400.0 409650.0 111600.0 408450.0 ; + RECT 108000.0 409650.0 109200.0 408450.0 ; + RECT 108000.0 418950.0 109200.0 417750.0 ; + RECT 110400.0 418950.0 111600.0 417750.0 ; + RECT 110400.0 418950.0 111600.0 417750.0 ; + RECT 108000.0 418950.0 109200.0 417750.0 ; + RECT 112800.0 409050.0 114000.0 407850.0 ; + RECT 112800.0 418950.0 114000.0 417750.0 ; + RECT 108600.0 414300.0 109800.0 413100.0 ; + RECT 108600.0 414300.0 109800.0 413100.0 ; + RECT 111150.0 414150.0 112050.0 413250.0 ; + RECT 106200.0 406950.0 115800.0 406050.0 ; + RECT 106200.0 420750.0 115800.0 419850.0 ; + RECT 117600.0 418350.0 118800.0 420750.0 ; + RECT 117600.0 409650.0 118800.0 406050.0 ; + RECT 122400.0 409650.0 123600.0 406050.0 ; + RECT 124800.0 408450.0 126000.0 406500.0 ; + RECT 124800.0 420300.0 126000.0 418350.0 ; + RECT 117600.0 409650.0 118800.0 408450.0 ; + RECT 120000.0 409650.0 121200.0 408450.0 ; + RECT 120000.0 409650.0 121200.0 408450.0 ; + RECT 117600.0 409650.0 118800.0 408450.0 ; + RECT 120000.0 409650.0 121200.0 408450.0 ; + RECT 122400.0 409650.0 123600.0 408450.0 ; + RECT 122400.0 409650.0 123600.0 408450.0 ; + RECT 120000.0 409650.0 121200.0 408450.0 ; + RECT 117600.0 418350.0 118800.0 417150.0 ; + RECT 120000.0 418350.0 121200.0 417150.0 ; + RECT 120000.0 418350.0 121200.0 417150.0 ; + RECT 117600.0 418350.0 118800.0 417150.0 ; + RECT 120000.0 418350.0 121200.0 417150.0 ; + RECT 122400.0 418350.0 123600.0 417150.0 ; + RECT 122400.0 418350.0 123600.0 417150.0 ; + RECT 120000.0 418350.0 121200.0 417150.0 ; + RECT 124800.0 409050.0 126000.0 407850.0 ; + RECT 124800.0 418950.0 126000.0 417750.0 ; + RECT 122400.0 415800.0 121200.0 414600.0 ; + RECT 119400.0 413100.0 118200.0 411900.0 ; + RECT 120000.0 409650.0 121200.0 408450.0 ; + RECT 122400.0 418350.0 123600.0 417150.0 ; + RECT 123600.0 413100.0 122400.0 411900.0 ; + RECT 118200.0 413100.0 119400.0 411900.0 ; + RECT 121200.0 415800.0 122400.0 414600.0 ; + RECT 122400.0 413100.0 123600.0 411900.0 ; + RECT 115800.0 406950.0 130200.0 406050.0 ; + RECT 115800.0 420750.0 130200.0 419850.0 ; + RECT 136800.0 408450.0 138000.0 406500.0 ; + RECT 136800.0 420300.0 138000.0 418350.0 ; + RECT 132000.0 418950.0 133200.0 420750.0 ; + RECT 132000.0 409650.0 133200.0 406050.0 ; + RECT 134700.0 418950.0 135600.0 409650.0 ; + RECT 132000.0 409650.0 133200.0 408450.0 ; + RECT 134400.0 409650.0 135600.0 408450.0 ; + RECT 134400.0 409650.0 135600.0 408450.0 ; + RECT 132000.0 409650.0 133200.0 408450.0 ; + RECT 132000.0 418950.0 133200.0 417750.0 ; + RECT 134400.0 418950.0 135600.0 417750.0 ; + RECT 134400.0 418950.0 135600.0 417750.0 ; + RECT 132000.0 418950.0 133200.0 417750.0 ; + RECT 136800.0 409050.0 138000.0 407850.0 ; + RECT 136800.0 418950.0 138000.0 417750.0 ; + RECT 132600.0 414300.0 133800.0 413100.0 ; + RECT 132600.0 414300.0 133800.0 413100.0 ; + RECT 135150.0 414150.0 136050.0 413250.0 ; + RECT 130200.0 406950.0 139800.0 406050.0 ; + RECT 130200.0 420750.0 139800.0 419850.0 ; + RECT 102450.0 413100.0 103650.0 414300.0 ; + RECT 104400.0 415500.0 105600.0 416700.0 ; + RECT 121200.0 414600.0 120000.0 415800.0 ; + RECT 99900.0 203250.0 105000.0 204150.0 ; + RECT 99900.0 222450.0 105000.0 223350.0 ; + RECT 99900.0 230850.0 105000.0 231750.0 ; + RECT 99900.0 250050.0 105000.0 250950.0 ; + RECT 99900.0 258450.0 105000.0 259350.0 ; + RECT 99900.0 277650.0 105000.0 278550.0 ; + RECT 99900.0 286050.0 105000.0 286950.0 ; + RECT 99900.0 305250.0 105000.0 306150.0 ; + RECT 99900.0 313650.0 105000.0 314550.0 ; + RECT 99900.0 332850.0 105000.0 333750.0 ; + RECT 99900.0 341250.0 105000.0 342150.0 ; + RECT 99900.0 360450.0 105000.0 361350.0 ; + RECT 99900.0 368850.0 105000.0 369750.0 ; + RECT 99900.0 388050.0 105000.0 388950.0 ; + RECT 99900.0 396450.0 105000.0 397350.0 ; + RECT 99900.0 415650.0 105000.0 416550.0 ; + RECT 135150.0 205650.0 136050.0 206550.0 ; + RECT 135150.0 220050.0 136050.0 220950.0 ; + RECT 135150.0 233250.0 136050.0 234150.0 ; + RECT 135150.0 247650.0 136050.0 248550.0 ; + RECT 135150.0 260850.0 136050.0 261750.0 ; + RECT 135150.0 275250.0 136050.0 276150.0 ; + RECT 135150.0 288450.0 136050.0 289350.0 ; + RECT 135150.0 302850.0 136050.0 303750.0 ; + RECT 135150.0 316050.0 136050.0 316950.0 ; + RECT 135150.0 330450.0 136050.0 331350.0 ; + RECT 135150.0 343650.0 136050.0 344550.0 ; + RECT 135150.0 358050.0 136050.0 358950.0 ; + RECT 135150.0 371250.0 136050.0 372150.0 ; + RECT 135150.0 385650.0 136050.0 386550.0 ; + RECT 135150.0 398850.0 136050.0 399750.0 ; + RECT 135150.0 413250.0 136050.0 414150.0 ; + RECT 99900.0 212850.0 106200.0 213750.0 ; + RECT 99900.0 240450.0 106200.0 241350.0 ; + RECT 99900.0 268050.0 106200.0 268950.0 ; + RECT 99900.0 295650.0 106200.0 296550.0 ; + RECT 99900.0 323250.0 106200.0 324150.0 ; + RECT 99900.0 350850.0 106200.0 351750.0 ; + RECT 99900.0 378450.0 106200.0 379350.0 ; + RECT 99900.0 406050.0 106200.0 406950.0 ; + RECT 99900.0 199050.0 106200.0 199950.0 ; + RECT 99900.0 226650.0 106200.0 227550.0 ; + RECT 99900.0 254250.0 106200.0 255150.0 ; + RECT 99900.0 281850.0 106200.0 282750.0 ; + RECT 99900.0 309450.0 106200.0 310350.0 ; + RECT 99900.0 337050.0 106200.0 337950.0 ; + RECT 99900.0 364650.0 106200.0 365550.0 ; + RECT 99900.0 392250.0 106200.0 393150.0 ; + RECT 99900.0 419850.0 106200.0 420750.0 ; + RECT 59100.0 83700.0 119100.0 73500.0 ; + RECT 59100.0 63300.0 119100.0 73500.0 ; + RECT 59100.0 63300.0 119100.0 53100.0 ; + RECT 59100.0 42900.0 119100.0 53100.0 ; + RECT 61500.0 83700.0 62400.0 42900.0 ; + RECT 115500.0 83700.0 116400.0 42900.0 ; + RECT 148050.0 200100.0 149250.0 198900.0 ; + RECT 148050.0 227700.0 149250.0 226500.0 ; + RECT 148050.0 255300.0 149250.0 254100.0 ; + RECT 148050.0 282900.0 149250.0 281700.0 ; + RECT 148050.0 310500.0 149250.0 309300.0 ; + RECT 148050.0 338100.0 149250.0 336900.0 ; + RECT 148050.0 365700.0 149250.0 364500.0 ; + RECT 148050.0 393300.0 149250.0 392100.0 ; + RECT 148050.0 420900.0 149250.0 419700.0 ; + RECT 130500.0 91350.0 129300.0 92550.0 ; + RECT 135600.0 91200.0 134400.0 92400.0 ; + RECT 127500.0 105150.0 126300.0 106350.0 ; + RECT 138300.0 105000.0 137100.0 106200.0 ; + RECT 130500.0 146550.0 129300.0 147750.0 ; + RECT 141000.0 146400.0 139800.0 147600.0 ; + RECT 127500.0 160350.0 126300.0 161550.0 ; + RECT 143700.0 160200.0 142500.0 161400.0 ; + RECT 132600.0 88500.0 131400.0 89700.0 ; + RECT 132600.0 116100.0 131400.0 117300.0 ; + RECT 132600.0 143700.0 131400.0 144900.0 ; + RECT 132600.0 171300.0 131400.0 172500.0 ; + RECT 118500.0 77250.0 117300.0 78450.0 ; + RECT 135600.0 77250.0 134400.0 78450.0 ; + RECT 118500.0 68550.0 117300.0 69750.0 ; + RECT 138300.0 68550.0 137100.0 69750.0 ; + RECT 118500.0 56850.0 117300.0 58050.0 ; + RECT 141000.0 56850.0 139800.0 58050.0 ; + RECT 118500.0 48150.0 117300.0 49350.0 ; + RECT 143700.0 48150.0 142500.0 49350.0 ; + RECT 120300.0 72900.0 119100.0 74100.0 ; + RECT 149250.0 73050.0 148050.0 74250.0 ; + RECT 120300.0 52500.0 119100.0 53700.0 ; + RECT 149250.0 52650.0 148050.0 53850.0 ; RECT 164400.0 32250.0 163200.0 33450.0 ; RECT 159000.0 27750.0 157800.0 28950.0 ; RECT 161700.0 25350.0 160500.0 26550.0 ; - RECT 164400.0 424650.0 163200.0 425850.0 ; - RECT 167100.0 96750.0 165900.0 97950.0 ; - RECT 169800.0 194850.0 168600.0 196050.0 ; - RECT 156300.0 84900.0 155100.0 86100.0 ; - RECT 103650.0 421500.0 102450.0 422700.0 ; - RECT 156300.0 421500.0 155100.0 422700.0 ; + RECT 164400.0 428550.0 163200.0 429750.0 ; + RECT 167100.0 97050.0 165900.0 98250.0 ; + RECT 169800.0 195150.0 168600.0 196350.0 ; + RECT 156300.0 85200.0 155100.0 86400.0 ; + RECT 103650.0 421800.0 102450.0 423000.0 ; + RECT 156300.0 421800.0 155100.0 423000.0 ; RECT 152550.0 23400.0 151350.0 24600.0 ; - RECT 152550.0 192900.0 151350.0 194100.0 ; - RECT 152550.0 94800.0 151350.0 96000.0 ; - RECT 198600.0 0.0 203100.0 436800.0 ; - RECT 52800.0 0.0 57300.0 436800.0 ; - RECT 43650.0 207600.0 42750.0 217200.0 ; - RECT 43800.0 223800.0 42900.0 224700.0 ; - RECT 43350.0 223800.0 43200.0 224700.0 ; - RECT 43800.0 224250.0 42900.0 231600.0 ; - RECT 43800.0 243450.0 42900.0 250800.0 ; - RECT 35550.0 258600.0 30600.0 259500.0 ; - RECT 43650.0 207150.0 42750.0 208050.0 ; - RECT 43650.0 223800.0 42750.0 224700.0 ; - RECT 29250.0 362100.0 28350.0 375450.0 ; - RECT 43800.0 272700.0 42900.0 284850.0 ; - RECT 33300.0 204600.0 30600.0 205500.0 ; - RECT 29700.0 284850.0 28800.0 311700.0 ; - RECT 27000.0 290250.0 26100.0 314700.0 ; - RECT 41700.0 303750.0 40800.0 312300.0 ; - RECT 43650.0 301050.0 42750.0 314700.0 ; - RECT 45600.0 292950.0 44700.0 317100.0 ; - RECT 41700.0 326850.0 40800.0 327750.0 ; - RECT 41700.0 318300.0 40800.0 327300.0 ; - RECT 43200.0 326850.0 41250.0 327750.0 ; - RECT 43800.0 329250.0 42900.0 330150.0 ; - RECT 43350.0 329250.0 43200.0 330150.0 ; - RECT 43800.0 329700.0 42900.0 387300.0 ; - RECT 14100.0 303750.0 13200.0 321900.0 ; - RECT 16050.0 292950.0 15150.0 324300.0 ; - RECT 18000.0 295650.0 17100.0 326700.0 ; - RECT 14100.0 336450.0 13200.0 337350.0 ; - RECT 14100.0 327900.0 13200.0 336900.0 ; - RECT 15600.0 336450.0 13650.0 337350.0 ; - RECT 16050.0 339300.0 15150.0 346500.0 ; - RECT 16050.0 348900.0 15150.0 356100.0 ; - RECT 29250.0 361650.0 28350.0 362550.0 ; - RECT 28800.0 361650.0 28350.0 362550.0 ; - RECT 29250.0 359700.0 28350.0 362100.0 ; - RECT 29250.0 349500.0 28350.0 356700.0 ; - RECT 29700.0 316800.0 28800.0 323100.0 ; - RECT 30450.0 333000.0 29550.0 340200.0 ; - RECT 16050.0 358500.0 15150.0 362700.0 ; - RECT 29250.0 342900.0 28350.0 347100.0 ; - RECT 50250.0 202200.0 49350.0 362100.0 ; - RECT 50250.0 287550.0 49350.0 308700.0 ; - RECT 36450.0 202200.0 35550.0 362100.0 ; - RECT 36450.0 298350.0 35550.0 308700.0 ; - RECT 22650.0 308700.0 21750.0 362100.0 ; - RECT 22650.0 287550.0 21750.0 308700.0 ; - RECT 8850.0 308700.0 7950.0 362100.0 ; - RECT 8850.0 298350.0 7950.0 308700.0 ; - RECT 8850.0 361650.0 7950.0 362550.0 ; - RECT 8850.0 360000.0 7950.0 362100.0 ; - RECT 8400.0 361650.0 3600.0 362550.0 ; - RECT 7.1054273576e-12 202200.0 10200.0 262200.0 ; - RECT 20400.0 202200.0 10200.0 262200.0 ; - RECT 20400.0 202200.0 30600.0 262200.0 ; - RECT 7.1054273576e-12 204600.0 30600.0 205500.0 ; - RECT 1.42108547152e-11 258600.0 30600.0 259500.0 ; - RECT 37950.0 211200.0 36000.0 212400.0 ; - RECT 49800.0 211200.0 47850.0 212400.0 ; - RECT 48450.0 206700.0 39150.0 207600.0 ; - RECT 38550.0 204150.0 36600.0 205050.0 ; - RECT 38550.0 208950.0 36600.0 209850.0 ; - RECT 39150.0 204000.0 37950.0 205200.0 ; - RECT 39150.0 208800.0 37950.0 210000.0 ; - RECT 39150.0 206400.0 37950.0 207600.0 ; - RECT 39150.0 206400.0 37950.0 207600.0 ; - RECT 37050.0 204150.0 36150.0 209850.0 ; - RECT 49800.0 204150.0 47850.0 205050.0 ; - RECT 49800.0 208950.0 47850.0 209850.0 ; - RECT 48450.0 204000.0 47250.0 205200.0 ; - RECT 48450.0 208800.0 47250.0 210000.0 ; - RECT 48450.0 206400.0 47250.0 207600.0 ; - RECT 48450.0 206400.0 47250.0 207600.0 ; - RECT 50250.0 204150.0 49350.0 209850.0 ; - RECT 38550.0 211200.0 37350.0 212400.0 ; - RECT 48450.0 211200.0 47250.0 212400.0 ; - RECT 43800.0 204600.0 42600.0 205800.0 ; - RECT 43800.0 204600.0 42600.0 205800.0 ; - RECT 43650.0 207150.0 42750.0 208050.0 ; - RECT 36450.0 202200.0 35550.0 214200.0 ; - RECT 50250.0 202200.0 49350.0 214200.0 ; - RECT 37950.0 225600.0 36000.0 226800.0 ; - RECT 49800.0 225600.0 47850.0 226800.0 ; - RECT 37350.0 216150.0 35550.0 221850.0 ; - RECT 46050.0 223350.0 41250.0 224250.0 ; - RECT 38850.0 216150.0 36900.0 217050.0 ; - RECT 38850.0 220950.0 36900.0 221850.0 ; - RECT 40800.0 218550.0 38850.0 219450.0 ; - RECT 40800.0 223350.0 38850.0 224250.0 ; - RECT 39450.0 216000.0 38250.0 217200.0 ; - RECT 39450.0 220800.0 38250.0 222000.0 ; - RECT 39450.0 218400.0 38250.0 219600.0 ; - RECT 39450.0 223200.0 38250.0 224400.0 ; - RECT 41250.0 218550.0 40350.0 224250.0 ; - RECT 37350.0 216150.0 36450.0 221850.0 ; - RECT 49500.0 216150.0 47550.0 217050.0 ; - RECT 49500.0 220950.0 47550.0 221850.0 ; - RECT 47550.0 218550.0 45600.0 219450.0 ; - RECT 47550.0 223350.0 45600.0 224250.0 ; - RECT 48150.0 216000.0 46950.0 217200.0 ; - RECT 48150.0 220800.0 46950.0 222000.0 ; - RECT 48150.0 218400.0 46950.0 219600.0 ; - RECT 48150.0 223200.0 46950.0 224400.0 ; - RECT 46050.0 218550.0 45150.0 224250.0 ; - RECT 49950.0 216150.0 49050.0 221850.0 ; - RECT 38550.0 225600.0 37350.0 226800.0 ; - RECT 48450.0 225600.0 47250.0 226800.0 ; - RECT 43800.0 216600.0 42600.0 217800.0 ; - RECT 43800.0 216600.0 42600.0 217800.0 ; - RECT 43650.0 223800.0 42750.0 224700.0 ; - RECT 36450.0 214200.0 35550.0 228600.0 ; - RECT 50250.0 214200.0 49350.0 228600.0 ; - RECT 37950.0 244800.0 36000.0 246000.0 ; - RECT 49800.0 244800.0 47850.0 246000.0 ; - RECT 37800.0 230550.0 35550.0 241050.0 ; - RECT 45900.0 242550.0 41700.0 243450.0 ; - RECT 39300.0 230550.0 37350.0 231450.0 ; - RECT 39300.0 235350.0 37350.0 236250.0 ; - RECT 39300.0 240150.0 37350.0 241050.0 ; - RECT 41250.0 232950.0 39300.0 233850.0 ; - RECT 41250.0 237750.0 39300.0 238650.0 ; - RECT 41250.0 242550.0 39300.0 243450.0 ; - RECT 39900.0 230400.0 38700.0 231600.0 ; - RECT 39900.0 235200.0 38700.0 236400.0 ; - RECT 39900.0 240000.0 38700.0 241200.0 ; - RECT 39900.0 232800.0 38700.0 234000.0 ; - RECT 39900.0 237600.0 38700.0 238800.0 ; - RECT 39900.0 242400.0 38700.0 243600.0 ; - RECT 41700.0 232950.0 40800.0 243450.0 ; - RECT 37800.0 230550.0 36900.0 241050.0 ; - RECT 49350.0 230550.0 47400.0 231450.0 ; - RECT 49350.0 235350.0 47400.0 236250.0 ; - RECT 49350.0 240150.0 47400.0 241050.0 ; - RECT 47400.0 232950.0 45450.0 233850.0 ; - RECT 47400.0 237750.0 45450.0 238650.0 ; - RECT 47400.0 242550.0 45450.0 243450.0 ; - RECT 48000.0 230400.0 46800.0 231600.0 ; - RECT 48000.0 235200.0 46800.0 236400.0 ; - RECT 48000.0 240000.0 46800.0 241200.0 ; - RECT 48000.0 232800.0 46800.0 234000.0 ; - RECT 48000.0 237600.0 46800.0 238800.0 ; - RECT 48000.0 242400.0 46800.0 243600.0 ; - RECT 45900.0 232950.0 45000.0 243450.0 ; - RECT 49800.0 230550.0 48900.0 241050.0 ; - RECT 38550.0 244800.0 37350.0 246000.0 ; - RECT 48450.0 244800.0 47250.0 246000.0 ; - RECT 43950.0 231000.0 42750.0 232200.0 ; - RECT 43950.0 231000.0 42750.0 232200.0 ; - RECT 43800.0 243000.0 42900.0 243900.0 ; - RECT 36450.0 228600.0 35550.0 247800.0 ; - RECT 50250.0 228600.0 49350.0 247800.0 ; - RECT 37950.0 276000.0 36000.0 277200.0 ; - RECT 49800.0 276000.0 47850.0 277200.0 ; - RECT 37800.0 249750.0 35550.0 274650.0 ; - RECT 45900.0 271350.0 41700.0 272250.0 ; - RECT 39300.0 249750.0 37350.0 250650.0 ; - RECT 39300.0 254550.0 37350.0 255450.0 ; - RECT 39300.0 259350.0 37350.0 260250.0 ; - RECT 39300.0 264150.0 37350.0 265050.0 ; - RECT 39300.0 268950.0 37350.0 269850.0 ; - RECT 39300.0 273750.0 37350.0 274650.0 ; - RECT 41250.0 252150.0 39300.0 253050.0 ; - RECT 41250.0 256950.0 39300.0 257850.0 ; - RECT 41250.0 261750.0 39300.0 262650.0 ; - RECT 41250.0 266550.0 39300.0 267450.0 ; - RECT 41250.0 271350.0 39300.0 272250.0 ; - RECT 39900.0 249600.0 38700.0 250800.0 ; - RECT 39900.0 254400.0 38700.0 255600.0 ; - RECT 39900.0 259200.0 38700.0 260400.0 ; - RECT 39900.0 264000.0 38700.0 265200.0 ; - RECT 39900.0 268800.0 38700.0 270000.0 ; - RECT 39900.0 273600.0 38700.0 274800.0 ; - RECT 39900.0 252000.0 38700.0 253200.0 ; - RECT 39900.0 256800.0 38700.0 258000.0 ; - RECT 39900.0 261600.0 38700.0 262800.0 ; - RECT 39900.0 266400.0 38700.0 267600.0 ; - RECT 39900.0 271200.0 38700.0 272400.0 ; - RECT 41700.0 252150.0 40800.0 272250.0 ; - RECT 37800.0 249750.0 36900.0 274650.0 ; - RECT 49350.0 249750.0 47400.0 250650.0 ; - RECT 49350.0 254550.0 47400.0 255450.0 ; - RECT 49350.0 259350.0 47400.0 260250.0 ; - RECT 49350.0 264150.0 47400.0 265050.0 ; - RECT 49350.0 268950.0 47400.0 269850.0 ; - RECT 49350.0 273750.0 47400.0 274650.0 ; - RECT 47400.0 252150.0 45450.0 253050.0 ; - RECT 47400.0 256950.0 45450.0 257850.0 ; - RECT 47400.0 261750.0 45450.0 262650.0 ; - RECT 47400.0 266550.0 45450.0 267450.0 ; - RECT 47400.0 271350.0 45450.0 272250.0 ; - RECT 48000.0 249600.0 46800.0 250800.0 ; - RECT 48000.0 254400.0 46800.0 255600.0 ; - RECT 48000.0 259200.0 46800.0 260400.0 ; - RECT 48000.0 264000.0 46800.0 265200.0 ; - RECT 48000.0 268800.0 46800.0 270000.0 ; - RECT 48000.0 273600.0 46800.0 274800.0 ; - RECT 48000.0 252000.0 46800.0 253200.0 ; - RECT 48000.0 256800.0 46800.0 258000.0 ; - RECT 48000.0 261600.0 46800.0 262800.0 ; - RECT 48000.0 266400.0 46800.0 267600.0 ; - RECT 48000.0 271200.0 46800.0 272400.0 ; - RECT 45900.0 252150.0 45000.0 272250.0 ; - RECT 49800.0 249750.0 48900.0 274650.0 ; - RECT 38550.0 276000.0 37350.0 277200.0 ; - RECT 48450.0 276000.0 47250.0 277200.0 ; - RECT 43950.0 250200.0 42750.0 251400.0 ; - RECT 43950.0 250200.0 42750.0 251400.0 ; - RECT 43800.0 271800.0 42900.0 272700.0 ; - RECT 36450.0 247800.0 35550.0 279000.0 ; - RECT 50250.0 247800.0 49350.0 279000.0 ; - RECT 47850.0 310500.0 50250.0 311700.0 ; - RECT 39150.0 310500.0 35550.0 311700.0 ; - RECT 39150.0 315300.0 35550.0 316500.0 ; - RECT 37950.0 320100.0 36000.0 321300.0 ; - RECT 49800.0 320100.0 47850.0 321300.0 ; - RECT 39150.0 310500.0 37950.0 311700.0 ; - RECT 39150.0 312900.0 37950.0 314100.0 ; - RECT 39150.0 312900.0 37950.0 314100.0 ; - RECT 39150.0 310500.0 37950.0 311700.0 ; - RECT 39150.0 312900.0 37950.0 314100.0 ; - RECT 39150.0 315300.0 37950.0 316500.0 ; - RECT 39150.0 315300.0 37950.0 316500.0 ; - RECT 39150.0 312900.0 37950.0 314100.0 ; - RECT 39150.0 315300.0 37950.0 316500.0 ; - RECT 39150.0 317700.0 37950.0 318900.0 ; - RECT 39150.0 317700.0 37950.0 318900.0 ; - RECT 39150.0 315300.0 37950.0 316500.0 ; - RECT 47850.0 310500.0 46650.0 311700.0 ; - RECT 47850.0 312900.0 46650.0 314100.0 ; - RECT 47850.0 312900.0 46650.0 314100.0 ; - RECT 47850.0 310500.0 46650.0 311700.0 ; - RECT 47850.0 312900.0 46650.0 314100.0 ; - RECT 47850.0 315300.0 46650.0 316500.0 ; - RECT 47850.0 315300.0 46650.0 316500.0 ; - RECT 47850.0 312900.0 46650.0 314100.0 ; - RECT 47850.0 315300.0 46650.0 316500.0 ; - RECT 47850.0 317700.0 46650.0 318900.0 ; - RECT 47850.0 317700.0 46650.0 318900.0 ; - RECT 47850.0 315300.0 46650.0 316500.0 ; - RECT 38550.0 320100.0 37350.0 321300.0 ; - RECT 48450.0 320100.0 47250.0 321300.0 ; - RECT 45750.0 317700.0 44550.0 316500.0 ; - RECT 43800.0 315300.0 42600.0 314100.0 ; - RECT 41850.0 312900.0 40650.0 311700.0 ; - RECT 39150.0 312900.0 37950.0 314100.0 ; - RECT 39150.0 317700.0 37950.0 318900.0 ; - RECT 47850.0 317700.0 46650.0 318900.0 ; - RECT 41850.0 317700.0 40650.0 318900.0 ; - RECT 41850.0 311700.0 40650.0 312900.0 ; - RECT 43800.0 314100.0 42600.0 315300.0 ; - RECT 45750.0 316500.0 44550.0 317700.0 ; - RECT 41850.0 317700.0 40650.0 318900.0 ; - RECT 36450.0 308700.0 35550.0 324300.0 ; - RECT 50250.0 308700.0 49350.0 324300.0 ; - RECT 37950.0 330900.0 36000.0 332100.0 ; - RECT 49800.0 330900.0 47850.0 332100.0 ; - RECT 48450.0 326100.0 50250.0 327300.0 ; - RECT 39150.0 326100.0 35550.0 327300.0 ; - RECT 48450.0 328800.0 39150.0 329700.0 ; - RECT 39150.0 326100.0 37950.0 327300.0 ; - RECT 39150.0 328500.0 37950.0 329700.0 ; - RECT 39150.0 328500.0 37950.0 329700.0 ; - RECT 39150.0 326100.0 37950.0 327300.0 ; - RECT 48450.0 326100.0 47250.0 327300.0 ; - RECT 48450.0 328500.0 47250.0 329700.0 ; - RECT 48450.0 328500.0 47250.0 329700.0 ; - RECT 48450.0 326100.0 47250.0 327300.0 ; - RECT 38550.0 330900.0 37350.0 332100.0 ; - RECT 48450.0 330900.0 47250.0 332100.0 ; - RECT 43800.0 326700.0 42600.0 327900.0 ; - RECT 43800.0 326700.0 42600.0 327900.0 ; - RECT 43650.0 329250.0 42750.0 330150.0 ; - RECT 36450.0 324300.0 35550.0 333900.0 ; - RECT 50250.0 324300.0 49350.0 333900.0 ; - RECT 23550.0 310500.0 21750.0 311700.0 ; - RECT 23550.0 315300.0 21750.0 316500.0 ; - RECT 32250.0 310500.0 36450.0 311700.0 ; - RECT 34050.0 317700.0 36000.0 318900.0 ; - RECT 22200.0 317700.0 24150.0 318900.0 ; - RECT 32250.0 310500.0 33450.0 311700.0 ; - RECT 32250.0 312900.0 33450.0 314100.0 ; - RECT 32250.0 312900.0 33450.0 314100.0 ; - RECT 32250.0 310500.0 33450.0 311700.0 ; - RECT 32250.0 312900.0 33450.0 314100.0 ; - RECT 32250.0 315300.0 33450.0 316500.0 ; - RECT 32250.0 315300.0 33450.0 316500.0 ; - RECT 32250.0 312900.0 33450.0 314100.0 ; - RECT 23550.0 310500.0 24750.0 311700.0 ; - RECT 23550.0 312900.0 24750.0 314100.0 ; - RECT 23550.0 312900.0 24750.0 314100.0 ; - RECT 23550.0 310500.0 24750.0 311700.0 ; - RECT 23550.0 312900.0 24750.0 314100.0 ; - RECT 23550.0 315300.0 24750.0 316500.0 ; - RECT 23550.0 315300.0 24750.0 316500.0 ; - RECT 23550.0 312900.0 24750.0 314100.0 ; - RECT 33450.0 317700.0 34650.0 318900.0 ; - RECT 23550.0 317700.0 24750.0 318900.0 ; - RECT 25950.0 315300.0 27150.0 314100.0 ; - RECT 28650.0 312300.0 29850.0 311100.0 ; - RECT 32250.0 315300.0 33450.0 316500.0 ; - RECT 23550.0 314100.0 24750.0 312900.0 ; - RECT 28650.0 317400.0 29850.0 316200.0 ; - RECT 28650.0 311100.0 29850.0 312300.0 ; - RECT 25950.0 314100.0 27150.0 315300.0 ; - RECT 28650.0 316200.0 29850.0 317400.0 ; - RECT 35550.0 308700.0 36450.0 323100.0 ; - RECT 21750.0 308700.0 22650.0 323100.0 ; - RECT 24150.0 327600.0 21750.0 328800.0 ; - RECT 32850.0 327600.0 36450.0 328800.0 ; - RECT 32850.0 332400.0 36450.0 333600.0 ; - RECT 34050.0 334800.0 36000.0 336000.0 ; - RECT 22200.0 334800.0 24150.0 336000.0 ; - RECT 32850.0 327600.0 34050.0 328800.0 ; - RECT 32850.0 330000.0 34050.0 331200.0 ; - RECT 32850.0 330000.0 34050.0 331200.0 ; - RECT 32850.0 327600.0 34050.0 328800.0 ; - RECT 32850.0 330000.0 34050.0 331200.0 ; - RECT 32850.0 332400.0 34050.0 333600.0 ; - RECT 32850.0 332400.0 34050.0 333600.0 ; - RECT 32850.0 330000.0 34050.0 331200.0 ; - RECT 24150.0 327600.0 25350.0 328800.0 ; - RECT 24150.0 330000.0 25350.0 331200.0 ; - RECT 24150.0 330000.0 25350.0 331200.0 ; - RECT 24150.0 327600.0 25350.0 328800.0 ; - RECT 24150.0 330000.0 25350.0 331200.0 ; - RECT 24150.0 332400.0 25350.0 333600.0 ; - RECT 24150.0 332400.0 25350.0 333600.0 ; - RECT 24150.0 330000.0 25350.0 331200.0 ; - RECT 33450.0 334800.0 34650.0 336000.0 ; - RECT 23550.0 334800.0 24750.0 336000.0 ; - RECT 26700.0 332400.0 27900.0 331200.0 ; - RECT 29400.0 329400.0 30600.0 328200.0 ; - RECT 32850.0 330000.0 34050.0 331200.0 ; - RECT 24150.0 332400.0 25350.0 333600.0 ; - RECT 29400.0 333600.0 30600.0 332400.0 ; - RECT 29400.0 328200.0 30600.0 329400.0 ; - RECT 26700.0 331200.0 27900.0 332400.0 ; - RECT 29400.0 332400.0 30600.0 333600.0 ; - RECT 35550.0 325800.0 36450.0 340200.0 ; - RECT 21750.0 325800.0 22650.0 340200.0 ; - RECT 34050.0 345900.0 36000.0 344700.0 ; - RECT 22200.0 345900.0 24150.0 344700.0 ; - RECT 23550.0 350700.0 21750.0 349500.0 ; - RECT 32850.0 350700.0 36450.0 349500.0 ; - RECT 23550.0 348000.0 32850.0 347100.0 ; - RECT 32850.0 350700.0 34050.0 349500.0 ; - RECT 32850.0 348300.0 34050.0 347100.0 ; - RECT 32850.0 348300.0 34050.0 347100.0 ; - RECT 32850.0 350700.0 34050.0 349500.0 ; - RECT 23550.0 350700.0 24750.0 349500.0 ; - RECT 23550.0 348300.0 24750.0 347100.0 ; - RECT 23550.0 348300.0 24750.0 347100.0 ; - RECT 23550.0 350700.0 24750.0 349500.0 ; - RECT 33450.0 345900.0 34650.0 344700.0 ; - RECT 23550.0 345900.0 24750.0 344700.0 ; - RECT 28200.0 350100.0 29400.0 348900.0 ; - RECT 28200.0 350100.0 29400.0 348900.0 ; - RECT 28350.0 347550.0 29250.0 346650.0 ; - RECT 35550.0 352500.0 36450.0 342900.0 ; - RECT 21750.0 352500.0 22650.0 342900.0 ; - RECT 34050.0 355500.0 36000.0 354300.0 ; - RECT 22200.0 355500.0 24150.0 354300.0 ; - RECT 23550.0 360300.0 21750.0 359100.0 ; - RECT 32850.0 360300.0 36450.0 359100.0 ; - RECT 23550.0 357600.0 32850.0 356700.0 ; - RECT 32850.0 360300.0 34050.0 359100.0 ; - RECT 32850.0 357900.0 34050.0 356700.0 ; - RECT 32850.0 357900.0 34050.0 356700.0 ; - RECT 32850.0 360300.0 34050.0 359100.0 ; - RECT 23550.0 360300.0 24750.0 359100.0 ; - RECT 23550.0 357900.0 24750.0 356700.0 ; - RECT 23550.0 357900.0 24750.0 356700.0 ; - RECT 23550.0 360300.0 24750.0 359100.0 ; - RECT 33450.0 355500.0 34650.0 354300.0 ; - RECT 23550.0 355500.0 24750.0 354300.0 ; - RECT 28200.0 359700.0 29400.0 358500.0 ; - RECT 28200.0 359700.0 29400.0 358500.0 ; - RECT 28350.0 357150.0 29250.0 356250.0 ; - RECT 35550.0 362100.0 36450.0 352500.0 ; - RECT 21750.0 362100.0 22650.0 352500.0 ; - RECT 20250.0 320100.0 22650.0 321300.0 ; - RECT 11550.0 320100.0 7950.0 321300.0 ; - RECT 11550.0 324900.0 7950.0 326100.0 ; - RECT 10350.0 329700.0 8400.0 330900.0 ; - RECT 22200.0 329700.0 20250.0 330900.0 ; - RECT 11550.0 320100.0 10350.0 321300.0 ; - RECT 11550.0 322500.0 10350.0 323700.0 ; - RECT 11550.0 322500.0 10350.0 323700.0 ; - RECT 11550.0 320100.0 10350.0 321300.0 ; - RECT 11550.0 322500.0 10350.0 323700.0 ; - RECT 11550.0 324900.0 10350.0 326100.0 ; - RECT 11550.0 324900.0 10350.0 326100.0 ; - RECT 11550.0 322500.0 10350.0 323700.0 ; - RECT 11550.0 324900.0 10350.0 326100.0 ; - RECT 11550.0 327300.0 10350.0 328500.0 ; - RECT 11550.0 327300.0 10350.0 328500.0 ; - RECT 11550.0 324900.0 10350.0 326100.0 ; - RECT 20250.0 320100.0 19050.0 321300.0 ; - RECT 20250.0 322500.0 19050.0 323700.0 ; - RECT 20250.0 322500.0 19050.0 323700.0 ; - RECT 20250.0 320100.0 19050.0 321300.0 ; - RECT 20250.0 322500.0 19050.0 323700.0 ; - RECT 20250.0 324900.0 19050.0 326100.0 ; - RECT 20250.0 324900.0 19050.0 326100.0 ; - RECT 20250.0 322500.0 19050.0 323700.0 ; - RECT 20250.0 324900.0 19050.0 326100.0 ; - RECT 20250.0 327300.0 19050.0 328500.0 ; - RECT 20250.0 327300.0 19050.0 328500.0 ; - RECT 20250.0 324900.0 19050.0 326100.0 ; - RECT 10950.0 329700.0 9750.0 330900.0 ; - RECT 20850.0 329700.0 19650.0 330900.0 ; - RECT 18150.0 327300.0 16950.0 326100.0 ; - RECT 16200.0 324900.0 15000.0 323700.0 ; - RECT 14250.0 322500.0 13050.0 321300.0 ; - RECT 11550.0 322500.0 10350.0 323700.0 ; - RECT 11550.0 327300.0 10350.0 328500.0 ; - RECT 20250.0 327300.0 19050.0 328500.0 ; - RECT 14250.0 327300.0 13050.0 328500.0 ; - RECT 14250.0 321300.0 13050.0 322500.0 ; - RECT 16200.0 323700.0 15000.0 324900.0 ; - RECT 18150.0 326100.0 16950.0 327300.0 ; - RECT 14250.0 327300.0 13050.0 328500.0 ; - RECT 8850.0 318300.0 7950.0 333900.0 ; - RECT 22650.0 318300.0 21750.0 333900.0 ; - RECT 10350.0 340500.0 8400.0 341700.0 ; - RECT 22200.0 340500.0 20250.0 341700.0 ; - RECT 20850.0 335700.0 22650.0 336900.0 ; - RECT 11550.0 335700.0 7950.0 336900.0 ; - RECT 20850.0 338400.0 11550.0 339300.0 ; - RECT 11550.0 335700.0 10350.0 336900.0 ; - RECT 11550.0 338100.0 10350.0 339300.0 ; - RECT 11550.0 338100.0 10350.0 339300.0 ; - RECT 11550.0 335700.0 10350.0 336900.0 ; - RECT 20850.0 335700.0 19650.0 336900.0 ; - RECT 20850.0 338100.0 19650.0 339300.0 ; - RECT 20850.0 338100.0 19650.0 339300.0 ; - RECT 20850.0 335700.0 19650.0 336900.0 ; - RECT 10950.0 340500.0 9750.0 341700.0 ; - RECT 20850.0 340500.0 19650.0 341700.0 ; - RECT 16200.0 336300.0 15000.0 337500.0 ; - RECT 16200.0 336300.0 15000.0 337500.0 ; - RECT 16050.0 338850.0 15150.0 339750.0 ; - RECT 8850.0 333900.0 7950.0 343500.0 ; - RECT 22650.0 333900.0 21750.0 343500.0 ; - RECT 10350.0 350100.0 8400.0 351300.0 ; - RECT 22200.0 350100.0 20250.0 351300.0 ; - RECT 20850.0 345300.0 22650.0 346500.0 ; - RECT 11550.0 345300.0 7950.0 346500.0 ; - RECT 20850.0 348000.0 11550.0 348900.0 ; - RECT 11550.0 345300.0 10350.0 346500.0 ; - RECT 11550.0 347700.0 10350.0 348900.0 ; - RECT 11550.0 347700.0 10350.0 348900.0 ; - RECT 11550.0 345300.0 10350.0 346500.0 ; - RECT 20850.0 345300.0 19650.0 346500.0 ; - RECT 20850.0 347700.0 19650.0 348900.0 ; - RECT 20850.0 347700.0 19650.0 348900.0 ; - RECT 20850.0 345300.0 19650.0 346500.0 ; - RECT 10950.0 350100.0 9750.0 351300.0 ; - RECT 20850.0 350100.0 19650.0 351300.0 ; - RECT 16200.0 345900.0 15000.0 347100.0 ; - RECT 16200.0 345900.0 15000.0 347100.0 ; - RECT 16050.0 348450.0 15150.0 349350.0 ; - RECT 8850.0 343500.0 7950.0 353100.0 ; - RECT 22650.0 343500.0 21750.0 353100.0 ; - RECT 10350.0 359700.0 8400.0 360900.0 ; - RECT 22200.0 359700.0 20250.0 360900.0 ; - RECT 20850.0 354900.0 22650.0 356100.0 ; - RECT 11550.0 354900.0 7950.0 356100.0 ; - RECT 20850.0 357600.0 11550.0 358500.0 ; - RECT 11550.0 354900.0 10350.0 356100.0 ; - RECT 11550.0 357300.0 10350.0 358500.0 ; - RECT 11550.0 357300.0 10350.0 358500.0 ; - RECT 11550.0 354900.0 10350.0 356100.0 ; - RECT 20850.0 354900.0 19650.0 356100.0 ; - RECT 20850.0 357300.0 19650.0 358500.0 ; - RECT 20850.0 357300.0 19650.0 358500.0 ; - RECT 20850.0 354900.0 19650.0 356100.0 ; - RECT 10950.0 359700.0 9750.0 360900.0 ; - RECT 20850.0 359700.0 19650.0 360900.0 ; - RECT 16200.0 355500.0 15000.0 356700.0 ; - RECT 16200.0 355500.0 15000.0 356700.0 ; - RECT 16050.0 358050.0 15150.0 358950.0 ; - RECT 8850.0 353100.0 7950.0 362700.0 ; - RECT 22650.0 353100.0 21750.0 362700.0 ; - RECT 22650.0 396600.0 16800.0 397500.0 ; - RECT 22650.0 420000.0 16800.0 420900.0 ; - RECT 22200.0 425550.0 16800.0 426450.0 ; - RECT 4500.0 408300.0 16800.0 409200.0 ; - RECT 4500.0 380700.0 16800.0 381600.0 ; - RECT 29250.0 397500.0 28350.0 410100.0 ; - RECT 29250.0 392550.0 28350.0 393450.0 ; - RECT 29250.0 393000.0 28350.0 397500.0 ; - RECT 28800.0 392550.0 17400.0 393450.0 ; - RECT 36000.0 398250.0 33750.0 399150.0 ; - RECT 33600.0 383550.0 32700.0 384450.0 ; - RECT 29250.0 383550.0 28350.0 384450.0 ; - RECT 33600.0 384000.0 32700.0 395700.0 ; - RECT 33150.0 383550.0 28800.0 384450.0 ; - RECT 29250.0 378900.0 28350.0 384000.0 ; - RECT 28800.0 383550.0 19950.0 384450.0 ; - RECT 19950.0 375450.0 13200.0 376350.0 ; - RECT 29400.0 377700.0 28200.0 378900.0 ; - RECT 29250.0 410100.0 28350.0 413850.0 ; - RECT 34050.0 374700.0 36000.0 373500.0 ; - RECT 22200.0 374700.0 24150.0 373500.0 ; - RECT 23550.0 379500.0 21750.0 378300.0 ; - RECT 32850.0 379500.0 36450.0 378300.0 ; - RECT 23550.0 376800.0 32850.0 375900.0 ; - RECT 32850.0 379500.0 34050.0 378300.0 ; - RECT 32850.0 377100.0 34050.0 375900.0 ; - RECT 32850.0 377100.0 34050.0 375900.0 ; - RECT 32850.0 379500.0 34050.0 378300.0 ; - RECT 23550.0 379500.0 24750.0 378300.0 ; - RECT 23550.0 377100.0 24750.0 375900.0 ; - RECT 23550.0 377100.0 24750.0 375900.0 ; - RECT 23550.0 379500.0 24750.0 378300.0 ; - RECT 33450.0 374700.0 34650.0 373500.0 ; - RECT 23550.0 374700.0 24750.0 373500.0 ; - RECT 28200.0 378900.0 29400.0 377700.0 ; - RECT 28200.0 378900.0 29400.0 377700.0 ; - RECT 28350.0 376350.0 29250.0 375450.0 ; - RECT 35550.0 381300.0 36450.0 371700.0 ; - RECT 21750.0 381300.0 22650.0 371700.0 ; - RECT 32550.0 395700.0 33750.0 396900.0 ; - RECT 32550.0 398100.0 33750.0 399300.0 ; - RECT 32550.0 398100.0 33750.0 399300.0 ; - RECT 32550.0 395700.0 33750.0 396900.0 ; - RECT 21750.0 430650.0 22650.0 431550.0 ; - RECT 49350.0 430650.0 50250.0 431550.0 ; - RECT 21750.0 429300.0 22650.0 431100.0 ; - RECT 22200.0 430650.0 49800.0 431550.0 ; - RECT 49350.0 429300.0 50250.0 431100.0 ; - RECT 37950.0 416700.0 36000.0 417900.0 ; - RECT 49800.0 416700.0 47850.0 417900.0 ; - RECT 48450.0 411900.0 50250.0 413100.0 ; - RECT 39150.0 411900.0 35550.0 413100.0 ; - RECT 48450.0 414600.0 39150.0 415500.0 ; - RECT 39150.0 411900.0 37950.0 413100.0 ; - RECT 39150.0 414300.0 37950.0 415500.0 ; - RECT 39150.0 414300.0 37950.0 415500.0 ; - RECT 39150.0 411900.0 37950.0 413100.0 ; - RECT 48450.0 411900.0 47250.0 413100.0 ; - RECT 48450.0 414300.0 47250.0 415500.0 ; - RECT 48450.0 414300.0 47250.0 415500.0 ; - RECT 48450.0 411900.0 47250.0 413100.0 ; - RECT 38550.0 416700.0 37350.0 417900.0 ; - RECT 48450.0 416700.0 47250.0 417900.0 ; - RECT 43800.0 412500.0 42600.0 413700.0 ; - RECT 43800.0 412500.0 42600.0 413700.0 ; - RECT 43650.0 415050.0 42750.0 415950.0 ; - RECT 36450.0 410100.0 35550.0 419700.0 ; - RECT 50250.0 410100.0 49350.0 419700.0 ; - RECT 37950.0 426300.0 36000.0 427500.0 ; - RECT 49800.0 426300.0 47850.0 427500.0 ; - RECT 48450.0 421500.0 50250.0 422700.0 ; - RECT 39150.0 421500.0 35550.0 422700.0 ; - RECT 48450.0 424200.0 39150.0 425100.0 ; - RECT 39150.0 421500.0 37950.0 422700.0 ; - RECT 39150.0 423900.0 37950.0 425100.0 ; - RECT 39150.0 423900.0 37950.0 425100.0 ; - RECT 39150.0 421500.0 37950.0 422700.0 ; - RECT 48450.0 421500.0 47250.0 422700.0 ; - RECT 48450.0 423900.0 47250.0 425100.0 ; - RECT 48450.0 423900.0 47250.0 425100.0 ; - RECT 48450.0 421500.0 47250.0 422700.0 ; - RECT 38550.0 426300.0 37350.0 427500.0 ; - RECT 48450.0 426300.0 47250.0 427500.0 ; - RECT 43800.0 422100.0 42600.0 423300.0 ; - RECT 43800.0 422100.0 42600.0 423300.0 ; - RECT 43650.0 424650.0 42750.0 425550.0 ; - RECT 36450.0 419700.0 35550.0 429300.0 ; - RECT 50250.0 419700.0 49350.0 429300.0 ; - RECT 42600.0 422100.0 43800.0 423300.0 ; - RECT 34050.0 422700.0 36000.0 421500.0 ; - RECT 22200.0 422700.0 24150.0 421500.0 ; - RECT 23550.0 427500.0 21750.0 426300.0 ; - RECT 32850.0 427500.0 36450.0 426300.0 ; - RECT 23550.0 424800.0 32850.0 423900.0 ; - RECT 32850.0 427500.0 34050.0 426300.0 ; - RECT 32850.0 425100.0 34050.0 423900.0 ; - RECT 32850.0 425100.0 34050.0 423900.0 ; - RECT 32850.0 427500.0 34050.0 426300.0 ; - RECT 23550.0 427500.0 24750.0 426300.0 ; - RECT 23550.0 425100.0 24750.0 423900.0 ; - RECT 23550.0 425100.0 24750.0 423900.0 ; - RECT 23550.0 427500.0 24750.0 426300.0 ; - RECT 33450.0 422700.0 34650.0 421500.0 ; - RECT 23550.0 422700.0 24750.0 421500.0 ; - RECT 28200.0 426900.0 29400.0 425700.0 ; - RECT 28200.0 426900.0 29400.0 425700.0 ; - RECT 28350.0 424350.0 29250.0 423450.0 ; - RECT 35550.0 429300.0 36450.0 419700.0 ; - RECT 21750.0 429300.0 22650.0 419700.0 ; - RECT 28200.0 425700.0 29400.0 426900.0 ; - RECT 34050.0 413100.0 36000.0 411900.0 ; - RECT 22200.0 413100.0 24150.0 411900.0 ; - RECT 23550.0 417900.0 21750.0 416700.0 ; - RECT 32850.0 417900.0 36450.0 416700.0 ; - RECT 23550.0 415200.0 32850.0 414300.0 ; - RECT 32850.0 417900.0 34050.0 416700.0 ; - RECT 32850.0 415500.0 34050.0 414300.0 ; - RECT 32850.0 415500.0 34050.0 414300.0 ; - RECT 32850.0 417900.0 34050.0 416700.0 ; - RECT 23550.0 417900.0 24750.0 416700.0 ; - RECT 23550.0 415500.0 24750.0 414300.0 ; - RECT 23550.0 415500.0 24750.0 414300.0 ; - RECT 23550.0 417900.0 24750.0 416700.0 ; - RECT 33450.0 413100.0 34650.0 411900.0 ; - RECT 23550.0 413100.0 24750.0 411900.0 ; - RECT 28200.0 417300.0 29400.0 416100.0 ; - RECT 28200.0 417300.0 29400.0 416100.0 ; - RECT 28350.0 414750.0 29250.0 413850.0 ; - RECT 35550.0 419700.0 36450.0 410100.0 ; - RECT 21750.0 419700.0 22650.0 410100.0 ; - RECT 28200.0 416100.0 29400.0 417300.0 ; - RECT 42600.0 414900.0 43800.0 416100.0 ; - RECT 42600.0 424500.0 43800.0 425700.0 ; - RECT 28200.0 423300.0 29400.0 424500.0 ; - RECT 42600.0 412500.0 43800.0 413700.0 ; - RECT 28350.0 410100.0 29250.0 413850.0 ; - RECT 35550.0 410100.0 36450.0 429300.0 ; - RECT 21750.0 410100.0 22650.0 429300.0 ; - RECT 49350.0 410100.0 50250.0 429300.0 ; - RECT 16800.0 395100.0 6600.0 381300.0 ; - RECT 16800.0 395100.0 6600.0 408900.0 ; - RECT 16800.0 422700.0 6600.0 408900.0 ; - RECT 17400.0 396600.0 6000.0 397800.0 ; - RECT 17400.0 420000.0 6000.0 421200.0 ; - RECT 17400.0 408300.0 6000.0 409200.0 ; - RECT 22650.0 396600.0 21450.0 397800.0 ; - RECT 22650.0 420000.0 21450.0 421200.0 ; - RECT 22650.0 410100.0 21450.0 411300.0 ; - RECT 22650.0 370500.0 21450.0 371700.0 ; - RECT 21600.0 425400.0 22800.0 426600.0 ; - RECT 16200.0 425400.0 17400.0 426600.0 ; - RECT 29400.0 396900.0 28200.0 398100.0 ; - RECT 19350.0 383400.0 20550.0 384600.0 ; - RECT 19350.0 375300.0 20550.0 376500.0 ; - RECT 12600.0 375300.0 13800.0 376500.0 ; - RECT 43800.0 362100.0 42900.0 412500.0 ; - RECT 29250.0 362100.0 28350.0 375450.0 ; - RECT 4500.0 362100.0 3600.0 423150.0 ; - RECT 36450.0 362100.0 35550.0 410100.0 ; - RECT 22650.0 362100.0 21750.0 381300.0 ; - RECT 50250.0 362100.0 49350.0 410100.0 ; - RECT 43950.0 285450.0 42750.0 284250.0 ; - RECT 43950.0 244500.0 42750.0 243300.0 ; - RECT 33900.0 205650.0 32700.0 204450.0 ; - RECT 29850.0 285450.0 28650.0 284250.0 ; - RECT 27150.0 290850.0 25950.0 289650.0 ; - RECT 30600.0 328200.0 29400.0 327000.0 ; - RECT 27900.0 331200.0 26700.0 330000.0 ; - RECT 41850.0 304350.0 40650.0 303150.0 ; - RECT 43800.0 301650.0 42600.0 300450.0 ; - RECT 45750.0 293550.0 44550.0 292350.0 ; - RECT 14250.0 304350.0 13050.0 303150.0 ; - RECT 16200.0 293550.0 15000.0 292350.0 ; - RECT 18150.0 296250.0 16950.0 295050.0 ; - RECT 29850.0 322500.0 28650.0 323700.0 ; - RECT 30600.0 339600.0 29400.0 340800.0 ; - RECT 16200.0 362100.0 15000.0 363300.0 ; - RECT 29400.0 342300.0 28200.0 343500.0 ; - RECT 50400.0 288150.0 49200.0 286950.0 ; - RECT 36600.0 298950.0 35400.0 297750.0 ; - RECT 22800.0 288150.0 21600.0 286950.0 ; - RECT 9000.0 298950.0 7800.0 297750.0 ; - RECT 43800.0 202200.0 42600.0 205800.0 ; - RECT 36450.0 202200.0 35550.0 203100.0 ; - RECT 50250.0 202200.0 49350.0 203100.0 ; - RECT 55650.0 297750.0 54450.0 298950.0 ; + RECT 152550.0 193200.0 151350.0 194400.0 ; + RECT 152550.0 95100.0 151350.0 96300.0 ; + RECT 198600.0 0.0 203100.0 440700.0 ; + RECT 52800.0 0.0 57300.0 440700.0 ; + RECT 43650.0 207900.0 42750.0 217500.0 ; + RECT 43800.0 224100.0 42900.0 225000.0 ; + RECT 43350.0 224100.0 43200.0 225000.0 ; + RECT 43800.0 224550.0 42900.0 231900.0 ; + RECT 43800.0 243750.0 42900.0 251100.0 ; + RECT 35550.0 258900.0 30600.0 259800.0 ; + RECT 43650.0 207450.0 42750.0 208350.0 ; + RECT 43650.0 224100.0 42750.0 225000.0 ; + RECT 29250.0 362400.0 28350.0 375750.0 ; + RECT 43800.0 273000.0 42900.0 285150.0 ; + RECT 33300.0 204900.0 30600.0 205800.0 ; + RECT 29700.0 285150.0 28800.0 312000.0 ; + RECT 27000.0 290550.0 26100.0 315000.0 ; + RECT 41700.0 304050.0 40800.0 312600.0 ; + RECT 43650.0 301350.0 42750.0 315000.0 ; + RECT 45600.0 293250.0 44700.0 317400.0 ; + RECT 41700.0 327150.0 40800.0 328050.0 ; + RECT 41700.0 318600.0 40800.0 327600.0 ; + RECT 43200.0 327150.0 41250.0 328050.0 ; + RECT 43800.0 329550.0 42900.0 330450.0 ; + RECT 43350.0 329550.0 43200.0 330450.0 ; + RECT 43800.0 330000.0 42900.0 387600.0 ; + RECT 14100.0 304050.0 13200.0 322200.0 ; + RECT 16050.0 293250.0 15150.0 324600.0 ; + RECT 18000.0 295950.0 17100.0 327000.0 ; + RECT 14100.0 336750.0 13200.0 337650.0 ; + RECT 14100.0 328200.0 13200.0 337200.0 ; + RECT 15600.0 336750.0 13650.0 337650.0 ; + RECT 16050.0 339600.0 15150.0 346800.0 ; + RECT 16050.0 349200.0 15150.0 356400.0 ; + RECT 29250.0 361950.0 28350.0 362850.0 ; + RECT 28800.0 361950.0 28350.0 362850.0 ; + RECT 29250.0 360000.0 28350.0 362400.0 ; + RECT 29250.0 349800.0 28350.0 357000.0 ; + RECT 29700.0 317100.0 28800.0 323400.0 ; + RECT 30450.0 333300.0 29550.0 340500.0 ; + RECT 16050.0 358800.0 15150.0 363000.0 ; + RECT 29250.0 343200.0 28350.0 347400.0 ; + RECT 50250.0 202500.0 49350.0 362400.0 ; + RECT 50250.0 287850.0 49350.0 309000.0 ; + RECT 36450.0 202500.0 35550.0 362400.0 ; + RECT 36450.0 298650.0 35550.0 309000.0 ; + RECT 22650.0 309000.0 21750.0 362400.0 ; + RECT 22650.0 287850.0 21750.0 309000.0 ; + RECT 8850.0 309000.0 7950.0 362400.0 ; + RECT 8850.0 298650.0 7950.0 309000.0 ; + RECT 8850.0 361950.0 7950.0 362850.0 ; + RECT 8850.0 360300.0 7950.0 362400.0 ; + RECT 8400.0 361950.0 3600.0 362850.0 ; + RECT 7.1054273576e-12 202500.0 10200.0 262500.0 ; + RECT 20400.0 202500.0 10200.0 262500.0 ; + RECT 20400.0 202500.0 30600.0 262500.0 ; + RECT 7.1054273576e-12 204900.0 30600.0 205800.0 ; + RECT 1.42108547152e-11 258900.0 30600.0 259800.0 ; + RECT 37950.0 211500.0 36000.0 212700.0 ; + RECT 49800.0 211500.0 47850.0 212700.0 ; + RECT 48450.0 207000.0 39150.0 207900.0 ; + RECT 38550.0 204450.0 36600.0 205350.0 ; + RECT 38550.0 209250.0 36600.0 210150.0 ; + RECT 39150.0 204300.0 37950.0 205500.0 ; + RECT 39150.0 209100.0 37950.0 210300.0 ; + RECT 39150.0 206700.0 37950.0 207900.0 ; + RECT 39150.0 206700.0 37950.0 207900.0 ; + RECT 37050.0 204450.0 36150.0 210150.0 ; + RECT 49800.0 204450.0 47850.0 205350.0 ; + RECT 49800.0 209250.0 47850.0 210150.0 ; + RECT 48450.0 204300.0 47250.0 205500.0 ; + RECT 48450.0 209100.0 47250.0 210300.0 ; + RECT 48450.0 206700.0 47250.0 207900.0 ; + RECT 48450.0 206700.0 47250.0 207900.0 ; + RECT 50250.0 204450.0 49350.0 210150.0 ; + RECT 38550.0 211500.0 37350.0 212700.0 ; + RECT 48450.0 211500.0 47250.0 212700.0 ; + RECT 43800.0 204900.0 42600.0 206100.0 ; + RECT 43800.0 204900.0 42600.0 206100.0 ; + RECT 43650.0 207450.0 42750.0 208350.0 ; + RECT 36450.0 202500.0 35550.0 214500.0 ; + RECT 50250.0 202500.0 49350.0 214500.0 ; + RECT 37950.0 225900.0 36000.0 227100.0 ; + RECT 49800.0 225900.0 47850.0 227100.0 ; + RECT 37350.0 216450.0 35550.0 222150.0 ; + RECT 46050.0 223650.0 41250.0 224550.0 ; + RECT 38850.0 216450.0 36900.0 217350.0 ; + RECT 38850.0 221250.0 36900.0 222150.0 ; + RECT 40800.0 218850.0 38850.0 219750.0 ; + RECT 40800.0 223650.0 38850.0 224550.0 ; + RECT 39450.0 216300.0 38250.0 217500.0 ; + RECT 39450.0 221100.0 38250.0 222300.0 ; + RECT 39450.0 218700.0 38250.0 219900.0 ; + RECT 39450.0 223500.0 38250.0 224700.0 ; + RECT 41250.0 218850.0 40350.0 224550.0 ; + RECT 37350.0 216450.0 36450.0 222150.0 ; + RECT 49500.0 216450.0 47550.0 217350.0 ; + RECT 49500.0 221250.0 47550.0 222150.0 ; + RECT 47550.0 218850.0 45600.0 219750.0 ; + RECT 47550.0 223650.0 45600.0 224550.0 ; + RECT 48150.0 216300.0 46950.0 217500.0 ; + RECT 48150.0 221100.0 46950.0 222300.0 ; + RECT 48150.0 218700.0 46950.0 219900.0 ; + RECT 48150.0 223500.0 46950.0 224700.0 ; + RECT 46050.0 218850.0 45150.0 224550.0 ; + RECT 49950.0 216450.0 49050.0 222150.0 ; + RECT 38550.0 225900.0 37350.0 227100.0 ; + RECT 48450.0 225900.0 47250.0 227100.0 ; + RECT 43800.0 216900.0 42600.0 218100.0 ; + RECT 43800.0 216900.0 42600.0 218100.0 ; + RECT 43650.0 224100.0 42750.0 225000.0 ; + RECT 36450.0 214500.0 35550.0 228900.0 ; + RECT 50250.0 214500.0 49350.0 228900.0 ; + RECT 37950.0 245100.0 36000.0 246300.0 ; + RECT 49800.0 245100.0 47850.0 246300.0 ; + RECT 37800.0 230850.0 35550.0 241350.0 ; + RECT 45900.0 242850.0 41700.0 243750.0 ; + RECT 39300.0 230850.0 37350.0 231750.0 ; + RECT 39300.0 235650.0 37350.0 236550.0 ; + RECT 39300.0 240450.0 37350.0 241350.0 ; + RECT 41250.0 233250.0 39300.0 234150.0 ; + RECT 41250.0 238050.0 39300.0 238950.0 ; + RECT 41250.0 242850.0 39300.0 243750.0 ; + RECT 39900.0 230700.0 38700.0 231900.0 ; + RECT 39900.0 235500.0 38700.0 236700.0 ; + RECT 39900.0 240300.0 38700.0 241500.0 ; + RECT 39900.0 233100.0 38700.0 234300.0 ; + RECT 39900.0 237900.0 38700.0 239100.0 ; + RECT 39900.0 242700.0 38700.0 243900.0 ; + RECT 41700.0 233250.0 40800.0 243750.0 ; + RECT 37800.0 230850.0 36900.0 241350.0 ; + RECT 49350.0 230850.0 47400.0 231750.0 ; + RECT 49350.0 235650.0 47400.0 236550.0 ; + RECT 49350.0 240450.0 47400.0 241350.0 ; + RECT 47400.0 233250.0 45450.0 234150.0 ; + RECT 47400.0 238050.0 45450.0 238950.0 ; + RECT 47400.0 242850.0 45450.0 243750.0 ; + RECT 48000.0 230700.0 46800.0 231900.0 ; + RECT 48000.0 235500.0 46800.0 236700.0 ; + RECT 48000.0 240300.0 46800.0 241500.0 ; + RECT 48000.0 233100.0 46800.0 234300.0 ; + RECT 48000.0 237900.0 46800.0 239100.0 ; + RECT 48000.0 242700.0 46800.0 243900.0 ; + RECT 45900.0 233250.0 45000.0 243750.0 ; + RECT 49800.0 230850.0 48900.0 241350.0 ; + RECT 38550.0 245100.0 37350.0 246300.0 ; + RECT 48450.0 245100.0 47250.0 246300.0 ; + RECT 43950.0 231300.0 42750.0 232500.0 ; + RECT 43950.0 231300.0 42750.0 232500.0 ; + RECT 43800.0 243300.0 42900.0 244200.0 ; + RECT 36450.0 228900.0 35550.0 248100.0 ; + RECT 50250.0 228900.0 49350.0 248100.0 ; + RECT 37950.0 276300.0 36000.0 277500.0 ; + RECT 49800.0 276300.0 47850.0 277500.0 ; + RECT 37800.0 250050.0 35550.0 274950.0 ; + RECT 45900.0 271650.0 41700.0 272550.0 ; + RECT 39300.0 250050.0 37350.0 250950.0 ; + RECT 39300.0 254850.0 37350.0 255750.0 ; + RECT 39300.0 259650.0 37350.0 260550.0 ; + RECT 39300.0 264450.0 37350.0 265350.0 ; + RECT 39300.0 269250.0 37350.0 270150.0 ; + RECT 39300.0 274050.0 37350.0 274950.0 ; + RECT 41250.0 252450.0 39300.0 253350.0 ; + RECT 41250.0 257250.0 39300.0 258150.0 ; + RECT 41250.0 262050.0 39300.0 262950.0 ; + RECT 41250.0 266850.0 39300.0 267750.0 ; + RECT 41250.0 271650.0 39300.0 272550.0 ; + RECT 39900.0 249900.0 38700.0 251100.0 ; + RECT 39900.0 254700.0 38700.0 255900.0 ; + RECT 39900.0 259500.0 38700.0 260700.0 ; + RECT 39900.0 264300.0 38700.0 265500.0 ; + RECT 39900.0 269100.0 38700.0 270300.0 ; + RECT 39900.0 273900.0 38700.0 275100.0 ; + RECT 39900.0 252300.0 38700.0 253500.0 ; + RECT 39900.0 257100.0 38700.0 258300.0 ; + RECT 39900.0 261900.0 38700.0 263100.0 ; + RECT 39900.0 266700.0 38700.0 267900.0 ; + RECT 39900.0 271500.0 38700.0 272700.0 ; + RECT 41700.0 252450.0 40800.0 272550.0 ; + RECT 37800.0 250050.0 36900.0 274950.0 ; + RECT 49350.0 250050.0 47400.0 250950.0 ; + RECT 49350.0 254850.0 47400.0 255750.0 ; + RECT 49350.0 259650.0 47400.0 260550.0 ; + RECT 49350.0 264450.0 47400.0 265350.0 ; + RECT 49350.0 269250.0 47400.0 270150.0 ; + RECT 49350.0 274050.0 47400.0 274950.0 ; + RECT 47400.0 252450.0 45450.0 253350.0 ; + RECT 47400.0 257250.0 45450.0 258150.0 ; + RECT 47400.0 262050.0 45450.0 262950.0 ; + RECT 47400.0 266850.0 45450.0 267750.0 ; + RECT 47400.0 271650.0 45450.0 272550.0 ; + RECT 48000.0 249900.0 46800.0 251100.0 ; + RECT 48000.0 254700.0 46800.0 255900.0 ; + RECT 48000.0 259500.0 46800.0 260700.0 ; + RECT 48000.0 264300.0 46800.0 265500.0 ; + RECT 48000.0 269100.0 46800.0 270300.0 ; + RECT 48000.0 273900.0 46800.0 275100.0 ; + RECT 48000.0 252300.0 46800.0 253500.0 ; + RECT 48000.0 257100.0 46800.0 258300.0 ; + RECT 48000.0 261900.0 46800.0 263100.0 ; + RECT 48000.0 266700.0 46800.0 267900.0 ; + RECT 48000.0 271500.0 46800.0 272700.0 ; + RECT 45900.0 252450.0 45000.0 272550.0 ; + RECT 49800.0 250050.0 48900.0 274950.0 ; + RECT 38550.0 276300.0 37350.0 277500.0 ; + RECT 48450.0 276300.0 47250.0 277500.0 ; + RECT 43950.0 250500.0 42750.0 251700.0 ; + RECT 43950.0 250500.0 42750.0 251700.0 ; + RECT 43800.0 272100.0 42900.0 273000.0 ; + RECT 36450.0 248100.0 35550.0 279300.0 ; + RECT 50250.0 248100.0 49350.0 279300.0 ; + RECT 47850.0 310800.0 50250.0 312000.0 ; + RECT 39150.0 310800.0 35550.0 312000.0 ; + RECT 39150.0 315600.0 35550.0 316800.0 ; + RECT 37950.0 320400.0 36000.0 321600.0 ; + RECT 49800.0 320400.0 47850.0 321600.0 ; + RECT 39150.0 310800.0 37950.0 312000.0 ; + RECT 39150.0 313200.0 37950.0 314400.0 ; + RECT 39150.0 313200.0 37950.0 314400.0 ; + RECT 39150.0 310800.0 37950.0 312000.0 ; + RECT 39150.0 313200.0 37950.0 314400.0 ; + RECT 39150.0 315600.0 37950.0 316800.0 ; + RECT 39150.0 315600.0 37950.0 316800.0 ; + RECT 39150.0 313200.0 37950.0 314400.0 ; + RECT 39150.0 315600.0 37950.0 316800.0 ; + RECT 39150.0 318000.0 37950.0 319200.0 ; + RECT 39150.0 318000.0 37950.0 319200.0 ; + RECT 39150.0 315600.0 37950.0 316800.0 ; + RECT 47850.0 310800.0 46650.0 312000.0 ; + RECT 47850.0 313200.0 46650.0 314400.0 ; + RECT 47850.0 313200.0 46650.0 314400.0 ; + RECT 47850.0 310800.0 46650.0 312000.0 ; + RECT 47850.0 313200.0 46650.0 314400.0 ; + RECT 47850.0 315600.0 46650.0 316800.0 ; + RECT 47850.0 315600.0 46650.0 316800.0 ; + RECT 47850.0 313200.0 46650.0 314400.0 ; + RECT 47850.0 315600.0 46650.0 316800.0 ; + RECT 47850.0 318000.0 46650.0 319200.0 ; + RECT 47850.0 318000.0 46650.0 319200.0 ; + RECT 47850.0 315600.0 46650.0 316800.0 ; + RECT 38550.0 320400.0 37350.0 321600.0 ; + RECT 48450.0 320400.0 47250.0 321600.0 ; + RECT 45750.0 318000.0 44550.0 316800.0 ; + RECT 43800.0 315600.0 42600.0 314400.0 ; + RECT 41850.0 313200.0 40650.0 312000.0 ; + RECT 39150.0 313200.0 37950.0 314400.0 ; + RECT 39150.0 318000.0 37950.0 319200.0 ; + RECT 47850.0 318000.0 46650.0 319200.0 ; + RECT 41850.0 318000.0 40650.0 319200.0 ; + RECT 41850.0 312000.0 40650.0 313200.0 ; + RECT 43800.0 314400.0 42600.0 315600.0 ; + RECT 45750.0 316800.0 44550.0 318000.0 ; + RECT 41850.0 318000.0 40650.0 319200.0 ; + RECT 36450.0 309000.0 35550.0 324600.0 ; + RECT 50250.0 309000.0 49350.0 324600.0 ; + RECT 37950.0 331200.0 36000.0 332400.0 ; + RECT 49800.0 331200.0 47850.0 332400.0 ; + RECT 48450.0 326400.0 50250.0 327600.0 ; + RECT 39150.0 326400.0 35550.0 327600.0 ; + RECT 48450.0 329100.0 39150.0 330000.0 ; + RECT 39150.0 326400.0 37950.0 327600.0 ; + RECT 39150.0 328800.0 37950.0 330000.0 ; + RECT 39150.0 328800.0 37950.0 330000.0 ; + RECT 39150.0 326400.0 37950.0 327600.0 ; + RECT 48450.0 326400.0 47250.0 327600.0 ; + RECT 48450.0 328800.0 47250.0 330000.0 ; + RECT 48450.0 328800.0 47250.0 330000.0 ; + RECT 48450.0 326400.0 47250.0 327600.0 ; + RECT 38550.0 331200.0 37350.0 332400.0 ; + RECT 48450.0 331200.0 47250.0 332400.0 ; + RECT 43800.0 327000.0 42600.0 328200.0 ; + RECT 43800.0 327000.0 42600.0 328200.0 ; + RECT 43650.0 329550.0 42750.0 330450.0 ; + RECT 36450.0 324600.0 35550.0 334200.0 ; + RECT 50250.0 324600.0 49350.0 334200.0 ; + RECT 23550.0 310800.0 21750.0 312000.0 ; + RECT 23550.0 315600.0 21750.0 316800.0 ; + RECT 32250.0 310800.0 36450.0 312000.0 ; + RECT 34050.0 318000.0 36000.0 319200.0 ; + RECT 22200.0 318000.0 24150.0 319200.0 ; + RECT 32250.0 310800.0 33450.0 312000.0 ; + RECT 32250.0 313200.0 33450.0 314400.0 ; + RECT 32250.0 313200.0 33450.0 314400.0 ; + RECT 32250.0 310800.0 33450.0 312000.0 ; + RECT 32250.0 313200.0 33450.0 314400.0 ; + RECT 32250.0 315600.0 33450.0 316800.0 ; + RECT 32250.0 315600.0 33450.0 316800.0 ; + RECT 32250.0 313200.0 33450.0 314400.0 ; + RECT 23550.0 310800.0 24750.0 312000.0 ; + RECT 23550.0 313200.0 24750.0 314400.0 ; + RECT 23550.0 313200.0 24750.0 314400.0 ; + RECT 23550.0 310800.0 24750.0 312000.0 ; + RECT 23550.0 313200.0 24750.0 314400.0 ; + RECT 23550.0 315600.0 24750.0 316800.0 ; + RECT 23550.0 315600.0 24750.0 316800.0 ; + RECT 23550.0 313200.0 24750.0 314400.0 ; + RECT 33450.0 318000.0 34650.0 319200.0 ; + RECT 23550.0 318000.0 24750.0 319200.0 ; + RECT 25950.0 315600.0 27150.0 314400.0 ; + RECT 28650.0 312600.0 29850.0 311400.0 ; + RECT 32250.0 315600.0 33450.0 316800.0 ; + RECT 23550.0 314400.0 24750.0 313200.0 ; + RECT 28650.0 317700.0 29850.0 316500.0 ; + RECT 28650.0 311400.0 29850.0 312600.0 ; + RECT 25950.0 314400.0 27150.0 315600.0 ; + RECT 28650.0 316500.0 29850.0 317700.0 ; + RECT 35550.0 309000.0 36450.0 323400.0 ; + RECT 21750.0 309000.0 22650.0 323400.0 ; + RECT 24150.0 327900.0 21750.0 329100.0 ; + RECT 32850.0 327900.0 36450.0 329100.0 ; + RECT 32850.0 332700.0 36450.0 333900.0 ; + RECT 34050.0 335100.0 36000.0 336300.0 ; + RECT 22200.0 335100.0 24150.0 336300.0 ; + RECT 32850.0 327900.0 34050.0 329100.0 ; + RECT 32850.0 330300.0 34050.0 331500.0 ; + RECT 32850.0 330300.0 34050.0 331500.0 ; + RECT 32850.0 327900.0 34050.0 329100.0 ; + RECT 32850.0 330300.0 34050.0 331500.0 ; + RECT 32850.0 332700.0 34050.0 333900.0 ; + RECT 32850.0 332700.0 34050.0 333900.0 ; + RECT 32850.0 330300.0 34050.0 331500.0 ; + RECT 24150.0 327900.0 25350.0 329100.0 ; + RECT 24150.0 330300.0 25350.0 331500.0 ; + RECT 24150.0 330300.0 25350.0 331500.0 ; + RECT 24150.0 327900.0 25350.0 329100.0 ; + RECT 24150.0 330300.0 25350.0 331500.0 ; + RECT 24150.0 332700.0 25350.0 333900.0 ; + RECT 24150.0 332700.0 25350.0 333900.0 ; + RECT 24150.0 330300.0 25350.0 331500.0 ; + RECT 33450.0 335100.0 34650.0 336300.0 ; + RECT 23550.0 335100.0 24750.0 336300.0 ; + RECT 26700.0 332700.0 27900.0 331500.0 ; + RECT 29400.0 329700.0 30600.0 328500.0 ; + RECT 32850.0 330300.0 34050.0 331500.0 ; + RECT 24150.0 332700.0 25350.0 333900.0 ; + RECT 29400.0 333900.0 30600.0 332700.0 ; + RECT 29400.0 328500.0 30600.0 329700.0 ; + RECT 26700.0 331500.0 27900.0 332700.0 ; + RECT 29400.0 332700.0 30600.0 333900.0 ; + RECT 35550.0 326100.0 36450.0 340500.0 ; + RECT 21750.0 326100.0 22650.0 340500.0 ; + RECT 34050.0 346200.0 36000.0 345000.0 ; + RECT 22200.0 346200.0 24150.0 345000.0 ; + RECT 23550.0 351000.0 21750.0 349800.0 ; + RECT 32850.0 351000.0 36450.0 349800.0 ; + RECT 23550.0 348300.0 32850.0 347400.0 ; + RECT 32850.0 351000.0 34050.0 349800.0 ; + RECT 32850.0 348600.0 34050.0 347400.0 ; + RECT 32850.0 348600.0 34050.0 347400.0 ; + RECT 32850.0 351000.0 34050.0 349800.0 ; + RECT 23550.0 351000.0 24750.0 349800.0 ; + RECT 23550.0 348600.0 24750.0 347400.0 ; + RECT 23550.0 348600.0 24750.0 347400.0 ; + RECT 23550.0 351000.0 24750.0 349800.0 ; + RECT 33450.0 346200.0 34650.0 345000.0 ; + RECT 23550.0 346200.0 24750.0 345000.0 ; + RECT 28200.0 350400.0 29400.0 349200.0 ; + RECT 28200.0 350400.0 29400.0 349200.0 ; + RECT 28350.0 347850.0 29250.0 346950.0 ; + RECT 35550.0 352800.0 36450.0 343200.0 ; + RECT 21750.0 352800.0 22650.0 343200.0 ; + RECT 34050.0 355800.0 36000.0 354600.0 ; + RECT 22200.0 355800.0 24150.0 354600.0 ; + RECT 23550.0 360600.0 21750.0 359400.0 ; + RECT 32850.0 360600.0 36450.0 359400.0 ; + RECT 23550.0 357900.0 32850.0 357000.0 ; + RECT 32850.0 360600.0 34050.0 359400.0 ; + RECT 32850.0 358200.0 34050.0 357000.0 ; + RECT 32850.0 358200.0 34050.0 357000.0 ; + RECT 32850.0 360600.0 34050.0 359400.0 ; + RECT 23550.0 360600.0 24750.0 359400.0 ; + RECT 23550.0 358200.0 24750.0 357000.0 ; + RECT 23550.0 358200.0 24750.0 357000.0 ; + RECT 23550.0 360600.0 24750.0 359400.0 ; + RECT 33450.0 355800.0 34650.0 354600.0 ; + RECT 23550.0 355800.0 24750.0 354600.0 ; + RECT 28200.0 360000.0 29400.0 358800.0 ; + RECT 28200.0 360000.0 29400.0 358800.0 ; + RECT 28350.0 357450.0 29250.0 356550.0 ; + RECT 35550.0 362400.0 36450.0 352800.0 ; + RECT 21750.0 362400.0 22650.0 352800.0 ; + RECT 20250.0 320400.0 22650.0 321600.0 ; + RECT 11550.0 320400.0 7950.0 321600.0 ; + RECT 11550.0 325200.0 7950.0 326400.0 ; + RECT 10350.0 330000.0 8400.0 331200.0 ; + RECT 22200.0 330000.0 20250.0 331200.0 ; + RECT 11550.0 320400.0 10350.0 321600.0 ; + RECT 11550.0 322800.0 10350.0 324000.0 ; + RECT 11550.0 322800.0 10350.0 324000.0 ; + RECT 11550.0 320400.0 10350.0 321600.0 ; + RECT 11550.0 322800.0 10350.0 324000.0 ; + RECT 11550.0 325200.0 10350.0 326400.0 ; + RECT 11550.0 325200.0 10350.0 326400.0 ; + RECT 11550.0 322800.0 10350.0 324000.0 ; + RECT 11550.0 325200.0 10350.0 326400.0 ; + RECT 11550.0 327600.0 10350.0 328800.0 ; + RECT 11550.0 327600.0 10350.0 328800.0 ; + RECT 11550.0 325200.0 10350.0 326400.0 ; + RECT 20250.0 320400.0 19050.0 321600.0 ; + RECT 20250.0 322800.0 19050.0 324000.0 ; + RECT 20250.0 322800.0 19050.0 324000.0 ; + RECT 20250.0 320400.0 19050.0 321600.0 ; + RECT 20250.0 322800.0 19050.0 324000.0 ; + RECT 20250.0 325200.0 19050.0 326400.0 ; + RECT 20250.0 325200.0 19050.0 326400.0 ; + RECT 20250.0 322800.0 19050.0 324000.0 ; + RECT 20250.0 325200.0 19050.0 326400.0 ; + RECT 20250.0 327600.0 19050.0 328800.0 ; + RECT 20250.0 327600.0 19050.0 328800.0 ; + RECT 20250.0 325200.0 19050.0 326400.0 ; + RECT 10950.0 330000.0 9750.0 331200.0 ; + RECT 20850.0 330000.0 19650.0 331200.0 ; + RECT 18150.0 327600.0 16950.0 326400.0 ; + RECT 16200.0 325200.0 15000.0 324000.0 ; + RECT 14250.0 322800.0 13050.0 321600.0 ; + RECT 11550.0 322800.0 10350.0 324000.0 ; + RECT 11550.0 327600.0 10350.0 328800.0 ; + RECT 20250.0 327600.0 19050.0 328800.0 ; + RECT 14250.0 327600.0 13050.0 328800.0 ; + RECT 14250.0 321600.0 13050.0 322800.0 ; + RECT 16200.0 324000.0 15000.0 325200.0 ; + RECT 18150.0 326400.0 16950.0 327600.0 ; + RECT 14250.0 327600.0 13050.0 328800.0 ; + RECT 8850.0 318600.0 7950.0 334200.0 ; + RECT 22650.0 318600.0 21750.0 334200.0 ; + RECT 10350.0 340800.0 8400.0 342000.0 ; + RECT 22200.0 340800.0 20250.0 342000.0 ; + RECT 20850.0 336000.0 22650.0 337200.0 ; + RECT 11550.0 336000.0 7950.0 337200.0 ; + RECT 20850.0 338700.0 11550.0 339600.0 ; + RECT 11550.0 336000.0 10350.0 337200.0 ; + RECT 11550.0 338400.0 10350.0 339600.0 ; + RECT 11550.0 338400.0 10350.0 339600.0 ; + RECT 11550.0 336000.0 10350.0 337200.0 ; + RECT 20850.0 336000.0 19650.0 337200.0 ; + RECT 20850.0 338400.0 19650.0 339600.0 ; + RECT 20850.0 338400.0 19650.0 339600.0 ; + RECT 20850.0 336000.0 19650.0 337200.0 ; + RECT 10950.0 340800.0 9750.0 342000.0 ; + RECT 20850.0 340800.0 19650.0 342000.0 ; + RECT 16200.0 336600.0 15000.0 337800.0 ; + RECT 16200.0 336600.0 15000.0 337800.0 ; + RECT 16050.0 339150.0 15150.0 340050.0 ; + RECT 8850.0 334200.0 7950.0 343800.0 ; + RECT 22650.0 334200.0 21750.0 343800.0 ; + RECT 10350.0 350400.0 8400.0 351600.0 ; + RECT 22200.0 350400.0 20250.0 351600.0 ; + RECT 20850.0 345600.0 22650.0 346800.0 ; + RECT 11550.0 345600.0 7950.0 346800.0 ; + RECT 20850.0 348300.0 11550.0 349200.0 ; + RECT 11550.0 345600.0 10350.0 346800.0 ; + RECT 11550.0 348000.0 10350.0 349200.0 ; + RECT 11550.0 348000.0 10350.0 349200.0 ; + RECT 11550.0 345600.0 10350.0 346800.0 ; + RECT 20850.0 345600.0 19650.0 346800.0 ; + RECT 20850.0 348000.0 19650.0 349200.0 ; + RECT 20850.0 348000.0 19650.0 349200.0 ; + RECT 20850.0 345600.0 19650.0 346800.0 ; + RECT 10950.0 350400.0 9750.0 351600.0 ; + RECT 20850.0 350400.0 19650.0 351600.0 ; + RECT 16200.0 346200.0 15000.0 347400.0 ; + RECT 16200.0 346200.0 15000.0 347400.0 ; + RECT 16050.0 348750.0 15150.0 349650.0 ; + RECT 8850.0 343800.0 7950.0 353400.0 ; + RECT 22650.0 343800.0 21750.0 353400.0 ; + RECT 10350.0 360000.0 8400.0 361200.0 ; + RECT 22200.0 360000.0 20250.0 361200.0 ; + RECT 20850.0 355200.0 22650.0 356400.0 ; + RECT 11550.0 355200.0 7950.0 356400.0 ; + RECT 20850.0 357900.0 11550.0 358800.0 ; + RECT 11550.0 355200.0 10350.0 356400.0 ; + RECT 11550.0 357600.0 10350.0 358800.0 ; + RECT 11550.0 357600.0 10350.0 358800.0 ; + RECT 11550.0 355200.0 10350.0 356400.0 ; + RECT 20850.0 355200.0 19650.0 356400.0 ; + RECT 20850.0 357600.0 19650.0 358800.0 ; + RECT 20850.0 357600.0 19650.0 358800.0 ; + RECT 20850.0 355200.0 19650.0 356400.0 ; + RECT 10950.0 360000.0 9750.0 361200.0 ; + RECT 20850.0 360000.0 19650.0 361200.0 ; + RECT 16200.0 355800.0 15000.0 357000.0 ; + RECT 16200.0 355800.0 15000.0 357000.0 ; + RECT 16050.0 358350.0 15150.0 359250.0 ; + RECT 8850.0 353400.0 7950.0 363000.0 ; + RECT 22650.0 353400.0 21750.0 363000.0 ; + RECT 22650.0 396900.0 16800.0 397800.0 ; + RECT 22650.0 420300.0 16800.0 421200.0 ; + RECT 22200.0 427650.0 16800.0 428550.0 ; + RECT 4500.0 408600.0 16800.0 409500.0 ; + RECT 4500.0 381000.0 16800.0 381900.0 ; + RECT 29250.0 397800.0 28350.0 410400.0 ; + RECT 29250.0 392850.0 28350.0 393750.0 ; + RECT 29250.0 393300.0 28350.0 397800.0 ; + RECT 28800.0 392850.0 17400.0 393750.0 ; + RECT 36000.0 398550.0 33750.0 399450.0 ; + RECT 33600.0 383850.0 32700.0 384750.0 ; + RECT 29250.0 383850.0 28350.0 384750.0 ; + RECT 33600.0 384300.0 32700.0 396000.0 ; + RECT 33150.0 383850.0 28800.0 384750.0 ; + RECT 29250.0 379200.0 28350.0 384300.0 ; + RECT 28800.0 383850.0 19950.0 384750.0 ; + RECT 19950.0 375750.0 13200.0 376650.0 ; + RECT 29400.0 378000.0 28200.0 379200.0 ; + RECT 29250.0 410400.0 28350.0 414150.0 ; + RECT 34050.0 375000.0 36000.0 373800.0 ; + RECT 22200.0 375000.0 24150.0 373800.0 ; + RECT 23550.0 379800.0 21750.0 378600.0 ; + RECT 32850.0 379800.0 36450.0 378600.0 ; + RECT 23550.0 377100.0 32850.0 376200.0 ; + RECT 32850.0 379800.0 34050.0 378600.0 ; + RECT 32850.0 377400.0 34050.0 376200.0 ; + RECT 32850.0 377400.0 34050.0 376200.0 ; + RECT 32850.0 379800.0 34050.0 378600.0 ; + RECT 23550.0 379800.0 24750.0 378600.0 ; + RECT 23550.0 377400.0 24750.0 376200.0 ; + RECT 23550.0 377400.0 24750.0 376200.0 ; + RECT 23550.0 379800.0 24750.0 378600.0 ; + RECT 33450.0 375000.0 34650.0 373800.0 ; + RECT 23550.0 375000.0 24750.0 373800.0 ; + RECT 28200.0 379200.0 29400.0 378000.0 ; + RECT 28200.0 379200.0 29400.0 378000.0 ; + RECT 28350.0 376650.0 29250.0 375750.0 ; + RECT 35550.0 381600.0 36450.0 372000.0 ; + RECT 21750.0 381600.0 22650.0 372000.0 ; + RECT 32550.0 396000.0 33750.0 397200.0 ; + RECT 32550.0 398400.0 33750.0 399600.0 ; + RECT 32550.0 398400.0 33750.0 399600.0 ; + RECT 32550.0 396000.0 33750.0 397200.0 ; + RECT 21750.0 430950.0 22650.0 431850.0 ; + RECT 49350.0 430950.0 50250.0 431850.0 ; + RECT 21750.0 429600.0 22650.0 431400.0 ; + RECT 22200.0 430950.0 49800.0 431850.0 ; + RECT 49350.0 429600.0 50250.0 431400.0 ; + RECT 37950.0 417000.0 36000.0 418200.0 ; + RECT 49800.0 417000.0 47850.0 418200.0 ; + RECT 48450.0 412200.0 50250.0 413400.0 ; + RECT 39150.0 412200.0 35550.0 413400.0 ; + RECT 48450.0 414900.0 39150.0 415800.0 ; + RECT 39150.0 412200.0 37950.0 413400.0 ; + RECT 39150.0 414600.0 37950.0 415800.0 ; + RECT 39150.0 414600.0 37950.0 415800.0 ; + RECT 39150.0 412200.0 37950.0 413400.0 ; + RECT 48450.0 412200.0 47250.0 413400.0 ; + RECT 48450.0 414600.0 47250.0 415800.0 ; + RECT 48450.0 414600.0 47250.0 415800.0 ; + RECT 48450.0 412200.0 47250.0 413400.0 ; + RECT 38550.0 417000.0 37350.0 418200.0 ; + RECT 48450.0 417000.0 47250.0 418200.0 ; + RECT 43800.0 412800.0 42600.0 414000.0 ; + RECT 43800.0 412800.0 42600.0 414000.0 ; + RECT 43650.0 415350.0 42750.0 416250.0 ; + RECT 36450.0 410400.0 35550.0 420000.0 ; + RECT 50250.0 410400.0 49350.0 420000.0 ; + RECT 37950.0 426600.0 36000.0 427800.0 ; + RECT 49800.0 426600.0 47850.0 427800.0 ; + RECT 48450.0 421800.0 50250.0 423000.0 ; + RECT 39150.0 421800.0 35550.0 423000.0 ; + RECT 48450.0 424500.0 39150.0 425400.0 ; + RECT 39150.0 421800.0 37950.0 423000.0 ; + RECT 39150.0 424200.0 37950.0 425400.0 ; + RECT 39150.0 424200.0 37950.0 425400.0 ; + RECT 39150.0 421800.0 37950.0 423000.0 ; + RECT 48450.0 421800.0 47250.0 423000.0 ; + RECT 48450.0 424200.0 47250.0 425400.0 ; + RECT 48450.0 424200.0 47250.0 425400.0 ; + RECT 48450.0 421800.0 47250.0 423000.0 ; + RECT 38550.0 426600.0 37350.0 427800.0 ; + RECT 48450.0 426600.0 47250.0 427800.0 ; + RECT 43800.0 422400.0 42600.0 423600.0 ; + RECT 43800.0 422400.0 42600.0 423600.0 ; + RECT 43650.0 424950.0 42750.0 425850.0 ; + RECT 36450.0 420000.0 35550.0 429600.0 ; + RECT 50250.0 420000.0 49350.0 429600.0 ; + RECT 42600.0 422400.0 43800.0 423600.0 ; + RECT 34050.0 423000.0 36000.0 421800.0 ; + RECT 22200.0 423000.0 24150.0 421800.0 ; + RECT 23550.0 427800.0 21750.0 426600.0 ; + RECT 32850.0 427800.0 36450.0 426600.0 ; + RECT 23550.0 425100.0 32850.0 424200.0 ; + RECT 32850.0 427800.0 34050.0 426600.0 ; + RECT 32850.0 425400.0 34050.0 424200.0 ; + RECT 32850.0 425400.0 34050.0 424200.0 ; + RECT 32850.0 427800.0 34050.0 426600.0 ; + RECT 23550.0 427800.0 24750.0 426600.0 ; + RECT 23550.0 425400.0 24750.0 424200.0 ; + RECT 23550.0 425400.0 24750.0 424200.0 ; + RECT 23550.0 427800.0 24750.0 426600.0 ; + RECT 33450.0 423000.0 34650.0 421800.0 ; + RECT 23550.0 423000.0 24750.0 421800.0 ; + RECT 28200.0 427200.0 29400.0 426000.0 ; + RECT 28200.0 427200.0 29400.0 426000.0 ; + RECT 28350.0 424650.0 29250.0 423750.0 ; + RECT 35550.0 429600.0 36450.0 420000.0 ; + RECT 21750.0 429600.0 22650.0 420000.0 ; + RECT 28200.0 426000.0 29400.0 427200.0 ; + RECT 34050.0 413400.0 36000.0 412200.0 ; + RECT 22200.0 413400.0 24150.0 412200.0 ; + RECT 23550.0 418200.0 21750.0 417000.0 ; + RECT 32850.0 418200.0 36450.0 417000.0 ; + RECT 23550.0 415500.0 32850.0 414600.0 ; + RECT 32850.0 418200.0 34050.0 417000.0 ; + RECT 32850.0 415800.0 34050.0 414600.0 ; + RECT 32850.0 415800.0 34050.0 414600.0 ; + RECT 32850.0 418200.0 34050.0 417000.0 ; + RECT 23550.0 418200.0 24750.0 417000.0 ; + RECT 23550.0 415800.0 24750.0 414600.0 ; + RECT 23550.0 415800.0 24750.0 414600.0 ; + RECT 23550.0 418200.0 24750.0 417000.0 ; + RECT 33450.0 413400.0 34650.0 412200.0 ; + RECT 23550.0 413400.0 24750.0 412200.0 ; + RECT 28200.0 417600.0 29400.0 416400.0 ; + RECT 28200.0 417600.0 29400.0 416400.0 ; + RECT 28350.0 415050.0 29250.0 414150.0 ; + RECT 35550.0 420000.0 36450.0 410400.0 ; + RECT 21750.0 420000.0 22650.0 410400.0 ; + RECT 28200.0 416400.0 29400.0 417600.0 ; + RECT 42600.0 415200.0 43800.0 416400.0 ; + RECT 42600.0 424800.0 43800.0 426000.0 ; + RECT 28200.0 423600.0 29400.0 424800.0 ; + RECT 42600.0 412800.0 43800.0 414000.0 ; + RECT 28350.0 410400.0 29250.0 414150.0 ; + RECT 35550.0 410400.0 36450.0 429600.0 ; + RECT 21750.0 410400.0 22650.0 429600.0 ; + RECT 49350.0 410400.0 50250.0 429600.0 ; + RECT 16800.0 395400.0 6600.0 381600.0 ; + RECT 16800.0 395400.0 6600.0 409200.0 ; + RECT 16800.0 423000.0 6600.0 409200.0 ; + RECT 17400.0 396900.0 6000.0 398100.0 ; + RECT 17400.0 420300.0 6000.0 421500.0 ; + RECT 17400.0 408600.0 6000.0 409500.0 ; + RECT 22650.0 396900.0 21450.0 398100.0 ; + RECT 22650.0 420300.0 21450.0 421500.0 ; + RECT 22650.0 410400.0 21450.0 411600.0 ; + RECT 22650.0 370800.0 21450.0 372000.0 ; + RECT 21600.0 427500.0 22800.0 428700.0 ; + RECT 16200.0 427500.0 17400.0 428700.0 ; + RECT 29400.0 397200.0 28200.0 398400.0 ; + RECT 19350.0 383700.0 20550.0 384900.0 ; + RECT 19350.0 375600.0 20550.0 376800.0 ; + RECT 12600.0 375600.0 13800.0 376800.0 ; + RECT 43800.0 362400.0 42900.0 412800.0 ; + RECT 29250.0 362400.0 28350.0 375750.0 ; + RECT 4500.0 362400.0 3600.0 425250.0 ; + RECT 36450.0 362400.0 35550.0 410400.0 ; + RECT 22650.0 362400.0 21750.0 381600.0 ; + RECT 50250.0 362400.0 49350.0 410400.0 ; + RECT 43950.0 285750.0 42750.0 284550.0 ; + RECT 43950.0 244800.0 42750.0 243600.0 ; + RECT 33900.0 205950.0 32700.0 204750.0 ; + RECT 29850.0 285750.0 28650.0 284550.0 ; + RECT 27150.0 291150.0 25950.0 289950.0 ; + RECT 30600.0 328500.0 29400.0 327300.0 ; + RECT 27900.0 331500.0 26700.0 330300.0 ; + RECT 41850.0 304650.0 40650.0 303450.0 ; + RECT 43800.0 301950.0 42600.0 300750.0 ; + RECT 45750.0 293850.0 44550.0 292650.0 ; + RECT 14250.0 304650.0 13050.0 303450.0 ; + RECT 16200.0 293850.0 15000.0 292650.0 ; + RECT 18150.0 296550.0 16950.0 295350.0 ; + RECT 29850.0 322800.0 28650.0 324000.0 ; + RECT 30600.0 339900.0 29400.0 341100.0 ; + RECT 16200.0 362400.0 15000.0 363600.0 ; + RECT 29400.0 342600.0 28200.0 343800.0 ; + RECT 50400.0 288450.0 49200.0 287250.0 ; + RECT 36600.0 299250.0 35400.0 298050.0 ; + RECT 22800.0 288450.0 21600.0 287250.0 ; + RECT 9000.0 299250.0 7800.0 298050.0 ; + RECT 43800.0 202500.0 42600.0 206100.0 ; + RECT 36450.0 202500.0 35550.0 203400.0 ; + RECT 50250.0 202500.0 49350.0 203400.0 ; + RECT 55650.0 298050.0 54450.0 299250.0 ; LAYER metal2 ; - RECT 168750.0 340200.0 169650.0 342900.0 ; - RECT 166050.0 360000.0 166950.0 362700.0 ; - RECT 160650.0 320400.0 161550.0 323100.0 ; - RECT 157950.0 337500.0 158850.0 340200.0 ; - RECT 163350.0 301050.0 164250.0 303750.0 ; - RECT 155250.0 282150.0 156150.0 284850.0 ; - RECT 49800.0 297900.0 55050.0 298800.0 ; - RECT 149850.0 284850.0 150750.0 287550.0 ; - RECT 155250.0 0.0 156150.0 436800.0 ; - RECT 157950.0 0.0 158850.0 436800.0 ; - RECT 160650.0 0.0 161550.0 436800.0 ; - RECT 163350.0 0.0 164250.0 436800.0 ; - RECT 166050.0 0.0 166950.0 436800.0 ; - RECT 168750.0 0.0 169650.0 436800.0 ; - RECT 134550.0 37200.0 135450.0 199200.0 ; - RECT 137250.0 37200.0 138150.0 199200.0 ; - RECT 139950.0 37200.0 140850.0 199200.0 ; - RECT 142650.0 37200.0 143550.0 199200.0 ; - RECT 178650.0 420000.0 179550.0 421800.0 ; - RECT 181650.0 420000.0 182550.0 420600.0 ; - RECT 188850.0 420000.0 189750.0 421800.0 ; - RECT 191850.0 420000.0 192750.0 420600.0 ; + RECT 168750.0 340500.0 169650.0 343200.0 ; + RECT 166050.0 360300.0 166950.0 363000.0 ; + RECT 160650.0 320700.0 161550.0 323400.0 ; + RECT 157950.0 337800.0 158850.0 340500.0 ; + RECT 163350.0 301350.0 164250.0 304050.0 ; + RECT 155250.0 282450.0 156150.0 285150.0 ; + RECT 49800.0 298200.0 55050.0 299100.0 ; + RECT 149850.0 285150.0 150750.0 287850.0 ; + RECT 155250.0 0.0 156150.0 440700.0 ; + RECT 157950.0 0.0 158850.0 440700.0 ; + RECT 160650.0 0.0 161550.0 440700.0 ; + RECT 163350.0 0.0 164250.0 440700.0 ; + RECT 166050.0 0.0 166950.0 440700.0 ; + RECT 168750.0 0.0 169650.0 440700.0 ; + RECT 134550.0 37500.0 135450.0 199500.0 ; + RECT 137250.0 37500.0 138150.0 199500.0 ; + RECT 139950.0 37500.0 140850.0 199500.0 ; + RECT 142650.0 37500.0 143550.0 199500.0 ; + RECT 181650.0 422700.0 182550.0 423900.0 ; + RECT 191850.0 422700.0 192750.0 423900.0 ; RECT 180150.0 5850.0 181050.0 6750.0 ; RECT 177000.0 5850.0 180600.0 6750.0 ; RECT 180150.0 6300.0 181050.0 8100.0 ; RECT 190350.0 5850.0 191250.0 6750.0 ; RECT 187200.0 5850.0 190800.0 6750.0 ; RECT 190350.0 6300.0 191250.0 8100.0 ; - RECT 102600.0 420000.0 103500.0 422100.0 ; - RECT 175500.0 199200.0 185700.0 213000.0 ; - RECT 175500.0 226800.0 185700.0 213000.0 ; - RECT 175500.0 226800.0 185700.0 240600.0 ; - RECT 175500.0 254400.0 185700.0 240600.0 ; - RECT 175500.0 254400.0 185700.0 268200.0 ; - RECT 175500.0 282000.0 185700.0 268200.0 ; - RECT 175500.0 282000.0 185700.0 295800.0 ; - RECT 175500.0 309600.0 185700.0 295800.0 ; - RECT 175500.0 309600.0 185700.0 323400.0 ; - RECT 175500.0 337200.0 185700.0 323400.0 ; - RECT 175500.0 337200.0 185700.0 351000.0 ; - RECT 175500.0 364800.0 185700.0 351000.0 ; - RECT 175500.0 364800.0 185700.0 378600.0 ; - RECT 175500.0 392400.0 185700.0 378600.0 ; - RECT 175500.0 392400.0 185700.0 406200.0 ; - RECT 175500.0 420000.0 185700.0 406200.0 ; - RECT 185700.0 199200.0 195900.0 213000.0 ; - RECT 185700.0 226800.0 195900.0 213000.0 ; - RECT 185700.0 226800.0 195900.0 240600.0 ; - RECT 185700.0 254400.0 195900.0 240600.0 ; - RECT 185700.0 254400.0 195900.0 268200.0 ; - RECT 185700.0 282000.0 195900.0 268200.0 ; - RECT 185700.0 282000.0 195900.0 295800.0 ; - RECT 185700.0 309600.0 195900.0 295800.0 ; - RECT 185700.0 309600.0 195900.0 323400.0 ; - RECT 185700.0 337200.0 195900.0 323400.0 ; - RECT 185700.0 337200.0 195900.0 351000.0 ; - RECT 185700.0 364800.0 195900.0 351000.0 ; - RECT 185700.0 364800.0 195900.0 378600.0 ; - RECT 185700.0 392400.0 195900.0 378600.0 ; - RECT 185700.0 392400.0 195900.0 406200.0 ; - RECT 185700.0 420000.0 195900.0 406200.0 ; - RECT 178500.0 199800.0 179700.0 421800.0 ; - RECT 181500.0 198600.0 182700.0 420600.0 ; - RECT 188700.0 199800.0 189900.0 421800.0 ; - RECT 191700.0 198600.0 192900.0 420600.0 ; - RECT 174900.0 198600.0 176100.0 420600.0 ; - RECT 185100.0 198600.0 186300.0 420600.0 ; - RECT 195300.0 198600.0 196500.0 420600.0 ; - RECT 178500.0 422400.0 179700.0 423600.0 ; - RECT 180900.0 422400.0 182550.0 423600.0 ; - RECT 178500.0 429600.0 179700.0 430800.0 ; - RECT 181650.0 429600.0 184500.0 430800.0 ; - RECT 178500.0 422400.0 179700.0 423600.0 ; - RECT 180900.0 422400.0 182100.0 423600.0 ; - RECT 178500.0 429600.0 179700.0 430800.0 ; - RECT 183300.0 429600.0 184500.0 430800.0 ; - RECT 178650.0 420000.0 179550.0 436800.0 ; - RECT 181650.0 420000.0 182550.0 436800.0 ; - RECT 188700.0 422400.0 189900.0 423600.0 ; - RECT 191100.0 422400.0 192750.0 423600.0 ; - RECT 188700.0 429600.0 189900.0 430800.0 ; - RECT 191850.0 429600.0 194700.0 430800.0 ; - RECT 188700.0 422400.0 189900.0 423600.0 ; - RECT 191100.0 422400.0 192300.0 423600.0 ; - RECT 188700.0 429600.0 189900.0 430800.0 ; - RECT 193500.0 429600.0 194700.0 430800.0 ; - RECT 188850.0 420000.0 189750.0 436800.0 ; - RECT 191850.0 420000.0 192750.0 436800.0 ; - RECT 178650.0 420000.0 179550.0 436800.0 ; - RECT 181650.0 420000.0 182550.0 436800.0 ; - RECT 188850.0 420000.0 189750.0 436800.0 ; - RECT 191850.0 420000.0 192750.0 436800.0 ; - RECT 175500.0 150300.0 185700.0 199200.0 ; - RECT 185700.0 150300.0 195900.0 199200.0 ; - RECT 178500.0 150300.0 179700.0 163500.0 ; - RECT 181500.0 150300.0 182700.0 163500.0 ; - RECT 188700.0 150300.0 189900.0 163500.0 ; - RECT 191700.0 150300.0 192900.0 163500.0 ; - RECT 175500.0 90000.0 185700.0 150300.0 ; - RECT 185700.0 90000.0 195900.0 150300.0 ; - RECT 180000.0 90000.0 181200.0 92700.0 ; - RECT 190200.0 90000.0 191400.0 92700.0 ; - RECT 178500.0 148200.0 179700.0 150300.0 ; - RECT 181500.0 142800.0 182700.0 150300.0 ; - RECT 188700.0 148200.0 189900.0 150300.0 ; - RECT 191700.0 142800.0 192900.0 150300.0 ; + RECT 102600.0 420300.0 103500.0 422400.0 ; + RECT 175500.0 199500.0 185700.0 213300.0 ; + RECT 175500.0 227100.0 185700.0 213300.0 ; + RECT 175500.0 227100.0 185700.0 240900.0 ; + RECT 175500.0 254700.0 185700.0 240900.0 ; + RECT 175500.0 254700.0 185700.0 268500.0 ; + RECT 175500.0 282300.0 185700.0 268500.0 ; + RECT 175500.0 282300.0 185700.0 296100.0 ; + RECT 175500.0 309900.0 185700.0 296100.0 ; + RECT 175500.0 309900.0 185700.0 323700.0 ; + RECT 175500.0 337500.0 185700.0 323700.0 ; + RECT 175500.0 337500.0 185700.0 351300.0 ; + RECT 175500.0 365100.0 185700.0 351300.0 ; + RECT 175500.0 365100.0 185700.0 378900.0 ; + RECT 175500.0 392700.0 185700.0 378900.0 ; + RECT 175500.0 392700.0 185700.0 406500.0 ; + RECT 175500.0 420300.0 185700.0 406500.0 ; + RECT 185700.0 199500.0 195900.0 213300.0 ; + RECT 185700.0 227100.0 195900.0 213300.0 ; + RECT 185700.0 227100.0 195900.0 240900.0 ; + RECT 185700.0 254700.0 195900.0 240900.0 ; + RECT 185700.0 254700.0 195900.0 268500.0 ; + RECT 185700.0 282300.0 195900.0 268500.0 ; + RECT 185700.0 282300.0 195900.0 296100.0 ; + RECT 185700.0 309900.0 195900.0 296100.0 ; + RECT 185700.0 309900.0 195900.0 323700.0 ; + RECT 185700.0 337500.0 195900.0 323700.0 ; + RECT 185700.0 337500.0 195900.0 351300.0 ; + RECT 185700.0 365100.0 195900.0 351300.0 ; + RECT 185700.0 365100.0 195900.0 378900.0 ; + RECT 185700.0 392700.0 195900.0 378900.0 ; + RECT 185700.0 392700.0 195900.0 406500.0 ; + RECT 185700.0 420300.0 195900.0 406500.0 ; + RECT 178500.0 200100.0 179700.0 423900.0 ; + RECT 181500.0 198900.0 182700.0 422700.0 ; + RECT 188700.0 200100.0 189900.0 423900.0 ; + RECT 191700.0 198900.0 192900.0 422700.0 ; + RECT 174900.0 198900.0 176100.0 422700.0 ; + RECT 185100.0 198900.0 186300.0 422700.0 ; + RECT 195300.0 198900.0 196500.0 422700.0 ; + RECT 178500.0 426300.0 179700.0 427500.0 ; + RECT 180900.0 426300.0 182550.0 427500.0 ; + RECT 178500.0 433500.0 179700.0 434700.0 ; + RECT 181650.0 433500.0 184500.0 434700.0 ; + RECT 178500.0 426300.0 179700.0 427500.0 ; + RECT 180900.0 426300.0 182100.0 427500.0 ; + RECT 178500.0 433500.0 179700.0 434700.0 ; + RECT 183300.0 433500.0 184500.0 434700.0 ; + RECT 178650.0 423900.0 179550.0 440700.0 ; + RECT 181650.0 423900.0 182550.0 440700.0 ; + RECT 188700.0 426300.0 189900.0 427500.0 ; + RECT 191100.0 426300.0 192750.0 427500.0 ; + RECT 188700.0 433500.0 189900.0 434700.0 ; + RECT 191850.0 433500.0 194700.0 434700.0 ; + RECT 188700.0 426300.0 189900.0 427500.0 ; + RECT 191100.0 426300.0 192300.0 427500.0 ; + RECT 188700.0 433500.0 189900.0 434700.0 ; + RECT 193500.0 433500.0 194700.0 434700.0 ; + RECT 188850.0 423900.0 189750.0 440700.0 ; + RECT 191850.0 423900.0 192750.0 440700.0 ; + RECT 178650.0 423900.0 179550.0 440700.0 ; + RECT 181650.0 423900.0 182550.0 440700.0 ; + RECT 188850.0 423900.0 189750.0 440700.0 ; + RECT 191850.0 423900.0 192750.0 440700.0 ; + RECT 175500.0 150600.0 185700.0 199500.0 ; + RECT 185700.0 150600.0 195900.0 199500.0 ; + RECT 178500.0 150600.0 179700.0 163800.0 ; + RECT 181500.0 150600.0 182700.0 163800.0 ; + RECT 188700.0 150600.0 189900.0 163800.0 ; + RECT 191700.0 150600.0 192900.0 163800.0 ; + RECT 175500.0 90000.0 185700.0 150600.0 ; + RECT 185700.0 90000.0 195900.0 150600.0 ; + RECT 180000.0 90000.0 181200.0 93000.0 ; + RECT 190200.0 90000.0 191400.0 93000.0 ; + RECT 178500.0 148500.0 179700.0 150600.0 ; + RECT 181500.0 143100.0 182700.0 150600.0 ; + RECT 188700.0 148500.0 189900.0 150600.0 ; + RECT 191700.0 143100.0 192900.0 150600.0 ; RECT 175500.0 30000.0 185700.0 90000.0 ; RECT 195900.0 30000.0 185700.0 90000.0 ; RECT 180000.0 87600.0 182700.0 88800.0 ; @@ -4411,840 +4409,840 @@ MACRO sram_2_16_1_scn3me_subm RECT 190200.0 15000.0 191400.0 8100.0 ; RECT 180000.0 30000.0 181200.0 28500.0 ; RECT 190200.0 30000.0 191400.0 28500.0 ; - RECT 59100.0 88800.0 60000.0 420000.0 ; - RECT 61200.0 88800.0 62100.0 420000.0 ; - RECT 63300.0 88800.0 64200.0 420000.0 ; - RECT 65400.0 88800.0 66300.0 420000.0 ; - RECT 67500.0 88800.0 68400.0 420000.0 ; - RECT 69600.0 88800.0 70500.0 420000.0 ; - RECT 71700.0 88800.0 72600.0 420000.0 ; - RECT 73800.0 88800.0 74700.0 420000.0 ; - RECT 105900.0 88800.0 105000.0 142200.0 ; - RECT 102900.0 88800.0 102000.0 142200.0 ; - RECT 111900.0 88800.0 111000.0 142200.0 ; - RECT 108900.0 88800.0 108000.0 142200.0 ; - RECT 95550.0 96150.0 94650.0 97050.0 ; - RECT 93150.0 96150.0 92250.0 97050.0 ; - RECT 95550.0 96600.0 94650.0 99450.0 ; - RECT 95100.0 96150.0 92700.0 97050.0 ; - RECT 93150.0 91950.0 92250.0 96600.0 ; - RECT 95700.0 99450.0 94500.0 100650.0 ; - RECT 93300.0 90750.0 92100.0 91950.0 ; - RECT 92100.0 96000.0 93300.0 97200.0 ; - RECT 95550.0 109050.0 94650.0 108150.0 ; - RECT 93150.0 109050.0 92250.0 108150.0 ; - RECT 95550.0 108600.0 94650.0 105750.0 ; - RECT 95100.0 109050.0 92700.0 108150.0 ; - RECT 93150.0 113250.0 92250.0 108600.0 ; - RECT 95700.0 105750.0 94500.0 104550.0 ; - RECT 93300.0 114450.0 92100.0 113250.0 ; - RECT 92100.0 109200.0 93300.0 108000.0 ; - RECT 95550.0 123750.0 94650.0 124650.0 ; - RECT 93150.0 123750.0 92250.0 124650.0 ; - RECT 95550.0 124200.0 94650.0 127050.0 ; - RECT 95100.0 123750.0 92700.0 124650.0 ; - RECT 93150.0 119550.0 92250.0 124200.0 ; - RECT 95700.0 127050.0 94500.0 128250.0 ; - RECT 93300.0 118350.0 92100.0 119550.0 ; - RECT 92100.0 123600.0 93300.0 124800.0 ; - RECT 95550.0 136650.0 94650.0 135750.0 ; - RECT 93150.0 136650.0 92250.0 135750.0 ; - RECT 95550.0 136200.0 94650.0 133350.0 ; - RECT 95100.0 136650.0 92700.0 135750.0 ; - RECT 93150.0 140850.0 92250.0 136200.0 ; - RECT 95700.0 133350.0 94500.0 132150.0 ; - RECT 93300.0 142050.0 92100.0 140850.0 ; - RECT 92100.0 136800.0 93300.0 135600.0 ; - RECT 110850.0 99300.0 112050.0 100500.0 ; - RECT 129450.0 94800.0 130650.0 96000.0 ; - RECT 107850.0 113100.0 109050.0 114300.0 ; - RECT 126450.0 109200.0 127650.0 110400.0 ; - RECT 129450.0 117900.0 130650.0 119100.0 ; - RECT 104850.0 117900.0 106050.0 119100.0 ; - RECT 126450.0 131700.0 127650.0 132900.0 ; - RECT 101850.0 131700.0 103050.0 132900.0 ; - RECT 110850.0 93300.0 112050.0 94500.0 ; - RECT 107850.0 96000.0 109050.0 97200.0 ; - RECT 104850.0 110700.0 106050.0 111900.0 ; - RECT 107850.0 108000.0 109050.0 109200.0 ; - RECT 110850.0 120900.0 112050.0 122100.0 ; - RECT 101850.0 123600.0 103050.0 124800.0 ; - RECT 104850.0 138300.0 106050.0 139500.0 ; - RECT 101850.0 135600.0 103050.0 136800.0 ; - RECT 130500.0 88800.0 129600.0 142200.0 ; - RECT 127500.0 88800.0 126600.0 142200.0 ; - RECT 105900.0 144000.0 105000.0 197400.0 ; - RECT 102900.0 144000.0 102000.0 197400.0 ; - RECT 111900.0 144000.0 111000.0 197400.0 ; - RECT 108900.0 144000.0 108000.0 197400.0 ; - RECT 95550.0 151350.0 94650.0 152250.0 ; - RECT 93150.0 151350.0 92250.0 152250.0 ; - RECT 95550.0 151800.0 94650.0 154650.0 ; - RECT 95100.0 151350.0 92700.0 152250.0 ; - RECT 93150.0 147150.0 92250.0 151800.0 ; - RECT 95700.0 154650.0 94500.0 155850.0 ; - RECT 93300.0 145950.0 92100.0 147150.0 ; - RECT 92100.0 151200.0 93300.0 152400.0 ; - RECT 95550.0 164250.0 94650.0 163350.0 ; - RECT 93150.0 164250.0 92250.0 163350.0 ; - RECT 95550.0 163800.0 94650.0 160950.0 ; - RECT 95100.0 164250.0 92700.0 163350.0 ; - RECT 93150.0 168450.0 92250.0 163800.0 ; - RECT 95700.0 160950.0 94500.0 159750.0 ; - RECT 93300.0 169650.0 92100.0 168450.0 ; - RECT 92100.0 164400.0 93300.0 163200.0 ; - RECT 95550.0 178950.0 94650.0 179850.0 ; - RECT 93150.0 178950.0 92250.0 179850.0 ; - RECT 95550.0 179400.0 94650.0 182250.0 ; - RECT 95100.0 178950.0 92700.0 179850.0 ; - RECT 93150.0 174750.0 92250.0 179400.0 ; - RECT 95700.0 182250.0 94500.0 183450.0 ; - RECT 93300.0 173550.0 92100.0 174750.0 ; - RECT 92100.0 178800.0 93300.0 180000.0 ; - RECT 95550.0 191850.0 94650.0 190950.0 ; - RECT 93150.0 191850.0 92250.0 190950.0 ; - RECT 95550.0 191400.0 94650.0 188550.0 ; - RECT 95100.0 191850.0 92700.0 190950.0 ; - RECT 93150.0 196050.0 92250.0 191400.0 ; - RECT 95700.0 188550.0 94500.0 187350.0 ; - RECT 93300.0 197250.0 92100.0 196050.0 ; - RECT 92100.0 192000.0 93300.0 190800.0 ; - RECT 110850.0 154500.0 112050.0 155700.0 ; - RECT 129450.0 150000.0 130650.0 151200.0 ; - RECT 107850.0 168300.0 109050.0 169500.0 ; - RECT 126450.0 164400.0 127650.0 165600.0 ; - RECT 129450.0 173100.0 130650.0 174300.0 ; - RECT 104850.0 173100.0 106050.0 174300.0 ; - RECT 126450.0 186900.0 127650.0 188100.0 ; - RECT 101850.0 186900.0 103050.0 188100.0 ; - RECT 110850.0 148500.0 112050.0 149700.0 ; - RECT 107850.0 151200.0 109050.0 152400.0 ; - RECT 104850.0 165900.0 106050.0 167100.0 ; - RECT 107850.0 163200.0 109050.0 164400.0 ; - RECT 110850.0 176100.0 112050.0 177300.0 ; - RECT 101850.0 178800.0 103050.0 180000.0 ; - RECT 104850.0 193500.0 106050.0 194700.0 ; - RECT 101850.0 190800.0 103050.0 192000.0 ; - RECT 130500.0 144000.0 129600.0 197400.0 ; - RECT 127500.0 144000.0 126600.0 197400.0 ; - RECT 80250.0 206550.0 81150.0 207450.0 ; - RECT 82650.0 206550.0 83550.0 207450.0 ; - RECT 80250.0 207000.0 81150.0 209850.0 ; - RECT 80700.0 206550.0 83100.0 207450.0 ; - RECT 82650.0 202350.0 83550.0 207000.0 ; - RECT 80100.0 209850.0 81300.0 211050.0 ; - RECT 82500.0 201150.0 83700.0 202350.0 ; - RECT 83700.0 206400.0 82500.0 207600.0 ; - RECT 80250.0 219450.0 81150.0 218550.0 ; - RECT 82650.0 219450.0 83550.0 218550.0 ; - RECT 80250.0 219000.0 81150.0 216150.0 ; - RECT 80700.0 219450.0 83100.0 218550.0 ; - RECT 82650.0 223650.0 83550.0 219000.0 ; - RECT 80100.0 216150.0 81300.0 214950.0 ; - RECT 82500.0 224850.0 83700.0 223650.0 ; - RECT 83700.0 219600.0 82500.0 218400.0 ; - RECT 80250.0 234150.0 81150.0 235050.0 ; - RECT 82650.0 234150.0 83550.0 235050.0 ; - RECT 80250.0 234600.0 81150.0 237450.0 ; - RECT 80700.0 234150.0 83100.0 235050.0 ; - RECT 82650.0 229950.0 83550.0 234600.0 ; - RECT 80100.0 237450.0 81300.0 238650.0 ; - RECT 82500.0 228750.0 83700.0 229950.0 ; - RECT 83700.0 234000.0 82500.0 235200.0 ; - RECT 80250.0 247050.0 81150.0 246150.0 ; - RECT 82650.0 247050.0 83550.0 246150.0 ; - RECT 80250.0 246600.0 81150.0 243750.0 ; - RECT 80700.0 247050.0 83100.0 246150.0 ; - RECT 82650.0 251250.0 83550.0 246600.0 ; - RECT 80100.0 243750.0 81300.0 242550.0 ; - RECT 82500.0 252450.0 83700.0 251250.0 ; - RECT 83700.0 247200.0 82500.0 246000.0 ; - RECT 80250.0 261750.0 81150.0 262650.0 ; - RECT 82650.0 261750.0 83550.0 262650.0 ; - RECT 80250.0 262200.0 81150.0 265050.0 ; - RECT 80700.0 261750.0 83100.0 262650.0 ; - RECT 82650.0 257550.0 83550.0 262200.0 ; - RECT 80100.0 265050.0 81300.0 266250.0 ; - RECT 82500.0 256350.0 83700.0 257550.0 ; - RECT 83700.0 261600.0 82500.0 262800.0 ; - RECT 80250.0 274650.0 81150.0 273750.0 ; - RECT 82650.0 274650.0 83550.0 273750.0 ; - RECT 80250.0 274200.0 81150.0 271350.0 ; - RECT 80700.0 274650.0 83100.0 273750.0 ; - RECT 82650.0 278850.0 83550.0 274200.0 ; - RECT 80100.0 271350.0 81300.0 270150.0 ; - RECT 82500.0 280050.0 83700.0 278850.0 ; - RECT 83700.0 274800.0 82500.0 273600.0 ; - RECT 80250.0 289350.0 81150.0 290250.0 ; - RECT 82650.0 289350.0 83550.0 290250.0 ; - RECT 80250.0 289800.0 81150.0 292650.0 ; - RECT 80700.0 289350.0 83100.0 290250.0 ; - RECT 82650.0 285150.0 83550.0 289800.0 ; - RECT 80100.0 292650.0 81300.0 293850.0 ; - RECT 82500.0 283950.0 83700.0 285150.0 ; - RECT 83700.0 289200.0 82500.0 290400.0 ; - RECT 80250.0 302250.0 81150.0 301350.0 ; - RECT 82650.0 302250.0 83550.0 301350.0 ; - RECT 80250.0 301800.0 81150.0 298950.0 ; - RECT 80700.0 302250.0 83100.0 301350.0 ; - RECT 82650.0 306450.0 83550.0 301800.0 ; - RECT 80100.0 298950.0 81300.0 297750.0 ; - RECT 82500.0 307650.0 83700.0 306450.0 ; - RECT 83700.0 302400.0 82500.0 301200.0 ; - RECT 80250.0 316950.0 81150.0 317850.0 ; - RECT 82650.0 316950.0 83550.0 317850.0 ; - RECT 80250.0 317400.0 81150.0 320250.0 ; - RECT 80700.0 316950.0 83100.0 317850.0 ; - RECT 82650.0 312750.0 83550.0 317400.0 ; - RECT 80100.0 320250.0 81300.0 321450.0 ; - RECT 82500.0 311550.0 83700.0 312750.0 ; - RECT 83700.0 316800.0 82500.0 318000.0 ; - RECT 80250.0 329850.0 81150.0 328950.0 ; - RECT 82650.0 329850.0 83550.0 328950.0 ; - RECT 80250.0 329400.0 81150.0 326550.0 ; - RECT 80700.0 329850.0 83100.0 328950.0 ; - RECT 82650.0 334050.0 83550.0 329400.0 ; - RECT 80100.0 326550.0 81300.0 325350.0 ; - RECT 82500.0 335250.0 83700.0 334050.0 ; - RECT 83700.0 330000.0 82500.0 328800.0 ; - RECT 80250.0 344550.0 81150.0 345450.0 ; - RECT 82650.0 344550.0 83550.0 345450.0 ; - RECT 80250.0 345000.0 81150.0 347850.0 ; - RECT 80700.0 344550.0 83100.0 345450.0 ; - RECT 82650.0 340350.0 83550.0 345000.0 ; - RECT 80100.0 347850.0 81300.0 349050.0 ; - RECT 82500.0 339150.0 83700.0 340350.0 ; - RECT 83700.0 344400.0 82500.0 345600.0 ; - RECT 80250.0 357450.0 81150.0 356550.0 ; - RECT 82650.0 357450.0 83550.0 356550.0 ; - RECT 80250.0 357000.0 81150.0 354150.0 ; - RECT 80700.0 357450.0 83100.0 356550.0 ; - RECT 82650.0 361650.0 83550.0 357000.0 ; - RECT 80100.0 354150.0 81300.0 352950.0 ; - RECT 82500.0 362850.0 83700.0 361650.0 ; - RECT 83700.0 357600.0 82500.0 356400.0 ; - RECT 80250.0 372150.0 81150.0 373050.0 ; - RECT 82650.0 372150.0 83550.0 373050.0 ; - RECT 80250.0 372600.0 81150.0 375450.0 ; - RECT 80700.0 372150.0 83100.0 373050.0 ; - RECT 82650.0 367950.0 83550.0 372600.0 ; - RECT 80100.0 375450.0 81300.0 376650.0 ; - RECT 82500.0 366750.0 83700.0 367950.0 ; - RECT 83700.0 372000.0 82500.0 373200.0 ; - RECT 80250.0 385050.0 81150.0 384150.0 ; - RECT 82650.0 385050.0 83550.0 384150.0 ; - RECT 80250.0 384600.0 81150.0 381750.0 ; - RECT 80700.0 385050.0 83100.0 384150.0 ; - RECT 82650.0 389250.0 83550.0 384600.0 ; - RECT 80100.0 381750.0 81300.0 380550.0 ; - RECT 82500.0 390450.0 83700.0 389250.0 ; - RECT 83700.0 385200.0 82500.0 384000.0 ; - RECT 80250.0 399750.0 81150.0 400650.0 ; - RECT 82650.0 399750.0 83550.0 400650.0 ; - RECT 80250.0 400200.0 81150.0 403050.0 ; - RECT 80700.0 399750.0 83100.0 400650.0 ; - RECT 82650.0 395550.0 83550.0 400200.0 ; - RECT 80100.0 403050.0 81300.0 404250.0 ; - RECT 82500.0 394350.0 83700.0 395550.0 ; - RECT 83700.0 399600.0 82500.0 400800.0 ; - RECT 80250.0 412650.0 81150.0 411750.0 ; - RECT 82650.0 412650.0 83550.0 411750.0 ; - RECT 80250.0 412200.0 81150.0 409350.0 ; - RECT 80700.0 412650.0 83100.0 411750.0 ; - RECT 82650.0 416850.0 83550.0 412200.0 ; - RECT 80100.0 409350.0 81300.0 408150.0 ; - RECT 82500.0 418050.0 83700.0 416850.0 ; - RECT 83700.0 412800.0 82500.0 411600.0 ; - RECT 60150.0 94800.0 58950.0 96000.0 ; - RECT 62250.0 109200.0 61050.0 110400.0 ; - RECT 64350.0 122400.0 63150.0 123600.0 ; - RECT 66450.0 136800.0 65250.0 138000.0 ; - RECT 68550.0 150000.0 67350.0 151200.0 ; - RECT 70650.0 164400.0 69450.0 165600.0 ; - RECT 72750.0 177600.0 71550.0 178800.0 ; - RECT 74850.0 192000.0 73650.0 193200.0 ; - RECT 60150.0 206400.0 58950.0 207600.0 ; - RECT 68550.0 203700.0 67350.0 204900.0 ; - RECT 60150.0 218400.0 58950.0 219600.0 ; - RECT 70650.0 221100.0 69450.0 222300.0 ; - RECT 60150.0 234000.0 58950.0 235200.0 ; - RECT 72750.0 231300.0 71550.0 232500.0 ; - RECT 60150.0 246000.0 58950.0 247200.0 ; - RECT 74850.0 248700.0 73650.0 249900.0 ; - RECT 62250.0 261600.0 61050.0 262800.0 ; - RECT 68550.0 258900.0 67350.0 260100.0 ; - RECT 62250.0 273600.0 61050.0 274800.0 ; - RECT 70650.0 276300.0 69450.0 277500.0 ; - RECT 62250.0 289200.0 61050.0 290400.0 ; - RECT 72750.0 286500.0 71550.0 287700.0 ; - RECT 62250.0 301200.0 61050.0 302400.0 ; - RECT 74850.0 303900.0 73650.0 305100.0 ; - RECT 64350.0 316800.0 63150.0 318000.0 ; - RECT 68550.0 314100.0 67350.0 315300.0 ; - RECT 64350.0 328800.0 63150.0 330000.0 ; - RECT 70650.0 331500.0 69450.0 332700.0 ; - RECT 64350.0 344400.0 63150.0 345600.0 ; - RECT 72750.0 341700.0 71550.0 342900.0 ; - RECT 64350.0 356400.0 63150.0 357600.0 ; - RECT 74850.0 359100.0 73650.0 360300.0 ; - RECT 66450.0 372000.0 65250.0 373200.0 ; - RECT 68550.0 369300.0 67350.0 370500.0 ; - RECT 66450.0 384000.0 65250.0 385200.0 ; - RECT 70650.0 386700.0 69450.0 387900.0 ; - RECT 66450.0 399600.0 65250.0 400800.0 ; - RECT 72750.0 396900.0 71550.0 398100.0 ; - RECT 66450.0 411600.0 65250.0 412800.0 ; - RECT 74850.0 414300.0 73650.0 415500.0 ; - RECT 129600.0 88800.0 130500.0 142200.0 ; - RECT 126600.0 88800.0 127500.0 142200.0 ; - RECT 129600.0 144000.0 130500.0 197400.0 ; - RECT 126600.0 144000.0 127500.0 197400.0 ; - RECT 104550.0 203850.0 105450.0 204750.0 ; - RECT 104550.0 203400.0 105450.0 204300.0 ; - RECT 105000.0 203850.0 121200.0 204750.0 ; - RECT 104550.0 221250.0 105450.0 222150.0 ; - RECT 104550.0 221700.0 105450.0 222600.0 ; - RECT 105000.0 221250.0 121200.0 222150.0 ; - RECT 104550.0 231450.0 105450.0 232350.0 ; - RECT 104550.0 231000.0 105450.0 231900.0 ; - RECT 105000.0 231450.0 121200.0 232350.0 ; - RECT 104550.0 248850.0 105450.0 249750.0 ; - RECT 104550.0 249300.0 105450.0 250200.0 ; - RECT 105000.0 248850.0 121200.0 249750.0 ; - RECT 104550.0 259050.0 105450.0 259950.0 ; - RECT 104550.0 258600.0 105450.0 259500.0 ; - RECT 105000.0 259050.0 121200.0 259950.0 ; - RECT 104550.0 276450.0 105450.0 277350.0 ; - RECT 104550.0 276900.0 105450.0 277800.0 ; - RECT 105000.0 276450.0 121200.0 277350.0 ; - RECT 104550.0 286650.0 105450.0 287550.0 ; - RECT 104550.0 286200.0 105450.0 287100.0 ; - RECT 105000.0 286650.0 121200.0 287550.0 ; - RECT 104550.0 304050.0 105450.0 304950.0 ; - RECT 104550.0 304500.0 105450.0 305400.0 ; - RECT 105000.0 304050.0 121200.0 304950.0 ; - RECT 104550.0 314250.0 105450.0 315150.0 ; - RECT 104550.0 313800.0 105450.0 314700.0 ; - RECT 105000.0 314250.0 121200.0 315150.0 ; - RECT 104550.0 331650.0 105450.0 332550.0 ; - RECT 104550.0 332100.0 105450.0 333000.0 ; - RECT 105000.0 331650.0 121200.0 332550.0 ; - RECT 104550.0 341850.0 105450.0 342750.0 ; - RECT 104550.0 341400.0 105450.0 342300.0 ; - RECT 105000.0 341850.0 121200.0 342750.0 ; - RECT 104550.0 359250.0 105450.0 360150.0 ; - RECT 104550.0 359700.0 105450.0 360600.0 ; - RECT 105000.0 359250.0 121200.0 360150.0 ; - RECT 104550.0 369450.0 105450.0 370350.0 ; - RECT 104550.0 369000.0 105450.0 369900.0 ; - RECT 105000.0 369450.0 121200.0 370350.0 ; - RECT 104550.0 386850.0 105450.0 387750.0 ; - RECT 104550.0 387300.0 105450.0 388200.0 ; - RECT 105000.0 386850.0 121200.0 387750.0 ; - RECT 104550.0 397050.0 105450.0 397950.0 ; - RECT 104550.0 396600.0 105450.0 397500.0 ; - RECT 105000.0 397050.0 121200.0 397950.0 ; - RECT 104550.0 414450.0 105450.0 415350.0 ; - RECT 104550.0 414900.0 105450.0 415800.0 ; - RECT 105000.0 414450.0 121200.0 415350.0 ; - RECT 120150.0 206550.0 121050.0 207450.0 ; - RECT 122550.0 206550.0 123450.0 207450.0 ; - RECT 120150.0 207000.0 121050.0 209850.0 ; - RECT 120600.0 206550.0 123000.0 207450.0 ; - RECT 122550.0 202350.0 123450.0 207000.0 ; - RECT 120000.0 209850.0 121200.0 211050.0 ; - RECT 122400.0 201150.0 123600.0 202350.0 ; - RECT 123600.0 206400.0 122400.0 207600.0 ; - RECT 102450.0 205200.0 103650.0 206400.0 ; - RECT 104400.0 202800.0 105600.0 204000.0 ; - RECT 121200.0 203700.0 120000.0 204900.0 ; - RECT 120150.0 219450.0 121050.0 218550.0 ; - RECT 122550.0 219450.0 123450.0 218550.0 ; - RECT 120150.0 219000.0 121050.0 216150.0 ; - RECT 120600.0 219450.0 123000.0 218550.0 ; - RECT 122550.0 223650.0 123450.0 219000.0 ; - RECT 120000.0 216150.0 121200.0 214950.0 ; - RECT 122400.0 224850.0 123600.0 223650.0 ; - RECT 123600.0 219600.0 122400.0 218400.0 ; - RECT 102450.0 219600.0 103650.0 220800.0 ; - RECT 104400.0 222000.0 105600.0 223200.0 ; - RECT 121200.0 221100.0 120000.0 222300.0 ; - RECT 120150.0 234150.0 121050.0 235050.0 ; - RECT 122550.0 234150.0 123450.0 235050.0 ; - RECT 120150.0 234600.0 121050.0 237450.0 ; - RECT 120600.0 234150.0 123000.0 235050.0 ; - RECT 122550.0 229950.0 123450.0 234600.0 ; - RECT 120000.0 237450.0 121200.0 238650.0 ; - RECT 122400.0 228750.0 123600.0 229950.0 ; - RECT 123600.0 234000.0 122400.0 235200.0 ; - RECT 102450.0 232800.0 103650.0 234000.0 ; - RECT 104400.0 230400.0 105600.0 231600.0 ; - RECT 121200.0 231300.0 120000.0 232500.0 ; - RECT 120150.0 247050.0 121050.0 246150.0 ; - RECT 122550.0 247050.0 123450.0 246150.0 ; - RECT 120150.0 246600.0 121050.0 243750.0 ; - RECT 120600.0 247050.0 123000.0 246150.0 ; - RECT 122550.0 251250.0 123450.0 246600.0 ; - RECT 120000.0 243750.0 121200.0 242550.0 ; - RECT 122400.0 252450.0 123600.0 251250.0 ; - RECT 123600.0 247200.0 122400.0 246000.0 ; - RECT 102450.0 247200.0 103650.0 248400.0 ; - RECT 104400.0 249600.0 105600.0 250800.0 ; - RECT 121200.0 248700.0 120000.0 249900.0 ; - RECT 120150.0 261750.0 121050.0 262650.0 ; - RECT 122550.0 261750.0 123450.0 262650.0 ; - RECT 120150.0 262200.0 121050.0 265050.0 ; - RECT 120600.0 261750.0 123000.0 262650.0 ; - RECT 122550.0 257550.0 123450.0 262200.0 ; - RECT 120000.0 265050.0 121200.0 266250.0 ; - RECT 122400.0 256350.0 123600.0 257550.0 ; - RECT 123600.0 261600.0 122400.0 262800.0 ; - RECT 102450.0 260400.0 103650.0 261600.0 ; - RECT 104400.0 258000.0 105600.0 259200.0 ; - RECT 121200.0 258900.0 120000.0 260100.0 ; - RECT 120150.0 274650.0 121050.0 273750.0 ; - RECT 122550.0 274650.0 123450.0 273750.0 ; - RECT 120150.0 274200.0 121050.0 271350.0 ; - RECT 120600.0 274650.0 123000.0 273750.0 ; - RECT 122550.0 278850.0 123450.0 274200.0 ; - RECT 120000.0 271350.0 121200.0 270150.0 ; - RECT 122400.0 280050.0 123600.0 278850.0 ; - RECT 123600.0 274800.0 122400.0 273600.0 ; - RECT 102450.0 274800.0 103650.0 276000.0 ; - RECT 104400.0 277200.0 105600.0 278400.0 ; - RECT 121200.0 276300.0 120000.0 277500.0 ; - RECT 120150.0 289350.0 121050.0 290250.0 ; - RECT 122550.0 289350.0 123450.0 290250.0 ; - RECT 120150.0 289800.0 121050.0 292650.0 ; - RECT 120600.0 289350.0 123000.0 290250.0 ; - RECT 122550.0 285150.0 123450.0 289800.0 ; - RECT 120000.0 292650.0 121200.0 293850.0 ; - RECT 122400.0 283950.0 123600.0 285150.0 ; - RECT 123600.0 289200.0 122400.0 290400.0 ; - RECT 102450.0 288000.0 103650.0 289200.0 ; - RECT 104400.0 285600.0 105600.0 286800.0 ; - RECT 121200.0 286500.0 120000.0 287700.0 ; - RECT 120150.0 302250.0 121050.0 301350.0 ; - RECT 122550.0 302250.0 123450.0 301350.0 ; - RECT 120150.0 301800.0 121050.0 298950.0 ; - RECT 120600.0 302250.0 123000.0 301350.0 ; - RECT 122550.0 306450.0 123450.0 301800.0 ; - RECT 120000.0 298950.0 121200.0 297750.0 ; - RECT 122400.0 307650.0 123600.0 306450.0 ; - RECT 123600.0 302400.0 122400.0 301200.0 ; - RECT 102450.0 302400.0 103650.0 303600.0 ; - RECT 104400.0 304800.0 105600.0 306000.0 ; - RECT 121200.0 303900.0 120000.0 305100.0 ; - RECT 120150.0 316950.0 121050.0 317850.0 ; - RECT 122550.0 316950.0 123450.0 317850.0 ; - RECT 120150.0 317400.0 121050.0 320250.0 ; - RECT 120600.0 316950.0 123000.0 317850.0 ; - RECT 122550.0 312750.0 123450.0 317400.0 ; - RECT 120000.0 320250.0 121200.0 321450.0 ; - RECT 122400.0 311550.0 123600.0 312750.0 ; - RECT 123600.0 316800.0 122400.0 318000.0 ; - RECT 102450.0 315600.0 103650.0 316800.0 ; - RECT 104400.0 313200.0 105600.0 314400.0 ; - RECT 121200.0 314100.0 120000.0 315300.0 ; - RECT 120150.0 329850.0 121050.0 328950.0 ; - RECT 122550.0 329850.0 123450.0 328950.0 ; - RECT 120150.0 329400.0 121050.0 326550.0 ; - RECT 120600.0 329850.0 123000.0 328950.0 ; - RECT 122550.0 334050.0 123450.0 329400.0 ; - RECT 120000.0 326550.0 121200.0 325350.0 ; - RECT 122400.0 335250.0 123600.0 334050.0 ; - RECT 123600.0 330000.0 122400.0 328800.0 ; - RECT 102450.0 330000.0 103650.0 331200.0 ; - RECT 104400.0 332400.0 105600.0 333600.0 ; - RECT 121200.0 331500.0 120000.0 332700.0 ; - RECT 120150.0 344550.0 121050.0 345450.0 ; - RECT 122550.0 344550.0 123450.0 345450.0 ; - RECT 120150.0 345000.0 121050.0 347850.0 ; - RECT 120600.0 344550.0 123000.0 345450.0 ; - RECT 122550.0 340350.0 123450.0 345000.0 ; - RECT 120000.0 347850.0 121200.0 349050.0 ; - RECT 122400.0 339150.0 123600.0 340350.0 ; - RECT 123600.0 344400.0 122400.0 345600.0 ; - RECT 102450.0 343200.0 103650.0 344400.0 ; - RECT 104400.0 340800.0 105600.0 342000.0 ; - RECT 121200.0 341700.0 120000.0 342900.0 ; - RECT 120150.0 357450.0 121050.0 356550.0 ; - RECT 122550.0 357450.0 123450.0 356550.0 ; - RECT 120150.0 357000.0 121050.0 354150.0 ; - RECT 120600.0 357450.0 123000.0 356550.0 ; - RECT 122550.0 361650.0 123450.0 357000.0 ; - RECT 120000.0 354150.0 121200.0 352950.0 ; - RECT 122400.0 362850.0 123600.0 361650.0 ; - RECT 123600.0 357600.0 122400.0 356400.0 ; - RECT 102450.0 357600.0 103650.0 358800.0 ; - RECT 104400.0 360000.0 105600.0 361200.0 ; - RECT 121200.0 359100.0 120000.0 360300.0 ; - RECT 120150.0 372150.0 121050.0 373050.0 ; - RECT 122550.0 372150.0 123450.0 373050.0 ; - RECT 120150.0 372600.0 121050.0 375450.0 ; - RECT 120600.0 372150.0 123000.0 373050.0 ; - RECT 122550.0 367950.0 123450.0 372600.0 ; - RECT 120000.0 375450.0 121200.0 376650.0 ; - RECT 122400.0 366750.0 123600.0 367950.0 ; - RECT 123600.0 372000.0 122400.0 373200.0 ; - RECT 102450.0 370800.0 103650.0 372000.0 ; - RECT 104400.0 368400.0 105600.0 369600.0 ; - RECT 121200.0 369300.0 120000.0 370500.0 ; - RECT 120150.0 385050.0 121050.0 384150.0 ; - RECT 122550.0 385050.0 123450.0 384150.0 ; - RECT 120150.0 384600.0 121050.0 381750.0 ; - RECT 120600.0 385050.0 123000.0 384150.0 ; - RECT 122550.0 389250.0 123450.0 384600.0 ; - RECT 120000.0 381750.0 121200.0 380550.0 ; - RECT 122400.0 390450.0 123600.0 389250.0 ; - RECT 123600.0 385200.0 122400.0 384000.0 ; - RECT 102450.0 385200.0 103650.0 386400.0 ; - RECT 104400.0 387600.0 105600.0 388800.0 ; - RECT 121200.0 386700.0 120000.0 387900.0 ; - RECT 120150.0 399750.0 121050.0 400650.0 ; - RECT 122550.0 399750.0 123450.0 400650.0 ; - RECT 120150.0 400200.0 121050.0 403050.0 ; - RECT 120600.0 399750.0 123000.0 400650.0 ; - RECT 122550.0 395550.0 123450.0 400200.0 ; - RECT 120000.0 403050.0 121200.0 404250.0 ; - RECT 122400.0 394350.0 123600.0 395550.0 ; - RECT 123600.0 399600.0 122400.0 400800.0 ; - RECT 102450.0 398400.0 103650.0 399600.0 ; - RECT 104400.0 396000.0 105600.0 397200.0 ; - RECT 121200.0 396900.0 120000.0 398100.0 ; - RECT 120150.0 412650.0 121050.0 411750.0 ; - RECT 122550.0 412650.0 123450.0 411750.0 ; - RECT 120150.0 412200.0 121050.0 409350.0 ; - RECT 120600.0 412650.0 123000.0 411750.0 ; - RECT 122550.0 416850.0 123450.0 412200.0 ; - RECT 120000.0 409350.0 121200.0 408150.0 ; - RECT 122400.0 418050.0 123600.0 416850.0 ; - RECT 123600.0 412800.0 122400.0 411600.0 ; - RECT 102450.0 412800.0 103650.0 414000.0 ; - RECT 104400.0 415200.0 105600.0 416400.0 ; - RECT 121200.0 414300.0 120000.0 415500.0 ; - RECT 102600.0 199200.0 103500.0 420000.0 ; - RECT 59100.0 83400.0 119100.0 73200.0 ; - RECT 59100.0 63000.0 119100.0 73200.0 ; - RECT 59100.0 63000.0 119100.0 52800.0 ; - RECT 59100.0 42600.0 119100.0 52800.0 ; - RECT 116700.0 78900.0 117900.0 76200.0 ; - RECT 114600.0 81600.0 119100.0 80400.0 ; - RECT 116700.0 70200.0 117900.0 67500.0 ; - RECT 114600.0 66000.0 119100.0 64800.0 ; - RECT 116700.0 58500.0 117900.0 55800.0 ; - RECT 114600.0 61200.0 119100.0 60000.0 ; - RECT 116700.0 49800.0 117900.0 47100.0 ; - RECT 114600.0 45600.0 119100.0 44400.0 ; - RECT 59100.0 73800.0 119100.0 72600.0 ; - RECT 59100.0 53400.0 119100.0 52200.0 ; + RECT 59100.0 89100.0 60000.0 420300.0 ; + RECT 61200.0 89100.0 62100.0 420300.0 ; + RECT 63300.0 89100.0 64200.0 420300.0 ; + RECT 65400.0 89100.0 66300.0 420300.0 ; + RECT 67500.0 89100.0 68400.0 420300.0 ; + RECT 69600.0 89100.0 70500.0 420300.0 ; + RECT 71700.0 89100.0 72600.0 420300.0 ; + RECT 73800.0 89100.0 74700.0 420300.0 ; + RECT 105900.0 89100.0 105000.0 142500.0 ; + RECT 102900.0 89100.0 102000.0 142500.0 ; + RECT 111900.0 89100.0 111000.0 142500.0 ; + RECT 108900.0 89100.0 108000.0 142500.0 ; + RECT 95550.0 96450.0 94650.0 97350.0 ; + RECT 93150.0 96450.0 92250.0 97350.0 ; + RECT 95550.0 96900.0 94650.0 99750.0 ; + RECT 95100.0 96450.0 92700.0 97350.0 ; + RECT 93150.0 92250.0 92250.0 96900.0 ; + RECT 95700.0 99750.0 94500.0 100950.0 ; + RECT 93300.0 91050.0 92100.0 92250.0 ; + RECT 92100.0 96300.0 93300.0 97500.0 ; + RECT 95550.0 109350.0 94650.0 108450.0 ; + RECT 93150.0 109350.0 92250.0 108450.0 ; + RECT 95550.0 108900.0 94650.0 106050.0 ; + RECT 95100.0 109350.0 92700.0 108450.0 ; + RECT 93150.0 113550.0 92250.0 108900.0 ; + RECT 95700.0 106050.0 94500.0 104850.0 ; + RECT 93300.0 114750.0 92100.0 113550.0 ; + RECT 92100.0 109500.0 93300.0 108300.0 ; + RECT 95550.0 124050.0 94650.0 124950.0 ; + RECT 93150.0 124050.0 92250.0 124950.0 ; + RECT 95550.0 124500.0 94650.0 127350.0 ; + RECT 95100.0 124050.0 92700.0 124950.0 ; + RECT 93150.0 119850.0 92250.0 124500.0 ; + RECT 95700.0 127350.0 94500.0 128550.0 ; + RECT 93300.0 118650.0 92100.0 119850.0 ; + RECT 92100.0 123900.0 93300.0 125100.0 ; + RECT 95550.0 136950.0 94650.0 136050.0 ; + RECT 93150.0 136950.0 92250.0 136050.0 ; + RECT 95550.0 136500.0 94650.0 133650.0 ; + RECT 95100.0 136950.0 92700.0 136050.0 ; + RECT 93150.0 141150.0 92250.0 136500.0 ; + RECT 95700.0 133650.0 94500.0 132450.0 ; + RECT 93300.0 142350.0 92100.0 141150.0 ; + RECT 92100.0 137100.0 93300.0 135900.0 ; + RECT 110850.0 99600.0 112050.0 100800.0 ; + RECT 129450.0 95100.0 130650.0 96300.0 ; + RECT 107850.0 113400.0 109050.0 114600.0 ; + RECT 126450.0 109500.0 127650.0 110700.0 ; + RECT 129450.0 118200.0 130650.0 119400.0 ; + RECT 104850.0 118200.0 106050.0 119400.0 ; + RECT 126450.0 132000.0 127650.0 133200.0 ; + RECT 101850.0 132000.0 103050.0 133200.0 ; + RECT 110850.0 93600.0 112050.0 94800.0 ; + RECT 107850.0 96300.0 109050.0 97500.0 ; + RECT 104850.0 111000.0 106050.0 112200.0 ; + RECT 107850.0 108300.0 109050.0 109500.0 ; + RECT 110850.0 121200.0 112050.0 122400.0 ; + RECT 101850.0 123900.0 103050.0 125100.0 ; + RECT 104850.0 138600.0 106050.0 139800.0 ; + RECT 101850.0 135900.0 103050.0 137100.0 ; + RECT 130500.0 89100.0 129600.0 142500.0 ; + RECT 127500.0 89100.0 126600.0 142500.0 ; + RECT 105900.0 144300.0 105000.0 197700.0 ; + RECT 102900.0 144300.0 102000.0 197700.0 ; + RECT 111900.0 144300.0 111000.0 197700.0 ; + RECT 108900.0 144300.0 108000.0 197700.0 ; + RECT 95550.0 151650.0 94650.0 152550.0 ; + RECT 93150.0 151650.0 92250.0 152550.0 ; + RECT 95550.0 152100.0 94650.0 154950.0 ; + RECT 95100.0 151650.0 92700.0 152550.0 ; + RECT 93150.0 147450.0 92250.0 152100.0 ; + RECT 95700.0 154950.0 94500.0 156150.0 ; + RECT 93300.0 146250.0 92100.0 147450.0 ; + RECT 92100.0 151500.0 93300.0 152700.0 ; + RECT 95550.0 164550.0 94650.0 163650.0 ; + RECT 93150.0 164550.0 92250.0 163650.0 ; + RECT 95550.0 164100.0 94650.0 161250.0 ; + RECT 95100.0 164550.0 92700.0 163650.0 ; + RECT 93150.0 168750.0 92250.0 164100.0 ; + RECT 95700.0 161250.0 94500.0 160050.0 ; + RECT 93300.0 169950.0 92100.0 168750.0 ; + RECT 92100.0 164700.0 93300.0 163500.0 ; + RECT 95550.0 179250.0 94650.0 180150.0 ; + RECT 93150.0 179250.0 92250.0 180150.0 ; + RECT 95550.0 179700.0 94650.0 182550.0 ; + RECT 95100.0 179250.0 92700.0 180150.0 ; + RECT 93150.0 175050.0 92250.0 179700.0 ; + RECT 95700.0 182550.0 94500.0 183750.0 ; + RECT 93300.0 173850.0 92100.0 175050.0 ; + RECT 92100.0 179100.0 93300.0 180300.0 ; + RECT 95550.0 192150.0 94650.0 191250.0 ; + RECT 93150.0 192150.0 92250.0 191250.0 ; + RECT 95550.0 191700.0 94650.0 188850.0 ; + RECT 95100.0 192150.0 92700.0 191250.0 ; + RECT 93150.0 196350.0 92250.0 191700.0 ; + RECT 95700.0 188850.0 94500.0 187650.0 ; + RECT 93300.0 197550.0 92100.0 196350.0 ; + RECT 92100.0 192300.0 93300.0 191100.0 ; + RECT 110850.0 154800.0 112050.0 156000.0 ; + RECT 129450.0 150300.0 130650.0 151500.0 ; + RECT 107850.0 168600.0 109050.0 169800.0 ; + RECT 126450.0 164700.0 127650.0 165900.0 ; + RECT 129450.0 173400.0 130650.0 174600.0 ; + RECT 104850.0 173400.0 106050.0 174600.0 ; + RECT 126450.0 187200.0 127650.0 188400.0 ; + RECT 101850.0 187200.0 103050.0 188400.0 ; + RECT 110850.0 148800.0 112050.0 150000.0 ; + RECT 107850.0 151500.0 109050.0 152700.0 ; + RECT 104850.0 166200.0 106050.0 167400.0 ; + RECT 107850.0 163500.0 109050.0 164700.0 ; + RECT 110850.0 176400.0 112050.0 177600.0 ; + RECT 101850.0 179100.0 103050.0 180300.0 ; + RECT 104850.0 193800.0 106050.0 195000.0 ; + RECT 101850.0 191100.0 103050.0 192300.0 ; + RECT 130500.0 144300.0 129600.0 197700.0 ; + RECT 127500.0 144300.0 126600.0 197700.0 ; + RECT 80250.0 206850.0 81150.0 207750.0 ; + RECT 82650.0 206850.0 83550.0 207750.0 ; + RECT 80250.0 207300.0 81150.0 210150.0 ; + RECT 80700.0 206850.0 83100.0 207750.0 ; + RECT 82650.0 202650.0 83550.0 207300.0 ; + RECT 80100.0 210150.0 81300.0 211350.0 ; + RECT 82500.0 201450.0 83700.0 202650.0 ; + RECT 83700.0 206700.0 82500.0 207900.0 ; + RECT 80250.0 219750.0 81150.0 218850.0 ; + RECT 82650.0 219750.0 83550.0 218850.0 ; + RECT 80250.0 219300.0 81150.0 216450.0 ; + RECT 80700.0 219750.0 83100.0 218850.0 ; + RECT 82650.0 223950.0 83550.0 219300.0 ; + RECT 80100.0 216450.0 81300.0 215250.0 ; + RECT 82500.0 225150.0 83700.0 223950.0 ; + RECT 83700.0 219900.0 82500.0 218700.0 ; + RECT 80250.0 234450.0 81150.0 235350.0 ; + RECT 82650.0 234450.0 83550.0 235350.0 ; + RECT 80250.0 234900.0 81150.0 237750.0 ; + RECT 80700.0 234450.0 83100.0 235350.0 ; + RECT 82650.0 230250.0 83550.0 234900.0 ; + RECT 80100.0 237750.0 81300.0 238950.0 ; + RECT 82500.0 229050.0 83700.0 230250.0 ; + RECT 83700.0 234300.0 82500.0 235500.0 ; + RECT 80250.0 247350.0 81150.0 246450.0 ; + RECT 82650.0 247350.0 83550.0 246450.0 ; + RECT 80250.0 246900.0 81150.0 244050.0 ; + RECT 80700.0 247350.0 83100.0 246450.0 ; + RECT 82650.0 251550.0 83550.0 246900.0 ; + RECT 80100.0 244050.0 81300.0 242850.0 ; + RECT 82500.0 252750.0 83700.0 251550.0 ; + RECT 83700.0 247500.0 82500.0 246300.0 ; + RECT 80250.0 262050.0 81150.0 262950.0 ; + RECT 82650.0 262050.0 83550.0 262950.0 ; + RECT 80250.0 262500.0 81150.0 265350.0 ; + RECT 80700.0 262050.0 83100.0 262950.0 ; + RECT 82650.0 257850.0 83550.0 262500.0 ; + RECT 80100.0 265350.0 81300.0 266550.0 ; + RECT 82500.0 256650.0 83700.0 257850.0 ; + RECT 83700.0 261900.0 82500.0 263100.0 ; + RECT 80250.0 274950.0 81150.0 274050.0 ; + RECT 82650.0 274950.0 83550.0 274050.0 ; + RECT 80250.0 274500.0 81150.0 271650.0 ; + RECT 80700.0 274950.0 83100.0 274050.0 ; + RECT 82650.0 279150.0 83550.0 274500.0 ; + RECT 80100.0 271650.0 81300.0 270450.0 ; + RECT 82500.0 280350.0 83700.0 279150.0 ; + RECT 83700.0 275100.0 82500.0 273900.0 ; + RECT 80250.0 289650.0 81150.0 290550.0 ; + RECT 82650.0 289650.0 83550.0 290550.0 ; + RECT 80250.0 290100.0 81150.0 292950.0 ; + RECT 80700.0 289650.0 83100.0 290550.0 ; + RECT 82650.0 285450.0 83550.0 290100.0 ; + RECT 80100.0 292950.0 81300.0 294150.0 ; + RECT 82500.0 284250.0 83700.0 285450.0 ; + RECT 83700.0 289500.0 82500.0 290700.0 ; + RECT 80250.0 302550.0 81150.0 301650.0 ; + RECT 82650.0 302550.0 83550.0 301650.0 ; + RECT 80250.0 302100.0 81150.0 299250.0 ; + RECT 80700.0 302550.0 83100.0 301650.0 ; + RECT 82650.0 306750.0 83550.0 302100.0 ; + RECT 80100.0 299250.0 81300.0 298050.0 ; + RECT 82500.0 307950.0 83700.0 306750.0 ; + RECT 83700.0 302700.0 82500.0 301500.0 ; + RECT 80250.0 317250.0 81150.0 318150.0 ; + RECT 82650.0 317250.0 83550.0 318150.0 ; + RECT 80250.0 317700.0 81150.0 320550.0 ; + RECT 80700.0 317250.0 83100.0 318150.0 ; + RECT 82650.0 313050.0 83550.0 317700.0 ; + RECT 80100.0 320550.0 81300.0 321750.0 ; + RECT 82500.0 311850.0 83700.0 313050.0 ; + RECT 83700.0 317100.0 82500.0 318300.0 ; + RECT 80250.0 330150.0 81150.0 329250.0 ; + RECT 82650.0 330150.0 83550.0 329250.0 ; + RECT 80250.0 329700.0 81150.0 326850.0 ; + RECT 80700.0 330150.0 83100.0 329250.0 ; + RECT 82650.0 334350.0 83550.0 329700.0 ; + RECT 80100.0 326850.0 81300.0 325650.0 ; + RECT 82500.0 335550.0 83700.0 334350.0 ; + RECT 83700.0 330300.0 82500.0 329100.0 ; + RECT 80250.0 344850.0 81150.0 345750.0 ; + RECT 82650.0 344850.0 83550.0 345750.0 ; + RECT 80250.0 345300.0 81150.0 348150.0 ; + RECT 80700.0 344850.0 83100.0 345750.0 ; + RECT 82650.0 340650.0 83550.0 345300.0 ; + RECT 80100.0 348150.0 81300.0 349350.0 ; + RECT 82500.0 339450.0 83700.0 340650.0 ; + RECT 83700.0 344700.0 82500.0 345900.0 ; + RECT 80250.0 357750.0 81150.0 356850.0 ; + RECT 82650.0 357750.0 83550.0 356850.0 ; + RECT 80250.0 357300.0 81150.0 354450.0 ; + RECT 80700.0 357750.0 83100.0 356850.0 ; + RECT 82650.0 361950.0 83550.0 357300.0 ; + RECT 80100.0 354450.0 81300.0 353250.0 ; + RECT 82500.0 363150.0 83700.0 361950.0 ; + RECT 83700.0 357900.0 82500.0 356700.0 ; + RECT 80250.0 372450.0 81150.0 373350.0 ; + RECT 82650.0 372450.0 83550.0 373350.0 ; + RECT 80250.0 372900.0 81150.0 375750.0 ; + RECT 80700.0 372450.0 83100.0 373350.0 ; + RECT 82650.0 368250.0 83550.0 372900.0 ; + RECT 80100.0 375750.0 81300.0 376950.0 ; + RECT 82500.0 367050.0 83700.0 368250.0 ; + RECT 83700.0 372300.0 82500.0 373500.0 ; + RECT 80250.0 385350.0 81150.0 384450.0 ; + RECT 82650.0 385350.0 83550.0 384450.0 ; + RECT 80250.0 384900.0 81150.0 382050.0 ; + RECT 80700.0 385350.0 83100.0 384450.0 ; + RECT 82650.0 389550.0 83550.0 384900.0 ; + RECT 80100.0 382050.0 81300.0 380850.0 ; + RECT 82500.0 390750.0 83700.0 389550.0 ; + RECT 83700.0 385500.0 82500.0 384300.0 ; + RECT 80250.0 400050.0 81150.0 400950.0 ; + RECT 82650.0 400050.0 83550.0 400950.0 ; + RECT 80250.0 400500.0 81150.0 403350.0 ; + RECT 80700.0 400050.0 83100.0 400950.0 ; + RECT 82650.0 395850.0 83550.0 400500.0 ; + RECT 80100.0 403350.0 81300.0 404550.0 ; + RECT 82500.0 394650.0 83700.0 395850.0 ; + RECT 83700.0 399900.0 82500.0 401100.0 ; + RECT 80250.0 412950.0 81150.0 412050.0 ; + RECT 82650.0 412950.0 83550.0 412050.0 ; + RECT 80250.0 412500.0 81150.0 409650.0 ; + RECT 80700.0 412950.0 83100.0 412050.0 ; + RECT 82650.0 417150.0 83550.0 412500.0 ; + RECT 80100.0 409650.0 81300.0 408450.0 ; + RECT 82500.0 418350.0 83700.0 417150.0 ; + RECT 83700.0 413100.0 82500.0 411900.0 ; + RECT 60150.0 95100.0 58950.0 96300.0 ; + RECT 62250.0 109500.0 61050.0 110700.0 ; + RECT 64350.0 122700.0 63150.0 123900.0 ; + RECT 66450.0 137100.0 65250.0 138300.0 ; + RECT 68550.0 150300.0 67350.0 151500.0 ; + RECT 70650.0 164700.0 69450.0 165900.0 ; + RECT 72750.0 177900.0 71550.0 179100.0 ; + RECT 74850.0 192300.0 73650.0 193500.0 ; + RECT 60150.0 206700.0 58950.0 207900.0 ; + RECT 68550.0 204000.0 67350.0 205200.0 ; + RECT 60150.0 218700.0 58950.0 219900.0 ; + RECT 70650.0 221400.0 69450.0 222600.0 ; + RECT 60150.0 234300.0 58950.0 235500.0 ; + RECT 72750.0 231600.0 71550.0 232800.0 ; + RECT 60150.0 246300.0 58950.0 247500.0 ; + RECT 74850.0 249000.0 73650.0 250200.0 ; + RECT 62250.0 261900.0 61050.0 263100.0 ; + RECT 68550.0 259200.0 67350.0 260400.0 ; + RECT 62250.0 273900.0 61050.0 275100.0 ; + RECT 70650.0 276600.0 69450.0 277800.0 ; + RECT 62250.0 289500.0 61050.0 290700.0 ; + RECT 72750.0 286800.0 71550.0 288000.0 ; + RECT 62250.0 301500.0 61050.0 302700.0 ; + RECT 74850.0 304200.0 73650.0 305400.0 ; + RECT 64350.0 317100.0 63150.0 318300.0 ; + RECT 68550.0 314400.0 67350.0 315600.0 ; + RECT 64350.0 329100.0 63150.0 330300.0 ; + RECT 70650.0 331800.0 69450.0 333000.0 ; + RECT 64350.0 344700.0 63150.0 345900.0 ; + RECT 72750.0 342000.0 71550.0 343200.0 ; + RECT 64350.0 356700.0 63150.0 357900.0 ; + RECT 74850.0 359400.0 73650.0 360600.0 ; + RECT 66450.0 372300.0 65250.0 373500.0 ; + RECT 68550.0 369600.0 67350.0 370800.0 ; + RECT 66450.0 384300.0 65250.0 385500.0 ; + RECT 70650.0 387000.0 69450.0 388200.0 ; + RECT 66450.0 399900.0 65250.0 401100.0 ; + RECT 72750.0 397200.0 71550.0 398400.0 ; + RECT 66450.0 411900.0 65250.0 413100.0 ; + RECT 74850.0 414600.0 73650.0 415800.0 ; + RECT 129600.0 89100.0 130500.0 142500.0 ; + RECT 126600.0 89100.0 127500.0 142500.0 ; + RECT 129600.0 144300.0 130500.0 197700.0 ; + RECT 126600.0 144300.0 127500.0 197700.0 ; + RECT 104550.0 204150.0 105450.0 205050.0 ; + RECT 104550.0 203700.0 105450.0 204600.0 ; + RECT 105000.0 204150.0 121200.0 205050.0 ; + RECT 104550.0 221550.0 105450.0 222450.0 ; + RECT 104550.0 222000.0 105450.0 222900.0 ; + RECT 105000.0 221550.0 121200.0 222450.0 ; + RECT 104550.0 231750.0 105450.0 232650.0 ; + RECT 104550.0 231300.0 105450.0 232200.0 ; + RECT 105000.0 231750.0 121200.0 232650.0 ; + RECT 104550.0 249150.0 105450.0 250050.0 ; + RECT 104550.0 249600.0 105450.0 250500.0 ; + RECT 105000.0 249150.0 121200.0 250050.0 ; + RECT 104550.0 259350.0 105450.0 260250.0 ; + RECT 104550.0 258900.0 105450.0 259800.0 ; + RECT 105000.0 259350.0 121200.0 260250.0 ; + RECT 104550.0 276750.0 105450.0 277650.0 ; + RECT 104550.0 277200.0 105450.0 278100.0 ; + RECT 105000.0 276750.0 121200.0 277650.0 ; + RECT 104550.0 286950.0 105450.0 287850.0 ; + RECT 104550.0 286500.0 105450.0 287400.0 ; + RECT 105000.0 286950.0 121200.0 287850.0 ; + RECT 104550.0 304350.0 105450.0 305250.0 ; + RECT 104550.0 304800.0 105450.0 305700.0 ; + RECT 105000.0 304350.0 121200.0 305250.0 ; + RECT 104550.0 314550.0 105450.0 315450.0 ; + RECT 104550.0 314100.0 105450.0 315000.0 ; + RECT 105000.0 314550.0 121200.0 315450.0 ; + RECT 104550.0 331950.0 105450.0 332850.0 ; + RECT 104550.0 332400.0 105450.0 333300.0 ; + RECT 105000.0 331950.0 121200.0 332850.0 ; + RECT 104550.0 342150.0 105450.0 343050.0 ; + RECT 104550.0 341700.0 105450.0 342600.0 ; + RECT 105000.0 342150.0 121200.0 343050.0 ; + RECT 104550.0 359550.0 105450.0 360450.0 ; + RECT 104550.0 360000.0 105450.0 360900.0 ; + RECT 105000.0 359550.0 121200.0 360450.0 ; + RECT 104550.0 369750.0 105450.0 370650.0 ; + RECT 104550.0 369300.0 105450.0 370200.0 ; + RECT 105000.0 369750.0 121200.0 370650.0 ; + RECT 104550.0 387150.0 105450.0 388050.0 ; + RECT 104550.0 387600.0 105450.0 388500.0 ; + RECT 105000.0 387150.0 121200.0 388050.0 ; + RECT 104550.0 397350.0 105450.0 398250.0 ; + RECT 104550.0 396900.0 105450.0 397800.0 ; + RECT 105000.0 397350.0 121200.0 398250.0 ; + RECT 104550.0 414750.0 105450.0 415650.0 ; + RECT 104550.0 415200.0 105450.0 416100.0 ; + RECT 105000.0 414750.0 121200.0 415650.0 ; + RECT 120150.0 206850.0 121050.0 207750.0 ; + RECT 122550.0 206850.0 123450.0 207750.0 ; + RECT 120150.0 207300.0 121050.0 210150.0 ; + RECT 120600.0 206850.0 123000.0 207750.0 ; + RECT 122550.0 202650.0 123450.0 207300.0 ; + RECT 120000.0 210150.0 121200.0 211350.0 ; + RECT 122400.0 201450.0 123600.0 202650.0 ; + RECT 123600.0 206700.0 122400.0 207900.0 ; + RECT 102450.0 205500.0 103650.0 206700.0 ; + RECT 104400.0 203100.0 105600.0 204300.0 ; + RECT 121200.0 204000.0 120000.0 205200.0 ; + RECT 120150.0 219750.0 121050.0 218850.0 ; + RECT 122550.0 219750.0 123450.0 218850.0 ; + RECT 120150.0 219300.0 121050.0 216450.0 ; + RECT 120600.0 219750.0 123000.0 218850.0 ; + RECT 122550.0 223950.0 123450.0 219300.0 ; + RECT 120000.0 216450.0 121200.0 215250.0 ; + RECT 122400.0 225150.0 123600.0 223950.0 ; + RECT 123600.0 219900.0 122400.0 218700.0 ; + RECT 102450.0 219900.0 103650.0 221100.0 ; + RECT 104400.0 222300.0 105600.0 223500.0 ; + RECT 121200.0 221400.0 120000.0 222600.0 ; + RECT 120150.0 234450.0 121050.0 235350.0 ; + RECT 122550.0 234450.0 123450.0 235350.0 ; + RECT 120150.0 234900.0 121050.0 237750.0 ; + RECT 120600.0 234450.0 123000.0 235350.0 ; + RECT 122550.0 230250.0 123450.0 234900.0 ; + RECT 120000.0 237750.0 121200.0 238950.0 ; + RECT 122400.0 229050.0 123600.0 230250.0 ; + RECT 123600.0 234300.0 122400.0 235500.0 ; + RECT 102450.0 233100.0 103650.0 234300.0 ; + RECT 104400.0 230700.0 105600.0 231900.0 ; + RECT 121200.0 231600.0 120000.0 232800.0 ; + RECT 120150.0 247350.0 121050.0 246450.0 ; + RECT 122550.0 247350.0 123450.0 246450.0 ; + RECT 120150.0 246900.0 121050.0 244050.0 ; + RECT 120600.0 247350.0 123000.0 246450.0 ; + RECT 122550.0 251550.0 123450.0 246900.0 ; + RECT 120000.0 244050.0 121200.0 242850.0 ; + RECT 122400.0 252750.0 123600.0 251550.0 ; + RECT 123600.0 247500.0 122400.0 246300.0 ; + RECT 102450.0 247500.0 103650.0 248700.0 ; + RECT 104400.0 249900.0 105600.0 251100.0 ; + RECT 121200.0 249000.0 120000.0 250200.0 ; + RECT 120150.0 262050.0 121050.0 262950.0 ; + RECT 122550.0 262050.0 123450.0 262950.0 ; + RECT 120150.0 262500.0 121050.0 265350.0 ; + RECT 120600.0 262050.0 123000.0 262950.0 ; + RECT 122550.0 257850.0 123450.0 262500.0 ; + RECT 120000.0 265350.0 121200.0 266550.0 ; + RECT 122400.0 256650.0 123600.0 257850.0 ; + RECT 123600.0 261900.0 122400.0 263100.0 ; + RECT 102450.0 260700.0 103650.0 261900.0 ; + RECT 104400.0 258300.0 105600.0 259500.0 ; + RECT 121200.0 259200.0 120000.0 260400.0 ; + RECT 120150.0 274950.0 121050.0 274050.0 ; + RECT 122550.0 274950.0 123450.0 274050.0 ; + RECT 120150.0 274500.0 121050.0 271650.0 ; + RECT 120600.0 274950.0 123000.0 274050.0 ; + RECT 122550.0 279150.0 123450.0 274500.0 ; + RECT 120000.0 271650.0 121200.0 270450.0 ; + RECT 122400.0 280350.0 123600.0 279150.0 ; + RECT 123600.0 275100.0 122400.0 273900.0 ; + RECT 102450.0 275100.0 103650.0 276300.0 ; + RECT 104400.0 277500.0 105600.0 278700.0 ; + RECT 121200.0 276600.0 120000.0 277800.0 ; + RECT 120150.0 289650.0 121050.0 290550.0 ; + RECT 122550.0 289650.0 123450.0 290550.0 ; + RECT 120150.0 290100.0 121050.0 292950.0 ; + RECT 120600.0 289650.0 123000.0 290550.0 ; + RECT 122550.0 285450.0 123450.0 290100.0 ; + RECT 120000.0 292950.0 121200.0 294150.0 ; + RECT 122400.0 284250.0 123600.0 285450.0 ; + RECT 123600.0 289500.0 122400.0 290700.0 ; + RECT 102450.0 288300.0 103650.0 289500.0 ; + RECT 104400.0 285900.0 105600.0 287100.0 ; + RECT 121200.0 286800.0 120000.0 288000.0 ; + RECT 120150.0 302550.0 121050.0 301650.0 ; + RECT 122550.0 302550.0 123450.0 301650.0 ; + RECT 120150.0 302100.0 121050.0 299250.0 ; + RECT 120600.0 302550.0 123000.0 301650.0 ; + RECT 122550.0 306750.0 123450.0 302100.0 ; + RECT 120000.0 299250.0 121200.0 298050.0 ; + RECT 122400.0 307950.0 123600.0 306750.0 ; + RECT 123600.0 302700.0 122400.0 301500.0 ; + RECT 102450.0 302700.0 103650.0 303900.0 ; + RECT 104400.0 305100.0 105600.0 306300.0 ; + RECT 121200.0 304200.0 120000.0 305400.0 ; + RECT 120150.0 317250.0 121050.0 318150.0 ; + RECT 122550.0 317250.0 123450.0 318150.0 ; + RECT 120150.0 317700.0 121050.0 320550.0 ; + RECT 120600.0 317250.0 123000.0 318150.0 ; + RECT 122550.0 313050.0 123450.0 317700.0 ; + RECT 120000.0 320550.0 121200.0 321750.0 ; + RECT 122400.0 311850.0 123600.0 313050.0 ; + RECT 123600.0 317100.0 122400.0 318300.0 ; + RECT 102450.0 315900.0 103650.0 317100.0 ; + RECT 104400.0 313500.0 105600.0 314700.0 ; + RECT 121200.0 314400.0 120000.0 315600.0 ; + RECT 120150.0 330150.0 121050.0 329250.0 ; + RECT 122550.0 330150.0 123450.0 329250.0 ; + RECT 120150.0 329700.0 121050.0 326850.0 ; + RECT 120600.0 330150.0 123000.0 329250.0 ; + RECT 122550.0 334350.0 123450.0 329700.0 ; + RECT 120000.0 326850.0 121200.0 325650.0 ; + RECT 122400.0 335550.0 123600.0 334350.0 ; + RECT 123600.0 330300.0 122400.0 329100.0 ; + RECT 102450.0 330300.0 103650.0 331500.0 ; + RECT 104400.0 332700.0 105600.0 333900.0 ; + RECT 121200.0 331800.0 120000.0 333000.0 ; + RECT 120150.0 344850.0 121050.0 345750.0 ; + RECT 122550.0 344850.0 123450.0 345750.0 ; + RECT 120150.0 345300.0 121050.0 348150.0 ; + RECT 120600.0 344850.0 123000.0 345750.0 ; + RECT 122550.0 340650.0 123450.0 345300.0 ; + RECT 120000.0 348150.0 121200.0 349350.0 ; + RECT 122400.0 339450.0 123600.0 340650.0 ; + RECT 123600.0 344700.0 122400.0 345900.0 ; + RECT 102450.0 343500.0 103650.0 344700.0 ; + RECT 104400.0 341100.0 105600.0 342300.0 ; + RECT 121200.0 342000.0 120000.0 343200.0 ; + RECT 120150.0 357750.0 121050.0 356850.0 ; + RECT 122550.0 357750.0 123450.0 356850.0 ; + RECT 120150.0 357300.0 121050.0 354450.0 ; + RECT 120600.0 357750.0 123000.0 356850.0 ; + RECT 122550.0 361950.0 123450.0 357300.0 ; + RECT 120000.0 354450.0 121200.0 353250.0 ; + RECT 122400.0 363150.0 123600.0 361950.0 ; + RECT 123600.0 357900.0 122400.0 356700.0 ; + RECT 102450.0 357900.0 103650.0 359100.0 ; + RECT 104400.0 360300.0 105600.0 361500.0 ; + RECT 121200.0 359400.0 120000.0 360600.0 ; + RECT 120150.0 372450.0 121050.0 373350.0 ; + RECT 122550.0 372450.0 123450.0 373350.0 ; + RECT 120150.0 372900.0 121050.0 375750.0 ; + RECT 120600.0 372450.0 123000.0 373350.0 ; + RECT 122550.0 368250.0 123450.0 372900.0 ; + RECT 120000.0 375750.0 121200.0 376950.0 ; + RECT 122400.0 367050.0 123600.0 368250.0 ; + RECT 123600.0 372300.0 122400.0 373500.0 ; + RECT 102450.0 371100.0 103650.0 372300.0 ; + RECT 104400.0 368700.0 105600.0 369900.0 ; + RECT 121200.0 369600.0 120000.0 370800.0 ; + RECT 120150.0 385350.0 121050.0 384450.0 ; + RECT 122550.0 385350.0 123450.0 384450.0 ; + RECT 120150.0 384900.0 121050.0 382050.0 ; + RECT 120600.0 385350.0 123000.0 384450.0 ; + RECT 122550.0 389550.0 123450.0 384900.0 ; + RECT 120000.0 382050.0 121200.0 380850.0 ; + RECT 122400.0 390750.0 123600.0 389550.0 ; + RECT 123600.0 385500.0 122400.0 384300.0 ; + RECT 102450.0 385500.0 103650.0 386700.0 ; + RECT 104400.0 387900.0 105600.0 389100.0 ; + RECT 121200.0 387000.0 120000.0 388200.0 ; + RECT 120150.0 400050.0 121050.0 400950.0 ; + RECT 122550.0 400050.0 123450.0 400950.0 ; + RECT 120150.0 400500.0 121050.0 403350.0 ; + RECT 120600.0 400050.0 123000.0 400950.0 ; + RECT 122550.0 395850.0 123450.0 400500.0 ; + RECT 120000.0 403350.0 121200.0 404550.0 ; + RECT 122400.0 394650.0 123600.0 395850.0 ; + RECT 123600.0 399900.0 122400.0 401100.0 ; + RECT 102450.0 398700.0 103650.0 399900.0 ; + RECT 104400.0 396300.0 105600.0 397500.0 ; + RECT 121200.0 397200.0 120000.0 398400.0 ; + RECT 120150.0 412950.0 121050.0 412050.0 ; + RECT 122550.0 412950.0 123450.0 412050.0 ; + RECT 120150.0 412500.0 121050.0 409650.0 ; + RECT 120600.0 412950.0 123000.0 412050.0 ; + RECT 122550.0 417150.0 123450.0 412500.0 ; + RECT 120000.0 409650.0 121200.0 408450.0 ; + RECT 122400.0 418350.0 123600.0 417150.0 ; + RECT 123600.0 413100.0 122400.0 411900.0 ; + RECT 102450.0 413100.0 103650.0 414300.0 ; + RECT 104400.0 415500.0 105600.0 416700.0 ; + RECT 121200.0 414600.0 120000.0 415800.0 ; + RECT 102600.0 199500.0 103500.0 420300.0 ; + RECT 59100.0 83700.0 119100.0 73500.0 ; + RECT 59100.0 63300.0 119100.0 73500.0 ; + RECT 59100.0 63300.0 119100.0 53100.0 ; + RECT 59100.0 42900.0 119100.0 53100.0 ; + RECT 116700.0 79200.0 117900.0 76500.0 ; + RECT 114600.0 81900.0 119100.0 80700.0 ; + RECT 116700.0 70500.0 117900.0 67800.0 ; + RECT 114600.0 66300.0 119100.0 65100.0 ; + RECT 116700.0 58800.0 117900.0 56100.0 ; + RECT 114600.0 61500.0 119100.0 60300.0 ; + RECT 116700.0 50100.0 117900.0 47400.0 ; + RECT 114600.0 45900.0 119100.0 44700.0 ; + RECT 59100.0 74100.0 119100.0 72900.0 ; + RECT 59100.0 53700.0 119100.0 52500.0 ; RECT 176550.0 5850.0 177750.0 7050.0 ; RECT 186750.0 5850.0 187950.0 7050.0 ; RECT 180300.0 300.0 181500.0 1500.0 ; RECT 190500.0 300.0 191700.0 1500.0 ; - RECT 148050.0 199800.0 149250.0 198600.0 ; - RECT 148050.0 227400.0 149250.0 226200.0 ; - RECT 148050.0 255000.0 149250.0 253800.0 ; - RECT 148050.0 282600.0 149250.0 281400.0 ; - RECT 148050.0 310200.0 149250.0 309000.0 ; - RECT 148050.0 337800.0 149250.0 336600.0 ; - RECT 148050.0 365400.0 149250.0 364200.0 ; - RECT 148050.0 393000.0 149250.0 391800.0 ; - RECT 148050.0 420600.0 149250.0 419400.0 ; - RECT 130500.0 91050.0 129300.0 92250.0 ; - RECT 135600.0 90900.0 134400.0 92100.0 ; - RECT 127500.0 104850.0 126300.0 106050.0 ; - RECT 138300.0 104700.0 137100.0 105900.0 ; - RECT 130500.0 146250.0 129300.0 147450.0 ; - RECT 141000.0 146100.0 139800.0 147300.0 ; - RECT 127500.0 160050.0 126300.0 161250.0 ; - RECT 143700.0 159900.0 142500.0 161100.0 ; - RECT 132600.0 88200.0 131400.0 89400.0 ; - RECT 132600.0 88200.0 131400.0 89400.0 ; - RECT 147450.0 89400.0 148650.0 88200.0 ; - RECT 132600.0 115800.0 131400.0 117000.0 ; - RECT 132600.0 115800.0 131400.0 117000.0 ; - RECT 147450.0 117000.0 148650.0 115800.0 ; - RECT 132600.0 143400.0 131400.0 144600.0 ; - RECT 132600.0 143400.0 131400.0 144600.0 ; - RECT 147450.0 144600.0 148650.0 143400.0 ; - RECT 132600.0 171000.0 131400.0 172200.0 ; - RECT 132600.0 171000.0 131400.0 172200.0 ; - RECT 147450.0 172200.0 148650.0 171000.0 ; - RECT 118500.0 76950.0 117300.0 78150.0 ; - RECT 135600.0 76950.0 134400.0 78150.0 ; - RECT 118500.0 68250.0 117300.0 69450.0 ; - RECT 138300.0 68250.0 137100.0 69450.0 ; - RECT 118500.0 56550.0 117300.0 57750.0 ; - RECT 141000.0 56550.0 139800.0 57750.0 ; - RECT 118500.0 47850.0 117300.0 49050.0 ; - RECT 143700.0 47850.0 142500.0 49050.0 ; - RECT 120300.0 72600.0 119100.0 73800.0 ; - RECT 149250.0 72750.0 148050.0 73950.0 ; - RECT 120300.0 52200.0 119100.0 53400.0 ; - RECT 149250.0 52350.0 148050.0 53550.0 ; + RECT 148050.0 200100.0 149250.0 198900.0 ; + RECT 148050.0 227700.0 149250.0 226500.0 ; + RECT 148050.0 255300.0 149250.0 254100.0 ; + RECT 148050.0 282900.0 149250.0 281700.0 ; + RECT 148050.0 310500.0 149250.0 309300.0 ; + RECT 148050.0 338100.0 149250.0 336900.0 ; + RECT 148050.0 365700.0 149250.0 364500.0 ; + RECT 148050.0 393300.0 149250.0 392100.0 ; + RECT 148050.0 420900.0 149250.0 419700.0 ; + RECT 130500.0 91350.0 129300.0 92550.0 ; + RECT 135600.0 91200.0 134400.0 92400.0 ; + RECT 127500.0 105150.0 126300.0 106350.0 ; + RECT 138300.0 105000.0 137100.0 106200.0 ; + RECT 130500.0 146550.0 129300.0 147750.0 ; + RECT 141000.0 146400.0 139800.0 147600.0 ; + RECT 127500.0 160350.0 126300.0 161550.0 ; + RECT 143700.0 160200.0 142500.0 161400.0 ; + RECT 132600.0 88500.0 131400.0 89700.0 ; + RECT 132600.0 88500.0 131400.0 89700.0 ; + RECT 147450.0 89700.0 148650.0 88500.0 ; + RECT 132600.0 116100.0 131400.0 117300.0 ; + RECT 132600.0 116100.0 131400.0 117300.0 ; + RECT 147450.0 117300.0 148650.0 116100.0 ; + RECT 132600.0 143700.0 131400.0 144900.0 ; + RECT 132600.0 143700.0 131400.0 144900.0 ; + RECT 147450.0 144900.0 148650.0 143700.0 ; + RECT 132600.0 171300.0 131400.0 172500.0 ; + RECT 132600.0 171300.0 131400.0 172500.0 ; + RECT 147450.0 172500.0 148650.0 171300.0 ; + RECT 118500.0 77250.0 117300.0 78450.0 ; + RECT 135600.0 77250.0 134400.0 78450.0 ; + RECT 118500.0 68550.0 117300.0 69750.0 ; + RECT 138300.0 68550.0 137100.0 69750.0 ; + RECT 118500.0 56850.0 117300.0 58050.0 ; + RECT 141000.0 56850.0 139800.0 58050.0 ; + RECT 118500.0 48150.0 117300.0 49350.0 ; + RECT 143700.0 48150.0 142500.0 49350.0 ; + RECT 120300.0 72900.0 119100.0 74100.0 ; + RECT 149250.0 73050.0 148050.0 74250.0 ; + RECT 120300.0 52500.0 119100.0 53700.0 ; + RECT 149250.0 52650.0 148050.0 53850.0 ; RECT 164400.0 32250.0 163200.0 33450.0 ; RECT 159000.0 27750.0 157800.0 28950.0 ; RECT 161700.0 25350.0 160500.0 26550.0 ; - RECT 164400.0 424650.0 163200.0 425850.0 ; - RECT 167100.0 96750.0 165900.0 97950.0 ; - RECT 169800.0 194850.0 168600.0 196050.0 ; - RECT 156300.0 84900.0 155100.0 86100.0 ; - RECT 103650.0 421500.0 102450.0 422700.0 ; - RECT 156300.0 421500.0 155100.0 422700.0 ; + RECT 164400.0 428550.0 163200.0 429750.0 ; + RECT 167100.0 97050.0 165900.0 98250.0 ; + RECT 169800.0 195150.0 168600.0 196350.0 ; + RECT 156300.0 85200.0 155100.0 86400.0 ; + RECT 103650.0 421800.0 102450.0 423000.0 ; + RECT 156300.0 421800.0 155100.0 423000.0 ; RECT 152550.0 23400.0 151350.0 24600.0 ; - RECT 152550.0 192900.0 151350.0 194100.0 ; - RECT 152550.0 94800.0 151350.0 96000.0 ; + RECT 152550.0 193200.0 151350.0 194400.0 ; + RECT 152550.0 95100.0 151350.0 96300.0 ; RECT 180000.0 0.0 180900.0 1800.0 ; RECT 190200.0 0.0 191100.0 1800.0 ; - RECT 168750.0 0.0 169650.0 436800.0 ; - RECT 166050.0 0.0 166950.0 436800.0 ; - RECT 157950.0 0.0 158850.0 436800.0 ; - RECT 160650.0 0.0 161550.0 436800.0 ; - RECT 163350.0 0.0 164250.0 436800.0 ; - RECT 155250.0 0.0 156150.0 436800.0 ; - RECT 148050.0 0.0 152550.0 436800.0 ; - RECT 49800.0 289800.0 1.42108547152e-11 290700.0 ; - RECT 49800.0 292500.0 1.42108547152e-11 293400.0 ; - RECT 49800.0 295200.0 1.42108547152e-11 296100.0 ; - RECT 49800.0 300600.0 1.42108547152e-11 301500.0 ; - RECT 33750.0 205050.0 32850.0 284850.0 ; - RECT 49800.0 287100.0 47100.0 288000.0 ; - RECT 38700.0 297900.0 36000.0 298800.0 ; - RECT 24900.0 287100.0 22200.0 288000.0 ; - RECT 11100.0 297900.0 8400.0 298800.0 ; - RECT 7.1054273576e-12 202200.0 10200.0 262200.0 ; - RECT 20400.0 202200.0 10200.0 262200.0 ; - RECT 20400.0 202200.0 30600.0 262200.0 ; - RECT 4500.0 259800.0 7200.0 261000.0 ; - RECT 1800.0 257700.0 3000.0 262200.0 ; - RECT 13200.0 259800.0 15900.0 261000.0 ; - RECT 17400.0 257700.0 18600.0 262200.0 ; - RECT 24900.0 259800.0 27600.0 261000.0 ; - RECT 22200.0 257700.0 23400.0 262200.0 ; - RECT 9600.0 202200.0 10800.0 262200.0 ; - RECT 30000.0 202200.0 31200.0 262200.0 ; - RECT 46650.0 317850.0 39150.0 318750.0 ; - RECT 41700.0 313050.0 40800.0 313950.0 ; - RECT 41700.0 317850.0 40800.0 318750.0 ; - RECT 41250.0 313050.0 39150.0 313950.0 ; - RECT 41700.0 313500.0 40800.0 318300.0 ; - RECT 46650.0 317850.0 41250.0 318750.0 ; - RECT 39150.0 312900.0 37950.0 314100.0 ; - RECT 39150.0 317700.0 37950.0 318900.0 ; - RECT 47850.0 317700.0 46650.0 318900.0 ; - RECT 41850.0 317700.0 40650.0 318900.0 ; - RECT 28800.0 315450.0 29700.0 316350.0 ; - RECT 29250.0 315450.0 32250.0 316350.0 ; - RECT 28800.0 315900.0 29700.0 316800.0 ; - RECT 23700.0 315450.0 24600.0 316350.0 ; - RECT 23700.0 314100.0 24600.0 315900.0 ; - RECT 24150.0 315450.0 29250.0 316350.0 ; - RECT 32250.0 315300.0 33450.0 316500.0 ; - RECT 23550.0 314100.0 24750.0 312900.0 ; - RECT 28650.0 317400.0 29850.0 316200.0 ; - RECT 29550.0 330150.0 30450.0 331050.0 ; - RECT 29550.0 332550.0 30450.0 333450.0 ; - RECT 30000.0 330150.0 32850.0 331050.0 ; - RECT 29550.0 330600.0 30450.0 333000.0 ; - RECT 25350.0 332550.0 30000.0 333450.0 ; - RECT 32850.0 330000.0 34050.0 331200.0 ; - RECT 24150.0 332400.0 25350.0 333600.0 ; - RECT 29400.0 333600.0 30600.0 332400.0 ; - RECT 19050.0 327450.0 11550.0 328350.0 ; - RECT 14100.0 322650.0 13200.0 323550.0 ; - RECT 14100.0 327450.0 13200.0 328350.0 ; - RECT 13650.0 322650.0 11550.0 323550.0 ; - RECT 14100.0 323100.0 13200.0 327900.0 ; - RECT 19050.0 327450.0 13650.0 328350.0 ; - RECT 11550.0 322500.0 10350.0 323700.0 ; - RECT 11550.0 327300.0 10350.0 328500.0 ; - RECT 20250.0 327300.0 19050.0 328500.0 ; - RECT 14250.0 327300.0 13050.0 328500.0 ; - RECT 3000.0 262800.0 1800.0 261600.0 ; - RECT 3000.0 301650.0 1800.0 300450.0 ; - RECT 6450.0 261600.0 5250.0 260400.0 ; - RECT 6450.0 290850.0 5250.0 289650.0 ; - RECT 18600.0 262800.0 17400.0 261600.0 ; - RECT 18600.0 293550.0 17400.0 292350.0 ; - RECT 23400.0 262800.0 22200.0 261600.0 ; - RECT 23400.0 296250.0 22200.0 295050.0 ; - RECT 10800.0 262800.0 9600.0 261600.0 ; - RECT 10800.0 288150.0 9600.0 286950.0 ; - RECT 31200.0 262800.0 30000.0 261600.0 ; - RECT 31200.0 288150.0 30000.0 286950.0 ; - RECT 22650.0 371700.0 21750.0 425400.0 ; - RECT 22650.0 381300.0 21750.0 384000.0 ; - RECT 22650.0 384000.0 21750.0 426000.0 ; - RECT 17250.0 423300.0 16350.0 426000.0 ; - RECT 20400.0 375900.0 19500.0 384000.0 ; - RECT 13650.0 375900.0 12750.0 380700.0 ; - RECT 42750.0 415500.0 43650.0 422700.0 ; - RECT 35550.0 424650.0 36450.0 425550.0 ; - RECT 35550.0 425850.0 36450.0 426750.0 ; - RECT 36000.0 424650.0 43200.0 425550.0 ; - RECT 35550.0 425100.0 36450.0 426300.0 ; - RECT 28800.0 425850.0 36000.0 426750.0 ; - RECT 28350.0 416700.0 29250.0 423900.0 ; - RECT 42600.0 422100.0 43800.0 423300.0 ; - RECT 28200.0 425700.0 29400.0 426900.0 ; - RECT 28200.0 416100.0 29400.0 417300.0 ; - RECT 42600.0 414900.0 43800.0 416100.0 ; - RECT 42600.0 424500.0 43800.0 425700.0 ; - RECT 28200.0 423300.0 29400.0 424500.0 ; - RECT 16800.0 395100.0 6600.0 381300.0 ; - RECT 16800.0 395100.0 6600.0 408900.0 ; - RECT 16800.0 422700.0 6600.0 408900.0 ; - RECT 13800.0 395700.0 12600.0 424500.0 ; - RECT 10800.0 394500.0 9600.0 423300.0 ; - RECT 17400.0 394500.0 16200.0 423300.0 ; - RECT 7200.0 394500.0 6000.0 423300.0 ; - RECT 22650.0 396600.0 21450.0 397800.0 ; - RECT 22650.0 420000.0 21450.0 421200.0 ; - RECT 22650.0 410100.0 21450.0 411300.0 ; - RECT 22650.0 370500.0 21450.0 371700.0 ; - RECT 21600.0 425400.0 22800.0 426600.0 ; - RECT 16200.0 425400.0 17400.0 426600.0 ; - RECT 19350.0 383400.0 20550.0 384600.0 ; - RECT 19350.0 375300.0 20550.0 376500.0 ; - RECT 12600.0 375300.0 13800.0 376500.0 ; - RECT 43950.0 285450.0 42750.0 284250.0 ; - RECT 43950.0 244500.0 42750.0 243300.0 ; - RECT 43950.0 304350.0 42750.0 303150.0 ; - RECT 43950.0 244500.0 42750.0 243300.0 ; - RECT 33900.0 205650.0 32700.0 204450.0 ; - RECT 29850.0 285450.0 28650.0 284250.0 ; - RECT 27150.0 290850.0 25950.0 289650.0 ; - RECT 30600.0 328200.0 29400.0 327000.0 ; - RECT 30600.0 328200.0 29400.0 327000.0 ; - RECT 30600.0 304350.0 29400.0 303150.0 ; - RECT 27900.0 331200.0 26700.0 330000.0 ; - RECT 27900.0 331200.0 26700.0 330000.0 ; - RECT 27900.0 301650.0 26700.0 300450.0 ; - RECT 41850.0 304350.0 40650.0 303150.0 ; - RECT 43800.0 301650.0 42600.0 300450.0 ; - RECT 45750.0 293550.0 44550.0 292350.0 ; - RECT 14250.0 304350.0 13050.0 303150.0 ; - RECT 16200.0 293550.0 15000.0 292350.0 ; - RECT 18150.0 296250.0 16950.0 295050.0 ; - RECT 29850.0 322500.0 28650.0 323700.0 ; - RECT 30600.0 339600.0 29400.0 340800.0 ; - RECT 16200.0 362100.0 15000.0 363300.0 ; - RECT 29400.0 342300.0 28200.0 343500.0 ; - RECT 50400.0 288150.0 49200.0 286950.0 ; - RECT 36600.0 298950.0 35400.0 297750.0 ; - RECT 22800.0 288150.0 21600.0 286950.0 ; - RECT 9000.0 298950.0 7800.0 297750.0 ; - RECT 49800.0 342450.0 28800.0 343350.0 ; - RECT 49800.0 362250.0 15600.0 363150.0 ; - RECT 49800.0 322650.0 29250.0 323550.0 ; - RECT 49800.0 339750.0 30000.0 340650.0 ; - RECT 49800.0 303300.0 1.42108547152e-11 304200.0 ; - RECT 49800.0 284400.0 1.42108547152e-11 285300.0 ; - RECT 49800.0 297900.0 1.42108547152e-11 298800.0 ; - RECT 49800.0 287100.0 1.42108547152e-11 288000.0 ; - RECT 169800.0 342300.0 168600.0 343500.0 ; - RECT 49500.0 342450.0 48300.0 343650.0 ; - RECT 167100.0 362100.0 165900.0 363300.0 ; - RECT 49500.0 362250.0 48300.0 363450.0 ; - RECT 161700.0 322500.0 160500.0 323700.0 ; - RECT 49500.0 322650.0 48300.0 323850.0 ; - RECT 159000.0 339600.0 157800.0 340800.0 ; - RECT 49500.0 339750.0 48300.0 340950.0 ; - RECT 164400.0 303150.0 163200.0 304350.0 ; - RECT 49500.0 303300.0 48300.0 304500.0 ; - RECT 156300.0 284250.0 155100.0 285450.0 ; - RECT 49500.0 284400.0 48300.0 285600.0 ; - RECT 55650.0 297750.0 54450.0 298950.0 ; - RECT 150900.0 286950.0 149700.0 288150.0 ; - RECT 49500.0 287100.0 48300.0 288300.0 ; + RECT 168750.0 0.0 169650.0 440700.0 ; + RECT 166050.0 0.0 166950.0 440700.0 ; + RECT 157950.0 0.0 158850.0 440700.0 ; + RECT 160650.0 0.0 161550.0 440700.0 ; + RECT 163350.0 0.0 164250.0 440700.0 ; + RECT 155250.0 0.0 156150.0 440700.0 ; + RECT 148050.0 0.0 152550.0 440700.0 ; + RECT 49800.0 290100.0 1.42108547152e-11 291000.0 ; + RECT 49800.0 292800.0 1.42108547152e-11 293700.0 ; + RECT 49800.0 295500.0 1.42108547152e-11 296400.0 ; + RECT 49800.0 300900.0 1.42108547152e-11 301800.0 ; + RECT 33750.0 205350.0 32850.0 285150.0 ; + RECT 49800.0 287400.0 47100.0 288300.0 ; + RECT 38700.0 298200.0 36000.0 299100.0 ; + RECT 24900.0 287400.0 22200.0 288300.0 ; + RECT 11100.0 298200.0 8400.0 299100.0 ; + RECT 7.1054273576e-12 202500.0 10200.0 262500.0 ; + RECT 20400.0 202500.0 10200.0 262500.0 ; + RECT 20400.0 202500.0 30600.0 262500.0 ; + RECT 4500.0 260100.0 7200.0 261300.0 ; + RECT 1800.0 258000.0 3000.0 262500.0 ; + RECT 13200.0 260100.0 15900.0 261300.0 ; + RECT 17400.0 258000.0 18600.0 262500.0 ; + RECT 24900.0 260100.0 27600.0 261300.0 ; + RECT 22200.0 258000.0 23400.0 262500.0 ; + RECT 9600.0 202500.0 10800.0 262500.0 ; + RECT 30000.0 202500.0 31200.0 262500.0 ; + RECT 46650.0 318150.0 39150.0 319050.0 ; + RECT 41700.0 313350.0 40800.0 314250.0 ; + RECT 41700.0 318150.0 40800.0 319050.0 ; + RECT 41250.0 313350.0 39150.0 314250.0 ; + RECT 41700.0 313800.0 40800.0 318600.0 ; + RECT 46650.0 318150.0 41250.0 319050.0 ; + RECT 39150.0 313200.0 37950.0 314400.0 ; + RECT 39150.0 318000.0 37950.0 319200.0 ; + RECT 47850.0 318000.0 46650.0 319200.0 ; + RECT 41850.0 318000.0 40650.0 319200.0 ; + RECT 28800.0 315750.0 29700.0 316650.0 ; + RECT 29250.0 315750.0 32250.0 316650.0 ; + RECT 28800.0 316200.0 29700.0 317100.0 ; + RECT 23700.0 315750.0 24600.0 316650.0 ; + RECT 23700.0 314400.0 24600.0 316200.0 ; + RECT 24150.0 315750.0 29250.0 316650.0 ; + RECT 32250.0 315600.0 33450.0 316800.0 ; + RECT 23550.0 314400.0 24750.0 313200.0 ; + RECT 28650.0 317700.0 29850.0 316500.0 ; + RECT 29550.0 330450.0 30450.0 331350.0 ; + RECT 29550.0 332850.0 30450.0 333750.0 ; + RECT 30000.0 330450.0 32850.0 331350.0 ; + RECT 29550.0 330900.0 30450.0 333300.0 ; + RECT 25350.0 332850.0 30000.0 333750.0 ; + RECT 32850.0 330300.0 34050.0 331500.0 ; + RECT 24150.0 332700.0 25350.0 333900.0 ; + RECT 29400.0 333900.0 30600.0 332700.0 ; + RECT 19050.0 327750.0 11550.0 328650.0 ; + RECT 14100.0 322950.0 13200.0 323850.0 ; + RECT 14100.0 327750.0 13200.0 328650.0 ; + RECT 13650.0 322950.0 11550.0 323850.0 ; + RECT 14100.0 323400.0 13200.0 328200.0 ; + RECT 19050.0 327750.0 13650.0 328650.0 ; + RECT 11550.0 322800.0 10350.0 324000.0 ; + RECT 11550.0 327600.0 10350.0 328800.0 ; + RECT 20250.0 327600.0 19050.0 328800.0 ; + RECT 14250.0 327600.0 13050.0 328800.0 ; + RECT 3000.0 263100.0 1800.0 261900.0 ; + RECT 3000.0 301950.0 1800.0 300750.0 ; + RECT 6450.0 261900.0 5250.0 260700.0 ; + RECT 6450.0 291150.0 5250.0 289950.0 ; + RECT 18600.0 263100.0 17400.0 261900.0 ; + RECT 18600.0 293850.0 17400.0 292650.0 ; + RECT 23400.0 263100.0 22200.0 261900.0 ; + RECT 23400.0 296550.0 22200.0 295350.0 ; + RECT 10800.0 263100.0 9600.0 261900.0 ; + RECT 10800.0 288450.0 9600.0 287250.0 ; + RECT 31200.0 263100.0 30000.0 261900.0 ; + RECT 31200.0 288450.0 30000.0 287250.0 ; + RECT 22650.0 372000.0 21750.0 427500.0 ; + RECT 22650.0 381600.0 21750.0 384300.0 ; + RECT 22650.0 384300.0 21750.0 428100.0 ; + RECT 17250.0 425400.0 16350.0 428100.0 ; + RECT 20400.0 376200.0 19500.0 384300.0 ; + RECT 13650.0 376200.0 12750.0 381000.0 ; + RECT 42750.0 415800.0 43650.0 423000.0 ; + RECT 35550.0 424950.0 36450.0 425850.0 ; + RECT 35550.0 426150.0 36450.0 427050.0 ; + RECT 36000.0 424950.0 43200.0 425850.0 ; + RECT 35550.0 425400.0 36450.0 426600.0 ; + RECT 28800.0 426150.0 36000.0 427050.0 ; + RECT 28350.0 417000.0 29250.0 424200.0 ; + RECT 42600.0 422400.0 43800.0 423600.0 ; + RECT 28200.0 426000.0 29400.0 427200.0 ; + RECT 28200.0 416400.0 29400.0 417600.0 ; + RECT 42600.0 415200.0 43800.0 416400.0 ; + RECT 42600.0 424800.0 43800.0 426000.0 ; + RECT 28200.0 423600.0 29400.0 424800.0 ; + RECT 16800.0 395400.0 6600.0 381600.0 ; + RECT 16800.0 395400.0 6600.0 409200.0 ; + RECT 16800.0 423000.0 6600.0 409200.0 ; + RECT 13800.0 396000.0 12600.0 426600.0 ; + RECT 10800.0 394800.0 9600.0 425400.0 ; + RECT 17400.0 394800.0 16200.0 425400.0 ; + RECT 7200.0 394800.0 6000.0 425400.0 ; + RECT 22650.0 396900.0 21450.0 398100.0 ; + RECT 22650.0 420300.0 21450.0 421500.0 ; + RECT 22650.0 410400.0 21450.0 411600.0 ; + RECT 22650.0 370800.0 21450.0 372000.0 ; + RECT 21600.0 427500.0 22800.0 428700.0 ; + RECT 16200.0 427500.0 17400.0 428700.0 ; + RECT 19350.0 383700.0 20550.0 384900.0 ; + RECT 19350.0 375600.0 20550.0 376800.0 ; + RECT 12600.0 375600.0 13800.0 376800.0 ; + RECT 43950.0 285750.0 42750.0 284550.0 ; + RECT 43950.0 244800.0 42750.0 243600.0 ; + RECT 43950.0 304650.0 42750.0 303450.0 ; + RECT 43950.0 244800.0 42750.0 243600.0 ; + RECT 33900.0 205950.0 32700.0 204750.0 ; + RECT 29850.0 285750.0 28650.0 284550.0 ; + RECT 27150.0 291150.0 25950.0 289950.0 ; + RECT 30600.0 328500.0 29400.0 327300.0 ; + RECT 30600.0 328500.0 29400.0 327300.0 ; + RECT 30600.0 304650.0 29400.0 303450.0 ; + RECT 27900.0 331500.0 26700.0 330300.0 ; + RECT 27900.0 331500.0 26700.0 330300.0 ; + RECT 27900.0 301950.0 26700.0 300750.0 ; + RECT 41850.0 304650.0 40650.0 303450.0 ; + RECT 43800.0 301950.0 42600.0 300750.0 ; + RECT 45750.0 293850.0 44550.0 292650.0 ; + RECT 14250.0 304650.0 13050.0 303450.0 ; + RECT 16200.0 293850.0 15000.0 292650.0 ; + RECT 18150.0 296550.0 16950.0 295350.0 ; + RECT 29850.0 322800.0 28650.0 324000.0 ; + RECT 30600.0 339900.0 29400.0 341100.0 ; + RECT 16200.0 362400.0 15000.0 363600.0 ; + RECT 29400.0 342600.0 28200.0 343800.0 ; + RECT 50400.0 288450.0 49200.0 287250.0 ; + RECT 36600.0 299250.0 35400.0 298050.0 ; + RECT 22800.0 288450.0 21600.0 287250.0 ; + RECT 9000.0 299250.0 7800.0 298050.0 ; + RECT 49800.0 342750.0 28800.0 343650.0 ; + RECT 49800.0 362550.0 15600.0 363450.0 ; + RECT 49800.0 322950.0 29250.0 323850.0 ; + RECT 49800.0 340050.0 30000.0 340950.0 ; + RECT 49800.0 303600.0 1.42108547152e-11 304500.0 ; + RECT 49800.0 284700.0 1.42108547152e-11 285600.0 ; + RECT 49800.0 298200.0 1.42108547152e-11 299100.0 ; + RECT 49800.0 287400.0 1.42108547152e-11 288300.0 ; + RECT 169800.0 342600.0 168600.0 343800.0 ; + RECT 49500.0 342750.0 48300.0 343950.0 ; + RECT 167100.0 362400.0 165900.0 363600.0 ; + RECT 49500.0 362550.0 48300.0 363750.0 ; + RECT 161700.0 322800.0 160500.0 324000.0 ; + RECT 49500.0 322950.0 48300.0 324150.0 ; + RECT 159000.0 339900.0 157800.0 341100.0 ; + RECT 49500.0 340050.0 48300.0 341250.0 ; + RECT 164400.0 303450.0 163200.0 304650.0 ; + RECT 49500.0 303600.0 48300.0 304800.0 ; + RECT 156300.0 284550.0 155100.0 285750.0 ; + RECT 49500.0 284700.0 48300.0 285900.0 ; + RECT 55650.0 298050.0 54450.0 299250.0 ; + RECT 150900.0 287250.0 149700.0 288450.0 ; + RECT 49500.0 287400.0 48300.0 288600.0 ; LAYER metal3 ; - RECT 49800.0 342150.0 169200.0 343650.0 ; - RECT 49800.0 361950.0 166500.0 363450.0 ; - RECT 49800.0 322350.0 161100.0 323850.0 ; - RECT 49800.0 339450.0 158400.0 340950.0 ; - RECT 49800.0 303000.0 163800.0 304500.0 ; - RECT 49800.0 284100.0 155700.0 285600.0 ; - RECT 49800.0 286800.0 150300.0 288300.0 ; - RECT 176250.0 6300.0 177750.0 151200.0 ; - RECT 186450.0 6300.0 187950.0 151200.0 ; + RECT 49800.0 342450.0 169200.0 343950.0 ; + RECT 49800.0 362250.0 166500.0 363750.0 ; + RECT 49800.0 322650.0 161100.0 324150.0 ; + RECT 49800.0 339750.0 158400.0 341250.0 ; + RECT 49800.0 303300.0 163800.0 304800.0 ; + RECT 49800.0 284400.0 155700.0 285900.0 ; + RECT 49800.0 287100.0 150300.0 288600.0 ; + RECT 176250.0 6300.0 177750.0 151500.0 ; + RECT 186450.0 6300.0 187950.0 151500.0 ; RECT 180000.0 0.0 181500.0 30000.0 ; RECT 190200.0 0.0 191700.0 30000.0 ; - RECT 132000.0 88050.0 148050.0 89550.0 ; - RECT 132000.0 115650.0 148050.0 117150.0 ; - RECT 132000.0 143250.0 148050.0 144750.0 ; - RECT 132000.0 170850.0 148050.0 172350.0 ; - RECT 176100.0 151200.0 177900.0 153000.0 ; - RECT 186300.0 151200.0 188100.0 153000.0 ; + RECT 132000.0 88350.0 148050.0 89850.0 ; + RECT 132000.0 115950.0 148050.0 117450.0 ; + RECT 132000.0 143550.0 148050.0 145050.0 ; + RECT 132000.0 171150.0 148050.0 172650.0 ; + RECT 176100.0 151500.0 177900.0 153300.0 ; + RECT 186300.0 151500.0 188100.0 153300.0 ; RECT 179700.0 30900.0 181500.0 32700.0 ; RECT 189900.0 30900.0 191700.0 32700.0 ; - RECT 60000.0 79200.0 61800.0 77400.0 ; - RECT 60000.0 69000.0 61800.0 67200.0 ; - RECT 60000.0 58800.0 61800.0 57000.0 ; - RECT 60000.0 48600.0 61800.0 46800.0 ; + RECT 60000.0 79500.0 61800.0 77700.0 ; + RECT 60000.0 69300.0 61800.0 67500.0 ; + RECT 60000.0 59100.0 61800.0 57300.0 ; + RECT 60000.0 48900.0 61800.0 47100.0 ; RECT 176250.0 5550.0 178050.0 7350.0 ; RECT 186450.0 5550.0 188250.0 7350.0 ; RECT 180000.0 0.0 181800.0 1800.0 ; RECT 190200.0 0.0 192000.0 1800.0 ; - RECT 132900.0 87900.0 131100.0 89700.0 ; - RECT 147150.0 89700.0 148950.0 87900.0 ; - RECT 132900.0 115500.0 131100.0 117300.0 ; - RECT 147150.0 117300.0 148950.0 115500.0 ; - RECT 132900.0 143100.0 131100.0 144900.0 ; - RECT 147150.0 144900.0 148950.0 143100.0 ; - RECT 132900.0 170700.0 131100.0 172500.0 ; - RECT 147150.0 172500.0 148950.0 170700.0 ; - RECT 52800.0 77400.0 60000.0 78900.0 ; - RECT 52800.0 67200.0 60000.0 68700.0 ; - RECT 52800.0 57000.0 60000.0 58500.0 ; - RECT 52800.0 46800.0 60000.0 48300.0 ; - RECT 3150.0 262200.0 1650.0 301050.0 ; - RECT 6600.0 261000.0 5100.0 290250.0 ; - RECT 18750.0 262200.0 17250.0 292950.0 ; - RECT 23550.0 262200.0 22050.0 295650.0 ; - RECT 10950.0 262200.0 9450.0 287550.0 ; - RECT 31350.0 262200.0 29850.0 287550.0 ; - RECT 44100.0 243900.0 42600.0 303750.0 ; - RECT 30750.0 303750.0 29250.0 327600.0 ; - RECT 28050.0 301050.0 26550.0 330600.0 ; - RECT 4200.0 203100.0 6000.0 204900.0 ; - RECT 14400.0 203100.0 16200.0 204900.0 ; - RECT 24600.0 203100.0 26400.0 204900.0 ; - RECT 3300.0 263100.0 1500.0 261300.0 ; - RECT 3300.0 301950.0 1500.0 300150.0 ; - RECT 6750.0 261900.0 4950.0 260100.0 ; - RECT 6750.0 291150.0 4950.0 289350.0 ; - RECT 18900.0 263100.0 17100.0 261300.0 ; - RECT 18900.0 293850.0 17100.0 292050.0 ; - RECT 23700.0 263100.0 21900.0 261300.0 ; - RECT 23700.0 296550.0 21900.0 294750.0 ; - RECT 11100.0 263100.0 9300.0 261300.0 ; - RECT 11100.0 288450.0 9300.0 286650.0 ; - RECT 31500.0 263100.0 29700.0 261300.0 ; - RECT 31500.0 288450.0 29700.0 286650.0 ; - RECT 44250.0 244800.0 42450.0 243000.0 ; - RECT 44250.0 304650.0 42450.0 302850.0 ; - RECT 30900.0 328500.0 29100.0 326700.0 ; - RECT 30900.0 304650.0 29100.0 302850.0 ; - RECT 28200.0 331500.0 26400.0 329700.0 ; - RECT 28200.0 301950.0 26400.0 300150.0 ; - RECT 16200.0 203100.0 14400.0 204900.0 ; - RECT 26400.0 203100.0 24600.0 204900.0 ; - RECT 6000.0 203100.0 4200.0 204900.0 ; - RECT 170100.0 342000.0 168300.0 343800.0 ; - RECT 49800.0 342150.0 48000.0 343950.0 ; - RECT 167400.0 361800.0 165600.0 363600.0 ; - RECT 49800.0 361950.0 48000.0 363750.0 ; - RECT 162000.0 322200.0 160200.0 324000.0 ; - RECT 49800.0 322350.0 48000.0 324150.0 ; - RECT 159300.0 339300.0 157500.0 341100.0 ; - RECT 49800.0 339450.0 48000.0 341250.0 ; - RECT 164700.0 302850.0 162900.0 304650.0 ; - RECT 49800.0 303000.0 48000.0 304800.0 ; - RECT 156600.0 283950.0 154800.0 285750.0 ; - RECT 49800.0 284100.0 48000.0 285900.0 ; - RECT 151200.0 286650.0 149400.0 288450.0 ; - RECT 49800.0 286800.0 48000.0 288600.0 ; + RECT 132900.0 88200.0 131100.0 90000.0 ; + RECT 147150.0 90000.0 148950.0 88200.0 ; + RECT 132900.0 115800.0 131100.0 117600.0 ; + RECT 147150.0 117600.0 148950.0 115800.0 ; + RECT 132900.0 143400.0 131100.0 145200.0 ; + RECT 147150.0 145200.0 148950.0 143400.0 ; + RECT 132900.0 171000.0 131100.0 172800.0 ; + RECT 147150.0 172800.0 148950.0 171000.0 ; + RECT 52800.0 77700.0 60000.0 79200.0 ; + RECT 52800.0 67500.0 60000.0 69000.0 ; + RECT 52800.0 57300.0 60000.0 58800.0 ; + RECT 52800.0 47100.0 60000.0 48600.0 ; + RECT 3150.0 262500.0 1650.0 301350.0 ; + RECT 6600.0 261300.0 5100.0 290550.0 ; + RECT 18750.0 262500.0 17250.0 293250.0 ; + RECT 23550.0 262500.0 22050.0 295950.0 ; + RECT 10950.0 262500.0 9450.0 287850.0 ; + RECT 31350.0 262500.0 29850.0 287850.0 ; + RECT 44100.0 244200.0 42600.0 304050.0 ; + RECT 30750.0 304050.0 29250.0 327900.0 ; + RECT 28050.0 301350.0 26550.0 330900.0 ; + RECT 4200.0 203400.0 6000.0 205200.0 ; + RECT 14400.0 203400.0 16200.0 205200.0 ; + RECT 24600.0 203400.0 26400.0 205200.0 ; + RECT 3300.0 263400.0 1500.0 261600.0 ; + RECT 3300.0 302250.0 1500.0 300450.0 ; + RECT 6750.0 262200.0 4950.0 260400.0 ; + RECT 6750.0 291450.0 4950.0 289650.0 ; + RECT 18900.0 263400.0 17100.0 261600.0 ; + RECT 18900.0 294150.0 17100.0 292350.0 ; + RECT 23700.0 263400.0 21900.0 261600.0 ; + RECT 23700.0 296850.0 21900.0 295050.0 ; + RECT 11100.0 263400.0 9300.0 261600.0 ; + RECT 11100.0 288750.0 9300.0 286950.0 ; + RECT 31500.0 263400.0 29700.0 261600.0 ; + RECT 31500.0 288750.0 29700.0 286950.0 ; + RECT 44250.0 245100.0 42450.0 243300.0 ; + RECT 44250.0 304950.0 42450.0 303150.0 ; + RECT 30900.0 328800.0 29100.0 327000.0 ; + RECT 30900.0 304950.0 29100.0 303150.0 ; + RECT 28200.0 331800.0 26400.0 330000.0 ; + RECT 28200.0 302250.0 26400.0 300450.0 ; + RECT 16200.0 203400.0 14400.0 205200.0 ; + RECT 26400.0 203400.0 24600.0 205200.0 ; + RECT 6000.0 203400.0 4200.0 205200.0 ; + RECT 170100.0 342300.0 168300.0 344100.0 ; + RECT 49800.0 342450.0 48000.0 344250.0 ; + RECT 167400.0 362100.0 165600.0 363900.0 ; + RECT 49800.0 362250.0 48000.0 364050.0 ; + RECT 162000.0 322500.0 160200.0 324300.0 ; + RECT 49800.0 322650.0 48000.0 324450.0 ; + RECT 159300.0 339600.0 157500.0 341400.0 ; + RECT 49800.0 339750.0 48000.0 341550.0 ; + RECT 164700.0 303150.0 162900.0 304950.0 ; + RECT 49800.0 303300.0 48000.0 305100.0 ; + RECT 156600.0 284250.0 154800.0 286050.0 ; + RECT 49800.0 284400.0 48000.0 286200.0 ; + RECT 151200.0 286950.0 149400.0 288750.0 ; + RECT 49800.0 287100.0 48000.0 288900.0 ; END END sram_2_16_1_scn3me_subm END LIBRARY From d552d88f45df77add82c42488aed3c956d26fca1 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Thu, 1 Feb 2018 11:53:02 -0800 Subject: [PATCH 12/95] Add -d option to not delete temp directory on successful runs. --- compiler/globals.py | 7 ++++++- compiler/options.py | 3 +++ compiler/tests/testutils.py | 3 ++- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/compiler/globals.py b/compiler/globals.py index b0a81be5..a40006c2 100644 --- a/compiler/globals.py +++ b/compiler/globals.py @@ -50,7 +50,9 @@ def parse_args(): optparse.make_option("-r", "--remove_netlist_trimming", action="store_false", dest="trim_netlist", help="Disable removal of noncritical memory cells during characterization"), optparse.make_option("-c", "--characterize", action="store_false", dest="analytical_delay", - help="Perform characterization to calculate delays (default is analytical models)") + help="Perform characterization to calculate delays (default is analytical models)"), + optparse.make_option("-d", "--dontpurge", action="store_false", dest="purge_temp", + help="Don't purge the contents of the temp directory after a successful run") # -h --help is implicit. } @@ -185,6 +187,9 @@ def cleanup_paths(): """ We should clean up the temp directory after execution. """ + if not OPTS.purge_temp: + debug.info(0,"Preserving temp directory: {}".format(OPTS.openram_temp)) + return if os.path.exists(OPTS.openram_temp): shutil.rmtree(OPTS.openram_temp, ignore_errors=True) diff --git a/compiler/options.py b/compiler/options.py index eff37be2..6393a545 100644 --- a/compiler/options.py +++ b/compiler/options.py @@ -42,6 +42,9 @@ class options(optparse.Values): output_name = "sram" # Use analytical delay models by default rather than (slow) characterization analytical_delay = True + # Purge the temp directory after a successful run (doesn't purge on errors, anyhow) + purge_temp = True + # These are the default modules that can be over-riden decoder = "hierarchical_decoder" diff --git a/compiler/tests/testutils.py b/compiler/tests/testutils.py index c7d62071..ced80bb7 100644 --- a/compiler/tests/testutils.py +++ b/compiler/tests/testutils.py @@ -39,7 +39,8 @@ class openram_test(unittest.TestCase): self.reset() self.fail("LVS mismatch: {}".format(a.name)) - self.cleanup() + if OPTS.purge_temp: + self.cleanup() def cleanup(self): """ Reset the duplicate checker and cleanup files. """ From ea5eda91fcacdcb211d106abf51d885da33a392c Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 2 Feb 2018 12:27:24 -0800 Subject: [PATCH 13/95] Connect all gnd rails of RBL. --- compiler/replica_bitline.py | 31 +++++++++++++------------------ 1 file changed, 13 insertions(+), 18 deletions(-) diff --git a/compiler/replica_bitline.py b/compiler/replica_bitline.py index bed1ebb2..9345cb48 100644 --- a/compiler/replica_bitline.py +++ b/compiler/replica_bitline.py @@ -242,16 +242,11 @@ class replica_bitline(design.design): # Add a rail in M1 from bottom to two along delay chain gnd_start = self.rbl_inv_inst.get_pin("gnd").ll() - self.offset_fix - # It is the height of the entire RBL and bitcell - self.add_rect(layer="metal2", - offset=gnd_start, - width=self.m2_width, - height=self.rbl.height+self.bitcell.height+self.inv.width+self.m2_pitch) self.add_layout_pin(text="gnd", - layer="metal1", + layer="metal2", offset=gnd_start.scale(1,0), width=self.m2_width, - height=2*self.inv.width) + height=self.rbl_inst.uy()+2*self.m2_pitch) # Connect the WL pins directly to gnd for row in range(self.rows): @@ -275,20 +270,20 @@ class replica_bitline(design.design): self.add_via(layers=("metal1", "via1", "metal2"), offset=offset) - # Connect the bitcell gnd pin to the rail + # Connect the bitcell gnd pins to the rail gnd_pins = self.get_pins("gnd") - gnd_start = gnd_pins[0].uc() + gnd_start = gnd_pins[0].ul() + self.add_via_center(layers=("metal1", "via1", "metal2"), + offset=gnd_pins[0].uc()) rbl_gnd_pins = self.rbl_inst.get_pins("gnd") - # Find the left most rail on M2 - gnd_pin = None + # Add L shapes to each vertical gnd rail for pin in rbl_gnd_pins: - if gnd_pin == None or (pin.layer=="metal2" and pin.lx() Date: Fri, 2 Feb 2018 12:47:42 -0800 Subject: [PATCH 14/95] Change LVS report file to same name as Calibre --- compiler/verify/magic.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/compiler/verify/magic.py b/compiler/verify/magic.py index f521fac9..9f55e96a 100644 --- a/compiler/verify/magic.py +++ b/compiler/verify/magic.py @@ -127,7 +127,7 @@ def write_netgen_script(cell_name, sp_name): # cell_name)) # f.write("property {{{0}{1}.spice pfet}} tolerance {{w 0.1}}\n".format(OPTS.openram_temp, # cell_name)) - f.write("lvs {0}.spice {{{1} {0}}} setup.tcl lvs.results\n".format(cell_name, sp_name)) + f.write("lvs {0}.spice {{{1} {0}}} setup.tcl {0}.lvs.report\n".format(cell_name, sp_name)) f.write("quit\n") f.write("EOF\n") f.close() @@ -193,7 +193,7 @@ def run_lvs(cell_name, gds_name, sp_name): os.chdir(OPTS.openram_temp) errfile = "{0}{1}.lvs.err".format(OPTS.openram_temp, cell_name) outfile = "{0}{1}.lvs.out".format(OPTS.openram_temp, cell_name) - resultsfile = "{0}lvs.results".format(OPTS.openram_temp, cell_name) + resultsfile = "{0}{1}.lvs.report".format(OPTS.openram_temp, cell_name) cmd = "{0}run_lvs.sh lvs 2> {1} 1> {2}".format(OPTS.openram_temp, errfile, @@ -216,10 +216,12 @@ def run_lvs(cell_name, gds_name, sp_name): propertyerrors = filter(test.search, results) # Require pins to match? # Cell pin lists for pnand2_1.spice and pnand2_1 altered to match. - test = re.compile(".*altered to match.") - pinerrors = filter(test.search, results) - - total_errors = len(propertyerrors) + len(incorrect) + len(pinerrors) + # test = re.compile(".*altered to match.") + # pinerrors = filter(test.search, results) + # if len(pinerrors)>0: + # debug.warning("Pins altered to match in {}.".format(cell_name)) + + total_errors = len(propertyerrors) + len(incorrect) # If we want to ignore property errors #total_errors = len(incorrect) #if len(propertyerrors)>0: @@ -236,7 +238,7 @@ def run_lvs(cell_name, gds_name, sp_name): # Just print out the whole file, it is short. for e in results: debug.info(1,e.strip("\n")) - debug.error("LVS mismatch (results in {}lvs.results)".format(OPTS.openram_temp)) + debug.error("LVS mismatch (results in {})".format(resultsfile)) return total_errors From 63392c8d714b479854ccac4202c0ed47c8819cd1 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 2 Feb 2018 13:04:38 -0800 Subject: [PATCH 15/95] Fix gnd connection in control logic. --- compiler/control_logic.py | 1 + compiler/replica_bitline.py | 12 +++++++----- compiler/route.py | 2 +- compiler/wire.py | 2 -- 4 files changed, 9 insertions(+), 8 deletions(-) diff --git a/compiler/control_logic.py b/compiler/control_logic.py index eceeb29a..325d92e9 100644 --- a/compiler/control_logic.py +++ b/compiler/control_logic.py @@ -326,6 +326,7 @@ class control_logic(design.design): x_off += self.inv1.width # BUFFER INVERTERS FOR W_EN + # FIXME: Can we remove these two invs and size the previous one? self.pre_w_en_bar_offset = vector(x_off, y_off) self.pre_w_en_bar=self.add_inst(name="inv_pre_w_en_bar", mod=self.inv1, diff --git a/compiler/replica_bitline.py b/compiler/replica_bitline.py index 9345cb48..7fa9544a 100644 --- a/compiler/replica_bitline.py +++ b/compiler/replica_bitline.py @@ -242,11 +242,15 @@ class replica_bitline(design.design): # Add a rail in M1 from bottom to two along delay chain gnd_start = self.rbl_inv_inst.get_pin("gnd").ll() - self.offset_fix + self.add_rect(layer="metal2", + offset=gnd_start, + width=self.m2_width, + height=self.rbl_inst.uy()+2*self.m2_pitch - gnd_start.y) self.add_layout_pin(text="gnd", - layer="metal2", + layer="metal1", offset=gnd_start.scale(1,0), - width=self.m2_width, - height=self.rbl_inst.uy()+2*self.m2_pitch) + width=self.m1_width, + height=gnd_start.y) # Connect the WL pins directly to gnd for row in range(self.rows): @@ -273,8 +277,6 @@ class replica_bitline(design.design): # Connect the bitcell gnd pins to the rail gnd_pins = self.get_pins("gnd") gnd_start = gnd_pins[0].ul() - self.add_via_center(layers=("metal1", "via1", "metal2"), - offset=gnd_pins[0].uc()) rbl_gnd_pins = self.rbl_inst.get_pins("gnd") # Add L shapes to each vertical gnd rail for pin in rbl_gnd_pins: diff --git a/compiler/route.py b/compiler/route.py index 9e643bc7..03b62cff 100644 --- a/compiler/route.py +++ b/compiler/route.py @@ -7,7 +7,7 @@ from vector3d import vector3d class route(): """ - Object route + Object route (used by the router module) Add a route of minimium metal width between a set of points. The wire must be completely rectilinear and the z-dimension of the points refers to the layers (plus via) diff --git a/compiler/wire.py b/compiler/wire.py index 879baf9b..08670bb5 100644 --- a/compiler/wire.py +++ b/compiler/wire.py @@ -12,8 +12,6 @@ class wire(path): The points are the center of the wire. The layer stack is the vertical, contact/via, and horizontal layers, respectively. """ - unique_id = 1 - def __init__(self, obj, layer_stack, position_list): self.obj = obj self.layer_stack = layer_stack From 3be59fb762f1aada76ed9f08d955b38f1639b68e Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 2 Feb 2018 14:07:15 -0800 Subject: [PATCH 16/95] Change DRC output for magic to drc.summary just like calibre output. --- compiler/verify/magic.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/compiler/verify/magic.py b/compiler/verify/magic.py index 9f55e96a..f21b0ca8 100644 --- a/compiler/verify/magic.py +++ b/compiler/verify/magic.py @@ -119,6 +119,9 @@ def write_netgen_script(cell_name, sp_name): f.write("permute transistors\n") f.write("equate class {{{0}.spice nfet}} {{{1} n}}\n".format(cell_name, sp_name)) f.write("equate class {{{0}.spice pfet}} {{{1} p}}\n".format(cell_name, sp_name)) + # This circuit has symmetries and needs to be flattened to resolve them or the banks won't pass + # Is there a more elegant way to add this when needed? + f.write("flatten class {{{0}.spice precharge_array}}\n".format(cell_name)) f.write("property {{{0}.spice nfet}} remove as ad ps pd\n".format(cell_name)) f.write("property {{{0}.spice pfet}} remove as ad ps pd\n".format(cell_name)) # Allow some flexibility in W size because magic will snap to a lambda grid @@ -142,7 +145,7 @@ def run_drc(cell_name, gds_name, extract=False): cwd = os.getcwd() os.chdir(OPTS.openram_temp) errfile = "{0}{1}.drc.err".format(OPTS.openram_temp, cell_name) - outfile = "{0}{1}.drc.out".format(OPTS.openram_temp, cell_name) + outfile = "{0}{1}.drc.summary".format(OPTS.openram_temp, cell_name) cmd = "{0}run_drc.sh 2> {1} 1> {2}".format(OPTS.openram_temp, errfile, From fb90b8f5fe28d4caed6430e908267151b058640a Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 2 Feb 2018 14:08:56 -0800 Subject: [PATCH 17/95] Fix pin nameon sense amp spice. Fix NAND2 bug in hierarchical decoder. --- compiler/hierarchical_predecode.py | 4 ++-- compiler/hierarchical_predecode2x4.py | 6 +++--- compiler/tests/06_hierarchical_decoder_test.py | 4 ++++ technology/freepdk45/sp_lib/sense_amp.sp | 8 ++++---- technology/scn3me_subm/sp_lib/sense_amp.sp | 8 ++++---- 5 files changed, 17 insertions(+), 13 deletions(-) diff --git a/compiler/hierarchical_predecode.py b/compiler/hierarchical_predecode.py index b3f3ddc1..7e336405 100644 --- a/compiler/hierarchical_predecode.py +++ b/compiler/hierarchical_predecode.py @@ -250,9 +250,9 @@ class hierarchical_predecode(design.design): index_lst= nand_input_line_combination[k] if self.number_of_inputs == 2: - gate_lst = ["B","A"] + gate_lst = ["A","B"] else: - gate_lst = ["C","B","A"] + gate_lst = ["A","B","C"] # this will connect pins A,B or A,B,C for rail_pin,gate_pin in zip(index_lst,gate_lst): diff --git a/compiler/hierarchical_predecode2x4.py b/compiler/hierarchical_predecode2x4.py index 90f86f45..c621b81e 100644 --- a/compiler/hierarchical_predecode2x4.py +++ b/compiler/hierarchical_predecode2x4.py @@ -27,10 +27,10 @@ class hierarchical_predecode2x4(hierarchical_predecode): self.create_rails() self.add_input_inverters() self.add_output_inverters() - connections =[["in[0]", "in[1]", "Z[3]", "vdd", "gnd"], - ["inbar[0]", "in[1]", "Z[2]", "vdd", "gnd"], + connections =[["inbar[0]", "inbar[1]", "Z[0]", "vdd", "gnd"], ["in[0]", "inbar[1]", "Z[1]", "vdd", "gnd"], - ["inbar[0]", "inbar[1]", "Z[0]", "vdd", "gnd"]] + ["inbar[0]", "in[1]", "Z[2]", "vdd", "gnd"], + ["in[0]", "in[1]", "Z[3]", "vdd", "gnd"]] self.add_nand(connections) self.route() diff --git a/compiler/tests/06_hierarchical_decoder_test.py b/compiler/tests/06_hierarchical_decoder_test.py index 79ce20d9..57fa5ebf 100644 --- a/compiler/tests/06_hierarchical_decoder_test.py +++ b/compiler/tests/06_hierarchical_decoder_test.py @@ -32,6 +32,10 @@ class hierarchical_decoder_test(openram_test): # a = hierarchical_decoder.hierarchical_decoder(rows=8) # self.local_check(a) + debug.info(1, "Testing 16 row sample for hierarchical_decoder") + a = hierarchical_decoder.hierarchical_decoder(rows=16) + self.local_check(a) + debug.info(1, "Testing 32 row sample for hierarchical_decoder") a = hierarchical_decoder.hierarchical_decoder(rows=32) self.local_check(a) diff --git a/technology/freepdk45/sp_lib/sense_amp.sp b/technology/freepdk45/sp_lib/sense_amp.sp index 112d96f9..b5778306 100644 --- a/technology/freepdk45/sp_lib/sense_amp.sp +++ b/technology/freepdk45/sp_lib/sense_amp.sp @@ -1,11 +1,11 @@ -.SUBCKT sense_amp bl br dout sclk vdd gnd +.SUBCKT sense_amp bl br dout en vdd gnd M_1 dout net_1 vdd vdd pmos_vtg w=540.0n l=50.0n M_3 net_1 dout vdd vdd pmos_vtg w=540.0n l=50.0n M_2 dout net_1 net_2 gnd nmos_vtg w=270.0n l=50.0n M_8 net_1 dout net_2 gnd nmos_vtg w=270.0n l=50.0n -M_5 bl sclk dout vdd pmos_vtg w=720.0n l=50.0n -M_6 br sclk net_1 vdd pmos_vtg w=720.0n l=50.0n -M_7 net_2 sclk gnd gnd nmos_vtg w=270.0n l=50.0n +M_5 bl en dout vdd pmos_vtg w=720.0n l=50.0n +M_6 br en net_1 vdd pmos_vtg w=720.0n l=50.0n +M_7 net_2 en gnd gnd nmos_vtg w=270.0n l=50.0n .ENDS sense_amp diff --git a/technology/scn3me_subm/sp_lib/sense_amp.sp b/technology/scn3me_subm/sp_lib/sense_amp.sp index 2d0ab02a..1399228d 100644 --- a/technology/scn3me_subm/sp_lib/sense_amp.sp +++ b/technology/scn3me_subm/sp_lib/sense_amp.sp @@ -1,12 +1,12 @@ *********************** "sense_amp" ****************************** -.SUBCKT sense_amp bl br dout sclk vdd gnd +.SUBCKT sense_amp bl br dout en vdd gnd M_1 dout net_1 vdd vdd p W='5.4*1u' L=0.6u M_2 dout net_1 net_2 gnd n W='2.7*1u' L=0.6u M_3 net_1 dout vdd vdd p W='5.4*1u' L=0.6u M_4 net_1 dout net_2 gnd n W='2.7*1u' L=0.6u -M_5 bl sclk dout vdd p W='7.2*1u' L=0.6u -M_6 br sclk net_1 vdd p W='7.2*1u' L=0.6u -M_7 net_2 sclk gnd gnd n W='2.7*1u' L=0.6u +M_5 bl en dout vdd p W='7.2*1u' L=0.6u +M_6 br en net_1 vdd p W='7.2*1u' L=0.6u +M_7 net_2 en gnd gnd n W='2.7*1u' L=0.6u .ENDS sense_amp From 2a8199c3ca565a8501668c2a72ae468a39e1d232 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 2 Feb 2018 14:21:31 -0800 Subject: [PATCH 18/95] Force re-extract of cells in DRC/LVS. --- compiler/verify/magic.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/compiler/verify/magic.py b/compiler/verify/magic.py index f21b0ca8..6bfa877e 100644 --- a/compiler/verify/magic.py +++ b/compiler/verify/magic.py @@ -86,7 +86,7 @@ def write_magic_script(cell_name, gds_name, extract=False): f.write("drc count total\n") f.write("drc count\n") if extract: - f.write("extract\n") + f.write("extract all\n") f.write("ext2spice hierarchy on\n") f.write("ext2spice scale off\n") # Can choose hspice, ngspice, or spice3, From 9d7dc4c552213057f391716b1bd883027d9cbec9 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 2 Feb 2018 14:26:09 -0800 Subject: [PATCH 19/95] Reset even if not purging temp files. --- compiler/tests/testutils.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/compiler/tests/testutils.py b/compiler/tests/testutils.py index ced80bb7..6db5c60d 100644 --- a/compiler/tests/testutils.py +++ b/compiler/tests/testutils.py @@ -39,13 +39,12 @@ class openram_test(unittest.TestCase): self.reset() self.fail("LVS mismatch: {}".format(a.name)) + self.reset() if OPTS.purge_temp: self.cleanup() def cleanup(self): """ Reset the duplicate checker and cleanup files. """ - self.reset() - files = glob.glob(OPTS.openram_temp + '*') for f in files: # Only remove the files From 27dbb95c19e99d5e826b8e3d0e517a356e52e65a Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 2 Feb 2018 14:26:39 -0800 Subject: [PATCH 20/95] Fix name of column mux. --- compiler/single_level_column_mux.py | 5 +++-- compiler/single_level_column_mux_array.py | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/compiler/single_level_column_mux.py b/compiler/single_level_column_mux.py index 373aaee0..3358190e 100644 --- a/compiler/single_level_column_mux.py +++ b/compiler/single_level_column_mux.py @@ -12,9 +12,10 @@ class single_level_column_mux(design.design): Creates a single columnmux cell. """ - def __init__(self, name, tx_size): + def __init__(self, tx_size): + name="single_level_column_mux_{}".format(tx_size) design.design.__init__(self, name) - debug.info(2, "create single columnmux cell: {0}".format(name)) + debug.info(2, "create single column mux cell: {0}".format(name)) c = reload(__import__(OPTS.bitcell)) self.mod_bitcell = getattr(c, OPTS.bitcell) diff --git a/compiler/single_level_column_mux_array.py b/compiler/single_level_column_mux_array.py index 0e2c8752..fcdbcbc4 100644 --- a/compiler/single_level_column_mux_array.py +++ b/compiler/single_level_column_mux_array.py @@ -43,8 +43,8 @@ class single_level_column_mux_array(design.design): self.add_enclosure(self.mux_inst, "pwell") def add_modules(self): - self.mux = single_level_column_mux(name="single_level_column_mux", - tx_size=8) + # FIXME: Why is this 8x? + self.mux = single_level_column_mux(tx_size=8) self.add_mod(self.mux) @@ -58,6 +58,7 @@ class single_level_column_mux_array(design.design): # one set of metal1 routes for select signals and a pair to interconnect the mux outputs bl/br # one extra route pitch is to space from the sense amp self.route_height = (self.words_per_row + 3)*self.m1_pitch + # mux height plus routing signal height plus well spacing at the top self.height = self.mux.height + self.route_height + drc["pwell_to_nwell"] From 9d043b904e9035bd6514513ad98d663d9ca0a6b2 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 2 Feb 2018 14:26:53 -0800 Subject: [PATCH 21/95] Remove unnecessary design reset --- compiler/globals.py | 4 ---- 1 file changed, 4 deletions(-) diff --git a/compiler/globals.py b/compiler/globals.py index a40006c2..e579e949 100644 --- a/compiler/globals.py +++ b/compiler/globals.py @@ -177,10 +177,6 @@ def end_openram(): """ Clean up openram for a proper exit """ cleanup_paths() - # Reset the static duplicate name checker for unit tests. - # This is needed for running unit tests. - import design - design.design.name_map=[] def cleanup_paths(): From ffcf58100ef6a1e33b82205c78312c9b3707cd43 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 2 Feb 2018 15:17:21 -0800 Subject: [PATCH 22/95] Clean up column mux by moving pins to own function. Adjust spacing between column mux and bitcell to prevent DRCs. Fix up find lowest/highest functions when no objects or instances in a module. --- compiler/bank.py | 4 +- compiler/hierarchy_layout.py | 45 ++++++++++++---- compiler/single_level_column_mux.py | 17 +++---- compiler/single_level_column_mux_array.py | 62 +++++++++++++---------- 4 files changed, 78 insertions(+), 50 deletions(-) diff --git a/compiler/bank.py b/compiler/bank.py index c792ee23..f57cce99 100644 --- a/compiler/bank.py +++ b/compiler/bank.py @@ -99,8 +99,8 @@ class bank(design.design): self.add_precharge_array() if self.col_addr_size > 0: + self.column_mux_height = self.column_mux_array.height + 0.5*self.m2_width self.add_column_mux_array() - self.column_mux_height = self.column_mux_array.height else: self.column_mux_height = 0 if self.col_addr_size > 1: # size 1 is from addr FF @@ -249,7 +249,7 @@ class bank(design.design): def add_column_mux_array(self): """ Adding Column Mux when words_per_row > 1 . """ - y_offset = self.column_mux_array.height + y_offset = self.column_mux_height self.col_mux_array_inst=self.add_inst(name="column_mux_array", mod=self.column_mux_array, offset=vector(0,y_offset).scale(-1,-1)) diff --git a/compiler/hierarchy_layout.py b/compiler/hierarchy_layout.py index dc923d44..60a9b24a 100644 --- a/compiler/hierarchy_layout.py +++ b/compiler/hierarchy_layout.py @@ -60,21 +60,44 @@ class layout(lef.lef): def find_lowest_coords(self): """Finds the lowest set of 2d cartesian coordinates within this layout""" - - lowestx1 = min(obj.lx() for obj in self.objs if obj.name!="label") - lowesty1 = min(obj.by() for obj in self.objs if obj.name!="label") - lowestx2 = min(inst.lx() for inst in self.insts) - lowesty2 = min(inst.by() for inst in self.insts) - return vector(min(lowestx1, lowestx2), min(lowesty1, lowesty2)) + + if len(self.objs)>0: + lowestx1 = min(obj.lx() for obj in self.objs if obj.name!="label") + lowesty1 = min(obj.by() for obj in self.objs if obj.name!="label") + else: + lowestx1=lowesty1=None + if len(self.insts)>0: + lowestx2 = min(inst.lx() for inst in self.insts) + lowesty2 = min(inst.by() for inst in self.insts) + else: + lowestx2=lowesty2=None + if lowestx1==None: + return vector(lowestx2,lowesty2) + elif lowestx2==None: + return vector(lowestx1,lowesty1) + else: + return vector(min(lowestx1, lowestx2), min(lowesty1, lowesty2)) def find_highest_coords(self): """Finds the highest set of 2d cartesian coordinates within this layout""" - highestx1 = min(obj.rx() for obj in self.objs if obj.name!="label") - highesty1 = min(obj.uy() for obj in self.objs if obj.name!="label") - highestx2 = min(inst.rx() for inst in self.insts) - highesty2 = min(inst.uy() for inst in self.insts) - return vector(min(highestx1, highestx2), min(highesty1, highesty2)) + + if len(self.objs)>0: + highestx1 = max(obj.rx() for obj in self.objs if obj.name!="label") + highesty1 = max(obj.uy() for obj in self.objs if obj.name!="label") + else: + highestx1=highesty1=None + if len(self.insts)>0: + highestx2 = max(inst.rx() for inst in self.insts) + highesty2 = max(inst.uy() for inst in self.insts) + else: + highestx2=highesty2=None + if highestx1==None: + return vector(highestx2,highesty2) + elif highestx2==None: + return vector(highestx1,highesty1) + else: + return vector(max(highestx1, highestx2), max(highesty1, highesty2)) def translate_all(self, offset): diff --git a/compiler/single_level_column_mux.py b/compiler/single_level_column_mux.py index 3358190e..8b8fd994 100644 --- a/compiler/single_level_column_mux.py +++ b/compiler/single_level_column_mux.py @@ -28,9 +28,9 @@ class single_level_column_mux(design.design): def create_layout(self): self.add_ptx() - + self.pin_height = 2*self.m2_width self.width = self.bitcell.width - self.height = self.nmos2.uy() + self.height = self.nmos2.uy() + self.pin_height self.connect_poly() self.add_gnd_rail() self.add_bitline_pins() @@ -43,26 +43,25 @@ class single_level_column_mux(design.design): bl_pos = vector(self.bitcell.get_pin("BL").lx(), 0) br_pos = vector(self.bitcell.get_pin("BR").lx(), 0) - pin_height = 2*self.m2_width # bl and br self.add_layout_pin(text="bl", layer="metal2", - offset=bl_pos + vector(0,self.height - pin_height), - height=pin_height) + offset=bl_pos + vector(0,self.height - self.pin_height), + height=self.pin_height) self.add_layout_pin(text="br", layer="metal2", - offset=br_pos + vector(0,self.height - pin_height), - height=pin_height) + offset=br_pos + vector(0,self.height - self.pin_height), + height=self.pin_height) # bl_out and br_out self.add_layout_pin(text="bl_out", layer="metal2", offset=bl_pos, - height=pin_height) + height=self.pin_height) self.add_layout_pin(text="br_out", layer="metal2", offset=br_pos, - height=pin_height) + height=self.pin_height) def add_ptx(self): diff --git a/compiler/single_level_column_mux_array.py b/compiler/single_level_column_mux_array.py index fcdbcbc4..61e2d533 100644 --- a/compiler/single_level_column_mux_array.py +++ b/compiler/single_level_column_mux_array.py @@ -40,8 +40,14 @@ class single_level_column_mux_array(design.design): self.setup_layout_constants() self.create_array() self.add_routing() + # Find the highest shapes to determine height before adding well + highest = self.find_highest_coords() + self.height = highest.y + self.add_layout_pins() self.add_enclosure(self.mux_inst, "pwell") + + def add_modules(self): # FIXME: Why is this 8x? self.mux = single_level_column_mux(tx_size=8) @@ -51,16 +57,11 @@ class single_level_column_mux_array(design.design): def setup_layout_constants(self): self.column_addr_size = num_of_inputs = int(self.words_per_row / 2) self.width = self.columns * self.mux.width - self.m1_pitch = contact.m1m2.width + max(drc["metal1_to_metal1"],drc["metal2_to_metal2"]) - # To correct the offset between M1 and M2 via enclosures - self.offset_fix = vector(0,0.5*(drc["minwidth_metal2"]-drc["minwidth_metal1"])) # one set of metal1 routes for select signals and a pair to interconnect the mux outputs bl/br # one extra route pitch is to space from the sense amp self.route_height = (self.words_per_row + 3)*self.m1_pitch - # mux height plus routing signal height plus well spacing at the top - self.height = self.mux.height + self.route_height + drc["pwell_to_nwell"] def create_array(self): @@ -73,28 +74,6 @@ class single_level_column_mux_array(design.design): self.mux_inst.append(self.add_inst(name=name, mod=self.mux, offset=x_off)) - - offset = self.mux_inst[-1].get_pin("bl").ll() - self.add_layout_pin(text="bl[{}]".format(col_num), - layer="metal2", - offset=offset, - height=self.height-offset.y) - - offset = self.mux_inst[-1].get_pin("br").ll() - self.add_layout_pin(text="br[{}]".format(col_num), - layer="metal2", - offset=offset, - height=self.height-offset.y) - - gnd_pins = self.mux_inst[-1].get_pins("gnd") - for gnd_pin in gnd_pins: - # only do even colums to avoid duplicates - offset = gnd_pin.ll() - if col_num % 2 == 0: - self.add_layout_pin(text="gnd", - layer="metal2", - offset=offset.scale(1,0), - height=self.height) self.connect_inst(["bl[{}]".format(col_num), "br[{}]".format(col_num), @@ -103,7 +82,34 @@ class single_level_column_mux_array(design.design): "sel[{}]".format(col_num % self.words_per_row), "gnd"]) - + + def add_layout_pins(self): + """ Add the pins after we determine the height. """ + # For every column, add a pass gate + for col_num in range(self.columns): + mux_inst = self.mux_inst[col_num] + offset = mux_inst.get_pin("bl").ll() + self.add_layout_pin(text="bl[{}]".format(col_num), + layer="metal2", + offset=offset, + height=self.height-offset.y) + + offset = mux_inst.get_pin("br").ll() + self.add_layout_pin(text="br[{}]".format(col_num), + layer="metal2", + offset=offset, + height=self.height-offset.y) + + gnd_pins = mux_inst.get_pins("gnd") + for gnd_pin in gnd_pins: + # only do even colums to avoid duplicates + offset = gnd_pin.ll() + if col_num % 2 == 0: + self.add_layout_pin(text="gnd", + layer="metal2", + offset=offset.scale(1,0), + height=self.height) + def add_routing(self): self.add_horizontal_input_rail() From 3873f72a589e0784ad4eae58573e87811835e327 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 2 Feb 2018 15:26:15 -0800 Subject: [PATCH 23/95] Ensure wells are spaced in the bank select and column decoder --- compiler/bank.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/compiler/bank.py b/compiler/bank.py index f57cce99..142d2678 100644 --- a/compiler/bank.py +++ b/compiler/bank.py @@ -99,6 +99,8 @@ class bank(design.design): self.add_precharge_array() if self.col_addr_size > 0: + # The m2 width is because the 6T cell may have vias on the boundary edge for + # overlapping when making the array self.column_mux_height = self.column_mux_array.height + 0.5*self.m2_width self.add_column_mux_array() else: @@ -434,7 +436,8 @@ class bank(design.design): # Place the col decoder just to the left of the control bus - x_off = self.m2_pitch + self.overall_central_bus_width + self.col_decoder.width + gap = max(drc["pwell_to_nwell"], 2*self.m2_pitch) + x_off = gap + self.overall_central_bus_width + self.col_decoder.width # Place the col decoder below the the address flops which are below the row decoder (lave some space for wells) vertical_gap = max(drc["pwell_to_nwell"], 2*self.m2_pitch) y_off = self.decoder.predecoder_height + self.msf_address.width + self.col_decoder.height + 2*vertical_gap From 1415d139a31cc32d612355f6ad1c85088c7bd64c Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 2 Feb 2018 15:33:35 -0800 Subject: [PATCH 24/95] Specify file format for sp spice extension. --- compiler/verify/magic.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/compiler/verify/magic.py b/compiler/verify/magic.py index 6bfa877e..d83f5b56 100644 --- a/compiler/verify/magic.py +++ b/compiler/verify/magic.py @@ -44,8 +44,8 @@ EOF 3. netgen can perform LVS with: #!/bin/sh netgen -noconsole < Date: Fri, 2 Feb 2018 15:50:45 -0800 Subject: [PATCH 25/95] Route to the right in the bank decode for DRC. --- compiler/sram.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/compiler/sram.py b/compiler/sram.py index 9d602097..70e6f80a 100644 --- a/compiler/sram.py +++ b/compiler/sram.py @@ -650,7 +650,7 @@ class sram(design.design): # Connect the output bar to select 0 msb_out_pin = self.msb_address_inst.get_pin("dout_bar[0]") msb_out_pos = msb_out_pin.rc() - out_extend_right_pos = msb_out_pos + vector(self.m2_pitch,0) + out_extend_right_pos = msb_out_pos + vector(2*self.m2_pitch,0) out_extend_up_pos = out_extend_right_pos + vector(0,self.m2_width) rail_pos = vector(self.vert_control_bus_positions["bank_sel[0]"].x,out_extend_up_pos.y) self.add_path("metal2",[msb_out_pos,out_extend_right_pos,out_extend_up_pos]) @@ -660,7 +660,7 @@ class sram(design.design): # Connect the output to select 1 msb_out_pin = self.msb_address_inst.get_pin("dout[0]") msb_out_pos = msb_out_pin.rc() - out_extend_right_pos = msb_out_pos + vector(self.m2_pitch,0) + out_extend_right_pos = msb_out_pos + vector(2*self.m2_pitch,0) out_extend_down_pos = out_extend_right_pos - vector(0,2*self.m1_pitch) rail_pos = vector(self.vert_control_bus_positions["bank_sel[1]"].x,out_extend_down_pos.y) self.add_path("metal2",[msb_out_pos,out_extend_right_pos,out_extend_down_pos]) From 712789527003a5014aacc0ad283a5b43ec28b177 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 2 Feb 2018 15:51:29 -0800 Subject: [PATCH 26/95] Update LEF files for unit tests --- .../tests/golden/sram_2_16_1_freepdk45.lef | 121 +++++++++--------- .../tests/golden/sram_2_16_1_scn3me_subm.lef | 120 ++++++++--------- 2 files changed, 121 insertions(+), 120 deletions(-) diff --git a/compiler/tests/golden/sram_2_16_1_freepdk45.lef b/compiler/tests/golden/sram_2_16_1_freepdk45.lef index 88cd5035..c968fa93 100644 --- a/compiler/tests/golden/sram_2_16_1_freepdk45.lef +++ b/compiler/tests/golden/sram_2_16_1_freepdk45.lef @@ -7,11 +7,11 @@ UNITS END UNITS SITE MacroSite CLASS Core ; - SIZE 175.0 by 135.0 ; + SIZE 21695.0 by 42337.5 ; END MacroSite MACRO sram_2_16_1_freepdk45 CLASS BLOCK ; - SIZE 175.0 BY 135.0 ; + SIZE 21695.0 BY 42337.5 ; SYMMETRY X Y R90 ; SITE MacroSite ; PIN DATA[0] @@ -606,14 +606,14 @@ MACRO sram_2_16_1_freepdk45 RECT 10785.0 10360.0 10420.0 10425.0 ; RECT 11060.0 11122.5 9125.0 11187.5 ; RECT 10785.0 12467.5 8850.0 12532.5 ; - RECT 9675.0 8722.5 8292.5 8787.5 ; - RECT 9400.0 8937.5 8550.0 9002.5 ; - RECT 9125.0 10562.5 8292.5 10627.5 ; - RECT 9400.0 10347.5 8550.0 10412.5 ; - RECT 9675.0 11412.5 8292.5 11477.5 ; - RECT 8850.0 11627.5 8550.0 11692.5 ; - RECT 9125.0 13252.5 8292.5 13317.5 ; - RECT 8850.0 13037.5 8550.0 13102.5 ; + RECT 9675.0 8937.5 8550.0 9002.5 ; + RECT 9400.0 8722.5 8292.5 8787.5 ; + RECT 9125.0 10347.5 8550.0 10412.5 ; + RECT 9400.0 10562.5 8292.5 10627.5 ; + RECT 9675.0 11627.5 8550.0 11692.5 ; + RECT 8850.0 11412.5 8292.5 11477.5 ; + RECT 9125.0 13037.5 8550.0 13102.5 ; + RECT 8850.0 13252.5 8292.5 13317.5 ; RECT 7845.0 8937.5 7780.0 9002.5 ; RECT 7845.0 8925.0 7780.0 8990.0 ; RECT 8062.5 8937.5 7812.5 9002.5 ; @@ -894,14 +894,14 @@ MACRO sram_2_16_1_freepdk45 RECT 9057.5 11122.5 9192.5 11187.5 ; RECT 10717.5 12467.5 10852.5 12532.5 ; RECT 8782.5 12467.5 8917.5 12532.5 ; - RECT 9607.5 8722.5 9742.5 8787.5 ; - RECT 9332.5 8937.5 9467.5 9002.5 ; - RECT 9057.5 10562.5 9192.5 10627.5 ; - RECT 9332.5 10347.5 9467.5 10412.5 ; - RECT 9607.5 11412.5 9742.5 11477.5 ; - RECT 8782.5 11627.5 8917.5 11692.5 ; - RECT 9057.5 13252.5 9192.5 13317.5 ; - RECT 8782.5 13037.5 8917.5 13102.5 ; + RECT 9607.5 8937.5 9742.5 9002.5 ; + RECT 9332.5 8722.5 9467.5 8787.5 ; + RECT 9057.5 10347.5 9192.5 10412.5 ; + RECT 9332.5 10562.5 9467.5 10627.5 ; + RECT 9607.5 11627.5 9742.5 11692.5 ; + RECT 8782.5 11412.5 8917.5 11477.5 ; + RECT 9057.5 13037.5 9192.5 13102.5 ; + RECT 8782.5 13252.5 8917.5 13317.5 ; RECT 7335.0 8925.0 7130.0 8990.0 ; RECT 7335.0 10360.0 7130.0 10425.0 ; RECT 7335.0 11615.0 7130.0 11680.0 ; @@ -925,14 +925,14 @@ MACRO sram_2_16_1_freepdk45 RECT 10785.0 15740.0 10420.0 15805.0 ; RECT 11060.0 16502.5 9125.0 16567.5 ; RECT 10785.0 17847.5 8850.0 17912.5 ; - RECT 9675.0 14102.5 8292.5 14167.5 ; - RECT 9400.0 14317.5 8550.0 14382.5 ; - RECT 9125.0 15942.5 8292.5 16007.5 ; - RECT 9400.0 15727.5 8550.0 15792.5 ; - RECT 9675.0 16792.5 8292.5 16857.5 ; - RECT 8850.0 17007.5 8550.0 17072.5 ; - RECT 9125.0 18632.5 8292.5 18697.5 ; - RECT 8850.0 18417.5 8550.0 18482.5 ; + RECT 9675.0 14317.5 8550.0 14382.5 ; + RECT 9400.0 14102.5 8292.5 14167.5 ; + RECT 9125.0 15727.5 8550.0 15792.5 ; + RECT 9400.0 15942.5 8292.5 16007.5 ; + RECT 9675.0 17007.5 8550.0 17072.5 ; + RECT 8850.0 16792.5 8292.5 16857.5 ; + RECT 9125.0 18417.5 8550.0 18482.5 ; + RECT 8850.0 18632.5 8292.5 18697.5 ; RECT 7845.0 14317.5 7780.0 14382.5 ; RECT 7845.0 14305.0 7780.0 14370.0 ; RECT 8062.5 14317.5 7812.5 14382.5 ; @@ -1213,14 +1213,14 @@ MACRO sram_2_16_1_freepdk45 RECT 9057.5 16502.5 9192.5 16567.5 ; RECT 10717.5 17847.5 10852.5 17912.5 ; RECT 8782.5 17847.5 8917.5 17912.5 ; - RECT 9607.5 14102.5 9742.5 14167.5 ; - RECT 9332.5 14317.5 9467.5 14382.5 ; - RECT 9057.5 15942.5 9192.5 16007.5 ; - RECT 9332.5 15727.5 9467.5 15792.5 ; - RECT 9607.5 16792.5 9742.5 16857.5 ; - RECT 8782.5 17007.5 8917.5 17072.5 ; - RECT 9057.5 18632.5 9192.5 18697.5 ; - RECT 8782.5 18417.5 8917.5 18482.5 ; + RECT 9607.5 14317.5 9742.5 14382.5 ; + RECT 9332.5 14102.5 9467.5 14167.5 ; + RECT 9057.5 15727.5 9192.5 15792.5 ; + RECT 9332.5 15942.5 9467.5 16007.5 ; + RECT 9607.5 17007.5 9742.5 17072.5 ; + RECT 8782.5 16792.5 8917.5 16857.5 ; + RECT 9057.5 18417.5 9192.5 18482.5 ; + RECT 8782.5 18632.5 8917.5 18697.5 ; RECT 7335.0 14305.0 7130.0 14370.0 ; RECT 7335.0 15740.0 7130.0 15805.0 ; RECT 7335.0 16995.0 7130.0 17060.0 ; @@ -3713,6 +3713,7 @@ MACRO sram_2_16_1_freepdk45 RECT 1377.5 26320.0 1312.5 27925.0 ; RECT 32.5 27925.0 -32.5 31335.0 ; RECT 32.5 27140.0 -32.5 27925.0 ; + RECT 1347.5 31302.5 1345.0 31367.5 ; RECT 32.5 31302.5 -32.5 31367.5 ; RECT 32.5 31130.0 -32.5 31335.0 ; RECT 8.881784197e-13 31302.5 -45.0 31367.5 ; @@ -4167,7 +4168,8 @@ MACRO sram_2_16_1_freepdk45 RECT 1377.5 30615.0 1312.5 31175.0 ; RECT 1380.0 33907.5 935.0 33972.5 ; RECT 1380.0 36317.5 935.0 36382.5 ; - RECT 1345.0 36817.5 935.0 36882.5 ; + RECT 1380.0 31862.5 935.0 31927.5 ; + RECT 935.0 31862.5 230.0 31927.5 ; RECT 20.0 35112.5 935.0 35177.5 ; RECT 20.0 32422.5 935.0 32487.5 ; RECT 2005.0 33435.0 1940.0 34135.0 ; @@ -4316,8 +4318,8 @@ MACRO sram_2_16_1_freepdk45 RECT 1377.5 36317.5 1312.5 36452.5 ; RECT 1377.5 34135.0 1312.5 34270.0 ; RECT 1377.5 31760.0 1312.5 31895.0 ; - RECT 1277.5 36817.5 1412.5 36882.5 ; - RECT 867.5 36817.5 1002.5 36882.5 ; + RECT 867.5 31862.5 1002.5 31927.5 ; + RECT 162.5 31862.5 297.5 31927.5 ; RECT 2005.0 33367.5 1940.0 33502.5 ; RECT 1105.0 32627.5 1240.0 32692.5 ; RECT 1105.0 32030.0 1240.0 32095.0 ; @@ -4326,7 +4328,7 @@ MACRO sram_2_16_1_freepdk45 RECT 2005.0 31335.0 1940.0 32100.0 ; RECT 20.0 31335.0 -45.0 36577.5 ; RECT 2722.5 31335.0 2657.5 34135.0 ; - RECT 1380.0 31335.0 1310.0 32455.0 ; + RECT 1380.0 31335.0 1315.0 31895.0 ; RECT 4067.5 31335.0 4002.5 34135.0 ; RECT 3455.0 26182.5 3390.0 26047.5 ; RECT 3455.0 22102.5 3390.0 21967.5 ; @@ -4529,14 +4531,14 @@ MACRO sram_2_16_1_freepdk45 RECT 9057.5 11120.0 9192.5 11190.0 ; RECT 10717.5 12465.0 10852.5 12535.0 ; RECT 8782.5 12465.0 8917.5 12535.0 ; - RECT 9607.5 8720.0 9742.5 8790.0 ; - RECT 9332.5 8935.0 9467.5 9005.0 ; - RECT 9057.5 10560.0 9192.5 10630.0 ; - RECT 9332.5 10345.0 9467.5 10415.0 ; - RECT 9607.5 11410.0 9742.5 11480.0 ; - RECT 8782.5 11625.0 8917.5 11695.0 ; - RECT 9057.5 13250.0 9192.5 13320.0 ; - RECT 8782.5 13035.0 8917.5 13105.0 ; + RECT 9607.5 8935.0 9742.5 9005.0 ; + RECT 9332.5 8720.0 9467.5 8790.0 ; + RECT 9057.5 10345.0 9192.5 10415.0 ; + RECT 9332.5 10560.0 9467.5 10630.0 ; + RECT 9607.5 11625.0 9742.5 11695.0 ; + RECT 8782.5 11410.0 8917.5 11480.0 ; + RECT 9057.5 13035.0 9192.5 13105.0 ; + RECT 8782.5 13250.0 8917.5 13320.0 ; RECT 11095.0 8330.0 11025.0 13570.0 ; RECT 10820.0 8330.0 10750.0 13570.0 ; RECT 9160.0 13710.0 9090.0 18950.0 ; @@ -4583,14 +4585,14 @@ MACRO sram_2_16_1_freepdk45 RECT 9057.5 16500.0 9192.5 16570.0 ; RECT 10717.5 17845.0 10852.5 17915.0 ; RECT 8782.5 17845.0 8917.5 17915.0 ; - RECT 9607.5 14100.0 9742.5 14170.0 ; - RECT 9332.5 14315.0 9467.5 14385.0 ; - RECT 9057.5 15940.0 9192.5 16010.0 ; - RECT 9332.5 15725.0 9467.5 15795.0 ; - RECT 9607.5 16790.0 9742.5 16860.0 ; - RECT 8782.5 17005.0 8917.5 17075.0 ; - RECT 9057.5 18630.0 9192.5 18700.0 ; - RECT 8782.5 18415.0 8917.5 18485.0 ; + RECT 9607.5 14315.0 9742.5 14385.0 ; + RECT 9332.5 14100.0 9467.5 14170.0 ; + RECT 9057.5 15725.0 9192.5 15795.0 ; + RECT 9332.5 15940.0 9467.5 16010.0 ; + RECT 9607.5 17005.0 9742.5 17075.0 ; + RECT 8782.5 16790.0 8917.5 16860.0 ; + RECT 9057.5 18415.0 9192.5 18485.0 ; + RECT 8782.5 18630.0 8917.5 18700.0 ; RECT 11095.0 13710.0 11025.0 18950.0 ; RECT 10820.0 13710.0 10750.0 18950.0 ; RECT 7385.0 19695.0 7455.0 19765.0 ; @@ -5162,10 +5164,9 @@ MACRO sram_2_16_1_freepdk45 RECT 1610.0 26387.5 1540.0 26252.5 ; RECT 2315.0 25737.5 2245.0 25602.5 ; RECT 2315.0 26387.5 2245.0 26252.5 ; - RECT 1380.0 31895.0 1310.0 36750.0 ; - RECT 1380.0 32455.0 1310.0 32660.0 ; - RECT 1380.0 32660.0 1310.0 36850.0 ; - RECT 970.0 36645.0 900.0 36850.0 ; + RECT 1380.0 31895.0 1310.0 36955.0 ; + RECT 970.0 31895.0 900.0 36645.0 ; + RECT 265.0 31895.0 195.0 36645.0 ; RECT 1207.5 32062.5 1137.5 32660.0 ; RECT 785.0 32062.5 715.0 32342.5 ; RECT 3372.5 34457.5 3442.5 34852.5 ; @@ -5192,8 +5193,8 @@ MACRO sram_2_16_1_freepdk45 RECT 1380.0 36317.5 1310.0 36452.5 ; RECT 1380.0 34135.0 1310.0 34270.0 ; RECT 1380.0 31760.0 1310.0 31895.0 ; - RECT 1277.5 36815.0 1412.5 36885.0 ; - RECT 867.5 36815.0 1002.5 36885.0 ; + RECT 867.5 31860.0 1002.5 31930.0 ; + RECT 162.5 31860.0 297.5 31930.0 ; RECT 1105.0 32625.0 1240.0 32695.0 ; RECT 1105.0 32027.5 1240.0 32097.5 ; RECT 682.5 32027.5 817.5 32097.5 ; diff --git a/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef b/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef index 5e8d62ab..457233ff 100644 --- a/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef +++ b/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef @@ -7,11 +7,11 @@ UNITS END UNITS SITE MacroSite CLASS Core ; - SIZE 2250.0 by 1200.0 ; + SIZE 277800.0 by 440700.0 ; END MacroSite MACRO sram_2_16_1_scn3me_subm CLASS BLOCK ; - SIZE 2250.0 BY 1200.0 ; + SIZE 277800.0 BY 440700.0 ; SYMMETRY X Y R90 ; SITE MacroSite ; PIN DATA[0] @@ -577,14 +577,14 @@ MACRO sram_2_16_1_scn3me_subm RECT 127050.0 109650.0 122100.0 110550.0 ; RECT 130050.0 118350.0 105450.0 119250.0 ; RECT 127050.0 132150.0 102450.0 133050.0 ; - RECT 111450.0 93750.0 94500.0 94650.0 ; - RECT 108450.0 96450.0 97500.0 97350.0 ; - RECT 105450.0 111150.0 94500.0 112050.0 ; - RECT 108450.0 108450.0 97500.0 109350.0 ; - RECT 111450.0 121350.0 94500.0 122250.0 ; - RECT 102450.0 124050.0 97500.0 124950.0 ; - RECT 105450.0 138750.0 94500.0 139650.0 ; - RECT 102450.0 136050.0 97500.0 136950.0 ; + RECT 111450.0 96450.0 97500.0 97350.0 ; + RECT 108450.0 93750.0 94500.0 94650.0 ; + RECT 105450.0 108450.0 97500.0 109350.0 ; + RECT 108450.0 111150.0 94500.0 112050.0 ; + RECT 111450.0 124050.0 97500.0 124950.0 ; + RECT 102450.0 121350.0 94500.0 122250.0 ; + RECT 105450.0 136050.0 97500.0 136950.0 ; + RECT 102450.0 138750.0 94500.0 139650.0 ; RECT 88050.0 96450.0 87150.0 97350.0 ; RECT 88050.0 95250.0 87150.0 96150.0 ; RECT 92100.0 96450.0 87600.0 97350.0 ; @@ -865,14 +865,14 @@ MACRO sram_2_16_1_scn3me_subm RECT 104850.0 118200.0 106050.0 119400.0 ; RECT 126450.0 132000.0 127650.0 133200.0 ; RECT 101850.0 132000.0 103050.0 133200.0 ; - RECT 110850.0 93600.0 112050.0 94800.0 ; - RECT 107850.0 96300.0 109050.0 97500.0 ; - RECT 104850.0 111000.0 106050.0 112200.0 ; - RECT 107850.0 108300.0 109050.0 109500.0 ; - RECT 110850.0 121200.0 112050.0 122400.0 ; - RECT 101850.0 123900.0 103050.0 125100.0 ; - RECT 104850.0 138600.0 106050.0 139800.0 ; - RECT 101850.0 135900.0 103050.0 137100.0 ; + RECT 110850.0 96300.0 112050.0 97500.0 ; + RECT 107850.0 93600.0 109050.0 94800.0 ; + RECT 104850.0 108300.0 106050.0 109500.0 ; + RECT 107850.0 111000.0 109050.0 112200.0 ; + RECT 110850.0 123900.0 112050.0 125100.0 ; + RECT 101850.0 121200.0 103050.0 122400.0 ; + RECT 104850.0 135900.0 106050.0 137100.0 ; + RECT 101850.0 138600.0 103050.0 139800.0 ; RECT 79650.0 95250.0 75900.0 96150.0 ; RECT 79650.0 109650.0 75900.0 110550.0 ; RECT 79650.0 122850.0 75900.0 123750.0 ; @@ -896,14 +896,14 @@ MACRO sram_2_16_1_scn3me_subm RECT 127050.0 164850.0 122100.0 165750.0 ; RECT 130050.0 173550.0 105450.0 174450.0 ; RECT 127050.0 187350.0 102450.0 188250.0 ; - RECT 111450.0 148950.0 94500.0 149850.0 ; - RECT 108450.0 151650.0 97500.0 152550.0 ; - RECT 105450.0 166350.0 94500.0 167250.0 ; - RECT 108450.0 163650.0 97500.0 164550.0 ; - RECT 111450.0 176550.0 94500.0 177450.0 ; - RECT 102450.0 179250.0 97500.0 180150.0 ; - RECT 105450.0 193950.0 94500.0 194850.0 ; - RECT 102450.0 191250.0 97500.0 192150.0 ; + RECT 111450.0 151650.0 97500.0 152550.0 ; + RECT 108450.0 148950.0 94500.0 149850.0 ; + RECT 105450.0 163650.0 97500.0 164550.0 ; + RECT 108450.0 166350.0 94500.0 167250.0 ; + RECT 111450.0 179250.0 97500.0 180150.0 ; + RECT 102450.0 176550.0 94500.0 177450.0 ; + RECT 105450.0 191250.0 97500.0 192150.0 ; + RECT 102450.0 193950.0 94500.0 194850.0 ; RECT 88050.0 151650.0 87150.0 152550.0 ; RECT 88050.0 150450.0 87150.0 151350.0 ; RECT 92100.0 151650.0 87600.0 152550.0 ; @@ -1184,14 +1184,14 @@ MACRO sram_2_16_1_scn3me_subm RECT 104850.0 173400.0 106050.0 174600.0 ; RECT 126450.0 187200.0 127650.0 188400.0 ; RECT 101850.0 187200.0 103050.0 188400.0 ; - RECT 110850.0 148800.0 112050.0 150000.0 ; - RECT 107850.0 151500.0 109050.0 152700.0 ; - RECT 104850.0 166200.0 106050.0 167400.0 ; - RECT 107850.0 163500.0 109050.0 164700.0 ; - RECT 110850.0 176400.0 112050.0 177600.0 ; - RECT 101850.0 179100.0 103050.0 180300.0 ; - RECT 104850.0 193800.0 106050.0 195000.0 ; - RECT 101850.0 191100.0 103050.0 192300.0 ; + RECT 110850.0 151500.0 112050.0 152700.0 ; + RECT 107850.0 148800.0 109050.0 150000.0 ; + RECT 104850.0 163500.0 106050.0 164700.0 ; + RECT 107850.0 166200.0 109050.0 167400.0 ; + RECT 110850.0 179100.0 112050.0 180300.0 ; + RECT 101850.0 176400.0 103050.0 177600.0 ; + RECT 104850.0 191100.0 106050.0 192300.0 ; + RECT 101850.0 193800.0 103050.0 195000.0 ; RECT 79650.0 150450.0 75900.0 151350.0 ; RECT 79650.0 164850.0 75900.0 165750.0 ; RECT 79650.0 178050.0 75900.0 178950.0 ; @@ -4107,7 +4107,8 @@ MACRO sram_2_16_1_scn3me_subm RECT 22650.0 353400.0 21750.0 363000.0 ; RECT 22650.0 396900.0 16800.0 397800.0 ; RECT 22650.0 420300.0 16800.0 421200.0 ; - RECT 22200.0 427650.0 16800.0 428550.0 ; + RECT 22650.0 371550.0 16800.0 372450.0 ; + RECT 16800.0 371550.0 6600.0 372450.0 ; RECT 4500.0 408600.0 16800.0 409500.0 ; RECT 4500.0 381000.0 16800.0 381900.0 ; RECT 29250.0 397800.0 28350.0 410400.0 ; @@ -4254,8 +4255,8 @@ MACRO sram_2_16_1_scn3me_subm RECT 22650.0 420300.0 21450.0 421500.0 ; RECT 22650.0 410400.0 21450.0 411600.0 ; RECT 22650.0 370800.0 21450.0 372000.0 ; - RECT 21600.0 427500.0 22800.0 428700.0 ; - RECT 16200.0 427500.0 17400.0 428700.0 ; + RECT 16200.0 371400.0 17400.0 372600.0 ; + RECT 6000.0 371400.0 7200.0 372600.0 ; RECT 29400.0 397200.0 28200.0 398400.0 ; RECT 19350.0 383700.0 20550.0 384900.0 ; RECT 19350.0 375600.0 20550.0 376800.0 ; @@ -4264,7 +4265,7 @@ MACRO sram_2_16_1_scn3me_subm RECT 29250.0 362400.0 28350.0 375750.0 ; RECT 4500.0 362400.0 3600.0 425250.0 ; RECT 36450.0 362400.0 35550.0 410400.0 ; - RECT 22650.0 362400.0 21750.0 381600.0 ; + RECT 22650.0 362400.0 21750.0 372000.0 ; RECT 50250.0 362400.0 49350.0 410400.0 ; RECT 43950.0 285750.0 42750.0 284550.0 ; RECT 43950.0 244800.0 42750.0 243600.0 ; @@ -4461,14 +4462,14 @@ MACRO sram_2_16_1_scn3me_subm RECT 104850.0 118200.0 106050.0 119400.0 ; RECT 126450.0 132000.0 127650.0 133200.0 ; RECT 101850.0 132000.0 103050.0 133200.0 ; - RECT 110850.0 93600.0 112050.0 94800.0 ; - RECT 107850.0 96300.0 109050.0 97500.0 ; - RECT 104850.0 111000.0 106050.0 112200.0 ; - RECT 107850.0 108300.0 109050.0 109500.0 ; - RECT 110850.0 121200.0 112050.0 122400.0 ; - RECT 101850.0 123900.0 103050.0 125100.0 ; - RECT 104850.0 138600.0 106050.0 139800.0 ; - RECT 101850.0 135900.0 103050.0 137100.0 ; + RECT 110850.0 96300.0 112050.0 97500.0 ; + RECT 107850.0 93600.0 109050.0 94800.0 ; + RECT 104850.0 108300.0 106050.0 109500.0 ; + RECT 107850.0 111000.0 109050.0 112200.0 ; + RECT 110850.0 123900.0 112050.0 125100.0 ; + RECT 101850.0 121200.0 103050.0 122400.0 ; + RECT 104850.0 135900.0 106050.0 137100.0 ; + RECT 101850.0 138600.0 103050.0 139800.0 ; RECT 130500.0 89100.0 129600.0 142500.0 ; RECT 127500.0 89100.0 126600.0 142500.0 ; RECT 105900.0 144300.0 105000.0 197700.0 ; @@ -4515,14 +4516,14 @@ MACRO sram_2_16_1_scn3me_subm RECT 104850.0 173400.0 106050.0 174600.0 ; RECT 126450.0 187200.0 127650.0 188400.0 ; RECT 101850.0 187200.0 103050.0 188400.0 ; - RECT 110850.0 148800.0 112050.0 150000.0 ; - RECT 107850.0 151500.0 109050.0 152700.0 ; - RECT 104850.0 166200.0 106050.0 167400.0 ; - RECT 107850.0 163500.0 109050.0 164700.0 ; - RECT 110850.0 176400.0 112050.0 177600.0 ; - RECT 101850.0 179100.0 103050.0 180300.0 ; - RECT 104850.0 193800.0 106050.0 195000.0 ; - RECT 101850.0 191100.0 103050.0 192300.0 ; + RECT 110850.0 151500.0 112050.0 152700.0 ; + RECT 107850.0 148800.0 109050.0 150000.0 ; + RECT 104850.0 163500.0 106050.0 164700.0 ; + RECT 107850.0 166200.0 109050.0 167400.0 ; + RECT 110850.0 179100.0 112050.0 180300.0 ; + RECT 101850.0 176400.0 103050.0 177600.0 ; + RECT 104850.0 191100.0 106050.0 192300.0 ; + RECT 101850.0 193800.0 103050.0 195000.0 ; RECT 130500.0 144300.0 129600.0 197700.0 ; RECT 127500.0 144300.0 126600.0 197700.0 ; RECT 80250.0 206850.0 81150.0 207750.0 ; @@ -5071,10 +5072,9 @@ MACRO sram_2_16_1_scn3me_subm RECT 10800.0 288450.0 9600.0 287250.0 ; RECT 31200.0 263100.0 30000.0 261900.0 ; RECT 31200.0 288450.0 30000.0 287250.0 ; - RECT 22650.0 372000.0 21750.0 427500.0 ; - RECT 22650.0 381600.0 21750.0 384300.0 ; - RECT 22650.0 384300.0 21750.0 428100.0 ; - RECT 17250.0 425400.0 16350.0 428100.0 ; + RECT 22650.0 372000.0 21750.0 430200.0 ; + RECT 17250.0 372000.0 16350.0 425400.0 ; + RECT 7050.0 372000.0 6150.0 425400.0 ; RECT 20400.0 376200.0 19500.0 384300.0 ; RECT 13650.0 376200.0 12750.0 381000.0 ; RECT 42750.0 415800.0 43650.0 423000.0 ; @@ -5101,8 +5101,8 @@ MACRO sram_2_16_1_scn3me_subm RECT 22650.0 420300.0 21450.0 421500.0 ; RECT 22650.0 410400.0 21450.0 411600.0 ; RECT 22650.0 370800.0 21450.0 372000.0 ; - RECT 21600.0 427500.0 22800.0 428700.0 ; - RECT 16200.0 427500.0 17400.0 428700.0 ; + RECT 16200.0 371400.0 17400.0 372600.0 ; + RECT 6000.0 371400.0 7200.0 372600.0 ; RECT 19350.0 383700.0 20550.0 384900.0 ; RECT 19350.0 375600.0 20550.0 376800.0 ; RECT 12600.0 375600.0 13800.0 376800.0 ; From 84b42b01702994819633c57e6fc77febf5cc1de9 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 2 Feb 2018 19:33:07 -0800 Subject: [PATCH 27/95] Fix bug in trim netlist. Add info comments to spice netlist and trimmed netlist. Increase verbosity for simulations. --- compiler/characterizer/delay.py | 19 ++++++++++++-- compiler/characterizer/stimuli.py | 2 +- compiler/characterizer/trim_spice.py | 37 +++++++++++++++++----------- compiler/example_config_freepdk45.py | 2 +- compiler/globals.py | 2 +- compiler/sram.py | 6 +++++ 6 files changed, 48 insertions(+), 20 deletions(-) diff --git a/compiler/characterizer/delay.py b/compiler/characterizer/delay.py index 1bf01f45..2ffc2d6e 100644 --- a/compiler/characterizer/delay.py +++ b/compiler/characterizer/delay.py @@ -125,11 +125,14 @@ class delay(): # meas statement for delay and power measurements self.sf.write("* Measure statements for delay and power\n") + for comment in self.cycle_comments: + self.sf.write("* {}\n".format(comment)) + trig_name = "clk" targ_name = "{0}".format("d[{0}]".format(self.probe_data)) trig_val = targ_val = 0.5 * self.vdd # add measure statments for delay0 - # delay the target to measure after the negetive edge + # delay the target to measure after the negative edge stimuli.gen_meas_delay(stim_file=self.sf, meas_name="DELAY0", trig_name=trig_name, @@ -238,12 +241,14 @@ class delay(): # if it failed or the read was longer than a period if type(delay0)!=float or type(delay1)!=float or type(slew1)!=float or type(slew0)!=float: + debug.info(2,"Failed simulation: period {0} load {1} slew {2}, delay0={3}n delay1={4}ns slew0={5}n slew1={6}n".format(period,load,slew,delay0,delay1,slew0,slew1)) return (False,0,0,0,0) delay0 *= 1e9 delay1 *= 1e9 slew0 *= 1e9 slew1 *= 1e9 if delay0>period or delay1>period or slew0>period or slew1>period: + debug.info(2,"UNsuccessful simulation: period {0} load {1} slew {2}, delay0={3}n delay1={4}ns slew0={5}n slew1={6}n".format(period,load,slew,delay0,delay1,slew0,slew1)) return (False,0,0,0,0) else: debug.info(2,"Successful simulation: period {0} load {1} slew {2}, delay0={3}n delay1={4}ns slew0={5}n slew1={6}n".format(period,load,slew,delay0,delay1,slew0,slew1)) @@ -394,46 +399,56 @@ class delay(): of the cycles to do a timing evaluation. The last time is the end of the simulation and does not need a rising edge.""" + self.cycle_comments = [] # idle cycle, no operation t_current = period self.cycle_times = [] - # cycle0: W data 1 address 1111 to initialize cell to a value self.cycle_times.append(t_current) + self.cycle_comments.append("Cycle0 {}ns: W data 1 address 111 to initialize cell".format(t_current)) t_current += period # cycle1: W data 0 address 1111 (to ensure a write of value works) self.cycle_times.append(t_current) self.write0_cycle=1 + self.cycle_comments.append("Cycle1 {}ns: W data 0 address 111 (to ensure a write of value works)".format(t_current)) t_current += period # cycle2: W data 1 address 0000 (to clear the data bus cap) self.cycle_times.append(t_current) + self.cycle_comments.append("Cycle2 {}ns: W data 1 address 0000 (to clear bus caps)".format(t_current)) t_current += period # cycle3: R data 0 address 1111 to check W0 works self.cycle_times.append(t_current) self.read0_cycle=3 + self.cycle_comments.append("Cycle3 {}ns: R data 0 address 1111 to check W0 worked".format(t_current)) t_current += period # cycle4: W data 1 address 1111 (to ensure a write of value works) self.cycle_times.append(t_current) self.write1_cycle=4 + self.cycle_comments.append("Cycle4 {}ns: W data 1 address 1111 (to ensure a write of value worked)".format(t_current)) t_current += period # cycle5: W data 0 address 0000 (to clear the data bus cap) self.cycle_times.append(t_current) + self.cycle_comments.append("Cycle5 {}ns: W data 0 address 0000 (to clear bus caps)".format(t_current)) t_current += period # cycle6: R data 1 address 1111 to check W1 works self.cycle_times.append(t_current) self.read1_cycle=6 + self.cycle_comments.append("Cycle6 {}ns: R data 1 address 1111 to check W1 worked".format(t_current)) t_current += period # cycle7: wait a clock period to end the simulation self.cycle_times.append(t_current) + self.cycle_comments.append("Cycle7 {}ns: Idle period to end simulation".format(t_current)) t_current += period + + def analytical_model(self,sram, slews, loads): """ Just return the analytical model results for the SRAM. diff --git a/compiler/characterizer/stimuli.py b/compiler/characterizer/stimuli.py index 6cba2015..7ffd9e85 100644 --- a/compiler/characterizer/stimuli.py +++ b/compiler/characterizer/stimuli.py @@ -290,7 +290,7 @@ def run_sim(): xa_cfg.write("set_sim_level -level 7\n") xa_cfg.write("set_powernet_level 7 -node vdd\n") xa_cfg.close() - cmd = "{0} {1} -c {2}xa.cfg -o {2}xa -mt 20".format(OPTS.spice_exe, + cmd = "{0} {1} -c {2}xa.cfg -o {2}xa -mt 2".format(OPTS.spice_exe, temp_stim, OPTS.openram_temp) valid_retcode=0 diff --git a/compiler/characterizer/trim_spice.py b/compiler/characterizer/trim_spice.py index a5025d60..30f041a4 100644 --- a/compiler/characterizer/trim_spice.py +++ b/compiler/characterizer/trim_spice.py @@ -45,23 +45,30 @@ class trim_spice(): # Always start fresh if we do multiple reductions self.sp_buffer = self.spice - - # Find the row and column indices for the removals - # Convert address froms tring to int - address = int(address,2) - array_row = address >> self.col_addr_size - # Which word in the array (0 if only one word) - if self.col_addr_size>0: - lower_mask = int(self.col_addr_size-1) - lower_address = address & lower_mask - else: - lower_address=0 - # Which bit in the array - array_bit = lower_address*self.word_size + data_bit + # Split up the address and convert to an int + wl_address = int(address[self.col_addr_size:],2) + col_address = int(address[0:self.col_addr_size],2) # 1. Keep cells in the bitcell array based on WL and BL - wl_name = "wl[{}]".format(array_row) - bl_name = "bl[{}]".format(array_bit) + wl_name = "wl[{}]".format(wl_address) + bl_name = "bl[{}]".format(self.words_per_row*data_bit + col_address) + + # Prepend info about the trimming + addr_msg = "Keeping {} address".format(address) + self.sp_buffer.insert(0, "* "+addr_msg) + debug.info(1,addr_msg) + data_msg = "Keeping {} data bit".format(data_bit) + self.sp_buffer.insert(0, "* "+data_msg) + debug.info(1,data_msg) + bl_msg = "Keeping {} (trimming other BLs)".format(bl_name) + wl_msg = "Keeping {} (trimming other WLs)".format(wl_name) + self.sp_buffer.insert(0, "* "+bl_msg) + debug.info(1,bl_msg) + self.sp_buffer.insert(0, "* "+wl_msg) + debug.info(1,wl_msg) + self.sp_buffer.insert(0, "* It should NOT be used for LVS!!") + self.sp_buffer.insert(0, "* WARNING: This is a TRIMMED NETLIST.") + self.remove_insts("bitcell_array",[wl_name,bl_name]) # 2. Keep sense amps basd on BL diff --git a/compiler/example_config_freepdk45.py b/compiler/example_config_freepdk45.py index cd8a17b8..16545b2d 100644 --- a/compiler/example_config_freepdk45.py +++ b/compiler/example_config_freepdk45.py @@ -1,5 +1,5 @@ word_size = 2 -num_words = 16 +num_words = 128 num_banks = 1 tech_name = "freepdk45" diff --git a/compiler/globals.py b/compiler/globals.py index e579e949..1c4605aa 100644 --- a/compiler/globals.py +++ b/compiler/globals.py @@ -12,7 +12,7 @@ import re import importlib # Current version of OpenRAM. -VERSION = "1.01" +VERSION = "Beta" USAGE = "Usage: openram.py [options] \nUse -h for help.\n" diff --git a/compiler/sram.py b/compiler/sram.py index 70e6f80a..d0ced623 100644 --- a/compiler/sram.py +++ b/compiler/sram.py @@ -989,7 +989,13 @@ class sram(design.design): ############################################################ sp = open(sp_name, 'w') + sp.write("**************************************************\n") sp.write("* OpenRAM generated memory.\n") + sp.write("* Words: {}\n".format(self.num_words)) + sp.write("* Data bits: {}\n".format(self.word_size)) + sp.write("* Banks: {}\n".format(self.num_banks)) + sp.write("* Column mux: {}:1\n".format(self.words_per_row)) + sp.write("**************************************************\n") # This causes unit test mismatch # sp.write("* Created: {0}\n".format(datetime.datetime.now())) # sp.write("* User: {0}\n".format(getpass.getuser())) From f21ff38cae6babd09c0d95f3d7baf84baa513a32 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Mon, 5 Feb 2018 10:22:38 -0800 Subject: [PATCH 28/95] Simplify via offsets in replica bitline. Route clk_bar in control over supply rail until we get channel router working. --- compiler/control_logic.py | 26 +++++++++++++------- compiler/hierarchy_layout.py | 4 +++- compiler/replica_bitline.py | 46 +++++++++++++++++------------------- compiler/tests/testutils.py | 5 ++-- 4 files changed, 45 insertions(+), 36 deletions(-) diff --git a/compiler/control_logic.py b/compiler/control_logic.py index 325d92e9..7a1e3851 100644 --- a/compiler/control_logic.py +++ b/compiler/control_logic.py @@ -77,8 +77,6 @@ class control_logic(design.design): # These aren't for instantiating, but we use them to get the dimensions self.poly_contact_offset = vector(0.5*contact.poly.width,0.5*contact.poly.height) - # For different layer width vias - self.m1m2_offset_fix = vector(0,0.5*(drc["minwidth_metal2"]-drc["minwidth_metal1"])) # M1/M2 routing pitch is based on contacted pitch self.m1_pitch = max(contact.m1m2.width,contact.m1m2.height) + max(drc["metal1_to_metal1"],drc["metal2_to_metal2"]) self.m2_pitch = max(contact.m2m3.width,contact.m2m3.height) + max(drc["metal2_to_metal2"],drc["metal3_to_metal3"]) @@ -87,10 +85,6 @@ class control_logic(design.design): # Some cells may have pwell/nwell spacing problems too when the wells are different heights. self.cell_gap = max(self.m2_pitch,drc["pwell_to_nwell"]) - # Amount to shift a 90 degree rotated via from center-line path routing to it's offset - self.m1m2_via_offset = vector(contact.m1m2.first_layer_height,-0.5*drc["minwidth_metal2"]) - self.m2m3_via_offset = vector(contact.m2m3.first_layer_height,-0.5*drc["minwidth_metal3"]) - # First RAIL Parameters: gnd, oe, oebar, cs, we, clk_buf, clk_bar self.rail_1_start_x = 0 self.num_rails_1 = 8 @@ -513,11 +507,25 @@ class control_logic(design.design): offset=clk_buf_rail_position, rotate=90) - # clk_bar - self.connect_rail_from_left_m2m3(self.clk_bar,"Z","clk_bar") + # clk_bar, routes over the clock buffer vdd rail + clk_pin = self.clk_bar.get_pin("Z") + vdd_pin = self.clk_bar.get_pin("vdd") + # move the output pin up to metal2 self.add_via_center(layers=("metal1","via1","metal2"), - offset=self.clk_bar.get_pin("Z").rc(), + offset=clk_pin.rc(), rotate=90) + # route to a position over the supply rail + in_pos = vector(clk_pin.rx(), vdd_pin.cy()) + self.add_path("metal2",[clk_pin.rc(), in_pos]) + # connect that position to the control bus + rail_pos = vector(self.rail_1_x_offsets["clk_bar"], in_pos.y) + self.add_wire(("metal3","via2","metal2"),[in_pos, rail_pos]) + self.add_via_center(layers=("metal2","via2","metal3"), + offset=in_pos, + rotate=90) + self.add_via_center(layers=("metal2","via2","metal3"), + offset=rail_pos, + rotate=90) # clk_buf to msf control flops msf_clk_pos = self.msf_inst.get_pin("clk").bc() diff --git a/compiler/hierarchy_layout.py b/compiler/hierarchy_layout.py index 60a9b24a..12edb1d9 100644 --- a/compiler/hierarchy_layout.py +++ b/compiler/hierarchy_layout.py @@ -166,9 +166,11 @@ class layout(lef.lef): debug.error("Nonrectilinear center rect!",-1) elif start.x!=end.x: offset = vector(0,0.5*minwidth_layer) + return self.add_rect(layer,start-offset,end.x-start.x,minwidth_layer) else: offset = vector(0.5*minwidth_layer,0) - return self.add_rect(layer,start-offset,end.x-start.x,minwidth_layer) + return self.add_rect(layer,start-offset,minwidth_layer,end.y-start.y) + def get_pin(self, text): diff --git a/compiler/replica_bitline.py b/compiler/replica_bitline.py index 7fa9544a..fb8ede4c 100644 --- a/compiler/replica_bitline.py +++ b/compiler/replica_bitline.py @@ -240,39 +240,37 @@ class replica_bitline(design.design): """ Route all signals connected to gnd """ # Add a rail in M1 from bottom to two along delay chain - gnd_start = self.rbl_inv_inst.get_pin("gnd").ll() - self.offset_fix - - self.add_rect(layer="metal2", - offset=gnd_start, - width=self.m2_width, - height=self.rbl_inst.uy()+2*self.m2_pitch - gnd_start.y) - self.add_layout_pin(text="gnd", - layer="metal1", - offset=gnd_start.scale(1,0), - width=self.m1_width, - height=gnd_start.y) + gnd_start = self.rbl_inv_inst.get_pin("gnd").bc() + gnd_end = vector(gnd_start.x, self.rbl_inst.uy()+2*self.m2_pitch) + self.add_segment_center(layer="metal2", + start=gnd_start, + end=gnd_end) + self.add_layout_pin_center_segment(text="gnd", + layer="metal1", + start=gnd_start.scale(1,0), + end=gnd_start) # Connect the WL pins directly to gnd + gnd_pin = self.get_pin("gnd").rc() for row in range(self.rows): wl = "wl[{}]".format(row) pin = self.rbl_inst.get_pin(wl) - offset = vector(gnd_start.x,pin.by()) - self.add_rect(layer="metal1", - offset=offset, - width=self.rbl_offset.x-gnd_start.x, - height=self.m1_width) - self.add_via(layers=("metal1", "via1", "metal2"), - offset=offset) + start = vector(gnd_pin.x,pin.cy()) + self.add_segment_center(layer="metal1", + start=start, + end=pin.lc()) + self.add_via_center(layers=("metal1", "via1", "metal2"), + offset=start) # Add via for the delay chain - offset = self.delay_chain_offset - vector(0.5*self.m1_width,0) - self.offset_fix - self.add_via(layers=("metal1", "via1", "metal2"), - offset=offset) + offset = self.dc_inst.get_pins("gnd")[0].bc() + vector(0.5*contact.m1m2.width,0.5*contact.m1m2.height) + self.add_via_center(layers=("metal1", "via1", "metal2"), + offset=offset) # Add via for the inverter - offset = self.rbl_inv_offset - vector(0.5*self.m1_width,contact.m1m2.height) - self.offset_fix - self.add_via(layers=("metal1", "via1", "metal2"), - offset=offset) + offset = self.rbl_inv_inst.get_pin("gnd").bc() - vector(0,0.5*contact.m1m2.height) + self.add_via_center(layers=("metal1", "via1", "metal2"), + offset=offset) # Connect the bitcell gnd pins to the rail gnd_pins = self.get_pins("gnd") diff --git a/compiler/tests/testutils.py b/compiler/tests/testutils.py index 6db5c60d..f7c61a65 100644 --- a/compiler/tests/testutils.py +++ b/compiler/tests/testutils.py @@ -1,8 +1,9 @@ -import unittest +import unittest,warnings import sys,os,glob sys.path.append(os.path.join(sys.path[0],"..")) import globals from globals import OPTS +import debug class openram_test(unittest.TestCase): """ Base unit test that we have some shared classes in. """ @@ -18,7 +19,7 @@ class openram_test(unittest.TestCase): os.remove(f) def local_check(self, a): - + tempspice = OPTS.openram_temp + "temp.sp" tempgds = OPTS.openram_temp + "temp.gds" From 92095e52f773c69bd1fe7781f7eed0d6456f9c44 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Mon, 5 Feb 2018 10:27:56 -0800 Subject: [PATCH 29/95] Update new LEF files for unit tests. --- .../tests/golden/sram_2_16_1_freepdk45.lef | 32 +++++++++---------- .../tests/golden/sram_2_16_1_scn3me_subm.lef | 31 +++++++++--------- 2 files changed, 32 insertions(+), 31 deletions(-) diff --git a/compiler/tests/golden/sram_2_16_1_freepdk45.lef b/compiler/tests/golden/sram_2_16_1_freepdk45.lef index c968fa93..51d895b5 100644 --- a/compiler/tests/golden/sram_2_16_1_freepdk45.lef +++ b/compiler/tests/golden/sram_2_16_1_freepdk45.lef @@ -3713,7 +3713,6 @@ MACRO sram_2_16_1_freepdk45 RECT 1377.5 26320.0 1312.5 27925.0 ; RECT 32.5 27925.0 -32.5 31335.0 ; RECT 32.5 27140.0 -32.5 27925.0 ; - RECT 1347.5 31302.5 1345.0 31367.5 ; RECT 32.5 31302.5 -32.5 31367.5 ; RECT 32.5 31130.0 -32.5 31335.0 ; RECT 8.881784197e-13 31302.5 -45.0 31367.5 ; @@ -4166,9 +4165,9 @@ MACRO sram_2_16_1_freepdk45 RECT 750.0 30905.0 685.0 30970.0 ; RECT 32.5 30615.0 -32.5 31175.0 ; RECT 1377.5 30615.0 1312.5 31175.0 ; - RECT 1380.0 33907.5 935.0 33972.5 ; - RECT 1380.0 36317.5 935.0 36382.5 ; - RECT 1380.0 31862.5 935.0 31927.5 ; + RECT 1312.5 33907.5 1025.0 33972.5 ; + RECT 1312.5 36317.5 1025.0 36382.5 ; + RECT 1377.5 31862.5 935.0 31927.5 ; RECT 935.0 31862.5 230.0 31927.5 ; RECT 20.0 35112.5 935.0 35177.5 ; RECT 20.0 32422.5 935.0 32487.5 ; @@ -4314,9 +4313,9 @@ MACRO sram_2_16_1_freepdk45 RECT 1025.0 35112.5 140.0 35177.5 ; RECT 1025.0 33767.5 140.0 33832.5 ; RECT 1025.0 36457.5 140.0 36522.5 ; - RECT 1377.5 33907.5 1312.5 34042.5 ; - RECT 1377.5 36317.5 1312.5 36452.5 ; - RECT 1377.5 34135.0 1312.5 34270.0 ; + RECT 1345.0 33872.5 1280.0 34007.5 ; + RECT 1345.0 36282.5 1280.0 36417.5 ; + RECT 1342.5 34135.0 1277.5 34270.0 ; RECT 1377.5 31760.0 1312.5 31895.0 ; RECT 867.5 31862.5 1002.5 31927.5 ; RECT 162.5 31862.5 297.5 31927.5 ; @@ -4328,7 +4327,7 @@ MACRO sram_2_16_1_freepdk45 RECT 2005.0 31335.0 1940.0 32100.0 ; RECT 20.0 31335.0 -45.0 36577.5 ; RECT 2722.5 31335.0 2657.5 34135.0 ; - RECT 1380.0 31335.0 1315.0 31895.0 ; + RECT 1377.5 31335.0 1312.5 31895.0 ; RECT 4067.5 31335.0 4002.5 34135.0 ; RECT 3455.0 26182.5 3390.0 26047.5 ; RECT 3455.0 22102.5 3390.0 21967.5 ; @@ -5090,6 +5089,7 @@ MACRO sram_2_16_1_freepdk45 RECT 4035.0 26695.0 8.881784197e-13 26765.0 ; RECT 4035.0 26900.0 8.881784197e-13 26970.0 ; RECT 4035.0 27310.0 8.881784197e-13 27380.0 ; + RECT 3422.5 22000.0 2690.0 22070.0 ; RECT 2520.0 19467.5 2450.0 26115.0 ; RECT 4035.0 26285.0 3830.0 26355.0 ; RECT 2895.0 27105.0 2690.0 27175.0 ; @@ -5189,9 +5189,9 @@ MACRO sram_2_16_1_freepdk45 RECT 450.0 33700.0 380.0 36645.0 ; RECT 970.0 33700.0 900.0 36645.0 ; RECT 265.0 33700.0 195.0 36645.0 ; - RECT 1380.0 33907.5 1310.0 34042.5 ; - RECT 1380.0 36317.5 1310.0 36452.5 ; - RECT 1380.0 34135.0 1310.0 34270.0 ; + RECT 1347.5 33872.5 1277.5 34007.5 ; + RECT 1347.5 36282.5 1277.5 36417.5 ; + RECT 1345.0 34135.0 1275.0 34270.0 ; RECT 1380.0 31760.0 1310.0 31895.0 ; RECT 867.5 31860.0 1002.5 31930.0 ; RECT 162.5 31860.0 297.5 31930.0 ; @@ -5200,8 +5200,8 @@ MACRO sram_2_16_1_freepdk45 RECT 682.5 32027.5 817.5 32097.5 ; RECT 3457.5 26182.5 3387.5 26047.5 ; RECT 3457.5 22102.5 3387.5 21967.5 ; - RECT 3457.5 27617.5 3387.5 27482.5 ; - RECT 3457.5 22102.5 3387.5 21967.5 ; + RECT 2725.0 22102.5 2655.0 21967.5 ; + RECT 2725.0 27617.5 2655.0 27482.5 ; RECT 2520.0 19535.0 2450.0 19400.0 ; RECT 1965.0 26182.5 1895.0 26047.5 ; RECT 1750.0 26592.5 1680.0 26457.5 ; @@ -5300,7 +5300,7 @@ MACRO sram_2_16_1_freepdk45 RECT 905.0 25670.0 835.0 26320.0 ; RECT 1610.0 25670.0 1540.0 26320.0 ; RECT 2315.0 25670.0 2245.0 26320.0 ; - RECT 3457.5 22035.0 3387.5 27550.0 ; + RECT 2725.0 22035.0 2655.0 27550.0 ; RECT 2020.0 27550.0 1950.0 29062.5 ; RECT 1805.0 27345.0 1735.0 29320.0 ; RECT 482.5 19230.0 552.5 19370.0 ; @@ -5322,8 +5322,8 @@ MACRO sram_2_16_1_freepdk45 RECT 1610.0 26387.5 1540.0 26252.5 ; RECT 2315.0 25737.5 2245.0 25602.5 ; RECT 2315.0 26387.5 2245.0 26252.5 ; - RECT 3457.5 22102.5 3387.5 21967.5 ; - RECT 3457.5 27617.5 3387.5 27482.5 ; + RECT 2725.0 22102.5 2655.0 21967.5 ; + RECT 2725.0 27617.5 2655.0 27482.5 ; RECT 2020.0 29130.0 1950.0 28995.0 ; RECT 2020.0 27617.5 1950.0 27482.5 ; RECT 1805.0 29387.5 1735.0 29252.5 ; diff --git a/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef b/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef index 457233ff..65c62604 100644 --- a/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef +++ b/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef @@ -4105,8 +4105,8 @@ MACRO sram_2_16_1_scn3me_subm RECT 16050.0 358350.0 15150.0 359250.0 ; RECT 8850.0 353400.0 7950.0 363000.0 ; RECT 22650.0 353400.0 21750.0 363000.0 ; - RECT 22650.0 396900.0 16800.0 397800.0 ; - RECT 22650.0 420300.0 16800.0 421200.0 ; + RECT 21750.0 397050.0 17400.0 397950.0 ; + RECT 21750.0 420450.0 17400.0 421350.0 ; RECT 22650.0 371550.0 16800.0 372450.0 ; RECT 16800.0 371550.0 6600.0 372450.0 ; RECT 4500.0 408600.0 16800.0 409500.0 ; @@ -4251,10 +4251,10 @@ MACRO sram_2_16_1_scn3me_subm RECT 17400.0 396900.0 6000.0 398100.0 ; RECT 17400.0 420300.0 6000.0 421500.0 ; RECT 17400.0 408600.0 6000.0 409500.0 ; - RECT 22650.0 396900.0 21450.0 398100.0 ; - RECT 22650.0 420300.0 21450.0 421500.0 ; - RECT 22650.0 410400.0 21450.0 411600.0 ; - RECT 22650.0 370800.0 21450.0 372000.0 ; + RECT 22350.0 396900.0 21150.0 398100.0 ; + RECT 22350.0 420300.0 21150.0 421500.0 ; + RECT 22200.0 410400.0 21000.0 411600.0 ; + RECT 22800.0 370800.0 21600.0 372000.0 ; RECT 16200.0 371400.0 17400.0 372600.0 ; RECT 6000.0 371400.0 7200.0 372600.0 ; RECT 29400.0 397200.0 28200.0 398400.0 ; @@ -5007,6 +5007,7 @@ MACRO sram_2_16_1_scn3me_subm RECT 49800.0 292800.0 1.42108547152e-11 293700.0 ; RECT 49800.0 295500.0 1.42108547152e-11 296400.0 ; RECT 49800.0 300900.0 1.42108547152e-11 301800.0 ; + RECT 43350.0 243750.0 36000.0 244650.0 ; RECT 33750.0 205350.0 32850.0 285150.0 ; RECT 49800.0 287400.0 47100.0 288300.0 ; RECT 38700.0 298200.0 36000.0 299100.0 ; @@ -5097,10 +5098,10 @@ MACRO sram_2_16_1_scn3me_subm RECT 10800.0 394800.0 9600.0 425400.0 ; RECT 17400.0 394800.0 16200.0 425400.0 ; RECT 7200.0 394800.0 6000.0 425400.0 ; - RECT 22650.0 396900.0 21450.0 398100.0 ; - RECT 22650.0 420300.0 21450.0 421500.0 ; - RECT 22650.0 410400.0 21450.0 411600.0 ; - RECT 22650.0 370800.0 21450.0 372000.0 ; + RECT 22350.0 396900.0 21150.0 398100.0 ; + RECT 22350.0 420300.0 21150.0 421500.0 ; + RECT 22200.0 410400.0 21000.0 411600.0 ; + RECT 22800.0 370800.0 21600.0 372000.0 ; RECT 16200.0 371400.0 17400.0 372600.0 ; RECT 6000.0 371400.0 7200.0 372600.0 ; RECT 19350.0 383700.0 20550.0 384900.0 ; @@ -5108,8 +5109,8 @@ MACRO sram_2_16_1_scn3me_subm RECT 12600.0 375600.0 13800.0 376800.0 ; RECT 43950.0 285750.0 42750.0 284550.0 ; RECT 43950.0 244800.0 42750.0 243600.0 ; - RECT 43950.0 304650.0 42750.0 303450.0 ; - RECT 43950.0 244800.0 42750.0 243600.0 ; + RECT 36600.0 244800.0 35400.0 243600.0 ; + RECT 36600.0 304650.0 35400.0 303450.0 ; RECT 33900.0 205950.0 32700.0 204750.0 ; RECT 29850.0 285750.0 28650.0 284550.0 ; RECT 27150.0 291150.0 25950.0 289950.0 ; @@ -5202,7 +5203,7 @@ MACRO sram_2_16_1_scn3me_subm RECT 23550.0 262500.0 22050.0 295950.0 ; RECT 10950.0 262500.0 9450.0 287850.0 ; RECT 31350.0 262500.0 29850.0 287850.0 ; - RECT 44100.0 244200.0 42600.0 304050.0 ; + RECT 36750.0 244200.0 35250.0 304050.0 ; RECT 30750.0 304050.0 29250.0 327900.0 ; RECT 28050.0 301350.0 26550.0 330900.0 ; RECT 4200.0 203400.0 6000.0 205200.0 ; @@ -5220,8 +5221,8 @@ MACRO sram_2_16_1_scn3me_subm RECT 11100.0 288750.0 9300.0 286950.0 ; RECT 31500.0 263400.0 29700.0 261600.0 ; RECT 31500.0 288750.0 29700.0 286950.0 ; - RECT 44250.0 245100.0 42450.0 243300.0 ; - RECT 44250.0 304950.0 42450.0 303150.0 ; + RECT 36900.0 245100.0 35100.0 243300.0 ; + RECT 36900.0 304950.0 35100.0 303150.0 ; RECT 30900.0 328800.0 29100.0 327000.0 ; RECT 30900.0 304950.0 29100.0 303150.0 ; RECT 28200.0 331800.0 26400.0 330000.0 ; From a8e1abdce89f716d553995a3fbeed6aa543313b3 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Mon, 5 Feb 2018 11:36:46 -0800 Subject: [PATCH 30/95] Use method=gear for ngspice to improve convergence. Split TD for trig and targ in measure statements. Start waiting for clk neg edge trigger at clk pos edge. --- compiler/characterizer/delay.py | 28 ++++++++++++++++------------ compiler/characterizer/lib.py | 8 ++++---- compiler/characterizer/setup_hold.py | 6 ++++-- compiler/characterizer/stimuli.py | 15 +++++++++++---- compiler/characterizer/trim_spice.py | 5 ++++- 5 files changed, 39 insertions(+), 23 deletions(-) diff --git a/compiler/characterizer/delay.py b/compiler/characterizer/delay.py index 2ffc2d6e..c848ec5d 100644 --- a/compiler/characterizer/delay.py +++ b/compiler/characterizer/delay.py @@ -40,9 +40,9 @@ class delay(): def write_stimulus(self, period, load, slew): - """Creates a stimulus file for simulations to probe a certain bitcell, given an address and data-position of the data-word - (probe-address form: '111010000' LSB=0, MSB=1) - (probe_data form: number corresponding to the bit position of data-bus, begins with position 0) + """ Creates a stimulus file for simulations to probe a bitcell at a given clock period. + Address and bit were previously set with set_probe(). + Input slew (in ns) and output capacitive load (in fF) are required for charaterization. """ self.check_arguments() @@ -52,7 +52,7 @@ class delay(): # creates and opens stimulus file for writing temp_stim = "{0}/stim.sp".format(OPTS.openram_temp) self.sf = open(temp_stim, "w") - self.sf.write("* Stimulus for period of {0}n load={1} slew={2}\n\n".format(period,load,slew)) + self.sf.write("* Stimulus for period of {0}n load={1}fF slew={2}ns\n\n".format(period,load,slew)) # include files in stimulus file model_list = tech.spice["fet_models"] + [self.sram_sp_file] @@ -141,7 +141,8 @@ class delay(): targ_val=targ_val, trig_dir="FALL", targ_dir="FALL", - td=self.cycle_times[self.read0_cycle]+0.5*period) + trig_td=self.cycle_times[self.read0_cycle], + targ_td=self.cycle_times[self.read0_cycle]+0.5*period) stimuli.gen_meas_delay(stim_file=self.sf, meas_name="DELAY1", @@ -151,27 +152,30 @@ class delay(): targ_val=targ_val, trig_dir="FALL", targ_dir="RISE", - td=self.cycle_times[self.read1_cycle]+0.5*period) + trig_td=self.cycle_times[self.read1_cycle], + targ_td=self.cycle_times[self.read1_cycle]+0.5*period) stimuli.gen_meas_delay(stim_file=self.sf, meas_name="SLEW0", trig_name=targ_name, targ_name=targ_name, - trig_val=0.9*self.vdd, - targ_val=0.1*self.vdd, + trig_val=0.8*self.vdd, + targ_val=0.2*self.vdd, trig_dir="FALL", targ_dir="FALL", - td=self.cycle_times[self.read0_cycle]+0.5*period) + trig_td=self.cycle_times[self.read0_cycle], + targ_td=self.cycle_times[self.read0_cycle]+0.5*period) stimuli.gen_meas_delay(stim_file=self.sf, meas_name="SLEW1", trig_name=targ_name, targ_name=targ_name, - trig_val=0.1*self.vdd, - targ_val=0.9*self.vdd, + trig_val=0.2*self.vdd, + targ_val=0.8*self.vdd, trig_dir="RISE", targ_dir="RISE", - td=self.cycle_times[self.read1_cycle]+0.5*period) + trig_td=self.cycle_times[self.read1_cycle], + targ_td=self.cycle_times[self.read1_cycle]+0.5*period) # add measure statements for power t_initial = self.cycle_times[self.write0_cycle] diff --git a/compiler/characterizer/lib.py b/compiler/characterizer/lib.py index b2a87479..3716b51b 100644 --- a/compiler/characterizer/lib.py +++ b/compiler/characterizer/lib.py @@ -116,10 +116,10 @@ class lib: self.lib.write(" output_threshold_pct_fall : 50.0 ;\n") self.lib.write(" input_threshold_pct_rise : 50.0 ;\n") self.lib.write(" output_threshold_pct_rise : 50.0 ;\n") - self.lib.write(" slew_lower_threshold_pct_fall : 10.0 ;\n") - self.lib.write(" slew_upper_threshold_pct_fall : 90.0 ;\n") - self.lib.write(" slew_lower_threshold_pct_rise : 10.0 ;\n") - self.lib.write(" slew_upper_threshold_pct_rise : 90.0 ;\n\n") + self.lib.write(" slew_lower_threshold_pct_fall : 20.0 ;\n") + self.lib.write(" slew_upper_threshold_pct_fall : 80.0 ;\n") + self.lib.write(" slew_lower_threshold_pct_rise : 20.0 ;\n") + self.lib.write(" slew_upper_threshold_pct_rise : 80.0 ;\n\n") self.lib.write(" default_cell_leakage_power : 0.0 ;\n") self.lib.write(" default_leakage_power_density : 0.0 ;\n") diff --git a/compiler/characterizer/setup_hold.py b/compiler/characterizer/setup_hold.py index 919bb9b9..a184ffcb 100644 --- a/compiler/characterizer/setup_hold.py +++ b/compiler/characterizer/setup_hold.py @@ -145,7 +145,8 @@ class setup_hold(): targ_val=targ_val, trig_dir="RISE", targ_dir=dout_rise_or_fall, - td=1.9*self.period) + trig_td=1.9*self.period, + targ_td=1.9*self.period) targ_name = "data" # Start triggers right after initialize value is returned to normal @@ -158,7 +159,8 @@ class setup_hold(): targ_val=targ_val, trig_dir="RISE", targ_dir=din_rise_or_fall, - td=1.2*self.period) + trig_td=1.2*self.period, + targ_td=1.2*self.period) diff --git a/compiler/characterizer/stimuli.py b/compiler/characterizer/stimuli.py index 7ffd9e85..e4d81d30 100644 --- a/compiler/characterizer/stimuli.py +++ b/compiler/characterizer/stimuli.py @@ -218,17 +218,18 @@ def get_inverse_value(value): debug.error("Invalid value to get an inverse of: {0}".format(value)) -def gen_meas_delay(stim_file, meas_name, trig_name, targ_name, trig_val, targ_val, trig_dir, targ_dir, td): +def gen_meas_delay(stim_file, meas_name, trig_name, targ_name, trig_val, targ_val, trig_dir, targ_dir, trig_td, targ_td): """Creates the .meas statement for the measurement of delay""" - measure_string=".meas tran {0} TRIG v({1}) VAL={2} {3}=1 TD={7}n TARG v({4}) VAL={5} {6}=1 TD={7}n\n\n" + measure_string=".meas tran {0} TRIG v({1}) VAL={2} {3}=1 TD={4}n TARG v({5}) VAL={6} {7}=1 TD={8}n\n\n" stim_file.write(measure_string.format(meas_name, trig_name, trig_val, trig_dir, + trig_td, targ_name, targ_val, targ_dir, - td)) + targ_td)) def gen_meas_power(stim_file, meas_name, t_initial, t_final): """Creates the .meas statement for the measurement of avg power""" @@ -246,7 +247,13 @@ def gen_meas_power(stim_file, meas_name, t_initial, t_final): def write_control(stim_file, end_time): # UIC is needed for ngspice to converge stim_file.write(".TRAN 5p {0}n UIC\n".format(end_time)) - stim_file.write(".OPTIONS POST=1 RUNLVL=4 PROBE\n") + if OPTS.spice_name == "ngspice": + # ngspice sometimes has convergence problems if not using gear method + # which is more accurate, but slower than the default trapezoid method + stim_file.write(".OPTIONS POST=1 RUNLVL=4 PROBE method=gear\n") + else: + stim_file.write(".OPTIONS POST=1 RUNLVL=4 PROBE\n") + # create plots for all signals stim_file.write("* probe is used for hspice/xa, while plot is used in ngspice\n") if OPTS.debug_level>0: diff --git a/compiler/characterizer/trim_spice.py b/compiler/characterizer/trim_spice.py index 30f041a4..f53ac184 100644 --- a/compiler/characterizer/trim_spice.py +++ b/compiler/characterizer/trim_spice.py @@ -48,7 +48,10 @@ class trim_spice(): # Split up the address and convert to an int wl_address = int(address[self.col_addr_size:],2) - col_address = int(address[0:self.col_addr_size],2) + if self.col_addr_size>1: + col_address = int(address[0:self.col_addr_size],2) + else: + col_address = 0 # 1. Keep cells in the bitcell array based on WL and BL wl_name = "wl[{}]".format(wl_address) bl_name = "bl[{}]".format(self.words_per_row*data_bit + col_address) From e2e5f45cecc050e5e372b33d374b30efff9ccb8f Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Mon, 5 Feb 2018 14:07:12 -0800 Subject: [PATCH 31/95] Correct vague comments about char cycles. End simulation after last period even though a transition would mean a failed simulation. --- compiler/characterizer/delay.py | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/compiler/characterizer/delay.py b/compiler/characterizer/delay.py index c848ec5d..fa3f2a77 100644 --- a/compiler/characterizer/delay.py +++ b/compiler/characterizer/delay.py @@ -116,8 +116,8 @@ class delay(): self.write_measures(period) - # run until the last cycle time - stimuli.write_control(self.sf,self.cycle_times[-1]) + # run until the end of the cycle time + stimuli.write_control(self.sf,self.cycle_times[-1] + period) self.sf.close() @@ -409,41 +409,41 @@ class delay(): self.cycle_times = [] # cycle0: W data 1 address 1111 to initialize cell to a value self.cycle_times.append(t_current) - self.cycle_comments.append("Cycle0 {}ns: W data 1 address 111 to initialize cell".format(t_current)) + self.cycle_comments.append("Cycle0 {}ns: W data 1 address 11..11 to initialize cell".format(t_current)) t_current += period # cycle1: W data 0 address 1111 (to ensure a write of value works) self.cycle_times.append(t_current) self.write0_cycle=1 - self.cycle_comments.append("Cycle1 {}ns: W data 0 address 111 (to ensure a write of value works)".format(t_current)) + self.cycle_comments.append("Cycle1 {}ns: W data 0 address 11..11 (to ensure a write of value works)".format(t_current)) t_current += period # cycle2: W data 1 address 0000 (to clear the data bus cap) self.cycle_times.append(t_current) - self.cycle_comments.append("Cycle2 {}ns: W data 1 address 0000 (to clear bus caps)".format(t_current)) + self.cycle_comments.append("Cycle2 {}ns: W data 1 address 00..00 (to clear bus caps)".format(t_current)) t_current += period # cycle3: R data 0 address 1111 to check W0 works self.cycle_times.append(t_current) self.read0_cycle=3 - self.cycle_comments.append("Cycle3 {}ns: R data 0 address 1111 to check W0 worked".format(t_current)) + self.cycle_comments.append("Cycle3 {}ns: R data 0 address 11..11 to check W0 worked".format(t_current)) t_current += period # cycle4: W data 1 address 1111 (to ensure a write of value works) self.cycle_times.append(t_current) self.write1_cycle=4 - self.cycle_comments.append("Cycle4 {}ns: W data 1 address 1111 (to ensure a write of value worked)".format(t_current)) + self.cycle_comments.append("Cycle4 {}ns: W data 1 address 11..11 (to ensure a write of value worked)".format(t_current)) t_current += period # cycle5: W data 0 address 0000 (to clear the data bus cap) self.cycle_times.append(t_current) - self.cycle_comments.append("Cycle5 {}ns: W data 0 address 0000 (to clear bus caps)".format(t_current)) + self.cycle_comments.append("Cycle5 {}ns: W data 0 address 00..00 (to clear bus caps)".format(t_current)) t_current += period # cycle6: R data 1 address 1111 to check W1 works self.cycle_times.append(t_current) self.read1_cycle=6 - self.cycle_comments.append("Cycle6 {}ns: R data 1 address 1111 to check W1 worked".format(t_current)) + self.cycle_comments.append("Cycle6 {}ns: R data 1 address 11..11 to check W1 worked".format(t_current)) t_current += period # cycle7: wait a clock period to end the simulation @@ -451,8 +451,6 @@ class delay(): self.cycle_comments.append("Cycle7 {}ns: Idle period to end simulation".format(t_current)) t_current += period - - def analytical_model(self,sram, slews, loads): """ Just return the analytical model results for the SRAM. From 6f8744712d26106a030754fb63bee2fd3740776b Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Mon, 5 Feb 2018 14:44:15 -0800 Subject: [PATCH 32/95] Add extra pwc to 6T SCMOS cell. --- technology/scn3me_subm/gds_lib/cell_6t.gds | Bin 5596 -> 5788 bytes .../scn3me_subm/gds_lib/replica_cell_6t.gds | Bin 5804 -> 5996 bytes technology/scn3me_subm/mag_lib/cell_6t.mag | 6 ++++-- .../scn3me_subm/mag_lib/replica_cell_6t.mag | 8 +++++--- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/technology/scn3me_subm/gds_lib/cell_6t.gds b/technology/scn3me_subm/gds_lib/cell_6t.gds index e7298ccee60d5f5ed6de698a0e07e62e82453894..81c8112a83f9e9b1296ca03fce96f04c019cb555 100644 GIT binary patch delta 200 zcmcbkJx5oGfsKKQftf*uk%^%U$YN#SW6)+`L1ObvR8kkkDzPyxfqAkW6PuEF0Rsce z1_lNgt#IN0|K9-&3@}=}VDmC&38u+*ENn`WCm0x*A{ZE8v|Ppi|9@97Fu-WZ6PuT@ nO0Z1c$IhlC^@V|fQHOy6M$7vA|Nrj_0|Shf`m%W$rx_0b4i7Rq delta 81 zcmbQEdq-P|fsKKQftf*uk%^&Mg1!q( diff --git a/technology/scn3me_subm/gds_lib/replica_cell_6t.gds b/technology/scn3me_subm/gds_lib/replica_cell_6t.gds index 9f0f120d040f293a8cea1ab5c20632f3642fc06f..50dd9d1246336c996afb2f811b8e2b2defe3f4be 100644 GIT binary patch delta 200 zcmZ3Z`$kWRfsKKQftf*uk%^%U$YN#SW6);ML}KerRMHp4DzPywgL$$a6PuEF0Rsce z1_lNgt#IN0|K9-&3@}=}VDmO+38u+@ENn`WCm0x*A{ZE8v|Ppi|9@97Fu-WZ6PvfO nO0Y~m$IhlC^@V|fQHOy6M$7vA|Nrj_0|Shf`m%W&=Qkbzr&ly1 delta 81 zcmaE(w?> rect -8 29 42 51 << pwell >> @@ -46,6 +46,7 @@ rect 12 36 16 40 rect 22 36 26 40 rect 32 36 36 40 << psubstratepcontact >> +rect -2 22 2 26 rect 32 22 36 26 << nsubstratencontact >> rect 32 44 36 48 @@ -77,7 +78,8 @@ rect -2 40 2 44 rect 32 40 36 44 rect 11 36 12 40 rect 26 36 27 40 -rect -2 16 2 29 +rect -2 26 2 29 +rect -2 16 2 22 rect 11 18 15 36 rect 23 24 27 36 rect 25 20 27 24 diff --git a/technology/scn3me_subm/mag_lib/replica_cell_6t.mag b/technology/scn3me_subm/mag_lib/replica_cell_6t.mag index 24d0aa8e..8257df55 100644 --- a/technology/scn3me_subm/mag_lib/replica_cell_6t.mag +++ b/technology/scn3me_subm/mag_lib/replica_cell_6t.mag @@ -1,6 +1,6 @@ magic tech scmos -timestamp 1517421800 +timestamp 1517870621 << nwell >> rect -8 29 42 51 << pwell >> @@ -46,6 +46,7 @@ rect 12 36 16 40 rect 22 36 26 40 rect 32 36 36 40 << psubstratepcontact >> +rect -2 22 2 26 rect 32 22 36 26 << nsubstratencontact >> rect 32 44 36 48 @@ -77,10 +78,11 @@ rect -2 40 2 44 rect 32 40 36 44 rect 11 36 12 40 rect 26 36 27 40 -rect -2 25 2 29 +rect -2 26 2 29 rect 11 25 15 36 -rect -2 21 15 25 +rect 2 22 15 25 rect 23 24 27 36 +rect -2 21 15 22 rect -2 16 2 21 rect 11 18 15 21 rect 25 20 27 24 From e01d5b7c615ce434e7ab09bb1c353f969dfb62fa Mon Sep 17 00:00:00 2001 From: mguthaus Date: Mon, 5 Feb 2018 14:52:51 -0800 Subject: [PATCH 33/95] Disable virtual connects at top level LVS with Calibre. --- compiler/design.py | 8 ++++---- compiler/sram.py | 2 +- compiler/tests/20_sram_1bank_test.py | 8 ++++---- compiler/tests/20_sram_2bank_test.py | 8 ++++---- compiler/tests/20_sram_4bank_test.py | 8 ++++---- compiler/tests/testutils.py | 4 ++-- compiler/verify/calibre.py | 17 +++++++++++++---- compiler/verify/magic.py | 5 +++-- 8 files changed, 35 insertions(+), 25 deletions(-) diff --git a/compiler/design.py b/compiler/design.py index f32807d2..39ad1792 100644 --- a/compiler/design.py +++ b/compiler/design.py @@ -77,7 +77,7 @@ class design(hierarchy_spice.spice, hierarchy_layout.layout): return inst_map - def DRC_LVS(self): + def DRC_LVS(self, final_verification=False): """Checks both DRC and LVS for a module""" if OPTS.check_lvsdrc: tempspice = OPTS.openram_temp + "/temp.sp" @@ -85,7 +85,7 @@ class design(hierarchy_spice.spice, hierarchy_layout.layout): self.sp_write(tempspice) self.gds_write(tempgds) debug.check(verify.run_drc(self.name, tempgds) == 0,"DRC failed for {0}".format(self.name)) - debug.check(verify.run_lvs(self.name, tempgds, tempspice) == 0,"LVS failed for {0}".format(self.name)) + debug.check(verify.run_lvs(self.name, tempgds, tempspice, final_verification) == 0,"LVS failed for {0}".format(self.name)) os.remove(tempspice) os.remove(tempgds) @@ -97,14 +97,14 @@ class design(hierarchy_spice.spice, hierarchy_layout.layout): debug.check(verify.run_drc(self.name, tempgds) == 0,"DRC failed for {0}".format(self.name)) os.remove(tempgds) - def LVS(self): + def LVS(self, final_verification=False): """Checks LVS for a module""" if OPTS.check_lvsdrc: tempspice = OPTS.openram_temp + "/temp.sp" tempgds = OPTS.openram_temp + "/temp.gds" self.sp_write(tempspice) self.gds_write(tempgds) - debug.check(verify.run_lvs(self.name, tempgds, tempspice) == 0,"LVS failed for {0}".format(self.name)) + debug.check(verify.run_lvs(self.name, tempgds, tempspice, final_verification) == 0,"LVS failed for {0}".format(self.name)) os.remove(tempspice) os.remove(tempgds) diff --git a/compiler/sram.py b/compiler/sram.py index d0ced623..7690b1e7 100644 --- a/compiler/sram.py +++ b/compiler/sram.py @@ -72,7 +72,7 @@ class sram(design.design): self.width = sizes[0] self.height = sizes[1] - self.DRC_LVS() + self.DRC_LVS(final_verification=True) def compute_sizes(self): """ Computes the organization of the memory using bitcell size by trying to make it square.""" diff --git a/compiler/tests/20_sram_1bank_test.py b/compiler/tests/20_sram_1bank_test.py index da54691e..3de8cc7e 100644 --- a/compiler/tests/20_sram_1bank_test.py +++ b/compiler/tests/20_sram_1bank_test.py @@ -23,19 +23,19 @@ class sram_1bank_test(openram_test): debug.info(1, "Single bank, no column mux with control logic") a = sram.sram(word_size=4, num_words=16, num_banks=1, name="sram1") - self.local_check(a) + self.local_check(a, final_verification=True) debug.info(1, "Single bank two way column mux with control logic") a = sram.sram(word_size=4, num_words=32, num_banks=1, name="sram2") - self.local_check(a) + self.local_check(a, final_verification=True) debug.info(1, "Single bank, four way column mux with control logic") a = sram.sram(word_size=4, num_words=64, num_banks=1, name="sram3") - self.local_check(a) + self.local_check(a, final_verification=True) # debug.info(1, "Single bank, eight way column mux with control logic") # a = sram.sram(word_size=2, num_words=128, num_banks=1, name="sram4") - # self.local_check(a) + # self.local_check(a, final_verification=True) OPTS.check_lvsdrc = True globals.end_openram() diff --git a/compiler/tests/20_sram_2bank_test.py b/compiler/tests/20_sram_2bank_test.py index 9c5c7376..cb4d2cca 100644 --- a/compiler/tests/20_sram_2bank_test.py +++ b/compiler/tests/20_sram_2bank_test.py @@ -23,19 +23,19 @@ class sram_2bank_test(openram_test): debug.info(1, "Two bank, no column mux with control logic") a = sram.sram(word_size=16, num_words=32, num_banks=2, name="sram1") - self.local_check(a) + self.local_check(a, final_verification=True) debug.info(1, "Two bank two way column mux with control logic") a = sram.sram(word_size=16, num_words=64, num_banks=2, name="sram2") - self.local_check(a) + self.local_check(a, final_verification=True) debug.info(1, "Two bank, four way column mux with control logic") a = sram.sram(word_size=16, num_words=128, num_banks=2, name="sram3") - self.local_check(a) + self.local_check(a, final_verification=True) # debug.info(1, "Two bank, eight way column mux with control logic") # a = sram.sram(word_size=2, num_words=256 num_banks=2, name="sram4") - # self.local_check(a) + # self.local_check(a, final_verification=True) OPTS.check_lvsdrc = True globals.end_openram() diff --git a/compiler/tests/20_sram_4bank_test.py b/compiler/tests/20_sram_4bank_test.py index 192fd377..9914856c 100644 --- a/compiler/tests/20_sram_4bank_test.py +++ b/compiler/tests/20_sram_4bank_test.py @@ -23,19 +23,19 @@ class sram_4bank_test(openram_test): debug.info(1, "Four bank, no column mux with control logic") a = sram.sram(word_size=16, num_words=64, num_banks=4, name="sram1") - self.local_check(a) + self.local_check(a, final_verification=True) debug.info(1, "Four bank two way column mux with control logic") a = sram.sram(word_size=16, num_words=128, num_banks=4, name="sram2") - self.local_check(a) + self.local_check(a, final_verification=True) debug.info(1, "Four bank, four way column mux with control logic") a = sram.sram(word_size=16, num_words=256, num_banks=4, name="sram3") - self.local_check(a) + self.local_check(a, final_verification=True) # debug.info(1, "Four bank, eight way column mux with control logic") # a = sram.sram(word_size=2, num_words=256, num_banks=4, name="sram4") - # self.local_check(a) + # self.local_check(a, final_verification=True) OPTS.check_lvsdrc = True globals.end_openram() diff --git a/compiler/tests/testutils.py b/compiler/tests/testutils.py index f7c61a65..76c23ae8 100644 --- a/compiler/tests/testutils.py +++ b/compiler/tests/testutils.py @@ -18,7 +18,7 @@ class openram_test(unittest.TestCase): for f in files: os.remove(f) - def local_check(self, a): + def local_check(self, a, final_verification=False): tempspice = OPTS.openram_temp + "temp.sp" tempgds = OPTS.openram_temp + "temp.gds" @@ -35,7 +35,7 @@ class openram_test(unittest.TestCase): try: - self.assertTrue(verify.run_lvs(a.name, tempgds, tempspice)==0) + self.assertTrue(verify.run_lvs(a.name, tempgds, tempspice, final_verification)==0) except: self.reset() self.fail("LVS mismatch: {}".format(a.name)) diff --git a/compiler/verify/calibre.py b/compiler/verify/calibre.py index e72aa965..f679bb44 100644 --- a/compiler/verify/calibre.py +++ b/compiler/verify/calibre.py @@ -137,9 +137,11 @@ def run_drc(cell_name, gds_name): return errors -def run_lvs(cell_name, gds_name, sp_name): +def run_lvs(cell_name, gds_name, sp_name, final_verification=False): """Run LVS check on a given top-level name which is - implemented in gds_name and sp_name. """ + implemented in gds_name and sp_name. Final verification will + ensure that there are no remaining virtual conections. """ + from tech import drc lvs_rules = drc["lvs_rules"] lvs_runset = { @@ -154,7 +156,6 @@ def run_lvs(cell_name, gds_name, sp_name): 'lvsPowerNames': 'vdd', 'lvsGroundNames': 'gnd', 'lvsIncludeSVRFCmds': 1, - 'lvsSVRFCmds': '{VIRTUAL CONNECT NAME VDD? GND? ?}', 'lvsIgnorePorts': 1, 'lvsERCDatabase': OPTS.openram_temp + cell_name + ".erc.results", 'lvsERCSummaryFile': OPTS.openram_temp + cell_name + ".erc.summary", @@ -162,10 +163,18 @@ def run_lvs(cell_name, gds_name, sp_name): 'lvsMaskDBFile': OPTS.openram_temp + cell_name + ".maskdb", 'cmnFDILayerMapFile': drc["layer_map"], 'cmnFDIUseLayerMap': 1, - 'cmnVConnectNames': 'vdd, gnd', + 'lvsRecognizeGates': 'NONE' #'cmnVConnectNamesState' : 'ALL', #connects all nets with the same name } + # This should be removed for final verification + if not final_verification: + lvs_runset['cmnVConnectReport']=1 + lvs_runset['cmnVConnectNamesState']='SOME' + lvs_runset['cmnVConnectNames']='vdd gnd' + + + # write the runset file f = open(OPTS.openram_temp + "lvs_runset", "w") for k in sorted(lvs_runset.iterkeys()): diff --git a/compiler/verify/magic.py b/compiler/verify/magic.py index d83f5b56..8cbf1075 100644 --- a/compiler/verify/magic.py +++ b/compiler/verify/magic.py @@ -184,9 +184,10 @@ def run_drc(cell_name, gds_name, extract=False): return errors -def run_lvs(cell_name, gds_name, sp_name): +def run_lvs(cell_name, gds_name, sp_name, final_verification=False): """Run LVS check on a given top-level name which is - implemented in gds_name and sp_name. """ + implemented in gds_name and sp_name. Final verification will + ensure that there are no remaining virtual conections. """ run_drc(cell_name, gds_name, extract=True) write_netgen_script(cell_name, sp_name) From 85f44382807e70208f4dc6c6312e2fddf9786f45 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Mon, 5 Feb 2018 15:09:21 -0800 Subject: [PATCH 34/95] Exit with error if model files are not found. --- compiler/characterizer/stimuli.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/compiler/characterizer/stimuli.py b/compiler/characterizer/stimuli.py index e4d81d30..0c6fd7d8 100644 --- a/compiler/characterizer/stimuli.py +++ b/compiler/characterizer/stimuli.py @@ -272,7 +272,10 @@ def write_control(stim_file, end_time): def write_include(stim_file, models): """Writes include statements, inputs are lists of model files""" for item in list(models): - stim_file.write(".include \"{0}\"\n\n".format(item)) + if os.path.isfile(item): + stim_file.write(".include \"{0}\"\n\n".format(item)) + else: + debug.error("Could not find spice model: {0}".format(item)) def write_supply(stim_file): From 4505c0f74e7e3c338ac1bd4c68a6fef33a3323f0 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Mon, 5 Feb 2018 15:12:12 -0800 Subject: [PATCH 35/95] Improve error to setup model dir path. Use it to override FreePDK45 too. --- compiler/characterizer/stimuli.py | 2 +- technology/setup_scripts/setup_openram_freepdk45.py | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/compiler/characterizer/stimuli.py b/compiler/characterizer/stimuli.py index 0c6fd7d8..7986f11e 100644 --- a/compiler/characterizer/stimuli.py +++ b/compiler/characterizer/stimuli.py @@ -275,7 +275,7 @@ def write_include(stim_file, models): if os.path.isfile(item): stim_file.write(".include \"{0}\"\n\n".format(item)) else: - debug.error("Could not find spice model: {0}".format(item)) + debug.error("Could not find spice model: {0}\nSet SPICE_MODEL_DIR to over-ride path.\n".format(item)) def write_supply(stim_file): diff --git a/technology/setup_scripts/setup_openram_freepdk45.py b/technology/setup_scripts/setup_openram_freepdk45.py index 7b40357e..93631a92 100644 --- a/technology/setup_scripts/setup_openram_freepdk45.py +++ b/technology/setup_scripts/setup_openram_freepdk45.py @@ -28,10 +28,10 @@ except: DRCLVS_HOME= PDK_DIR+"/ncsu_basekit/techfile/calibre" os.environ["DRCLVS_HOME"] = DRCLVS_HOME -# try: -# SPICE_MODEL_DIR = os.path.abspath(os.environ.get("SPICE_MODEL_DIR")) -# except: -os.environ["SPICE_MODEL_DIR"] = PDK_DIR+"/ncsu_basekit/models/hspice/tran_models/models_nom" +try: + SPICE_MODEL_DIR = os.path.abspath(os.environ.get("SPICE_MODEL_DIR")) +except: + os.environ["SPICE_MODEL_DIR"] = PDK_DIR+"/ncsu_basekit/models/hspice/tran_models/models_nom" ########################## #Paths required for OPENRAM to function From 941094ce317fa187b2d309573b70865ae078f32e Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Mon, 5 Feb 2018 15:21:53 -0800 Subject: [PATCH 36/95] Return slews to 10-90 and 90-10 so I don't have to re-hardcode the results in unit tests. --- compiler/characterizer/delay.py | 8 ++++---- compiler/characterizer/lib.py | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/compiler/characterizer/delay.py b/compiler/characterizer/delay.py index fa3f2a77..8a7b4bfe 100644 --- a/compiler/characterizer/delay.py +++ b/compiler/characterizer/delay.py @@ -159,8 +159,8 @@ class delay(): meas_name="SLEW0", trig_name=targ_name, targ_name=targ_name, - trig_val=0.8*self.vdd, - targ_val=0.2*self.vdd, + trig_val=0.9*self.vdd, + targ_val=0.1*self.vdd, trig_dir="FALL", targ_dir="FALL", trig_td=self.cycle_times[self.read0_cycle], @@ -170,8 +170,8 @@ class delay(): meas_name="SLEW1", trig_name=targ_name, targ_name=targ_name, - trig_val=0.2*self.vdd, - targ_val=0.8*self.vdd, + trig_val=0.1*self.vdd, + targ_val=0.9*self.vdd, trig_dir="RISE", targ_dir="RISE", trig_td=self.cycle_times[self.read1_cycle], diff --git a/compiler/characterizer/lib.py b/compiler/characterizer/lib.py index 3716b51b..b2a87479 100644 --- a/compiler/characterizer/lib.py +++ b/compiler/characterizer/lib.py @@ -116,10 +116,10 @@ class lib: self.lib.write(" output_threshold_pct_fall : 50.0 ;\n") self.lib.write(" input_threshold_pct_rise : 50.0 ;\n") self.lib.write(" output_threshold_pct_rise : 50.0 ;\n") - self.lib.write(" slew_lower_threshold_pct_fall : 20.0 ;\n") - self.lib.write(" slew_upper_threshold_pct_fall : 80.0 ;\n") - self.lib.write(" slew_lower_threshold_pct_rise : 20.0 ;\n") - self.lib.write(" slew_upper_threshold_pct_rise : 80.0 ;\n\n") + self.lib.write(" slew_lower_threshold_pct_fall : 10.0 ;\n") + self.lib.write(" slew_upper_threshold_pct_fall : 90.0 ;\n") + self.lib.write(" slew_lower_threshold_pct_rise : 10.0 ;\n") + self.lib.write(" slew_upper_threshold_pct_rise : 90.0 ;\n\n") self.lib.write(" default_cell_leakage_power : 0.0 ;\n") self.lib.write(" default_leakage_power_density : 0.0 ;\n") From 33b04bbca54d5c4dbe0813a44b4c14e8e6090046 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Mon, 5 Feb 2018 16:02:57 -0800 Subject: [PATCH 37/95] Add area/perimeter of source/drain to transistor netlist. Gets rid of some spice warnings, gives better non-annotated measurements. --- compiler/ptx.py | 13 +++++++++---- compiler/verify/magic.py | 2 ++ 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/compiler/ptx.py b/compiler/ptx.py index 0e69ce67..ed9c8e74 100644 --- a/compiler/ptx.py +++ b/compiler/ptx.py @@ -63,10 +63,15 @@ class ptx(design.design): # self.spice.append("\n.SUBCKT {0} {1}".format(self.name, # " ".join(self.pins))) - self.spice_device="M{{0}} {{1}} {0} m={1} w={2}u l={3}u".format(spice[self.tx_type], - self.mults, - self.tx_width, - drc["minwidth_poly"]) + # Just make a guess since these will actually be decided in the layout later. + area_sd = 2.5*drc["minwidth_poly"]*self.tx_width + perimeter_sd = 2*drc["minwidth_poly"] + 2*self.tx_width + self.spice_device="M{{0}} {{1}} {0} m={1} w={2}u l={3}u pd={4}u ps={4}u as={5}p ad={5}p".format(spice[self.tx_type], + self.mults, + self.tx_width, + drc["minwidth_poly"], + perimeter_sd, + area_sd) self.spice.append("\n* ptx " + self.spice_device) # self.spice.append(".ENDS {0}".format(self.name)) diff --git a/compiler/verify/magic.py b/compiler/verify/magic.py index 8cbf1075..b2e66aa2 100644 --- a/compiler/verify/magic.py +++ b/compiler/verify/magic.py @@ -124,6 +124,8 @@ def write_netgen_script(cell_name, sp_name): f.write("flatten class {{{0}.spice precharge_array}}\n".format(cell_name)) f.write("property {{{0}.spice nfet}} remove as ad ps pd\n".format(cell_name)) f.write("property {{{0}.spice pfet}} remove as ad ps pd\n".format(cell_name)) + f.write("property {{{0} n}} remove as ad ps pd\n".format(sp_name)) + f.write("property {{{0} p}} remove as ad ps pd\n".format(sp_name)) # Allow some flexibility in W size because magic will snap to a lambda grid # This can also cause disconnects unfortunately! # f.write("property {{{0}{1}.spice nfet}} tolerance {{w 0.1}}\n".format(OPTS.openram_temp, From c3592b3d46827ea07e738bf2f43f569a03247074 Mon Sep 17 00:00:00 2001 From: mguthaus Date: Tue, 6 Feb 2018 05:26:27 -0800 Subject: [PATCH 38/95] Added new timing tests with ps,pd,as,ad caps included. --- .../tests/golden/sram_2_16_1_freepdk45.lib | 72 +++++++++---------- .../sram_2_16_1_freepdk45_analytical.lib | 2 +- .../golden/sram_2_16_1_freepdk45_pruned.lib | 72 +++++++++---------- .../tests/golden/sram_2_16_1_scn3me_subm.lib | 42 +++++------ .../sram_2_16_1_scn3me_subm_analytical.lib | 14 ++-- .../golden/sram_2_16_1_scn3me_subm_pruned.lib | 42 +++++------ 6 files changed, 122 insertions(+), 122 deletions(-) diff --git a/compiler/tests/golden/sram_2_16_1_freepdk45.lib b/compiler/tests/golden/sram_2_16_1_freepdk45.lib index 2460f1a1..7b56503b 100644 --- a/compiler/tests/golden/sram_2_16_1_freepdk45.lib +++ b/compiler/tests/golden/sram_2_16_1_freepdk45.lib @@ -74,7 +74,7 @@ cell (sram_2_16_1_freepdk45){ dont_use : true; map_only : true; dont_touch : true; - area : 0.023625; + area : 918.5120625; bus(DATA){ bus_type : DATA; @@ -92,19 +92,19 @@ cell (sram_2_16_1_freepdk45){ internal_power(){ when : "OEb & !clk"; rise_power(scalar){ - values("0.027781"); + values("0.032264359"); } fall_power(scalar){ - values("0.026752"); + values("0.033266382"); } } timing(){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027"); + values("0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021"); } fall_constraint(CONSTRAINT_TABLE) { values("0.009, 0.009, 0.015",\ @@ -129,10 +129,10 @@ cell (sram_2_16_1_freepdk45){ internal_power(){ when : "!OEb & !clk"; rise_power(scalar){ - values("0.031198"); + values("0.039765915"); } fall_power(scalar){ - values("0.031252"); + values("0.039839075"); } } timing(){ @@ -140,24 +140,24 @@ cell (sram_2_16_1_freepdk45){ related_pin : "clk"; timing_type : falling_edge; cell_rise(CELL_TABLE) { - values("0.046, 0.047, 0.054",\ - "0.047, 0.047, 0.054",\ - "0.052, 0.052, 0.059"); + values("0.055, 0.056, 0.064",\ + "0.056, 0.057, 0.064",\ + "0.061, 0.062, 0.07"); } cell_fall(CELL_TABLE) { - values("0.132, 0.133, 0.142",\ - "0.133, 0.134, 0.142",\ - "0.138, 0.139, 0.147"); + values("0.17, 0.171, 0.179",\ + "0.171, 0.172, 0.18",\ + "0.176, 0.177, 0.185"); } rise_transition(CELL_TABLE) { - values("0.014, 0.015, 0.027",\ - "0.014, 0.015, 0.027",\ - "0.014, 0.015, 0.027"); + values("0.015, 0.016, 0.028",\ + "0.015, 0.016, 0.028",\ + "0.015, 0.016, 0.028"); } fall_transition(CELL_TABLE) { - values("0.018, 0.02, 0.036",\ - "0.019, 0.02, 0.036",\ - "0.019, 0.02, 0.036"); + values("0.019, 0.02, 0.035",\ + "0.019, 0.02, 0.035",\ + "0.019, 0.02, 0.035"); } } } @@ -174,9 +174,9 @@ cell (sram_2_16_1_freepdk45){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027"); + values("0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021"); } fall_constraint(CONSTRAINT_TABLE) { values("0.009, 0.009, 0.015",\ @@ -208,9 +208,9 @@ cell (sram_2_16_1_freepdk45){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027"); + values("0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021"); } fall_constraint(CONSTRAINT_TABLE) { values("0.009, 0.009, 0.015",\ @@ -241,9 +241,9 @@ cell (sram_2_16_1_freepdk45){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027"); + values("0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021"); } fall_constraint(CONSTRAINT_TABLE) { values("0.009, 0.009, 0.015",\ @@ -274,9 +274,9 @@ cell (sram_2_16_1_freepdk45){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027"); + values("0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021"); } fall_constraint(CONSTRAINT_TABLE) { values("0.009, 0.009, 0.015",\ @@ -308,20 +308,20 @@ cell (sram_2_16_1_freepdk45){ timing_type :"min_pulse_width"; related_pin : clk; rise_constraint(scalar) { - values("0.1955"); + values("0.2345"); } fall_constraint(scalar) { - values("0.1955"); + values("0.2345"); } } timing(){ timing_type :"minimum_period"; related_pin : clk; rise_constraint(scalar) { - values("0.391"); + values("0.469"); } fall_constraint(scalar) { - values("0.391"); + values("0.469"); } } } diff --git a/compiler/tests/golden/sram_2_16_1_freepdk45_analytical.lib b/compiler/tests/golden/sram_2_16_1_freepdk45_analytical.lib index aefe3d94..aabc209b 100644 --- a/compiler/tests/golden/sram_2_16_1_freepdk45_analytical.lib +++ b/compiler/tests/golden/sram_2_16_1_freepdk45_analytical.lib @@ -74,7 +74,7 @@ cell (sram_2_16_1_freepdk45){ dont_use : true; map_only : true; dont_touch : true; - area : 0.023625; + area : 918.5120625; bus(DATA){ bus_type : DATA; diff --git a/compiler/tests/golden/sram_2_16_1_freepdk45_pruned.lib b/compiler/tests/golden/sram_2_16_1_freepdk45_pruned.lib index 2460f1a1..990f264e 100644 --- a/compiler/tests/golden/sram_2_16_1_freepdk45_pruned.lib +++ b/compiler/tests/golden/sram_2_16_1_freepdk45_pruned.lib @@ -74,7 +74,7 @@ cell (sram_2_16_1_freepdk45){ dont_use : true; map_only : true; dont_touch : true; - area : 0.023625; + area : 918.5120625; bus(DATA){ bus_type : DATA; @@ -92,19 +92,19 @@ cell (sram_2_16_1_freepdk45){ internal_power(){ when : "OEb & !clk"; rise_power(scalar){ - values("0.027781"); + values("0.043273977"); } fall_power(scalar){ - values("0.026752"); + values("0.042322667"); } } timing(){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027"); + values("0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021"); } fall_constraint(CONSTRAINT_TABLE) { values("0.009, 0.009, 0.015",\ @@ -129,10 +129,10 @@ cell (sram_2_16_1_freepdk45){ internal_power(){ when : "!OEb & !clk"; rise_power(scalar){ - values("0.031198"); + values("0.088241812"); } fall_power(scalar){ - values("0.031252"); + values("0.088188668"); } } timing(){ @@ -140,24 +140,24 @@ cell (sram_2_16_1_freepdk45){ related_pin : "clk"; timing_type : falling_edge; cell_rise(CELL_TABLE) { - values("0.046, 0.047, 0.054",\ - "0.047, 0.047, 0.054",\ - "0.052, 0.052, 0.059"); + values("0.055, 0.055, 0.063",\ + "0.055, 0.056, 0.063",\ + "0.061, 0.062, 0.069"); } cell_fall(CELL_TABLE) { - values("0.132, 0.133, 0.142",\ - "0.133, 0.134, 0.142",\ - "0.138, 0.139, 0.147"); + values("0.162, 0.163, 0.171",\ + "0.163, 0.164, 0.172",\ + "0.168, 0.169, 0.178"); } rise_transition(CELL_TABLE) { - values("0.014, 0.015, 0.027",\ - "0.014, 0.015, 0.027",\ - "0.014, 0.015, 0.027"); + values("0.015, 0.016, 0.028",\ + "0.015, 0.016, 0.028",\ + "0.015, 0.016, 0.028"); } fall_transition(CELL_TABLE) { - values("0.018, 0.02, 0.036",\ - "0.019, 0.02, 0.036",\ - "0.019, 0.02, 0.036"); + values("0.018, 0.02, 0.035",\ + "0.018, 0.02, 0.035",\ + "0.018, 0.02, 0.035"); } } } @@ -174,9 +174,9 @@ cell (sram_2_16_1_freepdk45){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027"); + values("0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021"); } fall_constraint(CONSTRAINT_TABLE) { values("0.009, 0.009, 0.015",\ @@ -208,9 +208,9 @@ cell (sram_2_16_1_freepdk45){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027"); + values("0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021"); } fall_constraint(CONSTRAINT_TABLE) { values("0.009, 0.009, 0.015",\ @@ -241,9 +241,9 @@ cell (sram_2_16_1_freepdk45){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027"); + values("0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021"); } fall_constraint(CONSTRAINT_TABLE) { values("0.009, 0.009, 0.015",\ @@ -274,9 +274,9 @@ cell (sram_2_16_1_freepdk45){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027",\ - "0.009, 0.015, 0.027"); + values("0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021"); } fall_constraint(CONSTRAINT_TABLE) { values("0.009, 0.009, 0.015",\ @@ -308,20 +308,20 @@ cell (sram_2_16_1_freepdk45){ timing_type :"min_pulse_width"; related_pin : clk; rise_constraint(scalar) { - values("0.1955"); + values("0.2245"); } fall_constraint(scalar) { - values("0.1955"); + values("0.2245"); } } timing(){ timing_type :"minimum_period"; related_pin : clk; rise_constraint(scalar) { - values("0.391"); + values("0.449"); } fall_constraint(scalar) { - values("0.391"); + values("0.449"); } } } diff --git a/compiler/tests/golden/sram_2_16_1_scn3me_subm.lib b/compiler/tests/golden/sram_2_16_1_scn3me_subm.lib index 5a8ebfc6..5e3c613c 100644 --- a/compiler/tests/golden/sram_2_16_1_scn3me_subm.lib +++ b/compiler/tests/golden/sram_2_16_1_scn3me_subm.lib @@ -74,7 +74,7 @@ cell (sram_2_16_1_scn3me_subm){ dont_use : true; map_only : true; dont_touch : true; - area : 2.7; + area : 122426.46; bus(DATA){ bus_type : DATA; @@ -92,10 +92,10 @@ cell (sram_2_16_1_scn3me_subm){ internal_power(){ when : "OEb & !clk"; rise_power(scalar){ - values("3.2612"); + values("3.8220424"); } fall_power(scalar){ - values("3.5985"); + values("4.3085394"); } } timing(){ @@ -129,10 +129,10 @@ cell (sram_2_16_1_scn3me_subm){ internal_power(){ when : "!OEb & !clk"; rise_power(scalar){ - values("5.1597"); + values("6.224058"); } fall_power(scalar){ - values("5.1863"); + values("6.0499775"); } } timing(){ @@ -140,24 +140,24 @@ cell (sram_2_16_1_scn3me_subm){ related_pin : "clk"; timing_type : falling_edge; cell_rise(CELL_TABLE) { - values("0.509, 0.592, 1.265",\ - "0.512, 0.595, 1.271",\ - "0.561, 0.642, 1.317"); + values("0.676, 0.761, 1.441",\ + "0.679, 0.763, 1.444",\ + "0.731, 0.813, 1.493"); } cell_fall(CELL_TABLE) { - values("1.449, 1.549, 2.511",\ - "1.453, 1.555, 2.518",\ - "1.505, 1.607, 2.568"); + values("1.689, 1.797, 2.773",\ + "1.693, 1.802, 2.778",\ + "1.747, 1.856, 2.831"); } rise_transition(CELL_TABLE) { - values("0.19, 0.335, 1.887",\ - "0.192, 0.336, 1.886",\ - "0.194, 0.339, 1.886"); + values("0.186, 0.335, 1.875",\ + "0.187, 0.337, 1.875",\ + "0.19, 0.34, 1.875"); } fall_transition(CELL_TABLE) { - values("0.282, 0.465, 2.464",\ - "0.283, 0.466, 2.463",\ - "0.283, 0.465, 2.455"); + values("0.235, 0.445, 2.457",\ + "0.235, 0.445, 2.457",\ + "0.235, 0.445, 2.457"); } } } @@ -308,20 +308,20 @@ cell (sram_2_16_1_scn3me_subm){ timing_type :"min_pulse_width"; related_pin : clk; rise_constraint(scalar) { - values("4.375"); + values("4.6875"); } fall_constraint(scalar) { - values("4.375"); + values("4.6875"); } } timing(){ timing_type :"minimum_period"; related_pin : clk; rise_constraint(scalar) { - values("8.75"); + values("9.375"); } fall_constraint(scalar) { - values("8.75"); + values("9.375"); } } } diff --git a/compiler/tests/golden/sram_2_16_1_scn3me_subm_analytical.lib b/compiler/tests/golden/sram_2_16_1_scn3me_subm_analytical.lib index 21805aad..59607107 100644 --- a/compiler/tests/golden/sram_2_16_1_scn3me_subm_analytical.lib +++ b/compiler/tests/golden/sram_2_16_1_scn3me_subm_analytical.lib @@ -74,7 +74,7 @@ cell (sram_2_16_1_scn3me_subm){ dont_use : true; map_only : true; dont_touch : true; - area : 2.7; + area : 122426.46; bus(DATA){ bus_type : DATA; @@ -140,14 +140,14 @@ cell (sram_2_16_1_scn3me_subm){ related_pin : "clk"; timing_type : falling_edge; cell_rise(CELL_TABLE) { - values("0.561, 0.608, 1.049",\ - "0.561, 0.608, 1.049",\ - "0.561, 0.608, 1.049"); + values("0.556, 0.603, 1.044",\ + "0.556, 0.603, 1.044",\ + "0.556, 0.603, 1.044"); } cell_fall(CELL_TABLE) { - values("0.561, 0.608, 1.049",\ - "0.561, 0.608, 1.049",\ - "0.561, 0.608, 1.049"); + values("0.556, 0.603, 1.044",\ + "0.556, 0.603, 1.044",\ + "0.556, 0.603, 1.044"); } rise_transition(CELL_TABLE) { values("0.024, 0.081, 0.61",\ diff --git a/compiler/tests/golden/sram_2_16_1_scn3me_subm_pruned.lib b/compiler/tests/golden/sram_2_16_1_scn3me_subm_pruned.lib index 81a87cd8..088b7826 100644 --- a/compiler/tests/golden/sram_2_16_1_scn3me_subm_pruned.lib +++ b/compiler/tests/golden/sram_2_16_1_scn3me_subm_pruned.lib @@ -74,7 +74,7 @@ cell (sram_2_16_1_scn3me_subm){ dont_use : true; map_only : true; dont_touch : true; - area : 2.7; + area : 122426.46; bus(DATA){ bus_type : DATA; @@ -92,10 +92,10 @@ cell (sram_2_16_1_scn3me_subm){ internal_power(){ when : "OEb & !clk"; rise_power(scalar){ - values("2.8745"); + values("3.9245536"); } fall_power(scalar){ - values("3.0265"); + values("4.1029534"); } } timing(){ @@ -129,10 +129,10 @@ cell (sram_2_16_1_scn3me_subm){ internal_power(){ when : "!OEb & !clk"; rise_power(scalar){ - values("4.4921"); + values("6.3714394"); } fall_power(scalar){ - values("4.5139"); + values("6.2007335"); } } timing(){ @@ -140,24 +140,24 @@ cell (sram_2_16_1_scn3me_subm){ related_pin : "clk"; timing_type : falling_edge; cell_rise(CELL_TABLE) { - values("0.496, 0.579, 1.253",\ - "0.499, 0.581, 1.258",\ - "0.547, 0.627, 1.305"); + values("0.668, 0.753, 1.433",\ + "0.671, 0.756, 1.437",\ + "0.723, 0.805, 1.485"); } cell_fall(CELL_TABLE) { - values("1.429, 1.539, 2.523",\ - "1.433, 1.544, 2.526",\ - "1.485, 1.595, 2.578"); + values("1.697, 1.807, 2.782",\ + "1.702, 1.811, 2.787",\ + "1.756, 1.865, 2.839"); } rise_transition(CELL_TABLE) { - values("0.189, 0.335, 1.879",\ - "0.19, 0.336, 1.879",\ - "0.192, 0.337, 1.879"); + values("0.185, 0.334, 1.877",\ + "0.186, 0.336, 1.877",\ + "0.188, 0.339, 1.878"); } fall_transition(CELL_TABLE) { - values("0.224, 0.437, 2.462",\ - "0.225, 0.437, 2.472",\ - "0.225, 0.436, 2.458"); + values("0.235, 0.444, 2.457",\ + "0.234, 0.444, 2.457",\ + "0.234, 0.444, 2.456"); } } } @@ -308,20 +308,20 @@ cell (sram_2_16_1_scn3me_subm){ timing_type :"min_pulse_width"; related_pin : clk; rise_constraint(scalar) { - values("4.375"); + values("4.6875"); } fall_constraint(scalar) { - values("4.375"); + values("4.6875"); } } timing(){ timing_type :"minimum_period"; related_pin : clk; rise_constraint(scalar) { - values("8.75"); + values("9.375"); } fall_constraint(scalar) { - values("8.75"); + values("9.375"); } } } From 3af1bbba269535a1052867b87022d8f699627442 Mon Sep 17 00:00:00 2001 From: mguthaus Date: Tue, 6 Feb 2018 07:58:25 -0800 Subject: [PATCH 39/95] Updated delay tests with new delays including ps, pd, as, ad. --- compiler/tests/21_hspice_delay_test.py | 36 ++++++++++++------------- compiler/tests/21_ngspice_delay_test.py | 34 +++++++++++------------ 2 files changed, 35 insertions(+), 35 deletions(-) diff --git a/compiler/tests/21_hspice_delay_test.py b/compiler/tests/21_hspice_delay_test.py index 1647adbc..ebdc9093 100644 --- a/compiler/tests/21_hspice_delay_test.py +++ b/compiler/tests/21_hspice_delay_test.py @@ -49,25 +49,25 @@ class timing_sram_test(openram_test): slews = [tech.spice["rise_time"]*2] data = d.analyze(probe_address, probe_data,slews,loads) if OPTS.tech_name == "freepdk45": - golden_data = {'read1_power': 0.0296933, - 'read0_power': 0.029897899999999998, - 'write0_power': 0.0258029, - 'delay1': [0.049100700000000004], - 'delay0': [0.13766139999999996], - 'min_period': 0.322, - 'write1_power': 0.0260398, - 'slew0': [0.0265264], - 'slew1': [0.0195507]} + golden_data = {'read1_power': 0.0339194, + 'read0_power': 0.0340617, + 'write0_power': 0.0287779, + 'delay1': [0.0575725], + 'delay0': [0.16744839999999997], + 'min_period': 0.391, + 'write1_power': 0.0299736, + 'slew0': [0.026416], + 'slew1': [0.020441199999999996]} elif OPTS.tech_name == "scn3me_subm": - golden_data = {'read1_power': 4.443, - 'read0_power': 4.4712, - 'write0_power': 3.0032, - 'delay1': [0.8596608], - 'delay0': [1.9534000000000002], - 'min_period': 5.625, - 'write1_power': 2.8086, - 'slew0': [1.2982], - 'slew1': [0.9909933]} + golden_data = {'read1_power': 5.557800000000001, + 'read0_power': 5.5712, + 'write0_power': 3.8325, + 'delay1': [1.0323], + 'delay0': [2.2134], + 'min_period': 6.25, + 'write1_power': 3.6903, + 'slew0': [1.3009000000000002], + 'slew1': [0.983561]} else: self.assertTrue(False) # other techs fail # Check if no too many or too few results diff --git a/compiler/tests/21_ngspice_delay_test.py b/compiler/tests/21_ngspice_delay_test.py index ea0df783..ccf40f31 100644 --- a/compiler/tests/21_ngspice_delay_test.py +++ b/compiler/tests/21_ngspice_delay_test.py @@ -47,25 +47,25 @@ class timing_sram_test(openram_test): slews = [tech.spice["rise_time"]*2] data = d.analyze(probe_address, probe_data,slews,loads) if OPTS.tech_name == "freepdk45": - golden_data = {'read1_power': 0.026660760000000002, - 'read0_power': 0.02711731, - 'write0_power': 0.02501428, - 'delay1': [0.04867702], - 'delay0': [0.1423633], - 'min_period': 0.332, - 'write1_power': 0.024162890000000003, - 'slew0': [0.02733451], - 'slew1': [0.02121624]} + golden_data = {'read1_power': 0.03228762, + 'read0_power': 0.03281849, + 'write0_power': 0.02902607, + 'delay1': [0.059081419999999996], + 'delay0': [0.1716648], + 'min_period': 0.391, + 'write1_power': 0.02879424, + 'slew0': [0.02851539], + 'slew1': [0.02319674]} elif OPTS.tech_name == "scn3me_subm": - golden_data = {'read1_power': 4.250786000000001, - 'read0_power': 4.093461, - 'write0_power': 2.762675, - 'delay1': [0.920068], - 'delay0': [2.051821], + golden_data = {'read1_power': 5.063901, + 'read0_power': 4.926464999999999, + 'write0_power': 3.480712, + 'delay1': [1.044746], + 'delay0': [2.23024], 'min_period': 6.563, - 'write1_power': 2.4545719999999998, - 'slew0': [1.342015], - 'slew1': [1.040868]} + 'write1_power': 3.1949449999999997, + 'slew0': [1.3469], + 'slew1': [1.035352]} else: self.assertTrue(False) # other techs fail From d2af68408c135ac2188a0b1b24dcb5397a07eee0 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Tue, 6 Feb 2018 10:54:47 -0800 Subject: [PATCH 40/95] Add SCMOS and Magic comments in README.md --- README.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/README.md b/README.md index f96923cf..86a003c0 100644 --- a/README.md +++ b/README.md @@ -7,9 +7,14 @@ https://github.com/mguthaus/OpenRAM/blob/master/OpenRAM_ICCAD_2016_presentation. The OpenRAM compiler has very few dependencies: * ngspice-26 (or later) or HSpice I-2013.12-1 (or later) or CustomSim 2017 (or later) * Python 2.7 and higher (currently excludes Python 3 and up) +* Python numpy * a setup script for each technology * a technology directory for each technology with the base cells +If you want to perform DRC and LVS, you will need either: +* Calibre (for FreePDK45 or SCMOS) +* Magic + Netgen (for SCMOS only) + You must set two environment variables: OPENRAM_HOME should point to the compiler source directory. OPENERAM_TECH should point to a root technology directory that contains subdirs of all other technologies. @@ -36,6 +41,12 @@ For example, in csh/tcsh, add to your .tcshrc: We do not distribute the PDK, but you may get it from: https://www.eda.ncsu.edu/wiki/FreePDK45:Contents +If you are using SCMOS, you should install Magic and netgen from: + http://opencircuitdesign.com/magic/ + http://opencircuitdesign.com/netgen/ +In addition, you will need to install the MOSIS SCMOS rules for scn3me_subm +that are part of QFlow: + http://opencircuitdesign.com/qflow/ # DIRECTORY STRUCTURE From 8e91faaccbca7dcba95fb3731e309f3518f4f9c7 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Tue, 6 Feb 2018 10:56:26 -0800 Subject: [PATCH 41/95] Remove version from OpenRAM. We will go bit git hashes. --- compiler/globals.py | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/compiler/globals.py b/compiler/globals.py index 1c4605aa..84b831f2 100644 --- a/compiler/globals.py +++ b/compiler/globals.py @@ -11,9 +11,6 @@ import sys import re import importlib -# Current version of OpenRAM. -VERSION = "Beta" - USAGE = "Usage: openram.py [options] \nUse -h for help.\n" # Anonymous object that will be the options @@ -59,7 +56,7 @@ def parse_args(): parser = optparse.OptionParser(option_list=option_list, description="Compile and/or characterize an SRAM.", usage=USAGE, - version="OpenRAM v" + VERSION) + version="OpenRAM") (options, args) = parser.parse_args(values=OPTS) # If we don't specify a tech, assume freepdk45. @@ -79,7 +76,7 @@ def print_banner(): return print("|==============================================================================|") - name = "OpenRAM Compiler v"+VERSION + name = "OpenRAM Compiler" print("|=========" + name.center(60) + "=========|") print("|=========" + " ".center(60) + "=========|") print("|=========" + "VLSI Design and Automation Lab".center(60) + "=========|") From 79e3f012a84f7d8fa447a531cc66be6c8618c245 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Tue, 6 Feb 2018 11:14:43 -0800 Subject: [PATCH 42/95] Update Magic support in README. --- README.md | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index f96923cf..4c6d3e5d 100644 --- a/README.md +++ b/README.md @@ -123,15 +123,20 @@ passes, the files are deleted. If it fails, you will see these files: * _calibreDRC.rul_ is the DRC rule file. * dc_runset is the command file for caliber. * temp.gds is the layout -* test1.drc.err is the std err output of the command -* test1.drc.out is the standard output of the command -* test1.drc.db is the DRC results file +* (.mag files if using SCMOS) +* temp.sp is the netlist +* test1.drc.err is the std err output of the DRC command +* test1.drc.out is the standard output of the DRC command +* test1.drc.results is the DRC results file +* test1.lvs.err is the std err output of the LVS command +* test1.lvs.out is the standard output of the LVS command +* test1.lvs.results is the DRC results file If DRC/LVS fails, the first thing is to check if it ran in the .out and .err file. This shows the standard output and error output from running DRC/LVS. If there is a setup problem it will be shown here. -If DRC/LVS runs, but doesn't pass, you then should look at the .db +If DRC/LVS runs, but doesn't pass, you then should look at the .results file. If the DRC fails, it will typically show you the command that was used to run caliber. It is something like this: ``` @@ -139,8 +144,9 @@ to run caliber. It is something like this: /tmp/openram_mrg_28781_temp/test1.drc.err 1> /tmp/openram_mrg_28781_temp/test1.drc.out ``` -To debug, you will need a layout viewer. I prefer to use glade on my -Mac, but you can also use Calibre, Magic, etc. +Or, if you are using Magic+Netgen, there will be a shell script run_drc.sh +and run_lvs.sh. To debug, you will need a layout viewer. I prefer to use glade +on my Mac, but you can also use Calibre, Magic, etc. 1. Calibre @@ -187,9 +193,16 @@ ui().importCds("default", To load the errors, you simply do Verify->Import Caliber Errors select the .db file from calibre. -3. It is possible to use other viewers as well, such as: +3. Magic + + Magic is only supported in SCMOS. You will need to install the MOSIS SCMOS rules + as well from: http://opencircuitdesign.com/magic/ + + When running DRC or extraction, OpenRAM will load the GDS file, save + the .mag files, and export an extracted netlist. + +4. It is possible to use other viewers as well, such as: * LayoutEditor http://www.layouteditor.net/ - * Magic http://opencircuitdesign.com/magic/ # Example to output/input .gds layout files from/to Cadence From 280f12e9d632fec31e3d89c50b3a1ae6bcb34b43 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Tue, 6 Feb 2018 11:22:22 -0800 Subject: [PATCH 43/95] Update Magic support in README. --- README.md | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index 4c6d3e5d..fdf637eb 100644 --- a/README.md +++ b/README.md @@ -120,8 +120,6 @@ This is where simulations and DRC/LVS get run so there is no network traffic. The directory name is unique for each person and run of OpenRAM to not clobber any files and allow simultaneous runs. If it passes, the files are deleted. If it fails, you will see these files: -* _calibreDRC.rul_ is the DRC rule file. -* dc_runset is the command file for caliber. * temp.gds is the layout * (.mag files if using SCMOS) * temp.sp is the netlist @@ -132,20 +130,23 @@ passes, the files are deleted. If it fails, you will see these files: * test1.lvs.out is the standard output of the LVS command * test1.lvs.results is the DRC results file +Depending on your DRC/LVS tools, there will also be: +* _calibreDRC.rul_ is the DRC rule file (Calibre) +* dc_runset is the command file (Calibre) +* extracted.sp (Calibre) +* run_lvs.sh is a Netgen script for LVS (Netgen) +* run_drc.sh is a Magic script for DRC (Magic) +* .spice (Magic) + If DRC/LVS fails, the first thing is to check if it ran in the .out and .err file. This shows the standard output and error output from running DRC/LVS. If there is a setup problem it will be shown here. If DRC/LVS runs, but doesn't pass, you then should look at the .results file. If the DRC fails, it will typically show you the command that was used -to run caliber. It is something like this: -``` - calibre -gui -drc /tmp/openram_mrg_28781_temp/drc_runset -batch 2> - /tmp/openram_mrg_28781_temp/test1.drc.err 1> - /tmp/openram_mrg_28781_temp/test1.drc.out -``` -Or, if you are using Magic+Netgen, there will be a shell script run_drc.sh -and run_lvs.sh. To debug, you will need a layout viewer. I prefer to use glade +to run Calibre or Magic+Netgen. + +To debug, you will need a layout viewer. I prefer to use Glade on my Mac, but you can also use Calibre, Magic, etc. 1. Calibre @@ -190,16 +191,16 @@ ui().importCds("default", between processes, you have to change the importCds command (or you can manually run the command each time you start glade). - To load the errors, you simply do Verify->Import Caliber Errors select - the .db file from calibre. + To load the errors, you simply do Verify->Import Calibre Errors select + the .results file from Calibre. 3. Magic Magic is only supported in SCMOS. You will need to install the MOSIS SCMOS rules - as well from: http://opencircuitdesign.com/magic/ + and Magic from: http://opencircuitdesign.com/ When running DRC or extraction, OpenRAM will load the GDS file, save - the .mag files, and export an extracted netlist. + the .ext/.mag files, and export an extracted netlist (.spice). 4. It is possible to use other viewers as well, such as: * LayoutEditor http://www.layouteditor.net/ From ed194ad47b520362184250ddbdadbb1192050041 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Wed, 7 Feb 2018 10:05:21 -0800 Subject: [PATCH 44/95] Remove spice dir env variable for freepdk. --- technology/setup_scripts/setup_openram_freepdk45.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/technology/setup_scripts/setup_openram_freepdk45.py b/technology/setup_scripts/setup_openram_freepdk45.py index 93631a92..db145d72 100644 --- a/technology/setup_scripts/setup_openram_freepdk45.py +++ b/technology/setup_scripts/setup_openram_freepdk45.py @@ -28,10 +28,11 @@ except: DRCLVS_HOME= PDK_DIR+"/ncsu_basekit/techfile/calibre" os.environ["DRCLVS_HOME"] = DRCLVS_HOME -try: - SPICE_MODEL_DIR = os.path.abspath(os.environ.get("SPICE_MODEL_DIR")) -except: - os.environ["SPICE_MODEL_DIR"] = PDK_DIR+"/ncsu_basekit/models/hspice/tran_models/models_nom" +# try: +# SPICE_MODEL_DIR = os.path.abspath(os.environ.get("SPICE_MODEL_DIR")) +# except: +# Always use the one in the PDK dir for FreePDK45 +os.environ["SPICE_MODEL_DIR"] = PDK_DIR+"/ncsu_basekit/models/hspice/tran_models/models_nom" ########################## #Paths required for OPENRAM to function From 5c4999d4ccc961b5d4f4ee7f853e8ad507ff5303 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Wed, 7 Feb 2018 12:58:47 -0800 Subject: [PATCH 45/95] Move delay-specific stimulus commands to delay.py. Keep stimuli.py generic. --- compiler/characterizer/delay.py | 153 +++++++++++++++++++++------ compiler/characterizer/lib.py | 9 +- compiler/characterizer/stimuli.py | 56 +--------- compiler/characterizer/trim_spice.py | 3 +- 4 files changed, 132 insertions(+), 89 deletions(-) diff --git a/compiler/characterizer/delay.py b/compiler/characterizer/delay.py index 8a7b4bfe..cbf45cd8 100644 --- a/compiler/characterizer/delay.py +++ b/compiler/characterizer/delay.py @@ -82,27 +82,25 @@ class delay(): self.sf.write("* Generation of data and address signals\n") for i in range(self.word_size): if i == self.probe_data: - stimuli.gen_data(stim_file=self.sf, - clk_times=self.cycle_times, - sig_name="data[{0}]".format(i), - period=period, - slew=slew) + self.gen_data(clk_times=self.cycle_times, + sig_name="data[{0}]".format(i), + period=period, + slew=slew) else: stimuli.gen_constant(stim_file=self.sf, sig_name="d[{0}]".format(i), v_val=self.gnd) - stimuli.gen_addr(self.sf, - clk_times=self.cycle_times, + self.gen_addr(clk_times=self.cycle_times, addr=self.probe_address, period=period, slew=slew) # generate control signals self.sf.write("* Generation of control signals\n") - stimuli.gen_csb(self.sf, self.cycle_times, period, slew) - stimuli.gen_web(self.sf, self.cycle_times, period, slew) - stimuli.gen_oeb(self.sf, self.cycle_times, period, slew) + self.gen_csb(self.cycle_times, period, slew) + self.gen_web(self.cycle_times, period, slew) + self.gen_oeb(self.cycle_times, period, slew) self.sf.write("* Generation of global clock signal\n") stimuli.gen_pulse(stim_file=self.sf, @@ -404,54 +402,95 @@ class delay(): and does not need a rising edge.""" self.cycle_comments = [] - # idle cycle, no operation - t_current = period self.cycle_times = [] - # cycle0: W data 1 address 1111 to initialize cell to a value + t_current = 0 + + # idle cycle, no operation + msg = "Idle cycle (no clock)" + self.cycle_comments.append("Cycle{0}\t{1}ns:\t{2}".format(0, + t_current, + msg)) self.cycle_times.append(t_current) - self.cycle_comments.append("Cycle0 {}ns: W data 1 address 11..11 to initialize cell".format(t_current)) t_current += period - # cycle1: W data 0 address 1111 (to ensure a write of value works) + # One period + msg = "W data 1 address 11..11 to initialize cell" self.cycle_times.append(t_current) - self.write0_cycle=1 - self.cycle_comments.append("Cycle1 {}ns: W data 0 address 11..11 (to ensure a write of value works)".format(t_current)) + self.cycle_comments.append("Cycle{0}\t{1}ns:\t{2}".format(len(self.cycle_times)-1, + t_current, + msg)) + t_current += period + + # One period + msg = "W data 0 address 11..11 (to ensure a write of value works)" + self.cycle_times.append(t_current) + self.write0_cycle=len(self.cycle_times)-1 + self.cycle_comments.append("Cycle{0}\t{1}ns:\t{2}".format(len(self.cycle_times)-1, + t_current, + msg)) t_current += period - # cycle2: W data 1 address 0000 (to clear the data bus cap) + # One period + msg = "W data 1 address 00..00 (to clear bus caps)" self.cycle_times.append(t_current) - self.cycle_comments.append("Cycle2 {}ns: W data 1 address 00..00 (to clear bus caps)".format(t_current)) + self.cycle_comments.append("Cycle{0}\t{1}ns:\t{2}".format(len(self.cycle_times)-1, + t_current, + msg)) t_current += period - # cycle3: R data 0 address 1111 to check W0 works + # One period + msg = "R data 0 address 11..11 to check W0 worked" self.cycle_times.append(t_current) - self.read0_cycle=3 - self.cycle_comments.append("Cycle3 {}ns: R data 0 address 11..11 to check W0 worked".format(t_current)) + self.read0_cycle=len(self.cycle_times)-1 + self.cycle_comments.append("Cycle{0}\t{1}ns:\t{2}".format(len(self.cycle_times)-1, + t_current, + msg)) t_current += period - # cycle4: W data 1 address 1111 (to ensure a write of value works) + # One period + msg = "Idle cycle" + self.cycle_comments.append("Cycle{0}\t{1}ns:\t{2}".format(len(self.cycle_times)-1, + t_current, + msg)) self.cycle_times.append(t_current) - self.write1_cycle=4 - self.cycle_comments.append("Cycle4 {}ns: W data 1 address 11..11 (to ensure a write of value worked)".format(t_current)) t_current += period - # cycle5: W data 0 address 0000 (to clear the data bus cap) + # One period + msg = "W data 1 address 11..11 (to ensure a write of value worked)" self.cycle_times.append(t_current) - self.cycle_comments.append("Cycle5 {}ns: W data 0 address 00..00 (to clear bus caps)".format(t_current)) + self.write1_cycle=len(self.cycle_times)-1 + self.cycle_comments.append("Cycle{0}\t{1}ns:\t{2}".format(len(self.cycle_times)-1, + t_current, + msg)) + t_current += period + + # One period + msg = "W data 0 address 00..00 (to clear bus caps)" + self.cycle_times.append(t_current) + self.cycle_comments.append("Cycle{0}\t{1}ns:\t{2}".format(len(self.cycle_times)-1, + t_current, + msg)) t_current += period - # cycle6: R data 1 address 1111 to check W1 works + # One period + msg = "R data 1 address 11..11 to check W1 worked" self.cycle_times.append(t_current) - self.read1_cycle=6 - self.cycle_comments.append("Cycle6 {}ns: R data 1 address 11..11 to check W1 worked".format(t_current)) + self.read1_cycle=len(self.cycle_times)-1 + self.cycle_comments.append("Cycle{0}\t{1}ns:\t{2}".format(len(self.cycle_times)-1, + t_current, + msg)) t_current += period - # cycle7: wait a clock period to end the simulation + # One period + msg = "Idle cycle" + self.cycle_comments.append("Cycle{0}\t{1}ns:\t{2}".format(len(self.cycle_times)-1, + t_current, + msg)) self.cycle_times.append(t_current) - self.cycle_comments.append("Cycle7 {}ns: Idle period to end simulation".format(t_current)) t_current += period + def analytical_model(self,sram, slews, loads): """ Just return the analytical model results for the SRAM. """ @@ -480,3 +519,53 @@ class delay(): } return data + def gen_data(self, clk_times, sig_name, period, slew): + """Generates the PWL data inputs for a simulation timing test.""" + # values for NOP, W1, W0, W1, R0, NOP, W1, W0, R1, NOP + # we are asserting the opposite value on the other side of the tx gate during + # the read to be "worst case". Otherwise, it can actually assist the read. + values = [0, 1, 0, 1, 1, 1, 1, 0, 0, 0 ] + stimuli.gen_pwl(self.sf, sig_name, clk_times, values, period, slew, 0.05) + + def gen_addr(self, clk_times, addr, period, slew): + """Generates the address inputs for a simulation timing test. + One cycle is different to clear the bus + """ + + zero_values = [0, 0, 0, 1, 0, 0, 0, 1, 0, 0 ] + ones_values = [1, 1, 1, 0, 1, 0, 1, 0, 1, 1 ] + + for i in range(len(addr)): + sig_name = "A[{0}]".format(i) + if addr[i]=="1": + stimuli.gen_pwl(self.sf, sig_name, clk_times, ones_values, period, slew, 0.05) + else: + stimuli.gen_pwl(self.sf, sig_name, clk_times, zero_values, period, slew, 0.05) + + + def gen_csb(self, clk_times, period, slew): + """ Generates the PWL CSb signal""" + # values for NOP, W1, W0, W1, R0, NOP, W1, W0, R1, NOP + # Keep CSb asserted in NOP for measuring >1 period + values = [1, 0, 0, 0, 0, 0, 0, 0, 0, 0] + stimuli.gen_pwl(self.sf, "csb", clk_times, values, period, slew, 0.05) + + def gen_web(self, clk_times, period, slew): + """ Generates the PWL WEb signal""" + # values for NOP, W1, W0, W1, R0, NOP, W1, W0, R1, NOP + # Keep WEb deasserted in NOP for measuring >1 period + values = [1, 0, 0, 0, 1, 1, 0, 0, 1, 1] + stimuli.gen_pwl(self.sf, "web", clk_times, values, period, slew, 0.05) + + # Keep acc_en deasserted in NOP for measuring >1 period + values = [1, 0, 0, 0, 1, 1, 0, 0, 1, 1] + stimuli.gen_pwl(self.sf, "acc_en", clk_times, values, period, slew, 0) + values = [0, 1, 1, 1, 0, 0, 1, 1, 0, 0] + stimuli.gen_pwl(self.sf, "acc_en_inv", clk_times, values, period, slew, 0) + + def gen_oeb(self, clk_times, period, slew): + """ Generates the PWL WEb signal""" + # values for NOP, W1, W0, W1, R0, W1, W0, R1, NOP + # Keep OEb asserted in NOP for measuring >1 period + values = [1, 1, 1, 1, 0, 0, 1, 1, 0, 0] + stimuli.gen_pwl(self.sf, "oeb", clk_times, values, period, slew, 0.05) diff --git a/compiler/characterizer/lib.py b/compiler/characterizer/lib.py index b2a87479..fb93a105 100644 --- a/compiler/characterizer/lib.py +++ b/compiler/characterizer/lib.py @@ -1,8 +1,5 @@ -import os -import sys -import re +import os,sys,re,shutil import debug -import tech import math import setup_hold import delay @@ -34,7 +31,9 @@ class lib: self.sram.word_size) else: # Else, use the non-reduced netlist file for simulation - self.sim_sp_file = self.sp_file + self.sim_sp_file = "{}sram.sp".format(OPTS.openram_temp) + # Make a copy in temp for debugging + shutil.copy(self.sp_file, self.sim_sp_file) # These are the parameters to determine the table sizes #self.load_scales = np.array([0.1, 0.25, 0.5, 1, 2, 4, 8]) diff --git a/compiler/characterizer/stimuli.py b/compiler/characterizer/stimuli.py index 7986f11e..9bba2796 100644 --- a/compiler/characterizer/stimuli.py +++ b/compiler/characterizer/stimuli.py @@ -134,71 +134,25 @@ def gen_pulse(stim_file, sig_name, v1=gnd_voltage, v2=vdd_voltage, offset=0, per def gen_pwl(stim_file, sig_name, clk_times, data_values, period, slew, setup): # the initial value is not a clock time - debug.check(len(clk_times)+1==len(data_values),"Clock and data value lengths don't match.") + debug.check(len(clk_times)==len(data_values),"Clock and data value lengths don't match.") + # shift signal times earlier for setup time times = np.array(clk_times) - setup*period values = np.array(data_values) * vdd_voltage half_slew = 0.5 * slew stim_file.write("V{0} {0} 0 PWL (0n {1}v ".format(sig_name, values[0])) - for i in range(len(times)): + for i in range(1,len(times)-1): stim_file.write("{0}n {1}v {2}n {3}v ".format(times[i]-half_slew, - values[i], + values[i-1], times[i]+half_slew, - values[i+1])) + values[i])) stim_file.write(")\n") -def gen_data(stim_file, clk_times, sig_name, period, slew): - """Generates the PWL data inputs for a simulation timing test.""" - # values for NOP, W1, W0, W1, R0, W1, W0, R1, NOP - # we are asserting the opposite value on the other side of the tx gate during - # the read to be "worst case". Otherwise, it can actually assist the read. - values = [0, 1, 0, 1, 1, 1, 0, 0, 0 ] - gen_pwl(stim_file, sig_name, clk_times, values, period, slew, 0.05) - - -def gen_addr(stim_file, clk_times, addr, period, slew): - """Generates the address inputs for a simulation timing test. - One cycle is different to clear the bus - """ - - zero_values = [0, 0, 0, 1, 0, 0, 1, 0, 0 ] - ones_values = [1, 1, 1, 0, 1, 1, 0, 1, 1 ] - - for i in range(len(addr)): - sig_name = "A[{0}]".format(i) - if addr[i]=="1": - gen_pwl(stim_file, sig_name, clk_times, ones_values, period, slew, 0.05) - else: - gen_pwl(stim_file, sig_name, clk_times, zero_values, period, slew, 0.05) def gen_constant(stim_file, sig_name, v_val): """Generates a constant signal with reference voltage and the voltage value""" stim_file.write("V{0} {0} 0 DC {1}\n".format(sig_name, v_val)) -def gen_csb(stim_file, clk_times, period, slew): - """ Generates the PWL CSb signal""" - # values for NOP, W1, W0, W1, R0, W1, W0, R1, NOP - values = [1, 0, 0, 0, 0, 0, 0, 0, 1] - gen_pwl(stim_file, "csb", clk_times, values, period, slew, 0.05) - -def gen_web(stim_file, clk_times, period, slew): - """ Generates the PWL WEb signal""" - # values for NOP, W1, W0, W1, R0, W1, W0, R1, NOP - values = [1, 0, 0, 0, 1, 0, 0, 1, 1] - gen_pwl(stim_file, "web", clk_times, values, period, slew, 0.05) - - values = [1, 0, 0, 0, 1, 0, 0, 1, 1] - gen_pwl(stim_file, "acc_en", clk_times, values, period, slew, 0) - values = [0, 1, 1, 1, 0, 1, 1, 0, 0] - gen_pwl(stim_file, "acc_en_inv", clk_times, values, period, slew, 0) - -def gen_oeb(stim_file, clk_times, period, slew): - """ Generates the PWL WEb signal""" - # values for NOP, W1, W0, W1, R0, W1, W0, R1, NOP - values = [1, 1, 1, 1, 0, 1, 1, 0, 1] - gen_pwl(stim_file, "oeb", clk_times, values, period, slew, 0.05) - - def get_inverse_voltage(value): diff --git a/compiler/characterizer/trim_spice.py b/compiler/characterizer/trim_spice.py index f53ac184..ead653b9 100644 --- a/compiler/characterizer/trim_spice.py +++ b/compiler/characterizer/trim_spice.py @@ -75,7 +75,8 @@ class trim_spice(): self.remove_insts("bitcell_array",[wl_name,bl_name]) # 2. Keep sense amps basd on BL - self.remove_insts("sense_amp_array",[bl_name]) + # FIXME: The bit lines are not indexed the same in sense_amp_array + #self.remove_insts("sense_amp_array",[bl_name]) # 3. Keep column muxes basd on BL self.remove_insts("column_mux_array",[bl_name]) From 3820861ce8433e83a8b2882278c30d90ea664e10 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Wed, 7 Feb 2018 13:10:45 -0800 Subject: [PATCH 46/95] Increase control delay line from 4 inverters to 3 FO4 delays. Need to dynamically adjust this. --- compiler/replica_bitline.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/compiler/replica_bitline.py b/compiler/replica_bitline.py index fb8ede4c..d90277b6 100644 --- a/compiler/replica_bitline.py +++ b/compiler/replica_bitline.py @@ -81,7 +81,7 @@ class replica_bitline(design.design): self.rbl = bitcell_array(name="bitline_load", cols=1, rows=self.rows) self.add_mod(self.rbl) - self.delay_chain = self.mod_delay_chain([1, 1, 1]) + self.delay_chain = self.mod_delay_chain([4, 4, 4]) self.add_mod(self.delay_chain) self.inv = pinv() From 3e4ef36efeb0bcdd70c4835fb7fd142e56c7ce43 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Wed, 7 Feb 2018 14:04:18 -0800 Subject: [PATCH 47/95] Clean up Python comments and improve comments in stimulus file. --- compiler/characterizer/delay.py | 118 +++++++++++++++++++++--------- compiler/characterizer/stimuli.py | 59 ++++++++------- 2 files changed, 115 insertions(+), 62 deletions(-) diff --git a/compiler/characterizer/delay.py b/compiler/characterizer/delay.py index cbf45cd8..2d8f0e57 100644 --- a/compiler/characterizer/delay.py +++ b/compiler/characterizer/delay.py @@ -10,7 +10,7 @@ from globals import OPTS class delay(): """ - Functions to measure the delay of the SRAM at a given address and + Functions to measure the delay of an SRAM at a given address and data bit. """ @@ -52,7 +52,7 @@ class delay(): # creates and opens stimulus file for writing temp_stim = "{0}/stim.sp".format(OPTS.openram_temp) self.sf = open(temp_stim, "w") - self.sf.write("* Stimulus for period of {0}n load={1}fF slew={2}ns\n\n".format(period,load,slew)) + self.sf.write("\n* Stimulus for period of {0}n load={1}fF slew={2}ns\n\n".format(period,load,slew)) # include files in stimulus file model_list = tech.spice["fet_models"] + [self.sram_sp_file] @@ -60,26 +60,26 @@ class delay(): # add vdd/gnd statements - self.sf.write("* Global Power Supplies\n") + self.sf.write("\n* Global Power Supplies\n") stimuli.write_supply(self.sf) # instantiate the sram - self.sf.write("* Instantiation of the SRAM\n") + self.sf.write("\n* Instantiation of the SRAM\n") stimuli.inst_sram(stim_file=self.sf, abits=self.addr_size, dbits=self.word_size, sram_name=self.name) - self.sf.write("* SRAM output loads\n") + self.sf.write("\n* SRAM output loads\n") for i in range(self.word_size): self.sf.write("CD{0} d[{0}] 0 {1}f\n".format(i,load)) # add access transistors for data-bus - self.sf.write("* Transmission Gates for data-bus and control signals\n") + self.sf.write("\n* Transmission Gates for data-bus and control signals\n") stimuli.inst_accesstx(stim_file=self.sf, dbits=self.word_size) # generate data and addr signals - self.sf.write("* Generation of data and address signals\n") + self.sf.write("\n* Generation of data and address signals\n") for i in range(self.word_size): if i == self.probe_data: self.gen_data(clk_times=self.cycle_times, @@ -97,20 +97,20 @@ class delay(): slew=slew) # generate control signals - self.sf.write("* Generation of control signals\n") + self.sf.write("\n* Generation of control signals\n") self.gen_csb(self.cycle_times, period, slew) self.gen_web(self.cycle_times, period, slew) self.gen_oeb(self.cycle_times, period, slew) - self.sf.write("* Generation of global clock signal\n") + self.sf.write("\n* Generation of global clock signal\n") stimuli.gen_pulse(stim_file=self.sf, sig_name="CLK", v1=self.gnd, v2=self.vdd, offset=period, period=period, - t_rise = slew, - t_fall = slew) + t_rise=slew, + t_fall=slew) self.write_measures(period) @@ -120,17 +120,23 @@ class delay(): self.sf.close() def write_measures(self,period): - # meas statement for delay and power measurements - self.sf.write("* Measure statements for delay and power\n") + """ + Write the measure statements to quantify the delay and power results. + """ + self.sf.write("\n* Measure statements for delay and power\n") + + # Output some comments to aid where cycles start and + # what is happening for comment in self.cycle_comments: self.sf.write("* {}\n".format(comment)) + # Trigger on the clk of the appropriate cycle trig_name = "clk" targ_name = "{0}".format("d[{0}]".format(self.probe_data)) trig_val = targ_val = 0.5 * self.vdd - # add measure statments for delay0 - # delay the target to measure after the negative edge + + # Delay the target to measure after the negative edge stimuli.gen_meas_delay(stim_file=self.sf, meas_name="DELAY0", trig_name=trig_name, @@ -205,11 +211,13 @@ class delay(): t_final=t_final) def find_feasible_period(self, load, slew): - """Uses an initial period and finds a feasible period before we + """ + Uses an initial period and finds a feasible period before we run the binary search algorithm to find min period. We check if the given clock period is valid and if it's not, we continue to double the period until we find a valid period to use as a - starting point. """ + starting point. + """ feasible_period = tech.spice["feasible_period"] time_out = 8 @@ -225,13 +233,20 @@ class delay(): feasible_period = 2 * feasible_period continue - debug.info(1, "Found feasible_period: {0}ns feasible_delay1/0 {1}ns/{2}ns slew {3}ns/{4}ns".format(feasible_period,feasible_delay1,feasible_delay0,feasible_slew1,feasible_slew0)) + debug.info(1, "Found feasible_period: {0}ns " + + "feasible_delay1/0 {1}ns/{2}ns slew {3}ns/{4}ns".format(feasible_period, + feasible_delay1, + feasible_delay0, + feasible_slew1, + feasible_slew0)) return (feasible_period, feasible_delay1, feasible_delay0) def run_simulation(self, period, load, slew): - """ This tries to simulate a period and checks if the result - works. If so, it returns True and the delays and slews.""" + """ + This tries to simulate a period and checks if the result + works. If so, it returns True and the delays and slews. + """ # Checking from not data_value to data_value self.write_stimulus(period, load, slew) @@ -243,17 +258,40 @@ class delay(): # if it failed or the read was longer than a period if type(delay0)!=float or type(delay1)!=float or type(slew1)!=float or type(slew0)!=float: - debug.info(2,"Failed simulation: period {0} load {1} slew {2}, delay0={3}n delay1={4}ns slew0={5}n slew1={6}n".format(period,load,slew,delay0,delay1,slew0,slew1)) + debug.info(2,"Failed simulation: period {0} load {1} slew {2}, " + + "delay0={3}n delay1={4}ns slew0={5}n slew1={6}n".format(period, + load, + slew, + delay0, + delay1, + slew0, + slew1)) return (False,0,0,0,0) + # Scale delays to ns (they previously could have not been floats) delay0 *= 1e9 delay1 *= 1e9 slew0 *= 1e9 slew1 *= 1e9 if delay0>period or delay1>period or slew0>period or slew1>period: - debug.info(2,"UNsuccessful simulation: period {0} load {1} slew {2}, delay0={3}n delay1={4}ns slew0={5}n slew1={6}n".format(period,load,slew,delay0,delay1,slew0,slew1)) + debug.info(2,"UNsuccessful simulation: period {0} load {1} slew {2}, " + + "delay0={3}n delay1={4}ns slew0={5}n slew1={6}n".format(period, + load, + slew, + delay0, + delay1, + slew0, + slew1)) return (False,0,0,0,0) else: - debug.info(2,"Successful simulation: period {0} load {1} slew {2}, delay0={3}n delay1={4}ns slew0={5}n slew1={6}n".format(period,load,slew,delay0,delay1,slew0,slew1)) + debug.info(2,"Successful simulation: period {0} load {1} slew {2}, " + + "delay0={3}n delay1={4}ns slew0={5}n slew1={6}n".format(period, + load, + slew, + delay0, + delay1, + slew0, + slew1)) + # For debug, you sometimes want to inspect each simulation. #key=raw_input("press return to continue") # The delay is from the negative edge for our SRAM @@ -262,8 +300,10 @@ class delay(): def find_min_period(self,feasible_period, load, slew, feasible_delay1, feasible_delay0): - """Searches for the smallest period with output delays being within 5% of - long period. """ + """ + Searches for the smallest period with output delays being within 5% of + long period. + """ previous_period = ub_period = feasible_period lb_period = 0.0 @@ -291,8 +331,10 @@ class delay(): def try_period(self, period, load, slew, feasible_delay1, feasible_delay0): - """ This tries to simulate a period and checks if the result - works. If it does and the delay is within 5% still, it returns True.""" + """ + This tries to simulate a period and checks if the result + works. If it does and the delay is within 5% still, it returns True. + """ # Checking from not data_value to data_value self.write_stimulus(period,load,slew) @@ -303,14 +345,16 @@ class delay(): slew1 = ch.convert_to_float(ch.parse_output("timing", "slew1")) # if it failed or the read was longer than a period if type(delay0)!=float or type(delay1)!=float or type(slew1)!=float or type(slew0)!=float: - debug.info(2,"Invalid measures: Period {0}, delay0={1}ns, delay1={2}ns slew0={3}ns slew1={4}ns".format(period, delay0, delay1, slew0, slew1)) + debug.info(2,"Invalid measures: Period {0}, " + + "delay0={1}ns, delay1={2}ns slew0={3}ns slew1={4}ns".format(period, delay0, delay1, slew0, slew1)) return False delay0 *= 1e9 delay1 *= 1e9 slew0 *= 1e9 slew1 *= 1e9 if delay0>period or delay1>period or slew0>period or slew1>period: - debug.info(2,"Too long delay/slew: Period {0}, delay0={1}ns, delay1={2}ns slew0={3}ns slew1={4}ns".format(period, delay0, delay1, slew0, slew1)) + debug.info(2,"Too long delay/slew: Period {0}, " + + "delay0={1}ns, delay1={2}ns slew0={3}ns slew1={4}ns".format(period, delay0, delay1, slew0, slew1)) return False else: if not ch.relative_compare(delay1,feasible_delay1,error_tolerance=0.05): @@ -323,7 +367,8 @@ class delay(): #key=raw_input("press return to continue") - debug.info(2,"Successful period {0}, delay0={1}ns, delay1={2}ns slew0={3}ns slew1={4}ns".format(period, delay0, delay1, slew0, slew1)) + debug.info(2,"Successful period {0}, " + + "delay0={1}ns, delay1={2}ns slew0={3}ns slew1={4}ns".format(period, delay0, delay1, slew0, slew1)) return True def set_probe(self,probe_address, probe_data): @@ -520,7 +565,7 @@ class delay(): return data def gen_data(self, clk_times, sig_name, period, slew): - """Generates the PWL data inputs for a simulation timing test.""" + """ Generates the PWL data inputs for a simulation timing test. """ # values for NOP, W1, W0, W1, R0, NOP, W1, W0, R1, NOP # we are asserting the opposite value on the other side of the tx gate during # the read to be "worst case". Otherwise, it can actually assist the read. @@ -528,8 +573,9 @@ class delay(): stimuli.gen_pwl(self.sf, sig_name, clk_times, values, period, slew, 0.05) def gen_addr(self, clk_times, addr, period, slew): - """Generates the address inputs for a simulation timing test. - One cycle is different to clear the bus + """ + Generates the address inputs for a simulation timing test. + This alternates between all 1's and all 0's for the address. """ zero_values = [0, 0, 0, 1, 0, 0, 0, 1, 0, 0 ] @@ -544,14 +590,14 @@ class delay(): def gen_csb(self, clk_times, period, slew): - """ Generates the PWL CSb signal""" + """ Generates the PWL CSb signal """ # values for NOP, W1, W0, W1, R0, NOP, W1, W0, R1, NOP # Keep CSb asserted in NOP for measuring >1 period values = [1, 0, 0, 0, 0, 0, 0, 0, 0, 0] stimuli.gen_pwl(self.sf, "csb", clk_times, values, period, slew, 0.05) def gen_web(self, clk_times, period, slew): - """ Generates the PWL WEb signal""" + """ Generates the PWL WEb signal """ # values for NOP, W1, W0, W1, R0, NOP, W1, W0, R1, NOP # Keep WEb deasserted in NOP for measuring >1 period values = [1, 0, 0, 0, 1, 1, 0, 0, 1, 1] @@ -564,7 +610,7 @@ class delay(): stimuli.gen_pwl(self.sf, "acc_en_inv", clk_times, values, period, slew, 0) def gen_oeb(self, clk_times, period, slew): - """ Generates the PWL WEb signal""" + """ Generates the PWL WEb signal """ # values for NOP, W1, W0, W1, R0, W1, W0, R1, NOP # Keep OEb asserted in NOP for measuring >1 period values = [1, 1, 1, 1, 0, 0, 1, 1, 0, 0] diff --git a/compiler/characterizer/stimuli.py b/compiler/characterizer/stimuli.py index 9bba2796..376b0d50 100644 --- a/compiler/characterizer/stimuli.py +++ b/compiler/characterizer/stimuli.py @@ -1,7 +1,7 @@ """ -This file generates the test structure and stimulus for an sram -simulation. There are various functions that can be be used to -generate stimulus for other simulations as well. +This file generates simple spice cards for simulation. There are +various functions that can be be used to generate stimulus for other +simulations as well. """ import tech @@ -22,7 +22,7 @@ tx_width = tech.spice["minwidth_tx"] tx_length = tech.spice["channel"] def inst_sram(stim_file, abits, dbits, sram_name): - """function to instatiate the sram subckt""" + """ Function to instatiate an SRAM subckt. """ stim_file.write("Xsram ") for i in range(dbits): stim_file.write("D[{0}] ".format(i)) @@ -32,11 +32,11 @@ def inst_sram(stim_file, abits, dbits, sram_name): stim_file.write("{0} ".format(i)) stim_file.write("{0} ".format(tech.spice["clk"])) stim_file.write("{0} {1} ".format(vdd_name, gnd_name)) - stim_file.write("{0}\n\n".format(sram_name)) + stim_file.write("{0}\n".format(sram_name)) def inst_model(stim_file, pins, model_name): - """function to instantiate a model""" + """ Function to instantiate a generic model with a set of pins """ stim_file.write("X{0} ".format(model_name)) for pin in pins: stim_file.write("{0} ".format(pin)) @@ -44,7 +44,7 @@ def inst_model(stim_file, pins, model_name): def create_inverter(stim_file, size=1, beta=2.5): - """Generates inverter for the top level signals (only for sim purposes)""" + """ Generates inverter for the top level signals (only for sim purposes) """ stim_file.write(".SUBCKT test_inv in out {0} {1}\n".format(vdd_name, gnd_name)) stim_file.write("mpinv out in {0} {0} {1} w={2}u l={3}u\n".format(vdd_name, pmos_name, @@ -58,9 +58,10 @@ def create_inverter(stim_file, size=1, beta=2.5): def create_buffer(stim_file, buffer_name, size=[1,3], beta=2.5): - """Generates buffer for top level signals (only for sim - purposes). Size is pair for PMOS, NMOS width multiple. It includes - a beta of 3.""" + """ + Generates buffer for top level signals (only for sim + purposes). Size is pair for PMOS, NMOS width multiple. + """ stim_file.write(".SUBCKT test_{2} in out {0} {1}\n".format(vdd_name, gnd_name, @@ -85,7 +86,7 @@ def create_buffer(stim_file, buffer_name, size=[1,3], beta=2.5): def inst_buffer(stim_file, buffer_name, signal_list): - """Adds buffers to each top level signal that is in signal_list (only for sim purposes)""" + """ Adds buffers to each top level signal that is in signal_list (only for sim purposes) """ for signal in signal_list: stim_file.write("X{0}_buffer {0} {0}_buf {1} {2} test_{3}\n".format(signal, "test"+vdd_name, @@ -94,7 +95,7 @@ def inst_buffer(stim_file, buffer_name, signal_list): def inst_inverter(stim_file, signal_list): - """Adds inv for each signal that needs its inverted version (only for sim purposes)""" + """ Adds inv for each signal that needs its inverted version (only for sim purposes) """ for signal in signal_list: stim_file.write("X{0}_inv {0} {0}_inv {1} {2} test_inv\n".format(signal, "test"+vdd_name, @@ -102,7 +103,7 @@ def inst_inverter(stim_file, signal_list): def inst_accesstx(stim_file, dbits): - """Adds transmission gate for inputs to data-bus (only for sim purposes)""" + """ Adds transmission gate for inputs to data-bus (only for sim purposes) """ stim_file.write("* Tx Pin-list: Drain Gate Source Body\n") for i in range(dbits): pmos_access_string="mp{0} DATA[{0}] acc_en D[{0}] {1} {2} w={3}u l={4}u\n" @@ -119,8 +120,11 @@ def inst_accesstx(stim_file, dbits): tx_length)) def gen_pulse(stim_file, sig_name, v1=gnd_voltage, v2=vdd_voltage, offset=0, period=1, t_rise=0, t_fall=0): - """Generates a periodic signal with 50% duty cycle and slew rates. Period is measured - from 50% to 50%.""" + """ + Generates a periodic signal with 50% duty cycle and slew rates. Period is measured + from 50% to 50%. + """ + stim_file.write("* PULSE: period={0}\n".format(period)) pulse_string="V{0} {0} 0 PULSE ({1} {2} {3}n {4}n {5}n {6}n {7}n)\n" stim_file.write(pulse_string.format(sig_name, v1, @@ -133,6 +137,11 @@ def gen_pulse(stim_file, sig_name, v1=gnd_voltage, v2=vdd_voltage, offset=0, per def gen_pwl(stim_file, sig_name, clk_times, data_values, period, slew, setup): + """ + Generate a PWL stimulus given a signal name and data values at each period. + Automatically creates slews and ensures each data occurs a setup before the clock + edge. + """ # the initial value is not a clock time debug.check(len(clk_times)==len(data_values),"Clock and data value lengths don't match.") @@ -140,6 +149,7 @@ def gen_pwl(stim_file, sig_name, clk_times, data_values, period, slew, setup): times = np.array(clk_times) - setup*period values = np.array(data_values) * vdd_voltage half_slew = 0.5 * slew + stim_file.write("* (time, data): {}\n".format(zip(clk_times, data_values))) stim_file.write("V{0} {0} 0 PWL (0n {1}v ".format(sig_name, values[0])) for i in range(1,len(times)-1): stim_file.write("{0}n {1}v {2}n {3}v ".format(times[i]-half_slew, @@ -148,13 +158,10 @@ def gen_pwl(stim_file, sig_name, clk_times, data_values, period, slew, setup): values[i])) stim_file.write(")\n") - def gen_constant(stim_file, sig_name, v_val): - """Generates a constant signal with reference voltage and the voltage value""" + """ Generates a constant signal with reference voltage and the voltage value """ stim_file.write("V{0} {0} 0 DC {1}\n".format(sig_name, v_val)) - - def get_inverse_voltage(value): if value > 0.5*vdd_voltage: return gnd_voltage @@ -173,7 +180,7 @@ def get_inverse_value(value): def gen_meas_delay(stim_file, meas_name, trig_name, targ_name, trig_val, targ_val, trig_dir, targ_dir, trig_td, targ_td): - """Creates the .meas statement for the measurement of delay""" + """ Creates the .meas statement for the measurement of delay """ measure_string=".meas tran {0} TRIG v({1}) VAL={2} {3}=1 TD={4}n TARG v({5}) VAL={6} {7}=1 TD={8}n\n\n" stim_file.write(measure_string.format(meas_name, trig_name, @@ -186,7 +193,7 @@ def gen_meas_delay(stim_file, meas_name, trig_name, targ_name, trig_val, targ_va targ_td)) def gen_meas_power(stim_file, meas_name, t_initial, t_final): - """Creates the .meas statement for the measurement of avg power""" + """ Creates the .meas statement for the measurement of avg power """ # power mea cmd is different in different spice: if OPTS.spice_name == "hspice": power_exp = "power" @@ -196,9 +203,9 @@ def gen_meas_power(stim_file, meas_name, t_initial, t_final): power_exp, t_initial, t_final)) - stim_file.write("\n") def write_control(stim_file, end_time): + """ Write the control cards to run and end the simulation """ # UIC is needed for ngspice to converge stim_file.write(".TRAN 5p {0}n UIC\n".format(end_time)) if OPTS.spice_name == "ngspice": @@ -227,22 +234,22 @@ def write_include(stim_file, models): """Writes include statements, inputs are lists of model files""" for item in list(models): if os.path.isfile(item): - stim_file.write(".include \"{0}\"\n\n".format(item)) + stim_file.write(".include \"{0}\"\n".format(item)) else: debug.error("Could not find spice model: {0}\nSet SPICE_MODEL_DIR to over-ride path.\n".format(item)) def write_supply(stim_file): - """Writes supply voltage statements""" + """ Writes supply voltage statements """ stim_file.write("V{0} {0} 0.0 {1}\n".format(vdd_name, vdd_voltage)) stim_file.write("V{0} {0} 0.0 {1}\n".format(gnd_name, gnd_voltage)) # This is for the test power supply stim_file.write("V{0} {0} 0.0 {1}\n".format("test"+vdd_name, vdd_voltage)) - stim_file.write("V{0} {0} 0.0 {1}\n\n".format("test"+gnd_name, gnd_voltage)) + stim_file.write("V{0} {0} 0.0 {1}\n".format("test"+gnd_name, gnd_voltage)) def run_sim(): - """Run hspice in batch mode and output rawfile to parse.""" + """ Run hspice in batch mode and output rawfile to parse. """ temp_stim = "{0}stim.sp".format(OPTS.openram_temp) import datetime start_time = datetime.datetime.now() From a2bf66b063484c63f2b33baf1876a49f1ecfb9e1 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Wed, 7 Feb 2018 14:15:13 -0800 Subject: [PATCH 48/95] Add metal1 gnd line to prevent DRC errors when sizing delay chain. --- compiler/replica_bitline.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/compiler/replica_bitline.py b/compiler/replica_bitline.py index d90277b6..48f004a5 100644 --- a/compiler/replica_bitline.py +++ b/compiler/replica_bitline.py @@ -239,12 +239,22 @@ class replica_bitline(design.design): def route_gnd(self): """ Route all signals connected to gnd """ - # Add a rail in M1 from bottom to two along delay chain - gnd_start = self.rbl_inv_inst.get_pin("gnd").bc() + gnd_start = self.rbl_inv_inst.get_pin("gnd").bc() gnd_end = vector(gnd_start.x, self.rbl_inst.uy()+2*self.m2_pitch) + + # Add a rail in M1 from bottom of delay chain to two above the RBL + # This prevents DRC errors with vias for the WL + dc_top = self.dc_inst.ur() + self.add_segment_center(layer="metal1", + start=vector(gnd_start.x, dc_top.y), + end=gnd_end) + + # Add a rail in M2 from RBL inverter to two above the RBL self.add_segment_center(layer="metal2", start=gnd_start, end=gnd_end) + + # Add pin from bottom to RBL inverter self.add_layout_pin_center_segment(text="gnd", layer="metal1", start=gnd_start.scale(1,0), From 5dacafc698f994ec989e84b57cd3e87b5c58652f Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Wed, 7 Feb 2018 14:20:15 -0800 Subject: [PATCH 49/95] Disable gear integration in ngspice. Not sure it is necessary anymore and it is quite slow. --- compiler/characterizer/stimuli.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/compiler/characterizer/stimuli.py b/compiler/characterizer/stimuli.py index 376b0d50..f716e592 100644 --- a/compiler/characterizer/stimuli.py +++ b/compiler/characterizer/stimuli.py @@ -208,12 +208,12 @@ def write_control(stim_file, end_time): """ Write the control cards to run and end the simulation """ # UIC is needed for ngspice to converge stim_file.write(".TRAN 5p {0}n UIC\n".format(end_time)) - if OPTS.spice_name == "ngspice": - # ngspice sometimes has convergence problems if not using gear method - # which is more accurate, but slower than the default trapezoid method - stim_file.write(".OPTIONS POST=1 RUNLVL=4 PROBE method=gear\n") - else: - stim_file.write(".OPTIONS POST=1 RUNLVL=4 PROBE\n") + # if OPTS.spice_name == "ngspice": + # # ngspice sometimes has convergence problems if not using gear method + # # which is more accurate, but slower than the default trapezoid method + # stim_file.write(".OPTIONS POST=1 RUNLVL=4 PROBE method=gear\n") + # else: + stim_file.write(".OPTIONS POST=1 RUNLVL=4 PROBE\n") # create plots for all signals stim_file.write("* probe is used for hspice/xa, while plot is used in ngspice\n") From 8e91552701f5d3ba5402de1a4f056076e1f3f2f7 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Wed, 7 Feb 2018 14:33:29 -0800 Subject: [PATCH 50/95] Remvoe newline. --- compiler/characterizer/delay.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/compiler/characterizer/delay.py b/compiler/characterizer/delay.py index 2d8f0e57..013ef55c 100644 --- a/compiler/characterizer/delay.py +++ b/compiler/characterizer/delay.py @@ -52,7 +52,7 @@ class delay(): # creates and opens stimulus file for writing temp_stim = "{0}/stim.sp".format(OPTS.openram_temp) self.sf = open(temp_stim, "w") - self.sf.write("\n* Stimulus for period of {0}n load={1}fF slew={2}ns\n\n".format(period,load,slew)) + self.sf.write("* Stimulus for period of {0}n load={1}fF slew={2}ns\n\n".format(period,load,slew)) # include files in stimulus file model_list = tech.spice["fet_models"] + [self.sram_sp_file] From e93517529ce4c2fc67f901fee5594a71e49f6d54 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Wed, 7 Feb 2018 14:54:59 -0800 Subject: [PATCH 51/95] Make delay chain length and bitcell load parameters to enable tuning. Rename the parameters to be more descriptive. --- compiler/control_logic.py | 5 ++++- compiler/replica_bitline.py | 22 ++++++++++++---------- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/compiler/control_logic.py b/compiler/control_logic.py index 7a1e3851..1ffe5aa5 100644 --- a/compiler/control_logic.py +++ b/compiler/control_logic.py @@ -68,7 +68,10 @@ class control_logic(design.design): c = reload(__import__(OPTS.replica_bitline)) replica_bitline = getattr(c, OPTS.replica_bitline) - self.replica_bitline = replica_bitline(rows=int(math.ceil(self.num_rows / 10.0))) + # FIXME: These should be tuned according to the size! + FO4_stages = 4 + bitcell_loads = int(math.ceil(self.num_rows / 10.0)) + self.replica_bitline = replica_bitline(FO4_stages, bitcell_loads) self.add_mod(self.replica_bitline) diff --git a/compiler/replica_bitline.py b/compiler/replica_bitline.py index 48f004a5..6be7dc77 100644 --- a/compiler/replica_bitline.py +++ b/compiler/replica_bitline.py @@ -10,12 +10,12 @@ from globals import OPTS class replica_bitline(design.design): """ - Generate a module that simulate the delay of control logic - and bit line charging. - Used for memory timing control + Generate a module that simulates the delay of control logic + and bit line charging. Stages is the depth of the FO4 delay + line and rows is the height of the replica bit loads. """ - def __init__(self, rows, name="replica_bitline"): + def __init__(self, FO4_stages, bitcell_loads, name="replica_bitline"): design.design.__init__(self, name) g = reload(__import__(OPTS.delay_chain)) @@ -29,7 +29,8 @@ class replica_bitline(design.design): for pin in ["en", "out", "vdd", "gnd"]: self.add_pin(pin) - self.rows = rows + self.bitcell_loads = bitcell_loads + self.FO4_stages = FO4_stages self.create_modules() self.calculate_module_offsets() @@ -78,10 +79,11 @@ class replica_bitline(design.design): self.add_mod(self.bitcell) # This is the replica bitline load column that is the height of our array - self.rbl = bitcell_array(name="bitline_load", cols=1, rows=self.rows) + self.rbl = bitcell_array(name="bitline_load", cols=1, rows=self.bitcell_loads) self.add_mod(self.rbl) - - self.delay_chain = self.mod_delay_chain([4, 4, 4]) + + # FIXME: The FO and depth of this should be tuned + self.delay_chain = self.mod_delay_chain([4]*self.FO4_stages) self.add_mod(self.delay_chain) self.inv = pinv() @@ -123,7 +125,7 @@ class replica_bitline(design.design): self.rbl_inst=self.add_inst(name="load", mod=self.rbl, offset=self.rbl_offset) - self.connect_inst(["bl[0]", "br[0]"] + ["gnd"]*self.rows + ["vdd", "gnd"]) + self.connect_inst(["bl[0]", "br[0]"] + ["gnd"]*self.bitcell_loads + ["vdd", "gnd"]) @@ -262,7 +264,7 @@ class replica_bitline(design.design): # Connect the WL pins directly to gnd gnd_pin = self.get_pin("gnd").rc() - for row in range(self.rows): + for row in range(self.bitcell_loads): wl = "wl[{}]".format(row) pin = self.rbl_inst.get_pin(wl) start = vector(gnd_pin.x,pin.cy()) From 1a491f3cd0f81f1b678261e7c35c8089a6c4fc26 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Wed, 7 Feb 2018 15:05:21 -0800 Subject: [PATCH 52/95] Make temp directory unique for test 30. Update LEF files after delay chain size change. --- compiler/tests/30_openram_test.py | 4 +- .../tests/golden/sram_2_16_1_freepdk45.lef | 338 +++++++++++++++++- .../tests/golden/sram_2_16_1_scn3me_subm.lef | 338 +++++++++++++++++- 3 files changed, 642 insertions(+), 38 deletions(-) diff --git a/compiler/tests/30_openram_test.py b/compiler/tests/30_openram_test.py index 30392fa5..69288350 100644 --- a/compiler/tests/30_openram_test.py +++ b/compiler/tests/30_openram_test.py @@ -20,8 +20,8 @@ class openram_test(openram_test): debug.info(1, "Testing top-level openram.py with 2-bit, 16 word SRAM.") out_file = "testsram" - # make a temp directory for output - out_path = "/tmp/testsram" + # make a temp directory for output + out_path = "/tmp/testsram_{0}".format(OPTS.tech_name) # make sure we start without the files existing if os.path.exists(out_path): diff --git a/compiler/tests/golden/sram_2_16_1_freepdk45.lef b/compiler/tests/golden/sram_2_16_1_freepdk45.lef index 51d895b5..b2d656fe 100644 --- a/compiler/tests/golden/sram_2_16_1_freepdk45.lef +++ b/compiler/tests/golden/sram_2_16_1_freepdk45.lef @@ -4165,6 +4165,7 @@ MACRO sram_2_16_1_freepdk45 RECT 750.0 30905.0 685.0 30970.0 ; RECT 32.5 30615.0 -32.5 31175.0 ; RECT 1377.5 30615.0 1312.5 31175.0 ; + RECT 1377.5 39337.5 1312.5 36955.0 ; RECT 1312.5 33907.5 1025.0 33972.5 ; RECT 1312.5 36317.5 1025.0 36382.5 ; RECT 1377.5 31862.5 935.0 31927.5 ; @@ -4209,11 +4210,11 @@ MACRO sram_2_16_1_freepdk45 RECT 2330.0 33497.5 2465.0 33562.5 ; RECT 2330.0 33497.5 2465.0 33562.5 ; RECT 2330.0 33307.5 2465.0 33372.5 ; - RECT 1312.5 35352.5 1377.5 35417.5 ; - RECT 4002.5 35352.5 4067.5 35417.5 ; - RECT 1312.5 35255.0 1377.5 35385.0 ; - RECT 1345.0 35352.5 4035.0 35417.5 ; - RECT 4002.5 35255.0 4067.5 35385.0 ; + RECT 1312.5 39272.5 1377.5 39337.5 ; + RECT 4002.5 39272.5 4067.5 39337.5 ; + RECT 1312.5 39175.0 1377.5 39305.0 ; + RECT 1345.0 39272.5 4035.0 39337.5 ; + RECT 4002.5 39175.0 4067.5 39305.0 ; RECT 2875.0 34562.5 2690.0 34627.5 ; RECT 4035.0 34562.5 3850.0 34627.5 ; RECT 3917.5 34202.5 4067.5 34267.5 ; @@ -4255,6 +4256,279 @@ MACRO sram_2_16_1_freepdk45 RECT 2722.5 34695.0 2657.5 35255.0 ; RECT 4067.5 34695.0 4002.5 35255.0 ; RECT 3340.0 34820.0 3475.0 34885.0 ; + RECT 2875.0 35682.5 2690.0 35747.5 ; + RECT 4035.0 35682.5 3850.0 35747.5 ; + RECT 3917.5 35322.5 4067.5 35387.5 ; + RECT 3032.5 35322.5 2657.5 35387.5 ; + RECT 3917.5 35512.5 3032.5 35577.5 ; + RECT 3032.5 35322.5 2897.5 35387.5 ; + RECT 3032.5 35512.5 2897.5 35577.5 ; + RECT 3032.5 35512.5 2897.5 35577.5 ; + RECT 3032.5 35322.5 2897.5 35387.5 ; + RECT 3917.5 35322.5 3782.5 35387.5 ; + RECT 3917.5 35512.5 3782.5 35577.5 ; + RECT 3917.5 35512.5 3782.5 35577.5 ; + RECT 3917.5 35322.5 3782.5 35387.5 ; + RECT 2942.5 35682.5 2807.5 35747.5 ; + RECT 3917.5 35682.5 3782.5 35747.5 ; + RECT 3475.0 35380.0 3340.0 35445.0 ; + RECT 3475.0 35380.0 3340.0 35445.0 ; + RECT 3440.0 35545.0 3375.0 35610.0 ; + RECT 2722.5 35255.0 2657.5 35815.0 ; + RECT 4067.5 35255.0 4002.5 35815.0 ; + RECT 3340.0 35380.0 3475.0 35445.0 ; + RECT 2875.0 36242.5 2690.0 36307.5 ; + RECT 4035.0 36242.5 3850.0 36307.5 ; + RECT 3917.5 35882.5 4067.5 35947.5 ; + RECT 3032.5 35882.5 2657.5 35947.5 ; + RECT 3917.5 36072.5 3032.5 36137.5 ; + RECT 3032.5 35882.5 2897.5 35947.5 ; + RECT 3032.5 36072.5 2897.5 36137.5 ; + RECT 3032.5 36072.5 2897.5 36137.5 ; + RECT 3032.5 35882.5 2897.5 35947.5 ; + RECT 3917.5 35882.5 3782.5 35947.5 ; + RECT 3917.5 36072.5 3782.5 36137.5 ; + RECT 3917.5 36072.5 3782.5 36137.5 ; + RECT 3917.5 35882.5 3782.5 35947.5 ; + RECT 2942.5 36242.5 2807.5 36307.5 ; + RECT 3917.5 36242.5 3782.5 36307.5 ; + RECT 3475.0 35940.0 3340.0 36005.0 ; + RECT 3475.0 35940.0 3340.0 36005.0 ; + RECT 3440.0 36105.0 3375.0 36170.0 ; + RECT 2722.5 35815.0 2657.5 36375.0 ; + RECT 4067.5 35815.0 4002.5 36375.0 ; + RECT 3340.0 35940.0 3475.0 36005.0 ; + RECT 2875.0 36802.5 2690.0 36867.5 ; + RECT 4035.0 36802.5 3850.0 36867.5 ; + RECT 3917.5 36442.5 4067.5 36507.5 ; + RECT 3032.5 36442.5 2657.5 36507.5 ; + RECT 3917.5 36632.5 3032.5 36697.5 ; + RECT 3032.5 36442.5 2897.5 36507.5 ; + RECT 3032.5 36632.5 2897.5 36697.5 ; + RECT 3032.5 36632.5 2897.5 36697.5 ; + RECT 3032.5 36442.5 2897.5 36507.5 ; + RECT 3917.5 36442.5 3782.5 36507.5 ; + RECT 3917.5 36632.5 3782.5 36697.5 ; + RECT 3917.5 36632.5 3782.5 36697.5 ; + RECT 3917.5 36442.5 3782.5 36507.5 ; + RECT 2942.5 36802.5 2807.5 36867.5 ; + RECT 3917.5 36802.5 3782.5 36867.5 ; + RECT 3475.0 36500.0 3340.0 36565.0 ; + RECT 3475.0 36500.0 3340.0 36565.0 ; + RECT 3440.0 36665.0 3375.0 36730.0 ; + RECT 2722.5 36375.0 2657.5 36935.0 ; + RECT 4067.5 36375.0 4002.5 36935.0 ; + RECT 3340.0 36500.0 3475.0 36565.0 ; + RECT 2875.0 37362.5 2690.0 37427.5 ; + RECT 4035.0 37362.5 3850.0 37427.5 ; + RECT 3917.5 37002.5 4067.5 37067.5 ; + RECT 3032.5 37002.5 2657.5 37067.5 ; + RECT 3917.5 37192.5 3032.5 37257.5 ; + RECT 3032.5 37002.5 2897.5 37067.5 ; + RECT 3032.5 37192.5 2897.5 37257.5 ; + RECT 3032.5 37192.5 2897.5 37257.5 ; + RECT 3032.5 37002.5 2897.5 37067.5 ; + RECT 3917.5 37002.5 3782.5 37067.5 ; + RECT 3917.5 37192.5 3782.5 37257.5 ; + RECT 3917.5 37192.5 3782.5 37257.5 ; + RECT 3917.5 37002.5 3782.5 37067.5 ; + RECT 2942.5 37362.5 2807.5 37427.5 ; + RECT 3917.5 37362.5 3782.5 37427.5 ; + RECT 3475.0 37060.0 3340.0 37125.0 ; + RECT 3475.0 37060.0 3340.0 37125.0 ; + RECT 3440.0 37225.0 3375.0 37290.0 ; + RECT 2722.5 36935.0 2657.5 37495.0 ; + RECT 4067.5 36935.0 4002.5 37495.0 ; + RECT 3340.0 37060.0 3475.0 37125.0 ; + RECT 2875.0 37922.5 2690.0 37987.5 ; + RECT 4035.0 37922.5 3850.0 37987.5 ; + RECT 3917.5 37562.5 4067.5 37627.5 ; + RECT 3032.5 37562.5 2657.5 37627.5 ; + RECT 3917.5 37752.5 3032.5 37817.5 ; + RECT 3032.5 37562.5 2897.5 37627.5 ; + RECT 3032.5 37752.5 2897.5 37817.5 ; + RECT 3032.5 37752.5 2897.5 37817.5 ; + RECT 3032.5 37562.5 2897.5 37627.5 ; + RECT 3917.5 37562.5 3782.5 37627.5 ; + RECT 3917.5 37752.5 3782.5 37817.5 ; + RECT 3917.5 37752.5 3782.5 37817.5 ; + RECT 3917.5 37562.5 3782.5 37627.5 ; + RECT 2942.5 37922.5 2807.5 37987.5 ; + RECT 3917.5 37922.5 3782.5 37987.5 ; + RECT 3475.0 37620.0 3340.0 37685.0 ; + RECT 3475.0 37620.0 3340.0 37685.0 ; + RECT 3440.0 37785.0 3375.0 37850.0 ; + RECT 2722.5 37495.0 2657.5 38055.0 ; + RECT 4067.5 37495.0 4002.5 38055.0 ; + RECT 3340.0 37620.0 3475.0 37685.0 ; + RECT 2875.0 38482.5 2690.0 38547.5 ; + RECT 4035.0 38482.5 3850.0 38547.5 ; + RECT 3917.5 38122.5 4067.5 38187.5 ; + RECT 3032.5 38122.5 2657.5 38187.5 ; + RECT 3917.5 38312.5 3032.5 38377.5 ; + RECT 3032.5 38122.5 2897.5 38187.5 ; + RECT 3032.5 38312.5 2897.5 38377.5 ; + RECT 3032.5 38312.5 2897.5 38377.5 ; + RECT 3032.5 38122.5 2897.5 38187.5 ; + RECT 3917.5 38122.5 3782.5 38187.5 ; + RECT 3917.5 38312.5 3782.5 38377.5 ; + RECT 3917.5 38312.5 3782.5 38377.5 ; + RECT 3917.5 38122.5 3782.5 38187.5 ; + RECT 2942.5 38482.5 2807.5 38547.5 ; + RECT 3917.5 38482.5 3782.5 38547.5 ; + RECT 3475.0 38180.0 3340.0 38245.0 ; + RECT 3475.0 38180.0 3340.0 38245.0 ; + RECT 3440.0 38345.0 3375.0 38410.0 ; + RECT 2722.5 38055.0 2657.5 38615.0 ; + RECT 4067.5 38055.0 4002.5 38615.0 ; + RECT 3340.0 38180.0 3475.0 38245.0 ; + RECT 2875.0 39042.5 2690.0 39107.5 ; + RECT 4035.0 39042.5 3850.0 39107.5 ; + RECT 3917.5 38682.5 4067.5 38747.5 ; + RECT 3032.5 38682.5 2657.5 38747.5 ; + RECT 3917.5 38872.5 3032.5 38937.5 ; + RECT 3032.5 38682.5 2897.5 38747.5 ; + RECT 3032.5 38872.5 2897.5 38937.5 ; + RECT 3032.5 38872.5 2897.5 38937.5 ; + RECT 3032.5 38682.5 2897.5 38747.5 ; + RECT 3917.5 38682.5 3782.5 38747.5 ; + RECT 3917.5 38872.5 3782.5 38937.5 ; + RECT 3917.5 38872.5 3782.5 38937.5 ; + RECT 3917.5 38682.5 3782.5 38747.5 ; + RECT 2942.5 39042.5 2807.5 39107.5 ; + RECT 3917.5 39042.5 3782.5 39107.5 ; + RECT 3475.0 38740.0 3340.0 38805.0 ; + RECT 3475.0 38740.0 3340.0 38805.0 ; + RECT 3440.0 38905.0 3375.0 38970.0 ; + RECT 2722.5 38615.0 2657.5 39175.0 ; + RECT 4067.5 38615.0 4002.5 39175.0 ; + RECT 3340.0 38740.0 3475.0 38805.0 ; + RECT 2505.0 38187.5 2690.0 38122.5 ; + RECT 1345.0 38187.5 1530.0 38122.5 ; + RECT 1462.5 38547.5 1312.5 38482.5 ; + RECT 2347.5 38547.5 2722.5 38482.5 ; + RECT 1462.5 38357.5 2347.5 38292.5 ; + RECT 2347.5 38547.5 2482.5 38482.5 ; + RECT 2347.5 38357.5 2482.5 38292.5 ; + RECT 2347.5 38357.5 2482.5 38292.5 ; + RECT 2347.5 38547.5 2482.5 38482.5 ; + RECT 1462.5 38547.5 1597.5 38482.5 ; + RECT 1462.5 38357.5 1597.5 38292.5 ; + RECT 1462.5 38357.5 1597.5 38292.5 ; + RECT 1462.5 38547.5 1597.5 38482.5 ; + RECT 2437.5 38187.5 2572.5 38122.5 ; + RECT 1462.5 38187.5 1597.5 38122.5 ; + RECT 1905.0 38490.0 2040.0 38425.0 ; + RECT 1905.0 38490.0 2040.0 38425.0 ; + RECT 1940.0 38325.0 2005.0 38260.0 ; + RECT 2657.5 38615.0 2722.5 38055.0 ; + RECT 1312.5 38615.0 1377.5 38055.0 ; + RECT 1905.0 38425.0 2040.0 38490.0 ; + RECT 2505.0 37627.5 2690.0 37562.5 ; + RECT 1345.0 37627.5 1530.0 37562.5 ; + RECT 1462.5 37987.5 1312.5 37922.5 ; + RECT 2347.5 37987.5 2722.5 37922.5 ; + RECT 1462.5 37797.5 2347.5 37732.5 ; + RECT 2347.5 37987.5 2482.5 37922.5 ; + RECT 2347.5 37797.5 2482.5 37732.5 ; + RECT 2347.5 37797.5 2482.5 37732.5 ; + RECT 2347.5 37987.5 2482.5 37922.5 ; + RECT 1462.5 37987.5 1597.5 37922.5 ; + RECT 1462.5 37797.5 1597.5 37732.5 ; + RECT 1462.5 37797.5 1597.5 37732.5 ; + RECT 1462.5 37987.5 1597.5 37922.5 ; + RECT 2437.5 37627.5 2572.5 37562.5 ; + RECT 1462.5 37627.5 1597.5 37562.5 ; + RECT 1905.0 37930.0 2040.0 37865.0 ; + RECT 1905.0 37930.0 2040.0 37865.0 ; + RECT 1940.0 37765.0 2005.0 37700.0 ; + RECT 2657.5 38055.0 2722.5 37495.0 ; + RECT 1312.5 38055.0 1377.5 37495.0 ; + RECT 1905.0 37865.0 2040.0 37930.0 ; + RECT 2505.0 37067.5 2690.0 37002.5 ; + RECT 1345.0 37067.5 1530.0 37002.5 ; + RECT 1462.5 37427.5 1312.5 37362.5 ; + RECT 2347.5 37427.5 2722.5 37362.5 ; + RECT 1462.5 37237.5 2347.5 37172.5 ; + RECT 2347.5 37427.5 2482.5 37362.5 ; + RECT 2347.5 37237.5 2482.5 37172.5 ; + RECT 2347.5 37237.5 2482.5 37172.5 ; + RECT 2347.5 37427.5 2482.5 37362.5 ; + RECT 1462.5 37427.5 1597.5 37362.5 ; + RECT 1462.5 37237.5 1597.5 37172.5 ; + RECT 1462.5 37237.5 1597.5 37172.5 ; + RECT 1462.5 37427.5 1597.5 37362.5 ; + RECT 2437.5 37067.5 2572.5 37002.5 ; + RECT 1462.5 37067.5 1597.5 37002.5 ; + RECT 1905.0 37370.0 2040.0 37305.0 ; + RECT 1905.0 37370.0 2040.0 37305.0 ; + RECT 1940.0 37205.0 2005.0 37140.0 ; + RECT 2657.5 37495.0 2722.5 36935.0 ; + RECT 1312.5 37495.0 1377.5 36935.0 ; + RECT 1905.0 37305.0 2040.0 37370.0 ; + RECT 2505.0 36507.5 2690.0 36442.5 ; + RECT 1345.0 36507.5 1530.0 36442.5 ; + RECT 1462.5 36867.5 1312.5 36802.5 ; + RECT 2347.5 36867.5 2722.5 36802.5 ; + RECT 1462.5 36677.5 2347.5 36612.5 ; + RECT 2347.5 36867.5 2482.5 36802.5 ; + RECT 2347.5 36677.5 2482.5 36612.5 ; + RECT 2347.5 36677.5 2482.5 36612.5 ; + RECT 2347.5 36867.5 2482.5 36802.5 ; + RECT 1462.5 36867.5 1597.5 36802.5 ; + RECT 1462.5 36677.5 1597.5 36612.5 ; + RECT 1462.5 36677.5 1597.5 36612.5 ; + RECT 1462.5 36867.5 1597.5 36802.5 ; + RECT 2437.5 36507.5 2572.5 36442.5 ; + RECT 1462.5 36507.5 1597.5 36442.5 ; + RECT 1905.0 36810.0 2040.0 36745.0 ; + RECT 1905.0 36810.0 2040.0 36745.0 ; + RECT 1940.0 36645.0 2005.0 36580.0 ; + RECT 2657.5 36935.0 2722.5 36375.0 ; + RECT 1312.5 36935.0 1377.5 36375.0 ; + RECT 1905.0 36745.0 2040.0 36810.0 ; + RECT 2505.0 35947.5 2690.0 35882.5 ; + RECT 1345.0 35947.5 1530.0 35882.5 ; + RECT 1462.5 36307.5 1312.5 36242.5 ; + RECT 2347.5 36307.5 2722.5 36242.5 ; + RECT 1462.5 36117.5 2347.5 36052.5 ; + RECT 2347.5 36307.5 2482.5 36242.5 ; + RECT 2347.5 36117.5 2482.5 36052.5 ; + RECT 2347.5 36117.5 2482.5 36052.5 ; + RECT 2347.5 36307.5 2482.5 36242.5 ; + RECT 1462.5 36307.5 1597.5 36242.5 ; + RECT 1462.5 36117.5 1597.5 36052.5 ; + RECT 1462.5 36117.5 1597.5 36052.5 ; + RECT 1462.5 36307.5 1597.5 36242.5 ; + RECT 2437.5 35947.5 2572.5 35882.5 ; + RECT 1462.5 35947.5 1597.5 35882.5 ; + RECT 1905.0 36250.0 2040.0 36185.0 ; + RECT 1905.0 36250.0 2040.0 36185.0 ; + RECT 1940.0 36085.0 2005.0 36020.0 ; + RECT 2657.5 36375.0 2722.5 35815.0 ; + RECT 1312.5 36375.0 1377.5 35815.0 ; + RECT 1905.0 36185.0 2040.0 36250.0 ; + RECT 2505.0 35387.5 2690.0 35322.5 ; + RECT 1345.0 35387.5 1530.0 35322.5 ; + RECT 1462.5 35747.5 1312.5 35682.5 ; + RECT 2347.5 35747.5 2722.5 35682.5 ; + RECT 1462.5 35557.5 2347.5 35492.5 ; + RECT 2347.5 35747.5 2482.5 35682.5 ; + RECT 2347.5 35557.5 2482.5 35492.5 ; + RECT 2347.5 35557.5 2482.5 35492.5 ; + RECT 2347.5 35747.5 2482.5 35682.5 ; + RECT 1462.5 35747.5 1597.5 35682.5 ; + RECT 1462.5 35557.5 1597.5 35492.5 ; + RECT 1462.5 35557.5 1597.5 35492.5 ; + RECT 1462.5 35747.5 1597.5 35682.5 ; + RECT 2437.5 35387.5 2572.5 35322.5 ; + RECT 1462.5 35387.5 1597.5 35322.5 ; + RECT 1905.0 35690.0 2040.0 35625.0 ; + RECT 1905.0 35690.0 2040.0 35625.0 ; + RECT 1940.0 35525.0 2005.0 35460.0 ; + RECT 2657.5 35815.0 2722.5 35255.0 ; + RECT 1312.5 35815.0 1377.5 35255.0 ; + RECT 1905.0 35625.0 2040.0 35690.0 ; RECT 2505.0 34827.5 2690.0 34762.5 ; RECT 1345.0 34827.5 1530.0 34762.5 ; RECT 1462.5 35187.5 1312.5 35122.5 ; @@ -4298,13 +4572,14 @@ MACRO sram_2_16_1_freepdk45 RECT 1312.5 34695.0 1377.5 34135.0 ; RECT 1905.0 34505.0 2040.0 34570.0 ; RECT 3340.0 34425.0 3475.0 34490.0 ; - RECT 3340.0 34985.0 3475.0 35050.0 ; - RECT 1905.0 34900.0 2040.0 34965.0 ; + RECT 3340.0 36665.0 3475.0 36730.0 ; + RECT 3340.0 38905.0 3475.0 38970.0 ; + RECT 1905.0 36580.0 2040.0 36645.0 ; RECT 3340.0 34260.0 3475.0 34325.0 ; RECT 1940.0 34135.0 2005.0 34340.0 ; - RECT 2657.5 34135.0 2722.5 35255.0 ; - RECT 1312.5 34135.0 1377.5 35255.0 ; - RECT 4002.5 34135.0 4067.5 35255.0 ; + RECT 2657.5 34135.0 2722.5 39175.0 ; + RECT 1312.5 34135.0 1377.5 39175.0 ; + RECT 4002.5 34135.0 4067.5 39175.0 ; RECT 935.0 33800.0 225.0 32455.0 ; RECT 935.0 33800.0 230.0 35145.0 ; RECT 935.0 36490.0 230.0 35145.0 ; @@ -5170,18 +5445,45 @@ MACRO sram_2_16_1_freepdk45 RECT 1207.5 32062.5 1137.5 32660.0 ; RECT 785.0 32062.5 715.0 32342.5 ; RECT 3372.5 34457.5 3442.5 34852.5 ; - RECT 2655.0 34982.5 2725.0 35052.5 ; - RECT 2655.0 35062.5 2725.0 35132.5 ; - RECT 2690.0 34982.5 3407.5 35052.5 ; - RECT 2655.0 35017.5 2725.0 35097.5 ; - RECT 1972.5 35062.5 2690.0 35132.5 ; - RECT 1937.5 34537.5 2007.5 34932.5 ; + RECT 3372.5 34852.5 3442.5 35412.5 ; + RECT 3372.5 35412.5 3442.5 35972.5 ; + RECT 3372.5 35972.5 3442.5 36532.5 ; + RECT 3372.5 36697.5 3442.5 37092.5 ; + RECT 3372.5 37092.5 3442.5 37652.5 ; + RECT 3372.5 37652.5 3442.5 38212.5 ; + RECT 3372.5 38212.5 3442.5 38772.5 ; + RECT 2655.0 38902.5 2725.0 38972.5 ; + RECT 2655.0 38422.5 2725.0 38492.5 ; + RECT 2690.0 38902.5 3407.5 38972.5 ; + RECT 2655.0 38457.5 2725.0 38937.5 ; + RECT 1972.5 38422.5 2690.0 38492.5 ; + RECT 1937.5 37897.5 2007.5 38457.5 ; + RECT 1937.5 37337.5 2007.5 37897.5 ; + RECT 1937.5 36777.5 2007.5 37337.5 ; + RECT 1937.5 36217.5 2007.5 36612.5 ; + RECT 1937.5 35657.5 2007.5 36217.5 ; + RECT 1937.5 35097.5 2007.5 35657.5 ; + RECT 1937.5 34537.5 2007.5 35097.5 ; RECT 3340.0 34817.5 3475.0 34887.5 ; + RECT 3340.0 35377.5 3475.0 35447.5 ; + RECT 3340.0 35937.5 3475.0 36007.5 ; + RECT 3340.0 36497.5 3475.0 36567.5 ; + RECT 3340.0 37057.5 3475.0 37127.5 ; + RECT 3340.0 37617.5 3475.0 37687.5 ; + RECT 3340.0 38177.5 3475.0 38247.5 ; + RECT 3340.0 38737.5 3475.0 38807.5 ; + RECT 1905.0 38422.5 2040.0 38492.5 ; + RECT 1905.0 37862.5 2040.0 37932.5 ; + RECT 1905.0 37302.5 2040.0 37372.5 ; + RECT 1905.0 36742.5 2040.0 36812.5 ; + RECT 1905.0 36182.5 2040.0 36252.5 ; + RECT 1905.0 35622.5 2040.0 35692.5 ; RECT 1905.0 35062.5 2040.0 35132.5 ; RECT 1905.0 34502.5 2040.0 34572.5 ; RECT 3340.0 34422.5 3475.0 34492.5 ; - RECT 3340.0 34982.5 3475.0 35052.5 ; - RECT 1905.0 34897.5 2040.0 34967.5 ; + RECT 3340.0 36662.5 3475.0 36732.5 ; + RECT 3340.0 38902.5 3475.0 38972.5 ; + RECT 1905.0 36577.5 2040.0 36647.5 ; RECT 935.0 33800.0 225.0 32455.0 ; RECT 935.0 33800.0 230.0 35145.0 ; RECT 935.0 36490.0 230.0 35145.0 ; diff --git a/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef b/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef index 65c62604..7a2a54f2 100644 --- a/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef +++ b/compiler/tests/golden/sram_2_16_1_scn3me_subm.lef @@ -4105,6 +4105,7 @@ MACRO sram_2_16_1_scn3me_subm RECT 16050.0 358350.0 15150.0 359250.0 ; RECT 8850.0 353400.0 7950.0 363000.0 ; RECT 22650.0 353400.0 21750.0 363000.0 ; + RECT 22650.0 499050.0 21750.0 430200.0 ; RECT 21750.0 397050.0 17400.0 397950.0 ; RECT 21750.0 420450.0 17400.0 421350.0 ; RECT 22650.0 371550.0 16800.0 372450.0 ; @@ -4149,11 +4150,11 @@ MACRO sram_2_16_1_scn3me_subm RECT 32550.0 398400.0 33750.0 399600.0 ; RECT 32550.0 398400.0 33750.0 399600.0 ; RECT 32550.0 396000.0 33750.0 397200.0 ; - RECT 21750.0 430950.0 22650.0 431850.0 ; - RECT 49350.0 430950.0 50250.0 431850.0 ; - RECT 21750.0 429600.0 22650.0 431400.0 ; - RECT 22200.0 430950.0 49800.0 431850.0 ; - RECT 49350.0 429600.0 50250.0 431400.0 ; + RECT 21750.0 498150.0 22650.0 499050.0 ; + RECT 49350.0 498150.0 50250.0 499050.0 ; + RECT 21750.0 496800.0 22650.0 498600.0 ; + RECT 22200.0 498150.0 49800.0 499050.0 ; + RECT 49350.0 496800.0 50250.0 498600.0 ; RECT 37950.0 417000.0 36000.0 418200.0 ; RECT 49800.0 417000.0 47850.0 418200.0 ; RECT 48450.0 412200.0 50250.0 413400.0 ; @@ -4195,6 +4196,279 @@ MACRO sram_2_16_1_scn3me_subm RECT 36450.0 420000.0 35550.0 429600.0 ; RECT 50250.0 420000.0 49350.0 429600.0 ; RECT 42600.0 422400.0 43800.0 423600.0 ; + RECT 37950.0 436200.0 36000.0 437400.0 ; + RECT 49800.0 436200.0 47850.0 437400.0 ; + RECT 48450.0 431400.0 50250.0 432600.0 ; + RECT 39150.0 431400.0 35550.0 432600.0 ; + RECT 48450.0 434100.0 39150.0 435000.0 ; + RECT 39150.0 431400.0 37950.0 432600.0 ; + RECT 39150.0 433800.0 37950.0 435000.0 ; + RECT 39150.0 433800.0 37950.0 435000.0 ; + RECT 39150.0 431400.0 37950.0 432600.0 ; + RECT 48450.0 431400.0 47250.0 432600.0 ; + RECT 48450.0 433800.0 47250.0 435000.0 ; + RECT 48450.0 433800.0 47250.0 435000.0 ; + RECT 48450.0 431400.0 47250.0 432600.0 ; + RECT 38550.0 436200.0 37350.0 437400.0 ; + RECT 48450.0 436200.0 47250.0 437400.0 ; + RECT 43800.0 432000.0 42600.0 433200.0 ; + RECT 43800.0 432000.0 42600.0 433200.0 ; + RECT 43650.0 434550.0 42750.0 435450.0 ; + RECT 36450.0 429600.0 35550.0 439200.0 ; + RECT 50250.0 429600.0 49350.0 439200.0 ; + RECT 42600.0 432000.0 43800.0 433200.0 ; + RECT 37950.0 445800.0 36000.0 447000.0 ; + RECT 49800.0 445800.0 47850.0 447000.0 ; + RECT 48450.0 441000.0 50250.0 442200.0 ; + RECT 39150.0 441000.0 35550.0 442200.0 ; + RECT 48450.0 443700.0 39150.0 444600.0 ; + RECT 39150.0 441000.0 37950.0 442200.0 ; + RECT 39150.0 443400.0 37950.0 444600.0 ; + RECT 39150.0 443400.0 37950.0 444600.0 ; + RECT 39150.0 441000.0 37950.0 442200.0 ; + RECT 48450.0 441000.0 47250.0 442200.0 ; + RECT 48450.0 443400.0 47250.0 444600.0 ; + RECT 48450.0 443400.0 47250.0 444600.0 ; + RECT 48450.0 441000.0 47250.0 442200.0 ; + RECT 38550.0 445800.0 37350.0 447000.0 ; + RECT 48450.0 445800.0 47250.0 447000.0 ; + RECT 43800.0 441600.0 42600.0 442800.0 ; + RECT 43800.0 441600.0 42600.0 442800.0 ; + RECT 43650.0 444150.0 42750.0 445050.0 ; + RECT 36450.0 439200.0 35550.0 448800.0 ; + RECT 50250.0 439200.0 49350.0 448800.0 ; + RECT 42600.0 441600.0 43800.0 442800.0 ; + RECT 37950.0 455400.0 36000.0 456600.0 ; + RECT 49800.0 455400.0 47850.0 456600.0 ; + RECT 48450.0 450600.0 50250.0 451800.0 ; + RECT 39150.0 450600.0 35550.0 451800.0 ; + RECT 48450.0 453300.0 39150.0 454200.0 ; + RECT 39150.0 450600.0 37950.0 451800.0 ; + RECT 39150.0 453000.0 37950.0 454200.0 ; + RECT 39150.0 453000.0 37950.0 454200.0 ; + RECT 39150.0 450600.0 37950.0 451800.0 ; + RECT 48450.0 450600.0 47250.0 451800.0 ; + RECT 48450.0 453000.0 47250.0 454200.0 ; + RECT 48450.0 453000.0 47250.0 454200.0 ; + RECT 48450.0 450600.0 47250.0 451800.0 ; + RECT 38550.0 455400.0 37350.0 456600.0 ; + RECT 48450.0 455400.0 47250.0 456600.0 ; + RECT 43800.0 451200.0 42600.0 452400.0 ; + RECT 43800.0 451200.0 42600.0 452400.0 ; + RECT 43650.0 453750.0 42750.0 454650.0 ; + RECT 36450.0 448800.0 35550.0 458400.0 ; + RECT 50250.0 448800.0 49350.0 458400.0 ; + RECT 42600.0 451200.0 43800.0 452400.0 ; + RECT 37950.0 465000.0 36000.0 466200.0 ; + RECT 49800.0 465000.0 47850.0 466200.0 ; + RECT 48450.0 460200.0 50250.0 461400.0 ; + RECT 39150.0 460200.0 35550.0 461400.0 ; + RECT 48450.0 462900.0 39150.0 463800.0 ; + RECT 39150.0 460200.0 37950.0 461400.0 ; + RECT 39150.0 462600.0 37950.0 463800.0 ; + RECT 39150.0 462600.0 37950.0 463800.0 ; + RECT 39150.0 460200.0 37950.0 461400.0 ; + RECT 48450.0 460200.0 47250.0 461400.0 ; + RECT 48450.0 462600.0 47250.0 463800.0 ; + RECT 48450.0 462600.0 47250.0 463800.0 ; + RECT 48450.0 460200.0 47250.0 461400.0 ; + RECT 38550.0 465000.0 37350.0 466200.0 ; + RECT 48450.0 465000.0 47250.0 466200.0 ; + RECT 43800.0 460800.0 42600.0 462000.0 ; + RECT 43800.0 460800.0 42600.0 462000.0 ; + RECT 43650.0 463350.0 42750.0 464250.0 ; + RECT 36450.0 458400.0 35550.0 468000.0 ; + RECT 50250.0 458400.0 49350.0 468000.0 ; + RECT 42600.0 460800.0 43800.0 462000.0 ; + RECT 37950.0 474600.0 36000.0 475800.0 ; + RECT 49800.0 474600.0 47850.0 475800.0 ; + RECT 48450.0 469800.0 50250.0 471000.0 ; + RECT 39150.0 469800.0 35550.0 471000.0 ; + RECT 48450.0 472500.0 39150.0 473400.0 ; + RECT 39150.0 469800.0 37950.0 471000.0 ; + RECT 39150.0 472200.0 37950.0 473400.0 ; + RECT 39150.0 472200.0 37950.0 473400.0 ; + RECT 39150.0 469800.0 37950.0 471000.0 ; + RECT 48450.0 469800.0 47250.0 471000.0 ; + RECT 48450.0 472200.0 47250.0 473400.0 ; + RECT 48450.0 472200.0 47250.0 473400.0 ; + RECT 48450.0 469800.0 47250.0 471000.0 ; + RECT 38550.0 474600.0 37350.0 475800.0 ; + RECT 48450.0 474600.0 47250.0 475800.0 ; + RECT 43800.0 470400.0 42600.0 471600.0 ; + RECT 43800.0 470400.0 42600.0 471600.0 ; + RECT 43650.0 472950.0 42750.0 473850.0 ; + RECT 36450.0 468000.0 35550.0 477600.0 ; + RECT 50250.0 468000.0 49350.0 477600.0 ; + RECT 42600.0 470400.0 43800.0 471600.0 ; + RECT 37950.0 484200.0 36000.0 485400.0 ; + RECT 49800.0 484200.0 47850.0 485400.0 ; + RECT 48450.0 479400.0 50250.0 480600.0 ; + RECT 39150.0 479400.0 35550.0 480600.0 ; + RECT 48450.0 482100.0 39150.0 483000.0 ; + RECT 39150.0 479400.0 37950.0 480600.0 ; + RECT 39150.0 481800.0 37950.0 483000.0 ; + RECT 39150.0 481800.0 37950.0 483000.0 ; + RECT 39150.0 479400.0 37950.0 480600.0 ; + RECT 48450.0 479400.0 47250.0 480600.0 ; + RECT 48450.0 481800.0 47250.0 483000.0 ; + RECT 48450.0 481800.0 47250.0 483000.0 ; + RECT 48450.0 479400.0 47250.0 480600.0 ; + RECT 38550.0 484200.0 37350.0 485400.0 ; + RECT 48450.0 484200.0 47250.0 485400.0 ; + RECT 43800.0 480000.0 42600.0 481200.0 ; + RECT 43800.0 480000.0 42600.0 481200.0 ; + RECT 43650.0 482550.0 42750.0 483450.0 ; + RECT 36450.0 477600.0 35550.0 487200.0 ; + RECT 50250.0 477600.0 49350.0 487200.0 ; + RECT 42600.0 480000.0 43800.0 481200.0 ; + RECT 37950.0 493800.0 36000.0 495000.0 ; + RECT 49800.0 493800.0 47850.0 495000.0 ; + RECT 48450.0 489000.0 50250.0 490200.0 ; + RECT 39150.0 489000.0 35550.0 490200.0 ; + RECT 48450.0 491700.0 39150.0 492600.0 ; + RECT 39150.0 489000.0 37950.0 490200.0 ; + RECT 39150.0 491400.0 37950.0 492600.0 ; + RECT 39150.0 491400.0 37950.0 492600.0 ; + RECT 39150.0 489000.0 37950.0 490200.0 ; + RECT 48450.0 489000.0 47250.0 490200.0 ; + RECT 48450.0 491400.0 47250.0 492600.0 ; + RECT 48450.0 491400.0 47250.0 492600.0 ; + RECT 48450.0 489000.0 47250.0 490200.0 ; + RECT 38550.0 493800.0 37350.0 495000.0 ; + RECT 48450.0 493800.0 47250.0 495000.0 ; + RECT 43800.0 489600.0 42600.0 490800.0 ; + RECT 43800.0 489600.0 42600.0 490800.0 ; + RECT 43650.0 492150.0 42750.0 493050.0 ; + RECT 36450.0 487200.0 35550.0 496800.0 ; + RECT 50250.0 487200.0 49350.0 496800.0 ; + RECT 42600.0 489600.0 43800.0 490800.0 ; + RECT 34050.0 480600.0 36000.0 479400.0 ; + RECT 22200.0 480600.0 24150.0 479400.0 ; + RECT 23550.0 485400.0 21750.0 484200.0 ; + RECT 32850.0 485400.0 36450.0 484200.0 ; + RECT 23550.0 482700.0 32850.0 481800.0 ; + RECT 32850.0 485400.0 34050.0 484200.0 ; + RECT 32850.0 483000.0 34050.0 481800.0 ; + RECT 32850.0 483000.0 34050.0 481800.0 ; + RECT 32850.0 485400.0 34050.0 484200.0 ; + RECT 23550.0 485400.0 24750.0 484200.0 ; + RECT 23550.0 483000.0 24750.0 481800.0 ; + RECT 23550.0 483000.0 24750.0 481800.0 ; + RECT 23550.0 485400.0 24750.0 484200.0 ; + RECT 33450.0 480600.0 34650.0 479400.0 ; + RECT 23550.0 480600.0 24750.0 479400.0 ; + RECT 28200.0 484800.0 29400.0 483600.0 ; + RECT 28200.0 484800.0 29400.0 483600.0 ; + RECT 28350.0 482250.0 29250.0 481350.0 ; + RECT 35550.0 487200.0 36450.0 477600.0 ; + RECT 21750.0 487200.0 22650.0 477600.0 ; + RECT 28200.0 483600.0 29400.0 484800.0 ; + RECT 34050.0 471000.0 36000.0 469800.0 ; + RECT 22200.0 471000.0 24150.0 469800.0 ; + RECT 23550.0 475800.0 21750.0 474600.0 ; + RECT 32850.0 475800.0 36450.0 474600.0 ; + RECT 23550.0 473100.0 32850.0 472200.0 ; + RECT 32850.0 475800.0 34050.0 474600.0 ; + RECT 32850.0 473400.0 34050.0 472200.0 ; + RECT 32850.0 473400.0 34050.0 472200.0 ; + RECT 32850.0 475800.0 34050.0 474600.0 ; + RECT 23550.0 475800.0 24750.0 474600.0 ; + RECT 23550.0 473400.0 24750.0 472200.0 ; + RECT 23550.0 473400.0 24750.0 472200.0 ; + RECT 23550.0 475800.0 24750.0 474600.0 ; + RECT 33450.0 471000.0 34650.0 469800.0 ; + RECT 23550.0 471000.0 24750.0 469800.0 ; + RECT 28200.0 475200.0 29400.0 474000.0 ; + RECT 28200.0 475200.0 29400.0 474000.0 ; + RECT 28350.0 472650.0 29250.0 471750.0 ; + RECT 35550.0 477600.0 36450.0 468000.0 ; + RECT 21750.0 477600.0 22650.0 468000.0 ; + RECT 28200.0 474000.0 29400.0 475200.0 ; + RECT 34050.0 461400.0 36000.0 460200.0 ; + RECT 22200.0 461400.0 24150.0 460200.0 ; + RECT 23550.0 466200.0 21750.0 465000.0 ; + RECT 32850.0 466200.0 36450.0 465000.0 ; + RECT 23550.0 463500.0 32850.0 462600.0 ; + RECT 32850.0 466200.0 34050.0 465000.0 ; + RECT 32850.0 463800.0 34050.0 462600.0 ; + RECT 32850.0 463800.0 34050.0 462600.0 ; + RECT 32850.0 466200.0 34050.0 465000.0 ; + RECT 23550.0 466200.0 24750.0 465000.0 ; + RECT 23550.0 463800.0 24750.0 462600.0 ; + RECT 23550.0 463800.0 24750.0 462600.0 ; + RECT 23550.0 466200.0 24750.0 465000.0 ; + RECT 33450.0 461400.0 34650.0 460200.0 ; + RECT 23550.0 461400.0 24750.0 460200.0 ; + RECT 28200.0 465600.0 29400.0 464400.0 ; + RECT 28200.0 465600.0 29400.0 464400.0 ; + RECT 28350.0 463050.0 29250.0 462150.0 ; + RECT 35550.0 468000.0 36450.0 458400.0 ; + RECT 21750.0 468000.0 22650.0 458400.0 ; + RECT 28200.0 464400.0 29400.0 465600.0 ; + RECT 34050.0 451800.0 36000.0 450600.0 ; + RECT 22200.0 451800.0 24150.0 450600.0 ; + RECT 23550.0 456600.0 21750.0 455400.0 ; + RECT 32850.0 456600.0 36450.0 455400.0 ; + RECT 23550.0 453900.0 32850.0 453000.0 ; + RECT 32850.0 456600.0 34050.0 455400.0 ; + RECT 32850.0 454200.0 34050.0 453000.0 ; + RECT 32850.0 454200.0 34050.0 453000.0 ; + RECT 32850.0 456600.0 34050.0 455400.0 ; + RECT 23550.0 456600.0 24750.0 455400.0 ; + RECT 23550.0 454200.0 24750.0 453000.0 ; + RECT 23550.0 454200.0 24750.0 453000.0 ; + RECT 23550.0 456600.0 24750.0 455400.0 ; + RECT 33450.0 451800.0 34650.0 450600.0 ; + RECT 23550.0 451800.0 24750.0 450600.0 ; + RECT 28200.0 456000.0 29400.0 454800.0 ; + RECT 28200.0 456000.0 29400.0 454800.0 ; + RECT 28350.0 453450.0 29250.0 452550.0 ; + RECT 35550.0 458400.0 36450.0 448800.0 ; + RECT 21750.0 458400.0 22650.0 448800.0 ; + RECT 28200.0 454800.0 29400.0 456000.0 ; + RECT 34050.0 442200.0 36000.0 441000.0 ; + RECT 22200.0 442200.0 24150.0 441000.0 ; + RECT 23550.0 447000.0 21750.0 445800.0 ; + RECT 32850.0 447000.0 36450.0 445800.0 ; + RECT 23550.0 444300.0 32850.0 443400.0 ; + RECT 32850.0 447000.0 34050.0 445800.0 ; + RECT 32850.0 444600.0 34050.0 443400.0 ; + RECT 32850.0 444600.0 34050.0 443400.0 ; + RECT 32850.0 447000.0 34050.0 445800.0 ; + RECT 23550.0 447000.0 24750.0 445800.0 ; + RECT 23550.0 444600.0 24750.0 443400.0 ; + RECT 23550.0 444600.0 24750.0 443400.0 ; + RECT 23550.0 447000.0 24750.0 445800.0 ; + RECT 33450.0 442200.0 34650.0 441000.0 ; + RECT 23550.0 442200.0 24750.0 441000.0 ; + RECT 28200.0 446400.0 29400.0 445200.0 ; + RECT 28200.0 446400.0 29400.0 445200.0 ; + RECT 28350.0 443850.0 29250.0 442950.0 ; + RECT 35550.0 448800.0 36450.0 439200.0 ; + RECT 21750.0 448800.0 22650.0 439200.0 ; + RECT 28200.0 445200.0 29400.0 446400.0 ; + RECT 34050.0 432600.0 36000.0 431400.0 ; + RECT 22200.0 432600.0 24150.0 431400.0 ; + RECT 23550.0 437400.0 21750.0 436200.0 ; + RECT 32850.0 437400.0 36450.0 436200.0 ; + RECT 23550.0 434700.0 32850.0 433800.0 ; + RECT 32850.0 437400.0 34050.0 436200.0 ; + RECT 32850.0 435000.0 34050.0 433800.0 ; + RECT 32850.0 435000.0 34050.0 433800.0 ; + RECT 32850.0 437400.0 34050.0 436200.0 ; + RECT 23550.0 437400.0 24750.0 436200.0 ; + RECT 23550.0 435000.0 24750.0 433800.0 ; + RECT 23550.0 435000.0 24750.0 433800.0 ; + RECT 23550.0 437400.0 24750.0 436200.0 ; + RECT 33450.0 432600.0 34650.0 431400.0 ; + RECT 23550.0 432600.0 24750.0 431400.0 ; + RECT 28200.0 436800.0 29400.0 435600.0 ; + RECT 28200.0 436800.0 29400.0 435600.0 ; + RECT 28350.0 434250.0 29250.0 433350.0 ; + RECT 35550.0 439200.0 36450.0 429600.0 ; + RECT 21750.0 439200.0 22650.0 429600.0 ; + RECT 28200.0 435600.0 29400.0 436800.0 ; RECT 34050.0 423000.0 36000.0 421800.0 ; RECT 22200.0 423000.0 24150.0 421800.0 ; RECT 23550.0 427800.0 21750.0 426600.0 ; @@ -4238,13 +4512,14 @@ MACRO sram_2_16_1_scn3me_subm RECT 21750.0 420000.0 22650.0 410400.0 ; RECT 28200.0 416400.0 29400.0 417600.0 ; RECT 42600.0 415200.0 43800.0 416400.0 ; - RECT 42600.0 424800.0 43800.0 426000.0 ; - RECT 28200.0 423600.0 29400.0 424800.0 ; + RECT 42600.0 453600.0 43800.0 454800.0 ; + RECT 42600.0 492000.0 43800.0 493200.0 ; + RECT 28200.0 452400.0 29400.0 453600.0 ; RECT 42600.0 412800.0 43800.0 414000.0 ; RECT 28350.0 410400.0 29250.0 414150.0 ; - RECT 35550.0 410400.0 36450.0 429600.0 ; - RECT 21750.0 410400.0 22650.0 429600.0 ; - RECT 49350.0 410400.0 50250.0 429600.0 ; + RECT 35550.0 410400.0 36450.0 496800.0 ; + RECT 21750.0 410400.0 22650.0 496800.0 ; + RECT 49350.0 410400.0 50250.0 496800.0 ; RECT 16800.0 395400.0 6600.0 381600.0 ; RECT 16800.0 395400.0 6600.0 409200.0 ; RECT 16800.0 423000.0 6600.0 409200.0 ; @@ -5079,18 +5354,45 @@ MACRO sram_2_16_1_scn3me_subm RECT 20400.0 376200.0 19500.0 384300.0 ; RECT 13650.0 376200.0 12750.0 381000.0 ; RECT 42750.0 415800.0 43650.0 423000.0 ; - RECT 35550.0 424950.0 36450.0 425850.0 ; - RECT 35550.0 426150.0 36450.0 427050.0 ; - RECT 36000.0 424950.0 43200.0 425850.0 ; - RECT 35550.0 425400.0 36450.0 426600.0 ; - RECT 28800.0 426150.0 36000.0 427050.0 ; - RECT 28350.0 417000.0 29250.0 424200.0 ; + RECT 42750.0 423000.0 43650.0 432600.0 ; + RECT 42750.0 432600.0 43650.0 442200.0 ; + RECT 42750.0 442200.0 43650.0 451800.0 ; + RECT 42750.0 454200.0 43650.0 461400.0 ; + RECT 42750.0 461400.0 43650.0 471000.0 ; + RECT 42750.0 471000.0 43650.0 480600.0 ; + RECT 42750.0 480600.0 43650.0 490200.0 ; + RECT 35550.0 492150.0 36450.0 493050.0 ; + RECT 35550.0 483750.0 36450.0 484650.0 ; + RECT 36000.0 492150.0 43200.0 493050.0 ; + RECT 35550.0 484200.0 36450.0 492600.0 ; + RECT 28800.0 483750.0 36000.0 484650.0 ; + RECT 28350.0 474600.0 29250.0 484200.0 ; + RECT 28350.0 465000.0 29250.0 474600.0 ; + RECT 28350.0 455400.0 29250.0 465000.0 ; + RECT 28350.0 445800.0 29250.0 453000.0 ; + RECT 28350.0 436200.0 29250.0 445800.0 ; + RECT 28350.0 426600.0 29250.0 436200.0 ; + RECT 28350.0 417000.0 29250.0 426600.0 ; RECT 42600.0 422400.0 43800.0 423600.0 ; + RECT 42600.0 432000.0 43800.0 433200.0 ; + RECT 42600.0 441600.0 43800.0 442800.0 ; + RECT 42600.0 451200.0 43800.0 452400.0 ; + RECT 42600.0 460800.0 43800.0 462000.0 ; + RECT 42600.0 470400.0 43800.0 471600.0 ; + RECT 42600.0 480000.0 43800.0 481200.0 ; + RECT 42600.0 489600.0 43800.0 490800.0 ; + RECT 28200.0 483600.0 29400.0 484800.0 ; + RECT 28200.0 474000.0 29400.0 475200.0 ; + RECT 28200.0 464400.0 29400.0 465600.0 ; + RECT 28200.0 454800.0 29400.0 456000.0 ; + RECT 28200.0 445200.0 29400.0 446400.0 ; + RECT 28200.0 435600.0 29400.0 436800.0 ; RECT 28200.0 426000.0 29400.0 427200.0 ; RECT 28200.0 416400.0 29400.0 417600.0 ; RECT 42600.0 415200.0 43800.0 416400.0 ; - RECT 42600.0 424800.0 43800.0 426000.0 ; - RECT 28200.0 423600.0 29400.0 424800.0 ; + RECT 42600.0 453600.0 43800.0 454800.0 ; + RECT 42600.0 492000.0 43800.0 493200.0 ; + RECT 28200.0 452400.0 29400.0 453600.0 ; RECT 16800.0 395400.0 6600.0 381600.0 ; RECT 16800.0 395400.0 6600.0 409200.0 ; RECT 16800.0 423000.0 6600.0 409200.0 ; From 2413304f4ed40ca06025cdbd2f3b5ecf17c5a5fa Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Wed, 7 Feb 2018 15:15:19 -0800 Subject: [PATCH 53/95] Update replica bitline test for new parameters. Add small test and a larger test. --- compiler/tests/14_replica_bitline_test.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/compiler/tests/14_replica_bitline_test.py b/compiler/tests/14_replica_bitline_test.py index d54878d7..36dd63e9 100644 --- a/compiler/tests/14_replica_bitline_test.py +++ b/compiler/tests/14_replica_bitline_test.py @@ -21,10 +21,18 @@ class replica_bitline_test(openram_test): import replica_bitline - debug.info(2, "Testing RBL") - a = replica_bitline.replica_bitline(13) + stages=4 + rows=13 + debug.info(2, "Testing RBL with {0} FO4 stages, {1} rows".format(stages,rows)) + a = replica_bitline.replica_bitline(stages,rows) self.local_check(a) + stages=8 + rows=100 + debug.info(2, "Testing RBL with {0} FO4 stages, {1} rows".format(stages,rows)) + a = replica_bitline.replica_bitline(stages,rows) + self.local_check(a) + OPTS.check_lvsdrc = True globals.end_openram() From 9cc46453a269394cc58968403af7093af453c3e5 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Wed, 7 Feb 2018 15:43:09 -0800 Subject: [PATCH 54/95] Fix PWL bug to output last value. Fix bug in setup/hold use of improved PWL function. --- compiler/characterizer/setup_hold.py | 14 +++++++------- compiler/characterizer/stimuli.py | 5 +++-- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/compiler/characterizer/setup_hold.py b/compiler/characterizer/setup_hold.py index a184ffcb..f9c1161b 100644 --- a/compiler/characterizer/setup_hold.py +++ b/compiler/characterizer/setup_hold.py @@ -37,7 +37,7 @@ class setup_hold(): self.write_header(correct_value) # instantiate the master-slave d-flip-flop - self.sf.write("* Instantiation of the Master-Slave D-flip-flop\n") + self.sf.write("\n* Instantiation of the Master-Slave D-flip-flop\n") stimuli.inst_model(stim_file=self.sf, pins=self.pins, model_name=self.model_name) @@ -58,7 +58,7 @@ class setup_hold(): def write_header(self, correct_value): """ Write the header file with all the models and the power supplies. """ - self.sf.write("* Stimulus for setup/hold: data {0} period {1}n\n".format(correct_value, self.period)) + self.sf.write("\n* Stimulus for setup/hold: data {0} period {1}n\n".format(correct_value, self.period)) # include files in stimulus file self.model_list = tech.spice["fet_models"] + [self.model_location] @@ -66,7 +66,7 @@ class setup_hold(): models=self.model_list) # add vdd/gnd statements - self.sf.write("* Global Power Supplies\n") + self.sf.write("\n* Global Power Supplies\n") stimuli.write_supply(self.sf) @@ -76,7 +76,7 @@ class setup_hold(): characterization. """ - self.sf.write("* Generation of the data and clk signals\n") + self.sf.write("\n* Generation of the data and clk signals\n") incorrect_value = stimuli.get_inverse_value(correct_value) if mode=="HOLD": init_value = incorrect_value @@ -89,7 +89,7 @@ class setup_hold(): stimuli.gen_pwl(stim_file=self.sf, sig_name="data", - clk_times=[self.period, target_time], + clk_times=[0, self.period, target_time], data_values=[init_value, start_value, end_value], period=target_time, slew=self.constrained_input_slew, @@ -105,7 +105,7 @@ class setup_hold(): # without using .IC on an internal node. # Return input to value after one period. # The second pulse is the characterization one at 2*period - clk_times=[0.1*self.period,self.period,2*self.period], + clk_times=[0, 0.1*self.period,self.period,2*self.period], data_values=[0, 1, 0, 1], period=2*self.period, slew=self.constrained_input_slew, @@ -132,7 +132,7 @@ class setup_hold(): din_rise_or_fall = "RISE" - self.sf.write("* Measure statements for pass/fail verification\n") + self.sf.write("\n* Measure statements for pass/fail verification\n") trig_name = "clk" targ_name = "dout" trig_val = targ_val = 0.5 * self.vdd diff --git a/compiler/characterizer/stimuli.py b/compiler/characterizer/stimuli.py index f716e592..e8b78e48 100644 --- a/compiler/characterizer/stimuli.py +++ b/compiler/characterizer/stimuli.py @@ -140,7 +140,8 @@ def gen_pwl(stim_file, sig_name, clk_times, data_values, period, slew, setup): """ Generate a PWL stimulus given a signal name and data values at each period. Automatically creates slews and ensures each data occurs a setup before the clock - edge. + edge. The first clk_time should be 0 and is the initial time that corresponds + to the initial value. """ # the initial value is not a clock time debug.check(len(clk_times)==len(data_values),"Clock and data value lengths don't match.") @@ -151,7 +152,7 @@ def gen_pwl(stim_file, sig_name, clk_times, data_values, period, slew, setup): half_slew = 0.5 * slew stim_file.write("* (time, data): {}\n".format(zip(clk_times, data_values))) stim_file.write("V{0} {0} 0 PWL (0n {1}v ".format(sig_name, values[0])) - for i in range(1,len(times)-1): + for i in range(1,len(times)): stim_file.write("{0}n {1}v {2}n {3}v ".format(times[i]-half_slew, values[i-1], times[i]+half_slew, From 1b4be741df7d5ab1d5686ce148e026f3f7b83d73 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Wed, 7 Feb 2018 17:39:42 -0800 Subject: [PATCH 55/95] Fix broken print statements --- compiler/characterizer/delay.py | 77 ++++++++++++++++++--------------- 1 file changed, 41 insertions(+), 36 deletions(-) diff --git a/compiler/characterizer/delay.py b/compiler/characterizer/delay.py index 013ef55c..854eeb75 100644 --- a/compiler/characterizer/delay.py +++ b/compiler/characterizer/delay.py @@ -233,12 +233,11 @@ class delay(): feasible_period = 2 * feasible_period continue - debug.info(1, "Found feasible_period: {0}ns " + - "feasible_delay1/0 {1}ns/{2}ns slew {3}ns/{4}ns".format(feasible_period, - feasible_delay1, - feasible_delay0, - feasible_slew1, - feasible_slew0)) + debug.info(1, "Found feasible_period: {0}ns feasible_delay1/0 {1}ns/{2}ns slew {3}ns/{4}ns".format(feasible_period, + feasible_delay1, + feasible_delay0, + feasible_slew1, + feasible_slew0)) return (feasible_period, feasible_delay1, feasible_delay0) @@ -258,14 +257,13 @@ class delay(): # if it failed or the read was longer than a period if type(delay0)!=float or type(delay1)!=float or type(slew1)!=float or type(slew0)!=float: - debug.info(2,"Failed simulation: period {0} load {1} slew {2}, " + - "delay0={3}n delay1={4}ns slew0={5}n slew1={6}n".format(period, - load, - slew, - delay0, - delay1, - slew0, - slew1)) + debug.info(2,"Failed simulation: period {0} load {1} slew {2}, delay0={3}n delay1={4}ns slew0={5}n slew1={6}n".format(period, + load, + slew, + delay0, + delay1, + slew0, + slew1)) return (False,0,0,0,0) # Scale delays to ns (they previously could have not been floats) delay0 *= 1e9 @@ -273,24 +271,22 @@ class delay(): slew0 *= 1e9 slew1 *= 1e9 if delay0>period or delay1>period or slew0>period or slew1>period: - debug.info(2,"UNsuccessful simulation: period {0} load {1} slew {2}, " + - "delay0={3}n delay1={4}ns slew0={5}n slew1={6}n".format(period, - load, - slew, - delay0, - delay1, - slew0, - slew1)) + debug.info(2,"UNsuccessful simulation: period {0} load {1} slew {2}, delay0={3}n delay1={4}ns slew0={5}n slew1={6}n".format(period, + load, + slew, + delay0, + delay1, + slew0, + slew1)) return (False,0,0,0,0) else: - debug.info(2,"Successful simulation: period {0} load {1} slew {2}, " + - "delay0={3}n delay1={4}ns slew0={5}n slew1={6}n".format(period, - load, - slew, - delay0, - delay1, - slew0, - slew1)) + debug.info(2,"Successful simulation: period {0} load {1} slew {2}, delay0={3}n delay1={4}ns slew0={5}n slew1={6}n".format(period, + load, + slew, + delay0, + delay1, + slew0, + slew1)) # For debug, you sometimes want to inspect each simulation. #key=raw_input("press return to continue") @@ -345,16 +341,22 @@ class delay(): slew1 = ch.convert_to_float(ch.parse_output("timing", "slew1")) # if it failed or the read was longer than a period if type(delay0)!=float or type(delay1)!=float or type(slew1)!=float or type(slew0)!=float: - debug.info(2,"Invalid measures: Period {0}, " + - "delay0={1}ns, delay1={2}ns slew0={3}ns slew1={4}ns".format(period, delay0, delay1, slew0, slew1)) + debug.info(2,"Invalid measures: Period {0}, delay0={1}ns, delay1={2}ns slew0={3}ns slew1={4}ns".format(period, + delay0, + delay1, + slew0, + slew1)) return False delay0 *= 1e9 delay1 *= 1e9 slew0 *= 1e9 slew1 *= 1e9 if delay0>period or delay1>period or slew0>period or slew1>period: - debug.info(2,"Too long delay/slew: Period {0}, " + - "delay0={1}ns, delay1={2}ns slew0={3}ns slew1={4}ns".format(period, delay0, delay1, slew0, slew1)) + debug.info(2,"Too long delay/slew: Period {0}, delay0={1}ns, delay1={2}ns slew0={3}ns slew1={4}ns".format(period, + delay0, + delay1, + slew0, + slew1)) return False else: if not ch.relative_compare(delay1,feasible_delay1,error_tolerance=0.05): @@ -367,8 +369,11 @@ class delay(): #key=raw_input("press return to continue") - debug.info(2,"Successful period {0}, " + - "delay0={1}ns, delay1={2}ns slew0={3}ns slew1={4}ns".format(period, delay0, delay1, slew0, slew1)) + debug.info(2,"Successful period {0}, delay0={1}ns, delay1={2}ns slew0={3}ns slew1={4}ns".format(period, + delay0, + delay1, + slew0, + slew1)) return True def set_probe(self,probe_address, probe_data): From 63ce754c72f7bcc8b6ad6130bed8c3f29cd36089 Mon Sep 17 00:00:00 2001 From: mguthaus Date: Wed, 7 Feb 2018 18:48:22 -0800 Subject: [PATCH 56/95] Update unit test results --- compiler/tests/21_hspice_delay_test.py | 37 ++++++++--------- compiler/tests/21_ngspice_delay_test.py | 37 ++++++++--------- .../golden/sram_2_16_1_freepdk45_pruned.lib | 40 +++++++++---------- .../golden/sram_2_16_1_scn3me_subm_pruned.lib | 40 +++++++++---------- 4 files changed, 78 insertions(+), 76 deletions(-) diff --git a/compiler/tests/21_hspice_delay_test.py b/compiler/tests/21_hspice_delay_test.py index ebdc9093..aa9212b3 100644 --- a/compiler/tests/21_hspice_delay_test.py +++ b/compiler/tests/21_hspice_delay_test.py @@ -48,26 +48,27 @@ class timing_sram_test(openram_test): loads = [tech.spice["FF_in_cap"]*4] slews = [tech.spice["rise_time"]*2] data = d.analyze(probe_address, probe_data,slews,loads) + #print data if OPTS.tech_name == "freepdk45": - golden_data = {'read1_power': 0.0339194, - 'read0_power': 0.0340617, - 'write0_power': 0.0287779, - 'delay1': [0.0575725], - 'delay0': [0.16744839999999997], - 'min_period': 0.391, - 'write1_power': 0.0299736, - 'slew0': [0.026416], - 'slew1': [0.020441199999999996]} + golden_data = {'read1_power': 0.0345742, + 'read0_power': 0.03526189999999999, + 'write0_power': 0.0270014, + 'delay1': [0.0573107], + 'delay0': [0.07055809999999998], + 'min_period': 0.234, + 'write1_power': 0.0376625, + 'slew0': [0.0284344], + 'slew1': [0.0189185]} elif OPTS.tech_name == "scn3me_subm": - golden_data = {'read1_power': 5.557800000000001, - 'read0_power': 5.5712, - 'write0_power': 3.8325, - 'delay1': [1.0323], - 'delay0': [2.2134], - 'min_period': 6.25, - 'write1_power': 3.6903, - 'slew0': [1.3009000000000002], - 'slew1': [0.983561]} + golden_data = {'read1_power': 11.2474, + 'read0_power': 11.3148, + 'write0_power': 6.9064, + 'delay1': [1.0298], + 'delay0': [1.4102], + 'min_period': 4.063, + 'write1_power': 11.6964, + 'slew0': [1.3118], + 'slew1': [0.9816656]} else: self.assertTrue(False) # other techs fail # Check if no too many or too few results diff --git a/compiler/tests/21_ngspice_delay_test.py b/compiler/tests/21_ngspice_delay_test.py index ccf40f31..be2c04d6 100644 --- a/compiler/tests/21_ngspice_delay_test.py +++ b/compiler/tests/21_ngspice_delay_test.py @@ -46,26 +46,27 @@ class timing_sram_test(openram_test): loads = [tech.spice["FF_in_cap"]*4] slews = [tech.spice["rise_time"]*2] data = d.analyze(probe_address, probe_data,slews,loads) + #print data if OPTS.tech_name == "freepdk45": - golden_data = {'read1_power': 0.03228762, - 'read0_power': 0.03281849, - 'write0_power': 0.02902607, - 'delay1': [0.059081419999999996], - 'delay0': [0.1716648], - 'min_period': 0.391, - 'write1_power': 0.02879424, - 'slew0': [0.02851539], - 'slew1': [0.02319674]} + golden_data = {'read1_power': 0.03308298, + 'read0_power': 0.03866541, + 'write0_power': 0.02695139, + 'delay1': [0.05840294000000001], + 'delay0': [0.40787249999999997], + 'min_period': 0.781, + 'write1_power': 0.037257830000000006, + 'slew0': [0.035826199999999996], + 'slew1': [0.02059459]} elif OPTS.tech_name == "scn3me_subm": - golden_data = {'read1_power': 5.063901, - 'read0_power': 4.926464999999999, - 'write0_power': 3.480712, - 'delay1': [1.044746], - 'delay0': [2.23024], - 'min_period': 6.563, - 'write1_power': 3.1949449999999997, - 'slew0': [1.3469], - 'slew1': [1.035352]} + golden_data = {'read1_power': 10.31395, + 'read0_power': 10.0321, + 'write0_power': 6.072756, + 'delay1': [1.042564], + 'delay0': [1.412224], + 'min_period': 4.688, + 'write1_power': 10.53758, + 'slew0': [1.355812], + 'slew1': [1.03401]} else: self.assertTrue(False) # other techs fail diff --git a/compiler/tests/golden/sram_2_16_1_freepdk45_pruned.lib b/compiler/tests/golden/sram_2_16_1_freepdk45_pruned.lib index 990f264e..e0360805 100644 --- a/compiler/tests/golden/sram_2_16_1_freepdk45_pruned.lib +++ b/compiler/tests/golden/sram_2_16_1_freepdk45_pruned.lib @@ -92,10 +92,10 @@ cell (sram_2_16_1_freepdk45){ internal_power(){ when : "OEb & !clk"; rise_power(scalar){ - values("0.043273977"); + values("0.0370166"); } fall_power(scalar){ - values("0.042322667"); + values("0.026622831"); } } timing(){ @@ -129,10 +129,10 @@ cell (sram_2_16_1_freepdk45){ internal_power(){ when : "!OEb & !clk"; rise_power(scalar){ - values("0.088241812"); + values("0.034203045"); } fall_power(scalar){ - values("0.088188668"); + values("0.039377859"); } } timing(){ @@ -140,24 +140,24 @@ cell (sram_2_16_1_freepdk45){ related_pin : "clk"; timing_type : falling_edge; cell_rise(CELL_TABLE) { - values("0.055, 0.055, 0.063",\ - "0.055, 0.056, 0.063",\ - "0.061, 0.062, 0.069"); + values("0.054, 0.055, 0.061",\ + "0.055, 0.055, 0.062",\ + "0.06, 0.061, 0.067"); } cell_fall(CELL_TABLE) { - values("0.162, 0.163, 0.171",\ - "0.163, 0.164, 0.172",\ - "0.168, 0.169, 0.178"); + values("0.438, 0.439, 0.449",\ + "0.439, 0.44, 0.449",\ + "0.445, 0.446, 0.455"); } rise_transition(CELL_TABLE) { - values("0.015, 0.016, 0.028",\ - "0.015, 0.016, 0.028",\ - "0.015, 0.016, 0.028"); + values("0.013, 0.014, 0.026",\ + "0.013, 0.014, 0.026",\ + "0.013, 0.015, 0.026"); } fall_transition(CELL_TABLE) { - values("0.018, 0.02, 0.035",\ - "0.018, 0.02, 0.035",\ - "0.018, 0.02, 0.035"); + values("0.027, 0.029, 0.043",\ + "0.027, 0.029, 0.043",\ + "0.027, 0.029, 0.043"); } } } @@ -308,20 +308,20 @@ cell (sram_2_16_1_freepdk45){ timing_type :"min_pulse_width"; related_pin : clk; rise_constraint(scalar) { - values("0.2245"); + values("0.449"); } fall_constraint(scalar) { - values("0.2245"); + values("0.449"); } } timing(){ timing_type :"minimum_period"; related_pin : clk; rise_constraint(scalar) { - values("0.449"); + values("0.898"); } fall_constraint(scalar) { - values("0.449"); + values("0.898"); } } } diff --git a/compiler/tests/golden/sram_2_16_1_scn3me_subm_pruned.lib b/compiler/tests/golden/sram_2_16_1_scn3me_subm_pruned.lib index 088b7826..201f0467 100644 --- a/compiler/tests/golden/sram_2_16_1_scn3me_subm_pruned.lib +++ b/compiler/tests/golden/sram_2_16_1_scn3me_subm_pruned.lib @@ -92,10 +92,10 @@ cell (sram_2_16_1_scn3me_subm){ internal_power(){ when : "OEb & !clk"; rise_power(scalar){ - values("3.9245536"); + values("5.5339993"); } fall_power(scalar){ - values("4.1029534"); + values("3.2697936"); } } timing(){ @@ -129,10 +129,10 @@ cell (sram_2_16_1_scn3me_subm){ internal_power(){ when : "!OEb & !clk"; rise_power(scalar){ - values("6.3714394"); + values("5.5897458"); } fall_power(scalar){ - values("6.2007335"); + values("5.460329"); } } timing(){ @@ -140,24 +140,24 @@ cell (sram_2_16_1_scn3me_subm){ related_pin : "clk"; timing_type : falling_edge; cell_rise(CELL_TABLE) { - values("0.668, 0.753, 1.433",\ - "0.671, 0.756, 1.437",\ - "0.723, 0.805, 1.485"); + values("0.664, 0.748, 1.425",\ + "0.667, 0.75, 1.429",\ + "0.718, 0.8, 1.477"); } cell_fall(CELL_TABLE) { - values("1.697, 1.807, 2.782",\ - "1.702, 1.811, 2.787",\ - "1.756, 1.865, 2.839"); + values("0.857, 0.981, 1.971",\ + "0.859, 0.984, 1.976",\ + "0.911, 1.033, 2.025"); } rise_transition(CELL_TABLE) { - values("0.185, 0.334, 1.877",\ - "0.186, 0.336, 1.877",\ - "0.188, 0.339, 1.878"); + values("0.182, 0.331, 1.876",\ + "0.183, 0.333, 1.876",\ + "0.186, 0.336, 1.876"); } fall_transition(CELL_TABLE) { - values("0.235, 0.444, 2.457",\ - "0.234, 0.444, 2.457",\ - "0.234, 0.444, 2.456"); + values("0.361, 0.487, 2.459",\ + "0.365, 0.488, 2.459",\ + "0.369, 0.496, 2.459"); } } } @@ -308,20 +308,20 @@ cell (sram_2_16_1_scn3me_subm){ timing_type :"min_pulse_width"; related_pin : clk; rise_constraint(scalar) { - values("4.6875"); + values("3.125"); } fall_constraint(scalar) { - values("4.6875"); + values("3.125"); } } timing(){ timing_type :"minimum_period"; related_pin : clk; rise_constraint(scalar) { - values("9.375"); + values("6.25"); } fall_constraint(scalar) { - values("9.375"); + values("6.25"); } } } From e8f658d35645f1e6232389d08e9010eec432ef2a Mon Sep 17 00:00:00 2001 From: mguthaus Date: Wed, 7 Feb 2018 19:35:21 -0800 Subject: [PATCH 57/95] Add updated non-pruned unit test results. --- .../tests/golden/sram_2_16_1_freepdk45.lib | 40 +++++++++---------- .../tests/golden/sram_2_16_1_scn3me_subm.lib | 40 +++++++++---------- 2 files changed, 40 insertions(+), 40 deletions(-) diff --git a/compiler/tests/golden/sram_2_16_1_freepdk45.lib b/compiler/tests/golden/sram_2_16_1_freepdk45.lib index 7b56503b..5bae0bc7 100644 --- a/compiler/tests/golden/sram_2_16_1_freepdk45.lib +++ b/compiler/tests/golden/sram_2_16_1_freepdk45.lib @@ -92,10 +92,10 @@ cell (sram_2_16_1_freepdk45){ internal_power(){ when : "OEb & !clk"; rise_power(scalar){ - values("0.032264359"); + values("0.04024341"); } fall_power(scalar){ - values("0.033266382"); + values("0.029869287"); } } timing(){ @@ -129,10 +129,10 @@ cell (sram_2_16_1_freepdk45){ internal_power(){ when : "!OEb & !clk"; rise_power(scalar){ - values("0.039765915"); + values("0.050563718"); } fall_power(scalar){ - values("0.039839075"); + values("0.055867096"); } } timing(){ @@ -140,24 +140,24 @@ cell (sram_2_16_1_freepdk45){ related_pin : "clk"; timing_type : falling_edge; cell_rise(CELL_TABLE) { - values("0.055, 0.056, 0.064",\ - "0.056, 0.057, 0.064",\ - "0.061, 0.062, 0.07"); + values("0.055, 0.056, 0.063",\ + "0.056, 0.057, 0.063",\ + "0.061, 0.062, 0.069"); } cell_fall(CELL_TABLE) { - values("0.17, 0.171, 0.179",\ - "0.171, 0.172, 0.18",\ - "0.176, 0.177, 0.185"); + values("0.442, 0.443, 0.452",\ + "0.442, 0.443, 0.453",\ + "0.448, 0.449, 0.458"); } rise_transition(CELL_TABLE) { - values("0.015, 0.016, 0.028",\ - "0.015, 0.016, 0.028",\ - "0.015, 0.016, 0.028"); + values("0.013, 0.015, 0.026",\ + "0.013, 0.015, 0.026",\ + "0.013, 0.015, 0.026"); } fall_transition(CELL_TABLE) { - values("0.019, 0.02, 0.035",\ - "0.019, 0.02, 0.035",\ - "0.019, 0.02, 0.035"); + values("0.029, 0.031, 0.044",\ + "0.029, 0.031, 0.044",\ + "0.029, 0.031, 0.044"); } } } @@ -308,20 +308,20 @@ cell (sram_2_16_1_freepdk45){ timing_type :"min_pulse_width"; related_pin : clk; rise_constraint(scalar) { - values("0.2345"); + values("0.449"); } fall_constraint(scalar) { - values("0.2345"); + values("0.449"); } } timing(){ timing_type :"minimum_period"; related_pin : clk; rise_constraint(scalar) { - values("0.469"); + values("0.898"); } fall_constraint(scalar) { - values("0.469"); + values("0.898"); } } } diff --git a/compiler/tests/golden/sram_2_16_1_scn3me_subm.lib b/compiler/tests/golden/sram_2_16_1_scn3me_subm.lib index 5e3c613c..40941598 100644 --- a/compiler/tests/golden/sram_2_16_1_scn3me_subm.lib +++ b/compiler/tests/golden/sram_2_16_1_scn3me_subm.lib @@ -92,10 +92,10 @@ cell (sram_2_16_1_scn3me_subm){ internal_power(){ when : "OEb & !clk"; rise_power(scalar){ - values("3.8220424"); + values("6.0607574"); } fall_power(scalar){ - values("4.3085394"); + values("3.8016626"); } } timing(){ @@ -129,10 +129,10 @@ cell (sram_2_16_1_scn3me_subm){ internal_power(){ when : "!OEb & !clk"; rise_power(scalar){ - values("6.224058"); + values("6.8609238"); } fall_power(scalar){ - values("6.0499775"); + values("5.9579654"); } } timing(){ @@ -140,24 +140,24 @@ cell (sram_2_16_1_scn3me_subm){ related_pin : "clk"; timing_type : falling_edge; cell_rise(CELL_TABLE) { - values("0.676, 0.761, 1.441",\ - "0.679, 0.763, 1.444",\ - "0.731, 0.813, 1.493"); + values("0.676, 0.761, 1.439",\ + "0.679, 0.763, 1.443",\ + "0.731, 0.813, 1.491"); } cell_fall(CELL_TABLE) { - values("1.689, 1.797, 2.773",\ - "1.693, 1.802, 2.778",\ - "1.747, 1.856, 2.831"); + values("0.866, 0.99, 1.98",\ + "0.868, 0.993, 1.985",\ + "0.92, 1.042, 2.034"); } rise_transition(CELL_TABLE) { - values("0.186, 0.335, 1.875",\ - "0.187, 0.337, 1.875",\ - "0.19, 0.34, 1.875"); + values("0.184, 0.333, 1.877",\ + "0.185, 0.334, 1.877",\ + "0.188, 0.337, 1.877"); } fall_transition(CELL_TABLE) { - values("0.235, 0.445, 2.457",\ - "0.235, 0.445, 2.457",\ - "0.235, 0.445, 2.457"); + values("0.363, 0.486, 2.459",\ + "0.367, 0.488, 2.459",\ + "0.37, 0.495, 2.46"); } } } @@ -308,20 +308,20 @@ cell (sram_2_16_1_scn3me_subm){ timing_type :"min_pulse_width"; related_pin : clk; rise_constraint(scalar) { - values("4.6875"); + values("3.125"); } fall_constraint(scalar) { - values("4.6875"); + values("3.125"); } } timing(){ timing_type :"minimum_period"; related_pin : clk; rise_constraint(scalar) { - values("9.375"); + values("6.25"); } fall_constraint(scalar) { - values("9.375"); + values("6.25"); } } } From 54c21f628252b8f894cc17f902c7bcef2c9978b3 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Wed, 7 Feb 2018 21:07:11 -0800 Subject: [PATCH 58/95] Added method=gear back to ngspice simulation to fix convergence bug. --- compiler/characterizer/stimuli.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/compiler/characterizer/stimuli.py b/compiler/characterizer/stimuli.py index e8b78e48..b82d6aa7 100644 --- a/compiler/characterizer/stimuli.py +++ b/compiler/characterizer/stimuli.py @@ -209,12 +209,14 @@ def write_control(stim_file, end_time): """ Write the control cards to run and end the simulation """ # UIC is needed for ngspice to converge stim_file.write(".TRAN 5p {0}n UIC\n".format(end_time)) - # if OPTS.spice_name == "ngspice": - # # ngspice sometimes has convergence problems if not using gear method - # # which is more accurate, but slower than the default trapezoid method - # stim_file.write(".OPTIONS POST=1 RUNLVL=4 PROBE method=gear\n") - # else: - stim_file.write(".OPTIONS POST=1 RUNLVL=4 PROBE\n") + if OPTS.spice_name == "ngspice": + # ngspice sometimes has convergence problems if not using gear method + # which is more accurate, but slower than the default trapezoid method + # Do not remove this or it may not converge due to some "pa_00" nodes + # unless you figure out what these are. + stim_file.write(".OPTIONS POST=1 RUNLVL=4 PROBE method=gear\n") + else: + stim_file.write(".OPTIONS POST=1 RUNLVL=4 PROBE\n") # create plots for all signals stim_file.write("* probe is used for hspice/xa, while plot is used in ngspice\n") From 6c89f7965d08ac08770421f947bd4a89936c2fdc Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Thu, 8 Feb 2018 12:47:19 -0800 Subject: [PATCH 59/95] Refactor openram.py. --- compiler/globals.py | 68 ++++++++++++++++++++++----- compiler/openram.py | 111 +++++++------------------------------------- compiler/sram.py | 49 ++++++++++++++++++- 3 files changed, 122 insertions(+), 106 deletions(-) diff --git a/compiler/globals.py b/compiler/globals.py index 84b831f2..5eda7d52 100644 --- a/compiler/globals.py +++ b/compiler/globals.py @@ -16,13 +16,7 @@ USAGE = "Usage: openram.py [options] \nUse -h for help.\n" # Anonymous object that will be the options OPTS = options.options() -# check that we are not using version 3 and at least 2.7 -major_python_version = sys.version_info.major -minor_python_version = sys.version_info.minor -if not (major_python_version == 2 and minor_python_version >= 7): - debug.error("Python 2.7 is required.",-1) - -def parse_args(): +def parse_args(is_unit_test=True): """ Parse the optional arguments for OpenRAM """ global OPTS @@ -36,8 +30,6 @@ def parse_args(): help="Output file(s) location"), optparse.make_option("-n", "--nocheck", action="store_false", help="Disable inline LVS/DRC checks", dest="check_lvsdrc"), - optparse.make_option("-q", "--quiet", action="store_false", dest="print_banner", - help="Don\'t display banner"), optparse.make_option("-v", "--verbose", action="count", dest="debug_level", help="Increase the verbosity level"), optparse.make_option("-t", "--tech", dest="tech_name", @@ -66,13 +58,19 @@ def parse_args(): # Alias SCMOS to AMI 0.5um if OPTS.tech_name == "scmos": OPTS.tech_name = "scn3me_subm" - + + # Check that we have a single configuration file as argument. + OPTS.is_unit_test=is_unit_test + if not OPTS.is_unit_test and len(args) < 1: + print(USAGE) + sys.exit(2) + return (options, args) def print_banner(): """ Conditionally print the banner to stdout """ global OPTS - if not OPTS.print_banner: + if OPTS.is_unit_test: return print("|==============================================================================|") @@ -89,8 +87,17 @@ def print_banner(): print("|==============================================================================|") +def check_versions(): + """ check that we are not using version 3 and at least 2.7 """ + major_python_version = sys.version_info.major + minor_python_version = sys.version_info.minor + if not (major_python_version == 2 and minor_python_version >= 7): + debug.error("Python 2.7 is required.",-1) + + def init_openram(config_file): """Initialize the technology, paths, simulators, etc.""" + check_versions() debug.info(1,"Initializing OpenRAM...") @@ -100,6 +107,8 @@ def init_openram(config_file): import_tech() + report_status() + def get_tool(tool_type, preferences): """ @@ -173,6 +182,7 @@ def read_config(config_file): def end_openram(): """ Clean up openram for a proper exit """ cleanup_paths() + @@ -270,3 +280,39 @@ def import_tech(): debug.error("Nonexistent technology_setup_file: {0}.py".format(filename)) sys.exit(1) +def print_time(name, now_time, last_time=None): + if last_time: + time = round((now_time-last_time).total_seconds(),1) + else: + time = now_time + print("** {0}: {1} seconds".format(name,time)) + return now_time + + +def report_status(): + """ Check for valid arguments and report the info about the SRAM being generated """ + # Check if all arguments are integers for bits, size, banks + if type(OPTS.word_size)!=int: + debug.error("{0} is not an integer in config file.".format(OPTS.word_size)) + if type(OPTS.num_words)!=int: + debug.error("{0} is not an integer in config file.".format(OPTS.sram_size)) + if type(OPTS.num_banks)!=int: + debug.error("{0} is not an integer in config file.".format(OPTS.num_banks)) + + if not OPTS.tech_name: + debug.error("Tech name must be specified in config file.") + + if (OPTS.output_name == ""): + OPTS.output_name = "sram_{0}_{1}_{2}_{3}".format(OPTS.word_size, + OPTS.num_words, + OPTS.num_banks, + OPTS.OPTS.tech_name) + if not OPTS.is_unit_test: + print("Output files are " + OPTS.output_name + ".(sp|gds|v|lib|lef)") + print("Technology: {0}".format(OPTS.tech_name)) + print("Word size: {0}\nWords: {1}\nBanks: {2}".format(OPTS.word_size, + OPTS.num_words, + OPTS.num_banks)) + if not OPTS.check_lvsdrc: + print("DRC/LVS/PEX checking is disabled.") + diff --git a/compiler/openram.py b/compiler/openram.py index 64e32306..95847db1 100755 --- a/compiler/openram.py +++ b/compiler/openram.py @@ -14,116 +14,39 @@ import sys,os import datetime import re import importlib -import globals +from globals import * -(OPTS, args) = globals.parse_args() - -def print_time(name, now_time, last_time=None): - if last_time: - time = round((now_time-last_time).total_seconds(),1) - else: - time = now_time - print("** {0}: {1} seconds".format(name,time)) - return now_time +(OPTS, args) = parse_args(is_unit_test=False) # These depend on arguments, so don't load them until now. import debug -# required positional args for using openram main exe -if len(args) < 1: - print(globals.USAGE) - sys.exit(2) +# Only print banner here so it's not in unit tests +print_banner() -globals.print_banner() +init_openram(args[0]) -globals.init_openram(args[0]) - -# Check if all arguments are integers for bits, size, banks -if type(OPTS.word_size)!=int: - debug.error("{0} is not an integer in config file.".format(OPTS.word_size)) -if type(OPTS.num_words)!=int: - debug.error("{0} is not an integer in config file.".format(OPTS.sram_size)) -if type(OPTS.num_banks)!=int: - debug.error("{0} is not an integer in config file.".format(OPTS.num_banks)) - -if not OPTS.tech_name: - debug.error("Tech name must be specified in config file.") - -word_size = OPTS.word_size -num_words = OPTS.num_words -num_banks = OPTS.num_banks - -if (OPTS.output_name == ""): - OPTS.output_name = "sram_{0}_{1}_{2}_{3}".format(word_size, - num_words, - num_banks, - OPTS.tech_name) - -print("Output files are " + OPTS.output_name + ".(sp|gds|v|lib|lef)") - -print("Technology: {0}".format(OPTS.tech_name)) -print("Word size: {0}\nWords: {1}\nBanks: {2}".format(word_size,num_words,num_banks)) - -# only start importing modules after we have the config file +# Start importing design modules after we have the config file import verify import sram +# Keep track of running stats start_time = datetime.datetime.now() last_time = start_time -print_time("Start",datetime.datetime.now()) -if not OPTS.check_lvsdrc: - print("DRC/LVS/PEX checking is disabled.") +print_time("Start",last_time) + # import SRAM test generation -s = sram.sram(word_size=word_size, - num_words=num_words, - num_banks=num_banks, +s = sram.sram(word_size=OPTS.word_size, + num_words=OPTS.num_words, + num_banks=OPTS.num_banks, name=OPTS.output_name) last_time=print_time("SRAM creation", datetime.datetime.now(), last_time) # Output the files for the resulting SRAM +s.save_output(last_time) -spname = OPTS.output_path + s.name + ".sp" -print("SP: Writing to {0}".format(spname)) -s.sp_write(spname) -last_time=print_time("Spice writing", datetime.datetime.now(), last_time) - -# Output the extracted design -sram_file = spname -if OPTS.use_pex: - sram_file = OPTS.output_path + "temp_pex.sp" - verify.run_pex(s.name, gdsname, spname, output=sram_file) - -# Characterize the design -from characterizer import lib -libname = OPTS.output_path + s.name + ".lib" -print("LIB: Writing to {0}".format(libname)) -if OPTS.analytical_delay: - print("Using analytical delay models (no characterization)") -else: - if OPTS.spice_name!="": - print("Performing simulation-based characterization with {}".format(OPTS.spice_name)) - if OPTS.trim_netlist: - print("Trimming netlist to speed up characterization.") -lib.lib(libname,s,sram_file) -last_time=print_time("Characterization", datetime.datetime.now(), last_time) - -# Write the layout -gdsname = OPTS.output_path + s.name + ".gds" -print("GDS: Writing to {0}".format(gdsname)) -s.gds_write(gdsname) -last_time=print_time("GDS", datetime.datetime.now(), last_time) - -# Create a LEF physical model -lefname = OPTS.output_path + s.name + ".lef" -print("LEF: Writing to {0}".format(lefname)) -s.lef_write(lefname) -last_time=print_time("LEF", datetime.datetime.now(), last_time) - -# Write a verilog model -vname = OPTS.output_path + s.name + ".v" -print("Verilog: Writing to {0}".format(vname)) -s.verilog_write(vname) -last_time=print_time("Verilog", datetime.datetime.now(), last_time) - -globals.end_openram() +# Delete temp files etc. +end_openram() print_time("End",datetime.datetime.now(), start_time) + + diff --git a/compiler/sram.py b/compiler/sram.py index 7690b1e7..0e90c7f2 100644 --- a/compiler/sram.py +++ b/compiler/sram.py @@ -8,7 +8,7 @@ from bank import bank import datetime import getpass from vector import vector -from globals import OPTS +from globals import OPTS, print_time class sram(design.design): @@ -1009,3 +1009,50 @@ class sram(design.design): def analytical_delay(self,slew,load): """ LH and HL are the same in analytical model. """ return self.bank.analytical_delay(slew,load) + + + def save_output(self, last_time): + """ Save all the output files while reporting time to do it as well. """ + + spname = OPTS.output_path + self.name + ".sp" + print("SP: Writing to {0}".format(spname)) + self.sp_write(spname) + last_time=print_time("Spice writing", datetime.datetime.now(), last_time) + + # Output the extracted design + sram_file = spname + if OPTS.use_pex: + sram_file = OPTS.output_path + "temp_pex.sp" + verify.run_pex(self.name, gdsname, spname, output=sram_file) + + # Characterize the design + from characterizer import lib + libname = OPTS.output_path + self.name + ".lib" + print("LIB: Writing to {0}".format(libname)) + if OPTS.analytical_delay: + print("Using analytical delay models (no characterization)") + else: + if OPTS.spice_name!="": + print("Performing simulation-based characterization with {}".format(OPTS.spice_name)) + if OPTS.trim_netlist: + print("Trimming netlist to speed up characterization.") + lib.lib(libname,self,sram_file) + last_time=print_time("Characterization", datetime.datetime.now(), last_time) + + # Write the layout + gdsname = OPTS.output_path + self.name + ".gds" + print("GDS: Writing to {0}".format(gdsname)) + self.gds_write(gdsname) + last_time=print_time("GDS", datetime.datetime.now(), last_time) + + # Create a LEF physical model + lefname = OPTS.output_path + self.name + ".lef" + print("LEF: Writing to {0}".format(lefname)) + self.lef_write(lefname) + last_time=print_time("LEF", datetime.datetime.now(), last_time) + + # Write a verilog model + vname = OPTS.output_path + self.name + ".v" + print("Verilog: Writing to {0}".format(vname)) + self.verilog_write(vname) + last_time=print_time("Verilog", datetime.datetime.now(), last_time) From 17716191c11b1dc2dc2da3b2b7bdcee7c45583b3 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Thu, 8 Feb 2018 13:11:18 -0800 Subject: [PATCH 60/95] Clean up time statements in openram output --- compiler/characterizer/lib.py | 4 ++-- compiler/globals.py | 2 +- compiler/openram.py | 6 ++--- compiler/sram.py | 41 ++++++++++++++++++++++++----------- 4 files changed, 33 insertions(+), 20 deletions(-) diff --git a/compiler/characterizer/lib.py b/compiler/characterizer/lib.py index fb93a105..7bab820b 100644 --- a/compiler/characterizer/lib.py +++ b/compiler/characterizer/lib.py @@ -12,9 +12,9 @@ from globals import OPTS class lib: """ lib file generation.""" - def __init__(self, libname, sram, spfile, use_model=OPTS.analytical_delay): + def __init__(self, libname, sram, sp_file, use_model=OPTS.analytical_delay): self.sram = sram - self.sp_file = spfile + self.sp_file = sp_file self.use_model = use_model self.name = sram.name self.num_words = sram.num_words diff --git a/compiler/globals.py b/compiler/globals.py index 5eda7d52..c300c74c 100644 --- a/compiler/globals.py +++ b/compiler/globals.py @@ -281,12 +281,12 @@ def import_tech(): sys.exit(1) def print_time(name, now_time, last_time=None): + """ Print a statement about the time delta. """ if last_time: time = round((now_time-last_time).total_seconds(),1) else: time = now_time print("** {0}: {1} seconds".format(name,time)) - return now_time def report_status(): diff --git a/compiler/openram.py b/compiler/openram.py index 95847db1..2c9fb282 100755 --- a/compiler/openram.py +++ b/compiler/openram.py @@ -32,18 +32,16 @@ import sram # Keep track of running stats start_time = datetime.datetime.now() -last_time = start_time -print_time("Start",last_time) +print_time("Start",start_time) # import SRAM test generation s = sram.sram(word_size=OPTS.word_size, num_words=OPTS.num_words, num_banks=OPTS.num_banks, name=OPTS.output_name) -last_time=print_time("SRAM creation", datetime.datetime.now(), last_time) # Output the files for the resulting SRAM -s.save_output(last_time) +s.save_output() # Delete temp files etc. end_openram() diff --git a/compiler/sram.py b/compiler/sram.py index 0e90c7f2..9fdc9840 100644 --- a/compiler/sram.py +++ b/compiler/sram.py @@ -45,6 +45,7 @@ class sram(design.design): debug.info(2, "create sram of size {0} with {1} num of words".format(self.word_size, self.num_words)) + start_time = datetime.datetime.now() design.design.__init__(self, name) @@ -74,6 +75,9 @@ class sram(design.design): self.DRC_LVS(final_verification=True) + print_time("SRAM creation", datetime.datetime.now(), start_time) + + def compute_sizes(self): """ Computes the organization of the memory using bitcell size by trying to make it square.""" @@ -1011,21 +1015,29 @@ class sram(design.design): return self.bank.analytical_delay(slew,load) - def save_output(self, last_time): + def save_output(self): """ Save all the output files while reporting time to do it as well. """ - + + # Save the spice file + start_time = datetime.datetime.now() spname = OPTS.output_path + self.name + ".sp" print("SP: Writing to {0}".format(spname)) self.sp_write(spname) - last_time=print_time("Spice writing", datetime.datetime.now(), last_time) - - # Output the extracted design - sram_file = spname + print_time("Spice writing", datetime.datetime.now(), start_time) + + # Save the extracted spice file if OPTS.use_pex: - sram_file = OPTS.output_path + "temp_pex.sp" - verify.run_pex(self.name, gdsname, spname, output=sram_file) + start_time = datetime.datetime.now() + # Output the extracted design if requested + sp_file = OPTS.output_path + "temp_pex.sp" + verify.run_pex(self.name, gdsname, spname, output=sp_file) + print_time("Extraction", datetime.datetime.now(), start_time) + else: + # Use generated spice file for characterization + sp_file = spname # Characterize the design + start_time = datetime.datetime.now() from characterizer import lib libname = OPTS.output_path + self.name + ".lib" print("LIB: Writing to {0}".format(libname)) @@ -1036,23 +1048,26 @@ class sram(design.design): print("Performing simulation-based characterization with {}".format(OPTS.spice_name)) if OPTS.trim_netlist: print("Trimming netlist to speed up characterization.") - lib.lib(libname,self,sram_file) - last_time=print_time("Characterization", datetime.datetime.now(), last_time) + lib.lib(libname=libname,sram=self,sp_file=sp_file) + print_time("Characterization", datetime.datetime.now(), start_time) # Write the layout + start_time = datetime.datetime.now() gdsname = OPTS.output_path + self.name + ".gds" print("GDS: Writing to {0}".format(gdsname)) self.gds_write(gdsname) - last_time=print_time("GDS", datetime.datetime.now(), last_time) + print_time("GDS", datetime.datetime.now(), start_time) # Create a LEF physical model + start_time = datetime.datetime.now() lefname = OPTS.output_path + self.name + ".lef" print("LEF: Writing to {0}".format(lefname)) self.lef_write(lefname) - last_time=print_time("LEF", datetime.datetime.now(), last_time) + print_time("LEF", datetime.datetime.now(), start_time) # Write a verilog model + start_time = datetime.datetime.now() vname = OPTS.output_path + self.name + ".v" print("Verilog: Writing to {0}".format(vname)) self.verilog_write(vname) - last_time=print_time("Verilog", datetime.datetime.now(), last_time) + print_time("Verilog", datetime.datetime.now(), start_time) From d684189241eee598bc9802843f5ad12fa630d063 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Thu, 8 Feb 2018 14:58:55 -0800 Subject: [PATCH 61/95] Don't output text in SRAM during unit test. --- compiler/sram.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/compiler/sram.py b/compiler/sram.py index 9fdc9840..72815dd5 100644 --- a/compiler/sram.py +++ b/compiler/sram.py @@ -75,7 +75,8 @@ class sram(design.design): self.DRC_LVS(final_verification=True) - print_time("SRAM creation", datetime.datetime.now(), start_time) + if not OPTS.is_unit_test: + print_time("SRAM creation", datetime.datetime.now(), start_time) def compute_sizes(self): From 3c86f94549577b08dd2f08ba8fd7aa3e65527341 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Thu, 8 Feb 2018 15:28:49 -0800 Subject: [PATCH 62/95] Change argument name for lib in tests as well. --- compiler/tests/23_lib_sram_model_test.py | 2 +- compiler/tests/23_lib_sram_prune_test.py | 2 +- compiler/tests/23_lib_sram_test.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/compiler/tests/23_lib_sram_model_test.py b/compiler/tests/23_lib_sram_model_test.py index 9b6ff73a..5d47c287 100644 --- a/compiler/tests/23_lib_sram_model_test.py +++ b/compiler/tests/23_lib_sram_model_test.py @@ -32,7 +32,7 @@ class lib_test(openram_test): filename = s.name + "_analytical.lib" libname = OPTS.openram_temp + filename - lib.lib(libname=libname,sram=s,spfile=tempspice,use_model=True) + lib.lib(libname=libname,sram=s,sp_file=tempspice,use_model=True) # let's diff the result with a golden model golden = "{0}/golden/{1}".format(os.path.dirname(os.path.realpath(__file__)),filename) diff --git a/compiler/tests/23_lib_sram_prune_test.py b/compiler/tests/23_lib_sram_prune_test.py index 9c9f6667..668a56e1 100644 --- a/compiler/tests/23_lib_sram_prune_test.py +++ b/compiler/tests/23_lib_sram_prune_test.py @@ -41,7 +41,7 @@ class lib_test(openram_test): filename = s.name + "_pruned.lib" libname = OPTS.openram_temp + filename - lib.lib(libname=libname,sram=s,spfile=tempspice,use_model=False) + lib.lib(libname=libname,sram=s,sp_file=tempspice,use_model=False) # let's diff the result with a golden model golden = "{0}/golden/{1}".format(os.path.dirname(os.path.realpath(__file__)),filename) diff --git a/compiler/tests/23_lib_sram_test.py b/compiler/tests/23_lib_sram_test.py index c1d2eb6a..722854b3 100644 --- a/compiler/tests/23_lib_sram_test.py +++ b/compiler/tests/23_lib_sram_test.py @@ -41,7 +41,7 @@ class lib_test(openram_test): filename = s.name + ".lib" libname = OPTS.openram_temp + filename - lib.lib(libname=libname,sram=s,spfile=tempspice,use_model=False) + lib.lib(libname=libname,sram=s,sp_file=tempspice,use_model=False) # let's diff the result with a golden model golden = "{0}/golden/{1}".format(os.path.dirname(os.path.realpath(__file__)),filename) From f4a99be9d8f1cc84dd13a8df98d7343583987c5f Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Thu, 8 Feb 2018 16:08:20 -0800 Subject: [PATCH 63/95] Add poly_to_field_poly rule in SCMOS --- technology/scn3me_subm/tech/tech.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/technology/scn3me_subm/tech/tech.py b/technology/scn3me_subm/tech/tech.py index b797b81b..d3064c34 100755 --- a/technology/scn3me_subm/tech/tech.py +++ b/technology/scn3me_subm/tech/tech.py @@ -76,7 +76,7 @@ drc["pwell_to_nwell"] = 0 drc["minwidth_well"] = 3.6 # 3.1 Minimum width drc["minwidth_poly"] = 0.6 -# 3.2/3.2.a Minimum spacing over field/active +# 3.2 Minimum spacing over active drc["poly_to_poly"] = 0.9 # 3.3 Minimum gate extension of active drc["poly_extend_active"] = 0.6 @@ -84,6 +84,8 @@ drc["poly_extend_active"] = 0.6 drc["poly_to_polycontact"] = 1.2 # ?? drc["active_enclosure_gate"] = 0.0 +# 3.2.a Minimum spacing over field poly +drc["poly_to_field_poly"] = 0.9 # 3.5 Minimum field poly to active drc["poly_to_active"] = 0.3 # Not a rule From 8719a19377f11b93f70346e8b5ec4e8dc3f289b4 Mon Sep 17 00:00:00 2001 From: mguthaus Date: Fri, 9 Feb 2018 09:26:13 -0800 Subject: [PATCH 64/95] Move parameter setting to config reading rather than status function. --- compiler/globals.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/compiler/globals.py b/compiler/globals.py index c300c74c..d4c38847 100644 --- a/compiler/globals.py +++ b/compiler/globals.py @@ -167,6 +167,13 @@ def read_config(config_file): OPTS.output_path += "/" debug.info(1, "Output saved in " + OPTS.output_path) + # If config didn't set output name, make a reasonable default. + if (OPTS.output_name == ""): + OPTS.output_name = "sram_{0}_{1}_{2}_{3}".format(OPTS.word_size, + OPTS.num_words, + OPTS.num_banks, + OPTS.OPTS.tech_name) + # Don't delete the output dir, it may have other files! # make the directory if it doesn't exist try: @@ -302,11 +309,6 @@ def report_status(): if not OPTS.tech_name: debug.error("Tech name must be specified in config file.") - if (OPTS.output_name == ""): - OPTS.output_name = "sram_{0}_{1}_{2}_{3}".format(OPTS.word_size, - OPTS.num_words, - OPTS.num_banks, - OPTS.OPTS.tech_name) if not OPTS.is_unit_test: print("Output files are " + OPTS.output_name + ".(sp|gds|v|lib|lef)") print("Technology: {0}".format(OPTS.tech_name)) From 5aa92a6549ae56b7aefb9215e146eb12a5d1d6f1 Mon Sep 17 00:00:00 2001 From: mguthaus Date: Fri, 9 Feb 2018 09:53:28 -0800 Subject: [PATCH 65/95] Reorganize top-level functions a bit more. Add help info to banner. --- compiler/globals.py | 47 ++++++++++++++++++++++++--------------------- compiler/openram.py | 14 ++++++++++++-- 2 files changed, 37 insertions(+), 24 deletions(-) diff --git a/compiler/globals.py b/compiler/globals.py index d4c38847..975e22fb 100644 --- a/compiler/globals.py +++ b/compiler/globals.py @@ -16,7 +16,7 @@ USAGE = "Usage: openram.py [options] \nUse -h for help.\n" # Anonymous object that will be the options OPTS = options.options() -def parse_args(is_unit_test=True): +def parse_args(): """ Parse the optional arguments for OpenRAM """ global OPTS @@ -59,12 +59,6 @@ def parse_args(is_unit_test=True): if OPTS.tech_name == "scmos": OPTS.tech_name = "scn3me_subm" - # Check that we have a single configuration file as argument. - OPTS.is_unit_test=is_unit_test - if not OPTS.is_unit_test and len(args) < 1: - print(USAGE) - sys.exit(2) - return (options, args) def print_banner(): @@ -83,19 +77,28 @@ def print_banner(): print("|=========" + "VLSI Computer Architecture Research Group".center(60) + "=========|") print("|=========" + "Oklahoma State University ECE Department".center(60) + "=========|") print("|=========" + " ".center(60) + "=========|") - print("|=========" + OPTS.openram_temp.center(60) + "=========|") + user_info = "Usage help: openram-user-group@ucsc.edu" + print("|=========" + user_info.center(60) + "=========|") + dev_info = "Development help: openram-dev-group@ucsc.edu" + print("|=========" + dev_info.center(60) + "=========|") + temp_info = "Temp dir: {}".format(OPTS.openram_temp) + print("|=========" + temp_info.center(60) + "=========|") print("|==============================================================================|") def check_versions(): - """ check that we are not using version 3 and at least 2.7 """ + """ Run some checks of required software versions. """ + + # check that we are not using version 3 and at least 2.7 major_python_version = sys.version_info.major minor_python_version = sys.version_info.minor if not (major_python_version == 2 and minor_python_version >= 7): debug.error("Python 2.7 is required.",-1) - -def init_openram(config_file): + # FIXME: Check versions of other tools here?? + # or, this could be done in each module (e.g. verify, characterizer, etc.) + +def init_openram(config_file, is_unit_test=True): """Initialize the technology, paths, simulators, etc.""" check_versions() @@ -103,11 +106,10 @@ def init_openram(config_file): setup_paths() - read_config(config_file) + read_config(config_file, is_unit_test) import_tech() - report_status() def get_tool(tool_type, preferences): @@ -129,7 +131,7 @@ def get_tool(tool_type, preferences): -def read_config(config_file): +def read_config(config_file, is_unit_test=True): """ Read the configuration file that defines a few parameters. The config file is just a Python file that defines some config @@ -167,6 +169,8 @@ def read_config(config_file): OPTS.output_path += "/" debug.info(1, "Output saved in " + OPTS.output_path) + OPTS.is_unit_test=is_unit_test + # If config didn't set output name, make a reasonable default. if (OPTS.output_name == ""): OPTS.output_name = "sram_{0}_{1}_{2}_{3}".format(OPTS.word_size, @@ -309,12 +313,11 @@ def report_status(): if not OPTS.tech_name: debug.error("Tech name must be specified in config file.") - if not OPTS.is_unit_test: - print("Output files are " + OPTS.output_name + ".(sp|gds|v|lib|lef)") - print("Technology: {0}".format(OPTS.tech_name)) - print("Word size: {0}\nWords: {1}\nBanks: {2}".format(OPTS.word_size, - OPTS.num_words, - OPTS.num_banks)) - if not OPTS.check_lvsdrc: - print("DRC/LVS/PEX checking is disabled.") + print("Output files are " + OPTS.output_name + ".(sp|gds|v|lib|lef)") + print("Technology: {0}".format(OPTS.tech_name)) + print("Word size: {0}\nWords: {1}\nBanks: {2}".format(OPTS.word_size, + OPTS.num_words, + OPTS.num_banks)) + if not OPTS.check_lvsdrc: + print("DRC/LVS/PEX checking is disabled.") diff --git a/compiler/openram.py b/compiler/openram.py index 2c9fb282..f1660477 100755 --- a/compiler/openram.py +++ b/compiler/openram.py @@ -16,15 +16,25 @@ import re import importlib from globals import * -(OPTS, args) = parse_args(is_unit_test=False) +(OPTS, args) = parse_args() + +# Check that we are left with a single configuration file as argument. +if len(args) != 1: + print(USAGE) + sys.exit(2) + # These depend on arguments, so don't load them until now. import debug + +init_openram(config_file=args[0], is_unit_test=False) + # Only print banner here so it's not in unit tests print_banner() -init_openram(args[0]) +# Output info about this run +report_status() # Start importing design modules after we have the config file import verify From d62da4432901cc737c72aabf3f9a6a5c02d596e9 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 9 Feb 2018 10:03:09 -0800 Subject: [PATCH 66/95] Fix bug where path does not obey specified width. --- compiler/hierarchy_layout.py | 2 +- compiler/path.py | 9 +++++---- compiler/wire.py | 6 ++++-- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/compiler/hierarchy_layout.py b/compiler/hierarchy_layout.py index 12edb1d9..81ca717d 100644 --- a/compiler/hierarchy_layout.py +++ b/compiler/hierarchy_layout.py @@ -308,7 +308,7 @@ class layout(lef.lef): path.path(obj=self, layer=layer, position_list=coordinates, - width=drc["minwidth_{}".format(layer)]) + width=width) def add_route(self, design, layers, coordinates): """Connects a routing path on given layer,coordinates,width. The diff --git a/compiler/path.py b/compiler/path.py index 2ce313fb..ed058fef 100644 --- a/compiler/path.py +++ b/compiler/path.py @@ -92,7 +92,8 @@ class path(): self.add_line(layer_name=self.layer_name, length=abs(line_length), offset=offset, - orientation="horizontal") + orientation="horizontal", + layer_width=self.layer_width) # if we have y motion elif pl[index][1] != pl[index + 1][1]: line_length = pl[index + 1][1] - pl[index][1] @@ -104,15 +105,15 @@ class path(): self.add_line(layer_name=self.layer_name, length=abs(line_length), offset=offset, - orientation="vertical") + orientation="vertical", + layer_width=self.layer_width) - def add_line(self, layer_name, length, offset, orientation): + def add_line(self, layer_name, length, offset, orientation, layer_width): """ straight line object with layer_minwidth (orientation: "vertical" or "horizontal") default is vertical """ - layer_width = drc["minwidth_{0}".format(layer_name)] width = layer_width height = length diff --git a/compiler/wire.py b/compiler/wire.py index 08670bb5..9220c77a 100644 --- a/compiler/wire.py +++ b/compiler/wire.py @@ -83,7 +83,8 @@ class wire(path): self.add_line(layer_name=self.horiz_layer_name, length=abs(line_length), offset=temp_offset, - orientation="horizontal") + orientation="horizontal", + layer_width=self.horiz_layer_width) elif pl[index][1] != pl[index + 1][1]: line_length = pl[index + 1][1] - pl[index][1] temp_offset = [pl[index][0] - 0.5 * self.vert_layer_width, @@ -94,7 +95,8 @@ class wire(path): self.add_line(layer_name=self.vert_layer_name, length=abs(line_length), offset=temp_offset, - orientation="vertical") + orientation="vertical", + layer_width=self.vert_layer_width) def assert_node(self, A, B): """ Check if the node movements are not big enough for the From 7100d6f9041ea058a9b9643675748799412c4509 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 9 Feb 2018 10:25:24 -0800 Subject: [PATCH 67/95] Organize top-level files into subdirs. --- compiler/{ => base}/contact.py | 0 compiler/{ => base}/design.py | 0 compiler/{ => base}/geometry.py | 0 compiler/{ => base}/hierarchy_layout.py | 0 compiler/{ => base}/hierarchy_spice.py | 0 compiler/{ => base}/path.py | 0 compiler/{ => base}/pin_layout.py | 0 compiler/{ => base}/vector.py | 0 compiler/{ => base}/wire.py | 0 compiler/globals.py | 17 +++++++---------- compiler/{ => modules}/bank.py | 0 compiler/{ => modules}/bitcell.py | 0 compiler/{ => modules}/bitcell_array.py | 0 compiler/{ => modules}/control_logic.py | 0 compiler/{ => modules}/delay_chain.py | 0 compiler/{ => modules}/hierarchical_decoder.py | 0 .../{ => modules}/hierarchical_predecode.py | 0 .../{ => modules}/hierarchical_predecode2x4.py | 0 .../{ => modules}/hierarchical_predecode3x8.py | 0 compiler/{ => modules}/ms_flop.py | 0 compiler/{ => modules}/ms_flop_array.py | 0 compiler/{ => modules}/precharge.py | 0 compiler/{ => modules}/precharge_array.py | 0 compiler/{ => modules}/replica_bitcell.py | 0 compiler/{ => modules}/replica_bitline.py | 0 compiler/{ => modules}/sense_amp.py | 0 compiler/{ => modules}/sense_amp_array.py | 0 .../{ => modules}/single_level_column_mux.py | 0 .../single_level_column_mux_array.py | 0 compiler/{ => modules}/tri_gate.py | 0 compiler/{ => modules}/tri_gate_array.py | 0 compiler/{ => modules}/wordline_driver.py | 0 compiler/{ => modules}/write_driver.py | 0 compiler/{ => modules}/write_driver_array.py | 0 compiler/{ => pgates}/pgate.py | 0 compiler/{ => pgates}/pinv.py | 0 compiler/{ => pgates}/pnand2.py | 0 compiler/{ => pgates}/pnand3.py | 0 compiler/{ => pgates}/pnor2.py | 0 compiler/{ => pgates}/ptx.py | 0 40 files changed, 7 insertions(+), 10 deletions(-) rename compiler/{ => base}/contact.py (100%) rename compiler/{ => base}/design.py (100%) rename compiler/{ => base}/geometry.py (100%) rename compiler/{ => base}/hierarchy_layout.py (100%) rename compiler/{ => base}/hierarchy_spice.py (100%) rename compiler/{ => base}/path.py (100%) rename compiler/{ => base}/pin_layout.py (100%) rename compiler/{ => base}/vector.py (100%) rename compiler/{ => base}/wire.py (100%) rename compiler/{ => modules}/bank.py (100%) rename compiler/{ => modules}/bitcell.py (100%) rename compiler/{ => modules}/bitcell_array.py (100%) rename compiler/{ => modules}/control_logic.py (100%) rename compiler/{ => modules}/delay_chain.py (100%) rename compiler/{ => modules}/hierarchical_decoder.py (100%) rename compiler/{ => modules}/hierarchical_predecode.py (100%) rename compiler/{ => modules}/hierarchical_predecode2x4.py (100%) rename compiler/{ => modules}/hierarchical_predecode3x8.py (100%) rename compiler/{ => modules}/ms_flop.py (100%) rename compiler/{ => modules}/ms_flop_array.py (100%) rename compiler/{ => modules}/precharge.py (100%) rename compiler/{ => modules}/precharge_array.py (100%) rename compiler/{ => modules}/replica_bitcell.py (100%) rename compiler/{ => modules}/replica_bitline.py (100%) rename compiler/{ => modules}/sense_amp.py (100%) rename compiler/{ => modules}/sense_amp_array.py (100%) rename compiler/{ => modules}/single_level_column_mux.py (100%) rename compiler/{ => modules}/single_level_column_mux_array.py (100%) rename compiler/{ => modules}/tri_gate.py (100%) rename compiler/{ => modules}/tri_gate_array.py (100%) rename compiler/{ => modules}/wordline_driver.py (100%) rename compiler/{ => modules}/write_driver.py (100%) rename compiler/{ => modules}/write_driver_array.py (100%) rename compiler/{ => pgates}/pgate.py (100%) rename compiler/{ => pgates}/pinv.py (100%) rename compiler/{ => pgates}/pnand2.py (100%) rename compiler/{ => pgates}/pnand3.py (100%) rename compiler/{ => pgates}/pnor2.py (100%) rename compiler/{ => pgates}/ptx.py (100%) diff --git a/compiler/contact.py b/compiler/base/contact.py similarity index 100% rename from compiler/contact.py rename to compiler/base/contact.py diff --git a/compiler/design.py b/compiler/base/design.py similarity index 100% rename from compiler/design.py rename to compiler/base/design.py diff --git a/compiler/geometry.py b/compiler/base/geometry.py similarity index 100% rename from compiler/geometry.py rename to compiler/base/geometry.py diff --git a/compiler/hierarchy_layout.py b/compiler/base/hierarchy_layout.py similarity index 100% rename from compiler/hierarchy_layout.py rename to compiler/base/hierarchy_layout.py diff --git a/compiler/hierarchy_spice.py b/compiler/base/hierarchy_spice.py similarity index 100% rename from compiler/hierarchy_spice.py rename to compiler/base/hierarchy_spice.py diff --git a/compiler/path.py b/compiler/base/path.py similarity index 100% rename from compiler/path.py rename to compiler/base/path.py diff --git a/compiler/pin_layout.py b/compiler/base/pin_layout.py similarity index 100% rename from compiler/pin_layout.py rename to compiler/base/pin_layout.py diff --git a/compiler/vector.py b/compiler/base/vector.py similarity index 100% rename from compiler/vector.py rename to compiler/base/vector.py diff --git a/compiler/wire.py b/compiler/base/wire.py similarity index 100% rename from compiler/wire.py rename to compiler/base/wire.py diff --git a/compiler/globals.py b/compiler/globals.py index 975e22fb..90af6159 100644 --- a/compiler/globals.py +++ b/compiler/globals.py @@ -218,16 +218,13 @@ def setup_paths(): except: debug.error("$OPENRAM_HOME is not properly defined.",1) debug.check(os.path.isdir(OPENRAM_HOME),"$OPENRAM_HOME does not exist: {0}".format(OPENRAM_HOME)) - - debug.check(os.path.isdir(OPENRAM_HOME+"/gdsMill"), - "$OPENRAM_HOME/gdsMill does not exist: {0}".format(OPENRAM_HOME+"/gdsMill")) - sys.path.append("{0}/gdsMill".format(OPENRAM_HOME)) - debug.check(os.path.isdir(OPENRAM_HOME+"/tests"), - "$OPENRAM_HOME/tests does not exist: {0}".format(OPENRAM_HOME+"/tests")) - sys.path.append("{0}/tests".format(OPENRAM_HOME)) - debug.check(os.path.isdir(OPENRAM_HOME+"/router"), - "$OPENRAM_HOME/router does not exist: {0}".format(OPENRAM_HOME+"/router")) - sys.path.append("{0}/router".format(OPENRAM_HOME)) + + # Add all of the submodules to the python path + for subdir in ["gdsMill", "tests", "router", "modules", "layout", "pgates"]: + full_path = "{0}/{1}".format(OPENRAM_HOME,subdir) + debug.check(os.path.isdir(full_path), + "$OPENRAM_HOME/{0} does not exist: {1}".format(subdir,full_path)) + sys.path.append("{0}".format(full_path)) if not OPTS.openram_temp.endswith('/'): OPTS.openram_temp += "/" diff --git a/compiler/bank.py b/compiler/modules/bank.py similarity index 100% rename from compiler/bank.py rename to compiler/modules/bank.py diff --git a/compiler/bitcell.py b/compiler/modules/bitcell.py similarity index 100% rename from compiler/bitcell.py rename to compiler/modules/bitcell.py diff --git a/compiler/bitcell_array.py b/compiler/modules/bitcell_array.py similarity index 100% rename from compiler/bitcell_array.py rename to compiler/modules/bitcell_array.py diff --git a/compiler/control_logic.py b/compiler/modules/control_logic.py similarity index 100% rename from compiler/control_logic.py rename to compiler/modules/control_logic.py diff --git a/compiler/delay_chain.py b/compiler/modules/delay_chain.py similarity index 100% rename from compiler/delay_chain.py rename to compiler/modules/delay_chain.py diff --git a/compiler/hierarchical_decoder.py b/compiler/modules/hierarchical_decoder.py similarity index 100% rename from compiler/hierarchical_decoder.py rename to compiler/modules/hierarchical_decoder.py diff --git a/compiler/hierarchical_predecode.py b/compiler/modules/hierarchical_predecode.py similarity index 100% rename from compiler/hierarchical_predecode.py rename to compiler/modules/hierarchical_predecode.py diff --git a/compiler/hierarchical_predecode2x4.py b/compiler/modules/hierarchical_predecode2x4.py similarity index 100% rename from compiler/hierarchical_predecode2x4.py rename to compiler/modules/hierarchical_predecode2x4.py diff --git a/compiler/hierarchical_predecode3x8.py b/compiler/modules/hierarchical_predecode3x8.py similarity index 100% rename from compiler/hierarchical_predecode3x8.py rename to compiler/modules/hierarchical_predecode3x8.py diff --git a/compiler/ms_flop.py b/compiler/modules/ms_flop.py similarity index 100% rename from compiler/ms_flop.py rename to compiler/modules/ms_flop.py diff --git a/compiler/ms_flop_array.py b/compiler/modules/ms_flop_array.py similarity index 100% rename from compiler/ms_flop_array.py rename to compiler/modules/ms_flop_array.py diff --git a/compiler/precharge.py b/compiler/modules/precharge.py similarity index 100% rename from compiler/precharge.py rename to compiler/modules/precharge.py diff --git a/compiler/precharge_array.py b/compiler/modules/precharge_array.py similarity index 100% rename from compiler/precharge_array.py rename to compiler/modules/precharge_array.py diff --git a/compiler/replica_bitcell.py b/compiler/modules/replica_bitcell.py similarity index 100% rename from compiler/replica_bitcell.py rename to compiler/modules/replica_bitcell.py diff --git a/compiler/replica_bitline.py b/compiler/modules/replica_bitline.py similarity index 100% rename from compiler/replica_bitline.py rename to compiler/modules/replica_bitline.py diff --git a/compiler/sense_amp.py b/compiler/modules/sense_amp.py similarity index 100% rename from compiler/sense_amp.py rename to compiler/modules/sense_amp.py diff --git a/compiler/sense_amp_array.py b/compiler/modules/sense_amp_array.py similarity index 100% rename from compiler/sense_amp_array.py rename to compiler/modules/sense_amp_array.py diff --git a/compiler/single_level_column_mux.py b/compiler/modules/single_level_column_mux.py similarity index 100% rename from compiler/single_level_column_mux.py rename to compiler/modules/single_level_column_mux.py diff --git a/compiler/single_level_column_mux_array.py b/compiler/modules/single_level_column_mux_array.py similarity index 100% rename from compiler/single_level_column_mux_array.py rename to compiler/modules/single_level_column_mux_array.py diff --git a/compiler/tri_gate.py b/compiler/modules/tri_gate.py similarity index 100% rename from compiler/tri_gate.py rename to compiler/modules/tri_gate.py diff --git a/compiler/tri_gate_array.py b/compiler/modules/tri_gate_array.py similarity index 100% rename from compiler/tri_gate_array.py rename to compiler/modules/tri_gate_array.py diff --git a/compiler/wordline_driver.py b/compiler/modules/wordline_driver.py similarity index 100% rename from compiler/wordline_driver.py rename to compiler/modules/wordline_driver.py diff --git a/compiler/write_driver.py b/compiler/modules/write_driver.py similarity index 100% rename from compiler/write_driver.py rename to compiler/modules/write_driver.py diff --git a/compiler/write_driver_array.py b/compiler/modules/write_driver_array.py similarity index 100% rename from compiler/write_driver_array.py rename to compiler/modules/write_driver_array.py diff --git a/compiler/pgate.py b/compiler/pgates/pgate.py similarity index 100% rename from compiler/pgate.py rename to compiler/pgates/pgate.py diff --git a/compiler/pinv.py b/compiler/pgates/pinv.py similarity index 100% rename from compiler/pinv.py rename to compiler/pgates/pinv.py diff --git a/compiler/pnand2.py b/compiler/pgates/pnand2.py similarity index 100% rename from compiler/pnand2.py rename to compiler/pgates/pnand2.py diff --git a/compiler/pnand3.py b/compiler/pgates/pnand3.py similarity index 100% rename from compiler/pnand3.py rename to compiler/pgates/pnand3.py diff --git a/compiler/pnor2.py b/compiler/pgates/pnor2.py similarity index 100% rename from compiler/pnor2.py rename to compiler/pgates/pnor2.py diff --git a/compiler/ptx.py b/compiler/pgates/ptx.py similarity index 100% rename from compiler/ptx.py rename to compiler/pgates/ptx.py From 7c83ef3f04ed88379f6bd3cdd8f67394fd225697 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 9 Feb 2018 10:27:43 -0800 Subject: [PATCH 68/95] Fix missing subdir name. Comment about organization. --- compiler/globals.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/compiler/globals.py b/compiler/globals.py index 90af6159..11a8854f 100644 --- a/compiler/globals.py +++ b/compiler/globals.py @@ -219,8 +219,9 @@ def setup_paths(): debug.error("$OPENRAM_HOME is not properly defined.",1) debug.check(os.path.isdir(OPENRAM_HOME),"$OPENRAM_HOME does not exist: {0}".format(OPENRAM_HOME)) - # Add all of the submodules to the python path - for subdir in ["gdsMill", "tests", "router", "modules", "layout", "pgates"]: + # Add all of the subdirs to the python path + # These subdirs are modules and don't need to be added: characterizer, verify + for subdir in ["gdsMill", "tests", "router", "modules", "base", "pgates"]: full_path = "{0}/{1}".format(OPENRAM_HOME,subdir) debug.check(os.path.isdir(full_path), "$OPENRAM_HOME/{0} does not exist: {1}".format(subdir,full_path)) From 84c798d9e4955aba7b2304bd265303848ecd3d5e Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 9 Feb 2018 10:29:37 -0800 Subject: [PATCH 69/95] Move last few modules to base dir --- compiler/{ => base}/lef.py | 0 compiler/{ => base}/route.py | 0 compiler/{ => base}/verilog.py | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename compiler/{ => base}/lef.py (100%) rename compiler/{ => base}/route.py (100%) rename compiler/{ => base}/verilog.py (100%) diff --git a/compiler/lef.py b/compiler/base/lef.py similarity index 100% rename from compiler/lef.py rename to compiler/base/lef.py diff --git a/compiler/route.py b/compiler/base/route.py similarity index 100% rename from compiler/route.py rename to compiler/base/route.py diff --git a/compiler/verilog.py b/compiler/base/verilog.py similarity index 100% rename from compiler/verilog.py rename to compiler/base/verilog.py From d19867e64ca19ffa20fbb2321fa20c4660ee5e4f Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 9 Feb 2018 10:42:23 -0800 Subject: [PATCH 70/95] Move utils to base. --- compiler/{ => base}/utils.py | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename compiler/{ => base}/utils.py (100%) diff --git a/compiler/utils.py b/compiler/base/utils.py similarity index 100% rename from compiler/utils.py rename to compiler/base/utils.py From b7be042c7f7e5570349b8e0c643673910453e723 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 9 Feb 2018 10:44:15 -0800 Subject: [PATCH 71/95] Update .gitignore --- .gitignore | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.gitignore b/.gitignore index bf2aa7b7..c1ae7065 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,7 @@ *~ *.pyc *.log +*.aux +*.out +*.toc +*.synctex.gz From f86985821afed8ad6b0b05a5f88dcd6a72ac46dd Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 9 Feb 2018 15:33:03 -0800 Subject: [PATCH 72/95] Begin modifications for corner-based characterization. Made stimuli.py a class. Golden output files are not updated. --- compiler/characterizer/delay.py | 183 ++++--- compiler/characterizer/lib.py | 106 ++-- compiler/characterizer/setup_hold.py | 107 ++-- compiler/characterizer/stimuli.py | 548 ++++++++++---------- compiler/example_config_scn3me_subm.py | 3 + compiler/options.py | 7 + compiler/sram.py | 5 +- compiler/tests/21_hspice_delay_test.py | 6 +- compiler/tests/21_hspice_setuphold_test.py | 2 +- compiler/tests/21_ngspice_delay_test.py | 6 +- compiler/tests/21_ngspice_setuphold_test.py | 2 +- compiler/tests/23_lib_sram_model_test.py | 20 +- compiler/tests/23_lib_sram_test.py | 21 +- technology/freepdk45/tech/tech.py | 25 +- technology/scn3me_subm/tech/tech.py | 25 +- 15 files changed, 557 insertions(+), 509 deletions(-) diff --git a/compiler/characterizer/delay.py b/compiler/characterizer/delay.py index 854eeb75..ef3c6ce9 100644 --- a/compiler/characterizer/delay.py +++ b/compiler/characterizer/delay.py @@ -14,16 +14,21 @@ class delay(): data bit. """ - def __init__(self,sram,spfile): + def __init__(self,sram,spfile, corner): self.name = sram.name self.num_words = sram.num_words self.word_size = sram.word_size self.addr_size = sram.addr_size self.sram_sp_file = spfile - self.vdd = tech.spice["supply_voltage"] - self.gnd = tech.spice["gnd_voltage"] - + self.set_corner(corner) + + def set_corner(self,corner): + """ Set the corner values """ + self.corner = corner + (self.process, self.vdd_voltage, self.temperature) = corner + self.gnd_voltage = 0 + def check_arguments(self): """Checks if arguments given for write_stimulus() meets requirements""" @@ -53,22 +58,20 @@ class delay(): temp_stim = "{0}/stim.sp".format(OPTS.openram_temp) self.sf = open(temp_stim, "w") self.sf.write("* Stimulus for period of {0}n load={1}fF slew={2}ns\n\n".format(period,load,slew)) - + self.stim = stimuli.stimuli(self.sf, self.corner) # include files in stimulus file - model_list = tech.spice["fet_models"] + [self.sram_sp_file] - stimuli.write_include(stim_file=self.sf, models=model_list) + self.stim.write_include(self.sram_sp_file) # add vdd/gnd statements self.sf.write("\n* Global Power Supplies\n") - stimuli.write_supply(self.sf) + self.stim.write_supply() # instantiate the sram self.sf.write("\n* Instantiation of the SRAM\n") - stimuli.inst_sram(stim_file=self.sf, - abits=self.addr_size, - dbits=self.word_size, - sram_name=self.name) + self.stim.inst_sram(abits=self.addr_size, + dbits=self.word_size, + sram_name=self.name) self.sf.write("\n* SRAM output loads\n") for i in range(self.word_size): @@ -76,7 +79,7 @@ class delay(): # add access transistors for data-bus self.sf.write("\n* Transmission Gates for data-bus and control signals\n") - stimuli.inst_accesstx(stim_file=self.sf, dbits=self.word_size) + self.stim.inst_accesstx(dbits=self.word_size) # generate data and addr signals self.sf.write("\n* Generation of data and address signals\n") @@ -87,14 +90,13 @@ class delay(): period=period, slew=slew) else: - stimuli.gen_constant(stim_file=self.sf, - sig_name="d[{0}]".format(i), - v_val=self.gnd) + self.stim.gen_constant(sig_name="d[{0}]".format(i), + v_val=self.gnd_voltage) self.gen_addr(clk_times=self.cycle_times, - addr=self.probe_address, - period=period, - slew=slew) + addr=self.probe_address, + period=period, + slew=slew) # generate control signals self.sf.write("\n* Generation of control signals\n") @@ -103,19 +105,18 @@ class delay(): self.gen_oeb(self.cycle_times, period, slew) self.sf.write("\n* Generation of global clock signal\n") - stimuli.gen_pulse(stim_file=self.sf, - sig_name="CLK", - v1=self.gnd, - v2=self.vdd, - offset=period, - period=period, - t_rise=slew, - t_fall=slew) + self.stim.gen_pulse(sig_name="CLK", + v1=self.gnd_voltage, + v2=self.vdd_voltage, + offset=period, + period=period, + t_rise=slew, + t_fall=slew) self.write_measures(period) # run until the end of the cycle time - stimuli.write_control(self.sf,self.cycle_times[-1] + period) + self.stim.write_control(self.cycle_times[-1] + period) self.sf.close() @@ -134,81 +135,73 @@ class delay(): # Trigger on the clk of the appropriate cycle trig_name = "clk" targ_name = "{0}".format("d[{0}]".format(self.probe_data)) - trig_val = targ_val = 0.5 * self.vdd + trig_val = targ_val = 0.5 * self.vdd_voltage # Delay the target to measure after the negative edge - stimuli.gen_meas_delay(stim_file=self.sf, - meas_name="DELAY0", - trig_name=trig_name, - targ_name=targ_name, - trig_val=trig_val, - targ_val=targ_val, - trig_dir="FALL", - targ_dir="FALL", - trig_td=self.cycle_times[self.read0_cycle], - targ_td=self.cycle_times[self.read0_cycle]+0.5*period) + self.stim.gen_meas_delay(meas_name="DELAY0", + trig_name=trig_name, + targ_name=targ_name, + trig_val=trig_val, + targ_val=targ_val, + trig_dir="FALL", + targ_dir="FALL", + trig_td=self.cycle_times[self.read0_cycle], + targ_td=self.cycle_times[self.read0_cycle]+0.5*period) - stimuli.gen_meas_delay(stim_file=self.sf, - meas_name="DELAY1", - trig_name=trig_name, - targ_name=targ_name, - trig_val=trig_val, - targ_val=targ_val, - trig_dir="FALL", - targ_dir="RISE", - trig_td=self.cycle_times[self.read1_cycle], - targ_td=self.cycle_times[self.read1_cycle]+0.5*period) + self.stim.gen_meas_delay(meas_name="DELAY1", + trig_name=trig_name, + targ_name=targ_name, + trig_val=trig_val, + targ_val=targ_val, + trig_dir="FALL", + targ_dir="RISE", + trig_td=self.cycle_times[self.read1_cycle], + targ_td=self.cycle_times[self.read1_cycle]+0.5*period) - stimuli.gen_meas_delay(stim_file=self.sf, - meas_name="SLEW0", - trig_name=targ_name, - targ_name=targ_name, - trig_val=0.9*self.vdd, - targ_val=0.1*self.vdd, - trig_dir="FALL", - targ_dir="FALL", - trig_td=self.cycle_times[self.read0_cycle], - targ_td=self.cycle_times[self.read0_cycle]+0.5*period) + self.stim.gen_meas_delay(meas_name="SLEW0", + trig_name=targ_name, + targ_name=targ_name, + trig_val=0.9*self.vdd_voltage, + targ_val=0.1*self.vdd_voltage, + trig_dir="FALL", + targ_dir="FALL", + trig_td=self.cycle_times[self.read0_cycle], + targ_td=self.cycle_times[self.read0_cycle]+0.5*period) - stimuli.gen_meas_delay(stim_file=self.sf, - meas_name="SLEW1", - trig_name=targ_name, - targ_name=targ_name, - trig_val=0.1*self.vdd, - targ_val=0.9*self.vdd, - trig_dir="RISE", - targ_dir="RISE", - trig_td=self.cycle_times[self.read1_cycle], - targ_td=self.cycle_times[self.read1_cycle]+0.5*period) + self.stim.gen_meas_delay(meas_name="SLEW1", + trig_name=targ_name, + targ_name=targ_name, + trig_val=0.1*self.vdd_voltage, + targ_val=0.9*self.vdd_voltage, + trig_dir="RISE", + targ_dir="RISE", + trig_td=self.cycle_times[self.read1_cycle], + targ_td=self.cycle_times[self.read1_cycle]+0.5*period) # add measure statements for power t_initial = self.cycle_times[self.write0_cycle] t_final = self.cycle_times[self.write0_cycle+1] - stimuli.gen_meas_power(stim_file=self.sf, - meas_name="WRITE0_POWER", - t_initial=t_initial, - t_final=t_final) + self.stim.gen_meas_power(meas_name="WRITE0_POWER", + t_initial=t_initial, + t_final=t_final) t_initial = self.cycle_times[self.write1_cycle] t_final = self.cycle_times[self.write1_cycle+1] - stimuli.gen_meas_power(stim_file=self.sf, - meas_name="WRITE1_POWER", - t_initial=t_initial, - t_final=t_final) + self.stim.gen_meas_power(meas_name="WRITE1_POWER", + t_initial=t_initial, + t_final=t_final) t_initial = self.cycle_times[self.read0_cycle] t_final = self.cycle_times[self.read0_cycle+1] - stimuli.gen_meas_power(stim_file=self.sf, - meas_name="READ0_POWER", - t_initial=t_initial, - t_final=t_final) + self.stim.gen_meas_power(meas_name="READ0_POWER", + t_initial=t_initial, + t_final=t_final) t_initial = self.cycle_times[self.read1_cycle] t_final = self.cycle_times[self.read1_cycle+1] - stimuli.gen_meas_power(stim_file=self.sf, - meas_name="READ1_POWER", - t_initial=t_initial, - t_final=t_final) + self.stim.gen_meas_power(meas_name="READ1_POWER", + t_initial=t_initial, + t_final=t_final) def find_feasible_period(self, load, slew): """ @@ -249,7 +242,7 @@ class delay(): # Checking from not data_value to data_value self.write_stimulus(period, load, slew) - stimuli.run_sim() + self.stim.run_sim() delay0 = ch.convert_to_float(ch.parse_output("timing", "delay0")) delay1 = ch.convert_to_float(ch.parse_output("timing", "delay1")) slew0 = ch.convert_to_float(ch.parse_output("timing", "slew0")) @@ -334,7 +327,7 @@ class delay(): # Checking from not data_value to data_value self.write_stimulus(period,load,slew) - stimuli.run_sim() + self.stim.run_sim() delay0 = ch.convert_to_float(ch.parse_output("timing", "delay0")) delay1 = ch.convert_to_float(ch.parse_output("timing", "delay1")) slew0 = ch.convert_to_float(ch.parse_output("timing", "slew0")) @@ -575,7 +568,7 @@ class delay(): # we are asserting the opposite value on the other side of the tx gate during # the read to be "worst case". Otherwise, it can actually assist the read. values = [0, 1, 0, 1, 1, 1, 1, 0, 0, 0 ] - stimuli.gen_pwl(self.sf, sig_name, clk_times, values, period, slew, 0.05) + self.stim.gen_pwl(sig_name, clk_times, values, period, slew, 0.05) def gen_addr(self, clk_times, addr, period, slew): """ @@ -589,9 +582,9 @@ class delay(): for i in range(len(addr)): sig_name = "A[{0}]".format(i) if addr[i]=="1": - stimuli.gen_pwl(self.sf, sig_name, clk_times, ones_values, period, slew, 0.05) + self.stim.gen_pwl(sig_name, clk_times, ones_values, period, slew, 0.05) else: - stimuli.gen_pwl(self.sf, sig_name, clk_times, zero_values, period, slew, 0.05) + self.stim.gen_pwl(sig_name, clk_times, zero_values, period, slew, 0.05) def gen_csb(self, clk_times, period, slew): @@ -599,24 +592,24 @@ class delay(): # values for NOP, W1, W0, W1, R0, NOP, W1, W0, R1, NOP # Keep CSb asserted in NOP for measuring >1 period values = [1, 0, 0, 0, 0, 0, 0, 0, 0, 0] - stimuli.gen_pwl(self.sf, "csb", clk_times, values, period, slew, 0.05) + self.stim.gen_pwl("csb", clk_times, values, period, slew, 0.05) def gen_web(self, clk_times, period, slew): """ Generates the PWL WEb signal """ # values for NOP, W1, W0, W1, R0, NOP, W1, W0, R1, NOP # Keep WEb deasserted in NOP for measuring >1 period values = [1, 0, 0, 0, 1, 1, 0, 0, 1, 1] - stimuli.gen_pwl(self.sf, "web", clk_times, values, period, slew, 0.05) + self.stim.gen_pwl("web", clk_times, values, period, slew, 0.05) # Keep acc_en deasserted in NOP for measuring >1 period values = [1, 0, 0, 0, 1, 1, 0, 0, 1, 1] - stimuli.gen_pwl(self.sf, "acc_en", clk_times, values, period, slew, 0) + self.stim.gen_pwl("acc_en", clk_times, values, period, slew, 0) values = [0, 1, 1, 1, 0, 0, 1, 1, 0, 0] - stimuli.gen_pwl(self.sf, "acc_en_inv", clk_times, values, period, slew, 0) + self.stim.gen_pwl("acc_en_inv", clk_times, values, period, slew, 0) def gen_oeb(self, clk_times, period, slew): """ Generates the PWL WEb signal """ # values for NOP, W1, W0, W1, R0, W1, W0, R1, NOP # Keep OEb asserted in NOP for measuring >1 period values = [1, 1, 1, 1, 0, 0, 1, 1, 0, 0] - stimuli.gen_pwl(self.sf, "oeb", clk_times, values, period, slew, 0.05) + self.stim.gen_pwl("oeb", clk_times, values, period, slew, 0.05) diff --git a/compiler/characterizer/lib.py b/compiler/characterizer/lib.py index 7bab820b..61b13004 100644 --- a/compiler/characterizer/lib.py +++ b/compiler/characterizer/lib.py @@ -12,15 +12,23 @@ from globals import OPTS class lib: """ lib file generation.""" - def __init__(self, libname, sram, sp_file, use_model=OPTS.analytical_delay): + def __init__(self, out_dir, sram, sp_file, use_model=OPTS.analytical_delay): + self.out_dir = out_dir self.sram = sram self.sp_file = sp_file self.use_model = use_model - self.name = sram.name - self.num_words = sram.num_words - self.word_size = sram.word_size - self.addr_size = sram.addr_size + self.prepare_netlist() + + self.prepare_tables() + + self.create_corners() + + self.characterize_corners() + + def prepare_netlist(self): + """ Determine whether to use regular or trimmed netlist. """ + # Set up to trim the netlist here if that is enabled if OPTS.trim_netlist: self.sim_sp_file = "{}reduced.sp".format(OPTS.openram_temp) @@ -34,12 +42,14 @@ class lib: self.sim_sp_file = "{}sram.sp".format(OPTS.openram_temp) # Make a copy in temp for debugging shutil.copy(self.sp_file, self.sim_sp_file) - + + def prepare_tables(self): + """ Determine the load/slews if they aren't specified in the config file. """ # These are the parameters to determine the table sizes #self.load_scales = np.array([0.1, 0.25, 0.5, 1, 2, 4, 8]) self.load_scales = np.array([0.25, 1, 8]) #self.load_scales = np.array([0.25, 1]) - self.load = tech.spice["FF_in_cap"] + self.load = tech.spice["msflop_in_cap"] self.loads = self.load_scales*self.load debug.info(1,"Loads: {0}".format(self.loads)) @@ -49,9 +59,43 @@ class lib: self.slew = tech.spice["rise_time"] self.slews = self.slew_scales*self.slew debug.info(1,"Slews: {0}".format(self.slews)) - - debug.info(1,"Writing to {0}".format(libname)) - self.lib = open(libname, "w") + + + def create_corners(self): + """ Create corners for characterization. """ + # Get the corners from the options file + self.temperatures = OPTS.temperatures + self.supply_voltages = OPTS.supply_voltages + self.process_corners = OPTS.process_corners + + # Enumerate all possible corners + self.corners = [] + self.lib_files = [] + for proc in self.process_corners: + for temp in self.temperatures: + for volt in self.supply_voltages: + self.corner_name = "{0}_{1}_{2}_{3}".format(self.sram.name, + proc, + volt, + temp) + self.corner_name = self.corner_name.replace(".","") # Remove decimals + lib_name = self.out_dir+"{}.lib".format(self.corner_name) + + # A corner is a tuple of PVT + self.corners.append((proc, volt, temp)) + self.lib_files.append(lib_name) + + def characterize_corners(self): + """ Characterize the list of corners. """ + for (self.corner,lib_name) in zip(self.corners,self.lib_files): + debug.info(1,"Corner: " + str(self.corner)) + (self.process, self.voltage, self.temperature) = self.corner + self.lib = open(lib_name, "w") + debug.info(1,"Writing to {0}".format(lib_name)) + self.characterize() + + def characterize(self): + """ Characterize the current corner. """ self.write_header() @@ -67,7 +111,7 @@ class lib: def write_header(self): """ Write the header information """ - self.lib.write("library ({0}_lib)".format(self.name)) + self.lib.write("library ({0}_lib)".format(self.corner_name)) self.lib.write("{\n") self.lib.write(" delay_model : \"table_lookup\";\n") @@ -79,12 +123,12 @@ class lib: self.write_bus() - self.lib.write("cell ({0})".format(self.name)) + self.lib.write("cell ({0})".format(self.sram.name)) self.lib.write("{\n") self.lib.write(" memory(){ \n") self.lib.write(" type : ram;\n") - self.lib.write(" address_width : {0};\n".format(self.addr_size)) - self.lib.write(" word_width : {0};\n".format(self.word_size)) + self.lib.write(" address_width : {0};\n".format(self.sram.addr_size)) + self.lib.write(" word_width : {0};\n".format(self.sram.word_size)) self.lib.write(" }\n") self.lib.write(" interface_timing : true;\n") self.lib.write(" dont_use : true;\n") @@ -103,9 +147,9 @@ class lib: self.lib.write(" capacitive_load_unit(1 ,fF) ;\n") self.lib.write(" leakage_power_unit : \"1mW\" ;\n") self.lib.write(" pulling_resistance_unit :\"1kohm\" ;\n") - self.lib.write(" operating_conditions(TT){\n") - self.lib.write(" voltage : {0} ;\n".format(tech.spice["supply_voltage"])) - self.lib.write(" temperature : 25.000 ;\n") + self.lib.write(" operating_conditions({}){{\n".format(self.process)) + self.lib.write(" voltage : {} ;\n".format(self.voltage)) + self.lib.write(" temperature : {};\n".format(self.temperature)) self.lib.write(" }\n\n") def write_defaults(self): @@ -206,17 +250,17 @@ class lib: self.lib.write(" type (DATA){\n") self.lib.write(" base_type : array;\n") self.lib.write(" data_type : bit;\n") - self.lib.write(" bit_width : {0};\n".format(self.word_size)) + self.lib.write(" bit_width : {0};\n".format(self.sram.word_size)) self.lib.write(" bit_from : 0;\n") - self.lib.write(" bit_to : {0};\n".format(self.word_size - 1)) + self.lib.write(" bit_to : {0};\n".format(self.sram.word_size - 1)) self.lib.write(" }\n\n") self.lib.write(" type (ADDR){\n") self.lib.write(" base_type : array;\n") self.lib.write(" data_type : bit;\n") - self.lib.write(" bit_width : {0};\n".format(self.addr_size)) + self.lib.write(" bit_width : {0};\n".format(self.sram.addr_size)) self.lib.write(" bit_from : 0;\n") - self.lib.write(" bit_to : {0};\n".format(self.addr_size - 1)) + self.lib.write(" bit_to : {0};\n".format(self.sram.addr_size - 1)) self.lib.write(" }\n\n") @@ -260,7 +304,7 @@ class lib: self.lib.write(" bus(DATA){\n") self.lib.write(" bus_type : DATA; \n") self.lib.write(" direction : inout; \n") - self.lib.write(" max_capacitance : {0}; \n".format(8*tech.spice["FF_in_cap"])) + self.lib.write(" max_capacitance : {0}; \n".format(8*tech.spice["msflop_in_cap"])) self.lib.write(" three_state : \"!OEb & !clk\"; \n") self.lib.write(" memory_write(){ \n") self.lib.write(" address : ADDR; \n") @@ -269,7 +313,7 @@ class lib: self.lib.write(" memory_read(){ \n") self.lib.write(" address : ADDR; \n") self.lib.write(" }\n") - self.lib.write(" pin(DATA[{0}:0])".format(self.word_size - 1)) + self.lib.write(" pin(DATA[{0}:0])".format(self.sram.word_size - 1)) self.lib.write("{\n") self.lib.write(" internal_power(){\n") @@ -324,10 +368,10 @@ class lib: self.lib.write(" bus(ADDR){\n") self.lib.write(" bus_type : ADDR; \n") self.lib.write(" direction : input; \n") - self.lib.write(" capacitance : {0}; \n".format(tech.spice["FF_in_cap"])) + self.lib.write(" capacitance : {0}; \n".format(tech.spice["msflop_in_cap"])) self.lib.write(" max_transition : {0};\n".format(self.slews[-1])) self.lib.write(" fanout_load : 1.000000;\n") - self.lib.write(" pin(ADDR[{0}:0])".format(self.addr_size - 1)) + self.lib.write(" pin(ADDR[{0}:0])".format(self.sram.addr_size - 1)) self.lib.write("{\n") self.write_FF_setuphold() @@ -343,7 +387,7 @@ class lib: self.lib.write(" pin({0})".format(i)) self.lib.write("{\n") self.lib.write(" direction : input; \n") - self.lib.write(" capacitance : {0}; \n".format(tech.spice["FF_in_cap"])) + self.lib.write(" capacitance : {0}; \n".format(tech.spice["msflop_in_cap"])) self.write_FF_setuphold() self.lib.write(" }\n\n") @@ -356,7 +400,7 @@ class lib: self.lib.write(" pin(clk){\n") self.lib.write(" clock : true;\n") self.lib.write(" direction : input; \n") - self.lib.write(" capacitance : {0}; \n".format(tech.spice["FF_in_cap"])) + self.lib.write(" capacitance : {0}; \n".format(tech.spice["msflop_in_cap"])) min_pulse_width = ch.round_time(self.delay["min_period"])/2.0 min_period = ch.round_time(self.delay["min_period"]) self.lib.write(" timing(){ \n") @@ -388,12 +432,12 @@ class lib: try: self.d except AttributeError: - self.d = delay.delay(self.sram, self.sim_sp_file) + self.d = delay.delay(self.sram, self.sim_sp_file, self.corner) if self.use_model: self.delay = self.d.analytical_model(self.sram,self.slews,self.loads) else: - probe_address = "1" * self.addr_size - probe_data = self.word_size - 1 + probe_address = "1" * self.sram.addr_size + probe_data = self.sram.word_size - 1 # We must trim based on a specific address and data bit if OPTS.trim_netlist: self.trimsp.trim(probe_address,probe_data) @@ -405,7 +449,7 @@ class lib: try: self.sh except AttributeError: - self.sh = setup_hold.setup_hold() + self.sh = setup_hold.setup_hold(self.corner) if self.use_model: self.times = self.sh.analytical_model(self.slews,self.loads) else: diff --git a/compiler/characterizer/setup_hold.py b/compiler/characterizer/setup_hold.py index f9c1161b..5a3bfdb4 100644 --- a/compiler/characterizer/setup_hold.py +++ b/compiler/characterizer/setup_hold.py @@ -13,18 +13,23 @@ class setup_hold(): (Bisection Methodology) """ - def __init__(self): + def __init__(self, corner): # This must match the spice model order self.pins = ["data", "dout", "dout_bar", "clk", "vdd", "gnd"] self.model_name = "ms_flop" self.model_location = OPTS.openram_tech + "sp_lib/ms_flop.sp" self.period = tech.spice["feasible_period"] - self.vdd = tech.spice["supply_voltage"] - self.gnd = tech.spice["gnd_voltage"] debug.info(2,"Feasible period from technology file: {0} ".format(self.period)) + self.set_corner(corner) + + def set_corner(self,corner): + """ Set the corner values """ + self.corner = corner + (self.process, self.vdd_voltage, self.temperature) = corner + self.gnd_voltage = 0 def write_stimulus(self, mode, target_time, correct_value): @@ -33,14 +38,14 @@ class setup_hold(): # creates and opens the stimulus file for writing temp_stim = OPTS.openram_temp + "stim.sp" self.sf = open(temp_stim, "w") + self.stim = stimuli.stimuli(self.sf, self.corner) self.write_header(correct_value) # instantiate the master-slave d-flip-flop self.sf.write("\n* Instantiation of the Master-Slave D-flip-flop\n") - stimuli.inst_model(stim_file=self.sf, - pins=self.pins, - model_name=self.model_name) + self.stim.inst_model(pins=self.pins, + model_name=self.model_name) self.write_data(mode=mode, target_time=target_time, @@ -52,7 +57,7 @@ class setup_hold(): correct_value=correct_value) - stimuli.write_control(self.sf,4*self.period) + self.stim.write_control(4*self.period) self.sf.close() @@ -61,13 +66,11 @@ class setup_hold(): self.sf.write("\n* Stimulus for setup/hold: data {0} period {1}n\n".format(correct_value, self.period)) # include files in stimulus file - self.model_list = tech.spice["fet_models"] + [self.model_location] - stimuli.write_include(stim_file=self.sf, - models=self.model_list) + self.stim.write_include(self.model_location) # add vdd/gnd statements self.sf.write("\n* Global Power Supplies\n") - stimuli.write_supply(self.sf) + self.stim.write_supply() def write_data(self, mode, target_time, correct_value): @@ -77,7 +80,7 @@ class setup_hold(): """ self.sf.write("\n* Generation of the data and clk signals\n") - incorrect_value = stimuli.get_inverse_value(correct_value) + incorrect_value = self.stim.get_inverse_value(correct_value) if mode=="HOLD": init_value = incorrect_value start_value = correct_value @@ -87,29 +90,27 @@ class setup_hold(): start_value = incorrect_value end_value = correct_value - stimuli.gen_pwl(stim_file=self.sf, - sig_name="data", - clk_times=[0, self.period, target_time], - data_values=[init_value, start_value, end_value], - period=target_time, - slew=self.constrained_input_slew, - setup=0) + self.stim.gen_pwl(sig_name="data", + clk_times=[0, self.period, target_time], + data_values=[init_value, start_value, end_value], + period=target_time, + slew=self.constrained_input_slew, + setup=0) def write_clock(self): """ Create the clock signal for setup/hold analysis. First period initializes the FF while the second is used for characterization.""" - stimuli.gen_pwl(stim_file=self.sf, - sig_name="clk", - # initial clk edge is right after the 0 time to initialize a flop - # without using .IC on an internal node. - # Return input to value after one period. - # The second pulse is the characterization one at 2*period - clk_times=[0, 0.1*self.period,self.period,2*self.period], - data_values=[0, 1, 0, 1], - period=2*self.period, - slew=self.constrained_input_slew, - setup=0) + self.stim.gen_pwl(sig_name="clk", + # initial clk edge is right after the 0 time to initialize a flop + # without using .IC on an internal node. + # Return input to value after one period. + # The second pulse is the characterization one at 2*period + clk_times=[0, 0.1*self.period,self.period,2*self.period], + data_values=[0, 1, 0, 1], + period=2*self.period, + slew=self.constrained_input_slew, + setup=0) @@ -135,32 +136,30 @@ class setup_hold(): self.sf.write("\n* Measure statements for pass/fail verification\n") trig_name = "clk" targ_name = "dout" - trig_val = targ_val = 0.5 * self.vdd + trig_val = targ_val = 0.5 * self.vdd_voltage # Start triggers right before the clock edge at 2*period - stimuli.gen_meas_delay(stim_file=self.sf, - meas_name="clk2q_delay", - trig_name=trig_name, - targ_name=targ_name, - trig_val=trig_val, - targ_val=targ_val, - trig_dir="RISE", - targ_dir=dout_rise_or_fall, - trig_td=1.9*self.period, - targ_td=1.9*self.period) - + self.stim.gen_meas_delay(meas_name="clk2q_delay", + trig_name=trig_name, + targ_name=targ_name, + trig_val=trig_val, + targ_val=targ_val, + trig_dir="RISE", + targ_dir=dout_rise_or_fall, + trig_td=1.9*self.period, + targ_td=1.9*self.period) + targ_name = "data" # Start triggers right after initialize value is returned to normal # at one period - stimuli.gen_meas_delay(stim_file=self.sf, - meas_name="setup_hold_time", - trig_name=trig_name, - targ_name=targ_name, - trig_val=trig_val, - targ_val=targ_val, - trig_dir="RISE", - targ_dir=din_rise_or_fall, - trig_td=1.2*self.period, - targ_td=1.2*self.period) + self.stim.gen_meas_delay(meas_name="setup_hold_time", + trig_name=trig_name, + targ_name=targ_name, + trig_val=trig_val, + targ_val=targ_val, + trig_dir="RISE", + targ_dir=din_rise_or_fall, + trig_td=1.2*self.period, + targ_td=1.2*self.period) @@ -186,7 +185,7 @@ class setup_hold(): self.write_stimulus(mode=mode, target_time=feasible_bound, correct_value=correct_value) - stimuli.run_sim() + self.stim.run_sim() ideal_clk_to_q = ch.convert_to_float(ch.parse_output("timing", "clk2q_delay")) setuphold_time = ch.convert_to_float(ch.parse_output("timing", "setup_hold_time")) debug.info(2,"*** {0} CHECK: {1} Ideal Clk-to-Q: {2} Setup/Hold: {3}".format(mode, correct_value,ideal_clk_to_q,setuphold_time)) @@ -219,7 +218,7 @@ class setup_hold(): feasible_bound)) - stimuli.run_sim() + self.stim.run_sim() clk_to_q = ch.convert_to_float(ch.parse_output("timing", "clk2q_delay")) setuphold_time = ch.convert_to_float(ch.parse_output("timing", "setup_hold_time")) if type(clk_to_q)==float and (clk_to_q<1.1*ideal_clk_to_q) and type(setuphold_time)==float: diff --git a/compiler/characterizer/stimuli.py b/compiler/characterizer/stimuli.py index b82d6aa7..c253f32b 100644 --- a/compiler/characterizer/stimuli.py +++ b/compiler/characterizer/stimuli.py @@ -12,290 +12,302 @@ import sys import numpy as np from globals import OPTS -vdd_voltage = tech.spice["supply_voltage"] -gnd_voltage = tech.spice["gnd_voltage"] -vdd_name = tech.spice["vdd_name"] -gnd_name = tech.spice["gnd_name"] -pmos_name = tech.spice["pmos_name"] -nmos_name = tech.spice["nmos_name"] -tx_width = tech.spice["minwidth_tx"] -tx_length = tech.spice["channel"] -def inst_sram(stim_file, abits, dbits, sram_name): - """ Function to instatiate an SRAM subckt. """ - stim_file.write("Xsram ") - for i in range(dbits): - stim_file.write("D[{0}] ".format(i)) - for i in range(abits): - stim_file.write("A[{0}] ".format(i)) - for i in tech.spice["control_signals"]: - stim_file.write("{0} ".format(i)) - stim_file.write("{0} ".format(tech.spice["clk"])) - stim_file.write("{0} {1} ".format(vdd_name, gnd_name)) - stim_file.write("{0}\n".format(sram_name)) +class stimuli(): + """ Class for providing stimuli functions """ + def __init__(self, stim_file, corner): + self.vdd_name = tech.spice["vdd_name"] + self.gnd_name = tech.spice["gnd_name"] + self.pmos_name = tech.spice["pmos"] + self.nmos_name = tech.spice["nmos"] + self.tx_width = tech.spice["minwidth_tx"] + self.tx_length = tech.spice["channel"] -def inst_model(stim_file, pins, model_name): - """ Function to instantiate a generic model with a set of pins """ - stim_file.write("X{0} ".format(model_name)) - for pin in pins: - stim_file.write("{0} ".format(pin)) - stim_file.write("{0}\n".format(model_name)) - - -def create_inverter(stim_file, size=1, beta=2.5): - """ Generates inverter for the top level signals (only for sim purposes) """ - stim_file.write(".SUBCKT test_inv in out {0} {1}\n".format(vdd_name, gnd_name)) - stim_file.write("mpinv out in {0} {0} {1} w={2}u l={3}u\n".format(vdd_name, - pmos_name, - beta * size * tx_width, - tx_length)) - stim_file.write("mninv out in {0} {0} {1} w={2}u l={3}u\n".format(gnd_name, - nmos_name, - size * tx_width, - tx_length)) - stim_file.write(".ENDS test_inv\n") - - -def create_buffer(stim_file, buffer_name, size=[1,3], beta=2.5): - """ - Generates buffer for top level signals (only for sim - purposes). Size is pair for PMOS, NMOS width multiple. - """ - - stim_file.write(".SUBCKT test_{2} in out {0} {1}\n".format(vdd_name, - gnd_name, - buffer_name)) - stim_file.write("mpinv1 out_inv in {0} {0} {1} w={2}u l={3}u\n".format(vdd_name, - pmos_name, - beta * size[0] * tx_width, - tx_length)) - stim_file.write("mninv1 out_inv in {0} {0} {1} w={2}u l={3}u\n".format(gnd_name, - nmos_name, - size[0] * tx_width, - tx_length)) - stim_file.write("mpinv2 out out_inv {0} {0} {1} w={2}u l={3}u\n".format(vdd_name, - pmos_name, - beta * size[1] * tx_width, - tx_length)) - stim_file.write("mninv2 out out_inv {0} {0} {1} w={2}u l={3}u\n".format(gnd_name, - nmos_name, - size[1] * tx_width, - tx_length)) - stim_file.write(".ENDS test_{0}\n\n".format(buffer_name)) - - -def inst_buffer(stim_file, buffer_name, signal_list): - """ Adds buffers to each top level signal that is in signal_list (only for sim purposes) """ - for signal in signal_list: - stim_file.write("X{0}_buffer {0} {0}_buf {1} {2} test_{3}\n".format(signal, - "test"+vdd_name, - "test"+gnd_name, - buffer_name)) - - -def inst_inverter(stim_file, signal_list): - """ Adds inv for each signal that needs its inverted version (only for sim purposes) """ - for signal in signal_list: - stim_file.write("X{0}_inv {0} {0}_inv {1} {2} test_inv\n".format(signal, - "test"+vdd_name, - "test"+gnd_name)) - - -def inst_accesstx(stim_file, dbits): - """ Adds transmission gate for inputs to data-bus (only for sim purposes) """ - stim_file.write("* Tx Pin-list: Drain Gate Source Body\n") - for i in range(dbits): - pmos_access_string="mp{0} DATA[{0}] acc_en D[{0}] {1} {2} w={3}u l={4}u\n" - stim_file.write(pmos_access_string.format(i, - "test"+vdd_name, - pmos_name, - 2 * tx_width, - tx_length)) - nmos_access_string="mn{0} DATA[{0}] acc_en_inv D[{0}] {1} {2} w={3}u l={4}u\n" - stim_file.write(nmos_access_string.format(i, - "test"+gnd_name, - nmos_name, - 2 * tx_width, - tx_length)) - -def gen_pulse(stim_file, sig_name, v1=gnd_voltage, v2=vdd_voltage, offset=0, period=1, t_rise=0, t_fall=0): - """ - Generates a periodic signal with 50% duty cycle and slew rates. Period is measured - from 50% to 50%. - """ - stim_file.write("* PULSE: period={0}\n".format(period)) - pulse_string="V{0} {0} 0 PULSE ({1} {2} {3}n {4}n {5}n {6}n {7}n)\n" - stim_file.write(pulse_string.format(sig_name, - v1, - v2, - offset, - t_rise, - t_fall, - 0.5*period-0.5*t_rise-0.5*t_fall, - period)) - - -def gen_pwl(stim_file, sig_name, clk_times, data_values, period, slew, setup): - """ - Generate a PWL stimulus given a signal name and data values at each period. - Automatically creates slews and ensures each data occurs a setup before the clock - edge. The first clk_time should be 0 and is the initial time that corresponds - to the initial value. - """ - # the initial value is not a clock time - debug.check(len(clk_times)==len(data_values),"Clock and data value lengths don't match.") - - # shift signal times earlier for setup time - times = np.array(clk_times) - setup*period - values = np.array(data_values) * vdd_voltage - half_slew = 0.5 * slew - stim_file.write("* (time, data): {}\n".format(zip(clk_times, data_values))) - stim_file.write("V{0} {0} 0 PWL (0n {1}v ".format(sig_name, values[0])) - for i in range(1,len(times)): - stim_file.write("{0}n {1}v {2}n {3}v ".format(times[i]-half_slew, - values[i-1], - times[i]+half_slew, - values[i])) - stim_file.write(")\n") - -def gen_constant(stim_file, sig_name, v_val): - """ Generates a constant signal with reference voltage and the voltage value """ - stim_file.write("V{0} {0} 0 DC {1}\n".format(sig_name, v_val)) - -def get_inverse_voltage(value): - if value > 0.5*vdd_voltage: - return gnd_voltage - elif value <= 0.5*vdd_voltage: - return vdd_voltage - else: - debug.error("Invalid value to get an inverse of: {0}".format(value)) - -def get_inverse_value(value): - if value > 0.5: - return 0 - elif value <= 0.5: - return 1 - else: - debug.error("Invalid value to get an inverse of: {0}".format(value)) + self.sf = stim_file + (self.process, self.vdd_voltage, self.temperature) = corner + self.gnd_voltage = 0 + self.device_models = tech.spice["fet_models"][self.process] -def gen_meas_delay(stim_file, meas_name, trig_name, targ_name, trig_val, targ_val, trig_dir, targ_dir, trig_td, targ_td): - """ Creates the .meas statement for the measurement of delay """ - measure_string=".meas tran {0} TRIG v({1}) VAL={2} {3}=1 TD={4}n TARG v({5}) VAL={6} {7}=1 TD={8}n\n\n" - stim_file.write(measure_string.format(meas_name, - trig_name, - trig_val, - trig_dir, - trig_td, - targ_name, - targ_val, - targ_dir, - targ_td)) -def gen_meas_power(stim_file, meas_name, t_initial, t_final): - """ Creates the .meas statement for the measurement of avg power """ - # power mea cmd is different in different spice: - if OPTS.spice_name == "hspice": - power_exp = "power" - else: - power_exp = "par('(-1*v(" + str(vdd_name) + ")*I(v" + str(vdd_name) + "))')" - stim_file.write(".meas tran {0} avg {1} from={2}n to={3}n\n\n".format(meas_name, - power_exp, - t_initial, - t_final)) - -def write_control(stim_file, end_time): - """ Write the control cards to run and end the simulation """ - # UIC is needed for ngspice to converge - stim_file.write(".TRAN 5p {0}n UIC\n".format(end_time)) - if OPTS.spice_name == "ngspice": - # ngspice sometimes has convergence problems if not using gear method - # which is more accurate, but slower than the default trapezoid method - # Do not remove this or it may not converge due to some "pa_00" nodes - # unless you figure out what these are. - stim_file.write(".OPTIONS POST=1 RUNLVL=4 PROBE method=gear\n") - else: - stim_file.write(".OPTIONS POST=1 RUNLVL=4 PROBE\n") - - # create plots for all signals - stim_file.write("* probe is used for hspice/xa, while plot is used in ngspice\n") - if OPTS.debug_level>0: - if OPTS.spice_name in ["hspice","xa"]: - stim_file.write(".probe V(*)\n") - else: - stim_file.write(".plot V(*)\n") - else: - stim_file.write("*.probe V(*)\n") - stim_file.write("*.plot V(*)\n") - - # end the stimulus file - stim_file.write(".end\n\n") + def inst_sram(self, abits, dbits, sram_name): + """ Function to instatiate an SRAM subckt. """ + self.sf.write("Xsram ") + for i in range(dbits): + self.sf.write("D[{0}] ".format(i)) + for i in range(abits): + self.sf.write("A[{0}] ".format(i)) + for i in tech.spice["control_signals"]: + self.sf.write("{0} ".format(i)) + self.sf.write("{0} ".format(tech.spice["clk"])) + self.sf.write("{0} {1} ".format(self.vdd_name, self.gnd_name)) + self.sf.write("{0}\n".format(sram_name)) -def write_include(stim_file, models): - """Writes include statements, inputs are lists of model files""" - for item in list(models): - if os.path.isfile(item): - stim_file.write(".include \"{0}\"\n".format(item)) - else: - debug.error("Could not find spice model: {0}\nSet SPICE_MODEL_DIR to over-ride path.\n".format(item)) + def inst_model(self, pins, model_name): + """ Function to instantiate a generic model with a set of pins """ + self.sf.write("X{0} ".format(model_name)) + for pin in pins: + self.sf.write("{0} ".format(pin)) + self.sf.write("{0}\n".format(model_name)) -def write_supply(stim_file): - """ Writes supply voltage statements """ - stim_file.write("V{0} {0} 0.0 {1}\n".format(vdd_name, vdd_voltage)) - stim_file.write("V{0} {0} 0.0 {1}\n".format(gnd_name, gnd_voltage)) - # This is for the test power supply - stim_file.write("V{0} {0} 0.0 {1}\n".format("test"+vdd_name, vdd_voltage)) - stim_file.write("V{0} {0} 0.0 {1}\n".format("test"+gnd_name, gnd_voltage)) + def create_inverter(self, size=1, beta=2.5): + """ Generates inverter for the top level signals (only for sim purposes) """ + self.sf.write(".SUBCKT test_inv in out {0} {1}\n".format(self.vdd_name, self.gnd_name)) + self.sf.write("mpinv out in {0} {0} {1} w={2}u l={3}u\n".format(self.vdd_name, + self.pmos_name, + beta * size * self.tx_width, + self.tx_length)) + self.sf.write("mninv out in {0} {0} {1} w={2}u l={3}u\n".format(self.gnd_name, + self.nmos_name, + size * self.tx_width, + self.tx_length)) + self.sf.write(".ENDS test_inv\n") -def run_sim(): - """ Run hspice in batch mode and output rawfile to parse. """ - temp_stim = "{0}stim.sp".format(OPTS.openram_temp) - import datetime - start_time = datetime.datetime.now() - debug.check(OPTS.spice_exe!="","No spice simulator has been found.") - - if OPTS.spice_name == "xa": - # Output the xa configurations here. FIXME: Move this to write it once. - xa_cfg = open("{}xa.cfg".format(OPTS.openram_temp), "w") - xa_cfg.write("set_sim_level -level 7\n") - xa_cfg.write("set_powernet_level 7 -node vdd\n") - xa_cfg.close() - cmd = "{0} {1} -c {2}xa.cfg -o {2}xa -mt 2".format(OPTS.spice_exe, - temp_stim, - OPTS.openram_temp) - valid_retcode=0 - elif OPTS.spice_name == "hspice": - # TODO: Should make multithreading parameter a configuration option - cmd = "{0} -mt 2 -i {1} -o {2}timing".format(OPTS.spice_exe, - temp_stim, - OPTS.openram_temp) - valid_retcode=0 - else: - cmd = "{0} -b -o {2}timing.lis {1}".format(OPTS.spice_exe, - temp_stim, - OPTS.openram_temp) - # for some reason, ngspice-25 returns 1 when it only has acceptable warnings - valid_retcode=1 + def create_buffer(self, buffer_name, size=[1,3], beta=2.5): + """ + Generates buffer for top level signals (only for sim + purposes). Size is pair for PMOS, NMOS width multiple. + """ + + self.sf.write(".SUBCKT test_{2} in out {0} {1}\n".format(self.vdd_name, + self.gnd_name, + buffer_name)) + self.sf.write("mpinv1 out_inv in {0} {0} {1} w={2}u l={3}u\n".format(self.vdd_name, + self.pmos_name, + beta * size[0] * self.tx_width, + self.tx_length)) + self.sf.write("mninv1 out_inv in {0} {0} {1} w={2}u l={3}u\n".format(self.gnd_name, + self.nmos_name, + size[0] * self.tx_width, + self.tx_length)) + self.sf.write("mpinv2 out out_inv {0} {0} {1} w={2}u l={3}u\n".format(self.vdd_name, + self.pmos_name, + beta * size[1] * self.tx_width, + self.tx_length)) + self.sf.write("mninv2 out out_inv {0} {0} {1} w={2}u l={3}u\n".format(self.gnd_name, + self.nmos_name, + size[1] * self.tx_width, + self.tx_length)) + self.sf.write(".ENDS test_{0}\n\n".format(buffer_name)) + + + def inst_buffer(self, buffer_name, signal_list): + """ Adds buffers to each top level signal that is in signal_list (only for sim purposes) """ + for signal in signal_list: + self.sf.write("X{0}_buffer {0} {0}_buf {1} {2} test_{3}\n".format(signal, + "test"+self.vdd_name, + "test"+self.gnd_name, + buffer_name)) + + + def inst_inverter(self, signal_list): + """ Adds inv for each signal that needs its inverted version (only for sim purposes) """ + for signal in signal_list: + self.sf.write("X{0}_inv {0} {0}_inv {1} {2} test_inv\n".format(signal, + "test"+self.vdd_name, + "test"+self.gnd_name)) - spice_stdout = open("{0}spice_stdout.log".format(OPTS.openram_temp), 'w') - spice_stderr = open("{0}spice_stderr.log".format(OPTS.openram_temp), 'w') + def inst_accesstx(self, dbits): + """ Adds transmission gate for inputs to data-bus (only for sim purposes) """ + self.sf.write("* Tx Pin-list: Drain Gate Source Body\n") + for i in range(dbits): + pmos_access_string="mp{0} DATA[{0}] acc_en D[{0}] {1} {2} w={3}u l={4}u\n" + self.sf.write(pmos_access_string.format(i, + "test"+self.vdd_name, + self.pmos_name, + 2 * self.tx_width, + self.tx_length)) + nmos_access_string="mn{0} DATA[{0}] acc_en_inv D[{0}] {1} {2} w={3}u l={4}u\n" + self.sf.write(nmos_access_string.format(i, + "test"+self.gnd_name, + self.nmos_name, + 2 * self.tx_width, + self.tx_length)) - debug.info(3, cmd) - retcode = subprocess.call(cmd, stdout=spice_stdout, stderr=spice_stderr, shell=True) + def gen_pulse(self, sig_name, v1, v2, offset, period, t_rise, t_fall): + """ + Generates a periodic signal with 50% duty cycle and slew rates. Period is measured + from 50% to 50%. + """ + self.sf.write("* PULSE: period={0}\n".format(period)) + pulse_string="V{0} {0} 0 PULSE ({1} {2} {3}n {4}n {5}n {6}n {7}n)\n" + self.sf.write(pulse_string.format(sig_name, + v1, + v2, + offset, + t_rise, + t_fall, + 0.5*period-0.5*t_rise-0.5*t_fall, + period)) - spice_stdout.close() - spice_stderr.close() + + def gen_pwl(self, sig_name, clk_times, data_values, period, slew, setup): + """ + Generate a PWL stimulus given a signal name and data values at each period. + Automatically creates slews and ensures each data occurs a setup before the clock + edge. The first clk_time should be 0 and is the initial time that corresponds + to the initial value. + """ + # the initial value is not a clock time + debug.check(len(clk_times)==len(data_values),"Clock and data value lengths don't match.") - if (retcode > valid_retcode): - debug.error("Spice simulation error: " + cmd, -1) - else: - end_time = datetime.datetime.now() - delta_time = round((end_time-start_time).total_seconds(),1) - debug.info(2,"*** Spice: {} seconds".format(delta_time)) + # shift signal times earlier for setup time + times = np.array(clk_times) - setup*period + values = np.array(data_values) * self.vdd_voltage + half_slew = 0.5 * slew + self.sf.write("* (time, data): {}\n".format(zip(clk_times, data_values))) + self.sf.write("V{0} {0} 0 PWL (0n {1}v ".format(sig_name, values[0])) + for i in range(1,len(times)): + self.sf.write("{0}n {1}v {2}n {3}v ".format(times[i]-half_slew, + values[i-1], + times[i]+half_slew, + values[i])) + self.sf.write(")\n") + + def gen_constant(self, sig_name, v_val): + """ Generates a constant signal with reference voltage and the voltage value """ + self.sf.write("V{0} {0} 0 DC {1}\n".format(sig_name, v_val)) + + def get_inverse_voltage(self, value): + if value > 0.5*self.vdd_voltage: + return self.gnd_voltage + elif value <= 0.5*self.vdd_voltage: + return self.vdd_voltage + else: + debug.error("Invalid value to get an inverse of: {0}".format(value)) + + def get_inverse_value(self, value): + if value > 0.5: + return 0 + elif value <= 0.5: + return 1 + else: + debug.error("Invalid value to get an inverse of: {0}".format(value)) + + + def gen_meas_delay(self, meas_name, trig_name, targ_name, trig_val, targ_val, trig_dir, targ_dir, trig_td, targ_td): + """ Creates the .meas statement for the measurement of delay """ + measure_string=".meas tran {0} TRIG v({1}) VAL={2} {3}=1 TD={4}n TARG v({5}) VAL={6} {7}=1 TD={8}n\n\n" + self.sf.write(measure_string.format(meas_name, + trig_name, + trig_val, + trig_dir, + trig_td, + targ_name, + targ_val, + targ_dir, + targ_td)) + + def gen_meas_power(self, meas_name, t_initial, t_final): + """ Creates the .meas statement for the measurement of avg power """ + # power mea cmd is different in different spice: + if OPTS.spice_name == "hspice": + power_exp = "power" + else: + power_exp = "par('(-1*v(" + str(self.vdd_name) + ")*I(v" + str(self.vdd_name) + "))')" + self.sf.write(".meas tran {0} avg {1} from={2}n to={3}n\n\n".format(meas_name, + power_exp, + t_initial, + t_final)) + + def write_control(self, end_time): + """ Write the control cards to run and end the simulation """ + # UIC is needed for ngspice to converge + self.sf.write(".TRAN 5p {0}n UIC\n".format(end_time)) + if OPTS.spice_name == "ngspice": + # ngspice sometimes has convergence problems if not using gear method + # which is more accurate, but slower than the default trapezoid method + # Do not remove this or it may not converge due to some "pa_00" nodes + # unless you figure out what these are. + self.sf.write(".OPTIONS POST=1 RUNLVL=4 PROBE method=gear TEMP={}\n".format(self.temperature)) + else: + self.sf.write(".OPTIONS POST=1 RUNLVL=4 PROBE TEMP={}\n".format(self.temperature)) + + # create plots for all signals + self.sf.write("* probe is used for hspice/xa, while plot is used in ngspice\n") + if OPTS.debug_level>0: + if OPTS.spice_name in ["hspice","xa"]: + self.sf.write(".probe V(*)\n") + else: + self.sf.write(".plot V(*)\n") + else: + self.sf.write("*.probe V(*)\n") + self.sf.write("*.plot V(*)\n") + + # end the stimulus file + self.sf.write(".end\n\n") + + + def write_include(self, circuit): + """Writes include statements, inputs are lists of model files""" + includes = self.device_models + [circuit] + self.sf.write("* {} process corner\n".format(self.process)) + for item in list(includes): + if os.path.isfile(item): + self.sf.write(".include \"{0}\"\n".format(item)) + else: + debug.error("Could not find spice model: {0}\nSet SPICE_MODEL_DIR to over-ride path.\n".format(item)) + + + def write_supply(self): + """ Writes supply voltage statements """ + self.sf.write("V{0} {0} 0.0 {1}\n".format(self.vdd_name, self.vdd_voltage)) + self.sf.write("V{0} {0} 0.0 {1}\n".format(self.gnd_name, self.gnd_voltage)) + # This is for the test power supply + self.sf.write("V{0} {0} 0.0 {1}\n".format("test"+self.vdd_name, self.vdd_voltage)) + self.sf.write("V{0} {0} 0.0 {1}\n".format("test"+self.gnd_name, self.gnd_voltage)) + + + def run_sim(self): + """ Run hspice in batch mode and output rawfile to parse. """ + temp_stim = "{0}stim.sp".format(OPTS.openram_temp) + import datetime + start_time = datetime.datetime.now() + debug.check(OPTS.spice_exe!="","No spice simulator has been found.") + + if OPTS.spice_name == "xa": + # Output the xa configurations here. FIXME: Move this to write it once. + xa_cfg = open("{}xa.cfg".format(OPTS.openram_temp), "w") + xa_cfg.write("set_sim_level -level 7\n") + xa_cfg.write("set_powernet_level 7 -node vdd\n") + xa_cfg.close() + cmd = "{0} {1} -c {2}xa.cfg -o {2}xa -mt 2".format(OPTS.spice_exe, + temp_stim, + OPTS.openram_temp) + valid_retcode=0 + elif OPTS.spice_name == "hspice": + # TODO: Should make multithreading parameter a configuration option + cmd = "{0} -mt 2 -i {1} -o {2}timing".format(OPTS.spice_exe, + temp_stim, + OPTS.openram_temp) + valid_retcode=0 + else: + cmd = "{0} -b -o {2}timing.lis {1}".format(OPTS.spice_exe, + temp_stim, + OPTS.openram_temp) + # for some reason, ngspice-25 returns 1 when it only has acceptable warnings + valid_retcode=1 + + + spice_stdout = open("{0}spice_stdout.log".format(OPTS.openram_temp), 'w') + spice_stderr = open("{0}spice_stderr.log".format(OPTS.openram_temp), 'w') + + debug.info(3, cmd) + retcode = subprocess.call(cmd, stdout=spice_stdout, stderr=spice_stderr, shell=True) + + spice_stdout.close() + spice_stderr.close() + + if (retcode > valid_retcode): + debug.error("Spice simulation error: " + cmd, -1) + else: + end_time = datetime.datetime.now() + delta_time = round((end_time-start_time).total_seconds(),1) + debug.info(2,"*** Spice: {} seconds".format(delta_time)) diff --git a/compiler/example_config_scn3me_subm.py b/compiler/example_config_scn3me_subm.py index 1145c5b2..5ba52bb0 100644 --- a/compiler/example_config_scn3me_subm.py +++ b/compiler/example_config_scn3me_subm.py @@ -3,6 +3,9 @@ num_words = 16 num_banks = 1 tech_name = "scn3me_subm" +supply_voltages = [ 5.0 ] +temperatures = [ 25.0 ] + output_path = "temp" output_name = "sram_2_16_1_scn3me_subm" diff --git a/compiler/options.py b/compiler/options.py index 6393a545..738b1907 100644 --- a/compiler/options.py +++ b/compiler/options.py @@ -44,6 +44,13 @@ class options(optparse.Values): analytical_delay = True # Purge the temp directory after a successful run (doesn't purge on errors, anyhow) purge_temp = True + + # These are the configuration parameters + rw_ports = 1 + r_ports = 0 + supply_voltages = [3] + temperatures = [25] + process_corners = ["TT"] # These are the default modules that can be over-riden diff --git a/compiler/sram.py b/compiler/sram.py index 72815dd5..951a5ea3 100644 --- a/compiler/sram.py +++ b/compiler/sram.py @@ -1040,8 +1040,7 @@ class sram(design.design): # Characterize the design start_time = datetime.datetime.now() from characterizer import lib - libname = OPTS.output_path + self.name + ".lib" - print("LIB: Writing to {0}".format(libname)) + print("LIB: Characterizing... ") if OPTS.analytical_delay: print("Using analytical delay models (no characterization)") else: @@ -1049,7 +1048,7 @@ class sram(design.design): print("Performing simulation-based characterization with {}".format(OPTS.spice_name)) if OPTS.trim_netlist: print("Trimming netlist to speed up characterization.") - lib.lib(libname=libname,sram=self,sp_file=sp_file) + lib.lib(out_dir=OPTS.output_path, sram=self, sp_file=sp_file) print_time("Characterization", datetime.datetime.now(), start_time) # Write the layout diff --git a/compiler/tests/21_hspice_delay_test.py b/compiler/tests/21_hspice_delay_test.py index aa9212b3..855711c5 100644 --- a/compiler/tests/21_hspice_delay_test.py +++ b/compiler/tests/21_hspice_delay_test.py @@ -27,7 +27,7 @@ class timing_sram_test(openram_test): debug.error("Could not find {} simulator.".format(OPTS.spice_name),-1) import sram - + import tech debug.info(1, "Testing timing for sample 1bit, 16words SRAM with 1 bank") s = sram.sram(word_size=OPTS.word_size, num_words=OPTS.num_words, @@ -43,9 +43,9 @@ class timing_sram_test(openram_test): probe_data = s.word_size - 1 debug.info(1, "Probe address {0} probe data {1}".format(probe_address, probe_data)) - d = delay.delay(s,tempspice) + d = delay.delay(s,tempspice,tech.spice["nom_delay"]) import tech - loads = [tech.spice["FF_in_cap"]*4] + loads = [tech.spice["msflop_in_cap"]*4] slews = [tech.spice["rise_time"]*2] data = d.analyze(probe_address, probe_data,slews,loads) #print data diff --git a/compiler/tests/21_hspice_setuphold_test.py b/compiler/tests/21_hspice_setuphold_test.py index 5ec3b77e..8e4bbf1f 100644 --- a/compiler/tests/21_hspice_setuphold_test.py +++ b/compiler/tests/21_hspice_setuphold_test.py @@ -31,7 +31,7 @@ class timing_setup_test(openram_test): import tech slews = [tech.spice["rise_time"]*2] - sh = setup_hold.setup_hold() + sh = setup_hold.setup_hold(tech.spice["nom_corner"])) data = sh.analyze(slews,slews) if OPTS.tech_name == "freepdk45": diff --git a/compiler/tests/21_ngspice_delay_test.py b/compiler/tests/21_ngspice_delay_test.py index be2c04d6..e857fca1 100644 --- a/compiler/tests/21_ngspice_delay_test.py +++ b/compiler/tests/21_ngspice_delay_test.py @@ -27,7 +27,7 @@ class timing_sram_test(openram_test): debug.error("Could not find {} simulator.".format(OPTS.spice_name),-1) import sram - + import tech debug.info(1, "Testing timing for sample 1bit, 16words SRAM with 1 bank") s = sram.sram(word_size=OPTS.word_size, num_words=OPTS.num_words, @@ -41,9 +41,9 @@ class timing_sram_test(openram_test): probe_data = s.word_size - 1 debug.info(1, "Probe address {0} probe data {1}".format(probe_address, probe_data)) - d = delay.delay(s,tempspice) + d = delay.delay(s,tempspice,tech.spice["nom_corner"]) import tech - loads = [tech.spice["FF_in_cap"]*4] + loads = [tech.spice["msflop_in_cap"]*4] slews = [tech.spice["rise_time"]*2] data = d.analyze(probe_address, probe_data,slews,loads) #print data diff --git a/compiler/tests/21_ngspice_setuphold_test.py b/compiler/tests/21_ngspice_setuphold_test.py index 5fa383fc..e3c90914 100644 --- a/compiler/tests/21_ngspice_setuphold_test.py +++ b/compiler/tests/21_ngspice_setuphold_test.py @@ -30,7 +30,7 @@ class timing_setup_test(openram_test): import tech slews = [tech.spice["rise_time"]*2] - sh = setup_hold.setup_hold() + sh = setup_hold.setup_hold(tech.spice["nom_corner"]) data = sh.analyze(slews,slews) if OPTS.tech_name == "freepdk45": diff --git a/compiler/tests/23_lib_sram_model_test.py b/compiler/tests/23_lib_sram_model_test.py index 5d47c287..9e4734e2 100644 --- a/compiler/tests/23_lib_sram_model_test.py +++ b/compiler/tests/23_lib_sram_model_test.py @@ -5,7 +5,7 @@ Check the .lib file for an SRAM import unittest from testutils import header,openram_test -import sys,os +import sys,os,re sys.path.append(os.path.join(sys.path[0],"..")) import globals from globals import OPTS @@ -30,14 +30,20 @@ class lib_test(openram_test): tempspice = OPTS.openram_temp + "temp.sp" s.sp_write(tempspice) - filename = s.name + "_analytical.lib" - libname = OPTS.openram_temp + filename - lib.lib(libname=libname,sram=s,sp_file=tempspice,use_model=True) + lib.lib(out_dir=OPTS.openram_temp, sram=s, sp_file=tempspice, use_model=True) - # let's diff the result with a golden model - golden = "{0}/golden/{1}".format(os.path.dirname(os.path.realpath(__file__)),filename) - self.isapproxdiff(libname,golden,0.15) + # get all of the .lib files generated + files = os.listdir(OPTS.openram_temp) + nametest = re.compile("\.lib$", re.IGNORECASE) + lib_files = filter(nametest.search, files) + # and compare them with the golden model + for filename in lib_files: + newname = filename.replace(".lib","_analytical.lib") + libname = "{0}/{1}".format(OPTS.openram_temp,filename) + golden = "{0}/golden/{1}".format(os.path.dirname(os.path.realpath(__file__)),newname) + self.isapproxdiff(libname,golden,0.15) + globals.end_openram() # instantiate a copdsay of the class to actually run the test diff --git a/compiler/tests/23_lib_sram_test.py b/compiler/tests/23_lib_sram_test.py index 722854b3..d58c50dd 100644 --- a/compiler/tests/23_lib_sram_test.py +++ b/compiler/tests/23_lib_sram_test.py @@ -5,7 +5,7 @@ Check the .lib file for an SRAM import unittest from testutils import header,openram_test -import sys,os +import sys,os,re sys.path.append(os.path.join(sys.path[0],"..")) import globals from globals import OPTS @@ -39,13 +39,18 @@ class lib_test(openram_test): tempspice = OPTS.openram_temp + "temp.sp" s.sp_write(tempspice) - filename = s.name + ".lib" - libname = OPTS.openram_temp + filename - lib.lib(libname=libname,sram=s,sp_file=tempspice,use_model=False) - - # let's diff the result with a golden model - golden = "{0}/golden/{1}".format(os.path.dirname(os.path.realpath(__file__)),filename) - self.isapproxdiff(libname,golden,0.15) + lib.lib(out_dir=OPTS.openram_temp, sram=s, sp_file=tempspice, use_model=False) + + # get all of the .lib files generated + files = os.listdir(OPTS.openram_temp) + nametest = re.compile("\.lib$", re.IGNORECASE) + lib_files = filter(nametest.search, files) + + # and compare them with the golden model + for filename in lib_files: + libname = "{0}/{1}".format(OPTS.openram_temp,filename) + golden = "{0}/golden/{1}".format(os.path.dirname(os.path.realpath(__file__)),filename) + self.isapproxdiff(libname,golden,0.15) OPTS.analytical_delay = True OPTS.trim_netlist = True diff --git a/technology/freepdk45/tech/tech.py b/technology/freepdk45/tech/tech.py index 1947fcc7..c58f0ef5 100644 --- a/technology/freepdk45/tech/tech.py +++ b/technology/freepdk45/tech/tech.py @@ -237,26 +237,16 @@ drc["metal4_extend_via4"] = 0.07 spice = {} spice["nmos"] = "nmos_vtg" spice["pmos"] = "pmos_vtg" +# This is a map of corners to model files SPICE_MODEL_DIR=os.environ.get("SPICE_MODEL_DIR") -spice["fet_models"] = [SPICE_MODEL_DIR+"/NMOS_VTG.inc", - SPICE_MODEL_DIR+"/PMOS_VTG.inc"] +spice["fet_models"] = { "TT" : [SPICE_MODEL_DIR+"/NMOS_VTG.inc",SPICE_MODEL_DIR+"/PMOS_VTG.inc"]} #spice stimulus related variables spice["feasible_period"] = 5 # estimated feasible period in ns -spice["supply_voltage"] = 1.0 #vdd in [Volts] -spice["gnd_voltage"] = 0.0 #gnd in [Volts] -spice["rise_time"] = 0.005 #rise time in [Nano-seconds] -spice["fall_time"] = 0.005 #fall time in [Nano-seconds] -spice["temp"] = 25 #temperature in [Celsius] - -#parasitics of metal for bit/word lines -spice["bitline_res"] = 0.1 #bitline resistance in [Ohms/micro-meter] -spice["bitline_cap"] = 0.2 #bitline capacitance in [Femto-farad/micro-meter] -spice["wordline_res"] = 0.1 #wordline resistance in [Ohms/micro-meter] -spice["wordline_cap"] = 0.2 #wordline capacitance in [Femto-farad/micro-meter] -spice["FF_in_cap"] = 0.2091 #Input capacitance of ms_flop (Din) [Femto-farad] -spice["tri_gate_out_cap"] = 0.41256 #Output capacitance of tri_gate (tri_out) [Femto-farad] - +spice["supply_voltage"] = 1.0 # ideal vdd in [Volts] +spice["rise_time"] = 0.005 # rise time in [Nano-seconds] +spice["fall_time"] = 0.005 # fall time in [Nano-seconds] +spice["nom_corner"] = ("TT", 1.0, 25) # Nominal process corner #sram signal names spice["vdd_name"] = "vdd" @@ -264,8 +254,6 @@ spice["gnd_name"] = "gnd" spice["control_signals"] = ["CSb", "WEb", "OEb"] spice["data_name"] = "DATA" spice["addr_name"] = "ADDR" -spice["pmos_name"] = spice["pmos"] -spice["nmos_name"] = spice["nmos"] spice["minwidth_tx"] = drc["minwidth_tx"] spice["channel"] = drc["minlength_channel"] spice["clk"] = "clk" @@ -280,6 +268,7 @@ spice["msflop_setup"] = 9 # DFF setup time in ps spice["msflop_hold"] = 1 # DFF hold time in ps spice["msflop_delay"] = 20.5 # DFF Clk-to-q delay in ps spice["msflop_slew"] = 13.1 # DFF output slew in ps w/ no load +spice["msflop_in_cap"] = 0.2091 # Input capacitance of ms_flop (Din) [Femto-farad] ################################################### diff --git a/technology/scn3me_subm/tech/tech.py b/technology/scn3me_subm/tech/tech.py index d3064c34..c89f5613 100755 --- a/technology/scn3me_subm/tech/tech.py +++ b/technology/scn3me_subm/tech/tech.py @@ -197,24 +197,16 @@ drc["minarea_metal3"] = 0 spice={} spice["nmos"]="n" spice["pmos"]="p" -spice["fet_models"] = [os.environ.get("SPICE_MODEL_DIR")+"/on_c5n.sp"] +# This is a map of corners to model files +SPICE_MODEL_DIR=os.environ.get("SPICE_MODEL_DIR") +spice["fet_models"] = { "TT" : [SPICE_MODEL_DIR+"/on_c5n.sp"] } #spice stimulus related variables spice["feasible_period"] = 5 # estimated feasible period in ns -spice["supply_voltage"] = 5.0 #vdd in [Volts] -spice["gnd_voltage"] = 0.0 #gnd in [Volts] -spice["rise_time"] = 0.05 #rise time in [Nano-seconds] -spice["fall_time"] = 0.05 #fall time in [Nano-seconds] -spice["temp"] = 25 #temperature in [Celsius] - -#parasitics of metal for bit/word lines -spice["bitline_res"] = 0.1 #bitline resistance in [Ohms/micro-meter] -spice["bitline_cap"] = 0.2 #bitline capacitance in [Femto-farad/micro-meter] -spice["wordline_res"] = 0.1 #wordline resistance in [Ohms/micro-meter] -spice["wordline_cap"] = 0.2 #wordline capacitance in [Femto-farad/micro-meter] -spice["FF_in_cap"] = 9.8242 #Input capacitance of ms_flop (Din) [Femto-farad] -spice["tri_gate_out_cap"] = 1.4980 #Output capacitance of tri_gate (tri_out) [Femto-farad] - +spice["supply_voltage"] = 5.0 # ideal vdd in [Volts] +spice["rise_time"] = 0.05 # rise time in [Nano-seconds] +spice["fall_time"] = 0.05 # fall time in [Nano-seconds] +spice["nom_corner"] = ("TT", 5.0, 25) # Nominal process corner #sram signal names spice["vdd_name"] = "vdd" @@ -222,8 +214,6 @@ spice["gnd_name"] = "gnd" spice["control_signals"] = ["CSb", "WEb", "OEb"] spice["data_name"] = "DATA" spice["addr_name"] = "ADDR" -spice["pmos_name"] = spice["pmos"] -spice["nmos_name"] = spice["nmos"] spice["minwidth_tx"] = drc["minwidth_tx"] spice["channel"] = drc["minlength_channel"] spice["clk"] = "clk" @@ -239,6 +229,7 @@ spice["msflop_setup"] = 9 # DFF setup time in ps spice["msflop_hold"] = 1 # DFF hold time in ps spice["msflop_delay"] = 20.5 # DFF Clk-to-q delay in ps spice["msflop_slew"] = 13.1 # DFF output slew in ps w/ no load +spice["msflop_in_cap"] = 9.8242 # Input capacitance of ms_flop (Din) [Femto-farad] ################################################### From 4d359725533d369b7e0184784bd4f0597ac395a2 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Fri, 9 Feb 2018 15:49:55 -0800 Subject: [PATCH 73/95] Get default corner options from tech file --- compiler/globals.py | 17 +++++++++++++---- compiler/options.py | 7 ++++--- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/compiler/globals.py b/compiler/globals.py index 11a8854f..21c108df 100644 --- a/compiler/globals.py +++ b/compiler/globals.py @@ -177,7 +177,7 @@ def read_config(config_file, is_unit_test=True): OPTS.num_words, OPTS.num_banks, OPTS.OPTS.tech_name) - + # Don't delete the output dir, it may have other files! # make the directory if it doesn't exist try: @@ -263,9 +263,8 @@ def import_tech(): # Set the tech to the config file we read in instead of the command line value. OPTS.tech_name = OPTS.tech_name - - - # environment variable should point to the technology dir + + # environment variable should point to the technology dir try: OPENRAM_TECH = os.path.abspath(os.environ.get("OPENRAM_TECH")) except: @@ -289,6 +288,16 @@ def import_tech(): debug.error("Nonexistent technology_setup_file: {0}.py".format(filename)) sys.exit(1) + import tech + # Set some default options now based on the technology... + if (OPTS.process_corners == ""): + OPTS.process_corners = [tech.spice["nom_corner"][0]] + if (OPTS.supply_voltages == ""): + OPTS.supply_voltages = [tech.spice["nom_corner"][1]] + if (OPTS.temperatures == ""): + OPTS.temperatures = [tech.spice["nom_corner"][2]] + + def print_time(name, now_time, last_time=None): """ Print a statement about the time delta. """ if last_time: diff --git a/compiler/options.py b/compiler/options.py index 738b1907..133ee926 100644 --- a/compiler/options.py +++ b/compiler/options.py @@ -48,9 +48,10 @@ class options(optparse.Values): # These are the configuration parameters rw_ports = 1 r_ports = 0 - supply_voltages = [3] - temperatures = [25] - process_corners = ["TT"] + # These will get initialized by the the file + supply_voltages = "" + temperatures = "" + process_corners = "" # These are the default modules that can be over-riden From b75eef3684ae3aafb87722bc986a55cd26453e09 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Sat, 10 Feb 2018 08:02:59 -0800 Subject: [PATCH 74/95] Fix syntax error. --- compiler/tests/21_hspice_setuphold_test.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/compiler/tests/21_hspice_setuphold_test.py b/compiler/tests/21_hspice_setuphold_test.py index 8e4bbf1f..d68fa423 100644 --- a/compiler/tests/21_hspice_setuphold_test.py +++ b/compiler/tests/21_hspice_setuphold_test.py @@ -31,7 +31,7 @@ class timing_setup_test(openram_test): import tech slews = [tech.spice["rise_time"]*2] - sh = setup_hold.setup_hold(tech.spice["nom_corner"])) + sh = setup_hold.setup_hold(tech.spice["nom_corner"]) data = sh.analyze(slews,slews) if OPTS.tech_name == "freepdk45": From 4dd075c7b74d52c54e872ed1923936a29183cc67 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Sun, 11 Feb 2018 16:34:32 -0800 Subject: [PATCH 75/95] Add V and C to names of lib files. --- compiler/characterizer/lib.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/compiler/characterizer/lib.py b/compiler/characterizer/lib.py index 61b13004..c43f2975 100644 --- a/compiler/characterizer/lib.py +++ b/compiler/characterizer/lib.py @@ -74,10 +74,10 @@ class lib: for proc in self.process_corners: for temp in self.temperatures: for volt in self.supply_voltages: - self.corner_name = "{0}_{1}_{2}_{3}".format(self.sram.name, - proc, - volt, - temp) + self.corner_name = "{0}_{1}_{2}V_{3}C".format(self.sram.name, + proc, + volt, + temp) self.corner_name = self.corner_name.replace(".","") # Remove decimals lib_name = self.out_dir+"{}.lib".format(self.corner_name) From f690532563daaed178afbf4ce3523c2c98162393 Mon Sep 17 00:00:00 2001 From: mguthaus Date: Sun, 11 Feb 2018 16:35:10 -0800 Subject: [PATCH 76/95] Add new corner-based lib files to unit tests. --- compiler/tests/23_lib_sram_model_test.py | 4 +-- compiler/tests/23_lib_sram_prune_test.py | 26 ++++++++++++------- compiler/tests/23_lib_sram_test.py | 4 +-- ...b => sram_2_16_1_freepdk45_TT_10V_25C.lib} | 4 +-- ..._16_1_freepdk45_TT_10V_25C_analytical.lib} | 4 +-- ...am_2_16_1_freepdk45_TT_10V_25C_pruned.lib} | 4 +-- ...=> sram_2_16_1_scn3me_subm_TT_50V_25C.lib} | 4 +-- ...6_1_scn3me_subm_TT_50V_25C_analytical.lib} | 4 +-- ..._2_16_1_scn3me_subm_TT_50V_25C_pruned.lib} | 4 +-- 9 files changed, 32 insertions(+), 26 deletions(-) rename compiler/tests/golden/{sram_2_16_1_freepdk45.lib => sram_2_16_1_freepdk45_TT_10V_25C.lib} (99%) rename compiler/tests/golden/{sram_2_16_1_freepdk45_analytical.lib => sram_2_16_1_freepdk45_TT_10V_25C_analytical.lib} (99%) rename compiler/tests/golden/{sram_2_16_1_freepdk45_pruned.lib => sram_2_16_1_freepdk45_TT_10V_25C_pruned.lib} (99%) rename compiler/tests/golden/{sram_2_16_1_scn3me_subm.lib => sram_2_16_1_scn3me_subm_TT_50V_25C.lib} (99%) rename compiler/tests/golden/{sram_2_16_1_scn3me_subm_analytical.lib => sram_2_16_1_scn3me_subm_TT_50V_25C_analytical.lib} (99%) rename compiler/tests/golden/{sram_2_16_1_scn3me_subm_pruned.lib => sram_2_16_1_scn3me_subm_TT_50V_25C_pruned.lib} (99%) diff --git a/compiler/tests/23_lib_sram_model_test.py b/compiler/tests/23_lib_sram_model_test.py index 9e4734e2..7c0f18a0 100644 --- a/compiler/tests/23_lib_sram_model_test.py +++ b/compiler/tests/23_lib_sram_model_test.py @@ -22,8 +22,8 @@ class lib_test(openram_test): debug.info(1, "Testing timing for sample 2 bit, 16 words SRAM with 1 bank") s = sram.sram(word_size=2, - num_words=OPTS.num_words, - num_banks=OPTS.num_banks, + num_words=16, + num_banks=1, name="sram_2_16_1_{0}".format(OPTS.tech_name)) OPTS.check_lvsdrc = True diff --git a/compiler/tests/23_lib_sram_prune_test.py b/compiler/tests/23_lib_sram_prune_test.py index 668a56e1..c8b7218f 100644 --- a/compiler/tests/23_lib_sram_prune_test.py +++ b/compiler/tests/23_lib_sram_prune_test.py @@ -5,7 +5,7 @@ Check the .lib file for an SRAM with pruning import unittest from testutils import header,openram_test -import sys,os +import sys,os,re sys.path.append(os.path.join(sys.path[0],"..")) import globals from globals import OPTS @@ -31,21 +31,27 @@ class lib_test(openram_test): debug.info(1, "Testing timing for sample 2 bit, 16 words SRAM with 1 bank") s = sram.sram(word_size=2, - num_words=OPTS.num_words, - num_banks=OPTS.num_banks, + num_words=16, + num_banks=1, name="sram_2_16_1_{0}".format(OPTS.tech_name)) OPTS.check_lvsdrc = True tempspice = OPTS.openram_temp + "temp.sp" s.sp_write(tempspice) - filename = s.name + "_pruned.lib" - libname = OPTS.openram_temp + filename - lib.lib(libname=libname,sram=s,sp_file=tempspice,use_model=False) - - # let's diff the result with a golden model - golden = "{0}/golden/{1}".format(os.path.dirname(os.path.realpath(__file__)),filename) - self.isapproxdiff(libname,golden,0.30) + lib.lib(out_dir=OPTS.openram_temp, sram=s, sp_file=tempspice, use_model=False) + + # get all of the .lib files generated + files = os.listdir(OPTS.openram_temp) + nametest = re.compile("\.lib$", re.IGNORECASE) + lib_files = filter(nametest.search, files) + + # and compare them with the golden model + for filename in lib_files: + newname = filename.replace(".lib","_pruned.lib") + libname = "{0}/{1}".format(OPTS.openram_temp,filename) + golden = "{0}/golden/{1}".format(os.path.dirname(os.path.realpath(__file__)),newname) + self.isapproxdiff(libname,golden,0.15) OPTS.analytical_delay = True reload(characterizer) diff --git a/compiler/tests/23_lib_sram_test.py b/compiler/tests/23_lib_sram_test.py index d58c50dd..74568940 100644 --- a/compiler/tests/23_lib_sram_test.py +++ b/compiler/tests/23_lib_sram_test.py @@ -31,8 +31,8 @@ class lib_test(openram_test): debug.info(1, "Testing timing for sample 2 bit, 16 words SRAM with 1 bank") s = sram.sram(word_size=2, - num_words=OPTS.num_words, - num_banks=OPTS.num_banks, + num_words=16, + num_banks=1, name="sram_2_16_1_{0}".format(OPTS.tech_name)) OPTS.check_lvsdrc = True diff --git a/compiler/tests/golden/sram_2_16_1_freepdk45.lib b/compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C.lib similarity index 99% rename from compiler/tests/golden/sram_2_16_1_freepdk45.lib rename to compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C.lib index 5bae0bc7..435a4f75 100644 --- a/compiler/tests/golden/sram_2_16_1_freepdk45.lib +++ b/compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C.lib @@ -1,4 +1,4 @@ -library (sram_2_16_1_freepdk45_lib){ +library (sram_2_16_1_freepdk45_TT_10V_25C_lib){ delay_model : "table_lookup"; time_unit : "1ns" ; voltage_unit : "1v" ; @@ -9,7 +9,7 @@ library (sram_2_16_1_freepdk45_lib){ pulling_resistance_unit :"1kohm" ; operating_conditions(TT){ voltage : 1.0 ; - temperature : 25.000 ; + temperature : 25; } input_threshold_pct_fall : 50.0 ; diff --git a/compiler/tests/golden/sram_2_16_1_freepdk45_analytical.lib b/compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C_analytical.lib similarity index 99% rename from compiler/tests/golden/sram_2_16_1_freepdk45_analytical.lib rename to compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C_analytical.lib index aabc209b..63e510fd 100644 --- a/compiler/tests/golden/sram_2_16_1_freepdk45_analytical.lib +++ b/compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C_analytical.lib @@ -1,4 +1,4 @@ -library (sram_2_16_1_freepdk45_lib){ +library (sram_2_16_1_freepdk45_TT_10V_25C_lib){ delay_model : "table_lookup"; time_unit : "1ns" ; voltage_unit : "1v" ; @@ -9,7 +9,7 @@ library (sram_2_16_1_freepdk45_lib){ pulling_resistance_unit :"1kohm" ; operating_conditions(TT){ voltage : 1.0 ; - temperature : 25.000 ; + temperature : 25; } input_threshold_pct_fall : 50.0 ; diff --git a/compiler/tests/golden/sram_2_16_1_freepdk45_pruned.lib b/compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C_pruned.lib similarity index 99% rename from compiler/tests/golden/sram_2_16_1_freepdk45_pruned.lib rename to compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C_pruned.lib index e0360805..06b9f36d 100644 --- a/compiler/tests/golden/sram_2_16_1_freepdk45_pruned.lib +++ b/compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C_pruned.lib @@ -1,4 +1,4 @@ -library (sram_2_16_1_freepdk45_lib){ +library (sram_2_16_1_freepdk45_TT_10V_25C_lib){ delay_model : "table_lookup"; time_unit : "1ns" ; voltage_unit : "1v" ; @@ -9,7 +9,7 @@ library (sram_2_16_1_freepdk45_lib){ pulling_resistance_unit :"1kohm" ; operating_conditions(TT){ voltage : 1.0 ; - temperature : 25.000 ; + temperature : 25; } input_threshold_pct_fall : 50.0 ; diff --git a/compiler/tests/golden/sram_2_16_1_scn3me_subm.lib b/compiler/tests/golden/sram_2_16_1_scn3me_subm_TT_50V_25C.lib similarity index 99% rename from compiler/tests/golden/sram_2_16_1_scn3me_subm.lib rename to compiler/tests/golden/sram_2_16_1_scn3me_subm_TT_50V_25C.lib index 40941598..d08de617 100644 --- a/compiler/tests/golden/sram_2_16_1_scn3me_subm.lib +++ b/compiler/tests/golden/sram_2_16_1_scn3me_subm_TT_50V_25C.lib @@ -1,4 +1,4 @@ -library (sram_2_16_1_scn3me_subm_lib){ +library (sram_2_16_1_scn3me_subm_TT_50V_25C_lib){ delay_model : "table_lookup"; time_unit : "1ns" ; voltage_unit : "1v" ; @@ -9,7 +9,7 @@ library (sram_2_16_1_scn3me_subm_lib){ pulling_resistance_unit :"1kohm" ; operating_conditions(TT){ voltage : 5.0 ; - temperature : 25.000 ; + temperature : 25; } input_threshold_pct_fall : 50.0 ; diff --git a/compiler/tests/golden/sram_2_16_1_scn3me_subm_analytical.lib b/compiler/tests/golden/sram_2_16_1_scn3me_subm_TT_50V_25C_analytical.lib similarity index 99% rename from compiler/tests/golden/sram_2_16_1_scn3me_subm_analytical.lib rename to compiler/tests/golden/sram_2_16_1_scn3me_subm_TT_50V_25C_analytical.lib index 59607107..52ecdb72 100644 --- a/compiler/tests/golden/sram_2_16_1_scn3me_subm_analytical.lib +++ b/compiler/tests/golden/sram_2_16_1_scn3me_subm_TT_50V_25C_analytical.lib @@ -1,4 +1,4 @@ -library (sram_2_16_1_scn3me_subm_lib){ +library (sram_2_16_1_scn3me_subm_TT_50V_25C_lib){ delay_model : "table_lookup"; time_unit : "1ns" ; voltage_unit : "1v" ; @@ -9,7 +9,7 @@ library (sram_2_16_1_scn3me_subm_lib){ pulling_resistance_unit :"1kohm" ; operating_conditions(TT){ voltage : 5.0 ; - temperature : 25.000 ; + temperature : 25; } input_threshold_pct_fall : 50.0 ; diff --git a/compiler/tests/golden/sram_2_16_1_scn3me_subm_pruned.lib b/compiler/tests/golden/sram_2_16_1_scn3me_subm_TT_50V_25C_pruned.lib similarity index 99% rename from compiler/tests/golden/sram_2_16_1_scn3me_subm_pruned.lib rename to compiler/tests/golden/sram_2_16_1_scn3me_subm_TT_50V_25C_pruned.lib index 201f0467..b2c93949 100644 --- a/compiler/tests/golden/sram_2_16_1_scn3me_subm_pruned.lib +++ b/compiler/tests/golden/sram_2_16_1_scn3me_subm_TT_50V_25C_pruned.lib @@ -1,4 +1,4 @@ -library (sram_2_16_1_scn3me_subm_lib){ +library (sram_2_16_1_scn3me_subm_TT_50V_25C_lib){ delay_model : "table_lookup"; time_unit : "1ns" ; voltage_unit : "1v" ; @@ -9,7 +9,7 @@ library (sram_2_16_1_scn3me_subm_lib){ pulling_resistance_unit :"1kohm" ; operating_conditions(TT){ voltage : 5.0 ; - temperature : 25.000 ; + temperature : 25; } input_threshold_pct_fall : 50.0 ; From 1795dc56770ffb3bcdbb1d8679c3abd83351a619 Mon Sep 17 00:00:00 2001 From: mguthaus Date: Sun, 11 Feb 2018 20:43:41 -0800 Subject: [PATCH 77/95] Fix three unit tests to work with new lib corner files. --- compiler/tests/21_hspice_delay_test.py | 2 +- compiler/tests/22_sram_func_test.py | 2 +- compiler/tests/30_openram_test.py | 7 ++++++- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/compiler/tests/21_hspice_delay_test.py b/compiler/tests/21_hspice_delay_test.py index 855711c5..69eee383 100644 --- a/compiler/tests/21_hspice_delay_test.py +++ b/compiler/tests/21_hspice_delay_test.py @@ -43,7 +43,7 @@ class timing_sram_test(openram_test): probe_data = s.word_size - 1 debug.info(1, "Probe address {0} probe data {1}".format(probe_address, probe_data)) - d = delay.delay(s,tempspice,tech.spice["nom_delay"]) + d = delay.delay(s,tempspice,tech.spice["nom_corner"]) import tech loads = [tech.spice["msflop_in_cap"]*4] slews = [tech.spice["rise_time"]*2] diff --git a/compiler/tests/22_sram_func_test.py b/compiler/tests/22_sram_func_test.py index ec6eabf2..bbbc334b 100644 --- a/compiler/tests/22_sram_func_test.py +++ b/compiler/tests/22_sram_func_test.py @@ -43,7 +43,7 @@ class sram_func_test(openram_test): probe_data = s.word_size - 1 debug.info(1, "Probe address {0} probe data {1}".format(probe_address, probe_data)) - d = delay.delay(s,tempspice) + d = delay.delay(s,tempspice,tech.spice["nom_corner"]) d.set_probe(probe_address,probe_data) # This will exit if it doesn't find a feasible period diff --git a/compiler/tests/30_openram_test.py b/compiler/tests/30_openram_test.py index 69288350..b7a200dc 100644 --- a/compiler/tests/30_openram_test.py +++ b/compiler/tests/30_openram_test.py @@ -52,11 +52,16 @@ class openram_test(openram_test): os.system(cmd) # assert an error until we actually check a resul - for extension in ["gds", "v", "lef", "lib", "sp"]: + for extension in ["gds", "v", "lef", "sp"]: filename = "{0}/{1}.{2}".format(out_path,out_file,extension) debug.info(1,"Checking for file: " + filename) self.assertEqual(os.path.exists(filename),True) + # Make sure there is any .lib file + import glob + files = glob.glob('{0}/*.lib'.format(out_path)) + self.assertTrue(len(files)>0) + # grep any errors from the output output = open("{0}/output.log".format(out_path),"r").read() self.assertEqual(len(re.findall('ERROR',output)),0) From a12ebeed9fbe0e8951434dc4bbb0a5d36bdd771d Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Mon, 12 Feb 2018 09:33:23 -0800 Subject: [PATCH 78/95] Add multiple process corners. Unit tests use nominal corner only. Add fake SCMOS nominal models, but they are broken. --- compiler/characterizer/stimuli.py | 21 +++++++++---------- compiler/globals.py | 6 +++--- compiler/tests/21_hspice_delay_test.py | 3 ++- compiler/tests/21_hspice_setuphold_test.py | 3 ++- compiler/tests/21_ngspice_delay_test.py | 3 ++- compiler/tests/21_ngspice_setuphold_test.py | 3 ++- compiler/tests/22_sram_func_test.py | 3 ++- compiler/tests/config_20_freepdk45.py | 3 +++ compiler/tests/config_20_scn3me_subm.py | 3 +++ technology/freepdk45/tech/tech.py | 13 ++++++++---- technology/scn3me_subm/models/nom/nmos.sp | 12 +++++++++++ technology/scn3me_subm/models/nom/pmos.sp | 11 ++++++++++ technology/scn3me_subm/tech/tech.py | 14 ++++++++++--- .../setup_scripts/setup_openram_freepdk45.py | 2 +- .../setup_openram_scn3me_subm.py | 8 +++---- 15 files changed, 77 insertions(+), 31 deletions(-) create mode 100644 technology/scn3me_subm/models/nom/nmos.sp create mode 100644 technology/scn3me_subm/models/nom/pmos.sp diff --git a/compiler/characterizer/stimuli.py b/compiler/characterizer/stimuli.py index c253f32b..297d9f37 100644 --- a/compiler/characterizer/stimuli.py +++ b/compiler/characterizer/stimuli.py @@ -26,8 +26,7 @@ class stimuli(): self.sf = stim_file - (self.process, self.vdd_voltage, self.temperature) = corner - self.gnd_voltage = 0 + (self.process, self.voltage, self.temperature) = corner self.device_models = tech.spice["fet_models"][self.process] @@ -158,7 +157,7 @@ class stimuli(): # shift signal times earlier for setup time times = np.array(clk_times) - setup*period - values = np.array(data_values) * self.vdd_voltage + values = np.array(data_values) * self.voltage half_slew = 0.5 * slew self.sf.write("* (time, data): {}\n".format(zip(clk_times, data_values))) self.sf.write("V{0} {0} 0 PWL (0n {1}v ".format(sig_name, values[0])) @@ -174,10 +173,10 @@ class stimuli(): self.sf.write("V{0} {0} 0 DC {1}\n".format(sig_name, v_val)) def get_inverse_voltage(self, value): - if value > 0.5*self.vdd_voltage: - return self.gnd_voltage - elif value <= 0.5*self.vdd_voltage: - return self.vdd_voltage + if value > 0.5*self.voltage: + return 0 + elif value <= 0.5*self.voltage: + return self.voltage else: debug.error("Invalid value to get an inverse of: {0}".format(value)) @@ -256,11 +255,11 @@ class stimuli(): def write_supply(self): """ Writes supply voltage statements """ - self.sf.write("V{0} {0} 0.0 {1}\n".format(self.vdd_name, self.vdd_voltage)) - self.sf.write("V{0} {0} 0.0 {1}\n".format(self.gnd_name, self.gnd_voltage)) + self.sf.write("V{0} {0} 0.0 {1}\n".format(self.vdd_name, self.voltage)) + self.sf.write("V{0} {0} 0.0 {1}\n".format(self.gnd_name, 0)) # This is for the test power supply - self.sf.write("V{0} {0} 0.0 {1}\n".format("test"+self.vdd_name, self.vdd_voltage)) - self.sf.write("V{0} {0} 0.0 {1}\n".format("test"+self.gnd_name, self.gnd_voltage)) + self.sf.write("V{0} {0} 0.0 {1}\n".format("test"+self.vdd_name, self.voltage)) + self.sf.write("V{0} {0} 0.0 {1}\n".format("test"+self.gnd_name, 0)) def run_sim(self): diff --git a/compiler/globals.py b/compiler/globals.py index 21c108df..5ce3e90e 100644 --- a/compiler/globals.py +++ b/compiler/globals.py @@ -291,11 +291,11 @@ def import_tech(): import tech # Set some default options now based on the technology... if (OPTS.process_corners == ""): - OPTS.process_corners = [tech.spice["nom_corner"][0]] + OPTS.process_corners = tech.spice["fet_models"].keys() if (OPTS.supply_voltages == ""): - OPTS.supply_voltages = [tech.spice["nom_corner"][1]] + OPTS.supply_voltages = tech.spice["supply_voltages"] if (OPTS.temperatures == ""): - OPTS.temperatures = [tech.spice["nom_corner"][2]] + OPTS.temperatures = tech.spice["temperatures"] def print_time(name, now_time, last_time=None): diff --git a/compiler/tests/21_hspice_delay_test.py b/compiler/tests/21_hspice_delay_test.py index 69eee383..10f50b14 100644 --- a/compiler/tests/21_hspice_delay_test.py +++ b/compiler/tests/21_hspice_delay_test.py @@ -43,7 +43,8 @@ class timing_sram_test(openram_test): probe_data = s.word_size - 1 debug.info(1, "Probe address {0} probe data {1}".format(probe_address, probe_data)) - d = delay.delay(s,tempspice,tech.spice["nom_corner"]) + corner = (OPTS.process_corners[0], OPTS.supply_voltages[0], OPTS.temperatures[0]) + d = delay.delay(s,tempspice,corner) import tech loads = [tech.spice["msflop_in_cap"]*4] slews = [tech.spice["rise_time"]*2] diff --git a/compiler/tests/21_hspice_setuphold_test.py b/compiler/tests/21_hspice_setuphold_test.py index d68fa423..9649a7a4 100644 --- a/compiler/tests/21_hspice_setuphold_test.py +++ b/compiler/tests/21_hspice_setuphold_test.py @@ -31,7 +31,8 @@ class timing_setup_test(openram_test): import tech slews = [tech.spice["rise_time"]*2] - sh = setup_hold.setup_hold(tech.spice["nom_corner"]) + corner = (OPTS.process_corners[0], OPTS.supply_voltages[0], OPTS.temperatures[0]) + sh = setup_hold.setup_hold(corner) data = sh.analyze(slews,slews) if OPTS.tech_name == "freepdk45": diff --git a/compiler/tests/21_ngspice_delay_test.py b/compiler/tests/21_ngspice_delay_test.py index e857fca1..d0330830 100644 --- a/compiler/tests/21_ngspice_delay_test.py +++ b/compiler/tests/21_ngspice_delay_test.py @@ -41,7 +41,8 @@ class timing_sram_test(openram_test): probe_data = s.word_size - 1 debug.info(1, "Probe address {0} probe data {1}".format(probe_address, probe_data)) - d = delay.delay(s,tempspice,tech.spice["nom_corner"]) + corner = (OPTS.process_corners[0], OPTS.supply_voltages[0], OPTS.temperatures[0]) + d = delay.delay(s,tempspice,corner) import tech loads = [tech.spice["msflop_in_cap"]*4] slews = [tech.spice["rise_time"]*2] diff --git a/compiler/tests/21_ngspice_setuphold_test.py b/compiler/tests/21_ngspice_setuphold_test.py index e3c90914..4e28ce47 100644 --- a/compiler/tests/21_ngspice_setuphold_test.py +++ b/compiler/tests/21_ngspice_setuphold_test.py @@ -30,7 +30,8 @@ class timing_setup_test(openram_test): import tech slews = [tech.spice["rise_time"]*2] - sh = setup_hold.setup_hold(tech.spice["nom_corner"]) + corner = (OPTS.process_corners[0], OPTS.supply_voltages[0], OPTS.temperatures[0]) + sh = setup_hold.setup_hold(corner) data = sh.analyze(slews,slews) if OPTS.tech_name == "freepdk45": diff --git a/compiler/tests/22_sram_func_test.py b/compiler/tests/22_sram_func_test.py index bbbc334b..f8042880 100644 --- a/compiler/tests/22_sram_func_test.py +++ b/compiler/tests/22_sram_func_test.py @@ -43,7 +43,8 @@ class sram_func_test(openram_test): probe_data = s.word_size - 1 debug.info(1, "Probe address {0} probe data {1}".format(probe_address, probe_data)) - d = delay.delay(s,tempspice,tech.spice["nom_corner"]) + corner = (OPTS.process_corners[0], OPTS.supply_voltages[0], OPTS.temperatures[0]) + d = delay.delay(s,tempspice,corner) d.set_probe(probe_address,probe_data) # This will exit if it doesn't find a feasible period diff --git a/compiler/tests/config_20_freepdk45.py b/compiler/tests/config_20_freepdk45.py index 4eb4f091..d7e1880e 100644 --- a/compiler/tests/config_20_freepdk45.py +++ b/compiler/tests/config_20_freepdk45.py @@ -3,5 +3,8 @@ num_words = 16 num_banks = 1 tech_name = "freepdk45" +process_corners = ["TT"] +supply_voltages = [1.0] +temperatures = [25] diff --git a/compiler/tests/config_20_scn3me_subm.py b/compiler/tests/config_20_scn3me_subm.py index 178eb91e..40addd69 100644 --- a/compiler/tests/config_20_scn3me_subm.py +++ b/compiler/tests/config_20_scn3me_subm.py @@ -3,4 +3,7 @@ num_words = 16 num_banks = 1 tech_name = "scn3me_subm" +process_corners = ["TT"] +supply_voltages = [5.0] +temperatures = [25] diff --git a/technology/freepdk45/tech/tech.py b/technology/freepdk45/tech/tech.py index c58f0ef5..dacc3644 100644 --- a/technology/freepdk45/tech/tech.py +++ b/technology/freepdk45/tech/tech.py @@ -239,16 +239,21 @@ spice["nmos"] = "nmos_vtg" spice["pmos"] = "pmos_vtg" # This is a map of corners to model files SPICE_MODEL_DIR=os.environ.get("SPICE_MODEL_DIR") -spice["fet_models"] = { "TT" : [SPICE_MODEL_DIR+"/NMOS_VTG.inc",SPICE_MODEL_DIR+"/PMOS_VTG.inc"]} +spice["fet_models"] = { "TT" : [SPICE_MODEL_DIR+"/models_nom/PMOS_VTG.inc",SPICE_MODEL_DIR+"/models_nom/NMOS_VTG.inc"], + "FF" : [SPICE_MODEL_DIR+"/models_ff/PMOS_VTG.inc",SPICE_MODEL_DIR+"/models_ff/NMOS_VTG.inc"], + "SF" : [SPICE_MODEL_DIR+"/models_ss/PMOS_VTG.inc",SPICE_MODEL_DIR+"/models_ff/NMOS_VTG.inc"], + "FS" : [SPICE_MODEL_DIR+"/models_ff/PMOS_VTG.inc",SPICE_MODEL_DIR+"/models_ss/NMOS_VTG.inc"], + "SS" : [SPICE_MODEL_DIR+"/models_ss/PMOS_VTG.inc",SPICE_MODEL_DIR+"/models_ss/NMOS_VTG.inc"]} #spice stimulus related variables -spice["feasible_period"] = 5 # estimated feasible period in ns -spice["supply_voltage"] = 1.0 # ideal vdd in [Volts] +spice["feasible_period"] = 5 # estimated feasible period in ns +spice["supply_voltages"] = [0.9, 1.0, 1.1] # Supply voltage corners in [Volts] spice["rise_time"] = 0.005 # rise time in [Nano-seconds] spice["fall_time"] = 0.005 # fall time in [Nano-seconds] -spice["nom_corner"] = ("TT", 1.0, 25) # Nominal process corner +spice["temperatures"] = [0, 25, 100] # Temperature corners (celcius) #sram signal names +#FIXME: We don't use these everywhere... spice["vdd_name"] = "vdd" spice["gnd_name"] = "gnd" spice["control_signals"] = ["CSb", "WEb", "OEb"] diff --git a/technology/scn3me_subm/models/nom/nmos.sp b/technology/scn3me_subm/models/nom/nmos.sp new file mode 100644 index 00000000..359de4c9 --- /dev/null +++ b/technology/scn3me_subm/models/nom/nmos.sp @@ -0,0 +1,12 @@ +********************************************* +* Transistor Models +* Note: These models are approximate +* and should be substituted with actual +* models from MOSIS or SCN3ME +********************************************* + +.MODEL NFET NMOS (LEVEL=3 VTO=0.669845 KP=113.7771E-6 ++ NSUB=6E16 U0=458 VFB=-0.851 GAMMA=0.5705 TOX=13.9n ++ TNOM=27) + + diff --git a/technology/scn3me_subm/models/nom/pmos.sp b/technology/scn3me_subm/models/nom/pmos.sp new file mode 100644 index 00000000..18c9dc36 --- /dev/null +++ b/technology/scn3me_subm/models/nom/pmos.sp @@ -0,0 +1,11 @@ +********************************************* +* Transistor Models +* Note: These models are approximate +* and should be substituted with actual +* models from MOSIS or SCN3ME +********************************************* + +.MODEL PFET PMOS (LEVEL=3 VTO=-0.921340 KP=366.0244-6 ++ NSUB=6E16 U0=212 VFB=0.395 GAMMA=0.2370 TOX=13.9n ++ TNOM=27) + diff --git a/technology/scn3me_subm/tech/tech.py b/technology/scn3me_subm/tech/tech.py index c89f5613..ee6fb694 100755 --- a/technology/scn3me_subm/tech/tech.py +++ b/technology/scn3me_subm/tech/tech.py @@ -199,16 +199,24 @@ spice["nmos"]="n" spice["pmos"]="p" # This is a map of corners to model files SPICE_MODEL_DIR=os.environ.get("SPICE_MODEL_DIR") -spice["fet_models"] = { "TT" : [SPICE_MODEL_DIR+"/on_c5n.sp"] } +# FIXME: Uncomment when we have the new spice models +spice["fet_models"] = { "TT" : [SPICE_MODEL_DIR+"/nom/pmos.sp",SPICE_MODEL_DIR+"/nom/nmos.sp"] } +# spice["fet_models"] = { "TT" : [SPICE_MODEL_DIR+"/nom/pmos.sp",SPICE_MODEL_DIR+"/nom/nmos.sp"], +# "FF" : [SPICE_MODEL_DIR+"/ff/pmos.sp",SPICE_MODEL_DIR+"/ff/nmos.sp"], +# "FS" : [SPICE_MODEL_DIR+"/ff/pmos.sp",SPICE_MODEL_DIR+"/ss/nmos.sp"], +# "SF" : [SPICE_MODEL_DIR+"/ss/pmos.sp",SPICE_MODEL_DIR+"/ff/nmos.sp"], +# "SS" : [SPICE_MODEL_DIR+"/ss/pmos.sp",SPICE_MODEL_DIR+"/ss/nmos.sp"] } + #spice stimulus related variables spice["feasible_period"] = 5 # estimated feasible period in ns -spice["supply_voltage"] = 5.0 # ideal vdd in [Volts] +spice["supply_voltages"] = [4.5, 5.0, 5.5] # Supply voltage corners in [Volts] spice["rise_time"] = 0.05 # rise time in [Nano-seconds] spice["fall_time"] = 0.05 # fall time in [Nano-seconds] -spice["nom_corner"] = ("TT", 5.0, 25) # Nominal process corner +spice["temperatures"] = [0, 25, 100] # Temperature corners (celcius) #sram signal names +#FIXME: We don't use these everywhere... spice["vdd_name"] = "vdd" spice["gnd_name"] = "gnd" spice["control_signals"] = ["CSb", "WEb", "OEb"] diff --git a/technology/setup_scripts/setup_openram_freepdk45.py b/technology/setup_scripts/setup_openram_freepdk45.py index db145d72..35e819ee 100644 --- a/technology/setup_scripts/setup_openram_freepdk45.py +++ b/technology/setup_scripts/setup_openram_freepdk45.py @@ -32,7 +32,7 @@ os.environ["DRCLVS_HOME"] = DRCLVS_HOME # SPICE_MODEL_DIR = os.path.abspath(os.environ.get("SPICE_MODEL_DIR")) # except: # Always use the one in the PDK dir for FreePDK45 -os.environ["SPICE_MODEL_DIR"] = PDK_DIR+"/ncsu_basekit/models/hspice/tran_models/models_nom" +os.environ["SPICE_MODEL_DIR"] = PDK_DIR+"/ncsu_basekit/models/hspice/tran_models" ########################## #Paths required for OPENRAM to function diff --git a/technology/setup_scripts/setup_openram_scn3me_subm.py b/technology/setup_scripts/setup_openram_scn3me_subm.py index fcc69db8..410996ef 100644 --- a/technology/setup_scripts/setup_openram_scn3me_subm.py +++ b/technology/setup_scripts/setup_openram_scn3me_subm.py @@ -27,10 +27,10 @@ except: DRCLVS_HOME=OPENRAM_TECH+"/scn3me_subm/tech" os.environ["DRCLVS_HOME"] = DRCLVS_HOME -try: - SPICE_MODEL_DIR = os.path.abspath(os.environ.get("SPICE_MODEL_DIR")) -except: - os.environ["SPICE_MODEL_DIR"] = "/mada/software/techfiles/scn3me_subm" +# try: +# SPICE_MODEL_DIR = os.path.abspath(os.environ.get("SPICE_MODEL_DIR")) +# except: +os.environ["SPICE_MODEL_DIR"] = OPENRAM_TECH+"/models" ########################## # Paths required for OPENRAM to function From 6bf4190dde5ad84e5b5808748d7b66dcbcc730bf Mon Sep 17 00:00:00 2001 From: mguthaus Date: Mon, 12 Feb 2018 10:24:15 -0800 Subject: [PATCH 79/95] Fix missing tech name in path to spice models. Rename models to p,n. --- technology/scn3me_subm/models/nom/nmos.sp | 2 +- technology/scn3me_subm/models/nom/pmos.sp | 2 +- technology/setup_scripts/setup_openram_scn3me_subm.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/technology/scn3me_subm/models/nom/nmos.sp b/technology/scn3me_subm/models/nom/nmos.sp index 359de4c9..d110573f 100644 --- a/technology/scn3me_subm/models/nom/nmos.sp +++ b/technology/scn3me_subm/models/nom/nmos.sp @@ -5,7 +5,7 @@ * models from MOSIS or SCN3ME ********************************************* -.MODEL NFET NMOS (LEVEL=3 VTO=0.669845 KP=113.7771E-6 +.MODEL n NMOS (LEVEL=4 VTO=0.669845 KP=113.7771E-6 + NSUB=6E16 U0=458 VFB=-0.851 GAMMA=0.5705 TOX=13.9n + TNOM=27) diff --git a/technology/scn3me_subm/models/nom/pmos.sp b/technology/scn3me_subm/models/nom/pmos.sp index 18c9dc36..f47e3b94 100644 --- a/technology/scn3me_subm/models/nom/pmos.sp +++ b/technology/scn3me_subm/models/nom/pmos.sp @@ -5,7 +5,7 @@ * models from MOSIS or SCN3ME ********************************************* -.MODEL PFET PMOS (LEVEL=3 VTO=-0.921340 KP=366.0244-6 +.MODEL p PMOS (LEVEL=4 VTO=-0.921340 KP=366.0244-6 + NSUB=6E16 U0=212 VFB=0.395 GAMMA=0.2370 TOX=13.9n + TNOM=27) diff --git a/technology/setup_scripts/setup_openram_scn3me_subm.py b/technology/setup_scripts/setup_openram_scn3me_subm.py index 410996ef..7fa4dbf9 100644 --- a/technology/setup_scripts/setup_openram_scn3me_subm.py +++ b/technology/setup_scripts/setup_openram_scn3me_subm.py @@ -30,7 +30,7 @@ os.environ["DRCLVS_HOME"] = DRCLVS_HOME # try: # SPICE_MODEL_DIR = os.path.abspath(os.environ.get("SPICE_MODEL_DIR")) # except: -os.environ["SPICE_MODEL_DIR"] = OPENRAM_TECH+"/models" +os.environ["SPICE_MODEL_DIR"] = "{0}/{1}/models".format(OPENRAM_TECH, TECHNOLOGY) ########################## # Paths required for OPENRAM to function From 636099c5e13d230a506b5a124a7f8db8f3180250 Mon Sep 17 00:00:00 2001 From: mguthaus Date: Mon, 12 Feb 2018 11:22:47 -0800 Subject: [PATCH 80/95] Example config only characterizes a single corner. Remove default name of sram to generate more meaningful name. Begin pre-computed IP library. --- compiler/example_config_freepdk45.py | 3 +++ compiler/example_config_scn3me_subm.py | 3 ++- compiler/options.py | 2 +- lib/freepdk45/config_1rw_1k_32b_freepdk45.py | 9 +++++++++ 4 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 lib/freepdk45/config_1rw_1k_32b_freepdk45.py diff --git a/compiler/example_config_freepdk45.py b/compiler/example_config_freepdk45.py index 16545b2d..9366abcb 100644 --- a/compiler/example_config_freepdk45.py +++ b/compiler/example_config_freepdk45.py @@ -3,6 +3,9 @@ num_words = 128 num_banks = 1 tech_name = "freepdk45" +process_corners = ["TT"] +supply_voltages = [1.0] +temperatures = [25] output_path = "temp" output_name = "sram_2_16_1_freepdk45" diff --git a/compiler/example_config_scn3me_subm.py b/compiler/example_config_scn3me_subm.py index 5ba52bb0..491fa4d2 100644 --- a/compiler/example_config_scn3me_subm.py +++ b/compiler/example_config_scn3me_subm.py @@ -3,8 +3,9 @@ num_words = 16 num_banks = 1 tech_name = "scn3me_subm" +process_corners = ["TT"] supply_voltages = [ 5.0 ] -temperatures = [ 25.0 ] +temperatures = [ 25 ] output_path = "temp" diff --git a/compiler/options.py b/compiler/options.py index 133ee926..d6414b6c 100644 --- a/compiler/options.py +++ b/compiler/options.py @@ -39,7 +39,7 @@ class options(optparse.Values): # Define the output file paths output_path = "." # Define the output file base name - output_name = "sram" + output_name = "" # Use analytical delay models by default rather than (slow) characterization analytical_delay = True # Purge the temp directory after a successful run (doesn't purge on errors, anyhow) diff --git a/lib/freepdk45/config_1rw_1k_32b_freepdk45.py b/lib/freepdk45/config_1rw_1k_32b_freepdk45.py new file mode 100644 index 00000000..debfaceb --- /dev/null +++ b/lib/freepdk45/config_1rw_1k_32b_freepdk45.py @@ -0,0 +1,9 @@ +word_size = 32 +num_words = 1024 +num_banks = 1 + +tech_name = "freepdk45" + +output_path = "sram_1rw_32b_1k_freepdk45" + + From e210d3d49a882d6248650bf2f47f1c304e1db1df Mon Sep 17 00:00:00 2001 From: mguthaus Date: Mon, 12 Feb 2018 12:00:59 -0800 Subject: [PATCH 81/95] Make some common lib memory sizes. Update Makefile to auto build and char them all. --- compiler/globals.py | 9 +++--- lib/freepdk45/Makefile | 28 +++++++++++++++++++ .../sram_1rw_128b_1024w_1bank_freepdk45.py | 5 ++++ .../sram_1rw_32b_1024w_1bank_freepdk45.py} | 4 --- .../sram_1rw_32b_2048w_1bank_freepdk45.py | 5 ++++ .../sram_1rw_8b_1024w_4bank_freepdk45.py | 5 ++++ .../sram_1rw_8b_256w_1bank_freepdk45.py | 5 ++++ .../sram_1rw_8b_512w_4bank_freepdk45.py | 5 ++++ 8 files changed, 58 insertions(+), 8 deletions(-) create mode 100644 lib/freepdk45/Makefile create mode 100644 lib/freepdk45/configs/sram_1rw_128b_1024w_1bank_freepdk45.py rename lib/freepdk45/{config_1rw_1k_32b_freepdk45.py => configs/sram_1rw_32b_1024w_1bank_freepdk45.py} (61%) create mode 100644 lib/freepdk45/configs/sram_1rw_32b_2048w_1bank_freepdk45.py create mode 100644 lib/freepdk45/configs/sram_1rw_8b_1024w_4bank_freepdk45.py create mode 100644 lib/freepdk45/configs/sram_1rw_8b_256w_1bank_freepdk45.py create mode 100644 lib/freepdk45/configs/sram_1rw_8b_512w_4bank_freepdk45.py diff --git a/compiler/globals.py b/compiler/globals.py index 5ce3e90e..4023f927 100644 --- a/compiler/globals.py +++ b/compiler/globals.py @@ -173,10 +173,11 @@ def read_config(config_file, is_unit_test=True): # If config didn't set output name, make a reasonable default. if (OPTS.output_name == ""): - OPTS.output_name = "sram_{0}_{1}_{2}_{3}".format(OPTS.word_size, - OPTS.num_words, - OPTS.num_banks, - OPTS.OPTS.tech_name) + OPTS.output_name = "sram_{0}rw_{1}b_{2}w_{3}bank_{4}".format(OPTS.rw_ports, + OPTS.word_size, + OPTS.num_words, + OPTS.num_banks, + OPTS.tech_name) # Don't delete the output dir, it may have other files! # make the directory if it doesn't exist diff --git a/lib/freepdk45/Makefile b/lib/freepdk45/Makefile new file mode 100644 index 00000000..c0e707aa --- /dev/null +++ b/lib/freepdk45/Makefile @@ -0,0 +1,28 @@ +CUR_DIR = $(shell pwd) +TEST_DIR = ${CUR_DIR}/tests + +MAKEFLAGS += -j 2 + +CONFIG_DIR = configs +OUT_DIRS = sp lib lef gds +$(shell mkdir -p $(OUT_DIRS)) + +SRCS=$(wildcard $(CONFIG_DIR)/*.py) +SPICES=$(SRCS:.py=.sp) +all : $(SPICES) + +%.sp : %.py + openram.py -c $< + mv ($basename $<).lef lef + mv ($basename $<).sp sp + mv ($basename $<).gds gds + mv ($basename $<)\*.lib lib + +clean: + find . -name \*.pyc -exec rm {} \; + find . -name \*~ -exec rm {} \; + find . -name \*.lef -exec rm {} \; + find . -name \*.lib -exec rm {} \; + find . -name \*.sp -exec rm {} \; + find . -name \*.gds -exec rm {} \; + diff --git a/lib/freepdk45/configs/sram_1rw_128b_1024w_1bank_freepdk45.py b/lib/freepdk45/configs/sram_1rw_128b_1024w_1bank_freepdk45.py new file mode 100644 index 00000000..2a84bf8e --- /dev/null +++ b/lib/freepdk45/configs/sram_1rw_128b_1024w_1bank_freepdk45.py @@ -0,0 +1,5 @@ +word_size = 128 +num_words = 1024 +num_banks = 1 + +tech_name = "freepdk45" diff --git a/lib/freepdk45/config_1rw_1k_32b_freepdk45.py b/lib/freepdk45/configs/sram_1rw_32b_1024w_1bank_freepdk45.py similarity index 61% rename from lib/freepdk45/config_1rw_1k_32b_freepdk45.py rename to lib/freepdk45/configs/sram_1rw_32b_1024w_1bank_freepdk45.py index debfaceb..8ecdfef8 100644 --- a/lib/freepdk45/config_1rw_1k_32b_freepdk45.py +++ b/lib/freepdk45/configs/sram_1rw_32b_1024w_1bank_freepdk45.py @@ -3,7 +3,3 @@ num_words = 1024 num_banks = 1 tech_name = "freepdk45" - -output_path = "sram_1rw_32b_1k_freepdk45" - - diff --git a/lib/freepdk45/configs/sram_1rw_32b_2048w_1bank_freepdk45.py b/lib/freepdk45/configs/sram_1rw_32b_2048w_1bank_freepdk45.py new file mode 100644 index 00000000..b18dbca6 --- /dev/null +++ b/lib/freepdk45/configs/sram_1rw_32b_2048w_1bank_freepdk45.py @@ -0,0 +1,5 @@ +word_size = 32 +num_words = 2048 +num_banks = 1 + +tech_name = "freepdk45" diff --git a/lib/freepdk45/configs/sram_1rw_8b_1024w_4bank_freepdk45.py b/lib/freepdk45/configs/sram_1rw_8b_1024w_4bank_freepdk45.py new file mode 100644 index 00000000..e15b7c3d --- /dev/null +++ b/lib/freepdk45/configs/sram_1rw_8b_1024w_4bank_freepdk45.py @@ -0,0 +1,5 @@ +word_size = 8 +num_words = 1024 +num_banks = 4 + +tech_name = "freepdk45" diff --git a/lib/freepdk45/configs/sram_1rw_8b_256w_1bank_freepdk45.py b/lib/freepdk45/configs/sram_1rw_8b_256w_1bank_freepdk45.py new file mode 100644 index 00000000..f1962d9f --- /dev/null +++ b/lib/freepdk45/configs/sram_1rw_8b_256w_1bank_freepdk45.py @@ -0,0 +1,5 @@ +word_size = 8 +num_words = 256 +num_banks = 1 + +tech_name = "freepdk45" diff --git a/lib/freepdk45/configs/sram_1rw_8b_512w_4bank_freepdk45.py b/lib/freepdk45/configs/sram_1rw_8b_512w_4bank_freepdk45.py new file mode 100644 index 00000000..daeb9c8f --- /dev/null +++ b/lib/freepdk45/configs/sram_1rw_8b_512w_4bank_freepdk45.py @@ -0,0 +1,5 @@ +word_size = 8 +num_words = 512 +num_banks = 4 + +tech_name = "freepdk45" From 8ea0f6be2d7fd3cc70671a2386f629f0b577177f Mon Sep 17 00:00:00 2001 From: mguthaus Date: Mon, 12 Feb 2018 13:10:14 -0800 Subject: [PATCH 82/95] Fix FreePDK45 Makefile to properly organize output files to subdirs and clean. --- lib/freepdk45/Makefile | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/lib/freepdk45/Makefile b/lib/freepdk45/Makefile index c0e707aa..a4ac9e06 100644 --- a/lib/freepdk45/Makefile +++ b/lib/freepdk45/Makefile @@ -4,25 +4,27 @@ TEST_DIR = ${CUR_DIR}/tests MAKEFLAGS += -j 2 CONFIG_DIR = configs -OUT_DIRS = sp lib lef gds +OUT_DIRS = sp lib lef gds verilog $(shell mkdir -p $(OUT_DIRS)) SRCS=$(wildcard $(CONFIG_DIR)/*.py) SPICES=$(SRCS:.py=.sp) all : $(SPICES) +# Characterize and perform DRC/LVS +OPTS = -c +# Do not characterize or perform DRC/LVS +#OPTS = -n %.sp : %.py - openram.py -c $< - mv ($basename $<).lef lef - mv ($basename $<).sp sp - mv ($basename $<).gds gds - mv ($basename $<)\*.lib lib + $(eval bname=$(basename $(notdir $<))) + openram.py $(OPTS) $< 2>&1 > $(bname).log + mv $(bname).lef lef + mv $(bname).v verilog + mv $(bname).sp sp + mv $(bname).gds gds + mv $(bname)*.lib lib clean: - find . -name \*.pyc -exec rm {} \; - find . -name \*~ -exec rm {} \; - find . -name \*.lef -exec rm {} \; - find . -name \*.lib -exec rm {} \; - find . -name \*.sp -exec rm {} \; - find . -name \*.gds -exec rm {} \; + rm -f *.log *.pyc *~ *.gds *.lib *.sp *.v *.lef + rm -f gds/* lef/* lib/* sp/* verilog/* From 2245ecffa029381af268e4829bbc4cfe02dc9c2e Mon Sep 17 00:00:00 2001 From: mguthaus Date: Mon, 12 Feb 2018 13:18:14 -0800 Subject: [PATCH 83/95] Add SCMOS library file generation. --- lib/freepdk45/Makefile | 2 +- lib/scn3me_subm/Makefile | 30 +++++++++++++++++++ .../sram_1rw_128b_1024w_1bank_scn3me_subm.py | 5 ++++ .../sram_1rw_32b_1024w_1bank_scn3me_subm.py | 5 ++++ .../sram_1rw_32b_2048w_1bank_scn3me_subm.py | 5 ++++ .../sram_1rw_8b_1024w_4bank_scn3me_subm.py | 5 ++++ .../sram_1rw_8b_256w_1bank_scn3me_subm.py | 5 ++++ .../sram_1rw_8b_512w_4bank_scn3me_subm.py | 5 ++++ 8 files changed, 61 insertions(+), 1 deletion(-) create mode 100644 lib/scn3me_subm/Makefile create mode 100644 lib/scn3me_subm/configs/sram_1rw_128b_1024w_1bank_scn3me_subm.py create mode 100644 lib/scn3me_subm/configs/sram_1rw_32b_1024w_1bank_scn3me_subm.py create mode 100644 lib/scn3me_subm/configs/sram_1rw_32b_2048w_1bank_scn3me_subm.py create mode 100644 lib/scn3me_subm/configs/sram_1rw_8b_1024w_4bank_scn3me_subm.py create mode 100644 lib/scn3me_subm/configs/sram_1rw_8b_256w_1bank_scn3me_subm.py create mode 100644 lib/scn3me_subm/configs/sram_1rw_8b_512w_4bank_scn3me_subm.py diff --git a/lib/freepdk45/Makefile b/lib/freepdk45/Makefile index a4ac9e06..9f441bb4 100644 --- a/lib/freepdk45/Makefile +++ b/lib/freepdk45/Makefile @@ -25,6 +25,6 @@ OPTS = -c mv $(bname)*.lib lib clean: - rm -f *.log *.pyc *~ *.gds *.lib *.sp *.v *.lef + rm -f *.log configs/*.pyc *~ *.gds *.lib *.sp *.v *.lef rm -f gds/* lef/* lib/* sp/* verilog/* diff --git a/lib/scn3me_subm/Makefile b/lib/scn3me_subm/Makefile new file mode 100644 index 00000000..9f441bb4 --- /dev/null +++ b/lib/scn3me_subm/Makefile @@ -0,0 +1,30 @@ +CUR_DIR = $(shell pwd) +TEST_DIR = ${CUR_DIR}/tests + +MAKEFLAGS += -j 2 + +CONFIG_DIR = configs +OUT_DIRS = sp lib lef gds verilog +$(shell mkdir -p $(OUT_DIRS)) + +SRCS=$(wildcard $(CONFIG_DIR)/*.py) +SPICES=$(SRCS:.py=.sp) +all : $(SPICES) + +# Characterize and perform DRC/LVS +OPTS = -c +# Do not characterize or perform DRC/LVS +#OPTS = -n +%.sp : %.py + $(eval bname=$(basename $(notdir $<))) + openram.py $(OPTS) $< 2>&1 > $(bname).log + mv $(bname).lef lef + mv $(bname).v verilog + mv $(bname).sp sp + mv $(bname).gds gds + mv $(bname)*.lib lib + +clean: + rm -f *.log configs/*.pyc *~ *.gds *.lib *.sp *.v *.lef + rm -f gds/* lef/* lib/* sp/* verilog/* + diff --git a/lib/scn3me_subm/configs/sram_1rw_128b_1024w_1bank_scn3me_subm.py b/lib/scn3me_subm/configs/sram_1rw_128b_1024w_1bank_scn3me_subm.py new file mode 100644 index 00000000..b26c9c57 --- /dev/null +++ b/lib/scn3me_subm/configs/sram_1rw_128b_1024w_1bank_scn3me_subm.py @@ -0,0 +1,5 @@ +word_size = 128 +num_words = 1024 +num_banks = 1 + +tech_name = "scn3me_subm" diff --git a/lib/scn3me_subm/configs/sram_1rw_32b_1024w_1bank_scn3me_subm.py b/lib/scn3me_subm/configs/sram_1rw_32b_1024w_1bank_scn3me_subm.py new file mode 100644 index 00000000..07bf98a0 --- /dev/null +++ b/lib/scn3me_subm/configs/sram_1rw_32b_1024w_1bank_scn3me_subm.py @@ -0,0 +1,5 @@ +word_size = 32 +num_words = 1024 +num_banks = 1 + +tech_name = "scn3me_subm" diff --git a/lib/scn3me_subm/configs/sram_1rw_32b_2048w_1bank_scn3me_subm.py b/lib/scn3me_subm/configs/sram_1rw_32b_2048w_1bank_scn3me_subm.py new file mode 100644 index 00000000..28520ad9 --- /dev/null +++ b/lib/scn3me_subm/configs/sram_1rw_32b_2048w_1bank_scn3me_subm.py @@ -0,0 +1,5 @@ +word_size = 32 +num_words = 2048 +num_banks = 1 + +tech_name = "scn3me_subm" diff --git a/lib/scn3me_subm/configs/sram_1rw_8b_1024w_4bank_scn3me_subm.py b/lib/scn3me_subm/configs/sram_1rw_8b_1024w_4bank_scn3me_subm.py new file mode 100644 index 00000000..9752a6c6 --- /dev/null +++ b/lib/scn3me_subm/configs/sram_1rw_8b_1024w_4bank_scn3me_subm.py @@ -0,0 +1,5 @@ +word_size = 8 +num_words = 1024 +num_banks = 4 + +tech_name = "scn3me_subm" diff --git a/lib/scn3me_subm/configs/sram_1rw_8b_256w_1bank_scn3me_subm.py b/lib/scn3me_subm/configs/sram_1rw_8b_256w_1bank_scn3me_subm.py new file mode 100644 index 00000000..92e6027b --- /dev/null +++ b/lib/scn3me_subm/configs/sram_1rw_8b_256w_1bank_scn3me_subm.py @@ -0,0 +1,5 @@ +word_size = 8 +num_words = 256 +num_banks = 1 + +tech_name = "scn3me_subm" diff --git a/lib/scn3me_subm/configs/sram_1rw_8b_512w_4bank_scn3me_subm.py b/lib/scn3me_subm/configs/sram_1rw_8b_512w_4bank_scn3me_subm.py new file mode 100644 index 00000000..91990731 --- /dev/null +++ b/lib/scn3me_subm/configs/sram_1rw_8b_512w_4bank_scn3me_subm.py @@ -0,0 +1,5 @@ +word_size = 8 +num_words = 512 +num_banks = 4 + +tech_name = "scn3me_subm" From 0e53cdd4e1462f4ca2ee7834f8feb62a21b8375a Mon Sep 17 00:00:00 2001 From: mguthaus Date: Mon, 12 Feb 2018 13:23:22 -0800 Subject: [PATCH 84/95] Add top-level Makefile for all technologies. --- lib/Makefile | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 lib/Makefile diff --git a/lib/Makefile b/lib/Makefile new file mode 100644 index 00000000..07a149a3 --- /dev/null +++ b/lib/Makefile @@ -0,0 +1,7 @@ +SUBDIRS := $(wildcard */.) + +all: $(SUBDIRS) +$(SUBDIRS): + $(MAKE) -C $@ + +.PHONY: all $(SUBDIRS) From 18702f5f5e2ec76b15436a654ce1138f6e265153 Mon Sep 17 00:00:00 2001 From: mguthaus Date: Mon, 12 Feb 2018 13:37:14 -0800 Subject: [PATCH 85/95] Add recursive Makefile clean --- lib/Makefile | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/Makefile b/lib/Makefile index 07a149a3..dcbab0a4 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -1,7 +1,14 @@ SUBDIRS := $(wildcard */.) +SUBDIRSCLEAN=$(addsuffix clean,$(SUBDIRS)) all: $(SUBDIRS) + $(SUBDIRS): $(MAKE) -C $@ -.PHONY: all $(SUBDIRS) +clean: + for dir in $(SUBDIRS); do \ + $(MAKE) -C $$dir $@; \ + done + +.PHONY: all $(SUBDIRS) $(SUBDIRSCLEAN) From d2ed35526a5b2b2f51fa57300dba57e1737fd444 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Mon, 12 Feb 2018 15:07:16 -0800 Subject: [PATCH 86/95] Updates to intro and overview. Some edits to tech and DRC/LVS section. --- docs/figs/sram_overview.pdf | Bin 81079 -> 21232 bytes docs/figs/sram_overview.svg | 91 ++++++++++++++++++++++++++---------- docs/implementation.tex | 60 +++++++++++++++--------- docs/intro.tex | 67 ++++++++++++++------------ docs/modules.tex | 24 ++++++---- docs/openram_manual.pdf | Bin 1537461 -> 1488231 bytes docs/openram_manual.tex | 1 - docs/overview.tex | 49 ++++++++++--------- 8 files changed, 181 insertions(+), 111 deletions(-) diff --git a/docs/figs/sram_overview.pdf b/docs/figs/sram_overview.pdf index 153b1ac4dd0ae7b27c7dd0c68ac9217b8c1d9d9e..4a533d27cd6af344cf8e9e7773cc644686987646 100644 GIT binary patch literal 21232 zcmeIacU)6Vw?8UfdQqtYQJR220)YSm(u>kTs+3Rz(mO~m(gYNwg%*l{(m_DFbdcVg z^xma6!Cydq+WWlc_nvd_x%ZzZ*`Fk{X3gGf)|y#+W$l?SgQB=38;G47hoN*c{|tu< z00dYYnBxct061igtxO$Y05FoIi~|4wI3&$19E|Od-xg2@V{v0cYa?SEAt4-l2Rmb^ zC5}sClKO$tmDdM2hj#{#%Uj>5_}3wPc6}x4E zJ9n(L0f6~4eEWp-t`Kwq&ei0J$fIG032q`FbN`HfplXj-ydC%!{YMK_b_tAN*%*6r zp9_l{*QMJSaUS5&amM@dO>E2)GzZCMwoOTHJCkGTpVEjH^KH@?idUNP97I||Kk965 zB7E(6IP=GF<~Tpr^kk&V+_<9)dfHYQ>G)9pYp;PgzyCc=!u03zLtRO;LGzK*cg@4Z z-rvwFY#gqL6SDMAI~b#Sic_r5du@zJ<8!dsO5WRt&wI09UTe(b%N&40+1u0^Y-F5; z+=tIfUpOSxh@-eWaG_}CgfmLt;QmC1s5}PNXZ1z9v64US3&KlrgfP5KnoLxce41aR z$YSAcEa`1e5i%Csb^VAiAWcaXPOOMYHa}dzrzDUX#w%i@q%?*(sDO?|<~!Ih;hmCA zZK^Ys-k zvWf}EV>Dj7C$g`yehnjT3fHCZbsC&ByMZ?d)1An1fGe4UGQ=ZRcvTwXt=L_2Ci1Tw zxVzRx=G{W2`9qS$$Aj*1=X_bb+CA|m9UVPn>wN7SZhYTAx{Q5rflCc4IcbUJuuynD zeL9=Gx48JF$EqOaxGMjdmyX56x8Pz)7DG{ruV+u#&aomEY7Hc4-0MVon`&59WKmb= zg=g)!+r7O}mr@KOVbq{|inC+tQFzzo$-emKGx=V~zEf6Y9%4X4#c7W)^*uj+frw|( zkgFXAET7oAn{rrHZRb$!ou2ia%&iXsiOsbneGdFlDY$Vd(g{vJh+KRxY#?H;@7s*I z9amnD)!gfv#xlYwP*t8kp|ebs(I%JFlAM-n*fCJ~I&idJ>F$C=gS1*(pO4kH-aFkV zNmIM)99|sH3(ChhcX5o%hPo+8M0G~0;VSUS3-TDtZI8_3p<8x2oiRs82iglh2u2?? zl}u9{G4pdrXUMAO_2}jRReP?MH@k(wNA|DBPCFX=H!LVrlA1PV`(xOm=-=#Co=)yA zd735XZ4nf^yj-X|0(H%j$gM<`m)8YiVC#z55K+zcDsZ4sr`~l_kydWKGbQWDv>X?Q znwgc>^JqNLAa@(p|6SR!do=-L7LFfBs$lT}$jD_8LD14%eZaM6Fy@G*m6$IrF@Y9> zm4BcAd3eyu15u&21+;k9%~#wJRV;R*gZpT2%Ul<-K7I8?g=>z12saDX%5vO^!LNlh zll3QhqLWS$;{v7WYE`KN&PDiGh+5ELPruPE+Cx&u35mwCzm|4_lqX)*Ektl7RXFL6o8KH}KyV^w1$1wKA~ng{4oo>iN@* zhau_6QBVC+p0FT}{PrU}%y+WU-;c243SYS$oODnK&s`jYud- zX-}L+bshMI#v#D(gJW!E^wUEke_i_4ONV;-jdZCXE+E$>!)1~4H`jaRY$aSAq*NS` zjus#wa7jSEIG{je0l*<90ssLx457$Rr2G9@XU_xR`Q@p9P&qUd49txU9j@BAKmd@- z>Ypt*B(1G3D}J>$VFR)O0o;E$0rDI_1>^lqFaU?DtBo;$LlJ6fd?lnJ)Xo@r9?-9L z9CF4+W>8UU7l1aB1O)Jb!R$aDZaxq%01W11hw$<7aYFz)S8c_R5+EDf11|45KW;Em zcGiwIe~{|O)vl<&1XV%GU zDn!}X-rCX5(AXYuschxTo7c}i@*&HYMz~b(kE{Mv-j%37?}QM(tJ2@y1~0Fw;%MM- zr5;IZJIgCh(I1-N;o}5w0(pLQpAW$8 z`rT{&nmBS$`)60WM@~W!3mX{psvrfpoML~Ra+luf&u08>Nd9Pkc_P5o1%7ykONVz= zbLs!Ceu&7Z08F43_E%x(&zTJRn-CWCU&pYQllNaI{cqD*#`2fDQ#Uh02E-r`?~lt% z8=INJ901%rTtCFJwy?HSv4I*QJ>(DXBV`A@@=zQyNLOcPV|^Jn|K_MTM9m!R6^-r0 ztSxP*oVX*Ls?CeBX6l+uxW*xyG@CP9J~cm65z~ zBp-^*KZSpE@Xt8-XD7;kt@q;r>m$^2a}4ygZ;^@&8pQ`zspx z8SaCA`#bcvnXmt~sNv^-mj5_txD-U?N3itcuhbty@y!Ml>}%KX&{J_ME;M82MT)Nd z^ZG{v|7hSJ4g8~le>Cuq2LAukfQG~S_wT#6P-b5E3I9!?av6MF1|-P4JBW`5_*2?GY$XKnBTdQoGh6$6>J;=N&HTq8gP{{d;0GiU@AFgu zk?Ctj7;jfDqvmI)Usqyi%V^*6^YuK*c$i@*Z8;e8N)Vjuoog;4+b&0Ud-=sJYYMx^ zpK}XyCLVV;c|r5gVfkT_OvxPav@g#6P7+W%?wqe-IYyBS{Edcw1pGac`#rC8 zrIFu~N`J^J|GPXovQL-6)SvR^$ka9R_&s;_E6w!BtoW~h@kfg5@)Z9AJNz}x#LdHf zCC$$)6PO!#RTTSwImA={?(CsZ(x)ZxN(Jj;}t7i9vD)QxswOiiP=uxFR}k zJsGtx;GRRf4;Hoikmh%H83Gw4QkgC(87{GP55gkY<6R9mQDu6D{1NfLdpTsX`651o zaecEtlB1V6K0Wtd5%JMl!A(`hhYa9lj#WF!EG zj=O^+{0Tbc+C63)*+C24T6p0L)PoZ zLBAM++X4@4&U>1=3;2dF$MYrdQTEWpcAuTmqx4;cA0!*keXSM9#v%_+oLDcSd`Yi895Dm-$XZ#%z?0C0TGqF3%6QIJotURUfKQICQA93 zOwAOu4GL8%@@QcXVQQz<;z|`(QQ5YMJOsOJyc0jj{ZD2smPOv)WgZTU`qrs-MU{dr zjqRH0=3&Ol_G1hm&%PNDo+pO8Gjiq2s><%#zqVH3!v_ncwjc6gG~;gbM{V4!ziOud zi+Lo+qwOa$Z+n4gCzzS2=0y!_b@eyNH1ClLllf}%*$lCR)5RYSk z8c!l+eM?9qUAN?Q11A3lUGC&fwgJW2HMxU%*9o1(vX5V4_&LH2P`iR75q%sdF|UQB zVOU|wTK@UrA^E*;9)yV4r!ByWACKi`VsurOwRTxift&S(?bA*X*rA)4U9jQ&@V5o& z?HoQ!;s;{sgbytw=1rb_6piwC%fkgTy~lzZgr(xkEtrQIpRO@?vPLXnbp?~uxb^o0 zEr2e*vWvvUo>Y`AuDBi z7pzl*(uJ*q$3(b-L(4VLtxUK}Z$ZybtzN-mLgiAvznA+`MKhKu#M*E=pfWyeMl!Ix zHfq_MdjN_O6SvPAul%|kMRkVI#5z3=k5N~^l{yoC2Aiu-I~fgWIjKtGIS{|$j2OG{ zsiA33G&y%H5q68s$Fj)$7T=eM+SR}Z7q45Pp@(Zt(UkRL$t6x_-U`c!Sdi&kkTUIL z^hu7*f<-3zSx};e0kPpShbtU&MW4UZX2~ukWMw46TT|`Is8SzU%iz#jeKf-cH=J5z z^-(>2rfuT8$t;y(4#W*jGYB-hspd!%f=>xuLZgaR5YDwO{35_GKR)QPRKF8cEKJuq z;iHKMZm6b?YyO);E)#sA(j)4-V&!Tn)lG0s-?z0>iieWU9v61K`;s@_b-c@X=;_H; zdEsz67yT8pVahktxu);9g2iZx1YCm_Rwxz3ND*fAd`yHc_aXc&VZsw4;E21r^9Vsa zOdD3dcds`N6VCE)KeS=G+1qDdI@7mOvI#w`u;5d$mbEG&$X>RC{9aMdrf}n&%zxKM zEsesqq|!M&wzl4QkaO4Cql2G>_w9Qy%8$Jc#QEjtmQ-O)jl3c%Z+8n2V`Q-R!iI1* zaKYeET53fsj6aYCAE^reNm`CYGI-g=hJE>!zucF!p9Z(m4$i&X#`Y1m-#AA>(<0uY z`sG9618KG{B=roi&ONNI?~;#nB;~uq6055f*Idyl8^4L9S2@^ZG)+pJOzg?@ZgkLr zW397Ry$&C*@4@N0_ty6}F<`RDmd;~n`+>I9EUgFd(-TM`SgQI=iD-NTX_0m{FWY^`M)5LUsU{OgBB>ItX$hGx;( zCnoU2ccDx5;clDWSaR0jI>$PWCMNLacG*cz4+jR4!uH(*3!LTJqN(w@3FfIhy?-JY zSQ9%D=m@XfUc6A;z=}R{>E%7S=6xp}DsRsM&S^FnvVF#ioV^kwrNSzU*lfmRU`o^%rl?N&mg!_5pc}F$OaZ;GOFqhiH{ko!ST_4s_ zxb&#V!EnO`ny$5xjt#!&V@F)2r`={WPK@?Q>g}%BoH?)4=0Hzp{qOWHrV&e0j<%oj z2)$~H2~%BZ-ftI2n677;XnJbImUh#G&GX6GMNLZZ1Qm>|rA?E(|7Icd44+i4gW0*s z^n>k7ll;Lm10ucX5H|u;aHR)qt5Wy+&3FN=$`Pr+k-9;CJH4r4BhWq z7y;N<#9I=JvK}Cujuxg*gy{2;1YYl55vC(YhdCgK@le71z1RO+?Al20@Sr}M200z3 z!wSw;`o0Lb;Lbd3OmfB$vJ|l&`byB?1+Fdls(rBFt>osrRI%eo3xQXx?i7W==mq)o z-y|c5hh9p?rNAhczzW}MxKfUHPBj}(*oB0?t2YWP2Db2ZMW0@HEBUtMbT3fHv{E#A z!Kb_TC#o{Hc_y2ScP16XAPUb>;8NZ%oHf?|AN1ru?zotU;c@%dENZ06(1iE6AC^oG zoz%zM;fLP{zZYs|`PpD=F1!lSlf`MYC}!%f}|c6MDdlmsj>?L1KK zC?=agn$&pvEW1)*M&X)Vd`-#XA)7Y68Mr(!{bb4eAqv>|kW@kaT)r#1palkIWP)yP zRGiLURn!&?tc-@uJoz74`ajmse|dIfKbB`x8h3+F7s>sA+Z%m}W3Cku{bT9S9eTq5 zM%bIVbMh!tB|Rd)Jk*3QiAPWq!E7JevJWi^&0GYb$Wg$Y(7KX^OQ>Ln3s~^JY^neT zu(gzR2?t^9Vyp+GC{o#81NS1fm<+2G&yyI86H^YUx^leO9zc%hhCP} z^$$tlc^(ugG#A}ez2u9ya1Uziu3BNke#PF~#;<5a?BBSH4Ai)2-CnJKT(mV|PuA+5yU1bzWeoOgFbj2GNHisahTnyjR0NcCxPYEESlBLJ77;RjQ_tKXJF3ENE0 zsjEWPX+A9cwoxUxl9;Z$4>{;QAnML-lviDsxSwo+MM?6 zU23QE(N^a9+2X-ePPOOz!2~qV0GT*f3)i!5&Rt0FE8hS81)eqZbgo3$vydjlC{IOOGO;{t&+)yi)me*w;pi3tLdpS^*&p3lU;D8O<3aUG|A4% zWEfnmSyy_!J!u&QofSW;@)COQ*ijrD^xJD?Lz{ihMTvU0LRM`^AyV9nsi(fJZD3A# zI~nic>Z&3}bOhib&)q@w>%IW3(l6LaPu>LqUNS)+F|pJUM?bvZhhDk=KILgx)Hh}f z&_L|nw@arF9z}y6fo+9K;aDs)VK}DK8D;lFRO38kD4tAzk&McpM?d9v=*EZ+bdV%L zhquw+BU2>o%UyoNcAxOIz_U!>@i)5n-iixF<7QKXSDhJ2Tcv1ttTe`r#M2B=N<%YO zNgdPz@b|)AN-N(-IQ2DY?=kW>zJCJOh|Mcl5D!7RM_3k)T#*k)LcjPvDh~LAibkz0 zWuTb|eweQCW?Foqy#1Dh_Fh=w3rP-Sdw+8a=b#1c(7Y~oZP+fxAOZXd!X&0uy7ty^ zEYAc?88lA~zM*DzPv^SCqNl%WVF2ShYyKGDF>bnqlu2>fjHeI?zv%t>K5BC9>WK?wbGLf}{t=WGV=Cl;KXCzA@$kDYbt zp(eNeB>t36SxEbirXKF@_BY9}UkezK$tN&37x%ApA?M{1y}zUjIe%ZS`R~$HKN4CX z03SEcpBE)9y1KeNktnl%lJ{OP>CSRuVw5W{g}i7S$qiKhoj6RRNUC`BoA^Y&bHYRv z2A{+$We@?F0qEkCck$Z>gQVxN#S>rEd!M3L+cgK`d_Hh$T9GKAj{L0soJpjz;PB|e zW%{W0sHUVOYrNDsZ}mvKl*OM!6i->i``A=~GjAa(0#YX?y$=!{eM5mub5x!b)*>C;_QOxh4~p`R&_-t{ z->c1?o4TZ&exi%u80Vf6eDg{?{D_q{nagn8?{oT{YCXTBM%wtYZ2#%3{l>G1ohiND z(ay+=HD{Oj;~RJ8P#UC*a%YxRZ-Kgj4CtsWqENj`$0f{ zbPkWzQ--ttD9F8NOUOdi-I9ZI(;SwRN!ybsg*w=z%soEY>n|6Ko8*dpb(=Fu%JJVP z-l@^$z8MB<6v&S;3>)KJi(U_F?M`xfzFSN{>Tiv0%4?zkkIX&(!n}2R8UT-?CdQ__ zA>}Z=Z=j=7*VxhUyro_wqG}elj-vaqz~u!Ij9+r8OlN74H#xQ`GE$#qN2x|xo87%C zJG*3nPRTL(m51@u+z2zFu$KnOg{ijL55mLf(nXX)So5EK)TuKGA?YN)tw*9q^_kgt}n=yb5+UJ(Z~3dZJS>v9IO=bY2)M2j>n z^X%&CMep;@oDv1ul%0C9-AVxwF0ERGd61=EZBcjoR)XEWc!BO&rBjy2JCVj!>xHb= zVcIX{6k>gY*!gMleMUCG7}fs8FPf_wR)ZC;I!0|ZoRSB;Z8qDz@89MmbPw&3#ix)BVB}PCgV}`0CjNzgLb4dtJ^o(kE`j$2uZNDr-qVoeT#*U$3@2^#IeDBcDS6?77s({C%v+E~F!~r^*Is=&-I*6`EC3 zaZm~oSX4OLsCXb))7;>f*p`LJv&g`uppXqNYh6$N{57Z&nEm)M_S=zlM`%HFQ#5fW(i`u6sBxYwb=}Y-SfbYWru(?#c_`sR!04waGLB>c z+nqVRMY7%XV}JEZXOGQ;=O(gQ=l2xl&*V~y54kphRwUoVa}{Z=x#8ZF8#TSwgmy z?z2;Q&&QKCt84F6)W4rE1Q$Tsql%S0{pceDpU%GZu>Q=8v9og5Hp3dopBc_u<0z`V zir05Q)E?ZjW%JxZY@SVq4XeEBXq0>3LR3Q35>;b(?Rql-Q@{L4?`$FW&9$T5xff++ zFPb^ZlU;VkOr5vf568%6iK@1(!ybfY_T5o!v}^;fKKtlaisBr_v{b4?x|)W4lH&|) z+3~ecQQFMpc;!*eze^ESn?_CFu^s{nPHXhe#P+I=aRlDy0mV4>s#OtMGpJ{Rp}aeaiHT2tSdIbhaq(Kc@m#-o4&$LawEqw{L3Z3E zp^TYA*i%8)*IG+uS%T_T;?2Y&W(F0e( zQQR-@GdUpyuw?Jm7xI%YQkSV%(D2(H!{t^efh>3o;e?!X*PRj4Nm2A2{`dN`ZKG6U zk0l+=sH=`m>~?)fn0DoD?q)-^;=1u@_ukJ+Qa)BWH;2zc+}>5R_*sBhRUU`ol&R{N z=R%1S#{r2gqBxrbt6F3=WYpJgl(wJBT9(xcvr5!zV+`%PewAlXX^e7!`&SO!1UEBx z4nBtQZSI8Mw|=$Q+H^vS?`gipNTPk6sVhaBXFGz2quHgjkGUS&ke7|)jHccdHS^N?DLjm zrL)GCX)g1+4uOxY(_E|E2G-BfTFd51H`ccXoH?EL!XXnfg*7#s_&I_f>u0_M%?iJOUbx<-)XXU%^;yUac?oZi)5q?lt^KY7{;c^gp24<{b3dNzLUG(E zm(^diuH01y8DJHOq{Y5Aere(y;!X#XH7OYrGl)@wy(zLQ(|8k#lm6mKs7v$;USH!a z5p<>OkRo3ZaR)1Mr#bNf`xH`3XTEa*nd4h^Ya`10s&x8$56-($a%mTKZ@+#UA5L!3 zV@E*OxFSuuAoe_dk>Gk^GIgizqec|Yaq)dmoo-GSxL|Tbt*}bWgU5iIhGBtwL zJG>9^`VB~p*#)!7Rs!6D*~e8#`cvX#MDOUjq^s?CT7Cu-8M8>`vJT#m#d=9$wVMc3 z_;k~v<&)Ab1t9qrl=C(di|<%SOv{GeEEu=^y7Un0`;ZAXVd~Op(^QSp-uLjN@xIf* zS@L@(L8`?#hjSSx`id!P$!JTtK`nQ^(OIS(34L-6LPepMFr`8DqS=&bhk}(r9NE~u<5Jd1`VkG9+1X3BE%s5W|C?MZ@xiK5xzl^QqNlR^9}TBjya40 zky#!njE7pmi8l1bbs9Q@QjN)Hdt+$y!YUg4^gG_tYLP?UG2wCY#cxOV5RmP>#dv9x zMkqPqt~;@+uel!m=E+vaf=ew*k&cQ{WHA;o4vLYaiqb9HJ@<(;Oh!4si`)qNb z#g@d&pUidT3%MxxOaiv#J`r zJCRbc02>>uiqvkb-gx`ZP7Ebb;X;cW1tnS`#OmXXuU?y@xIkPr76F*fv z<*%T;JyXb)W%<;=HDD( zcx1`CJu46OBN;w;!h@51B@Ca!!L_#uM~ol#`cQI{IDwg8j8uW5hE`O>L*3E*uAkGJ zDLl+>S4*py?+ED zM6=%UAor1doTjmfX}NlnI)6teVoKN4GsgQJ(8hju%eIPKYiC#jgTEj@f4ajsYhqkJ zwx;vc;O$9T#kR#{7I{@@X1m+T4XcBJ6}<o>K?H$?GW56+Th>1cz*jMzYkH2k1y?`&bH3uSiHE? zh}rh2i{~zx@Pq!Zu36jD7oQub72J0Uc2!&*56f>Ehee!M)S4TPk!|<4(b9Z_6m2F6 z)v%Iw#>JCQZZ@RirWhN00v$$onP_zq$%p2{1X~L-;&%!u5AsE7Ea{_VaWY@9HYu4g zl@dR)eA?usp64O4%Vo=oc4#EX&VNUMAd=P3 zHPaa5+hl@ z6i=DA=mWea-11Tn;JkHJC)F#%poolTwgLdxg2-5M)P(7$p)3Ae<^4jfd4ii*)SA@K zZss(TrfTfft8CYX4t%y!lZ`BMclvZ{5`l=-rxww~BWg3%R-}@=XGBvXy5Tn8!$tD! zec(pVhsnH$o21L%53d*5Sm)0^E&O&{M%j1vQE8y+L<(r6F0IiHFuoj8DI+#~N+!3Z zanWMvRu!5{m!bD2?eXWus?mLiEn2pU2xAY?pnpP+xWj4T_ zrpqVKAZ^s=IZbt=KpR>xy*S5f*9D+EKA&Pwpbb+6x~V?oghUGTJ$6)BEy^+j&v>Vw zFXQ%lPSL2HXyP3z+XTO!9^^AYiB*Du>Bv1JG#j2oi_B%E0?b{y6SkM8i~hm{tdb`R zGv(bgXH@M1@=dPhMD3MOsz(uqa^>MWy<&;wWsKsQ6ch?&%y*h|GH32(Haqo}o23`W z3`UmNaC8PJtZ*hbIPcCHIaXmHUgfq}TZ5;SLd=-gtgMWeM#e;SrJbV+TvPd}>(0a9 z5r@0J3X=#6krCX&y+yV*n8NON>)yK)aB`xO)UK>MZ5@JLBo8|tt-^>$H~O{5!nIWt zZX<5b_I~wMI?pBuWT!`IdC1|`+3Q4~JM?}x_nyI?p^v8?nuj?YRUMXm3Q9Y#uVOq= zke6TUJEyfeXCJCdxw+x|=2Xnm5+lkbH?CT*X*1BfECowh=zD2k%F&9@d;Lf+ul3$L z)Oyrfyyz1xat)972oj1sR$kGNI@9UOG>_*ge4*u;!HOJ}#|vDCiw>XUY4)_;;+!JS zgYV}$e)T&@J`H-w)Rf)2%=)qqlHzco3_J}v(X_*njBKoa-MQFol>c?+;E6J0wNZYg zi2M#m5q^OLethe0Tf(t>%D6B=!ujZcG>>|bg5YX_r`(ILCkt=Ju(q*S6rzID-h6a{ za7ww063jpd#Bf&qmRX2p)b=_oyEb$;ysp)O#y>o;n{X(8Z718qs>zvS)OrUeME_xR zEB*ygvRD2!V?HY_%g7M#LE&MM(6D}sw4vY5Ys=it>`kevX`#;A{(jDYFTtI$5%*zg z1|rprUzlis_7Xu)&?l^ z!&{5v6y4(wnCy>^o6x?Op|juiiC}Q|pM0o=y4*8)r<=pa-ucrQp<%NoHf>A8_g7zi z{Erx_nPz426Ro6)vKYYhpQ^@e9yRP3TiFT_Oa*%zl1#;Xjq!&tRNt9(#Fk>HW=z#> zAjS@yR8*%RawHKgFkoPv9THP%&XJlK!tq?;K(U3H7vd9Ooamw2C^oQi+Xy#wkQ_dC zk!h&Cdt7qka0@%AMxxNPTxtXRlNI5HXsR=JqdYdpqtQFiDy%Y@;{mm-V-+3?#|B&p z#ZVpdXZoT3U0xsNJIOC#fpR@kp>h&mze&cr2vPD>&hVk}NNecL6Rk50@**hp-sk%` zK1(vtA=6m*H%*w0=ay>XA{ow2W*NTi!+p#BfELx@Kvjc!!Rz`b7Hrm(EoQYxE|pB* zXokL>Zx$L<$mM=*u%l9iiajA#O?%6NR@jMO7xi`Gt<{b;_T$N~Z~Sqv7fF0A71%ZJ zCch~(!oJV$Tf8HrMC#2%|K^d#f`5RMhW;ma>wTVkE#S)KLus z*#o^!8Z5#`F8bJ=4G9L=Tnsm5;_g5z{msr1g%n#QjjGs3(s6g8yYynRRxe~Qzfcpi zZFRp0CSjauyRi$cCTvlPB`3o$tg#tsv$2i!N2U4}>JM_RY$C^YuGIhFuXJqm#{V_l zQv)O3mqE@!#O&l--Vf;Ua(q&`f#MC;8iYFuCT$N<%OiXd{`Dl7`1?U3y5zh7S-kyE z-WLQQz$hu^Id!jsXtIB;M|GMt*Z%4ziAQzsgAqozD!>S44GEwXWvqNmyv%>X;#IWS z4NZc!4oOL{*8!)85`?5TAKW+&2?7 z6HUZk??){_@+CXx0qxVrfZXeeB)1Q*&%V-cojSZ;Cy=i{C9G=0nf&EP%uZ8% zzTLIA<&~Dwxqs9zU$806`M7~TE^0J zo)mfI{QdAzz#Dthx(R@JSHD0+XtvyIUiP$nhq;g9?DY(LbjPnr z0$o~Px-{Dcz*&Yq1Zf|7e~0hu1%5PS1WK^aROt8MP&QMdS-+?;JML>ITw~4G+f*{` zImI~*p>T`ZUwLe+hbe@AHuyDjEWrmWsvF;fV(YP3fu>%XXZry+nE!x)FhuYsZ;Ee^ zl+P{pEhjPe0D)&mV}&C`a~c^wvU{JRdY@PJY=Gqxqm%V$gliFhW8+J^{j@O`5=`Oe zntIM(n=^k$VY!5<5jVCsv@^4Du(rEe0Dno6hgu>*7PM5gq_jj?FL4yEAjs5=?Vu`1 zY#26WYfGrrZ_JWVOEU{sz`fu20GEt_OHSq=Ocqd6Bn%DbZ!Lb}wy=SCxd3dOT--<$ z3SQ)f2u|Lgn;~QzpcZC^B37mr#(*EI@5#FF|82Hy&J~Lj2UwuT3F;R?yWIeuJw}MFQbmZuhvN zibCy;ub_VZBW0P{**l2Apmx7>Aq)Lk266t7^Uvl0Tp8>KIERE45)RJH$`rt%Ze}H7 zWpDP2a3#hSaE3h+6o?CSxohL!zqzuAb+88aw5(B zXBvnbf;7}$Xh=}2ztX_G|H=meUJkfFx8>xyyo3FP2I2Xe^MU_G76_0BIqd%27Q%Ho zME^?T{#QOQFLL1ji4Vldc{wfqO5^@l{Q-IZDj$dsbcwq2=e9_oufL)3{Z;pzK=7p( z`BPg?AUF3P?BQSsMS4TKD{L+mGdJYy`GM`EY;ElTxEgmqT#$^Fi8bJA9$dLhdk3hU U!_^2wVs8PF0GA9B3X(Yg2TSH#X8-^I literal 81079 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%0A*{86ZY5sF+iLjA`Aro_W1v; zsPMJ<&so41^tUuf;V}|0jD-!-T>-B|kP(1D1wjyDkbt-zL`*_RK;p+wQ3(h{3j7Zw zzW8`odA#}oFJSn8aQzGNFRmCzJ^YrCLBMSsG58%I#xDlo{;k|UZB~wO2WuOI(~qk2 z{2Ig0iGK5w0{^JmU-I?e&LG?Y2K&F~(BA&XCjWtxP{1IZ?eVQ@RfYebE%e{6x&`8o zfE}D2Q9t=&fdE^gEPur2gfBc4AF%~O0*P_7hvRoU+`$3gQio&lBmm=gDNsfVe-mqi zMOn)HWTPAk`|AK@^MhRyC^*_m8t4YHutdV0QCOgiKKdux;@4`RY-D~N{PY9=IoE%v z)lU%TYAp9d&j=_3tv{c$}0OZ_A8=lT3Q)4Bf>(RuJ1habGb zC;SI-TtkNl?%Dk%Cd98?6aPx-sAC{zTm8u_P99Iui2yA1*r#cNsqWfT1O8lrf; z%-?aMP^kDnpH~!LkbmO@{*@O|F>$;`=a2cYj&Qv4#1St91AujHJn(uTQ2_WZ27?9Q zlLxp90IQ;r7{HGma~CgaQ2^YRQV@U&Ko#Zhh|7!0i-?MdLxn{}1cVjj74OIki;5}S hk@?>dCZu?YixU>^i2YeyF^I63FexXeqLvcr{{XX4sVM*e diff --git a/docs/figs/sram_overview.svg b/docs/figs/sram_overview.svg index 1f399816..f80583c7 100644 --- a/docs/figs/sram_overview.svg +++ b/docs/figs/sram_overview.svg @@ -14,8 +14,8 @@ height="600" id="svg15111" version="1.1" - inkscape:version="0.47 r22583" - sodipodi:docname="sram_overview.eps"> + inkscape:version="0.91 r13725" + sodipodi:docname="sram_overview.svg"> + + + + + + @@ -396,7 +424,7 @@ image/svg+xml - + @@ -594,7 +622,7 @@ id="tspan16259-3">Driver UpperLowerAddress LowerUpperAddress 6T Cell - + + + + + + + diff --git a/docs/implementation.tex b/docs/implementation.tex index a45db539..187bcd48 100644 --- a/docs/implementation.tex +++ b/docs/implementation.tex @@ -315,19 +315,33 @@ OpenRAM, the default technology is FreePDK45, which has it own technolony directory in the trunk. The technology-specific directory should consist of the following: \begin{itemize} +\item Technology Setup FIle - In \verb|/techdir/setup_scripts|, there + should be a Python file that sets up the PDK and defines anything + necessary for a given technology. This file should be named + \verb|setup_openram_.py| where techname is the name used + to identify it in configuration scripts. \item Technology-Specific Parameters - These parameters should include layer numbers and any design rules that may be needed for generating dynamic designs (DRC rules). The parameters should be added in - \verb|/techdir/tech/tech.py| and layer map in the \verb|/techdir|. + \verb|techname/tech/tech.py| and optinally in a \verb|techname/layer.map| for + DRC/LVS streaming. \item Library Cells - The library cells and corresponding spice - netlists should be added to the \verb|/gds_lib| and \verb|/sp_lib| - directories. -\item Portation Functions - Some of the dynamically generated cells - may need helper functions to deal with technology-specific - requirements. Additional, tech-specific, functions should be added - to the \verb|/techdir|. + netlists should be added to the \verb|techname/gds_lib| and + \verb|techname/sp_lib| directories. +\item Spice Models - If models are not supplied in the PDK, they can be + placed in the technology directory as done in SCMOS. \end{itemize} +The height and width of library cells is determined by the bounding +box of all geometries. Sometimes this is not desired, for example, +when a rail must be shared. In this case, the boundary layer in the +technology file is used to define the height and width of the cell. + +Pins are recognized in library cells by the largest rectangle that +encloses the pin label text. Multiple pins with the same name are +supported. Pins with the same name such as gnd are assumed to be +``must connect'' which requires that they later be connected. + For more information regarding the technology directory and how to set one up for a new technology, refer to Section~\ref{sec:porting} @@ -342,30 +356,32 @@ the command line. The \verb|DRC_LVS()| function saves a GDSII file and a Spice file into a temporary directory and then calls two functions to perform DRC and LVS that are tool-dependent. -A reference implementation for the DRC and LVS functions are provided -for Cadence Calibre since this is the most common DRC/LVS tool. Each -of these functions generates a batch-mode ``runset'' file which -contains the options to correctly run DRC and LVS. The functions then -parse the batch mode output for any potential errors and returns the -number of errors encountered. +Wrapper implementation for DRC and LVS functions are provided for the +open-source tools Magic+Netgen and the commercial tool, Cadence +Calibre. Each of these functions generates a batch-mode script or runset +file which contains the options to correctly run DRC and LVS. The +functions then parse the batch mode output for any potential errors +and returns the number of errors encountered. The function \verb|run_drc()| requires a cell name and a GDSII file. The cell name corresponds to the top level cell in the GDSII -file. It also uses the layer map file for the technology to correctly -import the GDSII file into the Cadence database to perform DRC. The -function returns the number of DRC violations. +file. For Calibre, it also uses the layer map file for the technology +to correctly import the GDSII file into the Cadence database to +perform DRC. The function returns the number of DRC violations. The function \verb|run_lvs()| requires a cell name, a GDSII file, and -a Spice file. Calibre will extract an extracted Spice netlist from the -GDSII file and will then compare this netlist with the OpenRAM Spice -netlist. The function returns the number of uncompared and unmatched -devices/nets in the design. +a Spice file. Magic or Calibre will extract an extracted Spice netlist +from the GDSII file and will then compare this netlist with the +OpenRAM Spice netlist. The function returns the number of errors +encountered if there is an LVS mismatch. + For both DRC and LVS, the summary file and other report files are left in the OpenRAM temporary directory after DRC/LVS is run. These report files can be examined to further understand why errors were -encountered. In addition, by increasing the debug level, the command -line to re-create the DRC/LVS check can be obtained and run manually. +encountered. In addition, by increasing the debug level with one or +more ``-v'' command-line parametres, the command to re-create the +DRC/LVS check can be obtained and run manually. diff --git a/docs/intro.tex b/docs/intro.tex index 5da2f731..a83065b9 100644 --- a/docs/intro.tex +++ b/docs/intro.tex @@ -20,12 +20,9 @@ The specific features of OpenRAM are: \item \textbf{Memory Array Generation} - Currently, OpenRAM supports simple 1 read/write port synchronous - memories, but it will be extended to multi-port memories, register - files, and asynchronous memories in the future. The generation - includes features such as automatic word-line driver sizing, - efficient decoder sizing, multiple-word column support, and - self-timing with replica bitlines. + Currently, OpenRAM includes features such as automatic word-line + driver sizing, efficient decoder sizing, multiple-word column + support, and self-timing with replica bitlines. \item \textbf{Portability and Extensibility} @@ -41,11 +38,11 @@ The specific features of OpenRAM are: to distribute the technology information of others commercial technologies soon. - OpenRAM makes calls to commercial circuit simulators and DRC/LVS - tools in an abstracted way for circuit simulation and - verification. This enables adaptation to other design - methodologies. However, it also supports a completely open-source - platform for older technologies. + OpenRAM makes calls to both open-source or commercial circuit + simulators and DRC/LVS tools in an abstracted way for circuit + simulation and verification. This enables adaptation to other design + methodologies. It supports a completely open-source + platform for older SCMOS technologies. \item \textbf{Timing and Power Characterization} @@ -74,7 +71,9 @@ The specific features of OpenRAM are: \subsection{Requirements} -Development is done on Ubuntu or MacOS systems with Python 2.7. +Development is done on Ubuntu or MacOS systems with Python 2.7. It +requires a few common Python libraries such as numpy, scipy (soon, for +optimization) along with standard Python libraries (os, sys, etc.). \subsubsection{Timing Verification Tools} @@ -92,7 +91,7 @@ OpenRAM can use the following circuit simulators and possibly others if they support the Spice3 file format: \begin{itemize} \item HSpice I-2013.12-1 or later - \item ngSpice 26 \url{http://ngspice.sourceforge.net/} + \item ngspice 26 \url{http://ngspice.sourceforge.net/} \item CustomSim (xa) M-2017.03-SP5 or later \end{itemize} @@ -119,14 +118,15 @@ LVS can be done with: \subsubsection{Technology Files} -To work with FreePDK45, you must install the FreePDK baseline kit from: +To work with FreePDK45, you must install the FreePDK baseline kit from:\\ \url{https://www.eda.ncsu.edu/wiki/FreePDK45:Contents} We have included an example Calibre DRC deck for MOSIS SCMOS design -rules, but DRC with Magic relies on its own design rules: -\url{https://www.mosis.com/files/scmos/scmos.pdf} We require the -format 32 or later to enable stacked vias which is included with -Qflow: +rules, but DRC with Magic relies on the MOSIS scalable design +rules:\\ +\url{https://www.mosis.com/files/scmos/scmos.pdf}.\\ +We require the format 32 or later to enable stacked vias which is +included with Qflow: \begin{verbatim} git clone http://opencircuitdesign.com/qflow cp tech/osu050/SCN3ME_SUBM.30.tech @@ -137,15 +137,19 @@ DRCLVS\_HOME environment variable. \subsubsection{Spice Models} -FreePDK45 comes with a spice device model. Once this is installed, it -is used. +FreePDK45 comes with a spice device model. Once this is installed and +the PDK\_DIR environment variable for FreePDK45 is set, these spice +models are used. SCMOS, however, does not come with a device spice model. This must be obtained from MOSIS or another vendor. We use the ON Semiconductor -0.5um device models. +0.5um device models, but are unable to distribute them. We have included our +own generic spice models for simulation of SCMOS, but we recommend that +you replace these with more accurate foundry models. You can over-ride the location of the spice models with the -SPICE\_MODEL\_DIR environment variable. +SPICE\_MODEL\_DIR environment variable to ensure that they do not +``creep'' into the OpenRAM git repository. @@ -156,7 +160,7 @@ to make it relocatable in a variety of user scenarios. Specifically, the user may want technology directories that are separate from OpenRAM. Or, the user may want to have several versions of OpenRAM. This is done with the folowing required environment -variables: specifically: +variables: \begin{itemize} \item OPENRAM\_HOME defines the location of the compiler source directory. \item OPENRAM\_TECH defines the location of the OpenRAM technology @@ -165,12 +169,12 @@ variables: specifically: Other environmental variables and additional required paths for specific technologies are dynamically added during runtime by sourcing -a technology setup script. These are located in the +a technology setup script. These are mostly PDK-specific. These are located in the "\$OPENRAM\_TECH/setup\_scripts" directory. Example scripts for SCMOS and -FreePDK45 are included with the distribution. These setup any things -needed by the PDK. +FreePDK45 are included with the distribution. -\subsection{Design Flow} + +%\subsection{Design Flow} %% % high-level org @@ -209,13 +213,14 @@ needed by the PDK. \subsection{Usage} -The OpenRAM compiler rquires a single argument of a configuration +The OpenRAM compiler requires a single argument of a configuration file. The configuration file specifies, at a minimum, the memory size parameters in terms of the number of words, word size (in bits), and number of banks. By default, OpenRAM will chose the number of columns -to make the memory reasonably square. Commonly, the configuration file -also includes parameters for the output path, base output file name, -and technology of an SRAM. +to make the memory reasonably square. Other common configuration +parameters are the output path and base filename, characterization +corners (including the supply voltage), number of ports, technology +node, etc. The configuration file can be used to over-ride any option in the options.py file. Many of these can also be controlled by the command-line diff --git a/docs/modules.tex b/docs/modules.tex index 8c152863..41291083 100644 --- a/docs/modules.tex +++ b/docs/modules.tex @@ -10,17 +10,25 @@ of the possible circuits that can be adapted into a SRAM architecture; refer to Section~\ref{sec:implementation} for more information on adding different module designs to the compiler. -Each module has a corresponding python class in the \verb|compiler| -directory. These classes are used to generate both the GDSII layout -and spice netlists. Each module can consist of library cells as -discussed in Section~\ref{sec:techdir}, paramterized cells in -Section~\ref{sec:parameterized} or other modules. A discussion of the -design hierarchy and how to implement a module is provided in -Section~\ref{sec:design}. +Data structures for schematic and layout are provided in the +\verb|base| directory. These implement a generic design object and +have many auxiliary functions for routing, pin access, placement, +DRC/LVS, etc. These are discussed further in +Section~\ref{sec:implementation}. + +Each module has a corresponding Python class in the +\verb|compiler/modules| directory. These classes are used to generate +both the GDSII layout and spice netlists. A module can consist of +hard library cells (Section~\ref{sec:techdir}), paramterized +cells (Section~\ref{sec:parameterized}) or other modules. When combining modules at any level of hierarchy, DRC rules for minimum spacing of metals, wells, etc. must be followed and DRC and -LVS are run by default after each hierarchical module's creation. +LVS are run by default after each hierarchical module's creation. A +module is responsible for creating its own pins to enable routing +at the next level up in the hierarchy. A module must also define its +height and width assuming a (0,0) offset for the lower-left coordinate +to aid with placement. \subsection{The Bitcell and Bitcell Array} diff --git a/docs/openram_manual.pdf b/docs/openram_manual.pdf index 1852119555b28d332b214a0ec45ff3d49375414b..82487a734874dd6ade494a625de00e6d018de97d 100644 GIT binary patch delta 143277 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%0A2$4sg%rZil)g06+W``ismFvLv;I8*GO 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 delta 195226 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 diff --git a/docs/openram_manual.tex b/docs/openram_manual.tex index 1ac0fc97..32dfc3be 100644 --- a/docs/openram_manual.tex +++ b/docs/openram_manual.tex @@ -25,7 +25,6 @@ \title{OpenRAM Manual} \author{Matthew R. Guthaus - mrg@ucsc.edu\\ - James Stine - james.stine@okstate.edu\\ and many others } %\renewcommand{\today}{October 14, 2010} diff --git a/docs/overview.tex b/docs/overview.tex index c5f36370..89378c80 100644 --- a/docs/overview.tex +++ b/docs/overview.tex @@ -49,9 +49,11 @@ The inputs to the SRAM are: \item CSb - Active-low Chip Select \item WEb - Active-low Write Enable \item OEb - Active-low Output Enable -\item ADDR\# - corresponds to the Address Bus input, labeled 0 to N-address bits. -\item DATA\# - corresponds to the bi-directional Data bus. +\item ADDR[\#] - Address Bus input (LSB is 0) +\item DATA[\#] - Bi-directional Data bus (LBS is 0) \end{itemize} +If multiple ports are used, the ADDR and DATA buses are appended with +integers to extend them. The outputs to the SRAM are: \begin{itemize} @@ -59,33 +61,30 @@ The outputs to the SRAM are: \item DATA\# - correspond to the bi-directional Data bus. \end{itemize} +The supply voltages to the SRAM are: +\begin{itemize} +\item vdd - Supply voltage +\item gnd - Ground supply voltage +\end{itemize} \subsection{Top-Level SRAM Module} \label{sec:sram} -The \verb|sram| class in \verb|sram.py| is the top-level SRAM module. -This class handles the overall organization of the memory and the -input/output signals. Based on the user inputs, the various bus and -array sizes are calculated and passed to the \verb|bank| module. -All other sub-modules access the value of sizes from \verb|bank|. -The overall organization is depicted in -Figure~\ref{fig:sram_architecture}, discussion of the design data -structure is discussed in Section~\ref{sec:design} and the modules -contained in the top-level SRAM are detailed in -Section~\ref{sec:modules}. - -When the user has specified the desired size (word size, total -number of words and number of banks) of the memory that is to be generated, -the following parameters must be calculated. There are several constraints -to be considered in this calculations: - -(i) \verb|sram| can generate 1 bank, 2 banks or 4 banks. - -(ii) The area of each bank should be as square as possible which is dependent on the area of a 6T cell. - -(iii) There are several options for multiplexing (column-mux): 2-way, 4-way, 8-way and none. +The sram class in \verb|sram.py| is the top-level SRAM module. This +class handles the overall organization of the memory, instantiates the +contorl logic, instantiates a number of banks, and creates decoded +enable signals for multiple banks. All of the top level routing is +performed in the sram class. -All of the top level routing is performed in the \verb|sram| class. +The sram class instantiates identical copies of the bank module from +\verb|bank.py|. All other sub-modules access the value of sizes from +bank. The bank module includes an address decoder, (optional) column +address decoder, (optional) column mux, sense amplifiers, precharge +circuitry, write drivers, etc. A single bank organization is depicted +in Figure~\ref{fig:sram_architecture}. + +Discussion of the design data structure is discussed in +Section~\ref{sec:design} and the modules contained in the top-level +SRAM are detailed in Section~\ref{sec:modules}. -\fixme{More soon...} From 21967fccde3bc1d1c14757ec644dad1096cc6b8f Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Mon, 12 Feb 2018 15:30:38 -0800 Subject: [PATCH 87/95] Update bitcell and array section. --- docs/modules.tex | 249 +++++++++++++++++++--------------------- docs/openram_manual.pdf | Bin 1488231 -> 1436160 bytes 2 files changed, 117 insertions(+), 132 deletions(-) diff --git a/docs/modules.tex b/docs/modules.tex index 41291083..ce239ff9 100644 --- a/docs/modules.tex +++ b/docs/modules.tex @@ -34,9 +34,12 @@ to aid with placement. \subsection{The Bitcell and Bitcell Array} \label{sec:bitcellarray} -The 6T cell is the most commonly used memory cell in SRAM devices. It -is named a 6T cell because it consist of 6 transistors: 2 access -transistors and 2 cross coupled inverters as shown in +OpenRAM can work with any cell as the bitcell. This could be a foundry +created one or a user design rule cell for experiments. In addition, +it could be a common 6T cell or it could be replaced with an 8T, 10T +or other cell, depending on needs. + +By default, OpenRAM uses a standard 6T cell as shown in Figure~\ref{fig:6t_cell}. The cross coupled inverters hold a single data bit that can either be driven into, or read from the cell by the bitlines. The access transistors are used to isolate the cell from @@ -45,70 +48,52 @@ accessed. \begin{figure}[h!] \centering -\includegraphics[scale=.9]{./figs/cell_6t_schem.pdf} -\caption{Schematic of 6T cell.} +\includegraphics[scale=.9]{figs/cell_6t_schem.pdf} +\caption{Standard 6T cell.} \label{fig:6t_cell} \end{figure} -% memory cell operation -The 6T cell can be accessed to perform the two main operation -associated with memory: reading and writing. When a read is to be -performed, both bitlines are precharged to VDD. This precharging is -done during the first half of the read cycle and is handled by the -precharge circuitry. In the second half of the read cycle the -wordline is asserted, which enable the access transistors. If a 1 is -stored in the cell then BLB is discharged to Gnd and BL is pulled up -to Vdd. Conversely, if the value stored is a 0, then BL is discharged -to Gnd and BLB is pulled up to Vdd. While performing a write -operation, both bitlines are also precharged to Vdd during the first -half of the write cycle. Again, the world line is asserted, and the -access transistors are enabled. The value that is to be written into -the cell is applied to BL, and its complement is applied to BLB. The -drivers that are applying the signals to the bitlines must be -appropriately sized so that the previous value in the cell can be -overwritten. - % tiling memory cells The 6T cells are tiled together in both the horizontal and vertical -directions to make up the memory array. The size of the memory array -is directly related to the numbers of words, and the size of those -words, that will need to be stored in the RAM. For example, an 8kb -memory with a word size of 8 bits could be implemented as 8 columns -and 1024 rows. +directions to make up the memory array. % keeping it square -It is common practice to keep the aspect ratio of memory array as -square as possible\footnote{Future versions will consider optimizing - delay and/or power as well.}. This helps to make sure that the -bitlines do not become too long, which can increase the bitline -capacitance, slow down the operation and lead to more leakage. To -make the design ``more square'', multiple words can share rows by -interleaving the bits of each word. If the previous 8kb memory was -rearranged to allow 2 words per row, then the array would have 16 -columns and 512 rows. +It is common practice to keep the aspect ratio of a memory array +roughly ``square'' to ensure that the bitlines and wordlines do not +become too long. If the bitlines are too long, this can increase the +bitline capacitance, slow down the operation and lead to bitline +leakage problems. To make an array ``more square'', multiple words +can share rows by interleaving the bits of each word. The column mux +in Section~\ref{sec:column_mux} is responsbile for selecting a subset +of bitcells in a row to extract a word during read and write +operations. % memory cell is a library cell -In OpenRAM, we provide a library cell for the 6T cell so that users -can easily swap in different memory cell designs. The memory cell is -the most important cell in the RAM and should be customized to -minimize area and optimize performance. The memory cell is the most -replicated cell in the RAM; minimizing its size can have a drastic -effext on the overall size of the RAM. Also, the transitors in the cell -must be carefully sized to allow for correct read and write operation -as well as protection against corruption. +In OpenRAM, we provide a library cell for the 6T cell that can be +swapped with a fab memory cell, if available. The transitors in the +cell are sized appropriately considering read and write noise margins. % bitcell and bitcell_array classes -The \verb|bitcell| class in \verb|bitcell.py| instantiates a single -memory cell and is usually a pre-made library cell. The -\verb|bitcell_array| class in \verb|bitcell_array.py| dynamically -implements the memory cell array by instantiating a single memory cell -according to the number of rows and columns. During the tiling -process, the cells are abutted so that all bitlines and word lines are -connected in the vertical and horizontal directions respectively. In -order to share supply rails, cells are flipped in alternating rows. To -avoid any extra routing, the power/ground rails, bitlines, and -wordlines should span the entire width/height of the cell so thay they -are automatically connected when the cells are abutted. +The bitcell class in \verb|modules/bitcell.py| is a single +memory cell and is usually a pre-made library cell. + +% bitcell_array +The bitcell\_array class in \verb|modules/bitcell_array.py| dynamically +implements the memory cell array by instantiating a the bitcell class +in rows and columns. + +% abutment connections +During the tiling process, bitcells are abutted so that all bitlines +and word lines are connected in the vertical and horizontal directions +respectively. This is done by using the boundary layer to define the +height and width of the cell. If this is not specified, OpenRAM will +use the bounding box of all shapes as the boundary. The boundary layer +should be offset at (0,0) in the lower left coordinate. + +% flipping +In order to share supply rails, bitcells are flipped in alternating +rows. + \subsection{Precharge Circuitry} @@ -271,7 +256,7 @@ takes the transistor size and cell height as inputs (so that it can abutt the \subsection{Column Mux} - +\label{sec:column_mux} The column mux takes the column address bits from the address bus selects the appropriate bitlines for the word that is to be read from or written to. It takes n-bits from the address bus and can select @@ -282,88 +267,88 @@ sense ampflifier and the write driver. OpenRAM provides several options for column mux, but the default is a single-level column mux which is sized for optimal speed. -\subsubsection{Tree\_Decoding Column Mux} -\label{sec:tree_decoding_column_mux} +%% \subsubsection{Tree\_Decoding Column Mux} +%% \label{sec:tree_decoding_column_mux} -The schematic for a 4-1 tree -multiplexer is shown in Figure~\ref{fig:colmux}. +%% The schematic for a 4-1 tree +%% multiplexer is shown in Figure~\ref{fig:colmux}. -\begin{figure}[h!] -\centering -\includegraphics[scale=.9]{./figs/tree_column_mux_schem.pdf} -\caption{Schematic of 4-1 tree column mux that passes both of the bitlines.} -\label{fig:colmux} -\end{figure} +%% \begin{figure}[h!] +%% \centering +%% \includegraphics[scale=.9]{./figs/tree_column_mux_schem.pdf} +%% \caption{Schematic of 4-1 tree column mux that passes both of the bitlines.} +%% \label{fig:colmux} +%% \end{figure} -\fixme{Shading/opacity is different on different platforms. Make this a box in the image. It doesn't work on OSX.} +%% \fixme{Shading/opacity is different on different platforms. Make this a box in the image. It doesn't work on OSX.} -This tree mux selects pairs of bitlines (both BL and BL\_B) as inputs -and outputs. This 4-1 tree mux illustrates the process of choosing -the correct bitlines if there are 4 words per row in the memory array. -Each bitline pair represents a single bit from each word. A binary -reduction pattern, shown in Table~\ref{table:colmux}, is used to -select the appropriate bitlines. As the number of words per row in -the memory array increases, the depth of the column mux grows. The -depth of the column mux is equal to the number of bits in the column -address bus. The 4-1 tree mux has a depth of 2. In level 1, the -least significant bit from the column address bus selects either the -first and second words or the third and fourth words. In level 2, the -most signifant column address bit selects one of the words passed down -from the previous level. Relative to other column mux designs, the -tree mus uses significantly less devices. But, this type of design -can provide poor performance if a large decoder with many levels are -needed. The delay of of a tree mux quadratically increases with each -level. Due to this fact, other types of column -decoders should be considered for larger arrays. +%% This tree mux selects pairs of bitlines (both BL and BL\_B) as inputs +%% and outputs. This 4-1 tree mux illustrates the process of choosing +%% the correct bitlines if there are 4 words per row in the memory array. +%% Each bitline pair represents a single bit from each word. A binary +%% reduction pattern, shown in Table~\ref{table:colmux}, is used to +%% select the appropriate bitlines. As the number of words per row in +%% the memory array increases, the depth of the column mux grows. The +%% depth of the column mux is equal to the number of bits in the column +%% address bus. The 4-1 tree mux has a depth of 2. In level 1, the +%% least significant bit from the column address bus selects either the +%% first and second words or the third and fourth words. In level 2, the +%% most signifant column address bit selects one of the words passed down +%% from the previous level. Relative to other column mux designs, the +%% tree mus uses significantly less devices. But, this type of design +%% can provide poor performance if a large decoder with many levels are +%% needed. The delay of of a tree mux quadratically increases with each +%% level. Due to this fact, other types of column +%% decoders should be considered for larger arrays. -\begin{table}[h!] - \begin{center} - \begin{tabular}{| c | c | c | c |} - \hline - Selected BL & Inp1 & Inp2 & Binary\\ \hline - BL0 & SEL0\_bar & SEL1\_bar & 00\\ \hline - BL1 & SEL0 & SEL1\_bar & 01\\ \hline - BL2 & SEL0\_bar & SEL1 & 10\\ \hline - BL3 & SEL0 & SEL1 & 11\\ - \hline - \end{tabular} - \end{center} - \caption{Binary reduction pattern for 4-1 tree column mux.} - \label{table:colmux} -\end{table} +%% \begin{table}[h!] +%% \begin{center} +%% \begin{tabular}{| c | c | c | c |} +%% \hline +%% Selected BL & Inp1 & Inp2 & Binary\\ \hline +%% BL0 & SEL0\_bar & SEL1\_bar & 00\\ \hline +%% BL1 & SEL0 & SEL1\_bar & 01\\ \hline +%% BL2 & SEL0\_bar & SEL1 & 10\\ \hline +%% BL3 & SEL0 & SEL1 & 11\\ +%% \hline +%% \end{tabular} +%% \end{center} +%% \caption{Binary reduction pattern for 4-1 tree column mux.} +%% \label{table:colmux} +%% \end{table} -In OpenRAM, the tree column mux is a dynamically generated design. The -\verb|tree_mux_array| is made up of two dynamically generated cells: \verb|muxa| -and \verb|mux_abar|. The only diffference between these cells is that input -select signal is either hooked up to the \textbf{SEL} or -\textbf{SEL\_bar} signals (see highlighted boxes in -Figure~\ref{fig:colmux}). These cells are initialized the the -\verb|column_muxa| and \verb|column_muxabar| classes in \verb|columm_mux.py|. Instances -of \verb|ptx| PMOS transistors are added to the design and the necessary -routing is performed using the \verb|add_rect()| function. A horizontal rail -is added in metal2 for both the SEL and Sel\_bar signals. Underneath -those input rails, horizontal straps are added. These straps are used -to connect the BL and BL\_B outputs from \verb|muxa| to the BL and BL\_B -outputs of \verb|mux_abar|. Vertical conenctors in metal3 are added at the -bottom of the cell so that connections can be made down to the sense -amp. Vertical connectors are also added in metal1 so that the cells -can connect down to other mux cells when the depth of the tree mux is -more than one level. +%% In OpenRAM, the tree column mux is a dynamically generated design. The +%% \verb|tree_mux_array| is made up of two dynamically generated cells: \verb|muxa| +%% and \verb|mux_abar|. The only diffference between these cells is that input +%% select signal is either hooked up to the \textbf{SEL} or +%% \textbf{SEL\_bar} signals (see highlighted boxes in +%% Figure~\ref{fig:colmux}). These cells are initialized the the +%% \verb|column_muxa| and \verb|column_muxabar| classes in \verb|columm_mux.py|. Instances +%% of \verb|ptx| PMOS transistors are added to the design and the necessary +%% routing is performed using the \verb|add_rect()| function. A horizontal rail +%% is added in metal2 for both the SEL and Sel\_bar signals. Underneath +%% those input rails, horizontal straps are added. These straps are used +%% to connect the BL and BL\_B outputs from \verb|muxa| to the BL and BL\_B +%% outputs of \verb|mux_abar|. Vertical conenctors in metal3 are added at the +%% bottom of the cell so that connections can be made down to the sense +%% amp. Vertical connectors are also added in metal1 so that the cells +%% can connect down to other mux cells when the depth of the tree mux is +%% more than one level. -The \verb|tree_mux_array| class is used to generate the tree mux. -Instances of both the \verb|muxa| and \verb|mux_abar| cells are instantiated and -are tiled row by row. The offset of the cell in a row is determined -by the depth of that row in the tree mux. The pattern used to -determine the offset of the mux cells is -$muxa.width*(i)*(2*row\_depth)$ where is the column number. As the -depth increases, the mux cells become further apart. A separate -``for'' loop is invoked if the $depth>1$, which extends the -power/ground and select rails across the entire width of the array. -Similarly, if the $depth>1$, spice net names are created for the -intermediate connection made at the various levels. This is necessary -to ensure that a correct spice netlist is generated and that the -input/output pins of the column mux match the pins in the modules that -it is connected to. +%% The \verb|tree_mux_array| class is used to generate the tree mux. +%% Instances of both the \verb|muxa| and \verb|mux_abar| cells are instantiated and +%% are tiled row by row. The offset of the cell in a row is determined +%% by the depth of that row in the tree mux. The pattern used to +%% determine the offset of the mux cells is +%% $muxa.width*(i)*(2*row\_depth)$ where is the column number. As the +%% depth increases, the mux cells become further apart. A separate +%% ``for'' loop is invoked if the $depth>1$, which extends the +%% power/ground and select rails across the entire width of the array. +%% Similarly, if the $depth>1$, spice net names are created for the +%% intermediate connection made at the various levels. This is necessary +%% to ensure that a correct spice netlist is generated and that the +%% input/output pins of the column mux match the pins in the modules that +%% it is connected to. \subsubsection{Single\_Level Column Mux} diff --git a/docs/openram_manual.pdf b/docs/openram_manual.pdf index 82487a734874dd6ade494a625de00e6d018de97d..39cdcd70eb201a0514c88e5c58ec189b74f67e31 100644 GIT binary patch delta 127845 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

{l{V5Q*f0RgY7;*K3uQ%o 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 delta 179156 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 Bgc|pF4R6joKR~6l_=)dns1A0=^xapgGPE$(7O+ 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 Q3^+A5F*yn)B}Gq03iwFyqW}N^ From e32b0b8f7a17579e9156379036ce59c0a00701cf Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Mon, 12 Feb 2018 15:32:47 -0800 Subject: [PATCH 88/95] Change precharge input from clk to en --- compiler/modules/precharge.py | 20 ++++++++++---------- compiler/modules/precharge_array.py | 2 +- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/compiler/modules/precharge.py b/compiler/modules/precharge.py index d2a64678..a230269b 100644 --- a/compiler/modules/precharge.py +++ b/compiler/modules/precharge.py @@ -29,13 +29,13 @@ class precharge(pgate.pgate): self.DRC_LVS() def add_pins(self): - self.add_pin_list(["bl", "br", "clk", "vdd"]) + self.add_pin_list(["bl", "br", "en", "vdd"]) def create_layout(self): self.create_ptx() self.add_ptx() self.connect_poly() - self.add_pclk() + self.add_enk() self.add_nwell_and_contact() self.add_vdd_rail() self.add_bitlines() @@ -74,7 +74,7 @@ class precharge(pgate.pgate): self.lower_pmos_inst=self.add_inst(name="lower_pmos", mod=self.pmos, offset=self.lower_pmos_position) - self.connect_inst(["bl", "clk", "BR", "vdd"]) + self.connect_inst(["bl", "en", "BR", "vdd"]) # adds the upper pmos(s) to layout ydiff = self.pmos.height + 2*self.m1_space + contact.poly.width @@ -82,13 +82,13 @@ class precharge(pgate.pgate): self.upper_pmos1_inst=self.add_inst(name="upper_pmos1", mod=self.pmos, offset=self.upper_pmos1_pos) - self.connect_inst(["bl", "clk", "vdd", "vdd"]) + self.connect_inst(["bl", "en", "vdd", "vdd"]) upper_pmos2_pos = self.upper_pmos1_pos + self.overlap_offset self.upper_pmos2_inst=self.add_inst(name="upper_pmos2", mod=self.pmos, offset=upper_pmos2_pos) - self.connect_inst(["br", "clk", "vdd", "vdd"]) + self.connect_inst(["br", "en", "vdd", "vdd"]) def connect_poly(self): """Connects the upper and lower pmos together""" @@ -109,16 +109,16 @@ class precharge(pgate.pgate): width=xlength, height=self.poly_width) - def add_pclk(self): - """Adds the pclk input rail, pclk contact/vias, and connects to the pmos""" - # adds the pclk contact to connect the gates to the pclk rail on metal1 + def add_en(self): + """Adds the en input rail, en contact/vias, and connects to the pmos""" + # adds the en contact to connect the gates to the en rail on metal1 offset = self.lower_pmos_inst.get_pin("G").ul() + vector(0,0.5*self.poly_space) self.add_contact_center(layers=("poly", "contact", "metal1"), offset=offset, rotate=90) - # adds the pclk rail on metal1 - self.add_layout_pin_center_segment(text="clk", + # adds the en rail on metal1 + self.add_layout_pin_center_segment(text="en", layer="metal1", start=offset.scale(0,1), end=offset.scale(0,1)+vector(self.width,0)) diff --git a/compiler/modules/precharge_array.py b/compiler/modules/precharge_array.py index 7c91f126..f72e64fb 100644 --- a/compiler/modules/precharge_array.py +++ b/compiler/modules/precharge_array.py @@ -46,7 +46,7 @@ class precharge_array(design.design): self.add_layout_pin(text="en", layer="metal1", - offset=self.pc_cell.get_pin("clk").ll(), + offset=self.pc_cell.get_pin("en").ll(), width=self.width, height=drc["minwidth_metal1"]) From f457091bba257873983fa72df0090a3ae88ecafc Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Mon, 12 Feb 2018 15:34:01 -0800 Subject: [PATCH 89/95] Fix typo in precharge. --- compiler/modules/precharge.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/compiler/modules/precharge.py b/compiler/modules/precharge.py index a230269b..26e3b5f1 100644 --- a/compiler/modules/precharge.py +++ b/compiler/modules/precharge.py @@ -35,7 +35,7 @@ class precharge(pgate.pgate): self.create_ptx() self.add_ptx() self.connect_poly() - self.add_enk() + self.add_en() self.add_nwell_and_contact() self.add_vdd_rail() self.add_bitlines() From 93c66ec45dc830c037da0285e58344fa150a1099 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Mon, 12 Feb 2018 15:38:53 -0800 Subject: [PATCH 90/95] Update precharge section. --- docs/figs/precharge_schem.pdf | Bin 7257 -> 6765 bytes docs/figs/precharge_schem.svg | 14 +++++++------- docs/modules.tex | 25 +++++++++++++------------ docs/openram_manual.pdf | Bin 1436160 -> 1435447 bytes 4 files changed, 20 insertions(+), 19 deletions(-) diff --git a/docs/figs/precharge_schem.pdf b/docs/figs/precharge_schem.pdf index d1fb1f0ed7a69664bac085a7d444ee09d1f91f4b..f79363a554d8d7e5185383f723cbf90fd2feab63 100644 GIT binary patch delta 5213 zcmZWtXH*kFwx&sM0@9mwA{avGML~L(UIhstNJpB~5Rrt?rI!GPj&uS_FD8T{B2_>^ zdX*wd(@>tfZ_nBHcITd%^Ue3oJ@?+3KXdN9!oEzJF?86MTamW=`<)0qEGG*JJ%z04*JBR7KH5uMzLcqkSl^mzL; zP~BH^?UHwe{Wo?*O7-Wd)VMwBcq}AR{YTSp9=%@mVt}mvneuwGLFp&HukMNEk3*K= zArURf&5grSgn9`k)dM(Hi#|m~^+P53uW9@{wZ%`$Y+Hm9ky$^&^skaEBWDwV<({#29IA4^kHi$^ujqqu>* z=lFpA>6PxToz7}KSuvfto~# z4!_jzB#%E>&P?$gpU3_9PSizxu8I!?q?5X9tGS}L>BleB zhQc(Y4T~Xfmfs~)Q}pKYw%L{_Z7t50A*+-J>a;4j9c@S`G-O@!YW&+OI2r*D)SeIH z?7vp$?zQ129E54Ns42C*t!{T1ABw=8C|(yhmVBkeOma~JJGxI#=3z6pGe$|Npeuv1 zZG~SArVf7`*%$g~W7WJ+fBKKk>rI}h^74)@n$=PvD86pGK9obab~(JBiMm|CZ^U*= zNe1_Tq{8&ws;cx_4Swe@U2#o!HQ=kP)gxddmmf3Ic4Hg*&r$nV4P1W`=_A`2Td2cC zqlua87fz|&d|d;Bp1C>u`~ziJlHDW$$znXnQi-8b3NqC9?ot0seU93&jK7cmvp5>N`wHMF5lT**n2e` zD0sBFT$8j{2l|qfyp!s4|V6(gX80ymfQ&IQXLUhBM1E`K= z_fo?*ug64>U&_WT=XX{$u17_7Q>*n-z8=l*^hVYYJPk!+s)0n`0f4;TZL3S`k3{IZ zb|*hC+^tyYdMC0?&U8GI1N*xk93p@R-48<2owrHMZ1A1~LQDMZhcC1YtX#)FSCHfe zr<)gx7umB*e{9QJUlG!g1UQ(!AB5J}3T>tD0m4EYhp}I*gS;F`_*r8}v?d1=anV1m zV#Q1-uX(2r^X>vz=*2(IexZonup_jdPWyXx&G7go16Ri_6DA(Xmz#j0gcFP>)BeQV zCDl^Hmwqy1_5&mio+hQC;Wvnvf*z;nHqPVE=uJRUl(yHr zv+FlcWxnic>qPu&{a|JP#Pf3chy43n39gJZnh@b$9+;XyxU=yB4%W#aE8{9#Ps6v4 z3omHhI9^=qTK1T5xXthXO_#{ApGM71&g6c}v;JFm%r%!^B^(ypL!3u_^li^X*r{&P<^@9BKW{ zQi+wjYmd1L;+cOdfS~Fp+u+CKAFwL-EP*csPG#famhY1CeMRrRFO005L-VpCrj;&}u3mksOC6yImm|*}W6~~i!OZUk{;W239M4MB z>1jYu-@IaFzIrkd`1W`i_=b4&lpO6RLzt)E8&J2#+xt{B5koJ68AU?(&d~Kul4sMXFu3*WuRnVhX^_PwB(vqE(PC#*! z0Sswpmv8uK=WlcBt3-*1!S$nJ{kw)WH7J#5I{P;n=C_kV#5yz(dI^%=wcu?C7>$hA z8R~FuH|kysff6|ul}&(zL9!rg$N?^XLMlJmN?Tc5ClO|sPy}K3kbpz1YFU&MO6h(l ziu3A3O2GWKr6>m0NosCPPN~s6Fkid%Xi&q>e!k}`;P2&Vt8lfZlAa! zj1PM|i^QZq5rhjPkjs3cU--$sozkk;RCp0bZ^LK+dFK!l7bd7jD$1$DQ2MIXqV#q{Pz6>T77hB%71%5yXM; z;J{aA&FJU7oov&#t*MjsH5E_*J1ZpO$>bObJC}4CbCf9b7RTle4c&+1Ecn*E$ikST zMg-C55jm?#6NXHGKsbAJ#P)_kw6#^sPy+PH#OLz0cZH;y4s8D0UA(n)#~<8H_q21@ z16*C`tUYnRIH%c<6=sl(gN7Dm1rgL-<%J`%TCA>6o0!WAeuB|-#GDf!+}UB6kJaxM z$3c)+m!M-a_iwP=p}a(;7gQ2hxLiCwZ$;COi3$oyY10^0THayfxRu;pX!SJ8Lz zKD*f7iLS26Z{uNU%s`b?DJJKJo`6QchWG5c*<11MA59ur_j@`ZGp%{WAi|ue zpqq}5&;GNwvR)G@$PZETsgAs;(|KhR9x>!A=-x2aclDY02Ks(x7&%OE!RBdvO;Fsd z!UHebuNLmfUiR;;f=gYT%wB@I$9Z=QgKSYAso*NTO!^TW9im8LJM;ba38?SyQ69g0tZ{S#d8rtx*f$7vGQ-F>c=;dx6(dA@~~rTJ9W7?h2#emV%${3%%N1QI)00y z4MU%vIN9Vz1Wf#WYl@VjxgPhWv7O3d$?nWEahmz0gSJgczUcjsVlLEXO>_XEe?z$3 zEsFX3qxvNtr%Tpj&1A;&d?*!hy&>95!qSEeY@sG!Fh)I3eaao7rPvU;tRGa~(d?kJ zN(c(2=mEcm8@b$Y1@^i#h(>IZ5}f>!#?E8*A)WKQyRv70!gkr_2YTCoMuQm*45725 zd~%nEMI1x%L?;wVaqy5s-or<~ulo|OMU&lP`0T2R(x+Q!LU#wss!da{N;dlW zfwghx`Gy^_{uK3-qbK7pTDfiL%Q9G(86LpsvuRFRbVM*1L!)v5P~7aVrwgC_j;z@6 z24Q!A%jFV0X9*mu{KQ1XvwV*Q=mx19rQ6EY<9>oMs5!2kVh0@!!YHr&h6liQSOZr#~8DV@2NH=u~cECJ8g9a^2%s9{e)n z^N`f~NZcXm5EHBdFSsqPJ7jqI;Oc(U^8HvMk1pa6ML+ z-DgR%<`L;ZXLbG#PH4~fG3$X@acgYU#xGSkOjV9kS^9^Av1&Qx#sMbBpTl^IcRF&} zidBB}#@|hZZoY}F4o2U3bail04X*yVHACgj({ZA7VBB^!n>3q2VVtitWf>Z}mmATU zBFV1Nu>;@p~H=AYO0HOL*i&WA`oXU3gm!tikAtL2lz-}Y`6wNF?bn7Wsh z==hTRrVdH($0d)CZZ?+c`w3fzF-V>R&`bxGD}z;dSMx{c9La8>s&D=jmxxl%ee2K9 zJ9=~Go(>)^ocnNIRWkH~){2EfbT1g>qkZrVkeH;k18_X1Jer-a~g? z&VB7qeQmpX`1H@=ho=26&nK)>X7Ot?XC(uc$V08QLm|gk=k~~Jp{5x`jy+_+4Jp}l zULeyYbabIqqi~1|6>PL!RYV@@s@yqB!a?5&7iFJ&A&r? zMMG?&CM(0T7r2InRn4ACE|cfy4GT8FqnvvxcaL&$O32={=hKPT9(X~&_JNzg9!oD~ zzxJljaKH2^zmQdDBtnQc^LZbfAbjxEihf*Fy zOPcMSu6lJ!thVYdxb+uv1XSX9dLA}ulmJ=YO_l85iwrKX?fSy^F7GJIc%fq>a}E$- z5Zp8OjQU;e%1psxi4tFpY9xkBUT@+2Cx4Ua>WA1L!qmUYbs9Zm^(^KCNH6z=2Eu_> zW)*Mv zZnurb8wlUs!A%-RzGY?$g&=Vd z`$WZ-YJl>54^30p043%M9D!(zvlWmM8A6+eE%7LS6gx9O#LoYLSW1q<7{Vn=L3_1S zzxjC!Gsa{^Fk@UWpao|t=mW{*(Mh3X7W7eAU3mz4Kg9!QKtQr_hDa=8e&B~Ox7@S< zd_KSfu1DMY7*2)2LBgS86?Ae)8Dy+cZa##m8l4MyuRcr;8hSBI&YcS<<$ab&>=-FF zEW-QDC7q6N7MOUI`uM)QNQaRCh;~tA?+!>EQY@8Jsj%j={S)FKiZ`Qda!jJq5_KCF z2X!!)HiOb%>LR#y_| zA6b97OUG=3GNNzslFBG3W)$Dj{oCfj@zcT&RpL^ou<_m*4kfy!JHm*&o?j>)_vyXj zd_k$WzVF4Kudf<&AK2?g+k5hj24-98rbr^nXtX}RH$9dp)PIvWnNmV?Pqo66dsMztBs!;&-gap z`PbIb06t1fXz)&Oaa&)H$F(zt4Oj__=^RcZP# zLuNc(MAV+T@7M(O>d&>WjM$pi{=w_H0dh-~-a&JOLBJ`#DE3=uX3a$8$HQ+=b1 zG zlLJYE|C^JM{Vz^dN=EuWePyNO{wDk%F=Rmh8(04SuB==t&SVk^` Sl-rORtf)vWEUaasP5nPVjk>P@ delta 5685 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 YKRAd81Vuxq4uD9202~~OTCV~B0}c4Y_y7O^ diff --git a/docs/figs/precharge_schem.svg b/docs/figs/precharge_schem.svg index 9323e52a..1ad9f6d8 100644 --- a/docs/figs/precharge_schem.svg +++ b/docs/figs/precharge_schem.svg @@ -25,13 +25,13 @@ inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="1" - inkscape:cx="161.5" + inkscape:cx="20" inkscape:cy="520" inkscape:document-units="px" inkscape:current-layer="layer1" showgrid="true" - inkscape:window-width="1280" - inkscape:window-height="752" + inkscape:window-width="3440" + inkscape:window-height="1392" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="1"> @@ -185,7 +185,7 @@ id="tspan4519" x="184" y="577.36218" - style="font-size:16px;line-height:1.25;font-family:sans-serif">BL + style="font-size:16px;line-height:1.25;font-family:sans-serif">bl BL_bar + style="font-size:16px;line-height:1.25;font-family:sans-serif">br VDD + style="font-size:16px;line-height:1.25;font-family:sans-serif">vdd CLK + style="font-size:16px;line-height:1.25;font-family:sans-serif">en 2-}ioR z)l|*aR!^VvoSvP1e%(C*^V&_5+O>U1P#kQDkmwA+G$oG$9_-M&2OK72$QimX<|c9K zchp(@b%OQ7<6le$W*Bg*0}AI14I#huqtjU=uoPQhv58>{-5qt1LDy7)fEB8W3XPDo&cfiHr^&uYsR7SPKJ8kc9A+o{8bfV@;LF|O*Zz}X zLffHD1k?_f+7XHINB|Axuxa=yVR}P`-ICqK=dVLT>^!kMM`;z7@>1(<5cI`EwK+C| zeSt)g4MazYTbG|SBKCfv=fLCOQECep0!83uaD2o`P>Rsut1QVvj97^M=`G4?S;$Cb0w9oUq9ynoucKvb>%t zlWiD{=Nc58qZOYMJw}xqs{$q`crXkh-%s6(AW1*^9M<<-e=HD_-vLCR6?;|+0@1i+ z*cOQc*@u`g^gL1umq8pOBnW%2BX?#7Et2UKRIalz(SZ;LL!Q!iQnGA9O+c@K-bsn#_1ZkH zgdLmZ>@68Vt(Py|9Q7w4@7g=;xZe%ytQ6?6zf`YK0lyvO2M%v`u4iX@`hc(PY#0)I z`l~61u=%NX8UAM2r!p7!pB}r$CC}x)?j8;n+6pNBc+A4}GVHMosT9#6!ob|SQocAB zu@6sM7dnfB_5K0(sA4XLQ)boISP~9wp6M}MoDzg)9Whi^>h@TCsuyD%L)6U#BUf&D~?8cYcD)By@7Y=x;6f@O2!X&>hZ@xmZ39llnV zXKij=R}9>n>|NNK2ZfU@bs&vbl<(`>fNWjyelw2bA~U(B9QmrQ2Cq-79Xpu7&6@~W z0wf$FdEi-}2wS3CD7Yw zg*o+@e0T$*^0vJK5P1Z_}9V6^0%>CCtaa; z8IEWoj8CXtxV0ehCZ!^dQ;6 zkA3?3Hivx}AVqb0BT9&DOdwM@Rx*jSx$i_^1e#M1ZYp_zR3uAPn}N?zQzZr=y1bX% zw@#=bywzN!*!@Nem3DKb>cSV`>s^ejyd>Gc*7d=`YO-lVIJ_{ITKMPf>QbiY4~iFO z;_N*cj?A>F>HW*;ng4y9EKfA2pS1lsfd5V>ZHQBvp4Gjdak48e^h5UF3DpcS!P%KX z6Tn8L!#xn8$HJ2Y-S+j?g=h$gz3EhNT@=Iz1^6dVurY4yeM1*A@w|h@362%nG1eI5 zHSh5{)M14&#pLJ=2$n(7rr*Nt{qf#LM_MX8Gf?gQ$wAmVZ0B)VBX#`u0l+=GGFJr@ zLoEEwjUFRR026~2WP#?(5Q`IPvCI)91EDxF??#pds<1MJV6}6)TjmDLRtgD zR&Qy1W0{a(c6|GABHLl1kAbC4yWs-shGY$^&rTGUW7~V4-h4T$unK?^jh1psW=d`%24K7O z7th*Y8&e|$dD8Dug1H}+qIoVDi@c{QV16+io-zZyRv|~?$V5kPjTrIj&#+_W_O_pM zyndT4d}qD$cYEEGra6mdje2bVjm{LTVFvw#--)uiZO(g+$h-Xkp3+8Y(;%roQ*OkA zEfPNPG&Ka{)E@X=Qi}WH8+@Yh`J@%vuK~S14KwlUzO}=Z)a-MXmL6x8QkQ;Su1S1m zuZ$hWK||-V{o^)K4-da3L!;-xqSfrnver(GPln~yteQVTHX+OlhS+@DjG%NSi1E|VZ*Vl=Rj#7yI&T zxh`&wrf2<8uC`zbD+jw=@~N_xAdT2)@>BMs_Oe2ohMLihyOogmUe*GqMg)-a> zINi}RP)3dAn7W1y!oV_t!=ER$VqvIcN z*D&!bOUU@m#F>-7lAG_YcRycV_kGjz0M;)&n=yNqZHs)+X;fDOI<`6tbaaGCTUQ9J z7`W)}0vKO&=h5)*OuX2*3IlXa%9dO^brE;Ia71+R$jKcF=_{#-j9X?&I^6wydD^$W z`dxA}_ri^v#`Wg^Abv2hylVXuH=C>Nsq5wY-G1CTSt+1=f6idp5iq8!slNYn47iT> zd+927cgE(F5y=UvctU&i@iOcX@g3JxN#kj6;ltFk(M#Zr#8#2I!G*M)%oo9C8#J+6 zfd~j?0HFoxC1=h1;O@4!lrXV)m{-f3uvC}K{auezTA;xOhWAHmcSsXr^oWZ{ujuly zArYZ5!ZPZ)7vDal9KzXAq^HiXDIm{JiR&$@^D&||Vs8&=OT!vvy|YK5h^fR%y3MZQ zp;Pn1Rb~!4Qv7FVYb+-J>&iq?{&Z6JUa^ce0vhxVqu1*lkh}kVp8qbT?@(Fd-jcUB zSI#LDYMd_Q!PD{WJ=z+3sLn*2Lnj|o5`f@%Rwdrx>#w6qdP8*97+K@@oxsWAH)e}Z zG|5k_#jB#ow?294N(^Fg9``N3?F`#~d}m=$G5%Vqn3rb94V8EP9}ywnE%8A9Clu_Wc0_Rt$AlLdU5?lN1uR-}uTelTE&K$x_p{ zgt^1(pR5dOX?%$%avV~L*duX;X5W;|t}JN1UXK0UpLAKVXa?k~HC*1}D;euXM+*}a z^2#+`y5u?w?*usw&C(Qqy4xu(Z-vQce80^;_?`i51A06Oyi*2BF@q?_xakqaZ(sJN z34voA{TGsNiVN?mB&#)_N4|YY*YIAp*ZXenc-!HV@5hCR--c2*D2n#_q3Luk0zVCP zlIiwlFc)$}{8%liLi5{)GL4~$;3|jf4<@d*XWfgbdDbDk4+Q@Y4 zc~^%YhYs*jalCv!1|DCPH8J=f9C>0bR(myOksUiU+`!KOEm?GB#hepB6uKvY7w@X7 zbB-zf%xs3gb}u!B`R&()-7fUhDc@AuHJpCsYwl!UTc5_uz*yju*zp$r86UoFrBicW zFzjuXVkHy~aX84C#-w?;tv}M>@%+XR#(Bx|$&yej?|#qB?ZT&ht!x=Msri+V*90As zAQETG;-}yfuSI00KsRQW4i6s0!zVhZ3Z`N97noC1K3ZtmM89EvCN#e5s6V$a#2E?BQ zI|znd#c&IkDqR(T@QaZJlVKZR_T!A{&NK4W&g%eyIf@r2^+vU5L#Cpw1soN53ffw9 zW@o#9a!3*{CN4MZ!c1_=G)_p= z1sN6QHiT@LJuT)7z~%RjsP3+K74$F~+9oYbDs3_Z>6jzB36+=vm2UK5lMHAyZz_eiqRhfq&MpDgS0ezG9EaN_r&Nrta zNo|j{$2t!Ya#>-+VfQ}cb_f;6CXy7KEUZd5($5I+_!Ak6Bc1CXsMtSsI7kePnU?hf zm$H3LV6*H^HYZItCndD3_GR+Vj&1|pg=@H-`PCioyJsE`PKGH7ncP&A#(q%pRI+(~ z27WAx6I@PL$Su0U)m2~jEfL4+2-x{R6*%}_yfkoFt$Ow@lCPAdZ?A*)$DD@PW4hGB z=Va-%#scnn<@^2pP_*F>380y@2T0R|ml)+q%I|%mi>;6Dl}(q!M01~7cYa03d0yvp zhB?sCwgBc-Gh=pr8+&i8&cPJrzVMzn9HO{ zCAITm_!;NU%15aMLPES`R`(hq;?ck6=6nA<87GyO`COS&k~qxo$^HXo?QkG&LytZ= z>YHw;$%nE;lW@NnqS1*$!OrO~mMGZo8M*0JwUjJ5sqK_3^-0)b5?F55^4xFM-iH8# zxi%O!2(*8Oh2J9wi10;sIbp?5pM>KwLCyB{1k%d%$J|WxJmtbo)`n9ajWYa*w; z%bPsHzwP+8(;4QHtw-=~$Z8XE6$gIG6gL6k(|gham~7n1w~qMRefCXfC=Y&a>J{>K zh%`mifPS|jpioyuz>yE-tgGjw2iFsjo&@_AwWJ>1HaAQay+IZ9el%TWi#l?b1b^BQ zR`Ud8{-`FeLVK*hD#9>o?*97SNKWtb>8G#e`N0jX_to?}>>e*LE|<)nDE^ld?hf1H zJy^WZ@90d2k@Vi)Xf&)>WTJ=;2=@0bt=Ow@wNI|+B90%5X3+2|CU#mRSc}>4UzCjU zHtSNDQsldXqNGjUoZD(}x$sRfN6QpIxAVy^bk6g03k8Owj7hp24X6Lm(zo{Dn&L$;7s166y&DU(m8aVjdm^k&Vkw~LuT8IXpNSM&lXZZ5VR{S(I09q zB!IFL3a>-SA3g+&{|ya!gIsm(N|Axba4Aw%t3Pdg>)1Dp>LE; z`0AEzS}*f@(%o0=qV9o2u1hS3kz4*waOays!4%oDWmJ)o`+BImPeaVN+7Y&=Y9>tK zvrvQvc|ZaqX(UXQdih7)45^?j$vs91RRI_V{J^7Tl#UF1e-dDT`bR+VPX`|1_Jdo2 zA9Mh%uxq&&#;!~{S6dHb!P`k_v6sP=Pp^Z;We`RS*!_b8r}AuexcunjU&NgfOzIIq z#s}}s4hqrLX&W*3msV}QM{jXfBd-oZupmR%)2OpqReFgrOczVryJY*6u|8wr+gg9|^~NQ!ls zUh2O%hG<8;7ash~n9Ap#aN<^}f?64S;B#Y7w;z1QnzCmjrZ`{wi6FFEbMi^|G&Ue~ z%eZ)Zrg5aA6lu}Rvc~>s$eSxnp;E67p@)a%n*(}*>u*_X>@{I^+zd^^X?pW8A2w&^4>>6eAgp`hlhWrex( zi%Y#Md+EOSwwaGTm-p2w7Q&>YFcjV^X)Z*rP^XXfuk=IiSb84H9hy4r>`~O`BPNi7W4*0FFJontm>6p zM01Bk$$WGWc_}KRI&fxll;lTwl0dqJF+?!68i;i_I^9QMcSz!Y}ar zJEykf>GHw>qO4u!$Xz#69W$i&ZF)Naq|)|DeQryclFi$NC}T(;bRYYonleMoGyD5G zy)%6{St{)VfgfCM9Kz-_nLT_>AiCEx#Y-k&N@|wl#rrHy(I%~gfM%7)?>A*n4TAk} zIHBUUKG)FKy!g{D84m0_U_>75TT{2t>sQ4e1gFI}e*7UO7)v5i@Va{?;X=0Cbf5Jxt-xBNd95H}TR3eBuX@eL^AveLzHl z2XeFVas7Fqes*;+H?~Lg%-q%X)6mdPsChbCyEE{Rm|Jx%cn=-3NUsVbrV&m?vPDPu zlis->2GAh2-47YGF3U!nPt8bZdW>(1-zA|BAdx0AiY&Y;Zz^*VXW`4=e#EwjlV#Zakk3F`r(^wd>Q5hzF{sIK;>OM8z z&O6z*FOWFKux?FjM$UZVEmGkGKHb#YV4lt_z96jE{OW;G#y^Yb4~=J&kZ>FtWCLEu z%GNFo-l3}AlsdDgRNpo9n%CXj#(%7{w0m|oWS@(N{+UTh%>^m9{7OlVmAkzMsQ<& zLL!>1Unp<6L?-s5U~K|Bu~TX}n6?!L7~M!JO*M4}DkO`Jpvji=PI|L^OBVA;al_^X zUZP*Wu2sd20=#+PQYJB_vrX%lPCj3iDH}{DN6B>7JBHO5W0NmGOLU4>8-J~SscnjnF&4OC51DmFi@$p*Cr4hQAe0yKWAF-<_X~1r zACZ)R7hGuT*+W}8h<2xMl?aoIWVWm1JTT$RiwKt)ZZ&RE>evRlLl|Ti&al(4bF*uk zob`v#u%*XnNefELL6FRbmT97N9&tF_6mmG6gywumJ{kpekTz=iVcU zt8e3c8j{deVQFWxJWI|QM)eA$aq}DJ>T)satA?xR@cD6wBoRvNXGKml8O@X_%qVKN zrV4bO5;kyR9l!>nN<%d8RN>VXbYJSp z1d#Mck(R%OkgpsYc6dL14GldpWD)i;SOVTLm`@S;D4%z=Wz%y^J<(+OL~M}J{UV21 zyG0hOD7J<4KL|u(gewUA7$Yt5T~+;q%zcOhCY*3LX2B6~ryyE+BX37dyN!Dogwe0x z`gG3!xxIf}r_&P7#@IVmj9mb`4c9?Y1Ctw+V&zH@W<@YqlDr_F_Iq{YmSqV1+EXi0rMr-OFVN|fs{OVtzU)E#FtQxt8R{@;Z2_}6?35$HpT z8ig4?h(twMquf%sW|SNGUviE)9ALp%bUn2s#1a$zlCx#Chvj-DY(Rh{GRhk}5CQnrG6 z5Ul1FK?nb2CPF^nfvU_?kbV>^{co{#VvRsbmmK7z{PzTr2q}5^;Vp)tv)LP*{mAw> zhBPTsHF5KN7qX-S1tFginAAbi$T2ah#=cNvNYTG7!Fyy6UGbz!`^!YxnqHVixu9DbMyP7*fNiWm|Iq zLA>ADs;75j_T#5a()uR1535o!sCftY0?dWz)qx1OGLEZsHN#UDhB~P}&NJY#2E=AB zc3Q4a9+u=VcO>00AT33oHSaN#`JcMy5M}OF_&Y!K?9vpO`(Yh_s$M5Ce8Ihzj6uH# zrXxUBE9TiUY3jgmYP{#om_%Gcye0OL;;-@DkasO={iZLo_2lXS=;X`|RWgM&W9_m; zqx0E=elm27p1cn@HECNSJ>tH5^g6;@8t7`d^5;ZXPz3%QC*yfJ&n6fShqwUqZe1$z3GD7I}=K zuXf$c6E*7d2^D>a^fU2XT}0fb#XY=U9j?PHLtx2IsD)ax(P2EnccF-nwCU36K%{&e zcU4wepLcoJj9x#74FY%;BlOcCd~}Eg7NFLfUGKS$(!T_khNjNxK>4iY$dsw_?&} z#-8i5BhmU=0%?ofV8bsI@?#EFmtP9yLo`8c{MqORJ#m=XwHWs)cCOP4p^L6?7GTs~c~F^K z-n&n)XJ=)cWmo$P2$m$RHv(tM&96VBefQecED~@g-UhIS+ZrzouWC z4pHAZr8O_RTK4Ubg~i-s_1`1~4u%T8Zro%&=$R)+vn&6=70Z>beS#>~XG&ndmZ^z2 z(HtB>W4hCW&#RGL%u^i+t_P+<$Fw6zC$y(F^_dt4N#Ee=V|Hu^ppeCM&z(byhQv&d z@6{H_JJM)-p)ubx=3$;`ZVr_WnyG)v12K0{m##ShUcw3pPqlw|wswIQt%uH6?(GR* zOVGO5w{xi7WuMV_{p|;9d_9L^3_GvG@71>K$^19_Zk3-+>0aCVr-1br^>*zvmvdb0 zUZ$%CsY8+F}67)Z}#z&wJv?mmO7o%-@wpn~tb z--D|5;}(C!xvbE;%V=PK6HRu?y={aNriz?hgNa0u9+&KOju6c=rb_lO9-YeO2={Y; z&B~T!X9dk79%CThtgSAuB7R#}v?nkI&!knY~ zmT^QFHEEJ(cjyz%*|II})2ves0q|^qFkNlCkC*z)OIY&c>pjpL{>-0Q?c{dLwvB14 zQFg_=Cx^hfq@SeoL!CrED|XXd{;7zsTgJ!sUt~>bm&wX2t-DE!jLr&for^ArO_iGq z8LRmMWEH}`^+ddKEB9CAb*fuqK^HWLzl&sQZGz-9mYktqPN@gHS+&%P8CRPpBU$Br zjjJ@<$(^fkazMalX_F91mAlWoyWpDa?l%95GH*du-5b=z)Rxyb9^9p99uHTbVL9xd zRrdXkh38=s(QgtVntZP)^eVX}Zu?z_k0d9hIhS}p@dLGUwq#9z3+BEo(|GR}D1iUzfOq*U{ zJl`&RR4U~qJCbq=Uj$Pk^`2rwc&1Y(J{BXbu9G-@EQoJ1%+!xhdaFSGn`Z-7y~-w4 z;xv_WL%%AOy-5;@Oe{PWl|A3q<_GrPIg(JcFq4#i#fZMJrGX1&VxD=*&?RT9P&wpA zqfmsfeiNWKeK8781Xo0mQfj&hW?5dUNw3%l9Q*K>5jf)1P-s$@C`bce`Vm@E7t;ik zr@PNluW?4AytJ)Klv?uS_#Y}S8qD%O;?GLU@^yvoG;Oh*c5v1tMry1B=u?oJi zCj`qzbaX66aV#j9z%WOKONL3d^*crIq#Gq#73nBcEm<)Pv9YGpgoa9ne~6&q5~PMw z!i>S?lAX6sXHl&$IFeG9R)%*Xw^mj2YJ{gDNP`ul{LOjZs$|#w76SLSjQTu*``eNu z;DG%P<3aL)>Vl!Lnh;W;d;pLfpgJ>n1<-UB6c;2H2sRr^9FiNfj*2c0ip+-M1ApGU zhgAcOLP8TmbMo_~;G&Xaaq{#2nPvOW1REzmUz24H6uJo{FUYtST^%$A2`vT5--H1L zoy`NH2nEOL<%1@Ng5qKWQBYw}CtmQ_DkpH5a8SbnfhYZ+KEkiQe0IOs$M_CG3L%3z71xj6r-1aNWw zRSDuNhb3)VmW7=%`X^5f1a2k`P8}={yGf@Uc2)SFM%e?{1{jdS8MwcHYgZGxw(3Mf zm@l1OCY`X_k>K_FcC|8%zzBAh&l1R9i@`2c18}#}vPlj7w_RN&GDx!U)Q~O<%%p7< zhgqkGLx*$q-+m#`RHF9M8pq($Zq4EoBgj1SBNIG(#hCWbAlXu2IoV(0IaQJ4xfv&8 zNaCw&p^NY`zz=;crq1-}H35zTh7)iwa`Y&_Qtr{RHkgpm!`lxVSx|9(G}N&Tafke@ zizz@)Z=E&GKDJSfea})_!7WO+)o%>HFCfNF7hPBB)QezyB#WP6VoV~Lwd=-U{N)P= zX+2C#M#nA|vhgBJpUM}f{${sGyr8^ibc4>{cBEMomYVe6Iy^~!eDnvhOaUrX`@4)D z7@7m^(Zgf*VXUFYg6Ziqc&IajBm5$Us_5_+)Oz}Mge(TxU_;*VaEdZ^p9P{ss76-e zw#!6(`YOv8g7Y!8kHDQidIy=wbm?8_22V3FU7#O5v8@qRaMs>OXX;W?iepa{gm2l~ zJQCH3p5lxi`Id1DxrP<6OrovO%Rk%C~L-fY_{$tmtPKmnX83!lZL zkGb^f>MSe z6Oy-)I*aHHwLmq;dnfHgLUzYd>&8VROUJ$`H#U#lYEW8dxY6xXQLhgQZ9a=y_RRO? zY7ZAK3J3Won)hg`&ndvytHUn0nu!8KbTVA!LyKP4AaoNBAg-*xCb_GAUcpawtyL0~ z8kYK-IO*B}bMA6LM~zO2m5erbcKFw<$Ms_EuI1HE_u*K+?~HA-Nx;sxfB|ypFZlX5 zPjqM__~z!4d+|sdy~R->6gyayG_q3GS}9ebyOiYdZiJo*=iUSHJ9O&fzoe3U@UZZw zzWCq;aPJ&70ylcB76mKy?%RYGymZ^+29aI@hV23BWZF2@W%cvphEuHFE z!SX`$q(9SoJHNo9-`mT2hE4rg_%iX-F008H>jFsuJ~YJP>_qQ}o2$kNtVK*1($_q>|28gqe5lY>2VvG%l;W%Bbxcb~y zWn*8|+K)DFHJRUW=j3CSm|2B&?P;YnVCL3-8nnbEAA$`Kt4En@w~^|MmH zu9#j~!-{!0tU1;fNz1!W3dSltTXKkc#w;+7>g^d3qG51FM&TWm&V3`x0TZ=H01(OT z5F5c(gNkCQCuiDT_OwL~3Nt@Wd@iup2p1>R4T=IH;H!8aeXO7jM*o`00 z>L+5ChD_9{;eb$jl;?s0mkl$u-?z|G*3;b8!OTrg9C76BL6<_e$8*GA?l1UYMn1_n z9G*i&o)6b_NqFyvmrCEK(rCCMQUXaoFB6Bf#qBGpF5aEr`TNy(<-W8Vm#i4AO{-UJ z3vHs12)qeFEW@f}8Px_=^)$D<8b!{Q7m1Q~^xfomU!yr*R5Bia{@MHHxAwm6g`Hvt zWBJo>(%~KC#y7LjUx2sNYGB#Y+gsZ!dNm$0szz?3+|=oKj>33q5p)y|TRM>U<$WNu z<43|=GyUKRhnN$#j|9^Z)@aevLB$C>RqsghT?13ZKBv;0BA19%%VLzkdhMfK$KO5T zjuPxon{;cztxQ$HO*O$dB53`#DDlD78uI#%r)}!Pv(&b+VxM$8CO0F zg7`c0dm89_BnGRZd_}bDWc!;k!zoKS{lM=2k5E{y3BLx5T-IRHu$fb~_ad66VuEsF z^eF8h;W9ONWX;JG+tNC1XaTB)cE~@e+O2_e{+AhKzu${{!;4hBnC!0rm#~?}TMWTdYL5t7*NjmWzDn&y+KT>#?N9hFF`T zr7)?AAgCrUQz|8XH-75_W=CYsK$JYdW_|s-&hC-}`<6>#imw}xX}gj`9m>v&Kq4N1 z?o}2)|BK#wTwJ}st*&BQ?K%7FW^K%Kx;DimGc)eq1oH&5i?Q9pRKf@~5y;V4og;3M&qFnqYG*4#GKu<$>bj0`+(!Q-h2~ z5Kur}IH;5$Z3#HAPv-tFpUnNgd@?s@Q|JS%zZ_`k9uX5%TMIVX;0wSu`Hy?WYWgMt z_weoy5Bx!ZJ4ZMvu-_MUf)fL~WuOzB7x)Br|LPz`XE;(w-hWP6L{fQ6Y;${C6A9Qa9AZxM`06;M&23q{B2P+8NP#Ti63C0}2gAc}t zO*SO#Ch$umUGU&N0)G|ih604Z(m|o%fZYF(gD4D~!+$|eNf>|>^1sYK-#_!uR0kk! zLJ9{Y(*L*l2R9=AFMWJ}833zEp$;%f@D&5QiFpj*1OMNoaXkm%1!uto9y_pL@DO@~ zPk+lPya0~F`Bx4%+uscfATefmlBV1R0H!uLzrS@9S^)f49l6gvHJNe`6arJ6}_* z1w2mmKWPSk+G6~Z#?8*(B!Yv0V+k&&hA+Y`ET}gd>L0hId_iCZOC0=yAP%}bMCAfG zz9FE46oU|W!QK32#kdg!VrXs-zJCHa`2UXA=m-L7lRz*6l+=HQ*9}~qzjxu`2!aMD zXyeatslFgELH?_t3TWaL;T`z%!|VSMO6I?!BqJb_LH-Sa#m)IQ#D8#m)Mk3iJh^basT`*98GKxg@pbm5%6#0 zr~`3@_K!B4rsW;P5%9g=RCJ2y3;;n%z+r<7&tUOTx&Ctj2Rql_7Yu+MAHn3vkNdLL zCBBa9j@0OSlP#~L89-rd^DR-Xbm`;+L%FGUF7IOTuhZZx!>;{NIJ=8?>~^~pjjlAS zLoH|{Kcw@5-EWr^YAzUs0;#GhjW8e4kTSE2Q^jhPO6t=~n@8C-}CSItBm1o)L;d31+_iusy!ej7-F zIHomHFL8c9e}LX&(NE%3D2o&8Br;D!TwhFOXWiWh*My3kn^;R`1-}==MkZx|f}pep z*AQyXZf7kr%Ju~a#lvG~O1xc*UOX^pHw-b)mv}QlME3)`25OCx&nY!@lsw41(PWK1 zOAFsQ6^;-Q&@GSx^L8mp44KKl{}6R(v=M{D0|kM0a$kY>B3Ce*MH8X`Wf^(F;iC|3hk;q%shyJ)>y@j3Y1(966DT^EZumcMMq4DVf~qhG=E zc+mBVm=4{W;x)Y_=kT zATKFkx|u+{#ZxY$8>iZs*&bY7G77H381%@(JM=tbN-hw6RQzM3ee2^%yM5>UDV&j1 zt1jY?!z_%zO{N70hN zSDB+^jK-{6Wp7737j{A*p)qqbRp45fKi0w{GMhrdCRC^b$E=#Fz7n!d{)e!{8X7A2 zE!7!+)03Rf^|09?`I8w{Lhp)XvXgr~e0~JmvW(DGrG0nEE4cyVtpN(}2z+VMjT&9X zxNu_PrUhnc0Pg`EgI$A6@|W^;m|QsE0LnC+7&=+vJVoU-$5XID3WQ4lCIUmxeif}8 z8!L-aIOOBoKuD|;iTOQAlmuzC8stZH$&o~HN-s(H(;oWouMv(r- z*i`4fZ)ZZ^P_C?sY&gi~5xi3jgji@-h4osIabWI?0~{xe5u@}>;GB&|yXIWmn560o z4i@?xRrZ{d=`EPXj#ITIuFak`%wA0LcZ^@mwd^z2Lx~Dm_pwqnxl{fcpV>!91jXJD zz~6nT4NX-*+NKsgtSq3qf;YMb&eLxK_}g&gqy2(0CG_(9s}ay>nb6R@&RULOk{%It zR2f#6MpAD!jZ>tFuxkY@B&`ecZ{R)|@%Y29vXm|lS=8&L#u#G#-V&VnU2j4<5=#92 z!Ryk0AAJ07Hj~Scc0gTHGU5~Mf=A+lmeyxJDvV>BVoW~kA#RmiAYpf8cp8p_jxQT|q+_q=V!F@pA-$JZRVj!iGlX7t^Ra*(y7Ol`5X%xaJM zLVn7-QN!}XFxpQ^Z#I){3M|nhyN{-Oae=E!-#bR@SAdF*&v8Q}3_E;myy?G(m?k9Q z8UwU;_nni0A{%RVK7ukWz}%b$ik-WyHlR9z$!LAz*TZT8L%|yND3Sw(=SKtI_uK=h zwEjfe_IDr%Y|a%2foc7Qg_~W_9%~>am;4Hd&cJq~F(q1+@i}jP{leoeFyvf`n|)QZ z!oQ=xR(oN9o+$kAmNQ_0^vuj8Zhdm25fK+DdS|=3)yA9kVN;VHhz%?tg%;!+m=t+f zq~uddGteXRTqGrdwD<|-g)VC9T2lPw-SFFhWTrs!GZS+LIT z!-FeutM*Kvt@jvU1LD!hD6-bc^Bw@xk;=vQuEV{Aubb9w$atiNdS4!CsVCrxui;3& zS+6pU#&!&u7vCVLnQThIjDd&^$=5`1gV+fT&CSdG&nllmB5{BXCIu7{8`!3Sx7Nx* zbMtXGWkVs!!Q%e$k^kH4fX%SVEec%|H9XQIBosdzh#V0K8$|jEiMR>8i7cM>-+XdX7UKkgi>DUlzk5a}No$V(wbAcF1Yyb6*t9602ETv>t^5;K^Ay0wtl!DbMg zi2#U68wnl!3O-0g8;Jls!LOr@R11s8!S?^piid+E47`u6iR=^d9t`dutNp*y=HcM^ zlQw;mgbA`9B=-M97*FCw8p+>%a7{l=k-uPqi-Nv~h27-fj;sa)28;jXiQ|7TNP6XZRLA_gRHlQIHoINZMy9-^W8z<}NVpOiowKB!EfMr_nSc(;j- zDgZ7a80k1cDmbX3|8d5D8B!GLFI!Q<{v)d=cU00QDO^-~qyHhRZg46=Ll4Tit5B^hp=$Vt z7WVn*x5Q6UXxQ9&X|jcpg+FH2&-w9Z+au>Ek_$(#jo46fXZ#*>A%}>sXs z`Jyb*dAx-ZWf?cpLbPZRa<~zHp6-cAi2B84~;o z!_F7ZU#gzV&JeF$+gejJ6;yw}B0D6xKYrrxfZF z0m-5v<{*6>YiS;?*vE0DdR6SfHu?|NY<=>-6}nHpxX>Fl=gxdWhJzh;8itUnoW+Hu zs&qeC)WL3-?m;?cGB;}6m_hW*Lod($2*e^U_<%KI`{Cna|K4=JMLPTuA8b#qFk&|B zyp^JoZOj)_6eK74S}nfB8P4&;%mF(i&Y>k3KpF%cjOB*_x}eX!=I-H_LeY^>#Bc@q zIo(jY1ouO^^+v|lM9kiywI#a;pQdIG9lc4_zo1!*%hY)5^v$WBgw6eclfH<>6$5^r zQZB3C?jF?8RWEsOY<0-)SoP6pZWh7_{^Aq7E8c4S|3}q1MpxEs;X1Z$+qT(Br(@f; zz2l@~TOHfB&5mu`PHw*MoOAEEzxJrHYwtPdT0hn^-+EUSm#SEC+LyTZl#oPNGWb2J z`bZnhG1}swmOK?$L%?00LQsLYzw{ptoB)WBFa!>XClXH{@Yu*nKLYSoBu~i>72y8d zo^(3H0C7+_WYmY?Hs;yZYZ4e`yqvnc5G(-goHJB)Dy!MH*xv&sBq5iQu8$_mtj&%2 zyoYMn<|@r<$Pb4N!WjLXpjf_AP09yzd*1W;d=#$2)0VFDMm_jXBr_QFAd88^4iQYz z2Jw;siOWfQdoQJchK|dpH_&@;)jV|e-HzAG_PpLRgAD@25X0iROL$0;pOpp3-RA&r zoEW<Miuj{GStzoLy^PT8#*&3dNUtO>agV zbV@RVs!U@i+oIi}66~iq?bd&H9%cc+R?m~x3gCHHR}y=#uO(k+LN&t)ZELtup>Bp| zUyk+){SsFpDG#xymof_*2l||xY7gu>g(Whx{z_Pnw#VSNHV(^jsbPJLex4+~V(+A@ z^!i#%aD5Ekz=qdhJfN9zWFv@?HYEKZIlu8Fl7&*W78yU5x8B>IYVR+Qx2*wcdD#=+ z%R;-@4VJ4iEmZ!b&*L+3SM&XztV;N2P@e>c>QQ2YWIaAJ53d2avlxof&~5sdozvjuzRIV`xIx|6;zPvNQz zBFU5;Jb%1w3>tr`NP`3u9vMy4+`GT$a@_!K9&i5Z%;hwJvl@e5DbEXGRPg?_8?+ac zq~8PDiF0osem z((~F_GoW`_MV~Rq8}jG6Bah)iuFUzm(-Rf|i+ycYQ#*PZ^P_P|{sGxEX3(4L5P{`K z$?8{R6T3+dog#E7g8=GCT+C zK>|ERGW<~Hy9IIo!vVOcL_3|6q3t<2C%ppC;b1RttFKRwjEG4ZZ7aEld@3E3wtEC5h^9Zd6eacdNb8@Cj@-#~~-3!TSMn~N!Y;h~; z-KxdqC|}YohZAOI1|NzCay0Y^ z>FDoVHk-wxn7zkA75WQ4QUN*WKx1}ZTJ0$^Lt{2o$BaurW3s?ul$5nDg{e&wLu~}h z`i?u(EcQwK28nf?@10*HtCB@I1kPwQ%&SJkQ~En+%CA+Y<*hdK$L2$+ zb33)=Ew+U1&HJmK&#fHacl*~%i}R}qnm1nFLcd6x5Ffs`YK7yo+HR-v^RM6yN=hta z+bW0yG$1j6v@2sVl=P%JAs6wUoLZE}p`9^7@2eHvb&9DEW>-xY@Y&isWo?%$07ID8lN^En62L!4BOtnujM!VP#ZO{*%{2u9}bDjIH z}f*h|5p9X#Na(ZMlLcqS-HrHw{yR_?;u5~K<5}#fpNFg4_&y6-_FKaHhAeM z;2gqfnzMUioV+A!JcWOSykNFO>|&Po3btuEpWlFs`%YJCTe)-7L9YIuU zv|JCe>nfMVpFh|Qd@i;6@N#Fil7H_KXS%Bb_*>PAKB<2)t)k8)3}D$iCZe~a9Ji?F z)JO+vFta9IAHu312SP;T-%7(|gIEmf&_0~AL(a}k@dD3pf^v%S8|3l0b3E3mm$~tM z_83>5pf!)aQ83pPui6M%?*MLnp(Wwm$D+Yq2x86LB_RwYdNHKZTky#s%8ddJ|_cX}Y}zI`x- zb7)ibq<8KJS&AAnneRA}6pPy*mi=TSY-rVJP#Ud7@g^vS4RxLZERBek0K$&iye*8# z4)qPS7}AK8;NMM&fE?lu*f$;iOM+I)h~EyAYur1j(;Ov)*#_GBO)Ow z-`|rU z)BlgU;ZtH%5E)YZNRd&#tNu3>=RZw?VoHVwGC}h)DKfjtcc$N=bpM%z^dGY2{BGdB ztHWsS{GRk(N%ML&GBEN#{n)=r-1Z=Y1OM-WiuNIM{;$@AzV9slt@T$5Y(FynKZ3t< z3PTDiY|3UF3Nk1s_kYXf{!h6G@hC*ixBbXblm97K_n&FJ-!3Jw{eOJm2!fJ%KX28tVpQ;4JeyZfrLu;|6O736jUToE++PWmk_v^{u9zX1r@(J z8W~k4_n${43vYL>;JMmT*}KCDm(})>%S1+sIFzF z%!%YH*xeU%?H6NaJ-tjN0+J_Rkf%5TN**rHP<+y4fN8@K{Q2hV1Z8ZuQct#HaKL>w zz1O;CRJt3GP{t5Ps;V}iz{X-UAje{wzZaVovfZK@d2aYCwVGjYn@T)|jV+)R&ssM# zD6CfBrniF!Jeh@C1-G8oxaAZeJ@lg&eedVKWka0K!YY-xWUpV)WB@TSICzb+q9m9u z&dPu+Q9LvWQLgZ5GZ=-*2rvc_kSS`@p#(P0A=))!@{u9fBMJwIw^(G4Zc!ZzmL(#D z=tZx5*}c9!0|W=_JQ5E3nhGeYs!9S<$N>=&XdV*>XdJ#|SgwY!5a=MFn}`Wq$x%ig zQZO1^LJp{ZEQ$j7&o%gZ$khUMPpHwD*jtwbjRvWs!FmhYrJY}FrKa5OW8U(J%ya5Ty+XA>{nMTZ_ zY+1v~HBClX%!PuLf`lRg8%8mJ=@+;dxagpuH4Ub|dLgyFNAye`QIJ!ey7;__f44M{ zsDC$15U7F>6Vw`rM?#_c2$1zoZZf>-9?01dh}HQy+eH;GQh_YM-cI}NGUh4SY!j?W z9!oDfhmb=qy8_&iAsaZJN}z`rx0gw_Y7`PbXfU+{d>jeE_4cqGe0|fH&xx0}YNI~L zkNpkZOO+${eF5?>^kMg_P)}doBQVCr*~$LC4W|=il}~5;(dx(L_=L|<*Vk4t0;;5$ z&YZxo?1sCmKa3Edsl#H+88c!0M9OVv|4jGSTNy7tK7WR{17uUM`m&0^0EeVf#o*uN zy{e>!^Db4E3YR{Tp}tUWF?;x(5;4LD3NQLp^I7*N8%CX`6!h7()t^lf>)=F@{xIjz zV{khtYSUH$Uf7|xN31MPP?CkOv3pFiv2+&dh|;^PH%!rhh-#h+M&eYIvSFmEct+}P zXZ#&;J(i4H3?U8eji_VB^9teQ6z`Kh$14|3j!&wqWHDkb;?RmY%O-!if$bABWTFN1 zpsb@QknS&8yUakI;uOk_d4Bg7WW{bC9^9<=y#Y)@!j-7t-Ta;y`DQ@q0ASKIhoJf5 zXgcR(WQGvn)sQ1IO^_aRVf%D-T;O%LtI^N3D=JF0cGE8SBNTR!4`PX;noCnrU)jG6 z+uB5ZV6D;+DYQpUq@OF%rJWmomneqrkSV))f=L*~gBE+vSO(@JsQ^Todc_%W3F zE;CO6CW?qgrVn=)5=~H}y&c7-4nPyYDSlo)4yukrs_MvhaWp7e4M)2GWpbrTt-)eT zmtgw!N>6eRkp8%0?78~O3pcp`G3C+Z?cMJcv7W};1&Q>JDy1__$;IMk;W4dc3D^TQ z#dh{1g3sA1X2QpB(L}yyCudjgiV^mk-q~Zv_ zv_B|se$sw9uC8*JLaAN5VQiG)@yGADH>X(@_gp&}2mGNE$=;z3)v$>1Jy<&Ng4ffz z4zlEVlKv-*mD?(T7}k0;rU<5#s&*ts=BSz6?QX*EUc;CSSa_Tl?JH$-X>Dq@U|TJK zc~CXX&v%|O-6)sRnRRLjEDu_oEcL-7^B55*1=j#mNk_cscrO{;sU}KG2pp=v#&)vV zG8pTa<%x}T6VcJryn2^%VFRTx%Oy;3Pcc7^54FW0qg4%zPB-(>%yE0Bb#WRIT_omA z5o1jMOp44ORM2-E44M&yNmO5vJ5`(k7%}ejy+&#l#mw6=v(D(OpGLB8og4eLf9$Ot z8o`&ps5gxdSA#I%A5w1fWn}`ma<=6+oGUQBPTP0Xzc`)}q95R3rBNNMCYPql`h&d) zL{*S%9$lxovhGZ4I;q0s#y@tNmUz9kJCy>JR0(gK*Caa{b+cV_rX(pP38Qc1xpB6Z z_l(bsT1d{+KKKNm65jD<_kZ*gC*Drdn|vVzJS_UEKd&qQ^!{ z#{gz&4q`$RhWG}wAr7=+@bBlXEg#zazv?4ev#KcCAK>p)3}(^Ln&HIJR9QgSnf@7} zH+#6DP2he*%)ei0CZLTFedqS?fU^OO8vk4J`yMRe{_n@XF3>)If_%G2{+WXOEz$l@ zjAJ2UX6N8Y(Y-*!0OMe1=15^4hol5lHk-(2Z7h<9x3|~(Z(m}pZ)^lu({bSj{IqwY zY-w-zvTxS!-OypY;@3@?{zUSV5LJmt&d%QHCi_YSl3D*MKAf9d8S6t3dU)A`X{dFp0blhO z5PjF1F;3!|n!8=;a0HZMS92T~N`%}uC<7g`w{7#c$(vNM5caDw;? zGI5aw#PKBnBy({wQSnJVnRWtTO%7x2!P-6tVrzVL25n0N!T(fX2Ey}`ZBm_@%J~AK zHS-HjsKr07ha~dyOUf#ZidYc@5;!<~`~unEHvY0Ocq@H_E3&?VbL4QTa|8kwsHche z`H4$8@)zq~&ep74j=g8|eeUnX=KMiU{Ab}C++8U+w$=(asE`onj9@E3#t(><)(jHY z=xKUArx!1?;uE}oaAj<2w;PEGDANyPNY<1?$n0pEDW~@9WD2kV{k&Di>1to&@Rid1 z(OvP02|*jnIy00B?VohPT1Pn%(!4$~xC1!V_Lu##M4A+2 z6@7#5Tb|gQ8p79yV3P#st2RLT6oJjWZ`DrRZ%N()KnK6*!M>Vj-o9eizxIy-?E_zc zt2;nQvU6>%0$bAuo*&=}tLG@5xe3(!65Ee&J4bxa@a@Zyxv8emao37B)%d5;^WJp^>bYQ#R*F2 z^b#Rw`BRb_=F#-)>{<>>LBWgDkCK!Y6VWd&EAZj&(g$Ss!0_f%u;5*dXz`1O7Ar8b zVjajc$ECjJvmEgHb@Q<_x-HoEV>xX#2HF90xK#2_o11NL=x3sC(K zoc>DpAewuuCpJu=fZ5Bd)JC%By?D&E{& z&#^Zn_Yq!dayMamN9Q58bsdWtTQ+#2*AKbtASR;tqY_`I)ubQQ(a#)?+ zr^OQfD%y|NqOmP3si`@x!pBOXx8;*q=(!fnZ<_59OqNZLi&PFE@yhU<27=D)&BA&3 zmIOd7q-`2gvCAYeY;_ZgnmY^{8mE6uwFJjHxwag!)*YPy{<#!R1K=WOKcXXl2s6$u z#ndW`M!3)G`D5G|7MJLBE%{O0-W?$%K{=bN$Q4$z?BMB|FFXnz&Bgle{KcyT*=-+z znNrPkU?Un_m;-BCEU4{fn)-^38uvI+00xl7>%6Wgt0_)mYu~}{*zvS3o4g;6^l$LG z6Z!=NsCZcKEJ))52B0am7Ddi-erQNW74W7Wy>0pl%J6yAGQYWO}RieUfgb%L|274V@SyZAaMuY%W=)xr=j37Ol0zT*<D=%^$Nb84PNU$pQ#;*otOOg0Nn34cT!f=)toosS^n*(h1ik40=6= z6$bFvjQgh8&gdXZV!08MQ_zZywKqmxEZ8b0=vT(Uc%xxp{JLL;>r8&Atd-Y?obhu? zq%-TbY3lm6qe&x}6&cACxzqZ7%N&I6UB_El2g+xJF1v2CI-4meEhGJUK7d$OQfcwY zRZCJUG>M(nB*^U__l^;@3_bZg*J=(mSAoOp&EWUzm2+I~023VfQm#X&84mrINeeBV zhjr9L3he`I^NRCp-_EkGksgVs+AbPzuKTRbb8S)v5&=rI z#6&np&&0-?$3@G$Y8T;{ctGSNEajsuK4%Yp`+G(O;baCc_ZGF>Qyg8ONmw(s2SZ9B z>kD{p-%UfiGnDSmZ}PYU+}8NsZbR*WC?12<=qk*5=iwu3k;J5zVz+aXvaEDLq7)s6 zUrFIse_jTs>R0@&?*kNXPbgAx`6L5QDn&FdFCuxeeJW#)&&w(todJ3ujAaCUriewk z`9zPyTG}4Fi(_n)h^I`9O@uKsy>fWHLf6TAeSES{sCqd&eCAB$;MO7KHj;m2YYFmidSsYaS<{BF3JvoLM8rATbJ3PHX^yb}1jz1?<^-v=EOSD0h0h zppd(uq;%Ij+a$SZgaXtF#K*woW?_jKv+<-)Z!cc;X{kZqf`J(J z7M+qr;^LIMmKQca|Xg)rN2|^^8}pzcnV{8;T@8MxT;>Y zZ2c<&2_MEQ`a(Su)tD{4V7$GZyzbV&XmbF`eqZ(Z-ts4eQO&7)h92oBi+R4Q!mjC1 z*&@4cILD%2kF=HTmfcIO>2%KE?`js4iyVAGvr z&~qp;J69+$RuBO5DVa<6Qf=H*3{}$!DbuhexQ4*j@ibr0seE)sRUc3l3nP4@asL6{kw;gJ~!IxtE~B z$nkXTEjG=l5>V9SLbBR}NsFy7ySCw5KQDZ*G_Hcjyl^gbo4oOG!w~mXb+&sd6~^`B ztAduvl=6@|j6%;C>Ia7OA4$PM!>Log?T&~U0E`srBjNROBKwLe8j0o`C(X;f<`^_*e9(<@?df4CPSk^Rw-K0E)>VIz{I96 zNeR$FnC@F%&zGSkIDAlqAB<;g4Hu>a$y|;LKe2juCv+gmM%0N3D(d>JY#%79KO~7k zO}UVSRxxtmYfVP%>P92U6}G2F&_-4n!(Zu+l9}yw$mn#cxAI{XH2!ygYR2oU+67bto1NH6F)_v1g?hl|ji4TzjuV5}c#x#eV-a#WS9o#tS2zFB) zevvnA&7qNcQRf8>%=gbOdf7Bt@MoAo)<(;XwGFhsnj!{XI3}H!1}3G;er5XWZ>t)7 zyuewWSNb7WveHhc+dOgf z=qb^#pC0MUjjnB*B=Ma~sEtXaT^s=N%#2_cY-=qxPNd{q>rAixX1eD(3H1fusuO#$ zCP*w?)t}B-91ER9)4x=>GgT!a*H$`EqOj?)HqMiSc~$w4R_U)stRw=#5fbNT7pC%X zc@FO9M(>ubQ-^(_kJp5ykcj4_U$C>SGdXJv7^_S@yG9hZ&SM0tc3kHD?C}BVaKm*RAeyS$GE`0&3h z&hkR_8V>)SH61Xl1gi4la}@v>ecOivOct_whA!I!U$-1vZiF3nJ&htI-YVuYN}?vw zW$;!s(s6$iV8?q1!DS(Wzlxo&zEVU*lh?{oLAsfwco2X2-}m^V59djCiO0`hSa zUcDZ-2Qx})MBa%Stq4keG|WU<1W7`@EORw{kkBBLiNZNHAP)09s*eD=0+lS|6*gAE zcuMNWI2Ke-o+zB~4$4B2?R^HDn}`?W(}%^~8Kly-vg|PM>xtG$YVQah71e!Z*)r#G zkl87@=dzGUUL0ML|Lm=fLmj4CbY2f1qf4=pAXg=7qM~fp&;1~nJ$1R)0ZFPYZ?&YV zS~G;sFrvPeeVYyuM3(^kjj!Oy!<`rlYZ!F5h*hcvvnD%t^YxeCXCzK8kfxhNQm*To)siW1^I)5z zx_&C}C5aIk)LoSUNatNbM`LQ};Z*d7tnFJ`h2A#o>pc4x zY+=h5b$s!q=2* z{Heo7os&|}j?L0evvfQFh}MqcQ*#;;+mMIH41v|_@~1;jHXZOjD>@TZP7-II8~V<9 zx%Tm_>ZSGr{tj}qh-UpccC3%7`{g;M_e*su*7*+dMXY_?Uro{tWec;ltAG-VcX5 z>rm$9GT*|NyUZW#EkO&J45UAhA~{1EgwupwBU_tVm)^{+TKR%A(l z{FC>$l=g#*&Yun{4Ke6}x&tpi4pSe^+rr}$00=rX77hqizpJPyJn-~HbCOHSe`vObfI|s58*9ce7-W9Z(r5YKv%dIJmVh#R&E$;+I z|ICxE%q@@AhD zg}A6CCFdJcO6%B`SKy=z*Yq#*-L$Z6c)%r(CiFwhn*Z}%7sy(vzNnHeG;64G1Lgzc ziD=4L_hYNBjtDiwHC{;!-mr04%AS*1)DE0p@_P&;L;9GpWs5Bg=Gh~kuiW0Nz_3ZT zkR^EbW=xvfnY%4iQrw-xjEvW!sG+$Sq8iK+*K*{|4nF;t2g_{ik0Ns{HgE2nd4M0S zN7VRO)m6?$cU*`=H(z#iZ_*D~iuAFXCh`PK)IU^B*gI2eU;OCOJ}|*=phkz!HC5)g zQAfwh7X%!`M5htQ5N*$&@?4{$cN1-;XLsGgoNxKiR~oNRZ&6ac%% z!q?V1t#MEV!Sbx(8rl-_ec(O$_5d5@`tCNM0=|dzsnqIe^aT9f;lR>X>wGW1jhIlU zA%>~GVG;39ozleAo20qsyp_2{t)uAC+KjxPttSN0#{v*p5!C*a*yHOieCzEXh!1HG zjF&4@Qg+4S_q~gu4_k@FL3yIt(Ui0J7|7EhbD@Ik6?3J^RC9Kj&50>7DFBNJIdhBt za4@JS{D@cNhBA^rd(RV*yTEU2dgJxMvWo-1f7@BvyqQPok0H`b#rM|vuJ-01+pu}$ zp7J`=l|0>8kV!TpkEf0B81ZAnRLFcVt&y*17XQ?W( z6q(}zL*$5QJlmJ|(EAO%;sUS}p`4Hc*re*iO$e0TC6 zuWOEkM9S(zw0f;I(g#IPS5*d!V|IOZ*uK)OFv&HT$JYfT5rLcM1psP`ToQxTM+yzq z+-|Gi0RDD>6m?aT8i!AbMdqqd*8%mIM=*hxJ8YB%c5$yQJ$HFAyl+WW$*{5Id9buA zC6w^&dLks9wG7mfE)J-SeOyDti6Sid)WGI@Our_1Xb8j{VbWp?lD(;V5u#KOE$&7- zP}dq`b^F|UAlIReB_N4Q*A+kGXz^Nv3N~%wAci2fu`kfhFXL7c4yCrtc2pWQz4gKz zqLJM#L!d2+&I5m8^NiS{MDxwMxn|% zhMx!$5_;QNpw15)?Ia0bC+hwzu}F-0e+Ii&i-39vuV{0x-CyB;GEc3A98=hmcP2m9 z@4|(Wf8CM*;joWaJ1$u|%u(t=bK|xvg zO8k;R*0`b)CV;_PoD7QgQj_ZVGDT)&{2>N!!lz2_ zo=+$9ejb++?Icu8%Bf%dg#f-ZyQRGc{R6saV>CFkE4Q`LbUQH6!{Vrpj z{{ftR%2ZD^^q!7xRD9+0jy?UW!O2eCICa>bfS?e#+s<>*MBmi-be>@d_Mf;}ZNNkA z!W6X6<>+1HLXmbw+&-u{%UIs?2aWNf1e2hDC539hr>Ev5N0$V;-OQgA^IOQyL`IAB z&Qh5_?0~#<-GaH>Yqv>aDJWz+tG>tSn@%MepYwg+@?pQc%E%@rJZ#W#JO2c8k#u&T z=wI<~6=7<>2*0JdzIz1(Z$XIrf*|zi+~4B{zY3rU^i=;Mw)9I3E|yYE!3;}^Pu!<{ zY+pkN6fL~%YNmAp^bqjt2b#eK)&`6kj=^lvO#m^&XSniXaj@jcv>^}Fg}xgY|Kh-P+5YDwpTwH4<1;BUKGCk z_Omh4=W&yy$ zOmRF17;XHmQYu4g-ViieS_nS%T!m%FFPwXR9SExDRQ?*aiIGCmyU^XHwUQ|+RXZcZ*q4H>}SKnnq zTZ#gFnNhYy$Um&euT71(#s>bxm&&IdK4D4$+49v!7nlDd1EOfLJ8rV$C;i2&HWOt( zmB9DmKAuZRf^*?1&`oRsg;RCi;PJ8;tCUy_9cwWyo!;GK5S%oJS%`xEwax%srKmy) zx1K`cwiyrI!N2L@0y7eI@+9n4rbnG$i^ER)pGFP=@jxqmK6*kiTJs4SkXn3rE4yn{ zZPvxnGD)momMhZkNTSY*!pJY3rDqW>>5_}TxyY{UeDoFPP7?UjlWMj^8o$yntTGXm zz!3J^^*W*k)=R1oRFzr@NL9?%tamcLoWBCS$=PZ2D}Yt`0am_ zwZNh{X%lVcd!c=$1u@7cyLmjjnZRfI@x%6I${T*r8@~@y2BIodzj}*b96kMBD^OuH z^5=UO{fXAHEb~*T2H2p>RC7(g;KmHUo%)aA#gA#rwZfb>j;wUVMZ`J4?4Tz3J$-;7 z^WZU$GCP<&n7C^xBK1#jO`2}eFb=1bNz}##0A7D*O1r+MDlM`ZLg3qLOGG6G8~=U~>d@>j0Ev;X8o#J&yBj}?gLi{MIBqd97CLN2%5REEpTwxnwf>KW(E z1Xwc%05F5_+fR7_UMBtiKCC?l=&qVrsp+~lpy6G;xIZ&Up8WSMnydbYPUx-M6GW3_ zdoXkP>DyN9MrEFw09nRL$`KEFf*auqHSv>COrE8!W(%U=A!-+K2;(pHq7Kc@y&r#E zu~5$yJiV(vFS#eeDf?35i;{7r>i(+o-@>EV|CyheH>mIcFgXBc6!n`GVMZ{OO6#yi zi|?Fy4A!+?o54_2f?2TW%^7t8u;nJ6{={&>%jW+O1>IXch%9Ox!c zHZlMu`1-2}0DQ2|uftR^Dgb(wvI~wm2v@gh@XH@VoeLkkXiu@=1n%8BimcwWLzg7j z)5k5e<}%fW+TCnu(b=b;!KI2zMbWd$Zgzbk9TMCwn2W+;I9UgDFs%jhgNj&Sjj zK0Y3U)F&svDf+6&;$VGv$YgalQ8gamH?5L~*vetscgnHrW6MUU(nShjAKJstgNd*( zEWzFatni${%aTmX(yON~&Fl@mtrFF6vRkS5M?0|fq3b@clM}KG!q8rM_W2rff)AWl z8nAp|EHy2jnv~Ks_|WKO6`p?if~Y%4icIRz`d8;eL%V?LAGaw{Syfg4S+@O9*5AHp^s@yxBB3gTa4nh<$ zSt2}}in2n~6Wm+n@?nz&f2nmaEVgxkQZ>3>3G;pCLC^3DP%T$iK43v8=V`cb#eBVB$V~2BA{=Pq#4tFzQQbzqu+BK6+7_f~2 zdPa+;tTTHff)!^7Bq;v6U5NT%_7A=4N7XZncfyLYeoWODd;g_SDUQo|)FFn$MhCC# zBK%m9pntBn>aF z>jBh~2KTwb-F*3hEBc_b*kb{=_BYtL3+Ft0pi7Am8UScsi|eO0o3q^}Fu5YR%6Ju^ zRj`Qj-Pmvz4bVh#`GK~3U>@lSfHY>b{PW3|a5fcjh>Dxxm~2TxSMX($tLqk63`q&=z3gE}Ng1rxky4p0zP6Tz$c8OJAp0@DJ_T6vxJY1Ps$ zS^|qv5*>HjJ9|!xU^^8)W~GpiP6%Ig05b=4Oo+ENyrMB4t_|!BouHOJIy6s+T?I zM+Q#m+|95AXh~n9;fNv1vibtP-LP{$o;XvZ+f-^R#X^wWTlldaKtJM79MNm9BC!^^ zr9DSfZ+TRz17K$Ko$;jy2p*Cg#;GZ}v6%+XHnF#-Bvt6YIW?(1ogZJ|eGs!yGUUV30j)$LAFrv%kpU zI3m$d$n?|L5NEauP2U6-h%?^JoH&ROzj{GJFpgKeD=fOdt5enY@A{MIaJy5DL`h{oexmHk ztK!cv=sZ*79%F_NK(kN&7#H0{U7YM~NTwRD?$u*MAEWJ?{yskNlxTlYkZu`A%LP{_ zU|fBI=lw_v+drR#Y}V$K?t9Bl-)x!*94tCTv|vq8el^Lhn=MuROwSYJlbzjcBb;8@ zv1CvC8FRDTYI7jYYsts?Gxs_sL!~Kd3yQP;!n9V-{T0?$z{u5pFEWrLuT2qRmxa5J zYa~e;#ytI$9-xaAEMF9TSGfGOuxDQ%YWy)-DALU9^E_Sq7_ljj;2w5wmZKckXr+O* z_2MA2f8m@r?SLL78L3^#X7J9D;`bXjUt)XD^?7=FxWeJQ$8FH^rH{-L*`sQl<8j*l zN4Q9WZ)N!cU^J%qhTfQ3Qkh)Q`a%t0%Xh<`$Bx)Fu7Duxjl4h1$VMIR3PnS%6My=8 z8lSxqQDwDU>wRrsgms284WUbWIb>?N6aMUAnuzIZTXBweAWH1Q0t`B~@HfUTq63#{ z)|98QE~9YzZwPI4ZIT^Y3g1y<@zI)%`7zzrG9R=N;1dn>w-f<>|FcVjZiB3ejXbxQ z?|67_-QTYl+4P&cm@@0c#dZPMj!vkNKyyo@lz@h7YOhO5TZBHgnnIA|5wW1`qL%Ea zpc9)7Em!gc?d4A*gAHB{XJxgO*6!a4h;WwTaRuTdU3!D(kLj&iiO&STEp{waPaTWJ z#!~1(07kT6e&;D~V%UH7kA$8ey)oPT5owb)WXrd*)VKyrfIkAPI6lt=28Fi|0Gui2&gx8nnDNmX&$ABWQz}nK{n)6u zazp+m;IBqAdzHi= z9CY;`EYMGcY}seY`q2t(`CyN{5*O(M& z0%D$056%dSOH%yiF6dT=S(fDqEIAr{mT{o(7U6bOb_DVbu@=@Kk-TKc6#MRO+=?OR zq9dY$f(w_rQt5Hs?w234P3JbBycOU91391Qr|hDGJ(LJJMGA+*{Kzyov>0Oox5Tkc zrCa8T+YX?A)Kq2Y-js=;<9eAd0!1260a@*RP;H2ze`q#vKlggvcO)|QUL1?36LD?$ z)6GSM@*}T)l}%hlUAdoa>;V6q7z6!G6cjRG-4t_hpB^rKnm{TFC=nj?6(3l_ z*=N-(e?mjV0vP@wZty?^o!*B{U~HPr&aJC^y6{G+%6$3qx~koNO8ZGm$eY@Le0$E2hc<%g4SnnP;O6KO41%@PXPSg%V4MxV zJETG3w_DMLT-V{J$VMgS)gXm7D@ddJ`GNf2t$!bhto-lwYlff_#A)bClZx&$qg zS5Ecov%)sjd@yI5{wM^vJ>R~kPNmJ5JSF{Q$di<_b=|oH@knEu$LwY^98i*n$Ww+9 z4n_Q;XKnpjIagOB?G)rEz->2`6*IHRo%6fk`#@1}A;b~HbM>7pqr(7b9+q0LmE&oi zmuL=4t)euRgU->;h7T$hyssaHWl(lXOe8{N^KhUGH6;9@(u6y+KivKD4%SAo@4a$; z*07;*I(5+dD{W@EmmKml@Yg?aHLbD-(s-a8)YTak>GvL>LJ1abL)1Tdux5L@9ShbHQdzJE23<^Ey)t%l zOJL;Gf&@rRwx;sl>EC;=xt(#A5Qb>Xb`4NLT6{FW-P;1TVa*eqxBwGA)MPy|4YMat{1cRGYEZa2puAL8_o4ym)AeAIy? z#S6BdaT!qb^zA2mh5HOYwHoVyTI#aX8@Qh6ewIy2}|SKaN$FlG!yl@TU`&X z*<)}HTD4vDFPKj#ugKKt4B^Lxd<&@ZO6bLQJ$Poi>U1%^FnyjzotWZR^@1Ezum}d! z=ND>-p~z%#J?VX-L$R~;!ML{FqR6cJGBdc>)4-o&jivB59RT2&NB1IS3ROMk`}Yfs zp2NLU50ndB7-EE3n&cWV43csKAn2pDV|;vLH5i6|506eUU!`m0$CL?{LQtB<%bi@-%}!yY&=kUFobrDrRFN@qG0^?s|l(npe)fQIuX^=`-Hegzbo(f zRR$-!;1gSG+X09^kw{vU$I;^>-3o{BzNf9`8gYOiBuBRMgq)fEKRzoGD=;7LjRksYK?;B(6~I z#fLBYL?(n7OEeKSTsqI~0RtQhhBx-$)YNkMYMc1eX)g-;JDoLeA<_RQl z!!d2_p1le+q;6f{&w;sR;ziFW=An3sqA=@4z)FSm6yy+O`=HCHy>Ezd=xAJL93G^O z*>k7e-&w%=59x}N^mSB1YQ%K;KownChf9!vyXvq*sg`&KB`@U3^~K9I4n2EKmLn7l zKGCvQeCBR|E{jti8v$}h891264DM()EJNRBvaDL-1iLFQjpj&K%Ob2W!3mewje+cL zNcUpx%)ZN%#?bd637y=9<1VcUWX{l1z`h-39$$de)w4`^*$fuDcFNaQ#qrMBo}d9NV}zCr9Us!ogIfqCh_fn~ctd_}HoI`<8w-BT!nqI6mw#=|>>NsjVBD`hcuZ+81>S>UDRZ-iWBXT2Ey6O`y85Q zEAcC>bZhx?-rGk)y3NKd*t~pi67H!ZO`T5c=e~FX{aY(Y6Gwxrf+VkB2+JGu*%<2R zHpf7JmvS2Du;Y)*8Waeh59e_zhh1$qc5}0_~jPW6){iQwb=!!)ke5;yho z=S6T$i<)X_7bG>MbPlCKQ$(}=etaB&go_c~HFI}GK>BgR4X3QFEY)s6FZQItHiEVpg+Y{RpTNB&n=KFT{f3@fAU3H&6ebE

+jO63sFE~ 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 delta 47533 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�Q*5mf@CurM(g_c9=>XuEnk&d&clbsv}I+FZyC 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 P2MZG%Ik~u^1l<1uuBleP From 72b3072e3fd8e57284444d3469c5ac3b5bb5f042 Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Mon, 12 Feb 2018 16:37:49 -0800 Subject: [PATCH 91/95] Updated column mux section. Removed some old, unused, or bad images. --- docs/figs/Array.svg | 1475 ----------------- ...lumn_mux_schem.pdf => column_tree_mux.pdf} | Bin ...lumn_mux_schem.svg => column_tree_mux.svg} | 0 docs/figs/decoder_to _array.svg | 409 ----- docs/figs/layout_view_1024_16.png | Bin 21659 -> 0 bytes docs/figs/layout_view_64_4.png | Bin 21920 -> 0 bytes docs/figs/nand2.pdf | Bin 39845 -> 0 bytes docs/figs/nand3.pdf | Bin 49425 -> 0 bytes docs/modules.tex | 201 +-- docs/parameterized.tex | 4 +- 10 files changed, 110 insertions(+), 1979 deletions(-) delete mode 100644 docs/figs/Array.svg rename docs/figs/{column_mux_schem.pdf => column_tree_mux.pdf} (100%) rename docs/figs/{column_mux_schem.svg => column_tree_mux.svg} (100%) delete mode 100644 docs/figs/decoder_to _array.svg delete mode 100644 docs/figs/layout_view_1024_16.png delete mode 100644 docs/figs/layout_view_64_4.png delete mode 100644 docs/figs/nand2.pdf delete mode 100644 docs/figs/nand3.pdf diff --git a/docs/figs/Array.svg b/docs/figs/Array.svg deleted file mode 100644 index 419083d3..00000000 --- a/docs/figs/Array.svg +++ /dev/null @@ -1,1475 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - Bl Br - - - - - Bl Br - - - - - Bl Br - - - - - Bl Br - - - - - - - - - - - Bl Br - Bl Br - Bl Br - Bl Br - Col.Mux - Cell - Cell - Cell - Cell - Cell - Cell - Cell - Cell - - - - - - - - - - Array - - - - - Bl Br - - - - - Bl Br - - - - - Bl Br - - - - - Bl Br - - Cell - Cell - Cell - Cell - Cell - Cell - Cell - Cell - - - - - - - - - - - - - - - - - - Bl Br - Bl Br - Bl Br - Bl Br - Precharge - - diff --git a/docs/figs/column_mux_schem.pdf b/docs/figs/column_tree_mux.pdf similarity index 100% rename from docs/figs/column_mux_schem.pdf rename to docs/figs/column_tree_mux.pdf diff --git a/docs/figs/column_mux_schem.svg b/docs/figs/column_tree_mux.svg similarity index 100% rename from docs/figs/column_mux_schem.svg rename to docs/figs/column_tree_mux.svg diff --git a/docs/figs/decoder_to _array.svg b/docs/figs/decoder_to _array.svg deleted file mode 100644 index 9b7499f4..00000000 --- a/docs/figs/decoder_to _array.svg +++ /dev/null @@ -1,409 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - Address Decoder - - - - Vdd - Word Line - Vss - - - - Vdd - Word Line - Vss - - - - - Array - - - } - } - N-Well - P-Well - - diff --git a/docs/figs/layout_view_1024_16.png b/docs/figs/layout_view_1024_16.png deleted file mode 100644 index a97bfe633a06336e27ef26ceab967b2d7f5aba0e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21659 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 br1*Nsf#}7fhAm(Ml=kejx5?Um^2+}LT52)Q diff --git a/docs/figs/layout_view_64_4.png b/docs/figs/layout_view_64_4.png deleted file mode 100644 index 44e7b06085f9c217860773fc9c546999d45838e9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21920 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 TmeF3IC1Ut5w>n&=wUHfg&OzLX<6HmZ@E&trhBu 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 Date: Mon, 12 Feb 2018 17:08:01 -0800 Subject: [PATCH 92/95] Update timing to be from NEGATIVE edge in docs. Update sense amplifier to have PMOS for bitline isolation. --- docs/figs/sense_amp_schem.pdf | Bin 20660 -> 7161 bytes docs/figs/sense_amp_schem.svg | 250 ++++++++++++---------- docs/figs/timing_read.pdf | Bin 52223 -> 9066 bytes docs/figs/timing_read.svg | 232 ++++++++++---------- docs/figs/timing_write.pdf | Bin 75428 -> 13163 bytes docs/figs/timing_write.svg | 356 ++++++++++++++----------------- docs/figs/write_driver_schem.pdf | Bin 21687 -> 7324 bytes docs/figs/write_driver_schem.svg | 54 ++--- docs/modules.tex | 66 +++--- docs/timing.tex | 8 +- 10 files changed, 473 insertions(+), 493 deletions(-) diff --git a/docs/figs/sense_amp_schem.pdf b/docs/figs/sense_amp_schem.pdf index 12e78492f142227037f3e6267c3419e7859b0f02..0b062ffe455dc03185f1c0ad6d0951d1649c3484 100644 GIT binary patch literal 7161 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 XGHolHW0Qfg1DhqfapRtxB+>r>?pJsD diff --git a/docs/figs/sense_amp_schem.svg b/docs/figs/sense_amp_schem.svg index 086a1153..749b6803 100644 --- a/docs/figs/sense_amp_schem.svg +++ b/docs/figs/sense_amp_schem.svg @@ -13,8 +13,8 @@ height="1052.3622047" id="svg2" version="1.1" - inkscape:version="0.48.3.1 r9886" - sodipodi:docname="sense_amp.svg"> + inkscape:version="0.92.2 5c3e80d, 2017-08-06" + sodipodi:docname="sense_amp_schem.svg"> image/svg+xml - + @@ -55,37 +55,6 @@ inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1"> - - - - - - - - - - - @@ -148,37 +117,6 @@ inkscape:connector-curvature="0" /> - - - - - - - - - - - @@ -357,18 +295,18 @@ id="path4592" inkscape:connector-curvature="0" /> + transform="matrix(1.25,0,0,1,125,112.20718)"> VDD + y="172.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">vdd DATA + y="297.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">DATA BL_bar + x="621" + y="577.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">br BL + y="580.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">bl EN + y="588.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">en EN + x="538" + y="382.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">en EN + x="177.87868" + y="376.02765" + style="font-size:16px;line-height:1.25;font-family:sans-serif">en + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/figs/timing_read.pdf b/docs/figs/timing_read.pdf index 850a0704c660ac347e11f4cf4847fa05ebe12fe7..6f859889a09bbdc188541b2049d95bed131cd163 100644 GIT binary patch literal 9066 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 literal 52223 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 W`~v @@ -248,15 +248,15 @@ inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="1" - inkscape:cx="427.64919" + inkscape:cx="286.14919" inkscape:cy="216.91628" inkscape:document-units="px" inkscape:current-layer="layer1" showgrid="false" - inkscape:window-width="1366" - inkscape:window-height="744" + inkscape:window-width="3440" + inkscape:window-height="1392" inkscape:window-x="0" - inkscape:window-y="24" + inkscape:window-y="0" inkscape:window-maximized="1"> CLK + y="372.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">CLK ADDR + y="452.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">ADDR CSb + y="532.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">CSb OEb + y="612.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">OEb WEb + y="692.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">WEb DATA OUT + y="852.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">DATA OUT A0 + y="452.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">A0 A1 - - - - - - - - + y="452.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">A1 + + + + D0 + x="555" + y="851.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">D0 D1 + x="719" + y="851.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">D1 Setup + style="font-size:12px;line-height:1.25;font-family:sans-serif">Setup Hold + style="font-size:12px;line-height:1.25;font-family:sans-serif">Hold Setup + style="font-size:12px;line-height:1.25;font-family:sans-serif">Setup Hold + style="font-size:12px;line-height:1.25;font-family:sans-serif">Hold Read Delay + x="379" + y="840.36218" + style="font-size:14px;line-height:1.25;font-family:sans-serif">Read Delay Setup + style="font-size:12px;line-height:1.25;font-family:sans-serif">Setup SCLK + y="772.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">SCLK + + diff --git a/docs/figs/timing_write.pdf b/docs/figs/timing_write.pdf index 7481146877b6e5d0df56218fe7dd5c677d41791c..810ec2bbe116199b3ee70b99e4791eebe8ea4bc6 100644 GIT binary patch literal 13163 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 literal 75428 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 z%0D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 Jy4%ME`X7sFeqI0o diff --git a/docs/figs/timing_write.svg b/docs/figs/timing_write.svg index eb5290c6..6bbfdcb5 100644 --- a/docs/figs/timing_write.svg +++ b/docs/figs/timing_write.svg @@ -13,7 +13,7 @@ height="744.09448" id="svg3956" version="1.1" - inkscape:version="0.48.3.1 r9886" + inkscape:version="0.92.2 5c3e80d, 2017-08-06" sodipodi:docname="timing_write.svg"> @@ -332,15 +332,15 @@ inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="1" - inkscape:cx="412.2745" + inkscape:cx="270.7745" inkscape:cy="329.51856" inkscape:document-units="px" inkscape:current-layer="layer1" showgrid="false" - inkscape:window-width="1366" - inkscape:window-height="744" + inkscape:window-width="3440" + inkscape:window-height="1392" inkscape:window-x="0" - inkscape:window-y="24" + inkscape:window-y="0" inkscape:window-maximized="1"> CLK + y="372.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">CLK ADDR + y="452.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">ADDR CSb + y="532.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">CSb OEb + y="692.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">OEb WEb + y="612.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">WEb DATA IN + x="59" + y="785.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">DATA IN A0 + y="452.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">A0 A1 + y="452.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">A1 D0 + x="403" + y="797.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">D0 D1 + x="621" + y="784.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif;fill:#000000">D1 Setup + style="font-size:12px;line-height:1.25;font-family:sans-serif">Setup Hold + style="font-size:12px;line-height:1.25;font-family:sans-serif">Hold Setup + style="font-size:12px;line-height:1.25;font-family:sans-serif">Setup Hold + style="font-size:12px;line-height:1.25;font-family:sans-serif">Hold Setup + style="font-size:12px;line-height:1.25;font-family:sans-serif">Setup - - WD_EN - - Setup + x="369" + y="765.36218" + style="font-size:12px;line-height:1.25;font-family:sans-serif">Setup Hold + x="432" + y="766.36218" + style="font-size:12px;line-height:1.25;font-family:sans-serif">Hold + inkscape:connector-curvature="0" /> + inkscape:connector-curvature="0" /> + inkscape:connector-curvature="0" /> D0 + x="550" + y="863.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">D0 D1 + x="770" + y="863.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif;fill:#000000">D1 XXMem Cell + style="font-size:10px;line-height:1.25;font-family:sans-serif;text-align:center;text-anchor:middle">Mem Cell + inkscape:connector-curvature="0" /> Write Delay + x="421" + y="855.36218" + style="font-size:13px;line-height:1.25;font-family:sans-serif">Write Delay + diff --git a/docs/figs/write_driver_schem.pdf b/docs/figs/write_driver_schem.pdf index 534276300b610e4cfed2b0eb32ba5dda0976d557..e943ee80ef5e003f3ac5311ac11f4e425d2696b5 100644 GIT binary patch literal 7324 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 UU~xy;g-Jps0NmV4I?90m09{XOjQ{`u literal 21687 zcmd?Qby$>L*Ec*^ASEFn4N5589ZHI%g22!`)bMnG&~Zu|yBOQpn`28zU_=_-W z2E@bVniIfQNdsK|(@*eED}ZDF+^K6;{Y~g!JN1W|*qrLFCN97C_xC{9oGQk)z-9yd z#paZ=v~htr0UOCFXJhOFk%5@nn?bJkQ_IrqdZ~gu*qqNHmgW{NbbP`$r}A2ofpd*sWy26CfS@y7L0&bsli?~! zr>e#1=h4HPpc{-qIS;vGGD(yuL7>BrIz?0B+KVC}&=4{rwQ z=BrPM4|u+Y85D=q#xQq%DA>wXfOl{|z>OKLudbd2k%Q7x78jcfKZK6kYs4QgK`gp0j!ZOefIwHD2IrR3 z&fY*VKsx47lf@MN2d#SGAbt?2@VRY#ME5}}xYS-;#a8oD&kF>yQAn**INr(o=fgdE)l zrQ7ALbTm{~KZjGMiOCn^whIl?{YSa@yHG_~NNDVhlZ%0yUVPOYV-Rm-U7DJNm>dwG5mEqVFDzhJ5(&Hu6nfpB(ni+6^1 zcX!YDUtN?mU0Q9VuD|~T#lRXFj)qn=&}l0-X#@kWq{uxidf)KDkgZZ@2t z2vvbmW`OZN=&S|l?c&`*-k9Y~TDle%zHUHno(lE$^+9+UuYPdkf{Vc%30@x@1(Ibs zbHSi*A1ksm!NrMvE2l<&SC`^m!oZH>|JC;dS(d%!J${=td3gKy9?R;Xm(!!Vx;opL zm!J+AgimQ1SaWl8v)or6gHGKKfq(B_3CpjIk|qhia}Q6?@uP;#H?{5HR|Q*JTYYJg zRll1RwIhsPqS_IlX5ZhGfh^*$h5IMlwVY=pBB3iQE8gDTlarIJb315s6ja!{R9lIO z7>;!E_g4iZ48liYYiIXkS)j>d_YG8db$OZT$ZU;Q76E$ubht$$ zVa|sWKvH&*HnNFEb6jByr)`M~3-=?F>I0+Mk5nZuJ}0-2iD!acySXpxXhf4q!eF7(BH@T7JBh8meY@Rwxq@7K zUcw+7NLG7Xj{nioh`yNrrO(3JFTYKvq}NeJh%3gvGkF9^I|I3Xe71$A>;X&hDxa>d zKK7~^pJJRD2FB}=KHXhtFVwHd>VLfA8D}`8`yMZ>$@eTLp}lwJIY35RI42FyAUlI@ zt!*58uHVJmvB}AB{WK^{y@4)<1s+6i&(Kr->+E>Drv+pbOor59BQ3-0nILY{bJs1r z&*1fTsJ?^?IOr_(7V+8~3D6rE04?@2joDz*aTct!CwJ6{4U@7z>($z;-AiylGu5$? z%A}_ETYL^_{;a;&1PGn0AAiB@H-Of4R;(4uTSm8$ZveF>6a{So6dRR1!U)*%s11j| z1Sj0qw63TPx&(-HdYeiAku+Ai0kvH`$%S7NAc85R$q-pJd#(Vk{zBM9V*+xw0o=Jy zbz}7tzF@)pF58J~5=0Sob_XKFCb)NbaaKty1v<1pkjXqZdkCP0O}2YE;<--hd(wNWFkFHUDf5;YZ-+m8oI%gi&tG;~@66_Y;$=iaV| z&xILJB3nZDnCg;LgD)KQ@qA-catCs&$OzIWg%JDJEkq@o1gRxfj$x3~B~7kzbaXT> zj;(*w86U^t)zNeAWlD=1X!0*@8S@4jKh1Yo>vEFg-g!k{qjw3r8X>DsWPEHK^LA}( z!{~+mGY-L!&dmrS11nKsx-X)F0$AEC#A%za=I6&3aCjg##4 z-Sn+g6JbKkuozj3Uwxq7+Mjn{*3QsQnIhrbb&yTGqb>CFW{kNRpn1e5M0#WV1qB6> zjAk1jp`O9e;H>9}o*Et{iABjw=NpG?s(T~)%vyyuBU@WVp>e_raR;oPLbxOF)Ks|; z4JafUzj0CCmJ@n*eNk!(h4Cp0Li#s8soHdEKM}!yA?`&|_q|7o3il4rtMJ~m(LT;( z=$cTk694_ZDl_Bq=!m8lT=tSmFca3gClu|Ke+{B3(9Q6}XQ%7@#U}ChXvxgjnZiZa zh_R4_!=wo|l>g(;nq>^9Go81eHgXy^uF7?8UW6BI?pbV1f17g{JNi}`aeXfbKWYLK z-QIf6M#^R@$O*U~fr<5pQ^twz5ry;66R)yo`%t!1jDpp>u35o6S|iakl9#`pI@(AX9e}{SLaeomolsz_ z?b8ERbMMBm){z_1X-`xCj7vC}o1>?Vz58tB*qodwd~w`SIrYf@C*0LbE@#Z3ZZ+j8 z_2a}j?Y&XKhn?a4tO9)dCMip^-mc_wvNP;d3`rH*YN=M{HCmWp^ z+Wz>@z=2Q%!3{*>84S~mbnLf$3wCnFDh_DK5f{p?KO z{wW3w0M{G0)U-UsV~g}9gyDu{&AigkVK)5nbRU@6^;%_S_y0w4y}`ISBGG0erVeJI zY59jzKZy5lrS-{QL`~+Ac(7`g^^`8yTq0}@q2CwOw(7ym$DwFsr zB6CO%&U|Y=0==p(eqs1!fs5GA-@Ue->6WV)W@B}8bDQux2Q~E>CHQ5G|%UGGo7+ZPeD)DIzw@1_}YVU-fh2u!q;x z(^CNfI__sQqojXvCDT^-$Tl~_m{B#<{!h-?sMR4xR&-JDGw79HpI2a)cMo!eBNm*;@;o^J~u zTk^UHTcLF6GUECW#kUhu4&JlhlP?2d7SwwkS}m+C(w8z@^CYguI(d0fG^9W=RBEs* zz{$zUjQQnuh|ijombqGGm${|!eoeIAa*H*CwA8e;@&JqsP=8|^KW*(Tzsusb7f{et5RqH3!RR<@0Qh;qMg@6%D_} zPPw=HPgvE**Ly2!F`BcrT0;l@9dkrqbV@hICN zGad!MJ$HM1`x-rgnw?X3*3?mbKYjaLbZ+yL)F{Nk>#DlCNkHhUAp*&36*pFo+3nbWSC#_4uAvwFAlZ#^9GWpL8D$`-4_?Nt~&=Fn#$pL zF3kWhiXl8XUlxv#V7cV+eq%?-)!ve#)0t_n8LMv557Ja9Ob!tc1y~j$_%Z%P(LsxM z&Mq3G7R<&5no*_IWgG7OKkT}E9AnC>1M9K?_29+Eb28jV(%Efv%5apQ1Acl_F6*Uo zdvXtZdt+IK1gVxAidcvWKZ^|7&{9l-WGTvlLNdTldDkD{B`!QGYqOYr9$yBGYu7xs z<19wAA-6U+myzgw@EpMcC|%}6S7m{rO1u4ogYpxU1u&X31A1$+s_Eir60mvMTdW$t zMe`NhNV@F;OVl@l+%k?jqoStf_vG9x-fW%Y5;irI%aTZ43V`w()#$A|7Kf$1O9wZ< z2yc^GX*fQ+Sg(RMqAEIfJF>Q5`lJ#^jNe2>MU~Mc2A@>vG5D-9cup7e zc}Gt_=iQ&o0+z5`s7&M-9`sYQe3%WDD$}Wp4i66>+IoO|bt#~D87Yq9Nf+37>EfWD z3EtZ%r5r8wSwEw_C1pTD67n2CK3+JHNc(7jy~+HtE7@ZdZ!5En5X<{DMV99|;5Ppk z2#r`|j9|QGs^ehcP#XT7pfOcNKGwse6h&I-w0CHR=0UnPYnE#`tM{hk`zTs#kr|_+ zuxJFJuFW19`ijQSu+s=qS-sTx>B82yMj3q5F=E$<5q1sP}o>hB2=GwwIA=~z{rxZ32Q})i%S}ZCX^VPY6XN-g zp0f%Nwk?u^|H!ayb#E$RgvzB}|S>B>| zjC;xxPp18mxjPKNT8~!9IbU(`_I7#Inr3AXA-g>3xkss^H+=ZUHkGXRY*zAE1PW$7 z$tK}_hP}C}X##~h;NtTI@Ul&7zf?aPY)WwB&AHPOZ6A*}b5DdzxHIYyLM$o}#zi80 zd$0>`iR5%xgOZ3fUFZa<$y3qNPNLp)2BlnuemaMWUyen|mKZgFy)vQWW0e;>CG9@X zD%H)lI>u>JX8`A+YVnisHqRialzq7Tz#P`TRcBrRDt1FtBO7e(8?7C_lFQQ0r>MCD z^A6jKRxT`r>5LaHMsRK*_YQiRCkg@FDOhRGwc(-pQ6~?E9H@G{j7^$cp~rCuTj+1} z8j`QQikS$2JqQ2t{RWo{(Po&ldVzFf<7-xq$+5a<)z`18pz z!yc=@#tVaEx0)bcNv1^^v6JGUKIQsZYET=Jf@RmBiF{;fe7a@?>-Z>>`!?|s3)$A$ zngXmfuq^QUN}B(Oqo%3<%O+TzUXg|$qDQTxXBRQXChp5f+yBPcEeSO>_1VB+cLR%^ zWt0s}cJLu3f^+1w?flsn^_~zyU>t#pYMCMpO@tZ7;vHq_EPEo0c(46s9}Nue{M-&DI=>wB zA>RYh!}fEa;uW;md(%2PGr4`J23>+EI-~QRD10ZG23c;2FM#p1KSiXX3v1BAs>fZ{ zNtEWrq9#3#tcZ_}&hKBEKm-v_R8&Qec1 z@HTmT<;8O|4oajGE%HYGPw<=0NBp(?4l4`~qT4i&Rs%Xt>H32?tyTUE@ve1FZeHzvGR+^em|S}c&e5p4H>0DdAUA}Ev-6`Wy(Qjm zz5;HZk@zas*EHryw>8Y7Fk}IbU0W~xNG*)@Ob%glJM+~2`(WXZRd;PI;a){Vz&e9! z8O3^3g;t3{Wcxy8!sE6sm_AynWiBS8G+wk3&6%2-I+1jsg6IOS>{%CIm!kr!b?xzj z<8Q%`bZ{hqYDFzHQLiMQJwc*S|jvC za~*-3A8=k@wfgNA>!{0VQFmyN)3f9;-z7N2+}VlT(n~iqZ4lo~q}%;|hRh?zq3Ow!d)Tv&`vgA}2*Sk}{5U z)uOwr>iIPZEdtiS57jpcAl-|z?WT=OQX~t~C!>;Fj&Y@S<7wgO#_KC*z?3iyKu*le zl(>P}#@#l6&vY2LshB9-6TI+OyUDmA;@Bqas7{NV$Gu7K3a!rl|;= z$$$6Y;9z64#QLJBP<;s?mO4ssr2nl2#o}uecbha`E~rTjh{#{m8v zch~!*LxF4fS-<&IyBj0jSa`6yL{u@VY9a|cOrQ?ZmqL^Q>d$3?F~mnCCg$bq11WO1 zM2$7>l1?+ChHpS1fWn`Ixyti`!TKvx8y_XM^HRD1HK2>G8UK60q0`l1ufiA6o^4UO zmTRw~ok{4MESNkVpUh~Jx;ACAebS?;D?2}|q^&IOzh~OjL~4(qq$K#WB2HJ%G$w^d zCQ+UM)H$Mx{}t}_SxHpL*F>U{92tL7r^7*QmT1j$+=@-EmX?|dgzMyHh_3ZZm;8g; zQVhTey!Jy8pOx|EebIN>T3j18upls0#KcB}@rp7TFBADL~r&X`y6})D9&S8bZkzR%D<@-%w z=IB&%1H6z{L%$Q*OH*@m`FHv`dPEg0{+a(+&DWSHN2Sj$Gx`VGuQ#zv-xkR_6H}VW zUKO9P=AAKQ2?8F7*pT9x?G29?t@q(UyE{AS3!Eo{C-m><|79(*=65A7A8gBn6V$!A zbgwB&TwZp4XNGW+ppZkn;GLWU^lSrzfW6vGHrBWs?2?tk=IJ7S7d$4=?65ryh;Z>y zbj~!?)v@~GaMUmU#C8785}!Lp;H!WH-ypb{CdBQ*I?0Qs;;?%kUkGko zUi#g4438e|-FNIA!Pu_@W{p3=_`AbAXF z0)6@u13RIKs2~#GUppCXWCGVwg%)3;8+T=TOY>I)a|iqx1^OSdxW$~XoZX?E=6;-f z4EV8g=OlIX4=|L(@4bUHy@HUo>$p%-ih|^S--UbML_Ny1*)joBuTVC&^rLTKmtIEK zljMV2@4O!M7bP~1#iaF_;LGu@3%RSe0?M;O!1{DSI;j-6E{)lj5AK&b-=jD!EsVs@ zwRy#)D^fPtf|8p*Q06O8K-vBKMGD**13_LV`bi}Co);F+a>(2Bdr0z2>UloJL@KzL zXPw*IFvnch3<>H7wKR8`G_SfL3bED?M@$g;;VSQM|5V^(ompOnZq6!J^|OIEHrxxJmWveW{7*|re}^pqt7^yxA0W- z#{xGH2j6bG0(^LHBYcBsjA!Wn@5m5HgtlDA*S|s$;K@m&LUVijk}WMfP&t$*QBQaq zh>rjI^$WNN-R$=PA(W=OGUhnHIG)+Mqz?zSYb+cG)G`27z@IQ60D(0BH|ZWbfF%Am zvO@mH+6zT&Fat?f zD{+s=XnnQ|0tt29 zQhWtFU-J-Cu~m2Z&R|+Tq}ywy=`_pK%Blb}Fua8Kt=LMkfIutH?KJ(GU{J+ZL?}md zIVE9ltZ+faPX0r!m{uSGjPGGkOM1s}W>LSQnMDpv0VQ2+hoE_c2Up3pl@tJhLV8yA z-voX@e?J;cJpI(ga7++y5r0yY(rN|@042ix82towXvH7KPf2SRgT1UbX>NgJ^!4=O zilxgXmW4EI95jjn-`N1;ZIBC$l%WF5bE{5;_)OnfVVy<_NEZ3Zm!dCI zU4l=Peu2fCi_)V91BKt5kOSiJKq?Xef1*+hZT$;ap{|v$i8od^5bQtj20gXlV?81C zWSc5%@1Xg1;$x5rex-U*l+q`36ZFlDC{}WaWtt5U@-wB_p$J-PN&x!M7GeFF32c6n ztdhH|q`dqs<@A&I+iO2X4W4?R53mCaol2!2j1$gFqG}k7fuQ0$#T<$LxW&=-6nDW2 zu#;&2cHaQ_0GjhKjp+_(@q?HwbCrA()pr*LH^1CB=5_3Q7vTP;?kCA0knD3919@pl z#lT0cy)F@Q3Gm0@F zEJ|)JUO}$E^DTd8I$oD@%0S#KO(C!3rT$U%uNk%fFUgeLTmt_{rWEG>Z|73}$)4o? zD`EEE(kJ1H>i3mN-%UCWJ$q@U@wDE7kV5Cy%ln)iuSw+y=!_r8S@>l5$OZg(+iNma z}B64^?p>GZ{B5opdT5@>)~;*=d{?$qHrP@RilUFeLq(P zz7Cw>hFk6G_HFf(KL_V6L~9*Cjay zDoEUA8?awjdf}856cjWxb{`W15)%^-4_&`V@6v6ZpX{6WrmU^6OOY7El6~S_DU&H4 za2DUoR1?6Gp)|g?UY(}`MKx0gl$LUD-iJva)BTL~k?>y|$SzE-e6)MCHF+h|QA;lh z8r$yAlD|hQF*P#cwln)orP_>u{K12cT1!#Tia$m!X5c6GdSyA_Ju#5(*2-0MnB(eC z`l!|E3@k`@diKJ?f;WB4$A(ApQRy#pE89D<=3*R2k|8*}IRto_*{yRw$(HbXxU#mkYxi3)&JL6J2yVI~ozw`C7M{lH_R?4X zD?bU@_LQsznSuQLshS%HN6mpZhdLF!y+u_QnLb0>$Fulk?FM!>Y>4vgIt&qqtI=Ks4I!`GWd+DkFrFT`Iv(S28$!h%JJ`n7|!K z(#pulaLE=WZFwzrdk!qt!MNNM&;SHY-%^m1x13_}dU<;nglRL>yccJy%FV?D*AG^E zMANhnQrPt`sD)t35pwKD$}~T=`f|QLTyT#@?D^NJ0Q0_7ao^K}KCIWJ^4(7~7w0|D z71pE0dNoppd`aTXA278zx*p{+ycg>iFpV+8t~B3`ITzNV-1;^*gY3ySIXKRs9j zaAwI-G6=(xi>8 zP{~E2xyMeEf6Cb5A@R;-Tv0BMG5&VG$*OMUyTzAT_lK8j#FFkX+_%^R-}qjbC@v<3 z_H}gp_(ILqrGn+ChjYFZ&y>S`O0{BRoLA`$hfEHQK5bN756%t$GmD=1mw7hzx$*;o zdk2GrWjQR$N4T+Z9|_3^KEU%YNdxz>$DO;$yN-4jO-r?0uPGS$YSK-dC}c3e2aai3 zQ>)A_sMIj84VWfKavK>i?t7jqiNR011aFY7*GG3h6{O!Ch)4M=%>A31xL6Z}$ zw|eCqa`kg!G;QBjJC%DEcBcW4(7^$pek_;b&h~?P)82VI);kGO8R=~3_bTv)#6|8?J|{RW3IhaJ*v2j@?Wj!;-?Y+qy%VgA+D(bEe7v3eY-$+cIJY z%X-SaigtLEwEW)S;lh4s+d(_gy_ z1E{Ym+uA*+;w_-o`nPM+!JDvC@j_P)bkY7Rc+IUtDCk+?s0*QBGbN;CE>V zy_o=HfT%(_mD+_vS9HuclAuGZr|j^jwwwL8S8MEv))XAvJLZXp1jy z;C7^Hvav)E{|a+PJhKP%n~EtF6W3f`-V+*bQBiBtGH8L-k&6rdh4$km!XpPwxdI(6UzAV?Rvik^4vP~T9UwiQ)c88>#-R#ZA#>Vi7>d*^3<44beH?xbq0sY?b zMsL@HhvcV}86Up;atk{-)57#nwkVm#+eO@@xR%7nH+Afta^u7YS^c%?NSfqx7ml%D zK$b6XoHyj&4?Ia1Ah_b zteV6a3WYj5BP=9Zl-N^!H9oDxmzkfz8$#Wy1}y+J{I#MYI7I%|g+W+pc5I}`0D;%t zzBL}cSovgx#_O8R8gv$~;}!i-%Yz&X`#xQ~zO)O@|<@TR~~ zK~~w>#?_PTc0g_6T??UdJs-HVm`LcJRvD_-G8P7db#^KYZvuFum@zRxwaIs$JTwMxT}h&-%-#-D4$pRwNuV{X#)a?V5^d-f{6G zl43k_S*(if^z1AH$NzbSJ9-MNqcefpYrtEJM=TTerp)<0l}xy4kek?{5Pt_muY*>(3yhd2Bla`jke^EHm))B_3%r$nK& zKH^bA%F!cMY;QaccOtDi{VvD}$`6+Gd$ew8I}=LM6oqwW(< z3-;AUB5@3jT(%~)#(ZGYhS7y{D`!XeblB@YMQmKl@%QG4%tw$m2ET$rF2kbShXg%< z3&v1ax4Slw-6s6%M%D-h&3}dOzd`afQs)uk7WxN9|CcY({`tKW_upT3{ae$&KgqiO z8129H6_v8_|F^HG{+JZ$#+`sdeEa8(Od1;2LJgE?xSIC}|8 z9}3*sUtA#)>=JCz?g!6s8*kARvowdm@oHHN?>Bf|0B;Z)$Mb~c6*jOax1!XK)UdC9=rk`$!}@7|~|=FC@Q zW+DP@kjt?Y85iETX(XOmxON(ziA(WG1^){%$8F>u$3w`6&}SAA(yLP#V2j(nBJ46< zbdREF=_lXEJ(H6upNc6do@twM5<4gGS}npOzz%#}zx+B~ElasLPWJoH)K`~D;n;YE zv#&K<>0a5L?W*=o&PGQ`xb|b+WYw05-<;ZI&1uW+lm7ECw#3u zFwA+%kSlA~WXWg7W#DP#r=PGjhJd6S?jW-2o7K(K&9~7Y4hKw!K+yo4DGa^Y-d1ye zDc!x+N?HO_H!BhOr#ijP;`_o}Jn%k3hYtetXXn^TsvMQ>vHW zUET$Lz}r>nv^-&^yd*Z&)w z!r@`>kOd#if4J7zJvD?{DA$Put?>!|1R3?co4;SnDhTYJeH^wa9|V*lp{?RzBXxNpMT!fN(cQPA}YHg`9<(;=my zY4`V+dX3-UuO2{l8N*KH?R`{d@8BCo2^($``_9rrY!CVA@OqxGKYZR;QHUV#hwE_mQ(L=kw4^X)Qi;hH>ai%f zC&i{$KCX&PH42WHfLdfF;JUM*&@eIeg}#D0{L?$i&1vsytihPs(dLXgjt(Q+X^nX9 zU1r@+>S2!Zfu%oR{Vl`zvoXn{6E*0Een`QZJe2UDyNf`0Pj|bV9h!lw_qs@7w!EX> z$L9W)O7Ez-?FN2vU)M*I1^86Slj-7Kiox6yrWMD1HB>)M@J7Egqg>z#Qf;CFvJ{u+@ZYEJ7?jdJsZs) zS2>eBTdN}PFVp8jbTbU8B8~oZQhM?;e&YFCNonLIbCk76D279>NqMJxmM!tP^-(e= zS|j2;rFdrU#!>Pe;Q0$BzVNhE!Q_VP(a@`qDYr>cz@rLgip6$kksG3(3%&otseaY- z=LZpmw_^IElVisIgCouGFhW=JK3IIY9);Tkoc^PQu`A}{k(VlkJ|Ql6tJu^jhiEGA zL8-?NSS{|whjC5*Pfat~=y@z@pl9j2N?++vSoV>}SsL#7(b>~cQr6oWCURHKCxu`8 zLPQh6uI;(}@2iPv#N&cr_Sq)Dm9|gCT5MmcbI++jwYCBByAdTEnf6{01*p zKO*?iE2AGOnjGGAyYr?y53y^mGQ($!&Pv$E80w3tsy@FB_tzk(PmNyJ4SBO%Hb1-Y z6YT2P#4nXcnf$D*~%=7w#@qx4^$IDd(FIsSx=g=slZG%>XL z(Jk^Xc==jt7G(~(WK`L;_q;QoY*!bHJ6uSIFEhRz?CXV->yzzKJ23O&xF1nLl)W<) zhNw&OiM(#3JEBs>wc187N3(2vPLW!PQEB-bhV`5E8Q>rGgUoYPiVB}P>N1u)XNY|d zW>Fva-9^MF58oklKG!;>ju{lPX^L*Wd+%#D_~MqnoLLdkXFFWDIU{&=&hjqaBTXTq zN?k7Uw@BCJjOAqv3-F*QVMebf25xVqwmV&`V?W-Q^5od|*e^*7l{{t@FQ1+Y-(C|v zOyWv~eQf$FNW+s6TIE1e^Q2FZZ}MZF5PfZ2i34!_t9cEb&x&rkes{l2m)@;9)9KUB zp0~{$1+=T#XOO$hAcXIzViI56LnO^n&2cv!vx`HT${0n-aL6 zo>GgdC(+`#%5|B{t?lU$QLz_p%$IJ1Xb&T? z@VnQ%oW-A-yWu{I4*&!A>IZJjf%Tj@iW|M!S3+S6DY5G6QMu(G*M8LNICCUv$;7U# zO{ac(Q(sc5u%U8e*gs17$!9OSm;Qsf3~AxSCCA%#g2+k5Iu4ftCv!Q&#gvpJC!t)= z1F;5=3#+vr<)B0&>*r!*PS9D&bCkWsg)j4qCK}%Y58&`&>Jh*TC$A!2P1!SWiyC^J z_)C|k&2Ks68f>aq*2dO*n=9=j6P__aSKw6(TqsiuMdy_;CTqVk|2gKV@s9BckL8{; zQ$*_b&H7^~EXSwXnt$qUfM_yUtL(i8qzrNLhzPO&gLNpCm^%CU-KjjvhtYO1N7+8h zo+fT#7Her&r_6nWC8W`tI`Ng}7-$)b-V5+F zYs9PazJ`UEGG}>ZoO)GtQ^uHH>O(4nK;BIc%Be+pvK%MovuIQg*YnS|d54t+scPs! z{38*R?OuU~jH1ruKC4wqxCSjSfwC*?yXN|5SM&aaJQ}ZYhdeK|kRp80HuH;Uc*DzV z7GzW-oI^0TPWh#io55Xn;_!;N&#vvZiiLsx2Kj4ISw!Qdp=P_)^D6RN=$ghW{#hB_ z=9FBkG(}*wYCq-_+H`bG(3@#YRE$%hoQZ&L`S60-#pFx8=G5-!I^R3ai8V~tCc`)~ zOC9-0{_#8st$4$_HHqhn^;0!zDOS-s)q{H~f&ES^DrsH8qWZ8Y2KN!hMk^|-iM7no zIJdHAuiQ?T#uX;26;!9FOLN3IU%F2{sRWT2zVofN3MWwXzqa?Z+%*-Fi zuZ2|{d`FEZWPDz(XPYXud~6s|n>B$|kf&F@@MVaxX7H}R5}tNZ`uCG*)idd+Zt)m@sb05SMq!QQ*XwrDAr}fS!uHOnh08oK>`q9MVNbVRIFG3YD#CvzN zi=9GSYwa}mkgdjfMbI>16I|Yp%Dsk0c0r-e+}@+$giXEB{@fonQ=zBO_`kGa& zG!pH_t*ieY|LLarM&Dp9F=d(|%Lvb|$Vp*D;m(&}(fRt0Hh#3;KwKKIn%-Lxt*2gd zD$?U0$9mTZDt;-j!CN~Hu>{9|5W1k*kT@^I8%x80WYbraLL$y4XcvJR#PI5RM5F3U zbCgw2XpL!in~eLBUVitNxAPBiEut?(F>+)Vdb@nSPsT0e7t}}fX*Uce5cO&i(?X^% z(LRaGf{wEWrM|M? z-4(&=#XD?dSGqN^`Ti?<=27c2cZtZ$`&(t?M!rC8T{=r^)0w<6N@L)c4QKPW+H^GM z(MsjZY|DN%#gZjmu6VV)G}Z{NPiIRaH%sifVmekQzN(>Rvw<2lg+8@mhNRqryQJ_`&+2;-V<*_>_;st@T*tOdD2#^-{h!w`{}s+ zjXoZ3Enj?&i3hoX9tzNvr0DdSX|iy$tL9a0w6hp-kDnjyMPF8{QLF8(*bPCwR1r zZ^(}+;WC#Q9QSf6uYF2%nL#L7XRikF+7YpYyd>GsCsAVCDNOf+&7+lr$xSkld>Nw2 zNB8FwWP+eR6aV0xN>SqHYW^kcjWXWudM5xA^i(e#V{3eeFZ6#|TauMri1wXohPRP@ zgWEiCGta3hIkR>~`()PKFiG+B8Z>SBDoRcXReDty>mX~~nCHo*F+hC;3B213m-=E< zA1kRl434jCCupYbJk=&=*nK?ZiQyhLOIYp9Q8Jz~!!Q$yi{A0rK~votMf4GKk_L&2 z(bS5Hs%P#}W_Ek-;R;r_E@ad>KWTdLqYHE4yXCM$Nc&Cqm8bd!Unanq`=7}p975zV z&`Jqs@_y%8OYGS-`zfn*7FmW&sOOmIoemV-U&-CDqEYNf09C3>@4GuCd{}kPVM%Zc zZ5FiDyK(@TmtaOc+3Ge`_o^f*OWm6i{=`gMvArZabFlV>gw6dD-l#ZLbs=;r;Bye3 zjc4v;(X*{pS+AVHNpuH2ry`(@_IZ)Uh%V49+zjLnmGYR~V!KzZj&+TOt^pO!zh2%6 zcOwzUnMxyiA|Kk|X+=?nk3Zcbetrvm|C@M8)ln0XBv-hof+>-wApvXvzCC&v7(~)r zCOI#^_j(?4c`ho$+9qbIa9AE(|yK^9>$Jo=5Gt=9zjRQ<#x7z zgNNXvGj9BCS9{j%7namD6mz>5H#}x*jlP}O*-b58EsvJI^Y8wJ|7djwD3+qn3Hv8c za@<+nC9?YVm5~cM+U_=)?t9AHnrJ1m&@f1vM;@h zsQBs1*t?lt^Mo#RtQ~&W$>TmmXVH1eb8V#o$0hYv;Ta1=IouF zy?5^Y&Y537?zk^s`20N4U4c0?h9OPczNzeW7AdL!Gs&N35O95VXlWY#(8ID0D@}+`ah z6iIb^aoy#q^Tlku%ubokI>g_;>Sb5f9KYoZ=>AA}n|rk-V#swcD&rzo8*)E#kv7b? zxpUd3X*Azu!i`v^6Y0cPJUo)vb>s?jHKUQ2n(WLwE337w-nw`{7OeskU>55t^AhiRnIOQ-_Xg{<2TS zsA8oG4xb?%ER4lF>eCu*@FRW|UEDWup)t#DDLgl)eZ*dhJ6&6UyR^ zV%9Wn=9IZbA$`EX+morWH^W81%mjypA7lkTThcqUJ^F}a4u+dne1m=+3o-vE(|y2c zR4gXr8=rls+F^F1J6BI`5N162?3o&PlgA6R<^$>fH^-2BII4zdNr-LPg&7vBDwsQ$hcum%PPs1S~=CXJ%uR`{jjq2=`B}T zKIvtIsDylXM48wKpCz$5ag#UD^#1Eys(klGjbd5g5o4sW7v-tG*w{z!ojO!z%$kbj z^{=tOPfZaX{V}JNN<;_dBm&5ct|veqW?^z?}_KoXoSGg9FrYJ5n2JsmQ;ncO{j4# z(5FN)eNJbvR)A#O(%>+1=hbg_?#ByCN46B_sF4Wis8C0%vF#c5 zSwYLVS6!EhujjDZ5}w(ZEhJq!QPmWiwDG6S6_mOU+9q7;W1Y_P(@!ATge&*&cl*xi zV$Q@UxBTmUtnTUW%}@8(t^Qcoy!&eri${NTGuUCjsK%z#OQjeFq?={=;)}i!K@Z+h zy84a%hav#9_bcfS9)kLtwnQk8!ype_CX{01ifT{L?{x{8tr(re2N*z)K|o*tFGk20L#WquFB+K!fmAdy zg-WKvP%w-_v2u9=bJ{e(2=EdPa0$T;qP--t7|$Uz!W0=Mu%z2 zT^neu8@QnOKQsii;F)MJ4B&<)8VwA^RHIXd$I+?ph(kf`&m#uy$4Q--~R4pU9vL8W*Piv!xwIJt}`jKgGuXwMK~D&R8$ z4x@j(KmrZ^L;%#dSRw(0&bQD;e-5;qjYeZM0SxnLbOeP_ev}}Z&x50*U<}3(zJMQ1 z#}Fz?Lr?}i8UzRgJa5dKL7`$il+NIxDAfo0_bDRZmNa=X`QR@@1z(+E?e0D&aIW<) Dz6k21 diff --git a/docs/figs/write_driver_schem.svg b/docs/figs/write_driver_schem.svg index 05c2693f..3882dffc 100644 --- a/docs/figs/write_driver_schem.svg +++ b/docs/figs/write_driver_schem.svg @@ -13,8 +13,8 @@ height="1052.3622047" id="svg4759" version="1.1" - inkscape:version="0.48.3.1 r9886" - sodipodi:docname="write_driver.svg"> + inkscape:version="0.92.2 5c3e80d, 2017-08-06" + sodipodi:docname="write_driver_schem.svg"> image/svg+xml - + @@ -113,16 +113,16 @@ inkscape:connector-curvature="0" /> VDD + sodipodi:role="line" + style="font-size:16px;line-height:1.25;font-family:sans-serif">vdd EN + y="536.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">en @@ -583,15 +583,15 @@ inkscape:connector-curvature="0" /> DATA + y="356.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">DATA BL + y="476.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">bl BL_bar + y="477.36218" + style="font-size:16px;line-height:1.25;font-family:sans-serif">br diff --git a/docs/modules.tex b/docs/modules.tex index 19ed7e82..a232cd1f 100644 --- a/docs/modules.tex +++ b/docs/modules.tex @@ -407,13 +407,10 @@ bitlines are automatically pitch-matched to the bitcell array. \subsection{Sense Amplifier} \label{sec:senseamp} The sense amplifier is used to sense the difference between the -bitline and bitline bar while a read operation is performed. The -sense amp is necessary to recover the signals from the bitlines -because they do not experience full voltage swing. As the size of the -memory array grows, the load of the bitlines increases and the voltage -swing is limited by the small memory cell driving this large load. A -differential sense amplifier is used to``sense'' the small voltage -difference between the bitlines. +bitline and bitline bar while a read operation is performed. +The sense amplifier also includes two PMOS transistors for bitline +isolation to speed-up read operations. The schematic for the sense amp is shown in +Figure~\ref{fig:sense_amp}. \begin{figure}[h!] \centering @@ -422,33 +419,47 @@ difference between the bitlines. \label{fig:sense_amp} \end{figure} -The schematic for the sense amp is shown in -Figure~\ref{fig:sense_amp}. The sense amplifier is enable by the SCLK -signal, which initiates the read operation. Before the sense -amplifier is enable, the bitlines are precharged to Vdd by the -precharge unit. When the sense amp is enabled, one of the bitlines -experiences a voltage drop based on the value stored in the memory -cell. If a zero is stored, the bitline voltage drops. If a one is -stored, the bitline bar voltage drops. The output signal is then +During address decoding (while the wordline is not asserted), the sense +amplifier is disabled and the bitlines are precharged to vdd by the +precharge unit. The two PMOS transistors also connect the bitlines to the sense amplifier. + +The en signal comes from the control logic (Section~\ref{sec:control}) +including the timing and replica bitline (Section~\ref{sec:RBL}). It +is only enabled after sufficient swing is seen on the bitlines so that +the value can be accurately sensed. + +The sense amplifier is enabled by the en signal, which initiates the +read operation, and also isolates the sense amplifier from the +bitlines. This allows the sense amplifier to drive a smaller +capacitance rather than the whole bitline. At this time, the footer +transistor is also enabled which allows the sense amplifier to use +feedback to sense the bitline differential voltage. + +When the sense amp is enabled, one of the bitlines experiences a +voltage drop based on the value stored in the memory cell. If a zero +is stored, the bitline voltage drops. If a one is stored, the bitline +bar voltage drops. The output signal is then taken to a true logic level and latched for output to the data bus. In OpenRAM, the sense amplifier is a libray cell. The associated -layout and spice netlist can be found in the \verb|gds_lib| and \verb|sp_lib| in -the FreePDK45 directory. The \verb|sense_amp| class in \verb|sense_amp.py| -instantiates a single instance of the sense amp library cell. The -\verb|sense_amp_array| class handles the tiling of the sense amps cells. -One sense amp cell is needed per data bit and the sense amp cells need -to be appropriately spaced so that they can hook up to the column mux -bitline pairs. The spacing is determined based on the number of words -per row in the memory array. Instances are added and then Vdd, Gnd -and SCLK rails that span the entire width of the array are drawn using -the add\_rect() function. +layout and spice netlist can be found in the \verb|gds_lib| and +\verb|sp_lib| in the technology directory. The sense\_amp class in +\verb|modules/sense_amp.py| is a single instance of the sense amp +library cell. -We chose to leave the sense amp as a libray cell so that custom + +The sense\_amp\_array class in \verb|modules/sense_amp_array.py| +handles the tiling of the sense amps cells. One sense amp cell is +needed per data bit and the sense amp cells need to be appropriately +spaced so that they can hook up to the column mux bitline pairs. The +spacing is determined based on the number of words per row in the +memory array. + +The sense amp is a library cell so that custom amplifier designs could be swapped into the memory as needed. The two major things that need to be considered while designing the sense amplifier cell are the size of the cell and the bitline/input pitches. -Optimally, the cell should be no larger than the 6T cell so that it +Optimally, the cell should be no wider than the 6T cell so that it abuts to the column mux and no extra routing or space is needed. Also, the bitline inputs of the sense amp need to line up with the outputs of the write driver. In the current version of OpenRAM, the @@ -460,6 +471,7 @@ connect the write driver to the column mux without any extra routing. \subsection{Write Driver} \label{sec:writedriver} + The write driver is used to drive the input signal into the memory cell during a write operation. It can be seen in Figure~\ref{fig:write_driver} that the write driver consists of two diff --git a/docs/timing.tex b/docs/timing.tex index d022d208..7cf0f6d2 100644 --- a/docs/timing.tex +++ b/docs/timing.tex @@ -10,7 +10,7 @@ Top-Level Signals: \setlength{\itemsep}{0pt} \item ADDR - address bus. \item DATA - bi-directional data bus. -\item CLK - the global clock. +\item clk - the global clock. \item OEb - active low output enable. \item CSb - active low chip select. \item WEb - active low write enable. @@ -34,7 +34,7 @@ The main timing considerations for an SRAM are: \item Setup Time - time an input needs to be stable before the positive/negative clock edge. \item Hold Time - time an input needs to stay valid after the positive/negative clock edge. \item Minimun Cycle Time - time inbetween subsequent memory operations. -\item Memory Read Time - time from positive clock edge until valid data appears on the data bus. +\item Memory Read Time - time from negative clock edge until valid data appears on the data bus. \item Memory Write Time - time from negative clock edge until data has been driven into a memory cell. \end{itemize} @@ -66,9 +66,9 @@ Read Operation: \end{enumerate} \item On the falling edge of the clock (CLK): \begin{enumerate} - \item Word line has been asserted, the value stored in the memory cells pulls down one of the bitlines (BL if a 0 is stored, BL\_bar if a 1 is stored). + \item Word line is driven onto the bitlines, the value stored in the memory cells pulls down one of the bitlines (bl if a 0 is stored, br if a 1 is stored). \item s\_en enables the sense amplifier which senses the voltage difference of the bit lines, produces the output and keeps the value in its latch circuitry. - \item Tri-gate enables and put the output data on data bus. Data remains valid on the data bus for a complete clock cycle. + \item Tri-gate drives (tri\_en and tri\_en\_bar) the output data on data bus. Data remains valid on the data bus for a complete clock cycle. \end{enumerate} \end{enumerate} From 9e38b8aca16fc7426a6f4496e34be15a30ef98fb Mon Sep 17 00:00:00 2001 From: Matt Guthaus Date: Mon, 12 Feb 2018 17:08:24 -0800 Subject: [PATCH 93/95] Deleted old images. --- docs/figs/cell_view_1024_16.png | Bin 7606 -> 0 bytes docs/figs/cell_view_64_4.png | Bin 8919 -> 0 bytes 2 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 docs/figs/cell_view_1024_16.png delete mode 100644 docs/figs/cell_view_64_4.png diff --git a/docs/figs/cell_view_1024_16.png b/docs/figs/cell_view_1024_16.png deleted file mode 100644 index f85358c715f87406b60efe3ee3716995fcba5b20..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7606 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 diff --git a/docs/figs/cell_view_64_4.png b/docs/figs/cell_view_64_4.png deleted file mode 100644 index 12e391122af02ec389f2e74776b2413ba32ee3da..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8919 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 b Date: Mon, 12 Feb 2018 17:16:40 -0800 Subject: [PATCH 94/95] Add slow and fast SCMOS spice models. --- technology/scn3me_subm/models/ff/nmos.sp | 10 ++++++++++ technology/scn3me_subm/models/ff/pmos.sp | 9 +++++++++ technology/scn3me_subm/models/nom/nmos.sp | 7 ++----- technology/scn3me_subm/models/nom/pmos.sp | 6 ++---- technology/scn3me_subm/models/ss/nmos.sp | 10 ++++++++++ technology/scn3me_subm/models/ss/pmos.sp | 9 +++++++++ technology/scn3me_subm/tech/tech.py | 12 ++++++------ 7 files changed, 48 insertions(+), 15 deletions(-) create mode 100644 technology/scn3me_subm/models/ff/nmos.sp create mode 100644 technology/scn3me_subm/models/ff/pmos.sp create mode 100644 technology/scn3me_subm/models/ss/nmos.sp create mode 100644 technology/scn3me_subm/models/ss/pmos.sp diff --git a/technology/scn3me_subm/models/ff/nmos.sp b/technology/scn3me_subm/models/ff/nmos.sp new file mode 100644 index 00000000..1d5f74a6 --- /dev/null +++ b/technology/scn3me_subm/models/ff/nmos.sp @@ -0,0 +1,10 @@ +********************************************* +* Transistor Models +* Note: These models are approximate +* and should be substituted with actual +* models from MOSIS or SCN3ME +********************************************* + +.MODEL n NMOS (LEVEL=49 VTO=0.669845 KP=113.7771E-6 ++ NSUB=6E16 U0=461 GAMMA=0.5705 TOX=13.9n) + diff --git a/technology/scn3me_subm/models/ff/pmos.sp b/technology/scn3me_subm/models/ff/pmos.sp new file mode 100644 index 00000000..6ac2a4e6 --- /dev/null +++ b/technology/scn3me_subm/models/ff/pmos.sp @@ -0,0 +1,9 @@ +********************************************* +* Transistor Models +* Note: These models are approximate +* and should be substituted with actual +* models from MOSIS or SCN3ME +********************************************* + +.MODEL p PMOS (LEVEL=49 VTO=-0.921340 KP=366.0244-6 ++ NSUB=6E16 U0=211 GAMMA=0.2370 TOX=13.9n) diff --git a/technology/scn3me_subm/models/nom/nmos.sp b/technology/scn3me_subm/models/nom/nmos.sp index d110573f..23ecc1bc 100644 --- a/technology/scn3me_subm/models/nom/nmos.sp +++ b/technology/scn3me_subm/models/nom/nmos.sp @@ -5,8 +5,5 @@ * models from MOSIS or SCN3ME ********************************************* -.MODEL n NMOS (LEVEL=4 VTO=0.669845 KP=113.7771E-6 -+ NSUB=6E16 U0=458 VFB=-0.851 GAMMA=0.5705 TOX=13.9n -+ TNOM=27) - - +.MODEL n NMOS (LEVEL=49 VTO=0.669845 KP=113.7771E-6 ++ NSUB=6E16 U0=458 GAMMA=0.5705 TOX=13.9n) diff --git a/technology/scn3me_subm/models/nom/pmos.sp b/technology/scn3me_subm/models/nom/pmos.sp index f47e3b94..c5bc4d59 100644 --- a/technology/scn3me_subm/models/nom/pmos.sp +++ b/technology/scn3me_subm/models/nom/pmos.sp @@ -5,7 +5,5 @@ * models from MOSIS or SCN3ME ********************************************* -.MODEL p PMOS (LEVEL=4 VTO=-0.921340 KP=366.0244-6 -+ NSUB=6E16 U0=212 VFB=0.395 GAMMA=0.2370 TOX=13.9n -+ TNOM=27) - +.MODEL p PMOS (LEVEL=49 VTO=-0.921340 KP=366.0244-6 ++ NSUB=6E16 U0=212 GAMMA=0.2370 TOX=13.9n) diff --git a/technology/scn3me_subm/models/ss/nmos.sp b/technology/scn3me_subm/models/ss/nmos.sp new file mode 100644 index 00000000..b882ad6d --- /dev/null +++ b/technology/scn3me_subm/models/ss/nmos.sp @@ -0,0 +1,10 @@ +********************************************* +* Transistor Models +* Note: These models are approximate +* and should be substituted with actual +* models from MOSIS or SCN3ME +********************************************* + +.MODEL n NMOS (LEVEL=49 VTO=0.669845 KP=113.7771E-6 ++ NSUB=6E16 U0=459 GAMMA=0.5705 TOX=13.9n) + diff --git a/technology/scn3me_subm/models/ss/pmos.sp b/technology/scn3me_subm/models/ss/pmos.sp new file mode 100644 index 00000000..c5bc4d59 --- /dev/null +++ b/technology/scn3me_subm/models/ss/pmos.sp @@ -0,0 +1,9 @@ +********************************************* +* Transistor Models +* Note: These models are approximate +* and should be substituted with actual +* models from MOSIS or SCN3ME +********************************************* + +.MODEL p PMOS (LEVEL=49 VTO=-0.921340 KP=366.0244-6 ++ NSUB=6E16 U0=212 GAMMA=0.2370 TOX=13.9n) diff --git a/technology/scn3me_subm/tech/tech.py b/technology/scn3me_subm/tech/tech.py index ee6fb694..b8270578 100755 --- a/technology/scn3me_subm/tech/tech.py +++ b/technology/scn3me_subm/tech/tech.py @@ -200,12 +200,12 @@ spice["pmos"]="p" # This is a map of corners to model files SPICE_MODEL_DIR=os.environ.get("SPICE_MODEL_DIR") # FIXME: Uncomment when we have the new spice models -spice["fet_models"] = { "TT" : [SPICE_MODEL_DIR+"/nom/pmos.sp",SPICE_MODEL_DIR+"/nom/nmos.sp"] } -# spice["fet_models"] = { "TT" : [SPICE_MODEL_DIR+"/nom/pmos.sp",SPICE_MODEL_DIR+"/nom/nmos.sp"], -# "FF" : [SPICE_MODEL_DIR+"/ff/pmos.sp",SPICE_MODEL_DIR+"/ff/nmos.sp"], -# "FS" : [SPICE_MODEL_DIR+"/ff/pmos.sp",SPICE_MODEL_DIR+"/ss/nmos.sp"], -# "SF" : [SPICE_MODEL_DIR+"/ss/pmos.sp",SPICE_MODEL_DIR+"/ff/nmos.sp"], -# "SS" : [SPICE_MODEL_DIR+"/ss/pmos.sp",SPICE_MODEL_DIR+"/ss/nmos.sp"] } +#spice["fet_models"] = { "TT" : [SPICE_MODEL_DIR+"/nom/pmos.sp",SPICE_MODEL_DIR+"/nom/nmos.sp"] } +spice["fet_models"] = { "TT" : [SPICE_MODEL_DIR+"/nom/pmos.sp",SPICE_MODEL_DIR+"/nom/nmos.sp"], + "FF" : [SPICE_MODEL_DIR+"/ff/pmos.sp",SPICE_MODEL_DIR+"/ff/nmos.sp"], + "FS" : [SPICE_MODEL_DIR+"/ff/pmos.sp",SPICE_MODEL_DIR+"/ss/nmos.sp"], + "SF" : [SPICE_MODEL_DIR+"/ss/pmos.sp",SPICE_MODEL_DIR+"/ff/nmos.sp"], + "SS" : [SPICE_MODEL_DIR+"/ss/pmos.sp",SPICE_MODEL_DIR+"/ss/nmos.sp"] } #spice stimulus related variables From 767990ca3bcbfc9b99ad3102fbaf29081f9f68a3 Mon Sep 17 00:00:00 2001 From: mguthaus Date: Tue, 13 Feb 2018 15:54:50 -0800 Subject: [PATCH 95/95] Update golden lib tests. Add new generic SCMOS models. Fix tech error with new msflop_in_cap name. --- compiler/modules/control_logic.py | 2 +- compiler/modules/delay_chain.py | 3 +- compiler/tests/21_hspice_delay_test.py | 36 ++-- compiler/tests/21_hspice_setuphold_test.py | 10 +- compiler/tests/21_ngspice_setuphold_test.py | 10 +- compiler/tests/22_sram_func_test.py | 2 +- .../sram_2_16_1_freepdk45_TT_10V_25C.lib | 22 +-- ...2_16_1_freepdk45_TT_10V_25C_analytical.lib | 160 +++++++++--------- ...ram_2_16_1_freepdk45_TT_10V_25C_pruned.lib | 22 +-- .../sram_2_16_1_scn3me_subm_TT_50V_25C.lib | 160 +++++++++--------- ...m_2_16_1_scn3me_subm_TT_50V_25C_pruned.lib | 160 +++++++++--------- technology/scn3me_subm/models/ff/nmos.sp | 4 +- technology/scn3me_subm/models/ff/pmos.sp | 4 +- technology/scn3me_subm/models/nom/nmos.sp | 4 +- technology/scn3me_subm/models/nom/pmos.sp | 4 +- technology/scn3me_subm/models/ss/nmos.sp | 4 +- technology/scn3me_subm/models/ss/pmos.sp | 4 +- 17 files changed, 306 insertions(+), 305 deletions(-) diff --git a/compiler/modules/control_logic.py b/compiler/modules/control_logic.py index 1ffe5aa5..a3de587c 100644 --- a/compiler/modules/control_logic.py +++ b/compiler/modules/control_logic.py @@ -69,7 +69,7 @@ class control_logic(design.design): c = reload(__import__(OPTS.replica_bitline)) replica_bitline = getattr(c, OPTS.replica_bitline) # FIXME: These should be tuned according to the size! - FO4_stages = 4 + FO4_stages = 8 bitcell_loads = int(math.ceil(self.num_rows / 10.0)) self.replica_bitline = replica_bitline(FO4_stages, bitcell_loads) self.add_mod(self.replica_bitline) diff --git a/compiler/modules/delay_chain.py b/compiler/modules/delay_chain.py index 5a97f711..b05da7ee 100644 --- a/compiler/modules/delay_chain.py +++ b/compiler/modules/delay_chain.py @@ -8,7 +8,8 @@ from globals import OPTS class delay_chain(design.design): """ - Generate a logic effort based delay chain. + Generate a delay chain with the given number of stages and fanout. + This automatically adds an extra inverter with no load on the input. Input is a list contains the electrical effort of each stage. """ diff --git a/compiler/tests/21_hspice_delay_test.py b/compiler/tests/21_hspice_delay_test.py index 10f50b14..d82c2be0 100644 --- a/compiler/tests/21_hspice_delay_test.py +++ b/compiler/tests/21_hspice_delay_test.py @@ -51,25 +51,25 @@ class timing_sram_test(openram_test): data = d.analyze(probe_address, probe_data,slews,loads) #print data if OPTS.tech_name == "freepdk45": - golden_data = {'read1_power': 0.0345742, - 'read0_power': 0.03526189999999999, - 'write0_power': 0.0270014, - 'delay1': [0.0573107], - 'delay0': [0.07055809999999998], - 'min_period': 0.234, - 'write1_power': 0.0376625, - 'slew0': [0.0284344], - 'slew1': [0.0189185]} + golden_data = {'read1_power': 0.0356004, + 'read0_power': 0.0364339, + 'write0_power': 0.0262249, + 'delay1': [0.0572987], + 'delay0': [0.0705677], + 'min_period': 0.41, + 'write1_power': 0.038824700000000004, + 'slew0': [0.028478], + 'slew1': [0.0190058]} elif OPTS.tech_name == "scn3me_subm": - golden_data = {'read1_power': 11.2474, - 'read0_power': 11.3148, - 'write0_power': 6.9064, - 'delay1': [1.0298], - 'delay0': [1.4102], - 'min_period': 4.063, - 'write1_power': 11.6964, - 'slew0': [1.3118], - 'slew1': [0.9816656]} + golden_data = {'read1_power': 10.3442, + 'read0_power': 10.5159, + 'write0_power': 6.9292, + 'delay1': [0.6536728], + 'delay0': [0.9019465999999999], + 'min_period': 4.531, + 'write1_power': 11.3108, + 'slew0': [0.8320245], + 'slew1': [0.5897582]} else: self.assertTrue(False) # other techs fail # Check if no too many or too few results diff --git a/compiler/tests/21_hspice_setuphold_test.py b/compiler/tests/21_hspice_setuphold_test.py index 9649a7a4..ec49090f 100644 --- a/compiler/tests/21_hspice_setuphold_test.py +++ b/compiler/tests/21_hspice_setuphold_test.py @@ -34,17 +34,17 @@ class timing_setup_test(openram_test): corner = (OPTS.process_corners[0], OPTS.supply_voltages[0], OPTS.temperatures[0]) sh = setup_hold.setup_hold(corner) data = sh.analyze(slews,slews) - + #print data if OPTS.tech_name == "freepdk45": golden_data = {'setup_times_LH': [0.014648399999999999], 'hold_times_LH': [0.0024414], 'hold_times_HL': [-0.0036620999999999997], 'setup_times_HL': [0.0085449]} elif OPTS.tech_name == "scn3me_subm": - golden_data = {'setup_times_LH': [0.1000977], - 'hold_times_LH': [0.020751999999999996], - 'hold_times_HL': [-0.0830078], - 'setup_times_HL': [0.020751999999999996]} + golden_data = {'setup_times_LH': [0.08178709999999999], + 'hold_times_LH': [0.0024414], + 'hold_times_HL': [-0.0646973], + 'setup_times_HL': [0.0390625]} else: self.assertTrue(False) # other techs fail diff --git a/compiler/tests/21_ngspice_setuphold_test.py b/compiler/tests/21_ngspice_setuphold_test.py index 4e28ce47..e26ce210 100644 --- a/compiler/tests/21_ngspice_setuphold_test.py +++ b/compiler/tests/21_ngspice_setuphold_test.py @@ -33,17 +33,17 @@ class timing_setup_test(openram_test): corner = (OPTS.process_corners[0], OPTS.supply_voltages[0], OPTS.temperatures[0]) sh = setup_hold.setup_hold(corner) data = sh.analyze(slews,slews) - + #print data if OPTS.tech_name == "freepdk45": golden_data = {'setup_times_LH': [0.01464844], 'hold_times_LH': [0.0024414059999999997], 'hold_times_HL': [-0.003662109], 'setup_times_HL': [0.008544922]} elif OPTS.tech_name == "scn3me_subm": - golden_data = {'setup_times_LH': [0.1000977], - 'hold_times_LH': [0.02075195], - 'hold_times_HL': [-0.08300781], - 'setup_times_HL': [0.02075195]} + golden_data = {'setup_times_LH': [0.1855469], + 'hold_times_LH': [-0.009765625], + 'hold_times_HL': [-0.15625], + 'setup_times_HL': [0.12451169999999999]} else: self.assertTrue(False) # other techs fail diff --git a/compiler/tests/22_sram_func_test.py b/compiler/tests/22_sram_func_test.py index f8042880..f719c390 100644 --- a/compiler/tests/22_sram_func_test.py +++ b/compiler/tests/22_sram_func_test.py @@ -49,7 +49,7 @@ class sram_func_test(openram_test): # This will exit if it doesn't find a feasible period import tech - load = tech.spice["FF_in_cap"]*4 + load = tech.spice["msflop_in_cap"]*4 slew = tech.spice["rise_time"]*2 feasible_period = d.find_feasible_period(load,slew) diff --git a/compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C.lib b/compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C.lib index 435a4f75..68458eba 100644 --- a/compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C.lib +++ b/compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C.lib @@ -92,10 +92,10 @@ cell (sram_2_16_1_freepdk45){ internal_power(){ when : "OEb & !clk"; rise_power(scalar){ - values("0.04024341"); + values("0.042347092"); } fall_power(scalar){ - values("0.029869287"); + values("0.029908723"); } } timing(){ @@ -129,10 +129,10 @@ cell (sram_2_16_1_freepdk45){ internal_power(){ when : "!OEb & !clk"; rise_power(scalar){ - values("0.050563718"); + values("0.054779642"); } fall_power(scalar){ - values("0.055867096"); + values("0.060081573"); } } timing(){ @@ -145,9 +145,9 @@ cell (sram_2_16_1_freepdk45){ "0.061, 0.062, 0.069"); } cell_fall(CELL_TABLE) { - values("0.442, 0.443, 0.452",\ - "0.442, 0.443, 0.453",\ - "0.448, 0.449, 0.458"); + values("0.522, 0.523, 0.533",\ + "0.523, 0.524, 0.533",\ + "0.528, 0.529, 0.539"); } rise_transition(CELL_TABLE) { values("0.013, 0.015, 0.026",\ @@ -308,20 +308,20 @@ cell (sram_2_16_1_freepdk45){ timing_type :"min_pulse_width"; related_pin : clk; rise_constraint(scalar) { - values("0.449"); + values("0.5275"); } fall_constraint(scalar) { - values("0.449"); + values("0.5275"); } } timing(){ timing_type :"minimum_period"; related_pin : clk; rise_constraint(scalar) { - values("0.898"); + values("1.055"); } fall_constraint(scalar) { - values("0.898"); + values("1.055"); } } } diff --git a/compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C_analytical.lib b/compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C_analytical.lib index 63e510fd..22715e9f 100644 --- a/compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C_analytical.lib +++ b/compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C_analytical.lib @@ -92,47 +92,47 @@ cell (sram_2_16_1_freepdk45){ internal_power(){ when : "OEb & !clk"; rise_power(scalar){ - values("0"); + values("0.039115101"); } fall_power(scalar){ - values("0"); + values("0.026662611"); } } timing(){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009"); + values("0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009"); + values("0.009, 0.009, 0.015",\ + "0.009, 0.009, 0.015",\ + "0.009, 0.009, 0.015"); } } timing(){ timing_type : hold_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001"); + values("0.002, 0.002, -0.004",\ + "0.002, 0.002, -0.004",\ + "0.002, 0.002, -0.004"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001"); + values("-0.004, -0.004, -0.016",\ + "-0.004, -0.004, -0.016",\ + "-0.004, -0.004, -0.016"); } } internal_power(){ when : "!OEb & !clk"; rise_power(scalar){ - values("0"); + values("0.036300681"); } fall_power(scalar){ - values("0"); + values("0.041472985"); } } timing(){ @@ -140,24 +140,24 @@ cell (sram_2_16_1_freepdk45){ related_pin : "clk"; timing_type : falling_edge; cell_rise(CELL_TABLE) { - values("0.123, 0.124, 0.133",\ - "0.123, 0.124, 0.133",\ - "0.123, 0.124, 0.133"); + values("0.054, 0.055, 0.061",\ + "0.055, 0.055, 0.062",\ + "0.06, 0.061, 0.067"); } cell_fall(CELL_TABLE) { - values("0.123, 0.124, 0.133",\ - "0.123, 0.124, 0.133",\ - "0.123, 0.124, 0.133"); + values("0.519, 0.52, 0.529",\ + "0.519, 0.52, 0.53",\ + "0.525, 0.526, 0.535"); } rise_transition(CELL_TABLE) { - values("0.006, 0.007, 0.018",\ - "0.006, 0.007, 0.018",\ - "0.006, 0.007, 0.018"); + values("0.013, 0.014, 0.026",\ + "0.013, 0.014, 0.026",\ + "0.013, 0.015, 0.026"); } fall_transition(CELL_TABLE) { - values("0.006, 0.007, 0.018",\ - "0.006, 0.007, 0.018",\ - "0.006, 0.007, 0.018"); + values("0.027, 0.029, 0.043",\ + "0.027, 0.029, 0.043",\ + "0.027, 0.029, 0.043"); } } } @@ -174,28 +174,28 @@ cell (sram_2_16_1_freepdk45){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009"); + values("0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009"); + values("0.009, 0.009, 0.015",\ + "0.009, 0.009, 0.015",\ + "0.009, 0.009, 0.015"); } } timing(){ timing_type : hold_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001"); + values("0.002, 0.002, -0.004",\ + "0.002, 0.002, -0.004",\ + "0.002, 0.002, -0.004"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001"); + values("-0.004, -0.004, -0.016",\ + "-0.004, -0.004, -0.016",\ + "-0.004, -0.004, -0.016"); } } } @@ -208,28 +208,28 @@ cell (sram_2_16_1_freepdk45){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009"); + values("0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009"); + values("0.009, 0.009, 0.015",\ + "0.009, 0.009, 0.015",\ + "0.009, 0.009, 0.015"); } } timing(){ timing_type : hold_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001"); + values("0.002, 0.002, -0.004",\ + "0.002, 0.002, -0.004",\ + "0.002, 0.002, -0.004"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001"); + values("-0.004, -0.004, -0.016",\ + "-0.004, -0.004, -0.016",\ + "-0.004, -0.004, -0.016"); } } } @@ -241,28 +241,28 @@ cell (sram_2_16_1_freepdk45){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009"); + values("0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009"); + values("0.009, 0.009, 0.015",\ + "0.009, 0.009, 0.015",\ + "0.009, 0.009, 0.015"); } } timing(){ timing_type : hold_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001"); + values("0.002, 0.002, -0.004",\ + "0.002, 0.002, -0.004",\ + "0.002, 0.002, -0.004"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001"); + values("-0.004, -0.004, -0.016",\ + "-0.004, -0.004, -0.016",\ + "-0.004, -0.004, -0.016"); } } } @@ -274,28 +274,28 @@ cell (sram_2_16_1_freepdk45){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009"); + values("0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021",\ + "0.009, 0.015, 0.021"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009",\ - "0.009, 0.009, 0.009"); + values("0.009, 0.009, 0.015",\ + "0.009, 0.009, 0.015",\ + "0.009, 0.009, 0.015"); } } timing(){ timing_type : hold_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001"); + values("0.002, 0.002, -0.004",\ + "0.002, 0.002, -0.004",\ + "0.002, 0.002, -0.004"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001",\ - "0.001, 0.001, 0.001"); + values("-0.004, -0.004, -0.016",\ + "-0.004, -0.004, -0.016",\ + "-0.004, -0.004, -0.016"); } } } @@ -308,20 +308,20 @@ cell (sram_2_16_1_freepdk45){ timing_type :"min_pulse_width"; related_pin : clk; rise_constraint(scalar) { - values("0.0"); + values("0.5275"); } fall_constraint(scalar) { - values("0.0"); + values("0.5275"); } } timing(){ timing_type :"minimum_period"; related_pin : clk; rise_constraint(scalar) { - values("0.0"); + values("1.055"); } fall_constraint(scalar) { - values("0.0"); + values("1.055"); } } } diff --git a/compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C_pruned.lib b/compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C_pruned.lib index 06b9f36d..22715e9f 100644 --- a/compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C_pruned.lib +++ b/compiler/tests/golden/sram_2_16_1_freepdk45_TT_10V_25C_pruned.lib @@ -92,10 +92,10 @@ cell (sram_2_16_1_freepdk45){ internal_power(){ when : "OEb & !clk"; rise_power(scalar){ - values("0.0370166"); + values("0.039115101"); } fall_power(scalar){ - values("0.026622831"); + values("0.026662611"); } } timing(){ @@ -129,10 +129,10 @@ cell (sram_2_16_1_freepdk45){ internal_power(){ when : "!OEb & !clk"; rise_power(scalar){ - values("0.034203045"); + values("0.036300681"); } fall_power(scalar){ - values("0.039377859"); + values("0.041472985"); } } timing(){ @@ -145,9 +145,9 @@ cell (sram_2_16_1_freepdk45){ "0.06, 0.061, 0.067"); } cell_fall(CELL_TABLE) { - values("0.438, 0.439, 0.449",\ - "0.439, 0.44, 0.449",\ - "0.445, 0.446, 0.455"); + values("0.519, 0.52, 0.529",\ + "0.519, 0.52, 0.53",\ + "0.525, 0.526, 0.535"); } rise_transition(CELL_TABLE) { values("0.013, 0.014, 0.026",\ @@ -308,20 +308,20 @@ cell (sram_2_16_1_freepdk45){ timing_type :"min_pulse_width"; related_pin : clk; rise_constraint(scalar) { - values("0.449"); + values("0.5275"); } fall_constraint(scalar) { - values("0.449"); + values("0.5275"); } } timing(){ timing_type :"minimum_period"; related_pin : clk; rise_constraint(scalar) { - values("0.898"); + values("1.055"); } fall_constraint(scalar) { - values("0.898"); + values("1.055"); } } } diff --git a/compiler/tests/golden/sram_2_16_1_scn3me_subm_TT_50V_25C.lib b/compiler/tests/golden/sram_2_16_1_scn3me_subm_TT_50V_25C.lib index d08de617..b6fc4525 100644 --- a/compiler/tests/golden/sram_2_16_1_scn3me_subm_TT_50V_25C.lib +++ b/compiler/tests/golden/sram_2_16_1_scn3me_subm_TT_50V_25C.lib @@ -92,47 +92,47 @@ cell (sram_2_16_1_scn3me_subm){ internal_power(){ when : "OEb & !clk"; rise_power(scalar){ - values("6.0607574"); + values("11.756062"); } fall_power(scalar){ - values("3.8016626"); + values("7.1840422"); } } timing(){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186"); + values("0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027"); + values("0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027"); } } timing(){ timing_type : hold_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021"); + values("-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009"); } fall_constraint(CONSTRAINT_TABLE) { - values("-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175"); + values("-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132"); } } internal_power(){ when : "!OEb & !clk"; rise_power(scalar){ - values("6.8609238"); + values("10.730552"); } fall_power(scalar){ - values("5.9579654"); + values("10.584523"); } } timing(){ @@ -140,24 +140,24 @@ cell (sram_2_16_1_scn3me_subm){ related_pin : "clk"; timing_type : falling_edge; cell_rise(CELL_TABLE) { - values("0.676, 0.761, 1.439",\ - "0.679, 0.763, 1.443",\ - "0.731, 0.813, 1.491"); + values("0.458, 0.503, 0.87",\ + "0.461, 0.505, 0.873",\ + "0.5, 0.544, 0.911"); } cell_fall(CELL_TABLE) { - values("0.866, 0.99, 1.98",\ - "0.868, 0.993, 1.985",\ - "0.92, 1.042, 2.034"); + values("0.573, 0.649, 1.249",\ + "0.576, 0.651, 1.252",\ + "0.616, 0.69, 1.289"); } rise_transition(CELL_TABLE) { - values("0.184, 0.333, 1.877",\ - "0.185, 0.334, 1.877",\ - "0.188, 0.337, 1.877"); + values("0.153, 0.232, 1.084",\ + "0.153, 0.233, 1.084",\ + "0.156, 0.236, 1.084"); } fall_transition(CELL_TABLE) { - values("0.363, 0.486, 2.459",\ - "0.367, 0.488, 2.459",\ - "0.37, 0.495, 2.46"); + values("0.277, 0.355, 1.499",\ + "0.277, 0.357, 1.499",\ + "0.278, 0.362, 1.499"); } } } @@ -174,28 +174,28 @@ cell (sram_2_16_1_scn3me_subm){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186"); + values("0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027"); + values("0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027"); } } timing(){ timing_type : hold_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021"); + values("-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009"); } fall_constraint(CONSTRAINT_TABLE) { - values("-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175"); + values("-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132"); } } } @@ -208,28 +208,28 @@ cell (sram_2_16_1_scn3me_subm){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186"); + values("0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027"); + values("0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027"); } } timing(){ timing_type : hold_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021"); + values("-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009"); } fall_constraint(CONSTRAINT_TABLE) { - values("-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175"); + values("-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132"); } } } @@ -241,28 +241,28 @@ cell (sram_2_16_1_scn3me_subm){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186"); + values("0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027"); + values("0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027"); } } timing(){ timing_type : hold_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021"); + values("-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009"); } fall_constraint(CONSTRAINT_TABLE) { - values("-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175"); + values("-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132"); } } } @@ -274,28 +274,28 @@ cell (sram_2_16_1_scn3me_subm){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186"); + values("0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027"); + values("0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027"); } } timing(){ timing_type : hold_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021"); + values("-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009"); } fall_constraint(CONSTRAINT_TABLE) { - values("-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175"); + values("-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132"); } } } @@ -308,20 +308,20 @@ cell (sram_2_16_1_scn3me_subm){ timing_type :"min_pulse_width"; related_pin : clk; rise_constraint(scalar) { - values("3.125"); + values("2.344"); } fall_constraint(scalar) { - values("3.125"); + values("2.344"); } } timing(){ timing_type :"minimum_period"; related_pin : clk; rise_constraint(scalar) { - values("6.25"); + values("4.688"); } fall_constraint(scalar) { - values("6.25"); + values("4.688"); } } } diff --git a/compiler/tests/golden/sram_2_16_1_scn3me_subm_TT_50V_25C_pruned.lib b/compiler/tests/golden/sram_2_16_1_scn3me_subm_TT_50V_25C_pruned.lib index b2c93949..b6fc4525 100644 --- a/compiler/tests/golden/sram_2_16_1_scn3me_subm_TT_50V_25C_pruned.lib +++ b/compiler/tests/golden/sram_2_16_1_scn3me_subm_TT_50V_25C_pruned.lib @@ -92,47 +92,47 @@ cell (sram_2_16_1_scn3me_subm){ internal_power(){ when : "OEb & !clk"; rise_power(scalar){ - values("5.5339993"); + values("11.756062"); } fall_power(scalar){ - values("3.2697936"); + values("7.1840422"); } } timing(){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186"); + values("0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027"); + values("0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027"); } } timing(){ timing_type : hold_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021"); + values("-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009"); } fall_constraint(CONSTRAINT_TABLE) { - values("-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175"); + values("-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132"); } } internal_power(){ when : "!OEb & !clk"; rise_power(scalar){ - values("5.5897458"); + values("10.730552"); } fall_power(scalar){ - values("5.460329"); + values("10.584523"); } } timing(){ @@ -140,24 +140,24 @@ cell (sram_2_16_1_scn3me_subm){ related_pin : "clk"; timing_type : falling_edge; cell_rise(CELL_TABLE) { - values("0.664, 0.748, 1.425",\ - "0.667, 0.75, 1.429",\ - "0.718, 0.8, 1.477"); + values("0.458, 0.503, 0.87",\ + "0.461, 0.505, 0.873",\ + "0.5, 0.544, 0.911"); } cell_fall(CELL_TABLE) { - values("0.857, 0.981, 1.971",\ - "0.859, 0.984, 1.976",\ - "0.911, 1.033, 2.025"); + values("0.573, 0.649, 1.249",\ + "0.576, 0.651, 1.252",\ + "0.616, 0.69, 1.289"); } rise_transition(CELL_TABLE) { - values("0.182, 0.331, 1.876",\ - "0.183, 0.333, 1.876",\ - "0.186, 0.336, 1.876"); + values("0.153, 0.232, 1.084",\ + "0.153, 0.233, 1.084",\ + "0.156, 0.236, 1.084"); } fall_transition(CELL_TABLE) { - values("0.361, 0.487, 2.459",\ - "0.365, 0.488, 2.459",\ - "0.369, 0.496, 2.459"); + values("0.277, 0.355, 1.499",\ + "0.277, 0.357, 1.499",\ + "0.278, 0.362, 1.499"); } } } @@ -174,28 +174,28 @@ cell (sram_2_16_1_scn3me_subm){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186"); + values("0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027"); + values("0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027"); } } timing(){ timing_type : hold_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021"); + values("-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009"); } fall_constraint(CONSTRAINT_TABLE) { - values("-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175"); + values("-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132"); } } } @@ -208,28 +208,28 @@ cell (sram_2_16_1_scn3me_subm){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186"); + values("0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027"); + values("0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027"); } } timing(){ timing_type : hold_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021"); + values("-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009"); } fall_constraint(CONSTRAINT_TABLE) { - values("-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175"); + values("-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132"); } } } @@ -241,28 +241,28 @@ cell (sram_2_16_1_scn3me_subm){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186"); + values("0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027"); + values("0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027"); } } timing(){ timing_type : hold_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021"); + values("-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009"); } fall_constraint(CONSTRAINT_TABLE) { - values("-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175"); + values("-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132"); } } } @@ -274,28 +274,28 @@ cell (sram_2_16_1_scn3me_subm){ timing_type : setup_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186",\ - "0.082, 0.088, 0.186"); + values("0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149",\ + "0.076, 0.076, 0.149"); } fall_constraint(CONSTRAINT_TABLE) { - values("0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027",\ - "0.021, 0.021, 0.027"); + values("0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027",\ + "0.039, 0.039, 0.027"); } } timing(){ timing_type : hold_rising; related_pin : "clk"; rise_constraint(CONSTRAINT_TABLE) { - values("0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021",\ - "0.009, 0.015, 0.021"); + values("-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009",\ + "-0.004, -0.004, 0.009"); } fall_constraint(CONSTRAINT_TABLE) { - values("-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175",\ - "-0.065, -0.071, -0.175"); + values("-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132",\ + "-0.052, -0.059, -0.132"); } } } @@ -308,20 +308,20 @@ cell (sram_2_16_1_scn3me_subm){ timing_type :"min_pulse_width"; related_pin : clk; rise_constraint(scalar) { - values("3.125"); + values("2.344"); } fall_constraint(scalar) { - values("3.125"); + values("2.344"); } } timing(){ timing_type :"minimum_period"; related_pin : clk; rise_constraint(scalar) { - values("6.25"); + values("4.688"); } fall_constraint(scalar) { - values("6.25"); + values("4.688"); } } } diff --git a/technology/scn3me_subm/models/ff/nmos.sp b/technology/scn3me_subm/models/ff/nmos.sp index 1d5f74a6..70ffd267 100644 --- a/technology/scn3me_subm/models/ff/nmos.sp +++ b/technology/scn3me_subm/models/ff/nmos.sp @@ -5,6 +5,6 @@ * models from MOSIS or SCN3ME ********************************************* -.MODEL n NMOS (LEVEL=49 VTO=0.669845 KP=113.7771E-6 -+ NSUB=6E16 U0=461 GAMMA=0.5705 TOX=13.9n) +.MODEL n NMOS (LEVEL=49 VTHO=0.669845 KP=113.7771E-6 ++ NSUB=6E16 U0=461 K1=0.5705 TOX=13.9n) diff --git a/technology/scn3me_subm/models/ff/pmos.sp b/technology/scn3me_subm/models/ff/pmos.sp index 6ac2a4e6..ee0d9691 100644 --- a/technology/scn3me_subm/models/ff/pmos.sp +++ b/technology/scn3me_subm/models/ff/pmos.sp @@ -5,5 +5,5 @@ * models from MOSIS or SCN3ME ********************************************* -.MODEL p PMOS (LEVEL=49 VTO=-0.921340 KP=366.0244-6 -+ NSUB=6E16 U0=211 GAMMA=0.2370 TOX=13.9n) +.MODEL p PMOS (LEVEL=49 VTHO=-0.322431 KP=366.0244-6 ++ NSUB=6E16 U0=212 K1=0.0821 TOX=13.9n) diff --git a/technology/scn3me_subm/models/nom/nmos.sp b/technology/scn3me_subm/models/nom/nmos.sp index 23ecc1bc..d83289e8 100644 --- a/technology/scn3me_subm/models/nom/nmos.sp +++ b/technology/scn3me_subm/models/nom/nmos.sp @@ -5,5 +5,5 @@ * models from MOSIS or SCN3ME ********************************************* -.MODEL n NMOS (LEVEL=49 VTO=0.669845 KP=113.7771E-6 -+ NSUB=6E16 U0=458 GAMMA=0.5705 TOX=13.9n) +.MODEL n NMOS (LEVEL=49 VTHO=0.669845 KP=113.7771E-6 ++ NSUB=6E16 U0=458 K1=0.5705 TOX=13.9n) diff --git a/technology/scn3me_subm/models/nom/pmos.sp b/technology/scn3me_subm/models/nom/pmos.sp index c5bc4d59..ee0d9691 100644 --- a/technology/scn3me_subm/models/nom/pmos.sp +++ b/technology/scn3me_subm/models/nom/pmos.sp @@ -5,5 +5,5 @@ * models from MOSIS or SCN3ME ********************************************* -.MODEL p PMOS (LEVEL=49 VTO=-0.921340 KP=366.0244-6 -+ NSUB=6E16 U0=212 GAMMA=0.2370 TOX=13.9n) +.MODEL p PMOS (LEVEL=49 VTHO=-0.322431 KP=366.0244-6 ++ NSUB=6E16 U0=212 K1=0.0821 TOX=13.9n) diff --git a/technology/scn3me_subm/models/ss/nmos.sp b/technology/scn3me_subm/models/ss/nmos.sp index b882ad6d..667667cd 100644 --- a/technology/scn3me_subm/models/ss/nmos.sp +++ b/technology/scn3me_subm/models/ss/nmos.sp @@ -5,6 +5,6 @@ * models from MOSIS or SCN3ME ********************************************* -.MODEL n NMOS (LEVEL=49 VTO=0.669845 KP=113.7771E-6 -+ NSUB=6E16 U0=459 GAMMA=0.5705 TOX=13.9n) +.MODEL n NMOS (LEVEL=49 VTHO=0.669845 KP=113.7771E-6 ++ NSUB=6E16 U0=460 K1=0.5705 TOX=13.9n) diff --git a/technology/scn3me_subm/models/ss/pmos.sp b/technology/scn3me_subm/models/ss/pmos.sp index c5bc4d59..ee0d9691 100644 --- a/technology/scn3me_subm/models/ss/pmos.sp +++ b/technology/scn3me_subm/models/ss/pmos.sp @@ -5,5 +5,5 @@ * models from MOSIS or SCN3ME ********************************************* -.MODEL p PMOS (LEVEL=49 VTO=-0.921340 KP=366.0244-6 -+ NSUB=6E16 U0=212 GAMMA=0.2370 TOX=13.9n) +.MODEL p PMOS (LEVEL=49 VTHO=-0.322431 KP=366.0244-6 ++ NSUB=6E16 U0=212 K1=0.0821 TOX=13.9n)

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