function toggleNextSibling (e) { if (e.nextSibling.style.display=='none') { e.nextSibling.style.display='block'; } else { e.nextSibling.style.display='none'; } }var InstanceReportXslt = "https://sec.kscope.io/static/js/xbrl/InstanceReport.xslt"; var InstanceReportXsltDoc = null; var isRedline = (location.href.indexOf("&redline=true") >= 0 || location.href.indexOf("?redline=true") >= 0);var processXsltInBrowser = "false";var reports = new Array(); reports[1]="R1.htm"; reports[2]="R2.htm"; reports[3]="R3.htm"; reports[4]="R4.htm"; reports[5]="R5.htm"; reports[6]="R6.htm"; reports[7]="R7.htm"; reports[8]="R8.htm"; reports[9]="R9.htm"; reports[10]="R10.htm"; reports[11]="R11.htm"; reports[12]="R12.htm"; reports[13]="R13.htm"; reports[14]="R14.htm"; reports[15]="R15.htm"; reports[16]="R16.htm"; reports[17]="R17.htm"; reports[18]="R18.htm"; reports[19]="R19.htm"; reports[20]="R20.htm"; reports[21]="R21.htm"; reports[22]="R22.htm"; reports[23]="R23.htm"; reports[24]="R24.htm"; reports[25]="R25.htm"; reports[26]="R26.htm"; reports[27]="R27.htm"; reports[28]="R28.htm"; reports[29]="R29.htm"; reports[30]="R30.htm"; reports[31]="R31.htm"; reports[32]="R32.htm"; reports[33]="R33.htm"; reports[34]="R34.htm"; reports[35]="R35.htm"; reports[36]="R36.htm"; reports[37]="R37.htm"; reports[38]="R38.htm"; reports[39]="R39.htm"; reports[40]="R40.htm"; reports[41]="R41.htm"; reports[42]="R42.htm"; reports[43]="R43.htm"; reports[44]="R44.htm"; reports[45]="R45.htm"; reports[46]="R46.htm"; reports[47]="R47.htm"; reports[48]="R48.htm"; reports[49]="R49.htm"; reports[50]="R50.htm"; reports[51]="R51.htm"; reports[52]="R52.htm"; reports[53]="R53.htm"; reports[54]="R54.htm"; reports[55]="R55.htm"; reports[56]="R56.htm"; reports[57]="R57.htm"; reports[58]="R58.htm"; reports[59]="R59.htm"; reports[60]="R60.htm"; reports[61]="R61.htm"; reports[62]="R62.htm"; reports[63]="R63.htm"; reports[64]="R64.htm"; reports[65]="R65.htm"; reports[66]="R66.htm"; reports[67]="R67.htm"; reports[68]="R68.htm"; reports[69]="R69.htm"; reports[70]="R70.htm"; reports[71]="R71.htm"; reports[72]="R72.htm"; reports[73]="R73.htm"; reports[74]="R74.htm"; reports[75]="R75.htm"; reports[76]="R76.htm"; reports[77]="R77.htm"; reports[78]="R78.htm"; reports[79]="R79.htm"; reports[80]="R80.htm"; reports[81]="R81.htm"; reports[82]="R82.htm"; reports[83]="R83.htm"; reports[84]="R84.htm"; reports[85]="R85.htm"; reports[86]="R86.htm"; reports[87]="R87.htm"; reports[88]="R88.htm"; reports[89]="R89.htm"; reports[90]="R90.htm"; reports[91]="R91.htm"; reports[92]="R92.htm"; reports[93]="R93.htm"; reports[94]="R94.htm"; reports[95]="R95.htm"; reports[96]="R96.htm"; reports[97]="R97.htm"; reports[98]="R98.htm"; reports[99]="R99.htm"; reports[100]="R100.htm"; reports[101]="R101.htm"; reports[102]="R102.htm"; reports[103]="R103.htm"; reports[104]="R104.htm"; reports[105]="R105.htm"; reports[106]="R106.htm"; reports[107]="R107.htm"; reports[108]="R108.htm"; reports[109]="R109.htm"; reports[110]="R110.htm"; reports[111]="R111.htm"; reports[112]="R112.htm"; reports[113]="R113.htm"; reports[114]="R114.htm"; reports[115]="R115.htm"; reports[116]="R116.htm"; reports[117]="R117.htm"; reports[118]="R118.htm"; reports[119]="R119.htm"; reports[120]="R120.htm"; reports[121]="R121.htm"; reports[122]="R122.htm"; reports[123]="R123.htm"; reports[124]="R124.htm"; reports[125]="R125.htm"; reports[126]="R126.htm"; reports[127]="R127.htm"; reports[128]="R128.htm"; reports[129]="R129.htm"; reports[130]="all"; var parentreport = new Array();// parentreport[1]=-1; parentreport[2]=-1; parentreport[3]=-1; parentreport[4]=-1; parentreport[5]=-1; parentreport[6]=-1; parentreport[7]=-1; parentreport[8]=-1; parentreport[9]=-1; parentreport[10]=-1; parentreport[11]=-1; parentreport[12]=-1; parentreport[13]=-1; parentreport[14]=-1; parentreport[15]=-1; parentreport[16]=-1; parentreport[17]=-1; parentreport[18]=-1; parentreport[19]=-1; parentreport[20]=-1; parentreport[21]=-1; parentreport[22]=-1; parentreport[23]=-1; parentreport[24]=-1; parentreport[25]=-1; parentreport[26]=-1; parentreport[27]=-1; parentreport[28]=-1; parentreport[29]=-1; parentreport[30]=-1; parentreport[31]=-1; parentreport[32]=-1; parentreport[33]=-1; parentreport[34]=-1; parentreport[35]=-1; parentreport[36]=-1; parentreport[37]=10; parentreport[38]=10; parentreport[39]=11; parentreport[40]=12; parentreport[41]=15; parentreport[42]=16; parentreport[43]=17; parentreport[44]=18; parentreport[45]=19; parentreport[46]=20; parentreport[47]=21; parentreport[48]=22; parentreport[49]=23; parentreport[50]=24; parentreport[51]=25; parentreport[52]=26; parentreport[53]=27; parentreport[54]=28; parentreport[55]=29; parentreport[56]=30; parentreport[57]=31; parentreport[58]=32; parentreport[59]=34; parentreport[60]=35; parentreport[61]=-1; parentreport[62]=-1; parentreport[63]=-1; parentreport[64]=-1; parentreport[65]=-1; parentreport[66]=-1; parentreport[67]=-1; parentreport[68]=-1; parentreport[69]=-1; parentreport[70]=-1; parentreport[71]=-1; parentreport[72]=-1; parentreport[73]=-1; parentreport[74]=-1; parentreport[75]=-1; parentreport[76]=-1; parentreport[77]=-1; parentreport[78]=-1; parentreport[79]=-1; parentreport[80]=-1; parentreport[81]=-1; parentreport[82]=-1; parentreport[83]=-1; parentreport[84]=-1; parentreport[85]=-1; parentreport[86]=-1; parentreport[87]=-1; parentreport[88]=-1; parentreport[89]=-1; parentreport[90]=-1; parentreport[91]=-1; parentreport[92]=-1; parentreport[93]=-1; parentreport[94]=-1; parentreport[95]=-1; parentreport[96]=-1; parentreport[97]=-1; parentreport[98]=-1; parentreport[99]=-1; parentreport[100]=-1; parentreport[101]=-1; parentreport[102]=-1; parentreport[103]=-1; parentreport[104]=-1; parentreport[105]=-1; parentreport[106]=-1; parentreport[107]=-1; parentreport[108]=-1; parentreport[109]=-1; parentreport[110]=-1; parentreport[111]=-1; parentreport[112]=-1; parentreport[113]=-1; parentreport[114]=-1; parentreport[115]=-1; parentreport[116]=-1; parentreport[117]=-1; parentreport[118]=-1; parentreport[119]=-1; parentreport[120]=-1; parentreport[121]=-1; parentreport[122]=-1; parentreport[123]=-1; parentreport[124]=-1; parentreport[125]=-1; parentreport[126]=-1; parentreport[127]=60; parentreport[128]=60; parentreport[129]=36; parentreport[130]=-1; var url_path = ""; var fetch_prefix = ""; var fetch_wraps_xml_in_html = ""; function loadXmlDoc(url) { var doc; var jqxhr=$.ajax({type: "GET", url: url, async: false}); // code for IE if (window.ActiveXObject) { doc = new ActiveXObject("Msxml2.FreeThreadedDOMDocument.3.0"); doc.loadXML(jqxhr.responseText); } // code for other browsers else if (document.implementation && document.implementation.createDocument) { doc=document.implementation.createDocument("","",null); doc.async=true; doc = jqxhr.responseXML.documentElement; } return doc; } function fixSrcAttr(src) { var uri = src.substr(0,5); // No change is needed if the 'src' attribute contains an embedded image if (uri == 'data:') { return src; } // EDGAR no change if already a server query format (url_path has a fetchPrefix) if (url_path && src.indexOf(fetch_prefix)>0) { return src; } // Absolute URL on EDGAR website is unchanged var idx = src.lastIndexOf('https://www.sec.gov/Archives/edgar/data/') if (idx > -1) { return src; } // For all other URLs use only basename component var idx = src.lastIndexOf('/'); if (idx > -1) { src = src.substring(idx+1,src.length); } return url_path + src; } function getReport(url, xsl_url) { var _url = url_path + url; if (xsl_url == null) { xsl_url = InstanceReportXslt; } var ext = url.substring(url.lastIndexOf('.')+1, url.length); if (ext == 'htm') { $.ajax({ type: "GET", url: _url, dataType: "text", async:false, success: function (data) { jQuery('#reportDiv').append(data) .find('img').attr('src', function(i, val) { return fixSrcAttr(val);}).end(); } }); } else if (processXsltInBrowser == 'true') { $.ajax({ type: "GET", url: _url, dataType: "text", async: false, success: function(data) { var path; if (fetch_wraps_xml_in_html) { // remove EDGAR workstation HTML wrpping of XML data = data.replace(/.+<PRE><FONT SIZE = 3>/g, ''); // header data = data.replace(/<\/FONT><\/PRE><\/BODY><\/HTML>/g, ''); // footer data = data.replace(/<P CLASS=\"page\"> <\/P>/g, '\n'); // newlines data = data.replace(/>/g, '>'); data = data.replace(/</g, '<'); data = data.replace(/&/g, '&'); // end of EDGAR HTML wrapping removal path = _url; // EDGAR workstation and ops GW } else { data = data.replace(/^\s+|\s+$/g, ''); // leading or trailing whitespace causes problems path = "/" + _url.substring(1, _url.lastIndexOf('/')+1); } // code for IE if (window.ActiveXObject) { xsl_doc = loadXmlDoc(xsl_url) var xslt = new ActiveXObject("Msxml2.XSLTemplate.3.0"); xslt.stylesheet = xsl_doc; var xslproc = xslt.createProcessor(); var doc = new ActiveXObject("Msxml2.FreeThreadedDOMDocument.3.0"); doc.loadXML(data); xslproc.input = doc; xslproc.addParameter("source", path ); xslproc.addParameter("asPage", "true" ); xslproc.transform(); // Find all images and prepend the base URL to the src attribute jQuery('#reportDiv').append(jQuery(xslproc.output) .find('img') .attr('src', function(i, val) { return fixSrcAttr(val); }).end()); } // code for other browsers else if (document.implementation && document.implementation.createDocument) { xsltProcessor=new XSLTProcessor(); xsltProcessor.importStylesheet(loadXmlDoc(xsl_url)); xsltProcessor.setParameter(null,"source",path); xsltProcessor.setParameter(null,"asPage","true"); parser = new DOMParser(); xmlDoc = parser.parseFromString(data, "text/xml"); var rpt = xsltProcessor.transformToFragment(xmlDoc, document); document.getElementById("reportDiv").appendChild(rpt); FixNotesForGeckoWebkit( document.getElementById( 'reportDiv' ) ); // Find all images and prepend the base URL to the src attribute jQuery('#reportDiv').find('img') .attr('src', function(i, val) { return fixSrcAttr(val); }); } else { alert('Your browser cannot handle this script'); } } }); } } function clearReportDiv() { // code for IE if (window.ActiveXObject) { document.getElementById("reportDiv").innerHTML=''; } // code for Mozilla, Firefox, Opera, etc. else if (document.implementation && document.implementation.createDocument) { x = document.getElementById("reportDiv").childNodes; for (i=x.length-1;i>-1;i--) { node = document.getElementById("reportDiv").childNodes[i]; if (node) { document.getElementById("reportDiv").removeChild(node); } } } } function XX_loadReport(idx) { if (window.XMLHttpRequest || window.ActiveXObject) { clearReportDiv(); xsl_url = null; if (reports[idx].indexOf('FilingSummary.xml') > -1) { unHighlightAllMenuItems(); xsl_url = url_path + "RenderingLogs.xslt"; } if (reports[idx] == 'all') { highlightAllMenuItems(); jQuery.ajaxSetup({async:false}); for (var i=1; i<reports.length; i++) { if (reports[i] != 'all') { getReport(reports[i], xsl_url); } else { break; } } } else { getReport(reports[idx], xsl_url); } window.scrollTo(0,0); } else { alert('Your browser cannot handle this script'); } } function highlight(link) { var parent = document.getElementById( 'menu' ); var links = parent.getElementsByTagName( 'a' ); for (var i = 0; i < links.length; i++){ if (links[i].className == 'xbrlviewer') { if (links[i] == link) { link.style.background = "#C1CDCD"; } else { links[i].style.background = "#F5F5EB"; } } } } //the parameter 'div' represents <div id="reportDiv"> function FixNotesForGeckoWebkit( div ){ //textContent is only found in "other" browsers //if it exists, search it for our table - there should only be one if( div.textContent ){ var tables = div.getElementsByTagName( 'table' ); if( tables.length ){ //loop through the tables for( var t = 0; t < tables.length; t++ ){ var cells = tables[t].getElementsByTagName( 'td' ); //loop through the cells, checking for class="text" which indicates some kind of text content - this includes HTML for notes for( var i = 0; i < cells.length; i++ ){ var curCell = cells[ i ]; if( curCell.className == 'text' ){ //<td class="text" found - now check if this HTML had already been rendered - if so, we should not attempt to render it again var nodes = curCell.getElementsByTagName( '*' ); if( nodes.length <= 1 ){ //no "nodes" found so perform a secondary check that we have text which resembles HTML nodes = curCell.textContent.match( /<\/?[a-zA-Z]{1}\w*[^>]*>/g ); if( nodes && nodes.length ){ //this text does resemble HTML, use the textContent as HTML and that will convert the text to HTML content. curCell.innerHTML = curCell.textContent; } } } } } } } } function applyRedline( url ) { if (isRedline) { return url + "&redline=true"; } else { return url; } } window.onload = function () { if (window.location.href.substring(0,5)=='file:') { ableToOpenReportFiles = 0; try {$.ajax({type: "GET",url: reports[1],dataType: "text",async:false, success: function (data) { if (data != 0) ableToOpenReportFiles = 1; }}); } catch (err) {} if (ableToOpenReportFiles == 0) { alert("In this browser environment, opening the url\n" +window.location.href +"\nprevents individual report files such as " +reports[1]+" from opening.");}} loadReport(1); }