small pool refactor