full page implementation version 1