/*! Raven.js 3.22.2 (1b6187b) | github.com/getsentry/raven-js */ !function(a,b){"object"==typeof exports&&"undefined"!=typeof module?module.exports=b():"function"==typeof define&&define.amd?define(b):a.Raven=b()}(this,function(){"use strict";function a(a,b){return b={exports:{}},a(b,b.exports),b.exports}function b(a){return(b="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a})(a)}function c(a){return"object"===b(a)&&null!==a}function d(a){switch({}.toString.call(a)){case"[object Error]":return!0;case"[object Exception]":return!0;case"[object DOMException]":return!0;default:return a instanceof Error}}function e(a){return l()&&"[object ErrorEvent]"==={}.toString.call(a)}function f(a){return void 0===a}function g(a){return"function"==typeof a}function h(a){return"[object Object]"===Object.prototype.toString.call(a)}function i(a){return"[object String]"===Object.prototype.toString.call(a)}function j(a){return"[object Array]"===Object.prototype.toString.call(a)}function k(a){if(!h(a))return!1;for(var b in a)if(a.hasOwnProperty(b))return!1;return!0}function l(){try{return new ErrorEvent(""),!0}catch(a){return!1}}function m(){if(!("fetch"in P))return!1;try{return new Headers,new Request(""),new Response,!0}catch(a){return!1}}function n(a){function b(b,c){var d=a(b)||b;return c?c(d)||d:d}return b}function o(a,b){var c,d;if(f(a.length))for(c in a)s(a,c)&&b.call(null,c,a[c]);else if(d=a.length)for(c=0;c ",i=h.length;a&&f++1&&g+e.length*i+b.length>=d));)e.push(b),g+=b.length,a=a.parentNode;return e.reverse().join(h)}function y(a){var b,c,d,e,f,g=[];if(!a||!a.tagName)return"";if(g.push(a.tagName.toLowerCase()),a.id&&g.push("#"+a.id),b=a.className,b&&i(b))for(c=b.split(/\s+/),f=0;f=0;--b)l[b]===a&&l.splice(b,1)}function c(){g(),l=[]}function d(a,b){var c=null;if(!b||R.collectWindowErrors){for(var d in l)if(l.hasOwnProperty(d))try{l[d].apply(null,[a].concat(T.call(arguments,2)))}catch(e){c=e}if(c)throw c}}function e(a,b,c,e,f){var g=null,i=Q.isErrorEvent(f)?f.error:f,k=Q.isErrorEvent(a)?a.message:a;if(o)R.computeStackTrace.augmentStackTraceWithInitialElement(o,b,c,k),h();else if(i&&Q.isError(i))g=R.computeStackTrace(i),d(g,!0);else{var l,m={url:b,line:c,column:e},n=void 0;if("[object String]"==={}.toString.call(k)){var l=k.match(V);l&&(n=l[1],k=l[2])}m.func=U,g={name:n,message:k,url:F(),stack:[m]},d(g,!0)}return!!j&&j.apply(this,arguments)}function f(){k||(j=S.onerror,S.onerror=e,k=!0)}function g(){k&&(S.onerror=j,k=!1,j=void 0)}function h(){var a=o,b=m;m=null,o=null,n=null,d.apply(null,[a,!1].concat(b))}function i(a,b){var c=T.call(arguments,1);if(o){if(n===a)return;h()}var d=R.computeStackTrace(a);if(o=d,n=a,m=c,setTimeout(function(){n===a&&h()},d.incomplete?2e3:0),b!==!1)throw a}var j,k,l=[],m=null,n=null,o=null;return i.subscribe=a,i.unsubscribe=b,i.uninstall=c,i}(),R.computeStackTrace=function(){function a(a){if("undefined"!=typeof a.stack&&a.stack){for(var b,c,d,e=/^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|webpack||[a-z]:|\/).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,f=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|\[native).*?|[^@]*bundle)(?::(\d+))?(?::(\d+))?\s*$/i,g=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:file|ms-appx(?:-web)|https?|webpack|blob):.*?):(\d+)(?::(\d+))?\)?\s*$/i,h=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,i=/\((\S*)(?::(\d+))(?::(\d+))\)/,j=a.stack.split("\n"),k=[],l=(/^(.*) is undefined$/.exec(a.message),0),m=j.length;l eval")>-1;o&&(b=h.exec(c[3]))?(c[3]=b[1],c[4]=b[2],c[5]=null):0!==l||c[5]||"undefined"==typeof a.columnNumber||(k[0].column=a.columnNumber+1),d={url:c[3],func:c[1]||U,args:c[2]?c[2].split(","):[],line:c[4]?+c[4]:null,column:c[5]?+c[5]:null}}!d.func&&d.line&&(d.func=U),k.push(d)}return k.length?{name:a.name,message:a.message,url:F(),stack:k}:null}}function b(a,b,c,d){var e={url:b,line:c};if(e.url&&e.line){if(a.incomplete=!1,e.func||(e.func=U),a.stack.length>0&&a.stack[0].url===e.url){if(a.stack[0].line===e.line)return!1;if(!a.stack[0].line&&a.stack[0].func===e.func)return a.stack[0].line=e.line,!1}return a.stack.unshift(e),a.partial=!0,!0}return a.incomplete=!0,!1}function c(a,e){for(var f,g,h=/function\s+([_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*)?\s*\(/i,i=[],j={},k=!1,l=c.caller;l&&!k;l=l.caller)if(l!==d&&l!==R.report){if(g={url:null,func:U,line:null,column:null},l.name?g.func=l.name:(f=h.exec(l.toString()))&&(g.func=f[1]),"undefined"==typeof g.func)try{g.func=f.input.substring(0,f.input.indexOf("{"))}catch(m){}j[""+l]?k=!0:j[""+l]=!0,i.push(g)}e&&i.splice(0,e);var n={name:a.name,message:a.message,url:F(),stack:i};return b(n,a.sourceURL||a.fileName,a.line||a.lineNumber,a.message||a.description),n}function d(b,d){var e=null;d=null==d?0:+d;try{if(e=a(b))return e}catch(f){if(R.debug)throw f}try{if(e=c(b,d+1))return e}catch(f){if(R.debug)throw f}return{name:b.name,message:b.message,url:F()}}return d.augmentStackTraceWithInitialElement=b,d.computeStackTraceFromStackProp=a,d}();var W=R,X=a(function(a,b){function c(a,b){for(var c=0;c0){var i=c(d,this);~i?d.splice(i+1):d.push(this),~i?f.splice(i,1/0,g):f.push(g),~c(d,h)&&(h=b.call(this,g,h))}else d.push(h);return null==a?h instanceof Error?e(h):h:a.call(this,g,h)}}b=a.exports=d,b.getSerialize=f});G.prototype=new Error,G.prototype.constructor=G;var Y=G,Z=function(a,b,c){var d=a[b],e=a;if(b in a){var f="warn"===b?"warning":b;a[b]=function(){var a=[].slice.call(arguments),g=Q.safeJoin(a," "),h={level:f,logger:"console",extra:{arguments:a}};"assert"===b?a[0]===!1&&(g="Assertion failed: "+(Q.safeJoin(a.slice(1)," ")||"console.assert"),h.extra.arguments=a.slice(1),c&&c(g,h)):c&&c(g,h),d&&Function.prototype.apply.call(d,e,a)}}},$={wrapMethod:Z},_=Q.isError,aa=Q.isObject,ba=Q.isErrorEvent,ca=Q.isUndefined,da=Q.isFunction,ea=Q.isString,fa=Q.isArray,ga=Q.isEmptyObject,ha=Q.each,ia=Q.objectMerge,ja=Q.truncate,ka=Q.objectFrozen,la=Q.hasKey,ma=Q.joinRegExp,na=Q.urlencode,oa=Q.uuid4,pa=Q.htmlTreeAsString,qa=Q.isSameException,ra=Q.isSameStacktrace,sa=Q.parseUrl,ta=Q.fill,ua=Q.supportsFetch,va=$.wrapMethod,wa="source protocol user pass host port path".split(" "),xa=/^(?:(\w+):)?\/\/(?:(\w+)(:\w+)?@)?([\w\.-]+)(?::(\d+))?(\/.*)/,ya="undefined"!=typeof window?window:"undefined"!=typeof N?N:"undefined"!=typeof self?self:{},za=ya.document,Aa=ya.navigator;J.prototype={VERSION:"3.22.2",debug:!1,TraceKit:W,config:function(a,b){var c=this;if(c.i)return this.C("error","Error: Raven has already been configured"),c;if(!a)return c;var d=c.m;b&&ha(b,function(a,b){"tags"===a||"extra"===a||"user"===a?c.l[a]=b:d[a]=b}),c.setDSN(a),d.ignoreErrors.push(/^Script error\.?$/),d.ignoreErrors.push(/^Javascript error: Script error\.? on line 0$/),d.ignoreErrors=ma(d.ignoreErrors),d.ignoreUrls=!!d.ignoreUrls.length&&ma(d.ignoreUrls),d.whitelistUrls=!!d.whitelistUrls.length&&ma(d.whitelistUrls),d.includePaths=ma(d.includePaths),d.maxBreadcrumbs=Math.max(0,Math.min(d.maxBreadcrumbs||100,100));var e={xhr:!0,console:!0,dom:!0,location:!0,sentry:!0},f=d.autoBreadcrumbs;"[object Object]"==={}.toString.call(f)?f=ia(e,f):f!==!1&&(f=e),d.autoBreadcrumbs=f;var g={tryCatch:!0},h=d.instrument;return"[object Object]"==={}.toString.call(h)?h=ia(g,h):h!==!1&&(h=g),d.instrument=h,W.collectWindowErrors=!!d.collectWindowErrors,c},install:function(){var a=this;return a.isSetup()&&!a.p&&(W.report.subscribe(function(){a.D.apply(a,arguments)}),a.E(),a.m.instrument&&a.m.instrument.tryCatch&&a.F(),a.m.autoBreadcrumbs&&a.G(),a.H(),a.p=!0),Error.stackTraceLimit=a.m.stackTraceLimit,this},setDSN:function(a){var b=this,c=b.I(a),d=c.path.lastIndexOf("/"),e=c.path.substr(1,d);b.J=a,b.j=c.user,b.K=c.pass&&c.pass.substr(1),b.k=c.path.substr(d+1),b.i=b.L(c),b.M=b.i+"/"+e+"api/"+b.k+"/store/",this.A()},context:function(a,b,c){return da(a)&&(c=b||[],b=a,a=void 0),this.wrap(a,b).apply(this,c)},wrap:function(a,b,c){function d(){var d=[],f=arguments.length,g=!a||a&&a.deep!==!1;for(c&&da(c)&&c.apply(this,arguments);f--;)d[f]=g?e.wrap(a,arguments[f]):arguments[f];try{return b.apply(this,d)}catch(h){throw e.N(),e.captureException(h,a),h}}var e=this;if(ca(b)&&!da(a))return a;if(da(a)&&(b=a,a=void 0),!da(b))return b;try{if(b.a)return b;if(b.O)return b.O}catch(f){return b}for(var g in b)la(b,g)&&(d[g]=b[g]);return d.prototype=b.prototype,b.O=d,d.a=!0,d.b=b,d},uninstall:function(){return W.report.uninstall(),this.P(),this.Q(),this.R(),Error.stackTraceLimit=this.q,this.p=!1,this},captureException:function(a,b){b=ia({trimHeadFrames:0},b?b:{});var c=!_(a),d=!ba(a),e=ba(a)&&!a.error;if(c&&d||e)return this.captureMessage(a,ia(b,{stacktrace:!0,trimHeadFrames:b.trimHeadFrames+1}));ba(a)&&(a=a.error),this.f=a;try{var f=W.computeStackTrace(a);this.S(f,b)}catch(g){if(a!==g)throw g}return this},captureMessage:function(a,b){if(!this.m.ignoreErrors.test||!this.m.ignoreErrors.test(a)){b=b||{};var c,d=ia({message:a+""},b);try{throw new Error(a)}catch(e){c=e}c.name=null;var f=W.computeStackTrace(c),g=fa(f.stack)&&f.stack[1],h=g&&g.url||"";if((!this.m.ignoreUrls.test||!this.m.ignoreUrls.test(h))&&(!this.m.whitelistUrls.test||this.m.whitelistUrls.test(h))){if(this.m.stacktrace||b&&b.stacktrace){b=ia({fingerprint:a,trimHeadFrames:(b.trimHeadFrames||0)+1},b);var i=this.T(f,b);d.stacktrace={frames:i.reverse()}}return this.U(d),this}}},captureBreadcrumb:function(a){var b=ia({timestamp:H()/1e3},a);if(da(this.m.breadcrumbCallback)){var c=this.m.breadcrumbCallback(b);if(aa(c)&&!ga(c))b=c;else if(c===!1)return this}return this.w.push(b),this.w.length>this.m.maxBreadcrumbs&&this.w.shift(),this},addPlugin:function(a){var b=[].slice.call(arguments,1);return this.t.push([a,b]),this.p&&this.H(),this},setUserContext:function(a){return this.l.user=a,this},setExtraContext:function(a){return this.V("extra",a),this},setTagsContext:function(a){return this.V("tags",a),this},clearContext:function(){return this.l={},this},getContext:function(){return JSON.parse(X(this.l))},setEnvironment:function(a){return this.m.environment=a,this},setRelease:function(a){return this.m.release=a,this},setDataCallback:function(a){var b=this.m.dataCallback;return this.m.dataCallback=I(b,a),this},setBreadcrumbCallback:function(a){var b=this.m.breadcrumbCallback;return this.m.breadcrumbCallback=I(b,a),this},setShouldSendCallback:function(a){var b=this.m.shouldSendCallback;return this.m.shouldSendCallback=I(b,a),this},setTransport:function(a){return this.m.transport=a,this},lastException:function(){return this.f},lastEventId:function(){return this.h},isSetup:function(){return!!this.c&&(!!this.i||(this.ravenNotConfiguredError||(this.ravenNotConfiguredError=!0,this.C("error","Error: Raven has not been configured.")),!1))},afterLoad:function(){var a=ya.RavenConfig;a&&this.config(a.dsn,a.config).install()},showReportDialog:function(a){if(za){a=a||{};var b=a.eventId||this.lastEventId();if(!b)throw new Y("Missing eventId");var c=a.dsn||this.J;if(!c)throw new Y("Missing DSN");var d=encodeURIComponent,e="";e+="?eventId="+d(b),e+="&dsn="+d(c);var f=a.user||this.l.user;f&&(f.name&&(e+="&name="+d(f.name)),f.email&&(e+="&email="+d(f.email)));var g=this.L(this.I(c)),h=za.createElement("script");h.async=!0,h.src=g+"/api/embed/error-page/"+e,(za.head||za.body).appendChild(h)}},N:function(){var a=this;this.o+=1,setTimeout(function(){a.o-=1})},W:function(a,b){var c,d;if(this.d){b=b||{},a="raven"+a.substr(0,1).toUpperCase()+a.substr(1),za.createEvent?(c=za.createEvent("HTMLEvents"),c.initEvent(a,!0,!0)):(c=za.createEventObject(),c.eventType=a);for(d in b)la(b,d)&&(c[d]=b[d]);if(za.createEvent)za.dispatchEvent(c);else try{za.fireEvent("on"+c.eventType.toLowerCase(),c)}catch(e){}}},X:function(a){var b=this;return function(c){if(b.Y=null,b.x!==c){b.x=c;var d;try{d=pa(c.target)}catch(e){d=""}b.captureBreadcrumb({category:"ui."+a,message:d})}}},Z:function(){var a=this,b=1e3;return function(c){var d;try{d=c.target}catch(e){return}var f=d&&d.tagName;if(f&&("INPUT"===f||"TEXTAREA"===f||d.isContentEditable)){var g=a.Y;g||a.X("input")(c),clearTimeout(g),a.Y=setTimeout(function(){a.Y=null},b)}}},$:function(a,b){var c=sa(this.y.href),d=sa(b),e=sa(a);this.z=b,c.protocol===d.protocol&&c.host===d.host&&(b=d.relative),c.protocol===e.protocol&&c.host===e.host&&(a=e.relative),this.captureBreadcrumb({category:"navigation",data:{to:b,from:a}})},E:function(){var a=this;a._=Function.prototype.toString,Function.prototype.toString=function(){return"function"==typeof this&&this.a?a._.apply(this.b,arguments):a._.apply(this,arguments)}},P:function(){this._&&(Function.prototype.toString=this._)},F:function(){function a(a){return function(b,d){for(var e=new Array(arguments.length),f=0;f2?arguments[2]:void 0;return c&&b.$(b.z,c+""),a.apply(this,arguments)}};ta(history,"pushState",j,d),ta(history,"replaceState",j,d)}if(c.console&&"console"in ya&&console.log){var k=function(a,c){b.captureBreadcrumb({message:a,level:c.level,category:"console"})};ha(["debug","info","warn","error","log"],function(a,b){va(console,b,k)})}},Q:function(){for(var a;this.v.length;){a=this.v.shift();var b=a[0],c=a[1],d=a[2];b[c]=d}},R:function(){for(var a in this.s)this.r[a]=this.s[a]},H:function(){var a=this;ha(this.t,function(b,c){var d=c[0],e=c[1];d.apply(a,[a].concat(e))})},I:function(a){var b=xa.exec(a),c={},d=7;try{for(;d--;)c[wa[d]]=b[d]||""}catch(e){throw new Y("Invalid DSN: "+a)}if(c.pass&&!this.m.allowSecretKey)throw new Y("Do not specify your secret key in the DSN. See: http://bit.ly/raven-secret-key");return c},L:function(a){var b="//"+a.host+(a.port?":"+a.port:"");return a.protocol&&(b=a.protocol+":"+b),b},D:function(){this.o||this.S.apply(this,arguments)},S:function(a,b){var c=this.T(a,b);this.W("handle",{stackInfo:a,options:b}),this.ba(a.name,a.message,a.url,a.lineno,c,b)},T:function(a,b){var c=this,d=[];if(a.stack&&a.stack.length&&(ha(a.stack,function(b,e){var f=c.ca(e,a.url);f&&d.push(f)}),b&&b.trimHeadFrames))for(var e=0;e0&&(a.breadcrumbs={values:[].slice.call(this.w,0)}),this.l.user&&(a.user=this.l.user),b.environment&&(a.environment=b.environment),b.release&&(a.release=b.release),b.serverName&&(a.server_name=b.serverName),Object.keys(a).forEach(function(b){(null==a[b]||""===a[b]||ga(a[b]))&&delete a[b]}),da(b.dataCallback)&&(a=b.dataCallback(a)||a),a&&!ga(a)&&(!da(b.shouldSendCallback)||b.shouldSendCallback(a)))return this.ia()?void this.C("warn","Raven dropped error due to backoff: ",a):void("number"==typeof b.sampleRate?Math.random()