Returns:
A derived class shall implement this function to return a pointer to allocated storage ([basic.stc.dynamic.deallocation]) with a size of at least bytes.
The returned storage is aligned to the specified alignment, if such alignment is supported ([basic.align]);
otherwise it is aligned to max_align.
Requires:p shall have been returned from a prior call to allocate(bytes, alignment) on a memory resource equal to *this,
and the storage at p shall not yet have been deallocated.
Returns:
A derived class shall implement this function to return true if memory allocated from this can be deallocated from other and vice-versa,
otherwise false.