Prelims
a) R4C23 = {39/48/57}, no 1,2,6
b) R5C12 = {39/48/57}, no 1,2,6
c) R5C89 = {16/25/34}, no 7,8,9
d) R6C78 = {69/78}
e) 9(3) cage at R6C4 = {126/135/234}, no 7,8,9
f) 10(3) cage a R9C1 = {127/136/145/235}, no 8,9
g) 14(4) cage at R1C1 = {1238/1247/1256/1346/2345}, no 9
1a. 45 rule on N4 1 innie R4C1 = 1
1b. 45 rule on N1 2 remaining innies R12C3 = 10 = {19/28/37/46}, no 5
1c. R12C3 = 10 -> R2C45 = 11 = {29/38/47/56}, no 1
1d. 45 rule on N6 1 innie R6C9 = 4, clean-up: no 3 in R5C89
1e. 45 rule on N9 2 remaining innies R89C7 = 10 = {19/28/37/46}, no 5
1f. R89C7 = 10 -> R8C56 = 12 = {39/48/57}, no 1,2,6
1g. 1 in R6 only in R6C456, locked for N5
1h. 45 rule on N3 2 outies R23C6 = 13 = {49/58/67}, no 1,2,3
1i. 45 rule on N7 2 outies R78C4 = 8 = {17/26/35}, no 4,8,9
1j. 45 rule on R123 2 remaining innies R3C45 = 9 = {18/27/36/45}, no 9
1k. 45 rule on R789 2 remaining innies R7C56 = 8 = [17]/{26/35}, no 4 in R7C5, no 1,4,8,9 in R7C6
1l. 40(7) cage at R3C4 must contain 9, locked for N5
1m. 4,8,9 in N8 only in R8C56 + R9C456, CPE no 4,8,9 in R9C7, clean-up: no 1,2,6 in R8C7
1n. R78C4 = {17/26/35}, R7C56 = [17]/{26/35} -> combined hidden cages R78C4 + R7C56 = {17}{26}/{17}{35}/{26}{35}
1o. R8C56 = {39/48} (cannot be {57} which clashes with R78C4 + R7C56), no 5,7
1p. 17(3) cage at R9C4 = {179/269/359/458} (cannot be {278/467} which clash with R78C4 + R7C56, cannot be {368} which clashes with R8C56)
1q. 18(3) cage at R8C2 = {279/369/468/567} (cannot be {189/378/459} which clash with R8C56}, no 1, clean-up: no 7 in R7C4
1r. 1 in R8 only in R8C89, locked for N9, clean-up: no 9 in R8C7
1s. 22(4) cage at R8C5 = {2389/3469/3478}, CPE no 3 in R8C89
1t. 45 rule on R9 3 innies R9C789 = 18 = {279/369/567} (cannot be {378} which clashes with R89C7 = {37} CCC, cannot be {459} because no 4,5,9 in R9C7, cannot be {468} which clashes with R89C7 = [46] CCC), no 4,8
1u. 17(3) cage = {458} (only remaining combination, cannot be {179/269/359} which clash with R9C789), locked for R9 and N8
1v. Naked pair {39} in R8C56, locked for R8, N8 and 22(4) cage at R8C5, clean-up: no 7 in R89C7
1w. 9 in R9 only in R9C89, locked for N9
1x. 1 in N8 only in R7C45, locked for R7, CPE no 1 in R6C4
1y. 9(3) cage at R6C4 = {126/135}, 1 locked for C5, clean-up: no 8 in R3C4
1z. 7 in N8 only in R7C6 + R8C7, CPE no 7 in R345C4, clean-up: no 2 in R3C5
1aa. R9C789 = {279/369}
1ab. R9C7 = {26} -> no 2,6 in R9C89
1ac. 18(3) cage at R8C2 = {567} (only remaining combination, cannot be {468} which clashes with R8C7), locked for R8, 5 also locked for N7, clean-up: no 6 in R7C4
1ad. Killer pair 6,7 in R8C23 and R9C123, locked for N7
1ae. 2 in N8 only in R7C456, locked for R7
2. 3 in N6 only in 19(4) cage at R4C7 = {1369/2359} (cannot be {1378} = {378}1 which clashes with R4C23, cannot be {2368} which clashes with R6C78), no 7,8
2a. 1 of {1369} must be in R5C7 -> no 6 in R5C7
2b. R6C78 = {78} (hidden pair in N6), locked for R6
2c. 2,6 in N4 only in 20(4) cage at R5C3 = {2369/2567} (cannot be {2468} because 4,8 only in R5C3), no 4,8
2d. 7 of {2567} must be in R5C3 -> no 5 in R5C3
2e. 40(7) cage at R3C4 must contain 8, locked for N5
2f. 40(7) cage must contain 7, CPE no 7 in R4C6
2g. 13(3) cage at R3C5 = {247/256/346} (cannot be {238} = 8{23} which clashes with 19(4) cage), no 8, clean-up: no 1 in R3C4 (step 1j)
2h. 1 in N2 only in 12(3) cage at R1C4, locked for R1, clean-up: no 9 in R2C3 (step 1b)
2i. 20(4) cage at R5C3 = {2369} (only remaining combination, cannot be {2567} = 7{256} which clashes with 9(3) cage at R6C4), locked for N4
2j. 5 in R6 only in R6C456, locked for N5
2k. 40(7) cage must contain 5, CPE no 5 in R3C6 + R6C4, clean-up: no 8 in R2C6 (step 1h)
2l. Naked quad {2369} in R6C1234, locked for R6, 9 also locked for N4
2m. 9(3) cage at R6C4 = [216/351/612]
2n. 13(3) cage = {247/346} (cannot be {256} = 5{26} which clashes with 9(3) cage), no 5, clean-up: no 4 in R3C4 (step 1j)
2o. 13(3) cage = {247/346}, CPE no 4 in R5C5
3. 25(5) cage at R7C1 = {13489} (only possible combination), no 2 -> R7C4 = 1, 3 locked for R7 and N7, R8C4 = 7 (step 1i), clean-up: no 4 in R2C5 (step 1c)
3a. 10(3) cage at R9C1 = {127} (hidden triple in N7), locked for R9, R9C7 = 6 -> R8C7 = 4 (step 1e), R8C1 = 8, clean-up: no 4 in R5C2
3b. R4C1 = 1 -> 14(4) cage at R1C1 = {1256/1346} (cannot be {1247} which clashes with R9C1), no 7, 6 locked for C1 and N1, clean-up: no 4 in R12C3 (step 1b)
3c. R6C5 = 1 (hidden single in C5), R6C6 = 5, clean-up: no 4 in R3C5 (step 1j), no 8 in R3C6 (step 1h)
3d. 9(3) cage at R6C4 = [216/612], no 3, CPE no 2,6 in R45C5
3e. 40(7) cage at R3C4 = {2356789} (only remaining combination), no 4
3f. R5C1 = 4 (hidden single in R5) -> R5C2 = 8
3g. 14(4) cage = {1256} (only remaining combination), 2,5 locked for C1 and N1, clean-up: no 8 in R12C3 (step 1b)
3h. R3C3 = 8 (hidden single in N1)
3i. Naked pair {57} in R4C23, locked for R4
3j. 19(4) cage at R4C7 (step 2) = {1369/2359}
3k. 1,5 of 19(4) cage only in R5C7 -> R5C7 = {15}
3l. 3 in N6 only in R4C789, locked for R4 -> R4C5 = 4
3m. 3 in N5 only in R5C456, locked for R5 and 40(7) cage at R3C4, clean-up: no 6 in R3C5 (step 1j)
3n. Killer pair 2,6 in R5C3 and R5C89, locked for R5
3o. Naked pair {26} in R47C6, locked for C6, clean-up: no 7 in R23C6 (step 1h)
3p. Naked pair {49} in R23C6, locked for C6 and N2 -> R8C56 = [93], R5C456 = [937], 17(3) cage at R9C4 = [458], R3C5 = 7, R3C4 = 2 (step 1j), R46C4 = [86], R4C6 = 2
3q. 2 in N6 only in R5C89 = {25}, locked for R5 -> R5C3 = 6, R8C23 = [65], R4C23 = [57], clean-up: no 3 in R12C3 (step 1b)
3r. R12C3 = [91]
3s. R6C9 = 4 -> 17(4) cage at R6C9 = {2348} (only remaining combination, cannot be {1349} because 3,9 only in R9C9, cannot {1457} because 5,7 only in R7C9) -> R789C9 = [823], R5C89 = [25], R89C8 = [19]
3t. 12(3) cage at R1C4 = [381/561]
3u. 18(3) cage at R1C7 = {378/567} (cannot be {468} which clashes with R1C5), no 2,4, 7 locked for R1 and N3
3v. Naked pair {69} in R24C9, locked for C9 -> R13C9 = [71]
3w. R2C7 = 2 (hidden single in N3) -> R2C68 = 13 = [94]
and the rest is naked singles.