anchor.diff:     * Set the horizontal and vertical speed with the same value.
      */
     void set speed(num speed) {
  -    speedX = speed;
  -    speedY = speed;
  +    _speedVector = new StageXL.Vector(speed, speed);
     }
   
     /**
      * Set the horizontal and vertical acceleration with the same value.
      */
     void set acceleration(num acceleration) {
  -    accelerationX = acceleration;
  -    accelerationY = acceleration;
  +    _accelerationVector = new StageXL.Vector(acceleration, acceleration);
     }
   
     /**
  
positive.code:   /**
     * Horizontal speed of the sprite.
     * */
    num speedX = 0;
  
    /**
     * Vertical speed of the sprite
     * */
    num speedY = 0;
  
    /**
     * Horizontal acceleration of the sprite.
     */
    num accelerationX = 0;
  
    /**
     * Vertical acceleration of the sprite.
     */
    num accelerationY = 0;
  
    /**
     * The maximum speed limit for the Sprite.
  
negative.code: 
      _checkDestination();
  
      _speedVector += _accelerationVector.scale(_accelerationDirection * time);
  
      _addDistance(
          ((directionSystem.mainDirection * _speedVector) +
              _context.game.physics.gravityDirectionSystem.mainDirection.scale(
                  _context.game.physics.garvitySpeed)).scale(time));
  
      return true;
  
    }
  
    void _addDistance(StageXL.Vector distanceVector) {
      x += distanceVector.x;
      y += distanceVector.y;
    }
  
    /**
  