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

  var cdn = 'https://code.highcharts.com/';
  var loaded = 0;  
  var encodedUrl = encodeURI('https://https://cloud.highcharts.com//show/FC3bYTDp-');

  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/annotations.js",
    "modules/export-data.js",
    "modules/accessibility.js"
    /* "modules/series-label.js" */
  ];

  var options = {"title":{"text":"Total Health Expenditures as Percent of GDP (2022-2031)"},"subtitle":{"text":""},"exporting":{"enabled":false},"yAxis":[{"title":{"text":""},"labels":{"format":"{value}%"},"min":0,"max":25}],"series":[{"data":[[2022,20.4],[2023,20.9],[2024,20.9],[2025,21.3],[2026,21.8],[2027,22.1],[2028,22.7],[2029,23.1],[2030,23.6],[2031,24.1]],"name":"Mercatus M4A Plan","turboThreshold":0,"marker":{"enabled":false,"symbol":"circle"}},{"data":[[2022,19.3],[2023,19.6],[2024,19.9],[2025,20.2],[2026,20.5],[2027,21],[2028,21.4],[2029,22],[2030,22.3],[2031,22.9]],"name":"Status Quo","turboThreshold":0,"marker":{"enabled":false,"symbol":"circle"},"dashStyle":"ShortDash"},{"data":[[2022,18.9],[2023,19.2],[2024,19.3],[2025,19.5],[2026,19.8],[2027,20.2],[2028,20.6],[2029,21.1],[2030,21.5],[2031,22]],"name":"Bernie M4A Plan","turboThreshold":0,"marker":{"enabled":false,"symbol":"circle"}}],"colors":["#000000","#9e9e9e","#b31021","#f7a35c","#8085e9","#f15c80","#e4d354","#2b908f","#f45b5b","#91e8e1"],"xAxis":[{}],"legend":{"verticalAlign":"top"},"tooltip":{"shared":true,"valueSuffix":"%"},"credits":{"text":"Source: Mercatus Center","href":""},"pane":{"background":[]},"responsive":{"rules":[]},"data":{"csv":"\"null\";\"Mercatus M4A Plan\";\"Status Quo\";\"Bernie M4A Plan\"\n2022;20.4;19.3;18.9\n2023;20.9;19.6;19.2\n2024;20.9;19.9;19.3\n2025;21.3;20.2;19.5\n2026;21.8;20.5;19.8\n2027;22.1;21;20.2\n2028;22.7;21.4;20.6\n2029;23.1;22;21.1\n2030;23.6;22.3;21.5\n2031;24.1;22.9;22"}};

  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 createChart() {
    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];

    /*
// Sample of extending options:
Highcharts.merge(true, options, {
    chart: {
        backgroundColor: "#bada55"
    },
    plotOptions: {
        series: {
            cursor: "pointer",
            events: {
                click: function(event) {
                    alert(this.name + " clicked\n" +
                          "Alt: " + event.altKey + "\n" +
                          "Control: " + event.ctrlKey + "\n" +
                          "Shift: " + event.shiftKey + "\n");
                }
            }
        }
    }
});
*/


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

      new Highcharts.Chart('highcharts-FC3bYTDp-', options);
    }
  }

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

  function loadScript(s) {

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

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

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

    loadScript(scripts[0]);

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

  try {
    var r = new XMLHttpRequest();
    r.open('POST', 'https://cloud-api.highcharts.com:443/chart/177814/4/view', true);
    r.setRequestHeader('Content-Type', 'application/json');
    r.send();
  } catch (e) {
  }

}());
