refactoring new_uninitialized