Thanks to Will Schneider for the illustrations!