Refactore page allocator