text: function SVGEffects(elem) {
      var i, len = elem.data.ef ? elem.data.ef.length : 0;
      var filId = createElementID();
      var fil = filtersFactory.createFilter(filId);
      var count = 0;
      this.filters = [];
      var filterManager;
      for (i = 0; i < len; i += 1) {
          filterManager = null;
          if (elem.data.ef[i].ty === 20) {
              count += 1;
              filterManager = new SVGTintFilter(fil, elem.effectsManager.effectElements[i]);
          } else if (elem.data.ef[i].ty === 21) {
              count += 1;
              filterManager = new SVGFillFilter(fil, elem.effectsManager.effectElements[i]);
          } else if (elem.data.ef[i].ty === 22) {
              filterManager = new SVGStrokeEffect(elem, elem.effectsManager.effectElements[i]);
          } else if (elem.data.ef[i].ty === 23) {
              count += 1;
              filterManager = new SVGTritoneFilter(fil, elem.effectsManager.effectElements[i]);
          } else if (elem.data.ef[i].ty === 24) {
              count += 1;
              filterManager = new SVGProLevelsFilter(fil, elem.effectsManager.effectElements[i]);
          } else if (elem.data.ef[i].ty === 25) {
              count += 1;
              filterManager = new SVGDropShadowEffect(fil, elem.effectsManager.effectElements[i]);
          } else if (elem.data.ef[i].ty === 28) {
              //count += 1;
              filterManager = new SVGMatte3Effect(fil, elem.effectsManager.effectElements[i], elem);
          } else if (elem.data.ef[i].ty === 29) {
              count += 1;
              filterManager = new SVGGaussianBlurEffect(fil, elem.effectsManager.effectElements[i]);
          } else if (elem.data.ef[i].ty === 100) {
              filterManager = new SVGCCPageTurnEffect(fil, elem.effectsManager.effectElements[i], elem);
          } if (filterManager) {
              this.filters.push(filterManager);
          }
      }
      if (count) {
          elem.globalData.defs.appendChild(fil);
          elem.layerElement.setAttribute('filter', 'url(' + locationHref + '#' + filId + ')');
      }
      if (this.filters.length) {
          elem.addRenderableComponent(this);
      }
  }
  
  SVGEffects.prototype.renderFrame = function (_isFirstFrame) {
      var i, len = this.filters.length;
      for (i = 0; i < len; i += 1) {
          this.filters[i].renderFrame(_isFirstFrame);
      }
  };