pages function