fixed swapping