docs: function (args) {
              var howCloseToEnd = (args.endTime - new Date().getTime()) / args.duration;
              var toPosition = args.to;
              if (howCloseToEnd < 0) {
                  this.absoluteMouseMove(toPosition, args.cb);
                  return;
              }
              var fromPosition = args.from;
              this.absoluteMouseMove({
                  x : howCloseToEnd * fromPosition.x + (1 - howCloseToEnd) * toPosition.x,
                  y : howCloseToEnd * fromPosition.y + (1 - howCloseToEnd) * toPosition.y
              }, {
                  fn : this._stepSmoothAbsoluteMouseMove,
                  scope : this,
                  resIndex : -1,
                  args : args
              });
          }