Commit 4e4564c

Nick Faro committed on
Single-stepping support. Still need to tweak and assign a hotkey
commit 4e4564c339c9dc1a89bfb8b29e89eb365ec64e3c parent b1bfde1
4 changed files +386−347
Modifiedsrc/constants.pas +2−0
@@ -30,6 +30,8 @@ const
30 SYM_TICKS_PER_ROW = 'ticks_per_row'; 30 SYM_TICKS_PER_ROW = 'ticks_per_row';
31 SYM_ORDER_COUNT = 'order_cnt'; 31 SYM_ORDER_COUNT = 'order_cnt';
32 SYM_LOOP_ORDER = 'loop_order'; 32 SYM_LOOP_ORDER = 'loop_order';
33 SYM_SINGLE_STEPPING = 'single_stepping';
34 SYM_SINGLE_STEP_STOPPED = 'single_step_stopped';
33 35
34 SYM_HALT_INSTR = 'instrument'; 36 SYM_HALT_INSTR = 'instrument';
35 SYM_HALT_PERIOD = 'channel_period'; 37 SYM_HALT_PERIOD = 'channel_period';
Modifiedsrc/hUGEDriver +1−1
@@ -1 +1 @@
1 Subproject commit f879bf3f755a68aec6729c481a80c648e1753c40 1 Subproject commit df5a07ba1d684bf25b1de949ac0d9521a8937c32
Modifiedsrc/tracker.lfm +362−346
@@ -1862,7 +1862,7 @@ object frmTracker: TfrmTracker
1862 ParentShowHint = False 1862 ParentShowHint = False
1863 end 1863 end
1864 object PanicToolButton: TToolButton 1864 object PanicToolButton: TToolButton
1865 Left = 499 1865 Left = 522
1866 Hint = 'Stops all sound output' 1866 Hint = 'Stops all sound output'
1867 Top = 0 1867 Top = 0
1868 AutoSize = True 1868 AutoSize = True
@@ -1883,7 +1883,7 @@ object frmTracker: TfrmTracker
1883 Action = StopAction 1883 Action = StopAction
1884 end 1884 end
1885 object ExportGBButton: TToolButton 1885 object ExportGBButton: TToolButton
1886 Left = 217 1886 Left = 240
1887 Hint = 'Export the song as a standalone ROM' 1887 Hint = 'Export the song as a standalone ROM'
1888 Top = 0 1888 Top = 0
1889 AutoSize = True 1889 AutoSize = True
@@ -1899,21 +1899,21 @@ object frmTracker: TfrmTracker
1899 Style = tbsDivider 1899 Style = tbsDivider
1900 end 1900 end
1901 object ToolButton6: TToolButton 1901 object ToolButton6: TToolButton
1902 Left = 178 1902 Left = 201
1903 Height = 22 1903 Height = 22
1904 Top = 0 1904 Top = 0
1905 Caption = 'ToolButton6' 1905 Caption = 'ToolButton6'
1906 Style = tbsDivider 1906 Style = tbsDivider
1907 end 1907 end
1908 object ToolButton7: TToolButton 1908 object ToolButton7: TToolButton
1909 Left = 1043 1909 Left = 1066
1910 Height = 22 1910 Height = 22
1911 Top = 0 1911 Top = 0
1912 Caption = 'ToolButton7' 1912 Caption = 'ToolButton7'
1913 Style = tbsSeparator 1913 Style = tbsSeparator
1914 end 1914 end
1915 object OctaveSpinEdit: TSpinEdit 1915 object OctaveSpinEdit: TSpinEdit
1916 Left = 609 1916 Left = 632
1917 Height = 27 1917 Height = 27
1918 Hint = 'The octave offset for entering new notes' 1918 Hint = 'The octave offset for entering new notes'
1919 Top = 0 1919 Top = 0
@@ -1924,14 +1924,14 @@ object frmTracker: TfrmTracker
1924 TabOrder = 0 1924 TabOrder = 0
1925 end 1925 end
1926 object ToolButton9: TToolButton 1926 object ToolButton9: TToolButton
1927 Left = 558 1927 Left = 581
1928 Height = 22 1928 Height = 22
1929 Top = 0 1929 Top = 0
1930 Caption = 'ToolButton9' 1930 Caption = 'ToolButton9'
1931 Style = tbsSeparator 1931 Style = tbsSeparator
1932 end 1932 end
1933 object Label22: TLabel 1933 object Label22: TLabel
1934 Left = 566 1934 Left = 589
1935 Height = 22 1935 Height = 22
1936 Top = 0 1936 Top = 0
1937 Width = 43 1937 Width = 43
@@ -1942,7 +1942,7 @@ object frmTracker: TfrmTracker
1942 ParentFont = False 1942 ParentFont = False
1943 end 1943 end
1944 object Label23: TLabel 1944 object Label23: TLabel
1945 Left = 674 1945 Left = 697
1946 Height = 22 1946 Height = 22
1947 Top = 0 1947 Top = 0
1948 Width = 70 1948 Width = 70
@@ -1953,7 +1953,7 @@ object frmTracker: TfrmTracker
1953 ParentFont = False 1953 ParentFont = False
1954 end 1954 end
1955 object InstrumentComboBox: TComboBox 1955 object InstrumentComboBox: TComboBox
1956 Left = 744 1956 Left = 767
1957 Height = 25 1957 Height = 25
1958 Hint = 'The selected instrument for new notes' 1958 Hint = 'The selected instrument for new notes'
1959 Top = 0 1959 Top = 0
@@ -1971,7 +1971,7 @@ object frmTracker: TfrmTracker
1971 Text = '(no instrument)' 1971 Text = '(no instrument)'
1972 end 1972 end
1973 object Label24: TLabel 1973 object Label24: TLabel
1974 Left = 958 1974 Left = 981
1975 Height = 22 1975 Height = 22
1976 Top = 0 1976 Top = 0
1977 Width = 35 1977 Width = 35
@@ -1982,7 +1982,7 @@ object frmTracker: TfrmTracker
1982 ParentFont = False 1982 ParentFont = False
1983 end 1983 end
1984 object StepSpinEdit: TSpinEdit 1984 object StepSpinEdit: TSpinEdit
1985 Left = 993 1985 Left = 1016
1986 Height = 27 1986 Height = 27
1987 Hint = 'How many rows to step down after entering a new note' 1987 Hint = 'How many rows to step down after entering a new note'
1988 Top = 0 1988 Top = 0
@@ -1998,7 +1998,7 @@ object frmTracker: TfrmTracker
1998 Action = PlayStartAction 1998 Action = PlayStartAction
1999 end 1999 end
2000 object ExportGBSButton: TToolButton 2000 object ExportGBSButton: TToolButton
2001 Left = 302 2001 Left = 325
2002 Hint = 'Export the song as a GBS soundtrack' 2002 Hint = 'Export the song as a GBS soundtrack'
2003 Top = 0 2003 Top = 0
2004 Caption = 'Export GBS' 2004 Caption = 'Export GBS'
@@ -2006,14 +2006,14 @@ object frmTracker: TfrmTracker
2006 OnClick = ExportGBSButtonClick 2006 OnClick = ExportGBSButtonClick
2007 end 2007 end
2008 object ToolButton5: TToolButton 2008 object ToolButton5: TToolButton
2009 Left = 494 2009 Left = 517
2010 Height = 22 2010 Height = 22
2011 Top = 0 2011 Top = 0
2012 Caption = 'ToolButton5' 2012 Caption = 'ToolButton5'
2013 Style = tbsDivider 2013 Style = tbsDivider
2014 end 2014 end
2015 object ToolButton10: TToolButton 2015 object ToolButton10: TToolButton
2016 Left = 394 2016 Left = 417
2017 Hint = 'Export the song as WAV or MP3' 2017 Hint = 'Export the song as WAV or MP3'
2018 Top = 0 2018 Top = 0
2019 Caption = 'Render Song' 2019 Caption = 'Render Song'
@@ -2021,19 +2021,24 @@ object frmTracker: TfrmTracker
2021 OnClick = ToolButton10Click 2021 OnClick = ToolButton10Click
2022 end 2022 end
2023 object ToolButton11: TToolButton 2023 object ToolButton11: TToolButton
2024 Left = 212 2024 Left = 235
2025 Height = 22 2025 Height = 22
2026 Top = 0 2026 Top = 0
2027 Caption = 'ToolButton11' 2027 Caption = 'ToolButton11'
2028 Style = tbsDivider 2028 Style = tbsDivider
2029 end 2029 end
2030 object LoopSongToolButton: TToolButton 2030 object LoopSongToolButton: TToolButton
2031 Left = 183 2031 Left = 206
2032 Top = 0 2032 Top = 0
2033 ImageIndex = 87 2033 ImageIndex = 87
2034 OnClick = LoopSongToolButtonClick 2034 OnClick = LoopSongToolButtonClick
2035 Style = tbsCheck 2035 Style = tbsCheck
2036 end 2036 end
2037 object ToolButton12: TToolButton
2038 Left = 178
2039 Top = 0
2040 Action = SingleStepAction
2041 end
2037 end 2042 end
2038 object MainMenu1: TMainMenu 2043 object MainMenu1: TMainMenu
2039 Images = ImageList1 2044 Images = ImageList1
@@ -2318,336 +2323,343 @@ object frmTracker: TfrmTracker
2318 Left = 152 2323 Left = 152
2319 Top = 32 2324 Top = 32
2320 Bitmap = { 2325 Bitmap = {
2321 4C7A5C0000001000000010000000132900000000000078DAED5D077C1545FE9F 2326 4C7A5D0000001000000010000000F92900000000000078DAED5D077C1545FE9F
2322 24A89CA2A814B1DC5FEE3C3D15C1029E200A51BA078228081A44AAC22145448A 2327 24A89CA2A8A062B9BFDE797A2A82053C5114A2523D154451D1208282E2214544
2323 208B02A1283594D07B470825845E058107862A01420284167A2724F0FBCF6FF2 2328 4041160542516A28A1F78E109AA1491504168C346921A143E89D10E0F79FDFE4
2324 F631BB6F767776F71142789BCF37F37666BEF39BDE760A21D9E6011D6C9BF10F 2329 ED6376DFCCEEECEE2384F0369F6FE6EDCC7CE737BDED144272CD0316B836E31F
2325 674FA4AF315FB56A958FCFBBA5E7DE320743BE5E8ED16F59F92277F5E10BA47C 2330 CE9E48DF64BE60C182209F77CBCABD640E52BE558EECB7AA7C91BBD6F08553BE
2326 2337347A26F2E5E28FD8F2BF7FF8C57C7D5E3008B350BEA2281AF0F6F4669C3C 2331 CC0D939E8D7CB5F823AEFC1F1A7E31DF9A17246116CAD734CD04DE9ED58C9347
2327 62E2B60C72FAE326AC60F12ECB079B7C08F2837C8BDF860F577768DCF4EA139B 2332 6CDC56415E7FFC84151CDE55F9E0920F117E84EFF05BFA707587C9CD803E71E9
2328 6E805D6E366ABFC11657ADDF3955D20DB775AF9F5C2995CF5702332B37F4FD13 2333 06B8E5E6A2F61B5C718DFA9D5315DDF05BF786C85552F97C25307372C3DA3F21
2329 22681F6DCB1784D3B67CAE8DBF23E13769AFA5E54BA866F26DA77FB0FDB76AEF 2334 82F6D1B57C41385DCBE7DAF82B127E9BF65A59BE826A27DF75FA47DA7FA7F65E
2330 65C3AC8F5B2BFD40CA37EC1F4AA69B61FFD640DF6D1DA6E11AC9B6E803DF4E3E 2335 35CCD6B875D20FA77C69FF5031DDA4FD5B89BEDF3ACCC495C976E8035F4E3EB8
2331 D8E1BB3197885FB7E943ACE248867F0FF6FFEFE6FACB697A19965107FD993BCD 2336 E1FB3157885FBFE9439CE248857F0DF6FFAFE6FACB6B7A49CBA887FECC95E65F
2332 BFD7C27FAF8FD7B36BB9CBAAF4C8EE7283E1CF99E10F3E66F3213807C2C10D5F 2337 6BE1BFD6C7EBB9B5DCE5547AE476B991F0E7CDF0471EBBF9109C03E1E087AF62
2333 C69E53F9667C33732B333B7EBC5BF9326EC89A5BA5A19DBCE634EFB9CDB3F742 2338 CFAB7C3BBE9DB993991B3F5EAD7C153754CD9DD2D04D5EF39AF7FCE6D96BA12C
2334 5976C377239F57F5F3AEDCF71F69B754AEC1F74769BE2C44FE967D88607EDAF7 2339 FBE1FB91CFABD67957EEFB8FB25B0657F2FD5199AF0A91BF551F22989F0E7ED3
2335 4D8B9A5BA9467C192E5373AA7C3BB0FEBE1DEC8304A6DF46B228FE82F283F2EF 2340 A2E64EAA8CAFC2656A5E95EF06CEDFB7237D90F0F4DB480EC55F447E44FE9594
2336 A4FC9C5A76A5F8266B4C1CF3C1C6F747D1BA171BFD47613BAD08F40DDC10CEAF 2341 9F57CBAE12DF668D89673EB8F8FE285AF7E2A2FF286CA73581BEC40DE1FCBA8C
2337 1BF15555563E1F2E83B048CBD7BB6F473ED17D4F502CCA970DF9867D3349F9A6 2342 6FA8AAF2F97049C2A22CDFEABE1BF9C4F23D4173285F2EE44BFB668AF26DF97E
2338 7C37F2033516B94365DAECFD6EE083E0B7133F4000EAC540A583DD7192AB719A 2343 E4876B2C7285CAB4DDFBD5C007C16F2F7E8030D48BE14A07B7E3245FE3342FE3
2339 93F19EDEBE668C245166CCC67977826F77CC7A97CE1704640D8E9D47C4971D7F 2344 3DAB7DD31849A1CCD88DF3AE04DFED98F52A9D2F08CB1A1C378F88AF3AFE92F1
2340 19F1DDCAE7C7E866EF41F977977C5167CD8C2FD361CC466300B7730E96FD14C5 2345 FDCAE7C7E876EF11F957977C5167CD8EAFD261CC456300BF730E8EFD14CD25DF
2341 26DF6E3D827333E09DA3B1EA7F8BE4A87983D6BE5ED8E367AE07CFE4F2E307BD 2346 6D3D8273331098A371EA7F8BE4187983D6BE01B8E367AF07CFE6F2E307ABBF44
2342 BF44FE34927FCB8EE207D50DBBF2553B76E41B71F5F2F5E1B2E25AEC4BD0C9D1 2347 FE94C9BF64470B81E1865BF9861D37F2655CAB7C6BB89CB80EFB122C72CCE176
2343 86DBAE7CABF837CA5392E686634249F9B7A34CDEEDF3004EFBF876D6F9C9C4BB 2348 2BDF29FE65794AD15C3A2654947F39CAE4D53E0FE0B58FEF669D9F4ABCBBE13A
2344 1DAE5558ECAF89769FD681E2BAF17B20E24ED60DD9F47792F6566E64F5782DA7 2349 85C5FD9A68FF691D2EAE1FBF8723EE54DD504D7F2F69EFE4464E8FD7F2EA1CA2
2345 CE215ACDA1062AAE6DCDB5DCCE3918C578AD5A96853F28FFDE95EFF387C4B766 2350 D31C6AB8E2DAD55CCBE59C83D1E46BD5722CFC11F9D7AEFCA03F14BE35DB71C1
2346 332EA873266C9C4D3221F31DFCD6988CFEF6DA57F9166EF8C674BE7E6C26C7BB 2351 983361E36C920D95EFE097C664F477C0BEC177702338A60BF663B339814DBA41
2347 49D7E7865158787F138ECBAB667EF0F1157F68DCB1E0EBFD7BCBDF1ABEF0DBB3 2352 376461E1FD4D382EAFDAF921C8D7426172C7816FF5EF257F9BF8C26FCF412E0F
2348 8FCB43D1CAD6855F3337E9DB6F26B107C7A42DB6B5E746E89EFC9E1BE3EF3026 2353 CD2CDB127ED3DC6470BF99C21E1C9BB6D8D59E1BA17BEA7B6EE4DF616CF64239
2349 7BA12CC3C3731D7CC377C1BD1527CEB884B81C2F8487872B56302BC3EA98C6E8 2354 8687E77AF886EF837B294EBC7109F1395E888D8DD59C6057868D318DEC41F307
2350 41F3C2850BAF92E5272727FBA0F2CDDC90916FE60FD53C3E3E9EC95455F537A2 2355 1E7860812A3F3D3D3D08836FE7868A7C3B7F18E62929294CA6A11ABF118D1B37
2351 75EBD6AC1CA19A596DCBF355550D9B115F0DAFAA8AF4CCF86EE507FDEFCEFF7C 2356 66E508D5EC6A5B9D6FA846D8647C23BC862AD2B3E3FB951FF1BF3FFFF3F95604
2352 BE15C1883F77EE5C4B2E1F1E3DDFFB6E07E177C97704796E4EDA43ACFF0E6E73 2357 197FCA94298E5C3E3C567EE0DD0D62AF92EF08EADCBCB487D8FA1DDCE51E562D
2353 0FABE27553AFDA91AF19E7D890CFF344EFB75B7EA0C2EF26FEEFD13DC46EBF9B 2358 E0A6557523DF34CE71219FE789DE2FB7FC7085DF4FFC5FA37B88FD7E37F7C307
2354 BBE183C1B909812AFFB2DFFAC1444FD6EF467A76E7BDB28A9FA58FDB7917C562 2359 C9B909E12AFFAADFFAC1464FD5EF323DB7F35E39C5CFD1C7EFBC8BE6B00741A6
2355 0F82911AA8F91F25406BD86F6B1CBB3B83C42C2F39E1EAFD24E567A3B9144158 2360 866BFE470BD31AF6CB1AC7FECE20B1CB4B5EB8563F29F959369722080BF72DCA
2356 B86F51FA5A5AFCBDD768EC271A7BDAE38B5B0B19BE1A7EEE7C2CE17961A2F0F3 2361 5A4B8BBFF7CAC67EA2B1A73BBEB8B550E11BE1E7CEC7129E17260A3F1F4ED17E
2357 E114ED27B0A84FE5CE0D33A967FCD6C719E73FDBEB4724EA35BB7C12003EB1D9 2362 0287FA54EDDC309B7A26647D9C3CFFB95E3FA250AFB9E59330F089CBF63FD73E
2358 FE67DB4762BF0AC8CCFF59C41FB8E19B7DAFB5215FE886ADFD370EF86EE4AB65 2363 0AFB554065FECF21FEC00FDFEE7BAD0BF942375CEDBFF1C0F723DF283BC6FC89
2359 479D3F510CF6AF9871BDBD5DCD3979C464EF933EDE55AECAD7A785159F875D3E 2364 26D9BF62C70DF4764DE7E4119BBD4FD67837B806DF9A164E7C1E6EF97CD8D11F
2360 1F76F4871DFF5BC41FB8483F8D1BBCFB5630E96B3A3D3B26FBD62B6EFA4898CE 2365 6EFCEF107FE023FD4C6EF0EE3BC1A6AFE9F5EC98DC5BAFF8E923613AFB383BCD
2361 2ECE4E73D3C7F3C95661D30F8A6EFDAB1D3FA8B2FDC261634FA3D3BEAE5EB65D 2366 4F1F2F28DB804B3F6896F5AF6EFC60C80E09878B3D8D5EFBBA56D96EFD2093C3
2362 3F18C9E1E3D3AE6CBFF410ED9F3409A772F7ADBDCFAA71BE9D31B9ED31A5C1D8 2367 C7A75BD921E921DA3F69134EEDEA5B7B9F53E37C376372D7634AC9D8D74DBFC8
2363 D74EBFC8F1F98906E308DBF318BC3BD2E5CFCBB1E8EF4A8F9FECF84120DBE93C 2368 F3F989927184EB790CDE1DE5F217E038F47795C74F6EFC2090ED751E411A9F76
2364 82617C9A7D877539E7253D36D4FBC124DC76E749A4F39541FA3A399FE85EAA73 2369 DF617DCE79298F0DAD7EB009B7DB7912E57C25495F2FE7135D4B75CE955C0F77
2365 EEE47AB8BBA2CF14087FDA280F018F675DDFDC891F1CE793009CDD9B25EB74EE 2370 55F499C2E14F17E521ECF16CE99B7BF183E77C1286B37B73649DCED5DE5797F5
2366 F6BEBA511FCB4DFF58A66F6664D78D7C8BF08BDB4367DF241CF53F6C7C4310F5 2371 B1FCF48F55FA6632BB7EE43B845FDC1E7AFB26E1A9FFE1E21B82A8EF62D71753
2367 5DCCFA62525C1B6EB8F9EE255D5F89BEB3D88CE79CD8FE0664FF5570FF9873F9 2372 E2BA70C3CF772FE5FA4AF49DC5653CE7C5F6372CFBAF22FBC7BCCB5701F8C87B
2368 320017798F5B23E8A43107230448BEDBF007F78FBA939F1DFBF6D27398B273A7 2373 DC1A412F8D39C81026F97EC31FD93FEA4F7E6EECDB2BCF61AACE9DCAE6519DF6
2369 46F3A8567BBD88F9DE2FEEFE1AEB951FE67CFF34177D07CC2AF97AE474F96ED2 2374 7A11FBBD5FDCFD35CE2B3FECF9A1692EFA0E9853F2ADC8EBF2FDA4BF8FFCE737
2370 DF45FE739BFFEF96B1BA7CFFD3F7C589836CFF53B47E5DDE0D237B6EF8F6C3E0 2375 FF5F2D6375F5FE67F08B1307D5FEA768FDBABA1B327B7EF8EEC3E09DEB1417C4
2371 9C6B1517C436DFCD5CCB9DE513D7DC40C49FDB38B837E60FA4CF8D55C4DFD5CC 2376 35DFCF5CCB95E513DFDC70C49FDF38B836E60F94CF8DD5C4DFD5ECE77E2DE375
2372 E77E75E375C1F724301BAB2BA23963633E04806FE6572BFF836C7C98CC415BC6 2377 C1F724B01BAB6BA23963391FC2C0B7F3AB93FF41353E6CE6A01DE3C365FFCD36
2373 87CDFE9B695CC8FA5D824F88F3F912A9791BC9B922B77C4202334F1D3C67309B 2378 2E54FDAEC027C4FB7C89D2BC8DE25C915F3E21E199A78E9C33984BBE3978994B
2374 7C73703297EE60EE2E28DB9DECE0599D593786274EE7307CFB8BC1199FE30AE7 2379 F730771791ED4F76E4ACCE9C1BC313AF7318C1FDC5E08DCF718573301EB82173
2375 601C70FDE670ACB8466B70D5B5607EE789AB5C8518EDCDD6F0F56E106E5DAF0C 2380 384E5CD91A5C632D58C879E2065723B2BDD926BED50DC2ADEB55E113EE5E5CEB
2376 9F70F7E2EAF756CAF0F9BB72F561514CF6CFEAF922374477F4DA85FEFC205B63 2381 DE4A153E7F57AE352C9ACDFE592B5FE486E88E5EB7B09E1FE46AECCEF98908EE
2377 77CE4F44703FB0CC7A58D11C80AC7CD11A483BFEC881F5DA9DDE3B15941F941F 2382 0756590F2B9A0350952F5A03E9C61F79B05EBBD27BA722F223F22367F8E7FDF4
2378 3CC33FE7A75F30FCC1F0071FB939215B7C9333DDA5E52B39308D82711B8CAB7B 2383 8B843F12FEC8A33627E48A6F73A6BBB27C2D0FA651246E2371752DD5219A8F3D
2379 A90E515CECA936B923439A2F7337C3EDE2DFC1FC63D9DE05D3277BA74F76AD73 2384 D536776428F355EE66B85CFC2B987F1CDBBB48FAE4EEF4C9AD75AE8AB95D9DAB
2380 65CCCDEA5C197345E24EC9EC5A2707E32F187FC1E78ECF3DE8D5C0EC45B33E0B 2385 62AE29DC29995BEBE448FC45E22FF25CF1B907AB1A9EBD68CE6761CACF0B32EC
2381 D3F8BC20D58E11D7E25C09BD5DE1BBA47C535532FCC4FC7C51A17C1BE789BA99 2386 C8B80EE74A58ED0ADF15E5DBAA8AE127F6E78B0AE5BB384FD4CF7C42E4B9D275
2382 4F083E77BA0EB7F9FDC468FFA66C9E119DFFC0E751C3BB5FD5B3E40CCE8F3073 2387 B8CBEF27B2FD9BAA794674FE039F47A577BF1A67C949CE8FB07383D797C917D9
2383 83D737922FB22B7A97916FA49AC9B7926B167EABB8E3DDB00ABF952AE23BF906 2388 15BDABC897A976F29DE4DA85DF29EE78379CC2EFA48AF85EBEC185610E32F2E4
2384 178039C8E0933DDA6F37F3C7E0E42116F75F8A39DA3B7AECCA77CB37F3BFE89E 2389 8EF6DBCFFC31787988C3FD97628EF98E1EB7F2FDF2EDFC2FBA67D40A55FEE590
2385 513D64F9B743BE1DBE5DF924F8FD2EABCAA225DFE91960327CD933E49D9CC165 2390 EF86EF563E897CBFCBA9B2E8C8F77A06980A5FF50C792F6770B9C98B117EDEE5
2386 272F06F939977FD7D51DDC7D855C3F50DBAFB33A93D37777077F8F87A2394153 2391 5F757507775F21D70F34F7EB9CCEE40CDEDDC1DFE3A1994ED05471C3AA2A975F
2387 C60DBD2A5D7E751CA37D63A2F4F3B3E777F2A7E9196E9A8CA35FA366DE17D0DC 2392 0B47B66F4C947E21F6424EFEB43DC3CD9471AC6BD4ECFB02A6BB378828CEBC9E
2388 BD414471E6F41C41B37C6775A6A5CBFDA341F92EF939A4FFE1C6EF60158F96F3 2393 236897EF9CCEB4F4B97F3422DF273F8FF43FFCF81D9CE2D171DECBDF79AEA63B
2389 5EEECE73D5DCF1AEBF8FDE4EDA3BE52B2667F0C9CA37927DBBF9567E970DBF91 2394 DEADF7D1BB497BAF7CCDE60C3E55F932D9979BEFE477D5F0CB64E704FF9A2AFB
2390 ECACE0DF53653F7273267A791A50749344031F2F72938A9F7BEDBB045FAE3E01 2395 F12BB3D151AF4DD15611B583BCF815067EE8B8E5247CB4703FD49A9F01DADA93
2391 F557A682B2E3128C3A7C03261C050DA6A4D2F053BB3E5E8F3F54F4987D1E60E6 2396 3070E70518BE074C189D41C34FED0679ED7F37D07ED2318009472E42C28EB3D0
2392 D99B1075E81AB4FCE334941BB618FA2D5AA2C1E0654BE1E9EE738796E9D68FBC 2397 F0F743F04ADF59D0F597D926F49A3B07EE6D37A54F99B65DC98B6D7E24A4DD6F
2393 DBF51742BAFFAE2272FA991B30E94406C38CB337E09B395BE0F4E914B874E918 2398 06E2C71DBE0023F79F67187FE4027C3179151C3AB40B4E9EDC4BB1138E1FDF0E
2394 C561B870E120AC59130315BBF688EBDCB9E6F31D3BD620E4A7352AFA4C399901 2399 8B1625418536ED935BB5AAF650CB965509F97E9181CEA30F9C87617BB218F077
2395 E38FA633E0EF86D336C2BE7D3B61CF9E3FE1E4C94438766C37C4C64E666948B9 2400 9DB1CB61CB9675B071E31F70E0402AECDDBB0166CE1CC5D29072EB533C44DACC
2396 CD289E275D57122F7E9D783C1D461F4E63C0DF75C6AE81FDFBFF626E9C3B7794 2401 2701FC34625F160CDA99C980BFDF1BB208B66EFD8BB971F4E81EE6C6C891BD82
2397 B93169D2601FAA5479BE33E9B294783160CC9134189E7485017FD71EB5120E1C 2402 A85CF9A156A4F51C1240F7C1BB33A15FDA6906FCFDCEC0F9B06DDB26E6C6C993
2398 48606E5CBA74CAE706FA03C3D2A64DE516E48738E245D4C88357218AA601027F 2403 07836EA03F302C4D9A546A40BE4D2601240CD87E0612681A20F077B5C4B99096
2399 D78C5E064949FB981B972F9FD5B871F1E26168D1A27C4BD26101F162D8B00357 2404 B685B971EAD411931B274EEC84060DCA35242DA69300FAF6DD761ABA6F3CCE80
2400 60C09E0B0CF8BBFAD03838783091B971F5EA798D1B57AE1C87AFBE0A6F4DBE9F 2405 BFABF44986EDDB53991B67CE1C33B971FAF43EF8F4D3D8C6E4EB292480013D37
2401 4BBC183968EF25E8BBF31C03FEAE3A2896F293981BD7AE5DD2B871EDDA1968D8 2406 9F842EEB8E32E0EFD77ACEA4FC34E6C6D9B3274D6E9C3D7B18EAD479E14BF2EE
2402 F09D6FC9A73F11D27616624CBFDD172032FE3403FEAEDC7F1E1C3A7490B971FD 2407 F784349D8818DC75C371884F39C480BF2B759B0A3B766C676E9C3B77DAE4C6B9
2403 FA158D1BD7AF5F807AF5DEFA8EE5E14F7E24A4D5D4497D769C839FB69C64C0DF 2408 73C7A166CD67BF6279F8EDEF0869346664E7B547E1FB550718F077852E9361E7
2404 15FBCE81C3870F3137D2D3AF69DCB87EFD12D4A9F3C6F794FD378AC749D3E879 2409 CE1DCC8DACACB32637CE9D3B09EFBDF7F4D794FD378ADB49BDC4A91D538E409B
2405 BDE2CF42D74D271822E9EFF2BD67414A4A0A732323235DE3467AFA65A85EFD95 2410 15FB19E2E9EF729D26C2AE5DBB981BE7CF6799DCC8CA3A0555AA3CDE9A726FA3
2406 2E94FB18C5BF48C5E6C3DF1CB0FC42B3B8C4EB3F6D3E053DB69E81F77A4E8323 2411 F817A9F079BF67BACF3B5E3F39F5DCF72B0F42FBD587E1A50E6361F7EEDD14BB
2407 478E50A4C0CD9B372832E0C68DEBD4AD34FA3B0D4A977EBA97AF1C16AB404893 2412 E0E2C50B14E7E1C28573D4AD4CFA3B134A97BEB763B01C162F4F48DDC4AAE493
2408 E81AA4F1B0E8673A4D5F5573F296E4073E697FE8F9E71F1C5CA4489E3E458B3E 2413 BE89F77D336E41B551ABD26F78BBF98E871EBAB157D1A2053A172B7673BC150F
2409 1CA9C773CF3DD45CC36F3C8C90868309F9A2DF6B24E297CEA44EF721D4E4598A 2414 3E78D3E726FE277D09A9D38B900FBB3E49E27E6C45DE6BD79B9ADC4F718F04B7
2410 A70CF0D8EDFA262BF9CD4DFC2DC07AEF96D4195F76F9FC19B2167EB0FCD66BE1 2415 5DAE6FB28ADFDCC4DF029CF76E299DF1E596CF9F21EBE007C76FBD0E7E003BD9
2411 073093AD714FEC07CBBDA5167E8000F4EFF43E0031ECF045EED94B7F0BAE443B 2416 26F7C47E70DC5BEAE0070843FFCEEA0310C30D5FE49EBBF477E02AB4A372B9CE
2412 6A2CD7FA4E0C533F8BFC60C1353E47CD58B6D3F8775DEAEF86F497E04BA7A153 2417 7762D8FA59E40707AEFC1C35B96CAFF1EFBBD45F0DE9AFC0574E43AF5CA29EEF
2413 2E91CF7776E32FCBD2DFF21CEF6C5AFF9BAF71B4A8FFADCABF64FD6F29DBACFE 2418 DCC65F8EA5BFE339DEB9B4FEB75FE3E850FF3B957FC5FADF51B65DFD2F2BFF39
2414 372AFF595CFF07BCBFA010F7F72929F6CF540A88FC60FC05E3EF5E8EBF2C1A33 2419 5CFF87BDBFA011FFF72969EECF540A8BFC48FC45E2EF5A8EBF1C1A3338C6BF9F
2415 58C6BF9B39C840C8BF53E91728D94EF36F4E893FB761703B07EEB6FEC9E6DF00 2420 39C870C8BF52E9172ED95EF36F5E893FBF61F03B07EEB7FEC9E5DF00DC7F33B0
2416 EC7F3330BF8B5EC355BC67B3F26BD1887E2DAB6AEEBFFE4BCB35F3A3D89EDE5D 2421 BF8BDEC4D50267B3F26BD188752DAB611EBAFECBCCB5F3A3D89ED55D291CE5AB
2417 4358CA97550DE4F3AA627E978FB57C83396D515B6724DF88EFB7A6DE44BE6272 2422 AA12F9BCAAD9DFE5E32C5F32A72D6AEB64F265FC9035F536F2359BFB84BDC817
2418 9FB013F9827D40D2F2F5FE30CBBF36E45BD64B4ACEB887481D9382732E3871E3 2423 EC0352966FF5875DFE7521DFB15ED2F2C63D44C69814BC73C18B1B97CE6F36BB
2419 D6F9CD5A37E4B8FAB3A1E5E5FBEA30F5DC18A238E32A41AE75DBE18C7B2B7F18 2424 A1C6B59E0DAD2E3F588719E7C610CD1B578B709DDB0E6FDC4BF9435E3FBBC85F
2420 D7CF36F297AB7BAF73C2BA42D0C487DD7454D713199F012C95877CD0BB673627 2425 BEEEBDCE0BEB0AC1141F6ED3D1584F243F0358290F056175CF6E4EDE6A37B09E
2421 AFB7EB5D4F637677A6195F3D374BB1D1B7F0F9D97777E62D77ECF06FDD79093E 2426 C6EEEE4C3BBE716E96E6A26F11F473F0EECC4BEEB8E15FBAF312826E28FB2100
2422 37A4FDE005CF97BC4BDDEF9C7CC1B95F52F9C7C93DB27A3E1FFF76F2AE421406 2427 9EAF78977AC839F98273BF94F28F977B64AD7C3EFEDDE45D8D680CD673BE9CB8
2423 FD395F565C9587C084B8D58FB805B3FC23B0E7F30FAF66EB72EF860F6ECF6B76 2428 060F810971A91F710976F947602FE81F5ECDD5E5DE0F1FFC9ED7ECCB0D30FD79
2424 E50668FE1C9DF7ECCA0D10FED93A37DD951B8197CF710164EA6E63AE2DBE80AB 2429 3AEFD9971B20FC73756EBA2F37C22F9FE302A8D4DD72AE2BBE806B859BFCA72C
2425 879DFC272DDF24AE24F8D9BF6107A9FB364DF9266E08E3DF76FA99E45929F960 2430 DF26AE14F8B9BF6107A5FB366DF9366E08E3DF75FAD9E45925F9609F0F22E53F
2426 9E0F82E53F8BC2EFA6FE7553FFDF99BB0672D65CBEFDBD971AAE9BBB8BCCD6C0 2431 87C2EFA7FEF553FF5F99BB06F2D65CBEFBBD9726AE9FBB8BECD6C0AB722FB36C
2427 CB726FB36CC3EFBF32B2D5735FF978943D0F57C005BB77CFEBBE3F3BD973AB79 2432 E9F75F15D9C6B9AF7C3CAA9E872BE082DBBBE72DDF9FBDECB935BDDBC9B79E01
2428 3793AF3F03D828EC86FED58DC504F7FC1027E7081BCDBFCA84DF24FFE7A47D87 2433 2C0BBBD4BF96B198E09E1FE2E51C61D9FCAB4AF86DF27F5EDA77E86BFDBFCFBB
2429 AED6FFBBBCBBCC71F9CF22D986DF306CEE59D5AB76CF5C7776A79033B98677B7 2434 CB3C97FF1C922DFD86E172CFAA55757BE6BAB73B85BCC995DEDDE6549F0ACE7B
2430 59D5A782F31E8CE240981ADCBC0F3108B7E37DE3023FD98DBF9C5AFE65C225B5 2435 90C5813035B8791F2209B7E77DE3023FB98DBFBC5AFE55C2A5B44ECCB62D7228
2431 4ECCB42DB2288BFC39F6C2F6C5240FF05C233714C11E7423AEDE0D9DFFFDB846 2436 8BFC39F6C2F6C5260FF05C991B9A600FBA8C6B75C3E2FF10AECC2D49FC99EA17
2432 6E19C49FA67E31EA3338DDBB42B278DF9E83FAFBAE974F82E70EDCE1B90D7777 2437 599FC1EBDE1592C3FBF63CD4DF57BD7C123977E00ACF6DF8BB3B15CC6D8CEDD8
2433 A782B68D311D1B05F962BE8BB37B826528F8B89FB370B8B642B4765B6D9F1589 2438 28C217F37D9CDD13294391C7FF9C85C7B515A2B5DB46FBAC29AC93D314D7D3CB
2434 75728AE47A7A237FC9F8D52C5C8ACD7528B2E117714DED39B82B2CF864E9983D 2439 FCA5E257BB70692ED7A1A8865FC4B5B5E7E1AEB0C893A363F6708C9DC10FDF6D
2435 10636770C3B7DB07C3FBB224CFF031BEB34B91DA432EE4F190E56BFCEC40BE9E 2440 1F0CEFCB523CC3477E6797A6B4875CC8E3A1CA37F9D9837C2B5FB10FE3CCD188
2436 2FD987B1E628443AFC567E91E1EBC36E87EF26FEADE2DE69F89DF06DF441EFE5 2441 72F89DFCA2C2B786DD0DDF4FFC3BC5BDD7F07BE1BBE8835ECBE797E5B6F3DBAE
2437 F3CBB2DBF96DF7FAFD53C1F0DF25E5AF7F584332C08BAE5D6B59A273E75AA448 2442 F5FBA722E1BF4ACA5FB7983AA47B006DDA547744AB56D549D1A2839E8B8ADA36
2438 91D1A542420ECC0909591FEEE57F4DD1979A37B542BB76B53AD7FE479B75F8B9 2443 392A6A696C80FF1945176A5ECF09CD9A556FF5CE3F9A2CC1CF5D5151490BBBC5
2439 2B24246675FFB006D40F0D7EBD3025C15BB3DD34C4EAE36760FEFCF970F5EA55 2444 D4A67EA8FDD3F1D19B0235DB452916EE3B0CD3A64D833367CEC08BB7555F45C8
2440 78F7B15A5B08195BF1D7B02F0945FF53E376C0CD9B99673488B0F2C809F860E1 2445 900A3FC57C4428BA1D1CBA162E5ECC3EA34184F9BBF7C3AB337E83967BCE40A7
2441 EFD0F1E855E8DDB033B4CAFDE1C48AA13F925FC2EA2306A68ED9C6CE74B872E5 2446 3AADA051FE37465488FE8EFC18530BD12363F09FEC4C87D3A78F8660CEF69D50
2442 9C1F961E3C0C55E6AF61DCF7C6CC8698412B0039C8ED13F60522EAE8882D70ED 2447 79DA22C67D69F02448EAF92B2007B99D633E4424ECE9BF0ACE9E3D02C78EED35
2443 DA59387FFE98068B0EEC874AF356316E99913320EEAFDD80769183DCC8D008C4 2448 E1976D5BA1E2D4058C5B66C07848FE6B03A05DE420373E3A0ED17767DF1554D6
2444 B0C3C336515927E0D4A9241F36EDFF0B2ACE5DC1B8EF8E9806B33D1B991DB48B 2449 7E3878302D88155BFF820A537E65DC17FB8F8549FA726607ED2207B9EDA3DF47
2445 1CE4F608FD0C3122396A039C4B3C00972EA5F8F043CC1248B8045076D47488DD 2450 F44F4F58064753B7C1C993BB82F83669366C3A095076E03898B9FE0FA68776D0
2446 F527D3433B681739C8FD39B42E62F4FE016B6147E4120D308F566AD01DC6FF30 2451 2E7290FB43740DC4A0ADDD17C3DAF8D926601EAD58BB1D0CFB76AC491FED2207
2447 4DA38F7691835C25F453C4B8845F57C184DABD617CAD5E42A0998A8343FE00E4 2452 B95AF4BB88A19B7E5A00C3DFE904C3AA771402CD0C6CEFFD3B2007B9DF455747
2448 20F7C7D05A8849BB7A2F83C9757F813F366C80B56BD668807A68B6B6FD0C9816 2453 8C5CDF692E8CAAF123FCBE6C192C5EB4C804D443B3C5CDC7C3D8B86E90DA6309
2449 D11F1207AE03E420F787D08F11D3B6F75C0CD3EB0D80554B97C2902A9D1916CD 2454 2007B9DF46BF8518BBA6C32C1857B33B2C9833077A576EC5F0CBD4A90CA88766
2450 9BC7807A6886FCB98D87C1DE7EAB0139C86D1F5A03317B67AFA530BB41142C89 2455 C89FF2495FD8DC75212007B9CDA3AB2226ADEB380726D54E80D949494C45248D
2451 89612A2266DA3406550FF9712DC6C29E5F56027290FB4C483EF27148C9F75A86 2456 1DCB60E8213FB9C110D8F8E37C400E72EF8B2A44DE8A2AF552C3A857670FA8A4
2452 7CB0646465E5ECE2993321A6C970868553A732A87AC85FF5DD54D8DD6739A07D 2457 1D9935610224D5EDC73063CC1806430FF90BBE1A031B3ACF03B48F5CFAFC1F45
2453 E4D2E7FF288ABD499E6BD484945B9F2B57AE3E22A0198FAAA4F8182F372FC513 2458 F167C8831FD725AF2CCD972F5F6711D08CC76BA4C4E000B720C55D447EC6870C
2454 C4F88C0F233CE1E566B776DCECDB90D5D98B32AA4C9D4D0CBE55998D9B6DC957 2459 7705B8B9AD1DB7FB36E474F6A28AAA526713C9B72ABB71B32BF9DAA5B18CD3B7
2455 6E8D65ACBEADF9F951C0959FE7C8C65C233BB25C4510378A8DF8520CF619D909 2460 B5103F0AB8EAF31CB9982BB3A3CAD50471A3B9882F4DB2CFC84D9835F1796DAE
2456 B3223EAFCD765C2977309D9DF677C0E03BA9E53DC4DA755B1A77CCD68688F88A 2461 E34ABB82E9ECB5BF0392EFA48EF7109BD76D99DCB15B1B22E26B4EF28098F860
2457 953C201A3EE8F66B59C953746BC28103E1EECCCE8C7BF09327F2BFCA5738BEE8 2462 D9AFE5244FB3AC09070E84BB333B3BEE21449EC8FF065FE3F8A2FBAF45F27937
2458 FE6B917CDE0D19FF1BEC05D0C4B7A97C420CD7C48BEE0AD7CB33DB8BE0936510 2463 54FC2FD90B608A6F5BF98448D7C48BEE0AB7CAB3DB8B109425891349F85DC957
2459 2706E1B7255F866F167EB3BD204677951BDD156EC4B7CCEF46FB87E5D632051F 2464 E1DB85DF6E2F88ECAE72D95DE132BE637E97ED1F565BCB1479BC8DE5AE043FA7
2460 6763B93BC1CF6AD960D1FFB8DD7C1280BC0A018AB7E013F83910F9BE84E8FE1E 2465 658343FFE372F34918F22A8429DE224FF8E740D4FB12A2FB7B54CE0E167014EF
2461 99B383051CC97BA3A4EE0F3271439A2B98BFB5C715AD07B4CB15DD61627D4F99 2466 8D52BA3FC8C60D65AE60FED61D57B41ED02D57748789F33D65B2B530B6F79479
2462 D15A18D37BCA9CC8970A93411C3AE00622FDA5DDB0CCC3CEF37F20CA9FAB4771 2467 91AF1426491C7AE08623FD95DD70CCC3DEF37F38CA9FAF47F371368166F3AD5C
2463 71368162F2AD5C91FC46EED43F6EF93263C16CD04F91390FD0F4EC4B8B3351CD 2468 53FC46EED53F7EF92A63C15CD04F51390FD0F6EC4B873351EDF7B7DAAFDD91CF
2464 F7B79AAFDD319E67D18D55047EB0F2BF8F23B17E48E386519FDAE69E62A77D0C 2469 B358C62A023F38F93FC851583F647243D6A776B9A7D86B1F031CE6C122FD14FB
2465 B098070BF653CCEB3C429C9F43E4B41F1DE407802F28AFE0221FC01DCA7FC1F1 2470 3A8F10EFE71079ED4747F861E00BCA2BF8C8077085F25F64FC7D953FD6365C56
2466 F75DFEE8DB70A37A5FD477518CD6040ADC507467B7DAEDABD8E96758F1DDCA57 2471 EF8BFA2E9A6C4DA0C00DCD7276ABDBBE8A9B7E8613DFAF7CED32ADF3B35B6718
2467 6ED33A3FB37586C12700795DE2AE5D6BAE77BF09BFF6CA2A3F71E7EC18ADDD32 2472 79C290D715EEDA75E606F69BF06BAF9CF21377CE8E6CED965DBF94F1B9B965B0
2468 EB97323E37B70CFA7979AF1BC272E7E5F27E56380ECF37EA9B6AEC70C8CCEB9C 2473 CECB07DC1096BB0097F7B3C67178BEAC6F6AB2C3213BAF73EED9F0656E187E00
2469 7B267C2337543F00B1E61BB9A328E67CC5820F16751F117C0721BAEF2A12EDA0 2474 E2CC97B9A369F67CCD810F0E751F117C072196EF2A0AED60D09EE8DC23FE9DDB
2470 CF9EE8DC23FE9DDB0BE5E786609F94E95E68E11C0E375631DAFF6C3487E0523E 2475 0B15E286609F94ED5E68E11C0E375691ED7F96CD21F8944F7C86DF733FD86BB9
2471 71197EC7FD60A7E55E5306D4FE9A64B9E7CB7EE66FAF7DBB7587FABD565F5E4C 2476 379501A3BFA658EEF9B29FFD3B60DF6DDD617CAFB596179B72CF459449A6C173
2472 CA3D17511A992ACFAADC6BF806659698943B9E2F596EC5FB6644654ED1CA36DB 2477 2AF726BEA4CC129B72C7F315CBAD78DF8CA8CC6966D976FB674577A713F7FB76
2473 3F2BBA3B9DD8DFB76B6BAE51E89EFDF93AE3B95727FB9079AEFEEC3AEBB3ECDC 2478 5DCD350ADD733F5F279F7BF5B20F99E75ACFAE733ECBCE0FF7529C78E31212A6
2474 706FC589332E21015A6F9845ED3FB86CFF85F7771AB5FFE2B96BEDF90F66ED3F 2479 F58639D4FE83CFF65F787FA7ACFD17CF5D9BCF7FB06BFF09919E46182C5B76ED
2475 2186A711FACA9659FB2FCB376CFF25FD2F538F88C6D2A6ED3F11B6FF60D9FE2B 2480 BF2A5FDAFE2BFA5FA51E118DA56DDB7F226CFFC1B1FDD742D725A8CC4D6A5C9A
2476 FEEB1264E626152ECDB8304AE7E15B6DB3717CCB8CE15DF28953FFBB9833B13B 2481 716154CEC397DA66797CAB8CE17DF28957FFFB9833713BF7E8BA1E70C30BAEC1
2477 F768BB1EB0C3F3ADC150FBBF0AB174475F0718955DC5A2FE5014FB7521EF67A2 2482 30FABF1A7174C75A07C8CAAEE6507F689AFBBA90F733B1ACC9B9D4864AEE6EE0
2478 5B9373AB0D35B8BB81E3F27E07BF736E84EB9BFCCFFD21B7FA2C6A0BE8DBBFEF 2483 B8BCDF21E49C1BE1FAA6D0737FC8A53E8BD10206F7EF07DD2521E7DF58CF29E5
2479 7397F89D7FA33FA794E7EADD5074F2D53A5BCBD772815F5F65C0BF95DE8A1FD7 2484 B95637348B7CA3CE36F3CD5CE0D75749F897D25B0BE1DAC9E7FB6CC0ADF7B172
2480 4C3EDF67036EBD8F9EAB70E77AF369C0F7B5F83A487FE6D0ADA4F1BF3B0704D0 2485 35EE5C6F3E0DF8BE165F0759CF1CBA9434A177E78000E6BA2FFBFC6920CE6E68
2481 D67D99E74F03B17643E1EA3245A767E586627E5EBBD7BE7A86B5ADFEC0EDA85F 2486 5C5DA659F49CDCD0ECCF6B0FD837CEB076D51FB81CF58B9BBAC671DD92423DE3
2482 ECD43596EB9624EA19ABEF47327746D9BAD3C941B8EDDEB70481A8B303D00E64 2487 F4FD48E5CE2857773A7908B7DBFB96201C757618DA819CF83EE974A68F521B23
2483 C5F749AB337DA4DA18D16FD97099F04126CF49B489A6E72C39F43F0432FC1AFF 2488 FAAD1A2E1B3EA8E4398536D1F69C258FFE877086DFE4FFB209D988ED9D48A12B
2484 978DCA44F890680A8F04A27D1C86C12A3C2DC71F810651BBA1E5C878F873FF69 2489 2031C861E865406F386C37D44ED8000D07A4C01F5B0F41FA8E3DB060C566A89F
2485 483E7414566DDA0BCDA23665EA5373B4C771087977A00A4F93E1FBE1FDEFE6C0 2490 B0225B9F9AA33D8E43C88B3D0CE875FB6D8597BF9A0CF3576E84CE9D3B43E9D2
2486 CACD7BA04F9F3E50BA7469E817190913C6CD66FA688EF6380E21A5FBA9F0341A 2491 A5A16B7C3C0C1F3A89E9A339DAE3388494EE6A40FFB8CF6678A1E168484DDB0E
2487 BA17DE69390512930E42891225203A3A1A9A366D0AEB62E3983E9AA33D8E4348 2492 254B9684C4C444A857AF1E2C9999CCF4D11CED711C429EEB6240FFA8D75F10DB
2488 A9BE2A3C5F0EFE0BC2DBCC82B971BF4364D7AEF0C5175FC0B861C360DE9C654C 2493 64224C49FE0DE2DBB4810F3FFC1086F6ED0B5327CF65FA688EF6380E21FFE968
2489 1FCDD11EC721E43FBD547822FAEF800AED174195966360C2D859F03B951BF3DB 2494 408FEBB616CA37FF052A371C0CC3874C84DFA8DCA49FE7C0EB4D86317D34477B
2490 52A8D6663CD34773B4C7710829D15D85E7931E1BA0529BA93068EA1AD8BA2B11 2495 1C879092ED0CE86FB75F06159B8C819E6316C1EAF5A9B07DC74E58AAAF83F8FE
2491 0E1E3A0CEB3D3B2172C40228DF7212A039DAE33884BCDE4D85A76ABB59B072E3 2496 D3A15CC39180E6688FE310F2545B03FA6BCD26C2FCE51B60DCB87150B3664D78
2492 6E983E7D3AD4AB570FAA55AB062D5AB4802963C7428B594BE1C931AB20A4E9B8 2497 FDF5D7A1418306307AC8106830710EDC3D780144D51B9A46CA742241146F6D40
2493 2452A637F1A15817159EC15356C3B469D3A064C99250B468512857AE1C8BBFFF 2498 EF357A218C1D3B164A952A05C58A1583575E7985C5DFFF9A7C092F4D980D0376
2494 B5F916DE9BB90446A69C865CBDE79F0E99B73937054190221D5578B6EEDC0F75 2499 1D827C9DA61D8A9ABA323F054190A22D0DE8ABD76D85F7DE7B0F1E7FFC712852
2495 EAD481575E79050A152AC4D4888808F8326A1444ACF4C0CCCB195076DE96CB21 2500 A40853E3E2E2E0A3848110375F8709A7CE43D9A9AB4E454DF9FDF5A8C9CB0882
2496 73FFA816326703419017DBA9F06078DF7FFF7D06E42E5DBA14EA7EFE39BC3379 2501 3CD2CC808EE17DF9E59719903B67CE1CA8F1C107F0C2A8E9D065C701A85EBD3A
2497 01F43D74126AD5AA059DF7A76684CE5E3F3A64E6BA5C14843CDF468567FDA61D 2502 B4DA9A713E7AD2D241511396E4A320E4A12606F4A52BD6422D9A6675EAD4810F
2498 509FA659C3860DE173CAFBECB3CFA06EF73E507DC946E89C729E95A3AFF71C83 2503 28EFFDF7DF871AED3A4395D9CBA1D5AE63AC1C7DB6712F3C98ACFF1E3576C12B
2499 E7E23C7F844C5B552E64EA4A429EAA49C83FBF417822A3E6C298E1C359BAF7EC 2504 5163E613724F3542FEF905428F4F980283FBF563E9DEA1430748ECDF1F5E1E91
2500 D913A2478C80F727C640E3EDFBA1E28EBFA0DD8285101EBF1D4A6FDA762A64D2 2505 049FACD90A15D6FE05CDA6CF80D89435507AC59F07A346CEED17357C76142B43
2501 B2E121139684B03254A02A214F37F2847F3902268C9E0563A3A2A04BC78E50FF 2506 77BC46C8BD1FEBB11FF587E18326C290840468DDB225D4FA3E1E9E1AFB0BBCBC
2502 A748787DDA22783F21198AD3F444F9A896A07878D6EA0D216362DFA67A0F12DC 2507 291D4AD0F444F9A896A4B879E2C2655183673E4FF56E24B817A7E0DBFA339F8C
2503 8B93F713CF9B8DA742997AC3E0C79FC6C1826931F0D1D458284ECBCF4BFB4EC0 2508 813235FBC277DF0F85E96393E0CD3133A1042D3F8F6ED90F8F6CDE0F2D0F9D62
2504 8B7B4F40C7D397998A786643426A4874CC28CAC54D4445C97DFF9942EEABE4D1 2509 2AE2BE659B32A2129306522E6E222A46AEFBCF68725D45DD84775A679026DD4E
2505 A0769754D2A6FF250DDA0D3C457E1E1E4F22476D227D27446197282424444529 2510 9AD0ACC741F243BF14123F7005E9323C01BB44515151069EA3E8433151803E01
2506 8AA114B30418EA356776F98111C71FF6D5575F1DC3B8EBDBB72F0C183000FAF5 2511 7366971F1871FCBE9F7EFAE95E8CBB2E5DBA40F7EEDDA16BD7AED0A95327A85F
2507 EB07BD7BF78666CD9A1D437303FE1C15582F619E2D56AC18142C5890A9F88EFA 2512 BFFE5E3497F0271BC07A09F36CF1E2C5E1CE3BEF642ABEA33E6FCFC22F41E360
2508 BC3D1DBF388D832D356AD4802E5DBA40F9F2E5E1C1FC5D212CDF56A6E23BEAA3 2513 55D5AA55A175EBD650AE5C39B8B1701B8829B49AA9F88EFA688EF6D0BED5FFF4
2509 39DA43FB7AFFD3A70455E777EAD409CA9429038FBCB4071E2E92CA547C477D34 2514 2949D569DF7CF30D942953066E797423DC5C3483A9F88EFA681EB0270BFFCCE6
2510 F7DA330A7F6CFBF6EDE1A38F3E8297C2C7C0DF2B1D672ABEA33E9A1B843F4E45 2515 CD9BC39B6FBE098FC60E86BF57DCC7547C477D3497843FD940B366CD98FD279E
2511 BB76ED98FD575F7D159E7DF659A6E23BEAF3F674FCB7A8BFF656A85001BEFD96 2516 7802EEBFFF7EA6E23BEAF3F62CFC67A9BF36972F5F1EBEFC9296D5975E828A15
2512 96D5F7DE834A952A4193264D988AEFA88FE6680FED0BC25F92AA2B5AB66CC9CA 2517 2B42DDBA75998AEFA88FE6680FED0BC25F8AAABF366CD890953F2C43342D998A
2513 1F96219A964CC577D44773AF3DA3F0AFFEDFFFFEC7FC5BB3664DA85FBF3E53F1 2518 EFA88FE6017BB2F02FFCDFFFFEC7FC5BAD5A35A855AB1653F11DF5D15C12FE25
2514 1DF5D1DC20FCEB54D07CC238580715295284A9F88EFABC3D1DBF34F5576AA952 2519 06683E611CAC838A162DCA547C477DDE9E855F9AFA2BE3B9E79E63F555850A15
2515 A5587D55B162451656AC8B50C577D44773B487F605E12F4DD54D8D1A3562F9A5 2520 5858B12E4215DF511FCDD11EDA1784BF3455577CFCF1C72CBFBCF3CE3B50A346
2516 76EDDA50B76E5DA6E23BEAA3B9D79EC1D182647B83060DA06AD5AA2CDE3FF9E4 2521 0DA6E23BEAA379C09EE46841B2A676EDDAF0DA6BAFB1787FFBEDB7998AEFA88F
2517 13A6E23BEAA3B96892C15B0714A25847655DC57AEEC30F3F64FE4615DF511FCD 2522 E6A24986401D50846209957506EBB937DE7883F91B557C477D34A7B89BE2260B
2518 299EA47848C7CF4FF11AC5D7141E8AE30278BCE6AF53143448BF1C53FE2B57AE 2523 BF30C593149F51E814FB04D003E64F51DC2949BF3C53FE2B55AA048D1A3562AA
2519 0CAD5AB562AA93F2FFCD37DFB03287AA93F28FF906F33CAAC1F29FF5E5FFD9D6 2524 97F2FFC5175FB03287AA97F28FF906F33CAA91F29FF3E5FFFEC6F7C31DC3EE60
2520 CF4281F10598EAA4FC17892B0245D61561AA93F25FB67F59A8B2AB0A5383E53F 2525 AA97F25F34B928145D5294A95ECA7FD96E65A1F2FACA4C8D94FF48F9CFE9F25F
2521 58FEB3BAFCE76DD616C2C6CD65AA93F21FB6683D9075BB98EAA4FCFF1FEDF3E7 2526 B07E5388193A85A95ECA7FCC2F4B812C59CF542FE5FFFF689F3FDFBA5D4C8DB4
2522 DA99C2D460FB9FBDCBFF9D04997E939019C010DA3389E46AB0F2F15C0D57F555 2527 FFB9BBFC5F4990711709190F0CD11DD248BEDAF36FCF57674117032456D379F0
2523 41C2150F0FDE0CEDF27C44D8A733BFAED86FF7865E4BCF00A27CFB193E84B79D 2528 666897E72362DE9DF05985AE1B96759C731810E59A8F0F22B6E96830F4D10EDA
2524 02AA3EDA41BB941F4DE1F1E1C79D9E1989002ADAD37F2A9A467B8037CB557FC9 2529 A5FC440A3D88EFD6E9E353010C34A7FF0CD44BD48137CB576B760F3232537F33
2525 403229CDF3512A40D52399209DE23DA3E3AFC1903F2E32D4EAB5D4876ACA7C9F 2530 03E0B5DDD920DFA4E88352CE42EFDF4F3054EF382788D7B56941FD216B3221A6
2526 FED8ED6910562F36EAAB3743668CEC540710E10994DF6EB367D8A68BD07FCD19 2531 E6CC844F9F891A3FE09BF70011BB89F29BADD4FBAE3801DD161D861E4B8E32DE
2527 18B8EE1CE37D12B904607339485F5B1A2E2F7E1DCECDF9370CDD7801C23E9F17 2532 DBF1B30156BE02598B4BC3A9594FC1D1C9FF863ECB8F43CC075313EB958A1EBE
2528 DDB464E884ADB3FBC2E4C826507A27E5B7FADDD36FF529E81177147A2F4B65E1 2533 7A521718155F174AAFA3FC46BFE95D171E84F6C97BA0D3DC0C16EE979B8D8553
2529 7EBFDD34B87C394583DECB8E4258DDDF463779376CF8AEA5D11033A203BCB995 2534 A77699D069EE1E88A9F1F3A0BA2FC6F45B3F271192FAB7806756537EFD5FF50E
2530 F29BADF0F45C7C14BACC4D866E0B0E53778E41AB09DBE1D4A97DB064C974D8B2 2535 B3F640EB29E9D076FA4EEACE5E68347C0D1C3CB80566CF1E07AB56CD65BFBF99
2531 6519FBDD69760284D59E3EA1D17BB9FA6F59321C86CF9D0CAFFE41F90DE33C5D 2536 B40962DE1937FCE397F2755B35BB1FF49B320A9EF89DF2EB24EBADA7A4D1F8DA
2532 E626D1F8DA071D672552770E4283A8F570E8D0360D5A8CDD02A11F4F9A4ABEDD 2537 022D27A65277B643ED84A5B063C79F263418B20AA2DF1A39867CB94C7F7A25C0
2533 E0796333C04B6B3241EACDF3B49FB117DA4CDA0DDF4D4D60EE341BB515EAFEB2 2538 A38BB2416A4ED59B8FDF0C4D466E80AFC66C62EED41FB81A6AFCF82BBCFFD3FC
2534 023EFB75A50F6DA7EC82D0EA23E7D2B238934427C2EB15EB31E4ABDA3BF1FBE9 2539 209A8E5E0FD155064CA1657102494C85A72AD46428F45AA7D4AFC76DA2DC8DD0
2535 0994BB073ACCDCC7D069F601E83C27191A47FE06EF96ABCBD0AC6F0C8454E8BD 2540 62C216866F266D835693D3E193F89FE1C5576A30D4EF920451E53B2DCE972F5F
2536 3657AE5C7D0979FC34D6CF08FC1D1616D68A62284534C5C8D0D0D031141DF5F6 2541 17426E3F84F533027FC7C4C434A2E843914831203A3A7A30454BAB3D2A7B3CD5
2537 A8EC19549F16A7C7FF443D9CAFC0DF2121F713D4579159E7DD27B0C7EA9DFFA3 2542 A7C5E9F63F500FE72BF07754D4F504F50D64D779D709ECB17AE7FF6871AE47DF
2538 C5B9297DDF9609FC4D5E10C3CF9EEBF33F5C97E1A5B544008A7C7AFDF0570BFA 2543 FFCC06FE260F8B1162CFF7F91FBECBF09CEA22004521AB7EEC1377864E4ECAF9
2539 4F4E1AF3BBE3EF9B31FF25376656F06145B712E4BBEA8549EB0F9E21CDCA3F61 2544 EDF0F7C5A4FF920B13CA07F16BDB92E4AB2A0F90C6AFDE47EA97BBCB8E7F81E2
2540 C6BF41F1A19E8F383EBA2C498A2A49B6471663EE0B0047A28A2550F5D2CDDF2A 2545 0D2B1FB16F50599296508AAC892FCEDC1700762714DF44D593177FAEF48C1DFF
2541 BF69C6BF3EE45511207DF45B8FA4F42CBC9EFE3E712DF21F4F5D559E2288F303 2546 5CEF274480AC41CFDEB2ABC3034BE9EFFD67E3FF71CF19ED1E8238D6BD98897F
2542 8A6AF8573B171401AEFDFC7742790F1CEA947F237D9FA09A9DEF5744C33FD5F3 2547 A6D59D22C0D91FFE4E28EF861DDF145E4EDF871B66C7BA1635F10F7678901CE9
2543 3972B6F7F324ED87023C80A9D40DAAFEEBCC0F05CEAB66C8E5F9C951C5C9B1E8 2548 F410C9FCF60E1EC054EA0655FF75F8DB3B8E1966C8E5F9E90925C8DEC467C9F1
2544 B7C885E83709F47F51053075D8EB040615C9437F5FC2F78B438A1BF2CF8C294D 2549 C46708747BC40030B5EF53047A162D407F9FC4F713BD4B48F987079726278694
2545 2E8E2D4D60D2BB0880C965084C7B3FF3F7C812855307BC468E8E7C971C1B5526 2550 2630F24504C0A83204C6BE9CFD7B40C90732BA3F49F60C7891EC1D582691224E
2546 9A2242C4676E8C2F4332A695030AA65E9E50B6F0AE3EAF134442BF1228D78338 2551 C4676E0C2B43CE8F7D0528987A6A78D907D6777E8A2036752D897275C4B65ECF
2547 30F8AD08959F32ECCD70EAC6268A0C0A4035756429EADE3B24BE47D1686ACFC3 2552 C619FC5D7D9F89A56EACA0384F01A8660C788EBAF70249695F2C91DAD379C0EE
2548 038E0C0354A959C4E66EFF2214C78E4FAD00D7D7D483D3311F027DDF87FA6B3B 2553 BE802A358B5BD9F65F8462EFBE31E5E1DCA29A7028E90DA0EF5B507F71CB0711
2549 3E87F0C0E14100BB9A036CAB770B7BDA029A157DE63EF2DBD7792F1C1C511292 2554 3AECEC09B0FE73803F6B5EC2C6A68066C5EEBB8EFCFC59C1E3DBFB9782B47ECF
2550 86BF05B16D9E80EED51F6E81FAC59E7980F4AE912F7A61F3421E1EF07B494075 2555 C2CC267741BB2A373740FDE2F7DD403A552D9438E3F3223A0FF8AD14A0FA4B83
2551 518B2723681128FC75E9D0C8919F865E18F169E891066F85F6A07AC5BDEDF473 2556 BBE3681178E0B3D2D1F103DE8D3EDEFFDDE8DDB59F8D6E4FF54A04DAE90703F3
2552 DEF9BD5C3DAA3D4A7E6B948F4C8D78D88398FEC52311D40D2C428F1A946FEC27 2557 7BF9DABF7E2BF9F9E342644CDCCD3A62DC87B7C45137B008DD2A29DFD84FB83D
2553 3CEEED5B60254546D7BC9F8CFAE8FE688A08EA06F1F2D983FD4C3BE0CB30BE1F 2558 D0B7C04A8A0CAA763D19F8E6F5891471D40D12E0B307FB996EC097617CDFB37B
2554 3D9202C78F1F83D4543CC3EA249C3E7D0A92920EC0D9B367E0E0C1643877EE1C 2559 17ECDBB7173232F00CAB0370E8D041484BDB06478E1C86EDDBD3E1E8D1A370EC
2555 9C3F7F8ED6FD0799CABB81BFE3FFDC0AA3685F29BA6C5986DDBB7781C7B319FE 2560 D8515AF76F672AEF06FE4EF963350CA47DA5C4B26519366C580FBABE12FEFAEB
2556 FAEB2FDAE66C8191EF856782F689121212FCF83B766C8711E1E1D4FE6E18F341 2561 2FDAE6AC82012FC56683F689366DDA14C25FBB760DF48F8DA5F637C0E0572B53
2557 156A670FE57B60DFBEBDB0752BE5D33E6CC28E1DF0E79F7F426262A21F7FEFDE 2562 3B1B295F872D5B36C3EAD5944FFBB09BD6AE853FFEF80352535343F89B376FA2
2558 04EAFE7BD46C3F1C3870009293936014953599F6BDD00F63681F90E1830F2025 2563 EEBF44CDB6C2B66DDB203D3D0D065259A368DF0BFD3098F601195E7D1576EDDA
2559 25C58F8FF6D1FCF0E1C33089F6778F1E3D0AFBF7EF8713274E30F752535361ED 2564 15C247FB68BE73E74E1849FBBB7BF6EC81AD5BB7C2FEFDFB997B191919B0B877
2560 9021308AFAE3E4C9937E7C8C9FA91F7F0C13AB5461B876ED1AE35CBF7E9DD99F 2565 6F1848FD71E0C081103EC6CF98B7DE8211952B339C3D7B9671CE9D3BC7EC8FFA
2561 FCDFFF6682BA9D9E9EEEC73F74E8101CA16980728F1F3FCEB84949498C9B9C9C 2566 EF7FB341DDCECACA0AE1EFD8B10376D33440B9FBF6ED63DCB4B434C64D4F4FA7
2562 4CD3E4144D93D3342D0E3255CF47BB6886FE3F72E4087367DFBE7DCC2D351C08 2567 697290A6C9219A16DB996AE5A35D3443FFEFDEBD9BB9B365CB16E696110E04C6
2563 8C3B54F57CB4BB7D7B129385EE2076EEDCC9DCDBBD7B378B33F4E30E9A0668A6 2568 1DAA563EDA5DB3268DC9427710EBD6AD63EE6DD8B081C519FA712D4D0334B3F2
2564 E76FDDBA0FBEF822D3CF1D3AA4323B18EFCB961D808D1B7732B998EE9B376F86 2569 57AFDE021F7E98EDE7162D32981D8CF7B973B7C1F2E5EB985C4CF7952B57C2FA
2565 5DBB76B17E31CF9F35EB1ABCF1C60D9830219D8ED73260F9F20C3873E60CEDC3 2570 F5EB59BF98E74F9C78169E7EFA020C1F9E45C76BE761DEBCF370F8F061DA873F
2566 9F84D1A31399BFE2E3E3A91FB7C1A851A3589F9CE7BFFDF6553AD64C83D2A5D3 2571 008306A5327FA5A4A4503FFE0903070E647D729EFFFCF367E85833134A97CEA4
2567 A8DFAED231C779A8570FD3E920942D1B0F5DBB2E6269121717071D3B76F4CBFF 2572 7E3B43C71CC7A0664D4CA7ED50B66C0AB469F30B4B93E4E46468D9B26548FE9F
2568 8B17A752FE15EADF33947311366C38C5C2DBBC79328C18B1858565F1E2C56C3C 2573 352B83F24F53FF1EA69C13B06CD94116DECF3F4F87FEFD57B1B0CC9A358B8D67
2569 AB6F03919F9A7A85FAFD2A4BDBE5CBD3E0C68D1BCCFFA74E5DA1F92711C68E1D 2574 AD6D20F233324E53BF9F61693B6F5E265CB87081F9FFE0C1D334FFA4C2902143
2570 CBC6A0461FF9CCCA6AF5EAD5D9F851F61BEBB163C7683896B16F413367CE84B5 2575 D81854F691CFAEAC56A952858D1F55BFB1EEDDBB9786632EFB163461C20458BC
2571 6BD7D2727CD6928FEB3470DC3F69D22458BD7A354BAB193366D0F08F801E3D7A 2576 78312DC7471CF9B84E03C7FD23478E84850B17B2B41A3F7E3C0D7F7F68DFBE3D
2572 30609E1071719E20262686855F7DF037E63D04E6AF4D9B3641B76EDD60DCB871 2577 03E6091117E70992929258F88D077F63DE4360FE5AB16205B46DDB16860E1D6A
2573 1A37B66DDBC6FCA97210187F69696934BDB7D3BCB595D521281BF361D7AE5D69 2578 72E3CF3FFF64FE3438088CBFCCCC4C9ADE6B68DE5ACDEA10948DF9B04D9B36B4
2574 1D74DEE706CAC5BA021FE4F1F29183750602EDECDDBB17A2A2A2587AAAFCA953 2579 0E3A167403E5625D810FF278F9C8C13A038176366FDE0C0909092C3D0DFE9831
2575 A7B2BCA9F23332327C7CCCEF985FD1FF6807EB02CC7FEBD7AFF7F1274F9ECCC2 2580 6358DE34F8E7CF9F0FF231BF637E45FFA31DAC0B30FF2D5DBA34C81F356A140B
2576 C84E3FBC79D3271FCB3E969D952B57C2C4891319D01FE3C78F87356BD668E463 2581 233BFDF0E2C5A07C2CFB5876E6CF9F0F23468C60407F0C1B360C162D5A64928F
2577 391B3C7830E4CB978F7DFBC2F0A15B281BC7D138F67DF9E59759BE477998362A 2582 E5AC57AF5E50A85021F6ED0BC3876EA16C1C47E3D8F7B1C71E63F91EE561DA18
2578 1FF325C6E1BC79F3D89CC3534F3D45CBCC68E607D4C73C54BC787178E18517D8 2583 7CCC97188753A74E65730EF7DC730F2D3383981F501FF350891225E0E1871F66
2579 1C0A7E57C5F2A4F2B16C623AAB6156E30181E519FD8AE6082C839191912C6C7C 2584 7328F85D15CB93C1C7B289E96C84D98807049667F42B9A23B00CC6C7C7B3B0F1
2580 1A0E1C3890F130EED4F8C374C27907B52EC0B8C774C4F9247DFEC138C5B8E6FD 2585 69D8A3470FC6C3B833E20FD309E71D8CBA00E31ED311E793ACF907E314E39AF7
2581 8079B173E7CECC0F9877308E478E1CC9CAB09E7FE9D225F6CD597DAE5CB9C2B0 2586 03E6C556AD5A313F60DEC1381E3060002BC356FEC99327D93767E3397DFA34C3
2582 71E346B6FE0865639CE13C9259FE1F3E7C38E3635DB160C102183468108B43CC 2587 F2E5CBD9FA23948D7186F34876F9BF5FBF7E8C8F75C5F4E9D3A167CF9E2C0E31
2583 476DDBB6D5C49B911B183F1B366C60698A698F61EBD0A103CB3F32E517FD1D1B 2588 1F356DDAD4146F3237307E962D5BC6D214D31EC3D6A2450B967F54CA2FFA7BE6
2584 1B0B43870E8561C38669F28ACBF5C3C2B5D3B2F7C7E9EE60F3E363B9B682687F 2589 CC99D0A74F1FE8DBB7AF29AFF85C3F2C5C3BAD7A7F9CE50EB6103E966B2788F6
2585 852C97778377C7AE7C23BEC378E0EEAB8B958288EF33676BD9B9DFBE33D2B4E6 2590 57A87279377877DCCA97F13DC603775FDD4C2588F84173B6969DFB1D3C23CD6C
2586 423E6F8F7FD7AB76F802D9967C13B952FE77CA378A3F09FFBB4D3F17F9C769F9 2591 2EE4F3F6F877ABEA862F90EDC8B791ABE47FAF7C59FC29F8DF6FFAF9C83F5ECB
2587 8560F9CF66E57F0F484158FEF5F6D08CFFAD8273C390CF73F977377C9D9E14DF 2592 2F44CA7F2E2BFF1B4109C2F26FB58766FC6F039C1B523ECFE5DFFDF02D7A4A7C
2588 48BDDD7CA3F833F1BFDBF4BBC3E53F608FDA6F3202F68BB05F6AC657D7808980 2593 997AB9F9B2F8B3F1BFDFF4BBC2E53F6C8FD16F9201FB45D82FB5E31B6BC044C0
2589 DF16CDDC50F9E7CF9EF303EF069E218EFD53277CDE0DA77C04DAB5C3D7BB9593 2594 6F8B766E18FC63478E86807703CF10C7FEA9173EEF86573E02EDBAE15BDDCA4B
2590 F8A2BC6297AF8F5B277CB7F279BE593E96F1BF0CCCE2EF4E9C21102CFFC1F26F 2595 7C515E71CBB7C6AD17BE5FF93CDF2E1FABF85F0576F17725CE108894FF48F977
2591 87EF047A3E8E8FF11D55513952CDF87A81E7F3F678FBA2726CC4D7975B5E9E5E 2596 C3F7022B1FC7C7F88EAAA81C19667CBDC0F3797BBC7D513996F1ADE596976755
2592 6DF94D4B4BF97AFF8BEA17A708D0F81F7C1B9FE9F3C0030FF8DD3FFBE0830FC2 2597 1B7ED1D051BED5FFA2FAC52BC234FE87E0C667FADC70C30D21F7CFDE78E38D70
2593 134F3C617887119AAB4FEEDCB9FDF879F2E431BD0309CDF3E7CF2FBCA756754F 2598 D75D7749EF304273E3C99F3F7F08BF408102B67720A179E1C28585F7D41AEE19
2594 7DF2E6CDCBE4A978E8A1879839EF07E27FCFADEF1DED8BFC8F761E7DF4518D3E 2599 4FC18205993C0337DD741333E7FD4042EFB90DBEA37D91FFD1CEADB7DE6AD2C7
2595 CEC1E9F9E81FB4F7C8238FF8F189EEEEA75CB97209F58DE42390830FCAE0D3C8 2600 39382B1FFD83F66EB9E596103EB1DCFD942F5F3EA1BE4C3E0239F8A00C3E8DEC
2596 2C0ED14C6F5794CEA8CFC79D0A62702E283E982E7AF9461C115F9F1E4EF866F1 2601 E210CDAC7645E98CFA7CDC1920927341F1C174B1CA9771447C6B7A78E1DBC597
2597 65C557D39B4F5B3B7C2C0F6A5AA8F39976F9AA9E059F88F846E549507E5DC1EE 2602 13DF486F3E6DDDF0B13C186961CC67BAE51B7A0E7C22E2CBCA93A0FCFA82DBFB
2598 FD3F08B48B1CE4DAB9FF271300681739C895BDFF4705DA41BBC841AECCFD3F3C 2603 7F10681739C87573FF4F3600D02E7290AB7AFF8F01B4837691835C95FB7F78A0
2599 D00EDA95BDFF470FB4237BFF8F0876EEFF11C1CEFD3F4608DEFF93F3EEFF019B 2604 1DB4AB7AFF8F156847F5FE1F11DCDCFF23829BFB7F6488DCFF93F7EEFF01978F
2600 8FFEF093C28572DB82EA86CA8DBF960CB5BF2EC1A0FF8D68BDAA97465F7523C8 2605 F5F093078AE47705C30D839B72361DDEF9AC2483F537A2F1828E267DC38D083F
2601 CF3E7CDE9ED5EF20DFBF0C38293F6ECB6F7658037C6C54993C27C684B7A55842 2606 F7F0797B4EBF23FCD032E0A5FCF82DBFB9610DF0DE81650AEC1F1CDB94623685
2602 E1B100DA698B1C957F64C43B6DCF2EAC9798B1BB771AECEB0F66C8D8DD2BEDEC 2607 EE00B4D31439067F77FF179A1E995133F5FC864E99B0A51BD8E1FC868E9947A6
2603 828844E4A8FCE4212597A4EFE891766A61E38B2BBF2BE03103DAB91EFF731A72 2608 C7A522C7E0A7F72E353B6B6DFBCC83333E3931FFAB3B743BA09D73293F6422C7
2604 547E42BFE29EF4ED3D61F9B7F93D2BDA16284E410C501CEDA46DFD0990A3F271 2609 E06FEA5A42CF5AD301E67D5958FFB5E91D2528880425D04EE6EAEF0139061FD7
2605 2DDAD5CD5D6169EB7C1E0AB2FC5B2D6F55BB67C8CAEF0A1134433B977FEFC8D6 2610 A29D59D906E6342EA45390795F9A790B9ADD47E67F5584A019DA39F55B4BB67E
2606 AFA9FC4D5D5FF49C59DD1EE2BE79DC434110540E550B92C52D9F216BDAFF93C1 2611 CDE0AF68F3887E78617348FEE2769D8220A81CAADE496635BC8F2C6AFE4F8680
2607 6BE6495DDC0A90A3F2A9992725B6252C6CFEA88782CCFF3A1F89698AC8E4AFFE 2612 999E31AB1120C7E053337DD7CC8630E3F35B750A32EDB34224A91E229BBFF0EB
2608 FE1F9529A297B42E44D0CE81598D01392A9FDAF11C8C6908314DF37AE67D95AF 2613 7F54A2489CDDB808413BDB267E02C831F8D48EBE3DA90E24D52BA84FFDB45009
2609 38F2E634CECFF871DF3C5D19CD110B9B3F41D0CEDE299F02BEAB7C6A6F49CAFC 2614 E44DFEA430E3277F716F253447CCF8FC2E8276368F7E17F0DDE0537BB3774DAB
2610 7A69F1BFBC7891FEF6CC6D52201AF954AD8CEF67367C0FA822D04ED28C1A69C8 2615 9999F2E32327E86F7D4ADD3B12914FD54AF87E78D9D7802A02EDA48DAF9A891C
2611 51F933EA3FDA765DF7628927E6574B3BB3201CE8BB8702F53D97373683D3316F 2616 833FBED6AD4D97B42B9EBA7FDAEB9987A7C7027DD729505F3FB5BC3E1C4A7A1E
2612 C3A99852706A6E4938F6DBFB696B95171291A3F2A7463C9C67629D87DA522CA1 2617 0E263D0707A79482BD3FBF9CB9587B381539067F4CDCCD0546BC7753538AD914
2613 F04CAA9B277AF2677908552BE37BFAEF9500552FD04E5BE4F0EBFF3F2A729F0F 2618 FAC81A051247BD5F8050B512BE67FD5611500D00ED34450EBFFEFFCDA2D705F1
2614 2F150C637AA87E5FE6BECAA36BDEEF41F076F8B2471F5C087C9F77ADDE63DEB6 2619 E89D314C0FD5AFCB5C576950B5EB75046F872F7BF4C185C0D705D6EADD16689B
2615 19DBF6E7298AD47C39B451DBB743A7D0DF6F50BCE85DEF1FA6E38779DDF81B45 2620 B16D7F88A268B5C7A23F6EFA7CF468FAFB698A4702EBFD632CFC98801B7FA328
2616 1E6FDB8E1D8C82DEBD05EA9AC0FCEA9AC0ECB207E0F8E832E4C498B2D1141E09 2621 1068DBB1837167606F81B126B0B0B12630B7EC01D837A80CD93FB86C2285AE80
2617 44A37D9E9F125D1AE1A11D5BB849CBB8067BFBF900070601DA43FB3C3F71D07F 2622 44B4CFF377259646E8B4630B176919376173D720605B4F407B689FE7A7F6FC0F
2618 109E8CDD7DE0DA861F0C91BE2312D01EDAE7F9BBFABC86F05CA3E5FAC2E26F7C 2623 423FBFA1339C5DF6AD14596BE301EDA17D9EBFBEF39308FD2C2DD7C7677D11C4
2619 38BDE06B3836BB011C9A5E0F92A77E0E2797B506B487F679BEA7DB4B08CF953F 2624 A1E99FC1DE49B561C7B89A903EE6033830B731A03DB4CFF3F5B68F22F4D3BFB7
2620 3AD3BCDA040E4EAE0B3B8757852D032B806740791FF65237D01EDAE7F9DEF2ED 2625 A279B52E6C1F5503D6F57B0D56F5280F7AF772416CA66EA03DB4CFF303E55B3F
2621 39B392BA3FBC02C40F2E2BC4DEC93559B945FB3C7F71CBA7119EE30B3E82C451 2626 3C9FBADFAF3CA4F42A2BC4E651D558B945FB3C7F56C37B11FABEE96F42EAC062
2622 450D71785A59407B689FE76359A5F05C58F4369C9E5AC810B86F01EDA17D9E3F 2627 52EC1C5B16D01EDAE7F9585629F4E3BF3C0F87C6149102F72DA03DB4CFF3477F
2623 E5F387119E8CA5FF82F439F71B63C1E380F6D03ECF1FFB496E8407563C07B038 2628 7033423F3FE75F9035F97A39A6DF0E680FEDF3FC216FE747E8F0EB8300B30A01
2624 1F40DC63008BF2523C0C104BC7F1B10F022CFC1B551F06B4D7A1ECFDFAFD3761 2629 24DF06F04B418A9B0166D271FCCC1B0166FC8DAA3703DA6B51F67AEBFE9B98A6
2625 6D4B878D8BFE30CC63056A6F3CAEC7D5F3BDE556A6DF9D4FCFCF29C075E1B46D 2630 A5638626BE11A33B81DA1B86EB71ADFC40B955E97717B2F2F30A705D386D9B69
2626 A6E5383C82B6AFD8AE62DBC8D679D3F6C6928F1C0A8F171176F9689FC20347A2 2631 398E8DA3ED2BB6ABD836B275DEB4BD71E42387420F20CE2D1FED53E8B03B1150
2627 01D5A4A8921176F86897B5E53B7B011D64B3367ACFAFC52364F9684F6DCBCFC7 2632 4D4B2815E7868F76595BBEAE23D041366BA337FE54224E958FF68CB6FCD8CCCF
2628 36871BFB07B0767A5BCFA211327CB483EDF2E5F59DE004AD3792267E0AE73D0A 2633 E1C2D6EEAC9DFEB343B138153EDAC176F9D4D26F603FAD37D246BC0BC7748DB5
2629 6BAB37FEF8EF082BBE5A0F1C59D014B60E2A4FEB8F720CC796B5D2B4D746C0B6 2634 D5CBBFFB779C13DFA807764FAF07AB7B96A3F5C72B0C7BE73632B5D732605B8F
2630 1EDBE594DF6A4042740986D4A55FB2B67A49ABBF5BCAC7F61EDBE8B3F34B41EA 2635 EDF2AE9FABC2A6C4920C19733E626DF5EC467F77948FED3DB6D147A63D071923
2631 A4BFC385E51FB0767BDE574F44A0DB567CB5CD4E8FFB07A4AF2CC1DAF1995F3E 2636 FF0EC7E7BDCADAEDA99FDE15876E3BF18D363B2BF91F9035BF246BC7277C745B
2632 1681EEF6AD59C0924FDB658407563E0FDE763CA26BA53CE49527EF93EAEB567F 2637 1CBADBA5DA1D8E7CDA2E237498FF1004DAF1B836150B90C7EFBE4EA9AF5BE5B1
2633 391751DB6ADA6E47A8EDB86C5F993EB9693B3DA1D11BA1DF79F7E3615B5DD8DB 2638 7CC468AB69BB1D67B4E3AA7D65FAE4A7EDF4F08F9F8EFE2AB01F0FDBEA0702ED
2634 FE3E20C1CFE56DAF9FF272F27BD7F7E7C9A97586491F20DA484FC4D7F401685B 2639 EF0D0AFC7C81F6FA9E00A770607D7F81BC5A67D8F40112657A22BEA90F40DB7A
2635 AFB6F34C2F69B0464FC457FB00E9BB7AC3D5751D7CED3CD3A37D7B5E4FC457FB 2640 A39D677A69BD4C7A22BED107C85ADF09CE2C69116CE7991EEDDBF37A22BED107
2636 006AD957DB79544FADF81692699B2E6AFBF57D808BB46F8FEDBFDACEA39A38B3 2641 30CABED1CEA37AF0D72F219DB6E9A2B6DFDA073841FBF6D8FE1BED3CAAA9136A
2637 7E661F40D0F6EBCBFEE1F90D585BAFB6F3A8EE9F565BA3272EFBDE3EC0BC0F59 2642 65F701046DBFB5ECEF9C569BB5F5463B8FEAD6B1EF98F4C4653FD00798FA066B
2638 5BAFB6F3A81E99595EA327E2FBFA00B16FB1B65E6DE7513D17F38A464FC4F7F5 2643 EB8D761ED5DD13CA99F444FC601F60E6B3ACAD37DA79548F263D6ED213F1837D
2639 0196FC93B5F56A3B8F6AFAC2821A3D11DFD70758FE2C6BFFF1B74F2FEE51D6FE 2644 80D9FF646DBDD1CEA39A35E34E939E881FEC03CCBB9FB5FFF83BA8977C2B6BFF
2640 8BDA7EBEEC61DBCEB5F3D8DF7E0A554E6F22D5BBDFA4ECE6979873BBFF5E69FB 2645 456D3F5FF6B06DE7DA79EC6FDF832AA73782EA5D6F53760B2BCCB95D7FADB4FD
2641 0F0E7DDBB75FCC6B86E3F7687C976DFBBDFACC0CCBB1D75CBAEDDFDBBF84CF2C 2646 DBFB3C1FDC2F1630C3F17B22BEABB6FD017D6686E53860AEDCF66FEE56326876
2642 83966D54F1DDA8ED4F8BEF0E370F0ED1B4FDAAD9B52DDD983EBE1BB5FD573676 2647 9E966D54F15DD6F667A6B4838BDB7B9BDA7EC3ECECAAB64C1FDF656DFFE9E5AD
2643 81B3B4DF9FC1B5FD7F767F8599A9E376B46BD6F69F99D794B5FF97A95FD4B61F 2648 E108EDF79FE7DAFE3FDA3DCECC8C713BDAB56BFB0F4FADC7DAFF53D42F46DB8F
2644 D5FD33BE60EFA2BE845AD6CFAD6C0B7B46D5F08D1D4EACFA4E2DF79E045AAF18 2649 EAD6F11FB277515FC228EB47E737858D03AB06C70EFB177C65947B7D13AD5764
2645 D5016ADB7FE8B73AB073C8DB0CA9CB9BFBDA7E5413275703EF58DEB0ED3F31B7 2650 7580D1F6EFF8F93D58D7FB79868C799F07DB7E545347BD0E81B1BCB4EDDF3FA5
2646 3C1C1AFB6F38BBA2AEAFED5FD0AC10333B36A3943A8E376CFB2FC5BE0A575655 2651 1CEC18F26F38F26B8D60DB3FBD7E1166B677FC73C6385EDAF69F9CF9049C5E50
2647 D4B4FDAAD985B9CFF9C6F6466DFF8D35C5356D7FADD772DF325BF8983A8EF7E3 2652 C1D4F61B66C7A73C181CDBCBDAFE0B8B4A98DAFEEA4FE6BF6436E336631C1FC2
2648 BF5820D4B0ED57CD70FC802ABE0BCAFF33D8F6372E1EDA96DBBBF7B8771CFE2C 2653 7FE48E6869DB6F98E1F801557C1794FFFBB0EDFFA44474536EEFDEED8171F8FD
2649 359B3CBC5AA807EDD0F7BF0BF88F78C7064F727BF7702C9FDBDB0728C48DDFF3 2654 D46C54BFD7A375B443DFFF2EE0DF12181BDCCDEDDDC3B17CFE401FA008377E2F
2650 06AADCFE3FE0547E3E 2655 18AE726B3CE83F0C1BC60FC631A613A635E617CC73986F31EF63F9C13288E598
2656 EF1B61D8307E308E319D30AD31BF609EC37C8B791FCB0F96412CC75817F07C8C
2657 171FF231EEEEF3B16CA9904FF97763BA231FF31FE661560E6859C2F288651AEB
2658 05AC5BB07E0AF0E3783EE619CC77281FF33F96212C835896B13EC03A05EBA580
2659 FC388BFF6F0FE4379CB38A43FF63F9433ED6035897607D84FEC77A5110FEBF05
2660 DC604FA0DCE958FEB10EC17A08C38FF5A124FEF2F3DF92F009F4F975AC7F30FE
2661 B01EB4897FCCDFF75B35B1DEC1F8C7FACF21FD8AF85CB676B7CFFC5FD867FE2F
2662 D8B854F4243FE5CFEBF3FF0408C971
2651 } 2663 }
2652 end 2664 end
2653 object OpenDialog1: TOpenDialog 2665 object OpenDialog1: TOpenDialog
@@ -3175,6 +3187,10 @@ object frmTracker: TfrmTracker
3175 OnExecute = DecreaseOctaveActionExecute 3187 OnExecute = DecreaseOctaveActionExecute
3176 ShortCut = 111 3188 ShortCut = 111
3177 end 3189 end
3190 object SingleStepAction: TAction
3191 ImageIndex = 92
3192 OnExecute = SingleStepActionExecute
3193 end
3178 end 3194 end
3179 object GBDKCSaveDialog: TSaveDialog 3195 object GBDKCSaveDialog: TSaveDialog
3180 Filter = 'GBDK C File|*.c' 3196 Filter = 'GBDK C File|*.c'
Modifiedsrc/tracker.pas +21−0
@@ -42,6 +42,7 @@ type
42 { TfrmTracker } 42 { TfrmTracker }
43 43
44 TfrmTracker = class(TForm) 44 TfrmTracker = class(TForm)
45 SingleStepAction: TAction;
45 FileSave1: TAction; 46 FileSave1: TAction;
46 MenuItem26: TMenuItem; 47 MenuItem26: TMenuItem;
47 MenuItem42: TMenuItem; 48 MenuItem42: TMenuItem;
@@ -52,6 +53,7 @@ type
52 TBMOpenDialog: TOpenDialog; 53 TBMOpenDialog: TOpenDialog;
53 ToolButton11: TToolButton; 54 ToolButton11: TToolButton;
54 LoopSongToolButton: TToolButton; 55 LoopSongToolButton: TToolButton;
56 ToolButton12: TToolButton;
55 VGMSaveDialog: TSaveDialog; 57 VGMSaveDialog: TSaveDialog;
56 MenuItem10: TMenuItem; 58 MenuItem10: TMenuItem;
57 TempoBPMLabel: TLabel; 59 TempoBPMLabel: TLabel;
@@ -308,6 +310,7 @@ type
308 procedure OrderEditStringGridMouseDown(Sender: TObject; 310 procedure OrderEditStringGridMouseDown(Sender: TObject;
309 Button: TMouseButton; Shift: TShiftState; X, Y: Integer); 311 Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
310 procedure RevertMenuItemClick(Sender: TObject); 312 procedure RevertMenuItemClick(Sender: TObject);
313 procedure SingleStepActionExecute(Sender: TObject);
311 procedure TimerDividerSpinEditChange(Sender: TObject); 314 procedure TimerDividerSpinEditChange(Sender: TObject);
312 procedure TimerEnabledCheckBoxChange(Sender: TObject); 315 procedure TimerEnabledCheckBoxChange(Sender: TObject);
313 procedure LoopSongToolButtonClick(Sender: TObject); 316 procedure LoopSongToolButtonClick(Sender: TObject);
@@ -2111,6 +2114,24 @@ begin
2111 LoadSong(LoadedFileName) 2114 LoadSong(LoadedFileName)
2112 end; 2115 end;
2113 2116
2117 procedure TfrmTracker.SingleStepActionExecute(Sender: TObject);
2118 begin
2119 if Playing then begin
2120 PokeSymbol(SYM_SINGLE_STEP_STOPPED, 0);
2121 end
2122 else if GetPreviewReady then begin
2123 Playing := True;
2124
2125 PokeSymbol(SYM_CURRENT_ORDER, 2*(OrderEditStringGrid.Row-1));
2126 PokeSymbol(SYM_ROW, TrackerGrid.Cursor.Y);
2127 PokeSymbol(SYM_LOOP_ORDER, IfThen(LoopSongToolButton.Down, 1, 0));
2128 PokeSymbol(SYM_SINGLE_STEPPING, 1);
2129 PokeSymbol(SYM_SINGLE_STEP_STOPPED, 0);
2130
2131 UnlockPlayback;
2132 end
2133 end;
2134
2114 procedure TfrmTracker.FileSave1Execute(Sender: TObject); 2135 procedure TfrmTracker.FileSave1Execute(Sender: TObject);
2115 begin 2136 begin
2116 if FileSaveAs1.Dialog.FileName = '' then 2137 if FileSaveAs1.Dialog.FileName = '' then