code: function () {
  
          var args = _A(arguments, 0, 3);
          if (!args.length) {
              throw new Error('Parameters required!');
          }
  
          var opts = isObject(args.slice(-1)[0]) ? args.pop() : {};
  
          switch (args.length) {
              case 2:
                  opts.data = opts.data || args[1];
              case 1:
                  opts.dom = opts.dom || args[0];
          }
  
          if (!opts.dom) {
              throw new Error('Container can not be empty!');
          }
          else if (!isDom(opts.dom)) {
              throw new Error('Container must be a HTMLElement instance!');
          }
  
          if (!opts.data || !opts.data.length) {
              throw new Error('Data must be an array and must have more than one element!');
          }
  
          /**
           * Options
           * @private
           */
          this._opts = opts;
  
          opts = null, args = null;
  
          this._setting();
  
          this.fire('initialize');
  
          this._renderWrapper();
          this._initPlugins();
          this._bindHandler();
  
          this.fire('initialized');
  
          // Autoplay mode
          this._autoPlay();
      }
docs: @constructor
  
  iSlider([[{HTMLElement} container,] {Array} datalist,] {Object} options)
  
  @param {HTMLElement} container
  @param {Array} datalist
  @param {Object} options
  
  @description
  options.dom > container
  options.data > datalist