support custom pool through options