functional page functions