Cross The Streams

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

Rules
The objective is to shade some cells, subject to the following rules:
 * 1) All shaded cells must connect horizontally or vertically upon completion.
 * 2)  No 2x2 area of shaded cells is allowed.
 * 3) Numbers to the left/top of the grid match with connected shaded cells in the respective row/column, in order. The length of these groups of connected shaded cells is equal to the value of the clue, separated by at least 1 unshaded cell.
 * 4) A question mark (?) represents a single clue whose value is unknown.
 * 5) An asterisk (*) represents any number of unknown clues, including none at all.

Example
A standard 10x10 Cross The Streams and its solution.