fix return page;
keep dry; clean up;