handles proper move sequences