1 2(function(){if(window.__skyMapClientErrorReporterInstalled)return;window.__skyMapClientErrorReporterInstalled=true;var MAX_REPORTS_PER_PAGE=10;var MAX_MESSAGE=1000;var MAX_SOURCE=1000;var MAX_STACK=8000;var MAX_PAGE=1000;var sentCount=0;var sentKeys={};function reporterInfo(){var marker="/jsc/client_error_reporter.js";var info={endpoint:"/client-error",build:""};var scripts=document.getElementsByTagName("script");for(var i=scripts.length-1;i>=0;i--){var src=scripts[i].src||"";var pos=src.indexOf(marker);if(pos>=0){var a=document.createElement("a");a.href=src;var path=a.pathname||"";var pathPos=path.indexOf(marker);if(pathPos>=0){info.endpoint=path.substring(0,pathPos)+"/client-error";} 3var match=String(a.search||"").match(/[?&]v=([^&]+)/);if(match){try{info.build=decodeURIComponent(match[1].replace(/\+/g," "));}catch(ignoreDecode){info.build=match[1];}} 4return info;}} 5return info;} 6var info=reporterInfo();var endpoint=info.endpoint;var buildVersion=info.build;window.SKYMAP_BUILD_VERSION=buildVersion;function truncate(value,max){if(value===null||typeof value==="undefined")return"";value=String(value);return value.length>max?value.substring(0,max):value;} 7function sourceWithoutQuery(value){value=truncate(value,MAX_SOURCE);if(!value)return"";try{var a=document.createElement("a");a.href=value;if(a.protocol&&a.host)return truncate(a.protocol+"//"+a.host+a.pathname,MAX_SOURCE);}catch(ignore){} 8var q=value.indexOf("?");if(q>=0)value=value.substring(0,q);var hash=value.indexOf("#");if(hash>=0)value=value.substring(0,hash);return truncate(value,MAX_SOURCE);} 9function encodeForm(payload){var parts=[];for(var key in payload){if(Object.prototype.hasOwnProperty.call(payload,key)){parts.push(encodeURIComponent(key)+"="+encodeURIComponent(payload[key]));}} 10return parts.join("&");} 11function report(payload){try{if(sentCount>=MAX_REPORTS_PER_PAGE)return;payload.type=truncate(payload.type,32);payload.message=truncate(payload.message,MAX_MESSAGE);payload.source=sourceWithoutQuery(payload.source);payload.line=payload.line>0?Math.floor(payload.line):0;payload.column=payload.column>0?Math.floor(payload.column):0;payload.stack=truncate(payload.stack,MAX_STACK);payload.page=truncate(window.location.pathname||"",MAX_PAGE);payload.build=truncate(buildVersion,64);var key=payload.type+"|"+payload.message+"|"+payload.source 12+"|"+payload.line+"|"+payload.column;if(sentKeys[key])return;sentKeys[key]=true;sentCount++;var body=encodeForm(payload);var sent=false;if(navigator.sendBeacon&&window.Blob){try{var blob=new Blob([body],{type:"application/x-www-form-urlencoded;charset=UTF-8"});sent=navigator.sendBeacon(endpoint,blob);}catch(ignoreBeacon){}} 13if(!sent&&window.XMLHttpRequest){try{var xhr=new XMLHttpRequest();xhr.open("POST",endpoint,true);xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8");xhr.send(body);}catch(ignoreXhr){}}}catch(ignoreReporter){}} 14function runtimeError(event){var error=event&&event.error;report({type:"javascript",message:event&&event.message?event.message:(error&&error.message?error.message:"JavaScript error"),source:event&&event.filename?event.filename:"",line:event&&event.lineno?event.lineno:0,column:event&&event.colno?event.colno:0,stack:error&&error.stack?error.stack:""});} 15function isIgnoredGoogleAnalyticsResource(source){if(!source)return false;try{var a=document.createElement("a");a.href=source;var host=String(a.hostname||"").toLowerCase();return/(^|\.)googletagmanager\.com$/.test(host)||/(^|\.)google-analytics\.com$/.test(host);}catch(ignore){return false;}} 16function resourceError(event){var target=event&&event.target;if(!target||target===window)return false;var tag=String(target.tagName||"").toUpperCase();if(tag!=="SCRIPT"&&tag!=="LINK")return true;var source=target.src||target.href||"";if(isIgnoredGoogleAnalyticsResource(source))return true;report({type:"resource",message:tag+" resource failed to load",source:source,line:0,column:0,stack:""});return true;} 17if(window.addEventListener){window.addEventListener("error",function(event){if(!resourceError(event))runtimeError(event);},true);window.addEventListener("unhandledrejection",function(event){var reason=event?event.reason:null;report({type:"promise",message:reason&&reason.message?reason.message:String(reason||"Unhandled promise rejection"),source:"",line:0,column:0,stack:reason&&reason.stack?reason.stack:""});},false);}else{var previousOnError=window.onerror;window.onerror=function(message,source,line,column,error){report({type:"javascript",message:message||"JavaScript error",source:source||"",line:line||0,column:column||0,stack:error&&error.stack?error.stack:""});if(typeof previousOnError==="function"){return previousOnError.apply(window,arguments);} 18return false;};}})();
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.