added pool_size and recycling