Browse Source

removed unnecessary movements.csv and get_movements. It is duplicated by match1. And finished the unit test for preprocess_daily.py

master
김선중 1 year ago
parent
commit
0a289fe4ea
25 changed files with 19340 additions and 93 deletions
  1. +1
    -1
      Analysis/0202_config_/config.json
  2. +40
    -0
      Archives/Scripts/fetch_tables_1.py
  3. +997
    -1
      Archives/Scripts/preprocess_daily.ipynb
  4. +20
    -0
      Archives/Scripts/scheduler_example.py
  5. +759
    -0
      Data/tables/20240206_155342/S_INT_CONFIG.csv
  6. +3909
    -0
      Data/tables/20240206_155342/S_INT_PHASE_CONFIG.csv
  7. +5
    -0
      Data/tables/20240206_155342/S_INT_TPLAN.csv
  8. +8
    -0
      Data/tables/20240206_155342/S_SA_CYCLE_PLAN.csv
  9. +18
    -0
      Data/tables/20240206_155342/S_SA_DPLAN.csv
  10. +18
    -0
      Data/tables/20240206_155342/S_SA_WPLAN.csv
  11. +11099
    -0
      Data/tables/20240206_155342/S_TOD_HIS.csv
  12. BIN
      Documents/1127_table_definition/table_definition_v0.8.4.xlsx
  13. BIN
      Documents/김선중_신호생성(240206).pptx
  14. +0
    -33
      Intermediates/movements.csv
  15. +1
    -0
      Results/issues_fetch_tables.txt
  16. +716
    -0
      Results/sn_1704429000.add.xml
  17. +716
    -0
      Results/sn_1704431100.add.xml
  18. +716
    -0
      Results/sn_1704449700.add.xml
  19. +13
    -0
      Scripts/config.json
  20. +5
    -0
      Scripts/credentials.json
  21. +131
    -0
      Scripts/fetch_tables.py
  22. +75
    -0
      Scripts/fetch_tables_sc.py
  23. +29
    -17
      Scripts/generate_signals.py
  24. +64
    -41
      Scripts/preprocess_daily.py
  25. BIN
      requirements.txt

+ 1
- 1
Analysis/0202_config_/config.json View File

@ -1 +1 @@
{"user": "example_user", "password": "example_password", "host": "example_host", "database": "example_database"}
{"user": "example_user", "password": "example_password", "host": "example_host", "database": "example_database"}

+ 40
- 0
Archives/Scripts/fetch_tables_1.py View File

@ -0,0 +1,40 @@
# (siggen) PS C:\Github\siggen> python .\Scripts\fetch_tables.py
import pyodbc
import os, json, csv
from tqdm import tqdm
from datetime import datetime
starting_time = datetime.now()
credentials_path = os.path.join(os.getcwd(), 'Scripts', 'credentials.json')
with open(credentials_path, 'r') as file:
credentials = json.load(file)
DSNNAME = credentials["DSNNAME"]
DBUSER = credentials["DBUSER"]
DBPWD = credentials["DBPWD"]
# 데이터베이스 연결
cnxn = pyodbc.connect(f'DSN={DSNNAME};UID={DBUSER};PWD={DBPWD};charset=utf-8')
cursor = cnxn.cursor()
schema = 'snits_siggen'
tables = ['inter_info', 'plan']
base_dir = os.path.join(os.getcwd(), 'Data', 'fetched_tables')
for table in tables:
# 테이블 데이터 다운로드
cursor.execute(f"SELECT * FROM {schema}.{table}")
csv_file_path = os.path.join(base_dir, f"{table}.csv")
with open(csv_file_path, 'w', newline='', encoding='utf-8-sig') as csvfile:
csv_writer = csv.writer(csvfile)
columns = [column[0] for column in cursor.description]
csv_writer.writerow(columns)
for row in cursor.fetchall():
csv_writer.writerow(row)
cnxn.close()
print("elapsed time :", datetime.now() - starting_time)

+ 997
- 1
Archives/Scripts/preprocess_daily.ipynb
File diff suppressed because it is too large
View File


+ 20
- 0
Archives/Scripts/scheduler_example.py View File

@ -0,0 +1,20 @@
import sched
import time
from datetime import datetime
# 스케줄러 객체 생성
scheduler = sched.scheduler(time.time, time.sleep)
def print_current_time(sc):
print("Current Time:", datetime.now().strftime("%Y-%m-%d %H:%M:%S"))
# 다음 실행을 위해 5초 후에 이 작업을 다시 예약
sc.enter(5, 1, print_current_time, (sc,))
if __name__ == "__main__":
# 현재 초(second)를 기준으로 다음 5초 배수 시각까지의 지연 시간 계산
now = datetime.now()
initial_delay = 5 - (now.second % 5)
# 초기 작업 예약
scheduler.enter(initial_delay, 1, print_current_time, (scheduler,))
# 스케줄러 실행
scheduler.run()

+ 759
- 0
Data/tables/20240206_155342/S_INT_CONFIG.csv View File

