Implemented object pooling