Prelims
a) R1C12 = {49/58/67}, no 1,2,3
b) R12C5 = {39/48/57}, no 1,2,6
c) R1C89 = {19/28/37/46}, no 5
d) R34C3 = {49/58/67}, no 1,2,3
e) R34C7 = {19/28/37/46}, no 5
f) R67C3 = {19/28/37/46}, no 5
g) R67C7 = {16/25/34}, no 7,8,9
h) R89C5 = {39/48/57}, no 1,2,6
i) R9C12 = {15/24}
j) R9C89 = {19/28/37/46}, no 5
k) 10(3) cage at R3C1 = {127/136/145/235}, no 8,9
l) 11(3) cage at R6C8 = {128/137/146/236/245}, no 9
m) 19(3) cage at R8C7 = {289/379/469/478/568}, no 1
n) 14(4) cage at R1C3 = {1238/1247/1256/1346/2345}, no 9
1a. 45 rule on C1234 3 innies R456C4 = 19 = {289/379/469/478/568}, no 1
1b. 45 rule on C6789 3 innies R456C6 = 15 -> R456C5 = 11 = {128/146/236} (cannot be {137/245} which clash with R12C5 + R89C5, no 5,7,9
1c. R456C4 = {289/379/469/478} (cannot be {568} which clashes with R456C5), no 5
1d. 45 rule on N5 2 outies R37C5 = 10 = {19/28/37/46}, no 5
1e. 5 in C5 only in R12C5 = {57} or R89C5 = {57}, 7 locked for C5 (locking cages), clean-up: no 3 in R37C5
1f. 5 in N5 only in R456C6, locked for C6
2a. 45 rule on C123 2 innies R19C3 = 5 = {14/23}
2b. 45 rule on C789 2 innie R19C7 = 8 = {17/26/35}, no 4,8,9
2c. 45 rule on C89 3 outies R258C7 = 20 = {389/479/569/578}, no 1,2
2d. 45 rule on R1234 2 innies R4C19 = 13 = {49/58/67}, no 1,2,3
2e. 45 rule on R6789 2 innies R6C19 = 12 = {39/48/57}, no 1,2,6
2f. 45 rule on N2 1 innie R3C5 = 2 outies R1C37 + 1
2g. Min R1C37 = 3 -> min R3C5 = 4, clean-up: no 8,9 in R7C5 (step 1d)
3a. 45 rule on N7 2 outies R6C23 = 1 innie R9C3 + 4
3b. Max R9C3 = 4 -> max R6C23 = 8, no 8,9 in R6C23, clean-up: no 1,2 in R7C3
3c. R6C23 = R9C3 + 4 -> no 4 in R6C2 (IOU)
3d. 45 rule on N3 2 outies R4C78 = 1 innie R1C7 + 8 -> no 8 in R4C8 (IOU)
3e. 45 rule on N9 2 outies R6C78 = 1 innie R9C7 + 2 -> no 2 in R6C8 (IOU)
4a. 45 rule on R8 3 innies R8C456 = 9 = {135/234} (cannot be {126} because no 1,2,6 in R8C5), no 6,7,8,9, 3 locked for R8 and N8, clean-up: no 4,5 in R9C5
4b. 1 in R8 only in 17(3) cage at R8C1 = {179} or R8C456 = {135} -> no 5 in 17(3) cage (locking-out cages)
4c. 45 rule on R89 2 outies R7C46 = 11 = {29/47}/[56], no 1,8, no 6 in R7C4
4d. 8 in N8 only in R9C456, locked for R9, clean-up: no 2 in R9C89
4e. Variable hidden killer pair 7,9 in R7C46 and R9C456 for N8, R7C46 cannot contain both of 7,9 -> R9C456 must contain at least one of 7,9
4f. Whichever of 6,7,8,9 in 19(3) cage at R8C7 must be in R9C456 for R6 -> 19(3) cage must contain at least one of 7,9 = {289/469/478} (cannot be {568} because R9C456 must contain one of 7,9, note that 19(3) cage = {568} forces R8C456 = {234}, 17(3) cage at R8C1 = {179}, 6(2) cage at R9C1 = {24}, R9C3 = 3 so {568} would have to be in R9C456), no 5
Alternative step 4f, in my normal style
19(3) cage at R8C7 = {289/469/478/568}, R9C12 = {15/24}
Consider combinations for R9C89 = {19/37/46}
R9C89 = {19}, locked for R9 and N9 => R9C12 = {24}, 2 locked for R9, 9 in N8 only in R7C46 = {29}, 2 locked for R7 => 2 in N9 only in 19(3) cage = {289}
or R9C89 = {37} => 9 in N9 only in 19(3) cage = {289/469}
or R9C89 = {46}, locked for N9 => 19(3) cage = {289} -> 19(3) cage = {289/469}
This actually achieves more than the first version of step 4f, including eliminating R9C89 = {19}, but I’ll leave the remaining steps unchanged.
[Fairly straightforward from here.]
4g. R8C456 = {135} (cannot be {234} which clashes with 19(3) cage), 1,5 locked for N8, 1 locked for R8, clean-up: no 9 in R3C5 (step 1d), no 6 in R7C6, no 8 in R9C5
4h. 17(3) cage at R8C1 = {269/278/467}
4i. R9C12 = {15} (cannot be {24} which clashes with 17(3) cage), locked for R9 and N7, clean-up: no 4 in R1C3 (step 2a), no 3,7 in R1C7 (step 2b), no 9 in R9C89
4j. 9 in N9 only in 19(3) cage = {289/469}, no 7, 9 locked for R8
4k. 9 in R9 only in R9C456, locked for N8, clean-up: no 2 in R7C46
4l. Naked pair {47} in R7C46, locked for R7 and N8 -> R9C5 = 9, R8C5 = 3, R8C46 = [51], clean-up: no 6 in R3C5 (step 1d), no 3,6 in R6C3, no 3 in R6C7
4m. R12C5 = {57} (hidden pair in C5), 7 locked for N2
5a. R8C4 = 5 -> 17(4) cage at R7C4 = {2357/2456}, no 8
5b. R9C6 = 8 (hidden single in N8)
5c. R89C6 = [18] = 9 -> R7C6 + R9C7 = 11 = [47], R7C4 = 7, R1C7 = 1 (step 2b), clean-up: no 9 in R1C89, no 3,9 in R34C7, no 6 in R67C7, no 4 in R9C3 (step 1a), no 3 in R9C89
5d. Naked pair {46} in R9C89, locked for N9, 6 locked for R9 -> R9C4 = 2, R19C3 = [23], R7C5 = 6 -> R3C5 = 4 (step 1d), clean-up: no 8 in R1C89, no 9 in R4C3, no 6 in R4C7, no 4,7 in R6C3, no 8 in R7C3
5e. R67C3 = [19], clean-up: no 4 in R4C3
5f. R7C12 = {28}, locked for R7 and N7, R6C2 = 6 (cage sum), clean-up: no 7 in R1C1, no 7 in R3C3, no 7 in R4C9 (step 2d)
5g. Naked triple {128} in R456C5, 2,8 locked for N5
5h. R456C4 (step 1a) = 19 = {469} (only remaining combination), 6 locked for C4, 6,9 locked for N5
5i. R7C6 = 6 -> 23(4) cage at R6C4 = {4568} (only possible combination, cannot be {2678} because 2,8 only in R6C5, cannot be {3569} because R6C5 only contains 2,8) -> R6C456 = [485], R6C7 = 2 -> R7C7 = 5, clean-up: no 8 in R34C7, no 7 in R6C19 (step 2e)
5j. R34C7 = [64], clean-up: no 4 in R1C89, no 9 in R4C19 (step 2d), no 7 in R4C3
5k. 45 rule on N4 2 remaining innies R4C23 = 10 = [28] -> R3C3 = 5, clean-up: no 5 in R4C19 (step 2d)
5l. R4C19 = [76], R4C2 = 2 -> R3C12 = 8 = [17]
5m. Naked pair {37} in R1C89, locked for R1 and N3
and the rest is naked singles.