@ -0,0 +1,759 @@
INT_NO,INT_NAME,SA_NO,INT_LAT,INT_LNG,IS_SMART
1,도촌4거리,1,37.41405,127.14385,1
2,동원SK삼거리(아시아 주유소),1,37.41282,127.14382,
3,상탑4거리,0,37.40809,127.14296,
4,돌마4거리(상탑3거리),0,37.40683,127.14201,1
5,상탑초3거리,0,37.40561,127.14473,
6,야탑3치안센터(상탑 P.B),0,37.40549,127.14823,
7,테크노 단일로,0,37.40486,127.15121,
8,분당테크노파크A동,0,37.40499,127.15034,
9,분당테크노파크C동(분당테크노파크),0,37.40545,127.15526,
10,야탑차량등록사업소,0,37.40682,127.1547,
11,야탑보듬이,0,37.40636,127.1522,
12,대원빌라4거리,0,37.40631,127.14852,
13,양촌어린이공원,0,37.40677,127.14667,
14,상탑초4거리,0,37.40711,127.14559,
15,중탑3거리,0,37.41473,127.13905,
16,중탑4거리,0,37.41307,127.13866,
17,야탑3동주민센터(야탑3동사무소),0,37.41064,127.13813,
18,목련4거리,0,37.40952,127.13801,
19,목련3거리,0,37.40777,127.13789,
20,목련마을단일로,0,37.40918,127.13983,
21,성남세관3거리,0,37.40858,127.14167,
22,매화마을주공310동(매화마을주공3단지),0,37.41447,127.14114,
23,매화마을4단지,0,37.41288,127.14243,
24,여수동입구4거리,0,37.41683,127.13394,
25,매화4거리,0,37.4134,127.1339,
26,분당성마르코성당(야탑성당),0,37.41085,127.13388,
27,송림4거리(구송림고4거리),0,37.40944,127.13386,
28,하탑3거리(하탑도서관),0,37.40737,127.13385,
29,도레미유치원,0,37.40971,127.13598,
30,매화마을3거리,0,37.41333,127.13637,
31,야탑소방서,0,37.41635,127.13569,
32,야탑4거리,0,37.41688,127.12879,1
33,장미4거리,0,37.41384,127.12876,
34,야탑역 단일로,0,37.41214,127.12875,
35,야탑역4거리,0,37.40986,127.12873,1
36,하탑4거리(하탑지하차도),0,37.40543,127.12868,1
37,야탑중학교,0,37.41694,127.13121,
38,야탑시그마Ⅲ 3거리,0,37.41383,127.13048,
39,장미마을단일로,0,37.41376,127.1318,
40,돌마초교,0,37.40978,127.13081,
41,야탑 현대APT,0,37.40951,127.13261,
42,807의무경찰대(807전경대),0,37.40631,127.13138,
43,터미널3거리,0,37.41384,127.12608,
44,터미널4거리,0,37.41237,127.12605,
45,분당차여성병원4거리(경찰서4거리),0,37.41137,127.12604,
46,차병원3거리,0,37.40983,127.12603,
47,야탑지구대 사거리,0,37.40988,127.12711,
48,장미동부APT,0,37.41682,127.12715,
49,장미코오롱아파트(야탑초교),0,37.41678,127.12456,
50,사송교4거리,0,37.41385,127.12258,
51,대우정비사업소,0,37.41503,127.11949,
52,재활용센터,0,37.41426,127.12008,
53,사송교3거리,0,37.41309,127.1208,
54,탄천운동장 동문(운동장서문),0,37.41162,127.12176,
55,보건소3거리,0,37.41137,127.12402,
56,탄천운동장 남문,0,37.40872,127.12109,
57,탄천운동장4거리(탑4거리),0,37.40918,127.12302,
58,야탑교4거리,0,37.40957,127.12479,
59,늘사랑어린이집(탑마을 단일로),0,37.40711,127.1236,
60,하탑초교,0,37.40731,127.12543,0
61,벌말4거리(보뜰4거리),0,37.40546,127.11914,1
62,탑대우APT입구(장미대우아파트입구),0,37.40547,127.12066,
63,아름마을태영APT입구(탑대우APT),0,37.40546,127.12156,
64,아름4거리,0,37.40544,127.1236,
65,탑골4거리,0,37.40544,127.12545,
66,아름건영아파트,0,37.40369,127.12359,
67,꾸러기유치원,0,37.40369,127.12545,
68,매송초교,0,37.40111,127.12358,
69,이매중3거리,0,37.40098,127.12541,
70,이매풍림5단지,0,37.39784,127.12353,
71,방아다리4거리,0,37.39921,127.12358,
72,물방아4거리,0,37.39919,127.12539,
73,이매소방서,0,37.39918,127.1275,0
74,물방아3거리,0,37.39919,127.1287,1
75,성남아트센터(문화예술회관),0,37.39925,127.12925,
76,매송중학교,0,37.3969,127.12356,
77,이매초교,0,37.39678,127.12539,
78,이매교4거리,0,37.39473,127.12351,
79,안말4거리,0,37.39472,127.12537,
80,이매성지아파트,0,37.39472,127.12678,0
81,이매역4거리(안말3거리),0,37.39471,127.12828,1
82,안말초 단일로,0,37.39309,127.1251,
83,안말초교3거리,0,37.39233,127.12447,
84,이매코오롱APT,0,37.39146,127.12543,
85,이매동신아파트,0,37.39074,127.1262,
86,이매촌청구,0,37.39073,127.12676,
87,누엣길공원,0,37.39008,127.12533,0
88,매송4거리,0,37.39143,127.12022,1
89,LG분당에클라트(양현4거리),0,37.39011,127.12244,
90,분당제생병원3거리,0,37.38822,127.12076,
91,마사회3거리,0,37.38731,127.11993,
92,양현4거리(이매촌한신4R),0,37.38896,127.12377,
93,분당제생병원4거리,0,37.38731,127.12172,
94,롯데마트4거리,0,37.38659,127.12072,
95,한신아파트3거리(서현산업은행),0,37.38782,127.12507,
96,오일뱅크4거리,0,37.38736,127.12439,
97,분당우체국,0,37.38686,127.12371,
98,우리은행4거리,0,37.38629,127.12289,
99,하나은행4거리,0,37.38555,127.12186,
100,나우병원4거리,0,37.38446,127.12038,
101,서현농협3거리,0,37.38355,127.12139,0
102,서현교4거리,0,37.38677,127.11658,
103,분당소방서3거리(서현소방서3거리),0,37.38539,127.11812,
104,분당구청4거리,0,37.38399,127.11973,
105,분당구청 단일로,0,37.38309,127.12072,
106,서현4거리,0,37.38222,127.12171,
107,이매4거리,0,37.38621,127.12685,1
108,수내4거리,0,37.38402,127.11402,1
109,수내교4거리(조선내화4거리),0,37.38174,127.11658,1
110,경동빌딩(분당구청 단일로),0,37.38083,127.11758,0
111,분당4거리,0,37.37998,127.11857,1
112,서현먹자골목 입구,0,37.38386,127.13056,
113,서현도서관3거리(먹자골SK주유소),0,37.38372,127.13337,
114,남해수산3거리,0,37.38334,127.13591,
115,새마을4거리,0,37.38313,127.13834,
116,서현포스파크,0,37.38315,127.13968,
117,은수사3거리,0,37.38327,127.1433,
118,새마을연수원사거리(수도병원입구),0,37.38376,127.15048,
119,안골입구4거리,0,37.38285,127.1322,
120,서현시범단지우성APT,0,37.38178,127.13072,
121,올림픽스포츠센터,0,37.38038,127.12873,
122,서현시범단지한양APT,0,37.37947,127.12753,
123,서현3거리,0,37.3784,127.12595,
124,서현중학교 단일로,0,37.38128,127.13396,
125,분당어린이공원,0,37.37856,127.13123,0
126,서당4거리,0,37.37942,127.13604,1
127,돌마지하차도,0,37.37744,127.13323,0
128,효자촌4거리,0,37.37539,127.1304,1
129,당촌초교,0,37.37361,127.13238,0
130,서당3거리(서당동입구),0,37.37629,127.13959,1
131,동남프라자,0,37.37399,127.1364,
132,서당삼환APT,0,37.3731,127.13517,0
133,장안4거리,0,37.37223,127.13395,1
134,장안동3거리,0,37.37156,127.13301,
135,장안동입구4거리,0,37.37455,127.14238,
136,장안교3거리(장안동 중앙유치원),0,37.37287,127.14158,
137,장안동건영113동,0,37.37214,127.14073,
138,대진고 후문,0,37.37014,127.13793,
139,대진고4거리,0,37.3695,127.13703,
140,장안초등학교,0,37.37166,127.14392,0
141,장안중3거리,0,37.37213,127.1472,1
142,장안타운건영107동,0,37.37096,127.14467,
143,장안타운123동,0,37.37039,127.14388,
144,태현공원4거리,0,37.36941,127.14249,
145,장안로삼거리(신동아빌라),0,37.36777,127.14023,
146,장안건영빌라 단일로,0,37.371,127.14761,0
147,요한성당3거리,0,37.36886,127.14863,1
148,지역난방공사,0,37.36759,127.14583,
149,지역난방 삼거리,0,37.36794,127.14639,
150,새롬교회(광림교회),0,37.36639,127.14208,
151,현대오피스빌딩(APUS 3거리),0,37.38017,127.11438,
152,휴맥스빌리지(롯데백화점),0,37.37856,127.11217,0
153,초림3거리,0,37.37539,127.12181,1
154,수내동 우리은행,0,37.37404,127.11996,
155,롯데파크타운,0,37.37351,127.1192,
156,내정4거리,0,37.37165,127.11659,
157,내정어린이공원,0,37.37217,127.12208,0
158,샛별4거리,0,37.37198,127.12565,1
159,수내지하차도,0,37.37019,127.12313,0
160,푸른마을4거리,0,37.3685,127.12083,1
161,정자한일아파트,0,37.36778,127.12169,
162,수내중 단일로,0,37.37046,127.12731,
163,샛별3거리,0,37.36914,127.12879,
164,한방병원 단일로,0,37.36781,127.12787,
165,한방병원4거리,0,37.3671,127.12727,
166,수내파출소(수내 P.B),0,37.36637,127.12627,
167,푸른마을삼거리(연정교회3거리),0,37.36515,127.12458,
168,한솔청구아파트,0,37.36438,127.12367,
169,불정3거리,0,37.36347,127.12316,
170,정든마을우성616동(우성116동),0,37.36235,127.12311,
171,정자동아2차,0,37.36101,127.1231,
172,분당중앙고 삼거리,0,37.36013,127.12301,
173,분당중앙고,0,37.35944,127.12231,
174,정자동아아파트,0,37.35923,127.12034,
175,한솔삼거리(한솔마을3거리),0,37.36857,127.11478,
176,느티마을4단지,0,37.36724,127.1148,
177,한솔6단지(정자동사무소),0,37.36619,127.1148,
178,신기4거리,0,37.36346,127.1148,
179,한솔마을5단지(한솔마을단일로),0,37.36348,127.11725,
180,정든마을4거리,0,37.36348,127.11906,
181,불정4거리,0,37.35921,127.11908,1
182,탄천초교,0,37.3617,127.11482,
183,계원삼거리(한국통신4거리),0,37.35995,127.11483,
184,잡월드 사거리,0,37.3784,127.10897,1
185,백현교4거리,0,37.37719,127.11034,
186,삼성로얄팰리스(판테온정문),0,37.37633,127.11132,
187,정자4거리,0,37.37545,127.11227,1
188,백궁교(판테온후문),0,37.37525,127.10981,
189,백궁4거리,0,37.37368,127.10981,
190,백현환기소3거리,0,37.37245,127.10422,1
191,늘푸른고등학교 교차로(백궁주유소4),0,37.37244,127.10593,
192,백궁3거리,0,37.37243,127.10828,1
193,상록마을아이파크분당1(백궁현대 ),0,37.37095,127.10592,
194,아이파크분당3단지,0,37.36939,127.10593,
195,마테오성당(백현중학교),0,37.37181,127.10983,
196,백현중학교 삼거리,0,37.37047,127.10982,
197,백현초등학교,0,37.37193,127.11223,
198,백현어린이공원,0,37.37132,127.11183,
199,젤존타워Ⅰ(백궁우체국4거리),0,37.36853,127.10593,
200,궁내4거리,0,37.36852,127.10808,1
201,느티마을4거리,0,37.36854,127.10984,0
202,느티마을 안촌유치원,0,37.36855,127.11241,
203,아름방송4거리,0,37.36666,127.10594,
204,정자역 단일로,0,37.36614,127.1081,
205,분당경찰서4거리(벤체타운4거리),0,37.36563,127.10595,
206,상록마을 321동,0,37.36483,127.10981,
207,정자지하차도3거리(정자환기소3거리),0,37.36347,127.10461,1
208,정자1동주민센터(연강병원4거리),0,37.36345,127.10596,0
209,금곡교4거리,0,37.36344,127.10811,1
210,상록4거리(상록마을입구4거리),0,37.36347,127.10982,0
211,상록마을단일로,0,37.36346,127.11237,
212,상록마을302동 단일로,0,37.36347,127.11306,
213,정자대림아크로텔 단일로,0,37.36232,127.10709,
214,금곡주유소3거리,0,37.3599,127.10424,
215,정자일로1사거리(청솔공업사 4거리),0,37.35991,127.10599,
216,불정교4거리,0,37.3599,127.10812,1
217,불정교3거리(주택전시관4거리),0,37.35994,127.10986,0
218,순복음교회앞,0,37.35995,127.11176,
219,늘푸른초등학교,0,37.35788,127.106,
220,정자일로2사거리(보성APT 4거리),0,37.35664,127.10601,0
221,임광보성아파트(금곡보성아파트),0,37.35665,127.1072,
222,금곡4거리,0,37.35666,127.10849,
223,분당경영고(분당 정보산업고),0,37.35662,127.11017,
224,청솔주공5단지,0,37.35565,127.11268,
225,청솔초교,0,37.35451,127.11472,
226,한국가스공사,0,37.35468,127.1184,
227,돌마교4거리,0,37.3532,127.11711,
228,우방우성102동,0,37.35253,127.11838,
229,파랑새공원단일로,0,37.35495,127.106,0
230,청솔유천화인아파트 정문(한전기공),0,37.35433,127.106,0
231,정자일로3사거리(YMCA4거리),0,37.35342,127.10601,
232,청솔마을4거리,0,37.35344,127.10888,
233,청솔종합사회복지관(청솔마을 단일로),0,37.35333,127.11091,
234,이솔유치원(청솔마을 8-9단지),0,37.3527,127.11227,
235,코오롱 트리폴리스,0,37.35138,127.10627,
236,금곡교차로(금곡I/C 3거리),0,37.35007,127.10432,1
237,머내공원4거리(아울렛4거리),0,37.35002,127.10638,
238,미금역4거리,0,37.35004,127.1089,1
239,까치마을신원아파트308동(골드프라자),0,37.35003,127.11202,
240,까치마을4거리,0,37.35102,127.11523,
241,까치마을 단일로,0,37.34928,127.11608,
242,꿈터유치원,0,37.34757,127.11202,
243,미금4거리,0,37.34584,127.10891,
244,하얀마을6단지,0,37.34602,127.11345,
245,하얀마을4거리,0,37.34652,127.11608,
246,안디옥감리교회,0,37.34651,127.11836,
247,하얀마을3거리,0,37.34648,127.12008,
248,오리초교 단일로,0,37.34472,127.1161,
249,동막교삼거리,0,37.34359,127.10891,
250,시그마3거리,0,37.34265,127.10451,
251,시그마Ⅱ 4거리,0,37.34265,127.10591,
252,동막교4거리,0,37.34262,127.10891,1
253,LH오리사옥 정문3거리,0,37.34249,127.11001,0
254,구미교4거리,0,37.34219,127.11609,
255,구미그랜드빌라,0,37.34352,127.11909,
256,성남우편집중국3거리,0,37.34073,127.10895,
257,LH오리사옥 후문(주공후문3거리),0,37.34072,127.10963,
258,LH스포츠센터(주택문화관),0,37.34072,127.11029,
259,오리공원3거리(구미동 YMCA),0,37.34074,127.11169,
260,까르프3거리,0,37.33968,127.10448,
261,NH주유소4거리(하나로후문4거리),0,37.3397,127.10594,
262,오리홈플러스4거리(까르프4거리),0,37.33969,127.10739,
263,오리역3거리,0,37.33971,127.10895,
264,벽산3거리,0,37.33842,127.10472,
265,하나로마트 정문,0,37.33733,127.10673,
266,농수산물센터4거리(벽산사거리),0,37.33599,127.10895,1
267,온세통신3거리,0,37.33589,127.11174,
268,무지개 LG아파트,0,37.33644,127.11366,
269,오리3거리,0,37.3381,127.10895,1
270,성우스타우스(오리먹자골입구),0,37.33809,127.11029,
271,오리1교 4거리(오리교 4거리),0,37.33811,127.11175,
272,오리2교 4거리(오리교 4거리),0,37.33811,127.11311,
273,미금교3거리,0,37.35053,127.12005,
274,서울대병원 단일로,0,37.35063,127.12208,
275,서울대병원 입구,0,37.35019,127.12331,
276,장애인고용공단,0,37.3484,127.12391,
277,서울시니어스타워(서울대병원 주차장),0,37.34732,127.12413,
278,구미중학교(구미중 단일로),0,37.34501,127.12462,0
279,구미4거리,0,37.34343,127.12601,
280,구미제일아파트,0,37.34272,127.12476,0
281,구미라이프APT,0,37.34156,127.12347,
282,구미동사무소,0,37.33974,127.12167,
283,구미파출소3거리(구미 P.B),0,37.33909,127.12073,
284,구미초교3거리,0,37.33817,127.11905,
285,구미초정문,0,37.33753,127.11905,
286,구미초교 단일로,0,37.33811,127.1176,
287,구미공원4거리,0,37.34041,127.11612,
288,구미주공4단지,0,37.33923,127.11615,
289,무지개4거리,0,37.33813,127.11614,1
290,구미대림APT,0,37.33659,127.11673,
291,구미동대림APT4거리,0,37.33576,127.11771,
292,무지개12단지(주공 두산아파트),0,37.33496,127.11816,
293,미금로3거리,0,37.33406,127.11809,
294,대림아파트 후문,0,37.33455,127.11598,
295,불곡초교 단일로,0,37.34037,127.11866,0
296,금곡I/C분당진입,0,37.35421,127.10072,0
297,운중교차로 사거리,0,37.39116,127.06308,
298,상상운 삼거리,0,37.39144,127.06527,
299,운중초교 사거리,0,37.39144,127.06801,
300,중산운 사거리,0,37.39173,127.07583,
301,운중동 주민센타,0,37.3916,127.07834,
302,산운 사거리,0,37.39138,127.08157,
303,하산운 사거리,0,37.39056,127.08547,1
304,판교 도서관 사거리,0,37.38949,127.09017,
305,도서관 삼거리,0,37.38873,127.0939,
306,원마을 8단지 사거리(점멸),0,37.38686,127.09744,
307,광암사거리,0,37.38826,127.09753,
308,낙생농협 4거리,0,37.38963,127.09763,
309,원마을 9단지 사거리,0,37.39073,127.09772,
310,꿈꾸는교회 삼거리,0,37.39273,127.09827,
311,원마을 10단지 3거리,0,37.3934,127.09824,
312,낙생초 삼거리,0,37.39472,127.09817,
313,불꽃교회 삼거리,0,37.39637,127.098,
314,낙원중 삼거리,0,37.39846,127.09672,
315,원마을 11단지 삼거리,0,37.39917,127.0953,
316,성내미 사거리,0,37.3999,127.09474,1
317,원마을 12단지 사거리(점멸),0,37.4006,127.09417,
318,원마을 13단지 삼거리(소등),0,37.40271,127.0925,
319,영운정사 입구 삼거리,0,37.3989,127.09277,
320,판교로 2사거리,0,37.38881,127.08485,
321,하산운 삼거리,0,37.38703,127.08421,
322,산운길3 삼거리,0,37.39319,127.07594,
323,산운마을 10단지 삼거리,0,37.39073,127.07574,
324,판교원2 사거리,0,37.3893,127.07557,
325,두밀 사거리(국은교),0,37.38793,127.07504,
326,산운마을 13단지 1,0,37.3869,127.07461,
327,산운마을 13단지 2,0,37.38568,127.07424,
328,산운마을 14단지,0,37.3842,127.07427,
329,연구원 사거리(점멸),0,37.39221,127.06352,
330,월든힐스 2단지(점멸),0,37.3928,127.06516,
331,월든힐스 3단지(점멸),0,37.39263,127.06711,
332,운중초교 정문 삼거리,0,37.39221,127.0681,
333,산운마을 4단지 단일로(점멸),0,37.39074,127.06788,
334,운중초교 후문 삼거리,0,37.39299,127.06917,
335,서판교ic 사거리,0,37.38837,127.07002,1
336,원마을 3단지 북문(점멸),0,37.3886,127.08579,
337,원마을 3단지 서문(점멸),0,37.38769,127.08689,
338,판교중 사거리(점멸),0,37.38672,127.08653,
339,판교 도서관앞(점멸),0,37.39142,127.09085,
340,도서관 주택가 사거리(점멸),0,37.39056,127.09054,
341,판교어린이집 3거리(점멸),0,37.38635,127.08803,
342,원마을 5단지 사거리,0,37.38776,127.08956,
343,판교초교 삼거리,0,37.38636,127.08909,
344,원마을 7단지 단일로(점멸),0,37.3863,127.09315,
345,낙원중 입구(점멸),0,37.39764,127.0954,0
346,산운초 단일로,0,37.389,127.07848,
347,신미주 1단지 4거리,0,37.40675,127.11545,
348,삼평동사무소,0,37.40583,127.11546,
349,송현초 단일로,0,37.40525,127.11554,
350,송현초 4거리(사송사거리),0,37.40432,127.11617,
351,산운교회 4거리,0,37.40266,127.11685,
352,봇들마을 6단지,0,37.40137,127.11686,
353,삼평중 삼거리,0,37.39985,127.11683,1
354,구숯내교삼거리,0,37.39834,127.11682,
355,보평초 4거리,0,37.39622,127.11682,
806,대원 사거리,30,37.43346,127.1597,
808,청소년수련관 사거리,30,37.43054,127.15405,
809,아튼빌정문 사거리,30,37.42996,127.1517,
810,아튼빌후문 삼거리,30,37.42935,127.14925,
356,보평초정문 단일로,0,37.39589,127.11843,
357,보평중.고 사거리,0,37.39333,127.11682,
358,동판교로사거리(세계로사거리),0,37.39189,127.11682,
359,백현마을 3.4단지 입구,0,37.39057,127.11681,
360,화랑초교 단일로,0,37.38885,127.11634,
361,재넘어 삼거리,0,37.38819,127.11538,
362,백현동 주택단지 사거리,0,37.38795,127.11442,
363,봇들 사거리,0,37.40323,127.11291,1
364,삼평 사거리(소방서),0,37.39985,127.11296,
365,봇들교 사거리,0,37.39832,127.11296,
366,판교역 사거리,0,37.39622,127.11294,1
367,광장로사거리(백현마을 1단지),0,37.39376,127.11294,
368,느티나무사거리(광장로사거리),0,37.39174,127.11294,1
369,백현 사거리(신백현초),0,37.38794,127.11293,
370,판교테크노13사거리(점멸),0,37.40397,127.10968,
371,판교테크노14사거리(테크윈),0,37.40323,127.10969,
372,SK캐미컬 사거리,0,37.40243,127.10967,
373,안철수연구소 사거리,0,37.40094,127.10967,
374,판교테크노3사거리(안철수),0,37.39984,127.10967,1
375,동안교 삼거리,0,37.39775,127.10968,
376,동안 사거리,0,37.39623,127.10968,
377,환승주차장 삼거리,0,37.39375,127.10968,
378,낙생지하차도 삼거리,0,37.38968,127.1089,
379,낙생대공원 삼거리,0,37.38795,127.10843,
380,휴먼시아8단지 삼거리,0,37.38733,127.10842,
381,흰돌교회 단일로 1,0,37.38693,127.10842,
382,흰돌교회 단일로 2(점멸),0,37.38612,127.10841,
383,휴먼시아9단지 사거리,0,37.38525,127.1084,
384,백현야구장 삼거리(점멸),0,37.38375,127.11074,
385,동안삼거리(한신교회),0,37.39833,127.11405,
386,롯데마트사거리(봇들마을8단지),0,37.39621,127.11404,
387,안철수연구소 삼거리(점멸),0,37.40095,127.11176,
388,판교역 1번출구 단일로,0,37.39622,127.11127,
389,판교역 3번출구 단일로,0,37.39373,127.11118,
390,백현동사무소,0,37.38793,127.11111,
391,신백현초 정문 단일로(점멸),0,37.38735,127.11132,
392,만도연구소(점멸),0,37.40517,127.10033,
393,포스코삼거리,0,37.40403,127.10221,
394,포스코단일로,0,37.40341,127.10253,
395,넥슨코리아(점멸),0,37.40237,127.10255,
396,NS홈쇼핑(점멸),0,37.40093,127.10255,
397,생태학습관 삼거리(점멸),0,37.39986,127.10372,
398,중앙일보(점멸),0,37.39985,127.10256,
399,우림사거리(점멸),0,37.40373,127.09902,
400,모다아울렛(점멸),0,37.40171,127.10018,
401,마이다스(점멸),0,37.40086,127.10079,
402,송암시스템(점멸),0,37.39984,127.10123,
403,판교테크노중앙사거리,0,37.40322,127.10495,1
404,판교테크노2사거리,0,37.39984,127.10647,
405,화랑공원 삼거리,0,37.39625,127.10693,
406,판교I/C 사거리,0,37.39424,127.10562,
407,낙생고 삼거리,0,37.3884,127.10158,1
408,백현고가 4거리,0,37.3816,127.10228,1
409,성남외고 삼거리,0,37.37823,127.10208,
410,은혜와진리교회 삼거리,0,37.37498,127.10176,
411,궁안동 입구 3거리,0,37.37053,127.10174,
412,삼다가 삼거리,0,37.36956,127.1017,
413,장수촌 단일로,0,37.36663,127.10159,
414,궁내T/G 사거리,0,37.36373,127.1016,
415,보바스기념병원 사거리,0,37.35754,127.10175,
416,로얄냉장 사거리,0,37.35345,127.1017,
417,동원동 삼거리,0,37.34472,127.1015,
418,금곡IC단일로,0,37.34221,127.10257,
419,금곡IC분당진입,0,37.35007,127.10298,
420,정신문화연구원,0,37.39141,127.05731,
421,송유관공사 삼거리,0,37.38044,127.04807,
422,이우학교 삼거리,0,37.35203,127.08585,
423,동막I/C 밑,0,37.35334,127.08143,
424,대장I/C 출구,0,37.36175,127.0678,
425,대장I/C 입구,0,37.35944,127.06821,
426,엔씨소프트단일,0,37.39984,127.10846,
427,스타트업캠퍼스 삼거리(점멸),0,37.40396,127.10648,
428,수질복원센터 삼거리,0,37.39789,127.10157,
429,판교주민센터 뒤(점멸),0,37.38962,127.09975,
430,낙생초교 후문(점멸),0,37.39473,127.10027,
431,낙생초교 정문(점멸),0,37.39473,127.09916,
432,성내미마을 삼거리(점멸),0,37.40161,127.09336,
433,지역난방공사 뒤(점멸),0,37.39504,127.10195,
434,운중교 삼거리(점멸),0,37.39018,127.06781,
435,서판교로 66번길,0,37.39272,127.09952,
436,이배재 사거리,0,37.43166,127.1791,1
437,반포산업 사거리,0,37.43113,127.1742,
438,코멕스 삼거리,0,37.43153,127.17216,
439,공단본부 사거리,0,37.43218,127.16762,
440,대원지구대 삼거리,0,37.43265,127.16595,1
441,한일레미콘 단일로,0,37.4329,127.16404,
442,대원 사거리,0,37.43342,127.15993,1
443,자이아파트 삼거리,0,37.43238,127.15772,
444,청소년수련관 사거리,0,37.43056,127.15404,1
445,아튼빌정문 사거리,0,37.42997,127.15166,
446,아튼빌후문 삼거리,0,37.42935,127.14916,
447,방송고 단일로,0,37.42887,127.14718,
448,검단초교 사거리,0,37.42829,127.14474,
449,하대원파출소 사거리,0,37.42826,127.14182,1
450,성남동현대아파트 삼거리,0,37.4291,127.14003,
451,중원구청 사거리,0,37.42972,127.13715,1
452,신광교회 단일로,0,37.42913,127.13533,
453,월드카센타 앞,0,37.42892,127.13326,
454,천주교성당 앞,0,37.4291,127.13151,
455,금광중 후문,0,37.44749,127.17104,
456,하원초교 삼거리,0,37.44719,127.16961,
457,신구대 사거리,0,37.44671,127.16731,
458,금광2동사무소 단일로,0,37.44611,127.1645,
459,금광1동사무소 사거리,0,37.44527,127.16184,
460,단대쇼핑뒤 단일로,0,37.44462,127.16,
461,해오름 사거리,0,37.44397,127.15791,
462,중앙동사무소 삼거리,0,37.44307,127.15574,
463,중앙동 사거리,0,37.44178,127.15285,
464,성남공판장 단일로,0,37.44064,127.15033,
465,제일초교 단일로,0,37.43958,127.14788,
466,성호시장 사거리,0,37.43845,127.14535,
467,성일여중고 사거리,0,37.43666,127.14201,
468,성일여고 삼거리,0,37.43602,127.14089,
469,성호지구대 단일로,0,37.4354,127.13976,
470,운동장후문 삼거리,0,37.43462,127.13811,
471,운동장 사거리,0,37.434,127.13504,0
472,삼영전자 앞,0,37.44397,127.15491,
473,세이브존 단일로,0,37.4432,127.15333,
474,우리은행 사거리,0,37.44263,127.15218,1
475,성남우체국,0,37.4418,127.1501,
476,신흥 사거리,0,37.43962,127.14455,
477,수진역 사거리,0,37.43762,127.14097,1
478,모란 사거리,0,37.43358,127.12892,1
479,둔전교회 앞,0,37.43342,127.12747,
480,고속화도로 출구,0,37.43248,127.11988,
481,탄천 삼거리,0,37.43242,127.11894,
482,동양공업사 사거리,0,37.4339,127.17895,
483,보통골 동성교통앞,0,37.43533,127.17884,
484,근로복지관 삼거리,0,37.43794,127.17861,1
485,궁전아파트 삼거리,0,37.44013,127.17895,
486,궁전아파트 사거리,0,37.44134,127.17911,
487,파리크라상 사거리,0,37.43504,127.17031,
488,구공단파출소 오거리,0,37.43776,127.17374,1
489,순흥물산 삼거리,0,37.43983,127.17611,
490,자동차검사소 삼거리,0,37.44189,127.17765,
491,중원경찰서 사거리,0,37.44232,127.16868,
492,금광1파출소 사거리,0,37.44514,127.16826,
493,신구대서문 삼거리,0,37.44873,127.16661,
494,금광중 단일로,0,37.44616,127.17079,
495,금광 삼거리,0,37.44793,127.17307,
496,래미안 삼거리,0,37.4502,127.17436,
497,금상초교 단일로,0,37.44253,127.16612,
498,금광주유소 단일로,0,37.4418,127.16417,
499,학년쇼핑 단일로,0,37.44036,127.1625,
500,단남아파트 단일로,0,37.44215,127.15962,
501,해오름주차장 사거리,0,37.44117,127.15994,
502,상대원고개 단일로,0,37.4398,127.15937,
503,상대원시장 삼거리,0,37.43639,127.15814,
504,상대원고개 농협단일로,0,37.43542,127.15812,
505,대원터널 앞,0,37.43257,127.16034,
506,도촌동입구 삼거리,0,37.41725,127.14993,
507,도촌동입구 사거리,0,37.41547,127.14781,
508,신지교회 단일로,0,37.43703,127.1463,
509,성일고 삼거리,0,37.43563,127.14727,
510,성남서고 삼거리,0,37.43471,127.1479,
511,하대원현대아파트 삼거리,0,37.43243,127.1507,
512,대하초교 단일로,0,37.43112,127.1512,
513,은행동순환로밑 삼거리,0,37.45313,127.17252,
514,중부초교 사거리,0,37.45086,127.16588,
515,은행동현대아파트 삼거리,0,37.45029,127.16312,
516,중앙병원 단일로,0,37.45362,127.16194,
517,해성주유소 사거리,0,37.42827,127.13787,
518,여수지하차도위 사거리,0,37.42154,127.12883,1
519,모란시장 사거리,0,37.42981,127.1294,1
520,모란 삼거리,0,37.43281,127.12903,
521,모란견인소 삼거리,0,37.43013,127.12016,
522,탄천로변 삼거리,0,37.43038,127.11889,
523,공단주유소 오거리,0,37.43461,127.17396,
524,우림라이온스밸리 사거리,0,37.43354,127.17112,
525,에이스경로당 사거리,0,37.44128,127.17143,
526,에스콰이어교회 앞,0,37.43963,127.17243,
527,중원보건소 삼거리,0,37.44173,127.17027,
528,갈현 삼거리,0,37.42247,127.17061,
529,중앙초교 앞,0,37.43529,127.14318,
530,여울목 삼거리,0,37.42021,127.15724,
531,도촌동 1단지앞,0,37.41485,127.14834,
532,도촌남로 사거리,0,37.41422,127.15018,
533,도촌프라자 단일로,0,37.41443,127.15194,
534,도촌중입구 사거리,0,37.41448,127.15508,
535,도촌초교 단일로,0,37.414,127.15724,0
536,도촌초교 삼거리,0,37.41361,127.15836,
537,도촌초교 정문,0,37.41417,127.15877,
538,도촌 수산횟집 앞,0,37.41575,127.15064,
539,도촌북로 사거리,0,37.41672,127.15094,
540,도촌우체국 삼거리,0,37.41709,127.15306,
541,도촌파출소 사거리,0,37.41737,127.15531,
542,도촌종합복지관삼거리,0,37.41518,127.15948,
543,901동앞 삼거리,0,37.41253,127.1634,
544,영생사업소 입구,0,37.4198,127.18303,
545,추모원 주차장입구,0,37.42085,127.1827,
546,장례식장 주차장입구,0,37.42182,127.18233,
547,마지로 신호등 1,0,37.42831,127.13139,
548,마지로 신호등 2,0,37.42817,127.13242,
549,마지로 신호등 3,0,37.4282,127.1337,
550,마지로 신호등 4,0,37.42832,127.13591,
551,보육시설 삼거리,0,37.44251,127.15655,
552,힐스테이 삼거리,0,37.43575,127.14989,
553,시청광장 삼거리,0,37.41879,127.12715,
554,시청정문 사거리,0,37.41879,127.12569,
555,시청공원 삼거리,0,37.41759,127.12456,
556,센트럴타운 사거리,0,37.41878,127.13063,
557,여수초교 삼거리,0,37.41877,127.13241,
558,여수공원 삼거리,0,37.41877,127.13394,
559,연꽃마을4단지 사거리,0,37.41866,127.13547,
560,옥토교회 사거리,0,37.4179,127.13735,
561,공영주차장 단일로,0,37.45737,127.16553,
562,은행2동주민센타 삼거리,0,37.45675,127.16663,
563,이원빌라 사거리,0,37.45613,127.16775,
564,두산아파트 사거리,0,37.45455,127.16387,
565,상원초교 입구,0,37.45477,127.16258,
566,모란 LH 1단지 정문,0,37.43075,127.12607,
567,한신병원앞,0,37.4332,127.131,0
568,모란시장 삼거리,0,37.42996,127.12798,
569,모란시장 단일로,0,37.42983,127.12709,
570,모란주차장사거리,0,37.42969,127.12613,
571,모란공원 단일로,0,37.42959,127.12452,
572,도촌중 단일로,0,37.41672,127.15526,
573,청진동 수산횟집앞,0,37.43441,127.15874,
574,지식산업센타 사거리,0,37.44031,127.17424,
575,금광지구 8번게이트,0,37.44289,127.16712,
576,오복슈퍼앞,0,37.45014,127.16613,
577,상대원초교 정문,0,37.44278,127.18114,
578,도촌스위첸앞,0,37.41454,127.1539,
579,도촌9단지 정문,0,37.41194,127.16294,
580,한양수자인,0,37.44769,127.17192,
581,스타타워 사거리,0,37.43436,127.17666,
582,슈페리어 단일로,0,37.43333,127.17897,
583,상대원 터널,0,37.42791,127.17951,
584,상대원 터널 우회전전용,0,37.42811,127.17991,
585,호반아파트 후문,0,37.42895,127.09436,
586,호반아파트 정문,0,37.42999,127.09621,
587,고등마을,0,37.43036,127.09896,
588,고등지구대,0,37.43022,127.10068,
589,청구아파트,0,37.44327,127.15089,
590,두산아파트,0,37.44398,127.14961,0
591,한신아파트 후문,0,37.445,127.15082,
592,희망대사거리,0,37.44482,127.14799,0
593,희망대초교,0,37.44662,127.14941,
594,구)신흥시장길,0,37.44559,127.14657,
595,태평제일교회,0,37.44781,127.1439,
596,신흥성당,0,37.44871,127.14306,
597,신흥초교,0,37.44954,127.14355,
598,성남여중,0,37.44937,127.14247,
599,가일빌딩(나나헤어),0,37.44446,127.1287,
600,태평초교,0,37.44535,127.13168,
601,태평3동 행정복지센터,0,37.4456,127.13256,
602,통보2차 아파트,0,37.44664,127.13612,
603,영락교회,0,37.44699,127.13723,
604,금빛초교 정문,0,37.4475,127.13897,
605,금빛초교 후문,0,37.44798,127.14062,
606,논골도서관,0,37.45625,127.16019,
607,양지아파트,0,37.45698,127.15943,
608,단대제1공영주차장,0,37.45872,127.15853,
609,문원중학교,0,37.46111,127.15798,
610,성보경영고,0,37.4624,127.15797,
611,푸르지오 입구,0,37.45104,127.15885,
612,푸르지오 정문,0,37.45134,127.15761,
613,진로아파트,0,37.45159,127.15681,
614,단대초교,0,37.45295,127.15661,
615,단대지구대,0,37.45252,127.15812,
616,구)목넴기,0,37.40916,127.09803,
617,남산마을,0,37.40883,127.09725,
618,구)금토슈퍼,0,37.40868,127.09621,
619,창조벨리,0,37.40863,127.09557,
620,판교임시IC,0,37.40856,127.09491,
621,금토1통,0,37.41722,127.08102,
622,금토동 삼거리,0,37.41092,127.09947,
623,창조벨리 삼거리,0,37.41221,127.09973,
624,세종연구소 삼거리,0,37.41631,127.1016,
625,시흥사거리,0,37.42232,127.10205,
626,고등소방서,0,37.42354,127.10215,
627,구) 고등주민센터,0,37.42446,127.1022,
628,사송동 차고지,0,37.41539,127.11476,
629,수자원공사입구,0,37.41451,127.11349,
630,사송교차로,0,37.41172,127.11403,
631,단대오거리,0,37.44507,127.15681,1
632,구)단대동주민센터,0,37.44816,127.15835,
633,금광시장,0,37.45086,127.15952,
634,법원,0,37.452,127.16004,
635,중앙병원,0,37.45413,127.16098,1
636,상원초교,0,37.4552,127.1618,
637,은행지구대,0,37.45707,127.16339,
638,은행시장,0,37.45804,127.16423,
639,을지대 정문,0,37.45986,127.16577,
640,을지대 후문,0,37.46148,127.16751,
641,양지지구대,0,37.46266,127.16916,
642,남한산성 유원지,0,37.46355,127.17029,
643,모란고개,0,37.43654,127.12838,
644,태평역,0,37.43974,127.12775,1
645,수정경찰서,0,37.44181,127.12739,
646,태평고개,0,37.44395,127.12701,
647,구)성남병원,0,37.44794,127.12673,1
648,가천대,0,37.45057,127.12662,
649,복정초소,0,37.45352,127.12652,
650,복정지구대,0,37.45628,127.12629,
651,동서울대,0,37.45976,127.12585,1
652,복정초교,0,37.46185,127.12944,
653,국제학교,0,37.46545,127.12629,1
654,삼정그린뷰아파트,0,37.43999,127.12145,
655,삼부아파트 후문,0,37.43952,127.12436,
656,삼부아파트,0,37.4395,127.12589,
657,곽생로,0,37.44049,127.13028,
658,중앙시장,0,37.44093,127.13181,
659,한국관,0,37.44144,127.13346,
660,탄리사거리,0,37.44221,127.13613,
661,구)시청,0,37.44309,127.13906,
662,의료원 장례식장,0,37.44385,127.13869,
663,의료원 정문,0,37.44407,127.1385,
664,외환은행,0,37.44356,127.14065,
665,숯골사거리,0,37.44409,127.14248,1
666,성남초교(단),0,37.44494,127.14405,
667,성남초교(4),0,37.44636,127.14541,1
668,구)청직이약국,0,37.44811,127.14531,
669,신흥2동 주민센터,0,37.4491,127.14584,
670,수정구청,0,37.44962,127.14624,
671,포레스티아 서문,0,37.45063,127.14702,
672,포레스티아 중문,0,37.45227,127.14934,1
673,포레스티아 동문 삼거리,0,37.45406,127.14971,
674,산성역,0,37.45642,127.15006,1
675,폴리텍,0,37.45869,127.15196,
676,변전소,0,37.46225,127.15521,
677,청산골,0,37.4409,127.14395,
678,구)시청고개,0,37.44208,127.14342,
679,왕남초교 주차장 삼거리,0,37.42777,127.09895,
680,왕남초교 정문,0,37.42786,127.09827,
681,여수대교 사거리,0,37.42205,127.11668,1
682,시흥동주민센터 삼거리,0,37.42241,127.10856,
683,농협물류창고 삼거리,0,37.42238,127.10527,
684,수성교,0,37.43512,127.13449,
685,수진소방서,0,37.43649,127.13384,
686,Yes 할인마트,0,37.43769,127.1333,
687,공주보일러,0,37.43896,127.1327,
688,태평로약국,0,37.44238,127.13113,
689,서광모터스,0,37.44308,127.1308,
690,하나님의교회,0,37.44411,127.13033,
691,한전사거리,0,37.44483,127.12997,
692,태평중학교,0,37.4462,127.12936,
693,태평3동 공영주차장,0,37.44682,127.12906,
694,LH 기업성장센터 사거리,0,37.41081,127.09487,
695,디어스빌딩 앞 삼거리,0,37.41256,127.09887,
696,경기 기업성장센터 삼거리,0,37.41209,127.09561,
697,판교 기업성장센터 사거리,0,37.41134,127.09495,
698,풍경채 입구,0,37.42564,127.10041,
699,토끼굴,0,37.4261,127.09714,
700,아이비빌딩,0,37.42713,127.09501,
701,정혜사,0,37.42803,127.09346,
702,고등IC,0,37.42956,127.09079,
703,적푸리마을,0,37.43361,127.08478,
704,신구대식물원,0,37.43214,127.08167,
705,청계산주유소,0,37.43071,127.07334,
706,청계산장,0,37.43052,127.07174,
707,탄천교차로,0,37.41867,127.11755,
708,선사교회,0,37.42024,127.11703,
709,둔전교,0,37.42736,127.11654,
710,비닐하우스,0,37.4302,127.1202,
711,탄천주차장 정문,0,37.4422,127.11968,
712,탄천주차장 후문(탄천한우),0,37.44346,127.11971,
713,탄천대교 사거리,0,37.45775,127.11952,
714,경원진지,0,37.45186,127.12105,
715,능골공원,0,37.4491,127.12044,
716,수질복원센터 후문,0,37.4589,127.12104,
717,수질복원센터 정문,0,37.46024,127.12446,
718,수진동행정복지센터,0,37.43869,127.13921,
719,성체유치원,0,37.43916,127.13776,
720,은서유치원,0,37.44357,127.1355,
721,순온천사우나,0,37.44439,127.13511,
722,태평오거리,0,37.4461,127.1343,
723,쌍용아파트,0,37.44797,127.12775,
724,동부센트레빌,0,37.44804,127.12852,
725,성남서초,0,37.44834,127.12956,
726,두산위브,0,37.44966,127.13401,
727,위례부영아파트,0,37.46057,127.14543,
728,위례소방서,0,37.46161,127.14359,
729,미도아파트,0,37.44647,127.15542,
730,세무서,0,37.44686,127.15503,
731,청소년수련원,0,37.44948,127.15321,
732,혜은학교,0,37.44995,127.15261,
733,현대자동차공업사,0,37.45039,127.152,
734,북초교,0,37.45086,127.15132,
735,양지근린공원 임시 단일로,0,37.4629,127.16197,0
736,풍경채 정문 사거리,0,37.42739,127.1007,
737,왕남초교 삼거리,0,37.42816,127.10089,
738,5171부대 삼거리,0,37.42055,127.10217,
739,구)고등동 삼거리,0,37.42564,127.10233,
740,구)고등사거리,0,37.42807,127.10193,
741,대왕주유소 삼거리,0,37.42995,127.10205,
742,등자리마을 삼거리,0,37.43498,127.10356,
743,한성대 삼거리,0,37.43258,127.10311,
744,제2정문 삼거리,0,37.43848,127.10371,
745,우정아파트 삼거리,0,37.44464,127.10373,
746,공군아파트 삼거리,0,37.44611,127.10401,
747,서울공항 정문 사거리,0,37.44851,127.10497,
748,효성고 단일로,0,37.44952,127.10542,
749,오야실마을 삼거리,0,37.45491,127.10686,
750,미군부대 삼거리,0,37.45789,127.10736,
751,신촌동 삼거리,0,37.45994,127.10763,
752,성남서중,0,37.44775,127.1542,
753,램프구간 하부,0,37.45344,127.17281,
754,창곡사거리,0,37.46316,127.14072,1

