
blank()  If the clue is [0], mark every cell empty.

empty()  If there are no clues, mark every unknown cell as empty.

clean_points()  Empty cells on the end of a line can be removed.

center()  If a chunk is long enough to overlap itself, some points must be filled.

edge()  If a line starts with a filled point, then it continues for the length of the first clue.

edge_dot()  A special case of edge() , where the line starts with "unknown, filled" and the clue is 1.

unique()  Find and isolate the longest unique part of a clue.

cant_fit()  Chunks of unknowns too small to fit the clue must be empty.

cant_reach()  If the start of the last clue is known, points past its reach must be empty.

