handle error can take a page as argument