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

  var cdn = 'https://code.highcharts.com/';
  var loaded = 0;  
  var encodedUrl = encodeURI('https://https://app.everviz.com//show/3Ph3LIvp');

  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 = [
  "modules/annotations.js"
  ,"modules/annotations-advanced.js"
  ];

  var options = {"chart":{"type":"column","inverted":true,"polar":false,"spacingLeft":1,"spacingRight":1,"spacingTop":5,"spacingBottom":15,"style":{"fontFamily":"'IBM Plex Sans', sans-serif","fontWeight":"500"}},"plotOptions":{"series":{"dataLabels":{"enabled":true,"style":{"fontSize":14}},"allowPointSelect":true,"states":{"select":{"color":"#EFFFEF","borderColor":"black","dashStyle":"dot"}}}},"title":{"text":"Jobs by sector in Mississippi","align":"left","style":{"fontFamily":"'IBM Plex Sans', sans-serif","fontSize":17,"lineHeight":21,"fontWeight":"700","color":"#222222"}},"subtitle":{"text":"","align":"left","style":{"fontFamily":"'IBM Plex Sans', sans-serif","fontSize":15,"lineHeight":20,"fontWeight":"400","color":"#222222"}},"exporting":{"enabled":false},"credits":{"text":"","href":"","enabled":false,"style":{"color":"#ffffff","fontSize":12,"fontWeight":"500"}},"series":[{"data":[["Fuels",11973],["Electric Power<br>Generation",4796],["Transmission<br>Distribution<br>and Storage",12130],["Energy<br>Efficiency",15668],["Motor Vehicles",25413]],"turboThreshold":0,"dataLabels":{"format":"{point.y:,.0f}","inside":false,"overflow":"justify","crop":true},"groupPadding":0.05,"pointPadding":0.05,"type":"column","name":"Mississippi"}],"yAxis":[{"title":{"text":"","style":{"fontFamily":"'IBM Plex Sans', sans-serif","fontSize":15,"fontWeight":"700","color":"#222222"}},"labels":{"format":"{value:,.0f}","overflow":"justify","style":{"fontSize":14,"fontWeight":"700","color":"#222222"},"enabled":false},"endOnTick":false}],"lang":{"thousandsSep":","},"legend":{"enabled":false,"itemStyle":{"fontSize":14,"fontWeight":"700"}},"tooltip":{"valueDecimals":0,"valueSuffix":" jobs in Q4 2019","headerFormat":"{point.key}<br/>","style":{"fontSize":14,"fontWeight":"500","color":"#222222"}},"pane":{"background":[]},"responsive":{"rules":[]},"xAxis":[{"tickLength":105,"tickPixelInterval":100,"labels":{"align":"left","x":-105,"style":{"fontSize":14,"fontWeight":"700","color":"#222222"}},"lineColor":"#222222","tickColor":"#e6e6e6","title":{"style":{"fontFamily":"'IBM Plex Sans', sans-serif","fontSize":15,"fontWeight":"700","color":"#222222"}},"tickWidth":1}],"colors":["#c3d753","#434348","#90ed7d","#f7a35c","#8085e9","#f15c80","#e4d354","#2b908f","#f45b5b","#91e8e1"],"stockTools":{"gui":{"enabled":false}},"navigation":{"bindingsClassName":"tools-container","events":{}},"labels":{"items":[]},"annotations":[],"data":{"csv":"Sector;Mississippi\nFuels ;11973\nElectric Power<br>Generation;4796\nTransmission<br>Distribution<br>and Storage;12130\nEnergy<br>Efficiency;15668\nMotor Vehicles;25413","seriesMapping":[{"x":0,"y":1}]}};

  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 (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: "'IBM Plex Sans', sans-serif", fontWeight: "500",}},
    credits: {style: {fontSize: 12, fontWeight: "500", color: "#ffffff",}},
    legend: {itemStyle: {fontSize: 14, fontWeight: "700",}},
    plotOptions: {series: {dataLabels: {style: {fontSize: 14,}}}},
    subtitle: {style: {fontFamily: "'IBM Plex Sans', sans-serif", fontSize: 15, lineHeight: 20, fontWeight: "400", color: "#222222",}},
    title: {style: {fontFamily: "'IBM Plex Sans', sans-serif", fontSize: 17, lineHeight: 21, fontWeight: "700", color: "#222222",}},
    tooltip: {style: {fontSize: 14, fontWeight: "500", color: "#222222",}},
    xAxis: {labels: {style: {fontSize: 14, fontWeight: "700", color: "#222222",}}, title: {style: {fontFamily: "'IBM Plex Sans', sans-serif", fontSize: 15, fontWeight: "700", color: "#222222",}}},
    yAxis: {labels: {style: {fontSize: 14, fontWeight: "700", color: "#222222",}}, title: {style: {fontFamily: "'IBM Plex Sans', 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
          );
        };
      }
      
      window.HighchartsCloud.hasLoaded = true;
      new Highcharts.Chart('highcharts-3Ph3LIvp', 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(){
    loaded = 0;
    if (extraScripts.length > 0) {
      loadScript(extraScripts[0], extraScripts);
    }
  }

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

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

}());