+ 3909
- 0
Data/tables/20240206_155342/S_INT_PHASE_CONFIG.csv
File diff suppressed because it is too large
View File


+ 5
- 0
Data/tables/20240206_155342/S_INT_TPLAN.csv View File

@ -0,0 +1,5 @@
INT_NO,INT_PLAN_NO,INT_PLAN_INDEX,INT_ASPLIT1,INT_ASPLIT2,INT_ASPLIT3,INT_ASPLIT4,INT_ASPLIT5,INT_ASPLIT6,INT_ASPLIT7,INT_ASPLIT8,INT_BSPLIT1,INT_BSPLIT2,INT_BSPLIT3,INT_BSPLIT4,INT_BSPLIT5,INT_BSPLIT6,INT_BSPLIT7,INT_BSPLIT8,INT_OFFSET
806,1,1,60,50,30,20,,,,,60,50,30,20,,,,,
808,1,1,60,50,30,20,,,,,60,50,30,20,,,,,
809,1,1,60,50,30,20,,,,,60,50,30,20,,,,,
810,1,1,60,50,30,20,,,,,60,50,30,20,,,,,

+ 8
- 0
Data/tables/20240206_155342/S_SA_CYCLE_PLAN.csv View File

@ -0,0 +1,8 @@
SA_NO,SA_APLAN_NO,SA_APLAN_INDEX,SA_CYCLE_LENGTH
1,1,1,80
1,1,2,90
1,1,3,85
1,1,4,0
1,1,5,0
1,1,6,0
30,1,1,160

+ 18
- 0
Data/tables/20240206_155342/S_SA_DPLAN.csv View File

