SwapReference although rough now seems to work