function lerp$3(out, a, b, t) {
    var mt = 1 - t;
    if (dot$3(a, b) < 0) t = -t;
    out[0] = a[0] * mt + b[0] * t;
    out[1] = a[1] * mt + b[1] * t;
    out[2] = a[2] * mt + b[2] * t;
    out[3] = a[3] * mt + b[3] * t;
    out[4] = a[4] * mt + b[4] * t;
    out[5] = a[5] * mt + b[5] * t;
    out[6] = a[6] * mt + b[6] * t;
    out[7] = a[7] * mt + b[7] * t;
    return out;
  }
Performs a linear interpolation between two dual quats's
NOTE: The resulting dual quaternions won't always be normalized (The error is most noticeable when t = 0.5)

@param {quat2} out the receiving dual quat
@param {quat2} a the first operand
@param {quat2} b the second operand
@param {Number} t interpolation amount, in the range [0-1], between the two inputs
@returns {quat2} out