Numbers are 0 to 9.
The numbers in the grey cells repeat horizontally and vertically and are present in every nonet.
No repeats in any other rows or columns.
Each of the other numbers is missing from one and only one nonet.
Five pairs of unknown numbers are semi-symmetric, with the corresponding cell containing the same number or its partner.
Note that in the steps below locked, placements and killer pairs in R6, R7 and C6 don’t apply for R67C6, as appropriate. However placements and locked for N3 and N6 DO apply for R67C6, as appropriate.
Prelims
a) 6(2) cage at R4C8 = {06/15/24}
b) 8(2) cage at R5C3 = {08/17/26/35}
c) 5(2) cage at R6C2 = {05/14/23}
d) 11(2) cage at R6C4 = {29/38/47/56}
e) 15(2) cage at R6C5 = {69/78}
f) 3(2) cage at R6C7 = {03/12}
g) 11(2) cage at R6C8 = {29/38/47/56}
h) 11(2) cage at R6C10 = {29/38/47/56}
i) 13(2) cage at R7C9 = {49/58/67}
j) 11(2) cage at R8C4 = {29/38/47/56}
k) 11(2) cage at R10C5 = {29/38/47/56}
l) 21(3) cage at R1C6 = {489/579/678}
m) 3(3) cage at R2C5 = {012}
n) 9(3) cage at R4C3 = {018/027/036/045/126/135/234}
o) 24(3) cage at R4C6 = {789}
p) 19(3) cage at R4C9 = {289/379/469/478/568}
q) 6(3) cage at R7C6 = {015/024/123}
r) 6(3) cage at R9C3 = {015/024/123}
s) 19(3) cage at R10C8 = {289/379/469/478/568}
1a. 3(3) cage at R2C5 = {012}, locked for N1
1b. 24(3) cage at R4C6 = {789}, locked for N3, clean-up: no 0,1,2 in R5C4
2a. 45 rule on C5 3 innies R210,11C5 = 9 = {018/027/036/045/126/135/234}, no 9, clean-up: no 2 in R11C6
2b. 6,7 of {027/126} must be in R10C5, 2 of {234} must be in R2C5 -> no 2 in R10C5, clean-up: no 9 in R11C6
2c. 45 rule on C7 2 innies R211C7 = 16 = {79}, locked for C7
2d. 13(3) cages in C7 = {058/148/256/346} (cannot be {238} which clashes with 3(2) cage at R6C7)
2e. 13(3) cage at R8C7 cannot be {14}8 which clashes with 6(3) cage at R7C6, cannot be {05}8 which combined with 6(3) cage at R7C6 = {123} clashes with 9(2) cage at R8C5 -> no 8 in R10C7
2f. 19(3) cage at R10C8 = {289/379/469/478} (cannot be {568} because R11C7 only contains 7,9), no 5
3a. “45” rule on N47 2 innies R58C8 + 2 missing numbers = 9
3b. Min 2 missing numbers = 1 with 1 missing from N4 and 0 missing from N7 -> max R58C8 = 8 = [08], no 9 in R8C8, clean-up: no 0 in R9C8
3c. Min R58C8 = 1 -> max total of the 2 missing numbers = 8 -> 9 must be in both N4 and N7
[Time to look at semi-symmetry.]
4a. 15(2) cage at R6C5 corresponds with 3(2) cage at R6C7 -> 6,9 or 7,8 paired with 0,3 or 1,2
4b. 15(2) cage = {69} with 3(2) cage = {03}
or 15(2) cage = {69} with 3(2) cage = {12}
or 15(2) cage = {78} with 3(2) cage = {12} (cannot be 15(2) cage = {78} with 3(2) cage = {03} which doesn’t fit with 24(3) cage at R4C6 and 6(3) cage at R7C6)
4c. 6,9 or 7,8 paired with 0,3 or 1,2 -> R211C7 = {79} cannot correspond with R211C5 = {03/12} -> R210,11C5 (step 2a) = {018/027/045/135/234} (cannot be {036/126}, no 6, clean-up: no 5 in R11C6
4d. 6 in C5 only in 12(3) cage at R3C5
or 15(2) cage at R6C5 = {69}
or 9(2) cage at R8C5 = {36}
-> 12(3) cage cannot be {039}
4e. 12(3) cage = {048/057/129/138/156/237/246/345} (cannot be {147} which clashes with R210,11C5)
4f. R2C7 corresponds with R11C5
4g. 15(2) cage = {69}, locked for C6
or 15(2) cage = {78}, paired with R67C7 = {12}, R2C7 = 7 => R11C5 = {12} blocks 12(3) cage = {129}
or 15(2) cage = {78}, paired with R67C7 = {12}, R2C7 = 9
-> 12(3) cage = {048/057/138/156/237/246/345}, no 9 in R3C5
4h. 15(2) cage = {69}
or 9(2) cage at R8C5 = {09}
-> 9(2) cage = {09/18/27/45} (cannot be {36}, no 3,6
4i. Combined cages 6(3) cage at R7C6 + 9(2) cage = {015}{27}/{024}{18}/{123}{09}/{123}{45}, 1,2 locked for N6, clean-up: no 9 in R8C4, no 7,8 in R8C8
4j. 13(3) cage at R8C7 = {148/256/346} => 6(3) cage at R7C6 + 9(2) cage cannot be {123}{45}
or 13(3) cage at R8C7 = {058}, 3(2) cage at R6C7 = {12}, 9(2) cage = {09}
or 13(3) cage at R8C7 = {058}, 3(2) cage at R6C7 = {12}, 15(2) cage = {69}, 6,9 paired with 1,2, 13(3) cage at R3C7 = {346}, no 6 in R8910C5 => 6 must be paired with 1 or 2 in 9(2) cage at R8C5
-> 9(2) cage at R8C5 = {09/18/27} (cannot be {45}, no 4,5
4k. 6(3) cage + 9(2) cage = {015}{27}/{024}{18}/{123}{09}, 0 locked for N6
4l. 13(3) cage at R8C7 = {058/148/256/346}
4m. 0,2 of {058/256} must be in R10C7 -> no 5 in R10C7
4n. 15(2) cage at R6C5 = {69}, 3(2) cage at R6C7 = {03}, 3 locked for C7 => 13(3) cage at R8C7 cannot be {346}
or 15(2) cage at R6C5 = {69}, 6 locked for C5, 3(2) cage at R6C7 = {12} => 6 paired with one of 1,2, R3C5 corresponds with R10C7, no 1,2,6 in R3C5 => no 6 in R10C7
or 15(2) cage at R6C5 = {78} => 9(2) cage at R8C5 = {09} => 6(3) cage at R7C6 = {123}, 3 locked for N6 => 13(3) cage at R8C7 cannot be {34}6
-> no 6 in R10C7
[I also looked at 3(3) cage at R2C5 = {012} corresponds with R10C8 + R11C7 of 19(3) cage at R10C8 and R11C6 but couldn’t get anything useful at this stage. 15(2) cage at R6C5 and/or 3(2) cage at R6C7 probably need to be reduced to one combination first.]
5a. R210,11C5 (step 4c) = {018/027/045/135/234}
5b. R210,11C5 = {018/045/135/234} (cannot be {027}; cannot be [072] which clashes with 11(2) cage at R10C5 = [74] + 19(3) cage at R10C8 = {289}, cannot be [270] because 11(2) cage at R10C5 = [74] => 19(3) cage at R10C8 = {289}, R2C5 = 2 corresponds with R11C7 = 9, 9 paired with 2 => 6 must be paired with 1 but R2C6 only ‘sees’ R11C7 = 4 while R3C4 only ‘sees’ R10C8 = {28})
-> R210,11C5 = {018/045/135/234}, no 7, clean-up: no 4 in R11C6
5c. R210,11C5 = {018/045/135} (cannot be {234}; cannot be [234] because R10,11C5 + R11C6 = [348] clashes with 19(3) cage at R10C8, cannot be [243] => R11C67 = [79] when R2C7 = 7 ‘sees’ R11C5 = 3 while R2C6 = {01} ‘sees’ R11C5 = 7), no 2 in R211C5
5d. R210,11C5 = {045/135} (cannot be {018}; cannot be [081] => 15(2) cage at R6C5 = {69}, R11C6 = 3, 19(3) cage at R10C8 = {469} => R11C7 = 9 corresponds with R2C5 = 0 => 6 must be paired with 3 but R11C6 = 3 only ‘sees’ R2C6 = {12}; cannot be [180] => 15(2) cage at R6C5 = {69}, R11C6 = 3, 19(3) cage at R10C8 = {469} => R10C8 + R12C6 = {46}, locked for N8, R11C7 = 9 corresponds with R2C5 = 1 => 15(2) cage at R6C5 = {69} must be paired with 3(2) cage at R6C7 = {12} but this clashes with R10C7 = {12}), no 8 in R10C5, clean-up: no 3 in R11C6
5e. R210,11C5 = {045/135}, R2C5 = {01} -> R10,11C5 = {35/45}, 5 locked for C5 and N8
5f. 6(3) cage at R9C3 = {015/024/123}
5g. R11C5 = {345} -> no 3,4,5 in R9C3 + R10C4
5h. 12(3) cage at R3C5 = {048/138/237/246}
5i. 7,8 of {138/237} must be in R3C5 -> no 3 in R3C5
6a. 12(3) cage at R3C5 (step 5h) = {048/138/237/246}
6b. Consider combinations for 21(3) cage at R1C6 = {489/579/678}
21(3) cage = {489}, 8 locked for N1 => 8 in C7 only in R89C7, locked for N6 => 15(2) cage at R6C5 + 9(2) cage at R8C5 = {69}{27}/{78}{09}, 7 locked for C5
or 21(3) cage = {579/678}, 7 locked for N1
-> 12(3) cage = {048/138/246}, no 7
6c. 12(3) cage = {048/246} (cannot be {138} = 8{13} because 15(2) cage at R6C5 = {69}, 9(2) cage at R8C5 = {27}, 6(3) cage at R7C6 = {015}, 5 locked for N6, 8 in C7 only in 13(3) cage at R8C7 = {48}1 => 3(2) cage at R6C7 = {03} => R2C5 = 0 paired with R11C7 = 9 => 6 paired with 3, 13(3) cage at R3C7 = {256} but R3C57 = [85] clashes with 21(3) cage at R1C6 while R3C6 = 6 cannot correspond with R10C5 = {45}), no 1,3, 4 locked for C5, clean-up: no 7 in R11C6
[Is there a better way to make this elimination?]
6d. R210,11C5 (step 5e) = {135} -> R2C5 = 1, naked pair {35} in R10,11C5, 3 locked for N8, clean-up: no 8 in 9(2) cage at R8C5
6e. 6(3) cage at R7C6 = {015/123} (cannot be {024} which clashes with 9(2) cage at R8C5), no 4
6f. 19(3) cage at R10C8 = {289/469/478}
6g. R11C7 = {79} -> no 7,9 in R10C8 + R12C6
6h. Killer pair 6,8 in 19(3) cage and R11C6, locked for N8
6i. 12(3) cage = {246} (cannot be {048} = 8{04} because 9(2) cage at R8C5 = {27}, 6(3) cage at R7C6 = {015}, 5 locked for N6, 8 in C7 only in 13(3) cage at R8C7 = {48}1 but 1 in R2C5 cannot correspond with R11C7 at the same time that 8 in R2C5 corresponds with 1 in R10C7)
[The last of the hard steps.]
6j. Naked triple {246} in 12(3) cage at R3C5, locked for C5, 2 locked for N3, 15(2) cage at R6C5 = {78}, 9(2) cage at R8C7 = {09}, 9 locked for N6, 6(3) cage at R7C6 = {123}, 3 locked for N6, clean-up: no 2,8 in R8C4, no 0,6 in R8C8
6k. 15(2) cage at R6C5 = {78} -> 3(2) cage at R6C7 (step 4b) = {12}, locked for C7, 7,8 paired with 1,2
6l. 3 in C7 only in 13(3) cage at R3C7 = {346}, 4,6 locked for C7 => R10C7 = 0
6m. Naked pair {58} in R89C7, locked for N6, clean-up: no 3,6 in R8C4, no 1,4 in R8C8
6n. Naked quad {2346} in R45C57, locked for N3, 3 locked for 13(3) cage at R3C7, clean-up: no 3,5,6,7 in R5C4, no 0,2,4 in R5C8
6o. Naked pair {46} in R35C7, locked for N1
6p. 21(3) cage at R1C1 = {579}, locked for N1
7a. 7,8 pair with 1,2, R2C5 = 1 -> R11C7 = 7, R2C7 = 9, 1 paired with 7, 2 paired with 8
7b. R11C7 = 7 -> R10C8 + R12C6 = 12 = {48}, locked for N8 -> R11C6 = 6, R10C5 = 5, R11C5 = 3
7c. 2 paired with 8, 3(3) cage at R2C5 corresponds with R10C8 + R11C67 -> R3C4 = 2, R10C8 = 8, R2C6 = 0, R11C6 = 6 -> 0 paired with 6, clean-up: no 9 in 11(2) cage at R6C4, no 3 in 11(2) cage at R6C8
7d. 1 paired with 7, R10C4 = 1 -> R3C8 = 7, R1C6 = 5, R12C6 = 4, 4 paired with 5, clean-up: no 8 in R5C4, no 4 in 11(2) cage at R6C8, no 2 in R8C8
7e. 11(2) cage at R6C8 = {29} (cannot be {56} which clashes with 9(2) cage at R8C8)
7f. 19(3) cage at R4C9 = {379/469/478/568} (cannot be {289} which clashes with R6C8), no 2
7g. 9(2) cage at R4C4 = [09] (cannot be [54] which clashes with 11(2) cage at R8C4), clean-up: no 6 in R5C8, no 0 in R6C9
7h. Naked pair {15} in 6(2) cage at R4C8, locked for C8 -> 9(2) cage at R8C8 = [36], clean-up: no 8 in R6C10, no 6 in R7C3, no 5 in R8C4
7i. Naked pair {47} in 11(2) cage at R8C4, locked for C4
7j. R10C4 = 1, R11C5 = 3 -> R9C3 = 2 (cage sum), clean-up: no 6 in 8(2) cage at R5C3, no 3 in R6C2, no 7 in 9(2) cage at R7C3
7k. 2 paired with 8, R9C3 = 2 -> R4C9 = 8, clean-up: no 1 in 9(2) cage at R5C9, no 5 in 13(2) cage at R7C9
7l. R4C9 = 8 -> 19(3) cage at R4C9 = {478/568}, no 3,9
7m. 9(2) cage at R5C7 = [09]/{27/36} (cannot be {45} which clashes with 19(3) cage), no 4,5
7m. 2 paired with 8, 4 with 5, R89C7 = {58} -> R45C5 = {24}, 4 locked for C5 and N3 -> R3C57 = [64]
8a. X-Wing for 2 in 3(2) cage at R6C7 and 11(2) cage at R6C8, no other 2 in R6, N4 and N7, clean-up: no 7 in 9(2) cage at R5C7, no 3 in R7C2, no 9 in 11(2) cage at R6C10
8b. Killer pair {69} in 9(2) cage at R5C7 and 13(2) cage at R7C9, locked for C9
8c. 2 paired with 8, 11(2) cage at R6C8 = {29} -> 11(2) cage at R6C4 = {38}, 3 paired with 9
8d. X-Wing for 8 in 11(2) cage at R6C4 and 15(2) cage at R6C5, no other 8 in N2 and N5, clean-up: no 0 in 8(2) cage at R5C3, no 1 in 9(2) cage at R7C3
8e. 15(3) cage at R7C11 = {078/168} (cannot be {069/456} which clash with 13(2) cage at R7C9, cannot be {159} which clashes with R7C78, ALS block), no 4,5,9, 8 locked for N7, clean-up: no 3 in R6C10
8f. 13(2) cage at R7C9 = {49} (cannot be {67} which clashes with 15(3) cage), locked for C9 and N7 -> 11(2) cage at R6C8 = [92], 3(2) cage at R6C7 = [21], clean-up: no 0 in R5C9, no 4 in R6C2, no 7 in R6C10
8g. Naked pair {36} in 9(2) cage at R5C9, locked for N4
8h. 19(3) cage at R4C9 = {478}, locked for N4, R6C10 = 5 -> R7C10 = 6, clean-up: no 3 in R5C3, no 0 in R7C2
8i. 0 paired with 6, R7C10 = 6 -> R6C2 = 0, R7C2 = 5, clean-up: no 4 in 9(2) cage at R7C3
8j. 9(3) cage at R4C3 = {126/234} (cannot be {135} which clashes with 8(2) cage at R5C3) -> R5C2 = 2, R4C3 + R6C1 = {16/34}, R45C5 = [24], R5C10 = 7, R6C11 = 4, clean-up: no 3 in R4C3, no 1 in R6C3
8k. Killer pair 1,3 in 9(3) cage at R4C3 and 8(2) cage at R5C3, locked for N2 -> 11(2) cage at R6C5 = [83], 15(2) cage at R6C6 = [78], R6C3 = 3 -> R5C3 = 5, 9(2) cage at R5C9 = [36], R45C7 = [36], R6C1 = -> R4C2 = 6, 6(2) cage at R5C8 = [51]
8l. 1 paired with 7, R6C1 = 1 -> R7C11 = 7, R9C9 = 0 -> R8C10 = 8, R89C7 = [58], 9(2) cage at R8C5 = [09], 9(2) cage at R7C3 = [09], 13(2) cage at R7C9 = [94], 11(2) cage at R8C4 = [74], R7C1 = 4
8m. 1 paired with 7, R5C10 = 7 -> R8C2 = 1, R58C6 = [82], R112C6 = [54], R39C6 = [39], R48C6 = [71] -> R67C6 = [93] are the repeated numbers in R67 and C6