swap and remove
Merge branch 'swap' into clean