Introduce InstancePoolTrait