protected override void End()
 {
     target.ChangeDirection(target.Direction);
     target = null;
     base.End();
 }