@ -0,0 +1,18 @@
SA_NO,SA_DPLAN_NO,SA_DPLAN_INDEX,SA_START_HOUR,SA_START_MIN,SA_CYCLE_INDEX,SA_OFFSET,SA_SPLIT
1,1,1,0,0,1,1,1
1,1,2,6,0,2,2,2
1,1,3,10,0,3,5,5
1,1,4,16,0,2,2,2
1,1,5,0,0,0,0,0
1,1,6,0,0,0,0,0
1,1,7,0,0,0,0,0
1,1,8,0,0,0,0,0
1,1,9,0,0,0,0,0
1,1,10,0,0,0,0,0
1,1,11,0,0,0,0,0
1,1,12,0,0,0,0,0
1,1,13,0,0,0,0,0
1,1,14,0,0,0,0,0
1,1,15,0,0,0,0,0
1,1,16,0,0,0,0,0
30,1,1,23,59,1,1,1

+ 18
- 0
Data/tables/20240206_155342/S_SA_WPLAN.csv View File

@ -0,0 +1,18 @@
SA_NO,SA_WEEK,SA_DPLAN
30,1,1
30,2,1
30,3,1
30,4,1
30,5,1
30,6,1
30,7,1
1,2,1
1,3,1
1,1,1
2,1,1
2,39,15
2,26,0
1,4,1
1,5,1
1,6,1
1,7,1

+ 11099
- 0
Data/tables/20240206_155342/S_TOD_HIS.csv
File diff suppressed because it is too large
View File


BIN
Documents/1127_table_definition/table_definition_v0.8.4.xlsx View File


BIN
Documents/김선중_신호생성(240206).pptx View File


+ 0
- 33
Intermediates/movements.csv View File

@ -1,33 +0,0 @@
,inter_no,phas_A,phas_B,move_A,move_B
0,175,1,1,8,4
1,175,2,2,7,3
2,175,3,3,6,1
3,175,3,4,6,2
4,175,4,4,5,2
5,176,1,1,8,4
6,176,2,2,8,3
7,176,3,3,5,18
8,177,1,1,8,4
9,177,2,2,7,3
10,177,3,3,17,18
11,177,4,4,5,1
12,178,1,1,8,4
13,178,2,2,7,3
14,178,3,3,5,2
15,178,4,4,6,1
16,201,1,1,8,3
17,201,2,2,5,2
18,201,3,3,6,2
19,201,4,4,6,1
20,201,5,5,7,4
21,202,1,1,6,2
22,202,2,2,17,18
23,206,1,1,8,4
24,206,2,2,17,18
25,206,3,3,8,4
26,206,4,4,17,18
27,210,1,1,6,18
28,210,1,2,6,2
29,210,2,2,5,2
30,210,3,3,7,4
31,210,4,4,8,3

+ 1
- 0
Results/issues_fetch_tables.txt View File

@ -0,0 +1 @@
1-4-2-1. 위도 또는 경도가 범위를 벗어난 교차로가 있습니다: INT_NO : 1

+ 716
- 0
Results/sn_1704429000.add.xml View File

@ -0,0 +1,716 @@
<additional>
<tlLogic id="c30" type="static" programID="c30_prog" offset="-110.0">
<phase duration="33.0" state="rrrrrr"/>
<phase duration="4.0" state="rrrrrr"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="34.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="38.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="17.0" state="GGGGGG"/>
<phase duration="4.0" state="yyyyyy"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="33.0" state="rrrrrr"/>
<phase duration="4.0" state="rrrrrr"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="34.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="38.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="17.0" state="GGGGGG"/>
<phase duration="4.0" state="yyyyyy"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="33.0" state="rrrrrr"/>
<phase duration="4.0" state="rrrrrr"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="34.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="38.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="17.0" state="GGGGGG"/>
<phase duration="4.0" state="yyyyyy"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="33.0" state="rrrrrr"/>
<phase duration="4.0" state="rrrrrr"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="34.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="38.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="17.0" state="GGGGGG"/>
</tlLogic>
<tlLogic id="i0" type="static" programID="i0_prog" offset="-100.0">
<phase duration="38.0" state="gGGrgrrrgGGGGrgrr"/>
<phase duration="4.0" state="gyyrgrrrgyyyyrgrr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="40.0" state="grrGgrrrgrrrrGgrr"/>
<phase duration="4.0" state="grrygrrrgrrrrygrr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="28.0" state="grrrgGGGgrrrrrgrr"/>
<phase duration="4.0" state="grrrgGGygrrrrrgrr"/>
<phase duration="1.0" state="grrrgGGrgrrrrrgrr"/>
<phase duration="17.0" state="grrrgGGrgrrrrrgGr"/>
<phase duration="4.0" state="grrrgyyrgrrrrrgGr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgGr"/>
<phase duration="32.0" state="grrrgrrrgrrrrrgGG"/>
<phase duration="4.0" state="grrrgrrrgrrrrrgyy"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="38.0" state="gGGrgrrrgGGGGrgrr"/>
<phase duration="4.0" state="gyyrgrrrgyyyyrgrr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="40.0" state="grrGgrrrgrrrrGgrr"/>
<phase duration="4.0" state="grrygrrrgrrrrygrr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="28.0" state="grrrgGGGgrrrrrgrr"/>
<phase duration="4.0" state="grrrgGGygrrrrrgrr"/>
<phase duration="1.0" state="grrrgGGrgrrrrrgrr"/>
<phase duration="17.0" state="grrrgGGrgrrrrrgGr"/>
<phase duration="4.0" state="grrrgyyrgrrrrrgGr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgGr"/>
<phase duration="32.0" state="grrrgrrrgrrrrrgGG"/>
<phase duration="4.0" state="grrrgrrrgrrrrrgyy"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="38.0" state="gGGrgrrrgGGGGrgrr"/>
<phase duration="4.0" state="gyyrgrrrgyyyyrgrr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="40.0" state="grrGgrrrgrrrrGgrr"/>
<phase duration="4.0" state="grrygrrrgrrrrygrr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="28.0" state="grrrgGGGgrrrrrgrr"/>
<phase duration="4.0" state="grrrgGGygrrrrrgrr"/>
<phase duration="1.0" state="grrrgGGrgrrrrrgrr"/>
<phase duration="17.0" state="grrrgGGrgrrrrrgGr"/>
<phase duration="4.0" state="grrrgyyrgrrrrrgGr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgGr"/>
<phase duration="32.0" state="grrrgrrrgrrrrrgGG"/>
</tlLogic>
<tlLogic id="i1" type="static" programID="i1_prog" offset="-99.0">
<phase duration="32.0" state="gGGGGGrgrr"/>
<phase duration="4.0" state="gyyGGGrgrr"/>
<phase duration="1.0" state="grrGGGrgrr"/>
<phase duration="98.0" state="grrGGGGgrr"/>
<phase duration="4.0" state="grryyyygrr"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="35.0" state="grrrrrrgGG"/>
<phase duration="4.0" state="grrrrrrgyy"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="32.0" state="gGGGGGrgrr"/>
<phase duration="4.0" state="gyyGGGrgrr"/>
<phase duration="1.0" state="grrGGGrgrr"/>
<phase duration="98.0" state="grrGGGGgrr"/>
<phase duration="4.0" state="grryyyygrr"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="35.0" state="grrrrrrgGG"/>
<phase duration="4.0" state="grrrrrrgyy"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="32.0" state="gGGGGGrgrr"/>
<phase duration="4.0" state="gyyGGGrgrr"/>
<phase duration="1.0" state="grrGGGrgrr"/>
<phase duration="98.0" state="grrGGGGgrr"/>
<phase duration="4.0" state="grryyyygrr"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="35.0" state="grrrrrrgGG"/>
<phase duration="4.0" state="grrrrrrgyy"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="32.0" state="gGGGGGrgrr"/>
<phase duration="4.0" state="gyyGGGrgrr"/>
<phase duration="1.0" state="grrGGGrgrr"/>
<phase duration="98.0" state="grrGGGGgrr"/>
<phase duration="4.0" state="grryyyygrr"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="35.0" state="grrrrrrgGG"/>
</tlLogic>
<tlLogic id="i2" type="static" programID="i2_prog" offset="-10.0">
<phase duration="38.0" state="GGggGGG"/>
<phase duration="4.0" state="yyggyyy"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="22.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="65.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="35.0" state="rrggGGG"/>
<phase duration="4.0" state="rrggGGG"/>
<phase duration="1.0" state="rrggGGG"/>
<phase duration="38.0" state="GGggGGG"/>
<phase duration="4.0" state="yyggyyy"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="22.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="65.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="35.0" state="rrggGGG"/>
<phase duration="4.0" state="rrggGGG"/>
<phase duration="1.0" state="rrggGGG"/>
<phase duration="38.0" state="GGggGGG"/>
<phase duration="4.0" state="yyggyyy"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="22.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="65.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="35.0" state="rrggGGG"/>
<phase duration="4.0" state="rrggGGG"/>
<phase duration="1.0" state="rrggGGG"/>
<phase duration="38.0" state="GGggGGG"/>
<phase duration="4.0" state="yyggyyy"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="22.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="65.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="35.0" state="rrggGGG"/>
</tlLogic>
<tlLogic id="i3" type="static" programID="i3_prog" offset="-110.0">
<phase duration="33.0" state="gGGGrgrrrrgGGGrgrrrr"/>
<phase duration="4.0" state="gyyyrgrrrrgyyyrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="34.0" state="grrrGgrrrrgrrrGgrrrr"/>
<phase duration="4.0" state="grrrygrrrrgrrrygrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="38.0" state="grrrrgrrrrgrrrrgGGGG"/>
<phase duration="4.0" state="grrrrgrrrrgrrrrgyyyy"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="17.0" state="grrrrgGGGGgrrrrgrrrr"/>
<phase duration="4.0" state="grrrrgyyyygrrrrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="33.0" state="gGGGrgrrrrgGGGrgrrrr"/>
<phase duration="4.0" state="gyyyrgrrrrgyyyrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="34.0" state="grrrGgrrrrgrrrGgrrrr"/>
<phase duration="4.0" state="grrrygrrrrgrrrygrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="38.0" state="grrrrgrrrrgrrrrgGGGG"/>
<phase duration="4.0" state="grrrrgrrrrgrrrrgyyyy"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="17.0" state="grrrrgGGGGgrrrrgrrrr"/>
<phase duration="4.0" state="grrrrgyyyygrrrrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="33.0" state="gGGGrgrrrrgGGGrgrrrr"/>
<phase duration="4.0" state="gyyyrgrrrrgyyyrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="34.0" state="grrrGgrrrrgrrrGgrrrr"/>
<phase duration="4.0" state="grrrygrrrrgrrrygrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="38.0" state="grrrrgrrrrgrrrrgGGGG"/>
<phase duration="4.0" state="grrrrgrrrrgrrrrgyyyy"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="17.0" state="grrrrgGGGGgrrrrgrrrr"/>
<phase duration="4.0" state="grrrrgyyyygrrrrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="33.0" state="gGGGrgrrrrgGGGrgrrrr"/>
<phase duration="4.0" state="gyyyrgrrrrgyyyrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="34.0" state="grrrGgrrrrgrrrGgrrrr"/>
<phase duration="4.0" state="grrrygrrrrgrrrygrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="38.0" state="grrrrgrrrrgrrrrgGGGG"/>
<phase duration="4.0" state="grrrrgrrrrgrrrrgyyyy"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="17.0" state="grrrrgGGGGgrrrrgrrrr"/>
</tlLogic>
<tlLogic id="i6" type="static" programID="i6_prog" offset="-40.0">
<phase duration="23.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="4.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="1.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="10.0" state="grrrgGGGrgrrgGGr"/>
<phase duration="4.0" state="grrrgyyyrgrrgGGr"/>
<phase duration="1.0" state="grrrgrrrrgrrgGGr"/>
<phase duration="38.0" state="grrrgrrrrgrrgGGG"/>
<phase duration="4.0" state="grrrgrrrrgrrgyyy"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="65.0" state="gGGGgrrrrgrrgrrr"/>
<phase duration="4.0" state="gyyygrrrrgrrgrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="19.0" state="grrrgrrrrgGGgrrr"/>
<phase duration="4.0" state="grrrgrrrrgyygrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="23.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="4.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="1.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="10.0" state="grrrgGGGrgrrgGGr"/>
<phase duration="4.0" state="grrrgyyyrgrrgGGr"/>
<phase duration="1.0" state="grrrgrrrrgrrgGGr"/>
<phase duration="38.0" state="grrrgrrrrgrrgGGG"/>
<phase duration="4.0" state="grrrgrrrrgrrgyyy"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="65.0" state="gGGGgrrrrgrrgrrr"/>
<phase duration="4.0" state="gyyygrrrrgrrgrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="19.0" state="grrrgrrrrgGGgrrr"/>
<phase duration="4.0" state="grrrgrrrrgyygrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="23.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="4.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="1.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="10.0" state="grrrgGGGrgrrgGGr"/>
<phase duration="4.0" state="grrrgyyyrgrrgGGr"/>
<phase duration="1.0" state="grrrgrrrrgrrgGGr"/>
<phase duration="38.0" state="grrrgrrrrgrrgGGG"/>
<phase duration="4.0" state="grrrgrrrrgrrgyyy"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="65.0" state="gGGGgrrrrgrrgrrr"/>
<phase duration="4.0" state="gyyygrrrrgrrgrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="19.0" state="grrrgrrrrgGGgrrr"/>
<phase duration="4.0" state="grrrgrrrrgyygrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="23.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="4.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="1.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="10.0" state="grrrgGGGrgrrgGGr"/>
<phase duration="4.0" state="grrrgyyyrgrrgGGr"/>
<phase duration="1.0" state="grrrgrrrrgrrgGGr"/>
<phase duration="38.0" state="grrrgrrrrgrrgGGG"/>
<phase duration="4.0" state="grrrgrrrrgrrgyyy"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="65.0" state="gGGGgrrrrgrrgrrr"/>
<phase duration="4.0" state="gyyygrrrrgrrgrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="19.0" state="grrrgrrrrgGGgrrr"/>
</tlLogic>
<tlLogic id="i7" type="static" programID="i7_prog" offset="-90.0">
<phase duration="40.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="48.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="40.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="48.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="40.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="48.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="40.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="48.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="rrrggrr"/>
</tlLogic>
<tlLogic id="i8" type="static" programID="i8_prog" offset="-71.0">
<phase duration="28.0" state="grrrrrrrgGGGgrrr"/>
<phase duration="4.0" state="grrrrrrrgyyygrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="31.0" state="grrrrrrrgrrrgGGG"/>
<phase duration="4.0" state="grrrrrrrgrrrgGGy"/>
<phase duration="1.0" state="grrrrrrrgrrrgGGr"/>
<phase duration="20.0" state="grrrGGGrgrrrgGGr"/>
<phase duration="4.0" state="grrrGGGrgrrrgyyr"/>
<phase duration="1.0" state="grrrGGGrgrrrgrrr"/>
<phase duration="53.0" state="grrrGGGGgrrrgrrr"/>
<phase duration="4.0" state="grrryyyygrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="13.0" state="gGGGrrrrgrrrgrrr"/>
<phase duration="4.0" state="gyyyrrrrgrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="28.0" state="grrrrrrrgGGGgrrr"/>
<phase duration="4.0" state="grrrrrrrgyyygrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="31.0" state="grrrrrrrgrrrgGGG"/>
<phase duration="4.0" state="grrrrrrrgrrrgGGy"/>
<phase duration="1.0" state="grrrrrrrgrrrgGGr"/>
<phase duration="20.0" state="grrrGGGrgrrrgGGr"/>
<phase duration="4.0" state="grrrGGGrgrrrgyyr"/>
<phase duration="1.0" state="grrrGGGrgrrrgrrr"/>
<phase duration="53.0" state="grrrGGGGgrrrgrrr"/>
<phase duration="4.0" state="grrryyyygrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="13.0" state="gGGGrrrrgrrrgrrr"/>
<phase duration="4.0" state="gyyyrrrrgrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="28.0" state="grrrrrrrgGGGgrrr"/>
<phase duration="4.0" state="grrrrrrrgyyygrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="31.0" state="grrrrrrrgrrrgGGG"/>
<phase duration="4.0" state="grrrrrrrgrrrgGGy"/>
<phase duration="1.0" state="grrrrrrrgrrrgGGr"/>
<phase duration="20.0" state="grrrGGGrgrrrgGGr"/>
<phase duration="4.0" state="grrrGGGrgrrrgyyr"/>
<phase duration="1.0" state="grrrGGGrgrrrgrrr"/>
<phase duration="53.0" state="grrrGGGGgrrrgrrr"/>
<phase duration="4.0" state="grrryyyygrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="13.0" state="gGGGrrrrgrrrgrrr"/>
<phase duration="4.0" state="gyyyrrrrgrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="28.0" state="grrrrrrrgGGGgrrr"/>
<phase duration="4.0" state="grrrrrrrgyyygrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="31.0" state="grrrrrrrgrrrgGGG"/>
<phase duration="4.0" state="grrrrrrrgrrrgGGy"/>
<phase duration="1.0" state="grrrrrrrgrrrgGGr"/>
<phase duration="20.0" state="grrrGGGrgrrrgGGr"/>
<phase duration="4.0" state="grrrGGGrgrrrgyyr"/>
<phase duration="1.0" state="grrrGGGrgrrrgrrr"/>
<phase duration="53.0" state="grrrGGGGgrrrgrrr"/>
<phase duration="4.0" state="grrryyyygrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="13.0" state="gGGGrrrrgrrrgrrr"/>
</tlLogic>
<tlLogic id="i9" type="static" programID="i9_prog" offset="-60.0">
<phase duration="41.0" state="GGGG"/>
<phase duration="4.0" state="yyyy"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="109.0" state="rrrr"/>
<phase duration="4.0" state="rrrr"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="41.0" state="GGGG"/>
<phase duration="4.0" state="yyyy"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="109.0" state="rrrr"/>
<phase duration="4.0" state="rrrr"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="41.0" state="GGGG"/>
<phase duration="4.0" state="yyyy"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="109.0" state="rrrr"/>
<phase duration="4.0" state="rrrr"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="41.0" state="GGGG"/>
<phase duration="4.0" state="yyyy"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="109.0" state="rrrr"/>
</tlLogic>
<tlLogic id="u00" type="static" programID="u00_prog" offset="-100.0">
<phase duration="38.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="40.0" state="ggggGgggg"/>
<phase duration="4.0" state="ggggygggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="28.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="17.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="32.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="38.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="40.0" state="ggggGgggg"/>
<phase duration="4.0" state="ggggygggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="28.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="17.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="32.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="38.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="40.0" state="ggggGgggg"/>
<phase duration="4.0" state="ggggygggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="28.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="17.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="32.0" state="ggggrgggg"/>
</tlLogic>
<tlLogic id="u20" type="static" programID="u20_prog" offset="-10.0">
<phase duration="38.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="22.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="65.0" state="ggGggg"/>
<phase duration="4.0" state="ggyggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="35.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="38.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="22.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="65.0" state="ggGggg"/>
<phase duration="4.0" state="ggyggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="35.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="38.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="22.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="65.0" state="ggGggg"/>
<phase duration="4.0" state="ggyggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="35.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="38.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="22.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="65.0" state="ggGggg"/>
<phase duration="4.0" state="ggyggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="35.0" state="ggrggg"/>
</tlLogic>
<tlLogic id="u30" type="static" programID="u30_prog" offset="-110.0">
<phase duration="33.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="38.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="17.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="33.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="38.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="17.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="33.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="38.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="17.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="33.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="38.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="17.0" state="ggggGggg"/>
</tlLogic>
<tlLogic id="u31" type="static" programID="u31_prog" offset="-110.0">
<phase duration="33.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="38.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="17.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="33.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="38.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="17.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="33.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="38.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="17.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="33.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="38.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="17.0" state="ggggrggg"/>
</tlLogic>
<tlLogic id="u32" type="static" programID="u32_prog" offset="-110.0">
<phase duration="33.0" state="gggggggG"/>
<phase duration="4.0" state="gggggggy"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="34.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="38.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="17.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="33.0" state="gggggggG"/>
<phase duration="4.0" state="gggggggy"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="34.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="38.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="17.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="33.0" state="gggggggG"/>
<phase duration="4.0" state="gggggggy"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="34.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="38.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="17.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="33.0" state="gggggggG"/>
<phase duration="4.0" state="gggggggy"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="34.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="38.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="17.0" state="gggggggr"/>
</tlLogic>
<tlLogic id="u60" type="static" programID="u60_prog" offset="-40.0">
<phase duration="23.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="10.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="38.0" state="ggggggggG"/>
<phase duration="4.0" state="ggggggggy"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="65.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="19.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="23.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="10.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="38.0" state="ggggggggG"/>
<phase duration="4.0" state="ggggggggy"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="65.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="19.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="23.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="10.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="38.0" state="ggggggggG"/>
<phase duration="4.0" state="ggggggggy"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="65.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="19.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="23.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="10.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="38.0" state="ggggggggG"/>
<phase duration="4.0" state="ggggggggy"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="65.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="19.0" state="ggggggggr"/>
</tlLogic>
</additional>

