why swap the addresses?