Puzzle #102: Gravel

Another Gravel making use of an irregularly shaped grid. I’m very happy with how clean the clue layout ended up for this one.

Rules: Shade some cells and divide the remaining cells into squares. Each unshaded square must touch at least one other square or the edge of the grid on each of its lower sides. Squares of the same side-length cannot touch. Cells with black or white circle clues must be shaded or unshaded, respectively. Number clues inside shaded regions indicate the total area of the region. Number clues inside unshaded squares indicate the side-length of the square.