Nomenclature: given that all cages sum to the same total, an "x-cage" is a cage with x cells in it. The existence of a 5-cage implies the cage sum at least 15 The existence of 2 distinct 2-cages implies the cage sum is at most 15 => cage sum=15 By counting the number of cages of each size, it's clear every possible cage summing to 15 is in the grid. The white kropke identifies the 78 2-cage => the other 2-cage is the 69 Consecutive black kropkes on row 9 contain 124 or 248 => the 4th cell in the cage must be 8 or 1, and the 1248 cage is identified. The pair of black kropkes on row 1 could only be 1248 or 2436, but 1248's already taken => the 2436 cage is identified. 3 of the remaining 4 4-cages contain kropke dots => the only location for 1257 is the one without In row 9, the 1248 prevents 1347 or 1239 4-cages from being in box 9 => 1356 is the only one it can be, placing 1 and 3. The white and black kropkes in the 4-cage in box 6 can now only be 1239, placing all numbers => the cage containing 2346 resolves to 24 and 36 pairs => the cage containing 1356 resolves its 5 and 6 => can place 2 on the black kropke in the 5-cage 1347 is the final 4-cage, placing 1 and 7 => 9 placeable in row 9 The 3-cages split into 4 sets, those that can have black kropkes, those that can have white kropkes, those that can have both, and those that can have neither. Only 249 and 348 can have a black kropke, but 348 prevents the 34 in column 1, so that identifies the 249, placing all digits. => 3 and 4 resolve in the cage continaing 1347 in column 1. => 2 and 4 resolve in the cage containing 2436 in row 1. => 7 and 8 now placeable in box 9 => 8 placeable in column 8 267 is needed in one of the white kropke 3-cages. It can't go in either in box 2 because the 2 is unplaceable. So it must be in box 4. => 6 placeable in row 6 => 1 and 8 placeable in that same cage => 4 placeable on black kropke in 5-cage => cage containing 1248 fully resolves => 5 and 9 placeable in row 5 => 3 placeable in box 5 456 can now not go in the 3-cage spanning boxes 1 and 2, as the both the 4 and 5 would need to be in r3c3. => 465 fully placeable in the straight 3-cage with kropke => 36 in 2436 cage resolves => 127 triple in cage containing 1257 places the 5 in that cage => 4 placeable in column 9 => 7 placeable in box 6 => 8 and 4 placeable in row 4 => 348 fully placeable in the other 3-cage with a kropke => naked 8 in column 2 => that's therefore the 258 3-cage, fully resolved => 6 placeable in column 1 The straight 3-cage can now only be 159, all digits placeable The 7 in box 2 places the 1 in box 3 => 2 and 7 resolve in box 3 => 3 and 7 placeable in row 1 => 6 and 7 resolve in box 4 Final 3-cage can be filled with 3, 5 and 7 => 7 and 8 resolve in box 5 => 7 and 9 resolve in box 2 => 6 and 9 resolve in box 5 5-cage can be filled with 3, 5, and 1. 1 and 9 placeable in box 1. 2, 5, and 6 placeable in box 7. 6, 8, and 9 placeable in box 8. Bosh!