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

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

  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 = {"chart":{"type":"area","width":null},"title":{"text":""},"subtitle":{"text":""},"xAxis":[{"allowDecimals":false}],"yAxis":[{"title":{"text":""}}],"tooltip":{"pointFormat":"<b>{point.y:,.0f}$</b> on {series.name}","enabled":true,"shared":false},"plotOptions":{"area":{"pointStart":1940,"marker":{"enabled":false,"symbol":"circle","radius":2,"states":{"hover":{"enabled":true}}}},"series":{"animation":false}},"series":[{"data":[["December",0],["January",40],["February",160],["March",200],["April",120],["May",300],["June",36.76],["July",435.79]],"name":"Revenue","turboThreshold":0,"_colorIndex":0},{"data":[["December",8],["January",24],["February",12],["March",20],["April",50],["May",20],["June",20],["July",130]],"name":"Expenses","turboThreshold":0,"_colorIndex":1}],"credits":{"text":"Powered by Highcharts Cloud","href":"https://cloud.highcharts.com","enabled":true,"style":{"font-size":"16px"}},"pane":{"background":[]},"responsive":{"rules":[]},"navigation":{"buttonOptions":{"align":"right","buttonSpacing":3,"height":22,"width":24,"y":0}},"data":{"csv":"\"Category\";\"Revenue\";\"Expenses\"\n\"December\";0;8\n\"January\";40;24\n\"February\";160;12\n\"March\";200;20\n\"April\";120;50\n\"May\";300;20\n\"June\";36.76;20\n\"July\";435.79;130"}};

  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-ryvygNv-Q', 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/167722/12/view', true);
    r.setRequestHeader('Content-Type', 'application/json');
    r.send();
  } catch (e) {
  }

}());
