refactoring regarding MapPages