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.8b, v1.8b }, [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.004
Integer unit issues: 1.001
Load/store unit issues: 1.000
SIMD/FP unit issues: 2.004
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 | 29810 | 4069 | 1007 | 2056 | 1006 | 1006 | 2012 | 1000 | 3000 | 3000 | 15284 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
63004 | 29381 | 4005 | 1001 | 2004 | 1000 | 1000 | 2000 | 1000 | 3000 | 3000 | 15284 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
63004 | 29399 | 4005 | 1001 | 2004 | 1000 | 1000 | 2000 | 1000 | 3000 | 3000 | 15284 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
63004 | 29379 | 4005 | 1001 | 2004 | 1000 | 1000 | 2000 | 1000 | 3000 | 3000 | 15284 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
63004 | 29430 | 4005 | 1001 | 2004 | 1000 | 1000 | 2000 | 1000 | 3000 | 3000 | 15284 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
63004 | 29400 | 4005 | 1001 | 2004 | 1000 | 1000 | 2000 | 1000 | 3000 | 3000 | 15284 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
63004 | 29409 | 4005 | 1001 | 2004 | 1000 | 1000 | 2000 | 1000 | 3000 | 3000 | 15284 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
63004 | 29378 | 4005 | 1001 | 2004 | 1000 | 1000 | 2000 | 1000 | 3000 | 3000 | 15284 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
63004 | 29378 | 4005 | 1001 | 2004 | 1000 | 1000 | 2000 | 1000 | 3000 | 3000 | 15284 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
63004 | 29430 | 4005 | 1001 | 2004 | 1000 | 1000 | 2000 | 1000 | 3000 | 3000 | 15284 | 4000 | 1000 | 2000 | 2000 | 2000 | 1001 | 1000 | 2000 |
Chain cycles: 3
Code:
ld2r { v0.8b, v1.8b }, [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 | 120154 | 90121 | 50102 | 30018 | 10001 | 40132 | 30032 | 10003 | 3199472 | 949379 | 2906652 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70205 | 120081 | 90119 | 50108 | 30010 | 10001 | 40135 | 30034 | 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 | 3199583 | 949522 | 2906967 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70205 | 120081 | 90121 | 50110 | 30010 | 10001 | 40137 | 30036 | 10003 | 3199286 | 949434 | 2906692 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 120058 | 90107 | 50101 | 30006 | 10000 | 40104 | 30007 | 10003 | 3199286 | 949434 | 2906692 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 120149 | 90107 | 50101 | 30006 | 10000 | 40104 | 30007 | 10003 | 3200852 | 949902 | 2908142 | 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 |
Result (median cycles for code, minus 3 chain cycles): 9.0042
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 | 120150 | 90031 | 50012 | 30018 | 10001 | 40042 | 30031 | 10000 | 3199404 | 949669 | 2909384 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 120054 | 90014 | 50011 | 30003 | 10000 | 40010 | 30000 | 10000 | 3199215 | 949613 | 2909157 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 120042 | 90014 | 50011 | 30003 | 10000 | 40010 | 30000 | 10000 | 3199215 | 949613 | 2909157 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 120042 | 90014 | 50011 | 30003 | 10000 | 40010 | 30000 | 10000 | 3199215 | 949613 | 2909157 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 120042 | 90014 | 50011 | 30003 | 10000 | 40010 | 30000 | 10000 | 3199215 | 949613 | 2909157 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 120042 | 90014 | 50011 | 30003 | 10000 | 40010 | 30000 | 10000 | 3199215 | 949613 | 2909157 | 80010 | 30020 | 10000 | 30000 | 60098 | 20026 | 30037 | 50008 | 10000 | 20000 | 40010 |
70024 | 120046 | 90014 | 50011 | 30003 | 10000 | 40010 | 30000 | 10000 | 3199215 | 949613 | 2909157 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 120042 | 90014 | 50011 | 30003 | 10000 | 40010 | 30000 | 10000 | 3199215 | 949613 | 2909157 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 120042 | 90014 | 50011 | 30003 | 10000 | 40010 | 30000 | 10000 | 3199215 | 949613 | 2909157 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 120042 | 90014 | 50011 | 30003 | 10000 | 40010 | 30000 | 10000 | 3199215 | 949613 | 2909157 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
Chain cycles: 3
Code:
ld2r { v0.8b, v1.8b }, [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.2444
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 | 122696 | 90121 | 50102 | 30018 | 10001 | 40132 | 30032 | 10003 | 3264116 | 968583 | 2958678 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 122444 | 90107 | 50101 | 30006 | 10000 | 40104 | 30007 | 10003 | 3263961 | 968593 | 2958653 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 122444 | 90107 | 50101 | 30006 | 10000 | 40104 | 30007 | 10003 | 3263961 | 968593 | 2958653 | 80114 | 30208 | 10003 | 30009 | 60276 | 20024 | 30037 | 50007 | 10000 | 20000 | 40100 |
70204 | 122444 | 90107 | 50101 | 30006 | 10000 | 40104 | 30007 | 10003 | 3263961 | 968593 | 2958653 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 122444 | 90107 | 50101 | 30006 | 10000 | 40104 | 30007 | 10003 | 3263961 | 968593 | 2958653 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 122444 | 90107 | 50101 | 30006 | 10000 | 40104 | 30007 | 10003 | 3263961 | 968593 | 2958653 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 122444 | 90107 | 50101 | 30006 | 10000 | 40104 | 30007 | 10003 | 3263961 | 968593 | 2958653 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 122444 | 90107 | 50101 | 30006 | 10000 | 40104 | 30007 | 10012 | 3264517 | 968693 | 2959032 | 80181 | 30238 | 10012 | 30037 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 122444 | 90107 | 50101 | 30006 | 10000 | 40104 | 30007 | 10003 | 3263961 | 968593 | 2958653 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
70204 | 122444 | 90107 | 50101 | 30006 | 10000 | 40104 | 30007 | 10003 | 3263961 | 968593 | 2958653 | 80114 | 30208 | 10003 | 30009 | 60216 | 20006 | 30009 | 50001 | 10000 | 20000 | 40100 |
Result (median cycles for code, minus 3 chain cycles): 9.2915
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 | 123130 | 90031 | 50012 | 30018 | 10001 | 40042 | 30031 | 10003 | 3278362 | 973050 | 2972256 | 80024 | 30028 | 10003 | 30009 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70025 | 122905 | 90027 | 50016 | 30010 | 10001 | 40045 | 30034 | 10000 | 3280661 | 973694 | 2974270 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 122915 | 90017 | 50011 | 30006 | 10000 | 40010 | 30000 | 10000 | 3276774 | 972591 | 2970799 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 122915 | 90017 | 50011 | 30006 | 10000 | 40010 | 30000 | 10000 | 3276774 | 972591 | 2970799 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 122915 | 90017 | 50011 | 30006 | 10000 | 40010 | 30000 | 10000 | 3276774 | 972591 | 2970799 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 122915 | 90017 | 50011 | 30006 | 10000 | 40010 | 30000 | 10000 | 3276774 | 972591 | 2970799 | 80010 | 30020 | 10000 | 30000 | 60096 | 20026 | 30037 | 50007 | 10000 | 20000 | 40010 |
70024 | 122915 | 90017 | 50011 | 30006 | 10000 | 40010 | 30000 | 10000 | 3276774 | 972591 | 2970799 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 122915 | 90017 | 50011 | 30006 | 10000 | 40010 | 30000 | 10000 | 3276774 | 972591 | 2970799 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 122915 | 90017 | 50011 | 30006 | 10000 | 40010 | 30000 | 10000 | 3276774 | 972591 | 2970799 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
70024 | 122915 | 90017 | 50011 | 30006 | 10000 | 40010 | 30000 | 10000 | 3276774 | 972591 | 2970799 | 80010 | 30020 | 10000 | 30000 | 60020 | 20000 | 30000 | 50001 | 10000 | 20000 | 40010 |
Count: 8
Code:
ld2r { v0.8b, v1.8b }, [x6], x8 ld2r { v0.8b, v1.8b }, [x6], x8 ld2r { v0.8b, v1.8b }, [x6], x8 ld2r { v0.8b, v1.8b }, [x6], x8 ld2r { v0.8b, v1.8b }, [x6], x8 ld2r { v0.8b, v1.8b }, [x6], x8 ld2r { v0.8b, v1.8b }, [x6], x8 ld2r { v0.8b, v1.8b }, [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.0013
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 | 80214 | 320251 | 80122 | 160108 | 80021 | 80123 | 160036 | 80006 | 360952 | 360595 | 1269147 | 320122 | 200 | 80006 | 160012 | 200 | 160018 | 160017 | 80006 | 80000 | 160000 | 100 |
240204 | 80106 | 320147 | 80106 | 160036 | 80005 | 80108 | 160012 | 80008 | 336048 | 335717 | 1270402 | 320128 | 200 | 80008 | 160016 | 200 | 160014 | 160013 | 80006 | 80000 | 160000 | 100 |
240204 | 80106 | 320144 | 80105 | 160035 | 80004 | 80107 | 160010 | 80007 | 332428 | 332106 | 1268383 | 320124 | 200 | 80007 | 160013 | 200 | 160012 | 160010 | 80005 | 80000 | 160000 | 100 |
240204 | 80106 | 320146 | 80106 | 160035 | 80005 | 80107 | 160010 | 80007 | 337699 | 337374 | 1277984 | 320124 | 200 | 80007 | 160013 | 200 | 160014 | 160013 | 80005 | 80000 | 160000 | 100 |
240204 | 80106 | 320146 | 80106 | 160035 | 80005 | 80107 | 160010 | 80007 | 332415 | 332082 | 1267886 | 320124 | 200 | 80007 | 160013 | 200 | 160014 | 160013 | 80005 | 80000 | 160000 | 100 |
240204 | 80106 | 320147 | 80106 | 160036 | 80005 | 80108 | 160012 | 80008 | 336933 | 336605 | 1275191 | 320128 | 200 | 80008 | 160016 | 200 | 160076 | 160074 | 80036 | 80000 | 160000 | 100 |
240204 | 80106 | 320147 | 80106 | 160036 | 80005 | 80108 | 160012 | 80008 | 330878 | 330552 | 1269640 | 320128 | 200 | 80008 | 160016 | 200 | 160014 | 160013 | 80005 | 80000 | 160000 | 100 |
240204 | 80106 | 320144 | 80105 | 160035 | 80004 | 80107 | 160010 | 80007 | 334023 | 333742 | 1268230 | 320124 | 200 | 80007 | 160013 | 200 | 160016 | 160016 | 80006 | 80000 | 160000 | 100 |
240204 | 80106 | 320146 | 80106 | 160035 | 80005 | 80107 | 160010 | 80007 | 335950 | 335625 | 1276515 | 320124 | 200 | 80007 | 160013 | 200 | 160014 | 160013 | 80006 | 80000 | 160000 | 100 |
240204 | 80106 | 320147 | 80106 | 160036 | 80005 | 80107 | 160010 | 80008 | 333801 | 333468 | 1274639 | 320128 | 200 | 80008 | 160016 | 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 | 80156 | 320157 | 80031 | 160106 | 80020 | 80033 | 160036 | 80000 | 380058 | 380028 | 1376392 | 320010 | 20 | 80000 | 160000 | 20 | 160000 | 160000 | 80001 | 80000 | 160000 | 10 |
240024 | 80054 | 320041 | 80011 | 160030 | 80000 | 80010 | 160000 | 80000 | 332270 | 332248 | 1577041 | 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 |
240025 | 80111 | 320169 | 80044 | 160092 | 80033 | 80046 | 160068 | 80000 | 327694 | 327887 | 1568519 | 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 |
240025 | 80112 | 320167 | 80044 | 160090 | 80033 | 80046 | 160068 | 80000 | 301339 | 301701 | 1600460 | 320010 | 20 | 80000 | 160000 | 20 | 160016 | 160016 | 80006 | 80000 | 160000 | 10 |
240024 | 80063 | 320041 | 80011 | 160030 | 80000 | 80010 | 160000 | 80000 | 343922 | 343897 | 1563467 | 320010 | 20 | 80000 | 160000 | 20 | 160000 | 160000 | 80001 | 80000 | 160000 | 10 |
240024 | 80056 | 320041 | 80011 | 160030 | 80000 | 80010 | 160000 | 80000 | 329977 | 329952 | 1568691 | 320010 | 20 | 80000 | 160000 | 20 | 160000 | 160000 | 80001 | 80000 | 160000 | 10 |
240024 | 80056 | 320041 | 80011 | 160030 | 80000 | 80010 | 160000 | 80000 | 323459 | 323436 | 1556271 | 320010 | 20 | 80000 | 160000 | 20 | 160000 | 160000 | 80001 | 80000 | 160000 | 10 |
240024 | 80056 | 320041 | 80011 | 160030 | 80000 | 80010 | 160000 | 80000 | 339054 | 339028 | 1557407 | 320010 | 20 | 80000 | 160000 | 20 | 160000 | 160000 | 80001 | 80000 | 160000 | 10 |