(function () {
  //Inject code v3.0.3

  var highcharts = document.createElement('script');

  var cdn = 'https://code.highcharts.com/';
  var loaded = 0;  
  var encodedUrl = encodeURI('https://https://app.everviz.com//show/Zm55isK49');
  var chartCreated = false;
  var delayGen = 0;
  var scripts = [
    "highcharts.js",
    "modules/stock.js",
    "highcharts-more.js",
    "highcharts-3d.js",
    "modules/data.js",
    "modules/exporting.js",
    "modules/funnel.js",
    "modules/solid-gauge.js",
    "modules/export-data.js",
    "modules/accessibility.js"
    /* "modules/series-label.js" */
  ];

  var externalCSS = [
      ];

  var extraScripts = [
  "https://code.highcharts.com/modules/annotations.js"
  ,"https://code.highcharts.com/modules/annotations-advanced.js"
  ];

  var options = {"title":{"text":"","align":"left","x":10},"subtitle":{"text":"","align":"left","x":10},"colors":["#114fd9","#E83237","#b6b6bc","#e2e2de","#24CBE5","#64E572","#FF9655","#FFF263","#6AF9C4"],"legend":{"align":"center","verticalAlign":"top","itemMarginBottom":10,"x":0,"symbolRadius":2,"itemStyle":{"color":"#333333","cursor":"pointer","fontSize":"15px","fontWeight":"normal","textOverflow":"ellipsis","fontFamily":"\"Lucida Grande\", \"Lucida Sans Unicode\", Verdana, Arial, Helvetica, sans-serif"},"useHTML":true},"plotOptions":{"series":{"marker":{"enabled":false},"lineWidth":3,"allowPointSelect":true,"states":{"select":{"color":"#EFFFEF","borderColor":"black","dashStyle":"dot"}}}},"chart":{"type":"line","borderWidth":0,"spacingBottom":30},"exporting":{"enabled":false},"credits":{"text":"MORNING CONSULT POLITICAL INTELLGENCE","href":"https://morningconsult.com/product/political-intelligence/","enabled":true,"position":{"align":"right"},"style":{"cursor":"pointer","color":"#424242","fontSize":"10px","fontFamily":"\"Lucida Grande\", \"Lucida Sans Unicode\", Verdana, Arial, Helvetica, sans-serif"}},"series":[{"data":[],"turboThreshold":0,"_colorIndex":0,"_symbolIndex":0,"type":"line"},{"data":[],"turboThreshold":0,"_colorIndex":1,"_symbolIndex":0,"type":"line"},{"data":[],"turboThreshold":0,"_colorIndex":2,"_symbolIndex":0,"type":"line"},{"data":[],"turboThreshold":0,"_colorIndex":3,"_symbolIndex":0,"type":"line"}],"stockTools":{"gui":{"enabled":false}},"navigation":{"bindingsClassName":"tools-container"},"labels":{"items":[]},"pane":{"background":[]},"responsive":{"rules":[]},"tooltip":{"valueSuffix":"%"},"annotations":[],"yAxis":{"title":{"text":""},"labels":{"format":"{value}%"}},"data":{"csv":"Date;Joe Biden;Donald Trump;Someone Else;Don't Know / No Opinion\n5/5/20;49;44;3;4\n5/6/20;49;44;3;4\n5/7/20;49;44;3;4\n5/8/20;49;44;3;4\n5/9/20;48;44;3;4\n5/10/20;48;45;3;5\n5/11/20;48;45;3;5\n5/12/20;48;45;3;5\n5/13/20;48;44;3;5\n5/14/20;49;44;3;5\n5/15/20;49;43;3;5\n5/16/20;49;44;3;5\n5/17/20;49;44;3;5\n5/18/20;49;44;3;5\n5/19/20;48;44;3;5\n5/20/20;48;44;3;5\n5/21/20;49;44;3;5\n5/22/20;49;43;3;5\n5/23/20;48;44;3;5\n5/24/20;48;44;3;5\n5/25/20;48;45;3;4\n5/26/20;49;44;3;4\n5/27/20;48;44;3;5\n5/28/20;48;44;3;5\n5/29/20;49;44;3;5\n5/30/20;49;44;3;5\n5/31/20;49;44;3;5\n6/1/20;48;44;3;5\n6/2/20;49;43;3;5\n6/3/20;49;43;3;5\n6/4/20;49;43;3;5\n6/5/20;49;43;3;5\n6/6/20;50;42;3;5\n6/7/20;50;43;3;4\n6/8/20;51;42;3;4\n6/9/20;51;42;3;4\n6/10/20;50;42;3;5\n6/11/20;50;42;3;5\n6/12/20;50;42;3;5\n6/13/20;50;42;3;5\n6/14/20;50;42;3;5\n6/15/20;51;42;3;5\n6/16/20;51;42;3;5\n6/17/20;51;42;3;4\n6/18/20;50;42;3;4\n6/19/20;50;42;3;5\n6/20/20;50;42;3;5\n6/21/20;50;42;3;5\n6/22/20;50;42;3;5\n6/23/20;50;42;3;5\n6/24/20;50;42;3;5\n6/25/20;50;42;2;5\n6/26/20;50;42;2;5\n6/27/20;50;43;2;4\n6/28/20;51;42;3;4\n6/29/20;50;43;3;4\n6/30/20;51;42;3;4\n7/1/20;51;42;3;4\n7/2/20;51;42;3;4\n7/3/20;50;42;3;5\n7/4/20;50;43;3;4\n7/5/20;50;42;3;5\n7/6/20;51;42;3;4\n7/7/20;50;42;3;4\n7/8/20;51;42;3;4\n7/9/20;50;42;3;5\n7/10/20;50;42;3;5\n7/11/20;50;42;3;5\n7/12/20;51;42;3;5\n7/13/20;50;42;3;4\n7/14/20;50;42;3;5\n7/15/20;50;42;3;5\n7/16/20;50;42;3;5\n7/17/20;50;42;3;5\n7/18/20;50;42;3;5\n7/19/20;51;42;3;5\n7/20/20;50;42;3;5\n7/21/20;50;42;3;5\n7/22/20;51;42;3;5\n7/23/20;51;42;3;5\n7/24/20;51;42;3;5\n7/25/20;50;42;3;5\n7/26/20;51;43;2;5\n7/27/20;51;42;3;5\n7/28/20;51;42;3;5\n7/29/20;50;43;3;4\n7/30/20;50;43;2;4\n7/31/20;50;43;2;4\n8/1/20;50;43;2;4\n8/2/20;51;42;2;4\n8/3/20;51;42;2;5\n8/4/20;51;42;3;5\n8/5/20;51;42;3;5\n8/6/20;51;42;2;5\n8/7/20;51;42;2;5\n8/8/20;51;43;2;4\n8/9/20;51;43;2;4\n8/10/20;51;43;2;4\n8/11/20;50;43;3;4\n8/12/20;51;43;2;4\n8/13/20;51;42;2;5\n8/14/20;51;42;2;5\n8/15/20;51;43;2;4\n8/16/20;51;43;2;4\n8/17/20;51;43;2;4\n8/18/20;52;42;2;4\n8/19/20;51;43;2;4\n8/20/20;52;42;2;4\n8/21/20;51;43;2;4\n8/22/20;52;43;2;4\n8/23/20;52;42;2;4\n8/24/20;52;42;2;4\n8/25/20;51;43;2;4\n8/26/20;51;43;2;4\n8/27/20;51;44;2;4\n8/28/20;50;43;2;4\n8/29/20;51;43;2;4\n8/30/20;51;43;2;4\n8/31/20;51;43;2;4\n9/1/20;51;43;2;4\n9/2/20;51;43;2;4\n9/3/20;51;43;2;4\n9/4/20;51;43;2;4\n9/5/20;50;44;2;4\n9/6/20;50;43;2;4\n9/7/20;50;44;2;4\n9/8/20;51;43;2;4\n9/9/20;51;44;2;4\n9/10/20;51;43;2;4\n9/11/20;51;43;2;4\n9/12/20;51;43;2;4\n9/13/20;51;43;2;4\n9/14/20;51;43;2;4\n9/15/20;51;43;2;4\n9/16/20;51;43;2;4\n9/17/20;51;43;2;4\n9/18/20;51;44;2;4\n9/19/20;51;43;2;4\n9/20/20;51;44;2;4\n9/21/20;51;43;2;4\n9/22/20;51;44;2;4\n9/23/20;51;44;2;4\n9/24/20;51;44;2;4\n9/25/20;51;43;2;4\n9/26/20;51;44;2;4\n9/27/20;51;44;2;4\n9/28/20;51;43;2;4\n9/29/20;51;43;2;4\n9/30/20;51;43;2;4\n10/1/20;51;43;2;4\n10/2/20;51;43;2;4\n10/3/20;52;43;2;4\n10/4/20;52;43;2;4\n10/5/20;52;43;2;4\n10/6/20;51;43;2;4\n10/7/20;52;43;2;4\n10/8/20;51;43;2;4\n10/9/20;51;43;2;4\n10/10/20;51;43;2;4\n10/11/20;51;43;2;4\n10/12/20;52;43;2;3\n10/13/20;52;43;2;3\n10/14/20;52;43;2;4\n10/15/20;52;43;2;3\n10/16/20;52;43;2;3\n10/17/20;52;43;2;3\n10/18/20;52;43;2;3\n10/19/20;53;43;2;3\n10/20/20;52;43;2;3\n10/21/20;52;43;2;3\n10/22/20;52;43;2;3\n10/23/20;52;43;2;3\n10/24/20;52;43;2;3\n10/25/20;52;43;2;3\n10/26/20;52;43;2;3\n10/27/20;52;44;2;3\n10/28/20;52;43;2;3\n10/29/20;52;43;2;3\n10/30/20;52;43;2;3\n10/31/20;52;44;2;3","seriesMapping":[{"x":0,"y":1},{"x":0,"y":2},{"x":0,"y":3},{"x":0,"y":4}]}};
  
  var templateDataSettings = {};

  var pluginCode = {};;

  if (options.data) {
    options.data.complete = function(options) {
      const keys = Object.keys(templateDataSettings || {});
      keys.forEach(function(key) {
        const serie = options.series[key];
        (serie.data || []).forEach(function(d, i) {
          if (templateDataSettings[key].data && templateDataSettings[key].data[i]) {
            merge(d, templateDataSettings[key].data[i]);
          }
        })
      })  
      return options;
    }
  }

  merge(options, pluginCode);

  function isNull(what){return(typeof what==='undefined'||what===null)}
  function isStr(what){return(typeof what==='string'||what instanceof String)}
  function isNum(what){return!isNaN(parseFloat(what))&&isFinite(what)}
  function isFn(what){return(what&&(typeof what==='function')||(what instanceof Function))}
  function isArr(what){return(!isNull(what)&&what.constructor.toString().indexOf('Array')>-1)}
  function isBool(what){return(what===!0||what===!1)}
  function isBasic(what){return!isArr(what)&&(isStr(what)||isNum(what)||isBool(what)||isFn(what))}
  function isObj(what){return what&&what.constructor.toString().indexOf('Object')>-1}
  function isEmptyObjectArray(arr){return isObj(arr[0])&&arr.some(function(b){return Object.keys(b).length===0})}
  function merge(a,b){if(!a||!b)return a||b;Object.keys(b).forEach(function(bk){if(isNull(b[bk])||isBasic(b[bk])){a[bk]=b[bk]}else if(isArr(b[bk])){if(isEmptyObjectArray(b[bk]))return;a[bk]=[];b[bk].forEach(function(i){if(isNull(i)||isBasic(i)){a[bk].push(i)}else{a[bk].push(merge(isArr(i)?[]:{},i))}})}else{a[bk]=a[bk]||{};merge(a[bk],b[bk])}});return a}

  function isScriptAlreadyIncluded(src){
    var scripts = document.getElementsByTagName("script");
    for (var i = 0; i < scripts.length; i++) {
      if (scripts[i].hasAttribute('src')) {
        const scriptTag = scripts[i].getAttribute('src') || '';
        if ((scriptTag.indexOf(src) >= 0) || 
            (scriptTag.indexOf('highcharts.src.js') > -1 && src === 'highcharts.js') ||
            ((scriptTag.indexOf('stock/highstock.js') > -1) && src === 'modules/highstock.js')) {
          return true;
        }
      }
    }
    return false;
  }

  function loadCSS() {
    var cssLength = externalCSS.length;
    for(var i=0; i < cssLength; i++) {
      var css = document.createElement('link');
      css.rel  = 'stylesheet';
      css.type = "text/css";
      css.href = externalCSS[i];
      document.body.appendChild(css);
    }
  }

  function allScriptsIncluded(){
    var allScripts = scripts.concat(extraScripts);
    var haveAllScriptsBeenIncluded = true;
    var scriptsToUse = document.getElementsByTagName("script");
    for(var n=0;n<allScripts.length;n++) {
      if (!isScriptAlreadyIncluded(allScripts[n], scriptsToUse)) {
        haveAllScriptsBeenIncluded = false;
        break;
      }
    }
    return haveAllScriptsBeenIncluded;
  }

  function createChart() {
    if(chartCreated) return;
    var hasProj4 = extraScripts.includes('https://cdnjs.cloudflare.com/ajax/libs/proj4js/2.3.6/proj4.js');
    if (!allScriptsIncluded() || 
      (hasProj4 && !window.proj4)) {
      setTimeout(createChart, 200);
      return;
    }  

    if (hasProj4) delayGen = 100;

    if (typeof window['Highcharts'] !== 'undefined') {
      

      if (options && (options.lang || options.global)) {
        Highcharts.setOptions({
          global: options.global || {},
          lang: options.lang || {}
        });
      }

      if (Highcharts.Annotation) {
        Highcharts.Annotation.ControlPoint.prototype.redraw = function (animation) {
          this.graphic[animation ? 'animate' : 'attr'](
              this.options.positioner ? this.options.positioner.call(this, this.target) : null
          );
        };
      }
      
      chartCreated = true;
      window.HighchartsCloud.hasLoaded = true; 
      setTimeout(function(){
        new Highcharts.Chart('highcharts-Zm55isK49', options);     
      }, delayGen);
    }
  }

  function check(scripts, cb) {
    if (loaded === scripts.length) {
      if (cb) {
        cb();
      } else {
        for (var i = 0; i < window.HighchartsCloud.ondone.length; i++) {
          try {
            window.HighchartsCloud.ondone[i]();
          } catch(e) {
            console.error(e);
          }
        }
      }
    }
  }

  function loadScript(s, scripts, cb) {
    if (!s) next();
    
    function next() {
      ++loaded;
      if (loaded < scripts.length) {
        loadScript(scripts[loaded], scripts, cb);
      }
      check(scripts, cb);
    }

    if (isScriptAlreadyIncluded(s)) {
      return next();
    }

    var n = document.createElement('script');

    n.onload = function () {
      next();
    };

    if (s.indexOf('https') >= 0) {
      n.src = s;
    } else {
      n.src = cdn + s;
    }
    document.body.appendChild(n);
  }

  function loadExtraScripts(){
    if (extraScripts.length > 0) {
      loaded = 0;
      loadScript(extraScripts[0], extraScripts);
    } else {
      check(scripts);
    }
  }

  function loadExtraScriptsAndMakeChart(){
    loaded = 0;
    loadCSS();
    if (extraScripts.length > 0) {
      loadScript(extraScripts[0], extraScripts, createChart);
    } else {
      check(extraScripts);
    }
  }

  if (typeof window['HighchartsCloud'] === 'undefined') {
    window.HighchartsCloud = {
      ondone: [createChart],
      hasWrapped: false,
      hasLoaded: false
    };

    loadScript(scripts[0], scripts, loadExtraScripts);
    loadCSS();

  } else {
    if (!window.HighchartsCloud.hasLoaded) window.HighchartsCloud.ondone.push(loadExtraScriptsAndMakeChart);
    else loadExtraScriptsAndMakeChart();
  }

}());
