diff --git a/.gitignore b/.gitignore index a1248b8..a0554cd 100644 --- a/.gitignore +++ b/.gitignore @@ -5,7 +5,7 @@ *.d *.swp *.swo -*.bin +#*.bin *.bak *.smc *.dropbox.attr diff --git a/firmware/DFU_release/INL_NES_PCBv2_0N_FWv2_03_01.dfu b/firmware/DFU_release/INL_NES_PCBv2_0N_FWv2_03_01.dfu new file mode 100644 index 0000000..c9d8412 Binary files /dev/null and b/firmware/DFU_release/INL_NES_PCBv2_0N_FWv2_03_01.dfu differ diff --git a/firmware/Make_stm_inl6 b/firmware/Make_stm_inl6 index 755e918..76f00ba 100644 --- a/firmware/Make_stm_inl6 +++ b/firmware/Make_stm_inl6 @@ -68,8 +68,8 @@ OBJECTS=$(patsubst %.c,%.o,$(SOURCES)) ASM_SRC=$(wildcard source/asm_stm/*.s) -#all: dir shared $(BUILD)/$(PROJ).axf $(BUILD)/$(PROJ).elf $(BUILD)/$(PROJ).hex $(BUILD)/$(PROJ).bin size -all: dir shared $(BUILD)/$(PROJ).elf $(BUILD)/$(PROJ).hex $(BUILD)/$(PROJ).bin size +all: dir shared $(BUILD)/$(PROJ).axf $(BUILD)/$(PROJ).elf $(BUILD)/$(PROJ).hex $(BUILD)/$(PROJ).bin size +#all: dir shared $(BUILD)/$(PROJ).elf $(BUILD)/$(PROJ).hex $(BUILD)/$(PROJ).bin size #build axf file output (basically elf with DWARF debug info) # $@ is shortcut for the target, $^ is shortcut for prereqs diff --git a/firmware/Make_stm_nes b/firmware/Make_stm_nes index bcde0ad..4cf5e95 100644 --- a/firmware/Make_stm_nes +++ b/firmware/Make_stm_nes @@ -65,8 +65,8 @@ OBJECTS=$(patsubst %.c,%.o,$(SOURCES)) ASM_SRC=$(wildcard source/asm_stm/*.s) -#all: dir shared $(BUILD)/$(PROJ).axf $(BUILD)/$(PROJ).elf $(BUILD)/$(PROJ).hex $(BUILD)/$(PROJ).bin size -all: dir shared $(BUILD)/$(PROJ).elf $(BUILD)/$(PROJ).hex $(BUILD)/$(PROJ).bin size +all: dir shared $(BUILD)/$(PROJ).axf $(BUILD)/$(PROJ).elf $(BUILD)/$(PROJ).hex $(BUILD)/$(PROJ).bin size +#all: dir shared $(BUILD)/$(PROJ).elf $(BUILD)/$(PROJ).hex $(BUILD)/$(PROJ).bin size #build axf file output (basically elf with DWARF debug info) # $@ is shortcut for the target, $^ is shortcut for prereqs diff --git a/firmware/build_avr/avr_kazzo.elf b/firmware/build_avr/avr_kazzo.elf index de16699..3a56b83 100644 Binary files a/firmware/build_avr/avr_kazzo.elf and b/firmware/build_avr/avr_kazzo.elf differ diff --git a/firmware/build_avr/avr_kazzo.hex b/firmware/build_avr/avr_kazzo.hex index 2706c22..9d12ef5 100644 --- a/firmware/build_avr/avr_kazzo.hex +++ b/firmware/build_avr/avr_kazzo.hex @@ -1,4 +1,4 @@ -:100000000C9476000C9492180C9493000C9493002A +:100000000C9476000C94E0180C9493000C949300DC :100010000C9493000C9493000C9493000C94930014 :100020000C9493000C9493000C9493000C94930004 :100030000C9493000C9493000C9493000C949300F4 @@ -13,10 +13,10 @@ :1000C00049006E00660069006E00690074006500FA :1000D0004E00650073004C006900760065007300F7 :1000E0002E0063006F006D000403090411241FBE7D -:1000F000CFEFD4E0DEBFCDBF11E0A0E0B1E0E2EB96 -:10010000F3E302C005900D92A630B107D9F723E0C2 -:10011000A6E0B1E001C01D92A43EB207E1F70E9443 -:10012000A6190C94D7190C94000080E008950F9341 +:1000F000CFEFD4E0DEBFCDBF11E0A0E0B1E0EEE491 +:10010000F4E302C005900D92A630B107D9F723E0C1 +:10011000A6E0B1E001C01D92A83EB207E1F70E943F +:10012000F4190C94251A0C94000080E008950F93A4 :100130001F93CF93DF93EC01FB01D90100914D0197 :1001400010914E01888187FF09C08E818C934423D2 :1001500099F00481158180E883831DC08FEF8C9313 @@ -29,13 +29,13 @@ :1001C0008083E0916903F0916A030480F581E02D5A :1001D0008D818183E0916903F0916A0387818E5F4D :1001E0008783C801DF91CF911F910F910895803DC2 -:1001F00011F41C92CCCF8FEF8C9380E10E940C12F3 +:1001F00011F41C92CCCF8FEF8C9380E10E94CC1134 :10020000C6CFE0912501F09126018381811106C0BE :10021000F0936A03E093690380E9B8CF883969F7FE :10022000E8CFE9E5F1E08FEF819391E0E936F90756 :10023000D9F780934C0180932B0180934B018093DD :100240002A0180933C018093180180933B018093A5 -:10025000170181E00C940C12CF93DF93FC0150E066 +:10025000170181E00C94CC11CF93DF93FC0150E0A7 :10026000CA01820F911D4197E4F52223E1F18381B8 :100270008F3FD9F582818F3FD1F5DA01A75ABE4F62 :10028000ED0180E099919F3FA1F58F5F2813FACF90 @@ -83,22 +83,22 @@ :1005200021E08934920769F021E08832920761F076 :1005300021E08933920759F021E08531920769F76C :10054000DBCF88E291E0089589E391E0089585E1A9 -:1005500091E008951F93CF93DF930E941212823D82 +:1005500091E008951F93CF93DF930E94D211823DC3 :1005600009F071C00E945B028093060189E491E06A -:1005700090932601809325010E941212823DA1F4DE +:1005700090932601809325010E94D211823DA1F41F :10058000D09106018091250190912601C1E0CD17FF :1005900008F45FC0909326018093250120E8FC01B8 -:1005A000238380ED0E940C120E941212823F41F4BC -:1005B00080EF0E940C12E0912501F0912601138238 -:1005C0000E941212C82F803DE1F480912501909184 +:1005A000238380ED0E94CC110E94D211823F41F43E +:1005B00080EF0E94CC11E0912501F0912601138279 +:1005C0000E94D211C82F803DE1F4809125019091C5 :1005D0002601FC0123812038A1F4609106010E94CC :1005E00072029093260180932501FC011782C38338 :1005F0000E944303E0912501F0912601882371F1C7 -:1006000083830E941212182F803FC9F4C0912501E4 +:1006000083830E94D211182F803FC9F4C091250125 :10061000D09126018B81883991F460910601CE0139 :100620000E9472029093260180932501FC0113829F -:100630001B83CE010E9419098823C9F08B83DF91A7 -:10064000CF911F9108950E941212823F09F094CF1A +:100630001B83CE010E947A088823C9F08B83DF9147 +:10064000CF911F9108950E94D211823F09F094CF5B :1006500089CF6D2F0E947202CF5F99CF2085808154 :100660009181820F911D9183808388EDC9CF84EFA2 :100670008B83288588819981820F911D9983888336 @@ -106,40 +106,40 @@ :10069000CF93DF931F92CDB7DEB76C01DC010D91D4 :1006A0001C911197602F1996EC918E2F90E0FC0110 :1006B0007097E631F10508F017C1EF59FC4F0C9423 -:1006C000D119DC032D044D04500474047404740423 +:1006C0001F1ADC032D044D045004740474047404D4 :1006D000740474047404740474047404740474045A :1006E0007404770384039E03B103B803CD03F601BA :1006F0006585603108F002C1F0E16F9FB0011124FF :10070000602B0FEFD60120C0D6011D966C911D976E :10071000862F837C8111F2C0602B0FEF16962C91EF :10072000169712964C91129714968D919C9115974D -:100730000E94570EF601878380E0D7C0D6011D9630 +:100730000E94A50DF601878380E0D7C0D6011D96E3 :100740006C911D97602B0FEF16962C9116971296B1 -:100750004C91129714968D919C9115970E941F0EA3 +:100750004C91129714968D919C9115970E946D0D56 :10076000E9CFD6011D966C911D97862F807CD2CF44 :10077000D6011D966C911D97602BEE24EA94169677 :100780000C91169712962C91129740E014968D9129 -:100790009C9115970E943315CDCFD6011D966C9173 +:100790009C9115970E94F314CDCFD6011D966C91B4 :1007A0001D97602BEE24EA9416960C9116971296DC :1007B0002C91129741E0EACFD6011D968C918E3193 :1007C000E1F4202F2F7BB80146E0769567954A9596 -:1007D000E1F780E090EC29830E94AB0D2981622F24 +:1007D000E1F780E090EC29830E94F90C2981622FD7 :1007E00060680FEFF60126814281848195810E9425 -:1007F0001F0ED60117968C939FCF8C31A1F461E820 -:1008000080E090E50E94AB0DB801660F672F661F70 -:10081000770B719580E090E80E94AB0D60E080E07E -:1008200090E50E94AB0DF6018585102F8F3139F0D0 +:1007F0006D0DD60117968C939FCF8C31A1F461E8D3 +:1008000080E090E50E94F90CB801660F672F661F23 +:10081000770B719580E090E80E94F90C60E080E031 +:1008200090E50E94F90CF6018585102F8F3139F083 :1008300010680FEFF60126814281612FD6CF1F7815 :1008400010686081718124E0769567952A95E1F7BB -:1008500080E090E50E94AB0DECCFF60185858E3FE0 +:1008500080E090E50E94F90CECCFF60185858E3F93 :1008600009F06ACFB80195E0769567959A95E1F71A -:100870008FEF9FE30E94E70D602F6F710FEFD6019E +:100870008FEF9FE30E94350D602F6F710FEFD60150 :1008800016962C91169712964C91129714968D915C -:100890009C9115970E948F0E4DCF602F606631CFCF +:100890009C9115970E94050E4DCF602F606631CF59 :1008A000D6011D968C91811119C0602F6068000FD0 :1008B000012F001F110B1195202F8FEF84B925B93F :1008C0005F9A5F9814B8EE24EA94F60106812281BB -:1008D00040E0848195810E9433158BCF813069F788 +:1008D00040E0848195810E94F3148BCF813069F7C9 :1008E000212F2F732064E9CF83EC0F90DF91CF91FC :1008F0001F910F91EF90DF90CF90089584ECF5CF8A :10090000CF92DF92EF92FF920F931F93CF93DF93DB @@ -165,7 +165,7 @@ :100A4000BF90AF909F908F907F906F905F904F90EE :100A500008956AEAC401F701099565E5C301F70144 :100A6000099560EAC401F7010995EC81FD81EA0D61 -:100A7000FB1D6081C801F70109950E947317C80129 +:100A7000FB1D6081C801F70109950E94C117C801DB :100A8000F6010995482EC801F60109954812F5CFDF :100A9000CACF2F923F924F925F926F927F928F9226 :100AA0009F92AF92BF92CF92DF92EF92FF920F93FD @@ -178,653 +178,662 @@ :100B1000DEBF0FBECDBFDF91CF911F910F91FF9030 :100B2000EF90DF90CF90BF90AF909F908F907F908D :100B30006F905F904F903F902F90089560E089E60E -:100B40009DEF0E94AB0D6AEAC401F701099565E5C6 +:100B40009DEF0E94F90C6AEAC401F701099565E579 :100B50008B819C81F701099560EAC401F701099531 -:100B6000652DC1010E94AB0D642C712CA980BA8047 +:100B6000652DC1010E94F90C642C712CA980BA80FA :100B7000A628B728AE81BF811496ED91FC911597F8 -:100B8000E60DF71D6081C501F70109950E947317F5 +:100B8000E60DF71D6081C501F70109950E94C117A7 :100B9000C501F6010995282FC5012D83F601099598 :100BA0002D812813F3CFAE81BF8114968D919C9136 :100BB0001597680E791EF3018081281307C04394AE :100BC0000F5F1F4F5198599A599893CF519A599A3C -:100BD00090CF2F923F924F925F926F927F928F921F -:100BE0009F92AF92BF92CF92DF92EF92FF920F93BC -:100BF0001F93CF93DF9300D000D01F92CDB7DEB705 -:100C0000382E4A0129011D830C83D80117962C9098 -:100C1000022D10E070E0F62FEE27FA83E983AC8115 -:100C2000BD8116968C91169790E080179107D8F4A5 -:100C300017962C9280E00F900F900F900F900F90CE -:100C4000DF91CF911F910F91FF90EF90DF90CF90A8 -:100C5000BF90AF909F908F907F906F905F904F90DC -:100C60003F902F90089561E080E090EC0E94AB0DE2 -:100C70006AEAC401F701099560E080E090EC0E9407 -:100C8000AB0D65E5C201F701099561E080E090ECEC -:100C90000E94AB0D60EAC401F7010995632D80E065 -:100CA00090EC0E94AB0D622C712CA980BA80A62812 -:100CB000B728AC81BD811496ED91FC911597E60D96 -:100CC000F71D6081C501F70109950E947317C501E1 -:100CD000F6010995282FC5012B83F60109952B8173 -:100CE0002813F3CFAC81BD8114968D919C911597FB -:100CF000680E791EF3018081281307C023940F5FCB -:100D00001F4F5198599A59988ACF519A599A87CF1B -:100D10003F924F925F926F927F928F929F92AF928B -:100D2000BF92CF92DF92EF92FF920F931F93CF93D8 -:100D3000DF93482E662E7A01E901DA0117965C905E +:100BD00090CF3F924F925F926F927F928F929F92AF +:100BE000AF92BF92CF92DF92EF92FF920F931F933B +:100BF000CF93DF93482E662E7A01E901DA0117962A +:100C00005C90A52CB12C6AEA8AEA9AE8F901099568 +:100C100065E585E595E8FE01099560E28AEA9AE8CE +:100C2000FE010995712C762C6624D70116968C91BD +:100C3000169790E08A159B0520F517965C9260E95F +:100C400080E090E8FE01099560E080E090E8FE0118 +:100C5000099560EF80E090E8FE01099580E0DF9162 +:100C6000CF911F910F91FF90EF90DF90CF90BF90A9 +:100C7000AF909F908F907F906F905F904F903F903C +:100C8000089564E580E090E50E94F90C852C912C94 +:100C90006401C628D72860EAC601FE010995D7017C +:100CA0001496ED91FC911597E80DF91D6081C60130 +:100CB000FE0109950E94C117C601F8010995382E59 +:100CC000C601F80109953812F5CFD70114968D9118 +:100CD0009C911597880E991EF4018081381208C0E6 +:100CE0005394FFEFAF1ABF0A5198599A59989DCF64 +:100CF00061E880E090E50E94F90C642D80E090E8C6 +:100D00000E94F90C64E580E090E50E94F90C519A8C +:100D1000599A8BCF4F925F926F927F928F929F9250 +:100D2000AF92BF92CF92DF92EF92FF920F931F93F9 +:100D3000CF93DF93662E7A01E901DA0117965C9072 :100D4000A52CB12C6AEA8AEA9AE8F901099565E5C9 :100D500085E595E8FE01099560E28AEA9AE8FE01D8 :100D60000995712C762C6624D70116968C911697CE -:100D700090E08A159B0520F517965C9260E980E06B +:100D700090E08A159B0518F517965C9260E980E073 :100D800090E8FE01099560E080E090E8FE01099599 :100D900060EF80E090E8FE01099580E0DF91CF915F :100DA0001F910F91FF90EF90DF90CF90BF90AF9089 -:100DB0009F908F907F906F905F904F903F9008959D -:100DC00064E580E090E50E94AB0D852C912C6401D8 -:100DD000C628D72860EAC601FE010995D7011496F6 -:100DE000ED91FC911597E80DF91D6081C601FE019A -:100DF00009950E947317C601F8010995382EC6019E -:100E0000F80109953812F5CFD70114968D919C9170 -:100E10001597880E991EF4018081381208C05394EA -:100E2000FFEFAF1ABF0A5198599A59989DCF61E8C0 -:100E300080E090E50E94AB0D642D80E090E80E9478 -:100E4000AB0D64E580E090E50E94AB0D519A599A94 -:100E50008BCF4F925F926F927F928F929F92AF92C1 -:100E6000BF92CF92DF92EF92FF920F931F93CF9397 -:100E7000DF93662E7A01E901DA0117965C90A52CC2 -:100E8000B12C6AEA8AEA9AE8F901099565E585E5EF -:100E900095E8FE01099560E28AEA9AE8FE01099563 -:100EA000712C762C6624D70116968C91169790E0BB -:100EB0008A159B0518F517965C9260E980E090E82A -:100EC000FE01099560E080E090E8FE01099560EF81 -:100ED00080E090E8FE01099580E0DF91CF911F91BD -:100EE0000F91FF90EF90DF90CF90BF90AF909F90C9 -:100EF0008F907F906F905F904F900895852C912CEC -:100F00006401C628D72860EAC601FE010995D70109 -:100F10001496ED91FC911597E80DF91D6081C601BD -:100F2000FE0109950E947317C601F8010995482E24 -:100F3000C601F80109954812F5CFD70114968D9195 -:100F40009C911597880E991EF4018081481208C063 -:100F50005394FFEFAF1ABF0A5198599A5998A3CFEB -:100F6000519A599AA0CF4F925F926F927F928F922F -:100F70009F92AF92BF92CF92DF92EF92FF920F9328 -:100F80001F93CF93DF93662E7A01E901DA0117965A -:100F90005C90A52CB12C6AEA8AEA9AE0F9010995DD -:100FA00065E585E595E0FE01099560E28AEA9AE04B -:100FB000FE010995712C762C6624D70116968C912A -:100FC000169790E08A159B0518F517965C9260E9D4 -:100FD00080E090E0FE01099560E080E090E0FE0195 -:100FE000099560EF80E090E0FE01099580E0DF91D7 -:100FF000CF911F910F91FF90EF90DF90CF90BF9016 -:10100000AF909F908F907F906F905F904F900895DA -:10101000852C912C6401C628D72860EAC601FE0100 -:101020000995D7011496ED91FC911597E80DF91DDE -:101030006081C601FE0109950E947317C601F8017F -:101040000995482EC601F80109954812F5CFD70138 -:1010500014968D919C911597880E991EF4018081AC -:10106000481208C05394FFEFAF1ABF0A5198599A1B -:101070005998A3CF519A599AA0CF4F925F927F92DD -:101080008F929F92AF92BF92CF92DF92EF92FF9298 -:101090000F931F93CF93DF93A62E6A01E901DA0124 -:1010A0001796EC90F12CA8950000000000000000BD -:1010B0000000000000000000000040E06AEA8AEA48 -:1010C0009AE8F901099540E065E585E595E8FE01B6 -:1010D000099540E060E28AEA9AE8FE010995B12CA0 -:1010E000BA2CAA24D60116968C91169790E08E15EC -:1010F0009F0530F51796EC9240E060E980E090E8BB -:10110000FE01099540E060E080E090E8FE0109956D -:1011100040E060EF80E090E8FE010995000080E08B -:10112000DF91CF911F910F91FF90EF90DF90CF90C3 -:10113000BF90AF909F908F907F905F904F90089559 -:1011400060E080EA0E9424152701552442018A2884 -:101150009B28D6011496ED91FC911597E40DF51D91 -:1011600040E06081C401FE0109950000000000001C -:10117000000000000000000000000000A8950E9490 -:10118000731760E0C401F8010995782E0000000093 -:101190000000000000000000000000000000D60178 -:1011A0001496ED91FC911597E40DF51D808178164C -:1011B000C1F000000000000000000000000000007E -:1011C0000000000060E0C401F801099578120DC02C -:1011D000000000000000000000000000000000000F -:1011E0000000FFEFEF1AFF0A7DCF000000000000B3 -:1011F00000000000000000000000000000000000EF -:1012000000000000000000000000000000000000DE -:1012100000000000000000000000000000000000CE -:1012200000000000000060E0C401F8010995782E7C -:10123000C9CFBF92CF92DF92EF92FF920F931F938D -:10124000CF93DF93EC01B8808985823109F43CC1EA -:1012500038F48031A9F0813109F4E6C083EC06C08E -:10126000833109F439C18431C9F780E0DF91CF912E -:101270001F910F91FF90EF90DF90CF90BF90089556 -:101280008D85811107C049EE5EE0BE0180E88B0DBF -:101290000E94B6048D85813039F446E35FE0BE01DB -:1012A00080E88B0D0E9480048D85833039F447E9F6 -:1012B0005FE0BE0180E88B0D0E9480048D85843044 -:1012C00039F44EE150E1BE0180E88B0D0E94B60476 -:1012D0008D858A3039F442E750E1BE0180E88B0DFC -:1012E0000E9480048D858D3FD1F46B2D6F736068F3 -:1012F000B62E8881998116E0969587951A95E1F723 -:1013000009E9C02E0DE0D02E90E7E92E9DE0F92EE0 -:101310008E012AEA3AE245E555E50E9449058D85A8 -:101320008E31D1F46B2D6F736068B62E88819981F0 -:10133000F6E096958795FA95E1F7A9E9CA2EADE012 -:10134000DA2EBBEAEB2EBDE0FB2E8E012AEA3AEA4A -:1013500045E555E90E94E9058D858C3031F56B2D09 -:101360006F716068B62EE880F98065E0F694E794C6 -:101370006A95E1F765EA80E090E60E94AB0D6E2D7C -:101380008FEF9FEF0E94AB0D79E9C72E7DE0D72E3E -:10139000EBEAEE2EEDE0FE2E8E012AEA3AEA45E572 -:1013A00055ED6B2D80E00E94FB048D858C3101F59D -:1013B000E880F980EE0CEF2CEE1CFF08F19461E858 -:1013C00080E090E50E94AB0D6E2D80E090E80E94D9 -:1013D000AB0D64E580E090E50E94AB0D09E91DE0EE -:1013E0002BEA3DE0AE016B2D60688E2D0E948806D1 -:1013F0008D858F3109F039CFE880F98044E0F6948B -:10140000E7944A95E1F76E2D80E090E50E94AB0DE0 -:101410006B2D6F78606809E91DE02BEA3DE0AE01B5 -:101420008E2D0E94290721CF8D85811106C04FE0A6 -:101430005FE0BE018B2D0E9480048D85813031F4E8 -:1014400043E65FE0BE018B2D0E9480048D858230D3 -:1014500031F442ED5FE0BE018B2D0E9480048D854A -:10146000843031F44BE450E1BE018B2D0E948004A6 -:101470008D858A3031F44FE950E1BE018B2D0E94F9 -:1014800080048D858B3031F44CED50E1BE018B2D05 -:101490000E9480048D858E3F09F0E7CE68817981B6 -:1014A00035E0769567953A95E1F78FEF9FE30E94D7 -:1014B000E70D6B2D6F710BEF1DE02DE03EE0AE01EF -:1014C00080E00E94B307D1CE4BEA5DE0BE0180E62A -:1014D0008B0D0E948004C9CE8D85843039F444E799 -:1014E00055E1BE0180E88B0D0E9480048D8585301A -:1014F00031F444E755E1BE018B2D0E9480048D85B7 -:10150000863039F441EA55E1BE0180E88B0D0E9436 -:1015100080048D85873031F441EA55E1BE018B2D81 -:101520000E9480048D85811119C08B2D8068B82E92 -:1015300088819981880F892F881F990B91959FEF3A -:1015400094B985B95F9A5F9814B80FEE14E12BE057 -:1015500035E1AE016B2D80E00E943D088D85813024 -:1015600009F083CE89818F7380649FEF94B985B928 -:101570005F9A5F9814B80FEE14E12BE035E1AE01ED -:101580006B2D80E00E943D0870CE3898409A3998C3 -:10159000419A3A98429A3C98449A3D98459A3E9886 -:1015A000469A53985B9A55985D9A3B98439A3F9810 -:1015B000479A57985F9A5098589814B88FEF85B902 -:1015C0003F9A479881B911B882B914B885B914B84F -:1015D00085B95198599A08950E94C50A399A419A35 -:1015E000389A40983A9A429A3C9A449A3D9A459A37 -:1015F00014B88FEF85B914B885B914B885B93F9A76 -:10160000479881B912B884B915B8479A479814B861 -:1016100008950E94C50A399A419A3C9A449A3D9A83 -:10162000459A589A509A14B88FEF85B914B885B96D -:1016300014B885B93F9A479881B912B884B915B8DA -:10164000479A479814B814B885B9579A5F9884B9DF -:1016500015B85F9A5F9814B80895823081F083308E -:1016600061F08130A1F40898109A1092B90380E2D9 -:1016700090E09093B8038093B70380E0089550986A -:10168000589A88E08093B90389E290E0F2CF87E925 -:101690000895813049F414B88FEF85B9579A5F984F -:1016A0000E94C20B80E0089588E908955898509AE6 -:1016B000000089B15098589880FD22C05098589ADF -:1016C00059B149B1000039B10000000029B1000052 -:1016D0000000000099B1000000000000000089B186 -:1016E0005098589850FD0EC040FD0EC030FD0EC001 -:1016F00020FD0EC090FD0EC080FD0EC080EE08954E -:1017000080EF089580E0089581E0089583E00895D2 -:1017100086E008958AE008958FE008950F931F935F -:10172000CF93C82F842F8901C230F9F030F4CC2335 -:1017300089F0C130B1F0C6E90FC0C430F1F0C0F09B -:10174000C038C9F781E0F90180830E94560BF80187 -:10175000818309C00E94C50A8C2FCF911F910F91E0 -:1017600008950E94EC0AC0E0F7CF0E94090BFBCF5E -:10177000CF911F910F910C942D0BCF911F910F9131 -:101780000C94490B109214018FEF84B915B85F9A2D -:101790005F9814B85098589A80E880936C03109220 -:1017A0007A03EBE7F3E0119283E0EB39F807D9F71E -:1017B000089560917A03813109F441C010921401B7 -:1017C0009FEF94B99091140195B95F9A5F9814B8FE -:1017D00020E070E03FEF8032C9F4E72FF0E0E558F9 -:1017E000FC4F408150E0022E02C0559547950A9467 -:1017F000E2F740FF28C092E034B995B95F9A5F984C -:1018000014B82F5F283011F47F5F20E0492F446027 -:1018100034B945B95F9A5F9814B8615034B995B935 -:101820005F9A5F9814B86111D6CF909314014093DA -:10183000270134B915B85F9A5F9814B8089592E0FB -:1018400090931401BDCF90E0D7CF0F931F93CF9308 -:10185000DF9350917A03B0917B03813109F46BC01F -:10186000109214019FEF94B99091140195B95F9A69 -:101870005F9814B820E030E07FEFC1E0D0E0803224 -:1018800081F4EB2FF0E0022E02C0F595E7950A9463 -:10189000E2F7E0FF54C0916074B995B95F9A5F9820 -:1018A00014B86032B1F4211105C0E32FF0E0E5581F -:1018B000FC4F1082489B0DC0E32FF0E0E558FC4F31 -:1018C000A0818E01022E01C0000F0A94EAF7A02B1E -:1018D000A0835150442341F0511106C0926074B965 -:1018E00095B95F9A5F9814B8A92FA46074B9A5B987 -:1018F0005F9A5F9814B874B995B95F9A5F9814B8F5 -:101900002F5F283039F43F5FE32FF0E0E558FC4FBC -:10191000B08120E05111B3CF90931401A09327011F -:101920008FEF84B915B85F9A5F9814B8DF91CF91A3 -:101930001F910F91089591E09093140193CF9E7F92 -:10194000ABCF80916C038338D1F580916D038830E3 -:1019500009F463C0C0F4833009F445C030F4813029 -:1019600079F18230A1F18EEE28C0863009F44AC0A8 -:1019700008F04EC08430B9F781E880936C0341E0F1 -:1019800060E281E136C08F30C1F148F48D3031F131 -:101990008E3049F781E880936C0340E028C080389E -:1019A00049F08F3F49F08031F1F681E880936C0374 -:1019B00040E02CC00C94C20B80EF80936C03089520 -:1019C00081E880936C0380E20E94D90B14C081E807 -:1019D00080936C0341E060E080E20BC081E880937B -:1019E0006C0340E0F8CF81E880936C0341E060E253 -:1019F00080E10E94250C82E8E0CF81E880936C03AF -:101A000040E0BECF81E880936C0341E060E2E4CF28 -:101A100081E880936C0380E1D7CF81E880936C03E9 -:101A200081E1D2CFCF93DF93E901843061F138F4C3 -:101A30008230E1F008F58130A1F087E80FC08730EF -:101A400039F128F48530C9F740937A0306C088300D -:101A500021F1803891F70E94C20B80E0DF91CF9195 -:101A6000089590916D0399838883F7CF40936D0318 -:101A700083E880936C03F1CF40936D0383E88093F8 -:101A80006C030E94A10C80916C03898381E0ECCFF0 -:101A900040937B0350937C03E0CF80917B03898349 -:101AA00080917C038A8380917D038B8380917E0368 -:101AB0008C8380917F038D83809180038E8386E069 -:101AC000D3CF82B98FEF84B995B9479A479814B8A4 -:101AD00084B965B9509A58985098589A14B808958E -:101AE00082B98FEF84B995B9479A479814B884B9E9 -:101AF00065B9509A5898589A14B8089550985898BB -:101B00004098419A429A82B92FEF24B995B9479AE1 -:101B1000479814B800000000409A97FD41980000D3 -:101B20000000000000000000000083B14098419ACE -:101B3000089582B92FEF24B995B9479A479814B8F8 -:101B4000409A97FD4198000000000000000083B11A -:101B50004098419A08955098589882B92FEF24B927 -:101B600095B9479A479814B8429824B965B9409AEC -:101B700097FD4198000000004098419A429A14B89D -:101B8000089582B92FEF24B995B9479A479814B8A8 -:101B9000429824B965B997FD419800000000419A28 -:101BA000429A14B80895811520E2920708F49068CB -:101BB00082B98FEF84B995B9479A479814B8449879 -:101BC000000000000000000083B1449A08958115D0 -:101BD00020E2920708F4906882B98FEF84B995B932 -:101BE000479A479814B884B965B900004598000031 -:101BF000459A14B8089582B98FEF84B995B9479A78 -:101C0000479814B8409A419844980000000000009A -:101C100083B1449A4098419A089582B98FEF84B96C -:101C200095B9479A479814B84098419884B965B9CE -:101C3000000045980000459A14B8419A0895EF9223 -:101C4000FF920F93CF93DF9300D01F92CDB7DEB7F3 -:101C50007C018FEF84B965B9479A479814B8409AC8 -:101C600067FD419842B9000080E0011117C00000F3 -:101C7000000093B1F701E80FF11D90834F5F42B967 -:101C80008F5F281790F74098419A0F900F900F9010 -:101C9000DF91CF910F91FF90EF9008952B834A83AE -:101CA00089830E94731789814A812B81E2CFEF9249 -:101CB000FF920F93CF93DF9300D01F92CDB7DEB783 -:101CC0007C01603208F460688FEF84B965B9479A87 -:101CD000479814B8449842B9000080E0011116C03A -:101CE0000000000093B1F701E80FF11D90834F5FF2 -:101CF00042B98F5F281790F7449A0F900F900F907A -:101D0000DF91CF910F91FF90EF9008952B834A833D -:101D100089830E94731789814A812B81E3CFEF92D7 -:101D2000FF920F93CF93DF9300D01F92CDB7DEB712 -:101D30007C018FEF84B965B9479A479814B8409AE7 -:101D40004198449842B9000080E0011118C0000099 -:101D5000000093B1F701E80FF11D90834F5F42B986 -:101D60008F5F281790F7449A4098419A0F900F90F0 -:101D70000F90DF91CF910F91FF90EF9008952B83FB -:101D80004A8389830E94731789814A812B81E1CF1D -:101D90000F931F93CF93DF938C01D62F442349F0E9 -:101DA00080E090E80E94990D60E880E090E80E9451 -:101DB000AB0DC5E0C8010E94990D6D2FC8010E94AE -:101DC000AB0DD695C150B1F7DF91CF911F910F9117 -:101DD00008951F93CF93DF93EC01162F6AEA85E5F0 -:101DE00095E50E94610D65E58AEA9AE20E94610D1F -:101DF00060EA85E595E50E94610D612FCE010E94A4 -:101E0000610DCE010E94990D182FCE010E94990DEF -:101E10001813F7CF812FDF91CF911F9108951F9352 -:101E2000CF93DF93EC01162F6AEA85E595E10E94D6 -:101E3000E70D65E58AEA9AE00E94E70D60EA85E52C -:101E400095E10E94E70D612FCE010E94E70DCE01C2 -:101E50000E94D30D182F0E947317CE010E94D30D3C -:101E60001813F5CFDF91CF911F9108951F93CF9352 -:101E7000DF93EC01162F40E065E080E090EC0E94DB -:101E8000C80E6AEA85E595E50E94AB0D65E58AEA2C -:101E90009AEA0E94AB0D60EA85E595E50E94AB0DDC -:101EA000612FCE010E94AB0DCE010E94990D182F1B -:101EB0000E947317CE010E94990D1813F5CFDF9180 -:101EC000CF911F9108951F93CF93DF93EC01162FAD -:101ED00040E062E080E090EA0E94C80E6AEA85E590 -:101EE00095E10E94E70D65E58AEA9AE00E94E70D18 -:101EF00060EA85E595E10E94E70D40E060919D0371 -:101F000080E090EA0E94C80E612FCE010E94E70D8A -:101F1000CE010E94D30D182F0E947317CE010E948C -:101F2000D30D1813F5CFDF91CF911F9108951F9313 -:101F3000CF93DF93EC01162F60E080919B0390918B -:101F40009C030E94AB0D6AEA85E595E50E94610D50 -:101F500065E58AEA9AE20E94610D60EA85E595E509 -:101F60000E94610D90919D0320919B0330919C03F1 -:101F7000692FA901490F511DCA010E94AB0D612FA4 -:101F8000CE010E94610DCE010E94990D182F0E9472 -:101F90007317CE010E94990D1813F5CFDF91CF91E1 -:101FA0001F9108951F93CF93DF93EC01162F80911B -:101FB0009B0390919C0362E002960E94AB0D6AEA3B -:101FC00085E595E10E94E70D80919B0390919C032C -:101FD00061E001960E94AB0D65E58AEA9AE00E94F5 -:101FE000E70D80919B0390919C0362E002960E9412 -:101FF000AB0D60EA85E595E10E94E70D90919D03A8 -:1020000020919B0330919C03692FA901490F511D19 -:10201000CA010E94AB0D612FCE010E94E70DCE01D7 -:102020000E94D30D182F0E947317CE010E94D30D6A -:102030001813F5CFDF91CF911F9108951F93CF9380 -:10204000DF93EC01162F6AEA85E595ED0E94AB0D52 -:1020500065E58AEA9AEA0E94AB0D60EA85E595EDAE -:102060000E94AB0D612FCE010E94AB0D60E080E0BD -:1020700090E80E94AB0DCE010E94990D182F0E948E -:102080007317CE010E94990D1813F5CF812FDF91A0 -:10209000CF911F9108951F93CF93DF93EC01162FDB -:1020A0006AEA85E595E10E94E70D65E58AEA9AE12D -:1020B0000E94E70D60EA85E595E10E94E70D612F3A -:1020C000CE010E94E70DCE010E94D30D182F0E9471 -:1020D0007317CE010E94D30D1813F5CFDF91CF9166 -:1020E0001F9108951F93CF93DF93EC01162F6AEA97 -:1020F0008AEA9AEF0E94AB0D65E585E595EF0E94AF -:10210000AB0D60EA8AEA9AEF0E94AB0D612FCE0117 -:102110000E94AB0D60919D0380E090EA0E94AB0DA0 -:10212000CE010E94990D182F0E947317CE010E94B4 -:10213000990D1813F5CFDF91CF911F9108951F933B -:10214000CF93DF93EC01162F6AE080E090EB0E94C2 -:10215000AB0D6AE080E090EC0E94AB0D6AEA85E589 -:1021600095E10E94E70D65E58AEA9AE00E94E70D95 -:1021700060EA85E595E10E94E70D60919D0380E0AE -:1021800090EB0E94AB0D60919D0380E090EC0E946B -:10219000AB0D612FCE010E94E70DCE010E94D30D41 -:1021A000182F0E947317CE010E94D30D1813F5CF7C -:1021B000DF91CF911F9108950F931F93CF93DF93DA -:1021C0008C01D62FC0919D03C295C07F80919B0347 -:1021D00090919C0360E280960E94AB0D6AEA85E5CF -:1021E00095E10E94E70D80919B0390919C0360E133 -:1021F00040960E94AB0D65E58AEA9AE00E94E70DE1 -:1022000080919B0390919C0360E280960E94AB0DAD -:1022100060EA85E595E10E94E70D80919B0390912E -:102220009C036C2F8C0F911D0E94AB0D6D2FC8016C -:102230000E94E70DC8010E94D30DC82F0E9473179A -:10224000C8010E94D30DC813F5CFDF91CF911F9124 -:102250000F9108950F931F93CF93C82FCA0189013F -:10226000CD3009F48CC060F5C63009F466C0A0F426 -:10227000C23009F469C040F4CC2309F457C0C1301E -:1022800009F45FC0C0EA54C0C43009F463C0C5306B -:10229000C9F70E940D0E53C0C93009F467C040F45D -:1022A000C73009F472C0C83069F70E944B1047C0AC -:1022B000CB3009F467C008F45CC00E94DC103FC05A -:1022C000C23209F444C0A0F4C03109F461C040F442 -:1022D000CE3009F451C0CF30A9F60E94630F2FC051 -:1022E000C032E1F1F0F5C13169F60E949F1027C0BC -:1022F000C23809F458C058F4C03809F44CC0C13889 -:1023000009F621E0F80120830E94990D49C0C538E3 -:1023100009F44FC0C63809F452C0C43809F0B2CF2E -:1023200021E0F80120830E94FB0D3AC00E94610D5C -:102330008C2FCF911F910F9108950E94700DC0E0D6 -:10234000F7CF0E94E70DFBCF0E94AB0DF8CF0E94A4 -:10235000C10DF5CF40E00E94C80EF1CF40939D0320 -:10236000EECF40939B0390939C03E9CF0E94E90E2C -:10237000E6CF0E940F0FE3CF0E94360FE0CF0E94FE -:10238000970FDDCF0E94D20FDACF0E941E10D7CF59 -:102390000E947210D4CF21E0F80120830E947E0DAC -:1023A000F8018183CCCF21E0F80120830E94D30D76 -:1023B000F7CF81E0F901808380919D03F2CF82E025 -:1023C000F901808380919B03818380919C038283A8 -:1023D000B6CFCF93DF93FB01DC0112962C91222321 -:1023E00029F0203479F082ED808308C01082A0911A -:1023F0000201B0910301EC018C818C93CF01DF913C -:10240000CF910895108281E08183A0910201B09163 -:1024100003018C918283F2CFE0910201F0910301DC -:1024200080830895E0910201F09103018081089575 -:102430000F931F93D901082F10E00831110508F000 -:10244000C2C2F801EA5DFD4E0C94D11960123E1231 -:102450009B12F61242138E13DA1385148A148F140A -:10246000921496149914A114A914AD14B014B414B0 -:10247000BD14C414C814D014D714DB14463151054C -:1024800008F0A3C2FA01E95BFD4E0C94D1195D126C -:10249000631267126B126F12731277127B127F1224 -:1024A000831287128B128F129312E514E514E51430 -:1024B000E514E514E514E51497123898409A80E085 -:1024C0001F910F9108953998419A80E0F9CF3A9879 -:1024D000429A80E0F5CF3B98439A80E0F1CF3C9858 -:1024E000449A80E0EDCF3D98459A80E0E9CF3E9850 -:1024F000469A80E0E5CF3F98479A80E0E1CF509838 -:10250000589A80E0DDCF5198599A80E0D9CF5398FE -:102510005B9A80E0D5CF55985D9A80E0D1CF5698F0 -:102520005E9A80E0CDCF57985F9A80E0C9CF5098EF -:10253000589A80E0C5CF4631510508F048C2FA01EB -:10254000EC55FD4E0C94D119BA12BE12C212C6122D -:10255000CA12CE12D212D612DA12DE12E212E6122B -:10256000EA12EE12E714E714E714E714E714E7148D -:10257000E714F2123898409880E0A2CF3998419839 -:1025800080E09ECF3A98429880E09ACF3B9843985B -:1025900080E096CF3C98449880E092CF3D98459853 -:1025A00080E08ECF3E98469880E08ACF3F9847984B -:1025B00080E086CF5098589880E082CF5198599803 -:1025C00080E07ECF53985B9880E07ACF55985D98F5 -:1025D00080E076CF56985E9880E072CF57985F98EB -:1025E00080E06ECF5098589880E06ACF4631510510 -:1025F00008F0EFC1FA01E150FD4E0C94D11915130A -:1026000018131B131E132113241327132A132D131E -:1026100030133313361339133C13E914E914E91456 -:10262000E914E914E914E9143F13389A80E048CF1B -:10263000399A80E045CF3A9A80E042CF3B9A80E0D9 -:102640003FCF3C9A80E03CCF3D9A80E039CF3E9A24 -:1026500080E036CF3F9A80E033CF509A80E030CF91 -:10266000519A80E02DCF539A80E02ACF559A80E08E -:1026700027CF569A80E024CF579A80E021CF509AF6 -:1026800080E01ECF4631510508F0A5C1FA01E55B97 -:10269000FC4E0C94D1196113641367136A136D1304 -:1026A00070137313761379137C137F1382138513BE -:1026B0008813EB14EB14EB14EB14EB14EB14EB1486 -:1026C0008B13409880E0FCCE419880E0F9CE429890 -:1026D00080E0F6CE439880E0F3CE449880E0F0CEE0 -:1026E000459880E0EDCE469880E0EACE479880E0BD -:1026F000E7CE589880E0E4CE599880E0E1CE5B9830 -:1027000080E0DECE5D9880E0DBCE5E9880E0D8CEC3 -:102710005F9880E0D5CE589880E0D2CE4631510502 -:1027200008F05BC1FA01E956FC4E0C94D119AD13C7 -:10273000B013B313B613B913BC13BF13C213C5132D -:10274000C813CB13CE13D113D413ED14ED14ED1421 -:10275000ED14ED14ED14ED14D713409A80E0B0CED3 -:10276000419A80E0ADCE429A80E0AACE439A80E0C2 -:10277000A7CE449A80E0A4CE459A80E0A1CE469AA6 -:1027800080E09ECE479A80E09BCE589A80E098CE1B -:10279000599A80E095CE5B9A80E092CE5D9A80E077 -:1027A0008FCE5E9A80E08CCE5F9A80E089CE589A78 -:1027B00080E086CE82E08C934631510508F0A2C0BD -:1027C000FA01EB51FC4E0C94D119FB1304140D14B7 -:1027D00016141F14281431143A1443144C145514AD -:1027E0005E1467147014821482148214821482148A -:1027F00082148214791486B1817011968C9311978A -:1028000012961C9280E05CCE86B1827090E01296A7 -:102810009C938E93119780E053CE86B1847090E0A4 -:1028200012969C938E93119780E04ACE86B1887061 -:1028300090E012969C938E93119780E041CE86B1E2 -:10284000807190E012969C938E93119780E038CE21 -:1028500086B1807290E012969C938E93119780E0DF -:102860002FCE86B1807490E012969C938E93119730 -:1028700080E026CE86B1807890E012969C938E936D -:10288000119780E01DCE89B1817011968C931197BC -:1028900012961C9280E014CE89B1827090E012965C -:1028A0009C938E93119780E00BCE89B1887090E055 -:1028B00012969C938E93119780E002CE89B180721C -:1028C00090E012969C938E93119780E0F9CD89B198 -:1028D000807490E012969C938E93119780E0F0CDD7 -:1028E00089B1807890E012969C938E93119780E046 -:1028F000E7CD89B1817011968C93119712961C9235 -:1029000080E0DECD1C928DE8DBCD14B88FEF85B969 -:1029100080E0D6CD14B88FEF85B980E0D1CD14B862 -:1029200080E0CECD8FEF84B980E0CACD45B980E09C -:10293000C7CD83B111968C93119781E08C9380E081 -:10294000BFCD14B88FEF85B93F9A479881B980E021 -:10295000B7CD8FEF82B980E0B3CD11B880E0B0CDB4 -:102960008FEF81B980E0ACCD42B98FEF84B955B912 -:10297000479A479814B880E0A3CD14B88FEF85B973 -:10298000579A5F9880E09CCD57985F9A80E098CDE9 -:102990008FEF84B945B95F9A5F9814B880E090CD05 -:1029A00014B88FEF85B9579A5F9880E089CD579812 -:1029B0005F9A80E085CD8FEF84B945B95F9A5F98C3 -:1029C00014B880E07DCD8CE87BCD8DE879CD8DE8A5 -:1029D00077CD8DE875CD8DE873CD8DE871CD82B959 -:1029E0008FEF84B995B9479A479814B8611101C01F -:1029F0004198449800000000000000000000000022 -:102A0000000000000000000000000000000083B192 -:102A1000449A419A089582B98FEF84B995B9479A3B -:102A2000479814B884B965B94598411101C04198D7 -:102A30000000000000000000000000000000000096 -:102A4000459A419A14B808959FEF94B985B945986D -:102A5000611101C041980000000000000000459A8B -:102A6000419A14B80895CF92DF92EF920F93CF93CB -:102A7000DF9300D0CDB7DEB76C018FEF84B965B9B5 -:102A8000479A479814B84498411101C0419822B917 -:102A900080E0E1101FC00000000000000000000006 -:102AA0000000000000000000000093B1F601E80FF4 -:102AB000F11D90832F5F22B98F5F081750F7449A5A -:102AC000419A0F900F90DF91CF910F91EF90DF908F -:102AD000CF9008952A8389830E9473170000000015 -:102AE000000089812A81DBCF1F93CF93DF93EC0114 -:102AF000162F40E06AEA85E595E50E940B1540E057 -:102B000065E58AEA9AE20E940B1540E060EA85E5F5 -:102B100095E50E940B1540E0612FCE010E940B1538 -:102B200060E0CE010E94EF14182F0E94731760E03E -:102B3000CE010E94EF141813F3CFDF91CF911F91B4 -:102B400008951F93CF93DF93EC01162F40E06AEABC -:102B50008AEA9AE80E940B1540E065E585E595E86C -:102B60000E940B1540E060EA8AEA9AE80E940B1581 -:102B700040E0612FCE010E940B1560E0CE010E9463 -:102B8000EF14182F0E94731760E0CE010E94EF141B -:102B90001813F3CFDF91CF911F9108950F931F93D7 -:102BA000CF93DF93782FCA01E901072F10E0073098 -:102BB000110580F5F801E152FA4E0C94D119E61591 -:102BC000FF15F215F915FC150616F7159FEF94B9C8 -:102BD00085B95F9A5F9814B8872FDF91CF911F91C5 -:102BE0000F91089540E00E940B1570E0F5CF41E091 -:102BF000FACF0E947415F9CF0E94A115F6CF21E0FB -:102C0000288360E00E94EF148983EFCF21E02883BE -:102C100061E0F8CF7AEAE0CF880F991F880F991FFB -:102C200020E030E02817390709F40895000000007B -:102C30002F5F3F4FF7CF20E030E02817390709F426 -:102C40000895000000002F5F3F4FF7CFCF93DF9331 -:102C500080E190E00E940C16C4E0D0E084EF91E0A7 -:102C60000E940C1684EF91E00E940C162197B1F798 -:102C7000C4E0D0E08AEF90E00E940C168AEF90E06A -:102C80000E940C162197B1F7DF91CF91089580E152 -:102C900090E00C940C16CF93DF931F92CDB7DEB764 -:102CA000F901813171F038F48130C1F078F082306F -:102CB000C9F082E80FC08132A9F0823299F08231E6 -:102CC000C1F782E08083128211820AC089830E9448 -:102CD000261689810F90DF91CF9108950E944716A3 -:102CE00080E0F8CF81E080831182FACF482F90E016 -:102CF000982F882720E0411103C021118068089592 -:102D000020953FEF340F4323F6CF80E090E0089505 -:102D100080E0089560E070E0CB010895CF93DF93E9 -:102D20001F92CDB7DEB7DC018FEF809307011092C1 -:102D3000080187E091E09093C9038093C803169639 -:102D40008C91169789831196EC9111974E2F50E034 -:102D5000FA013197EB30F10508F09BC0EE54F94EC3 -:102D60000C94D119BD16CD16DB16E9162F1749178D -:102D70004017F71605171317211714964D915C91FC -:102D8000159728E031E013966C91139712968C9169 -:102D90000E941812809307016EC014964D915C91A9 -:102DA000159728E031E013966C91139712968C9149 -:102DB0000E948E0BEFCF14964D915C91159728E0F1 -:102DC00031E013966C91139712968C910E942A1100 -:102DD000E1CF14964D915C91159728E031E0139660 -:102DE0006C91139712968C910E94CE15D3CF1496A6 -:102DF0004D915C91159728E031E013966C911397F3 -:102E000012968C910E944B16C5CF14964D915C91F1 -:102E1000159728E031E013966C91139712968C91D8 -:102E20000E94120DB7CF14964D915C91159728E032 -:102E300031E013966C91139712968C910E94950035 -:102E4000A9CF14964D915C91159728E031E0139627 -:102E50006C91139712968C910E9441039BCFAE0107 -:102E60004F5F5F4F67E071E0CD010E947B0190935F -:102E7000C9038093C80389810F90DF91CF91089592 -:102E8000AE014F5F5F4F67E071E0CD010E94E91135 -:102E9000EECF80E87FCFE0916903F0916A0327814C -:102EA00044815581322F360F231312C0E0916903FC -:102EB000F0916A038781860F878380913801861B92 -:102EC0008093380181110DC088E9838381E00895E2 -:102ED000FC017191CF01FA01E20FF11D70832F5FA8 -:102EE000E3CF80E00895CF93DF936091CA036350EE -:102EF00067FD91C08091C703CCE0D0E0C81BD10929 -:102F0000C253DC4F8091C6038D3209F0CFC06830C8 -:102F100009F07FC083EC8093BA038AE580930501B2 -:102F200010920F018881807679F0CE010E948E1672 -:102F30008F3F09F466C09F81911169C09E819817E7 -:102F400008F065C0892F63C02A811092C30399815C -:102F500091110AC01092C40323EC33E082E0309355 -:102F6000C9032093C803E7CF953029F42093CB03FE -:102F700023EC33E0F4CF963099F59B81913059F4EE -:102F80008EE890E09093C9038093C80382E190E4B7 -:102F900090930F01D0CF923019F48CE790E0F2CFEC -:102FA0009330A9F7211108C088EE90E09093C903EF -:102FB0008093C80384E0EBCF213041F48EEB90E0A6 -:102FC0009093C9038093C8038AE2E1CF2230F9F6D7 -:102FD00080EA90E09093C9038093C8038EE1D7CF35 -:102FE000983059F0993019F42093CD03C1CF81E086 -:102FF0009A3009F4BDCF80E0BBCF2DEC33E081E007 -:10300000AECF988197FD8E8190E890930F018093C9 -:1030100004011092CA038091050184FF3AC0809197 -:1030200004018F3FB1F1C82F893008F0C8E08C1B34 -:10303000809304018091BA0398E889278093BA03AA -:10304000CC23D1F08091C8039091C90320910F0146 -:1030500026FF3FC0ABEBB3E0FC012C2F34913D9336 -:1030600031962150D9F701962FEF2C0F820F911D29 -:103070009093C9038093C8036C2F8BEB93E00E945D -:103080008E18CC5FCC3019F08FEF80930401C09381 -:10309000050184E199B1947131F48150D9F710920E -:1030A000CB031092C503DF91CF91089580910F015A -:1030B00087FFAFCFCE010E944B178F3F21F48EE1E7 -:1030C00080930501A6CF882309F4A3CF10920401B1 -:1030D000A0CFEBEBF3E0DC012C2F3D91319321509D -:1030E000E1F7C1CFE9E6F0E0808182608083E89A71 -:1030F0000895A82FB92F80E090E041E050EA609554 -:1031000030E009C02D9182279795879510F084278C -:103110009527305EC8F36F5FA8F30895EADF8D93BB -:103120009D930895CF93CFB7CF93DF93C3954C9BD7 -:10313000E9F74C9B0BC04C9B09C04C9B07C04C9BB8 -:1031400005C04C9B03C04C9B01C089C06F93C091CC -:10315000C703DD27C253DC4F2F9365E54C9B03C0AB -:103160002F916F91E6CF0F931F934F9320E040E193 -:103170005F9309B1047104FB27F93F9350E03BE0F2 -:1031800039C0147140642F77012F5F5F1EC0406803 -:1031900019B114712F7752501FC0406409B12F77B5 -:1031A0000471D1F15F5F00C023C0406219B12F7775 -:1031B000147191F15F5F00C025C004711027515058 -:1031C00012F45D5F0000115027952C3F19B1C8F62D -:1031D00014710127015027952C3FC8F642274993C7 -:1031E00009B1047110274F73115027952C3FA8F691 -:1031F0004695469519B1147179F00127015027952C -:103200002C3F98F66B5A60F3315009B1B0F600C00C -:1032100011E01CBB002717C03B503195C31BD040A9 -:1032200011E01CBB0881033CF9F00B34E9F020915C -:10323000C5031981110F1213EDCF093651F10D326B -:1032400011F0013E39F70093CC033F915F914F910C -:103250001F910F912F916F91CCB3C0FD67CFDF917C -:10326000CF91CFBFCF9118952091CC03222369F342 -:103270001091CA03112339F534303AF13093CA035F -:103280002093C6031091C7033BE0311B3093C70363 -:103290001CC00091CA030130B4F40AE53091050165 -:1032A00034FD14C000930501CAEBD3E013C0052719 -:1032B00010E000C000000BB91AC0052710E0221F63 -:1032C0001DC010E021C04AE502C032ED432FC4E129 -:1032D000D0E032E01AB114615C9A0BB11AB954E132 -:1032E00020E865E320FF05270BB9279517951C3FBC -:1032F000F0F66695B8F7B1F720FF05270BB92795CB -:1033000017951C3FD0F62795179517FF0527000046 -:103310001C3F0BB9B0F629913A9519F70B7E109125 -:10332000CB03110FC651D0400BB911F01093C50358 -:1033300011E01CBB00611AB11B7E402F4B7E54E094 -:103340005A95F1F70BB91AB94BB97FCF9EE088E1D6 -:103350000FB6F894A895809360000FBE909360001C -:103360000E947218549A80E0815099F4549878948D -:103370000E94C50A80EF80936C03A8950E94731782 -:103380000E94AA0280916C03803FB9F30E94A10CB5 -:10339000F4CFA895EFE9FFE03197F1F700C0000006 -:1033A000E3CFEE0FFF1F0590F491E02D0994F89400 -:0233B000FFCF4D -:0633B20069019E03FF5AB1 +:100DB0009F908F907F906F905F904F900895852CBB +:100DC000912C6401C628D72860EAC601FE01099566 +:100DD000D7011496ED91FC911597E80DF91D6081EE +:100DE000C601FE0109950E94C117C601F8010995C7 +:100DF000482EC601F80109954812F5CFD70114967F +:100E00008D919C911597880E991EF401808148124E +:100E100008C05394FFEFAF1ABF0A5198599A5998D6 +:100E2000A3CF519A599AA0CF4F925F926F927F921F +:100E30008F929F92AF92BF92CF92DF92EF92FF92EA +:100E40000F931F93CF93DF93662E7A01E901DA01A6 +:100E500017965C90A52CB12C6AEA8AEA9AE0F9010F +:100E6000099565E585E595E0FE01099560E28AEA68 +:100E70009AE0FE010995712C762C6624D70116960E +:100E80008C91169790E08A159B0518F517965C9241 +:100E900060E980E090E0FE01099560E080E090E08C +:100EA000FE01099560EF80E090E0FE01099580E089 +:100EB000DF91CF911F910F91FF90EF90DF90CF9036 +:100EC000BF90AF909F908F907F906F905F904F906A +:100ED0000895852C912C6401C628D72860EAC601A4 +:100EE000FE010995D7011496ED91FC911597E80D37 +:100EF000F91D6081C601FE0109950E94C117C60156 +:100F0000F8010995482EC601F80109954812F5CF58 +:100F1000D70114968D919C911597880E991EF40116 +:100F20008081481208C05394FFEFAF1ABF0A51984E +:100F3000599A5998A3CF519A599AA0CF4F925F923C +:100F40007F928F929F92AF92BF92CF92DF92EF9259 +:100F5000FF920F931F93CF93DF93A62E6A01E901AF +:100F6000DA011796EC90F12CA89500000000000023 +:100F700000000000000000000000000040E06AEAFD +:100F80008AEA9AE8F901099540E065E585E595E882 +:100F9000FE01099540E060E28AEA9AE8FE010995BF +:100FA000B12CBA2CAA24D60116968C91169790E0F3 +:100FB0008E159F0530F51796EC9240E060E980E0D1 +:100FC00090E8FE01099540E060E080E090E8FE01D5 +:100FD000099540E060EF80E090E8FE01099500008F +:100FE00080E0DF91CF911F910F91FF90EF90DF9004 +:100FF000CF90BF90AF909F908F907F905F904F90D9 +:10100000089560E080EA0E94E4142701552442011B +:101010008A289B28D6011496ED91FC911597E40D32 +:10102000F51D40E06081C401FE010995000000004B +:101030000000000000000000000000000000A89573 +:101040000E94C11760E0C401F8010995782E0000E4 +:101050000000000000000000000000000000000090 +:10106000D6011496ED91FC911597E40DF51D808144 +:101070007816C1F000000000000000000000000031 +:1010800000000000000060E0C401F801099578123A +:101090000DC0000000000000000000000000000083 +:1010A00000000000FFEFEF1AFF0A7DCF00000000F4 +:1010B0000000000000000000000000000000000030 +:1010C0000000000000000000000000000000000020 +:1010D0000000000000000000000000000000000010 +:1010E000000000000000000060E0C401F801099564 +:1010F000782EC9CFBF92CF92DF92EF92FF920F93DB +:101100001F93CF93DF93EC01B8808985823109F476 +:1011100029C138F48031A9F0813109F4D3C083ECBE +:1011200006C0833109F426C18431C9F780E0DF911C +:10113000CF911F910F91FF90EF90DF90CF90BF90D4 +:1011400008958D85811107C04FE55EE0BE0180E8FE +:101150008B0D0E94B6048D85813039F44EEA5EE035 +:10116000BE0180E88B0D0E9480048D85833039F4A8 +:101170004FE05FE0BE0180E88B0D0E9480048D850A +:10118000843039F446E95FE0BE0180E88B0D0E94AF +:10119000B6048D858A3039F44AEE5FE0BE0180E8FE +:1011A0008B0D0E9480048D858D3FD1F46B2D6F7364 +:1011B0006068B62E88819981F6E096958795FA95B4 +:1011C000E1F7A7EECA2EACE0DA2EBEEBEB2EBCE0C8 +:1011D000FB2E8E012AEA3AE245E555E50E944905D3 +:1011E0008D858E3139F442EA50E1BE0180E88B0DE5 +:1011F0000E94B6048D858C3031F56B2D6F7160685F +:10120000B62EE880F98065E0F694E7946A95E1F7F8 +:1012100065EA80E090E60E94F90C6E2D8FEF9FEF5B +:101220000E94F90C77EEC72E7CE0D72EE9EFEE2E68 +:10123000ECE0FE2E8E012AEA3AEA45E555ED6B2DEB +:1012400080E00E94FB048D858C3101F5E880F980F7 +:10125000EE0CEF2CEE1CFF08F19461E880E090E5C5 +:101260000E94F90C6E2D80E090E80E94F90C64E574 +:1012700080E090E50E94F90C07EE1CE029EF3CE0CD +:10128000AE016B2D60688E2D0E94E9058D858F3132 +:1012900009F04CCFE880F98044E0F694E7944A9551 +:1012A000E1F76E2D80E090E50E94F90C6B2D6F78D0 +:1012B000606807EE1CE029EF3CE0AE018E2D0E9435 +:1012C0008A0634CF8D85811106C047E85EE0BE01F5 +:1012D0008B2D0E9480048D85813031F44BED5EE0D2 +:1012E000BE018B2D0E9480048D85823031F44AE44A +:1012F0005FE0BE018B2D0E9480048D85843031F427 +:1013000043EC5FE0BE018B2D0E9480048D858A3006 +:1013100031F447E150E1BE018B2D0E9480048D85A0 +:101320008B3031F444E550E1BE018B2D0E948004E6 +:101330008D858E3F09F0FACE6881798135E076950A +:1013400067953A95E1F78FEF9FE30E94350D6B2D7E +:101350006F7109E41DE02BE53DE0AE0180E00E94E5 +:101360001407E4CE49EF5CE0BE0180E68B0D0E94DD +:101370008004DCCE8D85843039F444E355E1BE0130 +:1013800080E88B0D0E9480048D85853031F444E324 +:1013900055E1BE018B2D0E9480048D85863039F485 +:1013A00041E655E1BE0180E88B0D0E9480048D85E9 +:1013B000873031F441E655E1BE018B2D0E94800457 +:1013C0008D85811119C08B2D8068B82E88819981F7 +:1013D000880F892F881F990B91959FEF94B985B934 +:1013E0005F9A5F9814B80FEA14E12BEC34E1AE0178 +:1013F0006B2D80E00E949E078D85813009F096CE8E +:1014000089818F7380649FEF94B985B95F9A5F98E3 +:1014100014B80FEA14E12BEC34E1AE016B2D80E03F +:101420000E949E0783CE3898409A3998419A3A98FC +:10143000429A3C98449A3D98459A3E98469A5398C9 +:101440005B9A55985D9A3B98439A3F98479A57986C +:101450005F9A5098589814B88FEF85B93F9A47987B +:1014600081B911B882B914B885B914B885B9519841 +:10147000599A08950E94130A399A419A389A4098C5 +:101480003A9A429A3C9A449A3D9A459A14B88FEFF8 +:1014900085B914B885B914B885B93F9A479881B908 +:1014A00012B884B915B8479A479814B808950E949D +:1014B000130A399A419A3C9A449A3D9A459A589A05 +:1014C000509A14B88FEF85B914B885B914B885B996 +:1014D0003F9A479881B912B884B915B8479A479886 +:1014E00014B814B885B9579A5F9884B915B85F9A3B +:1014F0005F9814B80895823081F0833061F08130B4 +:10150000A1F40898109A1092BD0380E290E09093A5 +:10151000BC038093BB0380E008955098589A88E0FC +:101520008093BD0389E290E0F2CF87E9089581308E +:1015300049F414B88FEF85B9579A5F980E94100B41 +:1015400080E0089588E908955898509A000089B17C +:101550005098589880FD22C05098589A59B149B176 +:10156000000039B10000000029B1000000000000B7 +:1015700099B1000000000000000089B1509858980F +:1015800050FD0EC040FD0EC030FD0EC020FD0EC04F +:1015900090FD0EC080FD0EC080EE089580EF08958E +:1015A00080E0089581E0089583E0089586E008953D +:1015B0008AE008958FE008950F931F93CF93C82F6B +:1015C000842F8901C230F9F030F4CC2389F0C13086 +:1015D000B1F0C6E90FC0C430F1F0C0F0C038C9F7AF +:1015E00081E0F90180830E94A40AF801818309C087 +:1015F0000E94130A8C2FCF911F910F9108950E9482 +:101600003A0AC0E0F7CF0E94570AFBCFCF911F9153 +:101610000F910C947B0ACF911F910F910C94970A14 +:10162000109214018FEF84B915B85F9A5F9814B8BF +:101630005098589A80E880936C0310927A03EBE7F5 +:10164000F3E0119283E0EB39F807D9F70895609140 +:101650007A03813109F441C0109214019FEF94B9CB +:101660009091140195B95F9A5F9814B820E070E0EA +:101670003FEF8032C9F4E72FF0E0E558FC4F40819E +:1016800050E0022E02C0559547950A94E2F740FFBC +:1016900028C092E034B995B95F9A5F9814B82F5F6B +:1016A000283011F47F5F20E0492F446034B945B9F8 +:1016B0005F9A5F9814B8615034B995B95F9A5F9892 +:1016C00014B86111D6CF909314014093270134B917 +:1016D00015B85F9A5F9814B8089592E0909314013A +:1016E000BDCF90E0D7CF0F931F93CF93DF9350914F +:1016F0007A03B0917B03813109F46BC0109214011D +:101700009FEF94B99091140195B95F9A5F9814B8BE +:1017100020E030E07FEFC1E0D0E0803281F4EB2FB9 +:10172000F0E0022E02C0F595E7950A94E2F7E0FF9B +:1017300054C0916074B995B95F9A5F9814B86032DB +:10174000B1F4211105C0E32FF0E0E558FC4F108201 +:10175000489B0DC0E32FF0E0E558FC4FA0818E01BF +:10176000022E01C0000F0A94EAF7A02BA08351506B +:10177000442341F0511106C0926074B995B95F9A43 +:101780005F9814B8A92FA46074B9A5B95F9A5F983F +:1017900014B874B995B95F9A5F9814B82F5F283060 +:1017A00039F43F5FE32FF0E0E558FC4FB08120E0D3 +:1017B0005111B3CF90931401A09327018FEF84B9F7 +:1017C00015B85F9A5F9814B8DF91CF911F910F9170 +:1017D000089591E09093140193CF9E7FABCF8091B9 +:1017E0006C038338D1F580916D03883009F463C0B0 +:1017F000C0F4833009F445C030F4813079F182308F +:10180000A1F18EEE28C0863009F44AC008F04EC01F +:101810008430B9F781E880936C0341E060E281E1B4 +:1018200036C08F30C1F148F48D3031F18E3049F738 +:1018300081E880936C0340E028C0803849F08F3FF6 +:1018400049F08031F1F681E880936C0340E02CC0D0 +:101850000C94100B80EF80936C03089581E88093C3 +:101860006C0380E20E94270B14C081E880936C0314 +:1018700041E060E080E20BC081E880936C0340E0CF +:10188000F8CF81E880936C0341E060E280E10E9440 +:10189000730B82E8E0CF81E880936C0340E0BECF19 +:1018A00081E880936C0341E060E2E4CF81E88093BB +:1018B0006C0380E1D7CF81E880936C0381E1D2CFC4 +:1018C000CF93DF93E901843061F138F48230E1F0A5 +:1018D00008F58130A1F087E80FC0873039F128F48E +:1018E0008530C9F740937A0306C0883021F18038EB +:1018F00091F70E94100B80E0DF91CF9108959091B5 +:101900006D0399838883F7CF40936D0383E88093B9 +:101910006C03F1CF40936D0383E880936C030E94C6 +:10192000EF0B80916C03898381E0ECCF40937B03C4 +:1019300050937C03E0CF80917B03898380917C036B +:101940008A8380917D038B8380917E038C83809139 +:101950007F038D83809180038E8386E0D3CF82B90D +:101960008FEF84B995B9479A479814B884B965B987 +:10197000509A58985098589A14B8089582B98FEF91 +:1019800084B995B9479A479814B884B965B9509AFB +:101990005898589A14B80895509858984098419A71 +:1019A000429A82B92FEF24B995B9479A479814B84B +:1019B00000000000409A97FD4198000000000000E0 +:1019C00000000000000083B14098419A089582B958 +:1019D0002FEF24B995B9479A479814B8409A97FDC4 +:1019E0004198000000000000000083B14098419A37 +:1019F00008955098589882B92FEF24B995B9479A0D +:101A0000479814B8429824B965B9409A97FD41980F +:101A1000000000004098419A429A14B8089582B993 +:101A20002FEF24B995B9479A479814B8429824B92A +:101A300065B997FD419800000000419A429A14B898 +:101A40000895811520E2920708F4906882B98FEF1B +:101A500084B995B9479A479814B844980000000093 +:101A60000000000083B1449A0895811520E2920796 +:101A700008F4906882B98FEF84B995B9479A47986E +:101A800014B884B965B9000045980000459A14B8A7 +:101A9000089582B98FEF84B995B9479A479814B8D9 +:101AA000409A4198449800000000000083B1449A95 +:101AB0004098419A089582B98FEF84B995B9479AB1 +:101AC000479814B84098419884B965B90000459882 +:101AD0000000459A14B8419A0895EF92FF920F932F +:101AE000CF93DF9300D01F92CDB7DEB77C018FEF8D +:101AF00084B965B9479A479814B8409A67FD4198E8 +:101B000042B9000080E0011117C00000000093B14D +:101B1000F701E80FF11D90834F5F42B98F5F2817DF +:101B200090F74098419A0F900F900F90DF91CF91CE +:101B30000F91FF90EF9008952B834A8389830E9431 +:101B4000C11789814A812B81E2CFEF92FF920F93D7 +:101B5000CF93DF9300D01F92CDB7DEB77C01603208 +:101B600008F460688FEF84B965B9479A479814B84C +:101B7000449842B9000080E0011116C00000000046 +:101B800093B1F701E80FF11D90834F5F42B98F5F6A +:101B9000281790F7449A0F900F900F90DF91CF91F4 +:101BA0000F91FF90EF9008952B834A8389830E94C1 +:101BB000C11789814A812B81E3CFEF92FF921F9356 +:101BC000CF93DF93EC01C11580E2D80708F4D06809 +:101BD0000E940A167E01F3941FEFC2B914B9D5B959 +:101BE000479A479814B814B985B9000045980E94DF +:101BF0000A162196459AEC16FD0679F714B8DF917E +:101C0000CF911F91FF90EF900895EF92FF920F9365 +:101C1000CF93DF9300D01F92CDB7DEB77C018FEF5B +:101C200084B965B9479A479814B8409A419844983E +:101C300042B9000080E0011118C00000000093B11B +:101C4000F701E80FF11D90834F5F42B98F5F2817AE +:101C500090F7449A4098419A0F900F900F90DF911F +:101C6000CF910F91FF90EF9008952B834A83898342 +:101C70000E94C11789814A812B81E1CF0F931F9365 +:101C8000CF93DF938C01D62F442349F080E090E876 +:101C90000E94E70C60E880E090E80E94F90CC5E043 +:101CA000C8010E94E70C6D2FC8010E94F90CD6955F +:101CB000C150B1F7DF91CF911F910F9108951F93FC +:101CC000CF93DF93EC01162F6AEA85E595E50E9434 +:101CD000AF0C65E58AEA9AE20E94AF0C60EA85E5FE +:101CE00095E50E94AF0C612FCE010E94AF0CCE0192 +:101CF0000E94E70C182F0E94C117CE010E94E70C2A +:101D00001813F5CF812FDF91CF911F9108951F9365 +:101D1000CF93DF93EC01162F6AEA85E595E10E94E7 +:101D2000350D65E58AEA9AE00E94350D60EA85E5A1 +:101D300095E10E94350D612FCE010E94350DCE0137 +:101D40000E94210D182F0E94C117CE010E94210D63 +:101D50001813F5CFDF91CF911F9108951F93CF9363 +:101D6000DF93EC01162F40E065E080E090EC0E94EC +:101D70003E0E6AEA85E595E50E94F90C65E58AEA7A +:101D80009AEA0E94F90C60EA85E595E50E94F90C53 +:101D9000612FCE010E94F90CCE010E94E70C182F92 +:101DA0000E94C117CE010E94E70C1813F5CFDF91F6 +:101DB000CF911F9108951F93CF93DF93EC01162FBE +:101DC00040E062E080E090EA0E943E0E6AEA85E52B +:101DD00095E10E94350D65E58AEA9AE00E94350D8D +:101DE00060EA85E595E10E94350D40E060919D0334 +:101DF00080E090EA0E943E0E612FCE010E94350DD8 +:101E0000CE010E94210D182F0E94C117CE010E9401 +:101E1000210D1813F5CFDF91CF911F9108951F93D6 +:101E2000CF93DF93EC01162F60E080919B0390919C +:101E30009C030E94F90C6AEA85E595E50E94AF0CC7 +:101E400065E58AEA9AE20E94AF0C60EA85E595E5CD +:101E50000E94AF0C90919D0320919B0330919C03B5 +:101E6000692FA901490F511DCA010E94F90C612F68 +:101E7000CE010E94AF0CCE010E94E70C182F0E94E9 +:101E8000C117CE010E94E70C1813F5CFDF91CF9157 +:101E90001F9108951F93CF93DF93EC01162F80912C +:101EA0009B0390919C0362E002960E94F90C6AEAFF +:101EB00085E595E10E94350D80919B0390919C03EF +:101EC00061E001960E94F90C65E58AEA9AE00E94B9 +:101ED000350D80919B0390919C0362E002960E94D5 +:101EE000F90C60EA85E595E10E94350D90919D031E +:101EF00020919B0330919C03692FA901490F511D2B +:101F0000CA010E94F90C612FCE010E94350DCE014D +:101F10000E94210D182F0E94C117CE010E94210D91 +:101F20001813F5CFDF91CF911F9108951F93CF9391 +:101F3000DF93EC01162F6AEA85E595ED0E94F90C16 +:101F400065E58AEA9AEA0E94F90C60EA85E595ED72 +:101F50000E94F90C612FCE010E94F90C60E080E034 +:101F600090E80E94F90CCE010E94E70C182F0E9405 +:101F7000C117CE010E94E70C1813F5CF812FDF9116 +:101F8000CF911F9108951F93CF93DF93EC01162FEC +:101F90006AEA85E595E10E94350D65E58AEA9AE1F0 +:101FA0000E94350D60EA85E595E10E94350D612FAF +:101FB000CE010E94350DCE010E94210D182F0E94E6 +:101FC000C117CE010E94210D1813F5CFDF91CF91DB +:101FD0001F9108951F93CF93DF93EC01162F6AEAA8 +:101FE0008AEA9AEF0E94F90C65E585E595EF0E9473 +:101FF000F90C60EA8AEA9AEF0E94F90C612FCE018F +:102000000E94F90C60919D0380E090EA0E94F90C17 +:10201000CE010E94E70C182F0E94C117CE010E942A +:10202000E70C1813F5CFDF91CF911F9108951F93FF +:10203000CF93DF93EC01162F6AE080E090EB0E94D3 +:10204000F90C6AE080E090EC0E94F90C6AEA85E500 +:1020500095E10E94350D65E58AEA9AE00E94350D0A +:1020600060EA85E595E10E94350D60919D0380E071 +:1020700090EB0E94F90C60919D0380E090EC0E942F +:10208000F90C612FCE010E94350DCE010E94210D69 +:10209000182F0E94C117CE010E94210D1813F5CFF1 +:1020A000DF91CF911F9108950F931F93CF93DF93EB +:1020B0008C01D62FC0919D03C295C07F80919B0358 +:1020C00090919C0360E280960E94F90C6AEA85E593 +:1020D00095E10E94350D80919B0390919C0360E1F6 +:1020E00040960E94F90C65E58AEA9AE00E94350D57 +:1020F00080919B0390919C0360E280960E94F90C72 +:1021000060EA85E595E10E94350D80919B039091F1 +:102110009C036C2F8C0F911D0E94F90C6D2FC80130 +:102120000E94350DC8010E94210DC82F0E94C117C1 +:10213000C8010E94210DC813F5CFDF91CF911F91E7 +:102140000F9108951F93CF93DF93EC01162F61E059 +:1021500080E090EC0E94F90C6AEA85E595E90E941E +:10216000F90C60E080E090EC0E94F90C65E58AEAE9 +:102170009AEA0E94F90C61E080E090EC0E94F90C70 +:1021800060EA85E595E90E94F90C60919D0380E085 +:1021900090EC0E94F90C612FCE010E94F90CCE0147 +:1021A0000E94E70C182F0E94C117CE010E94E70C75 +:1021B0001813F5CF812FDF91CF911F9108950F93C1 +:1021C0001F93CF93C82FCA018901CE3009F488C06C +:1021D00078F5C73009F48DC0B8F4C23009F46CC08A +:1021E00040F4CC2309F45AC0C13009F462C0C0EAFB +:1021F00057C0C53009F466C008F057C0C430B9F7FD +:1022000040E00E943E0E53C0CA3009F466C040F45C +:10221000C83009F471C0C93051F70E945F0E47C041 +:10222000CC3009F46FC008F461C00E940F0F3FC0AA +:10223000C23209F444C0A0F4C13109F460C040F4D2 +:10224000CF3009F450C0C03191F60E94EA0F2FC080 +:10225000C032D9F1E8F5C23151F60E94A21027C070 +:10226000C23809F460C058F4C03809F44EC008F010 +:1022700054C0C33209F0BBCF0E94DD0D18C0C53871 +:1022800009F457C0C63809F45AC0C43809F0AFCFB2 +:1022900021E0F80120830E94490D3CC00E94AF0C50 +:1022A0008C2FCF911F910F9108950E94BE0CC0E01A +:1022B000F7CF0E94350DFBCF0E94F90CF8CF0E949A +:1022C0000F0DF5CF0E945B0DF2CF40939D03EFCF32 +:1022D00040939B0390939C03EACF0E94870EE7CF25 +:1022E0000E94AE0EE4CF0E94DB0EE1CF0E944A0FA7 +:1022F000DECF0E94960FDBCF0E94C30FD8CF0E9483 +:102300001710D5CF0E945410D2CF21E0F8012083BE +:102310000E94CC0CF8018183CACF21E0F801208310 +:102320000E94E70CF7CF21E0F80120830E94210DE5 +:10233000F1CF81E0F901808380919D03ECCF82E0B1 +:10234000F901808380919B03818380919C03828328 +:10235000AECFCF93DF93FB01DC0112962C912223A9 +:1023600029F0203479F082ED808308C01082A0919A +:102370000201B0910301EC018C818C93CF01DF91BC +:10238000CF910895108281E08183A0910201B091E4 +:1023900003018C918283F2CFE0910201F09103015D +:1023A00080830895E0910201F091030180810895F6 +:1023B0000F931F93D901082F10E00831110508F081 +:1023C000C2C2F801EA51FE4E0C941F1A2012FE11EF +:1023D0005B12B61202134E139A1345144A144F148B +:1023E000521456145914611469146D147014741431 +:1023F0007D1484148814901497149B14463151054D +:1024000008F0A3C2FA01E95FFD4E0C941F1A1D12D9 +:10241000231227122B122F12331237123B123F12A4 +:10242000431247124B124F125312A514A514A514B0 +:10243000A514A514A514A51457123898409A80E045 +:102440001F910F9108953998419A80E0F9CF3A98F9 +:10245000429A80E0F5CF3B98439A80E0F1CF3C98D8 +:10246000449A80E0EDCF3D98459A80E0E9CF3E98D0 +:10247000469A80E0E5CF3F98479A80E0E1CF5098B8 +:10248000589A80E0DDCF5198599A80E0D9CF53987F +:102490005B9A80E0D5CF55985D9A80E0D1CF569871 +:1024A0005E9A80E0CDCF57985F9A80E0C9CF509870 +:1024B000589A80E0C5CF4631510508F048C2FA016C +:1024C000EC59FD4E0C941F1A7A127E12821286125B +:1024D0008A128E12921296129A129E12A212A612AC +:1024E000AA12AE12A714A714A714A714A714A7140E +:1024F000A714B2123898409880E0A2CF399841983A +:1025000080E09ECF3A98429880E09ACF3B984398DB +:1025100080E096CF3C98449880E092CF3D984598D3 +:1025200080E08ECF3E98469880E08ACF3F984798CB +:1025300080E086CF5098589880E082CF5198599883 +:1025400080E07ECF53985B9880E07ACF55985D9875 +:1025500080E076CF56985E9880E072CF57985F986B +:1025600080E06ECF5098589880E06ACF4631510590 +:1025700008F0EFC1FA01E154FD4E0C941F1AD51278 +:10258000D812DB12DE12E112E412E712EA12ED12A7 +:10259000F012F312F612F912FC12A914A914A914DC +:1025A000A914A914A914A914FF12389A80E048CFDD +:1025B000399A80E045CF3A9A80E042CF3B9A80E05A +:1025C0003FCF3C9A80E03CCF3D9A80E039CF3E9AA5 +:1025D00080E036CF3F9A80E033CF509A80E030CF12 +:1025E000519A80E02DCF539A80E02ACF559A80E00F +:1025F00027CF569A80E024CF579A80E021CF509A77 +:1026000080E01ECF4631510508F0A5C1FA01E55F13 +:10261000FC4E0C941F1A2113241327132A132D1375 +:1026200030133313361339133C133F13421345133E +:102630004813AB14AB14AB14AB14AB14AB14AB1406 +:102640004B13409880E0FCCE419880E0F9CE429850 +:1026500080E0F6CE439880E0F3CE449880E0F0CE60 +:10266000459880E0EDCE469880E0EACE479880E03D +:10267000E7CE589880E0E4CE599880E0E1CE5B98B0 +:1026800080E0DECE5D9880E0DBCE5E9880E0D8CE44 +:102690005F9880E0D5CE589880E0D2CE4631510583 +:1026A00008F05BC1FA01E95AFC4E0C941F1A6D1335 +:1026B00070137313761379137C137F1382138513AE +:1026C00088138B138E1391139413AD14AD14AD14A2 +:1026D000AD14AD14AD14AD149713409A80E0B0CE94 +:1026E000419A80E0ADCE429A80E0AACE439A80E043 +:1026F000A7CE449A80E0A4CE459A80E0A1CE469A27 +:1027000080E09ECE479A80E09BCE589A80E098CE9B +:10271000599A80E095CE5B9A80E092CE5D9A80E0F7 +:102720008FCE5E9A80E08CCE5F9A80E089CE589AF8 +:1027300080E086CE82E08C934631510508F0A2C03D +:10274000FA01EB55FC4E0C941F1ABB13C413CD13A6 +:10275000D613DF13E813F113FA1303140C14151432 +:102760001E1427143014421442144214421442140A +:1027700042144214391486B1817011968C931197CA +:1027800012961C9280E05CCE86B1827090E0129628 +:102790009C938E93119780E053CE86B1847090E025 +:1027A00012969C938E93119780E04ACE86B18870E2 +:1027B00090E012969C938E93119780E041CE86B163 +:1027C000807190E012969C938E93119780E038CEA2 +:1027D00086B1807290E012969C938E93119780E060 +:1027E0002FCE86B1807490E012969C938E931197B1 +:1027F00080E026CE86B1807890E012969C938E93EE +:10280000119780E01DCE89B1817011968C9311973C +:1028100012961C9280E014CE89B1827090E01296DC +:102820009C938E93119780E00BCE89B1887090E0D5 +:1028300012969C938E93119780E002CE89B180729C +:1028400090E012969C938E93119780E0F9CD89B118 +:10285000807490E012969C938E93119780E0F0CD57 +:1028600089B1807890E012969C938E93119780E0C6 +:10287000E7CD89B1817011968C93119712961C92B5 +:1028800080E0DECD1C928DE8DBCD14B88FEF85B9EA +:1028900080E0D6CD14B88FEF85B980E0D1CD14B8E3 +:1028A00080E0CECD8FEF84B980E0CACD45B980E01D +:1028B000C7CD83B111968C93119781E08C9380E002 +:1028C000BFCD14B88FEF85B93F9A479881B980E0A2 +:1028D000B7CD8FEF82B980E0B3CD11B880E0B0CD35 +:1028E0008FEF81B980E0ACCD42B98FEF84B955B993 +:1028F000479A479814B880E0A3CD14B88FEF85B9F4 +:10290000579A5F9880E09CCD57985F9A80E098CD69 +:102910008FEF84B945B95F9A5F9814B880E090CD85 +:1029200014B88FEF85B9579A5F9880E089CD579892 +:102930005F9A80E085CD8FEF84B945B95F9A5F9843 +:1029400014B880E07DCD8CE87BCD8DE879CD8DE825 +:1029500077CD8DE875CD8DE873CD8DE871CD82B9D9 +:102960008FEF84B995B9479A479814B8611101C09F +:1029700041984498000000000000000000000000A2 +:10298000000000000000000000000000000083B113 +:10299000449A419A089582B98FEF84B995B9479ABC +:1029A000479814B884B965B94598411101C0419858 +:1029B0000000000000000000000000000000000017 +:1029C000459A419A14B808959FEF94B985B94598EE +:1029D000611101C041980000000000000000459A0C +:1029E000419A14B80895CF92DF92EF920F93CF934C +:1029F000DF9300D0CDB7DEB76C018FEF84B965B936 +:102A0000479A479814B84498411101C0419822B997 +:102A100080E0E1101FC00000000000000000000086 +:102A20000000000000000000000093B1F601E80F74 +:102A3000F11D90832F5F22B98F5F081750F7449ADA +:102A4000419A0F900F90DF91CF910F91EF90DF900F +:102A5000CF9008952A8389830E94C1170000000047 +:102A6000000089812A81DBCF1F93CF93DF93EC0194 +:102A7000162F40E06AEA85E595E50E94CB1440E018 +:102A800065E58AEA9AE20E94CB1440E060EA85E5B7 +:102A900095E50E94CB1440E0612FCE010E94CB143B +:102AA00060E0CE010E94AF14182F0E94C11760E0B1 +:102AB000CE010E94AF141813F3CFDF91CF911F9175 +:102AC00008951F93CF93DF93EC01162F40E06AEA3D +:102AD0008AEA9AE80E94CB1440E065E585E595E82E +:102AE0000E94CB1440E060EA8AEA9AE80E94CB1484 +:102AF00040E0612FCE010E94CB1460E0CE010E9425 +:102B0000AF14182F0E94C11760E0CE010E94AF14CD +:102B10001813F3CFDF91CF911F9108950F931F9357 +:102B2000CF93DF93782FCA01E901072F10E0073018 +:102B3000110580F5F801E156FA4E0C941F1AA615FE +:102B4000BF15B215B915BC15C615B7159FEF94B9C9 +:102B500085B95F9A5F9814B8872FDF91CF911F9145 +:102B60000F91089540E00E94CB1470E0F5CF41E052 +:102B7000FACF0E943415F9CF0E946115F6CF21E0FB +:102B8000288360E00E94AF148983EFCF21E028837F +:102B900061E0F8CF7AEAE0CF823099F0833051F1EA +:102BA000813069F560E070E0BA0155274427409311 +:102BB000B7035093B8036093B9037093BA0380E0EE +:102BC00008958091B7039091B803A091B903B09193 +:102BD000BA038827992760E070E0842B952BA62BF9 +:102BE000B72B8093B7039093B803A093B903B09326 +:102BF000BA03E5CF81E090E0A0E0B0E0F2CF83E857 +:102C000008956093B7037093B8038093B9039093CA +:102C1000BA030895CF92DF92EF92FF928091B703AB +:102C20009091B803A091B903B091BA0327E0AC0129 +:102C3000BD0176956795579547956C017D0155E1E6 +:102C4000F694E794D794C7945A95D1F74C25482722 +:102C50006C017D01CC24F7FCC394DD24EE24FF2419 +:102C60004C254170880F991FAA1FBB1F842B215030 +:102C7000F1F68093B7039093B803A093B903B09390 +:102C8000BA03FF90EF90DF90CF900895880F991FBF +:102C9000880F991F20E030E02817390709F40895BC +:102CA000000000002F5F3F4FF7CF20E030E02817F3 +:102CB000390709F40895000000002F5F3F4FF7CF58 +:102CC000CF93DF9380E190E00E944616C4E0D0E00D +:102CD00084EF91E00E94461684EF91E00E94461630 +:102CE0002197B1F7C4E0D0E08AEF90E00E94461649 +:102CF0008AEF90E00E9446162197B1F7DF91CF91BD +:102D0000089580E190E00C944616CF93DF931F92D4 +:102D1000CDB7DEB7F901813171F038F48130C1F0FF +:102D200078F08230C9F082E80FC08132A9F0823297 +:102D300099F08231C1F782E08083128211820AC049 +:102D400089830E94601689810F90DF91CF91089549 +:102D50000E94811680E0F8CF81E080831182FACF53 +:102D6000482F90E0982F882720E0411103C02111BF +:102D70008068089520953FEF340F4323F6CF80E01D +:102D800090E0089580E0089560E070E0CB01089540 +:102D9000CF93DF931F92CDB7DEB7DC018FEF809327 +:102DA00007011092080187E091E09093CD03809392 +:102DB000CC0316968C91169789831196EC911197F6 +:102DC0004E2F50E0FA013197E131F10508F0AFC024 +:102DD000E451F94E0C941F1AFD160D171B172917F5 +:102DE0007D1797178E1737174517531761179717C2 +:102DF00097179717971797176F1714964D915C9120 +:102E0000159728E031E013966C91139712968C91E8 +:102E10000E94D811809307017CC014964D915C915B +:102E2000159728E031E013966C91139712968C91C8 +:102E30000E94DC0AEFCF14964D915C91159728E023 +:102E400031E013966C91139712968C910E94DF10CB +:102E5000E1CF14964D915C91159728E031E01396DF +:102E60006C91139712968C910E948E15D3CF149665 +:102E70004D915C91159728E031E013966C91139772 +:102E800012968C910E948516C5CF14964D915C9137 +:102E9000159728E031E013966C91139712968C9158 +:102EA0000E94600CB7CF14964D915C91159728E065 +:102EB00031E013966C91139712968C910E949500B5 +:102EC000A9CF14964D915C91159728E031E01396A7 +:102ED0006C91139712968C910E9441039BCF14968C +:102EE0004D915C91159728E031E013966C91139702 +:102EF00012968C910E94CC158DCFAE014F5F5F4F23 +:102F000067E071E0CD010E947B019093CD03809337 +:102F1000CC0389810F90DF91CF910895AE014F5F6F +:102F20005F4F67E071E0CD010E94A911EECF80E80C +:102F300071CFE0916903F0916A0327814481558143 +:102F4000322F360F231312C0E0916903F0916A0308 +:102F50008781860F878380913801861B8093380193 +:102F600081110DC088E9838381E00895FC0171918E +:102F7000CF01FA01E20FF11D70832F5FE3CF80E0F4 +:102F80000895CF93DF936091CE03635067FD91C0A6 +:102F90008091CB03CCE0D0E0C81BD109CE52DC4FEE +:102FA0008091CA038D3209F0CFC0683009F07FC02C +:102FB00083EC8093BE038AE58093050110920F0194 +:102FC0008881807679F0CE010E94C8168F3F09F47F +:102FD00066C09F81911169C09E81981708F065C0F5 +:102FE000892F63C02A811092C703998191110AC069 +:102FF0001092C80327EC33E082E03093CD03209396 +:10300000CC03E7CF953029F42093CF0327EC33E0AE +:10301000F4CF963099F59B81913059F48EE890E089 +:103020009093CD038093CC0382E190E490930F01C1 +:10303000D0CF923019F48CE790E0F2CF9330A9F71B +:10304000211108C088EE90E09093CD038093CC03CB +:1030500084E0EBCF213041F48EEB90E09093CD03F0 +:103060008093CC038AE2E1CF2230F9F680EA90E047 +:103070009093CD038093CC038EE1D7CF983059F055 +:10308000993019F42093D103C1CF81E09A3009F42B +:10309000BDCF80E0BBCF21ED33E081E0AECF9881A2 +:1030A00097FD8E8190E890930F0180930401109218 +:1030B000CE038091050184FF3AC0809104018F3FC7 +:1030C000B1F1C82F893008F0C8E08C1B809304014F +:1030D0008091BE0398E889278093BE03CC23D1F06A +:1030E0008091CC039091CD0320910F0126FF3FC02A +:1030F000AFEBB3E0FC012C2F34913D93319621507E +:10310000D9F701962FEF2C0F820F911D9093CD03CD +:103110008093CC036C2F8FEB93E00E94DC18CC5F84 +:10312000CC3019F08FEF80930401C093050184E146 +:1031300099B1947131F48150D9F71092CF03109264 +:10314000C903DF91CF91089580910F0187FFAFCF21 +:10315000CE010E9499178F3F21F48EE180930501E3 +:10316000A6CF882309F4A3CF10920401A0CFEFEBE0 +:10317000F3E0DC012C2F3D9131932150E1F7C1CFD9 +:10318000E9E6F0E0808182608083E89A0895A82FC4 +:10319000B92F80E090E041E050EA609530E009C04E +:1031A0002D9182279795879510F084279527305E7B +:1031B000C8F36F5FA8F30895EADF8D939D93089598 +:1031C000CF93CFB7CF93DF93C3954C9BE9F74C9B3D +:1031D0000BC04C9B09C04C9B07C04C9B05C04C9B33 +:1031E00003C04C9B01C089C06F93C091CB03DD2706 +:1031F000CE52DC4F2F9365E54C9B03C02F916F910E +:10320000E6CF0F931F934F9320E040E15F9309B106 +:10321000047104FB27F93F9350E03BE039C014717F +:1032200040642F77012F5F5F1EC0406819B1147191 +:103230002F7752501FC0406409B12F770471D1F12C +:103240005F5F00C023C0406219B12F77147191F104 +:103250005F5F00C025C004711027515012F45D5FFC +:103260000000115027952C3F19B1C8F614710127A1 +:10327000015027952C3FC8F64227499309B10471A4 +:1032800010274F73115027952C3FA8F64695469569 +:1032900019B1147179F00127015027952C3F98F648 +:1032A0006B5A60F3315009B1B0F600C011E01CBB9D +:1032B000002717C03B503195C31BD04011E01CBB09 +:1032C0000881033CF9F00B34E9F02091C90319811E +:1032D000110F1213EDCF093651F10D3211F0013EED +:1032E00039F70093D0033F915F914F911F910F9158 +:1032F0002F916F91CCB3C0FD67CFDF91CF91CFBF3E +:10330000CF9118952091D003222369F31091CE0319 +:10331000112339F534303AF13093CE032093CA03A8 +:103320001091CB033BE0311B3093CB031CC00091C9 +:10333000CE030130B4F40AE53091050134FD14C028 +:1033400000930501CEEBD3E013C0052710E000C0C9 +:1033500000000BB91AC0052710E0221F1DC010E0A5 +:1033600021C04AE502C032ED432FC4E1D0E032E093 +:103370001AB114615C9A0BB11AB954E120E865E303 +:1033800020FF05270BB9279517951C3FF0F666958A +:10339000B8F7B1F720FF05270BB9279517951C3F04 +:1033A000D0F62795179517FF052700001C3F0BB98E +:1033B000B0F629913A9519F70B7E1091CF03110FB2 +:1033C000C651D0400BB911F01093C90311E01CBBDA +:1033D00000611AB11B7E402F4B7E54E05A95F1F7E5 +:1033E0000BB91AB94BB97FCF9EE088E10FB6F894BC +:1033F000A895809360000FBE909360000E94C01853 +:10340000549A80E0815099F4549878940E94130A59 +:1034100080EF80936C03A8950E94C1170E94AA02B6 +:1034200080916C03803FB9F30E94EF0BF4CFA89515 +:10343000EFE9FFE03197F1F700C00000E3CFEE0FB6 +:0E344000FF1F0590F491E02D0994F894FFCF42 +:06344E0069019E03FF5A14 :00000001FF diff --git a/firmware/build_stm/inlretro_stm.hex b/firmware/build_stm/inlretro_stm.hex deleted file mode 100644 index 9e18c5c..0000000 --- a/firmware/build_stm/inlretro_stm.hex +++ /dev/null @@ -1,1363 +0,0 @@ -:020000040800F2 -:10000000001800200508000835050008390500081B -:1000100000000000000000000000000000000000E0 -:10002000000000000000000000000000350500088E -:10003000000000000000000035050008350500083C -:1000400035050008350500083505000835050008A8 -:100050003505000835050008350500083505000898 -:100060003505000835050008350500083505000888 -:100070003505000835050008350500083505000878 -:100080003505000835050008350500083505000868 -:100090003505000835050008350500083505000858 -:1000A0003505000835050008350500083505000848 -:1000B00035050008350500083505000899010008D8 -:1000C000284B10B51A88284B12041B881A43274B5B -:1000D000198849084900885A254908801988023139 -:1000E00089B21980198849084900885A214908802D -:1000F0001988023189B21980198849084900885A3B -:100100001D49088019881D48023189B21980198853 -:1001100049084900895A1A4A11801A881949023235 -:1001200092B21A801C880288944213D902881C88D3 -:100130000832121B92B20A80028892B21A801249C7 -:10014000124B0A881343124A1A40302353409BB281 -:100150000B8010BD0F4804881A889442E6D3082308 -:100160000B80ECE70C6000400A6000400460004037 -:100170004C6000404E600040506000400260004013 -:10018000526000401A600040005C00408080FFFF29 -:10019000BF8FFFFF006000409449F8B50B88944C76 -:1001A000002B3AD00A88934B9A4234D1002302257F -:1001B000914A924F1380924A1380924A1380924A36 -:1001C0001380924A1380924AD08FA843D087D08F51 -:1001D000013DA843D0878F481735FB8705808E489F -:1001E000343505808D480835058080258C486D01A3 -:1001F000058080258B4805808020FB878A4B000680 -:1002000023808A4B18608023D08FDB000343D38781 -:10021000874B884A1A8000230B8023881BB2002B4F -:1002200000DBC4E02388844A774F134080221343C5 -:10023000238023881B0500D49CE0804D7F232A78EF -:1002400011009943714B1980E9886B4B198000218B -:100250006C4B19803B88FF318B4313433B806023F9 -:100260001A4208D08022764B12051B8828009B1862 -:100270009847634B188060232A78134052B2002AB3 -:100280004DDA002B14D16A78062A0FD16A88110A38 -:1002900002291AD003291BD0012920D1694B12262B -:1002A000694A99B21180694A1B0C1380544B1E8015 -:1002B0002288674B1343674A1A40C0239B0153406F -:1002C0009BB22380FFF7FCFE47E05E4B1233E6E76C -:1002D000D2B2012A0FD0002A03D0022A15D01E0064 -:1002E000E4E7584B584A243399B21180574A1B0C03 -:1002F00013800426DAE7534B534A283399B211800E -:10030000524A1B0C1380544ED0E74E4B4E4A7C335E -:1003100099B211804D4A1B0C1380504EC6E7002B3A -:1003200009D16B78052B06D13A886B88D2B21B02B3 -:1003300013439BB23B8000212388494A1340494A1A -:1003400013439BB22380484B198023881A43474BA1 -:100350001A40474B5A4092B22280284BDB8F5B05F4 -:1003600007D580222F4B1A800023244AD3872E4B97 -:100370002380F8BD60213B880B40402BEDD13B88AA -:100380001342EAD1264A3B4B2C481B881188802215 -:1003900012059B18C9B298472288324B13432D4A45 -:1003A0001A40C0239B0153409BB22380D5E7802293 -:1003B00023881342D1D023882F490B408021090282 -:1003C0000B432380114B1B88934200D17AE7FF2017 -:1003D0000D4B19888143C0D01988090A0A43114975 -:1003E0000A801A8802401A80B7E7C0460E600040B3 -:1003F000005C00403CA5000000600040065C00403E -:100400000260004004600040066000400860004058 -:10041000025C0040505C0040186000401C600040DE -:100420001E6000404C5C00402032000000E100E013 -:10043000585C00400080FFFF8F0F000054600040B8 -:10044000106000407C0400080A6000400C6000401E -:100450008081FFFF8FBFFFFF2A0300001E03000003 -:100460008F8EFFFF8080FFFF1A600040BFBFFFFF3D -:1004700030300000126000400F8FFFFF12010002B9 -:10048000FF000008C016DC0503020102000109029A -:100490001200010100803209040000000000000089 -:1004A000040309042A0349006E00660069006E0017 -:1004B0006900740065004E00650073004C0069001F -:1004C0007600650073002E0063006F006D00000071 -:1004D000000000000000000000000000000000001C -:1004E000000000000000000000000000000000000C -:1004F00000000000000000001E0349004E004C00F8 -:10050000200052006500740072006F002D00500042 -:1005100072006F0067000000000000000000000093 -:1005200000000000000000000000000000000000CB -:1005300000000000FEE7FFFF004801E02301ADDE00 -:10054000FEE7C04602B4714649084900095C49000B -:100550008E4402BC7047C046411D000000616561C9 -:1005600062690001130000000536532D4D00060C92 -:10057000074D09011901FFFF03B471464908400006 -:100580004900095A49008E4403BC7047411D0000D0 -:100590000061656162690001130000000536532D9A -:1005A0004D00060C074D09011901FFFF70470A4B6A -:1005B0000A4A10B55A600A4A5A600122DC6814429D -:1005C000FCD11A6101220180D9681142FCD120229C -:1005D000DA6060321A6110BD0020024023016745D5 -:1005E000AB89EFCDFF2370B53C4C23804378C588A1 -:1005F000102B00D06FE0C37881888078384E0138A6 -:100600007269082800D964E0FFF79CFF0563632B3B -:100610003B3149515F008B1E8E227D2B19D8314B07 -:100620007360314B73600123F2681A42FCD10223DC -:100630003361802389021B05C9184223716133612C -:10064000C046413BF2681A40FCD12023F36060337E -:1006500033612270254BA2B2240CE8B25A819C81EE -:1006600070BD58001018FFF7A2FF0022F1E78E229C -:10067000012BEED8180480231B05C01840181C4914 -:10068000F1E7042363707369A37073691B0AE37055 -:1006900073691B0C237173691B0E6371E5E70223F9 -:1006A00063701388A37013881B0AE370DDE78E2242 -:1006B000012BCED880221B0412059B185918022347 -:1006C00063700B88A3700B88EEE70A4B0A4ADA6066 -:1006D000CBE78B22BDE780232370BBE7EC0600202D -:1006E0000020024023016745AB89EFCD0060004048 -:1006F000FFFF000000ED00E00400FA05FFFFFFFF30 -:10070000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9 -:10071000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9 -:10072000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD9 -:10073000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC9 -:10074000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9 -:10075000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA9 -:10076000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF99 -:10077000164B174A9BB21382164B9BB253826846A4 -:100780001C300F4A0F4B0430043001681140C91A65 -:10079000FAD1094A094B043801681140C91AF2D14B -:1007A0007B460A3303600438013303600CE00A4BD4 -:1007B0000A4A1A60FBE7C0460000FFFF000000087D -:1007C000FFFFFF0F0000000100207047E505000853 -:1007D00000600040AD05000800300040AAAA0000FB -:1007E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF19 -:1007F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF09 -:10080000FFFFFFFF09490A4A0A4B9B1A03DD043B1D -:10081000C858D050FBDC0849084A0020521A02DDB3 -:10082000043A8850FCDC02F043FD0000D050000880 -:1008300000000020300400203004002028070020A1 -:1008400070B50E4B1A68537A55685C18E4B2A3422F -:100850000ED1537A0A48CB1853720378591AC9B289 -:1008600001700020814202D198230130D37070BD05 -:1008700006780130EE540133DBB2E8E79004002043 -:1008800094040020FF23F0B5C34C85B02380837906 -:1008900005000093407801380E2801D901F00CFCC6 -:1008A000FFF76AFE0F00A8059307A408B00A0A0C18 -:1008B000F60B6709EF09530AAD0AE308310943094A -:1008C0005509A878AA888C23192822D8FFF754FE46 -:1008D0001A0024001A011502E10281030C04C80465 -:1008E000E404F004F80400050905120520052805B4 -:1008F000300538058005800580053D0552056905F0 -:10090000C902D502B023A54A5B0351690B43536169 -:100910000023237000F003FE152A01D900F05BFDCF -:100920001000FFF729FE160023002E00580539009D -:1009300044004F0058055C006900730080005805B2 -:1009400058058D009A00A700B400C100CE00D80061 -:10095000E2009023DB051A6891490A401A60802260 -:10096000D96852030A43DA600023D2E790230122B8 -:10097000DB05196891431960D9680A43DA600023DE -:10098000C7E790230422DB05196891431960D968F1 -:100990000A43DA600023BCE790231022DB051968C4 -:1009A00091431960D9680A43DA600023B1E79023C4 -:1009B0004022DB05196891431960D9680A43DA605F -:1009C0000023A6E79023DB051A6876490A401A60DF -:1009D0008022D968D2040A43DA60002399E7902381 -:1009E000DB051A6870490A401A608022D9685201F2 -:1009F0000A43DA6000238CE704226C4B19689143A8 -:100A00001960D9680A43DA60002382E79023DB0586 -:100A10001A6867490A401A608022D968D2050A43D9 -:100A2000DA60002375E79023DB051A6861490A4004 -:100A30001A608022D968D2020A43DA60002368E78C -:100A40009023DB051A685C490A401A608022D96845 -:100A500052000A43DA6000235BE79023DB051A6843 -:100A600056490A401A608022D968D2000A43DA60E7 -:100A700000234EE79023DB051A6851490A401A60AB -:100A80008022D968D2010A43DA60002341E790232B -:100A9000DB051A6843490A401A608022D968D204EB -:100AA0000A43DA60002334E79023DB051A684549DE -:100AB0000A401A608022D96852050A43DA6000238E -:100AC00027E70122394B196891431960D9680A4315 -:100AD000DA6000231DE710223B4B1968914319602F -:100AE000D9680A43DA60002313E79023DB051A680C -:100AF00032490A401A608022D968D2000A43DA607B -:100B0000002306E7152A01D900F068FC1000FFF762 -:100B100033FD160021002C00650437005D006800DD -:100B2000650473007E0088009300650465049E00E0 -:100B3000A900B400BF00CA00D500DF00E90090237F -:100B4000DB051968164801401960DA680240DA606E -:100B50000023DEE690230121DB051A688A431A6030 -:100B6000DA688A43DA600023D3E690230421DB05A8 -:100B70001A688A431A60DA688A43DA600023C8E692 -:100B800090231021DB051A688A431A60DA688A43C9 -:100B9000DA600023BDE6C046F406002000100240E3 -:100BA000FFFFEFFFFFFFFFFBFFEFFFFF0004004829 -:100BB000FFFFFFBFFFFFFBFFFFFEFFFFFFFBFFFF8E -:100BC000FFBFFFFFFFFFFFEF000C00489023402115 -:100BD000DB051A688A431A60DA688A43DA60002300 -:100BE00097E69023DB051968CE4801401960DA6862 -:100BF0000240DA6000238CE69023DB051968CA48BE -:100C000001401960DA680240DA60002381E60421BD -:100C1000C64B1A688A431A60DA688A43DA6000238E -:100C200077E69023DB051968C14801401960DA684E -:100C30000240DA6000236CE69023DB051968BD48AA -:100C400001401960DA680240DA60002361E690230F -:100C5000DB051968B84801401960DA680240DA60BB -:100C6000002356E69023DB051968B448014019605B -:100C7000DA680240DA6000234BE69023DB0519684E -:100C8000AF4801401960DA680240DA60002340E6AC -:100C90009023DB051968A34801401960DA68024017 -:100CA000DA60002335E69023DB051968A54801408A -:100CB0001960DA680240DA6000232AE601219B4BC2 -:100CC0001A688A431A60DA688A43DA60002320E6E9 -:100CD00010219D4B1A688A431A60DA688A43DA60E9 -:100CE000002316E69023DB0519689448014019603B -:100CF000DA680240DA6000230BE6152A00D970E3B7 -:100D00001000FFF739FC16001F0027006E032F00AC -:100D100037003F006E0348005100580061006E0329 -:100D20006E036A0073007C0085008E0097009E00B1 -:100D3000A50090228023D20511685B030B4313604A -:100D40000023E6E590220123D20511680B431360CE -:100D50000023DEE590220423D20511680B431360C3 -:100D60000023D6E590221023D20511680B431360AF -:100D70000023CEE590224023D20511680B43136077 -:100D80000023C6E590228023D2051168DB040B43C3 -:100D900013600023BDE590228023D20511685B011A -:100DA0000B4313600023B4E50423604A11680B432E -:100DB00013600023ADE590228023D2051168DB0586 -:100DC0000B4313600023A4E590228023D205116811 -:100DD000DB020B43136000239BE590228023D205A6 -:100DE00011685B000B431360002392E5902280237F -:100DF000D2051168DB000B431360002389E59022C4 -:100E00008023D2051168DB010B431360002380E5CA -:100E100090228023D2051168DB040B43136000236A -:100E200077E590228023D20511685B050B431360A0 -:100E300000236EE501233D4A11680B431360002334 -:100E400067E51023404A11680B431360002360E5F7 -:100E500090228023D2051168DB000B43136000232E -:100E600057E58D23082A00D053E590224023D20570 -:100E700051680B43536000234BE58D23082A00D0B3 -:100E800047E590224021D20553688B4353600023ED -:100E90003FE5152A00D9A7E21000FFF76DFB160009 -:100EA0001D002300A50229002F003500A5023C00EB -:100EB00057005C006300A502A5026A00700076007E -:100EC0007C0083008A008F00940090238022DB0541 -:100ED000D2009A6200231CE590230122DB059A626E -:100EE000002316E590230222DB059A62002310E519 -:100EF00090230422DB059A6200230AE5902308224E -:100F0000DB059A62002304E590238022DB05920131 -:100F10009A620023FDE490234022DB059A620023BD -:100F2000F7E4C046FFFFFFFBFFEFFFFF00040048B0 -:100F3000FFFFFFBFFFFFFBFFFFFEFFFFFFFBFFFF0A -:100F4000FFBFFFFFFFFFFFEF000C00480222CD4B69 -:100F50009A620023DDE490238022DB0512029A626C -:100F60000023D6E490238022DB0592009A620023BE -:100F7000CFE490231022DB059A620023C9E490237A -:100F80002022DB059A620023C3E490238022DB0544 -:100F90009A620023BDE490238022DB0592019A62CD -:100FA0000023B6E490238022DB05D2019A6200235D -:100FB000AFE40122B34B9A620023AAE40422B24BAD -:100FC0009A620023A5E490232022DB059A62002385 -:100FD0009FE4152A00D90AE21000FFF7CDFA1600A7 -:100FE0001D002300080229002F00350008023C00E4 -:100FF000420047004E000802080255005B006100F5 -:1010000067006E0075007A007F0090238022DB0568 -:10101000D2009A6100237CE490230122DB059A61CF -:10102000002376E490230222DB059A61002370E41A -:1010300090230422DB059A6100236AE490230822AE -:10104000DB059A61002364E490238022DB05920192 -:101050009A6100235DE490234022DB059A6100231E -:1010600057E40222874B9A61002352E490238022A6 -:10107000DB0512029A6100234BE490238022DB05FA -:1010800092009A61002344E490231022DB059A61C8 -:1010900000233EE490232022DB059A61002338E4FC -:1010A00090238022DB059A61002332E49023802282 -:1010B000DB0592019A6100232BE490238022DB055B -:1010C000D2019A61002324E401226E4B9A6100232D -:1010D0001FE404226C4B9A6100231AE4902320221F -:1010E000DB059A61002314E402236370152A00D9FA -:1010F000B1E01000FFF726FA0B151EAF273039AF0D -:10110000434C545DAFAF677079828C969EA6902356 -:101110008022DB051B69D200134063800023FFF7A8 -:10112000F8FB90230122DB051B6913406380002339 -:10113000FFF7EFFB90230222DB051B69134063805E -:101140000023FFF7E6FB90230422DB051B69134015 -:1011500063800023FFF7DDFB90230822DB051B697A -:10116000134063800023FFF7D4FB90238022DB052C -:101170001B699201134063800023FFF7CAFB902391 -:101180004022DB051B69134063800023FFF7C1FB8E -:1011900002223C4B1B69134063800023FFF7B9FB1D -:1011A0009023DB051B69DB0BDB0363800023FFF768 -:1011B000B0FB90238022DB051B6992001340638003 -:1011C0000023FFF7A6FB90231022DB051B691340C9 -:1011D00063800023FFF79DFB90232022DB051B6922 -:1011E000134063800023FFF794FB90238022DB05EC -:1011F0001B69134063800023FFF78BFB9023802241 -:10120000DB051B699201134063800023FFF781FB1C -:1012100090238022DB051B69D201134063800023E9 -:10122000FFF777FB0122174B1B69134063800023F4 -:10123000FFF76FFB0422144B1B69134063800023EC -:10124000FFF767FB90232022DB051B6913406380B7 -:101250000023FFF75EFB002363708D33FFF759FB1C -:1012600080230A4ADB0251690B435361054B08494D -:101270001A680A401A60D968064A0A43DA600023ED -:10128000FFF747FB00040048000C00480010024034 -:10129000FFFFAAAA00005555C64BC7491A680A4065 -:1012A0001A60D968C54A0A43DA600023FFF731FBA8 -:1012B000C04AC14913680B4013600023FFF729FBA4 -:1012C000BC4ABE4B11680B4313600023FFF721FBA0 -:1012D000B84912024B69DBB21A434A610023FFF797 -:1012E00018FBB44B1B691B0AA37001236370002316 -:1012F000FFF70FFB8023B24A1B0351690B43536175 -:10130000B04AB14B11680B4313600023FFF701FB98 -:10131000AC4AAD4BD1680B43D3600023FFF7F9FA19 -:10132000A84AAA4913680B4013600023FFF7F1FA9B -:10133000A44AA54B11680B4313600023FFF7E9FA99 -:10134000A04B5A610023FFF7E4FAC0239C4ADB025A -:1013500051690B435361974A9D4B11680B431360CE -:101360009022A023D20511685B030B431360002376 -:10137000FFF7CFFA8F4A964BD1680B43D360902387 -:10138000A021DB05D86849030143D9601168914861 -:10139000014011601A6890490A401A600023FFF763 -:1013A000B8FAFF258348930041692B408B4DD2004A -:1013B00029400B4343619021C020C905C0004B69FF -:1013C0000240874803401A434A610023FFF7A1FA0D -:1013D0000023FFF79EFA8D23FFF79BFA8D23FFF77B -:1013E00098FA8D23FFF795FA8D23FFF792FA8D2354 -:1013F000FFF78FFAAB88AD78042D00D1C0E10DD88E -:10140000012D00D193E0002D00D184E0022D00D108 -:10141000EEE0032D00D16FE196257EE0092D00D18D -:1014200044E120D8052D00D14AE1072DF4D101F087 -:1014300005FD90230121DB051A6840200A431A604C -:101440001022996119680A431A6004229A61196886 -:10145000014319600821996119680A431A60022240 -:101460009A619861DAE00A2D00D114E1802DD3D180 -:101470009023012540218026DB05657099621A685A -:10148000760132431A60C04656481C691A680C40FF -:1014900002401A60DA680240DA60F022002C37D18C -:1014A0001A6802401A60DA683243DA601A699446B0 -:1014B0001A690192C0461A690292C046C0461A696A -:1014C0000392C046C046C0461F69C046C046C046DB -:1014D000C0461E691A6802401A60DA681040D86077 -:1014E000634622000B4213D1019B2A000B420FD10D -:1014F000029B02320B420BD10B00039903321942BB -:1015000006D104321F4203D1D6321E4200D0D13A56 -:10151000354B9A70C8E001F091FC334C2570334B89 -:101520000098A2B2240C5A819C8105B0F0BD01F054 -:1015300085FC9023DB051A682A431A6080229D618E -:10154000196852030A431A6080220421D2009A6269 -:101550001A680A431A6002229A6118680E3202431E -:101560001A604022996119680A431A6008229A6138 -:1015700080231349DB024A690F4D13430D4A4B6127 -:1015800013682B401360D4680C4B1C43D460106864 -:1015900028401060D06800250343D36080234A6947 -:1015A0001B0313434B61074B074A19680A431A6030 -:1015B0005D61B2E700040048FFFFAAAA000055558C -:1015C000001002400008004855555555AAAAAAAA7D -:1015D00050550000AFAAFFFFFFFFEBFF03FF000025 -:1015E000FFF90000FFEFFFFFF4060020006000405D -:1015F00001F024FC90230121DB051A680A431A60DC -:101600001022996119680A431A60042240219A61E4 -:101610001A680A431A6008229A619961802219683F -:1016200052010A431A608022BB48D2024169BB4E74 -:101630000A43BB4942610A6832400A60CD68B94A30 -:101640001543CD600C6834400C60CC682243CA60FE -:1016500080224469120322434261B34AB34C1568A5 -:101660002C43002514605561C0224469D2022243F4 -:1016700042610868AE4A02430A60A0221868520319 -:1016800002431A604A69AB4802404A615A69AA4952 -:101690000A405A6141E790238022DB051968D20194 -:1016A0000A431A6080229A61002536E7902380223F -:1016B000DB051968D2010A431A6080229A62F3E7B7 -:1016C00001F0BCFB90230121DB051A680A431A6074 -:1016D0001022996119680A431A60042240219A6114 -:1016E0001A680A431A6008229A6180221868520117 -:1016F00002431A6099613BE7DBB2022B21D000253F -:10170000032B00D109E79735012B00D005E7802294 -:10171000002581491203486902434A61824A1168DF -:1017200099431160D1681943D160516819435160E0 -:10173000936111680B431360804B1D70804B1A60DE -:10174000EBE6B023744A5B03516940200B435361BD -:101750009022D20513687B490B4013608023D16827 -:101760005B011943D1605168014351609061116878 -:101770000B4308211360714B1970714B1A6093E78A -:10178000DBB29825012B00D0C7E690226E4BD20524 -:101790001A6006220A216D4B1A70614B6C4A136065 -:1017A0006C4A11706C4A013113606C4A11706C4ABA -:1017B00013600C226B4B1A70B023574A5B035169BC -:1017C0000B43536101F06EFA6EE7E978A888AD78B3 -:1017D0000D2D00D194E023D8062D55D00FD8022D21 -:1017E00059D005D8002D4CD0012D51D0A02595E61B -:1017F000042D73D0052DF9D100F0B8FE46E0092D77 -:1018000075D007D8072D00D180E0082DEED100F06B -:1018100035FF3BE00B2D76D06CD900F0A9FF35E009 -:10182000222D3BD011D8102D73D006D80E2D64D0A8 -:101830000F2DDBD101F034FC28E0202D51D053D8FE -:10184000112DD3D100F0D6FF20E0822D00D1BBE0D6 -:101850000AD8802D00D18BE0812DC7D10123637080 -:1018600001F040F8A07011E0852D00D1B1E0862D87 -:1018700000D1B3E0842DB9D10123637000F09EFE46 -:10188000F0E701F0C5F849E601F09EF8002545E6CD -:1018900000F0B0FEFAE700F035FFF7E7224B022236 -:1018A000586190231E4DDB059A622E681D4A09027D -:1018B00032432A606A6900B2D2B2114369610028DA -:1018C00001DA01229A62C046C04601229A6192184A -:1018D0009A612B68114A13402B60D7E701F0CEFBC9 -:1018E000D4E7214B1870D1E7204B1880CEE701F0E8 -:1018F000EDF8CBE700F0E4FEC8E701F001FCC5E736 -:1019000001F0B2F8C2E700F0AFFFBFE701F034F832 -:10191000BCE701F007F8B9E700100240FFFFAAAAF0 -:10192000000400480000555500080048555555551D -:101930005055000003FF0000FFF9000000070020E1 -:10194000FC060020FFEFFFFF14070020180700200F -:101950000C070020100700201C0700202007002093 -:101960000407002008070020880400203604002017 -:10197000012190236170DB051D68C84E35401D6054 -:10198000DA6802253240DA608022D2009A629961D8 -:101990009D61C34D6861C046C04600B29A6100288F -:1019A00000DA9962C046C046C046C046C046C0463E -:1019B00090228021BB4BD205C9001B699162012195 -:1019C0001B0A9161A37061E70123637000F03AFE86 -:1019D00048E701236370B44B1B78F3E7022363707D -:1019E000B24B1B88A3701B0AE3704FE7A878E97815 -:1019F000AE88AA23062801D9FEF78BFFFEF7A2FDC9 -:101A0000042A1B2226322000FF20A649B3004A697F -:101A10000340A748F600024013434B619022C021C7 -:101A2000D205C90053690E40A2490B401E435661BE -:101A30000023FEF76EFF0022300000F029FCF7E7DC -:101A40000122F9E7300000F069FDF1E7300000F015 -:101A50003DFDEDE7012300216370300000F048FCFC -:101A6000A070E5E701216170F7E7AA78AB88002A4A -:101A700029D0012A44D18A48E9784361C020C001B5 -:101A80001B188D489BB2834202D89023DB059A62D3 -:101A9000844B8A4A1868090202431A605A69D2B212 -:101AA0000A435A6190220821D2059162C046C0467D -:101AB000C0469161073991611A6881490A401A60EC -:101AC0000023FEF726FF0121754A617053619022C1 -:101AD0000420D2059062C020C0011B1876489BB23A -:101AE000834200D89162C046C046C046C04601212C -:101AF0006C4B1B6991611B0A03319161A370DFE795 -:101B0000AF23FEF706FFAA78002A07D00023012A98 -:101B100001D1FEF7FEFEB033FEF7FBFE012363703A -:101B2000A933A3701300FEF7F4FEAA78002A07D0A9 -:101B30000023012A01D1FEF7ECFEB133FEF7E9FEE6 -:101B400001236370A933A3701300FEF7E2FEAA78A5 -:101B5000002A07D00023012A01D1FEF7DAFEB233B2 -:101B6000FEF7D7FE01236370A933A3701300FEF7BD -:101B7000D0FEEA78A988AD78112D7BD007D8012D49 -:101B80004ED0002D0DD0022D5CD0822646E0212DB6 -:101B900066D0222D6AD0122DF7D102231020637057 -:101BA0006BE00127474B04261B7810209F40FA4327 -:101BB000454B01921D68AF626B6813406B6000F08B -:101BC0005CFBAF616B683B436B60FA20400000F048 -:101BD00054FBFA20AF626B68019A400013406B60BF -:101BE00000F04BFBAF616B68013E3B43B6B26B60EC -:101BF000002EEAD10436FA2000F03FFBAF626B689A -:101C0000019AFA2013406B6000F037FBAF616B68FC -:101C1000013E3B43B6B26B60002EECD126707EE4F1 -:101C2000284A294B12781E689540B56273681020C7 -:101C3000AB43736000F021FBB56173682B437360A5 -:101C40000026EBE701231F4A637012781F49934077 -:101C50001D4A9BB21268002002F0EAF8A070EFE77C -:101C600001230020637001F073FAF7E701231020CD -:101C70006370F8E702230020637001F0C3FA60800C -:101C8000DEE7AB78AA88042B37D021D8022B39D0D5 -:101C90003ED8012B2CD08723FEF73BFEFFEFFFFF42 -:101CA0000008004800040048880400203604002092 -:101CB00003FF0000FFF90000FF1F00000000555562 -:101CC000FFFFAAAA00070020FC0600200400020073 -:101CD000072B26D003D8052BDDD1BE4B16E0082BF1 -:101CE00024D0802BD7D100F0DDFF0023FEF711FEBA -:101CF000B94A1278A2706370F7E7B84B1B78A370EB -:101D00000123F8E7B44B1A708322B44B1A70ECE746 -:101D1000B14BB24D1A7083232B7001F033F82B783E -:101D2000EDE7AF4B1A70120A5A70DEE7AC4B1A7827 -:101D3000A2705A78E2709A782271DA7862711A7910 -:101D4000A2715B79E3710623D5E7A878E9780238B8 -:101D5000AA888A23092801D9FEF7DBFDFEF7F2FBEA -:101D6000050A10151C232F3B40489E4B1A80002368 -:101D7000FEF7CFFD9B4B1B881B0413439847F6E7E8 -:101D8000FEF7F6FC0300FEF7C4FD9748036899B21E -:101D900013040B430360EAE793490B681B0C1B0415 -:101DA00013430B60E3E7042363708F4B1B681A0A2D -:101DB000A370E2701A0C1B0E22716371D7E7022325 -:101DC00063705300884A1168CB181A88A2701B8868 -:101DD0001B0AE370CBE7844B49001B68CA52C6E775 -:101DE000814953000A68D31802220B606270ECE745 -:101DF0007D4B49001868411819600A80B7E78823AD -:101E0000FEF787FDAA781300303B2F2B1AD8E8780D -:101E1000032814D8FEF796FB16180211734B512AAB -:101E200000D17DE028D8312A57D00FD8002A37D0EA -:101E3000302A4BD0B423FEF76CFD6D4BEFE7B52392 -:101E4000FEF767FD6B4BEAE76B4BE8E7332A52D0AE -:101E50004AD3502AEED1C022D20022801A7AA27030 -:101E6000DA78E2705A7A22719A7A62719A78A2715B -:101E70005B7CE371FFF753FB7F2A00D984E0702A73 -:101E80005DD2602A3CD0612A43D0522AD2D180222E -:101E90001B889200A3701B0A2280E370FFF73FFBB0 -:101EA000FF21564BD1540132102AFBD10123514A54 -:101EB0005B425380504A53804C4A53804C4A538073 -:101EC00001224F4B1A700023FEF723FDAA88110A46 -:101ED000D9721A730023FEF71CFDAA88110A5973E0 -:101EE0009A730023FEF715FDAA88110AD9731A7494 -:101EF0000023FEF70EFDAA885A740023FEF709FDA1 -:101F000080235B002380AB883C4AD35CA370FFF73F -:101F100006FB80235B0023803A4B1B68DB78F5E7E8 -:101F2000C022D2002280DA7AA2701A7BE2705A7B39 -:101F300022719A7B6271DA7BA2711B7C99E72D4B2F -:101F400028785C682F4B1968CB787F2800D9B6E0D9 -:101F50002D48009E0670002B0FD000200090982B7B -:101F600000D1B2E004E000200090D02B00D1ACE022 -:101F7000234B10301870FF2304E0244B196090238A -:101F8000CB706F330093A0E00720104003281AD8CD -:101F9000FEF7D8FA1C1E0217144B802A01D2FFF755 -:101FA000BEFA872A34D97032D2B2072A01D9FFF794 -:101FB000B6FA00222270EA789A72AA881A80FFF78D -:101FC000AEFA0B4BE9E7B523FEF7A3FC094BE4E7B8 -:101FD000094BE2E7D9040020B8040020DA0400200D -:101FE000B9040020340400203004002060040020E4 -:101FF00074040020380400204C040020DB0400207E -:10200000980400208C0400209404002090040020F8 -:10201000A888E978C6B28D19BE22102D2CDC0432B6 -:10202000002929D0DD78033AFF2D25D19D78013292 -:10203000FF2D21D10022D7B2B94220D82F4D002246 -:10204000AC464F01013F1F727701000A6744987048 -:10205000DA705A729A721A80DA721A735A739A7311 -:10206000DA731A745A745F60254B9D19A8540132B3 -:10207000D3B29942FAD800222270FFF750FA013207 -:10208000B7181F4D013FEF5DFF2FD4D0C122F3E7FA -:10209000AB78002B04D0402B08D0D223FEF739FCBC -:1020A0002370AA88174B1A70FFF739FA80235B0058 -:1020B0002380144B1B7829E78023FEF72AFCD82BBA -:1020C00000D050E780234C68CB7000234B72CB7854 -:1020D000902B01D0FFF723FA712A01D0FFF71FFAE6 -:1020E000094BAA881B6859680A70AA885968120A9D -:1020F0004A705A7A02325A72FFF711FAEC04002041 -:10210000DB0400209804002090040020F0B51C4D52 -:10211000040005A8067868690902C0B2084368612E -:1021200090200421C00581622900002A01D10132DA -:102130008262FF2500204A692D022A401A43114F6E -:102140004A61C046C046C046C046C046C046C046BA -:10215000C046C046C0463A690133120A22544A6951 -:10216000DBB22A4001301A43C0B24A61B042E8D91A -:1021700090230422DB059A61033A9A61F0BDC046C0 -:102180000008004800040048F0B5184C05006069DC -:102190000E02C0B23043606180269020F600C00578 -:1021A00049B28661002901DA01218162FF26616955 -:1021B0003602314011436161C04600200C4FC046D9 -:1021C00039690132090A29546169D2B231400130BA -:1021D0001143C0B261619842F1D990238022DB059E -:1021E000D2009A6201229A61F0BDC0460008004800 -:1021F00000040048F0B5174C05000E0060691F2967 -:1022000025D8802131430902C0B201436161902188 -:102210000420FF26C90588626169360231401143F6 -:102220006161C04600200C4FC04639690132090A7D -:1022300029546169D2B2314001301143C0B26161A9 -:102240009842F1D990230422DB059A61F0BDC0B217 -:102250000902DAE7000800480004004800230200F1 -:102260000002002A04D1002B01D0802318437047BC -:10227000DB43511EDBB20A40F3E70023800080B24B -:10228000C046C04601339BB29842F9D17047FFFF68 -:10229000134B10B55861134B13481C6809022043B7 -:1022A00018605869C0B20143596190210820C905DE -:1022B0008862002A01D101328A62C046C046C04607 -:1022C000C046C046C046C046C04690220821D2053E -:1022D0009161073991611A6804490A401A6010BD7A -:1022E000000800480004004800005555FFFFAAAA56 -:1022F0000F4B58619023DB05002901D101229A621E -:1023000004229A62C046C046C046C046C046C04687 -:10231000C046C046C046C046C046C046C046054945 -:1023200008699A61000A033AC0B29A617047C046D0 -:102330000008004800040048F7B504000E004D7A7C -:10234000C046C046C046C046C046C046C046C0465D -:10235000C0460022AA215848FFF79AFF00225521C3 -:102360005648FFF795FF2402002220215248FFF72C -:102370008FFF23B20193EBB20093337AAB4216D2B4 -:102380008020009B0022737290210002FFF780FFE3 -:102390000022802011000002FFF77AFF8020002237 -:1023A000F0210002FFF774FFC0460020FEBD444B41 -:1023B000444A196808200A43FF211A605A690A40F2 -:1023C000A02109020A435A6190220121D20590629C -:1023D0009162C046C046C046C046FF2490619161EC -:1023E0001A6839492C400A401A60019B009A1C4324 -:1023F0007368A4B2995C20000022FFF749FFC04631 -:10240000C046C046C046C046C046C046C046C0469C -:10241000C04600212000FFF76BFF0700C046C04602 -:10242000C046C046C046C046C046C046C0467368A7 -:10243000009A9B5C834217D0C046C046C046C04647 -:10244000C046C046C046C046C04600212000FFF737 -:102450004FFFB8420BD1C046C046C046C046C0463A -:10246000C046C046C046C0460135ADB283E7C0464F -:10247000C046C046C046C046C046C046C046C0462C -:10248000C046C046C046C046C046C046C046C0461C -:10249000C046C046C046C046C046C046C046C0460C -:1024A000C046C046C046C046C04600212000FFF7D7 -:1024B0001FFF0700C9E7C046AA8A00005585000033 -:1024C0000004004800005555FFFFAAAA70B504009B -:1024D0000D000022AA210F48FFF7DAFE0022552145 -:1024E0000D48FFF7D5FE0022A0210A48FFF7D0FED5 -:1024F000002229002000FFF7CBFE00212000FFF77B -:10250000F7FE0500C04600212000FFF7F1FEA842BB -:10251000F3D170BDAA8A00005585000070B5040093 -:102520000D000022AA210F48FFF7B2FE002255211C -:102530000D48FFF7ADFE0022A0210A48FFF7A8FED4 -:10254000002229002000FFF7A3FE00212000FFF752 -:10255000CFFE0500C04600212000FFF7C9FEA842BB -:10256000F3D170BD55550000AA2A00000F4B30B5BD -:102570009022586180230124D205DB0093620C4B2A -:1025800094621D680B480902284318605869C0B25C -:1025900001435961C04608219162C04691611968A2 -:1025A000054801401960946130BDC04600080048EC -:1025B0000004004800005555FFFFAAAA0B4B10B5B8 -:1025C00080215861902301220424DB05C900996110 -:1025D0009A629C62C046C046C046054800699C613C -:1025E000000A9962C0B29A6110BDC0460008004856 -:1025F000000400480E4B984202D880231B02184367 -:102600000C4B0D4A58610D4B0902186802431A60C1 -:102610005A69D2B211435961C04690220821D205AD -:102620009162C04691611A6805490A401A60704774 -:10263000FF1F000000080048000055550004004836 -:10264000FFFFAAAA0A4B984202D880231B02184314 -:10265000084B042258619023DB059A62C046C046AD -:10266000C046C046044908699A61000AC0B2704772 -:10267000FF1F0000000800480004004870B5040077 -:102680000D000D48AA21FFF7B5FF55210B48FFF7B4 -:10269000B1FFA0210848FFF7ADFF29002000FFF798 -:1026A000A9FF2000FFF7CEFF0500C0462000FFF77E -:1026B000C9FFA842F5D170BD55150000AA1A000047 -:1026C00070B504000D000D48AA21FFF793FF5521B6 -:1026D0000B48FFF78FFFA0210848FFF78BFF290069 -:1026E0002000FFF787FF2000FFF7ACFF0500C04682 -:1026F0002000FFF7A7FFA842F5D170BD55150000D7 -:10270000AA0A00009023DB0530B51C68134D0902AE -:102710002C401C60DA68124C2A40DA60114A506181 -:1027200002229A62104A00B215682C431460546960 -:10273000E4B2214351618021C9009961002801DA86 -:1027400001209862C046C0469962012199614918EA -:102750009961136805490B40136030BDFFEFFFFF1F -:10276000000055550008004800040048FFFFAAAAD1 -:10277000F7B51C4B07001D781B4B01911C882021CD -:1027800026002036B6B23000FFF7BCFFAA2117485A -:10279000FFF730FF2000103080B21021FFF7B2FFAA -:1027A0002D0155211248FFF725FFEDB22021300001 -:1027B000FFF7A8FF6419A0210C48FFF71BFFA0B288 -:1027C0002900FFF79FFF01993800FFF713FF38003A -:1027D000FFF738FF0400C0463800FFF733FFA04280 -:1027E000F5D1F7BD880400203604002055150000FF -:1027F000AA0A000070B50400B0200E0000020A21F1 -:10280000FFF780FFC0200A210002FFF77BFFAA210B -:102810001248FFF7EFFE55211148FFF7EBFEA0210C -:102820000E48FFF7E7FEB0200E4B00021D7829008E -:10283000FFF768FFC02029000002FFF763FF3100A7 -:102840002000FFF7D7FE2000FFF7FCFE0500C04682 -:102850002000FFF7F7FEA842F5D170BD5515000026 -:10286000AA0A000088040020F8B505000E00194BE4 -:1028700002211C88A71CBFB23800FFF743FFAA2122 -:102880001548FFF7B7FE601C80B20121FFF73AFF41 -:1028900055211248FFF7AEFE02213800FFF732FF44 -:1028A000A0210D48FFF7A6FE0D4B19786418A0B2C1 -:1028B000FFF728FF31002800FFF79CFE2800FFF7F4 -:1028C000C1FE0400C0462800FFF7BCFEA042F5D1BF -:1028D000F8BDC0463604002055150000AA0A0000C5 -:1028E000880400200D4B802258619023D200DB0524 -:1028F00000B29A61002801DA01229A62C046C046FD -:10290000C046C046064B802218699023D200DB05E2 -:102910009A620122000AC0B29A617047000800481A -:102920000004004870B504000D001048AA21FFF70C -:10293000E9FE55210E48FFF7E5FEA0210B48FFF701 -:10294000E1FE29002000FFF7DDFEA020094B000278 -:102950001978FFF7D7FE2000FFF7C4FF0500C04637 -:102960002000FFF7BFFFA842F5D170BDAAFA000012 -:1029700055F500008804002070B504000D001048D3 -:10298000AA21FFF7BFFE55210E48FFF7BBFEA0218D -:102990000B48FFF7B7FE29002000FFF7B3FE8020A9 -:1029A00000210002FFF7AEFE2000FFF79BFF0500AD -:1029B000C0462000FFF796FFA842F5D170BDC04683 -:1029C00055D50000AAAA00000D4B0E4A58610E4BC7 -:1029D0000902186802431A605A69D2B21143902260 -:1029E00059618021D20510684901014311604021DD -:1029F000916291611A6805490A401A607047C046A1 -:102A0000000800480000555500040048FFFFAAAA2E -:102A1000104B114A10B558611068104B090203435E -:102A2000136053690E4CDBB219439023516180212E -:102A3000DB0518684901084318604020986218684F -:102A400020401860D8680143D960136805490B40DD -:102A5000136010BD000800480004004800005555F0 -:102A6000FFEFFFFFFFFFAAAA70B505000E00134B92 -:102A700000211C882000FFF745FEAA211048FFF71F -:102A8000C7FF55210F48FFF7C3FFA0210C48FFF7F0 -:102A9000BFFF0D4B19786418A0B2FFF733FE310069 -:102AA0002800FFF7B5FF2800FFF71CFF0400C04611 -:102AB0002800FFF717FFA042F5D170BD36040020B3 -:102AC00055550000AA2A00008804002070B50400B3 -:102AD0000D000D48AA21FFF79BFF55210B48FFF77A -:102AE00097FFA0210848FFF793FF29002000FFF778 -:102AF0008FFF2000FFF7F6FE05002000FFF7F2FE33 -:102B0000A842F6D170BDC04655550000AA2A000063 -:102B1000F0B58BB00992012208911100354B02905B -:102B20001F78354B1B780493344B1D68344B1B784E -:102B30009940344B01911868334BA9621B789A4035 -:102B4000029B102B4FD18262012421002F4B059450 -:102B50001B6806932E4B1B7899408BB2210007937C -:102B60002C4B1B689C462C4B1B78994000230391EF -:102B70001900029C202C05D1049E059C1E41264272 -:102B800036D08261089C202C0FD1002B01D11A4C29 -:102B90006354069C2669079C264206D0164C665C48 -:102BA000059C9C402643144C6654099C013FFFB28F -:102BB000002C03D0002F01D1019CAC616446039E20 -:102BC0000133DBB2A661A662082B05D101310A4BA5 -:102BD000C9B25B5C04930023002FCAD1019B8262BF -:102BE000AB620BB0F0BD029B112BADD18261ABE7A4 -:102BF0008262C7E7D9040020B90400201C07002026 -:102C0000200700200C0700201007002014070020D8 -:102C1000180700200407002008070020F7B501224C -:102C20001A4B1C781A4B19681A4B1B789A401028BB -:102C300026D18A6201263500174B01961B68009346 -:102C4000164B1B789D400023AC461D0020280DD15B -:102C5000134E019F765D1E413E4215D08A610133BD -:102C6000DBB2082B02D100230135EDB26646009F8E -:102C7000013CE4B2BE61BE62002CE7D18A62F7BDBE -:102C80001128D7D18A61D5E78A62E8E7D904002004 -:102C90001C07002020070020040700200807002050 -:102CA000B9040020F0B52C4B85B01B7801930123AB -:102CB0001E00019A1F009640284A1168284A8E6219 -:102CC000127802921A000298824094466046254A81 -:102CD00012689062244805782448AF4000689D40FF -:102CE0008762046803941C00AC402500039C2543C4 -:102CF00005604568019CBD4345609C401D00A540A2 -:102D000008681C00284308604868B04348601068A1 -:102D1000029999408C40210001436046116051683E -:102D20008143134851600078124A984083401268EA -:102D3000116899431160D1680B43D36080220E4B18 -:102D40001A70002319000D4A13700D4A995401336B -:102D5000202BFBD105B0F0BD200700201C07002070 -:102D6000100700200C07002008070020040700209F -:102D70001807002014070020DA040020D9040020DE -:102D8000B904002010B52B4B1B78082B4ED013D85C -:102D9000294C032B39D006D8012B28D0022B2AD05E -:102DA000254BEE223AE0062B3AD03DD8042BF7D142 -:102DB00001222021112021E00F2B28D008D81E4C01 -:102DC0000D2B1FD000220E2BEAD12021102015E060 -:102DD000802B06D0184CFF2B06D0102BE0D1002200 -:102DE0001FE0FFF75FFF10BDF0232370FBE72020FB -:102DF000FFF714FF04E0012200212020FFF788FEE6 -:102E00008223F2E700221100F7E70122DDE700222A -:102E100020211120FFF77CFE8222074B1A70E2E787 -:102E2000012220210800E9E71020E1E71120FFF747 -:102E3000F5FEF1E7B8040020DA040020BC2348497D -:102E4000DB038A6AF0B513438B628B6A454A4648B6 -:102E500013408B62B0234A695B0313434B61902399 -:102E6000DB051A68012402401A608022D868D2016A -:102E70000243DA601A683D483D4F02401A608022E2 -:102E8000D868520302430420DA601A68A2431A6029 -:102E9000DA682243DA601A6882431A60DA68024309 -:102EA000DA6010221D6895431D60DD682A43DA60F0 -:102EB00040221D6895431D60DD682A43DA601A6868 -:102EC0002C4D2A401A608022DD68D2042A43DA6041 -:102ED0001A68294D2A401A608022DD68D2052A43EB -:102EE000DA601A68254D2A4080251A60DA68ED02FA -:102EF0002A43DA60224A1668A6431660D66834432D -:102F0000D4601E683E401E60DC683C40DC6080236C -:102F10004C691B0323434B611A4B1B4C1E681B4F10 -:102F200026431E601E683E401E60DE683443DC603F -:102F30004B691D434D611368154D2B401360D468D8 -:102F4000144B1C43D460116829401160D1680B43B5 -:102F5000D360136883431360D3681843D060F0BD17 -:102F600000100240FFFFA1FFFFBFFFFFFFFFEFFFC9 -:102F7000FFEFFFFFFFFFFFFBFFFFFFBFFFFFFBFFB9 -:102F8000000400480008004855555555AAAAAAAAA9 -:102F9000FFFFAAAA00005555F7B50D0004270192BE -:102FA0004C7A000203B2A6B200932B7AB34202D24B -:102FB0006C720020FEBD00986B682043195D80B2E2 -:102FC000019B98476B681A5D094B824205D01A68CD -:102FD0003A431A6002229A61E7E71A680134BA4359 -:102FE0001A60DA6801363A43DA60E4B2B6B2DCE776 -:102FF00000040048F7B50D001600FF27000203B2D9 -:103000004C7A01932A7AE3B2A24202D26B72002078 -:10301000FEBD20006A683840D15C019B0134184332 -:1030200080B2B047A4B2EDE7022907D10F4B104A96 -:10303000984218D0904209D1180007E0032906D120 -:103040000A4B0B490B4A98420BD1080070470429E0 -:10305000FCD1064B064A984205D006499042F4D06E -:10306000054A8842E6D11000F0E7C0463804002047 -:103070004C040020600400207404002070B5060099 -:103080000D0005243000013CFFF72CFCE4B22900C0 -:103090003000FFF737FB6D08002CF3D170BDFFFF48 -:1030A00070B50400A0200D0000020221FFF7E6FF2A -:1030B000AA211048FFF79EFA55210F48FFF79AFA08 -:1030C000A0210C48FFF796FAA0200C4B00021978BB -:1030D000FFF7D4FF29002000FFF78CFA2000FFF74C -:1030E000B1FA0500C0462000FFF7ACFAA842F5D1BE -:1030F00070BDC04655150000AA0A000088040020D3 -:1031000070B50400C0200D0000020521FFF7B6FFD6 -:10311000AA210D48FFF7F6FA55210C48FFF7F2FAFD -:10312000A0210948FFF7EEFA29002000FFF7EAFA8C -:103130002000FFF7D7FB0500C0462000FFF7D2FBB9 -:10314000A842F5D170BDC04655550000AAAA00009E -:10315000F7B501230225294F01923A7800910543E2 -:1031600093400421A020264E2D049BB229433268AF -:10317000C00100F05DFE040001283DD13B7809202C -:103180009C4005437830A3B232682900FF3000F03C -:103190004FFE040001282FD13B7832689C40290063 -:1031A000A3B2002000F044FE0400012824D1009BBB -:1031B000180AFFF753F83B7832689C402900A3B205 -:1031C00000F036FE0400012816D16B461878FFF790 -:1031D00045F822003B7829009A4093B2326800F00B -:1031E00027FE0198FFF73AF83B7832689C402900A7 -:1031F000A3B200F01DFE0400E0B2FEBD00070020F7 -:10320000FC060020F7B501230225274F00903A78ED -:103210000191054393400421C020244E2D049BB20C -:1032200029433268800100F003FE0400012838D1F0 -:1032300009231D433B78C0209C403268A3B229007B -:10324000400000F0F5FD040001282AD13B783268E7 -:103250009C402900A3B2002000F0EAFD04000128F0 -:103260001FD1019B180AFEF7F9FF3B7832689C409A -:103270002900A3B200F0DCFD0400012811D16B4647 -:103280001879FEF7EBFF22003B789A4093B2009A40 -:1032900014430922E1B209041143326800F0C8FD69 -:1032A0000400A0B2FEBDC04600070020FC060020BE -:1032B000C04BC14AF0B51A60C04A8BB01A600222F6 -:1032C0005A60A02212019A600493049BDB68002BD1 -:1032D000FBD19022049BBA4912031960B94B1868BC -:1032E00002431A6080220991920219681142FCD0AF -:1032F000012259680A435A608022596852020A43DF -:103300005A608022596852030A435A608022196821 -:1033100052040A431A608022920419681142FCD0B8 -:103320001121A94AA94C11605A680E398A4311002B -:1033300002220A435A608022196B0A431A638022D0 -:10334000D96912040A43DA61A14BE381BC231B68EB -:103350009847A04B6382A04B238262B6FFF76EFDB5 -:10336000F0229E4B1A70049B099A9D4E1A60327887 -:10337000202311009943D2291BD19A499A48C97830 -:10338000C3780224FF2904D1FF3B1C00631E9C412B -:10339000E4B2964BDB78FF2B00D00324944BDB7810 -:1033A000FF2B00D00424934B934F1C703860D22A1B -:1033B0004CD03378F22B05D10022023B33708E4B78 -:1033C0001B68DA703578D02D00D08DE18A4E3068D8 -:1033D000C378802B00D087E1864B1978FFF724FE55 -:1033E00000233060C570068804004372C07AF5B2CD -:1033F0001038162800D975E1FDF7BEF8A4000401C5 -:103400004401480174017401740174017401740170 -:103410007401740174017401740174012B0038008B -:1034200046004B004E0058005F002100FFF7FCFDF6 -:1034300001230135EDB2A542F7D3002B00D038604F -:1034400080223B68DA70D0233370B2E70023012575 -:10345000F1E7E17B0F2900D967E109013143237AC4 -:10346000A278C9B26068FEF78FFE0BE03C23E17BD7 -:103470000A009A4300D058E1237AA2782943606871 -:10348000FEF7B8FE607254E0237AA278E17B29430C -:10349000E8E7E17B3F23EBE7227AE17BA378009228 -:1034A000002229436068FEF731FEEBE7E17B227AD8 -:1034B000A378294300920122F4E7504BE17B58693D -:1034C00029430E02C0B230436568A278277A58615A -:1034D000902004266031C005C9B286621E001F29F3 -:1034E00001D801218162FF20596900020140114386 -:1034F0005961C046424900238C46C046C046C0467A -:10350000C046C046C046C046614609690132090A44 -:10351000E9547169D2B2014001331143DBB27161E8 -:103520009F42EAD290220421D20591610339916130 -:103530006372314B1B6819889A7A52181A80D82204 -:10354000DA70D1E0E37B1E2B0BD1C020B609223309 -:10355000F1B200029D43FFF7D5F8237AA2788021CB -:1035600095E71C2B0FD1A0208121C001FFF7CAF8DD -:103570008020F609F1B20002FFF7C4F8A020002174 -:10358000C001FFF7BFF88021E27B49421F2A05D026 -:103590000D43EDB2237AA278290063E77022A020C0 -:1035A00095430D432188C0010909C9B2EDB2FFF767 -:1035B000A9F8EFE700300040CCCC000055550000E2 -:1035C000AAAA000000100240002002400060004053 -:1035D0003CA5FFFF4108000885080008DA04002028 -:1035E000980400204C0400203804002060040020CF -:1035F00074040020950400208C040020000800487A -:1036000000040048E37BFE2B93D17609F1B2C34856 -:10361000FEF7F0FF1F21C24B29405A690902D2B2BE -:103620000A43A0786768267A80215A619022C900EF -:10363000D20591610121FF259162033191625A699E -:103640002D022A4002435A61C046B64900228C46E8 -:10365000C046614609690130090AB9545969C0B2C6 -:10366000294001320143D2B259619642F0D29023EF -:103670000421DB0599618021C900996201219961CA -:10368000627256E7237AA278602100E7E37B002B81 -:1036900020D18033F6091D43F3B20293FF20029B31 -:1036A000A0499B004A6903409F48024013434B6175 -:1036B000C0209021029BC905C000DB004A6903407D -:1036C0009A48024013434B61227AA3782900009262 -:1036D0000022E7E6012BE1D140217604760E31434A -:1036E0000291DBE7C323E370914B1D78F02D00D0EE -:1036F00082E3904E3468E378982B00D07CE38E4BC5 -:1037000020001978FFF790FC00233060C370E07A46 -:10371000E57010382678042800D96BE3FCF72CFFFD -:1037200007004D02FE020603F700C423DBE7E37B3C -:10373000002B06D130008038C0B2804A2100FFF74C -:103740002BFCE37B012B06D130008038C0B27C4AD1 -:103750002100FFF74FFCE37B032B06D130008038BC -:10376000C0B2784A2100FFF745FCE37B042B06D169 -:1037700030008038C0B2744A2100FFF70DFCE37BB3 -:103780000A2B06D130008038C0B2704A2100FFF702 -:1037900031FCE37BFD2B15D13F20238830409B0972 -:1037A00005936B4680261B7D06430793677ABBB261 -:1037B000039333021BB20893237A039A934200D3F4 -:1037C000CCE06772E37B1E2B13D13F203040802674 -:1037D000238806439B09DBB20693677ABBB2039347 -:1037E00033021BB20793237A039A934200D3FDE07E -:1037F0006772E37B0C2B17D11F20304080260643D5 -:10380000C0202588A5216D09EDB2C001FEF77AFF21 -:1038100029004F48FEF776FF677A35023D43237A49 -:10382000BB4200D332E16772E37B1C2B3BD1A0206B -:1038300023888121DB09DBB2C0010593FEF762FF1B -:10384000802005990002FEF75DFFA0205421C001F1 -:10385000FEF758FF677AAA21BBB23E480393FEF7F2 -:1038600051FF55213C48FEF74DFF20213948FEF716 -:1038700049FF802333431B021BB20793237A039A29 -:10388000934200D31FE18020902100026772FEF76F -:1038900039FF802000210002FEF734FF8020F02154 -:1038A0000002FEF72FFFE37B1F2B30D1A0202188E1 -:1038B000C0010909C9B2FEF725FFAA212548657A8A -:1038C000FEF720FF55212448FEF71CFF2148202148 -:1038D000FEF718FF702380209E434042304340B2E1 -:1038E0000302AFB20593237ABB4200D333E18020B9 -:1038F000902100026572FEF705FF80200021000282 -:10390000FEF700FF8020F0210002FEF7FBFEF4230B -:103910002288E370A37A9B1823806DE2FF3F0000AA -:10392000000800480004004803FF0000FFF9000001 -:10393000980400208C04002095040020CD2A000863 -:1039400001310008692A00087929000825290008A2 -:10395000FFFF0000AA8A0000558500000021DE4814 -:10396000FEF7D0FEAA21DD48FFF72EF85521DC48EE -:10397000FFF72AF8A021D948FFF726F86B46187DF3 -:10398000D84B0799C01880B2FEF7BCFE089D63684B -:103990003D43ADB2D95D2800FFF716F8C0462800B8 -:1039A000FEF7A0FF06902800FEF79CFF069B8342CF -:1039B000F4D163680699DA5DCB4B8A420FD1039A42 -:1039C0001968013292B20392042291431960D968B6 -:1039D00001370A43DA600222FFB29A62ECE604225F -:1039E00019680A431A6002229A61E5E6C0200121A3 -:1039F0000002FEF787FEAA21BC48FEF783FEC02026 -:103A000000210002FEF77EFE5521B948FEF77AFE3E -:103A1000C02001210002FEF775FEA021B348FEF789 -:103A200071FEC02006990002FEF76CFE079D6368D8 -:103A30003D43ADB2D95D2800FEF764FEC0462800C4 -:103A4000FEF750FF05902800FEF74CFF059B8342D0 -:103A5000F4D163680599DA5DA34B8A420FD1039ACA -:103A60001968013292B20392042291431960D96815 -:103A700001370A43DA600222FFB29A62B3E60422F7 -:103A800019680A431A6002229A61ACE6AA21994891 -:103A9000FEF738FE55219648FEF734FEA0219548E2 -:103AA000FEF730FE63682800D95DFEF72BFEC046A6 -:103AB0002800FEF717FF03902800FEF713FF039B73 -:103AC0008342F4D1ABE6A0205421C001FEF71AFED8 -:103AD000079DA0213D43ADB22800FEF713FE6368A9 -:103AE0002800D95DFEF70EFEC0462800FEF7FAFE5C -:103AF00006902800FEF7F6FE069B8342F4D1636829 -:103B0000069ADB5D784D93420FD1039B2A680133FF -:103B10009BB2039304239A432A60EA680137134354 -:103B2000EB600223FFB2AB62A8E6A0208121C001B6 -:103B3000FEF7E8FD802005990002FEF7E3FDA020D6 -:103B40005421C001FEF7DEFD04232A6813432B60D5 -:103B50000223AB6192E6059EA0212E43B6B230004F -:103B6000FEF7D0FD63683000595DFEF7CBFDC0461F -:103B70003000FEF7B7FE03903000FEF7B3FE039B64 -:103B80008342F4D1636803995A5D574B8A420DD141 -:103B900004211A6801358A431A60DA6801370A433A -:103BA000DA600222EDB2BFB29A629CE604211A6882 -:103BB0000A431A6002229A6195E6E37B002B04D146 -:103BC0004D4A21003000FFF715FAE37B012B04D1A9 -:103BD0004A4A21003000FFF70DFAE37B022B04D1A3 -:103BE000474A21003000FFF705FAE37B042B04D19C -:103BF000444A21003000FFF7FDF9E37B0A2B04D192 -:103C0000414A21003000FFF7F5F9E37B0B2B04D18B -:103C10003E4A21003000FFF7EDF9E37BFE2B00D098 -:103C200075E621883A484909C9B2FEF7E3FCAA21A2 -:103C30003848657AFEF79AFC55213748FEF796FC1E -:103C400034482021FEF792FC1F2030400302AFB21F -:103C50000593237ABB420DD2657290210020FEF7B6 -:103C600085FC00210800FEF781FCF0210020FEF712 -:103C70007DFC4CE6059EA0212E433000FEF776FC2D -:103C800063683000595DFEF771FCC0463000FEF7F6 -:103C900095FC03903000FEF791FC039B8342F4D126 -:103CA000636803995A5D104B8A420DD104211A684A -:103CB00001358A431A60DA6801370A43DA60022262 -:103CC000EDB2BFB29A62C4E704211A680A431A60CF -:103CD00002229A61BDE7C04669FD0000555500000B -:103CE000AA2A000069FDFFFF000400485595000066 -:103CF000AAAA000055D50000C1260008A13000087E -:103D0000692800087D260008F527000871270008AB -:103D1000FF3F0000AA0A0000550500003000603097 -:103D20003C4A2100C0B2FFF765F9F0E5E37B042BC4 -:103D300006D130008038C0B2374A2100FFF75AF967 -:103D4000E37B052B04D1344A21003000FFF752F900 -:103D5000E37B062B06D130008038C0B22F4A210009 -:103D6000FFF748F9E37B072B04D12C4A21003000F0 -:103D7000FFF740F9E37B002B1CD1FF2280331E4369 -:103D800023882748DB09DBB29D0041692A40254D85 -:103D9000DB0029400A4342619022C020D205C000C6 -:103DA00051690340204801400B435361210030001A -:103DB000FEF7C2FAE37B012B00D0A8E52388184A5E -:103DC0005B04580E40230343FF209B0051690340CE -:103DD000144801400B4390215361C9054B69124AB5 -:103DE00030001A4080239B0013434B612100FEF7F3 -:103DF000A3FA8CE5C323E3700C4B1B78F02B01D1A5 -:103E0000FFF7B1FA832B01D0FFF7ADFAFEF7BAFF47 -:103E1000FFF7A9FA052700081D250008CD24000892 -:103E20000004004803FF0000FFF90000DA0400204E -:103E3000F0B5474680B4061C081C000C102801D5BC -:103E4000162700E004270007000F8046FF200140EE -:103E50005468251C1D439C43F60313850AD5C046B0 -:103E6000C046C046C046C046C046C0469480138384 -:103E7000958002E0012000F081F801390AD4381C55 -:103E800000F07CF8C046948013839580C046C046FD -:103E90007600E2E7381C013800F070F89480138354 -:103EA0009580042000F06AF8108A184001D0FF20A5 -:103EB00061E0C046C046C046C046C046C046948089 -:103EC0009580108A184055D001200226B04552D066 -:103ED0000921168A1E40FCD1012000F04FF8948081 -:103EE000C0469580C04603E0C046C046C046C046B6 -:103EF000948095807600108A1840EFF3008040008F -:103F0000C00F0643381C023800F038F894809580C2 -:103F1000022000F033F80139EAD51385948001209E -:103F200000F02CF813839580301C802102239940E7 -:103F30000E401BD1002341085E4149085E414908FB -:103F40005E4149085E4149085E4149085E414908B1 -:103F50005E4149085E4149085E41760808D3400841 -:103F6000FF21084048400002013004E00E2002E03A -:103F7000092000E0002080BCB846F0BD0138FDD12A -:103F80007047C04603685A0003D45B005B08C01842 -:103F90007047802212061343F9E7C046F0B5574632 -:103FA0004E46DE464546E0B5814683B0924600293E -:103FB00025D04B1E9B46002701935B46FB18DC0F68 -:103FC000E4184B466410E5005E193000FFF7DAFF95 -:103FD000019B8046A3420BD0280008304844FFF7DD -:103FE000D1FFD04506D80138504509D2671CE4E717 -:103FF000504505D9A74202D0631E9B46DDE7002647 -:10400000300003B03CBC90469946A246AB46F0BD9A -:10401000012809D0022805D0002801D000207047CF -:104020000248FCE70248FAE70248F8E705470008BB -:104030001D4700081147000830B5234B83B0050029 -:104040008C1E002B26D001A9200000E000BF002814 -:104050001CD001992200FFF7A1FF041E16D0FFF724 -:1040600091FF6368A864012B2AD0201D002B23DB5D -:10407000FFF788FF0023E8642B650368002B0FDB44 -:10408000FFF780FF2861002003B030BD0023092026 -:104090002B61F9E70D480E49091AC9100191D9E7BA -:1040A0001801000FFFF7B4FF2861431E9841082351 -:1040B000404298430930E7E70123E8642B65DCE7D9 -:1040C000002305202B61DFE70000000000500008FE -:1040D000D0500008036810B50400DA0705D4483052 -:1040E0009B070ED500F06CFC23685A070ED51A0703 -:1040F00013D5DB0604D42000D130FF3000F06CFC77 -:1041000010BD00F059FC23685A07F0D42000D030CD -:1041100000F05AFC23681A07EBD420005130FF301E -:1041200000F056FC2368E4E70368002B00D01B185E -:1041300018007047092070477047C04670B50400EA -:104140000D0008E02B6C2A00636121000120236927 -:104150009847082807D1296C2000FFF76DFF002839 -:10416000F0D000F083FE0728FBD10020296CFFF778 -:10417000E3FF281D00F00AFCF0B5CE46474680B5A7 -:10418000C3682E4C9846A544836906001400043188 -:10419000402205A8994600F071FE002304AD049367 -:1041A00023E0F0222B6C5200736129007CA800F000 -:1041B00065FE7CAA31003369200098478A9B07007E -:1041C0006B6403934B46009501933200330021004A -:1041D0000120C04700281FD1F0227CA952002800EE -:1041E00000F04CFE0024082F1FD1296C3000FFF78F -:1041F00023FF611E8C41070009340028D1D0AB6B2E -:1042000010216B644B46214301930095330032002B -:104210000120C047002800D009273800F5239B0063 -:104220009D440CBC90469946F0BD072FF4D1200068 -:10423000296CFFF781FF05A800F0A8FB2CFCFFFF0D -:10424000406C704770B5CB6BFAB00B6404000E0085 -:104250004022043103A800F011FE01235B420293C7 -:1042600006E002AA210023699847050008280AD120 -:10427000129B200019000193FFF7DEFE0028F0D00A -:1042800009207AB070BD02A8FFF724FF062DF7D1F0 -:1042900031002000FFF752FF10B58261DA6BC16078 -:1042A0001A6419000022FFF767FF10BD436970B55B -:1042B0000B64C36804000D00002B15D10A002369AC -:1042C000010002209847072807D0082803D12900B9 -:1042D0002000FFF733FF00F0C9FD0020296CFFF735 -:1042E0002BFF281D00F052FB0122FFF745FF00F0D5 -:1042F000BDFDC046C36810B5002B05D0CB6B0022B6 -:104300000B64FFF739FF10BDFFF79CFFFBE7C046CA -:104310007047C046836810B5002B02D00100012011 -:10432000984710BD012906D0002906D00339022084 -:10433000012900D970470120FCE7002B08D10F2A82 -:1043400006D8920082185268009B00201A60F1E79C -:104350000220EFE700B585B003AB0A00009300210F -:104360000023FFF7DFFF039805B000BD012906D049 -:10437000002906D003390220012900D97047012005 -:10438000FCE7002B08D10F2A06D8009B92001B687F -:10439000821853600020F1E70220EFE700B585B0F6 -:1043A00003AB039200930A0000230021FFF7DEFF16 -:1043B00005B000BD70B51A4CD36BA544136406005C -:1043C0000D0019A8111D402200F058FD01235B4289 -:1043D000189314E00C2118A802AAFFF7DFFF2900A8 -:1043E00018A8B047002812D1069B18AA02A90830C5 -:1043F00001939847040005280AD0092807D0289B74 -:1044000002A819000193FFF717FE0028E2D0092443 -:1044100018A8FFF75FFE200090239B009D4470BD0D -:10442000C0FDFFFFF0B5DE4657464E464546E0B5B7 -:10443000160003220D0011008BB01F000193EB6CDE -:1044400001401C1D009107A91B688B460894002F92 -:104450006BD01A0C1B045946079302230B72FD33D1 -:1044600013409B004A72E418009B022B00D1AC6BF6 -:104470002B6DDB0747D400230593083303400293D9 -:104480002768002F00D112E1019B022B49D06388DD -:10449000278898460434012340469A469843AB6CDB -:1044A0000F21994681443000FFF754FF00218145D8 -:1044B00006D83900534699434944884289414942C4 -:1044C00043465A0002231340012217403B43012B6D -:1044D0003AD0002B30D0022B1BD12368009A5F000A -:1044E0007F08002A67D1002906D0029A002A00D14D -:1044F0007CE0002F00D1A9E0002B00DA0434013762 -:10450000BF00E419BCE75946300000F00BFB00285F -:1045100010D009200BB03CBC90469946A246AB4651 -:10452000F0BD636808349846B5E71B0207935B4605 -:104530001A8199E70820EDE7009B002B02D00029A3 -:1045400000D08DE004349BE7009B002B1AD100299A -:1045500016D02368DF0F63689A1CDAD02A0058321D -:104560000692013300D1BDE0201DFFF7DDFD06AB53 -:1045700001003A00280000E000BF002800D082E0DF -:1045800008347DE70D2130002F6AFFF7E3FE8742F4 -:10459000F6D1AB6A9C42F3D12000FFF7F3FC0F2168 -:1045A00002003000FFF7FAFE30002A000021FFF77A -:1045B000F5FE0720AEE72B6A0D2130009846FFF785 -:1045C000C9FE804501D0236896E7AB6A9C42FAD1C8 -:1045D0000023EB6204332B63231DAF626B632368FC -:1045E000002B00DA86E00123059388E7002F2DD009 -:1045F00058239C46AC4463460393231D99460023ED -:10460000984606AB220004933B004C464746B24610 -:1046100098462E00914603E004342F00454542D0D1 -:10462000039B20000693FFF77FFD049B01000022FF -:1046300030007D1C00E000BF0028EDD04346B846A6 -:1046400035004C4656461F009845BCD10D21300020 -:10465000FFF780FE069B28626B62AC62062059E77A -:104660002000FFF78FFC04340700AC63280000E053 -:1046700000BF002800D14CE730003A000F21FFF7BF -:104680008DFE072046E707000D213000FFF762FE90 -:104690002862022F2BD1069BEB622B002C336B621E -:1046A000AC62062036E735004C465646CEE7594602 -:1046B000300000F037FA002800D02AE7059B002BD5 -:1046C00000D137E70F213000FFF744FE0E21020032 -:1046D0003000FFF763FE3000094A0F21FFF75EFE4E -:1046E000072017E70D213000FFF734FE2862069BF4 -:1046F0006B62D5E738000130800020184DE7C046D6 -:104700000000000010B50023FFF78CFE10BDC0466E -:1047100010B50123FFF786FE10BDC04610B5022379 -:10472000FFF780FE10BDC046F0B5CE46474680B5C7 -:104730000500C3B014001E00012955D000294BD03C -:10474000032922D0042949D1002B47D1102A45D86A -:10475000102203681A4200D0F1E020AF380000F0C8 -:104760003DF900230120A96B02009A40144203D0B6 -:104770000E689A00BE5004310133042BF4D1380086 -:10478000A96300F029F9002029E0032B26D11404A5 -:10479000230C160C9846F318102B1FD80822036818 -:1047A0001A4200D098E020AF380000F013F94246DA -:1047B000AB6BF6001C00002A08D0D400F21A1C19BA -:1047C000BA181968D15004339C42FAD1AC6338004E -:1047D00000F0FEF8002002E0002B24D0022043B0BD -:1047E0000CBC90469946F0BD130C14049846240C5A -:1047F000012E2ED0052EF1D11B19202BEED84246CA -:104800000F2A70D9A146002C7ED1AA6B4346AA6319 -:104810000F2B00D89AE04B46002BDBD0684600F007 -:10482000D3F80020DBE700231004A96B000C01364D -:1048300032009A40104204D00F689A00AA185760BC -:1048400004310133102BF3D10020A304C7D4A96392 -:10485000C5E71B19102BC1D843460F2BBED82B68B8 -:104860001E4206D00322280093432B60483000F0FC -:10487000A5F820AF380000F0A1F8AA6B002C24D0D6 -:104880004346DB00FF180023994664000023A40080 -:10489000D158F95004339C42FAD14B4612196F4655 -:1048A000002B0FD04046102800D210204B46D900D4 -:1048B00000231038C0003818D458C450043399422B -:1048C000FAD15218012EA1D120AF04323800AA63C8 -:1048D00000F072F8002082E7934303605130FF300C -:1048E00000F078F85FE7102B3BD910225242914636 -:1048F00099442B68194208D0022228008B431343A5 -:104900002B60483000F05EF82B6804221A4221D157 -:1049100043460F2B03D820AF380000F053F86F4602 -:10492000380000F053F810244346AA6BE41A002C18 -:10493000B8DD434620AFDB006400FF18A6E79343D1 -:104940000360D130FF3000F049F806E720A800F0FE -:1049500037F860E7280093432B60D03000F036F83A -:10496000D6E72B680B4207D0022228008B43134363 -:104970002B60483000F026F820AF380000F022F815 -:10498000A146AA6B002C00D07AE73FE7011C343126 -:1049900038C9043B9C461D60A646011C20313CC919 -:1049A00090469946A246AB46011C0831FCC94168B5 -:1049B0000068E54600BDC0467047C0467047C04627 -:1049C0007047C0467047C0467047C0467047C046F3 -:1049D0007047C0467047C0467047C0467047C046E3 -:1049E00001B401A801B585B0FFB408A841464A4604 -:1049F00053465C4665463EC001A83EC80F980090ED -:104A000000230CB401A9FFF71DFC109B12B018473E -:104A100001B401A801B585B0FFB408A841464A46D3 -:104A200053465C4665463EC001A83EC80F980090BC -:104A300000230CB401A9FFF739FC109B12B01847F2 -:104A400001B401A801B585B0FFB408A841464A46A3 -:104A500053465C4665463EC001A83EC80F9800908C -:104A600000230CB401A9FFF745FC109B12B01847B6 -:104A700001B401A801B585B0FFB408A841464A4673 -:104A800053465C4665463EC001A83EC80F9800905C -:104A900000230CB401ABFFF7FFFB109B12B01847CB -:104AA00001B401A801B585B0FFB408A841464A4643 -:104AB00053465C4665463EC001A83EC80F9800902C -:104AC00000230CB401AAFFF775FC109B12B0184725 -:104AD000027A0300002A0BD1427A002A0FD0013A51 -:104AE00042724268111D416003211268017202E0A6 -:104AF000013A02720268100E12021A607047B0206A -:104B0000FCE7C04600B585B003AB00930C22002340 -:104B10000021FFF707FC039805B000BD10B5FFF7B3 -:104B2000F1FF10BDF0B557464E464546DE46002320 -:104B3000E0B587B003930F339846083B994680232E -:104B40001B0306000F009A463800FFF7C1FF040060 -:104B5000B02800D1C3E003062AD5030042469343A0 -:104B6000DBB2802B00D171E0902B3DD0A02B00D187 -:104B700085E0B02B50D0C02B00D196E003004A4610 -:104B80009343DBB2D02B0AD15346024001321A4381 -:104B9000052301213000FFF7C7FD0028D4D00924E8 -:104BA000200007B03CBC90469946A246AB46F0BDFB -:104BB000FF23820013401D1D05AB9B4600930D2271 -:104BC000002300213000FFF7ADFB630620D4059BD6 -:104BD0009C46654405955B460D2200930021002309 -:104BE0003000FFF7C3FBAFE7833B03400D2BD6D06C -:104BF00005AD02400095002300213000FFF792FB35 -:104C0000009500230D2200213000FFF7AFFB9BE74A -:104C1000059B5D1B0595DEE7B12874D0B22800D155 -:104C2000CFE0B32800D184E0FC230340B42BB6D0FE -:104C30004A465346024001321A4301210123300003 -:104C4000FFF772FD002800D17EE7A8E704023800D4 -:104C5000FFF73EFF802520432D02A8429FD004018C -:104C60000005020C002300213000FFF75DFD002845 -:104C700095D12C4200D167E70123039364E7FF231A -:104C80004A461B011900824311410A001A400307DA -:104C900002D58023DB011A43002300213000FFF7F7 -:104CA00043FD002800D14FE779E7C6284CD0C7283C -:104CB0005ED003004A469343DBB2C02B6DD0C828B8 -:104CC00072D0C92800D06AE73800FFF701FFF0234F -:104CD00002031B03134042460240013257E7039B85 -:104CE0000024002B00D05BE705AD00950E220021CB -:104CF0003000FFF717FB009500230F220021300042 -:104D0000FFF734FB4CE73800FFF7E2FE002800D144 -:104D100045E7030042469343DBB2002B00D03EE759 -:104D2000020000213000FFF7FFFC002800D10BE754 -:104D300035E73800FFF7CCFEF02302031B031340D6 -:104D400042460240013277E73800FFF7C1FEF02308 -:104D500002031B0313404246024001321A4303235D -:104D600003213000FFF7E0FC002800D1ECE616E755 -:104D70003800FFF7ADFE021E00D110E703004146E8 -:104D80008B43DBB2002B00D009E704213000FFF792 -:104D9000CBFC002800D1D7E601E74346A0221C4007 -:104DA000013412032243DAE73800FFF791FE43464D -:104DB00002009A43D2B2103218401203013002436B -:104DC000E6E605AB00939B460D2200230021300050 -:104DD000FFF7A8FA3800FFF77BFE030618D57F25FA -:104DE000B03C059B2840A0409C466044059038009C -:104DF0000734FFF76DFE0306F3D481217F2389007A -:104E000003408C46A340059A62449B180593E2E652 -:104E10000224F2E7030000B5DB6C85B05A68080095 -:104E2000120201921A0001A908324A6003220A7292 -:104E3000DB794B72FFF776FE05B000BD10B5FFF7CA -:104E40006DFE806C10BDC04610B5FFF767FEC26CEA -:104E5000D3799B000833D01810BDC04610B500F0C0 -:104E600005F8C04610B5FFF7F9FFC04610B506209B -:104E700000F076F8012000F0A5F8C046F0B50F2A42 -:104E800037D90D0005430C000300AD0735D11500DF -:104E9000103D2D092E013618103627681F606768EF -:104EA0005F60A7689F60E7681034DF601033B3422B -:104EB000F3D10F2401352D01491914404519032C54 -:104EC0001DD90023CE58EE500433E61A032EF9D82C -:104ED0000323043CA4080134A4001A402D19091925 -:104EE000002A05D00023CC5CEC5401339342FAD164 -:104EF000F0BD0500002AF5D1FAE70500F2E722002F -:104F0000F8E7C04670B505000C001F2922D8B7236A -:104F10009B00C358002B0ED08A009B181A68002AE9 -:104F200009D0012A10D0511C10D000212000196096 -:104F30009047002070BD280000F030F822000100EA -:104F4000280000F017F8F5E70020F3E716230360C8 -:104F50000120EFE71623036001204042EAE7C04644 -:104F600010B5034B01001868FFF7CCFF10BDC04619 -:104F700000000020002370B5074C05000800110058 -:104F8000236000F017F8431C00D070BD2368002B8D -:104F9000FBD02B60F9E7C0462407002010B500F0D5 -:104FA00001F810BD58220120014B40421A607047A1 -:104FB0002407002058220120014B40421A6070470C -:104FC00024070020FEE7C046F8B5C046F8B5C04645 -:104FD00074B20181B0AB308000000000800A018112 -:104FE000B0B0ABF0000000003F020181B0AB3080F8 -:104FF0000000000080060181B0B0ABF000000000AE -:1050000030EEFF7FB0B0B0807CEFFF7F010000008A -:1050100028F0FF7FB0A90280BCF0FF7FB0B0A8806D -:1050200008F1FF7F0100000014F1FF7FB0B0AA80FB -:1050300048F1FF7F9CFFFF7F08F2FF7F0100000027 -:1050400004F2FF7FAA3F398050F2FF7FB0B0A88002 -:105050005CF2FF7FB0B0AA809CF2FF7FB0B0A88066 -:10506000B0F2FF7F01000000ACF2FF7FB0B0A8807B -:10507000B4F2FF7F010000003CF3FF7FAA0FB28073 -:10508000A4F3FF7F58FFFF7F7CF6FF7FB0B0A880BE -:1050900098F6FF7F54FFFF7FF4F8FF7F01000000C8 -:1050A00064FAFF7F0084048074FAFF7FB0B0A880A8 -:1050B00074FAFF7F40FFFF7F5CFDFF7F0084048068 -:1050C0007CFDFF7FB0B0A88094FDFF7F0100000051 -:1050D000080000200000000000000000F402002092 -:1050E0005C030020C403002000000000000000005A -:1050F00000000000000000000000000000000000B0 -:10510000000000000000000000000000000000009F -:10511000000000000000000000000000000000008F -:10512000000000000000000000000000000000007F -:10513000000000000000000000000000000000006F -:10514000000000000000000000000000000000005F -:10515000000000000000000000000000000000004F -:10516000000000000000000000000000000000003F -:10517000000000000000000000000000000000002F -:1051800001000000000000000E33CDAB34126DE6CC -:10519000ECDE05000B000000000000000000000035 -:1051A00000000000000000000000000000000000FF -:1051B00000000000000000000000000000000000EF -:1051C00000000000000000000000000000000000DF -:1051D00000000000000000000000000000000000CF -:1051E00000000000000000000000000000000000BF -:1051F00000000000000000000000000000000000AF -:10520000000000000000000000000000000000009E -:10521000000000000000000000000000000000008E -:10522000000000000000000000000000000000007E -:10523000000000000000000000000000000000006E -:10524000000000000000000000000000000000005E -:10525000000000000000000000000000000000004E -:10526000000000000000000000000000000000003E -:10527000000000000000000000000000000000002E -:10528000000000000000000000000000000000001E -:10529000000000000000000000000000000000000E -:1052A00000000000000000000000000000000000FE -:1052B00000000000000000000000000000000000EE -:1052C00000000000000000000000000000000000DE -:1052D00000000000000000000000000000000000CE -:1052E00000000000000000000000000000000000BE -:1052F00000000000000000000000000000000000AE -:10530000000000000000000000000000000000009D -:10531000000000000000000000000000000000008D -:10532000000000000000000000000000000000007D -:10533000000000000000000000000000000000006D -:10534000000000000000000000000000000000005D -:10535000000000000000000000000000000000004D -:10536000000000000000000000000000000000003D -:10537000000000000000000000000000000000002D -:10538000000000000000000000000000000000001D -:10539000000000000000000000000000000000000D -:1053A00000000000000000000000000000000000FD -:1053B00000000000000000000000000000000000ED -:1053C00000000000000000000000000000000000DD -:1053D00000000000000000000000000000000000CD -:1053E00000000000000000000000000000000000BD -:1053F00000000000000000000000000000000000AD -:10540000000000000000000000000000000000009C -:10541000000000000000000000000000000000008C -:10542000000000000000000000000000000000007C -:10543000000000000000000000000000000000006C -:10544000000000000000000000000000000000005C -:10545000000000000000000000000000000000004C -:10546000000000000000000000000000000000003C -:10547000000000000000000000000000000000002C -:10548000000000000000000000000000000000001C -:10549000000000000000000000000000000000000C -:1054A00000000000000000000000000000000000FC -:1054B00000000000000000000000000000000000EC -:1054C00000000000000000000000000000000000DC -:1054D00000000000000000000000000000000000CC -:1054E00000000000000000000000000000000000BC -:1054F00000000000000000000000000000000000AC -:0400000508000805E2 -:00000001FF diff --git a/firmware/build_stm/inlretro_stm.map b/firmware/build_stm/inlretro_stm.map deleted file mode 100644 index 9db5637..0000000 --- a/firmware/build_stm/inlretro_stm.map +++ /dev/null @@ -1,885 +0,0 @@ -Archive member included to satisfy reference by file (symbol) - -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) - C:\Users\paul\AppData\Local\Temp\ccUa15vO.o (__aeabi_unwind_cpp_pr0) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(libunwind.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) (restore_core_regs) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) (__gnu_unwind_execute) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-abort.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) (abort) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-exit.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o (exit) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-impure.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-exit.o) (_global_impure_ptr) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-init.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o (__libc_init_array) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memcpy-stub.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) (memcpy) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memset.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o (memset) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-abort.o) (raise) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) (_kill_r) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__call_atexit.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-exit.o) (__call_exitprocs) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-atexit.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__call_atexit.o) (atexit) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-fini.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__call_atexit.o) (__libc_fini_array) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__call_atexit.o) (__retarget_lock_acquire_recursive) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mallocr.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) (_malloc_r) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mlock.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mallocr.o) (__malloc_lock) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-reent.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) (errno) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-sbrkr.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mallocr.o) (_sbrk_r) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__atexit.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-atexit.o) (__register_exitproc) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-freer.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mallocr.o) (_free_r) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(getpid.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) (_getpid) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(kill.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) (_kill) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(sbrk.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-sbrkr.o) (_sbrk) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(_exit.o) - c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-abort.o) (_exit) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(_thumb1_case_uqi.o) - C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o (__gnu_thumb1_case_uqi) -c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(_thumb1_case_uhi.o) - C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o (__gnu_thumb1_case_uhi) - -Allocating common symbols -Common symbol size file - -buff3 0x14 source/buffer.o (symbol from plugin) -__lock___atexit_recursive_mutex - 0x1 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) -cur_buff 0x4 source/buffer.o (symbol from plugin) -__lock___arc4random_mutex - 0x1 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) -tdo_pin 0x1 source/jtag.o (symbol from plugin) -errno 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-reent.o) -pbje_status 0x1 source/jtag.o (symbol from plugin) -pbje_command 0x1 source/jtag.o (symbol from plugin) -tck_base 0x4 source/jtag.o (symbol from plugin) -tck_pin 0x1 source/jtag.o (symbol from plugin) -bank_table 0x2 source/nes.o (symbol from plugin) -addrh 0x2 source/bootload.o (symbol from plugin) -buff1 0x14 source/buffer.o (symbol from plugin) -incoming_bytes_remain - 0x1 source/buffer.o (symbol from plugin) -__lock___env_recursive_mutex - 0x1 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) -__lock___sinit_recursive_mutex - 0x1 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) -pbje_cmd_update_flag - 0x1 source/jtag.o (symbol from plugin) -tms_pin 0x1 source/jtag.o (symbol from plugin) -__lock___malloc_recursive_mutex - 0x1 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) -tdi_base 0x4 source/jtag.o (symbol from plugin) -tdo_base 0x4 source/jtag.o (symbol from plugin) -buff2 0x14 source/buffer.o (symbol from plugin) -cur_bank 0x1 source/nes.o (symbol from plugin) -addr_ptr 0x4 source/bootload.o (symbol from plugin) -tdi_pin 0x1 source/jtag.o (symbol from plugin) -buff0 0x14 source/buffer.o (symbol from plugin) -raw_bank_status 0x10 source/buffer.o (symbol from plugin) -oper_info_struct 0x20 source/operation.o (symbol from plugin) -raw_buffer16 0x200 source/buffer.o (symbol from plugin) -tms_base 0x4 source/jtag.o (symbol from plugin) -swim_base 0x4 source/swim.o (symbol from plugin) -swim_pin 0x1 source/swim.o (symbol from plugin) -__lock___at_quick_exit_mutex - 0x1 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) -cur_usb_load_buff 0x4 source/buffer.o (symbol from plugin) -pbje_numclk 0x1 source/jtag.o (symbol from plugin) -__lock___dd_hash_mutex - 0x1 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) -__lock___tz_mutex 0x1 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) -pbje_data 0x20 source/jtag.o (symbol from plugin) -__lock___sfp_recursive_mutex - 0x1 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) - -Discarded input sections - - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o - .text 0x00000000 0x48 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtbegin.o - .data 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtbegin.o - .bss 0x00000000 0x1c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtbegin.o - .init_array 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtbegin.o - .fini_array 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtbegin.o - .eh_frame 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtbegin.o - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtbegin.o - .text 0x00000000 0x78 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o - .ARM.extab 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o - .ARM.exidx 0x00000000 0x8 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o - .ARM.attributes - 0x00000000 0x1b c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o - .text 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o - .stack 0x00000000 0xc00 C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o - .heap 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o - .debug_line 0x00000000 0x7c C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o - .debug_info 0x00000000 0x22 C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o - .debug_abbrev 0x00000000 0x12 C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o - .debug_aranges - 0x00000000 0x28 C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o - .debug_str 0x00000000 0x80 C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o - .debug_ranges 0x00000000 0x20 C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o - .ARM.attributes - 0x00000000 0x1b C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o - .text 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text 0x00000000 0x4 C:\Users\paul\AppData\Local\Temp\ccUa15vO.o - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccUa15vO.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccUa15vO.o - .ARM.extab 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccUa15vO.o - .ARM.exidx 0x00000000 0x8 C:\Users\paul\AppData\Local\Temp\ccUa15vO.o - .debug_line 0x00000000 0x49 C:\Users\paul\AppData\Local\Temp\ccUa15vO.o - .debug_info 0x00000000 0x26 C:\Users\paul\AppData\Local\Temp\ccUa15vO.o - .debug_abbrev 0x00000000 0x14 C:\Users\paul\AppData\Local\Temp\ccUa15vO.o - .debug_aranges - 0x00000000 0x20 C:\Users\paul\AppData\Local\Temp\ccUa15vO.o - .debug_str 0x00000000 0x7d C:\Users\paul\AppData\Local\Temp\ccUa15vO.o - .ARM.attributes - 0x00000000 0x21 C:\Users\paul\AppData\Local\Temp\ccUa15vO.o - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccAbCkC8.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccAbCkC8.o - .ARM.extab 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccAbCkC8.o - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) - .debug_frame 0x00000000 0x2b4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(libunwind.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(libunwind.o) - .ARM.attributes - 0x00000000 0x1e c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(libunwind.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) - .debug_frame 0x00000000 0xf4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-abort.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-abort.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-abort.o) - .debug_frame 0x00000000 0x28 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-abort.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-abort.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-exit.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-exit.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-exit.o) - .text.exit 0x00000000 0x20 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-exit.o) - .debug_frame 0x00000000 0x28 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-exit.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-exit.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-impure.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-impure.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-impure.o) - .rodata._global_impure_ptr - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-impure.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-impure.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-init.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-init.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-init.o) - .text.__libc_init_array - 0x00000000 0x48 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-init.o) - .debug_frame 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-init.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-init.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memcpy-stub.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memcpy-stub.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memcpy-stub.o) - .debug_frame 0x00000000 0x30 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memcpy-stub.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memcpy-stub.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memset.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memset.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memset.o) - .text.memset 0x00000000 0x9c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memset.o) - .debug_frame 0x00000000 0x30 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memset.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memset.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - .text._init_signal_r.part.0 - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - .text._init_signal_r - 0x00000000 0x1c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - .text._signal_r - 0x00000000 0x3c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - .text.__sigtramp_r - 0x00000000 0x50 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - .text.signal 0x00000000 0x18 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - .text._init_signal - 0x00000000 0x20 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - .text.__sigtramp - 0x00000000 0x14 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - .debug_frame 0x00000000 0xf8 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) - .debug_frame 0x00000000 0x44 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__call_atexit.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__call_atexit.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__call_atexit.o) - .text.startup.register_fini - 0x00000000 0x18 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__call_atexit.o) - .init_array.00000 - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__call_atexit.o) - .text.__call_exitprocs - 0x00000000 0x118 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__call_atexit.o) - .data.__atexit_recursive_mutex - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__call_atexit.o) - .debug_frame 0x00000000 0x54 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__call_atexit.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__call_atexit.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-atexit.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-atexit.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-atexit.o) - .text.atexit 0x00000000 0x10 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-atexit.o) - .debug_frame 0x00000000 0x28 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-atexit.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-atexit.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-fini.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-fini.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-fini.o) - .text.__libc_fini_array - 0x00000000 0x34 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-fini.o) - .debug_frame 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-fini.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-fini.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) - .text.__retarget_lock_init - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) - .text.__retarget_lock_init_recursive - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) - .text.__retarget_lock_close - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) - .text.__retarget_lock_close_recursive - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) - .text.__retarget_lock_acquire - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) - .text.__retarget_lock_acquire_recursive - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) - .text.__retarget_lock_try_acquire - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) - .text.__retarget_lock_try_acquire_recursive - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) - .text.__retarget_lock_release - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) - .text.__retarget_lock_release_recursive - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) - .debug_frame 0x00000000 0xb0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) - COMMON 0x00000000 0x21 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-lock.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mallocr.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mallocr.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mallocr.o) - .text._malloc_r - 0x00000000 0x554 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mallocr.o) - .bss.__malloc_current_mallinfo - 0x00000000 0x28 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mallocr.o) - .bss.__malloc_max_sbrked_mem - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mallocr.o) - .bss.__malloc_max_total_mem - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mallocr.o) - .bss.__malloc_top_pad - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mallocr.o) - .data.__malloc_av_ - 0x00000000 0x408 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mallocr.o) - .data.__malloc_sbrk_base - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mallocr.o) - .data.__malloc_trim_threshold - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mallocr.o) - .debug_frame 0x00000000 0x3c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mallocr.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mallocr.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mlock.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mlock.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mlock.o) - .text.__malloc_lock - 0x00000000 0x10 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mlock.o) - .text.__malloc_unlock - 0x00000000 0x10 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mlock.o) - .debug_frame 0x00000000 0x40 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mlock.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-mlock.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-reent.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-reent.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-reent.o) - .text.cleanup_glue - 0x00000000 0x1c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-reent.o) - .text._reclaim_reent - 0x00000000 0x94 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-reent.o) - .debug_frame 0x00000000 0x48 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-reent.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-reent.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-sbrkr.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-sbrkr.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-sbrkr.o) - .text._sbrk_r 0x00000000 0x24 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-sbrkr.o) - .debug_frame 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-sbrkr.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-sbrkr.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__atexit.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__atexit.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__atexit.o) - .text.__register_exitproc - 0x00000000 0xf4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__atexit.o) - .debug_frame 0x00000000 0x3c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__atexit.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-__atexit.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-freer.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-freer.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-freer.o) - .text._malloc_trim_r - 0x00000000 0xa0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-freer.o) - .text._free_r 0x00000000 0x1d4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-freer.o) - .debug_frame 0x00000000 0x58 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-freer.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-freer.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(getpid.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(getpid.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(getpid.o) - .stab 0x00000000 0x24 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(getpid.o) - .debug_frame 0x00000000 0x20 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(getpid.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(getpid.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(kill.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(kill.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(kill.o) - .stab 0x00000000 0x18 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(kill.o) - 0x24 (size before relaxing) - .debug_frame 0x00000000 0x20 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(kill.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(kill.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(sbrk.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(sbrk.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(sbrk.o) - .text._sbrk 0x00000000 0x1c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(sbrk.o) - .bss.heap_end.4102 - 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(sbrk.o) - .debug_frame 0x00000000 0x20 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(sbrk.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(sbrk.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(_exit.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(_exit.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(_exit.o) - .debug_frame 0x00000000 0x20 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(_exit.o) - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(_exit.o) - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtend.o - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtend.o - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtend.o - .eh_frame 0x00000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtend.o - .ARM.attributes - 0x00000000 0x2c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtend.o - .text 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtn.o - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtn.o - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtn.o - .init 0x00000000 0x8 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtn.o - .fini 0x00000000 0x8 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtn.o - .ARM.attributes - 0x00000000 0x1e c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtn.o - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(_thumb1_case_uqi.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(_thumb1_case_uqi.o) - .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(_thumb1_case_uhi.o) - .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(_thumb1_case_uhi.o) - -Memory Configuration - -Name Origin Length Attributes -FLASH 0x08000000 0x00008000 xr -RAM 0x20000000 0x00001800 xrw -*default* 0x00000000 0xffffffff - -Linker script and memory map - -LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o -LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtbegin.o -LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o -LOAD C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o -LOAD C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o -LOAD C:\Users\paul\AppData\Local\Temp\ccUa15vO.o -LOAD C:\Users\paul\AppData\Local\Temp\ccAbCkC8.o -START GROUP -LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a -LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a -LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libc.a -END GROUP -START GROUP -LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a -LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libc.a -LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a -END GROUP -LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtend.o -LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtn.o - -.text 0x08000000 0x4fd0 - *(.isr_vector) - .isr_vector 0x08000000 0xc0 C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o - 0x08000000 __isr_vector - *(.usb_driver) - .usb_driver 0x080000c0 0x3bc C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - 0x08000198 USB_IRQHandler - *(.usb_desc) - .usb_desc 0x0800047c 0xb8 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - *(.hardfault) - .hardfault 0x08000534 0x2 C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o - 0x08000534 TIM1_CC_IRQHandler - 0x08000534 TSC_IRQHandler - 0x08000534 ADC1_COMP_IRQHandler - 0x08000534 SysTick_Handler - 0x08000534 PendSV_Handler - 0x08000534 NMI_Handler - 0x08000534 I2C1_IRQHandler - 0x08000534 RCC_CRS_IRQHandler - 0x08000534 SPI1_IRQHandler - 0x08000534 TIM6_DAC_IRQHandler - 0x08000534 USART3_4_IRQHandler - 0x08000534 EXTI2_3_IRQHandler - 0x08000534 I2C2_IRQHandler - 0x08000534 TIM17_IRQHandler - 0x08000534 CEC_CAN_IRQHandler - 0x08000534 PVD_VDDIO2_IRQHandler - 0x08000534 DMA1_Channel4_5_6_7_IRQHandler - 0x08000534 TIM16_IRQHandler - 0x08000534 TIM3_IRQHandler - 0x08000534 EXTI4_15_IRQHandler - 0x08000534 DMA1_Channel1_IRQHandler - 0x08000534 Default_Handler - 0x08000534 TIM14_IRQHandler - 0x08000534 TIM7_IRQHandler - 0x08000534 TIM15_IRQHandler - 0x08000534 EXTI0_1_IRQHandler - 0x08000534 SPI2_IRQHandler - 0x08000534 SVC_Handler - 0x08000534 RTC_IRQHand - 0x08000534 WWDG_IRQHandler - 0x08000534 TIM2_IRQHandler - 0x08000534 DEF_IRQHandler - 0x08000534 DMA1_Channel2_3_IRQHandler - 0x08000534 USART2_IRQHandler - 0x08000534 FLASH_IRQHandler - 0x08000534 USART1_IRQHandler - 0x08000534 TIM1_BRK_UP_TRG_COM_IRQHandler - *fill* 0x08000536 0x2 ff - .hardfault 0x08000538 0xc C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - 0x08000538 HardFault_Handler - *_thumb1_case_uqi.o() - .text 0x08000544 0x14 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(_thumb1_case_uqi.o) - 0x08000544 __gnu_thumb1_case_uqi - .ARM.attributes - 0x08000558 0x1e c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(_thumb1_case_uqi.o) - *_thumb1_case_shi.o() - *_thumb1_case_uhi.o() - *fill* 0x08000576 0x2 ff - .text 0x08000578 0x14 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(_thumb1_case_uhi.o) - 0x08000578 __gnu_thumb1_case_uhi - .ARM.attributes - 0x0800058c 0x1e c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(_thumb1_case_uhi.o) - *(.fw_update) - *fill* 0x080005aa 0x2 ff - .fw_update 0x080005ac 0x150 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - 0x00000770 . = 0x770 - *fill* 0x080006fc 0x74 ff - *(.fw_up_main) - .fw_up_main 0x08000770 0x70 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - 0x00000800 . = 0x800 - *fill* 0x080007e0 0x20 ff - *(.appver) - 0x00000804 . = 0x804 - *fill* 0x08000800 0x4 ff - *(.reset_handler) - .reset_handler - 0x08000804 0x3c C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o - 0x08000804 Reset_Handler - *(.usbFuncWrite) - .usbFuncWrite 0x08000840 0x44 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - *(.usbFuncSetup) - .usbFuncSetup 0x08000884 0x1888 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - *(.text*) - .text.snes_page_rd_poll.constprop.24 - 0x0800210c 0x7c C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.nes_cpu_page_rd_poll.constprop.23 - 0x08002188 0x6c C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.nes_ppu_page_rd_poll.constprop.20 - 0x080021f4 0x68 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.append_pairity - 0x0800225c 0x1e C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.delay_us - 0x0800227a 0x14 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - *fill* 0x0800228e 0x2 ff - .text.snes_wr 0x08002290 0x60 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.snes_rd 0x080022f0 0x48 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.write_page_snes.constprop.32 - 0x08002338 0x194 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.snes_3v_flash_wr - 0x080024cc 0x50 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.snes_5v_flash_wr - 0x0800251c 0x50 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.nes_dualport_wr - 0x0800256c 0x50 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.nes_dualport_rd - 0x080025bc 0x38 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.nes_ppu_wr - 0x080025f4 0x50 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.nes_ppu_rd - 0x08002644 0x38 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.mmc3_chrrom_flash_wr - 0x0800267c 0x44 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.nrom_chrrom_flash_wr - 0x080026c0 0x44 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.nes_cpu_wr - 0x08002704 0x6c C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.cdream_chrrom_flash_wr - 0x08002770 0x84 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.mmc4_chrrom_flash_wr - 0x080027f4 0x74 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.cnrom_chrrom_flash_wr - 0x08002868 0x7c C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.nes_cpu_rd - 0x080028e4 0x40 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.mmc4_prgrom_sop_flash_wr - 0x08002924 0x54 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.mmc3_prgrom_flash_wr - 0x08002978 0x50 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.disc_push_exp0_prgrom_wr - 0x080029c8 0x48 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.discrete_exp0_prgrom_wr - 0x08002a10 0x58 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.unrom_prgrom_flash_wr - 0x08002a68 0x64 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.nrom_prgrom_flash_wr - 0x08002acc 0x44 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.pbje_scan - 0x08002b10 0x10c C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.pbje_state_change - 0x08002c1c 0x88 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.jtag_init_pbje - 0x08002ca4 0xe0 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.jtag_run_pbje.part.0 - 0x08002d84 0xb8 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.io_reset - 0x08002e3c 0x15c C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.write_page_verify - 0x08002f98 0x5c C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.write_page - 0x08002ff4 0x34 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.get_next_buff - 0x08003028 0x54 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.mmc1_wr.constprop.11 - 0x0800307c 0x22 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - *fill* 0x0800309e 0x2 ff - .text.mmc1_chrrom_flash_wr - 0x080030a0 0x60 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.mmc1_prgrom_flash_wr - 0x08003100 0x50 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.swim_wotf - 0x08003150 0xb4 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.swim_rotf - 0x08003204 0xac C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .text.startup.main - 0x080032b0 0xb80 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - 0x080032b0 main - .text 0x08003e30 0x154 C:\Users\paul\AppData\Local\Temp\ccAbCkC8.o - 0x08003e30 swim_xfr - .text 0x08003f84 0xa08 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) - 0x08004240 _Unwind_GetCFA - 0x08004244 __gnu_Unwind_RaiseException - 0x08004298 __gnu_Unwind_ForcedUnwind - 0x080042ac __gnu_Unwind_Resume - 0x080042f4 __gnu_Unwind_Resume_or_Rethrow - 0x08004310 _Unwind_Complete - 0x08004314 _Unwind_DeleteException - 0x08004324 _Unwind_VRS_Get - 0x0800436c _Unwind_VRS_Set - 0x080043b4 __gnu_Unwind_Backtrace - 0x08004704 __aeabi_unwind_cpp_pr0 - 0x08004710 __aeabi_unwind_cpp_pr1 - 0x0800471c __aeabi_unwind_cpp_pr2 - 0x08004728 _Unwind_VRS_Pop - .text 0x0800498c 0x144 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(libunwind.o) - 0x0800498c __restore_core_regs - 0x0800498c restore_core_regs - 0x080049b8 __gnu_Unwind_Restore_VFP - 0x080049bc __gnu_Unwind_Save_VFP - 0x080049c0 __gnu_Unwind_Restore_VFP_D - 0x080049c4 __gnu_Unwind_Save_VFP_D - 0x080049c8 __gnu_Unwind_Restore_VFP_D_16_to_31 - 0x080049cc __gnu_Unwind_Save_VFP_D_16_to_31 - 0x080049d0 __gnu_Unwind_Restore_WMMXD - 0x080049d4 __gnu_Unwind_Save_WMMXD - 0x080049d8 __gnu_Unwind_Restore_WMMXC - 0x080049dc __gnu_Unwind_Save_WMMXC - 0x080049e0 ___Unwind_RaiseException - 0x080049e0 _Unwind_RaiseException - 0x08004a10 _Unwind_Resume - 0x08004a10 ___Unwind_Resume - 0x08004a40 _Unwind_Resume_or_Rethrow - 0x08004a40 ___Unwind_Resume_or_Rethrow - 0x08004a70 _Unwind_ForcedUnwind - 0x08004a70 ___Unwind_ForcedUnwind - 0x08004aa0 ___Unwind_Backtrace - 0x08004aa0 _Unwind_Backtrace - .text 0x08004ad0 0x39c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) - 0x08004b24 __gnu_unwind_execute - 0x08004e14 __gnu_unwind_frame - 0x08004e3c _Unwind_GetRegionStart - 0x08004e48 _Unwind_GetLanguageSpecificData - 0x08004e5c _Unwind_GetDataRelBase - 0x08004e64 _Unwind_GetTextRelBase - .text.abort 0x08004e6c 0x10 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-abort.o) - 0x08004e6c abort - .text.memcpy 0x08004e7c 0x88 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memcpy-stub.o) - 0x08004e7c memcpy - .text._raise_r - 0x08004f04 0x5c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - 0x08004f04 _raise_r - .text.raise 0x08004f60 0x14 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - 0x08004f60 raise - .text._kill_r 0x08004f74 0x28 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) - 0x08004f74 _kill_r - .text._getpid_r - 0x08004f9c 0x8 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) - 0x08004f9c _getpid_r - .text._getpid 0x08004fa4 0x10 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(getpid.o) - 0x08004fa4 _getpid - .text._kill 0x08004fb4 0x10 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(kill.o) - 0x08004fb4 _kill - .text._exit 0x08004fc4 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(_exit.o) - 0x08004fc4 _exit - *(.init) - .init 0x08004fc8 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o - 0x08004fc8 _init - *(.fini) - .fini 0x08004fcc 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o - 0x08004fcc _fini - *crtbegin.o(.ctors) - *crtbegin?.o(.ctors) - *(EXCLUDE_FILE(*crtend.o *crtend?.o) .ctors) - *(SORT_BY_NAME(.ctors.*)) - *(.ctors) - *crtbegin.o(.dtors) - *crtbegin?.o(.dtors) - *(EXCLUDE_FILE(*crtend.o *crtend?.o) .dtors) - *(SORT_BY_NAME(.dtors.*)) - *(.dtors) - *(.rodata*) - *(.eh_frame*) - -.glue_7 0x08004fd0 0x0 - .glue_7 0x08004fd0 0x0 linker stubs - -.glue_7t 0x08004fd0 0x0 - .glue_7t 0x08004fd0 0x0 linker stubs - -.vfp11_veneer 0x08004fd0 0x0 - .vfp11_veneer 0x08004fd0 0x0 linker stubs - -.v4_bx 0x08004fd0 0x0 - .v4_bx 0x08004fd0 0x0 linker stubs - -.iplt 0x08004fd0 0x0 - .iplt 0x08004fd0 0x0 C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o - -.ARM.extab 0x08004fd0 0x30 - *(.ARM.extab* .gnu.linkonce.armextab.*) - .ARM.extab 0x08004fd0 0x24 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) - .ARM.extab 0x08004ff4 0xc c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) - 0x08005000 __exidx_start = . - -.ARM.exidx 0x08005000 0xd0 - *(.ARM.exidx* .gnu.linkonce.armexidx.*) - .ARM.exidx 0x08005000 0x8 C:\Users\paul\AppData\Local\Temp\ccAbCkC8.o - 0x10 (size before relaxing) - .ARM.exidx 0x08005008 0x98 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) - 0xd8 (size before relaxing) - .ARM.exidx 0x080050a0 0x30 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) - 0x48 (size before relaxing) - 0x080050d0 __exidx_end = . - 0x080050d0 __etext = ALIGN (0x4) - -.rel.dyn 0x080050d0 0x0 - .rel.iplt 0x080050d0 0x0 C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o - -.data 0x20000000 0x430 load address 0x080050d0 - 0x20000000 __data_start__ = . - *(vtable) - *(.data*) - .data._impure_ptr - 0x20000000 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-impure.o) - 0x20000000 _impure_ptr - *fill* 0x20000004 0x4 - .data.impure_data - 0x20000008 0x428 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-impure.o) - 0x20000430 . = ALIGN (0x4) - 0x20000430 PROVIDE (__preinit_array_start = .) - *(.preinit_array) - 0x20000430 PROVIDE (__preinit_array_end = .) - 0x20000430 . = ALIGN (0x4) - 0x20000430 PROVIDE (__init_array_start = .) - *(SORT_BY_NAME(.init_array.*)) - *(.init_array) - 0x20000430 PROVIDE (__init_array_end = .) - 0x20000430 . = ALIGN (0x4) - 0x20000430 PROVIDE (__fini_array_start = .) - *(SORT_BY_NAME(.fini_array.*)) - *(.fini_array) - 0x20000430 PROVIDE (__fini_array_end = .) - 0x20000430 . = ALIGN (0x4) - *(.fastrun) - 0x20000430 __data_end__ = . - -.igot.plt 0x20000430 0x0 load address 0x08005500 - .igot.plt 0x20000430 0x0 C:\Users\paul\AppData\Local\Temp\ccsrnNLz.o - -.bss 0x20000430 0x2f8 load address 0x08005500 - 0x20000430 . = ALIGN (0x4) - 0x20000430 __bss_start__ = . - *(.bss*) - .bss.addr_ptr 0x20000430 0x4 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.addrh 0x20000434 0x2 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.bank_table - 0x20000436 0x2 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.buff0 0x20000438 0x14 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.buff1 0x2000044c 0x14 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.buff2 0x20000460 0x14 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.buff3 0x20000474 0x14 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.cur_bank 0x20000488 0x1 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - *fill* 0x20000489 0x3 - .bss.cur_buff 0x2000048c 0x4 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.cur_usb_load_buff - 0x20000490 0x4 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.incoming_bytes_remain - 0x20000494 0x1 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.num_buff.5073 - 0x20000495 0x1 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - *fill* 0x20000496 0x2 - .bss.oper_info_struct - 0x20000498 0x20 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.pbje_command - 0x200004b8 0x1 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.pbje_data - 0x200004b9 0x20 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.pbje_numclk - 0x200004d9 0x1 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.pbje_status - 0x200004da 0x1 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.raw_bank_status - 0x200004db 0x10 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - *fill* 0x200004eb 0x1 - .bss.raw_buffer16 - 0x200004ec 0x200 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.rv16.4756 - 0x200006ec 0x8 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.rv16.4993 - 0x200006f4 0x8 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.swim_base - 0x200006fc 0x4 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.swim_pin 0x20000700 0x1 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - *fill* 0x20000701 0x3 - .bss.tck_base 0x20000704 0x4 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.tck_pin 0x20000708 0x1 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - *fill* 0x20000709 0x3 - .bss.tdi_base 0x2000070c 0x4 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.tdi_pin 0x20000710 0x1 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - *fill* 0x20000711 0x3 - .bss.tdo_base 0x20000714 0x4 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.tdo_pin 0x20000718 0x1 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - *fill* 0x20000719 0x3 - .bss.tms_base 0x2000071c 0x4 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .bss.tms_pin 0x20000720 0x1 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - *(COMMON) - *fill* 0x20000721 0x3 - COMMON 0x20000724 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-reent.o) - 0x20000724 errno - 0x20000728 . = ALIGN (0x4) - 0x20000728 __bss_end__ = . - -.heap 0x20000728 0x0 - 0x20000728 __end__ = . - 0x20000728 PROVIDE (end = .) - *(.heap*) - 0x20000728 __HeapLimit = . - -.stack_dummy 0x20000728 0x0 - *(.stack*) - 0x20001800 __StackTop = (ORIGIN (RAM) + LENGTH (RAM)) - 0x20001800 __StackLimit = (__StackTop - SIZEOF (.stack_dummy)) - 0x20001800 PROVIDE (__stack = __StackTop) - 0x00000001 ASSERT ((__StackLimit >= __HeapLimit), region RAM overflowed with stack) -OUTPUT(build_stm/inlretro_stm.elf elf32-littlearm) - -.ARM.attributes - 0x00000000 0x28 - .ARM.attributes - 0x00000000 0x1e c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o - .ARM.attributes - 0x0000001e 0x2f C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .ARM.attributes - 0x0000004d 0x21 C:\Users\paul\AppData\Local\Temp\ccAbCkC8.o - -.comment 0x00000000 0x7f - .comment 0x00000000 0x7f C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - 0x80 (size before relaxing) - -.debug_info 0x00000000 0x4df9 - .debug_info 0x00000000 0x4dd3 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .debug_info 0x00004dd3 0x26 C:\Users\paul\AppData\Local\Temp\ccAbCkC8.o - -.debug_abbrev 0x00000000 0x686 - .debug_abbrev 0x00000000 0x672 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .debug_abbrev 0x00000672 0x14 C:\Users\paul\AppData\Local\Temp\ccAbCkC8.o - -.debug_loc 0x00000000 0x511b - .debug_loc 0x00000000 0x511b C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - -.debug_aranges 0x00000000 0x1c8 - .debug_aranges - 0x00000000 0x1a8 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .debug_aranges - 0x000001a8 0x20 C:\Users\paul\AppData\Local\Temp\ccAbCkC8.o - -.debug_ranges 0x00000000 0xcb0 - .debug_ranges 0x00000000 0xcb0 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - -.debug_line 0x00000000 0x189a - .debug_line 0x00000000 0x17a7 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - .debug_line 0x000017a7 0xf3 C:\Users\paul\AppData\Local\Temp\ccAbCkC8.o - -.debug_str 0x00000000 0x113f - .debug_str 0x00000000 0x10c6 C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - 0x11db (size before relaxing) - .debug_str 0x000010c6 0x79 C:\Users\paul\AppData\Local\Temp\ccAbCkC8.o - -.debug_frame 0x00000000 0x54c - .debug_frame 0x00000000 0x54c C:\Users\paul\AppData\Local\Temp\ccvII1EV.ltrans0.ltrans.o - -.stabstr 0x00000000 0x76 - .stabstr 0x00000000 0x76 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(getpid.o) diff --git a/firmware/build_stm/inlretro_stm.elf b/firmware/build_stm6/inlretro_stm.axf similarity index 61% rename from firmware/build_stm/inlretro_stm.elf rename to firmware/build_stm6/inlretro_stm.axf index 10522b1..436c503 100644 Binary files a/firmware/build_stm/inlretro_stm.elf and b/firmware/build_stm6/inlretro_stm.axf differ diff --git a/firmware/build_stm6/inlretro_stm.elf b/firmware/build_stm6/inlretro_stm.elf index 7a13941..8d94ed6 100644 Binary files a/firmware/build_stm6/inlretro_stm.elf and b/firmware/build_stm6/inlretro_stm.elf differ diff --git a/firmware/build_stm6/inlretro_stm.hex b/firmware/build_stm6/inlretro_stm.hex index 7761f16..014b61f 100644 --- a/firmware/build_stm6/inlretro_stm.hex +++ b/firmware/build_stm6/inlretro_stm.hex @@ -108,7 +108,7 @@ :1006A00063701388A37013881B0AE370DDE78E2242 :1006B000012BCED880221B0412059B185918022347 :1006C00063700B88A3700B88EEE70A4B0A4ADA6066 -:1006D000CBE78B22BDE780232370BBE7EC0600202D +:1006D000CBE78B22BDE780232370BBE7F406002025 :1006E0000020024023016745AB89EFCD0060004048 :1006F000FFFF000000ED00E00400FA05FFFFFFFF30 :10070000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9 @@ -129,1188 +129,1188 @@ :1007F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF09 :10080000FFFFFFFF09490A4A0A4B9B1A03DD043B1D :10081000C858D050FBDC0849084A0020521A02DDB3 -:10082000043A8850FCDC02F0FDFC0000C04F0008D8 -:1008300000000020300400203004002028070020A1 +:10082000043A8850FCDC02F027FE0000E05100088A +:100830000000002030040020300400203407002095 :1008400070B50E4B1A68537A55685C18E4B2A3422F :100850000ED1537A0A48CB1853720378591AC9B289 :1008600001700020814202D198230130D37070BD05 :1008700006780130EE540133DBB2E8E79004002043 -:1008800094040020FF23F0B5C34C85B02380837906 -:1008900005000093407801380E2801D901F0B7FB1C -:1008A000FFF76AFE0F00A8059007AE08810AB50B96 -:1008B000A20B3509BD09240A7E0AED08FF081109BB -:1008C0002309A878AA888C23192822D8FFF754FE78 -:1008D0001A0024001A011502E10281030C04C80465 -:1008E000E404F004F80400050905120520052805B4 -:1008F000300538058005800580053D0552056905F0 -:10090000C902D502B023A54A5B0351690B43536169 -:100910000023237000F0BDFF152A01D900F05BFD14 -:100920001000FFF729FE160023002E00580539009D -:1009300044004F0058055C006900730080005805B2 -:1009400058058D009A00A700B400C100CE00D80061 -:10095000E2009023DB051A6891490A401A60802260 -:10096000D96852030A43DA600023D2E790230122B8 -:10097000DB05196891431960D9680A43DA600023DE -:10098000C7E790230422DB05196891431960D968F1 -:100990000A43DA600023BCE790231022DB051968C4 -:1009A00091431960D9680A43DA600023B1E79023C4 -:1009B0004022DB05196891431960D9680A43DA605F -:1009C0000023A6E79023DB051A6876490A401A60DF -:1009D0008022D968D2040A43DA60002399E7902381 -:1009E000DB051A6870490A401A608022D9685201F2 -:1009F0000A43DA6000238CE704226C4B19689143A8 -:100A00001960D9680A43DA60002382E79023DB0586 -:100A10001A6867490A401A608022D968D2050A43D9 -:100A2000DA60002375E79023DB051A6861490A4004 -:100A30001A608022D968D2020A43DA60002368E78C -:100A40009023DB051A685C490A401A608022D96845 -:100A500052000A43DA6000235BE79023DB051A6843 -:100A600056490A401A608022D968D2000A43DA60E7 -:100A700000234EE79023DB051A6851490A401A60AB -:100A80008022D968D2010A43DA60002341E790232B -:100A9000DB051A6843490A401A608022D968D204EB -:100AA0000A43DA60002334E79023DB051A684549DE -:100AB0000A401A608022D96852050A43DA6000238E -:100AC00027E70122394B196891431960D9680A4315 -:100AD000DA6000231DE710223B4B1968914319602F -:100AE000D9680A43DA60002313E79023DB051A680C -:100AF00032490A401A608022D968D2000A43DA607B -:100B0000002306E7152A01D900F068FC1000FFF762 -:100B100033FD160021002C00650437005D006800DD -:100B2000650473007E0088009300650465049E00E0 -:100B3000A900B400BF00CA00D500DF00E90090237F -:100B4000DB051968164801401960DA680240DA606E -:100B50000023DEE690230121DB051A688A431A6030 -:100B6000DA688A43DA600023D3E690230421DB05A8 -:100B70001A688A431A60DA688A43DA600023C8E692 -:100B800090231021DB051A688A431A60DA688A43C9 -:100B9000DA600023BDE6C046F406002000100240E3 -:100BA000FFFFEFFFFFFFFFFBFFEFFFFF0004004829 -:100BB000FFFFFFBFFFFFFBFFFFFEFFFFFFFBFFFF8E -:100BC000FFBFFFFFFFFFFFEF000C00489023402115 -:100BD000DB051A688A431A60DA688A43DA60002300 -:100BE00097E69023DB051968CE4801401960DA6862 -:100BF0000240DA6000238CE69023DB051968CA48BE -:100C000001401960DA680240DA60002381E60421BD -:100C1000C64B1A688A431A60DA688A43DA6000238E -:100C200077E69023DB051968C14801401960DA684E -:100C30000240DA6000236CE69023DB051968BD48AA -:100C400001401960DA680240DA60002361E690230F -:100C5000DB051968B84801401960DA680240DA60BB -:100C6000002356E69023DB051968B448014019605B -:100C7000DA680240DA6000234BE69023DB0519684E -:100C8000AF4801401960DA680240DA60002340E6AC -:100C90009023DB051968A34801401960DA68024017 -:100CA000DA60002335E69023DB051968A54801408A -:100CB0001960DA680240DA6000232AE601219B4BC2 -:100CC0001A688A431A60DA688A43DA60002320E6E9 -:100CD00010219D4B1A688A431A60DA688A43DA60E9 -:100CE000002316E69023DB0519689448014019603B -:100CF000DA680240DA6000230BE6152A00D970E3B7 -:100D00001000FFF739FC16001F0027006E032F00AC -:100D100037003F006E0348005100580061006E0329 -:100D20006E036A0073007C0085008E0097009E00B1 -:100D3000A50090228023D20511685B030B4313604A -:100D40000023E6E590220123D20511680B431360CE -:100D50000023DEE590220423D20511680B431360C3 -:100D60000023D6E590221023D20511680B431360AF -:100D70000023CEE590224023D20511680B43136077 -:100D80000023C6E590228023D2051168DB040B43C3 -:100D900013600023BDE590228023D20511685B011A -:100DA0000B4313600023B4E50423604A11680B432E -:100DB00013600023ADE590228023D2051168DB0586 -:100DC0000B4313600023A4E590228023D205116811 -:100DD000DB020B43136000239BE590228023D205A6 -:100DE00011685B000B431360002392E5902280237F -:100DF000D2051168DB000B431360002389E59022C4 -:100E00008023D2051168DB010B431360002380E5CA -:100E100090228023D2051168DB040B43136000236A -:100E200077E590228023D20511685B050B431360A0 -:100E300000236EE501233D4A11680B431360002334 -:100E400067E51023404A11680B431360002360E5F7 -:100E500090228023D2051168DB000B43136000232E -:100E600057E58D23082A00D053E590224023D20570 -:100E700051680B43536000234BE58D23082A00D0B3 -:100E800047E590224021D20553688B4353600023ED -:100E90003FE5152A00D9A7E21000FFF76DFB160009 -:100EA0001D002300A50229002F003500A5023C00EB -:100EB00057005C006300A502A5026A00700076007E -:100EC0007C0083008A008F00940090238022DB0541 -:100ED000D2009A6200231CE590230122DB059A626E -:100EE000002316E590230222DB059A62002310E519 -:100EF00090230422DB059A6200230AE5902308224E -:100F0000DB059A62002304E590238022DB05920131 -:100F10009A620023FDE490234022DB059A620023BD -:100F2000F7E4C046FFFFFFFBFFEFFFFF00040048B0 +:1008800094040020FF23F0B5BE4C85B0238083790B +:100890000700009340780138102801D901F085FC49 +:1008A000FFF76AFE1100A8059707FC08230B830CCD +:1008B0006F0CBF09600AAA0A040B3B0989099B094E +:1008C000AD09830C070BB878BA888C23192822D875 +:1008D000FFF752FE1A0024001A011402E0027F03FF +:1008E0000A04C604E204EE04F604FE04070510053B +:1008F0001E0526052E0536057E057E057E053B0573 +:1009000050056705C802D402B0239F4A5B035169B2 +:100910000B4353610023237000F003FE152A01D915 +:1009200000F059FD1000FFF727FE160023002E00EF +:100930005605390044004F0056055C0069007300FD +:100940008000560556058D009A00A700B400C1002E +:10095000CE00D800E2009023DB051A688B490A40DC +:100960001A608022D96852030A43DA600023D2E772 +:1009700090230122DB05196891431960D9680A4365 +:10098000DA600023C7E790230422DB05196891434E +:100990001960D9680A43DA600023BCE7902310226B +:1009A000DB05196891431960D9680A43DA600023AE +:1009B000B1E790234022DB05196891431960D9689B +:1009C0000A43DA600023A6E79023DB051A68704922 +:1009D0000A401A608022D968D2040A43DA600023F0 +:1009E00099E79023DB051A686A490A401A60802259 +:1009F000D96852010A43DA6000238CE70422664B6F +:100A0000196891431960D9680A43DA60002382E7C4 +:100A10009023DB051A6861490A401A608022D96870 +:100A2000D2050A43DA60002375E79023DB051A68D4 +:100A30005B490A401A608022D968D2020A43DA6010 +:100A4000002368E79023DB051A6856490A401A60BC +:100A50008022D96852000A43DA6000235BE79023C2 +:100A6000DB051A6850490A401A608022D968D20012 +:100A70000A43DA6000234EE79023DB051A684B49EE +:100A80000A401A608022D968D2010A43DA60002342 +:100A900041E79023DB051A683D490A401A6080222D +:100AA000D968D2040A43DA60002334E79023DB05D7 +:100AB0001A683F490A401A608022D96852050A43E1 +:100AC000DA60002327E70122334B1968914319604C +:100AD000D9680A43DA6000231DE71022354B1968F4 +:100AE00091431960D9680A43DA60002313E7902321 +:100AF000DB051A682C490A401A608022D968D200A6 +:100B00000A43DA60002306E7152A01D900F066FCE3 +:100B10001000FFF731FD160021002C006304510086 +:100B20005C006700630472007D008700920063042C +:100B300063049D00A800B300BE00C900D400DE001D +:100B4000E8009023DB051968104801401960DA6855 +:100B50000240DA600023DEE690230121DB051A68FB +:100B60008A431A60DA688A43DA600023D3E6902366 +:100B70000421DB051A688A431A60DA688A43DA605E +:100B80000023C8E6FC06002000100240FFFFEFFF34 +:100B9000FFFFFFFBFFEFFFFF00040048FFFFFFBF69 +:100BA000FFFFFBFFFFFEFFFFFFFBFFFFFFBFFFFF9E +:100BB000FFFFFFEF000C004890231021DB051A68AF +:100BC0008A431A60DA688A43DA600023A3E6902336 +:100BD0004021DB051A688A431A60DA688A43DA60C2 +:100BE000002398E69023DB051968CE480140196080 +:100BF000DA680240DA6000238DE69023DB0519688D +:100C0000C94801401960DA680240DA60002382E6D0 +:100C10000421C64B1A688A431A60DA688A43DA608C +:100C2000002378E69023DB051968C148014019606C +:100C3000DA680240DA6000236DE69023DB0519686C +:100C4000BC4801401960DA680240DA60002362E6BD +:100C50009023DB051968B84801401960DA68024042 +:100C6000DA60002357E69023DB051968B34801409A +:100C70001960DA680240DA6000234CE69023DB0555 +:100C80001968AF4801401960DA680240DA60002351 +:100C900041E69023DB051968A24801401960DA6833 +:100CA0000240DA60002336E69023DB051968A54888 +:100CB00001401960DA680240DA6000232BE6012166 +:100CC0009A4B1A688A431A60DA688A43DA6000230A +:100CD00021E610219C4B1A688A431A60DA688A431D +:100CE000DA60002317E69023DB051968934801407A +:100CF0001960DA680240DA6000230CE6152A00D990 +:100D00006FE31000FFF738FC16001F0027006D038B +:100D10002F0037003F006D0348005100580061006C +:100D20006D036D036A0073007C0085008E009700E0 +:100D30009E00A50090228023D20511685B030B431F +:100D400013600023E7E590220123D20511680B43CD +:100D500013600023DFE590220423D20511680B43C2 +:100D600013600023D7E590221023D20511680B43AE +:100D700013600023CFE590224023D20511680B4376 +:100D800013600023C7E590228023D2051168DB049D +:100D90000B4313600023BEE590228023D205116827 +:100DA0005B010B4313600023B5E504235F4A116820 +:100DB0000B4313600023AEE590228023D205116817 +:100DC000DB050B4313600023A5E590228023D205A9 +:100DD0001168DB020B43136000239CE59022802303 +:100DE000D20511685B000B431360002393E590224A +:100DF0008023D2051168DB000B43136000238AE5D2 +:100E000090228023D2051168DB010B43136000237D +:100E100081E590228023D2051168DB040B43136027 +:100E2000002378E590228023D20511685B050B43EF +:100E3000136000236FE501233C4A11680B431360E4 +:100E4000002368E51023404A11680B431360002318 +:100E500061E590228023D2051168DB000B4313600B +:100E6000002358E58D23082A00D054E59022402322 +:100E7000D20551680B43536000234CE58D23082AAB +:100E800000D048E590224021D20553688B4353603F +:100E9000002340E5152A00D9A6E21000FFF76CFBFD +:100EA00016001D002300A40229002F003500A40213 +:100EB0003C0056005B006200A402A40269006F00BF +:100EC00075007B00820089008E00930090238022B1 +:100ED000DB05D2009A6200231DE590230122DB0589 +:100EE0009A62002317E590230222DB059A62002311 +:100EF00011E590230422DB059A6200230BE5902381 +:100F00000822DB059A62002305E590238022DB0599 +:100F100092019A620023FEE490234022DB059A624C +:100F20000023F8E4FFFFFFFBFFEFFFFF0004004892 :100F3000FFFFFFBFFFFFFBFFFFFEFFFFFFFBFFFF0A :100F4000FFBFFFFFFFFFFFEF000C00480222CD4B69 -:100F50009A620023DDE490238022DB0512029A626C -:100F60000023D6E490238022DB0592009A620023BE -:100F7000CFE490231022DB059A620023C9E490237A -:100F80002022DB059A620023C3E490238022DB0544 -:100F90009A620023BDE490238022DB0592019A62CD -:100FA0000023B6E490238022DB05D2019A6200235D -:100FB000AFE40122B34B9A620023AAE40422B24BAD -:100FC0009A620023A5E490232022DB059A62002385 -:100FD0009FE4152A00D90AE21000FFF7CDFA1600A7 +:100F50009A620023DFE490238022DB0512029A626A +:100F60000023D8E490238022DB0592009A620023BC +:100F7000D1E490231022DB059A620023CBE4902376 +:100F80002022DB059A620023C5E490238022DB0542 +:100F90009A620023BFE490238022DB0592019A62CB +:100FA0000023B8E490238022DB05D2019A6200235B +:100FB000B1E40122B34B9A620023ACE40422B24BA9 +:100FC0009A620023A7E490232022DB059A62002383 +:100FD000A1E4152A00D90AE21000FFF7CDFA1600A5 :100FE0001D002300080229002F00350008023C00E4 :100FF000420047004E000802080255005B006100F5 :1010000067006E0075007A007F0090238022DB0568 -:10101000D2009A6100237CE490230122DB059A61CF -:10102000002376E490230222DB059A61002370E41A -:1010300090230422DB059A6100236AE490230822AE -:10104000DB059A61002364E490238022DB05920192 -:101050009A6100235DE490234022DB059A6100231E -:1010600057E40222874B9A61002352E490238022A6 -:10107000DB0512029A6100234BE490238022DB05FA -:1010800092009A61002344E490231022DB059A61C8 -:1010900000233EE490232022DB059A61002338E4FC -:1010A00090238022DB059A61002332E49023802282 -:1010B000DB0592019A6100232BE490238022DB055B -:1010C000D2019A61002324E401226E4B9A6100232D -:1010D0001FE404226C4B9A6100231AE4902320221F -:1010E000DB059A61002314E402236370152A00D9FA +:10101000D2009A6100237EE490230122DB059A61CD +:10102000002378E490230222DB059A61002372E416 +:1010300090230422DB059A6100236CE490230822AC +:10104000DB059A61002366E490238022DB05920190 +:101050009A6100235FE490234022DB059A6100231C +:1010600059E40222874B9A61002354E490238022A2 +:10107000DB0512029A6100234DE490238022DB05F8 +:1010800092009A61002346E490231022DB059A61C6 +:10109000002340E490232022DB059A6100233AE4F8 +:1010A00090238022DB059A61002334E49023802280 +:1010B000DB0592019A6100232DE490238022DB0559 +:1010C000D2019A61002326E401226E4B9A6100232B +:1010D00021E404226C4B9A6100231CE4902320221B +:1010E000DB059A61002316E402236370152A00D9F8 :1010F000B1E01000FFF726FA0B151EAF273039AF0D :10110000434C545DAFAF677079828C969EA6902356 :101110008022DB051B69D200134063800023FFF7A8 -:10112000F8FB90230122DB051B6913406380002339 -:10113000FFF7EFFB90230222DB051B69134063805E -:101140000023FFF7E6FB90230422DB051B69134015 -:1011500063800023FFF7DDFB90230822DB051B697A -:10116000134063800023FFF7D4FB90238022DB052C -:101170001B699201134063800023FFF7CAFB902391 -:101180004022DB051B69134063800023FFF7C1FB8E -:1011900002223C4B1B69134063800023FFF7B9FB1D +:10112000FAFB90230122DB051B6913406380002337 +:10113000FFF7F1FB90230222DB051B69134063805C +:101140000023FFF7E8FB90230422DB051B69134013 +:1011500063800023FFF7DFFB90230822DB051B6978 +:10116000134063800023FFF7D6FB90238022DB052A +:101170001B699201134063800023FFF7CCFB90238F +:101180004022DB051B69134063800023FFF7C3FB8C +:1011900002223C4B1B69134063800023FFF7BBFB1B :1011A0009023DB051B69DB0BDB0363800023FFF768 -:1011B000B0FB90238022DB051B6992001340638003 -:1011C0000023FFF7A6FB90231022DB051B691340C9 -:1011D00063800023FFF79DFB90232022DB051B6922 -:1011E000134063800023FFF794FB90238022DB05EC -:1011F0001B69134063800023FFF78BFB9023802241 -:10120000DB051B699201134063800023FFF781FB1C +:1011B000B2FB90238022DB051B6992001340638001 +:1011C0000023FFF7A8FB90231022DB051B691340C7 +:1011D00063800023FFF79FFB90232022DB051B6920 +:1011E000134063800023FFF796FB90238022DB05EA +:1011F0001B69134063800023FFF78DFB902380223F +:10120000DB051B699201134063800023FFF783FB1A :1012100090238022DB051B69D201134063800023E9 -:10122000FFF777FB0122174B1B69134063800023F4 -:10123000FFF76FFB0422144B1B69134063800023EC -:10124000FFF767FB90232022DB051B6913406380B7 -:101250000023FFF75EFB002363708D33FFF759FB1C +:10122000FFF779FB0122174B1B69134063800023F2 +:10123000FFF771FB0422144B1B69134063800023EA +:10124000FFF769FB90232022DB051B6913406380B5 +:101250000023FFF760FB002363708D33FFF75BFB18 :1012600080230A4ADB0251690B435361054B08494D :101270001A680A401A60D968064A0A43DA600023ED -:10128000FFF747FB00040048000C00480010024034 -:10129000FFFFAAAA00005555DF4BE0491A680A4033 -:1012A0001A60D968DE4A0A43DA600023FFF731FB8F -:1012B000D94ADA4913680B4013600023FFF729FB72 -:1012C000D54AD74B11680B4313600023FFF721FB6E -:1012D000D14912024B69DBB21A434A610023FFF77E -:1012E00018FBCD4B1B691B0AA370012363700023FD -:1012F000FFF70FFB8023CB4A1B0351690B4353615C -:10130000C94ACA4B11680B4313600023FFF701FB66 -:10131000C54AC64BD1680B43D3600023FFF7F9FAE7 -:10132000C14AC34913680B4013600023FFF7F1FA69 -:10133000BD4ABE4B11680B4313600023FFF7E9FA67 -:10134000B94B5A610023FFF7E4FAC023B54ADB0228 -:1013500051690B435361B04AB64B11680B4313609C +:10128000FFF749FB00040048000C00480010024032 +:10129000FFFFAAAA00005555C74BC8491A680A4063 +:1012A0001A60D968C64A0A43DA600023FFF733FBA5 +:1012B000C14AC24913680B4013600023FFF72BFBA0 +:1012C000BD4ABF4B11680B4313600023FFF723FB9C +:1012D000B94912024B69DBB21A434A610023FFF796 +:1012E0001AFBB54B1B691B0AA37001236370002313 +:1012F000FFF711FB8023B34A1B0351690B43536172 +:10130000B14AB24B11680B4313600023FFF703FB94 +:10131000AD4AAE4BD1680B43D3600023FFF7FBFA15 +:10132000A94AAB4913680B4013600023FFF7F3FA97 +:10133000A54AA64B11680B4313600023FFF7EBFA95 +:10134000A14B5A610023FFF7E6FAC0239D4ADB0256 +:1013500051690B435361984A9E4B11680B431360CC :101360009022A023D20511685B030B431360002376 -:10137000FFF7CFFAA84AAF4BD1680B43D360902355 -:10138000A021DB05D86849030143D9601168AA4848 -:10139000014011601A68A9490A401A600023FFF74A -:1013A000B8FAFF259C48930041692B40A44DD20018 +:10137000FFF7D1FA904A974BD1680B43D360902383 +:10138000A021DB05D86849030143D9601168924860 +:10139000014011601A6891490A401A600023FFF762 +:1013A000BAFAFF258448930041692B408C4DD20046 :1013B00029400B4343619021C020C905C0004B69FF -:1013C0000240A04803401A434A610023FFF7A1FAF4 -:1013D0000023FFF79EFA8D23FFF79BFA8D23FFF77B -:1013E00098FA8D23FFF795FA8D23FFF792FA8D2354 -:1013F000FFF78FFAAA88AD78032D00D126E155D8E2 -:10140000012D63D05ED901F0D7FC90220121D205D5 -:1014100013680B4313601023916111680B43136031 -:1014200004234021936113680B43136008239361E5 -:101430009161802311685B010B431360802379481D -:10144000DB024169754E0B43734943610B683340BE -:101450000B60CD68724B1D43CD600C6834400C604E -:10146000CC682343CB60802344691B0323436E4C29 -:10147000436125686D4B2B43236000236361C024C7 -:101480004569E4022C4344610C686A4820430860C3 -:10149000A02014684003204310604869684C204035 -:1014A0004861516967480140516151E0052D52D0B2 -:1014B00000D20FE1072D00D191E0802D00D12EE167 -:1014C000962345E001F078FC002341E001F074FC34 -:1014D0009023DB051A682A431A6080229D611968EF -:1014E00052030A431A6080220421D2009A621A68C9 -:1014F0004A4D0A431A6002229A6118680E3202436A -:101500001A604022996119680A431A6008229A6198 -:101510008023444ADB0251690B4353613E4B1968F7 -:1015200029401960DC683E490C43DC60186828409B -:101530001860D8680143D960802351691B030B43AD -:101540005361394A394B11680B43136000235361CF -:101550003D4CFFF7DEF901F02FFC90220121D2056E -:1015600013682E4E0B4313601023916111680B43D7 -:10157000136004234021936113680B431360082315 -:1015800093618023916211685B010B431360802398 -:101590002449DB02486903434B611F4B1868304004 -:1015A0001860DD681E480543DD601C6834401C601F -:1015B000DC682043D860802348691B0303434B61E8 -:1015C00019491A4B086803430B6000234B618021C3 -:1015D0001068C9010143116080219162B8E701F0F0 -:1015E000EBFB90220121D205136840200B431360CE -:1015F0001023916111680B431360042393611168F8 -:10160000014311600821916111680B4313600223AB -:10161000936190610DE7C04600040048FFFFAAAA4D -:10162000000055550010024000080048555555551A -:10163000AAAAAAAA50550000AFAAFFFFFFFFEBFF1E -:1016400003FF0000FFF90000F4060020D2B2022AD6 -:1016500021D00023032A00D17AE79733012A00D052 -:1016600076E78023B3491B03486903434B61B249C2 -:101670000B6893430B60CB681343CB604B681343F9 -:101680004B608A610B681A4300230A60AB4A1370EF -:10169000AB4A11605CE7B023A64A5B035169402066 -:1016A0000B4353619023DB051A68A6490A401A6070 -:1016B0008022D96852011143D960596801435960A9 -:1016C000986119680A4308211A609C4A11709C4A63 -:1016D0001360F9E6D2B29823012A00D038E79022AD -:1016E000994BD2051A6006220A21984B1A70984B22 -:1016F000984A1360984A1170984A01311360984AC9 -:101700001170984A13600C22974B1A70B023894AC3 -:101710005B0351690B43536101F082FAD4E69023D5 -:10172000012540218026DB05657099621A687601E3 -:1017300032431A60C04683481C691A680C40024054 -:101740001A60DA680240DA60F022002C37D11A6899 -:1017500002401A60DA681643DE601A6994461A6914 -:101760000192C0461A690292C046C0461A690392A5 -:10177000C046C046C0461F69C046C046C046C046B7 -:101780001E691A6802401A60DA681040D860634621 -:1017900022000B4213D1019B2A000B420FD1029B66 -:1017A00002320B420BD10B0003990332194206D1CE -:1017B00004321F4203D1D6321E4200D0D13A6B4BC5 -:1017C0009A7081E6E978A888AD780D2D00D1A4E063 -:1017D00029D8062D00D164E011D8022D00D167E090 -:1017E00005D8002D52D0012D5FD0A02550E0042D4A -:1017F00000D180E0052DF8D100F076FE53E0092DF0 -:1018000000D181E007D8072D00D18CE0082DECD164 -:1018100000F0F2FE47E00B2D00D181E000D876E029 -:1018200000F064FF3FE0222D45D013D8102D00D1E9 -:101830007CE007D80E2D00D16CE00F2DD5D101F042 -:10184000E9FB30E0202D59D05BD8112DCDD100F02F -:101850008FFF28E0822D00D1C0E00AD8802D00D172 -:1018600090E0812DC1D10123637000F0F9FFA070D9 -:1018700019E0852D00D1B6E0862D00D1B8E0842D89 -:10188000B3D10123637000F057FEF0E701F07EF85A -:101890002570374B0098A2B2240C5A819C8105B068 -:1018A000F0BD01F04FF80025F2E700F061FEFAE725 -:1018B00000F0E6FEF7E7204B902258610223D205A4 -:1018C0009362234B2B4D1E68090235431D605D69F1 -:1018D00000B2EDB229435961002801DA0121916279 -:1018E000C046C04601219161491891611A68224998 -:1018F0000A401A60D7E701F07BFBD4E71F4B187052 -:10190000D1E71F4B1880CEE701F09EF8CBE700F03F -:1019100095FEC8E701F0AEFBC5E701F063F8C2E74A -:1019200000F060FFBFE700F0E5FFBCE700F0B8FFA4 -:10193000B9E7C04600100240000800480007002038 -:10194000FC060020FFEFFFFF14070020180700200F -:10195000000400480C070020100700201C0700208E -:10196000200700200407002008070020F4060020BC -:101970000060004000005555FFFFAAAA880400201F -:1019800036040020012190236170DB051D68C94EDB -:1019900035401D60DA6802253240DA608022D200CC -:1019A0009A6299619D61C44D6861C046C04600B2AB -:1019B0009A61002800DA9962C046C046C046C04617 -:1019C000C046C04690228021BC4BD205C9001B698D -:1019D000916201211B0A9161A37064E70123637086 -:1019E00000F0EEFD43E701236370B54B1B78F3E78E -:1019F00002236370B34B1B88A3701B0AE37052E78A -:101A0000A878E978AE88AA23062801D9FEF781FFD5 -:101A1000FEF798FD042A1B2226322000FF20A7494A -:101A2000B3004A690340A848F600024013434B61E3 -:101A30009022C021D205C90053690E40A3490B4032 -:101A40001E4356610023FEF764FF0022300000F0C1 -:101A5000DDFBF7E70122F9E7300000F01DFDF1E7BB -:101A6000300000F0F1FCEDE701230021637030004D -:101A700000F0FCFBA070E5E701216170F7E7AA78B0 -:101A8000002A07D00023012A01D1FEF742FFAF331D -:101A9000FEF73FFF01236370A933A3701300FEF725 -:101AA00038FFAA78002A07D00023012A01D1FEF7C7 -:101AB00030FFB033FEF72DFF01236370A933A3700D -:101AC0001300FEF726FFAA78002A07D00023012A78 -:101AD00001D1FEF71EFFB133FEF71BFF0123637038 -:101AE000A933A3701300FEF714FFAA78002A07D0C9 -:101AF0000023012A01D1FEF70CFFB233FEF709FFE4 -:101B000001236370A933A3701300FEF702FFEA7884 -:101B1000A988AD78112D7BD007D8012D4ED0002D8E -:101B20000DD0022D5CD0822646E0212D66D0222DDC -:101B30006AD0122DF7D10223102063706BE00127C9 -:101B4000634B04261B7810209F40FA43614B01929F -:101B50001D68AF626B6813406B6000F04CFBAF61B7 -:101B60006B683B436B60FA20400000F044FBFA20B6 -:101B7000AF626B68019A400013406B6000F03BFB62 -:101B8000AF616B68013E3B43B6B26B60002EEAD199 -:101B90000436FA2000F02FFBAF626B68019AFA203E -:101BA00013406B6000F027FBAF616B68013E3B4365 -:101BB000B6B26B60002EECD126706AE6444A454B03 -:101BC00012781E689540B56273681020AB4373604D -:101BD00000F011FBB56173682B4373600026EBE7DF -:101BE00001233B4A637012783B499340394A9BB2C8 -:101BF0001268002002F094F8A070EFE701230020A3 -:101C0000637001F05FFAF7E7012310206370F8E7D3 -:101C100002230020637001F0AFFA6080DEE7AB784A -:101C2000AA88042B1DD007D8022B1FD024D8012B43 -:101C300012D08723FEF76DFE072B26D003D8052B85 -:101C4000F7D1264B16E0082B24D0802BF1D100F0E1 -:101C5000E7FF0023FEF75DFE214A1278A270637051 -:101C6000F7E7204B1B78A3700123F8E71C4B1A7091 -:101C700083221C4B1A70ECE7194B1A4D1A70832300 -:101C80002B7001F03DF82B78EDE7174B1A70120A14 -:101C90005A70DEE7144B1A78A2705A78E2709A787C -:101CA0002271DA7862711A79A2715B79E371062385 -:101CB000D5E7C046FFEFFFFF0008004800040048DA -:101CC000880400203604002003FF0000FFF9000014 -:101CD00000070020FC06002004000200D9040020B8 -:101CE000B8040020DA040020B9040020A878E978BC -:101CF0000238AA888A23092801D9FEF70AFEFEF7CE -:101D000021FC050A10151C232F3B4048C14B1A80AB -:101D10000023FEF7FEFDBF4B1B881B0413439847AF -:101D2000F6E7FEF725FD0300FEF7F3FDBA4803686A -:101D300099B213040B430360EAE7B7490B681B0C25 -:101D40001B0413430B60E3E704236370B24B1B686F -:101D50001A0AA370E2701A0C1B0E22716371D7E786 -:101D6000022363705300AC4A1168CB181A88A27022 -:101D70001B881B0AE370CBE7A74B49001B68CA52BC -:101D8000C6E7A54953000A68D31802220B606270A7 -:101D9000ECE7A14B49001868411819600A80B7E7C1 -:101DA0008823FEF7B6FDAA781300303B2F2B1AD8F4 -:101DB000E878032814D8FEF7C5FB16180211974BD4 -:101DC000512A00D17AE027D8312A55D00FD8002ADD -:101DD00035D0302A49D0B423FEF79BFD904BEFE776 -:101DE000B523FEF796FD8F4BEAE78F4BE8E7332AE2 -:101DF00050D048D3502AEED1C022D20022801A7A85 -:101E0000A270DA78E2705A7A22719A7A62719A78BC -:101E1000A2715B7CE3713CE57F2A00D982E0702AE5 -:101E20005BD2602A3BD0612A41D0522AD3D1802292 -:101E30001B889200A3701B0A2280E37029E5FF2112 -:101E40007A4BD1540132102AFBD10123754A5B42EF -:101E50005380754A5380714A5380714A53800122DE -:101E6000734B1A700023FEF754FDAA88110AD97229 -:101E70001A730023FEF74DFDAA88110A59739A734D -:101E80000023FEF746FDAA88110AD9731A740023AD -:101E9000FEF73FFDAA885A740023FEF73AFD80231F -:101EA0005B002380AB88614AD35CA370F1E480239C -:101EB0005B0023805F4B1B68DB78F6E7C022D20013 -:101EC0002280DA7AA2701A7BE2705A7B22719A7BA6 -:101ED0006271DA7BA2711B7C9CE7524B28785C68AC -:101EE000544B1B68D9787F2800D9ABE05248009E3C -:101EF000067000290FD000200090982900D1A7E09B -:101F000004E000200090D02900D1A1E04849103021 -:101F10000870FF2104E049490B609021D9706F31AE -:101F2000009195E007201040032817D8FEF70AFB20 -:101F3000191B0214394B802A00D2AAE4872A14D92B -:101F40007032D2B2072A00D9A3E400222270EA78C4 -:101F50009A72AA881A809CE4314BECE7B523FEF70D -:101F6000D8FC304BE7E7304BE5E7A888E978C6B204 -:101F70008D19BE22102D2CDC0432002929D0DD78E9 -:101F8000033AFF2D25D19D780132FF2D21D100226A -:101F9000D7B2B9421FD82A4D0022AC464F01013FAB -:101FA0001F727701000A67449870DA705A729A7249 -:101FB0001A80DA721A735A739A73DA731A745A742B -:101FC0005F601A4B9D19A8540132D3B29942FAD8D6 -:101FD000002222705DE40132B718144D013FEF5D1D -:101FE000FF2FD5D0C122F4E7AB78002B04D0402BD3 -:101FF00007D0D223FEF78DFC2370AA880C4B1A70F1 -:1020000047E480235B002380094B1B784DE7802346 -:10201000FEF77FFC34040020300400206004002020 -:1020200074040020380400204C040020DB0400204D -:10203000980400208C0400209404002090040020C8 -:10204000EC040020D82900D05BE780215C68D970BF -:1020500000215972DB78902B01D0FFF71AFC712A0E -:1020600001D0FFF716FC074BAA881B6859680A7055 -:10207000AA885968120A4A705A7A02325A72FFF7CD -:1020800008FCC04690040020F0B51C4D040005A8D3 -:10209000067868690902C0B208436861902004218B -:1020A000C00581622900002A01D101328262FF2528 -:1020B00000204A692D022A401A43114F4A61C04646 -:1020C000C046C046C046C046C046C046C046C046E0 -:1020D000C0463A690133120A22544A69DBB22A40E7 -:1020E00001301A43C0B24A61B042E8D990230422B9 -:1020F000DB059A61033A9A61F0BDC04600080048CA -:1021000000040048F0B5184C050060690E02C0B22A -:102110003043606180269020F600C00549B2866198 -:10212000002901DA01218162FF266169360231400E -:1021300011436161C04600200C4FC046396901322D -:10214000090A29546169D2B2314001301143C0B249 -:1021500061619842F1D990238022DB05D2009A6216 -:1021600001229A61F0BDC046000800480004004802 -:10217000F0B5174C05000E0060691F2925D8802195 -:1021800031430902C0B20143616190210420FF265E -:10219000C905886261693602314011436161C046F8 -:1021A00000200C4FC04639690132090A295461697F -:1021B000D2B2314001301143C0B261619842F1D9CD -:1021C00090230422DB059A61F0BDC0B20902DAE770 -:1021D0000008004800040048002302000002002A12 -:1021E00004D1002B01D0802318437047DB43511EDC -:1021F000DBB20A40F3E70023800080B2C046C0464D -:1022000001339BB29842F9D17047FFFF134B10B5D1 -:102210005861134B13481C68090220431860586921 -:10222000C0B20143596190210820C9058862002A83 -:1022300001D101328A62C046C046C046C046C0468F -:10224000C046C046C04690220821D2059161073998 -:1022500091611A6804490A401A6010BD00080048DC -:102260000004004800005555FFFFAAAA0F4B586113 -:102270009023DB05002901D101229A6204229A628F -:10228000C046C046C046C046C046C046C046C0461E -:10229000C046C046C046C046C046054908699A6166 -:1022A000000A033AC0B29A617047C046000800486D -:1022B00000040048F7B504000E004D7AC046C04641 -:1022C000C046C046C046C046C046C046C0460022C2 -:1022D000AA215848FFF79AFF002255215648FFF7D8 -:1022E00095FF2402002220215248FFF78FFF23B2DE -:1022F0000193EBB20093337AAB4216D28020009B5D -:102300000022737290210002FFF780FF00228020DC -:1023100011000002FFF77AFF80200022F021000266 -:10232000FFF774FFC0460020FEBD444B444A1968C5 -:1023300008200A43FF211A605A690A40A0210902B5 -:102340000A435A6190220121D20590629162C046EF -:10235000C046C046C046FF24906191611A68394961 -:102360002C400A401A60019B009A1C437368A4B277 -:10237000995C20000022FFF749FFC046C046C046D6 -:10238000C046C046C046C046C046C046C046002102 -:102390002000FFF76BFF0700C046C046C046C0469E -:1023A000C046C046C046C046C0467368009A9B5CA3 -:1023B000834217D0C046C046C046C046C046C0464D -:1023C000C046C046C04600212000FFF74FFFB8427C -:1023D0000BD1C046C046C046C046C046C046C046F7 -:1023E000C046C0460135ADB283E7C046C046C046D0 -:1023F000C046C046C046C046C046C046C046C046AD -:10240000C046C046C046C046C046C046C046C0469C -:10241000C046C046C046C046C046C046C046C0468C -:10242000C046C046C04600212000FFF71FFF07003E -:10243000C9E7C046AA8A000055850000000400488C -:1024400000005555FFFFAAAA70B504000D00002238 -:10245000AA210F48FFF7DAFE002255210D48FFF7A9 -:10246000D5FE0022A0210A48FFF7D0FE0022290055 -:102470002000FFF7CBFE00212000FFF7F7FE05004C -:10248000C04600212000FFF7F1FEA842F3D170BD45 -:10249000AA8A00005585000070B504000D000022D6 -:1024A000AA210F48FFF7B2FE002255210D48FFF781 -:1024B000ADFE0022A0210A48FFF7A8FE0022290055 -:1024C0002000FFF7A3FE00212000FFF7CFFE05004C -:1024D000C04600212000FFF7C9FEA842F3D170BD1D -:1024E00055550000AA2A00000F4B30B590225861C4 -:1024F00080230124D205DB0093620C4B94621D689B -:102500000B480902284318605869C0B20143596159 -:10251000C04608219162C046916119680548014092 -:102520001960946130BDC0460008004800040048AE -:1025300000005555FFFFAAAA0B4B10B5802158612A -:10254000902301220424DB05C90099619A629C62F0 -:10255000C046C046C046054800699C61000A9962B1 -:10256000C0B29A6110BDC04600080048000400488F -:102570000E4B984202D880231B0218430C4B0D4A85 -:1025800058610D4B0902186802431A605A69D2B2A9 -:1025900011435961C04690220821D2059162C0467C -:1025A00091611A6805490A401A607047FF1F0000D0 -:1025B000000800480000555500040048FFFFAAAA83 -:1025C0000A4B984202D880231B021843084B04226E -:1025D00058619023DB059A62C046C046C046C0469B -:1025E000044908699A61000AC0B27047FF1F0000E1 -:1025F000000800480004004870B504000D000D48B4 -:10260000AA21FFF7B5FF55210B48FFF7B1FFA02125 -:102610000848FFF7ADFF29002000FFF7A9FF2000C1 -:10262000FFF7CEFF0500C0462000FFF7C9FFA84214 -:10263000F5D170BD55150000AA1A000070B5040050 -:102640000D000D48AA21FFF793FF55210B48FFF716 -:102650008FFFA0210848FFF78BFF29002000FFF71C -:1026600087FF2000FFF7ACFF0500C0462000FFF702 -:10267000A7FFA842F5D170BD55150000AA0A0000B9 -:102680009023DB0530B51C68134D09022C401C60FB -:10269000DA68124C2A40DA60114A506102229A62CA -:1026A000104A00B215682C4314605469E4B2214307 -:1026B00051618021C9009961002801DA01209862E6 -:1026C000C046C04699620121996149189961136811 -:1026D00005490B40136030BDFFEFFFFF000055556B -:1026E0000008004800040048FFFFAAAAF7B51C4BE9 -:1026F00007001D781B4B01911C88202126002036E5 -:10270000B6B23000FFF7BCFFAA211748FFF730FF31 -:102710002000103080B21021FFF7B2FF2D015521AB -:102720001248FFF725FFEDB220213000FFF7A8FF88 -:102730006419A0210C48FFF71BFFA0B22900FFF786 -:102740009FFF01993800FFF713FF3800FFF738FFAC -:102750000400C0463800FFF733FFA042F5D1F7BDB3 -:10276000880400203604002055150000AA0A000045 -:1027700070B50400B0200E0000020A21FFF780FFB0 -:10278000C0200A210002FFF77BFFAA211248FFF7B1 -:10279000EFFE55211148FFF7EBFEA0210E48FFF791 -:1027A000E7FEB0200E4B00021D782900FFF768FFFE -:1027B000C02029000002FFF763FF31002000FFF76F -:1027C000D7FE2000FFF7FCFE0500C0462000FFF703 -:1027D000F7FEA842F5D170BD55150000AA0A000009 -:1027E00088040020F8B505000E00194B02211C8852 -:1027F000A71CBFB23800FFF743FFAA211548FFF717 -:10280000B7FE601C80B20121FFF73AFF5521124844 -:10281000FFF7AEFE02213800FFF732FFA0210D487E -:10282000FFF7A6FE0D4B19786418A0B2FFF728FF3A -:1028300031002800FFF79CFE2800FFF7C1FE0400CE -:10284000C0462800FFF7BCFEA042F5D1F8BDC04647 -:102850003604002055150000AA0A00008804002054 -:102860000D4B802258619023D200DB0500B29A61A3 -:10287000002801DA01229A62C046C046C046C0461E -:10288000064B802218699023D200DB059A62012250 -:10289000000AC0B29A61704700080048000400486E -:1028A00070B504000D001048AA21FFF7E9FE55217C -:1028B0000E48FFF7E5FEA0210B48FFF7E1FE2900D7 -:1028C0002000FFF7DDFEA020094B00021978FFF77A -:1028D000D7FE2000FFF7C4FF0500C0462000FFF729 -:1028E000BFFFA842F5D170BDAAFA000055F500005F -:1028F0008804002070B504000D001048AA21FFF7DD -:10290000BFFE55210E48FFF7BBFEA0210B48FFF785 -:10291000B7FE29002000FFF7B3FE8020002100024F -:10292000FFF7AEFE2000FFF79BFF0500C04620002A -:10293000FFF796FFA842F5D170BDC04655D50000FF -:10294000AAAA00000D4B0E4A58610E4B09021868E6 -:1029500002431A605A69D2B2114390225961802110 -:10296000D2051068490101431160402191629161D3 -:102970001A6805490A401A607047C04600080048B6 -:102980000000555500040048FFFFAAAA104B114A49 -:1029900010B558611068104B090203431360536966 -:1029A0000E4CDBB21943902351618021DB0518687E -:1029B0004901084318604020986218682040186058 -:1029C000D8680143D960136805490B40136010BDF6 -:1029D000000800480004004800005555FFEFFFFFC5 -:1029E000FFFFAAAA70B505000E00134B00211C883A -:1029F0002000FFF745FEAA211048FFF7C7FF552129 -:102A00000F48FFF7C3FFA0210C48FFF7BFFF0D4B96 -:102A100019786418A0B2FFF733FE31002800FFF7E1 -:102A2000B5FF2800FFF71CFF0400C0462800FFF791 -:102A300017FFA042F5D170BD3604002055550000A7 -:102A4000AA2A00008804002070B504000D000D487B -:102A5000AA21FFF79BFF55210B48FFF797FFA02105 -:102A60000848FFF793FF29002000FFF78FFF2000A1 -:102A7000FFF7F6FE05002000FFF7F2FEA842F6D1B0 -:102A800070BDC04655550000AA2A0000F0B58BB0B5 -:102A90000992012208911100354B02901F78354BA5 -:102AA0001B780493344B1D68344B1B789940344B8E -:102AB00001911868334BA9621B789A40029B102B36 -:102AC0004FD18262012421002F4B05941B6806938D -:102AD0002E4B1B7899408BB2210007932C4B1B681F -:102AE0009C462C4B1B789940002303911900029CB3 -:102AF000202C05D1049E059C1E41264236D08261C1 -:102B0000089C202C0FD1002B01D11A4C6354069C39 -:102B10002669079C264206D0164C665C059C9C40A4 -:102B20002643144C6654099C013FFFB2002C03D08D -:102B3000002F01D1019CAC616446039E0133DBB2DE -:102B4000A661A662082B05D101310A4BC9B25B5CB4 -:102B500004930023002FCAD1019B8262AB620BB0A9 -:102B6000F0BD029B112BADD18261ABE78262C7E75A -:102B7000D9040020B90400201C07002020070020F1 -:102B80000C07002010070020140700201807002061 -:102B90000407002008070020F7B501221A4B1C7813 -:102BA0001A4B19681A4B1B789A40102826D18A6252 -:102BB00001263500174B01961B680093164B1B78B6 -:102BC0009D400023AC461D0020280DD1134E019FCF -:102BD000765D1E413E4215D08A610133DBB2082B7F -:102BE00002D100230135EDB26646009F013CE4B2FC -:102BF000BE61BE62002CE7D18A62F7BD1128D7D131 -:102C00008A61D5E78A62E8E7D90400201C07002022 -:102C1000200700200407002008070020B904002036 -:102C2000F0B52C4B85B01B78019301231E00019A4F -:102C30001F009640284A1168284A8E621278029234 -:102C40001A000298824094466046254A12689062B3 -:102C5000244805782448AF4000689D408762046896 -:102C600003941C00AC402500039C25430560456887 -:102C7000019CBD4345609C401D00A54008681C00A8 -:102C8000284308604868B04348601068029999403A -:102C90008C40210001436046116051688143134814 -:102CA00051600078124A9840834012681168994335 -:102CB0001160D1680B43D36080220E4B1A70002341 -:102CC00019000D4A13700D4A99540133202BFBD182 -:102CD00005B0F0BD200700201C07002010070020D1 -:102CE0000C07002008070020040700201807002018 -:102CF00014070020DA040020D9040020B9040020C1 -:102D000010B52B4B1B78082B4ED013D8294C032B16 -:102D100039D006D8012B28D0022B2AD0254BEE2201 -:102D20003AE0062B3AD03DD8042BF7D101222021DE -:102D3000112021E00F2B28D008D81E4C0D2B1FD0BE -:102D400000220E2BEAD12021102015E0802B06D086 -:102D5000184CFF2B06D0102BE0D100221FE0FFF70C -:102D60005FFF10BDF0232370FBE72020FFF714FF67 -:102D700004E0012200212020FFF788FE8223F2E7F1 -:102D800000221100F7E70122DDE7002220211120B7 -:102D9000FFF77CFE8222074B1A70E2E70122202116 -:102DA0000800E9E71020E1E71120FFF7F5FEF1E761 -:102DB000B8040020DA040020BC234749DB038A6AF8 -:102DC000F0B513438B628B6A444A012413408B6233 -:102DD00090238022DB051868D20102431A6080220A -:102DE0009A61B0224869520302434A611A683C481A -:102DF0003C4F02401A608022D868520302430420EC -:102E0000DA601A68A2431A60DA682243DA601A6844 -:102E100082431A60DA680243DA6010221D68954323 -:102E20001D60DD682A43DA6040221D6895431D60FD -:102E3000DD682A43DA601A682B4D2A401A60802226 -:102E4000DD68D2042A43DA601A68284D2A401A60E5 -:102E50008022DD68D2052A43DA601A68244D2A40B0 -:102E600080251A60DA68ED022A43DA60214A166882 -:102E7000A6431660D6683443D4601E683E401E6088 -:102E8000DC683C40DC6080234C691B0323434B61BE -:102E9000194B1A4C1E681A4F26431E601E683E408E -:102EA0001E60DE683443DC604B691D434D6113686E -:102EB000144D2B401360D468134B1C43D46011682D -:102EC00029401160D1680B43D360136883431360BA -:102ED000D3681843D060F0BD00100240FFFFA1FF8F -:102EE000FFFFEFFFFFEFFFFFFFFFFFFBFFFFFFBF56 -:102EF000FFFFFBFF000400480008004855555555EA -:102F0000AAAAAAAAFFFFAAAA00005555F7B50D0064 -:102F1000042701924C7A000203B2A6B200932B7AE6 -:102F2000B34202D26C720020FEBD00986B68204351 -:102F3000195D80B2019B98476B681A5D094B82420C -:102F400005D01A683A431A6002229A61E7E71A68C4 -:102F50000134BA431A60DA6801363A43DA60E4B2FF -:102F6000B6B2DCE700040048F7B50D001600FF27F5 -:102F7000000203B24C7A01932A7AE3B2A24202D24F -:102F80006B720020FEBD20006A683840D15C019B56 -:102F90000134184380B2B047A4B2EDE7022907D14B -:102FA0000F4B104A984218D0904209D1180007E000 -:102FB000032906D10A4B0B490B4A98420BD1080052 -:102FC00070470429FCD1064B064A984205D00649B1 -:102FD0009042F4D0054A8842E6D11000F0E7C0469E -:102FE000380400204C0400206004002074040020F9 -:102FF00070B506000D0005243000013CFFF730FCE1 -:10300000E4B229003000FFF73BFB6D08002CF3D140 -:1030100070BDFFFF70B50400A0200D00000202216A -:10302000FFF7E6FFAA211048FFF7A2FA55210F4843 -:10303000FFF79EFAA0210C48FFF79AFAA0200C4B4C -:1030400000021978FFF7D4FF29002000FFF790FA5B -:103050002000FFF7B5FA0500C0462000FFF7B0FAE0 -:10306000A842F5D170BDC04655150000AA0A00005F -:103070008804002070B50400C0200D000002052166 -:10308000FFF7B6FFAA210D48FFF7FAFA55210C48C1 -:10309000FFF7F6FAA0210948FFF7F2FA290020000D -:1030A000FFF7EEFA2000FFF7DBFB0500C04620002B -:1030B000FFF7D6FBA842F5D170BDC04655550000BC -:1030C000AAAA0000F7B501230225294F01923A78F8 -:1030D0000091054393400421A020264E2D049BB26D -:1030E00029433268C00100F01BFE040001283DD1D5 -:1030F0003B7809209C4005437830A3B23268290010 -:10310000FF3000F00DFE040001282FD13B7832681B -:103110009C402900A3B2002000F002FE0400012818 -:1031200024D1009B180AFFF757F83B7832689C407F -:103130002900A3B200F0F4FD0400012816D16B466B -:103140001878FFF749F822003B7829009A4093B29B -:10315000326800F0E5FD0198FFF73EF83B783268F1 -:103160009C402900A3B200F0DBFD0400E0B2FEBDEC -:1031700000070020FC060020F7B501230225274F99 -:1031800000903A780191054393400421C020244ED9 -:103190002D049BB229433268800100F0C1FD040078 -:1031A000012838D109231D433B78C0209C40326858 -:1031B000A3B22900400000F0B3FD040001282AD189 -:1031C0003B7832689C402900A3B2002000F0A8FDA3 -:1031D000040001281FD1019B180AFEF7FDFF3B7870 -:1031E00032689C402900A3B200F09AFD0400012837 -:1031F00011D16B461879FEF7EFFF22003B789A4019 -:1032000093B2009A14430922E1B2090411433268CF -:1032100000F086FD0400A0B2FEBDC04600070020FD -:10322000FC0600209022D44B12031968F0B50A4323 -:103230001A6080228BB0920219681142FCD00122E0 -:1032400059680A435A608022596852020A435A60F8 -:103250008022596852030A435A6080221968520436 -:103260000A431A608022920419681142FCD011218D -:103270000224C24AC24D11605A680E398A43224361 -:103280005A608022196B0A431A638022D96912049A -:103290000A43DA61BB4BEB81BC231B689847BA4BEE -:1032A0006B82BA4B2B8262B6B94BBA4A1A60BA4AE1 -:1032B0001A60A02212015C609A600493049BDB6890 -:1032C000002BFBD1049BB54C1C60FFF775FDF02271 -:1032D000B34B09941A70049B099AB24E1A60327863 -:1032E000202311009943D2291BD1AF49AF48C97897 -:1032F000C3780224FF2904D1FF3B1C00631E9C41BC -:10330000E4B2AB4BDB78FF2B00D00324A94BDB7876 -:10331000FF2B00D00424A84BA84F1C703860D22A81 -:103320004BD03378F22B05D10022023B3370A34BF4 -:103330001B68DA703578D02D00D055E19F4E30688B -:10334000C378802B00D04FE19B4B1978FFF726FE06 -:1033500000233060C570068804004372C07AF5B25D -:103360001038152800D93DE1FDF706F95E009600FA -:10337000DE00E2003C013C013C013C013C013C011F -:103380003C013C013C013C013C013C012A0037006E -:1033900045004A004D0057002100FFF7FFFD0123C3 -:1033A0000135EDB2A542F7D3002B00D03860802262 -:1033B0003B68DA70D0233370B3E700230125F1E7CF -:1033C000E17B0F2900D930E109013143237AA2784A -:1033D000C9B26068FEF796FE0BE03C23E17B0A0071 -:1033E0009A4300D021E1237AA27829436068FEF74E -:1033F000BFFE60728FE0237AA278E17B2943E8E781 -:10340000E17B3F23EBE7227AE17BA3780092002265 -:1034100029436068FEF738FEEBE7E17B227AA37868 -:10342000294300920122F4E7E37B1E2B0BD1C0203D -:10343000B6092233F1B200029D43FFF721F9237A46 -:10344000A2788021DAE71C2B0FD1A0208121C001B6 -:10345000FFF716F98020F609F1B20002FFF710F924 -:10346000A0200021C001FFF70BF98021E27B494237 -:103470001F2A05D00D43EDB2237AA2782900A8E7D0 -:103480007022A02095430D432188C0010909C9B2CB -:10349000EDB2FFF7F5F8EFE7E37BFE2B3BD17609C2 -:1034A000F1B24748FFF764F81F21464B29405A699B -:1034B0000902D2B20A43A0786768267A80215A614D -:1034C0009022C900D20591610121FF25916203314B -:1034D00091625A692D022A4002435A61C0463A4914 -:1034E00000228C46C046614609690130090AB95478 -:1034F0005969C0B2294001320143D2B259619642A2 -:10350000F0D290230421DB0599618021C9009962E2 -:10351000012199616272294B1B6819889A7A5218A5 -:103520001A80D822DA705FE0237AA278602165E7FA -:10353000E37B002B4ED18033F6091D43F3B2029397 -:10354000FF20029B20499B004A6903401F4802401C -:1035500013434B61C0209021029BC905C000DB00D2 -:103560004A6903401A48024013434B61227AA37808 -:103570002900009200224CE7001002400020024087 -:10358000006000403CA5FFFF4108000885080008D6 -:1035900000300040CCCC000055550000AAAA000025 -:1035A000DA040020980400204C0400203804002095 -:1035B0006004002074040020950400208C04002086 -:1035C000FF3F0000000800480004004803FF00001F -:1035D000FFF90000012BB3D140217604760E314370 -:1035E0000291ADE7C323E370D84B1D78F02D00D0D6 -:1035F00063E3D74E3468E378982B00D05DE3D54B76 -:1036000020001978FFF7CAFC00233060C370E07A0D -:10361000E57010382678042800D94CE3FCF7ACFF9D -:1036200007005102DF02E702F700C423DBE7E37B78 -:10363000002B06D130008038C0B2C74A2100FFF706 -:1036400065FCE37B012B06D130008038C0B2C34A51 -:103650002100FFF789FCE37B032B06D13000803883 -:10366000C0B2BF4A2100FFF77FFCE37B042B06D1E9 -:1036700030008038C0B2BB4A2100FFF747FCE37B33 -:103680000A2B06D130008038C0B2B74A2100FFF7BC -:103690006BFCE37BFD2B15D13F20238830409B0939 -:1036A00005936B4680261B7D06430793677ABBB262 -:1036B000039333021BB20893237A039A934200D3F5 -:1036C000ACE06772E37B1E2B13D13F203040802695 -:1036D000238806439B09DBB20693677ABBB2039348 -:1036E00033021BB20793237A039A934200D3DDE09F -:1036F0006772E37B0C2B17D11F20304080260643D6 -:10370000C0202588A5216D09EDB2C001FEF7B8FFE4 -:1037100029009648FEF7B4FF677A35023D43237AC5 -:10372000BB4200D336E16772E37B1C2B3BD1A02068 -:1037300023888121DB09DBB2C0010593FEF7A0FFDE -:10374000802005990002FEF79BFFA0205421C001B4 -:10375000FEF796FF677AAA21BBB285480393FEF76E -:103760008FFF55218348FEF78BFF20218048FEF70D -:1037700087FF802333431B021BB20793237A039AEC -:10378000934200D323E18020902100026772FEF76C -:1037900077FF802000210002FEF772FF8020F021D9 -:1037A0000002FEF76DFFE37B1F2B30D1A0202188A4 -:1037B000C0010909C9B2FEF763FFAA216C48657A06 -:1037C000FEF75EFF55216B48FEF75AFF684820213F -:1037D000FEF756FF702380209E434042304340B2A4 -:1037E0000302AFB20593237ABB4200D337E18020B6 -:1037F000902100026572FEF743FF80200021000245 -:10380000FEF73EFF8020F0210002FEF739FFF4238F -:103810002288E370A37A9B1823804EE20021564849 -:10382000FEF72EFFAA215548FFF78CF85521544882 -:10383000FFF788F8A0215148FFF784F86B46187D00 -:10384000504B0799C01880B2FEF71AFF089D6368B5 -:103850003D43ADB2D95D2800FFF774F8C04628009B -:10386000FEF7FEFF06902800FEF7FAFF069B834254 -:10387000F4D163680699DA5D434B8A420FD1039A0B -:103880001968013292B20392042291431960D968F7 -:1038900001370A43DA600222FFB29A620CE704227F -:1038A00019680A431A6002229A6105E7C0200121C3 -:1038B0000002FEF7E5FEAA213448FEF7E1FEC02033 -:1038C00000210002FEF7DCFE55213148FEF7D8FE4C -:1038D000C02001210002FEF7D3FEA0212B48FEF7F5 -:1038E000CFFEC02006990002FEF7CAFE079D63685E -:1038F0003D43ADB2D95D2800FEF7C2FEC0462800A8 -:10390000FEF7AEFF05902800FEF7AAFF059B834255 -:10391000F4D163680599DA5D1B4B8A420FD1039A93 -:103920001968013292B20392042291431960D96856 -:1039300001370A43DA600222FFB29A62D3E6042218 -:1039400019680A431A6002229A61CCE698040020A2 -:103950008C04002095040020492A000875300008D6 -:10396000E5290008F5280008A1280008FFFF00004D -:10397000AA8A00005585000069FD00005555000029 -:10398000AA2A000069FDFFFF0004004855950000C9 -:10399000AAAA0000AA21D048FEF772FE5521CF48FE -:1039A000FEF76EFEA021CC48FEF76AFE6368280091 -:1039B000D95DFEF765FEC0462800FEF751FF039073 -:1039C0002800FEF74DFF039B8342F4D1A7E6A02019 -:1039D0005421C001FEF754FE079DA0213D43ADB226 -:1039E0002800FEF74DFE63682800D95DFEF748FE0B -:1039F000C0462800FEF734FF06902800FEF730FF8F -:103A0000069B8342F4D16368069ADB5DB44D934212 -:103A10000FD1039B2A6801339BB2039304239A437B -:103A20002A60EA6801371343EB600223FFB2AB62FE -:103A3000A4E6A0208121C001FEF722FE8020059986 -:103A40000002FEF71DFEA0205421C001FEF718FE63 -:103A500004232A6813432B600223AB618EE6059E84 -:103A6000A0212E43B6B23000FEF70AFE6368300094 -:103A7000595DFEF705FEC0463000FEF7F1FE0390EB -:103A80003000FEF7EDFE039B8342F4D16368039997 -:103A90005A5D934B8A420DD104211A6801358A433D -:103AA0001A60DA6801370A43DA600222EDB2BFB267 -:103AB0009A6298E604211A680A431A6002229A61FF -:103AC00091E6E37B002B04D1864A21003000FFF70A -:103AD0004BFAE37B012B04D1834A21003000FFF72E -:103AE00043FAE37B022B04D1804A21003000FFF728 -:103AF0003BFAE37B042B04D17D4A21003000FFF721 -:103B000033FAE37B0A2B04D17A4A21003000FFF715 -:103B10002BFAE37B0B2B04D1774A21003000FFF70F -:103B200023FAE37BFE2B00D071E621887348490914 -:103B3000C9B2FEF71DFDAA217148657AFEF7D4FCD3 -:103B400055217048FEF7D0FC6D482021FEF7CCFCD3 -:103B50001F2030400302AFB20593237ABB420DD23F -:103B6000657290210020FEF7BFFC00210800FEF7DF -:103B7000BBFCF0210020FEF7B7FC48E6059EA02123 -:103B80002E433000FEF7B0FC63683000595DFEF74D -:103B9000ABFCC0463000FEF7CFFC03903000FEF7D0 -:103BA000CBFC039B8342F4D1636803995A5D4C4B71 -:103BB0008A420DD104211A6801358A431A60DA68F5 -:103BC00001370A43DA600222EDB2BFB29A62C4E75B -:103BD00004211A680A431A6002229A61BDE7300084 -:103BE0006030494A2100C0B2FFF7BEF90FE6E37B1F -:103BF000042B06D130008038C0B2444A2100FFF7C0 -:103C0000B3F9E37B052B04D1404A21003000FFF7D4 -:103C1000ABF9E37B062B06D130008038C0B23C4ABA -:103C20002100FFF7A1F9E37B072B04D1384A2100DB -:103C30003000FFF799F9E37B002B1CD1FF22803382 -:103C40001E4323882648DB09DBB29D0041692A40D8 -:103C5000304DDB0029400A4342619022C020D2054A -:103C6000C000516903402C4801400B4353612100BF -:103C70003000FEF71FFBE37B012B00D0C7E5238854 -:103C8000174A5B04580E40230343FF209B005169F1 -:103C90000340204801400B4390215361C9054B6903 -:103CA0001D4A30001A4080239B0013434B612100C2 -:103CB000FEF700FBABE5C323E370184B1B78F02B3A -:103CC00001D1FFF708FB832B01D0FFF704FBFFF7BF -:103CD00017F8FFF700FBC04655D50000AAAA000060 -:103CE000000400483D26000815300008E5270008BC -:103CF000F925000871270008ED260008FF3F0000A5 -:103D0000AA0A000055050000812600089924000831 -:103D10004924000803FF0000FFF90000DA04002036 -:103D2000F0B5474680B4061C081C000C102801D5CD -:103D3000162700E004270007000F8046FF200140FF -:103D40005468251C1D439C43F60313850AD5C046C1 -:103D5000C046C046C046C046C046C0469480138395 -:103D6000958002E0012000F081F801390AD4381C66 -:103D700000F07CF8C046948013839580C046C0460E -:103D80007600E2E7381C013800F070F89480138365 -:103D90009580042000F06AF8108A184001D0FF20B6 -:103DA00061E0C046C046C046C046C046C04694809A -:103DB0009580108A184055D001200226B04552D077 -:103DC0000921168A1E40FCD1012000F04FF8948092 -:103DD000C0469580C04603E0C046C046C046C046C7 -:103DE000948095807600108A1840EFF300804000A0 -:103DF000C00F0643381C023800F038F894809580D4 -:103E0000022000F033F80139EAD5138594800120AF -:103E100000F02CF813839580301C802102239940F8 -:103E20000E401BD1002341085E4149085E4149080C -:103E30005E4149085E4149085E4149085E414908C2 -:103E40005E4149085E4149085E41760808D3400852 -:103E5000FF21084048400002013004E00E2002E04B -:103E6000092000E0002080BCB846F0BD0138FDD13B -:103E70007047C04603685A0003D45B005B08C01853 -:103E80007047802212061343F9E7C046F0B5574643 -:103E90004E46DE464546E0B5814683B0924600294F -:103EA00025D04B1E9B46002701935B46FB18DC0F79 -:103EB000E4184B466410E5005E193000FFF7DAFFA6 -:103EC000019B8046A3420BD0280008304844FFF7EE -:103ED000D1FFD04506D80138504509D2671CE4E728 -:103EE000504505D9A74202D0631E9B46DDE7002658 -:103EF000300003B03CBC90469946A246AB46F0BDAC -:103F0000012809D0022805D0002801D000207047E0 -:103F10000248FCE70248FAE70248F8E7F5450008DE -:103F20000D4600080146000830B5234B83B005005C -:103F30008C1E002B26D001A9200000E000BF002825 -:103F40001CD001992200FFF7A1FF041E16D0FFF735 -:103F500091FF6368A864012B2AD0201D002B23DB6E -:103F6000FFF788FF0023E8642B650368002B0FDB55 -:103F7000FFF780FF2861002003B030BD0023092037 -:103F80002B61F9E70D480E49091AC9100191D9E7CB -:103F90001801000FFFF7B4FF2861431E9841082362 -:103FA000404298430930E7E70123E8642B65DCE7EA -:103FB000002305202B61DFE700000000F04E000821 -:103FC000C04F0008036810B50400DA0705D4483074 -:103FD0009B070ED500F06CFC23685A070ED51A0714 -:103FE00013D5DB0604D42000D130FF3000F06CFC88 -:103FF00010BD00F059FC23685A07F0D42000D030DF -:1040000000F05AFC23681A07EBD420005130FF302F -:1040100000F056FC2368E4E70368002B00D01B186F -:1040200018007047092070477047C04670B50400FB -:104030000D0008E02B6C2A00636121000120236938 -:104040009847082807D1296C2000FFF76DFF00284A -:10405000F0D000F083FE0728FBD10020296CFFF789 -:10406000E3FF281D00F00AFCF0B5CE46474680B5B8 -:10407000C3682E4C9846A544836906001400043199 -:10408000402205A8994600F071FE002304AD049378 -:1040900023E0F0222B6C5200736129007CA800F011 -:1040A00065FE7CAA31003369200098478A9B07008F -:1040B0006B6403934B46009501933200330021005B -:1040C0000120C04700281FD1F0227CA952002800FF -:1040D00000F04CFE0024082F1FD1296C3000FFF7A0 -:1040E00023FF611E8C41070009340028D1D0AB6B3F -:1040F00010216B644B46214301930095330032003D -:104100000120C047002800D009273800F5239B0074 -:104110009D440CBC90469946F0BD072FF4D1200079 -:10412000296CFFF781FF05A800F0A8FB2CFCFFFF1E -:10413000406C704770B5CB6BFAB00B6404000E0096 -:104140004022043103A800F011FE01235B420293D8 -:1041500006E002AA210023699847050008280AD131 -:10416000129B200019000193FFF7DEFE0028F0D01B -:1041700009207AB070BD02A8FFF724FF062DF7D101 -:1041800031002000FFF752FF10B58261DA6BC16089 -:104190001A6419000022FFF767FF10BD436970B56C -:1041A0000B64C36804000D00002B15D10A002369BD -:1041B000010002209847072807D0082803D12900CA -:1041C0002000FFF733FF00F0C9FD0020296CFFF746 -:1041D0002BFF281D00F052FB0122FFF745FF00F0E6 -:1041E000BDFDC046C36810B5002B05D0CB6B0022C7 -:1041F0000B64FFF739FF10BDFFF79CFFFBE7C046DC -:104200007047C046836810B5002B02D00100012022 -:10421000984710BD012906D0002906D00339022095 -:10422000012900D970470120FCE7002B08D10F2A93 -:1042300006D8920082185268009B00201A60F1E7AD -:104240000220EFE700B585B003AB0A000093002120 -:104250000023FFF7DFFF039805B000BD012906D05A -:10426000002906D003390220012900D97047012016 -:10427000FCE7002B08D10F2A06D8009B92001B6890 -:10428000821853600020F1E70220EFE700B585B007 -:1042900003AB039200930A0000230021FFF7DEFF27 -:1042A00005B000BD70B51A4CD36BA544136406006D -:1042B0000D0019A8111D402200F058FD01235B429A -:1042C000189314E00C2118A802AAFFF7DFFF2900B9 -:1042D00018A8B047002812D1069B18AA02A90830D6 -:1042E00001939847040005280AD0092807D0289B85 -:1042F00002A819000193FFF717FE0028E2D0092455 -:1043000018A8FFF75FFE200090239B009D4470BD1E -:10431000C0FDFFFFF0B5DE4657464E464546E0B5C8 -:10432000160003220D0011008BB01F000193EB6CEF -:1043300001401C1D009107A91B688B460894002FA3 -:104340006BD01A0C1B045946079302230B72FD33E2 -:1043500013409B004A72E418009B022B00D1AC6B07 -:104360002B6DDB0747D400230593083303400293EA -:104370002768002F00D112E1019B022B49D06388EE -:10438000278898460434012340469A469843AB6CEC -:104390000F21994681443000FFF754FF00218145E9 -:1043A00006D83900534699434944884289414942D5 -:1043B00043465A0002231340012217403B43012B7E -:1043C0003AD0002B30D0022B1BD12368009A5F001B -:1043D0007F08002A67D1002906D0029A002A00D15E -:1043E0007CE0002F00D1A9E0002B00DA0434013773 -:1043F000BF00E419BCE75946300000F00BFB002871 -:1044000010D009200BB03CBC90469946A246AB4662 -:10441000F0BD636808349846B5E71B0207935B4616 -:104420001A8199E70820EDE7009B002B02D00029B4 -:1044300000D08DE004349BE7009B002B1AD10029AB -:1044400016D02368DF0F63689A1CDAD02A0058322E -:104450000692013300D1BDE0201DFFF7DDFD06AB64 -:1044600001003A00280000E000BF002800D082E0F0 -:1044700008347DE70D2130002F6AFFF7E3FE874205 -:10448000F6D1AB6A9C42F3D12000FFF7F3FC0F2179 -:1044900002003000FFF7FAFE30002A000021FFF78B -:1044A000F5FE0720AEE72B6A0D2130009846FFF796 -:1044B000C9FE804501D0236896E7AB6A9C42FAD1D9 -:1044C0000023EB6204332B63231DAF626B6323680D -:1044D000002B00DA86E00123059388E7002F2DD01A -:1044E00058239C46AC4463460393231D99460023FE -:1044F000984606AB220004933B004C464746B24622 -:1045000098462E00914603E004342F00454542D0E2 -:10451000039B20000693FFF77FFD049B0100002210 -:1045200030007D1C00E000BF0028EDD04346B846B7 -:1045300035004C4656461F009845BCD10D21300031 -:10454000FFF780FE069B28626B62AC62062059E78B -:104550002000FFF78FFC04340700AC63280000E064 -:1045600000BF002800D14CE730003A000F21FFF7D0 -:104570008DFE072046E707000D213000FFF762FEA1 -:104580002862022F2BD1069BEB622B002C336B622F -:10459000AC62062036E735004C465646CEE7594613 -:1045A000300000F037FA002800D02AE7059B002BE6 -:1045B00000D137E70F213000FFF744FE0E21020043 -:1045C0003000FFF763FE3000094A0F21FFF75EFE5F -:1045D000072017E70D213000FFF734FE2862069B05 -:1045E0006B62D5E738000130800020184DE7C046E7 -:1045F0000000000010B50023FFF78CFE10BDC04680 -:1046000010B50123FFF786FE10BDC04610B502238A -:10461000FFF780FE10BDC046F0B5CE46474680B5D8 -:104620000500C3B014001E00012955D000294BD04D -:10463000032922D0042949D1002B47D1102A45D87B -:10464000102203681A4200D0F1E020AF380000F0D9 -:104650003DF900230120A96B02009A40144203D0C7 -:104660000E689A00BE5004310133042BF4D1380097 -:10467000A96300F029F9002029E0032B26D11404B6 -:10468000230C160C9846F318102B1FD80822036829 -:104690001A4200D098E020AF380000F013F94246EB -:1046A000AB6BF6001C00002A08D0D400F21A1C19CB -:1046B000BA181968D15004339C42FAD1AC6338005F -:1046C00000F0FEF8002002E0002B24D0022043B0CE -:1046D0000CBC90469946F0BD130C14049846240C6B -:1046E000012E2ED0052EF1D11B19202BEED84246DB -:1046F0000F2A70D9A146002C7ED1AA6B4346AA632B -:104700000F2B00D89AE04B46002BDBD0684600F018 -:10471000D3F80020DBE700231004A96B000C01365E -:1047200032009A40104204D00F689A00AA185760CD -:1047300004310133102BF3D10020A304C7D4A963A3 -:10474000C5E71B19102BC1D843460F2BBED82B68C9 -:104750001E4206D00322280093432B60483000F00D -:10476000A5F820AF380000F0A1F8AA6B002C24D0E7 -:104770004346DB00FF180023994664000023A40091 -:10478000D158F95004339C42FAD14B4612196F4666 -:10479000002B0FD04046102800D210204B46D900E5 -:1047A00000231038C0003818D458C450043399423C -:1047B000FAD15218012EA1D120AF04323800AA63D9 -:1047C00000F072F8002082E7934303605130FF301D -:1047D00000F078F85FE7102B3BD910225242914647 -:1047E00099442B68194208D0022228008B431343B6 -:1047F0002B60483000F05EF82B6804221A4221D169 -:1048000043460F2B03D820AF380000F053F86F4613 -:10481000380000F053F810244346AA6BE41A002C29 -:10482000B8DD434620AFDB006400FF18A6E79343E2 -:104830000360D130FF3000F049F806E720A800F00F -:1048400037F860E7280093432B60D03000F036F84B -:10485000D6E72B680B4207D0022228008B43134374 -:104860002B60483000F026F820AF380000F022F826 -:10487000A146AA6B002C00D07AE73FE7011C343137 -:1048800038C9043B9C461D60A646011C20313CC92A -:1048900090469946A246AB46011C0831FCC94168C6 -:1048A0000068E54600BDC0467047C0467047C04638 -:1048B0007047C0467047C0467047C0467047C04604 -:1048C0007047C0467047C0467047C0467047C046F4 -:1048D00001B401A801B585B0FFB408A841464A4615 -:1048E00053465C4665463EC001A83EC80F980090FE -:1048F00000230CB401A9FFF71DFC109B12B0184750 -:1049000001B401A801B585B0FFB408A841464A46E4 -:1049100053465C4665463EC001A83EC80F980090CD -:1049200000230CB401A9FFF739FC109B12B0184703 -:1049300001B401A801B585B0FFB408A841464A46B4 -:1049400053465C4665463EC001A83EC80F9800909D -:1049500000230CB401A9FFF745FC109B12B01847C7 -:1049600001B401A801B585B0FFB408A841464A4684 -:1049700053465C4665463EC001A83EC80F9800906D -:1049800000230CB401ABFFF7FFFB109B12B01847DC -:1049900001B401A801B585B0FFB408A841464A4654 -:1049A00053465C4665463EC001A83EC80F9800903D -:1049B00000230CB401AAFFF775FC109B12B0184736 -:1049C000027A0300002A0BD1427A002A0FD0013A62 -:1049D00042724268111D416003211268017202E0B7 -:1049E000013A02720268100E12021A607047B0207B -:1049F000FCE7C04600B585B003AB00930C22002352 -:104A00000021FFF707FC039805B000BD10B5FFF7C4 -:104A1000F1FF10BDF0B557464E464546DE46002331 -:104A2000E0B587B003930F339846083B994680233F -:104A30001B0306000F009A463800FFF7C1FF040071 -:104A4000B02800D1C3E003062AD5030042469343B1 -:104A5000DBB2802B00D171E0902B3DD0A02B00D198 -:104A600085E0B02B50D0C02B00D196E003004A4621 -:104A70009343DBB2D02B0AD15346024001321A4392 -:104A8000052301213000FFF7C7FD0028D4D00924F9 -:104A9000200007B03CBC90469946A246AB46F0BD0C -:104AA000FF23820013401D1D05AB9B4600930D2282 -:104AB000002300213000FFF7ADFB630620D4059BE7 -:104AC0009C46654405955B460D220093002100231A -:104AD0003000FFF7C3FBAFE7833B03400D2BD6D07D -:104AE00005AD02400095002300213000FFF792FB46 -:104AF000009500230D2200213000FFF7AFFB9BE75C -:104B0000059B5D1B0595DEE7B12874D0B22800D166 -:104B1000CFE0B32800D184E0FC230340B42BB6D00F -:104B20004A465346024001321A4301210123300014 -:104B3000FFF772FD002800D17EE7A8E704023800E5 -:104B4000FFF73EFF802520432D02A8429FD004019D -:104B50000005020C002300213000FFF75DFD002856 -:104B600095D12C4200D167E70123039364E7FF232B -:104B70004A461B011900824311410A001A400307EB -:104B800002D58023DB011A43002300213000FFF708 -:104B900043FD002800D14FE779E7C6284CD0C7284D -:104BA0005ED003004A469343DBB2C02B6DD0C828C9 -:104BB00072D0C92800D06AE73800FFF701FFF02360 -:104BC00002031B03134042460240013257E7039B96 -:104BD0000024002B00D05BE705AD00950E220021DC -:104BE0003000FFF717FB009500230F220021300053 -:104BF000FFF734FB4CE73800FFF7E2FE002800D156 -:104C000045E7030042469343DBB2002B00D03EE76A -:104C1000020000213000FFF7FFFC002800D10BE765 -:104C200035E73800FFF7CCFEF02302031B031340E7 -:104C300042460240013277E73800FFF7C1FEF02319 -:104C400002031B0313404246024001321A4303236E -:104C500003213000FFF7E0FC002800D1ECE616E766 -:104C60003800FFF7ADFE021E00D110E703004146F9 -:104C70008B43DBB2002B00D009E704213000FFF7A3 -:104C8000CBFC002800D1D7E601E74346A0221C4018 -:104C9000013412032243DAE73800FFF791FE43465E -:104CA00002009A43D2B2103218401203013002437C -:104CB000E6E605AB00939B460D2200230021300061 -:104CC000FFF7A8FA3800FFF77BFE030618D57F250B -:104CD000B03C059B2840A0409C46604405903800AD -:104CE0000734FFF76DFE0306F3D481217F2389008B -:104CF00003408C46A340059A62449B180593E2E664 -:104D00000224F2E7030000B5DB6C85B05A680800A6 -:104D1000120201921A0001A908324A6003220A72A3 -:104D2000DB794B72FFF776FE05B000BD10B5FFF7DB -:104D30006DFE806C10BDC04610B5FFF767FEC26CFB -:104D4000D3799B000833D01810BDC04610B500F0D1 -:104D500005F8C04610B5FFF7F9FFC04610B50620AC -:104D600000F076F8012000F0A5F8C046F0B50F2A53 -:104D700037D90D0005430C000300AD0735D11500F0 -:104D8000103D2D092E013618103627681F60676800 -:104D90005F60A7689F60E7681034DF601033B3423C -:104DA000F3D10F2401352D01491914404519032C65 -:104DB0001DD90023CE58EE500433E61A032EF9D83D -:104DC0000323043CA4080134A4001A402D19091936 -:104DD000002A05D00023CC5CEC5401339342FAD175 -:104DE000F0BD0500002AF5D1FAE70500F2E7220040 -:104DF000F8E7C04670B505000C001F2922D8B7237C -:104E00009B00C358002B0ED08A009B181A68002AFA -:104E100009D0012A10D0511C10D0002120001960A7 -:104E20009047002070BD280000F030F822000100FB -:104E3000280000F017F8F5E70020F3E716230360D9 -:104E40000120EFE71623036001204042EAE7C04655 -:104E500010B5034B01001868FFF7CCFF10BDC0462A -:104E600000000020002370B5074C05000800110069 -:104E7000236000F017F8431C00D070BD2368002B9E -:104E8000FBD02B60F9E7C0462407002010B500F0E6 -:104E900001F810BD58220120014B40421A607047B2 -:104EA0002407002058220120014B40421A6070471D -:104EB00024070020FEE7C046F8B5C046F8B5C04656 -:104EC00074B20181B0AB308000000000800A018123 -:104ED000B0B0ABF0000000003F020181B0AB308009 -:104EE0000000000080060181B0B0ABF000000000BF -:104EF00030EEFF7FB0B0B0807CEFFF7F010000009C -:104F000028F0FF7FB0A90280BCF0FF7FB0B0A8807E -:104F100008F1FF7F0100000014F1FF7FB0B0AA800C -:104F200048F1FF7F9CFFFF7F08F2FF7F0100000038 -:104F300004F2FF7FAA3F398050F2FF7FB0B0A88013 -:104F40005CF2FF7FB0B0AA809CF2FF7FB0B0A88077 -:104F5000B0F2FF7F01000000ACF2FF7FB0B0A8808C -:104F6000B4F2FF7F010000003CF3FF7FAA0FB28084 -:104F7000A4F3FF7F58FFFF7F7CF6FF7FB0B0A880CF -:104F800098F6FF7F54FFFF7FF4F8FF7F01000000D9 -:104F900064FAFF7F0084048074FAFF7FB0B0A880B9 -:104FA00074FAFF7F40FFFF7F5CFDFF7F0084048079 -:104FB0007CFDFF7FB0B0A88094FDFF7F0100000062 -:104FC000080000200000000000000000F4020020A3 -:104FD0005C030020C403002000000000000000006B -:104FE00000000000000000000000000000000000C1 -:104FF00000000000000000000000000000000000B1 -:1050000000000000000000000000000000000000A0 -:105010000000000000000000000000000000000090 -:105020000000000000000000000000000000000080 -:105030000000000000000000000000000000000070 -:105040000000000000000000000000000000000060 -:105050000000000000000000000000000000000050 -:105060000000000000000000000000000000000040 -:1050700001000000000000000E33CDAB34126DE6DD -:10508000ECDE05000B000000000000000000000046 -:105090000000000000000000000000000000000010 -:1050A0000000000000000000000000000000000000 -:1050B00000000000000000000000000000000000F0 -:1050C00000000000000000000000000000000000E0 -:1050D00000000000000000000000000000000000D0 -:1050E00000000000000000000000000000000000C0 -:1050F00000000000000000000000000000000000B0 -:10510000000000000000000000000000000000009F -:10511000000000000000000000000000000000008F -:10512000000000000000000000000000000000007F -:10513000000000000000000000000000000000006F -:10514000000000000000000000000000000000005F -:10515000000000000000000000000000000000004F -:10516000000000000000000000000000000000003F -:10517000000000000000000000000000000000002F -:10518000000000000000000000000000000000001F -:10519000000000000000000000000000000000000F -:1051A00000000000000000000000000000000000FF -:1051B00000000000000000000000000000000000EF -:1051C00000000000000000000000000000000000DF -:1051D00000000000000000000000000000000000CF -:1051E00000000000000000000000000000000000BF -:1051F00000000000000000000000000000000000AF +:1013C0000240884803401A434A610023FFF7A3FA0A +:1013D0000023FFF7A0FA8D23FFF79DFA8D23FFF777 +:1013E0009AFA8D23FFF797FA8D23FFF794FA8D234E +:1013F000FFF791FABD78BB88042D00D1C4E10DD868 +:10140000012D00D195E0002D00D184E0022D00D106 +:10141000F2E0032D00D173E1962580E0092D00D183 +:1014200048E120D8052D00D14EE1072DF4D101F07F +:10143000DDFD90230121DB051A6840200A431A6074 +:101440001022996119680A431A6004229A61196886 +:10145000014319600821996119680A431A60022240 +:101460009A619861DEE00A2D00D118E1802DD3D178 +:101470009023012540218026DB05657099621A685A +:10148000760132431A60C04657481C691A680C40FE +:1014900002401A60DA680240DA60F022002C37D18C +:1014A0001A6802401A60DA683243DA601A699446B0 +:1014B0001A690192C0461A690292C046C0461A696A +:1014C0000392C046C046C0461F69C046C046C046DB +:1014D000C0461E691A6802401A60DA681040D86077 +:1014E000634622000B4213D1019B2A000B420FD10D +:1014F000029B02320B420BD10B00039903321942BB +:1015000006D104321F4203D1D6321E4200D0D13A56 +:10151000364B9A70CCE0364A137001F067FD334CBD +:101520002570344B0098A2B2240C5A819C8105B0DE +:10153000F0BD01F05BFD9023DB051A682A431A60B9 +:1015400080229D61196852030A431A608022042197 +:10155000D2009A621A680A431A6002229A611868D5 +:101560000E3202431A604022996119680A431A60D8 +:1015700008229A6180231349DB024A690F4D134305 +:101580000D4A4B6113682B401360D4680C4B1C430D +:10159000D460106828401060D06800250343D360F1 +:1015A00080234A691B0313434B61074B074A1968A1 +:1015B0000A431A605D61B2E700040048FFFFAAAA6F +:1015C000000055550010024000080048555555557B +:1015D000AAAAAAAA50550000AFAAFFFFFFFFEBFF7F +:1015E00003FF0000FFF90000FFEFFFFFFC060020F3 +:1015F000040700200060004001F0F8FC9023012166 +:10160000DB051A680A431A601022996119680A43B7 +:101610001A60042240219A611A680A431A6008225B +:101620009A6199618022196852010A431A608022E6 +:10163000CD48D2024169CD4E0A43CD4942610A6884 +:1016400032400A60CD68CB4A1543CD600C68344007 +:101650000C60CC682243CA60802244691203224392 +:101660004261C54AC54C15682C430025146055617C +:10167000C0224469D202224342610868C04A024340 +:101680000A60A0221868520302431A604A69BD48E2 +:1016900002404A615A69BC490A405A613FE79023B7 +:1016A0008022DB051968D2010A431A6080229A6100 +:1016B000002534E790238022DB051968D2010A4314 +:1016C0001A6080229A62F3E701F090FC90230121D6 +:1016D000DB051A680A431A601022996119680A43E7 +:1016E0001A60042240219A611A680A431A6008228B +:1016F0009A6180221868520102431A60996139E7A1 +:10170000DBB2022B21D00025032B00D107E7973550 +:10171000012B00D003E7802200259349120348697A +:1017200002434A61944A116899431160D168194390 +:10173000D160516819435160936111680B43136084 +:10174000924B1D70924B1A60E9E6B023864A5B0308 +:10175000516940200B4353619022D20513688D4993 +:101760000B4013608023D1685B011943D16051683D +:1017700001435160906111680B4308211360834B52 +:101780001970834B1A6093E7DBB29825012B00D0C8 +:10179000C5E69022804BD2051A6006220A217F4BB3 +:1017A0001A70734B7E4A13607E4A11707E4A013173 +:1017B00013607E4A11707E4A13600C227D4B1A70B2 +:1017C000B023694A5B0351690B43536101F042FB4B +:1017D0006EE7BE78F978BD880E2E00D1FCE030D8D7 +:1017E000072E00D104E116D8022E00D198E007D8C8 +:1017F000002E00D186E0012E00D18DE0A02684E0ED +:10180000052E00D1DAE000D981E0042EF6D12800BF +:1018100001F018FD7EE00A2E00D1D9E008D8082E8C +:1018200000D1E9E0092EE9D1280001F027FA71E0A2 +:101830000C2E00D1E8E000D8D6E0280001F0ECF949 +:1018400068E0222E70D017D8112E00D1D8E008D829 +:101850000F2E00D1C4E0102ED0D1280001F03AF9AB +:1018600058E0202E00D1ADE000D9AEE0122EC5D157 +:10187000280001F0F5F84DE0822E00D1FBE032D8CF +:10188000802E00D1C4E000D9EEE0232EB6D14A4B21 +:101890009D4202D880231B021D43902700F07EFD4D +:1018A0006B1CFF339BB20193FF05334B304E5D61E0 +:1018B0003268304B00021343FF22336073691340D8 +:1018C00018437061C0460823BB6200F067FD08231F +:1018D0000135BB61019BADB29D42E6D13368234A1D +:1018E0001340336016E0852E00D1CAE0862E00D169 +:1018F000CCE0842E00D081E701232800637000F043 +:10190000FBFEB6E0280001F05BF9267009E628002E +:1019100001F032F90026F8E7280000F009FFF9E7A6 +:10192000280000F08DFFF5E7134B02225D61902344 +:101930000F48DB059A6206680E4A090232430260CC +:1019400042692DB2D2B211434161002D01DA012268 +:101950009A62C046C04601229A6192189A61036851 +:10196000024A13400360D5E700100240FFFFAAAA15 +:1019700000040048000055550008004855555555CD +:101980005055000003FF0000FFF900000C07002085 +:1019900008070020FFEFFFFF20070020240700209A +:1019A000180700201C070020280700202C07002013 +:1019B0001007002014070020FF1F0000280000F07F +:1019C00073FEA7E7CC4B1D70A4E7CC4B1D80A1E7AD +:1019D000280000F013FF9DE7280001F075FC99E74F +:1019E000280001F041FC95E7280000F0DBFF91E7BB +:1019F000280001F099F88DE7280000F0DDFE89E766 +:101A0000280000F095FF85E7280000F04FFF81E7F0 +:101A1000012190236170DB051868B94E30401860D1 +:101A2000DA6802203240DA608022D2009A6299613C +:101A30009861B4484561C046C0462DB29A61002DF8 +:101A400000DA9962C046C046C046C046C046C0469D +:101A500090228021AC4BD205C9001B699162012103 +:101A60001B0A9161A37055E701232800637000F001 +:101A7000D7FFA0704EE701232800637000F080FEBE +:101A8000F7E7012363709C4B1B78EBE7022363703D +:101A90009A4B1B88A3701B0AE3703BE7B878F97870 +:101AA000BD88AA23062801D9FEF735FFFEF74AFDB7 +:101AB000042A1B2226322000FF209349AB004A69EA +:101AC00003409248ED00024013434B619022C02135 +:101AD000D205C90053690D408D490B401D43556126 +:101AE0000023FEF718FF0022280000F06FFCF7E744 +:101AF0000122F9E7280000F0AFFDF1E7280000F02F +:101B000083FDEDE7012300216370280000F08EFCC7 +:101B1000A070E5E701216170F7E7BA78BB88002A79 +:101B200029D0012A44D17748F9784361C020C00107 +:101B30001B1878489BB2834202D89023DB059A6237 +:101B4000714B754A1868090202431A605A69D2B289 +:101B50000A435A6190220821D2059162C046C046CC +:101B6000C0469161073991611A686C490A401A6050 +:101B70000023FEF7D0FE0121624A6170536190227A +:101B80000420D2059062C020C0011B1861489BB29E +:101B9000834200D89162C046C046C046C04601217B +:101BA000594B1B6991611B0A03319161A370DFE7F7 +:101BB000AF23FEF7B0FEBA78002A07D00023012A2F +:101BC00001D1FEF7A8FEB033FEF7A5FE0123637036 +:101BD000A933A3701300FEF79EFEBA78002A07D03F +:101BE0000023012A01D1FEF796FEB133FEF793FEE2 +:101BF00001236370A933A3701300FEF78CFEBA783B +:101C0000002A07D00023012A01D1FEF784FEB23357 +:101C1000FEF781FE01236370A933A3701300FEF762 +:101C20007AFEBD78FA78B988112D00D193E007D8F3 +:101C3000012D4FD0002D0FD0022D75D0822664E6E5 +:101C4000212D00D17DE0222D00D180E0122DF5D193 +:101C500002231020637081E00127314B04261B789A +:101C600010209F40FA432F4B01921D68AF626B68B2 +:101C700013406B6000F087FBAF616B683B436B60A8 +:101C8000FA20400000F07FFBFA20AF626B68019AF7 +:101C9000400013406B6000F076FBAF616B68013E63 +:101CA0003B43B6B26B60002EEAD10436FA2000F056 +:101CB0006AFBAF626B68019AFA2013406B6000F018 +:101CC00062FBAF616B68013E3B43B6B26B60002EB6 +:101CD000ECD11AE6124A134B12781E689540B56291 +:101CE00073681020AB43736000F04DFBB5617368FF +:101CF0002B4373600EE6C0468804002036040020A3 +:101D0000FFEFFFFF000800480004004803FF000049 +:101D1000FFF90000FF1F000000005555FFFFAAAAB1 +:101D20000C070020080700200123BF4A63701278C7 +:101D3000BE499340BE4A9BB21268002002F000F9EF +:101D400097E601230020637001F0E6FA91E6012393 +:101D500010206370F8E702230020637001F036FB67 +:101D60006080D7E5BB78BA88042B1DD007D8022B3A +:101D70001FD024D8012B12D08723FEF7CCFD072BD0 +:101D800026D003D8052BF7D1AA4B16E0082B24D078 +:101D9000802BF1D101F05EF80023FEF7BCFDA64ACE +:101DA0001278A2706370F7E7A44B1B78A37001232D +:101DB000F8E7A14B1A708322A04B1A70ECE79E4BF8 +:101DC0009E4D1A7083232B7001F0B4F82B78EDE749 +:101DD0009B4B1A70120A5A70DEE7994B1A78A27060 +:101DE0005A78E2709A782271DA7862711A79A2715F +:101DF0005B79E3710623D5E7B878F9780238BA88B9 +:101E00008A23092801D9FEF786FDFEF79BFB050A08 +:101E100010151C232F3B40488A4B1A800023FEF7E5 +:101E20007AFD884B1B881B0413439847F6E7FEF79F +:101E30009FFC0300FEF76FFD8348036899B213040B +:101E40000B430360EAE780490B681B0C1B04134338 +:101E50000B60E3E7042363707B4B1B681A0AA370D3 +:101E6000E2701A0C1B0E22716371D7E702236370B4 +:101E70005300754A1168CB181A88A2701B881B0A78 +:101E8000E370CBE7704B49001B68CA52C6E76E4946 +:101E900053000A68D31802220B606270ECE76A4BA9 +:101EA00049001868411819600A80B7E78823FEF7CF +:101EB00032FDBB78BA88022B09D0032B0ED0012B40 +:101EC00010D11304614A13600023FEF724FD5F491B +:101ED0000B681B0C1B0413430B60F5E701225B4BE3 +:101EE0001A60F1E78323FEF716FDBA781300303B42 +:101EF0002F2B1AD8F878032814D8FEF723FB1618CE +:101F00000211534B512A00D17EE028D8312A58D0F3 +:101F10000FD8002A38D0302A4CD0B423FEF7FBFC6F +:101F20004C4BEFE7B523FEF7F6FC4B4BEAE74B4B88 +:101F3000E8E7332A53D04BD3502AEED1C022D20047 +:101F400022801A7AA270DA78E2705A7A22719A7A2A +:101F500062719A78A2715B7CE371FFF7E2FA7F2AE3 +:101F600000D9A8E0702A00D380E0602A3CD0612A22 +:101F700043D0522AD1D180221B889200A3701B0A21 +:101F80002280E370FFF7CDFAFF21354BD1540132A7 +:101F9000102AFBD10123304A5B4253802F4A5380E1 +:101FA0002B4A53802B4A538001222E4B1A70002358 +:101FB000FEF7B1FCBA88110AD9721A730023FEF732 +:101FC000AAFCBA88110A59739A730023FEF7A3FC7E +:101FD000BA88110AD9731A740023FEF79CFCBA88D8 +:101FE0005A740023FEF797FC80235B002380BB8894 +:101FF0001B4AD35CA370FFF794FA80235B00238015 +:10200000194B1B68DB78F5E7C022D2002280DA7A10 +:10201000A2701A7BE2705A7B22719A7B6271DA7B22 +:10202000A2711B7C98E7C0460C0700200400020048 +:1020300008070020E1040020C0040020E204002082 +:10204000C104002034040020300400209804002043 +:102050006004002074040020380400204C04002098 +:10206000E3040020A00400208C040020604B38789A +:102070005C68604B1968CB787F2800D998E05E488F +:10208000009D0570002B0FD000200090982B00D1F0 +:1020900094E004E000200090D02B00D18EE0574B5C +:1020A00010301870FF2304E0554B19609023CB705B +:1020B0006F33009382E00720104003281AD8FEF700 +:1020C00041FA1C1E02174F4B802A01D2FFF729FA52 +:1020D000872A16D97032D2B2072A01D9FFF721FA1E +:1020E00000222270FA789A72BA881A80FFF719FAD9 +:1020F000454BE9E7B523FEF70EFC3D4BE4E7434BC8 +:10210000E2E7B888F978C6B28D19BE22102D2CDC12 +:102110000432002929D0DD78033AFF2D25D19D789E +:102120000132FF2D21D10022D7B2B94220D8384D3B +:102130000022AC464F01013F1F727701000A67443D +:102140009870DA705A729A721A80DA721A735A7325 +:102150009A73DA731A745A745F602E4B9D19A854DF +:102160000132D3B28B42FAD300222270FFF7D9F9A1 +:102170000132B718274D013FEF5DFF2FD4D0C122A8 +:10218000F3E7BB78002B04D0402B08D0D223FEF716 +:10219000C2FB2370BA88194B1A70FFF7C2F980236B +:1021A0005B002380154B1B7824E78023FEF7B3FBED +:1021B000D82B00D06EE780234C68CB7000234B7285 +:1021C000CB78902B01D0FFF7ACF9712A01D0FFF743 +:1021D000A8F90B4BBA881B6859680A70BA88596805 +:1021E000120A4A705A7A02325A72FFF79AF9C046B6 +:1021F000380400208C04002094040020A004002057 +:102200009004002060040020740400204C0400208E +:10221000F4040020E3040020F0B51C4D040005A8E0 +:10222000067868690902C0B20843686190200421F9 +:10223000C00581622900002A01D101328262FF2596 +:1022400000204A692D022A401A43114F4A61C046B4 +:10225000C046C046C046C046C046C046C046C0464E +:10226000C0463A690133120A22544A69DBB22A4055 +:1022700001301A43C0B24A61B042E8D99023042227 +:10228000DB059A61033A9A61F0BDC0460008004838 +:1022900000040048F0B5184C050060690E02C0B299 +:1022A0003043606180269020F600C00549B2866107 +:1022B000002901DA01218162FF266169360231407D +:1022C00011436161C04600200C4FC046396901329C +:1022D000090A29546169D2B2314001301143C0B2B8 +:1022E00061619842F1D990238022DB05D2009A6285 +:1022F00001229A61F0BDC046000800480004004871 +:10230000F0B5174C05000E0060691F2925D8802103 +:1023100031430902C0B20143616190210420FF26CC +:10232000C905886261693602314011436161C04666 +:1023300000200C4FC04639690132090A29546169ED +:10234000D2B2314001301143C0B261619842F1D93B +:1023500090230422DB059A61F0BDC0B20902DAE7DE +:102360000008004800040048002302000002002A80 +:1023700004D1002B01D0802318437047DB43511E4A +:10238000DBB20A40F3E70023800080B2C046C046BB +:1023900001339BB29842F9D17047FFFF30B5072255 +:1023A000012409490868450D43086B404340C50FA7 +:1023B000DBB26B40013A23404000D2B21843002AFE +:1023C000F1D10860C0B230BD98040020134B10B5A5 +:1023D0005861134B13481C68090220431860586960 +:1023E000C0B20143596190210820C9058862002AC2 +:1023F00001D101328A62C046C046C046C046C046CE +:10240000C046C046C04690220821D20591610739D6 +:1024100091611A6804490A401A6010BD000800481A +:102420000004004800005555FFFFAAAA0F4B586151 +:102430009023DB05002901D101229A6204229A62CD +:10244000C046C046C046C046C046C046C046C0465C +:10245000C046C046C046C046C046054908699A61A4 +:10246000000A033AC0B29A617047C04600080048AB +:1024700000040048F7B504000E004D7AC046C0467F +:10248000C046C046C046C046C046C046C046002200 +:10249000AA215848FFF79AFF002255215648FFF716 +:1024A00095FF2402002220215248FFF78FFF23B21C +:1024B0000193EBB20093337AAB4216D28020009B9B +:1024C0000022737290210002FFF780FF002280201B +:1024D00011000002FFF77AFF80200022F0210002A5 +:1024E000FFF774FFC0460020FEBD444B444A196804 +:1024F00008200A43FF211A605A690A40A0210902F4 +:102500000A435A6190220121D20590629162C0462D +:10251000C046C046C046FF24906191611A6839499F +:102520002C400A401A60019B009A1C437368A4B2B5 +:10253000995C20000022FFF749FFC046C046C04614 +:10254000C046C046C046C046C046C046C046002140 +:102550002000FFF76BFF0700C046C046C046C046DC +:10256000C046C046C046C046C0467368009A9B5CE1 +:10257000834217D0C046C046C046C046C046C0468B +:10258000C046C046C04600212000FFF74FFFB842BA +:102590000BD1C046C046C046C046C046C046C04635 +:1025A000C046C0460135ADB283E7C046C046C0460E +:1025B000C046C046C046C046C046C046C046C046EB +:1025C000C046C046C046C046C046C046C046C046DB +:1025D000C046C046C046C046C046C046C046C046CB +:1025E000C046C046C04600212000FFF71FFF07007D +:1025F000C9E7C046AA8A00005585000000040048CB +:1026000000005555FFFFAAAA70B504000D00002276 +:10261000AA210F48FFF7DAFE002255210D48FFF7E7 +:10262000D5FE0022A0210A48FFF7D0FE0022290093 +:102630002000FFF7CBFE00212000FFF7F7FE05008A +:10264000C04600212000FFF7F1FEA842F3D170BD83 +:10265000AA8A00005585000070B504000D00002214 +:10266000AA210F48FFF7B2FE002255210D48FFF7BF +:10267000ADFE0022A0210A48FFF7A8FE0022290093 +:102680002000FFF7A3FE00212000FFF7CFFE05008A +:10269000C04600212000FFF7C9FEA842F3D170BD5B +:1026A00055550000AA2A00000F4B30B59022586102 +:1026B00080230124D205DB0093620C4B94621D68D9 +:1026C0000B480902284318605869C0B20143596198 +:1026D000C04608219162C0469161196805480140D1 +:1026E0001960946130BDC0460008004800040048ED +:1026F00000005555FFFFAAAA0B4B10B58021586169 +:10270000902301220424DB05C90099619A629C622E +:10271000C046C046C046054800699C61000A9962EF +:10272000C0B29A6110BDC0460008004800040048CD +:102730000E4B984202D880231B0218430C4B0D4AC3 +:1027400058610D4B0902186802431A605A69D2B2E7 +:1027500011435961C04690220821D2059162C046BA +:1027600091611A6805490A401A607047FF1F00000E +:10277000000800480000555500040048FFFFAAAAC1 +:102780000A4B984202D880231B021843084B0422AC +:1027900058619023DB059A62C046C046C046C046D9 +:1027A000044908699A61000AC0B27047FF1F00001F +:1027B000000800480004004870B504000D000D48F2 +:1027C000AA21FFF7B5FF55210B48FFF7B1FFA02164 +:1027D0000848FFF7ADFF29002000FFF7A9FF200000 +:1027E000FFF7CEFF0500C0462000FFF7C9FFA84253 +:1027F000F5D170BD55150000AA1A000070B504008F +:102800000D000D48AA21FFF793FF55210B48FFF754 +:102810008FFFA0210848FFF78BFF29002000FFF75A +:1028200087FF2000FFF7ACFF0500C0462000FFF740 +:10283000A7FFA842F5D170BD55150000AA0A0000F7 +:102840009023DB0530B51C68134D09022C401C6039 +:10285000DA68124C2A40DA60114A506102229A6208 +:10286000104A00B215682C4314605469E4B2214345 +:1028700051618021C9009961002801DA0120986224 +:10288000C046C0469962012199614918996113684F +:1028900005490B40136030BDFFEFFFFF00005555A9 +:1028A0000008004800040048FFFFAAAAF7B51C4B27 +:1028B00007001D781B4B01911C8820212600203623 +:1028C000B6B23000FFF7BCFFAA211748FFF730FF70 +:1028D0002000103080B21021FFF7B2FF2D015521EA +:1028E0001248FFF725FFEDB220213000FFF7A8FFC7 +:1028F0006419A0210C48FFF71BFFA0B22900FFF7C5 +:102900009FFF01993800FFF713FF3800FFF738FFEA +:102910000400C0463800FFF733FFA042F5D1F7BDF1 +:10292000880400203604002055150000AA0A000083 +:1029300070B50400B0200E0000020A21FFF780FFEE +:10294000C0200A210002FFF77BFFAA211248FFF7EF +:10295000EFFE55211148FFF7EBFEA0210E48FFF7CF +:10296000E7FEB0200E4B00021D782900FFF768FF3C +:10297000C02029000002FFF763FF31002000FFF7AD +:10298000D7FE2000FFF7FCFE0500C0462000FFF741 +:10299000F7FEA842F5D170BD55150000AA0A000047 +:1029A00088040020F8B505000E00194B02211C8890 +:1029B000A71CBFB23800FFF743FFAA211548FFF755 +:1029C000B7FE601C80B20121FFF73AFF5521124883 +:1029D000FFF7AEFE02213800FFF732FFA0210D48BD +:1029E000FFF7A6FE0D4B19786418A0B2FFF728FF79 +:1029F00031002800FFF79CFE2800FFF7C1FE04000D +:102A0000C0462800FFF7BCFEA042F5D1F8BDC04685 +:102A10003604002055150000AA0A00008804002092 +:102A20000D4B802258619023D200DB0500B29A61E1 +:102A3000002801DA01229A62C046C046C046C0465C +:102A4000064B802218699023D200DB059A6201228E +:102A5000000AC0B29A6170470008004800040048AC +:102A600070B50400C0200D0000020121FFF7E8FE50 +:102A7000AA211548FFF7E4FEC02000210002FFF75D +:102A8000DFFE55211148FFF7DBFEC02001210002C7 +:102A9000FFF7D6FEA0210C48FFF7D2FEC0200C4B5A +:102AA00000021978FFF7CCFE29002000FFF7C8FECE +:102AB0002000FFF7B5FF0500C0462000FFF7B0FF7C +:102AC000A842F5D170BDC04655950000AAAA0000E5 +:102AD0008804002070B504000D001048AA21FFF7FB +:102AE000AFFE55210E48FFF7ABFEA0210B48FFF7C4 +:102AF000A7FE29002000FFF7A3FEA020094B00023B +:102B00001978FFF79DFE2000FFF78AFF0500C046F9 +:102B10002000FFF785FFA842F5D170BDAAFA00009A +:102B200055F500008804002070B504000D00104821 +:102B3000AA21FFF785FE55210E48FFF781FEA0214F +:102B40000B48FFF77DFE29002000FFF779FE80206B +:102B500000210002FFF774FE2000FFF761FF05006F +:102B6000C0462000FFF75CFFA842F5D170BDC0460B +:102B700055D50000AAAA00000D4B0E4A58610E4B15 +:102B80000902186802431A605A69D2B211439022AE +:102B900059618021D205106849010143116040212B +:102BA000916291611A6805490A401A607047C046EF +:102BB000000800480000555500040048FFFFAAAA7D +:102BC000104B114A10B558611068104B09020343AD +:102BD000136053690E4CDBB219439023516180217D +:102BE000DB0518684901084318604020986218689E +:102BF00020401860D8680143D960136805490B402C +:102C0000136010BD0008004800040048000055553E +:102C1000FFEFFFFFFFFFAAAA70B505000E00134BE0 +:102C200000211C882000FFF70BFEAA211048FFF7A7 +:102C3000C7FF55210F48FFF7C3FFA0210C48FFF73E +:102C4000BFFF0D4B19786418A0B2FFF7F9FD3100F2 +:102C50002800FFF7B5FF2800FFF7E2FE0400C0469A +:102C60002800FFF7DDFEA042F5D170BD360400203C +:102C700055550000AA2A00008804002070B5040001 +:102C80000D000D48AA21FFF79BFF55210B48FFF7C8 +:102C900097FFA0210848FFF793FF29002000FFF7C6 +:102CA0008FFF2000FFF7BCFE0500C0462000FFF7A5 +:102CB000B7FEA842F5D170BD55550000AA2A000004 +:102CC000F0B58BB00992012208911100354B0290AA +:102CD0001F78354B1B780493344B1D68344B1B789D +:102CE0009940344B01911868334BA9621B789A4084 +:102CF000029B102B4FD18262012421002F4B05949F +:102D00001B6806932E4B1B7899408BB221000793CA +:102D10002C4B1B689C462C4B1B789940002303913D +:102D20001900029C202C05D1049E059C1E412642C0 +:102D300036D08261089C202C0FD1002B01D11A4C77 +:102D40006354069C2669079C264206D0164C665C96 +:102D5000059C9C402643144C6654099C013FFFB2DD +:102D6000002C03D0002F01D1019CAC616446039E6E +:102D70000133DBB2A661A662082B05D101310A4BF3 +:102D8000C9B25B5C04930023002FCAD1019B82620D +:102D9000AB620BB0F0BD029B112BADD18261ABE7F2 +:102DA0008262C7E7E1040020C10400202807002058 +:102DB0002C070020180700201C07002020070020F7 +:102DC000240700201007002014070020F7B5012277 +:102DD0001A4B1C781A4B19681A4B1B789A4010280A +:102DE00026D18A6201263500174B01961B68009395 +:102DF000164B1B789D400023AC461D0020280DD1AA +:102E0000134E019F765D1E413E4215D08A6101330B +:102E1000DBB2082B02D100230135EDB26646009FDC +:102E2000013CE4B2BE61BE62002CE7D18A62F7BD0C +:102E30001128D7D18A61D5E78A62E8E7E10400204A +:102E4000280700202C07002010070020140700206E +:102E5000C1040020F0B52C4B85B01B7801930123F1 +:102E60001E00019A1F009640284A1168284A8E6267 +:102E7000127802921A000298824094466046254ACF +:102E800012689062244805782448AF4000689D404D +:102E90008762046803941C00AC402500039C254312 +:102EA00005604568019CBD4345609C401D00A540F0 +:102EB00008681C00284308604868B04348601068F0 +:102EC000029999408C40210001436046116051688D +:102ED0008143134851600078124A98408340126839 +:102EE000116899431160D1680B43D36080220E4B67 +:102EF0001A70002319000D4A13700D4A99540133BA +:102F0000202BFBD105B0F0BD2C07002028070020A6 +:102F10001C070020180700201407002010070020BD +:102F20002407002020070020E2040020E104002004 +:102F3000C104002010B52B4B1B78082B4ED013D8A2 +:102F4000294C032B39D006D8012B28D0022B2AD0AC +:102F5000254BEE223AE0062B3AD03DD8042BF7D190 +:102F600001222021112021E00F2B28D008D81E4C4F +:102F70000D2B1FD000220E2BEAD12021102015E0AE +:102F8000802B06D0184CFF2B06D0102BE0D100224E +:102F90001FE0FFF75FFF10BDF0232370FBE7202049 +:102FA000FFF714FF04E0012200212020FFF788FE34 +:102FB0008223F2E700221100F7E70122DDE7002279 +:102FC00020211120FFF77CFE8222074B1A70E2E7D6 +:102FD000012220210800E9E71020E1E71120FFF796 +:102FE000F5FEF1E7C0040020E2040020BC224D4BB6 +:102FF000D203996AF0B50A439A629A6A4A490A402A +:103000009A62B022596952030A435A611900902307 +:10301000464ADB051278102A03D100221A609A6012 +:10302000DA601A684248012402401A608022D86897 +:10303000D2010243DA601A683E483F4F02401A60EC +:103040008022D868520302430420DA601A68A2433F +:103050001A60DA682243DA601A6882431A60DA6812 +:103060000243DA6010221D6895431D60DD682A4323 +:10307000DA6040221D6895431D60DD682A43DA60EE +:103080001A682E4D2A401A608022DD68D2042A4335 +:10309000DA601A682A4D2A401A608022DD68D2055B +:1030A0002A43DA601A68274D2A4080251A60DA68B8 +:1030B000ED022A43DA60244A1668A6431660D668F1 +:1030C0003443D4601E683E401E60DC683C40DC60D7 +:1030D00080234C691B0323434B611C4B1C4C1E6813 +:1030E0001C4F26431E601E683E401E60DE6834434F +:1030F000DC604B691D434D611368174D2B40136015 +:10310000D468164B1C43D460116829401160D16803 +:103110000B43D360136883431360D3681843D060B4 +:10312000F0BDC04600100240FFFFA1FF04070020D1 +:10313000FFBFFFFFFFFFEFFFFFEFFFFFFFFFFFFB03 +:10314000FFFFFFBFFFFFFBFF00040048000800482F +:1031500055555555AAAAAAAAFFFFAAAA0000555577 +:10316000F7B50D00042701924C7A000203B2A6B213 +:1031700000932B7AB34202D26C720020FEBD0098FD +:103180006B682043195D80B2019B98476B681A5D9C +:10319000094B824205D01A683A431A6002229A61AA +:1031A000E7E71A680134BA431A60DA6801363A432D +:1031B000DA60E4B2B6B2DCE700040048F7B50D000F +:1031C0001600FF27000203B24C7A01932A7AE3B279 +:1031D000A24202D26B720020FEBD20006A68384015 +:1031E000D15C019B0134184380B2B047A4B2EDE733 +:1031F000022907D10F4B104A984218D0904209D1AA +:10320000180007E0032906D10A4B0B490B4A9842E4 +:103210000BD1080070470429FCD1064B064A98429E +:1032200005D006499042F4D0054A8842E6D1100004 +:10323000F0E7C046380400204C0400206004002061 +:103240007404002070B506000D0005243000013C18 +:10325000FFF7E6FBE4B229003000FFF7F1FA6D0852 +:10326000002CF3D170BDFFFF70B50400A0200D004D +:1032700000020221FFF7E6FFAA211048FFF758FAE3 +:1032800055210F48FFF754FAA0210C48FFF750FAD8 +:10329000A0200C4B00021978FFF7D4FF2900200072 +:1032A000FFF746FA2000FFF76BFA0500C046200042 +:1032B000FFF766FAA842F5D170BDC046551500006B +:1032C000AA0A00008804002070B50400C0200D0088 +:1032D00000020521FFF7B6FFAA210D48FFF7B0FA5B +:1032E00055210C48FFF7ACFAA0210948FFF7A8FACE +:1032F00029002000FFF7A4FA2000FFF791FB05004A +:10330000C0462000FFF78CFBA842F5D170BDC04637 +:1033100055550000AAAA0000F7B501230225294F40 +:1033200001923A780091054393400421A020264E53 +:103330002D049BB229433268C00100F001FE040055 +:1033400001283DD13B7809209C4005437830A3B249 +:1033500032682900FF3000F0F3FD040001282FD16E +:103360003B7832689C402900A3B2002000F0E8FDC1 +:103370000400012824D1009B180AFEF7F5FF3B78D2 +:1033800032689C402900A3B200F0DAFD0400012855 +:1033900016D16B461878FEF7E7FF22003B7829002C +:1033A0009A4093B2326800F0CBFD0198FEF7DCFF43 +:1033B0003B7832689C402900A3B200F0C1FD0400B4 +:1033C000E0B2FEBD0C07002008070020F7B501237E +:1033D0000225274F00903A7801910543934004213C +:1033E000C020244E2D049BB229433268800100F096 +:1033F000A7FD0400012838D109231D433B78C020D4 +:103400009C403268A3B22900400000F099FD0400FE +:1034100001282AD13B7832689C402900A3B20020C1 +:1034200000F08EFD040001281FD1019B180AFEF751 +:103430009BFF3B7832689C402900A3B200F080FDDE +:103440000400012811D16B461879FEF78DFF220088 +:103450003B789A4093B2009A14430922E1B20904DE +:103460001143326800F06CFD0400A0B2FEBDC046FE +:103470000C07002008070020C04BC14AF0B51A60B5 +:10348000C04A8BB01A6002225A60A02212019A60D0 +:103490000493049BDB68002BFBD19022049BBA4968 +:1034A00012031960B94B186802431A60802209910F +:1034B000920219681142FCD0012259680A435A60ED +:1034C0008022596852020A435A6080225968520386 +:1034D0000A435A608022196852040A431A60802203 +:1034E000920419681142FCD01121A94AA94C11601B +:1034F0005A680E398A43110002220A435A60802218 +:10350000196B0A431A638022D96912040A43DA61EB +:10351000A14BE381BC231B689847A04B6382A04B5F +:10352000238262B6FFF762FDF0229E4B1A70049B65 +:10353000099A9D4E1A603278202311009943D229AE +:103540001BD19A499A48C978C3780224FF2904D12B +:10355000FF3B1C00631E9C41E4B2964BDB78FF2BC3 +:1035600000D00324944BDB78FF2B00D00424934B32 +:10357000934F1C703860D22A4CD03378F22B05D18F +:103580000022023B33708E4B1B68DA703578D02DE9 +:1035900000D08DE18A4E3068C378802B00D087E15F +:1035A000864B1978FFF724FE00233060C57006882B +:1035B00004004372C07AF5B21038162800D975E1BC +:1035C000FCF7DAFFA400040144014801740174010E +:1035D0007401740174017401740174017401740143 +:1035E000740174012B00380046004B004E00580057 +:1035F0005F002100FFF7FCFD01230135EDB2A5427C +:10360000F7D3002B00D0386080223B68DA70D023DB +:103610003370B2E700230125F1E7E17B0F2900D9E0 +:1036200067E109013143237AA278C9B26068FEF7E5 +:1036300031FE0BE03C23E17B0A009A4300D058E1C5 +:10364000237AA27829436068FEF75AFE607254E03C +:10365000237AA278E17B2943E8E7E17B3F23EBE78C +:10366000227AE17BA3780092002229436068FEF76A +:10367000D3FDEBE7E17B227AA37829430092012274 +:10368000F4E7504BE17B586929430E02C0B2304346 +:103690006568A278277A5861902004266031C005B9 +:1036A000C9B286621E001F2901D801218162FF2054 +:1036B00059690002014011435961C0464249002343 +:1036C0008C46C046C046C046C046C046C046C046FE +:1036D000614609690132090AE9547169D2B20140AF +:1036E00001331143DBB271619F42EAD2902204217F +:1036F000D2059161033991616372314B1B6819885E +:103700009A7A52181A80D822DA70D1E0E37B1E2B05 +:103710000BD1C020B6092233F1B200029D43FFF75E +:103720008FF8237AA278802195E71C2B0FD1A02057 +:103730008121C001FFF784F88020F609F1B2000270 +:10374000FFF77EF8A0200021C001FFF779F8802163 +:10375000E27B49421F2A05D00D43EDB2237AA278BD +:10376000290063E77022A02095430D432188C00102 +:103770000909C9B2EDB2FFF763F8EFE70030004086 +:10378000CCCC000055550000AAAA00000010024051 +:1037900000200240006000403CA5FFFF41080008F7 +:1037A00085080008E2040020A00400204C0400204A +:1037B0003804002060040020740400209C040020D1 +:1037C0008C0400200008004800040048E37BFE2B26 +:1037D00093D17609F1B2DD48FEF7AAFF1F21DC4B39 +:1037E00029405A690902D2B20A43A0786768267A4A +:1037F00080215A619022C900D20591610121FF25E3 +:103800009162033191625A692D022A4002435A6142 +:10381000C046D04900228C46C04661460969013045 +:10382000090AB9545969C0B2294001320143D2B2E0 +:1038300059619642F0D290230421DB0599618021E1 +:10384000C900996201219961627256E7237AA278D0 +:10385000602100E7E37B002B20D18033F6091D4374 +:10386000F3B20293FF20029BBA499B004A690340CE +:10387000B948024013434B61C0209021029BC90507 +:10388000C000DB004A690340B448024013434B6167 +:10389000227AA378290000920022E7E6012BE1D1E9 +:1038A00040217604760E31430291DBE7C323E370B7 +:1038B000AB4B1D78F02D00D00CE3AA4E3468E378B2 +:1038C000982B00D006E3A84B20001978FFF790FC56 +:1038D00000233060C370E07AE57010382678042841 +:1038E00000D9F5E2FCF748FE0700FA0188029002D1 +:1038F000EA00C423DBE7E37B002B06D130008038ED +:10390000C0B29A4A2100FFF72BFCE37B012B06D1C2 +:1039100030008038C0B2964A2100FFF74FFCE37BAD +:10392000032B06D130008038C0B2924A2100FFF745 +:1039300045FCE37B042B06D130008038C0B28E4AB0 +:103940002100FFF70DFCE37B0A2B06D13000803805 +:10395000C0B28A4A2100FFF731FCE37BFD2B15D171 +:103960003F20238830409B0905936B4680261B7DB2 +:1039700006430793677ABBB2039333021BB20893E3 +:10398000237A039A934200D39FE06772E37B1E2B56 +:1039900006D130008038C0B2794A2100FFF7E0FB41 +:1039A000E37B0C2B17D11F20304080260643C0201C +:1039B0002588A5216D09EDB2C001FEF741FF290060 +:1039C0007048FEF73DFF677A35023D43237ABB42DC +:1039D00000D3ECE06772E37B1C2B3BD1A020238853 +:1039E0008121DB09DBB2C0010593FEF729FF8020AE +:1039F00005990002FEF724FFA0205421C001FEF724 +:103A00001FFF677AAA21BBB25F480393FEF718FF36 +:103A100055215E48FEF714FF20215B48FEF710FF9A +:103A2000802333431B021BB20793237A039A9342EA +:103A300000D3D9E08020902100026772FEF700FFDA +:103A4000802000210002FEF7FBFE8020F021000212 +:103A5000FEF7F6FEE37B1F2B30D1A0202188C001AA +:103A60000909C9B2FEF7ECFEAA214748657AFEF7BC +:103A7000E7FE55214548FEF7E3FE43482021FEF7C7 +:103A8000DFFE702380209E434042304340B2030259 +:103A9000AFB20593237ABB4200D3EDE080209021A2 +:103AA00000026572FEF7CCFE802000210002FEF7C6 +:103AB000C7FE8020F0210002FEF7C2FEF423228818 +:103AC000E370A37A9B18238004E200213048FEF7BC +:103AD000B7FEAA212F48FFF74FF855212E48FFF7D0 +:103AE0004BF8A0212B48FFF747F86B46187D2B4B6E +:103AF0000799C01880B2FEF7A3FE089D63683D4396 +:103B0000ADB2D95D2800FFF737F8C0462800FEF7B0 +:103B100087FF06902800FEF783FF069B8342F4D1BF +:103B200063680699DA5D0B4B8A4239D1039A1968AA +:103B3000013292B20392042291431960D96801378D +:103B40000A43DA600222FFB29A6219E7FF3F0000DF +:103B5000000800480004004803FF0000FFF90000CF +:103B6000A00400208C0400209C0400207D2C000870 +:103B7000C9320008192C0008292B0008D52A000892 +:103B8000612A0008FFFF0000AA8A00005585000096 +:103B900069FD000055550000AA2A000069FDFFFFDD +:103BA000042219680A431A6002229A61E8E6AA21EF +:103BB000CF48FEF745FE5521CE48FEF741FEA02135 +:103BC000CB48FEF73DFE63682800D95DFEF738FE5E +:103BD000C0462800FEF724FF03902800FEF720FFD0 +:103BE000039B8342F4D1F1E6A0205421C001FEF7EB +:103BF00027FE079DA0213D43ADB22800FEF720FE21 +:103C000063682800D95DFEF71BFEC0462800FEF75A +:103C100007FF06902800FEF703FF069B8342F4D1BE +:103C20006368069ADB5DB44D93420FD1039B2A680B +:103C300001339BB2039304239A432A60EA68013755 +:103C40001343EB600223FFB2AB62EEE6A0208121BA +:103C5000C001FEF7F5FD802005990002FEF7F0FD9A +:103C6000A0205421C001FEF7EBFD04232A68134372 +:103C70002B600223AB61D8E6059EA0212E43B6B28D +:103C80003000FEF7DDFD63683000595DFEF7D8FDBA +:103C9000C0463000FEF7C4FE03903000FEF7C0FEC1 +:103CA000039B8342F4D1636803995A5D924B8A4225 +:103CB0000DD104211A6801358A431A60DA68013788 +:103CC0000A43DA600222EDB2BFB29A62E2E6042150 +:103CD0001A680A431A6002229A61DBE6E37B002B32 +:103CE00004D1864A21003000FFF768FAE37B012BFC +:103CF00004D1834A21003000FFF760FAE37B022BF6 +:103D000004D1804A21003000FFF758FAE37B042BEE +:103D100004D17D4A21003000FFF750FAE37B0A2BE3 +:103D200004D17A4A21003000FFF748FAE37B0B2BDD +:103D300004D1774A21003000FFF740FAE37BFE2BE5 +:103D400000D0BBE6218873484909C9B2FEF7F0FCF0 +:103D5000AA217148657AFEF7A7FC55216F48FEF746 +:103D6000A3FC6D482021FEF79FFC1F20304003027A +:103D7000AFB20593237ABB420DD265729021002029 +:103D8000FEF792FC00210800FEF78EFCF0210020D7 +:103D9000FEF78AFC92E6059EA0212E433000FEF736 +:103DA00083FC63683000595DFEF77EFCC04630003E +:103DB000FEF7A2FC03903000FEF79EFC039B8342BB +:103DC000F4D1636803995A5D4B4B8A420DD10421AB +:103DD0001A6801358A431A60DA6801370A43DA60E3 +:103DE0000222EDB2BFB29A62C4E704211A680A4304 +:103DF0001A6002229A61BDE730006030484A210013 +:103E0000C0B2FFF7DBF959E6E37B042B06D13000A3 +:103E10008038C0B2434A2100FFF7D0F9E37B052B7D +:103E200004D1404A21003000FFF7C8F9E37B062B9C +:103E300006D130008038C0B23B4A2100FFF7BEF9FE +:103E4000E37B072B04D1384A21003000FFF7B6F995 +:103E5000E37B002B1CD1FF2280331E43238826489E +:103E6000DB09DBB29D0041692A40304DDB0029406F +:103E70000A4342619022C020D205C000516903402C +:103E80002B4801400B43536121003000FEF7F2FA4A +:103E9000E37B012B00D011E62388174A5B04580E00 +:103EA00040230343FF209B00516903401F4801400A +:103EB0000B4390215361C9054B691D4A30001A40DC +:103EC00080239B0013434B612100FEF7D3FAF5E5F5 +:103ED000C323E370174B1B78F02B01D1FFF727FBAF +:103EE000832B01D0FFF723FBFFF724F8FFF71FFB1D +:103EF00055D50000AAAA000000040048FD270008CC +:103F000069320008A5290008B927000831290008EE +:103F1000AD280008FF3F0000AA0A00005505000078 +:103F200041280008592600080926000803FF000060 +:103F3000FFF90000E2040020FFFFFFFFFFFFFFFF8B +:103F4000F0B5474680B4061C081C000C102801D5AB +:103F5000162700E004270007000F8046FF200140DD +:103F60005468251C1D439C43F60313850AD5C0469F +:103F7000C046C046C046C046C046C0469480138373 +:103F8000958002E0012000F081F801390AD4381C44 +:103F900000F07CF8C046948013839580C046C046EC +:103FA0007600E2E7381C013800F070F89480138343 +:103FB0009580042000F06AF8108A184001D0FF2094 +:103FC00061E0C046C046C046C046C046C046948078 +:103FD0009580108A184055D001200226B04552D055 +:103FE0000921168A1E40FCD1012000F04FF8948070 +:103FF000C0469580C04603E0C046C046C046C046A5 +:10400000948095807600108A1840EFF3008040007D +:10401000C00F0643381C023800F038F894809580B1 +:10402000022000F033F80139EAD51385948001208D +:1040300000F02CF813839580301C802102239940D6 +:104040000E401BD1002341085E4149085E414908EA +:104050005E4149085E4149085E4149085E414908A0 +:104060005E4149085E4149085E41760808D3400830 +:10407000FF21084048400002013004E00E2002E029 +:10408000092000E0002080BCB846F0BD0138FDD119 +:104090007047C04603685A0003D45B005B08C01831 +:1040A0007047802212061343F9E7C046F0B5574621 +:1040B0004E46DE464546E0B5814683B0924600292D +:1040C00025D04B1E9B46002701935B46FB18DC0F57 +:1040D000E4184B466410E5005E193000FFF7DAFF84 +:1040E000019B8046A3420BD0280008304844FFF7CC +:1040F000D1FFD04506D80138504509D2671CE4E706 +:10410000504505D9A74202D0631E9B46DDE7002635 +:10411000300003B03CBC90469946A246AB46F0BD89 +:10412000012809D0022805D0002801D000207047BE +:104130000248FCE70248FAE70248F8E71548000899 +:104140002D4800082148000830B5234B83B00500F6 +:104150008C1E002B26D001A9200000E000BF002803 +:104160001CD001992200FFF7A1FF041E16D0FFF713 +:1041700091FF6368A864012B2AD0201D002B23DB4C +:10418000FFF788FF0023E8642B650368002B0FDB33 +:10419000FFF780FF2861002003B030BD0023092015 +:1041A0002B61F9E70D480E49091AC9100191D9E7A9 +:1041B0001801000FFFF7B4FF2861431E9841082340 +:1041C000404298430930E7E70123E8642B65DCE7C8 +:1041D000002305202B61DFE70000000010510008DC +:1041E000E0510008036810B50400DA0705D4483030 +:1041F0009B070ED500F06CFC23685A070ED51A07F2 +:1042000013D5DB0604D42000D130FF3000F06CFC65 +:1042100010BD00F059FC23685A07F0D42000D030BC +:1042200000F05AFC23681A07EBD420005130FF300D +:1042300000F056FC2368E4E70368002B00D01B184D +:1042400018007047092070477047C04670B50400D9 +:104250000D0008E02B6C2A00636121000120236916 +:104260009847082807D1296C2000FFF76DFF002828 +:10427000F0D000F083FE0728FBD10020296CFFF767 +:10428000E3FF281D00F00AFCF0B5CE46474680B596 +:10429000C3682E4C9846A544836906001400043177 +:1042A000402205A8994600F071FE002304AD049356 +:1042B00023E0F0222B6C5200736129007CA800F0EF +:1042C00065FE7CAA31003369200098478A9B07006D +:1042D0006B6403934B460095019332003300210039 +:1042E0000120C04700281FD1F0227CA952002800DD +:1042F00000F04CFE0024082F1FD1296C3000FFF77E +:1043000023FF611E8C41070009340028D1D0AB6B1C +:1043100010216B644B46214301930095330032001A +:104320000120C047002800D009273800F5239B0052 +:104330009D440CBC90469946F0BD072FF4D1200057 +:10434000296CFFF781FF05A800F0A8FB2CFCFFFFFC +:10435000406C704770B5CB6BFAB00B6404000E0074 +:104360004022043103A800F011FE01235B420293B6 +:1043700006E002AA210023699847050008280AD10F +:10438000129B200019000193FFF7DEFE0028F0D0F9 +:1043900009207AB070BD02A8FFF724FF062DF7D1DF +:1043A00031002000FFF752FF10B58261DA6BC16067 +:1043B0001A6419000022FFF767FF10BD436970B54A +:1043C0000B64C36804000D00002B15D10A0023699B +:1043D000010002209847072807D0082803D12900A8 +:1043E0002000FFF733FF00F0C9FD0020296CFFF724 +:1043F0002BFF281D00F052FB0122FFF745FF00F0C4 +:10440000BDFDC046C36810B5002B05D0CB6B0022A4 +:104410000B64FFF739FF10BDFFF79CFFFBE7C046B9 +:104420007047C046836810B5002B02D00100012000 +:10443000984710BD012906D0002906D00339022073 +:10444000012900D970470120FCE7002B08D10F2A71 +:1044500006D8920082185268009B00201A60F1E78B +:104460000220EFE700B585B003AB0A0000930021FE +:104470000023FFF7DFFF039805B000BD012906D038 +:10448000002906D003390220012900D970470120F4 +:10449000FCE7002B08D10F2A06D8009B92001B686E +:1044A000821853600020F1E70220EFE700B585B0E5 +:1044B00003AB039200930A0000230021FFF7DEFF05 +:1044C00005B000BD70B51A4CD36BA544136406004B +:1044D0000D0019A8111D402200F058FD01235B4278 +:1044E000189314E00C2118A802AAFFF7DFFF290097 +:1044F00018A8B047002812D1069B18AA02A90830B4 +:1045000001939847040005280AD0092807D0289B62 +:1045100002A819000193FFF717FE0028E2D0092432 +:1045200018A8FFF75FFE200090239B009D4470BDFC +:10453000C0FDFFFFF0B5DE4657464E464546E0B5A6 +:10454000160003220D0011008BB01F000193EB6CCD +:1045500001401C1D009107A91B688B460894002F81 +:104560006BD01A0C1B045946079302230B72FD33C0 +:1045700013409B004A72E418009B022B00D1AC6BE5 +:104580002B6DDB0747D400230593083303400293C8 +:104590002768002F00D112E1019B022B49D06388CC +:1045A000278898460434012340469A469843AB6CCA +:1045B0000F21994681443000FFF754FF00218145C7 +:1045C00006D83900534699434944884289414942B3 +:1045D00043465A0002231340012217403B43012B5C +:1045E0003AD0002B30D0022B1BD12368009A5F00F9 +:1045F0007F08002A67D1002906D0029A002A00D13C +:104600007CE0002F00D1A9E0002B00DA0434013750 +:10461000BF00E419BCE75946300000F00BFB00284E +:1046200010D009200BB03CBC90469946A246AB4640 +:10463000F0BD636808349846B5E71B0207935B46F4 +:104640001A8199E70820EDE7009B002B02D0002992 +:1046500000D08DE004349BE7009B002B1AD1002989 +:1046600016D02368DF0F63689A1CDAD02A0058320C +:104670000692013300D1BDE0201DFFF7DDFD06AB42 +:1046800001003A00280000E000BF002800D082E0CE +:1046900008347DE70D2130002F6AFFF7E3FE8742E3 +:1046A000F6D1AB6A9C42F3D12000FFF7F3FC0F2157 +:1046B00002003000FFF7FAFE30002A000021FFF769 +:1046C000F5FE0720AEE72B6A0D2130009846FFF774 +:1046D000C9FE804501D0236896E7AB6A9C42FAD1B7 +:1046E0000023EB6204332B63231DAF626B632368EB +:1046F000002B00DA86E00123059388E7002F2DD0F8 +:1047000058239C46AC4463460393231D99460023DB +:10471000984606AB220004933B004C464746B246FF +:1047200098462E00914603E004342F00454542D0C0 +:10473000039B20000693FFF77FFD049B01000022EE +:1047400030007D1C00E000BF0028EDD04346B84695 +:1047500035004C4656461F009845BCD10D2130000F +:10476000FFF780FE069B28626B62AC62062059E769 +:104770002000FFF78FFC04340700AC63280000E042 +:1047800000BF002800D14CE730003A000F21FFF7AE +:104790008DFE072046E707000D213000FFF762FE7F +:1047A0002862022F2BD1069BEB622B002C336B620D +:1047B000AC62062036E735004C465646CEE75946F1 +:1047C000300000F037FA002800D02AE7059B002BC4 +:1047D00000D137E70F213000FFF744FE0E21020021 +:1047E0003000FFF763FE3000094A0F21FFF75EFE3D +:1047F000072017E70D213000FFF734FE2862069BE3 +:104800006B62D5E738000130800020184DE7C046C4 +:104810000000000010B50023FFF78CFE10BDC0465D +:1048200010B50123FFF786FE10BDC04610B5022368 +:10483000FFF780FE10BDC046F0B5CE46474680B5B6 +:104840000500C3B014001E00012955D000294BD02B +:10485000032922D0042949D1002B47D1102A45D859 +:10486000102203681A4200D0F1E020AF380000F0B7 +:104870003DF900230120A96B02009A40144203D0A5 +:104880000E689A00BE5004310133042BF4D1380075 +:10489000A96300F029F9002029E0032B26D1140494 +:1048A000230C160C9846F318102B1FD80822036807 +:1048B0001A4200D098E020AF380000F013F94246C9 +:1048C000AB6BF6001C00002A08D0D400F21A1C19A9 +:1048D000BA181968D15004339C42FAD1AC6338003D +:1048E00000F0FEF8002002E0002B24D0022043B0AC +:1048F0000CBC90469946F0BD130C14049846240C49 +:10490000012E2ED0052EF1D11B19202BEED84246B8 +:104910000F2A70D9A146002C7ED1AA6B4346AA6308 +:104920000F2B00D89AE04B46002BDBD0684600F0F6 +:10493000D3F80020DBE700231004A96B000C01363C +:1049400032009A40104204D00F689A00AA185760AB +:1049500004310133102BF3D10020A304C7D4A96381 +:10496000C5E71B19102BC1D843460F2BBED82B68A7 +:104970001E4206D00322280093432B60483000F0EB +:10498000A5F820AF380000F0A1F8AA6B002C24D0C5 +:104990004346DB00FF180023994664000023A4006F +:1049A000D158F95004339C42FAD14B4612196F4644 +:1049B000002B0FD04046102800D210204B46D900C3 +:1049C00000231038C0003818D458C450043399421A +:1049D000FAD15218012EA1D120AF04323800AA63B7 +:1049E00000F072F8002082E7934303605130FF30FB +:1049F00000F078F85FE7102B3BD910225242914625 +:104A000099442B68194208D0022228008B43134393 +:104A10002B60483000F05EF82B6804221A4221D146 +:104A200043460F2B03D820AF380000F053F86F46F1 +:104A3000380000F053F810244346AA6BE41A002C07 +:104A4000B8DD434620AFDB006400FF18A6E79343C0 +:104A50000360D130FF3000F049F806E720A800F0ED +:104A600037F860E7280093432B60D03000F036F829 +:104A7000D6E72B680B4207D0022228008B43134352 +:104A80002B60483000F026F820AF380000F022F804 +:104A9000A146AA6B002C00D07AE73FE7011C343115 +:104AA00038C9043B9C461D60A646011C20313CC908 +:104AB00090469946A246AB46011C0831FCC94168A4 +:104AC0000068E54600BDC0467047C0467047C04616 +:104AD0007047C0467047C0467047C0467047C046E2 +:104AE0007047C0467047C0467047C0467047C046D2 +:104AF00001B401A801B585B0FFB408A841464A46F3 +:104B000053465C4665463EC001A83EC80F980090DB +:104B100000230CB401A9FFF71DFC109B12B018472D +:104B200001B401A801B585B0FFB408A841464A46C2 +:104B300053465C4665463EC001A83EC80F980090AB +:104B400000230CB401A9FFF739FC109B12B01847E1 +:104B500001B401A801B585B0FFB408A841464A4692 +:104B600053465C4665463EC001A83EC80F9800907B +:104B700000230CB401A9FFF745FC109B12B01847A5 +:104B800001B401A801B585B0FFB408A841464A4662 +:104B900053465C4665463EC001A83EC80F9800904B +:104BA00000230CB401ABFFF7FFFB109B12B01847BA +:104BB00001B401A801B585B0FFB408A841464A4632 +:104BC00053465C4665463EC001A83EC80F9800901B +:104BD00000230CB401AAFFF775FC109B12B0184714 +:104BE000027A0300002A0BD1427A002A0FD0013A40 +:104BF00042724268111D416003211268017202E095 +:104C0000013A02720268100E12021A607047B02058 +:104C1000FCE7C04600B585B003AB00930C2200232F +:104C20000021FFF707FC039805B000BD10B5FFF7A2 +:104C3000F1FF10BDF0B557464E464546DE4600230F +:104C4000E0B587B003930F339846083B994680231D +:104C50001B0306000F009A463800FFF7C1FF04004F +:104C6000B02800D1C3E003062AD50300424693438F +:104C7000DBB2802B00D171E0902B3DD0A02B00D176 +:104C800085E0B02B50D0C02B00D196E003004A46FF +:104C90009343DBB2D02B0AD15346024001321A4370 +:104CA000052301213000FFF7C7FD0028D4D00924D7 +:104CB000200007B03CBC90469946A246AB46F0BDEA +:104CC000FF23820013401D1D05AB9B4600930D2260 +:104CD000002300213000FFF7ADFB630620D4059BC5 +:104CE0009C46654405955B460D22009300210023F8 +:104CF0003000FFF7C3FBAFE7833B03400D2BD6D05B +:104D000005AD02400095002300213000FFF792FB23 +:104D1000009500230D2200213000FFF7AFFB9BE739 +:104D2000059B5D1B0595DEE7B12874D0B22800D144 +:104D3000CFE0B32800D184E0FC230340B42BB6D0ED +:104D40004A465346024001321A43012101233000F2 +:104D5000FFF772FD002800D17EE7A8E704023800C3 +:104D6000FFF73EFF802520432D02A8429FD004017B +:104D70000005020C002300213000FFF75DFD002834 +:104D800095D12C4200D167E70123039364E7FF2309 +:104D90004A461B011900824311410A001A400307C9 +:104DA00002D58023DB011A43002300213000FFF7E6 +:104DB00043FD002800D14FE779E7C6284CD0C7282B +:104DC0005ED003004A469343DBB2C02B6DD0C828A7 +:104DD00072D0C92800D06AE73800FFF701FFF0233E +:104DE00002031B03134042460240013257E7039B74 +:104DF0000024002B00D05BE705AD00950E220021BA +:104E00003000FFF717FB009500230F220021300030 +:104E1000FFF734FB4CE73800FFF7E2FE002800D133 +:104E200045E7030042469343DBB2002B00D03EE748 +:104E3000020000213000FFF7FFFC002800D10BE743 +:104E400035E73800FFF7CCFEF02302031B031340C5 +:104E500042460240013277E73800FFF7C1FEF023F7 +:104E600002031B0313404246024001321A4303234C +:104E700003213000FFF7E0FC002800D1ECE616E744 +:104E80003800FFF7ADFE021E00D110E703004146D7 +:104E90008B43DBB2002B00D009E704213000FFF781 +:104EA000CBFC002800D1D7E601E74346A0221C40F6 +:104EB000013412032243DAE73800FFF791FE43463C +:104EC00002009A43D2B2103218401203013002435A +:104ED000E6E605AB00939B460D220023002130003F +:104EE000FFF7A8FA3800FFF77BFE030618D57F25E9 +:104EF000B03C059B2840A0409C466044059038008B +:104F00000734FFF76DFE0306F3D481217F23890068 +:104F100003408C46A340059A62449B180593E2E641 +:104F20000224F2E7030000B5DB6C85B05A68080084 +:104F3000120201921A0001A908324A6003220A7281 +:104F4000DB794B72FFF776FE05B000BD10B5FFF7B9 +:104F50006DFE806C10BDC04610B5FFF767FEC26CD9 +:104F6000D3799B000833D01810BDC04610B500F0AF +:104F700005F8C04610B5FFF7F9FFC04610B506208A +:104F800000F076F8012000F0A5F8C046F0B50F2A31 +:104F900037D90D0005430C000300AD0735D11500CE +:104FA000103D2D092E013618103627681F606768DE +:104FB0005F60A7689F60E7681034DF601033B3421A +:104FC000F3D10F2401352D01491914404519032C43 +:104FD0001DD90023CE58EE500433E61A032EF9D81B +:104FE0000323043CA4080134A4001A402D19091914 +:104FF000002A05D00023CC5CEC5401339342FAD153 +:10500000F0BD0500002AF5D1FAE70500F2E722001D +:10501000F8E7C04670B505000C001F2922D8B72359 +:105020009B00C358002B0ED08A009B181A68002AD8 +:1050300009D0012A10D0511C10D000212000196085 +:105040009047002070BD280000F030F822000100D9 +:10505000280000F017F8F5E70020F3E716230360B7 +:105060000120EFE71623036001204042EAE7C04633 +:1050700010B5034B01001868FFF7CCFF10BDC04608 +:1050800000000020002370B5074C05000800110047 +:10509000236000F017F8431C00D070BD2368002B7C +:1050A000FBD02B60F9E7C0463007002010B500F0B8 +:1050B00001F810BD58220120014B40421A60704790 +:1050C0003007002058220120014B40421A607047EF +:1050D00030070020FEE7C046F8B5C046F8B5C04628 +:1050E00074B20181B0AB308000000000800A018101 +:1050F000B0B0ABF0000000003F020181B0AB3080E7 +:105100000000000080060181B0B0ABF0000000009C +:1051100030EEFF7FB0B0B0807CEFFF7F0100000079 +:1051200028F0FF7FB0A90280BCF0FF7FB0B0A8805C +:1051300008F1FF7F0100000014F1FF7FB0B0AA80EA +:1051400048F1FF7F9CFFFF7F08F2FF7F0100000016 +:1051500004F2FF7FAA3F398050F2FF7FB0B0A880F1 +:105160005CF2FF7FB0B0AA809CF2FF7FB0B0A88055 +:10517000B0F2FF7F01000000ACF2FF7FB0B0A8806A +:10518000B4F2FF7F010000003CF3FF7FAA0FB28062 +:10519000A4F3FF7F58FFFF7F7CF6FF7FB0B0A880AD +:1051A00098F6FF7F54FFFF7FF4F8FF7F01000000B7 +:1051B00064FAFF7F0084048074FAFF7FB0B0A88097 +:1051C00074FAFF7F40FFFF7F5CFDFF7F0084048057 +:1051D0007CFDFF7FB0B0A88094FDFF7F0100000040 +:1051E000080000200000000000000000F402002081 +:1051F0005C030020C4030020000000000000000049 :10520000000000000000000000000000000000009E :10521000000000000000000000000000000000008E :10522000000000000000000000000000000000007E @@ -1320,8 +1320,8 @@ :10526000000000000000000000000000000000003E :10527000000000000000000000000000000000002E :10528000000000000000000000000000000000001E -:10529000000000000000000000000000000000000E -:1052A00000000000000000000000000000000000FE +:1052900001000000000000000E33CDAB34126DE6BB +:1052A000ECDE05000B000000000000000000000024 :1052B00000000000000000000000000000000000EE :1052C00000000000000000000000000000000000DE :1052D00000000000000000000000000000000000CE @@ -1342,5 +1342,39 @@ :1053C00000000000000000000000000000000000DD :1053D00000000000000000000000000000000000CD :1053E00000000000000000000000000000000000BD +:1053F00000000000000000000000000000000000AD +:10540000000000000000000000000000000000009C +:10541000000000000000000000000000000000008C +:10542000000000000000000000000000000000007C +:10543000000000000000000000000000000000006C +:10544000000000000000000000000000000000005C +:10545000000000000000000000000000000000004C +:10546000000000000000000000000000000000003C +:10547000000000000000000000000000000000002C +:10548000000000000000000000000000000000001C +:10549000000000000000000000000000000000000C +:1054A00000000000000000000000000000000000FC +:1054B00000000000000000000000000000000000EC +:1054C00000000000000000000000000000000000DC +:1054D00000000000000000000000000000000000CC +:1054E00000000000000000000000000000000000BC +:1054F00000000000000000000000000000000000AC +:10550000000000000000000000000000000000009B +:10551000000000000000000000000000000000008B +:10552000000000000000000000000000000000007B +:10553000000000000000000000000000000000006B +:10554000000000000000000000000000000000005B +:10555000000000000000000000000000000000004B +:10556000000000000000000000000000000000003B +:10557000000000000000000000000000000000002B +:10558000000000000000000000000000000000001B +:10559000000000000000000000000000000000000B +:1055A00000000000000000000000000000000000FB +:1055B00000000000000000000000000000000000EB +:1055C00000000000000000000000000000000000DB +:1055D00000000000000000000000000000000000CB +:1055E00000000000000000000000000000000000BB +:1055F00000000000000000000000000000000000AB +:10560000000000000000000000000000000000009A :0400000508000805E2 :00000001FF diff --git a/firmware/build_stm6/inlretro_stm.map b/firmware/build_stm6/inlretro_stm.map index 84aea4b..86c20a0 100644 --- a/firmware/build_stm6/inlretro_stm.map +++ b/firmware/build_stm6/inlretro_stm.map @@ -1,7 +1,7 @@ Archive member included to satisfy reference by file (symbol) c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) - C:\Users\paul\AppData\Local\Temp\ccEEvCO6.o (__aeabi_unwind_cpp_pr0) + C:\Users\paul\AppData\Local\Temp\cc4sAHYU.o (__aeabi_unwind_cpp_pr0) c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(libunwind.o) c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) (restore_core_regs) c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) @@ -51,9 +51,9 @@ c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(_exit.o) c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-abort.o) (_exit) c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(_thumb1_case_uqi.o) - C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o (__gnu_thumb1_case_uqi) + C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o (__gnu_thumb1_case_uqi) c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(_thumb1_case_uhi.o) - C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o (__gnu_thumb1_case_uhi) + C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o (__gnu_thumb1_case_uhi) Allocating common symbols Common symbol size file @@ -90,6 +90,7 @@ buff2 0x14 source/buffer.o (symbol from plugin) cur_bank 0x1 source/nes.o (symbol from plugin) addr_ptr 0x4 source/bootload.o (symbol from plugin) tdi_pin 0x1 source/jtag.o (symbol from plugin) +lfsr 0x4 source/stuff.o (symbol from plugin) buff0 0x14 source/buffer.o (symbol from plugin) raw_bank_status 0x10 source/buffer.o (symbol from plugin) oper_info_struct 0x20 source/operation.o (symbol from plugin) @@ -128,39 +129,39 @@ Discarded input sections .ARM.exidx 0x00000000 0x8 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o .ARM.attributes 0x00000000 0x1b c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o - .text 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o - .stack 0x00000000 0xc00 C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o - .heap 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o - .debug_line 0x00000000 0x7c C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o - .debug_info 0x00000000 0x22 C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o - .debug_abbrev 0x00000000 0x12 C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o + .text 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccodwd7C.o + .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccodwd7C.o + .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccodwd7C.o + .stack 0x00000000 0xc00 C:\Users\paul\AppData\Local\Temp\ccodwd7C.o + .heap 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccodwd7C.o + .debug_line 0x00000000 0x7c C:\Users\paul\AppData\Local\Temp\ccodwd7C.o + .debug_info 0x00000000 0x22 C:\Users\paul\AppData\Local\Temp\ccodwd7C.o + .debug_abbrev 0x00000000 0x12 C:\Users\paul\AppData\Local\Temp\ccodwd7C.o .debug_aranges - 0x00000000 0x28 C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o - .debug_str 0x00000000 0x80 C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o - .debug_ranges 0x00000000 0x20 C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o + 0x00000000 0x28 C:\Users\paul\AppData\Local\Temp\ccodwd7C.o + .debug_str 0x00000000 0x80 C:\Users\paul\AppData\Local\Temp\ccodwd7C.o + .debug_ranges 0x00000000 0x20 C:\Users\paul\AppData\Local\Temp\ccodwd7C.o .ARM.attributes - 0x00000000 0x1b C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o - .text 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .text 0x00000000 0x4 C:\Users\paul\AppData\Local\Temp\ccEEvCO6.o - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccEEvCO6.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccEEvCO6.o - .ARM.extab 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccEEvCO6.o - .ARM.exidx 0x00000000 0x8 C:\Users\paul\AppData\Local\Temp\ccEEvCO6.o - .debug_line 0x00000000 0x49 C:\Users\paul\AppData\Local\Temp\ccEEvCO6.o - .debug_info 0x00000000 0x26 C:\Users\paul\AppData\Local\Temp\ccEEvCO6.o - .debug_abbrev 0x00000000 0x14 C:\Users\paul\AppData\Local\Temp\ccEEvCO6.o + 0x00000000 0x1b C:\Users\paul\AppData\Local\Temp\ccodwd7C.o + .text 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .text 0x00000000 0x4 C:\Users\paul\AppData\Local\Temp\cc4sAHYU.o + .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc4sAHYU.o + .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc4sAHYU.o + .ARM.extab 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc4sAHYU.o + .ARM.exidx 0x00000000 0x8 C:\Users\paul\AppData\Local\Temp\cc4sAHYU.o + .debug_line 0x00000000 0x49 C:\Users\paul\AppData\Local\Temp\cc4sAHYU.o + .debug_info 0x00000000 0x26 C:\Users\paul\AppData\Local\Temp\cc4sAHYU.o + .debug_abbrev 0x00000000 0x14 C:\Users\paul\AppData\Local\Temp\cc4sAHYU.o .debug_aranges - 0x00000000 0x20 C:\Users\paul\AppData\Local\Temp\ccEEvCO6.o - .debug_str 0x00000000 0x7d C:\Users\paul\AppData\Local\Temp\ccEEvCO6.o + 0x00000000 0x20 C:\Users\paul\AppData\Local\Temp\cc4sAHYU.o + .debug_str 0x00000000 0x7d C:\Users\paul\AppData\Local\Temp\cc4sAHYU.o .ARM.attributes - 0x00000000 0x21 C:\Users\paul\AppData\Local\Temp\ccEEvCO6.o - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc6JnGGt.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc6JnGGt.o - .ARM.extab 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc6JnGGt.o + 0x00000000 0x21 C:\Users\paul\AppData\Local\Temp\cc4sAHYU.o + .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccCeVEpf.o + .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccCeVEpf.o + .ARM.extab 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccCeVEpf.o .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) .debug_frame 0x00000000 0x2b4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) @@ -423,10 +424,10 @@ Linker script and memory map LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtbegin.o LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o -LOAD C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o -LOAD C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o -LOAD C:\Users\paul\AppData\Local\Temp\ccEEvCO6.o -LOAD C:\Users\paul\AppData\Local\Temp\cc6JnGGt.o +LOAD C:\Users\paul\AppData\Local\Temp\ccodwd7C.o +LOAD C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o +LOAD C:\Users\paul\AppData\Local\Temp\cc4sAHYU.o +LOAD C:\Users\paul\AppData\Local\Temp\ccCeVEpf.o START GROUP LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a @@ -440,17 +441,17 @@ END GROUP LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtend.o LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtn.o -.text 0x08000000 0x4ec0 +.text 0x08000000 0x50e0 *(.isr_vector) - .isr_vector 0x08000000 0xc0 C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o + .isr_vector 0x08000000 0xc0 C:\Users\paul\AppData\Local\Temp\ccodwd7C.o 0x08000000 __isr_vector *(.usb_driver) - .usb_driver 0x080000c0 0x3bc C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + .usb_driver 0x080000c0 0x3bc C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o 0x08000198 USB_IRQHandler *(.usb_desc) - .usb_desc 0x0800047c 0xb8 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + .usb_desc 0x0800047c 0xb8 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o *(.hardfault) - .hardfault 0x08000534 0x2 C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o + .hardfault 0x08000534 0x2 C:\Users\paul\AppData\Local\Temp\ccodwd7C.o 0x08000534 TIM1_CC_IRQHandler 0x08000534 TSC_IRQHandler 0x08000534 ADC1_COMP_IRQHandler @@ -489,7 +490,7 @@ LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eab 0x08000534 USART1_IRQHandler 0x08000534 TIM1_BRK_UP_TRG_COM_IRQHandler *fill* 0x08000536 0x2 ff - .hardfault 0x08000538 0xc C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + .hardfault 0x08000538 0xc C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o 0x08000538 HardFault_Handler *_thumb1_case_uqi.o() .text 0x08000544 0x14 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(_thumb1_case_uqi.o) @@ -505,11 +506,11 @@ LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eab 0x0800058c 0x1e c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(_thumb1_case_uhi.o) *(.fw_update) *fill* 0x080005aa 0x2 ff - .fw_update 0x080005ac 0x150 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + .fw_update 0x080005ac 0x150 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o 0x00000770 . = 0x770 *fill* 0x080006fc 0x74 ff *(.fw_up_main) - .fw_up_main 0x08000770 0x70 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + .fw_up_main 0x08000770 0x70 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o 0x00000800 . = 0x800 *fill* 0x080007e0 0x20 ff *(.appver) @@ -517,169 +518,173 @@ LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eab *fill* 0x08000800 0x4 ff *(.reset_handler) .reset_handler - 0x08000804 0x3c C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o + 0x08000804 0x3c C:\Users\paul\AppData\Local\Temp\ccodwd7C.o 0x08000804 Reset_Handler *(.usbFuncWrite) - .usbFuncWrite 0x08000840 0x44 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + .usbFuncWrite 0x08000840 0x44 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o *(.usbFuncSetup) - .usbFuncSetup 0x08000884 0x1804 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + .usbFuncSetup 0x08000884 0x1994 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o *(.text*) - .text.snes_page_rd_poll.constprop.23 - 0x08002088 0x7c C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .text.nes_cpu_page_rd_poll.constprop.22 - 0x08002104 0x6c C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .text.nes_ppu_page_rd_poll.constprop.20 - 0x08002170 0x68 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + .text.snes_page_rd_poll.constprop.26 + 0x08002218 0x7c C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .text.nes_cpu_page_rd_poll.constprop.25 + 0x08002294 0x6c C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .text.nes_ppu_page_rd_poll.constprop.22 + 0x08002300 0x68 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.append_pairity - 0x080021d8 0x1e C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002368 0x1e C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.delay_us - 0x080021f6 0x14 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - *fill* 0x0800220a 0x2 ff - .text.snes_wr 0x0800220c 0x60 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .text.snes_rd 0x0800226c 0x48 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .text.write_page_snes.constprop.31 - 0x080022b4 0x194 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002386 0x14 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + *fill* 0x0800239a 0x2 ff + .text.lfsr_32 0x0800239c 0x30 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .text.snes_wr 0x080023cc 0x60 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .text.snes_rd 0x0800242c 0x48 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .text.write_page_snes.constprop.33 + 0x08002474 0x194 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.snes_3v_flash_wr - 0x08002448 0x50 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002608 0x50 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.snes_5v_flash_wr - 0x08002498 0x50 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002658 0x50 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.nes_dualport_wr - 0x080024e8 0x50 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x080026a8 0x50 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.nes_dualport_rd - 0x08002538 0x38 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x080026f8 0x38 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.nes_ppu_wr - 0x08002570 0x50 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002730 0x50 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.nes_ppu_rd - 0x080025c0 0x38 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002780 0x38 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.mmc3_chrrom_flash_wr - 0x080025f8 0x44 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x080027b8 0x44 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.nrom_chrrom_flash_wr - 0x0800263c 0x44 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x080027fc 0x44 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.nes_cpu_wr - 0x08002680 0x6c C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002840 0x6c C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.cdream_chrrom_flash_wr - 0x080026ec 0x84 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x080028ac 0x84 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.mmc4_chrrom_flash_wr - 0x08002770 0x74 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002930 0x74 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.cnrom_chrrom_flash_wr - 0x080027e4 0x7c C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x080029a4 0x7c C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.nes_cpu_rd - 0x08002860 0x40 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002a20 0x40 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .text.map30_prgrom_flash_wr + 0x08002a60 0x74 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.mmc4_prgrom_sop_flash_wr - 0x080028a0 0x54 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002ad4 0x54 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.mmc3_prgrom_flash_wr - 0x080028f4 0x50 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002b28 0x50 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.disc_push_exp0_prgrom_wr - 0x08002944 0x48 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002b78 0x48 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.discrete_exp0_prgrom_wr - 0x0800298c 0x58 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002bc0 0x58 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.unrom_prgrom_flash_wr - 0x080029e4 0x64 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002c18 0x64 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.nrom_prgrom_flash_wr - 0x08002a48 0x44 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002c7c 0x44 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.pbje_scan - 0x08002a8c 0x10c C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002cc0 0x10c C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.pbje_state_change - 0x08002b98 0x88 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002dcc 0x88 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.jtag_init_pbje - 0x08002c20 0xe0 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002e54 0xe0 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.jtag_run_pbje.part.0 - 0x08002d00 0xb8 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002f34 0xb8 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.io_reset - 0x08002db8 0x154 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08002fec 0x174 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.write_page_verify - 0x08002f0c 0x5c C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08003160 0x5c C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.write_page - 0x08002f68 0x34 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x080031bc 0x34 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.get_next_buff - 0x08002f9c 0x54 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .text.mmc1_wr.constprop.11 - 0x08002ff0 0x22 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - *fill* 0x08003012 0x2 ff + 0x080031f0 0x54 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .text.mmc1_wr.constprop.12 + 0x08003244 0x22 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + *fill* 0x08003266 0x2 ff .text.mmc1_chrrom_flash_wr - 0x08003014 0x60 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08003268 0x60 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.mmc1_prgrom_flash_wr - 0x08003074 0x50 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x080032c8 0x50 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.swim_wotf - 0x080030c4 0xb4 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x08003318 0xb4 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.swim_rotf - 0x08003178 0xac C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x080033cc 0xac C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .text.startup.main - 0x08003224 0xafc C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - 0x08003224 main - .text 0x08003d20 0x154 C:\Users\paul\AppData\Local\Temp\cc6JnGGt.o - 0x08003d20 swim_xfr - .text 0x08003e74 0xa08 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) - 0x08004130 _Unwind_GetCFA - 0x08004134 __gnu_Unwind_RaiseException - 0x08004188 __gnu_Unwind_ForcedUnwind - 0x0800419c __gnu_Unwind_Resume - 0x080041e4 __gnu_Unwind_Resume_or_Rethrow - 0x08004200 _Unwind_Complete - 0x08004204 _Unwind_DeleteException - 0x08004214 _Unwind_VRS_Get - 0x0800425c _Unwind_VRS_Set - 0x080042a4 __gnu_Unwind_Backtrace - 0x080045f4 __aeabi_unwind_cpp_pr0 - 0x08004600 __aeabi_unwind_cpp_pr1 - 0x0800460c __aeabi_unwind_cpp_pr2 - 0x08004618 _Unwind_VRS_Pop - .text 0x0800487c 0x144 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(libunwind.o) - 0x0800487c __restore_core_regs - 0x0800487c restore_core_regs - 0x080048a8 __gnu_Unwind_Restore_VFP - 0x080048ac __gnu_Unwind_Save_VFP - 0x080048b0 __gnu_Unwind_Restore_VFP_D - 0x080048b4 __gnu_Unwind_Save_VFP_D - 0x080048b8 __gnu_Unwind_Restore_VFP_D_16_to_31 - 0x080048bc __gnu_Unwind_Save_VFP_D_16_to_31 - 0x080048c0 __gnu_Unwind_Restore_WMMXD - 0x080048c4 __gnu_Unwind_Save_WMMXD - 0x080048c8 __gnu_Unwind_Restore_WMMXC - 0x080048cc __gnu_Unwind_Save_WMMXC - 0x080048d0 ___Unwind_RaiseException - 0x080048d0 _Unwind_RaiseException - 0x08004900 _Unwind_Resume - 0x08004900 ___Unwind_Resume - 0x08004930 _Unwind_Resume_or_Rethrow - 0x08004930 ___Unwind_Resume_or_Rethrow - 0x08004960 _Unwind_ForcedUnwind - 0x08004960 ___Unwind_ForcedUnwind - 0x08004990 ___Unwind_Backtrace - 0x08004990 _Unwind_Backtrace - .text 0x080049c0 0x39c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) - 0x08004a14 __gnu_unwind_execute - 0x08004d04 __gnu_unwind_frame - 0x08004d2c _Unwind_GetRegionStart - 0x08004d38 _Unwind_GetLanguageSpecificData - 0x08004d4c _Unwind_GetDataRelBase - 0x08004d54 _Unwind_GetTextRelBase - .text.abort 0x08004d5c 0x10 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-abort.o) - 0x08004d5c abort - .text.memcpy 0x08004d6c 0x88 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memcpy-stub.o) - 0x08004d6c memcpy + 0x08003478 0xac0 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + 0x08003478 main + *fill* 0x08003f38 0x8 ff + .text 0x08003f40 0x154 C:\Users\paul\AppData\Local\Temp\ccCeVEpf.o + 0x08003f40 swim_xfr + .text 0x08004094 0xa08 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) + 0x08004350 _Unwind_GetCFA + 0x08004354 __gnu_Unwind_RaiseException + 0x080043a8 __gnu_Unwind_ForcedUnwind + 0x080043bc __gnu_Unwind_Resume + 0x08004404 __gnu_Unwind_Resume_or_Rethrow + 0x08004420 _Unwind_Complete + 0x08004424 _Unwind_DeleteException + 0x08004434 _Unwind_VRS_Get + 0x0800447c _Unwind_VRS_Set + 0x080044c4 __gnu_Unwind_Backtrace + 0x08004814 __aeabi_unwind_cpp_pr0 + 0x08004820 __aeabi_unwind_cpp_pr1 + 0x0800482c __aeabi_unwind_cpp_pr2 + 0x08004838 _Unwind_VRS_Pop + .text 0x08004a9c 0x144 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(libunwind.o) + 0x08004a9c __restore_core_regs + 0x08004a9c restore_core_regs + 0x08004ac8 __gnu_Unwind_Restore_VFP + 0x08004acc __gnu_Unwind_Save_VFP + 0x08004ad0 __gnu_Unwind_Restore_VFP_D + 0x08004ad4 __gnu_Unwind_Save_VFP_D + 0x08004ad8 __gnu_Unwind_Restore_VFP_D_16_to_31 + 0x08004adc __gnu_Unwind_Save_VFP_D_16_to_31 + 0x08004ae0 __gnu_Unwind_Restore_WMMXD + 0x08004ae4 __gnu_Unwind_Save_WMMXD + 0x08004ae8 __gnu_Unwind_Restore_WMMXC + 0x08004aec __gnu_Unwind_Save_WMMXC + 0x08004af0 ___Unwind_RaiseException + 0x08004af0 _Unwind_RaiseException + 0x08004b20 _Unwind_Resume + 0x08004b20 ___Unwind_Resume + 0x08004b50 _Unwind_Resume_or_Rethrow + 0x08004b50 ___Unwind_Resume_or_Rethrow + 0x08004b80 _Unwind_ForcedUnwind + 0x08004b80 ___Unwind_ForcedUnwind + 0x08004bb0 ___Unwind_Backtrace + 0x08004bb0 _Unwind_Backtrace + .text 0x08004be0 0x39c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) + 0x08004c34 __gnu_unwind_execute + 0x08004f24 __gnu_unwind_frame + 0x08004f4c _Unwind_GetRegionStart + 0x08004f58 _Unwind_GetLanguageSpecificData + 0x08004f6c _Unwind_GetDataRelBase + 0x08004f74 _Unwind_GetTextRelBase + .text.abort 0x08004f7c 0x10 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-abort.o) + 0x08004f7c abort + .text.memcpy 0x08004f8c 0x88 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memcpy-stub.o) + 0x08004f8c memcpy .text._raise_r - 0x08004df4 0x5c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - 0x08004df4 _raise_r - .text.raise 0x08004e50 0x14 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - 0x08004e50 raise - .text._kill_r 0x08004e64 0x28 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) - 0x08004e64 _kill_r + 0x08005014 0x5c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) + 0x08005014 _raise_r + .text.raise 0x08005070 0x14 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) + 0x08005070 raise + .text._kill_r 0x08005084 0x28 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) + 0x08005084 _kill_r .text._getpid_r - 0x08004e8c 0x8 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) - 0x08004e8c _getpid_r - .text._getpid 0x08004e94 0x10 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(getpid.o) - 0x08004e94 _getpid - .text._kill 0x08004ea4 0x10 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(kill.o) - 0x08004ea4 _kill - .text._exit 0x08004eb4 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(_exit.o) - 0x08004eb4 _exit + 0x080050ac 0x8 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) + 0x080050ac _getpid_r + .text._getpid 0x080050b4 0x10 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(getpid.o) + 0x080050b4 _getpid + .text._kill 0x080050c4 0x10 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(kill.o) + 0x080050c4 _kill + .text._exit 0x080050d4 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(_exit.o) + 0x080050d4 _exit *(.init) - .init 0x08004eb8 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o - 0x08004eb8 _init + .init 0x080050d8 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o + 0x080050d8 _init *(.fini) - .fini 0x08004ebc 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o - 0x08004ebc _fini + .fini 0x080050dc 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o + 0x080050dc _fini *crtbegin.o(.ctors) *crtbegin?.o(.ctors) *(EXCLUDE_FILE(*crtend.o *crtend?.o) .ctors) @@ -693,42 +698,42 @@ LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eab *(.rodata*) *(.eh_frame*) -.glue_7 0x08004ec0 0x0 - .glue_7 0x08004ec0 0x0 linker stubs +.glue_7 0x080050e0 0x0 + .glue_7 0x080050e0 0x0 linker stubs -.glue_7t 0x08004ec0 0x0 - .glue_7t 0x08004ec0 0x0 linker stubs +.glue_7t 0x080050e0 0x0 + .glue_7t 0x080050e0 0x0 linker stubs -.vfp11_veneer 0x08004ec0 0x0 - .vfp11_veneer 0x08004ec0 0x0 linker stubs +.vfp11_veneer 0x080050e0 0x0 + .vfp11_veneer 0x080050e0 0x0 linker stubs -.v4_bx 0x08004ec0 0x0 - .v4_bx 0x08004ec0 0x0 linker stubs +.v4_bx 0x080050e0 0x0 + .v4_bx 0x080050e0 0x0 linker stubs -.iplt 0x08004ec0 0x0 - .iplt 0x08004ec0 0x0 C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o +.iplt 0x080050e0 0x0 + .iplt 0x080050e0 0x0 C:\Users\paul\AppData\Local\Temp\ccodwd7C.o -.ARM.extab 0x08004ec0 0x30 +.ARM.extab 0x080050e0 0x30 *(.ARM.extab* .gnu.linkonce.armextab.*) - .ARM.extab 0x08004ec0 0x24 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) - .ARM.extab 0x08004ee4 0xc c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) - 0x08004ef0 __exidx_start = . + .ARM.extab 0x080050e0 0x24 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) + .ARM.extab 0x08005104 0xc c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) + 0x08005110 __exidx_start = . -.ARM.exidx 0x08004ef0 0xd0 +.ARM.exidx 0x08005110 0xd0 *(.ARM.exidx* .gnu.linkonce.armexidx.*) - .ARM.exidx 0x08004ef0 0x8 C:\Users\paul\AppData\Local\Temp\cc6JnGGt.o + .ARM.exidx 0x08005110 0x8 C:\Users\paul\AppData\Local\Temp\ccCeVEpf.o 0x10 (size before relaxing) - .ARM.exidx 0x08004ef8 0x98 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) + .ARM.exidx 0x08005118 0x98 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) 0xd8 (size before relaxing) - .ARM.exidx 0x08004f90 0x30 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) + .ARM.exidx 0x080051b0 0x30 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) 0x48 (size before relaxing) - 0x08004fc0 __exidx_end = . - 0x08004fc0 __etext = ALIGN (0x4) + 0x080051e0 __exidx_end = . + 0x080051e0 __etext = ALIGN (0x4) -.rel.dyn 0x08004fc0 0x0 - .rel.iplt 0x08004fc0 0x0 C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o +.rel.dyn 0x080051e0 0x0 + .rel.iplt 0x080051e0 0x0 C:\Users\paul\AppData\Local\Temp\ccodwd7C.o -.data 0x20000000 0x430 load address 0x08004fc0 +.data 0x20000000 0x430 load address 0x080051e0 0x20000000 __data_start__ = . *(vtable) *(.data*) @@ -756,79 +761,84 @@ LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eab *(.fastrun) 0x20000430 __data_end__ = . -.igot.plt 0x20000430 0x0 load address 0x080053f0 - .igot.plt 0x20000430 0x0 C:\Users\paul\AppData\Local\Temp\ccYRiP7M.o +.igot.plt 0x20000430 0x0 load address 0x08005610 + .igot.plt 0x20000430 0x0 C:\Users\paul\AppData\Local\Temp\ccodwd7C.o -.bss 0x20000430 0x2f8 load address 0x080053f0 +.bss 0x20000430 0x304 load address 0x08005610 0x20000430 . = ALIGN (0x4) 0x20000430 __bss_start__ = . *(.bss*) - .bss.addr_ptr 0x20000430 0x4 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .bss.addrh 0x20000434 0x2 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + .bss.addr_ptr 0x20000430 0x4 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .bss.addrh 0x20000434 0x2 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .bss.bank_table - 0x20000436 0x2 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .bss.buff0 0x20000438 0x14 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .bss.buff1 0x2000044c 0x14 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .bss.buff2 0x20000460 0x14 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .bss.buff3 0x20000474 0x14 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .bss.cur_bank 0x20000488 0x1 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x20000436 0x2 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .bss.buff0 0x20000438 0x14 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .bss.buff1 0x2000044c 0x14 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .bss.buff2 0x20000460 0x14 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .bss.buff3 0x20000474 0x14 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .bss.cur_bank 0x20000488 0x1 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o *fill* 0x20000489 0x3 - .bss.cur_buff 0x2000048c 0x4 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + .bss.cur_buff 0x2000048c 0x4 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .bss.cur_usb_load_buff - 0x20000490 0x4 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x20000490 0x4 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .bss.incoming_bytes_remain - 0x20000494 0x1 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .bss.num_buff.5067 - 0x20000495 0x1 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - *fill* 0x20000496 0x2 + 0x20000494 0x1 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + *fill* 0x20000495 0x3 + .bss.lfsr 0x20000498 0x4 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .bss.num_buff.5087 + 0x2000049c 0x1 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + *fill* 0x2000049d 0x3 .bss.oper_info_struct - 0x20000498 0x20 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x200004a0 0x20 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .bss.pbje_command - 0x200004b8 0x1 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x200004c0 0x1 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .bss.pbje_data - 0x200004b9 0x20 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x200004c1 0x20 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .bss.pbje_numclk - 0x200004d9 0x1 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x200004e1 0x1 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .bss.pbje_status - 0x200004da 0x1 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x200004e2 0x1 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .bss.raw_bank_status - 0x200004db 0x10 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - *fill* 0x200004eb 0x1 + 0x200004e3 0x10 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + *fill* 0x200004f3 0x1 .bss.raw_buffer16 - 0x200004ec 0x200 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x200004f4 0x200 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .bss.rv16.4756 - 0x200006ec 0x8 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .bss.rv16.4987 - 0x200006f4 0x8 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x200006f4 0x8 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .bss.rv16.5007 + 0x200006fc 0x8 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .bss.stm_debug_disable + 0x20000704 0x1 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + *fill* 0x20000705 0x3 .bss.swim_base - 0x200006fc 0x4 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .bss.swim_pin 0x20000700 0x1 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - *fill* 0x20000701 0x3 - .bss.tck_base 0x20000704 0x4 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .bss.tck_pin 0x20000708 0x1 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - *fill* 0x20000709 0x3 - .bss.tdi_base 0x2000070c 0x4 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .bss.tdi_pin 0x20000710 0x1 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - *fill* 0x20000711 0x3 - .bss.tdo_base 0x20000714 0x4 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .bss.tdo_pin 0x20000718 0x1 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - *fill* 0x20000719 0x3 - .bss.tms_base 0x2000071c 0x4 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .bss.tms_pin 0x20000720 0x1 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x20000708 0x4 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .bss.swim_pin 0x2000070c 0x1 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + *fill* 0x2000070d 0x3 + .bss.tck_base 0x20000710 0x4 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .bss.tck_pin 0x20000714 0x1 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + *fill* 0x20000715 0x3 + .bss.tdi_base 0x20000718 0x4 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .bss.tdi_pin 0x2000071c 0x1 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + *fill* 0x2000071d 0x3 + .bss.tdo_base 0x20000720 0x4 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .bss.tdo_pin 0x20000724 0x1 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + *fill* 0x20000725 0x3 + .bss.tms_base 0x20000728 0x4 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .bss.tms_pin 0x2000072c 0x1 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o *(COMMON) - *fill* 0x20000721 0x3 - COMMON 0x20000724 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-reent.o) - 0x20000724 errno - 0x20000728 . = ALIGN (0x4) - 0x20000728 __bss_end__ = . + *fill* 0x2000072d 0x3 + COMMON 0x20000730 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-reent.o) + 0x20000730 errno + 0x20000734 . = ALIGN (0x4) + 0x20000734 __bss_end__ = . -.heap 0x20000728 0x0 - 0x20000728 __end__ = . - 0x20000728 PROVIDE (end = .) +.heap 0x20000734 0x0 + 0x20000734 __end__ = . + 0x20000734 PROVIDE (end = .) *(.heap*) - 0x20000728 __HeapLimit = . + 0x20000734 __HeapLimit = . -.stack_dummy 0x20000728 0x0 +.stack_dummy 0x20000734 0x0 *(.stack*) 0x20001800 __StackTop = (ORIGIN (RAM) + LENGTH (RAM)) 0x20001800 __StackLimit = (__StackTop - SIZEOF (.stack_dummy)) @@ -841,45 +851,45 @@ OUTPUT(build_stm/inlretro_stm.elf elf32-littlearm) .ARM.attributes 0x00000000 0x1e c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o .ARM.attributes - 0x0000001e 0x2f C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x0000001e 0x2f C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .ARM.attributes - 0x0000004d 0x21 C:\Users\paul\AppData\Local\Temp\cc6JnGGt.o + 0x0000004d 0x21 C:\Users\paul\AppData\Local\Temp\ccCeVEpf.o .comment 0x00000000 0x7f - .comment 0x00000000 0x7f C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + .comment 0x00000000 0x7f C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o 0x80 (size before relaxing) -.debug_info 0x00000000 0x4cb4 - .debug_info 0x00000000 0x4c8e C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .debug_info 0x00004c8e 0x26 C:\Users\paul\AppData\Local\Temp\cc6JnGGt.o +.debug_info 0x00000000 0x501b + .debug_info 0x00000000 0x4ff5 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .debug_info 0x00004ff5 0x26 C:\Users\paul\AppData\Local\Temp\ccCeVEpf.o -.debug_abbrev 0x00000000 0x686 - .debug_abbrev 0x00000000 0x672 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .debug_abbrev 0x00000672 0x14 C:\Users\paul\AppData\Local\Temp\cc6JnGGt.o +.debug_abbrev 0x00000000 0x69e + .debug_abbrev 0x00000000 0x68a C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .debug_abbrev 0x0000068a 0x14 C:\Users\paul\AppData\Local\Temp\ccCeVEpf.o -.debug_loc 0x00000000 0x4ef7 - .debug_loc 0x00000000 0x4ef7 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o +.debug_loc 0x00000000 0x503a + .debug_loc 0x00000000 0x503a C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o -.debug_aranges 0x00000000 0x1c8 +.debug_aranges 0x00000000 0x1d8 .debug_aranges - 0x00000000 0x1a8 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o + 0x00000000 0x1b8 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .debug_aranges - 0x000001a8 0x20 C:\Users\paul\AppData\Local\Temp\cc6JnGGt.o + 0x000001b8 0x20 C:\Users\paul\AppData\Local\Temp\ccCeVEpf.o -.debug_ranges 0x00000000 0xc80 - .debug_ranges 0x00000000 0xc80 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o +.debug_ranges 0x00000000 0xce8 + .debug_ranges 0x00000000 0xce8 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o -.debug_line 0x00000000 0x17fe - .debug_line 0x00000000 0x170b C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - .debug_line 0x0000170b 0xf3 C:\Users\paul\AppData\Local\Temp\cc6JnGGt.o +.debug_line 0x00000000 0x1923 + .debug_line 0x00000000 0x1830 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + .debug_line 0x00001830 0xf3 C:\Users\paul\AppData\Local\Temp\ccCeVEpf.o -.debug_str 0x00000000 0x110f - .debug_str 0x00000000 0x1096 C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o - 0x11ab (size before relaxing) - .debug_str 0x00001096 0x79 C:\Users\paul\AppData\Local\Temp\cc6JnGGt.o +.debug_str 0x00000000 0x1187 + .debug_str 0x00000000 0x110e C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o + 0x1233 (size before relaxing) + .debug_str 0x0000110e 0x79 C:\Users\paul\AppData\Local\Temp\ccCeVEpf.o -.debug_frame 0x00000000 0x54c - .debug_frame 0x00000000 0x54c C:\Users\paul\AppData\Local\Temp\cckypYhD.ltrans0.ltrans.o +.debug_frame 0x00000000 0x584 + .debug_frame 0x00000000 0x584 C:\Users\paul\AppData\Local\Temp\ccmcEXxC.ltrans0.ltrans.o .stabstr 0x00000000 0x76 .stabstr 0x00000000 0x76 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(getpid.o) diff --git a/firmware/build_stm6/inlretro_stm_AV00.bin b/firmware/build_stm6/inlretro_stm_AV00.bin new file mode 100644 index 0000000..9d300da Binary files /dev/null and b/firmware/build_stm6/inlretro_stm_AV00.bin differ diff --git a/firmware/build_stm6/inlretro_stm_AV01.bin b/firmware/build_stm6/inlretro_stm_AV01.bin new file mode 100644 index 0000000..dd9a419 Binary files /dev/null and b/firmware/build_stm6/inlretro_stm_AV01.bin differ diff --git a/firmware/build_stmn/inlretro_stm.axf b/firmware/build_stmn/inlretro_stm.axf new file mode 100644 index 0000000..a255591 Binary files /dev/null and b/firmware/build_stmn/inlretro_stm.axf differ diff --git a/firmware/build_stmn/inlretro_stm.elf b/firmware/build_stmn/inlretro_stm.elf index 4fecbf9..f0eaf7c 100644 Binary files a/firmware/build_stmn/inlretro_stm.elf and b/firmware/build_stmn/inlretro_stm.elf differ diff --git a/firmware/build_stmn/inlretro_stm.hex b/firmware/build_stmn/inlretro_stm.hex index 64b3491..343b12c 100644 --- a/firmware/build_stmn/inlretro_stm.hex +++ b/firmware/build_stmn/inlretro_stm.hex @@ -109,7 +109,7 @@ :1006B000DBE7002C13D10BB2002B10DB80231B05D2 :1006C000C91802236B700B88AB700B881B0AEB7088 :1006D000BFE70B4B0B4ADA60C7E78B24B9E78E24E0 -:1006E000B7E780232B70B5E7EC060020002002401E +:1006E000B7E780232B70B5E7F40600200020024016 :1006F00023016745AB89EFCD00600040FFFF00009C :1007000000ED00E00400FA05FFFFFFFFFFFFFFFF21 :10071000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9 @@ -129,1073 +129,1073 @@ :1007F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF09 :10080000FFFFFFFF09490A4A0A4B9B1A03DD043B1D :10081000C858D050FBDC0849084A0020521A02DDB3 -:10082000043A8850FCDC02F02BFA00005049000822 -:1008300000000020300400203004002008070020C1 +:10082000043A8850FCDC02F039FB0000B04A0008B2 +:1008300000000020300400203004002014070020B5 :1008400070B50E4B1A68537A55685C18E4B2A3422F :100850000ED1537A0A48CB1853720378591AC9B289 :1008600001700020814202D198230130D37070BD05 :1008700006780130EE540133DBB2E8E79004002043 -:1008800095040020FF23F7B5C34C0500238083792E -:100890000093407801380A2801D901F0A3F9FFF745 -:1008A0006BFE0B00B404CC05A1094B08A1098E090D -:1008B0001C07A407EE074808A878AB8819281BD89E -:1008C000FFF75AFE1E002600EC00B8016002D202BB -:1008D0004E03D603E703F203F903000408041004EF -:1008E00038044704550464048B048B048B041A00F9 -:1008F0001A001A004A0255028C23237000F007FEEA -:10090000E023A64A1B0351690B4353610023F4E71C -:10091000152B01D900F064FC1800FFF72DFE16001E -:1009200021002E003B00480055005F006C0076005F -:1009300081008D009A006104610461046104610416 -:100940006104A70061046104B40090234022DB0528 -:10095000196891431960D9680A43DA600023CCE72B -:100960009023DB051A688E490A401A608022D968F4 -:1009700052000A43DA600023BFE79023DB051A68C0 -:1009800088490A401A608022D968D2000A43DA6096 -:100990000023B2E79023DB051A6883490A401A60F6 -:1009A0008022D96852010A43DA600023A5E7902328 -:1009B000DB051A687D490A401A608022D968D20195 -:1009C0000A43DA60002398E70122794B19689143C2 -:1009D0001960D9680A43DA6000238EE79023DB05AB -:1009E0001A6874490A401A608022D96852030A437F -:1009F000DA60002381E704226D4B19689143196086 -:100A0000D9680A43DA60002377E790230122DB05E7 -:100A1000196891431960D9680A43DA6000236CE7CA -:100A2000654B66491A680A401A608022D968D20468 -:100A30000A43DA60002360E79023DB051A68604907 -:100A40000A401A608022D968D2050A43DA6000237E -:100A500053E79023DB051A6858490A401A60802240 -:100A6000D968D2040A43DA60002346E79023DB0505 -:100A70001A6854490A401A608022D96852050A430C -:100A8000DA60002339E790230122DB0519689143DE -:100A90001960D9680A43DA6000232EE7152B00D9C4 -:100AA000A1E31800FFF768FD160021002C003700B5 -:100AB00042004D00570062006C0090009A00A500B3 -:100AC0009F039F039F039F039F039F03B0009F0308 -:100AD0009F03BB0090234021DB051A688A431A60FC -:100AE000DA688A43DA60002307E79023DB05196898 -:100AF0002B4801401960DA680240DA600023FCE606 -:100B00009023DB051968274801401960DA68024024 -:100B1000DA600023F1E69023DB05196822480140E2 -:100B20001960DA680240DA600023E6E69023DB050C -:100B300019681E4801401960DA680240DA60002333 -:100B4000DBE601211A4B1A688A431A60DA688A4385 -:100B5000DA600023D1E69023DB05196815480140CF -:100B60001960DA680240DA600023C6E60421104BFF -:100B70001A688A431A60DA688A43DA600023BCE69E -:100B800090230121DB051A688A431A60DA688A43D8 -:100B9000DA600023B1E6C046F406002000100240EF -:100BA000FFFEFFFFFFFBFFFFFFEFFFFFFFBFFFFFAA -:100BB00000040048FFFFEFFF00080048FFFFFFFBB5 -:100BC000FFFFFFBFFFFFFFEFC14BC24819680140A5 -:100BD0001960DA680240DA6000238EE69023DB05B4 -:100BE0001968BD4801401960DA680240DA600023E4 -:100BF00083E69023DB051968B64801401960DA687E -:100C00000240DA60002378E69023DB051968B348D8 -:100C100001401960DA680240DA6000236DE6902333 -:100C20000121DB051A688A431A60DA688A43DA60B0 -:100C3000002362E6152B00D9D8E21800FFF79CFCD0 -:100C400016001E0027003000390042004900520003 -:100C50005900610069007200D602D602D602D6029F -:100C6000D602D6027B00D602D60284009022402310 -:100C7000D20511680B43136000233EE690228023C7 -:100C8000D20511685B000B431360002335E6902208 -:100C90008023D2051168DB000B43136000232CE690 -:100CA00090228023D20511685B010B43136000235F -:100CB00023E690228023D2051168DB010B431360E9 -:100CC00000231AE60123864A11680B4313600023B0 -:100CD00013E690228023D20511685B030B43136057 -:100CE00000230AE604237E4A11680B4313600023A5 -:100CF00003E690220123D20511680B431360002301 -:100D0000FBE58023724ADB0411680B431360002368 -:100D1000F3E590228023D2051168DB050B431360B5 -:100D20000023EAE590228023D2051168DB040B43FF -:100D300013600023E1E590228023D20511685B0552 -:100D40000B4313600023D8E590220123D2051168DC -:100D50000B4313600023D0E5082B00D049E290221A -:100D6000D2055168073B0B4353600023C5E5082BB0 -:100D700000D041E290220121D20553688B43536099 -:100D80000023BAE5152B00D939E21800FFF7F4FB70 -:100D900016001C00220028002E00340039004000FC -:100DA00045004B0051005800370237023702370226 -:100DB000370237025F0037023702660090230822AD -:100DC000DB059A62002398E590231022DB059A62E6 -:100DD000002392E590232022DB059A6200238CE514 -:100DE00090234022DB059A62002386E5902380222F -:100DF000DB059A62002380E50122394B9A620023C9 -:100E00007BE590238022DB05D2009A62002374E503 -:100E10000222334B9A6200236FE590230122DB0507 -:100E20009A62002369E58022294B92019A6200238D -:100E300063E590238022DB0512029A6200235CE5C1 -:100E400090238022DB0592019A62002355E59023CE -:100E50008022DB05D2019A6200234EE59023012215 -:100E6000DB059A62002348E5152B00D9CAE118007A -:100E7000FFF782FB16001C002200280038003E000D -:100E800043004A004F0055005B006200C801C801E2 -:100E9000C801C801C801C8016900C801C8017000C3 -:100EA00090230822DB059A61002326E59023102277 -:100EB000DB059A61002320E590232022DB059A615F -:100EC00000231AE590234022DB059A61002314E5F4 -:100ED00000080048FFFFFFFBFFFFFFBFFFFFFFEF22 -:100EE0000004004890238022DB059A61002304E57A -:100EF0000122CC4B9A610023FFE490238022DB0582 -:100F0000D2009A610023F8E40222C64B9A610023C2 -:100F1000F3E490230122DB059A610023EDE48022B3 -:100F2000C14B92019A610023E7E490238022DB0504 -:100F300012029A610023E0E490238022DB059201F3 -:100F40009A610023D9E490238022DB05D2019A61C3 -:100F50000023D2E490230122DB059A610023CCE434 -:100F600002226270152B00D97EE01800FFF7EAFA22 -:100F70000B131B232B333A434A525A627C7C7C7CF2 -:100F80007C7C6B7C7C7490230822DB051B691340FE -:100F900063800023B1E490231022DB051B6913401A -:100FA00063800023A9E490232022DB051B69134002 -:100FB00063800023A1E490234022DB051B691340DA -:100FC0006380002399E490238022DB051B69134092 -:100FD0006380002391E40122924B1B6913406380DC -:100FE00000238AE490238022DB051B69D200134092 -:100FF0006380002381E402228A4B1B6913406380D3 -:1010000000237AE490230122DB051B6913406380EF -:10101000002372E48022844B92011B691340638099 -:1010200000236AE49023DB051B69DB0BDB03638091 -:10103000002362E490238022DB051B6992011340A8 -:101040006380002359E490238022DB051B69D201D1 -:1010500013406380002350E490230122DB051B69C9 -:1010600013406380002348E4002363708D3344E41D -:1010700080236E4ADB0251690B435361694B6C4913 -:101080001A680A401A60D9686A4A0A43DA6000237B -:1010900033E4644B66491A680A401A60D968654AA5 -:1010A0000A43DA60002328E45E4A614913680B4072 -:1010B0001360002321E45B4A5E4B11680B4313600D -:1010C00000231AE457491B024A69D2B213434B6109 -:1010D000002312E4534B1B691B0AA37001236370A6 -:1010E00000230AE48023514ADB02516950480B4334 -:1010F00053614C4B196801401960D8684D49014350 -:10110000D960C0215069C9020143516104221968A4 -:101110000A431A60022290219A62A022C905086837 -:10112000D20202430A601968434A0A431A60002344 -:10113000FFF7E3FB9022A023D205D168DB020B432B -:10114000D360384A3C4BD1680B43D3600023FFF790 -:10115000D4FB9022D205136838490B401360314A02 -:10116000374913680B4013600023FFF7C6FB90223A -:10117000A023D2051168DB020B431360294A2E4BD2 -:1011800011680B4313600023FFF7B7FB9020C005E5 -:1011900042692C499D000A40C021890029400A4328 -:1011A0004261204A284851691B0A0140FF2005403E -:1011B0002943516115681F491B0229431160516978 -:1011C00008400343536102239361936213681849F3 -:1011D0000B4013600023FFF790FB0023FFF78DFB0C -:1011E0008D23FFF78AFB8D23FFF787FB8D23FFF706 -:1011F00084FB8D23FFF781FB8D23FFF77EFB8D237F -:10120000FFF77BFB8D23FFF778FBAA88AD78032DD2 -:1012100000D1D7E01AD8002D67D0012D69D09623D0 -:10122000DFE0C0460004004800080048001002400B -:10123000FFFFAAAA0000555550550000FFFFFAFF16 -:10124000AFAAFFFFFFFC000003FF0000042D00D148 -:10125000E6E0802DE3D190230122DB0562709A62E3 -:10126000196811431960C046186919681040914304 -:101270001960D9689143D960F021002832D11968EA -:1012800091431960D9681143D9601F691E69C0462E -:101290001D69C046C0461C69C046C046C0461969A3 -:1012A0008C46C046C046C046C046196901911968BF -:1012B00091431960D9689143D9600100174211D157 -:1012C000110016420ED1023115420BD103311442E6 -:1012D00008D163460431134204D1019BD631DB07A8 -:1012E00000D5D139C04B997001E001F05FFA0023BD -:1012F00077E001F05BFA90228023D20511685B0051 -:101300000B43136010239361116830330B43136058 -:101310000823936280231168DB000B4313602023B2 -:10132000936180231168DB010B4313608023936179 -:10133000AE4BAF481968AF4C294319609D618025B9 -:101340004169ED0229434161196821401960DE6855 -:10135000A9490E43DE601E6826401E60DE680E430B -:10136000DE604669354345611D6825401D60DD68C6 -:101370000D43DD60C0254669ED023543456104201B -:101380001D68284318600220A02598621668ED02A7 -:10139000354315601E68994D35431D605569984E5B -:1013A000354055615A69974D2A405A611A68114370 -:1013B00019605A69D2B25A61986198621A681440E9 -:1013C0001C6094E7D2B2022A0ED00023032A08D070 -:1013D0009733012A05D100238B4A8C4913708C4A1C -:1013E0001160814CFFF789FAE023814A1B035169A0 -:1013F0000B43536190230122DB0519689143196067 -:10140000D9681143D9605968114359609A611968C4 -:101410000A4308211A607C4A11707D4A136066E70E -:10142000D2B29823012ADCD1E023714A1B0351690F -:101430000B43536101F03EF959E7E978A888AD788C -:101440000D2D00D1C3E029D8062D00D166E011D8BA -:10145000022D00D169E005D8002D54D0012D61D0B6 -:10146000A02552E0042D00D19FE0052DF8D100F019 -:10147000C7FC55E0092D00D1A0E007D8072D00D109 -:10148000ABE0082DECD100F0CBFD49E00B2D00D1F5 -:10149000A0E000D895E000F05BFE41E0222D47D0AF -:1014A00015D8102D00D19BE007D80E2D00D18BE070 -:1014B0000F2DD5D101F0DCFA32E0202D00D177E0FC -:1014C00000D978E0112DCBD100F084FE28E0822DE8 -:1014D00000D1EFE00AD8802D00D1A1E0812DBFD14D -:1014E0000123637000F0EEFEA07019E0852D00D19D -:1014F000E5E0862D00D1E8E0842DB1D101236370B1 -:1015000000F0C4FCF0E700F0B5FF374C2570414B0C -:10151000A2B2240C5A8100989C81FEBD00F068FFA5 -:101520000025F2E700F0F2FCFAE700F0BDFDF7E776 -:101530009022D2055369324D84002B40C025AD0066 -:1015400025402B435361294B2E4E5D6909023540DE -:10155000FF26344025435D611D68274C25431D60EF -:101560005F69050A37402D023D435D6102259D619B -:101570009D621F681F4D00B22F401F602027976299 -:101580001F683C431C605C6934402143596100285A -:1015900001DA10219162C046C046102191614918BC -:1015A00091611A6815401D60BAE701F04FFAB7E77C -:1015B000194B1870B4E7194B1880B1E700F0D2FF4F -:1015C000AEE700F04FFDABE701F082FAA8E700F0CC -:1015D00097FFA5E700F038FEA2E700F0E1FE9FE7E5 -:1015E00000F0B4FE9CE7C046F4060020000400486A -:1015F00000100240FFFFAAAA0000555550550000F8 -:10160000FFFC000003FF0000000700200008004866 -:10161000FC06002000600040880400203604002002 -:10162000012190226170D205136808248B43136056 -:10163000D36810258B43D360202394629561936116 -:101640005369C34986000B40C021890031400B43D8 -:101650005361C04BC0495F693940FF273E400E438C -:101660005E611E68BD4931431960010AA1405E698F -:1016700037400F4302215F61996199621968B84E42 -:1016800031401960C046C04600B29461002800DABB -:101690009562C046C046C046C046C046C04690227D -:1016A0000821D2051B69916249189161AD4A1B0A54 -:1016B000937035E70123637000F070FC14E7012399 -:1016C0006370A94B1B78A3702AE702236370A74BB2 -:1016D0001B88A3701B0AE37022E7EA78A988AD781B -:1016E000112D7BD007D8012D4ED0002D0DD0022D0D -:1016F0005CD0822646E0212D66D0222D6AD0122DA4 -:10170000F7D10223102063706BE00127984B042669 -:101710001B7810209F40FA43964B01921D68AF62E0 -:101720006B6813406B6000F060FBAF616B683B431C -:101730006B60FA20400000F058FBFA20AF626B6843 -:10174000019A400013406B6000F04FFBAF616B6883 -:10175000013E3B43B6B26B60002EEAD10436FA205C -:1017600000F043FBAF626B68019AFA2013406B6094 -:1017700000F03BFBAF616B68013E3B43B6B26B6070 -:10178000002EECD12670C2E6794A7A4B12781E6898 -:101790009540B56273681020AB43736000F025FB81 -:1017A000B56173682B4373600026EBE70123704A31 -:1017B00063701278704993406E4A9BB212680020A1 -:1017C00001F076FFA070EFE701230020637001F0C5 -:1017D000A7F9F7E7012310206370F8E70223002040 -:1017E000637001F0F7F96080DEE7AB78AA88042B1C -:1017F0001DD007D8022B1FD024D8012B12D087234D -:10180000FFF77BF8072B26D003D8052BF7D15B4BCE -:1018100016E0082B24D0802BF1D100F04BFF0023E1 -:10182000FFF76BF8564A1278A2706370F7E7554BD2 -:101830001B78A3700123F8E7514B1A708322514B98 -:101840001A70ECE74E4B4F4D1A7083232B7000F04B -:1018500051FF2B78EDE74C4B1A70120A5A70DEE7F5 -:10186000494B1A78A2705A78E2709A782271DA7825 -:1018700062711A79A2715B79E3710623D5E7A878C2 -:10188000E9780238AA888A23092801D9FFF735F8B0 -:10189000FEF758FE050A10151C232F3B40483B4B12 -:1018A0001A800023FFF729F8384B1B881B041343C9 -:1018B0009847F6E7FEF75CFF0300FFF71EF8344891 -:1018C000036899B213040B430360EAE730490B68DD -:1018D0001B0C1B0413430B60E3E7042363702C4BC6 -:1018E0001B681A0AA370E2701A0C1B0E2271637136 -:1018F000D7E7022363705300254A1168CB181A8872 -:10190000A2701B881B0AE370CBE7214B49001B68C0 -:10191000CA52C6E71E4953000A68D31802220B6058 -:101920006270ECE71A4B49001868411819600A8088 -:10193000B7E78823FEF7E1FFAA781300303B2F2B8F -:101940003CD8E878032836D8FEF7FCFD383A243333 -:10195000FFFC00000004004803FF00000000555594 -:10196000FFFFAAAAF4060020880400203604002005 -:1019700000070020FC06002004000200D90400201B -:10198000B8040020DA040020B90400203404002048 -:1019900030040020A34B512A00D17AE027D8312A05 -:1019A00055D00FD8002A35D0302A49D0B423FEF7BD -:1019B000A4FF9D4BEFE7B523FEF79FFF9B4BEAE7A4 -:1019C0009B4BE8E7332A50D048D3502AEED1C022AF -:1019D000D20022801A7AA270DA78E2705A7A2271E2 -:1019E0009A7A62719A78A2715B7CE3718FE57F2AA3 -:1019F00000D982E0702A5BD2602A3BD0612A41D0B4 -:101A0000522AD3D180221B889200A3701B0A228005 -:101A1000E3707CE5FF21874BD1540132102AFBD1C2 -:101A20000123824A5B425380814A53807D4A53801E -:101A30007D4A53800122804B1A700023FEF75DFF20 -:101A4000AA88110AD9721A730023FEF756FFAA88D2 -:101A5000110A59739A730023FEF74FFFAA88110ADF -:101A6000D9731A740023FEF748FFAA885A7400231A -:101A7000FEF743FF80235B002380AB886D4AD35C75 -:101A8000A37044E580235B0023806C4B1B68DB78EC -:101A9000F6E7C022D2002280DA7AA2701A7BE270C6 -:101AA0005A7B22719A7B6271DA7BA2711B7C9CE764 -:101AB0005E4B28785C68614B1B68D9787F2800D919 -:101AC00093E05F48009E067000290FD00020009030 -:101AD000982900D18FE004E000200090D02900D1A7 -:101AE00089E0554910300870FF2104E055490B602A -:101AF0009021D9706F3100917DE0072010400328BC -:101B000017D8FEF71FFD191B0214464B802A00D27E -:101B1000FDE4872A14D97032D2B2072A00D9F6E43C -:101B200000222270EA789A72AA881A80EFE43E4B6B -:101B3000ECE7B523FEF7E1FE3C4BE7E73C4BE5E77E -:101B4000A888E978C6B28D19BE22102D2CDC04328B -:101B5000002929D0DD78033AFF2D25D19D78013267 -:101B6000FF2D21D10022D7B2B9421FD8364D002215 -:101B7000AC464F01013F1F727701000A674498701D -:101B8000DA705A729A721A80DA721A735A739A73E6 -:101B9000DA731A745A745F60264B9D19A854013287 -:101BA000D3B29942FAD800222270B0E40132B718B9 -:101BB000204D013FEF5DFF2FD5D0C122F4E7AB7878 -:101BC000002B04D0402B07D0D223FEF796FE2370C3 -:101BD000AA88194B1A709AE480235B002380164B65 -:101BE0001B784DE78023FEF788FED82900D073E7E5 -:101BF00080215C68D97000215972DB78902B00D06D -:101C000085E4712A00D082E40E4BAA881B685968CB -:101C10000A70AA885968120A4A705A7A02325A72AD -:101C200075E4C046600400207404002038040020DD -:101C30004C040020DB040020980400208C040020C9 -:101C40009504002090040020EC040020F0B585B03D -:101C500001932A4B00901C6829482043186058695A -:101C60000C02C0B220435861022098619862186843 -:101C7000244C49B22040902418600820E405A0615B -:101C8000002901DA1021A16265691F499000C0276F -:101C90008C460D400100BF0039400D436561FF24B3 -:101CA00059691A4D2040294008435861C0460395A0 -:101CB00090250020ED050294C04666461969009CF7 -:101CC000090A215401326969D2B2940031402600D8 -:101CD0003E4031436961039E596901303140029EA3 -:101CE000C0B234400C4301995C618842E4D90823B6 -:101CF000AB62DB18AB6105B0F0BDC0460004004824 -:101D000000005555FFFFAAAAFFFC000003FF0000DA -:101D1000F0B585B00193284B284C1D6800902C43EA -:101D20001C6027485C691F2943D880252943090284 -:101D3000E4B2214359610221996199621968214CE9 -:101D40000840902118608020C90588624869950084 -:101D5000C026A44620402C00B60034402043FF2477 -:101D600048615869184F2540384005435D61C046B9 -:101D7000002002960394C0461D69009C2D0A25543C -:101D800064464D6901322540D2B2029C960034402F -:101D900025434D61039C5D6926403D400130019C17 -:101DA0002E43C0B25E61A042E5D980238B6105B0AD -:101DB000F0BDE4B20902BCE700040048000055553C -:101DC000FFFFAAAAFFFC000003FF0000002302009F -:101DD0000002002A04D1002B01D080231843704751 -:101DE000DB43511EDBB20A40F3E70023800080B2E0 -:101DF000C046C04601339BB29842F9D17047FFFFFD -:101E00009022D205F0B553691B4C86002340C024B4 -:101E1000A400344023435361184B194D5C69000AF8 -:101E20002C40FF252E4034435C611E68154C000297 -:101E300026431E605E69144F2E40304358610220D5 -:101E400098619862186810263840186008209062DF -:101E500096621868090204431C60586928400143CF -:101E60005961C04601219962C046996119680F40C5 -:101E70001F609661F0BDC046FFFC000000040048F2 -:101E800003FF000000005555FFFFAAAA9022D205CB -:101E90005369194930B50B40C021840089002140A5 -:101EA0000B435361154B164D5969000A2940FF2514 -:101EB0002C40214359611C681249000221431960DA -:101EC000596908240D40022128435861996199629B -:101ED00019680D48802501401960102194619162B4 -:101EE0009562C046C046C0461869E0409561C0B2E0 -:101EF0009462916130BDC046FFFC000000040048C0 -:101F000003FF000000005555FFFFAAAA1D4B30B586 -:101F1000984202D880231B0218439025ED056B6977 -:101F2000194C82002340C024A400144023436B6159 -:101F3000164B174D5C69000A2C40FF252A401443BC -:101F40005C611C68134A000214431C605C6909024E -:101F50002C40204358610220986198621C680E480A -:101F600004401C601C6822431A605A692A401143CD -:101F70005961C04601229A62C0469A611A680240BD -:101F80001A6030BDFF1F0000FFFC00000004004885 -:101F900003FF000000005555FFFFAAAA1A4B30B5F9 -:101FA000984202D880231B0218439021C9054B692F -:101FB000164A84001340C0229200224013434B6112 -:101FC000134B144D5A69000A2A40FF252C40224326 -:101FD0005A611C68104A000222431A605A6915406F -:101FE0000222284358619A619A621A680B4802409B -:101FF0001A6080228A62C046C046C046C046186940 -:10200000000AC0B28A6130BDFF1F0000FFFC000063 +:1008800095040020FF23F7B5C04C0700238083792F +:10089000009340780138102801D901F060FAFFF781 +:1008A0006BFE1100BA04EF055E0A08095E0A4A0AE7 +:1008B0009F0726088F08E9085E0A5E0A5E0A5E0A3C +:1008C0005E0AEC08B878BB8819281BD8FFF754FEDD +:1008D0001E002600EC00B7015F02D1024E03D603D2 +:1008E000E703F203F9030004080410043804470482 +:1008F000550464048B048B048B041A001A001A003C +:10090000490254028C23237000F0FBFCE023A04A30 +:100910001B0351690B4353610023F4E7152B01D9E5 +:1009200000F064FC1800FFF727FE160021002E00DF +:100930003B00480055005F006C00760081008D0090 +:100940009A00610461046104610461046104A70008 +:1009500061046104B40090234022DB0519689143CF +:100960001960D9680A43DA600023CCE79023DB05DD +:100970001A6888490A401A608022D96852000A43DE +:10098000DA600023BFE79023DB051A6882490A403A +:100990001A608022D968D2000A43DA600023B2E7E5 +:1009A0009023DB051A687D490A401A608022D968C5 +:1009B00052010A43DA600023A5E79023DB051A6899 +:1009C00077490A401A608022D968D2010A43DA6066 +:1009D000002398E70122734B196891431960D96885 +:1009E0000A43DA6000238EE79023DB051A686E491C +:1009F0000A401A608022D96852030A43DA60002351 +:100A000081E70422674B196891431960D9680A434A +:100A1000DA60002377E790230122DB051968914310 +:100A20001960D9680A43DA6000236CE75F4B6049BC +:100A30001A680A401A608022D968D2040A43DA6030 +:100A4000002360E79023DB051A685A490A401A60C0 +:100A50008022D968D2050A43DA60002353E7902345 +:100A6000DB051A6852490A401A608022D968D2040C +:100A70000A43DA60002346E79023DB051A684E49F3 +:100A80000A401A608022D96852050A43DA600023BE +:100A900039E790230122DB05196891431960D96871 +:100AA0000A43DA6000232EE7152B00D9A1E31800D2 +:100AB000FFF762FD160021002C00370042004D00B8 +:100AC0005700620084008F009900A4009F039F03D9 +:100AD0009F039F039F039F03AF009F039F03BA00E1 +:100AE00090234021DB051A688A431A60DA688A433A +:100AF000DA60002307E79023DB05196825480140E9 +:100B00001960DA680240DA600023FCE69023DB0516 +:100B10001968214801401960DA680240DA60002350 +:100B2000F1E69023DB0519681C4801401960DA687A +:100B30000240DA600023E6E69023DB0519681848D6 +:100B400001401960DA680240DA600023DBE6012127 +:100B5000144B1A688A431A60DA688A43DA60002301 +:100B6000D1E69023DB0519680F4801401960DA6867 +:100B70000240DA600023C6E604210A4B1A688A4361 +:100B80001A60DA688A43DA600023BCE6FC060020BB +:100B900000100240FFFEFFFFFFFBFFFFFFEFFFFF24 +:100BA000FFBFFFFF00040048FFFFEFFF0008004801 +:100BB000FFFFFFFBFFFFFFBFFFFFFFEF90230121C0 +:100BC000DB051A688A431A60DA688A43DA60002310 +:100BD00099E6C24BC248196801401960DA680240C0 +:100BE000DA6000238FE69023DB051968BD480140D9 +:100BF0001960DA680240DA60002384E69023DB059E +:100C00001968B74801401960DA680240DA600023C9 +:100C100079E69023DB051968B34801401960DA686A +:100C20000240DA6000236EE690230121DB051A689A +:100C30008A431A60DA688A43DA60002363E6152B78 +:100C400000D9D9E21800FFF797FC16001E00270014 +:100C5000300039004200490052005900610069002B +:100C60007200D702D702D702D702D702D7027B0081 +:100C7000D702D702840090224023D20511680B438B +:100C8000136000233FE690228023D20511685B00A9 +:100C90000B431360002336E690228023D2051168AF +:100CA000DB000B43136000232DE690228023D20546 +:100CB00011685B010B431360002324E6902280231C +:100CC000D2051168DB010B43136000231BE60123EF +:100CD000864A11680B431360002314E69022802398 +:100CE000D20511685B030B43136000230BE604235A +:100CF0007E4A11680B431360002304E6902201230F +:100D0000D20511680B4313600023FCE58023734A6E +:100D1000DB0411680B4313600023F4E59022802369 +:100D2000D2051168DB050B4313600023EBE590222D +:100D30008023D2051168DB040B4313600023E2E536 +:100D400090228023D20511685B050B4313600023BA +:100D5000D9E590220123D20511680B4313600023CB +:100D6000D1E5082B00D04AE29022D2055168073B1A +:100D70000B4353600023C6E5082B00D042E29022CB +:100D80000121D20553688B4353600023BBE5152B2B +:100D900000D93AE21800FFF7EFFB16001C00220012 +:100DA00028002E0034003900400045004B0051005F +:100DB00058003802380238023802380238025F0020 +:100DC00038023802660090230822DB059A6200236D +:100DD00099E590231022DB059A62002393E5902386 +:100DE0002022DB059A6200238DE590234022DB055B +:100DF0009A62002387E590238022DB059A62002314 +:100E000081E50122394B9A6200237CE59023802200 +:100E1000DB05D2009A62002375E50222334B9A6209 +:100E2000002370E590230122DB059A6200236AE526 +:100E300080222A4B92019A62002364E5902380224B +:100E4000DB0512029A6200235DE590238022DB0518 +:100E500092019A62002356E590238022DB05D2019D +:100E60009A6200234FE590230122DB059A6200235A +:100E700049E5152B00D9CBE11800FFF77DFB1600E3 +:100E80001C002200280039003F0044004B005000A5 +:100E900056005C006300C901C901C901C901C9014B +:100EA000C9016A00C901C901710090230822DB054C +:100EB0009A61002327E590231022DB059A61002325 +:100EC00021E590232022DB059A6100231BE5902376 +:100ED0004022DB059A61002315E5C0460008004862 +:100EE000FFFFFFFBFFFFFFBFFFFFFFEF0004004816 +:100EF00090238022DB059A61002304E50122CC4B7C +:100F00009A610023FFE490238022DB05D2009A61DE +:100F10000023F8E40222C64B9A610023F3E49023F5 +:100F20000122DB059A610023EDE48022C14B92018E +:100F30009A610023E7E490238022DB0512029A6184 +:100F40000023E0E490238022DB0592019A610023D4 +:100F5000D9E490238022DB05D2019A610023D2E4F8 +:100F600090230122DB059A610023CCE40222627007 +:100F7000152B00D97EE01800FFF7E4FA0B131B23B2 +:100F80002B333A434A525A627C7C7C7C7C7C6B7C5F +:100F90007C7490230822DB051B69134063800023C7 +:100FA000B1E490231022DB051B691340638000230A +:100FB000A9E490232022DB051B69134063800023F2 +:100FC000A1E490234022DB051B69134063800023CA +:100FD00099E490238022DB051B6913406380002382 +:100FE00091E40122924B1B691340638000238AE441 +:100FF00090238022DB051B69D2001340638000230D +:1010000081E402228A4B1B691340638000237AE447 +:1010100090230122DB051B6913406380002372E4E7 +:101020008022844B92011B691340638000236AE491 +:101030009023DB051B69DB0BDB036380002362E489 +:1010400090238022DB051B699201134063800023FB +:1010500059E490238022DB051B69D2011340638091 +:10106000002350E490230122DB051B6913406380B9 +:10107000002348E4002363708D3344E480236E4AE8 +:10108000DB0251690B435361694B6C491A680A4092 +:101090001A60D9686A4A0A43DA60002333E4644B71 +:1010A00066491A680A401A60D968654A0A43DA60D4 +:1010B000002328E45E4A614913680B401360002353 +:1010C00021E45B4A5E4B11680B43136000231AE472 +:1010D00057491B024A69D2B213434B61002312E401 +:1010E000534B1B691B0AA3700123637000230AE49E +:1010F0008023514ADB02516950480B4353614C4BEA +:10110000196801401960D8684D490143D960C02170 +:101110005069C90201435161042219680A431A60E7 +:10112000022290219A62A022C9050868D2020243D5 +:101130000A601968434A0A431A600023FFF7E3FB79 +:101140009022A023D205D168DB020B43D360384A3A +:101150003C4BD1680B43D3600023FFF7D4FB9022B4 +:10116000D205136838490B401360314A3749136878 +:101170000B4013600023FFF7C6FB9022A023D2058B +:101180001168DB020B431360294A2E4B11680B4395 +:1011900013600023FFF7B7FB9020C00542692C497C +:1011A0009D000A40C021890029400A434261204A2B +:1011B000284851691B0A0140FF200540294351611D +:1011C00015681F491B0229431160516908400343F8 +:1011D0005361022393619362136818490B401360B3 +:1011E0000023FFF790FB0023FFF78DFB8D23FFF714 +:1011F0008AFB8D23FFF787FB8D23FFF784FB8D236D +:10120000FFF781FB8D23FFF77EFB8D23FFF77BFB31 +:101210008D23FFF778FBBD78BB88032D00D1E1E07B +:101220001AD8002D67D0012D00D171E0962566E017 +:10123000000400480008004800100240FFFFAAAA6E +:101240000000555550550000FFFFFAFFAFAAFFFF01 +:10125000FFFC000003FF0000042D00D102E1802DFF +:10126000E4D190230122DB0562709A621968114370 +:101270001960C04618691968104091431960D9680F +:101280009143D960F021002832D119689143196047 +:10129000D9681143D9601F691E69C0461D69C046DF +:1012A000C0461C69C046C046C04619698C46C04647 +:1012B000C046C046C046196901911968914319603A +:1012C000D9689143D9600100174211D1110016422B +:1012D0000ED1023115420BD10331144208D16346BD +:1012E0000431134204D1019BD631DB0700D5D1393B +:1012F000C84B997074E0C84A137001F05BFBC54C91 +:101300002570C64BA2B2240C5A8100989C81FEBD68 +:1013100001F050FB90228023D20511685B000B4343 +:10132000136010239361116830330B43136008235B +:10133000936280231168DB000B43136020239361C9 +:1013400080231168DB010B43136080239361B44B4E +:10135000B4481968B44C294319609D6180254169DE +:10136000ED0229434161196821401960DE68AF49E7 +:101370000E43DE601E6826401E60DE680E43DE609F +:101380004669354345611D6825401D60DD680D4394 +:10139000DD60C0254669ED023543456104201D68C6 +:1013A000284318600220A02598621668ED02354394 +:1013B00015601E689E4D35431D6055699D4E354034 +:1013C00055615A699C4D2A405A611A681143196047 +:1013D0005A69D2B25A61986198621A6814401C60C6 +:1013E00000258CE7DBB2022B23D00025032B00D194 +:1013F00085E79735012B00D081E7C023894ADB02BE +:10140000516904200B4353611022854B19689143A5 +:101410001960D9681143D9605968014359609861CE +:1014200019680A4302211A60844A1170844A1360C1 +:10143000D6E7E0237B4A1B0351690B43536190239A +:101440000122DB05196891431960D9681143D960FD +:101450005968114359609A6119680A431A60082152 +:10146000764AE2E7DBB29825012B00D047E7E0237C +:101470006C4A1B0351690B43536101F01FFAAFE73C +:10148000BE78F978BD880E2E00D128E130D8072E1D +:1014900000D130E116D8022E00D1B6E007D8002ED8 +:1014A00000D1A3E0012E00D1ABE0A026A1E0052EE3 +:1014B00000D106E100D99FE0042EF6D1280001F00A +:1014C000D3FB9CE00A2E00D105E108D8082E00D1FC +:1014D00015E1092EE9D1280001F048F98FE00C2E22 +:1014E00000D114E100D802E1280001F00DF986E0F6 +:1014F000222E00D1A8E017D8112E00D103E108D880 +:101500000F2E00D1EFE0102ECFD1280001F022F8ED +:1015100075E0202E00D1D8E000D9D9E0122EC4D138 +:10152000280000F0DDFF6AE0822E00D144E14ED8B1 +:10153000802E00D1EFE000D937E1232EB5D1414B09 +:101540009D4202D880231B021D43902700F00AFD14 +:101550006B1CFF339BB20193FF057A693549AB00E1 +:101560000A40C021890019402D4C0A437A61626902 +:10157000314900020A40FF210B401A436261226890 +:101580002A4B1A43226066692A0A0E40120232432D +:1015900062610222A261A2622268234E324022606E +:1015A00022681343236063690B4018436061C0469F +:1015B0000123A36200F0D6FC01230135A361019B46 +:1015C000ADB29D42C9D123681E40266017E0852E2A +:1015D00000D1F7E0862E00D1FAE0842E00D064E737 +:1015E00001232800637000F01BFDE3E0280001F0F8 +:1015F00045F8084C267084E6280000F0FDFF002620 +:10160000F7E7280000F04CFDF9E7280000F016FE8F +:10161000F5E7C046FC0600200407002000600040FB +:101620000004004800100240FFFFAAAA0000555520 +:1016300050550000FFFC000003FF00000C070020D5 +:1016400008070020FF1F00009022D2055369CD4CEF +:10165000A8002340C024A400044023435361CA4B84 +:10166000CA4E5C6909023440FF26304004435C6185 +:101670001C68C74804431C605F692C0A3740240279 +:101680003C435C6102249C619C621F68C14C2DB28A +:1016900027401F60202797621F68384318605869E9 +:1016A000304001435961002D01DA10219162C0469A +:1016B000C04610219161491891611A6814401C605C +:1016C0009DE7280000F066FC99E7B34B1D7096E794 +:1016D000B24B1D8093E7280000F08EFD8FE72800B5 +:1016E00001F004FB8BE7280001F0D0FA87E728001F +:1016F00000F074FE83E7280000F056FF7FE7280023 +:1017000000F058FD7BE7280000F02EFE77E7280068 +:1017100000F0E8FD73E7012190226170D2051368A3 +:1017200008208B431360D36810248B43D36020239D +:1017300090629461936153699249AE000B40C0215D +:10174000890031400B4353618F4B90495F693940A9 +:10175000FF273E400E435E611E688D49314319608C +:10176000290A81405E6937400F4302215F61996118 +:1017700099621968874E31401960C046C0462DB243 +:101780009061002D00DA9462C046C046C046C04653 +:10179000C046C04690220821D2051B6991624918B3 +:1017A00091617F4A1B0A937029E701232800637027 +:1017B00000F052FEA07022E701232800637000F0C1 +:1017C000B7FCF7E701236370734B1B78A37016E730 +:1017D00002236370714B1B88A3701B0AE3700EE732 +:1017E000BD78FA78B988112D7AD007D8012D4DD05F +:1017F000002D0DD0022D5BD08226FBE6212D65D079 +:10180000222D69D0122DF7D10223102063706AE0D7 +:101810000127644B04261B7810209F40FA43624B3B +:1018200001921D68AF626B6813406B6000F08FFB24 +:10183000AF616B683B436B60FA20400000F087FBB0 +:10184000FA20AF626B68019A400013406B6000F0B1 +:101850007EFBAF616B68013E3B43B6B26B60002E0E +:10186000EAD10436FA2000F072FBAF626B68019A8D +:10187000FA2013406B6000F06AFBAF616B68013EB9 +:101880003B43B6B26B60002EECD1B3E6454A464B03 +:1018900012781E689540B56273681020AB43736080 +:1018A00000F055FBB56173682B4373600026A1E619 +:1018B00001233C4A637012783C4993403A4A9BB2F8 +:1018C0001268002001F0A4FFA070EFE701230020C0 +:1018D000637001F033FAF7E7012310206370F8E733 +:1018E00002230020637001F083FA6080DEE7BB789A +:1018F000BA88042B1DD007D8022B1FD024D8012B67 +:1019000012D08723FEF7FFFF072B26D003D8052B25 +:10191000F7D1274B16E0082B24D0802BF1D100F013 +:10192000CDFF0023FEF7EFFF224A1278A27063700A +:10193000F7E7214B1B78A3700123F8E71D4B1A70C2 +:1019400083221D4B1A70ECE71A4B1B4D1A70832330 +:101950002B7000F0D3FF2B78EDE7184B1A70120AAA +:101960005A70DEE7154B1A78A2705A78E2709A78AE +:101970002271DA7862711A79A2715B79E3710623B8 +:10198000D5E7C046FFFC00000004004803FF00004C +:1019900000005555FFFFAAAA880400203604002045 +:1019A000FC0600200C0700200807002004000200AD +:1019B000E1040020C0040020E2040020C104002053 +:1019C000B878F9780238BA888A23092801D9FEF74D +:1019D0009AFFFEF7B7FD050A10151C232F3B404860 +:1019E000C34B1A800023FEF78EFFC14B1B881B04DC +:1019F00013439847F6E7FEF7BBFE0300FEF783FFAD +:101A0000BC48036899B213040B430360EAE7B94981 +:101A10000B681B0C1B0413430B60E3E70423637088 +:101A2000B44B1B681A0AA370E2701A0C1B0E2271C9 +:101A30006371D7E7022363705300AE4A1168CB1875 +:101A40001A88A2701B881B0AE370CBE7A94B4900D8 +:101A50001B68CA52C6E7A74953000A68D318022276 +:101A60000B606270ECE7A34B4900186841181960DD +:101A70000A80B7E78823FEF746FFBB78BA88022BB7 +:101A800009D0032B0ED0012B10D113049A4A1360F6 +:101A90000023FEF738FF98490B681B0C1B04134307 +:101AA0000B60F5E70122944B1A60F1E78323FEF700 +:101AB0002AFFBA781300303B2F2B1AD8F878032866 +:101AC00014D8FEF73FFD161802118C4B512A00D195 +:101AD0007DE028D8312A57D00FD8002A37D0302AB5 +:101AE0004BD0B423FEF70FFF854BEFE7B523FEF78E +:101AF0000AFF844BEAE7844BE8E7332A52D04AD303 +:101B0000502AEED1C022D20022801A7AA270DA784E +:101B1000E2705A7A22719A7A62719A78A2715B7C29 +:101B2000E371FFF7EEFB7F2A00D984E0702A5DD2D3 +:101B3000602A3CD0612A43D0522AD2D180221B880D +:101B40009200A3701B0A2280E370FFF7DAFBFF21EB +:101B50006E4BD1540132102AFBD10123694A5B42FA +:101B60005380694A5380654A5380654A53800122F5 +:101B7000674B1A700023FEF7C6FEBA88110AD972A5 +:101B80001A730023FEF7BFFEBA88110A59739A73BD +:101B90000023FEF7B8FEBA88110AD9731A7400231D +:101BA000FEF7B1FEBA885A740023FEF7ACFE80231C +:101BB0005B002380BB88554AD35CA370FFF7A1FB71 +:101BC00080235B002380534B1B68DB78F5E7C02242 +:101BD000D2002280DA7AA2701A7BE2705A7B2271DC +:101BE0009A7B6271DA7BA2711B7C99E7454B38784E +:101BF0005C68484B1B68D9787F2800D9B2E046481A +:101C0000009D057000290FD000200090982900D178 +:101C1000AEE004E000200090D02900D1A8E03C49CB +:101C200010300870FF2104E03C490B609021D9700E +:101C30006F3100919CE00720104003281AD8FEF76E +:101C400081FC1C1E02172D4B802A01D2FFF759FB85 +:101C5000872A16D97032D2B2072A01D9FFF751FB71 +:101C600000222270FA789A72BA881A80FFF749FB2C +:101C7000234BE9E7B523FEF746FE224BE4E7224B70 +:101C8000E2E7B888F978C6B28D19BE22102D2CDC97 +:101C90000432002929D0DD78033AFF2D25D19D7823 +:101CA0000132FF2D21D10022D7B28F423AD31C4DF1 +:101CB0000022AC464F01013F1F727701000A6744C2 +:101CC0009870DA705A729A721A80DA721A735A73AA +:101CD0009A73DA731A745A745F600C4B9D19A85486 +:101CE0000132D3B28B42FAD300222270FFF709FBF4 +:101CF00034040020300400209804002060040020F8 +:101D000074040020380400204C040020E304002068 +:101D1000A00400208C0400209504002090040020E2 +:101D2000F40400200132B7181E4D013FEF5DFF2F74 +:101D3000BAD0C122D9E7BB78002B04D0402B08D001 +:101D4000D223FEF7E0FD2370BA88174B1A70FFF715 +:101D5000D8FA80235B002380134B1B782DE7802368 +:101D6000FEF7D1FDD82900D054E780215C68D970F6 +:101D700000215972DB78902B01D0FFF7C2FA712A4B +:101D800001D0FFF7BEFA094BBA881B6859680A7080 +:101D9000BA885968120A4A705A7A02325A72FFF7A0 +:101DA000B0FAC046E3040020A00400209004002004 +:101DB000F0B585B001932A4B00901C682948204358 +:101DC000186058690C02C0B2204358610220986123 +:101DD00098621868244C49B220409024186008206A +:101DE000E405A061002901DA1021A16265691F499B +:101DF0009000C0278C460D400100BF0039400D43C4 +:101E00006561FF2459691A4D2040294008435861F3 +:101E1000C046039590250020ED050294C046664615 +:101E20001969009C090A215401326969D2B29400EF +:101E3000314026003E4031436961039E59690130BB +:101E40003140029EC0B234400C4301995C6188422B +:101E5000E4D90823AB62DB18AB6105B0F0BDC04626 +:101E60000004004800005555FFFFAAAAFFFC00002F +:101E700003FF0000F0B585B00193284B284C1D6886 +:101E800000902C431C6027485C691F2943D880259B +:101E900029430902E4B221435961022199619962FF +:101EA0001968214C0840902118608020C90588627B +:101EB00048699500C026A44620402C00B600344056 +:101EC0002043FF2448615869184F25403840054396 +:101ED0005D61C046002002960394C0461D69009CC7 +:101EE0002D0A255464464D6901322540D2B2029C28 +:101EF0009600344025434D61039C5D6926403D407A +:101F00000130019C2E43C0B25E61A042E5D980231E +:101F10008B6105B0F0BDE4B20902BCE700040048E3 +:101F200000005555FFFFAAAAFFFC000003FF0000B8 +:101F3000002302000002002A04D1002B01D08023DC +:101F400018437047DB43511EDBB20A40F3E700231E +:101F5000800080B2C046C04601339BB29842F9D19E +:101F60007047FFFF30B50722012409490868450D75 +:101F700043086B404340C50FDBB26B40013A23403E +:101F80004000D2B21843002AF1D10860C0B230BD7F +:101F9000980400209022D205F0B553691B4C8600AE +:101FA0002340C024A400344023435361184B194DEF +:101FB0005C69000A2C40FF252E4034435C611E689A +:101FC000154C000226431E605E69144F2E403043BC +:101FD000586102209861986218681026384018608D +:101FE0000820906296621868090204431C605869D0 +:101FF000284001435961C04601219962C046996158 +:1020000019680F401F609661F0BDC046FFFC0000DC :102010000004004803FF000000005555FFFFAAAA76 -:1020200070B504000D000D48AA21FFF76FFF552180 -:102030000B48FFF76BFFA0210848FFF767FF290057 -:102040002000FFF763FF2000FFF7A8FF0500C04650 -:102050002000FFF7A3FFA842F5D170BD5515000081 -:10206000AA1A000070B504000D000D48AA21FFF760 -:102070004DFF55210B48FFF749FFA0210848FFF706 -:1020800045FF29002000FFF741FF2000FFF786FFF2 -:102090000500C0462000FFF781FFA842F5D170BDC2 -:1020A00055150000AA0A00009022F0B50124D205BF -:1020B00013688500A3431360D368204EA343D36005 -:1020C00053691F4C09022340C024A4002C40234321 -:1020D00053611C4B5C693440FF2635402C435C61E6 -:1020E0001D68194C25431D605F69050A37402D02A4 -:1020F0003D435D6102259D619D621F68134D00B2E5 -:102100002F401F60202797621F683C431C605C695A -:1021100034402143596108219161002801DA4918AE -:102120009162C046C0460821916249189161103100 -:1021300091611A6815401D60F0BDC04603FF0000A4 -:10214000FFFC00000004004800005555FFFFAAAA4C -:10215000F7B51C4B07001D781B4B01911C882021F3 -:1021600026002036B6B23000FFF79EFFAA2117489E -:10217000FFF7CCFE2000103080B21021FFF794FF53 -:102180002D0155211248FFF7C1FEEDB2202130008C -:10219000FFF78AFF6419A0210C48FFF7B7FEA0B231 -:1021A0002900FFF781FF01993800FFF7AFFE3800E3 -:1021B000FFF7F4FE0400C0463800FFF7EFFEA04230 -:1021C000F5D1F7BD88040020360400205515000025 -:1021D000AA0A000070B50400B0200E0000020A2117 -:1021E000FFF762FFC0200A210002FFF75DFFAA216E -:1021F0001248FFF78BFE55211148FFF787FEA021FB -:102200000E48FFF783FEB0200E4B00021D78290018 -:10221000FFF74AFFC02029000002FFF745FF310009 -:102220002000FFF773FE2000FFF7B8FE0500C04650 -:102230002000FFF7B3FEA842F5D170BD5515000090 -:10224000AA0A000088040020F8B505000E00194B0A -:1022500002211C88A71CBFB23800FFF725FFAA2166 -:102260001548FFF753FE601C80B20121FFF71CFFE9 -:1022700055211248FFF74AFE02213800FFF714FFEC -:10228000A0210D48FFF742FE0D4B19786418A0B24B -:10229000FFF70AFF31002800FFF738FE2800FFF79C -:1022A0007DFE0400C0462800FFF778FEA042F5D16D -:1022B000F8BDC0463604002055150000AA0A0000EB -:1022C0008804002070B59024E40563691A4AFF264B -:1022D0001340C022850092002A4013436361174BCC -:1022E000174A596935401140294359611968154AFF -:1022F0000A431A605969020A0E40120232435A61B7 -:1023000002229A619A621A680F4900B20A401A6062 -:102310000822A261002801DA9218A262C046C046D3 -:10232000C046C046186990230822DB059A62000A5D -:102330009218C0B29A6170BDFFFC00000004004812 -:1023400003FF000000005555FFFFAAAA70B5040066 -:102350000D001048AA21FFF7A7FE55210E48FFF7F0 -:10236000A3FEA0210B48FFF79FFE29002000FFF7E6 -:102370009BFEA020094B00021978FFF795FE200074 -:10238000FFF7A0FF0500C0462000FFF79BFFA84213 -:10239000F5D170BDAAFA000055F5000088040020B0 -:1023A00070B504000D001048AA21FFF77DFE5521ED -:1023B0000E48FFF779FEA0210B48FFF775FE2900B4 -:1023C0002000FFF771FE802000210002FFF76CFE65 -:1023D0002000FFF777FF0500C0462000FFF772FFDF -:1023E000A842F5D170BDC04655D50000AAAA00008C -:1023F0009022D205536970B5194C86002340C02441 -:10240000A400344023435361164B174C5D69000A06 -:102410002540FF24264035435D611E68134D0002B0 -:102420002E431E605E690902264030435861022037 -:102430009861986218680E4E30401860186805431D -:102440001D6058692040014359610121106808430B -:102450001060916291611A6816401E6070BDC0469E -:10246000FFFC00000004004803FF00000000555579 -:10247000FFFFAAAA9022D205536970B51B4C8600B3 -:102480002340C024A400344023435361184B194D0A -:102490005C69000A2C40FF252E4034435C611E68B5 -:1024A000154C000226431E605E6909022E4030432F -:1024B00058610220986198621E68104806401E60AC -:1024C0001E6834431C605C69254029435961012121 -:1024D00014680C431460916214688C431460D468CF -:1024E0002143D1601A681040186070BDFFFC0000E5 -:1024F0000004004803FF000000005555FFFFAAAA92 -:1025000070B505000E00134B00211C882000FFF75A -:10251000CBFDAA211048FFF7ADFF55210F48FFF76B -:10252000A9FFA0210C48FFF7A5FF0D4B19786418EF -:10253000A0B2FFF7B9FD31002800FFF79BFF28008C -:10254000FFF7C0FE0400C0462800FFF7BBFEA04214 -:10255000F5D170BD3604002055550000AA2A0000B0 -:102560008804002070B504000D000D48AA21FFF773 -:1025700081FF55210B48FFF77DFFA0210848FFF799 -:1025800079FF29002000FFF775FF2000FFF79AFE72 -:1025900005002000FFF796FEA842F6D170BDC046A8 -:1025A00055550000AA2A0000F0B5284B85B01E78CA -:1025B000274B01901B78029100930392254B112821 -:1025C00040D00022902000251A70C0051C782A00F7 -:1025D0002B00012184460198202805D1009D1D4132 -:1025E0000D4231D00C430D00029820280ED1002B53 -:1025F00001D1174FBB54604607690F4206D01448FB -:10260000875C080098400743114887540398013EAF -:10261000F6B2002804D0002E02D102200D0004439F -:102620000133DBB2082B05D10132094BD2B29B5CDE -:1026300000930023002ECED1002D01D0054B1C703D -:1026400005B0F0BD0122BDE78C43CCE7D9040020E2 -:10265000B904002094040020F0B5134B134D1978F1 -:102660000023112800D102230027114E3A00B4465E -:102670003C0001262B702B7820280CD163461B5D73 -:102680003700134101323340D2B25B00082A02D135 -:1026900000220134E4B20139C9B20029ECD1002F83 -:1026A00000D02B70F0BDC046D90400209404002057 -:1026B000B904002000230B4A012113709022D20597 -:1026C000106888431060D0680143D1608021064AB9 -:1026D00011701900054A1370054A99540133202BD3 -:1026E000FBD1704794040020DA040020D9040020B4 -:1026F000B904002010B52B4B1B78082B4ED013D8F3 -:10270000294C032B39D006D8012B28D0022B2AD0F4 -:10271000254BEE223AE0062B3AD03DD8042BF7D1D8 -:1027200001222021112021E00F2B28D008D81E4C97 -:102730000D2B1FD000220E2BEAD12021102015E0F6 -:10274000802B06D0184CFF2B06D0102BE0D1002296 -:102750001FE0FFF7AFFF10BDF0232370FBE7202041 -:10276000FFF77AFF04E0012200212020FFF71CFF81 -:102770008223F2E700221100F7E70122DDE70022C1 -:1027800020211120FFF710FF8222074B1A70E2E789 -:10279000012220210800E9E71020E1E71120FFF7DE -:1027A0005BFFF1E7B8040020DA040020BC235B499A -:1027B000DB038A6AF0B513438B628B6A584A594D22 -:1027C00013408B62E0234A691B0313434B61902340 -:1027D0004022DB051868802690431860D868F6040C -:1027E0000243DA601A685048802702401A6080224B -:1027F000D86852000243DA601A684C48FF0202406F -:102800001A608022D868D2000243DA601A68484809 -:1028100002401A608022D868D20102430120DA60A7 -:10282000444A146884431460D4680443D4601C6828 -:102830002C401C608024DD6864032C43DC601C6831 -:102840003D4D2C401C608024DD68E4052C43DC6099 -:102850001C683A4D2C401C60DC68394D3443DC6008 -:102860001C68384E2C401C608024DD6864012C43B9 -:10287000DC6004241568A5431560D5682543D56040 -:102880001D6885431D60DD688543DD604869384308 -:102890004861106830401060D5682B480543D5600A -:1028A000C0254F69ED023D434D6115682C4314600E -:1028B0000224A02594621C68ED022C431C6017685A -:1028C000224C27431760224C1F6827401F6017685F -:1028D000204C27401760DF681C4C3D438027DD609B -:1028E000D368FF021C43D4604B69144D3B434B61DA -:1028F000136833401360D3680343D36013681E40EA -:1029000016608026D368F6041843134BD0601A680B -:102910002A401A60DA683243DA60F0BD00100240E3 -:10292000FFFFA1FFFFFFEFFFFFFEFFFFFFFBFFFF2A -:10293000FFBFFFFF00040048FFFFFFBFFFFFFFFBDB -:10294000FFEFFFFFFFFFAAAA0000555550550000FA -:10295000FFFFFAFFAFAAFFFF00080048F7B5802786 -:102960000D0001924C7A000203B2A6B20093FF045C -:102970002B7AB34202D26C720020FEBD00986B68C5 -:102980002043195D80B2019B98476B681A5D0B4B21 -:10299000824206D01A683A431A60802292019A61F4 -:1029A000E6E71A68064901340A401A60DA68013617 -:1029B0003A43DA60E4B2B6B2DAE7C046000800484B -:1029C000FFFFFFFBF7B50D001600FF27000203B263 -:1029D0004C7A01932A7AE3B2A24202D26B720020AF -:1029E000FEBD20006A683840D15C019B0134184369 -:1029F00080B2B047A4B2EDE7022907D10F4B104ACD -:102A0000984218D0904209D1180007E0032906D156 -:102A10000A4B0B490B4A98420BD108007047042916 -:102A2000FCD1064B064A984205D006499042F4D0A4 -:102A3000054A8842E6D11000F0E7C046380400207D -:102A40004C040020600400207404002070B50600CF -:102A50000D0005243000013CFFF734FCE4B22900EE -:102A60003000FFF721FB6D08002CF3D170BDFFFF94 -:102A700070B50400A0200D0000020221FFF7E6FF60 -:102A8000AA211048FFF742FA55210F48FFF73EFAF6 -:102A9000A0210C48FFF73AFAA0200C4B000219784D -:102AA000FFF7D4FF29002000FFF730FA2000FFF7DE -:102AB00075FA0500C0462000FFF770FAA842F5D16C -:102AC00070BDC04655150000AA0A00008804002009 -:102AD00070B50400C0200D0000020521FFF7B6FF0D -:102AE000AA210D48FFF7E0FA55210C48FFF7DCFA60 -:102AF000A0210948FFF7D8FA29002000FFF7D4FAEF -:102B00002000FFF7DFFB0500C0462000FFF7DAFBDF -:102B1000A842F5D170BDC04655550000AAAA0000D4 -:102B2000F7B501230225294F01923A780091054318 -:102B300093400421A020264E2D049BB229433268E5 -:102B4000C00100F0B5FD040001283DD13B7809200B -:102B50009C4005437830A3B232682900FF3000F072 -:102B6000A7FD040001282FD13B7832689C40290042 -:102B7000A3B2002000F09CFD0400012824D1009B9A -:102B8000180AFFF723F93B7832689C402900A3B26A -:102B900000F08EFD0400012816D16B461878FFF76F -:102BA00015F922003B7829009A4093B2326800F070 -:102BB0007FFD0198FFF70AF93B7832689C402900B5 -:102BC000A3B200F075FD0400E0B2FEBD00070020D6 -:102BD000FC060020F7B501230225274F00903A7824 -:102BE0000191054393400421C020244E2D049BB243 -:102BF00029433268800100F05BFD0400012838D1D0 -:102C000009231D433B78C0209C403268A3B22900B1 -:102C1000400000F04DFD040001282AD13B783268C5 -:102C20009C402900A3B2002000F042FD04000128CE -:102C30001FD1019B180AFFF7C9F83B7832689C4006 -:102C40002900A3B200F034FD0400012811D16B4625 -:102C50001879FFF7BBF822003B789A4093B2009AAC -:102C600014430922E1B209041143326800F020FD47 -:102C70000400A0B2FEBDC04600070020FC060020F4 -:102C80009022CE4B12031968F0B50A431A608022D5 -:102C900089B0920219681142FCD0012259680A4396 -:102CA0005A608022596852020A435A608022596849 -:102CB00052030A435A608022196852040A431A6078 -:102CC0008022920419681142FCD011210224BC4ACE -:102CD000BC4D11605A680E398A4322435A608022E3 -:102CE000196B0A431A638022D96912040A43DA6114 -:102CF000B54BEB81BC231B689847B44B6B82B44B3C -:102D00002B8262B6B34BB44A1A60B44A1A60A0224E -:102D100012015C609A600293029BDB68002BFBD17E -:102D2000029BAF4C1C60FFF741FDF022AD4B0794B6 -:102D30001A70029B079AAC4E1A6032782023110059 -:102D40009943D2291BD1A949A948C978C37802243B -:102D5000FF2904D1FF3B1C00631E9C41E4B2A54B3C -:102D6000DB78FF2B00D00324A34BDB78FF2B00D0B4 -:102D70000424A24BA24F1C703860D22A49D0337869 -:102D8000F22B05D10022023B33709D4B1B68DA7099 -:102D90003578D02D00D043E1994E3068C378802B30 -:102DA00000D03DE1954B1978FFF726FE00233060F7 -:102DB000C570068804004372C07AF5B21038132833 -:102DC00000D92BE1FDF7D8FB53008B00F5002A0159 -:102DD0002A012A012A012A012A012A012A012A019B -:102DE0002A012A012A012A01280035004B0050003F -:102DF0002100FFF701FE01230135EDB2A542F7D313 -:102E0000002B00D0386080223B68DA70D02333700A -:102E1000B5E700230125F1E7E17B0F2900D913E293 -:102E200009013143237AA278C9B26068FEF70EFF28 -:102E30000BE03C23E17B0A009A4300D004E2237AB2 -:102E4000A27829436068FEF763FF60726C4B1B68D1 -:102E500019889A7A52181A80D822DA70E0E0237A18 -:102E6000A278E17B2943E0E7E17B3F23E3E7E37BD3 -:102E70001E2B0BD1C020B6092233F1B200029D43B4 -:102E8000FFF712F9237AA2788021EBE71C2B0FD1F0 -:102E9000A0208121C001FFF707F98020F609F1B2D7 -:102EA0000002FFF701F9A0200021C001FFF7FCF8A4 -:102EB0008023E27B5B421F2A05D01D43EDB2237ABB -:102EC000A2782900B1E77022A02021889543090942 -:102ED0001D43C9B2C001EDB2FFF7E6F8EFE7E37BAF -:102EE000FE2BB3D17609F1B24648FFF70FF86368BD -:102EF000454A0393A378FF260193237AC0270493BE -:102F0000424BBF0019680A431F211A605A690D40DD -:102F10002D0232402A435A6102229A619A621A684B -:102F20003B490A401A6090220821D2059161491854 -:102F3000916270319162019950698D0035498C46DA -:102F400008402900394008435061596932483540EA -:102F500001400D435D61C046002106900596C046C4 -:102F60001869039D000A685490250198ED05013009 -:102F7000C0B201906869019D0131AE0065462840EC -:102F800035003D4028439025ED0568615869069D50 -:102F9000C9B22840059D2E40064304985E618842D0 -:102FA000DDD280239361783B936208339361617231 -:102FB0004CE7237AA278602154E7C0460010024013 -:102FC00000200240006000403CA5FFFF41080008CF -:102FD0008508000800300040CCCC000055550000AA -:102FE000AAAA0000DA040020980400204C04002063 -:102FF000380400206004002074040020960400209F -:103000008C040020FF3F00000000555500040048DC -:10301000FFFFAAAAFFFC000003FF0000C323E37028 -:10302000DB4B1D78F02D00D016E3DA4E3468E378E0 -:10303000982B00D010E3D84B20001978FFF7DCFC68 -:1030400000233060C370E37AE5702678112B00D13D -:1030500065E2122B00D1F5E2102B00D0FAE2E37BFF -:10306000002B06D130008038C0B2CC4A2100FFF7D7 -:1030700075FCE37B012B06D130008038C0B2C84A12 -:103080002100FFF79FFCE37B032B06D13000803843 -:10309000C0B2C44A2100FFF795FCE37B042B06D1A4 -:1030A00030008038C0B2C04A2100FFF757FCE37BF4 -:1030B0000A2B06D130008038C0B2BC4A2100FFF78D -:1030C00081FCE37BFD2B15D13F20238830409B09F9 -:1030D00003936B4680261B7B06430593677ABBB23E -:1030E000019333021BB20693237A019A934200D3D1 -:1030F000ACE06772E37B1E2B11D13F20304080266D -:10310000238806439B09DBB20493657A33021BB222 -:10311000AFB20593237ABB4200D3E4E06572E37B50 -:103120000C2B17D11F20304080260643C020258855 -:10313000A5216D09EDB2C001FEF7B6FF29009C483C -:10314000FEF7B2FF677A35023D43237ABB4200D3D4 -:1031500044E16772E37B1C2B3BD1A02023888121B3 -:10316000DB09DBB2C0010393FEF79EFF80200399C9 -:103170000002FEF799FFA0205421C001FEF794FF42 -:10318000677AAA21BBB28B480193FEF78DFF5521C8 -:103190008948FEF789FF20218648FEF785FF8023B6 -:1031A00033431B021BB20593237A019A934200D347 -:1031B00031E18020902100026772FEF775FF8020C8 -:1031C00000210002FEF770FF8020F0210002FEF7D0 -:1031D0006BFFE37B1F2B30D1A0202188C0010909A0 -:1031E000C9B2FEF761FFAA217248657AFEF75CFF5B -:1031F00055217148FEF758FF6E482021FEF754FF15 -:10320000702380209E434042304340B20302AFB25D -:103210000393237ABB4200D34AE18020902100022D -:103220006572FEF741FF802000210002FEF73CFF9F -:103230008020F0210002FEF737FFF4232288E3709C -:10324000A37A9B18238007E2C423E8E600215B48A9 -:10325000FEF72AFFAA215A48FFF7CAF85521594814 -:10326000FFF7C6F8A0215648FFF7C2F86B46187B57 -:10327000554B0599C01880B2FEF716FF069D63688E -:103280003D43ADB2D95D2800FFF7B2F8C046280033 -:10329000FFF718F804902800FFF714F8049B834206 -:1032A000F4D163680499DA5D484B8A4212D1019ADD -:1032B0004749013292B201921A6801370A401A60F6 -:1032C0008022D968D2040A43DA6080229201FFB2D8 -:1032D0009A6209E780221968D2040A431A608022A0 -:1032E00092019A6100E7C02001210002FEF7DCFE96 -:1032F000AA213848FEF7D8FEC02000210002FEF7C0 -:10330000D3FE55213448FEF7CFFEC0200121000234 -:10331000FEF7CAFEA0212F48FEF7C6FEC020049982 -:103320000002FEF7C1FE059B2B439BB2019363682D -:103330000198595DFEF7B8FEC0460198FEF7C2FF3E -:1033400003900198FEF7BEFF039B8342F4D16368AC -:1033500003995A5D1D4B8A4210D11A681C490135E8 -:103360000A401A608022D968D2040A43DA608022B7 -:1033700001379201EDB2BFB29A62CBE680221968A2 -:10338000D2040A431A60802292019A61C2E6C046C2 -:10339000980400208C040020960400206525000875 -:1033A000D12A000801250008A12300084D230008A8 -:1033B000FFFF0000AA8A00005585000069FD00009B -:1033C00055550000AA2A000069FDFFFF00080048CB -:1033D000FFFFFFFB55950000AAAA0000AA21A548FF -:1033E000FEF762FE5521A448FEF75EFEA021A1482B -:1033F000FEF75AFE63682800D95DFEF755FEC04609 -:103400002800FEF75FFF01902800FEF75BFF019B9D -:103410008342F4D199E6A0205421C001FEF744FE76 -:10342000059DA0213D43ADB22800FEF73DFE636837 -:103430002800D95DFEF738FEC0462800FEF742FF9F -:1034400004902800FEF73EFF049B8342F4D163689A -:10345000049ADB5D894D934212D1019B884A013366 -:103460009BB201932B68013713402B608023EA68DD -:10347000DB041343EB6080239B01FFB2AB6293E656 -:10348000A0208121C001FEF70FFE802003990002D9 -:10349000FEF70AFEA0205421C001FEF705FE80239E -:1034A0002A68DB0413432B6080239B01AB617BE61E -:1034B000039EA0212E43B6B23000FEF7F5FD6368EF -:1034C0003000595DFEF7F0FDC0463000FEF7FAFE11 -:1034D00001903000FEF7F6FE019B8342F4D1636851 -:1034E00001995A5D654B8A4210D11A6864490135C9 -:1034F0000A4080211A60DA68C9040A43DA6080222F -:1035000001379201EDB2BFB29A6282E680211A6859 -:10351000C9040A431A60802292019A6179E6E37B2A -:10352000002B04D1574A21003000FFF74BFAE37B10 -:10353000012B04D1544A21003000FFF743FAE37B0A -:10354000022B04D1514A21003000FFF73BFAE37B04 -:10355000042B04D14E4A21003000FFF733FAE37BFD -:103560000A2B04D14B4A21003000FFF72BFAE37BF2 -:103570000B2B04D1484A21003000FFF723FAE37BEC -:10358000FE2B00D059E6218844484909C9B2FEF70C -:10359000BDFCAA214248657AFEF732FC552141481C -:1035A000FEF72EFC3E482021FEF72AFC1F2030406B -:1035B0000302AFB20393237ABB420DD2657290210E -:1035C0000020FEF71DFC00210800FEF719FCF02189 -:1035D0000020FEF715FC30E6039EA0212E433000AC -:1035E000FEF70EFC63683000595DFEF709FCC0462B -:1035F0003000FEF74BFC01903000FEF747FC019BCA -:103600008342F4D1636801995A5D1C4B8A4210D100 -:103610001A681B4901350A4080211A60DA68C9041A -:103620000A43DA60802201379201EDB2BFB29A629A -:10363000C1E780211A68C9040A431A6080229201F6 -:103640009A61B8E730006030174A2100C0B2FFF736 -:10365000B9F9F2E5C323E370144B1B78F02B01D1C9 -:10366000FFF767FB832B01D0FFF763FBFFF742F8FF -:10367000FFF75FFB55D50000AAAA0000000800482C -:10368000FFFFFFFB65200008712A0008492200089F -:1036900021200008D521000851210008FF3F00002B -:1036A000AA0A000055050000A9200008DA0400203D -:1036B000F0B5474680B4061C081C000C102801D544 -:1036C000162700E004270007000F8046FF20014076 -:1036D0005468251C1D439C43F60313850AD5C04638 -:1036E000C046C046C046C046C046C046948013830C -:1036F000958002E0012000F081F801390AD4381CDD -:1037000000F07CF8C046948013839580C046C04684 -:103710007600E2E7381C013800F070F894801383DB -:103720009580042000F06AF8108A184001D0FF202C -:1037300061E0C046C046C046C046C046C046948010 -:103740009580108A184055D001200226B04552D0ED -:103750000921168A1E40FCD1012000F04FF8948008 -:10376000C0469580C04603E0C046C046C046C0463D -:10377000948095807600108A1840EFF30080400016 -:10378000C00F0643381C023800F038F8948095804A -:10379000022000F033F80139EAD513859480012026 -:1037A00000F02CF813839580301C8021022399406F -:1037B0000E401BD1002341085E4149085E41490883 -:1037C0005E4149085E4149085E4149085E41490839 -:1037D0005E4149085E4149085E41760808D34008C9 -:1037E000FF21084048400002013004E00E2002E0C2 -:1037F000092000E0002080BCB846F0BD0138FDD1B2 -:103800007047C04603685A0003D45B005B08C018C9 -:103810007047802212061343F9E7C046F0B55746B9 -:103820004E46DE464546E0B5814683B092460029C5 -:1038300025D04B1E9B46002701935B46FB18DC0FEF -:10384000E4184B466410E5005E193000FFF7DAFF1C -:10385000019B8046A3420BD0280008304844FFF764 -:10386000D1FFD04506D80138504509D2671CE4E79E -:10387000504505D9A74202D0631E9B46DDE70026CE -:10388000300003B03CBC90469946A246AB46F0BD22 -:10389000012809D0022805D0002801D00020704757 -:1038A0000248FCE70248FAE70248F8E7853F0008CB -:1038B0009D3F0008913F000830B5234B83B00500C1 -:1038C0008C1E002B26D001A9200000E000BF00289C -:1038D0001CD001992200FFF7A1FF041E16D0FFF7AC -:1038E00091FF6368A864012B2AD0201D002B23DBE5 -:1038F000FFF788FF0023E8642B650368002B0FDBCC -:10390000FFF780FF2861002003B030BD00230920AD -:103910002B61F9E70D480E49091AC9100191D9E741 -:103920001801000FFFF7B4FF2861431E98410823D8 -:10393000404298430930E7E70123E8642B65DCE760 -:10394000002305202B61DFE700000000804800080D -:1039500050490008036810B50400DA0705D4483060 -:103960009B070ED500F06CFC23685A070ED51A078A -:1039700013D5DB0604D42000D130FF3000F06CFCFE -:1039800010BD00F059FC23685A07F0D42000D03055 -:1039900000F05AFC23681A07EBD420005130FF30A6 -:1039A00000F056FC2368E4E70368002B00D01B18E6 -:1039B00018007047092070477047C04670B5040072 -:1039C0000D0008E02B6C2A006361210001202369AF -:1039D0009847082807D1296C2000FFF76DFF0028C1 -:1039E000F0D000F083FE0728FBD10020296CFFF700 -:1039F000E3FF281D00F00AFCF0B5CE46474680B52F -:103A0000C3682E4C9846A54483690600140004310F -:103A1000402205A8994600F071FE002304AD0493EE -:103A200023E0F0222B6C5200736129007CA800F087 -:103A300065FE7CAA31003369200098478A9B070005 -:103A40006B6403934B4600950193320033002100D1 -:103A50000120C04700281FD1F0227CA95200280075 -:103A600000F04CFE0024082F1FD1296C3000FFF716 -:103A700023FF611E8C41070009340028D1D0AB6BB5 -:103A800010216B644B4621430193009533003200B3 -:103A90000120C047002800D009273800F5239B00EB -:103AA0009D440CBC90469946F0BD072FF4D12000F0 -:103AB000296CFFF781FF05A800F0A8FB2CFCFFFF95 -:103AC000406C704770B5CB6BFAB00B6404000E000D -:103AD0004022043103A800F011FE01235B4202934F -:103AE00006E002AA210023699847050008280AD1A8 -:103AF000129B200019000193FFF7DEFE0028F0D092 -:103B000009207AB070BD02A8FFF724FF062DF7D177 -:103B100031002000FFF752FF10B58261DA6BC160FF -:103B20001A6419000022FFF767FF10BD436970B5E2 -:103B30000B64C36804000D00002B15D10A00236933 -:103B4000010002209847072807D0082803D1290040 -:103B50002000FFF733FF00F0C9FD0020296CFFF7BC -:103B60002BFF281D00F052FB0122FFF745FF00F05C -:103B7000BDFDC046C36810B5002B05D0CB6B00223D -:103B80000B64FFF739FF10BDFFF79CFFFBE7C04652 -:103B90007047C046836810B5002B02D00100012099 -:103BA000984710BD012906D0002906D0033902200C -:103BB000012900D970470120FCE7002B08D10F2A0A -:103BC00006D8920082185268009B00201A60F1E724 -:103BD0000220EFE700B585B003AB0A000093002197 -:103BE0000023FFF7DFFF039805B000BD012906D0D1 -:103BF000002906D003390220012900D9704701208D -:103C0000FCE7002B08D10F2A06D8009B92001B6806 -:103C1000821853600020F1E70220EFE700B585B07D -:103C200003AB039200930A0000230021FFF7DEFF9D -:103C300005B000BD70B51A4CD36BA54413640600E3 -:103C40000D0019A8111D402200F058FD01235B4210 -:103C5000189314E00C2118A802AAFFF7DFFF29002F -:103C600018A8B047002812D1069B18AA02A908304C -:103C700001939847040005280AD0092807D0289BFB -:103C800002A819000193FFF717FE0028E2D00924CB -:103C900018A8FFF75FFE200090239B009D4470BD95 -:103CA000C0FDFFFFF0B5DE4657464E464546E0B53F -:103CB000160003220D0011008BB01F000193EB6C66 -:103CC00001401C1D009107A91B688B460894002F1A -:103CD0006BD01A0C1B045946079302230B72FD3359 -:103CE00013409B004A72E418009B022B00D1AC6B7E -:103CF0002B6DDB0747D40023059308330340029361 -:103D00002768002F00D112E1019B022B49D0638864 -:103D1000278898460434012340469A469843AB6C62 -:103D20000F21994681443000FFF754FF002181455F -:103D300006D839005346994349448842894149424B -:103D400043465A0002231340012217403B43012BF4 -:103D50003AD0002B30D0022B1BD12368009A5F0091 -:103D60007F08002A67D1002906D0029A002A00D1D4 -:103D70007CE0002F00D1A9E0002B00DA04340137E9 -:103D8000BF00E419BCE75946300000F00BFB0028E7 -:103D900010D009200BB03CBC90469946A246AB46D9 -:103DA000F0BD636808349846B5E71B0207935B468D -:103DB0001A8199E70820EDE7009B002B02D000292B -:103DC00000D08DE004349BE7009B002B1AD1002922 -:103DD00016D02368DF0F63689A1CDAD02A005832A5 -:103DE0000692013300D1BDE0201DFFF7DDFD06ABDB -:103DF00001003A00280000E000BF002800D082E067 -:103E000008347DE70D2130002F6AFFF7E3FE87427B -:103E1000F6D1AB6A9C42F3D12000FFF7F3FC0F21EF -:103E200002003000FFF7FAFE30002A000021FFF701 -:103E3000F5FE0720AEE72B6A0D2130009846FFF70C -:103E4000C9FE804501D0236896E7AB6A9C42FAD14F -:103E50000023EB6204332B63231DAF626B63236883 -:103E6000002B00DA86E00123059388E7002F2DD090 -:103E700058239C46AC4463460393231D9946002374 -:103E8000984606AB220004933B004C464746B24698 -:103E900098462E00914603E004342F00454542D059 -:103EA000039B20000693FFF77FFD049B0100002287 -:103EB00030007D1C00E000BF0028EDD04346B8462E -:103EC00035004C4656461F009845BCD10D213000A8 -:103ED000FFF780FE069B28626B62AC62062059E702 -:103EE0002000FFF78FFC04340700AC63280000E0DB -:103EF00000BF002800D14CE730003A000F21FFF747 -:103F00008DFE072046E707000D213000FFF762FE17 -:103F10002862022F2BD1069BEB622B002C336B62A5 -:103F2000AC62062036E735004C465646CEE7594689 -:103F3000300000F037FA002800D02AE7059B002B5C -:103F400000D137E70F213000FFF744FE0E210200B9 -:103F50003000FFF763FE3000094A0F21FFF75EFED5 -:103F6000072017E70D213000FFF734FE2862069B7B -:103F70006B62D5E738000130800020184DE7C0465D -:103F80000000000010B50023FFF78CFE10BDC046F6 -:103F900010B50123FFF786FE10BDC04610B5022301 -:103FA000FFF780FE10BDC046F0B5CE46474680B54F -:103FB0000500C3B014001E00012955D000294BD0C4 -:103FC000032922D0042949D1002B47D1102A45D8F2 -:103FD000102203681A4200D0F1E020AF380000F050 -:103FE0003DF900230120A96B02009A40144203D03E -:103FF0000E689A00BE5004310133042BF4D138000E -:10400000A96300F029F9002029E0032B26D114042C -:10401000230C160C9846F318102B1FD8082203689F -:104020001A4200D098E020AF380000F013F9424661 -:10403000AB6BF6001C00002A08D0D400F21A1C1941 -:10404000BA181968D15004339C42FAD1AC633800D5 -:1040500000F0FEF8002002E0002B24D0022043B044 -:104060000CBC90469946F0BD130C14049846240CE1 -:10407000012E2ED0052EF1D11B19202BEED8424651 -:104080000F2A70D9A146002C7ED1AA6B4346AA63A1 -:104090000F2B00D89AE04B46002BDBD0684600F08F -:1040A000D3F80020DBE700231004A96B000C0136D5 -:1040B00032009A40104204D00F689A00AA18576044 -:1040C00004310133102BF3D10020A304C7D4A9631A -:1040D000C5E71B19102BC1D843460F2BBED82B6840 -:1040E0001E4206D00322280093432B60483000F084 -:1040F000A5F820AF380000F0A1F8AA6B002C24D05E -:104100004346DB00FF180023994664000023A40007 -:10411000D158F95004339C42FAD14B4612196F46DC -:10412000002B0FD04046102800D210204B46D9005B -:1041300000231038C0003818D458C45004339942B2 -:10414000FAD15218012EA1D120AF04323800AA634F -:1041500000F072F8002082E7934303605130FF3093 -:1041600000F078F85FE7102B3BD9102252429146BD -:1041700099442B68194208D0022228008B4313432C -:104180002B60483000F05EF82B6804221A4221D1DF -:1041900043460F2B03D820AF380000F053F86F468A -:1041A000380000F053F810244346AA6BE41A002CA0 -:1041B000B8DD434620AFDB006400FF18A6E7934359 -:1041C0000360D130FF3000F049F806E720A800F086 -:1041D00037F860E7280093432B60D03000F036F8C2 -:1041E000D6E72B680B4207D0022228008B431343EB -:1041F0002B60483000F026F820AF380000F022F89D -:10420000A146AA6B002C00D07AE73FE7011C3431AD -:1042100038C9043B9C461D60A646011C20313CC9A0 -:1042200090469946A246AB46011C0831FCC941683C -:104230000068E54600BDC0467047C0467047C046AE -:104240007047C0467047C0467047C0467047C0467A -:104250007047C0467047C0467047C0467047C0466A -:1042600001B401A801B585B0FFB408A841464A468B -:1042700053465C4665463EC001A83EC80F98009074 -:1042800000230CB401A9FFF71DFC109B12B01847C6 -:1042900001B401A801B585B0FFB408A841464A465B -:1042A00053465C4665463EC001A83EC80F98009044 -:1042B00000230CB401A9FFF739FC109B12B018477A -:1042C00001B401A801B585B0FFB408A841464A462B -:1042D00053465C4665463EC001A83EC80F98009014 -:1042E00000230CB401A9FFF745FC109B12B018473E -:1042F00001B401A801B585B0FFB408A841464A46FB -:1043000053465C4665463EC001A83EC80F980090E3 -:1043100000230CB401ABFFF7FFFB109B12B0184752 -:1043200001B401A801B585B0FFB408A841464A46CA -:1043300053465C4665463EC001A83EC80F980090B3 -:1043400000230CB401AAFFF775FC109B12B01847AC -:10435000027A0300002A0BD1427A002A0FD0013AD8 -:1043600042724268111D416003211268017202E02D -:10437000013A02720268100E12021A607047B020F1 -:10438000FCE7C04600B585B003AB00930C220023C8 -:104390000021FFF707FC039805B000BD10B5FFF73B -:1043A000F1FF10BDF0B557464E464546DE460023A8 -:1043B000E0B587B003930F339846083B99468023B6 -:1043C0001B0306000F009A463800FFF7C1FF0400E8 -:1043D000B02800D1C3E003062AD503004246934328 -:1043E000DBB2802B00D171E0902B3DD0A02B00D10F -:1043F00085E0B02B50D0C02B00D196E003004A4698 -:104400009343DBB2D02B0AD15346024001321A4308 -:10441000052301213000FFF7C7FD0028D4D009246F -:10442000200007B03CBC90469946A246AB46F0BD82 -:10443000FF23820013401D1D05AB9B4600930D22F8 -:10444000002300213000FFF7ADFB630620D4059B5D -:104450009C46654405955B460D2200930021002390 -:104460003000FFF7C3FBAFE7833B03400D2BD6D0F3 -:1044700005AD02400095002300213000FFF792FBBC -:10448000009500230D2200213000FFF7AFFB9BE7D2 -:10449000059B5D1B0595DEE7B12874D0B22800D1DD -:1044A000CFE0B32800D184E0FC230340B42BB6D086 -:1044B0004A465346024001321A430121012330008B -:1044C000FFF772FD002800D17EE7A8E7040238005C -:1044D000FFF73EFF802520432D02A8429FD0040114 -:1044E0000005020C002300213000FFF75DFD0028CD -:1044F00095D12C4200D167E70123039364E7FF23A2 -:104500004A461B011900824311410A001A40030761 -:1045100002D58023DB011A43002300213000FFF77E -:1045200043FD002800D14FE779E7C6284CD0C728C3 -:104530005ED003004A469343DBB2C02B6DD0C8283F -:1045400072D0C92800D06AE73800FFF701FFF023D6 -:1045500002031B03134042460240013257E7039B0C -:104560000024002B00D05BE705AD00950E22002152 -:104570003000FFF717FB009500230F2200213000C9 -:10458000FFF734FB4CE73800FFF7E2FE002800D1CC -:1045900045E7030042469343DBB2002B00D03EE7E1 -:1045A000020000213000FFF7FFFC002800D10BE7DC -:1045B00035E73800FFF7CCFEF02302031B0313405E -:1045C00042460240013277E73800FFF7C1FEF02390 -:1045D00002031B0313404246024001321A430323E5 -:1045E00003213000FFF7E0FC002800D1ECE616E7DD -:1045F0003800FFF7ADFE021E00D110E70300414670 -:104600008B43DBB2002B00D009E704213000FFF719 -:10461000CBFC002800D1D7E601E74346A0221C408E -:10462000013412032243DAE73800FFF791FE4346D4 -:1046300002009A43D2B210321840120301300243F2 -:10464000E6E605AB00939B460D22002300213000D7 -:10465000FFF7A8FA3800FFF77BFE030618D57F2581 -:10466000B03C059B2840A0409C4660440590380023 -:104670000734FFF76DFE0306F3D481217F23890001 -:1046800003408C46A340059A62449B180593E2E6DA -:104690000224F2E7030000B5DB6C85B05A6808001D -:1046A000120201921A0001A908324A6003220A721A -:1046B000DB794B72FFF776FE05B000BD10B5FFF752 -:1046C0006DFE806C10BDC04610B5FFF767FEC26C72 -:1046D000D3799B000833D01810BDC04610B500F048 -:1046E00005F8C04610B5FFF7F9FFC04610B5062023 -:1046F00000F076F8012000F0A5F8C046F0B50F2ACA -:1047000037D90D0005430C000300AD0735D1150066 -:10471000103D2D092E013618103627681F60676876 -:104720005F60A7689F60E7681034DF601033B342B2 -:10473000F3D10F2401352D01491914404519032CDB -:104740001DD90023CE58EE500433E61A032EF9D8B3 -:104750000323043CA4080134A4001A402D190919AC -:10476000002A05D00023CC5CEC5401339342FAD1EB -:10477000F0BD0500002AF5D1FAE70500F2E72200B6 -:10478000F8E7C04670B505000C001F2922D8B723F2 -:104790009B00C358002B0ED08A009B181A68002A71 -:1047A00009D0012A10D0511C10D00021200019601E -:1047B0009047002070BD280000F030F82200010072 -:1047C000280000F017F8F5E70020F3E71623036050 -:1047D0000120EFE71623036001204042EAE7C046CC -:1047E00010B5034B01001868FFF7CCFF10BDC046A1 -:1047F00000000020002370B5074C050008001100E0 -:10480000236000F017F8431C00D070BD2368002B14 -:10481000FBD02B60F9E7C0460407002010B500F07C -:1048200001F810BD58220120014B40421A60704728 -:104830000407002058220120014B40421A607047B3 -:1048400004070020FEE7C046F8B5C046F8B5C046EC -:1048500074B20181B0AB308000000000800A018199 -:10486000B0B0ABF0000000003F020181B0AB30807F -:104870000000000080060181B0B0ABF00000000035 -:1048800030EEFF7FB0B0B0807CEFFF7F0100000012 -:1048900028F0FF7FB0A90280BCF0FF7FB0B0A880F5 -:1048A00008F1FF7F0100000014F1FF7FB0B0AA8083 -:1048B00048F1FF7F9CFFFF7F08F2FF7F01000000AF -:1048C00004F2FF7FAA3F398050F2FF7FB0B0A8808A -:1048D0005CF2FF7FB0B0AA809CF2FF7FB0B0A880EE -:1048E000B0F2FF7F01000000ACF2FF7FB0B0A88003 -:1048F000B4F2FF7F010000003CF3FF7FAA0FB280FB -:10490000A4F3FF7F58FFFF7F7CF6FF7FB0B0A88045 -:1049100098F6FF7F54FFFF7FF4F8FF7F010000004F -:1049200064FAFF7F0084048074FAFF7FB0B0A8802F -:1049300074FAFF7F40FFFF7F5CFDFF7F00840480EF -:104940007CFDFF7FB0B0A88094FDFF7F01000000D8 -:10495000080000200000000000000000F402002019 -:104960005C030020C40300200000000000000000E1 -:104970000000000000000000000000000000000037 -:104980000000000000000000000000000000000027 -:104990000000000000000000000000000000000017 -:1049A0000000000000000000000000000000000007 -:1049B00000000000000000000000000000000000F7 -:1049C00000000000000000000000000000000000E7 -:1049D00000000000000000000000000000000000D7 -:1049E00000000000000000000000000000000000C7 -:1049F00000000000000000000000000000000000B7 -:104A000001000000000000000E33CDAB34126DE653 -:104A1000ECDE05000B0000000000000000000000BC -:104A20000000000000000000000000000000000086 -:104A30000000000000000000000000000000000076 -:104A40000000000000000000000000000000000066 -:104A50000000000000000000000000000000000056 -:104A60000000000000000000000000000000000046 -:104A70000000000000000000000000000000000036 -:104A80000000000000000000000000000000000026 -:104A90000000000000000000000000000000000016 -:104AA0000000000000000000000000000000000006 -:104AB00000000000000000000000000000000000F6 -:104AC00000000000000000000000000000000000E6 +:102020009022D2055369194930B50B40C021840074 +:10203000890021400B435361154B164D5969000A25 +:102040002940FF252C40214359611C681249000298 +:1020500021431960596908240D4002212843586121 +:102060009961996219680D48802501401960102115 +:10207000946191629562C046C046C0461869E040CE +:102080009561C0B29462916130BDC046FFFC000012 +:102090000004004803FF000000005555FFFFAAAAF6 +:1020A0001D4B30B5984202D880231B02184390255F +:1020B000ED056B69194C82002340C024A400144034 +:1020C00023436B61164B174D5C69000A2C40FF25BA +:1020D0002A4014435C611C68134A000214431C60CC +:1020E0005C6909022C402043586102209861986283 +:1020F0001C680E4804401C601C6822431A605A6920 +:102100002A4011435961C04601229A62C0469A6131 +:102110001A6802401A6030BDFF1F0000FFFC00007B +:102120000004004803FF000000005555FFFFAAAA65 +:102130001A4B30B5984202D880231B0218439021D5 +:10214000C9054B69164A84001340C0229200224000 +:1021500013434B61134B144D5A69000A2A40FF2563 +:102160002C4022435A611C68104A000222431A6024 +:102170005A6915400222284358619A619A621A6886 +:102180000B4802401A6080228A62C046C046C046A0 +:10219000C0461869000AC0B28A6130BDFF1F000046 +:1021A000FFFC00000004004803FF0000000055553C +:1021B000FFFFAAAA70B504000D000D48AA21FFF781 +:1021C0006FFF55210B48FFF76BFFA0210848FFF771 +:1021D00067FF29002000FFF763FF2000FFF7A8FF3B +:1021E0000500C0462000FFF7A3FFA842F5D170BD4F +:1021F00055150000AA1A000070B504000D000D4826 +:10220000AA21FFF74DFF55210B48FFF749FFA021F9 +:102210000848FFF745FF29002000FFF741FF200095 +:10222000FFF786FF0500C0462000FFF781FFA842A8 +:10223000F5D170BD55150000AA0A00009022F0B536 +:102240000124D20513688500A3431360D368204E90 +:10225000A343D36053691F4C09022340C024A40048 +:102260002C40234353611C4B5C693440FF263540AE +:102270002C435C611D68194C25431D605F69050A8C +:1022800037402D023D435D6102259D619D621F68BF +:10229000134D00B22F401F60202797621F683C43F8 +:1022A0001C605C6934402143596108219161002818 +:1022B00001DA49189162C046C04608219162491866 +:1022C0009161103191611A6815401D60F0BDC046E2 +:1022D00003FF0000FFFC000000040048000055550B +:1022E000FFFFAAAAF7B51C4B07001D781B4B0191F5 +:1022F0001C88202126002036B6B23000FFF79EFF52 +:10230000AA211748FFF7CCFE2000103080B2102120 +:10231000FFF794FF2D0155211248FFF7C1FEEDB2E2 +:1023200020213000FFF78AFF6419A0210C48FFF735 +:10233000B7FEA0B22900FFF781FF01993800FFF72F +:10234000AFFE3800FFF7F4FE0400C0463800FFF788 +:10235000EFFEA042F5D1F7BD88040020360400202E +:1023600055150000AA0A000070B50400B0200E0048 +:1023700000020A21FFF762FFC0200A210002FFF7D6 +:102380005DFFAA211248FFF78BFE55211148FFF788 +:1023900087FEA0210E48FFF783FEB0200E4B0002FF +:1023A0001D782900FFF74AFFC02029000002FFF72F +:1023B00045FF31002000FFF773FE2000FFF7B8FE55 +:1023C0000500C0462000FFF7B3FEA842F5D170BD5E +:1023D00055150000AA0A000088040020F8B5050081 +:1023E0000E00194B02211C88A71CBFB23800FFF752 +:1023F00025FFAA211548FFF753FE601C80B201217A +:10240000FFF71CFF55211248FFF74AFE0221380052 +:10241000FFF714FFA0210D48FFF742FE0D4B19787E +:102420006418A0B2FFF70AFF31002800FFF738FE5A +:102430002800FFF77DFE0400C0462800FFF778FE65 +:10244000A042F5D1F8BDC046360400205515000065 +:10245000AA0A00008804002070B59024E40563698E +:102460001A4AFF261340C022850092002A401343D7 +:102470006361174B174A5969354011402943596127 +:102480001968154A0A431A605969020A0E40120275 +:1024900032435A6102229A619A621A680F4900B265 +:1024A0000A401A600822A261002801DA9218A2628A +:1024B000C046C046C046C046186990230822DB05C6 +:1024C0009A62000A9218C0B29A6170BDFFFC0000C7 +:1024D0000004004803FF000000005555FFFFAAAAB2 +:1024E00070B50400C0200D0000020121FFF7A6FE18 +:1024F000AA211548FFF7A2FEC02000210002FFF725 +:102500009DFE55211148FFF799FEC02001210002D0 +:10251000FFF794FEA0210C48FFF790FEC0200C4B63 +:1025200000021978FFF78AFE29002000FFF786FED7 +:102530002000FFF791FF0500C0462000FFF78CFF49 +:10254000A842F5D170BDC04655950000AAAA00006A +:102550008804002070B504000D001048AA21FFF780 +:102560006DFE55210E48FFF769FEA0210B48FFF7CD +:1025700065FE29002000FFF761FEA020094B000244 +:102580001978FFF75BFE2000FFF766FF0500C046E5 +:102590002000FFF761FFA842F5D170BDAAFA000044 +:1025A00055F500008804002070B504000D001048A7 +:1025B000AA21FFF743FE55210E48FFF73FFEA02159 +:1025C0000B48FFF73BFE29002000FFF737FE802075 +:1025D00000210002FFF732FE2000FFF73DFF05005B +:1025E000C0462000FFF738FFA842F5D170BDC046B5 +:1025F00055D50000AAAA00009022D205536970B5F3 +:10260000194C86002340C024A40034402343536166 +:10261000164B174C5D69000A2540FF2426403543C0 +:102620005D611E68134D00022E431E605E69090243 +:1026300026403043586102209861986218680E4E17 +:1026400030401860186805431D60586920400143F8 +:1026500059610121106808431060916291611A6804 +:1026600016401E6070BDC046FFFC0000000400481C +:1026700003FF000000005555FFFFAAAA9022D205D3 +:10268000536970B51B4C86002340C024A40034401D +:1026900023435361184B194D5C69000A2C40FF25F8 +:1026A0002E4034435C611E68154C000226431E60B8 +:1026B0005E6909022E403043586102209861986299 +:1026C0001E68104806401E601E6834431C605C692A +:1026D000254029435961012114680C43146091621B +:1026E00014688C431460D4682143D1601A68104088 +:1026F000186070BDFFFC00000004004803FF0000EC +:1027000000005555FFFFAAAA70B505000E00134B37 +:1027100000211C882000FFF791FDAA211048FFF737 +:10272000ADFF55210F48FFF7A9FFA0210C48FFF787 +:10273000A5FF0D4B19786418A0B2FFF77FFD31009B +:102740002800FFF79BFF2800FFF786FE0400C04625 +:102750002800FFF781FEA042F5D170BD36040020AD +:1027600055550000AA2A00008804002070B5040016 +:102770000D000D48AA21FFF781FF55210B48FFF7F7 +:102780007DFFA0210848FFF779FF29002000FFF70F +:1027900075FF2000FFF760FE0500C0462000FFF730 +:1027A0005BFEA842F5D170BD55550000AA2A000075 +:1027B000F0B5284B85B01E78274B01901B7802910D +:1027C00000930392254B112840D000229020002531 +:1027D0001A70C0051C782A002B000121844601983C +:1027E000202805D1009D1D410D4231D00C430D0024 +:1027F000029820280ED1002B01D1174FBB54604600 +:1028000007690F4206D01448875C080098400743C8 +:10281000114887540398013EF6B2002804D0002ED8 +:1028200002D102200D0004430133DBB2082B05D195 +:102830000132094BD2B29B5C00930023002ECED113 +:10284000002D01D0054B1C7005B0F0BD0122BDE785 +:102850008C43CCE7E1040020C10400209404002054 +:10286000F0B5134B134D19780023112800D1022322 +:102870000027114E3A00B4463C0001262B702B78FD +:1028800020280CD163461B5D3700134101323340D1 +:10289000D2B25B00082A02D100220134E4B201392D +:1028A000C9B20029ECD1002F00D02B70F0BDC0467A +:1028B000E104002094040020C104002000230B4AFE +:1028C000012113709022D205106888431060D068EF +:1028D0000143D1608021064A11701900054A137026 +:1028E000054A99540133202BFBD1704794040020F2 +:1028F000E2040020E1040020C104002010B52B4BAD +:102900001B78082B4ED013D8294C032B39D006D86E +:10291000012B28D0022B2AD0254BEE223AE0062BA1 +:102920003AD03DD8042BF7D101222021112021E0FB +:102930000F2B28D008D81E4C0D2B1FD000220E2B99 +:10294000EAD12021102015E0802B06D0184CFF2B57 +:1029500006D0102BE0D100221FE0FFF7AFFF10BD23 +:10296000F0232370FBE72020FFF77AFF04E0012229 +:1029700000212020FFF71CFF8223F2E70022110034 +:10298000F7E70122DDE7002220211120FFF710FFE9 +:102990008222074B1A70E2E7012220210800E9E7B2 +:1029A0001020E1E71120FFF75BFFF1E7C0040020F2 +:1029B000E2040020BC235F49DB038A6AF0B51343BD +:1029C0008B628B6A5C4A13408B62E0234A691B036B +:1029D00013434B61594B1A789023DB05102A03D11E +:1029E00000221A609A60DA6040221868544D9043C1 +:1029F0001860D86880260243DA601A685148F604E5 +:102A000002401A608022D86852000243DA601A68D5 +:102A10004D48802702401A608022D868D2000243C5 +:102A2000DA601A684948FF0202401A608022D868BA +:102A3000D20102430120DA60454A146884431460DD +:102A4000D4680443D4601C682C401C608024DD687A +:102A500064032C43DC601C683E4D2C401C608024C9 +:102A6000DD68E4052C43DC601C683B4D2C401C6099 +:102A7000DC683A4D3443DC601C68394E2C401C60E5 +:102A80008024DD6864012C43DC6004241568A543C0 +:102A90001560D5682543D5601D6885431D60DD68D8 +:102AA0008543DD60486938434861106830401060F4 +:102AB000D5682C480543D560C0254F69ED023D43DC +:102AC0004D6115682C4314600224A02594621C6893 +:102AD000ED022C431C601768234C274317601F68C6 +:102AE000224C27401F601768214C27401760DF6881 +:102AF0001D4C3D438027DD60D368FF021C43D4603A +:102B00004B69154D3B434B61136833401360D368E9 +:102B10000343D36013681E4016608026D368F60412 +:102B20001843144BD0601A682A401A60DA6832439E +:102B3000DA60F0BD00100240FFFFA1FF0407002093 +:102B4000FFFFEFFFFFFEFFFFFFFBFFFFFFBFFFFFEA +:102B500000040048FFFFFFBFFFFFFFFBFFEFFFFF89 +:102B6000FFFFAAAA0000555550550000FFFFFAFFCD +:102B7000AFAAFFFF00080048F7B580270D000192BB +:102B80004C7A000203B2A6B20093FF042B7AB34240 +:102B900002D26C720020FEBD00986B682043195D64 +:102BA00080B2019B98476B681A5D0B4B824206D03E +:102BB0001A683A431A60802292019A61E6E71A681D +:102BC000064901340A401A60DA6801363A43DA608D +:102BD000E4B2B6B2DAE7C04600080048FFFFFFFBE8 +:102BE000F7B50D001600FF27000203B24C7A0193DF +:102BF0002A7AE3B2A24202D26B720020FEBD20000C +:102C00006A683840D15C019B0134184380B2B047F8 +:102C1000A4B2EDE7022907D10F4B104A984218D011 +:102C2000904209D1180007E0032906D10A4B0B494D +:102C30000B4A98420BD1080070470429FCD1064B7F +:102C4000064A984205D006499042F4D0054A884287 +:102C5000E6D11000F0E7C046380400204C04002004 +:102C6000600400207404002070B506000D000524E7 +:102C70003000013CFFF7F0FBE4B229003000FFF721 +:102C8000DDFA6D08002CF3D170BDFFFF70B50400B4 +:102C9000A0200D0000020221FFF7E6FFAA21104844 +:102CA000FFF7FEF955210F48FFF7FAF9A0210C486C +:102CB000FFF7F6F9A0200C4B00021978FFF7D4FFBC +:102CC00029002000FFF7ECF92000FFF731FA05009A +:102CD000C0462000FFF72CFAA842F5D170BDC046CF +:102CE00055150000AA0A00008804002070B50400F1 +:102CF000C0200D0000020521FFF7B6FFAA210D48F4 +:102D0000FFF79CFA55210C48FFF798FAA0210948D3 +:102D1000FFF794FA29002000FFF790FA2000FFF750 +:102D20009BFB0500C0462000FFF796FBA842F5D1AB +:102D300070BDC04655550000AAAA0000F7B5012392 +:102D40000225294F01923A780091054393400421CE +:102D5000A020264E2D049BB229433268C00100F00A +:102D600057FD040001283DD13B7809209C400543D4 +:102D70007830A3B232682900FF3000F049FD04002A +:102D800001282FD13B7832689C402900A3B2002053 +:102D900000F03EFD0400012824D1009B180AFFF733 +:102DA000C7F83B7832689C402900A3B200F030FDA0 +:102DB0000400012816D16B461878FFF7B9F82200F5 +:102DC0003B7829009A4093B2326800F021FD0198C7 +:102DD000FFF7AEF83B7832689C402900A3B200F0C0 +:102DE00017FD0400E0B2FEBD0C070020080700201C +:102DF000F7B501230225274F00903A78019105434A +:102E000093400421C020244E2D049BB229433268F4 +:102E1000800100F0FDFC0400012838D109231D4386 +:102E20003B78C0209C403268A3B22900400000F0EB +:102E3000EFFC040001282AD13B7832689C4029002D +:102E4000A3B2002000F0E4FC040001281FD1019B84 +:102E5000180AFFF76DF83B7832689C402900A3B24E +:102E600000F0D6FC0400012811D16B461879FFF759 +:102E70005FF822003B789A4093B2009A14430922EB +:102E8000E1B209041143326800F0C2FC0400A0B2B0 +:102E9000FEBDC0460C07002008070020CF4BD04ADB +:102EA000F0B51A60CF4A89B01A6002225A60A02297 +:102EB00012019A600293029BDB68002BFBD19022E7 +:102EC000029BC94912031960C84B186802431A6073 +:102ED00080220791920219681142FCD001225968A0 +:102EE0000A435A608022596852020A435A6080227B +:102EF000596852030A435A608022196852040A43EF +:102F00001A608022920419681142FCD01121B84A3B +:102F1000B84C11605A680E398A43110002220A43E4 +:102F20005A608022196B0A431A638022D9691204FD +:102F30000A43DA61B04BE381BC231B689847AF4B6F +:102F40006382AF4B238262B6FFF734FDF022AD4BB4 +:102F50001A70029B079AAC4E1A6032782023110037 +:102F60009943D2291BD1A949A948C978C378022419 +:102F7000FF2904D1FF3B1C00631E9C41E4B2A54B1A +:102F8000DB78FF2B00D00324A34BDB78FF2B00D092 +:102F90000424A24BA24F1C703860D22A49D0337847 +:102FA000F22B05D10022023B33709D4B1B68DA7077 +:102FB0003578D02D00D043E1994E3068C378802B0E +:102FC00000D03DE1954B1978FFF724FE00233060D7 +:102FD000C570068804004372C07AF5B21038132811 +:102FE00000D92BE1FDF7C8FA53008B00F5002A0148 +:102FF0002A012A012A012A012A012A012A012A0179 +:103000002A012A012A012A01280035004B0050001C +:103010002100FFF7FFFD01230135EDB2A542F7D3F3 +:10302000002B00D0386080223B68DA70D0233370E8 +:10303000B5E700230125F1E7E17B0F2900D908E27C +:1030400009013143237AA278C9B26068FEF7B0FE65 +:103050000BE03C23E17B0A009A4300D0F9E1237A9C +:10306000A27829436068FEF705FF60726C4B1B680D +:1030700019889A7A52181A80D822DA70E0E0237AF6 +:10308000A278E17B2943E0E7E17B3F23E3E7E37BB1 +:103090001E2B0BD1C020B6092233F1B200029D4392 +:1030A000FFF7CCF8237AA2788021EBE71C2B0FD115 +:1030B000A0208121C001FFF7C1F88020F609F1B2FC +:1030C0000002FFF7BBF8A0200021C001FFF7B6F80F +:1030D0008023E27B5B421F2A05D01D43EDB2237A99 +:1030E000A2782900B1E77022A02021889543090920 +:1030F0001D43C9B2C001EDB2FFF7A0F8EFE7E37BD3 +:10310000FE2BB3D17609F1B24648FEF7C9FF6368DA +:10311000454A0393A378FF260193237AC02704939B +:10312000424BBF0019680A431F211A605A690D40BB +:103130002D0232402A435A6102229A619A621A6829 +:103140003B490A401A6090220821D2059161491832 +:10315000916270319162019950698D0035498C46B8 +:1031600008402900394008435061596932483540C8 +:1031700001400D435D61C046002106900596C046A2 +:103180001869039D000A685490250198ED050130E7 +:10319000C0B201906869019D0131AE0065462840CA +:1031A00035003D4028439025ED0568615869069D2E +:1031B000C9B22840059D2E40064304985E618842AE +:1031C000DDD280239361783B93620833936161720F +:1031D0004CE7237AA278602154E7C04600300040D3 +:1031E000CCCC000055550000AAAA000000100240F7 +:1031F00000200240006000403CA5FFFF410800089D +:1032000085080008E2040020A00400204C040020EF +:103210003804002060040020740400209C04002076 +:103220008C040020FF3F00000000555500040048BA +:10323000FFFFAAAAFFFC000003FF0000C323E37006 +:10324000E04B1D78F02D00D0B8E2DF4E3468E37813 +:10325000982B00D0B2E2DD4B20001978FFF7DAFCA2 +:1032600000233060C370E37AE5702678112B00D11B +:1032700007E2122B00D197E2102B00D09CE2E37BF7 +:10328000002B06D130008038C0B2D14A2100FFF7B0 +:1032900073FCE37B012B06D130008038C0B2CD4AED +:1032A0002100FFF79DFCE37B032B06D13000803823 +:1032B000C0B2C94A2100FFF793FCE37B042B06D17F +:1032C00030008038C0B2C54A2100FFF755FCE37BCF +:1032D0000A2B06D130008038C0B2C14A2100FFF766 +:1032E0007FFCE37BFD2B15D13F20238830409B09D9 +:1032F00003936B4680261B7B06430593677ABBB21C +:10330000019333021BB20693237A019A934200D3AE +:10331000A1E06772E37B1E2B06D130008038C0B27B +:10332000B04A2100FFF728FCE37B0C2B17D11F20AC +:10333000304080260643C0202588A5216D09EDB2C6 +:10334000C001FEF77BFF2900A748FEF777FF677AE9 +:1033500035023D43237ABB4200D3C9E06772E37B69 +:103360001C2B3BD1A02023888121DB09DBB2C001CB +:103370000393FEF763FF802003990002FEF75EFFD0 +:10338000A0205421C001FEF759FF677AAA21BBB2E1 +:1033900096480193FEF752FF55219548FEF74EFFE0 +:1033A00020219248FEF74AFF802333431B021BB2C1 +:1033B0000593237A019A934200D3B6E080209021AE +:1033C00000026772FEF73AFF802000210002FEF73C +:1033D00035FF8020F0210002FEF730FFE37B1F2B3A +:1033E00030D1A0202188C0010909C9B2FEF726FF0B +:1033F000AA217E48657AFEF721FF55217C48FEF719 +:103400001DFF7A482021FEF719FF702380209E437C +:103410004042304340B20302AFB20393237ABB422F +:1034200000D3F7E08020902100026572FEF706FFCE +:10343000802000210002FEF701FF8020F021000221 +:10344000FEF7FCFEF4232288E370A37A9B18238006 +:10345000B4E1C423F3E600216648FEF7EFFEAA219B +:103460006548FFF7C9F855216448FFF7C5F8A02162 +:103470006148FFF7C1F86B46187B614B0599C0188E +:1034800080B2FEF7DBFE069D63683D43ADB2D95DB9 +:103490002800FFF7B1F8C0462800FEF7DDFF0490D2 +:1034A0002800FEF7D9FF049B8342F4D16368049996 +:1034B000DA5D544B8A4212D1019A5349013292B2D9 +:1034C00001921A6801370A401A608022D968D20432 +:1034D0000A43DA6080229201FFB29A6214E78022E6 +:1034E0001968D2040A431A60802292019A610BE79C +:1034F000AA214648FEF7A2FE55214548FEF79EFE4A +:10350000A0214248FEF79AFE63682800D95DFEF7C5 +:1035100095FEC0462800FEF79FFF01902800FEF7A9 +:103520009BFF019B8342F4D114E7A0205421C001EA +:10353000FEF784FE059DA0213D43ADB22800FEF7B5 +:103540007DFE63682800D95DFEF778FEC04628003E +:10355000FEF782FF04902800FEF77EFF049B834263 +:10356000F4D16368049ADB5D264D934212D1019B2E +:10357000254A01339BB201932B68013713402B601E +:103580008023EA68DB041343EB6080239B01FFB2D6 +:10359000AB620EE7A0208121C001FEF74FFE802024 +:1035A00003990002FEF74AFEA0205421C001FEF755 +:1035B00045FE80232A68DB0413432B6080239B0194 +:1035C000AB61F6E6A00400208C0400209C040020DF +:1035D0006D270008ED2C000809270008A925000820 +:1035E00055250008E1240008FFFF0000AA8A00001A +:1035F0005585000069FD000055550000AA2A00000D +:1036000069FDFFFF00080048FFFFFFFB55D50000E4 +:10361000AAAA0000039EA0212E43B6B23000FEF7F6 +:103620000DFE63683000595DFEF708FEC0463000AD +:10363000FEF712FF01903000FEF70EFF019B834260 +:10364000F4D1636801995A5D634B8A4210D11A68BC +:10365000624901350A4080211A60DA68C9040A43C8 +:10366000DA60802201379201EDB2BFB29A62D5E6EC +:1036700080211A68C9040A431A60802292019A6163 +:10368000CCE6E37B002B04D1554A21003000FFF744 +:10369000A7FAE37B012B04D1524A21003000FFF747 +:1036A0009FFAE37B022B04D14F4A21003000FFF741 +:1036B00097FAE37B042B04D14C4A21003000FFF73A +:1036C0008FFAE37B0A2B04D1494A21003000FFF72F +:1036D00087FAE37B0B2B04D1464A21003000FFF729 +:1036E0007FFAE37BFE2B00D0ACE6218842484909F3 +:1036F000C9B2FEF7D5FCAA214048657AFEF74AFC1C +:1037000055213F48FEF746FC3C482021FEF742FC8D +:103710001F2030400302AFB20393237ABB420DD285 +:10372000657290210020FEF735FC00210800FEF7AD +:1037300031FCF0210020FEF72DFC83E6039EA02142 +:103740002E433000FEF726FC63683000595DFEF71B +:1037500021FCC0463000FEF763FC01903000FEF70C +:103760005FFC019B8342F4D1636801995A5D1A4B57 +:103770008A4210D11A68194901350A4080211A601D +:10378000DA68C9040A43DA60802201379201EDB297 +:10379000BFB29A62C1E780211A68C9040A431A605D +:1037A000802292019A61B8E730006030154A21000A +:1037B000C0B2FFF715FA45E6C323E370124B1B783E +:1037C000F02B01D1FFF7C5FB832B01D0FFF7C1FB25 +:1037D000FFF794F8FFF7BDFB00080048FFFFFFFB71 +:1037E000F92100088D2C0008DD230008B521000810 +:1037F00069230008E5220008FF3F0000AA0A000034 +:10380000550500003D220008E2040020FFFFFFFFF5 +:10381000F0B5474680B4061C081C000C102801D5E2 +:10382000162700E004270007000F8046FF20014014 +:103830005468251C1D439C43F60313850AD5C046D6 +:10384000C046C046C046C046C046C04694801383AA +:10385000958002E0012000F081F801390AD4381C7B +:1038600000F07CF8C046948013839580C046C04623 +:103870007600E2E7381C013800F070F8948013837A +:103880009580042000F06AF8108A184001D0FF20CB +:1038900061E0C046C046C046C046C046C0469480AF +:1038A0009580108A184055D001200226B04552D08C +:1038B0000921168A1E40FCD1012000F04FF89480A7 +:1038C000C0469580C04603E0C046C046C046C046DC +:1038D000948095807600108A1840EFF300804000B5 +:1038E000C00F0643381C023800F038F894809580E9 +:1038F000022000F033F80139EAD5138594800120C5 +:1039000000F02CF813839580301C8021022399400D +:103910000E401BD1002341085E4149085E41490821 +:103920005E4149085E4149085E4149085E414908D7 +:103930005E4149085E4149085E41760808D3400867 +:10394000FF21084048400002013004E00E2002E060 +:10395000092000E0002080BCB846F0BD0138FDD150 +:103960007047C04603685A0003D45B005B08C01868 +:103970007047802212061343F9E7C046F0B5574658 +:103980004E46DE464546E0B5814683B09246002964 +:1039900025D04B1E9B46002701935B46FB18DC0F8E +:1039A000E4184B466410E5005E193000FFF7DAFFBB +:1039B000019B8046A3420BD0280008304844FFF703 +:1039C000D1FFD04506D80138504509D2671CE4E73D +:1039D000504505D9A74202D0631E9B46DDE700266D +:1039E000300003B03CBC90469946A246AB46F0BDC1 +:1039F000012809D0022805D0002801D000207047F6 +:103A00000248FCE70248FAE70248F8E7E540000808 +:103A1000FD400008F140000830B5234B83B005009D +:103A20008C1E002B26D001A9200000E000BF00283A +:103A30001CD001992200FFF7A1FF041E16D0FFF74A +:103A400091FF6368A864012B2AD0201D002B23DB83 +:103A5000FFF788FF0023E8642B650368002B0FDB6A +:103A6000FFF780FF2861002003B030BD002309204C +:103A70002B61F9E70D480E49091AC9100191D9E7E0 +:103A80001801000FFFF7B4FF2861431E9841082377 +:103A9000404298430930E7E70123E8642B65DCE7FF +:103AA000002305202B61DFE700000000E04900084B +:103AB000B04A0008036810B50400DA0705D448309E +:103AC0009B070ED500F06CFC23685A070ED51A0729 +:103AD00013D5DB0604D42000D130FF3000F06CFC9D +:103AE00010BD00F059FC23685A07F0D42000D030F4 +:103AF00000F05AFC23681A07EBD420005130FF3045 +:103B000000F056FC2368E4E70368002B00D01B1884 +:103B100018007047092070477047C04670B5040010 +:103B20000D0008E02B6C2A0063612100012023694D +:103B30009847082807D1296C2000FFF76DFF00285F +:103B4000F0D000F083FE0728FBD10020296CFFF79E +:103B5000E3FF281D00F00AFCF0B5CE46474680B5CD +:103B6000C3682E4C9846A5448369060014000431AE +:103B7000402205A8994600F071FE002304AD04938D +:103B800023E0F0222B6C5200736129007CA800F026 +:103B900065FE7CAA31003369200098478A9B0700A4 +:103BA0006B6403934B460095019332003300210070 +:103BB0000120C04700281FD1F0227CA95200280014 +:103BC00000F04CFE0024082F1FD1296C3000FFF7B5 +:103BD00023FF611E8C41070009340028D1D0AB6B54 +:103BE00010216B644B462143019300953300320052 +:103BF0000120C047002800D009273800F5239B008A +:103C00009D440CBC90469946F0BD072FF4D120008E +:103C1000296CFFF781FF05A800F0A8FB2CFCFFFF33 +:103C2000406C704770B5CB6BFAB00B6404000E00AB +:103C30004022043103A800F011FE01235B420293ED +:103C400006E002AA210023699847050008280AD146 +:103C5000129B200019000193FFF7DEFE0028F0D030 +:103C600009207AB070BD02A8FFF724FF062DF7D116 +:103C700031002000FFF752FF10B58261DA6BC1609E +:103C80001A6419000022FFF767FF10BD436970B581 +:103C90000B64C36804000D00002B15D10A002369D2 +:103CA000010002209847072807D0082803D12900DF +:103CB0002000FFF733FF00F0C9FD0020296CFFF75B +:103CC0002BFF281D00F052FB0122FFF745FF00F0FB +:103CD000BDFDC046C36810B5002B05D0CB6B0022DC +:103CE0000B64FFF739FF10BDFFF79CFFFBE7C046F1 +:103CF0007047C046836810B5002B02D00100012038 +:103D0000984710BD012906D0002906D003390220AA +:103D1000012900D970470120FCE7002B08D10F2AA8 +:103D200006D8920082185268009B00201A60F1E7C2 +:103D30000220EFE700B585B003AB0A000093002135 +:103D40000023FFF7DFFF039805B000BD012906D06F +:103D5000002906D003390220012900D9704701202B +:103D6000FCE7002B08D10F2A06D8009B92001B68A5 +:103D7000821853600020F1E70220EFE700B585B01C +:103D800003AB039200930A0000230021FFF7DEFF3C +:103D900005B000BD70B51A4CD36BA5441364060082 +:103DA0000D0019A8111D402200F058FD01235B42AF +:103DB000189314E00C2118A802AAFFF7DFFF2900CE +:103DC00018A8B047002812D1069B18AA02A90830EB +:103DD00001939847040005280AD0092807D0289B9A +:103DE00002A819000193FFF717FE0028E2D009246A +:103DF00018A8FFF75FFE200090239B009D4470BD34 +:103E0000C0FDFFFFF0B5DE4657464E464546E0B5DD +:103E1000160003220D0011008BB01F000193EB6C04 +:103E200001401C1D009107A91B688B460894002FB8 +:103E30006BD01A0C1B045946079302230B72FD33F7 +:103E400013409B004A72E418009B022B00D1AC6B1C +:103E50002B6DDB0747D400230593083303400293FF +:103E60002768002F00D112E1019B022B49D0638803 +:103E7000278898460434012340469A469843AB6C01 +:103E80000F21994681443000FFF754FF00218145FE +:103E900006D83900534699434944884289414942EA +:103EA00043465A0002231340012217403B43012B93 +:103EB0003AD0002B30D0022B1BD12368009A5F0030 +:103EC0007F08002A67D1002906D0029A002A00D173 +:103ED0007CE0002F00D1A9E0002B00DA0434013788 +:103EE000BF00E419BCE75946300000F00BFB002886 +:103EF00010D009200BB03CBC90469946A246AB4678 +:103F0000F0BD636808349846B5E71B0207935B462B +:103F10001A8199E70820EDE7009B002B02D00029C9 +:103F200000D08DE004349BE7009B002B1AD10029C0 +:103F300016D02368DF0F63689A1CDAD02A00583243 +:103F40000692013300D1BDE0201DFFF7DDFD06AB79 +:103F500001003A00280000E000BF002800D082E005 +:103F600008347DE70D2130002F6AFFF7E3FE87421A +:103F7000F6D1AB6A9C42F3D12000FFF7F3FC0F218E +:103F800002003000FFF7FAFE30002A000021FFF7A0 +:103F9000F5FE0720AEE72B6A0D2130009846FFF7AB +:103FA000C9FE804501D0236896E7AB6A9C42FAD1EE +:103FB0000023EB6204332B63231DAF626B63236822 +:103FC000002B00DA86E00123059388E7002F2DD02F +:103FD00058239C46AC4463460393231D9946002313 +:103FE000984606AB220004933B004C464746B24637 +:103FF00098462E00914603E004342F00454542D0F8 +:10400000039B20000693FFF77FFD049B0100002225 +:1040100030007D1C00E000BF0028EDD04346B846CC +:1040200035004C4656461F009845BCD10D21300046 +:10403000FFF780FE069B28626B62AC62062059E7A0 +:104040002000FFF78FFC04340700AC63280000E079 +:1040500000BF002800D14CE730003A000F21FFF7E5 +:104060008DFE072046E707000D213000FFF762FEB6 +:104070002862022F2BD1069BEB622B002C336B6244 +:10408000AC62062036E735004C465646CEE7594628 +:10409000300000F037FA002800D02AE7059B002BFB +:1040A00000D137E70F213000FFF744FE0E21020058 +:1040B0003000FFF763FE3000094A0F21FFF75EFE74 +:1040C000072017E70D213000FFF734FE2862069B1A +:1040D0006B62D5E738000130800020184DE7C046FC +:1040E0000000000010B50023FFF78CFE10BDC04695 +:1040F00010B50123FFF786FE10BDC04610B50223A0 +:10410000FFF780FE10BDC046F0B5CE46474680B5ED +:104110000500C3B014001E00012955D000294BD062 +:10412000032922D0042949D1002B47D1102A45D890 +:10413000102203681A4200D0F1E020AF380000F0EE +:104140003DF900230120A96B02009A40144203D0DC +:104150000E689A00BE5004310133042BF4D13800AC +:10416000A96300F029F9002029E0032B26D11404CB +:10417000230C160C9846F318102B1FD8082203683E +:104180001A4200D098E020AF380000F013F9424600 +:10419000AB6BF6001C00002A08D0D400F21A1C19E0 +:1041A000BA181968D15004339C42FAD1AC63380074 +:1041B00000F0FEF8002002E0002B24D0022043B0E3 +:1041C0000CBC90469946F0BD130C14049846240C80 +:1041D000012E2ED0052EF1D11B19202BEED84246F0 +:1041E0000F2A70D9A146002C7ED1AA6B4346AA6340 +:1041F0000F2B00D89AE04B46002BDBD0684600F02E +:10420000D3F80020DBE700231004A96B000C013673 +:1042100032009A40104204D00F689A00AA185760E2 +:1042200004310133102BF3D10020A304C7D4A963B8 +:10423000C5E71B19102BC1D843460F2BBED82B68DE +:104240001E4206D00322280093432B60483000F022 +:10425000A5F820AF380000F0A1F8AA6B002C24D0FC +:104260004346DB00FF180023994664000023A400A6 +:10427000D158F95004339C42FAD14B4612196F467B +:10428000002B0FD04046102800D210204B46D900FA +:1042900000231038C0003818D458C4500433994251 +:1042A000FAD15218012EA1D120AF04323800AA63EE +:1042B00000F072F8002082E7934303605130FF3032 +:1042C00000F078F85FE7102B3BD91022524291465C +:1042D00099442B68194208D0022228008B431343CB +:1042E0002B60483000F05EF82B6804221A4221D17E +:1042F00043460F2B03D820AF380000F053F86F4629 +:10430000380000F053F810244346AA6BE41A002C3E +:10431000B8DD434620AFDB006400FF18A6E79343F7 +:104320000360D130FF3000F049F806E720A800F024 +:1043300037F860E7280093432B60D03000F036F860 +:10434000D6E72B680B4207D0022228008B43134389 +:104350002B60483000F026F820AF380000F022F83B +:10436000A146AA6B002C00D07AE73FE7011C34314C +:1043700038C9043B9C461D60A646011C20313CC93F +:1043800090469946A246AB46011C0831FCC94168DB +:104390000068E54600BDC0467047C0467047C0464D +:1043A0007047C0467047C0467047C0467047C04619 +:1043B0007047C0467047C0467047C0467047C04609 +:1043C00001B401A801B585B0FFB408A841464A462A +:1043D00053465C4665463EC001A83EC80F98009013 +:1043E00000230CB401A9FFF71DFC109B12B0184765 +:1043F00001B401A801B585B0FFB408A841464A46FA +:1044000053465C4665463EC001A83EC80F980090E2 +:1044100000230CB401A9FFF739FC109B12B0184718 +:1044200001B401A801B585B0FFB408A841464A46C9 +:1044300053465C4665463EC001A83EC80F980090B2 +:1044400000230CB401A9FFF745FC109B12B01847DC +:1044500001B401A801B585B0FFB408A841464A4699 +:1044600053465C4665463EC001A83EC80F98009082 +:1044700000230CB401ABFFF7FFFB109B12B01847F1 +:1044800001B401A801B585B0FFB408A841464A4669 +:1044900053465C4665463EC001A83EC80F98009052 +:1044A00000230CB401AAFFF775FC109B12B018474B +:1044B000027A0300002A0BD1427A002A0FD0013A77 +:1044C00042724268111D416003211268017202E0CC +:1044D000013A02720268100E12021A607047B02090 +:1044E000FCE7C04600B585B003AB00930C22002367 +:1044F0000021FFF707FC039805B000BD10B5FFF7DA +:10450000F1FF10BDF0B557464E464546DE46002346 +:10451000E0B587B003930F339846083B9946802354 +:104520001B0306000F009A463800FFF7C1FF040086 +:10453000B02800D1C3E003062AD5030042469343C6 +:10454000DBB2802B00D171E0902B3DD0A02B00D1AD +:1045500085E0B02B50D0C02B00D196E003004A4636 +:104560009343DBB2D02B0AD15346024001321A43A7 +:10457000052301213000FFF7C7FD0028D4D009240E +:10458000200007B03CBC90469946A246AB46F0BD21 +:10459000FF23820013401D1D05AB9B4600930D2297 +:1045A000002300213000FFF7ADFB630620D4059BFC +:1045B0009C46654405955B460D220093002100232F +:1045C0003000FFF7C3FBAFE7833B03400D2BD6D092 +:1045D00005AD02400095002300213000FFF792FB5B +:1045E000009500230D2200213000FFF7AFFB9BE771 +:1045F000059B5D1B0595DEE7B12874D0B22800D17C +:10460000CFE0B32800D184E0FC230340B42BB6D024 +:104610004A465346024001321A4301210123300029 +:10462000FFF772FD002800D17EE7A8E704023800FA +:10463000FFF73EFF802520432D02A8429FD00401B2 +:104640000005020C002300213000FFF75DFD00286B +:1046500095D12C4200D167E70123039364E7FF2340 +:104660004A461B011900824311410A001A40030700 +:1046700002D58023DB011A43002300213000FFF71D +:1046800043FD002800D14FE779E7C6284CD0C72862 +:104690005ED003004A469343DBB2C02B6DD0C828DE +:1046A00072D0C92800D06AE73800FFF701FFF02375 +:1046B00002031B03134042460240013257E7039BAB +:1046C0000024002B00D05BE705AD00950E220021F1 +:1046D0003000FFF717FB009500230F220021300068 +:1046E000FFF734FB4CE73800FFF7E2FE002800D16B +:1046F00045E7030042469343DBB2002B00D03EE780 +:10470000020000213000FFF7FFFC002800D10BE77A +:1047100035E73800FFF7CCFEF02302031B031340FC +:1047200042460240013277E73800FFF7C1FEF0232E +:1047300002031B0313404246024001321A43032383 +:1047400003213000FFF7E0FC002800D1ECE616E77B +:104750003800FFF7ADFE021E00D110E7030041460E +:104760008B43DBB2002B00D009E704213000FFF7B8 +:10477000CBFC002800D1D7E601E74346A0221C402D +:10478000013412032243DAE73800FFF791FE434673 +:1047900002009A43D2B21032184012030130024391 +:1047A000E6E605AB00939B460D2200230021300076 +:1047B000FFF7A8FA3800FFF77BFE030618D57F2520 +:1047C000B03C059B2840A0409C46604405903800C2 +:1047D0000734FFF76DFE0306F3D481217F238900A0 +:1047E00003408C46A340059A62449B180593E2E679 +:1047F0000224F2E7030000B5DB6C85B05A680800BC +:10480000120201921A0001A908324A6003220A72B8 +:10481000DB794B72FFF776FE05B000BD10B5FFF7F0 +:104820006DFE806C10BDC04610B5FFF767FEC26C10 +:10483000D3799B000833D01810BDC04610B500F0E6 +:1048400005F8C04610B5FFF7F9FFC04610B50620C1 +:1048500000F076F8012000F0A5F8C046F0B50F2A68 +:1048600037D90D0005430C000300AD0735D1150005 +:10487000103D2D092E013618103627681F60676815 +:104880005F60A7689F60E7681034DF601033B34251 +:10489000F3D10F2401352D01491914404519032C7A +:1048A0001DD90023CE58EE500433E61A032EF9D852 +:1048B0000323043CA4080134A4001A402D1909194B +:1048C000002A05D00023CC5CEC5401339342FAD18A +:1048D000F0BD0500002AF5D1FAE70500F2E7220055 +:1048E000F8E7C04670B505000C001F2922D8B72391 +:1048F0009B00C358002B0ED08A009B181A68002A10 +:1049000009D0012A10D0511C10D0002120001960BC +:104910009047002070BD280000F030F82200010010 +:10492000280000F017F8F5E70020F3E716230360EE +:104930000120EFE71623036001204042EAE7C0466A +:1049400010B5034B01001868FFF7CCFF10BDC0463F +:1049500000000020002370B5074C0500080011007E +:10496000236000F017F8431C00D070BD2368002BB3 +:10497000FBD02B60F9E7C0461007002010B500F00F +:1049800001F810BD58220120014B40421A607047C7 +:104990001007002058220120014B40421A60704746 +:1049A00010070020FEE7C046F8B5C046F8B5C0467F +:1049B00074B20181B0AB308000000000800A018138 +:1049C000B0B0ABF0000000003F020181B0AB30801E +:1049D0000000000080060181B0B0ABF000000000D4 +:1049E00030EEFF7FB0B0B0807CEFFF7F01000000B1 +:1049F00028F0FF7FB0A90280BCF0FF7FB0B0A88094 +:104A000008F1FF7F0100000014F1FF7FB0B0AA8021 +:104A100048F1FF7F9CFFFF7F08F2FF7F010000004D +:104A200004F2FF7FAA3F398050F2FF7FB0B0A88028 +:104A30005CF2FF7FB0B0AA809CF2FF7FB0B0A8808C +:104A4000B0F2FF7F01000000ACF2FF7FB0B0A880A1 +:104A5000B4F2FF7F010000003CF3FF7FAA0FB28099 +:104A6000A4F3FF7F58FFFF7F7CF6FF7FB0B0A880E4 +:104A700098F6FF7F54FFFF7FF4F8FF7F01000000EE +:104A800064FAFF7F0084048074FAFF7FB0B0A880CE +:104A900074FAFF7F40FFFF7F5CFDFF7F008404808E +:104AA0007CFDFF7FB0B0A88094FDFF7F0100000077 +:104AB000080000200000000000000000F4020020B8 +:104AC0005C030020C4030020000000000000000080 :104AD00000000000000000000000000000000000D6 :104AE00000000000000000000000000000000000C6 :104AF00000000000000000000000000000000000B6 @@ -1205,8 +1205,8 @@ :104B30000000000000000000000000000000000075 :104B40000000000000000000000000000000000065 :104B50000000000000000000000000000000000055 -:104B60000000000000000000000000000000000045 -:104B70000000000000000000000000000000000035 +:104B600001000000000000000E33CDAB34126DE6F2 +:104B7000ECDE05000B00000000000000000000005B :104B80000000000000000000000000000000000025 :104B90000000000000000000000000000000000015 :104BA0000000000000000000000000000000000005 @@ -1239,5 +1239,27 @@ :104D50000000000000000000000000000000000053 :104D60000000000000000000000000000000000043 :104D70000000000000000000000000000000000033 +:104D80000000000000000000000000000000000023 +:104D90000000000000000000000000000000000013 +:104DA0000000000000000000000000000000000003 +:104DB00000000000000000000000000000000000F3 +:104DC00000000000000000000000000000000000E3 +:104DD00000000000000000000000000000000000D3 +:104DE00000000000000000000000000000000000C3 +:104DF00000000000000000000000000000000000B3 +:104E000000000000000000000000000000000000A2 +:104E10000000000000000000000000000000000092 +:104E20000000000000000000000000000000000082 +:104E30000000000000000000000000000000000072 +:104E40000000000000000000000000000000000062 +:104E50000000000000000000000000000000000052 +:104E60000000000000000000000000000000000042 +:104E70000000000000000000000000000000000032 +:104E80000000000000000000000000000000000022 +:104E90000000000000000000000000000000000012 +:104EA0000000000000000000000000000000000002 +:104EB00000000000000000000000000000000000F2 +:104EC00000000000000000000000000000000000E2 +:104ED00000000000000000000000000000000000D2 :0400000508000805E2 :00000001FF diff --git a/firmware/build_stmn/inlretro_stm.map b/firmware/build_stmn/inlretro_stm.map index 507078f..ba189c0 100644 --- a/firmware/build_stmn/inlretro_stm.map +++ b/firmware/build_stmn/inlretro_stm.map @@ -1,7 +1,7 @@ Archive member included to satisfy reference by file (symbol) c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) - C:\Users\paul\AppData\Local\Temp\cc8U0Tu6.o (__aeabi_unwind_cpp_pr0) + C:\Users\paul\AppData\Local\Temp\ccSRey5t.o (__aeabi_unwind_cpp_pr0) c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(libunwind.o) c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) (restore_core_regs) c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) @@ -51,9 +51,9 @@ c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(_exit.o) c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-abort.o) (_exit) c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(_thumb1_case_uqi.o) - C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o (__gnu_thumb1_case_uqi) + C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o (__gnu_thumb1_case_uqi) c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(_thumb1_case_uhi.o) - C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o (__gnu_thumb1_case_uhi) + C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o (__gnu_thumb1_case_uhi) Allocating common symbols Common symbol size file @@ -92,6 +92,7 @@ buff2 0x14 source/buffer.o (symbol from plugin) cur_bank 0x1 source/nes.o (symbol from plugin) addr_ptr 0x4 source/bootload.o (symbol from plugin) tdi_pin 0x1 source/jtag.o (symbol from plugin) +lfsr 0x4 source/stuff.o (symbol from plugin) buff0 0x14 source/buffer.o (symbol from plugin) raw_bank_status 0x10 source/buffer.o (symbol from plugin) oper_info_struct 0x20 source/operation.o (symbol from plugin) @@ -130,39 +131,39 @@ Discarded input sections .ARM.exidx 0x00000000 0x8 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o .ARM.attributes 0x00000000 0x1b c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o - .text 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccWIXuss.o - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccWIXuss.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccWIXuss.o - .stack 0x00000000 0xc00 C:\Users\paul\AppData\Local\Temp\ccWIXuss.o - .heap 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccWIXuss.o - .debug_line 0x00000000 0x7c C:\Users\paul\AppData\Local\Temp\ccWIXuss.o - .debug_info 0x00000000 0x22 C:\Users\paul\AppData\Local\Temp\ccWIXuss.o - .debug_abbrev 0x00000000 0x12 C:\Users\paul\AppData\Local\Temp\ccWIXuss.o + .text 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o + .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o + .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o + .stack 0x00000000 0xc00 C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o + .heap 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o + .debug_line 0x00000000 0x7c C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o + .debug_info 0x00000000 0x22 C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o + .debug_abbrev 0x00000000 0x12 C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o .debug_aranges - 0x00000000 0x28 C:\Users\paul\AppData\Local\Temp\ccWIXuss.o - .debug_str 0x00000000 0x80 C:\Users\paul\AppData\Local\Temp\ccWIXuss.o - .debug_ranges 0x00000000 0x20 C:\Users\paul\AppData\Local\Temp\ccWIXuss.o + 0x00000000 0x28 C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o + .debug_str 0x00000000 0x80 C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o + .debug_ranges 0x00000000 0x20 C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o .ARM.attributes - 0x00000000 0x1b C:\Users\paul\AppData\Local\Temp\ccWIXuss.o - .text 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - .text 0x00000000 0x4 C:\Users\paul\AppData\Local\Temp\cc8U0Tu6.o - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc8U0Tu6.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc8U0Tu6.o - .ARM.extab 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\cc8U0Tu6.o - .ARM.exidx 0x00000000 0x8 C:\Users\paul\AppData\Local\Temp\cc8U0Tu6.o - .debug_line 0x00000000 0x49 C:\Users\paul\AppData\Local\Temp\cc8U0Tu6.o - .debug_info 0x00000000 0x26 C:\Users\paul\AppData\Local\Temp\cc8U0Tu6.o - .debug_abbrev 0x00000000 0x14 C:\Users\paul\AppData\Local\Temp\cc8U0Tu6.o + 0x00000000 0x1b C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o + .text 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .text 0x00000000 0x4 C:\Users\paul\AppData\Local\Temp\ccSRey5t.o + .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccSRey5t.o + .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccSRey5t.o + .ARM.extab 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccSRey5t.o + .ARM.exidx 0x00000000 0x8 C:\Users\paul\AppData\Local\Temp\ccSRey5t.o + .debug_line 0x00000000 0x49 C:\Users\paul\AppData\Local\Temp\ccSRey5t.o + .debug_info 0x00000000 0x26 C:\Users\paul\AppData\Local\Temp\ccSRey5t.o + .debug_abbrev 0x00000000 0x14 C:\Users\paul\AppData\Local\Temp\ccSRey5t.o .debug_aranges - 0x00000000 0x20 C:\Users\paul\AppData\Local\Temp\cc8U0Tu6.o - .debug_str 0x00000000 0x7d C:\Users\paul\AppData\Local\Temp\cc8U0Tu6.o + 0x00000000 0x20 C:\Users\paul\AppData\Local\Temp\ccSRey5t.o + .debug_str 0x00000000 0x7d C:\Users\paul\AppData\Local\Temp\ccSRey5t.o .ARM.attributes - 0x00000000 0x21 C:\Users\paul\AppData\Local\Temp\cc8U0Tu6.o - .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccays3OO.o - .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccays3OO.o - .ARM.extab 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccays3OO.o + 0x00000000 0x21 C:\Users\paul\AppData\Local\Temp\ccSRey5t.o + .data 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccK626T0.o + .bss 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccK626T0.o + .ARM.extab 0x00000000 0x0 C:\Users\paul\AppData\Local\Temp\ccK626T0.o .data 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) .bss 0x00000000 0x0 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) .debug_frame 0x00000000 0x2b4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) @@ -425,10 +426,10 @@ Linker script and memory map LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtbegin.o LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/crt0.o -LOAD C:\Users\paul\AppData\Local\Temp\ccWIXuss.o -LOAD C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o -LOAD C:\Users\paul\AppData\Local\Temp\cc8U0Tu6.o -LOAD C:\Users\paul\AppData\Local\Temp\ccays3OO.o +LOAD C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o +LOAD C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o +LOAD C:\Users\paul\AppData\Local\Temp\ccSRey5t.o +LOAD C:\Users\paul\AppData\Local\Temp\ccK626T0.o START GROUP LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a @@ -442,17 +443,17 @@ END GROUP LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtend.o LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crtn.o -.text 0x08000000 0x4850 +.text 0x08000000 0x49b0 *(.isr_vector) - .isr_vector 0x08000000 0xc0 C:\Users\paul\AppData\Local\Temp\ccWIXuss.o + .isr_vector 0x08000000 0xc0 C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o 0x08000000 __isr_vector *(.usb_driver) - .usb_driver 0x080000c0 0x3bc C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + .usb_driver 0x080000c0 0x3bc C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o 0x08000198 USB_IRQHandler *(.usb_desc) - .usb_desc 0x0800047c 0xb8 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + .usb_desc 0x0800047c 0xb8 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o *(.hardfault) - .hardfault 0x08000534 0x2 C:\Users\paul\AppData\Local\Temp\ccWIXuss.o + .hardfault 0x08000534 0x2 C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o 0x08000534 TIM1_CC_IRQHandler 0x08000534 TSC_IRQHandler 0x08000534 ADC1_COMP_IRQHandler @@ -491,7 +492,7 @@ LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eab 0x08000534 USART1_IRQHandler 0x08000534 TIM1_BRK_UP_TRG_COM_IRQHandler *fill* 0x08000536 0x2 ff - .hardfault 0x08000538 0xc C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + .hardfault 0x08000538 0xc C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o 0x08000538 HardFault_Handler *_thumb1_case_uqi.o() .text 0x08000544 0x14 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(_thumb1_case_uqi.o) @@ -507,11 +508,11 @@ LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eab 0x0800058c 0x1e c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(_thumb1_case_uhi.o) *(.fw_update) *fill* 0x080005aa 0x2 ff - .fw_update 0x080005ac 0x15c C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + .fw_update 0x080005ac 0x15c C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o 0x00000770 . = 0x770 *fill* 0x08000708 0x68 ff *(.fw_up_main) - .fw_up_main 0x08000770 0x70 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + .fw_up_main 0x08000770 0x70 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o 0x00000800 . = 0x800 *fill* 0x080007e0 0x20 ff *(.appver) @@ -519,159 +520,163 @@ LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eab *fill* 0x08000800 0x4 ff *(.reset_handler) .reset_handler - 0x08000804 0x3c C:\Users\paul\AppData\Local\Temp\ccWIXuss.o + 0x08000804 0x3c C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o 0x08000804 Reset_Handler *(.usbFuncWrite) - .usbFuncWrite 0x08000840 0x44 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + .usbFuncWrite 0x08000840 0x44 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o *(.usbFuncSetup) - .usbFuncSetup 0x08000884 0x13c8 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + .usbFuncSetup 0x08000884 0x152c C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o *(.text*) - .text.nes_cpu_page_rd_poll.constprop.17 - 0x08001c4c 0xc4 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - .text.nes_ppu_page_rd_poll.constprop.15 - 0x08001d10 0xbc C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + .text.nes_cpu_page_rd_poll.constprop.19 + 0x08001db0 0xc4 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .text.nes_ppu_page_rd_poll.constprop.17 + 0x08001e74 0xbc C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.append_pairity - 0x08001dcc 0x1e C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x08001f30 0x1e C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.delay_us - 0x08001dea 0x14 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - *fill* 0x08001dfe 0x2 ff + 0x08001f4e 0x14 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + *fill* 0x08001f62 0x2 ff + .text.lfsr_32 0x08001f64 0x30 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.nes_dualport_wr - 0x08001e00 0x8c C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x08001f94 0x8c C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.nes_dualport_rd - 0x08001e8c 0x80 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x08002020 0x80 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.nes_ppu_wr - 0x08001f0c 0x90 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x080020a0 0x90 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.nes_ppu_rd - 0x08001f9c 0x84 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x08002130 0x84 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.mmc3_chrrom_flash_wr - 0x08002020 0x44 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x080021b4 0x44 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.nrom_chrrom_flash_wr - 0x08002064 0x44 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x080021f8 0x44 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.nes_cpu_wr - 0x080020a8 0xa8 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x0800223c 0xa8 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.cdream_chrrom_flash_wr - 0x08002150 0x84 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x080022e4 0x84 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.mmc4_chrrom_flash_wr - 0x080021d4 0x74 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x08002368 0x74 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.cnrom_chrrom_flash_wr - 0x08002248 0x7c C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x080023dc 0x7c C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.nes_cpu_rd - 0x080022c4 0x88 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x08002458 0x88 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .text.map30_prgrom_flash_wr + 0x080024e0 0x74 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.mmc4_prgrom_sop_flash_wr - 0x0800234c 0x54 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x08002554 0x54 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.mmc3_prgrom_flash_wr - 0x080023a0 0x50 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x080025a8 0x50 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.disc_push_exp0_prgrom_wr - 0x080023f0 0x84 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x080025f8 0x84 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.discrete_exp0_prgrom_wr - 0x08002474 0x8c C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x0800267c 0x8c C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.unrom_prgrom_flash_wr - 0x08002500 0x64 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x08002708 0x64 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.nrom_prgrom_flash_wr - 0x08002564 0x44 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x0800276c 0x44 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.pbje_scan - 0x080025a8 0xb0 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x080027b0 0xb0 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.pbje_state_change - 0x08002658 0x5c C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x08002860 0x5c C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.jtag_init_pbje - 0x080026b4 0x40 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x080028bc 0x40 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.jtag_run_pbje.part.0 - 0x080026f4 0xb8 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x080028fc 0xb8 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.io_reset - 0x080027ac 0x1b0 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x080029b4 0x1c4 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.write_page_verify - 0x0800295c 0x68 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x08002b78 0x68 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.write_page - 0x080029c4 0x34 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x08002be0 0x34 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.get_next_buff - 0x080029f8 0x54 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - .text.mmc1_wr.constprop.9 - 0x08002a4c 0x22 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - *fill* 0x08002a6e 0x2 ff + 0x08002c14 0x54 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .text.mmc1_wr.constprop.10 + 0x08002c68 0x22 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + *fill* 0x08002c8a 0x2 ff .text.mmc1_chrrom_flash_wr - 0x08002a70 0x60 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x08002c8c 0x60 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.mmc1_prgrom_flash_wr - 0x08002ad0 0x50 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x08002cec 0x50 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.swim_wotf - 0x08002b20 0xb4 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x08002d3c 0xb4 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.swim_rotf - 0x08002bd4 0xac C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x08002df0 0xac C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .text.startup.main - 0x08002c80 0xa30 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - 0x08002c80 main - .text 0x080036b0 0x154 C:\Users\paul\AppData\Local\Temp\ccays3OO.o - 0x080036b0 swim_xfr - .text 0x08003804 0xa08 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) - 0x08003ac0 _Unwind_GetCFA - 0x08003ac4 __gnu_Unwind_RaiseException - 0x08003b18 __gnu_Unwind_ForcedUnwind - 0x08003b2c __gnu_Unwind_Resume - 0x08003b74 __gnu_Unwind_Resume_or_Rethrow - 0x08003b90 _Unwind_Complete - 0x08003b94 _Unwind_DeleteException - 0x08003ba4 _Unwind_VRS_Get - 0x08003bec _Unwind_VRS_Set - 0x08003c34 __gnu_Unwind_Backtrace - 0x08003f84 __aeabi_unwind_cpp_pr0 - 0x08003f90 __aeabi_unwind_cpp_pr1 - 0x08003f9c __aeabi_unwind_cpp_pr2 - 0x08003fa8 _Unwind_VRS_Pop - .text 0x0800420c 0x144 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(libunwind.o) - 0x0800420c __restore_core_regs - 0x0800420c restore_core_regs - 0x08004238 __gnu_Unwind_Restore_VFP - 0x0800423c __gnu_Unwind_Save_VFP - 0x08004240 __gnu_Unwind_Restore_VFP_D - 0x08004244 __gnu_Unwind_Save_VFP_D - 0x08004248 __gnu_Unwind_Restore_VFP_D_16_to_31 - 0x0800424c __gnu_Unwind_Save_VFP_D_16_to_31 - 0x08004250 __gnu_Unwind_Restore_WMMXD - 0x08004254 __gnu_Unwind_Save_WMMXD - 0x08004258 __gnu_Unwind_Restore_WMMXC - 0x0800425c __gnu_Unwind_Save_WMMXC - 0x08004260 ___Unwind_RaiseException - 0x08004260 _Unwind_RaiseException - 0x08004290 _Unwind_Resume - 0x08004290 ___Unwind_Resume - 0x080042c0 _Unwind_Resume_or_Rethrow - 0x080042c0 ___Unwind_Resume_or_Rethrow - 0x080042f0 _Unwind_ForcedUnwind - 0x080042f0 ___Unwind_ForcedUnwind - 0x08004320 ___Unwind_Backtrace - 0x08004320 _Unwind_Backtrace - .text 0x08004350 0x39c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) - 0x080043a4 __gnu_unwind_execute - 0x08004694 __gnu_unwind_frame - 0x080046bc _Unwind_GetRegionStart - 0x080046c8 _Unwind_GetLanguageSpecificData - 0x080046dc _Unwind_GetDataRelBase - 0x080046e4 _Unwind_GetTextRelBase - .text.abort 0x080046ec 0x10 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-abort.o) - 0x080046ec abort - .text.memcpy 0x080046fc 0x88 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memcpy-stub.o) - 0x080046fc memcpy + 0x08002e9c 0x970 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + 0x08002e9c main + *fill* 0x0800380c 0x4 ff + .text 0x08003810 0x154 C:\Users\paul\AppData\Local\Temp\ccK626T0.o + 0x08003810 swim_xfr + .text 0x08003964 0xa08 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) + 0x08003c20 _Unwind_GetCFA + 0x08003c24 __gnu_Unwind_RaiseException + 0x08003c78 __gnu_Unwind_ForcedUnwind + 0x08003c8c __gnu_Unwind_Resume + 0x08003cd4 __gnu_Unwind_Resume_or_Rethrow + 0x08003cf0 _Unwind_Complete + 0x08003cf4 _Unwind_DeleteException + 0x08003d04 _Unwind_VRS_Get + 0x08003d4c _Unwind_VRS_Set + 0x08003d94 __gnu_Unwind_Backtrace + 0x080040e4 __aeabi_unwind_cpp_pr0 + 0x080040f0 __aeabi_unwind_cpp_pr1 + 0x080040fc __aeabi_unwind_cpp_pr2 + 0x08004108 _Unwind_VRS_Pop + .text 0x0800436c 0x144 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(libunwind.o) + 0x0800436c __restore_core_regs + 0x0800436c restore_core_regs + 0x08004398 __gnu_Unwind_Restore_VFP + 0x0800439c __gnu_Unwind_Save_VFP + 0x080043a0 __gnu_Unwind_Restore_VFP_D + 0x080043a4 __gnu_Unwind_Save_VFP_D + 0x080043a8 __gnu_Unwind_Restore_VFP_D_16_to_31 + 0x080043ac __gnu_Unwind_Save_VFP_D_16_to_31 + 0x080043b0 __gnu_Unwind_Restore_WMMXD + 0x080043b4 __gnu_Unwind_Save_WMMXD + 0x080043b8 __gnu_Unwind_Restore_WMMXC + 0x080043bc __gnu_Unwind_Save_WMMXC + 0x080043c0 ___Unwind_RaiseException + 0x080043c0 _Unwind_RaiseException + 0x080043f0 _Unwind_Resume + 0x080043f0 ___Unwind_Resume + 0x08004420 _Unwind_Resume_or_Rethrow + 0x08004420 ___Unwind_Resume_or_Rethrow + 0x08004450 _Unwind_ForcedUnwind + 0x08004450 ___Unwind_ForcedUnwind + 0x08004480 ___Unwind_Backtrace + 0x08004480 _Unwind_Backtrace + .text 0x080044b0 0x39c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) + 0x08004504 __gnu_unwind_execute + 0x080047f4 __gnu_unwind_frame + 0x0800481c _Unwind_GetRegionStart + 0x08004828 _Unwind_GetLanguageSpecificData + 0x0800483c _Unwind_GetDataRelBase + 0x08004844 _Unwind_GetTextRelBase + .text.abort 0x0800484c 0x10 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-abort.o) + 0x0800484c abort + .text.memcpy 0x0800485c 0x88 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-memcpy-stub.o) + 0x0800485c memcpy .text._raise_r - 0x08004784 0x5c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - 0x08004784 _raise_r - .text.raise 0x080047e0 0x14 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) - 0x080047e0 raise - .text._kill_r 0x080047f4 0x28 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) - 0x080047f4 _kill_r + 0x080048e4 0x5c c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) + 0x080048e4 _raise_r + .text.raise 0x08004940 0x14 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signal.o) + 0x08004940 raise + .text._kill_r 0x08004954 0x28 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) + 0x08004954 _kill_r .text._getpid_r - 0x0800481c 0x8 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) - 0x0800481c _getpid_r - .text._getpid 0x08004824 0x10 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(getpid.o) - 0x08004824 _getpid - .text._kill 0x08004834 0x10 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(kill.o) - 0x08004834 _kill - .text._exit 0x08004844 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(_exit.o) - 0x08004844 _exit + 0x0800497c 0x8 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-signalr.o) + 0x0800497c _getpid_r + .text._getpid 0x08004984 0x10 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(getpid.o) + 0x08004984 _getpid + .text._kill 0x08004994 0x10 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(kill.o) + 0x08004994 _kill + .text._exit 0x080049a4 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(_exit.o) + 0x080049a4 _exit *(.init) - .init 0x08004848 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o - 0x08004848 _init + .init 0x080049a8 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o + 0x080049a8 _init *(.fini) - .fini 0x0800484c 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o - 0x0800484c _fini + .fini 0x080049ac 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o + 0x080049ac _fini *crtbegin.o(.ctors) *crtbegin?.o(.ctors) *(EXCLUDE_FILE(*crtend.o *crtend?.o) .ctors) @@ -685,42 +690,42 @@ LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eab *(.rodata*) *(.eh_frame*) -.glue_7 0x08004850 0x0 - .glue_7 0x08004850 0x0 linker stubs +.glue_7 0x080049b0 0x0 + .glue_7 0x080049b0 0x0 linker stubs -.glue_7t 0x08004850 0x0 - .glue_7t 0x08004850 0x0 linker stubs +.glue_7t 0x080049b0 0x0 + .glue_7t 0x080049b0 0x0 linker stubs -.vfp11_veneer 0x08004850 0x0 - .vfp11_veneer 0x08004850 0x0 linker stubs +.vfp11_veneer 0x080049b0 0x0 + .vfp11_veneer 0x080049b0 0x0 linker stubs -.v4_bx 0x08004850 0x0 - .v4_bx 0x08004850 0x0 linker stubs +.v4_bx 0x080049b0 0x0 + .v4_bx 0x080049b0 0x0 linker stubs -.iplt 0x08004850 0x0 - .iplt 0x08004850 0x0 C:\Users\paul\AppData\Local\Temp\ccWIXuss.o +.iplt 0x080049b0 0x0 + .iplt 0x080049b0 0x0 C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o -.ARM.extab 0x08004850 0x30 +.ARM.extab 0x080049b0 0x30 *(.ARM.extab* .gnu.linkonce.armextab.*) - .ARM.extab 0x08004850 0x24 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) - .ARM.extab 0x08004874 0xc c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) - 0x08004880 __exidx_start = . + .ARM.extab 0x080049b0 0x24 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) + .ARM.extab 0x080049d4 0xc c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) + 0x080049e0 __exidx_start = . -.ARM.exidx 0x08004880 0xd0 +.ARM.exidx 0x080049e0 0xd0 *(.ARM.exidx* .gnu.linkonce.armexidx.*) - .ARM.exidx 0x08004880 0x8 C:\Users\paul\AppData\Local\Temp\ccays3OO.o + .ARM.exidx 0x080049e0 0x8 C:\Users\paul\AppData\Local\Temp\ccK626T0.o 0x10 (size before relaxing) - .ARM.exidx 0x08004888 0x98 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) + .ARM.exidx 0x080049e8 0x98 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(unwind-arm.o) 0xd8 (size before relaxing) - .ARM.exidx 0x08004920 0x30 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) + .ARM.exidx 0x08004a80 0x30 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m\libgcc.a(pr-support.o) 0x48 (size before relaxing) - 0x08004950 __exidx_end = . - 0x08004950 __etext = ALIGN (0x4) + 0x08004ab0 __exidx_end = . + 0x08004ab0 __etext = ALIGN (0x4) -.rel.dyn 0x08004950 0x0 - .rel.iplt 0x08004950 0x0 C:\Users\paul\AppData\Local\Temp\ccWIXuss.o +.rel.dyn 0x08004ab0 0x0 + .rel.iplt 0x08004ab0 0x0 C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o -.data 0x20000000 0x430 load address 0x08004950 +.data 0x20000000 0x430 load address 0x08004ab0 0x20000000 __data_start__ = . *(vtable) *(.data*) @@ -748,68 +753,73 @@ LOAD c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eab *(.fastrun) 0x20000430 __data_end__ = . -.igot.plt 0x20000430 0x0 load address 0x08004d80 - .igot.plt 0x20000430 0x0 C:\Users\paul\AppData\Local\Temp\ccWIXuss.o +.igot.plt 0x20000430 0x0 load address 0x08004ee0 + .igot.plt 0x20000430 0x0 C:\Users\paul\AppData\Local\Temp\ccG8tUSZ.o -.bss 0x20000430 0x2d8 load address 0x08004d80 +.bss 0x20000430 0x2e4 load address 0x08004ee0 0x20000430 . = ALIGN (0x4) 0x20000430 __bss_start__ = . *(.bss*) - .bss.addr_ptr 0x20000430 0x4 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - .bss.addrh 0x20000434 0x2 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + .bss.addr_ptr 0x20000430 0x4 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .bss.addrh 0x20000434 0x2 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .bss.bank_table - 0x20000436 0x2 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - .bss.buff0 0x20000438 0x14 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - .bss.buff1 0x2000044c 0x14 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - .bss.buff2 0x20000460 0x14 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - .bss.buff3 0x20000474 0x14 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - .bss.cur_bank 0x20000488 0x1 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x20000436 0x2 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .bss.buff0 0x20000438 0x14 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .bss.buff1 0x2000044c 0x14 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .bss.buff2 0x20000460 0x14 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .bss.buff3 0x20000474 0x14 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .bss.cur_bank 0x20000488 0x1 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o *fill* 0x20000489 0x3 - .bss.cur_buff 0x2000048c 0x4 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + .bss.cur_buff 0x2000048c 0x4 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .bss.cur_usb_load_buff - 0x20000490 0x4 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - .bss.exp_byte 0x20000494 0x1 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x20000490 0x4 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .bss.exp_byte 0x20000494 0x1 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .bss.incoming_bytes_remain - 0x20000495 0x1 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - .bss.num_buff.5060 - 0x20000496 0x1 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - *fill* 0x20000497 0x1 + 0x20000495 0x1 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + *fill* 0x20000496 0x2 + .bss.lfsr 0x20000498 0x4 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .bss.num_buff.5080 + 0x2000049c 0x1 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + *fill* 0x2000049d 0x3 .bss.oper_info_struct - 0x20000498 0x20 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x200004a0 0x20 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .bss.pbje_command - 0x200004b8 0x1 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x200004c0 0x1 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .bss.pbje_data - 0x200004b9 0x20 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x200004c1 0x20 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .bss.pbje_numclk - 0x200004d9 0x1 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x200004e1 0x1 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .bss.pbje_status - 0x200004da 0x1 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x200004e2 0x1 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .bss.raw_bank_status - 0x200004db 0x10 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - *fill* 0x200004eb 0x1 + 0x200004e3 0x10 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + *fill* 0x200004f3 0x1 .bss.raw_buffer16 - 0x200004ec 0x200 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x200004f4 0x200 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .bss.rv16.4747 - 0x200006ec 0x8 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - .bss.rv16.4980 - 0x200006f4 0x8 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x200006f4 0x8 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .bss.rv16.5000 + 0x200006fc 0x8 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .bss.stm_debug_disable + 0x20000704 0x1 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + *fill* 0x20000705 0x3 .bss.swim_base - 0x200006fc 0x4 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - .bss.swim_pin 0x20000700 0x1 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x20000708 0x4 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .bss.swim_pin 0x2000070c 0x1 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o *(COMMON) - *fill* 0x20000701 0x3 - COMMON 0x20000704 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-reent.o) - 0x20000704 errno - 0x20000708 . = ALIGN (0x4) - 0x20000708 __bss_end__ = . + *fill* 0x2000070d 0x3 + COMMON 0x20000710 0x4 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libg.a(lib_a-reent.o) + 0x20000710 errno + 0x20000714 . = ALIGN (0x4) + 0x20000714 __bss_end__ = . -.heap 0x20000708 0x0 - 0x20000708 __end__ = . - 0x20000708 PROVIDE (end = .) +.heap 0x20000714 0x0 + 0x20000714 __end__ = . + 0x20000714 PROVIDE (end = .) *(.heap*) - 0x20000708 __HeapLimit = . + 0x20000714 __HeapLimit = . -.stack_dummy 0x20000708 0x0 +.stack_dummy 0x20000714 0x0 *(.stack*) 0x20001800 __StackTop = (ORIGIN (RAM) + LENGTH (RAM)) 0x20001800 __StackLimit = (__StackTop - SIZEOF (.stack_dummy)) @@ -822,45 +832,45 @@ OUTPUT(build_stm/inlretro_stm.elf elf32-littlearm) .ARM.attributes 0x00000000 0x1e c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v6-m/crti.o .ARM.attributes - 0x0000001e 0x2f C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x0000001e 0x2f C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .ARM.attributes - 0x0000004d 0x21 C:\Users\paul\AppData\Local\Temp\ccays3OO.o + 0x0000004d 0x21 C:\Users\paul\AppData\Local\Temp\ccK626T0.o .comment 0x00000000 0x7f - .comment 0x00000000 0x7f C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + .comment 0x00000000 0x7f C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o 0x80 (size before relaxing) -.debug_info 0x00000000 0x42d3 - .debug_info 0x00000000 0x42ad C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - .debug_info 0x000042ad 0x26 C:\Users\paul\AppData\Local\Temp\ccays3OO.o +.debug_info 0x00000000 0x44f6 + .debug_info 0x00000000 0x44d0 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .debug_info 0x000044d0 0x26 C:\Users\paul\AppData\Local\Temp\ccK626T0.o -.debug_abbrev 0x00000000 0x670 - .debug_abbrev 0x00000000 0x65c C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - .debug_abbrev 0x0000065c 0x14 C:\Users\paul\AppData\Local\Temp\ccays3OO.o +.debug_abbrev 0x00000000 0x693 + .debug_abbrev 0x00000000 0x67f C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .debug_abbrev 0x0000067f 0x14 C:\Users\paul\AppData\Local\Temp\ccK626T0.o -.debug_loc 0x00000000 0x445f - .debug_loc 0x00000000 0x445f C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o +.debug_loc 0x00000000 0x4377 + .debug_loc 0x00000000 0x4377 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o -.debug_aranges 0x00000000 0x198 +.debug_aranges 0x00000000 0x1a8 .debug_aranges - 0x00000000 0x178 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o + 0x00000000 0x188 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .debug_aranges - 0x00000178 0x20 C:\Users\paul\AppData\Local\Temp\ccays3OO.o + 0x00000188 0x20 C:\Users\paul\AppData\Local\Temp\ccK626T0.o -.debug_ranges 0x00000000 0xab0 - .debug_ranges 0x00000000 0xab0 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o +.debug_ranges 0x00000000 0xad0 + .debug_ranges 0x00000000 0xad0 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o -.debug_line 0x00000000 0x14eb - .debug_line 0x00000000 0x13f8 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - .debug_line 0x000013f8 0xf3 C:\Users\paul\AppData\Local\Temp\ccays3OO.o +.debug_line 0x00000000 0x155c + .debug_line 0x00000000 0x1469 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + .debug_line 0x00001469 0xf3 C:\Users\paul\AppData\Local\Temp\ccK626T0.o -.debug_str 0x00000000 0xfc0 - .debug_str 0x00000000 0xf47 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o - 0x104a (size before relaxing) - .debug_str 0x00000f47 0x79 C:\Users\paul\AppData\Local\Temp\ccays3OO.o +.debug_str 0x00000000 0x1008 + .debug_str 0x00000000 0xf8f C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o + 0x10a2 (size before relaxing) + .debug_str 0x00000f8f 0x79 C:\Users\paul\AppData\Local\Temp\ccK626T0.o -.debug_frame 0x00000000 0x4d8 - .debug_frame 0x00000000 0x4d8 C:\Users\paul\AppData\Local\Temp\ccMR9izX.ltrans0.ltrans.o +.debug_frame 0x00000000 0x510 + .debug_frame 0x00000000 0x510 C:\Users\paul\AppData\Local\Temp\ccazLwyO.ltrans0.ltrans.o .stabstr 0x00000000 0x76 .stabstr 0x00000000 0x76 c:/arm/gcc-arm-none-eabi-7-2018-q2-update-win32/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v6-m\libnosys.a(getpid.o) diff --git a/firmware/build_stmn/inlretro_stm_AV00.bin b/firmware/build_stmn/inlretro_stm_AV00.bin new file mode 100644 index 0000000..fc9f811 Binary files /dev/null and b/firmware/build_stmn/inlretro_stm_AV00.bin differ diff --git a/firmware/build_stmn/inlretro_stm_AV01.bin b/firmware/build_stmn/inlretro_stm_AV01.bin new file mode 100644 index 0000000..a25239c Binary files /dev/null and b/firmware/build_stmn/inlretro_stm_AV01.bin differ diff --git a/firmware/source/flash.c b/firmware/source/flash.c index 45dc3bc..fe17174 100644 --- a/firmware/source/flash.c +++ b/firmware/source/flash.c @@ -4,7 +4,7 @@ uint8_t write_page( uint8_t addrH, buffer *buff, write_funcptr wr_func ) { uint16_t cur = buff->cur_byte; uint8_t n = buff->cur_byte; - uint8_t read; +// uint8_t read; while ( cur <= buff->last_idx ) { @@ -20,6 +20,42 @@ uint8_t write_page( uint8_t addrH, buffer *buff, write_funcptr wr_func ) return SUCCESS; } +uint8_t write_page_verify( uint8_t addrH, buffer *buff, write_rv_funcptr wr_func ) +{ + uint16_t cur = buff->cur_byte; + uint8_t n = buff->cur_byte; + uint8_t read; + + while ( cur <= buff->last_idx ) { + + //only works for NROM right now.. + read = wr_func( ((addrH<<8)| n), buff->data[n] ); + //write function returns read back data post flash attempt + + //TODO create flag/static variable to determine what behavior to have + //if write fails + if ( read != buff->data[n] ) { + LED_OP(); + LED_HI(); + } + else { //next byte + LED_IP_PU(); + //LED_LO(); + //if there's a WDT the device should reset if get stuck here + n++; + cur++; + } + //put this increment only in pass case if want to retry + //n++; + //cur++; + } + buff->cur_byte = n; + + //TODO error check/report + return SUCCESS; +} + + //only used by cninja currently.. uint8_t write_page_cninja( uint8_t bank, uint8_t addrH, uint16_t unlock1, uint16_t unlock2, buffer *buff, write_funcptr wr_func, read_funcptr rd_func ) { @@ -72,47 +108,6 @@ uint8_t write_page_mm2( uint8_t bank, uint8_t addrH, uint16_t unlock1, uint16_t return SUCCESS; } -uint8_t write_page_bank_map30( uint8_t bank, uint8_t addrH, uint16_t unlock1, uint16_t unlock2, buffer *buff, write_funcptr wr_func, read_funcptr rd_func ) -{ - uint16_t cur = buff->cur_byte; - uint8_t n = buff->cur_byte; - uint8_t read; - while ( cur <= buff->last_idx ) { - - //select first bank for unlock sequence - //wr_func( 0x5555, 0xAA ); - nes_cpu_wr( 0xC000, 0x01 ); - wr_func( unlock1, 0xAA ); - //wr_func( 0x2AAA, 0x55 ); - nes_cpu_wr( 0xC000, 0x00 ); - wr_func( unlock2, 0x55 ); - //wr_func( 0x5555, 0xA0 ); - nes_cpu_wr( 0xC000, 0x01 ); - wr_func( unlock1, 0xA0 ); - - //now need to select bank for the actual write! - nes_cpu_wr( 0xC000, bank ); - wr_func( ((addrH<<8)| n), buff->data[n] ); - do { - usbPoll(); - read = rd_func((addrH<<8)|n); - - } while( read != rd_func((addrH<<8)|n) ); - if (read == buff->data[n]) { - n++; - cur++; - LED_IP_PU(); - LED_LO(); - } else { - LED_OP(); - LED_HI(); - } - - } - buff->cur_byte = n; - return SUCCESS; -} - uint8_t write_page_a53( uint8_t bank, uint8_t addrH, buffer *buff, write_funcptr wr_func, read_funcptr rd_func ) { @@ -396,7 +391,7 @@ uint8_t flash_buff( buffer *buff ) { if (buff->mapper == NROM) { //used by other 32KB PRG bank discrete mappers like BNROM, CNROM, & color dreams - write_page( (0x80+addrH), buff, nrom_prgrom_flash_wr); + write_page_verify( (0x80+addrH), buff, nrom_prgrom_flash_wr); } if (buff->mapper == MMC1) { write_page( (0x80+addrH), buff, mmc1_prgrom_flash_wr); @@ -405,7 +400,7 @@ uint8_t flash_buff( buffer *buff ) { write_page( (0x80+addrH), buff, unrom_prgrom_flash_wr); } if (buff->mapper == MMC3) { - write_page( (0x80+addrH), buff, mmc3_prgrom_flash_wr); + write_page_verify( (0x80+addrH), buff, mmc3_prgrom_flash_wr); } if (buff->mapper == MMC4) { write_page( (0x80+addrH), buff, mmc4_prgrom_sop_flash_wr); @@ -421,14 +416,7 @@ uint8_t flash_buff( buffer *buff ) { write_page_mm2( bank, addrH, 0x5555, 0x2AAA, buff, disc_push_exp0_prgrom_wr, nes_cpu_rd ); } if (buff->mapper == MAP30) { - //addrH &= 0b1011 1111 A14 must always be low - addrH &= 0x3F; - addrH |= 0x80; - //write bank value - //page_num shift by 6 bits A14 >> A8(0) - bank = buff->page_num >> 6; - //bank gets written inside flash algo - write_page_bank_map30( bank, addrH, 0x9555, 0xAAAA, buff, nes_cpu_wr, nes_cpu_rd ); + write_page_verify( (0x80+addrH), buff, map30_prgrom_flash_wr); } if (buff->mapper == CNINJA) { //addrH &= 0b1001 1111 A14-13 must always be low diff --git a/firmware/source/io.c b/firmware/source/io.c index b386cf4..8656e81 100644 --- a/firmware/source/io.c +++ b/firmware/source/io.c @@ -1,5 +1,9 @@ #include "io.h" +#ifdef STM_CORE +uint8_t stm_debug_disable = 0; +#endif + //================================================================================================= // // I/O operations @@ -26,7 +30,12 @@ uint8_t io_call( uint8_t opcode, uint8_t miscdata, uint16_t operand, uint8_t *rd #define BYTE_LEN 1 #define HWORD_LEN 2 switch (opcode) { - case IO_RESET: io_reset(); break; + case IO_RESET: + #ifdef STM_CORE + //operand sets whether to disable SWCLK/SWDIO on subequent io_reset calls + stm_debug_disable = operand; + #endif + io_reset(); break; #ifdef NES_CONN case NES_INIT: nes_init(); break; #endif @@ -82,6 +91,15 @@ void io_reset() //enable the GPIO blocks before can access them CTL_ENABLE(); +#ifdef STM_CORE + if (stm_debug_disable == DISABLE_STM_DEBUG){ + //make the SWC/SWD pins like other GPIO + GPIOA->MODER = 0; + GPIOA->OSPEEDR = 0; + GPIOA->PUPDR = 0; + } +#endif + #ifndef C16nodef //First set gameboy/GBA power, default to 3v (safe for both) //pull up the GB power control pin diff --git a/firmware/source/main.c b/firmware/source/main.c index 276dc63..df2521b 100644 --- a/firmware/source/main.c +++ b/firmware/source/main.c @@ -84,7 +84,6 @@ int main(void) // 5. Wait for the registers to be updated (IWDG_SR = 0x00000000). while( IWDG->SR ) { /* forever */ } // 6. Refresh the counter value with IWDG_RLR (IWDG_KR = 0x0000 AAAA) -#define wdt_reset() IWDG->KR = 0x0000AAAA wdt_reset(); //call this function atleast once a second to keep the device from resetting diff --git a/firmware/source/nes.c b/firmware/source/nes.c index 0dea6c7..3f56ba2 100644 --- a/firmware/source/nes.c +++ b/firmware/source/nes.c @@ -101,6 +101,9 @@ uint8_t nes_call( uint8_t opcode, uint8_t miscdata, uint16_t operand, uint8_t *r case CDREAM_CHR_FLASH_WR: cdream_chrrom_flash_wr( operand, miscdata ); break; + case MAP30_PRG_FLASH_WR: + map30_prgrom_flash_wr( operand, miscdata ); + break; //8bit return values: @@ -133,6 +136,9 @@ uint8_t nes_call( uint8_t opcode, uint8_t miscdata, uint16_t operand, uint8_t *r rdata[RD0] = bank_table; rdata[RD1] = bank_table>>8; break; + case PPU_PAGE_WR_LFSR: + ppu_page_wr_lfsr( operand, miscdata ); + break; default: //macro doesn't exist return ERR_UNKN_NES_OPCODE; @@ -828,6 +834,57 @@ uint8_t nes_ppu_page_rd_poll( uint8_t *data, uint8_t addrH, uint8_t first, uint8 return i; } +/* Desc:NES PPU Page Write Random from LFSR + * decode A13 from addrH to set /A13 as expected + * NOTE: this is a /WE controlled write + * Pre: nes_init() setup of io pins + * Post:address left on bus + * data bus left clear + * Rtn: Index of last byte read + */ +void ppu_page_wr_lfsr( uint16_t addr, uint8_t data ) +//TODO give other data sources +{ + + uint16_t i; + + //addr with PPU /A13 + if (addr < 0x2000) { //below $2000 A13 clear, /A13 set + addr |= PPU_A13N_WORD; + } //above PPU $1FFF, A13 set, /A13 clear + + //get the first byte of data + data = lfsr_32(); + + for (i=0; i<256; i++) { + + ADDR_SET( addr ); //returns data bus to input on AHL devices.. + + DATA_OP(); + + //put data on bus + DATA_SET(data); + + NOP(); + + //set CHR /RD and /WR + CSWR_LO(); + + //do some things that take time + data = lfsr_32(); + addr++; + + //latch data to memory + CSWR_HI(); + + } + + + //clear data bus + DATA_IP(); + +} + /* Desc:NES DUAL PORT PPU Page Read with optional USB polling * /A13 ignored @@ -926,7 +983,7 @@ void mmc1_wr( uint16_t addr, uint8_t data, uint8_t reset ) * Post:Byte written and ready for another write * Rtn: None */ -void nrom_prgrom_flash_wr( uint16_t addr, uint8_t data ) +uint8_t nrom_prgrom_flash_wr( uint16_t addr, uint8_t data ) { uint8_t rv; @@ -941,9 +998,11 @@ void nrom_prgrom_flash_wr( uint16_t addr, uint8_t data ) rv = nes_cpu_rd(addr); usbPoll(); //orignal kazzo needs this frequently to slurp up incoming data } while (rv != nes_cpu_rd(addr)); - //TODO handle timeout - return; + //return the post-written value + //may not be the desired value if there was a problem + //or if the byte wasn't erased enough.. + return rv; } @@ -1121,7 +1180,7 @@ void cnrom_chrrom_flash_wr( uint16_t addr, uint8_t data ) * Post:Byte written and ready for another write * Rtn: None */ -void mmc3_prgrom_flash_wr( uint16_t addr, uint8_t data ) +uint8_t mmc3_prgrom_flash_wr( uint16_t addr, uint8_t data ) { uint8_t rv; @@ -1139,9 +1198,8 @@ void mmc3_prgrom_flash_wr( uint16_t addr, uint8_t data ) rv = nes_cpu_rd(addr); usbPoll(); //orignal kazzo needs this frequently to slurp up incoming data } while (rv != nes_cpu_rd(addr)); - //TODO handle timeout - return; + return rv; } @@ -1301,4 +1359,34 @@ void cdream_chrrom_flash_wr( uint16_t addr, uint8_t data ) } +/* Desc:NES MAPPER30 PRG-ROM FLASH Write + * Pre: nes_init() setup of io pins + * cur_bank global var must be set to desired mapper register value + * bank_table global var must be set to base address of the bank table + * Post:Byte written and ready for another write + * Rtn: None + */ +uint8_t map30_prgrom_flash_wr( uint16_t addr, uint8_t data ) +{ + + uint8_t rv; + + //unlock the flash + nes_cpu_wr(0xC000, 0x01); nes_cpu_wr(0x9555, 0xAA); + nes_cpu_wr(0xC000, 0x00); nes_cpu_wr(0xAAAA, 0x55); + nes_cpu_wr(0xC000, 0x01); nes_cpu_wr(0x9555, 0xA0); + + //select desired bank and write data + nes_cpu_wr(0xC000, cur_bank); + nes_cpu_wr(addr, data); + + do { + rv = nes_cpu_rd(addr); + usbPoll(); //orignal kazzo needs this frequently to slurp up incoming data + } while (rv != nes_cpu_rd(addr)); + + return rv; +} + + #endif //NES_CONN diff --git a/firmware/source/nes.h b/firmware/source/nes.h index 1324db4..dde0fc9 100644 --- a/firmware/source/nes.h +++ b/firmware/source/nes.h @@ -5,6 +5,7 @@ #include "buffer.h" //TODO remove this junk when get rid of FALSE #include "shared_dictionaries.h" #include "shared_errors.h" +#include "stuff.h" uint8_t nes_call( uint8_t opcode, uint8_t miscdata, uint16_t operand, uint8_t *rdata ); @@ -26,17 +27,19 @@ uint8_t nes_dualport_page_rd_poll( uint8_t *data, uint8_t addrH, uint8_t first, void mmc1_wr( uint16_t addr, uint8_t data, uint8_t reset ); -void nrom_prgrom_flash_wr( uint16_t addr, uint8_t data ); +uint8_t nrom_prgrom_flash_wr( uint16_t addr, uint8_t data ); void nrom_chrrom_flash_wr( uint16_t addr, uint8_t data ); void mmc1_prgrom_flash_wr( uint16_t addr, uint8_t data ); void mmc1_chrrom_flash_wr( uint16_t addr, uint8_t data ); void unrom_prgrom_flash_wr( uint16_t addr, uint8_t data ); void cnrom_chrrom_flash_wr( uint16_t addr, uint8_t data ); -void mmc3_prgrom_flash_wr( uint16_t addr, uint8_t data ); +uint8_t mmc3_prgrom_flash_wr( uint16_t addr, uint8_t data ); void mmc3_chrrom_flash_wr( uint16_t addr, uint8_t data ); void mmc4_prgrom_sop_flash_wr( uint16_t addr, uint8_t data ); void mmc4_chrrom_flash_wr( uint16_t addr, uint8_t data ); void cdream_chrrom_flash_wr( uint16_t addr, uint8_t data ); +uint8_t map30_prgrom_flash_wr( uint16_t addr, uint8_t data ); +void ppu_page_wr_lfsr( uint16_t addr, uint8_t data ); diff --git a/firmware/source/pinport_al.h b/firmware/source/pinport_al.h index fbfa047..9743f8a 100644 --- a/firmware/source/pinport_al.h +++ b/firmware/source/pinport_al.h @@ -35,6 +35,7 @@ //STM32 GPIO ports are effectively 16bits wide //Use this type when need an int to hold pin mask #define GPIO_PinMask uint16_t + #define wdt_reset() IWDG->KR = 0x0000AAAA #endif //This file contains pinout translations from AVR names to "kazzo" names @@ -1491,10 +1492,10 @@ void software_AXL_CLK(); #ifdef STM_NES //TODO BLINDLY COPIED FROM STM6, will not work AS-IS - // PE0 "A0" mcupinC0 + // PE0 "A0" mcupinB2 // TODO!!! - #define E0bank GPIOC - #define E0 (0U) + #define E0bank GPIOB + #define E0 (2U) // PE1 "D0" mcupinB2 #define E1bank GPIOB @@ -1598,21 +1599,21 @@ void software_AXL_CLK(); #endif //STM_CORE -#ifdef STM_NES //TODO -#define EXT_IP_PU(bank, pin) //bank->MODER &= ~(MODER_OP<<(pin*2)); bank->PUPDR |= (PUPDR_PU<<(pin*2)) -#define EXT_IP_FL(bank, pin) //bank->MODER &= ~(MODER_OP<<(pin*2)); bank->PUPDR &= ~(PUPDR_PU<<(pin*2)) -#define EXT_OP(bank, pin) //bank->MODER |= (MODER_OP<<(pin*2)) -#define EXT_OD(bank, pin) //bank->OTYPER |= (OTYPER_OD<<(pin)) //open drain has no effect when pin is input -#define EXT_PP(bank, pin) //bank->OTYPER &= ~(OTYPER_OD<<(pin)) -#define EXT_SET_LO(bank, pin) //bank->BRR = 1<BSRR = 1<IDR & (1<MODER &= ~(MODER_OP<<(pin*2)); bank->PUPDR |= (PUPDR_PU<<(pin*2)) +#define EXT_IP_FL(bank, pin) bank->MODER &= ~(MODER_OP<<(pin*2)); bank->PUPDR &= ~(PUPDR_PU<<(pin*2)) +#define EXT_OP(bank, pin) bank->MODER |= (MODER_OP<<(pin*2)) +#define EXT_OD(bank, pin) bank->OTYPER |= (OTYPER_OD<<(pin)) //open drain has no effect when pin is input +#define EXT_PP(bank, pin) bank->OTYPER &= ~(OTYPER_OD<<(pin)) +#define EXT_SET_LO(bank, pin) bank->BRR = 1<BSRR = 1<IDR & (1<>1; + //xor bits 0 & 1 + lsb = lsb ^ temp; + + //get bit21 + temp = lfsr>>21; + //xor bits 0, 1, 21 + lsb = lsb ^ temp; + + //get bit31 + temp = lfsr>>31; + //xor bits 0, 1, 21, 31 + lsb = lsb ^ temp; + + //shift the register and OR in the lsbit + lfsr = lfsr<<1 | (lsb&0x01); + } + + //8bit return value + return lfsr; + +} diff --git a/firmware/source/stuff.h b/firmware/source/stuff.h new file mode 100644 index 0000000..45b7568 --- /dev/null +++ b/firmware/source/stuff.h @@ -0,0 +1,12 @@ +#ifndef _stuff_h +#define _stuff_h + +#include "pinport.h" +#include "shared_dictionaries.h" +#include "shared_errors.h" + +uint8_t stuff_call( uint8_t opcode, uint8_t miscdata, uint16_t operand, uint8_t *rdata ); +void set_lfsr(uint32_t seed); +uint8_t lfsr_32(); + +#endif diff --git a/firmware/source/types.h b/firmware/source/types.h index 9f705c4..c20ff0f 100644 --- a/firmware/source/types.h +++ b/firmware/source/types.h @@ -15,6 +15,7 @@ typedef struct setup_packet{ //typedef void (*write_funcptr) ( uint8_t addrH, uint8_t addrL, uint8_t data ); //typedef uint8_t (*read_funcptr) ( uint8_t addrH, uint8_t addrL ); typedef void (*write_funcptr) ( uint16_t addr, uint8_t data ); +typedef uint8_t (*write_rv_funcptr) ( uint16_t addr, uint8_t data ); typedef uint8_t (*read_funcptr) ( uint16_t addr ); typedef void (*write_snes_funcptr) ( uint16_t addr, uint8_t data, uint8_t romsel ); typedef uint8_t (*read_snes_funcptr) ( uint16_t addr, uint8_t romsel ); diff --git a/firmware/source/usb.c b/firmware/source/usb.c index 9baca81..0ca3418 100644 --- a/firmware/source/usb.c +++ b/firmware/source/usb.c @@ -165,6 +165,9 @@ USBSETUP uint16_t usbFunctionSetup(uint8_t data[8]) { case DICT_CICCOM: rv[RETURN_ERR_IDX] = ciccom_call( spacket->opcode, spacket->miscdata, spacket->operand, &rv[RETURN_LEN_IDX] ); break; + case DICT_STUFF: + rv[RETURN_ERR_IDX] = stuff_call( spacket->opcode, spacket->miscdata, spacket->operand, &rv[RETURN_LEN_IDX] ); + break; case DICT_BUFFER: diff --git a/firmware/source/usb.h b/firmware/source/usb.h index 91ca61b..7cbd268 100644 --- a/firmware/source/usb.h +++ b/firmware/source/usb.h @@ -24,6 +24,7 @@ #include "swim.h" #include "bootload.h" #include "ciccom.h" +#include "stuff.h" #include "types.h" #include "shared_errors.h" #include "shared_dictionaries.h" diff --git a/host/scripts/app/ciccom.lua b/host/scripts/app/ciccom.lua index 2d8491e..fdb789a 100644 --- a/host/scripts/app/ciccom.lua +++ b/host/scripts/app/ciccom.lua @@ -4,18 +4,26 @@ local ciccom = {} -- import required modules local dict = require "scripts.app.dict" +local time = require "scripts.app.time" -- file constants +--local resetpin = "AFL" --v2.0 +--local datapin = "GBP" --v2.0 +local resetpin = "SWC" --v2.0N +local datapin = "FREE" --v2.0N -- local functions local function start( debug ) - --CIC reset & clock needs to be low to start - dict.pinport( "CTL_OP", "AFL") - dict.pinport( "CTL_SET_LO", "AFL") --CIC RESET LOW + --need to disable alternate function on SWCLK for STM_NES + dict.io( "IO_RESET", "DISABLE_STM_DEBUG") - dict.pinport( "CTL_OP", "GBP") - dict.pinport( "CTL_SET_LO", "GBP") --INL CIC DATA LOW + --CIC reset & clock needs to be low to start + dict.pinport( "CTL_OP", resetpin) + dict.pinport( "CTL_SET_LO", resetpin) --CIC RESET LOW + + dict.pinport( "CTL_OP", datapin) + dict.pinport( "CTL_SET_LO", datapin) --INL CIC DATA LOW --[[ @@ -29,7 +37,7 @@ local function start( debug ) --now the CIC should be restarting --takes ~0.5msec for it to get through boot sequence - jtag.sleep(0.01) --10msec to be overly safe + time.sleep(0.01) --10msec to be overly safe --after that time it's waiting for a CIC reset pulse to wake it --]] @@ -52,7 +60,7 @@ local function start( debug ) dict.pinport( "ADDR_SET", 0) --CIC CLK - dict.pinport( "CTL_SET_HI", "AFL") + dict.pinport( "CTL_SET_HI", resetpin) --CIC is now waiting for data to be clocked in using CIC CLK & KEY_DATA_OUT @@ -67,40 +75,40 @@ local function set_opcode(opcode) --MSbit is latched first if opcode == "M" then - dict.pinport( "CTL_SET_LO", "GBP") + dict.pinport( "CTL_SET_LO", datapin) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) - dict.pinport( "CTL_SET_HI", "GBP") + dict.pinport( "CTL_SET_HI", datapin) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) - dict.pinport( "CTL_SET_LO", "GBP") + dict.pinport( "CTL_SET_LO", datapin) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) - dict.pinport( "CTL_SET_HI", "GBP") + dict.pinport( "CTL_SET_HI", datapin) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) - dict.pinport( "CTL_SET_LO", "GBP") + dict.pinport( "CTL_SET_LO", datapin) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) - dict.pinport( "CTL_SET_HI", "GBP") + dict.pinport( "CTL_SET_HI", datapin) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) end --now that "M" is written to CIC, end OPCODE write sequence by taking CIC RESET LO - dict.pinport( "CTL_SET_LO", "AFL") + dict.pinport( "CTL_SET_LO", resetpin) end @@ -112,26 +120,26 @@ local function write(data) if data == "H" then --HORIZONTAL - dict.pinport( "CTL_SET_LO", "GBP") + dict.pinport( "CTL_SET_LO", datapin) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) - dict.pinport( "CTL_SET_HI", "GBP") + dict.pinport( "CTL_SET_HI", datapin) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) - dict.pinport( "CTL_SET_LO", "GBP") + dict.pinport( "CTL_SET_LO", datapin) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) - dict.pinport( "CTL_SET_HI", "GBP") + dict.pinport( "CTL_SET_HI", datapin) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) - dict.pinport( "CTL_SET_LO", "GBP") + dict.pinport( "CTL_SET_LO", datapin) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) @@ -144,34 +152,34 @@ local function write(data) elseif data == "V" then --VERTICAL - dict.pinport( "CTL_SET_LO", "GBP") + dict.pinport( "CTL_SET_LO", datapin) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) - dict.pinport( "CTL_SET_HI", "GBP") + dict.pinport( "CTL_SET_HI", datapin) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) - dict.pinport( "CTL_SET_LO", "GBP") + dict.pinport( "CTL_SET_LO", datapin) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) - dict.pinport( "CTL_SET_HI", "GBP") + dict.pinport( "CTL_SET_HI", datapin) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) - dict.pinport( "CTL_SET_LO", "GBP") + dict.pinport( "CTL_SET_LO", datapin) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) - dict.pinport( "CTL_SET_HI", "GBP") + dict.pinport( "CTL_SET_HI", datapin) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) - dict.pinport( "CTL_SET_LO", "GBP") + dict.pinport( "CTL_SET_LO", datapin) dict.pinport( "ADDR_SET", 1) dict.pinport( "ADDR_SET", 0) end @@ -179,12 +187,6 @@ local function write(data) end -local clock = os.clock -local function sleep(n) -- seconds - local t0 = clock() - while clock() - t0 <= n do end -end - -- global variables so other modules can use them @@ -197,7 +199,6 @@ ciccom.set_opcode = set_opcode ciccom.write = write ciccom.wotf = wotf ciccom.rotf = rotf -ciccom.sleep = sleep -- return the module's table return ciccom diff --git a/host/scripts/app/dict.lua b/host/scripts/app/dict.lua index a829936..43fc8a5 100644 --- a/host/scripts/app/dict.lua +++ b/host/scripts/app/dict.lua @@ -162,18 +162,12 @@ RETURN_DATA = 3 -- external call for pinport dictionary local function pinport( opcode, operand, misc, data ) - if not op_pinport[opcode] then - print("ERROR undefined opcode:", opcode, "must be defined in shared_dict_pinport.h") - return nil - end + assert ( op_pinport[opcode] , "\nERROR undefined opcode: " .. opcode .. " must be defined in shared_dict_pinport.h") if not operand then operand = 0 elseif type(operand) == "string" then - if not op_pinport[operand] then - print("ERROR undefined operand:", operand, "must be defined in shared_dict_pinport.h") - return nil - end + assert ( op_pinport[operand] ,"\nERROR undefined operand: " .. operand .. " must be defined in shared_dict_pinport.h") --decode string operands into operand = op_pinport[operand] end @@ -194,7 +188,7 @@ local function pinport( opcode, operand, misc, data ) end --print("error:", error_code, "data_len:", data_len) - assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " device error code: " .. error_code) + assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " operand: " .. operand .. " misc: " .. misc .. " device error code: " .. error_code) if data_len and data_len ~= (wLength - RETURN_LEN_IDX) then print("WARNING!! Device's return data length:", data_len, "did not match expected:", wLength-RETURN_LEN_IDX) @@ -213,18 +207,12 @@ end -- external call for io dictionary local function io( opcode, operand, misc, data ) - if not op_io[opcode] then - print("ERROR undefined opcode:", opcode, "must be defined in shared_dict_io.h") - return nil - end + assert ( op_io[opcode] , "\nERROR undefined opcode: " .. opcode .. " must be defined in shared_dict_io.h") if not operand then operand = 0 elseif type(operand) == "string" then - if not op_io[operand] then - print("ERROR undefined operand:", operand, "must be defined in shared_dict_io.h") - return nil - end + assert ( op_io[operand] ,"\nERROR undefined operand: " .. operand .. " must be defined in shared_dict_io.h") --decode string operands into operand = op_io[operand] end @@ -244,7 +232,7 @@ local function io( opcode, operand, misc, data ) data_len = data:byte(RETURN_LEN_IDX) end - assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " device error code: " .. error_code) + assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " operand: " .. operand .. " misc: " .. misc .. " device error code: " .. error_code) if data_len and data_len ~= (wLength - RETURN_LEN_IDX) then print("WARNING!! Device's return data length:", data_len, "did not match expected:", wLength-RETURN_LEN_IDX) @@ -263,18 +251,12 @@ end -- external call for nes dictionary local function nes( opcode, operand, misc, data ) - if not op_nes[opcode] then - print("ERROR undefined opcode:", opcode, "must be defined in shared_dict_nes.h") - return nil - end + assert ( op_nes[opcode] , "\nERROR undefined opcode: " .. opcode .. " must be defined in shared_dict_nes.h") if not operand then operand = 0 elseif type(operand) == "string" then - if not op_nes[operand] then - print("ERROR undefined operand:", operand, "must be defined in shared_dict_nes.h") - return nil - end + assert ( op_nes[operand] ,"\nERROR undefined operand: " .. operand .. " must be defined in shared_dict_game.h") --decode string operands into operand = op_nes[operand] end @@ -295,7 +277,7 @@ local function nes( opcode, operand, misc, data ) end --print("error:", error_code, "data_len:", data_len) - assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " device error code: " .. error_code) + assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " operand: " .. operand .. " misc: " .. misc .. " device error code: " .. error_code) if data_len and data_len ~= (wLength - RETURN_LEN_IDX) then print("WARNING!! Device's return data length:", data_len, "did not match expected:", wLength-RETURN_LEN_IDX) @@ -315,18 +297,12 @@ end -- external call for snes dictionary local function snes( opcode, operand, misc, data ) - if not op_snes[opcode] then - print("ERROR undefined opcode:", opcode, "must be defined in shared_dict_snes.h") - return nil - end + assert ( op_snes[opcode] , "\nERROR undefined opcode: " .. opcode .. " must be defined in shared_dict_snes.h") if not operand then operand = 0 elseif type(operand) == "string" then - if not op_snes[operand] then - print("ERROR undefined operand:", operand, "must be defined in shared_dict_snes.h") - return nil - end + assert ( op_snes[operand] ,"\nERROR undefined operand: " .. operand .. " must be defined in shared_dict_snes.h") --decode string operands into operand = op_snes[operand] end @@ -347,7 +323,7 @@ local function snes( opcode, operand, misc, data ) end --print("error:", error_code, "data_len:", data_len) - assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " device error code: " .. error_code) + assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " operand: " .. operand .. " misc: " .. misc .. " device error code: " .. error_code) if data_len and data_len ~= (wLength - RETURN_LEN_IDX) then print("WARNING!! Device's return data length:", data_len, "did not match expected:", wLength-RETURN_LEN_IDX) @@ -366,18 +342,12 @@ end -- external call for gameboy dictionary local function gameboy( opcode, operand, misc, data ) - if not op_gameboy[opcode] then - print("ERROR undefined opcode:", opcode, "must be defined in shared_dict_gameboy.h") - return nil - end + assert ( op_gameboy[opcode] , "\nERROR undefined opcode: " .. opcode .. " must be defined in shared_dict_gameboy.h") if not operand then operand = 0 elseif type(operand) == "string" then - if not op_gameboy[operand] then - print("ERROR undefined operand:", operand, "must be defined in shared_dict_gameboy.h") - return nil - end + assert ( op_gameboy[operand] ,"\nERROR undefined operand: " .. operand .. " must be defined in shared_dict_gameboy.h") --decode string operands into operand = op_gameboy[operand] end @@ -398,7 +368,7 @@ local function gameboy( opcode, operand, misc, data ) end --print("error:", error_code, "data_len:", data_len) - assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " device error code: " .. error_code) + assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " operand: " .. operand .. " misc: " .. misc .. " device error code: " .. error_code) if data_len and data_len ~= (wLength - RETURN_LEN_IDX) then print("WARNING!! Device's return data length:", data_len, "did not match expected:", wLength-RETURN_LEN_IDX) @@ -418,18 +388,12 @@ end -- external call for gba dictionary local function gba( opcode, operand, misc, data ) - if not op_gba[opcode] then - print("ERROR undefined opcode:", opcode, "must be defined in shared_dict_gba.h") - return nil - end + assert ( op_gba[opcode] , "\nERROR undefined opcode: " .. opcode .. " must be defined in shared_dict_gba.h") if not operand then operand = 0 elseif type(operand) == "string" then - if not op_gba[operand] then - print("ERROR undefined operand:", operand, "must be defined in shared_dict_gba.h") - return nil - end + assert ( op_gba[operand] ,"\nERROR undefined operand: " .. operand .. " must be defined in shared_dict_gba.h") --decode string operands into operand = op_gba[operand] end @@ -450,7 +414,7 @@ local function gba( opcode, operand, misc, data ) end --print("error:", error_code, "data_len:", data_len) - assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " device error code: " .. error_code) + assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " operand: " .. operand .. " misc: " .. misc .. " device error code: " .. error_code) if data_len and data_len ~= (wLength - RETURN_LEN_IDX) then print("WARNING!! Device's return data length:", data_len, "did not match expected:", wLength-RETURN_LEN_IDX) @@ -470,18 +434,12 @@ end -- external call for sega dictionary local function sega( opcode, operand, misc, data ) - if not op_sega[opcode] then - print("ERROR undefined opcode:", opcode, "must be defined in shared_dict_sega.h") - return nil - end + assert ( op_sega[opcode] , "\nERROR undefined opcode: " .. opcode .. " must be defined in shared_dict_sega.h") if not operand then operand = 0 elseif type(operand) == "string" then - if not op_sega[operand] then - print("ERROR undefined operand:", operand, "must be defined in shared_dict_sega.h") - return nil - end + assert ( op_sega[operand] ,"\nERROR undefined operand: " .. operand .. " must be defined in shared_dict_sega.h") --decode string operands into operand = op_sega[operand] end @@ -502,7 +460,7 @@ local function sega( opcode, operand, misc, data ) end --print("error:", error_code, "data_len:", data_len) - assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " device error code: " .. error_code) + assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " operand: " .. operand .. " misc: " .. misc .. " device error code: " .. error_code) if data_len and data_len ~= (wLength - RETURN_LEN_IDX) then print("WARNING!! Device's return data length:", data_len, "did not match expected:", wLength-RETURN_LEN_IDX) @@ -522,18 +480,12 @@ end -- external call for n64 dictionary local function n64( opcode, operand, misc, data ) - if not op_n64[opcode] then - print("ERROR undefined opcode:", opcode, "must be defined in shared_dict_n64.h") - return nil - end + assert ( op_n64[opcode] , "\nERROR undefined opcode: " .. opcode .. " must be defined in shared_dict_n64.h") if not operand then operand = 0 elseif type(operand) == "string" then - if not op_n64[operand] then - print("ERROR undefined operand:", operand, "must be defined in shared_dict_n64.h") - return nil - end + assert ( op_n64[operand] ,"\nERROR undefined operand: " .. operand .. " must be defined in shared_dict_n64.h") --decode string operands into operand = op_n64[operand] end @@ -554,7 +506,7 @@ local function n64( opcode, operand, misc, data ) end --print("error:", error_code, "data_len:", data_len) - assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " device error code: " .. error_code) + assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " operand: " .. operand .. " misc: " .. misc .. " device error code: " .. error_code) if data_len and data_len ~= (wLength - RETURN_LEN_IDX) then print("WARNING!! Device's return data length:", data_len, "did not match expected:", wLength-RETURN_LEN_IDX) @@ -573,18 +525,12 @@ end -- external call for swim dictionary local function swim( opcode, operand, misc, data ) - if not op_swim[opcode] then - print("ERROR undefined opcode:", opcode, "must be defined in shared_dict_swim.h") - return nil - end + assert ( op_swim[opcode] , "\nERROR undefined opcode: " .. opcode .. " must be defined in shared_dict_swim.h") if not operand then operand = 0 elseif type(operand) == "string" then - if not op_swim[operand] then - print("ERROR undefined operand:", operand, "must be defined in shared_dict_swim.h") - return nil - end + assert ( op_swim[operand] ,"\nERROR undefined operand: " .. operand .. " must be defined in shared_dict_swim.h") --decode string operands into operand = op_swim[operand] end @@ -605,7 +551,7 @@ local function swim( opcode, operand, misc, data ) end --print("error:", error_code, "data_len:", data_len) - assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " device error code: " .. error_code) + assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " operand: " .. operand .. " misc: " .. misc .. " device error code: " .. error_code) if data_len and data_len ~= (wLength - RETURN_LEN_IDX) then print("WARNING!! Device's return data length:", data_len, "did not match expected:", wLength-RETURN_LEN_IDX) @@ -629,18 +575,12 @@ end -- external call for jtag dictionary local function jtag( opcode, operand, misc, data ) - if not op_jtag[opcode] then - print("ERROR undefined opcode:", opcode, "must be defined in shared_dict_jtag.h") - return nil - end + assert ( op_jtag[opcode] , "\nERROR undefined opcode: " .. opcode .. " must be defined in shared_dict_jtag.h") if not operand then operand = 0 elseif type(operand) == "string" then - if not op_jtag[operand] then - print("ERROR undefined operand:", operand, "must be defined in shared_dict_jtag.h") - return nil - end + assert ( op_jtag[operand] ,"\nERROR undefined operand: " .. operand .. " must be defined in shared_dict_jtag.h") --decode string operands into operand = op_jtag[operand] end @@ -661,7 +601,7 @@ local function jtag( opcode, operand, misc, data ) end --print("error:", error_code, "data_len:", data_len) - assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " device error code: " .. error_code) + assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " operand: " .. operand .. " misc: " .. misc .. " device error code: " .. error_code) if data_len and data_len ~= (wLength - RETURN_LEN_IDX) then print("WARNING!! Device's return data length:", data_len, "did not match expected:", wLength-RETURN_LEN_IDX) @@ -681,18 +621,12 @@ end -- external call for bootload dictionary local function bootload( opcode, operand, misc, data ) - if not op_bootload[opcode] then - print("ERROR undefined opcode:", opcode, "must be defined in shared_dict_bootload.h") - return nil - end + assert ( op_bootload[opcode] , "\nERROR undefined opcode: " .. opcode .. " must be defined in shared_dict_bootload.h") if not operand then operand = 0 elseif type(operand) == "string" then - if not op_bootload[operand] then - print("ERROR undefined operand:", operand, "must be defined in shared_dict_bootload.h") - return nil - end + assert ( op_bootload[operand] ,"\nERROR undefined operand: " .. operand .. " must be defined in shared_dict_bootload.h") --decode string operands into operand = op_bootload[operand] end @@ -713,7 +647,7 @@ local function bootload( opcode, operand, misc, data ) end --print("error:", error_code, "data_len:", data_len) - assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " device error code: " .. error_code) + assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " operand: " .. operand .. " misc: " .. misc .. " device error code: " .. error_code) if data_len and data_len ~= (wLength - RETURN_LEN_IDX) then print("WARNING!! Device's return data length:", data_len, "did not match expected:", wLength-RETURN_LEN_IDX) @@ -735,18 +669,12 @@ end -- external call for firmware update dictionary local function fwupdate( opcode, operand, misc, data ) - if not op_fwupdate[opcode] then - print("ERROR undefined opcode:", opcode, "must be defined in shared_dict_fwupdate.h") - return nil - end + assert ( op_fwupdate[opcode] , "\nERROR undefined opcode: " .. opcode .. " must be defined in shared_dict_fwupdate.h") if not operand then operand = 0 elseif type(operand) == "string" then - if not op_fwupdate[operand] then - print("ERROR undefined operand:", operand, "must be defined in shared_dict_fwupdate.h") - return nil - end + assert ( op_fwupdate[operand] ,"\nERROR undefined operand: " .. operand .. " must be defined in shared_dict_fwupdate.h") --decode string operands into operand = op_fwupdate[operand] end @@ -767,7 +695,7 @@ local function fwupdate( opcode, operand, misc, data ) end --print("error:", error_code, "data_len:", data_len) - assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " device error code: " .. error_code) + assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " operand: " .. operand .. " misc: " .. misc .. " device error code: " .. error_code) if data_len and data_len ~= (wLength - RETURN_LEN_IDX) then print("WARNING!! Device's return data length:", data_len, "did not match expected:", wLength-RETURN_LEN_IDX) @@ -788,18 +716,12 @@ end -- external call for ciccom dictionary local function ciccom( opcode, operand, misc, data ) - if not op_ciccom[opcode] then - print("ERROR undefined opcode:", opcode, "must be defined in shared_dict_ciccom.h") - return nil - end + assert ( op_ciccom[opcode] , "\nERROR undefined opcode: " .. opcode .. " must be defined in shared_dict_ciccom.h") if not operand then operand = 0 elseif type(operand) == "string" then - if not op_ciccom[operand] then - print("ERROR undefined operand:", operand, "must be defined in shared_dict_ciccom.h") - return nil - end + assert ( op_ciccom[operand] ,"\nERROR undefined operand: " .. operand .. " must be defined in shared_dict_ciccom.h") --decode string operands into operand = op_ciccom[operand] end @@ -820,7 +742,54 @@ local function ciccom( opcode, operand, misc, data ) end --print("error:", error_code, "data_len:", data_len) - assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " device error code: " .. error_code) + assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " operand: " .. operand .. " misc: " .. misc .. " device error code: " .. error_code) + + if data_len and data_len ~= (wLength - RETURN_LEN_IDX) then + print("WARNING!! Device's return data length:", data_len, "did not match expected:", wLength-RETURN_LEN_IDX) + end + + --process the return data string and return it to calling function + if data_len then + return string_to_int( data:sub(RETURN_DATA, data_len+RETURN_DATA), data_len) + else + return nil + end + + + +end + + +-- external call for misc dictionary +local function stuff( opcode, operand, misc, data ) + + assert ( op_stuff[opcode] , "\nERROR undefined opcode: " .. opcode .. " must be defined in shared_dict_stuff.h") + + if not operand then + operand = 0 + elseif type(operand) == "string" then + assert ( op_stuff[operand] ,"\nERROR undefined operand: " .. operand .. " must be defined in shared_dict_stuff.h") + --decode string operands into + operand = op_stuff[operand] + end + + if not misc then misc = 0 end + + local wLength, ep = default_rlen_1_in(op_stuff[opcode.."rlen"]) + + local count + count, data = usb_vend_xfr( + -- ep, dictionary wValue[misc:opcode] wIndex wLength data + ep, dict["DICT_STUFF"], ( misc<<8 | op_stuff[opcode]), operand, wLength, data) + --print(count) + local error_code, data_len + if ep == USB_IN then + error_code = data:byte(RETURN_ERR_IDX) + data_len = data:byte(RETURN_LEN_IDX) + end + --print("error:", error_code, "data_len:", data_len) + + assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " operand: " .. operand .. " misc: " .. misc .. " device error code: " .. error_code) if data_len and data_len ~= (wLength - RETURN_LEN_IDX) then print("WARNING!! Device's return data length:", data_len, "did not match expected:", wLength-RETURN_LEN_IDX) @@ -903,18 +872,12 @@ end -- external call for buffer dictionary local function buffer( opcode, operand, misc, data, stringout ) - if not op_buffer[opcode] then - print("ERROR undefined opcode:", opcode, "must be defined in shared_dict_buffer.h") - return nil - end + assert ( op_buffer[opcode] , "\nERROR undefined opcode: " .. opcode .. " must be defined in shared_dict_buffer.h") if not operand then operand = 0 elseif type(operand) == "string" then - if not op_buffer[operand] then - print("ERROR undefined operand:", operand, "must be defined in shared_dict_buffer.h") - return nil - end + assert ( op_buffer[operand] ,"\nERROR undefined operand: " .. operand .. " must be defined in shared_dict_buffer.h") --decode string operands into operand = op_buffer[operand] end @@ -935,7 +898,7 @@ local function buffer( opcode, operand, misc, data, stringout ) end --print("error:", error_code, "data_len:", data_len) - assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " device error code: " .. error_code) + assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " operand: " .. operand .. " misc: " .. misc .. " device error code: " .. error_code) if data_len and data_len ~= (wLength - RETURN_LEN_IDX) then print("WARNING!! Device's return data length:", data_len, "did not match expected:", wLength-RETURN_LEN_IDX) @@ -956,18 +919,12 @@ end -- external call for operation dictionary local function operation( opcode, operand, misc, data ) - if not op_operation[opcode] then - print("ERROR undefined opcode:", opcode, "must be defined in shared_dict_operation.h") - return nil - end + assert ( op_operation[opcode] , "\nERROR undefined opcode: " .. opcode .. " must be defined in shared_dict_operation.h") if not operand then operand = 0 elseif type(operand) == "string" then - if not op_operation[operand] then - print("ERROR undefined operand:", operand, "must be defined in shared_dict_operation.h") - return nil - end + assert ( op_operation[operand] ,"\nERROR undefined operand: " .. operand .. " must be defined in shared_dict_operation.h") --decode string operands into operand = op_operation[operand] end @@ -988,7 +945,7 @@ local function operation( opcode, operand, misc, data ) end --print("error:", error_code, "data_len:", data_len) - assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " device error code: " .. error_code) + assert ( (error_code == err_codes["SUCCESS"]), "\n ERROR!!! problem with opcode: " .. opcode .. " operand: " .. operand .. " misc: " .. misc .. " device error code: " .. error_code) if data_len and data_len ~= (wLength - RETURN_LEN_IDX) then print("WARNING!! Device's return data length:", data_len, "did not match expected:", wLength-RETURN_LEN_IDX) @@ -1022,6 +979,7 @@ op_jtag = {} op_bootload = {} op_fwupdate = {} op_ciccom = {} +op_stuff = {} err_codes = {} -- Dictionary table definitions initialized by calling parser @@ -1042,6 +1000,7 @@ create_dict_tables( op_jtag, "../shared/shared_dict_jtag.h") create_dict_tables( op_bootload,"../shared/shared_dict_bootload.h") create_dict_tables( op_fwupdate,"../shared/shared_dict_fwupdate.h") create_dict_tables( op_ciccom, "../shared/shared_dict_ciccom.h") +create_dict_tables( op_stuff, "../shared/shared_dict_stuff.h") create_dict_tables( err_codes, "../shared/shared_errors.h") -- functions other modules are able to call @@ -1062,6 +1021,7 @@ dict.buffer_payload_in = buffer_payload_in dict.buffer_payload_out = buffer_payload_out dict.operation = operation dict.fwupdate = fwupdate +dict.stuff = stuff -- return the module's table return dict diff --git a/host/scripts/app/files.lua b/host/scripts/app/files.lua new file mode 100644 index 0000000..b39046f --- /dev/null +++ b/host/scripts/app/files.lua @@ -0,0 +1,98 @@ + +-- create the module's table +local files = {} + +-- import required modules +local help = require "scripts.app.help" + +-- file constants + +-- local functions + + +--compare the two files return true if identical +--files should be closed prior to calling, files are closed after compared +local function compare(filename1, filename2, size_must_equal, debug) + + + file1 = assert(io.open(filename1, "rb")) + file2 = assert(io.open(filename2, "rb")) + + local byte_str1 + local byte_str2 + + local buffsize = 1 + local byte_num = 0 + + local rv = true + + while true do --exit when end of file 1 reached + + --read next byte from the file and convert to binary + --gotta be a better way to read a half word (16bits) at a time but don't care right now... + byte_str1 = file1:read(buffsize) + byte_str2 = file2:read(buffsize) + + if byte_str1 and byte_str2 then + --compare byte string from each file + + if byte_str1 == byte_str2 then + --bytes matched count the bytes + byte_num = byte_num + 1 + --print(filename1, "was:", help.hex(data1), filename2, "was:", help.hex(data2)) + else + local data1 = string.unpack("B", byte_str1, 1) + local data2 = string.unpack("B", byte_str2, 1) + print("failed to verify byte number:", string.format("0x%X", byte_num)) + print(filename1, "was:", help.hex(data1), filename2, "was:", help.hex(data2)) + rv = false + break + end + + elseif byte_str1 and not byte_str2 then + print("end of file:", filename2, "reached, it's smaller than", filename1 ) + if size_must_equal then + print("files were not the same size") + rv = false + else + rv = "FILE2 larger than FILE1" + end + break + elseif byte_str2 and not byte_str1 then + print("end of file:", filename1, "reached, it's smaller than", filename2 ) + if size_must_equal then + print("files were not the same size") + rv = false + else + rv = "FILE1 larger than FILE2" + end + break + else + --end of both files reached, they must have matched + break + rv = true + end + + end + + + --close the files + assert(file1:close()) + assert(file2:close()) + + return rv + +end + + +-- global variables so other modules can use them + + +-- call functions desired to run when script is called/imported + + +-- functions other modules are able to call +files.compare = compare + +-- return the module's table +return files diff --git a/host/scripts/app/fwupdate.lua b/host/scripts/app/fwupdate.lua index 23e4586..44ee52b 100644 --- a/host/scripts/app/fwupdate.lua +++ b/host/scripts/app/fwupdate.lua @@ -41,7 +41,9 @@ local function erase_main() end -local function update_firmware(newbuild) +--skip is used because there is a ram pointer that often varies between builds +--we're never going back to main so this mismatch is allowed +local function update_firmware(newbuild, skip, forceup) local error = false @@ -109,13 +111,19 @@ local function update_firmware(newbuild) -- print("read data:", string.format("%X", readdata) ) if readdata ~= data then - print("\n\nERROR!!!! verifying byte number", help.hex(byte_num), + print("\n\nUnable to verify byte number", help.hex(byte_num), " to flash expected:", help.hex(data), "was:", help.hex(readdata)) - print("exiting because it's not safe to proceed...") - print("no changes to device flash were made\n\n") - - error = true - break + if forceup then + print("continuing anyway because force update was set...") + elseif byte_num == skip then + print("there was an expected mismatch at byte:", help.hex(byte_num)) + else + print("\n\nPROBLEM! with firmware updater verification exiting") + print("exiting because it's not safe to proceed...") + print("no changes to device flash were made\n\n") + error = true + break + end --else -- print("verified byte number", help.hex(byte_num), -- " of flash ", help.hex(data), help.hex(readdata)) diff --git a/host/scripts/app/swim.lua b/host/scripts/app/swim.lua index fb80e39..9f90123 100644 --- a/host/scripts/app/swim.lua +++ b/host/scripts/app/swim.lua @@ -617,3 +617,53 @@ swim.stop_and_reset = stop_and_reset -- return the module's table return swim + + +-- NOTES old code that was once used to flash STM8 CICs from inlretro.lua + + --Check for SWIM on A0 + --[[ + dict.io("IO_RESET") + print("start swim") + + dict.io("SWIM_INIT", "SWIM_ON_A0") + ----[[ + if swim.start(true) then + --SWIM is now established and running at HIGH SPEED + snes_swimcart = false --don't want to use SWIM pin to control flash /OE, use SNES RESET (EXP0) instead + + swim.swim_test() + + --swim.write_optn_bytes( true, true ) -- enable ROP, debug + + --check if ROP set, allow clearing ROP and erasing CIC + --blindly erase STM8 CIC for now by disabling ROP + swim.disable_ROP_erase(true) + + --open CIC file + local cic_file = assert(io.open("stm8_8KB_zero.bin", "rb")) + --local cic_file = assert(io.open("stm8_8KB_0xff.bin", "rb")) + --local cic_file = assert(io.open("stm8_8KB_testpattern.bin", "rb")) + --local cic_file = assert(io.open("NESCIC.bin", "rb")) + --local cic_file = assert(io.open("LIZv1.bin", "rb")) + + --write CIC file + swim.write_flash( cic_file ) + + --close CIC file + assert(cic_file:close()) + + --set ROP & AFR0 + swim.write_optn_bytes( true, true ) -- ROP not set, debug set + + -- reset STM8 CIC and end SWIM comms to it can execute what we just flashed + swim.stop_and_reset() + else + print("ERROR problem with STM8 CIC") + end + + print("done flashing STM8 on A0") + + dict.io("IO_RESET") + + --]] diff --git a/host/scripts/app/time.lua b/host/scripts/app/time.lua index 9bc019c..2c3274b 100644 --- a/host/scripts/app/time.lua +++ b/host/scripts/app/time.lua @@ -17,9 +17,13 @@ end --send the number of KBytes flashed so it can report KBps local function report(sizeKB) local time = os.clock() - tstart - print("total time:", time, "seconds, average speed:", (sizeKB/time), "KBps") + print("total time:", time, "seconds, average speed:", string.format("%.2f", (sizeKB/time)), "KBps") end +local function sleep(n) -- seconds + local t0 = os.clock() + while os.clock() - t0 <= n do end +end -- global variables so other modules can use them @@ -30,6 +34,7 @@ end -- functions other modules are able to call time.start = start time.report = report +time.sleep = sleep -- return the module's table return time diff --git a/host/scripts/inlretro.lua b/host/scripts/inlretro.lua index f7208e7..250de89 100644 --- a/host/scripts/inlretro.lua +++ b/host/scripts/inlretro.lua @@ -44,10 +44,6 @@ function main () local cart = require "scripts.app.cart" local nes = require "scripts.app.nes" local snes = require "scripts.app.snes" --- local gameboy = require "scripts.app.gameboy" --- local gba = require "scripts.app.gba" --- local sega = require "scripts.app.sega" --- local n64 = require "scripts.app.n64" local dump = require "scripts.app.dump" local erase = require "scripts.app.erase" local flash = require "scripts.app.flash" @@ -55,8 +51,7 @@ function main () local jtag = require "scripts.app.jtag" local ciccom = require "scripts.app.ciccom" local fwupdate = require "scripts.app.fwupdate" --- local bootload = require "scripts.app.bootload" --- local crc32 = require "scripts.app.crc32" + local files = require "scripts.app.files" -- ===================================================== @@ -64,7 +59,9 @@ function main () -- The -- comments out a line, so you can add/remove the -- to select/deselect mapper scripts -- ===================================================== --cart/mapper specific scripts - --local curcart = require "scripts.nes.nrom" + + --NES mappers + local curcart = require "scripts.nes.nrom" --local curcart = require "scripts.nes.mmc1" --local curcart = require "scripts.nes.unrom" --local curcart = require "scripts.nes.cnrom" @@ -72,7 +69,8 @@ function main () --local curcart = require "scripts.nes.mmc2" --local curcart = require "scripts.nes.mmc4" --local curcart = require "scripts.nes.mm2" - --local curcart = require "scripts.nes.mapper30" + --local curcart = require "scripts.nes.mapper30" --old version supported by v2.1 + --local curcart = require "scripts.nes.mapper30v2" --has things required by v2.3.1 --local curcart = require "scripts.nes.bnrom" --local curcart = require "scripts.nes.cdream" --local curcart = require "scripts.nes.cninja" @@ -81,21 +79,25 @@ function main () --local curcart = require "scripts.nes.easyNSF" --local curcart = require "scripts.nes.fme7" --local curcart = require "scripts.nes.dualport" - --local curcart = require "scripts.snes.v3" --and GAMEBOY for now + + --SNES boards + --local curcart = require "scripts.snes.v3" --local curcart = require "scripts.snes.lorom_5volt" --catskull design --local curcart = require "scripts.snes.v2proto" - --local curcart = require "scripts.snes.v2proto_hirom" --quickly becoming the master SNES script... + --local curcart = require "scripts.snes.v2proto_hirom" --becoming the master SNES script... + + --GAMEBOY boards --local curcart = require "scripts.gb.romonly" - local curcart = require "scripts.gb.mbc1" + --local curcart = require "scripts.gb.mbc1" -- ===================================================== -- USERS: set cart_console to the to point to the mapper script you would like to use here. -- ===================================================== - --local cart_console = "NES" --includes Famicom + local cart_console = "NES" --includes Famicom --local cart_console = "SNES" --local cart_console = "SEGA" --local cart_console = "N64" - local cart_console = "DMG" + --local cart_console = "DMG" --local cart_console = "GBA" --local cart_console = "SMS" @@ -113,10 +115,10 @@ function main () verify = false, dumpram = false, writeram = false, - dumpfile = "ignore/dump.bin", - flashfile = "", - verifyfile = "", - dumpram_filename = "", + dump_filename = "ignore/dump.bin", + flash_filename = "ignore/flash.bin", + verify_filename = "ignore/verifyout.bin", + dumpram_filename = "ignore/ramdump.bin", writeram_filename = "", } -- ===================================================== @@ -124,75 +126,29 @@ function main () -- These options can vary from cartridge to cartridge depending on specific hardware it contains. -- ===================================================== local console_opts = { - mirror = "V", -- Only used by NROM, also possible to set to "H" - prg_rom_size_kb = 128, -- Size of NES PRG-ROM in kb - chr_rom_size_kb = 128, -- Size of NES CHR-ROM in kb - wram_size_kb = 0, -- Size of NES wram in kb + mirror = nil, -- Only used by latest INL discrete flash boards, set to "H" or "V" to change board mirroring + prg_rom_size_kb = 32, -- Size of NES PRG-ROM in KByte + chr_rom_size_kb = 8, -- Size of NES CHR-ROM in KByte + wram_size_kb = 0, -- Size of NES PRG-RAM/WRAM in KByte } - local rv --- rv = dict.pinport( "DATA_SET", 0xAA ) --- rv = dict.pinport( "DATA_RD" ) --- rv = dict.io("IO_RESET") - ---[[ --TEST GB power - rv = dict.pinport( "CTL_ENABLE", "CIN" ) - rv = dict.pinport( "CTL_OP", "CIN") - rv = dict.pinport( "CTL_SET_LO", "CIN") - print("CIN low 5v GB") - jtag.sleep(5) - rv = dict.pinport( "CTL_SET_HI", "CIN") - print("CIN high 3v GBA") - jtag.sleep(90) - rv = dict.pinport( "CTL_SET_LO", "CIN") - print("CIN low 5v GB") - jtag.sleep(10) - rv = dict.pinport( "CTL_SET_HI", "CIN") - print("CIN high 3v GBA") - jtag.sleep(10) - --]] - - - --if rv then - -- print(string.format("%X", rv)) - --end - --- print(dict.io("EXP0_PULLUP_TEST")) --- - - --BOOTLOADER TEST --- print("jumping...") - - --jump to 0xDEADBEEF - --dict.bootload("LOAD_ADDRH", 0xDEAD) - --dict.bootload("JUMP_ADDR", 0xBEEF) --for ARM LSbit must be odd (Thumb mode) --- dict.bootload("LOAD_ADDRH", 0x1FFF) --- dict.bootload("JUMP_ADDR", 0xCAC5) --- dict.bootload("LOAD_ADDRH", 0x0800) --- dict.bootload("JUMP_ADDR", 0x00C1) --- --- dict.bootload("LOAD_ADDRH", 0x2000) --- dict.bootload("JUMP_ADDR", 0x0430) - --- dict.bootload("JUMP_BL") --- dict.bootload("JUMP_TEST") --- print("jumped") --- --Firmware update testing --active development path (based on makefile in use) - --fwupdate.update_firmware("../firmware/build_stm/inlretro_stm.bin") + --fwupdate.update_firmware("../firmware/build_stm/inlretro_stm.bin", nil, true ) --Know what I'm doing? force the update + --fwupdate.update_firmware("../firmware/build_stm/inlretro_stm.bin", 0x6DC, false) --INL6 skip ram pointer + --fwupdate.update_firmware("../firmware/build_stm/inlretro_stm.bin", 0x6E8, false) --INL_NES skip ram pointer --released INL6 path (big square boards) --fwupdate.update_firmware("../firmware/build_stm6/inlretro_stm_AV00.bin") + --fwupdate.update_firmware("../firmware/build_stm6/inlretro_stm_AV01.bin", 0x6DC, false) --INL6 skip ram pointer --released INL_N path (smaller NESmaker boards) --fwupdate.update_firmware("../firmware/build_stmn/inlretro_stm_AV00.bin") + --fwupdate.update_firmware("../firmware/build_stmn/inlretro_stm_AV01.bin", 0x6E8, false) --INL_NES skip ram pointer --- debug = true --- rv = cart.detect(debug) --DETECT WHICH CART IS INSERTED, --or take user input for manual override @@ -209,116 +165,6 @@ function main () dict.io("IO_RESET") dict.io("NES_INIT") - ---[[ - --NES detect mirroring to gain mapper info - nes.detect_mapper_mirroring(true) - --[[ - --NES detect memories to gain more mapper/board info - --check for CHR-RAM - nes.ppu_ram_sense(0x1000, true) - --check CHR-ROM flash ID - nes.read_flashID_chrrom_8K(true) - --check for EXP0 pullup..? - print("EXP0 pull-up test:", dict.io("EXP0_PULLUP_TEST")) - --try to read flash ID - --setup to fail if 16KB banks - print("32KB banks:") - dict.nes("NES_CPU_WR", 0x8000, 0xFF) - nes.read_flashID_prgrom_exp0(true) - --setup to pass if 16KB banks - print("16KB banks:") - dict.nes("NES_CPU_WR", 0x8000, 0x00) - nes.read_flashID_prgrom_exp0(true) - --try mapper 30 flash ID - print("\n") - --]] - - - -- jtag.run_jtag() - - - --Check for SWIM on A0 - --[[ - dict.io("IO_RESET") - print("start swim") - - dict.io("SWIM_INIT", "SWIM_ON_A0") - ----[[ - if swim.start(true) then - --SWIM is now established and running at HIGH SPEED - snes_swimcart = false --don't want to use SWIM pin to control flash /OE, use SNES RESET (EXP0) instead - - swim.swim_test() - - --swim.write_optn_bytes( true, true ) -- enable ROP, debug - - --check if ROP set, allow clearing ROP and erasing CIC - --blindly erase STM8 CIC for now by disabling ROP - swim.disable_ROP_erase(true) - - --open CIC file - local cic_file = assert(io.open("stm8_8KB_zero.bin", "rb")) - --local cic_file = assert(io.open("stm8_8KB_0xff.bin", "rb")) - --local cic_file = assert(io.open("stm8_8KB_testpattern.bin", "rb")) - --local cic_file = assert(io.open("NESCIC.bin", "rb")) - --local cic_file = assert(io.open("LIZv1.bin", "rb")) - - --write CIC file - swim.write_flash( cic_file ) - - --close CIC file - assert(cic_file:close()) - - --set ROP & AFR0 - swim.write_optn_bytes( true, true ) -- ROP not set, debug set - - -- reset STM8 CIC and end SWIM comms to it can execute what we just flashed - swim.stop_and_reset() - else - print("ERROR problem with STM8 CIC") - end - - print("done flashing STM8 on A0") - - dict.io("IO_RESET") - - --]] - - --[[ - - - ciccom.start() - ciccom.set_opcode("M") - --now send operand "V" (0x56) or "H" (0x48) - ciccom.write("H") - - - - dict.io("IO_RESET") - jtag.sleep(0.01) --10msec to be overly safe - - - ---[[ - --the CIC won't update the H/V stack flag unless it's reset - --reset caused during swim init doesn't count either bc it halts at reset vector - - --test reading back CIC version - dict.io("SWIM_INIT", "SWIM_ON_A0") - --dict.io("SWIM_INIT", "SWIM_ON_EXP0") - if swim.start(true) then - - swim.read_stack() - - else - print("ERROR trying to read back CIC signature stack data") - end - swim.stop_and_reset() - - print("done reading STM8 stack on A0\n") - - dict.io("IO_RESET") - --]] - --determined all that could about mapper board --set rom types and sizes @@ -328,35 +174,9 @@ function main () -- Perform requested operations with provided options. curcart.process(process_opts, console_opts) - --[[ - --FLASHING: - --erase cart - erase.erase_nes( true ) - --open file - local file - --file = assert(io.open("inltest.bin", "rb")) - --file = assert(io.open("ignore/ddug2.bin", "rb")) - file = assert(io.open("ignore/lizard_v1.bin", "rb")) - --determine if auto-doubling, deinterleaving, etc, - --needs done to make board compatible with rom - --flash cart - flash.flash_nes( file, true ) - --close file - assert(file:close()) - --DUMPING: - --create new file - local file - file = assert(io.open("dump.bin", "wb")) - --dump cart into file - dump.dump_nes( file, true ) - - --close file - assert(file:close()) - --]] - - - -- dict.io("IO_RESET") + --always end with and gpio reset incase the script didn't + dict.io("IO_RESET") elseif cart_console == "SNES" then @@ -376,161 +196,20 @@ function main () --curcart.process( false, false, false, false, false, nil, nil, nil, true, true, "ignore/ramdump.bin", "ignore/dkc_paul.bin") --- --old SNES code --- --- snes_swimcart = nil --- dict.io("IO_RESET") --- print("start swim") --- --- dict.io("SWIM_INIT", "SWIM_ON_A0") --- --[[ --- if swim.start(true) then --- --SWIM is now established and running at HIGH SPEED --- snes_swimcart = false --don't want to use SWIM pin to control flash /OE, use SNES RESET (EXP0) instead --- print("swim prgm mode") --- --- --check if ROP set, allow clearing ROP and erasing CIC --- --blindly erase STM8 CIC for now by disabling ROP --- swim.disable_ROP_erase(true) --- --- --open CIC file --- local cic_file = assert(io.open("SNESCIC_flashmode.bin", "rb")) --- --- --write CIC file --- swim.write_flash( cic_file ) --- --- --close CIC file --- assert(cic_file:close()) --- --- -- reset STM8 CIC and end SWIM comms to it can execute what we just flashed --- swim.stop_and_reset() --- else --- print("ERROR problem with STM8 CIC") --- end --- --]] --- --- dict.io("IO_RESET") --- dict.io("SNES_INIT") --- --- --- --SNES detect HiROM or LoROM --- --nes.detect_mapper_mirroring(true) --- local snes_mapping = "LOROM" --- --SNES detect if there's save ram and size --- --- ---[[ --- --SNES detect if able to read flash ID's --- if not snes.read_flashID(true) then --- print("ERROR unable to read flash ID") --- return --- end --- --- erase.erase_snes( false ) --- --quick lame check to see if chip erased --- ---[[ --- if snes.read_reset_vector(0, true) ~= 0xFFFF then --- erase.erase_snes( false ) --- end --- if snes.read_reset_vector( 1, true) ~= 0xFFFF then --- erase.erase_snes( false ) --- end --- if snes.read_reset_vector( 20, true) ~= 0xFFFF then --- erase.erase_snes( false ) --- end --- if snes.read_reset_vector( 63, true) ~= 0xFFFF then --- erase.erase_snes( false ) --- end --- --]] --- --- --FLASHING: --- --erase cart ----- erase.erase_snes( false ) --- --open file --- local file --- ---[[ file = assert(io.open("flash.bin", "rb")) --- --file = assert(io.open("SF2_PTdump_capcomFINAL.bin", "rb")) --- file = assert(io.open("ignore/MMXdump.bin", "rb")) --- --- --calculate checksum --- --local data = file:read("*all") --- --print(crc32.hash(data)) --- --- --determine if auto-doubling, deinterleaving, etc, --- --needs done to make board compatible with rom --- --flash cart --- flash.flash_snes( file, true ) --- --close file --- assert(file:close()) --- --]] --- --- dict.io("IO_RESET") --- dict.io("SNES_INIT") --- print("start swim") --- --- --[[ --- dict.io("SWIM_INIT", "SWIM_ON_A0") --- --flash final CIC code --- if swim.start(true) then --- --SWIM is now established and running at HIGH SPEED --- --swim.printCSR() --- --snes_swimcart = false --- --print("main swimcart", snes_swimcart) --- --- print("swimming") --- swim.swim_test() --- --- --check if ROP set, allow clearing ROP and erasing CIC --- --blindly erase STM8 CIC for now by disabling ROP --- -- swim.disable_ROP_erase(true) --- --- --open CIC file --- local cic_file = assert(io.open("SNESCIC.bin", "rb")) --- --- --write CIC file ----- swim.write_flash( cic_file ) --- --- --close CIC file --- assert(cic_file:close()) --- --- --write option bytes --- -- enable ROP, debug ----- swim.write_optn_bytes( false, true ) --- --- --read stack --- swim.read_stack(true) --- --- -- reset STM8 CIC and end SWIM comms to it can execute what we just flashed --- swim.stop_and_reset() --- --- else --- print("ERROR problem with STM8 CIC") --- end --- --]] --- --- --- --DUMPING: --- --create new file --- print("dumping SNES") --- snes.read_reset_vector(0, true) --- local file --- file = assert(io.open("snesdump.bin", "wb")) --- --dump cart into file --- -- swim.start() --- dump.dump_snes( file, snes_mapping, true ) --- --- --close file --- assert(file:close()) - - - --trick to do this at end while debugging so don't have to wait for it before starting - -- erase.erase_snes( false ) + --always end with and gpio reset incase the script didn't dict.io("IO_RESET") elseif cart_console == "SEGA" then + --always end with and gpio reset incase the script didn't + dict.io("IO_RESET") + elseif cart_console == "N64" then + --always end with and gpio reset incase the script didn't + dict.io("IO_RESET") + elseif cart_console == "DMG" then print("testing gameboy") @@ -554,12 +233,18 @@ function main () print("GBP reset (pullup) = 3v") --]] + --always end with and gpio reset incase the script didn't dict.io("IO_RESET") elseif cart_console == "GBA" then + --always end with and gpio reset incase the script didn't + dict.io("IO_RESET") + elseif cart_console == "SMS" then + --always end with and gpio reset incase the script didn't + dict.io("IO_RESET") end end diff --git a/host/scripts/nes/bnrom.lua b/host/scripts/nes/bnrom.lua index fc6c1e2..f92754b 100644 --- a/host/scripts/nes/bnrom.lua +++ b/host/scripts/nes/bnrom.lua @@ -133,7 +133,6 @@ local function dump_prgrom( file, rom_size_KB, debug ) end ---host flash one byte/bank at a time... --this is controlled from the host side one bank at a time --but requires mapper specific firmware flashing functions local function flash_prgrom(file, rom_size_KB, debug) diff --git a/host/scripts/nes/mapper30v2.lua b/host/scripts/nes/mapper30v2.lua new file mode 100644 index 0000000..926c17e --- /dev/null +++ b/host/scripts/nes/mapper30v2.lua @@ -0,0 +1,571 @@ + +-- create the module's table +local mapper30v2 = {} + +-- import required modules +local dict = require "scripts.app.dict" +local nes = require "scripts.app.nes" +local dump = require "scripts.app.dump" +local flash = require "scripts.app.flash" +local time = require "scripts.app.time" +local files = require "scripts.app.files" +local ciccom = require "scripts.app.ciccom" +local time = require "scripts.app.time" +local swim = require "scripts.app.swim" + +-- file constants & variables +local mapname = "MAP30" + +-- local functions + +--read PRG-ROM flash ID +local function prgrom_manf_id( debug ) + + + if debug then print("reading PRG-ROM manf ID") end + --no bus conflicts + --$8000-BFFF writes to flash + --$C000-FFFF writes to mapper + --ROM A14 is mapper controlled + -- + --A15 14 - 13 12 + -- 1 1 0 1 : 0x5555 -> bank1, $9555 + -- 1 0 1 0 : 0x2AAA -> bank0, $AAAA + dict.nes("NES_CPU_WR", 0xC000, 0x01) + dict.nes("NES_CPU_WR", 0x9555, 0xAA) + + dict.nes("NES_CPU_WR", 0xC000, 0x00) + dict.nes("NES_CPU_WR", 0xAAAA, 0x55) + + dict.nes("NES_CPU_WR", 0xC000, 0x01) + dict.nes("NES_CPU_WR", 0x9555, 0x90) + + rv = dict.nes("NES_CPU_RD", 0x8000) + if debug then print("attempted read PRG-ROM manf ID:", string.format("%X", rv)) end + rv = dict.nes("NES_CPU_RD", 0x8001) + if debug then print("attempted read PRG-ROM prod ID:", string.format("%X", rv)) end + + --exit software + dict.nes("NES_CPU_WR", 0x8000, 0xF0) + +end + +--select different chr-ram banks and verify all 4 banks are present +local function map30_chrbank_test() + + dict.nes("NES_CPU_WR", 0xC000, 0x00) --CHR bank 0 + dict.nes("NES_PPU_WR", 0x0000, 0xAA) + dict.nes("NES_CPU_WR", 0xC000, 0x20) --CHR bank 1 + dict.nes("NES_PPU_WR", 0x0000, 0x55) + dict.nes("NES_CPU_WR", 0xC000, 0x40) --CHR bank 2 + dict.nes("NES_PPU_WR", 0x0000, 0xCC) + dict.nes("NES_CPU_WR", 0xC000, 0x60) --CHR bank 3 + dict.nes("NES_PPU_WR", 0x0000, 0x33) + + --read back + local test = true + dict.nes("NES_CPU_WR", 0xC000, 0x00) --CHR bank 0 + rv = dict.nes("NES_PPU_RD", 0x0000) + if rv ~= 0xAA then + print( "\nFAIL CHR-RAM BANKING TEST!!!\n") + print("bank0 read:", string.format("%X", rv)) + test = false + end + dict.nes("NES_CPU_WR", 0xC000, 0x20) --CHR bank 1 + rv = dict.nes("NES_PPU_RD", 0x0000) + if rv ~= 0x55 then + print( "\nFAIL CHR-RAM BANKING TEST!!!\n") + print("bank1 read:", string.format("%X", rv)) + test = false + end + dict.nes("NES_CPU_WR", 0xC000, 0x40) --CHR bank 2 + rv = dict.nes("NES_PPU_RD", 0x0000) + if rv ~= 0xCC then + print( "\nFAIL CHR-RAM BANKING TEST!!!\n") + print("bank2 read:", string.format("%X", rv)) + test = false + end + dict.nes("NES_CPU_WR", 0xC000, 0x60) --CHR bank 3 + rv = dict.nes("NES_PPU_RD", 0x0000) + if rv ~= 0x33 then + print( "\nFAIL CHR-RAM BANKING TEST!!!\n") + print("bank3 read:", string.format("%X", rv)) + test = false + end + + if test then + print("CHR-RAM BANKING TEST PASSED") + return true + else + print("CHR-RAM BANKING TEST FAILED") + return false + end +end + +--dump the CHR ROM +local function dump_chrrom( file, rom_size_KB, debug ) + + --CHR-ROM dump all 8KB, most of this code is overkill for NROM. + -- but follows same format as banked mappers + local KB_per_read = 8 + local num_reads = rom_size_KB / KB_per_read + local read_count = 0 + local addr_base = 0x00 -- $0000 + + while ( read_count < num_reads ) do + + if debug then print( "dump CHR part ", read_count, " of ", num_reads) end + + dump.dumptofile( file, KB_per_read, addr_base, "NESPPU_PAGE", false ) + + read_count = read_count + 1 + end + +end + + +local function exercise_chrram(debug) + + if debug then print("exercising CHR-RAM") end + dict.stuff("RESET_LFSR") --sets it to 1 +-- dict.stuff("SET_LFSR_L", 0) --lock it up to clear ram +-- dict.stuff("SET_LFSR_L", 2) --give different seed for testing fails + + + --write random data to all 4 banks + local bank = 0x00 + + while (bank<=0x60) do + --select the bank + dict.nes("NES_CPU_WR", 0xC000, bank ) + bank = bank + 0x20 + + local addr = 0x0000 + while (addr<0x2000) do + dict.nes("PPU_PAGE_WR_LFSR", addr) + addr = addr + 256 + end + end + + local filename = "ignore/chrramdump.bin" + + local file = assert(io.open(filename, "wb")) + + bank = 0x00 + while (bank<=0x60) do + --select the bank + dict.nes("NES_CPU_WR", 0xC000, bank ) + bank = bank + 0x20 + + dump_chrrom(file, 8) + end + + --close the file + assert(file:close()) + + --re-open & compare dump with known lsfr bitstream + local goodfile = "ignore/lfsr_32KB.bin" + + --compare the flash file vs post dump file + if ( files.compare( filename, goodfile, true ) ) then + print("CHR-RAM test verified") + return true + else + print("FAILURE! CHR-RAM test failed") + return false + end + + +end + +local function test_soft_mir_switch( debug ) + + --set to Horiz + if debug then print("test setting soft mir switch to Horiz") end + ciccom.start() + ciccom.set_opcode("M") + --now send operand "V" (0x56) or "H" (0x48) + ciccom.write("H") + + dict.io("IO_RESET") + time.sleep(0.05) --10msec to be overly safe + + --the CIC won't update the H/V stack flag unless it's reset + --reset caused during swim init doesn't count either bc it halts at reset vector + + --test reading back CIC version + dict.io("SWIM_INIT", "SWIM_ON_A0") + --dict.io("SWIM_INIT", "SWIM_ON_EXP0") + if swim.start() then + swim.read_stack() + else + print("ERROR trying to read back CIC signature stack data") + end + swim.stop_and_reset() + + time.sleep(0.05) --10msec to be overly safe + dict.io("NES_INIT") + if ( nes.detect_mapper_mirroring() == "HORZ" ) then + if debug then print("pass Horiz soft mirror switch") end + else + print("\n\n\nFAIL HORZ SOFT MIRROR SWITCH TEST!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n\n\n") + --don't continue + return false + end + + dict.io("IO_RESET") + + + --set to Vert + ciccom.start() + ciccom.set_opcode("M") + --now send operand "V" (0x56) or "H" (0x48) + ciccom.write("V") + + + + dict.io("IO_RESET") + time.sleep(0.05) --10msec to be overly safe + + + --the CIC won't update the H/V stack flag unless it's reset + --reset caused during swim init doesn't count either bc it halts at reset vector + + --test reading back CIC version + dict.io("SWIM_INIT", "SWIM_ON_A0") + --dict.io("SWIM_INIT", "SWIM_ON_EXP0") + if swim.start() then + + swim.read_stack() + + else + print("ERROR trying to read back CIC signature stack data") + end + swim.stop_and_reset() + + --print("done reading STM8 stack on A0\n") + + dict.io("NES_INIT") + if ( nes.detect_mapper_mirroring() == "VERT" ) then + if debug then print("pass Vert soft mirror switch") end + else + print("\n\n\nFAIL VERT SOFT MIRROR SWITCH TEST!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n\n\n") + --don't continue + return false + end + + dict.io("IO_RESET") + dict.io("NES_INIT") + + print("Software mirroring switch operation verified working") + return true +end + +--dump the PRG ROM +local function dump_prgrom( file, rom_size_KB, debug ) + + local KB_per_read = 16 + local num_reads = rom_size_KB / KB_per_read + local read_count = 0 + local addr_base = 0x80 -- $8000 + + while ( read_count < num_reads ) do + + if debug then print( "dump PRG part ", read_count, " of ", num_reads) end + + --select desired bank(s) to dump + --mapper 30 bank register is $C000-FFFF + dict.nes("NES_CPU_WR", 0xFC80, read_count) --16KB @ CPU $8000 + + dump.dumptofile( file, KB_per_read, addr_base, "NESCPU_PAGE", false ) + + read_count = read_count + 1 + end + +end + + +--REQ: addr must be in the first bank $8000-BFFF +local function wr_prg_flash_byte(addr, value, bank, debug) + + if (addr < 0x8000 or addr > 0xBFFF) then + print("\n ERROR! flash write to PRG-ROM", string.format("$%X", addr), "must be $8000-BFFF \n\n") + return + end + + dict.nes("NES_CPU_WR", 0xC000, 0x01) dict.nes("NES_CPU_WR", 0x9555, 0xAA) + dict.nes("NES_CPU_WR", 0xC000, 0x00) dict.nes("NES_CPU_WR", 0xAAAA, 0x55) + dict.nes("NES_CPU_WR", 0xC000, 0x01) dict.nes("NES_CPU_WR", 0x9555, 0xA0) + + dict.nes("NES_CPU_WR", 0xC000, bank) + dict.nes("NES_CPU_WR", addr, value) + + local rv = dict.nes("NES_CPU_RD", addr) + + local i = 0 + + while ( rv ~= value ) do + rv = dict.nes("NES_CPU_RD", addr) + i = i + 1 + end + if debug then print(i, "naks, done writing byte.") end + + --TODO report error if write failed + +end + + +--this is controlled from the host side one bank at a time +--but requires mapper specific firmware flashing functions +local function flash_prgrom(file, rom_size_KB, debug) + + --init_mapper() + + --test some bytes + --wr_prg_flash_byte(0x0000, 0xA5, 0, true) + --wr_prg_flash_byte(0xFFFF, 0x5A, 1, true) + + print("\nProgramming PRG-ROM flash") + + local base_addr = 0x8000 --writes occur $8000-9FFF + local bank_size = 16*1024 --UNROM 16KByte per PRG bank + local buff_size = 1 --number of bytes to write at a time + local cur_bank = 0 + local total_banks = rom_size_KB*1024/bank_size + + local byte_num --byte number gets reset for each bank + local byte_str, data, readdata + + --set the bank table address + dict.nes("SET_BANK_TABLE", banktable_base) + if debug then print("get banktable:", string.format("%X", dict.nes("GET_BANK_TABLE"))) end + + while cur_bank < total_banks do + + if (cur_bank %4 == 0) then + print("writting PRG bank: ", cur_bank, " of ", total_banks-1) + end + + --select bank to flash + dict.nes("SET_CUR_BANK", cur_bank) + if debug then print("get bank:", dict.nes("GET_CUR_BANK")) end + + --program the entire bank's worth of data + + --[[ This version of the code programs a single byte at a time but doesn't require + -- mapper specific functions in the firmware + print("This is slow as molasses, but gets the job done") + byte_num = 0 --current byte within the bank + while byte_num < bank_size do + + --read next byte from the file and convert to binary + byte_str = file:read(buff_size) + data = string.unpack("B", byte_str, 1) + + --write the data + --SLOWEST OPTION: no firmware MMC3 specific functions 100% host flash algo: + --wr_prg_flash_byte(base_addr+byte_num, data, cur_bank, false) --0.7KBps + --EASIEST FIRMWARE SPEEDUP: 5x faster, create MMC3 write byte function: + --can use same write function as NROM + dict.nes("MAP30_PRG_FLASH_WR", base_addr+byte_num, data) --3.8KBps (5.5x faster than above) + + if (verify) then + readdata = dict.nes("NES_CPU_RD", base_addr+byte_num) + if readdata ~= data then + print("ERROR flashing byte number", byte_num, " in bank",cur_bank, " to flash ", data, readdata) + end + end + + byte_num = byte_num + 1 + end + --]] + + --Have the device write a banks worth of data + flash.write_file( file, bank_size/1024, mapname, "PRGROM", false ) + + cur_bank = cur_bank + 1 + end + + print("Done Programming PRG-ROM flash") + +end + + +--Cart should be in reset state upon calling this function +--this function processes all user requests for this specific board/mapper +local function process(process_opts, console_opts) + local test = process_opts["test"] + local read = process_opts["read"] + local erase = process_opts["erase"] + local program = process_opts["program"] + local verify = process_opts["verify"] + local dumpfile = process_opts["dump_filename"] + local flashfile = process_opts["flash_filename"] + local verifyfile = process_opts["verify_filename"] + + local rv = nil + local file + -- TODO: Cleanup needed here, support chrrom, make this look more like other mapper scripts. + local prg_size = console_opts["prg_rom_size_kb"] + + --local filetype = "nes" + local filetype = "bin" + +--initialize device i/o for NES + dict.io("IO_RESET") + dict.io("NES_INIT") + + +--test cart by reading manf/prod ID + if test then + print("Testing ", mapname) + + nes.detect_mapper_mirroring(true) + nes.ppu_ram_sense(0x1000, true) + print("EXP0 pull-up test:", dict.io("EXP0_PULLUP_TEST")) + + prgrom_manf_id( debug ) + + --test CHR-RAM banking + rv = map30_chrbank_test() + --exit script if test fails + if not rv then return end + + --test CHR-RAM + rv = exercise_chrram() + --exit script if test fails + if not rv then return end + + --test software mirroring switch + rv = test_soft_mir_switch() + if not rv then return end + + + end + +--dump the cart to dumpfile + if read then + print("\nDumping PRG-ROM...") + file = assert(io.open(dumpfile, "wb")) + + --dump cart into file + time.start() + dump_prgrom(file, prg_size, false) + time.report(prg_size) + + --close file + assert(file:close()) + print("DONE Dumping PRG-ROM") + end + + +--erase the cart + if erase then + + + print("\nerasing", mapname); + + dict.nes("NES_CPU_WR", 0xC000, 0x01) dict.nes("NES_CPU_WR", 0x9555, 0xAA) + dict.nes("NES_CPU_WR", 0xC000, 0x00) dict.nes("NES_CPU_WR", 0xAAAA, 0x55) + dict.nes("NES_CPU_WR", 0xC000, 0x01) dict.nes("NES_CPU_WR", 0x9555, 0x80) + dict.nes("NES_CPU_WR", 0xC000, 0x01) dict.nes("NES_CPU_WR", 0x9555, 0xAA) + dict.nes("NES_CPU_WR", 0xC000, 0x00) dict.nes("NES_CPU_WR", 0xAAAA, 0x55) + dict.nes("NES_CPU_WR", 0xC000, 0x01) dict.nes("NES_CPU_WR", 0x9555, 0x10) + + local i = 0 + + --TODO create some function to pass the read value + --that's smart enough to figure out if the board is actually erasing or not + rv = 0xFF + while ( rv ~= dict.nes("NES_CPU_RD", 0x8000)) do + rv = dict.nes("NES_CPU_RD", 0x8000) + i = i + 1 + end + + --TODO verify erase + --for now we'll just report an error if naks isn't sizable + --AVR is slower so naks are lower, tested was ~60 + if (i < 10) then + print("ERROR flash did not appear to accept erase command, naks:", i) + return + else + print(i, "naks, done erasing prg."); + end + + end + + +--program flashfile to the cart + if program then + + --open file + file = assert(io.open(flashfile, "rb")) + --determine if auto-doubling, deinterleaving, etc, + --needs done to make board compatible with rom + + + if filetype == "nes" then + --advance past the 16byte header + --TODO set mirroring bit via ciccom + local buffsize = 1 + local byte + local count = 1 + + for byte in file:lines(buffsize) do + local data = string.unpack("B", byte, 1) + --print(string.format("%X", data)) + count = count + 1 + if count == 17 then break end + end + end + + + --flash cart + time.start() + flash_prgrom(file, prg_size, false) + time.report(prg_size) + + --close file + assert(file:close()) + + end + +--verify flashfile is on the cart + if verify then + --for now let's just dump the file and verify manually + + file = assert(io.open(verifyfile, "wb")) + + --dump cart into file + time.start() + dump_prgrom(file, prg_size, false) + time.report(prg_size) + + --close file + assert(file:close()) + + --compare the flash file vs post dump file + if (files.compare( verifyfile, flashfile, true ) ) then + print("\nSUCCESS! Flash verified") + else + print("\n\n\n FAILURE! Flash verification did not match") + end + end + + dict.io("IO_RESET") + + return +end + + +-- global variables so other modules can use them + + +-- call functions desired to run when script is called/imported + + +-- functions other modules are able to call +mapper30v2.process = process + +-- return the module's table +return mapper30v2 diff --git a/host/scripts/nes/mmc3.lua b/host/scripts/nes/mmc3.lua index d272cc0..eff0c0c 100644 --- a/host/scripts/nes/mmc3.lua +++ b/host/scripts/nes/mmc3.lua @@ -265,7 +265,6 @@ local function dump_wram( file, rom_size_KB, debug ) end ---write a single byte to PRG-ROM flash --PRE: assumes mapper is initialized and bank is selected as prescribed in mapper_init --REQ: addr must be in the first bank $8000-9FFF local function wr_prg_flash_byte(addr, value, debug) diff --git a/host/scripts/nes/unrom.lua b/host/scripts/nes/unrom.lua index 3e80da2..bd974a2 100644 --- a/host/scripts/nes/unrom.lua +++ b/host/scripts/nes/unrom.lua @@ -197,7 +197,6 @@ local function wr_bank_table(base, entries, numtables) end ---host flash one byte/bank at a time... --this is controlled from the host side one bank at a time --but requires mapper specific firmware flashing functions local function flash_prgrom(file, rom_size_KB, debug) diff --git a/shared/shared_dict_io.h b/shared/shared_dict_io.h index d704bb1..50c5ccc 100644 --- a/shared/shared_dict_io.h +++ b/shared/shared_dict_io.h @@ -21,7 +21,15 @@ //goal to be safe state for all hardware //LED is pulled up (DIM) to help indicate this io state //FFs are disabled due to pull up on /OE -#define IO_RESET 0 +#define IO_RESET 0 + //operand: 1-disable STM SW DEBUG PORT in the process + //SWD & SWC pins have default GPIO settings different from all others + //this sets a static variable so anytime the firmware calls io_reset + //the debug remains disabled. But if the host calls IO_RESET + //whatever operand is provided is set. + #define DISABLE_STM_DEBUG 0x10 + //sending no operand (0) clears the disable debug setting in firmware + //NES cartridge interfacing setup //set outputs as required @@ -71,6 +79,8 @@ #define GB_POWER_3V 10 + + //Test EXP0 drive with pull up //This is an important test if reling on pulling up EXP0 pin to drive the cart's pin. //EXP0 is used for various things and may have pull up/down of it's own or significant load diff --git a/shared/shared_dict_nes.h b/shared/shared_dict_nes.h index ae63700..b3b3f15 100644 --- a/shared/shared_dict_nes.h +++ b/shared/shared_dict_nes.h @@ -47,7 +47,7 @@ #define DISC_PUSH_EXP0_PRGROM_WR 0x06 -#define MMC3_PRG_FLASH_WR 0x07 +#define MMC3_PRG_FLASH_WR 0x07 //TODO set return lengths for all these functions #define MMC3_CHR_FLASH_WR 0x08 #define NROM_PRG_FLASH_WR 0x09 #define NROM_CHR_FLASH_WR 0x0A @@ -58,14 +58,20 @@ #define MMC1_CHR_FLASH_WR 0x0F //needs cur_bank set prior to calling #define MMC4_PRG_SOP_FLASH_WR 0x10 //current bank must be selected, & needs cur_bank set prior to calling #define MMC4_CHR_FLASH_WR 0x11 //needs cur_bank set prior to calling +#define MAP30_PRG_FLASH_WR 0x12 //needs cur_bank set prior to calling #define SET_CUR_BANK 0x20 #define SET_BANK_TABLE 0x21 - #define NES_M2_LOW_WR 0x22 //like CPU WR, but M2 stays low +//write a page worth of random data to ppu +//make sure the LSFR is initialized first in misc dict +//send start address in operand, doesn't have to be page boundary +//but A13 and /A13 get set once based on provided address. +#define PPU_PAGE_WR_LFSR 0x23 + //============================================================================================= // OPCODES WITH OPERAND AND RETURN VALUE plus SUCCESS/ERROR_CODE //============================================================================================= diff --git a/shared/shared_dict_pinport.h b/shared/shared_dict_pinport.h index 520bd5d..892ec3f 100644 --- a/shared/shared_dict_pinport.h +++ b/shared/shared_dict_pinport.h @@ -111,6 +111,7 @@ #define SWD_ 17 // PC18 "SWC" mcu debug #define C18_ 18 + #define SWC_ 18 // PC19 "AFL" flipflop addr expansion for FF0-7 (also CIC RESET on NES) #define C19_ 19 #define AFL_ 19 diff --git a/shared/shared_dict_stuff.h b/shared/shared_dict_stuff.h new file mode 100644 index 0000000..e7f8616 --- /dev/null +++ b/shared/shared_dict_stuff.h @@ -0,0 +1,28 @@ +#ifndef _shared_dict_stuff_h +#define _shared_dict_stuff_h + +//define dictionary's reference number in the shared_dictionaries.h file +//then include this dictionary file in shared_dictionaries.h +//The dictionary number is literally used as usb transfer request field +//the opcodes and operands in this dictionary are fed directly into usb setup packet's wValue wIndex fields + + +//============================================================================================= +//============================================================================================= +// STUFF DICTIONARY +// +// opcodes contained in this dictionary must be implemented in firmware/source/stuff.c +// +//============================================================================================= +//============================================================================================= + + +//clear the LOWER half word, and set the upper +//should do this one first if you want to set > 16bit seed +#define SET_LFSR_H_CLR_L 1 //operand = upper half word of LFSR +//set the LOWER half word of LFSR +#define SET_LFSR_L 2 //operand = lower half word of LFSR +//if you don't use these setters, the seed value starts with 1 +#define RESET_LFSR 3 //sets seed to 1 + +#endif diff --git a/shared/shared_dictionaries.h b/shared/shared_dictionaries.h index 0aee474..430b838 100644 --- a/shared/shared_dictionaries.h +++ b/shared/shared_dictionaries.h @@ -281,5 +281,15 @@ //============================================================================================= //============================================================================================= +//============================================================================================= +//============================================================================================= +#define DICT_STUFF 17 +#include "shared_dict_stuff.h" +//miscelaneous stuff dictionary if you just need a few small calls that +//you don't want to create a specific dictionary for you can stuff +//them here. +//============================================================================================= +//============================================================================================= + #endif diff --git a/shared/shared_errors.h b/shared/shared_errors.h index 108a590..f6b61f9 100644 --- a/shared/shared_errors.h +++ b/shared/shared_errors.h @@ -9,6 +9,7 @@ #define ERR_UNKN_DICTIONARY 128 #define ERR_UNKN_SWIM_OPCODE 130 +#define ERR_UNKN_MISC_OPCODE 131 #define ERR_UNKN_JTAG_OPCODE 135 #define ERR_UNKN_CICCOM_OPCODE 136