added pagination to handle lots of data