self move check