diff --git a/dist/plugins/angular.js b/dist/plugins/angular.js index bc8342ee59e8..5810f742255a 100644 --- a/dist/plugins/angular.js +++ b/dist/plugins/angular.js @@ -1,4 +1,4 @@ -/*! Raven.js 3.9.1 (7bbae7d) | github.com/getsentry/raven-js */ +/*! Raven.js 3.9.1 (79bc1ae) | github.com/getsentry/raven-js */ /* * Includes TraceKit diff --git a/dist/plugins/angular.min.js b/dist/plugins/angular.min.js index 79ce87aaf66a..87d78e83c700 100644 --- a/dist/plugins/angular.min.js +++ b/dist/plugins/angular.min.js @@ -1,3 +1,3 @@ -/*! Raven.js 3.9.1 (7bbae7d) | github.com/getsentry/raven-js */ +/*! Raven.js 3.9.1 (79bc1ae) | github.com/getsentry/raven-js */ !function(a){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=a();else if("function"==typeof define&&define.amd)define([],a);else{var b;b="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,b=b.Raven||(b.Raven={}),b=b.Plugins||(b.Plugins={}),b.Angular=a()}}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g0){var g=c.indexOf(this);~g?c.splice(g+1):c.push(this),~g?d.splice(g,1/0,e):d.push(e),~c.indexOf(f)&&(f=b.call(this,e,f))}else c.push(f);return null==a?f:a.call(this,e,f)}}c=b.exports=d,c.getSerialize=e},{}],2:[function(a,b,c){"use strict";function d(a){this.name="RavenConfigError",this.message=a}d.prototype=new Error,d.prototype.constructor=d,b.exports=d},{}],3:[function(a,b,c){"use strict";var d=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),b=""+a.join(" "),g={level:f,logger:"console",extra:{arguments:a}};c&&c(b,g),d&&Function.prototype.apply.call(d,e,a)}}};b.exports={wrapMethod:d}},{}],4:[function(a,b,c){(function(c){"use strict";function d(){return+new Date}function e(){this.a=!("object"!=typeof JSON||!JSON.stringify),this.b=!f(D),this.c=null,this.d=null,this.e=null,this.f=null,this.g=null,this.h={},this.i={logger:"javascript",ignoreErrors:[],ignoreUrls:[],whitelistUrls:[],includePaths:[],crossOrigin:"anonymous",collectWindowErrors:!0,maxMessageLength:0,stackTraceLimit:50,autoBreadcrumbs:!0},this.j=0,this.k=!1,this.l=Error.stackTraceLimit,this.m=C.console||{},this.n={},this.o=[],this.p=d(),this.q=[],this.r=[],this.s=null,this.t=C.location,this.u=this.t&&this.t.href;for(var a in this.m)this.n[a]=this.m[a]}function f(a){return void 0===a}function g(a){return"function"==typeof a}function h(a){return"[object String]"===E.toString.call(a)}function i(a){return"object"==typeof a&&null!==a}function j(a){for(var b in a)return!1;return!0}function k(a){var b=E.toString.call(a);return i(a)&&"[object Error]"===b||"[object Exception]"===b||a instanceof Error}function l(a,b){var c,d;if(f(a.length))for(c in a)o(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 u(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&&h(b))for(c=b.split(" "),f=0;fthis.i.maxBreadcrumbs&&this.r.shift(),this},addPlugin:function(a){var b=[].slice.call(arguments,1);return this.o.push([a,b]),this.k&&this.z(),this},setUserContext:function(a){return this.h.user=a,this},setExtraContext:function(a){return this.N("extra",a),this},setTagsContext:function(a){return this.N("tags",a),this},clearContext:function(){return this.h={},this},getContext:function(){return JSON.parse(y(this.h))},setEnvironment:function(a){return this.i.environment=a,this},setRelease:function(a){return this.i.release=a,this},setDataCallback:function(a){var b=this.i.dataCallback;return this.i.dataCallback=g(a)?function(c){return a(c,b)}:a,this},setBreadcrumbCallback:function(a){var b=this.i.breadcrumbCallback;return this.i.breadcrumbCallback=g(a)?function(c){return a(c,b)}:a,this},setShouldSendCallback:function(a){var b=this.i.shouldSendCallback;return this.i.shouldSendCallback=g(a)?function(c){return a(c,b)}:a,this},setTransport:function(a){return this.i.transport=a,this},lastException:function(){return this.c},lastEventId:function(){return this.d},isSetup:function(){return!!this.a&&(!!this.e||(this.ravenNotConfiguredError||(this.ravenNotConfiguredError=!0,this.v("error","Error: Raven has not been configured.")),!1))},afterLoad:function(){var a=C.RavenConfig;a&&this.config(a.dsn,a.config).install()},showReportDialog:function(a){if(D){a=a||{};var b=a.eventId||this.lastEventId();if(!b)throw new x("Missing eventId");var c=a.dsn||this.B;if(!c)throw new x("Missing DSN");var d=encodeURIComponent,e="";e+="?eventId="+d(b),e+="&dsn="+d(c);var f=a.user||this.h.user;f&&(f.name&&(e+="&name="+d(f.name)),f.email&&(e+="&email="+d(f.email)));var g=this.D(this.A(c)),h=D.createElement("script");h.async=!0,h.src=g+"/api/embed/error-page/"+e,(D.head||D.body).appendChild(h)}},F:function(){var a=this;this.j+=1,setTimeout(function(){a.j-=1})},O:function(a,b){var c,d;if(this.b){b=b||{},a="raven"+a.substr(0,1).toUpperCase()+a.substr(1),D.createEvent?(c=D.createEvent("HTMLEvents"),c.initEvent(a,!0,!0)):(c=D.createEventObject(),c.eventType=a);for(d in b)o(b,d)&&(c[d]=b[d]);if(D.createEvent)D.dispatchEvent(c);else try{D.fireEvent("on"+c.eventType.toLowerCase(),c)}catch(e){}}},P:function(a){var b=this;return function(c){if(b.Q=null,b.s!==c){b.s=c;var d,e=c.target;try{d=t(e)}catch(f){d=""}b.captureBreadcrumb({category:"ui."+a,message:d})}}},R:function(){var a=this,b=1e3;return function(c){var d=c.target,e=d&&d.tagName;if(e&&("INPUT"===e||"TEXTAREA"===e||d.isContentEditable)){var f=a.Q;f||a.P("input")(c),clearTimeout(f),a.Q=setTimeout(function(){a.Q=null},b)}}},S:function(a,b){var c=r(this.t.href),d=r(b),e=r(a);this.u=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}})},x: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.S(b.u,c+""),a.apply(this,arguments)}},d)}if(c.console&&"console"in C&&console.log){var m=function(a,c){b.captureBreadcrumb({message:a,level:c.level,category:"console"})};l(["debug","info","warn","error","log"],function(a,b){z(console,b,m)})}},J:function(){for(var a;this.q.length;){a=this.q.shift();var b=a[0],c=a[1],d=a[2];b[c]=d}},z:function(){var a=this;l(this.o,function(b,c){var d=c[0],e=c[1];d.apply(a,[a].concat(e))})},A:function(a){var b=B.exec(a),c={},d=7;try{for(;d--;)c[A[d]]=b[d]||""}catch(e){throw new x("Invalid DSN: "+a)}if(c.pass&&!this.i.allowSecretKey)throw new x("Do not specify your secret key in the DSN. See: http://bit.ly/raven-secret-key");return c},D:function(a){var b="//"+a.host+(a.port?":"+a.port:"");return a.protocol&&(b=a.protocol+":"+b),b},w:function(){this.j||this.K.apply(this,arguments)},K:function(a,b){var c=this.L(a,b);this.O("handle",{stackInfo:a,options:b}),this.U(a.name,a.message,a.url,a.lineno,c,b)},L:function(a,b){var c=this,d=[];if(a.stack&&a.stack.length&&(l(a.stack,function(a,b){var e=c.V(b);e&&d.push(e)}),b&&b.trimHeadFrames))for(var e=0;e0&&(a.breadcrumbs={values:[].slice.call(this.r,0)}),j(a.tags)&&delete a.tags,this.h.user&&(a.user=this.h.user),b.environment&&(a.environment=b.environment),b.release&&(a.release=b.release),b.serverName&&(a.server_name=b.serverName),g(b.dataCallback)&&(a=b.dataCallback(a)||a),a&&!j(a)&&(g(b.shouldSendCallback)&&!b.shouldSendCallback(a)||this.Y(a))},Z:function(){return s()},Y:function(a,b){var c=this,d=this.i;if(this.d=a.event_id||(a.event_id=this.Z()),a=this.W(a),this.v("debug","Raven about to send:",a),this.isSetup()){var e={sentry_version:"7",sentry_client:"raven-js/"+this.VERSION,sentry_key:this.f};this.C&&(e.sentry_secret=this.C);var f=a.exception&&a.exception.values[0];this.captureBreadcrumb({category:"sentry",message:f?(f.type?f.type+": ":"")+f.value:a.message,event_id:a.event_id,level:a.level||"error"});var g=this.E;(d.transport||this.$).call(this,{url:g,auth:e,data:a,options:d,onSuccess:function(){c.O("success",{data:a,src:g}),b&&b()},onError:function(d){c.O("failure",{data:a,src:g}),d=d||new Error("Raven send failed (no additional details provided)"),b&&b(d)}})}},$:function(a){function b(){200===c.status?a.onSuccess&&a.onSuccess():a.onError&&a.onError(new Error("Sentry error code: "+c.status))}var c=new XMLHttpRequest,d="withCredentials"in c||"undefined"!=typeof XDomainRequest;if(d){var e=a.url;"withCredentials"in c?c.onreadystatechange=function(){4===c.readyState&&b()}:(c=new XDomainRequest,e=e.replace(/^https?:/,""),c.onload=b),c.open("POST",e+"?"+q(a.auth)),c.send(y(a.data))}},v:function(a){this.n[a]&&this.debug&&Function.prototype.apply.call(this.n[a],this.m,[].slice.call(arguments,1))},N:function(a,b){f(b)?delete this.h[a]:this.h[a]=m(this.h[a]||{},b)}};var E=Object.prototype;e.prototype.setUser=e.prototype.setUserContext,e.prototype.setReleaseContext=e.prototype.setRelease,b.exports=e}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{1:1,2:2,3:3,6:6}],5:[function(a,b,c){(function(c){"use strict";var d=a(4),e="undefined"!=typeof window?window:"undefined"!=typeof c?c:"undefined"!=typeof self?self:{},f=e.Raven,g=new d;g.noConflict=function(){return e.Raven=f,g},g.afterLoad(),b.exports=g}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{4:4}],6:[function(a,b,c){(function(a){"use strict";function c(){return"undefined"==typeof document?"":document.location.href}var d={collectWindowErrors:!0,debug:!1},e="undefined"!=typeof window?window:"undefined"!=typeof a?a:"undefined"!=typeof self?self:{},f=[].slice,g="?",h=/^(?:Uncaught (?:exception: )?)?((?:Eval|Internal|Range|Reference|Syntax|Type|URI)Error): ?(.*)$/;d.report=function(){function a(a){l(),r.push(a)}function b(a){for(var b=r.length-1;b>=0;--b)r[b]===a&&r.splice(b,1)}function i(){m(),r=[]}function j(a,b){var c=null;if(!b||d.collectWindowErrors){for(var e in r)if(r.hasOwnProperty(e))try{r[e].apply(null,[a].concat(f.call(arguments,2)))}catch(g){c=g}if(c)throw c}}function k(a,b,e,f,i){var k=null;if(u)d.computeStackTrace.augmentStackTraceWithInitialElement(u,b,e,a),n();else if(i)k=d.computeStackTrace(i),j(k,!0);else{var l,m={url:b,line:e,column:f},o=void 0,q=a;if("[object String]"==={}.toString.call(a)){var l=a.match(h);l&&(o=l[1],q=l[2])}m.func=g,k={name:o,message:q,url:c(),stack:[m]},j(k,!0)}return!!p&&p.apply(this,arguments)}function l(){q||(p=e.onerror,e.onerror=k,q=!0)}function m(){q&&(e.onerror=p,q=!1,p=void 0)}function n(){var a=u,b=s;s=null,u=null,t=null,j.apply(null,[a,!1].concat(b))}function o(a,b){var c=f.call(arguments,1);if(u){if(t===a)return;n()}var e=d.computeStackTrace(a);if(u=e,t=a,s=c,setTimeout(function(){t===a&&n()},e.incomplete?2e3:0),b!==!1)throw a}var p,q,r=[],s=null,t=null,u=null;return o.subscribe=a,o.unsubscribe=b,o.uninstall=i,o}(),d.computeStackTrace=function(){function a(a){if("undefined"!=typeof a.stack&&a.stack){for(var b,d,e=/^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,f=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|\[native).*?)(?::(\d+))?(?::(\d+))?\s*$/i,h=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:file|ms-appx|https?|blob):.*?):(\d+)(?::(\d+))?\)?\s*$/i,i=a.stack.split("\n"),j=[],k=(/^(.*) is undefined$/.exec(a.message),0),l=i.length;k0&&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 e(a,h){for(var i,j,k=/function\s+([_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*)?\s*\(/i,l=[],m={},n=!1,o=e.caller;o&&!n;o=o.caller)if(o!==f&&o!==d.report){if(j={url:null,func:g,line:null,column:null},o.name?j.func=o.name:(i=k.exec(o.toString()))&&(j.func=i[1]),"undefined"==typeof j.func)try{j.func=i.input.substring(0,i.input.indexOf("{"))}catch(p){}m[""+o]?n=!0:m[""+o]=!0,l.push(j)}h&&l.splice(0,h);var q={name:a.name,message:a.message,url:c(),stack:l};return b(q,a.sourceURL||a.fileName,a.line||a.lineNumber,a.message||a.description),q}function f(b,f){var g=null;f=null==f?0:+f;try{if(g=a(b))return g}catch(h){if(d.debug)throw h}try{if(g=e(b,f+1))return g}catch(h){if(d.debug)throw h}return{name:b.name,message:b.message,url:c()}}return f.augmentStackTraceWithInitialElement=b,f.computeStackTraceFromStackProp=a,f}(),b.exports=d}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[5])(5)}); +/*! Raven.js 3.9.1 (79bc1ae) | github.com/getsentry/raven-js */ +!function(a){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=a();else if("function"==typeof define&&define.amd)define([],a);else{var b;b="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,b.Raven=a()}}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g0){var g=c.indexOf(this);~g?c.splice(g+1):c.push(this),~g?d.splice(g,1/0,e):d.push(e),~c.indexOf(f)&&(f=b.call(this,e,f))}else c.push(f);return null==a?f:a.call(this,e,f)}}c=b.exports=d,c.getSerialize=e},{}],2:[function(a,b,c){"use strict";function d(a){this.name="RavenConfigError",this.message=a}d.prototype=new Error,d.prototype.constructor=d,b.exports=d},{}],3:[function(a,b,c){"use strict";var d=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),b=""+a.join(" "),g={level:f,logger:"console",extra:{arguments:a}};c&&c(b,g),d&&Function.prototype.apply.call(d,e,a)}}};b.exports={wrapMethod:d}},{}],4:[function(a,b,c){(function(c){"use strict";function d(){return+new Date}function e(){this.a=!("object"!=typeof JSON||!JSON.stringify),this.b=!f(D),this.c=null,this.d=null,this.e=null,this.f=null,this.g=null,this.h={},this.i={logger:"javascript",ignoreErrors:[],ignoreUrls:[],whitelistUrls:[],includePaths:[],crossOrigin:"anonymous",collectWindowErrors:!0,maxMessageLength:0,stackTraceLimit:50,autoBreadcrumbs:!0},this.j=0,this.k=!1,this.l=Error.stackTraceLimit,this.m=C.console||{},this.n={},this.o=[],this.p=d(),this.q=[],this.r=[],this.s=null,this.t=C.location,this.u=this.t&&this.t.href;for(var a in this.m)this.n[a]=this.m[a]}function f(a){return void 0===a}function g(a){return"function"==typeof a}function h(a){return"[object String]"===E.toString.call(a)}function i(a){return"object"==typeof a&&null!==a}function j(a){for(var b in a)return!1;return!0}function k(a){var b=E.toString.call(a);return i(a)&&"[object Error]"===b||"[object Exception]"===b||a instanceof Error}function l(a,b){var c,d;if(f(a.length))for(c in a)o(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 u(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&&h(b))for(c=b.split(" "),f=0;fthis.i.maxBreadcrumbs&&this.r.shift(),this},addPlugin:function(a){var b=[].slice.call(arguments,1);return this.o.push([a,b]),this.k&&this.z(),this},setUserContext:function(a){return this.h.user=a,this},setContextsInterface:function(a){return this.h.contexts=a,this},setExtraContext:function(a){return this.N("extra",a),this},setTagsContext:function(a){return this.N("tags",a),this},clearContext:function(){return this.h={},this},getContext:function(){return JSON.parse(y(this.h))},setEnvironment:function(a){return this.i.environment=a,this},setRelease:function(a){return this.i.release=a,this},setDataCallback:function(a){var b=this.i.dataCallback;return this.i.dataCallback=g(a)?function(c){return a(c,b)}:a,this},setBreadcrumbCallback:function(a){var b=this.i.breadcrumbCallback;return this.i.breadcrumbCallback=g(a)?function(c){return a(c,b)}:a,this},setShouldSendCallback:function(a){var b=this.i.shouldSendCallback;return this.i.shouldSendCallback=g(a)?function(c){return a(c,b)}:a,this},setTransport:function(a){return this.i.transport=a,this},lastException:function(){return this.c},lastEventId:function(){return this.d},isSetup:function(){return!!this.a&&(!!this.e||(this.ravenNotConfiguredError||(this.ravenNotConfiguredError=!0,this.v("error","Error: Raven has not been configured.")),!1))},afterLoad:function(){var a=C.RavenConfig;a&&this.config(a.dsn,a.config).install()},showReportDialog:function(a){if(D){a=a||{};var b=a.eventId||this.lastEventId();if(!b)throw new x("Missing eventId");var c=a.dsn||this.B;if(!c)throw new x("Missing DSN");var d=encodeURIComponent,e="";e+="?eventId="+d(b),e+="&dsn="+d(c);var f=a.user||this.h.user;f&&(f.name&&(e+="&name="+d(f.name)),f.email&&(e+="&email="+d(f.email)));var g=this.D(this.A(c)),h=D.createElement("script");h.async=!0,h.src=g+"/api/embed/error-page/"+e,(D.head||D.body).appendChild(h)}},F:function(){var a=this;this.j+=1,setTimeout(function(){a.j-=1})},O:function(a,b){var c,d;if(this.b){b=b||{},a="raven"+a.substr(0,1).toUpperCase()+a.substr(1),D.createEvent?(c=D.createEvent("HTMLEvents"),c.initEvent(a,!0,!0)):(c=D.createEventObject(),c.eventType=a);for(d in b)o(b,d)&&(c[d]=b[d]);if(D.createEvent)D.dispatchEvent(c);else try{D.fireEvent("on"+c.eventType.toLowerCase(),c)}catch(e){}}},P:function(a){var b=this;return function(c){if(b.Q=null,b.s!==c){b.s=c;var d,e=c.target;try{d=t(e)}catch(f){d=""}b.captureBreadcrumb({category:"ui."+a,message:d})}}},R:function(){var a=this,b=1e3;return function(c){var d=c.target,e=d&&d.tagName;if(e&&("INPUT"===e||"TEXTAREA"===e||d.isContentEditable)){var f=a.Q;f||a.P("input")(c),clearTimeout(f),a.Q=setTimeout(function(){a.Q=null},b)}}},S:function(a,b){var c=r(this.t.href),d=r(b),e=r(a);this.u=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}})},x: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.S(b.u,c+""),a.apply(this,arguments)}},d)}if(c.console&&"console"in C&&console.log){var m=function(a,c){b.captureBreadcrumb({message:a,level:c.level,category:"console"})};l(["debug","info","warn","error","log"],function(a,b){z(console,b,m)})}},J:function(){for(var a;this.q.length;){a=this.q.shift();var b=a[0],c=a[1],d=a[2];b[c]=d}},z:function(){var a=this;l(this.o,function(b,c){var d=c[0],e=c[1];d.apply(a,[a].concat(e))})},A:function(a){var b=B.exec(a),c={},d=7;try{for(;d--;)c[A[d]]=b[d]||""}catch(e){throw new x("Invalid DSN: "+a)}if(c.pass&&!this.i.allowSecretKey)throw new x("Do not specify your secret key in the DSN. See: http://bit.ly/raven-secret-key");return c},D:function(a){var b="//"+a.host+(a.port?":"+a.port:"");return a.protocol&&(b=a.protocol+":"+b),b},w:function(){this.j||this.K.apply(this,arguments)},K:function(a,b){var c=this.L(a,b);this.O("handle",{stackInfo:a,options:b}),this.U(a.name,a.message,a.url,a.lineno,c,b)},L:function(a,b){var c=this,d=[];if(a.stack&&a.stack.length&&(l(a.stack,function(a,b){var e=c.V(b);e&&d.push(e)}),b&&b.trimHeadFrames))for(var e=0;e0&&(a.breadcrumbs={values:[].slice.call(this.r,0)}),j(a.tags)&&delete a.tags,this.h.user&&(a.user=this.h.user),this.h.contexts&&(a.contexts=this.h.contexts),b.environment&&(a.environment=b.environment),b.release&&(a.release=b.release),b.serverName&&(a.server_name=b.serverName),g(b.dataCallback)&&(a=b.dataCallback(a)||a),a&&!j(a)&&(g(b.shouldSendCallback)&&!b.shouldSendCallback(a)||this.Y(a))},Z:function(){return s()},Y:function(a,b){var c=this,d=this.i;if(this.d=a.event_id||(a.event_id=this.Z()),a=this.W(a),this.v("debug","Raven about to send:",a),this.isSetup()){var e={sentry_version:"7",sentry_client:"raven-js/"+this.VERSION,sentry_key:this.f};this.C&&(e.sentry_secret=this.C);var f=a.exception&&a.exception.values[0];this.captureBreadcrumb({category:"sentry",message:f?(f.type?f.type+": ":"")+f.value:a.message,event_id:a.event_id,level:a.level||"error"});var g=this.E;(d.transport||this.$).call(this,{url:g,auth:e,data:a,options:d,onSuccess:function(){c.O("success",{data:a,src:g}),b&&b()},onError:function(d){c.O("failure",{data:a,src:g}),d=d||new Error("Raven send failed (no additional details provided)"),b&&b(d)}})}},$:function(a){function b(){200===c.status?a.onSuccess&&a.onSuccess():a.onError&&a.onError(new Error("Sentry error code: "+c.status))}var c=new XMLHttpRequest,d="withCredentials"in c||"undefined"!=typeof XDomainRequest;if(d){var e=a.url;"withCredentials"in c?c.onreadystatechange=function(){4===c.readyState&&b()}:(c=new XDomainRequest,e=e.replace(/^https?:/,""),c.onload=b),c.open("POST",e+"?"+q(a.auth)),c.send(y(a.data))}},v:function(a){this.n[a]&&this.debug&&Function.prototype.apply.call(this.n[a],this.m,[].slice.call(arguments,1))},N:function(a,b){f(b)?delete this.h[a]:this.h[a]=m(this.h[a]||{},b)}};var E=Object.prototype;e.prototype.setUser=e.prototype.setUserContext,e.prototype.setReleaseContext=e.prototype.setRelease,b.exports=e}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{1:1,2:2,3:3,6:6}],5:[function(a,b,c){(function(c){"use strict";var d=a(4),e="undefined"!=typeof window?window:"undefined"!=typeof c?c:"undefined"!=typeof self?self:{},f=e.Raven,g=new d;g.noConflict=function(){return e.Raven=f,g},g.afterLoad(),b.exports=g}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{4:4}],6:[function(a,b,c){(function(a){"use strict";function c(){return"undefined"==typeof document?"":document.location.href}var d={collectWindowErrors:!0,debug:!1},e="undefined"!=typeof window?window:"undefined"!=typeof a?a:"undefined"!=typeof self?self:{},f=[].slice,g="?",h=/^(?:Uncaught (?:exception: )?)?((?:Eval|Internal|Range|Reference|Syntax|Type|URI)Error): ?(.*)$/;d.report=function(){function a(a){l(),r.push(a)}function b(a){for(var b=r.length-1;b>=0;--b)r[b]===a&&r.splice(b,1)}function i(){m(),r=[]}function j(a,b){var c=null;if(!b||d.collectWindowErrors){for(var e in r)if(r.hasOwnProperty(e))try{r[e].apply(null,[a].concat(f.call(arguments,2)))}catch(g){c=g}if(c)throw c}}function k(a,b,e,f,i){var k=null;if(u)d.computeStackTrace.augmentStackTraceWithInitialElement(u,b,e,a),n();else if(i)k=d.computeStackTrace(i),j(k,!0);else{var l,m={url:b,line:e,column:f},o=void 0,q=a;if("[object String]"==={}.toString.call(a)){var l=a.match(h);l&&(o=l[1],q=l[2])}m.func=g,k={name:o,message:q,url:c(),stack:[m]},j(k,!0)}return!!p&&p.apply(this,arguments)}function l(){q||(p=e.onerror,e.onerror=k,q=!0)}function m(){q&&(e.onerror=p,q=!1,p=void 0)}function n(){var a=u,b=s;s=null,u=null,t=null,j.apply(null,[a,!1].concat(b))}function o(a,b){var c=f.call(arguments,1);if(u){if(t===a)return;n()}var e=d.computeStackTrace(a);if(u=e,t=a,s=c,setTimeout(function(){t===a&&n()},e.incomplete?2e3:0),b!==!1)throw a}var p,q,r=[],s=null,t=null,u=null;return o.subscribe=a,o.unsubscribe=b,o.uninstall=i,o}(),d.computeStackTrace=function(){function a(a){if("undefined"!=typeof a.stack&&a.stack){for(var b,d,e=/^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,f=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|\[native).*?)(?::(\d+))?(?::(\d+))?\s*$/i,h=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:file|ms-appx|https?|blob):.*?):(\d+)(?::(\d+))?\)?\s*$/i,i=a.stack.split("\n"),j=[],k=(/^(.*) is undefined$/.exec(a.message),0),l=i.length;k0&&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 e(a,h){for(var i,j,k=/function\s+([_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*)?\s*\(/i,l=[],m={},n=!1,o=e.caller;o&&!n;o=o.caller)if(o!==f&&o!==d.report){if(j={url:null,func:g,line:null,column:null},o.name?j.func=o.name:(i=k.exec(o.toString()))&&(j.func=i[1]),"undefined"==typeof j.func)try{j.func=i.input.substring(0,i.input.indexOf("{"))}catch(p){}m[""+o]?n=!0:m[""+o]=!0,l.push(j)}h&&l.splice(0,h);var q={name:a.name,message:a.message,url:c(),stack:l};return b(q,a.sourceURL||a.fileName,a.line||a.lineNumber,a.message||a.description),q}function f(b,f){var g=null;f=null==f?0:+f;try{if(g=a(b))return g}catch(h){if(d.debug)throw h}try{if(g=e(b,f+1))return g}catch(h){if(d.debug)throw h}return{name:b.name,message:b.message,url:c()}}return f.augmentStackTraceWithInitialElement=b,f.computeStackTraceFromStackProp=a,f}(),b.exports=d}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[5])(5)}); //# sourceMappingURL=raven.min.js.map \ No newline at end of file diff --git a/dist/raven.min.js.map b/dist/raven.min.js.map index 78bdf09c36a2..8913d086d184 100644 --- a/dist/raven.min.js.map +++ b/dist/raven.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["raven.js"],"names":["f","exports","module","define","amd","g","window","global","self","this","Raven","e","t","n","r","s","o","u","a","require","i","Error","code","l","call","length","1","_dereq_","stringify","obj","replacer","spaces","cycleReplacer","JSON","serializer","stack","keys","key","value","slice","indexOf","join","thisPos","splice","push","Infinity","getSerialize","2","RavenConfigError","message","name","prototype","constructor","3","wrapMethod","console","level","callback","originalConsoleLevel","originalConsole","sentryLevel","args","arguments","msg","data","logger","extra","Function","apply","4","now","Date","_hasJSON","_hasDocument","isUndefined","_document","_lastCapturedException","_lastEventId","_globalServer","_globalKey","_globalProject","_globalContext","_globalOptions","ignoreErrors","ignoreUrls","whitelistUrls","includePaths","crossOrigin","collectWindowErrors","maxMessageLength","stackTraceLimit","autoBreadcrumbs","_ignoreOnError","_isRavenInstalled","_originalErrorStackTraceLimit","_originalConsole","_window","_originalConsoleMethods","_plugins","_startTime","_wrappedBuiltIns","_breadcrumbs","_lastCapturedEvent","_location","location","_lastHref","href","method","what","isFunction","isString","objectPrototype","toString","isObject","isEmptyObject","_","isError","each","j","hasKey","objectMerge","obj1","obj2","truncate","str","max","substr","object","hasOwnProperty","joinRegExp","patterns","pattern","sources","len","replace","source","RegExp","urlencode","pairs","encodeURIComponent","parseUrl","url","match","query","fragment","protocol","host","path","relative","uuid4","crypto","msCrypto","getRandomValues","arr","Uint16Array","pad","num","v","c","Math","random","htmlTreeAsString","elem","nextStr","MAX_TRAVERSE_HEIGHT","MAX_OUTPUT_LEN","out","height","separator","sepLength","htmlElementAsString","parentNode","reverse","className","classes","attr","tagName","toLowerCase","id","split","attrWhitelist","getAttribute","fill","replacement","track","orig","TraceKit","wrapConsoleMethod","dsnKeys","dsnPattern","document","VERSION","debug","config","dsn","options","_logDebug","globalOptions","setDSN","maxBreadcrumbs","min","autoBreadcrumbDefaults","xhr","dom","install","isSetup","report","subscribe","_handleOnErrorStackInfo","_instrumentTryCatch","_instrumentBreadcrumbs","_drainPlugins","uri","_parseDSN","lastSlash","lastIndexOf","_dsn","user","_globalSecret","pass","_getGlobalServer","_globalEndpoint","context","func","undefined","wrap","_before","wrapped","deep","_ignoreNextOnError","captureException","__raven__","__raven_wrapper__","property","__inner__","uninstall","_restoreBuiltIns","ex","captureMessage","trimHeadFrames","stacktrace","computeStackTrace","_handleStackInfo","ex1","test","fingerprint","frames","_prepareFrames","_send","captureBreadcrumb","crumb","timestamp","breadcrumbCallback","result","shift","addPlugin","plugin","pluginArgs","setUserContext","setExtraContext","_mergeContext","setTagsContext","tags","clearContext","getContext","parse","setEnvironment","environment","setRelease","release","setDataCallback","original","dataCallback","setBreadcrumbCallback","setShouldSendCallback","shouldSendCallback","setTransport","transport","lastException","lastEventId","ravenNotConfiguredError","afterLoad","RavenConfig","showReportDialog","eventId","encode","qs","email","globalServer","script","createElement","async","src","head","body","appendChild","F","setTimeout","O","eventType","evt","toUpperCase","createEvent","initEvent","createEventObject","dispatchEvent","fireEvent","P","evtName","_keypressTimeout","target","category","R","debounceDuration","isContentEditable","timeout","_breadcrumbEventHandler","clearTimeout","S","from","to","parsedLoc","parsedTo","parsedFrom","x","wrapTimeFn","fn","Array","originalCallback","wrapEventTarget","proto","capture","secure","handleEvent","err","before","clickHandler","keypressHandler","_keypressEventHandler","type","wrappedBuiltIns","requestAnimationFrame","cb","eventTargets","$","jQuery","ready","y","wrapProp","prop","xhrproto","XMLHttpRequest","origOpen","__raven_xhr","status_code","origSend","onreadystatechangeHandler","readyState","status","props","onreadystatechange","origFetch","fetchData","then","response","addEventListener","attachEvent","chrome","isChromePackagedApp","app","runtime","hasPushState","history","pushState","oldOnPopState","onpopstate","currentHref","_captureUrlChange","origPushState","log","consoleMethodCallback","J","builtin","z","installer","concat","A","m","exec","allowSecretKey","D","port","w","K","stackInfo","_triggerEvent","_processException","lineno","L","frame","_normalizeFrame","in_app","V","normalized","filename","line","colno","column","function","U","fileurl","exception","values","culprit","W","X","httpData","headers","User-Agent","navigator","userAgent","referrer","Referer","M","baseData","project","platform","_getHttpData","request","breadcrumbs","serverName","server_name","_sendProcessedPayload","Z","Y","event_id","_getUuid","_trimPacket","auth","sentry_version","sentry_client","sentry_key","sentry_secret","_makeRequest","onSuccess","onError","error","opts","handler","hasCORS","XDomainRequest","onload","open","send","N","Object","setUser","setReleaseContext","6","5","RavenConstructor","_Raven","noConflict","getLocationHref","_slice","UNKNOWN_FUNCTION","ERROR_TYPES_RE","installGlobalHandler","handlers","unsubscribe","unsubscribeAll","uninstallGlobalHandler","notifyHandlers","isWindowError","inner","traceKitWindowOnError","lineNo","colNo","lastExceptionStack","augmentStackTraceWithInitialElement","processLastException","groups","_oldOnerrorHandler","_onErrorHandlerInstalled","onerror","_lastExceptionStack","_lastArgs","lastArgs","rethrow","incomplete","computeStackTraceFromStackProp","parts","element","gecko","winjs","lines","isNative","columnNumber","initial","unshift","partial","computeStackTraceByWalkingCallerChain","depth","item","functionName","funcs","recursion","curr","caller","input","substring","sourceURL","fileName","lineNumber","description"],"mappings":";CAYA,SAAUA,GAAG,GAAoB,gBAAVC,UAAoC,mBAATC,QAAsBA,OAAOD,QAAQD,QAAS,IAAmB,kBAATG,SAAqBA,OAAOC,IAAKD,UAAUH,OAAO,CAAC,GAAIK,EAAkCA,GAAb,mBAATC,QAAwBA,OAA+B,mBAATC,QAAwBA,OAA6B,mBAAPC,MAAsBA,KAAYC,KAAKJ,EAAEK,MAAQV,MAAO,WAAqC,MAAO,SAAUW,GAAEC,EAAEC,EAAEC,GAAG,QAASC,GAAEC,EAAEC,GAAG,IAAIJ,EAAEG,GAAG,CAAC,IAAIJ,EAAEI,GAAG,CAAC,GAAIE,GAAkB,kBAATC,UAAqBA,OAAQ,KAAIF,GAAGC,EAAE,MAAOA,GAAEF,GAAE,EAAI,IAAGI,EAAE,MAAOA,GAAEJ,GAAE,EAAI,IAAIhB,GAAE,GAAIqB,OAAM,uBAAuBL,EAAE,IAAK,MAAMhB,GAAEsB,KAAK,mBAAmBtB,EAAE,GAAIuB,GAAEV,EAAEG,IAAIf,WAAYW,GAAEI,GAAG,GAAGQ,KAAKD,EAAEtB,QAAQ,SAASU,GAAG,GAAIE,GAAED,EAAEI,GAAG,GAAGL,EAAG,OAAOI,GAAEF,EAAEA,EAAEF,IAAIY,EAAEA,EAAEtB,QAAQU,EAAEC,EAAEC,EAAEC,GAAG,MAAOD,GAAEG,GAAGf,QAAkD,IAAI,GAA1CmB,GAAkB,kBAATD,UAAqBA,QAAgBH,EAAE,EAAEA,EAAEF,EAAEW,OAAOT,IAAID,EAAED,EAAEE,GAAI,OAAOD,KAAKW,GAAG,SAASC,EAAQzB,EAAOD,GAIp0B,QAAS2B,GAAUC,EAAKC,EAAUC,EAAQC,GACxC,MAAOC,MAAKL,UAAUC,EAAKK,EAAWJ,EAAUE,GAAgBD,GAGlE,QAASG,GAAWJ,EAAUE,GAC5B,GAAIG,MAAYC,IAOhB,OALqB,OAAjBJ,IAAuBA,EAAgB,SAASK,EAAKC,GACvD,MAAIH,GAAM,KAAOG,EAAc,eACxB,eAAiBF,EAAKG,MAAM,EAAGJ,EAAMK,QAAQF,IAAQG,KAAK,KAAO,MAGnE,SAASJ,EAAKC,GACnB,GAAIH,EAAMV,OAAS,EAAG,CACpB,GAAIiB,GAAUP,EAAMK,QAAQ/B,OAC3BiC,EAAUP,EAAMQ,OAAOD,EAAU,GAAKP,EAAMS,KAAKnC,OACjDiC,EAAUN,EAAKO,OAAOD,EAASG,EAAAA,EAAUR,GAAOD,EAAKQ,KAAKP,IACtDF,EAAMK,QAAQF,KAAQA,EAAQN,EAAcR,KAAKf,KAAM4B,EAAKC,QAE9DH,GAAMS,KAAKN,EAEhB,OAAmB,OAAZR,EAAmBQ,EAAQR,EAASN,KAAKf,KAAM4B,EAAKC,IAxB/DrC,EAAUC,EAAOD,QAAU2B,EAC3B3B,EAAQ6C,aAAeZ,OA2BjBa,GAAG,SAASpB,EAAQzB,EAAOD,GACjC,YAEA,SAAS+C,GAAiBC,GACtBxC,KAAKyC,KAAO,mBACZzC,KAAKwC,QAAUA,EAEnBD,EAAiBG,UAAY,GAAI9B,OACjC2B,EAAiBG,UAAUC,YAAcJ,EAEzC9C,EAAOD,QAAU+C,OAEXK,GAAG,SAAS1B,EAAQzB,EAAOD,GACjC,YAEA,IAAIqD,GAAa,SAASC,EAASC,EAAOC,GACtC,GAAIC,GAAuBH,EAAQC,GAC/BG,EAAkBJ,CAEtB,IAAMC,IAASD,GAAf,CAIA,GAAIK,GAAwB,SAAVJ,EACZ,UACAA,CAEND,GAAQC,GAAS,WACb,GAAIK,MAAUtB,MAAMf,KAAKsC,WAErBC,EAAM,GAAKF,EAAKpB,KAAK,KACrBuB,GAAQR,MAAOI,EAAaK,OAAQ,UAAWC,OAAQJ,UAAaD,GACxEJ,IAAYA,EAASM,EAAKC,GAGtBN,GAGAS,SAAShB,UAAUiB,MAAM5C,KACrBkC,EACAC,EACAE,KAMhB3D,GAAOD,SACHqD,WAAYA,QAGVe,GAAG,SAAS1C,EAAQzB,EAAOD,IACjC,SAAWM,GAEX,YAWA,SAAS+D,KACL,OAAQ,GAAIC,MAahB,QAAS7D,KACLD,KAAK+D,IAA8B,gBAATvC,QAAqBA,KAAKL,WAEpDnB,KAAKgE,GAAgBC,EAAYC,GACjClE,KAAKmE,EAAyB,KAC9BnE,KAAKoE,EAAe,KACpBpE,KAAKqE,EAAgB,KACrBrE,KAAKsE,EAAa,KAClBtE,KAAKuE,EAAiB,KACtBvE,KAAKwE,KACLxE,KAAKyE,GACDjB,OAAQ,aACRkB,gBACAC,cACAC,iBACAC,gBACAC,YAAa,YACbC,qBAAqB,EACrBC,iBAAkB,EAClBC,gBAAiB,GACjBC,iBAAiB,GAErBlF,KAAKmF,EAAiB,EACtBnF,KAAKoF,GAAoB,EACzBpF,KAAKqF,EAAgCzE,MAAMqE,gBAG3CjF,KAAKsF,EAAmBC,EAAQzC,YAChC9C,KAAKwF,KACLxF,KAAKyF,KACLzF,KAAK0F,EAAa7B,IAClB7D,KAAK2F,KACL3F,KAAK4F,KACL5F,KAAK6F,EAAqB,KAE1B7F,KAAK8F,EAAYP,EAAQQ,SACzB/F,KAAKgG,EAAYhG,KAAK8F,GAAa9F,KAAK8F,EAAUG,IAElD,KAAK,GAAIC,KAAUlG,MAAKsF,EACtBtF,KAAKwF,EAAwBU,GAAUlG,KAAKsF,EAAiBY,GAo7CnE,QAASjC,GAAYkC,GACjB,MAAgB,UAATA,EAGX,QAASC,GAAWD,GAChB,MAAuB,kBAATA,GAGlB,QAASE,GAASF,GACd,MAA+C,oBAAxCG,EAAgBC,SAASxF,KAAKoF,GAGzC,QAASK,GAASL,GACd,MAAuB,gBAATA,IAA8B,OAATA,EAGvC,QAASM,GAAcN,GACnB,IAAK,GAAIO,KAAKP,GAAM,OAAO,CAC3B,QAAO,EAKX,QAASQ,GAAQR,GACb,GAAII,GAAWD,EAAgBC,SAASxF,KAAKoF,EAC7C,OAAOK,GAASL,IACC,mBAAbI,GACa,uBAAbA,GACAJ,YAAgBvF,OAGxB,QAASgG,GAAKxF,EAAK4B,GACf,GAAIrC,GAAGkG,CAEP,IAAI5C,EAAY7C,EAAIJ,QAChB,IAAKL,IAAKS,GACF0F,EAAO1F,EAAKT,IACZqC,EAASjC,KAAK,KAAMJ,EAAGS,EAAIT,QAKnC,IADAkG,EAAIzF,EAAIJ,OAEJ,IAAKL,EAAI,EAAGA,EAAIkG,EAAGlG,IACfqC,EAASjC,KAAK,KAAMJ,EAAGS,EAAIT,IAM3C,QAASoG,GAAYC,EAAMC,GACvB,MAAKA,IAGLL,EAAKK,EAAM,SAASrF,EAAKC,GACrBmF,EAAKpF,GAAOC,IAETmF,GALIA,EAQf,QAASE,GAASC,EAAKC,GACnB,OAAQA,GAAOD,EAAInG,QAAUoG,EAAMD,EAAMA,EAAIE,OAAO,EAAGD,GAAO,IAUlE,QAASN,GAAOQ,EAAQ1F,GACpB,MAAO0E,GAAgBiB,eAAexG,KAAKuG,EAAQ1F,GAGvD,QAAS4F,GAAWC,GAOhB,IAJA,GAEIC,GAFAC,KACAhH,EAAI,EAAGiH,EAAMH,EAASzG,OAGnBL,EAAIiH,EAAKjH,IACZ+G,EAAUD,EAAS9G,GACf0F,EAASqB,GAGTC,EAAQxF,KAAKuF,EAAQG,QAAQ,8BAA+B,SACrDH,GAAWA,EAAQI,QAE1BH,EAAQxF,KAAKuF,EAAQI,OAI7B,OAAO,IAAIC,QAAOJ,EAAQ3F,KAAK,KAAM,KAGzC,QAASgG,GAAUzH,GACf,GAAI0H,KAIJ,OAHArB,GAAKrG,EAAG,SAASqB,EAAKC,GAClBoG,EAAM9F,KAAK+F,mBAAmBtG,GAAO,IAAMsG,mBAAmBrG,MAE3DoG,EAAMjG,KAAK,KAMtB,QAASmG,GAASC,GACd,GAAIC,GAAQD,EAAIC,MAAM,iEACtB,KAAKA,EAAO,QAGZ,IAAIC,GAAQD,EAAM,IAAM,GACpBE,EAAWF,EAAM,IAAM,EAC3B,QACIG,SAAUH,EAAM,GAChBI,KAAMJ,EAAM,GACZK,KAAML,EAAM,GACZM,SAAUN,EAAM,GAAKC,EAAQC,GAGrC,QAASK,KACL,GAAIC,GAAStD,EAAQsD,QAAUtD,EAAQuD,QAEvC,KAAK7E,EAAY4E,IAAWA,EAAOE,gBAAiB,CAEhD,GAAIC,GAAM,GAAIC,aAAY,EAC1BJ,GAAOE,gBAAgBC,GAGvBA,EAAI,GAAc,KAATA,EAAI,GAAa,MAE1BA,EAAI,GAAc,MAATA,EAAI,GAAc,KAE3B,IAAIE,GAAM,SAASC,GAEf,IADA,GAAIC,GAAID,EAAI5C,SAAS,IACd6C,EAAEpI,OAAS,GACdoI,EAAI,IAAMA,CAEd,OAAOA,GAGX,OAAOF,GAAIF,EAAI,IAAME,EAAIF,EAAI,IAAME,EAAIF,EAAI,IAAME,EAAIF,EAAI,IAAME,EAAIF,EAAI,IACvEE,EAAIF,EAAI,IAAME,EAAIF,EAAI,IAAME,EAAIF,EAAI,IAGpC,MAAO,mCAAmCnB,QAAQ,QAAS,SAASwB,GAChE,GAAIhJ,GAAkB,GAAdiJ,KAAKC,SAAY,EACrBH,EAAU,MAANC,EAAYhJ,EAAM,EAAFA,EAAM,CAC9B,OAAO+I,GAAE7C,SAAS,MAY9B,QAASiD,GAAiBC,GAWtB,IATA,GAOIC,GAPAC,EAAsB,EACtBC,EAAiB,GACjBC,KACAC,EAAS,EACTlC,EAAM,EACNmC,EAAY,MACZC,EAAYD,EAAU/I,OAGnByI,GAAQK,IAAWH,IAEtBD,EAAUO,EAAoBR,KAKd,SAAZC,GAAsBI,EAAS,GAAKlC,EAAOiC,EAAI7I,OAASgJ,EAAaN,EAAQ1I,QAAU4I,KAI3FC,EAAI1H,KAAKuH,GAET9B,GAAO8B,EAAQ1I,OACfyI,EAAOA,EAAKS,UAGhB,OAAOL,GAAIM,UAAUnI,KAAK+H,GAS9B,QAASE,GAAoBR,GACzB,GACIW,GACAC,EACAzI,EACA0I,EACA3J,EALAkJ,IAOJ,KAAKJ,IAASA,EAAKc,QACf,MAAO,EASX,IANAV,EAAI1H,KAAKsH,EAAKc,QAAQC,eAClBf,EAAKgB,IACLZ,EAAI1H,KAAK,IAAMsH,EAAKgB,IAGxBL,EAAYX,EAAKW,UACbA,GAAa/D,EAAS+D,GAEtB,IADAC,EAAUD,EAAUM,MAAM,KACrB/J,EAAI,EAAGA,EAAI0J,EAAQrJ,OAAQL,IAC5BkJ,EAAI1H,KAAK,IAAMkI,EAAQ1J,GAG/B,IAAIgK,IAAiB,OAAQ,OAAQ,QAAS,MAC9C,KAAKhK,EAAI,EAAGA,EAAIgK,EAAc3J,OAAQL,IAClCiB,EAAM+I,EAAchK,GACpB2J,EAAOb,EAAKmB,aAAahJ,GACrB0I,GACAT,EAAI1H,KAAK,IAAMP,EAAM,KAAO0I,EAAO,KAG3C,OAAOT,GAAI7H,KAAK,IAUpB,QAAS6I,GAAKzJ,EAAKqB,EAAMqI,EAAaC,GAClC,GAAIC,GAAO5J,EAAIqB,EACfrB,GAAIqB,GAAQqI,EAAYE,GACpBD,GACAA,EAAM5I,MAAMf,EAAKqB,EAAMuI,IAvuD/B,GAAIC,GAAW/J,EAAQ,GACnBqB,EAAmBrB,EAAQ,GAC3BC,EAAYD,EAAQ,GAEpBgK,EAAoBhK,EAAQ,GAAG2B,WAE/BsI,EAAU,2CAA2CT,MAAM,KAC3DU,EAAa,gEAOb7F,EAA4B,mBAAX1F,QAAyBA,OACd,mBAAXC,GAAyBA,EAChB,mBAATC,MAAuBA,QAExCmE,EAAYqB,EAAQ8F,QAsDxBpL,GAAMyC,WAKF4I,QAAS,QAETC,OAAO,EAEPN,SAAUA,EASVO,OAAQ,SAASC,EAAKC,GAClB,GAAI3L,GAAOC,IAEX,IAAID,EAAKsE,EAEL,MADIrE,MAAK2L,EAAU,QAAS,4CACrB5L,CAEX,KAAK0L,EAAK,MAAO1L,EAEjB,IAAI6L,GAAgB7L,EAAK0E,CAGrBiH,IACA9E,EAAK8E,EAAS,SAAS9J,EAAKC,GAEZ,SAARD,GAA0B,UAARA,GAA2B,SAARA,EACrC7B,EAAKyE,EAAe5C,GAAOC,EAE3B+J,EAAchK,GAAOC,IAKjC9B,EAAK8L,OAAOJ,GAIZG,EAAclH,aAAavC,KAAK,qBAChCyJ,EAAclH,aAAavC,KAAK,iDAGhCyJ,EAAclH,aAAe8C,EAAWoE,EAAclH,cACtDkH,EAAcjH,aAAaiH,EAAcjH,WAAW3D,QAASwG,EAAWoE,EAAcjH,YACtFiH,EAAchH,gBAAgBgH,EAAchH,cAAc5D,QAASwG,EAAWoE,EAAchH,eAC5FgH,EAAc/G,aAAe2C,EAAWoE,EAAc/G,cACtD+G,EAAcE,eAAiBxC,KAAKlC,IAAI,EAAGkC,KAAKyC,IAAIH,EAAcE,gBAAkB,IAAK,KAEzF,IAAIE,IACAC,KAAK,EACLnJ,SAAS,EACToJ,KAAK,EACLnG,UAAU,GAGVb,EAAkB0G,EAAc1G,eAWpC,OAV0C,uBAAnCqB,SAASxF,KAAKmE,GACjBA,EAAkB6B,EAAYiF,EAAwB9G,GAC/CA,KAAoB,IAC3BA,EAAkB8G,GAEtBJ,EAAc1G,gBAAkBA,EAEhC+F,EAASlG,sBAAwB6G,EAAc7G,oBAGxChF,GAWXoM,QAAS,WACL,GAAIpM,GAAOC,IAgBX,OAfID,GAAKqM,YAAcrM,EAAKqF,IACxB6F,EAASoB,OAAOC,UAAU,WACtBvM,EAAKwM,EAAwB5I,MAAM5D,EAAMsD,aAE7CtD,EAAKyM,IACDzM,EAAK0E,EAAeS,iBACpBnF,EAAK0M,IAGT1M,EAAK2M,IAEL3M,EAAKqF,GAAoB,GAG7BxE,MAAMqE,gBAAkBlF,EAAK0E,EAAeQ,gBACrCjF,MAQX6L,OAAQ,SAASJ,GACb,GAAI1L,GAAOC,KACP2M,EAAM5M,EAAK6M,EAAUnB,GACvBoB,EAAYF,EAAIjE,KAAKoE,YAAY,KACjCpE,EAAOiE,EAAIjE,KAAKrB,OAAO,EAAGwF,EAE5B9M,GAAKgN,EAAOtB,EACZ1L,EAAKuE,EAAaqI,EAAIK,KACtBjN,EAAKkN,EAAgBN,EAAIO,MAAQP,EAAIO,KAAK7F,OAAO,GACjDtH,EAAKwE,EAAiBoI,EAAIjE,KAAKrB,OAAOwF,EAAY,GAElD9M,EAAKsE,EAAgBtE,EAAKoN,EAAiBR,GAE3C5M,EAAKqN,EAAkBrN,EAAKsE,EACxB,IAAMqE,EAAO,OAAS3I,EAAKwE,EAAiB,WAWpD8I,QAAS,SAAS3B,EAAS4B,EAAMlK,GAO7B,MANIgD,GAAWsF,KACXtI,EAAOkK,MACPA,EAAO5B,EACPA,EAAU6B,QAGPvN,KAAKwN,KAAK9B,EAAS4B,GAAM3J,MAAM3D,KAAMoD,IAWhDoK,KAAM,SAAS9B,EAAS4B,EAAMG,GAqC1B,QAASC,KACL,GAAItK,MAAWzC,EAAI0C,UAAUrC,OACzB2M,GAAQjC,GAAWA,GAAWA,EAAQiC,QAAS,CAQnD,KANIF,GAAWrH,EAAWqH,IACtBA,EAAQ9J,MAAM3D,KAAMqD,WAKlB1C,KAAKyC,EAAKzC,GAAKgN,EAAO5N,EAAKyN,KAAK9B,EAASrI,UAAU1C,IAAM0C,UAAU1C,EAEzE,KACI,MAAO2M,GAAK3J,MAAM3D,KAAMoD,GAC1B,MAAMlD,GAGJ,KAFAH,GAAK6N,IACL7N,EAAK8N,iBAAiB3N,EAAGwL,GACnBxL,GArDd,GAAIH,GAAOC,IAGX,IAAIiE,EAAYqJ,KAAUlH,EAAWsF,GACjC,MAAOA,EAWX,IAPItF,EAAWsF,KACX4B,EAAO5B,EACPA,EAAU6B,SAKTnH,EAAWkH,GACZ,MAAOA,EAIX,KACI,GAAIA,EAAKQ,EACL,MAAOR,EAIX,IAAIA,EAAKS,EACL,MAAOT,GAAKS,EAElB,MAAO7N,GAIL,MAAOoN,GAyBX,IAAK,GAAIU,KAAYV,GACbxG,EAAOwG,EAAMU,KACbN,EAAQM,GAAYV,EAAKU,GAWjC,OARAN,GAAQhL,UAAY4K,EAAK5K,UAEzB4K,EAAKS,EAAoBL,EAGzBA,EAAQI,GAAY,EACpBJ,EAAQO,EAAYX,EAEbI,GAQXQ,UAAW,WAQP,MAPAjD,GAASoB,OAAO6B,YAEhBlO,KAAKmO,IAELvN,MAAMqE,gBAAkBjF,KAAKqF,EAC7BrF,KAAKoF,GAAoB,EAElBpF,MAUX6N,iBAAkB,SAASO,EAAI1C,GAE3B,IAAK/E,EAAQyH,GACT,MAAOpO,MAAKqO,eAAeD,EAAIrH,GAC3BuH,eAAgB,EAChBC,YAAY,GACb7C,GAIP1L,MAAKmE,EAAyBiK,CAO9B,KACI,GAAI1M,GAAQuJ,EAASuD,kBAAkBJ,EACvCpO,MAAKyO,EAAiB/M,EAAOgK,GAC/B,MAAMgD,GACJ,GAAGN,IAAOM,EACN,KAAMA,GAId,MAAO1O,OAUXqO,eAAgB,SAAS/K,EAAKoI,GAI1B,IAAM1L,KAAKyE,EAAeC,aAAaiK,OAAQ3O,KAAKyE,EAAeC,aAAaiK,KAAKrL,GAArF,CAIAoI,EAAUA,KAEV,IAAInI,GAAOwD,GACPvE,QAASc,EAAM,IAChBoI,EAEH,IAAI1L,KAAKyE,EAAe8J,YAAe7C,GAAWA,EAAQ6C,WAAa,CACnE,GAAIH,EAIJ,KACI,KAAM,IAAIxN,OAAM0C,GAClB,MAAOoL,GACLN,EAAKM,EAITN,EAAG3L,KAAO,KAEViJ,EAAU3E,GAGN6H,YAAatL,EACbgL,gBAAiB5C,EAAQ4C,gBAAkB,GAAK,GACjD5C,EAEH,IAAIhK,GAAQuJ,EAASuD,kBAAkBJ,GACnCS,EAAS7O,KAAK8O,EAAepN,EAAOgK,EACxCnI,GAAKgL,YAEDM,OAAQA,EAAO1E,WAOvB,MAFAnK,MAAK+O,EAAMxL,GAEJvD,OAGXgP,kBAAmB,SAAU5N,GACzB,GAAI6N,GAAQlI,GACRmI,UAAWrL,IAAQ,KACpBzC,EAEH,IAAIgF,EAAWpG,KAAKyE,EAAe0K,oBAAqB,CACpD,GAAIC,GAASpP,KAAKyE,EAAe0K,mBAAmBF,EAEpD,IAAIzI,EAAS4I,KAAY3I,EAAc2I,GACnCH,EAAQG,MACL,IAAIA,KAAW,EAClB,MAAOpP,MAQf,MAJAA,MAAK4F,EAAazD,KAAK8M,GACnBjP,KAAK4F,EAAa5E,OAAShB,KAAKyE,EAAeqH,gBAC/C9L,KAAK4F,EAAayJ,QAEfrP,MAGXsP,UAAW,SAASC,GAChB,GAAIC,MAAgB1N,MAAMf,KAAKsC,UAAW,EAO1C,OALArD,MAAKyF,EAAStD,MAAMoN,EAAQC,IACxBxP,KAAKoF,GACLpF,KAAK0M,IAGF1M,MASXyP,eAAgB,SAASzC,GAIrB,MAFAhN,MAAKwE,EAAewI,KAAOA,EAEpBhN,MASX0P,gBAAiB,SAASjM,GAGtB,MAFAzD,MAAK2P,EAAc,QAASlM,GAErBzD,MASX4P,eAAgB,SAASC,GAGrB,MAFA7P,MAAK2P,EAAc,OAAQE,GAEpB7P,MAQX8P,aAAc,WAGV,MAFA9P,MAAKwE,KAEExE,MAQX+P,WAAY,WAER,MAAOvO,MAAKwO,MAAM7O,EAAUnB,KAAKwE,KAUrCyL,eAAgB,SAASC,GAGrB,MAFAlQ,MAAKyE,EAAeyL,YAAcA,EAE3BlQ,MASXmQ,WAAY,SAASC,GAGjB,MAFApQ,MAAKyE,EAAe2L,QAAUA,EAEvBpQ,MAUXqQ,gBAAiB,SAASrN,GACtB,GAAIsN,GAAWtQ,KAAKyE,EAAe8L,YAKnC,OAJAvQ,MAAKyE,EAAe8L,aAAenK,EAAWpD,GAC1C,SAAUO,GAAQ,MAAOP,GAASO,EAAM+M,IACxCtN,EAEGhD,MAUXwQ,sBAAuB,SAASxN,GAC5B,GAAIsN,GAAWtQ,KAAKyE,EAAe0K,kBAKnC,OAJAnP,MAAKyE,EAAe0K,mBAAqB/I,EAAWpD,GAChD,SAAUO,GAAQ,MAAOP,GAASO,EAAM+M,IACxCtN,EAEGhD,MAUXyQ,sBAAuB,SAASzN,GAC5B,GAAIsN,GAAWtQ,KAAKyE,EAAeiM,kBAKnC,OAJA1Q,MAAKyE,EAAeiM,mBAAqBtK,EAAWpD,GAC9C,SAAUO,GAAQ,MAAOP,GAASO,EAAM+M,IACxCtN,EAEChD,MAYX2Q,aAAc,SAASC,GAGnB,MAFA5Q,MAAKyE,EAAemM,UAAYA,EAEzB5Q,MAQX6Q,cAAe,WACX,MAAO7Q,MAAKmE,GAQhB2M,YAAa,WACT,MAAO9Q,MAAKoE,GAQhBgI,QAAS,WACL,QAAKpM,KAAK+D,MACL/D,KAAKqE,IACDrE,KAAK+Q,0BACR/Q,KAAK+Q,yBAA0B,EAC/B/Q,KAAK2L,EAAU,QAAS,2CAEnB,KAKfqF,UAAW,WAIP,GAAIC,GAAc1L,EAAQ0L,WACtBA,IACAjR,KAAKwL,OAAOyF,EAAYxF,IAAKwF,EAAYzF,QAAQW,WAIzD+E,iBAAkB,SAAUxF,GACxB,GAAKxH,EAAL,CAGAwH,EAAUA,KAEV,IAAIoF,GAAcpF,EAAQyF,SAAWnR,KAAK8Q,aAC1C,KAAKA,EACD,KAAM,IAAIvO,GAAiB,kBAG/B,IAAIkJ,GAAMC,EAAQD,KAAOzL,KAAK+M,CAC9B,KAAKtB,EACD,KAAM,IAAIlJ,GAAiB,cAG/B,IAAI6O,GAASlJ,mBACTmJ,EAAK,EACTA,IAAM,YAAcD,EAAON,GAC3BO,GAAM,QAAUD,EAAO3F,EAEvB,IAAIuB,GAAOtB,EAAQsB,MAAQhN,KAAKwE,EAAewI,IAC3CA,KACIA,EAAKvK,OAAO4O,GAAM,SAAWD,EAAOpE,EAAKvK,OACzCuK,EAAKsE,QAAOD,GAAM,UAAYD,EAAOpE,EAAKsE,QAGlD,IAAIC,GAAevR,KAAKmN,EAAiBnN,KAAK4M,EAAUnB,IAEpD+F,EAAStN,EAAUuN,cAAc,SACrCD,GAAOE,OAAQ,EACfF,EAAOG,IAAMJ,EAAe,yBAA2BF,GACtDnN,EAAU0N,MAAQ1N,EAAU2N,MAAMC,YAAYN,KAInDO,EAAoB,WAChB,GAAIhS,GAAOC,IACXA,MAAKmF,GAAkB,EACvB6M,WAAW,WAEPjS,EAAKoF,GAAkB,KAI/B8M,EAAe,SAASC,EAAWxG,GAE/B,GAAIyG,GAAKvQ,CAET,IAAK5B,KAAKgE,EAAV,CAGA0H,EAAUA,MAEVwG,EAAY,QAAUA,EAAU7K,OAAO,EAAE,GAAG+K,cAAgBF,EAAU7K,OAAO,GAEzEnD,EAAUmO,aACVF,EAAMjO,EAAUmO,YAAY,cAC5BF,EAAIG,UAAUJ,GAAW,GAAM,KAE/BC,EAAMjO,EAAUqO,oBAChBJ,EAAID,UAAYA,EAGpB,KAAKtQ,IAAO8J,GAAa5E,EAAO4E,EAAS9J,KACrCuQ,EAAIvQ,GAAO8J,EAAQ9J,GAGvB,IAAIsC,EAAUmO,YAEVnO,EAAUsO,cAAcL,OAIxB,KACIjO,EAAUuO,UAAU,KAAON,EAAID,UAAU1H,cAAe2H,GAC1D,MAAMjS,OAYhBwS,EAAyB,SAASC,GAC9B,GAAI5S,GAAOC,IACX,OAAO,UAAUmS,GASb,GALApS,EAAK6S,EAAmB,KAKpB7S,EAAK8F,IAAuBsM,EAAhC,CAGApS,EAAK8F,EAAqBsM,CAC1B,IAEIU,GAFApJ,EAAO0I,EAAIU,MAMf,KACIA,EAASrJ,EAAiBC,GAC5B,MAAOvJ,GACL2S,EAAS,YAGb9S,EAAKiP,mBACD8D,SAAU,MAAQH,EAClBnQ,QAASqQ,OAUrBE,EAAuB,WACnB,GAAIhT,GAAOC,KACPgT,EAAmB,GAKvB,OAAO,UAAUb,GACb,GAAIU,GAASV,EAAIU,OACbtI,EAAUsI,GAAUA,EAAOtI,OAK/B,IAAKA,IAAuB,UAAZA,GAAmC,aAAZA,GAA2BsI,EAAOI,mBAAzE,CAKA,GAAIC,GAAUnT,EAAK6S,CACdM,IACDnT,EAAKoT,EAAwB,SAAShB,GAE1CiB,aAAaF,GACbnT,EAAK6S,EAAmBZ,WAAW,WAC/BjS,EAAK6S,EAAmB,MACzBI,MAUXK,EAAmB,SAASC,EAAMC,GAC9B,GAAIC,GAAYrL,EAASnI,KAAK8F,EAAUG,MACpCwN,EAAWtL,EAASoL,GACpBG,EAAavL,EAASmL,EAK1BtT,MAAKgG,EAAYuN,EAIbC,EAAUhL,WAAaiL,EAASjL,UAAYgL,EAAU/K,OAASgL,EAAShL,OACxE8K,EAAKE,EAAS9K,UACd6K,EAAUhL,WAAakL,EAAWlL,UAAYgL,EAAU/K,OAASiL,EAAWjL,OAC5E6K,EAAOI,EAAW/K,UAEtB3I,KAAKgP,mBACD8D,SAAU,aACVvP,MACIgQ,GAAIA,EACJD,KAAMA,MAQlBK,EAAqB,WAKjB,QAASC,GAAW5I,GAChB,MAAO,UAAU6I,EAAI1T,GAIjB,IAAI,GADAiD,GAAO,GAAI0Q,OAAMzQ,UAAUrC,QACvBL,EAAI,EAAGA,EAAIyC,EAAKpC,SAAUL,EAC9ByC,EAAKzC,GAAK0C,UAAU1C,EAExB,IAAIoT,GAAmB3Q,EAAK,EAQ5B,OAPIgD,GAAW2N,KACX3Q,EAAK,GAAKrD,EAAKyN,KAAKuG,IAMpB/I,EAAKrH,MACEqH,EAAKrH,MAAM3D,KAAMoD,GAEjB4H,EAAK5H,EAAK,GAAIA,EAAK,KAOtC,QAAS4Q,GAAgBlU,GACrB,GAAImU,GAAQ1O,EAAQzF,IAAWyF,EAAQzF,GAAQ4C,SAC3CuR,IAASA,EAAM1M,gBAAkB0M,EAAM1M,eAAe,sBACtDsD,EAAKoJ,EAAO,mBAAoB,SAASjJ,GACrC,MAAO,UAAU2H,EAASkB,EAAIK,EAASC,GACnC,IACQN,GAAMA,EAAGO,cACTP,EAAGO,YAAcrU,EAAKyN,KAAKqG,EAAGO,cAEpC,MAAOC,IAMT,GAAIC,GACAC,EACAC,CAmBJ,OAjBItP,IAAmBA,EAAgBgH,MAAmB,gBAAXpM,GAAuC,SAAXA,KAGvEyU,EAAexU,EAAKoT,EAAwB,SAC5CqB,EAAkBzU,EAAK0U,IACvBH,EAAS,SAAUnC,GAIf,GAAKA,EAEL,MAAiB,UAAbA,EAAIuC,KACGH,EAAapC,GACF,aAAbA,EAAIuC,KACFF,EAAgBrC,GADtB,SAINnH,EAAKjK,KAAKf,KAAM2S,EAAS5S,EAAKyN,KAAKqG,EAAItG,OAAW+G,GAASJ,EAASC,KAEhFQ,GACH9J,EAAKoJ,EAAO,sBAAuB,SAAUjJ,GACzC,MAAO,UAAUmH,EAAK0B,EAAIK,EAASC,GAC/B,IACIN,EAAKA,IAAOA,EAAG9F,EAAoB8F,EAAG9F,EAAqB8F,GAC7D,MAAO3T,IAGT,MAAO8K,GAAKjK,KAAKf,KAAMmS,EAAK0B,EAAIK,EAASC,KAE9CQ,IA9EX,GAAI5U,GAAOC,KAEP2U,EAAkB5U,EAAK4F,EA0BvBT,EAAkBlF,KAAKyE,EAAeS,eAsD1C2F,GAAKtF,EAAS,aAAcqO,EAAYe,GACxC9J,EAAKtF,EAAS,cAAeqO,EAAYe,GACrCpP,EAAQqP,uBACR/J,EAAKtF,EAAS,wBAAyB,SAAUyF,GAC7C,MAAO,UAAU6J,GACb,MAAO7J,GAAKjL,EAAKyN,KAAKqH,MAE3BF,EAMP,KAAK,GADDG,IAAgB,cAAe,SAAU,OAAQ,mBAAoB,iBAAkB,oBAAqB,kBAAmB,cAAe,aAAc,qBAAsB,cAAe,aAAc,iBAAkB,eAAgB,kBAAmB,cAAe,cAAe,eAAgB,qBAAsB,SAAU,YAAa,eAAgB,gBAAiB,YAAa,kBAAmB,SAAU,iBAAkB,4BAA6B,wBACpdnU,EAAI,EAAGA,EAAImU,EAAa9T,OAAQL,IACrCqT,EAAgBc,EAAanU,GAGjC,IAAIoU,GAAIxP,EAAQyP,QAAUzP,EAAQwP,CAC9BA,IAAKA,EAAElB,IAAMkB,EAAElB,GAAGoB,OAClBpK,EAAKkK,EAAElB,GAAI,QAAS,SAAU7I,GAC1B,MAAO,UAAU6I,GACb,MAAO7I,GAAKjK,KAAKf,KAAMD,EAAKyN,KAAKqG,MAEtCc,IAcXO,EAAwB,WAMpB,QAASC,GAASC,EAAMnJ,GAChBmJ,IAAQnJ,IAAO7F,EAAW6F,EAAImJ,KAC9BvK,EAAKoB,EAAKmJ,EAAM,SAAUpK,GACtB,MAAOjL,GAAKyN,KAAKxC,KAR7B,GAAIjL,GAAOC,KACPkF,EAAkBlF,KAAKyE,EAAeS,gBAEtCyP,EAAkB5U,EAAK4F,CAU3B,IAAIT,EAAgB+G,KAAO,kBAAoB1G,GAAS,CACpD,GAAI8P,GAAWC,eAAe5S,SAC9BmI,GAAKwK,EAAU,OAAQ,SAASE,GAC5B,MAAO,UAAUrP,EAAQkC,GAWrB,MARI/B,GAAS+B,IAAQA,EAAIrG,QAAQhC,EAAKuE,UAClCtE,KAAKwV,GACDtP,OAAQA,EACRkC,IAAKA,EACLqN,YAAa,OAIdF,EAAS5R,MAAM3D,KAAMqD,aAEjCsR,GAEH9J,EAAKwK,EAAU,OAAQ,SAASK,GAC5B,MAAO,UAAUnS,GAGb,QAASoS,KACL,GAAI1J,EAAIuJ,IAAmC,IAAnBvJ,EAAI2J,YAAuC,IAAnB3J,EAAI2J,YAAmB,CACnE,IAGI3J,EAAIuJ,EAAYC,YAAcxJ,EAAI4J,OACpC,MAAO3V,IACTH,EAAKiP,mBACD0F,KAAM,OACN5B,SAAU,MACVvP,KAAM0I,EAAIuJ,KAMtB,IAAK,GAlBDvJ,GAAMjM,KAiBN8V,GAAS,SAAU,UAAW,cACzBjP,EAAI,EAAGA,EAAIiP,EAAM9U,OAAQ6F,IAC9BsO,EAASW,EAAMjP,GAAIoF,EAavB,OAVI,sBAAwBA,IAAO7F,EAAW6F,EAAI8J,oBAC9ClL,EAAKoB,EAAK,qBAAsB,SAAUjB,GACtC,MAAOjL,GAAKyN,KAAKxC,EAAMuC,OAAWoI,KAKtC1J,EAAI8J,mBAAqBJ,EAGtBD,EAAS/R,MAAM3D,KAAMqD,aAEjCsR,GAGHzP,EAAgB+G,KAAO,SAAW1G,IAClCsF,EAAKtF,EAAS,QAAS,SAASyQ,GAC5B,MAAO,UAAUnC,EAAI1T,GAIjB,IAAI,GADAiD,GAAO,GAAI0Q,OAAMzQ,UAAUrC,QACvBL,EAAI,EAAGA,EAAIyC,EAAKpC,SAAUL,EAC9ByC,EAAKzC,GAAK0C,UAAU1C,EAGxB,IAAIuF,GAAS,KAET9C,GAAK,IAAMA,EAAK,GAAG8C,SACnBA,EAAS9C,EAAK,GAAG8C,OAGrB,IAAI+P,IACA/P,OAAQA,EACRkC,IAAKhF,EAAK,GACVqS,YAAa,KASjB,OANA1V,GAAKiP,mBACD0F,KAAM,OACN5B,SAAU,QACVvP,KAAM0S,IAGHD,EAAUrS,MAAM3D,KAAMoD,GAAM8S,KAAK,SAAUC,GAG9C,MAFAF,GAAUR,YAAcU,EAASN,OAE1BM,MAGhBxB,GAKHzP,EAAgBgH,KAAOlM,KAAKgE,IACxBE,EAAUkS,kBACVlS,EAAUkS,iBAAiB,QAASrW,EAAKoT,EAAwB,UAAU,GAC3EjP,EAAUkS,iBAAiB,WAAYrW,EAAK0U,KAAyB,KAIrEvQ,EAAUmS,YAAY,UAAWtW,EAAKoT,EAAwB,UAC9DjP,EAAUmS,YAAY,aAActW,EAAK0U,MAQjD,IAAI6B,GAAS/Q,EAAQ+Q,OACjBC,EAAsBD,GAAUA,EAAOE,KAAOF,EAAOE,IAAIC,QACzDC,GAAgBH,GAAuBhR,EAAQoR,SAAWA,QAAQC,SACtE,IAAI1R,EAAgBa,UAAY2Q,EAAc,CAE1C,GAAIG,GAAgBtR,EAAQuR,UAC5BvR,GAAQuR,WAAa,WACjB,GAAIC,GAAchX,EAAK+F,EAAUG,IAGjC,IAFAlG,EAAKiX,EAAkBjX,EAAKiG,EAAW+Q,GAEnCF,EACA,MAAOA,GAAclT,MAAM3D,KAAMqD,YAIzCwH,EAAK8L,QAAS,YAAa,SAAUM,GAGjC,MAAO,YACH,GAAI7O,GAAM/E,UAAUrC,OAAS,EAAIqC,UAAU,GAAKkK,MAQhD,OALInF,IAEArI,EAAKiX,EAAkBjX,EAAKiG,EAAWoC,EAAM,IAG1C6O,EAActT,MAAM3D,KAAMqD,aAEtCsR,GAGP,GAAIzP,EAAgBpC,SAAW,WAAayC,IAAWzC,QAAQoU,IAAK,CAEhE,GAAIC,GAAwB,SAAU7T,EAAKC,GACvCxD,EAAKiP,mBACDxM,QAASc,EACTP,MAAOQ,EAAKR,MACZ+P,SAAU,YAIlBlM,IAAM,QAAS,OAAQ,OAAQ,QAAS,OAAQ,SAAUF,EAAG3D,GACzDmI,EAAkBpI,QAASC,EAAOoU,OAM9CC,EAAkB,WAGd,IADA,GAAIC,GACGrX,KAAK2F,EAAiB3E,QAAQ,CACjCqW,EAAUrX,KAAK2F,EAAiB0J,OAEhC,IAAIjO,GAAMiW,EAAQ,GAChB5U,EAAO4U,EAAQ,GACfrM,EAAOqM,EAAQ,EAEjBjW,GAAIqB,GAAQuI,IAIpBsM,EAAe,WACX,GAAIvX,GAAOC,IAGX4G,GAAK5G,KAAKyF,EAAU,SAASiB,EAAG6I,GAC5B,GAAIgI,GAAYhI,EAAO,GACnBnM,EAAOmM,EAAO,EAClBgI,GAAU5T,MAAM5D,GAAOA,GAAMyX,OAAOpU,OAI5CqU,EAAW,SAAStQ,GAChB,GAAIuQ,GAAItM,EAAWuM,KAAKxQ,GACpBsE,KACA9K,EAAI,CAER,KACI,KAAOA,KAAK8K,EAAIN,EAAQxK,IAAM+W,EAAE/W,IAAM,GACxC,MAAMT,GACJ,KAAM,IAAIqC,GAAiB,gBAAkB4E,GAGjD,GAAIsE,EAAIyB,OAASlN,KAAKyE,EAAemT,eACjC,KAAM,IAAIrV,GAAiB,iFAG/B,OAAOkJ,IAGXoM,EAAkB,SAASlL,GAEvB,GAAI4E,GAAe,KAAO5E,EAAIlE,MACzBkE,EAAImL,KAAO,IAAMnL,EAAImL,KAAO,GAKjC,OAHInL,GAAInE,WACJ+I,EAAe5E,EAAInE,SAAW,IAAM+I,GAEjCA,GAGXwG,EAAyB,WAEhB/X,KAAKmF,GACNnF,KAAKyO,EAAiB9K,MAAM3D,KAAMqD,YAI1C2U,EAAkB,SAASC,EAAWvM,GAClC,GAAImD,GAAS7O,KAAK8O,EAAemJ,EAAWvM,EAE5C1L,MAAKkY,EAAc,UACfD,UAAWA,EACXvM,QAASA,IAGb1L,KAAKmY,EACDF,EAAUxV,KACVwV,EAAUzV,QACVyV,EAAU7P,IACV6P,EAAUG,OACVvJ,EACAnD,IAIR2M,EAAgB,SAASJ,EAAWvM,GAChC,GAAI3L,GAAOC,KACP6O,IACJ,IAAIoJ,EAAUvW,OAASuW,EAAUvW,MAAMV,SACnC4F,EAAKqR,EAAUvW,MAAO,SAASf,EAAGe,GAC9B,GAAI4W,GAAQvY,EAAKwY,EAAgB7W,EAC7B4W,IACAzJ,EAAO1M,KAAKmW,KAKhB5M,GAAWA,EAAQ4C,gBACnB,IAAK,GAAIzH,GAAI,EAAGA,EAAI6E,EAAQ4C,gBAAkBzH,EAAIgI,EAAO7N,OAAQ6F,IAC7DgI,EAAOhI,GAAG2R,QAAS,CAK/B,OADA3J,GAASA,EAAO/M,MAAM,EAAG9B,KAAKyE,EAAeQ,kBAKjDwT,EAAiB,SAASH,GACtB,GAAKA,EAAMlQ,IAAX,CAGA,GAAIsQ,IACAC,SAAYL,EAAMlQ,IAClBgQ,OAAYE,EAAMM,KAClBC,MAAYP,EAAMQ,OAClBC,WAAYT,EAAMhL,MAAQ,IAY9B,OATAoL,GAAWF,SAELxY,KAAKyE,EAAeI,aAAa8J,OAAS3O,KAAKyE,EAAeI,aAAa8J,KAAK+J,EAAWC,WAE7F,qBAAqBhK,KAAK+J,EAAW,cAErC,qBAAqB/J,KAAK+J,EAAWC,WAGlCD,IAGXM,EAAmB,SAAStE,EAAMlS,EAASyW,EAASb,EAAQvJ,EAAQnD,GAChE,GAAI6C,EACJ,MAAMvO,KAAKyE,EAAeC,aAAaiK,OAAQ3O,KAAKyE,EAAeC,aAAaiK,KAAKnM,MAErFA,GAAW,GAEPqM,GAAUA,EAAO7N,QACjBiY,EAAUpK,EAAO,GAAG8J,UAAYM,EAGhCpK,EAAO1E,UACPoE,GAAcM,OAAQA,IACfoK,IACP1K,GACIM,SACI8J,SAAUM,EACVb,OAAQA,EACRI,QAAQ,QAKdxY,KAAKyE,EAAeE,WAAWgK,OAAQ3O,KAAKyE,EAAeE,WAAWgK,KAAKsK,OAC3EjZ,KAAKyE,EAAeG,cAAc+J,MAAS3O,KAAKyE,EAAeG,cAAc+J,KAAKsK,KAAxF,CAEA,GAAI1V,GAAOwD,GAEPmS,WACIC,SACIzE,KAAMA,EACN7S,MAAOW,EACP+L,WAAYA,KAGpB6K,QAASH,GACVvN,EAGH1L,MAAK+O,EAAMxL,KAGf8V,EAAa,SAAS9V,GAGlB,GAAI6D,GAAMpH,KAAKyE,EAAeO,gBAI9B,IAHIzB,EAAKf,UACLe,EAAKf,QAAU0E,EAAS3D,EAAKf,QAAS4E,IAEtC7D,EAAK2V,UAAW,CAChB,GAAIA,GAAY3V,EAAK2V,UAAUC,OAAO,EACtCD,GAAUrX,MAAQqF,EAASgS,EAAUrX,MAAOuF,GAGhD,MAAO7D,IAGX+V,EAAc,WACV,GAAKtZ,KAAKgE,GAAiBE,EAAU6B,UAAa7B,EAAU6B,SAASE,KAArE,CAIA,GAAIsT,IACAC,SACIC,aAAcC,UAAUC,WAUhC,OANAJ,GAASnR,IAAMlE,EAAU6B,SAASE,KAE9B/B,EAAU0V,WACVL,EAASC,QAAQK,QAAU3V,EAAU0V,UAGlCL,IAIXO,EAAO,SAASvW,GACZ,GAAIqI,GAAgB5L,KAAKyE,EAErBsV,GACAC,QAASha,KAAKuE,EACdf,OAAQoI,EAAcpI,OACtByW,SAAU,cACXV,EAAWvZ,KAAKka,GAEfX,KACAQ,EAASI,QAAUZ,GAInBhW,EAAK+K,sBAAuB/K,GAAK+K,eAErC/K,EAAOwD,EAAYgT,EAAUxW,GAG7BA,EAAKsM,KAAO9I,EAAYA,KAAgB/G,KAAKwE,EAAeqL,MAAOtM,EAAKsM,MACxEtM,EAAKE,MAAQsD,EAAYA,KAAgB/G,KAAKwE,EAAef,OAAQF,EAAKE,OAG1EF,EAAKE,MAAM,oBAAsBI,IAAQ7D,KAAK0F,EAE1C1F,KAAK4F,GAAgB5F,KAAK4F,EAAa5E,OAAS,IAGhDuC,EAAK6W,aACDjB,UAAWrX,MAAMf,KAAKf,KAAK4F,EAAc,KAK7Ca,EAAclD,EAAKsM,aAActM,GAAKsM,KAEtC7P,KAAKwE,EAAewI,OAEpBzJ,EAAKyJ,KAAOhN,KAAKwE,EAAewI,MAIhCpB,EAAcsE,cAAa3M,EAAK2M,YAActE,EAAcsE,aAG5DtE,EAAcwE,UAAS7M,EAAK6M,QAAUxE,EAAcwE,SAGpDxE,EAAcyO,aAAY9W,EAAK+W,YAAc1O,EAAcyO,YAE3DjU,EAAWwF,EAAc2E,gBACzBhN,EAAOqI,EAAc2E,aAAahN,IAASA,GAI1CA,IAAQkD,EAAclD,KAKvB6C,EAAWwF,EAAc8E,sBAAwB9E,EAAc8E,mBAAmBnN,IAItFvD,KAAKua,EAAsBhX,KAG/BiX,EAAU,WACR,MAAO5R,MAGT6R,EAAuB,SAASlX,EAAMP,GAClC,GAAIjD,GAAOC,KACP4L,EAAgB5L,KAAKyE,CAYzB,IAPAzE,KAAKoE,EAAeb,EAAKmX,WAAanX,EAAKmX,SAAW1a,KAAK2a,KAG3DpX,EAAOvD,KAAK4a,EAAYrX,GAExBvD,KAAK2L,EAAU,QAAS,uBAAwBpI,GAE3CvD,KAAKoM,UAAV,CAEA,GAAIyO,IACAC,eAAgB,IAChBC,cAAe,YAAc/a,KAAKsL,QAClC0P,WAAYhb,KAAKsE,EAEjBtE,MAAKiN,IACL4N,EAAKI,cAAgBjb,KAAKiN,EAG9B,IAAIiM,GAAY3V,EAAK2V,WAAa3V,EAAK2V,UAAUC,OAAO,EACxDnZ,MAAKgP,mBACD8D,SAAU,SACVtQ,QAAS0W,GACFA,EAAUxE,KAAOwE,EAAUxE,KAAO,KAAO,IAAMwE,EAAUrX,MAC1D0B,EAAKf,QACXkY,SAAUnX,EAAKmX,SACf3X,MAAOQ,EAAKR,OAAS,SAGzB,IAAIqF,GAAMpI,KAAKoN,GACdxB,EAAcgF,WAAa5Q,KAAKkb,GAAcna,KAAKf,MAChDoI,IAAKA,EACLyS,KAAMA,EACNtX,KAAMA,EACNmI,QAASE,EACTuP,UAAW,WACPpb,EAAKmY,EAAc,WACf3U,KAAMA,EACNoO,IAAKvJ,IAETpF,GAAYA,KAEhBoY,QAAS,SAAiBC,GACtBtb,EAAKmY,EAAc,WACf3U,KAAMA,EACNoO,IAAKvJ,IAETiT,EAAQA,GAAS,GAAIza,OAAM,sDAC3BoC,GAAYA,EAASqY,QAKjCtG,EAAc,SAASuG,GAWnB,QAASC,KACkB,MAAnBpB,EAAQtE,OACJyF,EAAKH,WACLG,EAAKH,YAEFG,EAAKF,SACZE,EAAKF,QAAQ,GAAIxa,OAAM,sBAAwBuZ,EAAQtE,SAhB/D,GAAIsE,GAAU,GAAI7E,gBAGdkG,EACA,mBAAqBrB,IACK,mBAAnBsB,eAEX,IAAKD,EAAL,CAEA,GAAIpT,GAAMkT,EAAKlT,GAWX,oBAAqB+R,GACrBA,EAAQpE,mBAAqB,WACE,IAAvBoE,EAAQvE,YAGZ2F,MAGJpB,EAAU,GAAIsB,gBAGdrT,EAAMA,EAAIP,QAAQ,WAAY,IAG9BsS,EAAQuB,OAASH,GAKrBpB,EAAQwB,KAAK,OAAQvT,EAAM,IAAMJ,EAAUsT,EAAKT,OAChDV,EAAQyB,KAAKza,EAAUma,EAAK/X,SAGhC6F,EAAW,SAASrG,GACZ/C,KAAKwF,EAAwBzC,IAAU/C,KAAKuL,OAE5C7H,SAAShB,UAAUiB,MAAM5C,KACrBf,KAAKwF,EAAwBzC,GAC7B/C,KAAKsF,KACFxD,MAAMf,KAAKsC,UAAW,KAKrCwY,EAAe,SAASja,EAAKyL,GACrBpJ,EAAYoJ,SACLrN,MAAKwE,EAAe5C,GAE3B5B,KAAKwE,EAAe5C,GAAOmF,EAAY/G,KAAKwE,EAAe5C,OAAYyL,IAWnF,IAAI/G,GAAkBwV,OAAOpZ,SAkR7BzC,GAAMyC,UAAUqZ,QAAU9b,EAAMyC,UAAU+M,eAC1CxP,EAAMyC,UAAUsZ,kBAAoB/b,EAAMyC,UAAUyN,WAEpD1Q,EAAOD,QAAUS,IAEdc,KAAKf,KAAuB,mBAAXF,QAAyBA,OAAyB,mBAATC,MAAuBA,KAAyB,mBAAXF,QAAyBA,aACxHoB,EAAI,EAAEqB,EAAI,EAAEM,EAAI,EAAEqZ,EAAI,IAAIC,GAAG,SAAShb,EAAQzB,EAAOD,IACxD,SAAWM,GAOX,YAEA,IAAIqc,GAAmBjb,EAAQ,GAG3BqE,EAA4B,mBAAX1F,QAAyBA,OACd,mBAAXC,GAAyBA,EAChB,mBAATC,MAAuBA,QAExCqc,EAAS7W,EAAQtF,MAEjBA,EAAQ,GAAIkc,EAQhBlc,GAAMoc,WAAa,WAElB,MADA9W,GAAQtF,MAAQmc,EACTnc,GAGRA,EAAM+Q,YAENvR,EAAOD,QAAUS,IAEdc,KAAKf,KAAuB,mBAAXF,QAAyBA,OAAyB,mBAATC,MAAuBA,KAAyB,mBAAXF,QAAyBA,aACxH+D,EAAI,IAAIqY,GAAG,SAAS/a,EAAQzB,EAAOD,IACtC,SAAWM,GACX,YAyBA,SAASwc,KACL,MAAwB,mBAAbjR,UACA,GAEJA,SAAStF,SAASE,KAtB7B,GAAIgF,IACAlG,qBAAqB,EACrBwG,OAAO,GAIPhG,EAA4B,mBAAX1F,QAAyBA,OACd,mBAAXC,GAAyBA,EAChB,mBAATC,MAAuBA,QAIxCwc,KAAYza,MACZ0a,EAAmB,IAGnBC,EAAiB,iGAgDrBxR,GAASoB,OAAU,WAUf,QAASC,GAAUiP,GACfmB,IACAC,EAASxa,KAAKoZ,GAOlB,QAASqB,GAAYrB,GACjB,IAAK,GAAI5a,GAAIgc,EAAS3b,OAAS,EAAGL,GAAK,IAAKA,EACpCgc,EAAShc,KAAO4a,GAChBoB,EAASza,OAAOvB,EAAG,GAQ/B,QAASkc,KACLC,IACAH,KAOJ,QAASI,GAAerb,EAAOsb,GAC3B,GAAI9D,GAAY,IAChB,KAAI8D,GAAkB/R,EAASlG,oBAA/B,CAGA,IAAK,GAAIpE,KAAKgc,GACV,GAAIA,EAASpV,eAAe5G,GACxB,IACIgc,EAAShc,GAAGgD,MAAM,MAAOjC,GAAO8V,OAAO+E,EAAOxb,KAAKsC,UAAW,KAChE,MAAO4Z,GACL/D,EAAY+D,EAKxB,GAAI/D,EACA,KAAMA,IAiBd,QAASgE,GAAsB1a,EAAS4F,EAAK+U,EAAQC,EAAOhP,GACxD,GAAI1M,GAAQ,IAEZ,IAAI2b,EACApS,EAASuD,kBAAkB8O,oCAAoCD,EAAoBjV,EAAK+U,EAAQ3a,GAChG+a,QACG,IAAInP,EAIP1M,EAAQuJ,EAASuD,kBAAkBJ,GACnC2O,EAAerb,GAAO,OACnB,CACH,GAQI8b,GARAzX,GACAqC,IAAOA,EACPwQ,KAAQuE,EACRrE,OAAUsE,GAGV3a,EAAO8K,OACPjK,EAAMd,CAEV,IAAkC,uBAA3B+D,SAASxF,KAAKyB,GAAgC,CACjD,GAAIgb,GAAShb,EAAQ6F,MAAMoU,EACvBe,KACA/a,EAAO+a,EAAO,GACdla,EAAMka,EAAO,IAIrBzX,EAASuH,KAAOkP,EAEhB9a,GACIe,KAAQA,EACRD,QAAWc,EACX8E,IAAOkU,IACP5a,OAAUqE,IAEdgX,EAAerb,GAAO,GAG1B,QAAI+b,GACOA,EAAmB9Z,MAAM3D,KAAMqD,WAM9C,QAASqZ,KAEDgB,IAGJD,EAAqBlY,EAAQoY,QAC7BpY,EAAQoY,QAAUT,EAClBQ,GAA2B,GAG/B,QAASZ,KAEAY,IAGLnY,EAAQoY,QAAUF,EAClBC,GAA2B,EAC3BD,EAAqBlQ,QAGzB,QAASgQ,KACL,GAAIK,GAAsBP,EACtBQ,EAAYC,CAChBA,GAAW,KACXT,EAAqB,KACrBxM,EAAgB,KAChBkM,EAAepZ,MAAM,MAAOia,GAAqB,GAAOpG,OAAOqG,IAUnE,QAASxR,GAAO+B,EAAI2P,GAChB,GAAI3a,GAAOmZ,EAAOxb,KAAKsC,UAAW,EAClC,IAAIga,EAAoB,CACpB,GAAIxM,IAAkBzC,EAClB,MAEFmP,KAIN,GAAI7b,GAAQuJ,EAASuD,kBAAkBJ,EAevC,IAdAiP,EAAqB3b,EACrBmP,EAAgBzC,EAChB0P,EAAW1a,EAMX4O,WAAW,WACHnB,IAAkBzC,GAClBmP,KAEJ7b,EAAMsc,WAAa,IAAO,GAE1BD,KAAY,EACZ,KAAM3P,GArLd,GA0DIqP,GAAoBC,EA1DpBf,KACAmB,EAAW,KACXjN,EAAgB,KAChBwM,EAAqB,IAyLzB,OAHAhR,GAAOC,UAAYA,EACnBD,EAAOuQ,YAAcA,EACrBvQ,EAAO6B,UAAY2O,EACZxQ,KAsDXpB,EAASuD,kBAAqB,WAiE1B,QAASyP,GAA+B7P,GACpC,GAAwB,mBAAbA,GAAG1M,OAA0B0M,EAAG1M,MAA3C,CAWA,IAAK,GAJDwc,GACAC,EANA7H,EAAS,mHACT8H,EAAQ,qGACRC,EAAQ,wGACRC,EAAQlQ,EAAG1M,MAAMgJ,MAAM,MACvBhJ,KAKKf,GAFO,sBAAsBgX,KAAKvJ,EAAG5L,SAEjC,GAAGqE,EAAIyX,EAAMtd,OAAQL,EAAIkG,IAAKlG,EAAG,CAC1C,GAAKud,EAAQ5H,EAAOqB,KAAK2G,EAAM3d,IAAM,CACjC,GAAI4d,GAAWL,EAAM,IAAMA,EAAM,GAAGnc,QAAQ,cAC5Coc,IACI/V,IAAQmW,EAAsB,KAAXL,EAAM,GACzB5Q,KAAQ4Q,EAAM,IAAM1B,EACpBpZ,KAAQmb,GAAYL,EAAM,OAC1BtF,KAAQsF,EAAM,IAAMA,EAAM,GAAK,KAC/BpF,OAAUoF,EAAM,IAAMA,EAAM,GAAK,UAElC,IAAKA,EAAQG,EAAM1G,KAAK2G,EAAM3d,IACjCwd,GACI/V,IAAO8V,EAAM,GACb5Q,KAAQ4Q,EAAM,IAAM1B,EACpBpZ,QACAwV,MAASsF,EAAM,GACfpF,OAAUoF,EAAM,IAAMA,EAAM,GAAK,UAElC,CAAA,KAAKA,EAAQE,EAAMzG,KAAK2G,EAAM3d,KASjC,QARAwd,IACI/V,IAAO8V,EAAM,GACb5Q,KAAQ4Q,EAAM,IAAM1B,EACpBpZ,KAAQ8a,EAAM,GAAKA,EAAM,GAAGxT,MAAM,QAClCkO,KAAQsF,EAAM,IAAMA,EAAM,GAAK,KAC/BpF,OAAUoF,EAAM,IAAMA,EAAM,GAAK,OAMpCC,EAAQ7Q,MAAQ6Q,EAAQvF,OACzBuF,EAAQ7Q,KAAOkP,GAGnB9a,EAAMS,KAAKgc,GAGf,MAAKzc,GAAMV,QAINU,EAAM,GAAGoX,QAAqC,mBAApB1K,GAAGoQ,eAI9B9c,EAAM,GAAGoX,OAAS1K,EAAGoQ,aAAe,IAIpC/b,KAAQ2L,EAAG3L,KACXD,QAAW4L,EAAG5L,QACd4F,IAAOkU,IACP5a,MAASA,IAdF,MA+Bf,QAAS4b,GAAoCrF,EAAW7P,EAAK+U,EAAQ3a,GACjE,GAAIic,IACArW,IAAOA,EACPwQ,KAAQuE,EAGZ,IAAIsB,EAAQrW,KAAOqW,EAAQ7F,KAAM,CAO7B,GANAX,EAAU+F,YAAa,EAElBS,EAAQnR,OACTmR,EAAQnR,KAAOkP,GAGfvE,EAAUvW,MAAMV,OAAS,GACrBiX,EAAUvW,MAAM,GAAG0G,MAAQqW,EAAQrW,IAAK,CACxC,GAAI6P,EAAUvW,MAAM,GAAGkX,OAAS6F,EAAQ7F,KACpC,OAAO,CACJ,KAAKX,EAAUvW,MAAM,GAAGkX,MAAQX,EAAUvW,MAAM,GAAG4L,OAASmR,EAAQnR,KAEvE,MADA2K,GAAUvW,MAAM,GAAGkX,KAAO6F,EAAQ7F,MAC3B,EAOnB,MAFAX,GAAUvW,MAAMgd,QAAQD,GACxBxG,EAAU0G,SAAU,GACb,EAKX,MAHI1G,GAAU+F,YAAa,GAGpB,EAYX,QAASY,GAAsCxQ,EAAIyQ,GAS/C,IAAK,GAJDX,GACAY,EALAC,EAAe,qEACfrd,KACAsd,KACAC,GAAY,EAKPC,EAAON,EAAsCO,OAAQD,IAASD,EAAWC,EAAOA,EAAKC,OAC1F,GAAID,IAAS1Q,GAAqB0Q,IAASjU,EAASoB,OAApD,CAkBA,GAbAyS,GACI1W,IAAO,KACPkF,KAAQkP,EACR5D,KAAQ,KACRE,OAAU,MAGVoG,EAAKzc,KACLqc,EAAKxR,KAAO4R,EAAKzc,MACTyb,EAAQa,EAAapH,KAAKuH,EAAK3Y,eACvCuY,EAAKxR,KAAO4Q,EAAM,IAGG,mBAAdY,GAAKxR,KACd,IACEwR,EAAKxR,KAAO4Q,EAAMkB,MAAMC,UAAU,EAAGnB,EAAMkB,MAAMrd,QAAQ,MACzD,MAAO7B,IAGP8e,EAAM,GAAKE,GACXD,GAAY,EAEZD,EAAM,GAAKE,IAAQ,EAGvBxd,EAAMS,KAAK2c,GAGXD,GAGAnd,EAAMQ,OAAO,EAAG2c,EAGpB,IAAIzP,IACA3M,KAAQ2L,EAAG3L,KACXD,QAAW4L,EAAG5L,QACd4F,IAAOkU,IACP5a,MAASA,EAGb,OADA4b,GAAoClO,EAAQhB,EAAGkR,WAAalR,EAAGmR,SAAUnR,EAAGwK,MAAQxK,EAAGoR,WAAYpR,EAAG5L,SAAW4L,EAAGqR,aAC7GrQ,EAQX,QAASZ,GAAkBJ,EAAIyQ,GAC3B,GAAInd,GAAQ,IACZmd,GAAkB,MAATA,EAAgB,GAAKA,CAE9B,KAEI,GADAnd,EAAQuc,EAA+B7P,GAEnC,MAAO1M,GAEb,MAAOxB,GACL,GAAI+K,EAASM,MACT,KAAMrL,GAId,IAEI,GADAwB,EAAQkd,EAAsCxQ,EAAIyQ,EAAQ,GAEtD,MAAOnd,GAEb,MAAOxB,GACL,GAAI+K,EAASM,MACT,KAAMrL,GAId,OACIuC,KAAQ2L,EAAG3L,KACXD,QAAW4L,EAAG5L,QACd4F,IAAOkU,KAOf,MAHA9N,GAAkB8O,oCAAsCA,EACxD9O,EAAkByP,+BAAiCA,EAE5CzP,KAGX/O,EAAOD,QAAUyL,IAEdlK,KAAKf,KAAuB,mBAAXF,QAAyBA,OAAyB,mBAATC,MAAuBA,KAAyB,mBAAXF,QAAyBA,qBAChH,IAAI","file":"raven.min.js"} \ No newline at end of file +{"version":3,"sources":["raven.js"],"names":["f","exports","module","define","amd","g","window","global","self","this","Raven","e","t","n","r","s","o","u","a","require","i","Error","code","l","call","length","1","_dereq_","stringify","obj","replacer","spaces","cycleReplacer","JSON","serializer","stack","keys","key","value","slice","indexOf","join","thisPos","splice","push","Infinity","getSerialize","2","RavenConfigError","message","name","prototype","constructor","3","wrapMethod","console","level","callback","originalConsoleLevel","originalConsole","sentryLevel","args","arguments","msg","data","logger","extra","Function","apply","4","now","Date","_hasJSON","_hasDocument","isUndefined","_document","_lastCapturedException","_lastEventId","_globalServer","_globalKey","_globalProject","_globalContext","_globalOptions","ignoreErrors","ignoreUrls","whitelistUrls","includePaths","crossOrigin","collectWindowErrors","maxMessageLength","stackTraceLimit","autoBreadcrumbs","_ignoreOnError","_isRavenInstalled","_originalErrorStackTraceLimit","_originalConsole","_window","_originalConsoleMethods","_plugins","_startTime","_wrappedBuiltIns","_breadcrumbs","_lastCapturedEvent","_location","location","_lastHref","href","method","what","isFunction","isString","objectPrototype","toString","isObject","isEmptyObject","_","isError","each","j","hasKey","objectMerge","obj1","obj2","truncate","str","max","substr","object","hasOwnProperty","joinRegExp","patterns","pattern","sources","len","replace","source","RegExp","urlencode","pairs","encodeURIComponent","parseUrl","url","match","query","fragment","protocol","host","path","relative","uuid4","crypto","msCrypto","getRandomValues","arr","Uint16Array","pad","num","v","c","Math","random","htmlTreeAsString","elem","nextStr","MAX_TRAVERSE_HEIGHT","MAX_OUTPUT_LEN","out","height","separator","sepLength","htmlElementAsString","parentNode","reverse","className","classes","attr","tagName","toLowerCase","id","split","attrWhitelist","getAttribute","fill","replacement","track","orig","TraceKit","wrapConsoleMethod","dsnKeys","dsnPattern","document","VERSION","debug","config","dsn","options","_logDebug","globalOptions","setDSN","maxBreadcrumbs","min","autoBreadcrumbDefaults","xhr","dom","install","isSetup","report","subscribe","_handleOnErrorStackInfo","_instrumentTryCatch","_instrumentBreadcrumbs","_drainPlugins","uri","_parseDSN","lastSlash","lastIndexOf","_dsn","user","_globalSecret","pass","_getGlobalServer","_globalEndpoint","context","func","undefined","wrap","_before","wrapped","deep","_ignoreNextOnError","captureException","__raven__","__raven_wrapper__","property","__inner__","uninstall","_restoreBuiltIns","ex","captureMessage","trimHeadFrames","stacktrace","computeStackTrace","_handleStackInfo","ex1","test","fingerprint","frames","_prepareFrames","_send","captureBreadcrumb","crumb","timestamp","breadcrumbCallback","result","shift","addPlugin","plugin","pluginArgs","setUserContext","setContextsInterface","contexts","setExtraContext","_mergeContext","setTagsContext","tags","clearContext","getContext","parse","setEnvironment","environment","setRelease","release","setDataCallback","original","dataCallback","setBreadcrumbCallback","setShouldSendCallback","shouldSendCallback","setTransport","transport","lastException","lastEventId","ravenNotConfiguredError","afterLoad","RavenConfig","showReportDialog","eventId","encode","qs","email","globalServer","script","createElement","async","src","head","body","appendChild","F","setTimeout","O","eventType","evt","toUpperCase","createEvent","initEvent","createEventObject","dispatchEvent","fireEvent","P","evtName","_keypressTimeout","target","category","R","debounceDuration","isContentEditable","timeout","_breadcrumbEventHandler","clearTimeout","S","from","to","parsedLoc","parsedTo","parsedFrom","x","wrapTimeFn","fn","Array","originalCallback","wrapEventTarget","proto","capture","secure","handleEvent","err","before","clickHandler","keypressHandler","_keypressEventHandler","type","wrappedBuiltIns","requestAnimationFrame","cb","eventTargets","$","jQuery","ready","y","wrapProp","prop","xhrproto","XMLHttpRequest","origOpen","__raven_xhr","status_code","origSend","onreadystatechangeHandler","readyState","status","props","onreadystatechange","origFetch","fetchData","then","response","addEventListener","attachEvent","chrome","isChromePackagedApp","app","runtime","hasPushState","history","pushState","oldOnPopState","onpopstate","currentHref","_captureUrlChange","origPushState","log","consoleMethodCallback","J","builtin","z","installer","concat","A","m","exec","allowSecretKey","D","port","w","K","stackInfo","_triggerEvent","_processException","lineno","L","frame","_normalizeFrame","in_app","V","normalized","filename","line","colno","column","function","U","fileurl","exception","values","culprit","W","X","httpData","headers","User-Agent","navigator","userAgent","referrer","Referer","M","baseData","project","platform","_getHttpData","request","breadcrumbs","serverName","server_name","_sendProcessedPayload","Z","Y","event_id","_getUuid","_trimPacket","auth","sentry_version","sentry_client","sentry_key","sentry_secret","_makeRequest","onSuccess","onError","error","opts","handler","hasCORS","XDomainRequest","onload","open","send","N","Object","setUser","setReleaseContext","6","5","RavenConstructor","_Raven","noConflict","getLocationHref","_slice","UNKNOWN_FUNCTION","ERROR_TYPES_RE","installGlobalHandler","handlers","unsubscribe","unsubscribeAll","uninstallGlobalHandler","notifyHandlers","isWindowError","inner","traceKitWindowOnError","lineNo","colNo","lastExceptionStack","augmentStackTraceWithInitialElement","processLastException","groups","_oldOnerrorHandler","_onErrorHandlerInstalled","onerror","_lastExceptionStack","_lastArgs","lastArgs","rethrow","incomplete","computeStackTraceFromStackProp","parts","element","gecko","winjs","lines","isNative","columnNumber","initial","unshift","partial","computeStackTraceByWalkingCallerChain","depth","item","functionName","funcs","recursion","curr","caller","input","substring","sourceURL","fileName","lineNumber","description"],"mappings":"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","file":"raven.min.js"} \ No newline at end of file diff --git a/dist/sri.json b/dist/sri.json index aa651626385b..a5aecd14ddfd 100644 --- a/dist/sri.json +++ b/dist/sri.json @@ -1,20 +1,20 @@ { "@dist/raven.js": { "hashes": { - "sha256": "ihdEI9/hV9q/+yUm+WxgLgncmbFnuK9tr/lRnRgr60k=", - "sha512": "4WMClk7qzYHXT5/xR3X9RkpNs8dg/FIfbJ7RTythr9rXMRAVIDimD2X6NLEUdID+c7sJ3b6oOvsmf6oB0ORhwg==" + "sha256": "Zi62bVOegJu6xIbW0HEF0cnN1dPyT/Sg8igAgq1RHa8=", + "sha512": "K8RXJjVXwEoOtTCr0/PVGPiQzg3wMz8tZ4WgvP2FvpZw7SdHQLTUloJ7osCzUCo8XzdOxtKCZ37GnK+hmOQe6g==" }, "type": null, - "integrity": "sha256-ihdEI9/hV9q/+yUm+WxgLgncmbFnuK9tr/lRnRgr60k= sha512-4WMClk7qzYHXT5/xR3X9RkpNs8dg/FIfbJ7RTythr9rXMRAVIDimD2X6NLEUdID+c7sJ3b6oOvsmf6oB0ORhwg==", + "integrity": "sha256-Zi62bVOegJu6xIbW0HEF0cnN1dPyT/Sg8igAgq1RHa8= sha512-K8RXJjVXwEoOtTCr0/PVGPiQzg3wMz8tZ4WgvP2FvpZw7SdHQLTUloJ7osCzUCo8XzdOxtKCZ37GnK+hmOQe6g==", "path": "dist/raven.js" }, "@dist/raven.min.js": { "hashes": { - "sha256": "Iwsp4zEtQhPhOFbMNyTevyNpy7XTm8qUPteSJyopHDM=", - "sha512": "lL3X3M9f+DKT/mcKDJWixbXdXhVlYGWxy5DuPYyV6LrD8KNWQJ6ahpvTK3IyosXEAj3x+PWQ1DnFbKyGbIGdBw==" + "sha256": "hkHQD6hjsfVZYi6OvtQKv3ILDnLG8th+hJp2vU86a8k=", + "sha512": "EvQSBi66h4D4I1+MC6hs2ybi/PVMhQwXCyAKem5cWRCqVnP9hRkt66xdhN3Ia6TQN/dU/5u9okvXg5fAqq10ow==" }, "type": null, - "integrity": "sha256-Iwsp4zEtQhPhOFbMNyTevyNpy7XTm8qUPteSJyopHDM= sha512-lL3X3M9f+DKT/mcKDJWixbXdXhVlYGWxy5DuPYyV6LrD8KNWQJ6ahpvTK3IyosXEAj3x+PWQ1DnFbKyGbIGdBw==", + "integrity": "sha256-hkHQD6hjsfVZYi6OvtQKv3ILDnLG8th+hJp2vU86a8k= sha512-EvQSBi66h4D4I1+MC6hs2ybi/PVMhQwXCyAKem5cWRCqVnP9hRkt66xdhN3Ia6TQN/dU/5u9okvXg5fAqq10ow==", "path": "dist/raven.min.js" } } \ No newline at end of file diff --git a/src/raven.js b/src/raven.js index ed7d62ce8bba..25dc23c3c789 100644 --- a/src/raven.js +++ b/src/raven.js @@ -454,6 +454,19 @@ Raven.prototype = { return this; }, + /* + * Set/clear Contexts interface to be sent along with the payload. + * + * @param {object} contexts An object representing Contexts data [optional] + * @return {Raven} + */ + setContextsInterface: function(contexts) { + // Intentionally do not merge here since that's an unexpected behavior. + this._globalContext.contexts = contexts; + + return this; + }, + /* * Merge extra attributes to be sent along with the payload. * @@ -1362,6 +1375,11 @@ Raven.prototype = { data.user = this._globalContext.user; } + if (this._globalContext.contexts) { + // sentry.interfaces.Contexts + data.contexts = this._globalContext.contexts; + } + // Include the environment if it's defined in globalOptions if (globalOptions.environment) data.environment = globalOptions.environment; diff --git a/test/raven.test.js b/test/raven.test.js index ad4626fc14ef..b69cbc842658 100644 --- a/test/raven.test.js +++ b/test/raven.test.js @@ -1434,7 +1434,7 @@ describe('Raven (public API)', function() { describe('callback function', function() { it('should callback a function if it is global', function() { window.RavenConfig = { - dsn: "http://random@some.other.server:80/2", + dsn: 'http://random@some.other.server:80/2', config: {some: 'config'} }; @@ -1570,7 +1570,7 @@ describe('Raven (public API)', function() { Raven.config('//abc@example.com/2', { whitelistUrls: [ /my.app/i, - "stringy.app" + 'stringy.app' ] }); @@ -1842,6 +1842,25 @@ describe('Raven (public API)', function() { }); }); + describe('.setContextsInterface', function() { + it('should set the globalContext.contexts object', function() { + Raven.setContextsInterface({device: {family: 'asus', type: 'device'}}); + assert.deepEqual(Raven._globalContext.contexts, {device: {family: 'asus', type: 'device'}}); + }); + + it('should not merge globalContext.device object, but rewrite', function () { + Raven._globalContext.contexts = {device: {family: 'asus', type: 'device'}}; + Raven.setContextsInterface({os: {name: 'Android'}}); + assert.deepEqual(Raven._globalContext.contexts, {os: {name: 'Android'}}); + }); + + it('should clear the globalContext.device with no arguments', function() { + Raven._globalContext.contexts = {device: {family: 'asus', type: 'device'}}; + Raven.setContextsInterface(); + assert.isUndefined(Raven._globalContext.contexts); + }); + }); + describe('.setExtraContext', function() { it('should set the globalContext.extra object', function() { Raven.setExtraContext({name: 'Matt'}); @@ -2190,8 +2209,8 @@ describe('Raven (public API)', function() { it('should capture custom errors that extend the Error prototype', function() { function NotImplementedError(message) { - this.name = "NotImplementedError"; - this.message = message || ""; + this.name = 'NotImplementedError'; + this.message = message || ''; } NotImplementedError.prototype = Error.prototype;