Still refactoring.  This is more like what I want.