preBuildZoom_() {
    // Clone #webslides element
    this.zws_.el = this.ws_.el.cloneNode();
    this.zws_.el.id = ID;
    this.zws_.wrap = DOM.createNode('div');
    this.zws_.wrap.className = CLASSES.WRAP_CONTAINER;
    this.zws_.el.appendChild(this.zws_.wrap);
    this.zws_.grid = DOM.createNode('div');
    this.zws_.grid.className = CLASSES.ZOOM;
    this.zws_.wrap.appendChild(this.zws_.grid);

    this.zws_.el.addEventListener('click', () => this.toggleZoom());

    // Clone the slides
    this.zws_.slides = [].map.call(this.ws_.slides,
        (slide, i) => {
          const s_ = slide.el.cloneNode(true);
          this.zws_.grid.appendChild(s_);
          return new Slide(s_, i);
        });

    this.disable();
    DOM.after(this.zws_.el, this.ws_.el);

    // Creates the container for each slide
    this.zws_.slides.forEach(elem => this.createSlideBlock_(elem));
  }
Prepare zoom structure, scales the slides and uses a grid layout
to show them.