Inspired by statechart-art by Kevin T. Ngo. Rules checked with /statechart by poteto.