diff --git a/mos/flash/esp/flasher/common.go b/mos/flash/esp/flasher/common.go index fffe79d..2fe1be0 100644 --- a/mos/flash/esp/flasher/common.go +++ b/mos/flash/esp/flasher/common.go @@ -59,7 +59,7 @@ func ConnectToFlasherClient(ct esp.ChipType, opts *esp.FlashOpts) (*cfResult, er } }() - r.fc, err = NewFlasherClient(ct, r.rc, opts.FlasherBaudRate) + r.fc, err = NewFlasherClient(ct, r.rc, opts.ROMBaudRate, opts.FlasherBaudRate) if err != nil { return nil, errors.Annotatef(err, "failed to run flasher") } diff --git a/mos/flash/esp/flasher/flasher_client.go b/mos/flash/esp/flasher/flasher_client.go index e327eba..914c7e5 100644 --- a/mos/flash/esp/flasher/flasher_client.go +++ b/mos/flash/esp/flasher/flasher_client.go @@ -58,18 +58,18 @@ type FlasherClient struct { connected bool } -func NewFlasherClient(ct esp.ChipType, rc *rom_client.ROMClient, baudRate uint) (*FlasherClient, error) { +func NewFlasherClient(ct esp.ChipType, rc *rom_client.ROMClient, romBaudRate uint, baudRate uint) (*FlasherClient, error) { if baudRate < 0 || baudRate > 4000000 { return nil, errors.Errorf("invalid flashing baud rate (%d)", baudRate) } fc := &FlasherClient{ct: ct, s: rc.DataPort(), srw: common.NewSLIPReaderWriter(rc.DataPort()), rom: rc} - if err := fc.connect(baudRate); err != nil { + if err := fc.connect(romBaudRate, baudRate); err != nil { return nil, errors.Trace(err) } return fc, nil } -func (fc *FlasherClient) connect(baudRate uint) error { +func (fc *FlasherClient) connect(romBaudRate, baudRate uint) error { var stubJSON []byte switch fc.ct { case esp.ChipESP8266: @@ -81,7 +81,7 @@ func (fc *FlasherClient) connect(baudRate uint) error { } common.Reportf("Running flasher @ %d...", baudRate) - err := fc.rom.RunStub(stubJSON, []uint32{uint32(baudRate)}) + err := fc.rom.RunStub(stubJSON, []uint32{uint32(romBaudRate), uint32(baudRate)}) if err != nil { return errors.Annotatef(err, "failed to run flasher stub") } @@ -91,6 +91,19 @@ func (fc *FlasherClient) connect(baudRate uint) error { return errors.Annotatef(err, "failed to set serial speed to %d", baudRate) } } + fc.s.SetReadTimeout(50 * time.Millisecond) + buf := make([]byte, 100) + if n, err := fc.srw.Read(buf); err == nil && n == 4 { + var oldUARTDiv uint32 + if binary.Read(bytes.NewBuffer(buf), binary.LittleEndian, &oldUARTDiv) == nil { + oldUARTdivF := float64(oldUARTDiv) + if fc.ct == esp.ChipESP32 { + oldUARTdivF /= 16.0 + } + masterCLK := uint32(romBaudRate) * uint32(oldUARTdivF) + glog.V(1).Infof("Previous UART divider: %.3f (0x%x), master clk: %d", oldUARTdivF, oldUARTDiv, masterCLK) + } + } if err = fc.Sync(); err != nil { return errors.Annotatef(err, "failed to talk to flasher") } diff --git a/mos/flash/esp32/data/stub_flasher.json b/mos/flash/esp32/data/stub_flasher.json index 91b4bab..edbca04 100644 --- a/mos/flash/esp32/data/stub_flasher.json +++ b/mos/flash/esp32/data/stub_flasher.json @@ -1 +1 @@ -{"code_start": 1074331652, "code": "0080FD3FFF0F0000364100B1FDFFA2DB4098AA7089119A98B089B09818B1F9FF973B0E1BB9B9189A8822480888BA1B8889BA1DF00800F43F0000F43F30F0FD3F081000000C00F43F1C00F43F1000F43F36410021F8FFC02000480221E9FF52D24006360000000C0681F4FFB802C02000A808A09074B65B02862D0081F0FF808BA08808A0080082A0C08719028628000C1889020C0889B5C6250082A0DB8799040C38862200C2A0C088A5C7992F1B882648024600000C0889A588A5A1E1FF7098118A892088B00C099918AA8892480088B5979803060D00009902061500661B1370A8118A8AA1D6FF2088B0AA88924800860E0000A0A07425F1FF060D0000000082A0DC87191982A0DD87191B0C43390221CDFFC020003802C020003902860A00A2A0C00601000000A2A0DBE5EDFF0C2889021B6660607437B60286CAFF61C2FFC02000380630307456A3F121C0FFC0200049021DF000000070E2FA3F1C20F43FFFFFFFDF2020F43FFFFFFF030000005C0020F43F000000400420F43F364100A1F6FFA5810091F5FF81F6FFC02000A809808A10A1F4FFC020008909C02000980A81F2FF80991081F1FF808920C02000890A91F0FF81EFFFC020009908C0200098085679FFA1EDFFC02000290AC0200039082D091DF00000000000FD3F3040000000800000540009402400F43F64000094FFFF00000000800000000100000000017CDA05404CC40040EC67004008680040500006409CDA0540C8C200401CDB0540FC670040366102A2C15822613C42613F81F4FFE0080042213C3C224040B456442A3040B43C3256C429E58F004D0A3C42562A29516BFFC1E1FFBD0A50A52081E9FFE00800C1DFFFA1DCFF40B42081E5FFE00800B1DCFFCD050C5A81E3FFE0080021DAFF2C0AC02000680262613D61D7FFC020006902616BFF22A101C02000722600202720C02000290681D8FFE00800A2A0B0BD042C4CAAA122A0D481D2FFE008002A211C8CBD04AD0281CEFFE0080062A0F06A611C8BAD026912E55C0060EA03626130066E00000060EA03460D00000081C0FF4073C077B81BA2213CA070F4DC27B1BCFF65E7FF568A1771BBFF7A44460400000000B1B9FFA2213C25E6FF566A1642D41082213F56780370EA0382212F6068C070668062612FA0EA0362D51062260388156A8862D52068566A9862D530887668058A8992D54089127D098899860200780272D71077348506EFFFC02000B8A7871B0666460C464400006646ED86420000000060EA0372212CA077C06A6762612C60EA0362613E7068118A76A128FF5077B08BF7D817AA77720700076728718AFFB18BFF0C1ECD0F70A7208261429261438193FFE00800DD0A822142922143660A02862E00FD0770EA03A2212DB2213ECD0DB0AAC07A7ABD0FA2C15872612D826142926143D26141F261408185FFE0080070EA03A0EA03B2212FBAAA707AC072612F70EA03D22141F22140A2213CCD0DF0BF20E57B00822142922143D22141563A06B0EA03C2212E8A665066B0A916707CC06899BA7772612E1B7662C6FD60A79362213C5C8CDA6662613C6802A999DAD6CAB1AD01D902816BFFE00800BD018BA2816AFFE008001C8BAD02A54200C606003C528612003C624611003C720610004C02C60E00003C82460D00000062220037B602C68FFF22A0B0102280B2C158A2C214815AFFE0080020EA03322130A2A0B03022C0B2A0241AAA226130A53D000C023145FF42213D2C0AC0200049038150FFE008001DF0001000006810000058100000701000004093004036412161FDFF72D1101A66590691F7FF0C0662671A5C2847B902862500AD078139FFE00800461600006083C0805463CD05BD01AD02E5780056CA06BD05AD0181EFFFE00800CD05BD01AD078133FFE008005A225A6637360F51E6FF0C4B5AA1253600264A1606110051E4FF82271A1A5558058086C05738B006F7FF0082271A87362F82271A3738CCA1DBFFBD071AAA8124FFE00800A1D7FF1C0B1AAA81D8FFE008000C08060300005C388601005C484600005C582D081DF0B010000036C12161CBFF8CA452A06247B60286240040642051C9FF5A51AD05810BFFE00800461700A2D1108108FFE0080060736370C72010B12020A220E56C008C6A52A063C617000000CD07BD01AD058104FFE00800AC74CD07BD01A2D1108100FFE00800A1E6FFB2D11010AA8081FEFEE00800A1E3FF1C0B1AAA81B2FFE008007A227033C056E3F9B1ACFFA1DDFFBAB11AAA81F5FEE00800A1D9FF1C0B1AAA81A9FFE008005D032D051DF00030F43F000000108030F43FFFFFFF003661000C0281FAFF290121FAFF809820C020002908208220C0200028098022105642FF81F5FF0C4BC02000980881F3FFAD0180891089018194FFE008001DF0002000F43F00000200FFFFFDFF44F0FD3F36810022A05531FAFF224111C02000880321F8FF0C1B202820C020002903C02000880321F5FFA2C111202810C020002903A51C00261A02862E008201117CF20B88224110808074B68802C6270021EBFF2088A02808A002001C0BAD01E519004C1226AA02862000C821B811A80165AFFFC61000B2A01010A1202518005C1266BA68D831C821B811A80125DBFFC60900B2A01010A12065160022A06166AA4BC821B811A2210025E5FFC6020065F0FF460100000000A54300A24110C60B0000000022A000B2A001A2C110224110A511002201119000000000001C0BAD01E51100A0BA2010A1202510000C022241100C1BA2C110650F0022011182C2FA808074B62802C6C1FF1DF00000000009404F4841491027000050C300007C680040588600406C2A064038320640348500404C82004036610081F6FF21F4FF0C0A8901280281F6FFE0080081F5FFE008000C0B81F4FFE00800F177FED134FFC177FEB178FEE2A100A2A00081EFFFE00800161201A1E8FF81EDFFE0080020B220A2A000257700A1E5FF81E9FFE00800B2A00410A120A50500E5E6FFA02A20A1DEFF81E3FFE0080026620581E2FFE008001DF030C0FD3F0000FD3F2CF0FD3F30C0FD3F364100A1FCFFC1FAFF0C0BA0CCC0C0C221815DFEE0080011F8FFA5F5FF91F6FF82A0FF890991F5FF89091DF0364100BD03AD028112FFE008001DF000A492004036610042A0C081FDFFE008006D0A479AF43A324D0272A0C0460C000081F8FFE008008D0A771A3D52A0DB579A1AA90152A0DC81F2FFE008008801571A0852A0DD571A040604008D068244001B442054C04793C8860000000C0522A0C081E8FFE00800279AF62D051DF000000090E2FA3F1020F43F00000008B02106403661000C18890181FAFF820801FCD8A1F9FFB109FEC1F8FF06080000C02000826A00C02000C26B00C02000980B5679FFC02000980AD852909D109901980107E9DA8603000C5BAD0181EDFFE00800880107E8F088010C0289031DF000F820F43FF830F43F36610081FDFFC0200038083030245643FF81FAFFC020003228003030245633FF10B12020A22065F7FF0C12A023831DF03661000C0222610021E1FD20A22025FCFF81E4FD31E5FDC020003908C0200038085673FF0C234602000010B12020A220A5F3FF8221008703F00C021DF00000008020F43F00000020000000023641004050148C250C121DF051CDFD8225048062E24066806738EC50A52065F6FF1CF60627000000A5F8FF569AFD8109FFA1CBFD80821047A62E91EFFF90882091EDFFC02000826A0030A32082A00876880AB80A4BAAC02000B9094B9932C32042C4E022C220C60F00809401908820C02000890A40A0144042211B848090744040748D099D04A0989381DAFF4D034088C03039A00603000000A8044A98C02000A9094B444793F10C0481ABFD91D4FFC020009908C020009228005669FF50A52025ECFFA6140286D7FF22A0001DF00000364100A19BFDE5EAFFB2A03530A320818FFFE008008223002D0A80881189031DF000000000000004364100AD0265E8FF4D022184FF8194FDC02000390221F9FFC020002908C020002228005662FF40A42025E6FF900000000820F43F000040003661002183FD20A220A5E4FFAD02BD01E5F8FF3D020C12569A04480122A200202410AD032901E5E2FF217FFD4180FDC02000426200C020004222005664FF30A32025E1FF21EDFF81EDFFC020009802AD03808920C020008902B80122A001A5F6FFA024831DF00000364100A5E1FFA02A20561A023167FDAD03A5DDFF816BFD91DFFFAD03C020009908C0200038085673FF25DCFF1DF00C121DF00000366100615DFD515DFDC020007806505710715BFDC020005906C0200068075159FD5066105159FD505620C0200059075151FD2A64781567B7030C121DF078457052E25057C057B408CD04BD03AD0206100050C52030B32020A220A5DDFF568AFD5084C07088C26D0A0606000070C72030BBA0826100E5DBFF880156BAFB1B667A5560607450B2412AA58736DF50C4C030BBA025DAFF0C130C02A023931DF0000000200001FFFFFFF7000000700000007C2420F43FEB00007000000050BB0000700000FFFF6B0000703B0000700B000070030000702C20F43F00000400364100519FFF91EFFFC02000880561EEFF90A8105122FD7114FF979A56C020008805606810C020006905C02000880561E7FF606820811BFDC020006905C0200068085119FD50661051E2FF505620C020005908720701C02000580862AF003B77605510707074505720C02000590861DAFF066800D7E802864500C020009805606910C020006905C02000980561D4FF606920C02000690577F8028624008207016101FDECA8C02000880571FDFC707810C020007905C02000780651FBFC50771051C4FF505720C02000590661C5FFC65000C020009805811EFF808920C020008905C02000880651F0FC50881051B9FF505820C020005906820701C02000580672AF000B8870551080807450582071B1FFC020005906C02000680751B2FF50661052A0BB505620C020005907863B00000051A9FF61ADFF47F80861ACFFE7E80261ACFFC02000690561D5FC5101FFC02000880650582081D3FCC020005906C02000680851D1FC50661051D1FC505620C020005908720701C0200058087B7762AF00707074605510505720C020005908C62200C020008805606810C020006905620701DC36C02000780561BEFC606710C020006905C60B000000C02000880561E4FE606820C02000690581B7FC720701C0200058080B7762AF00707074605510505720C02000590861ADFC517CFFC02000780650572071ACFCC020005906C02000680751A9FC50661051A9FC5056206179FFC020005907516FFFC020006905A19EFC2A54781A62A00157B702C62C00E5AAFF81A0FCE172FF3CF5C1A0FCD2A1FFFD086D0EC6240080721147A53C916BFFC02000D909C02000790CC02000690FC02000780F5677FFA1B9FEBD0392A01076890AC02000780A4BAA790B4BBB32C34042C4C022C24046140000215CFFC02000790CC02000D26200C02000E26800C0200028085672FF4060144042211B242050744040742D055D0441A5FE6052932D032044C03035A0C60200002A54C02000580559024B222793F1460100A6140246D9FF0C062D061DF000000088850040CC90004036410081FDFFE00800C0AA1130B141AABB30BBC220A07481F9FFE008001DF000", "entry": 1074333824, "num_params": 1, "params_start": 1074331648, "data": "8A0009409E0009409E000940040109404F0109401C07094037070940530709406F0709407807094084070940840709409C070940", "data_start": 1073606704} +{"code_start": 1074331656, "code": "0080FD3FFF0F0000364100B1FDFFA2DB4098AA7089119A98B089B09818B1F9FF973B0E1BB9B9189A8822480888BA1B8889BA1DF00800F43F0000F43F30F0FD3F081000000C00F43F1C00F43F1000F43F36410021F8FFC02000480221E9FF52D24006360000000C0681F4FFB802C02000A808A09074B65B02862D0081F0FF808BA08808A0080082A0C08719028628000C1889020C0889B5C6250082A0DB8799040C38862200C2A0C088A5C7992F1B882648024600000C0889A588A5A1E1FF7098118A892088B00C099918AA8892480088B5979803060D00009902061500661B1370A8118A8AA1D6FF2088B0AA88924800860E0000A0A07425F1FF060D0000000082A0DC87191982A0DD87191B0C43390221CDFFC020003802C020003902860A00A2A0C00601000000A2A0DBE5EDFF0C2889021B6660607437B60286CAFF61C2FFC02000380630307456A3F121C0FFC0200049021DF000000070E2FA3F1C20F43FFFFFFFDF2020F43FFFFFFF030000005C0020F43F000000400420F43F364100A1F6FFA5810091F5FF81F6FFC02000A809808A10A1F4FFC020008909C02000980A81F2FF80991081F1FF808920C02000890A91F0FF81EFFFC020009908C0200098085679FFA1EDFFC02000290AC0200039082D091DF00000000000FD3F3040000000800000580009402400F43F64000094FFFF00000000800000000100000000017CDA05404CC40040EC67004008680040500006409CDA0540C8C200401CDB0540FC670040366102A2C15822613C42613F81F4FFE0080042213C3C224040B456442A3040B43C3256C429E58F004D0A3C42562A29516BFFC1E1FFBD0A50A52081E9FFE00800C1DFFFA1DCFF40B42081E5FFE00800B1DCFFCD050C5A81E3FFE0080021DAFF2C0AC02000680262613D61D7FFC020006902616BFF22A101C02000722600202720C02000290681D8FFE00800A2A0B0BD042C4CAAA122A0D481D2FFE008002A211C8CBD04AD0281CEFFE0080062A0F06A611C8BAD026912E55C0060EA03626130066E00000060EA03460D00000081C0FF4073C077B81BA2213CA070F4DC27B1BCFF65E7FF568A1771BBFF7A44460400000000B1B9FFA2213C25E6FF566A1642D41082213F56780370EA0382212F6068C070668062612FA0EA0362D51062260388156A8862D52068566A9862D530887668058A8992D54089127D098899860200780272D71077348506EFFFC02000B8A7871B0666460C464400006646ED86420000000060EA0372212CA077C06A6762612C60EA0362613E7068118A76A128FF5077B08BF7D817AA77720700076728718AFFB18BFF0C1ECD0F70A7208261429261438193FFE00800DD0A822142922143660A02862E00FD0770EA03A2212DB2213ECD0DB0AAC07A7ABD0FA2C15872612D826142926143D26141F261408185FFE0080070EA03A0EA03B2212FBAAA707AC072612F70EA03D22141F22140A2213CCD0DF0BF20E57B00822142922143D22141563A06B0EA03C2212E8A665066B0A916707CC06899BA7772612E1B7662C6FD60A79362213C5C8CDA6662613C6802A999DAD6CAB1AD01D902816BFFE00800BD018BA2816AFFE008001C8BAD02A54200C606003C528612003C624611003C720610004C02C60E00003C82460D00000062220037B602C68FFF22A0B0102280B2C158A2C214815AFFE0080020EA03322130A2A0B03022C0B2A0241AAA226130A53D000C023145FF42213D2C0AC0200049038150FFE008001DF0001000006810000058100000701000004093004036412161FDFF72D1101A66590691F7FF0C0662671A5C2847B902862500AD078139FFE00800461600006083C0805463CD05BD01AD02E5780056CA06BD05AD0181EFFFE00800CD05BD01AD078133FFE008005A225A6637360F51E6FF0C4B5AA1253600264A1606110051E4FF82271A1A5558058086C05738B006F7FF0082271A87362F82271A3738CCA1DBFFBD071AAA8124FFE00800A1D7FF1C0B1AAA81D8FFE008000C08060300005C388601005C484600005C582D081DF0B010000036C12161CBFF8CA452A06247B60286240040642051C9FF5A51AD05810BFFE00800461700A2D1108108FFE0080060736370C72010B12020A220E56C008C6A52A063C617000000CD07BD01AD058104FFE00800AC74CD07BD01A2D1108100FFE00800A1E6FFB2D11010AA8081FEFEE00800A1E3FF1C0B1AAA81B2FFE008007A227033C056E3F9B1ACFFA1DDFFBAB11AAA81F5FEE00800A1D9FF1C0B1AAA81A9FFE008005D032D051DF00030F43F000000108030F43FFFFFFF003661000C0281FAFF290121FAFF809820C020002908208220C0200028098022105642FF81F5FF0C4BC02000980881F3FFAD0180891089018194FFE008001DF0002000F43F00000200FFFFFDFF44F0FD3F36810022A05531FAFF224111C02000880321F8FF0C1B202820C020002903C02000880321F5FFA2C111202810C020002903A51C00261A02862E008201117CF20B88224110808074B68802C6270021EBFF2088A02808A002001C0BAD01E519004C1226AA02862000C821B811A80165AFFFC61000B2A01010A1202518005C1266BA68D831C821B811A80125DBFFC60900B2A01010A12065160022A06166AA4BC821B811A2210025E5FFC6020065F0FF460100000000A54300A24110C60B0000000022A000B2A001A2C110224110A511002201119000000000001C0BAD01E51100A0BA2010A1202510000C022241100C1BA2C110650F0022011182C2FA808074B62802C6C1FF1DF00000000009401027000050C300007C680040588600406C2A064038320640348500404C82004036610021F6FF0C0A4802381281F7FFE0080081F6FFE008000C0B81F5FFE00800F179FED136FFC179FEB179FEE2A1000C0A0C0281F0FFE008002901271315A1E8FF81EDFFE00800CD03BD0420A220E57700A26100A1E4FF81E8FFE00800B2A00410A120A50500E5E6FFA02A20A1DDFF81E2FFE0080026620581E1FFE008001DF030C0FD3F0000FD3F2CF0FD3F30C0FD3F364100A1FCFFC1FAFF0C0BA0CCC0C0C221815DFEE0080011F8FF65F5FF91F6FF82A0FF890991F5FF89091DF0364100BD03AD028112FFE008001DF000A492004036610042A0C081FDFFE008006D0A479AF43A324D0272A0C0460C000081F8FFE008008D0A771A3D52A0DB579A1AA90152A0DC81F2FFE008008801571A0852A0DD571A040604008D068244001B442054C04793C8860000000C0522A0C081E8FFE00800279AF62D051DF000000090E2FA3F1020F43F00000008B02106403661000C18890181FAFF820801FCD8A1F9FFB109FEC1F8FF06080000C02000826A00C02000C26B00C02000980B5679FFC02000980AD852909D109901980107E9DA8603000C5BAD0181EDFFE00800880107E8F088010C0289031DF000F820F43FF830F43F36610081FDFFC0200038083030245643FF81FAFFC020003228003030245633FF10B12020A22065F7FF0C12A023831DF03661000C0222610021E1FD20A22025FCFF81E4FD31E5FDC020003908C0200038085673FF0C234602000010B12020A220A5F3FF8221008703F00C021DF00000008020F43F00000020000000023641004050148C250C121DF051CDFD8225048062E24066806738EC50A52065F6FF1CF60627000000A5F8FF569AFD8109FFA1CBFD80821047A62E91EFFF90882091EDFFC02000826A0030A32082A00876880AB80A4BAAC02000B9094B9932C32042C4E022C220C60F00809401908820C02000890A40A0144042211B848090744040748D099D04A0989381DAFF4D034088C03039A00603000000A8044A98C02000A9094B444793F10C0481ABFD91D4FFC020009908C020009228005669FF50A52025ECFFA6140286D7FF22A0001DF00000364100A19BFDE5EAFFB2A03530A320818FFFE008008223002D0A80881189031DF000000000000004364100AD0265E8FF4D022184FF8194FDC02000390221F9FFC020002908C020002228005662FF40A42025E6FF900000000820F43F000040003661002183FD20A220A5E4FFAD02BD01E5F8FF3D020C12569A04480122A200202410AD032901E5E2FF217FFD4180FDC02000426200C020004222005664FF30A32025E1FF21EDFF81EDFFC020009802AD03808920C020008902B80122A001A5F6FFA024831DF00000364100A5E1FFA02A20561A023167FDAD03A5DDFF816BFD91DFFFAD03C020009908C0200038085673FF25DCFF1DF00C121DF00000366100615DFD515DFDC020007806505710715BFDC020005906C0200068075159FD5066105159FD505620C0200059075151FD2A64781567B7030C121DF078457052E25057C057B408CD04BD03AD0206100050C52030B32020A220A5DDFF568AFD5084C07088C26D0A0606000070C72030BBA0826100E5DBFF880156BAFB1B667A5560607450B2412AA58736DF50C4C030BBA025DAFF0C130C02A023931DF0000000200001FFFFFFF7000000700000007C2420F43FEB00007000000050BB0000700000FFFF6B0000703B0000700B000070030000702C20F43F00000400364100519FFF91EFFFC02000880561EEFF90A8105122FD7114FF979A56C020008805606810C020006905C02000880561E7FF606820811BFDC020006905C0200068085119FD50661051E2FF505620C020005908720701C02000580862AF003B77605510707074505720C02000590861DAFF066800D7E802864500C020009805606910C020006905C02000980561D4FF606920C02000690577F8028624008207016101FDECA8C02000880571FDFC707810C020007905C02000780651FBFC50771051C4FF505720C02000590661C5FFC65000C020009805811EFF808920C020008905C02000880651F0FC50881051B9FF505820C020005906820701C02000580672AF000B8870551080807450582071B1FFC020005906C02000680751B2FF50661052A0BB505620C020005907863B00000051A9FF61ADFF47F80861ACFFE7E80261ACFFC02000690561D5FC5101FFC02000880650582081D3FCC020005906C02000680851D1FC50661051D1FC505620C020005908720701C0200058087B7762AF00707074605510505720C020005908C62200C020008805606810C020006905620701DC36C02000780561BEFC606710C020006905C60B000000C02000880561E4FE606820C02000690581B7FC720701C0200058080B7762AF00707074605510505720C02000590861ADFC517CFFC02000780650572071ACFCC020005906C02000680751A9FC50661051A9FC5056206179FFC020005907516FFFC020006905A19EFC2A54781A62A00157B702C62C00E5AAFF81A0FCE172FF3CF5C1A0FCD2A1FFFD086D0EC6240080721147A53C916BFFC02000D909C02000790CC02000690FC02000780F5677FFA1B9FEBD0392A01076890AC02000780A4BAA790B4BBB32C34042C4C022C24046140000215CFFC02000790CC02000D26200C02000E26800C0200028085672FF4060144042211B242050744040742D055D0441A5FE6052932D032044C03035A0C60200002A54C02000580559024B222793F1460100A6140246D9FF0C062D061DF000000000E00000F43F0000FFFF0F00CC90004036410081FCFFAD028A8200881121F8FFF62A010C0282C8142A88C02000980881F6FFA0A074808910C088119094358A2930B28240BBC281F1FFE008001DF00000", "entry": 1074333828, "num_params": 2, "params_start": 1074331648, "data": "8E000940A2000940A20009400801094053010940200709403B07094057070940730709407C0709408807094088070940A0070940", "data_start": 1073606704} diff --git a/mos/flash/esp8266/data/stub_flasher.json b/mos/flash/esp8266/data/stub_flasher.json index 80a98c2..990ceb4 100644 --- a/mos/flash/esp8266/data/stub_flasher.json +++ b/mos/flash/esp8266/data/stub_flasher.json @@ -1 +1 @@ -{"code_start": 1074790404, "code": "0000FF3FFF0F000041FEFF71FEFF32D44058A37065115A564055B048154B6547370E1B7479154A4622440428B31B2229B30DF00008000060000000603070FF3F0C0000600400FF3F1C0000601000006021F9FF12C1D0C020002802F97109B1C9A1D991E98129010C0F06340031F3FF880EC0200028034D0E203074B65802062C0051EEFF5058A05805A0050022A0C02713020627000C1242DE40290EF9B406240052DE4092A0DB78A59793040C32861F0092A0C097932522C7FD1B77207F837037117A23E022B0F91222D210F2420828B579A5CC12C60C00F90E0615006618137027117A7221D7FF2077B072D710324704460E0020207405F1FF060D0000000022A0DC27131922A0DD27131B0C42290421CCFFC020003802C020003902060D0022A0C0060100000022A0DBC5EDFF0C22290E1B6D60D074C7BD0286CBFF21C2FFC02000C802C0C0748C9C0C0DE1ADFF46C6FF000000380121BDFF08B1C8A1D891E881F871C02000390212C1300DF000004470FF3F0080000020290000FFFF0000E00D0000737CFF3F4873FF3F801B00003473FF3FA00D000000080000200900000000FFFF500E000050120000687CFF3F777CFF3F1F29000024290000B872FF3F3C72FF3F800B0000BC71FF3F3C71FF3FB0150000F1FF000068E2004048DF004090E1004092A1109011C0E26140ED02280452612C2AA32807BD062A566221448D030C4372612F3036107CF7026143C26142D26141F2613F42612E52612A32612D72612BCCD352212C702280503BC030328032612B62212B1B5667850572212C77BB1252212F0C0262212E290529067CD2464E040000788E68AE72612578FE280E6261247261293C53D81EF8EE989E27B30206FD0331BFFF3022A02802A002006221440C120C0F297E294EF93EF92E202610F79202064100A73832F261249D0FF26125DD0F7221440C222027109C620C14490E5D0BCD0846ED03A7B8E72208001BC8292EC60500292ECD080604002208001BC8292EF261249D0FF26125DD0FA73C23460000CD086221440C233026108CE2390E5D0B06330000A7B8E82208001BC8293E860100220C001BCC293E482E683E8024116022801CF3426133526135626132826136A26134B2613701ABFFC000000C13422133522135622132822136A22134B22137DC0222A02020661056860040203422C2F820368372212D9D0356370240444142C40822A0017182FF0014400062A167370B00044050409152212D4025932093208CE90C19460000CD082C42290E5D0B86B5035D0B061300005D0BCD08FD022261249D02226125DD02A73C28C600005D0BCD086221440C222026109CB20C32290E0C1446A9030000A7B8E31BC82208005D0B060100220C001BCC001D400022A120FF208BDDB63DC0F02024295E202141296EF0F341D2CDFD56D221D0202427BD3BA73C22C600005D0BCD087221440C222027109C620C5206E9FFA7B8E91BC82208005D0B460100220C00C2CC01001D400022A120FF208BDDC6EFFF0000D02024000240F0F0917C8220DD100C09160D05F68D39A73C22C600005D0BCD086221440C222026109C520C6286D4FFA7B8E91BC82208005D0B060100220C001BCC001D400022A120FF208BDDC6F0FF00213AFF9A3E2A23F24200D2CDF8F0F84106130000A73C39C600005D0BCD087221440C222027109CA20C7206C1FFA7B8E9212EFF3208009A4E2A241BC83242005D0BC606003129FF9A4E3A342243008603002125FF320C009A4E2A243242001BCC1B99F64902C6D5FF22DE29420221320220804411309420420223320222804411302420311AFF302230279907461C005D0B80C8202C7206DB00F68D3BA73C24C600005D0BCD086221440C222026109C723C32069FFF0000A7B8E71BC82208005D0B060100220C001BCC001D400022A120FF208BDD46F0FF00F07074726125F0F841D2CDF8460200003C4206DD025D0BCD0862212A67B5F07221250B997245001B55160D085619F9861E000C9286D402005D0BCD0862212A67B5EF8606007221442C621767024682FFC600005D0BCD082C8246B4005D0BCD08A7BCE162212A5026C0C06AC067B2016D0267B9016D092D053D0C4D06526135626132826136926133A26134B2613701F9FEC00000622132522135922133B22137A221348221366ACC6A556099C056B9F886D4020066320C060100005D0BCD080CA2469A00261202C6200022A12029BE21D2FE2C0449CE62CE400C532A2E526135626132826136926133A26134B2613701E2FEC00000B22137A221349221338221366221325221350C020C8732A0902A467244001B223792F50C942A364243001B2266F2F542A1180C770601007243001B222A364792F542AEE84A330C8742A11F2A637246001B2227B4F5066101000C0921B3FE9A2222020027BD38A73C22C600005D0BCD087221440C222027109C520CB24639FFA7B8E91BC82208005D0B060100220C001BCC001D400022A120FF208BDDC6EEFF21A2FE41A2FE9A222202000C130012400033A14049A00B334804F0331020DDC0000240F0F0914A33E029A039B21B99B639892197FE0C032A2E42A120526135826136A26134B2613701A7FEC000000C09522135822136A22134B22137461600F63D39A73C22C600005D0BCD086221440C222026109C520CE28612FFA7B8E91BC82208005D0B060100220C001BCC001D400022A120FF208BDDC6F0FF00217EFE417CFE9A22220200F030242A2E4A22D2CDFD324200F0F3411B9928DE2739A01C3229DE061E016174FE0C0360628242A04062C640606E8022C144526135826136926133A26134B26137626127017EFEC00000722127416AFE22A1202A2732A0000179FEC000002166FE6221270C032A2642A4800174FEC00000786E522135E027A028B27261302261318221360C02922133A22134B221370605006221272A363203001B221033A04223111B444263117221317792E40C022911290120422032A001E0631172C1446A7762612868071B336A226A44622128F022116A71291766B3DFB624063148FE3A22CCC20C077261387CF2C645005D0BCD082C32290E467402007221386221277A3672030016570F1037A048031B6469030C0642612662613A3D06F0331132613932212642213930300462212632612840332042213A6061411B4462612642613A4797D60CA677362D6221387047116044200044114060310C140017400074A18602004221274043906254907A3342A3FF37B4EE86210042212730609440669042969062612656840022569020422022C2FE3039410C06060C003221393060046044C07CF640463062212760449042D40942612842941056B40042212822541020422022C2FE6221261B666261266221263031413261396067C00CB33796BA6221397CF76030043034C030373042A4906221274A337221386033907253003221381B33326138422138622131671402C6B9FF722130262702869D008683000CE2D7B202C62F00C02AC0A62202C6250021F4FDF030942A23E0229022120000221120303196B300202931273D35566209C60B000CA2D7B22A71EBFD7CF6000240F040913036C04040044A337A33E03390329300D603071B422B22273D052D0486F6FF00A73C24C600005D0BCD086221440C222026109C721C020661FE0000A7B8E71BC82208005D0B060100220C001BCC001D400022A120FF208BDD0CE2D7320206DBFF0608000000320C00420C018B2D001D400033A10012400024A120232020FF202BCCD2CD1021C7FDF030942A23E02290321200003311302031968200303931202084C6090071C0FD0CA47CF61B34000440F040912026C04040044A227A22E02290229200D652004D03C6F7FF00000340F0F09130DDC02261250CF327331221A5FD9A3E7221252A237242041B994637000062212566B612CCF91C07726125C600005D0BCD081C120662FF31A7FD2A2322C2F022020022612427BD3BA73C22C600005D0BCD086221440C222026109C521C228622FEA7B8E91BC82208005D0B060100220C001BCC722124001D400022A18BDD20FF20773DC37221240C160017400066A10B66F0661070DDC0000740F0F091218FFD7221250C037A2222C2F02202002A66217CFD2A292A2E22C20466B70B3188FD904E803034803203044D06526135626132826136926133A26134B26137018BFDC000006221329221335221356A99822136A22134B221374600000C0948BE28CE2A2427B9028678FF979207060300005D0BCD081C52062AFF0000003172FD22CE403A3E526135826136926133A26134B261370175FDC00000215AFD38BE48CE2A33215AFD3A3E2A2E4B33016FFDC00000B22137A22134922133822136522135286E0B22296E222E06D602B8C02AC0E642090CE3D7B314463100000062212A5036C0A62302064B0086F9FF00A62202862300F02094E022902212B000221120303196B300202931273D34562209860B000CA2D7B2297CF672A4B0000240F040913036C04040044A337A33E03390329300D6C3061B422B22273D042D0486F6FFA73C22C600005D0BCD087221440C222027109C521C7246BDFDA7B8E91BC82208005D0B060100220C001BCC001D400022A120FF208BDD0CE2D7320206DDFFC6070000320C00420C018B2D001D400033A10012400024A1202320F0F2202BCCD2CD10F02094E022903212B0003311302031969200303931202084060A00000CA47CF672A4B01B34000440F040912026C04040044A227A22E02290229200D652004D03C6F7FF009D0222A0FF000340F0F09130DDC097B202C64800C60200001C8206DF0000005D0BCD0862212A67B5EE9245001B5586ADFF0CE7D73719320C01220C00803311202320001D400022A120FF202BCCD2CD1032A0B0F020943A22E02290221200002211203031202931D663020CA41B247CF6000440F040913036C04040044A3372A4B07A33E03390329300D643004D0286F6FF000240F0F09120DDC022A1009D032703028624000CE4D73419420C01220C00804411202420001D400022A120FF202BCCD2CD10F0209462A0B06A22E02290421200004411407031726126404931D6C7020CA67221261B467CF2000640F060916060047022C06A2262A4B06A22E02290229200226126D642006D0406F5FF72212632450022A100000440F0F09140DDC02707081B559D0746030000003221263245012B55066CFF0090908466F90206B50022AEFF2A2931C7FCE022112A33380332612431C5FC6221242A23980216B60567BD3DA73C22C600005D0BCD087221440C222027109C521C92463BFDA7B8E91BC82208005D0B060100220C001BCC001D400022A120FF208BDD62212406F0FF00007221240C120017400022A10B22F0221070DDC0000740F0F0912A990CE2D7B202C62E00C02AC0A62202C62400F02094E0229022D20F22120000221120303196B300202931273D34564209860B000CA2D7B229719EFC7CF6000240F040913036C04040044A337A33E03390329300D6E3061B422B22273D042D0486F6FFA73C23060100005D0BCD086221440C222026109C521CA2860CFDA7B8E91BC82208005D0B060100220C001BCC001D400022A120FF208BDD0CE2D7320206DCFF0608000000320C00420C018B2D001D400033A10012400024A120232020FF202BCCD2CD10F02094E0229022D20F32120000331130203196A200303931202084460A0000007173FC0CA47CF61B34000440F040912026C04040044A227A22E02290229200D652004D03C6F7FF00000340F0F09130DDC03167FCE022112A3338033261243165FC7221242A23280222612516270677BD3EA73C23060100005D0BCD086221440C222026109C521CB286D7FCA7B8E91BC82208005D0B060100220C001BCC001D400022A120FF208BDD722124C6EFFF00006221240C120016400022A17221250B22F022102A77000640F0F09160DDC072612562212C7221256065C062612977B61062212D8CA6C600005D0BCD082C5206F3FD72212962212532212C6027C072212B7022102A233D0257B2013D0562212A9A3337363F061200003C52290E0C24465D005D0BCD084600009D0272212A77B5E76221297221257026C062212B72212C6022102A276221292202001B662245006261291B550B2956E9FC9D0246C2FE000032020092C9FD3245003202013245013202023B223245023B55E639E3E6190246B9FE3202003245006629052202012245019A5546B4FE285E07E202469CFC72214407E702063800D0202427BD3AA73C23060100005D0BCD086221440C222026109C522C028688FCA7B8E91BC82208005D0B060100220C001BCC001D400022A120FF208BDDC6EFFF00D02024000240F0F0917C8220DD100C09168D04F68D38A73C22C600005D0BCD087221440C222027109C522C928674FCA7B8E91BC82208005D0B060100220C001BCC001D400022A120FF208BDDC6F0FFF02074D2CDF8F0F841460B0000A73C24C600005D0BCD086221440C222026109C722CA20663FC0000A7B8E71BC82208005D0B060100220C001BCC384E1B99803311302220294EF6490706DDFF005D0BCD082C22290E0C044601005D0BCD087CF4722125622124798E72212922212E69AED91EF9EE999E79FE80CCC0C902B0C5C052212F622144C9050C932D04378602C63A007CF2279402C63800687E31C9FB2D0C426133B2613760F0F460D0F501C7FBC000007D020C78422133B2213746250000920300FAF9920301DA6F9AFF920302FA669AFF920303FA669AFF920304FA669AFF920305FA669AFF920306FA669AFF920307FA669AFFFAD68B332A937739C0702341B022B0B0906086020000003202001B223AFFFADD2A39BD027733EF31A9FB2D0F426133726132826136B2613701A6FBC0000031A4FBFD022D0D01A3FBC00000722132B2213770CCC0822136719CFB422133DD028C7C3D0BB028C086E6FF00006D11FAF6F97E2D04DC047221442D0C076709684E7CE360FFC0F0239302214392A110C22142D22141E22140F2213F9A110DF000F42A0000102B000091FFFF12C1F0C261020261039011C020722022C110C2D22A0C0229417C92326C3C2066100C43302620526C3D3D0441F2FF290122C1105D076D074A4272D12B85DFFE7CF3CC12322C3C91ECFF2D039A110831C82112C1100DF000000014C7FF3F04020060000200603C44004012C1F0D911DD0221FAFFC9212802CD03093101FAFFC0000021F7FFC02000D90221F6FFC02000C26200204220C020003804302C105642FF0831C821D81112C1100DF000000080FE3F304000005400104024000060640000940000800000000100000000011898004078480040880F0040A80F0040349800404C4A004000990040980F004092A1409011C022613C22C15832613D02614FC2614ED2614DE2614CF2614B42613F01EFFFC0000032213C3C223030B456D32922213D2030B43C3256232901E9FFC00000ED023C42565E28D1C6FA41DDFF3D0E2D0D013CFBC00000411FFB21D8FF3D0E0138FBC0000031D8FF4D0D0C5201DEFFC0000021D5FFC2A0D4C020003802CAC132613E31D2FFC02000390221C5FA32A101C020004802303420C0200039022C0201D2FFC0000022A0B03D0E2A212C440124FBC000003D0E1C842D0C0121FBC0000022A0F02A21291C1C832D0C85710020EA032261308B2C22614046690000F0EA0332213F162304860D0032213DE023C031FBFA27B31B22213C2030F4DC2331B5FF85E7FF56E21521B3FF2AEE46040000000022213C31B1FF05E6FF56C214E2DE10222C0022D210273EBF20EA0332212FF0F3C020FF80F2612F40EA0322DD30322D01287272DD402A2332DD1038335D073A2232DD2038533A22291C380D2897C0200068A52796026643F4708211208880D088B022C804664302C63C0030EA0352212C4045C030348032612CF0EA0322D2102202048B6858180762232188FF31CEFA4D060C1672614382614405D6FF5D02722143822144660202462E006180FF20EA0332212D4D05F093C02A993D0622C15892612D5261426261417261438261440183FFC0000020EA0330EA0342212F4A332023C022612FF0EA0352214262214122213C4D053D06017AFFC0000052214272214382214456120630EA0342212E2918F0F4C048973AFF1B3442C4FD40328322213C39975A2222613C280C32C1582A555C842D01590CF2612E01BDFAC000002221403D010168FFC000002D0C1C83455800460700003C5CC612003C6C8611003C7C461000004C0CC60E003C8C860D00000000280C32213D37B202C693FF32A0B01A3322C31432C1580157FFC0000020EA033221300C0C3022C022613022A0B01A222C430553002144FF32213EC0200032620022A020014DFFC000002D0C02214F92A140C2214ED2214DE2214CF2214B9A110DF000000010000068100000581000007010000074100000781000007C100000801000001C4B0040803C004091FDFF12C1E061F7FFC961E941F9310971D9519011C01A66290621F3FFC2D1101A22390231F2FF0C0F1A33590331EAFFF26C1AED045C2247B3028636002D0C0124FFC0000021E5FF41EAFF2A611A4469040622000021E4FF1A222802F0D2C0D7BE01DD0E31E0FF4D0D1A3328033D0101E2FFC00000561209D03D2010212001DFFFC000004D0D2D0C3D010115FFC0000041D5FFDAFF1A444804D0648041D2FF1A4462640061D1FF106680622600673F1331D0FF10338028030C434543002642164613000041CAFF222C1A1A444804202FC047328006F6FF222C1A273F3861C2FF222C1A1A6668066732B921BDFF3D0C10228001FDFEC0000021BAFF1C031A2201BFFFC000000C024603005C3206020000005C424600005C5291B7FF9A110871C861D851E841F83112C1200DF0B0100000C0100000D010000012C1E091FEFFC961D951E9410971F931CD039011C0ED02DD0431A1FF9C1422A06247B302062D0021F4FF1A22490286010021F1FF1A223902219CFF2AF12D0F01D6FEC00000461C0022D11001D3FEC0000021E9FFFD0C1A222802C7B20621E6FF1A22F8022D0E3D014D0F0195FFC000008C5222A063C6180000218BFF3D01102280F04F2001C9FEC00000AC7D22D1103D014D0F01C5FEC0000021D6FF32D11010228001C3FEC0000021D3FF1C031A220185FFC00000FAEEF0CCC056ACF821CDFF317AFF1A223A3101BAFEC0000021C9FF1C031A22017CFFC000002D0C91C8FF9A110871C861D851E841F83112C1200DF00000001040020060FFFFFF0012C1E00C022901318AFE21FAFF026107C961C02000226300C02000C80320CC10564CFF21F5FFC02000380221F4FF20231029010C432D010164FFC0000008712D0CC86112C1200DF02000006000000200FFFFFDFF1C71FF3F8449004012C1D0C9A15C52C1F9FF02610B224111C02000280C31F6FF302220C02000290CC02000380C21F3FF202310C02000290C0C1322C1118522002612028630007CF22241102201110B22202074B68202C6290031E9FF3022A02802A0020000000010212032A010851F0066A20B280138114821C59EFF861F004C12461E00000010212032A010851D0066B20D2801381148215831C5CDFF4617005C12061600000010212032A010851B0066A20C28013811482145DFFF860F000022A061C60D0045EEFF460C0000000001CDFFC000004609000C022241100C1322C110C51600220111060B000032A0101021204517003D022D014515000C0222411022C1100C1385140022011132C2FA303074B62302C6BFFF08B1C8A112C1300DF0000000000010404F4841491400F03F1027000050C3000000110040A8100040BC0F0040583F00402C4C0040CC2E00404C26004021F4FF12C1E028020971291121F2FFC961290122A00001F5FFC0000001F5FFC0000021EDFF0C13C02000480251F4FE303420C020003902412DFE312DFE716DF922A00062A10001EBFFC00000C8118CFC21E3FF01E9FFC000000C02C03C2005150021DFFF01E5FFC0000010212032A00485080005E4FFCD0221D9FF01DFFFC00000666C1E4B2131D7FF4600004B22C0200048023794F531D4FFC0200039023DF046010001D6FFC000000871C86112C1200DF000000080FE3F3040FF3F2C70FF3F3040FF3F21FCFF41FCFF12C1F02044C032A000404221026103015FF9C0000011F7FFC5F1FF31F5FF22A0FF226300083131F4FF12C11029030DF0000012C1F002610301C7FEC00000083112C1100DF000643B004012C1D0E98109B1C9A1D991F97129013911E2A0C001FAFFC00000CD02E792F40C0DE2A0C0F2A0DB860D00000001F4FFC00000204220E71240F7921C22610201EFFFC0000052A0DC482157120952A0DD571205460500004D0C3801DA234242001BDD3811379DC5C6000000000C0DC2A0C001E3FFC00000C792F608B12D0DC8A1D891E881F87112C1300DF000001400006000751903FFFF0F001CE2004012C1F0C921C0C211202CC041F9FF80C21121F8FF4ACC3041412A2402610301F7FFC0000031F5FF0831302210C02000290CC82112C1100DF0", "entry": 1074797648, "num_params": 1, "params_start": 1074790400, "data": "90001040A5001040A5001040040110405901104083021040BD021040FC021040CF0310406D1210402104104073041040C10410406D121040A405104027061040E00610406D1210406D1210407B0710406D121040430A1040080B10403B0B10406D1210406D121040E80B10406D121040D00C10407B0D1040D80E1040930F1040671010406D1210406D1210406D1210406D121040A31110406D12104060121040940810408F031040C4101040C805104023051040BF051040F31110403B1210406D1210406D1210406D1210406D1210406D1210406D1210406D1210406D1210404B05104081051040FD1010409F1A1040BE1A1040DF1A1040FE1A1040071B1040101B1040101B1040241B1040010000000200000003000000040000000500000007000000090000000D00000011000000190000002100000031000000410000006100000081000000C100000001010000810100000102000001030000010400000106000001080000010C00000110000001180000012000000130000001400000016000000000000000000000000000000000000000000000000000000100000001000000020000000200000003000000030000000400000004000000050000000500000006000000060000000700000007000000080000000800000009000000090000000A0000000A0000000B0000000B0000000C0000000C0000000D0000000D0000000000000000000000030000000400000005000000060000000700000008000000090000000A0000000B0000000D0000000F0000001100000013000000170000001B0000001F000000230000002B000000330000003B0000004300000053000000630000007300000083000000A3000000C3000000E30000000201000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000100000001000000010000000200000002000000020000000200000003000000030000000300000003000000040000000400000004000000040000000500000005000000050000000500000000000000000000000000000010111200080709060A050B040C030D020E010F0001010000010000000400000000000000767CFF3F010000007B7CFF3F02000000867CFF3FFFFFFFFF967CFF3FFEFFFFFFA17CFF3FFDFFFFFFAE7CFF3FFCFFFFFFB97CFF3FFBFFFFFFC77CFF3FFAFFFFFFD17CFF3FF0D8FFFFDF7CFF3F000000006410B71DC8206E3BAC30D9269041DC76F4516B6B5861B24D3C7105502083B8ED44930FF0E8A3D6D68CB361CBB0C2649BD4D2D38678E20AA01CF2BDBD00000000010000000600000020000000100000002000000080000000000100000002000000030000DC050000000000000100000003000000070000000F0000001F0000003F0000007F000000FF000000FF010000FF030000FF070000FF0F0000FF1F0000FF3F0000FF7F0000FFFF000010111200080709060A050B040C030D020E010F00000808090909090A0A0A0A0A0A0A0A0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D00001213141415151616161617171717181818181818181819191919191919191A1A1A1A1A1A1A1A1A1A1A1A1A1A1A1A1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D000000000101010102020202020202020303030303030303030303030303030304040404040404040404040404040404040404040404040404040404040404040505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050506060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070700010203040405050606060607070707080808080808080809090909090909090A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F10101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111000000000000000001010101010101010202020202020202020202020202020203030303030303030303030303030303030303030303030303030303030303030404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040405050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505000001010201030104010501060107010801090109010A010A010B010B010C010C010D010D010D010D010E010E010E010E010F010F010F010F011001100110011001110111011101110111011101110111011201120112011201120112011201120113011301130113011301130113011301140114011401140114011401140114011501150115011501150115011501150115011501150115011501150115011501160116011601160116011601160116011601160116011601160116011601160117011701170117011701170117011701170117011701170117011701170117011801180118011801180118011801180118011801180118011801180118011801190119011901190119011901190119011901190119011901190119011901190119011901190119011901190119011901190119011901190119011901190119011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011D0102030700392E312E3135000505040003030B0073747265616D20656E64006E6565642064696374696F6E6172790066696C65206572726F720073747265616D206572726F720064617461206572726F72006F7574206F66206D656D6F727900627566206572726F720076657273696F6E206572726F7200706172616D65746572206572726F720000", "data_start": 1073705008} +{"code_start": 1074790408, "code": "0000FF3FFF0F000041FEFF71FEFF32D44058A37065115A564055B048154B6547370E1B7479154A4622440428B31B2229B30DF00008000060000000603070FF3F0C0000600400FF3F1C0000601000006021F9FF12C1D0C020002802F97109B1C9A1D991E98129010C0F06340031F3FF880EC0200028034D0E203074B65802062C0051EEFF5058A05805A0050022A0C02713020627000C1242DE40290EF9B406240052DE4092A0DB78A59793040C32861F0092A0C097932522C7FD1B77207F837037117A23E022B0F91222D210F2420828B579A5CC12C60C00F90E0615006618137027117A7221D7FF2077B072D710324704460E0020207405F1FF060D0000000022A0DC27131922A0DD27131B0C42290421CCFFC020003802C020003902060D0022A0C0060100000022A0DBC5EDFF0C22290E1B6D60D074C7BD0286CBFF21C2FFC02000C802C0C0748C9C0C0DE1ADFF46C6FF000000380121BDFF08B1C8A1D891E881F871C02000390212C1300DF000004470FF3F0080000020290000FFFF0000E00D0000737CFF3F4873FF3F801B00003473FF3FA00D000000080000200900000000FFFF500E000050120000687CFF3F777CFF3F1F29000024290000B872FF3F3C72FF3F800B0000BC71FF3F3C71FF3FB0150000F1FF000068E2004048DF004090E1004092A1109011C0E26140ED02280452612C2AA32807BD062A566221448D030C4372612F3036107CF7026143C26142D26141F2613F42612E52612A32612D72612BCCD352212C702280503BC030328032612B62212B1B5667850572212C77BB1252212F0C0262212E290529067CD2464E040000788E68AE72612578FE280E6261247261293C53D81EF8EE989E27B30206FD0331BFFF3022A02802A002006221440C120C0F297E294EF93EF92E202610F79202064100A73832F261249D0FF26125DD0F7221440C222027109C620C14490E5D0BCD0846ED03A7B8E72208001BC8292EC60500292ECD080604002208001BC8292EF261249D0FF26125DD0FA73C23460000CD086221440C233026108CE2390E5D0B06330000A7B8E82208001BC8293E860100220C001BCC293E482E683E8024116022801CF3426133526135626132826136A26134B2613701ABFFC000000C13422133522135622132822136A22134B22137DC0222A02020661056860040203422C2F820368372212D9D0356370240444142C40822A0017182FF0014400062A167370B00044050409152212D4025932093208CE90C19460000CD082C42290E5D0B86B5035D0B061300005D0BCD08FD022261249D02226125DD02A73C28C600005D0BCD086221440C222026109CB20C32290E0C1446A9030000A7B8E31BC82208005D0B060100220C001BCC001D400022A120FF208BDDB63DC0F02024295E202141296EF0F341D2CDFD56D221D0202427BD3BA73C22C600005D0BCD087221440C222027109C620C5206E9FFA7B8E91BC82208005D0B460100220C00C2CC01001D400022A120FF208BDDC6EFFF0000D02024000240F0F0917C8220DD100C09160D05F68D39A73C22C600005D0BCD086221440C222026109C520C6286D4FFA7B8E91BC82208005D0B060100220C001BCC001D400022A120FF208BDDC6F0FF00213AFF9A3E2A23F24200D2CDF8F0F84106130000A73C39C600005D0BCD087221440C222027109CA20C7206C1FFA7B8E9212EFF3208009A4E2A241BC83242005D0BC606003129FF9A4E3A342243008603002125FF320C009A4E2A243242001BCC1B99F64902C6D5FF22DE29420221320220804411309420420223320222804411302420311AFF302230279907461C005D0B80C8202C7206DB00F68D3BA73C24C600005D0BCD086221440C222026109C723C32069FFF0000A7B8E71BC82208005D0B060100220C001BCC001D400022A120FF208BDD46F0FF00F07074726125F0F841D2CDF8460200003C4206DD025D0BCD0862212A67B5F07221250B997245001B55160D085619F9861E000C9286D402005D0BCD0862212A67B5EF8606007221442C621767024682FFC600005D0BCD082C8246B4005D0BCD08A7BCE162212A5026C0C06AC067B2016D0267B9016D092D053D0C4D06526135626132826136926133A26134B2613701F9FEC00000622132522135922133B22137A221348221366ACC6A556099C056B9F886D4020066320C060100005D0BCD080CA2469A00261202C6200022A12029BE21D2FE2C0449CE62CE400C532A2E526135626132826136926133A26134B2613701E2FEC00000B22137A221349221338221366221325221350C020C8732A0902A467244001B223792F50C942A364243001B2266F2F542A1180C770601007243001B222A364792F542AEE84A330C8742A11F2A637246001B2227B4F5066101000C0921B3FE9A2222020027BD38A73C22C600005D0BCD087221440C222027109C520CB24639FFA7B8E91BC82208005D0B060100220C001BCC001D400022A120FF208BDDC6EEFF21A2FE41A2FE9A222202000C130012400033A14049A00B334804F0331020DDC0000240F0F0914A33E029A039B21B99B639892197FE0C032A2E42A120526135826136A26134B2613701A7FEC000000C09522135822136A22134B22137461600F63D39A73C22C600005D0BCD086221440C222026109C520CE28612FFA7B8E91BC82208005D0B060100220C001BCC001D400022A120FF208BDDC6F0FF00217EFE417CFE9A22220200F030242A2E4A22D2CDFD324200F0F3411B9928DE2739A01C3229DE061E016174FE0C0360628242A04062C640606E8022C144526135826136926133A26134B26137626127017EFEC00000722127416AFE22A1202A2732A0000179FEC000002166FE6221270C032A2642A4800174FEC00000786E522135E027A028B27261302261318221360C02922133A22134B221370605006221272A363203001B221033A04223111B444263117221317792E40C022911290120422032A001E0631172C1446A7762612868071B336A226A44622128F022116A71291766B3DFB624063148FE3A22CCC20C077261387CF2C645005D0BCD082C32290E467402007221386221277A3672030016570F1037A048031B6469030C0642612662613A3D06F0331132613932212642213930300462212632612840332042213A6061411B4462612642613A4797D60CA677362D6221387047116044200044114060310C140017400074A18602004221274043906254907A3342A3FF37B4EE86210042212730609440669042969062612656840022569020422022C2FE3039410C06060C003221393060046044C07CF640463062212760449042D40942612842941056B40042212822541020422022C2FE6221261B666261266221263031413261396067C00CB33796BA6221397CF76030043034C030373042A4906221274A337221386033907253003221381B33326138422138622131671402C6B9FF722130262702869D008683000CE2D7B202C62F00C02AC0A62202C6250021F4FDF030942A23E0229022120000221120303196B300202931273D35566209C60B000CA2D7B22A71EBFD7CF6000240F040913036C04040044A337A33E03390329300D603071B422B22273D052D0486F6FF00A73C24C600005D0BCD086221440C222026109C721C020661FE0000A7B8E71BC82208005D0B060100220C001BCC001D400022A120FF208BDD0CE2D7320206DBFF0608000000320C00420C018B2D001D400033A10012400024A120232020FF202BCCD2CD1021C7FDF030942A23E02290321200003311302031968200303931202084C6090071C0FD0CA47CF61B34000440F040912026C04040044A227A22E02290229200D652004D03C6F7FF00000340F0F09130DDC02261250CF327331221A5FD9A3E7221252A237242041B994637000062212566B612CCF91C07726125C600005D0BCD081C120662FF31A7FD2A2322C2F022020022612427BD3BA73C22C600005D0BCD086221440C222026109C521C228622FEA7B8E91BC82208005D0B060100220C001BCC722124001D400022A18BDD20FF20773DC37221240C160017400066A10B66F0661070DDC0000740F0F091218FFD7221250C037A2222C2F02202002A66217CFD2A292A2E22C20466B70B3188FD904E803034803203044D06526135626132826136926133A26134B26137018BFDC000006221329221335221356A99822136A22134B221374600000C0948BE28CE2A2427B9028678FF979207060300005D0BCD081C52062AFF0000003172FD22CE403A3E526135826136926133A26134B261370175FDC00000215AFD38BE48CE2A33215AFD3A3E2A2E4B33016FFDC00000B22137A22134922133822136522135286E0B22296E222E06D602B8C02AC0E642090CE3D7B314463100000062212A5036C0A62302064B0086F9FF00A62202862300F02094E022902212B000221120303196B300202931273D34562209860B000CA2D7B2297CF672A4B0000240F040913036C04040044A337A33E03390329300D6C3061B422B22273D042D0486F6FFA73C22C600005D0BCD087221440C222027109C521C7246BDFDA7B8E91BC82208005D0B060100220C001BCC001D400022A120FF208BDD0CE2D7320206DDFFC6070000320C00420C018B2D001D400033A10012400024A1202320F0F2202BCCD2CD10F02094E022903212B0003311302031969200303931202084060A00000CA47CF672A4B01B34000440F040912026C04040044A227A22E02290229200D652004D03C6F7FF009D0222A0FF000340F0F09130DDC097B202C64800C60200001C8206DF0000005D0BCD0862212A67B5EE9245001B5586ADFF0CE7D73719320C01220C00803311202320001D400022A120FF202BCCD2CD1032A0B0F020943A22E02290221200002211203031202931D663020CA41B247CF6000440F040913036C04040044A3372A4B07A33E03390329300D643004D0286F6FF000240F0F09120DDC022A1009D032703028624000CE4D73419420C01220C00804411202420001D400022A120FF202BCCD2CD10F0209462A0B06A22E02290421200004411407031726126404931D6C7020CA67221261B467CF2000640F060916060047022C06A2262A4B06A22E02290229200226126D642006D0406F5FF72212632450022A100000440F0F09140DDC02707081B559D0746030000003221263245012B55066CFF0090908466F90206B50022AEFF2A2931C7FCE022112A33380332612431C5FC6221242A23980216B60567BD3DA73C22C600005D0BCD087221440C222027109C521C92463BFDA7B8E91BC82208005D0B060100220C001BCC001D400022A120FF208BDD62212406F0FF00007221240C120017400022A10B22F0221070DDC0000740F0F0912A990CE2D7B202C62E00C02AC0A62202C62400F02094E0229022D20F22120000221120303196B300202931273D34564209860B000CA2D7B229719EFC7CF6000240F040913036C04040044A337A33E03390329300D6E3061B422B22273D042D0486F6FFA73C23060100005D0BCD086221440C222026109C521CA2860CFDA7B8E91BC82208005D0B060100220C001BCC001D400022A120FF208BDD0CE2D7320206DCFF0608000000320C00420C018B2D001D400033A10012400024A120232020FF202BCCD2CD10F02094E0229022D20F32120000331130203196A200303931202084460A0000007173FC0CA47CF61B34000440F040912026C04040044A227A22E02290229200D652004D03C6F7FF00000340F0F09130DDC03167FCE022112A3338033261243165FC7221242A23280222612516270677BD3EA73C23060100005D0BCD086221440C222026109C521CB286D7FCA7B8E91BC82208005D0B060100220C001BCC001D400022A120FF208BDD722124C6EFFF00006221240C120016400022A17221250B22F022102A77000640F0F09160DDC072612562212C7221256065C062612977B61062212D8CA6C600005D0BCD082C5206F3FD72212962212532212C6027C072212B7022102A233D0257B2013D0562212A9A3337363F061200003C52290E0C24465D005D0BCD084600009D0272212A77B5E76221297221257026C062212B72212C6022102A276221292202001B662245006261291B550B2956E9FC9D0246C2FE000032020092C9FD3245003202013245013202023B223245023B55E639E3E6190246B9FE3202003245006629052202012245019A5546B4FE285E07E202469CFC72214407E702063800D0202427BD3AA73C23060100005D0BCD086221440C222026109C522C028688FCA7B8E91BC82208005D0B060100220C001BCC001D400022A120FF208BDDC6EFFF00D02024000240F0F0917C8220DD100C09168D04F68D38A73C22C600005D0BCD087221440C222027109C522C928674FCA7B8E91BC82208005D0B060100220C001BCC001D400022A120FF208BDDC6F0FFF02074D2CDF8F0F841460B0000A73C24C600005D0BCD086221440C222026109C722CA20663FC0000A7B8E71BC82208005D0B060100220C001BCC384E1B99803311302220294EF6490706DDFF005D0BCD082C22290E0C044601005D0BCD087CF4722125622124798E72212922212E69AED91EF9EE999E79FE80CCC0C902B0C5C052212F622144C9050C932D04378602C63A007CF2279402C63800687E31C9FB2D0C426133B2613760F0F460D0F501C7FBC000007D020C78422133B2213746250000920300FAF9920301DA6F9AFF920302FA669AFF920303FA669AFF920304FA669AFF920305FA669AFF920306FA669AFF920307FA669AFFFAD68B332A937739C0702341B022B0B0906086020000003202001B223AFFFADD2A39BD027733EF31A9FB2D0F426133726132826136B2613701A6FBC0000031A4FBFD022D0D01A3FBC00000722132B2213770CCC0822136719CFB422133DD028C7C3D0BB028C086E6FF00006D11FAF6F97E2D04DC047221442D0C076709684E7CE360FFC0F0239302214392A110C22142D22141E22140F2213F9A110DF000F42A0000102B000091FFFF12C1F0C261020261039011C020722022C110C2D22A0C0229417C92326C3C2066100C43302620526C3D3D0441F2FF290122C1105D076D074A4272D12B85DFFE7CF3CC12322C3C91ECFF2D039A110831C82112C1100DF000000014C7FF3F04020060000200603C44004012C1F0D911DD0221FAFFC9212802CD03093101FAFFC0000021F7FFC02000D90221F6FFC02000C26200204220C020003804302C105642FF0831C821D81112C1100DF000000080FE3F304000005800104024000060640000940000800000000100000000011898004078480040880F0040A80F0040349800404C4A004000990040980F004092A1409011C022613C22C15832613D02614FC2614ED2614DE2614CF2614B42613F01EFFFC0000032213C3C223030B456D32922213D2030B43C3256232901E9FFC00000ED023C42565E28D1C6FA41DDFF3D0E2D0D013CFBC00000411FFB21D8FF3D0E0138FBC0000031D8FF4D0D0C5201DEFFC0000021D5FFC2A0D4C020003802CAC132613E31D2FFC02000390221C5FA32A101C020004802303420C0200039022C0201D2FFC0000022A0B03D0E2A212C440124FBC000003D0E1C842D0C0121FBC0000022A0F02A21291C1C832D0C45720020EA032261308B2C22614046690000F0EA0332213F162304860D0032213DE023C031FBFA27B31B22213C2030F4DC2331B5FF85E7FF56E21521B3FF2AEE46040000000022213C31B1FF05E6FF56C214E2DE10222C0022D210273EBF20EA0332212FF0F3C020FF80F2612F40EA0322DD30322D01287272DD402A2332DD1038335D073A2232DD2038533A22291C380D2897C0200068A52796026643F4708211208880D088B022C804664302C63C0030EA0352212C4045C030348032612CF0EA0322D2102202048B6858180762232188FF31CEFA4D060C1672614382614405D6FF5D02722143822144660202462E006180FF20EA0332212D4D05F093C02A993D0622C15892612D5261426261417261438261440183FFC0000020EA0330EA0342212F4A332023C022612FF0EA0352214262214122213C4D053D06017AFFC0000052214272214382214456120630EA0342212E2918F0F4C048973AFF1B3442C4FD40328322213C39975A2222613C280C32C1582A555C842D01590CF2612E01BDFAC000002221403D010168FFC000002D0C1C83055900460700003C5CC612003C6C8611003C7C461000004C0CC60E003C8C860D00000000280C32213D37B202C693FF32A0B01A3322C31432C1580157FFC0000020EA033221300C0C3022C022613022A0B01A222C43C553002144FF32213EC0200032620022A020014DFFC000002D0C02214F92A140C2214ED2214DE2214CF2214B9A110DF000000010000068100000581000007010000074100000781000007C100000801000001C4B0040803C004091FDFF12C1E061F7FFC961E941F9310971D9519011C01A66290621F3FFC2D1101A22390231F2FF0C0F1A33590331EAFFF26C1AED045C2247B3028636002D0C0124FFC0000021E5FF41EAFF2A611A4469040622000021E4FF1A222802F0D2C0D7BE01DD0E31E0FF4D0D1A3328033D0101E2FFC00000561209D03D2010212001DFFFC000004D0D2D0C3D010115FFC0000041D5FFDAFF1A444804D0648041D2FF1A4462640061D1FF106680622600673F1331D0FF10338028030C430544002642164613000041CAFF222C1A1A444804202FC047328006F6FF222C1A273F3861C2FF222C1A1A6668066732B921BDFF3D0C10228001FDFEC0000021BAFF1C031A2201BFFFC000000C024603005C3206020000005C424600005C5291B7FF9A110871C861D851E841F83112C1200DF0B0100000C0100000D010000012C1E091FEFFC961D951E9410971F931CD039011C0ED02DD0431A1FF9C1422A06247B302062D0021F4FF1A22490286010021F1FF1A223902219CFF2AF12D0F01D6FEC00000461C0022D11001D3FEC0000021E9FFFD0C1A222802C7B20621E6FF1A22F8022D0E3D014D0F0195FFC000008C5222A063C6180000218BFF3D01102280F04F2001C9FEC00000AC7D22D1103D014D0F01C5FEC0000021D6FF32D11010228001C3FEC0000021D3FF1C031A220185FFC00000FAEEF0CCC056ACF821CDFF317AFF1A223A3101BAFEC0000021C9FF1C031A22017CFFC000002D0C91C8FF9A110871C861D851E841F83112C1200DF00000001040020060FFFFFF0012C1E00C022901318AFE21FAFF026107C961C02000226300C02000C80320CC10564CFF21F5FFC02000380221F4FF20231029010C432D010164FFC0000008712D0CC86112C1200DF02000006000000200FFFFFDFF1C71FF3F8449004012C1D0C9A15C52C1F9FF02610B224111C02000280C31F6FF302220C02000290CC02000380C21F3FF202310C02000290C0C1322C1114523002612028630007CF22241102201110B22202074B68202C6290031E9FF3022A02802A0020000000010212032A01045200066A20B280138114821C59EFF861F004C12461E00000010212032A010451E0066B20D2801381148215831C5CDFF4617005C12061600000010212032A010451C0066A20C28013811482145DFFF860F000022A061C60D0045EEFF460C0000000001CDFFC000004609000C022241100C1322C110851700220111060B000032A0101021200518003D022D010516000C0222411022C1100C1345150022011132C2FA303074B62302C6BFFF08B1C8A112C1300DF0000000000010401400F03F1027000050C3000000110040A8100040BC0F0040583F0040444600402C4C0040CC2E00404C26004021F4FF12C1E03802C961C8120C0209713911D95101F5FFC0000001F4FFC0000001F4FFC0000021EBFF0C13C02000480251F3FE303420C020003902412CFE312CFE716CF90C0262A1000C0D01EAFFC00000D26100D71C1421E0FF01E7FFC0000038112D0D4D0C45150022610021DCFF01E2FFC0000010212032A004C5080045E3FF20C22021D5FF01DCFFC00000666C1E4B2131D3FF4600004B22C0200048023794F531D0FFC0200039023DF046010001D3FFC000000871C861D85112C1200DF00080FE3F3040FF3F2C70FF3F3040FF3F21FCFF41FCFF12C1F02044C032A000404221026103015CF9C0000011F7FF05F1FF31F5FF22A0FF226300083131F4FF12C11029030DF0000012C1F002610301C4FEC00000083112C1100DF000643B004012C1D0E98109B1C9A1D991F97129013911E2A0C001FAFFC00000CD02E792F40C0DE2A0C0F2A0DB860D00000001F4FFC00000204220E71240F7921C22610201EFFFC0000052A0DC482157120952A0DD571205460500004D0C3801DA234242001BDD3811379DC5C6000000000C0DC2A0C001E3FFC00000C792F608B12D0DC8A1D891E881F87112C1300DF0000014000060FFFF0F001CE20040D83900405D02C022115022C061FAFF80221112C1F06A22C921C02000C80221F6FF093120CC10302C823D04D91150D07401F3FFC000003D022D0D01F1FFC0000008312D0CD811C82112C1100DF0000000", "entry": 1074797664, "num_params": 2, "params_start": 1074790400, "data": "94001040A9001040A9001040080110405D01104087021040C102104000031040D3031040711210402504104077041040C504104071121040A80510402B061040E406104071121040711210407F07104071121040470A10400C0B10403F0B10407112104071121040EC0B104071121040D40C10407F0D1040DC0E1040970F10406B10104071121040711210407112104071121040A711104071121040641210409808104093031040C8101040CC05104027051040C3051040F71110403F12104071121040711210407112104071121040711210407112104071121040711210404F0510408505104001111040A31A1040C21A1040E31A1040021B10400B1B1040141B1040141B1040281B1040010000000200000003000000040000000500000007000000090000000D00000011000000190000002100000031000000410000006100000081000000C100000001010000810100000102000001030000010400000106000001080000010C00000110000001180000012000000130000001400000016000000000000000000000000000000000000000000000000000000100000001000000020000000200000003000000030000000400000004000000050000000500000006000000060000000700000007000000080000000800000009000000090000000A0000000A0000000B0000000B0000000C0000000C0000000D0000000D0000000000000000000000030000000400000005000000060000000700000008000000090000000A0000000B0000000D0000000F0000001100000013000000170000001B0000001F000000230000002B000000330000003B0000004300000053000000630000007300000083000000A3000000C3000000E30000000201000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000100000001000000010000000200000002000000020000000200000003000000030000000300000003000000040000000400000004000000040000000500000005000000050000000500000000000000000000000000000010111200080709060A050B040C030D020E010F0001010000010000000400000000000000767CFF3F010000007B7CFF3F02000000867CFF3FFFFFFFFF967CFF3FFEFFFFFFA17CFF3FFDFFFFFFAE7CFF3FFCFFFFFFB97CFF3FFBFFFFFFC77CFF3FFAFFFFFFD17CFF3FF0D8FFFFDF7CFF3F000000006410B71DC8206E3BAC30D9269041DC76F4516B6B5861B24D3C7105502083B8ED44930FF0E8A3D6D68CB361CBB0C2649BD4D2D38678E20AA01CF2BDBD00000000010000000600000020000000100000002000000080000000000100000002000000030000DC050000000000000100000003000000070000000F0000001F0000003F0000007F000000FF000000FF010000FF030000FF070000FF0F0000FF1F0000FF3F0000FF7F0000FFFF000010111200080709060A050B040C030D020E010F00000808090909090A0A0A0A0A0A0A0A0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D00001213141415151616161617171717181818181818181819191919191919191A1A1A1A1A1A1A1A1A1A1A1A1A1A1A1A1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D000000000101010102020202020202020303030303030303030303030303030304040404040404040404040404040404040404040404040404040404040404040505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050506060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070700010203040405050606060607070707080808080808080809090909090909090A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0A0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F10101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111000000000000000001010101010101010202020202020202020202020202020203030303030303030303030303030303030303030303030303030303030303030404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040405050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505000001010201030104010501060107010801090109010A010A010B010B010C010C010D010D010D010D010E010E010E010E010F010F010F010F011001100110011001110111011101110111011101110111011201120112011201120112011201120113011301130113011301130113011301140114011401140114011401140114011501150115011501150115011501150115011501150115011501150115011501160116011601160116011601160116011601160116011601160116011601160117011701170117011701170117011701170117011701170117011701170117011801180118011801180118011801180118011801180118011801180118011801190119011901190119011901190119011901190119011901190119011901190119011901190119011901190119011901190119011901190119011901190119011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011A011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011B011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011C011D0102030700392E312E3135000505040003030B0073747265616D20656E64006E6565642064696374696F6E6172790066696C65206572726F720073747265616D206572726F720064617461206572726F72006F7574206F66206D656D6F727900627566206572726F720076657273696F6E206572726F7200706172616D65746572206572726F720000", "data_start": 1073705008}