Still working on this..
scratch.mit.edu/projects/25419…