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

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

  var cdn = 'https://code.highcharts.com/';
  var loaded = 0;  
  var encodedUrl = encodeURI('https://https://app.everviz.com//show/DGsRXDZ_a');
  var chartCreated = false;
  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":"Daily number of actively contagious infections","align":"left","x":10,"style":{"fontFamily":"'Fort', sans-serif","fontSize":17,"lineHeight":21,"fontWeight":"700","color":"#222222"}},"subtitle":{"text":"","align":"left","x":10,"style":{"fontFamily":"'Fort', sans-serif","fontSize":15,"fontStyle":"italic","lineHeight":20,"fontWeight":"400","color":"#222222"}},"colors":["#40425b","#56c5d0","#2A2383","#F2C60E","#24CBE5","#64E572","#FF9655","#FFF263","#6AF9C4"],"legend":{"align":"left","verticalAlign":"top","itemMarginBottom":10,"x":0,"symbolRadius":2,"layout":"horizontal","itemStyle":{"fontSize":14,"fontWeight":"700","color":"#333333","cursor":"pointer","textOverflow":"ellipsis","fontFamily":"'Fort', sans-serif"},"title":{"text":"SCENARIO WHEN POLICY INITIATIVE HAPPENS"}},"plotOptions":{"series":{"marker":{"enabled":false},"lineWidth":3,"allowPointSelect":true,"states":{"select":{"color":"#EFFFEF","borderColor":"black","dashStyle":"dot"}},"dataLabels":{"style":{"fontSize":14}},"events":{}},"line":{"lineWidth":4}},"chart":{"type":"line","backgroundColor":"#f7f6f7","style":{"fontFamily":"'Fort', sans-serif","fontWeight":"500"}},"exporting":{"buttons":{"contextButton":{"theme":{"fill":"#f7f6f7"}}}},"credits":{"text":"everviz.com","href":"https://everviz.com","enabled":false,"style":{"fontSize":12,"fontWeight":"500","color":"#222222"}},"series":[{"data":[],"turboThreshold":0,"type":"line","marker":{"symbol":"circle"},"name":"Earlier intervention: days 30-59"},{"data":[],"turboThreshold":0,"type":"line","marker":{"symbol":"circle"},"name":"Later intervention: days 60-89"}],"caption":{"text":"Figure 1A"},"tooltip":{"valueSuffix":" infections","shared":true,"valueDecimals":0,"style":{"fontFamily":"'Fort', sans-serif","fontSize":14,"fontWeight":"500","color":"#222222","cursor":"default","pointerEvents":"none","whiteSpace":"nowrap"},"headerFormat":"<span style=\"font-size: 10px\">DAY {point.key}</span><br/>"},"xAxis":{"title":{"text":"Days elapsed during pandemic","style":{"fontFamily":"'Fort', sans-serif","fontSize":15,"fontWeight":"700","color":"#222222"}},"plotBands":[{"from":30,"to":59,"color":"#cafaff"},{"from":60,"to":89,"color":"#cafaff"}],"plotLines":[{"value":30,"color":"#40425b","zIndex":1,"width":2,"label":{"text":"<Earlier<br>intervention","rotation":0,"verticalAlign":"middle"}},{"value":60,"zIndex":2,"color":"#56c5d0","width":2,"label":{"text":"<Later<br>intervention","rotation":0,"verticalAlign":"middle"}}],"labels":{"style":{"fontSize":14,"fontWeight":"700","color":"#222222"}},"lineColor":"#222222","tickColor":"#222222","min":1},"yAxis":{"title":{"text":"","style":{"fontFamily":"'Fort', sans-serif","fontSize":15,"fontWeight":"700","color":"#222222"}},"labels":{"style":{"fontSize":14,"fontWeight":"700","color":"#222222"}},"endOnTick":false},"lang":{"thousandsSep":","},"stockTools":{"gui":{"enabled":false}},"navigation":{"bindingsClassName":"tools-container","events":{}},"labels":{"items":[]},"pane":{"background":[]},"responsive":{"rules":[]},"annotations":[],"data":{"csv":"Day;Earlier intervention: days 30-59;Later intervention: days 60-89\n1;660;660\n2;702.9;702.9\n3;749.0009208;749.0009208\n4;798.3829628;798.3829628\n5;851.1814851;851.1814851\n6;907.5719111;907.5719111\n7;967.760692;967.760692\n8;1031.980073;1031.980073\n9;1100.48526;1100.48526\n10;1173.553104;1173.553104\n11;1251.481774;1251.481774\n12;1334.591066;1334.591066\n13;1423.223154;1423.223154\n14;1517.743648;1517.743648\n15;1618.542878;1618.542878\n16;1726.037375;1726.037375\n17;1840.671502;1840.671502\n18;1962.919238;1962.919238\n19;2093.286106;2093.286106\n20;2232.311242;2232.311242\n21;2380.56961;2380.56961\n22;2538.674371;2538.674371\n23;2707.279413;2707.279413\n24;2887.082051;2887.082051\n25;3078.825912;3078.825912\n26;3283.304001;3283.304001\n27;3501.361984;3501.361984\n28;3733.901681;3733.901681\n29;3981.884794;3981.884794\n30;4246.336881;4246.336881\n31;4528.351598;4528.351598\n32;4744.170957;4829.095215\n33;4915.725336;5149.811439\n34;5057.815739;5491.826552\n35;5180.433551;5856.554893\n36;5290.325515;6245.5047\n37;5392.049522;6660.284345\n38;5488.686889;7102.608977\n39;5582.322884;7574.307608\n40;5674.370902;8077.330668\n41;5765.791175;8613.758063\n42;5857.238317;9185.807762\n43;5949.160866;9795.84496\n44;6041.868438;10446.39184\n45;6135.57704;11140.138\n46;6230.439631;11879.95153\n47;6326.56675;12668.89088\n48;6424.040428;13510.21746\n49;6522.923581;14407.40912\n50;6623.266342;15364.17447\n51;6725.110341;16384.46822\n52;6828.491588;17472.50744\n53;6933.442426;18632.789\n54;7039.992846;19870.10807\n55;7148.171377;21189.57792\n56;7258.005691;22596.65095\n57;7369.523007;24097.1412\n58;7482.750374;25697.24828\n59;7597.714855;27403.58286\n60;7714.44366;29223.19395\n61;7832.964235;31163.59786\n62;8107.581873;32648.46889\n63;8492.867977;33828.71163\n64;8961.378686;34806.17377\n65;9496.943941;35649.60784\n66;10090.48654;36405.43955\n67;10737.41907;37105.03271\n68;11436.02515;37769.59034\n69;12186.45465;38413.46125\n70;12990.10222;39046.37075\n71;13849.22504;39674.92563\n72;14766.71026;40303.62948\n73;15745.936;40935.56766\n74;16790.69126;41572.86946\n75;17905.13282;42217.01989\n76;19093.76585;42869.06998\n77;20361.43965;43529.77878\n78;21713.35337;44199.70908\n79;23155.06863;44879.29202\n80;24692.52684;45568.87073\n81;26332.07026;46268.7297\n82;28080.46592;46979.11471\n83;29944.93216;47700.2462\n84;31933.16749;48432.32835\n85;34053.38171;49175.55521\n86;36314.32934;49930.11482\n87;38725.34544;50696.19205\n88;41296.38378;51473.97047\n89;44038.05764;52263.6337\n90;46961.68336;53065.36625\n91;50079.32666;53879.35416\n92;53403.85216;55766.54555\n93;56948.97603;58414.52482\n94;60729.32215;61634.5284\n95;64760.48198;65315.30501\n96;69059.07827;69394.36873\n97;73642.83299;73840.10028\n98;78530.6397;78640.61488\n99;83742.6406;83796.85208\n100;89300.30862;89318.30036\n101;95226.53482;95220.36707\n102;101545.7215;101522.7768\n103;108283.8814;108248.6135\n104;115468.7431;115423.7671\n105;123129.8634;123076.6343\n106;131298.7472;131237.9819\n107;140008.9743;139940.9143\n108;149296.3353;149220.9086\n109;159198.9757;159115.8966\n110;169757.549;169666.3794\n111;181015.38;180915.5655\n112;193018.6383;192909.5297\n113;205816.5228;205697.3871\n114;219461.4577;219331.4838\n115;234009.301;233867.6006\n116;249519.5662;249365.1727\n117;266055.6575;265887.5225\n118;283685.1195;283502.1088\n119;302479.9031;302280.7908\n120;322516.647;322300.1096","seriesMapping":[{"x":0,"y":1},{"x":0,"y":2}]}};
  
  var templateDataSettings = {};

  var pluginCode = {};;

  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 createChart() {
    if(chartCreated) return;

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

    if (options.yAxis && options.yAxis.length === 1) options.yAxis = options.yAxis[0];
    if (options.xAxis && options.xAxis.length === 1) options.xAxis = options.xAxis[0];
    if (options.zAxis && options.zAxis.length === 1) options.zAxis = options.zAxis[0];

    Highcharts.merge(true, options, {
    chart: {style: {fontFamily: "'Fort', sans-serif", fontWeight: "500",}},
    credits: {style: {fontSize: 12, fontWeight: "500", color: "#222222",}},
    legend: {itemStyle: {fontFamily: "'Fort', sans-serif", fontSize: 14, fontWeight: "700",}},
    plotOptions: {series: {dataLabels: {style: {fontSize: 14,}}}},
    subtitle: {style: {fontFamily: "'Fort', sans-serif", fontSize: 15, fontStyle: "italic", lineHeight: 20, fontWeight: "400", color: "#222222",}},
    title: {style: {fontFamily: "'Fort', sans-serif", fontSize: 17, lineHeight: 21, fontWeight: "700", color: "#222222",}},
    tooltip: {style: {fontFamily: "'Fort', sans-serif", fontSize: 14, fontWeight: "500", color: "#222222",}},
    xAxis: {labels: {style: {fontSize: 14, fontWeight: "700", color: "#222222",}}, title: {style: {fontFamily: "'Fort', sans-serif", fontSize: 15, fontWeight: "700", color: "#222222",}}},
    yAxis: {labels: {style: {fontSize: 14, fontWeight: "700", color: "#222222",}}, title: {style: {fontFamily: "'Fort', sans-serif", fontSize: 15, fontWeight: "700", color: "#222222",}}},
});


      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;
      new Highcharts.Chart('highcharts-DGsRXDZ_a', options);
    }
  }

  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;
    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();
  }

}());
