rename constructor->allocator
Take pointer.
Pointer predicate, dereference, fix take-pointer.