prototype 2 trying to define program as maps