Kurotto

Description
Kurotto is a binary determination puzzle in which the cells in a grid are split into either shaded or unshaded.

Rules
The objective is to divide the grid into shaded and unshaded cells, subject to the following rules:
 * 1) Numbers in some circles count the total shaded cells in connected groups sharing an edge with that number.
 * 2) Cells with circles cannot be shaded.

Example
A standard 10x10 kurotto and its solution.