modify base page for more flexible usage