modularize pagination