Refactor to pool