prototype version of "roll your own"