!function(e,t){"use strict";var n={};!function(){var e=document.getElementsByTagName("script"),t=e[e.length-1];if(t)for(var r,o=t.attributes,i=0,a=o.length;i"];for(var n=arguments.callee;n&&t.length<10;){/function(?:\s+([\w$]+))+\s*\(/.test(n.toString())?t.push(RegExp.$1||""):t.push("");try{n=n.caller}catch(e){break}}return{stack:t.join("\n"),generator:"walk"}}function c(e,t){var n,r;for(n=0,r=e.length;n=y("max_depth",8))return encodeURIComponent(t)+"=[MAX DEPTH REACHED]";for(r in e)a=e[r],e.hasOwnProperty(r)&&null!=r&&null!=a&&(v(a)||(a=Object.prototype.toString.call(a)),o=t?t+"["+r+"]":r,i.push("object"==typeof a?m(a,o,n+1):encodeURIComponent(o)+"="+encodeURIComponent(a)));return i.join("&")}function b(e){try{return x=new(this.XMLHttpRequest||ActiveXObject)("MSXML2.XMLHTTP.3.0"),x.open("GET",e,y("async",!0)),void x.send()}catch(e){g("Error encountered during XHR request (will retry): "+e)}img=new Image,img.src=e}function w(e){u=s=null;var t=y("apiKey",y("api_key"));return t?(b(h()+"/v1/notices/js.gif?"+m({notice:e})+"&api_key="+t+"&t="+(new Date).getTime()),!0):(g("Unable to send error report: no API key has been configured."),!1)}function E(a,p){if(y("disabled",!1))return!1;if("object"!=typeof a)return!1;if("[object Error]"===Object.prototype.toString.call(a)){var d=a;a=e(a,{name:d.name,message:d.message,stack:i(d)})}if(t(a))return!1;if(s&&l&&w(s),0===function(){var e,t;t=[];for(e in a)({}).hasOwnProperty.call(a,e)&&t.push(e);return t}().length)return!1;if(p&&(a=e(a,p)),n(a,y("ignorePatterns")))return!1;if(c(H.beforeNotifyHandlers,a))return!1;var h=r();"string"==typeof a.cookies?h.HTTP_COOKIE=a.cookies:"object"==typeof a.cookies&&(h.HTTP_COOKIE=o(a.cookies));var v={notifier:f,error:{class:a.name||"Error",message:a.message,backtrace:a.stack,generator:a.generator,fingerprint:a.fingerprint},request:{url:a.url||document.URL,component:a.component||y("component"),action:a.action||y("action"),context:e(H.context,a.context),cgi_data:h,params:a.params},server:{project_root:a.projectRoot||a.project_root||y("projectRoot",y("project_root",window.location.protocol+"//"+window.location.host)),environment_name:a.environment||y("environment")}};return s=v,u=a,l?(g("Deferring notice.",a,v),window.setTimeout(function(){t(a)&&w(v)})):(g("Queuing notice.",a,v),O.push(v)),a}function j(e){return"function"!=typeof Object.isExtensible||Object.isExtensible(e)}function T(e,t){try{return"function"!=typeof e?e:j(e)?(e.___hb||(e.___hb=function(){var n=y("onerror",!0);if(!(L&&(n||t)||t&&!n))return e.apply(this,arguments);try{return e.apply(this,arguments)}catch(e){throw E(e),e}}),e.___hb):e}catch(t){return e}}function _(e,t,n){if(!d&&e&&t&&n){var r=e[t];e[t]=n(r)}}var R=[],O=[],H={context:{},beforeNotifyHandlers:[]};if("object"==typeof p)for(k in p)H[k]=p[k];var L=!0;if(window.atob||(L=!1),window.ErrorEvent)try{0===new window.ErrorEvent("").colno&&(L=!1)}catch(e){}H.notify=function(t,n,r){if(t||(t={}),"[object Error]"===Object.prototype.toString.call(t)){var o=t;t=e(t,{name:o.name,message:o.message,stack:i(o)})}if("object"!=typeof t){t={message:String(t)}}if(n&&"object"!=typeof n){n={name:String(n)}}return n&&(t=e(t,n)),"object"==typeof r&&(t=e(t,r)),E(t,a(t))},H.wrap=function(e){return T(e,!0)},H.setContext=function(t){return"object"==typeof t&&(H.context=e(H.context,t)),H},H.resetContext=function(t){return H.context="object"==typeof t?e({},t):{},H},H.configure=function(e){for(k in e)H[k]=e[k];return H},H.beforeNotify=function(e){return H.beforeNotifyHandlers.push(e),H};var S=[].indexOf||function(e){for(var t=0,n=this.length;t