Prelims
a) R1C89 = {13}
b) R23C1 = {39/48/57}, no 1,2,6
c) R23C5 = {29/38/47/56}, no 1
d) R45C8 = {15/24}
e) R56C6 = {18/27/36/45}, no 9
f) R7C89 = {15/24}
g) R89C9 = {29/38/47/56}, no 1
h) R9C34 = {16/25/34}, no 7,8,9
i) 20(3) cage at R6C3 = {389/479/569/578}, no 1,2
j) 19(3) cage at R7C3 = {289/379/469/478/568}, no 1
k) 26(4) cage at R8C6 = {2789/3689/4589/4679/5678}, no 1
1. Naked pair {13} in R1C89, locked for R1 and N3
1a. 14(3) cage at R1C1 = {248/257}, no 6,9, 2 locked for R1 and N1
2. 6(2) pairs at R4C8 and R7C8 must have different combinations (locking cages) forming naked quad {1245}, CPE no 2,4,5 in R89C8
2a. Caged X-Wing for 1 in R1C89 and 6(2) pairs at R4C8 and R7C8, no other 1 in C89
3. 45 rule on N5 1 outie R6C3 = 1 innie R5C4 + 7 -> R5C4 = {12}, R6C3 = {89}
4. 45 rule on R1 1 innie R1C7 = 1 outie R2C4 + 4, no 4 in R1C7, no 6,7,8,9 in R2C4
5. 45 rule on R89 2 innies R8C23 = 13 = {49/58/67}, no 1,2,3
6. 45 rule on C89 2 innies R89C8 = 16 = {79}, locked for C8, N9 and 26(4) cage at R8C6, no 7,9 in R8C6, clean-up: no 2,4 in R89C9
6a. 45 rule on C89 2 outies R8C67 = 10 = {28/46}, no 3,5
7. 16(3) cage at R2C8 = {259/268/457}
7a. Hidden killer pair 6,8 in 16(3) cage at R6C8 for C8, 16(3) cage contains both or neither of 6,8, R6C8 cannot contain both of 6,8 -> 16(3) cage must contain both of 6,8 = {268}, locked for N1, clean-up: no 2,4 in R2C4 (step 4)
7b. 6 in R1 only in R1C456, locked for N2, clean-up: no 5 in R23C5
8. 6(2) pairs at R4C8 and R7C8 form naked quad {1245}
8a. Caged X-Wing for 2 in 16(3) cage at R2C8 and 6(2) pairs at R4C8 and R7C8, no other 2 in C89
9. 45 rule on C12 2 outies R12C3 = 8 = [26/53/71]
10. 24(5) cage at R1C7 = {12579/13479} (cannot be {12489/13578/23478} because there need to be three of 4,5,7,9 in R123C7), no 8
10a. 1,2,3 only in R23C6 = {12/13}, 1 locked for C6 and N2, clean-up: no 5 in R1C7 (step 4), no 8 in R56C6
10b. 24(5) cage = {12579/13479}, 7,9 locked for C7 and N3
11. 45 rule on N6789 2(1+1) outies R3C9 + R6C2 = 10 = [46/55]
11a. 45 rule on N235 2 innies R3C49 = 12 = [75/84]
12. 45 rule on N1457 3 outies R379C4 = 18
12a. Max R39C4 = 14 -> min R7C4 = 4
13. 6 in R1 only in 23(4) cage at R1C4 = {3569/4568}, no 7
13a. R23C5 = {29/47} (cannot be {38} which clashes with 23(4) cage), no 3,8 in R23C5
13b. R3C49 (step 11a) = [75/84] -> R23C5 = [29/47/92], no 7 in R2C5, no 4 in R3C5
13c. 23(4) cage = {3569/4568} -> R23C4 = [38/57]
14. R379C4 = 18 = {189/279/378/468} (cannot be {369/459} because R3C4 only contains 7,8, cannot be {567} which clashes with R23C4 = [57]), no 5, clean-up: no 2 in R9C3
14a. 9 of {279} must be in R7C4, 7 of {378} must be in R3C4 (cannot be [873] which clashes with R23C4 = [38]), no 7 in R7C4
15. 20(3) cage at R6C3 = {389/479/578} (cannot be {569} which clashes with R6C2), no 6 in R6C45
15a. Combined cage 20(3) + R56C6 = {27/36/45} = {389}{27/45}/{479}{36}/{578}{36}, 3 locked for N5
16. R7C89 = {15/24}, R89C9 = {38/56} -> combined cage R7C89 + R89C9 = {15}{38}/{24}{38}/{24}{56}
16a. 45 rule on N9 2 innies R79C7 = 1 outie R8C6 + 2
16b. R8C6 = {2468} -> R79C7 = 4,6,8,10 but cannot be {28} which clashes with combined cage, no 8 in R79C7
17. R8C23 (step 5) = {49/58/67}, R8C67 (step 6a) = {28/46} -> combined cage R8C2367 = {49}{28}/{58}{46}/{67}{28}, 8 locked for R8, clean-up: no 3 in R9C9
18. 3 in N5 only in 20(3) cage at R6C3 = {389}
or in R56C6 = {36}, locked for C6 => R23C6 = {12}, locked for N2 => R23C5 = [47]
-> no 4,7 in R6C5
18a. 20(3) cage = {389/578} (cannot be {479} because 4,7 only in R6C4), no 4, 8 locked for R6
18b. 7 of {578} must be in R6C4 -> no 5 in R6C4
[I can see a longer forcing chain to eliminated {578}, but I’ll leave that for now.]
19. 7,9 in C9 only in 31(5) cage at R3C9 = {34789/45679} (cannot be {35689} which doesn’t contain 7)
19a. 7,8,9 of {34789} must be in R456C9 -> no 3 in R456C9
20. R3C9 + R6C2 (step 11) = [46/55], 31(5) cage at R3C9 (step 19) = {34789/45679}
20a. 3 in N5 only in 20(3) cage at R6C3 = {389}, locked for R6 => 31(5) cage = {45679}
or in R56C6 = {36}, R3C9 + R6C2 = [46] => R56C6 = [63] => no 3 in R6C8 (while R3C9 + R6C2 = [55] eliminates {34789} which doesn’t contain 5)
-> 31(5) cage = {45679}, no 3,8, 6 locked for N6
20b. Killer pair 4,5 in 31(5) cage and R45C8, locked for N6
21. 3,8 in N6 only in R45C7, locked for C7 and 28(6) cage at R4C7, no 3,8 in R7C56, clean-up: no 2 in R8C6 (step 6a)
21a. R9C9 = 8 (hidden single in N9), R8C9 = 3, R1C89 = [31], clean-up: no 5 in R7C8
22. 3,8 in N6 only in 28(6) cage at R4C7 = {123589} (cannot be {134578/234568} which clash with R7C89), no 4,6,7
22a. R7C567 must be {159} (cannot be {259} which clashes with R7C89), locked for R7, 9 also locked for N8 -> R456C7 must be {238}, locked for C7 and N6, clean-up: no 4 in R45C8, no 8 in R8C6 (step 6a)
23. Naked pair {24} in R7C89, locked for R7 and N9 -> R8C67 = [46], clean-up: no 5 in R56C6, no 3 in R9C3
23a. Naked pair {15} in R79C7, locked for C7
23b. R3C9 = 5 (hidden single in N3), R3C4 = 7 (step 11a), R6C2 = 5 (step 11), clean-up: no 5,7 in R2C1, no 4 in R2C5
24. Naked triple {389} in 20(3) cage at R6C3, locked for R6, 3 also locked for N5 -> R6C7 = 2, clean-up: no 6,7 in R5C6, no 6 in R6C6
24a. R56C6 = [27], R5C4 = 1, R6C3 = 8 (step 3), R45C8 = [15]
24b. Naked pair {39} in R6C45, locked for N5
25. R6C1 = 1 (hidden single in R6), R5C12 = 15 = {69}, locked for R5 and N4
26. Naked pair {13} in R23C6, locked for C6 and N2 -> R2C4 = 5, R1C7 = 9 (step 4)
26a. 14(3) cage at R1C1 = {257} (hidden triple in R1), locked for N1
27. R379C4 = 18 (step 14), R3C4 = 7 -> R79C4 = 11 = [83], R9C3 = 4
28. R45C3 = [23], R3C3 = 9 (cage sum), clean-up: no 5 in R1C3, no 6 in R2C3 (both step 9), no 3 in R23C1
28a. Naked pair {48} in R23C1, locked for C1 and N1 -> R4C1 = 7
and the rest is naked singles.