add Page struct