no need for sync.Pool