utility header should instead be functional
no more nullptr test