+ 716
- 0
Results/sn_1704431100.add.xml View File

@ -0,0 +1,716 @@
<additional>
<tlLogic id="c30" type="static" programID="c30_prog" offset="-130.0">
<phase duration="33.0" state="rrrrrr"/>
<phase duration="4.0" state="rrrrrr"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="34.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="38.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="17.0" state="GGGGGG"/>
<phase duration="4.0" state="yyyyyy"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="33.0" state="rrrrrr"/>
<phase duration="4.0" state="rrrrrr"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="34.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="38.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="17.0" state="GGGGGG"/>
<phase duration="4.0" state="yyyyyy"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="33.0" state="rrrrrr"/>
<phase duration="4.0" state="rrrrrr"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="34.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="38.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="17.0" state="GGGGGG"/>
<phase duration="4.0" state="yyyyyy"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="33.0" state="rrrrrr"/>
<phase duration="4.0" state="rrrrrr"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="34.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="38.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="17.0" state="GGGGGG"/>
</tlLogic>
<tlLogic id="i0" type="static" programID="i0_prog" offset="-40.0">
<phase duration="38.0" state="gGGrgrrrgGGGGrgrr"/>
<phase duration="4.0" state="gyyrgrrrgyyyyrgrr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="40.0" state="grrGgrrrgrrrrGgrr"/>
<phase duration="4.0" state="grrygrrrgrrrrygrr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="28.0" state="grrrgGGGgrrrrrgrr"/>
<phase duration="4.0" state="grrrgGGygrrrrrgrr"/>
<phase duration="1.0" state="grrrgGGrgrrrrrgrr"/>
<phase duration="17.0" state="grrrgGGrgrrrrrgGr"/>
<phase duration="4.0" state="grrrgyyrgrrrrrgGr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgGr"/>
<phase duration="32.0" state="grrrgrrrgrrrrrgGG"/>
<phase duration="4.0" state="grrrgrrrgrrrrrgyy"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="38.0" state="gGGrgrrrgGGGGrgrr"/>
<phase duration="4.0" state="gyyrgrrrgyyyyrgrr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="40.0" state="grrGgrrrgrrrrGgrr"/>
<phase duration="4.0" state="grrygrrrgrrrrygrr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="28.0" state="grrrgGGGgrrrrrgrr"/>
<phase duration="4.0" state="grrrgGGygrrrrrgrr"/>
<phase duration="1.0" state="grrrgGGrgrrrrrgrr"/>
<phase duration="17.0" state="grrrgGGrgrrrrrgGr"/>
<phase duration="4.0" state="grrrgyyrgrrrrrgGr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgGr"/>
<phase duration="32.0" state="grrrgrrrgrrrrrgGG"/>
<phase duration="4.0" state="grrrgrrrgrrrrrgyy"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="38.0" state="gGGrgrrrgGGGGrgrr"/>
<phase duration="4.0" state="gyyrgrrrgyyyyrgrr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="40.0" state="grrGgrrrgrrrrGgrr"/>
<phase duration="4.0" state="grrygrrrgrrrrygrr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="28.0" state="grrrgGGGgrrrrrgrr"/>
<phase duration="4.0" state="grrrgGGygrrrrrgrr"/>
<phase duration="1.0" state="grrrgGGrgrrrrrgrr"/>
<phase duration="17.0" state="grrrgGGrgrrrrrgGr"/>
<phase duration="4.0" state="grrrgyyrgrrrrrgGr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgGr"/>
<phase duration="32.0" state="grrrgrrrgrrrrrgGG"/>
</tlLogic>
<tlLogic id="i1" type="static" programID="i1_prog" offset="-40.0">
<phase duration="32.0" state="gGGGGGrgrr"/>
<phase duration="4.0" state="gyyGGGrgrr"/>
<phase duration="1.0" state="grrGGGrgrr"/>
<phase duration="98.0" state="grrGGGGgrr"/>
<phase duration="4.0" state="grryyyygrr"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="35.0" state="grrrrrrgGG"/>
<phase duration="4.0" state="grrrrrrgyy"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="32.0" state="gGGGGGrgrr"/>
<phase duration="4.0" state="gyyGGGrgrr"/>
<phase duration="1.0" state="grrGGGrgrr"/>
<phase duration="98.0" state="grrGGGGgrr"/>
<phase duration="4.0" state="grryyyygrr"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="35.0" state="grrrrrrgGG"/>
<phase duration="4.0" state="grrrrrrgyy"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="32.0" state="gGGGGGrgrr"/>
<phase duration="4.0" state="gyyGGGrgrr"/>
<phase duration="1.0" state="grrGGGrgrr"/>
<phase duration="98.0" state="grrGGGGgrr"/>
<phase duration="4.0" state="grryyyygrr"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="35.0" state="grrrrrrgGG"/>
<phase duration="4.0" state="grrrrrrgyy"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="32.0" state="gGGGGGrgrr"/>
<phase duration="4.0" state="gyyGGGrgrr"/>
<phase duration="1.0" state="grrGGGrgrr"/>
<phase duration="98.0" state="grrGGGGgrr"/>
<phase duration="4.0" state="grryyyygrr"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="35.0" state="grrrrrrgGG"/>
</tlLogic>
<tlLogic id="i2" type="static" programID="i2_prog" offset="-30.0">
<phase duration="38.0" state="GGggGGG"/>
<phase duration="4.0" state="yyggyyy"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="22.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="65.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="35.0" state="rrggGGG"/>
<phase duration="4.0" state="rrggGGG"/>
<phase duration="1.0" state="rrggGGG"/>
<phase duration="38.0" state="GGggGGG"/>
<phase duration="4.0" state="yyggyyy"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="22.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="65.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="35.0" state="rrggGGG"/>
<phase duration="4.0" state="rrggGGG"/>
<phase duration="1.0" state="rrggGGG"/>
<phase duration="38.0" state="GGggGGG"/>
<phase duration="4.0" state="yyggyyy"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="22.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="65.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="35.0" state="rrggGGG"/>
<phase duration="4.0" state="rrggGGG"/>
<phase duration="1.0" state="rrggGGG"/>
<phase duration="38.0" state="GGggGGG"/>
<phase duration="4.0" state="yyggyyy"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="22.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="65.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="35.0" state="rrggGGG"/>
</tlLogic>
<tlLogic id="i3" type="static" programID="i3_prog" offset="-130.0">
<phase duration="33.0" state="gGGGrgrrrrgGGGrgrrrr"/>
<phase duration="4.0" state="gyyyrgrrrrgyyyrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="34.0" state="grrrGgrrrrgrrrGgrrrr"/>
<phase duration="4.0" state="grrrygrrrrgrrrygrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="38.0" state="grrrrgrrrrgrrrrgGGGG"/>
<phase duration="4.0" state="grrrrgrrrrgrrrrgyyyy"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="17.0" state="grrrrgGGGGgrrrrgrrrr"/>
<phase duration="4.0" state="grrrrgyyyygrrrrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="33.0" state="gGGGrgrrrrgGGGrgrrrr"/>
<phase duration="4.0" state="gyyyrgrrrrgyyyrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="34.0" state="grrrGgrrrrgrrrGgrrrr"/>
<phase duration="4.0" state="grrrygrrrrgrrrygrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="38.0" state="grrrrgrrrrgrrrrgGGGG"/>
<phase duration="4.0" state="grrrrgrrrrgrrrrgyyyy"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="17.0" state="grrrrgGGGGgrrrrgrrrr"/>
<phase duration="4.0" state="grrrrgyyyygrrrrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="33.0" state="gGGGrgrrrrgGGGrgrrrr"/>
<phase duration="4.0" state="gyyyrgrrrrgyyyrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="34.0" state="grrrGgrrrrgrrrGgrrrr"/>
<phase duration="4.0" state="grrrygrrrrgrrrygrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="38.0" state="grrrrgrrrrgrrrrgGGGG"/>
<phase duration="4.0" state="grrrrgrrrrgrrrrgyyyy"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="17.0" state="grrrrgGGGGgrrrrgrrrr"/>
<phase duration="4.0" state="grrrrgyyyygrrrrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="33.0" state="gGGGrgrrrrgGGGrgrrrr"/>
<phase duration="4.0" state="gyyyrgrrrrgyyyrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="34.0" state="grrrGgrrrrgrrrGgrrrr"/>
<phase duration="4.0" state="grrrygrrrrgrrrygrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="38.0" state="grrrrgrrrrgrrrrgGGGG"/>
<phase duration="4.0" state="grrrrgrrrrgrrrrgyyyy"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="17.0" state="grrrrgGGGGgrrrrgrrrr"/>
</tlLogic>
<tlLogic id="i6" type="static" programID="i6_prog" offset="-160.0">
<phase duration="23.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="4.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="1.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="10.0" state="grrrgGGGrgrrgGGr"/>
<phase duration="4.0" state="grrrgyyyrgrrgGGr"/>
<phase duration="1.0" state="grrrgrrrrgrrgGGr"/>
<phase duration="38.0" state="grrrgrrrrgrrgGGG"/>
<phase duration="4.0" state="grrrgrrrrgrrgyyy"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="65.0" state="gGGGgrrrrgrrgrrr"/>
<phase duration="4.0" state="gyyygrrrrgrrgrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="19.0" state="grrrgrrrrgGGgrrr"/>
<phase duration="4.0" state="grrrgrrrrgyygrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="23.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="4.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="1.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="10.0" state="grrrgGGGrgrrgGGr"/>
<phase duration="4.0" state="grrrgyyyrgrrgGGr"/>
<phase duration="1.0" state="grrrgrrrrgrrgGGr"/>
<phase duration="38.0" state="grrrgrrrrgrrgGGG"/>
<phase duration="4.0" state="grrrgrrrrgrrgyyy"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="65.0" state="gGGGgrrrrgrrgrrr"/>
<phase duration="4.0" state="gyyygrrrrgrrgrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="19.0" state="grrrgrrrrgGGgrrr"/>
<phase duration="4.0" state="grrrgrrrrgyygrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="23.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="4.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="1.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="10.0" state="grrrgGGGrgrrgGGr"/>
<phase duration="4.0" state="grrrgyyyrgrrgGGr"/>
<phase duration="1.0" state="grrrgrrrrgrrgGGr"/>
<phase duration="38.0" state="grrrgrrrrgrrgGGG"/>
<phase duration="4.0" state="grrrgrrrrgrrgyyy"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="65.0" state="gGGGgrrrrgrrgrrr"/>
<phase duration="4.0" state="gyyygrrrrgrrgrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="19.0" state="grrrgrrrrgGGgrrr"/>
<phase duration="4.0" state="grrrgrrrrgyygrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="23.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="4.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="1.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="10.0" state="grrrgGGGrgrrgGGr"/>
<phase duration="4.0" state="grrrgyyyrgrrgGGr"/>
<phase duration="1.0" state="grrrgrrrrgrrgGGr"/>
<phase duration="38.0" state="grrrgrrrrgrrgGGG"/>
<phase duration="4.0" state="grrrgrrrrgrrgyyy"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="65.0" state="gGGGgrrrrgrrgrrr"/>
<phase duration="4.0" state="gyyygrrrrgrrgrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="19.0" state="grrrgrrrrgGGgrrr"/>
</tlLogic>
<tlLogic id="i7" type="static" programID="i7_prog" offset="-90.0">
<phase duration="40.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="48.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="40.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="48.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="40.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="48.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="40.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="48.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="rrrggrr"/>
</tlLogic>
<tlLogic id="i8" type="static" programID="i8_prog" offset="-40.0">
<phase duration="28.0" state="grrrrrrrgGGGgrrr"/>
<phase duration="4.0" state="grrrrrrrgyyygrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="31.0" state="grrrrrrrgrrrgGGG"/>
<phase duration="4.0" state="grrrrrrrgrrrgGGy"/>
<phase duration="1.0" state="grrrrrrrgrrrgGGr"/>
<phase duration="20.0" state="grrrGGGrgrrrgGGr"/>
<phase duration="4.0" state="grrrGGGrgrrrgyyr"/>
<phase duration="1.0" state="grrrGGGrgrrrgrrr"/>
<phase duration="53.0" state="grrrGGGGgrrrgrrr"/>
<phase duration="4.0" state="grrryyyygrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="13.0" state="gGGGrrrrgrrrgrrr"/>
<phase duration="4.0" state="gyyyrrrrgrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="28.0" state="grrrrrrrgGGGgrrr"/>
<phase duration="4.0" state="grrrrrrrgyyygrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="31.0" state="grrrrrrrgrrrgGGG"/>
<phase duration="4.0" state="grrrrrrrgrrrgGGy"/>
<phase duration="1.0" state="grrrrrrrgrrrgGGr"/>
<phase duration="20.0" state="grrrGGGrgrrrgGGr"/>
<phase duration="4.0" state="grrrGGGrgrrrgyyr"/>
<phase duration="1.0" state="grrrGGGrgrrrgrrr"/>
<phase duration="53.0" state="grrrGGGGgrrrgrrr"/>
<phase duration="4.0" state="grrryyyygrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="13.0" state="gGGGrrrrgrrrgrrr"/>
<phase duration="4.0" state="gyyyrrrrgrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="28.0" state="grrrrrrrgGGGgrrr"/>
<phase duration="4.0" state="grrrrrrrgyyygrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="31.0" state="grrrrrrrgrrrgGGG"/>
<phase duration="4.0" state="grrrrrrrgrrrgGGy"/>
<phase duration="1.0" state="grrrrrrrgrrrgGGr"/>
<phase duration="20.0" state="grrrGGGrgrrrgGGr"/>
<phase duration="4.0" state="grrrGGGrgrrrgyyr"/>
<phase duration="1.0" state="grrrGGGrgrrrgrrr"/>
<phase duration="53.0" state="grrrGGGGgrrrgrrr"/>
<phase duration="4.0" state="grrryyyygrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="13.0" state="gGGGrrrrgrrrgrrr"/>
<phase duration="4.0" state="gyyyrrrrgrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="28.0" state="grrrrrrrgGGGgrrr"/>
<phase duration="4.0" state="grrrrrrrgyyygrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="31.0" state="grrrrrrrgrrrgGGG"/>
<phase duration="4.0" state="grrrrrrrgrrrgGGy"/>
<phase duration="1.0" state="grrrrrrrgrrrgGGr"/>
<phase duration="20.0" state="grrrGGGrgrrrgGGr"/>
<phase duration="4.0" state="grrrGGGrgrrrgyyr"/>
<phase duration="1.0" state="grrrGGGrgrrrgrrr"/>
<phase duration="53.0" state="grrrGGGGgrrrgrrr"/>
<phase duration="4.0" state="grrryyyygrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="13.0" state="gGGGrrrrgrrrgrrr"/>
</tlLogic>
<tlLogic id="i9" type="static" programID="i9_prog" offset="-80.0">
<phase duration="41.0" state="GGGG"/>
<phase duration="4.0" state="yyyy"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="109.0" state="rrrr"/>
<phase duration="4.0" state="rrrr"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="41.0" state="GGGG"/>
<phase duration="4.0" state="yyyy"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="109.0" state="rrrr"/>
<phase duration="4.0" state="rrrr"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="41.0" state="GGGG"/>
<phase duration="4.0" state="yyyy"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="109.0" state="rrrr"/>
<phase duration="4.0" state="rrrr"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="41.0" state="GGGG"/>
<phase duration="4.0" state="yyyy"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="109.0" state="rrrr"/>
</tlLogic>
<tlLogic id="u00" type="static" programID="u00_prog" offset="-40.0">
<phase duration="38.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="40.0" state="ggggGgggg"/>
<phase duration="4.0" state="ggggygggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="28.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="17.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="32.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="38.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="40.0" state="ggggGgggg"/>
<phase duration="4.0" state="ggggygggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="28.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="17.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="32.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="38.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="40.0" state="ggggGgggg"/>
<phase duration="4.0" state="ggggygggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="28.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="17.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="32.0" state="ggggrgggg"/>
</tlLogic>
<tlLogic id="u20" type="static" programID="u20_prog" offset="-30.0">
<phase duration="38.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="22.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="65.0" state="ggGggg"/>
<phase duration="4.0" state="ggyggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="35.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="38.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="22.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="65.0" state="ggGggg"/>
<phase duration="4.0" state="ggyggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="35.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="38.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="22.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="65.0" state="ggGggg"/>
<phase duration="4.0" state="ggyggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="35.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="38.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="22.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="65.0" state="ggGggg"/>
<phase duration="4.0" state="ggyggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="35.0" state="ggrggg"/>
</tlLogic>
<tlLogic id="u30" type="static" programID="u30_prog" offset="-130.0">
<phase duration="33.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="38.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="17.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="33.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="38.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="17.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="33.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="38.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="17.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="33.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="38.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="17.0" state="ggggGggg"/>
</tlLogic>
<tlLogic id="u31" type="static" programID="u31_prog" offset="-130.0">
<phase duration="33.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="38.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="17.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="33.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="38.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="17.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="33.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="38.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="17.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="33.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="38.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="17.0" state="ggggrggg"/>
</tlLogic>
<tlLogic id="u32" type="static" programID="u32_prog" offset="-130.0">
<phase duration="33.0" state="gggggggG"/>
<phase duration="4.0" state="gggggggy"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="34.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="38.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="17.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="33.0" state="gggggggG"/>
<phase duration="4.0" state="gggggggy"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="34.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="38.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="17.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="33.0" state="gggggggG"/>
<phase duration="4.0" state="gggggggy"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="34.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="38.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="17.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="33.0" state="gggggggG"/>
<phase duration="4.0" state="gggggggy"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="34.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="38.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="17.0" state="gggggggr"/>
</tlLogic>
<tlLogic id="u60" type="static" programID="u60_prog" offset="-160.0">
<phase duration="23.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="10.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="38.0" state="ggggggggG"/>
<phase duration="4.0" state="ggggggggy"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="65.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="19.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="23.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="10.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="38.0" state="ggggggggG"/>
<phase duration="4.0" state="ggggggggy"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="65.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="19.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="23.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="10.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="38.0" state="ggggggggG"/>
<phase duration="4.0" state="ggggggggy"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="65.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="19.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="23.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="10.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="38.0" state="ggggggggG"/>
<phase duration="4.0" state="ggggggggy"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="65.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="19.0" state="ggggggggr"/>
</tlLogic>
</additional>

