inital functional prototype