code: function() {
          var value = {};
          for (var i in this.begin) {
              var b = this.begin[i];
              var f = this.finish[i];
              if (b == null || f == null || isNaN(b) || isNaN(f)) {
                  throw new TypeError('invalid value for Tween');
              }
  
              var c = f - b;
              value[i] = this.easing.apply(this, [this.time, b, c, this.duration]);
          }
          this.time++;
          
          if (this.callbacks && this.callbacks.eachStep) {
              // skip frames if frame rate drops below threshold
              if ((new Date().getTime() - this.startTime) / this.time <= 1000 / this.minFrameRate) {
                  this.callbacks.eachStep.call(this, value);
              }
          }
          
          if (this.time > this.duration) {
              this.stop();
          }
      }
docs: Method: play
  Calls the appropriate easing method