+ 716
- 0
Results/sn_1704449700.add.xml View File

@ -0,0 +1,716 @@
<additional>
<tlLogic id="c30" type="static" programID="c30_prog" offset="-81.0">
<phase duration="33.0" state="rrrrrr"/>
<phase duration="4.0" state="rrrrrr"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="34.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="39.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="18.0" state="GGGGGG"/>
<phase duration="4.0" state="yyyyyy"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="33.0" state="rrrrrr"/>
<phase duration="4.0" state="rrrrrr"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="34.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="39.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="18.0" state="GGGGGG"/>
<phase duration="4.0" state="yyyyyy"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="33.0" state="rrrrrr"/>
<phase duration="4.0" state="rrrrrr"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="34.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="39.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="18.0" state="GGGGGG"/>
<phase duration="4.0" state="yyyyyy"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="33.0" state="rrrrrr"/>
<phase duration="4.0" state="rrrrrr"/>
<phase duration="1.0" state="rrrrrr"/>
<phase duration="34.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="39.0" state="GGGGGG"/>
<phase duration="4.0" state="GGGGGG"/>
<phase duration="1.0" state="GGGGGG"/>
<phase duration="18.0" state="GGGGGG"/>
</tlLogic>
<tlLogic id="i0" type="static" programID="i0_prog" offset="-170.0">
<phase duration="41.0" state="gGGrgrrrgGGGGrgrr"/>
<phase duration="4.0" state="gyyrgrrrgyyyyrgrr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="43.0" state="grrGgrrrgrrrrGgrr"/>
<phase duration="4.0" state="grrygrrrgrrrrygrr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="32.0" state="grrrgGGGgrrrrrgrr"/>
<phase duration="4.0" state="grrrgGGygrrrrrgrr"/>
<phase duration="1.0" state="grrrgGGrgrrrrrgrr"/>
<phase duration="13.0" state="grrrgGGrgrrrrrgGr"/>
<phase duration="4.0" state="grrrgyyrgrrrrrgGr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgGr"/>
<phase duration="36.0" state="grrrgrrrgrrrrrgGG"/>
<phase duration="4.0" state="grrrgrrrgrrrrrgyy"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="41.0" state="gGGrgrrrgGGGGrgrr"/>
<phase duration="4.0" state="gyyrgrrrgyyyyrgrr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="43.0" state="grrGgrrrgrrrrGgrr"/>
<phase duration="4.0" state="grrygrrrgrrrrygrr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="32.0" state="grrrgGGGgrrrrrgrr"/>
<phase duration="4.0" state="grrrgGGygrrrrrgrr"/>
<phase duration="1.0" state="grrrgGGrgrrrrrgrr"/>
<phase duration="13.0" state="grrrgGGrgrrrrrgGr"/>
<phase duration="4.0" state="grrrgyyrgrrrrrgGr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgGr"/>
<phase duration="36.0" state="grrrgrrrgrrrrrgGG"/>
<phase duration="4.0" state="grrrgrrrgrrrrrgyy"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="41.0" state="gGGrgrrrgGGGGrgrr"/>
<phase duration="4.0" state="gyyrgrrrgyyyyrgrr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="43.0" state="grrGgrrrgrrrrGgrr"/>
<phase duration="4.0" state="grrygrrrgrrrrygrr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgrr"/>
<phase duration="32.0" state="grrrgGGGgrrrrrgrr"/>
<phase duration="4.0" state="grrrgGGygrrrrrgrr"/>
<phase duration="1.0" state="grrrgGGrgrrrrrgrr"/>
<phase duration="13.0" state="grrrgGGrgrrrrrgGr"/>
<phase duration="4.0" state="grrrgyyrgrrrrrgGr"/>
<phase duration="1.0" state="grrrgrrrgrrrrrgGr"/>
<phase duration="36.0" state="grrrgrrrgrrrrrgGG"/>
</tlLogic>
<tlLogic id="i1" type="static" programID="i1_prog" offset="-170.0">
<phase duration="32.0" state="gGGGGGrgrr"/>
<phase duration="4.0" state="gyyGGGrgrr"/>
<phase duration="1.0" state="grrGGGrgrr"/>
<phase duration="108.0" state="grrGGGGgrr"/>
<phase duration="4.0" state="grryyyygrr"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="35.0" state="grrrrrrgGG"/>
<phase duration="4.0" state="grrrrrrgyy"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="32.0" state="gGGGGGrgrr"/>
<phase duration="4.0" state="gyyGGGrgrr"/>
<phase duration="1.0" state="grrGGGrgrr"/>
<phase duration="108.0" state="grrGGGGgrr"/>
<phase duration="4.0" state="grryyyygrr"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="35.0" state="grrrrrrgGG"/>
<phase duration="4.0" state="grrrrrrgyy"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="32.0" state="gGGGGGrgrr"/>
<phase duration="4.0" state="gyyGGGrgrr"/>
<phase duration="1.0" state="grrGGGrgrr"/>
<phase duration="108.0" state="grrGGGGgrr"/>
<phase duration="4.0" state="grryyyygrr"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="35.0" state="grrrrrrgGG"/>
<phase duration="4.0" state="grrrrrrgyy"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="32.0" state="gGGGGGrgrr"/>
<phase duration="4.0" state="gyyGGGrgrr"/>
<phase duration="1.0" state="grrGGGrgrr"/>
<phase duration="108.0" state="grrGGGGgrr"/>
<phase duration="4.0" state="grryyyygrr"/>
<phase duration="1.0" state="grrrrrrgrr"/>
<phase duration="35.0" state="grrrrrrgGG"/>
</tlLogic>
<tlLogic id="i2" type="static" programID="i2_prog" offset="-161.0">
<phase duration="40.0" state="GGggGGG"/>
<phase duration="4.0" state="yyggyyy"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="27.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="72.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="31.0" state="rrggGGG"/>
<phase duration="4.0" state="rrggGGG"/>
<phase duration="1.0" state="rrggGGG"/>
<phase duration="40.0" state="GGggGGG"/>
<phase duration="4.0" state="yyggyyy"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="27.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="72.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="31.0" state="rrggGGG"/>
<phase duration="4.0" state="rrggGGG"/>
<phase duration="1.0" state="rrggGGG"/>
<phase duration="40.0" state="GGggGGG"/>
<phase duration="4.0" state="yyggyyy"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="27.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="72.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="31.0" state="rrggGGG"/>
<phase duration="4.0" state="rrggGGG"/>
<phase duration="1.0" state="rrggGGG"/>
<phase duration="40.0" state="GGggGGG"/>
<phase duration="4.0" state="yyggyyy"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="27.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="72.0" state="rrggrrr"/>
<phase duration="4.0" state="rrggrrr"/>
<phase duration="1.0" state="rrggrrr"/>
<phase duration="31.0" state="rrggGGG"/>
</tlLogic>
<tlLogic id="i3" type="static" programID="i3_prog" offset="-81.0">
<phase duration="33.0" state="gGGGrgrrrrgGGGrgrrrr"/>
<phase duration="4.0" state="gyyyrgrrrrgyyyrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="34.0" state="grrrGgrrrrgrrrGgrrrr"/>
<phase duration="4.0" state="grrrygrrrrgrrrygrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="39.0" state="grrrrgrrrrgrrrrgGGGG"/>
<phase duration="4.0" state="grrrrgrrrrgrrrrgyyyy"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="18.0" state="grrrrgGGGGgrrrrgrrrr"/>
<phase duration="4.0" state="grrrrgyyyygrrrrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="33.0" state="gGGGrgrrrrgGGGrgrrrr"/>
<phase duration="4.0" state="gyyyrgrrrrgyyyrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="34.0" state="grrrGgrrrrgrrrGgrrrr"/>
<phase duration="4.0" state="grrrygrrrrgrrrygrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="39.0" state="grrrrgrrrrgrrrrgGGGG"/>
<phase duration="4.0" state="grrrrgrrrrgrrrrgyyyy"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="18.0" state="grrrrgGGGGgrrrrgrrrr"/>
<phase duration="4.0" state="grrrrgyyyygrrrrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="33.0" state="gGGGrgrrrrgGGGrgrrrr"/>
<phase duration="4.0" state="gyyyrgrrrrgyyyrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="34.0" state="grrrGgrrrrgrrrGgrrrr"/>
<phase duration="4.0" state="grrrygrrrrgrrrygrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="39.0" state="grrrrgrrrrgrrrrgGGGG"/>
<phase duration="4.0" state="grrrrgrrrrgrrrrgyyyy"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="18.0" state="grrrrgGGGGgrrrrgrrrr"/>
<phase duration="4.0" state="grrrrgyyyygrrrrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="33.0" state="gGGGrgrrrrgGGGrgrrrr"/>
<phase duration="4.0" state="gyyyrgrrrrgyyyrgrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="34.0" state="grrrGgrrrrgrrrGgrrrr"/>
<phase duration="4.0" state="grrrygrrrrgrrrygrrrr"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="39.0" state="grrrrgrrrrgrrrrgGGGG"/>
<phase duration="4.0" state="grrrrgrrrrgrrrrgyyyy"/>
<phase duration="1.0" state="grrrrgrrrrgrrrrgrrrr"/>
<phase duration="18.0" state="grrrrgGGGGgrrrrgrrrr"/>
</tlLogic>
<tlLogic id="i6" type="static" programID="i6_prog" offset="-100.0">
<phase duration="19.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="4.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="1.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="14.0" state="grrrgGGGrgrrgGGr"/>
<phase duration="4.0" state="grrrgyyyrgrrgGGr"/>
<phase duration="1.0" state="grrrgrrrrgrrgGGr"/>
<phase duration="42.0" state="grrrgrrrrgrrgGGG"/>
<phase duration="4.0" state="grrrgrrrrgrrgyyy"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="70.0" state="gGGGgrrrrgrrgrrr"/>
<phase duration="4.0" state="gyyygrrrrgrrgrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="20.0" state="grrrgrrrrgGGgrrr"/>
<phase duration="4.0" state="grrrgrrrrgyygrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="19.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="4.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="1.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="14.0" state="grrrgGGGrgrrgGGr"/>
<phase duration="4.0" state="grrrgyyyrgrrgGGr"/>
<phase duration="1.0" state="grrrgrrrrgrrgGGr"/>
<phase duration="42.0" state="grrrgrrrrgrrgGGG"/>
<phase duration="4.0" state="grrrgrrrrgrrgyyy"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="70.0" state="gGGGgrrrrgrrgrrr"/>
<phase duration="4.0" state="gyyygrrrrgrrgrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="20.0" state="grrrgrrrrgGGgrrr"/>
<phase duration="4.0" state="grrrgrrrrgyygrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="19.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="4.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="1.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="14.0" state="grrrgGGGrgrrgGGr"/>
<phase duration="4.0" state="grrrgyyyrgrrgGGr"/>
<phase duration="1.0" state="grrrgrrrrgrrgGGr"/>
<phase duration="42.0" state="grrrgrrrrgrrgGGG"/>
<phase duration="4.0" state="grrrgrrrrgrrgyyy"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="70.0" state="gGGGgrrrrgrrgrrr"/>
<phase duration="4.0" state="gyyygrrrrgrrgrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="20.0" state="grrrgrrrrgGGgrrr"/>
<phase duration="4.0" state="grrrgrrrrgyygrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="19.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="4.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="1.0" state="grrrgGGGrgrrgrrr"/>
<phase duration="14.0" state="grrrgGGGrgrrgGGr"/>
<phase duration="4.0" state="grrrgyyyrgrrgGGr"/>
<phase duration="1.0" state="grrrgrrrrgrrgGGr"/>
<phase duration="42.0" state="grrrgrrrrgrrgGGG"/>
<phase duration="4.0" state="grrrgrrrrgrrgyyy"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="70.0" state="gGGGgrrrrgrrgrrr"/>
<phase duration="4.0" state="gyyygrrrrgrrgrrr"/>
<phase duration="1.0" state="grrrgrrrrgrrgrrr"/>
<phase duration="20.0" state="grrrgrrrrgGGgrrr"/>
</tlLogic>
<tlLogic id="i7" type="static" programID="i7_prog" offset="-70.0">
<phase duration="41.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="57.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="41.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="57.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="41.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="57.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="41.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="57.0" state="rrrggrr"/>
<phase duration="4.0" state="rrrggrr"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="GGrggGG"/>
<phase duration="4.0" state="yyrggyy"/>
<phase duration="1.0" state="rrrggrr"/>
<phase duration="21.0" state="rrrggrr"/>
</tlLogic>
<tlLogic id="i8" type="static" programID="i8_prog" offset="-161.0">
<phase duration="31.0" state="grrrrrrrgGGGgrrr"/>
<phase duration="4.0" state="grrrrrrrgyyygrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="45.0" state="grrrrrrrgrrrgGGG"/>
<phase duration="4.0" state="grrrrrrrgrrrgGGy"/>
<phase duration="1.0" state="grrrrrrrgrrrgGGr"/>
<phase duration="13.0" state="grrrGGGrgrrrgGGr"/>
<phase duration="4.0" state="grrrGGGrgrrrgyyr"/>
<phase duration="1.0" state="grrrGGGrgrrrgrrr"/>
<phase duration="53.0" state="grrrGGGGgrrrgrrr"/>
<phase duration="4.0" state="grrryyyygrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="13.0" state="gGGGrrrrgrrrgrrr"/>
<phase duration="4.0" state="gyyyrrrrgrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="31.0" state="grrrrrrrgGGGgrrr"/>
<phase duration="4.0" state="grrrrrrrgyyygrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="45.0" state="grrrrrrrgrrrgGGG"/>
<phase duration="4.0" state="grrrrrrrgrrrgGGy"/>
<phase duration="1.0" state="grrrrrrrgrrrgGGr"/>
<phase duration="13.0" state="grrrGGGrgrrrgGGr"/>
<phase duration="4.0" state="grrrGGGrgrrrgyyr"/>
<phase duration="1.0" state="grrrGGGrgrrrgrrr"/>
<phase duration="53.0" state="grrrGGGGgrrrgrrr"/>
<phase duration="4.0" state="grrryyyygrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="13.0" state="gGGGrrrrgrrrgrrr"/>
<phase duration="4.0" state="gyyyrrrrgrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="31.0" state="grrrrrrrgGGGgrrr"/>
<phase duration="4.0" state="grrrrrrrgyyygrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="45.0" state="grrrrrrrgrrrgGGG"/>
<phase duration="4.0" state="grrrrrrrgrrrgGGy"/>
<phase duration="1.0" state="grrrrrrrgrrrgGGr"/>
<phase duration="13.0" state="grrrGGGrgrrrgGGr"/>
<phase duration="4.0" state="grrrGGGrgrrrgyyr"/>
<phase duration="1.0" state="grrrGGGrgrrrgrrr"/>
<phase duration="53.0" state="grrrGGGGgrrrgrrr"/>
<phase duration="4.0" state="grrryyyygrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="13.0" state="gGGGrrrrgrrrgrrr"/>
<phase duration="4.0" state="gyyyrrrrgrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="31.0" state="grrrrrrrgGGGgrrr"/>
<phase duration="4.0" state="grrrrrrrgyyygrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="45.0" state="grrrrrrrgrrrgGGG"/>
<phase duration="4.0" state="grrrrrrrgrrrgGGy"/>
<phase duration="1.0" state="grrrrrrrgrrrgGGr"/>
<phase duration="13.0" state="grrrGGGrgrrrgGGr"/>
<phase duration="4.0" state="grrrGGGrgrrrgyyr"/>
<phase duration="1.0" state="grrrGGGrgrrrgrrr"/>
<phase duration="53.0" state="grrrGGGGgrrrgrrr"/>
<phase duration="4.0" state="grrryyyygrrrgrrr"/>
<phase duration="1.0" state="grrrrrrrgrrrgrrr"/>
<phase duration="13.0" state="gGGGrrrrgrrrgrrr"/>
</tlLogic>
<tlLogic id="i9" type="static" programID="i9_prog" offset="-149.0">
<phase duration="43.0" state="GGGG"/>
<phase duration="4.0" state="yyyy"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="117.0" state="rrrr"/>
<phase duration="4.0" state="rrrr"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="43.0" state="GGGG"/>
<phase duration="4.0" state="yyyy"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="117.0" state="rrrr"/>
<phase duration="4.0" state="rrrr"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="43.0" state="GGGG"/>
<phase duration="4.0" state="yyyy"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="117.0" state="rrrr"/>
<phase duration="4.0" state="rrrr"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="43.0" state="GGGG"/>
<phase duration="4.0" state="yyyy"/>
<phase duration="1.0" state="rrrr"/>
<phase duration="117.0" state="rrrr"/>
</tlLogic>
<tlLogic id="u00" type="static" programID="u00_prog" offset="-170.0">
<phase duration="41.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="43.0" state="ggggGgggg"/>
<phase duration="4.0" state="ggggygggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="32.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="13.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="36.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="41.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="43.0" state="ggggGgggg"/>
<phase duration="4.0" state="ggggygggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="32.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="13.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="36.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="41.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="43.0" state="ggggGgggg"/>
<phase duration="4.0" state="ggggygggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="32.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="13.0" state="ggggrgggg"/>
<phase duration="4.0" state="ggggrgggg"/>
<phase duration="1.0" state="ggggrgggg"/>
<phase duration="36.0" state="ggggrgggg"/>
</tlLogic>
<tlLogic id="u20" type="static" programID="u20_prog" offset="-161.0">
<phase duration="40.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="27.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="72.0" state="ggGggg"/>
<phase duration="4.0" state="ggyggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="31.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="40.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="27.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="72.0" state="ggGggg"/>
<phase duration="4.0" state="ggyggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="31.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="40.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="27.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="72.0" state="ggGggg"/>
<phase duration="4.0" state="ggyggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="31.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="40.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="27.0" state="ggrggg"/>
<phase duration="4.0" state="ggrggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="72.0" state="ggGggg"/>
<phase duration="4.0" state="ggyggg"/>
<phase duration="1.0" state="ggrggg"/>
<phase duration="31.0" state="ggrggg"/>
</tlLogic>
<tlLogic id="u30" type="static" programID="u30_prog" offset="-81.0">
<phase duration="33.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="39.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="18.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="33.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="39.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="18.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="33.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="39.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="18.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="33.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="39.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="18.0" state="ggggGggg"/>
</tlLogic>
<tlLogic id="u31" type="static" programID="u31_prog" offset="-81.0">
<phase duration="33.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="39.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="18.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="33.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="39.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="18.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="33.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="39.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="18.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="33.0" state="ggggGggg"/>
<phase duration="4.0" state="ggggyggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="34.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="39.0" state="ggggrggg"/>
<phase duration="4.0" state="ggggrggg"/>
<phase duration="1.0" state="ggggrggg"/>
<phase duration="18.0" state="ggggrggg"/>
</tlLogic>
<tlLogic id="u32" type="static" programID="u32_prog" offset="-81.0">
<phase duration="33.0" state="gggggggG"/>
<phase duration="4.0" state="gggggggy"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="34.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="39.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="18.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="33.0" state="gggggggG"/>
<phase duration="4.0" state="gggggggy"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="34.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="39.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="18.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="33.0" state="gggggggG"/>
<phase duration="4.0" state="gggggggy"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="34.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="39.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="18.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="33.0" state="gggggggG"/>
<phase duration="4.0" state="gggggggy"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="34.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="39.0" state="gggggggr"/>
<phase duration="4.0" state="gggggggr"/>
<phase duration="1.0" state="gggggggr"/>
<phase duration="18.0" state="gggggggr"/>
</tlLogic>
<tlLogic id="u60" type="static" programID="u60_prog" offset="-100.0">
<phase duration="19.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="14.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="42.0" state="ggggggggG"/>
<phase duration="4.0" state="ggggggggy"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="70.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="20.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="19.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="14.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="42.0" state="ggggggggG"/>
<phase duration="4.0" state="ggggggggy"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="70.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="20.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="19.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="14.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="42.0" state="ggggggggG"/>
<phase duration="4.0" state="ggggggggy"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="70.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="20.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="19.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="14.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="42.0" state="ggggggggG"/>
<phase duration="4.0" state="ggggggggy"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="70.0" state="ggggggggr"/>
<phase duration="4.0" state="ggggggggr"/>
<phase duration="1.0" state="ggggggggr"/>
<phase duration="20.0" state="ggggggggr"/>
</tlLogic>
</additional>

