support guard extension; add updatePage
rebuild