improved the object pools