+ 13
- 0
Scripts/config.json View File

@ -0,0 +1,13 @@
{"connection_info":
{"DSNNAME": "Tibero6",
"DBUSER": "snits",
"DBPWD": "snits" }
,
"paths":
{"data":["Data"],
"intermediates":["Intermediates"],
"results":["Results"],
"tables":["Data","tables"],
"networks":["Data","networks"],
"scripts": ["Scripts"]}
}

+ 5
- 0
Scripts/credentials.json View File

@ -0,0 +1,5 @@
{
"DSNNAME": "Tibero6",
"DBUSER": "snits",
"DBPWD": "snits"
}

+ 131
- 0
Scripts/fetch_tables.py View File

@ -0,0 +1,131 @@
# (rts) PS C:\Github\siggen> python .\Scripts\fetch_tables.py
import pandas as pd
import pyodbc
import os, json, csv
from tqdm import tqdm
from datetime import datetime
starting_time = datetime.now()
# 루트폴더 지정
path_root = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
with open(os.path.join(path_root, 'Scripts', 'config.json'), 'r') as config_file:
config = json.load(config_file)
# 주요 폴더 경로 지정
paths = config['paths']
path_tables = os.path.join(path_root, *paths['tables'])
path_results = os.path.join(path_root, *paths['results'])
# 이슈사항 목록
issues = []
# DB 접속정보
connection_info = config['connection_info']
DSNNAME = connection_info["DSNNAME"]
DBUSER = connection_info["DBUSER"]
DBPWD = connection_info["DBPWD"]
# 오류 발생을 위한 코드
# DSNNAME += 'a'
# DBUSER += 'a'
# DBPWD += 'a'
# 데이터베이스 연결
try:
cnxn = pyodbc.connect(f'DSN={DSNNAME};UID={DBUSER};PWD={DBPWD};charset=utf-8')
cursor = cnxn.cursor()
print("데이터베이스 연결에 성공했습니다.")
except pyodbc.InterfaceError:
print("데이터베이스 연결 실패: 데이터 원본 이름을 확인하거나 기본 드라이버를 지정하세요.")
# 여기서 오류 처리 로직을 추가할 수 있습니다.
except pyodbc.OperationalError as e:
if "Login failed" in str(e):
print("로그인 실패: 사용자 이름 또는 비밀번호가 유효하지 않습니다.")
else:
print("연결 실패: 운영 체제 레벨에서 오류가 발생했습니다.")
# 여기서 오류 처리 로직을 추가할 수 있습니다.
except Exception as e:
print(f"예기치 않은 오류가 발생했습니다: {e}")
# 여기서 오류 처리 로직을 추가할 수 있습니다.
schema = 'SNITS_INT'
tables = ['S_INT_CONFIG', # 교차로 제어기
'S_INT_PHASE_CONFIG', # 교차로 현시구성
'S_INT_TPLAN', # 교차로 시간계획
'S_SA_CYCLE_PLAN',
'S_SA_DPLAN', # 그룹 일계획
'S_SA_WPLAN', # 그룹 주간계획
'S_TOD_HIS'] # 신호 TOD 이력
# 폴더 Data\tables\yyyymmdd_hhmmss 생성
timestamp = starting_time.strftime('%Y%m%d_%H%M%S')
# base_dir = os.path.join(path_tables, timestamp)
os.makedirs(os.path.join(path_tables, timestamp), exist_ok=True)
def fetch_table(table, condition=""):
try:
query = f"SELECT * FROM {schema}.{table} {condition}"
cursor.execute(query)
csv_file_path = os.path.join(path_tables, timestamp, f"{table}.csv")
with open(csv_file_path, 'w', newline='', encoding='utf-8-sig') as csvfile:
csv_writer = csv.writer(csvfile)
columns = [column[0] for column in cursor.description]
csv_writer.writerow(columns)
for row in cursor.fetchall():
csv_writer.writerow(row)
except pyodbc.ProgrammingError as e:
if '42S02' in str(e):
print(f"오류: '{table}' 테이블이 스키마에 존재하지 않습니다.")
else:
print(f"SQL 실행 오류: {e}")
except Exception as e:
print(f"예기치 않은 오류가 발생했습니다: {e}")
fetch_table('S_INT_CONFIG')
fetch_table('S_INT_PHASE_CONFIG')
fetch_table('S_INT_TPLAN')
fetch_table('S_SA_CYCLE_PLAN')
fetch_table('S_SA_DPLAN')
fetch_table('S_SA_WPLAN')
fetch_table('S_TOD_HIS', condition="WHERE INT_CREATE_DATE >= TO_TIMESTAMP('2023-10-17 23:15:00.0') ORDER BY INT_NO ASC, INT_CREATE_DATE DESC;")
# 오류 발생을 위한 코드
fetch_table('foo')
print("테이블을 모두 불러왔습니다.")
cnxn.close()
inter_info = pd.read_csv(os.path.join(path_tables, timestamp, 'S_INT_CONFIG.csv'))
plan = pd.read_csv(os.path.join(path_tables, timestamp, 'S_INT_TPLAN.csv'))
history = pd.read_csv(os.path.join(path_tables, timestamp, 'S_TOD_HIS.csv'))
print(inter_info)
print(plan)
print(history)
# 1-4-2. 교차로정보(inter_info) 검사
def check_inter_info():
# 1-4-2-1. inter_lat, inter_lon 적절성 검사
inter_info.loc[0, 'INT_LAT'] = 38.0 # 에러 발생을 위한 코드
max_lon, min_lon = 127.3, 127.0
max_lat, min_lat = 37.5, 37.2
for _, row in inter_info.iterrows():
latbool = min_lat <= row['INT_LAT'] <= max_lat
lonbool = min_lon <= row['INT_LNG'] <= max_lon
if not(latbool and lonbool):
msg = f"1-4-2-1. 위도 또는 경도가 범위를 벗어난 교차로가 있습니다: INT_NO : {row['INT_NO']}"
issues.append(msg)
def write_issues():
print('3. 이슈사항을 저장합니다.')
path_issues = os.path.join(path_results, "issues_fetch_tables.txt")
with open(path_issues, "w", encoding="utf-8") as file:
for item in issues:
file.write(item + "\n")
if issues:
print("데이터 처리 중 발생한 특이사항은 다음과 같습니다. :")
for review in issues:
print(review)
check_inter_info()
write_issues()
print("elapsed time :", datetime.now() - starting_time)

+ 75
- 0
Scripts/fetch_tables_sc.py View File

@ -0,0 +1,75 @@
import sched
import time
import pyodbc
import os, json, csv
from datetime import datetime, timedelta
# 스케줄러 객체 생성
scheduler = sched.scheduler(time.time, time.sleep)
def fetch_table(scheduler, table, condition="", initial_run=False, is_move=False):
now = datetime.now()
timestamp = int(time.mktime(now.timetuple()))
timestamp -= timestamp % 5 # 초값이 0 또는 5인 시점의 유닉스 시각으로 조정
folder_name = str(timestamp)
folder_path = os.path.join(path_root, 'Data', 'fetched_tables', folder_name)
if not os.path.exists(folder_path):
os.makedirs(folder_path)
if is_move:
# move 테이블의 경우, 5초 간격으로 데이터를 가져와야 함
for offset in range(-300, 1, 5):
current_timestamp = timestamp + offset
file_name = f'move_{current_timestamp}.csv'
file_path = os.path.join(folder_path, file_name)
fetch_and_save(table, file_path, condition)
else:
file_path = os.path.join(folder_path, f'{table}.csv')
fetch_and_save(table, file_path, condition)
# 다음 실행을 위해 스케줄러에 이 함수를 다시 예약합니다.
if initial_run:
next_run = now + timedelta(minutes=5 - now.minute % 5, seconds=-now.second, microseconds=-now.microsecond)
scheduler.enterabs(time.mktime(next_run.timetuple()), 1, fetch_table, (scheduler, table, condition, False, is_move))
def fetch_and_save(table, file_path, condition):
query = f"SELECT * FROM {schema}.{table} {condition}"
cursor.execute(query)
with open(file_path, 'w', newline='', encoding='utf-8-sig') as csvfile:
csv_writer = csv.writer(csvfile)
columns = [column[0] for column in cursor.description]
csv_writer.writerow(columns)
for row in cursor.fetchall():
csv_writer.writerow(row)
if __name__ == "__main__":
path_root = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
credentials_path = os.path.join(path_root, 'Scripts', 'credentials.json')
with open(credentials_path, 'r') as file:
credentials = json.load(file)
DSNNAME = credentials["DSNNAME"]
DBUSER = credentials["DBUSER"]
DBPWD = credentials["DBPWD"]
cnxn = pyodbc.connect(f'DSN={DSNNAME};UID={DBUSER};PWD={DBPWD};charset=utf-8')
cursor = cnxn.cursor()
schema = 'snits_siggen'
tables_and_conditions = {
'inter_info': "",
'angle': "WHERE collect_unix = (SELECT MAX(collect_unix) FROM angle)",
'plan': "WHERE collect_unix = (SELECT MAX(collect_unix) FROM plan)",
'history': "WHERE end_unix >= UNIX_TIMESTAMP() - 9000", # UNIX_TIMESTAMP()를 적절한 TiberoDB 함수로 대체
'move': "" # move 테이블은 별도로 처리
}
# 초기 작업 예약 및 스케줄러 실행
now = datetime.now()
initial_delay = timedelta(minutes=5 - now.minute % 5, seconds=-now.second, microseconds=-now.microsecond).total_seconds()
for table, condition in tables_and_conditions.items():
is_move = (table == 'move')
scheduler.enter(initial_delay, 1, fetch_table, (scheduler, table, condition, True, is_move))
scheduler.run()

Script/generate_signals.py → Scripts/generate_signals.py View File

