Updated the page factory model with proper structure.