start with canvas action already in place
clean up some of the sharp edges of the code