@ -1,3 +1,4 @@
# (siggen) PS C:\Github\snits_siggen> python .\Scripts\generate_signals.py
import pandas as pd
import numpy as np
import os, sys
@ -9,7 +10,19 @@ from datetime import datetime
class SignalGenerator():
def __init__(self):
# 루트폴더 지정
self.path_root = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
with open(os.path.join(self.path_root, 'Scripts', 'config.json'), 'r') as config_file:
config = json.load(config_file)
# 주요 폴더 경로 지정
self.paths = config['paths']
self.path_data = os.path.join(self.path_root, *self.paths['data'])
self.path_intermediates = os.path.join(self.path_root, *self.paths['intermediates'])
self.path_results = os.path.join(self.path_root, *self.paths['results'])
self.path_tables = os.path.join(self.path_root, *self.paths['tables'])
self.path_networks = os.path.join(self.path_root, *self.paths['networks'])
self.path_scripts = os.path.join(self.path_root, *self.paths['scripts'])
# 이슈사항 목록
self.issues = []
self.midnight = int(datetime(2024, 1, 5, 0, 0, 0).timestamp())
@ -34,7 +47,7 @@ class SignalGenerator():
# 1-1. 네트워크 불러오기
def load_networks(self):
self.net = sumolib.net.readNet(os.path.join(self.path_root, 'Data', 'networks', 'sn.net.xml'))
self.net = sumolib.net.readNet(os.path.join(self.path_networks, 'sn.net.xml'))
print("1-1. 네트워크가 로드되었습니다.")
# 1-2. 테이블 불러오기
@ -52,16 +65,15 @@ class SignalGenerator():
loading_dtype[f'angle_{alph}{j}'] = 'str'
loading_dtype[f'dura_{alph}{j}'] = 'int'
self.path_table = os.path.join(self.path_root, 'Data', 'tables')
# 테이블 불러오기
self.inter_info = pd.read_csv(os.path.join(self.path_table, 'inter_info.csv'), dtype=loading_dtype)
self.plan = pd.read_csv(os.path.join(self.path_table, 'plan.csv'), dtype=loading_dtype)
self.history = pd.read_csv(os.path.join(self.path_table, 'history.csv'), dtype=loading_dtype)
self.inter_node = pd.read_csv(os.path.join(self.path_table, 'inter_node.csv'), dtype=loading_dtype)
self.matching = pd.read_csv(os.path.join(self.path_root, 'Intermediates', 'matching.csv'), dtype=loading_dtype)
self.movements = pd.read_csv(os.path.join(self.path_root, 'Intermediates', 'movements.csv'), dtype=loading_dtype)
self.match6 = pd.read_csv(os.path.join(self.path_root, 'Intermediates', 'match6.csv'), dtype=loading_dtype)
self.inter_info = pd.read_csv(os.path.join(self.path_tables, 'inter_info.csv'), dtype=loading_dtype)
self.plan = pd.read_csv(os.path.join(self.path_tables, 'plan.csv'), dtype=loading_dtype)
self.history = pd.read_csv(os.path.join(self.path_tables, 'history.csv'), dtype=loading_dtype)
self.inter_node = pd.read_csv(os.path.join(self.path_tables, 'inter_node.csv'), dtype=loading_dtype)
self.matching = pd.read_csv(os.path.join(self.path_intermediates, 'matching.csv'), dtype=loading_dtype)
self.match1 = pd.read_csv(os.path.join(self.path_intermediates, 'match1.csv'), dtype=loading_dtype)
self.match6 = pd.read_csv(os.path.join(self.path_intermediates, 'match6.csv'), dtype=loading_dtype)
self.match6 = self.match6[['node_id', 'phase_no', 'ring_type', 'inc_edge', 'out_edge']].reset_index(drop=True)
# 교차로목록 정의
@ -77,7 +89,7 @@ class SignalGenerator():
sys.path.append(tools)
else:
raise EnvironmentError("please declare environment variable 'SUMO_HOME'")
traci.start([sumolib.checkBinary('sumo'), "-n", os.path.join(self.path_root, 'Data', 'networks', 'sn.net.xml')])
traci.start([sumolib.checkBinary('sumo'), "-n", os.path.join(self.path_networks, 'sn.net.xml')])
nodes = [node for node in self.net.getNodes() if node.getType()=='traffic_light']
for node in nodes:
node_id = node.getID()
@ -167,7 +179,7 @@ class SignalGenerator():
self.nodes = [self.net.getNode(node_id) for node_id in self.node_ids]
# node2num_cycles : A dictionary that maps a node_id to the number of cycles
with open(os.path.join(self.path_root, 'Intermediates', 'node2num_cycles.json'), 'r') as file:
with open(os.path.join(self.path_intermediates, 'node2num_cycles.json'), 'r') as file:
# json.load() 함수를 사용해 파일 내용을 Python 딕셔너리로 불러옵니다.
self.node2num_cycles = json.load(file)
@ -399,7 +411,7 @@ class SignalGenerator():
print("3. 이동류정보 테이블을 변환합니다.")
self.make_movement()
self.update_movement()
# 3-1. movement
def make_movement(self):
# # - 아래 절차를 5초마다 반복
@ -436,7 +448,7 @@ class SignalGenerator():
# # 8. D데이터 보관 시간 기준시간을 시작 유닉스 타임의 최대값 - 3600을 값으로 산출하고, 보관 시간 기준시간보다 작은 시작 유닉스 타임을 가진 행은 모두 제거(1시간 데이터만 보관)
# self.movement = self.movement[self.movement.start_unix > fsec - 3600]
# self.movement = self.movement.sort_values(by=['start_unix','inter_no','phas_A','phas_B']).reset_index(drop=True)
self.movement = pd.read_csv(os.path.join(self.path_root, 'Intermediates', 'movement', f'movement_{self.present_time}.csv'), index_col=0)
self.movement = pd.read_csv(os.path.join(self.path_intermediates, 'movement', f'movement_{self.present_time}.csv'), index_col=0)
# 3-2. movement_updated
def update_movement(self):
@ -451,8 +463,8 @@ class SignalGenerator():
new_rows = []
if missing_in_movement:
for inter_no, start_unix in missing_in_movement:
# movements에서 해당 inter_no의 데이터를 찾습니다.
new_row = self.movements[self.movements['inter_no'] == inter_no].copy()
# match1에서 해당 inter_no의 데이터를 찾습니다.
new_row = self.match1[self.match1['inter_no'] == inter_no].copy()
# start_unix 값을 설정합니다.
new_row['start_unix'] = start_unix
new_rows.append(new_row)
@ -750,14 +762,14 @@ class SignalGenerator():
strings.append('</additional>')
strings = ''.join(strings)
# 저장
self.path_output = os.path.join(self.path_root, 'Results', f'sn_{self.present_time}.add.xml')
self.path_output = os.path.join(self.path_results, f'sn_{self.present_time}.add.xml')
with open(self.path_output, 'w') as f:
f.write(strings)
# 6. 이슈사항 저장
def write_issues(self):
print('6. 이슈사항을 저장합니다.')
path_issues = os.path.join(self.path_root, "Results", "issues_generate_signals.txt")
path_issues = os.path.join(self.path_results, "issues_generate_signals.txt")
with open(path_issues, "w", encoding="utf-8") as file:
for item in self.issues:
file.write(item + "\n")

Script/preprocess_daily.py → Scripts/preprocess_daily.py View File

@ -1,3 +1,4 @@
# (siggen) PS C:\Github\snits_siggen> python .\Scripts\preprocess_daily.py
import pandas as pd
import numpy as np
import os, sys
@ -7,7 +8,20 @@ from tqdm import tqdm
class DailyPreprocessor():
def __init__(self):
# 루트폴더 지정
self.path_root = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
with open(os.path.join(self.path_root, 'Scripts', 'config.json'), 'r') as config_file:
config = json.load(config_file)
# 주요 폴더 경로 지정
self.paths = config['paths']
self.path_data = os.path.join(self.path_root, *self.paths['data'])
self.path_intermediates = os.path.join(self.path_root, *self.paths['intermediates'])
self.path_results = os.path.join(self.path_root, *self.paths['results'])
self.path_tables = os.path.join(self.path_root, *self.paths['tables'])
self.path_networks = os.path.join(self.path_root, *self.paths['networks'])
self.path_scripts = os.path.join(self.path_root, *self.paths['scripts'])
# 이슈사항 목록
self.issues = []
# 1. 데이터 불러오기
@ -20,7 +34,7 @@ class DailyPreprocessor():
# 1-1. 네트워크 불러오기
def load_networks(self):
self.net = sumolib.net.readNet(os.path.join(self.path_root, 'Data', 'networks', 'sn.net.xml'))
self.net = sumolib.net.readNet(os.path.join(self.path_networks, 'sn.net.xml'))
print("1-1. 네트워크가 로드되었습니다.")
# 1-2. 테이블 불러오기
@ -37,17 +51,15 @@ class DailyPreprocessor():
for j in range(1,9):
loading_dtype[f'angle_{alph}{j}'] = 'str'
loading_dtype[f'dura_{alph}{j}'] = 'int'
self.path_table = os.path.join(self.path_root, 'Data', 'tables')
# 테이블 불러오기
self.inter_info = pd.read_csv(os.path.join(self.path_table, 'inter_info.csv'), dtype=loading_dtype)
self.angle = pd.read_csv(os.path.join(self.path_table, 'angle.csv'), dtype=loading_dtype)
self.plan = pd.read_csv(os.path.join(self.path_table, 'plan.csv'), dtype=loading_dtype)
self.inter_node = pd.read_csv(os.path.join(self.path_table, 'inter_node.csv'), dtype=loading_dtype)
self.uturn = pd.read_csv(os.path.join(self.path_table, 'child_uturn.csv'), dtype=loading_dtype)
self.coord = pd.read_csv(os.path.join(self.path_table, 'child_coord.csv'), dtype=loading_dtype)
self.nema = pd.read_csv(os.path.join(self.path_table, 'nema.csv'), encoding='cp949', dtype=loading_dtype)
self.inter_info = pd.read_csv(os.path.join(self.path_tables, 'inter_info.csv'), dtype=loading_dtype)
self.angle = pd.read_csv(os.path.join(self.path_tables, 'angle.csv'), dtype=loading_dtype)
self.plan = pd.read_csv(os.path.join(self.path_tables, 'plan.csv'), dtype=loading_dtype)
self.inter_node = pd.read_csv(os.path.join(self.path_tables, 'inter_node.csv'), dtype=loading_dtype)
self.uturn = pd.read_csv(os.path.join(self.path_tables, 'child_uturn.csv'), dtype=loading_dtype)
self.coord = pd.read_csv(os.path.join(self.path_tables, 'child_coord.csv'), dtype=loading_dtype)
self.nema = pd.read_csv(os.path.join(self.path_tables, 'nema.csv'), encoding='cp949', dtype=loading_dtype)
# 교차로목록 정의
self.inter_nos = sorted(self.inter_info.inter_no.unique())
@ -62,7 +74,7 @@ class DailyPreprocessor():
sys.path.append(tools)
else:
raise EnvironmentError("please declare environment variable 'SUMO_HOME'")
traci.start([sumolib.checkBinary('sumo'), "-n", os.path.join(self.path_root, 'Data', 'networks', 'sn.net.xml')])
traci.start([sumolib.checkBinary('sumo'), "-n", os.path.join(self.path_networks, 'sn.net.xml')])
nodes = [node for node in self.net.getNodes() if node.getType()=='traffic_light']
for node in nodes:
node_id = node.getID()
@ -106,7 +118,8 @@ class DailyPreprocessor():
valid_indices = ((durations >= 0) & (durations <= 200)).all(axis=1)
invalid_inter_nos = sorted(self.plan[~ valid_indices].inter_no.unique())
if invalid_inter_nos:
msg = f"1-4-1-3. 음수이거나 200보다 큰 현시시간이 존재합니다. : {invalid_inter_nos}"
msg = f"1-4-1-3. plan에 음수이거나 200보다 큰 현시시간이 존재합니다. : {invalid_inter_nos}"
self.issues.append(msg)
# 1-4-1-4. 주기 일관성 검사
# self.plan.loc[0, 'cycle'] = 50 # 에러 발생을 위한 코드
@ -136,8 +149,8 @@ class DailyPreprocessor():
def check_inter_info(self):
# 1-4-2-1. inter_lat, inter_lon 적절성 검사
# self.inter_info.loc[0, 'inter_lat'] = 38.0 # 에러 발생을 위한 코드
self.max_lon, self.min_lon = 127.207888, 127.012492
self.max_lat, self.min_lat = 37.480693, 37.337112
self.max_lon, self.min_lon = 127.3, 127.0
self.max_lat, self.min_lat = 37.5, 37.2
for _, row in self.inter_info.iterrows():
latbool = self.min_lat <= row['inter_lat'] <= self.max_lat
lonbool = self.min_lon <= row['inter_lon'] <= self.max_lon
@ -151,14 +164,27 @@ class DailyPreprocessor():
# self.angle.loc[0, 'inter_no'] = '4' # 에러 발생을 위한 코드
missing_inter_nos = set(self.angle.inter_no) - set(self.inter_nos)
if missing_inter_nos:
msg = f"1-4-2-1. angle의 inter_no 중 교차로 목록(inter_nos)에 포함되지 않는 항목이 있습니다: {missing_inter_nos}"
msg = f"1-4-3-1. angle의 inter_no 중 교차로 목록(inter_nos)에 포함되지 않는 항목이 있습니다: {missing_inter_nos}"
self.issues.append(msg)
# 1-4-3-2. 각도 코드 검사
angle_codes = self.angle[[f'angle_{alph}{j}' for alph in ['A', 'B'] for j in range(1,9)]].values.flatten()
angle_codes = [code for code in angle_codes if not pd.isna(code) and code != 'stop']
of_length_6 = [len(code)==6 for code in angle_codes]
if not all(of_length_6):
msg = f"1-4-3-2. 여섯자리가 아닌 각도코드가 존재합니다."
self.issues.append(msg)
angle_codes = [[code[:3],code[3:]] for code in angle_codes]
angle_codes = [int(item) for sublist in angle_codes for item in sublist]
angle_codes = [0<=code<360 for code in angle_codes]
if not all(angle_codes):
msg = f"1-4-3-2. 0과 359 사이의 값을 벗어나는 방위각이 존재합니다."
self.issues.append(msg)
# 2. 중간산출물 만들기
def get_intermediates(self):
print('2. 중간산출물을 생성합니다.')
self.get_matches()
self.get_movements()
self.get_node2num_cycles()
# 2-1 매칭테이블들 생성
@ -184,11 +210,20 @@ class DailyPreprocessor():
match1을 .
'''
# [이동류번호] 불러오기 (약 1분의 소요시간)
path_move = os.path.join(self.path_root, 'Data', 'tables', 'move')
path_move = os.path.join(self.path_tables, 'move')
csv_moves = os.listdir(path_move)
moves = [pd.read_csv(os.path.join(path_move, csv_move), index_col=0) for csv_move in tqdm(csv_moves, desc='이동류정보 불러오는 중 : match1')]
self.match1 = pd.concat(moves).drop_duplicates().sort_values(by=['inter_no','phas_A','phas_B']).reset_index(drop=True)
self.match1.to_csv(os.path.join(self.path_root, 'Intermediates', 'match1.csv'))
moves = [pd.read_csv(os.path.join(path_move, csv_move), index_col=0) for csv_move in tqdm(csv_moves, desc='이동류정보 불러오는 중')]
df = pd.concat(moves).reset_index(drop=True)
self.match1 = []
for i, group in df.groupby(['inter_no', 'phas_A', 'phas_B']):
inter_no, phas_A, phas_B = i
pairs_array = np.array(group[['move_A', 'move_B']])
unique_pairs, counts = np.unique(pairs_array, axis=0, return_counts=True)
frequent_pair = unique_pairs[np.argmax(counts)]
self.match1.append(pd.DataFrame({'inter_no':[inter_no], 'phas_A':[phas_A], 'phas_B':[phas_B],
'move_A':[frequent_pair[0]], 'move_B':[frequent_pair[1]]}))
self.match1 = pd.concat(self.match1).reset_index(drop=True)
self.match1.to_csv(os.path.join(self.path_intermediates, 'match1.csv'))
# 2-1-2
def make_match2(self):
@ -449,7 +484,7 @@ class DailyPreprocessor():
# display(coord)
cmatches = pd.concat(cmatches)
self.match6 = pd.concat([self.match5, cmatches, self.coord]).drop_duplicates().sort_values(by=['inter_no', 'node_id', 'phase_no', 'ring_type'])
self.match6.to_csv(os.path.join(self.path_root, 'Intermediates', 'match6.csv'))
self.match6.to_csv(os.path.join(self.path_intermediates, 'match6.csv'))
# 2-1-7
def make_matching(self):
@ -537,21 +572,9 @@ class DailyPreprocessor():
self.matching = pd.concat(self.matching)
self.matching = self.matching.dropna().sort_values(by=['inter_no', 'node_id', 'move_no']).reset_index(drop=True)
self.matching['move_no'] = self.matching['move_no'].astype(int)
self.matching.to_csv(os.path.join(self.path_root, 'Intermediates', 'matching.csv'))
# 2-2
def get_movements(self):
movements_path = os.path.join(self.path_root, 'Intermediates', 'movement')
movements_list = [pd.read_csv(os.path.join(movements_path, file), index_col=0) for file in tqdm(os.listdir(movements_path), desc='이동류정보 불러오는 중 : movements')]
movements = pd.concat(movements_list)
movements = movements.drop(columns=['start_unix'])
movements = movements.drop_duplicates()
movements = movements.sort_values(by=['inter_no', 'phas_A', 'phas_B'])
movements = movements.reset_index(drop=True)
movements.to_csv(os.path.join(self.path_root, 'Intermediates', 'movements.csv'))
print("2-2. movements를 생성했습니다.")
# 2-3 node2num_cycles : A dictionary that maps a node_id to the number of cycles
self.matching.to_csv(os.path.join(self.path_intermediates, 'matching.csv'))
# 2-2 node2num_cycles : A dictionary that maps a node_id to the number of cycles
def get_node2num_cycles(self):
# node2inter = dict(zip(inter_node['node_id'], inter_node['inter_no']))
self.node_ids = sorted(self.inter_node.node_id.unique())
@ -563,14 +586,14 @@ class DailyPreprocessor():
df['num_cycle'] = 300 // df['min_cycle'] + 2
inter2num_cycles = dict(zip(df['inter_no'], df['num_cycle']))
node2num_cycles = {node_id : inter2num_cycles[self.node2inter[node_id]] for node_id in self.node_ids}
with open(os.path.join('Intermediates','node2num_cycles.json'), 'w') as file:
with open(os.path.join(self.path_intermediates,'node2num_cycles.json'), 'w') as file:
json.dump(node2num_cycles, file, indent=4)
print("2-3. node2num_cycles.json를 저장했습니다.")
print("2-2. node2num_cycles.json를 저장했습니다.")
# 3. 이슈사항 저장
def write_issues(self):
print('3. 이슈사항을 저장합니다.')
path_issues = os.path.join(self.path_root, "Results", "issues_preprocess_daily.txt")
path_issues = os.path.join(self.path_results, "issues_preprocess_daily.txt")
with open(path_issues, "w", encoding="utf-8") as file:
for item in self.issues:
file.write(item + "\n")
@ -589,4 +612,4 @@ class DailyPreprocessor():
if __name__ == '__main__':
self = DailyPreprocessor()
self.main()
self.main()

BIN
requirements.txt View File


Loading…
Cancel
Save