Apple M1 Microarchitecture Research by Dougall Johnson

Firestorm: Overview | Base Instructions | SIMD and FP Instructions
Icestorm:  Overview | Base Instructions | SIMD and FP Instructions

LD1 (multiple, two registers, 4H)

Test 1: uops

Code:

  ld1 { v0.4h, v1.4h }, [x6]
  nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop
  mov x0, 1
  mov x1, 2
  mov x8, 0

(no loop instructions)

1000 unrolls and 1 iteration

Retires (minus 60 nops): 2.000

Issues: 1.000

Integer unit issues: 0.000

Load/store unit issues: 1.000

SIMD/FP unit issues: 0.000

retire (01)cycle (02)03040507080a0b0e0f18191e223a3f43464951inst issue (52)~issue ld/st (55)~dispatch ld/st (58)huge thing ld/st (5a)5f6061696d6escheduler rewind (75)scheduler stall (76)~dispatch op (78)~map op ld/st (7d)~map lookup ld/st (80)8283pipeline redirect (84)85inst all (8c)inst fp/simd load (98)inst ldst (9b)9da0a1a3a6a8a9acafb5bbdcache load miss (bf)dtlb miss (c1)c2cfd0d2icache miss (d3)itlb miss (d4)d5d6d9dadbddinst fetch restart (de)e0eaebecld/st retires (ed)? fp/simd (ee)f5f6f7f8fd
620052847221411012100003151802846800023339100010001000500061016056280892849831010002000100028418281291161001100010000100422100321210002221213549965171283204062198943168382614484828086149841280914132100010002862828082286152855328243
62004285442131101110000304867280970002325710001000100050000101608428101286223101000200010002848128696116100110001000010023310033201100021212134781005271083216048199153201382923574928007147821272613906100010002841628575285192845728697
620042838821111111000004048702795300023593100010001000500050016075280932858731010002000100028153284321161001100010000100232100222110012221213692946271073243148198393240382820465428080151241296314126100010002859828639285322849428722
620042822221121101100003048342822000023824100010001000500051016058281172853331010002000100028435283981161001100010000100122100341210012131113351967171993340148198943206381917555228125151221243513559100010002868528527285422847528579
620042869221311111100004049542835500023481100010001000500030016082281442854931010002000100028608285221161001100010000100223100261410002121013141979870463348055195583208382520485127878150801266614384100010002839128477284372817028185
620042852521201111111004148492826700023503100010001000500001016088281662857731010002000100028423284621161001100010000100123100311210002131013259982570193304044199053158382213525128109149321259014205100010002882228220287722823728583
620042854821211111100003050172819000023402100010001000500021016061282292873431010002000100028490285521161001100010000100133100310510002121213948985871073419042196283152381712514628085151161226414396100010002853428602285002846528373
620042871221201111100003048832826700023357100010001000500021816081283012851731010002000100028533285271161001100010000100222100121210022221113664975070803377147196043201382916505128071140831281814369100010002850628584287042857728745
6200428427213111111000040515628291000234911000100010005000000160772821828526310100020001000281452849211610011000100001003221003321810002131213085948070723366050196573222382318435428114151501253614185100010002821328536284402853928467
620042860521101101000004048352828400023471100010001000500040016082281152851831010002000100028631285191161001100010000100132100241210012131013562992771043346052197493308383211494427946151511265214421100010002861128739287732872328236

Test 2: Latency 1->3 roundtrip

Chain cycles: 3

Code:

  ld1 { v0.4h, v1.4h }, [x6]
  fmov x0, d0
  eor x8, x8, x0
  eor x8, x8, x0
  add x6, x6, x8
  mov x0, 1
  mov x1, 2
  mov x8, 0

(fused SUBS/B.cc loop)

100 unrolls and 100 iterations

Result (median cycles for code, minus 3 chain cycles): 9.0051

