improve pagination