Use rvalue ref in swap