text: function WalkontableCornerScrollbarNative(instance) {
    this.instance = instance;
    this.init();
    this.clone = this.makeClone('corner');
  }
  
  WalkontableCornerScrollbarNative.prototype = new WalkontableScrollbarNative();
  
  WalkontableCornerScrollbarNative.prototype.makeClone = function (direction) {
    if (this.instance.cloneFrom) {
      return;
    }
  
    var clone = $('<div id="cln_' + direction + '" class="handsontable"></div>');
    this.instance.wtTable.holder.parentNode.appendChild(clone[0]);
  
    clone.css({
      position: 'fixed',
      overflow: 'hidden'
    });
  
    var table2 = $('<table class="htCore"></table>');
    table2.className = this.instance.wtTable.TABLE.className;
    clone.append(table2);
  
    var walkontableConfig = {};
    walkontableConfig.cloneFrom = this.instance;
    walkontableConfig.cloneDirection = direction;
    walkontableConfig.table = table2[0];
    var wt = new Walkontable(walkontableConfig);
  
    return wt;
  };
  
  WalkontableCornerScrollbarNative.prototype.resetFixedPosition = function () {
    if (!this.instance.wtTable.holder.parentNode) {
      return; //removed from DOM
    }
    var elem = this.clone.wtTable.holder.parentNode;
  
    var box;
    if (this.scrollHandler === window) {
      box = this.instance.wtTable.holder.getBoundingClientRect();
      var top = Math.ceil(box.top, 10);
      var bottom = Math.ceil(box.bottom, 10);
  
      if (top < 0 && bottom > 0) {
        elem.style.top = '0';
      }
      else {
        elem.style.top = top + 'px';
      }
  
      var left = Math.ceil(box.left, 10);
      var right = Math.ceil(box.right, 10);
  
      if (left < 0 && right > 0) {
        elem.style.left = '0';
      }
      else {
        elem.style.left = left + 'px';
      }
    }
    else {
      box = this.scrollHandler.getBoundingClientRect();
      elem.style.top = Math.ceil(box.top, 10) + 'px';
      elem.style.left = Math.ceil(box.left, 10) + 'px';
    }
  
    elem.style.width = WalkontableDom.prototype.outerWidth(this.clone.wtTable.TABLE) + 4 + 'px';
    elem.style.height = WalkontableDom.prototype.outerHeight(this.clone.wtTable.TABLE) + 4 + 'px';
  };
  
  WalkontableCornerScrollbarNative.prototype.prepare = function () {
  };
  
  WalkontableCornerScrollbarNative.prototype.refresh = function (selectionsOnly) {
    this.measureBefore = 0;
    this.measureAfter = 0;
    this.clone && this.clone.draw(selectionsOnly);
  };
  
  WalkontableCornerScrollbarNative.prototype.getScrollPosition = function () {
  };
  
  WalkontableCornerScrollbarNative.prototype.getLastCell = function () {
  };
  
  WalkontableCornerScrollbarNative.prototype.getTableSize = function () {
  };
  
  WalkontableCornerScrollbarNative.prototype.applyToDOM = function () {
  };
  
  WalkontableCornerScrollbarNative.prototype.scrollTo = function () {
  };
  
  WalkontableCornerScrollbarNative.prototype.readWindowSize = function () {
  };
  
  WalkontableCornerScrollbarNative.prototype.readSettings = function () {
  };