Add Swap struct