retire (01)cycle (02)03050708090b0e0f18191e1f2223243a3f4d4f51inst issue (52)~issue int (53)~issue fp/simd (54)~issue ld/st (55)~dispatch int (56)~dispatch fp/simd (57)~dispatch ld/st (58)huge thing int (59)huge thing ld/st (5a)huge thing fp/simd (5b)60696b6d6edispatch stall (70)scheduler rewind (75)scheduler stall (76)~dispatch op (78)~map op int (7c)~map op ld/st (7d)~map op fp/simd (7e)~map lookup int (7f)~map lookup ld/st (80)~map lookup fp/simd (81)8283pipeline redirect (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst b.cc (94)inst integer (97)inst fp/simd load (98)inst ldst (9b)9d9fa0a1a3a6a8a9acafb5bbdcache load miss (bf)dtlb miss (c1)c2c5branch mispredict (cb)cfd5d6ddinst fetch restart (de)e0? int output thing (e9)eaebecld/st retires (ed)? fp/simd (ee)gpr retires (ef)f5f6f7f8fd
6020512005189900010100010000012002011949610946155601034010010001100003025110000100001079368573637461191721120036012005712005111189631124175010030200200001000060200100001000012003512003511502011009910040100100001000011001000000100000001000010000003210210811119646400001009100001000040100120036120052120052120036120052
6020412005189900000010010100012003611950310944325601004010010000100003010010000100001079126573608461182851120034012005112005111188131124175010030200200001000060200100001000012003512005111502011009910040100100001000001001000000100000001000010000003210110811119656400020109100001000040100120036120052120052120052120052
60204120051899000000000100000120036119495109459256010340100100011000030100100001000010791265736084611828501200270120051120051111973311241750100302002000010000602001000010000120051120051115020110099100401001000010000010010000011000000010000101000032101108111196564000210100100001000040100120036120036120036120052120036
6020412005190000000000000100012003611949510945925601004010210000100003010010000100001079552573529361182851120027012005112003511189631123745010030200200001000060200100001000012003512005111502021009910040100100001000001001000121100010011000011010003210110011119651400040109100001000040100120042120042120058120042120042
6020412004189910101000020100112004211951210946425601064010410002100003010010000100001079423573637461191720120034012005712005711189731124105010030200200001000060200100001000012004112005711502011009910040100100001000001001000111100020011000011112003210112111119651400041009100001000040100120058120058120042120058120042
60204120057900101010000201001120026119530109464256010640104100021000030100100001000010794235735593611751801200330120041120057111897311241050100302002000010000602001000010000120057120041115020110099100401001000010000010010001211000300110000111110032101100111196694000410100100001000040100120058120058120058120042120058
6020412005789910000000070100012002611962410944925601034010410001100003010010000100001079368573637461175180120033012004112005711189731124155010030200200001000060200100001000012005712005711502011009910040100100001000001001000310100010111000011111003210112111119651400020109100001000040100120058120042120058120058120058
60204120057899100010000200001120026119512109449256010640104100021000030100100001000010794235736374611917211200330120041120057111897311241050100302002000010000602001000010000120057120057115020110099100401001000010000010010001201000101110000011100032101100121196694000210100100001000040100120058120046120058120042120058
6020412005789910101100010100112004211951210946425601064010410002100003010010000100001079432573637461191721120038012005712005711190331124105010030200200001000060200100001000012006012005711502011009910040100100001000001001000111100020011000001110003210110011119651400040100100001000040100120058120042120042120042120058
602041200578991000111001000011200421195121094642560106401041000210000301001000010000107942357363746121504112003501200571200571119513112516535083230520212100006052810000100001200411200411150201100991004010010000100001100100022010001031100001111000321021211111965140002009100001000040100120058120058120373120780120517

1000 unrolls and 10 iterations

Result (median cycles for code, minus 3 chain cycles): 9.0060

retire (01)cycle (02)0305080a0b0e0f1e22243a3f4d4f51inst issue (52)~issue int (53)~issue fp/simd (54)~issue ld/st (55)~dispatch int (56)~dispatch fp/simd (57)~dispatch ld/st (58)huge thing int (59)huge thing ld/st (5a)huge thing fp/simd (5b)60696b6d6edispatch stall (70)scheduler rewind (75)scheduler stall (76)~dispatch op (78)~map op int (7c)~map op ld/st (7d)~map op fp/simd (7e)~map lookup int (7f)~map lookup ld/st (80)~map lookup fp/simd (81)8283pipeline redirect (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst b.cc (94)inst integer (97)inst fp/simd load (98)inst ldst (9b)9d9fa0a1a3a6a8a9acafb5bbdcache load miss (bf)dtlb miss (c1)c2c5cfd5d6ddinst fetch restart (de)e0? int output thing (e9)eaebecld/st retires (ed)? fp/simd (ee)gpr retires (ef)f5f6f7f8fd
6002512005389911000070011200261194861094612560013400121000210000300101000010000107988757355936125852112002901200531200531119093112438500103002020000100006002010000100001200531200531150021109104001010000100001101000111100030091000011110031404993311967140004605100001000040010120042120057120057120042120054
600241200739000000000100120043119489109449256001640014100011000030010100001000010798785736182612585211200323120053120041111913311243850010300202000010000600201000010000120053120053115002110910400101000010000010100032110000001261000000100031403993311966540000660100001000040010120036120036120036120036120051
60024120063900000000100012003211948010945525600104001210002100003001010000100001079870573559361258520120029012004112005311190931124505001030020200001000060020100001000012004112005311500211091040010100001000001010000011000010142731000010100031403943311965040000005100001000040010120036120048120036120048120036
6002412004989900000016000120032119483109458256001340010100021000030010100001000010798705735593612350001200290120053120041111909311245050010300202000010000600201000010000120041120053115002110910400101000010000010100000010000001141000010000031403993311967440004965100001000040010120054120054120057120057120057
600241200648991100002000120041119486109461256001640012100011000030010100001000010798785736182612350001200760120053120053111924311243850010300202000010000600201000010000120053120041115002110910400101000010000010100000010000001711000010100031403993311966540002060100001000040010120036120051120048120036120048
6002412006189900000110001200201194891094552560013400121000010000300101000010000107987057363266125852112001701200531200561119093112453500103002020000100006002010000100001200531200531150021109104001010000100001101000000100001061000000000031403993311966540002605100001000040010120048120048120036120048120036
600241200688990000002500112003811948610946125600164001410002100003001010000100001079977573618261258521120029012005312004111192131124505001030020200001000060020100001000012005412005411500211091040010100001000001010000001000810271000010000031403943311966540002060100001000040010120051120036120036120036120036
6002412005089900001012100120020119493109455256001340012100021000030010100001000010798785735593612585211200290120041120056111921311249950010300202000010000600201000010000120053120041215002110910400101000010000110100394110000101501000010100031403993311966840002665100001000040010120048120048120036120036120036
60024120053899000000110012002011948310945825600134001210001100003001010000100001079878573618261258521120017012005312004111192431124535001030020201281000060020100001000012004712003511500211091040010100001000001010000011000010151000010100031403943311966540002965100001000040010120048120036120048120048120048
60024120048899000000010012003211949710945525600104001210000100003001010000100001079906573632661258521120082012005312005411192431124555027830020200001000060020100001000012005212004711500211091040010100001000011010000011000000211000010000031403993311965040002065100001000040010120036120036120036120036120048

Test 3: Latency 2->3 roundtrip

Chain cycles: 3

Code:

  ld1 { v0.4h, v1.4h }, [x6]
  fmov x1, d1
  eor x8, x8, x1
  eor x8, x8, x1
  add x6, x6, x8
  mov x0, 1
  mov x1, 2
  mov x8, 0

(fused SUBS/B.cc loop)

100 unrolls and 100 iterations

Result (median cycles for code, minus 3 chain cycles): 9.0051

retire (01)cycle (02)03050708090b0e0f18191e1f22243f4d4f51inst issue (52)~issue int (53)~issue fp/simd (54)~issue ld/st (55)~dispatch int (56)~dispatch fp/simd (57)~dispatch ld/st (58)huge thing int (59)huge thing ld/st (5a)huge thing fp/simd (5b)60696b6d6edispatch stall (70)71scheduler rewind (75)scheduler stall (76)~dispatch op (78)~map op int (7c)~map op ld/st (7d)~map op fp/simd (7e)~map lookup int (7f)~map lookup ld/st (80)~map lookup fp/simd (81)8283pipeline redirect (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst b.cc (94)inst integer (97)inst fp/simd load (98)inst ldst (9b)9d9fa0a1a3a6a8acafb5dcache load miss (bf)dtlb miss (c1)c2branch mispredict (cb)cfd5d6ddinst fetch restart (de)e0? int output thing (e9)eaebecld/st retires (ed)? fp/simd (ee)gpr retires (ef)f5f6f7f8fd
60205120051899000001100600012008511950310945925601034010010001100003010010000100001079552573608461182850120027012003512005411190003112417501003020020000100006020010000100001200351200351150201100991004010010000100001100100000010000091000011000321021212211966640002131012100001000040100120052120036120055120036120052
6020412003589900000000010001200391195031094612560103401021000110000301001000010000107939657362306118285112002701200511200351119000311240750100302002000010000602001000010000120035120051115020110099100401001000010000110010000011000000100000000032102135221196664000010012100001000040100120052120055120055120055120088
6020412005489900000100010001200391195031094612560100401021000110000301001000010000107912657360846118285112003001200541200541118960311240750100302002000010000602001000010065120054120054115020110099100401001000010000010010000011000000100001100032102108221196664000210012100001000040100120055120036120055120055120055
6020412005489900000110010001200201195121094432560103401001000010000301001000010000107955257352936119016112001101200541200541119000311237450100302002000010000602001000010000120035120035215020110099100401001000010000110010001011000000100001000032102135221196464000213012100001000040100120040120055120055120055120055
602041200548990000000001010120039119503109443256010040102100011000030100100001000010793965736230611759911200300120054120051111896031124075036530200200001000060200100001000012005412005111502011009910040100100001000011001000001100020010000100003210213522119646400021300100001000040100120059120061120036120036120055
602041200358990000000001000120020119509109461256010340102100011000030100100001000010795525736084611828511200300120054120054111900031123745010030200200001000060200100001000012003512005111502011009910040100100001000011001000000100000010001100003210210822119656400000012100001000040100120036120055120052120036120055
6020412003589900000000000001200201195031094592560103401001000110000301001000010000107955257362306117599112001101200541200351118810311240750100302002000010000602001000010000120035120051115020110099100401001000010000010010000011000000100001000032102135221196464000010130100001000040100120052120052120052120055120036
60204120051899000000000101012003911950310946125601034010010001100003010010000100001079396573623061190161120030312005112005111189603112417501003020020000100006020010000100001200361200511150201100991004010010000100000100100000110000001000011000321021082211965640002009100001000040100120052120055120052120052120055
6020412005489900000000010001200201195141094432560103401021000110000301001000010000107912657363266119016012003001200511200911119000311241750100302002000010000602001000010000120055120051315020110099100401001000010000010010000011000001651000010000321021212211964640000131312100001000040100120628120036120334120159120052
60204120035899000001000101012003911950910944325601064010210002100003010010000100001079126573623061182850120030012005412005411190003112407501003020020000100006020010000100001200351200351150201100991004010010000100000100100000110000031000011000321021352211966640015131312100001000040100120052120036120056120058120055

1000 unrolls and 10 iterations

Result (median cycles for code, minus 3 chain cycles): 9.0057

retire (01)cycle (02)030508090b0e0f1e22233a3f4d4f51inst issue (52)~issue int (53)~issue fp/simd (54)~issue ld/st (55)~dispatch int (56)~dispatch fp/simd (57)~dispatch ld/st (58)huge thing int (59)huge thing ld/st (5a)huge thing fp/simd (5b)60696d6edispatch stall (70)scheduler rewind (75)scheduler stall (76)~dispatch op (78)~map op int (7c)~map op ld/st (7d)~map op fp/simd (7e)~map lookup int (7f)~map lookup ld/st (80)~map lookup fp/simd (81)8283pipeline redirect (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst b.cc (94)inst integer (97)inst fp/simd load (98)inst ldst (9b)9d9fa0a1a3a6a8a9acafb5bbdcache load miss (bf)dtlb miss (c1)c2c5cfd5d6ddinst fetch restart (de)e0? int output thing (e9)eaebecld/st retires (ed)? fp/simd (ee)gpr retires (ef)f5f6f7f8fd
60025120052899001000210112004511948410946825600164001410001100003001010000100001079858573608461257461120030120054120054111922311245750010300202000010000600201000010000120066120057115002110910400101000010000010100000110000001510000111100314014995711967840004131012100001000040010120061120061120058120061120042
600241200609001001002000120045119493109467256001640014100021000030010100001000010798705736374612350011200361200601200571119283112457500103002020000100006002010000100001204391200881150021109104001010000100001101000210100010111000011110031408997511967540004131012100001000040010120061120111120058120061120059
60024120057899110100200212004611949310944925600134001210002100003001010000100001079942573651861260511120036120060120060111933311245750010300202000010000600201000010000120063120057115002110910400101000010000010100011110001001100001111003140999751196784000410139100001000040010120061120061120117120089120055
6002412005190000000000001200361194871094592560010400121000110000300101000010000107988857362306125746112003012005412003511192231124515001030020201261000060020100001000012005512005111500211091040010100001000001010000011000000010000100000314011995711968040004101312100001000040010120061120058120058120061120061
600241200608991000001100120045119490109464256001640014100021000030010100001000010799425735593612605101200361200611200601119283112454500103002020000100006002010000100001200601200571150021109104001010000100000101000221100019111000011110031409995711967540004131312100001000040010120061120061120061120042120061
600241200418991101002100120042119493109467256001640014100021000030010100001000010799425735593612605111200361200411200601119283112457500103002020000100006002010000100001200581200571150021109104001010000100000101000131100020111000011110031409997511967840004101012100001000040010120061120042120061120061120061
6002412006089910010020001200261194931094642560016400141000210000300101000010000107994257365186123500112003612006012005711192831124545001030020200001000060020100001000012045112007311500221091040010100001000001010001311000200110000111100314011995711967840002131012100001000040010120061120061120061120061120058
600241200608991100002000120045119493109467256001640014100021000030010100001000010799425735593612605111200361200601200411119283112457500103002020000100006002010000100001200631201101150021109104001010000100000101000320100010111000001112031401099571196784000213139100001000040010120061120061120061120061120058
60024120060899110100200012002611949310946425600164001410002100003001010000100001079870573559361235001120033120057120057111909311245450010300202000010000600201000010000120071120100115002110910400101000010000010100000110000000100001010003140999671196694000210130100001000040010120052120052120055120055120052
6002412005190000000010001200391194871094432560013400101000110000300101000010000107985857360846125879112003012005412005411192231124515001030020200001000060394100001000012006512005111500211091040010100001000001010000011000000174100001010003140999581196824000410139100001000040010120042120061120058120061120058

Test 4: throughput

Count: 8

Code:

  ld1 { v0.4h, v1.4h }, [x6]
  ld1 { v0.4h, v1.4h }, [x6]
  ld1 { v0.4h, v1.4h }, [x6]
  ld1 { v0.4h, v1.4h }, [x6]
  ld1 { v0.4h, v1.4h }, [x6]
  ld1 { v0.4h, v1.4h }, [x6]
  ld1 { v0.4h, v1.4h }, [x6]
  ld1 { v0.4h, v1.4h }, [x6]
  mov x7, x6
  mov x8, x6
  mov x9, x6
  mov x10, x6
  mov x11, x6
  mov x12, x6
  mov x13, x6

(fused SUBS/B.cc loop)

100 unrolls and 100 iterations

Result (median cycles for code divided by count): 0.3342

retire (01)cycle (02)03090b0e0f18191e22243a3f4346494f51inst issue (52)~issue int (53)~issue ld/st (55)~dispatch int (56)~dispatch ld/st (58)huge thing int (59)huge thing ld/st (5a)60696d6edispatch stall (70)scheduler rewind (75)scheduler stall (76)~dispatch op (78)~map op int (7c)~map op ld/st (7d)~map lookup int (7f)~map lookup ld/st (80)8283pipeline redirect (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst b.cc (94)inst integer (97)inst fp/simd load (98)inst ldst (9b)9d9fa0a3a6a7a8acafb5b6bbdcache load miss (bf)cdcfd5d6ddinst fetch restart (de)e0eaebecld/st retires (ed)? fp/simd (ee)gpr retires (ef)f5f6f7f8fd
1602052672820000000044001267162111625801001008000010080000500117237712668226731267276630366898010020016000020080000267312670711802011009910010080000800001100800004380039030388000060000511011611267281410080000800001002670826732267322672826833
16020426732200000100440002671601211925801001008000010080000500116888012670226731267276650366858010020016000020080000267312672711802011009910010080000800000100800000800000324280000010430511011611267281410080000800001002673526732267332670826844
1602042673620000000044100267160001925801001008000010080000500118779612668226731267316654366658010020016000020080000267312672711802011009910010080000800000100800000800390174480038003900511011611267281414480000800001002670826708267082670826842
1602042671720000100044001266922101625801001008000010080000500116888012670226707267076654366658010020016000020080000267072672711802011009910010080000800000100800004380039025448003860380051101161126728140080000800001002673226732267082670826922
1602042695820000000044001267162110258010010080000100800005001166807126702267272670766543668980100200160000200800002673126727118020110099100100800008000001008000044800390294280038613844051101161126728014780000800001002673226732267082673226815
16020426736200000000000026716200192580100100800001008000050011690851267062672726707665436689801002001600002008000026731267272180201100991001008000080000010080000438003902941800396138440511011611267281414780000800001002673226708267322673226732
160204267382001000004500126722010192580100100800001008000050011688801266822670726731665436689801002001600002008000026731267271180201100991001008000080000010080000438003903641800006104405110116112672800080000800001002670826728267332673226846
160204267362001011000000267160001925801001008000010080000500118095612668226731267316630366658010020016000020080000267312670711802011009910010080000800000100800004380000031380038003944051101161126728140080000800001002673226708267322673226818
1602042671720000000044001267122011925801001008000010080000500116888012670626731267316630366898010020016000020080000267072672711802011009910010080000800000100800004380039030388000060390051101161126724100080000800001002673226732267322670826745
1602042672720010100044100267162110258010010080000100800005001176351126702267072673166543668980100200160000200800002673126727118020110099100100800008000001008000008003900224800396139440511011611267041414780000800001002673226728267282672826738

1000 unrolls and 10 iterations

Result (median cycles for code divided by count): 0.3342

retire (01)cycle (02)030e0f181e1f22243a3f4346494f51inst issue (52)~issue int (53)~issue ld/st (55)~dispatch int (56)~dispatch ld/st (58)huge thing int (59)huge thing ld/st (5a)6061696d6edispatch stall (70)72scheduler rewind (75)scheduler stall (76)~dispatch op (78)~map op int (7c)~map op ld/st (7d)~map lookup int (7f)~map lookup ld/st (80)8283pipeline redirect (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst b.cc (94)inst integer (97)inst fp/simd load (98)inst ldst (9b)9d9fa0a3a5a6a8a9acafb5b6bbdcache load miss (bf)c2cfd0d2d5d6ddinst fetch restart (de)e0eaebecld/st retires (ed)? fp/simd (ee)gpr retires (ef)f5f6f7f8fd
1600252673420011045010026692001812258001010800001080000501175306152670226727267226668036707800102016000020800002672226722118002110910108000080000010800003908003500156800396135430502000201612112671910048000080000102672826728267082670826723
16002426882200100450002267122180025800101080000108000050117010700267152670726722665303669080010201600002080000267222672211800211091010800008000011080000008003534039800396135430502053111610102672461028000080000102670826708267282672826708
1600242685020000041000226712001202580010108000010800005011693240026682267072672766680367078001020160000208000026727267221180021109101080000800000108000039080035809800396100050200051671226724101048000080000102670826728267282672826766
16002426722200000460101266922121216258001010800001080000501168880002668426727267276653036707800102016000020800002672726707118002110910108000080000010800003908003532038003961043050200081688267196648000080000102672826728267082670826843
160024267172000000000226707212181625800101080000108000050116874600266822672726707667303670780010201600002080000267272672211800211091010800008000001080000390800353203378800396035005020008257102672401028000080000102672826708267082672826723
1600242688920100045010126905218121625800101080000108000050116917800266972672726707665303670780010201600002080000267272670711800211091010800008000001080000390800353103580000613543050200061686267246628000080000102672826728267282670826851
16002426731200000410002266920121202580010108000010800005011731830026682267222670766680367078001020160000208000026727267071180021109101080000800000108000039080000200800396139430502000716472672401048000080000102672826728267282670826814
1600242672920000000002267122121202580010108000010800005011688800026702267272672766530367078001020160000208000026727267221180021109101080000800000108000039080035290428003561350050200061695267046648000080000102670826708267082670826733
160024267332001104501002671220011258001010800001080000501168880102669726707267076672036707800102016000020800002670726722118002110910108000080000010800003908003628042800006135430502000816710267040048000080000102672826728267082672826826
160024267162001000010226712200025800101080000108000050117462800266972670726727667203670780010201600002080000267072672211800211091010800008000001080000390800352903412800396104305020008168926724101048000080000102672826708267232672826723