working on page functionality