init with custom page