Apple Microarchitecture Research by Dougall Johnson M1/A14 P-core (Firestorm): Overview | Base Instructions | SIMD and FP Instructions M1/A14 E-core (Icestorm): Overview | Base Instructions | SIMD and FP Instructions
Code:
ld2r { v0.2s, v1.2s }, [x6], x8 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)
Retires (minus 60 nops): 3.000
Issues: 4.002
Integer unit issues: 1.001
Load/store unit issues: 1.000
SIMD/FP unit issues: 2.002
retire uop (01) | cycle (02) | schedule uop (52) | schedule int uop (53) | schedule simd uop (54) | schedule ldst uop (55) | dispatch int uop (56) | dispatch simd uop (57) | dispatch ldst uop (58) | int uops in schedulers (59) | simd uops in schedulers (5a) | ldst uops in schedulers (5b) | dispatch uop (78) | map ldst uop (7d) | map simd uop (7e) | map ldst uop inputs (80) | map simd uop inputs (81) | ? int output thing (e9) | ? ldst retires (ed) | ? simd retires (ee) |
63005 | 29566 | 4033 | 1003 | 2028 | 1002 | 1002 | 2004 | 1000 | 3000 | 3000 | 15270 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
63004 | 29396 | 4003 | 1001 | 2002 | 1000 | 1000 | 2000 | 1000 | 3000 | 3000 | 15270 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
63005 | 29448 | 4009 | 1002 | 2006 | 1001 | 1001 | 2002 | 1000 | 3000 | 3000 | 15270 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
63004 | 29460 | 4003 | 1001 | 2002 | 1000 | 1000 | 2000 | 1000 | 3000 | 3000 | 15278 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
63004 | 29423 | 4003 | 1001 | 2002 | 1000 | 1000 | 2000 | 1000 | 3000 | 3000 | 15270 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
63004 | 29352 | 4003 | 1001 | 2002 | 1000 | 1000 | 2000 | 1000 | 3000 | 3023 | 15316 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
63004 | 29518 | 4003 | 1001 | 2002 | 1000 | 1000 | 2000 | 1000 | 3000 | 3001 | 15274 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
63004 | 29662 | 4003 | 1001 | 2002 | 1000 | 1000 | 2000 | 1000 | 3000 | 3000 | 15270 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
63004 | 29423 | 4003 | 1001 | 2002 | 1000 | 1000 | 2000 | 1000 | 3000 | 3000 | 15270 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
63004 | 29370 | 4003 | 1001 | 2002 | 1000 | 1000 | 2000 | 1000 | 3000 | 3000 | 15270 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
Chain cycles: 3
Code:
ld2r { v0.2s, v1.2s }, [x6], x8 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)
Result (median cycles for code, minus 3 chain cycles): 9.0047
retire uop (01) | cycle (02) | schedule uop (52) | schedule int uop (53) | schedule simd uop (54) | schedule ldst uop (55) | dispatch int uop (56) | dispatch simd uop (57) | dispatch ldst uop (58) | int uops in schedulers (59) | simd uops in schedulers (5a) | ldst uops in schedulers (5b) | dispatch uop (78) | map int uop (7c) | map ldst uop (7d) | map simd uop (7e) | map int uop inputs (7f) | map ldst uop inputs (80) | map simd uop inputs (81) | ? int output thing (e9) | ? ldst retires (ed) | ? simd retires (ee) | ? int retires (ef) |
70205 | 120155 | 90121 | 50102 | 30018 | 10001 | 40132 | 30032 | 10003 | 3199233 | 949364 | 2906529 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 120047 | 90107 | 50101 | 30006 | 10000 | 40104 | 30007 | 10003 | 3199286 | 949434 | 2906692 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 120047 | 90107 | 50101 | 30006 | 10000 | 40104 | 30007 | 10003 | 3199286 | 949434 | 2906692 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 120047 | 90107 | 50101 | 30006 | 10000 | 40104 | 30007 | 10003 | 3199286 | 949434 | 2906692 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70205 | 120088 | 90122 | 50108 | 30013 | 10001 | 40135 | 30035 | 10003 | 3199286 | 949434 | 2906692 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 120047 | 90107 | 50101 | 30006 | 10000 | 40104 | 30007 | 10003 | 3199286 | 949434 | 2906692 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 120047 | 90107 | 50101 | 30006 | 10000 | 40104 | 30007 | 10003 | 3199286 | 949434 | 2906692 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 120047 | 90107 | 50101 | 30006 | 10000 | 40104 | 30007 | 10003 | 3199286 | 949434 | 2906692 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 120047 | 90107 | 50101 | 30006 | 10000 | 40104 | 30007 | 10003 | 3199286 | 949434 | 2906692 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70205 | 120118 | 90121 | 50107 | 30013 | 10001 | 40135 | 30035 | 10003 | 3199286 | 949434 | 2906692 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
Result (median cycles for code, minus 3 chain cycles): 9.0047
retire uop (01) | cycle (02) | schedule uop (52) | schedule int uop (53) | schedule simd uop (54) | schedule ldst uop (55) | dispatch int uop (56) | dispatch simd uop (57) | dispatch ldst uop (58) | int uops in schedulers (59) | simd uops in schedulers (5a) | ldst uops in schedulers (5b) | dispatch uop (78) | map int uop (7c) | map ldst uop (7d) | map simd uop (7e) | map int uop inputs (7f) | map ldst uop inputs (80) | map simd uop inputs (81) | ? int output thing (e9) | ? ldst retires (ed) | ? simd retires (ee) | ? int retires (ef) |
70025 | 120146 | 90031 | 50012 | 30018 | 10001 | 40042 | 30033 | 10000 | 3199304 | 949587 | 2909130 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 120047 | 90017 | 50011 | 30006 | 10000 | 40010 | 30000 | 10000 | 3199350 | 949653 | 2909282 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 120047 | 90017 | 50011 | 30006 | 10000 | 40010 | 30000 | 10000 | 3199350 | 949653 | 2909282 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70025 | 120081 | 90029 | 50018 | 30010 | 10001 | 40045 | 30034 | 10000 | 3199305 | 949587 | 2909307 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 120047 | 90017 | 50011 | 30006 | 10000 | 40010 | 30000 | 10000 | 3199350 | 949653 | 2909282 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 120047 | 90017 | 50011 | 30006 | 10000 | 40010 | 30000 | 10000 | 3199350 | 949653 | 2909282 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 120047 | 90017 | 50011 | 30006 | 10000 | 40010 | 30000 | 10000 | 3199350 | 949653 | 2909282 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 120047 | 90017 | 50011 | 30006 | 10000 | 40010 | 30000 | 10000 | 3199350 | 949653 | 2909282 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70025 | 120080 | 90028 | 50017 | 30010 | 10001 | 40045 | 30035 | 10000 | 3199782 | 949797 | 2909692 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 120047 | 90017 | 50011 | 30006 | 10000 | 40010 | 30000 | 10000 | 3199350 | 949653 | 2909282 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
Chain cycles: 3
Code:
ld2r { v0.2s, v1.2s }, [x6], x8 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)
Result (median cycles for code, minus 3 chain cycles): 9.2435
retire uop (01) | cycle (02) | schedule uop (52) | schedule int uop (53) | schedule simd uop (54) | schedule ldst uop (55) | dispatch int uop (56) | dispatch simd uop (57) | dispatch ldst uop (58) | int uops in schedulers (59) | simd uops in schedulers (5a) | ldst uops in schedulers (5b) | dispatch uop (78) | map int uop (7c) | map ldst uop (7d) | map simd uop (7e) | map int uop inputs (7f) | map ldst uop inputs (80) | map simd uop inputs (81) | ? int output thing (e9) | ? ldst retires (ed) | ? simd retires (ee) | ? int retires (ef) |
70205 | 122686 | 90121 | 50102 | 30018 | 10001 | 40132 | 30032 | 10003 | 3263827 | 968498 | 2958418 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70205 | 122509 | 90115 | 50107 | 30007 | 10001 | 40135 | 30035 | 10003 | 3263718 | 968521 | 2958428 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 122435 | 90104 | 50101 | 30003 | 10000 | 40104 | 30007 | 10003 | 3263718 | 968521 | 2958428 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 122435 | 90104 | 50101 | 30003 | 10000 | 40104 | 30007 | 10003 | 3263718 | 968521 | 2958428 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 122435 | 90104 | 50101 | 30003 | 10000 | 40104 | 30007 | 10003 | 3263718 | 968521 | 2958428 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 122435 | 90104 | 50101 | 30003 | 10000 | 40104 | 30007 | 10003 | 3263718 | 968521 | 2958428 | 80114 | 30208 | 10003 | 30009 | 60280 | 20028 | 30037 | 50007 | 10000 | 20000 | 40100 |
70204 | 122435 | 90104 | 50101 | 30003 | 10000 | 40104 | 30007 | 10003 | 3263718 | 968521 | 2958428 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 122435 | 90104 | 50101 | 30003 | 10000 | 40104 | 30007 | 10003 | 3263718 | 968521 | 2958428 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 122435 | 90104 | 50101 | 30003 | 10000 | 40104 | 30007 | 10003 | 3263718 | 968521 | 2958428 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 122435 | 90104 | 50101 | 30003 | 10000 | 40104 | 30007 | 10003 | 3263718 | 968521 | 2958428 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
Result (median cycles for code, minus 3 chain cycles): 9.2908
retire uop (01) | cycle (02) | schedule uop (52) | schedule int uop (53) | schedule simd uop (54) | schedule ldst uop (55) | dispatch int uop (56) | dispatch simd uop (57) | dispatch ldst uop (58) | int uops in schedulers (59) | simd uops in schedulers (5a) | ldst uops in schedulers (5b) | dispatch uop (78) | map int uop (7c) | map ldst uop (7d) | map simd uop (7e) | map int uop inputs (7f) | map ldst uop inputs (80) | map simd uop inputs (81) | ? int output thing (e9) | ? ldst retires (ed) | ? simd retires (ee) | ? int retires (ef) |
70025 | 123123 | 90031 | 50012 | 30018 | 10001 | 40042 | 30031 | 10000 | 3276774 | 972591 | 2970799 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 122908 | 90014 | 50011 | 30003 | 10000 | 40010 | 30000 | 10000 | 3276585 | 972535 | 2970624 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 122908 | 90014 | 50011 | 30003 | 10000 | 40010 | 30000 | 10000 | 3276585 | 972535 | 2970624 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 122908 | 90014 | 50011 | 30003 | 10000 | 40010 | 30000 | 10000 | 3279717 | 973575 | 2973607 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 122908 | 90014 | 50011 | 30003 | 10000 | 40010 | 30000 | 10000 | 3276585 | 972535 | 2970624 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 122908 | 90014 | 50011 | 30003 | 10000 | 40010 | 30000 | 10000 | 3276585 | 972535 | 2970624 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 122908 | 90014 | 50011 | 30003 | 10000 | 40010 | 30000 | 10000 | 3276585 | 972535 | 2970624 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 122908 | 90014 | 50011 | 30003 | 10000 | 40010 | 30000 | 10000 | 3276585 | 972535 | 2970624 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 122908 | 90014 | 50011 | 30003 | 10000 | 40010 | 30000 | 10000 | 3276585 | 972535 | 2970624 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70025 | 123027 | 90025 | 50017 | 30007 | 10001 | 40045 | 30034 | 10000 | 3276585 | 972535 | 2970624 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
Count: 8
Code:
ld2r { v0.2s, v1.2s }, [x6], x8 ld2r { v0.2s, v1.2s }, [x6], x8 ld2r { v0.2s, v1.2s }, [x6], x8 ld2r { v0.2s, v1.2s }, [x6], x8 ld2r { v0.2s, v1.2s }, [x6], x8 ld2r { v0.2s, v1.2s }, [x6], x8 ld2r { v0.2s, v1.2s }, [x6], x8 ld2r { v0.2s, v1.2s }, [x6], x8
mov x7, x6 mov x8, x6 mov x9, x6 mov x10, x6 mov x11, x6 mov x12, x6 mov x13, x6 mov x8, 0
(fused SUBS/B.cc loop)
Result (median cycles for code divided by count): 1.0012
retire uop (01) | cycle (02) | schedule uop (52) | schedule int uop (53) | schedule simd uop (54) | schedule ldst uop (55) | dispatch int uop (56) | dispatch simd uop (57) | dispatch ldst uop (58) | int uops in schedulers (59) | simd uops in schedulers (5a) | ldst uops in schedulers (5b) | dispatch uop (78) | map int uop (7c) | map ldst uop (7d) | map simd uop (7e) | map int uop inputs (7f) | map ldst uop inputs (80) | map simd uop inputs (81) | ? int output thing (e9) | ? ldst retires (ed) | ? simd retires (ee) | ? int retires (ef) |
240205 | 80218 | 320250 | 80122 | 160107 | 80021 | 80123 | 160036 | 80008 | 349062 | 348727 | 1255680 | 320128 | 200 | 80009 | 160017 | 200 | 160018 | 160017 | 80007 | 80000 | 160000 | 100 |
240204 | 80102 | 320140 | 80107 | 160027 | 80006 | 80108 | 160012 | 80007 | 335742 | 335412 | 1283760 | 320124 | 200 | 80007 | 160013 | 200 | 160014 | 160013 | 80005 | 80000 | 160000 | 100 |
240204 | 80094 | 320132 | 80105 | 160023 | 80004 | 80106 | 160008 | 80007 | 337126 | 336801 | 1284055 | 320124 | 200 | 80007 | 160013 | 200 | 160014 | 160013 | 80006 | 80000 | 160000 | 100 |
240204 | 80095 | 320136 | 80106 | 160025 | 80005 | 80107 | 160010 | 80007 | 334216 | 333887 | 1279822 | 320124 | 200 | 80007 | 160013 | 200 | 160014 | 160013 | 80006 | 80000 | 160000 | 100 |
240205 | 80136 | 320254 | 80136 | 160083 | 80035 | 80138 | 160070 | 80007 | 336016 | 335693 | 1280339 | 320124 | 200 | 80007 | 160013 | 200 | 160016 | 160016 | 80006 | 80000 | 160000 | 100 |
240204 | 80095 | 320134 | 80105 | 160025 | 80004 | 80107 | 160010 | 80007 | 336631 | 336306 | 1280797 | 320124 | 200 | 80007 | 160013 | 200 | 160016 | 160016 | 80006 | 80000 | 160000 | 100 |
240204 | 80095 | 320134 | 80105 | 160025 | 80004 | 80107 | 160010 | 80007 | 336631 | 336306 | 1280797 | 320124 | 200 | 80007 | 160013 | 200 | 160014 | 160013 | 80006 | 80000 | 160000 | 100 |
240204 | 80095 | 320134 | 80105 | 160025 | 80004 | 80107 | 160010 | 80007 | 334862 | 334539 | 1279725 | 320124 | 200 | 80007 | 160013 | 200 | 160014 | 160013 | 80005 | 80000 | 160000 | 100 |
240204 | 80094 | 320129 | 80104 | 160022 | 80003 | 80106 | 160008 | 80007 | 336631 | 336306 | 1280797 | 320124 | 200 | 80007 | 160013 | 200 | 160016 | 160016 | 80006 | 80000 | 160000 | 100 |
240204 | 80095 | 320135 | 80105 | 160026 | 80004 | 80107 | 160010 | 80007 | 334268 | 333932 | 1279517 | 320124 | 200 | 80007 | 160013 | 200 | 160016 | 160016 | 80006 | 80000 | 160000 | 100 |
Result (median cycles for code divided by count): 1.0007
retire uop (01) | cycle (02) | schedule uop (52) | schedule int uop (53) | schedule simd uop (54) | schedule ldst uop (55) | dispatch int uop (56) | dispatch simd uop (57) | dispatch ldst uop (58) | int uops in schedulers (59) | simd uops in schedulers (5a) | ldst uops in schedulers (5b) | dispatch uop (78) | map int uop (7c) | map ldst uop (7d) | map simd uop (7e) | map int uop inputs (7f) | map ldst uop inputs (80) | map simd uop inputs (81) | ? int output thing (e9) | ? ldst retires (ed) | ? simd retires (ee) | ? int retires (ef) |
240025 | 80188 | 320153 | 80030 | 160104 | 80019 | 80032 | 160034 | 80009 | 380100 | 380070 | 1376488 | 320042 | 20 | 80009 | 160017 | 20 | 160000 | 160000 | 80001 | 80000 | 160000 | 10 |
240024 | 80054 | 320041 | 80011 | 160030 | 80000 | 80010 | 160000 | 80000 | 331599 | 331575 | 1568647 | 320010 | 20 | 80000 | 160000 | 20 | 160000 | 160000 | 80001 | 80000 | 160000 | 10 |
240024 | 80054 | 320041 | 80011 | 160030 | 80000 | 80010 | 160000 | 80000 | 341454 | 341430 | 1518342 | 320010 | 20 | 80000 | 160000 | 20 | 160000 | 160000 | 80001 | 80000 | 160000 | 10 |
240024 | 80054 | 320041 | 80011 | 160030 | 80000 | 80010 | 160000 | 80000 | 343028 | 343005 | 1571871 | 320010 | 20 | 80000 | 160000 | 20 | 160000 | 160000 | 80001 | 80000 | 160000 | 10 |
240024 | 80054 | 320041 | 80011 | 160030 | 80000 | 80010 | 160000 | 80000 | 343028 | 343005 | 1571871 | 320010 | 20 | 80000 | 160000 | 20 | 160000 | 160000 | 80001 | 80000 | 160000 | 10 |
240024 | 80054 | 320041 | 80011 | 160030 | 80000 | 80010 | 160000 | 80036 | 384384 | 384365 | 1360160 | 320150 | 20 | 80036 | 160072 | 20 | 160000 | 160000 | 80001 | 80000 | 160000 | 10 |
240024 | 80054 | 320041 | 80011 | 160030 | 80000 | 80010 | 160000 | 80000 | 333324 | 333299 | 1571267 | 320010 | 20 | 80000 | 160000 | 20 | 160000 | 160000 | 80001 | 80000 | 160000 | 10 |
240024 | 80054 | 320041 | 80011 | 160030 | 80000 | 80010 | 160000 | 80000 | 343922 | 343898 | 1563415 | 320010 | 20 | 80000 | 160000 | 20 | 160000 | 160000 | 80001 | 80000 | 160000 | 10 |
240024 | 80054 | 320041 | 80011 | 160030 | 80000 | 80010 | 160000 | 80000 | 323459 | 323437 | 1556219 | 320010 | 20 | 80000 | 160000 | 20 | 160000 | 160000 | 80001 | 80000 | 160000 | 10 |
240024 | 80054 | 320041 | 80011 | 160030 | 80000 | 80010 | 160000 | 80000 | 332407 | 332383 | 1568543 | 320010 | 20 | 80000 | 160000 | 20 | 160000 | 160000 | 80001 | 80000 | 160000 | 10 |