Change create method to allocateFromPool