ready to try new prototype approach
seems to work, commit then cleanup
all done, nice and clean.