we're swapping 2 things, there is no source/destination distinction, same as an Equals method.