added per_page option