snippet swapping stuff