mirror of
https://github.com/bakhirev/assayo.git
synced 2025-01-19 00:47:48 +00:00
3 lines
1.5 MiB
3 lines
1.5 MiB
/*! For license information please see main.0d32a6fa.js.LICENSE.txt */
|
|
(()=>{var __webpack_modules__={122:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});var a=n(98),o=n(289);class s{constructor(){this.timer=null,this.limit=6,this.messages=[],(0,a.rC)(this,{messages:a.LO,show:a.aD,startClearTimer:a.aD})}static getTime(){return(new Date).getTime()}show(e){this.messages.push({id:s.getTime(),title:o.Z.get((null===e||void 0===e?void 0:e.title)||e||"common.notifications.save"),description:(null===e||void 0===e?void 0:e.description)||"",type:(null===e||void 0===e?void 0:e.type)||"success"}),this.messages.length>this.limit&&this.messages.shift(),this.startClearTimer()}startClearTimer(){this.timer||(this.timer=setInterval((()=>{const e=s.getTime()-3500;this.messages=this.messages.filter((t=>(null===t||void 0===t?void 0:t.id)>e)),this.messages.length||(clearInterval(this.timer),this.timer=null)}),500))}}const r=new s},289:(e,t,n)=>{"use strict";n.d(t,{Z:()=>p,t:()=>u});var a=n(274),o=n(359),s=(0,o.Z)("addInTranslate"),r=(0,o.Z)("createPathByKey"),i=(0,o.Z)("addInObject");function l(e,t){const n=e.split(".");let a=this.translations;for(let o=0,s=n.length;o<s;o++)a[n[o]]=o===s-1?t:a[n[o]]||{},a=a[n[o]]}function c(e){const t=e.split(".");let n=this.translations;for(let a=0,o=t.length;a<o;a++)n[t[a]]=n[t[a]]||{},n=n[t[a]];return n}function m(e,t){for(let n in t)e[n]||(e[n]={}),"object"===typeof t[n]?(0,a.Z)(this,i)[i](e[n],t[n]):e[n]=t[n]}const d=new class{constructor(){Object.defineProperty(this,i,{value:m}),Object.defineProperty(this,r,{value:c}),Object.defineProperty(this,s,{value:l}),this.language="ru",this.translations={}}insertArguments(e,t){if(!t)return e;return(Array.isArray(t)?t:[t]).forEach(((t,n)=>{e=e.replace("$".concat(n+1),t||"_")})),e}get(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";const t=this.translations[this.language];if(!t)return e||"";let n=t[e];for(var a=arguments.length,o=new Array(a>1?a-1:0),s=1;s<a;s++)o[s-1]=arguments[s];if(n)return this.insertArguments(n,o);const r=e.split(".");n=t;for(let i=0,l=r.length;i<l;i++)if(n=n[r[i]],!n)return e||"";return this.insertArguments(n,o)}parse(e,t){t.split("\xa7 ").slice(1).forEach((t=>{let n=t.indexOf("\n");n===t.length-1&&(n=t.indexOf(":"));const o=e+"."+t.slice(0,n),r=t.slice(n+1).trim();(0,a.Z)(this,s)[s](o,r)}))}add(e,t){t?(0,a.Z)(this,i)[i]((0,a.Z)(this,r)[r](e),t):(0,a.Z)(this,i)[i](this.translations,e)}};window.localization=d;const p=d;function u(e){return d.get(e)}},575:(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";__webpack_require__.d(__webpack_exports__,{C:()=>applicationHasCustom,Z:()=>applyUrlCommands});var ts_helpers_Localization__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(289),ts_components_Notifications_store__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(122);function getParametersFromString(e){return Object.fromEntries((e||"").substring(1,1/0).split("&").map((e=>e.split("="))))}function getParametersFromURL(){const e={...getParametersFromString(location.search),...getParametersFromString(location.hash)};return delete e[""],e}function loadJsLocal(e,t){const n=document.createElement("script");n.src=e,n.async=!0,n.onload=t,n.onerror=()=>{ts_components_Notifications_store__WEBPACK_IMPORTED_MODULE_1__.Z.show("common.fileLoader.notification")},document.body.appendChild(n)}function loadJsLGlobal(url,callback){fetch(url).then((e=>e.text())).then((text=>text?"r"===text[0]?(eval(text),callback()):(window.report=text.split("\n"),void callback()):callback()))}function loadJsDump(e,t){"."===(null===e||void 0===e?void 0:e[0])?loadJsLocal(e,t):loadJsLGlobal(e,t)}function loadCssFile(e){const t=document.createElement("link");t.setAttribute("rel","stylesheet"),t.setAttribute("href",e),document.body.appendChild(t)}let applicationHasCustom={theme:!1,title:!1};function applyUrlCommands(e){const t=getParametersFromURL(),n=t.style||t.theme;n&&(loadCssFile(n),applicationHasCustom.theme=!0);const a=t.title;a&&(document.title=decodeURIComponent(a),applicationHasCustom.title=!0);const o=t.lang||t.language;o&&(ts_helpers_Localization__WEBPACK_IMPORTED_MODULE_0__.Z.language=o);const s=t.dump||t.log;s?loadJsDump(s,(()=>e(t))):e(t)}},98:(e,t,n)=>{"use strict";n.d(t,{Fl:()=>Ne,Gf:()=>zt,LO:()=>Ce,aD:()=>At,jQ:()=>Wt,le:()=>gt,rC:()=>cn});function a(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];throw new Error("number"===typeof e?"[MobX] minified error nr: "+e+(n.length?" "+n.map(String).join(","):"")+". Find the full error at: https://github.com/mobxjs/mobx/blob/main/packages/mobx/src/errors.ts":"[MobX] "+e)}var o={};function s(){return"undefined"!==typeof globalThis?globalThis:"undefined"!==typeof window?window:"undefined"!==typeof n.g?n.g:"undefined"!==typeof self?self:o}var r=Object.assign,i=Object.getOwnPropertyDescriptor,l=Object.defineProperty,c=Object.prototype,m=[];Object.freeze(m);var d={};Object.freeze(d);var p="undefined"!==typeof Proxy,u=Object.toString();function h(){p||a("Proxy not available")}function f(e){var t=!1;return function(){if(!t)return t=!0,e.apply(this,arguments)}}var g=function(){};function y(e){return"function"===typeof e}function v(e){switch(typeof e){case"string":case"symbol":case"number":return!0}return!1}function b(e){return null!==e&&"object"===typeof e}function w(e){if(!b(e))return!1;var t=Object.getPrototypeOf(e);if(null==t)return!0;var n=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;return"function"===typeof n&&n.toString()===u}function k(e){var t=null==e?void 0:e.constructor;return!!t&&("GeneratorFunction"===t.name||"GeneratorFunction"===t.displayName)}function x(e,t,n){l(e,t,{enumerable:!1,writable:!0,configurable:!0,value:n})}function _(e,t,n){l(e,t,{enumerable:!1,writable:!1,configurable:!0,value:n})}function T(e,t){var n="isMobX"+e;return t.prototype[n]=!0,function(e){return b(e)&&!0===e[n]}}function S(e){return e instanceof Map}function C(e){return e instanceof Set}var E="undefined"!==typeof Object.getOwnPropertySymbols;var j="undefined"!==typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:E?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames;function A(e){return null===e?null:"object"===typeof e?""+e:e}function N(e,t){return c.hasOwnProperty.call(e,t)}var D=Object.getOwnPropertyDescriptors||function(e){var t={};return j(e).forEach((function(n){t[n]=i(e,n)})),t};function O(e,t){for(var n=0;n<t.length;n++){var a=t[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}function R(e,t,n){return t&&O(e.prototype,t),n&&O(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function P(){return P=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e},P.apply(this,arguments)}function I(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,L(e,t)}function L(e,t){return L=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},L(e,t)}function F(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function M(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=new Array(t);n<t;n++)a[n]=e[n];return a}function W(e,t){var n="undefined"!==typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(n)return(n=n.call(e)).next.bind(n);if(Array.isArray(e)||(n=function(e,t){if(e){if("string"===typeof e)return M(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?M(e,t):void 0}}(e))||t&&e&&"number"===typeof e.length){n&&(e=n);var a=0;return function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var B=Symbol("mobx-stored-annotations");function z(e){return Object.assign((function(t,n){U(t,n,e)}),e)}function U(e,t,n){N(e,B)||x(e,B,P({},e[B])),function(e){return e.annotationType_===Z}(n)||(e[B][t]=n)}var H=Symbol("mobx administration"),G=function(){function e(e){void 0===e&&(e="Atom"),this.name_=void 0,this.isPendingUnobservation_=!1,this.isBeingObserved_=!1,this.observers_=new Set,this.diffValue_=0,this.lastAccessedBy_=0,this.lowestObserverState_=He.NOT_TRACKING_,this.onBOL=void 0,this.onBUOL=void 0,this.name_=e}var t=e.prototype;return t.onBO=function(){this.onBOL&&this.onBOL.forEach((function(e){return e()}))},t.onBUO=function(){this.onBUOL&&this.onBUOL.forEach((function(e){return e()}))},t.reportObserved=function(){return ht(this)},t.reportChanged=function(){pt(),ft(this),ut()},t.toString=function(){return this.name_},e}(),V=T("Atom",G);function K(e,t,n){void 0===t&&(t=g),void 0===n&&(n=g);var a,o=new G(e);return t!==g&&Ft(It,o,t,a),n!==g&&Lt(o,n),o}var $={identity:function(e,t){return e===t},structural:function(e,t){return aa(e,t)},default:function(e,t){return Object.is?Object.is(e,t):e===t?0!==e||1/e===1/t:e!==e&&t!==t},shallow:function(e,t){return aa(e,t,1)}};function q(e,t,n){return Jt(e)?e:Array.isArray(e)?Ce.array(e,{name:n}):w(e)?Ce.object(e,void 0,{name:n}):S(e)?Ce.map(e,{name:n}):C(e)?Ce.set(e,{name:n}):"function"!==typeof e||Dt(e)||Yt(e)?e:k(e)?$t(e):Nt(n,e)}function Y(e){return e}var Z="override";function J(e,t){return{annotationType_:e,options_:t,make_:X,extend_:Q}}function X(e,t,n,a){var o;if(null!=(o=this.options_)&&o.bound)return null===this.extend_(e,t,n,!1)?0:1;if(a===e.target_)return null===this.extend_(e,t,n,!1)?0:2;if(Dt(n.value))return 1;var s=ee(e,this,t,n,!1);return l(a,t,s),2}function Q(e,t,n,a){var o=ee(e,this,t,n);return e.defineProperty_(t,o,a)}function ee(e,t,n,a,o){var s,r,i,l,c,m,d,p;void 0===o&&(o=lt.safeDescriptors),p=a,t.annotationType_,p.value;var u,h=a.value;null!=(s=t.options_)&&s.bound&&(h=h.bind(null!=(u=e.proxy_)?u:e.target_));return{value:Le(null!=(r=null==(i=t.options_)?void 0:i.name)?r:n.toString(),h,null!=(l=null==(c=t.options_)?void 0:c.autoAction)&&l,null!=(m=t.options_)&&m.bound?null!=(d=e.proxy_)?d:e.target_:void 0),configurable:!o||e.isPlainObject_,enumerable:!1,writable:!o}}function te(e,t){return{annotationType_:e,options_:t,make_:ne,extend_:ae}}function ne(e,t,n,a){var o;if(a===e.target_)return null===this.extend_(e,t,n,!1)?0:2;if(null!=(o=this.options_)&&o.bound&&(!N(e.target_,t)||!Yt(e.target_[t]))&&null===this.extend_(e,t,n,!1))return 0;if(Yt(n.value))return 1;var s=oe(e,this,t,n,!1,!1);return l(a,t,s),2}function ae(e,t,n,a){var o,s=oe(e,this,t,n,null==(o=this.options_)?void 0:o.bound);return e.defineProperty_(t,s,a)}function oe(e,t,n,a,o,s){var r;void 0===s&&(s=lt.safeDescriptors),r=a,t.annotationType_,r.value;var i,l=a.value;(Yt(l)||(l=$t(l)),o)&&((l=l.bind(null!=(i=e.proxy_)?i:e.target_)).isMobXFlow=!0);return{value:l,configurable:!s||e.isPlainObject_,enumerable:!1,writable:!s}}function se(e,t){return{annotationType_:e,options_:t,make_:re,extend_:ie}}function re(e,t,n){return null===this.extend_(e,t,n,!1)?0:1}function ie(e,t,n,a){return function(e,t,n,a){t.annotationType_,a.get;0}(0,this,0,n),e.defineComputedProperty_(t,P({},this.options_,{get:n.get,set:n.set}),a)}function le(e,t){return{annotationType_:e,options_:t,make_:ce,extend_:me}}function ce(e,t,n){return null===this.extend_(e,t,n,!1)?0:1}function me(e,t,n,a){var o,s;return function(e,t,n,a){t.annotationType_;0}(0,this),e.defineObservableProperty_(t,n.value,null!=(o=null==(s=this.options_)?void 0:s.enhancer)?o:q,a)}var de=pe();function pe(e){return{annotationType_:"true",options_:e,make_:ue,extend_:he}}function ue(e,t,n,a){var o,s,r,i;if(n.get)return Ne.make_(e,t,n,a);if(n.set){var c=Le(t.toString(),n.set);return a===e.target_?null===e.defineProperty_(t,{configurable:!lt.safeDescriptors||e.isPlainObject_,set:c})?0:2:(l(a,t,{configurable:!0,set:c}),2)}if(a!==e.target_&&"function"===typeof n.value)return k(n.value)?(null!=(i=this.options_)&&i.autoBind?$t.bound:$t).make_(e,t,n,a):(null!=(r=this.options_)&&r.autoBind?Nt.bound:Nt).make_(e,t,n,a);var m,d=!1===(null==(o=this.options_)?void 0:o.deep)?Ce.ref:Ce;"function"===typeof n.value&&null!=(s=this.options_)&&s.autoBind&&(n.value=n.value.bind(null!=(m=e.proxy_)?m:e.target_));return d.make_(e,t,n,a)}function he(e,t,n,a){var o,s,r;if(n.get)return Ne.extend_(e,t,n,a);if(n.set)return e.defineProperty_(t,{configurable:!lt.safeDescriptors||e.isPlainObject_,set:Le(t.toString(),n.set)},a);"function"===typeof n.value&&null!=(o=this.options_)&&o.autoBind&&(n.value=n.value.bind(null!=(r=e.proxy_)?r:e.target_));return(!1===(null==(s=this.options_)?void 0:s.deep)?Ce.ref:Ce).extend_(e,t,n,a)}var fe={deep:!0,name:void 0,defaultDecorator:void 0,proxy:!0};function ge(e){return e||fe}Object.freeze(fe);var ye=le("observable"),ve=le("observable.ref",{enhancer:Y}),be=le("observable.shallow",{enhancer:function(e,t,n){return void 0===e||null===e||Bn(e)||_n(e)||Nn(e)||Rn(e)?e:Array.isArray(e)?Ce.array(e,{name:n,deep:!1}):w(e)?Ce.object(e,void 0,{name:n,deep:!1}):S(e)?Ce.map(e,{name:n,deep:!1}):C(e)?Ce.set(e,{name:n,deep:!1}):void 0}}),we=le("observable.struct",{enhancer:function(e,t){return aa(e,t)?t:e}}),ke=z(ye);function xe(e){return!0===e.deep?q:!1===e.deep?Y:function(e){var t,n;return e&&null!=(t=null==(n=e.options_)?void 0:n.enhancer)?t:q}(e.defaultDecorator)}function _e(e,t,n){if(!v(t))return Jt(e)?e:w(e)?Ce.object(e,t,n):Array.isArray(e)?Ce.array(e,t):S(e)?Ce.map(e,t):C(e)?Ce.set(e,t):"object"===typeof e&&null!==e?e:Ce.box(e,t);U(e,t,ye)}Object.assign(_e,ke);var Te,Se,Ce=r(_e,{box:function(e,t){var n=ge(t);return new Ue(e,xe(n),n.name,!0,n.equals)},array:function(e,t){var n=ge(t);return(!1===lt.useProxies||!1===n.proxy?Xn:hn)(e,xe(n),n.name)},map:function(e,t){var n=ge(t);return new An(e,xe(n),n.name)},set:function(e,t){var n=ge(t);return new On(e,xe(n),n.name)},object:function(e,t,n){return Bt(!1===lt.useProxies||!1===(null==n?void 0:n.proxy)?Fn({},n):function(e,t){var n,a;return h(),e=Fn(e,t),null!=(a=(n=e[H]).proxy_)?a:n.proxy_=new Proxy(e,tn)}({},n),e,t)},ref:z(ve),shallow:z(be),deep:ke,struct:z(we)}),Ee="computed",je=se(Ee),Ae=se("computed.struct",{equals:$.structural}),Ne=function(e,t){if(v(t))return U(e,t,je);if(w(e))return z(se(Ee,e));var n=w(t)?t:{};return n.get=e,n.name||(n.name=e.name||""),new Ve(n)};Object.assign(Ne,je),Ne.struct=z(Ae);var De,Oe=0,Re=1,Pe=null!=(Te=null==(Se=i((function(){}),"name"))?void 0:Se.configurable)&&Te,Ie={value:"action",configurable:!0,writable:!1,enumerable:!1};function Le(e,t,n,a){function o(){return Fe(e,n,t,a||this,arguments)}return void 0===n&&(n=!1),o.isMobxAction=!0,Pe&&(Ie.value=e,Object.defineProperty(o,"name",Ie)),o}function Fe(e,t,n,o,s){var r=function(e,t,n,a){var o=!1,s=0;0;var r=lt.trackingDerivation,i=!t||!r;pt();var l=lt.allowStateChanges;i&&(et(),l=We(!0));var c=nt(!0),m={runAsAction_:i,prevDerivation_:r,prevAllowStateChanges_:l,prevAllowStateReads_:c,notifySpy_:o,startTime_:s,actionId_:Re++,parentActionId_:Oe};return Oe=m.actionId_,m}(0,t);try{return n.apply(o,s)}catch(i){throw r.error_=i,i}finally{!function(e){Oe!==e.actionId_&&a(30);Oe=e.parentActionId_,void 0!==e.error_&&(lt.suppressReactionErrors=!0);Be(e.prevAllowStateChanges_),at(e.prevAllowStateReads_),ut(),e.runAsAction_&&tt(e.prevDerivation_);0;lt.suppressReactionErrors=!1}(r)}}function Me(e,t){var n=We(e);try{return t()}finally{Be(n)}}function We(e){var t=lt.allowStateChanges;return lt.allowStateChanges=e,t}function Be(e){lt.allowStateChanges=e}De=Symbol.toPrimitive;var ze,Ue=function(e){function t(t,n,a,o,s){var r;return void 0===a&&(a="ObservableValue"),void 0===o&&(o=!0),void 0===s&&(s=$.default),(r=e.call(this,a)||this).enhancer=void 0,r.name_=void 0,r.equals=void 0,r.hasUnreportedChange_=!1,r.interceptors_=void 0,r.changeListeners_=void 0,r.value_=void 0,r.dehancer=void 0,r.enhancer=n,r.name_=a,r.equals=s,r.value_=n(t,void 0,a),r}I(t,e);var n=t.prototype;return n.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},n.set=function(e){this.value_;if((e=this.prepareNewValue_(e))!==lt.UNCHANGED){0,this.setNewValue_(e)}},n.prepareNewValue_=function(e){if(Ze(this),nn(this)){var t=on(this,{object:this,type:dn,newValue:e});if(!t)return lt.UNCHANGED;e=t.newValue}return e=this.enhancer(e,this.value_,this.name_),this.equals(this.value_,e)?lt.UNCHANGED:e},n.setNewValue_=function(e){var t=this.value_;this.value_=e,this.reportChanged(),sn(this)&&ln(this,{type:dn,object:this,newValue:e,oldValue:t})},n.get=function(){return this.reportObserved(),this.dehanceValue(this.value_)},n.intercept_=function(e){return an(this,e)},n.observe_=function(e,t){return t&&e({observableKind:"value",debugObjectName:this.name_,object:this,type:dn,newValue:this.value_,oldValue:void 0}),rn(this,e)},n.raw=function(){return this.value_},n.toJSON=function(){return this.get()},n.toString=function(){return this.name_+"["+this.value_+"]"},n.valueOf=function(){return A(this.get())},n[De]=function(){return this.valueOf()},t}(G);ze=Symbol.toPrimitive;var He,Ge,Ve=function(){function e(e){this.dependenciesState_=He.NOT_TRACKING_,this.observing_=[],this.newObserving_=null,this.isBeingObserved_=!1,this.isPendingUnobservation_=!1,this.observers_=new Set,this.diffValue_=0,this.runId_=0,this.lastAccessedBy_=0,this.lowestObserverState_=He.UP_TO_DATE_,this.unboundDepsCount_=0,this.value_=new $e(null),this.name_=void 0,this.triggeredBy_=void 0,this.isComputing_=!1,this.isRunningSetter_=!1,this.derivation=void 0,this.setter_=void 0,this.isTracing_=Ge.NONE,this.scope_=void 0,this.equals_=void 0,this.requiresReaction_=void 0,this.keepAlive_=void 0,this.onBOL=void 0,this.onBUOL=void 0,e.get||a(31),this.derivation=e.get,this.name_=e.name||"ComputedValue",e.set&&(this.setter_=Le("ComputedValue-setter",e.set)),this.equals_=e.equals||(e.compareStructural||e.struct?$.structural:$.default),this.scope_=e.context,this.requiresReaction_=e.requiresReaction,this.keepAlive_=!!e.keepAlive}var t=e.prototype;return t.onBecomeStale_=function(){!function(e){if(e.lowestObserverState_!==He.UP_TO_DATE_)return;e.lowestObserverState_=He.POSSIBLY_STALE_,e.observers_.forEach((function(e){e.dependenciesState_===He.UP_TO_DATE_&&(e.dependenciesState_=He.POSSIBLY_STALE_,e.onBecomeStale_())}))}(this)},t.onBO=function(){this.onBOL&&this.onBOL.forEach((function(e){return e()}))},t.onBUO=function(){this.onBUOL&&this.onBUOL.forEach((function(e){return e()}))},t.get=function(){if(this.isComputing_&&a(32,this.name_,this.derivation),0!==lt.inBatch||0!==this.observers_.size||this.keepAlive_){if(ht(this),Ye(this)){var e=lt.trackingContext;this.keepAlive_&&!e&&(lt.trackingContext=this),this.trackAndCompute()&&function(e){if(e.lowestObserverState_===He.STALE_)return;e.lowestObserverState_=He.STALE_,e.observers_.forEach((function(t){t.dependenciesState_===He.POSSIBLY_STALE_?t.dependenciesState_=He.STALE_:t.dependenciesState_===He.UP_TO_DATE_&&(e.lowestObserverState_=He.UP_TO_DATE_)}))}(this),lt.trackingContext=e}}else Ye(this)&&(this.warnAboutUntrackedRead_(),pt(),this.value_=this.computeValue_(!1),ut());var t=this.value_;if(qe(t))throw t.cause;return t},t.set=function(e){if(this.setter_){this.isRunningSetter_&&a(33,this.name_),this.isRunningSetter_=!0;try{this.setter_.call(this.scope_,e)}finally{this.isRunningSetter_=!1}}else a(34,this.name_)},t.trackAndCompute=function(){var e=this.value_,t=this.dependenciesState_===He.NOT_TRACKING_,n=this.computeValue_(!0),a=t||qe(e)||qe(n)||!this.equals_(e,n);return a&&(this.value_=n),a},t.computeValue_=function(e){this.isComputing_=!0;var t,n=We(!1);if(e)t=Je(this,this.derivation,this.scope_);else if(!0===lt.disableErrorBoundaries)t=this.derivation.call(this.scope_);else try{t=this.derivation.call(this.scope_)}catch(a){t=new $e(a)}return Be(n),this.isComputing_=!1,t},t.suspend_=function(){this.keepAlive_||(Xe(this),this.value_=void 0)},t.observe_=function(e,t){var n=this,a=!0,o=void 0;return Ot((function(){var s=n.get();if(!a||t){var r=et();e({observableKind:"computed",debugObjectName:n.name_,type:dn,object:n,newValue:s,oldValue:o}),tt(r)}a=!1,o=s}))},t.warnAboutUntrackedRead_=function(){},t.toString=function(){return this.name_+"["+this.derivation.toString()+"]"},t.valueOf=function(){return A(this.get())},t[ze]=function(){return this.valueOf()},e}(),Ke=T("ComputedValue",Ve);!function(e){e[e.NOT_TRACKING_=-1]="NOT_TRACKING_",e[e.UP_TO_DATE_=0]="UP_TO_DATE_",e[e.POSSIBLY_STALE_=1]="POSSIBLY_STALE_",e[e.STALE_=2]="STALE_"}(He||(He={})),function(e){e[e.NONE=0]="NONE",e[e.LOG=1]="LOG",e[e.BREAK=2]="BREAK"}(Ge||(Ge={}));var $e=function(e){this.cause=void 0,this.cause=e};function qe(e){return e instanceof $e}function Ye(e){switch(e.dependenciesState_){case He.UP_TO_DATE_:return!1;case He.NOT_TRACKING_:case He.STALE_:return!0;case He.POSSIBLY_STALE_:for(var t=nt(!0),n=et(),a=e.observing_,o=a.length,s=0;s<o;s++){var r=a[s];if(Ke(r)){if(lt.disableErrorBoundaries)r.get();else try{r.get()}catch(i){return tt(n),at(t),!0}if(e.dependenciesState_===He.STALE_)return tt(n),at(t),!0}}return ot(e),tt(n),at(t),!1}}function Ze(e){}function Je(e,t,n){var a=nt(!0);ot(e),e.newObserving_=new Array(e.observing_.length+100),e.unboundDepsCount_=0,e.runId_=++lt.runId;var o,s=lt.trackingDerivation;if(lt.trackingDerivation=e,lt.inBatch++,!0===lt.disableErrorBoundaries)o=t.call(n);else try{o=t.call(n)}catch(r){o=new $e(r)}return lt.inBatch--,lt.trackingDerivation=s,function(e){for(var t=e.observing_,n=e.observing_=e.newObserving_,a=He.UP_TO_DATE_,o=0,s=e.unboundDepsCount_,r=0;r<s;r++){var i=n[r];0===i.diffValue_&&(i.diffValue_=1,o!==r&&(n[o]=i),o++),i.dependenciesState_>a&&(a=i.dependenciesState_)}n.length=o,e.newObserving_=null,s=t.length;for(;s--;){var l=t[s];0===l.diffValue_&&mt(l,e),l.diffValue_=0}for(;o--;){var c=n[o];1===c.diffValue_&&(c.diffValue_=0,ct(c,e))}a!==He.UP_TO_DATE_&&(e.dependenciesState_=a,e.onBecomeStale_())}(e),at(a),o}function Xe(e){var t=e.observing_;e.observing_=[];for(var n=t.length;n--;)mt(t[n],e);e.dependenciesState_=He.NOT_TRACKING_}function Qe(e){var t=et();try{return e()}finally{tt(t)}}function et(){var e=lt.trackingDerivation;return lt.trackingDerivation=null,e}function tt(e){lt.trackingDerivation=e}function nt(e){var t=lt.allowStateReads;return lt.allowStateReads=e,t}function at(e){lt.allowStateReads=e}function ot(e){if(e.dependenciesState_!==He.UP_TO_DATE_){e.dependenciesState_=He.UP_TO_DATE_;for(var t=e.observing_,n=t.length;n--;)t[n].lowestObserverState_=He.UP_TO_DATE_}}var st=function(){this.version=6,this.UNCHANGED={},this.trackingDerivation=null,this.trackingContext=null,this.runId=0,this.mobxGuid=0,this.inBatch=0,this.pendingUnobservations=[],this.pendingReactions=[],this.isRunningReactions=!1,this.allowStateChanges=!1,this.allowStateReads=!0,this.enforceActions=!0,this.spyListeners=[],this.globalReactionErrorHandlers=[],this.computedRequiresReaction=!1,this.reactionRequiresObservable=!1,this.observableRequiresReaction=!1,this.disableErrorBoundaries=!1,this.suppressReactionErrors=!1,this.useProxies=!0,this.verifyProxies=!1,this.safeDescriptors=!0},rt=!0,it=!1,lt=function(){var e=s();return e.__mobxInstanceCount>0&&!e.__mobxGlobals&&(rt=!1),e.__mobxGlobals&&e.__mobxGlobals.version!==(new st).version&&(rt=!1),rt?e.__mobxGlobals?(e.__mobxInstanceCount+=1,e.__mobxGlobals.UNCHANGED||(e.__mobxGlobals.UNCHANGED={}),e.__mobxGlobals):(e.__mobxInstanceCount=1,e.__mobxGlobals=new st):(setTimeout((function(){it||a(35)}),1),new st)}();function ct(e,t){e.observers_.add(t),e.lowestObserverState_>t.dependenciesState_&&(e.lowestObserverState_=t.dependenciesState_)}function mt(e,t){e.observers_.delete(t),0===e.observers_.size&&dt(e)}function dt(e){!1===e.isPendingUnobservation_&&(e.isPendingUnobservation_=!0,lt.pendingUnobservations.push(e))}function pt(){lt.inBatch++}function ut(){if(0===--lt.inBatch){vt();for(var e=lt.pendingUnobservations,t=0;t<e.length;t++){var n=e[t];n.isPendingUnobservation_=!1,0===n.observers_.size&&(n.isBeingObserved_&&(n.isBeingObserved_=!1,n.onBUO()),n instanceof Ve&&n.suspend_())}lt.pendingUnobservations=[]}}function ht(e){var t=lt.trackingDerivation;return null!==t?(t.runId_!==e.lastAccessedBy_&&(e.lastAccessedBy_=t.runId_,t.newObserving_[t.unboundDepsCount_++]=e,!e.isBeingObserved_&<.trackingContext&&(e.isBeingObserved_=!0,e.onBO())),e.isBeingObserved_):(0===e.observers_.size&<.inBatch>0&&dt(e),!1)}function ft(e){e.lowestObserverState_!==He.STALE_&&(e.lowestObserverState_=He.STALE_,e.observers_.forEach((function(e){e.dependenciesState_===He.UP_TO_DATE_&&e.onBecomeStale_(),e.dependenciesState_=He.STALE_})))}var gt=function(){function e(e,t,n,a){void 0===e&&(e="Reaction"),this.name_=void 0,this.onInvalidate_=void 0,this.errorHandler_=void 0,this.requiresObservable_=void 0,this.observing_=[],this.newObserving_=[],this.dependenciesState_=He.NOT_TRACKING_,this.diffValue_=0,this.runId_=0,this.unboundDepsCount_=0,this.isDisposed_=!1,this.isScheduled_=!1,this.isTrackPending_=!1,this.isRunning_=!1,this.isTracing_=Ge.NONE,this.name_=e,this.onInvalidate_=t,this.errorHandler_=n,this.requiresObservable_=a}var t=e.prototype;return t.onBecomeStale_=function(){this.schedule_()},t.schedule_=function(){this.isScheduled_||(this.isScheduled_=!0,lt.pendingReactions.push(this),vt())},t.isScheduled=function(){return this.isScheduled_},t.runReaction_=function(){if(!this.isDisposed_){pt(),this.isScheduled_=!1;var e=lt.trackingContext;if(lt.trackingContext=this,Ye(this)){this.isTrackPending_=!0;try{this.onInvalidate_()}catch(t){this.reportExceptionInDerivation_(t)}}lt.trackingContext=e,ut()}},t.track=function(e){if(!this.isDisposed_){pt();0,this.isRunning_=!0;var t=lt.trackingContext;lt.trackingContext=this;var n=Je(this,e,void 0);lt.trackingContext=t,this.isRunning_=!1,this.isTrackPending_=!1,this.isDisposed_&&Xe(this),qe(n)&&this.reportExceptionInDerivation_(n.cause),ut()}},t.reportExceptionInDerivation_=function(e){var t=this;if(this.errorHandler_)this.errorHandler_(e,this);else{if(lt.disableErrorBoundaries)throw e;var n="[mobx] uncaught error in '"+this+"'";lt.suppressReactionErrors||console.error(n,e),lt.globalReactionErrorHandlers.forEach((function(n){return n(e,t)}))}},t.dispose=function(){this.isDisposed_||(this.isDisposed_=!0,this.isRunning_||(pt(),Xe(this),ut()))},t.getDisposer_=function(){var e=this.dispose.bind(this);return e[H]=this,e},t.toString=function(){return"Reaction["+this.name_+"]"},t.trace=function(e){void 0===e&&(e=!1),function(){a("trace() is not available in production builds");for(var e=!1,t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];"boolean"===typeof n[n.length-1]&&(e=n.pop());var s=Xt(n);if(!s)return a("'trace(break?)' can only be used inside a tracked computed value or a Reaction. Consider passing in the computed value or reaction explicitly");s.isTracing_===Ge.NONE&&console.log("[mobx.trace] '"+s.name_+"' tracing enabled");s.isTracing_=e?Ge.BREAK:Ge.LOG}(this,e)},e}();var yt=function(e){return e()};function vt(){lt.inBatch>0||lt.isRunningReactions||yt(bt)}function bt(){lt.isRunningReactions=!0;for(var e=lt.pendingReactions,t=0;e.length>0;){100===++t&&(console.error("[mobx] cycle in reaction: "+e[0]),e.splice(0));for(var n=e.splice(0),a=0,o=n.length;a<o;a++)n[a].runReaction_()}lt.isRunningReactions=!1}var wt=T("Reaction",gt);var kt="action",xt="autoAction",_t="<unnamed action>",Tt=J(kt),St=J("action.bound",{bound:!0}),Ct=J(xt,{autoAction:!0}),Et=J("autoAction.bound",{autoAction:!0,bound:!0});function jt(e){return function(t,n){return y(t)?Le(t.name||_t,t,e):y(n)?Le(t,n,e):v(n)?U(t,n,e?Ct:Tt):v(t)?z(J(e?xt:kt,{name:t,autoAction:e})):void 0}}var At=jt(!1);Object.assign(At,Tt);var Nt=jt(!0);function Dt(e){return y(e)&&!0===e.isMobxAction}function Ot(e,t){var n,a;void 0===t&&(t=d);var o,s=null!=(n=null==(a=t)?void 0:a.name)?n:"Autorun";if(!t.scheduler&&!t.delay)o=new gt(s,(function(){this.track(l)}),t.onError,t.requiresObservable);else{var r=Pt(t),i=!1;o=new gt(s,(function(){i||(i=!0,r((function(){i=!1,o.isDisposed_||o.track(l)})))}),t.onError,t.requiresObservable)}function l(){e(o)}return o.schedule_(),o.getDisposer_()}Object.assign(Nt,Ct),At.bound=z(St),Nt.bound=z(Et);var Rt=function(e){return e()};function Pt(e){return e.scheduler?e.scheduler:e.delay?function(t){return setTimeout(t,e.delay)}:Rt}var It="onBO";function Lt(e,t,n){return Ft("onBUO",e,t,n)}function Ft(e,t,n,a){var o="function"===typeof a?Qn(t,n):Qn(t),s=y(a)?a:n,r=e+"L";return o[r]?o[r].add(s):o[r]=new Set([s]),function(){var e=o[r];e&&(e.delete(s),0===e.size&&delete o[r])}}var Mt="always";function Wt(e){!0===e.isolateGlobalState&&function(){if((lt.pendingReactions.length||lt.inBatch||lt.isRunningReactions)&&a(36),it=!0,rt){var e=s();0===--e.__mobxInstanceCount&&(e.__mobxGlobals=void 0),lt=new st}}();var t=e.useProxies,n=e.enforceActions;if(void 0!==t&&(lt.useProxies=t===Mt||"never"!==t&&"undefined"!==typeof Proxy),"ifavailable"===t&&(lt.verifyProxies=!0),void 0!==n){var o=n===Mt?Mt:"observed"===n;lt.enforceActions=o,lt.allowStateChanges=!0!==o&&o!==Mt}["computedRequiresReaction","reactionRequiresObservable","observableRequiresReaction","disableErrorBoundaries","safeDescriptors"].forEach((function(t){t in e&&(lt[t]=!!e[t])})),lt.allowStateReads=!lt.observableRequiresReaction,e.reactionScheduler&&function(e){var t=yt;yt=function(n){return e((function(){return t(n)}))}}(e.reactionScheduler)}function Bt(e,t,n,a){var o=D(t),s=Fn(e,a)[H];pt();try{j(o).forEach((function(e){s.extend_(e,o[e],!n||(!(e in n)||n[e]))}))}finally{ut()}return e}function zt(e,t){return Ut(Qn(e,t))}function Ut(e){var t,n={name:e.name_};return e.observing_&&e.observing_.length>0&&(n.dependencies=(t=e.observing_,Array.from(new Set(t))).map(Ut)),n}var Ht=0;function Gt(){this.message="FLOW_CANCELLED"}Gt.prototype=Object.create(Error.prototype);var Vt=te("flow"),Kt=te("flow.bound",{bound:!0}),$t=Object.assign((function(e,t){if(v(t))return U(e,t,Vt);var n=e,a=n.name||"<unnamed flow>",o=function(){var e,t=this,o=arguments,s=++Ht,r=At(a+" - runid: "+s+" - init",n).apply(t,o),i=void 0,l=new Promise((function(t,n){var o=0;function l(e){var t;i=void 0;try{t=At(a+" - runid: "+s+" - yield "+o++,r.next).call(r,e)}catch(l){return n(l)}m(t)}function c(e){var t;i=void 0;try{t=At(a+" - runid: "+s+" - yield "+o++,r.throw).call(r,e)}catch(l){return n(l)}m(t)}function m(e){if(!y(null==e?void 0:e.then))return e.done?t(e.value):(i=Promise.resolve(e.value)).then(l,c);e.then(m,n)}e=n,l(void 0)}));return l.cancel=At(a+" - runid: "+s+" - cancel",(function(){try{i&&qt(i);var t=r.return(void 0),n=Promise.resolve(t.value);n.then(g,g),qt(n),e(new Gt)}catch(a){e(a)}})),l};return o.isMobXFlow=!0,o}),Vt);function qt(e){y(e.cancel)&&e.cancel()}function Yt(e){return!0===(null==e?void 0:e.isMobXFlow)}function Zt(e,t){return!!e&&(void 0!==t?!!Bn(e)&&e[H].values_.has(t):Bn(e)||!!e[H]||V(e)||wt(e)||Ke(e))}function Jt(e){return Zt(e)}function Xt(e){switch(e.length){case 0:return lt.trackingDerivation;case 1:return Qn(e[0]);case 2:return Qn(e[0],e[1])}}function Qt(e,t){void 0===t&&(t=void 0),pt();try{return e.apply(t)}finally{ut()}}function en(e){return e[H]}$t.bound=z(Kt);var tn={has:function(e,t){return en(e).has_(t)},get:function(e,t){return en(e).get_(t)},set:function(e,t,n){var a;return!!v(t)&&(null==(a=en(e).set_(t,n,!0))||a)},deleteProperty:function(e,t){var n;return!!v(t)&&(null==(n=en(e).delete_(t,!0))||n)},defineProperty:function(e,t,n){var a;return null==(a=en(e).defineProperty_(t,n))||a},ownKeys:function(e){return en(e).ownKeys_()},preventExtensions:function(e){a(13)}};function nn(e){return void 0!==e.interceptors_&&e.interceptors_.length>0}function an(e,t){var n=e.interceptors_||(e.interceptors_=[]);return n.push(t),f((function(){var e=n.indexOf(t);-1!==e&&n.splice(e,1)}))}function on(e,t){var n=et();try{for(var o=[].concat(e.interceptors_||[]),s=0,r=o.length;s<r&&((t=o[s](t))&&!t.type&&a(14),t);s++);return t}finally{tt(n)}}function sn(e){return void 0!==e.changeListeners_&&e.changeListeners_.length>0}function rn(e,t){var n=e.changeListeners_||(e.changeListeners_=[]);return n.push(t),f((function(){var e=n.indexOf(t);-1!==e&&n.splice(e,1)}))}function ln(e,t){var n=et(),a=e.changeListeners_;if(a){for(var o=0,s=(a=a.slice()).length;o<s;o++)a[o](t);tt(n)}}function cn(e,t,n){var a=Fn(e,n)[H];pt();try{0,null!=t||(t=function(e){return N(e,B)||x(e,B,P({},e[B])),e[B]}(e)),j(t).forEach((function(e){return a.make_(e,t[e])}))}finally{ut()}return e}var mn="splice",dn="update",pn={get:function(e,t){var n=e[H];return t===H?n:"length"===t?n.getArrayLength_():"string"!==typeof t||isNaN(t)?N(fn,t)?fn[t]:e[t]:n.get_(parseInt(t))},set:function(e,t,n){var a=e[H];return"length"===t&&a.setArrayLength_(n),"symbol"===typeof t||isNaN(t)?e[t]=n:a.set_(parseInt(t),n),!0},preventExtensions:function(){a(15)}},un=function(){function e(e,t,n,a){void 0===e&&(e="ObservableArray"),this.owned_=void 0,this.legacyMode_=void 0,this.atom_=void 0,this.values_=[],this.interceptors_=void 0,this.changeListeners_=void 0,this.enhancer_=void 0,this.dehancer=void 0,this.proxy_=void 0,this.lastKnownLength_=0,this.owned_=n,this.legacyMode_=a,this.atom_=new G(e),this.enhancer_=function(e,n){return t(e,n,"ObservableArray[..]")}}var t=e.prototype;return t.dehanceValue_=function(e){return void 0!==this.dehancer?this.dehancer(e):e},t.dehanceValues_=function(e){return void 0!==this.dehancer&&e.length>0?e.map(this.dehancer):e},t.intercept_=function(e){return an(this,e)},t.observe_=function(e,t){return void 0===t&&(t=!1),t&&e({observableKind:"array",object:this.proxy_,debugObjectName:this.atom_.name_,type:"splice",index:0,added:this.values_.slice(),addedCount:this.values_.length,removed:[],removedCount:0}),rn(this,e)},t.getArrayLength_=function(){return this.atom_.reportObserved(),this.values_.length},t.setArrayLength_=function(e){("number"!==typeof e||isNaN(e)||e<0)&&a("Out of range: "+e);var t=this.values_.length;if(e!==t)if(e>t){for(var n=new Array(e-t),o=0;o<e-t;o++)n[o]=void 0;this.spliceWithArray_(t,0,n)}else this.spliceWithArray_(e,t-e)},t.updateArrayLength_=function(e,t){e!==this.lastKnownLength_&&a(16),this.lastKnownLength_+=t,this.legacyMode_&&t>0&&Jn(e+t+1)},t.spliceWithArray_=function(e,t,n){var a=this;this.atom_;var o=this.values_.length;if(void 0===e?e=0:e>o?e=o:e<0&&(e=Math.max(0,o+e)),t=1===arguments.length?o-e:void 0===t||null===t?0:Math.max(0,Math.min(t,o-e)),void 0===n&&(n=m),nn(this)){var s=on(this,{object:this.proxy_,type:mn,index:e,removedCount:t,added:n});if(!s)return m;t=s.removedCount,n=s.added}if(n=0===n.length?n:n.map((function(e){return a.enhancer_(e,void 0)})),this.legacyMode_){var r=n.length-t;this.updateArrayLength_(o,r)}var i=this.spliceItemsIntoValues_(e,t,n);return 0===t&&0===n.length||this.notifyArraySplice_(e,n,i),this.dehanceValues_(i)},t.spliceItemsIntoValues_=function(e,t,n){var a;if(n.length<1e4)return(a=this.values_).splice.apply(a,[e,t].concat(n));var o=this.values_.slice(e,e+t),s=this.values_.slice(e+t);this.values_.length+=n.length-t;for(var r=0;r<n.length;r++)this.values_[e+r]=n[r];for(var i=0;i<s.length;i++)this.values_[e+n.length+i]=s[i];return o},t.notifyArrayChildUpdate_=function(e,t,n){var a=!this.owned_&&!1,o=sn(this),s=o||a?{observableKind:"array",object:this.proxy_,type:dn,debugObjectName:this.atom_.name_,index:e,newValue:t,oldValue:n}:null;this.atom_.reportChanged(),o&&ln(this,s)},t.notifyArraySplice_=function(e,t,n){var a=!this.owned_&&!1,o=sn(this),s=o||a?{observableKind:"array",object:this.proxy_,debugObjectName:this.atom_.name_,type:mn,index:e,removed:n,added:t,removedCount:n.length,addedCount:t.length}:null;this.atom_.reportChanged(),o&&ln(this,s)},t.get_=function(e){if(!(this.legacyMode_&&e>=this.values_.length))return this.atom_.reportObserved(),this.dehanceValue_(this.values_[e]);console.warn("[mobx] Out of bounds read: "+e)},t.set_=function(e,t){var n=this.values_;if(this.legacyMode_&&e>n.length&&a(17,e,n.length),e<n.length){this.atom_;var o=n[e];if(nn(this)){var s=on(this,{type:dn,object:this.proxy_,index:e,newValue:t});if(!s)return;t=s.newValue}(t=this.enhancer_(t,o))!==o&&(n[e]=t,this.notifyArrayChildUpdate_(e,t,o))}else{for(var r=new Array(e+1-n.length),i=0;i<r.length-1;i++)r[i]=void 0;r[r.length-1]=t,this.spliceWithArray_(n.length,0,r)}},e}();function hn(e,t,n,a){void 0===n&&(n="ObservableArray"),void 0===a&&(a=!1),h();var o=new un(n,t,a,!1);_(o.values_,H,o);var s=new Proxy(o.values_,pn);if(o.proxy_=s,e&&e.length){var r=We(!0);o.spliceWithArray_(0,0,e),Be(r)}return s}var fn={clear:function(){return this.splice(0)},replace:function(e){var t=this[H];return t.spliceWithArray_(0,t.values_.length,e)},toJSON:function(){return this.slice()},splice:function(e,t){for(var n=arguments.length,a=new Array(n>2?n-2:0),o=2;o<n;o++)a[o-2]=arguments[o];var s=this[H];switch(arguments.length){case 0:return[];case 1:return s.spliceWithArray_(e);case 2:return s.spliceWithArray_(e,t)}return s.spliceWithArray_(e,t,a)},spliceWithArray:function(e,t,n){return this[H].spliceWithArray_(e,t,n)},push:function(){for(var e=this[H],t=arguments.length,n=new Array(t),a=0;a<t;a++)n[a]=arguments[a];return e.spliceWithArray_(e.values_.length,0,n),e.values_.length},pop:function(){return this.splice(Math.max(this[H].values_.length-1,0),1)[0]},shift:function(){return this.splice(0,1)[0]},unshift:function(){for(var e=this[H],t=arguments.length,n=new Array(t),a=0;a<t;a++)n[a]=arguments[a];return e.spliceWithArray_(0,0,n),e.values_.length},reverse:function(){return lt.trackingDerivation&&a(37,"reverse"),this.replace(this.slice().reverse()),this},sort:function(){lt.trackingDerivation&&a(37,"sort");var e=this.slice();return e.sort.apply(e,arguments),this.replace(e),this},remove:function(e){var t=this[H],n=t.dehanceValues_(t.values_).indexOf(e);return n>-1&&(this.splice(n,1),!0)}};function gn(e,t){"function"===typeof Array.prototype[e]&&(fn[e]=t(e))}function yn(e){return function(){var t=this[H];t.atom_.reportObserved();var n=t.dehanceValues_(t.values_);return n[e].apply(n,arguments)}}function vn(e){return function(t,n){var a=this,o=this[H];return o.atom_.reportObserved(),o.dehanceValues_(o.values_)[e]((function(e,o){return t.call(n,e,o,a)}))}}function bn(e){return function(){var t=this,n=this[H];n.atom_.reportObserved();var a=n.dehanceValues_(n.values_),o=arguments[0];return arguments[0]=function(e,n,a){return o(e,n,a,t)},a[e].apply(a,arguments)}}gn("concat",yn),gn("flat",yn),gn("includes",yn),gn("indexOf",yn),gn("join",yn),gn("lastIndexOf",yn),gn("slice",yn),gn("toString",yn),gn("toLocaleString",yn),gn("every",vn),gn("filter",vn),gn("find",vn),gn("findIndex",vn),gn("flatMap",vn),gn("forEach",vn),gn("map",vn),gn("some",vn),gn("reduce",bn),gn("reduceRight",bn);var wn,kn,xn=T("ObservableArrayAdministration",un);function _n(e){return b(e)&&xn(e[H])}var Tn={},Sn="add",Cn="delete";wn=Symbol.iterator,kn=Symbol.toStringTag;var En,jn,An=function(){function e(e,t,n){var o=this;void 0===t&&(t=q),void 0===n&&(n="ObservableMap"),this.enhancer_=void 0,this.name_=void 0,this[H]=Tn,this.data_=void 0,this.hasMap_=void 0,this.keysAtom_=void 0,this.interceptors_=void 0,this.changeListeners_=void 0,this.dehancer=void 0,this.enhancer_=t,this.name_=n,y(Map)||a(18),this.keysAtom_=K("ObservableMap.keys()"),this.data_=new Map,this.hasMap_=new Map,Me(!0,(function(){o.merge(e)}))}var t=e.prototype;return t.has_=function(e){return this.data_.has(e)},t.has=function(e){var t=this;if(!lt.trackingDerivation)return this.has_(e);var n=this.hasMap_.get(e);if(!n){var a=n=new Ue(this.has_(e),Y,"ObservableMap.key?",!1);this.hasMap_.set(e,a),Lt(a,(function(){return t.hasMap_.delete(e)}))}return n.get()},t.set=function(e,t){var n=this.has_(e);if(nn(this)){var a=on(this,{type:n?dn:Sn,object:this,newValue:t,name:e});if(!a)return this;t=a.newValue}return n?this.updateValue_(e,t):this.addValue_(e,t),this},t.delete=function(e){var t=this;if((this.keysAtom_,nn(this))&&!on(this,{type:Cn,object:this,name:e}))return!1;if(this.has_(e)){var n=sn(this),a=n?{observableKind:"map",debugObjectName:this.name_,type:Cn,object:this,oldValue:this.data_.get(e).value_,name:e}:null;return Qt((function(){var n;t.keysAtom_.reportChanged(),null==(n=t.hasMap_.get(e))||n.setNewValue_(!1),t.data_.get(e).setNewValue_(void 0),t.data_.delete(e)})),n&&ln(this,a),!0}return!1},t.updateValue_=function(e,t){var n=this.data_.get(e);if((t=n.prepareNewValue_(t))!==lt.UNCHANGED){var a=sn(this),o=a?{observableKind:"map",debugObjectName:this.name_,type:dn,object:this,oldValue:n.value_,name:e,newValue:t}:null;0,n.setNewValue_(t),a&&ln(this,o)}},t.addValue_=function(e,t){var n=this;this.keysAtom_,Qt((function(){var a,o=new Ue(t,n.enhancer_,"ObservableMap.key",!1);n.data_.set(e,o),t=o.value_,null==(a=n.hasMap_.get(e))||a.setNewValue_(!0),n.keysAtom_.reportChanged()}));var a=sn(this),o=a?{observableKind:"map",debugObjectName:this.name_,type:Sn,object:this,name:e,newValue:t}:null;a&&ln(this,o)},t.get=function(e){return this.has(e)?this.dehanceValue_(this.data_.get(e).get()):this.dehanceValue_(void 0)},t.dehanceValue_=function(e){return void 0!==this.dehancer?this.dehancer(e):e},t.keys=function(){return this.keysAtom_.reportObserved(),this.data_.keys()},t.values=function(){var e=this,t=this.keys();return ra({next:function(){var n=t.next(),a=n.done,o=n.value;return{done:a,value:a?void 0:e.get(o)}}})},t.entries=function(){var e=this,t=this.keys();return ra({next:function(){var n=t.next(),a=n.done,o=n.value;return{done:a,value:a?void 0:[o,e.get(o)]}}})},t[wn]=function(){return this.entries()},t.forEach=function(e,t){for(var n,a=W(this);!(n=a()).done;){var o=n.value,s=o[0],r=o[1];e.call(t,r,s,this)}},t.merge=function(e){var t=this;return Nn(e)&&(e=new Map(e)),Qt((function(){w(e)?function(e){var t=Object.keys(e);if(!E)return t;var n=Object.getOwnPropertySymbols(e);return n.length?[].concat(t,n.filter((function(t){return c.propertyIsEnumerable.call(e,t)}))):t}(e).forEach((function(n){return t.set(n,e[n])})):Array.isArray(e)?e.forEach((function(e){var n=e[0],a=e[1];return t.set(n,a)})):S(e)?(e.constructor!==Map&&a(19,e),e.forEach((function(e,n){return t.set(n,e)}))):null!==e&&void 0!==e&&a(20,e)})),this},t.clear=function(){var e=this;Qt((function(){Qe((function(){for(var t,n=W(e.keys());!(t=n()).done;){var a=t.value;e.delete(a)}}))}))},t.replace=function(e){var t=this;return Qt((function(){for(var n,o=function(e){if(S(e)||Nn(e))return e;if(Array.isArray(e))return new Map(e);if(w(e)){var t=new Map;for(var n in e)t.set(n,e[n]);return t}return a(21,e)}(e),s=new Map,r=!1,i=W(t.data_.keys());!(n=i()).done;){var l=n.value;if(!o.has(l))if(t.delete(l))r=!0;else{var c=t.data_.get(l);s.set(l,c)}}for(var m,d=W(o.entries());!(m=d()).done;){var p=m.value,u=p[0],h=p[1],f=t.data_.has(u);if(t.set(u,h),t.data_.has(u)){var g=t.data_.get(u);s.set(u,g),f||(r=!0)}}if(!r)if(t.data_.size!==s.size)t.keysAtom_.reportChanged();else for(var y=t.data_.keys(),v=s.keys(),b=y.next(),k=v.next();!b.done;){if(b.value!==k.value){t.keysAtom_.reportChanged();break}b=y.next(),k=v.next()}t.data_=s})),this},t.toString=function(){return"[object ObservableMap]"},t.toJSON=function(){return Array.from(this)},t.observe_=function(e,t){return rn(this,e)},t.intercept_=function(e){return an(this,e)},R(e,[{key:"size",get:function(){return this.keysAtom_.reportObserved(),this.data_.size}},{key:kn,get:function(){return"Map"}}]),e}(),Nn=T("ObservableMap",An);var Dn={};En=Symbol.iterator,jn=Symbol.toStringTag;var On=function(){function e(e,t,n){void 0===t&&(t=q),void 0===n&&(n="ObservableSet"),this.name_=void 0,this[H]=Dn,this.data_=new Set,this.atom_=void 0,this.changeListeners_=void 0,this.interceptors_=void 0,this.dehancer=void 0,this.enhancer_=void 0,this.name_=n,y(Set)||a(22),this.atom_=K(this.name_),this.enhancer_=function(e,a){return t(e,a,n)},e&&this.replace(e)}var t=e.prototype;return t.dehanceValue_=function(e){return void 0!==this.dehancer?this.dehancer(e):e},t.clear=function(){var e=this;Qt((function(){Qe((function(){for(var t,n=W(e.data_.values());!(t=n()).done;){var a=t.value;e.delete(a)}}))}))},t.forEach=function(e,t){for(var n,a=W(this);!(n=a()).done;){var o=n.value;e.call(t,o,o,this)}},t.add=function(e){var t=this;if((this.atom_,nn(this))&&!on(this,{type:Sn,object:this,newValue:e}))return this;if(!this.has(e)){Qt((function(){t.data_.add(t.enhancer_(e,void 0)),t.atom_.reportChanged()}));var n=!1,a=sn(this),o=a?{observableKind:"set",debugObjectName:this.name_,type:Sn,object:this,newValue:e}:null;n,a&&ln(this,o)}return this},t.delete=function(e){var t=this;if(nn(this)&&!on(this,{type:Cn,object:this,oldValue:e}))return!1;if(this.has(e)){var n=sn(this),a=n?{observableKind:"set",debugObjectName:this.name_,type:Cn,object:this,oldValue:e}:null;return Qt((function(){t.atom_.reportChanged(),t.data_.delete(e)})),n&&ln(this,a),!0}return!1},t.has=function(e){return this.atom_.reportObserved(),this.data_.has(this.dehanceValue_(e))},t.entries=function(){var e=0,t=Array.from(this.keys()),n=Array.from(this.values());return ra({next:function(){var a=e;return e+=1,a<n.length?{value:[t[a],n[a]],done:!1}:{done:!0}}})},t.keys=function(){return this.values()},t.values=function(){this.atom_.reportObserved();var e=this,t=0,n=Array.from(this.data_.values());return ra({next:function(){return t<n.length?{value:e.dehanceValue_(n[t++]),done:!1}:{done:!0}}})},t.replace=function(e){var t=this;return Rn(e)&&(e=new Set(e)),Qt((function(){Array.isArray(e)||C(e)?(t.clear(),e.forEach((function(e){return t.add(e)}))):null!==e&&void 0!==e&&a("Cannot initialize set from "+e)})),this},t.observe_=function(e,t){return rn(this,e)},t.intercept_=function(e){return an(this,e)},t.toJSON=function(){return Array.from(this)},t.toString=function(){return"[object ObservableSet]"},t[En]=function(){return this.values()},R(e,[{key:"size",get:function(){return this.atom_.reportObserved(),this.data_.size}},{key:jn,get:function(){return"Set"}}]),e}(),Rn=T("ObservableSet",On),Pn=Object.create(null),In="remove",Ln=function(){function e(e,t,n,a){void 0===t&&(t=new Map),void 0===a&&(a=de),this.target_=void 0,this.values_=void 0,this.name_=void 0,this.defaultAnnotation_=void 0,this.keysAtom_=void 0,this.changeListeners_=void 0,this.interceptors_=void 0,this.proxy_=void 0,this.isPlainObject_=void 0,this.appliedAnnotations_=void 0,this.pendingKeys_=void 0,this.target_=e,this.values_=t,this.name_=n,this.defaultAnnotation_=a,this.keysAtom_=new G("ObservableObject.keys"),this.isPlainObject_=w(this.target_)}var t=e.prototype;return t.getObservablePropValue_=function(e){return this.values_.get(e).get()},t.setObservablePropValue_=function(e,t){var n=this.values_.get(e);if(n instanceof Ve)return n.set(t),!0;if(nn(this)){var a=on(this,{type:dn,object:this.proxy_||this.target_,name:e,newValue:t});if(!a)return null;t=a.newValue}if((t=n.prepareNewValue_(t))!==lt.UNCHANGED){var o=sn(this),s=o?{type:dn,observableKind:"object",debugObjectName:this.name_,object:this.proxy_||this.target_,oldValue:n.value_,name:e,newValue:t}:null;0,n.setNewValue_(t),o&&ln(this,s)}return!0},t.get_=function(e){return lt.trackingDerivation&&!N(this.target_,e)&&this.has_(e),this.target_[e]},t.set_=function(e,t,n){return void 0===n&&(n=!1),N(this.target_,e)?this.values_.has(e)?this.setObservablePropValue_(e,t):n?Reflect.set(this.target_,e,t):(this.target_[e]=t,!0):this.extend_(e,{value:t,enumerable:!0,writable:!0,configurable:!0},this.defaultAnnotation_,n)},t.has_=function(e){if(!lt.trackingDerivation)return e in this.target_;this.pendingKeys_||(this.pendingKeys_=new Map);var t=this.pendingKeys_.get(e);return t||(t=new Ue(e in this.target_,Y,"ObservableObject.key?",!1),this.pendingKeys_.set(e,t)),t.get()},t.make_=function(e,t){if(!0===t&&(t=this.defaultAnnotation_),!1!==t){if(Un(this,t,e),!(e in this.target_)){var n;if(null!=(n=this.target_[B])&&n[e])return;a(1,t.annotationType_,this.name_+"."+e.toString())}for(var o=this.target_;o&&o!==c;){var s=i(o,e);if(s){var r=t.make_(this,e,s,o);if(0===r)return;if(1===r)break}o=Object.getPrototypeOf(o)}zn(this,t,e)}},t.extend_=function(e,t,n,a){if(void 0===a&&(a=!1),!0===n&&(n=this.defaultAnnotation_),!1===n)return this.defineProperty_(e,t,a);Un(this,n,e);var o=n.extend_(this,e,t,a);return o&&zn(this,n,e),o},t.defineProperty_=function(e,t,n){void 0===n&&(n=!1);try{pt();var a=this.delete_(e);if(!a)return a;if(nn(this)){var o=on(this,{object:this.proxy_||this.target_,name:e,type:Sn,newValue:t.value});if(!o)return null;var s=o.newValue;t.value!==s&&(t=P({},t,{value:s}))}if(n){if(!Reflect.defineProperty(this.target_,e,t))return!1}else l(this.target_,e,t);this.notifyPropertyAddition_(e,t.value)}finally{ut()}return!0},t.defineObservableProperty_=function(e,t,n,a){void 0===a&&(a=!1);try{pt();var o=this.delete_(e);if(!o)return o;if(nn(this)){var s=on(this,{object:this.proxy_||this.target_,name:e,type:Sn,newValue:t});if(!s)return null;t=s.newValue}var r=Wn(e),i={configurable:!lt.safeDescriptors||this.isPlainObject_,enumerable:!0,get:r.get,set:r.set};if(a){if(!Reflect.defineProperty(this.target_,e,i))return!1}else l(this.target_,e,i);var c=new Ue(t,n,"ObservableObject.key",!1);this.values_.set(e,c),this.notifyPropertyAddition_(e,c.value_)}finally{ut()}return!0},t.defineComputedProperty_=function(e,t,n){void 0===n&&(n=!1);try{pt();var a=this.delete_(e);if(!a)return a;if(nn(this))if(!on(this,{object:this.proxy_||this.target_,name:e,type:Sn,newValue:void 0}))return null;t.name||(t.name="ObservableObject.key"),t.context=this.proxy_||this.target_;var o=Wn(e),s={configurable:!lt.safeDescriptors||this.isPlainObject_,enumerable:!1,get:o.get,set:o.set};if(n){if(!Reflect.defineProperty(this.target_,e,s))return!1}else l(this.target_,e,s);this.values_.set(e,new Ve(t)),this.notifyPropertyAddition_(e,void 0)}finally{ut()}return!0},t.delete_=function(e,t){if(void 0===t&&(t=!1),!N(this.target_,e))return!0;if(nn(this)&&!on(this,{object:this.proxy_||this.target_,name:e,type:In}))return null;try{var n,a;pt();var o,s=sn(this),r=this.values_.get(e),l=void 0;if(!r&&s)l=null==(o=i(this.target_,e))?void 0:o.value;if(t){if(!Reflect.deleteProperty(this.target_,e))return!1}else delete this.target_[e];if(r&&(this.values_.delete(e),r instanceof Ue&&(l=r.value_),ft(r)),this.keysAtom_.reportChanged(),null==(n=this.pendingKeys_)||null==(a=n.get(e))||a.set(e in this.target_),s){var c={type:In,observableKind:"object",object:this.proxy_||this.target_,debugObjectName:this.name_,oldValue:l,name:e};0,s&&ln(this,c)}}finally{ut()}return!0},t.observe_=function(e,t){return rn(this,e)},t.intercept_=function(e){return an(this,e)},t.notifyPropertyAddition_=function(e,t){var n,a,o=sn(this);if(o){var s=o?{type:Sn,observableKind:"object",debugObjectName:this.name_,object:this.proxy_||this.target_,name:e,newValue:t}:null;0,o&&ln(this,s)}null==(n=this.pendingKeys_)||null==(a=n.get(e))||a.set(!0),this.keysAtom_.reportChanged()},t.ownKeys_=function(){return this.keysAtom_.reportObserved(),j(this.target_)},t.keys_=function(){return this.keysAtom_.reportObserved(),Object.keys(this.target_)},e}();function Fn(e,t){var n;if(N(e,H))return e;var a=null!=(n=null==t?void 0:t.name)?n:"ObservableObject",o=new Ln(e,new Map,String(a),function(e){var t;return e?null!=(t=e.defaultDecorator)?t:pe(e):void 0}(t));return x(e,H,o),e}var Mn=T("ObservableObjectAdministration",Ln);function Wn(e){return Pn[e]||(Pn[e]={get:function(){return this[H].getObservablePropValue_(e)},set:function(t){return this[H].setObservablePropValue_(e,t)}})}function Bn(e){return!!b(e)&&Mn(e[H])}function zn(e,t,n){var a;null==(a=e.target_[B])||delete a[n]}function Un(e,t,n){}var Hn,Gn,Vn=Yn(0),Kn=0,$n=function(){};Hn=$n,Gn=Array.prototype,Object.setPrototypeOf?Object.setPrototypeOf(Hn.prototype,Gn):void 0!==Hn.prototype.__proto__?Hn.prototype.__proto__=Gn:Hn.prototype=Gn;var qn=function(e,t,n){function a(t,n,a,o){var s;void 0===a&&(a="ObservableArray"),void 0===o&&(o=!1),s=e.call(this)||this;var r=new un(a,n,o,!0);if(r.proxy_=F(s),_(F(s),H,r),t&&t.length){var i=We(!0);s.spliceWithArray(0,0,t),Be(i)}return Object.defineProperty(F(s),"0",Vn),s}I(a,e);var o=a.prototype;return o.concat=function(){this[H].atom_.reportObserved();for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return Array.prototype.concat.apply(this.slice(),t.map((function(e){return _n(e)?e.slice():e})))},o[n]=function(){var e=this,t=0;return ra({next:function(){return t<e.length?{value:e[t++],done:!1}:{done:!0,value:void 0}}})},R(a,[{key:"length",get:function(){return this[H].getArrayLength_()},set:function(e){this[H].setArrayLength_(e)}},{key:t,get:function(){return"Array"}}]),a}($n,Symbol.toStringTag,Symbol.iterator);function Yn(e){return{enumerable:!1,configurable:!0,get:function(){return this[H].get_(e)},set:function(t){this[H].set_(e,t)}}}function Zn(e){l(qn.prototype,""+e,Yn(e))}function Jn(e){if(e>Kn){for(var t=Kn;t<e+100;t++)Zn(t);Kn=e}}function Xn(e,t,n){return new qn(e,t,n)}function Qn(e,t){if("object"===typeof e&&null!==e){if(_n(e))return void 0!==t&&a(23),e[H].atom_;if(Rn(e))return e[H];if(Nn(e)){if(void 0===t)return e.keysAtom_;var n=e.data_.get(t)||e.hasMap_.get(t);return n||a(25,t,ta(e)),n}if(Bn(e)){if(!t)return a(26);var o=e[H].values_.get(t);return o||a(27,t,ta(e)),o}if(V(e)||Ke(e)||wt(e))return e}else if(y(e)&&wt(e[H]))return e[H];a(28)}function ea(e,t){return e||a(29),void 0!==t?ea(Qn(e,t)):V(e)||Ke(e)||wt(e)||Nn(e)||Rn(e)?e:e[H]?e[H]:void a(24,e)}function ta(e,t){var n;if(void 0!==t)n=Qn(e,t);else{if(Dt(e))return e.name;n=Bn(e)||Nn(e)||Rn(e)?ea(e):Qn(e)}return n.name_}Object.entries(fn).forEach((function(e){var t=e[0],n=e[1];"concat"!==t&&x(qn.prototype,t,n)})),Jn(1e3);var na=c.toString;function aa(e,t,n){return void 0===n&&(n=-1),oa(e,t,n)}function oa(e,t,n,a,o){if(e===t)return 0!==e||1/e===1/t;if(null==e||null==t)return!1;if(e!==e)return t!==t;var s=typeof e;if("function"!==s&&"object"!==s&&"object"!=typeof t)return!1;var r=na.call(e);if(r!==na.call(t))return!1;switch(r){case"[object RegExp]":case"[object String]":return""+e===""+t;case"[object Number]":return+e!==+e?+t!==+t:0===+e?1/+e===1/t:+e===+t;case"[object Date]":case"[object Boolean]":return+e===+t;case"[object Symbol]":return"undefined"!==typeof Symbol&&Symbol.valueOf.call(e)===Symbol.valueOf.call(t);case"[object Map]":case"[object Set]":n>=0&&n++}e=sa(e),t=sa(t);var i="[object Array]"===r;if(!i){if("object"!=typeof e||"object"!=typeof t)return!1;var l=e.constructor,c=t.constructor;if(l!==c&&!(y(l)&&l instanceof l&&y(c)&&c instanceof c)&&"constructor"in e&&"constructor"in t)return!1}if(0===n)return!1;n<0&&(n=-1),o=o||[];for(var m=(a=a||[]).length;m--;)if(a[m]===e)return o[m]===t;if(a.push(e),o.push(t),i){if((m=e.length)!==t.length)return!1;for(;m--;)if(!oa(e[m],t[m],n-1,a,o))return!1}else{var d,p=Object.keys(e);if(m=p.length,Object.keys(t).length!==m)return!1;for(;m--;)if(!N(t,d=p[m])||!oa(e[d],t[d],n-1,a,o))return!1}return a.pop(),o.pop(),!0}function sa(e){return _n(e)?e.slice():S(e)||Nn(e)||C(e)||Rn(e)?Array.from(e.entries()):e}function ra(e){return e[Symbol.iterator]=ia,e}function ia(){return this}["Symbol","Map","Set"].forEach((function(e){"undefined"===typeof s()[e]&&a("MobX requires global '"+e+"' to be available or polyfilled")})),"object"===typeof __MOBX_DEVTOOLS_GLOBAL_HOOK__&&__MOBX_DEVTOOLS_GLOBAL_HOOK__.injectMobx({spy:function(e){return console.warn("[mobx.spy] Is a no-op in production builds"),function(){}},extras:{getDebugName:ta},$mobx:H})},463:(e,t,n)=>{"use strict";var a=n(791),o=n(296);function s(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var r=new Set,i={};function l(e,t){c(e,t),c(e+"Capture",t)}function c(e,t){for(i[e]=t,e=0;e<t.length;e++)r.add(t[e])}var m=!("undefined"===typeof window||"undefined"===typeof window.document||"undefined"===typeof window.document.createElement),d=Object.prototype.hasOwnProperty,p=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,u={},h={};function f(e,t,n,a,o,s,r){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=a,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=s,this.removeEmptyString=r}var g={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach((function(e){g[e]=new f(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((function(e){var t=e[0];g[t]=new f(t,1,!1,e[1],null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((function(e){g[e]=new f(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((function(e){g[e]=new f(e,2,!1,e,null,!1,!1)})),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach((function(e){g[e]=new f(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((function(e){g[e]=new f(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((function(e){g[e]=new f(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((function(e){g[e]=new f(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((function(e){g[e]=new f(e,5,!1,e.toLowerCase(),null,!1,!1)}));var y=/[\-:]([a-z])/g;function v(e){return e[1].toUpperCase()}function b(e,t,n,a){var o=g.hasOwnProperty(t)?g[t]:null;(null!==o?0!==o.type:a||!(2<t.length)||"o"!==t[0]&&"O"!==t[0]||"n"!==t[1]&&"N"!==t[1])&&(function(e,t,n,a){if(null===t||"undefined"===typeof t||function(e,t,n,a){if(null!==n&&0===n.type)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return!a&&(null!==n?!n.acceptsBooleans:"data-"!==(e=e.toLowerCase().slice(0,5))&&"aria-"!==e);default:return!1}}(e,t,n,a))return!0;if(a)return!1;if(null!==n)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}(t,n,o,a)&&(n=null),a||null===o?function(e){return!!d.call(h,e)||!d.call(u,e)&&(p.test(e)?h[e]=!0:(u[e]=!0,!1))}(t)&&(null===n?e.removeAttribute(t):e.setAttribute(t,""+n)):o.mustUseProperty?e[o.propertyName]=null===n?3!==o.type&&"":n:(t=o.attributeName,a=o.attributeNamespace,null===n?e.removeAttribute(t):(n=3===(o=o.type)||4===o&&!0===n?"":""+n,a?e.setAttributeNS(a,t,n):e.setAttribute(t,n))))}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach((function(e){var t=e.replace(y,v);g[t]=new f(t,1,!1,e,null,!1,!1)})),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach((function(e){var t=e.replace(y,v);g[t]=new f(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((function(e){var t=e.replace(y,v);g[t]=new f(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((function(e){g[e]=new f(e,1,!1,e.toLowerCase(),null,!1,!1)})),g.xlinkHref=new f("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((function(e){g[e]=new f(e,1,!1,e.toLowerCase(),null,!0,!0)}));var w=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,k=Symbol.for("react.element"),x=Symbol.for("react.portal"),_=Symbol.for("react.fragment"),T=Symbol.for("react.strict_mode"),S=Symbol.for("react.profiler"),C=Symbol.for("react.provider"),E=Symbol.for("react.context"),j=Symbol.for("react.forward_ref"),A=Symbol.for("react.suspense"),N=Symbol.for("react.suspense_list"),D=Symbol.for("react.memo"),O=Symbol.for("react.lazy");Symbol.for("react.scope"),Symbol.for("react.debug_trace_mode");var R=Symbol.for("react.offscreen");Symbol.for("react.legacy_hidden"),Symbol.for("react.cache"),Symbol.for("react.tracing_marker");var P=Symbol.iterator;function I(e){return null===e||"object"!==typeof e?null:"function"===typeof(e=P&&e[P]||e["@@iterator"])?e:null}var L,F=Object.assign;function M(e){if(void 0===L)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);L=t&&t[1]||""}return"\n"+L+e}var W=!1;function B(e,t){if(!e||W)return"";W=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),"object"===typeof Reflect&&Reflect.construct){try{Reflect.construct(t,[])}catch(c){var a=c}Reflect.construct(e,[],t)}else{try{t.call()}catch(c){a=c}e.call(t.prototype)}else{try{throw Error()}catch(c){a=c}e()}}catch(c){if(c&&a&&"string"===typeof c.stack){for(var o=c.stack.split("\n"),s=a.stack.split("\n"),r=o.length-1,i=s.length-1;1<=r&&0<=i&&o[r]!==s[i];)i--;for(;1<=r&&0<=i;r--,i--)if(o[r]!==s[i]){if(1!==r||1!==i)do{if(r--,0>--i||o[r]!==s[i]){var l="\n"+o[r].replace(" at new "," at ");return e.displayName&&l.includes("<anonymous>")&&(l=l.replace("<anonymous>",e.displayName)),l}}while(1<=r&&0<=i);break}}}finally{W=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?M(e):""}function z(e){switch(e.tag){case 5:return M(e.type);case 16:return M("Lazy");case 13:return M("Suspense");case 19:return M("SuspenseList");case 0:case 2:case 15:return e=B(e.type,!1);case 11:return e=B(e.type.render,!1);case 1:return e=B(e.type,!0);default:return""}}function U(e){if(null==e)return null;if("function"===typeof e)return e.displayName||e.name||null;if("string"===typeof e)return e;switch(e){case _:return"Fragment";case x:return"Portal";case S:return"Profiler";case T:return"StrictMode";case A:return"Suspense";case N:return"SuspenseList"}if("object"===typeof e)switch(e.$$typeof){case E:return(e.displayName||"Context")+".Consumer";case C:return(e._context.displayName||"Context")+".Provider";case j:var t=e.render;return(e=e.displayName)||(e=""!==(e=t.displayName||t.name||"")?"ForwardRef("+e+")":"ForwardRef"),e;case D:return null!==(t=e.displayName||null)?t:U(e.type)||"Memo";case O:t=e._payload,e=e._init;try{return U(e(t))}catch(n){}}return null}function H(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=(e=t.render).displayName||e.name||"",t.displayName||(""!==e?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return U(t);case 8:return t===T?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if("function"===typeof t)return t.displayName||t.name||null;if("string"===typeof t)return t}return null}function G(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":case"object":return e;default:return""}}function V(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function K(e){e._valueTracker||(e._valueTracker=function(e){var t=V(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),a=""+e[t];if(!e.hasOwnProperty(t)&&"undefined"!==typeof n&&"function"===typeof n.get&&"function"===typeof n.set){var o=n.get,s=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return o.call(this)},set:function(e){a=""+e,s.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return a},setValue:function(e){a=""+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}(e))}function $(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),a="";return e&&(a=V(e)?e.checked?"true":"false":e.value),(e=a)!==n&&(t.setValue(e),!0)}function q(e){if("undefined"===typeof(e=e||("undefined"!==typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(t){return e.body}}function Y(e,t){var n=t.checked;return F({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=n?n:e._wrapperState.initialChecked})}function Z(e,t){var n=null==t.defaultValue?"":t.defaultValue,a=null!=t.checked?t.checked:t.defaultChecked;n=G(null!=t.value?t.value:n),e._wrapperState={initialChecked:a,initialValue:n,controlled:"checkbox"===t.type||"radio"===t.type?null!=t.checked:null!=t.value}}function J(e,t){null!=(t=t.checked)&&b(e,"checked",t,!1)}function X(e,t){J(e,t);var n=G(t.value),a=t.type;if(null!=n)"number"===a?(0===n&&""===e.value||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if("submit"===a||"reset"===a)return void e.removeAttribute("value");t.hasOwnProperty("value")?ee(e,t.type,n):t.hasOwnProperty("defaultValue")&&ee(e,t.type,G(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function Q(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var a=t.type;if(!("submit"!==a&&"reset"!==a||void 0!==t.value&&null!==t.value))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}""!==(n=e.name)&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,""!==n&&(e.name=n)}function ee(e,t,n){"number"===t&&q(e.ownerDocument)===e||(null==n?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var te=Array.isArray;function ne(e,t,n,a){if(e=e.options,t){t={};for(var o=0;o<n.length;o++)t["$"+n[o]]=!0;for(n=0;n<e.length;n++)o=t.hasOwnProperty("$"+e[n].value),e[n].selected!==o&&(e[n].selected=o),o&&a&&(e[n].defaultSelected=!0)}else{for(n=""+G(n),t=null,o=0;o<e.length;o++){if(e[o].value===n)return e[o].selected=!0,void(a&&(e[o].defaultSelected=!0));null!==t||e[o].disabled||(t=e[o])}null!==t&&(t.selected=!0)}}function ae(e,t){if(null!=t.dangerouslySetInnerHTML)throw Error(s(91));return F({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function oe(e,t){var n=t.value;if(null==n){if(n=t.children,t=t.defaultValue,null!=n){if(null!=t)throw Error(s(92));if(te(n)){if(1<n.length)throw Error(s(93));n=n[0]}t=n}null==t&&(t=""),n=t}e._wrapperState={initialValue:G(n)}}function se(e,t){var n=G(t.value),a=G(t.defaultValue);null!=n&&((n=""+n)!==e.value&&(e.value=n),null==t.defaultValue&&e.defaultValue!==n&&(e.defaultValue=n)),null!=a&&(e.defaultValue=""+a)}function re(e){var t=e.textContent;t===e._wrapperState.initialValue&&""!==t&&null!==t&&(e.value=t)}function ie(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function le(e,t){return null==e||"http://www.w3.org/1999/xhtml"===e?ie(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}var ce,me,de=(me=function(e,t){if("http://www.w3.org/2000/svg"!==e.namespaceURI||"innerHTML"in e)e.innerHTML=t;else{for((ce=ce||document.createElement("div")).innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=ce.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}},"undefined"!==typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,t,n,a){MSApp.execUnsafeLocalFunction((function(){return me(e,t)}))}:me);function pe(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&3===n.nodeType)return void(n.nodeValue=t)}e.textContent=t}var ue={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},he=["Webkit","ms","Moz","O"];function fe(e,t,n){return null==t||"boolean"===typeof t||""===t?"":n||"number"!==typeof t||0===t||ue.hasOwnProperty(e)&&ue[e]?(""+t).trim():t+"px"}function ge(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var a=0===n.indexOf("--"),o=fe(n,t[n],a);"float"===n&&(n="cssFloat"),a?e.setProperty(n,o):e[n]=o}}Object.keys(ue).forEach((function(e){he.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),ue[t]=ue[e]}))}));var ye=F({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function ve(e,t){if(t){if(ye[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(s(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(s(60));if("object"!==typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(s(61))}if(null!=t.style&&"object"!==typeof t.style)throw Error(s(62))}}function be(e,t){if(-1===e.indexOf("-"))return"string"===typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var we=null;function ke(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var xe=null,_e=null,Te=null;function Se(e){if(e=wo(e)){if("function"!==typeof xe)throw Error(s(280));var t=e.stateNode;t&&(t=xo(t),xe(e.stateNode,e.type,t))}}function Ce(e){_e?Te?Te.push(e):Te=[e]:_e=e}function Ee(){if(_e){var e=_e,t=Te;if(Te=_e=null,Se(e),t)for(e=0;e<t.length;e++)Se(t[e])}}function je(e,t){return e(t)}function Ae(){}var Ne=!1;function De(e,t,n){if(Ne)return e(t,n);Ne=!0;try{return je(e,t,n)}finally{Ne=!1,(null!==_e||null!==Te)&&(Ae(),Ee())}}function Oe(e,t){var n=e.stateNode;if(null===n)return null;var a=xo(n);if(null===a)return null;n=a[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(a=!a.disabled)||(a=!("button"===(e=e.type)||"input"===e||"select"===e||"textarea"===e)),e=!a;break e;default:e=!1}if(e)return null;if(n&&"function"!==typeof n)throw Error(s(231,t,typeof n));return n}var Re=!1;if(m)try{var Pe={};Object.defineProperty(Pe,"passive",{get:function(){Re=!0}}),window.addEventListener("test",Pe,Pe),window.removeEventListener("test",Pe,Pe)}catch(me){Re=!1}function Ie(e,t,n,a,o,s,r,i,l){var c=Array.prototype.slice.call(arguments,3);try{t.apply(n,c)}catch(m){this.onError(m)}}var Le=!1,Fe=null,Me=!1,We=null,Be={onError:function(e){Le=!0,Fe=e}};function ze(e,t,n,a,o,s,r,i,l){Le=!1,Fe=null,Ie.apply(Be,arguments)}function Ue(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do{0!==(4098&(t=e).flags)&&(n=t.return),e=t.return}while(e)}return 3===t.tag?n:null}function He(e){if(13===e.tag){var t=e.memoizedState;if(null===t&&(null!==(e=e.alternate)&&(t=e.memoizedState)),null!==t)return t.dehydrated}return null}function Ge(e){if(Ue(e)!==e)throw Error(s(188))}function Ve(e){return null!==(e=function(e){var t=e.alternate;if(!t){if(null===(t=Ue(e)))throw Error(s(188));return t!==e?null:e}for(var n=e,a=t;;){var o=n.return;if(null===o)break;var r=o.alternate;if(null===r){if(null!==(a=o.return)){n=a;continue}break}if(o.child===r.child){for(r=o.child;r;){if(r===n)return Ge(o),e;if(r===a)return Ge(o),t;r=r.sibling}throw Error(s(188))}if(n.return!==a.return)n=o,a=r;else{for(var i=!1,l=o.child;l;){if(l===n){i=!0,n=o,a=r;break}if(l===a){i=!0,a=o,n=r;break}l=l.sibling}if(!i){for(l=r.child;l;){if(l===n){i=!0,n=r,a=o;break}if(l===a){i=!0,a=r,n=o;break}l=l.sibling}if(!i)throw Error(s(189))}}if(n.alternate!==a)throw Error(s(190))}if(3!==n.tag)throw Error(s(188));return n.stateNode.current===n?e:t}(e))?Ke(e):null}function Ke(e){if(5===e.tag||6===e.tag)return e;for(e=e.child;null!==e;){var t=Ke(e);if(null!==t)return t;e=e.sibling}return null}var $e=o.unstable_scheduleCallback,qe=o.unstable_cancelCallback,Ye=o.unstable_shouldYield,Ze=o.unstable_requestPaint,Je=o.unstable_now,Xe=o.unstable_getCurrentPriorityLevel,Qe=o.unstable_ImmediatePriority,et=o.unstable_UserBlockingPriority,tt=o.unstable_NormalPriority,nt=o.unstable_LowPriority,at=o.unstable_IdlePriority,ot=null,st=null;var rt=Math.clz32?Math.clz32:function(e){return e>>>=0,0===e?32:31-(it(e)/lt|0)|0},it=Math.log,lt=Math.LN2;var ct=64,mt=4194304;function dt(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&e;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&e;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function pt(e,t){var n=e.pendingLanes;if(0===n)return 0;var a=0,o=e.suspendedLanes,s=e.pingedLanes,r=268435455&n;if(0!==r){var i=r&~o;0!==i?a=dt(i):0!==(s&=r)&&(a=dt(s))}else 0!==(r=n&~o)?a=dt(r):0!==s&&(a=dt(s));if(0===a)return 0;if(0!==t&&t!==a&&0===(t&o)&&((o=a&-a)>=(s=t&-t)||16===o&&0!==(4194240&s)))return t;if(0!==(4&a)&&(a|=16&n),0!==(t=e.entangledLanes))for(e=e.entanglements,t&=a;0<t;)o=1<<(n=31-rt(t)),a|=e[n],t&=~o;return a}function ut(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;default:return-1}}function ht(e){return 0!==(e=-1073741825&e.pendingLanes)?e:1073741824&e?1073741824:0}function ft(){var e=ct;return 0===(4194240&(ct<<=1))&&(ct=64),e}function gt(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function yt(e,t,n){e.pendingLanes|=t,536870912!==t&&(e.suspendedLanes=0,e.pingedLanes=0),(e=e.eventTimes)[t=31-rt(t)]=n}function vt(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var a=31-rt(n),o=1<<a;o&t|e[a]&t&&(e[a]|=t),n&=~o}}var bt=0;function wt(e){return 1<(e&=-e)?4<e?0!==(268435455&e)?16:536870912:4:1}var kt,xt,_t,Tt,St,Ct=!1,Et=[],jt=null,At=null,Nt=null,Dt=new Map,Ot=new Map,Rt=[],Pt="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function It(e,t){switch(e){case"focusin":case"focusout":jt=null;break;case"dragenter":case"dragleave":At=null;break;case"mouseover":case"mouseout":Nt=null;break;case"pointerover":case"pointerout":Dt.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Ot.delete(t.pointerId)}}function Lt(e,t,n,a,o,s){return null===e||e.nativeEvent!==s?(e={blockedOn:t,domEventName:n,eventSystemFlags:a,nativeEvent:s,targetContainers:[o]},null!==t&&(null!==(t=wo(t))&&xt(t)),e):(e.eventSystemFlags|=a,t=e.targetContainers,null!==o&&-1===t.indexOf(o)&&t.push(o),e)}function Ft(e){var t=bo(e.target);if(null!==t){var n=Ue(t);if(null!==n)if(13===(t=n.tag)){if(null!==(t=He(n)))return e.blockedOn=t,void St(e.priority,(function(){_t(n)}))}else if(3===t&&n.stateNode.current.memoizedState.isDehydrated)return void(e.blockedOn=3===n.tag?n.stateNode.containerInfo:null)}e.blockedOn=null}function Mt(e){if(null!==e.blockedOn)return!1;for(var t=e.targetContainers;0<t.length;){var n=Yt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n)return null!==(t=wo(n))&&xt(t),e.blockedOn=n,!1;var a=new(n=e.nativeEvent).constructor(n.type,n);we=a,n.target.dispatchEvent(a),we=null,t.shift()}return!0}function Wt(e,t,n){Mt(e)&&n.delete(t)}function Bt(){Ct=!1,null!==jt&&Mt(jt)&&(jt=null),null!==At&&Mt(At)&&(At=null),null!==Nt&&Mt(Nt)&&(Nt=null),Dt.forEach(Wt),Ot.forEach(Wt)}function zt(e,t){e.blockedOn===t&&(e.blockedOn=null,Ct||(Ct=!0,o.unstable_scheduleCallback(o.unstable_NormalPriority,Bt)))}function Ut(e){function t(t){return zt(t,e)}if(0<Et.length){zt(Et[0],e);for(var n=1;n<Et.length;n++){var a=Et[n];a.blockedOn===e&&(a.blockedOn=null)}}for(null!==jt&&zt(jt,e),null!==At&&zt(At,e),null!==Nt&&zt(Nt,e),Dt.forEach(t),Ot.forEach(t),n=0;n<Rt.length;n++)(a=Rt[n]).blockedOn===e&&(a.blockedOn=null);for(;0<Rt.length&&null===(n=Rt[0]).blockedOn;)Ft(n),null===n.blockedOn&&Rt.shift()}var Ht=w.ReactCurrentBatchConfig,Gt=!0;function Vt(e,t,n,a){var o=bt,s=Ht.transition;Ht.transition=null;try{bt=1,$t(e,t,n,a)}finally{bt=o,Ht.transition=s}}function Kt(e,t,n,a){var o=bt,s=Ht.transition;Ht.transition=null;try{bt=4,$t(e,t,n,a)}finally{bt=o,Ht.transition=s}}function $t(e,t,n,a){if(Gt){var o=Yt(e,t,n,a);if(null===o)Ga(e,t,a,qt,n),It(e,a);else if(function(e,t,n,a,o){switch(t){case"focusin":return jt=Lt(jt,e,t,n,a,o),!0;case"dragenter":return At=Lt(At,e,t,n,a,o),!0;case"mouseover":return Nt=Lt(Nt,e,t,n,a,o),!0;case"pointerover":var s=o.pointerId;return Dt.set(s,Lt(Dt.get(s)||null,e,t,n,a,o)),!0;case"gotpointercapture":return s=o.pointerId,Ot.set(s,Lt(Ot.get(s)||null,e,t,n,a,o)),!0}return!1}(o,e,t,n,a))a.stopPropagation();else if(It(e,a),4&t&&-1<Pt.indexOf(e)){for(;null!==o;){var s=wo(o);if(null!==s&&kt(s),null===(s=Yt(e,t,n,a))&&Ga(e,t,a,qt,n),s===o)break;o=s}null!==o&&a.stopPropagation()}else Ga(e,t,a,null,n)}}var qt=null;function Yt(e,t,n,a){if(qt=null,null!==(e=bo(e=ke(a))))if(null===(t=Ue(e)))e=null;else if(13===(n=t.tag)){if(null!==(e=He(t)))return e;e=null}else if(3===n){if(t.stateNode.current.memoizedState.isDehydrated)return 3===t.tag?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return qt=e,null}function Zt(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(Xe()){case Qe:return 1;case et:return 4;case tt:case nt:return 16;case at:return 536870912;default:return 16}default:return 16}}var Jt=null,Xt=null,Qt=null;function en(){if(Qt)return Qt;var e,t,n=Xt,a=n.length,o="value"in Jt?Jt.value:Jt.textContent,s=o.length;for(e=0;e<a&&n[e]===o[e];e++);var r=a-e;for(t=1;t<=r&&n[a-t]===o[s-t];t++);return Qt=o.slice(e,1<t?1-t:void 0)}function tn(e){var t=e.keyCode;return"charCode"in e?0===(e=e.charCode)&&13===t&&(e=13):e=t,10===e&&(e=13),32<=e||13===e?e:0}function nn(){return!0}function an(){return!1}function on(e){function t(t,n,a,o,s){for(var r in this._reactName=t,this._targetInst=a,this.type=n,this.nativeEvent=o,this.target=s,this.currentTarget=null,e)e.hasOwnProperty(r)&&(t=e[r],this[r]=t?t(o):o[r]);return this.isDefaultPrevented=(null!=o.defaultPrevented?o.defaultPrevented:!1===o.returnValue)?nn:an,this.isPropagationStopped=an,this}return F(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!==typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=nn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!==typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=nn)},persist:function(){},isPersistent:nn}),t}var sn,rn,ln,cn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},mn=on(cn),dn=F({},cn,{view:0,detail:0}),pn=on(dn),un=F({},dn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Sn,button:0,buttons:0,relatedTarget:function(e){return void 0===e.relatedTarget?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==ln&&(ln&&"mousemove"===e.type?(sn=e.screenX-ln.screenX,rn=e.screenY-ln.screenY):rn=sn=0,ln=e),sn)},movementY:function(e){return"movementY"in e?e.movementY:rn}}),hn=on(un),fn=on(F({},un,{dataTransfer:0})),gn=on(F({},dn,{relatedTarget:0})),yn=on(F({},cn,{animationName:0,elapsedTime:0,pseudoElement:0})),vn=F({},cn,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),bn=on(vn),wn=on(F({},cn,{data:0})),kn={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},xn={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},_n={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Tn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):!!(e=_n[e])&&!!t[e]}function Sn(){return Tn}var Cn=F({},dn,{key:function(e){if(e.key){var t=kn[e.key]||e.key;if("Unidentified"!==t)return t}return"keypress"===e.type?13===(e=tn(e))?"Enter":String.fromCharCode(e):"keydown"===e.type||"keyup"===e.type?xn[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Sn,charCode:function(e){return"keypress"===e.type?tn(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?tn(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}}),En=on(Cn),jn=on(F({},un,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),An=on(F({},dn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Sn})),Nn=on(F({},cn,{propertyName:0,elapsedTime:0,pseudoElement:0})),Dn=F({},un,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),On=on(Dn),Rn=[9,13,27,32],Pn=m&&"CompositionEvent"in window,In=null;m&&"documentMode"in document&&(In=document.documentMode);var Ln=m&&"TextEvent"in window&&!In,Fn=m&&(!Pn||In&&8<In&&11>=In),Mn=String.fromCharCode(32),Wn=!1;function Bn(e,t){switch(e){case"keyup":return-1!==Rn.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function zn(e){return"object"===typeof(e=e.detail)&&"data"in e?e.data:null}var Un=!1;var Hn={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Gn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!Hn[e.type]:"textarea"===t}function Vn(e,t,n,a){Ce(a),0<(t=Ka(t,"onChange")).length&&(n=new mn("onChange","change",null,n,a),e.push({event:n,listeners:t}))}var Kn=null,$n=null;function qn(e){Ma(e,0)}function Yn(e){if($(ko(e)))return e}function Zn(e,t){if("change"===e)return t}var Jn=!1;if(m){var Xn;if(m){var Qn="oninput"in document;if(!Qn){var ea=document.createElement("div");ea.setAttribute("oninput","return;"),Qn="function"===typeof ea.oninput}Xn=Qn}else Xn=!1;Jn=Xn&&(!document.documentMode||9<document.documentMode)}function ta(){Kn&&(Kn.detachEvent("onpropertychange",na),$n=Kn=null)}function na(e){if("value"===e.propertyName&&Yn($n)){var t=[];Vn(t,$n,e,ke(e)),De(qn,t)}}function aa(e,t,n){"focusin"===e?(ta(),$n=n,(Kn=t).attachEvent("onpropertychange",na)):"focusout"===e&&ta()}function oa(e){if("selectionchange"===e||"keyup"===e||"keydown"===e)return Yn($n)}function sa(e,t){if("click"===e)return Yn(t)}function ra(e,t){if("input"===e||"change"===e)return Yn(t)}var ia="function"===typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e===1/t)||e!==e&&t!==t};function la(e,t){if(ia(e,t))return!0;if("object"!==typeof e||null===e||"object"!==typeof t||null===t)return!1;var n=Object.keys(e),a=Object.keys(t);if(n.length!==a.length)return!1;for(a=0;a<n.length;a++){var o=n[a];if(!d.call(t,o)||!ia(e[o],t[o]))return!1}return!0}function ca(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function ma(e,t){var n,a=ca(e);for(e=0;a;){if(3===a.nodeType){if(n=e+a.textContent.length,e<=t&&n>=t)return{node:a,offset:t-e};e=n}e:{for(;a;){if(a.nextSibling){a=a.nextSibling;break e}a=a.parentNode}a=void 0}a=ca(a)}}function da(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?da(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function pa(){for(var e=window,t=q();t instanceof e.HTMLIFrameElement;){try{var n="string"===typeof t.contentWindow.location.href}catch(a){n=!1}if(!n)break;t=q((e=t.contentWindow).document)}return t}function ua(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}function ha(e){var t=pa(),n=e.focusedElem,a=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&da(n.ownerDocument.documentElement,n)){if(null!==a&&ua(n))if(t=a.start,void 0===(e=a.end)&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if((e=(t=n.ownerDocument||document)&&t.defaultView||window).getSelection){e=e.getSelection();var o=n.textContent.length,s=Math.min(a.start,o);a=void 0===a.end?s:Math.min(a.end,o),!e.extend&&s>a&&(o=a,a=s,s=o),o=ma(n,s);var r=ma(n,a);o&&r&&(1!==e.rangeCount||e.anchorNode!==o.node||e.anchorOffset!==o.offset||e.focusNode!==r.node||e.focusOffset!==r.offset)&&((t=t.createRange()).setStart(o.node,o.offset),e.removeAllRanges(),s>a?(e.addRange(t),e.extend(r.node,r.offset)):(t.setEnd(r.node,r.offset),e.addRange(t)))}for(t=[],e=n;e=e.parentNode;)1===e.nodeType&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for("function"===typeof n.focus&&n.focus(),n=0;n<t.length;n++)(e=t[n]).element.scrollLeft=e.left,e.element.scrollTop=e.top}}var fa=m&&"documentMode"in document&&11>=document.documentMode,ga=null,ya=null,va=null,ba=!1;function wa(e,t,n){var a=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;ba||null==ga||ga!==q(a)||("selectionStart"in(a=ga)&&ua(a)?a={start:a.selectionStart,end:a.selectionEnd}:a={anchorNode:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset},va&&la(va,a)||(va=a,0<(a=Ka(ya,"onSelect")).length&&(t=new mn("onSelect","select",null,t,n),e.push({event:t,listeners:a}),t.target=ga)))}function ka(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var xa={animationend:ka("Animation","AnimationEnd"),animationiteration:ka("Animation","AnimationIteration"),animationstart:ka("Animation","AnimationStart"),transitionend:ka("Transition","TransitionEnd")},_a={},Ta={};function Sa(e){if(_a[e])return _a[e];if(!xa[e])return e;var t,n=xa[e];for(t in n)if(n.hasOwnProperty(t)&&t in Ta)return _a[e]=n[t];return e}m&&(Ta=document.createElement("div").style,"AnimationEvent"in window||(delete xa.animationend.animation,delete xa.animationiteration.animation,delete xa.animationstart.animation),"TransitionEvent"in window||delete xa.transitionend.transition);var Ca=Sa("animationend"),Ea=Sa("animationiteration"),ja=Sa("animationstart"),Aa=Sa("transitionend"),Na=new Map,Da="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Oa(e,t){Na.set(e,t),l(t,[e])}for(var Ra=0;Ra<Da.length;Ra++){var Pa=Da[Ra];Oa(Pa.toLowerCase(),"on"+(Pa[0].toUpperCase()+Pa.slice(1)))}Oa(Ca,"onAnimationEnd"),Oa(Ea,"onAnimationIteration"),Oa(ja,"onAnimationStart"),Oa("dblclick","onDoubleClick"),Oa("focusin","onFocus"),Oa("focusout","onBlur"),Oa(Aa,"onTransitionEnd"),c("onMouseEnter",["mouseout","mouseover"]),c("onMouseLeave",["mouseout","mouseover"]),c("onPointerEnter",["pointerout","pointerover"]),c("onPointerLeave",["pointerout","pointerover"]),l("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),l("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),l("onBeforeInput",["compositionend","keypress","textInput","paste"]),l("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),l("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),l("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Ia="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),La=new Set("cancel close invalid load scroll toggle".split(" ").concat(Ia));function Fa(e,t,n){var a=e.type||"unknown-event";e.currentTarget=n,function(e,t,n,a,o,r,i,l,c){if(ze.apply(this,arguments),Le){if(!Le)throw Error(s(198));var m=Fe;Le=!1,Fe=null,Me||(Me=!0,We=m)}}(a,t,void 0,e),e.currentTarget=null}function Ma(e,t){t=0!==(4&t);for(var n=0;n<e.length;n++){var a=e[n],o=a.event;a=a.listeners;e:{var s=void 0;if(t)for(var r=a.length-1;0<=r;r--){var i=a[r],l=i.instance,c=i.currentTarget;if(i=i.listener,l!==s&&o.isPropagationStopped())break e;Fa(o,i,c),s=l}else for(r=0;r<a.length;r++){if(l=(i=a[r]).instance,c=i.currentTarget,i=i.listener,l!==s&&o.isPropagationStopped())break e;Fa(o,i,c),s=l}}}if(Me)throw e=We,Me=!1,We=null,e}function Wa(e,t){var n=t[go];void 0===n&&(n=t[go]=new Set);var a=e+"__bubble";n.has(a)||(Ha(t,e,2,!1),n.add(a))}function Ba(e,t,n){var a=0;t&&(a|=4),Ha(n,e,a,t)}var za="_reactListening"+Math.random().toString(36).slice(2);function Ua(e){if(!e[za]){e[za]=!0,r.forEach((function(t){"selectionchange"!==t&&(La.has(t)||Ba(t,!1,e),Ba(t,!0,e))}));var t=9===e.nodeType?e:e.ownerDocument;null===t||t[za]||(t[za]=!0,Ba("selectionchange",!1,t))}}function Ha(e,t,n,a){switch(Zt(t)){case 1:var o=Vt;break;case 4:o=Kt;break;default:o=$t}n=o.bind(null,t,n,e),o=void 0,!Re||"touchstart"!==t&&"touchmove"!==t&&"wheel"!==t||(o=!0),a?void 0!==o?e.addEventListener(t,n,{capture:!0,passive:o}):e.addEventListener(t,n,!0):void 0!==o?e.addEventListener(t,n,{passive:o}):e.addEventListener(t,n,!1)}function Ga(e,t,n,a,o){var s=a;if(0===(1&t)&&0===(2&t)&&null!==a)e:for(;;){if(null===a)return;var r=a.tag;if(3===r||4===r){var i=a.stateNode.containerInfo;if(i===o||8===i.nodeType&&i.parentNode===o)break;if(4===r)for(r=a.return;null!==r;){var l=r.tag;if((3===l||4===l)&&((l=r.stateNode.containerInfo)===o||8===l.nodeType&&l.parentNode===o))return;r=r.return}for(;null!==i;){if(null===(r=bo(i)))return;if(5===(l=r.tag)||6===l){a=s=r;continue e}i=i.parentNode}}a=a.return}De((function(){var a=s,o=ke(n),r=[];e:{var i=Na.get(e);if(void 0!==i){var l=mn,c=e;switch(e){case"keypress":if(0===tn(n))break e;case"keydown":case"keyup":l=En;break;case"focusin":c="focus",l=gn;break;case"focusout":c="blur",l=gn;break;case"beforeblur":case"afterblur":l=gn;break;case"click":if(2===n.button)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":l=hn;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":l=fn;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":l=An;break;case Ca:case Ea:case ja:l=yn;break;case Aa:l=Nn;break;case"scroll":l=pn;break;case"wheel":l=On;break;case"copy":case"cut":case"paste":l=bn;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":l=jn}var m=0!==(4&t),d=!m&&"scroll"===e,p=m?null!==i?i+"Capture":null:i;m=[];for(var u,h=a;null!==h;){var f=(u=h).stateNode;if(5===u.tag&&null!==f&&(u=f,null!==p&&(null!=(f=Oe(h,p))&&m.push(Va(h,f,u)))),d)break;h=h.return}0<m.length&&(i=new l(i,c,null,n,o),r.push({event:i,listeners:m}))}}if(0===(7&t)){if(l="mouseout"===e||"pointerout"===e,(!(i="mouseover"===e||"pointerover"===e)||n===we||!(c=n.relatedTarget||n.fromElement)||!bo(c)&&!c[fo])&&(l||i)&&(i=o.window===o?o:(i=o.ownerDocument)?i.defaultView||i.parentWindow:window,l?(l=a,null!==(c=(c=n.relatedTarget||n.toElement)?bo(c):null)&&(c!==(d=Ue(c))||5!==c.tag&&6!==c.tag)&&(c=null)):(l=null,c=a),l!==c)){if(m=hn,f="onMouseLeave",p="onMouseEnter",h="mouse","pointerout"!==e&&"pointerover"!==e||(m=jn,f="onPointerLeave",p="onPointerEnter",h="pointer"),d=null==l?i:ko(l),u=null==c?i:ko(c),(i=new m(f,h+"leave",l,n,o)).target=d,i.relatedTarget=u,f=null,bo(o)===a&&((m=new m(p,h+"enter",c,n,o)).target=u,m.relatedTarget=d,f=m),d=f,l&&c)e:{for(p=c,h=0,u=m=l;u;u=$a(u))h++;for(u=0,f=p;f;f=$a(f))u++;for(;0<h-u;)m=$a(m),h--;for(;0<u-h;)p=$a(p),u--;for(;h--;){if(m===p||null!==p&&m===p.alternate)break e;m=$a(m),p=$a(p)}m=null}else m=null;null!==l&&qa(r,i,l,m,!1),null!==c&&null!==d&&qa(r,d,c,m,!0)}if("select"===(l=(i=a?ko(a):window).nodeName&&i.nodeName.toLowerCase())||"input"===l&&"file"===i.type)var g=Zn;else if(Gn(i))if(Jn)g=ra;else{g=oa;var y=aa}else(l=i.nodeName)&&"input"===l.toLowerCase()&&("checkbox"===i.type||"radio"===i.type)&&(g=sa);switch(g&&(g=g(e,a))?Vn(r,g,n,o):(y&&y(e,i,a),"focusout"===e&&(y=i._wrapperState)&&y.controlled&&"number"===i.type&&ee(i,"number",i.value)),y=a?ko(a):window,e){case"focusin":(Gn(y)||"true"===y.contentEditable)&&(ga=y,ya=a,va=null);break;case"focusout":va=ya=ga=null;break;case"mousedown":ba=!0;break;case"contextmenu":case"mouseup":case"dragend":ba=!1,wa(r,n,o);break;case"selectionchange":if(fa)break;case"keydown":case"keyup":wa(r,n,o)}var v;if(Pn)e:{switch(e){case"compositionstart":var b="onCompositionStart";break e;case"compositionend":b="onCompositionEnd";break e;case"compositionupdate":b="onCompositionUpdate";break e}b=void 0}else Un?Bn(e,n)&&(b="onCompositionEnd"):"keydown"===e&&229===n.keyCode&&(b="onCompositionStart");b&&(Fn&&"ko"!==n.locale&&(Un||"onCompositionStart"!==b?"onCompositionEnd"===b&&Un&&(v=en()):(Xt="value"in(Jt=o)?Jt.value:Jt.textContent,Un=!0)),0<(y=Ka(a,b)).length&&(b=new wn(b,e,null,n,o),r.push({event:b,listeners:y}),v?b.data=v:null!==(v=zn(n))&&(b.data=v))),(v=Ln?function(e,t){switch(e){case"compositionend":return zn(t);case"keypress":return 32!==t.which?null:(Wn=!0,Mn);case"textInput":return(e=t.data)===Mn&&Wn?null:e;default:return null}}(e,n):function(e,t){if(Un)return"compositionend"===e||!Pn&&Bn(e,t)?(e=en(),Qt=Xt=Jt=null,Un=!1,e):null;switch(e){case"paste":default:return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return Fn&&"ko"!==t.locale?null:t.data}}(e,n))&&(0<(a=Ka(a,"onBeforeInput")).length&&(o=new wn("onBeforeInput","beforeinput",null,n,o),r.push({event:o,listeners:a}),o.data=v))}Ma(r,t)}))}function Va(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Ka(e,t){for(var n=t+"Capture",a=[];null!==e;){var o=e,s=o.stateNode;5===o.tag&&null!==s&&(o=s,null!=(s=Oe(e,n))&&a.unshift(Va(e,s,o)),null!=(s=Oe(e,t))&&a.push(Va(e,s,o))),e=e.return}return a}function $a(e){if(null===e)return null;do{e=e.return}while(e&&5!==e.tag);return e||null}function qa(e,t,n,a,o){for(var s=t._reactName,r=[];null!==n&&n!==a;){var i=n,l=i.alternate,c=i.stateNode;if(null!==l&&l===a)break;5===i.tag&&null!==c&&(i=c,o?null!=(l=Oe(n,s))&&r.unshift(Va(n,l,i)):o||null!=(l=Oe(n,s))&&r.push(Va(n,l,i))),n=n.return}0!==r.length&&e.push({event:t,listeners:r})}var Ya=/\r\n?/g,Za=/\u0000|\uFFFD/g;function Ja(e){return("string"===typeof e?e:""+e).replace(Ya,"\n").replace(Za,"")}function Xa(e,t,n){if(t=Ja(t),Ja(e)!==t&&n)throw Error(s(425))}function Qa(){}var eo=null,to=null;function no(e,t){return"textarea"===e||"noscript"===e||"string"===typeof t.children||"number"===typeof t.children||"object"===typeof t.dangerouslySetInnerHTML&&null!==t.dangerouslySetInnerHTML&&null!=t.dangerouslySetInnerHTML.__html}var ao="function"===typeof setTimeout?setTimeout:void 0,oo="function"===typeof clearTimeout?clearTimeout:void 0,so="function"===typeof Promise?Promise:void 0,ro="function"===typeof queueMicrotask?queueMicrotask:"undefined"!==typeof so?function(e){return so.resolve(null).then(e).catch(io)}:ao;function io(e){setTimeout((function(){throw e}))}function lo(e,t){var n=t,a=0;do{var o=n.nextSibling;if(e.removeChild(n),o&&8===o.nodeType)if("/$"===(n=o.data)){if(0===a)return e.removeChild(o),void Ut(t);a--}else"$"!==n&&"$?"!==n&&"$!"!==n||a++;n=o}while(n);Ut(t)}function co(e){for(;null!=e;e=e.nextSibling){var t=e.nodeType;if(1===t||3===t)break;if(8===t){if("$"===(t=e.data)||"$!"===t||"$?"===t)break;if("/$"===t)return null}}return e}function mo(e){e=e.previousSibling;for(var t=0;e;){if(8===e.nodeType){var n=e.data;if("$"===n||"$!"===n||"$?"===n){if(0===t)return e;t--}else"/$"===n&&t++}e=e.previousSibling}return null}var po=Math.random().toString(36).slice(2),uo="__reactFiber$"+po,ho="__reactProps$"+po,fo="__reactContainer$"+po,go="__reactEvents$"+po,yo="__reactListeners$"+po,vo="__reactHandles$"+po;function bo(e){var t=e[uo];if(t)return t;for(var n=e.parentNode;n;){if(t=n[fo]||n[uo]){if(n=t.alternate,null!==t.child||null!==n&&null!==n.child)for(e=mo(e);null!==e;){if(n=e[uo])return n;e=mo(e)}return t}n=(e=n).parentNode}return null}function wo(e){return!(e=e[uo]||e[fo])||5!==e.tag&&6!==e.tag&&13!==e.tag&&3!==e.tag?null:e}function ko(e){if(5===e.tag||6===e.tag)return e.stateNode;throw Error(s(33))}function xo(e){return e[ho]||null}var _o=[],To=-1;function So(e){return{current:e}}function Co(e){0>To||(e.current=_o[To],_o[To]=null,To--)}function Eo(e,t){To++,_o[To]=e.current,e.current=t}var jo={},Ao=So(jo),No=So(!1),Do=jo;function Oo(e,t){var n=e.type.contextTypes;if(!n)return jo;var a=e.stateNode;if(a&&a.__reactInternalMemoizedUnmaskedChildContext===t)return a.__reactInternalMemoizedMaskedChildContext;var o,s={};for(o in n)s[o]=t[o];return a&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=s),s}function Ro(e){return null!==(e=e.childContextTypes)&&void 0!==e}function Po(){Co(No),Co(Ao)}function Io(e,t,n){if(Ao.current!==jo)throw Error(s(168));Eo(Ao,t),Eo(No,n)}function Lo(e,t,n){var a=e.stateNode;if(t=t.childContextTypes,"function"!==typeof a.getChildContext)return n;for(var o in a=a.getChildContext())if(!(o in t))throw Error(s(108,H(e)||"Unknown",o));return F({},n,a)}function Fo(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||jo,Do=Ao.current,Eo(Ao,e),Eo(No,No.current),!0}function Mo(e,t,n){var a=e.stateNode;if(!a)throw Error(s(169));n?(e=Lo(e,t,Do),a.__reactInternalMemoizedMergedChildContext=e,Co(No),Co(Ao),Eo(Ao,e)):Co(No),Eo(No,n)}var Wo=null,Bo=!1,zo=!1;function Uo(e){null===Wo?Wo=[e]:Wo.push(e)}function Ho(){if(!zo&&null!==Wo){zo=!0;var e=0,t=bt;try{var n=Wo;for(bt=1;e<n.length;e++){var a=n[e];do{a=a(!0)}while(null!==a)}Wo=null,Bo=!1}catch(o){throw null!==Wo&&(Wo=Wo.slice(e+1)),$e(Qe,Ho),o}finally{bt=t,zo=!1}}return null}var Go=[],Vo=0,Ko=null,$o=0,qo=[],Yo=0,Zo=null,Jo=1,Xo="";function Qo(e,t){Go[Vo++]=$o,Go[Vo++]=Ko,Ko=e,$o=t}function es(e,t,n){qo[Yo++]=Jo,qo[Yo++]=Xo,qo[Yo++]=Zo,Zo=e;var a=Jo;e=Xo;var o=32-rt(a)-1;a&=~(1<<o),n+=1;var s=32-rt(t)+o;if(30<s){var r=o-o%5;s=(a&(1<<r)-1).toString(32),a>>=r,o-=r,Jo=1<<32-rt(t)+o|n<<o|a,Xo=s+e}else Jo=1<<s|n<<o|a,Xo=e}function ts(e){null!==e.return&&(Qo(e,1),es(e,1,0))}function ns(e){for(;e===Ko;)Ko=Go[--Vo],Go[Vo]=null,$o=Go[--Vo],Go[Vo]=null;for(;e===Zo;)Zo=qo[--Yo],qo[Yo]=null,Xo=qo[--Yo],qo[Yo]=null,Jo=qo[--Yo],qo[Yo]=null}var as=null,os=null,ss=!1,rs=null;function is(e,t){var n=Dc(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,null===(t=e.deletions)?(e.deletions=[n],e.flags|=16):t.push(n)}function ls(e,t){switch(e.tag){case 5:var n=e.type;return null!==(t=1!==t.nodeType||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t)&&(e.stateNode=t,as=e,os=co(t.firstChild),!0);case 6:return null!==(t=""===e.pendingProps||3!==t.nodeType?null:t)&&(e.stateNode=t,as=e,os=null,!0);case 13:return null!==(t=8!==t.nodeType?null:t)&&(n=null!==Zo?{id:Jo,overflow:Xo}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},(n=Dc(18,null,null,0)).stateNode=t,n.return=e,e.child=n,as=e,os=null,!0);default:return!1}}function cs(e){return 0!==(1&e.mode)&&0===(128&e.flags)}function ms(e){if(ss){var t=os;if(t){var n=t;if(!ls(e,t)){if(cs(e))throw Error(s(418));t=co(n.nextSibling);var a=as;t&&ls(e,t)?is(a,n):(e.flags=-4097&e.flags|2,ss=!1,as=e)}}else{if(cs(e))throw Error(s(418));e.flags=-4097&e.flags|2,ss=!1,as=e}}}function ds(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;as=e}function ps(e){if(e!==as)return!1;if(!ss)return ds(e),ss=!0,!1;var t;if((t=3!==e.tag)&&!(t=5!==e.tag)&&(t="head"!==(t=e.type)&&"body"!==t&&!no(e.type,e.memoizedProps)),t&&(t=os)){if(cs(e))throw us(),Error(s(418));for(;t;)is(e,t),t=co(t.nextSibling)}if(ds(e),13===e.tag){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(s(317));e:{for(e=e.nextSibling,t=0;e;){if(8===e.nodeType){var n=e.data;if("/$"===n){if(0===t){os=co(e.nextSibling);break e}t--}else"$"!==n&&"$!"!==n&&"$?"!==n||t++}e=e.nextSibling}os=null}}else os=as?co(e.stateNode.nextSibling):null;return!0}function us(){for(var e=os;e;)e=co(e.nextSibling)}function hs(){os=as=null,ss=!1}function fs(e){null===rs?rs=[e]:rs.push(e)}var gs=w.ReactCurrentBatchConfig;function ys(e,t){if(e&&e.defaultProps){for(var n in t=F({},t),e=e.defaultProps)void 0===t[n]&&(t[n]=e[n]);return t}return t}var vs=So(null),bs=null,ws=null,ks=null;function xs(){ks=ws=bs=null}function _s(e){var t=vs.current;Co(vs),e._currentValue=t}function Ts(e,t,n){for(;null!==e;){var a=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,null!==a&&(a.childLanes|=t)):null!==a&&(a.childLanes&t)!==t&&(a.childLanes|=t),e===n)break;e=e.return}}function Ss(e,t){bs=e,ks=ws=null,null!==(e=e.dependencies)&&null!==e.firstContext&&(0!==(e.lanes&t)&&(wi=!0),e.firstContext=null)}function Cs(e){var t=e._currentValue;if(ks!==e)if(e={context:e,memoizedValue:t,next:null},null===ws){if(null===bs)throw Error(s(308));ws=e,bs.dependencies={lanes:0,firstContext:e}}else ws=ws.next=e;return t}var Es=null;function js(e){null===Es?Es=[e]:Es.push(e)}function As(e,t,n,a){var o=t.interleaved;return null===o?(n.next=n,js(t)):(n.next=o.next,o.next=n),t.interleaved=n,Ns(e,a)}function Ns(e,t){e.lanes|=t;var n=e.alternate;for(null!==n&&(n.lanes|=t),n=e,e=e.return;null!==e;)e.childLanes|=t,null!==(n=e.alternate)&&(n.childLanes|=t),n=e,e=e.return;return 3===n.tag?n.stateNode:null}var Ds=!1;function Os(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Rs(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Ps(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Is(e,t,n){var a=e.updateQueue;if(null===a)return null;if(a=a.shared,0!==(2&jl)){var o=a.pending;return null===o?t.next=t:(t.next=o.next,o.next=t),a.pending=t,Ns(e,n)}return null===(o=a.interleaved)?(t.next=t,js(a)):(t.next=o.next,o.next=t),a.interleaved=t,Ns(e,n)}function Ls(e,t,n){if(null!==(t=t.updateQueue)&&(t=t.shared,0!==(4194240&n))){var a=t.lanes;n|=a&=e.pendingLanes,t.lanes=n,vt(e,n)}}function Fs(e,t){var n=e.updateQueue,a=e.alternate;if(null!==a&&n===(a=a.updateQueue)){var o=null,s=null;if(null!==(n=n.firstBaseUpdate)){do{var r={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};null===s?o=s=r:s=s.next=r,n=n.next}while(null!==n);null===s?o=s=t:s=s.next=t}else o=s=t;return n={baseState:a.baseState,firstBaseUpdate:o,lastBaseUpdate:s,shared:a.shared,effects:a.effects},void(e.updateQueue=n)}null===(e=n.lastBaseUpdate)?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Ms(e,t,n,a){var o=e.updateQueue;Ds=!1;var s=o.firstBaseUpdate,r=o.lastBaseUpdate,i=o.shared.pending;if(null!==i){o.shared.pending=null;var l=i,c=l.next;l.next=null,null===r?s=c:r.next=c,r=l;var m=e.alternate;null!==m&&((i=(m=m.updateQueue).lastBaseUpdate)!==r&&(null===i?m.firstBaseUpdate=c:i.next=c,m.lastBaseUpdate=l))}if(null!==s){var d=o.baseState;for(r=0,m=c=l=null,i=s;;){var p=i.lane,u=i.eventTime;if((a&p)===p){null!==m&&(m=m.next={eventTime:u,lane:0,tag:i.tag,payload:i.payload,callback:i.callback,next:null});e:{var h=e,f=i;switch(p=t,u=n,f.tag){case 1:if("function"===typeof(h=f.payload)){d=h.call(u,d,p);break e}d=h;break e;case 3:h.flags=-65537&h.flags|128;case 0:if(null===(p="function"===typeof(h=f.payload)?h.call(u,d,p):h)||void 0===p)break e;d=F({},d,p);break e;case 2:Ds=!0}}null!==i.callback&&0!==i.lane&&(e.flags|=64,null===(p=o.effects)?o.effects=[i]:p.push(i))}else u={eventTime:u,lane:p,tag:i.tag,payload:i.payload,callback:i.callback,next:null},null===m?(c=m=u,l=d):m=m.next=u,r|=p;if(null===(i=i.next)){if(null===(i=o.shared.pending))break;i=(p=i).next,p.next=null,o.lastBaseUpdate=p,o.shared.pending=null}}if(null===m&&(l=d),o.baseState=l,o.firstBaseUpdate=c,o.lastBaseUpdate=m,null!==(t=o.shared.interleaved)){o=t;do{r|=o.lane,o=o.next}while(o!==t)}else null===s&&(o.shared.lanes=0);Ll|=r,e.lanes=r,e.memoizedState=d}}function Ws(e,t,n){if(e=t.effects,t.effects=null,null!==e)for(t=0;t<e.length;t++){var a=e[t],o=a.callback;if(null!==o){if(a.callback=null,a=n,"function"!==typeof o)throw Error(s(191,o));o.call(a)}}}var Bs=(new a.Component).refs;function zs(e,t,n,a){n=null===(n=n(a,t=e.memoizedState))||void 0===n?t:F({},t,n),e.memoizedState=n,0===e.lanes&&(e.updateQueue.baseState=n)}var Us={isMounted:function(e){return!!(e=e._reactInternals)&&Ue(e)===e},enqueueSetState:function(e,t,n){e=e._reactInternals;var a=ec(),o=tc(e),s=Ps(a,o);s.payload=t,void 0!==n&&null!==n&&(s.callback=n),null!==(t=Is(e,s,o))&&(nc(t,e,o,a),Ls(t,e,o))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var a=ec(),o=tc(e),s=Ps(a,o);s.tag=1,s.payload=t,void 0!==n&&null!==n&&(s.callback=n),null!==(t=Is(e,s,o))&&(nc(t,e,o,a),Ls(t,e,o))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=ec(),a=tc(e),o=Ps(n,a);o.tag=2,void 0!==t&&null!==t&&(o.callback=t),null!==(t=Is(e,o,a))&&(nc(t,e,a,n),Ls(t,e,a))}};function Hs(e,t,n,a,o,s,r){return"function"===typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(a,s,r):!t.prototype||!t.prototype.isPureReactComponent||(!la(n,a)||!la(o,s))}function Gs(e,t,n){var a=!1,o=jo,s=t.contextType;return"object"===typeof s&&null!==s?s=Cs(s):(o=Ro(t)?Do:Ao.current,s=(a=null!==(a=t.contextTypes)&&void 0!==a)?Oo(e,o):jo),t=new t(n,s),e.memoizedState=null!==t.state&&void 0!==t.state?t.state:null,t.updater=Us,e.stateNode=t,t._reactInternals=e,a&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=o,e.__reactInternalMemoizedMaskedChildContext=s),t}function Vs(e,t,n,a){e=t.state,"function"===typeof t.componentWillReceiveProps&&t.componentWillReceiveProps(n,a),"function"===typeof t.UNSAFE_componentWillReceiveProps&&t.UNSAFE_componentWillReceiveProps(n,a),t.state!==e&&Us.enqueueReplaceState(t,t.state,null)}function Ks(e,t,n,a){var o=e.stateNode;o.props=n,o.state=e.memoizedState,o.refs=Bs,Os(e);var s=t.contextType;"object"===typeof s&&null!==s?o.context=Cs(s):(s=Ro(t)?Do:Ao.current,o.context=Oo(e,s)),o.state=e.memoizedState,"function"===typeof(s=t.getDerivedStateFromProps)&&(zs(e,t,s,n),o.state=e.memoizedState),"function"===typeof t.getDerivedStateFromProps||"function"===typeof o.getSnapshotBeforeUpdate||"function"!==typeof o.UNSAFE_componentWillMount&&"function"!==typeof o.componentWillMount||(t=o.state,"function"===typeof o.componentWillMount&&o.componentWillMount(),"function"===typeof o.UNSAFE_componentWillMount&&o.UNSAFE_componentWillMount(),t!==o.state&&Us.enqueueReplaceState(o,o.state,null),Ms(e,n,o,a),o.state=e.memoizedState),"function"===typeof o.componentDidMount&&(e.flags|=4194308)}function $s(e,t,n){if(null!==(e=n.ref)&&"function"!==typeof e&&"object"!==typeof e){if(n._owner){if(n=n._owner){if(1!==n.tag)throw Error(s(309));var a=n.stateNode}if(!a)throw Error(s(147,e));var o=a,r=""+e;return null!==t&&null!==t.ref&&"function"===typeof t.ref&&t.ref._stringRef===r?t.ref:(t=function(e){var t=o.refs;t===Bs&&(t=o.refs={}),null===e?delete t[r]:t[r]=e},t._stringRef=r,t)}if("string"!==typeof e)throw Error(s(284));if(!n._owner)throw Error(s(290,e))}return e}function qs(e,t){throw e=Object.prototype.toString.call(t),Error(s(31,"[object Object]"===e?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function Ys(e){return(0,e._init)(e._payload)}function Zs(e){function t(t,n){if(e){var a=t.deletions;null===a?(t.deletions=[n],t.flags|=16):a.push(n)}}function n(n,a){if(!e)return null;for(;null!==a;)t(n,a),a=a.sibling;return null}function a(e,t){for(e=new Map;null!==t;)null!==t.key?e.set(t.key,t):e.set(t.index,t),t=t.sibling;return e}function o(e,t){return(e=Rc(e,t)).index=0,e.sibling=null,e}function r(t,n,a){return t.index=a,e?null!==(a=t.alternate)?(a=a.index)<n?(t.flags|=2,n):a:(t.flags|=2,n):(t.flags|=1048576,n)}function i(t){return e&&null===t.alternate&&(t.flags|=2),t}function l(e,t,n,a){return null===t||6!==t.tag?((t=Fc(n,e.mode,a)).return=e,t):((t=o(t,n)).return=e,t)}function c(e,t,n,a){var s=n.type;return s===_?d(e,t,n.props.children,a,n.key):null!==t&&(t.elementType===s||"object"===typeof s&&null!==s&&s.$$typeof===O&&Ys(s)===t.type)?((a=o(t,n.props)).ref=$s(e,t,n),a.return=e,a):((a=Pc(n.type,n.key,n.props,null,e.mode,a)).ref=$s(e,t,n),a.return=e,a)}function m(e,t,n,a){return null===t||4!==t.tag||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?((t=Mc(n,e.mode,a)).return=e,t):((t=o(t,n.children||[])).return=e,t)}function d(e,t,n,a,s){return null===t||7!==t.tag?((t=Ic(n,e.mode,a,s)).return=e,t):((t=o(t,n)).return=e,t)}function p(e,t,n){if("string"===typeof t&&""!==t||"number"===typeof t)return(t=Fc(""+t,e.mode,n)).return=e,t;if("object"===typeof t&&null!==t){switch(t.$$typeof){case k:return(n=Pc(t.type,t.key,t.props,null,e.mode,n)).ref=$s(e,null,t),n.return=e,n;case x:return(t=Mc(t,e.mode,n)).return=e,t;case O:return p(e,(0,t._init)(t._payload),n)}if(te(t)||I(t))return(t=Ic(t,e.mode,n,null)).return=e,t;qs(e,t)}return null}function u(e,t,n,a){var o=null!==t?t.key:null;if("string"===typeof n&&""!==n||"number"===typeof n)return null!==o?null:l(e,t,""+n,a);if("object"===typeof n&&null!==n){switch(n.$$typeof){case k:return n.key===o?c(e,t,n,a):null;case x:return n.key===o?m(e,t,n,a):null;case O:return u(e,t,(o=n._init)(n._payload),a)}if(te(n)||I(n))return null!==o?null:d(e,t,n,a,null);qs(e,n)}return null}function h(e,t,n,a,o){if("string"===typeof a&&""!==a||"number"===typeof a)return l(t,e=e.get(n)||null,""+a,o);if("object"===typeof a&&null!==a){switch(a.$$typeof){case k:return c(t,e=e.get(null===a.key?n:a.key)||null,a,o);case x:return m(t,e=e.get(null===a.key?n:a.key)||null,a,o);case O:return h(e,t,n,(0,a._init)(a._payload),o)}if(te(a)||I(a))return d(t,e=e.get(n)||null,a,o,null);qs(t,a)}return null}function f(o,s,i,l){for(var c=null,m=null,d=s,f=s=0,g=null;null!==d&&f<i.length;f++){d.index>f?(g=d,d=null):g=d.sibling;var y=u(o,d,i[f],l);if(null===y){null===d&&(d=g);break}e&&d&&null===y.alternate&&t(o,d),s=r(y,s,f),null===m?c=y:m.sibling=y,m=y,d=g}if(f===i.length)return n(o,d),ss&&Qo(o,f),c;if(null===d){for(;f<i.length;f++)null!==(d=p(o,i[f],l))&&(s=r(d,s,f),null===m?c=d:m.sibling=d,m=d);return ss&&Qo(o,f),c}for(d=a(o,d);f<i.length;f++)null!==(g=h(d,o,f,i[f],l))&&(e&&null!==g.alternate&&d.delete(null===g.key?f:g.key),s=r(g,s,f),null===m?c=g:m.sibling=g,m=g);return e&&d.forEach((function(e){return t(o,e)})),ss&&Qo(o,f),c}function g(o,i,l,c){var m=I(l);if("function"!==typeof m)throw Error(s(150));if(null==(l=m.call(l)))throw Error(s(151));for(var d=m=null,f=i,g=i=0,y=null,v=l.next();null!==f&&!v.done;g++,v=l.next()){f.index>g?(y=f,f=null):y=f.sibling;var b=u(o,f,v.value,c);if(null===b){null===f&&(f=y);break}e&&f&&null===b.alternate&&t(o,f),i=r(b,i,g),null===d?m=b:d.sibling=b,d=b,f=y}if(v.done)return n(o,f),ss&&Qo(o,g),m;if(null===f){for(;!v.done;g++,v=l.next())null!==(v=p(o,v.value,c))&&(i=r(v,i,g),null===d?m=v:d.sibling=v,d=v);return ss&&Qo(o,g),m}for(f=a(o,f);!v.done;g++,v=l.next())null!==(v=h(f,o,g,v.value,c))&&(e&&null!==v.alternate&&f.delete(null===v.key?g:v.key),i=r(v,i,g),null===d?m=v:d.sibling=v,d=v);return e&&f.forEach((function(e){return t(o,e)})),ss&&Qo(o,g),m}return function e(a,s,r,l){if("object"===typeof r&&null!==r&&r.type===_&&null===r.key&&(r=r.props.children),"object"===typeof r&&null!==r){switch(r.$$typeof){case k:e:{for(var c=r.key,m=s;null!==m;){if(m.key===c){if((c=r.type)===_){if(7===m.tag){n(a,m.sibling),(s=o(m,r.props.children)).return=a,a=s;break e}}else if(m.elementType===c||"object"===typeof c&&null!==c&&c.$$typeof===O&&Ys(c)===m.type){n(a,m.sibling),(s=o(m,r.props)).ref=$s(a,m,r),s.return=a,a=s;break e}n(a,m);break}t(a,m),m=m.sibling}r.type===_?((s=Ic(r.props.children,a.mode,l,r.key)).return=a,a=s):((l=Pc(r.type,r.key,r.props,null,a.mode,l)).ref=$s(a,s,r),l.return=a,a=l)}return i(a);case x:e:{for(m=r.key;null!==s;){if(s.key===m){if(4===s.tag&&s.stateNode.containerInfo===r.containerInfo&&s.stateNode.implementation===r.implementation){n(a,s.sibling),(s=o(s,r.children||[])).return=a,a=s;break e}n(a,s);break}t(a,s),s=s.sibling}(s=Mc(r,a.mode,l)).return=a,a=s}return i(a);case O:return e(a,s,(m=r._init)(r._payload),l)}if(te(r))return f(a,s,r,l);if(I(r))return g(a,s,r,l);qs(a,r)}return"string"===typeof r&&""!==r||"number"===typeof r?(r=""+r,null!==s&&6===s.tag?(n(a,s.sibling),(s=o(s,r)).return=a,a=s):(n(a,s),(s=Fc(r,a.mode,l)).return=a,a=s),i(a)):n(a,s)}}var Js=Zs(!0),Xs=Zs(!1),Qs={},er=So(Qs),tr=So(Qs),nr=So(Qs);function ar(e){if(e===Qs)throw Error(s(174));return e}function or(e,t){switch(Eo(nr,t),Eo(tr,e),Eo(er,Qs),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:le(null,"");break;default:t=le(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}Co(er),Eo(er,t)}function sr(){Co(er),Co(tr),Co(nr)}function rr(e){ar(nr.current);var t=ar(er.current),n=le(t,e.type);t!==n&&(Eo(tr,e),Eo(er,n))}function ir(e){tr.current===e&&(Co(er),Co(tr))}var lr=So(0);function cr(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||"$!"===n.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(0!==(128&t.flags))return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var mr=[];function dr(){for(var e=0;e<mr.length;e++)mr[e]._workInProgressVersionPrimary=null;mr.length=0}var pr=w.ReactCurrentDispatcher,ur=w.ReactCurrentBatchConfig,hr=0,fr=null,gr=null,yr=null,vr=!1,br=!1,wr=0,kr=0;function xr(){throw Error(s(321))}function _r(e,t){if(null===t)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!ia(e[n],t[n]))return!1;return!0}function Tr(e,t,n,a,o,r){if(hr=r,fr=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,pr.current=null===e||null===e.memoizedState?ii:li,e=n(a,o),br){r=0;do{if(br=!1,wr=0,25<=r)throw Error(s(301));r+=1,yr=gr=null,t.updateQueue=null,pr.current=ci,e=n(a,o)}while(br)}if(pr.current=ri,t=null!==gr&&null!==gr.next,hr=0,yr=gr=fr=null,vr=!1,t)throw Error(s(300));return e}function Sr(){var e=0!==wr;return wr=0,e}function Cr(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===yr?fr.memoizedState=yr=e:yr=yr.next=e,yr}function Er(){if(null===gr){var e=fr.alternate;e=null!==e?e.memoizedState:null}else e=gr.next;var t=null===yr?fr.memoizedState:yr.next;if(null!==t)yr=t,gr=e;else{if(null===e)throw Error(s(310));e={memoizedState:(gr=e).memoizedState,baseState:gr.baseState,baseQueue:gr.baseQueue,queue:gr.queue,next:null},null===yr?fr.memoizedState=yr=e:yr=yr.next=e}return yr}function jr(e,t){return"function"===typeof t?t(e):t}function Ar(e){var t=Er(),n=t.queue;if(null===n)throw Error(s(311));n.lastRenderedReducer=e;var a=gr,o=a.baseQueue,r=n.pending;if(null!==r){if(null!==o){var i=o.next;o.next=r.next,r.next=i}a.baseQueue=o=r,n.pending=null}if(null!==o){r=o.next,a=a.baseState;var l=i=null,c=null,m=r;do{var d=m.lane;if((hr&d)===d)null!==c&&(c=c.next={lane:0,action:m.action,hasEagerState:m.hasEagerState,eagerState:m.eagerState,next:null}),a=m.hasEagerState?m.eagerState:e(a,m.action);else{var p={lane:d,action:m.action,hasEagerState:m.hasEagerState,eagerState:m.eagerState,next:null};null===c?(l=c=p,i=a):c=c.next=p,fr.lanes|=d,Ll|=d}m=m.next}while(null!==m&&m!==r);null===c?i=a:c.next=l,ia(a,t.memoizedState)||(wi=!0),t.memoizedState=a,t.baseState=i,t.baseQueue=c,n.lastRenderedState=a}if(null!==(e=n.interleaved)){o=e;do{r=o.lane,fr.lanes|=r,Ll|=r,o=o.next}while(o!==e)}else null===o&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function Nr(e){var t=Er(),n=t.queue;if(null===n)throw Error(s(311));n.lastRenderedReducer=e;var a=n.dispatch,o=n.pending,r=t.memoizedState;if(null!==o){n.pending=null;var i=o=o.next;do{r=e(r,i.action),i=i.next}while(i!==o);ia(r,t.memoizedState)||(wi=!0),t.memoizedState=r,null===t.baseQueue&&(t.baseState=r),n.lastRenderedState=r}return[r,a]}function Dr(){}function Or(e,t){var n=fr,a=Er(),o=t(),r=!ia(a.memoizedState,o);if(r&&(a.memoizedState=o,wi=!0),a=a.queue,Gr(Ir.bind(null,n,a,e),[e]),a.getSnapshot!==t||r||null!==yr&&1&yr.memoizedState.tag){if(n.flags|=2048,Wr(9,Pr.bind(null,n,a,o,t),void 0,null),null===Al)throw Error(s(349));0!==(30&hr)||Rr(n,t,o)}return o}function Rr(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},null===(t=fr.updateQueue)?(t={lastEffect:null,stores:null},fr.updateQueue=t,t.stores=[e]):null===(n=t.stores)?t.stores=[e]:n.push(e)}function Pr(e,t,n,a){t.value=n,t.getSnapshot=a,Lr(t)&&Fr(e)}function Ir(e,t,n){return n((function(){Lr(t)&&Fr(e)}))}function Lr(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!ia(e,n)}catch(a){return!0}}function Fr(e){var t=Ns(e,1);null!==t&&nc(t,e,1,-1)}function Mr(e){var t=Cr();return"function"===typeof e&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:jr,lastRenderedState:e},t.queue=e,e=e.dispatch=ni.bind(null,fr,e),[t.memoizedState,e]}function Wr(e,t,n,a){return e={tag:e,create:t,destroy:n,deps:a,next:null},null===(t=fr.updateQueue)?(t={lastEffect:null,stores:null},fr.updateQueue=t,t.lastEffect=e.next=e):null===(n=t.lastEffect)?t.lastEffect=e.next=e:(a=n.next,n.next=e,e.next=a,t.lastEffect=e),e}function Br(){return Er().memoizedState}function zr(e,t,n,a){var o=Cr();fr.flags|=e,o.memoizedState=Wr(1|t,n,void 0,void 0===a?null:a)}function Ur(e,t,n,a){var o=Er();a=void 0===a?null:a;var s=void 0;if(null!==gr){var r=gr.memoizedState;if(s=r.destroy,null!==a&&_r(a,r.deps))return void(o.memoizedState=Wr(t,n,s,a))}fr.flags|=e,o.memoizedState=Wr(1|t,n,s,a)}function Hr(e,t){return zr(8390656,8,e,t)}function Gr(e,t){return Ur(2048,8,e,t)}function Vr(e,t){return Ur(4,2,e,t)}function Kr(e,t){return Ur(4,4,e,t)}function $r(e,t){return"function"===typeof t?(e=e(),t(e),function(){t(null)}):null!==t&&void 0!==t?(e=e(),t.current=e,function(){t.current=null}):void 0}function qr(e,t,n){return n=null!==n&&void 0!==n?n.concat([e]):null,Ur(4,4,$r.bind(null,t,e),n)}function Yr(){}function Zr(e,t){var n=Er();t=void 0===t?null:t;var a=n.memoizedState;return null!==a&&null!==t&&_r(t,a[1])?a[0]:(n.memoizedState=[e,t],e)}function Jr(e,t){var n=Er();t=void 0===t?null:t;var a=n.memoizedState;return null!==a&&null!==t&&_r(t,a[1])?a[0]:(e=e(),n.memoizedState=[e,t],e)}function Xr(e,t,n){return 0===(21&hr)?(e.baseState&&(e.baseState=!1,wi=!0),e.memoizedState=n):(ia(n,t)||(n=ft(),fr.lanes|=n,Ll|=n,e.baseState=!0),t)}function Qr(e,t){var n=bt;bt=0!==n&&4>n?n:4,e(!0);var a=ur.transition;ur.transition={};try{e(!1),t()}finally{bt=n,ur.transition=a}}function ei(){return Er().memoizedState}function ti(e,t,n){var a=tc(e);if(n={lane:a,action:n,hasEagerState:!1,eagerState:null,next:null},ai(e))oi(t,n);else if(null!==(n=As(e,t,n,a))){nc(n,e,a,ec()),si(n,t,a)}}function ni(e,t,n){var a=tc(e),o={lane:a,action:n,hasEagerState:!1,eagerState:null,next:null};if(ai(e))oi(t,o);else{var s=e.alternate;if(0===e.lanes&&(null===s||0===s.lanes)&&null!==(s=t.lastRenderedReducer))try{var r=t.lastRenderedState,i=s(r,n);if(o.hasEagerState=!0,o.eagerState=i,ia(i,r)){var l=t.interleaved;return null===l?(o.next=o,js(t)):(o.next=l.next,l.next=o),void(t.interleaved=o)}}catch(c){}null!==(n=As(e,t,o,a))&&(nc(n,e,a,o=ec()),si(n,t,a))}}function ai(e){var t=e.alternate;return e===fr||null!==t&&t===fr}function oi(e,t){br=vr=!0;var n=e.pending;null===n?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function si(e,t,n){if(0!==(4194240&n)){var a=t.lanes;n|=a&=e.pendingLanes,t.lanes=n,vt(e,n)}}var ri={readContext:Cs,useCallback:xr,useContext:xr,useEffect:xr,useImperativeHandle:xr,useInsertionEffect:xr,useLayoutEffect:xr,useMemo:xr,useReducer:xr,useRef:xr,useState:xr,useDebugValue:xr,useDeferredValue:xr,useTransition:xr,useMutableSource:xr,useSyncExternalStore:xr,useId:xr,unstable_isNewReconciler:!1},ii={readContext:Cs,useCallback:function(e,t){return Cr().memoizedState=[e,void 0===t?null:t],e},useContext:Cs,useEffect:Hr,useImperativeHandle:function(e,t,n){return n=null!==n&&void 0!==n?n.concat([e]):null,zr(4194308,4,$r.bind(null,t,e),n)},useLayoutEffect:function(e,t){return zr(4194308,4,e,t)},useInsertionEffect:function(e,t){return zr(4,2,e,t)},useMemo:function(e,t){var n=Cr();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var a=Cr();return t=void 0!==n?n(t):t,a.memoizedState=a.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},a.queue=e,e=e.dispatch=ti.bind(null,fr,e),[a.memoizedState,e]},useRef:function(e){return e={current:e},Cr().memoizedState=e},useState:Mr,useDebugValue:Yr,useDeferredValue:function(e){return Cr().memoizedState=e},useTransition:function(){var e=Mr(!1),t=e[0];return e=Qr.bind(null,e[1]),Cr().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var a=fr,o=Cr();if(ss){if(void 0===n)throw Error(s(407));n=n()}else{if(n=t(),null===Al)throw Error(s(349));0!==(30&hr)||Rr(a,t,n)}o.memoizedState=n;var r={value:n,getSnapshot:t};return o.queue=r,Hr(Ir.bind(null,a,r,e),[e]),a.flags|=2048,Wr(9,Pr.bind(null,a,r,n,t),void 0,null),n},useId:function(){var e=Cr(),t=Al.identifierPrefix;if(ss){var n=Xo;t=":"+t+"R"+(n=(Jo&~(1<<32-rt(Jo)-1)).toString(32)+n),0<(n=wr++)&&(t+="H"+n.toString(32)),t+=":"}else t=":"+t+"r"+(n=kr++).toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},li={readContext:Cs,useCallback:Zr,useContext:Cs,useEffect:Gr,useImperativeHandle:qr,useInsertionEffect:Vr,useLayoutEffect:Kr,useMemo:Jr,useReducer:Ar,useRef:Br,useState:function(){return Ar(jr)},useDebugValue:Yr,useDeferredValue:function(e){return Xr(Er(),gr.memoizedState,e)},useTransition:function(){return[Ar(jr)[0],Er().memoizedState]},useMutableSource:Dr,useSyncExternalStore:Or,useId:ei,unstable_isNewReconciler:!1},ci={readContext:Cs,useCallback:Zr,useContext:Cs,useEffect:Gr,useImperativeHandle:qr,useInsertionEffect:Vr,useLayoutEffect:Kr,useMemo:Jr,useReducer:Nr,useRef:Br,useState:function(){return Nr(jr)},useDebugValue:Yr,useDeferredValue:function(e){var t=Er();return null===gr?t.memoizedState=e:Xr(t,gr.memoizedState,e)},useTransition:function(){return[Nr(jr)[0],Er().memoizedState]},useMutableSource:Dr,useSyncExternalStore:Or,useId:ei,unstable_isNewReconciler:!1};function mi(e,t){try{var n="",a=t;do{n+=z(a),a=a.return}while(a);var o=n}catch(s){o="\nError generating stack: "+s.message+"\n"+s.stack}return{value:e,source:t,stack:o,digest:null}}function di(e,t,n){return{value:e,source:null,stack:null!=n?n:null,digest:null!=t?t:null}}function pi(e,t){try{console.error(t.value)}catch(n){setTimeout((function(){throw n}))}}var ui="function"===typeof WeakMap?WeakMap:Map;function hi(e,t,n){(n=Ps(-1,n)).tag=3,n.payload={element:null};var a=t.value;return n.callback=function(){Gl||(Gl=!0,Vl=a),pi(0,t)},n}function fi(e,t,n){(n=Ps(-1,n)).tag=3;var a=e.type.getDerivedStateFromError;if("function"===typeof a){var o=t.value;n.payload=function(){return a(o)},n.callback=function(){pi(0,t)}}var s=e.stateNode;return null!==s&&"function"===typeof s.componentDidCatch&&(n.callback=function(){pi(0,t),"function"!==typeof a&&(null===Kl?Kl=new Set([this]):Kl.add(this));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),n}function gi(e,t,n){var a=e.pingCache;if(null===a){a=e.pingCache=new ui;var o=new Set;a.set(t,o)}else void 0===(o=a.get(t))&&(o=new Set,a.set(t,o));o.has(n)||(o.add(n),e=Sc.bind(null,e,t,n),t.then(e,e))}function yi(e){do{var t;if((t=13===e.tag)&&(t=null===(t=e.memoizedState)||null!==t.dehydrated),t)return e;e=e.return}while(null!==e);return null}function vi(e,t,n,a,o){return 0===(1&e.mode)?(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,1===n.tag&&(null===n.alternate?n.tag=17:((t=Ps(-1,1)).tag=2,Is(n,t,1))),n.lanes|=1),e):(e.flags|=65536,e.lanes=o,e)}var bi=w.ReactCurrentOwner,wi=!1;function ki(e,t,n,a){t.child=null===e?Xs(t,null,n,a):Js(t,e.child,n,a)}function xi(e,t,n,a,o){n=n.render;var s=t.ref;return Ss(t,o),a=Tr(e,t,n,a,s,o),n=Sr(),null===e||wi?(ss&&n&&ts(t),t.flags|=1,ki(e,t,a,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,Gi(e,t,o))}function _i(e,t,n,a,o){if(null===e){var s=n.type;return"function"!==typeof s||Oc(s)||void 0!==s.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=Pc(n.type,null,a,t,t.mode,o)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=s,Ti(e,t,s,a,o))}if(s=e.child,0===(e.lanes&o)){var r=s.memoizedProps;if((n=null!==(n=n.compare)?n:la)(r,a)&&e.ref===t.ref)return Gi(e,t,o)}return t.flags|=1,(e=Rc(s,a)).ref=t.ref,e.return=t,t.child=e}function Ti(e,t,n,a,o){if(null!==e){var s=e.memoizedProps;if(la(s,a)&&e.ref===t.ref){if(wi=!1,t.pendingProps=a=s,0===(e.lanes&o))return t.lanes=e.lanes,Gi(e,t,o);0!==(131072&e.flags)&&(wi=!0)}}return Ei(e,t,n,a,o)}function Si(e,t,n){var a=t.pendingProps,o=a.children,s=null!==e?e.memoizedState:null;if("hidden"===a.mode)if(0===(1&t.mode))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},Eo(Rl,Ol),Ol|=n;else{if(0===(1073741824&n))return e=null!==s?s.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,Eo(Rl,Ol),Ol|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},a=null!==s?s.baseLanes:n,Eo(Rl,Ol),Ol|=a}else null!==s?(a=s.baseLanes|n,t.memoizedState=null):a=n,Eo(Rl,Ol),Ol|=a;return ki(e,t,o,n),t.child}function Ci(e,t){var n=t.ref;(null===e&&null!==n||null!==e&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Ei(e,t,n,a,o){var s=Ro(n)?Do:Ao.current;return s=Oo(t,s),Ss(t,o),n=Tr(e,t,n,a,s,o),a=Sr(),null===e||wi?(ss&&a&&ts(t),t.flags|=1,ki(e,t,n,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,Gi(e,t,o))}function ji(e,t,n,a,o){if(Ro(n)){var s=!0;Fo(t)}else s=!1;if(Ss(t,o),null===t.stateNode)Hi(e,t),Gs(t,n,a),Ks(t,n,a,o),a=!0;else if(null===e){var r=t.stateNode,i=t.memoizedProps;r.props=i;var l=r.context,c=n.contextType;"object"===typeof c&&null!==c?c=Cs(c):c=Oo(t,c=Ro(n)?Do:Ao.current);var m=n.getDerivedStateFromProps,d="function"===typeof m||"function"===typeof r.getSnapshotBeforeUpdate;d||"function"!==typeof r.UNSAFE_componentWillReceiveProps&&"function"!==typeof r.componentWillReceiveProps||(i!==a||l!==c)&&Vs(t,r,a,c),Ds=!1;var p=t.memoizedState;r.state=p,Ms(t,a,r,o),l=t.memoizedState,i!==a||p!==l||No.current||Ds?("function"===typeof m&&(zs(t,n,m,a),l=t.memoizedState),(i=Ds||Hs(t,n,i,a,p,l,c))?(d||"function"!==typeof r.UNSAFE_componentWillMount&&"function"!==typeof r.componentWillMount||("function"===typeof r.componentWillMount&&r.componentWillMount(),"function"===typeof r.UNSAFE_componentWillMount&&r.UNSAFE_componentWillMount()),"function"===typeof r.componentDidMount&&(t.flags|=4194308)):("function"===typeof r.componentDidMount&&(t.flags|=4194308),t.memoizedProps=a,t.memoizedState=l),r.props=a,r.state=l,r.context=c,a=i):("function"===typeof r.componentDidMount&&(t.flags|=4194308),a=!1)}else{r=t.stateNode,Rs(e,t),i=t.memoizedProps,c=t.type===t.elementType?i:ys(t.type,i),r.props=c,d=t.pendingProps,p=r.context,"object"===typeof(l=n.contextType)&&null!==l?l=Cs(l):l=Oo(t,l=Ro(n)?Do:Ao.current);var u=n.getDerivedStateFromProps;(m="function"===typeof u||"function"===typeof r.getSnapshotBeforeUpdate)||"function"!==typeof r.UNSAFE_componentWillReceiveProps&&"function"!==typeof r.componentWillReceiveProps||(i!==d||p!==l)&&Vs(t,r,a,l),Ds=!1,p=t.memoizedState,r.state=p,Ms(t,a,r,o);var h=t.memoizedState;i!==d||p!==h||No.current||Ds?("function"===typeof u&&(zs(t,n,u,a),h=t.memoizedState),(c=Ds||Hs(t,n,c,a,p,h,l)||!1)?(m||"function"!==typeof r.UNSAFE_componentWillUpdate&&"function"!==typeof r.componentWillUpdate||("function"===typeof r.componentWillUpdate&&r.componentWillUpdate(a,h,l),"function"===typeof r.UNSAFE_componentWillUpdate&&r.UNSAFE_componentWillUpdate(a,h,l)),"function"===typeof r.componentDidUpdate&&(t.flags|=4),"function"===typeof r.getSnapshotBeforeUpdate&&(t.flags|=1024)):("function"!==typeof r.componentDidUpdate||i===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),"function"!==typeof r.getSnapshotBeforeUpdate||i===e.memoizedProps&&p===e.memoizedState||(t.flags|=1024),t.memoizedProps=a,t.memoizedState=h),r.props=a,r.state=h,r.context=l,a=c):("function"!==typeof r.componentDidUpdate||i===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),"function"!==typeof r.getSnapshotBeforeUpdate||i===e.memoizedProps&&p===e.memoizedState||(t.flags|=1024),a=!1)}return Ai(e,t,n,a,s,o)}function Ai(e,t,n,a,o,s){Ci(e,t);var r=0!==(128&t.flags);if(!a&&!r)return o&&Mo(t,n,!1),Gi(e,t,s);a=t.stateNode,bi.current=t;var i=r&&"function"!==typeof n.getDerivedStateFromError?null:a.render();return t.flags|=1,null!==e&&r?(t.child=Js(t,e.child,null,s),t.child=Js(t,null,i,s)):ki(e,t,i,s),t.memoizedState=a.state,o&&Mo(t,n,!0),t.child}function Ni(e){var t=e.stateNode;t.pendingContext?Io(0,t.pendingContext,t.pendingContext!==t.context):t.context&&Io(0,t.context,!1),or(e,t.containerInfo)}function Di(e,t,n,a,o){return hs(),fs(o),t.flags|=256,ki(e,t,n,a),t.child}var Oi,Ri,Pi,Ii={dehydrated:null,treeContext:null,retryLane:0};function Li(e){return{baseLanes:e,cachePool:null,transitions:null}}function Fi(e,t,n){var a,o=t.pendingProps,r=lr.current,i=!1,l=0!==(128&t.flags);if((a=l)||(a=(null===e||null!==e.memoizedState)&&0!==(2&r)),a?(i=!0,t.flags&=-129):null!==e&&null===e.memoizedState||(r|=1),Eo(lr,1&r),null===e)return ms(t),null!==(e=t.memoizedState)&&null!==(e=e.dehydrated)?(0===(1&t.mode)?t.lanes=1:"$!"===e.data?t.lanes=8:t.lanes=1073741824,null):(l=o.children,e=o.fallback,i?(o=t.mode,i=t.child,l={mode:"hidden",children:l},0===(1&o)&&null!==i?(i.childLanes=0,i.pendingProps=l):i=Lc(l,o,0,null),e=Ic(e,o,n,null),i.return=t,e.return=t,i.sibling=e,t.child=i,t.child.memoizedState=Li(n),t.memoizedState=Ii,e):Mi(t,l));if(null!==(r=e.memoizedState)&&null!==(a=r.dehydrated))return function(e,t,n,a,o,r,i){if(n)return 256&t.flags?(t.flags&=-257,Wi(e,t,i,a=di(Error(s(422))))):null!==t.memoizedState?(t.child=e.child,t.flags|=128,null):(r=a.fallback,o=t.mode,a=Lc({mode:"visible",children:a.children},o,0,null),(r=Ic(r,o,i,null)).flags|=2,a.return=t,r.return=t,a.sibling=r,t.child=a,0!==(1&t.mode)&&Js(t,e.child,null,i),t.child.memoizedState=Li(i),t.memoizedState=Ii,r);if(0===(1&t.mode))return Wi(e,t,i,null);if("$!"===o.data){if(a=o.nextSibling&&o.nextSibling.dataset)var l=a.dgst;return a=l,Wi(e,t,i,a=di(r=Error(s(419)),a,void 0))}if(l=0!==(i&e.childLanes),wi||l){if(null!==(a=Al)){switch(i&-i){case 4:o=2;break;case 16:o=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:o=32;break;case 536870912:o=268435456;break;default:o=0}0!==(o=0!==(o&(a.suspendedLanes|i))?0:o)&&o!==r.retryLane&&(r.retryLane=o,Ns(e,o),nc(a,e,o,-1))}return fc(),Wi(e,t,i,a=di(Error(s(421))))}return"$?"===o.data?(t.flags|=128,t.child=e.child,t=Ec.bind(null,e),o._reactRetry=t,null):(e=r.treeContext,os=co(o.nextSibling),as=t,ss=!0,rs=null,null!==e&&(qo[Yo++]=Jo,qo[Yo++]=Xo,qo[Yo++]=Zo,Jo=e.id,Xo=e.overflow,Zo=t),t=Mi(t,a.children),t.flags|=4096,t)}(e,t,l,o,a,r,n);if(i){i=o.fallback,l=t.mode,a=(r=e.child).sibling;var c={mode:"hidden",children:o.children};return 0===(1&l)&&t.child!==r?((o=t.child).childLanes=0,o.pendingProps=c,t.deletions=null):(o=Rc(r,c)).subtreeFlags=14680064&r.subtreeFlags,null!==a?i=Rc(a,i):(i=Ic(i,l,n,null)).flags|=2,i.return=t,o.return=t,o.sibling=i,t.child=o,o=i,i=t.child,l=null===(l=e.child.memoizedState)?Li(n):{baseLanes:l.baseLanes|n,cachePool:null,transitions:l.transitions},i.memoizedState=l,i.childLanes=e.childLanes&~n,t.memoizedState=Ii,o}return e=(i=e.child).sibling,o=Rc(i,{mode:"visible",children:o.children}),0===(1&t.mode)&&(o.lanes=n),o.return=t,o.sibling=null,null!==e&&(null===(n=t.deletions)?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=o,t.memoizedState=null,o}function Mi(e,t){return(t=Lc({mode:"visible",children:t},e.mode,0,null)).return=e,e.child=t}function Wi(e,t,n,a){return null!==a&&fs(a),Js(t,e.child,null,n),(e=Mi(t,t.pendingProps.children)).flags|=2,t.memoizedState=null,e}function Bi(e,t,n){e.lanes|=t;var a=e.alternate;null!==a&&(a.lanes|=t),Ts(e.return,t,n)}function zi(e,t,n,a,o){var s=e.memoizedState;null===s?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:a,tail:n,tailMode:o}:(s.isBackwards=t,s.rendering=null,s.renderingStartTime=0,s.last=a,s.tail=n,s.tailMode=o)}function Ui(e,t,n){var a=t.pendingProps,o=a.revealOrder,s=a.tail;if(ki(e,t,a.children,n),0!==(2&(a=lr.current)))a=1&a|2,t.flags|=128;else{if(null!==e&&0!==(128&e.flags))e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&Bi(e,n,t);else if(19===e.tag)Bi(e,n,t);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}a&=1}if(Eo(lr,a),0===(1&t.mode))t.memoizedState=null;else switch(o){case"forwards":for(n=t.child,o=null;null!==n;)null!==(e=n.alternate)&&null===cr(e)&&(o=n),n=n.sibling;null===(n=o)?(o=t.child,t.child=null):(o=n.sibling,n.sibling=null),zi(t,!1,o,n,s);break;case"backwards":for(n=null,o=t.child,t.child=null;null!==o;){if(null!==(e=o.alternate)&&null===cr(e)){t.child=o;break}e=o.sibling,o.sibling=n,n=o,o=e}zi(t,!0,n,null,s);break;case"together":zi(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Hi(e,t){0===(1&t.mode)&&null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Gi(e,t,n){if(null!==e&&(t.dependencies=e.dependencies),Ll|=t.lanes,0===(n&t.childLanes))return null;if(null!==e&&t.child!==e.child)throw Error(s(153));if(null!==t.child){for(n=Rc(e=t.child,e.pendingProps),t.child=n,n.return=t;null!==e.sibling;)e=e.sibling,(n=n.sibling=Rc(e,e.pendingProps)).return=t;n.sibling=null}return t.child}function Vi(e,t){if(!ss)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;null!==t;)null!==t.alternate&&(n=t),t=t.sibling;null===n?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var a=null;null!==n;)null!==n.alternate&&(a=n),n=n.sibling;null===a?t||null===e.tail?e.tail=null:e.tail.sibling=null:a.sibling=null}}function Ki(e){var t=null!==e.alternate&&e.alternate.child===e.child,n=0,a=0;if(t)for(var o=e.child;null!==o;)n|=o.lanes|o.childLanes,a|=14680064&o.subtreeFlags,a|=14680064&o.flags,o.return=e,o=o.sibling;else for(o=e.child;null!==o;)n|=o.lanes|o.childLanes,a|=o.subtreeFlags,a|=o.flags,o.return=e,o=o.sibling;return e.subtreeFlags|=a,e.childLanes=n,t}function $i(e,t,n){var a=t.pendingProps;switch(ns(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Ki(t),null;case 1:case 17:return Ro(t.type)&&Po(),Ki(t),null;case 3:return a=t.stateNode,sr(),Co(No),Co(Ao),dr(),a.pendingContext&&(a.context=a.pendingContext,a.pendingContext=null),null!==e&&null!==e.child||(ps(t)?t.flags|=4:null===e||e.memoizedState.isDehydrated&&0===(256&t.flags)||(t.flags|=1024,null!==rs&&(rc(rs),rs=null))),Ki(t),null;case 5:ir(t);var o=ar(nr.current);if(n=t.type,null!==e&&null!=t.stateNode)Ri(e,t,n,a),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!a){if(null===t.stateNode)throw Error(s(166));return Ki(t),null}if(e=ar(er.current),ps(t)){a=t.stateNode,n=t.type;var r=t.memoizedProps;switch(a[uo]=t,a[ho]=r,e=0!==(1&t.mode),n){case"dialog":Wa("cancel",a),Wa("close",a);break;case"iframe":case"object":case"embed":Wa("load",a);break;case"video":case"audio":for(o=0;o<Ia.length;o++)Wa(Ia[o],a);break;case"source":Wa("error",a);break;case"img":case"image":case"link":Wa("error",a),Wa("load",a);break;case"details":Wa("toggle",a);break;case"input":Z(a,r),Wa("invalid",a);break;case"select":a._wrapperState={wasMultiple:!!r.multiple},Wa("invalid",a);break;case"textarea":oe(a,r),Wa("invalid",a)}for(var l in ve(n,r),o=null,r)if(r.hasOwnProperty(l)){var c=r[l];"children"===l?"string"===typeof c?a.textContent!==c&&(!0!==r.suppressHydrationWarning&&Xa(a.textContent,c,e),o=["children",c]):"number"===typeof c&&a.textContent!==""+c&&(!0!==r.suppressHydrationWarning&&Xa(a.textContent,c,e),o=["children",""+c]):i.hasOwnProperty(l)&&null!=c&&"onScroll"===l&&Wa("scroll",a)}switch(n){case"input":K(a),Q(a,r,!0);break;case"textarea":K(a),re(a);break;case"select":case"option":break;default:"function"===typeof r.onClick&&(a.onclick=Qa)}a=o,t.updateQueue=a,null!==a&&(t.flags|=4)}else{l=9===o.nodeType?o:o.ownerDocument,"http://www.w3.org/1999/xhtml"===e&&(e=ie(n)),"http://www.w3.org/1999/xhtml"===e?"script"===n?((e=l.createElement("div")).innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):"string"===typeof a.is?e=l.createElement(n,{is:a.is}):(e=l.createElement(n),"select"===n&&(l=e,a.multiple?l.multiple=!0:a.size&&(l.size=a.size))):e=l.createElementNS(e,n),e[uo]=t,e[ho]=a,Oi(e,t),t.stateNode=e;e:{switch(l=be(n,a),n){case"dialog":Wa("cancel",e),Wa("close",e),o=a;break;case"iframe":case"object":case"embed":Wa("load",e),o=a;break;case"video":case"audio":for(o=0;o<Ia.length;o++)Wa(Ia[o],e);o=a;break;case"source":Wa("error",e),o=a;break;case"img":case"image":case"link":Wa("error",e),Wa("load",e),o=a;break;case"details":Wa("toggle",e),o=a;break;case"input":Z(e,a),o=Y(e,a),Wa("invalid",e);break;case"option":default:o=a;break;case"select":e._wrapperState={wasMultiple:!!a.multiple},o=F({},a,{value:void 0}),Wa("invalid",e);break;case"textarea":oe(e,a),o=ae(e,a),Wa("invalid",e)}for(r in ve(n,o),c=o)if(c.hasOwnProperty(r)){var m=c[r];"style"===r?ge(e,m):"dangerouslySetInnerHTML"===r?null!=(m=m?m.__html:void 0)&&de(e,m):"children"===r?"string"===typeof m?("textarea"!==n||""!==m)&&pe(e,m):"number"===typeof m&&pe(e,""+m):"suppressContentEditableWarning"!==r&&"suppressHydrationWarning"!==r&&"autoFocus"!==r&&(i.hasOwnProperty(r)?null!=m&&"onScroll"===r&&Wa("scroll",e):null!=m&&b(e,r,m,l))}switch(n){case"input":K(e),Q(e,a,!1);break;case"textarea":K(e),re(e);break;case"option":null!=a.value&&e.setAttribute("value",""+G(a.value));break;case"select":e.multiple=!!a.multiple,null!=(r=a.value)?ne(e,!!a.multiple,r,!1):null!=a.defaultValue&&ne(e,!!a.multiple,a.defaultValue,!0);break;default:"function"===typeof o.onClick&&(e.onclick=Qa)}switch(n){case"button":case"input":case"select":case"textarea":a=!!a.autoFocus;break e;case"img":a=!0;break e;default:a=!1}}a&&(t.flags|=4)}null!==t.ref&&(t.flags|=512,t.flags|=2097152)}return Ki(t),null;case 6:if(e&&null!=t.stateNode)Pi(0,t,e.memoizedProps,a);else{if("string"!==typeof a&&null===t.stateNode)throw Error(s(166));if(n=ar(nr.current),ar(er.current),ps(t)){if(a=t.stateNode,n=t.memoizedProps,a[uo]=t,(r=a.nodeValue!==n)&&null!==(e=as))switch(e.tag){case 3:Xa(a.nodeValue,n,0!==(1&e.mode));break;case 5:!0!==e.memoizedProps.suppressHydrationWarning&&Xa(a.nodeValue,n,0!==(1&e.mode))}r&&(t.flags|=4)}else(a=(9===n.nodeType?n:n.ownerDocument).createTextNode(a))[uo]=t,t.stateNode=a}return Ki(t),null;case 13:if(Co(lr),a=t.memoizedState,null===e||null!==e.memoizedState&&null!==e.memoizedState.dehydrated){if(ss&&null!==os&&0!==(1&t.mode)&&0===(128&t.flags))us(),hs(),t.flags|=98560,r=!1;else if(r=ps(t),null!==a&&null!==a.dehydrated){if(null===e){if(!r)throw Error(s(318));if(!(r=null!==(r=t.memoizedState)?r.dehydrated:null))throw Error(s(317));r[uo]=t}else hs(),0===(128&t.flags)&&(t.memoizedState=null),t.flags|=4;Ki(t),r=!1}else null!==rs&&(rc(rs),rs=null),r=!0;if(!r)return 65536&t.flags?t:null}return 0!==(128&t.flags)?(t.lanes=n,t):((a=null!==a)!==(null!==e&&null!==e.memoizedState)&&a&&(t.child.flags|=8192,0!==(1&t.mode)&&(null===e||0!==(1&lr.current)?0===Pl&&(Pl=3):fc())),null!==t.updateQueue&&(t.flags|=4),Ki(t),null);case 4:return sr(),null===e&&Ua(t.stateNode.containerInfo),Ki(t),null;case 10:return _s(t.type._context),Ki(t),null;case 19:if(Co(lr),null===(r=t.memoizedState))return Ki(t),null;if(a=0!==(128&t.flags),null===(l=r.rendering))if(a)Vi(r,!1);else{if(0!==Pl||null!==e&&0!==(128&e.flags))for(e=t.child;null!==e;){if(null!==(l=cr(e))){for(t.flags|=128,Vi(r,!1),null!==(a=l.updateQueue)&&(t.updateQueue=a,t.flags|=4),t.subtreeFlags=0,a=n,n=t.child;null!==n;)e=a,(r=n).flags&=14680066,null===(l=r.alternate)?(r.childLanes=0,r.lanes=e,r.child=null,r.subtreeFlags=0,r.memoizedProps=null,r.memoizedState=null,r.updateQueue=null,r.dependencies=null,r.stateNode=null):(r.childLanes=l.childLanes,r.lanes=l.lanes,r.child=l.child,r.subtreeFlags=0,r.deletions=null,r.memoizedProps=l.memoizedProps,r.memoizedState=l.memoizedState,r.updateQueue=l.updateQueue,r.type=l.type,e=l.dependencies,r.dependencies=null===e?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return Eo(lr,1&lr.current|2),t.child}e=e.sibling}null!==r.tail&&Je()>Ul&&(t.flags|=128,a=!0,Vi(r,!1),t.lanes=4194304)}else{if(!a)if(null!==(e=cr(l))){if(t.flags|=128,a=!0,null!==(n=e.updateQueue)&&(t.updateQueue=n,t.flags|=4),Vi(r,!0),null===r.tail&&"hidden"===r.tailMode&&!l.alternate&&!ss)return Ki(t),null}else 2*Je()-r.renderingStartTime>Ul&&1073741824!==n&&(t.flags|=128,a=!0,Vi(r,!1),t.lanes=4194304);r.isBackwards?(l.sibling=t.child,t.child=l):(null!==(n=r.last)?n.sibling=l:t.child=l,r.last=l)}return null!==r.tail?(t=r.tail,r.rendering=t,r.tail=t.sibling,r.renderingStartTime=Je(),t.sibling=null,n=lr.current,Eo(lr,a?1&n|2:1&n),t):(Ki(t),null);case 22:case 23:return dc(),a=null!==t.memoizedState,null!==e&&null!==e.memoizedState!==a&&(t.flags|=8192),a&&0!==(1&t.mode)?0!==(1073741824&Ol)&&(Ki(t),6&t.subtreeFlags&&(t.flags|=8192)):Ki(t),null;case 24:case 25:return null}throw Error(s(156,t.tag))}function qi(e,t){switch(ns(t),t.tag){case 1:return Ro(t.type)&&Po(),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return sr(),Co(No),Co(Ao),dr(),0!==(65536&(e=t.flags))&&0===(128&e)?(t.flags=-65537&e|128,t):null;case 5:return ir(t),null;case 13:if(Co(lr),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(s(340));hs()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return Co(lr),null;case 4:return sr(),null;case 10:return _s(t.type._context),null;case 22:case 23:return dc(),null;default:return null}}Oi=function(e,t){for(var n=t.child;null!==n;){if(5===n.tag||6===n.tag)e.appendChild(n.stateNode);else if(4!==n.tag&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===t)break;for(;null===n.sibling;){if(null===n.return||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},Ri=function(e,t,n,a){var o=e.memoizedProps;if(o!==a){e=t.stateNode,ar(er.current);var s,r=null;switch(n){case"input":o=Y(e,o),a=Y(e,a),r=[];break;case"select":o=F({},o,{value:void 0}),a=F({},a,{value:void 0}),r=[];break;case"textarea":o=ae(e,o),a=ae(e,a),r=[];break;default:"function"!==typeof o.onClick&&"function"===typeof a.onClick&&(e.onclick=Qa)}for(m in ve(n,a),n=null,o)if(!a.hasOwnProperty(m)&&o.hasOwnProperty(m)&&null!=o[m])if("style"===m){var l=o[m];for(s in l)l.hasOwnProperty(s)&&(n||(n={}),n[s]="")}else"dangerouslySetInnerHTML"!==m&&"children"!==m&&"suppressContentEditableWarning"!==m&&"suppressHydrationWarning"!==m&&"autoFocus"!==m&&(i.hasOwnProperty(m)?r||(r=[]):(r=r||[]).push(m,null));for(m in a){var c=a[m];if(l=null!=o?o[m]:void 0,a.hasOwnProperty(m)&&c!==l&&(null!=c||null!=l))if("style"===m)if(l){for(s in l)!l.hasOwnProperty(s)||c&&c.hasOwnProperty(s)||(n||(n={}),n[s]="");for(s in c)c.hasOwnProperty(s)&&l[s]!==c[s]&&(n||(n={}),n[s]=c[s])}else n||(r||(r=[]),r.push(m,n)),n=c;else"dangerouslySetInnerHTML"===m?(c=c?c.__html:void 0,l=l?l.__html:void 0,null!=c&&l!==c&&(r=r||[]).push(m,c)):"children"===m?"string"!==typeof c&&"number"!==typeof c||(r=r||[]).push(m,""+c):"suppressContentEditableWarning"!==m&&"suppressHydrationWarning"!==m&&(i.hasOwnProperty(m)?(null!=c&&"onScroll"===m&&Wa("scroll",e),r||l===c||(r=[])):(r=r||[]).push(m,c))}n&&(r=r||[]).push("style",n);var m=r;(t.updateQueue=m)&&(t.flags|=4)}},Pi=function(e,t,n,a){n!==a&&(t.flags|=4)};var Yi=!1,Zi=!1,Ji="function"===typeof WeakSet?WeakSet:Set,Xi=null;function Qi(e,t){var n=e.ref;if(null!==n)if("function"===typeof n)try{n(null)}catch(a){Tc(e,t,a)}else n.current=null}function el(e,t,n){try{n()}catch(a){Tc(e,t,a)}}var tl=!1;function nl(e,t,n){var a=t.updateQueue;if(null!==(a=null!==a?a.lastEffect:null)){var o=a=a.next;do{if((o.tag&e)===e){var s=o.destroy;o.destroy=void 0,void 0!==s&&el(t,n,s)}o=o.next}while(o!==a)}}function al(e,t){if(null!==(t=null!==(t=t.updateQueue)?t.lastEffect:null)){var n=t=t.next;do{if((n.tag&e)===e){var a=n.create;n.destroy=a()}n=n.next}while(n!==t)}}function ol(e){var t=e.ref;if(null!==t){var n=e.stateNode;e.tag,e=n,"function"===typeof t?t(e):t.current=e}}function sl(e){var t=e.alternate;null!==t&&(e.alternate=null,sl(t)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&(null!==(t=e.stateNode)&&(delete t[uo],delete t[ho],delete t[go],delete t[yo],delete t[vo])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function rl(e){return 5===e.tag||3===e.tag||4===e.tag}function il(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||rl(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;5!==e.tag&&6!==e.tag&&18!==e.tag;){if(2&e.flags)continue e;if(null===e.child||4===e.tag)continue e;e.child.return=e,e=e.child}if(!(2&e.flags))return e.stateNode}}function ll(e,t,n){var a=e.tag;if(5===a||6===a)e=e.stateNode,t?8===n.nodeType?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(8===n.nodeType?(t=n.parentNode).insertBefore(e,n):(t=n).appendChild(e),null!==(n=n._reactRootContainer)&&void 0!==n||null!==t.onclick||(t.onclick=Qa));else if(4!==a&&null!==(e=e.child))for(ll(e,t,n),e=e.sibling;null!==e;)ll(e,t,n),e=e.sibling}function cl(e,t,n){var a=e.tag;if(5===a||6===a)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(4!==a&&null!==(e=e.child))for(cl(e,t,n),e=e.sibling;null!==e;)cl(e,t,n),e=e.sibling}var ml=null,dl=!1;function pl(e,t,n){for(n=n.child;null!==n;)ul(e,t,n),n=n.sibling}function ul(e,t,n){if(st&&"function"===typeof st.onCommitFiberUnmount)try{st.onCommitFiberUnmount(ot,n)}catch(i){}switch(n.tag){case 5:Zi||Qi(n,t);case 6:var a=ml,o=dl;ml=null,pl(e,t,n),dl=o,null!==(ml=a)&&(dl?(e=ml,n=n.stateNode,8===e.nodeType?e.parentNode.removeChild(n):e.removeChild(n)):ml.removeChild(n.stateNode));break;case 18:null!==ml&&(dl?(e=ml,n=n.stateNode,8===e.nodeType?lo(e.parentNode,n):1===e.nodeType&&lo(e,n),Ut(e)):lo(ml,n.stateNode));break;case 4:a=ml,o=dl,ml=n.stateNode.containerInfo,dl=!0,pl(e,t,n),ml=a,dl=o;break;case 0:case 11:case 14:case 15:if(!Zi&&(null!==(a=n.updateQueue)&&null!==(a=a.lastEffect))){o=a=a.next;do{var s=o,r=s.destroy;s=s.tag,void 0!==r&&(0!==(2&s)||0!==(4&s))&&el(n,t,r),o=o.next}while(o!==a)}pl(e,t,n);break;case 1:if(!Zi&&(Qi(n,t),"function"===typeof(a=n.stateNode).componentWillUnmount))try{a.props=n.memoizedProps,a.state=n.memoizedState,a.componentWillUnmount()}catch(i){Tc(n,t,i)}pl(e,t,n);break;case 21:pl(e,t,n);break;case 22:1&n.mode?(Zi=(a=Zi)||null!==n.memoizedState,pl(e,t,n),Zi=a):pl(e,t,n);break;default:pl(e,t,n)}}function hl(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var n=e.stateNode;null===n&&(n=e.stateNode=new Ji),t.forEach((function(t){var a=jc.bind(null,e,t);n.has(t)||(n.add(t),t.then(a,a))}))}}function fl(e,t){var n=t.deletions;if(null!==n)for(var a=0;a<n.length;a++){var o=n[a];try{var r=e,i=t,l=i;e:for(;null!==l;){switch(l.tag){case 5:ml=l.stateNode,dl=!1;break e;case 3:case 4:ml=l.stateNode.containerInfo,dl=!0;break e}l=l.return}if(null===ml)throw Error(s(160));ul(r,i,o),ml=null,dl=!1;var c=o.alternate;null!==c&&(c.return=null),o.return=null}catch(m){Tc(o,t,m)}}if(12854&t.subtreeFlags)for(t=t.child;null!==t;)gl(t,e),t=t.sibling}function gl(e,t){var n=e.alternate,a=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(fl(t,e),yl(e),4&a){try{nl(3,e,e.return),al(3,e)}catch(g){Tc(e,e.return,g)}try{nl(5,e,e.return)}catch(g){Tc(e,e.return,g)}}break;case 1:fl(t,e),yl(e),512&a&&null!==n&&Qi(n,n.return);break;case 5:if(fl(t,e),yl(e),512&a&&null!==n&&Qi(n,n.return),32&e.flags){var o=e.stateNode;try{pe(o,"")}catch(g){Tc(e,e.return,g)}}if(4&a&&null!=(o=e.stateNode)){var r=e.memoizedProps,i=null!==n?n.memoizedProps:r,l=e.type,c=e.updateQueue;if(e.updateQueue=null,null!==c)try{"input"===l&&"radio"===r.type&&null!=r.name&&J(o,r),be(l,i);var m=be(l,r);for(i=0;i<c.length;i+=2){var d=c[i],p=c[i+1];"style"===d?ge(o,p):"dangerouslySetInnerHTML"===d?de(o,p):"children"===d?pe(o,p):b(o,d,p,m)}switch(l){case"input":X(o,r);break;case"textarea":se(o,r);break;case"select":var u=o._wrapperState.wasMultiple;o._wrapperState.wasMultiple=!!r.multiple;var h=r.value;null!=h?ne(o,!!r.multiple,h,!1):u!==!!r.multiple&&(null!=r.defaultValue?ne(o,!!r.multiple,r.defaultValue,!0):ne(o,!!r.multiple,r.multiple?[]:"",!1))}o[ho]=r}catch(g){Tc(e,e.return,g)}}break;case 6:if(fl(t,e),yl(e),4&a){if(null===e.stateNode)throw Error(s(162));o=e.stateNode,r=e.memoizedProps;try{o.nodeValue=r}catch(g){Tc(e,e.return,g)}}break;case 3:if(fl(t,e),yl(e),4&a&&null!==n&&n.memoizedState.isDehydrated)try{Ut(t.containerInfo)}catch(g){Tc(e,e.return,g)}break;case 4:default:fl(t,e),yl(e);break;case 13:fl(t,e),yl(e),8192&(o=e.child).flags&&(r=null!==o.memoizedState,o.stateNode.isHidden=r,!r||null!==o.alternate&&null!==o.alternate.memoizedState||(zl=Je())),4&a&&hl(e);break;case 22:if(d=null!==n&&null!==n.memoizedState,1&e.mode?(Zi=(m=Zi)||d,fl(t,e),Zi=m):fl(t,e),yl(e),8192&a){if(m=null!==e.memoizedState,(e.stateNode.isHidden=m)&&!d&&0!==(1&e.mode))for(Xi=e,d=e.child;null!==d;){for(p=Xi=d;null!==Xi;){switch(h=(u=Xi).child,u.tag){case 0:case 11:case 14:case 15:nl(4,u,u.return);break;case 1:Qi(u,u.return);var f=u.stateNode;if("function"===typeof f.componentWillUnmount){a=u,n=u.return;try{t=a,f.props=t.memoizedProps,f.state=t.memoizedState,f.componentWillUnmount()}catch(g){Tc(a,n,g)}}break;case 5:Qi(u,u.return);break;case 22:if(null!==u.memoizedState){kl(p);continue}}null!==h?(h.return=u,Xi=h):kl(p)}d=d.sibling}e:for(d=null,p=e;;){if(5===p.tag){if(null===d){d=p;try{o=p.stateNode,m?"function"===typeof(r=o.style).setProperty?r.setProperty("display","none","important"):r.display="none":(l=p.stateNode,i=void 0!==(c=p.memoizedProps.style)&&null!==c&&c.hasOwnProperty("display")?c.display:null,l.style.display=fe("display",i))}catch(g){Tc(e,e.return,g)}}}else if(6===p.tag){if(null===d)try{p.stateNode.nodeValue=m?"":p.memoizedProps}catch(g){Tc(e,e.return,g)}}else if((22!==p.tag&&23!==p.tag||null===p.memoizedState||p===e)&&null!==p.child){p.child.return=p,p=p.child;continue}if(p===e)break e;for(;null===p.sibling;){if(null===p.return||p.return===e)break e;d===p&&(d=null),p=p.return}d===p&&(d=null),p.sibling.return=p.return,p=p.sibling}}break;case 19:fl(t,e),yl(e),4&a&&hl(e);case 21:}}function yl(e){var t=e.flags;if(2&t){try{e:{for(var n=e.return;null!==n;){if(rl(n)){var a=n;break e}n=n.return}throw Error(s(160))}switch(a.tag){case 5:var o=a.stateNode;32&a.flags&&(pe(o,""),a.flags&=-33),cl(e,il(e),o);break;case 3:case 4:var r=a.stateNode.containerInfo;ll(e,il(e),r);break;default:throw Error(s(161))}}catch(i){Tc(e,e.return,i)}e.flags&=-3}4096&t&&(e.flags&=-4097)}function vl(e,t,n){Xi=e,bl(e,t,n)}function bl(e,t,n){for(var a=0!==(1&e.mode);null!==Xi;){var o=Xi,s=o.child;if(22===o.tag&&a){var r=null!==o.memoizedState||Yi;if(!r){var i=o.alternate,l=null!==i&&null!==i.memoizedState||Zi;i=Yi;var c=Zi;if(Yi=r,(Zi=l)&&!c)for(Xi=o;null!==Xi;)l=(r=Xi).child,22===r.tag&&null!==r.memoizedState?xl(o):null!==l?(l.return=r,Xi=l):xl(o);for(;null!==s;)Xi=s,bl(s,t,n),s=s.sibling;Xi=o,Yi=i,Zi=c}wl(e)}else 0!==(8772&o.subtreeFlags)&&null!==s?(s.return=o,Xi=s):wl(e)}}function wl(e){for(;null!==Xi;){var t=Xi;if(0!==(8772&t.flags)){var n=t.alternate;try{if(0!==(8772&t.flags))switch(t.tag){case 0:case 11:case 15:Zi||al(5,t);break;case 1:var a=t.stateNode;if(4&t.flags&&!Zi)if(null===n)a.componentDidMount();else{var o=t.elementType===t.type?n.memoizedProps:ys(t.type,n.memoizedProps);a.componentDidUpdate(o,n.memoizedState,a.__reactInternalSnapshotBeforeUpdate)}var r=t.updateQueue;null!==r&&Ws(t,r,a);break;case 3:var i=t.updateQueue;if(null!==i){if(n=null,null!==t.child)switch(t.child.tag){case 5:case 1:n=t.child.stateNode}Ws(t,i,n)}break;case 5:var l=t.stateNode;if(null===n&&4&t.flags){n=l;var c=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":c.autoFocus&&n.focus();break;case"img":c.src&&(n.src=c.src)}}break;case 6:case 4:case 12:case 19:case 17:case 21:case 22:case 23:case 25:break;case 13:if(null===t.memoizedState){var m=t.alternate;if(null!==m){var d=m.memoizedState;if(null!==d){var p=d.dehydrated;null!==p&&Ut(p)}}}break;default:throw Error(s(163))}Zi||512&t.flags&&ol(t)}catch(u){Tc(t,t.return,u)}}if(t===e){Xi=null;break}if(null!==(n=t.sibling)){n.return=t.return,Xi=n;break}Xi=t.return}}function kl(e){for(;null!==Xi;){var t=Xi;if(t===e){Xi=null;break}var n=t.sibling;if(null!==n){n.return=t.return,Xi=n;break}Xi=t.return}}function xl(e){for(;null!==Xi;){var t=Xi;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{al(4,t)}catch(l){Tc(t,n,l)}break;case 1:var a=t.stateNode;if("function"===typeof a.componentDidMount){var o=t.return;try{a.componentDidMount()}catch(l){Tc(t,o,l)}}var s=t.return;try{ol(t)}catch(l){Tc(t,s,l)}break;case 5:var r=t.return;try{ol(t)}catch(l){Tc(t,r,l)}}}catch(l){Tc(t,t.return,l)}if(t===e){Xi=null;break}var i=t.sibling;if(null!==i){i.return=t.return,Xi=i;break}Xi=t.return}}var _l,Tl=Math.ceil,Sl=w.ReactCurrentDispatcher,Cl=w.ReactCurrentOwner,El=w.ReactCurrentBatchConfig,jl=0,Al=null,Nl=null,Dl=0,Ol=0,Rl=So(0),Pl=0,Il=null,Ll=0,Fl=0,Ml=0,Wl=null,Bl=null,zl=0,Ul=1/0,Hl=null,Gl=!1,Vl=null,Kl=null,$l=!1,ql=null,Yl=0,Zl=0,Jl=null,Xl=-1,Ql=0;function ec(){return 0!==(6&jl)?Je():-1!==Xl?Xl:Xl=Je()}function tc(e){return 0===(1&e.mode)?1:0!==(2&jl)&&0!==Dl?Dl&-Dl:null!==gs.transition?(0===Ql&&(Ql=ft()),Ql):0!==(e=bt)?e:e=void 0===(e=window.event)?16:Zt(e.type)}function nc(e,t,n,a){if(50<Zl)throw Zl=0,Jl=null,Error(s(185));yt(e,n,a),0!==(2&jl)&&e===Al||(e===Al&&(0===(2&jl)&&(Fl|=n),4===Pl&&ic(e,Dl)),ac(e,a),1===n&&0===jl&&0===(1&t.mode)&&(Ul=Je()+500,Bo&&Ho()))}function ac(e,t){var n=e.callbackNode;!function(e,t){for(var n=e.suspendedLanes,a=e.pingedLanes,o=e.expirationTimes,s=e.pendingLanes;0<s;){var r=31-rt(s),i=1<<r,l=o[r];-1===l?0!==(i&n)&&0===(i&a)||(o[r]=ut(i,t)):l<=t&&(e.expiredLanes|=i),s&=~i}}(e,t);var a=pt(e,e===Al?Dl:0);if(0===a)null!==n&&qe(n),e.callbackNode=null,e.callbackPriority=0;else if(t=a&-a,e.callbackPriority!==t){if(null!=n&&qe(n),1===t)0===e.tag?function(e){Bo=!0,Uo(e)}(lc.bind(null,e)):Uo(lc.bind(null,e)),ro((function(){0===(6&jl)&&Ho()})),n=null;else{switch(wt(a)){case 1:n=Qe;break;case 4:n=et;break;case 16:default:n=tt;break;case 536870912:n=at}n=Ac(n,oc.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function oc(e,t){if(Xl=-1,Ql=0,0!==(6&jl))throw Error(s(327));var n=e.callbackNode;if(xc()&&e.callbackNode!==n)return null;var a=pt(e,e===Al?Dl:0);if(0===a)return null;if(0!==(30&a)||0!==(a&e.expiredLanes)||t)t=gc(e,a);else{t=a;var o=jl;jl|=2;var r=hc();for(Al===e&&Dl===t||(Hl=null,Ul=Je()+500,pc(e,t));;)try{vc();break}catch(l){uc(e,l)}xs(),Sl.current=r,jl=o,null!==Nl?t=0:(Al=null,Dl=0,t=Pl)}if(0!==t){if(2===t&&(0!==(o=ht(e))&&(a=o,t=sc(e,o))),1===t)throw n=Il,pc(e,0),ic(e,a),ac(e,Je()),n;if(6===t)ic(e,a);else{if(o=e.current.alternate,0===(30&a)&&!function(e){for(var t=e;;){if(16384&t.flags){var n=t.updateQueue;if(null!==n&&null!==(n=n.stores))for(var a=0;a<n.length;a++){var o=n[a],s=o.getSnapshot;o=o.value;try{if(!ia(s(),o))return!1}catch(i){return!1}}}if(n=t.child,16384&t.subtreeFlags&&null!==n)n.return=t,t=n;else{if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}(o)&&(2===(t=gc(e,a))&&(0!==(r=ht(e))&&(a=r,t=sc(e,r))),1===t))throw n=Il,pc(e,0),ic(e,a),ac(e,Je()),n;switch(e.finishedWork=o,e.finishedLanes=a,t){case 0:case 1:throw Error(s(345));case 2:case 5:kc(e,Bl,Hl);break;case 3:if(ic(e,a),(130023424&a)===a&&10<(t=zl+500-Je())){if(0!==pt(e,0))break;if(((o=e.suspendedLanes)&a)!==a){ec(),e.pingedLanes|=e.suspendedLanes&o;break}e.timeoutHandle=ao(kc.bind(null,e,Bl,Hl),t);break}kc(e,Bl,Hl);break;case 4:if(ic(e,a),(4194240&a)===a)break;for(t=e.eventTimes,o=-1;0<a;){var i=31-rt(a);r=1<<i,(i=t[i])>o&&(o=i),a&=~r}if(a=o,10<(a=(120>(a=Je()-a)?120:480>a?480:1080>a?1080:1920>a?1920:3e3>a?3e3:4320>a?4320:1960*Tl(a/1960))-a)){e.timeoutHandle=ao(kc.bind(null,e,Bl,Hl),a);break}kc(e,Bl,Hl);break;default:throw Error(s(329))}}}return ac(e,Je()),e.callbackNode===n?oc.bind(null,e):null}function sc(e,t){var n=Wl;return e.current.memoizedState.isDehydrated&&(pc(e,t).flags|=256),2!==(e=gc(e,t))&&(t=Bl,Bl=n,null!==t&&rc(t)),e}function rc(e){null===Bl?Bl=e:Bl.push.apply(Bl,e)}function ic(e,t){for(t&=~Ml,t&=~Fl,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-rt(t),a=1<<n;e[n]=-1,t&=~a}}function lc(e){if(0!==(6&jl))throw Error(s(327));xc();var t=pt(e,0);if(0===(1&t))return ac(e,Je()),null;var n=gc(e,t);if(0!==e.tag&&2===n){var a=ht(e);0!==a&&(t=a,n=sc(e,a))}if(1===n)throw n=Il,pc(e,0),ic(e,t),ac(e,Je()),n;if(6===n)throw Error(s(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,kc(e,Bl,Hl),ac(e,Je()),null}function cc(e,t){var n=jl;jl|=1;try{return e(t)}finally{0===(jl=n)&&(Ul=Je()+500,Bo&&Ho())}}function mc(e){null!==ql&&0===ql.tag&&0===(6&jl)&&xc();var t=jl;jl|=1;var n=El.transition,a=bt;try{if(El.transition=null,bt=1,e)return e()}finally{bt=a,El.transition=n,0===(6&(jl=t))&&Ho()}}function dc(){Ol=Rl.current,Co(Rl)}function pc(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(-1!==n&&(e.timeoutHandle=-1,oo(n)),null!==Nl)for(n=Nl.return;null!==n;){var a=n;switch(ns(a),a.tag){case 1:null!==(a=a.type.childContextTypes)&&void 0!==a&&Po();break;case 3:sr(),Co(No),Co(Ao),dr();break;case 5:ir(a);break;case 4:sr();break;case 13:case 19:Co(lr);break;case 10:_s(a.type._context);break;case 22:case 23:dc()}n=n.return}if(Al=e,Nl=e=Rc(e.current,null),Dl=Ol=t,Pl=0,Il=null,Ml=Fl=Ll=0,Bl=Wl=null,null!==Es){for(t=0;t<Es.length;t++)if(null!==(a=(n=Es[t]).interleaved)){n.interleaved=null;var o=a.next,s=n.pending;if(null!==s){var r=s.next;s.next=o,a.next=r}n.pending=a}Es=null}return e}function uc(e,t){for(;;){var n=Nl;try{if(xs(),pr.current=ri,vr){for(var a=fr.memoizedState;null!==a;){var o=a.queue;null!==o&&(o.pending=null),a=a.next}vr=!1}if(hr=0,yr=gr=fr=null,br=!1,wr=0,Cl.current=null,null===n||null===n.return){Pl=1,Il=t,Nl=null;break}e:{var r=e,i=n.return,l=n,c=t;if(t=Dl,l.flags|=32768,null!==c&&"object"===typeof c&&"function"===typeof c.then){var m=c,d=l,p=d.tag;if(0===(1&d.mode)&&(0===p||11===p||15===p)){var u=d.alternate;u?(d.updateQueue=u.updateQueue,d.memoizedState=u.memoizedState,d.lanes=u.lanes):(d.updateQueue=null,d.memoizedState=null)}var h=yi(i);if(null!==h){h.flags&=-257,vi(h,i,l,0,t),1&h.mode&&gi(r,m,t),c=m;var f=(t=h).updateQueue;if(null===f){var g=new Set;g.add(c),t.updateQueue=g}else f.add(c);break e}if(0===(1&t)){gi(r,m,t),fc();break e}c=Error(s(426))}else if(ss&&1&l.mode){var y=yi(i);if(null!==y){0===(65536&y.flags)&&(y.flags|=256),vi(y,i,l,0,t),fs(mi(c,l));break e}}r=c=mi(c,l),4!==Pl&&(Pl=2),null===Wl?Wl=[r]:Wl.push(r),r=i;do{switch(r.tag){case 3:r.flags|=65536,t&=-t,r.lanes|=t,Fs(r,hi(0,c,t));break e;case 1:l=c;var v=r.type,b=r.stateNode;if(0===(128&r.flags)&&("function"===typeof v.getDerivedStateFromError||null!==b&&"function"===typeof b.componentDidCatch&&(null===Kl||!Kl.has(b)))){r.flags|=65536,t&=-t,r.lanes|=t,Fs(r,fi(r,l,t));break e}}r=r.return}while(null!==r)}wc(n)}catch(w){t=w,Nl===n&&null!==n&&(Nl=n=n.return);continue}break}}function hc(){var e=Sl.current;return Sl.current=ri,null===e?ri:e}function fc(){0!==Pl&&3!==Pl&&2!==Pl||(Pl=4),null===Al||0===(268435455&Ll)&&0===(268435455&Fl)||ic(Al,Dl)}function gc(e,t){var n=jl;jl|=2;var a=hc();for(Al===e&&Dl===t||(Hl=null,pc(e,t));;)try{yc();break}catch(o){uc(e,o)}if(xs(),jl=n,Sl.current=a,null!==Nl)throw Error(s(261));return Al=null,Dl=0,Pl}function yc(){for(;null!==Nl;)bc(Nl)}function vc(){for(;null!==Nl&&!Ye();)bc(Nl)}function bc(e){var t=_l(e.alternate,e,Ol);e.memoizedProps=e.pendingProps,null===t?wc(e):Nl=t,Cl.current=null}function wc(e){var t=e;do{var n=t.alternate;if(e=t.return,0===(32768&t.flags)){if(null!==(n=$i(n,t,Ol)))return void(Nl=n)}else{if(null!==(n=qi(n,t)))return n.flags&=32767,void(Nl=n);if(null===e)return Pl=6,void(Nl=null);e.flags|=32768,e.subtreeFlags=0,e.deletions=null}if(null!==(t=t.sibling))return void(Nl=t);Nl=t=e}while(null!==t);0===Pl&&(Pl=5)}function kc(e,t,n){var a=bt,o=El.transition;try{El.transition=null,bt=1,function(e,t,n,a){do{xc()}while(null!==ql);if(0!==(6&jl))throw Error(s(327));n=e.finishedWork;var o=e.finishedLanes;if(null===n)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(s(177));e.callbackNode=null,e.callbackPriority=0;var r=n.lanes|n.childLanes;if(function(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var a=e.eventTimes;for(e=e.expirationTimes;0<n;){var o=31-rt(n),s=1<<o;t[o]=0,a[o]=-1,e[o]=-1,n&=~s}}(e,r),e===Al&&(Nl=Al=null,Dl=0),0===(2064&n.subtreeFlags)&&0===(2064&n.flags)||$l||($l=!0,Ac(tt,(function(){return xc(),null}))),r=0!==(15990&n.flags),0!==(15990&n.subtreeFlags)||r){r=El.transition,El.transition=null;var i=bt;bt=1;var l=jl;jl|=4,Cl.current=null,function(e,t){if(eo=Gt,ua(e=pa())){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{var a=(n=(n=e.ownerDocument)&&n.defaultView||window).getSelection&&n.getSelection();if(a&&0!==a.rangeCount){n=a.anchorNode;var o=a.anchorOffset,r=a.focusNode;a=a.focusOffset;try{n.nodeType,r.nodeType}catch(k){n=null;break e}var i=0,l=-1,c=-1,m=0,d=0,p=e,u=null;t:for(;;){for(var h;p!==n||0!==o&&3!==p.nodeType||(l=i+o),p!==r||0!==a&&3!==p.nodeType||(c=i+a),3===p.nodeType&&(i+=p.nodeValue.length),null!==(h=p.firstChild);)u=p,p=h;for(;;){if(p===e)break t;if(u===n&&++m===o&&(l=i),u===r&&++d===a&&(c=i),null!==(h=p.nextSibling))break;u=(p=u).parentNode}p=h}n=-1===l||-1===c?null:{start:l,end:c}}else n=null}n=n||{start:0,end:0}}else n=null;for(to={focusedElem:e,selectionRange:n},Gt=!1,Xi=t;null!==Xi;)if(e=(t=Xi).child,0!==(1028&t.subtreeFlags)&&null!==e)e.return=t,Xi=e;else for(;null!==Xi;){t=Xi;try{var f=t.alternate;if(0!==(1024&t.flags))switch(t.tag){case 0:case 11:case 15:case 5:case 6:case 4:case 17:break;case 1:if(null!==f){var g=f.memoizedProps,y=f.memoizedState,v=t.stateNode,b=v.getSnapshotBeforeUpdate(t.elementType===t.type?g:ys(t.type,g),y);v.__reactInternalSnapshotBeforeUpdate=b}break;case 3:var w=t.stateNode.containerInfo;1===w.nodeType?w.textContent="":9===w.nodeType&&w.documentElement&&w.removeChild(w.documentElement);break;default:throw Error(s(163))}}catch(k){Tc(t,t.return,k)}if(null!==(e=t.sibling)){e.return=t.return,Xi=e;break}Xi=t.return}f=tl,tl=!1}(e,n),gl(n,e),ha(to),Gt=!!eo,to=eo=null,e.current=n,vl(n,e,o),Ze(),jl=l,bt=i,El.transition=r}else e.current=n;if($l&&($l=!1,ql=e,Yl=o),r=e.pendingLanes,0===r&&(Kl=null),function(e){if(st&&"function"===typeof st.onCommitFiberRoot)try{st.onCommitFiberRoot(ot,e,void 0,128===(128&e.current.flags))}catch(t){}}(n.stateNode),ac(e,Je()),null!==t)for(a=e.onRecoverableError,n=0;n<t.length;n++)o=t[n],a(o.value,{componentStack:o.stack,digest:o.digest});if(Gl)throw Gl=!1,e=Vl,Vl=null,e;0!==(1&Yl)&&0!==e.tag&&xc(),r=e.pendingLanes,0!==(1&r)?e===Jl?Zl++:(Zl=0,Jl=e):Zl=0,Ho()}(e,t,n,a)}finally{El.transition=o,bt=a}return null}function xc(){if(null!==ql){var e=wt(Yl),t=El.transition,n=bt;try{if(El.transition=null,bt=16>e?16:e,null===ql)var a=!1;else{if(e=ql,ql=null,Yl=0,0!==(6&jl))throw Error(s(331));var o=jl;for(jl|=4,Xi=e.current;null!==Xi;){var r=Xi,i=r.child;if(0!==(16&Xi.flags)){var l=r.deletions;if(null!==l){for(var c=0;c<l.length;c++){var m=l[c];for(Xi=m;null!==Xi;){var d=Xi;switch(d.tag){case 0:case 11:case 15:nl(8,d,r)}var p=d.child;if(null!==p)p.return=d,Xi=p;else for(;null!==Xi;){var u=(d=Xi).sibling,h=d.return;if(sl(d),d===m){Xi=null;break}if(null!==u){u.return=h,Xi=u;break}Xi=h}}}var f=r.alternate;if(null!==f){var g=f.child;if(null!==g){f.child=null;do{var y=g.sibling;g.sibling=null,g=y}while(null!==g)}}Xi=r}}if(0!==(2064&r.subtreeFlags)&&null!==i)i.return=r,Xi=i;else e:for(;null!==Xi;){if(0!==(2048&(r=Xi).flags))switch(r.tag){case 0:case 11:case 15:nl(9,r,r.return)}var v=r.sibling;if(null!==v){v.return=r.return,Xi=v;break e}Xi=r.return}}var b=e.current;for(Xi=b;null!==Xi;){var w=(i=Xi).child;if(0!==(2064&i.subtreeFlags)&&null!==w)w.return=i,Xi=w;else e:for(i=b;null!==Xi;){if(0!==(2048&(l=Xi).flags))try{switch(l.tag){case 0:case 11:case 15:al(9,l)}}catch(x){Tc(l,l.return,x)}if(l===i){Xi=null;break e}var k=l.sibling;if(null!==k){k.return=l.return,Xi=k;break e}Xi=l.return}}if(jl=o,Ho(),st&&"function"===typeof st.onPostCommitFiberRoot)try{st.onPostCommitFiberRoot(ot,e)}catch(x){}a=!0}return a}finally{bt=n,El.transition=t}}return!1}function _c(e,t,n){e=Is(e,t=hi(0,t=mi(n,t),1),1),t=ec(),null!==e&&(yt(e,1,t),ac(e,t))}function Tc(e,t,n){if(3===e.tag)_c(e,e,n);else for(;null!==t;){if(3===t.tag){_c(t,e,n);break}if(1===t.tag){var a=t.stateNode;if("function"===typeof t.type.getDerivedStateFromError||"function"===typeof a.componentDidCatch&&(null===Kl||!Kl.has(a))){t=Is(t,e=fi(t,e=mi(n,e),1),1),e=ec(),null!==t&&(yt(t,1,e),ac(t,e));break}}t=t.return}}function Sc(e,t,n){var a=e.pingCache;null!==a&&a.delete(t),t=ec(),e.pingedLanes|=e.suspendedLanes&n,Al===e&&(Dl&n)===n&&(4===Pl||3===Pl&&(130023424&Dl)===Dl&&500>Je()-zl?pc(e,0):Ml|=n),ac(e,t)}function Cc(e,t){0===t&&(0===(1&e.mode)?t=1:(t=mt,0===(130023424&(mt<<=1))&&(mt=4194304)));var n=ec();null!==(e=Ns(e,t))&&(yt(e,t,n),ac(e,n))}function Ec(e){var t=e.memoizedState,n=0;null!==t&&(n=t.retryLane),Cc(e,n)}function jc(e,t){var n=0;switch(e.tag){case 13:var a=e.stateNode,o=e.memoizedState;null!==o&&(n=o.retryLane);break;case 19:a=e.stateNode;break;default:throw Error(s(314))}null!==a&&a.delete(t),Cc(e,n)}function Ac(e,t){return $e(e,t)}function Nc(e,t,n,a){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=a,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Dc(e,t,n,a){return new Nc(e,t,n,a)}function Oc(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Rc(e,t){var n=e.alternate;return null===n?((n=Dc(e.tag,t,e.key,e.mode)).elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=14680064&e.flags,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Pc(e,t,n,a,o,r){var i=2;if(a=e,"function"===typeof e)Oc(e)&&(i=1);else if("string"===typeof e)i=5;else e:switch(e){case _:return Ic(n.children,o,r,t);case T:i=8,o|=8;break;case S:return(e=Dc(12,n,t,2|o)).elementType=S,e.lanes=r,e;case A:return(e=Dc(13,n,t,o)).elementType=A,e.lanes=r,e;case N:return(e=Dc(19,n,t,o)).elementType=N,e.lanes=r,e;case R:return Lc(n,o,r,t);default:if("object"===typeof e&&null!==e)switch(e.$$typeof){case C:i=10;break e;case E:i=9;break e;case j:i=11;break e;case D:i=14;break e;case O:i=16,a=null;break e}throw Error(s(130,null==e?e:typeof e,""))}return(t=Dc(i,n,t,o)).elementType=e,t.type=a,t.lanes=r,t}function Ic(e,t,n,a){return(e=Dc(7,e,a,t)).lanes=n,e}function Lc(e,t,n,a){return(e=Dc(22,e,a,t)).elementType=R,e.lanes=n,e.stateNode={isHidden:!1},e}function Fc(e,t,n){return(e=Dc(6,e,null,t)).lanes=n,e}function Mc(e,t,n){return(t=Dc(4,null!==e.children?e.children:[],e.key,t)).lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Wc(e,t,n,a,o){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=gt(0),this.expirationTimes=gt(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=gt(0),this.identifierPrefix=a,this.onRecoverableError=o,this.mutableSourceEagerHydrationData=null}function Bc(e,t,n,a,o,s,r,i,l){return e=new Wc(e,t,n,i,l),1===t?(t=1,!0===s&&(t|=8)):t=0,s=Dc(3,null,null,t),e.current=s,s.stateNode=e,s.memoizedState={element:a,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Os(s),e}function zc(e,t,n){var a=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:x,key:null==a?null:""+a,children:e,containerInfo:t,implementation:n}}function Uc(e){if(!e)return jo;e:{if(Ue(e=e._reactInternals)!==e||1!==e.tag)throw Error(s(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(Ro(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(null!==t);throw Error(s(171))}if(1===e.tag){var n=e.type;if(Ro(n))return Lo(e,n,t)}return t}function Hc(e,t,n,a,o,s,r,i,l){return(e=Bc(n,a,!0,e,0,s,0,i,l)).context=Uc(null),n=e.current,(s=Ps(a=ec(),o=tc(n))).callback=void 0!==t&&null!==t?t:null,Is(n,s,o),e.current.lanes=o,yt(e,o,a),ac(e,a),e}function Gc(e,t,n,a){var o=t.current,s=ec(),r=tc(o);return n=Uc(n),null===t.context?t.context=n:t.pendingContext=n,(t=Ps(s,r)).payload={element:e},null!==(a=void 0===a?null:a)&&(t.callback=a),null!==(e=Is(o,t,r))&&(nc(e,o,r,s),Ls(e,o,r)),r}function Vc(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function Kc(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var n=e.retryLane;e.retryLane=0!==n&&n<t?n:t}}function $c(e,t){Kc(e,t),(e=e.alternate)&&Kc(e,t)}_l=function(e,t,n){if(null!==e)if(e.memoizedProps!==t.pendingProps||No.current)wi=!0;else{if(0===(e.lanes&n)&&0===(128&t.flags))return wi=!1,function(e,t,n){switch(t.tag){case 3:Ni(t),hs();break;case 5:rr(t);break;case 1:Ro(t.type)&&Fo(t);break;case 4:or(t,t.stateNode.containerInfo);break;case 10:var a=t.type._context,o=t.memoizedProps.value;Eo(vs,a._currentValue),a._currentValue=o;break;case 13:if(null!==(a=t.memoizedState))return null!==a.dehydrated?(Eo(lr,1&lr.current),t.flags|=128,null):0!==(n&t.child.childLanes)?Fi(e,t,n):(Eo(lr,1&lr.current),null!==(e=Gi(e,t,n))?e.sibling:null);Eo(lr,1&lr.current);break;case 19:if(a=0!==(n&t.childLanes),0!==(128&e.flags)){if(a)return Ui(e,t,n);t.flags|=128}if(null!==(o=t.memoizedState)&&(o.rendering=null,o.tail=null,o.lastEffect=null),Eo(lr,lr.current),a)break;return null;case 22:case 23:return t.lanes=0,Si(e,t,n)}return Gi(e,t,n)}(e,t,n);wi=0!==(131072&e.flags)}else wi=!1,ss&&0!==(1048576&t.flags)&&es(t,$o,t.index);switch(t.lanes=0,t.tag){case 2:var a=t.type;Hi(e,t),e=t.pendingProps;var o=Oo(t,Ao.current);Ss(t,n),o=Tr(null,t,a,e,o,n);var r=Sr();return t.flags|=1,"object"===typeof o&&null!==o&&"function"===typeof o.render&&void 0===o.$$typeof?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Ro(a)?(r=!0,Fo(t)):r=!1,t.memoizedState=null!==o.state&&void 0!==o.state?o.state:null,Os(t),o.updater=Us,t.stateNode=o,o._reactInternals=t,Ks(t,a,e,n),t=Ai(null,t,a,!0,r,n)):(t.tag=0,ss&&r&&ts(t),ki(null,t,o,n),t=t.child),t;case 16:a=t.elementType;e:{switch(Hi(e,t),e=t.pendingProps,a=(o=a._init)(a._payload),t.type=a,o=t.tag=function(e){if("function"===typeof e)return Oc(e)?1:0;if(void 0!==e&&null!==e){if((e=e.$$typeof)===j)return 11;if(e===D)return 14}return 2}(a),e=ys(a,e),o){case 0:t=Ei(null,t,a,e,n);break e;case 1:t=ji(null,t,a,e,n);break e;case 11:t=xi(null,t,a,e,n);break e;case 14:t=_i(null,t,a,ys(a.type,e),n);break e}throw Error(s(306,a,""))}return t;case 0:return a=t.type,o=t.pendingProps,Ei(e,t,a,o=t.elementType===a?o:ys(a,o),n);case 1:return a=t.type,o=t.pendingProps,ji(e,t,a,o=t.elementType===a?o:ys(a,o),n);case 3:e:{if(Ni(t),null===e)throw Error(s(387));a=t.pendingProps,o=(r=t.memoizedState).element,Rs(e,t),Ms(t,a,null,n);var i=t.memoizedState;if(a=i.element,r.isDehydrated){if(r={element:a,isDehydrated:!1,cache:i.cache,pendingSuspenseBoundaries:i.pendingSuspenseBoundaries,transitions:i.transitions},t.updateQueue.baseState=r,t.memoizedState=r,256&t.flags){t=Di(e,t,a,n,o=mi(Error(s(423)),t));break e}if(a!==o){t=Di(e,t,a,n,o=mi(Error(s(424)),t));break e}for(os=co(t.stateNode.containerInfo.firstChild),as=t,ss=!0,rs=null,n=Xs(t,null,a,n),t.child=n;n;)n.flags=-3&n.flags|4096,n=n.sibling}else{if(hs(),a===o){t=Gi(e,t,n);break e}ki(e,t,a,n)}t=t.child}return t;case 5:return rr(t),null===e&&ms(t),a=t.type,o=t.pendingProps,r=null!==e?e.memoizedProps:null,i=o.children,no(a,o)?i=null:null!==r&&no(a,r)&&(t.flags|=32),Ci(e,t),ki(e,t,i,n),t.child;case 6:return null===e&&ms(t),null;case 13:return Fi(e,t,n);case 4:return or(t,t.stateNode.containerInfo),a=t.pendingProps,null===e?t.child=Js(t,null,a,n):ki(e,t,a,n),t.child;case 11:return a=t.type,o=t.pendingProps,xi(e,t,a,o=t.elementType===a?o:ys(a,o),n);case 7:return ki(e,t,t.pendingProps,n),t.child;case 8:case 12:return ki(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(a=t.type._context,o=t.pendingProps,r=t.memoizedProps,i=o.value,Eo(vs,a._currentValue),a._currentValue=i,null!==r)if(ia(r.value,i)){if(r.children===o.children&&!No.current){t=Gi(e,t,n);break e}}else for(null!==(r=t.child)&&(r.return=t);null!==r;){var l=r.dependencies;if(null!==l){i=r.child;for(var c=l.firstContext;null!==c;){if(c.context===a){if(1===r.tag){(c=Ps(-1,n&-n)).tag=2;var m=r.updateQueue;if(null!==m){var d=(m=m.shared).pending;null===d?c.next=c:(c.next=d.next,d.next=c),m.pending=c}}r.lanes|=n,null!==(c=r.alternate)&&(c.lanes|=n),Ts(r.return,n,t),l.lanes|=n;break}c=c.next}}else if(10===r.tag)i=r.type===t.type?null:r.child;else if(18===r.tag){if(null===(i=r.return))throw Error(s(341));i.lanes|=n,null!==(l=i.alternate)&&(l.lanes|=n),Ts(i,n,t),i=r.sibling}else i=r.child;if(null!==i)i.return=r;else for(i=r;null!==i;){if(i===t){i=null;break}if(null!==(r=i.sibling)){r.return=i.return,i=r;break}i=i.return}r=i}ki(e,t,o.children,n),t=t.child}return t;case 9:return o=t.type,a=t.pendingProps.children,Ss(t,n),a=a(o=Cs(o)),t.flags|=1,ki(e,t,a,n),t.child;case 14:return o=ys(a=t.type,t.pendingProps),_i(e,t,a,o=ys(a.type,o),n);case 15:return Ti(e,t,t.type,t.pendingProps,n);case 17:return a=t.type,o=t.pendingProps,o=t.elementType===a?o:ys(a,o),Hi(e,t),t.tag=1,Ro(a)?(e=!0,Fo(t)):e=!1,Ss(t,n),Gs(t,a,o),Ks(t,a,o,n),Ai(null,t,a,!0,e,n);case 19:return Ui(e,t,n);case 22:return Si(e,t,n)}throw Error(s(156,t.tag))};var qc="function"===typeof reportError?reportError:function(e){console.error(e)};function Yc(e){this._internalRoot=e}function Zc(e){this._internalRoot=e}function Jc(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType)}function Xc(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function Qc(){}function em(e,t,n,a,o){var s=n._reactRootContainer;if(s){var r=s;if("function"===typeof o){var i=o;o=function(){var e=Vc(r);i.call(e)}}Gc(t,r,e,o)}else r=function(e,t,n,a,o){if(o){if("function"===typeof a){var s=a;a=function(){var e=Vc(r);s.call(e)}}var r=Hc(t,a,e,0,null,!1,0,"",Qc);return e._reactRootContainer=r,e[fo]=r.current,Ua(8===e.nodeType?e.parentNode:e),mc(),r}for(;o=e.lastChild;)e.removeChild(o);if("function"===typeof a){var i=a;a=function(){var e=Vc(l);i.call(e)}}var l=Bc(e,0,!1,null,0,!1,0,"",Qc);return e._reactRootContainer=l,e[fo]=l.current,Ua(8===e.nodeType?e.parentNode:e),mc((function(){Gc(t,l,n,a)})),l}(n,t,e,o,a);return Vc(r)}Zc.prototype.render=Yc.prototype.render=function(e){var t=this._internalRoot;if(null===t)throw Error(s(409));Gc(e,t,null,null)},Zc.prototype.unmount=Yc.prototype.unmount=function(){var e=this._internalRoot;if(null!==e){this._internalRoot=null;var t=e.containerInfo;mc((function(){Gc(null,e,null,null)})),t[fo]=null}},Zc.prototype.unstable_scheduleHydration=function(e){if(e){var t=Tt();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Rt.length&&0!==t&&t<Rt[n].priority;n++);Rt.splice(n,0,e),0===n&&Ft(e)}},kt=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=dt(t.pendingLanes);0!==n&&(vt(t,1|n),ac(t,Je()),0===(6&jl)&&(Ul=Je()+500,Ho()))}break;case 13:mc((function(){var t=Ns(e,1);if(null!==t){var n=ec();nc(t,e,1,n)}})),$c(e,1)}},xt=function(e){if(13===e.tag){var t=Ns(e,134217728);if(null!==t)nc(t,e,134217728,ec());$c(e,134217728)}},_t=function(e){if(13===e.tag){var t=tc(e),n=Ns(e,t);if(null!==n)nc(n,e,t,ec());$c(e,t)}},Tt=function(){return bt},St=function(e,t){var n=bt;try{return bt=e,t()}finally{bt=n}},xe=function(e,t,n){switch(t){case"input":if(X(e,n),t=n.name,"radio"===n.type&&null!=t){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var a=n[t];if(a!==e&&a.form===e.form){var o=xo(a);if(!o)throw Error(s(90));$(a),X(a,o)}}}break;case"textarea":se(e,n);break;case"select":null!=(t=n.value)&&ne(e,!!n.multiple,t,!1)}},je=cc,Ae=mc;var tm={usingClientEntryPoint:!1,Events:[wo,ko,xo,Ce,Ee,cc]},nm={findFiberByHostInstance:bo,bundleType:0,version:"18.2.0",rendererPackageName:"react-dom"},am={bundleType:nm.bundleType,version:nm.version,rendererPackageName:nm.rendererPackageName,rendererConfig:nm.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:w.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return null===(e=Ve(e))?null:e.stateNode},findFiberByHostInstance:nm.findFiberByHostInstance||function(){return null},findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.2.0-next-9e3b772b8-20220608"};if("undefined"!==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var om=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!om.isDisabled&&om.supportsFiber)try{ot=om.inject(am),st=om}catch(me){}}t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=tm,t.createPortal=function(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!Jc(t))throw Error(s(200));return zc(e,t,null,n)},t.createRoot=function(e,t){if(!Jc(e))throw Error(s(299));var n=!1,a="",o=qc;return null!==t&&void 0!==t&&(!0===t.unstable_strictMode&&(n=!0),void 0!==t.identifierPrefix&&(a=t.identifierPrefix),void 0!==t.onRecoverableError&&(o=t.onRecoverableError)),t=Bc(e,1,!1,null,0,n,0,a,o),e[fo]=t.current,Ua(8===e.nodeType?e.parentNode:e),new Yc(t)},t.findDOMNode=function(e){if(null==e)return null;if(1===e.nodeType)return e;var t=e._reactInternals;if(void 0===t){if("function"===typeof e.render)throw Error(s(188));throw e=Object.keys(e).join(","),Error(s(268,e))}return e=null===(e=Ve(t))?null:e.stateNode},t.flushSync=function(e){return mc(e)},t.hydrate=function(e,t,n){if(!Xc(t))throw Error(s(200));return em(null,e,t,!0,n)},t.hydrateRoot=function(e,t,n){if(!Jc(e))throw Error(s(405));var a=null!=n&&n.hydratedSources||null,o=!1,r="",i=qc;if(null!==n&&void 0!==n&&(!0===n.unstable_strictMode&&(o=!0),void 0!==n.identifierPrefix&&(r=n.identifierPrefix),void 0!==n.onRecoverableError&&(i=n.onRecoverableError)),t=Hc(t,null,e,1,null!=n?n:null,o,0,r,i),e[fo]=t.current,Ua(e),a)for(e=0;e<a.length;e++)o=(o=(n=a[e])._getVersion)(n._source),null==t.mutableSourceEagerHydrationData?t.mutableSourceEagerHydrationData=[n,o]:t.mutableSourceEagerHydrationData.push(n,o);return new Zc(t)},t.render=function(e,t,n){if(!Xc(t))throw Error(s(200));return em(null,e,t,!1,n)},t.unmountComponentAtNode=function(e){if(!Xc(e))throw Error(s(40));return!!e._reactRootContainer&&(mc((function(){em(null,null,e,!1,(function(){e._reactRootContainer=null,e[fo]=null}))})),!0)},t.unstable_batchedUpdates=cc,t.unstable_renderSubtreeIntoContainer=function(e,t,n,a){if(!Xc(n))throw Error(s(200));if(null==e||void 0===e._reactInternals)throw Error(s(38));return em(e,t,n,!1,a)},t.version="18.2.0-next-9e3b772b8-20220608"},250:(e,t,n)=>{"use strict";var a=n(164);t.s=a.createRoot,a.hydrateRoot},164:(e,t,n)=>{"use strict";!function e(){if("undefined"!==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"===typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}(),e.exports=n(463)},374:(e,t,n)=>{"use strict";var a=n(791),o=Symbol.for("react.element"),s=Symbol.for("react.fragment"),r=Object.prototype.hasOwnProperty,i=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,l={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,n){var a,s={},c=null,m=null;for(a in void 0!==n&&(c=""+n),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(m=t.ref),t)r.call(t,a)&&!l.hasOwnProperty(a)&&(s[a]=t[a]);if(e&&e.defaultProps)for(a in t=e.defaultProps)void 0===s[a]&&(s[a]=t[a]);return{$$typeof:o,type:e,key:c,ref:m,props:s,_owner:i.current}}t.Fragment=s,t.jsx=c,t.jsxs=c},117:(e,t)=>{"use strict";var n=Symbol.for("react.element"),a=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),i=Symbol.for("react.provider"),l=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),m=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),u=Symbol.iterator;var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},f=Object.assign,g={};function y(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||h}function v(){}function b(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||h}y.prototype.isReactComponent={},y.prototype.setState=function(e,t){if("object"!==typeof e&&"function"!==typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},y.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},v.prototype=y.prototype;var w=b.prototype=new v;w.constructor=b,f(w,y.prototype),w.isPureReactComponent=!0;var k=Array.isArray,x=Object.prototype.hasOwnProperty,_={current:null},T={key:!0,ref:!0,__self:!0,__source:!0};function S(e,t,a){var o,s={},r=null,i=null;if(null!=t)for(o in void 0!==t.ref&&(i=t.ref),void 0!==t.key&&(r=""+t.key),t)x.call(t,o)&&!T.hasOwnProperty(o)&&(s[o]=t[o]);var l=arguments.length-2;if(1===l)s.children=a;else if(1<l){for(var c=Array(l),m=0;m<l;m++)c[m]=arguments[m+2];s.children=c}if(e&&e.defaultProps)for(o in l=e.defaultProps)void 0===s[o]&&(s[o]=l[o]);return{$$typeof:n,type:e,key:r,ref:i,props:s,_owner:_.current}}function C(e){return"object"===typeof e&&null!==e&&e.$$typeof===n}var E=/\/+/g;function j(e,t){return"object"===typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function A(e,t,o,s,r){var i=typeof e;"undefined"!==i&&"boolean"!==i||(e=null);var l=!1;if(null===e)l=!0;else switch(i){case"string":case"number":l=!0;break;case"object":switch(e.$$typeof){case n:case a:l=!0}}if(l)return r=r(l=e),e=""===s?"."+j(l,0):s,k(r)?(o="",null!=e&&(o=e.replace(E,"$&/")+"/"),A(r,t,o,"",(function(e){return e}))):null!=r&&(C(r)&&(r=function(e,t){return{$$typeof:n,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(r,o+(!r.key||l&&l.key===r.key?"":(""+r.key).replace(E,"$&/")+"/")+e)),t.push(r)),1;if(l=0,s=""===s?".":s+":",k(e))for(var c=0;c<e.length;c++){var m=s+j(i=e[c],c);l+=A(i,t,o,m,r)}else if(m=function(e){return null===e||"object"!==typeof e?null:"function"===typeof(e=u&&e[u]||e["@@iterator"])?e:null}(e),"function"===typeof m)for(e=m.call(e),c=0;!(i=e.next()).done;)l+=A(i=i.value,t,o,m=s+j(i,c++),r);else if("object"===i)throw t=String(e),Error("Objects are not valid as a React child (found: "+("[object Object]"===t?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return l}function N(e,t,n){if(null==e)return e;var a=[],o=0;return A(e,a,"","",(function(e){return t.call(n,e,o++)})),a}function D(e){if(-1===e._status){var t=e._result;(t=t()).then((function(t){0!==e._status&&-1!==e._status||(e._status=1,e._result=t)}),(function(t){0!==e._status&&-1!==e._status||(e._status=2,e._result=t)})),-1===e._status&&(e._status=0,e._result=t)}if(1===e._status)return e._result.default;throw e._result}var O={current:null},R={transition:null},P={ReactCurrentDispatcher:O,ReactCurrentBatchConfig:R,ReactCurrentOwner:_};t.Children={map:N,forEach:function(e,t,n){N(e,(function(){t.apply(this,arguments)}),n)},count:function(e){var t=0;return N(e,(function(){t++})),t},toArray:function(e){return N(e,(function(e){return e}))||[]},only:function(e){if(!C(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},t.Component=y,t.Fragment=o,t.Profiler=r,t.PureComponent=b,t.StrictMode=s,t.Suspense=m,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=P,t.cloneElement=function(e,t,a){if(null===e||void 0===e)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var o=f({},e.props),s=e.key,r=e.ref,i=e._owner;if(null!=t){if(void 0!==t.ref&&(r=t.ref,i=_.current),void 0!==t.key&&(s=""+t.key),e.type&&e.type.defaultProps)var l=e.type.defaultProps;for(c in t)x.call(t,c)&&!T.hasOwnProperty(c)&&(o[c]=void 0===t[c]&&void 0!==l?l[c]:t[c])}var c=arguments.length-2;if(1===c)o.children=a;else if(1<c){l=Array(c);for(var m=0;m<c;m++)l[m]=arguments[m+2];o.children=l}return{$$typeof:n,type:e.type,key:s,ref:r,props:o,_owner:i}},t.createContext=function(e){return(e={$$typeof:l,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null}).Provider={$$typeof:i,_context:e},e.Consumer=e},t.createElement=S,t.createFactory=function(e){var t=S.bind(null,e);return t.type=e,t},t.createRef=function(){return{current:null}},t.forwardRef=function(e){return{$$typeof:c,render:e}},t.isValidElement=C,t.lazy=function(e){return{$$typeof:p,_payload:{_status:-1,_result:e},_init:D}},t.memo=function(e,t){return{$$typeof:d,type:e,compare:void 0===t?null:t}},t.startTransition=function(e){var t=R.transition;R.transition={};try{e()}finally{R.transition=t}},t.unstable_act=function(){throw Error("act(...) is not supported in production builds of React.")},t.useCallback=function(e,t){return O.current.useCallback(e,t)},t.useContext=function(e){return O.current.useContext(e)},t.useDebugValue=function(){},t.useDeferredValue=function(e){return O.current.useDeferredValue(e)},t.useEffect=function(e,t){return O.current.useEffect(e,t)},t.useId=function(){return O.current.useId()},t.useImperativeHandle=function(e,t,n){return O.current.useImperativeHandle(e,t,n)},t.useInsertionEffect=function(e,t){return O.current.useInsertionEffect(e,t)},t.useLayoutEffect=function(e,t){return O.current.useLayoutEffect(e,t)},t.useMemo=function(e,t){return O.current.useMemo(e,t)},t.useReducer=function(e,t,n){return O.current.useReducer(e,t,n)},t.useRef=function(e){return O.current.useRef(e)},t.useState=function(e){return O.current.useState(e)},t.useSyncExternalStore=function(e,t,n){return O.current.useSyncExternalStore(e,t,n)},t.useTransition=function(){return O.current.useTransition()},t.version="18.2.0"},791:(e,t,n)=>{"use strict";e.exports=n(117)},184:(e,t,n)=>{"use strict";e.exports=n(374)},813:(e,t)=>{"use strict";function n(e,t){var n=e.length;e.push(t);e:for(;0<n;){var a=n-1>>>1,o=e[a];if(!(0<s(o,t)))break e;e[a]=t,e[n]=o,n=a}}function a(e){return 0===e.length?null:e[0]}function o(e){if(0===e.length)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;e:for(var a=0,o=e.length,r=o>>>1;a<r;){var i=2*(a+1)-1,l=e[i],c=i+1,m=e[c];if(0>s(l,n))c<o&&0>s(m,l)?(e[a]=m,e[c]=n,a=c):(e[a]=l,e[i]=n,a=i);else{if(!(c<o&&0>s(m,n)))break e;e[a]=m,e[c]=n,a=c}}}return t}function s(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}if("object"===typeof performance&&"function"===typeof performance.now){var r=performance;t.unstable_now=function(){return r.now()}}else{var i=Date,l=i.now();t.unstable_now=function(){return i.now()-l}}var c=[],m=[],d=1,p=null,u=3,h=!1,f=!1,g=!1,y="function"===typeof setTimeout?setTimeout:null,v="function"===typeof clearTimeout?clearTimeout:null,b="undefined"!==typeof setImmediate?setImmediate:null;function w(e){for(var t=a(m);null!==t;){if(null===t.callback)o(m);else{if(!(t.startTime<=e))break;o(m),t.sortIndex=t.expirationTime,n(c,t)}t=a(m)}}function k(e){if(g=!1,w(e),!f)if(null!==a(c))f=!0,R(x);else{var t=a(m);null!==t&&P(k,t.startTime-e)}}function x(e,n){f=!1,g&&(g=!1,v(C),C=-1),h=!0;var s=u;try{for(w(n),p=a(c);null!==p&&(!(p.expirationTime>n)||e&&!A());){var r=p.callback;if("function"===typeof r){p.callback=null,u=p.priorityLevel;var i=r(p.expirationTime<=n);n=t.unstable_now(),"function"===typeof i?p.callback=i:p===a(c)&&o(c),w(n)}else o(c);p=a(c)}if(null!==p)var l=!0;else{var d=a(m);null!==d&&P(k,d.startTime-n),l=!1}return l}finally{p=null,u=s,h=!1}}"undefined"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var _,T=!1,S=null,C=-1,E=5,j=-1;function A(){return!(t.unstable_now()-j<E)}function N(){if(null!==S){var e=t.unstable_now();j=e;var n=!0;try{n=S(!0,e)}finally{n?_():(T=!1,S=null)}}else T=!1}if("function"===typeof b)_=function(){b(N)};else if("undefined"!==typeof MessageChannel){var D=new MessageChannel,O=D.port2;D.port1.onmessage=N,_=function(){O.postMessage(null)}}else _=function(){y(N,0)};function R(e){S=e,T||(T=!0,_())}function P(e,n){C=y((function(){e(t.unstable_now())}),n)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_continueExecution=function(){f||h||(f=!0,R(x))},t.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):E=0<e?Math.floor(1e3/e):5},t.unstable_getCurrentPriorityLevel=function(){return u},t.unstable_getFirstCallbackNode=function(){return a(c)},t.unstable_next=function(e){switch(u){case 1:case 2:case 3:var t=3;break;default:t=u}var n=u;u=t;try{return e()}finally{u=n}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=u;u=e;try{return t()}finally{u=n}},t.unstable_scheduleCallback=function(e,o,s){var r=t.unstable_now();switch("object"===typeof s&&null!==s?s="number"===typeof(s=s.delay)&&0<s?r+s:r:s=r,e){case 1:var i=-1;break;case 2:i=250;break;case 5:i=1073741823;break;case 4:i=1e4;break;default:i=5e3}return e={id:d++,callback:o,priorityLevel:e,startTime:s,expirationTime:i=s+i,sortIndex:-1},s>r?(e.sortIndex=s,n(m,e),null===a(c)&&e===a(m)&&(g?(v(C),C=-1):g=!0,P(k,s-r))):(e.sortIndex=i,n(c,e),f||h||(f=!0,R(x))),e},t.unstable_shouldYield=A,t.unstable_wrapCallback=function(e){var t=u;return function(){var n=u;u=t;try{return e.apply(this,arguments)}finally{u=n}}}},296:(e,t,n)=>{"use strict";e.exports=n(813)},399:e=>{e.exports={area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0}},274:(e,t,n)=>{"use strict";function a(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw new TypeError("attempted to use private field on non-instance");return e}n.d(t,{Z:()=>a})},359:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var a=0;function o(e){return"__private_"+a+++"_"+e}}},__webpack_module_cache__={};function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var n=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e](n,n.exports,__webpack_require__),n.exports}__webpack_require__.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(t,{a:t}),t},(()=>{var e,t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__;__webpack_require__.t=function(n,a){if(1&a&&(n=this(n)),8&a)return n;if("object"===typeof n&&n){if(4&a&&n.__esModule)return n;if(16&a&&"function"===typeof n.then)return n}var o=Object.create(null);__webpack_require__.r(o);var s={};e=e||[null,t({}),t([]),t(t)];for(var r=2&a&&n;"object"==typeof r&&!~e.indexOf(r);r=t(r))Object.getOwnPropertyNames(r).forEach((e=>s[e]=()=>n[e]));return s.default=()=>n,__webpack_require__.d(o,s),o}})(),__webpack_require__.d=(e,t)=>{for(var n in t)__webpack_require__.o(t,n)&&!__webpack_require__.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},__webpack_require__.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}(),__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),__webpack_require__.r=e=>{"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};(()=>{"use strict";var e,t=__webpack_require__(791),n=__webpack_require__.t(t,2),a=__webpack_require__(250);function o(){return o=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e},o.apply(this,arguments)}!function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"}(e||(e={}));const s="popstate";function r(e,t){if(!1===e||null===e||"undefined"===typeof e)throw new Error(t)}function i(e,t){if(!e){"undefined"!==typeof console&&console.warn(t);try{throw new Error(t)}catch(n){}}}function l(e,t){return{usr:e.state,key:e.key,idx:t}}function c(e,t,n,a){return void 0===n&&(n=null),o({pathname:"string"===typeof e?e:e.pathname,search:"",hash:""},"string"===typeof t?d(t):t,{state:n,key:t&&t.key||a||Math.random().toString(36).substr(2,8)})}function m(e){let{pathname:t="/",search:n="",hash:a=""}=e;return n&&"?"!==n&&(t+="?"===n.charAt(0)?n:"?"+n),a&&"#"!==a&&(t+="#"===a.charAt(0)?a:"#"+a),t}function d(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substr(n),e=e.substr(0,n));let a=e.indexOf("?");a>=0&&(t.search=e.substr(a),e=e.substr(0,a)),e&&(t.pathname=e)}return t}function p(t,n,a,i){void 0===i&&(i={});let{window:d=document.defaultView,v5Compat:p=!1}=i,u=d.history,h=e.Pop,f=null,g=y();function y(){return(u.state||{idx:null}).idx}function v(){h=e.Pop;let t=y(),n=null==t?null:t-g;g=t,f&&f({action:h,location:w.location,delta:n})}function b(e){let t="null"!==d.location.origin?d.location.origin:d.location.href,n="string"===typeof e?e:m(e);return r(t,"No window.location.(origin|href) available to create URL for href: "+n),new URL(n,t)}null==g&&(g=0,u.replaceState(o({},u.state,{idx:g}),""));let w={get action(){return h},get location(){return t(d,u)},listen(e){if(f)throw new Error("A history only accepts one active listener");return d.addEventListener(s,v),f=e,()=>{d.removeEventListener(s,v),f=null}},createHref:e=>n(d,e),createURL:b,encodeLocation(e){let t=b(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:function(t,n){h=e.Push;let o=c(w.location,t,n);a&&a(o,t),g=y()+1;let s=l(o,g),r=w.createHref(o);try{u.pushState(s,"",r)}catch(i){d.location.assign(r)}p&&f&&f({action:h,location:w.location,delta:1})},replace:function(t,n){h=e.Replace;let o=c(w.location,t,n);a&&a(o,t),g=y();let s=l(o,g),r=w.createHref(o);u.replaceState(s,"",r),p&&f&&f({action:h,location:w.location,delta:0})},go:e=>u.go(e)};return w}var u;function h(e,t,n){void 0===n&&(n="/");let a=_(("string"===typeof t?d(t):t).pathname||"/",n);if(null==a)return null;let o=f(e);!function(e){e.sort(((e,t)=>e.score!==t.score?t.score-e.score:function(e,t){let n=e.length===t.length&&e.slice(0,-1).every(((e,n)=>e===t[n]));return n?e[e.length-1]-t[t.length-1]:0}(e.routesMeta.map((e=>e.childrenIndex)),t.routesMeta.map((e=>e.childrenIndex)))))}(o);let s=null;for(let r=0;null==s&&r<o.length;++r)s=w(o[r],x(a));return s}function f(e,t,n,a){void 0===t&&(t=[]),void 0===n&&(n=[]),void 0===a&&(a="");let o=(e,o,s)=>{let i={relativePath:void 0===s?e.path||"":s,caseSensitive:!0===e.caseSensitive,childrenIndex:o,route:e};i.relativePath.startsWith("/")&&(r(i.relativePath.startsWith(a),'Absolute route path "'+i.relativePath+'" nested under path "'+a+'" is not valid. An absolute child route path must start with the combined path of all its parent routes.'),i.relativePath=i.relativePath.slice(a.length));let l=j([a,i.relativePath]),c=n.concat(i);e.children&&e.children.length>0&&(r(!0!==e.index,'Index routes must not have child routes. Please remove all child routes from route path "'+l+'".'),f(e.children,t,c,l)),(null!=e.path||e.index)&&t.push({path:l,score:b(l,e.index),routesMeta:c})};return e.forEach(((e,t)=>{var n;if(""!==e.path&&null!=(n=e.path)&&n.includes("?"))for(let a of g(e.path))o(e,t,a);else o(e,t)})),t}function g(e){let t=e.split("/");if(0===t.length)return[];let[n,...a]=t,o=n.endsWith("?"),s=n.replace(/\?$/,"");if(0===a.length)return o?[s,""]:[s];let r=g(a.join("/")),i=[];return i.push(...r.map((e=>""===e?s:[s,e].join("/")))),o&&i.push(...r),i.map((t=>e.startsWith("/")&&""===t?"/":t))}!function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"}(u||(u={}));const y=/^:\w+$/,v=e=>"*"===e;function b(e,t){let n=e.split("/"),a=n.length;return n.some(v)&&(a+=-2),t&&(a+=2),n.filter((e=>!v(e))).reduce(((e,t)=>e+(y.test(t)?3:""===t?1:10)),a)}function w(e,t){let{routesMeta:n}=e,a={},o="/",s=[];for(let r=0;r<n.length;++r){let e=n[r],i=r===n.length-1,l="/"===o?t:t.slice(o.length)||"/",c=k({path:e.relativePath,caseSensitive:e.caseSensitive,end:i},l);if(!c)return null;Object.assign(a,c.params);let m=e.route;s.push({params:a,pathname:j([o,c.pathname]),pathnameBase:A(j([o,c.pathnameBase])),route:m}),"/"!==c.pathnameBase&&(o=j([o,c.pathnameBase]))}return s}function k(e,t){"string"===typeof e&&(e={path:e,caseSensitive:!1,end:!0});let[n,a]=function(e,t,n){void 0===t&&(t=!1);void 0===n&&(n=!0);T("*"===e||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were "'+e.replace(/\*$/,"/*")+'" because the `*` character must always follow a `/` in the pattern. To get rid of this warning, please change the route path to "'+e.replace(/\*$/,"/*")+'".');let a=[],o="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^$?{}|()[\]]/g,"\\$&").replace(/\/:(\w+)/g,((e,t)=>(a.push(t),"/([^\\/]+)")));e.endsWith("*")?(a.push("*"),o+="*"===e||"/*"===e?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?o+="\\/*$":""!==e&&"/"!==e&&(o+="(?:(?=\\/|$))");let s=new RegExp(o,t?void 0:"i");return[s,a]}(e.path,e.caseSensitive,e.end),o=t.match(n);if(!o)return null;let s=o[0],r=s.replace(/(.)\/+$/,"$1"),i=o.slice(1);return{params:a.reduce(((e,t,n)=>{if("*"===t){let e=i[n]||"";r=s.slice(0,s.length-e.length).replace(/(.)\/+$/,"$1")}return e[t]=function(e,t){try{return decodeURIComponent(e)}catch(n){return T(!1,'The value for the URL param "'+t+'" will not be decoded because the string "'+e+'" is a malformed URL segment. This is probably due to a bad percent encoding ('+n+")."),e}}(i[n]||"",t),e}),{}),pathname:s,pathnameBase:r,pattern:e}}function x(e){try{return decodeURI(e)}catch(t){return T(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent encoding ('+t+")."),e}}function _(e,t){if("/"===t)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,a=e.charAt(n);return a&&"/"!==a?null:e.slice(n)||"/"}function T(e,t){if(!e){"undefined"!==typeof console&&console.warn(t);try{throw new Error(t)}catch(n){}}}function S(e,t,n,a){return"Cannot include a '"+e+"' character in a manually specified `to."+t+"` field ["+JSON.stringify(a)+"]. Please separate it out to the `to."+n+'` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.'}function C(e){return e.filter(((e,t)=>0===t||e.route.path&&e.route.path.length>0))}function E(e,t,n,a){let s;void 0===a&&(a=!1),"string"===typeof e?s=d(e):(s=o({},e),r(!s.pathname||!s.pathname.includes("?"),S("?","pathname","search",s)),r(!s.pathname||!s.pathname.includes("#"),S("#","pathname","hash",s)),r(!s.search||!s.search.includes("#"),S("#","search","hash",s)));let i,l=""===e||""===s.pathname,c=l?"/":s.pathname;if(a||null==c)i=n;else{let e=t.length-1;if(c.startsWith("..")){let t=c.split("/");for(;".."===t[0];)t.shift(),e-=1;s.pathname=t.join("/")}i=e>=0?t[e]:"/"}let m=function(e,t){void 0===t&&(t="/");let{pathname:n,search:a="",hash:o=""}="string"===typeof e?d(e):e,s=n?n.startsWith("/")?n:function(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach((e=>{".."===e?n.length>1&&n.pop():"."!==e&&n.push(e)})),n.length>1?n.join("/"):"/"}(n,t):t;return{pathname:s,search:N(a),hash:D(o)}}(s,i),p=c&&"/"!==c&&c.endsWith("/"),u=(l||"."===c)&&n.endsWith("/");return m.pathname.endsWith("/")||!p&&!u||(m.pathname+="/"),m}const j=e=>e.join("/").replace(/\/\/+/g,"/"),A=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),N=e=>e&&"?"!==e?e.startsWith("?")?e:"?"+e:"",D=e=>e&&"#"!==e?e.startsWith("#")?e:"#"+e:"";class O extends Error{}function R(e){return null!=e&&"number"===typeof e.status&&"string"===typeof e.statusText&&"boolean"===typeof e.internal&&"data"in e}const P=["post","put","patch","delete"],I=(new Set(P),["get",...P]);new Set(I),new Set([301,302,303,307,308]),new Set([307,308]),"undefined"!==typeof window&&"undefined"!==typeof window.document&&window.document.createElement;Symbol("deferred");function L(){return L=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e},L.apply(this,arguments)}const F="function"===typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e===1/t)||e!==e&&t!==t},{useState:M,useEffect:W,useLayoutEffect:B,useDebugValue:z}=n;function U(e){const t=e.getSnapshot,n=e.value;try{const e=t();return!F(n,e)}catch(a){return!0}}"undefined"===typeof window||"undefined"===typeof window.document||window.document.createElement,n.useSyncExternalStore;const H=t.createContext(null);const G=t.createContext(null);const V=t.createContext(null);const K=t.createContext(null);const q=t.createContext({outlet:null,matches:[]});const Y=t.createContext(null);function Z(){return null!=t.useContext(K)}function J(){return Z()||r(!1),t.useContext(K).location}function X(){Z()||r(!1);let{basename:e,navigator:n}=t.useContext(V),{matches:a}=t.useContext(q),{pathname:o}=J(),s=JSON.stringify(C(a).map((e=>e.pathnameBase))),i=t.useRef(!1);return t.useEffect((()=>{i.current=!0})),t.useCallback((function(t,a){if(void 0===a&&(a={}),!i.current)return;if("number"===typeof t)return void n.go(t);let r=E(t,JSON.parse(s),o,"path"===a.relative);"/"!==e&&(r.pathname="/"===r.pathname?e:j([e,r.pathname])),(a.replace?n.replace:n.push)(r,a.state,a)}),[e,n,s,o])}function Q(){let{matches:e}=t.useContext(q),n=e[e.length-1];return n?n.params:{}}function ee(e,n){let{relative:a}=void 0===n?{}:n,{matches:o}=t.useContext(q),{pathname:s}=J(),r=JSON.stringify(C(o).map((e=>e.pathnameBase)));return t.useMemo((()=>E(e,JSON.parse(r),s,"path"===a)),[e,r,s,a])}function te(){let e=function(){var e;let n=t.useContext(Y),a=ie(re.UseRouteError),o=le(re.UseRouteError);if(n)return n;return null==(e=a.errors)?void 0:e[o]}(),n=R(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),a=e instanceof Error?e.stack:null,o="rgba(200,200,200, 0.5)",s={padding:"0.5rem",backgroundColor:o};return t.createElement(t.Fragment,null,t.createElement("h2",null,"Unexpected Application Error!"),t.createElement("h3",{style:{fontStyle:"italic"}},n),a?t.createElement("pre",{style:s},a):null,null)}class ne extends t.Component{constructor(e){super(e),this.state={location:e.location,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location?{error:e.error,location:e.location}:{error:e.error||t.error,location:t.location}}componentDidCatch(e,t){console.error("React Router caught the following error during render",e,t)}render(){return this.state.error?t.createElement(q.Provider,{value:this.props.routeContext},t.createElement(Y.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function ae(e){let{routeContext:n,match:a,children:o}=e,s=t.useContext(H);return s&&s.static&&s.staticContext&&a.route.errorElement&&(s.staticContext._deepestRenderedBoundaryId=a.route.id),t.createElement(q.Provider,{value:n},o)}function oe(e,n,a){if(void 0===n&&(n=[]),null==e){if(null==a||!a.errors)return null;e=a.matches}let o=e,s=null==a?void 0:a.errors;if(null!=s){let e=o.findIndex((e=>e.route.id&&(null==s?void 0:s[e.route.id])));e>=0||r(!1),o=o.slice(0,Math.min(o.length,e+1))}return o.reduceRight(((e,r,i)=>{let l=r.route.id?null==s?void 0:s[r.route.id]:null,c=a?r.route.errorElement||t.createElement(te,null):null,m=n.concat(o.slice(0,i+1)),d=()=>t.createElement(ae,{match:r,routeContext:{outlet:e,matches:m}},l?c:void 0!==r.route.element?r.route.element:e);return a&&(r.route.errorElement||0===i)?t.createElement(ne,{location:a.location,component:c,error:l,children:d(),routeContext:{outlet:null,matches:m}}):d()}),null)}var se,re;function ie(e){let n=t.useContext(G);return n||r(!1),n}function le(e){let n=function(e){let n=t.useContext(q);return n||r(!1),n}(),a=n.matches[n.matches.length-1];return a.route.id||r(!1),a.route.id}!function(e){e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator"}(se||(se={})),function(e){e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator"}(re||(re={}));function ce(e){r(!1)}function me(n){let{basename:a="/",children:o=null,location:s,navigationType:i=e.Pop,navigator:l,static:c=!1}=n;Z()&&r(!1);let m=a.replace(/^\/*/,"/"),p=t.useMemo((()=>({basename:m,navigator:l,static:c})),[m,l,c]);"string"===typeof s&&(s=d(s));let{pathname:u="/",search:h="",hash:f="",state:g=null,key:y="default"}=s,v=t.useMemo((()=>{let e=_(u,m);return null==e?null:{pathname:e,search:h,hash:f,state:g,key:y}}),[m,u,h,f,g,y]);return null==v?null:t.createElement(V.Provider,{value:p},t.createElement(K.Provider,{children:o,value:{location:v,navigationType:i}}))}function de(n){let{children:a,location:o}=n,s=t.useContext(H);return function(n,a){Z()||r(!1);let{navigator:o}=t.useContext(V),s=t.useContext(G),{matches:i}=t.useContext(q),l=i[i.length-1],c=l?l.params:{},m=(l&&l.pathname,l?l.pathnameBase:"/");l&&l.route;let p,u=J();if(a){var f;let e="string"===typeof a?d(a):a;"/"===m||(null==(f=e.pathname)?void 0:f.startsWith(m))||r(!1),p=e}else p=u;let g=p.pathname||"/",y=h(n,{pathname:"/"===m?g:g.slice(m.length)||"/"}),v=oe(y&&y.map((e=>Object.assign({},e,{params:Object.assign({},c,e.params),pathname:j([m,o.encodeLocation?o.encodeLocation(e.pathname).pathname:e.pathname]),pathnameBase:"/"===e.pathnameBase?m:j([m,o.encodeLocation?o.encodeLocation(e.pathnameBase).pathname:e.pathnameBase])}))),i,s||void 0);return a&&v?t.createElement(K.Provider,{value:{location:L({pathname:"/",search:"",hash:"",state:null,key:"default"},p),navigationType:e.Pop}},v):v}(s&&!a?s.router.routes:he(a),o)}var pe;!function(e){e[e.pending=0]="pending",e[e.success=1]="success",e[e.error=2]="error"}(pe||(pe={}));new Promise((()=>{}));class ue extends t.Component{constructor(e){super(e),this.state={error:null}}static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e,t){console.error("<Await> caught the following error during render",e,t)}render(){let{children:e,errorElement:t,resolve:n}=this.props,a=null,o=pe.pending;if(n instanceof Promise)if(this.state.error){pe.error;let e=this.state.error;Promise.reject().catch((()=>{})),Object.defineProperty(a,"_tracked",{get:()=>!0}),Object.defineProperty(a,"_error",{get:()=>e})}else n._tracked?(n,void 0!==a._error?pe.error:void 0!==a._data?pe.success:pe.pending):(pe.pending,Object.defineProperty(n,"_tracked",{get:()=>!0}),n.then((e=>Object.defineProperty(n,"_data",{get:()=>e})),(e=>Object.defineProperty(n,"_error",{get:()=>e}))));else pe.success,Promise.resolve(),Object.defineProperty(a,"_tracked",{get:()=>!0}),Object.defineProperty(a,"_data",{get:()=>n});if(o===pe.error&&a._error instanceof AbortedDeferredError)throw neverSettledPromise;if(o===pe.error&&!t)throw a._error;if(o===pe.error)return React.createElement(AwaitContext.Provider,{value:a,children:t});if(o===pe.success)return React.createElement(AwaitContext.Provider,{value:a,children:e});throw a}}function he(e,n){void 0===n&&(n=[]);let a=[];return t.Children.forEach(e,((e,o)=>{if(!t.isValidElement(e))return;if(e.type===t.Fragment)return void a.push.apply(a,he(e.props.children,n));e.type!==ce&&r(!1),e.props.index&&e.props.children&&r(!1);let s=[...n,o],i={id:e.props.id||s.join("-"),caseSensitive:e.props.caseSensitive,element:e.props.element,index:e.props.index,path:e.props.path,loader:e.props.loader,action:e.props.action,errorElement:e.props.errorElement,hasErrorBoundary:null!=e.props.errorElement,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle};e.props.children&&(i.children=he(e.props.children,s)),a.push(i)})),a}function fe(){return fe=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e},fe.apply(this,arguments)}function ge(e,t){if(null==e)return{};var n,a,o={},s=Object.keys(e);for(a=0;a<s.length;a++)n=s[a],t.indexOf(n)>=0||(o[n]=e[n]);return o}const ye=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset"];function ve(e){let{basename:n,children:a,window:o}=e,s=t.useRef();var r;null==s.current&&(s.current=(void 0===(r={window:o,v5Compat:!0})&&(r={}),p((function(e,t){let{pathname:n="/",search:a="",hash:o=""}=d(e.location.hash.substr(1));return c("",{pathname:n,search:a,hash:o},t.state&&t.state.usr||null,t.state&&t.state.key||"default")}),(function(e,t){let n=e.document.querySelector("base"),a="";if(n&&n.getAttribute("href")){let t=e.location.href,n=t.indexOf("#");a=-1===n?t:t.slice(0,n)}return a+"#"+("string"===typeof t?t:m(t))}),(function(e,t){i("/"===e.pathname.charAt(0),"relative pathnames are not supported in hash history.push("+JSON.stringify(t)+")")}),r)));let l=s.current,[u,h]=t.useState({action:l.action,location:l.location});return t.useLayoutEffect((()=>l.listen(h)),[l]),t.createElement(me,{basename:n,children:a,location:u.location,navigationType:u.action,navigator:l})}const be="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement,we=t.forwardRef((function(e,n){let{onClick:a,relative:o,reloadDocument:s,replace:i,state:l,target:c,to:d,preventScrollReset:p}=e,u=ge(e,ye),h="string"===typeof d?d:m(d),f=/^[a-z+]+:\/\//i.test(h)||h.startsWith("//"),g=h,y=!1;if(be&&f){let e=new URL(window.location.href),t=h.startsWith("//")?new URL(e.protocol+h):new URL(h);t.origin===e.origin?g=t.pathname+t.search+t.hash:y=!0}let v=function(e,n){let{relative:a}=void 0===n?{}:n;Z()||r(!1);let{basename:o,navigator:s}=t.useContext(V),{hash:i,pathname:l,search:c}=ee(e,{relative:a}),m=l;return"/"!==o&&(m="/"===l?o:j([o,l])),s.createHref({pathname:m,search:c,hash:i})}(g,{relative:o}),b=function(e,n){let{target:a,replace:o,state:s,preventScrollReset:r,relative:i}=void 0===n?{}:n,l=X(),c=J(),d=ee(e,{relative:i});return t.useCallback((t=>{if(function(e,t){return 0===e.button&&(!t||"_self"===t)&&!function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e)}(t,a)){t.preventDefault();let n=void 0!==o?o:m(c)===m(d);l(e,{replace:n,state:s,preventScrollReset:r,relative:i})}}),[c,l,d,o,s,a,e,r,i])}(g,{replace:i,state:l,target:c,preventScrollReset:p,relative:o});return t.createElement("a",fe({},u,{href:f?h:v,onClick:y||s?a:function(e){a&&a(e),e.defaultPrevented||b(e)},ref:n,target:c}))}));var ke,xe;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmitImpl="useSubmitImpl",e.UseFetcher="useFetcher"})(ke||(ke={})),function(e){e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"}(xe||(xe={}));var _e=__webpack_require__(289);const Te=["\n\xa7 achievements.commitsAfter1500.title: Owl\n\xa7 achievements.commitsAfter1500.description: 70% of commits after 3:00 PM\n\xa7 achievements.commitsBefore1500.title: Early bird\n\xa7 achievements.commitsBefore1500.description: 70% of commits before noon\n\xa7 achievements.workEveryTime.title: Devoted worker\n\xa7 achievements.workEveryTime.description: a commit for every hour of the day\n\xa7 achievements.workNotWork.title: Shooting blanks\n\xa7 achievements.workNotWork.description: commits are there, but no tasks are closed\n\xa7 achievements.userNotWork.title: Fly-by\n\xa7 achievements.userNotWork.description: this is not their main project\n\xa7 achievements.userIsDied.title: Dead soul\n\xa7 achievements.userIsDied.description: worked, but resigned\n\xa7 achievements.lessTasks.title: Came and went\n\xa7 achievements.lessTasks.description: least closed tasks\n\xa7 achievements.moreTasks.title: Father says well done\n\xa7 achievements.moreTasks.description: most closed tasks\n\xa7 achievements.everyMessageLong.title: Master of eloquence\n\xa7 achievements.everyMessageLong.description: consistently the longest commit messages\n\xa7 achievements.everyMessageShort.title: Talkative, a spy's dream\n\xa7 achievements.everyMessageShort.description: consistently, the shortest commit messages\n\xa7 achievements.shortestName.title: Size doesn't matter\n\xa7 achievements.shortestName.description: shortest name\n\xa7 achievements.longestName.title: Azim Aziz Il Am Kadir Imran II\n\xa7 achievements.longestName.description: longest name\n\xa7 achievements.moreCommits.title: Backup master\n\xa7 achievements.moreCommits.description: most commits\n\xa7 achievements.lessCommits.title: Rare but Precise\n\xa7 achievements.lessCommits.description: least commits\n\xa7 achievements.oneCommitOneTask.title: Right on target\n\xa7 achievements.oneCommitOneTask.description: on average one commit per task\n\xa7 achievements.moreLazyDays.title: With you in spirit\n\xa7 achievements.moreLazyDays.description: most days without commits\n\xa7 achievements.lessLazyDays.title: Papa carlo\n\xa7 achievements.lessLazyDays.description: least days without commits\n\xa7 achievements.zeroLazyDays.title: Not a single break\n\xa7 achievements.zeroLazyDays.description: not a single day without commits\n\xa7 achievements.moreWorkDays.title: Valuable employee\n\xa7 achievements.moreWorkDays.description: most working days\n\xa7 achievements.moreScopes.title: Startuper\n\xa7 achievements.moreScopes.description: completed the most features\n\xa7 achievements.lessScopes.title: Dandy\n\xa7 achievements.lessScopes.description: completed the fewest features\n\xa7 achievements.moreDaysForTask.title: Snail on the slope\n\xa7 achievements.moreDaysForTask.description: tasks take longer than others\n\xa7 achievements.more2DaysForTask.title: Slow and steady\n\xa7 achievements.more2DaysForTask.description: more than two days per task\n\xa7 achievements.moreDaysInProject.title: Old-timer\n\xa7 achievements.moreDaysInProject.description: most days in the project\n\xa7 achievements.lessDaysInProject.title: And who is this?\n\xa7 achievements.lessDaysInProject.description: least days in the project\n\xa7 achievements.more90DaysInProject.title: Welcome aboard\n\xa7 achievements.more90DaysInProject.description: not fired during the probation period\n\xa7 achievements.lessDaysForTask.title: Fast shooting\n\xa7 achievements.lessDaysForTask.description: a task takes less than a day\n\xa7 achievements.adam.title: Adam\n\xa7 achievements.adam.description: the first stable employee on the project\n\xa7 achievements.more666DaysInProject.title: Devil\n\xa7 achievements.more666DaysInProject.description: worked 666 days on the project\n\xa7 achievements.more777DaysInProject.title: Las Vegas\n\xa7 achievements.more777DaysInProject.description: worked 777 days on the project\n\xa7 achievements.moreRefactoring.title: Executive editor\n\xa7 achievements.moreRefactoring.description: made the most 'refactoring' tags\n\xa7 achievements.longestMessage.title: So many conversations...\n\xa7 achievements.longestMessage.description: the longest commit message of all time\n\xa7 achievements.moreTasksInDay.title: Speed racer\n\xa7 achievements.moreTasksInDay.description: record for the number of tasks closed in a day\n\xa7 achievements.hasCommitFrom0to7.title: Night watch\n\xa7 achievements.hasCommitFrom0to7.description: a commit for every hour of the night\n\xa7 achievements.noCommitOnDay.title: Technical break\n\xa7 achievements.noCommitOnDay.description: there is a certain hour and day in working time when never commits\n\xa7 achievements.hasCommitEveryTime.title: Died at work\n\xa7 achievements.hasCommitEveryTime.description: a commit for every hour of each day (including weekends)\n\xa7 achievements.commitsAfter1800.title: Business Time\n\xa7 achievements.commitsAfter1800.description: no commits after 6:00 PM\n\xa7 achievements.moreFix.title: Bug hunter\n\xa7 achievements.moreFix.description: most closed bugs\n\xa7 achievements.lessWorkDays.title: Count me out\n\xa7 achievements.lessWorkDays.description: least working days\n\xa7 achievements.moreCreateCode.title: Creator\n\xa7 achievements.moreCreateCode.description: tends to add code more than others\n\xa7 achievements.moreRemoveCode.title: Destroyer\n\xa7 achievements.moreRemoveCode.description: tends to remove code more than others\n\xa7 achievements.moreChangeCode.title: Reformer\n\xa7 achievements.moreChangeCode.description: tends to change code more than others\n\xa7 achievements.moreStyle.title: Fashion police\n\xa7 achievements.moreStyle.description: tends to change CSS more than others\n\xa7 achievements.moreOnHoliday.title: No life\n\xa7 achievements.moreOnHoliday.description: relatively many commits in non-working hours\n\xa7 achievements.morePRMerge.title: \u0422\u0430\u043c\u043e\u0436\u043d\u044f \u0434\u0430\u0451\u0442 \u0434\u043e\u0431\u0440\u043e\n\xa7 achievements.morePRMerge.description: more often than others, presses the \"Merge\" button for PR\n\xa7 achievements.longWaitPR.title: \u0417\u0430\u0432\u0442\u0440\u0430 \u0442\u043e\u0447\u043d\u043e \u0432\u043e\u043b\u044c\u0451\u043c\n\xa7 achievements.longWaitPR.description: \u0441\u043e\u0437\u0434\u0430\u043b PR, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u043e\u043b\u044c\u0448\u0435 \u043c\u0435\u0441\u044f\u0446\u0430 \u043f\u0440\u043e\u0432\u0438\u0441\u0435\u043b \u043d\u0430 \u0440\u0435\u0432\u044c\u044e\n\xa7 achievements.moreLongWaitPR.title: A long time ago in a galaxy far, far away\n\xa7 achievements.moreLongWaitPR.description: \u0441\u043e\u0437\u0434\u0430\u043b PR, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0434\u043e\u043b\u0433\u043e \u043f\u0440\u043e\u0432\u0438\u0441\u0435\u043b \u043d\u0430 \u0440\u0435\u0432\u044c\u044e\n\xa7 achievements.oneExtension.title: \u041e\u0434\u0438\u043d \u0432 \u043f\u043e\u043b\u0435 \u0432\u043e\u0438\u043d\n\xa7 achievements.oneExtension.description: \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u043d \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 \u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f\n\xa7 achievements.fileRush.title: Zerg Rush\n\xa7 achievements.fileRush.description: created the most files in the project\n\xa7 achievements.moreLintHint.title: \u0413\u0440\u0430\u043c\u0430\u0440-\u043d\u0430\u0446\u0438\n\xa7 achievements.moreLintHint.description: \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0445 \u0441\u043e\u0437\u0434\u0430\u043b \u0438\u043b\u0438 \u0438\u0437\u043c\u0435\u043d\u0438\u043b \u0432 \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u0445 \u0430\u0432\u0442\u043e-\u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043a\u043e\u0434\u0430\n\xa7 achievements.moreReadMe.title: \u041b\u0435\u0442\u043e\u043f\u0438\u0441\u0435\u0446\n\xa7 achievements.moreReadMe.description: \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0445 \u0441\u043e\u0437\u0434\u0430\u043b \u0438\u043b\u0438 \u0438\u0437\u043c\u0435\u043d\u0438\u043b \u0444\u0430\u0439\u043b\u043e\u0432 MD\n\xa7 achievements.moreDevOps.title: DevOps\n\xa7 achievements.moreDevOps.description: \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0445 \u0441\u043e\u0437\u0434\u0430\u043b \u0438\u043b\u0438 \u0438\u0437\u043c\u0435\u043d\u0438\u043b \u0444\u0430\u0439\u043b\u043e\u0432 \u0434\u043b\u044f CI/CD\n\xa7 achievements.moreTests.title: \u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0449\u0438\u043a\n\xa7 achievements.moreTests.description: \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0445 \u0441\u043e\u0437\u0434\u0430\u043b \u0438\u043b\u0438 \u0438\u0437\u043c\u0435\u043d\u0438\u043b \u0444\u0430\u0439\u043b\u043e\u0432 \u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f\n\xa7 achievements.allRelease.title: \u0424\u0443\u043b\u043b \u0445\u0430\u0443\u0441\n\xa7 achievements.allRelease.description: \u0435\u0441\u0442\u044c \u0440\u0435\u043b\u0438\u0437, \u0441\u043e\u0431\u0440\u0430\u043d\u043d\u044b\u0439 \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0437 \u0435\u0433\u043e \u0437\u0430\u0434\u0430\u0447\n\xa7 achievements.firstCommit.title: First come, first served\n\xa7 achievements.firstCommit.description: first commit in this project\n\xa7 achievements.lastCommit.title: I've finished\n\xa7 achievements.lastCommit.description: \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043a\u043e\u043c\u043c\u0438\u0442 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435\n\xa7 achievements.firstLastCommit.title: From beginning to end\n\xa7 achievements.firstLastCommit.description: \u043f\u0435\u0440\u0432\u044b\u0439 \u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043a\u043e\u043c\u043c\u0438\u0442 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435\n\xa7 achievements.longFilePath.title: \u0417\u0430\u043a\u0440\u043e\u043c\u0430 \u0440\u043e\u0434\u0438\u043d\u044b\n\xa7 achievements.longFilePath.description: the first created the file with the deepest directory\n\xa7 achievements.longFileName.title: Size matters\n\xa7 achievements.longFileName.description: created the file with the longest name\n\xa7 achievements.workOnWeekends.title: Work not walk\n\xa7 achievements.workOnWeekends.description: \u0445\u043e\u0442\u044c \u0440\u0430\u0437 \u0440\u0430\u0431\u043e\u0442\u0430\u043b \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0445\n\xa7 achievements.removeCreateFile.title: \u041e\u0442\u043a\u043e\u043f\u0430\u043b \u0441\u0442\u044e\u0430\u0440\u0434\u0435\u0441\u0441\u0443\n\xa7 achievements.removeCreateFile.description: recover removed file\n\xa7 achievements.renameFile.title: \u0410\u0441\u0442\u0430\u043d\u0430 \u041d\u0443\u0440-\u0421\u0443\u043b\u0442\u0430\u043d \u0410\u0441\u0442\u0430\u043d\u0430\n\xa7 achievements.renameFile.description: \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u044b\u0432\u0430\u043b \u0442\u0443\u0434\u0430-\u0441\u044e\u0434\u0430 \u0444\u0430\u0439\u043b\n\xa7 achievements.longTask.title: Easy task\n\xa7 achievements.longTask.description: worked on task more than three months\n\xa7 achievements.haveNotEmail.title: Mailman\n\xa7 achievements.haveNotEmail.description: empty email field in git config\n\xa7 achievements.moreAddedFolders.title: Director \n\xa7 achievements.moreAddedFolders.description: created the most directories\n\xa7 achievements.horoscope1.title: Mercury Retrograde for Capricorn\n\xa7 achievements.horoscope2.title: Mercury Retrograde for Aquarius\n\xa7 achievements.horoscope3.title: Mercury Retrograde for Pisces\n\xa7 achievements.horoscope4.title: Mercury Retrograde for Aries\n\xa7 achievements.horoscope5.title: Mercury Retrograde for Taurus\n\xa7 achievements.horoscope6.title: Mercury Retrograde for Gemini\n\xa7 achievements.horoscope7.title: Mercury Retrograde for Cancer\n\xa7 achievements.horoscope8.title: Mercury Retrograde for Leo\n\xa7 achievements.horoscope9.title: Mercury Retrograde for Virgo\n\xa7 achievements.horoscope10.title: Mercury Retrograde for Libra\n\xa7 achievements.horoscope11.title: Mercury Retrograde for Scorpio\n\xa7 achievements.horoscope12.title: Mercury Retrograde for Sagittarius\n\xa7 achievements.horoscope1.description: by the month of the first commit\n\xa7 achievements.horoscope2.description: by the month of the first commit\n\xa7 achievements.horoscope3.description: by the month of the first commit\n\xa7 achievements.horoscope4.description: by the month of the first commit\n\xa7 achievements.horoscope5.description: by the month of the first commit\n\xa7 achievements.horoscope6.description: by the month of the first commit\n\xa7 achievements.horoscope7.description: by the month of the first commit\n\xa7 achievements.horoscope8.description: by the month of the first commit\n\xa7 achievements.horoscope9.description: by the month of the first commit\n\xa7 achievements.horoscope10.description: by the month of the first commit\n\xa7 achievements.horoscope11.description: by the month of the first commit\n\xa7 achievements.horoscope12.description: by the month of the first commit\n\xa7 achievements.111.description: test\n",'\n\xa7 uiKit.console.button: Kopieren\n\xa7 uiKit.console.notification: Der Text wurde kopiert\n\xa7 uiKit.dataLoader.page: Seite\n\xa7 uiKit.dataLoader.size: Wird nach angezeigt\n\xa7 uiKit.dataLoader.rows: lines.\n\xa7 uiKit.dataLoader.from: aus\n\xa7 uiKit.dataLoader.all: Alles anzeigen\n\xa7 uiKit.hoursChart.work: normale Arbeitszeit (wochentags von 07:00 bis 20:00 Uhr)\n\xa7 uiKit.hoursChart.weekend: wochenenden oder Zeit vor/nach dem Arbeitstag\n\xa7 uiKit.hoursChart.days: gesamtzahl der Commits f\xfcr die gesamte Zeit an einem bestimmten Tag und einer bestimmten Stunde\n\xa7 uiKit.page.remove: Entfernen\n\xa7 uiKit.nothingFound.common.title: Es gibt keine oder nicht gen\xfcgend Daten zum Anzeigen\n\xa7 uiKit.nothingFound.common.description: Das System verarbeitet mehr Daten, wenn die Commits im Format signiert werden [Git commit message convention|https://www.conventionalcommits.org/en/v1.0.0/]. Vorlage:\n\xa7 uiKit.nothingFound.common.console: Aufgabennummer Typ(Module): Erl\xe4uterung\n\xa7 uiKit.nothingFound.common.example: Zum Beispiel:\n\xa7 uiKit.nothingFound.staff.title: Keine Daten f\xfcr diesen Mitarbeiter\n\xa7 uiKit.nothingFound.staff.description1\nEr hat nicht an allen Werktagen \xc4nderungen vorgenommen. Deshalb erhielt er den Status "Assistent".\nDie Statistiken eines Mitarbeiters mit diesem Status k\xf6nnen nicht ber\xfccksichtigt werden. Sein Beitrag ist gering.\n\xa7 uiKit.nothingFound.staff.description2\nDas System berechnet f\xfcr ihn keine Anzahl von Indikatoren.\nWenn dies ein Fehler ist und die Statistiken f\xfcr diesen Mitarbeiter ber\xfccksichtigt werden m\xfcssen, gehen Sie zu \xabEinstellungen\xbb und \xe4ndern Sie den Typ des Mitarbeiters.\n\xa7 common.title: Git Statistik\n\xa7 common.filters: Filter\n\xa7 common.notifications.save: \xc4nderungen gespeichert\n\xa7 common.notifications.setting: Einstellungen gespeichert\n\xa7 common.fileLoader.notification: Cant open file $1\n',"\n\xa7 sidebar.switch.team: Das Team\n\xa7 sidebar.switch.person: Der Angestellte\n\xa7 sidebar.buttons.settings: Die Einstellungen\n\xa7 sidebar.buttons.print: Drucken\n\xa7 sidebar.buttons.share: Share\n\xa7 sidebar.buttons.logout: Logout\n\xa7 sidebar.filters.all: Die ganze Zeit\n\xa7 sidebar.filters.year: Jahr\n\xa7 sidebar.filters.halfYear: ein halbes Jahr\n\xa7 sidebar.filters.month: Monat\n\xa7 sidebar.filters.week: die Woche\n\xa7 sidebar.team.total: Allgemeine Informationen\n\xa7 sidebar.team.scope: Module\n\xa7 sidebar.team.author: Mitarbeiter\n\xa7 sidebar.team.type: Aufgabentypen\n\xa7 sidebar.team.pr: Code einf\xfcllen\n\xa7 sidebar.team.day: Tageweise\n\xa7 sidebar.team.week: Nach Wochen\n\xa7 sidebar.team.month: Nach Monaten\n\xa7 sidebar.team.tree: Dateien\n\xa7 sidebar.team.removedTree: Gel\xf6schte dateien\n\xa7 sidebar.team.files: Dateien\n\xa7 sidebar.team.removedFiles: Gel\xf6schte Dateien\n\xa7 sidebar.team.extension: Extensions\n\xa7 sidebar.team.tasks: Aufgabenliste\n\xa7 sidebar.team.release: Releases\n\xa7 sidebar.team.hours: Zeitplan\n\xa7 sidebar.team.commits: All commits\n\xa7 sidebar.team.changes: Alle \xc4nderungen\n\xa7 sidebar.team.words: Beliebte W\xf6rter\n\xa7 sidebar.team.building: Quiz\n\xa7 sidebar.team.refactor: Refactoring\n\xa7 sidebar.team.company: Companies\n\xa7 sidebar.team.department: Departments\n\xa7 sidebar.team.country: Locations\n\xa7 sidebar.team.settings: Die Einstellungen\n\xa7 sidebar.person.total: Allgemeine Informationen\n\xa7 sidebar.person.money: Arbeitskosten\n\xa7 sidebar.person.speed: Geschwindigkeit\n\xa7 sidebar.person.day: Tageweise\n\xa7 sidebar.person.week: Nach Wochen\n\xa7 sidebar.person.month: Nach Monaten\n\xa7 sidebar.person.tasks: Tasks\n\xa7 sidebar.person.hours: Zeitplan\n\xa7 sidebar.person.commits: All commits\n\xa7 sidebar.person.changes: Alle \xc4nderungen\n\xa7 sidebar.person.words: Beliebte W\xf6rter\n\xa7 sidebar.person.settings: Die Einstellungen\n",'\n\xa7 recommendations.modal.cancel: Ok\n\xa7 recommendations.modal.open: More\n\xa7 recommendations.title\nRecommendations and facts\n\n\xa7 recommendations.timestamp.firstCommit.description\nmade the first commit\n\nDay of the Week: $1\n\n\xa7 recommendations.timestamp.lastCommit.description\nmade the last commit\n\nDay of the Week: $1\n\n\xa7 recommendations.timestamp.common.title: $1 days\n\xa7 recommendations.timestamp.allDays.description: from the first to the last commit (including weekends and holidays).\n\xa7 recommendations.timestamp.lossesDays.description: days without commits, even considering weekends, vacation, and public holidays.\n\xa7 recommendations.timestamp.weekendDays.description\nworking on weekends\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- employees burn out faster;\n\n\xa7 recommendations.timestamp.regularWeekendWord.title: Regular Overtime\n\xa7 recommendations.timestamp.sometimeWeekendWord.title: Occasional overtime\n\xa7 recommendations.timestamp.weekendWord.description\nIt might be advisable to change the project manager, analyst, and architect.\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- the quality of the product is usually low;\n- some employees resign;\n- new errors emerge due to the rush;\n\n# Most likely:\n- deadlines were incorrectly estimated at the beginning;\n- technical specifications are missing;\n- weak analytics;\n- weak architecture (no architect was hired, and the team consists of mid-level developers);\n- started writing code first, then planning;\n- lack of proper processes to understand mistakes;\n\n\xa7 recommendations.timestamp.neverWeekendWord.title: Usually Without Overtime\n\xa7 recommendations.timestamp.neverWeekendWord.description\nBut sometimes it happens.\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- employees burn out faster;\n\n\xa7 recommendations.scope.parallelism.not.title\nNo parallel work\n\n\xa7 recommendations.scope.parallelism.not.description\nany feature at any given time is done by one person.\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is less than 1.3, we consider that there is usually no parallel work within most features;\n\n# Why this is bad:\n- increases bus factor;\n- employees develop more slowly;\n- difficult to properly check an employee\'s work;\n\n# Why this is good:\n- experts emerge who are deeply immersed in the subject area and can offer more quality solutions;\n- most likely there are no merge conflicts;\n- the project can quickly develop in different directions simultaneously;\n\n\xa7 recommendations.scope.parallelism.has.title\nSome Work Done in Parallel\n\n\xa7 recommendations.scope.parallelism.has.description\nSometimes a feature is worked on simultaneously by several people.\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is from 1.3 to 2.0, we consider that some of the work within different features is sometimes done in parallel;\n\n\xa7 recommendations.scope.parallelism.every.title\nParallel Work\n\n\xa7 recommendations.scope.parallelism.every.description\nany feature at any given time is worked on by several people\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is more than two, we consider that most of the work within different features is usually done in parallel;\n\n\xa7 recommendations.scope.money\nthis is the estimated cost for the work on this project.\n\n# Calculation method:\n- person-days spent on development are multiplied by the individual salaries of the developers;\n\nTo change the salary of each developer for a more accurate total, go to the "Settings" section.\n\n# Is this too much or too little?\nTo answer this question, consider the following:\n- Could a ready-made solution have been purchased for this amount of money?\n- Could a better product have been developed for this amount of money?\n\nIf the answer to both questions is "yes," then perhaps developing from scratch was not worth the money spent.\n \n\xa7 recommendations.scope.bus.everyHasOne.title\nBus factor = 1\n\n\xa7 recommendations.scope.bus.everyHasOne.description\nMost features are deeply understood by only one person.\nIt\'s necessary to rotate people.\n\n# Why this is bad:\n- if employees resign, it will be difficult to continue their work;\n- it\u2019s impossible to control the quality of their code;\n\n# How the sample is chosen:\n- more than 80% of commits in a feature are made by one person;\n- the project has more than 60% of such features;\n\n\xa7 recommendations.scope.bus.oneMaintainer\none person is deeply involved in a feature.\n\n# Why this is bad:\n- if they resign, it will be hard to continue development;\n- the quality of code-review decreases;\n- it\u2019s difficult to parallelize development when needed;\n\n# How the sample is chosen:\n- more than 80% of commits in a feature are made by one person;\n\n\xa7 recommendations.scope.types.process.title\nPoor processes\n\n\xa7 recommendations.scope.types.process.description\nMost features contain one type of task.\n\n\xa7 recommendations.scope.types.one\nfeatures contain one type of task.\n\n\xa7 recommendations.scope.types.common\nIt\'s possible that developers are incorrectly signing commits or the manager is entering the same type of tasks.\n\n# Why this is important:\n- it\'s impossible to hand over support to another team;\n- it\'s impossible to release a "boxed" version;\n- strong dependence on specific developers;\n- a high number of errors and low code quality;\n- potential slowdown in development in the future;\n\n# The manager\'s mistake:\n- viewing the product only from the perspective of a "working demo";\n\n# What should be done:\n- tests;\n- bugs (identified through testing);\n- refactoring (as architecture may change);\n- documentation;\n- style revisions (as a result of focus group feedback);\n\n\xa7 recommendations.scope.plan.title\nDevelop a long-term plan\n\n\xa7 recommendations.scope.plan.description\ntaking architecture into account.\n\nThis plan should immediately focus on the most challenging tasks.\n\n# Why the lack of a plan is bad:\n- employees create a minimally viable version without planning for expansion points. After this, unscalable code is written, which slows down future features;\n\n# The manager\'s mistake:\n- they haven\'t shown how the product will develop further and where the growth points will be;\n\n# How it should be done:\n- a global product development plan is created;\n- a global architecture development plan is created (with developers and DBAs);\n- potential significant changes are discussed upfront at the schematic level;\n\n\xa7 recommendations.scope.cost.title\nEvaluate Investment in a Feature\n\n\xa7 recommendations.scope.cost.description\nin terms of potential profit.\n\nFeatures that are expensive to develop but bring little profit may need to be postponed or even canceled. This will make the project more commercially successful.\n\n\xa7 recommendations.author.lotOfLazy.title: Too little code: $1\n\xa7 recommendations.author.lotOfLazy.description\nShould they be fired?\n\n# Composition: \n- $1;\n\n# Answer the questions:\n- are they a team leader, architect, or analyst?\n- is this their primary project?\n- are there any dependencies on them?\n\n# Why it makes no sense to correct\nThe total costs for the developer are already more than the profit from their work.\nIf we believe that there were no objective hindrances to their work, then the person either does not want to work at all or is working on two projects simultaneously.\nFiring and replacing them with a new employee seems justified from a statistical point of view.\n\n\xa7 recommendations.author.manyLazy.title: Little code: $1\n\xa7 recommendations.author.manyLazy.description\nNeeds to be monitored.\n\n# Composition: \n- $1;\n\n# How the sample is chosen:\n- in test samples, a good programmer writes code for more than 80% of the time;\n- in this case, the indicator is between 60% and 80%;\n\n# How to monitor:\n- break tasks into 1..2 days;\n- ask for a status update every day;\n- ensure tasks are well defined and ready for development;\n- arrange pair programming to check actual speed;\n\n\xa7 recommendations.author.oneTypeMans\nreceives too many monotonous tasks of the same type. Risk of burnout.\n\n# Why this is important:\n- if an employee burns out, their work speed will decrease;\n- professional growth slows down;\n- the likelihood of resignation increases;\n\n# How the sample is chosen:\n- the type of task is determined for each commit;\n- if more than 70% of tasks are of the same type, it means the person is doing the same thing repeatedly;\n\n\xa7 recommendations.author.workToday.title: Working $1\n\xa7 recommendations.author.workToday.description\non the project at this moment.\n\n# Composition: \n- $1;\n\n# Why specifically them:\n- more than 50% of workdays;\n- have worked during the last 30 days;\n\n\xa7 recommendations.author.dismissed.title: Dismissed $1\n\xa7 recommendations.author.dismissed.description\nor worked for a short period.\n\n# Composition:\n- $1;\n\n# Why specifically them:\n- worked at a normal pace (apparently, this is their main repository);\n- no commits in the last month;\n- vacation usually lasts 14 days (their absence does not resemble a vacation);\n\n\xa7 recommendations.author.staff.title: Assisting $1\n\xa7 recommendations.author.staff.description\nPeople of other specializations who have committed something.\n\n# Composition: \n- $1;\n\n# Why specifically them:\n- this is not an open-source project;\n- workdays less than 15% of the total number;\n- modify roughly the same files;\n\n\xa7 recommendations.author.projectType.openSource.title\nOpen Project\n\n\xa7 recommendations.author.projectType.openSource.description\nthey do not work five days a week here.\n\nThe project may be closed, but this work pace is typical for open libraries on GitHub.\n\n# Assessment method:\n- statistics are taken for all active developers;\n- the average number of working days and days without commits is calculated;\n- for open-source libraries, working days are usually a maximum of 15..20%;\n\n# Consequences\nFor projects where work is not constant, many indicators do not make sense. Therefore, indicators like days without commits, speed, etc., will be hidden.\n\nTypically, such projects are assessed before starting the development of their own closed version. The most interesting indicators in this case are the probable cost and total development time.\n\n\xa7 recommendations.author.projectType.easy.title\nLight Workload\n\n\xa7 recommendations.author.projectType.easy.description\ntoo many days without commits.\n\nIt is necessary to understand why the team is not writing code.\n\n# Assessment method:\n- take statistics from all active developers;\n- calculate the average number of working days and days without commits;\n- workload is considered light if the percentage of days without commits is between 5% and 20%;\n\n# Possible reasons:\n- there are actually no tasks;\n- there are tasks, but they fit well with the current architecture;\n- developers are distracted by meetings;\n- the team is not working;\n\n# Solutions:\n- discuss the issue with the team;\n- reduce task granularity so that one or two tasks can be completed in a day;\n- introduce daily meetings to check the status of tasks;\n- arrange pair programming sessions to ensure that the developer can work faster;\n\n\xa7 recommendations.author.manager.title\nSet Deadlines\n\n\xa7 recommendations.author.manager.description\nEvery task should have a clear deadline.\n \nThis will prevent dragging out its completion for several days or weeks.\n\n# Indicators to check:\n- the number of days spent on one task by an employee;\n- the number of days waiting for PR merge (PR statistics page);\n\n\xa7 recommendations.author.shorTalk.title\nConduct Daily Meetings\n\n\xa7 recommendations.author.shorTalk.description\nthey help stay informed about the project.\n \nDo not stretch them by getting sidetracked on irrelevant topics.\n\n# Questions the employee should answer:\n- what was done;\n- what will be done;\n- are there any issues;\n\n# Interruptions should occur if:\n- they start describing minor details in-depth, which are not important;\n- they steer the conversation away from the original plan;\n\n# Why this is important:\nOften an employee who does nothing tries to avoid the answer by telling a bunch of unnecessary details of their work. This lulls the participants\' attention and stretches the time for a response. It creates an impression that they are busy, even though there was no actual work done.\n\n\xa7 recommendations.author.ipr.title\nDevelop a Training Plan\n\n\xa7 recommendations.author.ipr.description\nfor each employee.\n\n*Individual training plan* is a list of goals and tasks that help a person develop in a certain area.\n\n# How to create a plan:\n- create a competency matrix;\n- identify which competencies have the least knowledge and experience;\n- find out which of these competencies are of interest to the employee;\n- come up with 3..5 goals within each such competency for the next six months or a year;\n- try to do something every month to achieve one goal;\n- remind every month about the overall plan to achieve these goals;\n\n# Does a manager need a plan?\nYes, the manager should also make a plan for themselves. If there is no higher-level manager, they should self-assess.\n\n# Why this is important:\n- employees become more loyal to the company;\n- you get more qualified personnel for the same money;\n\n\xa7 recommendations.author.oneToOne.title\nConduct One-on-One Meetings Every Month\n\n\xa7 recommendations.author.oneToOne.description\nit helps to identify problems at an early stage.\n\n*One-to-one* is a regular personal meeting of a manager with a subordinate. Such meetings typically discuss everything important to the employee, what concerns them, and what they can share with the manager in private.\n\n# Why this is important:\n- easy to find out who is overburdened and who has free time;\n- possible to prevent employee burnout;\n- quick feedback can be obtained about processes that you might not notice;\n- trust is built, making employees more loyal to the company;\n- increases employee motivation and engagement;\n\n\xa7 recommendations.author.club.title\nGo to a Bar\n\n\xa7 recommendations.author.club.description\nonce a month or two.\n\nThis will help build informal communication within the team and bring the team together, even if the interaction is brief.\n\n# Why this is important:\n- quick feedback can be obtained about processes that you might not notice;\n- trust is built, making employees more loyal to the company;\n- increases employee engagement;\n\n\xa7 recommendations.hour.onlyWork.title: No Weekends Here\n\xa7 recommendations.hour.onlyWork.description: The project manager should probably be fired.\n\xa7 recommendations.hour.weekends.title: Working on Weekends\n\xa7 recommendations.hour.weekends.description: The project manager should probably be checked.\n\xa7 recommendations.hour.easy.title: There Are Problems\n\xa7 recommendations.hour.easy.description: There are likely crunch times and work is needed on weekends.\n\xa7 recommendations.week.lazyDays.down.title: Fewer Absences\n\xa7 recommendations.week.lazyDays.down.description: this indicator has dropped over the last three weeks\n\xa7 recommendations.week.lazyDays.up.title: More Absences\n\xa7 recommendations.week.lazyDays.up.description: no tasks or stricter control is needed\n\xa7 recommendations.week.notWork.title: Consistently Underperforms\n\xa7 recommendations.week.notWork.description: as every week the code is not 100% of the time\n\xa7 recommendations.week.upWork.title: Consistently Overworks\n\xa7 recommendations.week.upWork.description: as every week code is written on weekend days\n\xa7 recommendations.week.task.up.title: Productivity is growing\n\xa7 recommendations.week.task.up.description: or tasks have become too small. Need to check. If granularity is the same - reinforce the result.\n\xa7 recommendations.week.task.lazyMaintainer.description: consistently leads in absences. Fire?\n\xa7 recommendations.week.task.down.title: Productivity is Falling\n\xa7 recommendations.week.task.down.description\nor tasks are poorly split. Need to check. If granularity is the same - take control.\n\n# Assessment method:\n- the number of tasks per day that are being worked on has been steadily decreasing over the last three weeks.\n\n# Possible errors:\n- tasks could have been more complex than they seemed;\n- tasks could have had a large volume of work (need to check if the number of changes is also decreasing during this period)\n\n\xa7 recommendations.type.everyHasOne.title: Not signing task types\n\xa7 recommendations.type.everyHasOne.description: Most task types are done by one person.\n\xa7 recommendations.type.oneMaintainer.title: Narrow Specialization\n\xa7 recommendations.type.oneMaintainer.description\nmost tasks of one type are done by the same people.\n\n# Task types:\n\n\xa7 recommendations.type.common\n# It might not be the case\n\nMake sure that other employees correctly sign commits.\n\nSteps to ensure this:\n- set up a pre-commit check for commit messages;\n- explain to the team the need to indicate the type;\n- check in new branches that employees follow this rule;\n\n# If it is indeed the case\n\nYou have set up checks and ensured that the same employee does tasks of the same type.\n\nWhy this is bad:\n- their resignation will halt a whole bunch of processes;\n- it reduces the competence of other team members;\n- difficult to understand their edits at a higher level;\n\nHow to fix this:\n- distribute different types of tasks evenly;\n- change the area of work (tests, documentation, bugs) among employees every sprint;\n\n\xa7 recommendations.type.fewTypes.title\nThis is a local product\n\n\xa7 recommendations.type.fewTypes.description\nfor a specific customer or problem.\n\n# Signs of a "global" product:\n- localization;\n- documentation;\n- a large volume of tests;\n- visual customization;\n- refactoring of bottlenecks;\n- etc.\n\n# Why this product looks like a "local" one:\n- each "global" sign will be outweighed by its type of task;\n- the more "global" signs, the more likely a "global" product;\n\nIn this case, we see a small number of types, which likely indicates shortcomings that prevent the product from being easily scaled to the global market and sold in other countries.\n\n# It might not be the case\nBased on file types, we can assume the type of program (website, server application, DevOps scripts, etc.). For a frontend application, our hypothesis will be more accurate than for DevOps scripts, which might just be a micro-module of initialization.\n\n\xa7 recommendations.type.diff.title\nSplit the popular type into subtypes\n\n\xa7 recommendations.type.diff.description\nto detail errors.\n\nTypically, the task type labeled "bug fixing" is leading. This makes the statistics weakly detailed.\n\n*If you encounter this situation*, you can break down this type into subtypes (e.g., based on the location of detection).\n\nConsider several options for subtypes:\n- fix_dev (error detected during development);\n- fix_test (error detected during testing);\n- fix (error detected in production);\n\n\xa7 recommendations.type.buddy.title\nAccumulate minor tasks\n\n\xa7 recommendations.type.buddy.description\nfor new employees.\n\n# If a task is:\n- not important;\n- not big;\n- doesn\'t require deep immersion in the context;\n- more about refactoring than new code;\n\n# Put it in the backlog with the label "for beginners".\n\nWhen a new employee arrives, you will be able to immediately pull out a bunch of small and varied tasks for them to get acquainted with the project.\n\nAlso, if you have a lull in work, you can pull out one such minor task from the backlog.\n',"\n\xa7 page.settings.document.title: Anzeigeeinstellungen\n\xa7 page.settings.document.name: Seitentitel\n\xa7 page.settings.document.language: Sprache der benutzeroberfl\xe4che\n\xa7 page.settings.document.depersonalize: Pers\xf6nliche daten verstecken\n\xa7 page.settings.links.title: Link-Pr\xe4fixe\n\xa7 page.settings.links.task: F\xfcr Aufgabennummern\n\xa7 page.settings.links.pr: F\xfcr PR\n\xa7 page.settings.user.title: Individuelle einstellungen\n\xa7 page.settings.user.notFound: Keine individuellen Einstellungen. Daten f\xfcr alle Mitarbeiter werden anhand allgemeiner Parameter berechnet.\n\xa7 page.settings.user.subTitle: Zusatz zum arbeitsvertrag \u2116. $1\n\xa7 page.settings.user.from: Startdatum\n\xa7 page.settings.mailmap: Beispiel .mailmap\n\xa7 page.settings.common.title: Allgemeine Gehaltsdaten\n\xa7 page.settings.common.type.title: Art der projektarbeit\n\xa7 page.settings.common.type.full: Vollzeitbesch\xe4ftigung\n\xa7 page.settings.common.type.part: Projektarbeit\n\xa7 page.settings.common.salary: Monatliches gehalt in USD (US-Dollar, $)\n\xa7 page.settings.common.currency: W\xe4hrung zur ansicht\n\xa7 page.settings.common.workDaysInYear: Anzahl der arbeitstage im Jahr\n\xa7 page.settings.common.vacationDaysInYear: Anzahl der urlaubstage im Jahr\n\xa7 page.settings.common.workDaysInWeek: Arbeitstage\n\xa7 page.settings.form.save: Speichern\n\xa7 page.settings.form.cancel: Abbrechen\n\xa7 page.settings.form.remove: Entfernen\n\xa7 page.settings.form.addEmployee: Mitarbeiter hinzuf\xfcgen\n\xa7 page.settings.form.addContract: Arbeitsvertrag hinzuf\xfcgen\n",'\n\xa7 page.welcome.step1: Execute the command in the root of your project.\n\xa7 page.welcome.step3: Drag and drop\n\xa7 page.welcome.step4: the log.txt file onto this page.\n\xa7 page.welcome.description: Git will create a log.txt file. It contains data for report generation. Or use git shortlog -s -n -e if you don\'t need a report. Create a [.mailmap|https://git-scm.com/docs/gitmailmap] file in the root of the project to consolidate employee statistics.\n\xa7 page.welcome.warning1: The service *DOES NOT SAVE* and *DOES NOT TRANSFER* your data. All calculations are performed locally in your browser on your machine.\n\xa7 page.welcome.warning2: The service *DOES NOT COLLECT STATISTICS* on projects. You can disconnect the internet, check traffic, and even build a local version from the [source|https://github.com/bakhirev/assayo].\n\xa7 page.common.words.title: Word Statistics.\n\xa7 page.common.words.description: the most popular word. Occurs $1 times.\n\xa7 page.common.commits.title: Number of commits by days.\n\xa7 page.common.commits.description: ($1) the most productive day in terms of the number of commits.\n\xa7 page.common.commits.title2: $1 commits made: $2\n\xa7 page.common.filter.allUsers: Does not matter\n\xa7 page.print.modal.title: What are we printing?\n\xa7 page.print.modal.page: Current page\n\xa7 page.print.modal.type: Current section\n\xa7 page.print.modal.all: All statistics\n\xa7 page.print.modal.cancel: Cancel\n\xa7 page.print.tableOfContents: Table of contents\n\xa7 page.print.title: Git repository report\n\xa7 page.print.sub_title: \xab$1\xbb\n\xa7 page.print.description: The data for the report was obtained from the commit history.\n\xa7 page.team.author.statusChart.title: Status\n\xa7 page.team.author.daysChart.title: Days of work\n\xa7 page.team.author.daysChart.item: days\n\xa7 page.team.author.days.half: half year\n\xa7 page.team.author.days.one: year\n\xa7 page.team.author.days.15: year and a half\n\xa7 page.team.author.days.two: two years\n\xa7 page.team.author.days.more: more than two years\n\xa7 page.team.author.title: Details\n\xa7 page.team.author.description1: *Part of the statistics* (work speed, costs, etc.) *for employees with the \'Assistant\' type is not counted*, as it is an episodic role in the project. It is assumed that they do not affect the project, and their edits can be disregarded in the context of the overall volume of work.\n\xa7 page.team.author.description2: *Default sorting* is by the number of tasks and groups (current, fired, assisting employees).\n\xa7 page.team.author.status: Status\n\xa7 page.team.author.company: Company\n\xa7 page.team.author.firstCommit: First commit\n\xa7 page.team.author.lastCommit: Last\n\xa7 page.team.author.daysAll: Total days\n\xa7 page.team.author.types: Types of work\n\xa7 page.team.author.commits: Commits\n\xa7 page.team.author.commitsSmall: commits\n\xa7 page.team.author.tasks: Tasks\n\xa7 page.team.author.tasksSmall: tasks\n\xa7 page.team.author.workedLosses: Days with and without commits\n\xa7 page.team.author.worked: work\n\xa7 page.team.author.losses: days without commits\n\xa7 page.team.author.days: days\n\xa7 page.team.author.daysForTask: Days per task\n\xa7 page.team.author.scopes: Features\n\xa7 page.team.author.moneyAll: Received\n\xa7 page.team.author.moneyWorked: Worked for\n\xa7 page.team.author.moneyLosses: Overpayment\n\xa7 page.team.author.type.work: works\n\xa7 page.team.author.type.dismissed: dismissed\n\xa7 page.team.author.type.staff: staff\n\xa7 page.team.hours.title: Distribution of commits during each day of the week\n\xa7 page.team.month.title: Project work calendar\n\xa7 page.team.month.first: (first work day)\n\xa7 page.team.month.last: (last work day)\n\xa7 page.team.scope.title: Feature statistics\n\xa7 page.team.scope.scope: Feature\n\xa7 page.team.scope.days: Working Days\n\xa7 page.team.scope.authorsDays: Person-Days\n\xa7 page.team.scope.tasks: Tasks\n\xa7 page.team.scope.commits: Commits\n\xa7 page.team.scope.commitsSmall: commits\n\xa7 page.team.scope.types: Types of work\n\xa7 page.team.scope.authors: Personal contribution\n\xa7 page.team.scope.cost: Cost\n\xa7 page.team.type.title: Task type statistics\n\xa7 page.team.type.description: *Personal contribution* is counted by the number of commits, not the volume of changed lines or files. Therefore, the "File Analysis" section should also be consulted to assess the scale of changes.\n\xa7 page.team.type.type: Type of work\n\xa7 page.team.type.unknown: unknown\n\xa7 page.team.type.tasks: Tasks\n\xa7 page.team.type.tasksSmall: tasks\n\xa7 page.team.type.days: Days\n\xa7 page.team.type.daysSmall: days\n\xa7 page.team.type.authorsDays: Person-days\n\xa7 page.team.type.commits: Commits\n\xa7 page.team.type.authors: Personal contribution\n\xa7 page.team.total.titleA: Volume of work\n\xa7 page.team.total.titleB: Cost\n\xa7 page.team.total.daysWorked.title: person-days\n\xa7 page.team.total.daysWorked.description: Only days with commits are counted\n\xa7 page.team.total.commits.title: commits\n\xa7 page.team.total.commits.description: Deleted branches are not counted\n\xa7 page.team.total.daysLosses.title: days without commits\n\xa7 page.team.total.daysLosses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 page.team.total.employment.title: working / dismissed\n\xa7 page.team.total.employment.description: If an employee does not make any commits within a month, they are considered dismissed\n\xa7 page.team.total.moneyAll.title: total\n\xa7 page.team.total.moneyAll.description: Total salary expenses\n\xa7 page.team.total.moneyWorked.title: actual\n\xa7 page.team.total.moneyWorked.description: Actual days worked multiplied by average salary\n\xa7 page.team.total.moneyLosses.title: possible overpayment\n\xa7 page.team.total.moneyLosses.description: Paid working days when there were no commits\n\xa7 page.team.total.weekendPayment.title: weekend work\n\xa7 page.team.total.weekendPayment.description: Total overpayment for weekend work\n\xa7 page.team.total.workSpeed.title: tasks per day\n\xa7 page.team.total.workSpeed.description: Average work speed of the team with the current composition of employees\n\xa7 page.team.total.moneySpeed.title: per month\n\xa7 page.team.total.moneySpeed.description: Forecasted salary payment amount with the current team composition, excluding taxes and related expenses\n\xa7 page.team.total.description1: *Person-days* \u2014 the work of one employee during a single working day. For example, in one calendar day, a team of three employees produces a work volume of three person-days.\n\xa7 page.team.total.description2: *Absentee days* are counted only as working days when commits could have been made. Weekends, public holidays, and vacations are not included in the calculation.\n\xa7 page.team.total.description3: The *working and dismissed* card shows the actual composition of employees who are continuously involved in work. Additionally, there are "assistants" \u2014 typically employees of a different specialization who may occasionally make commits to the project.\n\xa7 page.team.total.description4: *Overpayment* includes only working days when commits could have been made. Weekends, public holidays, and vacations are not included in the calculation. This is why overpayment + actual cost != total. The total cost includes payment for weekends, public holidays, and vacations.\n\xa7 page.team.total.description5: *Weekend work* is calculated at a rate of x2 the payment of a regular day. The displayed amount is specifically the overpayment (x1), as the fact of overtime in this context is not of interest. We focus on overpayment when increasing work speed.\n\xa7 page.team.tree.title: Project tree considering selected filters\n\xa7 page.team.tree.filters.author: Employee\n\xa7 page.team.tree.filters.commits: Number of commits\n\xa7 page.team.tree.filters.help: The minimum number of commits an employee has made in a file\n\xa7 page.team.tree.filters.all: All employees\n\xa7 page.team.tree.totalLines: Lines\n\xa7 page.team.tree.totalTasks: Tasks\n\xa7 page.team.tree.totalDays: Days\n\xa7 page.team.tree.tasks: tasks\n\xa7 page.team.tree.days: days\n\xa7 page.team.tree.add: Who added\n\xa7 page.team.tree.change: Who changed\n\xa7 page.team.tree.remove: Who removed\n\xa7 page.team.tree.line: lines\n\xa7 page.team.tree.linesAdded: added\n\xa7 page.team.tree.linesChanged: changed\n\xa7 page.team.tree.linesRemoved: removed\n\xa7 page.team.company.title: Details\n\xa7 page.team.company.employments.title: By number of employees\n\xa7 page.team.company.employments.item: employments\n\xa7 page.team.company.daysChart.title: By duration of the contract\n\xa7 page.team.company.daysChart.item: companies\n\xa7 page.team.company.active.yes: active\n\xa7 page.team.company.active.no: contract has expired\n\xa7 page.team.country.byTimezone: By the time of the last commit\n\xa7 page.team.country.filters.active: Works\n\xa7 page.team.country.filters.dismissed: Dismissed\n\xa7 page.team.country.filters.staff: Staff\n\xa7 page.team.country.pieByDomain.title: By email, timezone and language\n\xa7 page.team.country.pieByTimezone.title: By timezone\n\xa7 page.team.country.chart.item: employments\n\xa7 page.team.country.table.title: List of employees\n\xa7 page.team.country.table.country: Country\n\xa7 page.team.country.table.employments: Employments\n\xa7 page.team.country.travel.title: Trips (or VPN, or rebase)\n\xa7 page.team.country.travel.author: Employee\n\xa7 page.team.country.travel.fly: Number of flights\n\xa7 page.team.country.travel.path: Locations list\n\xa7 page.team.country.travel.date: Arrival date\n\xa7 page.team.country.travel.country: Location\n\xa7 page.team.refactor.title: Candidates for refactoring\n\xa7 page.team.refactor.lines: lines\n\xa7 page.team.refactor.tasks: tasks\n\xa7 page.team.refactor.days: days\n\xa7 page.team.refactor.path: Path\n\xa7 page.team.refactor.firstCommit: First commit\n\xa7 page.team.refactor.totalLines: Lines\n\xa7 page.team.refactor.totalTasks: Tasks\n\xa7 page.team.refactor.totalDays: Days in development\n\xa7 page.team.day.commits: Commits\n\xa7 page.team.day.activity: Activity\n\xa7 page.team.week.title: Weekly statistics\n\xa7 page.team.week.date: Date\n\xa7 page.team.week.numberTasks: Number of tasks\n\xa7 page.team.week.people: Number of people\n\xa7 page.team.week.line: Line changes\n\xa7 page.team.week.days: Days with and without commits\n\xa7 page.team.week.lossesDetails: Who did not commit\n\xa7 page.team.week.add: added\n\xa7 page.team.week.change: changed\n\xa7 page.team.week.remove: removed\n\xa7 page.team.week.hasCommits: had commits\n\xa7 page.team.week.hasNotCommits: had no commits\n\xa7 page.team.week.days: days\n\xa7 page.team.week.tasks: tasks\n\xa7 page.team.pr.task: Task\n\xa7 page.team.pr.tasks: tasks\n\xa7 page.team.pr.firstCommitTime: First commit\n\xa7 page.team.pr.lastCommitTime: Last\n\xa7 page.team.pr.workDays: Development days\n\xa7 page.team.pr.delayDays: Days waiting for merge\n\xa7 page.team.pr.middleTimeRelease: Average delivery time (days)\n\xa7 page.team.pr.chart.1day: day\n\xa7 page.team.pr.chart.3day: three days\n\xa7 page.team.pr.chart.7day: week\n\xa7 page.team.pr.chart.14day: two weeks\n\xa7 page.team.pr.chart.30day: month\n\xa7 page.team.pr.chart.more: more\n\xa7 page.team.pr.date: Merge Date\n\xa7 page.team.pr.mergeAuthor: Merged by\n\xa7 page.team.pr.author: Employee\n\xa7 page.team.pr.work: development\n\xa7 page.team.pr.delay: waiting\n\xa7 page.team.pr.days: days\n\xa7 page.team.pr.oneTaskDays: Time spent on one task\n\xa7 page.team.pr.description1: *Development time* is the time difference from the first to the last commit on a task. It does not matter if there were breaks of several days between commits or not. Any commit increases the time.\n\xa7 page.team.pr.description2: *Waiting time* is the time between the last commit and the code merge. It shows the actual downtime while waiting for something.\n\xa7 page.team.pr.description3: *Why display development time* without splitting into coding and code review? To show the business the actual delivery time of the code. Waiting for testing, review comments, DevOps problems, and other process imperfections are already included in this term.\n\xa7 page.team.pr.statByAuthors: Statistics by employees\n\xa7 page.team.pr.longDelay: Prolonged Waiting for merge\n\xa7 page.team.pr.anonymous: PR without task number\n\xa7 page.team.pr.branch: Branch\n\xa7 page.team.tasks.task: Task\n\xa7 page.team.tasks.author: First commit author\n\xa7 page.team.tasks.from: First commit\n\xa7 page.team.tasks.to: Last commit\n\xa7 page.team.tasks.daysInWork: Days in work\n\xa7 page.team.tasks.comments: Comments\n\xa7 page.team.extension.extension: File extensions\n\xa7 page.team.extension.type: File sub types\n\xa7 page.team.extension.name: Type\n\xa7 page.team.extension.path: Path\n\xa7 page.team.extension.current.count: Number\n\xa7 page.team.extension.removed.count: Number of removed\n\xa7 page.team.extension.files: files\n\xa7 page.team.release.download: Download\n\xa7 page.team.release.title: Release\n\xa7 page.team.release.from: Created date\n\xa7 page.team.release.to: Delivery date\n\xa7 page.team.release.prLength: Tasks\n\xa7 page.team.release.delay: Preparation days\n\xa7 page.team.release.waiting: Days of waiting for next release\n\xa7 page.team.department.employments.title: The size of the current teams\n\xa7 page.team.department.employments.item: of teams\n\xa7 page.team.author.employments.less1: one employee\n\xa7 page.team.author.employments.less2: two employees\n\xa7 page.team.author.employments.less3: three employees\n\xa7 page.team.author.employments.less6: up to six employees\n\xa7 page.team.author.employments.less9: up to nine employees\n\xa7 page.team.author.employments.less12: up to 12 employees\n\xa7 page.team.author.employments.less15: up to 15 employees\n\xa7 page.team.author.employments.more: more than 15\n\xa7 page.team.department.daysChart.title: Duration of the project\n\xa7 page.team.department.daysChart.item: projects\n\xa7 page.team.department.title: List of projects\n\xa7 page.team.department.code: Code\n\xa7 page.team.department.from: First commit\n\xa7 page.team.department.to: Last\n\xa7 page.team.department.authors: employees\n\xa7 page.team.department.tasks: tasks\n\xa7 page.team.department.totalDays: Working days\n\xa7 page.team.department.totalAuthors: Number of employees\n\xa7 page.person.print.photo.title: Photo\n\xa7 page.person.print.photo.description: space for a photo\n\xa7 page.person.total.title: Main characteristics\n\xa7 page.person.total.daysWorked.title: days of work\n\xa7 page.person.total.daysWorked.description: Only days with commits are counted\n\xa7 page.person.total.tasks.title: tasks\n\xa7 page.person.total.tasks.description: If commits are properly signed\n\xa7 page.person.scoring.toolbar: The position according to this metric, relative to others. Two employees can take the same position if the values matches. Therefore, the total number of positions may be less than the number of employees.\n\xa7 page.person.character.title: Character\n\xa7 page.person.achievement.title: Achievements\n\xa7 page.person.achievement.positive: Positive\n\xa7 page.person.achievement.normal: Neutral\n\xa7 page.person.achievement.negative: Negative\n\xa7 page.person.achievement.description: The more negative achievements an employee accumulates, the higher the likelihood that the situation is unusual. It may be necessary to change their work mode, tasks, or reporting. A discussion with them to understand what problems are hindering their work is advisable.\n\xa7 page.person.gets.title: Gets taken:\n\xa7 page.person.gets.description: "Taking a get" in this context means being the first to leave a commit on a task with a "nice" number.\n\xa7 page.person.business.days.title: days of work\n\xa7 page.person.business.days.description: Only days with commits are counted\n\xa7 page.person.business.tasks.title: tasks\n\xa7 page.person.business.tasks.description: If commits are properly signed\n\xa7 page.person.business.losses.title: days without commits\n\xa7 page.person.business.losses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 page.person.business.commits.title: commits\n\xa7 page.person.business.commits.description: Deleted branches are not counted\n\xa7 page.person.business.time.description: Time from the first to the last commit (including non-working days)\n\xa7 page.person.business.time.title: Days on the project:\n\xa7 page.person.business.time.dismissed: (dismissed)\n\xa7 page.person.business.time.staff: (not in the team)\n\xa7 page.person.business.achievements: Achievements\n\xa7 page.person.changes.title: Achievements\n\xa7 page.person.changes.description: \nWith some types of formatting, git marks lines as "deleted" and "added",\nalthough in reality, they were "changed". Therefore, if you conducted a major refactoring,\ngit might show a small number of changes in the statistics, but the actual result\nwill be marked as a jump in "deleted" and "added" lines.\n\xa7 page.person.changes.description: List of commits and the number of changes in them for that day:\n\xa7 page.person.commits.title: List of commits:\n\xa7 page.person.money.title.total: Total over time\n\xa7 page.person.money.title.middle: Average cost\n\xa7 page.person.money.moneyAll.title: received\n\xa7 page.person.money.moneyAll.description: Assumed total salary from the project (see settings)\n\xa7 page.person.money.moneyWorked.title: worked for\n\xa7 page.person.money.moneyWorked.description: Actual days worked multiplied by average salary\n\xa7 page.person.money.moneyLosses.title: possible overpayment\n\xa7 page.person.money.moneyLosses.description: Days without commits multiplied by average salary\n\xa7 page.person.money.tasks.title: task\n\xa7 page.person.money.tasks.description: Number of closed tasks to the cost of the day\n\xa7 page.person.money.commits.title: commit\n\xa7 page.person.money.commits.description: Number of commits to the cost of the workday\n\xa7 page.person.speed.task: One task on average is\n\xa7 page.person.speed.max: Maximum speed per day\n\xa7 page.person.speed.days.title: days\n\xa7 page.person.speed.days.description: Refers to workdays, if commits are properly signed\n\xa7 page.person.speed.commits.title: commits\n\xa7 page.person.speed.commits.description: Top and bottom 10% of values are trimmed\n\xa7 page.person.speed.line.title: lines of code\n\xa7 page.person.speed.line.description: Top and bottom 10% of values are trimmed\n\xa7 page.person.speed.tasks.title: tasks\n\xa7 page.person.speed.tasks.description: A task may not be completed, but work should be done on it\n\xa7 page.person.speed.maxCommits.title: commits\n\xa7 page.person.speed.maxCommits.description: A task may not be completed, but work should be done on it\n\xa7 page.person.hours.title: Distribution of commits during each day of the week\n\xa7 page.person.week.date: Date\n\xa7 page.person.week.tasks: Number of tasks\n\xa7 page.person.week.workDays: Days with commits\n\xa7 page.person.week.taskInDay: Tasks per day\n\xa7 page.person.week.days: days\n\xa7 page.person.week.workDay: weekdays\n\xa7 page.person.week.weekends: weekends\n\xa7 page.sponsor.title: Please, support this project\n\xa7 page.sponsor.share.description: Tell about our [project|https://github.com/bakhirev/assayo] on social networks! You can share [article|https://habr.com/ru/articles/763342/], [post|https://www.reddit.com/r/ITManagers/comments/1e5k291/the_visualization_and_analysis_of_git_commit/] or [video|https://www.youtube.com/watch?v=jwCp_-bhrCQ].\n\xa7 page.sponsor.share.button: Copy the link\n\xa7 page.sponsor.money.description: We will be glad if you support us with any amount! All funds will be used for the further development of the project.\n\xa7 page.sponsor.money.qr: One-time payment (only Russia)\n\xa7 page.sponsor.money.github: GitHub Sponsor\n'].join(""),Se=["\n\xa7 achievements.commitsAfter1500.title: Owl\n\xa7 achievements.commitsAfter1500.description: 70% of commits after 3:00 PM\n\xa7 achievements.commitsBefore1500.title: Early bird\n\xa7 achievements.commitsBefore1500.description: 70% of commits before noon\n\xa7 achievements.workEveryTime.title: Devoted worker\n\xa7 achievements.workEveryTime.description: a commit for every hour of the day\n\xa7 achievements.workNotWork.title: Shooting blanks\n\xa7 achievements.workNotWork.description: commits are there, but no tasks are closed\n\xa7 achievements.userNotWork.title: Fly-by\n\xa7 achievements.userNotWork.description: this is not their main project\n\xa7 achievements.userIsDied.title: Dead soul\n\xa7 achievements.userIsDied.description: worked, but resigned\n\xa7 achievements.lessTasks.title: Came and went\n\xa7 achievements.lessTasks.description: least closed tasks\n\xa7 achievements.moreTasks.title: Father says well done\n\xa7 achievements.moreTasks.description: most closed tasks\n\xa7 achievements.everyMessageLong.title: Master of eloquence\n\xa7 achievements.everyMessageLong.description: consistently the longest commit messages\n\xa7 achievements.everyMessageShort.title: Talkative, a spy's dream\n\xa7 achievements.everyMessageShort.description: consistently, the shortest commit messages\n\xa7 achievements.shortestName.title: Size doesn't matter\n\xa7 achievements.shortestName.description: shortest name\n\xa7 achievements.longestName.title: Azim Aziz Il Am Kadir Imran II\n\xa7 achievements.longestName.description: longest name\n\xa7 achievements.moreCommits.title: Backup master\n\xa7 achievements.moreCommits.description: most commits\n\xa7 achievements.lessCommits.title: Rare but Precise\n\xa7 achievements.lessCommits.description: least commits\n\xa7 achievements.oneCommitOneTask.title: Right on target\n\xa7 achievements.oneCommitOneTask.description: on average one commit per task\n\xa7 achievements.moreLazyDays.title: With you in spirit\n\xa7 achievements.moreLazyDays.description: most days without commits\n\xa7 achievements.lessLazyDays.title: Papa carlo\n\xa7 achievements.lessLazyDays.description: least days without commits\n\xa7 achievements.zeroLazyDays.title: Not a single break\n\xa7 achievements.zeroLazyDays.description: not a single day without commits\n\xa7 achievements.moreWorkDays.title: Valuable employee\n\xa7 achievements.moreWorkDays.description: most working days\n\xa7 achievements.moreScopes.title: Startuper\n\xa7 achievements.moreScopes.description: completed the most features\n\xa7 achievements.lessScopes.title: Dandy\n\xa7 achievements.lessScopes.description: completed the fewest features\n\xa7 achievements.moreDaysForTask.title: Snail on the slope\n\xa7 achievements.moreDaysForTask.description: tasks take longer than others\n\xa7 achievements.more2DaysForTask.title: Slow and steady\n\xa7 achievements.more2DaysForTask.description: more than two days per task\n\xa7 achievements.moreDaysInProject.title: Old-timer\n\xa7 achievements.moreDaysInProject.description: most days in the project\n\xa7 achievements.lessDaysInProject.title: And who is this?\n\xa7 achievements.lessDaysInProject.description: least days in the project\n\xa7 achievements.more90DaysInProject.title: Welcome aboard\n\xa7 achievements.more90DaysInProject.description: not fired during the probation period\n\xa7 achievements.lessDaysForTask.title: Fast shooting\n\xa7 achievements.lessDaysForTask.description: a task takes less than a day\n\xa7 achievements.adam.title: Adam\n\xa7 achievements.adam.description: the first stable employee on the project\n\xa7 achievements.more666DaysInProject.title: Devil\n\xa7 achievements.more666DaysInProject.description: worked 666 days on the project\n\xa7 achievements.more777DaysInProject.title: Las Vegas\n\xa7 achievements.more777DaysInProject.description: worked 777 days on the project\n\xa7 achievements.moreRefactoring.title: Executive editor\n\xa7 achievements.moreRefactoring.description: made the most 'refactoring' tags\n\xa7 achievements.longestMessage.title: So many conversations...\n\xa7 achievements.longestMessage.description: the longest commit message of all time\n\xa7 achievements.moreTasksInDay.title: Speed racer\n\xa7 achievements.moreTasksInDay.description: record for the number of tasks closed in a day\n\xa7 achievements.hasCommitFrom0to7.title: Night watch\n\xa7 achievements.hasCommitFrom0to7.description: a commit for every hour of the night\n\xa7 achievements.noCommitOnDay.title: Technical break\n\xa7 achievements.noCommitOnDay.description: there is a certain hour and day in working time when never commits\n\xa7 achievements.hasCommitEveryTime.title: Died at work\n\xa7 achievements.hasCommitEveryTime.description: a commit for every hour of each day (including weekends)\n\xa7 achievements.commitsAfter1800.title: Business Time\n\xa7 achievements.commitsAfter1800.description: no commits after 6:00 PM\n\xa7 achievements.moreFix.title: Bug hunter\n\xa7 achievements.moreFix.description: most closed bugs\n\xa7 achievements.lessWorkDays.title: Count me out\n\xa7 achievements.lessWorkDays.description: least working days\n\xa7 achievements.moreCreateCode.title: Creator\n\xa7 achievements.moreCreateCode.description: tends to add code more than others\n\xa7 achievements.moreRemoveCode.title: Destroyer\n\xa7 achievements.moreRemoveCode.description: tends to remove code more than others\n\xa7 achievements.moreChangeCode.title: Reformer\n\xa7 achievements.moreChangeCode.description: tends to change code more than others\n\xa7 achievements.moreStyle.title: Fashion police\n\xa7 achievements.moreStyle.description: tends to change CSS more than others\n\xa7 achievements.moreOnHoliday.title: No life\n\xa7 achievements.moreOnHoliday.description: relatively many commits in non-working hours\n\xa7 achievements.morePRMerge.title: Show me your pass\n\xa7 achievements.morePRMerge.description: more often than others, presses the \"Merge\" button for PR\n\xa7 achievements.longWaitPR.title: Tomorrow 100% be merge\n\xa7 achievements.longWaitPR.description: created PR that waited more than a month on the review\n\xa7 achievements.moreLongWaitPR.title: A long time ago in a galaxy far, far away\n\xa7 achievements.moreLongWaitPR.description: created PR that has been waiting for a review the longest\n\xa7 achievements.oneExtension.title: My name is LEGION\n\xa7 achievements.oneExtension.description: only this man works with files of a certain extension\n\xa7 achievements.fileRush.title: Zerg Rush\n\xa7 achievements.fileRush.description: created the most files in the project\n\xa7 achievements.moreLintHint.title: Grammar Nazi\n\xa7 achievements.moreLintHint.description: more than anyone created or changed the code-style rules\n\xa7 achievements.moreReadMe.title: Chronicler\n\xa7 achievements.moreReadMe.description: more than anyone created or modified MD files\n\xa7 achievements.moreDevOps.title: DevOps\n\xa7 achievements.moreDevOps.description: more than anyone created or modified files for CI/CD\n\xa7 achievements.moreTests.title: Tester\n\xa7 achievements.moreTests.description: more than anyone created or modified files for testing\n\xa7 achievements.allRelease.title: Full house\n\xa7 achievements.allRelease.description: there is a release compiled only from his tasks\n\xa7 achievements.firstCommit.title: First come, first served\n\xa7 achievements.firstCommit.description: first commit on the project\n\xa7 achievements.lastCommit.title: I've finished\n\xa7 achievements.lastCommit.description: last commit on the project\n\xa7 achievements.firstLastCommit.title: From beginning to end\n\xa7 achievements.firstLastCommit.description: first and last commit on the project\n\xa7 achievements.longFilePath.title: Deep cellar\n\xa7 achievements.longFilePath.description: the first created the file with the deepest directory\n\xa7 achievements.longFileName.title: Size matters\n\xa7 achievements.longFileName.description: created the file with the longest name\n\xa7 achievements.workOnWeekends.title: Work not walk\n\xa7 achievements.workOnWeekends.description: at least once worked on weekends\n\xa7 achievements.removeCreateFile.title: Dig out the stewardess\n\xa7 achievements.removeCreateFile.description: recover removed file\n\xa7 achievements.renameFile.title: Astana Nur-Sultan Astana\n\xa7 achievements.renameFile.description: rename file and rollback\n\xa7 achievements.longTask.title: Easy task\n\xa7 achievements.longTask.description: worked on task more than three months\n\xa7 achievements.haveNotEmail.title: Mailman\n\xa7 achievements.haveNotEmail.description: empty email field in git config\n\xa7 achievements.moreAddedFolders.title: Director \n\xa7 achievements.moreAddedFolders.description: created the most directories\n\xa7 achievements.horoscope1.title: Mercury Retrograde for Capricorn\n\xa7 achievements.horoscope2.title: Mercury Retrograde for Aquarius\n\xa7 achievements.horoscope3.title: Mercury Retrograde for Pisces\n\xa7 achievements.horoscope4.title: Mercury Retrograde for Aries\n\xa7 achievements.horoscope5.title: Mercury Retrograde for Taurus\n\xa7 achievements.horoscope6.title: Mercury Retrograde for Gemini\n\xa7 achievements.horoscope7.title: Mercury Retrograde for Cancer\n\xa7 achievements.horoscope8.title: Mercury Retrograde for Leo\n\xa7 achievements.horoscope9.title: Mercury Retrograde for Virgo\n\xa7 achievements.horoscope10.title: Mercury Retrograde for Libra\n\xa7 achievements.horoscope11.title: Mercury Retrograde for Scorpio\n\xa7 achievements.horoscope12.title: Mercury Retrograde for Sagittarius\n\xa7 achievements.horoscope1.description: by the month of the first commit\n\xa7 achievements.horoscope2.description: by the month of the first commit\n\xa7 achievements.horoscope3.description: by the month of the first commit\n\xa7 achievements.horoscope4.description: by the month of the first commit\n\xa7 achievements.horoscope5.description: by the month of the first commit\n\xa7 achievements.horoscope6.description: by the month of the first commit\n\xa7 achievements.horoscope7.description: by the month of the first commit\n\xa7 achievements.horoscope8.description: by the month of the first commit\n\xa7 achievements.horoscope9.description: by the month of the first commit\n\xa7 achievements.horoscope10.description: by the month of the first commit\n\xa7 achievements.horoscope11.description: by the month of the first commit\n\xa7 achievements.horoscope12.description: by the month of the first commit\n\xa7 achievements.111.description: test\n",'\n\xa7 uiKit.console.button: Copy\n\xa7 uiKit.console.notification: Text was copied\n\xa7 uiKit.dataLoader.page: Page\n\xa7 uiKit.dataLoader.size: Displayed\n\xa7 uiKit.dataLoader.rows: lines.\n\xa7 uiKit.dataLoader.from: out of\n\xa7 uiKit.dataLoader.all: Show all\n\xa7 uiKit.hoursChart.work: standard working hours (weekdays, 07:00 to 20:00)\n\xa7 uiKit.hoursChart.weekend: weekend days or time before/after working hours\n\xa7 uiKit.hoursChart.days: total number of commits in all time on a specific day and hour\n\xa7 uiKit.page.remove: Remove\n\xa7 uiKit.races.go: Let\'s go\n\xa7 uiKit.nothingFound.common.title: No or insufficient data to display\n\xa7 uiKit.nothingFound.common.description: The system will process more data if commits are signed in the format [Git commit message convention|https://www.conventionalcommits.org/en/v1.0.0/]. Template:\n\xa7 uiKit.nothingFound.common.console: Task_number type(feature): description\n\xa7 uiKit.nothingFound.common.example: For example:\n\xa7 uiKit.nothingFound.staff.title: No data for this employee\n\xa7 uiKit.nothingFound.staff.description1\nThey made edits not every working day and received the "Assistant" status.\nThe work of employees with such status on this project can be neglected as their contribution is insignificant in the general context.\n\n\xa7 uiKit.nothingFound.staff.description2\nTherefore, the system does not calculate a number of indicators for him.\nIf this is an error and this employee needs to be calculated as usual, go to the \u201cSettings\u201d section and change his type.\n\n\xa7 common.title: Git statistics\n\xa7 common.filters: Filters\n\xa7 common.notifications.save: The changes have been saved\n\xa7 common.notifications.setting: The settings have been saved\n\xa7 common.fileLoader.notification: Cant open file $1\n',"\n\xa7 sidebar.switch.team: Team\n\xa7 sidebar.switch.person: Employee\n\xa7 sidebar.buttons.settings: Settings\n\xa7 sidebar.buttons.print: Print\n\xa7 sidebar.buttons.share: Share\n\xa7 sidebar.buttons.logout: Logout\n\xa7 sidebar.filters.all: all time\n\xa7 sidebar.filters.year: year\n\xa7 sidebar.filters.halfYear: half year\n\xa7 sidebar.filters.month: month\n\xa7 sidebar.filters.week: week\n\xa7 sidebar.team.total: Common info\n\xa7 sidebar.team.scope: Features\n\xa7 sidebar.team.author: Employees\n\xa7 sidebar.team.type: Task types\n\xa7 sidebar.team.pr: Pull requests\n\xa7 sidebar.team.day: By day\n\xa7 sidebar.team.week: By week\n\xa7 sidebar.team.month: By month\n\xa7 sidebar.team.files: Files\n\xa7 sidebar.team.removedFiles: Removed files\n\xa7 sidebar.team.extension: Extensions\n\xa7 sidebar.team.tasks: Tasks\n\xa7 sidebar.team.release: Releases\n\xa7 sidebar.team.hours: Work schedule\n\xa7 sidebar.team.commits: All commits\n\xa7 sidebar.team.changes: All changes\n\xa7 sidebar.team.words: Popular words\n\xa7 sidebar.team.building: Quiz\n\xa7 sidebar.team.refactor: Refactoring\n\xa7 sidebar.team.company: Companies\n\xa7 sidebar.team.department: Departments\n\xa7 sidebar.team.country: Locations\n\xa7 sidebar.team.settings: Settings\n\xa7 sidebar.person.total: Common info\n\xa7 sidebar.person.money: Work cost\n\xa7 sidebar.person.speed: Speed\n\xa7 sidebar.person.day: By day\n\xa7 sidebar.person.week: By week\n\xa7 sidebar.person.month: By month\n\xa7 sidebar.person.tasks: Tasks\n\xa7 sidebar.person.hours: Work schedule\n\xa7 sidebar.person.commits: All commits\n\xa7 sidebar.person.changes: All changes\n\xa7 sidebar.person.words: Popular words\n\xa7 sidebar.person.settings: Settings\n",'\n\xa7 recommendations.modal.cancel: Ok\n\xa7 recommendations.modal.open: More\n\xa7 recommendations.title\nRecommendations and facts\n\n\xa7 recommendations.timestamp.firstCommit.description\nmade the first commit\n\nDay of the Week: $1\n\n\xa7 recommendations.timestamp.lastCommit.description\nmade the last commit\n\nDay of the Week: $1\n\n\xa7 recommendations.timestamp.common.title: $1 days\n\xa7 recommendations.timestamp.allDays.description: from the first to the last commit (including weekends and holidays).\n\xa7 recommendations.timestamp.lossesDays.description: days without commits, even considering weekends, vacation, and public holidays.\n\xa7 recommendations.timestamp.weekendDays.description\nworking on weekends\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- employees burn out faster;\n\n\xa7 recommendations.timestamp.regularWeekendWord.title: Regular Overtime\n\xa7 recommendations.timestamp.sometimeWeekendWord.title: Occasional overtime\n\xa7 recommendations.timestamp.weekendWord.description\nIt might be advisable to change the project manager, analyst, and architect.\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- the quality of the product is usually low;\n- some employees resign;\n- new errors emerge due to the rush;\n\n# Most likely:\n- deadlines were incorrectly estimated at the beginning;\n- technical specifications are missing;\n- weak analytics;\n- weak architecture (no architect was hired, and the team consists of mid-level developers);\n- started writing code first, then planning;\n- lack of proper processes to understand mistakes;\n\n\xa7 recommendations.timestamp.neverWeekendWord.title: Usually Without Overtime\n\xa7 recommendations.timestamp.neverWeekendWord.description\nBut sometimes it happens.\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- employees burn out faster;\n\n\xa7 recommendations.scope.parallelism.not.title\nNo parallel work\n\n\xa7 recommendations.scope.parallelism.not.description\nany feature at any given time is done by one person.\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is less than 1.3, we consider that there is usually no parallel work within most features;\n\n# Why this is bad:\n- increases bus factor;\n- employees develop more slowly;\n- difficult to properly check an employee\'s work;\n\n# Why this is good:\n- experts emerge who are deeply immersed in the subject area and can offer more quality solutions;\n- most likely there are no merge conflicts;\n- the project can quickly develop in different directions simultaneously;\n\n\xa7 recommendations.scope.parallelism.has.title\nSome Work Done in Parallel\n\n\xa7 recommendations.scope.parallelism.has.description\nSometimes a feature is worked on simultaneously by several people.\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is from 1.3 to 2.0, we consider that some of the work within different features is sometimes done in parallel;\n\n\xa7 recommendations.scope.parallelism.every.title\nParallel Work\n\n\xa7 recommendations.scope.parallelism.every.description\nany feature at any given time is worked on by several people\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is more than two, we consider that most of the work within different features is usually done in parallel;\n\n\xa7 recommendations.scope.money\nthis is the estimated cost for the work on this project.\n\n# Calculation method:\n- person-days spent on development are multiplied by the individual salaries of the developers;\n\nTo change the salary of each developer for a more accurate total, go to the "Settings" section.\n\n# Is this too much or too little?\nTo answer this question, consider the following:\n- Could a ready-made solution have been purchased for this amount of money?\n- Could a better product have been developed for this amount of money?\n\nIf the answer to both questions is "yes," then perhaps developing from scratch was not worth the money spent.\n \n\xa7 recommendations.scope.bus.everyHasOne.title\nBus factor = 1\n\n\xa7 recommendations.scope.bus.everyHasOne.description\nMost features are deeply understood by only one person.\nIt\'s necessary to rotate people.\n\n# Why this is bad:\n- if employees resign, it will be difficult to continue their work;\n- it\u2019s impossible to control the quality of their code;\n\n# How the sample is chosen:\n- more than 80% of commits in a feature are made by one person;\n- the project has more than 60% of such features;\n\n\xa7 recommendations.scope.bus.oneMaintainer\none person is deeply involved in a feature.\n\n# Why this is bad:\n- if they resign, it will be hard to continue development;\n- the quality of code-review decreases;\n- it\u2019s difficult to parallelize development when needed;\n\n# How the sample is chosen:\n- more than 80% of commits in a feature are made by one person;\n\n\xa7 recommendations.scope.types.process.title\nPoor processes\n\n\xa7 recommendations.scope.types.process.description\nMost features contain one type of task.\n\n\xa7 recommendations.scope.types.one\nfeatures contain one type of task.\n\n\xa7 recommendations.scope.types.common\nIt\'s possible that developers are incorrectly signing commits or the manager is entering the same type of tasks.\n\n# Why this is important:\n- it\'s impossible to hand over support to another team;\n- it\'s impossible to release a "boxed" version;\n- strong dependence on specific developers;\n- a high number of errors and low code quality;\n- potential slowdown in development in the future;\n\n# The manager\'s mistake:\n- viewing the product only from the perspective of a "working demo";\n\n# What should be done:\n- tests;\n- bugs (identified through testing);\n- refactoring (as architecture may change);\n- documentation;\n- style revisions (as a result of focus group feedback);\n\n\xa7 recommendations.scope.plan.title\nDevelop a long-term plan\n\n\xa7 recommendations.scope.plan.description\ntaking architecture into account.\n\nThis plan should immediately focus on the most challenging tasks.\n\n# Why the lack of a plan is bad:\n- employees create a minimally viable version without planning for expansion points. After this, unscalable code is written, which slows down future features;\n\n# The manager\'s mistake:\n- they haven\'t shown how the product will develop further and where the growth points will be;\n\n# How it should be done:\n- a global product development plan is created;\n- a global architecture development plan is created (with developers and DBAs);\n- potential significant changes are discussed upfront at the schematic level;\n\n\xa7 recommendations.scope.cost.title\nEvaluate Investment in a Feature\n\n\xa7 recommendations.scope.cost.description\nin terms of potential profit.\n\nFeatures that are expensive to develop but bring little profit may need to be postponed or even canceled. This will make the project more commercially successful.\n\n\xa7 recommendations.author.lotOfLazy.title: Too little code: $1\n\xa7 recommendations.author.lotOfLazy.description\nShould they be fired?\n\n# Composition: \n- $1;\n\n# Answer the questions:\n- are they a team leader, architect, or analyst?\n- is this their primary project?\n- are there any dependencies on them?\n\n# Why it makes no sense to correct\nThe total costs for the developer are already more than the profit from their work.\nIf we believe that there were no objective hindrances to their work, then the person either does not want to work at all or is working on two projects simultaneously.\nFiring and replacing them with a new employee seems justified from a statistical point of view.\n\n\xa7 recommendations.author.manyLazy.title: Little code: $1\n\xa7 recommendations.author.manyLazy.description\nNeeds to be monitored.\n\n# Composition: \n- $1;\n\n# How the sample is chosen:\n- in test samples, a good programmer writes code for more than 80% of the time;\n- in this case, the indicator is between 60% and 80%;\n\n# How to monitor:\n- break tasks into 1..2 days;\n- ask for a status update every day;\n- ensure tasks are well defined and ready for development;\n- arrange pair programming to check actual speed;\n\n\xa7 recommendations.author.oneTypeMans\nreceives too many monotonous tasks of the same type. Risk of burnout.\n\n# Why this is important:\n- if an employee burns out, their work speed will decrease;\n- professional growth slows down;\n- the likelihood of resignation increases;\n\n# How the sample is chosen:\n- the type of task is determined for each commit;\n- if more than 70% of tasks are of the same type, it means the person is doing the same thing repeatedly;\n\n\xa7 recommendations.author.workToday.title: Working $1\n\xa7 recommendations.author.workToday.description\non the project at this moment.\n\n# Composition: \n- $1;\n\n# Why specifically them:\n- more than 50% of workdays;\n- have worked during the last 30 days;\n\n\xa7 recommendations.author.dismissed.title: Dismissed $1\n\xa7 recommendations.author.dismissed.description\nor worked for a short period.\n\n# Composition:\n- $1;\n\n# Why specifically them:\n- worked at a normal pace (apparently, this is their main repository);\n- no commits in the last month;\n- vacation usually lasts 14 days (their absence does not resemble a vacation);\n\n\xa7 recommendations.author.staff.title: Assisting $1\n\xa7 recommendations.author.staff.description\nPeople of other specializations who have committed something.\n\n# Composition: \n- $1;\n\n# Why specifically them:\n- this is not an open-source project;\n- workdays less than 15% of the total number;\n- modify roughly the same files;\n\n\xa7 recommendations.author.projectType.openSource.title\nOpen Project\n\n\xa7 recommendations.author.projectType.openSource.description\nthey do not work five days a week here.\n\nThe project may be closed, but this work pace is typical for open libraries on GitHub.\n\n# Assessment method:\n- statistics are taken for all active developers;\n- the average number of working days and days without commits is calculated;\n- for open-source libraries, working days are usually a maximum of 15..20%;\n\n# Consequences\nFor projects where work is not constant, many indicators do not make sense. Therefore, indicators like days without commits, speed, etc., will be hidden.\n\nTypically, such projects are assessed before starting the development of their own closed version. The most interesting indicators in this case are the probable cost and total development time.\n\n\xa7 recommendations.author.projectType.easy.title\nLight Workload\n\n\xa7 recommendations.author.projectType.easy.description\ntoo many days without commits.\n\nIt is necessary to understand why the team is not writing code.\n\n# Assessment method:\n- take statistics from all active developers;\n- calculate the average number of working days and days without commits;\n- workload is considered light if the percentage of days without commits is between 5% and 20%;\n\n# Possible reasons:\n- there are actually no tasks;\n- there are tasks, but they fit well with the current architecture;\n- developers are distracted by meetings;\n- the team is not working;\n\n# Solutions:\n- discuss the issue with the team;\n- reduce task granularity so that one or two tasks can be completed in a day;\n- introduce daily meetings to check the status of tasks;\n- arrange pair programming sessions to ensure that the developer can work faster;\n\n\xa7 recommendations.author.manager.title\nSet Deadlines\n\n\xa7 recommendations.author.manager.description\nEvery task should have a clear deadline.\n \nThis will prevent dragging out its completion for several days or weeks.\n\n# Indicators to check:\n- the number of days spent on one task by an employee;\n- the number of days waiting for PR merge (PR statistics page);\n\n\xa7 recommendations.author.shorTalk.title\nConduct Daily Meetings\n\n\xa7 recommendations.author.shorTalk.description\nthey help stay informed about the project.\n \nDo not stretch them by getting sidetracked on irrelevant topics.\n\n# Questions the employee should answer:\n- what was done;\n- what will be done;\n- are there any issues;\n\n# Interruptions should occur if:\n- they start describing minor details in-depth, which are not important;\n- they steer the conversation away from the original plan;\n\n# Why this is important:\nOften an employee who does nothing tries to avoid the answer by telling a bunch of unnecessary details of their work. This lulls the participants\' attention and stretches the time for a response. It creates an impression that they are busy, even though there was no actual work done.\n\n\xa7 recommendations.author.ipr.title\nDevelop a Training Plan\n\n\xa7 recommendations.author.ipr.description\nfor each employee.\n\n*Individual training plan* is a list of goals and tasks that help a person develop in a certain area.\n\n# How to create a plan:\n- create a competency matrix;\n- identify which competencies have the least knowledge and experience;\n- find out which of these competencies are of interest to the employee;\n- come up with 3..5 goals within each such competency for the next six months or a year;\n- try to do something every month to achieve one goal;\n- remind every month about the overall plan to achieve these goals;\n\n# Does a manager need a plan?\nYes, the manager should also make a plan for themselves. If there is no higher-level manager, they should self-assess.\n\n# Why this is important:\n- employees become more loyal to the company;\n- you get more qualified personnel for the same money;\n\n\xa7 recommendations.author.oneToOne.title\nConduct One-on-One Meetings Every Month\n\n\xa7 recommendations.author.oneToOne.description\nit helps to identify problems at an early stage.\n\n*One-to-one* is a regular personal meeting of a manager with a subordinate. Such meetings typically discuss everything important to the employee, what concerns them, and what they can share with the manager in private.\n\n# Why this is important:\n- easy to find out who is overburdened and who has free time;\n- possible to prevent employee burnout;\n- quick feedback can be obtained about processes that you might not notice;\n- trust is built, making employees more loyal to the company;\n- increases employee motivation and engagement;\n\n\xa7 recommendations.author.club.title\nGo to a Bar\n\n\xa7 recommendations.author.club.description\nonce a month or two.\n\nThis will help build informal communication within the team and bring the team together, even if the interaction is brief.\n\n# Why this is important:\n- quick feedback can be obtained about processes that you might not notice;\n- trust is built, making employees more loyal to the company;\n- increases employee engagement;\n\n\xa7 recommendations.hour.onlyWork.title: No Weekends Here\n\xa7 recommendations.hour.onlyWork.description: The project manager should probably be fired.\n\xa7 recommendations.hour.weekends.title: Working on Weekends\n\xa7 recommendations.hour.weekends.description: The project manager should probably be checked.\n\xa7 recommendations.hour.easy.title: There Are Problems\n\xa7 recommendations.hour.easy.description: There are likely crunch times and work is needed on weekends.\n\xa7 recommendations.week.lazyDays.down.title: Fewer Absences\n\xa7 recommendations.week.lazyDays.down.description: this indicator has dropped over the last three weeks\n\xa7 recommendations.week.lazyDays.up.title: More Absences\n\xa7 recommendations.week.lazyDays.up.description: no tasks or stricter control is needed\n\xa7 recommendations.week.notWork.title: Consistently Underperforms\n\xa7 recommendations.week.notWork.description: as every week the code is not 100% of the time\n\xa7 recommendations.week.upWork.title: Consistently Overworks\n\xa7 recommendations.week.upWork.description: as every week code is written on weekend days\n\xa7 recommendations.week.task.up.title: Productivity is growing\n\xa7 recommendations.week.task.up.description: or tasks have become too small. Need to check. If granularity is the same - reinforce the result.\n\xa7 recommendations.week.task.lazyMaintainer.description: consistently leads in absences. Fire?\n\xa7 recommendations.week.task.down.title: Productivity is Falling\n\xa7 recommendations.week.task.down.description\nor tasks are poorly split. Need to check. If granularity is the same - take control.\n\n# Assessment method:\n- the number of tasks per day that are being worked on has been steadily decreasing over the last three weeks.\n\n# Possible errors:\n- tasks could have been more complex than they seemed;\n- tasks could have had a large volume of work (need to check if the number of changes is also decreasing during this period)\n\n\xa7 recommendations.type.everyHasOne.title: Not signing task types\n\xa7 recommendations.type.everyHasOne.description: Most task types are done by one person.\n\xa7 recommendations.type.oneMaintainer.title: Narrow Specialization\n\xa7 recommendations.type.oneMaintainer.description\nmost tasks of one type are done by the same people.\n\n# Task types:\n\n\xa7 recommendations.type.common\n# It might not be the case\n\nMake sure that other employees correctly sign commits.\n\nSteps to ensure this:\n- set up a pre-commit check for commit messages;\n- explain to the team the need to indicate the type;\n- check in new branches that employees follow this rule;\n\n# If it is indeed the case\n\nYou have set up checks and ensured that the same employee does tasks of the same type.\n\nWhy this is bad:\n- their resignation will halt a whole bunch of processes;\n- it reduces the competence of other team members;\n- difficult to understand their edits at a higher level;\n\nHow to fix this:\n- distribute different types of tasks evenly;\n- change the area of work (tests, documentation, bugs) among employees every sprint;\n\n\xa7 recommendations.type.fewTypes.title\nThis is a local product\n\n\xa7 recommendations.type.fewTypes.description\nfor a specific customer or problem.\n\n# Signs of a "global" product:\n- localization;\n- documentation;\n- a large volume of tests;\n- visual customization;\n- refactoring of bottlenecks;\n- etc.\n\n# Why this product looks like a "local" one:\n- each "global" sign will be outweighed by its type of task;\n- the more "global" signs, the more likely a "global" product;\n\nIn this case, we see a small number of types, which likely indicates shortcomings that prevent the product from being easily scaled to the global market and sold in other countries.\n\n# It might not be the case\nBased on file types, we can assume the type of program (website, server application, DevOps scripts, etc.). For a frontend application, our hypothesis will be more accurate than for DevOps scripts, which might just be a micro-module of initialization.\n\n\xa7 recommendations.type.diff.title\nSplit the popular type into subtypes\n\n\xa7 recommendations.type.diff.description\nto detail errors.\n\nTypically, the task type labeled "bug fixing" is leading. This makes the statistics weakly detailed.\n\n*If you encounter this situation*, you can break down this type into subtypes (e.g., based on the location of detection).\n\nConsider several options for subtypes:\n- fix_dev (error detected during development);\n- fix_test (error detected during testing);\n- fix (error detected in production);\n\n\xa7 recommendations.type.buddy.title\nAccumulate minor tasks\n\n\xa7 recommendations.type.buddy.description\nfor new employees.\n\n# If a task is:\n- not important;\n- not big;\n- doesn\'t require deep immersion in the context;\n- more about refactoring than new code;\n\n# Put it in the backlog with the label "for beginners".\n\nWhen a new employee arrives, you will be able to immediately pull out a bunch of small and varied tasks for them to get acquainted with the project.\n\nAlso, if you have a lull in work, you can pull out one such minor task from the backlog.\n',"\n\xa7 page.settings.document.title: Display settings\n\xa7 page.settings.document.name: Page title\n\xa7 page.settings.document.language: Interface language\n\xa7 page.settings.document.depersonalize: Hide personal data\n\xa7 page.settings.links.title: Link prefixes\n\xa7 page.settings.links.task: For task numbers\n\xa7 page.settings.links.pr: For PR\n\xa7 page.settings.user.title: Individual settings\n\xa7 page.settings.user.notFound: No individual settings. Data for all employees are calculated based on common parameters.\n\xa7 page.settings.user.subTitle: Addendum to employment contract \u2116$1\n\xa7 page.settings.user.from: Start date\n\xa7 page.settings.mailmap: .mailmap example\n\xa7 page.settings.common.title: General salary data\n\xa7 page.settings.common.type.title: Project work type\n\xa7 page.settings.common.type.full: Full-time employment\n\xa7 page.settings.common.type.part: Project work\n\xa7 page.settings.common.salary: Monthly salary in USD (US dollar, $)\n\xa7 page.settings.common.currency: Currency for view\n\xa7 page.settings.common.workDaysInYear: Number of working days in a year\n\xa7 page.settings.common.vacationDaysInYear: Number of vacation days in a year\n\xa7 page.settings.common.workDaysInWeek: Workdays\n\xa7 page.settings.form.save: Save\n\xa7 page.settings.form.cancel: Cancel\n\xa7 page.settings.form.remove: Remove\n\xa7 page.settings.form.addEmployee: Add an employee\n\xa7 page.settings.form.addContract: Add an employment contract\n",'\n\xa7 page.welcome.step1: Execute the command in the root of your project.\n\xa7 page.welcome.step3: Drag and drop\n\xa7 page.welcome.step4: the log.txt file onto this page.\n\xa7 page.welcome.description: Git will create a log.txt file. It contains data for report generation. Or use git shortlog -s -n -e if you don\'t need a report. Create a [.mailmap|https://git-scm.com/docs/gitmailmap] file in the root of the project to consolidate employee statistics.\n\xa7 page.welcome.warning1: The service *DOES NOT SAVE* and *DOES NOT TRANSFER* your data. All calculations are performed locally in your browser on your machine.\n\xa7 page.welcome.warning2: The service *DOES NOT COLLECT STATISTICS* on projects. You can disconnect the internet, check traffic, and even build a local version from the [source|https://github.com/bakhirev/assayo].\n\xa7 page.common.words.title: Word Statistics.\n\xa7 page.common.words.description: the most popular word. Occurs $1 times.\n\xa7 page.common.commits.title: Number of commits by days.\n\xa7 page.common.commits.description: ($1) the most productive day in terms of the number of commits.\n\xa7 page.common.commits.title2: $1 commits made: $2\n\xa7 page.common.filter.allUsers: Does not matter\n\xa7 page.print.modal.title: What are we printing?\n\xa7 page.print.modal.page: Current page\n\xa7 page.print.modal.type: Current section\n\xa7 page.print.modal.all: All statistics\n\xa7 page.print.modal.cancel: Cancel\n\xa7 page.print.tableOfContents: Table of contents\n\xa7 page.print.title: Git repository report\n\xa7 page.print.sub_title: \xab$1\xbb\n\xa7 page.print.description: The data for the report was obtained from the commit history.\n\xa7 page.team.author.statusChart.title: Status\n\xa7 page.team.author.daysChart.title: Days of work\n\xa7 page.team.author.daysChart.item: days\n\xa7 page.team.author.days.half: half year\n\xa7 page.team.author.days.one: year\n\xa7 page.team.author.days.15: year and a half\n\xa7 page.team.author.days.two: two years\n\xa7 page.team.author.days.more: more than two years\n\xa7 page.team.author.title: Details\n\xa7 page.team.author.description1: *Part of the statistics* (work speed, costs, etc.) *for employees with the \'Assistant\' type is not counted*, as it is an episodic role in the project. It is assumed that they do not affect the project, and their edits can be disregarded in the context of the overall volume of work.\n\xa7 page.team.author.description2: *Default sorting* is by the number of tasks and groups (current, fired, assisting employees).\n\xa7 page.team.author.status: Status\n\xa7 page.team.author.company: Company\n\xa7 page.team.author.firstCommit: First commit\n\xa7 page.team.author.lastCommit: Last\n\xa7 page.team.author.daysAll: Total days\n\xa7 page.team.author.types: Types of work\n\xa7 page.team.author.commits: Commits\n\xa7 page.team.author.commitsSmall: commits\n\xa7 page.team.author.tasks: Tasks\n\xa7 page.team.author.tasksSmall: tasks\n\xa7 page.team.author.workedLosses: Days with and without commits\n\xa7 page.team.author.worked: work\n\xa7 page.team.author.losses: days without commits\n\xa7 page.team.author.days: days\n\xa7 page.team.author.daysForTask: Days per task\n\xa7 page.team.author.scopes: Features\n\xa7 page.team.author.moneyAll: Received\n\xa7 page.team.author.moneyWorked: Worked for\n\xa7 page.team.author.moneyLosses: Overpayment\n\xa7 page.team.author.type.work: works\n\xa7 page.team.author.type.dismissed: dismissed\n\xa7 page.team.author.type.staff: staff\n\xa7 page.team.hours.title: Distribution of commits during each day of the week\n\xa7 page.team.month.title: Project work calendar\n\xa7 page.team.month.first: (first work day)\n\xa7 page.team.month.last: (last work day)\n\xa7 page.team.scope.title: Feature statistics\n\xa7 page.team.scope.scope: Feature\n\xa7 page.team.scope.days: Working Days\n\xa7 page.team.scope.authorsDays: Person-Days\n\xa7 page.team.scope.tasks: Tasks\n\xa7 page.team.scope.commits: Commits\n\xa7 page.team.scope.commitsSmall: commits\n\xa7 page.team.scope.types: Types of work\n\xa7 page.team.scope.authors: Personal contribution\n\xa7 page.team.scope.cost: Cost\n\xa7 page.team.type.title: Task type statistics\n\xa7 page.team.type.description: *Personal contribution* is counted by the number of commits, not the volume of changed lines or files. Therefore, the "File Analysis" section should also be consulted to assess the scale of changes.\n\xa7 page.team.type.type: Type of work\n\xa7 page.team.type.unknown: unknown\n\xa7 page.team.type.tasks: Tasks\n\xa7 page.team.type.tasksSmall: tasks\n\xa7 page.team.type.days: Days\n\xa7 page.team.type.daysSmall: days\n\xa7 page.team.type.authorsDays: Person-days\n\xa7 page.team.type.commits: Commits\n\xa7 page.team.type.authors: Personal contribution\n\xa7 page.team.total.titleA: Volume of work\n\xa7 page.team.total.titleB: Cost\n\xa7 page.team.total.daysWorked.title: person-days\n\xa7 page.team.total.daysWorked.description: Only days with commits are counted\n\xa7 page.team.total.commits.title: commits\n\xa7 page.team.total.commits.description: Deleted branches are not counted\n\xa7 page.team.total.daysLosses.title: days without commits\n\xa7 page.team.total.daysLosses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 page.team.total.employment.title: working / dismissed\n\xa7 page.team.total.employment.description: If an employee does not make any commits within a month, they are considered dismissed\n\xa7 page.team.total.moneyAll.title: total\n\xa7 page.team.total.moneyAll.description: Total salary expenses\n\xa7 page.team.total.moneyWorked.title: actual\n\xa7 page.team.total.moneyWorked.description: Actual days worked multiplied by average salary\n\xa7 page.team.total.moneyLosses.title: possible overpayment\n\xa7 page.team.total.moneyLosses.description: Paid working days when there were no commits\n\xa7 page.team.total.weekendPayment.title: weekend work\n\xa7 page.team.total.weekendPayment.description: Total overpayment for weekend work\n\xa7 page.team.total.workSpeed.title: tasks per day\n\xa7 page.team.total.workSpeed.description: Average work speed of the team with the current composition of employees\n\xa7 page.team.total.moneySpeed.title: per month\n\xa7 page.team.total.moneySpeed.description: Forecasted salary payment amount with the current team composition, excluding taxes and related expenses\n\xa7 page.team.total.description1: *Person-days* \u2014 the work of one employee during a single working day. For example, in one calendar day, a team of three employees produces a work volume of three person-days.\n\xa7 page.team.total.description2: *Absentee days* are counted only as working days when commits could have been made. Weekends, public holidays, and vacations are not included in the calculation.\n\xa7 page.team.total.description3: The *working and dismissed* card shows the actual composition of employees who are continuously involved in work. Additionally, there are "assistants" \u2014 typically employees of a different specialization who may occasionally make commits to the project.\n\xa7 page.team.total.description4: *Overpayment* includes only working days when commits could have been made. Weekends, public holidays, and vacations are not included in the calculation. This is why overpayment + actual cost != total. The total cost includes payment for weekends, public holidays, and vacations.\n\xa7 page.team.total.description5: *Weekend work* is calculated at a rate of x2 the payment of a regular day. The displayed amount is specifically the overpayment (x1), as the fact of overtime in this context is not of interest. We focus on overpayment when increasing work speed.\n\xa7 page.team.tree.title: Project tree considering selected filters\n\xa7 page.team.tree.filters.author: Employee\n\xa7 page.team.tree.filters.commits: Number of commits\n\xa7 page.team.tree.filters.help: The minimum number of commits an employee has made in a file\n\xa7 page.team.tree.filters.all: All employees\n\xa7 page.team.tree.totalLines: Lines\n\xa7 page.team.tree.totalTasks: Tasks\n\xa7 page.team.tree.totalDays: Days\n\xa7 page.team.tree.tasks: tasks\n\xa7 page.team.tree.days: days\n\xa7 page.team.tree.add: Who added\n\xa7 page.team.tree.change: Who changed\n\xa7 page.team.tree.remove: Who removed\n\xa7 page.team.tree.line: lines\n\xa7 page.team.tree.linesAdded: added\n\xa7 page.team.tree.linesChanged: changed\n\xa7 page.team.tree.linesRemoved: removed\n\xa7 page.team.company.title: Details\n\xa7 page.team.company.employments.title: By number of employees\n\xa7 page.team.company.employments.item: employments\n\xa7 page.team.company.daysChart.title: By duration of the contract\n\xa7 page.team.company.daysChart.item: companies\n\xa7 page.team.company.active.yes: active\n\xa7 page.team.company.active.no: contract has expired\n\xa7 page.team.country.byTimezone: By the time of the last commit\n\xa7 page.team.country.filters.active: Works\n\xa7 page.team.country.filters.dismissed: Dismissed\n\xa7 page.team.country.filters.staff: Staff\n\xa7 page.team.country.pieByDomain.title: By email, timezone and language\n\xa7 page.team.country.pieByTimezone.title: By timezone\n\xa7 page.team.country.chart.item: employments\n\xa7 page.team.country.table.title: List of employees\n\xa7 page.team.country.table.country: Country\n\xa7 page.team.country.table.employments: Employments\n\xa7 page.team.country.travel.title: Trips (or VPN, or rebase)\n\xa7 page.team.country.travel.author: Employee\n\xa7 page.team.country.travel.fly: Number of flights\n\xa7 page.team.country.travel.path: Locations list\n\xa7 page.team.country.travel.date: Arrival date\n\xa7 page.team.country.travel.country: Location\n\xa7 page.team.refactor.title: Candidates for refactoring\n\xa7 page.team.refactor.lines: lines\n\xa7 page.team.refactor.tasks: tasks\n\xa7 page.team.refactor.days: days\n\xa7 page.team.refactor.path: Path\n\xa7 page.team.refactor.firstCommit: First commit\n\xa7 page.team.refactor.totalLines: Lines\n\xa7 page.team.refactor.totalTasks: Tasks\n\xa7 page.team.refactor.totalDays: Days in development\n\xa7 page.team.day.commits: Commits\n\xa7 page.team.day.activity: Activity\n\xa7 page.team.week.title: Weekly statistics\n\xa7 page.team.week.date: Date\n\xa7 page.team.week.numberTasks: Number of tasks\n\xa7 page.team.week.people: Number of people\n\xa7 page.team.week.line: Line changes\n\xa7 page.team.week.days: Days with and without commits\n\xa7 page.team.week.lossesDetails: Who did not commit\n\xa7 page.team.week.add: added\n\xa7 page.team.week.change: changed\n\xa7 page.team.week.remove: removed\n\xa7 page.team.week.hasCommits: had commits\n\xa7 page.team.week.hasNotCommits: had no commits\n\xa7 page.team.week.days: days\n\xa7 page.team.week.tasks: tasks\n\xa7 page.team.pr.task: Task\n\xa7 page.team.pr.tasks: tasks\n\xa7 page.team.pr.firstCommitTime: First commit\n\xa7 page.team.pr.lastCommitTime: Last\n\xa7 page.team.pr.workDays: Average time spent working on a task\n\xa7 page.team.pr.delayDays: Average time of the PR review\n\xa7 page.team.pr.all.workDays: Time spent working on a task\n\xa7 page.team.pr.all.delayDays: Time of the PR review\n\xa7 page.team.pr.middleTimeRelease: The ratio of development time to review time\n\xa7 page.team.pr.chart.1day: day\n\xa7 page.team.pr.chart.3day: three days\n\xa7 page.team.pr.chart.7day: week\n\xa7 page.team.pr.chart.14day: two weeks\n\xa7 page.team.pr.chart.30day: month\n\xa7 page.team.pr.chart.more: more\n\xa7 page.team.pr.date: Merge Date\n\xa7 page.team.pr.mergeAuthor: Merged by\n\xa7 page.team.pr.author: Employee\n\xa7 page.team.pr.work: development\n\xa7 page.team.pr.delay: waiting\n\xa7 page.team.pr.days: days\n\xa7 page.team.pr.oneTaskDays: Time spent on one task\n\xa7 page.team.pr.description1: *Development time* is the time difference from the first to the last commit on a task. It does not matter if there were breaks of several days between commits or not. Any commit increases the time.\n\xa7 page.team.pr.description2: *Waiting time* is the time between the last commit and the code merge. It shows the actual downtime while waiting for something.\n\xa7 page.team.pr.description3: *Why display development time* without splitting into coding and code review? To show the business the actual delivery time of the code. Waiting for testing, review comments, DevOps problems, and other process imperfections are already included in this term.\n\xa7 page.team.pr.statByAuthors: Statistics by employees\n\xa7 page.team.pr.longDelay: Prolonged Waiting for merge\n\xa7 page.team.pr.anonymous: PR without task number\n\xa7 page.team.pr.branch: Branch\n\xa7 page.team.tasks.task: Task\n\xa7 page.team.tasks.author: First commit author\n\xa7 page.team.tasks.from: First commit\n\xa7 page.team.tasks.to: Last commit\n\xa7 page.team.tasks.daysInWork: Days in work\n\xa7 page.team.tasks.comments: Comments\n\xa7 page.team.extension.extension: File extensions\n\xa7 page.team.extension.type: File sub types\n\xa7 page.team.extension.name: Type\n\xa7 page.team.extension.path: Path\n\xa7 page.team.extension.current.count: Number\n\xa7 page.team.extension.removed.count: Number of removed\n\xa7 page.team.extension.files: files\n\xa7 page.team.release.download: Download\n\xa7 page.team.release.title: Release\n\xa7 page.team.release.from: Created date\n\xa7 page.team.release.to: Delivery date\n\xa7 page.team.release.prLength: Tasks\n\xa7 page.team.release.delay: Preparation days\n\xa7 page.team.release.waiting: Days of waiting for next release\n\xa7 page.team.department.employments.title: The size of the current teams\n\xa7 page.team.department.employments.item: of teams\n\xa7 page.team.author.employments.less1: one employee\n\xa7 page.team.author.employments.less2: two employees\n\xa7 page.team.author.employments.less3: three employees\n\xa7 page.team.author.employments.less6: up to six employees\n\xa7 page.team.author.employments.less9: up to nine employees\n\xa7 page.team.author.employments.less12: up to 12 employees\n\xa7 page.team.author.employments.less15: up to 15 employees\n\xa7 page.team.author.employments.more: more than 15\n\xa7 page.team.department.daysChart.title: Duration of the project\n\xa7 page.team.department.daysChart.item: projects\n\xa7 page.team.department.title: List of projects\n\xa7 page.team.department.code: Code\n\xa7 page.team.department.from: First commit\n\xa7 page.team.department.to: Last\n\xa7 page.team.department.authors: employees\n\xa7 page.team.department.tasks: tasks\n\xa7 page.team.department.totalDays: Working days\n\xa7 page.team.department.totalAuthors: Number of employees\n\xa7 page.person.print.photo.title: Photo\n\xa7 page.person.print.photo.description: space for a photo\n\xa7 page.person.total.title: Main characteristics\n\xa7 page.person.total.daysWorked.title: days of work\n\xa7 page.person.total.daysWorked.description: Only days with commits are counted\n\xa7 page.person.total.tasks.title: tasks\n\xa7 page.person.total.tasks.description: If commits are properly signed\n\xa7 page.person.scoring.toolbar: The position according to this metric, relative to others. Two employees can take the same position if the values matches. Therefore, the total number of positions may be less than the number of employees.\n\xa7 page.person.character.title: Character\n\xa7 page.person.achievement.title: Achievements\n\xa7 page.person.achievement.positive: Positive\n\xa7 page.person.achievement.normal: Neutral\n\xa7 page.person.achievement.negative: Negative\n\xa7 page.person.achievement.description: The more negative achievements an employee accumulates, the higher the likelihood that the situation is unusual. It may be necessary to change their work mode, tasks, or reporting. A discussion with them to understand what problems are hindering their work is advisable.\n\xa7 page.person.gets.title: Gets taken:\n\xa7 page.person.gets.description: "Taking a get" in this context means being the first to leave a commit on a task with a "nice" number.\n\xa7 page.person.business.days.title: days of work\n\xa7 page.person.business.days.description: Only days with commits are counted\n\xa7 page.person.business.tasks.title: tasks\n\xa7 page.person.business.tasks.description: If commits are properly signed\n\xa7 page.person.business.losses.title: days without commits\n\xa7 page.person.business.losses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 page.person.business.commits.title: commits\n\xa7 page.person.business.commits.description: Deleted branches are not counted\n\xa7 page.person.business.time.description: Time from the first to the last commit (including non-working days)\n\xa7 page.person.business.time.title: Days on the project:\n\xa7 page.person.business.time.dismissed: (dismissed)\n\xa7 page.person.business.time.staff: (not in the team)\n\xa7 page.person.business.achievements: Achievements\n\xa7 page.person.changes.title: Achievements\n\xa7 page.person.changes.description: \nWith some types of formatting, git marks lines as "deleted" and "added",\nalthough in reality, they were "changed". Therefore, if you conducted a major refactoring,\ngit might show a small number of changes in the statistics, but the actual result\nwill be marked as a jump in "deleted" and "added" lines.\n\xa7 page.person.changes.description: List of commits and the number of changes in them for that day:\n\xa7 page.person.commits.title: List of commits:\n\xa7 page.person.money.title.total: Total over time\n\xa7 page.person.money.title.middle: Average cost\n\xa7 page.person.money.moneyAll.title: received\n\xa7 page.person.money.moneyAll.description: Assumed total salary from the project (see settings)\n\xa7 page.person.money.moneyWorked.title: worked for\n\xa7 page.person.money.moneyWorked.description: Actual days worked multiplied by average salary\n\xa7 page.person.money.moneyLosses.title: possible overpayment\n\xa7 page.person.money.moneyLosses.description: Days without commits multiplied by average salary\n\xa7 page.person.money.tasks.title: task\n\xa7 page.person.money.tasks.description: Number of closed tasks to the cost of the day\n\xa7 page.person.money.commits.title: commit\n\xa7 page.person.money.commits.description: Number of commits to the cost of the workday\n\xa7 page.person.speed.task: One task on average is\n\xa7 page.person.speed.max: Maximum speed per day\n\xa7 page.person.speed.days.title: days\n\xa7 page.person.speed.days.description: Refers to workdays, if commits are properly signed\n\xa7 page.person.speed.commits.title: commits\n\xa7 page.person.speed.commits.description: Top and bottom 10% of values are trimmed\n\xa7 page.person.speed.line.title: lines of code\n\xa7 page.person.speed.line.description: Top and bottom 10% of values are trimmed\n\xa7 page.person.speed.tasks.title: tasks\n\xa7 page.person.speed.tasks.description: A task may not be completed, but work should be done on it\n\xa7 page.person.speed.maxCommits.title: commits\n\xa7 page.person.speed.maxCommits.description: A task may not be completed, but work should be done on it\n\xa7 page.person.hours.title: Distribution of commits during each day of the week\n\xa7 page.person.week.date: Date\n\xa7 page.person.week.tasks: Number of tasks\n\xa7 page.person.week.workDays: Days with commits\n\xa7 page.person.week.taskInDay: Tasks per day\n\xa7 page.person.week.days: days\n\xa7 page.person.week.workDay: weekdays\n\xa7 page.person.week.weekends: weekends\n\xa7 page.sponsor.title: Please, support this project\n\xa7 page.sponsor.share.description: Tell about our [project|https://github.com/bakhirev/assayo] on social networks! You can share [article|https://habr.com/ru/articles/763342/], [post|https://www.reddit.com/r/ITManagers/comments/1e5k291/the_visualization_and_analysis_of_git_commit/] or [video|https://www.youtube.com/watch?v=jwCp_-bhrCQ].\n\xa7 page.sponsor.share.button: Copy the link\n\xa7 page.sponsor.money.description: We will be glad if you support us with any amount! All funds will be used for the further development of the project.\n\xa7 page.sponsor.money.qr: One-time payment (only Russia)\n\xa7 page.sponsor.money.github: GitHub Sponsor\n'].join(""),Ce=["\n\xa7 achievements.commitsAfter1500.title: Owl\n\xa7 achievements.commitsAfter1500.description: 70% of commits after 3:00 PM\n\xa7 achievements.commitsBefore1500.title: Early bird\n\xa7 achievements.commitsBefore1500.description: 70% of commits before noon\n\xa7 achievements.workEveryTime.title: Devoted worker\n\xa7 achievements.workEveryTime.description: a commit for every hour of the day\n\xa7 achievements.workNotWork.title: Shooting blanks\n\xa7 achievements.workNotWork.description: commits are there, but no tasks are closed\n\xa7 achievements.userNotWork.title: Fly-by\n\xa7 achievements.userNotWork.description: this is not their main project\n\xa7 achievements.userIsDied.title: Dead soul\n\xa7 achievements.userIsDied.description: worked, but resigned\n\xa7 achievements.lessTasks.title: Came and went\n\xa7 achievements.lessTasks.description: least closed tasks\n\xa7 achievements.moreTasks.title: Father says well done\n\xa7 achievements.moreTasks.description: most closed tasks\n\xa7 achievements.everyMessageLong.title: Master of eloquence\n\xa7 achievements.everyMessageLong.description: consistently the longest commit messages\n\xa7 achievements.everyMessageShort.title: Talkative, a spy's dream\n\xa7 achievements.everyMessageShort.description: consistently, the shortest commit messages\n\xa7 achievements.shortestName.title: Size doesn't matter\n\xa7 achievements.shortestName.description: shortest name\n\xa7 achievements.longestName.title: Azim Aziz Il Am Kadir Imran II\n\xa7 achievements.longestName.description: longest name\n\xa7 achievements.moreCommits.title: Backup master\n\xa7 achievements.moreCommits.description: most commits\n\xa7 achievements.lessCommits.title: Rare but Precise\n\xa7 achievements.lessCommits.description: least commits\n\xa7 achievements.oneCommitOneTask.title: Right on target\n\xa7 achievements.oneCommitOneTask.description: on average one commit per task\n\xa7 achievements.moreLazyDays.title: With you in spirit\n\xa7 achievements.moreLazyDays.description: most days without commits\n\xa7 achievements.lessLazyDays.title: Papa carlo\n\xa7 achievements.lessLazyDays.description: least days without commits\n\xa7 achievements.zeroLazyDays.title: Not a single break\n\xa7 achievements.zeroLazyDays.description: not a single day without commits\n\xa7 achievements.moreWorkDays.title: Valuable employee\n\xa7 achievements.moreWorkDays.description: most working days\n\xa7 achievements.moreScopes.title: Startuper\n\xa7 achievements.moreScopes.description: completed the most features\n\xa7 achievements.lessScopes.title: Dandy\n\xa7 achievements.lessScopes.description: completed the fewest features\n\xa7 achievements.moreDaysForTask.title: Snail on the slope\n\xa7 achievements.moreDaysForTask.description: tasks take longer than others\n\xa7 achievements.more2DaysForTask.title: Slow and steady\n\xa7 achievements.more2DaysForTask.description: more than two days per task\n\xa7 achievements.moreDaysInProject.title: Old-timer\n\xa7 achievements.moreDaysInProject.description: most days in the project\n\xa7 achievements.lessDaysInProject.title: And who is this?\n\xa7 achievements.lessDaysInProject.description: least days in the project\n\xa7 achievements.more90DaysInProject.title: Welcome aboard\n\xa7 achievements.more90DaysInProject.description: not fired during the probation period\n\xa7 achievements.lessDaysForTask.title: Fast shooting\n\xa7 achievements.lessDaysForTask.description: a task takes less than a day\n\xa7 achievements.adam.title: Adam\n\xa7 achievements.adam.description: the first stable employee on the project\n\xa7 achievements.more666DaysInProject.title: Devil\n\xa7 achievements.more666DaysInProject.description: worked 666 days on the project\n\xa7 achievements.more777DaysInProject.title: Las Vegas\n\xa7 achievements.more777DaysInProject.description: worked 777 days on the project\n\xa7 achievements.moreRefactoring.title: Executive editor\n\xa7 achievements.moreRefactoring.description: made the most 'refactoring' tags\n\xa7 achievements.longestMessage.title: So many conversations...\n\xa7 achievements.longestMessage.description: the longest commit message of all time\n\xa7 achievements.moreTasksInDay.title: Speed racer\n\xa7 achievements.moreTasksInDay.description: record for the number of tasks closed in a day\n\xa7 achievements.hasCommitFrom0to7.title: Night watch\n\xa7 achievements.hasCommitFrom0to7.description: a commit for every hour of the night\n\xa7 achievements.noCommitOnDay.title: Technical break\n\xa7 achievements.noCommitOnDay.description: there is a certain hour and day in working time when never commits\n\xa7 achievements.hasCommitEveryTime.title: Died at work\n\xa7 achievements.hasCommitEveryTime.description: a commit for every hour of each day (including weekends)\n\xa7 achievements.commitsAfter1800.title: Business Time\n\xa7 achievements.commitsAfter1800.description: no commits after 6:00 PM\n\xa7 achievements.moreFix.title: Bug hunter\n\xa7 achievements.moreFix.description: most closed bugs\n\xa7 achievements.lessWorkDays.title: Count me out\n\xa7 achievements.lessWorkDays.description: least working days\n\xa7 achievements.moreCreateCode.title: Creator\n\xa7 achievements.moreCreateCode.description: tends to add code more than others\n\xa7 achievements.moreRemoveCode.title: Destroyer\n\xa7 achievements.moreRemoveCode.description: tends to remove code more than others\n\xa7 achievements.moreChangeCode.title: Reformer\n\xa7 achievements.moreChangeCode.description: tends to change code more than others\n\xa7 achievements.moreStyle.title: Fashion police\n\xa7 achievements.moreStyle.description: tends to change CSS more than others\n\xa7 achievements.moreOnHoliday.title: No life\n\xa7 achievements.moreOnHoliday.description: relatively many commits in non-working hours\n\xa7 achievements.morePRMerge.title: Show me your pass\n\xa7 achievements.morePRMerge.description: more often than others, presses the \"Merge\" button for PR\n\xa7 achievements.longWaitPR.title: Tomorrow 100% be merge\n\xa7 achievements.longWaitPR.description: created PR that waited more than a month on the review\n\xa7 achievements.moreLongWaitPR.title: A long time ago in a galaxy far, far away\n\xa7 achievements.moreLongWaitPR.description: created PR that has been waiting for a review the longest\n\xa7 achievements.oneExtension.title: My name is LEGION\n\xa7 achievements.oneExtension.description: only this man works with files of a certain extension\n\xa7 achievements.fileRush.title: Zerg Rush\n\xa7 achievements.fileRush.description: created the most files in the project\n\xa7 achievements.moreLintHint.title: Grammar Nazi\n\xa7 achievements.moreLintHint.description: more than anyone created or changed the code-style rules\n\xa7 achievements.moreReadMe.title: Chronicler\n\xa7 achievements.moreReadMe.description: more than anyone created or modified MD files\n\xa7 achievements.moreDevOps.title: DevOps\n\xa7 achievements.moreDevOps.description: more than anyone created or modified files for CI/CD\n\xa7 achievements.moreTests.title: Tester\n\xa7 achievements.moreTests.description: more than anyone created or modified files for testing\n\xa7 achievements.allRelease.title: Full house\n\xa7 achievements.allRelease.description: there is a release compiled only from his tasks\n\xa7 achievements.firstCommit.title: First come, first served\n\xa7 achievements.firstCommit.description: first commit on the project\n\xa7 achievements.lastCommit.title: I've finished\n\xa7 achievements.lastCommit.description: last commit on the project\n\xa7 achievements.firstLastCommit.title: From beginning to end\n\xa7 achievements.firstLastCommit.description: first and last commit on the project\n\xa7 achievements.longFilePath.title: Deep cellar\n\xa7 achievements.longFilePath.description: the first created the file with the deepest directory\n\xa7 achievements.longFileName.title: Size matters\n\xa7 achievements.longFileName.description: created the file with the longest name\n\xa7 achievements.workOnWeekends.title: Work not walk\n\xa7 achievements.workOnWeekends.description: at least once worked on weekends\n\xa7 achievements.removeCreateFile.title: Dig out the stewardess\n\xa7 achievements.removeCreateFile.description: recover removed file\n\xa7 achievements.renameFile.title: Astana Nur-Sultan Astana\n\xa7 achievements.renameFile.description: rename file and rollback\n\xa7 achievements.longTask.title: Easy task\n\xa7 achievements.longTask.description: worked on task more than three months\n\xa7 achievements.haveNotEmail.title: Mailman\n\xa7 achievements.haveNotEmail.description: empty email field in git config\n\xa7 achievements.moreAddedFolders.title: Director \n\xa7 achievements.moreAddedFolders.description: created the most directories\n\xa7 achievements.horoscope1.title: Mercury Retrograde for Capricorn\n\xa7 achievements.horoscope2.title: Mercury Retrograde for Aquarius\n\xa7 achievements.horoscope3.title: Mercury Retrograde for Pisces\n\xa7 achievements.horoscope4.title: Mercury Retrograde for Aries\n\xa7 achievements.horoscope5.title: Mercury Retrograde for Taurus\n\xa7 achievements.horoscope6.title: Mercury Retrograde for Gemini\n\xa7 achievements.horoscope7.title: Mercury Retrograde for Cancer\n\xa7 achievements.horoscope8.title: Mercury Retrograde for Leo\n\xa7 achievements.horoscope9.title: Mercury Retrograde for Virgo\n\xa7 achievements.horoscope10.title: Mercury Retrograde for Libra\n\xa7 achievements.horoscope11.title: Mercury Retrograde for Scorpio\n\xa7 achievements.horoscope12.title: Mercury Retrograde for Sagittarius\n\xa7 achievements.horoscope1.description: by the month of the first commit\n\xa7 achievements.horoscope2.description: by the month of the first commit\n\xa7 achievements.horoscope3.description: by the month of the first commit\n\xa7 achievements.horoscope4.description: by the month of the first commit\n\xa7 achievements.horoscope5.description: by the month of the first commit\n\xa7 achievements.horoscope6.description: by the month of the first commit\n\xa7 achievements.horoscope7.description: by the month of the first commit\n\xa7 achievements.horoscope8.description: by the month of the first commit\n\xa7 achievements.horoscope9.description: by the month of the first commit\n\xa7 achievements.horoscope10.description: by the month of the first commit\n\xa7 achievements.horoscope11.description: by the month of the first commit\n\xa7 achievements.horoscope12.description: by the month of the first commit\n\xa7 achievements.111.description: test\n","\n\xa7 uiKit.console.button: Copiar\n\xa7 uiKit.console.notification: El texto ha sido copiado\n\xa7 uiKit.dataLoader.page: P\xe1gina\n\xa7 uiKit.dataLoader.size: Mostrando hasta\n\xa7 uiKit.dataLoader.rows: lines.\n\xa7 uiKit.dataLoader.from: de\n\xa7 uiKit.dataLoader.all: Mostrar todo\n\xa7 uiKit.hoursChart.work: horario laboral normal (lunes a viernes, de 07:00 a 20:00)\n\xa7 uiKit.hoursChart.weekend: d\xedas o horario antes/despu\xe9s del d\xeda laboral\n\xa7 uiKit.hoursChart.days: n\xfamero total de commits en un d\xeda y una hora espec\xedfica\n\xa7 uiKit.page.remove: Eliminar\n\xa7 uiKit.nothingFound.common.title: No hay o no hay suficientes datos para mostrar\n\xa7 uiKit.nothingFound.common.description: El sistema procesar\xe1 m\xe1s datos si los commits se firman con el formato de [Git commit message convention|https://www.conventionalcommits.org/en/v1.0.0/]. Patr\xf3n:\n\xa7 uiKit.nothingFound.common.console: N\xfamero_de_tarea tipo(caracter\xedstica): descripci\xf3n\n\xa7 uiKit.nothingFound.common.example: Por ejemplo:\n\xa7 uiKit.nothingFound.personal.title: No hay datos para este colaborador\n\xa7 uiKit.nothingFound.personal.description1:\nEl no hizo cambios todos los d\xedas laborables y obtuvo el estado \u201cAsistente\u201d.\nEl trabajo de los colaboradores con este estatus en este proyecto puede desestimarse, ya que su aporte en el conjunto es insignificante.\n\n\xa7 uiKit.nothingFound.staff.description2\n\u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043d\u0435 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442 \u0434\u043b\u044f \u043d\u0435\u0433\u043e \u0440\u044f\u0434 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439.\n\u0415\u0441\u043b\u0438 \u044d\u0442\u043e \u043e\u0448\u0438\u0431\u043a\u0430 \u0438 \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430 \u043d\u0443\u0436\u043d\u043e \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0442\u044c \u043a\u0430\u043a \u043e\u0431\u044b\u0447\u043d\u043e\u0433\u043e, \u043f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u0432 \u0440\u0430\u0437\u0434\u0435\u043b \xab\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\xbb \u0438 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u0435 \u0435\u0433\u043e \u0442\u0438\u043f.\n\n\xa7 common.title: Estad\xedsticas git\n\xa7 common.filters: Filtros\n\xa7 common.notifications.save: Cambios guardados\n\xa7 common.notifications.setting: Ajustes guardados\n\xa7 common.fileLoader.notification: Cant open file $1\n","\n\xa7 sidebar.switch.team: Equipo\n\xa7 sidebar.switch.person: Empleado\n\xa7 sidebar.buttons.settings: Ajustes\n\xa7 sidebar.buttons.print: Impresi\xf3n\n\xa7 sidebar.buttons.share: Share\n\xa7 sidebar.buttons.logout: Logout\n\xa7 sidebar.filters.all: a todas horas\n\xa7 sidebar.filters.year: a\xf1o\n\xa7 sidebar.filters.halfYear: medio a\xf1o\n\xa7 sidebar.filters.month: mes\n\xa7 sidebar.filters.week: semana\n\xa7 sidebar.team.total: Informaci\xf3n general\n\xa7 sidebar.team.scope: m\xf3dulos\n\xa7 sidebar.team.author: Personal\n\xa7 sidebar.team.type: Tipos de tareas\n\xa7 sidebar.team.pr: Inyecci\xf3n de c\xf3digo\n\xa7 sidebar.team.day: Por d\xedas\n\xa7 sidebar.team.week: Por semana\n\xa7 sidebar.team.month: Por mes\n\xa7 sidebar.team.tree: Archivos\n\xa7 sidebar.team.removedTree: Archivos eliminados\n\xa7 sidebar.team.files: Ficheros\n\xa7 sidebar.team.removedFiles: Archivos eliminados\n\xa7 sidebar.team.extension: Extensions\n\xa7 sidebar.team.tasks: Lista de tareas\n\xa7 sidebar.team.release: Releases\n\xa7 sidebar.team.hours: Horario\n\xa7 sidebar.team.commits: All commits\n\xa7 sidebar.team.changes: Todos los cambios\n\xa7 sidebar.team.words: Palabras populares\n\xa7 sidebar.team.building: Concurso\n\xa7 sidebar.team.refactor: Refactoring\n\xa7 sidebar.team.company: Companies\n\xa7 sidebar.team.department: Departments\n\xa7 sidebar.team.country: Locations\n\xa7 sidebar.team.settings: Ajustes\n\xa7 sidebar.person.total: Informaci\xf3n general\n\xa7 sidebar.person.money: Costo del trabajo\n\xa7 sidebar.person.speed: Velocidad\n\xa7 sidebar.person.day: Por d\xedas\n\xa7 sidebar.person.week: Por semana\n\xa7 sidebar.person.month: Por mes\n\xa7 sidebar.person.tasks: Tasks\n\xa7 sidebar.person.hours: Horario\n\xa7 sidebar.person.commits: All commits\n\xa7 sidebar.person.changes: Todos los cambios\n\xa7 sidebar.person.words: Palabras populares\n\xa7 sidebar.person.settings: Ajustes\n",'\n\xa7 recommendations.modal.cancel: Ok\n\xa7 recommendations.modal.open: More\n\xa7 recommendations.title\nRecommendations and facts\n\n\xa7 recommendations.timestamp.firstCommit.description\nmade the first commit\n\nDay of the Week: $1\n\n\xa7 recommendations.timestamp.lastCommit.description\nmade the last commit\n\nDay of the Week: $1\n\n\xa7 recommendations.timestamp.common.title: $1 days\n\xa7 recommendations.timestamp.allDays.description: from the first to the last commit (including weekends and holidays).\n\xa7 recommendations.timestamp.lossesDays.description: days without commits, even considering weekends, vacation, and public holidays.\n\xa7 recommendations.timestamp.weekendDays.description\nworking on weekends\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- employees burn out faster;\n\n\xa7 recommendations.timestamp.regularWeekendWord.title: Regular Overtime\n\xa7 recommendations.timestamp.sometimeWeekendWord.title: Occasional overtime\n\xa7 recommendations.timestamp.weekendWord.description\nIt might be advisable to change the project manager, analyst, and architect.\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- the quality of the product is usually low;\n- some employees resign;\n- new errors emerge due to the rush;\n\n# Most likely:\n- deadlines were incorrectly estimated at the beginning;\n- technical specifications are missing;\n- weak analytics;\n- weak architecture (no architect was hired, and the team consists of mid-level developers);\n- started writing code first, then planning;\n- lack of proper processes to understand mistakes;\n\n\xa7 recommendations.timestamp.neverWeekendWord.title: Usually Without Overtime\n\xa7 recommendations.timestamp.neverWeekendWord.description\nBut sometimes it happens.\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- employees burn out faster;\n\n\xa7 recommendations.scope.parallelism.not.title\nNo parallel work\n\n\xa7 recommendations.scope.parallelism.not.description\nany feature at any given time is done by one person.\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is less than 1.3, we consider that there is usually no parallel work within most features;\n\n# Why this is bad:\n- increases bus factor;\n- employees develop more slowly;\n- difficult to properly check an employee\'s work;\n\n# Why this is good:\n- experts emerge who are deeply immersed in the subject area and can offer more quality solutions;\n- most likely there are no merge conflicts;\n- the project can quickly develop in different directions simultaneously;\n\n\xa7 recommendations.scope.parallelism.has.title\nSome Work Done in Parallel\n\n\xa7 recommendations.scope.parallelism.has.description\nSometimes a feature is worked on simultaneously by several people.\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is from 1.3 to 2.0, we consider that some of the work within different features is sometimes done in parallel;\n\n\xa7 recommendations.scope.parallelism.every.title\nParallel Work\n\n\xa7 recommendations.scope.parallelism.every.description\nany feature at any given time is worked on by several people\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is more than two, we consider that most of the work within different features is usually done in parallel;\n\n\xa7 recommendations.scope.money\nthis is the estimated cost for the work on this project.\n\n# Calculation method:\n- person-days spent on development are multiplied by the individual salaries of the developers;\n\nTo change the salary of each developer for a more accurate total, go to the "Settings" section.\n\n# Is this too much or too little?\nTo answer this question, consider the following:\n- Could a ready-made solution have been purchased for this amount of money?\n- Could a better product have been developed for this amount of money?\n\nIf the answer to both questions is "yes," then perhaps developing from scratch was not worth the money spent.\n \n\xa7 recommendations.scope.bus.everyHasOne.title\nBus factor = 1\n\n\xa7 recommendations.scope.bus.everyHasOne.description\nMost features are deeply understood by only one person.\nIt\'s necessary to rotate people.\n\n# Why this is bad:\n- if employees resign, it will be difficult to continue their work;\n- it\u2019s impossible to control the quality of their code;\n\n# How the sample is chosen:\n- more than 80% of commits in a feature are made by one person;\n- the project has more than 60% of such features;\n\n\xa7 recommendations.scope.bus.oneMaintainer\none person is deeply involved in a feature.\n\n# Why this is bad:\n- if they resign, it will be hard to continue development;\n- the quality of code-review decreases;\n- it\u2019s difficult to parallelize development when needed;\n\n# How the sample is chosen:\n- more than 80% of commits in a feature are made by one person;\n\n\xa7 recommendations.scope.types.process.title\nPoor processes\n\n\xa7 recommendations.scope.types.process.description\nMost features contain one type of task.\n\n\xa7 recommendations.scope.types.one\nfeatures contain one type of task.\n\n\xa7 recommendations.scope.types.common\nIt\'s possible that developers are incorrectly signing commits or the manager is entering the same type of tasks.\n\n# Why this is important:\n- it\'s impossible to hand over support to another team;\n- it\'s impossible to release a "boxed" version;\n- strong dependence on specific developers;\n- a high number of errors and low code quality;\n- potential slowdown in development in the future;\n\n# The manager\'s mistake:\n- viewing the product only from the perspective of a "working demo";\n\n# What should be done:\n- tests;\n- bugs (identified through testing);\n- refactoring (as architecture may change);\n- documentation;\n- style revisions (as a result of focus group feedback);\n\n\xa7 recommendations.scope.plan.title\nDevelop a long-term plan\n\n\xa7 recommendations.scope.plan.description\ntaking architecture into account.\n\nThis plan should immediately focus on the most challenging tasks.\n\n# Why the lack of a plan is bad:\n- employees create a minimally viable version without planning for expansion points. After this, unscalable code is written, which slows down future features;\n\n# The manager\'s mistake:\n- they haven\'t shown how the product will develop further and where the growth points will be;\n\n# How it should be done:\n- a global product development plan is created;\n- a global architecture development plan is created (with developers and DBAs);\n- potential significant changes are discussed upfront at the schematic level;\n\n\xa7 recommendations.scope.cost.title\nEvaluate Investment in a Feature\n\n\xa7 recommendations.scope.cost.description\nin terms of potential profit.\n\nFeatures that are expensive to develop but bring little profit may need to be postponed or even canceled. This will make the project more commercially successful.\n\n\xa7 recommendations.author.lotOfLazy.title: Too little code: $1\n\xa7 recommendations.author.lotOfLazy.description\nShould they be fired?\n\n# Composition: \n- $1;\n\n# Answer the questions:\n- are they a team leader, architect, or analyst?\n- is this their primary project?\n- are there any dependencies on them?\n\n# Why it makes no sense to correct\nThe total costs for the developer are already more than the profit from their work.\nIf we believe that there were no objective hindrances to their work, then the person either does not want to work at all or is working on two projects simultaneously.\nFiring and replacing them with a new employee seems justified from a statistical point of view.\n\n\xa7 recommendations.author.manyLazy.title: Little code: $1\n\xa7 recommendations.author.manyLazy.description\nNeeds to be monitored.\n\n# Composition: \n- $1;\n\n# How the sample is chosen:\n- in test samples, a good programmer writes code for more than 80% of the time;\n- in this case, the indicator is between 60% and 80%;\n\n# How to monitor:\n- break tasks into 1..2 days;\n- ask for a status update every day;\n- ensure tasks are well defined and ready for development;\n- arrange pair programming to check actual speed;\n\n\xa7 recommendations.author.oneTypeMans\nreceives too many monotonous tasks of the same type. Risk of burnout.\n\n# Why this is important:\n- if an employee burns out, their work speed will decrease;\n- professional growth slows down;\n- the likelihood of resignation increases;\n\n# How the sample is chosen:\n- the type of task is determined for each commit;\n- if more than 70% of tasks are of the same type, it means the person is doing the same thing repeatedly;\n\n\xa7 recommendations.author.workToday.title: Working $1\n\xa7 recommendations.author.workToday.description\non the project at this moment.\n\n# Composition: \n- $1;\n\n# Why specifically them:\n- more than 50% of workdays;\n- have worked during the last 30 days;\n\n\xa7 recommendations.author.dismissed.title: Dismissed $1\n\xa7 recommendations.author.dismissed.description\nor worked for a short period.\n\n# Composition:\n- $1;\n\n# Why specifically them:\n- worked at a normal pace (apparently, this is their main repository);\n- no commits in the last month;\n- vacation usually lasts 14 days (their absence does not resemble a vacation);\n\n\xa7 recommendations.author.staff.title: Assisting $1\n\xa7 recommendations.author.staff.description\nPeople of other specializations who have committed something.\n\n# Composition: \n- $1;\n\n# Why specifically them:\n- this is not an open-source project;\n- workdays less than 15% of the total number;\n- modify roughly the same files;\n\n\xa7 recommendations.author.projectType.openSource.title\nOpen Project\n\n\xa7 recommendations.author.projectType.openSource.description\nthey do not work five days a week here.\n\nThe project may be closed, but this work pace is typical for open libraries on GitHub.\n\n# Assessment method:\n- statistics are taken for all active developers;\n- the average number of working days and days without commits is calculated;\n- for open-source libraries, working days are usually a maximum of 15..20%;\n\n# Consequences\nFor projects where work is not constant, many indicators do not make sense. Therefore, indicators like days without commits, speed, etc., will be hidden.\n\nTypically, such projects are assessed before starting the development of their own closed version. The most interesting indicators in this case are the probable cost and total development time.\n\n\xa7 recommendations.author.projectType.easy.title\nLight Workload\n\n\xa7 recommendations.author.projectType.easy.description\ntoo many days without commits.\n\nIt is necessary to understand why the team is not writing code.\n\n# Assessment method:\n- take statistics from all active developers;\n- calculate the average number of working days and days without commits;\n- workload is considered light if the percentage of days without commits is between 5% and 20%;\n\n# Possible reasons:\n- there are actually no tasks;\n- there are tasks, but they fit well with the current architecture;\n- developers are distracted by meetings;\n- the team is not working;\n\n# Solutions:\n- discuss the issue with the team;\n- reduce task granularity so that one or two tasks can be completed in a day;\n- introduce daily meetings to check the status of tasks;\n- arrange pair programming sessions to ensure that the developer can work faster;\n\n\xa7 recommendations.author.manager.title\nSet Deadlines\n\n\xa7 recommendations.author.manager.description\nEvery task should have a clear deadline.\n \nThis will prevent dragging out its completion for several days or weeks.\n\n# Indicators to check:\n- the number of days spent on one task by an employee;\n- the number of days waiting for PR merge (PR statistics page);\n\n\xa7 recommendations.author.shorTalk.title\nConduct Daily Meetings\n\n\xa7 recommendations.author.shorTalk.description\nthey help stay informed about the project.\n \nDo not stretch them by getting sidetracked on irrelevant topics.\n\n# Questions the employee should answer:\n- what was done;\n- what will be done;\n- are there any issues;\n\n# Interruptions should occur if:\n- they start describing minor details in-depth, which are not important;\n- they steer the conversation away from the original plan;\n\n# Why this is important:\nOften an employee who does nothing tries to avoid the answer by telling a bunch of unnecessary details of their work. This lulls the participants\' attention and stretches the time for a response. It creates an impression that they are busy, even though there was no actual work done.\n\n\xa7 recommendations.author.ipr.title\nDevelop a Training Plan\n\n\xa7 recommendations.author.ipr.description\nfor each employee.\n\n*Individual training plan* is a list of goals and tasks that help a person develop in a certain area.\n\n# How to create a plan:\n- create a competency matrix;\n- identify which competencies have the least knowledge and experience;\n- find out which of these competencies are of interest to the employee;\n- come up with 3..5 goals within each such competency for the next six months or a year;\n- try to do something every month to achieve one goal;\n- remind every month about the overall plan to achieve these goals;\n\n# Does a manager need a plan?\nYes, the manager should also make a plan for themselves. If there is no higher-level manager, they should self-assess.\n\n# Why this is important:\n- employees become more loyal to the company;\n- you get more qualified personnel for the same money;\n\n\xa7 recommendations.author.oneToOne.title\nConduct One-on-One Meetings Every Month\n\n\xa7 recommendations.author.oneToOne.description\nit helps to identify problems at an early stage.\n\n*One-to-one* is a regular personal meeting of a manager with a subordinate. Such meetings typically discuss everything important to the employee, what concerns them, and what they can share with the manager in private.\n\n# Why this is important:\n- easy to find out who is overburdened and who has free time;\n- possible to prevent employee burnout;\n- quick feedback can be obtained about processes that you might not notice;\n- trust is built, making employees more loyal to the company;\n- increases employee motivation and engagement;\n\n\xa7 recommendations.author.club.title\nGo to a Bar\n\n\xa7 recommendations.author.club.description\nonce a month or two.\n\nThis will help build informal communication within the team and bring the team together, even if the interaction is brief.\n\n# Why this is important:\n- quick feedback can be obtained about processes that you might not notice;\n- trust is built, making employees more loyal to the company;\n- increases employee engagement;\n\n\xa7 recommendations.hour.onlyWork.title: No Weekends Here\n\xa7 recommendations.hour.onlyWork.description: The project manager should probably be fired.\n\xa7 recommendations.hour.weekends.title: Working on Weekends\n\xa7 recommendations.hour.weekends.description: The project manager should probably be checked.\n\xa7 recommendations.hour.easy.title: There Are Problems\n\xa7 recommendations.hour.easy.description: There are likely crunch times and work is needed on weekends.\n\xa7 recommendations.week.lazyDays.down.title: Fewer Absences\n\xa7 recommendations.week.lazyDays.down.description: this indicator has dropped over the last three weeks\n\xa7 recommendations.week.lazyDays.up.title: More Absences\n\xa7 recommendations.week.lazyDays.up.description: no tasks or stricter control is needed\n\xa7 recommendations.week.notWork.title: Consistently Underperforms\n\xa7 recommendations.week.notWork.description: as every week the code is not 100% of the time\n\xa7 recommendations.week.upWork.title: Consistently Overworks\n\xa7 recommendations.week.upWork.description: as every week code is written on weekend days\n\xa7 recommendations.week.task.up.title: Productivity is growing\n\xa7 recommendations.week.task.up.description: or tasks have become too small. Need to check. If granularity is the same - reinforce the result.\n\xa7 recommendations.week.task.lazyMaintainer.description: consistently leads in absences. Fire?\n\xa7 recommendations.week.task.down.title: Productivity is Falling\n\xa7 recommendations.week.task.down.description\nor tasks are poorly split. Need to check. If granularity is the same - take control.\n\n# Assessment method:\n- the number of tasks per day that are being worked on has been steadily decreasing over the last three weeks.\n\n# Possible errors:\n- tasks could have been more complex than they seemed;\n- tasks could have had a large volume of work (need to check if the number of changes is also decreasing during this period)\n\n\xa7 recommendations.type.everyHasOne.title: Not signing task types\n\xa7 recommendations.type.everyHasOne.description: Most task types are done by one person.\n\xa7 recommendations.type.oneMaintainer.title: Narrow Specialization\n\xa7 recommendations.type.oneMaintainer.description\nmost tasks of one type are done by the same people.\n\n# Task types:\n\n\xa7 recommendations.type.common\n# It might not be the case\n\nMake sure that other employees correctly sign commits.\n\nSteps to ensure this:\n- set up a pre-commit check for commit messages;\n- explain to the team the need to indicate the type;\n- check in new branches that employees follow this rule;\n\n# If it is indeed the case\n\nYou have set up checks and ensured that the same employee does tasks of the same type.\n\nWhy this is bad:\n- their resignation will halt a whole bunch of processes;\n- it reduces the competence of other team members;\n- difficult to understand their edits at a higher level;\n\nHow to fix this:\n- distribute different types of tasks evenly;\n- change the area of work (tests, documentation, bugs) among employees every sprint;\n\n\xa7 recommendations.type.fewTypes.title\nThis is a local product\n\n\xa7 recommendations.type.fewTypes.description\nfor a specific customer or problem.\n\n# Signs of a "global" product:\n- localization;\n- documentation;\n- a large volume of tests;\n- visual customization;\n- refactoring of bottlenecks;\n- etc.\n\n# Why this product looks like a "local" one:\n- each "global" sign will be outweighed by its type of task;\n- the more "global" signs, the more likely a "global" product;\n\nIn this case, we see a small number of types, which likely indicates shortcomings that prevent the product from being easily scaled to the global market and sold in other countries.\n\n# It might not be the case\nBased on file types, we can assume the type of program (website, server application, DevOps scripts, etc.). For a frontend application, our hypothesis will be more accurate than for DevOps scripts, which might just be a micro-module of initialization.\n\n\xa7 recommendations.type.diff.title\nSplit the popular type into subtypes\n\n\xa7 recommendations.type.diff.description\nto detail errors.\n\nTypically, the task type labeled "bug fixing" is leading. This makes the statistics weakly detailed.\n\n*If you encounter this situation*, you can break down this type into subtypes (e.g., based on the location of detection).\n\nConsider several options for subtypes:\n- fix_dev (error detected during development);\n- fix_test (error detected during testing);\n- fix (error detected in production);\n\n\xa7 recommendations.type.buddy.title\nAccumulate minor tasks\n\n\xa7 recommendations.type.buddy.description\nfor new employees.\n\n# If a task is:\n- not important;\n- not big;\n- doesn\'t require deep immersion in the context;\n- more about refactoring than new code;\n\n# Put it in the backlog with the label "for beginners".\n\nWhen a new employee arrives, you will be able to immediately pull out a bunch of small and varied tasks for them to get acquainted with the project.\n\nAlso, if you have a lull in work, you can pull out one such minor task from the backlog.\n',"\n\xa7 page.settings.document.title: \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\n\xa7 page.settings.document.name: \u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b\n\xa7 page.settings.document.language: \u042f\u0437\u044b\u043a \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430\n\xa7 page.settings.document.depersonalize: Hide personal data\n\xa7 page.settings.links.title: \u041f\u0440\u0435\u0444\u0438\u043a\u0441\u044b \u0441\u0441\u044b\u043b\u043e\u043a\n\xa7 page.settings.links.task: \u0414\u043b\u044f \u043d\u043e\u043c\u0435\u0440\u043e\u0432 \u0437\u0430\u0434\u0430\u0447\n\xa7 page.settings.links.pr: \u0414\u043b\u044f PR\n\xa7 page.settings.user.title: \u0418\u043d\u0434\u0438\u0432\u0438\u0434\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\n\xa7 page.settings.user.notFound: \u0418\u043d\u0434\u0438\u0432\u0438\u0434\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u043d\u0435\u0442. \u0414\u0430\u043d\u043d\u044b\u0435 \u043f\u043e \u0432\u0441\u0435\u043c \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\u043c \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u044e\u0442\u0441\u044f \u043f\u043e \u043e\u0431\u0449\u0438\u043c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c.\n\xa7 page.settings.user.subTitle: \u0414\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043a \u0442\u0440\u0443\u0434\u043e\u0432\u043e\u043c\u0443 \u0434\u043e\u0433\u043e\u0432\u043e\u0440\u0443 \u2116$1\n\xa7 page.settings.user.from: \u0414\u0430\u0442\u0430 \u043d\u0430\u0447\u0430\u043b\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f\n\xa7 page.settings.mailmap: \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 .mailmap\n\xa7 page.settings.common.title: \u041e\u0431\u0449\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e \u0437\u0430\u0440\u043f\u043b\u0430\u0442\u0435\n\xa7 page.settings.common.type.title: \u0422\u0438\u043f \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0434 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c\n\xa7 page.settings.common.type.full: \u041f\u043e\u043b\u043d\u0430\u044f \u0437\u0430\u043d\u044f\u0442\u043e\u0441\u0442\u044c\n\xa7 page.settings.common.type.part: \u041f\u0440\u043e\u0435\u043a\u0442\u043d\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430\n\xa7 page.settings.common.salary: \u0417\u0430\u0440\u043f\u043b\u0430\u0442\u0430 \u0432 \u043c\u0435\u0441\u044f\u0446\n\xa7 page.settings.common.currency: \u0412\u0430\u043b\u044e\u0442\u0430\n\xa7 page.settings.common.workDaysInYear: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u0434\u043d\u0435\u0439 \u0432 \u0433\u043e\u0434\u0443\n\xa7 page.settings.common.vacationDaysInYear: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0434\u043d\u0435\u0439 \u043e\u0442\u043f\u0443\u0441\u043a\u0430 \u0432 \u0433\u043e\u0434\n\xa7 page.settings.common.workDaysInWeek: \u0420\u0430\u0431\u043e\u0447\u0438\u0435 \u0434\u043d\u0438\n\xa7 page.settings.form.save: \u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c\n\xa7 page.settings.form.cancel: \u041e\u0442\u043c\u0435\u043d\u0430\n\xa7 page.settings.form.remove: \u0423\u0434\u0430\u043b\u0438\u0442\u044c\n\xa7 page.settings.form.addEmployee: \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\n\xa7 page.settings.form.addContract: \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0442\u0440\u0443\u0434\u043e\u0432\u043e\u0439 \u0434\u043e\u0433\u043e\u0432\u043e\u0440\n",'\n\xa7 page.welcome.step1: Ejecute el comando en la ra\xedz de su proyecto\n\xa7 page.welcome.step3: Arrastrais\n\xa7 page.welcome.step4: fichero log.txt a esta p\xe1gina\n\xa7 page.welcome.description: Git crear\xe1 un archivo log.txt. Contiene los datos para construir el informe. Ejecute el comando git shortlog -s -n -e \u0435si el informe no es necesario. Crear un archivo [.mailmap|https://git-scm.com/docs/gitmailmap] en la ra\xedz del proyecto para combinar las estad\xedsticas de los empleados.\n\xa7 page.welcome.warning1: El Servicio no ALMACENA ni TRANSMITE sus datos. Todos los c\xe1lculos se realizan en su computadora.\n\xa7 page.welcome.warning2: El Servicio no RECOPILA ESTAD\xcdSTICAS sobre proyectos. Puedes ver [c\xf3digo fuente|https://github.com/bakhirev/assayo].\n\xa7 page.common.words.title: Estad\xedsticas en palabras\n\xa7 page.common.words.description: la palabra m\xe1s popular. Se encuentra $1 veces.\n\xa7 page.common.commits.title: N\xfamero de commits por d\xeda\n\xa7 page.common.commits.description: ($1) el d\xeda m\xe1s productivo por n\xfamero de commits.\n\xa7 page.common.commits.title2: $1 commits hechas: $2\n\xa7 page.common.filter.allUsers: No tiene importancia\n\xa7 page.print.modal.title: Lo que imprimimos?\n\xa7 page.print.modal.page: P\xe1gina actual\n\xa7 page.print.modal.type: Secci\xf3n actual\n\xa7 page.print.modal.all: Todas las estad\xedsticas\n\xa7 page.print.modal.cancel: Cancelaci\xf3n\n\xa7 page.print.tableOfContents: Tabla\n\xa7 page.print.title: Informe del repositorio git\n\xa7 page.print.sub_title: \xab$1\xbb\n\xa7 page.print.description: Los datos para el informe se obtuvieron del historial de commits.\n\xa7 page.team.author.statusChart.title: Status\n\xa7 page.team.author.daysChart.title: Days of work\n\xa7 page.team.author.daysChart.item: days\n\xa7 page.team.author.days.half: half year\n\xa7 page.team.author.days.one: year\n\xa7 page.team.author.days.15: year and a half\n\xa7 page.team.author.days.two: two years\n\xa7 page.team.author.days.more: more than two years\n\xa7 page.team.author.title: Details\n\xa7 page.team.author.description1: Parte de las estad\xedsticas (la velocidad del trabajo, el dinero gastado, etc.) para los empleados con el tipo de "Asistente" no cuenta, ya que no es un rol permanente en el proyecto. Su trabajo es insignificante y puede ser ignorado.\n\xa7 page.team.author.description2: La clasificaci\xf3n predeterminada es la clasificaci\xf3n por n\xfamero de tareas y grupos(empleados actuales, despedidos, ayudantes).\n\xa7 page.team.author.status: Status\n\xa7 page.team.author.company: Company\n\xa7 page.team.author.firstCommit: First commit\n\xa7 page.team.author.lastCommit: Last\n\xa7 page.team.author.daysAll: Total days\n\xa7 page.team.author.types: Tipo de trabajo\n\xa7 page.team.author.commits: Commits\n\xa7 page.team.author.commitsSmall: commits\n\xa7 page.team.author.tasks: Tareas\n\xa7 page.team.author.tasksSmall: Tareas\n\xa7 page.team.author.workedLosses: D\xedas con y sin commits\n\xa7 page.team.author.worked: trabajo\n\xa7 page.team.author.losses: d\xedas sin commits\n\xa7 page.team.author.days: d\xeda\n\xa7 page.team.author.daysForTask: D\xedas por tarea\n\xa7 page.team.author.scopes: Elaboraci\xf3n definitiva\n\xa7 page.team.author.moneyAll: Dinero recibido\n\xa7 page.team.author.moneyWorked: Trabajo\n\xa7 page.team.author.moneyLosses: Sobrepago\n\xa7 page.team.author.type.work: works\n\xa7 page.team.author.type.dismissed: dismissed\n\xa7 page.team.author.type.staff: staff\n\xa7 page.team.hours.title: Distribuci\xf3n del trabajo cada d\xeda de la semana\n\xa7 page.team.month.title: Calendario del proyecto\n\xa7 page.team.month.first: (first work day)\n\xa7 page.team.month.last: (last work day)\n\xa7 page.team.scope.title: Estad\xedsticas de m\xf3dulos\n\xa7 page.team.scope.scope: Elaboraci\xf3n definitiva\n\xa7 page.team.scope.days: Siervo. d\xeda\n\xa7 page.team.scope.authorsDays: D\xedas-persona\n\xa7 page.team.scope.tasks: Tareas\n\xa7 page.team.scope.commits: Commits\n\xa7 page.team.scope.commitsSmall: commits\n\xa7 page.team.scope.types: Tipo de trabajo\n\xa7 page.team.scope.authors: Contribuci\xf3n personal\n\xa7 page.team.scope.cost: Costo\n\xa7 page.team.type.title: Estad\xedsticas por tipo de tarea\n\xa7 page.team.type.description: *Contribuci\xf3n personal* se considera por el n\xfamero de Commits, no por el volumen de l\xedneas o archivos modificados. Por lo tanto, tambi\xe9n debe ver la secci\xf3n "An\xe1lisis de archivos" para evaluar el alcance de los cambios\n\xa7 page.team.type.type: Tipo de trabajo\n\xa7 page.team.type.unknown: unknown\n\xa7 page.team.type.tasks: Tareas\n\xa7 page.team.type.tasksSmall: Tareas\n\xa7 page.team.type.days: D\xeda\n\xa7 page.team.type.daysSmall: D\xeda\n\xa7 page.team.type.authorsDays: D\xedas-persona\n\xa7 page.team.type.commits: Commits\n\xa7 page.team.type.authors: Contribuci\xf3n personal\n\xa7 page.team.total.titleA: Alcance\n\xa7 page.team.total.titleB: Costo\n\xa7 page.team.total.daysWorked.title: d\xedas-persona\n\xa7 page.team.total.daysWorked.description: Solo se tienen en cuenta los d\xedas en que se realizaron los commits\n\xa7 page.team.total.commits.title: commits\n\xa7 page.team.total.commits.description: Las ramas eliminadas no cuentan\n\xa7 page.team.total.daysLosses.title: d\xedas sin commits\n\xa7 page.team.total.daysLosses.description: Todos los d\xedas menos: vacaciones, fin de semana, vacaciones, d\xedas con commits\n\xa7 page.team.total.employment.title: empleado / despedido\n\xa7 page.team.total.employment.description: Si un empleado no ha hecho ning\xfan commit en un mes, se considera despedido\n\xa7 page.team.total.moneyAll.title: general\n\xa7 page.team.total.moneyAll.description: Costos totales de n\xf3mina\n\xa7 page.team.total.moneyWorked.title: real\n\xa7 page.team.total.moneyWorked.description: D\xedas efectivamente trabajados multiplicados por el salario promedio\n\xa7 page.team.total.moneyLosses.title: posible sobrepago\n\xa7 page.team.total.moneyLosses.description: D\xedas laborables pagados cuando no hubo commits\n\xa7 page.team.total.weekendPayment.title: trabajo de fin de semana\n\xa7 page.team.total.weekendPayment.description: Sobrepago total por trabajo de fin de semana\n\xa7 page.team.total.workSpeed.title: tareas por d\xeda\n\xa7 page.team.total.workSpeed.description: Velocidad media del equipo con la plantilla actual\n\xa7 page.team.total.moneySpeed.title: por mes\n\xa7 page.team.total.moneySpeed.description: Monto previsto de la n\xf3mina de sueldos en la plantilla actual, sin incluir impuestos ni costos asociados\n\xa7 page.team.total.description1: *D\xedas-persona* \u2014 es el trabajo de un empleado durante una jornada laboral. Por ejemplo, en un d\xeda calendario, un equipo de tres empleados emite una cantidad de trabajo de tres d\xedas-persona.\n\xa7 page.team.total.description2: *D\xedas de absentismo* solo se cuentan los d\xedas h\xe1biles en que se podr\xedan haber realizado commits. Fines de semana, d\xedas festivos y vacaciones no participan en el c\xe1lculo.\n\xa7 page.team.total.description3: Tarjeta *trabaja y se despide* muestra la composici\xf3n real de los empleados que participan constantemente en el trabajo. Aparte de eso, hay " ayudantes \u2014 - que son empleados, por lo general de otra Especializaci\xf3n, que a veces pueden hacer commits en un proyecto.\n\xa7 page.team.total.description4: *Pago excesivo* solo se cuentan los d\xedas h\xe1biles en que se podr\xedan haber realizado commits. Los fines de semana, d\xedas festivos y vacaciones no est\xe1n incluidos en el c\xe1lculo. \xa1Es por eso que el sobrepago + el costo real!= general. El costo total incluye el pago de fines de semana, d\xedas festivos y vacaciones.\n\xa7 page.team.total.description5: *Trabajo de fin de semana* se considera por el factor X2 del pago de un d\xeda normal. Lo anterior muestra exactamente el pago excesivo (X1), ya que el hecho de procesar en este contexto no es interesante. No estamos viendo la tasa de quema del presupuesto. Estamos viendo el sobrepago al aumentar la velocidad del trabajo.\n\xa7 page.team.tree.title: \xc1rbol de proyecto con filtros seleccionados\n\xa7 page.team.tree.filters.author: Empleado\n\xa7 page.team.tree.filters.commits: N\xfamero de commits\n\xa7 page.team.tree.filters.help: El n\xfamero m\xednimo de commits que hizo un empleado en el archivo\n\xa7 page.team.tree.filters.all: Todos los empleados\n\xa7 page.team.tree.totalLines: Lines\n\xa7 page.team.tree.totalTasks: Tasks\n\xa7 page.team.tree.totalDays: Days\n\xa7 page.team.tree.tasks: tasks\n\xa7 page.team.tree.days: days\n\xa7 page.team.tree.add: Quien ha a\xf1adido\n\xa7 page.team.tree.change: Quien cambi\xf3\n\xa7 page.team.tree.remove: Qui\xe9n borr\xf3\n\xa7 page.team.tree.line: filas\n\xa7 page.team.tree.linesAdded: agregaron\n\xa7 page.team.tree.linesChanged: changed\n\xa7 page.team.tree.linesRemoved: cambiaron\n\xa7 page.team.company.title: Details\n\xa7 page.team.company.employments.title: By number of employees\n\xa7 page.team.company.employments.item: employments\n\xa7 page.team.company.daysChart.title: By duration of the contract\n\xa7 page.team.company.daysChart.item: companies\n\xa7 page.team.company.active.yes: active\n\xa7 page.team.company.active.no: contract has expired\n\xa7 page.team.country.byTimezone: By the time of the last commit\n\xa7 page.team.country.filters.active: Works\n\xa7 page.team.country.filters.dismissed: Dismissed\n\xa7 page.team.country.filters.staff: Staff\n\xa7 page.team.country.pieByDomain.title: By email, timezone and language\n\xa7 page.team.country.pieByTimezone.title: By timezone\n\xa7 page.team.country.chart.item: employments\n\xa7 page.team.country.table.title: List of employees\n\xa7 page.team.country.table.country: Country\n\xa7 page.team.country.table.employments: Employments\n\xa7 page.team.country.travel.title: Trips (or VPN, or rebase)\n\xa7 page.team.country.travel.author: Employee\n\xa7 page.team.country.travel.fly: Number of flights\n\xa7 page.team.country.travel.path: Locations list\n\xa7 page.team.country.travel.date: Arrival date\n\xa7 page.team.country.travel.country: Location\n\xa7 page.team.refactor.title: Candidates for refactoring\n\xa7 page.team.refactor.lines: lines\n\xa7 page.team.refactor.tasks: tasks\n\xa7 page.team.refactor.days: days\n\xa7 page.team.refactor.path: Path\n\xa7 page.team.refactor.firstCommit: First commit\n\xa7 page.team.refactor.totalLines: Lines\n\xa7 page.team.refactor.totalTasks: Tasks\n\xa7 page.team.refactor.totalDays: Days in development\n\xa7 page.team.day.commits: Commits\n\xa7 page.team.day.activity: Activity\n\xa7 page.team.week.title: Estad\xedsticas semanales\n\xa7 page.team.week.date: Fecha\n\xa7 page.team.week.numberTasks: N\xfamero de tareas\n\xa7 page.team.week.people: N\xfamero de personas\n\xa7 page.team.week.line: Cambiar filas\n\xa7 page.team.week.days: D\xedas con y sin commits\n\xa7 page.team.week.lossesDetails: \xbfQui\xe9n no commits\n\xa7 page.team.week.add: agregaron\n\xa7 page.team.week.change: cambiaron\n\xa7 page.team.week.remove: eliminaron\n\xa7 page.team.week.hasCommits: fueron commits\n\xa7 page.team.week.hasNotCommits: no hubo commits\n\xa7 page.team.week.days: d\xeda\n\xa7 page.team.week.tasks: tareas\n\xa7 page.team.pr.task: Tarea\n\xa7 page.team.pr.tasks: tareas\n\xa7 page.team.pr.firstCommitTime: Primer commits\n\xa7 page.team.pr.lastCommitTime: Last\n\xa7 page.team.pr.workDays: Average time spent working on a task\n\xa7 page.team.pr.delayDays: Average time of the PR review\n\xa7 page.team.pr.all.workDays: Time spent working on a task\n\xa7 page.team.pr.all.delayDays: Time of the PR review\n\xa7 page.team.pr.middleTimeRelease: The ratio of development time to review time\n\xa7 page.team.pr.chart.1day: day\n\xa7 page.team.pr.chart.3day: three days\n\xa7 page.team.pr.chart.7day: week\n\xa7 page.team.pr.chart.14day: two weeks\n\xa7 page.team.pr.chart.30day: month\n\xa7 page.team.pr.chart.more: more\n\xa7 page.team.pr.date: Date of injection\n\xa7 page.team.pr.mergeAuthor: I poured it in\n\xa7 page.team.pr.author: Employee\n\xa7 page.team.pr.work: development\n\xa7 page.team.pr.delay: expectation\n\xa7 page.team.pr.days: days\n\xa7 page.team.pr.oneTaskDays: Time spent on one task\n\xa7 page.team.pr.description1: *Development time* this is the time difference from the first to the last commits for the task. It doesn\'t matter if there were breaks of several days between commits or not. The very fact of any commits increases the time.\n\xa7 page.team.pr.description2: *Waiting time* this is the time between the last commit and the code injection. It shows the actual idle waiting for something.\n\xa7 page.team.pr.description3: *Why display the development time* without a breakdown into coding and code review? Then, to show the business the actual delivery time of the code. The expectation of testing, comments on the review, DevOps problems and other imperfections of the process are already laid down in this period.\n\xa7 page.team.pr.statByAuthors: Employee statistics\n\xa7 page.team.pr.longDelay: Long wait for infusion\n\xa7 page.team.pr.anonymous: PR without task number\n\xa7 page.team.pr.branch: Branch\n\xa7 page.team.tasks.task: Task\n\xa7 page.team.tasks.author: The author of the first commits\n\xa7 page.team.tasks.from: The first commits\n\xa7 page.team.tasks.to: Last commits\n\xa7 page.team.tasks.daysInWork: Days in the work\n\xa7 page.team.tasks.comments: Comments\n\xa7 page.team.extension.extension: File extensions\n\xa7 page.team.extension.type: File sub types\n\xa7 page.team.extension.name: Type\n\xa7 page.team.extension.path: Path\n\xa7 page.team.extension.current.count: Number\n\xa7 page.team.extension.removed.count: Number of removed\n\xa7 page.team.extension.files: files\n\xa7 page.team.release.download: Download\n\xa7 page.team.release.title: Release\n\xa7 page.team.release.from: Created date\n\xa7 page.team.release.to: Delivery date\n\xa7 page.team.release.prLength: Tasks\n\xa7 page.team.release.delay: Preparation days\n\xa7 page.team.release.waiting: Days of waiting for next release\n\xa7 page.team.department.employments.title: The size of the current teams\n\xa7 page.team.department.employments.item: of teams\n\xa7 page.team.author.employments.less1: one employee\n\xa7 page.team.author.employments.less2: two employees\n\xa7 page.team.author.employments.less3: three employees\n\xa7 page.team.author.employments.less6: up to six employees\n\xa7 page.team.author.employments.less9: up to nine employees\n\xa7 page.team.author.employments.less12: up to 12 employees\n\xa7 page.team.author.employments.less15: up to 15 employees\n\xa7 page.team.author.employments.more: more than 15\n\xa7 page.team.department.daysChart.title: Duration of the project\n\xa7 page.team.department.daysChart.item: projects\n\xa7 page.team.department.title: List of projects\n\xa7 page.team.department.code: Code\n\xa7 page.team.department.from: First commit\n\xa7 page.team.department.to: Last\n\xa7 page.team.department.authors: employees\n\xa7 page.team.department.tasks: tasks\n\xa7 page.team.department.totalDays: Working days\n\xa7 page.team.department.totalAuthors: Number of employees\n\xa7 page.person.print.photo.title: Photo\n\xa7 page.person.print.photo.description: a place for a photo\n\xa7 page.person.total.title: Main Features\n\xa7 page.person.total.daysWorked.title: working days\n\xa7 page.person.total.daysWorked.description: Only the days on which commits were made are taken into account\n\xa7 page.person.total.tasks.title: tasks\n\xa7 page.person.total.tasks.description: If the commits are signed correctly\n\xa7 page.person.scoring.toolbar: The position according to this metric, relative to others. Two employees can take the same position if the values matches. Therefore, the total number of positions may be less than the number of employees.\n\xa7 page.person.character.title: Character\n\xa7 page.person.achievement.title: Progress\n\xa7 page.person.achievement.positive: Positive\n\xa7 page.person.achievement.normal: Neutral\n\xa7 page.person.achievement.negative: Negative\n\xa7 page.person.achievement.description: Cuantos m\xe1s logros negativos tenga un empleado, m\xe1s probable es que la situaci\xf3n no sea est\xe1ndar. Puede que valga la pena cambiar su modo de trabajo, tareas o informes. Debe hablar con \xe9l y averiguar qu\xe9 problemas interfieren con su trabajo.\n\xa7 page.person.gets.title: Geta Capturado:\n\xa7 page.person.gets.description: \xabGeta Capturado\xbb in this case, it means leaving commits to the task with the "beautiful" number first.\n\xa7 page.person.business.days.title: working days\n\xa7 page.person.business.days.description: Only the days on which commits were made are taken into account\n\xa7 page.person.business.tasks.title: tasks\n\xa7 page.person.business.tasks.description: If commits are signed correctly\n\xa7 page.person.business.losses.title: days without commits\n\xa7 page.person.business.losses.description: All days minus: holidays, weekends, vacations, days with commits\n\xa7 page.person.business.commits.title: commits\n\xa7 page.person.business.commits.description: Deleted branches don\'t count\n\xa7 page.person.business.time.description: Time from the first to the last commits (including non-working days)\n\xa7 page.person.business.time.title: Days on the project:\n\xa7 page.person.business.time.dismissed: (Progreso)\n\xa7 page.person.business.time.staff: (Not in the team)\n\xa7 page.person.business.achievements: Progreso\n\xa7 page.person.changes.title: Progreso\n\xa7 page.person.changes.description: \nEn algunos tipos de formato, git marca las l\xedneas como "eliminadas" y "agregadas", cuando en realidad se han "modificado". Entonces, si has hecho mucha refactorizaci\xf3n,\ngit puede Mostrar una peque\xf1a cantidad de cambios en las estad\xedsticas, y el resultado real se marcar\xe1 como un salto en las l\xedneas "eliminado" y "agregado"\n\xa7 page.person.changes.description: The list of commits and the number of changes to them for that day:\n\xa7 page.person.commits.title: Lista de commits:\n\xa7 page.person.money.title.total: Durante todo este tiempo \ud83d\udc4c\ufe0f\n\xa7 page.person.money.title.middle: Average cost\n\xa7 page.person.money.moneyAll.title: received\n\xa7 page.person.money.moneyAll.description: Estimated amount of the PO from the project (see settings)\n\xa7 page.person.money.moneyWorked.title: worked out\n\xa7 page.person.money.moneyWorked.description: Actual days worked multiplied by the average po\n\xa7 page.person.money.moneyLosses.title: possible overpayment\n\xa7 page.person.money.moneyLosses.description: Days without commits multiplied by the average po\n\xa7 page.person.money.tasks.title: task\n\xa7 page.person.money.tasks.description: The number of closed tasks to the cost of the day\n\xa7 page.person.money.commits.title: commits\n\xa7 page.person.money.commits.description: The number of commits to the cost of the working day\n\xa7 page.person.speed.task: One task on average is\n\xa7 page.person.speed.max: Velocidad m\xe1xima por d\xeda\n\xa7 page.person.speed.days.title: d\xedas\n\xa7 page.person.speed.days.description: This means working days if the commits are signed correctly\n\xa7 page.person.speed.commits.title: commits\n\xa7 page.person.speed.commits.description: 10% of the maximum and minimum values were cut off\n\xa7 page.person.speed.line.title: lines of code\n\xa7 page.person.speed.line.description: 10% of the maximum and minimum values were cut off\n\xa7 page.person.speed.tasks.title: tasks\n\xa7 page.person.speed.tasks.description: The task may not be completed, but the work on it should be\n\xa7 page.person.speed.maxCommits.title: commits\n\xa7 page.person.speed.maxCommits.description: The task may not be completed, but the work on it should be\n\xa7 page.person.hours.title: Distribution of commits during each day of the week\n\xa7 page.person.week.date: Date\n\xa7 page.person.week.tasks: Number of tasks\n\xa7 page.person.week.workDays: Days with commits\n\xa7 page.person.week.taskInDay: Tasks per day\n\xa7 page.person.week.days: days\n\xa7 page.person.week.workDay: entresemana\n\xa7 page.person.week.weekends: d\xeda de descanso\n\xa7 page.sponsor.title: Please, support this project\n\xa7 page.sponsor.share.description: Tell about our [project|https://github.com/bakhirev/assayo] on social networks! You can share [article|https://habr.com/ru/articles/763342/], [post|https://www.reddit.com/r/ITManagers/comments/1e5k291/the_visualization_and_analysis_of_git_commit/] or [video|https://www.youtube.com/watch?v=jwCp_-bhrCQ].\n\xa7 page.sponsor.share.button: Copy the link\n\xa7 page.sponsor.money.description: We will be glad if you support us with any amount! All funds will be used for the further development of the project.\n\xa7 page.sponsor.money.qr: One-time payment (only Russia)\n\xa7 page.sponsor.money.github: GitHub Sponsor\n'].join(""),Ee=["\n\xa7 achievements.commitsAfter1500.title: Owl\n\xa7 achievements.commitsAfter1500.description: 70% of commits after 3:00 PM\n\xa7 achievements.commitsBefore1500.title: Early bird\n\xa7 achievements.commitsBefore1500.description: 70% of commits before noon\n\xa7 achievements.workEveryTime.title: Devoted worker\n\xa7 achievements.workEveryTime.description: a commit for every hour of the day\n\xa7 achievements.workNotWork.title: Shooting blanks\n\xa7 achievements.workNotWork.description: commits are there, but no tasks are closed\n\xa7 achievements.userNotWork.title: Fly-by\n\xa7 achievements.userNotWork.description: this is not their main project\n\xa7 achievements.userIsDied.title: Dead soul\n\xa7 achievements.userIsDied.description: worked, but resigned\n\xa7 achievements.lessTasks.title: Came and went\n\xa7 achievements.lessTasks.description: least closed tasks\n\xa7 achievements.moreTasks.title: Father says well done\n\xa7 achievements.moreTasks.description: most closed tasks\n\xa7 achievements.everyMessageLong.title: Master of eloquence\n\xa7 achievements.everyMessageLong.description: consistently the longest commit messages\n\xa7 achievements.everyMessageShort.title: Talkative, a spy's dream\n\xa7 achievements.everyMessageShort.description: consistently, the shortest commit messages\n\xa7 achievements.shortestName.title: Size doesn't matter\n\xa7 achievements.shortestName.description: shortest name\n\xa7 achievements.longestName.title: Azim Aziz Il Am Kadir Imran II\n\xa7 achievements.longestName.description: longest name\n\xa7 achievements.moreCommits.title: Backup master\n\xa7 achievements.moreCommits.description: most commits\n\xa7 achievements.lessCommits.title: Rare but Precise\n\xa7 achievements.lessCommits.description: least commits\n\xa7 achievements.oneCommitOneTask.title: Right on target\n\xa7 achievements.oneCommitOneTask.description: on average one commit per task\n\xa7 achievements.moreLazyDays.title: With you in spirit\n\xa7 achievements.moreLazyDays.description: most days without commits\n\xa7 achievements.lessLazyDays.title: Papa carlo\n\xa7 achievements.lessLazyDays.description: least days without commits\n\xa7 achievements.zeroLazyDays.title: Not a single break\n\xa7 achievements.zeroLazyDays.description: not a single day without commits\n\xa7 achievements.moreWorkDays.title: Valuable employee\n\xa7 achievements.moreWorkDays.description: most working days\n\xa7 achievements.moreScopes.title: Startuper\n\xa7 achievements.moreScopes.description: completed the most features\n\xa7 achievements.lessScopes.title: Dandy\n\xa7 achievements.lessScopes.description: completed the fewest features\n\xa7 achievements.moreDaysForTask.title: Snail on the slope\n\xa7 achievements.moreDaysForTask.description: tasks take longer than others\n\xa7 achievements.more2DaysForTask.title: Slow and steady\n\xa7 achievements.more2DaysForTask.description: more than two days per task\n\xa7 achievements.moreDaysInProject.title: Old-timer\n\xa7 achievements.moreDaysInProject.description: most days in the project\n\xa7 achievements.lessDaysInProject.title: And who is this?\n\xa7 achievements.lessDaysInProject.description: least days in the project\n\xa7 achievements.more90DaysInProject.title: Welcome aboard\n\xa7 achievements.more90DaysInProject.description: not fired during the probation period\n\xa7 achievements.lessDaysForTask.title: Fast shooting\n\xa7 achievements.lessDaysForTask.description: a task takes less than a day\n\xa7 achievements.adam.title: Adam\n\xa7 achievements.adam.description: the first stable employee on the project\n\xa7 achievements.more666DaysInProject.title: Devil\n\xa7 achievements.more666DaysInProject.description: worked 666 days on the project\n\xa7 achievements.more777DaysInProject.title: Las Vegas\n\xa7 achievements.more777DaysInProject.description: worked 777 days on the project\n\xa7 achievements.moreRefactoring.title: Executive editor\n\xa7 achievements.moreRefactoring.description: made the most 'refactoring' tags\n\xa7 achievements.longestMessage.title: So many conversations...\n\xa7 achievements.longestMessage.description: the longest commit message of all time\n\xa7 achievements.moreTasksInDay.title: Speed racer\n\xa7 achievements.moreTasksInDay.description: record for the number of tasks closed in a day\n\xa7 achievements.hasCommitFrom0to7.title: Night watch\n\xa7 achievements.hasCommitFrom0to7.description: a commit for every hour of the night\n\xa7 achievements.noCommitOnDay.title: Technical break\n\xa7 achievements.noCommitOnDay.description: there is a certain hour and day in working time when never commits\n\xa7 achievements.hasCommitEveryTime.title: Died at work\n\xa7 achievements.hasCommitEveryTime.description: a commit for every hour of each day (including weekends)\n\xa7 achievements.commitsAfter1800.title: Business Time\n\xa7 achievements.commitsAfter1800.description: no commits after 6:00 PM\n\xa7 achievements.moreFix.title: Bug hunter\n\xa7 achievements.moreFix.description: most closed bugs\n\xa7 achievements.lessWorkDays.title: Count me out\n\xa7 achievements.lessWorkDays.description: least working days\n\xa7 achievements.moreCreateCode.title: Creator\n\xa7 achievements.moreCreateCode.description: tends to add code more than others\n\xa7 achievements.moreRemoveCode.title: Destroyer\n\xa7 achievements.moreRemoveCode.description: tends to remove code more than others\n\xa7 achievements.moreChangeCode.title: Reformer\n\xa7 achievements.moreChangeCode.description: tends to change code more than others\n\xa7 achievements.moreStyle.title: Fashion police\n\xa7 achievements.moreStyle.description: tends to change CSS more than others\n\xa7 achievements.moreOnHoliday.title: No life\n\xa7 achievements.moreOnHoliday.description: relatively many commits in non-working hours\n\xa7 achievements.morePRMerge.title: Show me your pass\n\xa7 achievements.morePRMerge.description: more often than others, presses the \"Merge\" button for PR\n\xa7 achievements.longWaitPR.title: Tomorrow 100% be merge\n\xa7 achievements.longWaitPR.description: created PR that waited more than a month on the review\n\xa7 achievements.moreLongWaitPR.title: A long time ago in a galaxy far, far away\n\xa7 achievements.moreLongWaitPR.description: created PR that has been waiting for a review the longest\n\xa7 achievements.oneExtension.title: My name is LEGION\n\xa7 achievements.oneExtension.description: only this man works with files of a certain extension\n\xa7 achievements.fileRush.title: Zerg Rush\n\xa7 achievements.fileRush.description: created the most files in the project\n\xa7 achievements.moreLintHint.title: Grammar Nazi\n\xa7 achievements.moreLintHint.description: more than anyone created or changed the code-style rules\n\xa7 achievements.moreReadMe.title: Chronicler\n\xa7 achievements.moreReadMe.description: more than anyone created or modified MD files\n\xa7 achievements.moreDevOps.title: DevOps\n\xa7 achievements.moreDevOps.description: more than anyone created or modified files for CI/CD\n\xa7 achievements.moreTests.title: Tester\n\xa7 achievements.moreTests.description: more than anyone created or modified files for testing\n\xa7 achievements.allRelease.title: Full house\n\xa7 achievements.allRelease.description: there is a release compiled only from his tasks\n\xa7 achievements.firstCommit.title: First come, first served\n\xa7 achievements.firstCommit.description: first commit on the project\n\xa7 achievements.lastCommit.title: I've finished\n\xa7 achievements.lastCommit.description: last commit on the project\n\xa7 achievements.firstLastCommit.title: From beginning to end\n\xa7 achievements.firstLastCommit.description: first and last commit on the project\n\xa7 achievements.longFilePath.title: Deep cellar\n\xa7 achievements.longFilePath.description: the first created the file with the deepest directory\n\xa7 achievements.longFileName.title: Size matters\n\xa7 achievements.longFileName.description: created the file with the longest name\n\xa7 achievements.workOnWeekends.title: Work not walk\n\xa7 achievements.workOnWeekends.description: at least once worked on weekends\n\xa7 achievements.removeCreateFile.title: Dig out the stewardess\n\xa7 achievements.removeCreateFile.description: recover removed file\n\xa7 achievements.renameFile.title: Astana Nur-Sultan Astana\n\xa7 achievements.renameFile.description: rename file and rollback\n\xa7 achievements.longTask.title: Easy task\n\xa7 achievements.longTask.description: worked on task more than three months\n\xa7 achievements.haveNotEmail.title: Mailman\n\xa7 achievements.haveNotEmail.description: empty email field in git config\n\xa7 achievements.moreAddedFolders.title: Director \n\xa7 achievements.moreAddedFolders.description: created the most directories\n\xa7 achievements.horoscope1.title: Mercury Retrograde for Capricorn\n\xa7 achievements.horoscope2.title: Mercury Retrograde for Aquarius\n\xa7 achievements.horoscope3.title: Mercury Retrograde for Pisces\n\xa7 achievements.horoscope4.title: Mercury Retrograde for Aries\n\xa7 achievements.horoscope5.title: Mercury Retrograde for Taurus\n\xa7 achievements.horoscope6.title: Mercury Retrograde for Gemini\n\xa7 achievements.horoscope7.title: Mercury Retrograde for Cancer\n\xa7 achievements.horoscope8.title: Mercury Retrograde for Leo\n\xa7 achievements.horoscope9.title: Mercury Retrograde for Virgo\n\xa7 achievements.horoscope10.title: Mercury Retrograde for Libra\n\xa7 achievements.horoscope11.title: Mercury Retrograde for Scorpio\n\xa7 achievements.horoscope12.title: Mercury Retrograde for Sagittarius\n\xa7 achievements.horoscope1.description: by the month of the first commit\n\xa7 achievements.horoscope2.description: by the month of the first commit\n\xa7 achievements.horoscope3.description: by the month of the first commit\n\xa7 achievements.horoscope4.description: by the month of the first commit\n\xa7 achievements.horoscope5.description: by the month of the first commit\n\xa7 achievements.horoscope6.description: by the month of the first commit\n\xa7 achievements.horoscope7.description: by the month of the first commit\n\xa7 achievements.horoscope8.description: by the month of the first commit\n\xa7 achievements.horoscope9.description: by the month of the first commit\n\xa7 achievements.horoscope10.description: by the month of the first commit\n\xa7 achievements.horoscope11.description: by the month of the first commit\n\xa7 achievements.horoscope12.description: by the month of the first commit\n\xa7 achievements.111.description: test\n","\n\xa7 uiKit.console.button: Copier\n\xa7 uiKit.console.notification: Texte copi\xe9\n\xa7 uiKit.dataLoader.page: Page\n\xa7 uiKit.dataLoader.size: Affich\xe9 par\n\xa7 uiKit.dataLoader.rows: lines.\n\xa7 uiKit.dataLoader.from: de\n\xa7 uiKit.dataLoader.all: Afficher tout\n\xa7 uiKit.hoursChart.work: temps de travail standard (Les jours ouvrables de 07h00 \xe0 20h00)\n\xa7 uiKit.hoursChart.weekend: Jours ou heures avant/apr\xe8s les jours ouvrables\n\xa7 uiKit.hoursChart.days: La somme des commits au cours de tout le temps un certain jour et une certaine heure\n\xa7 uiKit.page.remove: Supprimer\n\xa7 uiKit.nothingFound.common.title: Il n\u2019y a pas ou pas assez de donn\xe9es pour afficher.\n\xa7 uiKit.nothingFound.common.description: Le syst\xe8me traite plus de donn\xe9es si les commits sont sign\xe9s au format [Git commit message convention|https://www.conventionalcommits.org/en/v1.0.0/]. Mod\xe8le:\n\xa7 uiKit.nothingFound.common.console: Num\xe9ro_adresse type(modules): explication\n\xa7 uiKit.nothingFound.common.example: Par exemple:\n\xa7 uiKit.nothingFound.staff.title: Il n & apos; y a pas de donn\xe9es sur ce fonctionnaire.\n\xa7 uiKit.nothingFound.staff.description1\nIl a apport\xe9 des modifications pas tous les jours ouvrable. Par cons\xe9quent, il a re\xe7u le statut \xabAssistant\xbb.\nLa statistique du collaborateur avec ce statut peut ne pas \xeatre prise en compte. Son impact est insignifiant.\n\xa7 uiKit.nothingFound.staff.description2\nLe syst\xe8me ne calcule pas pour lui plusieurs indicateurs.\nSi c\u2019est une erreur et que la statistique pour ce collaborateur doit \xeatre prise en compte, acc\xe9dez \xe0 la section \u201cParam\xe8tres\u201d et modifiez son type.\n\xa7 common.title: Git statistique\n\xa7 common.filters: Filtres\n\xa7 common.notifications.save: Modifications enregistr\xe9es\n\xa7 common.notifications.setting: Param\xe8tres enregistr\xe9s\n\xa7 common.fileLoader.notification: Cant open file $1\n","\n\xa7 sidebar.switch.team: \xc9quipe\n\xa7 sidebar.switch.person: Employ\xe9\n\xa7 sidebar.buttons.settings: R\xe9glages\n\xa7 sidebar.buttons.print: Impression\n\xa7 sidebar.buttons.share: Share\n\xa7 sidebar.buttons.logout: Logout\n\xa7 sidebar.filters.all: \xe0 toute heure\n\xa7 sidebar.filters.year: ann\xe9e\n\xa7 sidebar.filters.halfYear: demi-ann\xe9e\n\xa7 sidebar.filters.month: mois\n\xa7 sidebar.filters.week: semaine\n\xa7 sidebar.team.total: Informations g\xe9n\xe9rales\n\xa7 sidebar.team.scope: modules\n\xa7 sidebar.team.author: Employ\xe9s\n\xa7 sidebar.team.type: Types de t\xe2ches\n\xa7 sidebar.team.pr: injection de code\n\xa7 sidebar.team.day: Au jour le jour\n\xa7 sidebar.team.week: Le semaine\n\xa7 sidebar.team.month: Par mois\n\xa7 sidebar.team.files: Fichiers\n\xa7 sidebar.team.removedFiles: Fichiers supprim\xe9s\n\xa7 sidebar.team.extension: Extensions\n\xa7 sidebar.team.tasks: Liste des t\xe2ches\n\xa7 sidebar.team.release: Releases\n\xa7 sidebar.team.hours: Horaire\n\xa7 sidebar.team.commits: all commits\n\xa7 sidebar.team.changes: Tous les changements\n\xa7 sidebar.team.words: Mots populaires\n\xa7 sidebar.team.building: Quiz\n\xa7 sidebar.team.refactor: Refactoring\n\xa7 sidebar.team.company: Companies\n\xa7 sidebar.team.department: Departments\n\xa7 sidebar.team.country: Locations\n\xa7 sidebar.team.settings: R\xe9glages\n\xa7 sidebar.person.total: Informations g\xe9n\xe9rales\n\xa7 sidebar.person.money: Co\xfbt des travaux\n\xa7 sidebar.person.speed: Vitesse\n\xa7 sidebar.person.day: Au jour le jour\n\xa7 sidebar.person.week: Une semaine\n\xa7 sidebar.person.month: Par mois\n\xa7 sidebar.person.tasks: Tasks\n\xa7 sidebar.person.hours: Horaire\n\xa7 sidebar.person.commits: all commits\n\xa7 sidebar.person.changes: Tous les changements\n\xa7 sidebar.person.words: Mots populaires\n\xa7 sidebar.person.settings: R\xe9glages\n",'\n\xa7 recommendations.modal.cancel: Ok\n\xa7 recommendations.modal.open: More\n\xa7 recommendations.title\nRecommendations and facts\n\n\xa7 recommendations.timestamp.firstCommit.description\nmade the first commit\n\nDay of the Week: $1\n\n\xa7 recommendations.timestamp.lastCommit.description\nmade the last commit\n\nDay of the Week: $1\n\n\xa7 recommendations.timestamp.common.title: $1 days\n\xa7 recommendations.timestamp.allDays.description: from the first to the last commit (including weekends and holidays).\n\xa7 recommendations.timestamp.lossesDays.description: days without commits, even considering weekends, vacation, and public holidays.\n\xa7 recommendations.timestamp.weekendDays.description\nworking on weekends\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- employees burn out faster;\n\n\xa7 recommendations.timestamp.regularWeekendWord.title: Regular Overtime\n\xa7 recommendations.timestamp.sometimeWeekendWord.title: Occasional overtime\n\xa7 recommendations.timestamp.weekendWord.description\nIt might be advisable to change the project manager, analyst, and architect.\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- the quality of the product is usually low;\n- some employees resign;\n- new errors emerge due to the rush;\n\n# Most likely:\n- deadlines were incorrectly estimated at the beginning;\n- technical specifications are missing;\n- weak analytics;\n- weak architecture (no architect was hired, and the team consists of mid-level developers);\n- started writing code first, then planning;\n- lack of proper processes to understand mistakes;\n\n\xa7 recommendations.timestamp.neverWeekendWord.title: Usually Without Overtime\n\xa7 recommendations.timestamp.neverWeekendWord.description\nBut sometimes it happens.\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- employees burn out faster;\n\n\xa7 recommendations.scope.parallelism.not.title\nNo parallel work\n\n\xa7 recommendations.scope.parallelism.not.description\nany feature at any given time is done by one person.\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is less than 1.3, we consider that there is usually no parallel work within most features;\n\n# Why this is bad:\n- increases bus factor;\n- employees develop more slowly;\n- difficult to properly check an employee\'s work;\n\n# Why this is good:\n- experts emerge who are deeply immersed in the subject area and can offer more quality solutions;\n- most likely there are no merge conflicts;\n- the project can quickly develop in different directions simultaneously;\n\n\xa7 recommendations.scope.parallelism.has.title\nSome Work Done in Parallel\n\n\xa7 recommendations.scope.parallelism.has.description\nSometimes a feature is worked on simultaneously by several people.\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is from 1.3 to 2.0, we consider that some of the work within different features is sometimes done in parallel;\n\n\xa7 recommendations.scope.parallelism.every.title\nParallel Work\n\n\xa7 recommendations.scope.parallelism.every.description\nany feature at any given time is worked on by several people\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is more than two, we consider that most of the work within different features is usually done in parallel;\n\n\xa7 recommendations.scope.money\nthis is the estimated cost for the work on this project.\n\n# Calculation method:\n- person-days spent on development are multiplied by the individual salaries of the developers;\n\nTo change the salary of each developer for a more accurate total, go to the "Settings" section.\n\n# Is this too much or too little?\nTo answer this question, consider the following:\n- Could a ready-made solution have been purchased for this amount of money?\n- Could a better product have been developed for this amount of money?\n\nIf the answer to both questions is "yes," then perhaps developing from scratch was not worth the money spent.\n \n\xa7 recommendations.scope.bus.everyHasOne.title\nBus factor = 1\n\n\xa7 recommendations.scope.bus.everyHasOne.description\nMost features are deeply understood by only one person.\nIt\'s necessary to rotate people.\n\n# Why this is bad:\n- if employees resign, it will be difficult to continue their work;\n- it\u2019s impossible to control the quality of their code;\n\n# How the sample is chosen:\n- more than 80% of commits in a feature are made by one person;\n- the project has more than 60% of such features;\n\n\xa7 recommendations.scope.bus.oneMaintainer\none person is deeply involved in a feature.\n\n# Why this is bad:\n- if they resign, it will be hard to continue development;\n- the quality of code-review decreases;\n- it\u2019s difficult to parallelize development when needed;\n\n# How the sample is chosen:\n- more than 80% of commits in a feature are made by one person;\n\n\xa7 recommendations.scope.types.process.title\nPoor processes\n\n\xa7 recommendations.scope.types.process.description\nMost features contain one type of task.\n\n\xa7 recommendations.scope.types.one\nfeatures contain one type of task.\n\n\xa7 recommendations.scope.types.common\nIt\'s possible that developers are incorrectly signing commits or the manager is entering the same type of tasks.\n\n# Why this is important:\n- it\'s impossible to hand over support to another team;\n- it\'s impossible to release a "boxed" version;\n- strong dependence on specific developers;\n- a high number of errors and low code quality;\n- potential slowdown in development in the future;\n\n# The manager\'s mistake:\n- viewing the product only from the perspective of a "working demo";\n\n# What should be done:\n- tests;\n- bugs (identified through testing);\n- refactoring (as architecture may change);\n- documentation;\n- style revisions (as a result of focus group feedback);\n\n\xa7 recommendations.scope.plan.title\nDevelop a long-term plan\n\n\xa7 recommendations.scope.plan.description\ntaking architecture into account.\n\nThis plan should immediately focus on the most challenging tasks.\n\n# Why the lack of a plan is bad:\n- employees create a minimally viable version without planning for expansion points. After this, unscalable code is written, which slows down future features;\n\n# The manager\'s mistake:\n- they haven\'t shown how the product will develop further and where the growth points will be;\n\n# How it should be done:\n- a global product development plan is created;\n- a global architecture development plan is created (with developers and DBAs);\n- potential significant changes are discussed upfront at the schematic level;\n\n\xa7 recommendations.scope.cost.title\nEvaluate Investment in a Feature\n\n\xa7 recommendations.scope.cost.description\nin terms of potential profit.\n\nFeatures that are expensive to develop but bring little profit may need to be postponed or even canceled. This will make the project more commercially successful.\n\n\xa7 recommendations.author.lotOfLazy.title: Too little code: $1\n\xa7 recommendations.author.lotOfLazy.description\nShould they be fired?\n\n# Composition: \n- $1;\n\n# Answer the questions:\n- are they a team leader, architect, or analyst?\n- is this their primary project?\n- are there any dependencies on them?\n\n# Why it makes no sense to correct\nThe total costs for the developer are already more than the profit from their work.\nIf we believe that there were no objective hindrances to their work, then the person either does not want to work at all or is working on two projects simultaneously.\nFiring and replacing them with a new employee seems justified from a statistical point of view.\n\n\xa7 recommendations.author.manyLazy.title: Little code: $1\n\xa7 recommendations.author.manyLazy.description\nNeeds to be monitored.\n\n# Composition: \n- $1;\n\n# How the sample is chosen:\n- in test samples, a good programmer writes code for more than 80% of the time;\n- in this case, the indicator is between 60% and 80%;\n\n# How to monitor:\n- break tasks into 1..2 days;\n- ask for a status update every day;\n- ensure tasks are well defined and ready for development;\n- arrange pair programming to check actual speed;\n\n\xa7 recommendations.author.oneTypeMans\nreceives too many monotonous tasks of the same type. Risk of burnout.\n\n# Why this is important:\n- if an employee burns out, their work speed will decrease;\n- professional growth slows down;\n- the likelihood of resignation increases;\n\n# How the sample is chosen:\n- the type of task is determined for each commit;\n- if more than 70% of tasks are of the same type, it means the person is doing the same thing repeatedly;\n\n\xa7 recommendations.author.workToday.title: Working $1\n\xa7 recommendations.author.workToday.description\non the project at this moment.\n\n# Composition: \n- $1;\n\n# Why specifically them:\n- more than 50% of workdays;\n- have worked during the last 30 days;\n\n\xa7 recommendations.author.dismissed.title: Dismissed $1\n\xa7 recommendations.author.dismissed.description\nor worked for a short period.\n\n# Composition:\n- $1;\n\n# Why specifically them:\n- worked at a normal pace (apparently, this is their main repository);\n- no commits in the last month;\n- vacation usually lasts 14 days (their absence does not resemble a vacation);\n\n\xa7 recommendations.author.staff.title: Assisting $1\n\xa7 recommendations.author.staff.description\nPeople of other specializations who have committed something.\n\n# Composition: \n- $1;\n\n# Why specifically them:\n- this is not an open-source project;\n- workdays less than 15% of the total number;\n- modify roughly the same files;\n\n\xa7 recommendations.author.projectType.openSource.title\nOpen Project\n\n\xa7 recommendations.author.projectType.openSource.description\nthey do not work five days a week here.\n\nThe project may be closed, but this work pace is typical for open libraries on GitHub.\n\n# Assessment method:\n- statistics are taken for all active developers;\n- the average number of working days and days without commits is calculated;\n- for open-source libraries, working days are usually a maximum of 15..20%;\n\n# Consequences\nFor projects where work is not constant, many indicators do not make sense. Therefore, indicators like days without commits, speed, etc., will be hidden.\n\nTypically, such projects are assessed before starting the development of their own closed version. The most interesting indicators in this case are the probable cost and total development time.\n\n\xa7 recommendations.author.projectType.easy.title\nLight Workload\n\n\xa7 recommendations.author.projectType.easy.description\ntoo many days without commits.\n\nIt is necessary to understand why the team is not writing code.\n\n# Assessment method:\n- take statistics from all active developers;\n- calculate the average number of working days and days without commits;\n- workload is considered light if the percentage of days without commits is between 5% and 20%;\n\n# Possible reasons:\n- there are actually no tasks;\n- there are tasks, but they fit well with the current architecture;\n- developers are distracted by meetings;\n- the team is not working;\n\n# Solutions:\n- discuss the issue with the team;\n- reduce task granularity so that one or two tasks can be completed in a day;\n- introduce daily meetings to check the status of tasks;\n- arrange pair programming sessions to ensure that the developer can work faster;\n\n\xa7 recommendations.author.manager.title\nSet Deadlines\n\n\xa7 recommendations.author.manager.description\nEvery task should have a clear deadline.\n \nThis will prevent dragging out its completion for several days or weeks.\n\n# Indicators to check:\n- the number of days spent on one task by an employee;\n- the number of days waiting for PR merge (PR statistics page);\n\n\xa7 recommendations.author.shorTalk.title\nConduct Daily Meetings\n\n\xa7 recommendations.author.shorTalk.description\nthey help stay informed about the project.\n \nDo not stretch them by getting sidetracked on irrelevant topics.\n\n# Questions the employee should answer:\n- what was done;\n- what will be done;\n- are there any issues;\n\n# Interruptions should occur if:\n- they start describing minor details in-depth, which are not important;\n- they steer the conversation away from the original plan;\n\n# Why this is important:\nOften an employee who does nothing tries to avoid the answer by telling a bunch of unnecessary details of their work. This lulls the participants\' attention and stretches the time for a response. It creates an impression that they are busy, even though there was no actual work done.\n\n\xa7 recommendations.author.ipr.title\nDevelop a Training Plan\n\n\xa7 recommendations.author.ipr.description\nfor each employee.\n\n*Individual training plan* is a list of goals and tasks that help a person develop in a certain area.\n\n# How to create a plan:\n- create a competency matrix;\n- identify which competencies have the least knowledge and experience;\n- find out which of these competencies are of interest to the employee;\n- come up with 3..5 goals within each such competency for the next six months or a year;\n- try to do something every month to achieve one goal;\n- remind every month about the overall plan to achieve these goals;\n\n# Does a manager need a plan?\nYes, the manager should also make a plan for themselves. If there is no higher-level manager, they should self-assess.\n\n# Why this is important:\n- employees become more loyal to the company;\n- you get more qualified personnel for the same money;\n\n\xa7 recommendations.author.oneToOne.title\nConduct One-on-One Meetings Every Month\n\n\xa7 recommendations.author.oneToOne.description\nit helps to identify problems at an early stage.\n\n*One-to-one* is a regular personal meeting of a manager with a subordinate. Such meetings typically discuss everything important to the employee, what concerns them, and what they can share with the manager in private.\n\n# Why this is important:\n- easy to find out who is overburdened and who has free time;\n- possible to prevent employee burnout;\n- quick feedback can be obtained about processes that you might not notice;\n- trust is built, making employees more loyal to the company;\n- increases employee motivation and engagement;\n\n\xa7 recommendations.author.club.title\nGo to a Bar\n\n\xa7 recommendations.author.club.description\nonce a month or two.\n\nThis will help build informal communication within the team and bring the team together, even if the interaction is brief.\n\n# Why this is important:\n- quick feedback can be obtained about processes that you might not notice;\n- trust is built, making employees more loyal to the company;\n- increases employee engagement;\n\n\xa7 recommendations.hour.onlyWork.title: No Weekends Here\n\xa7 recommendations.hour.onlyWork.description: The project manager should probably be fired.\n\xa7 recommendations.hour.weekends.title: Working on Weekends\n\xa7 recommendations.hour.weekends.description: The project manager should probably be checked.\n\xa7 recommendations.hour.easy.title: There Are Problems\n\xa7 recommendations.hour.easy.description: There are likely crunch times and work is needed on weekends.\n\xa7 recommendations.week.lazyDays.down.title: Fewer Absences\n\xa7 recommendations.week.lazyDays.down.description: this indicator has dropped over the last three weeks\n\xa7 recommendations.week.lazyDays.up.title: More Absences\n\xa7 recommendations.week.lazyDays.up.description: no tasks or stricter control is needed\n\xa7 recommendations.week.notWork.title: Consistently Underperforms\n\xa7 recommendations.week.notWork.description: as every week the code is not 100% of the time\n\xa7 recommendations.week.upWork.title: Consistently Overworks\n\xa7 recommendations.week.upWork.description: as every week code is written on weekend days\n\xa7 recommendations.week.task.up.title: Productivity is growing\n\xa7 recommendations.week.task.up.description: or tasks have become too small. Need to check. If granularity is the same - reinforce the result.\n\xa7 recommendations.week.task.lazyMaintainer.description: consistently leads in absences. Fire?\n\xa7 recommendations.week.task.down.title: Productivity is Falling\n\xa7 recommendations.week.task.down.description\nor tasks are poorly split. Need to check. If granularity is the same - take control.\n\n# Assessment method:\n- the number of tasks per day that are being worked on has been steadily decreasing over the last three weeks.\n\n# Possible errors:\n- tasks could have been more complex than they seemed;\n- tasks could have had a large volume of work (need to check if the number of changes is also decreasing during this period)\n\n\xa7 recommendations.type.everyHasOne.title: Not signing task types\n\xa7 recommendations.type.everyHasOne.description: Most task types are done by one person.\n\xa7 recommendations.type.oneMaintainer.title: Narrow Specialization\n\xa7 recommendations.type.oneMaintainer.description\nmost tasks of one type are done by the same people.\n\n# Task types:\n\n\xa7 recommendations.type.common\n# It might not be the case\n\nMake sure that other employees correctly sign commits.\n\nSteps to ensure this:\n- set up a pre-commit check for commit messages;\n- explain to the team the need to indicate the type;\n- check in new branches that employees follow this rule;\n\n# If it is indeed the case\n\nYou have set up checks and ensured that the same employee does tasks of the same type.\n\nWhy this is bad:\n- their resignation will halt a whole bunch of processes;\n- it reduces the competence of other team members;\n- difficult to understand their edits at a higher level;\n\nHow to fix this:\n- distribute different types of tasks evenly;\n- change the area of work (tests, documentation, bugs) among employees every sprint;\n\n\xa7 recommendations.type.fewTypes.title\nThis is a local product\n\n\xa7 recommendations.type.fewTypes.description\nfor a specific customer or problem.\n\n# Signs of a "global" product:\n- localization;\n- documentation;\n- a large volume of tests;\n- visual customization;\n- refactoring of bottlenecks;\n- etc.\n\n# Why this product looks like a "local" one:\n- each "global" sign will be outweighed by its type of task;\n- the more "global" signs, the more likely a "global" product;\n\nIn this case, we see a small number of types, which likely indicates shortcomings that prevent the product from being easily scaled to the global market and sold in other countries.\n\n# It might not be the case\nBased on file types, we can assume the type of program (website, server application, DevOps scripts, etc.). For a frontend application, our hypothesis will be more accurate than for DevOps scripts, which might just be a micro-module of initialization.\n\n\xa7 recommendations.type.diff.title\nSplit the popular type into subtypes\n\n\xa7 recommendations.type.diff.description\nto detail errors.\n\nTypically, the task type labeled "bug fixing" is leading. This makes the statistics weakly detailed.\n\n*If you encounter this situation*, you can break down this type into subtypes (e.g., based on the location of detection).\n\nConsider several options for subtypes:\n- fix_dev (error detected during development);\n- fix_test (error detected during testing);\n- fix (error detected in production);\n\n\xa7 recommendations.type.buddy.title\nAccumulate minor tasks\n\n\xa7 recommendations.type.buddy.description\nfor new employees.\n\n# If a task is:\n- not important;\n- not big;\n- doesn\'t require deep immersion in the context;\n- more about refactoring than new code;\n\n# Put it in the backlog with the label "for beginners".\n\nWhen a new employee arrives, you will be able to immediately pull out a bunch of small and varied tasks for them to get acquainted with the project.\n\nAlso, if you have a lull in work, you can pull out one such minor task from the backlog.\n',"\n\xa7 page.settings.document.title: Display settings\n\xa7 page.settings.document.name: Page title\n\xa7 page.settings.document.language: Interface language\n\xa7 page.settings.document.depersonalize: Hide personal data\n\xa7 page.settings.links.title: Link prefixes\n\xa7 page.settings.links.task: For task numbers\n\xa7 page.settings.links.pr: For PR\n\xa7 page.settings.user.title: Individual settings\n\xa7 page.settings.user.notFound: No individual settings. Data for all employees are calculated based on common parameters.\n\xa7 page.settings.user.subTitle: Addendum to employment contract \u2116$1\n\xa7 page.settings.user.from: Start date\n\xa7 page.settings.mailmap: .mailmap example\n\xa7 page.settings.common.title: General salary data\n\xa7 page.settings.common.type.title: Project work type\n\xa7 page.settings.common.type.full: Full-time employment\n\xa7 page.settings.common.type.part: Project work\n\xa7 page.settings.common.salary: Monthly salary in USD (US dollar, $)\n\xa7 page.settings.common.currency: Currency for view\n\xa7 page.settings.common.workDaysInYear: Number of working days in a year\n\xa7 page.settings.common.vacationDaysInYear: Number of vacation days in a year\n\xa7 page.settings.common.workDaysInWeek: Workdays\n\xa7 page.settings.form.save: Save\n\xa7 page.settings.form.cancel: Cancel\n\xa7 page.settings.form.remove: Remove\n\xa7 page.settings.form.addEmployee: Add an employee\n\xa7 page.settings.form.addContract: Add an employment contract\n","\n\xa7 page.welcome.step1: Ex\xe9cutez la commande \xe0 la racine de votre projet\n\xa7 page.welcome.step3: transf\xe9rer\n\xa7 page.welcome.step4: fichier log.txt sur cette page\n\xa7 page.welcome.description: Git cr\xe9er un fichier log.txt. Il contient les donn\xe9es pour g\xe9n\xe9rer le rapport. Ex\xe9cutez la commande git shortlog -s -n -e si vous n'avez pas besoin du rapport. Cr\xe9er un fichier [.mailmap|https://git-scm.com/docs/gitmailmap] \xe0 la racine du projet est de combiner les statistiques sur les employ\xe9s.\n\xa7 page.welcome.warning1: Le service ne STOCKE ni ne TRANSMET vos donn\xe9es. Tous les calculs sont effectu\xe9s sur votre ordinateur.\n\xa7 page.welcome.warning2: Le service ne COLLECTE pas de STATISTIQUES sur les projets. Vous pouvez regarder [code source|https://github.com/bakhirev/assayo].\n\xa7 page.common.words.title: Statistiques par mots\n\xa7 page.common.words.description: le mot le plus populaire. Rencontre $1 fois.\n\xa7 page.common.commits.title: Nombre de commits par jour\n\xa7 page.common.commits.description: ($1) le jour le plus productif par le nombre de commits.\n\xa7 page.common.commits.title2: $1 commits faits: $2\n\xa7 page.common.filter.allUsers: Pas d'importance\n\xa7 page.print.modal.title: On imprime quoi?\n\xa7 page.print.modal.page: Page actuelle\n\xa7 page.print.modal.type: Section actuelle\n\xa7 page.print.modal.all: Toutes les statistiques\n\xa7 page.print.modal.cancel: Annulation\n\xa7 page.print.tableOfContents: Table des mati\xe8res\n\xa7 page.print.title: Rapport sur d\xe9p\xf4t git\n\xa7 page.print.sub_title: \xab$1\xbb\n\xa7 page.print.description: Les donn\xe9es du rapport ont \xe9t\xe9 extraites de l'historique des commits.\n\xa7 page.team.author.statusChart.title: Status\n\xa7 page.team.author.daysChart.title: Days of work\n\xa7 page.team.author.daysChart.item: days\n\xa7 page.team.author.days.half: half year\n\xa7 page.team.author.days.one: year\n\xa7 page.team.author.days.15: year and a half\n\xa7 page.team.author.days.two: two years\n\xa7 page.team.author.days.more: more than two years\n\xa7 page.team.author.title: Details\n\xa7 page.team.author.description1: Partie des statistiques (vitesse de travail, argent d\xe9pens\xe9, etc.) pour les collaborateurs de type \u201cAssistant\u201d, ce n\u2019est pas une r\xf4le permanente dans le projet. Leur travail est insignifiant et peut \xeatre ignor\xe9.\n\xa7 page.team.author.description2: Le tri par d\xe9faut est le tri par nombre de t\xe2ches et de groupes (employ\xe9s actuels, licenci\xe9s et aidants).\n\xa7 page.team.author.status: Status\n\xa7 page.team.author.company: Company\n\xa7 page.team.author.firstCommit: First commit\n\xa7 page.team.author.lastCommit: Last\n\xa7 page.team.author.daysAll: Total days\n\xa7 page.team.author.types: Type de travaux\n\xa7 page.team.author.commits: Commits\n\xa7 page.team.author.commitsSmall: commits\n\xa7 page.team.author.tasks: t\xe2che\n\xa7 page.team.author.tasksSmall: t\xe2che\n\xa7 page.team.author.workedLosses: Jours avec et sans commits\n\xa7 page.team.author.worked: travail\n\xa7 page.team.author.losses: jours sans commits\n\xa7 page.team.author.days: jours\n\xa7 page.team.author.daysForTask: Jours par t\xe2che\n\xa7 page.team.author.scopes: Mise au point\n\xa7 page.team.author.moneyAll: L'argent re\xe7u\n\xa7 page.team.author.moneyWorked: Travaillas\n\xa7 page.team.author.moneyLosses: Trop-per\xe7u\n\xa7 page.team.author.type.work: works\n\xa7 page.team.author.type.dismissed: dismissed\n\xa7 page.team.author.type.staff: staff\n\xa7 page.team.hours.title: R\xe9partition du travail pour chaque jour de la semaine\n\xa7 page.team.month.title: Calendrier du projet\n\xa7 page.team.month.first: (first work day)\n\xa7 page.team.month.last: (last work day)\n\xa7 page.team.scope.title: Statistiques par module\n\xa7 page.team.scope.scope: Mise au point\n\xa7 page.team.scope.days: Esclave. jours\n\xa7 page.team.scope.authorsDays: Jours-homme\n\xa7 page.team.scope.tasks: T\xe2ches\n\xa7 page.team.scope.commits: Commits\n\xa7 page.team.scope.commitsSmall: commits\n\xa7 page.team.scope.types: Type de travaux\n\xa7 page.team.scope.authors: Contribution personnelle\n\xa7 page.team.scope.cost: Co\xfbt\n\xa7 page.team.type.title: Statistiques par type de t\xe2che\n\xa7 page.team.type.description: *Contribution personnelle* compte tenu du nombre de commits plut\xf4t que de la taille des lignes ou fichiers modifi\xe9s. Vous devez donc \xe9galement consulter la section \u201cAnalyse des fichiers\u201d afin d\u2019\xe9valuer l\u2019ampleur des modifications.\n\xa7 page.team.type.type: Type de travail\n\xa7 page.team.type.unknown: unknown\n\xa7 page.team.type.tasks: \u0417\u0430\u0434\u0430\u0447\n\xa7 page.team.type.tasksSmall: T\xe2che\n\xa7 page.team.type.days: Jours\n\xa7 page.team.type.daysSmall: Jours\n\xa7 page.team.type.authorsDays: Jours-homme\n\xa7 page.team.type.commits: Commits\n\xa7 page.team.type.authors: Contribution personnelle\n\xa7 page.team.total.titleA: Volume de travaux\n\xa7 page.team.total.titleB: Co\xfbt\n\xa7 page.team.total.daysWorked.title: jours-homme\n\xa7 page.team.total.daysWorked.description: Seuls les jours o\xf9 les commits ont \xe9t\xe9 effectu\xe9s sont pris en compte\n\xa7 page.team.total.commits.title: commits\n\xa7 page.team.total.commits.description: Les branches supprim\xe9es ne comptent pas\n\xa7 page.team.total.daysLosses.title: jours sans commits\n\xa7 page.team.total.daysLosses.description: Tous les jours moins: vacances, week-ends, vacances, jours avec commits\n\xa7 page.team.total.employment.title: fonctionne / d\xe9missionnas\n\xa7 page.team.total.employment.description: Si un employ\xe9 n'a fait aucun commit dans un mois, il est consid\xe9r\xe9 comme licenci\xe9\n\xa7 page.team.total.moneyAll.title: g\xe9n\xe9rale\n\xa7 page.team.total.moneyAll.description: Co\xfbts salariaux totaux\n\xa7 page.team.total.moneyWorked.title: r\xe9elle\n\xa7 page.team.total.moneyWorked.description: Jours effectivement travaill\xe9s multipli\xe9s par le salaire moyen\n\xa7 page.team.total.moneyLosses.title: trop-per\xe7u possible\n\xa7 page.team.total.moneyLosses.description: Jours ouvrables pay\xe9s quand il n'y avait pas de commits\n\xa7 page.team.total.weekendPayment.title: travail le week-end\n\xa7 page.team.total.weekendPayment.description: Trop-per\xe7u total pour le travail de week-end\n\xa7 page.team.total.workSpeed.title: t\xe2ches par jour\n\xa7 page.team.total.workSpeed.description: Vitesse moyenne de travail de l'\xe9quipe avec la composition actuelle des employ\xe9s\n\xa7 page.team.total.moneySpeed.title: par mois\n\xa7 page.team.total.moneySpeed.description: Montant pr\xe9vu de la masse salariale, compte tenu de la composition actuelle du personnel, hors taxes et d\xe9penses connexes\n\xa7 page.team.total.description1: *Jours-homme* \u2014 c'est le travail d'un employ\xe9 pendant une journ\xe9e de travail. Par exemple, pour un jour calendaire, une \xe9quipe de trois employ\xe9s produit une charge de travail de trois jours-homme.\n\xa7 page.team.total.description2: *Jours d'absent\xe9isme* seuls les jours ouvrables o\xf9 les commits auraient pu \xeatre faits sont consid\xe9r\xe9s. Les week-ends, les jours f\xe9ri\xe9s et les vacances ne sont pas inclus dans le calcul.\n\xa7 page.team.total.description3: Carte *travaille et a d\xe9missionn\xe9* cela indique la composition effective des collaborateurs qui participent activement au projet. En outre, il y a des \u201cassistants\u201d, qui sont g\xe9n\xe9ralement des collaborateurs d\u2019une autre sp\xe9cialit\xe9 et qui peuvent parfois faire des commits sur le projet.\n\xa7 page.team.total.description4: *Trop-per\xe7u* \u0441 seulement les jours ouverts o\xf9 des commits auraient pu \xeatre faits sont comptabilis\xe9s. Les jours f\xe9ri\xe9s, les jours de cong\xe9s pay\xe9s et les jours ch\xf4m\xe9s ne sont pas pris en compte. C'est pourquoi le trop-pay\xe9 + le co\xfbt r\xe9el != g\xe9n\xe9ral. Le co\xfbt total comprend le paiement des week-ends, des jours f\xe9ri\xe9s et des vacances.\n\xa7 page.team.total.description5: *Travail le week-end* le calcul se fait selon un coefficient x2 sur le salaire du jour normal. Ce qui est affich\xe9 ici est pr\xe9cis\xe9ment le surco\xfbt (x1), car le fait m\xeame de travail suppl\xe9mentaire n\u2019est pas d\u2019int\xe9r\xeat ici. Nous ne regardons pas la vitesse \xe0 laquelle le budget est br\xfbl\xe9. Nous regardons le surco\xfbt lorsque la vitesse de travail augmente.\n\xa7 page.team.tree.title: Arborescence du projet avec les filtres s\xe9lectionn\xe9s\n\xa7 page.team.tree.filters.author: Employ\xe9\n\xa7 page.team.tree.filters.commits: Nombre de commits\n\xa7 page.team.tree.filters.help: Minimum commits que l'employ\xe9 a fait dans le fichier\n\xa7 page.team.tree.filters.all: Tous les employ\xe9s\n\xa7 page.team.tree.totalLines: Lines\n\xa7 page.team.tree.totalTasks: Tasks\n\xa7 page.team.tree.totalDays: Days\n\xa7 page.team.tree.tasks: tasks\n\xa7 page.team.tree.days: days\n\xa7 page.team.tree.add: Qui a Ajout\xe9\n\xa7 page.team.tree.change: Qui a chang\xe9\n\xa7 page.team.tree.remove: Qui a supprim\xe9\n\xa7 page.team.tree.line: lignes\n\xa7 page.team.tree.linesAdded: ajout\xe2tes\n\xa7 page.team.tree.linesChanged: changed\n\xa7 page.team.tree.linesRemoved: modifi\xe2tes\n\xa7 page.team.company.title: Details\n\xa7 page.team.company.employments.title: By number of employees\n\xa7 page.team.company.employments.item: employments\n\xa7 page.team.company.daysChart.title: By duration of the contract\n\xa7 page.team.company.daysChart.item: companies\n\xa7 page.team.company.active.yes: active\n\xa7 page.team.company.active.no: contract has expired\n\xa7 page.team.country.byTimezone: By the time of the last commit\n\xa7 page.team.country.filters.active: Works\n\xa7 page.team.country.filters.dismissed: Dismissed\n\xa7 page.team.country.filters.staff: Staff\n\xa7 page.team.country.pieByDomain.title: By email, timezone and language\n\xa7 page.team.country.pieByTimezone.title: By timezone\n\xa7 page.team.country.chart.item: employments\n\xa7 page.team.country.table.title: List of employees\n\xa7 page.team.country.table.country: Country\n\xa7 page.team.country.table.employments: Employments\n\xa7 page.team.country.travel.title: Trips (or VPN, or rebase)\n\xa7 page.team.country.travel.author: Employee\n\xa7 page.team.country.travel.fly: Number of flights\n\xa7 page.team.country.travel.path: Locations list\n\xa7 page.team.country.travel.date: Arrival date\n\xa7 page.team.country.travel.country: Location\n\xa7 page.team.refactor.title: Candidates for refactoring\n\xa7 page.team.refactor.lines: lines\n\xa7 page.team.refactor.tasks: tasks\n\xa7 page.team.refactor.days: days\n\xa7 page.team.refactor.path: Path\n\xa7 page.team.refactor.firstCommit: First commit\n\xa7 page.team.refactor.totalLines: Lines\n\xa7 page.team.refactor.totalTasks: Tasks\n\xa7 page.team.refactor.totalDays: Days in development\n\xa7 page.team.day.commits: Commits\n\xa7 page.team.day.activity: Activity\n\xa7 page.team.week.title: Statistiques par semaine\n\xa7 page.team.week.date: Date\n\xa7 page.team.week.numberTasks: Nombre de t\xe2ches\n\xa7 page.team.week.people: Nombre de personnes\n\xa7 page.team.week.line: Modification des lignes\n\xa7 page.team.week.days: Jours avec et sans commits\n\xa7 page.team.week.lossesDetails: Qui n'a pas commis\n\xa7 page.team.week.add: \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438\n\xa7 page.team.week.change: modifi\xe2tes\n\xa7 page.team.week.remove: supprim\xe2tes\n\xa7 page.team.week.hasCommits: il y avait des commits\n\xa7 page.team.week.hasNotCommits: il n'y avait pas de commits\n\xa7 page.team.week.days: jours\n\xa7 page.team.week.tasks: t\xe2ches\n\xa7 page.team.pr.task: t\xe2ches\n\xa7 page.team.pr.tasks: t\xe2ches\n\xa7 page.team.pr.firstCommitTime: Premier commit\n\xa7 page.team.pr.lastCommitTime: Dernier\n\xa7 page.team.pr.workDays: Average time spent working on a task\n\xa7 page.team.pr.delayDays: Average time of the PR review\n\xa7 page.team.pr.all.workDays: Time spent working on a task\n\xa7 page.team.pr.all.delayDays: Time of the PR review\n\xa7 page.team.pr.middleTimeRelease: The ratio of development time to review time\n\xa7 page.team.pr.chart.1day: day\n\xa7 page.team.pr.chart.3day: three days\n\xa7 page.team.pr.chart.7day: week\n\xa7 page.team.pr.chart.14day: two weeks\n\xa7 page.team.pr.chart.30day: month\n\xa7 page.team.pr.chart.more: more\n\xa7 page.team.pr.date: Date de diffusion\n\xa7 page.team.pr.mergeAuthor: Versai\n\xa7 page.team.pr.author: Employ\xe9\n\xa7 page.team.pr.work: d\xe9veloppement\n\xa7 page.team.pr.delay: attente\n\xa7 page.team.pr.days: jours\n\xa7 page.team.pr.oneTaskDays: Temps pass\xe9 sur une t\xe2che\n\xa7 page.team.pr.description1: *Temps de d\xe9veloppement* c\u2019est la diff\xe9rence de temps entre le premier et le dernier commit pour un probl\xe8me donn\xe9. Il n\u2019importe pas si il y avait des pauses pendant plusieurs jours entre les commits, ou non. Le fait m\xeame d\u2019avoir fait un quelconque commit augmente le temps.\n\xa7 page.team.pr.description2: *D\xe9lai d'attente* c'est le temps entre le dernier commit et l'injection de code. Il montre le r\xe9el simple en attendant quoi que ce soit.\n\xa7 page.team.pr.description3: *Pourquoi afficher le temps de d\xe9veloppement* sans se diviser en Coding et revue de code? Ensuite, pour montrer \xe0 l'entreprise le d\xe9lai de Livraison r\xe9el du code. L'attente des tests, les commentaires sur la revue, les probl\xe8mes de DevOps et d'autres imperfections du processus sont d\xe9j\xe0 pos\xe9s dans cette p\xe9riode.\n\xa7 page.team.pr.statByAuthors: Statistiques du personnel\n\xa7 page.team.pr.longDelay: Longue attente pour l'injection\n\xa7 page.team.pr.anonymous: PR without task number\n\xa7 page.team.pr.branch: Branch\n\xa7 page.team.tasks.task: T\xe2che\n\xa7 page.team.tasks.author: Auteur du premier commit\n\xa7 page.team.tasks.from: Premier commit\n\xa7 page.team.tasks.to: Dernier commit\n\xa7 page.team.tasks.daysInWork: Jours de travail\n\xa7 page.team.tasks.comments: Commentaires\n\xa7 page.team.extension.extension: File extensions\n\xa7 page.team.extension.type: File sub types\n\xa7 page.team.extension.name: Type\n\xa7 page.team.extension.path: Path\n\xa7 page.team.extension.current.count: Number\n\xa7 page.team.extension.removed.count: Number of removed\n\xa7 page.team.extension.files: files\n\xa7 page.team.release.download: Download\n\xa7 page.team.release.title: Release\n\xa7 page.team.release.from: Created date\n\xa7 page.team.release.to: Delivery date\n\xa7 page.team.release.prLength: Tasks\n\xa7 page.team.release.delay: Preparation days\n\xa7 page.team.release.waiting: Days of waiting for next release\n\xa7 page.team.department.employments.title: The size of the current teams\n\xa7 page.team.department.employments.item: of teams\n\xa7 page.team.author.employments.less1: one employee\n\xa7 page.team.author.employments.less2: two employees\n\xa7 page.team.author.employments.less3: three employees\n\xa7 page.team.author.employments.less6: up to six employees\n\xa7 page.team.author.employments.less9: up to nine employees\n\xa7 page.team.author.employments.less12: up to 12 employees\n\xa7 page.team.author.employments.less15: up to 15 employees\n\xa7 page.team.author.employments.more: more than 15\n\xa7 page.team.department.daysChart.title: Duration of the project\n\xa7 page.team.department.daysChart.item: projects\n\xa7 page.team.department.title: List of projects\n\xa7 page.team.department.code: Code\n\xa7 page.team.department.from: First commit\n\xa7 page.team.department.to: Last\n\xa7 page.team.department.authors: employees\n\xa7 page.team.department.tasks: tasks\n\xa7 page.team.department.totalDays: Working days\n\xa7 page.team.department.totalAuthors: Number of employees\n\xa7 page.person.print.photo.title: Photo\n\xa7 page.person.print.photo.description: place \xe0 la photographie\n\xa7 page.person.total.title: Caract\xe9ristiques de base\n\xa7 page.person.total.daysWorked.title: jours de travail\n\xa7 page.person.total.daysWorked.description: Seuls les jours o\xf9 les commits ont \xe9t\xe9 effectu\xe9s sont pris en compte\n\xa7 page.person.total.tasks.title: t\xe2ches\n\xa7 page.person.total.tasks.description: Si les commits sont correctement sign\xe9s\n\xa7 page.person.scoring.toolbar: The position according to this metric, relative to others. Two employees can take the same position if the values matches. Therefore, the total number of positions may be less than the number of employees.\n\xa7 page.person.character.title: Personnage\n\xa7 page.person.achievement.title: Les progr\xe8s\n\xa7 page.person.achievement.positive: Positifs\n\xa7 page.person.achievement.normal: Neutres\n\xa7 page.person.achievement.negative: N\xe9gatifs\n\xa7 page.person.achievement.description: Plus un collaborateur a accumul\xe9 d\u2019achievements n\xe9gatifs, plus il est probable qu\u2019il y ait une situation inhabituelle. Il se peut que vous deviez changer son mode de travail, ses t\xe2ches ou ses rapports. Vous devriez parler avec lui et d\xe9couvrir quels probl\xe8mes entravent son travail.\n\xa7 page.person.gets.title: Les g\xe8tes prises:\n\xa7 page.person.gets.description: \xabPrendre geth\xbb dans ce cas, cela signifie d'abord laisser le commit \xe0 la t\xe2che avec un num\xe9ro \xabbeau\xbb.\n\xa7 page.person.business.days.title: jours de travail\n\xa7 page.person.business.days.description: Seuls les jours o\xf9 les commits ont \xe9t\xe9 effectu\xe9s sont pris en compte\n\xa7 page.person.business.tasks.title: t\xe2ches\n\xa7 page.person.business.tasks.description: Si les commits sont correctement sign\xe9s\n\xa7 page.person.business.losses.title: jours sans commits\n\xa7 page.person.business.losses.description: Tous les jours moins: vacances, week-ends, vacances, jours avec commits\n\xa7 page.person.business.commits.title: commits\n\xa7 page.person.business.commits.description: Les branches supprim\xe9es ne comptent pas\n\xa7 page.person.business.time.description: Temps de la premi\xe8re \xe0 la Derni\xe8re commits (y compris les jours non ouvrables)\n\xa7 page.person.business.time.title: Jours sur le projet:\n\xa7 page.person.business.time.dismissed: (licenci\xe9)\n\xa7 page.person.business.time.staff: (pas dans l'\xe9quipe)\n\xa7 page.person.business.achievements: Les progr\xe8s\n\xa7 page.person.changes.title: Les progr\xe8s\n\xa7 page.person.changes.description: \n Avec certaines formes de formatage, git marque les lignes comme \u201csupprim\xe9es\u201d et \u201cajout\xe9es\u201d, bien qu\u2019en r\xe9alit\xe9, elles aient \xe9t\xe9 \u201cmodifi\xe9es\u201d. Par cons\xe9quent, si vous effectuez un grand refactoring, git peut montrer une petite quantit\xe9 de modifications dans les statistiques, et le r\xe9sultat r\xe9el sera marqu\xe9 comme un bond dans les lignes \u201csupprim\xe9es\u201d et \u201cajout\xe9es\u201d.\n\xa7 page.person.changes.description: La liste des commits et le nombre de modifications qu'ils ont apport\xe9es au cours de cette journ\xe9e:\n\xa7 page.person.commits.title: Liste des commits:\n\xa7 page.person.money.title.total: Pour tous les temps\n\xa7 page.person.money.title.middle: Valeur moyenne\n\xa7 page.person.money.moneyAll.title: re\xe7ut\n\xa7 page.person.money.moneyAll.description: Montant estimatif des d\xe9penses d & apos; appui au projet (voir param\xe8tres)\n\xa7 page.person.money.moneyWorked.title: travaillas\n\xa7 page.person.money.moneyWorked.description: Jours effectivement travaill\xe9s multipli\xe9s par le nombre moyen de jours travaill\xe9s\n\xa7 page.person.money.moneyLosses.title: trop-per\xe7u possible\n\xa7 page.person.money.moneyLosses.description: Jours sans commits multipli\xe9s par la moyenne SN\n\xa7 page.person.money.tasks.title: t\xe2che\n\xa7 page.person.money.tasks.description: Nombre de t\xe2ches ferm\xe9es au co\xfbt de la journ\xe9e\n\xa7 page.person.money.commits.title: commit\n\xa7 page.person.money.commits.description: Nombre de commits par jour ouvrable\n\xa7 page.person.speed.task: Une t\xe2che en moyenne est\n\xa7 page.person.speed.max: Vitesse maximale par jour\n\xa7 page.person.speed.days.title: jours\n\xa7 page.person.speed.days.description: Cela signifie des jours ouvrables si les commits sont correctement sign\xe9s\n\xa7 page.person.speed.commits.title: commits\n\xa7 page.person.speed.commits.description: 10% des valeurs maximales et minimales sont coup\xe9es\n\xa7 page.person.speed.line.title: lignes de code\n\xa7 page.person.speed.line.description: 10% des valeurs maximales et minimales sont coup\xe9es\n\xa7 page.person.speed.tasks.title: t\xe2ches\n\xa7 page.person.speed.tasks.description: La t\xe2che peut ne pas \xeatre termin\xe9e, mais le travail sur elle doit \xeatre\n\xa7 page.person.speed.maxCommits.title: commits\n\xa7 page.person.speed.maxCommits.description: La t\xe2che peut ne pas \xeatre termin\xe9e, mais le travail sur elle doit \xeatre\n\xa7 page.person.hours.title: R\xe9partition des commits par jour de la semaine\n\xa7 page.person.week.date: Date\n\xa7 page.person.week.tasks: Nombre de t\xe2ches\n\xa7 page.person.week.workDays: Jours avec commits\n\xa7 page.person.week.taskInDay: T\xe2ches par jour\n\xa7 page.person.week.days: jours\n\xa7 page.person.week.workDay: jours de semaine\n\xa7 page.person.week.weekends: cong\xe9s\n\xa7 page.sponsor.title: Please, support this project\n\xa7 page.sponsor.share.description: Tell about our [project|https://github.com/bakhirev/assayo] on social networks! You can share [article|https://habr.com/ru/articles/763342/], [post|https://www.reddit.com/r/ITManagers/comments/1e5k291/the_visualization_and_analysis_of_git_commit/] or [video|https://www.youtube.com/watch?v=jwCp_-bhrCQ].\n\xa7 page.sponsor.share.button: Copy the link\n\xa7 page.sponsor.money.description: We will be glad if you support us with any amount! All funds will be used for the further development of the project.\n\xa7 page.sponsor.money.qr: One-time payment (only Russia)\n\xa7 page.sponsor.money.github: GitHub Sponsor\n"].join(""),je=["\n\xa7 achievements.commitsAfter1500.title: Owl\n\xa7 achievements.commitsAfter1500.description: 70% of commits after 3:00 PM\n\xa7 achievements.commitsBefore1500.title: Early bird\n\xa7 achievements.commitsBefore1500.description: 70% of commits before noon\n\xa7 achievements.workEveryTime.title: Devoted worker\n\xa7 achievements.workEveryTime.description: a commit for every hour of the day\n\xa7 achievements.workNotWork.title: Shooting blanks\n\xa7 achievements.workNotWork.description: commits are there, but no tasks are closed\n\xa7 achievements.userNotWork.title: Fly-by\n\xa7 achievements.userNotWork.description: this is not their main project\n\xa7 achievements.userIsDied.title: Dead soul\n\xa7 achievements.userIsDied.description: worked, but resigned\n\xa7 achievements.lessTasks.title: Came and went\n\xa7 achievements.lessTasks.description: least closed tasks\n\xa7 achievements.moreTasks.title: Father says well done\n\xa7 achievements.moreTasks.description: most closed tasks\n\xa7 achievements.everyMessageLong.title: Master of eloquence\n\xa7 achievements.everyMessageLong.description: consistently the longest commit messages\n\xa7 achievements.everyMessageShort.title: Talkative, a spy's dream\n\xa7 achievements.everyMessageShort.description: consistently, the shortest commit messages\n\xa7 achievements.shortestName.title: Size doesn't matter\n\xa7 achievements.shortestName.description: shortest name\n\xa7 achievements.longestName.title: Azim Aziz Il Am Kadir Imran II\n\xa7 achievements.longestName.description: longest name\n\xa7 achievements.moreCommits.title: Backup master\n\xa7 achievements.moreCommits.description: most commits\n\xa7 achievements.lessCommits.title: Rare but Precise\n\xa7 achievements.lessCommits.description: least commits\n\xa7 achievements.oneCommitOneTask.title: Right on target\n\xa7 achievements.oneCommitOneTask.description: on average one commit per task\n\xa7 achievements.moreLazyDays.title: With you in spirit\n\xa7 achievements.moreLazyDays.description: most days without commits\n\xa7 achievements.lessLazyDays.title: Papa carlo\n\xa7 achievements.lessLazyDays.description: least days without commits\n\xa7 achievements.zeroLazyDays.title: Not a single break\n\xa7 achievements.zeroLazyDays.description: not a single day without commits\n\xa7 achievements.moreWorkDays.title: Valuable employee\n\xa7 achievements.moreWorkDays.description: most working days\n\xa7 achievements.moreScopes.title: Startuper\n\xa7 achievements.moreScopes.description: completed the most features\n\xa7 achievements.lessScopes.title: Dandy\n\xa7 achievements.lessScopes.description: completed the fewest features\n\xa7 achievements.moreDaysForTask.title: Snail on the slope\n\xa7 achievements.moreDaysForTask.description: tasks take longer than others\n\xa7 achievements.more2DaysForTask.title: Slow and steady\n\xa7 achievements.more2DaysForTask.description: more than two days per task\n\xa7 achievements.moreDaysInProject.title: Old-timer\n\xa7 achievements.moreDaysInProject.description: most days in the project\n\xa7 achievements.lessDaysInProject.title: And who is this?\n\xa7 achievements.lessDaysInProject.description: least days in the project\n\xa7 achievements.more90DaysInProject.title: Welcome aboard\n\xa7 achievements.more90DaysInProject.description: not fired during the probation period\n\xa7 achievements.lessDaysForTask.title: Fast shooting\n\xa7 achievements.lessDaysForTask.description: a task takes less than a day\n\xa7 achievements.adam.title: Adam\n\xa7 achievements.adam.description: the first stable employee on the project\n\xa7 achievements.more666DaysInProject.title: Devil\n\xa7 achievements.more666DaysInProject.description: worked 666 days on the project\n\xa7 achievements.more777DaysInProject.title: Las Vegas\n\xa7 achievements.more777DaysInProject.description: worked 777 days on the project\n\xa7 achievements.moreRefactoring.title: Executive editor\n\xa7 achievements.moreRefactoring.description: made the most 'refactoring' tags\n\xa7 achievements.longestMessage.title: So many conversations...\n\xa7 achievements.longestMessage.description: the longest commit message of all time\n\xa7 achievements.moreTasksInDay.title: Speed racer\n\xa7 achievements.moreTasksInDay.description: record for the number of tasks closed in a day\n\xa7 achievements.hasCommitFrom0to7.title: Night watch\n\xa7 achievements.hasCommitFrom0to7.description: a commit for every hour of the night\n\xa7 achievements.noCommitOnDay.title: Technical break\n\xa7 achievements.noCommitOnDay.description: there is a certain hour and day in working time when never commits\n\xa7 achievements.hasCommitEveryTime.title: Died at work\n\xa7 achievements.hasCommitEveryTime.description: a commit for every hour of each day (including weekends)\n\xa7 achievements.commitsAfter1800.title: Business Time\n\xa7 achievements.commitsAfter1800.description: no commits after 6:00 PM\n\xa7 achievements.moreFix.title: Bug hunter\n\xa7 achievements.moreFix.description: most closed bugs\n\xa7 achievements.lessWorkDays.title: Count me out\n\xa7 achievements.lessWorkDays.description: least working days\n\xa7 achievements.moreCreateCode.title: Creator\n\xa7 achievements.moreCreateCode.description: tends to add code more than others\n\xa7 achievements.moreRemoveCode.title: Destroyer\n\xa7 achievements.moreRemoveCode.description: tends to remove code more than others\n\xa7 achievements.moreChangeCode.title: Reformer\n\xa7 achievements.moreChangeCode.description: tends to change code more than others\n\xa7 achievements.moreStyle.title: Fashion police\n\xa7 achievements.moreStyle.description: tends to change CSS more than others\n\xa7 achievements.moreOnHoliday.title: No life\n\xa7 achievements.moreOnHoliday.description: relatively many commits in non-working hours\n\xa7 achievements.morePRMerge.title: Show me your pass\n\xa7 achievements.morePRMerge.description: more often than others, presses the \"Merge\" button for PR\n\xa7 achievements.longWaitPR.title: Tomorrow 100% be merge\n\xa7 achievements.longWaitPR.description: created PR that waited more than a month on the review\n\xa7 achievements.moreLongWaitPR.title: A long time ago in a galaxy far, far away\n\xa7 achievements.moreLongWaitPR.description: created PR that has been waiting for a review the longest\n\xa7 achievements.oneExtension.title: My name is LEGION\n\xa7 achievements.oneExtension.description: only this man works with files of a certain extension\n\xa7 achievements.fileRush.title: Zerg Rush\n\xa7 achievements.fileRush.description: created the most files in the project\n\xa7 achievements.moreLintHint.title: Grammar Nazi\n\xa7 achievements.moreLintHint.description: more than anyone created or changed the code-style rules\n\xa7 achievements.moreReadMe.title: Chronicler\n\xa7 achievements.moreReadMe.description: more than anyone created or modified MD files\n\xa7 achievements.moreDevOps.title: DevOps\n\xa7 achievements.moreDevOps.description: more than anyone created or modified files for CI/CD\n\xa7 achievements.moreTests.title: Tester\n\xa7 achievements.moreTests.description: more than anyone created or modified files for testing\n\xa7 achievements.allRelease.title: Full house\n\xa7 achievements.allRelease.description: there is a release compiled only from his tasks\n\xa7 achievements.firstCommit.title: First come, first served\n\xa7 achievements.firstCommit.description: first commit on the project\n\xa7 achievements.lastCommit.title: I've finished\n\xa7 achievements.lastCommit.description: last commit on the project\n\xa7 achievements.firstLastCommit.title: From beginning to end\n\xa7 achievements.firstLastCommit.description: first and last commit on the project\n\xa7 achievements.longFilePath.title: Deep cellar\n\xa7 achievements.longFilePath.description: the first created the file with the deepest directory\n\xa7 achievements.longFileName.title: Size matters\n\xa7 achievements.longFileName.description: created the file with the longest name\n\xa7 achievements.workOnWeekends.title: Work not walk\n\xa7 achievements.workOnWeekends.description: at least once worked on weekends\n\xa7 achievements.removeCreateFile.title: Dig out the stewardess\n\xa7 achievements.removeCreateFile.description: recover removed file\n\xa7 achievements.renameFile.title: Astana Nur-Sultan Astana\n\xa7 achievements.renameFile.description: rename file and rollback\n\xa7 achievements.longTask.title: Easy task\n\xa7 achievements.longTask.description: worked on task more than three months\n\xa7 achievements.haveNotEmail.title: Mailman\n\xa7 achievements.haveNotEmail.description: empty email field in git config\n\xa7 achievements.moreAddedFolders.title: Director \n\xa7 achievements.moreAddedFolders.description: created the most directories\n\xa7 achievements.horoscope1.title: Mercury Retrograde for Capricorn\n\xa7 achievements.horoscope2.title: Mercury Retrograde for Aquarius\n\xa7 achievements.horoscope3.title: Mercury Retrograde for Pisces\n\xa7 achievements.horoscope4.title: Mercury Retrograde for Aries\n\xa7 achievements.horoscope5.title: Mercury Retrograde for Taurus\n\xa7 achievements.horoscope6.title: Mercury Retrograde for Gemini\n\xa7 achievements.horoscope7.title: Mercury Retrograde for Cancer\n\xa7 achievements.horoscope8.title: Mercury Retrograde for Leo\n\xa7 achievements.horoscope9.title: Mercury Retrograde for Virgo\n\xa7 achievements.horoscope10.title: Mercury Retrograde for Libra\n\xa7 achievements.horoscope11.title: Mercury Retrograde for Scorpio\n\xa7 achievements.horoscope12.title: Mercury Retrograde for Sagittarius\n\xa7 achievements.horoscope1.description: by the month of the first commit\n\xa7 achievements.horoscope2.description: by the month of the first commit\n\xa7 achievements.horoscope3.description: by the month of the first commit\n\xa7 achievements.horoscope4.description: by the month of the first commit\n\xa7 achievements.horoscope5.description: by the month of the first commit\n\xa7 achievements.horoscope6.description: by the month of the first commit\n\xa7 achievements.horoscope7.description: by the month of the first commit\n\xa7 achievements.horoscope8.description: by the month of the first commit\n\xa7 achievements.horoscope9.description: by the month of the first commit\n\xa7 achievements.horoscope10.description: by the month of the first commit\n\xa7 achievements.horoscope11.description: by the month of the first commit\n\xa7 achievements.horoscope12.description: by the month of the first commit\n\xa7 achievements.111.description: test\n","\n\xa7 uiKit.console.button: \u30b3\u30d4\u30fc\n\xa7 uiKit.console.notification: \u30c6\u30ad\u30b9\u30c8\u304c\u30b3\u30d4\u30fc\u3055\u308c\u307e\u3057\u305f\n\xa7 uiKit.dataLoader.page: \u30da\u30fc\u30b8\n\xa7 uiKit.dataLoader.size: \u306b\u3088\u3063\u3066\u8868\u793a\u3055\u308c\u308b\n\xa7 uiKit.dataLoader.rows: lines.\n\xa7 uiKit.dataLoader.from: \u304b\u3089\n\xa7 uiKit.dataLoader.all: \u3059\u3079\u3066\u8868\u793a\n\xa7 uiKit.hoursChart.work: \u6a19\u6e96\u52b4\u50cd\u6642\u9593 (\u5e73\u65e5,\u304b\u308907:00\u307820:00)\n\xa7 uiKit.hoursChart.weekend: \u4f11\u696d\u65e5\u307e\u305f\u306f\u55b6\u696d\u65e5\u524d\u5f8c\u306e\u6642\u9593\n\xa7 uiKit.hoursChart.days: \u7279\u5b9a\u65e5\u6642\u306b\u304a\u3051\u308b\u7dcf\u30b3\u30df\u30c3\u30c8\u6570\u3092\u65e5\u672c\u8a9e\u306b\u7ffb\u8a33\u3057\u3066\u304f\u3060\u3055\u3044\u3002\n\xa7 uiKit.page.remove: \u524a\u9664\n\xa7 uiKit.nothingFound.common.title: \u8868\u793a\u3059\u308b\u30c7\u30fc\u30bf\u304c\u306a\u3044\u3001\u307e\u305f\u306f\u4e0d\u5341\u5206\u306a\u30c7\u30fc\u30bf\u304c\u3042\u308a\u307e\u3059\n\xa7 uiKit.nothingFound.common.description: \u30b3\u30df\u30c3\u30c8\u304c\u6b21\u306e\u5f62\u5f0f\u3067\u7f72\u540d\u3055\u308c\u3066\u3044\u308b\u5834\u5408\u3001\u30b7\u30b9\u30c6\u30e0\u306f\u3088\u308a\u591a\u304f\u306e\u30c7\u30fc\u30bf\u3092\u51e6\u7406\u3057\u307e\u3059 [Git commit message convention|https://www.conventionalcommits.org/en/v1.0.0/]. \u30d1\u30bf\u30fc\u30f3:\n\xa7 uiKit.nothingFound.common.console: Task_number\u30bf\u30a4\u30d7(\u30e2\u30b8\u30e5\u30fc\u30eb): \u8aac\u660e\n\xa7 uiKit.nothingFound.common.example: \u8aac\u660e:\n\xa7 uiKit.nothingFound.staff.title: \u3053\u306e\u5f93\u696d\u54e1\u306e\u30c7\u30fc\u30bf\u306f\u3042\u308a\u307e\u305b\u3093\n\xa7 uiKit.nothingFound.staff.description1\n\u5f7c\u306f\u3001\u6bce\u65e5\u4f5c\u696d\u65e5\u306e\u3046\u3061 \u043f\u0440\u0430\u0432\u043a\u0438 \u3092\u884c\u3044\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u3057\u305f\u304c\u3063\u3066\u3001 \u201c\u52a9\u624b\u201d \u3068\u3044\u3046\u52e4\u52d9\u7a2e\u5225\u3092\u53d6\u5f97\u3057\u307e\u3057\u305f\u3002\n\u305d\u306e\u3088\u3046\u306a\u8077\u7a2e\u3092\u6301\u3064\u5f93\u696d\u54e1\u306e\u7d71\u8a08\u306f\u7121\u8996\u3067\u304d\u307e\u3059\u3002\u5f7c\u306e\u77e5\u8b58\u306f\u5fae\u5999\u3067\u3059\u3002\n\xa7 uiKit.nothingFound.staff.description2\n\u30b7\u30b9\u30c6\u30e0\u306f\u305d\u308c\u306e\u305f\u3081\u306e\u3044\u304f\u3064\u304b\u306e\u6307\u6a19\u3092\u8a08\u7b97\u3057\u307e\u305b\u3093\u3002\n\u3082\u3057\u305d\u308c\u304c\u30a8\u30e9\u30fc\u3067\u3042\u308a\u3001\u305d\u306e\u5f93\u696d\u54e1\u306b\u95a2\u3059\u308b\u7d71\u8a08\u3092\u6271\u3046\u5fc5\u8981\u304c\u3042\u308b\u5834\u5408\u3001\u201c\u8a2d\u5b9a\u201d \u30bb\u30af\u30b7\u30e7\u30f3\u306b\u79fb\u52d5\u3057\u3066\u30bf\u30a4\u30d7\u3092\u5909\u66f4\u3057\u3066\u304f\u3060\u3055\u3044\u3002\n\xa7 common.title: Git \u7d71\u8a08\n\xa7 common.filters: \u30d5\u30a3\u30eb\u30bf\u30fc\n\xa7 common.notifications.save: \u5909\u66f4\u306f\u4fdd\u5b58\u3055\u308c\u307e\u3059\n\xa7 common.notifications.setting: \u8a2d\u5b9a\u304c\u4fdd\u5b58\u3055\u308c\u307e\u3059\n\xa7 common.fileLoader.notification: Cant open file $1\n","\n\xa7 sidebar.switch.team: \u30c1\u30fc\u30e0\n\xa7 sidebar.switch.person: \u5f93\u696d\u54e1\n\xa7 sidebar.buttons.settings: \u8a2d\u5b9a\n\xa7 sidebar.buttons.print: \u5370\u5237\n\xa7 sidebar.buttons.share: Share\n\xa7 sidebar.buttons.logout: Logout\n\xa7 sidebar.filters.all: \u3059\u3079\u3066\u306e\u6642\u9593\n\xa7 sidebar.filters.year: \u5e74\n\xa7 sidebar.filters.halfYear: \u534a\u5e74\n\xa7 sidebar.filters.month: \u6708\n\xa7 sidebar.filters.week: \u9031\u9593\n\xa7 sidebar.team.total: \u822c\u7684\u306a\u60c5\u5831\n\xa7 sidebar.team.scope: \u30e2\u30b8\u30e5\u30fc\u30eb\n\xa7 sidebar.team.author: \u30b9\u30bf\u30c3\u30d5\n\xa7 sidebar.team.type: \u30bf\u30b9\u30af\u306e\u7a2e\u985e\n\xa7 sidebar.team.pr: \u30b3\u30fc\u30c9\u6ce8\u5165\n\xa7 sidebar.team.day: \u65e5\u306b\u3088\u3063\u3066\n\xa7 sidebar.team.week: \u9031\u3054\u3068\n\xa7 sidebar.team.month: \u6708\u5225\n\xa7 sidebar.team.tree: \u30d5\u30a1\u30a4\u30eb\u306e\u5206\u6790\n\xa7 sidebar.team.files: \u30d5\u30a1\u30a4\u30eb\n\xa7 sidebar.team.removedFiles: \u524a\u9664\u3055\u308c\u305f\u30d5\u30a1\u30a4\u30eb\n\xa7 sidebar.team.extension: Extensions\n\xa7 sidebar.team.tasks: \u30bf\u30b9\u30af\u30ea\u30b9\u30c8\n\xa7 sidebar.team.release: Releases\n\xa7 sidebar.team.hours: \u30b9\u30b1\u30b8\u30e5\u30fc\u30eb\n\xa7 sidebar.team.commits: All commits\n\xa7 sidebar.team.changes: \u3059\u3079\u3066\u306e\u5909\u66f4\n\xa7 sidebar.team.words: \u4eba\u6c17\u306e\u3042\u308b\u8a00\u8449\n\xa7 sidebar.team.building: \u30af\u30a4\u30ba\n\xa7 sidebar.team.refactor: Refactoring\n\xa7 sidebar.team.company: Companies\n\xa7 sidebar.team.department: Departments\n\xa7 sidebar.team.country: Locations\n\xa7 sidebar.team.settings: \u8a2d\u5b9a\n\xa7 sidebar.person.total: \u4e00\u822c\u7684\u306a\u60c5\u5831\n\xa7 sidebar.person.money: \u4ed5\u4e8b\u306e\u30b3\u30b9\u30c8\n\xa7 sidebar.person.speed: \u30b9\u30d4\u30fc\u30c9\n\xa7 sidebar.person.day: \u65e5\u306b\u3088\u3063\u3066\n\xa7 sidebar.person.week: \u9031\u3054\u3068\n\xa7 sidebar.person.month: \u6708\u5225\n\xa7 sidebar.person.tasks: Tasks\n\xa7 sidebar.person.hours: \u30b9\u30b1\u30b8\u30e5\u30fc\u30eb\n\xa7 sidebar.person.commits: All commits\n\xa7 sidebar.person.changes: \u3059\u3079\u3066\u306e\u5909\u66f4\n\xa7 sidebar.person.words: \u4eba\u6c17\u306e\u3042\u308b\u8a00\u8449\n\xa7 sidebar.person.settings: \u8a2d\u5b9a\n",'\n\xa7 recommendations.modal.cancel: Ok\n\xa7 recommendations.modal.open: More\n\xa7 recommendations.title\nRecommendations and facts\n\n\xa7 recommendations.timestamp.firstCommit.description\nmade the first commit\n\nDay of the Week: $1\n\n\xa7 recommendations.timestamp.lastCommit.description\nmade the last commit\n\nDay of the Week: $1\n\n\xa7 recommendations.timestamp.common.title: $1 days\n\xa7 recommendations.timestamp.allDays.description: from the first to the last commit (including weekends and holidays).\n\xa7 recommendations.timestamp.lossesDays.description: days without commits, even considering weekends, vacation, and public holidays.\n\xa7 recommendations.timestamp.weekendDays.description\nworking on weekends\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- employees burn out faster;\n\n\xa7 recommendations.timestamp.regularWeekendWord.title: Regular Overtime\n\xa7 recommendations.timestamp.sometimeWeekendWord.title: Occasional overtime\n\xa7 recommendations.timestamp.weekendWord.description\nIt might be advisable to change the project manager, analyst, and architect.\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- the quality of the product is usually low;\n- some employees resign;\n- new errors emerge due to the rush;\n\n# Most likely:\n- deadlines were incorrectly estimated at the beginning;\n- technical specifications are missing;\n- weak analytics;\n- weak architecture (no architect was hired, and the team consists of mid-level developers);\n- started writing code first, then planning;\n- lack of proper processes to understand mistakes;\n\n\xa7 recommendations.timestamp.neverWeekendWord.title: Usually Without Overtime\n\xa7 recommendations.timestamp.neverWeekendWord.description\nBut sometimes it happens.\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- employees burn out faster;\n\n\xa7 recommendations.scope.parallelism.not.title\nNo parallel work\n\n\xa7 recommendations.scope.parallelism.not.description\nany feature at any given time is done by one person.\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is less than 1.3, we consider that there is usually no parallel work within most features;\n\n# Why this is bad:\n- increases bus factor;\n- employees develop more slowly;\n- difficult to properly check an employee\'s work;\n\n# Why this is good:\n- experts emerge who are deeply immersed in the subject area and can offer more quality solutions;\n- most likely there are no merge conflicts;\n- the project can quickly develop in different directions simultaneously;\n\n\xa7 recommendations.scope.parallelism.has.title\nSome Work Done in Parallel\n\n\xa7 recommendations.scope.parallelism.has.description\nSometimes a feature is worked on simultaneously by several people.\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is from 1.3 to 2.0, we consider that some of the work within different features is sometimes done in parallel;\n\n\xa7 recommendations.scope.parallelism.every.title\nParallel Work\n\n\xa7 recommendations.scope.parallelism.every.description\nany feature at any given time is worked on by several people\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is more than two, we consider that most of the work within different features is usually done in parallel;\n\n\xa7 recommendations.scope.money\nthis is the estimated cost for the work on this project.\n\n# Calculation method:\n- person-days spent on development are multiplied by the individual salaries of the developers;\n\nTo change the salary of each developer for a more accurate total, go to the "Settings" section.\n\n# Is this too much or too little?\nTo answer this question, consider the following:\n- Could a ready-made solution have been purchased for this amount of money?\n- Could a better product have been developed for this amount of money?\n\nIf the answer to both questions is "yes," then perhaps developing from scratch was not worth the money spent.\n \n\xa7 recommendations.scope.bus.everyHasOne.title\nBus factor = 1\n\n\xa7 recommendations.scope.bus.everyHasOne.description\nMost features are deeply understood by only one person.\nIt\'s necessary to rotate people.\n\n# Why this is bad:\n- if employees resign, it will be difficult to continue their work;\n- it\u2019s impossible to control the quality of their code;\n\n# How the sample is chosen:\n- more than 80% of commits in a feature are made by one person;\n- the project has more than 60% of such features;\n\n\xa7 recommendations.scope.bus.oneMaintainer\none person is deeply involved in a feature.\n\n# Why this is bad:\n- if they resign, it will be hard to continue development;\n- the quality of code-review decreases;\n- it\u2019s difficult to parallelize development when needed;\n\n# How the sample is chosen:\n- more than 80% of commits in a feature are made by one person;\n\n\xa7 recommendations.scope.types.process.title\nPoor processes\n\n\xa7 recommendations.scope.types.process.description\nMost features contain one type of task.\n\n\xa7 recommendations.scope.types.one\nfeatures contain one type of task.\n\n\xa7 recommendations.scope.types.common\nIt\'s possible that developers are incorrectly signing commits or the manager is entering the same type of tasks.\n\n# Why this is important:\n- it\'s impossible to hand over support to another team;\n- it\'s impossible to release a "boxed" version;\n- strong dependence on specific developers;\n- a high number of errors and low code quality;\n- potential slowdown in development in the future;\n\n# The manager\'s mistake:\n- viewing the product only from the perspective of a "working demo";\n\n# What should be done:\n- tests;\n- bugs (identified through testing);\n- refactoring (as architecture may change);\n- documentation;\n- style revisions (as a result of focus group feedback);\n\n\xa7 recommendations.scope.plan.title\nDevelop a long-term plan\n\n\xa7 recommendations.scope.plan.description\ntaking architecture into account.\n\nThis plan should immediately focus on the most challenging tasks.\n\n# Why the lack of a plan is bad:\n- employees create a minimally viable version without planning for expansion points. After this, unscalable code is written, which slows down future features;\n\n# The manager\'s mistake:\n- they haven\'t shown how the product will develop further and where the growth points will be;\n\n# How it should be done:\n- a global product development plan is created;\n- a global architecture development plan is created (with developers and DBAs);\n- potential significant changes are discussed upfront at the schematic level;\n\n\xa7 recommendations.scope.cost.title\nEvaluate Investment in a Feature\n\n\xa7 recommendations.scope.cost.description\nin terms of potential profit.\n\nFeatures that are expensive to develop but bring little profit may need to be postponed or even canceled. This will make the project more commercially successful.\n\n\xa7 recommendations.author.lotOfLazy.title: Too little code: $1\n\xa7 recommendations.author.lotOfLazy.description\nShould they be fired?\n\n# Composition: \n- $1;\n\n# Answer the questions:\n- are they a team leader, architect, or analyst?\n- is this their primary project?\n- are there any dependencies on them?\n\n# Why it makes no sense to correct\nThe total costs for the developer are already more than the profit from their work.\nIf we believe that there were no objective hindrances to their work, then the person either does not want to work at all or is working on two projects simultaneously.\nFiring and replacing them with a new employee seems justified from a statistical point of view.\n\n\xa7 recommendations.author.manyLazy.title: Little code: $1\n\xa7 recommendations.author.manyLazy.description\nNeeds to be monitored.\n\n# Composition: \n- $1;\n\n# How the sample is chosen:\n- in test samples, a good programmer writes code for more than 80% of the time;\n- in this case, the indicator is between 60% and 80%;\n\n# How to monitor:\n- break tasks into 1..2 days;\n- ask for a status update every day;\n- ensure tasks are well defined and ready for development;\n- arrange pair programming to check actual speed;\n\n\xa7 recommendations.author.oneTypeMans\nreceives too many monotonous tasks of the same type. Risk of burnout.\n\n# Why this is important:\n- if an employee burns out, their work speed will decrease;\n- professional growth slows down;\n- the likelihood of resignation increases;\n\n# How the sample is chosen:\n- the type of task is determined for each commit;\n- if more than 70% of tasks are of the same type, it means the person is doing the same thing repeatedly;\n\n\xa7 recommendations.author.workToday.title: Working $1\n\xa7 recommendations.author.workToday.description\non the project at this moment.\n\n# Composition: \n- $1;\n\n# Why specifically them:\n- more than 50% of workdays;\n- have worked during the last 30 days;\n\n\xa7 recommendations.author.dismissed.title: Dismissed $1\n\xa7 recommendations.author.dismissed.description\nor worked for a short period.\n\n# Composition:\n- $1;\n\n# Why specifically them:\n- worked at a normal pace (apparently, this is their main repository);\n- no commits in the last month;\n- vacation usually lasts 14 days (their absence does not resemble a vacation);\n\n\xa7 recommendations.author.staff.title: Assisting $1\n\xa7 recommendations.author.staff.description\nPeople of other specializations who have committed something.\n\n# Composition: \n- $1;\n\n# Why specifically them:\n- this is not an open-source project;\n- workdays less than 15% of the total number;\n- modify roughly the same files;\n\n\xa7 recommendations.author.projectType.openSource.title\nOpen Project\n\n\xa7 recommendations.author.projectType.openSource.description\nthey do not work five days a week here.\n\nThe project may be closed, but this work pace is typical for open libraries on GitHub.\n\n# Assessment method:\n- statistics are taken for all active developers;\n- the average number of working days and days without commits is calculated;\n- for open-source libraries, working days are usually a maximum of 15..20%;\n\n# Consequences\nFor projects where work is not constant, many indicators do not make sense. Therefore, indicators like days without commits, speed, etc., will be hidden.\n\nTypically, such projects are assessed before starting the development of their own closed version. The most interesting indicators in this case are the probable cost and total development time.\n\n\xa7 recommendations.author.projectType.easy.title\nLight Workload\n\n\xa7 recommendations.author.projectType.easy.description\ntoo many days without commits.\n\nIt is necessary to understand why the team is not writing code.\n\n# Assessment method:\n- take statistics from all active developers;\n- calculate the average number of working days and days without commits;\n- workload is considered light if the percentage of days without commits is between 5% and 20%;\n\n# Possible reasons:\n- there are actually no tasks;\n- there are tasks, but they fit well with the current architecture;\n- developers are distracted by meetings;\n- the team is not working;\n\n# Solutions:\n- discuss the issue with the team;\n- reduce task granularity so that one or two tasks can be completed in a day;\n- introduce daily meetings to check the status of tasks;\n- arrange pair programming sessions to ensure that the developer can work faster;\n\n\xa7 recommendations.author.manager.title\nSet Deadlines\n\n\xa7 recommendations.author.manager.description\nEvery task should have a clear deadline.\n \nThis will prevent dragging out its completion for several days or weeks.\n\n# Indicators to check:\n- the number of days spent on one task by an employee;\n- the number of days waiting for PR merge (PR statistics page);\n\n\xa7 recommendations.author.shorTalk.title\nConduct Daily Meetings\n\n\xa7 recommendations.author.shorTalk.description\nthey help stay informed about the project.\n \nDo not stretch them by getting sidetracked on irrelevant topics.\n\n# Questions the employee should answer:\n- what was done;\n- what will be done;\n- are there any issues;\n\n# Interruptions should occur if:\n- they start describing minor details in-depth, which are not important;\n- they steer the conversation away from the original plan;\n\n# Why this is important:\nOften an employee who does nothing tries to avoid the answer by telling a bunch of unnecessary details of their work. This lulls the participants\' attention and stretches the time for a response. It creates an impression that they are busy, even though there was no actual work done.\n\n\xa7 recommendations.author.ipr.title\nDevelop a Training Plan\n\n\xa7 recommendations.author.ipr.description\nfor each employee.\n\n*Individual training plan* is a list of goals and tasks that help a person develop in a certain area.\n\n# How to create a plan:\n- create a competency matrix;\n- identify which competencies have the least knowledge and experience;\n- find out which of these competencies are of interest to the employee;\n- come up with 3..5 goals within each such competency for the next six months or a year;\n- try to do something every month to achieve one goal;\n- remind every month about the overall plan to achieve these goals;\n\n# Does a manager need a plan?\nYes, the manager should also make a plan for themselves. If there is no higher-level manager, they should self-assess.\n\n# Why this is important:\n- employees become more loyal to the company;\n- you get more qualified personnel for the same money;\n\n\xa7 recommendations.author.oneToOne.title\nConduct One-on-One Meetings Every Month\n\n\xa7 recommendations.author.oneToOne.description\nit helps to identify problems at an early stage.\n\n*One-to-one* is a regular personal meeting of a manager with a subordinate. Such meetings typically discuss everything important to the employee, what concerns them, and what they can share with the manager in private.\n\n# Why this is important:\n- easy to find out who is overburdened and who has free time;\n- possible to prevent employee burnout;\n- quick feedback can be obtained about processes that you might not notice;\n- trust is built, making employees more loyal to the company;\n- increases employee motivation and engagement;\n\n\xa7 recommendations.author.club.title\nGo to a Bar\n\n\xa7 recommendations.author.club.description\nonce a month or two.\n\nThis will help build informal communication within the team and bring the team together, even if the interaction is brief.\n\n# Why this is important:\n- quick feedback can be obtained about processes that you might not notice;\n- trust is built, making employees more loyal to the company;\n- increases employee engagement;\n\n\xa7 recommendations.hour.onlyWork.title: No Weekends Here\n\xa7 recommendations.hour.onlyWork.description: The project manager should probably be fired.\n\xa7 recommendations.hour.weekends.title: Working on Weekends\n\xa7 recommendations.hour.weekends.description: The project manager should probably be checked.\n\xa7 recommendations.hour.easy.title: There Are Problems\n\xa7 recommendations.hour.easy.description: There are likely crunch times and work is needed on weekends.\n\xa7 recommendations.week.lazyDays.down.title: Fewer Absences\n\xa7 recommendations.week.lazyDays.down.description: this indicator has dropped over the last three weeks\n\xa7 recommendations.week.lazyDays.up.title: More Absences\n\xa7 recommendations.week.lazyDays.up.description: no tasks or stricter control is needed\n\xa7 recommendations.week.notWork.title: Consistently Underperforms\n\xa7 recommendations.week.notWork.description: as every week the code is not 100% of the time\n\xa7 recommendations.week.upWork.title: Consistently Overworks\n\xa7 recommendations.week.upWork.description: as every week code is written on weekend days\n\xa7 recommendations.week.task.up.title: Productivity is growing\n\xa7 recommendations.week.task.up.description: or tasks have become too small. Need to check. If granularity is the same - reinforce the result.\n\xa7 recommendations.week.task.lazyMaintainer.description: consistently leads in absences. Fire?\n\xa7 recommendations.week.task.down.title: Productivity is Falling\n\xa7 recommendations.week.task.down.description\nor tasks are poorly split. Need to check. If granularity is the same - take control.\n\n# Assessment method:\n- the number of tasks per day that are being worked on has been steadily decreasing over the last three weeks.\n\n# Possible errors:\n- tasks could have been more complex than they seemed;\n- tasks could have had a large volume of work (need to check if the number of changes is also decreasing during this period)\n\n\xa7 recommendations.type.everyHasOne.title: Not signing task types\n\xa7 recommendations.type.everyHasOne.description: Most task types are done by one person.\n\xa7 recommendations.type.oneMaintainer.title: Narrow Specialization\n\xa7 recommendations.type.oneMaintainer.description\nmost tasks of one type are done by the same people.\n\n# Task types:\n\n\xa7 recommendations.type.common\n# It might not be the case\n\nMake sure that other employees correctly sign commits.\n\nSteps to ensure this:\n- set up a pre-commit check for commit messages;\n- explain to the team the need to indicate the type;\n- check in new branches that employees follow this rule;\n\n# If it is indeed the case\n\nYou have set up checks and ensured that the same employee does tasks of the same type.\n\nWhy this is bad:\n- their resignation will halt a whole bunch of processes;\n- it reduces the competence of other team members;\n- difficult to understand their edits at a higher level;\n\nHow to fix this:\n- distribute different types of tasks evenly;\n- change the area of work (tests, documentation, bugs) among employees every sprint;\n\n\xa7 recommendations.type.fewTypes.title\nThis is a local product\n\n\xa7 recommendations.type.fewTypes.description\nfor a specific customer or problem.\n\n# Signs of a "global" product:\n- localization;\n- documentation;\n- a large volume of tests;\n- visual customization;\n- refactoring of bottlenecks;\n- etc.\n\n# Why this product looks like a "local" one:\n- each "global" sign will be outweighed by its type of task;\n- the more "global" signs, the more likely a "global" product;\n\nIn this case, we see a small number of types, which likely indicates shortcomings that prevent the product from being easily scaled to the global market and sold in other countries.\n\n# It might not be the case\nBased on file types, we can assume the type of program (website, server application, DevOps scripts, etc.). For a frontend application, our hypothesis will be more accurate than for DevOps scripts, which might just be a micro-module of initialization.\n\n\xa7 recommendations.type.diff.title\nSplit the popular type into subtypes\n\n\xa7 recommendations.type.diff.description\nto detail errors.\n\nTypically, the task type labeled "bug fixing" is leading. This makes the statistics weakly detailed.\n\n*If you encounter this situation*, you can break down this type into subtypes (e.g., based on the location of detection).\n\nConsider several options for subtypes:\n- fix_dev (error detected during development);\n- fix_test (error detected during testing);\n- fix (error detected in production);\n\n\xa7 recommendations.type.buddy.title\nAccumulate minor tasks\n\n\xa7 recommendations.type.buddy.description\nfor new employees.\n\n# If a task is:\n- not important;\n- not big;\n- doesn\'t require deep immersion in the context;\n- more about refactoring than new code;\n\n# Put it in the backlog with the label "for beginners".\n\nWhen a new employee arrives, you will be able to immediately pull out a bunch of small and varied tasks for them to get acquainted with the project.\n\nAlso, if you have a lull in work, you can pull out one such minor task from the backlog.\n',"\n\xa7 page.settings.document.title: Display settings\n\xa7 page.settings.document.name: Page title\n\xa7 page.settings.document.language: Interface language\n\xa7 page.settings.document.depersonalize: Hide personal data\n\xa7 page.settings.links.title: Link prefixes\n\xa7 page.settings.links.task: For task numbers\n\xa7 page.settings.links.pr: For PR\n\xa7 page.settings.user.title: Individual settings\n\xa7 page.settings.user.notFound: No individual settings. Data for all employees are calculated based on common parameters.\n\xa7 page.settings.user.subTitle: Addendum to employment contract \u2116$1\n\xa7 page.settings.user.from: Start date\n\xa7 page.settings.mailmap: .mailmap example\n\xa7 page.settings.common.title: General salary data\n\xa7 page.settings.common.type.title: Project work type\n\xa7 page.settings.common.type.full: Full-time employment\n\xa7 page.settings.common.type.part: Project work\n\xa7 page.settings.common.salary: Monthly salary in USD (US dollar, $)\n\xa7 page.settings.common.currency: Currency for view\n\xa7 page.settings.common.workDaysInYear: Number of working days in a year\n\xa7 page.settings.common.vacationDaysInYear: Number of vacation days in a year\n\xa7 page.settings.common.workDaysInWeek: Workdays\n\xa7 page.settings.form.save: Save\n\xa7 page.settings.form.cancel: Cancel\n\xa7 page.settings.form.remove: Remove\n\xa7 page.settings.form.addEmployee: Add an employee\n\xa7 page.settings.form.addContract: Add an employment contract\n",'\n\xa7 page.welcome.step1: Execute the command in the root of your project.\n\xa7 page.welcome.step3: Drag and drop\n\xa7 page.welcome.step4: the log.txt file onto this page.\n\xa7 page.welcome.description: Git will create a log.txt file. It contains data for report generation. Or use git shortlog -s -n -e if you don\'t need a report. Create a [.mailmap|https://git-scm.com/docs/gitmailmap] file in the root of the project to consolidate employee statistics.\n\xa7 page.welcome.warning1: The service *DOES NOT SAVE* and *DOES NOT TRANSFER* your data. All calculations are performed locally in your browser on your machine.\n\xa7 page.welcome.warning2: The service *DOES NOT COLLECT STATISTICS* on projects. You can disconnect the internet, check traffic, and even build a local version from the [source|https://github.com/bakhirev/assayo].\n\xa7 page.common.words.title: Word Statistics.\n\xa7 page.common.words.description: the most popular word. Occurs $1 times.\n\xa7 page.common.commits.title: Number of commits by days.\n\xa7 page.common.commits.description: ($1) the most productive day in terms of the number of commits.\n\xa7 page.common.commits.title2: $1 commits made: $2\n\xa7 page.common.filter.allUsers: Does not matter\n\xa7 page.print.modal.title: What are we printing?\n\xa7 page.print.modal.page: Current page\n\xa7 page.print.modal.type: Current section\n\xa7 page.print.modal.all: All statistics\n\xa7 page.print.modal.cancel: Cancel\n\xa7 page.print.tableOfContents: Table of contents\n\xa7 page.print.title: Git repository report\n\xa7 page.print.sub_title: \xab$1\xbb\n\xa7 page.print.description: The data for the report was obtained from the commit history.\n\xa7 page.team.author.statusChart.title: Status\n\xa7 page.team.author.daysChart.title: Days of work\n\xa7 page.team.author.daysChart.item: days\n\xa7 page.team.author.days.half: half year\n\xa7 page.team.author.days.one: year\n\xa7 page.team.author.days.15: year and a half\n\xa7 page.team.author.days.two: two years\n\xa7 page.team.author.days.more: more than two years\n\xa7 page.team.author.title: Details\n\xa7 page.team.author.description1: *Part of the statistics* (work speed, costs, etc.) *for employees with the \'Assistant\' type is not counted*, as it is an episodic role in the project. It is assumed that they do not affect the project, and their edits can be disregarded in the context of the overall volume of work.\n\xa7 page.team.author.description2: *Default sorting* is by the number of tasks and groups (current, fired, assisting employees).\n\xa7 page.team.author.status: Status\n\xa7 page.team.author.company: Company\n\xa7 page.team.author.firstCommit: First commit\n\xa7 page.team.author.lastCommit: Last\n\xa7 page.team.author.daysAll: Total days\n\xa7 page.team.author.types: Types of work\n\xa7 page.team.author.commits: Commits\n\xa7 page.team.author.commitsSmall: commits\n\xa7 page.team.author.tasks: Tasks\n\xa7 page.team.author.tasksSmall: tasks\n\xa7 page.team.author.workedLosses: Days with and without commits\n\xa7 page.team.author.worked: work\n\xa7 page.team.author.losses: days without commits\n\xa7 page.team.author.days: days\n\xa7 page.team.author.daysForTask: Days per task\n\xa7 page.team.author.scopes: Features\n\xa7 page.team.author.moneyAll: Received\n\xa7 page.team.author.moneyWorked: Worked for\n\xa7 page.team.author.moneyLosses: Overpayment\n\xa7 page.team.author.type.work: works\n\xa7 page.team.author.type.dismissed: dismissed\n\xa7 page.team.author.type.staff: staff\n\xa7 page.team.hours.title: Distribution of commits during each day of the week\n\xa7 page.team.month.title: Project work calendar\n\xa7 page.team.month.first: (first work day)\n\xa7 page.team.month.last: (last work day)\n\xa7 page.team.scope.title: Feature statistics\n\xa7 page.team.scope.scope: Feature\n\xa7 page.team.scope.days: Working Days\n\xa7 page.team.scope.authorsDays: Person-Days\n\xa7 page.team.scope.tasks: Tasks\n\xa7 page.team.scope.commits: Commits\n\xa7 page.team.scope.commitsSmall: commits\n\xa7 page.team.scope.types: Types of work\n\xa7 page.team.scope.authors: Personal contribution\n\xa7 page.team.scope.cost: Cost\n\xa7 page.team.type.title: Task type statistics\n\xa7 page.team.type.description: *Personal contribution* is counted by the number of commits, not the volume of changed lines or files. Therefore, the "File Analysis" section should also be consulted to assess the scale of changes.\n\xa7 page.team.type.type: Type of work\n\xa7 page.team.type.unknown: unknown\n\xa7 page.team.type.tasks: Tasks\n\xa7 page.team.type.tasksSmall: tasks\n\xa7 page.team.type.days: Days\n\xa7 page.team.type.daysSmall: days\n\xa7 page.team.type.authorsDays: Person-days\n\xa7 page.team.type.commits: Commits\n\xa7 page.team.type.authors: Personal contribution\n\xa7 page.team.total.titleA: Volume of work\n\xa7 page.team.total.titleB: Cost\n\xa7 page.team.total.daysWorked.title: person-days\n\xa7 page.team.total.daysWorked.description: Only days with commits are counted\n\xa7 page.team.total.commits.title: commits\n\xa7 page.team.total.commits.description: Deleted branches are not counted\n\xa7 page.team.total.daysLosses.title: days without commits\n\xa7 page.team.total.daysLosses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 page.team.total.employment.title: working / dismissed\n\xa7 page.team.total.employment.description: If an employee does not make any commits within a month, they are considered dismissed\n\xa7 page.team.total.moneyAll.title: total\n\xa7 page.team.total.moneyAll.description: Total salary expenses\n\xa7 page.team.total.moneyWorked.title: actual\n\xa7 page.team.total.moneyWorked.description: Actual days worked multiplied by average salary\n\xa7 page.team.total.moneyLosses.title: possible overpayment\n\xa7 page.team.total.moneyLosses.description: Paid working days when there were no commits\n\xa7 page.team.total.weekendPayment.title: weekend work\n\xa7 page.team.total.weekendPayment.description: Total overpayment for weekend work\n\xa7 page.team.total.workSpeed.title: tasks per day\n\xa7 page.team.total.workSpeed.description: Average work speed of the team with the current composition of employees\n\xa7 page.team.total.moneySpeed.title: per month\n\xa7 page.team.total.moneySpeed.description: Forecasted salary payment amount with the current team composition, excluding taxes and related expenses\n\xa7 page.team.total.description1: *Person-days* \u2014 the work of one employee during a single working day. For example, in one calendar day, a team of three employees produces a work volume of three person-days.\n\xa7 page.team.total.description2: *Absentee days* are counted only as working days when commits could have been made. Weekends, public holidays, and vacations are not included in the calculation.\n\xa7 page.team.total.description3: The *working and dismissed* card shows the actual composition of employees who are continuously involved in work. Additionally, there are "assistants" \u2014 typically employees of a different specialization who may occasionally make commits to the project.\n\xa7 page.team.total.description4: *Overpayment* includes only working days when commits could have been made. Weekends, public holidays, and vacations are not included in the calculation. This is why overpayment + actual cost != total. The total cost includes payment for weekends, public holidays, and vacations.\n\xa7 page.team.total.description5: *Weekend work* is calculated at a rate of x2 the payment of a regular day. The displayed amount is specifically the overpayment (x1), as the fact of overtime in this context is not of interest. We focus on overpayment when increasing work speed.\n\xa7 page.team.tree.title: Project tree considering selected filters\n\xa7 page.team.tree.filters.author: Employee\n\xa7 page.team.tree.filters.commits: Number of commits\n\xa7 page.team.tree.filters.help: The minimum number of commits an employee has made in a file\n\xa7 page.team.tree.filters.all: All employees\n\xa7 page.team.tree.totalLines: Lines\n\xa7 page.team.tree.totalTasks: Tasks\n\xa7 page.team.tree.totalDays: Days\n\xa7 page.team.tree.tasks: tasks\n\xa7 page.team.tree.days: days\n\xa7 page.team.tree.add: Who added\n\xa7 page.team.tree.change: Who changed\n\xa7 page.team.tree.remove: Who removed\n\xa7 page.team.tree.line: lines\n\xa7 page.team.tree.linesAdded: added\n\xa7 page.team.tree.linesChanged: changed\n\xa7 page.team.tree.linesRemoved: removed\n\xa7 page.team.company.title: Details\n\xa7 page.team.company.employments.title: By number of employees\n\xa7 page.team.company.employments.item: employments\n\xa7 page.team.company.daysChart.title: By duration of the contract\n\xa7 page.team.company.daysChart.item: companies\n\xa7 page.team.company.active.yes: active\n\xa7 page.team.company.active.no: contract has expired\n\xa7 page.team.country.byTimezone: By the time of the last commit\n\xa7 page.team.country.filters.active: Works\n\xa7 page.team.country.filters.dismissed: Dismissed\n\xa7 page.team.country.filters.staff: Staff\n\xa7 page.team.country.pieByDomain.title: By email, timezone and language\n\xa7 page.team.country.pieByTimezone.title: By timezone\n\xa7 page.team.country.chart.item: employments\n\xa7 page.team.country.table.title: List of employees\n\xa7 page.team.country.table.country: Country\n\xa7 page.team.country.table.employments: Employments\n\xa7 page.team.country.travel.title: Trips (or VPN, or rebase)\n\xa7 page.team.country.travel.author: Employee\n\xa7 page.team.country.travel.fly: Number of flights\n\xa7 page.team.country.travel.path: Locations list\n\xa7 page.team.country.travel.date: Arrival date\n\xa7 page.team.country.travel.country: Location\n\xa7 page.team.refactor.title: Candidates for refactoring\n\xa7 page.team.refactor.lines: lines\n\xa7 page.team.refactor.tasks: tasks\n\xa7 page.team.refactor.days: days\n\xa7 page.team.refactor.path: Path\n\xa7 page.team.refactor.firstCommit: First commit\n\xa7 page.team.refactor.totalLines: Lines\n\xa7 page.team.refactor.totalTasks: Tasks\n\xa7 page.team.refactor.totalDays: Days in development\n\xa7 page.team.day.commits: Commits\n\xa7 page.team.day.activity: Activity\n\xa7 page.team.week.title: Weekly statistics\n\xa7 page.team.week.date: Date\n\xa7 page.team.week.numberTasks: Number of tasks\n\xa7 page.team.week.people: Number of people\n\xa7 page.team.week.line: Line changes\n\xa7 page.team.week.days: Days with and without commits\n\xa7 page.team.week.lossesDetails: Who did not commit\n\xa7 page.team.week.add: added\n\xa7 page.team.week.change: changed\n\xa7 page.team.week.remove: removed\n\xa7 page.team.week.hasCommits: had commits\n\xa7 page.team.week.hasNotCommits: had no commits\n\xa7 page.team.week.days: days\n\xa7 page.team.week.tasks: tasks\n\xa7 page.team.pr.task: Task\n\xa7 page.team.pr.tasks: tasks\n\xa7 page.team.pr.firstCommitTime: First commit\n\xa7 page.team.pr.lastCommitTime: Last\n\xa7 page.team.pr.workDays: Average time spent working on a task\n\xa7 page.team.pr.delayDays: Average time of the PR review\n\xa7 page.team.pr.all.workDays: Time spent working on a task\n\xa7 page.team.pr.all.delayDays: Time of the PR review\n\xa7 page.team.pr.middleTimeRelease: The ratio of development time to review time\n\xa7 page.team.pr.chart.1day: day\n\xa7 page.team.pr.chart.3day: three days\n\xa7 page.team.pr.chart.7day: week\n\xa7 page.team.pr.chart.14day: two weeks\n\xa7 page.team.pr.chart.30day: month\n\xa7 page.team.pr.chart.more: more\n\xa7 page.team.pr.date: Merge Date\n\xa7 page.team.pr.mergeAuthor: Merged by\n\xa7 page.team.pr.author: Employee\n\xa7 page.team.pr.work: development\n\xa7 page.team.pr.delay: waiting\n\xa7 page.team.pr.days: days\n\xa7 page.team.pr.oneTaskDays: Time spent on one task\n\xa7 page.team.pr.description1: *Development time* is the time difference from the first to the last commit on a task. It does not matter if there were breaks of several days between commits or not. Any commit increases the time.\n\xa7 page.team.pr.description2: *Waiting time* is the time between the last commit and the code merge. It shows the actual downtime while waiting for something.\n\xa7 page.team.pr.description3: *Why display development time* without splitting into coding and code review? To show the business the actual delivery time of the code. Waiting for testing, review comments, DevOps problems, and other process imperfections are already included in this term.\n\xa7 page.team.pr.statByAuthors: Statistics by employees\n\xa7 page.team.pr.longDelay: Prolonged Waiting for merge\n\xa7 page.team.pr.anonymous: PR without task number\n\xa7 page.team.pr.branch: Branch\n\xa7 page.team.tasks.task: Task\n\xa7 page.team.tasks.author: First commit author\n\xa7 page.team.tasks.from: First commit\n\xa7 page.team.tasks.to: Last commit\n\xa7 page.team.tasks.daysInWork: Days in work\n\xa7 page.team.tasks.comments: Comments\n\xa7 page.team.extension.extension: File extensions\n\xa7 page.team.extension.type: File sub types\n\xa7 page.team.extension.name: Type\n\xa7 page.team.extension.path: Path\n\xa7 page.team.extension.current.count: Number\n\xa7 page.team.extension.removed.count: Number of removed\n\xa7 page.team.extension.files: files\n\xa7 page.team.release.download: Download\n\xa7 page.team.release.title: Release\n\xa7 page.team.release.from: Created date\n\xa7 page.team.release.to: Delivery date\n\xa7 page.team.release.prLength: Tasks\n\xa7 page.team.release.delay: Preparation days\n\xa7 page.team.release.waiting: Days of waiting for next release\n\xa7 page.team.department.employments.title: The size of the current teams\n\xa7 page.team.department.employments.item: of teams\n\xa7 page.team.author.employments.less1: one employee\n\xa7 page.team.author.employments.less2: two employees\n\xa7 page.team.author.employments.less3: three employees\n\xa7 page.team.author.employments.less6: up to six employees\n\xa7 page.team.author.employments.less9: up to nine employees\n\xa7 page.team.author.employments.less12: up to 12 employees\n\xa7 page.team.author.employments.less15: up to 15 employees\n\xa7 page.team.author.employments.more: more than 15\n\xa7 page.team.department.daysChart.title: Duration of the project\n\xa7 page.team.department.daysChart.item: projects\n\xa7 page.team.department.title: List of projects\n\xa7 page.team.department.code: Code\n\xa7 page.team.department.from: First commit\n\xa7 page.team.department.to: Last\n\xa7 page.team.department.authors: employees\n\xa7 page.team.department.tasks: tasks\n\xa7 page.team.department.totalDays: Working days\n\xa7 page.team.department.totalAuthors: Number of employees\n\xa7 page.person.print.photo.title: Photo\n\xa7 page.person.print.photo.description: space for a photo\n\xa7 page.person.total.title: Main characteristics\n\xa7 page.person.total.daysWorked.title: days of work\n\xa7 page.person.total.daysWorked.description: Only days with commits are counted\n\xa7 page.person.total.tasks.title: tasks\n\xa7 page.person.total.tasks.description: If commits are properly signed\n\xa7 page.person.scoring.toolbar: The position according to this metric, relative to others. Two employees can take the same position if the values matches. Therefore, the total number of positions may be less than the number of employees.\n\xa7 page.person.character.title: Character\n\xa7 page.person.achievement.title: Achievements\n\xa7 page.person.achievement.positive: Positive\n\xa7 page.person.achievement.normal: Neutral\n\xa7 page.person.achievement.negative: Negative\n\xa7 page.person.achievement.description: The more negative achievements an employee accumulates, the higher the likelihood that the situation is unusual. It may be necessary to change their work mode, tasks, or reporting. A discussion with them to understand what problems are hindering their work is advisable.\n\xa7 page.person.gets.title: Gets taken:\n\xa7 page.person.gets.description: "Taking a get" in this context means being the first to leave a commit on a task with a "nice" number.\n\xa7 page.person.business.days.title: days of work\n\xa7 page.person.business.days.description: Only days with commits are counted\n\xa7 page.person.business.tasks.title: tasks\n\xa7 page.person.business.tasks.description: If commits are properly signed\n\xa7 page.person.business.losses.title: days without commits\n\xa7 page.person.business.losses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 page.person.business.commits.title: commits\n\xa7 page.person.business.commits.description: Deleted branches are not counted\n\xa7 page.person.business.time.description: Time from the first to the last commit (including non-working days)\n\xa7 page.person.business.time.title: Days on the project:\n\xa7 page.person.business.time.dismissed: (dismissed)\n\xa7 page.person.business.time.staff: (not in the team)\n\xa7 page.person.business.achievements: Achievements\n\xa7 page.person.changes.title: Achievements\n\xa7 page.person.changes.description: \nWith some types of formatting, git marks lines as "deleted" and "added",\nalthough in reality, they were "changed". Therefore, if you conducted a major refactoring,\ngit might show a small number of changes in the statistics, but the actual result\nwill be marked as a jump in "deleted" and "added" lines.\n\xa7 page.person.changes.description: List of commits and the number of changes in them for that day:\n\xa7 page.person.commits.title: List of commits:\n\xa7 page.person.money.title.total: Total over time\n\xa7 page.person.money.title.middle: Average cost\n\xa7 page.person.money.moneyAll.title: received\n\xa7 page.person.money.moneyAll.description: Assumed total salary from the project (see settings)\n\xa7 page.person.money.moneyWorked.title: worked for\n\xa7 page.person.money.moneyWorked.description: Actual days worked multiplied by average salary\n\xa7 page.person.money.moneyLosses.title: possible overpayment\n\xa7 page.person.money.moneyLosses.description: Days without commits multiplied by average salary\n\xa7 page.person.money.tasks.title: task\n\xa7 page.person.money.tasks.description: Number of closed tasks to the cost of the day\n\xa7 page.person.money.commits.title: commit\n\xa7 page.person.money.commits.description: Number of commits to the cost of the workday\n\xa7 page.person.speed.task: One task on average is\n\xa7 page.person.speed.max: Maximum speed per day\n\xa7 page.person.speed.days.title: days\n\xa7 page.person.speed.days.description: Refers to workdays, if commits are properly signed\n\xa7 page.person.speed.commits.title: commits\n\xa7 page.person.speed.commits.description: Top and bottom 10% of values are trimmed\n\xa7 page.person.speed.line.title: lines of code\n\xa7 page.person.speed.line.description: Top and bottom 10% of values are trimmed\n\xa7 page.person.speed.tasks.title: tasks\n\xa7 page.person.speed.tasks.description: A task may not be completed, but work should be done on it\n\xa7 page.person.speed.maxCommits.title: commits\n\xa7 page.person.speed.maxCommits.description: A task may not be completed, but work should be done on it\n\xa7 page.person.hours.title: Distribution of commits during each day of the week\n\xa7 page.person.week.date: Date\n\xa7 page.person.week.tasks: Number of tasks\n\xa7 page.person.week.workDays: Days with commits\n\xa7 page.person.week.taskInDay: Tasks per day\n\xa7 page.person.week.days: days\n\xa7 page.person.week.workDay: weekdays\n\xa7 page.person.week.weekends: weekends\n\xa7 page.sponsor.title: Please, support this project\n\xa7 page.sponsor.share.description: Tell about our [project|https://github.com/bakhirev/assayo] on social networks! You can share [article|https://habr.com/ru/articles/763342/], [post|https://www.reddit.com/r/ITManagers/comments/1e5k291/the_visualization_and_analysis_of_git_commit/] or [video|https://www.youtube.com/watch?v=jwCp_-bhrCQ].\n\xa7 page.sponsor.share.button: Copy the link\n\xa7 page.sponsor.money.description: We will be glad if you support us with any amount! All funds will be used for the further development of the project.\n\xa7 page.sponsor.money.qr: One-time payment (only Russia)\n\xa7 page.sponsor.money.github: GitHub Sponsor\n'].join(""),Ae=["\n\xa7 achievements.commitsAfter1500.title: Owl\n\xa7 achievements.commitsAfter1500.description: 70% of commits after 3:00 PM\n\xa7 achievements.commitsBefore1500.title: Early bird\n\xa7 achievements.commitsBefore1500.description: 70% of commits before noon\n\xa7 achievements.workEveryTime.title: Devoted worker\n\xa7 achievements.workEveryTime.description: a commit for every hour of the day\n\xa7 achievements.workNotWork.title: Shooting blanks\n\xa7 achievements.workNotWork.description: commits are there, but no tasks are closed\n\xa7 achievements.userNotWork.title: Fly-by\n\xa7 achievements.userNotWork.description: this is not their main project\n\xa7 achievements.userIsDied.title: Dead soul\n\xa7 achievements.userIsDied.description: worked, but resigned\n\xa7 achievements.lessTasks.title: Came and went\n\xa7 achievements.lessTasks.description: least closed tasks\n\xa7 achievements.moreTasks.title: Father says well done\n\xa7 achievements.moreTasks.description: most closed tasks\n\xa7 achievements.everyMessageLong.title: Master of eloquence\n\xa7 achievements.everyMessageLong.description: consistently the longest commit messages\n\xa7 achievements.everyMessageShort.title: Talkative, a spy's dream\n\xa7 achievements.everyMessageShort.description: consistently, the shortest commit messages\n\xa7 achievements.shortestName.title: Size doesn't matter\n\xa7 achievements.shortestName.description: shortest name\n\xa7 achievements.longestName.title: Azim Aziz Il Am Kadir Imran II\n\xa7 achievements.longestName.description: longest name\n\xa7 achievements.moreCommits.title: Backup master\n\xa7 achievements.moreCommits.description: most commits\n\xa7 achievements.lessCommits.title: Rare but Precise\n\xa7 achievements.lessCommits.description: least commits\n\xa7 achievements.oneCommitOneTask.title: Right on target\n\xa7 achievements.oneCommitOneTask.description: on average one commit per task\n\xa7 achievements.moreLazyDays.title: With you in spirit\n\xa7 achievements.moreLazyDays.description: most days without commits\n\xa7 achievements.lessLazyDays.title: Papa carlo\n\xa7 achievements.lessLazyDays.description: least days without commits\n\xa7 achievements.zeroLazyDays.title: Not a single break\n\xa7 achievements.zeroLazyDays.description: not a single day without commits\n\xa7 achievements.moreWorkDays.title: Valuable employee\n\xa7 achievements.moreWorkDays.description: most working days\n\xa7 achievements.moreScopes.title: Startuper\n\xa7 achievements.moreScopes.description: completed the most features\n\xa7 achievements.lessScopes.title: Dandy\n\xa7 achievements.lessScopes.description: completed the fewest features\n\xa7 achievements.moreDaysForTask.title: Snail on the slope\n\xa7 achievements.moreDaysForTask.description: tasks take longer than others\n\xa7 achievements.more2DaysForTask.title: Slow and steady\n\xa7 achievements.more2DaysForTask.description: more than two days per task\n\xa7 achievements.moreDaysInProject.title: Old-timer\n\xa7 achievements.moreDaysInProject.description: most days in the project\n\xa7 achievements.lessDaysInProject.title: And who is this?\n\xa7 achievements.lessDaysInProject.description: least days in the project\n\xa7 achievements.more90DaysInProject.title: Welcome aboard\n\xa7 achievements.more90DaysInProject.description: not fired during the probation period\n\xa7 achievements.lessDaysForTask.title: Fast shooting\n\xa7 achievements.lessDaysForTask.description: a task takes less than a day\n\xa7 achievements.adam.title: Adam\n\xa7 achievements.adam.description: the first stable employee on the project\n\xa7 achievements.more666DaysInProject.title: Devil\n\xa7 achievements.more666DaysInProject.description: worked 666 days on the project\n\xa7 achievements.more777DaysInProject.title: Las Vegas\n\xa7 achievements.more777DaysInProject.description: worked 777 days on the project\n\xa7 achievements.moreRefactoring.title: Executive editor\n\xa7 achievements.moreRefactoring.description: made the most 'refactoring' tags\n\xa7 achievements.longestMessage.title: So many conversations...\n\xa7 achievements.longestMessage.description: the longest commit message of all time\n\xa7 achievements.moreTasksInDay.title: Speed racer\n\xa7 achievements.moreTasksInDay.description: record for the number of tasks closed in a day\n\xa7 achievements.hasCommitFrom0to7.title: Night watch\n\xa7 achievements.hasCommitFrom0to7.description: a commit for every hour of the night\n\xa7 achievements.noCommitOnDay.title: Technical break\n\xa7 achievements.noCommitOnDay.description: there is a certain hour and day in working time when never commits\n\xa7 achievements.hasCommitEveryTime.title: Died at work\n\xa7 achievements.hasCommitEveryTime.description: a commit for every hour of each day (including weekends)\n\xa7 achievements.commitsAfter1800.title: Business Time\n\xa7 achievements.commitsAfter1800.description: no commits after 6:00 PM\n\xa7 achievements.moreFix.title: Bug hunter\n\xa7 achievements.moreFix.description: most closed bugs\n\xa7 achievements.lessWorkDays.title: Count me out\n\xa7 achievements.lessWorkDays.description: least working days\n\xa7 achievements.moreCreateCode.title: Creator\n\xa7 achievements.moreCreateCode.description: tends to add code more than others\n\xa7 achievements.moreRemoveCode.title: Destroyer\n\xa7 achievements.moreRemoveCode.description: tends to remove code more than others\n\xa7 achievements.moreChangeCode.title: Reformer\n\xa7 achievements.moreChangeCode.description: tends to change code more than others\n\xa7 achievements.moreStyle.title: Fashion police\n\xa7 achievements.moreStyle.description: tends to change CSS more than others\n\xa7 achievements.moreOnHoliday.title: No life\n\xa7 achievements.moreOnHoliday.description: relatively many commits in non-working hours\n\xa7 achievements.morePRMerge.title: Show me your pass\n\xa7 achievements.morePRMerge.description: more often than others, presses the \"Merge\" button for PR\n\xa7 achievements.longWaitPR.title: Tomorrow 100% be merge\n\xa7 achievements.longWaitPR.description: created PR that waited more than a month on the review\n\xa7 achievements.moreLongWaitPR.title: A long time ago in a galaxy far, far away\n\xa7 achievements.moreLongWaitPR.description: created PR that has been waiting for a review the longest\n\xa7 achievements.oneExtension.title: My name is LEGION\n\xa7 achievements.oneExtension.description: only this man works with files of a certain extension\n\xa7 achievements.fileRush.title: Zerg Rush\n\xa7 achievements.fileRush.description: created the most files in the project\n\xa7 achievements.moreLintHint.title: Grammar Nazi\n\xa7 achievements.moreLintHint.description: more than anyone created or changed the code-style rules\n\xa7 achievements.moreReadMe.title: Chronicler\n\xa7 achievements.moreReadMe.description: more than anyone created or modified MD files\n\xa7 achievements.moreDevOps.title: DevOps\n\xa7 achievements.moreDevOps.description: more than anyone created or modified files for CI/CD\n\xa7 achievements.moreTests.title: Tester\n\xa7 achievements.moreTests.description: more than anyone created or modified files for testing\n\xa7 achievements.allRelease.title: Full house\n\xa7 achievements.allRelease.description: there is a release compiled only from his tasks\n\xa7 achievements.firstCommit.title: First come, first served\n\xa7 achievements.firstCommit.description: first commit on the project\n\xa7 achievements.lastCommit.title: I've finished\n\xa7 achievements.lastCommit.description: last commit on the project\n\xa7 achievements.firstLastCommit.title: From beginning to end\n\xa7 achievements.firstLastCommit.description: first and last commit on the project\n\xa7 achievements.longFilePath.title: Deep cellar\n\xa7 achievements.longFilePath.description: the first created the file with the deepest directory\n\xa7 achievements.longFileName.title: Size matters\n\xa7 achievements.longFileName.description: created the file with the longest name\n\xa7 achievements.workOnWeekends.title: Work not walk\n\xa7 achievements.workOnWeekends.description: at least once worked on weekends\n\xa7 achievements.removeCreateFile.title: Dig out the stewardess\n\xa7 achievements.removeCreateFile.description: recover removed file\n\xa7 achievements.renameFile.title: Astana Nur-Sultan Astana\n\xa7 achievements.renameFile.description: rename file and rollback\n\xa7 achievements.longTask.title: Easy task\n\xa7 achievements.longTask.description: worked on task more than three months\n\xa7 achievements.haveNotEmail.title: Mailman\n\xa7 achievements.haveNotEmail.description: empty email field in git config\n\xa7 achievements.moreAddedFolders.title: Director \n\xa7 achievements.moreAddedFolders.description: created the most directories\n\xa7 achievements.horoscope1.title: Mercury Retrograde for Capricorn\n\xa7 achievements.horoscope2.title: Mercury Retrograde for Aquarius\n\xa7 achievements.horoscope3.title: Mercury Retrograde for Pisces\n\xa7 achievements.horoscope4.title: Mercury Retrograde for Aries\n\xa7 achievements.horoscope5.title: Mercury Retrograde for Taurus\n\xa7 achievements.horoscope6.title: Mercury Retrograde for Gemini\n\xa7 achievements.horoscope7.title: Mercury Retrograde for Cancer\n\xa7 achievements.horoscope8.title: Mercury Retrograde for Leo\n\xa7 achievements.horoscope9.title: Mercury Retrograde for Virgo\n\xa7 achievements.horoscope10.title: Mercury Retrograde for Libra\n\xa7 achievements.horoscope11.title: Mercury Retrograde for Scorpio\n\xa7 achievements.horoscope12.title: Mercury Retrograde for Sagittarius\n\xa7 achievements.horoscope1.description: by the month of the first commit\n\xa7 achievements.horoscope2.description: by the month of the first commit\n\xa7 achievements.horoscope3.description: by the month of the first commit\n\xa7 achievements.horoscope4.description: by the month of the first commit\n\xa7 achievements.horoscope5.description: by the month of the first commit\n\xa7 achievements.horoscope6.description: by the month of the first commit\n\xa7 achievements.horoscope7.description: by the month of the first commit\n\xa7 achievements.horoscope8.description: by the month of the first commit\n\xa7 achievements.horoscope9.description: by the month of the first commit\n\xa7 achievements.horoscope10.description: by the month of the first commit\n\xa7 achievements.horoscope11.description: by the month of the first commit\n\xa7 achievements.horoscope12.description: by the month of the first commit\n\xa7 achievements.111.description: test\n","\n\xa7 uiKit.console.button: Copiar\n\xa7 uiKit.console.notification: Texto copiado\n\xa7 uiKit.dataLoader.page: P\xe1gina\n\xa7 uiKit.dataLoader.size: Exibido por\n\xa7 uiKit.dataLoader.rows: lines.\n\xa7 uiKit.dataLoader.from: de\n\xa7 uiKit.dataLoader.all: Mostrar tudo\n\xa7 uiKit.hoursChart.work: Tempo de trabalho padr\xe3o. (dias de semana, das 07: 00 \xe0s 20:00)\n\xa7 uiKit.hoursChart.weekend: fins de semana ou tempo antes / depois do dia de trabalho\n\xa7 uiKit.hoursChart.days: n\xfamero total de commits em um determinado dia e hora\n\xa7 uiKit.page.remove: Remover\n\xa7 uiKit.nothingFound.common.title: N\xe3o h\xe1 ou n\xe3o h\xe1 dados suficientes para exibir\n\xa7 uiKit.nothingFound.common.description: O sistema processar\xe1 mais dados se os commits forem assinados no formato [Git commit message convention|https://www.conventionalcommits.org/en/v1.0.0/]. Modelo:\n\xa7 uiKit.nothingFound.common.console: N\xfamero da tarefa_tipo(m\xf3dulo): explica\xe7\xe3o\n\xa7 uiKit.nothingFound.common.example: Por exemplo:\n\xa7 uiKit.nothingFound.staff.title: N\xe3o h\xe1 dados para este funcion\xe1rio\n\xa7 uiKit.nothingFound.staff.description1\nEle n\xe3o fazia altera\xe7\xf5es todos os dias de trabalho. Por isso, ele recebeu o status \u201cAssistente\u201d.\nAs estat\xedsticas de um trabalhador com esse status n\xe3o precisam ser registradas. Sua influ\xeancia \xe9 insignificante.\n\xa7 uiKit.nothingFound.staff.description2\nO sistema n\xe3o calcula uma s\xe9rie de indicadores para ele.\nSe este for um erro e a estat\xedstica para esse funcion\xe1rio precisar ser levada em considera\xe7\xe3o, v\xe1 para a se\xe7\xe3o \u201cConfigura\xe7\xf5es\u201d e altere o seu tipo.\n\xa7 common.title: Git estat\xedstica\n\xa7 common.filters: Filtro\n\xa7 common.notifications.save: Altera\xe7\xf5es salvas\n\xa7 common.notifications.setting: Configura\xe7\xe3o guardada\n\xa7 common.fileLoader.notification: Cant open file $1\n","\n\xa7 sidebar.switch.team: Comando\n\xa7 sidebar.switch.person: Funcion\xe1rio\n\xa7 sidebar.buttons.settings: Sintoniza\xe7\xe3o\n\xa7 sidebar.buttons.print: Impress\xe3o\n\xa7 sidebar.buttons.share: Share\n\xa7 sidebar.buttons.logout: Logout\n\xa7 sidebar.filters.all: o tempo todo\n\xa7 sidebar.filters.year: ano\n\xa7 sidebar.filters.halfYear: meio ano\n\xa7 sidebar.filters.month: m\xeas\n\xa7 sidebar.filters.week: semana\n\xa7 sidebar.team.total: Informa\xe7\xe3o geral\n\xa7 sidebar.team.scope: m\xf3dulo\n\xa7 sidebar.team.author: Funcion\xe1rio\n\xa7 sidebar.team.type: Tipos de tarefas\n\xa7 sidebar.team.pr: Introdu\xe7\xe3o do c\xf3digo\n\xa7 sidebar.team.day: Por dia\n\xa7 sidebar.team.week: Por semana\n\xa7 sidebar.team.month: Por m\xeas\n\xa7 sidebar.team.tree: An\xe1lise de arquivos\n\xa7 sidebar.team.files: Ficheiros\n\xa7 sidebar.team.removedFiles: Arquivos exclu\xeddos\n\xa7 sidebar.team.extension: Extensions\n\xa7 sidebar.team.tasks: Lista de tarefas\n\xa7 sidebar.team.release: Releases\n\xa7 sidebar.team.hours: Hor\xe1rio\n\xa7 sidebar.team.commits: All commits\n\xa7 sidebar.team.changes: Todas as altera\xe7\xf5es\n\xa7 sidebar.team.words: Palavras populares\n\xa7 sidebar.team.building: Concurso\n\xa7 sidebar.team.refactor: Refactoring\n\xa7 sidebar.team.company: Companies\n\xa7 sidebar.team.department: Departments\n\xa7 sidebar.team.country: Locations\n\xa7 sidebar.team.settings: Sintoniza\xe7\xe3o\n\xa7 sidebar.person.total: Informa\xe7\xe3o geral\n\xa7 sidebar.person.money: Custo do trabalho\n\xa7 sidebar.person.speed: Velocidade\n\xa7 sidebar.person.day: Por dia\n\xa7 sidebar.person.week: Por semana\n\xa7 sidebar.person.month: Por m\xeas\n\xa7 sidebar.person.tasks: Tasks\n\xa7 sidebar.person.hours: Hor\xe1rio\n\xa7 sidebar.person.commits: All commits\n\xa7 sidebar.person.changes: Todas as altera\xe7\xf5es\n\xa7 sidebar.person.words: Palavras populares\n\xa7 sidebar.person.settings: Sintoniza\xe7\xe3o\n",'\n\xa7 recommendations.modal.cancel: Ok\n\xa7 recommendations.modal.open: More\n\xa7 recommendations.title\nRecommendations and facts\n\n\xa7 recommendations.timestamp.firstCommit.description\nmade the first commit\n\nDay of the Week: $1\n\n\xa7 recommendations.timestamp.lastCommit.description\nmade the last commit\n\nDay of the Week: $1\n\n\xa7 recommendations.timestamp.common.title: $1 days\n\xa7 recommendations.timestamp.allDays.description: from the first to the last commit (including weekends and holidays).\n\xa7 recommendations.timestamp.lossesDays.description: days without commits, even considering weekends, vacation, and public holidays.\n\xa7 recommendations.timestamp.weekendDays.description\nworking on weekends\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- employees burn out faster;\n\n\xa7 recommendations.timestamp.regularWeekendWord.title: Regular Overtime\n\xa7 recommendations.timestamp.sometimeWeekendWord.title: Occasional overtime\n\xa7 recommendations.timestamp.weekendWord.description\nIt might be advisable to change the project manager, analyst, and architect.\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- the quality of the product is usually low;\n- some employees resign;\n- new errors emerge due to the rush;\n\n# Most likely:\n- deadlines were incorrectly estimated at the beginning;\n- technical specifications are missing;\n- weak analytics;\n- weak architecture (no architect was hired, and the team consists of mid-level developers);\n- started writing code first, then planning;\n- lack of proper processes to understand mistakes;\n\n\xa7 recommendations.timestamp.neverWeekendWord.title: Usually Without Overtime\n\xa7 recommendations.timestamp.neverWeekendWord.description\nBut sometimes it happens.\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- employees burn out faster;\n\n\xa7 recommendations.scope.parallelism.not.title\nNo parallel work\n\n\xa7 recommendations.scope.parallelism.not.description\nany feature at any given time is done by one person.\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is less than 1.3, we consider that there is usually no parallel work within most features;\n\n# Why this is bad:\n- increases bus factor;\n- employees develop more slowly;\n- difficult to properly check an employee\'s work;\n\n# Why this is good:\n- experts emerge who are deeply immersed in the subject area and can offer more quality solutions;\n- most likely there are no merge conflicts;\n- the project can quickly develop in different directions simultaneously;\n\n\xa7 recommendations.scope.parallelism.has.title\nSome Work Done in Parallel\n\n\xa7 recommendations.scope.parallelism.has.description\nSometimes a feature is worked on simultaneously by several people.\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is from 1.3 to 2.0, we consider that some of the work within different features is sometimes done in parallel;\n\n\xa7 recommendations.scope.parallelism.every.title\nParallel Work\n\n\xa7 recommendations.scope.parallelism.every.description\nany feature at any given time is worked on by several people\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is more than two, we consider that most of the work within different features is usually done in parallel;\n\n\xa7 recommendations.scope.money\nthis is the estimated cost for the work on this project.\n\n# Calculation method:\n- person-days spent on development are multiplied by the individual salaries of the developers;\n\nTo change the salary of each developer for a more accurate total, go to the "Settings" section.\n\n# Is this too much or too little?\nTo answer this question, consider the following:\n- Could a ready-made solution have been purchased for this amount of money?\n- Could a better product have been developed for this amount of money?\n\nIf the answer to both questions is "yes," then perhaps developing from scratch was not worth the money spent.\n \n\xa7 recommendations.scope.bus.everyHasOne.title\nBus factor = 1\n\n\xa7 recommendations.scope.bus.everyHasOne.description\nMost features are deeply understood by only one person.\nIt\'s necessary to rotate people.\n\n# Why this is bad:\n- if employees resign, it will be difficult to continue their work;\n- it\u2019s impossible to control the quality of their code;\n\n# How the sample is chosen:\n- more than 80% of commits in a feature are made by one person;\n- the project has more than 60% of such features;\n\n\xa7 recommendations.scope.bus.oneMaintainer\none person is deeply involved in a feature.\n\n# Why this is bad:\n- if they resign, it will be hard to continue development;\n- the quality of code-review decreases;\n- it\u2019s difficult to parallelize development when needed;\n\n# How the sample is chosen:\n- more than 80% of commits in a feature are made by one person;\n\n\xa7 recommendations.scope.types.process.title\nPoor processes\n\n\xa7 recommendations.scope.types.process.description\nMost features contain one type of task.\n\n\xa7 recommendations.scope.types.one\nfeatures contain one type of task.\n\n\xa7 recommendations.scope.types.common\nIt\'s possible that developers are incorrectly signing commits or the manager is entering the same type of tasks.\n\n# Why this is important:\n- it\'s impossible to hand over support to another team;\n- it\'s impossible to release a "boxed" version;\n- strong dependence on specific developers;\n- a high number of errors and low code quality;\n- potential slowdown in development in the future;\n\n# The manager\'s mistake:\n- viewing the product only from the perspective of a "working demo";\n\n# What should be done:\n- tests;\n- bugs (identified through testing);\n- refactoring (as architecture may change);\n- documentation;\n- style revisions (as a result of focus group feedback);\n\n\xa7 recommendations.scope.plan.title\nDevelop a long-term plan\n\n\xa7 recommendations.scope.plan.description\ntaking architecture into account.\n\nThis plan should immediately focus on the most challenging tasks.\n\n# Why the lack of a plan is bad:\n- employees create a minimally viable version without planning for expansion points. After this, unscalable code is written, which slows down future features;\n\n# The manager\'s mistake:\n- they haven\'t shown how the product will develop further and where the growth points will be;\n\n# How it should be done:\n- a global product development plan is created;\n- a global architecture development plan is created (with developers and DBAs);\n- potential significant changes are discussed upfront at the schematic level;\n\n\xa7 recommendations.scope.cost.title\nEvaluate Investment in a Feature\n\n\xa7 recommendations.scope.cost.description\nin terms of potential profit.\n\nFeatures that are expensive to develop but bring little profit may need to be postponed or even canceled. This will make the project more commercially successful.\n\n\xa7 recommendations.author.lotOfLazy.title: Too little code: $1\n\xa7 recommendations.author.lotOfLazy.description\nShould they be fired?\n\n# Composition: \n- $1;\n\n# Answer the questions:\n- are they a team leader, architect, or analyst?\n- is this their primary project?\n- are there any dependencies on them?\n\n# Why it makes no sense to correct\nThe total costs for the developer are already more than the profit from their work.\nIf we believe that there were no objective hindrances to their work, then the person either does not want to work at all or is working on two projects simultaneously.\nFiring and replacing them with a new employee seems justified from a statistical point of view.\n\n\xa7 recommendations.author.manyLazy.title: Little code: $1\n\xa7 recommendations.author.manyLazy.description\nNeeds to be monitored.\n\n# Composition: \n- $1;\n\n# How the sample is chosen:\n- in test samples, a good programmer writes code for more than 80% of the time;\n- in this case, the indicator is between 60% and 80%;\n\n# How to monitor:\n- break tasks into 1..2 days;\n- ask for a status update every day;\n- ensure tasks are well defined and ready for development;\n- arrange pair programming to check actual speed;\n\n\xa7 recommendations.author.oneTypeMans\nreceives too many monotonous tasks of the same type. Risk of burnout.\n\n# Why this is important:\n- if an employee burns out, their work speed will decrease;\n- professional growth slows down;\n- the likelihood of resignation increases;\n\n# How the sample is chosen:\n- the type of task is determined for each commit;\n- if more than 70% of tasks are of the same type, it means the person is doing the same thing repeatedly;\n\n\xa7 recommendations.author.workToday.title: Working $1\n\xa7 recommendations.author.workToday.description\non the project at this moment.\n\n# Composition: \n- $1;\n\n# Why specifically them:\n- more than 50% of workdays;\n- have worked during the last 30 days;\n\n\xa7 recommendations.author.dismissed.title: Dismissed $1\n\xa7 recommendations.author.dismissed.description\nor worked for a short period.\n\n# Composition:\n- $1;\n\n# Why specifically them:\n- worked at a normal pace (apparently, this is their main repository);\n- no commits in the last month;\n- vacation usually lasts 14 days (their absence does not resemble a vacation);\n\n\xa7 recommendations.author.staff.title: Assisting $1\n\xa7 recommendations.author.staff.description\nPeople of other specializations who have committed something.\n\n# Composition: \n- $1;\n\n# Why specifically them:\n- this is not an open-source project;\n- workdays less than 15% of the total number;\n- modify roughly the same files;\n\n\xa7 recommendations.author.projectType.openSource.title\nOpen Project\n\n\xa7 recommendations.author.projectType.openSource.description\nthey do not work five days a week here.\n\nThe project may be closed, but this work pace is typical for open libraries on GitHub.\n\n# Assessment method:\n- statistics are taken for all active developers;\n- the average number of working days and days without commits is calculated;\n- for open-source libraries, working days are usually a maximum of 15..20%;\n\n# Consequences\nFor projects where work is not constant, many indicators do not make sense. Therefore, indicators like days without commits, speed, etc., will be hidden.\n\nTypically, such projects are assessed before starting the development of their own closed version. The most interesting indicators in this case are the probable cost and total development time.\n\n\xa7 recommendations.author.projectType.easy.title\nLight Workload\n\n\xa7 recommendations.author.projectType.easy.description\ntoo many days without commits.\n\nIt is necessary to understand why the team is not writing code.\n\n# Assessment method:\n- take statistics from all active developers;\n- calculate the average number of working days and days without commits;\n- workload is considered light if the percentage of days without commits is between 5% and 20%;\n\n# Possible reasons:\n- there are actually no tasks;\n- there are tasks, but they fit well with the current architecture;\n- developers are distracted by meetings;\n- the team is not working;\n\n# Solutions:\n- discuss the issue with the team;\n- reduce task granularity so that one or two tasks can be completed in a day;\n- introduce daily meetings to check the status of tasks;\n- arrange pair programming sessions to ensure that the developer can work faster;\n\n\xa7 recommendations.author.manager.title\nSet Deadlines\n\n\xa7 recommendations.author.manager.description\nEvery task should have a clear deadline.\n \nThis will prevent dragging out its completion for several days or weeks.\n\n# Indicators to check:\n- the number of days spent on one task by an employee;\n- the number of days waiting for PR merge (PR statistics page);\n\n\xa7 recommendations.author.shorTalk.title\nConduct Daily Meetings\n\n\xa7 recommendations.author.shorTalk.description\nthey help stay informed about the project.\n \nDo not stretch them by getting sidetracked on irrelevant topics.\n\n# Questions the employee should answer:\n- what was done;\n- what will be done;\n- are there any issues;\n\n# Interruptions should occur if:\n- they start describing minor details in-depth, which are not important;\n- they steer the conversation away from the original plan;\n\n# Why this is important:\nOften an employee who does nothing tries to avoid the answer by telling a bunch of unnecessary details of their work. This lulls the participants\' attention and stretches the time for a response. It creates an impression that they are busy, even though there was no actual work done.\n\n\xa7 recommendations.author.ipr.title\nDevelop a Training Plan\n\n\xa7 recommendations.author.ipr.description\nfor each employee.\n\n*Individual training plan* is a list of goals and tasks that help a person develop in a certain area.\n\n# How to create a plan:\n- create a competency matrix;\n- identify which competencies have the least knowledge and experience;\n- find out which of these competencies are of interest to the employee;\n- come up with 3..5 goals within each such competency for the next six months or a year;\n- try to do something every month to achieve one goal;\n- remind every month about the overall plan to achieve these goals;\n\n# Does a manager need a plan?\nYes, the manager should also make a plan for themselves. If there is no higher-level manager, they should self-assess.\n\n# Why this is important:\n- employees become more loyal to the company;\n- you get more qualified personnel for the same money;\n\n\xa7 recommendations.author.oneToOne.title\nConduct One-on-One Meetings Every Month\n\n\xa7 recommendations.author.oneToOne.description\nit helps to identify problems at an early stage.\n\n*One-to-one* is a regular personal meeting of a manager with a subordinate. Such meetings typically discuss everything important to the employee, what concerns them, and what they can share with the manager in private.\n\n# Why this is important:\n- easy to find out who is overburdened and who has free time;\n- possible to prevent employee burnout;\n- quick feedback can be obtained about processes that you might not notice;\n- trust is built, making employees more loyal to the company;\n- increases employee motivation and engagement;\n\n\xa7 recommendations.author.club.title\nGo to a Bar\n\n\xa7 recommendations.author.club.description\nonce a month or two.\n\nThis will help build informal communication within the team and bring the team together, even if the interaction is brief.\n\n# Why this is important:\n- quick feedback can be obtained about processes that you might not notice;\n- trust is built, making employees more loyal to the company;\n- increases employee engagement;\n\n\xa7 recommendations.hour.onlyWork.title: No Weekends Here\n\xa7 recommendations.hour.onlyWork.description: The project manager should probably be fired.\n\xa7 recommendations.hour.weekends.title: Working on Weekends\n\xa7 recommendations.hour.weekends.description: The project manager should probably be checked.\n\xa7 recommendations.hour.easy.title: There Are Problems\n\xa7 recommendations.hour.easy.description: There are likely crunch times and work is needed on weekends.\n\xa7 recommendations.week.lazyDays.down.title: Fewer Absences\n\xa7 recommendations.week.lazyDays.down.description: this indicator has dropped over the last three weeks\n\xa7 recommendations.week.lazyDays.up.title: More Absences\n\xa7 recommendations.week.lazyDays.up.description: no tasks or stricter control is needed\n\xa7 recommendations.week.notWork.title: Consistently Underperforms\n\xa7 recommendations.week.notWork.description: as every week the code is not 100% of the time\n\xa7 recommendations.week.upWork.title: Consistently Overworks\n\xa7 recommendations.week.upWork.description: as every week code is written on weekend days\n\xa7 recommendations.week.task.up.title: Productivity is growing\n\xa7 recommendations.week.task.up.description: or tasks have become too small. Need to check. If granularity is the same - reinforce the result.\n\xa7 recommendations.week.task.lazyMaintainer.description: consistently leads in absences. Fire?\n\xa7 recommendations.week.task.down.title: Productivity is Falling\n\xa7 recommendations.week.task.down.description\nor tasks are poorly split. Need to check. If granularity is the same - take control.\n\n# Assessment method:\n- the number of tasks per day that are being worked on has been steadily decreasing over the last three weeks.\n\n# Possible errors:\n- tasks could have been more complex than they seemed;\n- tasks could have had a large volume of work (need to check if the number of changes is also decreasing during this period)\n\n\xa7 recommendations.type.everyHasOne.title: Not signing task types\n\xa7 recommendations.type.everyHasOne.description: Most task types are done by one person.\n\xa7 recommendations.type.oneMaintainer.title: Narrow Specialization\n\xa7 recommendations.type.oneMaintainer.description\nmost tasks of one type are done by the same people.\n\n# Task types:\n\n\xa7 recommendations.type.common\n# It might not be the case\n\nMake sure that other employees correctly sign commits.\n\nSteps to ensure this:\n- set up a pre-commit check for commit messages;\n- explain to the team the need to indicate the type;\n- check in new branches that employees follow this rule;\n\n# If it is indeed the case\n\nYou have set up checks and ensured that the same employee does tasks of the same type.\n\nWhy this is bad:\n- their resignation will halt a whole bunch of processes;\n- it reduces the competence of other team members;\n- difficult to understand their edits at a higher level;\n\nHow to fix this:\n- distribute different types of tasks evenly;\n- change the area of work (tests, documentation, bugs) among employees every sprint;\n\n\xa7 recommendations.type.fewTypes.title\nThis is a local product\n\n\xa7 recommendations.type.fewTypes.description\nfor a specific customer or problem.\n\n# Signs of a "global" product:\n- localization;\n- documentation;\n- a large volume of tests;\n- visual customization;\n- refactoring of bottlenecks;\n- etc.\n\n# Why this product looks like a "local" one:\n- each "global" sign will be outweighed by its type of task;\n- the more "global" signs, the more likely a "global" product;\n\nIn this case, we see a small number of types, which likely indicates shortcomings that prevent the product from being easily scaled to the global market and sold in other countries.\n\n# It might not be the case\nBased on file types, we can assume the type of program (website, server application, DevOps scripts, etc.). For a frontend application, our hypothesis will be more accurate than for DevOps scripts, which might just be a micro-module of initialization.\n\n\xa7 recommendations.type.diff.title\nSplit the popular type into subtypes\n\n\xa7 recommendations.type.diff.description\nto detail errors.\n\nTypically, the task type labeled "bug fixing" is leading. This makes the statistics weakly detailed.\n\n*If you encounter this situation*, you can break down this type into subtypes (e.g., based on the location of detection).\n\nConsider several options for subtypes:\n- fix_dev (error detected during development);\n- fix_test (error detected during testing);\n- fix (error detected in production);\n\n\xa7 recommendations.type.buddy.title\nAccumulate minor tasks\n\n\xa7 recommendations.type.buddy.description\nfor new employees.\n\n# If a task is:\n- not important;\n- not big;\n- doesn\'t require deep immersion in the context;\n- more about refactoring than new code;\n\n# Put it in the backlog with the label "for beginners".\n\nWhen a new employee arrives, you will be able to immediately pull out a bunch of small and varied tasks for them to get acquainted with the project.\n\nAlso, if you have a lull in work, you can pull out one such minor task from the backlog.\n',"\n\xa7 page.settings.document.title: Display settings\n\xa7 page.settings.document.name: Page title\n\xa7 page.settings.document.language: Interface language\n\xa7 page.settings.document.depersonalize: Hide personal data\n\xa7 page.settings.links.title: Link prefixes\n\xa7 page.settings.links.task: For task numbers\n\xa7 page.settings.links.pr: For PR\n\xa7 page.settings.user.title: Individual settings\n\xa7 page.settings.user.notFound: No individual settings. Data for all employees are calculated based on common parameters.\n\xa7 page.settings.user.subTitle: Addendum to employment contract \u2116$1\n\xa7 page.settings.user.from: Start date\n\xa7 page.settings.mailmap: .mailmap example\n\xa7 page.settings.common.title: General salary data\n\xa7 page.settings.common.type.title: Project work type\n\xa7 page.settings.common.type.full: Full-time employment\n\xa7 page.settings.common.type.part: Project work\n\xa7 page.settings.common.salary: Monthly salary in USD (US dollar, $)\n\xa7 page.settings.common.currency: Currency for view\n\xa7 page.settings.common.workDaysInYear: Number of working days in a year\n\xa7 page.settings.common.vacationDaysInYear: Number of vacation days in a year\n\xa7 page.settings.common.workDaysInWeek: Workdays\n\xa7 page.settings.form.save: Save\n\xa7 page.settings.form.cancel: Cancel\n\xa7 page.settings.form.remove: Remove\n\xa7 page.settings.form.addEmployee: Add an employee\n\xa7 page.settings.form.addContract: Add an employment contract\n",'\n\xa7 page.welcome.step1: Execute the command in the root of your project.\n\xa7 page.welcome.step3: Drag and drop\n\xa7 page.welcome.step4: the log.txt file onto this page.\n\xa7 page.welcome.description: Git will create a log.txt file. It contains data for report generation. Or use git shortlog -s -n -e if you don\'t need a report. Create a [.mailmap|https://git-scm.com/docs/gitmailmap] file in the root of the project to consolidate employee statistics.\n\xa7 page.welcome.warning1: The service *DOES NOT SAVE* and *DOES NOT TRANSFER* your data. All calculations are performed locally in your browser on your machine.\n\xa7 page.welcome.warning2: The service *DOES NOT COLLECT STATISTICS* on projects. You can disconnect the internet, check traffic, and even build a local version from the [source|https://github.com/bakhirev/assayo].\n\xa7 page.common.words.title: Word Statistics.\n\xa7 page.common.words.description: the most popular word. Occurs $1 times.\n\xa7 page.common.commits.title: Number of commits by days.\n\xa7 page.common.commits.description: ($1) the most productive day in terms of the number of commits.\n\xa7 page.common.commits.title2: $1 commits made: $2\n\xa7 page.common.filter.allUsers: Does not matter\n\xa7 page.print.modal.title: What are we printing?\n\xa7 page.print.modal.page: Current page\n\xa7 page.print.modal.type: Current section\n\xa7 page.print.modal.all: All statistics\n\xa7 page.print.modal.cancel: Cancel\n\xa7 page.print.tableOfContents: Table of contents\n\xa7 page.print.title: Git repository report\n\xa7 page.print.sub_title: \xab$1\xbb\n\xa7 page.print.description: The data for the report was obtained from the commit history.\n\xa7 page.team.author.statusChart.title: Status\n\xa7 page.team.author.daysChart.title: Days of work\n\xa7 page.team.author.daysChart.item: days\n\xa7 page.team.author.days.half: half year\n\xa7 page.team.author.days.one: year\n\xa7 page.team.author.days.15: year and a half\n\xa7 page.team.author.days.two: two years\n\xa7 page.team.author.days.more: more than two years\n\xa7 page.team.author.title: Details\n\xa7 page.team.author.description1: *Part of the statistics* (work speed, costs, etc.) *for employees with the \'Assistant\' type is not counted*, as it is an episodic role in the project. It is assumed that they do not affect the project, and their edits can be disregarded in the context of the overall volume of work.\n\xa7 page.team.author.description2: *Default sorting* is by the number of tasks and groups (current, fired, assisting employees).\n\xa7 page.team.author.status: Status\n\xa7 page.team.author.company: Company\n\xa7 page.team.author.firstCommit: First commit\n\xa7 page.team.author.lastCommit: Last\n\xa7 page.team.author.daysAll: Total days\n\xa7 page.team.author.types: Types of work\n\xa7 page.team.author.commits: Commits\n\xa7 page.team.author.commitsSmall: commits\n\xa7 page.team.author.tasks: Tasks\n\xa7 page.team.author.tasksSmall: tasks\n\xa7 page.team.author.workedLosses: Days with and without commits\n\xa7 page.team.author.worked: work\n\xa7 page.team.author.losses: days without commits\n\xa7 page.team.author.days: days\n\xa7 page.team.author.daysForTask: Days per task\n\xa7 page.team.author.scopes: Features\n\xa7 page.team.author.moneyAll: Received\n\xa7 page.team.author.moneyWorked: Worked for\n\xa7 page.team.author.moneyLosses: Overpayment\n\xa7 page.team.author.type.work: works\n\xa7 page.team.author.type.dismissed: dismissed\n\xa7 page.team.author.type.staff: staff\n\xa7 page.team.hours.title: Distribution of commits during each day of the week\n\xa7 page.team.month.title: Project work calendar\n\xa7 page.team.month.first: (first work day)\n\xa7 page.team.month.last: (last work day)\n\xa7 page.team.scope.title: Feature statistics\n\xa7 page.team.scope.scope: Feature\n\xa7 page.team.scope.days: Working Days\n\xa7 page.team.scope.authorsDays: Person-Days\n\xa7 page.team.scope.tasks: Tasks\n\xa7 page.team.scope.commits: Commits\n\xa7 page.team.scope.commitsSmall: commits\n\xa7 page.team.scope.types: Types of work\n\xa7 page.team.scope.authors: Personal contribution\n\xa7 page.team.scope.cost: Cost\n\xa7 page.team.type.title: Task type statistics\n\xa7 page.team.type.description: *Personal contribution* is counted by the number of commits, not the volume of changed lines or files. Therefore, the "File Analysis" section should also be consulted to assess the scale of changes.\n\xa7 page.team.type.type: Type of work\n\xa7 page.team.type.unknown: unknown\n\xa7 page.team.type.tasks: Tasks\n\xa7 page.team.type.tasksSmall: tasks\n\xa7 page.team.type.days: Days\n\xa7 page.team.type.daysSmall: days\n\xa7 page.team.type.authorsDays: Person-days\n\xa7 page.team.type.commits: Commits\n\xa7 page.team.type.authors: Personal contribution\n\xa7 page.team.total.titleA: Volume of work\n\xa7 page.team.total.titleB: Cost\n\xa7 page.team.total.daysWorked.title: person-days\n\xa7 page.team.total.daysWorked.description: Only days with commits are counted\n\xa7 page.team.total.commits.title: commits\n\xa7 page.team.total.commits.description: Deleted branches are not counted\n\xa7 page.team.total.daysLosses.title: days without commits\n\xa7 page.team.total.daysLosses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 page.team.total.employment.title: working / dismissed\n\xa7 page.team.total.employment.description: If an employee does not make any commits within a month, they are considered dismissed\n\xa7 page.team.total.moneyAll.title: total\n\xa7 page.team.total.moneyAll.description: Total salary expenses\n\xa7 page.team.total.moneyWorked.title: actual\n\xa7 page.team.total.moneyWorked.description: Actual days worked multiplied by average salary\n\xa7 page.team.total.moneyLosses.title: possible overpayment\n\xa7 page.team.total.moneyLosses.description: Paid working days when there were no commits\n\xa7 page.team.total.weekendPayment.title: weekend work\n\xa7 page.team.total.weekendPayment.description: Total overpayment for weekend work\n\xa7 page.team.total.workSpeed.title: tasks per day\n\xa7 page.team.total.workSpeed.description: Average work speed of the team with the current composition of employees\n\xa7 page.team.total.moneySpeed.title: per month\n\xa7 page.team.total.moneySpeed.description: Forecasted salary payment amount with the current team composition, excluding taxes and related expenses\n\xa7 page.team.total.description1: *Person-days* \u2014 the work of one employee during a single working day. For example, in one calendar day, a team of three employees produces a work volume of three person-days.\n\xa7 page.team.total.description2: *Absentee days* are counted only as working days when commits could have been made. Weekends, public holidays, and vacations are not included in the calculation.\n\xa7 page.team.total.description3: The *working and dismissed* card shows the actual composition of employees who are continuously involved in work. Additionally, there are "assistants" \u2014 typically employees of a different specialization who may occasionally make commits to the project.\n\xa7 page.team.total.description4: *Overpayment* includes only working days when commits could have been made. Weekends, public holidays, and vacations are not included in the calculation. This is why overpayment + actual cost != total. The total cost includes payment for weekends, public holidays, and vacations.\n\xa7 page.team.total.description5: *Weekend work* is calculated at a rate of x2 the payment of a regular day. The displayed amount is specifically the overpayment (x1), as the fact of overtime in this context is not of interest. We focus on overpayment when increasing work speed.\n\xa7 page.team.tree.title: Project tree considering selected filters\n\xa7 page.team.tree.filters.author: Employee\n\xa7 page.team.tree.filters.commits: Number of commits\n\xa7 page.team.tree.filters.help: The minimum number of commits an employee has made in a file\n\xa7 page.team.tree.filters.all: All employees\n\xa7 page.team.tree.totalLines: Lines\n\xa7 page.team.tree.totalTasks: Tasks\n\xa7 page.team.tree.totalDays: Days\n\xa7 page.team.tree.tasks: tasks\n\xa7 page.team.tree.days: days\n\xa7 page.team.tree.add: Who added\n\xa7 page.team.tree.change: Who changed\n\xa7 page.team.tree.remove: Who removed\n\xa7 page.team.tree.line: lines\n\xa7 page.team.tree.linesAdded: added\n\xa7 page.team.tree.linesChanged: changed\n\xa7 page.team.tree.linesRemoved: removed\n\xa7 page.team.company.title: Details\n\xa7 page.team.company.employments.title: By number of employees\n\xa7 page.team.company.employments.item: employments\n\xa7 page.team.company.daysChart.title: By duration of the contract\n\xa7 page.team.company.daysChart.item: companies\n\xa7 page.team.company.active.yes: active\n\xa7 page.team.company.active.no: contract has expired\n\xa7 page.team.country.byTimezone: By the time of the last commit\n\xa7 page.team.country.filters.active: Works\n\xa7 page.team.country.filters.dismissed: Dismissed\n\xa7 page.team.country.filters.staff: Staff\n\xa7 page.team.country.pieByDomain.title: By email, timezone and language\n\xa7 page.team.country.pieByTimezone.title: By timezone\n\xa7 page.team.country.chart.item: employments\n\xa7 page.team.country.table.title: List of employees\n\xa7 page.team.country.table.country: Country\n\xa7 page.team.country.table.employments: Employments\n\xa7 page.team.country.travel.title: Trips (or VPN, or rebase)\n\xa7 page.team.country.travel.author: Employee\n\xa7 page.team.country.travel.fly: Number of flights\n\xa7 page.team.country.travel.path: Locations list\n\xa7 page.team.country.travel.date: Arrival date\n\xa7 page.team.country.travel.country: Location\n\xa7 page.team.refactor.title: Candidates for refactoring\n\xa7 page.team.refactor.lines: lines\n\xa7 page.team.refactor.tasks: tasks\n\xa7 page.team.refactor.days: days\n\xa7 page.team.refactor.path: Path\n\xa7 page.team.refactor.firstCommit: First commit\n\xa7 page.team.refactor.totalLines: Lines\n\xa7 page.team.refactor.totalTasks: Tasks\n\xa7 page.team.refactor.totalDays: Days in development\n\xa7 page.team.day.commits: Commits\n\xa7 page.team.day.activity: Activity\n\xa7 page.team.week.title: Weekly statistics\n\xa7 page.team.week.date: Date\n\xa7 page.team.week.numberTasks: Number of tasks\n\xa7 page.team.week.people: Number of people\n\xa7 page.team.week.line: Line changes\n\xa7 page.team.week.days: Days with and without commits\n\xa7 page.team.week.lossesDetails: Who did not commit\n\xa7 page.team.week.add: added\n\xa7 page.team.week.change: changed\n\xa7 page.team.week.remove: removed\n\xa7 page.team.week.hasCommits: had commits\n\xa7 page.team.week.hasNotCommits: had no commits\n\xa7 page.team.week.days: days\n\xa7 page.team.week.tasks: tasks\n\xa7 page.team.pr.task: Task\n\xa7 page.team.pr.tasks: tasks\n\xa7 page.team.pr.firstCommitTime: First commit\n\xa7 page.team.pr.lastCommitTime: Last\n\xa7 page.team.pr.workDays: Average time spent working on a task\n\xa7 page.team.pr.delayDays: Average time of the PR review\n\xa7 page.team.pr.all.workDays: Time spent working on a task\n\xa7 page.team.pr.all.delayDays: Time of the PR review\n\xa7 page.team.pr.middleTimeRelease: The ratio of development time to review time\n\xa7 page.team.pr.chart.1day: day\n\xa7 page.team.pr.chart.3day: three days\n\xa7 page.team.pr.chart.7day: week\n\xa7 page.team.pr.chart.14day: two weeks\n\xa7 page.team.pr.chart.30day: month\n\xa7 page.team.pr.chart.more: more\n\xa7 page.team.pr.date: Merge Date\n\xa7 page.team.pr.mergeAuthor: Merged by\n\xa7 page.team.pr.author: Employee\n\xa7 page.team.pr.work: development\n\xa7 page.team.pr.delay: waiting\n\xa7 page.team.pr.days: days\n\xa7 page.team.pr.oneTaskDays: Time spent on one task\n\xa7 page.team.pr.description1: *Development time* is the time difference from the first to the last commit on a task. It does not matter if there were breaks of several days between commits or not. Any commit increases the time.\n\xa7 page.team.pr.description2: *Waiting time* is the time between the last commit and the code merge. It shows the actual downtime while waiting for something.\n\xa7 page.team.pr.description3: *Why display development time* without splitting into coding and code review? To show the business the actual delivery time of the code. Waiting for testing, review comments, DevOps problems, and other process imperfections are already included in this term.\n\xa7 page.team.pr.statByAuthors: Statistics by employees\n\xa7 page.team.pr.longDelay: Prolonged Waiting for merge\n\xa7 page.team.pr.anonymous: PR without task number\n\xa7 page.team.pr.branch: Branch\n\xa7 page.team.tasks.task: Task\n\xa7 page.team.tasks.author: First commit author\n\xa7 page.team.tasks.from: First commit\n\xa7 page.team.tasks.to: Last commit\n\xa7 page.team.tasks.daysInWork: Days in work\n\xa7 page.team.tasks.comments: Comments\n\xa7 page.team.extension.extension: File extensions\n\xa7 page.team.extension.type: File sub types\n\xa7 page.team.extension.name: Type\n\xa7 page.team.extension.path: Path\n\xa7 page.team.extension.current.count: Number\n\xa7 page.team.extension.removed.count: Number of removed\n\xa7 page.team.extension.files: files\n\xa7 page.team.release.download: Download\n\xa7 page.team.release.title: Release\n\xa7 page.team.release.from: Created date\n\xa7 page.team.release.to: Delivery date\n\xa7 page.team.release.prLength: Tasks\n\xa7 page.team.release.delay: Preparation days\n\xa7 page.team.release.waiting: Days of waiting for next release\n\xa7 page.team.department.employments.title: The size of the current teams\n\xa7 page.team.department.employments.item: of teams\n\xa7 page.team.author.employments.less1: one employee\n\xa7 page.team.author.employments.less2: two employees\n\xa7 page.team.author.employments.less3: three employees\n\xa7 page.team.author.employments.less6: up to six employees\n\xa7 page.team.author.employments.less9: up to nine employees\n\xa7 page.team.author.employments.less12: up to 12 employees\n\xa7 page.team.author.employments.less15: up to 15 employees\n\xa7 page.team.author.employments.more: more than 15\n\xa7 page.team.department.daysChart.title: Duration of the project\n\xa7 page.team.department.daysChart.item: projects\n\xa7 page.team.department.title: List of projects\n\xa7 page.team.department.code: Code\n\xa7 page.team.department.from: First commit\n\xa7 page.team.department.to: Last\n\xa7 page.team.department.authors: employees\n\xa7 page.team.department.tasks: tasks\n\xa7 page.team.department.totalDays: Working days\n\xa7 page.team.department.totalAuthors: Number of employees\n\xa7 page.person.print.photo.title: Photo\n\xa7 page.person.print.photo.description: space for a photo\n\xa7 page.person.total.title: Main characteristics\n\xa7 page.person.total.daysWorked.title: days of work\n\xa7 page.person.total.daysWorked.description: Only days with commits are counted\n\xa7 page.person.total.tasks.title: tasks\n\xa7 page.person.total.tasks.description: If commits are properly signed\n\xa7 page.person.scoring.toolbar: The position according to this metric, relative to others. Two employees can take the same position if the values matches. Therefore, the total number of positions may be less than the number of employees.\n\xa7 page.person.character.title: Character\n\xa7 page.person.achievement.title: Achievements\n\xa7 page.person.achievement.positive: Positive\n\xa7 page.person.achievement.normal: Neutral\n\xa7 page.person.achievement.negative: Negative\n\xa7 page.person.achievement.description: The more negative achievements an employee accumulates, the higher the likelihood that the situation is unusual. It may be necessary to change their work mode, tasks, or reporting. A discussion with them to understand what problems are hindering their work is advisable.\n\xa7 page.person.gets.title: Gets taken:\n\xa7 page.person.gets.description: "Taking a get" in this context means being the first to leave a commit on a task with a "nice" number.\n\xa7 page.person.business.days.title: days of work\n\xa7 page.person.business.days.description: Only days with commits are counted\n\xa7 page.person.business.tasks.title: tasks\n\xa7 page.person.business.tasks.description: If commits are properly signed\n\xa7 page.person.business.losses.title: days without commits\n\xa7 page.person.business.losses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 page.person.business.commits.title: commits\n\xa7 page.person.business.commits.description: Deleted branches are not counted\n\xa7 page.person.business.time.description: Time from the first to the last commit (including non-working days)\n\xa7 page.person.business.time.title: Days on the project:\n\xa7 page.person.business.time.dismissed: (dismissed)\n\xa7 page.person.business.time.staff: (not in the team)\n\xa7 page.person.business.achievements: Achievements\n\xa7 page.person.changes.title: Achievements\n\xa7 page.person.changes.description: \nWith some types of formatting, git marks lines as "deleted" and "added",\nalthough in reality, they were "changed". Therefore, if you conducted a major refactoring,\ngit might show a small number of changes in the statistics, but the actual result\nwill be marked as a jump in "deleted" and "added" lines.\n\xa7 page.person.changes.description: List of commits and the number of changes in them for that day:\n\xa7 page.person.commits.title: List of commits:\n\xa7 page.person.money.title.total: Total over time\n\xa7 page.person.money.title.middle: Average cost\n\xa7 page.person.money.moneyAll.title: received\n\xa7 page.person.money.moneyAll.description: Assumed total salary from the project (see settings)\n\xa7 page.person.money.moneyWorked.title: worked for\n\xa7 page.person.money.moneyWorked.description: Actual days worked multiplied by average salary\n\xa7 page.person.money.moneyLosses.title: possible overpayment\n\xa7 page.person.money.moneyLosses.description: Days without commits multiplied by average salary\n\xa7 page.person.money.tasks.title: task\n\xa7 page.person.money.tasks.description: Number of closed tasks to the cost of the day\n\xa7 page.person.money.commits.title: commit\n\xa7 page.person.money.commits.description: Number of commits to the cost of the workday\n\xa7 page.person.speed.task: One task on average is\n\xa7 page.person.speed.max: Maximum speed per day\n\xa7 page.person.speed.days.title: days\n\xa7 page.person.speed.days.description: Refers to workdays, if commits are properly signed\n\xa7 page.person.speed.commits.title: commits\n\xa7 page.person.speed.commits.description: Top and bottom 10% of values are trimmed\n\xa7 page.person.speed.line.title: lines of code\n\xa7 page.person.speed.line.description: Top and bottom 10% of values are trimmed\n\xa7 page.person.speed.tasks.title: tasks\n\xa7 page.person.speed.tasks.description: A task may not be completed, but work should be done on it\n\xa7 page.person.speed.maxCommits.title: commits\n\xa7 page.person.speed.maxCommits.description: A task may not be completed, but work should be done on it\n\xa7 page.person.hours.title: Distribution of commits during each day of the week\n\xa7 page.person.week.date: Date\n\xa7 page.person.week.tasks: Number of tasks\n\xa7 page.person.week.workDays: Days with commits\n\xa7 page.person.week.taskInDay: Tasks per day\n\xa7 page.person.week.days: days\n\xa7 page.person.week.workDay: weekdays\n\xa7 page.person.week.weekends: weekends\n\xa7 page.sponsor.title: Please, support this project\n\xa7 page.sponsor.share.description: Tell about our [project|https://github.com/bakhirev/assayo] on social networks! You can share [article|https://habr.com/ru/articles/763342/], [post|https://www.reddit.com/r/ITManagers/comments/1e5k291/the_visualization_and_analysis_of_git_commit/] or [video|https://www.youtube.com/watch?v=jwCp_-bhrCQ].\n\xa7 page.sponsor.share.button: Copy the link\n\xa7 page.sponsor.money.description: We will be glad if you support us with any amount! All funds will be used for the further development of the project.\n\xa7 page.sponsor.money.qr: One-time payment (only Russia)\n\xa7 page.sponsor.money.github: GitHub Sponsor\n'].join(""),Ne=['\n\xa7 achievements.commitsAfter1500.title: \u0421\u043e\u0432\u0430\n\xa7 achievements.commitsAfter1500.description: 70% \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u043f\u043e\u0441\u043b\u0435 15:00\n\xa7 achievements.commitsBefore1500.title: \u0420\u0430\u043d\u043d\u044f\u044f \u043f\u0442\u0430\u0448\u043a\u0430\n\xa7 achievements.commitsBefore1500.description: 70% \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u0434\u043e \u043e\u0431\u0435\u0434\u0430\n\xa7 achievements.workEveryTime.title: \u0420\u0430\u0431 \u0431\u043e\u0436\u0438\u0439\n\xa7 achievements.workEveryTime.description: \u0435\u0441\u0442\u044c \u043a\u043e\u043c\u043c\u0438\u0442 \u043d\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u0447\u0430\u0441 \u0441\u0443\u0442\u043e\u043a\n\xa7 achievements.workNotWork.title: \u0421\u0442\u0440\u0435\u043b\u044c\u0431\u0430 \u0445\u043e\u043b\u043e\u0441\u0442\u044b\u043c\u0438\n\xa7 achievements.workNotWork.description: \u043a\u043e\u043c\u043c\u0438\u0442\u044b \u0435\u0441\u0442\u044c, \u0430 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u0445 \u0437\u0430\u0434\u0430\u0447 \u043d\u0435\u0442\n\xa7 achievements.userNotWork.title: \u0417\u0430\u043b\u0451\u0442\u043d\u044b\u0439\n\xa7 achievements.userNotWork.description: \u044d\u0442\u043e \u043d\u0435 \u0435\u0433\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u043f\u0440\u043e\u0435\u043a\u0442\n\xa7 achievements.userIsDied.title: \u041c\u0451\u0440\u0442\u0432\u0430\u044f \u0434\u0443\u0448\u0430\n\xa7 achievements.userIsDied.description: \u0440\u0430\u0431\u043e\u0442\u0430\u043b, \u043d\u043e \u0443\u0432\u043e\u043b\u0438\u043b\u0441\u044f\n\xa7 achievements.lessTasks.title: \u0417\u0430\u0448\u0435\u043b \u0438 \u0432\u044b\u0448\u0435\u043b\n\xa7 achievements.lessTasks.description: \u043c\u0435\u043d\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u0445 \u0437\u0430\u0434\u0430\u0447\n\xa7 achievements.moreTasks.title: \u0411\u0430\u0442\u044f \u0433\u0440\u0438\u0442 \u043c\u0430\u043b\u0430\u0446\u0430\n\xa7 achievements.moreTasks.description: \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u0445 \u0437\u0430\u0434\u0430\u0447\n\xa7 achievements.everyMessageLong.title: \u041c\u0430\u0441\u0442\u0435\u0440 \u043a\u0440\u0430\u0441\u043d\u043e\u0440\u0435\u0447\u0438\u044f\n\xa7 achievements.everyMessageLong.description: \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e \u0441\u0430\u043c\u044b\u0435 \u0434\u043b\u0438\u043d\u043d\u044b\u0435 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 achievements.everyMessageShort.title: \u0411\u043e\u043b\u0442\u0443\u043d \u043d\u0430\u0445\u043e\u0434\u043a\u0430 \u0434\u043b\u044f \u0448\u043f\u0438\u043e\u043d\u0430\n\xa7 achievements.everyMessageShort.description: \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e, \u0441\u0430\u043c\u044b\u0435 \u043a\u043e\u0440\u043e\u0442\u043a\u0438\u0435 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 achievements.shortestName.title: \u0420\u0430\u0437\u043c\u0435\u0440 \u043d\u0435 \u0433\u043b\u0430\u0432\u043d\u043e\u0435\n\xa7 achievements.shortestName.description: \u0441\u0430\u043c\u043e\u0435 \u043a\u043e\u0440\u043e\u0442\u043a\u043e\u0435 \u0438\u043c\u044f\n\xa7 achievements.longestName.title: \u0410\u0437\u0438\u043c \u0410\u0437\u0438\u0437 \u0418\u043b\u044c \u0410\u043c \u041a\u0430\u0434\u0438\u0440 \u0418\u043c\u0440\u0430\u043d II\n\xa7 achievements.longestName.description: \u0441\u0430\u043c\u043e\u0435 \u0434\u043b\u0438\u043d\u043d\u043e\u0435 \u0438\u043c\u044f\n\xa7 achievements.moreCommits.title: \u041c\u0430\u0441\u0442\u0435\u0440 \u0431\u0435\u043a\u0430\u043f\u043e\u0432\n\xa7 achievements.moreCommits.description: \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 achievements.lessCommits.title: \u0420\u0435\u0434\u043a\u043e \u043d\u043e \u043c\u0435\u0442\u043a\u043e\n\xa7 achievements.lessCommits.description: \u043c\u0435\u043d\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 achievements.oneCommitOneTask.title: \u0422\u043e\u0447\u043d\u043e \u0432 \u0446\u0435\u043b\u044c\n\xa7 achievements.oneCommitOneTask.description: \u0432 \u0441\u0440\u0435\u0434\u043d\u0435\u043c \u043e\u0434\u0438\u043d \u043a\u043e\u043c\u043c\u0438\u0442 \u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0443\n\xa7 achievements.moreLazyDays.title: \u041c\u044b\u0441\u043b\u0435\u043d\u043d\u043e \u044f \u0441 \u0432\u0430\u043c\u0438\n\xa7 achievements.moreLazyDays.description: \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u0434\u043d\u0435\u0439 \u0431\u0435\u0437 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 achievements.lessLazyDays.title: \u041f\u0430\u043f\u0430 \u041a\u0430\u0440\u043b\u043e\n\xa7 achievements.lessLazyDays.description: \u043c\u0435\u043d\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u0434\u043d\u0435\u0439 \u0431\u0435\u0437 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 achievements.zeroLazyDays.title: \u041d\u0438 \u0435\u0434\u0438\u043d\u043e\u0433\u043e \u0440\u0430\u0437\u0440\u044b\u0432\u0430\n\xa7 achievements.zeroLazyDays.description: \u043d\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0434\u043d\u044f \u0431\u0435\u0437 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 achievements.moreWorkDays.title: \u0426\u0435\u043d\u043d\u044b\u0439 \u0440\u0430\u0431\u043e\u0442\u043d\u0438\u043a\n\xa7 achievements.moreWorkDays.description: \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u0434\u043d\u0435\u0439\n\xa7 achievements.moreScopes.title: \u0421\u0442\u0430\u0440\u0442\u0430\u043f\u0435\u0440\n\xa7 achievements.moreScopes.description: \u0441\u0434\u0435\u043b\u0430\u043b \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u0444\u0438\u0447\u0435\u0439\n\xa7 achievements.lessScopes.title: \u0429\u0435\u0433\u043e\u043b\n\xa7 achievements.lessScopes.description: \u0441\u0434\u0435\u043b\u0430\u043b \u043c\u0435\u043d\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u0444\u0438\u0447\u0435\u0439\n\xa7 achievements.moreDaysForTask.title: \u0423\u043b\u0438\u0442\u043a\u0430 \u043d\u0430 \u0441\u043a\u043b\u043e\u043d\u0435\n\xa7 achievements.moreDaysForTask.description: \u0440\u0430\u0431\u043e\u0442\u0430 \u043f\u043e \u0437\u0430\u0434\u0430\u0447\u0430\u043c \u0438\u0434\u0451\u0442 \u043c\u0435\u0434\u043b\u0435\u043d\u043d\u0435\u0435 \u0447\u0435\u043c \u0443 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445\n\xa7 achievements.more2DaysForTask.title: C\u043e \u0441\u043b\u043e\u0443\n\xa7 achievements.more2DaysForTask.description: \u0431\u043e\u043b\u044c\u0448\u0435 \u0434\u0432\u0443\u0445 \u0434\u043d\u0435\u0439 \u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0443\n\xa7 achievements.more3YearsInProject.title: \u0421\u0442\u0430\u0440\u043e\u0436\u0438\u043b\n\xa7 achievements.more3YearsInProject.description: \u0431\u043e\u043b\u044c\u0448\u0435 \u0442\u0440\u0435\u0445 \u043b\u0435\u0442 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435\n\xa7 achievements.lessDaysInProject.title: \u0410 \u044d\u0442\u043e \u043a\u0442\u043e?\n\xa7 achievements.lessDaysInProject.description: \u043c\u0435\u043d\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u0434\u043d\u0435\u0439 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435\n\xa7 achievements.lessDaysForTask.title: \u0421\u043a\u043e\u0440\u043e\u0441\u0442\u0440\u0435\u043b\n\xa7 achievements.lessDaysForTask.description: \u043e\u0434\u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u043c\u0435\u043d\u044c\u0448\u0435 \u0434\u043d\u044f\n\xa7 achievements.adam.title: \u0410\u0434\u0430\u043c\n\xa7 achievements.adam.description: \u043f\u0435\u0440\u0432\u044b\u0439 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435\n\xa7 achievements.more90DaysInProject.title: \u0414\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c\n\xa7 achievements.more90DaysInProject.description: \u043d\u0435 \u0443\u0432\u043e\u043b\u0438\u043b\u0438 \u043d\u0430 \u0438\u0441\u043f\u044b\u0442\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u043c\n\xa7 achievements.more365DaysInProject.title: \u0413\u043e\u0434\u043e\u0432\u0430\u0441\u0438\u043a\n\xa7 achievements.more365DaysInProject.description: \u043e\u0442\u0440\u0430\u0431\u043e\u0442\u0430\u043b \u0433\u043e\u0434 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435\n\xa7 achievements.more666DaysInProject.title: \u0427\u0451\u0440\u0442\n\xa7 achievements.more666DaysInProject.description: \u043e\u0442\u0440\u0430\u0431\u043e\u0442\u0430\u043b 666 \u0434\u043d\u0435\u0439 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435\n\xa7 achievements.more777DaysInProject.title: \u0410\u0437\u0438\u043d\u043e 3 \u0442\u043e\u043f\u043e\u0440\u0430\n\xa7 achievements.more777DaysInProject.description: \u043e\u0442\u0440\u0430\u0431\u043e\u0442\u0430\u043b 777 \u0434\u043d\u0435\u0439 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435\n\xa7 achievements.moreDaysInProject.title: \u0427\u0430\u0441\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u044b, \u0447\u0430\u0441\u0442\u044c \u043a\u043e\u0440\u0430\u0431\u043b\u044f\n\xa7 achievements.moreDaysInProject.description: \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u0434\u043d\u0435\u0439 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435\n\xa7 achievements.moreRefactoring.title: \u0412\u044b\u043f\u0443\u0441\u043a\u0430\u044e\u0449\u0438\u0439 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\n\xa7 achievements.moreRefactoring.description: \u0441\u0434\u0435\u043b\u0430\u043b \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0445 \u043c\u0435\u0442\u043e\u043a \xab\u0440\u0435\u0444\u0430\u043a\u0442\u043e\u0440\u0438\u043d\u0433\xbb\n\xa7 achievements.longestMessage.title: "\u042f\u0437\u044b\u043a\u043e\u043c \u0431\u043e\u043b\u0442\u0430\u0442\u044c" \u043d\u0435 \u043c\u0435\u0448\u043a\u0438 \u0432\u043e\u0440\u043e\u0447\u0430\u0442\u044c\n\xa7 achievements.longestMessage.description: \u0441\u0430\u043c\u0430\u044f \u0434\u043b\u0438\u043d\u043d\u0430\u044f \u043f\u043e\u0434\u043f\u0438\u0441\u044c \u043a\u043e\u043c\u043c\u0438\u0442\u0430 \u0437\u0430 \u0432\u0441\u0435 \u0432\u0440\u0435\u043c\u044f\n\xa7 achievements.moreTasksInDay.title: \u0421\u043f\u0438\u0434\u0438-\u0433\u043e\u043d\u0449\u0438\u043a\n\xa7 achievements.moreTasksInDay.description: \u0440\u0435\u043a\u043e\u0440\u0434 \u043f\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0443 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u0445 \u0437\u0430\u0434\u0430\u0447 \u0432 \u0434\u0435\u043d\u044c\n\xa7 achievements.hasCommitFrom0to7.title: \u041d\u043e\u0447\u043d\u043e\u0439 \u0434\u043e\u0437\u043e\u0440\n\xa7 achievements.hasCommitFrom0to7.description: \u0435\u0441\u0442\u044c \u043a\u043e\u043c\u043c\u0438\u0442 \u043d\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u0447\u0430\u0441 \u043d\u043e\u0447\u0438\n\xa7 achievements.noCommitOnDay.title: \u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043f\u0435\u0440\u0435\u0440\u044b\u0432\n\xa7 achievements.noCommitOnDay.description: \u0435\u0441\u0442\u044c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u0447\u0430\u0441 \u0438 \u0434\u0435\u043d\u044c \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u043a\u043e\u043c\u0438\u0442\u0438\u0442\n\xa7 achievements.hasCommitEveryTime.title: \u0423\u043c\u0435\u0440 \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0435\n\xa7 achievements.hasCommitEveryTime.description: \u0435\u0441\u0442\u044c \u043a\u043e\u043c\u043c\u0438\u0442 \u043d\u0430 \u0447\u0430\u0441 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0434\u043d\u044f (\u0432\u043a\u043b\u044e\u0447\u0430\u044f \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0435)\n\xa7 achievements.commitsAfter1800.title: \u0414\u0435\u043b\u0443 \u0432\u0440\u0435\u043c\u044f\n\xa7 achievements.commitsAfter1800.description: \u043d\u0435\u0442 \u043d\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430 \u043f\u043e\u0441\u043b\u0435 18:00\n\xa7 achievements.moreFix.title: Bug hunter\n\xa7 achievements.moreFix.description: \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u0445 \u0431\u0430\u0433\u043e\u0432\n\xa7 achievements.lessWorkDays.title: \u0414\u0430\u043b\u044c\u0448\u0435 \u0431\u0435\u0437 \u043c\u0435\u043d\u044f\n\xa7 achievements.lessWorkDays.description: \u043c\u0435\u043d\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u0434\u043d\u0435\u0439\n\xa7 achievements.moreCreateCode.title: \u0421\u043e\u0437\u0438\u0434\u0430\u0442\u0435\u043b\u044c\n\xa7 achievements.moreCreateCode.description: \u0441\u043a\u043b\u043e\u043d\u0435\u043d \u0431\u043e\u043b\u044c\u0448\u0435 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u043a\u043e\u0434\n\xa7 achievements.moreRemoveCode.title: \u0420\u0430\u0437\u0440\u0443\u0448\u0438\u0442\u0435\u043b\u044c\n\xa7 achievements.moreRemoveCode.description: \u0441\u043a\u043b\u043e\u043d\u0435\u043d \u0431\u043e\u043b\u044c\u0448\u0435 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0434\u0430\u043b\u044f\u0442\u044c \u043a\u043e\u0434\n\xa7 achievements.moreChangeCode.title: \u0420\u0435\u0444\u043e\u0440\u043c\u0430\u0442\u043e\u0440\n\xa7 achievements.moreChangeCode.description: \u0441\u043a\u043b\u043e\u043d\u0435\u043d \u0431\u043e\u043b\u044c\u0448\u0435 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c \u043a\u043e\u0434\n\xa7 achievements.moreStyle.title: \u041f\u043e\u043b\u0438\u0446\u0438\u044f \u043c\u043e\u0434\u044b\n\xa7 achievements.moreStyle.description: \u0441\u043a\u043b\u043e\u043d\u0435\u043d \u0431\u043e\u043b\u044c\u0448\u0435 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c CSS\n\xa7 achievements.moreOnHoliday.title: \u041d\u0435\u0442 \u0436\u0438\u0437\u043d\u0438\n\xa7 achievements.moreOnHoliday.description: \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043c\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u0432 \u043d\u0435\u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f\n\xa7 achievements.morePRMerge.title: \u0422\u0430\u043c\u043e\u0436\u043d\u044f \u0434\u0430\u0451\u0442 \u0434\u043e\u0431\u0440\u043e\n\xa7 achievements.morePRMerge.description: \u0447\u0430\u0449\u0435 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u0442 \u043a\u043d\u043e\u043f\u043a\u0443 \xab\u0412\u043b\u0438\u0442\u044c\xbb \u0434\u043b\u044f PR\n\xa7 achievements.longWaitPR.title: \u0417\u0430\u0432\u0442\u0440\u0430 \u0442\u043e\u0447\u043d\u043e \u0432\u043e\u043b\u044c\u0451\u043c\n\xa7 achievements.longWaitPR.description: \u0441\u043e\u0437\u0434\u0430\u043b PR, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u043e\u043b\u044c\u0448\u0435 \u043c\u0435\u0441\u044f\u0446\u0430 \u043f\u0440\u043e\u0432\u0438\u0441\u0435\u043b \u043d\u0430 \u0440\u0435\u0432\u044c\u044e\n\xa7 achievements.moreLongWaitPR.title: \u0414\u0430\u0432\u043d\u044b\u043c \u0434\u0430\u0432\u043d\u043e, \u0432 \u0434\u0430\u043b\u0451\u043a\u043e\u0439 \u0433\u0430\u043b\u0430\u043a\u0442\u0438\u043a\u0435\n\xa7 achievements.moreLongWaitPR.description: \u0441\u043e\u0437\u0434\u0430\u043b PR, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0434\u043e\u043b\u0433\u043e \u043f\u0440\u043e\u0432\u0438\u0441\u0435\u043b \u043d\u0430 \u0440\u0435\u0432\u044c\u044e\n\xa7 achievements.oneExtension.title: \u041e\u0434\u0438\u043d \u0432 \u043f\u043e\u043b\u0435 \u0432\u043e\u0438\u043d\n\xa7 achievements.oneExtension.description: \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u043d \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 \u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f\n\xa7 achievements.fileRush.title: \u0417\u0435\u0440\u0433 \u0420\u0430\u0448\n\xa7 achievements.fileRush.description: \u0441\u043e\u0437\u0434\u0430\u043b \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435\n\xa7 achievements.moreLintHint.title: \u0413\u0440\u0430\u043c\u0430\u0440-\u043d\u0430\u0446\u0438\n\xa7 achievements.moreLintHint.description: \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0445 \u0441\u043e\u0437\u0434\u0430\u043b \u0438\u043b\u0438 \u0438\u0437\u043c\u0435\u043d\u0438\u043b \u0432 \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u0445 \u0430\u0432\u0442\u043e-\u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043a\u043e\u0434\u0430\n\xa7 achievements.moreReadMe.title: \u041b\u0435\u0442\u043e\u043f\u0438\u0441\u0435\u0446\n\xa7 achievements.moreReadMe.description: \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0445 \u0441\u043e\u0437\u0434\u0430\u043b \u0438\u043b\u0438 \u0438\u0437\u043c\u0435\u043d\u0438\u043b \u0444\u0430\u0439\u043b\u043e\u0432 MD\n\xa7 achievements.moreDevOps.title: DevOps\n\xa7 achievements.moreDevOps.description: \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0445 \u0441\u043e\u0437\u0434\u0430\u043b \u0438\u043b\u0438 \u0438\u0437\u043c\u0435\u043d\u0438\u043b \u0444\u0430\u0439\u043b\u043e\u0432 \u0434\u043b\u044f CI/CD\n\xa7 achievements.moreTests.title: \u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0449\u0438\u043a\n\xa7 achievements.moreTests.description: \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0445 \u0441\u043e\u0437\u0434\u0430\u043b \u0438\u043b\u0438 \u0438\u0437\u043c\u0435\u043d\u0438\u043b \u0444\u0430\u0439\u043b\u043e\u0432 \u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f\n\xa7 achievements.allRelease.title: \u0424\u0443\u043b\u043b \u0445\u0430\u0443\u0441\n\xa7 achievements.allRelease.description: \u0435\u0441\u0442\u044c \u0440\u0435\u043b\u0438\u0437, \u0441\u043e\u0431\u0440\u0430\u043d\u043d\u044b\u0439 \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0437 \u0435\u0433\u043e \u0437\u0430\u0434\u0430\u0447\n\xa7 achievements.firstCommit.title: \u041a\u0442\u043e \u043f\u0435\u0440\u0432\u044b\u0439, \u0442\u043e\u0433\u043e \u0438 \u0442\u0430\u043f\u043a\u0438\n\xa7 achievements.firstCommit.description: \u043f\u0435\u0440\u0432\u044b\u0439 \u043a\u043e\u043c\u043c\u0438\u0442 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435\n\xa7 achievements.lastCommit.title: \u042f \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u043b\n\xa7 achievements.lastCommit.description: \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043a\u043e\u043c\u043c\u0438\u0442 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435\n\xa7 achievements.firstLastCommit.title: \u041e\u0442 \u043d\u0430\u0447\u0430\u043b\u0430 \u0438 \u0434\u043e \u043a\u043e\u043d\u0446\u0430\n\xa7 achievements.firstLastCommit.description: \u043f\u0435\u0440\u0432\u044b\u0439 \u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043a\u043e\u043c\u043c\u0438\u0442 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435\n\xa7 achievements.longFilePath.title: \u0417\u0430\u043a\u0440\u043e\u043c\u0430 \u0440\u043e\u0434\u0438\u043d\u044b\n\xa7 achievements.longFilePath.description: \u043f\u0435\u0440\u0432\u044b\u0439 \u0441\u043e\u0437\u0434\u0430\u043b \u0444\u0430\u0439\u043b \u0441 \u0441\u0430\u043c\u044b\u043c \u0433\u043b\u0443\u0431\u043e\u043a\u0438\u043c \u0432\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c\n\xa7 achievements.longFileName.title: \u0420\u0430\u0437\u043c\u0435\u0440 \u0438\u043c\u0435\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\n\xa7 achievements.longFileName.description: \u0441\u043e\u0437\u0434\u0430\u043b \u0444\u0430\u0439\u043b \u0441 \u0441\u0430\u043c\u044b\u043c \u0434\u043b\u0438\u043d\u043d\u044b\u043c \u0438\u043c\u0435\u043d\u0435\u043c\u043c\n\xa7 achievements.workOnWeekends.title: \u0420\u0430\u0431\u043e\u0442\u0430 \u043d\u0435 walk\n\xa7 achievements.workOnWeekends.description: \u0445\u043e\u0442\u044c \u0440\u0430\u0437 \u0440\u0430\u0431\u043e\u0442\u0430\u043b \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0445\n\xa7 achievements.removeCreateFile.title: \u041e\u0442\u043a\u043e\u043f\u0430\u043b \u0441\u0442\u044e\u0430\u0440\u0434\u0435\u0441\u0441\u0443\n\xa7 achievements.removeCreateFile.description: \u0432\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b\n\xa7 achievements.renameFile.title: \u0410\u0441\u0442\u0430\u043d\u0430 \u041d\u0443\u0440-\u0421\u0443\u043b\u0442\u0430\u043d \u0410\u0441\u0442\u0430\u043d\u0430\n\xa7 achievements.renameFile.description: \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u044b\u0432\u0430\u043b \u0442\u0443\u0434\u0430-\u0441\u044e\u0434\u0430 \u0444\u0430\u0439\u043b\n\xa7 achievements.longTask.title: \u0412\u0440\u043e\u0434\u0435 \u0438\u0437\u044f\u043d\n\xa7 achievements.longTask.description: \u0440\u0430\u0431\u043e\u0442\u0430\u043b \u043d\u0430\u0434 \u0437\u0430\u0434\u0430\u0447\u0435\u0439 \u0431\u043e\u043b\u044c\u0448\u0435 \u0442\u0440\u0435\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432\n\xa7 achievements.haveNotEmail.title: \u041f\u043e\u0447\u0442\u0430\u043b\u044c\u043e\u043d \u041f\u0435\u0447\u043a\u0438\u043d \n\xa7 achievements.haveNotEmail.description: \u043d\u0435 \u0437\u0430\u043f\u043e\u043b\u043d\u0438\u043b \u043f\u043e\u043b\u0435 e-mail \u0432 git config\n\xa7 achievements.moreAddedFolders.title: \u0414\u0438\u0440\u0435\u043a\u0442\u043e\u0440 \n\xa7 achievements.moreAddedFolders.description: \u0441\u043e\u0437\u0434\u0430\u043b \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0445 \u0434\u0438\u0440\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0439\n\xa7 achievements.horoscope1.title: \u0420\u0435\u0442\u0440\u043e\u0433\u0440\u0430\u0434\u043d\u044b\u0439 \u041c\u0435\u0440\u043a\u0443\u0440\u0438\u0439 \u0432 \u041a\u043e\u0437\u0435\u0440\u043e\u0433\u0435\n\xa7 achievements.horoscope2.title: \u0420\u0435\u0442\u0440\u043e\u0433\u0440\u0430\u0434\u043d\u044b\u0439 \u041c\u0435\u0440\u043a\u0443\u0440\u0438\u0439 \u0432 \u0412\u043e\u0434\u043e\u043b\u0435\u0435\n\xa7 achievements.horoscope3.title: \u0420\u0435\u0442\u0440\u043e\u0433\u0440\u0430\u0434\u043d\u044b\u0439 \u041c\u0435\u0440\u043a\u0443\u0440\u0438\u0439 \u0432 \u0420\u044b\u0431\u0435\n\xa7 achievements.horoscope4.title: \u0420\u0435\u0442\u0440\u043e\u0433\u0440\u0430\u0434\u043d\u044b\u0439 \u041c\u0435\u0440\u043a\u0443\u0440\u0438\u0439 \u0432 \u041e\u0432\u043d\u0435\n\xa7 achievements.horoscope5.title: \u0420\u0435\u0442\u0440\u043e\u0433\u0440\u0430\u0434\u043d\u044b\u0439 \u041c\u0435\u0440\u043a\u0443\u0440\u0438\u0439 \u0432 \u0422\u0435\u043b\u044c\u0446\u0435\n\xa7 achievements.horoscope6.title: \u0420\u0435\u0442\u0440\u043e\u0433\u0440\u0430\u0434\u043d\u044b\u0439 \u041c\u0435\u0440\u043a\u0443\u0440\u0438\u0439 \u0432 \u0411\u043b\u0438\u0437\u043d\u0435\u0446\u0435\n\xa7 achievements.horoscope7.title: \u0420\u0435\u0442\u0440\u043e\u0433\u0440\u0430\u0434\u043d\u044b\u0439 \u041c\u0435\u0440\u043a\u0443\u0440\u0438\u0439 \u0432 \u0420\u0430\u043a\u0435\n\xa7 achievements.horoscope8.title: \u0420\u0435\u0442\u0440\u043e\u0433\u0440\u0430\u0434\u043d\u044b\u0439 \u041c\u0435\u0440\u043a\u0443\u0440\u0438\u0439 \u0432 \u041b\u044c\u0432\u0435\n\xa7 achievements.horoscope9.title: \u0420\u0435\u0442\u0440\u043e\u0433\u0440\u0430\u0434\u043d\u044b\u0439 \u041c\u0435\u0440\u043a\u0443\u0440\u0438\u0439 \u0432 \u0414\u0435\u0432\u0435\n\xa7 achievements.horoscope10.title: \u0420\u0435\u0442\u0440\u043e\u0433\u0440\u0430\u0434\u043d\u044b\u0439 \u041c\u0435\u0440\u043a\u0443\u0440\u0438\u0439 \u0432 \u0412\u0435\u0441\u0430\u0445\n\xa7 achievements.horoscope11.title: \u0420\u0435\u0442\u0440\u043e\u0433\u0440\u0430\u0434\u043d\u044b\u0439 \u041c\u0435\u0440\u043a\u0443\u0440\u0438\u0439 \u0432 \u0421\u043a\u043e\u0440\u043f\u0438\u043e\u043d\u0435\n\xa7 achievements.horoscope12.title: \u0420\u0435\u0442\u0440\u043e\u0433\u0440\u0430\u0434\u043d\u044b\u0439 \u041c\u0435\u0440\u043a\u0443\u0440\u0438\u0439 \u0432 \u0421\u0442\u0440\u0435\u043b\u044c\u0446\u0435\n\xa7 achievements.horoscope1.description: \u043f\u043e \u043c\u0435\u0441\u044f\u0446\u0443 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 achievements.horoscope2.description: \u043f\u043e \u043c\u0435\u0441\u044f\u0446\u0443 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 achievements.horoscope3.description: \u043f\u043e \u043c\u0435\u0441\u044f\u0446\u0443 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 achievements.horoscope4.description: \u043f\u043e \u043c\u0435\u0441\u044f\u0446\u0443 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 achievements.horoscope5.description: \u043f\u043e \u043c\u0435\u0441\u044f\u0446\u0443 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 achievements.horoscope6.description: \u043f\u043e \u043c\u0435\u0441\u044f\u0446\u0443 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 achievements.horoscope7.description: \u043f\u043e \u043c\u0435\u0441\u044f\u0446\u0443 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 achievements.horoscope8.description: \u043f\u043e \u043c\u0435\u0441\u044f\u0446\u0443 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 achievements.horoscope9.description: \u043f\u043e \u043c\u0435\u0441\u044f\u0446\u0443 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 achievements.horoscope10.description: \u043f\u043e \u043c\u0435\u0441\u044f\u0446\u0443 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 achievements.horoscope11.description: \u043f\u043e \u043c\u0435\u0441\u044f\u0446\u0443 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 achievements.horoscope12.description: \u043f\u043e \u043c\u0435\u0441\u044f\u0446\u0443 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 achievements.111.description: test\n',"\n\xa7 uiKit.console.button: \u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c\n\xa7 uiKit.console.notification: \u0422\u0435\u043a\u0441\u0442 \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\n\xa7 uiKit.dataLoader.page: \u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430\n\xa7 uiKit.dataLoader.size: \u041e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044f \u043f\u043e\n\xa7 uiKit.dataLoader.rows: \u0441\u0442\u0440\u043e\u043a.\n\xa7 uiKit.dataLoader.from: \u0438\u0437\n\xa7 uiKit.dataLoader.all: \u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0432\u0441\u0435\n\xa7 uiKit.hoursChart.work: \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0435 \u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f (\u0431\u0443\u0434\u043d\u0438, \u0441 07:00 \u0434\u043e 20:00)\n\xa7 uiKit.hoursChart.weekend: \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0435 \u0434\u043d\u0438 \u0438\u043b\u0438 \u0432\u0440\u0435\u043c\u044f \u0434\u043e/\u043f\u043e\u0441\u043b\u0435 \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u0434\u043d\u044f\n\xa7 uiKit.hoursChart.days: \u0441\u0443\u043c\u043c\u0430\u0440\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u0437\u0430 \u0432\u0441\u0435 \u0432\u0440\u0435\u043c\u044f \u0432 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0439 \u0434\u0435\u043d\u044c \u0438 \u0447\u0430\u0441\n\xa7 uiKit.page.remove: \u0423\u0434\u0430\u043b\u0438\u0442\u044c\n\xa7 uiKit.nothingFound.common.title: \u041d\u0435\u0442 \u0438\u043b\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\n\xa7 uiKit.nothingFound.common.description: \u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u0434\u0430\u043d\u043d\u044b\u0445, \u0435\u0441\u043b\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u044b \u0431\u0443\u0434\u0443\u0442 \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d\u044b \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 [Git commit message convention|https://www.conventionalcommits.org/en/v1.0.0/]. \u0428\u0430\u0431\u043b\u043e\u043d:\n\xa7 uiKit.nothingFound.common.console: \u041d\u043e\u043c\u0435\u0440_\u0437\u0430\u0434\u0430\u0447\u0438 \u0442\u0438\u043f(\u0444\u0438\u0447\u0430): \u043f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435\n\xa7 uiKit.nothingFound.common.example: \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:\n\xa7 uiKit.nothingFound.staff.title: \u041d\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\n\xa7 uiKit.nothingFound.staff.description1\n\u041e\u043d \u0432\u043d\u043e\u0441\u0438\u043b \u043f\u0440\u0430\u0432\u043a\u0438 \u043d\u0435 \u043a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0434\u0435\u043d\u044c \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u043b \u0441\u0442\u0430\u0442\u0443\u0441 \xab\u041f\u043e\u043c\u043e\u0448\u043d\u0438\u043a\xbb.\n\u0420\u0430\u0431\u043e\u0442\u043e\u0439 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 \u0441 \u0442\u0430\u043a\u0438\u043c \u0441\u0442\u0430\u0442\u0443\u0441\u043e\u043c \u043f\u043e \u0434\u0430\u043d\u043d\u043e\u043c\u0443 \u043f\u0440\u043e\u0435\u043a\u0442\u0443 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u043d\u0435\u0431\u0440\u0435\u0447\u044c, \u0442.\u043a. \u0435\u0433\u043e \u0432\u043b\u0430\u0434 \u043d\u0430 \u043e\u0431\u0449\u0435\u043c \u0444\u043e\u043d\u0435 \u043d\u0435\u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u0435\u043d.\n\xa7 uiKit.nothingFound.staff.description2\n\u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043d\u0435 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442 \u0434\u043b\u044f \u043d\u0435\u0433\u043e \u0440\u044f\u0434 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439.\n\u0415\u0441\u043b\u0438 \u044d\u0442\u043e \u043e\u0448\u0438\u0431\u043a\u0430 \u0438 \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430 \u043d\u0443\u0436\u043d\u043e \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0442\u044c \u043a\u0430\u043a \u043e\u0431\u044b\u0447\u043d\u043e\u0433\u043e, \u043f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u0432 \u0440\u0430\u0437\u0434\u0435\u043b \xab\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\xbb \u0438 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u0435 \u0435\u0433\u043e \u0442\u0438\u043f.\n\xa7 common.title: Git \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430\n\xa7 common.filters: \u0424\u0438\u043b\u044c\u0442\u0440\u044b\n\xa7 common.notifications.save: \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u044b\n\xa7 common.notifications.setting: \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u044b\n\xa7 common.fileLoader.notification: \u041e\u0448\u0438\u0431\u043a\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0444\u0430\u0439\u043b\u0430 $1\n","\n\xa7 sidebar.switch.team: \u041a\u043e\u043c\u0430\u043d\u0434\u0430\n\xa7 sidebar.switch.person: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\n\xa7 sidebar.buttons.settings: \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\n\xa7 sidebar.buttons.print: \u041f\u0435\u0447\u0430\u0442\u044c\n\xa7 sidebar.buttons.share: \u0420\u0430\u0441\u0448\u0430\u0440\u0438\u0442\u044c\n\xa7 sidebar.buttons.logout: \u0412\u044b\u0439\u0442\u0438\n\xa7 sidebar.filters.all: \u0432\u0441\u0451 \u0432\u0440\u0435\u043c\u044f\n\xa7 sidebar.filters.year: \u0433\u043e\u0434\n\xa7 sidebar.filters.halfYear: \u043f\u043e\u043b \u0433\u043e\u0434\u0430\n\xa7 sidebar.filters.month: \u043c\u0435\u0441\u044f\u0446\n\xa7 sidebar.filters.week: \u043d\u0435\u0434\u0435\u043b\u044f\n\xa7 sidebar.team.total: \u041e\u0431\u0449\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\n\xa7 sidebar.team.scope: \u0424\u0438\u0447\u0438\n\xa7 sidebar.team.author: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438\n\xa7 sidebar.team.type: \u0422\u0438\u043f\u044b \u0437\u0430\u0434\u0430\u0447\n\xa7 sidebar.team.pr: \u0412\u043b\u0438\u0442\u0438\u0435 \u043a\u043e\u0434\u0430\n\xa7 sidebar.team.day: \u041f\u043e \u0434\u043d\u044f\u043c\n\xa7 sidebar.team.week: \u041f\u043e \u043d\u0435\u0434\u0435\u043b\u044f\u043c\n\xa7 sidebar.team.month: \u041f\u043e \u043c\u0435\u0441\u044f\u0446\u0430\u043c\n\xa7 sidebar.team.files: \u0424\u0430\u0439\u043b\u044b\n\xa7 sidebar.team.removedFiles: \u0423\u0434\u0430\u043b\u0451\u043d\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b\n\xa7 sidebar.team.extension: \u0422\u0438\u043f\u044b \u0444\u0430\u0439\u043b\u043e\u0432\n\xa7 sidebar.team.tasks: \u0421\u043f\u0438\u0441\u043e\u043a \u0437\u0430\u0434\u0430\u0447\n\xa7 sidebar.team.release: \u0421\u043f\u0438\u0441\u043e\u043a \u0440\u0435\u043b\u0438\u0437\u043e\u0432\n\xa7 sidebar.team.hours: \u0420\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0435\n\xa7 sidebar.team.commits: \u0412\u0441\u0435 \u043a\u043e\u043c\u043c\u0438\u0442\u044b\n\xa7 sidebar.team.changes: \u0412\u0441\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f\n\xa7 sidebar.team.words: \u041f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u0441\u043b\u043e\u0432\u0430\n\xa7 sidebar.team.building: \u0412\u0438\u043a\u0442\u043e\u0440\u0438\u043d\u0430\n\xa7 sidebar.team.refactor: \u0420\u0435\u0444\u0430\u043a\u0442\u043e\u0440\u0438\u043d\u0433\n\xa7 sidebar.team.company: \u041a\u043e\u043c\u043f\u0430\u043d\u0438\u0438\n\xa7 sidebar.team.department: \u041e\u0442\u0434\u0435\u043b\u044b\n\xa7 sidebar.team.country: \u041c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\n\xa7 sidebar.team.settings: \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\n\xa7 sidebar.person.total: \u041e\u0431\u0449\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\n\xa7 sidebar.person.money: \u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u044b\n\xa7 sidebar.person.speed: \u0421\u043a\u043e\u0440\u043e\u0441\u0442\u044c\n\xa7 sidebar.person.day: \u041f\u043e \u0434\u043d\u044f\u043c\n\xa7 sidebar.person.week: \u041f\u043e \u043d\u0435\u0434\u0435\u043b\u044f\u043c\n\xa7 sidebar.person.month: \u041f\u043e \u043c\u0435\u0441\u044f\u0446\u0430\u043c\n\xa7 sidebar.person.tasks: \u0421\u043f\u0438\u0441\u043e\u043a \u0437\u0430\u0434\u0430\u0447\n\xa7 sidebar.person.hours: \u0420\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0435\n\xa7 sidebar.person.commits: \u0412\u0441\u0435 \u043a\u043e\u043c\u043c\u0438\u0442\u044b\n\xa7 sidebar.person.changes: \u0412\u0441\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f\n\xa7 sidebar.person.words: \u041f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u0441\u043b\u043e\u0432\u0430\n\xa7 sidebar.person.settings: \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\n",'\n\xa7 recommendations.modal.cancel: \u0417\u0430\u043a\u0440\u044b\u0442\u044c\n\xa7 recommendations.modal.open: \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435\n\xa7 recommendations.title\n\u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438 \u0438 \u0444\u0430\u043a\u0442\u044b\n\n\xa7 recommendations.timestamp.firstCommit.description\n\u0441\u0434\u0435\u043b\u0430\u043b \u043f\u0435\u0440\u0432\u044b\u0439 \u043a\u043e\u043c\u043c\u0438\u0442\n\n\u0414\u0435\u043d\u044c \u043d\u0435\u0434\u0435\u043b\u0438: $1\n\n\xa7 recommendations.timestamp.lastCommit.description\n\u0441\u0434\u0435\u043b\u0430\u043b \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043a\u043e\u043c\u043c\u0438\u0442\n\n\u0414\u0435\u043d\u044c \u043d\u0435\u0434\u0435\u043b\u0438: $1\n\n\xa7 recommendations.timestamp.common.title: $1 \u0434\u043d\u0435\u0439\n\xa7 recommendations.timestamp.allDays.description: \u043e\u0442 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0434\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430 (\u0432\u043a\u043b\u044e\u0447\u0430\u044f \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0435 \u0438 \u043f\u0440\u0430\u0437\u0434\u043d\u0438\u043a\u0438).\n\xa7 recommendations.timestamp.lossesDays.description: \u0431\u0435\u0437 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432, \u0434\u0430\u0436\u0435 \u0441 \u0443\u0447\u0451\u0442\u043e\u043c \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0445, \u043e\u0442\u043f\u0443\u0441\u043a\u0430 \u0438 \u0433\u043e\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u0430\u0437\u0434\u043d\u0438\u043a\u043e\u0432.\n\xa7 recommendations.timestamp.weekendDays.description\n\u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0445\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u044d\u0442\u043e \u043f\u043b\u043e\u0445\u043e:\n- \u0437\u0430\u043a\u0430\u0437\u0447\u0438\u043a \u043f\u043b\u0430\u0442\u0438\u0442 \u0434\u0432\u043e\u0439\u043d\u0443\u044e \u0446\u0435\u043d\u0443 \u0437\u0430 \u0440\u0430\u0431\u043e\u0442\u0443 \u0432 \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0434\u0435\u043d\u044c;\n- \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u0432\u044b\u0433\u043e\u0440\u0430\u044e\u0442;\n\n\xa7 recommendations.timestamp.regularWeekendWord.title: \u0420\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u043e\u0442\u043a\u0438\n\xa7 recommendations.timestamp.sometimeWeekendWord.title: \u0411\u044b\u0432\u0430\u044e\u0442 \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u043e\u0442\u043a\u0438\n\xa7 recommendations.timestamp.weekendWord.description\n\u0412\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u0441\u0442\u043e\u0438\u0442 \u0441\u043c\u0435\u043d\u0438\u0442\u044c \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0430, \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0430 \u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u043e\u0440\u0430.\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u044d\u0442\u043e \u043f\u043b\u043e\u0445\u043e:\n- \u0437\u0430\u043a\u0430\u0437\u0447\u0438\u043a \u043f\u043b\u0430\u0442\u0438\u0442 \u0434\u0432\u043e\u0439\u043d\u0443\u044e \u0446\u0435\u043d\u0443 \u0437\u0430 \u0440\u0430\u0431\u043e\u0442\u0443 \u0432 \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0434\u0435\u043d\u044c;\n- \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430, \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u043d\u0438\u0437\u043a\u043e\u0435;\n- \u0447\u0430\u0441\u0442\u044c \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 \u0443\u0432\u043e\u043b\u044c\u043d\u044f\u0435\u0442\u0441\u044f;\n- \u0438\u0437-\u0437\u0430 \u0441\u043f\u0435\u0448\u043a\u0438 \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043d\u043e\u0432\u044b\u0435 \u043e\u0448\u0438\u0431\u043a\u0438;\n\n# \u0421\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e:\n- \u043d\u0435\u0432\u0435\u0440\u043d\u043e \u043e\u0446\u0435\u043d\u0438\u043b\u0438 \u0441\u0440\u043e\u043a\u0438 \u0432 \u0441\u0430\u043c\u043e\u043c \u043d\u0430\u0447\u0430\u043b\u0435;\n- \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442;\n- \u0441\u043b\u0430\u0431\u0430\u044f \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0430;\n- \u0441\u043b\u0430\u0431\u0430\u044f \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 (\u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u043e\u0440\u0430 \u043d\u0435 \u043d\u0430\u043d\u0438\u043c\u0430\u043b\u0438, \u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u043c\u0438\u0434\u043b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432);\n- \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u0430\u0447\u0430\u043b\u0438 \u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434, \u043f\u043e\u0442\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c;\n- \u043d\u0435\u0442 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043d\u044f\u0442\u044c \u043e\u0448\u0438\u0431\u043a\u0438;\n\n\xa7 recommendations.timestamp.neverWeekendWord.title: \u041e\u0431\u044b\u0447\u043d\u043e \u0431\u0435\u0437 \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u043e\u0442\u043e\u043a\n\xa7 recommendations.timestamp.neverWeekendWord.description\n\u041d\u043e \u0438\u043d\u043e\u0433\u0434\u0430 \u0431\u044b\u0432\u0430\u044e\u0442.\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u044d\u0442\u043e \u043f\u043b\u043e\u0445\u043e:\n- \u0437\u0430\u043a\u0430\u0437\u0447\u0438\u043a \u043f\u043b\u0430\u0442\u0438\u0442 \u0434\u0432\u043e\u0439\u043d\u0443\u044e \u0446\u0435\u043d\u0443 \u0437\u0430 \u0440\u0430\u0431\u043e\u0442\u0443 \u0432 \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0434\u0435\u043d\u044c;\n- \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u0432\u044b\u0433\u043e\u0440\u0430\u044e\u0442;\n\n\xa7 recommendations.scope.parallelism.not.title\n\u041d\u0435\u0442 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u044b\u0445 \u0440\u0430\u0431\u043e\u0442\n\n\xa7 recommendations.scope.parallelism.not.description\n\u043b\u044e\u0431\u0443\u044e \u0444\u0438\u0447\u0443 \u0432 \u043e\u0434\u0438\u043d \u043c\u043e\u043c\u0435\u043d\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0434\u0435\u043b\u0430\u0435\u0442 \u043e\u0434\u0438\u043d \u0447\u0435\u043b\u043e\u0432\u0435\u043a.\n\n# \u041c\u0435\u0442\u043e\u0434 \u0440\u0430\u0441\u0447\u0451\u0442\u0430:\n- \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e-\u0434\u043d\u0438 \u0434\u0435\u043b\u044f\u0442\u0441\u044f \u043d\u0430 \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0434\u043d\u0438 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0439 \u0444\u0438\u0447\u0438;\n- \u043d\u0430\u0445\u043e\u0434\u0438\u043c \u0441\u0440\u0435\u0434\u043d\u0435\u0435 \u0430\u0440\u0438\u0444\u043c\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435;\n- \u0435\u0441\u043b\u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043c\u0435\u043d\u044c\u0448\u0435 1.3 \u0441\u0447\u0438\u0442\u0430\u0435\u043c, \u0447\u0442\u043e \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u044b\u0445 \u0440\u0430\u0431\u043e\u0442 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0430 \u0444\u0438\u0447\u0435\u0439 \u043e\u0431\u044b\u0447\u043d\u043e \u043d\u0435\u0442;\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u044d\u0442\u043e \u043f\u043b\u043e\u0445\u043e:\n- \u043f\u043e\u0432\u044b\u0448\u0430\u0435\u0442\u0441\u044f bus factor;\n- \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u043c\u0435\u0434\u043b\u0435\u043d\u043d\u0435\u0435 \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0442\u0441\u044f;\n- \u0442\u0440\u0443\u0434\u043d\u043e \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u0443 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430;\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u044d\u0442\u043e \u0445\u043e\u0440\u043e\u0448\u043e:\n- \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u0447\u0435\u043d\u044c \u0433\u043b\u0443\u0431\u043e\u043a\u043e \u043f\u043e\u0433\u0440\u0443\u0436\u0435\u043d\u044b \u0432 \u043f\u0440\u0435\u0434\u043c\u0435\u0442\u043d\u0443\u044e \u043e\u0431\u043b\u0430\u0441\u0442\u044c \u0438 \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u044f;\n- \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u043d\u0435 \u0431\u044b\u0432\u0430\u0435\u0442 merge \u043a\u043e\u043d\u0444\u043b\u0438\u043a\u0442\u043e\u0432;\n- \u043f\u0440\u043e\u0435\u043a\u0442 \u043c\u043e\u0436\u0435\u0442 \u043e\u0447\u0435\u043d\u044c \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u0440\u0430\u0437\u043d\u044b\u0435 \u0441\u0442\u043e\u0440\u043e\u043d\u044b;\n\n\xa7 recommendations.scope.parallelism.has.title\n\u0427\u0430\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e\n\n\xa7 recommendations.scope.parallelism.has.description\n\u0418\u043d\u043e\u0433\u0434\u0430 \u0444\u0438\u0447\u0443 \u0434\u0435\u043b\u0430\u044e\u0442 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0447\u0435\u043b\u043e\u0432\u0435\u043a.\n\n# \u041c\u0435\u0442\u043e\u0434 \u0440\u0430\u0441\u0447\u0451\u0442\u0430:\n- \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e-\u0434\u043d\u0438 \u0434\u0435\u043b\u044f\u0442\u0441\u044f \u043d\u0430 \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0434\u043d\u0438 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0439 \u0444\u0438\u0447\u0438;\n- \u043d\u0430\u0445\u043e\u0434\u0438\u043c \u0441\u0440\u0435\u0434\u043d\u0435\u0435 \u0430\u0440\u0438\u0444\u043c\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435;\n- \u0435\u0441\u043b\u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043e\u0442 1.3 \u0434\u043e 2.0 \u0441\u0447\u0438\u0442\u0430\u0435\u043c, \u0447\u0442\u043e \u0447\u0430\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0440\u0430\u0437\u043d\u044b\u0445 \u0444\u0438\u0447\u0435\u0439 \u0438\u043d\u043e\u0433\u0434\u0430 \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e;\n\n\n\xa7 recommendations.scope.parallelism.every.title\n\u041f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u044b\u0435 \u0440\u0430\u0431\u043e\u0442\u044b\n\n\xa7 recommendations.scope.parallelism.every.description\n\u043b\u044e\u0431\u0443\u044e \u0444\u0438\u0447\u0443 \u0432 \u043e\u0434\u0438\u043d \u043c\u043e\u043c\u0435\u043d\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0434\u0435\u043b\u0430\u044e\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0447\u0435\u043b\u043e\u0432\u0435\u043a\n\n# \u041c\u0435\u0442\u043e\u0434 \u0440\u0430\u0441\u0447\u0451\u0442\u0430:\n- \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e-\u0434\u043d\u0438 \u0434\u0435\u043b\u044f\u0442\u0441\u044f \u043d\u0430 \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0434\u043d\u0438 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0439 \u0444\u0438\u0447\u0438;\n- \u043d\u0430\u0445\u043e\u0434\u0438\u043c \u0441\u0440\u0435\u0434\u043d\u0435\u0435 \u0430\u0440\u0438\u0444\u043c\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435;\n- \u0435\u0441\u043b\u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u0434\u0432\u0443\u0445 \u0441\u0447\u0438\u0442\u0430\u0435\u043c, \u0447\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0440\u0430\u0437\u043d\u044b\u0445 \u0444\u0438\u0447\u0435\u0439 \u043e\u0431\u044b\u0447\u043d\u043e \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e;\n\n\n\xa7 recommendations.scope.money\n\u0432 \u0442\u0430\u043a\u0443\u044e \u0441\u0443\u043c\u043c\u0443 \u043c\u043e\u0436\u043d\u043e \u043e\u0446\u0435\u043d\u0438\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u0443 \u043f\u043e \u0434\u0430\u043d\u043d\u043e\u043c\u0443 \u043f\u0440\u043e\u0435\u043a\u0442\u0443.\n\n# \u041c\u0435\u0442\u043e\u0434 \u0440\u0430\u0441\u0447\u0451\u0442\u0430:\n- \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e-\u0434\u043d\u0438 \u0437\u0430\u0442\u0440\u0430\u0447\u0435\u043d\u043d\u044b\u0435 \u043d\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0443\u043c\u043d\u043e\u0436\u0430\u044e\u0442\u0441\u044f \u043d\u0430 \u0438\u043d\u0434\u0438\u0432\u0438\u0434\u0443\u0430\u043b\u044c\u043d\u0443\u044e \u0437\u0430\u0440\u043f\u043b\u0430\u0442\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432;\n\n\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0437\u0430\u0440\u043f\u043b\u0430\u0442\u0443 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430, \u0434\u043b\u044f \u0431\u043e\u043b\u0435\u0435 \u0442\u043e\u0447\u043d\u043e\u0439 \u0441\u0443\u043c\u043c\u044b, \u043c\u043e\u0436\u043d\u043e \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \xab\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\xbb\n\n# \u042d\u0442\u043e \u043c\u043d\u043e\u0433\u043e \u0438\u043b\u0438 \u043c\u0430\u043b\u043e?\n\u0414\u043b\u044f \u043e\u0442\u0432\u0435\u0442\u0430 \u043d\u0430 \u044d\u0442\u043e\u0442 \u0432\u043e\u043f\u0440\u043e\u0441, \u043d\u0443\u0436\u043d\u043e \u043e\u0442\u0432\u0435\u0442\u0438\u0442\u044c \u043d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435:\n- \u0437\u0430 \u044d\u0442\u0438 \u0434\u0435\u043d\u044c\u0433\u0438 \u043c\u043e\u0436\u043d\u043e \u043a\u0443\u043f\u0438\u0442\u044c \u0433\u043e\u0442\u043e\u0432\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435?\n- \u0437\u0430 \u044d\u0442\u0438 \u0434\u0435\u043d\u044c\u0433\u0438 \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u0445\u043e\u0440\u043e\u0448\u0438\u0439 \u043f\u0440\u043e\u0434\u0443\u043a\u0442?\n\n\u0415\u0441\u043b\u0438 \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 \u043e\u0431\u0430 \u0432\u043e\u043f\u0440\u043e\u0441\u0430 \xab\u0434\u0430\xbb, \u0442\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0441 \u043d\u0443\u043b\u044f \u043d\u0435 \u0441\u0442\u043e\u0438\u043b\u0430 \u043f\u043e\u0442\u0440\u0430\u0447\u0435\u043d\u043d\u044b\u0445 \u043d\u0430 \u043d\u0435\u0451 \u0434\u0435\u043d\u0435\u0433.\n \n\xa7 recommendations.scope.bus.everyHasOne.title\nBus factor = 1\n\n\xa7 recommendations.scope.bus.everyHasOne.description\n\u0412 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0444\u0438\u0447 \u043f\u043e\u0433\u0440\u0443\u0436\u0435\u043d \u043e\u0434\u0438\u043d \u0447\u0435\u043b\u043e\u0432\u0435\u043a.\n\u041d\u0430\u0434\u043e \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u043b\u044e\u0434\u0435\u0439.\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u044d\u0442\u043e \u043f\u043b\u043e\u0445\u043e:\n- \u0435\u0441\u043b\u0438 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u0431\u0443\u0434\u0443\u0442 \u0443\u0432\u043e\u043b\u044c\u043d\u044f\u0442\u044c\u0441\u044f, \u0431\u0443\u0434\u0435\u0442 \u0442\u0440\u0443\u0434\u043d\u043e \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c \u0438\u0445 \u0440\u0430\u0431\u043e\u0442\u0443;\n- \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0435\u0433\u043e \u043a\u043e\u0434\u0430;\n\n# \u041a\u0430\u043a \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u0432\u044b\u0431\u043e\u0440\u043a\u0430:\n- \u0431\u043e\u043b\u0435\u0435 80% \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u0432 \u0444\u0438\u0447\u0443 \u0434\u0435\u043b\u0430\u0435\u0442 \u043e\u0434\u0438\u043d \u0447\u0435\u043b\u043e\u0432\u0435\u043a;\n- \u043f\u0440\u043e\u0435\u043a\u0442 \u0438\u043c\u0435\u0435\u0442 \u0431\u043e\u043b\u0435\u0435 60% \u0442\u0430\u043a\u0438\u0445 \u0444\u0438\u0447\u0435\u0439;\n\n\xa7 recommendations.scope.bus.oneMaintainer\n\u0432 \u0444\u0438\u0447\u0438 \u043f\u043e\u0433\u0440\u0443\u0436\u0435\u043d \u043e\u0434\u0438\u043d \u0447\u0435\u043b\u043e\u0432\u0435\u043a.\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u044d\u0442\u043e \u043f\u043b\u043e\u0445\u043e:\n- \u0435\u0441\u043b\u0438 \u043e\u043d \u0443\u0432\u043e\u043b\u0438\u0442\u0441\u044f, \u0431\u0443\u0434\u0435\u0442 \u0442\u0440\u0443\u0434\u043d\u043e \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443;\n- \u0441\u043d\u0438\u0436\u0430\u0435\u0442\u0441\u044f \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e code-review;\n- \u0442\u0440\u0443\u0434\u043d\u043e \u0437\u0430\u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0442\u044c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u043f\u0440\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438;\n\n# \u041a\u0430\u043a \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u0432\u044b\u0431\u043e\u0440\u043a\u0430:\n- \u0431\u043e\u043b\u0435\u0435 80% \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u0432 \u0444\u0438\u0447\u0443 \u0441\u0434\u0435\u043b\u0430\u043b \u043e\u0434\u0438\u043d \u0447\u0435\u043b\u043e\u0432\u0435\u043a;\n\n\xa7 recommendations.scope.types.process.title\n\u041f\u043b\u043e\u0445\u0438\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u044b\n\n\xa7 recommendations.scope.types.process.description\n\u0411\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0444\u0438\u0447 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u043e\u0434\u0438\u043d \u0442\u0438\u043f \u0437\u0430\u0434\u0430\u0447.\n\n\xa7 recommendations.scope.types.one\n\u0444\u0438\u0447\u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u043e\u0434\u0438\u043d \u0442\u0438\u043f \u0437\u0430\u0434\u0430\u0447.\n\n\xa7 recommendations.scope.types.common\n\u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u043e\u0434\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0442 \u043a\u043e\u043c\u043c\u0438\u0442\u044b \u0438\u043b\u0438 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 \u0437\u0430\u0432\u043e\u0434\u0438\u0442 \u043e\u0434\u0438\u043d \u0438 \u0442\u043e\u0442 \u0436\u0435 \u0442\u0438\u043f \u0437\u0430\u0434\u0430\u0447.\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u044d\u0442\u043e \u0432\u0430\u0436\u043d\u043e:\n- \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0434\u0440\u0443\u0433\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u0435;\n- \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u0442\u044c "\u043a\u043e\u0440\u043e\u0431\u043e\u0447\u043d\u0443\u044e" \u0432\u0435\u0440\u0441\u0438\u044e;\n- \u0441\u0438\u043b\u044c\u043d\u0430\u044f \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0442 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0445 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432;\n- \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043e\u0448\u0438\u0431\u043e\u043a \u0438 \u043d\u0438\u0437\u043a\u043e\u0435 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u043a\u043e\u0434\u0430;\n- \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0435 \u0437\u0430\u043c\u0435\u0434\u043b\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432 \u0431\u0443\u0434\u0443\u0449\u0435\u043c;\n\n# \u0412 \u0447\u0451\u043c \u043e\u0448\u0438\u0431\u043a\u0430 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430:\n- \u0432\u0437\u0433\u043b\u044f\u0434 \u043d\u0430 \u043f\u0440\u043e\u0434\u0443\u043a\u0442, \u0442\u043e\u043b\u044c\u043a\u043e \u0441 \u043f\u043e\u0437\u0438\u0446\u0438\u0438 \xab\u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0439 \u0434\u0435\u043c\u043a\u0438\xbb;\n\n# \u0427\u0442\u043e \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c:\n- \u0442\u0435\u0441\u0442\u044b;\n- \u043e\u0448\u0438\u0431\u043a\u0438 (\u0432\u044b\u044f\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u043f\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043c \u0442\u0435\u0441\u0442\u043e\u0432);\n- \u0440\u0435\u0444\u0430\u043a\u0442\u043e\u0440\u0438\u043d\u0433 (\u0442.\u043a. \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u043c\u043e\u0436\u0435\u0442 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c\u0441\u044f);\n- \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f;\n- \u043f\u0440\u0430\u0432\u043a\u0438 \u0441\u0442\u0438\u043b\u044f (\u043a\u0430\u043a \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043e\u043f\u0440\u043e\u0441\u0430 \u0444\u043e\u043a\u0443\u0441-\u0433\u0440\u0443\u043f\u043f\u044b);\n\n\xa7 recommendations.scope.plan.title\n\u041f\u043e\u0441\u0442\u0440\u043e\u0439\u0442\u0435 \u0434\u043e\u043b\u0433\u043e\u0441\u0440\u043e\u0447\u043d\u044b\u0439 \u043f\u043b\u0430\u043d\n\n\xa7 recommendations.scope.plan.description\n\u0441 \u0443\u0447\u0435\u0442\u043e\u043c \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b.\n\n\u041f\u0440\u0438 \u0442\u043e\u043c \u043e\u043f\u0438\u0440\u0430\u0442\u044c\u0441\u044f \u044d\u0442\u043e\u0442 \u043f\u043b\u0430\u043d \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u0440\u0430\u0437\u0443 \u043d\u0430 \u0441\u0430\u043c\u044b\u0435 \u0442\u0440\u0443\u0434\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438.\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u043f\u043b\u0430\u043d\u0430 \u043f\u043b\u043e\u0445\u043e:\n- \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u0434\u0435\u043b\u0430\u044e\u0442 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e, \u043d\u0435 \u0437\u0430\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044f \u0442\u043e\u0447\u043a\u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f. \u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u043f\u0438\u0448\u0435\u0442\u0441\u044f \u043d\u0435 \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u044b\u0439 \u043a\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0442\u043e\u0440\u043c\u043e\u0437\u0438\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0444\u0438\u0447\u0438;\n\n# \u0412 \u0447\u0451\u043c \u043e\u0448\u0438\u0431\u043a\u0430 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430:\n- \u043e\u043d \u043d\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043b, \u043a\u0430\u043a \u043f\u0440\u043e\u0434\u0443\u043a\u0442 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u0430\u043b\u0435\u0435 \u0438 \u0432 \u043a\u0430\u043a\u0438\u0445 \u0442\u043e\u0447\u043a\u0430\u0445 \u0431\u0443\u0434\u0435\u0442 \u0440\u043e\u0441\u0442;\n\n# \u041a\u0430\u043a \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c:\n- \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043b\u0430\u043d \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u044f \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430;\n- \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043b\u0430\u043d \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u044f \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b (\u0441 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c\u0438 \u0438 DBA);\n- \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u0441\u0445\u0435\u043c \u0441\u0440\u0430\u0437\u0443 \u043f\u0440\u043e\u0433\u043e\u0432\u0430\u0440\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u043c\u043e\u043c\u0435\u043d\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u0441\u0438\u043b\u044c\u043d\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c\u0441\u044f;\n\n\xa7 recommendations.scope.cost.title\n\u041e\u0446\u0435\u043d\u0438\u0442\u0435 \u0438\u043d\u0432\u0435\u0441\u0442\u0438\u0446\u0438\u0438 \u0432 \u0444\u0438\u0447\u0443\n\n\xa7 recommendations.scope.cost.description\n\u0441 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u043c \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u043f\u0440\u0438\u0431\u044b\u043b\u0438.\n\n\u0424\u0438\u0447\u0438 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043e\u0440\u043e\u0433\u043e \u0441\u0442\u043e\u044f\u0442 \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435, \u043d\u043e \u043f\u0440\u0438\u043d\u043e\u0441\u044f\u0442 \u043c\u0430\u043b\u043e \u043f\u0440\u0438\u0431\u044b\u043b\u0438, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0441\u0442\u043e\u0438\u0442 \u043e\u0442\u043b\u043e\u0436\u0438\u0442\u044c \u0438\u043b\u0438 \u0432\u043e\u043e\u0431\u0449\u0435 \u043e\u0442\u043c\u0435\u043d\u0438\u0442\u044c. \u042d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0435\u0442 \u043f\u0440\u043e\u0435\u043a\u0442 \u0431\u043e\u043b\u0435\u0435 \u043a\u043e\u043c\u043c\u0435\u0440\u0447\u0435\u0441\u043a\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u044b\u043c.\n\n\xa7 recommendations.author.lotOfLazy.title: \u0421\u043b\u0438\u0448\u043a\u043e\u043c \u043c\u0430\u043b\u043e \u043a\u043e\u0434\u0430: $1\n\xa7 recommendations.author.lotOfLazy.description\n\u041c\u043e\u0436\u0435\u0442 \u0443\u0432\u043e\u043b\u0438\u0442\u044c?\n\n# \u0421\u043e\u0441\u0442\u0430\u0432: \n- $1;\n\n# \u041e\u0442\u0432\u0435\u0442\u044c\u0442\u0435 \u0441\u0435\u0431\u0435 \u043d\u0430 \u0432\u043e\u043f\u0440\u043e\u0441\u044b:\n- \u043e\u043d \u0442\u0438\u043c\u043b\u0438\u0434, \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u043e\u0440, \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a?\n- \u044d\u0442\u043e \u0435\u0433\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u043f\u0440\u043e\u0435\u043a\u0442?\n- \u0435\u0441\u0442\u044c \u043a\u0430\u043a\u0438\u0435-\u0442\u043e \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u043d\u0435\u0433\u043e?\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u043d\u0435\u0442 \u0441\u043c\u044b\u0441\u043b\u0430 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c\n\u0421\u0443\u043c\u043c\u0430\u0440\u043d\u044b\u0435 \u0437\u0430\u0442\u0440\u0430\u0442\u044b \u043d\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u0443\u0436\u0435 \u0431\u043e\u043b\u044c\u0448\u0435 \u0447\u0435\u043c \u043f\u0440\u0438\u0431\u044b\u043b\u044c \u043e\u0442 \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u044b.\n\u0415\u0441\u043b\u0438 \u043c\u044b \u0441\u0447\u0438\u0442\u0430\u0435\u043c, \u0447\u0442\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u0438\u0432\u043d\u044b\u0445 \u043f\u043e\u043c\u0435\u0445 \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u043d\u0435 \u0431\u044b\u043b\u043e, \u0442\u043e \u0447\u0435\u043b\u043e\u0432\u0435\u043a \u043b\u0438\u0431\u043e \u043d\u0435 \u0445\u043e\u0447\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0432\u043e\u043e\u0431\u0449\u0435, \u043b\u0438\u0431\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0430 \u0434\u0432\u0443\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e.\n\u0423\u0432\u043e\u043b\u044c\u043d\u0435\u043d\u0438\u0435 \u0438 \u0437\u0430\u043c\u0435\u043d\u0430 \u043d\u043e\u0432\u044b\u043c \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u043c \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043e\u043f\u0440\u0430\u0432\u0434\u0430\u043d\u043d\u044b\u043c \u0441 \u0442\u043e\u0447\u043a\u0438 \u0437\u0440\u0435\u043d\u0438\u044f \u043e\u0431\u0449\u0435\u0439 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0438.\n\n\xa7 recommendations.author.manyLazy.title: \u041f\u0438\u0448\u0443\u0442 \u043c\u0430\u043b\u043e \u043a\u043e\u0434\u0430: $1\n\xa7 recommendations.author.manyLazy.description\n\u041d\u0443\u0436\u043d\u043e \u0432\u0437\u044f\u0442\u044c \u043d\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c.\n\n# \u0421\u043e\u0441\u0442\u0430\u0432: \n- $1;\n\n# \u041a\u0430\u043a \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u0432\u044b\u0431\u043e\u0440\u043a\u0430:\n- \u043d\u0430 \u0442\u0435\u0441\u0442\u043e\u0432\u044b\u0445 \u0432\u044b\u0431\u043e\u0440\u043a\u0430\u0445 \u0445\u043e\u0440\u043e\u0448\u0438\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442 \u043f\u0438\u0448\u0435\u0442 \u043a\u043e\u0434 \u0431\u043e\u043b\u044c\u0448\u0435 80% \u0432\u0440\u0435\u043c\u0435\u043d\u0438;\n- \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u043e\u0442 60% \u0434\u043e 80%;\n\n# \u041a\u0430\u043a \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c:\n- \u0434\u0440\u043e\u0431\u0438\u0442\u044c \u0437\u0430\u0434\u0430\u0447\u0438 \u043d\u0430 1..2 \u0434\u043d\u044f;\n- \u043a\u0430\u0436\u0434\u044b\u0439 \u0434\u0435\u043d\u044c \u0441\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0442\u044c \u0441\u0442\u0430\u0442\u0443\u0441;\n- \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u0437\u0430\u0434\u0430\u0447\u0438 \u0445\u043e\u0440\u043e\u0448\u043e \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u044b \u0438 \u0433\u043e\u0442\u043e\u0432\u044b \u043a \u043d\u0430\u0447\u0430\u043b\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438;\n- \u0443\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043f\u0430\u0440\u043d\u043e\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c;\n\n\xa7 recommendations.author.oneTypeMans\n\u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u043e\u0434\u043d\u043e\u043e\u0431\u0440\u0430\u0437\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 \u043f\u043e \u0442\u0438\u043f\u0443. \u041c\u043e\u0436\u0435\u0442 \u0432\u044b\u0433\u043e\u0440\u0435\u0442\u044c.\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u044d\u0442\u043e \u0432\u0430\u0436\u043d\u043e:\n- \u0435\u0441\u043b\u0438 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a \u0432\u044b\u0433\u043e\u0440\u0438\u0442, \u0435\u0433\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u044b \u0441\u043d\u0438\u0437\u0438\u0442\u0441\u044f;\n- \u0437\u0430\u043c\u0435\u0434\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u043e\u0441\u0442;\n- \u043f\u043e\u0432\u044b\u0448\u0430\u0435\u0442\u0441\u044f \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c \u0443\u0432\u043e\u043b\u044c\u043d\u0435\u043d\u0438\u044f;\n\n# \u041a\u0430\u043a \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u0432\u044b\u0431\u043e\u0440\u043a\u0430:\n- \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442\u0441\u044f \u0442\u0438\u043f \u0437\u0430\u0434\u0430\u0447\u0438;\n- \u0435\u0441\u043b\u0438 \u0431\u043e\u043b\u044c\u0448\u0435 70% \u0437\u0430\u0434\u0430\u0447 \u043e\u0434\u043d\u043e\u0433\u043e \u0442\u0438\u043f\u0430, \u0437\u043d\u0430\u0447\u0438\u0442 \u0447\u0435\u043b\u043e\u0432\u0435\u043a \u0434\u0435\u043b\u0430\u0435\u0442 \u043e\u0434\u043d\u043e \u0438 \u0442\u043e\u0436\u0435;\n\n\xa7 recommendations.author.workToday.title: \u0420\u0430\u0431\u043e\u0442\u0430\u0435\u0442 $1\n\xa7 recommendations.author.workToday.description\n\u043d\u0430\u0434 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c \u0432 \u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442.\n\n# \u0421\u043e\u0441\u0442\u0430\u0432: \n- $1;\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u0438\u043c\u0435\u043d\u043d\u043e \u043e\u043d\u0438:\n- \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u0434\u043d\u0435\u0439 \u0431\u043e\u043b\u0435\u0435 50%;\n- \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 30 \u0434\u043d\u0435\u0439;\n\n\xa7 recommendations.author.dismissed.title: \u0423\u0432\u043e\u043b\u0438\u043b\u043e\u0441\u044c $1\n\xa7 recommendations.author.dismissed.description\n\u0438\u043b\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e \u043a\u043e\u0440\u043e\u0442\u043a\u0438\u0439 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u043a \u0432\u0440\u0435\u043c\u0435\u043d\u0438.\n\n# \u0421\u043e\u0441\u0442\u0430\u0432:\n- $1;\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u0438\u043c\u0435\u043d\u043d\u043e \u043e\u043d\u0438:\n- \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u0432 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e\u043c \u0440\u0438\u0442\u043c\u0435 (\u0432\u0438\u0434\u0438\u043c\u043e, \u044d\u0442\u043e \u0438\u0445 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439);\n- \u0437\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043c\u0435\u0441\u044f\u0446 \u043d\u0435 \u0431\u044b\u043b\u043e \u043d\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430;\n- \u043e\u0442\u043f\u0443\u0441\u043a \u043e\u0431\u044b\u0447\u043d\u043e 14 \u0434\u043d\u0435\u0439 (\u0438\u0445 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u043d\u0435 \u043f\u043e\u0445\u043e\u0436\u0435 \u043d\u0430 \u043e\u0442\u043f\u0443\u0441\u043a);\n\n\xa7 recommendations.author.staff.title: \u041f\u043e\u043c\u043e\u0433\u0430\u044e\u0442 $1\n\xa7 recommendations.author.staff.description\n\u041b\u044e\u0434\u0438 \u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0447\u0442\u043e-\u043b\u0438\u0431\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0438\u043b\u0438.\n\n# \u0421\u043e\u0441\u0442\u0430\u0432: \n- $1;\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u0438\u043c\u0435\u043d\u043d\u043e \u043e\u043d\u0438:\n- \u044d\u0442\u043e \u043d\u0435 open-source \u043f\u0440\u043e\u0435\u043a\u0442;\n- \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u0434\u043d\u0435\u0439 \u043c\u0435\u043d\u0435\u0435 15% \u043e\u0442 \u043e\u0431\u0449\u0435\u0433\u043e \u0447\u0438\u0441\u043b\u0430;\n- \u0438\u0437\u043c\u0435\u043d\u044f\u044e\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u043e\u0434\u043d\u0438 \u0438 \u0442\u0435 \u0436\u0435 \u0444\u0430\u0439\u043b\u044b;\n\n\xa7 recommendations.author.projectType.openSource.title\n\u041e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442\n\n\xa7 recommendations.author.projectType.openSource.description\n\u043f\u044f\u0442\u044c \u0434\u043d\u0435\u0439 \u0432 \u043d\u0435\u0434\u0435\u043b\u044e \u0442\u0443\u0442 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442.\n\n\u041f\u0440\u043e\u0435\u043a\u0442 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0438 \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u043c, \u043f\u0440\u043e\u0441\u0442\u043e \u0442\u0430\u043a\u043e\u0439 \u0442\u0435\u043c\u043f \u0440\u0430\u0431\u043e\u0442\u044b \u043e\u0431\u044b\u0447\u043d\u043e \u0443 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a \u043d\u0430 GitHub.\n\n# \u041c\u0435\u0442\u043e\u0434 \u043e\u0446\u0435\u043d\u043a\u0438:\n- \u0431\u0435\u0440\u0435\u0442\u0441\u044f \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u043f\u043e \u0432\u0441\u0435\u043c \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c;\n- \u043f\u043e\u0434\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0441\u0440\u0435\u0434\u043d\u0435\u0435 \u0447\u0438\u0441\u043b\u043e \u0434\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u0438 \u0431\u0435\u0437 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432;\n- \u0443 open-source \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u0434\u043d\u0435\u0439 \u043e\u0431\u044b\u0447\u043d\u043e \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c 15..20%;\n\n# \u041f\u043e\u0441\u043b\u0435\u0434\u0441\u0442\u0432\u0438\u044f\n\u0414\u043b\u044f \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432, \u0433\u0434\u0435 \u0440\u0430\u0431\u043e\u0442\u0430 \u043d\u0435 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u0430, \u043d\u0435\u0442 \u0441\u043c\u044b\u0441\u043b\u0430 \u0432\u043e \u043c\u043d\u043e\u0433\u0438\u0445 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f\u0445. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0431\u0435\u0437 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432, \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0438 \u0442.\u043f. \u0431\u0443\u0434\u0443\u0442 \u0441\u043a\u0440\u044b\u0442\u044b.\n\n\u041a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u043e\u0446\u0435\u043d\u043a\u0443 \u0442\u0430\u043a\u0438\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u0434\u0435\u043b\u0430\u044e\u0442 \u043f\u0435\u0440\u0435\u0434 \u043d\u0430\u0447\u0430\u043b\u043e\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u0432\u043e\u0435\u0439 \u0437\u0430\u043a\u0440\u044b\u0442\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438. \u0421\u0430\u043c\u044b\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0432 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u0430\u044f \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0438 \u0441\u0443\u043c\u043c\u0430\u0440\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043d\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443.\n\n\n\xa7 recommendations.author.projectType.easy.title\n\u0421\u043b\u0430\u0431\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430\n\n\xa7 recommendations.author.projectType.easy.description\n\u0441\u043b\u0438\u0448\u043a\u043e\u043c \u043c\u043d\u043e\u0433\u043e \u0434\u043d\u0435\u0439 \u0431\u0435\u0437 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432.\n\n\u041d\u0443\u0436\u043d\u043e \u043f\u043e\u043d\u044f\u0442\u044c \u043f\u043e\u0447\u0435\u043c\u0443 \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u043d\u0435 \u043f\u0438\u0448\u0435\u0442 \u043a\u043e\u0434.\n\n# \u041c\u0435\u0442\u043e\u0434 \u043e\u0446\u0435\u043d\u043a\u0438:\n- \u0431\u0435\u0440\u0435\u0442\u0441\u044f \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u043f\u043e \u0432\u0441\u0435\u043c \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c;\n- \u043f\u043e\u0434\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0441\u0440\u0435\u0434\u043d\u0435\u0435 \u0447\u0438\u0441\u043b\u043e \u0434\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u0438 \u0431\u0435\u0437 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432;\n- \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u0441\u043b\u0430\u0431\u043e\u0439, \u0435\u0441\u043b\u0438 \u043f\u0440\u043e\u0446\u0435\u043d\u0442 \u0431\u0435\u0437 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u043e\u0442 5% \u0434\u043e 20%;\n\n# \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u043f\u0440\u0438\u0447\u0438\u043d\u044b:\n- \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435\u0442 \u0437\u0430\u0434\u0430\u0447;\n- \u0437\u0430\u0434\u0430\u0447\u0438 \u0435\u0441\u0442\u044c, \u043d\u043e \u0445\u043e\u0440\u043e\u0448\u043e \u043b\u043e\u0436\u0430\u0442\u0441\u044f \u043d\u0430 \u0442\u0435\u043a\u0443\u0449\u0443\u044e \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0443;\n- \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u043e\u0442\u0432\u043b\u0435\u043a\u0430\u044e\u0442 \u0441\u043e\u0432\u0435\u0449\u0430\u043d\u0438\u044f\u043c\u0438;\n- \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442;\n\n# \u0412\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0440\u0435\u0448\u0435\u043d\u0438\u044f:\n- \u043e\u0431\u0441\u0443\u0434\u0438\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u0441 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439;\n- \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u0433\u0440\u0430\u043d\u0443\u043b\u044f\u0440\u043d\u043e\u0441\u0442\u044c \u0437\u0430\u0434\u0430\u0447, \u0447\u0442\u043e\u0431\u044b \u0437\u0430 \u0434\u0435\u043d\u044c \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0443\u0441\u043f\u0435\u0442\u044c \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043e\u0434\u043d\u0443 \u0438\u043b\u0438 \u0434\u0432\u0435 \u0437\u0430\u0434\u0430\u0447\u0438;\n- \u0432\u0432\u0435\u0441\u0442\u0438 \u0435\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u044b\u0435 \u0441\u043e\u0432\u0435\u0449\u0430\u043d\u0438\u044f, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435 \u0437\u0430\u0434\u0430\u0447 \u043f\u043e \u0441\u0442\u0430\u0442\u0443\u0441\u0443;\n- \u0443\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0441\u0435\u0430\u043d\u0441\u044b \u043f\u0430\u0440\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0447\u0442\u043e\u0431\u044b \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043c\u043e\u0436\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0431\u044b\u0441\u0442\u0440\u0435\u0435;\n\n\xa7 recommendations.author.manager.title\n\u041e\u0431\u043e\u0437\u043d\u0430\u0447\u044c\u0442\u0435 \u0434\u0435\u0434\u043b\u0430\u0439\u043d\u044b\n\n\xa7 recommendations.author.manager.description\n\u0423 \u043b\u044e\u0431\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0447\u0451\u0442\u043a\u0438\u0439 \u0434\u0435\u0434\u043b\u0430\u0439\u043d.\n \n\u042d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u043d\u0435 \u0437\u0430\u0442\u044f\u0433\u0438\u0432\u0430\u0442\u044c \u0435\u0451 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u043d\u0435\u0439 \u0438\u043b\u0438 \u043d\u0435\u0434\u0435\u043b\u044c.\n\n# \u041a\u0430\u043a\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0441\u0442\u043e\u0438\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c:\n- \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0434\u043d\u0435\u0439 \u043d\u0430 \u043e\u0434\u043d\u0443 \u0437\u0430\u0434\u0430\u0447\u0443, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0442\u0440\u0430\u0442\u0438\u0442 \u0440\u0430\u0431\u043e\u0442\u043d\u0438\u043a;\n- \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0434\u043d\u0435\u0439 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u0432\u043b\u0438\u0442\u0438\u044f PR (\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0438 \u043f\u043e PR);\n\n\xa7 recommendations.author.shorTalk.title\n\u041f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u0435 \u0435\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u044b\u0435 \u0441\u043e\u0432\u0435\u0449\u0430\u043d\u0438\u044f\n\n\xa7 recommendations.author.shorTalk.description\n\u043e\u043d\u0438 \u043f\u043e\u043c\u043e\u0433\u0430\u044e\u0442 \u0431\u044b\u0442\u044c \u0432 \u043a\u0443\u0440\u0441\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430.\n \n\u041d\u0435 \u0440\u0430\u0441\u0442\u044f\u0433\u0438\u0432\u0430\u0439\u0442\u0435 \u0438\u0445 \u043e\u0442\u0432\u043b\u0435\u043a\u0430\u044f\u0441\u044c \u043d\u0430 \u043f\u043e\u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0435 \u0442\u0435\u043c\u044b.\n\n# \u041d\u0430 \u043a\u0430\u043a\u0438\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u0434\u043e\u043b\u0436\u0435\u043d \u043e\u0442\u0432\u0435\u0442\u0438\u0442\u044c \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a:\n- \u0447\u0442\u043e \u0431\u044b\u043b\u043e \u0441\u0434\u0435\u043b\u0430\u043d\u043e;\n- \u0447\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0441\u0434\u0435\u043b\u0430\u043d\u043e;\n- \u0435\u0441\u0442\u044c \u043b\u0438 \u043a\u0430\u043a\u0438\u0435-\u043b\u0438\u0431\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b;\n\n# \u0421\u043b\u0435\u0434\u0443\u0435\u0442 \u043e\u0431\u0440\u044b\u0432\u0430\u0442\u044c \u043c\u043e\u043d\u043e\u043b\u043e\u0433, \u0435\u0441\u043b\u0438:\n- \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0442 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u043c\u0435\u043b\u043a\u0438\u0435 \u0434\u0435\u0442\u0430\u043b\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u0432\u0430\u0436\u043d\u044b;\n- \u0443\u0432\u043e\u0434\u044f\u0442 \u0434\u0438\u0430\u043b\u043e\u0433 \u0432 \u0441\u0442\u043e\u0440\u043e\u043d\u0443, \u043e\u0442 \u043f\u0435\u0440\u0432\u043e\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043b\u0430\u043d\u0430;\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u044d\u0442\u043e \u0432\u0430\u0436\u043d\u043e:\n\u0427\u0430\u0441\u0442\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u0434\u0435\u043b\u0430\u0435\u0442, \u0441\u0442\u0430\u0440\u0430\u0435\u0442\u0441\u044f \u0443\u0439\u0442\u0438 \u043e\u0442 \u043e\u0442\u0432\u0435\u0442\u0430. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043e\u043d \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043a\u0443\u0447\u0443 \u043d\u0435\u043d\u0443\u0436\u043d\u044b\u0445 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0435\u0439 \u0441\u0432\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b. \u042d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0443\u0441\u044b\u043f\u0438\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u043e\u0432 \u0438 \u0440\u0430\u0441\u0442\u044f\u043d\u0443\u0442\u044c \u0432\u0440\u0435\u043c\u044f \u043e\u0442\u0432\u0435\u0442\u0430. \u0421\u043e\u0437\u0434\u0430\u0435\u0442\u0441\u044f \u043e\u0449\u0443\u0449\u0435\u043d\u0438\u0435 \u0447\u0442\u043e \u043e\u043d \u0447\u0435\u043c-\u0442\u043e \u0437\u0430\u043d\u044f\u0442, \u0445\u043e\u0442\u044f \u043f\u043e \u0444\u0430\u043a\u0442\u0443 \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0435 \u0431\u044b\u043b\u043e.\n\n\xa7 recommendations.author.ipr.title\n\u0421\u043e\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u043f\u043b\u0430\u043d \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f\n\n\xa7 recommendations.author.ipr.description\n\u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430.\n\n*\u0418\u043d\u0434\u0438\u0432\u0438\u0434\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043b\u0430\u043d \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f* \u2014 \u044d\u0442\u043e \u0441\u043f\u0438\u0441\u043e\u043a \u0446\u0435\u043b\u0435\u0439 \u0438 \u0437\u0430\u0434\u0430\u0447, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u043c\u043e\u0433\u0430\u044e\u0442 \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0443 \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u043e\u0431\u043b\u0430\u0441\u0442\u0438.\n\n# \u041a\u0430\u043a \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043f\u043b\u0430\u043d:\n- \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043c\u0430\u0442\u0440\u0438\u0446\u0443 \u043a\u043e\u043c\u043f\u0435\u0442\u0435\u043d\u0446\u0438\u0439;\n- \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u043f\u043e \u043a\u0430\u043a\u0438\u043c \u043a\u043e\u043c\u043f\u0435\u0442\u0435\u043d\u0446\u0438\u044f\u043c \u043c\u0435\u043d\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u0437\u043d\u0430\u043d\u0438\u0439 \u0438 \u043e\u043f\u044b\u0442\u0430;\n- \u0443\u0437\u043d\u0430\u0442\u044c \u043a\u0430\u043a\u0438\u0435 \u0438\u0437 \u044d\u0442\u0438\u0445 \u043a\u043e\u043c\u043f\u0435\u0442\u0435\u043d\u0446\u0438\u0439 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0443;\n- \u043f\u0440\u0438\u0434\u0443\u043c\u0430\u0442\u044c 3..5 \u0446\u0435\u043b\u0435\u0439 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u043a\u0430\u0436\u0434\u043e\u0439 \u0442\u0430\u043a\u043e\u0439 \u043a\u043e\u043c\u043f\u0435\u0442\u0435\u043d\u0446\u0438\u0438 \u043d\u0430 \u043f\u043e\u043b\u043f\u043e\u0441\u0442\u043e\u0440\u043e\u043d\u0438\u0435 \u0433\u043e\u0434\u0430 \u0438\u043b\u0438 \u0433\u043e\u0434;\n- \u043a\u0430\u0436\u0434\u044b\u0439 \u043c\u0435\u0441\u044f\u0446 \u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0447\u0442\u043e-\u043b\u0438\u0431\u043e \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f \u043e\u0434\u043d\u043e\u0439 \u0446\u0435\u043b\u0438;\n- \u043a\u0430\u0436\u0434\u044b\u0439 \u043c\u0435\u0441\u044f\u0446 \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u0442\u044c \u043e\u0431 \u043e\u0431\u0449\u0435\u043c \u043f\u043b\u0430\u043d\u0435 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f \u044d\u0442\u0438\u0445 \u0446\u0435\u043b\u0435\u0439;\n\n# \u041d\u0443\u0436\u0435\u043d \u043b\u0438 \u043f\u043b\u0430\u043d \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044e?\n\u0414\u0430, \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c \u0442\u0430\u043a \u0436\u0435 \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043f\u043b\u0430\u043d \u043d\u0430 \u0441\u0435\u0431\u044f. \u0415\u0441\u043b\u0438 \u043d\u0435\u0442 \u0432\u044b\u0448\u0435\u0441\u0442\u043e\u044f\u0449\u0435\u0433\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f, \u0442\u043e \u043e\u043d \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u0441\u0430\u043c \u0441\u0435\u0431\u044f.\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u044d\u0442\u043e \u0432\u0430\u0436\u043d\u043e:\n- \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0442\u0441\u044f \u0431\u043e\u043b\u0435\u0435 \u043b\u043e\u044f\u043b\u044c\u043d\u044b \u043a \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438;\n- \u0437\u0430 \u0442\u0435\u0436\u0435 \u0434\u0435\u043d\u044c\u0433\u0438 \u0432\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0435 \u0431\u043e\u043b\u0435\u0435 \u043a\u0432\u0430\u043b\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043a\u0430\u0434\u0440\u044b;\n\n\xa7 recommendations.author.oneToOne.title\n\u041f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u0435 1-1 \u043a\u0430\u0436\u0434\u044b\u0439 \u043c\u0435\u0441\u044f\u0446\n\n\xa7 recommendations.author.oneToOne.description\n\u044d\u0442\u043e \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u044f\u0432\u0438\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u043d\u0430 \u0440\u0430\u043d\u043d\u0435\u0439 \u0441\u0442\u0430\u0434\u0438\u0438.\n\n*One-to-one* \u2014 \u044d\u0442\u043e \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u043b\u0438\u0447\u043d\u044b\u0435 \u0432\u0441\u0442\u0440\u0435\u0447\u0438 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f \u0441 \u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d\u043d\u044b\u043c. \u041d\u0430 \u0442\u0430\u043a\u0438\u0445 \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u0445 \u043e\u0431\u044b\u0447\u043d\u043e \u043e\u0431\u0441\u0443\u0436\u0434\u0430\u044e\u0442 \u0432\u0441\u0451, \u0447\u0442\u043e \u0432\u0430\u0436\u043d\u043e \u0434\u043b\u044f \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430, \u0447\u0442\u043e \u0435\u0433\u043e \u0432\u043e\u043b\u043d\u0443\u0435\u0442, \u0438 \u0442\u043e, \u0447\u0435\u043c \u043e\u043d \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u0441 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u0435\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u0435\u0434\u0438\u043d\u0435.\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u044d\u0442\u043e \u0432\u0430\u0436\u043d\u043e:\n- \u043b\u0435\u0433\u043a\u043e \u0432\u044b\u044f\u0441\u043d\u0438\u0442\u044c, \u043a\u0442\u043e \u0438\u0437 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 \u043f\u0435\u0440\u0435\u0433\u0440\u0443\u0436\u0435\u043d, \u0430 \u0443 \u043a\u043e\u0433\u043e \u0435\u0441\u0442\u044c \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f;\n- \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u0438\u0442\u044c \u0432\u044b\u0433\u043e\u0440\u0430\u043d\u0438\u0435 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430;\n- \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0431\u044b\u0441\u0442\u0440\u0443\u044e \u043e\u0431\u0440\u0430\u0442\u043d\u0443\u044e \u0441\u0432\u044f\u0437\u044c \u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0435 \u0437\u0430\u043c\u0435\u0447\u0430\u0442\u044c;\n- \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0434\u043e\u0432\u0435\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435, \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0442\u0441\u044f \u0431\u043e\u043b\u0435\u0435 \u043b\u043e\u044f\u043b\u044c\u043d\u044b \u043a \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438;\n- \u043f\u043e\u0432\u044b\u0448\u0430\u0435\u0442\u0441\u044f \u043c\u043e\u0442\u0438\u0432\u0430\u0446\u0438\u044f \u0438 \u0432\u043e\u0432\u043b\u0435\u0447\u0435\u043d\u043d\u043e\u0441\u0442\u044c \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432;\n\n\xa7 recommendations.author.club.title\n\u0425\u043e\u0434\u0438\u0442\u0435 \u0432 \u0431\u0430\u0440\n\n\xa7 recommendations.author.club.description\n\u043e\u0434\u0438\u043d \u0440\u0430\u0437 \u0432 \u043c\u0435\u0441\u044f\u0446 \u0438\u043b\u0438 \u0434\u0432\u0430.\n\n\u042d\u0442\u043e \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043d\u0435\u0444\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u0443\u044e \u043a\u043e\u043c\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u044e \u0432 \u043a\u043e\u043b\u043b\u0435\u043a\u0442\u0438\u0432\u0435 \u0438 \u0441\u043f\u043b\u043e\u0442\u0438\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443, \u0434\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u0436\u0430\u0442\u044b\u043c.\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u044d\u0442\u043e \u0432\u0430\u0436\u043d\u043e:\n- \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0431\u044b\u0441\u0442\u0440\u0443\u044e \u043e\u0431\u0440\u0430\u0442\u043d\u0443\u044e \u0441\u0432\u044f\u0437\u044c \u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0435 \u0437\u0430\u043c\u0435\u0447\u0430\u0442\u044c;\n- \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0434\u043e\u0432\u0435\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435, \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0442\u0441\u044f \u0431\u043e\u043b\u0435\u0435 \u043b\u043e\u044f\u043b\u044c\u043d\u044b \u043a \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438;\n- \u043f\u043e\u0432\u044b\u0448\u0430\u0435\u0442\u0441\u044f \u0432\u043e\u0432\u043b\u0435\u0447\u0435\u043d\u043d\u043e\u0441\u0442\u044c \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432;\n\n\xa7 recommendations.hour.onlyWork.title: \u0412\u044b\u0445\u043e\u0434\u043d\u044b\u0445 \u0442\u0443\u0442 \u043d\u0435\u0442\n\xa7 recommendations.hour.onlyWork.description: \u0412\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u0441\u0442\u043e\u0438\u0442 \u0443\u0432\u043e\u043b\u0438\u0442\u044c \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0430.\n\xa7 recommendations.hour.weekends.title: \u0420\u0430\u0431\u043e\u0442\u0430 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0445\n\xa7 recommendations.hour.weekends.description: \u0412\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u0441\u0442\u043e\u0438\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0430.\n\xa7 recommendations.hour.easy.title: \u0411\u044b\u0432\u0430\u044e\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b\n\xa7 recommendations.hour.easy.description: \u0412\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u0431\u044b\u0432\u0430\u044e\u0442 \u0437\u0430\u0432\u0430\u043b\u044b \u0438 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0445.\n\xa7 recommendations.week.lazyDays.down.title: \u0421\u0442\u0430\u043b\u043e \u043c\u0435\u043d\u044c\u0448\u0435 \u043f\u0440\u043e\u0433\u0443\u043b\u043e\u0432\n\xa7 recommendations.week.lazyDays.down.description: \u0437\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u0442\u0440\u0438 \u043d\u0435\u0434\u0435\u043b\u0438 \u044d\u0442\u043e\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u0443\u043f\u0430\u043b\n\xa7 recommendations.week.lazyDays.up.title: \u0421\u0442\u0430\u043b\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u043f\u0440\u043e\u0433\u0443\u043b\u043e\u0432\n\xa7 recommendations.week.lazyDays.up.description: \u043d\u0435\u0442 \u0437\u0430\u0434\u0430\u0447 \u0438\u043b\u0438 \u043d\u0443\u0436\u0435\u043d \u0431\u043e\u043b\u0435\u0435 \u0436\u0435\u0441\u0442\u043a\u0438\u0439 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\n\xa7 recommendations.week.notWork.title: \u0421\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e \u043d\u0435 \u0434\u043e\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442\n\xa7 recommendations.week.notWork.description: \u0442.\u043a. \u043a\u0430\u0436\u0434\u0443\u044e \u043d\u0435\u0434\u0435\u043b\u044e \u043f\u0438\u0448\u0435\u0442 \u043a\u043e\u0434 \u043d\u0435 100% \u0432\u0440\u0435\u043c\u0435\u043d\u0438\n\xa7 recommendations.week.upWork.title: \u0421\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442\n\xa7 recommendations.week.upWork.description: \u0442.\u043a. \u043a\u0430\u0436\u0434\u0443\u044e \u043d\u0435\u0434\u0435\u043b\u044e \u043f\u0438\u0448\u0435\u0442 \u043a\u043e\u0434 \u0432 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0435 \u0434\u043d\u0438\n\xa7 recommendations.week.task.up.title: \u0420\u0430\u0441\u0442\u0451\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\n\xa7 recommendations.week.task.up.description\n\u0438\u043b\u0438 \u0437\u0430\u0434\u0430\u0447\u0438 \u0441\u0442\u0430\u043b\u0438 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u043c\u0435\u043b\u043a\u0438\u0435.\n \n\u041d\u0443\u0436\u043d\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c. \u0415\u0441\u043b\u0438 \u0433\u0440\u0430\u043d\u0443\u043b\u044f\u0440\u043d\u043e\u0441\u0442\u044c \u0442\u0430 \u0436\u0435 - \u0437\u0430\u043a\u0440\u0435\u043f\u0438\u0442\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442.\n\xa7 recommendations.week.task.lazyMaintainer.description: \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u043b\u0438\u0434\u0435\u0440 \u043f\u043e \u043f\u0440\u043e\u0433\u0443\u043b\u0430\u043c. \u0423\u0432\u043e\u043b\u0438\u0442\u044c?\n\xa7 recommendations.week.task.down.title: \u041f\u0430\u0434\u0430\u0435\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\n\xa7 recommendations.week.task.down.description\n\u0438\u043b\u0438 \u0437\u0430\u0434\u0430\u0447\u0438 \u0445\u0443\u0436\u0435 \u0440\u0430\u0437\u0431\u0438\u0432\u0430\u044e\u0442. \u041d\u0443\u0436\u043d\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c. \u0415\u0441\u043b\u0438 \u0433\u0440\u0430\u043d\u0443\u043b\u044f\u0440\u043d\u043e\u0441\u0442\u044c \u0442\u0430 \u0436\u0435 - \u0432\u0437\u044f\u0442\u044c \u043d\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c.\n\n# \u041c\u0435\u0442\u043e\u0434 \u043e\u0446\u0435\u043d\u043a\u0438:\n- \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u0434\u0430\u0447 \u0432 \u0434\u0435\u043d\u044c, \u043d\u0430\u0434 \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442, \u043d\u0430 \u043f\u0440\u043e\u0442\u044f\u0436\u0435\u043d\u0438\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 \u0442\u0440\u0435\u0445 \u043d\u0435\u0434\u0435\u043b\u044c \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e \u043f\u0430\u0434\u0430\u0435\u0442.\n\n# \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u043e\u0448\u0438\u0431\u043a\u0438:\n- \u0437\u0430\u0434\u0430\u0447\u0438 \u043c\u043e\u0433\u043b\u0438 \u0431\u044b\u0442\u044c \u0441\u043b\u043e\u0436\u043d\u0435\u0435, \u0447\u0435\u043c \u043a\u0430\u0437\u0430\u043b\u0438\u0441\u044c;\n- \u0437\u0430\u0434\u0430\u0447\u0438 \u043c\u043e\u0433\u043b\u0438 \u0438\u043c\u0435\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u043e\u0431\u044a\u0451\u043c \u0440\u0430\u0431\u043e\u0442\u044b (\u043d\u0443\u0436\u043d\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439, \u043f\u0430\u0434\u0430\u044e\u0442 \u043e\u043d\u0438 \u0438\u043b\u0438 \u043d\u0435\u0442 \u0437\u0430 \u044d\u0442\u043e\u0442 \u0436\u0435 \u043f\u0435\u0440\u0438\u043e\u0434)\n\n\xa7 recommendations.type.everyHasOne.title: \u041d\u0435 \u043f\u043e\u0434\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0442 \u0442\u0438\u043f \u0437\u0430\u0434\u0430\u0447\u0438\n\xa7 recommendations.type.everyHasOne.description: \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0442\u0438\u043f\u043e\u0432 \u0437\u0430\u0434\u0430\u0447 \u0434\u0435\u043b\u0430\u0435\u0442 \u043e\u0434\u0438\u043d \u0447\u0435\u043b\u043e\u0432\u0435\u043a.\n\xa7 recommendations.type.oneMaintainer.title: \u0423\u0437\u043a\u0430\u044f \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\n\xa7 recommendations.type.oneMaintainer.description\n\u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0437\u0430\u0434\u0430\u0447 \u043e\u0434\u043d\u043e\u0433\u043e \u0442\u0438\u043f\u0430 \u0434\u0435\u043b\u0430\u044e\u0442 \u043e\u0434\u043d\u0438 \u0438 \u0442\u0435 \u0436\u0435 \u043b\u044e\u0434\u0438.\n\n# \u0422\u0438\u043f\u044b \u0437\u0430\u0434\u0430\u0447:\n\n\xa7 recommendations.type.common\n# \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u044d\u0442\u043e \u043d\u0435 \u0442\u0430\u043a\n\n\u041d\u0443\u0436\u043d\u043e \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u0432\u0435\u0440\u043d\u043e \u043f\u043e\u0434\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0442 \u043a\u043e\u043c\u043c\u0438\u0442\u044b.\n\n\u0428\u0430\u0433\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u043c\u043e\u0433\u0443\u0442 \u044d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c:\n- \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043f\u0440\u0435-\u043a\u043e\u043c\u043c\u0438\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0434\u043b\u044f commit message;\n- \u043e\u0431\u044a\u044f\u0441\u043d\u0438\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0435, \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0442\u0438\u043f;\n- \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0432 \u043d\u043e\u0432\u044b\u0445 \u0432\u0435\u0442\u043a\u0430\u0445, \u0447\u0442\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0442 \u043f\u0440\u0430\u0432\u0438\u043b\u0443;\n\n# \u0415\u0441\u043b\u0438 \u044d\u0442\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0442\u0430\u043a\n\n\u0412\u044b \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u043b\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0438 \u0443\u0431\u0435\u0434\u0438\u043b\u0438\u0441\u044c \u0447\u0442\u043e \u043e\u0434\u0438\u043d \u0438 \u0442\u043e\u0442 \u0436\u0435 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a, \u0434\u0435\u043b\u0430\u0435\u0442 \u0437\u0430\u0434\u0430\u0447\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0438 \u0442\u043e\u0433\u043e \u0436\u0435 \u0442\u0438\u043f\u0430.\n\n\u041f\u043e\u0447\u0435\u043c\u0443 \u044d\u0442\u043e \u043f\u043b\u043e\u0445\u043e:\n- \u0435\u0433\u043e \u0443\u0432\u043e\u043b\u044c\u043d\u0435\u043d\u0438\u0435 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442 \u0446\u0435\u043b\u0443\u044e \u043f\u0430\u0447\u043a\u0443 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432;\n- \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u0435\u0442\u0441\u044f \u043a\u043e\u043c\u043f\u0435\u0442\u0435\u043d\u0446\u0438\u044f \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u0447\u043b\u0435\u043d\u043e\u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u044b;\n- \u0442\u0440\u0443\u0434\u043d\u043e \u0432\u0435\u0440\u0445\u043d\u0435\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u043e \u043f\u043e\u043d\u044f\u0442\u044c \u0435\u0433\u043e \u043f\u0440\u0430\u0432\u043a\u0438;\n\n\u041a\u0430\u043a \u044d\u0442\u043e \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c:\n- \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442\u044c \u0440\u0430\u0437\u043d\u044b\u0435 \u0442\u0438\u043f\u044b \u0437\u0430\u0434\u0430\u0447 \u0440\u0430\u0432\u043d\u043e\u043c\u0435\u0440\u043d\u043e;\n- \u043c\u0435\u043d\u044f\u0442\u044c \u043e\u0431\u043b\u0430\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u044b (\u0442\u0435\u0441\u0442\u044b, \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f, \u043e\u0448\u0438\u0431\u043a\u0438) \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\u043c\u0438 \u0447\u0435\u0440\u0435\u0437 \u0441\u043f\u0440\u0438\u043d\u0442;\n\n\xa7 recommendations.type.fewTypes.title\n\u042d\u0442\u043e \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\n\n\xa7 recommendations.type.fewTypes.description\n\u0434\u043b\u044f \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u0437\u0430\u043a\u0430\u0437\u0447\u0438\u043a\u0430 \u0438\u043b\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b.\n\n# \u041a\u0430\u043a\u0438\u0435 \u043f\u0440\u0438\u0437\u043d\u0430\u043a\u0438 \u0435\u0441\u0442\u044c \u0443 \xab\u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0433\u043e\xbb \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430:\n- \u043b\u043e\u043a\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f;\n- \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f;\n- \u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u043e\u0431\u044a\u0451\u043c \u0442\u0435\u0441\u0442\u043e\u0432;\n- \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u0430\u044f \u043a\u0430\u0441\u0442\u043e\u043c\u0438\u0437\u0430\u0446\u0438\u044f;\n- \u0440\u0435\u0444\u0430\u043a\u0442\u043e\u0440\u0438\u043d\u0433 \u0443\u0437\u043a\u0438\u0445 \u043c\u0435\u0441\u0442;\n- \u0438 \u0442.\u043f.\n\n# \u041f\u043e\u0447\u0435\u043c\u0443 \u044d\u0442\u043e\u0442 \u043f\u0440\u043e\u0434\u0443\u043a\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043a\u0430\u043a \xab\u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439\xbb:\n- \u0443 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \xab\u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0433\u043e\xbb \u043f\u0440\u0438\u0437\u043d\u0430\u043a\u0430 \u0431\u0443\u0434\u0435\u0442 \u043f\u0435\u0440\u0435\u0432\u0435\u0441 \u043f\u043e \u0441\u0432\u043e\u0435\u043c\u0443 \u0442\u0438\u043f\u0443 \u0437\u0430\u0434\u0430\u0447;\n- \u0447\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0435 \xab\u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0445\xbb \u043f\u0440\u0438\u0437\u043d\u0430\u043a\u043e\u0432, \u0442\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c \xab\u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0433\u043e\xbb \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430;\n\n\u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043c\u044b \u0432\u0438\u0434\u0438\u043c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0442\u0438\u043f\u043e\u0432, \u0430 \u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u0435\u0441\u0442\u044c \u043d\u0435\u0434\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u043c\u0435\u0448\u0430\u044e\u0449\u0438\u0435 \u043b\u0435\u0433\u043a\u043e \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0434\u0443\u043a\u0442 \u043d\u0430 \u043c\u0438\u0440\u043e\u0432\u043e\u0439 \u0440\u044b\u043d\u043e\u043a \u0438 \u043f\u0440\u043e\u0434\u0430\u0432\u0430\u0442\u044c \u0435\u0433\u043e \u0432 \u0434\u0440\u0443\u0433\u0438\u0445 \u0441\u0442\u0440\u0430\u043d\u0430\u0445.\n\n# \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u044d\u0442\u043e \u043d\u0435 \u0442\u0430\u043a\n\u041f\u043e \u0442\u0438\u043f\u0430\u043c \u0444\u0430\u0439\u043b\u043e\u0432 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u0442\u044c \u0442\u0438\u043f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b (\u0441\u0430\u0439\u0442, \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, DevOps \u0441\u043a\u0440\u0438\u043f\u0442\u044b \u0438 \u0442.\u0434.). \u0414\u043b\u044f frontend \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430\u0448\u0430 \u0433\u0438\u043f\u043e\u0442\u0435\u0437\u0430 \u0431\u0443\u0434\u0435\u0442 \u0431\u043e\u043b\u0435\u0435 \u0432\u0435\u0440\u043d\u043e\u0439, \u0447\u0435\u043c \u0434\u043b\u044f DevOps-\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u043b\u0438\u0448\u044c \u043c\u0438\u043a\u0440\u043e-\u043c\u043e\u0434\u0443\u043b\u0435\u043c \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438.\n\n\xa7 recommendations.type.diff.title\n\u0420\u0430\u0437\u0431\u0435\u0439\u0442\u0435 \u043b\u0438\u0434\u0438\u0440\u0443\u044e\u0449\u0438\u0439 \u0442\u0438\u043f \u043d\u0430 \u043f\u043e\u0434\u0442\u0438\u043f\u044b\n\n\xa7 recommendations.type.diff.description\n\u0434\u043b\u044f \u0434\u0435\u0442\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043e\u0448\u0438\u0431\u043e\u043a.\n\n\u041a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u0442\u0438\u043f \u0437\u0430\u0434\u0430\u0447 \u0441 \u043c\u0435\u0442\u043a\u043e\u0439 \xab\u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0448\u0438\u0431\u043e\u043a\xbb \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043b\u0438\u0434\u0438\u0440\u0443\u044e\u0449\u0438\u043c. \u042d\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0443 \u0441\u043b\u0430\u0431\u043e-\u0434\u0435\u0442\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439.\n\n*\u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u0430 \u0442\u0430\u043a\u0430\u044f \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044f*, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0440\u0430\u0437\u0431\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0442\u0438\u043f \u043d\u0430 \u043f\u043e\u0434\u0442\u0438\u043f\u044b (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e \u043c\u0435\u0441\u0442\u0443 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u0438\u044f).\n\n\u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u043f\u043e\u0434\u0442\u0438\u043f\u043e\u0432:\n- fix_dev (\u043e\u0448\u0438\u0431\u043a\u0430 \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u043d\u0430\u044f \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438);\n- fix_test (\u043e\u0448\u0438\u0431\u043a\u0430 \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u043d\u0430\u044f \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f);\n- fix (\u043e\u0448\u0438\u0431\u043a\u0430 \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u043d\u0430\u044f \u0432 \u043f\u0440\u043e\u0434\u0435);\n\n\xa7 recommendations.type.buddy.title\n\u041a\u043e\u043f\u0438\u0442\u0435 \u043c\u0435\u043b\u043a\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438\n\n\xa7 recommendations.type.buddy.description\n\u0434\u043b\u044f \u043d\u043e\u0432\u044b\u0445 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432.\n\n# \u0415\u0441\u043b\u0438 \u0437\u0430\u0434\u0430\u0447\u0430:\n- \u043d\u0435 \u0432\u0430\u0436\u043d\u0430\u044f;\n- \u043d\u0435 \u0431\u043e\u043b\u044c\u0448\u0430\u044f;\n- \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0441\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u0433\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442;\n- \u0431\u043e\u043b\u044c\u0448\u0435 \u043f\u0440\u043e \u0440\u0435\u0444\u0430\u043a\u0442\u043e\u0440\u0438\u043d\u0433, \u0447\u0435\u043c \u043f\u0440\u043e \u043d\u043e\u0432\u044b\u0439 \u043a\u043e\u0434;\n\n# \u041f\u043e\u043b\u043e\u0436\u0438\u0442\u0435 \u0435\u0451 \u0432 backlog \u0441 \u043c\u0435\u0442\u043a\u043e\u0439 \xab\u0434\u043b\u044f \u043d\u043e\u0432\u0438\u0447\u043a\u043e\u0432\xbb.\n\n\u041a\u043e\u0433\u0434\u0430 \u043f\u0440\u0438\u0434\u0451\u0442 \u043d\u043e\u0432\u044b\u0439 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a, \u0432\u044b \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u043c\u043e\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e \u0434\u043e\u0441\u0442\u0430\u0442\u044c \u0435\u043c\u0443 \u043f\u0430\u0447\u043a\u0443 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0438 \u0440\u0430\u0437\u043d\u043e\u043e\u0431\u0440\u0430\u0437\u043d\u044b\u0445 \u043f\u043e \u0442\u0438\u043f\u0443 \u0437\u0430\u0434\u0430\u0447, \u0434\u043b\u044f \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u043b\u0435\u043d\u0438\u044f \u0441 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c.\n\n\u0422\u0430\u043a\u0436\u0435, \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0441\u0442\u043e\u0439 \u0432 \u0440\u0430\u0431\u043e\u0442\u0435, \u0432\u044b \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0434\u043e\u0441\u0442\u0430\u0432\u0430\u0442\u044c \u043f\u043e \u043e\u0434\u043d\u043e\u0439 \u0442\u0430\u043a\u043e\u0439 \u043c\u0435\u043b\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0435 \u0438\u0437 backlog-\u0430.\n',"\n\xa7 page.settings.document.title: \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\n\xa7 page.settings.document.name: \u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b\n\xa7 page.settings.document.language: \u042f\u0437\u044b\u043a \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430\n\xa7 page.settings.document.depersonalize: \u0421\u043a\u0440\u044b\u0442\u044c \u043f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435\n\xa7 page.settings.links.title: \u041f\u0440\u0435\u0444\u0438\u043a\u0441\u044b \u0441\u0441\u044b\u043b\u043e\u043a\n\xa7 page.settings.links.task: \u0414\u043b\u044f \u043d\u043e\u043c\u0435\u0440\u043e\u0432 \u0437\u0430\u0434\u0430\u0447\n\xa7 page.settings.links.pr: \u0414\u043b\u044f PR\n\xa7 page.settings.user.title: \u0418\u043d\u0434\u0438\u0432\u0438\u0434\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\n\xa7 page.settings.user.notFound: \u0418\u043d\u0434\u0438\u0432\u0438\u0434\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u043d\u0435\u0442. \u0414\u0430\u043d\u043d\u044b\u0435 \u043f\u043e \u0432\u0441\u0435\u043c \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\u043c \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u044e\u0442\u0441\u044f \u043f\u043e \u043e\u0431\u0449\u0438\u043c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c.\n\xa7 page.settings.user.subTitle: \u0414\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043a \u0442\u0440\u0443\u0434\u043e\u0432\u043e\u043c\u0443 \u0434\u043e\u0433\u043e\u0432\u043e\u0440\u0443 \u2116$1\n\xa7 page.settings.user.from: \u0414\u0430\u0442\u0430 \u043d\u0430\u0447\u0430\u043b\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f\n\xa7 page.settings.mailmap: \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 .mailmap\n\xa7 page.settings.common.title: \u041e\u0431\u0449\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e \u0437\u0430\u0440\u043f\u043b\u0430\u0442\u0435\n\xa7 page.settings.common.type.title: \u0422\u0438\u043f \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0434 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c\n\xa7 page.settings.common.type.full: \u041f\u043e\u043b\u043d\u0430\u044f \u0437\u0430\u043d\u044f\u0442\u043e\u0441\u0442\u044c\n\xa7 page.settings.common.type.part: \u041f\u0440\u043e\u0435\u043a\u0442\u043d\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430\n\xa7 page.settings.common.salary: \u0417\u0430\u0440\u043f\u043b\u0430\u0442\u0430 \u0432 \u043c\u0435\u0441\u044f\u0446 \u0432 \u0434\u043e\u043b\u043b\u0430\u0440\u0430\u0445 \u0421\u0428\u0410\n\xa7 page.settings.common.currency: \u0412\u0430\u043b\u044e\u0442\u0430 \u0434\u043b\u044f \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\n\xa7 page.settings.common.workDaysInYear: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u0434\u043d\u0435\u0439 \u0432 \u0433\u043e\u0434\u0443\n\xa7 page.settings.common.vacationDaysInYear: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0434\u043d\u0435\u0439 \u043e\u0442\u043f\u0443\u0441\u043a\u0430 \u0432 \u0433\u043e\u0434\n\xa7 page.settings.common.workDaysInWeek: \u0420\u0430\u0431\u043e\u0447\u0438\u0435 \u0434\u043d\u0438\n\xa7 page.settings.form.save: \u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c\n\xa7 page.settings.form.cancel: \u041e\u0442\u043c\u0435\u043d\u0430\n\xa7 page.settings.form.remove: \u0423\u0434\u0430\u043b\u0438\u0442\u044c\n\xa7 page.settings.form.addEmployee: \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\n\xa7 page.settings.form.addContract: \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0442\u0440\u0443\u0434\u043e\u0432\u043e\u0439 \u0434\u043e\u0433\u043e\u0432\u043e\u0440\n","\n\xa7 page.welcome.step1: \u0412\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u0432 \u043a\u043e\u0440\u043d\u0435 \u0432\u0430\u0448\u0435\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430\n\xa7 page.welcome.step3: \u041f\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u0442\u0435\n\xa7 page.welcome.step4: \u0444\u0430\u0439\u043b log.txt \u043d\u0430 \u044d\u0442\u0443 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443\n\xa7 page.welcome.description: Git \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u0444\u0430\u0439\u043b log.txt. \u041e\u043d \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u043e\u0442\u0447\u0451\u0442\u0430. \u0418\u043b\u0438 git shortlog -s -n -e \u0435\u0441\u043b\u0438 \u043e\u0442\u0447\u0451\u0442 \u0432\u0430\u043c \u043d\u0435 \u043d\u0443\u0436\u0435\u043d. \u0421\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u0444\u0430\u0439\u043b [.mailmap|https://git-scm.com/docs/gitmailmap] \u0432 \u043a\u043e\u0440\u043d\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430, \u0447\u0442\u043e\u0431\u044b \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0443 \u043f\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\u043c.\n\xa7 page.welcome.warning1: \u0421\u0435\u0440\u0432\u0438\u0441 *\u041d\u0415 \u0425\u0420\u0410\u041d\u0418\u0422* \u0438 *\u041d\u0415 \u041f\u0415\u0420\u0415\u0414\u0410\u0401\u0422* \u0432\u0430\u0448\u0438 \u0434\u0430\u043d\u043d\u044b\u0435. \u0412\u0441\u0435 \u0440\u0430\u0441\u0447\u0451\u0442\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0442\u0441\u044f \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e \u0432 \u0432\u0430\u0448\u0435\u043c \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435 \u043f\u0440\u044f\u043c\u043e \u043d\u0430 \u0432\u0430\u0448\u0435\u0439 \u043c\u0430\u0448\u0438\u043d\u0435.\n\xa7 page.welcome.warning2: \u0421\u0435\u0440\u0432\u0438\u0441 *\u041d\u0415 \u0421\u041e\u0411\u0418\u0420\u0410\u0415\u0422 \u0421\u0422\u0410\u0422\u0418\u0421\u0422\u0418\u041a\u0423* \u043f\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u043c. \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442, \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0442\u0440\u0430\u0444\u0438\u043a \u0438 \u0434\u0430\u0436\u0435 \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0431\u0438\u043b\u0434 \u0438\u0437 [\u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432|https://github.com/bakhirev/assayo].\n\xa7 page.common.words.title: \u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u043f\u043e \u0441\u043b\u043e\u0432\u0430\u043c\n\xa7 page.common.words.description: \u0441\u0430\u043c\u043e\u0435 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u043e\u0435 \u0441\u043b\u043e\u0432\u043e. \u0412\u0441\u0442\u0440\u0435\u0447\u0430\u0435\u0442\u0441\u044f $1 \u0440\u0430\u0437\u0430.\n\xa7 page.common.commits.title: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u043f\u043e \u0434\u043d\u044f\u043c\n\xa7 page.common.commits.description: ($1) \u0441\u0430\u043c\u044b\u0439 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0438\u0432\u043d\u044b\u0439 \u0434\u0435\u043d\u044c \u043f\u043e \u0447\u0438\u0441\u043b\u0443 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432.\n\xa7 page.common.commits.title2: $1 \u0441\u0434\u0435\u043b\u0430\u043d\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432: $2\n\xa7 page.common.filter.allUsers: \u041d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\n\xa7 page.print.modal.title: \u0427\u0442\u043e \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u044b\u0432\u0430\u0435\u043c?\n\xa7 page.print.modal.page: \u0422\u0435\u043a\u0443\u0449\u0443\u044e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443\n\xa7 page.print.modal.type: \u0422\u0435\u043a\u0443\u0449\u0438\u0439 \u0440\u0430\u0437\u0434\u0435\u043b\n\xa7 page.print.modal.all: \u0412\u0441\u044e \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0443\n\xa7 page.print.modal.cancel: \u041e\u0442\u043c\u0435\u043d\u0430\n\xa7 page.print.tableOfContents: \u041e\u0433\u043b\u0430\u0432\u043b\u0435\u043d\u0438\u0435\n\xa7 page.print.title: \u041e\u0442\u0447\u0451\u0442 \u043f\u043e git-\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044e\n\xa7 page.print.sub_title: \xab$1\xbb\n\xa7 page.print.description: \u0414\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u043e\u0442\u0447\u0451\u0442\u0430 \u0431\u044b\u043b\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u044b \u0438\u0437 \u0438\u0441\u0442\u043e\u0440\u0438\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432.\n\xa7 page.team.author.statusChart.title: \u0422\u0435\u043a\u0443\u0449\u0438\u0439 \u0441\u0442\u0430\u0442\u0443\u0441\n\xa7 page.team.author.daysChart.title: \u0412\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b\n\xa7 page.team.author.daysChart.item: \u0434\u043d\u0435\u0439\n\xa7 page.team.author.days.half: \u043f\u043e\u043b \u0433\u043e\u0434\u0430\n\xa7 page.team.author.days.one: \u0433\u043e\u0434\n\xa7 page.team.author.days.15: \u043f\u043e\u043b\u0442\u043e\u0440\u0430\n\xa7 page.team.author.days.two: \u0434\u0432\u0430 \u0433\u043e\u0434\u0430\n\xa7 page.team.author.days.more: \u0431\u043e\u043b\u044c\u0448\u0435 \u0434\u0432\u0443\u0445 \u043b\u0435\u0442\n\xa7 page.team.author.title: \u0414\u0435\u0442\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\n\xa7 page.team.author.description1: *\u0427\u0430\u0441\u0442\u044c \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0438* (\u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u044b, \u0437\u0430\u0442\u0440\u0430\u0447\u0435\u043d\u043d\u044b\u0435 \u0434\u0435\u043d\u044c\u0433\u0438 \u0438 \u0442.\u043f.) *\u043f\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\u043c \u0441 \u0442\u0438\u043f\u043e\u043c \xab\u041f\u043e\u043c\u043e\u0449\u043d\u0438\u043a\xbb \u043d\u0435 \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f*, \u0442.\u043a. \u044d\u0442\u043e \u044d\u043f\u0438\u0437\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0440\u043e\u043b\u044c \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435. \u041f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u043c, \u0447\u0442\u043e \u043e\u043d\u0438 \u043d\u0435 \u0432\u043b\u0438\u044f\u044e\u0442 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442, \u0430 \u0438\u0445 \u043f\u0440\u0430\u0432\u043a\u0430\u043c\u0438 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u043d\u0435\u0431\u0440\u0435\u0447\u044c \u043d\u0430 \u0444\u043e\u043d\u0435 \u043e\u0431\u0449\u0435\u0433\u043e \u043e\u0431\u044a\u0435\u043c\u0430 \u0440\u0430\u0431\u043e\u0442\u044b.\n\xa7 page.team.author.description2: *\u0421\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0430 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e* \u2014 \u044d\u0442\u043e \u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0430 \u043f\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0443 \u0437\u0430\u0434\u0430\u0447 \u0438 \u0433\u0440\u0443\u043f\u043f\u0430\u043c (\u0442\u0435\u043a\u0443\u0449\u0438\u0435, \u0443\u0432\u043e\u043b\u0435\u043d\u043d\u044b\u0435, \u043f\u043e\u043c\u043e\u0433\u0430\u044e\u0449\u0438\u0435 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438).\n\xa7 page.team.author.status: \u0421\u0442\u0430\u0442\u0443\u0441\n\xa7 page.team.author.company: \u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f\n\xa7 page.team.author.firstCommit: \u041f\u0435\u0440\u0432\u044b\u0439 \u043a\u043e\u043c\u043c\u0438\u0442\n\xa7 page.team.author.lastCommit: \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439\n\xa7 page.team.author.daysAll: \u0412\u0441\u0435\u0433\u043e \u0434\u043d\u0435\u0439\n\xa7 page.team.author.types: \u0422\u0438\u043f \u0440\u0430\u0431\u043e\u0442\n\xa7 page.team.author.commits: \u041a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 page.team.author.commitsSmall: \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 page.team.author.tasks: \u0417\u0430\u0434\u0430\u0447\n\xa7 page.team.author.tasksSmall: \u0437\u0430\u0434\u0430\u0447\n\xa7 page.team.author.workedLosses: \u0414\u043d\u0438 \u0441 \u043a\u043e\u043c\u043c\u0438\u0442\u0430\u043c\u0438 \u0438 \u0431\u0435\u0437\n\xa7 page.team.author.worked: \u0440\u0430\u0431\u043e\u0442\u0430\n\xa7 page.team.author.losses: \u0434\u043d\u0438 \u0431\u0435\u0437 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 page.team.author.days: \u0434\u043d\u0435\u0439\n\xa7 page.team.author.daysForTask: \u0414\u043d\u0435\u0439 \u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0443\n\xa7 page.team.author.scopes: \u0424\u0438\u0447\n\xa7 page.team.author.moneyAll: \u041f\u043e\u043b\u0443\u0447\u0438\u043b\n\xa7 page.team.author.moneyWorked: \u041e\u0442\u0440\u0430\u0431\u043e\u0442\u0430\u043b\n\xa7 page.team.author.moneyLosses: \u041f\u0435\u0440\u0435\u043f\u043b\u0430\u0442\u0430\n\xa7 page.team.author.type.work: \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442\n\xa7 page.team.author.type.dismissed: \u0443\u0432\u043e\u043b\u0435\u043d\n\xa7 page.team.author.type.staff: \u043f\u043e\u043c\u043e\u0449\u043d\u0438\u043a\n\xa7 page.team.hours.title: \u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0438 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0434\u043d\u044f \u043d\u0435\u0434\u0435\u043b\u0438\n\xa7 page.team.month.title: \u041a\u0430\u043b\u0435\u043d\u0434\u0430\u0440\u044c \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0443\n\xa7 page.team.month.first: (\u043f\u0435\u0440\u0432\u044b\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0434\u0435\u043d\u044c)\n\xa7 page.team.month.last: (\u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0434\u0435\u043d\u044c)\n\xa7 page.team.scope.title: \u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u043f\u043e \u0444\u0438\u0447\u0430\u043c\n\xa7 page.team.scope.scope: \u0424\u0438\u0447\u0430\n\xa7 page.team.scope.days: \u0420\u0430\u0431. \u0434\u043d\u0435\u0439\n\xa7 page.team.scope.authorsDays: \u0427\u0435\u043b\u043e\u0432\u0435\u043a\u043e-\u0434\u043d\u0435\u0439\n\xa7 page.team.scope.tasks: \u0417\u0430\u0434\u0430\u0447\n\xa7 page.team.scope.commits: \u041a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 page.team.scope.commitsSmall: \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 page.team.scope.types: \u0422\u0438\u043f \u0440\u0430\u0431\u043e\u0442\n\xa7 page.team.scope.authors: \u041f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u0432\u043a\u043b\u0430\u0434\n\xa7 page.team.scope.cost: \u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c\n\xa7 page.team.type.title: \u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u043f\u043e \u0442\u0438\u043f\u0430\u043c \u0437\u0430\u0434\u0430\u0447\n\xa7 page.team.type.description: *\u041f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u0432\u043a\u043b\u0430\u0434* \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u043f\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0443 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432, \u0430 \u043d\u0435 \u043e\u0431\u044a\u0435\u043c\u0443 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u043d\u044b\u0445 \u0441\u0442\u0440\u043e\u043a \u0438\u043b\u0438 \u0444\u0430\u0439\u043b\u043e\u0432. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0442\u0430\u043a \u0436\u0435 \u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0440\u0430\u0437\u0434\u0435\u043b \xab\u0410\u043d\u0430\u043b\u0438\u0437 \u0444\u0430\u0439\u043b\u043e\u0432\xbb, \u0447\u0442\u043e\u0431\u044b \u043e\u0446\u0435\u043d\u0438\u0442\u044c \u043c\u0430\u0441\u0448\u0442\u0430\u0431 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439.\n\xa7 page.team.type.type: \u0422\u0438\u043f \u0440\u0430\u0431\u043e\u0442\u044b\n\xa7 page.team.type.unknown: \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439\n\xa7 page.team.type.tasks: \u0417\u0430\u0434\u0430\u0447\n\xa7 page.team.type.tasksSmall: \u0437\u0430\u0434\u0430\u0447\n\xa7 page.team.type.days: \u0414\u043d\u0435\u0439\n\xa7 page.team.type.daysSmall: \u0434\u043d\u0435\u0439\n\xa7 page.team.type.authorsDays: \u0427\u0435\u043b\u043e\u0432\u0435\u043a\u043e-\u0434\u043d\u0435\u0439\n\xa7 page.team.type.commits: \u041a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 page.team.type.authors: \u041f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u0432\u043a\u043b\u0430\u0434\n\xa7 page.team.total.titleA: \u041e\u0431\u044a\u0451\u043c \u0440\u0430\u0431\u043e\u0442\n\xa7 page.team.total.titleB: \u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c\n\xa7 page.team.total.daysWorked.title: \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e-\u0434\u043d\u0435\u0439\n\xa7 page.team.total.daysWorked.description: \u0423\u0447\u0442\u0435\u043d\u044b \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043d\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u0435\u043b\u0430\u043b\u0438\u0441\u044c \u043a\u043e\u043c\u043c\u0438\u0442\u044b\n\xa7 page.team.total.commits.title: \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 page.team.total.commits.description: \u0423\u0434\u0430\u043b\u0451\u043d\u043d\u044b\u0435 \u0432\u0435\u0442\u043a\u0438 \u043d\u0435 \u0441\u0447\u0438\u0442\u0430\u044e\u0442\u0441\u044f\n\xa7 page.team.total.daysLosses.title: \u0434\u043d\u0435\u0439 \u0431\u0435\u0437 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 page.team.total.daysLosses.description: \u0412\u0441\u0435 \u0434\u043d\u0438 \u043c\u0438\u043d\u0443\u0441: \u043f\u0440\u0430\u0437\u0434\u043d\u0438\u043a\u0438, \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0435, \u043e\u0442\u043f\u0443\u0441\u043a, \u0434\u043d\u0438 \u0441 \u043a\u043e\u043c\u043c\u0438\u0442\u0430\u043c\u0438\n\xa7 page.team.total.employment.title: \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 / \u0443\u0432\u043e\u043b\u0438\u043b\u043e\u0441\u044c\n\xa7 page.team.total.employment.description: \u0415\u0441\u043b\u0438 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0438 \u043c\u0435\u0441\u044f\u0446\u0430 \u043d\u0435 \u0441\u0434\u0435\u043b\u0430\u043b \u043d\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430, \u043e\u043d \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u0443\u0432\u043e\u043b\u0435\u043d\u043d\u044b\u043c\n\xa7 page.team.total.moneyAll.title: \u043e\u0431\u0449\u0430\u044f\n\xa7 page.team.total.moneyAll.description: \u0421\u0443\u043c\u043c\u0430\u0440\u043d\u044b\u0435 \u0437\u0430\u0442\u0440\u0430\u0442\u044b \u043d\u0430 \u0437\u043f\n\xa7 page.team.total.moneyWorked.title: \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f\n\xa7 page.team.total.moneyWorked.description: \u0424\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043e\u0442\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0435 \u0434\u043d\u0438 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u043d\u0430 \u0441\u0440\u0435\u0434\u043d\u044e\u044e \u0437\u043f\n\xa7 page.team.total.moneyLosses.title: \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0430\u044f \u043f\u0435\u0440\u0435\u043f\u043b\u0430\u0442\u0430\n\xa7 page.team.total.moneyLosses.description: \u041e\u043f\u043b\u0430\u0447\u0435\u043d\u043d\u044b\u0435 \u0440\u0430\u0431\u043e\u0447\u0438\u0435 \u0434\u043d\u0438, \u043a\u043e\u0433\u0434\u0430 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u043d\u0435 \u0431\u044b\u043b\u043e\n\xa7 page.team.total.weekendPayment.title: \u0440\u0430\u0431\u043e\u0442\u0430 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0445\n\xa7 page.team.total.weekendPayment.description: \u0421\u0443\u043c\u043c\u0430\u0440\u043d\u0430\u044f \u043f\u0435\u0440\u0435\u043f\u043b\u0430\u0442\u0430 \u0437\u0430 \u0440\u0430\u0431\u043e\u0442\u0443 \u0432 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0435 \u0434\u043d\u0438\n\xa7 page.team.total.workSpeed.title: \u0437\u0430\u0434\u0430\u0447 \u0432 \u0434\u0435\u043d\u044c\n\xa7 page.team.total.workSpeed.description: \u0421\u0440\u0435\u0434\u043d\u044f\u044f \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u044b \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u043f\u0440\u0438 \u0442\u0435\u043a\u0443\u0449\u0435\u043c \u0441\u043e\u0441\u0442\u0430\u0432\u0435 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 page.team.total.moneySpeed.title: \u0432 \u043c\u0435\u0441\u044f\u0446\n\xa7 page.team.total.moneySpeed.description: \u041f\u0440\u043e\u0433\u043d\u043e\u0437\u0438\u0440\u0443\u0435\u043c\u0430\u044f \u0441\u0443\u043c\u043c\u0430 \u0432\u044b\u043f\u043b\u0430\u0442\u044b \u043d\u0430 \u0437\u043f \u043f\u0440\u0438 \u0442\u0435\u043a\u0443\u0449\u0435\u043c \u0441\u043e\u0441\u0442\u0430\u0432\u0435 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 \u0431\u0435\u0437 \u0443\u0447\u0435\u0442\u0430 \u043d\u0430\u043b\u043e\u0433\u043e\u0432 \u0438 \u0441\u043e\u043f\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0437\u0430\u0442\u0440\u0430\u0442\n\xa7 page.team.total.description1: *\u0427\u0435\u043b\u043e\u0432\u0435\u043a\u043e-\u0434\u043d\u0438* \u2014 \u044d\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430 \u043e\u0434\u043d\u043e\u0433\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430 \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0435 \u043e\u0434\u043d\u043e\u0433\u043e \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u0434\u043d\u044f. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0437\u0430 \u043e\u0434\u0438\u043d \u043a\u0430\u043b\u0435\u043d\u0434\u0430\u0440\u043d\u044b\u0439 \u0434\u0435\u043d\u044c, \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0438\u0437 \u0442\u0440\u0435\u0445 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 \u0432\u044b\u0434\u0430\u0435\u0442 \u043e\u0431\u044a\u0435\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u0432 \u0442\u0440\u0438 \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e-\u0434\u043d\u044f.\n\xa7 page.team.total.description2: *\u0414\u043d\u044f\u043c\u0438 \u043f\u0440\u043e\u0433\u0443\u043b\u043e\u0432* \u0441\u0447\u0438\u0442\u0430\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0431\u043e\u0447\u0438\u0435 \u0434\u043d\u0438, \u043a\u043e\u0433\u0434\u0430 \u043a\u043e\u043c\u043c\u0438\u0442\u044b \u043c\u043e\u0433\u043b\u0438 \u0431\u044b \u0431\u044b\u0442\u044c \u0441\u0434\u0435\u043b\u0430\u043d\u044b. \u0412\u044b\u0445\u043e\u0434\u043d\u044b\u0435, \u0433\u043e\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u043f\u0440\u0430\u0437\u0434\u043d\u0438\u043a\u0438 \u0438 \u043e\u0442\u043f\u0443\u0441\u043a\u0430 \u0432 \u0440\u0430\u0441\u0447\u0451\u0442\u0435 \u043d\u0435 \u0443\u0447\u0430\u0441\u0442\u0432\u0443\u044e\u0442.\n\xa7 page.team.total.description3: \u041a\u0430\u0440\u0442\u043e\u0447\u043a\u0430 *\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0438 \u0443\u0432\u043e\u043b\u0438\u043b\u043e\u0441\u044c* \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u043e\u0441\u0442\u0430\u0432 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u0443\u0447\u0430\u0441\u0442\u0432\u0443\u044e\u0442 \u0432 \u0440\u0430\u0431\u043e\u0442\u0435. \u041a\u0440\u043e\u043c\u0435 \u044d\u0442\u043e\u0433\u043e, \u0435\u0441\u0442\u044c \xab\u043f\u043e\u043c\u043e\u0449\u043d\u0438\u043a\u0438\xbb \u2014 \u044d\u0442\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438, \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u0438\u043d\u043e\u0433\u0434\u0430 \u0434\u0435\u043b\u0430\u0442\u044c \u043a\u043e\u043c\u043c\u0438\u0442\u044b \u0432 \u043f\u0440\u043e\u0435\u043a\u0442.\n\xa7 page.team.total.description4: *\u041f\u0435\u0440\u0435\u043f\u043b\u0430\u0442\u043e\u0439* \u0441\u0447\u0438\u0442\u0430\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0431\u043e\u0447\u0438\u0435 \u0434\u043d\u0438, \u043a\u043e\u0433\u0434\u0430 \u043a\u043e\u043c\u043c\u0438\u0442\u044b \u043c\u043e\u0433\u043b\u0438 \u0431\u044b \u0431\u044b\u0442\u044c \u0441\u0434\u0435\u043b\u0430\u043d\u044b. \u0412\u044b\u0445\u043e\u0434\u043d\u044b\u0435, \u0433\u043e\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u043f\u0440\u0430\u0437\u0434\u043d\u0438\u043a\u0438 \u0438 \u043e\u0442\u043f\u0443\u0441\u043a\u0430 \u0432 \u0440\u0430\u0441\u0447\u0451\u0442\u0435 \u043d\u0435 \u0443\u0447\u0430\u0441\u0442\u0432\u0443\u044e\u0442. \u0418\u043c\u0435\u043d\u043d\u043e \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0435\u0440\u0435\u043f\u043b\u0430\u0442\u0430 + \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c != \u043e\u0431\u0449\u0435\u0439. \u0412 \u043e\u0431\u0449\u0435\u0439 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u0438 \u0437\u0430\u043b\u043e\u0436\u0435\u043d\u0430 \u043e\u043f\u043b\u0430\u0442\u0430 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0445, \u0433\u043e\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u0430\u0437\u0434\u043d\u0438\u043a\u043e\u0432 \u0438 \u043e\u0442\u043f\u0443\u0441\u043a\u043e\u0432.\n\xa7 page.team.total.description5: *\u0420\u0430\u0431\u043e\u0442\u043e\u0439 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0445* \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u043f\u043e \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442\u0443 \u04452 \u043e\u0442 \u043e\u043f\u043b\u0430\u0442\u044b \u043e\u0431\u044b\u0447\u043d\u043e\u0433\u043e \u0434\u043d\u044f. \u0412\u044b\u0448\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0430 \u0438\u043c\u0435\u043d\u043d\u043e \u043f\u0435\u0440\u0435\u043f\u043b\u0430\u0442\u0430 (\u04451), \u0442.\u043a. \u0441\u0430\u043c \u0444\u0430\u043a\u0442 \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0435 \u043d\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0435\u043d. \u041c\u044b \u043d\u0435 \u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0441\u0436\u0438\u0433\u0430\u043d\u0438\u044f \u0431\u044e\u0434\u0436\u0435\u0442\u0430. \u041c\u044b \u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043f\u0435\u0440\u0435\u043f\u043b\u0430\u0442\u0443 \u043f\u0440\u0438 \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0438 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0440\u0430\u0431\u043e\u0442\u044b.\n\xa7 page.team.tree.title: \u0414\u0435\u0440\u0435\u0432\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0441 \u0443\u0447\u0451\u0442\u043e\u043c \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u044b\u0445 \u0444\u0438\u043b\u044c\u0442\u0440\u043e\u0432\n\xa7 page.team.tree.filters.author: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\n\xa7 page.team.tree.filters.commits: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 page.team.tree.filters.help: \u041c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0441\u0434\u0435\u043b\u0430\u043b \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a \u0432 \u0444\u0430\u0439\u043b\u0435\n\xa7 page.team.tree.filters.all: \u0412\u0441\u0435 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438\n\xa7 page.team.tree.totalLines: \u0421\u0442\u0440\u043e\u043a\n\xa7 page.team.tree.totalTasks: \u0417\u0430\u0434\u0430\u0447\n\xa7 page.team.tree.totalDays: \u0414\u043d\u0435\u0439\n\xa7 page.team.tree.tasks: \u0437\u0430\u0434\u0430\u0447\n\xa7 page.team.tree.days: \u0434\u043d\u0435\u0439\n\xa7 page.team.tree.add: \u041a\u0442\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u043b\n\xa7 page.team.tree.change: \u041a\u0442\u043e \u043c\u0435\u043d\u044f\u043b\n\xa7 page.team.tree.remove: \u041a\u0442\u043e \u0443\u0434\u0430\u043b\u044f\u043b\n\xa7 page.team.tree.line: \u0441\u0442\u0440\u043e\u043a\n\xa7 page.team.tree.linesAdded: \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438\n\xa7 page.team.tree.linesChanged: \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u0438\n\xa7 page.team.tree.linesRemoved: \u0443\u0434\u0430\u043b\u0438\u043b\u0438\n\xa7 page.team.company.title: \u0414\u0435\u0442\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\n\xa7 page.team.company.employments.title: \u041f\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0443 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 page.team.company.employments.item: \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 page.team.company.daysChart.title: \u041f\u043e \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u0430\n\xa7 page.team.company.daysChart.item: \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439\n\xa7 page.team.company.active.yes: \u0430\u043a\u0442\u0438\u0432\u043d\u0430\n\xa7 page.team.company.active.no: \u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442 \u0438\u0441\u0442\u0451\u043a\n\xa7 page.team.country.byTimezone: \u041f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 page.team.country.filters.active: \u0420\u0430\u0431\u043e\u0442\u0430\u044e\u0442\n\xa7 page.team.country.filters.dismissed: \u0423\u0432\u043e\u043b\u0435\u043d\u043d\u044b\u0435\n\xa7 page.team.country.filters.staff: \u041f\u043e\u043c\u043e\u0449\u043d\u0438\u043a\u0438\n\xa7 page.team.country.pieByDomain.title: \u041f\u043e \u043f\u043e\u0447\u0442\u0435, \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0438 \u044f\u0437\u044b\u043a\u0443\n\xa7 page.team.country.pieByTimezone.title: \u041f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438\n\xa7 page.team.country.chart.item: \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 page.team.country.table.title: \u0421\u043f\u0438\u0441\u043e\u043a \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 page.team.country.table.country: \u041b\u043e\u043a\u0430\u0446\u0438\u044f\n\xa7 page.team.country.table.employments: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438\n\xa7 page.team.country.travel.title: \u041a\u043e\u043c\u0430\u043d\u0434\u0438\u0440\u043e\u0432\u043a\u0438 (\u0438\u043b\u0438 VPN, \u0438\u043b\u0438 rebase)\n\xa7 page.team.country.travel.author: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\n\xa7 page.team.country.travel.fly: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u0435\u0440\u0435\u043b\u0451\u0442\u043e\u0432\n\xa7 page.team.country.travel.path: \u0421\u043f\u0438\u0441\u043e\u043a \u043b\u043e\u043a\u0430\u0446\u0438\u0439\n\xa7 page.team.country.travel.date: \u0414\u0430\u0442\u0430 \u043f\u0435\u0440\u043b\u0451\u0442\u0430\n\xa7 page.team.country.travel.country: \u041b\u043e\u043a\u0430\u0446\u0438\u044f\n\xa7 page.team.refactor.title: \u041a\u0430\u043d\u0434\u0438\u0434\u0430\u0442\u044b \u043d\u0430 \u0440\u0435\u0444\u0430\u043a\u0442\u043e\u0440\u0438\u043d\u0433\n\xa7 page.team.refactor.lines: \u0441\u0442\u0440\u043e\u043a\n\xa7 page.team.refactor.tasks: \u0437\u0430\u0434\u0430\u0447\n\xa7 page.team.refactor.days: \u0434\u043d\u0435\u0439\n\xa7 page.team.refactor.path: \u041f\u0443\u0442\u044c\n\xa7 page.team.refactor.firstCommit: \u041f\u0435\u0440\u0432\u044b\u0439 \u043a\u043e\u043c\u043c\u0438\u0442\n\xa7 page.team.refactor.totalLines: \u0421\u0442\u0440\u043e\u043a\n\xa7 page.team.refactor.totalTasks: \u0417\u0430\u0434\u0430\u0447\n\xa7 page.team.refactor.totalDays: \u0414\u043d\u0435\u0439 \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435\n\xa7 page.team.day.commits: \u041a\u043e\u043c\u043c\u0438\u0442\u044b\n\xa7 page.team.day.activity: \u0410\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c\n\xa7 page.team.week.title: \u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u043f\u043e \u043d\u0435\u0434\u0435\u043b\u044f\u043c\n\xa7 page.team.week.date: \u0414\u0430\u0442\u0430\n\xa7 page.team.week.numberTasks: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u0434\u0430\u0447\n\xa7 page.team.week.people: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0447\u0435\u043b\u043e\u0432\u0435\u043a\n\xa7 page.team.week.line: \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0441\u0442\u0440\u043e\u043a\n\xa7 page.team.week.days: \u0414\u043d\u0438 \u0441 \u043a\u043e\u043c\u043c\u0438\u0442\u0430\u043c\u0438 \u0438 \u0431\u0435\u0437\n\xa7 page.team.week.lossesDetails: \u041a\u0442\u043e \u043d\u0435 \u043a\u043e\u043c\u043c\u0438\u0442\u0438\u043b\n\xa7 page.team.week.add: \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438\n\xa7 page.team.week.change: \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u0438\n\xa7 page.team.week.remove: \u0443\u0434\u0430\u043b\u0438\u043b\u0438\n\xa7 page.team.week.hasCommits: \u0431\u044b\u043b\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u044b\n\xa7 page.team.week.hasNotCommits: \u043d\u0435\u0431\u044b\u043b\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 page.team.week.days: \u0434\u043d\u0435\u0439\n\xa7 page.team.week.tasks: \u0437\u0430\u0434\u0430\u0447\n\xa7 page.team.pr.task: \u0417\u0430\u0434\u0430\u0447\u0430\n\xa7 page.team.pr.tasks: \u0437\u0430\u0434\u0430\u0447\n\xa7 page.team.pr.firstCommitTime: \u041f\u0435\u0440\u0432\u044b\u0439 \u043a\u043e\u043c\u043c\u0438\u0442\n\xa7 page.team.pr.lastCommitTime: \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439\n\xa7 page.team.pr.workDays: \u0421\u0440\u0435\u0434\u043d\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0434 \u0437\u0430\u0434\u0430\u0447\u0435\u0439\n\xa7 page.team.pr.delayDays: \u0421\u0440\u0435\u0434\u043d\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0435\u0432\u044c\u044e PR\n\xa7 page.team.pr.all.workDays: \u0412\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0434 \u0437\u0430\u0434\u0430\u0447\u0435\u0439\n\xa7 page.team.pr.all.delayDays: \u0412\u0440\u0435\u043c\u044f \u0440\u0435\u0432\u044c\u044e PR\n\xa7 page.team.pr.middleTimeRelease: \u041e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043a \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0440\u0435\u0432\u044c\u044e\n\xa7 page.team.pr.chart.1day: \u0434\u0435\u043d\u044c\n\xa7 page.team.pr.chart.3day: \u0442\u0440\u0438 \u0434\u043d\u044f\n\xa7 page.team.pr.chart.7day: \u043d\u0435\u0434\u0435\u043b\u044f\n\xa7 page.team.pr.chart.14day: \u0434\u0432\u0435 \u043d\u0435\u0434\u0435\u043b\u0438\n\xa7 page.team.pr.chart.30day: \u043c\u0435\u0441\u044f\u0446\n\xa7 page.team.pr.chart.more: \u0431\u043e\u043b\u0435\u0435\n\xa7 page.team.pr.date: \u0414\u0430\u0442\u0430 \u0432\u043b\u0438\u0442\u0438\u044f\n\xa7 page.team.pr.mergeAuthor: \u0412\u043b\u0438\u043b\n\xa7 page.team.pr.author: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\n\xa7 page.team.pr.work: \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430\n\xa7 page.team.pr.delay: \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u0435\n\xa7 page.team.pr.days: \u0434\u043d\u0435\u0439\n\xa7 page.team.pr.oneTaskDays: \u0412\u0440\u0435\u043c\u044f \u043f\u043e\u0442\u0440\u0430\u0447\u0435\u043d\u043d\u043e\u0435 \u043d\u0430 \u043e\u0434\u043d\u0443 \u0437\u0430\u0434\u0430\u0447\u0443\n\xa7 page.team.pr.description1: *\u0412\u0440\u0435\u043c\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438* \u044d\u0442\u043e \u0440\u0430\u0437\u043d\u0438\u0446\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043e\u0442 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0434\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430 \u043f\u043e \u0437\u0430\u0434\u0430\u0447\u0435. \u041d\u0435 \u0432\u0430\u0436\u043d\u043e \u0431\u044b\u043b\u0438 \u043f\u0435\u0440\u0435\u0440\u044b\u0432\u044b \u0432 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u043d\u0435\u0439 \u043c\u0435\u0436\u0434\u0443 \u043a\u043e\u043c\u043c\u0438\u0442\u0430\u043c\u0438 \u0438\u043b\u0438 \u043d\u0435\u0442. \u0421\u0430\u043c \u0444\u0430\u043a\u0442 \u043a\u0430\u043a\u043e\u0433\u043e-\u043b\u0438\u0431\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0435\u0442 \u0432\u0440\u0435\u043c\u044f.\n\xa7 page.team.pr.description2: *\u0412\u0440\u0435\u043c\u044f \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f* \u044d\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043c\u0435\u0436\u0434\u0443 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u043c \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u043c \u0438 \u0432\u043b\u0438\u0442\u0438\u0435\u043c \u043a\u043e\u0434\u0430. \u041e\u043d\u043e \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0432 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u0438 \u0447\u0435\u0433\u043e-\u043b\u0438\u0431\u043e.\n\xa7 page.team.pr.description3: *\u0417\u0430\u0447\u0435\u043c \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438* \u0431\u0435\u0437 \u0440\u0430\u0437\u0431\u0438\u0432\u043a\u0438 \u043d\u0430 \u043a\u043e\u0434\u0438\u043d\u0433 \u0438 \u043a\u043e\u0434-\u0440\u0435\u0432\u044c\u044e? \u0417\u0430\u0442\u0435\u043c, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0431\u0438\u0437\u043d\u0435\u0441\u0443 \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043f\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u043a\u043e\u0434\u0430. \u041e\u0436\u0438\u0434\u0430\u043d\u0438\u0435 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0437\u0430\u043c\u0435\u0447\u0430\u043d\u0438\u044f \u043d\u0430 \u0440\u0435\u0432\u044c\u044e, \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b DevOps \u0438 \u043f\u0440\u043e\u0447\u0438\u0435 \u043d\u0435\u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0441\u0442\u0432\u0430 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430, \u043a\u0430\u043a \u0440\u0430\u0437 \u0443\u0436\u0435 \u0437\u0430\u043b\u043e\u0436\u0435\u043d\u044b \u0432 \u044d\u0442\u043e\u0442 \u0441\u0440\u043e\u043a.\n\xa7 page.team.pr.statByAuthors: \u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u043f\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\u043c\n\xa7 page.team.pr.longDelay: \u0414\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u0435 \u0432\u043b\u0438\u0442\u0438\u044f\n\xa7 page.team.pr.anonymous: PR \u0431\u0435\u0437 \u043d\u043e\u043c\u0435\u0440\u0430 \u0437\u0430\u0434\u0430\u0447\u0438\n\xa7 page.team.pr.branch: \u0412\u0435\u0442\u043a\u0430\n\xa7 page.team.tasks.task: \u0417\u0430\u0434\u0430\u0447\u0430\n\xa7 page.team.tasks.author: \u0410\u0432\u0442\u043e\u0440 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 page.team.tasks.from: \u041f\u0435\u0440\u0432\u044b\u0439 \u043a\u043e\u043c\u043c\u0438\u0442\n\xa7 page.team.tasks.to: \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043a\u043e\u043c\u043c\u0438\u0442\n\xa7 page.team.tasks.daysInWork: \u0414\u043d\u0435\u0439 \u0432 \u0440\u0430\u0431\u043e\u0442\u0435\n\xa7 page.team.tasks.comments: \u041a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438\n\xa7 page.team.extension.extension: \u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432\n\xa7 page.team.extension.type: \u041f\u043e\u0434\u0442\u0438\u043f \u0444\u0430\u0439\u043b\u043e\u0432\n\xa7 page.team.extension.name: \u0422\u0438\u043f\n\xa7 page.team.extension.path: \u041f\u0443\u0442\u044c\n\xa7 page.team.extension.current.count: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\n\xa7 page.team.extension.removed.count: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u044b\u0445\n\xa7 page.team.extension.files: \u0444\u0430\u0439\u043b\u043e\u0432\n\xa7 page.team.release.download: \u0421\u043a\u0430\u0447\u0430\u0442\u044c\n\xa7 page.team.release.title: \u0420\u0435\u043b\u0438\u0437\n\xa7 page.team.release.from: \u0414\u0430\u0442\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f\n\xa7 page.team.release.to: \u0414\u0430\u0442\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f\n\xa7 page.team.release.prLength: \u0417\u0430\u0434\u0430\u0447\n\xa7 page.team.release.delay: \u0414\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b\n\xa7 page.team.release.waiting: \u0414\u043d\u0435\u0439 \u0434\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0440\u0435\u043b\u0438\u0437\u0430\n\xa7 page.team.department.employments.title: \u0420\u0430\u0437\u043c\u0435\u0440 \u0442\u0435\u043a\u0443\u0449\u0438\u0445 \u043a\u043e\u043c\u0430\u043d\u0434\n\xa7 page.team.department.employments.item: \u043a\u043e\u043c\u0430\u043d\u0434\n\xa7 page.team.author.employments.less1: \u043e\u0434\u0438\u043d \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\n\xa7 page.team.author.employments.less2: \u0434\u0432\u0430 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\n\xa7 page.team.author.employments.less3: \u0442\u0440\u0438 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\n\xa7 page.team.author.employments.less6: \u0434\u043e \u0448\u0435\u0441\u0442\u0438 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 page.team.author.employments.less9: \u0434\u043e \u0434\u0435\u0432\u044f\u0442\u0438 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 page.team.author.employments.less12: \u0434\u043e 12 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 page.team.author.employments.less15: \u0434\u043e 15 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 page.team.author.employments.more: \u0431\u043e\u043b\u044c\u0448\u0435 15\n\xa7 page.team.department.daysChart.title: \u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432\n\xa7 page.team.department.daysChart.item: \u043f\u0440\u043e\u0435\u043a\u0442\u0430\n\xa7 page.team.department.title: \u0421\u043f\u0438\u0441\u043e\u043a \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432\n\xa7 page.team.department.code: \u041a\u043e\u0434\n\xa7 page.team.department.from: \u041f\u0435\u0440\u0432\u044b\u0439 \u043a\u043e\u043c\u043c\u0438\u0442\n\xa7 page.team.department.to: \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439\n\xa7 page.team.department.authors: \u0447\u0435\u043b\u043e\u0432\u0435\u043a\n\xa7 page.team.department.tasks: \u0437\u0430\u0434\u0430\u0447\n\xa7 page.team.department.totalDays: \u0414\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b\n\xa7 page.team.department.totalAuthors: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 page.person.print.photo.title: \u0424\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u044f\n\xa7 page.person.print.photo.description: \u043c\u0435\u0441\u0442\u043e \u0434\u043b\u044f \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438\n\xa7 page.person.total.title: \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438\n\xa7 page.person.total.daysWorked.title: \u0434\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b\n\xa7 page.person.total.daysWorked.description: \u0423\u0447\u0442\u0435\u043d\u044b \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043d\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u0435\u043b\u0430\u043b\u0438\u0441\u044c \u043a\u043e\u043c\u043c\u0438\u0442\u044b\n\xa7 page.person.total.tasks.title: \u0437\u0430\u0434\u0430\u0447\n\xa7 page.person.total.tasks.description: \u0415\u0441\u043b\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u044b \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d\u044b\n\xa7 page.person.scoring.toolbar: \u041f\u043e\u0437\u0438\u0446\u0438\u044f \u043f\u043e \u044d\u0442\u043e\u0439 \u043c\u0435\u0442\u0440\u0438\u043a\u0435, \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u0440\u0443\u0433\u0438\u0445. \u0414\u0432\u0430 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430 \u043c\u043e\u0433\u0443\u0442 \u0437\u0430\u043d\u044f\u0442\u044c \u043e\u0434\u043d\u043e \u043c\u0435\u0441\u0442\u043e, \u0435\u0441\u043b\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u043e\u0432\u043f\u0430\u043b\u043e. \u041f\u043e\u044d\u0442\u043e\u043c\u0443, \u043e\u0431\u0449\u0435\u0435 \u0447\u0438\u0441\u043b\u043e \u043c\u0435\u0441\u0442 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043c\u0435\u043d\u044c\u0448\u0435, \u0447\u0435\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432.\n\xa7 page.person.character.title: \u041f\u0435\u0440\u0441\u043e\u043d\u0430\u0436\n\xa7 page.person.achievement.title: \u0414\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f\n\xa7 page.person.achievement.positive: \u041f\u043e\u0437\u0438\u0442\u0438\u0432\u043d\u044b\u0435\n\xa7 page.person.achievement.normal: \u041d\u0435\u0439\u0442\u0440\u0430\u043b\u044c\u043d\u044b\u0435\n\xa7 page.person.achievement.negative: \u041d\u0435\u0433\u0430\u0442\u0438\u0432\u043d\u044b\u0435\n\xa7 page.person.achievement.description: \u0427\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0435 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a \u043d\u0430\u0431\u0440\u0430\u043b \u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0439, \u0442\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c, \u0447\u0442\u043e \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044f \u043d\u0435\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0430\u044f. \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0441\u0442\u043e\u0438\u0442 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0440\u0435\u0436\u0438\u043c \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u044b, \u0437\u0430\u0434\u0430\u0447\u0438 \u0438\u043b\u0438 \u043e\u0442\u0447\u0451\u0442\u043d\u043e\u0441\u0442\u044c. \u0421\u043b\u0435\u0434\u0443\u0435\u0442 \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u0442\u044c \u0441 \u043d\u0438\u043c \u0438 \u0443\u0437\u043d\u0430\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u043c\u0435\u0448\u0430\u044e\u0442 \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u0435.\n\xa7 page.person.gets.title: \u041c\u0435\u0434\u0430\u043b\u0438 \u0437\u0430 \u043d\u043e\u043c\u0435\u0440\u0430 \u0437\u0430\u0434\u0430\u0447:\n\xa7 page.person.gets.description: \u041c\u0435\u0434\u0430\u043b\u044c \u0432\u044b\u0434\u0430\u0435\u0442\u0441\u044f, \u0435\u0441\u043b\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043f\u0435\u0440\u0432\u044b\u043c \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043a\u043e\u043c\u043c\u0438\u0442 \u043a \u0437\u0430\u0434\u0430\u0447\u0435 \u0441 \xab\u043a\u0440\u0430\u0441\u0438\u0432\u044b\u043c\xbb \u043d\u043e\u043c\u0435\u0440\u043e\u043c.\n\xa7 page.person.business.days.title: \u0434\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b\n\xa7 page.person.business.days.description: \u0423\u0447\u0442\u0435\u043d\u044b \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043d\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u0435\u043b\u0430\u043b\u0438\u0441\u044c \u043a\u043e\u043c\u043c\u0438\u0442\u044b\n\xa7 page.person.business.tasks.title: \u0437\u0430\u0434\u0430\u0447\n\xa7 page.person.business.tasks.description: \u0415\u0441\u043b\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u044b \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d\u044b\n\xa7 page.person.business.losses.title: \u0434\u043d\u0435\u0439 \u0431\u0435\u0437 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 page.person.business.losses.description: \u0412\u0441\u0435 \u0434\u043d\u0438 \u043c\u0438\u043d\u0443\u0441: \u043f\u0440\u0430\u0437\u0434\u043d\u0438\u043a\u0438, \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0435, \u043e\u0442\u043f\u0443\u0441\u043a, \u0434\u043d\u0438 \u0441 \u043a\u043e\u043c\u043c\u0438\u0442\u0430\u043c\u0438\n\xa7 page.person.business.commits.title: \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 page.person.business.commits.description: \u0423\u0434\u0430\u043b\u0451\u043d\u043d\u044b\u0435 \u0432\u0435\u0442\u043a\u0438 \u043d\u0435 \u0441\u0447\u0438\u0442\u0430\u044e\u0442\u0441\u044f\n\xa7 page.person.business.time.description: \u0412\u0440\u0435\u043c\u044f \u043e\u0442 \u043f\u0435\u0440\u0432\u043e\u0433\u043e, \u0434\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430 (\u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435, \u043d\u0435\u0440\u0430\u0431\u043e\u0447\u0438\u0435 \u0434\u043d\u0438)\n\xa7 page.person.business.time.title: \u0414\u043d\u0435\u0439 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435:\n\xa7 page.person.business.time.dismissed: (\u0443\u0432\u043e\u043b\u0435\u043d)\n\xa7 page.person.business.time.staff: (\u043f\u043e\u043c\u043e\u0449\u043d\u0438\u043a)\n\xa7 page.person.business.achievements: \u0414\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f\n\xa7 page.person.changes.title: \u0414\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f\n\xa7 page.person.changes.description: \n\u041f\u0440\u0438 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0432\u0438\u0434\u0430\u0445 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f git \u043e\u0442\u043c\u0435\u0447\u0430\u0435\u0442 \u0441\u0442\u0440\u043e\u043a\u0438 \u043a\u0430\u043a \xab\u0443\u0434\u0430\u043b\u0451\u043d\u043d\u044b\u0435\xbb \u0438 \xab\u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0435\xbb,\n\u0445\u043e\u0442\u044f \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u043e\u043d\u0438 \u0431\u044b\u043b\u0438 \xab\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u044b\xbb. \u041f\u043e\u044d\u0442\u043e\u043c\u0443, \u0435\u0441\u043b\u0438 \u0432\u044b \u043f\u0440\u043e\u0432\u0435\u043b\u0438 \u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0440\u0435\u0444\u0430\u043a\u0442\u043e\u0440\u0438\u043d\u0433,\ngit \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043c\u0430\u043b\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0432 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0435, \u0430 \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\n\u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u043c\u0435\u0447\u0435\u043d, \u043a\u0430\u043a \u0441\u043a\u0430\u0447\u043e\u043a \xab\u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0445\xbb \u0438 \xab\u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445\xbb \u0441\u0442\u0440\u043e\u043a.\n\xa7 page.person.changes.description: \u0421\u043f\u0438\u0441\u043e\u043a \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u0438 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0432 \u043d\u0438\u0445 \u0437\u0430 \u044d\u0442\u043e\u0442 \u0434\u0435\u043d\u044c:\n\xa7 page.person.commits.title: \u0421\u043f\u0438\u0441\u043e\u043a \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432:\n\xa7 page.person.money.title.total: \u0417\u0430 \u0432\u0441\u0451 \u0432\u0440\u0435\u043c\u044f\n\xa7 page.person.money.title.middle: \u0421\u0440\u0435\u0434\u043d\u044f\u044f \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c\n\xa7 page.person.money.moneyAll.title: \u043f\u043e\u043b\u0443\u0447\u0438\u043b\n\xa7 page.person.money.moneyAll.description: \u041f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u043c\u0430\u044f \u0441\u0443\u043c\u043c\u0430 \u0437\u043f \u0441 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 (\u0441\u043c. \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438)\n\xa7 page.person.money.moneyWorked.title: \u043e\u0442\u0440\u0430\u0431\u043e\u0442\u0430\u043b\n\xa7 page.person.money.moneyWorked.description: \u0424\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043e\u0442\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0435 \u0434\u043d\u0438 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u043d\u0430 \u0441\u0440\u0435\u0434\u043d\u044e\u044e \u0437\u043f\n\xa7 page.person.money.moneyLosses.title: \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0430\u044f \u043f\u0435\u0440\u0435\u043f\u043b\u0430\u0442\u0430\n\xa7 page.person.money.moneyLosses.description: \u0414\u043d\u0438 \u0431\u0435\u0437 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u043d\u0430 \u0441\u0440\u0435\u0434\u043d\u044e\u044e \u0437\u043f\n\xa7 page.person.money.tasks.title: \u0437\u0430\u0434\u0430\u0447\u0430\n\xa7 page.person.money.tasks.description: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u043a\u0440\u044b\u0442\u044b\u0445 \u0437\u0430\u0434\u0430\u0447 \u043a \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u0438 \u0434\u043d\u044f\n\xa7 page.person.money.commits.title: \u043a\u043e\u043c\u043c\u0438\u0442\n\xa7 page.person.money.commits.description: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u043a \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u0438 \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u0434\u043d\u044f\n\xa7 page.person.speed.task: \u041e\u0434\u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u0432 \u0441\u0440\u0435\u0434\u043d\u0435\u043c \u044d\u0442\u043e\n\xa7 page.person.speed.max: \u041c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0432 \u0434\u0435\u043d\u044c\n\xa7 page.person.speed.days.title: \u0434\u043d\u0435\u0439\n\xa7 page.person.speed.days.description: \u0418\u043c\u0435\u044e\u0442\u0441\u044f \u0432\u0432\u0438\u0434\u0443 \u0440\u0430\u0431\u043e\u0447\u0438\u0435 \u0434\u043d\u0438, \u0435\u0441\u043b\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u044b \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d\u044b\n\xa7 page.person.speed.commits.title: \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 page.person.speed.commits.description: \u041e\u0442\u0440\u0435\u0437\u0430\u043d\u044b 10% \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0445 \u0438 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439\n\xa7 page.person.speed.line.title: \u0441\u0442\u0440\u043e\u043a \u043a\u043e\u0434\u0430\n\xa7 page.person.speed.line.description: \u041e\u0442\u0440\u0435\u0437\u0430\u043d\u044b 10% \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0445 \u0438 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439\n\xa7 page.person.speed.tasks.title: \u0437\u0430\u0434\u0430\u0447\n\xa7 page.person.speed.tasks.description: \u0417\u0430\u0434\u0430\u0447\u0430 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043d\u0435 \u0434\u043e\u0434\u0435\u043b\u0430\u043d\u0430, \u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430 \u043f\u043e \u043d\u0435\u0439 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c\n\xa7 page.person.speed.maxCommits.title: \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 page.person.speed.maxCommits.description: \u0417\u0430\u0434\u0430\u0447\u0430 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043d\u0435 \u0434\u043e\u0434\u0435\u043b\u0430\u043d\u0430, \u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430 \u043f\u043e \u043d\u0435\u0439 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c\n\xa7 page.person.hours.title: \u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0438 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0434\u043d\u044f \u043d\u0435\u0434\u0435\u043b\u0438\n\xa7 page.person.week.date: \u0414\u0430\u0442\u0430\n\xa7 page.person.week.tasks: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u0434\u0430\u0447\n\xa7 page.person.week.workDays: \u0414\u043d\u0438 \u0441 \u043a\u043e\u043c\u043c\u0438\u0442\u0430\u043c\u0438\n\xa7 page.person.week.taskInDay: \u0417\u0430\u0434\u0430\u0447 \u0432 \u0434\u0435\u043d\u044c\n\xa7 page.person.week.days: \u0434\u043d\u0435\u0439\n\xa7 page.person.week.workDay: \u0431\u0443\u0434\u043d\u0438\n\xa7 page.person.week.weekends: \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0435\n\xa7 page.sponsor.title: \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0442\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\n\xa7 page.sponsor.share.description: \u0420\u0430\u0441\u0441\u043a\u0430\u0436\u0438\u0442\u0435 \u043e \u043d\u0430\u0448\u0435\u043c [\u043f\u0440\u043e\u0435\u043a\u0442\u0435|https://github.com/bakhirev/assayo] \u0432 \u0441\u043e\u0446\u0441\u0435\u0442\u044f\u0445! \u041c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f [\u0441\u0442\u0430\u0442\u044c\u0435\u0439|https://habr.com/ru/articles/763342/], [\u043f\u043e\u0441\u0442\u043e\u043c|https://www.reddit.com/r/ITManagers/comments/1e5k291/the_visualization_and_analysis_of_git_commit/] \u0438\u043b\u0438 [\u0432\u0438\u0434\u0435\u043e|https://www.youtube.com/watch?v=jwCp_-bhrCQ].\n\xa7 page.sponsor.share.button: \u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0443\n\xa7 page.sponsor.money.description: \u041c\u044b \u0431\u0443\u0434\u0435\u043c \u0440\u0430\u0434\u044b, \u0435\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0442\u0435 \u043d\u0430\u0441 \u043b\u044e\u0431\u043e\u0439 \u0441\u0443\u043c\u043c\u043e\u0439! \u0412\u0441\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u043f\u043e\u0439\u0434\u0443\u0442 \u043d\u0430 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0435 \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430.\n\xa7 page.sponsor.money.qr: \u0420\u0430\u0437\u043e\u0432\u044b\u0439 \u043f\u043b\u0430\u0442\u0451\u0436 (\u0421\u0411\u041f)\n\xa7 page.sponsor.money.github: \u041f\u043e\u0434\u043f\u0438\u0441\u043a\u0430 GitHub Sponsor\n"].join(""),De=['\n\xa7 achievements.commitsAfter1500.title: \ubd80\uc5c9\uc774\n\xa7 achievements.commitsAfter1500.description: 15:00 \uc774\ud6c4 70%\ucee4\ubc0b\n\xa7 achievements.commitsBefore1500.title: \uc774\ub978 \uc0c8\n\xa7 achievements.commitsBefore1500.description: \uc810\uc2ec \uc804\uc5d0 \ucee4\ubc0b\uc758 70%\n\xa7 achievements.workEveryTime.title: \ud558\ub098\ub2d8\uc758 \uc885\n\xa7 achievements.workEveryTime.description: \ud558\ub8e8 \uc911 \ub9e4 \uc2dc\uac04\ub9c8\ub2e4 \uc57d\uc18d\uc774 \uc788\uc2b5\ub2c8\ub2e4.\n\xa7 achievements.workNotWork.title: \uacf5\ubc31\uc774 \uc788\uc2b5\ub2c8\ub2e4\n\xa7 achievements.workNotWork.description: \ucee4\ubc0b\ud558\uc9c0\ub9cc \ub2eb\ud78c \uc791\uc5c5\uc740 \uc5c6\uc2b5\ub2c8\ub2e4\n\xa7 achievements.userNotWork.title: \uae38 \uc783\uc740\n\xa7 achievements.userNotWork.description: \uadf8\uc758 \uc8fc\uc694 \ud504\ub85c\uc81d\ud2b8\uac00 \uc544\ub2d9\ub2c8\ub2e4\n\xa7 achievements.userIsDied.title: \uc8fd\uc740 \uc601\ud63c\n\xa7 achievements.userIsDied.description: \uadfc\ubb34,\ud558\uc9c0\ub9cc \uc885\ub8cc\n\xa7 achievements.lessTasks.title: \uc548\uc73c\ub85c \uadf8\ub9ac\uace0 \ubc16\uc73c\ub85c\n\xa7 achievements.lessTasks.description: \uc785\ub825 \ubc0f \uc885\ub8cc\ub41c \ub2eb\ud78c \uc791\uc5c5 \uc218\uac00 \uac00\uc7a5 \uc801\uc2b5\ub2c8\ub2e4\n\xa7 achievements.moreTasks.title: \uc544\ube60 \uadf8\ub9bf \ub9d0\ub77c\uce20\uc544\n\xa7 achievements.moreTasks.description: \ub300\ubd80\ubd84\uc758 \ubaa8\ub4e0 \ud3d0\uc1c4 \uc791\uc5c5\n\xa7 achievements.everyMessageLong.title: \uc6c5\ubcc0\uc758 \ub9c8\uc2a4\ud130\n\xa7 achievements.everyMessageLong.description: \uc77c\uad00\ub418\uac8c \uac00\uc7a5 \uae34 \ucee4\ubc0b \uc11c\uba85\uc774 \uc788\uc2b5\ub2c8\ub2e4.\n\xa7 achievements.everyMessageShort.title: \uc218\ub2e4\uc7c1\uc774\ub294 \uac04\ucca9\uc744 \uc704\ud55c \uc2e0\uc758 \uc120\ubb3c\uc774\ub2e4\n\xa7 achievements.everyMessageShort.description: \uc77c\uad00\ub418\uac8c \uac00\uc7a5 \uc9e7\uc740 \ucee4\ubc0b \uc11c\uba85\n\xa7 achievements.shortestName.title: \ud06c\uae30\ub294 \uc8fc\uc694 \uc544\ub2d9\ub2c8\ub2e4\n\xa7 achievements.shortestName.description: \uac83,\uac00\uc7a5 \uc9e7\uc740 \uc774\ub984\n\xa7 achievements.longestName.title: \uc544\uc9c0\ubbf8 \uc544\uc9c0\uc988 \uc77c \uc554 \uce74\ub514\ub974 \uc774\ubbc0\ub780 2 \uc138\n\xa7 achievements.longestName.description: \uac00\uc7a5 \uae34 \uc774\ub984\uc785\ub2c8\ub2e4.\n\xa7 achievements.moreCommits.title: \ubc31\uc5c5 \ub9c8\ubc95\uc0ac\n\xa7 achievements.moreCommits.description: \uac00\uc7a5 \ub9ce\uc740 \ucee4\ubc0b\uc774 \uc788\uc2b5\ub2c8\ub2e4\n\xa7 achievements.lessCommits.title: \ub4dc\ubb3c\uc9c0\ub9cc \uc801\uc808\ud558\uac8c\n\xa7 achievements.lessCommits.description: \ucd5c\uc18c \ucee4\ubc0b\n\xa7 achievements.oneCommitOneTask.title: \uc815\ud655\ud788 \ubaa9\ud45c\uc5d0\n\xa7 achievements.oneCommitOneTask.description: ,\ud3c9\uade0\uc801\uc73c\ub85c \uc791\uc5c5 \ub2f9 \ud558\ub098\uc758 \ucee4\ubc0b\n\xa7 achievements.moreLazyDays.title: \uc815\uc2e0\uc801\uc73c\ub85c,\ub098\ub294 \ub2f9\uc2e0\uacfc \ud568\uaed8 \uc788\uc2b5\ub2c8\ub2e4\n\xa7 achievements.moreLazyDays.description: \ucee4\ubc0b \uc5c6\ub294 \ub300\ubd80\ubd84\uc758 \ub0a0\n\xa7 achievements.lessLazyDays.title: \ud30c\ud30c \uce74\ub97c\ub85c\n\xa7 achievements.lessLazyDays.description: \ucee4\ubc0b \uc5c6\uc774 \ucd5c\uc18c \uc77c \uc218 \uc788\uc74c\n\xa7 achievements.zeroLazyDays.title: \ub2e8 \ud55c \ubc88\uc758 \ud734\uc2dd\ub3c4\n\xa7 achievements.zeroLazyDays.description: ,\ucee4\ubc0b \uc5c6\uc774 \ub2e8 \ud558\ub8e8\ub3c4\n\xa7 achievements.moreWorkDays.title: \uc18c\uc911\ud55c \uc9c1\uc6d0\n\xa7 achievements.moreWorkDays.description: \ucd5c\ub300 \uc791\uc5c5 \uc77c\uc744 \uc704\ud574\n\xa7 achievements.moreScopes.title: \uc2dc\uc791\n\xa7 achievements.moreScopes.description: \ub300\ubd80\ubd84\uc758 \uae30\ub2a5\uc744 \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4\n\xa7 achievements.lessScopes.title: \uace8\ub4dc\ud540\uce58\n\xa7 achievements.lessScopes.description: \uac00\uc7a5 \uc801\uc740 \uae30\ub2a5\uc744 \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4.\n\xa7 achievements.moreDaysForTask.title: \uc2ac\ub85c\ud504\uc5d0 \ub2ec\ud33d\uc774\n\xa7 achievements.moreDaysForTask.description: \uc791\uc5c5 \uc791\uc5c5\uc740 \ub098\uba38\uc9c0 \uc791\uc5c5\ubcf4\ub2e4 \ub290\ub9bd\ub2c8\ub2e4\n\xa7 achievements.more2DaysForTask.title: \ub290\ub9b0\n\xa7 achievements.more2DaysForTask.description: ,\uc791\uc5c5 \ub2f9 2 \uc77c \uc774\uc0c1\n\xa7 achievements.more3YearsInProject.title: \uadf8\ub294 \uc624\ub798 \ub41c \ud0c0\uc774\uba38 \ub418\uc5c8\uc2b5\ub2c8\ub2e4\n\xa7 achievements.more3YearsInProject.description: 3 \ub144 \uc774\uc0c1 \ud504\ub85c\uc81d\ud2b8\uc5d0\uc11c\n\xa7 achievements.lessDaysInProject.title: \uadf8\ub9ac\uace0 \uc774\uac83\uc740 \ub204\uad6c\uc785\ub2c8\uae4c?\n\xa7 achievements.lessDaysInProject.description: \ud504\ub85c\uc81d\ud2b8\uc758 \ucd5c\uc18c \uc77c \uc218\n\xa7 achievements.lessDaysForTask.title: \ube60\ub978\n\xa7 achievements.lessDaysForTask.description: \ud654\uc7ac \ud55c \uc791\uc5c5\uc740 \ud558\ub8e8 \ubbf8\ub9cc \uc18c\uc694\n\xa7 achievements.adam.title: \uc544\ub2f4\n\xa7 achievements.adam.description: \ud504\ub85c\uc81d\ud2b8\uc758 \uccab \ubc88\uc9f8 \uc548\uc815\uc801\uc778 \uc9c1\uc6d0\n\xa7 achievements.more90DaysInProject.title: \ud658\uc601\n\xa7 achievements.more90DaysInProject.description: \uc9d1\ud589\uc720\uc608\ub85c \ud574\uace0\ub418\uc9c0 \uc54a\uc74c\n\xa7 achievements.more365DaysInProject.title: \uace0\ub3c4\ubc14\uc2dc\ud06c\n\xa7 achievements.more365DaysInProject.description: \uc774 \ud504\ub85c\uc81d\ud2b8\uc5d0\uc11c 1 \ub144 \ub3d9\uc548 \uc77c\ud588\uc2b5\ub2c8\ub2e4.\n\xa7 achievements.more666DaysInProject.title: \uc820\uc7a5\n\xa7 achievements.more666DaysInProject.description: ,\ub098\ub294 \ud504\ub85c\uc81d\ud2b8\uc5d0 666 \uc77c\uc744 \uc77c\ud588\ub2e4\n\xa7 achievements.more777DaysInProject.title: \uc544\uc9c0\ub178 3 \ucd95\n\xa7 achievements.more777DaysInProject.description: \ud504\ub85c\uc81d\ud2b8\uc5d0 777 \uc77c \uadfc\ubb34\n\xa7 achievements.moreDaysInProject.title: \ud300\uc758 \uc77c\ubd80,\ubc30\uc758 \uc77c\ubd80\n\xa7 achievements.moreDaysInProject.description: \ud504\ub85c\uc81d\ud2b8\uc5d0 \uac00\uc7a5 \ub9ce\uc740 \uc77c\n\xa7 achievements.moreRefactoring.title: \ub9b4\ub9ac\uc2a4 \ud3b8\uc9d1\uae30\n\xa7 achievements.moreRefactoring.description: \ubaa8\ub4e0 \ub808\uc774\ube14"\ub9ac\ud329\ud1a0\ub9c1"\uc744 \ucd5c\ub300\ud55c \ud65c\uc6a9\ud588\uc2b5\ub2c8\ub2e4.\n\xa7 achievements.longestMessage.title: "\ud600\ub85c \ub9d0\ud558\uae30"\uac00\ubc29\uc774 \uc544\ub2cc \ub864\n\xa7 achievements.longestMessage.description: \ubaa8\ub4e0 \uc2dc\uac04 \uc911 \uac00\uc7a5 \uae34 \ucee4\ubc0b \uc11c\uba85 \uc774\uc0c1\n\xa7 achievements.moreTasksInDay.title: \uc2a4\ud53c\ub514 \ub808\uc774\uc11c\n\xa7 achievements.moreTasksInDay.description: \ud558\ub8e8 \uc885\ub8cc\ub41c \uc791\uc5c5 \uc218\uc5d0 \ub300\ud55c \ub808\ucf54\ub4dc\uc785\ub2c8\ub2e4\n\xa7 achievements.hasCommitFrom0to7.title: \uc57c\uac04 \uc2dc\uacc4\n\xa7 achievements.hasCommitFrom0to7.description: \ubc24\uc758 \ubaa8\ub4e0 \uc2dc\uac04\uc5d0 \ub300\ud55c \ucee4\ubc0b\uc774\uc788\ub2e4\n\xa7 achievements.noCommitOnDay.title: \uae30\uc220 \uc911\ub2e8\n\xa7 achievements.noCommitOnDay.description: \uacb0\ucf54 \uc624\uc9c0 \uc54a\ub294 \uadfc\ubb34 \uc2dc\uac04 \ub3c4\uc911 \uc5b4\ub290 \uc2dc\uac04 \ubc0f \uc77c\uc774 \uc788\ub2e4\n\xa7 achievements.hasCommitEveryTime.title: \uc9c1\uc7a5\uc5d0\uc11c \uc0ac\ub9dd\n\xa7 achievements.hasCommitEveryTime.description: \ub9e4\uc77c \ud55c \uc2dc\uac04 \ub3d9\uc548 \ucee4\ubc0b\uc774 \uc788\uc2b5\ub2c8\ub2e4(\uc8fc\ub9d0 \ud3ec\ud568)\n\xa7 achievements.commitsAfter1800.title: \uc601\uc5c5 \uc2dc\uac04\n\xa7 achievements.commitsAfter1800.description: ,18:00 \uc774\ud6c4\uc5d0\ub294 \ucee4\ubc0b\uc774 \uc5c6\uc2b5\ub2c8\ub2e4\n\xa7 achievements.moreFix.title: \ubc84\uadf8 \ud5cc\ud130\n\xa7 achievements.moreFix.description: \uac00\uc7a5 \ub2eb\ud78c \ubc84\uadf8\uac00 \uc788\uc2b5\ub2c8\ub2e4\n\xa7 achievements.lessWorkDays.title: \uadf8\ub7fc\n\xa7 achievements.lessWorkDays.description: \ub098 \uc5c6\uc774 \ub354 \uc801\uc740 \uc791\uc5c5 \uc77c\uc774 \uc788\ub2e4\n\xa7 achievements.moreCreateCode.title: \ucc3d\uc870\uc8fc\n\xa7 achievements.moreCreateCode.description: \ucf54\ub4dc\ub97c \ucd94\uac00\ud558\ub294 \ub2e4\ub978 \uc0ac\ub78c\ubcf4\ub2e4 \ub354 \ub9ce\uc740 \uacbd\ud5a5\uc774\uc788\ub2e4\n\xa7 achievements.moreRemoveCode.title: \ud30c\uad34\uc790\n\xa7 achievements.moreRemoveCode.description: \ucf54\ub4dc\ub97c \uc0ad\uc81c\ud558\ub294 \ub2e4\ub978 \uc0ac\ub78c\ubcf4\ub2e4 \ub354 \ub9ce\uc740 \uacbd\ud5a5\uc774\uc788\ub2e4\n\xa7 achievements.moreChangeCode.title: \uac1c\ud601\uc790\n\xa7 achievements.moreChangeCode.description: \ucf54\ub4dc\ub97c \ubcc0\uacbd\ud558\ub294 \ub2e4\ub978 \uc0ac\ub78c\ubcf4\ub2e4 \ub354 \ub9ce\uc740 \uacbd\ud5a5\uc774\uc788\ub2e4\n\xa7 achievements.moreStyle.title: \ud328\uc158 \uacbd\ucc30\n\xa7 achievements.moreStyle.description: \ub2e4\ub978 \uc0ac\ub78c\ub4e4\ubcf4\ub2e4 \ub354 \ub9ce\uc740 \uacbd\ud5a5\uc774 \uc788\uc2b5\ub2c8\ub2e4.\n\xa7 achievements.moreOnHoliday.title: \uc0dd\uba85 \uc740 \uc5c6\ub2e4\n\xa7 achievements.moreOnHoliday.description: \uc2dc\uac04 \uc774\ud6c4 \ube44\uad50\uc801 \ub9ce\uc740 \ucee4\ubc0b\uc758 \uacbd\uc6b0\n\xa7 achievements.morePRMerge.title: \uc138\uad00\uc740 \uc774\ub3d9-\ubbf8\ub9ac \uc81c\uacf5\n\xa7 achievements.morePRMerge.description: \ub2e4\ub978 \uc0ac\ub78c\ub4e4\ubcf4\ub2e4 \ub354 \uc790\uc8fc \uadf8\ub294 \ud64d\ubcf4\ub97c \uc704\ud574"\ubd80\uc5b4"\ubc84\ud2bc\uc744 \ub204\ub985\ub2c8\ub2e4\n\xa7 achievements.longWaitPR.title: \ub0b4\uc77c,\ud655\uc2e4\ud788\n\xa7 achievements.longWaitPR.description: ,\uc6b0\ub9ac\ub294 \ud55c \ub2ec \uc774\uc0c1 \uac80\ud1a0\uc5d0 \ub9e4\ub2ec\ub824 \ub41c \ud64d\ubcf4\ub97c \ub9cc\ub4e4 \uac83\uc785\ub2c8\ub2e4\n\xa7 achievements.moreLongWaitPR.title: \uc624\ub798 \uc804,\uba3c \uc740\ud558\uc5d0\uc11c\n\xa7 achievements.moreLongWaitPR.description: ,\ub098\ub294 \uac00\ub2a5\ud55c \ud55c \uc624\ub7ab\ub3d9\uc548 \ub9ac\ubdf0\uc5d0 \ub9e4\ub2ec\ub9b0 \ud64d\ubcf4\ub97c \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4\n\xa7 achievements.oneExtension.title: \uc804\uc7a5\uc5d0\uc11c \uc720\uc77c\ud55c \uc0ac\ub78c\uc740 \uc804\uc0ac\uc785\ub2c8\ub2e4\n\xa7 achievements.oneExtension.description: ,\uadf8\ub294 \ud2b9\uc815 \ud655\uc7a5\uc790\uc758 \ud30c\uc77c \ub9cc \uc0ac\uc6a9\ud569\ub2c8\ub2e4\n\xa7 achievements.fileRush.title: \uc800\uadf8 \ub7ec\uc26c\n\xa7 achievements.fileRush.description: \ud504\ub85c\uc81d\ud2b8\uc5d0\uc11c \uac00\uc7a5 \ub9ce\uc740 \ud30c\uc77c\uc744 \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4.\n\xa7 achievements.moreLintHint.title: \uadf8\ub77c\ub9c8\ub974-\ub098\uce58\n\xa7 achievements.moreLintHint.description: \uc0dd\uc131 \ub610\ub294 \ucf54\ub4dc\uc758 \uc790\ub3d9 \uac80\uc99d\uc758 \uaddc\uce59\uc5d0 \uac00\uc7a5 \ubcc0\uacbd\n\xa7 achievements.moreReadMe.title: \uc5f0\ub300\uae30 \uc791\uac00\n\xa7 achievements.moreReadMe.description: \uac00\uc7a5 \ub9ce\uc774 \ub9cc\ub4e0 \ud30c\uc77c \ub610\ub294 \ubcc0\uacbd\ub41c \ud30c\uc77c\n\xa7 achievements.moreDevOps.title: \uac1c\ubc1c \uc6b4\uc601\n\xa7 achievements.moreDevOps.description: \uac00\uc7a5 \ub9ce\uc740 \ud30c\uc77c\uc744 \uc0dd\uc131 \ub610\ub294 \uc218\uc815\ud588\uc2b5\ub2c8\ub2e4.\n\xa7 achievements.moreTests.title: \ud14c\uc2a4\ud130\n\xa7 achievements.moreTests.description: \ud14c\uc2a4\ud2b8\ub97c \uc704\ud574 \uac00\uc7a5 \ub9ce\uc740 \ud30c\uc77c\uc744 \ub9cc\ub4e4\uac70\ub098 \uc218\uc815\ud588\uc2b5\ub2c8\ub2e4\n\xa7 achievements.allRelease.title: \ud480 \ud558\uc6b0\uc2a4\n\xa7 achievements.allRelease.description: \uadf8\uc758 \uc791\uc5c5\uc5d0\uc11c\ub9cc \ucef4\ud30c\uc77c \ub41c \ub9b4\ub9ac\uc2a4\uac00 \uc788\uc2b5\ub2c8\ub2e4\n\xa7 achievements.firstCommit.title: \ub204\uac00 \uccab \ubc88\uc9f8,\uadf8\ub9ac\uace0 \uc6b4\ub3d9\ud654\n\xa7 achievements.firstCommit.description: \ud504\ub85c\uc81d\ud2b8\uc758 \uccab \ubc88\uc9f8 \ucee4\ubc0b\uc785\ub2c8\ub2e4\n\xa7 achievements.lastCommit.title: \ub098\ub294 \uc644\ub8cc\n\xa7 achievements.lastCommit.description: \ud504\ub85c\uc81d\ud2b8\uc758 \ub9c8\uc9c0\ub9c9 \ucee4\ubc0b\n\xa7 achievements.firstLastCommit.title: \ucc98\uc74c\ubd80\ud130 \ub05d\uae4c\uc9c0\n\xa7 achievements.firstLastCommit.description: ,\ud504\ub85c\uc81d\ud2b8\uc758 \uccab \ubc88\uc9f8\uc640 \ub9c8\uc9c0\ub9c9 \ucee4\ubc0b\n\xa7 achievements.longFilePath.title: \uc870\uad6d\uc758 \uc4f0\ub808\uae30\ud1b5\n\xa7 achievements.longFilePath.description: \uac00\uc7a5 \uae4a\uc740 \ucca8\ubd80 \ud30c\uc77c\uc744 \ub9cc\ub4e0 \uccab \ubc88\uc9f8 \uc0ac\ub78c\n\xa7 achievements.longFileName.title: \ud06c\uae30 \ubb38\uc81c\n\xa7 achievements.longFileName.description: \uac00\uc7a5 \uae34 \uc774\ub984\uc744 \uac00\uc9c4 \ud30c\uc77c\uc744 \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4.\n\xa7 achievements.workOnWeekends.title: \uc77c \uc740 \uc0b0\ucc45 \uc774 \uc544\ub2c8\ub2e4\n\xa7 achievements.workOnWeekends.description: \uc801\uc5b4\ub3c4 \ud55c \ubc88 \uc8fc\ub9d0\uc5d0 \uc77c\ud588\ub2e4\n\xa7 achievements.removeCreateFile.title: \ub098\ub294 \uc2a4\ud29c\uc5b4\ub514\uc2a4\ub97c \ubc1c\uad74\n\xa7 achievements.removeCreateFile.description: \uadf8\ub9ac\uace0 \uc0ad\uc81c \ub41c \ud30c\uc77c\uc744 \ubcf5\uc6d0\n\xa7 achievements.renameFile.title: \uc544\uc2a4\ud0c0\ub098 \ub204\ub974 \uc220\ud0c4 \uc544\uc2a4\ud0c0\ub098\n\xa7 achievements.renameFile.description: \ud30c\uc77c \uc774\ub984\uc744 \uc55e\ub4a4\ub85c \ubc14\uafc9\ub2c8\ub2e4\n\xa7 achievements.longTask.title: \uc774\uc988\uc580\n\xa7 achievements.longTask.description: 3 \uac1c\uc6d4 \uc774\uc0c1 \uc791\uc5c5\uc744 \ud574\uc654\uc2b5\ub2c8\ub2e4.\n\xa7 achievements.haveNotEmail.title: \uc6b0\ud3b8\uc0ac \ud398\uce58\ud0a8\n\xa7 achievements.haveNotEmail.description: \uc804\uc790 \uba54\uc77c \ud544\ub4dc\ub97c \ucc44\uc6b0\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4.\n\xa7 achievements.moreAddedFolders.title: \uc774\uc0ac\n\xa7 achievements.moreAddedFolders.description: \uac00\uc7a5 \ub9ce\uc740 \ub514\ub809\ud1a0\ub9ac\ub97c \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4.\n\xa7 achievements.horoscope1.title: \uc5fc\uc18c \uc790\ub9ac\uc758 \uc5ed\ud589 \uc218\uc740\n\xa7 achievements.horoscope2.title: \ubb3c\ubcd1 \uc790\ub9ac\uc758 \uc5ed\ud589 \uc218\uc131\n\xa7 achievements.horoscope3.title: \ubb3c\uace0\uae30\uc758 \uc5ed\ud589 \uc218\uc740\n\xa7 achievements.horoscope4.title: \uc591\uc790\ub9ac\uc758 \uc5ed\ud589 \uc218\uc740\n\xa7 achievements.horoscope5.title: \ud669\uc18c \uc790\ub9ac\uc758 \uc5ed\ud589 \uc218\uc740\n\xa7 achievements.horoscope6.title: \uc30d\ub465\uc774 \uc790\ub9ac\uc758 \uc5ed\ud589 \uc218\uc131\n\xa7 achievements.horoscope7.title: \uc554\uc758 \uc5ed\ud589 \uc218\uc740\n\xa7 achievements.horoscope8.title: \ub808\uc624\uc758 \uc5ed\ud589 \uc218\uc131\n\xa7 achievements.horoscope9.title: \ucc98\ub140 \uc790\ub9ac\uc758 \uc5ed\ud589 \uc218\uc131\n\xa7 achievements.horoscope10.title: \ucc9c\uce6d \uc790\ub9ac\uc758 \uc5ed\ud589 \uc218\uc740\n\xa7 achievements.horoscope11.title: \uc804\uac08 \uc790\ub9ac\uc758 \uc5ed\ud589 \uc218\uc131\n\xa7 achievements.horoscope12.title: \uad81\uc218 \uc790\ub9ac\uc758 \uc5ed\ud589 \uc218\uc740\n\xa7 achievements.horoscope1.description: \uccab \ubc88\uc9f8 \uc57d\uc18d\uc758 \ub2ec\uae4c\uc9c0\n\xa7 achievements.horoscope2.description: \uccab \ubc88\uc9f8 \uc57d\uc18d\uc758 \ub2ec\uae4c\uc9c0\n\xa7 achievements.horoscope3.description: \uccab \ubc88\uc9f8 \uc57d\uc18d\uc758 \ub2ec\uae4c\uc9c0\n\xa7 achievements.horoscope4.description: \uccab \ubc88\uc9f8 \uc57d\uc18d\uc758 \ub2ec\uae4c\uc9c0\n\xa7 achievements.horoscope5.description: \uccab \ubc88\uc9f8 \uc57d\uc18d\uc758 \ub2ec\uae4c\uc9c0\n\xa7 achievements.horoscope6.description: \uccab \ubc88\uc9f8 \uc57d\uc18d\uc758 \ub2ec\uae4c\uc9c0\n\xa7 achievements.horoscope7.description: \uccab \ubc88\uc9f8 \uc57d\uc18d\uc758 \ub2ec\uae4c\uc9c0\n\xa7 achievements.horoscope8.description: \uccab \ubc88\uc9f8 \uc57d\uc18d\uc758 \ub2ec\uae4c\uc9c0\n\xa7 achievements.horoscope9.description: \uccab \ubc88\uc9f8 \uc57d\uc18d\uc758 \ub2ec\uae4c\uc9c0\n\xa7 achievements.horoscope10.description: \uccab \ubc88\uc9f8 \uc57d\uc18d\uc758 \ub2ec\uae4c\uc9c0\n\xa7 achievements.horoscope11.description: \uccab \ubc88\uc9f8 \uc57d\uc18d\uc758 \ub2ec\uae4c\uc9c0\n\xa7 achievements.horoscope12.description: \uccab \ubc88\uc9f8 \uc57d\uc18d\uc758 \ub2ec\uae4c\uc9c0\n\xa7 achievements.111.description: \uc2dc\ud5d8\n','\n\xa7 uiKit.console.button: \ubcf5\uc0ac\n\xa7 uiKit.console.notification: \ud14d\uc2a4\ud2b8\uac00 \ubcf5\uc0ac\ub418\uc5c8\uc2b5\ub2c8\ub2e4\n\xa7 uiKit.dataLoader.page: \ud398\uc774\uc9c0\n\xa7 uiKit.dataLoader.size: \uc5d0 \uc758\ud574 \ud45c\uc2dc\n\xa7 uiKit.dataLoader.rows: \ub77c\uc778.\n\xa7 uiKit.dataLoader.from: \uc5d0\uc11c\n\xa7 uiKit.dataLoader.all: \ubaa8\ub450 \ubcf4\uae30\n\xa7 uiKit.hoursChart.work: \ud45c\uc900 \uadfc\ubb34 \uc2dc\uac04(\ud3c9\uc77c 07:00~20:00)\n\xa7 uiKit.hoursChart.weekend: \uadfc\ubb34\uc77c \uc804/\ud6c4 \uc8fc\ub9d0 \ub610\ub294 \uc2dc\uac04\n\xa7 uiKit.hoursChart.days: \ud2b9\uc815 \uc694\uc77c \ubc0f \uc2dc\uac04\uc758 \ubaa8\ub4e0 \uc2dc\uac04\uc5d0 \ub300\ud55c \ucd1d \ucee4\ubc0b \uc218\n\xa7 uiKit.page.remove: \uc81c\uac70\n\xa7 uiKit.nothingFound.common.title: \ud45c\uc2dc \ud560 \ub370\uc774\ud130\uac00 \uc5c6\uac70\ub098 \ubd80\uc871\ud569\ub2c8\ub2e4\n\xa7 uiKit.nothingFound.common.description: \ucee4\ubc0b\uc774 \ud615\uc2dd\uc73c\ub85c \uc11c\uba85\ub418\uba74 \uc2dc\uc2a4\ud15c\uc740 \ub354 \ub9ce\uc740 \ub370\uc774\ud130\ub97c \ucc98\ub9ac\ud569\ub2c8\ub2e4.:\n\xa7 uiKit.nothingFound.common.console: \uc791\uc5c5 \ubc88\ud638 \uc720\ud615(\uae30\ub2a5):\uc124\uba85\n\xa7 uiKit.nothingFound.common.example: \uc608\ub97c \ub4e4\uc5b4:\n\xa7 uiKit.nothingFound.staff.title: \uc774 \uc9c1\uc6d0\uc5d0 \ub300\ud55c \ub370\uc774\ud130\uac00 \uc5c6\uc2b5\ub2c8\ub2e4\n\xa7 uiKit.nothingFound.staff.description1\n\uadf8\ub294 \ub9e4\uc77c \ud3b8\uc9d1\uc744\ud558\uc9c0 \uc54a\uc558\uace0"\uc870\uc218"\uc758 \uc9c0\uc704\ub97c \ubc1b\uc558\uc2b5\ub2c8\ub2e4.\n\uc774 \ud504\ub85c\uc81d\ud2b8\uc5d0\uc11c\uc774 \uc0c1\ud0dc\ub97c \uac00\uc9c4 \uc9c1\uc6d0\uc758 \uc791\uc5c5\uc740 \ube14\ub77c\ub4dc\uac00 \uc77c\ubc18\uc801\uc778 \ubc30\uacbd\uc5d0 \ube44\ud574 \uc911\uc694\ud558\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \ubb34\uc2dc \ub420 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n\xa7 uiKit.nothingFound.staff.description2\n\ub530\ub77c\uc11c \uc2dc\uc2a4\ud15c\uc740 \uadf8\uac83\uc5d0 \ub300\ud55c \uc5ec\ub7ec \uc9c0\ud45c\ub97c \uacc4\uc0b0\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.\n\uc774\uac83\uc774 \uc624\ub958\uc774\uace0 \uc774 \uc9c1\uc6d0\uc744 \uc77c\ubc18 \uc9c1\uc6d0\uc73c\ub85c \uacc4\uc0b0\ud574\uc57c \ud558\ub294 \uacbd\uc6b0"\uc124\uc815"\uc139\uc158\uc73c\ub85c \uc774\ub3d9\ud558\uc5ec \uc720\ud615\uc744 \ubcc0\uacbd\ud558\uc2ed\uc2dc\uc624.\n\xa7 common.title: \ud798\ub0b4 \ud1b5\uacc4\n\xa7 common.filters: \ud544\ud130\n\xa7 common.notifications.save: \ubcc0\uacbd \uc0ac\ud56d\uc774 \uc800\uc7a5\ub429\ub2c8\ub2e4\n\xa7 common.notifications.setting: \uc124\uc815\uc774 \uc800\uc7a5\ub429\ub2c8\ub2e4\n\xa7 common.fileLoader.notification: \ud30c\uc77c \uc5c5\ub85c\ub4dc \uc624\ub958$1\n',"\n\xa7 sidebar.switch.team: \ud300\n\xa7 sidebar.switch.person: \uc9c1\uc6d0\n\xa7 sidebar.buttons.settings: \uc124\uc815\n\xa7 sidebar.buttons.print: \uc778\uc1c4\n\xa7 sidebar.buttons.share: \uadf8\uac83\uc744 \uacf5\uc720\n\xa7 sidebar.buttons.logout: \ub098\uac00\n\xa7 sidebar.filters.all: \ud56d\uc0c1\n\xa7 sidebar.filters.year: \ub144\n\xa7 sidebar.filters.halfYear: \ubc18\ub144\n\xa7 sidebar.filters.month: \uc6d4\n\xa7 sidebar.filters.week: \uc8fc\n\xa7 sidebar.team.total: \uc77c\ubc18 \uc815\ubcf4\n\xa7 sidebar.team.scope: \ud2b9\uc9d5\n\xa7 sidebar.team.author: \uc9c1\uc6d0\n\xa7 sidebar.team.type: \uc791\uc5c5 \uc720\ud615\n\xa7 sidebar.team.pr: \ucf54\ub4dc \uc0bd\uc785\n\xa7 sidebar.team.day: \ub0ae\uc5d0\n\xa7 sidebar.team.week: \uc8fc\ubcc4\n\xa7 sidebar.team.month: \uc6d4\ubcc4\n\xa7 sidebar.team.files: \ud30c\uc77c\n\xa7 sidebar.team.removedFiles: \uc0ad\uc81c \ub41c \ud30c\uc77c\n\xa7 sidebar.team.extension: \ud30c\uc77c \ud615\uc2dd\n\xa7 sidebar.team.tasks: \uc791\uc5c5 \ubaa9\ub85d\n\xa7 sidebar.team.release: \ubc1c\ub9e4 \ubaa9\ub85d\n\xa7 sidebar.team.hours: \uc77c\uc815\n\xa7 sidebar.team.commits: \ubaa8\ub4e0 \ub313\uae00\n\xa7 sidebar.team.changes: \ubaa8\ub4e0 \ubcc0\uacbd \uc0ac\ud56d\n\xa7 sidebar.team.words: \uc778\uae30\uc788\ub294 \ub2e8\uc5b4\n\xa7 sidebar.team.building: \ud034\uc988\n\xa7 sidebar.team.refactor: \ub9ac\ud329\ud1a0\ub9c1\n\xa7 sidebar.team.company: \ud68c\uc0ac\n\xa7 sidebar.team.department: Departments\n\xa7 sidebar.team.country: \uc704\uce58\n\xa7 sidebar.team.settings: \uc124\uc815\n\xa7 sidebar.person.total: \uc77c\ubc18 \uc815\ubcf4\n\xa7 sidebar.person.money: \uc791\uc5c5 \ube44\uc6a9\n\xa7 sidebar.person.speed: \uc18d\ub3c4\n\xa7 sidebar.person.day: \ub0ae\uc5d0\n\xa7 sidebar.person.week: \uc8fc\ubcc4\n\xa7 sidebar.person.month: \uc6d4\ubcc4\n\xa7 sidebar.person.tasks: \uc791\uc5c5 \ubaa9\ub85d\n\xa7 sidebar.person.hours: \uc77c\uc815\n\xa7 sidebar.person.commits: \ubaa8\ub4e0 \ucee4\ubc0b\n\xa7 sidebar.person.changes: \ubaa8\ub4e0 \ubcc0\uacbd \uc0ac\ud56d\n\xa7 sidebar.person.words: \uc778\uae30\uc788\ub294 \ub2e8\uc5b4\n\xa7 sidebar.person.settings: \uc124\uc815\n",'\n\xa7 recommendations.modal.cancel: \ub2eb\uae30\n\xa7 recommendations.modal.open: \ub354 \uc0c1\uc138\ud55c\n\xa7 recommendations.title\n\uad8c\uc7a5 \uc0ac\ud56d \ubc0f \uc0ac\uc2e4\n\n\xa7 recommendations.timestamp.firstCommit.description\n\uccab \ubc88\uc9f8 \ucee4\ubc0b\uc744 \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4.\n\n\uc694\uc77c:$1\n\n\xa7 recommendations.timestamp.lastCommit.description\n\ub9c8\uc9c0\ub9c9 \ucee4\ubc0b\n\n\uc694\uc77c:$1\n\n\xa7 recommendations.title$1 \uc77c\n\xa7 recommendations.timestamp.firstCommit.description\uccab \ubc88\uc9f8 \ucee4\ubc0b\ubd80\ud130 \ub9c8\uc9c0\ub9c9 \ucee4\ubc0b\uae4c\uc9c0(\uc8fc\ub9d0 \ubc0f \uacf5\ud734\uc77c \ud3ec\ud568).\n\xa7 recommendations.timestamp.lastCommit.description\uc8fc\ub9d0,\ud734\uac00 \ubc0f \uacf5\ud734\uc77c\uc744 \uace0\ub824\ud574\ub3c4 \ucee4\ubc0b\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.\n\xa7 recommendations.timestamp.weekendDays.description\n\uc8fc\ub9d0 \uc77c\uc790\ub9ac\n\n#\uc65c \ub098\uc05c\uac00:\n- \uace0\uac1d\uc740 \ud734\uc77c\uc5d0 \uc77c\uc744 \uc704\ud574 \ub450 \ubc30 \uac00\uaca9\uc744 \uc9c0\ubd88\ud55c\ub2e4;\n- \uc9c1\uc6d0\uc774 \ub354 \ube68\ub9ac \uc18c\ubaa8\ub429\ub2c8\ub2e4.;\n\n\xa7 recommendations.timestamp.common.title: \uc815\uae30\uc801 \uc778 \uc7ac\ud65c\uc6a9\n\xa7 recommendations.timestamp.allDays.description: \uc815\uc720\uc18c\uac00 \uc788\uc5b4\uc694\n\xa7 recommendations.timestamp.weekendWord.description\n\ud504\ub85c\uc81d\ud2b8 \uad00\ub9ac\uc790,\ubd84\uc11d\uac00 \ubc0f \uac74\ucd95\uac00\ub97c \ubcc0\uacbd\ud560 \uac00\uce58\uac00 \uc788\uc2b5\ub2c8\ub2e4.\n\n#\uc65c \ub098\uc05c\uac00:\n- \uace0\uac1d\uc740 \ud734\uc77c\uc5d0 \uc77c\uc744 \uc704\ud574 \ub450 \ubc30 \uac00\uaca9\uc744 \uc9c0\ubd88\ud55c\ub2e4;\n- \uc81c\ud488\uc758 \ud488\uc9c8\uc740,\uc6d0\uce59\uc801\uc73c\ub85c,\ub0ae\uc740 \uac83\uc73c\ub85c \ud310\uba85;\n- \uc9c1\uc6d0 \uc911 \uc77c\ubd80\ub294 \uc885\ub8cc;\n- \ub7ec\uc2dc\ub85c \uc778\ud574 \uc0c8\ub85c\uc6b4 \uc624\ub958\uac00 \ub098\ud0c0\ub0a9\ub2c8\ub2e4;\n\n#\ub300\ubd80\ubd84:\n- \uc6b0\ub9ac\ub294 \ucc98\uc74c\ubd80\ud130 \ud0c0\uc774\ubc0d\uc744 \uc798\ubabb \ud310\ub2e8\ud588\uc2b5\ub2c8\ub2e4;\n- \uae30\uc220 \uc0ac\uc591\uc774 \uc5c6\uc2b5\ub2c8\ub2e4;\n- \uc57d\ud55c \ubd84\uc11d;\n- \uc57d\ud55c \uc544\ud0a4\ud14d\ucc98(\uac74\ucd95\uac00\ub294 \uace0\uc6a9\ub418\uc9c0 \uc54a\uc558\uc73c\uba70 \ud300\uc740 \uc911\uac04 \uac1c\ubc1c\uc790\ub85c \uad6c\uc131\ub428);\n- \uba3c\uc800 \ucf54\ub4dc\ub97c \uc791\uc131\ud55c \ub2e4\uc74c \ub514\uc790\uc778\uc744 \uc2dc\uc791\ud588\uc2b5\ub2c8\ub2e4.;\n- \uc624\ub958\ub97c \uc774\ud574\ud558\ub294 \uc815\uc0c1\uc801\uc778 \ud504\ub85c\uc138\uc2a4\uac00 \uc5c6\uc2b5\ub2c8\ub2e4;\n\n\xa7 recommendations.timestamp.lossesDays.description: \ubcf4\ud1b5 \uacfc\ub85c\ud558\uc9c0 \uc54a\uace0\n\xa7 recommendations.timestamp.neverWeekendWord.description\n\uadf8\ub7ec\ub098 \ub54c\ub54c\ub85c \uadf8\ub4e4\uc740 \uadf8\ub807\uc2b5\ub2c8\ub2e4.\n\n#\uc65c \ub098\uc05c\uac00:\n- \uace0\uac1d\uc740 \ud734\uc77c\uc5d0 \uc77c\uc744 \uc704\ud574 \ub450 \ubc30 \uac00\uaca9\uc744 \uc9c0\ubd88\ud55c\ub2e4;\n- \uc9c1\uc6d0\uc774 \ub354 \ube68\ub9ac \uc18c\ubaa8\ub429\ub2c8\ub2e4.;\n\n\xa7 recommendations.scope.parallelism.not.title\n\ubcd1\ub82c \uc791\uc5c5\uc774 \uc5c6\uc2b5\ub2c8\ub2e4\n\n\xa7 recommendations.scope.parallelism.not.description\n\ubaa8\ub4e0 \uae30\ub2a5\uc740 \ud55c \ubc88\uc5d0 \ud55c \uc0ac\ub78c\uc774 \ub9cc\ub4ed\ub2c8\ub2e4.\n\n#\uacc4\uc0b0 \ubc29\ubc95:\n- \ub0a8\uc790 \uc77c \uac01 \uae30\ub2a5\uc5d0 \ub300\ud55c \uc2e4\uc81c \uc77c\ub85c \uad6c\ubd84\ub429\ub2c8\ub2e4;\n- \uc0b0\uc220 \ud3c9\uade0 \ucc3e\uae30;\n- \uacb0\uacfc\uac00 1.3 \ubcf4\ub2e4 \uc791\uc740 \uacbd\uc6b0,\uc6b0\ub9ac\ub294 \uc77c\ubc18\uc801\uc73c\ub85c \ub300\ubd80\ubd84\uc758 \uae30\ub2a5\uc758 \ud504\ub808\uc784 \uc6cc\ud06c \ub0b4\uc5d0\uc11c \ubcd1\ub82c \uc791\uc5c5\uc774 \uc5c6\ub2e4\uace0 \uc0dd\uac01\ud569\ub2c8\ub2e4;\n\n#\uc65c \ub098\uc05c\uac00:\n- \ubc84\uc2a4 \uc694\uc778 \uc99d\uac00;\n- \uc9c1\uc6d0\uc740 \ub354 \ub290\ub9ac\uac8c \ubc1c\uc804\ud569\ub2c8\ub2e4;\n- \uadf8\uac83\uc740 \uc9c8\uc801\uc73c\ub85c \uc9c1\uc6d0\uc758 \uc791\uc5c5\uc744 \ud655\uc778\ud558\uae30 \uc5b4\ub835\ub2e4;\n\n#\uc65c \uc88b\uc740\uac00:\n- \uc8fc\uc81c \uc601\uc5ed\uc5d0 \ub9e4\uc6b0 \uae4a\uc774 \ubab0\uc785\ud558\uace0 \ub354 \ub098\uc740 \uc194\ub8e8\uc158\uc744 \uc81c\uacf5 \ud560 \uc218\uc788\ub294 \uc804\ubb38\uac00\uac00 \uc788\uc2b5\ub2c8\ub2e4;\n- \ubcd1\ud569 \ucda9\ub3cc\uc774 \uc5c6\uc744 \uac00\ub2a5\uc131\uc774 \ud07d\ub2c8\ub2e4;\n- \uc774 \ud504\ub85c\uc81d\ud2b8\ub294 \uc11c\ub85c \ub2e4\ub978 \ubc29\ud5a5\uc73c\ub85c \ubcd1\ub82c\ub85c \ub9e4\uc6b0 \ube60\ub974\uac8c \ubc1c\uc804 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4;\n\n\xa7 recommendations.scope.parallelism.has.title\n\ubcd1\ub82c \uc791\uc5c5\uc758 \uc77c\ubd80\n\n\xa7 recommendations.scope.parallelism.has.description\n\ub54c\ub85c\ub294 \uc5ec\ub7ec \uc0ac\ub78c\uc774 \ub3d9\uc2dc\uc5d0 \uae30\ub2a5\uc744 \ub9cc\ub4ed\ub2c8\ub2e4.\n\n#\uacc4\uc0b0 \ubc29\ubc95:\n- \ub0a8\uc790 \uc77c \uac01 \uae30\ub2a5\uc5d0 \ub300\ud55c \uc2e4\uc81c \uc77c\ub85c \uad6c\ubd84\ub429\ub2c8\ub2e4;\n- \uc0b0\uc220 \ud3c9\uade0 \ucc3e\uae30;\n- \uacb0\uacfc\uac00 1.3 \uc5d0\uc11c 2.0 \uc778 \uacbd\uc6b0,\uc6b0\ub9ac\ub294 \ub2e4\ub978 \uae30\ub2a5 \ub0b4\uc5d0\uc11c \uc77c\ubd80 \uc791\uc5c5\uc774 \ub54c\ub54c\ub85c \ubcd1\ub82c\ub85c \uc218\ud589\ub41c\ub2e4\uace0 \uc0dd\uac01\ud569\ub2c8\ub2e4;\n\n\n\xa7 recommendations.scope.parallelism.every.title\n\ubcd1\ub82c \uc791\uc5c5\n\n\xa7 recommendations.scope.parallelism.every.description\n\ubaa8\ub4e0 \uae30\ub2a5\uc740 \ud55c \ubc88\uc5d0 \uc5ec\ub7ec \uc0ac\ub78c\uc5d0 \uc758\ud574 \uc774\ub8e8\uc5b4\uc9d1\ub2c8\ub2e4\n\n#\uacc4\uc0b0 \ubc29\ubc95:\n- \ub0a8\uc790 \uc77c \uac01 \uae30\ub2a5\uc5d0 \ub300\ud55c \uc2e4\uc81c \uc77c\ub85c \uad6c\ubd84\ub429\ub2c8\ub2e4;\n- \uc0b0\uc220 \ud3c9\uade0 \ucc3e\uae30;\n- \uacb0\uacfc\uac00 \ub450 \uac1c \uc774\uc0c1\uc778 \uacbd\uc6b0,\uc6b0\ub9ac\ub294 \uc11c\ub85c \ub2e4\ub978 \uae30\ub2a5\uc758 \ud504\ub808\uc784 \uc6cc\ud06c \ub0b4\uc5d0\uc11c \ub300\ubd80\ubd84\uc758 \uc791\uc5c5\uc740 \uc77c\ubc18\uc801\uc73c\ub85c \ubcd1\ub82c\ub85c \uc218\ud589\ud55c\ub2e4\uace0 \uc0dd\uac01\ud569\ub2c8\ub2e4;\n\n\n\xa7 recommendations.scope.money\n\uc774 \uae08\uc561\uc740\uc774 \ud504\ub85c\uc81d\ud2b8\uc758 \uc791\uc5c5\uc744 \ud3c9\uac00\ud558\ub294 \ub370 \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n\n#\uacc4\uc0b0 \ubc29\ubc95:\n- \uac1c\ubc1c\uc5d0 \uc18c\uc694\ub418\ub294 \uc0ac\ub78c \uc77c \uac1c\ubc1c\uc790\uc758 \uac1c\ubcc4 \uae09\uc5ec\ub97c \uacf1\ud55c;\n\n\ub2f9\uc2e0\uc740 \uc124\uc815 \uc139\uc158\uc5d0\uc11c,\ubcf4\ub2e4 \uc815\ud655\ud55c \uae08\uc561,\uac01 \uac1c\ubc1c\uc790\uc758 \uae09\uc5ec\ub97c \ubcc0\uacbd\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4\n\n#\ub9ce\uc774 \ub610\ub294 \uc870\uae08?\n\uc774 \uc9c8\ubb38\uc5d0 \ub300\ub2f5\ud558\ub824\uba74 \ub2e4\uc74c\uacfc \uac19\uc774 \ub300\ub2f5\ud574\uc57c\ud569\ub2c8\ub2e4:\n- \uc774 \ub3c8\uc744 \uc704\ud574 \uae30\uc131\ud488 \uc194\ub8e8\uc158\uc744 \uad6c\uc785\ud560 \uc218 \uc788\uc2b5\ub2c8\uae4c?\n- \uc774 \ub3c8\uc744 \uc704\ud574 \ub354 \ub098\uc740 \uc81c\ud488\uc744 \ub9cc\ub4e4 \uc218 \uc788\uc2b5\ub2c8\uae4c?\n\n\ub450 \uc9c8\ubb38\uc5d0 \ub300\ud55c \ub300\ub2f5\uc774"\uc608"\ub77c\uba74,\uc544\ub9c8\ub3c4 \ucc98\uc74c\ubd80\ud130 \uac1c\ubc1c\uc740 \uadf8\uac83\uc5d0 \uc18c\ube44 \ub41c \ub3c8\uc758 \uac00\uce58\uac00 \uc5c6\uc5c8\uc744 \uac83\uc785\ub2c8\ub2e4.\n \n\xa7 recommendations.scope.bus.everyHasOne.title\n\ubc84\uc2a4 \uc778\uc218=1\n\n\xa7 recommendations.scope.bus.everyHasOne.description\n\ud55c \uc0ac\ub78c\uc774 \ub300\ubd80\ubd84\uc758 \uae30\ub2a5\uc5d0 \ubab0\uc785\ud569\ub2c8\ub2e4.\n\uc6b0\ub9ac\ub294 \uc0ac\ub78c\ub4e4\uc744 \ubc14\uafd4\uc57c \ud569\ub2c8\ub2e4.\n\n#\uc65c \ub098\uc05c\uac00:\n- \uc9c1\uc6d0\uc774 \ub5a0\ub098\uba74 \uc791\uc5c5\uc744 \uacc4\uc18d\ud558\uae30\uac00 \uc5b4\ub824\uc6b8 \uac83\uc785\ub2c8\ub2e4;\n- \uadf8\uac83\uc740 \uadf8\uac83\uc758 \ucf54\ub4dc\uc758 \ud488\uc9c8\uc744 \uc81c\uc5b4 \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4;\n\n#\uc120\ud0dd\uc740 \uc5b4\ub5bb\uac8c \uc774\ub8e8\uc5b4 \uc9d1\ub2c8\uae4c:\n- \uae30\ub2a5\uc758 \ucee4\ubc0b \uc911 80%\uc774\uc0c1\uc774 \ud55c \uc0ac\ub78c\uc774 \uc218\ud589\ud569\ub2c8\ub2e4.;\n- \uc774 \ud504\ub85c\uc81d\ud2b8\ub294 \uc774\ub7ec\ud55c \uae30\ub2a5\uc758 60%\uc774\uc0c1\uc744 \uac00\uc9c0\uace0 \uc788\uc2b5\ub2c8\ub2e4;\n\n\xa7 recommendations.scope.bus.oneMaintainer\n\ud55c \uc0ac\ub78c\uc774 \uae30\ub2a5\uc5d0 \ubab0\uc785.\n\n#\uc65c \ub098\uc05c\uac00:\n- \uadf8\uac00 \uc0ac\uc784\ud558\uba74 \uac1c\ubc1c\uc744 \uacc4\uc18d\ud558\uae30\uac00 \uc5b4\ub824\uc6b8 \uac83\uc785\ub2c8\ub2e4;\n- \ucf54\ub4dc \uac80\ud1a0 \ud488\uc9c8 \uc800\ud558;\n- \ud544\uc694\ud55c \uacbd\uc6b0 \uac1c\ubc1c\uc744 \ubcd1\ub82c\ud654\ud558\uae30\uac00 \uc5b4\ub835\uc2b5\ub2c8\ub2e4.;\n\n#\uc120\ud0dd\uc740 \uc5b4\ub5bb\uac8c \uc774\ub8e8\uc5b4 \uc9d1\ub2c8\uae4c:\n- \uc774 \uae30\ub2a5\uc758 \ucee4\ubc0b \uc911 80%\uc774\uc0c1\uc774 \ud55c \uc0ac\ub78c\uc774 \uc218\ud589\ud588\uc2b5\ub2c8\ub2e4.;\n\n\xa7 recommendations.scope.types.process.title\n\ub098\uc05c \ud504\ub85c\uc138\uc2a4\n\n\xa7 recommendations.scope.types.process.description\n\ub300\ubd80\ubd84\uc758 \uae30\ub2a5\uc5d0\ub294 \ud55c \uac00\uc9c0 \uc720\ud615\uc758 \uc791\uc5c5\uc774 \ud3ec\ud568\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.\n\n\xa7 recommendations.scope.types.one\n\uae30\ub2a5\uc5d0\ub294 \ud55c \uac00\uc9c0 \uc720\ud615\uc758 \uc791\uc5c5\uc774 \ud3ec\ud568\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.\n\n\xa7 recommendations.scope.types.common\n\uac1c\ubc1c\uc790\uac00 \ucee4\ubc0b\uc5d0 \uc798\ubabb \uc11c\uba85\ud558\uac70\ub098 \uad00\ub9ac\uc790\uac00 \ub3d9\uc77c\ud55c \uc720\ud615\uc758 \uc791\uc5c5\uc744 \uc2dc\uc791\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n\n#\uc774\uac83\uc774 \uc911\uc694\ud55c \uc774\uc720:\n- \ub2e4\ub978 \ud300\uc5d0 \uc9c0\uc6d0\uc744 \uc774\uc804 \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4;\n- "\ubc15\uc2a4\ud615"\ubc84\uc804\uc744 \ucd9c\uc2dc\ud558\ub294 \uac83\uc740 \ubd88\uac00\ub2a5\ud569\ub2c8\ub2e4;\n- \ud2b9\uc815 \uac1c\ubc1c\uc790\uc5d0 \ub300\ud55c \uac15\ud55c \uc758\uc874\uc131;\n- \ub9ce\uc740 \uc624\ub958 \ubc0f \ucf54\ub4dc \ud488\uc9c8 \uc800\ud558;\n- \ubbf8\ub798\uc5d0 \uac1c\ubc1c \uac00\ub2a5\uc131\uc774 \ub454\ud654;\n\n#\ub9e4\ub2c8\uc800\uc758 \uc2e4\uc218\ub294 \ubb34\uc5c7\uc778\uac00:\n- \ub9cc"\uc791\uc5c5 \ub370\ubaa8"\uc758 \uc704\uce58\uc5d0\uc11c \uc81c\ud488\uc744 \uc0b4\ud3b4;\n\n#\ud574\uc57c \ud560 \uc77c:\n- \ud14c\uc2a4\ud2b8;\n- \uc624\ub958(\ud14c\uc2a4\ud2b8 \uacb0\uacfc\ub85c \uc2dd\ubcc4);\n- \ub9ac\ud329\ud1a0\ub9c1(\uc544\ud0a4\ud14d\ucc98\uac00 \ubcc0\uacbd \ub420 \uc218 \uc788\uae30 \ub54c\ubb38\uc5d0);\n- \ubb38\uc11c;\n- \uc2a4\ud0c0\uc77c \ud3b8\uc9d1(\ud3ec\ucee4\uc2a4 \uadf8\ub8f9 \uc124\ubb38 \uc870\uc0ac \uacb0\uacfc);\n\n\xa7 recommendations.scope.plan.title\n\uc7a5\uae30 \uacc4\ud68d \uad6c\ucd95\n\n\xa7 recommendations.scope.plan.description\n\uace0\ub824 \uc544\ud0a4\ud14d\ucc98\ub97c \ubcf5\uc6a9.\n\n\ub3d9\uc2dc\uc5d0,\uc774 \uacc4\ud68d\uc740 \ud55c \ubc88\uc5d0 \uac00\uc7a5 \uc5b4\ub824\uc6b4 \uc791\uc5c5\uc744 \uae30\ubc18\uc73c\ub85c\ud574\uc57c\ud569\ub2c8\ub2e4.\n\n#\uacc4\ud68d\uc758 \ubd80\uc871\uc774 \ub098\uc05c \uc774\uc720:\n- \uc9c1\uc6d0\uc740 \ud655\uc7a5 \ud3ec\uc778\ud2b8\ub97c \ub193\uc9c0 \uc54a\uace0 \ucd5c\uc18c\ud55c\uc758 \uc791\uc5c5 \ubc84\uc804\uc744 \ub9cc\ub4ed\ub2c8\ub2e4. \uadf8 \ud6c4 \ud655\uc7a5 \ubd88\uac00\ub2a5\ud55c \ucf54\ub4dc\uac00 \uc791\uc131\ub418\uc5b4 \ub2e4\uc74c \uae30\ub2a5\uc774 \ub290\ub824\uc9d1\ub2c8\ub2e4;\n\n#\ub9e4\ub2c8\uc800\uc758 \uc2e4\uc218\ub294 \ubb34\uc5c7\uc778\uac00:\n- \uadf8\ub294 \uc81c\ud488\uc774 \uc5b4\ub5bb\uac8c \ub354 \ubc1c\uc804 \ud560 \uac83\uc778\uc9c0 \uadf8\ub9ac\uace0 \uc5b4\ub5a4 \uc2dc\uc810\uc5d0\uc11c \uc131\uc7a5\uc774\uc788\uc744 \uac83\uc778\uc9c0\ub97c \ubcf4\uc5ec\uc8fc\uc9c0 \uc54a\uc558\ub2e4;\n\n#\uc5b4\ub5bb\uac8c \ud574\uc57c \ud558\ub294\uac00:\n- \uae00\ub85c\ubc8c \uc81c\ud488 \uac1c\ubc1c \uacc4\ud68d\uc774 \uc218\ub9bd\ub418\uace0 \uc788\uc2b5\ub2c8\ub2e4.;\n- \uae00\ub85c\ubc8c \uc544\ud0a4\ud14d\ucc98 \uac1c\ubc1c \uacc4\ud68d \uc791\uc131 \uc911(\uac1c\ubc1c\uc790 \ubc0f \ub514\ube44);\n- \uacc4\ud68d\uc758 \uc218\uc900\uc5d0\uc11c,\ub9ce\uc740 \uac83\uc744 \ubc14\uafc0 \uc218 \uc788\ub294 \uc21c\uac04\ub4e4\uc774 \uc989\uc2dc \ub17c\uc758\ub429\ub2c8\ub2e4.;\n\n\xa7 recommendations.scope.cost.title\n\uae30\ub2a5\uc5d0 \ub300\ud55c \ud22c\uc790 \ud3c9\uac00\n\n\xa7 recommendations.scope.cost.description\n\uc7a0\uc7ac\uc801 \uc778 \uc774\uc775\uc758 \uae08\uc561.\n\n\uac1c\ubc1c \ube44\uc6a9\uc774 \ub9ce\uc774 \ub4e4\uc9c0\ub9cc \uc218\uc775\uc744 \uac70\uc758 \uac00\uc838 \uc624\uc9c0 \uc54a\ub294 \uae30\ub2a5\uc740 \uc5f0\uae30\ud558\uac70\ub098 \ubaa8\ub450 \ucde8\uc18c \ud560 \uac00\uce58\uac00\uc788\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774\uac83\uc740 \ud504\ub85c\uc81d\ud2b8\ub97c \uc0c1\uc5c5\uc801\uc73c\ub85c \ub354 \uc131\uacf5\uc801\uc73c\ub85c \ub9cc\ub4e4 \uac83\uc785\ub2c8\ub2e4.\n\n\xa7 recommendations.timestamp.weekendDays.description\ub108\ubb34 \uc791\uc740 \ucf54\ub4dc:$1\n\xa7 recommendations.author.lotOfLazy.description\n\ub0b4\uac00 \ub2f9\uc2e0\uc744 \ud574\uace0\ud574\uc57c\ud569\ub2c8\uae4c?\n\n#\uad6c\uc131:\n- $1;\n\n#\uc790\uc2e0\uc758 \uc9c8\ubb38\uc5d0 \ub300\ub2f5:\n- \uadf8\ub294 \ud300 \ub9ac\ub354,\uac74\ucd95\uac00,\ubd84\uc11d\uac00\uc785\ub2c8\uae4c?\n- \uc774\uac83\uc774 \uadf8\uc758 \uc8fc\uc694 \ud504\ub85c\uc81d\ud2b8\uc785\ub2c8\uae4c?\n- \uadf8\uac83\uc5d0 \uc5b4\ub5a4 \uc885\uc18d\uc131\uc774 \uc788\uc2b5\ub2c8\uae4c?\n\n#\uc65c \uace0\uccd0\uc57c\uc9c0\n\uac1c\ubc1c\uc790\uc758 \ucd1d \ube44\uc6a9\uc740 \uc774\ubbf8 \uadf8\uc758 \uc791\uc5c5\uc5d0\uc11c \uc5bb\uc740 \uc774\uc775 \uc774\uc0c1\uc785\ub2c8\ub2e4.\n\uc6b0\ub9ac\uac00 \uadf8\uc758 \uc77c\uc5d0 \uac1d\uad00\uc801\uc778 \uc7a5\uc560\ubb3c\uc774 \uc5c6\ub2e4\uace0 \uc0dd\uac01\ud55c\ub2e4\uba74,\uadf8 \uc0ac\ub78c\uc740 \uc804\ud600 \uc77c\ud558\uae30\ub97c \uc6d0\ud558\uc9c0 \uc54a\uac70\ub098 \ub3d9\uc2dc\uc5d0 \ub450 \uac1c\uc758 \ud504\ub85c\uc81d\ud2b8\ub97c \uc218\ud589\ud569\ub2c8\ub2e4.\n\uc0c8\ub85c\uc6b4 \uc9c1\uc6d0\uc5d0 \uc758\ud55c \ud574\uace0 \ubc0f \uad50\uccb4\ub294 \uc77c\ubc18\uc801\uc778 \ud1b5\uacc4\uc758 \uad00\uc810\uc5d0\uc11c \uc815\ub2f9\ud654 \ub41c \uac83\ucc98\ub7fc \ubcf4\uc785\ub2c8\ub2e4.\n\n\xa7 recommendations.timestamp.regularWeekendWord.title: \uc791\uc740 \ucf54\ub4dc \uc791\uc131:$1\n\xa7 recommendations.author.manyLazy.description\n\uc6b0\ub9ac\ub294 \ud1b5\uc81c\ud574\uc57c \ud569\ub2c8\ub2e4.\n\n#\uad6c\uc131:\n- $1;\n\n#\uc120\ud0dd\uc740 \uc5b4\ub5bb\uac8c \uc774\ub8e8\uc5b4 \uc9d1\ub2c8\uae4c:\n- \ud14c\uc2a4\ud2b8 \uc0d8\ud50c\uc5d0\uc11c \uc88b\uc740 \ud504\ub85c\uadf8\ub798\uba38\ub294 80%\uc774\uc0c1\uc758 \uc2dc\uac04\uc744 \ucf54\ub4dc\ub97c \uc791\uc131\ud569\ub2c8\ub2e4;\n- \uc774 \uacbd\uc6b0 \ud45c\uc2dc\uae30\ub294 60%\uc5d0\uc11c 80%\uc0ac\uc774\uc785\ub2c8\ub2e4%;\n\n#\uc81c\uc5b4 \ubc29\ubc95:\n- 1 \ub85c \ubd84\ud560 \uc791\uc5c5..2 \uc77c;\n- \ub9e4\uc77c \uc0c1\ud0dc\ub97c \uc694\uccad;\n- \uc791\uc5c5\uc774 \uc798 \uc608\uc57d \ubc0f \uac1c\ubc1c\uc744 \uc2dc\uc791\ud560 \uc900\ube44\uac00\ub418\uc5b4 \uc788\ub294\uc9c0 \ud655\uc778;\n- \uc2e4\uc81c \uc18d\ub3c4\ub97c \ud655\uc778\ud558\uae30 \uc704\ud574 \uc30d \ud504\ub85c\uadf8\ub798\ubc0d\uc744 \uc815\ub82c;\n\n\xa7 recommendations.author.oneTypeMans\n\uc720\ud615\ubcc4\ub85c \ub108\ubb34 \ub2e8\uc870\ub85c\uc6b4 \uc791\uc5c5\uc744 \uac00\uc838\uc635\ub2c8\ub2e4. \uadf8\uac83\uc740 \ubc16\uc73c\ub85c \uad6c\uc6b8 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n\n#\uc911\uc694\ud55c \uc774\uc720:\n- \uc9c1\uc6d0\uc774 \ud0c0 \ubc84\ub9b0 \uacbd\uc6b0 \uc791\uc5c5 \uc18d\ub3c4\uac00 \uac10\uc18c\ud569\ub2c8\ub2e4;\n- \uc804\ubb38\uc801\uc778 \uc131\uc7a5\uc774 \ub290\ub824\uc9d1\ub2c8\ub2e4.;\n- \ud574\uace0 \ud655\ub960\uc774 \uc99d\uac00\ud569\ub2c8\ub2e4;\n\n#\uc120\ud0dd\uc740 \uc5b4\ub5bb\uac8c \uc774\ub8e8\uc5b4 \uc9d1\ub2c8\uae4c:\n- \uac01 \ucee4\ubc0b\uc5d0 \ub300\ud574 \uc791\uc5c5 \uc720\ud615\uc774 \uacb0\uc815\ub429\ub2c8\ub2e4;\n- \uc791\uc5c5\uc758 70%\uc774\uc0c1\uc774 \uac19\uc740 \uc720\ud615\uc758 \uacbd\uc6b0,\uadf8 \uc0ac\ub78c\uc740 \uac19\uc740 \uc77c\uc744\ud558\uace0\uc788\ub2e4;\n\n\xa7 recommendations.timestamp.sometimeWeekendWord.title: $1 \uc791\ub3d9\n\xa7 recommendations.author.workToday.description\n\ud604\uc7ac \ud504\ub85c\uc81d\ud2b8\ub97c \uc9c4\ud589\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4.\n\n#\uad6c\uc131:\n- $1;\n\n#\uc65c \uadf8\ub4e4\uc774 \uadf8\ub4e4\uc778\uac00:\n- 50 \uc791\uc5c5 \uc77c \uc774\uc0c1%;\n- \uc9c0\ub09c 30 \uc77c \ub3d9\uc548 \uc77c\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4.;\n\n\xa7 recommendations.timestamp.weekendWord.description$1 \uc885\ub8cc\n\xa7 recommendations.author.dismissed.description\n\ub610\ub294 \uadf8\uac83\uc740 \uc9e7\uc740 \uc2dc\uac04 \ub3d9\uc548 \uc77c\ud588\ub2e4.\n\n#\uad6c\uc131:\n- $1;\n\n#\uc65c \uadf8\ub4e4\uc774 \uadf8\ub4e4\uc778\uac00:\n- \uadf8\ub4e4\uc740 \uc815\uc0c1\uc801\uc778 \ub9ac\ub4ec\uc73c\ub85c \uc77c\ud588\uc2b5\ub2c8\ub2e4(\ubd84\uba85\ud788 \uc774\uac83\uc740 \uc8fc\uc694 \uc800\uc7a5\uc18c\uc785\ub2c8\ub2e4);\n- \uc9c0\ub09c \ub2ec\uc5d0 \ucee4\ubc0b\uc774 \ud558\ub098\ub3c4 \uc5c6\uc5c8\uc2b5\ub2c8\ub2e4.;\n- \ud734\uac00\ub294 \uc77c\ubc18\uc801\uc73c\ub85c 14 \uc77c(\uadf8\ub4e4\uc758 \ubd80\uc7ac\ub294 \ud734\uac00\ucc98\ub7fc \ubcf4\uc774\uc9c0 \uc54a\ub294\ub2e4);\n\n\xa7 recommendations.timestamp.neverWeekendWord.title: $1 \ub3c4\uc6c0\n\xa7 recommendations.author.staff.description\n\ubb34\uc5b8\uac00\ub97c \uc800\uc9c0\ub978 \ub2e4\ub978 \uc804\ubb38 \ubd84\uc57c\uc758 \uc0ac\ub78c\ub4e4.\n\n#\uad6c\uc131:\n- $1;\n\n#\uc65c \uadf8\ub4e4\uc774 \uadf8\ub4e4\uc778\uac00:\n- \uc774 \uc624\ud508 \uc18c\uc2a4 \ud504\ub85c\uc81d\ud2b8\uac00 \uc544\ub2d9\ub2c8\ub2e4;\n- \uc791\uc5c5 \uc77c \uc804\uccb4\uc758 15%\ubbf8\ub9cc;\n- \uadf8\ub4e4\uc740 \uac70\uc758 \ub3d9\uc77c\ud55c \ud30c\uc77c\uc744 \ubcc0\uacbd\ud569\ub2c8\ub2e4;\n\n\xa7 recommendations.author.projectType.openSource.title\n\uc5f4\ub9b0 \ud504\ub85c\uc81d\ud2b8\n\n\xa7 recommendations.author.projectType.openSource.description\n\uadf8\ub4e4\uc740 \uc77c\uc8fc\uc77c\uc5d0 5 \uc77c \uc5ec\uae30\uc5d0\uc11c \uc77c\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.\n\n\uc774 \ud504\ub85c\uc81d\ud2b8\ub294 \ud3d0\uc1c4 \ub420 \uc218 \uc788\uc2b5\ub2c8\ub2e4,\uadf8\uac83\uc740 \uc791\uc5c5\uc758 \uc18d\ub3c4\ub294 \uc77c\ubc18\uc801\uc73c\ub85c \uae30\uc2a4 \ud5c8\ube0c\uc5d0 \uc624\ud508 \ub77c\uc774\ube0c\ub7ec\ub9ac\uc785\ub2c8\ub2e4 \ub2e8\uc9c0.\n\n#\ud3c9\uac00 \ubc29\ubc95:\n- \ud1b5\uacc4\ub294 \ubaa8\ub4e0 \ud65c\uc131 \uac1c\ubc1c\uc790\uc5d0 \ub300\ud55c \ucd2c\uc601;\n- \ud3c9\uade0 \uc791\uc5c5 \uc77c\uc218 \ubc0f \ucee4\ubc0b\uc5c6\uc774 \uacc4\uc0b0\ub429\ub2c8\ub2e4.;\n- \uc624\ud508 \uc18c\uc2a4 \ub77c\uc774\ube0c\ub7ec\ub9ac\ub294 \uc77c\ubc18\uc801\uc73c\ub85c \ucd5c\ub300 15 \uac1c\uc785\ub2c8\ub2e4..20 \uc791\uc5c5 \uc77c%;\n\n#\uacb0\uacfc\n\uc791\uc5c5\uc774 \uc77c\uc815\ud558\uc9c0 \uc54a\uc740 \ud504\ub85c\uc81d\ud2b8\uc758 \uacbd\uc6b0 \ub9ce\uc740 \uc9c0\ud45c\uc5d0\ub294 \uc758\ubbf8\uac00 \uc5c6\uc2b5\ub2c8\ub2e4. \ub530\ub77c\uc11c \ucee4\ubc0b,\uc18d\ub3c4 \ub4f1\uc774\uc5c6\ub294 \ud45c\uc2dc\uae30 \uc228\uaca8\uc9c8 \uac83\uc774\ub2e4.\n\n\uc77c\ubc18\uc801\uc73c\ub85c \uc774\ub7ec\ud55c \ud504\ub85c\uc81d\ud2b8\ub294 \ud3d0\uc1c4 \ubc84\uc804 \uac1c\ubc1c\uc744 \uc2dc\uc791\ud558\uae30 \uc804\uc5d0 \ud3c9\uac00\ub429\ub2c8\ub2e4. \uc774 \uacbd\uc6b0 \uac00\uc7a5 \ud765\ubbf8\ub85c\uc6b4 \uc9c0\ud45c\ub294 \uac00\ub2a5\ud55c \ube44\uc6a9\uacfc \ucd1d \uac1c\ubc1c \uc2dc\uac04\uc785\ub2c8\ub2e4.\n\n\n\xa7 recommendations.author.projectType.easy.title\n\uc57d\ud55c \ub85c\ub529\n\n\xa7 recommendations.author.projectType.easy.description\n\ucee4\ubc0b\uc5c6\uc774 \ub108\ubb34 \ub9ce\uc740 \uc77c.\n\n\ud300\uc774 \ucf54\ub4dc\ub97c \uc791\uc131\ud558\uc9c0 \uc54a\ub294 \uc774\uc720\ub97c \uc774\ud574\ud574\uc57c \ud569\ub2c8\ub2e4.\n\n#\ud3c9\uac00 \ubc29\ubc95:\n- \ud1b5\uacc4\ub294 \ubaa8\ub4e0 \ud65c\uc131 \uac1c\ubc1c\uc790\uc5d0 \ub300\ud55c \ucd2c\uc601;\n- \ud3c9\uade0 \uc791\uc5c5 \uc77c\uc218 \ubc0f \ucee4\ubc0b\uc5c6\uc774 \uacc4\uc0b0\ub429\ub2c8\ub2e4.;\n- \ucee4\ubc0b \uc5c6\ub294 \ube44\uc728\uc774 5%\uc5d0\uc11c 20%\uc0ac\uc774\uc778 \uacbd\uc6b0 \ub85c\ub529\uc774 \uc57d\ud55c \uac83\uc73c\ub85c \uac04\uc8fc\ub429\ub2c8\ub2e4%;\n\n#\uac00\ub2a5\ud55c \uc774\uc720:\n- \uc2e4\uc81c\ub85c \uc791\uc5c5\uc774 \uc5c6\uc2b5\ub2c8\ub2e4;\n- \uc791\uc5c5\uc774 \uc788\uc9c0\ub9cc \ud604\uc7ac \uc544\ud0a4\ud14d\ucc98\uc5d0 \uc798 \ub9de\uc2b5\ub2c8\ub2e4;\n- \uac1c\ubc1c\uc790\ub294 \ud68c\uc758\uc5d0 \uc758\ud574 \uc0b0\ub9cc;\n- \ud300\uc774 \uc791\ub3d9\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4;\n\n#\uc194\ub8e8\uc158 \uc635\uc158:\n- \ud300\uacfc \ud568\uaed8 \ubb38\uc81c\ub97c \ub17c\uc758;\n- \ud558\ub098 \ub610\ub294 \ub450 \uac1c\uc758 \uc791\uc5c5\uc744 \ud558\ub8e8\uc5d0 \uc644\ub8cc \ud560 \uc218 \uc788\ub3c4\ub85d \uc791\uc5c5\uc758 \uc138\ubd84\uc131\uc744 \uc904\uc77c \uc218 \uc788\uc2b5\ub2c8\ub2e4;\n- \uc0c1\ud0dc\uc5d0 \uc758\ud574 \uc791\uc5c5\uc758 \uc9c4\ud589 \uc0c1\ud669\uc744 \ud655\uc778\ud558\uae30 \uc704\ud574 \ub9e4\uc77c \ud68c\uc758\ub97c \uc785\ub825;\n- \uac1c\ubc1c\uc790\uac00 \ub354 \ube68\ub9ac \uc791\uc5c5 \ud560 \uc218 \uc788\ub294\uc9c0 \ud655\uc778\ud558\uae30 \uc704\ud574 \uc30d \ud504\ub85c\uadf8\ub798\ubc0d \uc138\uc158\uc744 \uc815\ub82c;\n\n\xa7 recommendations.author.manager.title\n\ub9c8\uac10\uc77c \uc124\uc815\n\n\xa7 recommendations.author.manager.description\n\ubaa8\ub4e0 \uc791\uc5c5\uc5d0\ub294 \uba85\ud655\ud55c \ub9c8\uac10\uc77c\uc774 \uc788\uc5b4\uc57c\ud569\ub2c8\ub2e4.\n \n\uc774\ub97c \ud1b5\ud574 \uba70\uce60 \ub610\ub294 \uba87 \uc8fc \ub3d9\uc548 \uc2e4\ud589\uc744 \uc9c0\uc5f0\uc2dc\ud0a4\uc9c0 \uc54a\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n\n#\ud655\uc778\ud560 \uac00\uce58\uac00 \uc788\ub294 \uc9c0\ud45c:\n- \uc9c1\uc6d0\uc774 \uc791\uc5c5\uc5d0 \uc18c\ube44\ud558\ub294 \uc77c \uc218;\n- \ud64d\ubcf4\uc758 \uc8fc\uc785\uc744 \uae30\ub2e4\ub9ac\ub294 \uc77c \uc218(\ud64d\ubcf4 \ud1b5\uacc4 \ud398\uc774\uc9c0);\n\n\xa7 recommendations.author.shorTalk.title\n\ub9e4\uc77c \ud68c\uc758 \uac1c\ucd5c\n\n\xa7 recommendations.author.shorTalk.description\n\uadf8\ub4e4\uc740 \ub2f9\uc2e0\uc774 \ud504\ub85c\uc81d\ud2b8\ub97c \ucd5c\uc2e0 \uc0c1\ud0dc\ub85c \uc720\uc9c0\ud558\ub294 \ub370 \ub3c4\uc6c0\uc774\ub429\ub2c8\ub2e4.\n \n\uad00\uacc4\uc5c6\ub294 \uc8fc\uc81c\uc5d0 \uc790\uc2e0\uc744 \uc0b0\ub9cc\ud558\uac8c\ud558\uc5ec \uadf8\ub4e4\uc744 \uc2a4\ud2b8\ub808\uce6d\ud558\uc9c0 \ub9c8\uc2ed\uc2dc\uc624.\n\n#\uc9c1\uc6d0\uc740 \uc5b4\ub5a4 \uc9c8\ubb38\uc5d0 \ub300\ub2f5\ud574\uc57c\ud569\ub2c8\uae4c?:\n- \ubb34\uc2a8 \uc77c\uc774 \uc788\uc5c8\ub294\uc9c0;\n- \ubb34\uc5c7\uc744 \ud560 \uac83\uc778\uac00;\n- \uc5b4\ub5a4 \ubb38\uc81c\uac00 \uc788\uc2b5\ub2c8\uae4c;\n\n#\ub9cc\uc57d \ub3c5\ubc31\uc744 \uc911\ub2e8\ud574\uc57c \ud55c\ub2e4\uba74:\n- \uadf8\ub4e4\uc740 \uc138\ubd80 \uc0ac\ud56d\uc5d0\uc11c \uc911\uc694\ud558\uc9c0 \uc54a\uc740 \uc791\uc740 \uc138\ubd80 \uc0ac\ud56d\uc744 \uc124\uba85\ud558\uae30 \uc2dc\uc791;\n- \uadf8\ub4e4\uc740 \uc6d0\ub798 \uacc4\ud68d\uc5d0\uc11c \uba40\ub9ac \ub300\ud654\ub97c;\n\n#\uc65c \uc911\uc694\ud55c\uac00:\n\uc885\uc885 \uc544\ubb34\uac83\ub3c4 \ud558\uc9c0 \uc54a\ub294 \uc9c1\uc6d0\uc740 \ub2f5\uc744 \ud53c\ud558\ub824\uace0 \ud569\ub2c8\ub2e4. \uc774\ub97c \uc704\ud574 \uadf8\ub294 \uc790\uc2e0\uc758 \uc791\uc5c5\uc5d0 \ub300\ud55c \ubd88\ud544\uc694\ud55c \uc138\ubd80 \uc0ac\ud56d\uc744 \uc54c\ub824\uc90d\ub2c8\ub2e4. \uc774\uac83\uc740 \ub2f9\uc2e0\uc774 \ucc38\uac00\uc790\uc758 \uad00\uc2ec\uc744 \uc18c\uac15 \ubc0f \uc751\ub2f5 \uc2dc\uac04\uc744 \ub298\ub9b4 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc0ac\uc2e4 \uc544\ubb34 \uc77c\uc774 \uc5c6\uc5c8\ub2e4 \uc788\uc9c0\ub9cc,\uadf8\ub294 \ubb54\uac00 \ubc14\uc05c \uac83 \uac19\ub2e4.\n\n\xa7 recommendations.author.ipr.title\n\ud6c8\ub828 \uacc4\ud68d \uc218\ub9bd\n\n\xa7 recommendations.author.ipr.description\n\uac01 \uc9c1\uc6d0\uc744 \uc704\ud574.\n\n*\uac1c\ubcc4 \uad50\uc721 \uacc4\ud68d*\uc740 \ud2b9\uc815 \uc601\uc5ed\uc5d0\uc11c \uc0ac\ub78c\uc774 \ubc1c\uc804\ud558\ub294 \ub370 \ub3c4\uc6c0\uc774\ub418\ub294 \ubaa9\ud45c \ubc0f \ubaa9\ud45c \ubaa9\ub85d\uc785\ub2c8\ub2e4.\n\n#\uacc4\ud68d\uc744 \uc138\uc6b0\ub294 \ubc29\ubc95:\n- \uc5ed\ub7c9 \ub9e4\ud2b8\ub9ad\uc2a4 \ub9cc\ub4e4\uae30;\n- \uc9c0\uc2dd\uacfc \uacbd\ud5d8\uc774 \uac00\uc7a5 \uc801\uc740 \uc5ed\ub7c9 \uacb0\uc815;\n- \uc9c1\uc6d0\uc774 \uad00\uc2ec \uc788\ub294 \uc774\ub7ec\ud55c \uc5ed\ub7c9 \ud655\uc778;\n- 3 \uc744 \uc0dd\uac01\ud574 \ub0b4\uc138\uc694..\ubc18\ub144 \ub610\ub294 1 \ub144 \ub3d9\uc548 \uac01 \uc5ed\ub7c9 \ub0b4\uc5d0\uc11c 5 \uac00\uc9c0 \ubaa9\ud45c;\n- \ud55c \uac00\uc9c0 \ubaa9\ud45c\ub97c \ub2ec\uc131\ud558\uae30 \uc704\ud574 \ub9e4\ub2ec \ubb34\uc5b8\uac00\ub97c \uc2dc\ub3c4\ud558\uc2ed\uc2dc\uc624;\n- \uc774\ub7ec\ud55c \ubaa9\ud45c\ub97c \ub2ec\uc131\ud558\uae30\uc704\ud55c \uc77c\ubc18\uc801\uc778 \uacc4\ud68d\uc5d0 \ub300\ud574 \ub9e4\uc6d4 \uc0c1\uae30\uc2dc\ud0a4\uae30 \uc704\ud574;\n\n#\uad00\ub9ac\uc790\ub294 \uacc4\ud68d\uc774 \ud544\uc694\ud569\ub2c8\uae4c?\n\uc608,\uba38\ub9ac\ub294 \ub610\ud55c \uc790\uc2e0\uc744 \uc704\ud55c \uacc4\ud68d\uc744 \uc138\uc6cc\uc57c \ud569\ub2c8\ub2e4. \uc0c1\uae09\uc790\uac00 \uc5c6\ub2e4\uba74,\uadf8\ub294 \uc790\uc2e0\uc744 \ud655\uc778\ud574\uc57c \ud569\ub2c8\ub2e4.\n\n#\uc911\uc694\ud55c \uc774\uc720:\n- \uc9c1\uc6d0\uc740 \ud68c\uc0ac\uc5d0 \ub354 \ucda9\uc131 \ub420;\n- \uac19\uc740 \ub3c8\uc744 \uc704\ud574,\ub2f9\uc2e0\uc740 \ub354 \ub9ce\uc740 \uc790\uaca9\uc744 \uac16\ucd98 \uc778\ub825\uc744 \uc5bb\uc744;\n\n\xa7 recommendations.author.oneToOne.title\n\ub9e4\ub2ec 1- 1 \uc9c0\ucd9c\n\n\xa7 recommendations.author.oneToOne.description\n\uc774\uac83\uc740 \ucd08\uae30 \ub2e8\uacc4\uc5d0\uc11c \ubb38\uc81c\ub97c \uc2dd\ubcc4\ud558\ub294 \ub370 \ub3c4\uc6c0\uc774 \ub420 \uac83\uc785\ub2c8\ub2e4.\n\n*\uc77c\ub300\uc77c*\ub294 \uc0c1\uc0ac\uc640 \ubd80\ud558 \uc0ac\uc774\uc758 \uc815\uae30\uc801 \uc778 \uac1c\uc778 \ud68c\uc758\uc785\ub2c8\ub2e4. \uadf8\ub7ec\ud55c \ud68c\uc758\uc5d0\uc11c \uadf8\ub4e4\uc740 \uc77c\ubc18\uc801\uc73c\ub85c \uc9c1\uc6d0\uc5d0\uac8c \uc911\uc694\ud55c \ubaa8\ub4e0 \uac83,\uadf8\uac00 \uad00\uc2ec\uc744 \uac16\ub294 \uac83,\uadf8\ub9ac\uace0 \uac1c\uc778\uc801\uc73c\ub85c \ub9cc \uad00\ub9ac\uc790\uc640 \uacf5\uc720 \ud560 \uc218\uc788\ub294 \uac83\uc5d0 \ub300\ud574 \ub17c\uc758\ud569\ub2c8\ub2e4.\n\n#\uc911\uc694\ud55c \uc774\uc720:\n- \uadf8\uac83\uc740 \uc9c1\uc6d0\uc774 \uacfc\ubd80\ud558 \ub204\uac00 \uc790\uc720 \uc2dc\uac04\uc744 \uac00\uc9c0\uace0\uc788\ub294 \uc27d\uac8c \ucc3e\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4;\n- \uc9c1\uc6d0 \uc18c\uc9c4\uc744 \ubc29\uc9c0 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4;\n- \ub2f9\uc2e0\uc740 \ub2f9\uc2e0\uc774 \ud1b5\uc9c0\ud558\uc9c0 \uc54a\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4 \ud504\ub85c\uc138\uc2a4\uc5d0 \ub300\ud55c \ube60\ub978 \ud53c\ub4dc\ubc31\uc744 \uc5bb\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4;\n- \uc2e0\ub8b0 \ud0dc\ub3c4\uac00 \ud615\uc131\ub418\uace0 \uc9c1\uc6d0\uc774 \ud68c\uc0ac\uc5d0 \ub354 \ucda9\uc131\ud558\uac8c\ub429\ub2c8\ub2e4.;\n- \ub3d9\uae30 \ubd80\uc5ec \ubc0f \uc9c1\uc6d0 \ucc38\uc5ec \uc99d\uac00;\n\n\xa7 recommendations.author.club.title\n\ubc14\ub85c \uac00\uae30\n\n\xa7 recommendations.author.club.description\n\ud55c\ub450 \ub2ec\uc5d0 \ud55c \ubc88.\n\n\uc774\uac83\uc740 \ud300\uc758 \ube44\uacf5\uc2dd\uc801\uc778 \uc758\uc0ac\uc18c\ud1b5\uc744 \uad6c\ucd95\ud558\uace0 \ud300\uc744 \ud558\ub098\ub85c \ubaa8\uc73c\ub294 \ub370 \ub3c4\uc6c0\uc774 \ub420 \uac83\uc785\ub2c8\ub2e4.\ube44\ub85d \uc758\uc0ac\uc18c\ud1b5\uc774 \ube61\ube61\ud558\ub354\ub77c\ub3c4 \ub9d0\uc774\uc8e0.\n\n#\uc65c \uc911\uc694\ud55c\uac00:\n- \ub2f9\uc2e0\uc740 \ub2f9\uc2e0\uc774 \ud1b5\uc9c0\ud558\uc9c0 \uc54a\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4 \ud504\ub85c\uc138\uc2a4\uc5d0 \ub300\ud55c \ube60\ub978 \ud53c\ub4dc\ubc31\uc744 \uc5bb\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4;\n- \uc2e0\ub8b0 \ud0dc\ub3c4\uac00 \ud615\uc131\ub418\uace0 \uc9c1\uc6d0\uc774 \ud68c\uc0ac\uc5d0 \ub354 \ucda9\uc131\ud558\uac8c\ub429\ub2c8\ub2e4.;\n- \uc9c1\uc6d0 \ucc38\uc5ec \uc99d\uac00;\n\n\xa7 recommendations.timestamp.neverWeekendWord.description\uc5ec\uae30\uc11c \uc26c\ub294 \ub0a0\uc740 \uc5c6\uc9c0\n\xa7 recommendations.scope.parallelism.not.title\uc544\ub9c8\ub3c4 \ud504\ub85c\uc81d\ud2b8 \uad00\ub9ac\uc790\ub97c \ud574\uace0 \ud560 \uac00\uce58\uac00 \uc788\uc2b5\ub2c8\ub2e4.\n\xa7 recommendations.scope.parallelism.not.description\uc8fc\ub9d0 \uc791\uc5c5\n\xa7 recommendations.scope.parallelism.has.title\uc544\ub9c8\ub3c4 \ud504\ub85c\uc81d\ud2b8 \uad00\ub9ac\uc790\ub97c \uccb4\ud06c \uc544\uc6c3 \ud560 \uac00\uce58\uac00 \uc788\uc2b5\ub2c8\ub2e4.\n\xa7 recommendations.scope.parallelism.has.description\ubb38\uc81c\uac00 \uc788\uc2b5\ub2c8\ub2e4\n\xa7 recommendations.scope.parallelism.every.title\uc544\ub9c8 \ub9c9\ud798\uc774 \uc788\uace0 \uc8fc\ub9d0\uc5d0 \uc77c\ud574\uc57c \ud569\ub2c8\ub2e4.\n\xa7 recommendations.scope.parallelism.every.description\ubd80\uc7ac\uc790 \uc218\uac00 \uc904\uc5b4\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4.\n\xa7 recommendations.scope.money\uc9c0\ub09c 3 \uc8fc \ub3d9\uc548 \uc774 \uc218\uce58\ub294 \uac10\uc18c\ud588\uc2b5\ub2c8\ub2e4.\n\xa7 recommendations.scope.bus.everyHasOne.title\ub354 \ub9ce\uc740 \uacb0\uadfc\uc774 \uc788\uc2b5\ub2c8\ub2e4\n\xa7 recommendations.scope.bus.everyHasOne.description,\uc791\uc5c5 \ub610\ub294 \ub354 \uc5c4\uaca9\ud55c \uc81c\uc5b4\uac00 \ud544\uc694\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4\n\xa7 recommendations.scope.bus.oneMaintainer\uadf8\uac83\uc740 \uafb8\uc900\ud788 \uc791\ub3d9\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4\n\xa7 recommendations.scope.types.process.title\uadf8\uac83\uc740 \ub9e4\uc8fc \uc2dc\uac04\uc758 100%\ucf54\ub4dc\ub97c \uc791\uc131\ud558\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0\n\xa7 recommendations.scope.types.process.description\uadf8\uac83\uc740 \uafb8\uc900\ud788 \ucc98\ub9ac\ud569\ub2c8\ub2e4\n\xa7 recommendations.scope.types.one\uadf8\uac83\uc740 \ub9e4\uc8fc \ucf54\ub4dc\ub97c \uc791\uc131\ud558\uae30 \ub54c\ubb38\uc5d0\n\xa7 recommendations.scope.types.common\uadf8\ub9ac\uace0 \uc8fc\ub9d0\uc5d0 \uc0dd\uc0b0\uc131\uc774 \uc99d\uac00\ud569\ub2c8\ub2e4\n\xa7 recommendations.week.task.up.description\n\ub610\ub294 \uc791\uc5c5\uc774 \ub108\ubb34 \uc791\uc544\uc84c\uc2b5\ub2c8\ub2e4.\n \n\uc6b0\ub9ac\ub294 \uadf8\uac83\uc744 \uccb4\ud06c \uc544\uc6c3\ud574\uc57c\ud569\ub2c8\ub2e4. \uc138\ubd84\uc131\uc774 \ub3d9\uc77c\ud55c \uacbd\uc6b0 \uacb0\uacfc\ub97c \uc218\uc815\ud569\ub2c8\ub2e4.\n\xa7 recommendations.scope.plan.title\uacb0\uadfc\uc758 \uc548\uc815\uc801\uc778 \ub9ac\ub354. \uadf8\ub97c \ud574\uace0?\n\xa7 recommendations.scope.plan.description\uc0dd\uc0b0\uc131\uc774 \ub5a8\uc5b4\uc9c0\uace0 \uc788\uc2b5\ub2c8\ub2e4\n\xa7 recommendations.week.task.down.description\n\ub610\ub294 \uc791\uc5c5\uc774 \ub354 \uc138\ubd84\ud654\ub429\ub2c8\ub2e4. \uc6b0\ub9ac\ub294 \uadf8\uac83\uc744 \uccb4\ud06c \uc544\uc6c3\ud574\uc57c\ud569\ub2c8\ub2e4. \uc138\ubd84\uc131\uc774 \ub3d9\uc77c\ud55c \uacbd\uc6b0 \uc81c\uc5b4\ud558\uc2ed\uc2dc\uc624.\n\n#\ud3c9\uac00 \ubc29\ubc95:\n- \uc5d0 \uadfc\ubb34 \ud558\ub294 \ud558\ub8e8 \uc791\uc5c5\uc758 \uc218\ub294 \uafb8\uc900\ud788 \uc9c0\ub09c 3 \uc8fc \ub3d9\uc548 \ub5a8\uc5b4\uc9c0\uace0 \uc788\ub2e4.\n\n#\uac00\ub2a5\ud55c \uc624\ub958:\n- \uc791\uc5c5\uc740 \ubcf4\uc774\ub294 \uac83\ubcf4\ub2e4 \ub354 \uc5b4\ub824\uc6b8 \uc218 \uc788\uc2b5\ub2c8\ub2e4;\n- \uc791\uc5c5 \uc791\uc5c5\uc758 \ub9ce\uc740 \uc591\uc744 \uac00\uc9c8 \uc218(\ub2f9\uc2e0\uc740 \ubcc0\ud654\uc758 \uc218\ub97c \ud655\uc778\ud574\uc57c\ud569\ub2c8\ub2e4,\uadf8\ub4e4\uc740 \uac19\uc740 \uae30\uac04 \ub3d9\uc548 \uac00\uc744 \uc5ec\ubd80)\n\n\xa7 recommendations.scope.cost.title\uc791\uc5c5 \uc720\ud615\uc5d0 \uc11c\uba85\ud558\uc9c0 \uc54a\uc74c\n\xa7 recommendations.scope.cost.description\ub300\ubd80\ubd84\uc758 \uc791\uc5c5 \uc720\ud615\uc740 \ud55c \uc0ac\ub78c\uc774 \uc218\ud589\ud569\ub2c8\ub2e4.\n\xa7 recommendations.author.lotOfLazy.title: \uc881\uc740 \uc804\ubb38\ud654\n\xa7 recommendations.type.oneMaintainer.description\n\uac19\uc740 \uc720\ud615\uc758 \ub300\ubd80\ubd84\uc758 \uc791\uc5c5\uc740 \uac19\uc740 \uc0ac\ub78c\ub4e4\uc5d0 \uc758\ud574 \uc218\ud589\ub429\ub2c8\ub2e4.\n\n#\uc791\uc5c5 \uc720\ud615:\n\n\xa7 recommendations.type.common\n#\uc5b4\uca4c\uba74 \uadf8\ub807\uc9c0 \uc54a\uc744 \uc218\ub3c4 \uc788\uc2b5\ub2c8\ub2e4\n\n\ub2e4\ub978 \uc9c1\uc6d0\uc774 \ucee4\ubc0b\uc5d0 \uc62c\ubc14\ub974\uac8c \uc11c\uba85\ud558\ub294\uc9c0 \ud655\uc778\ud574\uc57c \ud569\ub2c8\ub2e4.\n\n\uc774 \uc791\uc5c5\uc744 \uc218\ud589\ud558\ub294 \ub370 \ub3c4\uc6c0\uc774 \ub418\ub294 \ub2e8\uacc4:\n- \ucee4\ubc0b \uba54\uc2dc\uc9c0\uc5d0 \ub300\ud55c \uc0ac\uc804 \ucee4\ubc0b \ud655\uc778 \uc124\uc815;\n- \uc774 \uc720\ud615\uc744 \uc9c0\uc815\ud560 \ud544\uc694\uac00 \uc788\uc74c\uc744 \ud300\uc5d0 \uc124\uba85;\n- \uc9c1\uc6d0\uc774 \uaddc\uce59\uc744 \ub530\ub974\ub294 \uc0c8\ub85c\uc6b4 \uc9c0\uc810 \ud655\uc778;\n\n#\uadf8\uac8c \uc0ac\uc2e4\uc774\ub77c\uba74\n\n\ub108\ub294 \uccb4\ud06c\ub97c \uc124\uce58\ud558\uace0 \ub3d9\uc77c\ud55c \uc9c1\uc6d0\uc774 \uc5c5\ubb34\uc758 \ub3d9\uc77c\ud55c \uc720\ud615\uc744 \ud558\uace0 \uc788\ub294 \uac83\uc744 \ud655\uc778\ud588\ub2e4.\n\n\uc65c \ub098\uc05c:\n- \uadf8\uc758 \ud574\uace0\ub294 \ub9ce\uc740 \uacfc\uc815\uc744 \uba48\ucd9c \uac83\uc785\ub2c8\ub2e4;\n- \ud300 \uad6c\uc131\uc6d0\uc758 \ub098\uba38\uc9c0 \ubd80\ubd84\uc758 \ub2a5\ub825 \uac10\uc18c;\n- \uadf8\uac83\uc740 \ucd5c\uc0c1\uc704 \uc218\uc900\uc5d0\uc11c \uc790\uc2e0\uc758 \ud3b8\uc9d1\uc744 \uc774\ud574\ud558\uae30 \uc5b4\ub835\ub2e4;\n\n\uadf8\uac83\uc744 \uace0\uce58\ub294 \ubc29\ubc95:\n- \ub2e4\uc591\ud55c \uc720\ud615\uc758 \uc791\uc5c5\uc744 \uade0\ub4f1\ud558\uac8c \ubd84\ubc30;\n- \uc2a4\ud504\ub9b0\ud2b8\ub97c \ud1b5\ud574 \uc9c1\uc6d0 \uac04\uc758 \uc791\uc5c5 \ubc94\uc704(\ud14c\uc2a4\ud2b8,\ubb38\uc11c\ud654,\uc624\ub958)\ubcc0\uacbd;\n\n\xa7 recommendations.type.fewTypes.title\n\uc774 \ub85c\uceec \uc81c\ud488\uc785\ub2c8\ub2e4\n\n\xa7 recommendations.type.fewTypes.description\n\ud2b9\uc815 \uace0\uac1d \ub610\ub294 \ubb38\uc81c\uc5d0 \ub300\ud55c.\n\n#"\uae00\ub85c\ubc8c"\uc81c\ud488\uc758 \uc9d5\ud6c4\ub294 \ubb34\uc5c7\uc785\ub2c8\uae4c:\n- \ud604\uc9c0\ud654;\n- \ubb38\uc11c;\n- \ub9ce\uc740 \uc591\uc758 \ud14c\uc2a4\ud2b8;\n- \uc2dc\uac01\uc801 \uc0ac\uc6a9\uc790 \uc815\uc758;\n- \ub9ac\ud329\ud1a0\ub9c1 \ubcd1\ubaa9 \ud604\uc0c1;\n- \uae30\ud0c0\n\n#\uc774 \uc81c\ud488\uc774"\ub85c\uceec"\ucc98\ub7fc \ubcf4\uc774\ub294 \uc774\uc720:\n- \uac01"\uae00\ub85c\ubc8c"\uae30\ub2a5\uc740 \uc791\uc5c5 \uc720\ud615\uc5d0 \ub530\ub77c \uc6b0\uc138\ud569\ub2c8\ub2e4;\n- "\uae00\ub85c\ubc8c"\uae30\ub2a5\uc774 \ub9ce\uc744\uc218\ub85d"\uae00\ub85c\ubc8c"\uc81c\ud488\uc774 \ub354 \ub9ce\uc744 \uac00\ub2a5\uc131\uc774 \ub192\uc2b5\ub2c8\ub2e4;\n\n\uc774 \uacbd\uc6b0 \uc6b0\ub9ac\ub294 \uc18c\uc218\uc758 \uc720\ud615\uc744 \ubcfc \uc218 \uc788\uc73c\ubbc0\ub85c \uc81c\ud488\uc774 \uc138\uacc4 \uc2dc\uc7a5\uc5d0 \uc27d\uac8c \ud655\uc7a5\ub418\uace0 \ub2e4\ub978 \uad6d\uac00\uc5d0\uc11c \ud310\ub9e4\ub418\ub294 \uac83\uc744 \ubc29\uc9c0\ud558\ub294 \uacb0\ud568\uc774 \uc788\uc744 \uac00\ub2a5\uc131\uc774 \ud07d\ub2c8\ub2e4.\n\n#\uc5b4\uca4c\uba74 \uadf8\ub807\uc9c0 \uc54a\uc744 \uc218\ub3c4 \uc788\uc2b5\ub2c8\ub2e4\n\ud30c\uc77c \uc720\ud615\uc5d0 \ub530\ub77c \ud504\ub85c\uadf8\ub7a8 \uc720\ud615(\uc6f9 \uc0ac\uc774\ud2b8,\uc11c\ubc84 \uc751\uc6a9 \ud504\ub85c\uadf8\ub7a8,\uac1c\ubc1c \uc6b4\uc601 \uc2a4\ud06c\ub9bd\ud2b8 \ub4f1)\uc744 \uac00\uc815 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.). \ud504\ub860\ud2b8 \uc5d4\ub4dc \uc751\uc6a9 \ud504\ub85c\uadf8\ub7a8\uc758 \uacbd\uc6b0,\uc6b0\ub9ac\uc758 \uac00\uc124\uc740 \ub9c8\uc774\ud06c\ub85c \ucd08\uae30\ud654 \ubaa8\ub4c8 \uc77c \uc218\uc788\ub294 \uac1c\ubc1c \uc6b4\uc601 \uc2a4\ud06c\ub9bd\ud2b8\ubcf4\ub2e4 \ub354 \uc815\ud655\ud560 \uac83\uc785\ub2c8\ub2e4.\n\n\xa7 recommendations.type.diff.title\n\uc120\ud589 \uc720\ud615\uc744 \ud558\uc704 \uc720\ud615\uc73c\ub85c \uad6c\ubd84\n\n\xa7 recommendations.type.diff.description\n\uc624\ub958\ub97c \uc790\uc138\ud788 \uc124\uba85\ud569\ub2c8\ub2e4.\n\n\uc77c\ubc18\uc801\uc73c\ub85c"\uc624\ub958 \uc218\uc815"\uc774\ub77c\uace0 \ud45c\uc2dc\ub41c \uc791\uc5c5 \uc720\ud615\uc774 \uac00\uc7a5 \uba3c\uc800 \ud45c\uc2dc\ub429\ub2c8\ub2e4. \uc774 \ud1b5\uacc4\ub294 \uc81c\ub300\ub85c \uc0c1\uc138\ud558\uac8c.\n\n*\uc774\ub7ec\ud55c \uc0c1\ud669\uc774 \uc788\ub294 \uacbd\uc6b0*\uc774 \uc720\ud615\uc744 \ud558\uc704 \uc720\ud615(\uc608:\uac10\uc9c0 \uc704\uce58\ubcc4)\uc73c\ub85c \ub098\ub20c \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n\n\ud558\uc704 \uc720\ud615\uc758 \uc5ec\ub7ec \ubcc0\ud615\uc744 \uace0\ub824\ud574 \ubcf4\uaca0\uc2b5\ub2c8\ub2e4:\n- \uc218\uc815 _\ub370\ube0c(\uac1c\ubc1c \ud504\ub85c\uc138\uc2a4 \uc911\uc5d0 \ud655\uc778\ub41c \uc624\ub958);\n- \uc218\uc815 _\ud14c\uc2a4\ud2b8(\ud14c\uc2a4\ud2b8 \uc911 \uc624\ub958\uac00 \uac10\uc9c0\ub428);\n- \uc218\uc815(\uc790\uadf9\uc5d0\uc11c \uac10\uc9c0 \ub41c \uc624\ub958);\n\n\xa7 recommendations.type.buddy.title\n\uc791\uc740 \uc791\uc5c5 \uc800\uc7a5\n\n\xa7 recommendations.type.buddy.description\n\uc0c8\ub85c\uc6b4 \uc9c1\uc6d0\uc744 \uc704\ud574.\n\n#\uc791\uc5c5\uc774:\n- \uc911\uc694\ud558\uc9c0 \uc54a\uc544;\n- \uc544\ub2c8 \ud070 \ud558\ub098;\n- \ub9e5\ub77d\uc5d0\uc11c \uac15\ud55c \ubab0\uc785\uc744 \ud544\uc694\ub85c\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4;\n- \uc0c8\ub85c\uc6b4 \ucf54\ub4dc\ubcf4\ub2e4 \ub9ac\ud329\ud1a0\ub9c1\uc5d0 \ub300\ud55c \uc790\uc138\ud55c \ub0b4\uc6a9;\n\n#"\ucd08\ubcf4\uc790\ub97c\uc704\ud55c"\ub808\uc774\ube14 \ubc31 \ub85c\uadf8\uc5d0 \ub123\uc5b4.\n\n\uc0c8\ub85c\uc6b4 \uc9c1\uc6d0\uc774 \ub3c4\ucc29\ud558\uba74,\ub2f9\uc2e0\uc740 \uc989\uc2dc \uadf8\uc5d0\uac8c \ud504\ub85c\uc81d\ud2b8\uc5d0 \uc775\uc219\ud574 \uc791\uace0 \ub2e4\uc591\ud55c \uc791\uc5c5\uc758 \ud329\uc744 \uc5bb\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n\n\ub2f9\uc2e0\uc740 \ub2f9\uc2e0\uc758 \uc77c\uc5d0 \uce68\uccb4\uac00\uc788\ub294 \uacbd\uc6b0 \ub610\ud55c,\ub2f9\uc2e0\uc740 \ubc31 \ub85c\uadf8\uc5d0\uc11c \ud558\ub098\uc758 \uc791\uc740 \uc791\uc5c5\uc744 \uc5bb\uc744 \uc218\uc788\uc744 \uac83\uc785\ub2c8\ub2e4.\n',"\n\xa7 page.settings.document.title: \ub514\uc2a4\ud50c\ub808\uc774 \uc124\uc815\n\xa7 page.settings.document.name: \ud398\uc774\uc9c0 \uc81c\ubaa9\n\xa7 page.settings.document.language: \uc778\ud130\ud398\uc774\uc2a4 \uc5b8\uc5b4\n\xa7 page.settings.document.depersonalize: \uac1c\uc778 \ub370\uc774\ud130 \uc228\uae30\uae30\n\xa7 page.settings.links.title: \ub9c1\ud06c \uc811\ub450\uc0ac\n\xa7 page.settings.links.task: \uc791\uc5c5 \ubc88\ud638\n\xa7 page.settings.links.pr: \ud64d\ubcf4\n\xa7 page.settings.user.title: \uac1c\ubcc4 \uc124\uc815\n\xa7 page.settings.user.notFound: \uac1c\ubcc4 \uc124\uc815\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. \ubaa8\ub4e0 \uc9c1\uc6d0\uc5d0 \ub300\ud55c \ub370\uc774\ud130\ub294 \uacf5\ud1b5 \ub9e4\uac1c \ubcc0\uc218\ub97c \uc0ac\uc6a9\ud558\uc5ec \uacc4\uc0b0\ub429\ub2c8\ub2e4.\n\xa7 page.settings.user.subTitle: \uace0\uc6a9 \uacc4\uc57d \uc81c 1 \ud638\uc758 \ubd80\ub85d\n\xa7 page.settings.user.from: \uc791\uc5c5 \uc2dc\uc791 \ub0a0\uc9dc\n\xa7 page.settings.mailmap: \uc124\uc815.\uba54\uc77c\ub9f5\n\xa7 page.settings.common.title: \uc77c\ubc18 \uae09\uc5ec \ub370\uc774\ud130\n\xa7 page.settings.common.type.title: \ud504\ub85c\uc81d\ud2b8 \uc791\uc5c5 \uc720\ud615\n\xa7 page.settings.common.type.full: \ud480 \ud0c0\uc784 \uace0\uc6a9\n\xa7 page.settings.common.type.part: \ud504\ub85c\uc81d\ud2b8 \uc791\uc5c5\n\xa7 page.settings.common.salary: \uc6d4\uae09(\ubbf8\uad6d \ub2ec\ub7ec)\n\xa7 page.settings.common.currency: \ud45c\uc2dc\ud560 \ud1b5\ud654\n\xa7 page.settings.common.workDaysInYear: \ub144 \ub2f9 \uc791\uc5c5 \uc77c\uc758 \uc218\n\xa7 page.settings.common.vacationDaysInYear: \uc5f0\uac04 \ud734\uac00 \uc77c \uc218\n\xa7 page.settings.common.workDaysInWeek: \uc791\uc5c5 \uc77c\n\xa7 page.settings.form.save: \uc800\uc7a5\n\xa7 page.settings.form.cancel: \ucde8\uc18c\n\xa7 page.settings.form.remove: \uc81c\uac70\n\xa7 page.settings.form.addEmployee: \uc9c1\uc6d0 \ucd94\uac00\n\xa7 page.settings.form.addContract: \uace0\uc6a9 \uacc4\uc57d \ucd94\uac00\n",'\n\xa7 page.welcome.step1: \ud504\ub85c\uc81d\ud2b8 \ub8e8\ud2b8\uc5d0\uc11c \uba85\ub839\uc744 \uc2e4\ud589\ud569\ub2c8\ub2e4\n\xa7 page.welcome.step3: \ub4dc\ub798\uadf8\n\xa7 page.welcome.step4: \uadf8\ub9ac\uace0 \ud30c\uc77c \ub85c\uadf8\ub97c \uc0ad\uc81c\ud569\ub2c8\ub2e4.\uc774 \ud398\uc774\uc9c0\ub85c\n\xa7 page.welcome.description: \ud798\ub0b4\ub294 \ud30c\uc77c \ub85c\uadf8\ub97c \ub9cc\ub4e4 \uac83\uc785\ub2c8\ub2e4.- \ub124 \uc5ec\uae30\uc5d0\ub294 \ubcf4\uace0\uc11c \uc791\uc131\uc744 \uc704\ud55c \ub370\uc774\ud130\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4. \ub610\ub294 \ubcf4\uace0\uc11c\uac00 \ud544\uc694\ud558\uc9c0 \uc54a\uc740 \uacbd\uc6b0 \uc9e7\uc740 \ub85c\uadf8\uac00 \ud544\uc694\ud569\ub2c8\ub2e4. \uc9c1\uc6d0 \ud1b5\uacc4\ub97c \uacb0\ud569\ud558\uae30 \uc704\ud574 \ud504\ub85c\uc81d\ud2b8\uc758 \ub8e8\ud2b8\uc5d0[.\uba54\uc77c \ub9f5|<url>/\ubb38\uc11c/\uc790\uc2dd \uba54\uc77c \ub9f5]\ud30c\uc77c\uc744 \ub9cc\ub4ed\ub2c8\ub2e4.\n\xa7 page.welcome.warning1: \uc11c\ube44\uc2a4*\uc800\uc7a5\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4*\ubc0f*\uc804\uc1a1\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4*\uadc0\ud558\uc758 \ub370\uc774\ud130. \ubaa8\ub4e0 \uacc4\uc0b0\uc740 \ucef4\ud4e8\ud130\uc5d0 \ubc14\ub85c \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \ub85c\uceec\ub85c \uc218\ud589\ub429\ub2c8\ub2e4.\n\xa7 page.welcome.warning2: \uc11c\ube44\uc2a4*\ub294 \ud504\ub85c\uc81d\ud2b8\uc5d0 \ub300\ud55c \ud1b5\uacc4*\ub97c \uc218\uc9d1\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \uc778\ud130\ub137\uc744 \ub044\uace0 \ud2b8\ub798\ud53d\uc744 \ud655\uc778\ud558\uace0 \ub85c\uceec \ube4c\ub4dc\ub97c \uad6c\ucd95 \ud560 \uc218\ub3c4 \uc788\uc2b5\ub2c8\ub2e4.\n\xa7 page.common.words.title: \ub2e8\uc5b4\uc5d0 \ub300\ud55c \ud1b5\uacc4\n\xa7 page.common.words.description: \uac00\uc7a5 \uc778\uae30\uc788\ub294 \ub2e8\uc5b4\uc785\ub2c8\ub2e4. \uadf8\uac83\uc740 \ubc1c\uc0dd$1 \uc2dc\ub300.\n\xa7 page.common.commits.title: \uc77c\ubcc4 \ucee4\ubc0b \uc218\n\xa7 page.common.commits.description: ($1)\ucee4\ubc0b \uc218\uc5d0 \ub530\ub77c \uac00\uc7a5 \uc0dd\uc0b0\uc801\uc778 \ub0a0.\n\xa7 page.common.commits.title2: $1 \ucee4\ubc0b:$2\n\xa7 page.common.filter.allUsers: \uadf8\uac83\uc740 \uc911\uc694\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4\n\xa7 page.print.modal.title: \uc6b0\ub9ac\ub294 \ubb34\uc5c7\uc744 \uc778\uc1c4\ud558\uace0 \uc788\uc2b5\ub2c8\uae4c?\n\xa7 page.print.modal.page: \ud604\uc7ac \ud398\uc774\uc9c0\n\xa7 page.print.modal.type: \ud604\uc7ac \uc139\uc158\n\xa7 page.print.modal.all: \ubaa8\ub4e0 \ud1b5\uacc4\n\xa7 page.print.modal.cancel: \ucde8\uc18c\n\xa7 page.print.tableOfContents: \ub0b4\uc6a9 \ud45c\n\xa7 page.print.title: \uc790\uc2dd \uc800\uc7a5\uc18c\uc5d0 \ub300\ud55c \ubcf4\uace0\uc11c\n\xa7 page.print.sub_title: "$1"\n\xa7 page.print.description: \ubcf4\uace0\uc11c\uc758 \ub370\uc774\ud130\ub294 \ucee4\ubc0b \uae30\ub85d\uc5d0\uc11c \uc5bb\uc5c8\uc2b5\ub2c8\ub2e4.\n\xa7 page.team.author.statusChart.title: \ud604\uc7ac \uc0c1\ud0dc\n\xa7 page.team.author.daysChart.title: \uadfc\ubb34 \uc2dc\uac04\n\xa7 page.team.author.daysChart.item: \uc77c\n\xa7 page.team.author.days.half: \ubc18 \ub144\n\xa7 page.team.author.days.one: 1 \ub144\n\xa7 page.team.author.days.15: \ud55c \ubc18\n\xa7 page.team.author.days.two: 2 \ub144\n\xa7 page.team.author.days.more: more than two years\n\xa7 page.team.author.title: \uc138\ubd80 \uc815\ubcf4\n\xa7 page.team.author.description1: *\ud1b5\uacc4\uc758 \uc77c\ubd80*(\uc791\uc5c5 \uc18d\ub3c4,\uc9c0\ucd9c\ub41c \ub3c8 \ub4f1))*\ub294 \ud504\ub85c\uc81d\ud2b8\uc5d0\uc11c \uc77c\uc2dc\uc801\uc778 \uc5ed\ud560\uc774\uae30 \ub54c\ubb38\uc5d0"\ubcf4\uc870"\uc720\ud615*\uc744 \uac00\uc9c4 \uc9c1\uc6d0\uc5d0 \ud3ec\ud568\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \uc6b0\ub9ac\ub294 \uadf8\ub4e4\uc774 \ud504\ub85c\uc81d\ud2b8\uc5d0 \uc601\ud5a5\uc744 \ubbf8\uce58\uc9c0 \uc54a\ub294\ub2e4\uace0 \uac00\uc815\ud558\uace0,\uadf8\ub4e4\uc758 \ud3b8\uc9d1\uc740 \ucd1d \uc791\uc5c5\ub7c9\uc758 \ubc30\uacbd\uc5d0 \ub300\ud574 \ubb34\uc2dc\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n\xa7 page.team.author.description2: *\uae30\ubcf8 \uc815\ub82c*\uc791\uc5c5 \ubc0f \uadf8\ub8f9 \uc218(\ud604\uc7ac,\ud574\uace0,\uc9c1\uc6d0 \uc9c0\uc6d0)\ub85c \uc815\ub82c\ub429\ub2c8\ub2e4.\n\xa7 page.team.author.status: \uc0c1\ud0dc\n\xa7 page.team.author.company: \ud68c\uc0ac\uc18c\uac1c\n\xa7 page.team.author.firstCommit: \uccab \ubc88\uc9f8 \ucee4\ubc0b\n\xa7 page.team.author.lastCommit: \ub9c8\uc9c0\ub9c9\n\xa7 page.team.author.daysAll: \uadf8\ub0e5 \uc77c\n\xa7 page.team.author.types: \uc791\uc5c5 \uc720\ud615\n\xa7 page.team.author.commits: \ucee4\ubc0b\n\xa7 page.team.author.commitsSmall: \ucee4\ubc0b\n\xa7 page.team.author.tasks: \uc791\uc5c5\n\xa7 page.team.author.tasksSmall: \uc791\uc5c5\n\xa7 page.team.author.workedLosses: \ucee4\ubc0b\uc774 \uc788\ub294 \ub0a0\uacfc \uc5c6\ub294 \ub0a0\n\xa7 page.team.author.worked: \uc77c\n\xa7 page.team.author.losses: \ucee4\ubc0b \uc5c6\ub294 \uc77c\n\xa7 page.team.author.days: \uc77c\n\xa7 page.team.author.daysForTask: \uc77c \ub2f9\n\xa7 page.team.author.scopes: \uae30\ub2a5 \uc791\uc5c5\n\xa7 page.team.author.moneyAll: \uc218\uc2e0\n\xa7 page.team.author.moneyWorked: \ubc16\uc73c\ub85c \uc77c\n\xa7 page.team.author.moneyLosses: \ucd08\uacfc \uc9c0\ubd88\n\xa7 page.team.author.type.work: \uc791\ub3d9 \uc911\n\xa7 page.team.author.type.dismissed: \xa7 page.team.author.type.dismissed: \u0443\u0432\u043e\u043b\u0435\u043d\n\xa7 page.team.author.type.staff: \uc870\uc218\uac00 \ud574\uace0\ub410\uc5b4\n\xa7 page.team.hours.title: \uac01 \uc694\uc77c \ub3d9\uc548\uc758 \ucee4\ubc0b \ubc30\ud3ec\n\xa7 page.team.month.title: \ud504\ub85c\uc81d\ud2b8 \uc791\uc5c5 \uc77c\uc815\n\xa7 page.team.month.first: (\uccab \uadfc\ubb34\uc77c)\n\xa7 page.team.month.last: (\ub9c8\uc9c0\ub9c9 \uc791\uc5c5 \uc77c)\n\xa7 page.team.scope.title: \uae30\ub2a5 \ud1b5\uacc4\n\xa7 page.team.scope.scope: \ud2b9\uc9d5\n\xa7 page.team.scope.days: \ub178\uc608 \uc77c\n\xa7 page.team.scope.authorsDays: \ub0a8\uc790 \uc77c\n\xa7 page.team.scope.tasks: \uc791\uc5c5\n\xa7 page.team.scope.commits: \ucee4\ubc0b\n\xa7 page.team.scope.commitsSmall: \ucee4\ubc0b\n\xa7 page.team.scope.types: \uc791\uc5c5 \uc720\ud615\n\xa7 page.team.scope.authors: \uac1c\uc778 \uae30\uc5ec\n\xa7 page.team.scope.cost: \ube44\uc6a9\n\xa7 page.team.type.title: \uc791\uc5c5 \uc720\ud615\ubcc4 \ud1b5\uacc4\n\xa7 page.team.type.description: *\uac1c\uc778 \uae30\uc5ec*\ub294 \uc218\uc815 \ub41c \ub77c\uc778 \ub610\ub294 \ud30c\uc77c\uc758 \ubcfc\ub968\uc774 \uc544\ub2cc \ucee4\ubc0b \uc218\uc5d0 \uc758\ud574 \uacc4\uc0b0\ub429\ub2c8\ub2e4. \ub530\ub77c\uc11c"\ud30c\uc77c \ubd84\uc11d"\uc139\uc158\ub3c4 \uc0b4\ud3b4\ubcf4\uace0 \ubcc0\uacbd \uc0ac\ud56d\uc758 \uaddc\ubaa8\ub97c \ud3c9\uac00\ud574\uc57c \ud569\ub2c8\ub2e4.\n\xa7 page.team.type.type: \uc791\uc5c5 \uc720\ud615\n\xa7 page.team.type.unknown: \uc54c \uc218 \uc5c6\ub294\n\xa7 page.team.type.tasks: \uc791\uc5c5\n\xa7 page.team.type.tasksSmall: \uc791\uc5c5\n\xa7 page.team.type.days: \uc77c\n\xa7 page.team.type.daysSmall: \uc77c\n\xa7 page.team.type.authorsDays: \ub0a8\uc790 \uc77c\n\xa7 page.team.type.commits: \ucee4\ubc0b\n\xa7 page.team.type.authors: \uac1c\uc778 \uae30\uc5ec\n\xa7 page.team.total.titleA: \uc791\uc5c5 \ubc94\uc704\n\xa7 page.team.total.titleB: \ube44\uc6a9\n\xa7 page.team.total.daysWorked.title: \uc778\uac04\uc758 \ub0a0\n\xa7 page.team.total.daysWorked.description: \uc57d\uc18d\uc774 \uc774\ub8e8\uc5b4\uc9c4 \ub0a0\ub9cc \uace0\ub824\ub429\ub2c8\ub2e4.\n\xa7 page.team.total.commits.title: \xa7 page.team.total.commits.title: \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 page.team.total.commits.description: \uc0ad\uc81c\ub41c \ubd84\uae30\ub294 \uacc4\uc0b0\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4\n\xa7 page.team.total.daysLosses.title: \ucee4\ubc0b \uc5c6\ub294 \uc77c\n\xa7 page.team.total.daysLosses.description: \ubaa8\ub4e0 \uc77c \ube7c\uae30:\ud734\uc77c,\uc8fc\ub9d0,\ud734\uac00,\ucee4\ubc0b\uc774\uc788\ub294 \uc77c\n\xa7 page.team.total.employment.title: \uc791\uc5c5/\uc885\ub8cc\n\xa7 page.team.total.employment.description: \uc9c1\uc6d0\uc774 \ud55c \ub2ec \uc774\ub0b4\uc5d0 \ub2e8\uc77c \ucee4\ubc0b\uc744\ud558\uc9c0 \uc54a\uc740 \uacbd\uc6b0 \uadf8\ub294 \ud574\uace0 \ub41c \uac83\uc73c\ub85c \uac04\uc8fc\ub429\ub2c8\ub2e4\n\xa7 page.team.total.moneyAll.title: .\n\xa7 page.team.total.moneyAll.description: \ud3ec\uc758 \ucd1d \ube44\uc6a9\n\xa7 page.team.total.moneyWorked.title: \uc2e4\uc81c\n\xa7 page.team.total.moneyWorked.description: \uc2e4\uc81c \uc77c \ud3c9\uade0 \ud3ec\ub97c \uacf1\ud55c \uc77c\n\xa7 page.team.total.moneyLosses.title: \uac00\ub2a5\ud55c \ucd08\uacfc \uc9c0\ubd88\n\xa7 page.team.total.moneyLosses.description: \ucee4\ubc0b\uc774 \uc5c6\ub294 \uc720\ub8cc \uadfc\ubb34\uc77c\n\xa7 page.team.total.weekendPayment.title: \uc8fc\ub9d0\uc5d0 \uc77c\n\xa7 page.team.total.weekendPayment.description: \uc8fc\ub9d0 \uc791\uc5c5\uc5d0 \ub300\ud55c \ucd1d \ucd08\uacfc \uc9c0\ubd88\n\xa7 page.team.total.workSpeed.title: \uc77c\uc77c \uc791\uc5c5\n\xa7 page.team.total.workSpeed.description: \ud604\uc7ac \uc9c1\uc6d0\uacfc \ud300\uc758 \ud3c9\uade0 \uc18d\ub3c4\n\xa7 page.team.total.moneySpeed.title: \ub2ec \ub2f9\n\xa7 page.team.total.moneySpeed.description: \uc138\uae08 \ubc0f \uad00\ub828 \ube44\uc6a9\uc744 \uc81c\uc678\ud55c \ud604\uc7ac \uc9c1\uc6d0\uacfc \ud3ec\uc5d0 \ub300\ud55c \uc9c0\ubd88\uc758 \uc608\uc0c1 \uae08\uc561\n\xa7 page.team.total.description1: *\ub0a8\uc790 \uc77c*\uc740 \ud55c \uadfc\ubb34\uc77c \ub3d9\uc548 \ud55c \uc9c1\uc6d0\uc758 \uc791\uc5c5\uc785\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4,\ud55c \ub2ec\ub825 \ub0a0,3 \uba85\uc758 \uc9c1\uc6d0\uc73c\ub85c \uad6c\uc131\ub41c \ud300\uc740 3 \uc77c \ub3d9\uc548 \ub9ce\uc740 \uc591\uc758 \uc77c\uc744 \ud569\ub2c8\ub2e4.\n\xa7 page.team.total.description2: *\uacb0\uadfc \uc77c*\uc740 \ucee4\ubc0b\uc744 \ud560 \uc218 \uc788\uc5c8\ub358 \uc601\uc5c5\uc77c \ub9cc \uac04\uc8fc\ub429\ub2c8\ub2e4. \uc8fc\ub9d0,\uacf5\ud734\uc77c \ubc0f \ud734\uac00\ub294 \uacc4\uc0b0\uc5d0 \ud3ec\ud568\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.\n\xa7 page.team.total.description3: \uce74\ub4dc*\uc791\ub3d9 \ubc0f \uc885\ub8cc*\ub294 \uc791\uc5c5\uc5d0 \uc9c0\uc18d\uc801\uc73c\ub85c \ucc38\uc5ec\ud558\ub294 \uc9c1\uc6d0\uc758 \uc2e4\uc81c \uad6c\uc131\uc744 \ubcf4\uc5ec\uc90d\ub2c8\ub2e4. \ub610\ud55c"\uc870\uc218"\uac00 \uc788\uc2b5\ub2c8\ub2e4.\uc774 \uc9c1\uc6d0\uc740 \uc77c\ubc18\uc801\uc73c\ub85c \ub2e4\ub978 \uc804\ubb38 \ubd84\uc57c\uc758 \uc9c1\uc6d0\uc774\uba70 \ub54c\ub85c\ub294 \ud504\ub85c\uc81d\ud2b8\uc5d0 \ucee4\ubc0b\uc744 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n\xa7 page.team.total.description4: *\ucd08\uacfc \uc9c0\ubd88*\ucee4\ubc0b\uc774 \uc774\ub8e8\uc5b4\uc9c8 \uc218 \uc788\uc5c8\ub358 \uc601\uc5c5\uc77c\ub9cc \uacc4\uc0b0\ud569\ub2c8\ub2e4. \uc8fc\ub9d0,\uacf5\ud734\uc77c \ubc0f \ud734\uac00\ub294 \uacc4\uc0b0\uc5d0 \ud3ec\ud568\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \uadf8 \uc774\uc720\ub294 \ucd08\uacfc \uc9c0\ubd88+\uc2e4\uc81c \ube44\uc6a9!=\uc7a5\uad70 \ucd1d \ube44\uc6a9\uc5d0\ub294 \uc8fc\ub9d0,\uacf5\ud734\uc77c \ubc0f \ud734\uac00\uc5d0 \ub300\ud55c \uc9c0\ubd88\uc774 \ud3ec\ud568\ub429\ub2c8\ub2e4.\n\xa7 page.team.total.description5: *\uc8fc\ub9d0 \uc791\uc5c5*\uc740 \uc815\uaddc \uc77c\uc758 \uc9c0\ubd88\uc5d0\uc11c \uacc4\uc218 2 \ubc30\uc5d0 \uc758\ud574 \uacc4\uc0b0\ub429\ub2c8\ub2e4. \uc774 \ub9e5\ub77d\uc5d0\uc11c \ucc98\ub9ac \uc0ac\uc2e4 \uc790\uccb4\uac00 \ud765\ubbf8\ub86d\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc704\uc5d0 \ud45c\uc2dc\ub41c \uac83\uc740 \ucd08\uacfc \uc9c0\ubd88(1 \ubc30)\uc785\ub2c8\ub2e4. \uc6b0\ub9ac\ub294 \uc608\uc0b0 \uc5f0\uc18c \uc18d\ub3c4\ub97c \ubcf4\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \uc6b0\ub9ac\ub294 \uc791\uc5c5 \uc18d\ub3c4\ub97c \ub192\uc77c \ub54c \ucd08\uacfc \uc9c0\ubd88\uc744 \ucc3e\uace0 \uc788\uc2b5\ub2c8\ub2e4.\n\xa7 page.team.tree.title: \uc120\ud0dd\ud55c \ud544\ud130\ub97c \uace0\ub824\ud558\uc5ec \ud504\ub85c\uc81d\ud2b8 \ud2b8\ub9ac\n\xa7 page.team.tree.filters.author: \uc9c1\uc6d0\n\xa7 page.team.tree.filters.commits: \ucee4\ubc0b \uc218\n\xa7 page.team.tree.filters.help: \uc9c1\uc6d0\uc774 \ud30c\uc77c\uc5d0\uc11c \uc218\ud589\ud55c \ucd5c\uc18c \ucee4\ubc0b \uc218\uc785\ub2c8\ub2e4\n\xa7 page.team.tree.filters.all: \ubaa8\ub4e0 \uc9c1\uc6d0\n\xa7 page.team.tree.totalLines: \ub77c\uc778\n\xa7 page.team.tree.totalTasks: \uc791\uc5c5\n\xa7 page.team.tree.totalDays: \uc77c\n\xa7 page.team.tree.tasks: \uc791\uc5c5\n\xa7 page.team.tree.days: \uc77c\n\xa7 page.team.tree.add: \ub204\uac00 \ucd94\uac00 \ud588\uc2b5\ub2c8\uae4c\n\xa7 page.team.tree.change: \ub204\uac00 \uadf8\uac83\uc744 \ubcc0\uacbd\n\xa7 page.team.tree.remove: \ub204\uac00 \uadf8\uac83\uc744 \uc0ad\uc81c \ud588\uc2b5\ub2c8\uae4c\n\xa7 page.team.tree.line: \ub77c\uc778\n\xa7 page.team.tree.linesAdded: \ucd94\uac00\n\xa7 page.team.tree.linesChanged: \ubcc0\uacbd\n\xa7 page.team.tree.linesRemoved: \uc0ad\uc81c\n\xa7 page.team.company.title: \uc138\ubd80 \uc815\ubcf4\n\xa7 page.team.company.employments.title: \uc22b\uc790\ub85c\n\xa7 page.team.company.employments.item: \uc9c1\uc6d0\uc758\n\xa7 page.team.company.daysChart.title: \uae30\uac04\uc5d0 \ub530\ub77c\n\xa7 page.team.company.daysChart.item: \ud68c\uc0ac\uc758 \uacc4\uc57d\n\xa7 page.team.company.active.yes: ,\n\xa7 page.team.company.active.no: \uacc4\uc57d\uc774 \ub9cc\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4.\n\xa7 page.team.country.byTimezone: \ub9c8\uc9c0\ub9c9 \ucee4\ubc0b \uc2dc\uac04\uae4c\uc9c0\n\xa7 page.team.country.filters.active: \uadf8\ub4e4\uc740 \uc791\ub3d9\n\xa7 page.team.country.filters.dismissed: \ud574\uace0\n\xa7 page.team.country.filters.staff: \ubcf4\uc870\uc6d0\n\xa7 page.team.country.pieByDomain.title: \uc6b0\ud3b8,\uc2dc\uac04 \ubc0f \uc5b8\uc5b4\ub85c\n\xa7 page.team.country.pieByTimezone.title: \uc5d0 \uc758\ud574\n\xa7 page.team.country.chart.item: \uc9c1\uc6d0 \uc2dc\uac04\n\xa7 page.team.country.table.title: \uc9c1\uc6d0 \ubaa9\ub85d\n\xa7 page.team.country.table.country: \uc704\uce58\n\xa7 page.team.country.table.employments: \uc9c1\uc6d0\n\xa7 page.team.country.travel.title: \ube44\uc988\ub2c8\uc2a4 \uc5ec\ud589(\ub610\ub294 \ub9ac\ubca0\uc774\uc2a4)\n\xa7 page.team.country.travel.author: \uc9c1\uc6d0\n\xa7 page.team.country.travel.fly: \ud56d\uacf5\ud3b8 \uc218\n\xa7 page.team.country.travel.path: \uc704\uce58 \ubaa9\ub85d\n\xa7 page.team.country.travel.date: \ube44\ud589 \ub0a0\uc9dc\n\xa7 page.team.country.travel.country: \uc704\uce58\n\xa7 page.team.refactor.title: \ub9ac\ud329\ud1a0\ub9c1 \ud6c4\ubcf4\n\xa7 page.team.refactor.lines: \xa7 page.team.refactor.lines: \u0441\u0442\u0440\u043e\u043a\n\xa7 page.team.refactor.tasks: \uc791\uc5c5 \ub77c\uc778\n\xa7 page.team.refactor.days: \uc77c\n\xa7 page.team.refactor.path: \ubc29\ubc95\n\xa7 page.team.refactor.firstCommit: \uccab \ubc88\uc9f8 \ucee4\ubc0b\n\xa7 page.team.refactor.totalLines: \ub77c\uc778\n\xa7 page.team.refactor.totalTasks: \uc791\uc5c5\n\xa7 page.team.refactor.totalDays: \uac1c\ubc1c \uc77c\n\xa7 page.team.day.commits: \ucee4\ubc0b\n\xa7 page.team.day.activity: \ud65c\ub3d9\n\xa7 page.team.week.title: \uc8fc\ubcc4 \ud1b5\uacc4\n\xa7 page.team.week.date: \ub0a0\uc9dc\n\xa7 page.team.week.numberTasks: \uc791\uc5c5 \uc218\n\xa7 page.team.week.people: \uc0ac\ub78c \uc218\n\xa7 page.team.week.line: \ub77c\uc778 \ubcc0\uacbd\n\xa7 page.team.week.days: \ucee4\ubc0b\uc774 \uc788\ub294 \ub0a0\uacfc \uc5c6\ub294 \ub0a0\n\xa7 page.team.week.lossesDetails: \ucee4\ubc0b\ud558\uc9c0 \uc54a\uc740 \uc0ac\ub78c\n\xa7 page.team.week.add: \ucd94\uac00\n\xa7 page.team.week.change: \ubcc0\uacbd\n\xa7 page.team.week.remove: \uc0ad\uc81c\n\xa7 page.team.week.hasCommits: \ucee4\ubc0b\uc774 \uc788\uc5c8\ub2e4\n\xa7 page.team.week.hasNotCommits: ,\ucee4\ubc0b\uc774 \uc5c6\uc5c8\uc2b5\ub2c8\ub2e4\n\xa7 page.team.week.days: \uc77c\n\xa7 page.team.week.tasks: \uc791\uc5c5\n\xa7 page.team.pr.task: \uc791\uc5c5\n\xa7 page.team.pr.tasks: \uc791\uc5c5\n\xa7 page.team.pr.firstCommitTime: \uccab \ubc88\uc9f8 \ucee4\ubc0b\n\xa7 page.team.pr.lastCommitTime: \ub9c8\uc9c0\ub9c9\n\xa7 page.team.pr.workDays: \uc791\uc5c5 \uc791\uc5c5\uc5d0 \uc18c\uc694\ub41c \ud3c9\uade0 \uc2dc\uac04\n\xa7 page.team.pr.delayDays: \ud3c9\uade0 \ud64d\ubcf4 \uac80\ud1a0 \uc2dc\uac04\n\xa7 page.team.pr.all.workDays: \uc791\uc5c5 \uc791\uc5c5\uc5d0 \uc18c\uc694\ub41c \uc2dc\uac04\n\xa7 page.team.pr.all.delayDays: \ud64d\ubcf4 \uac80\ud1a0 \uc2dc\uac04\n\xa7 page.team.pr.middleTimeRelease: \uac80\ud1a0 \ud560 \uac1c\ubc1c \uc2dc\uac04\uc758 \ube44\uc728\n\xa7 page.team.pr.chart.1day: \uc2dc\uac04\uc740 \ud558\ub8e8\n\xa7 page.team.pr.chart.3day: 3 \uc77c\n\xa7 page.team.pr.chart.7day: \ud55c \uc8fc\n\xa7 page.team.pr.chart.14day: 2 \uc8fc\n\xa7 page.team.pr.chart.30day: \ud55c \ub2ec\n\xa7 page.team.pr.chart.more: \ub354 \ubcf4\uae30\n\xa7 page.team.pr.date: \uc8fc\uc785 \ub0a0\uc9dc\n\xa7 page.team.pr.mergeAuthor: \ub098\ub294 \uadf8\uac83\uc744 \ubd80\uc5b4\n\xa7 page.team.pr.author: \uc9c1\uc6d0\n\xa7 page.team.pr.work: \uac1c\ubc1c\n\xa7 page.team.pr.delay: \ub300\uae30 \uc911\n\xa7 page.team.pr.days: \uc77c\n\xa7 page.team.pr.oneTaskDays: \ud55c \uc791\uc5c5\uc5d0 \uc18c\uc694 \ub41c \uc2dc\uac04\n\xa7 page.team.pr.description1: *\uac1c\ubc1c \uc2dc\uac04*\uc774 \uc791\uc5c5\uc740 \uc791\uc5c5\uc758 \uccab \ubc88\uc9f8 \ucee4\ubc0b\uc5d0\uc11c \ub9c8\uc9c0\ub9c9 \ucee4\ubc0b\uae4c\uc9c0\uc758 \uc2dc\uac04 \ucc28\uc774\uc785\ub2c8\ub2e4. \ucee4\ubc0b \uc0ac\uc774\uc5d0 \uba70\uce60\uc758 \ud734\uc2dd \uc2dc\uac04\uc774 \uc788\uc5c8\ub294\uc9c0 \uc5ec\ubd80\ub294 \uc911\uc694\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \ubaa8\ub4e0 \ucee4\ubc0b\uc758 \ubc14\ub85c \uadf8 \uc0ac\uc2e4\uc740 \uc2dc\uac04\uc744 \uc99d\uac00\uc2dc\ud0b5\ub2c8\ub2e4.\n\xa7 page.team.pr.description2: *\ub300\uae30 \uc2dc\uac04*\ub9c8\uc9c0\ub9c9 \ucee4\ubc0b\uacfc \ucf54\ub4dc \uc8fc\uc785 \uc0ac\uc774\uc758 \uc2dc\uac04\uc785\ub2c8\ub2e4. \uadf8\uac83\uc740 \ubb34\uc5b8\uac00\ub97c \uae30\ub2e4\ub9ac\ub294 \uc2e4\uc81c \uc720\ud734 \uc0c1\ud0dc\ub97c \ubcf4\uc5ec\uc90d\ub2c8\ub2e4.\n\xa7 page.team.pr.description3: *\uac1c\ubc1c \uc2dc\uac04\uc744 \ud45c\uc2dc\ud558\ub294 \uc774\uc720*\ucf54\ub529 \ubc0f \ucf54\ub4dc \uac80\ud1a0\ub85c \ubd84\ud574\ud558\uc9c0 \uc54a\uace0? \uadf8\ub7f0 \ub2e4\uc74c,\ube44\uc988\ub2c8\uc2a4 \ucf54\ub4dc\uc758 \uc2e4\uc81c \ubc30\ub2ec \uc2dc\uac04\uc744 \ud45c\uc2dc\ud569\ub2c8\ub2e4. \ud14c\uc2a4\ud2b8\uc758 \uae30\ub300,\uac80\ud1a0\uc5d0 \ub300\ud55c \uc758\uacac,\uac1c\ubc1c \uc6b4\uc601 \ubb38\uc81c \ubc0f \ud504\ub85c\uc138\uc2a4\uc758 \ub2e4\ub978 \uacb0\ud568\uc740 \uc774\ubbf8\uc774 \uae30\uac04\uc5d0 \uaddc\uc815\ub418\uc5b4\uc788\ub2e4.\n\xa7 page.team.pr.statByAuthors: \uc9c1\uc6d0 \ud1b5\uacc4\n\xa7 page.team.pr.longDelay: \uc8fc\uc785\uc5d0 \ub300\ud55c \uae34 \ub300\uae30\n\xa7 page.team.pr.anonymous: \ubb38\uc81c \ubc88\ud638\uac00\uc5c6\ub294 \ud64d\ubcf4\n\xa7 page.team.pr.branch: \uc9c0\uc810\n\xa7 page.team.tasks.task: \uc791\uc5c5\n\xa7 page.team.tasks.author: \uccab \ubc88\uc9f8 \ucee4\ubc0b\uc758 \uc800\uc790\n\xa7 page.team.tasks.from: \uccab \ubc88\uc9f8 \ucee4\ubc0b\n\xa7 page.team.tasks.to: \ub9c8\uc9c0\ub9c9 \ucee4\ubc0b\n\xa7 page.team.tasks.daysInWork: \uc77c \uc758 \ub0a0\n\xa7 page.team.tasks.comments: \ub313\uae00\n\xa7 page.team.extension.extension: \ud30c\uc77c \ud655\uc7a5\uc790\n\xa7 page.team.extension.type: \ud30c\uc77c \ud558\uc704 \uc720\ud615\n\xa7 page.team.extension.name: \uc720\ud615\n\xa7 page.team.extension.path: \uacbd\ub85c\n\xa7 page.team.extension.current.count: \uc218\ub7c9\n\xa7 page.team.extension.removed.count: \uc0ad\uc81c\ub41c \uc218\n\xa7 page.team.extension.files: \ud30c\uc77c\n\xa7 page.team.release.download: \ub2e4\uc6b4\ub85c\ub4dc\n\xa7 page.team.release.title: \ub9b4\ub9ac\uc2a4\n\xa7 page.team.release.from: \uc0dd\uc131 \ub0a0\uc9dc\n\xa7 page.team.release.to: \uc644\ub8cc \ub0a0\uc9dc\n\xa7 page.team.release.prLength: \uc791\uc5c5\n\xa7 page.team.release.delay: \uc791\uc5c5 \uc77c\n\xa7 page.team.release.waiting: \ub2e4\uc74c \ub9b4\ub9ac\uc2a4 \uba70\uce60 \uc804\n\xa7 page.team.department.employments.title: The size of the current teams\n\xa7 page.team.department.employments.item: of teams\n\xa7 page.team.author.employments.less1: one employee\n\xa7 page.team.author.employments.less2: two employees\n\xa7 page.team.author.employments.less3: three employees\n\xa7 page.team.author.employments.less6: up to six employees\n\xa7 page.team.author.employments.less9: up to nine employees\n\xa7 page.team.author.employments.less12: up to 12 employees\n\xa7 page.team.author.employments.less15: up to 15 employees\n\xa7 page.team.author.employments.more: more than 15\n\xa7 page.team.department.daysChart.title: Duration of the project\n\xa7 page.team.department.daysChart.item: projects\n\xa7 page.team.department.title: List of projects\n\xa7 page.team.department.code: Code\n\xa7 page.team.department.from: First commit\n\xa7 page.team.department.to: Last\n\xa7 page.team.department.authors: employees\n\xa7 page.team.department.tasks: tasks\n\xa7 page.team.department.totalDays: Working days\n\xa7 page.team.department.totalAuthors: Number of employees\n\xa7 page.person.print.photo.title: \uc0ac\uc9c4\n\xa7 page.person.print.photo.description: \uc0ac\uc9c4 \ucd2c\uc601 \uc7a5\uc18c\n\xa7 page.person.total.title: \uc8fc\uc694 \ud2b9\uc9d5\n\xa7 page.person.total.daysWorked.title: \uc791\uc5c5 \uc77c\uc758\n\xa7 page.person.total.daysWorked.description: \ub9cc \ucee4\ubc0b\ud558\ub294 \uc77c\n\xa7 page.person.total.tasks.title: \uace0\ub824\ub418\uc5c8\ub2e4\n\xa7 page.person.total.tasks.description: \ucee4\ubc0b\uc774 \uc62c\ubc14\ub974\uac8c \uc11c\uba85 \ub41c \uacbd\uc6b0\n\xa7 page.person.scoring.toolbar: \uc774 \uba54\ud2b8\ub9ad\uc5d0 \ub530\ub978 \uc704\uce58,\ub2e4\ub978 \uba54\ud2b8\ub9ad\uc5d0 \ub300\ud55c \uc0c1\ub300. \uac12\uc774 \ub3d9\uc77c\ud55c \uacbd\uc6b0 \ub450 \uba85\uc758 \uc9c1\uc6d0\uc774 \ud55c \uc790\ub9ac\ub97c \ucc28\uc9c0\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub530\ub77c\uc11c \ucd1d \uc7a5\uc18c \uc218\ub294 \uc9c1\uc6d0 \uc218\ubcf4\ub2e4 \uc801\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n\xa7 page.person.character.title: \uce90\ub9ad\ud130\n\xa7 page.person.achievement.title: \uc9c4\ud589\n\xa7 page.person.achievement.positive: \uae0d\uc815\uc801 \uc778\n\xa7 page.person.achievement.normal: \uc911\ub9bd\n\xa7 page.person.achievement.negative: \ubd80\uc815\n\xa7 page.person.achievement.description: \uc9c1\uc6d0\uc774 \ub354 \ub9ce\uc740 \ubd80\uc815\uc801\uc778 \uc5c5\uc801\uc744 \ub2ec\uc131\ud560\uc218\ub85d \uc0c1\ud669\uc774 \ube44\ud45c\uc900\uc77c \uac00\ub2a5\uc131\uc774 \ub192\uc544\uc9d1\ub2c8\ub2e4. \uc791\ub3d9 \ubaa8\ub4dc,\uc791\uc5c5 \ub610\ub294\ubcf4\uace0 \ubaa8\ub4dc\ub97c \ubcc0\uacbd\ud560 \uac00\uce58\uac00 \uc788\uc2b5\ub2c8\ub2e4. \ub2f9\uc2e0\uc740 \uadf8\uc5d0\uac8c \uc774\uc57c\uae30\ud558\uace0 \uadf8\uc758 \uc77c\uc744 \ubc29\ud574\ud558\ub294 \ubb38\uc81c\uac00 \ubb34\uc5c7\uc778\uc9c0 \uc54c\uc544 \ub0b4\uc57c\ud569\ub2c8\ub2e4.\n\xa7 page.person.gets.title: \uc791\uc5c5 \ubc88\ud638 \uba54\ub2ec:\n\xa7 page.person.gets.description: \uba54\ub2ec\uc740 \uc0ac\uc6a9\uc790\uac00"\uc544\ub984\ub2e4\uc6b4"\ubc88\ud638\ub85c \uc791\uc5c5\uc5d0 \ub300\ud55c \uc57d\uc18d\uc744 \uac00\uc7a5 \uba3c\uc800 \ub0a8\uae30\uba74 \uc218\uc5ec\ub429\ub2c8\ub2e4.\n\xa7 page.person.business.days.title: \uc791\uc5c5 \uc77c\n\xa7 page.person.business.days.description: \ub9cc \ucee4\ubc0b\ud558\ub294 \uc77c\n\xa7 page.person.business.tasks.title: \uace0\ub824\ub418\uc5c8\ub2e4\n\xa7 page.person.business.tasks.description: \ucee4\ubc0b\uc774 \uc62c\ubc14\ub974\uac8c \uc11c\uba85 \ub41c \uacbd\uc6b0\n\xa7 page.person.business.losses.title: ,\ucee4\ubc0b\uc774\uc5c6\ub294 \uc77c\n\xa7 page.person.business.losses.description: \ubaa8\ub4e0 \uc77c \ube7c\uae30:\ud734\uc77c,\uc8fc\ub9d0,\ud734\uac00,\ucee4\ubc0b \uc77c\n\xa7 page.person.business.commits.title: \ucee4\ubc0b\n\xa7 page.person.business.commits.description: \uc0ad\uc81c\ub41c \ubd84\uae30\ub294 \ud3ec\ud568\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4\n\xa7 page.person.business.time.description: \uccab \ubc88\uc9f8 \ucee4\ubc0b\ubd80\ud130 \ub9c8\uc9c0\ub9c9 \ucee4\ubc0b\uae4c\uc9c0\uc758 \uc2dc\uac04(\ube44 \uc791\uc5c5 \uc77c \ud3ec\ud568)\n\xa7 page.person.business.time.title: \ud504\ub85c\uc81d\ud2b8 \uc77c:\n\xa7 page.person.business.time.dismissed: (\ud574\uace0)\n\xa7 page.person.business.time.staff: (\uc870\uc218)\n\xa7 page.person.business.achievements: \uc5c5\uc801\n\xa7 page.person.changes.title: \uc9c4\ud589\n\xa7 page.person.changes.description:\n\uc77c\ubd80 \uc720\ud615\uc758 \uc11c\uc2dd\uc744 \uc0ac\uc6a9\ud558\uba74 \ubb38\uc790\uc5f4\uc744"\uc0ad\uc81c\ub428"\ubc0f"\ucd94\uac00\ub428"\uc73c\ub85c \ud45c\uc2dc\ud569\ub2c8\ub2e4.,\n\uc0ac\uc2e4 \uadf8\ub4e4\uc740"\ubcc0\uacbd"\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \ub530\ub77c\uc11c \ub9ac\ud329\ud1a0\ub9c1\uc744 \ub9ce\uc774 \ud55c \uacbd\uc6b0,\n\ud798\ub0b4\ub294 \ud1b5\uacc4\uc758 \ubcc0\ud654\uc758 \uc791\uc740 \uc22b\uc790,\uc2e4\uc81c \uacb0\uacfc\ub97c \ud45c\uc2dc \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4\n"\uc0ad\uc81c\ub428"\ubc0f"\ucd94\uac00\ub428"\ud589\uc758 \uc810\ud504\ub85c \ud45c\uc2dc\ub429\ub2c8\ub2e4.\n\xa7 page.person.changes.description: \uadf8 \ub0a0\uc758 \ucee4\ubc0b \ubaa9\ub85d\uacfc \ubcc0\uacbd \ud69f\uc218:\n\xa7 page.person.commits.title: \ucee4\ubc0b \ubaa9\ub85d:\n\xa7 page.person.money.title.total: \ubaa8\ub4e0 \uc2dc\uac04 \ub3d9\uc548\n\xa7 page.person.money.title.middle: \ud3c9\uade0 \ube44\uc6a9\n\xa7 page.person.money.moneyAll.title: \uc218\uc2e0\n\xa7 page.person.money.moneyAll.description: \ud504\ub85c\uc81d\ud2b8\uc5d0\uc11c \ud3ec\uc758 \uc608\uc0c1 \uae08\uc561(\uc124\uc815 \ucc38\uc870)\n\xa7 page.person.money.moneyWorked.title: \ubc16\uc73c\ub85c \uc77c\n\xa7 page.person.money.moneyWorked.description: \uc2e4\uc81c \uc77c \ud3c9\uade0 \ud3ec\ub97c \uacf1\ud55c \uc77c\n\xa7 page.person.money.moneyLosses.title: \uac00\ub2a5\ud55c \ucd08\uacfc \uc9c0\ubd88\n\xa7 page.person.money.moneyLosses.description: \ucee4\ubc0b\uc774 \uc5c6\ub294 \uc77c\uc5d0 \ud3c9\uade0 \ud3ec\ub97c \uacf1\ud55c \uac12\n\xa7 page.person.money.tasks.title: \uc791\uc5c5\n\xa7 page.person.money.tasks.description: \ube44\uc6a9\uc5d0 \ub300\ud55c \ub2eb\ud78c \uc791\uc5c5 \uc218\n\xa7 page.person.money.commits.title: \uc57d\uc18d\uc758 \ub0a0\n\xa7 page.person.money.commits.description: \uc791\uc5c5 \uc77c \ube44\uc6a9\uc5d0 \ub300\ud55c \ucee4\ubc0b \uc218\n\xa7 page.person.speed.task: \ud3c9\uade0\uc801\uc73c\ub85c \ud55c \uac00\uc9c0 \uacfc\uc81c\ub294\n\xa7 page.person.speed.max: \ud558\ub8e8 \ucd5c\ub300 \uc18d\ub3c4\n\xa7 page.person.speed.days.title: \uc77c\n\xa7 page.person.speed.days.description: \uc774\ub294 \ucee4\ubc0b\uc774 \uc62c\ubc14\ub974\uac8c \uc11c\uba85 \ub41c \uacbd\uc6b0 \uc791\uc5c5 \uc77c\uc744 \uc758\ubbf8\ud569\ub2c8\ub2e4.\n\xa7 page.person.speed.commits.title: \ucee4\ubc0b\n\xa7 page.person.speed.commits.description: \ucd5c\ub300 \ubc0f \ucd5c\uc18c\uac12\uc758 10%\n\xa7 page.person.speed.line.title: \ucf54\ub4dc \ub77c\uc778\uc774 \ucc28\ub2e8\ub418\uc5c8\uc2b5\ub2c8\ub2e4\n\xa7 page.person.speed.line.description: \ucd5c\ub300 \ubc0f \ucd5c\uc18c\uc758 10%\n\xa7 page.person.speed.tasks.title: \uc791\uc5c5 \uac12\uc774 \ucc28\ub2e8\ub418\uc5c8\uc2b5\ub2c8\ub2e4\n\xa7 page.person.speed.tasks.description: \uc791\uc5c5\uc774 \uc644\ub8cc\ub418\uc9c0 \uc54a\uc744 \uc218 \uc788\uc9c0\ub9cc \uc791\uc5c5\uc774 \uc644\ub8cc\ub418\uc5b4\uc57c \ud569\ub2c8\ub2e4\n\xa7 page.person.speed.maxCommits.title: \ucee4\ubc0b\n\xa7 page.person.speed.maxCommits.description: \uc791\uc5c5\uc774 \uc644\ub8cc\ub418\uc9c0 \uc54a\uc744 \uc218 \uc788\uc9c0\ub9cc \uc791\uc5c5\uc774 \uc644\ub8cc\ub418\uc5b4\uc57c \ud569\ub2c8\ub2e4\n\xa7 page.person.hours.title: \uac01 \uc694\uc77c \ub3d9\uc548\uc758 \ucee4\ubc0b \ubc30\ud3ec\n\xa7 page.person.week.date: \ub0a0\uc9dc\n\xa7 page.person.week.tasks: \uc791\uc5c5 \uc218\n\xa7 page.person.week.workDays: \ucee4\ubc0b\uc774 \uc788\ub294 \uc77c\n\xa7 page.person.week.taskInDay: \uc77c\uc77c \uc791\uc5c5\n\xa7 page.person.week.days: \uc77c\n\xa7 page.person.week.workDay: \ud3c9\uc77c\n\xa7 page.person.week.weekends: \uc8fc\ub9d0\n\xa7 page.sponsor.title: \ud504\ub85c\uc81d\ud2b8 \uc9c0\uc6d0\n\xa7 page.sponsor.share.description: \uc18c\uc15c \ub124\ud2b8\uc6cc\ud06c\uc5d0\uc11c \uc6b0\ub9ac\uc758[\ud504\ub85c\uc81d\ud2b8|<url>/\ubc14\ud0a4\ub808\ud504/\uc544\uc0ac\uc694]\uc5d0 \ub300\ud574 \uc54c\ub824\uc8fc\uc138\uc694! \uc774 \uc751\uc6a9 \ud504\ub85c\uadf8\ub7a8\uc740 \ub2f9\uc2e0\uc774 \ub2f9\uc2e0\uc758 \ub9c8\uc74c\uc5d0 \ub4dc\ub294 \uc0ac\uc9c4\uc744 \uacf5\uc720 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4,\ub2f9\uc2e0\uc740 \ub2f9\uc2e0\uc758 \ub9c8\uc74c\uc5d0 \ub4dc\ub294 \uc0ac\uc9c4\uc5d0 \ud14d\uc2a4\ud2b8\ub97c \ucd94\uac00 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4,\ub2f9\uc2e0\uc740 \ub2f9\uc2e0\uc758 \ub9c8\uc74c\uc5d0 \ub4dc\ub294 \uc0ac\uc9c4\uc5d0 \ud14d\uc2a4\ud2b8\ub97c \ucd94\uac00 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4,\ub2f9\uc2e0\uc740 \ub2f9\uc2e0\uc758 \ub9c8\uc74c\uc5d0 \ub4dc\ub294 \uc0ac\uc9c4\uc5d0 \ud14d\uc2a4\ud2b8\ub97c \ucd94\uac00 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4,\ub2f9\uc2e0\uc740 \ub2f9\uc2e0\uc758 \ub9c8\uc74c\uc5d0 \ub4dc\ub294 \uc0ac\uc9c4\uc5d0 \ud14d\uc2a4\ud2b8\ub97c \ucd94\uac00 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4,\ub2f9\uc2e0\uc740 \uc0ac\uc9c4\uc5d0 \ud14d\uc2a4\ud2b8\ub97c \ucd94\uac00 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4,\ub2f9\uc2e0\uc740 \uc0ac\uc9c4\uc5d0 \ud14d\uc2a4\ud2b8\ub97c \ucd94\uac00 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4,\ub2f9\uc2e0\uc740 \uc0ac\uc9c4\uc5d0 \ud14d\uc2a4\ud2b8\ub97c \ucd94\uac00 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4,\ub2f9\uc2e0\uc740 \uc0ac\uc9c4\uc5d0 \ud14d\uc2a4\ud2b8\ub97c \ucd94\uac00 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4,\ub2f9\uc2e0\uc740 \uc0ac\uc9c4\uc5d0 \ud14d\uc2a4\ud2b8\ub97c \ucd94\uac00 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4,\ub2f9\uc2e0\uc740 \uc0ac\uc9c4\uc5d0 \ud14d\uc2a4\ud2b8\ub97c \ucd94\uac00 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4,\ub2f9\uc2e0\uc740 \uc0ac\uc9c4\uc5d0 \ud14d\uc2a4\ud2b8\ub97c \ucd94\uac00 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4,\ub2f9\uc2e0\uc740 \uc0ac\uc9c4\uc5d0 \ud14d\uc2a4\ud2b8\ub97c \ucd94\uac00 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4,\ub2f9\uc2e0\uc740 \uc0ac\uc9c4\uc5d0 \ud14d\uc2a4\ud2b8\ub97c \ucd94\uac00 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4,\ub2f9\uc2e0\uc740 \uc0ac\uc9c4\uc5d0 \ud14d\uc2a4\ud2b8\ub97c \ucd94\uac00 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4,\ub2f9\uc2e0\uc740 \uc0ac\uc9c4\uc5d0 \ud14d\uc2a4\ud2b8\ub97c \ucd94\uac00 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4,\ub2f9\uc2e0\uc740 \uc0ac\uc9c4\uc5d0 \ud14d\uc2a4\ud2b8\ub97c \ucd94\uac00 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4,\ub2f9\uc2e0\uc740\n\xa7 page.sponsor.share.button: \ub9c1\ud06c \ubcf5\uc0ac\n\xa7 page.sponsor.money.description: \ub2f9\uc2e0\uc774 \uc5b4\ub5a4 \uae08\uc561\uc73c\ub85c \uc6b0\ub9ac\ub97c \uc9c0\uc6d0\ud558\ub294 \uacbd\uc6b0 \uc6b0\ub9ac\ub294 \uae30\uc060 \uac83\uc774\ub2e4! \ubaa8\ub4e0 \uc790\uae08\uc740 \ud504\ub85c\uc81d\ud2b8\uc758 \ucd94\uac00 \uac1c\ubc1c\uc5d0 \uc0ac\uc6a9\ub420 \uac83\uc785\ub2c8\ub2e4.\n\xa7 page.sponsor.money.qr: 1 \ud68c \uacb0\uc81c\n\xa7 page.sponsor.money.github: \uae43 \ud5c8\ube0c \uc2a4\ud3f0\uc11c \uad6c\ub3c5\n'].join(""),Oe=["\n\xa7 achievements.commitsAfter1500.title: Owl\n\xa7 achievements.commitsAfter1500.description: 70% of commits after 3:00 PM\n\xa7 achievements.commitsBefore1500.title: Early bird\n\xa7 achievements.commitsBefore1500.description: 70% of commits before noon\n\xa7 achievements.workEveryTime.title: Devoted worker\n\xa7 achievements.workEveryTime.description: a commit for every hour of the day\n\xa7 achievements.workNotWork.title: Shooting blanks\n\xa7 achievements.workNotWork.description: commits are there, but no tasks are closed\n\xa7 achievements.userNotWork.title: Fly-by\n\xa7 achievements.userNotWork.description: this is not their main project\n\xa7 achievements.userIsDied.title: Dead soul\n\xa7 achievements.userIsDied.description: worked, but resigned\n\xa7 achievements.lessTasks.title: Came and went\n\xa7 achievements.lessTasks.description: least closed tasks\n\xa7 achievements.moreTasks.title: Father says well done\n\xa7 achievements.moreTasks.description: most closed tasks\n\xa7 achievements.everyMessageLong.title: Master of eloquence\n\xa7 achievements.everyMessageLong.description: consistently the longest commit messages\n\xa7 achievements.everyMessageShort.title: Talkative, a spy's dream\n\xa7 achievements.everyMessageShort.description: consistently, the shortest commit messages\n\xa7 achievements.shortestName.title: Size doesn't matter\n\xa7 achievements.shortestName.description: shortest name\n\xa7 achievements.longestName.title: Azim Aziz Il Am Kadir Imran II\n\xa7 achievements.longestName.description: longest name\n\xa7 achievements.moreCommits.title: Backup master\n\xa7 achievements.moreCommits.description: most commits\n\xa7 achievements.lessCommits.title: Rare but Precise\n\xa7 achievements.lessCommits.description: least commits\n\xa7 achievements.oneCommitOneTask.title: Right on target\n\xa7 achievements.oneCommitOneTask.description: on average one commit per task\n\xa7 achievements.moreLazyDays.title: With you in spirit\n\xa7 achievements.moreLazyDays.description: most days without commits\n\xa7 achievements.lessLazyDays.title: Papa carlo\n\xa7 achievements.lessLazyDays.description: least days without commits\n\xa7 achievements.zeroLazyDays.title: Not a single break\n\xa7 achievements.zeroLazyDays.description: not a single day without commits\n\xa7 achievements.moreWorkDays.title: Valuable employee\n\xa7 achievements.moreWorkDays.description: most working days\n\xa7 achievements.moreScopes.title: Startuper\n\xa7 achievements.moreScopes.description: completed the most features\n\xa7 achievements.lessScopes.title: Dandy\n\xa7 achievements.lessScopes.description: completed the fewest features\n\xa7 achievements.moreDaysForTask.title: Snail on the slope\n\xa7 achievements.moreDaysForTask.description: tasks take longer than others\n\xa7 achievements.more2DaysForTask.title: Slow and steady\n\xa7 achievements.more2DaysForTask.description: more than two days per task\n\xa7 achievements.moreDaysInProject.title: Old-timer\n\xa7 achievements.moreDaysInProject.description: most days in the project\n\xa7 achievements.lessDaysInProject.title: And who is this?\n\xa7 achievements.lessDaysInProject.description: least days in the project\n\xa7 achievements.more90DaysInProject.title: Welcome aboard\n\xa7 achievements.more90DaysInProject.description: not fired during the probation period\n\xa7 achievements.lessDaysForTask.title: Fast shooting\n\xa7 achievements.lessDaysForTask.description: a task takes less than a day\n\xa7 achievements.adam.title: Adam\n\xa7 achievements.adam.description: the first stable employee on the project\n\xa7 achievements.more666DaysInProject.title: Devil\n\xa7 achievements.more666DaysInProject.description: worked 666 days on the project\n\xa7 achievements.more777DaysInProject.title: Las Vegas\n\xa7 achievements.more777DaysInProject.description: worked 777 days on the project\n\xa7 achievements.moreRefactoring.title: Executive editor\n\xa7 achievements.moreRefactoring.description: made the most 'refactoring' tags\n\xa7 achievements.longestMessage.title: So many conversations...\n\xa7 achievements.longestMessage.description: the longest commit message of all time\n\xa7 achievements.moreTasksInDay.title: Speed racer\n\xa7 achievements.moreTasksInDay.description: record for the number of tasks closed in a day\n\xa7 achievements.hasCommitFrom0to7.title: Night watch\n\xa7 achievements.hasCommitFrom0to7.description: a commit for every hour of the night\n\xa7 achievements.noCommitOnDay.title: Technical break\n\xa7 achievements.noCommitOnDay.description: there is a certain hour and day in working time when never commits\n\xa7 achievements.hasCommitEveryTime.title: Died at work\n\xa7 achievements.hasCommitEveryTime.description: a commit for every hour of each day (including weekends)\n\xa7 achievements.commitsAfter1800.title: Business Time\n\xa7 achievements.commitsAfter1800.description: no commits after 6:00 PM\n\xa7 achievements.moreFix.title: Bug hunter\n\xa7 achievements.moreFix.description: most closed bugs\n\xa7 achievements.lessWorkDays.title: Count me out\n\xa7 achievements.lessWorkDays.description: least working days\n\xa7 achievements.moreCreateCode.title: Creator\n\xa7 achievements.moreCreateCode.description: tends to add code more than others\n\xa7 achievements.moreRemoveCode.title: Destroyer\n\xa7 achievements.moreRemoveCode.description: tends to remove code more than others\n\xa7 achievements.moreChangeCode.title: Reformer\n\xa7 achievements.moreChangeCode.description: tends to change code more than others\n\xa7 achievements.moreStyle.title: Fashion police\n\xa7 achievements.moreStyle.description: tends to change CSS more than others\n\xa7 achievements.moreOnHoliday.title: No life\n\xa7 achievements.moreOnHoliday.description: relatively many commits in non-working hours\n\xa7 achievements.morePRMerge.title: Show me your pass\n\xa7 achievements.morePRMerge.description: more often than others, presses the \"Merge\" button for PR\n\xa7 achievements.longWaitPR.title: Tomorrow 100% be merge\n\xa7 achievements.longWaitPR.description: created PR that waited more than a month on the review\n\xa7 achievements.moreLongWaitPR.title: A long time ago in a galaxy far, far away\n\xa7 achievements.moreLongWaitPR.description: created PR that has been waiting for a review the longest\n\xa7 achievements.oneExtension.title: My name is LEGION\n\xa7 achievements.oneExtension.description: only this man works with files of a certain extension\n\xa7 achievements.fileRush.title: Zerg Rush\n\xa7 achievements.fileRush.description: created the most files in the project\n\xa7 achievements.moreLintHint.title: Grammar Nazi\n\xa7 achievements.moreLintHint.description: more than anyone created or changed the code-style rules\n\xa7 achievements.moreReadMe.title: Chronicler\n\xa7 achievements.moreReadMe.description: more than anyone created or modified MD files\n\xa7 achievements.moreDevOps.title: DevOps\n\xa7 achievements.moreDevOps.description: more than anyone created or modified files for CI/CD\n\xa7 achievements.moreTests.title: Tester\n\xa7 achievements.moreTests.description: more than anyone created or modified files for testing\n\xa7 achievements.allRelease.title: Full house\n\xa7 achievements.allRelease.description: there is a release compiled only from his tasks\n\xa7 achievements.firstCommit.title: First come, first served\n\xa7 achievements.firstCommit.description: first commit on the project\n\xa7 achievements.lastCommit.title: I've finished\n\xa7 achievements.lastCommit.description: last commit on the project\n\xa7 achievements.firstLastCommit.title: From beginning to end\n\xa7 achievements.firstLastCommit.description: first and last commit on the project\n\xa7 achievements.longFilePath.title: Deep cellar\n\xa7 achievements.longFilePath.description: the first created the file with the deepest directory\n\xa7 achievements.longFileName.title: Size matters\n\xa7 achievements.longFileName.description: created the file with the longest name\n\xa7 achievements.workOnWeekends.title: Work not walk\n\xa7 achievements.workOnWeekends.description: at least once worked on weekends\n\xa7 achievements.removeCreateFile.title: Dig out the stewardess\n\xa7 achievements.removeCreateFile.description: recover removed file\n\xa7 achievements.renameFile.title: Astana Nur-Sultan Astana\n\xa7 achievements.renameFile.description: rename file and rollback\n\xa7 achievements.longTask.title: Easy task\n\xa7 achievements.longTask.description: worked on task more than three months\n\xa7 achievements.haveNotEmail.title: Mailman\n\xa7 achievements.haveNotEmail.description: empty email field in git config\n\xa7 achievements.moreAddedFolders.title: Director \n\xa7 achievements.moreAddedFolders.description: created the most directories\n\xa7 achievements.horoscope1.title: Mercury Retrograde for Capricorn\n\xa7 achievements.horoscope2.title: Mercury Retrograde for Aquarius\n\xa7 achievements.horoscope3.title: Mercury Retrograde for Pisces\n\xa7 achievements.horoscope4.title: Mercury Retrograde for Aries\n\xa7 achievements.horoscope5.title: Mercury Retrograde for Taurus\n\xa7 achievements.horoscope6.title: Mercury Retrograde for Gemini\n\xa7 achievements.horoscope7.title: Mercury Retrograde for Cancer\n\xa7 achievements.horoscope8.title: Mercury Retrograde for Leo\n\xa7 achievements.horoscope9.title: Mercury Retrograde for Virgo\n\xa7 achievements.horoscope10.title: Mercury Retrograde for Libra\n\xa7 achievements.horoscope11.title: Mercury Retrograde for Scorpio\n\xa7 achievements.horoscope12.title: Mercury Retrograde for Sagittarius\n\xa7 achievements.horoscope1.description: by the month of the first commit\n\xa7 achievements.horoscope2.description: by the month of the first commit\n\xa7 achievements.horoscope3.description: by the month of the first commit\n\xa7 achievements.horoscope4.description: by the month of the first commit\n\xa7 achievements.horoscope5.description: by the month of the first commit\n\xa7 achievements.horoscope6.description: by the month of the first commit\n\xa7 achievements.horoscope7.description: by the month of the first commit\n\xa7 achievements.horoscope8.description: by the month of the first commit\n\xa7 achievements.horoscope9.description: by the month of the first commit\n\xa7 achievements.horoscope10.description: by the month of the first commit\n\xa7 achievements.horoscope11.description: by the month of the first commit\n\xa7 achievements.horoscope12.description: by the month of the first commit\n\xa7 achievements.111.description: test\n","\n\xa7 uiKit.console.button: \u526f\u672c\n\xa7 uiKit.console.notification: \u6587\u672c\u5df2\u88ab\u590d\u5236\n\xa7 uiKit.dataLoader.page: \u9875\u9762\n\xa7 uiKit.dataLoader.size: \u663e\u793a\u7684\n\xa7 uiKit.dataLoader.rows: lines.\n\xa7 uiKit.dataLoader.from: \u4ece\n\xa7 uiKit.dataLoader.all: \u5168\u90e8\u5c55\u793a\n\xa7 uiKit.hoursChart.work: \u6807\u51c6\u5de5\u4f5c\u65f6\u95f4 (\u5e73\u65e507:00\uff5e20:00)\n\xa7 uiKit.hoursChart.weekend: \u5de5\u4f5c\u65e5\u4e4b\u524d/\u4e4b\u540e\u7684\u4f11\u606f\u65e5\u6216\u65f6\u95f4\n\xa7 uiKit.hoursChart.days: \u7279\u5b9a\u65e5\u671f\u548c\u5c0f\u65f6\u5185\u6240\u6709\u65f6\u95f4\u7684\u63d0\u4ea4\u603b\u6570\n\xa7 uiKit.page.remove: \u79fb\u8d70\n\xa7 uiKit.nothingFound.common.title: \u6ca1\u6709\u6216\u4e0d\u8db3\u7684\u6570\u636e\u663e\u793a\n\xa7 uiKit.nothingFound.common.description: \u5982\u679c\u63d0\u4ea4\u4ee5\u8be5\u683c\u5f0f\u7b7e\u540d\uff0c\u7cfb\u7edf\u5c06\u5904\u7406\u66f4\u591a\u6570\u636e [Git commit message convention|https://www.conventionalcommits.org/en/v1.0.0/]. \u6a21\u578b:\n\xa7 uiKit.nothingFound.common.console: \u53d1\u884c\u7f16\u53f7\u7c7b\u522b(\u529f\u80fd): \u89e3\u91ca\u8bf4\u660e\n\xa7 uiKit.nothingFound.common.example: \u4f8b\u5982:\n\xa7 uiKit.nothingFound.staff.title: \u6ca1\u6709\u8fd9\u4e2a\u5458\u5de5\u7684\u6570\u636e\n\xa7 uiKit.nothingFound.staff.description1\n\u4ed6\u4e0d\u6bcf\u5929\u5de5\u4f5c\uff0c\u6240\u4ee5\u83b7\u5f97\u4e86\u201c\u52a9\u7406\u201d\u804c\u52a1\u3002\n\u53ef\u4ee5\u4e0d\u8003\u8651\u5e26\u6709\u8fd9\u79cd\u804c\u79f0\u7684\u5458\u5de5\u7684\u7edf\u8ba1\u6570\u636e\u3002\u4ed6\u7684\u8d21\u732e\u5f88\u5c0f\u3002\n\xa7 uiKit.nothingFound.staff.description2\n\u7cfb\u7edf\u4e0d\u4f1a\u4e3a\u5176\u8ba1\u7b97\u82e5\u5e72\u6307\u6807\u3002\n\u5982\u679c\u8fd9\u662f\u4e00\u4e2a\u9519\u8bef\uff0c\u5e76\u4e14\u9700\u8981\u8003\u8651\u8fd9\u4e2a\u5458\u5de5\u7684\u6570\u636e\uff0c\u8bf7\u8f6c\u5230\u201c\u8bbe\u7f6e\u201d\u90e8\u5206\u5e76\u66f4\u6539\u4ed6\u7684\u7c7b\u578b\u3002\n\xa7 common.title: Git \u7edf\u8ba1\u6570\u5b57\n\xa7 common.filters: \u8fc7\u6ee4\u5668\n\xa7 common.notifications.save: \u5c06\u4fdd\u5b58\u66f4\u6539\n\xa7 common.notifications.setting: \u8bbe\u7f6e\u88ab\u4fdd\u5b58\n\xa7 common.fileLoader.notification: Cant open file $1\n","\n\xa7 sidebar.switch.team: \u4e13\u8d23\u5c0f\u7ec4\n\xa7 sidebar.switch.person: \u96c7\u5458\n\xa7 sidebar.buttons.settings: \u8bbe\u7f6e\n\xa7 sidebar.buttons.print: \u5370\u5237\u4e1a\n\xa7 sidebar.buttons.share: Share\n\xa7 sidebar.buttons.logout: Logout\n\xa7 sidebar.filters.all: \u4e00\u76f4\n\xa7 sidebar.filters.year: \u5e74\u4efd\n\xa7 sidebar.filters.halfYear: \u534a\u5e74\n\xa7 sidebar.filters.month: \u6708\u4efd\n\xa7 sidebar.filters.week: \u5468\n\xa7 sidebar.team.total: \u822c\u8d44\u6599\n\xa7 sidebar.team.scope: \u529f\u80fd\n\xa7 sidebar.team.author: \u5458\u5de5\n\xa7 sidebar.team.type: \u4efb\u52a1\u7c7b\u578b\n\xa7 sidebar.team.pr: \u4ee3\u7801\u6ce8\u5165\n\xa7 sidebar.team.day: \u767d\u5929\n\xa7 sidebar.team.week: \u6309\u661f\u671f\u8ba1\u7b97\n\xa7 sidebar.team.month: \u6309\u6708\u8ba1\u7b97\n\xa7 sidebar.team.tree: \u6587\u4ef6\u5206\u6790\n\xa7 sidebar.team.files: \u6863\u6848\n\xa7 sidebar.team.removedFiles: \u5220\u9664\u7684\u6587\u4ef6\n\xa7 sidebar.team.extension: Extensions\n\xa7 sidebar.team.tasks: \u4efb\u52a1\u5217\u8868\n\xa7 sidebar.team.release: Releases\n\xa7 sidebar.team.hours: \u65f6\u95f4\u8868\n\xa7 sidebar.team.commits: All commits\n\xa7 sidebar.team.changes: \u6240\u6709\u66f4\u6539\n\xa7 sidebar.team.words: \u6d41\u884c\u8bed\n\xa7 sidebar.team.building: \u6d4b\u9a8c\n\xa7 sidebar.team.refactor: Refactoring\n\xa7 sidebar.team.company: Companies\n\xa7 sidebar.team.department: Departments\n\xa7 sidebar.team.country: Locations\n\xa7 sidebar.team.settings: \u8bbe\u7f6e\n\xa7 sidebar.person.total: \u822c\u8d44\u6599\n\xa7 sidebar.person.money: \u5de5\u4f5c\u7684\u6210\u672c\n\xa7 sidebar.person.speed: \u901f\u5ea6\n\xa7 sidebar.person.day: \u767d\u5929\n\xa7 sidebar.person.week: \u6309\u661f\u671f\u8ba1\u7b97\n\xa7 sidebar.person.month: \u6309\u6708\u8ba1\u7b97\n\xa7 sidebar.person.tasks: Tasks\n\xa7 sidebar.person.hours: \u65f6\u95f4\u8868\n\xa7 sidebar.person.commits: All commits\n\xa7 sidebar.person.changes: \u6240\u6709\u66f4\u6539\n\xa7 sidebar.person.words: \u6d41\u884c\u8bed\n\xa7 sidebar.person.settings: \u8bbe\u7f6e\n",'\n\xa7 recommendations.modal.cancel: Ok\n\xa7 recommendations.modal.open: More\n\xa7 recommendations.title\nRecommendations and facts\n\n\xa7 recommendations.timestamp.firstCommit.description\nmade the first commit\n\nDay of the Week: $1\n\n\xa7 recommendations.timestamp.lastCommit.description\nmade the last commit\n\nDay of the Week: $1\n\n\xa7 recommendations.timestamp.common.title: $1 days\n\xa7 recommendations.timestamp.allDays.description: from the first to the last commit (including weekends and holidays).\n\xa7 recommendations.timestamp.lossesDays.description: days without commits, even considering weekends, vacation, and public holidays.\n\xa7 recommendations.timestamp.weekendDays.description\nworking on weekends\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- employees burn out faster;\n\n\xa7 recommendations.timestamp.regularWeekendWord.title: Regular Overtime\n\xa7 recommendations.timestamp.sometimeWeekendWord.title: Occasional overtime\n\xa7 recommendations.timestamp.weekendWord.description\nIt might be advisable to change the project manager, analyst, and architect.\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- the quality of the product is usually low;\n- some employees resign;\n- new errors emerge due to the rush;\n\n# Most likely:\n- deadlines were incorrectly estimated at the beginning;\n- technical specifications are missing;\n- weak analytics;\n- weak architecture (no architect was hired, and the team consists of mid-level developers);\n- started writing code first, then planning;\n- lack of proper processes to understand mistakes;\n\n\xa7 recommendations.timestamp.neverWeekendWord.title: Usually Without Overtime\n\xa7 recommendations.timestamp.neverWeekendWord.description\nBut sometimes it happens.\n\n# Why this is bad:\n- the client pays double the price for work on a weekend day;\n- employees burn out faster;\n\n\xa7 recommendations.scope.parallelism.not.title\nNo parallel work\n\n\xa7 recommendations.scope.parallelism.not.description\nany feature at any given time is done by one person.\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is less than 1.3, we consider that there is usually no parallel work within most features;\n\n# Why this is bad:\n- increases bus factor;\n- employees develop more slowly;\n- difficult to properly check an employee\'s work;\n\n# Why this is good:\n- experts emerge who are deeply immersed in the subject area and can offer more quality solutions;\n- most likely there are no merge conflicts;\n- the project can quickly develop in different directions simultaneously;\n\n\xa7 recommendations.scope.parallelism.has.title\nSome Work Done in Parallel\n\n\xa7 recommendations.scope.parallelism.has.description\nSometimes a feature is worked on simultaneously by several people.\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is from 1.3 to 2.0, we consider that some of the work within different features is sometimes done in parallel;\n\n\xa7 recommendations.scope.parallelism.every.title\nParallel Work\n\n\xa7 recommendations.scope.parallelism.every.description\nany feature at any given time is worked on by several people\n\n# Calculation method:\n- person-days are divided by the actual days for each feature;\n- we find the arithmetic mean;\n- if the result is more than two, we consider that most of the work within different features is usually done in parallel;\n\n\xa7 recommendations.scope.money\nthis is the estimated cost for the work on this project.\n\n# Calculation method:\n- person-days spent on development are multiplied by the individual salaries of the developers;\n\nTo change the salary of each developer for a more accurate total, go to the "Settings" section.\n\n# Is this too much or too little?\nTo answer this question, consider the following:\n- Could a ready-made solution have been purchased for this amount of money?\n- Could a better product have been developed for this amount of money?\n\nIf the answer to both questions is "yes," then perhaps developing from scratch was not worth the money spent.\n \n\xa7 recommendations.scope.bus.everyHasOne.title\nBus factor = 1\n\n\xa7 recommendations.scope.bus.everyHasOne.description\nMost features are deeply understood by only one person.\nIt\'s necessary to rotate people.\n\n# Why this is bad:\n- if employees resign, it will be difficult to continue their work;\n- it\u2019s impossible to control the quality of their code;\n\n# How the sample is chosen:\n- more than 80% of commits in a feature are made by one person;\n- the project has more than 60% of such features;\n\n\xa7 recommendations.scope.bus.oneMaintainer\none person is deeply involved in a feature.\n\n# Why this is bad:\n- if they resign, it will be hard to continue development;\n- the quality of code-review decreases;\n- it\u2019s difficult to parallelize development when needed;\n\n# How the sample is chosen:\n- more than 80% of commits in a feature are made by one person;\n\n\xa7 recommendations.scope.types.process.title\nPoor processes\n\n\xa7 recommendations.scope.types.process.description\nMost features contain one type of task.\n\n\xa7 recommendations.scope.types.one\nfeatures contain one type of task.\n\n\xa7 recommendations.scope.types.common\nIt\'s possible that developers are incorrectly signing commits or the manager is entering the same type of tasks.\n\n# Why this is important:\n- it\'s impossible to hand over support to another team;\n- it\'s impossible to release a "boxed" version;\n- strong dependence on specific developers;\n- a high number of errors and low code quality;\n- potential slowdown in development in the future;\n\n# The manager\'s mistake:\n- viewing the product only from the perspective of a "working demo";\n\n# What should be done:\n- tests;\n- bugs (identified through testing);\n- refactoring (as architecture may change);\n- documentation;\n- style revisions (as a result of focus group feedback);\n\n\xa7 recommendations.scope.plan.title\nDevelop a long-term plan\n\n\xa7 recommendations.scope.plan.description\ntaking architecture into account.\n\nThis plan should immediately focus on the most challenging tasks.\n\n# Why the lack of a plan is bad:\n- employees create a minimally viable version without planning for expansion points. After this, unscalable code is written, which slows down future features;\n\n# The manager\'s mistake:\n- they haven\'t shown how the product will develop further and where the growth points will be;\n\n# How it should be done:\n- a global product development plan is created;\n- a global architecture development plan is created (with developers and DBAs);\n- potential significant changes are discussed upfront at the schematic level;\n\n\xa7 recommendations.scope.cost.title\nEvaluate Investment in a Feature\n\n\xa7 recommendations.scope.cost.description\nin terms of potential profit.\n\nFeatures that are expensive to develop but bring little profit may need to be postponed or even canceled. This will make the project more commercially successful.\n\n\xa7 recommendations.author.lotOfLazy.title: Too little code: $1\n\xa7 recommendations.author.lotOfLazy.description\nShould they be fired?\n\n# Composition: \n- $1;\n\n# Answer the questions:\n- are they a team leader, architect, or analyst?\n- is this their primary project?\n- are there any dependencies on them?\n\n# Why it makes no sense to correct\nThe total costs for the developer are already more than the profit from their work.\nIf we believe that there were no objective hindrances to their work, then the person either does not want to work at all or is working on two projects simultaneously.\nFiring and replacing them with a new employee seems justified from a statistical point of view.\n\n\xa7 recommendations.author.manyLazy.title: Little code: $1\n\xa7 recommendations.author.manyLazy.description\nNeeds to be monitored.\n\n# Composition: \n- $1;\n\n# How the sample is chosen:\n- in test samples, a good programmer writes code for more than 80% of the time;\n- in this case, the indicator is between 60% and 80%;\n\n# How to monitor:\n- break tasks into 1..2 days;\n- ask for a status update every day;\n- ensure tasks are well defined and ready for development;\n- arrange pair programming to check actual speed;\n\n\xa7 recommendations.author.oneTypeMans\nreceives too many monotonous tasks of the same type. Risk of burnout.\n\n# Why this is important:\n- if an employee burns out, their work speed will decrease;\n- professional growth slows down;\n- the likelihood of resignation increases;\n\n# How the sample is chosen:\n- the type of task is determined for each commit;\n- if more than 70% of tasks are of the same type, it means the person is doing the same thing repeatedly;\n\n\xa7 recommendations.author.workToday.title: Working $1\n\xa7 recommendations.author.workToday.description\non the project at this moment.\n\n# Composition: \n- $1;\n\n# Why specifically them:\n- more than 50% of workdays;\n- have worked during the last 30 days;\n\n\xa7 recommendations.author.dismissed.title: Dismissed $1\n\xa7 recommendations.author.dismissed.description\nor worked for a short period.\n\n# Composition:\n- $1;\n\n# Why specifically them:\n- worked at a normal pace (apparently, this is their main repository);\n- no commits in the last month;\n- vacation usually lasts 14 days (their absence does not resemble a vacation);\n\n\xa7 recommendations.author.staff.title: Assisting $1\n\xa7 recommendations.author.staff.description\nPeople of other specializations who have committed something.\n\n# Composition: \n- $1;\n\n# Why specifically them:\n- this is not an open-source project;\n- workdays less than 15% of the total number;\n- modify roughly the same files;\n\n\xa7 recommendations.author.projectType.openSource.title\nOpen Project\n\n\xa7 recommendations.author.projectType.openSource.description\nthey do not work five days a week here.\n\nThe project may be closed, but this work pace is typical for open libraries on GitHub.\n\n# Assessment method:\n- statistics are taken for all active developers;\n- the average number of working days and days without commits is calculated;\n- for open-source libraries, working days are usually a maximum of 15..20%;\n\n# Consequences\nFor projects where work is not constant, many indicators do not make sense. Therefore, indicators like days without commits, speed, etc., will be hidden.\n\nTypically, such projects are assessed before starting the development of their own closed version. The most interesting indicators in this case are the probable cost and total development time.\n\n\xa7 recommendations.author.projectType.easy.title\nLight Workload\n\n\xa7 recommendations.author.projectType.easy.description\ntoo many days without commits.\n\nIt is necessary to understand why the team is not writing code.\n\n# Assessment method:\n- take statistics from all active developers;\n- calculate the average number of working days and days without commits;\n- workload is considered light if the percentage of days without commits is between 5% and 20%;\n\n# Possible reasons:\n- there are actually no tasks;\n- there are tasks, but they fit well with the current architecture;\n- developers are distracted by meetings;\n- the team is not working;\n\n# Solutions:\n- discuss the issue with the team;\n- reduce task granularity so that one or two tasks can be completed in a day;\n- introduce daily meetings to check the status of tasks;\n- arrange pair programming sessions to ensure that the developer can work faster;\n\n\xa7 recommendations.author.manager.title\nSet Deadlines\n\n\xa7 recommendations.author.manager.description\nEvery task should have a clear deadline.\n \nThis will prevent dragging out its completion for several days or weeks.\n\n# Indicators to check:\n- the number of days spent on one task by an employee;\n- the number of days waiting for PR merge (PR statistics page);\n\n\xa7 recommendations.author.shorTalk.title\nConduct Daily Meetings\n\n\xa7 recommendations.author.shorTalk.description\nthey help stay informed about the project.\n \nDo not stretch them by getting sidetracked on irrelevant topics.\n\n# Questions the employee should answer:\n- what was done;\n- what will be done;\n- are there any issues;\n\n# Interruptions should occur if:\n- they start describing minor details in-depth, which are not important;\n- they steer the conversation away from the original plan;\n\n# Why this is important:\nOften an employee who does nothing tries to avoid the answer by telling a bunch of unnecessary details of their work. This lulls the participants\' attention and stretches the time for a response. It creates an impression that they are busy, even though there was no actual work done.\n\n\xa7 recommendations.author.ipr.title\nDevelop a Training Plan\n\n\xa7 recommendations.author.ipr.description\nfor each employee.\n\n*Individual training plan* is a list of goals and tasks that help a person develop in a certain area.\n\n# How to create a plan:\n- create a competency matrix;\n- identify which competencies have the least knowledge and experience;\n- find out which of these competencies are of interest to the employee;\n- come up with 3..5 goals within each such competency for the next six months or a year;\n- try to do something every month to achieve one goal;\n- remind every month about the overall plan to achieve these goals;\n\n# Does a manager need a plan?\nYes, the manager should also make a plan for themselves. If there is no higher-level manager, they should self-assess.\n\n# Why this is important:\n- employees become more loyal to the company;\n- you get more qualified personnel for the same money;\n\n\xa7 recommendations.author.oneToOne.title\nConduct One-on-One Meetings Every Month\n\n\xa7 recommendations.author.oneToOne.description\nit helps to identify problems at an early stage.\n\n*One-to-one* is a regular personal meeting of a manager with a subordinate. Such meetings typically discuss everything important to the employee, what concerns them, and what they can share with the manager in private.\n\n# Why this is important:\n- easy to find out who is overburdened and who has free time;\n- possible to prevent employee burnout;\n- quick feedback can be obtained about processes that you might not notice;\n- trust is built, making employees more loyal to the company;\n- increases employee motivation and engagement;\n\n\xa7 recommendations.author.club.title\nGo to a Bar\n\n\xa7 recommendations.author.club.description\nonce a month or two.\n\nThis will help build informal communication within the team and bring the team together, even if the interaction is brief.\n\n# Why this is important:\n- quick feedback can be obtained about processes that you might not notice;\n- trust is built, making employees more loyal to the company;\n- increases employee engagement;\n\n\xa7 recommendations.hour.onlyWork.title: No Weekends Here\n\xa7 recommendations.hour.onlyWork.description: The project manager should probably be fired.\n\xa7 recommendations.hour.weekends.title: Working on Weekends\n\xa7 recommendations.hour.weekends.description: The project manager should probably be checked.\n\xa7 recommendations.hour.easy.title: There Are Problems\n\xa7 recommendations.hour.easy.description: There are likely crunch times and work is needed on weekends.\n\xa7 recommendations.week.lazyDays.down.title: Fewer Absences\n\xa7 recommendations.week.lazyDays.down.description: this indicator has dropped over the last three weeks\n\xa7 recommendations.week.lazyDays.up.title: More Absences\n\xa7 recommendations.week.lazyDays.up.description: no tasks or stricter control is needed\n\xa7 recommendations.week.notWork.title: Consistently Underperforms\n\xa7 recommendations.week.notWork.description: as every week the code is not 100% of the time\n\xa7 recommendations.week.upWork.title: Consistently Overworks\n\xa7 recommendations.week.upWork.description: as every week code is written on weekend days\n\xa7 recommendations.week.task.up.title: Productivity is growing\n\xa7 recommendations.week.task.up.description: or tasks have become too small. Need to check. If granularity is the same - reinforce the result.\n\xa7 recommendations.week.task.lazyMaintainer.description: consistently leads in absences. Fire?\n\xa7 recommendations.week.task.down.title: Productivity is Falling\n\xa7 recommendations.week.task.down.description\nor tasks are poorly split. Need to check. If granularity is the same - take control.\n\n# Assessment method:\n- the number of tasks per day that are being worked on has been steadily decreasing over the last three weeks.\n\n# Possible errors:\n- tasks could have been more complex than they seemed;\n- tasks could have had a large volume of work (need to check if the number of changes is also decreasing during this period)\n\n\xa7 recommendations.type.everyHasOne.title: Not signing task types\n\xa7 recommendations.type.everyHasOne.description: Most task types are done by one person.\n\xa7 recommendations.type.oneMaintainer.title: Narrow Specialization\n\xa7 recommendations.type.oneMaintainer.description\nmost tasks of one type are done by the same people.\n\n# Task types:\n\n\xa7 recommendations.type.common\n# It might not be the case\n\nMake sure that other employees correctly sign commits.\n\nSteps to ensure this:\n- set up a pre-commit check for commit messages;\n- explain to the team the need to indicate the type;\n- check in new branches that employees follow this rule;\n\n# If it is indeed the case\n\nYou have set up checks and ensured that the same employee does tasks of the same type.\n\nWhy this is bad:\n- their resignation will halt a whole bunch of processes;\n- it reduces the competence of other team members;\n- difficult to understand their edits at a higher level;\n\nHow to fix this:\n- distribute different types of tasks evenly;\n- change the area of work (tests, documentation, bugs) among employees every sprint;\n\n\xa7 recommendations.type.fewTypes.title\nThis is a local product\n\n\xa7 recommendations.type.fewTypes.description\nfor a specific customer or problem.\n\n# Signs of a "global" product:\n- localization;\n- documentation;\n- a large volume of tests;\n- visual customization;\n- refactoring of bottlenecks;\n- etc.\n\n# Why this product looks like a "local" one:\n- each "global" sign will be outweighed by its type of task;\n- the more "global" signs, the more likely a "global" product;\n\nIn this case, we see a small number of types, which likely indicates shortcomings that prevent the product from being easily scaled to the global market and sold in other countries.\n\n# It might not be the case\nBased on file types, we can assume the type of program (website, server application, DevOps scripts, etc.). For a frontend application, our hypothesis will be more accurate than for DevOps scripts, which might just be a micro-module of initialization.\n\n\xa7 recommendations.type.diff.title\nSplit the popular type into subtypes\n\n\xa7 recommendations.type.diff.description\nto detail errors.\n\nTypically, the task type labeled "bug fixing" is leading. This makes the statistics weakly detailed.\n\n*If you encounter this situation*, you can break down this type into subtypes (e.g., based on the location of detection).\n\nConsider several options for subtypes:\n- fix_dev (error detected during development);\n- fix_test (error detected during testing);\n- fix (error detected in production);\n\n\xa7 recommendations.type.buddy.title\nAccumulate minor tasks\n\n\xa7 recommendations.type.buddy.description\nfor new employees.\n\n# If a task is:\n- not important;\n- not big;\n- doesn\'t require deep immersion in the context;\n- more about refactoring than new code;\n\n# Put it in the backlog with the label "for beginners".\n\nWhen a new employee arrives, you will be able to immediately pull out a bunch of small and varied tasks for them to get acquainted with the project.\n\nAlso, if you have a lull in work, you can pull out one such minor task from the backlog.\n',"\n\xa7 page.settings.document.title: Display settings\n\xa7 page.settings.document.name: Page title\n\xa7 page.settings.document.language: Interface language\n\xa7 page.settings.document.depersonalize: Hide personal data\n\xa7 page.settings.links.title: Link prefixes\n\xa7 page.settings.links.task: For task numbers\n\xa7 page.settings.links.pr: For PR\n\xa7 page.settings.user.title: Individual settings\n\xa7 page.settings.user.notFound: No individual settings. Data for all employees are calculated based on common parameters.\n\xa7 page.settings.user.subTitle: Addendum to employment contract \u2116$1\n\xa7 page.settings.user.from: Start date\n\xa7 page.settings.mailmap: .mailmap example\n\xa7 page.settings.common.title: General salary data\n\xa7 page.settings.common.type.title: Project work type\n\xa7 page.settings.common.type.full: Full-time employment\n\xa7 page.settings.common.type.part: Project work\n\xa7 page.settings.common.salary: Monthly salary in USD (US dollar, $)\n\xa7 page.settings.common.currency: Currency for view\n\xa7 page.settings.common.workDaysInYear: Number of working days in a year\n\xa7 page.settings.common.vacationDaysInYear: Number of vacation days in a year\n\xa7 page.settings.common.workDaysInWeek: Workdays\n\xa7 page.settings.form.save: Save\n\xa7 page.settings.form.cancel: Cancel\n\xa7 page.settings.form.remove: Remove\n\xa7 page.settings.form.addEmployee: Add an employee\n\xa7 page.settings.form.addContract: Add an employment contract\n",'\n\xa7 page.welcome.step1: \u5728\u9879\u76ee\u7684\u6839\u76ee\u5f55\u8fd0\u884c\u547d\u4ee4\n\xa7 page.welcome.step3: \u62d6\u653e\n\xa7 page.welcome.step4: log.txt \u6587\u4ef6\u5230\u672c\u9875\n\xa7 page.welcome.description: Git \u521b\u5efa\u6587\u4ef6 log.txt. \u5b83\u5305\u542b\u7528\u4e8e\u6784\u5efa\u62a5\u8868\u7684\u6570\u636e\u3002 \u8fd0\u884c\u547d\u4ee4 git shortlog -s -n -e \u5982\u679c\u4f60\u4e0d\u9700\u8981\u62a5\u544a\u3002 \u521b\u5efa\u6587\u4ef6 [.mailmap|https://git-scm.com/docs/gitmailmap] \u5728\u9879\u76ee\u7684\u6839\u6e90\uff0c\u7ed3\u5408\u5458\u5de5\u7edf\u8ba1.\n\xa7 page.welcome.warning1: \u8be5\u670d\u52a1\u4e0d\u4f1a\u5b58\u50a8\u6216\u4f20\u8f93\u60a8\u7684\u6570\u636e\u3002 \u6240\u6709\u8ba1\u7b97\u90fd\u5728\u60a8\u7684\u8ba1\u7b97\u673a\u4e0a\u6267\u884c.\n\xa7 page.welcome.warning2: \u8be5\u670d\u52a1\u4e0d\u6536\u96c6\u9879\u76ee\u7684\u7edf\u8ba1\u6570\u636e\u3002 \u4f60\u53ef\u4ee5\u770b [\u6e90\u4ee3\u7801|https://github.com/bakhirev/assayo].\n\xa7 page.common.words.title: \u8bcd\u6c47\u7edf\u8ba1\n\xa7 page.common.words.description: \u6700\u6d41\u884c\u7684\u8bcd\u3002 \u53d1\u751f$1\u6b21.\n\xa7 page.common.commits.title: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e Commits \u043f\u043e \u0434\u043d\u044f\u043c\n\xa7 page.common.commits.description: ($1) \u62e5\u6709\u6700\u591a Commits \u6570\u7684\u5de5\u4f5c\u65e5.\n\xa7 page.common.commits.title2: $1 \u5b8c\u6210\u4e86 Commits: $2\n\xa7 page.common.filter.allUsers: \u6ca1\u5173\u7cfb\n\xa7 page.print.modal.title: \u6211\u4eec\u6253\u5370\u51fa\u6765\u7684\u662f\u4ec0\u4e48?\n\xa7 page.print.modal.page: \u5f53\u524d\u9875\u9762\n\xa7 page.print.modal.type: \u5f53\u524d\u90e8\u5206\n\xa7 page.print.modal.all: \u6240\u6709\u7edf\u8ba1\u6570\u5b57\n\xa7 page.print.modal.cancel: \u53d6\u6d88\n\xa7 page.print.tableOfContents: \u76ee\u5f55\n\xa7 page.print.title: Git\u4ed3\u5e93\u62a5\u544a\n\xa7 page.print.sub_title: \xab$1\xbb\n\xa7 page.print.description: \u62a5\u544a\u7684\u6570\u636e\u662f\u4ece\u5386\u53f2\u8bb0\u5f55\u4e2d\u83b7\u5f97\u7684 Commits.\n\xa7 page.team.author.statusChart.title: Status\n\xa7 page.team.author.daysChart.title: Days of work\n\xa7 page.team.author.daysChart.item: days\n\xa7 page.team.author.days.half: half year\n\xa7 page.team.author.days.one: year\n\xa7 page.team.author.days.15: year and a half\n\xa7 page.team.author.days.two: two years\n\xa7 page.team.author.days.more: more than two years\n\xa7 page.team.author.title: Details\n\xa7 page.team.author.description1: \u90e8\u5206\u7edf\u8ba1\u6570\u5b57 (\u5de5\u4f5c\u7684\u901f\u5ea6\uff0c\u82b1\u8d39\u7684\u94b1\u7b49\u3002.) \u4e0d\u8003\u8651\u5177\u6709"\u52a9\u7406"\u7c7b\u578b\u7684\u5458\u5de5\uff0c\u56e0\u4e3a\u8fd9\u4e0d\u662f\u9879\u76ee\u4e2d\u7684\u6c38\u4e45\u89d2\u8272\u3002 \u4ed6\u4eec\u7684\u5de5\u4f5c\u5fae\u4e0d\u8db3\u9053\uff0c\u53ef\u4ee5\u5ffd\u7565\u3002.\n\xa7 page.team.author.description2: \u9ed8\u8ba4\u6392\u5e8f\u662f\u6309\u4efb\u52a1\u548c\u7ec4\u6570\u6392\u5e8f (\u73b0\u4efb\u3001\u88ab\u89e3\u96c7\u3001\u5e2e\u52a9\u96c7\u5458).\n\xa7 page.team.author.types: \u5de5\u4f5c\u7c7b\u522b\n\xa7 page.team.author.commits: Commits\n\xa7 page.team.author.commitsSmall: commits\n\xa7 page.team.author.tasks: \u4efb\u52a1\n\xa7 page.team.author.tasksSmall: \u4efb\u52a1\n\xa7 page.team.author.workedLosses: \u6709\u548c\u6ca1\u6709commits\u7684\u65e5\u5b50\n\xa7 page.team.author.worked: \u5de5\u4f5c\n\xa7 page.team.author.losses: \u6ca1\u6709commits\u7684\u65e5\u5b50\n\xa7 page.team.author.days: \u5929\u6570\n\xa7 page.team.author.daysForTask: \u6bcf\u9879\u4efb\u52a1\u7684\u5929\u6570\n\xa7 page.team.author.scopes: \u4fee\u6539\n\xa7 page.team.author.moneyAll: \u6211\u62ff\u5230\u94b1\u4e86\n\xa7 page.team.author.moneyWorked: \u5de5\u4f5c\u4e86\n\xa7 page.team.author.moneyLosses: \u591a\u4ed8\n\xa7 page.team.author.type.work: works\n\xa7 page.team.author.type.dismissed: dismissed\n\xa7 page.team.author.type.staff: staff\n\xa7 page.team.hours.title: \u6bcf\u5468\u6bcf\u4e00\u5929\u7684\u5de5\u4f5c\u5206\u914d\n\xa7 page.team.month.title: \u9879\u76ee\u5de5\u4f5c\u65e5\u5386\n\xa7 page.team.month.first: (first work day)\n\xa7 page.team.month.last: (last work day)\n\xa7 page.team.scope.title: \u6309\u6a21\u5757\u5212\u5206\u7684\u7edf\u8ba1\u6570\u5b57\n\xa7 page.team.scope.scope: \u4fee\u6539\n\xa7 page.team.scope.days: \u5de5\u4f5c\u5929\n\xa7 page.team.scope.authorsDays: \u4eba\u65e5\n\xa7 page.team.scope.tasks: \u4efb\u52a1\n\xa7 page.team.scope.commits: Commits\n\xa7 page.team.scope.commitsSmall: commits\n\xa7 page.team.scope.types: \u5de5\u4f5c\u7c7b\u522b\n\xa7 page.team.scope.authors: \u4e2a\u4eba\u8d21\u732e\n\xa7 page.team.scope.cost: \u6210\u672c\n\xa7 page.team.type.title: \u6309\u4efb\u52a1\u7c7b\u578b\u5212\u5206\u7684\u7edf\u8ba1\u4fe1\u606f\n\xa7 page.team.type.description: *\u4e2a\u4eba\u8d21\u732e* \u5b83\u662f\u6309\u6570\u5b57\u8ba1\u7b97\u7684 Commits, \u800c\u4e0d\u662f\u4fee\u6539\u7684\u5b57\u7b26\u4e32\u6216\u6587\u4ef6\u7684\u4f53\u79ef\u3002 \u56e0\u6b64\uff0c\u60a8\u8fd8\u5e94\u8be5\u67e5\u770b"\u6587\u4ef6\u5206\u6790"\u90e8\u5206\u4ee5\u8bc4\u4f30\u66f4\u6539\u7684\u89c4\u6a21\u3002\n\xa7 page.team.type.type: \u5de5\u4f5c\u7c7b\u522b\n\xa7 page.team.type.unknown: unknown\n\xa7 page.team.type.tasks: \u4efb\u52a1\n\xa7 page.team.type.tasksSmall: \u4efb\u52a1\n\xa7 page.team.type.days: \u5929\u6570\n\xa7 page.team.type.daysSmall: \u5929\u6570\n\xa7 page.team.type.authorsDays: \u4eba\u65e5\n\xa7 page.team.type.commits: Commits\n\xa7 page.team.type.authors: \u4e2a\u4eba\u8d21\u732e\n\xa7 page.team.total.titleA: \u5de5\u4f5c\u8303\u56f4\n\xa7 page.team.total.titleB: \u6210\u672c\n\xa7 page.team.total.daysWorked.title: \u4eba\u65e5\n\xa7 page.team.total.daysWorked.description: \u53ea\u8003\u8651\u5236\u4f5c\u5b83\u4eec\u7684\u65e5\u5b50 Commits\n\xa7 page.team.total.commits.title: commits\n\xa7 page.team.total.commits.description: \u5220\u9664\u7684\u5206\u652f\u4e0d\u7b97\u6570\n\xa7 page.team.total.daysLosses.title: \u6ca1\u6709\u7684\u65e5\u5b50 commits\n\xa7 page.team.total.daysLosses.description: \u6240\u6709\u7684\u65e5\u5b50\u90fd\u662f\u8d1f\u6570: \u5047\u671f\u3001\u5468\u672b\u3001\u5047\u671f\u3001\u4f11\u606f\u65e5 Commits\n\xa7 page.team.total.employment.title: \u5de5\u4f5c/\u9000\u51fa\n\xa7 page.team.total.employment.description: \u5982\u679c\u5458\u5de5\u5728\u4e00\u4e2a\u6708\u5185\u6ca1\u6709\u5b8c\u6210\u4efb\u4f55\u5de5\u4f5c Commits, \u4ed6\u88ab\u8ba4\u4e3a\u88ab\u89e3\u96c7\u4e86\n\xa7 page.team.total.moneyAll.title: \u666e\u901a\n\xa7 page.team.total.moneyAll.description: \u5de5\u8d44\u8d39\u7528\u603b\u989d\n\xa7 page.team.total.moneyWorked.title: \u5b9e\u9645\n\xa7 page.team.total.moneyWorked.description: \u5b9e\u9645\u5de5\u4f5c\u5929\u6570\u4e58\u4ee5\u5e73\u5747\u5de5\u8d44\n\xa7 page.team.total.moneyLosses.title: \u53ef\u80fd\u591a\u4ed8\n\xa7 page.team.total.moneyLosses.description: \u5e26\u85aa\u5de5\u4f5c\u65e5, \u4f55\u65f6 Commits \u6ca1\u6709\n\xa7 page.team.total.weekendPayment.title: \u5468\u672b\u5de5\u4f5c\n\xa7 page.team.total.weekendPayment.description: \u5468\u672b\u5de5\u4f5c\u591a\u4ed8\u603b\u989d\n\xa7 page.team.total.workSpeed.title: \u6bcf\u5929\u7684\u4efb\u52a1\n\xa7 page.team.total.workSpeed.description: \u56e2\u961f\u4e0e\u5f53\u524d\u5458\u5de5\u7684\u5e73\u5747\u5de5\u4f5c\u901f\u5ea6\n\xa7 page.team.total.moneySpeed.title: \u6bcf\u6708\n\xa7 page.team.total.moneySpeed.description: \u73b0\u804c\u5de5\u4f5c\u4eba\u5458\u7684\u9884\u8ba1\u85aa\u91d1\u652f\u4ed8\u989d\uff0c\u4e0d\u5305\u62ec\u7a0e\u9879\u548c\u6709\u5173\u8d39\u7528\n\xa7 page.team.total.description1: *\u4eba\u65e5* \u2014 \u8fd9\u662f\u4e00\u4e2a\u5458\u5de5\u4e00\u4e2a\u5de5\u4f5c\u65e5\u7684\u5de5\u4f5c\u3002 \u4f8b\u5982\uff0c\u5728\u4e00\u4e2a\u65e5\u5386\u65e5\uff0c\u4e00\u4e2a\u7531\u4e09\u540d\u5458\u5de5\u7ec4\u6210\u7684\u56e2\u961f\u5728\u4e09\u4e2a\u5de5\u4f5c\u65e5\u5185\u53d1\u51fa\u5927\u91cf\u7684\u5de5\u4f5c\u91cf.\n\xa7 page.team.total.description2: *\u65f7\u5de5\u7684\u65e5\u5b50* \u53ea\u6709\u5de5\u4f5c\u65e5\u8ba1\u7b97\u5728 Commits \u53ef\u4ee5\u505a\u5230. \u5468\u672b\u3001\u516c\u4f17\u5047\u671f\u53ca\u5047\u671f\u4e0d\u5305\u62ec\u5728\u8ba1\u7b97\u5185.\n\xa7 page.team.total.description3: \u5361\u7247 *\u5de5\u4f5c\u548c\u9000\u51fa* \u663e\u793a\u7ecf\u5e38\u53c2\u4e0e\u5de5\u4f5c\u7684\u5458\u5de5\u7684\u5b9e\u9645\u7ec4\u6210\u3002 \u6b64\u5916\uff0c\u8fd8\u6709"\u52a9\u624b\u2014-\u8fd9\u4e9b\u662f\u5458\u5de5\uff0c\u901a\u5e38\u662f\u4e0d\u540c\u7684\u4e13\u4e1a\uff0c\u6709\u65f6\u53ef\u4ee5\u8fd9\u6837\u505a Commits \u5230\u9879\u76ee.\n\xa7 page.team.total.description4: *\u591a\u4ed8* \u53ea\u6709\u5de5\u4f5c\u65e5\u8ba1\u7b97\u5728 Commits \u53ef\u4ee5\u505a\u5230. \u5468\u672b\u3001\u516c\u4f17\u5047\u671f\u548c\u5047\u671f\u4e0d\u5305\u62ec\u5728\u8ba1\u7b97\u4e2d. \u8fd9\u5c31\u662f\u4e3a\u4ec0\u4e48\u591a\u4ed8+\u5b9e\u9645\u6210\u672c\uff01=\u4e00\u822c. \u603b\u8d39\u7528\u5305\u62ec\u5468\u672b\u3001\u516c\u4f17\u5047\u671f\u548c\u5047\u671f\u7684\u4ed8\u6b3e\u3002\n\xa7 page.team.total.description5: *\u5468\u672b\u5de5\u4f5c* \u5b83\u662f\u7531\u7cfb\u6570x2\u8ba1\u7b97\u4ece\u652f\u4ed8\u4e00\u4e2a\u6b63\u5e38\u7684\u4e00\u5929\u3002 \u4e0a\u9762\u663e\u793a\u7684\u662f\u591a\u4ed8\uff08x1\uff09\uff0c\u56e0\u4e3a\u5728\u8fd9\u79cd\u60c5\u51b5\u4e0b\uff0c\u5904\u7406\u7684\u4e8b\u5b9e\u5e76\u4e0d\u6709\u8da3\u3002 \u6211\u4eec\u4e0d\u662f\u5728\u770b\u9884\u7b97\u71c3\u70e7\u7684\u901f\u5ea6\u3002 \u6211\u4eec\u6b63\u5728\u8003\u8651\u5728\u63d0\u9ad8\u5de5\u4f5c\u901f\u5ea6\u65f6\u591a\u4ed8\u7684\u6b3e\u9879.\n\xa7 page.team.tree.title: \u9879\u76ee\u6811\uff0c\u8003\u8651\u5230\u9009\u5b9a\u7684\u8fc7\u6ee4\u5668\n\xa7 page.team.tree.filters.author: \u96c7\u5458\n\xa7 page.team.tree.filters.commits: \u6570\u91cf Commits\n\xa7 page.team.tree.filters.help: \u6700\u4f4e\u6570\u91cf Commits, \u96c7\u5458\u5728\u6863\u6848\u4e2d\u6240\u505a\u7684\n\xa7 page.team.tree.filters.all: \u6240\u6709\u5458\u5de5\n\xa7 page.team.tree.totalLines: Lines\n\xa7 page.team.tree.totalTasks: Tasks\n\xa7 page.team.tree.totalDays: Days\n\xa7 page.team.tree.tasks: tasks\n\xa7 page.team.tree.days: days\n\xa7 page.team.tree.add: \u8c01\u52a0\u7684\n\xa7 page.team.tree.change: \u8c01\u6539\u53d8\u4e86\u5b83\n\xa7 page.team.tree.remove: \u8c01\u5220\u9664\u4e86\u5b83\n\xa7 page.team.tree.line: \u7ebf\u6761\n\xa7 page.team.tree.linesAdded: \u8865\u5145\u9053\n\xa7 page.team.tree.linesChanged: changed\n\xa7 page.team.tree.linesRemoved: \u6539\u53d8\u4e86\n\xa7 page.team.company.title: Details\n\xa7 page.team.company.employments.title: By number of employees\n\xa7 page.team.company.employments.item: employments\n\xa7 page.team.company.daysChart.title: By duration of the contract\n\xa7 page.team.company.daysChart.item: companies\n\xa7 page.team.company.active.yes: active\n\xa7 page.team.company.active.no: contract has expired\n\xa7 page.team.country.byTimezone: By the time of the last commit\n\xa7 page.team.country.filters.active: Works\n\xa7 page.team.country.filters.dismissed: Dismissed\n\xa7 page.team.country.filters.staff: Staff\n\xa7 page.team.country.pieByDomain.title: By email, timezone and language\n\xa7 page.team.country.pieByTimezone.title: By timezone\n\xa7 page.team.country.chart.item: employments\n\xa7 page.team.country.table.title: List of employees\n\xa7 page.team.country.table.country: Country\n\xa7 page.team.country.table.employments: Employments\n\xa7 page.team.country.travel.title: Trips (or VPN, or rebase)\n\xa7 page.team.country.travel.author: Employee\n\xa7 page.team.country.travel.fly: Number of flights\n\xa7 page.team.country.travel.path: Locations list\n\xa7 page.team.country.travel.date: Arrival date\n\xa7 page.team.country.travel.country: Location\n\xa7 page.team.refactor.title: Candidates for refactoring\n\xa7 page.team.refactor.lines: lines\n\xa7 page.team.refactor.tasks: tasks\n\xa7 page.team.refactor.days: days\n\xa7 page.team.refactor.path: Path\n\xa7 page.team.refactor.firstCommit: First commit\n\xa7 page.team.refactor.totalLines: Lines\n\xa7 page.team.refactor.totalTasks: Tasks\n\xa7 page.team.refactor.totalDays: Days in development\n\xa7 page.team.day.commits: Commits\n\xa7 page.team.day.activity: Activity\n\xa7 page.team.week.title: \u6309\u5468\u5212\u5206\u7684\u7edf\u8ba1\u6570\u5b57\n\xa7 page.team.week.date: \u65e5\u671f\n\xa7 page.team.week.numberTasks: \u4efb\u52a1\u6570\u91cf\n\xa7 page.team.week.people: \u4eba\u6570\n\xa7 page.team.week.line: \u6362\u7ebf\n\xa7 page.team.week.days: \u65e5\u8d77 Commits \u800c\u6ca1\u6709\n\xa7 page.team.week.lossesDetails: \u8c01\u4e0d Commits\n\xa7 page.team.week.add: \u8865\u5145\u9053\n\xa7 page.team.week.change: \u6539\u53d8\u4e86\n\xa7 page.team.week.remove: \u5df2\u5220\u9664\n\xa7 page.team.week.hasCommits: \u662f Commits\n\xa7 page.team.week.hasNotCommits: \u4e0d\u662f\u8fd9\u6837\u7684 Commits\n\xa7 page.team.week.days: \u5929\u6570\n\xa7 page.team.week.tasks: \u4efb\u52a1\n\xa7 page.team.pr.task: \u4efb\u52a1\n\xa7 page.team.pr.tasks: \u4efb\u52a1\n\xa7 page.team.pr.firstCommitTime: \u7b2c\u4e00\u4e2a Commits\n\xa7 page.team.pr.lastCommitTime: \u6700\u540e\u4e00\u6b21\n\xa7 page.team.pr.workDays: \u5b8c\u6210\u4efb\u52a1\u7684\u5e73\u5747\u65f6\u95f4\n\xa7 page.team.pr.delayDays: PR\u5ba1\u67e5\u7684\u5e73\u5747\u65f6\u95f4\n\xa7 page.team.pr.all.workDays: \u4efb\u52a1\u5b8c\u6210\u65f6\u95f4\n\xa7 page.team.pr.all.delayDays: PR\u8bf7\u6c42\u7684\u5ba1\u8bae\u65f6\u95f4\n\xa7 page.team.pr.middleTimeRelease: \u5f00\u53d1\u65f6\u95f4\u4e0e\u5ba1\u67e5\u65f6\u95f4\u7684\u6bd4\u7387\n\xa7 page.team.pr.chart.1day: day\n\xa7 page.team.pr.chart.3day: three days\n\xa7 page.team.pr.chart.7day: week\n\xa7 page.team.pr.chart.14day: two weeks\n\xa7 page.team.pr.chart.30day: month\n\xa7 page.team.pr.chart.more: more\n\xa7 page.team.pr.date: \u6ce8\u5c04\u65e5\u671f\n\xa7 page.team.pr.mergeAuthor: \u586b\u5199\n\xa7 page.team.pr.author: \u96c7\u5458\n\xa7 page.team.pr.work: \u53d1\u5c55\n\xa7 page.team.pr.delay: \u671f\u671b\n\xa7 page.team.pr.days: \u5929\u6570\n\xa7 page.team.pr.oneTaskDays: \u82b1\u5728\u4e00\u9879\u4efb\u52a1\u4e0a\u7684\u65f6\u95f4\n\xa7 page.team.pr.description1: *\u82b1\u5728\u4e00\u9879\u4efb\u52a1\u4e0a\u7684\u65f6\u95f4* \u8fd9\u662f\u4ece\u7b2c\u4e00\u4e2a\u5230\u6700\u540e\u4e00\u4e2a\u7684\u65f6\u95f4\u5dee Commits \u6309\u4efb\u52a1\u5212\u5206. \u5982\u679c\u4e4b\u95f4\u6709\u51e0\u5929\u7684\u4f11\u606f\u65f6\u95f4\u4e5f\u6ca1\u5173\u7cfb Commits \u8fd8\u662f\u4e0d\u662f. \u4efb\u4f55\u4e00\u4e2a\u4e8b\u5b9e Commits \u589e\u52a0\u65f6\u95f4.\n\xa7 page.team.pr.description2: *\u8f6e\u5019\u65f6\u95f4* \u8fd9\u662f\u6700\u540e\u4e00\u6b21\u4e4b\u95f4\u7684\u65f6\u95f4 Commits \u901a\u8fc7\u8f93\u5165\u4ee3\u7801. \u5b83\u663e\u793a\u4e86\u5b9e\u9645\u7684\u7a7a\u95f2\u7b49\u5f85\u7684\u4e1c\u897f.\n\xa7 page.team.pr.description3: *\u4e3a\u4ec0\u4e48\u663e\u793a\u5f00\u53d1\u65f6\u95f4* \u65e0\u9700\u62c6\u5206\u4e3a\u7f16\u7801\u548c\u4ee3\u7801\u5ba1\u67e5? \u7136\u540e\uff0c\u5411\u4e1a\u52a1\u663e\u793a\u4ee3\u7801\u7684\u5b9e\u9645\u4ea4\u4ed8\u65f6\u95f4\u3002 \u6d4b\u8bd5\u7684\u671f\u671b\uff0c\u5bf9\u5ba1\u67e5\u7684\u8bc4\u8bba\uff0cDevOps\u95ee\u9898\u548c\u6d41\u7a0b\u7684\u5176\u4ed6\u4e0d\u5b8c\u5584\u4e4b\u5904\u5df2\u7ecf\u5728\u8fd9\u4e00\u65f6\u671f\u5236\u5b9a.\n\xa7 page.team.pr.statByAuthors: \u96c7\u5458\u7edf\u8ba1\u6570\u5b57\n\xa7 page.team.pr.longDelay: \u957f\u65f6\u95f4\u7b49\u5f85\u8f93\u6db2\n\xa7 page.team.pr.anonymous: PR without task number\n\xa7 page.team.pr.branch: Branch\n\xa7 page.team.tasks.task: \u4efb\u52a1\n\xa7 page.team.tasks.author: \u7b2c\u4e00\u7bc7\u7684\u4f5c\u8005 Commits\n\xa7 page.team.tasks.from: \u7b2c\u4e00\u4e2a Commits\n\xa7 page.team.tasks.to: \u6700\u540e\u4e00\u6b21 Commits\n\xa7 page.team.tasks.daysInWork: \u5de5\u4f5c\u4e2d\u7684\u65e5\u5b50\n\xa7 page.team.tasks.comments: \u8bc4\u8bba\n\xa7 page.team.extension.extension: File extensions\n\xa7 page.team.extension.type: File sub types\n\xa7 page.team.extension.name: Type\n\xa7 page.team.extension.path: Path\n\xa7 page.team.extension.current.count: Number\n\xa7 page.team.extension.removed.count: Number of removed\n\xa7 page.team.extension.files: files\n\xa7 page.team.release.download: Download\n\xa7 page.team.release.title: Release\n\xa7 page.team.release.from: Created date\n\xa7 page.team.release.to: Delivery date\n\xa7 page.team.release.prLength: Tasks\n\xa7 page.team.release.delay: Preparation days\n\xa7 page.team.release.waiting: Days of waiting for next release\n\xa7 page.team.department.employments.title: The size of the current teams\n\xa7 page.team.department.employments.item: of teams\n\xa7 page.team.author.employments.less1: one employee\n\xa7 page.team.author.employments.less2: two employees\n\xa7 page.team.author.employments.less3: three employees\n\xa7 page.team.author.employments.less6: up to six employees\n\xa7 page.team.author.employments.less9: up to nine employees\n\xa7 page.team.author.employments.less12: up to 12 employees\n\xa7 page.team.author.employments.less15: up to 15 employees\n\xa7 page.team.author.employments.more: more than 15\n\xa7 page.team.department.daysChart.title: Duration of the project\n\xa7 page.team.department.daysChart.item: projects\n\xa7 page.team.department.title: List of projects\n\xa7 page.team.department.code: Code\n\xa7 page.team.department.from: First commit\n\xa7 page.team.department.to: Last\n\xa7 page.team.department.authors: employees\n\xa7 page.team.department.tasks: tasks\n\xa7 page.team.department.totalDays: Working days\n\xa7 page.team.department.totalAuthors: Number of employees\n\xa7 page.person.print.photo.title: \u7167\u7247\n\xa7 page.person.print.photo.description: \u62cd\u7167\u7684\u5730\u65b9\n\xa7 page.person.total.title: \u4e3b\u8981\u7279\u70b9\n\xa7 page.person.total.daysWorked.title: \u5de5\u4f5c\u5929\n\xa7 page.person.total.daysWorked.description: \u53ea\u8003\u8651\u5236\u4f5c\u5b83\u4eec\u7684\u65e5\u5b50 Commits\n\xa7 page.person.total.tasks.title: \u4efb\u52a1\n\xa7 page.person.total.tasks.description: \u5982\u679c Commits \u6b63\u786e\u7b7e\u540d\n\xa7 page.person.scoring.toolbar: The position according to this metric, relative to others. Two employees can take the same position if the values matches. Therefore, the total number of positions may be less than the number of employees.\n\xa7 page.person.character.title: \u6027\u683c\n\xa7 page.person.achievement.title: \u8fdb\u5c55\u60c5\u51b5\n\xa7 page.person.achievement.positive: \u79ef\u6781\n\xa7 page.person.achievement.normal: \u4e2d\u7acb\n\xa7 page.person.achievement.negative: \u8d1f\u9762\n\xa7 page.person.achievement.description: \u5458\u5de5\u53d6\u5f97\u7684\u8d1f\u9762\u6210\u7ee9\u8d8a\u591a\uff0c\u60c5\u51b5\u5c31\u8d8a\u6709\u53ef\u80fd\u975e\u6807\u51c6\u3002 \u53ef\u80fd\u503c\u5f97\u6539\u53d8\u5176\u64cd\u4f5c\u6a21\u5f0f\uff0c\u4efb\u52a1\u6216\u62a5\u544a\u3002 \u4f60\u5e94\u8be5\u548c\u4ed6\u8c08\u8c08\uff0c\u770b\u770b\u6709\u4ec0\u4e48\u95ee\u9898\u59a8\u788d\u4e86\u4ed6\u7684\u5de5\u4f5c.\n\xa7 page.person.gets.title: \u88ab\u5e26\u8d70\u7684\u6728\u5c50:\n\xa7 page.person.gets.description: \xab\u88ab\u5e26\u8d70\u7684\u6728\u5c50\xbb \u5728\u8fd9\u79cd\u60c5\u51b5\u4e0b\uff0c\u5b83\u610f\u5473\u7740\u7b2c\u4e00\u4e2a\u79bb\u5f00 Commits \u5230"\u7f8e\u4e3d"\u6570\u5b57\u7684\u95ee\u9898.\n\xa7 page.person.business.days.title: \u5de5\u4f5c\u5929\n\xa7 page.person.business.days.description: \u53ea\u8003\u8651\u5236\u4f5c\u5b83\u4eec\u7684\u65e5\u5b50 Commits\n\xa7 page.person.business.tasks.title: \u4efb\u52a1\n\xa7 page.person.business.tasks.description: \u5982\u679c Commits \u6b63\u786e\u7b7e\u540d\n\xa7 page.person.business.losses.title: \u6ca1\u6709\u7684\u65e5\u5b50 Commits\n\xa7 page.person.business.losses.description: \u6240\u6709\u65e5\u5b50\u51cf\u53bb\uff1a\u5047\u671f\uff0c\u5468\u672b\uff0c\u5047\u671f\uff0c\u4f11\u606f\u65e5 Commits\n\xa7 page.person.business.commits.title: Commits\n\xa7 page.person.business.commits.description: \u5220\u9664\u7684\u5206\u652f\u4e0d\u7b97\u6570\n\xa7 page.person.business.time.description: \u4ece\u7b2c\u4e00\u5230\u6700\u540e\u7684\u65f6\u95f4 Commits (\u5305\u62ec\u975e\u5de5\u4f5c\u65e5)\n\xa7 page.person.business.time.title: \u9879\u76ee\u65e5:\n\xa7 page.person.business.time.dismissed: (\u88ab\u89e3\u96c7)\n\xa7 page.person.business.time.staff: (\u4e0d\u5728\u56e2\u961f\u4e2d)\n\xa7 page.person.business.achievements: \u8fdb\u5c55\u60c5\u51b5\n\xa7 page.person.changes.title: \u8fdb\u5c55\u60c5\u51b5\n\xa7 page.person.changes.description: \n\u4f7f\u7528\u67d0\u4e9b\u7c7b\u578b\u7684\u683c\u5f0f\uff0cgit\u5c06\u5b57\u7b26\u4e32\u6807\u8bb0\u4e3a"\u5df2\u5220\u9664"\u548c"\u5df2\u6dfb\u52a0",\n\u867d\u7136\u4e8b\u5b9e\u4e0a\u4ed6\u4eec\u5df2\u7ecf\u88ab"\u6539\u53d8"\u3002 \u56e0\u6b64\uff0c\u5982\u679c\u4f60\u5df2\u7ecf\u505a\u4e86\u5f88\u591a\u91cd\u6784,\ngit\u53ef\u4ee5\u663e\u793a\u7edf\u8ba1\u4fe1\u606f\u7684\u5c11\u91cf\u53d8\u5316\uff0c\u4ee5\u53ca\u5b9e\u9645\u7ed3\u679c\n\u5c06\u5728"\u5df2\u5220\u9664"\u548c"\u5df2\u6dfb\u52a0"\u884c\u4e2d\u6807\u8bb0\u4e3a\u8df3\u8f6c.\n\xa7 page.person.changes.description: \u540d\u5355 Commits \u4ee5\u53ca\u90a3\u4e00\u5929\u4ed6\u4eec\u7684\u53d8\u5316\u6570\u91cf:\n\xa7 page.person.commits.title: \u540d\u5355 Commits:\n\xa7 page.person.money.title.total: \u4e00\u76f4\u5982\u6b64\n\xa7 page.person.money.title.middle: \u5e73\u5747\u6210\u672c\n\xa7 page.person.money.moneyAll.title: \u6536\u5230\n\xa7 page.person.money.moneyAll.description: \u5de5\u7a0b\u9879\u76ee\u7684\u91c7\u8d2d\u8ba2\u5355\u4f30\u8ba1\u91d1\u989d (\u8bf7\u53c2\u9605\u8bbe\u7f6e)\n\xa7 page.person.money.moneyWorked.title: \u5de5\u4f5c\u4e86\n\xa7 page.person.money.moneyWorked.description: \u5b9e\u9645\u5de5\u4f5c\u5929\u6570\u4e58\u4ee5\u5e73\u5747po\n\xa7 page.person.money.moneyLosses.title: \u53ef\u80fd\u591a\u4ed8\n\xa7 page.person.money.moneyLosses.description: \u6ca1\u6709\u7684\u65e5\u5b50 Commits \u4e58\u4ee5\u5e73\u5747po\n\xa7 page.person.money.tasks.title: \u4efb\u52a1\n\xa7 page.person.money.tasks.description: \u5173\u95ed\u4efb\u52a1\u7684\u6570\u91cf\u5230\u4e00\u5929\u7684\u6210\u672c\n\xa7 page.person.money.commits.title: Commits\n\xa7 page.person.money.commits.description: \u6570\u91cf Commits \u5230\u4e00\u4e2a\u5de5\u4f5c\u65e5\u7684\u6210\u672c\n\xa7 page.person.speed.task: \u5e73\u5747\u4e00\u9879\u4efb\u52a1\u662f\n\xa7 page.person.speed.max: \u6bcf\u65e5\u6700\u9ad8\u901f\u5ea6\n\xa7 page.person.speed.days.title: \u5929\u6570\n\xa7 page.person.speed.days.description: \u8fd9\u610f\u5473\u7740\u5982\u679c Commits \u6b63\u786e\u7b7e\u540d\n\xa7 page.person.speed.commits.title: Commits\n\xa7 page.person.speed.commits.description: \u6700\u5927\u503c\u548c\u6700\u5c0f\u503c\u768410\uff05\u5df2\u88ab\u5207\u65ad\n\xa7 page.person.speed.line.title: \u4ee3\u7801\u884c\n\xa7 page.person.speed.line.description: \u6700\u5927\u503c\u548c\u6700\u5c0f\u503c\u768410\uff05\u5df2\u88ab\u5207\u65ad\n\xa7 page.person.speed.tasks.title: \u4efb\u52a1\n\xa7 page.person.speed.tasks.description: \u4efb\u52a1\u53ef\u80fd\u6ca1\u6709\u5b8c\u6210\uff0c\u4f46\u5b83\u7684\u5de5\u4f5c\u5e94\u8be5\u662f\n\xa7 page.person.speed.maxCommits.title: Commits\n\xa7 page.person.speed.maxCommits.description: \u4efb\u52a1\u53ef\u80fd\u6ca1\u6709\u5b8c\u6210\uff0c\u4f46\u5b83\u7684\u5de5\u4f5c\u5e94\u8be5\u662f\n\xa7 page.person.hours.title: \u5206\u5e03\u60c5\u51b5 Commits \u5728\u4e00\u5468\u7684\u6bcf\u4e00\u5929\n\xa7 page.person.week.date: \u65e5\u671f\n\xa7 page.person.week.tasks: \u4efb\u52a1\u6570\u91cf\n\xa7 page.person.week.workDays: \u65e5\u8d77 Commits\n\xa7 page.person.week.taskInDay: \u6bcf\u5929\u7684\u4efb\u52a1\n\xa7 page.person.week.days: \u5929\u6570\n\xa7 page.person.week.workDay: \u5e73\u65e5\n\xa7 page.person.week.weekends: \u5468\u672b\n'].join(""),Re={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){console&&console[e]&&console[e].apply(console,t)}};class Pe{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.init(e,t)}init(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.prefix=t.prefix||"i18next:",this.logger=e||Re,this.options=t,this.debug=t.debug}log(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"log","",!0)}warn(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"warn","",!0)}error(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"error","")}deprecate(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"warn","WARNING DEPRECATED: ",!0)}forward(e,t,n,a){return a&&!this.debug?null:("string"===typeof e[0]&&(e[0]="".concat(n).concat(this.prefix," ").concat(e[0])),this.logger[t](e))}create(e){return new Pe(this.logger,{prefix:"".concat(this.prefix,":").concat(e,":"),...this.options})}clone(e){return(e=e||this.options).prefix=e.prefix||this.prefix,new Pe(this.logger,e)}}var Ie=new Pe;class Le{constructor(){this.observers={}}on(e,t){return e.split(" ").forEach((e=>{this.observers[e]||(this.observers[e]=new Map);const n=this.observers[e].get(t)||0;this.observers[e].set(t,n+1)})),this}off(e,t){this.observers[e]&&(t?this.observers[e].delete(t):delete this.observers[e])}emit(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];if(this.observers[e]){Array.from(this.observers[e].entries()).forEach((e=>{let[t,a]=e;for(let o=0;o<a;o++)t(...n)}))}if(this.observers["*"]){Array.from(this.observers["*"].entries()).forEach((t=>{let[a,o]=t;for(let s=0;s<o;s++)a.apply(a,[e,...n])}))}}}function Fe(){let e,t;const n=new Promise(((n,a)=>{e=n,t=a}));return n.resolve=e,n.reject=t,n}function Me(e){return null==e?"":""+e}const We=/###/g;function Be(e,t,n){function a(e){return e&&e.indexOf("###")>-1?e.replace(We,"."):e}function o(){return!e||"string"===typeof e}const s="string"!==typeof t?t:t.split(".");let r=0;for(;r<s.length-1;){if(o())return{};const t=a(s[r]);!e[t]&&n&&(e[t]=new n),e=Object.prototype.hasOwnProperty.call(e,t)?e[t]:{},++r}return o()?{}:{obj:e,k:a(s[r])}}function ze(e,t,n){const{obj:a,k:o}=Be(e,t,Object);if(void 0!==a||1===t.length)return void(a[o]=n);let s=t[t.length-1],r=t.slice(0,t.length-1),i=Be(e,r,Object);for(;void 0===i.obj&&r.length;)s="".concat(r[r.length-1],".").concat(s),r=r.slice(0,r.length-1),i=Be(e,r,Object),i&&i.obj&&"undefined"!==typeof i.obj["".concat(i.k,".").concat(s)]&&(i.obj=void 0);i.obj["".concat(i.k,".").concat(s)]=n}function Ue(e,t){const{obj:n,k:a}=Be(e,t);if(n)return n[a]}function He(e,t,n){const a=Ue(e,n);return void 0!==a?a:Ue(t,n)}function Ge(e,t,n){for(const a in t)"__proto__"!==a&&"constructor"!==a&&(a in e?"string"===typeof e[a]||e[a]instanceof String||"string"===typeof t[a]||t[a]instanceof String?n&&(e[a]=t[a]):Ge(e[a],t[a],n):e[a]=t[a]);return e}function Ve(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}var Ke={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};function $e(e){return"string"===typeof e?e.replace(/[&<>"'\/]/g,(e=>Ke[e])):e}const qe=[" ",",","?","!",";"],Ye=new class{constructor(e){this.capacity=e,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(e){const t=this.regExpMap.get(e);if(void 0!==t)return t;const n=new RegExp(e);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(e,n),this.regExpQueue.push(e),n}}(20);function Ze(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:".";if(!e)return;if(e[t])return e[t];const a=t.split(n);let o=e;for(let s=0;s<a.length;){if(!o||"object"!==typeof o)return;let e,t="";for(let r=s;r<a.length;++r)if(r!==s&&(t+=n),t+=a[r],e=o[t],void 0!==e){if(["string","number","boolean"].indexOf(typeof e)>-1&&r<a.length-1)continue;s+=r-s+1;break}o=e}return o}function Je(e){return e&&e.indexOf("_")>0?e.replace("_","-"):e}class Xe extends Le{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=e||{},this.options=t,void 0===this.options.keySeparator&&(this.options.keySeparator="."),void 0===this.options.ignoreJSONStructure&&(this.options.ignoreJSONStructure=!0)}addNamespaces(e){this.options.ns.indexOf(e)<0&&this.options.ns.push(e)}removeNamespaces(e){const t=this.options.ns.indexOf(e);t>-1&&this.options.ns.splice(t,1)}getResource(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const o=void 0!==a.keySeparator?a.keySeparator:this.options.keySeparator,s=void 0!==a.ignoreJSONStructure?a.ignoreJSONStructure:this.options.ignoreJSONStructure;let r;e.indexOf(".")>-1?r=e.split("."):(r=[e,t],n&&(Array.isArray(n)?r.push(...n):"string"===typeof n&&o?r.push(...n.split(o)):r.push(n)));const i=Ue(this.data,r);return!i&&!t&&!n&&e.indexOf(".")>-1&&(e=r[0],t=r[1],n=r.slice(2).join(".")),i||!s||"string"!==typeof n?i:Ze(this.data&&this.data[e]&&this.data[e][t],n,o)}addResource(e,t,n,a){let o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{silent:!1};const s=void 0!==o.keySeparator?o.keySeparator:this.options.keySeparator;let r=[e,t];n&&(r=r.concat(s?n.split(s):n)),e.indexOf(".")>-1&&(r=e.split("."),a=t,t=r[1]),this.addNamespaces(t),ze(this.data,r,a),o.silent||this.emit("added",e,t,n,a)}addResources(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{silent:!1};for(const o in n)"string"!==typeof n[o]&&"[object Array]"!==Object.prototype.toString.apply(n[o])||this.addResource(e,t,o,n[o],{silent:!0});a.silent||this.emit("added",e,t,n)}addResourceBundle(e,t,n,a,o){let s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{silent:!1,skipCopy:!1},r=[e,t];e.indexOf(".")>-1&&(r=e.split("."),a=n,n=t,t=r[1]),this.addNamespaces(t);let i=Ue(this.data,r)||{};s.skipCopy||(n=JSON.parse(JSON.stringify(n))),a?Ge(i,n,o):i={...i,...n},ze(this.data,r,i),s.silent||this.emit("added",e,t,n)}removeResourceBundle(e,t){this.hasResourceBundle(e,t)&&delete this.data[e][t],this.removeNamespaces(t),this.emit("removed",e,t)}hasResourceBundle(e,t){return void 0!==this.getResource(e,t)}getResourceBundle(e,t){return t||(t=this.options.defaultNS),"v1"===this.options.compatibilityAPI?{...this.getResource(e,t)}:this.getResource(e,t)}getDataByLanguage(e){return this.data[e]}hasLanguageSomeTranslations(e){const t=this.getDataByLanguage(e);return!!(t&&Object.keys(t)||[]).find((e=>t[e]&&Object.keys(t[e]).length>0))}toJSON(){return this.data}}var Qe={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,a,o){return e.forEach((e=>{this.processors[e]&&(t=this.processors[e].process(t,n,a,o))})),t}};const et={};class tt extends Le{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};super(),function(e,t,n){e.forEach((e=>{t[e]&&(n[e]=t[e])}))}(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],e,this),this.options=t,void 0===this.options.keySeparator&&(this.options.keySeparator="."),this.logger=Ie.create("translator")}changeLanguage(e){e&&(this.language=e)}exists(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}};if(void 0===e||null===e)return!1;const n=this.resolve(e,t);return n&&void 0!==n.res}extractFromKey(e,t){let n=void 0!==t.nsSeparator?t.nsSeparator:this.options.nsSeparator;void 0===n&&(n=":");const a=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator;let o=t.ns||this.options.defaultNS||[];const s=n&&e.indexOf(n)>-1,r=!this.options.userDefinedKeySeparator&&!t.keySeparator&&!this.options.userDefinedNsSeparator&&!t.nsSeparator&&!function(e,t,n){t=t||"",n=n||"";const a=qe.filter((e=>t.indexOf(e)<0&&n.indexOf(e)<0));if(0===a.length)return!0;const o=Ye.getRegExp("(".concat(a.map((e=>"?"===e?"\\?":e)).join("|"),")"));let s=!o.test(e);if(!s){const t=e.indexOf(n);t>0&&!o.test(e.substring(0,t))&&(s=!0)}return s}(e,n,a);if(s&&!r){const t=e.match(this.interpolator.nestingRegexp);if(t&&t.length>0)return{key:e,namespaces:o};const s=e.split(n);(n!==a||n===a&&this.options.ns.indexOf(s[0])>-1)&&(o=s.shift()),e=s.join(a)}return"string"===typeof o&&(o=[o]),{key:e,namespaces:o}}translate(e,t,n){if("object"!==typeof t&&this.options.overloadTranslationOptionHandler&&(t=this.options.overloadTranslationOptionHandler(arguments)),"object"===typeof t&&(t={...t}),t||(t={}),void 0===e||null===e)return"";Array.isArray(e)||(e=[String(e)]);const a=void 0!==t.returnDetails?t.returnDetails:this.options.returnDetails,o=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator,{key:s,namespaces:r}=this.extractFromKey(e[e.length-1],t),i=r[r.length-1],l=t.lng||this.language,c=t.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(l&&"cimode"===l.toLowerCase()){if(c){const e=t.nsSeparator||this.options.nsSeparator;return a?{res:"".concat(i).concat(e).concat(s),usedKey:s,exactUsedKey:s,usedLng:l,usedNS:i,usedParams:this.getUsedParamsDetails(t)}:"".concat(i).concat(e).concat(s)}return a?{res:s,usedKey:s,exactUsedKey:s,usedLng:l,usedNS:i,usedParams:this.getUsedParamsDetails(t)}:s}const m=this.resolve(e,t);let d=m&&m.res;const p=m&&m.usedKey||s,u=m&&m.exactUsedKey||s,h=Object.prototype.toString.apply(d),f=void 0!==t.joinArrays?t.joinArrays:this.options.joinArrays,g=!this.i18nFormat||this.i18nFormat.handleAsObject;if(g&&d&&("string"!==typeof d&&"boolean"!==typeof d&&"number"!==typeof d)&&["[object Number]","[object Function]","[object RegExp]"].indexOf(h)<0&&("string"!==typeof f||"[object Array]"!==h)){if(!t.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const e=this.options.returnedObjectHandler?this.options.returnedObjectHandler(p,d,{...t,ns:r}):"key '".concat(s," (").concat(this.language,")' returned an object instead of string.");return a?(m.res=e,m.usedParams=this.getUsedParamsDetails(t),m):e}if(o){const e="[object Array]"===h,n=e?[]:{},a=e?u:p;for(const s in d)if(Object.prototype.hasOwnProperty.call(d,s)){const e="".concat(a).concat(o).concat(s);n[s]=this.translate(e,{...t,joinArrays:!1,ns:r}),n[s]===e&&(n[s]=d[s])}d=n}}else if(g&&"string"===typeof f&&"[object Array]"===h)d=d.join(f),d&&(d=this.extendTranslation(d,e,t,n));else{let a=!1,r=!1;const c=void 0!==t.count&&"string"!==typeof t.count,p=tt.hasDefaultValue(t),u=c?this.pluralResolver.getSuffix(l,t.count,t):"",h=t.ordinal&&c?this.pluralResolver.getSuffix(l,t.count,{ordinal:!1}):"",f=c&&!t.ordinal&&0===t.count&&this.pluralResolver.shouldUseIntlApi(),g=f&&t["defaultValue".concat(this.options.pluralSeparator,"zero")]||t["defaultValue".concat(u)]||t["defaultValue".concat(h)]||t.defaultValue;!this.isValidLookup(d)&&p&&(a=!0,d=g),this.isValidLookup(d)||(r=!0,d=s);const y=(t.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&r?void 0:d,v=p&&g!==d&&this.options.updateMissing;if(r||a||v){if(this.logger.log(v?"updateKey":"missingKey",l,i,s,v?g:d),o){const e=this.resolve(s,{...t,keySeparator:!1});e&&e.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let e=[];const n=this.languageUtils.getFallbackCodes(this.options.fallbackLng,t.lng||this.language);if("fallback"===this.options.saveMissingTo&&n&&n[0])for(let t=0;t<n.length;t++)e.push(n[t]);else"all"===this.options.saveMissingTo?e=this.languageUtils.toResolveHierarchy(t.lng||this.language):e.push(t.lng||this.language);const a=(e,n,a)=>{const o=p&&a!==d?a:y;this.options.missingKeyHandler?this.options.missingKeyHandler(e,i,n,o,v,t):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(e,i,n,o,v,t),this.emit("missingKey",e,i,n,d)};this.options.saveMissing&&(this.options.saveMissingPlurals&&c?e.forEach((e=>{const n=this.pluralResolver.getSuffixes(e,t);f&&t["defaultValue".concat(this.options.pluralSeparator,"zero")]&&n.indexOf("".concat(this.options.pluralSeparator,"zero"))<0&&n.push("".concat(this.options.pluralSeparator,"zero")),n.forEach((n=>{a([e],s+n,t["defaultValue".concat(n)]||g)}))})):a(e,s,g))}d=this.extendTranslation(d,e,t,m,n),r&&d===s&&this.options.appendNamespaceToMissingKey&&(d="".concat(i,":").concat(s)),(r||a)&&this.options.parseMissingKeyHandler&&(d="v1"!==this.options.compatibilityAPI?this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?"".concat(i,":").concat(s):s,a?d:void 0):this.options.parseMissingKeyHandler(d))}return a?(m.res=d,m.usedParams=this.getUsedParamsDetails(t),m):d}extendTranslation(e,t,n,a,o){var s=this;if(this.i18nFormat&&this.i18nFormat.parse)e=this.i18nFormat.parse(e,{...this.options.interpolation.defaultVariables,...n},n.lng||this.language||a.usedLng,a.usedNS,a.usedKey,{resolved:a});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init({...n,interpolation:{...this.options.interpolation,...n.interpolation}});const r="string"===typeof e&&(n&&n.interpolation&&void 0!==n.interpolation.skipOnVariables?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let i;if(r){const t=e.match(this.interpolator.nestingRegexp);i=t&&t.length}let l=n.replace&&"string"!==typeof n.replace?n.replace:n;if(this.options.interpolation.defaultVariables&&(l={...this.options.interpolation.defaultVariables,...l}),e=this.interpolator.interpolate(e,l,n.lng||this.language,n),r){const t=e.match(this.interpolator.nestingRegexp);i<(t&&t.length)&&(n.nest=!1)}!n.lng&&"v1"!==this.options.compatibilityAPI&&a&&a.res&&(n.lng=a.usedLng),!1!==n.nest&&(e=this.interpolator.nest(e,(function(){for(var e=arguments.length,a=new Array(e),r=0;r<e;r++)a[r]=arguments[r];return o&&o[0]===a[0]&&!n.context?(s.logger.warn("It seems you are nesting recursively key: ".concat(a[0]," in key: ").concat(t[0])),null):s.translate(...a,t)}),n)),n.interpolation&&this.interpolator.reset()}const r=n.postProcess||this.options.postProcess,i="string"===typeof r?[r]:r;return void 0!==e&&null!==e&&i&&i.length&&!1!==n.applyPostProcessor&&(e=Qe.handle(i,e,t,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...a,usedParams:this.getUsedParamsDetails(n)},...n}:n,this)),e}resolve(e){let t,n,a,o,s,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return"string"===typeof e&&(e=[e]),e.forEach((e=>{if(this.isValidLookup(t))return;const i=this.extractFromKey(e,r),l=i.key;n=l;let c=i.namespaces;this.options.fallbackNS&&(c=c.concat(this.options.fallbackNS));const m=void 0!==r.count&&"string"!==typeof r.count,d=m&&!r.ordinal&&0===r.count&&this.pluralResolver.shouldUseIntlApi(),p=void 0!==r.context&&("string"===typeof r.context||"number"===typeof r.context)&&""!==r.context,u=r.lngs?r.lngs:this.languageUtils.toResolveHierarchy(r.lng||this.language,r.fallbackLng);c.forEach((e=>{this.isValidLookup(t)||(s=e,!et["".concat(u[0],"-").concat(e)]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(s)&&(et["".concat(u[0],"-").concat(e)]=!0,this.logger.warn('key "'.concat(n,'" for languages "').concat(u.join(", "),'" won\'t get resolved as namespace "').concat(s,'" was not yet loaded'),"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),u.forEach((n=>{if(this.isValidLookup(t))return;o=n;const s=[l];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(s,l,n,e,r);else{let e;m&&(e=this.pluralResolver.getSuffix(n,r.count,r));const t="".concat(this.options.pluralSeparator,"zero"),a="".concat(this.options.pluralSeparator,"ordinal").concat(this.options.pluralSeparator);if(m&&(s.push(l+e),r.ordinal&&0===e.indexOf(a)&&s.push(l+e.replace(a,this.options.pluralSeparator)),d&&s.push(l+t)),p){const n="".concat(l).concat(this.options.contextSeparator).concat(r.context);s.push(n),m&&(s.push(n+e),r.ordinal&&0===e.indexOf(a)&&s.push(n+e.replace(a,this.options.pluralSeparator)),d&&s.push(n+t))}}let i;for(;i=s.pop();)this.isValidLookup(t)||(a=i,t=this.getResource(n,e,i,r))})))}))})),{res:t,usedKey:n,exactUsedKey:a,usedLng:o,usedNS:s}}isValidLookup(e){return void 0!==e&&!(!this.options.returnNull&&null===e)&&!(!this.options.returnEmptyString&&""===e)}getResource(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(e,t,n,a):this.resourceStore.getResource(e,t,n,a)}getUsedParamsDetails(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const t=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],n=e.replace&&"string"!==typeof e.replace;let a=n?e.replace:e;if(n&&"undefined"!==typeof e.count&&(a.count=e.count),this.options.interpolation.defaultVariables&&(a={...this.options.interpolation.defaultVariables,...a}),!n){a={...a};for(const e of t)delete a[e]}return a}static hasDefaultValue(e){const t="defaultValue";for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t===n.substring(0,t.length)&&void 0!==e[n])return!0;return!1}}function nt(e){return e.charAt(0).toUpperCase()+e.slice(1)}class at{constructor(e){this.options=e,this.supportedLngs=this.options.supportedLngs||!1,this.logger=Ie.create("languageUtils")}getScriptPartFromCode(e){if(!(e=Je(e))||e.indexOf("-")<0)return null;const t=e.split("-");return 2===t.length?null:(t.pop(),"x"===t[t.length-1].toLowerCase()?null:this.formatLanguageCode(t.join("-")))}getLanguagePartFromCode(e){if(!(e=Je(e))||e.indexOf("-")<0)return e;const t=e.split("-");return this.formatLanguageCode(t[0])}formatLanguageCode(e){if("string"===typeof e&&e.indexOf("-")>-1){const t=["hans","hant","latn","cyrl","cans","mong","arab"];let n=e.split("-");return this.options.lowerCaseLng?n=n.map((e=>e.toLowerCase())):2===n.length?(n[0]=n[0].toLowerCase(),n[1]=n[1].toUpperCase(),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=nt(n[1].toLowerCase()))):3===n.length&&(n[0]=n[0].toLowerCase(),2===n[1].length&&(n[1]=n[1].toUpperCase()),"sgn"!==n[0]&&2===n[2].length&&(n[2]=n[2].toUpperCase()),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=nt(n[1].toLowerCase())),t.indexOf(n[2].toLowerCase())>-1&&(n[2]=nt(n[2].toLowerCase()))),n.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}isSupportedCode(e){return("languageOnly"===this.options.load||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(e)>-1}getBestMatchFromCodes(e){if(!e)return null;let t;return e.forEach((e=>{if(t)return;const n=this.formatLanguageCode(e);this.options.supportedLngs&&!this.isSupportedCode(n)||(t=n)})),!t&&this.options.supportedLngs&&e.forEach((e=>{if(t)return;const n=this.getLanguagePartFromCode(e);if(this.isSupportedCode(n))return t=n;t=this.options.supportedLngs.find((e=>e===n?e:e.indexOf("-")<0&&n.indexOf("-")<0?void 0:0===e.indexOf(n)?e:void 0))})),t||(t=this.getFallbackCodes(this.options.fallbackLng)[0]),t}getFallbackCodes(e,t){if(!e)return[];if("function"===typeof e&&(e=e(t)),"string"===typeof e&&(e=[e]),"[object Array]"===Object.prototype.toString.apply(e))return e;if(!t)return e.default||[];let n=e[t];return n||(n=e[this.getScriptPartFromCode(t)]),n||(n=e[this.formatLanguageCode(t)]),n||(n=e[this.getLanguagePartFromCode(t)]),n||(n=e.default),n||[]}toResolveHierarchy(e,t){const n=this.getFallbackCodes(t||this.options.fallbackLng||[],e),a=[],o=e=>{e&&(this.isSupportedCode(e)?a.push(e):this.logger.warn("rejecting language code not found in supportedLngs: ".concat(e)))};return"string"===typeof e&&(e.indexOf("-")>-1||e.indexOf("_")>-1)?("languageOnly"!==this.options.load&&o(this.formatLanguageCode(e)),"languageOnly"!==this.options.load&&"currentOnly"!==this.options.load&&o(this.getScriptPartFromCode(e)),"currentOnly"!==this.options.load&&o(this.getLanguagePartFromCode(e))):"string"===typeof e&&o(this.formatLanguageCode(e)),n.forEach((e=>{a.indexOf(e)<0&&o(this.formatLanguageCode(e))})),a}}let ot=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],st={1:function(e){return Number(e>1)},2:function(e){return Number(1!=e)},3:function(e){return 0},4:function(e){return Number(e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2)},5:function(e){return Number(0==e?0:1==e?1:2==e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5)},6:function(e){return Number(1==e?0:e>=2&&e<=4?1:2)},7:function(e){return Number(1==e?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2)},8:function(e){return Number(1==e?0:2==e?1:8!=e&&11!=e?2:3)},9:function(e){return Number(e>=2)},10:function(e){return Number(1==e?0:2==e?1:e<7?2:e<11?3:4)},11:function(e){return Number(1==e||11==e?0:2==e||12==e?1:e>2&&e<20?2:3)},12:function(e){return Number(e%10!=1||e%100==11)},13:function(e){return Number(0!==e)},14:function(e){return Number(1==e?0:2==e?1:3==e?2:3)},15:function(e){return Number(e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2)},16:function(e){return Number(e%10==1&&e%100!=11?0:0!==e?1:2)},17:function(e){return Number(1==e||e%10==1&&e%100!=11?0:1)},18:function(e){return Number(0==e?0:1==e?1:2)},19:function(e){return Number(1==e?0:0==e||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3)},20:function(e){return Number(1==e?0:0==e||e%100>0&&e%100<20?1:2)},21:function(e){return Number(e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0)},22:function(e){return Number(1==e?0:2==e?1:(e<0||e>10)&&e%10==0?2:3)}};const rt=["v1","v2","v3"],it=["v4"],lt={zero:0,one:1,two:2,few:3,many:4,other:5};class ct{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.languageUtils=e,this.options=t,this.logger=Ie.create("pluralResolver"),this.options.compatibilityJSON&&!it.includes(this.options.compatibilityJSON)||"undefined"!==typeof Intl&&Intl.PluralRules||(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=function(){const e={};return ot.forEach((t=>{t.lngs.forEach((n=>{e[n]={numbers:t.nr,plurals:st[t.fc]}}))})),e}()}addRule(e,t){this.rules[e]=t}getRule(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(this.shouldUseIntlApi())try{return new Intl.PluralRules(Je("dev"===e?"en":e),{type:t.ordinal?"ordinal":"cardinal"})}catch(n){return}return this.rules[e]||this.rules[this.languageUtils.getLanguagePartFromCode(e)]}needsPlural(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=this.getRule(e,t);return this.shouldUseIntlApi()?n&&n.resolvedOptions().pluralCategories.length>1:n&&n.numbers.length>1}getPluralFormsOfKey(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.getSuffixes(e,n).map((e=>"".concat(t).concat(e)))}getSuffixes(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=this.getRule(e,t);return n?this.shouldUseIntlApi()?n.resolvedOptions().pluralCategories.sort(((e,t)=>lt[e]-lt[t])).map((e=>"".concat(this.options.prepend).concat(t.ordinal?"ordinal".concat(this.options.prepend):"").concat(e))):n.numbers.map((n=>this.getSuffix(e,n,t))):[]}getSuffix(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const a=this.getRule(e,n);return a?this.shouldUseIntlApi()?"".concat(this.options.prepend).concat(n.ordinal?"ordinal".concat(this.options.prepend):"").concat(a.select(t)):this.getSuffixRetroCompatible(a,t):(this.logger.warn("no plural rule found for: ".concat(e)),"")}getSuffixRetroCompatible(e,t){const n=e.noAbs?e.plurals(t):e.plurals(Math.abs(t));let a=e.numbers[n];this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]&&(2===a?a="plural":1===a&&(a=""));const o=()=>this.options.prepend&&a.toString()?this.options.prepend+a.toString():a.toString();return"v1"===this.options.compatibilityJSON?1===a?"":"number"===typeof a?"_plural_".concat(a.toString()):o():"v2"===this.options.compatibilityJSON||this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]?o():this.options.prepend&&n.toString()?this.options.prepend+n.toString():n.toString()}shouldUseIntlApi(){return!rt.includes(this.options.compatibilityJSON)}}function mt(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:".",o=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],s=He(e,t,n);return!s&&o&&"string"===typeof n&&(s=Ze(e,n,a),void 0===s&&(s=Ze(t,n,a))),s}class dt{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.logger=Ie.create("interpolator"),this.options=e,this.format=e.interpolation&&e.interpolation.format||(e=>e),this.init(e)}init(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e.interpolation||(e.interpolation={escapeValue:!0});const t=e.interpolation;this.escape=void 0!==t.escape?t.escape:$e,this.escapeValue=void 0===t.escapeValue||t.escapeValue,this.useRawValueToEscape=void 0!==t.useRawValueToEscape&&t.useRawValueToEscape,this.prefix=t.prefix?Ve(t.prefix):t.prefixEscaped||"{{",this.suffix=t.suffix?Ve(t.suffix):t.suffixEscaped||"}}",this.formatSeparator=t.formatSeparator?t.formatSeparator:t.formatSeparator||",",this.unescapePrefix=t.unescapeSuffix?"":t.unescapePrefix||"-",this.unescapeSuffix=this.unescapePrefix?"":t.unescapeSuffix||"",this.nestingPrefix=t.nestingPrefix?Ve(t.nestingPrefix):t.nestingPrefixEscaped||Ve("$t("),this.nestingSuffix=t.nestingSuffix?Ve(t.nestingSuffix):t.nestingSuffixEscaped||Ve(")"),this.nestingOptionsSeparator=t.nestingOptionsSeparator?t.nestingOptionsSeparator:t.nestingOptionsSeparator||",",this.maxReplaces=t.maxReplaces?t.maxReplaces:1e3,this.alwaysFormat=void 0!==t.alwaysFormat&&t.alwaysFormat,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const e=(e,t)=>e&&e.source===t?(e.lastIndex=0,e):new RegExp(t,"g");this.regexp=e(this.regexp,"".concat(this.prefix,"(.+?)").concat(this.suffix)),this.regexpUnescape=e(this.regexpUnescape,"".concat(this.prefix).concat(this.unescapePrefix,"(.+?)").concat(this.unescapeSuffix).concat(this.suffix)),this.nestingRegexp=e(this.nestingRegexp,"".concat(this.nestingPrefix,"(.+?)").concat(this.nestingSuffix))}interpolate(e,t,n,a){let o,s,r;const i=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{};function l(e){return e.replace(/\$/g,"$$$$")}const c=e=>{if(e.indexOf(this.formatSeparator)<0){const o=mt(t,i,e,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(o,void 0,n,{...a,...t,interpolationkey:e}):o}const o=e.split(this.formatSeparator),s=o.shift().trim(),r=o.join(this.formatSeparator).trim();return this.format(mt(t,i,s,this.options.keySeparator,this.options.ignoreJSONStructure),r,n,{...a,...t,interpolationkey:s})};this.resetRegExp();const m=a&&a.missingInterpolationHandler||this.options.missingInterpolationHandler,d=a&&a.interpolation&&void 0!==a.interpolation.skipOnVariables?a.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:e=>l(e)},{regex:this.regexp,safeValue:e=>this.escapeValue?l(this.escape(e)):l(e)}].forEach((t=>{for(r=0;o=t.regex.exec(e);){const n=o[1].trim();if(s=c(n),void 0===s)if("function"===typeof m){const t=m(e,o,a);s="string"===typeof t?t:""}else if(a&&Object.prototype.hasOwnProperty.call(a,n))s="";else{if(d){s=o[0];continue}this.logger.warn("missed to pass in variable ".concat(n," for interpolating ").concat(e)),s=""}else"string"===typeof s||this.useRawValueToEscape||(s=Me(s));const i=t.safeValue(s);if(e=e.replace(o[0],i),d?(t.regex.lastIndex+=s.length,t.regex.lastIndex-=o[0].length):t.regex.lastIndex=0,r++,r>=this.maxReplaces)break}})),e}nest(e,t){let n,a,o,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};function r(e,t){const n=this.nestingOptionsSeparator;if(e.indexOf(n)<0)return e;const a=e.split(new RegExp("".concat(n,"[ ]*{")));let s="{".concat(a[1]);e=a[0],s=this.interpolate(s,o);const r=s.match(/'/g),i=s.match(/"/g);(r&&r.length%2===0&&!i||i.length%2!==0)&&(s=s.replace(/'/g,'"'));try{o=JSON.parse(s),t&&(o={...t,...o})}catch(l){return this.logger.warn("failed parsing options string in nesting for key ".concat(e),l),"".concat(e).concat(n).concat(s)}return delete o.defaultValue,e}for(;n=this.nestingRegexp.exec(e);){let i=[];o={...s},o=o.replace&&"string"!==typeof o.replace?o.replace:o,o.applyPostProcessor=!1,delete o.defaultValue;let l=!1;if(-1!==n[0].indexOf(this.formatSeparator)&&!/{.*}/.test(n[1])){const e=n[1].split(this.formatSeparator).map((e=>e.trim()));n[1]=e.shift(),i=e,l=!0}if(a=t(r.call(this,n[1].trim(),o),o),a&&n[0]===e&&"string"!==typeof a)return a;"string"!==typeof a&&(a=Me(a)),a||(this.logger.warn("missed to resolve ".concat(n[1]," for nesting ").concat(e)),a=""),l&&(a=i.reduce(((e,t)=>this.format(e,t,s.lng,{...s,interpolationkey:n[1].trim()})),a.trim())),e=e.replace(n[0],a),this.regexp.lastIndex=0}return e}}function pt(e){const t={};return function(n,a,o){const s=a+JSON.stringify(o);let r=t[s];return r||(r=e(Je(a),o),t[s]=r),r(n)}}class ut{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.logger=Ie.create("formatter"),this.options=e,this.formats={number:pt(((e,t)=>{const n=new Intl.NumberFormat(e,{...t});return e=>n.format(e)})),currency:pt(((e,t)=>{const n=new Intl.NumberFormat(e,{...t,style:"currency"});return e=>n.format(e)})),datetime:pt(((e,t)=>{const n=new Intl.DateTimeFormat(e,{...t});return e=>n.format(e)})),relativetime:pt(((e,t)=>{const n=new Intl.RelativeTimeFormat(e,{...t});return e=>n.format(e,t.range||"day")})),list:pt(((e,t)=>{const n=new Intl.ListFormat(e,{...t});return e=>n.format(e)}))},this.init(e)}init(e){const t=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}}).interpolation;this.formatSeparator=t.formatSeparator?t.formatSeparator:t.formatSeparator||","}add(e,t){this.formats[e.toLowerCase().trim()]=t}addCached(e,t){this.formats[e.toLowerCase().trim()]=pt(t)}format(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return t.split(this.formatSeparator).reduce(((e,t)=>{const{formatName:o,formatOptions:s}=function(e){let t=e.toLowerCase().trim();const n={};if(e.indexOf("(")>-1){const a=e.split("(");t=a[0].toLowerCase().trim();const o=a[1].substring(0,a[1].length-1);"currency"===t&&o.indexOf(":")<0?n.currency||(n.currency=o.trim()):"relativetime"===t&&o.indexOf(":")<0?n.range||(n.range=o.trim()):o.split(";").forEach((e=>{if(!e)return;const[t,...a]=e.split(":"),o=a.join(":").trim().replace(/^'+|'+$/g,"");n[t.trim()]||(n[t.trim()]=o),"false"===o&&(n[t.trim()]=!1),"true"===o&&(n[t.trim()]=!0),isNaN(o)||(n[t.trim()]=parseInt(o,10))}))}return{formatName:t,formatOptions:n}}(t);if(this.formats[o]){let t=e;try{const r=a&&a.formatParams&&a.formatParams[a.interpolationkey]||{},i=r.locale||r.lng||a.locale||a.lng||n;t=this.formats[o](e,i,{...s,...a,...r})}catch(r){this.logger.warn(r)}return t}return this.logger.warn("there was no format function for ".concat(o)),e}),e)}}class ht extends Le{constructor(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};super(),this.backend=e,this.store=t,this.services=n,this.languageUtils=n.languageUtils,this.options=a,this.logger=Ie.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=a.maxParallelReads||10,this.readingCalls=0,this.maxRetries=a.maxRetries>=0?a.maxRetries:5,this.retryTimeout=a.retryTimeout>=1?a.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(n,a.backend,a)}queueLoad(e,t,n,a){const o={},s={},r={},i={};return e.forEach((e=>{let a=!0;t.forEach((t=>{const r="".concat(e,"|").concat(t);!n.reload&&this.store.hasResourceBundle(e,t)?this.state[r]=2:this.state[r]<0||(1===this.state[r]?void 0===s[r]&&(s[r]=!0):(this.state[r]=1,a=!1,void 0===s[r]&&(s[r]=!0),void 0===o[r]&&(o[r]=!0),void 0===i[t]&&(i[t]=!0)))})),a||(r[e]=!0)})),(Object.keys(o).length||Object.keys(s).length)&&this.queue.push({pending:s,pendingCount:Object.keys(s).length,loaded:{},errors:[],callback:a}),{toLoad:Object.keys(o),pending:Object.keys(s),toLoadLanguages:Object.keys(r),toLoadNamespaces:Object.keys(i)}}loaded(e,t,n){const a=e.split("|"),o=a[0],s=a[1];t&&this.emit("failedLoading",o,s,t),n&&this.store.addResourceBundle(o,s,n,void 0,void 0,{skipCopy:!0}),this.state[e]=t?-1:2;const r={};this.queue.forEach((n=>{!function(e,t,n,a){const{obj:o,k:s}=Be(e,t,Object);o[s]=o[s]||[],a&&(o[s]=o[s].concat(n)),a||o[s].push(n)}(n.loaded,[o],s),function(e,t){void 0!==e.pending[t]&&(delete e.pending[t],e.pendingCount--)}(n,e),t&&n.errors.push(t),0!==n.pendingCount||n.done||(Object.keys(n.loaded).forEach((e=>{r[e]||(r[e]={});const t=n.loaded[e];t.length&&t.forEach((t=>{void 0===r[e][t]&&(r[e][t]=!0)}))})),n.done=!0,n.errors.length?n.callback(n.errors):n.callback())})),this.emit("loaded",r),this.queue=this.queue.filter((e=>!e.done))}read(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:this.retryTimeout,s=arguments.length>5?arguments[5]:void 0;if(!e.length)return s(null,{});if(this.readingCalls>=this.maxParallelReads)return void this.waitingReads.push({lng:e,ns:t,fcName:n,tried:a,wait:o,callback:s});this.readingCalls++;const r=(r,i)=>{if(this.readingCalls--,this.waitingReads.length>0){const e=this.waitingReads.shift();this.read(e.lng,e.ns,e.fcName,e.tried,e.wait,e.callback)}r&&i&&a<this.maxRetries?setTimeout((()=>{this.read.call(this,e,t,n,a+1,2*o,s)}),o):s(r,i)},i=this.backend[n].bind(this.backend);if(2!==i.length)return i(e,t,r);try{const n=i(e,t);n&&"function"===typeof n.then?n.then((e=>r(null,e))).catch(r):r(null,n)}catch(l){r(l)}}prepareLoading(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),a&&a();"string"===typeof e&&(e=this.languageUtils.toResolveHierarchy(e)),"string"===typeof t&&(t=[t]);const o=this.queueLoad(e,t,n,a);if(!o.toLoad.length)return o.pending.length||a(),null;o.toLoad.forEach((e=>{this.loadOne(e)}))}load(e,t,n){this.prepareLoading(e,t,{},n)}reload(e,t,n){this.prepareLoading(e,t,{reload:!0},n)}loadOne(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";const n=e.split("|"),a=n[0],o=n[1];this.read(a,o,"read",void 0,void 0,((n,s)=>{n&&this.logger.warn("".concat(t,"loading namespace ").concat(o," for language ").concat(a," failed"),n),!n&&s&&this.logger.log("".concat(t,"loaded namespace ").concat(o," for language ").concat(a),s),this.loaded(e,n,s)}))}saveMissing(e,t,n,a,o){let s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},r=arguments.length>6&&void 0!==arguments[6]?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(t))this.logger.warn('did not save key "'.concat(n,'" as the namespace "').concat(t,'" was not yet loaded'),"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");else if(void 0!==n&&null!==n&&""!==n){if(this.backend&&this.backend.create){const l={...s,isUpdate:o},c=this.backend.create.bind(this.backend);if(c.length<6)try{let o;o=5===c.length?c(e,t,n,a,l):c(e,t,n,a),o&&"function"===typeof o.then?o.then((e=>r(null,e))).catch(r):r(null,o)}catch(i){r(i)}else c(e,t,n,a,r,l)}e&&e[0]&&this.store.addResource(e[0],t,n,a)}}}function ft(){return{debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:function(e){let t={};if("object"===typeof e[1]&&(t=e[1]),"string"===typeof e[1]&&(t.defaultValue=e[1]),"string"===typeof e[2]&&(t.tDescription=e[2]),"object"===typeof e[2]||"object"===typeof e[3]){const n=e[3]||e[2];Object.keys(n).forEach((e=>{t[e]=n[e]}))}return t},interpolation:{escapeValue:!0,format:e=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}}function gt(e){return"string"===typeof e.ns&&(e.ns=[e.ns]),"string"===typeof e.fallbackLng&&(e.fallbackLng=[e.fallbackLng]),"string"===typeof e.fallbackNS&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e}function yt(){}class vt extends Le{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;var n;if(super(),this.options=gt(e),this.services={},this.logger=Ie,this.modules={external:[]},n=this,Object.getOwnPropertyNames(Object.getPrototypeOf(n)).forEach((e=>{"function"===typeof n[e]&&(n[e]=n[e].bind(n))})),t&&!this.isInitialized&&!e.isClone){if(!this.options.initImmediate)return this.init(e,t),this;setTimeout((()=>{this.init(e,t)}),0)}}init(){var e=this;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;"function"===typeof t&&(n=t,t={}),!t.defaultNS&&!1!==t.defaultNS&&t.ns&&("string"===typeof t.ns?t.defaultNS=t.ns:t.ns.indexOf("translation")<0&&(t.defaultNS=t.ns[0]));const a=ft();function o(e){return e?"function"===typeof e?new e:e:null}if(this.options={...a,...this.options,...gt(t)},"v1"!==this.options.compatibilityAPI&&(this.options.interpolation={...a.interpolation,...this.options.interpolation}),void 0!==t.keySeparator&&(this.options.userDefinedKeySeparator=t.keySeparator),void 0!==t.nsSeparator&&(this.options.userDefinedNsSeparator=t.nsSeparator),!this.options.isClone){let t;this.modules.logger?Ie.init(o(this.modules.logger),this.options):Ie.init(null,this.options),this.modules.formatter?t=this.modules.formatter:"undefined"!==typeof Intl&&(t=ut);const n=new at(this.options);this.store=new Xe(this.options.resources,this.options);const s=this.services;s.logger=Ie,s.resourceStore=this.store,s.languageUtils=n,s.pluralResolver=new ct(n,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),!t||this.options.interpolation.format&&this.options.interpolation.format!==a.interpolation.format||(s.formatter=o(t),s.formatter.init(s,this.options),this.options.interpolation.format=s.formatter.format.bind(s.formatter)),s.interpolator=new dt(this.options),s.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},s.backendConnector=new ht(o(this.modules.backend),s.resourceStore,s,this.options),s.backendConnector.on("*",(function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),o=1;o<n;o++)a[o-1]=arguments[o];e.emit(t,...a)})),this.modules.languageDetector&&(s.languageDetector=o(this.modules.languageDetector),s.languageDetector.init&&s.languageDetector.init(s,this.options.detection,this.options)),this.modules.i18nFormat&&(s.i18nFormat=o(this.modules.i18nFormat),s.i18nFormat.init&&s.i18nFormat.init(this)),this.translator=new tt(this.services,this.options),this.translator.on("*",(function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),o=1;o<n;o++)a[o-1]=arguments[o];e.emit(t,...a)})),this.modules.external.forEach((e=>{e.init&&e.init(this)}))}if(this.format=this.options.interpolation.format,n||(n=yt),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const e=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);e.length>0&&"dev"!==e[0]&&(this.options.lng=e[0])}this.services.languageDetector||this.options.lng||this.logger.warn("init: no languageDetector is used and no lng is defined");["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach((t=>{this[t]=function(){return e.store[t](...arguments)}}));["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach((t=>{this[t]=function(){return e.store[t](...arguments),e}}));const s=Fe(),r=()=>{const e=(e,t)=>{this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),s.resolve(t),n(e,t)};if(this.languages&&"v1"!==this.options.compatibilityAPI&&!this.isInitialized)return e(null,this.t.bind(this));this.changeLanguage(this.options.lng,e)};return this.options.resources||!this.options.initImmediate?r():setTimeout(r,0),s}loadResources(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:yt;const n="string"===typeof e?e:this.language;if("function"===typeof e&&(t=e),!this.options.resources||this.options.partialBundledLanguages){if(n&&"cimode"===n.toLowerCase()&&(!this.options.preload||0===this.options.preload.length))return t();const e=[],a=t=>{if(!t)return;if("cimode"===t)return;this.services.languageUtils.toResolveHierarchy(t).forEach((t=>{"cimode"!==t&&e.indexOf(t)<0&&e.push(t)}))};if(n)a(n);else{this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach((e=>a(e)))}this.options.preload&&this.options.preload.forEach((e=>a(e))),this.services.backendConnector.load(e,this.options.ns,(e=>{e||this.resolvedLanguage||!this.language||this.setResolvedLanguage(this.language),t(e)}))}else t(null)}reloadResources(e,t,n){const a=Fe();return e||(e=this.languages),t||(t=this.options.ns),n||(n=yt),this.services.backendConnector.reload(e,t,(e=>{a.resolve(),n(e)})),a}use(e){if(!e)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!e.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return"backend"===e.type&&(this.modules.backend=e),("logger"===e.type||e.log&&e.warn&&e.error)&&(this.modules.logger=e),"languageDetector"===e.type&&(this.modules.languageDetector=e),"i18nFormat"===e.type&&(this.modules.i18nFormat=e),"postProcessor"===e.type&&Qe.addPostProcessor(e),"formatter"===e.type&&(this.modules.formatter=e),"3rdParty"===e.type&&this.modules.external.push(e),this}setResolvedLanguage(e){if(e&&this.languages&&!(["cimode","dev"].indexOf(e)>-1))for(let t=0;t<this.languages.length;t++){const e=this.languages[t];if(!(["cimode","dev"].indexOf(e)>-1)&&this.store.hasLanguageSomeTranslations(e)){this.resolvedLanguage=e;break}}}changeLanguage(e,t){var n=this;this.isLanguageChangingTo=e;const a=Fe();this.emit("languageChanging",e);const o=e=>{this.language=e,this.languages=this.services.languageUtils.toResolveHierarchy(e),this.resolvedLanguage=void 0,this.setResolvedLanguage(e)},s=(e,s)=>{s?(o(s),this.translator.changeLanguage(s),this.isLanguageChangingTo=void 0,this.emit("languageChanged",s),this.logger.log("languageChanged",s)):this.isLanguageChangingTo=void 0,a.resolve((function(){return n.t(...arguments)})),t&&t(e,(function(){return n.t(...arguments)}))},r=t=>{e||t||!this.services.languageDetector||(t=[]);const n="string"===typeof t?t:this.services.languageUtils.getBestMatchFromCodes(t);n&&(this.language||o(n),this.translator.language||this.translator.changeLanguage(n),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(n)),this.loadResources(n,(e=>{s(e,n)}))};return e||!this.services.languageDetector||this.services.languageDetector.async?!e&&this.services.languageDetector&&this.services.languageDetector.async?0===this.services.languageDetector.detect.length?this.services.languageDetector.detect().then(r):this.services.languageDetector.detect(r):r(e):r(this.services.languageDetector.detect()),a}getFixedT(e,t,n){var a=this;const o=function(e,t){let s;if("object"!==typeof t){for(var r=arguments.length,i=new Array(r>2?r-2:0),l=2;l<r;l++)i[l-2]=arguments[l];s=a.options.overloadTranslationOptionHandler([e,t].concat(i))}else s={...t};s.lng=s.lng||o.lng,s.lngs=s.lngs||o.lngs,s.ns=s.ns||o.ns,s.keyPrefix=s.keyPrefix||n||o.keyPrefix;const c=a.options.keySeparator||".";let m;return m=s.keyPrefix&&Array.isArray(e)?e.map((e=>"".concat(s.keyPrefix).concat(c).concat(e))):s.keyPrefix?"".concat(s.keyPrefix).concat(c).concat(e):e,a.t(m,s)};return"string"===typeof e?o.lng=e:o.lngs=e,o.ns=t,o.keyPrefix=n,o}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(e){this.options.defaultNS=e}hasLoadedNamespace(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const n=t.lng||this.resolvedLanguage||this.languages[0],a=!!this.options&&this.options.fallbackLng,o=this.languages[this.languages.length-1];if("cimode"===n.toLowerCase())return!0;const s=(e,t)=>{const n=this.services.backendConnector.state["".concat(e,"|").concat(t)];return-1===n||2===n};if(t.precheck){const e=t.precheck(this,s);if(void 0!==e)return e}return!!this.hasResourceBundle(n,e)||(!(this.services.backendConnector.backend&&(!this.options.resources||this.options.partialBundledLanguages))||!(!s(n,e)||a&&!s(o,e)))}loadNamespaces(e,t){const n=Fe();return this.options.ns?("string"===typeof e&&(e=[e]),e.forEach((e=>{this.options.ns.indexOf(e)<0&&this.options.ns.push(e)})),this.loadResources((e=>{n.resolve(),t&&t(e)})),n):(t&&t(),Promise.resolve())}loadLanguages(e,t){const n=Fe();"string"===typeof e&&(e=[e]);const a=this.options.preload||[],o=e.filter((e=>a.indexOf(e)<0));return o.length?(this.options.preload=a.concat(o),this.loadResources((e=>{n.resolve(),t&&t(e)})),n):(t&&t(),Promise.resolve())}dir(e){if(e||(e=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!e)return"rtl";const t=this.services&&this.services.languageUtils||new at(ft());return["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"].indexOf(t.getLanguagePartFromCode(e))>-1||e.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(){return new vt(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},arguments.length>1?arguments[1]:void 0)}cloneInstance(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:yt;const n=e.forkResourceStore;n&&delete e.forkResourceStore;const a={...this.options,...e,isClone:!0},o=new vt(a);void 0===e.debug&&void 0===e.prefix||(o.logger=o.logger.clone(e));return["store","services","language"].forEach((e=>{o[e]=this[e]})),o.services={...this.services},o.services.utils={hasLoadedNamespace:o.hasLoadedNamespace.bind(o)},n&&(o.store=new Xe(this.store.data,a),o.services.resourceStore=o.store),o.translator=new tt(o.services,a),o.translator.on("*",(function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];o.emit(e,...n)})),o.init(a,t),o.translator.options=a,o.translator.backendConnector.services.utils={hasLoadedNamespace:o.hasLoadedNamespace.bind(o)},o}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const bt=vt.createInstance();bt.createInstance=vt.createInstance;bt.createInstance,bt.dir,bt.init,bt.loadResources,bt.reloadResources,bt.use,bt.changeLanguage,bt.getFixedT,bt.t,bt.exists,bt.setDefaultNamespace,bt.hasLoadedNamespace,bt.loadNamespaces,bt.loadLanguages;__webpack_require__(399);Object.create(null);function wt(){if(console&&console.warn){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];"string"===typeof t[0]&&(t[0]="react-i18next:: ".concat(t[0])),console.warn(...t)}}const kt={};function xt(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];"string"===typeof t[0]&&kt[t[0]]||("string"===typeof t[0]&&(kt[t[0]]=new Date),wt(...t))}const _t=(e,t)=>()=>{if(e.isInitialized)t();else{const n=()=>{setTimeout((()=>{e.off("initialized",n)}),0),t()};e.on("initialized",n)}};function Tt(e,t,n){e.loadNamespaces(t,_t(e,n))}function St(e,t,n,a){"string"===typeof n&&(n=[n]),n.forEach((t=>{e.options.ns.indexOf(t)<0&&e.options.ns.push(t)})),e.loadLanguages(t,_t(e,a))}function Ct(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const a=t.languages[0],o=!!t.options&&t.options.fallbackLng,s=t.languages[t.languages.length-1];if("cimode"===a.toLowerCase())return!0;const r=(e,n)=>{const a=t.services.backendConnector.state["".concat(e,"|").concat(n)];return-1===a||2===a};return!(n.bindI18n&&n.bindI18n.indexOf("languageChanging")>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!r(t.isLanguageChangingTo,e))&&(!!t.hasResourceBundle(a,e)||(!(t.services.backendConnector.backend&&(!t.options.resources||t.options.partialBundledLanguages))||!(!r(a,e)||o&&!r(s,e))))}function Et(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!t.languages||!t.languages.length)return xt("i18n.languages were undefined or empty",t.languages),!0;const a=void 0!==t.options.ignoreJSONStructure;return a?t.hasLoadedNamespace(e,{lng:n.lng,precheck:(t,a)=>{if(n.bindI18n&&n.bindI18n.indexOf("languageChanging")>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!a(t.isLanguageChangingTo,e))return!1}}):Ct(e,t,n)}const jt=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,At={"&":"&","&":"&","<":"<","<":"<",">":">",">":">","'":"'","'":"'",""":'"',""":'"'," ":" "," ":" ","©":"\xa9","©":"\xa9","®":"\xae","®":"\xae","…":"\u2026","…":"\u2026","/":"/","/":"/"},Nt=e=>At[e];let Dt,Ot={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:e=>e.replace(jt,Nt)};function Rt(){return Ot}function Pt(){return Dt}const It={type:"3rdParty",init(e){!function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Ot={...Ot,...e}}(e.options.react),function(e){Dt=e}(e)}},Lt=(0,t.createContext)();class Ft{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach((e=>{this.usedNamespaces[e]||(this.usedNamespaces[e]=!0)}))}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}}const Mt=(e,n)=>{const a=(0,t.useRef)();return(0,t.useEffect)((()=>{a.current=n?a.current:e}),[e,n]),a.current};function Wt(e,t,n,a){return e.getFixedT(t,n,a)}function Bt(e,n,a,o){return(0,t.useCallback)(Wt(e,n,a,o),[e,n,a,o])}function zt(e){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{i18n:a}=n,{i18n:o,defaultNS:s}=(0,t.useContext)(Lt)||{},r=a||o||Pt();if(r&&!r.reportNamespaces&&(r.reportNamespaces=new Ft),!r){xt("You will need to pass in an i18next instance by using initReactI18next");const e=(e,t)=>"string"===typeof t?t:t&&"object"===typeof t&&"string"===typeof t.defaultValue?t.defaultValue:Array.isArray(e)?e[e.length-1]:e,t=[e,{},!1];return t.t=e,t.i18n={},t.ready=!1,t}r.options.react&&void 0!==r.options.react.wait&&xt("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");const i={...Rt(),...r.options.react,...n},{useSuspense:l,keyPrefix:c}=i;let m=e||s||r.options&&r.options.defaultNS;m="string"===typeof m?[m]:m||["translation"],r.reportNamespaces.addUsedNamespaces&&r.reportNamespaces.addUsedNamespaces(m);const d=(r.isInitialized||r.initializedStoreOnce)&&m.every((e=>Et(e,r,i))),p=Bt(r,n.lng||null,"fallback"===i.nsMode?m:m[0],c),u=()=>p,h=()=>Wt(r,n.lng||null,"fallback"===i.nsMode?m:m[0],c),[f,g]=(0,t.useState)(u);let y=m.join();n.lng&&(y="".concat(n.lng).concat(y));const v=Mt(y),b=(0,t.useRef)(!0);(0,t.useEffect)((()=>{const{bindI18n:e,bindI18nStore:t}=i;function a(){b.current&&g(h)}return b.current=!0,d||l||(n.lng?St(r,n.lng,m,(()=>{b.current&&g(h)})):Tt(r,m,(()=>{b.current&&g(h)}))),d&&v&&v!==y&&b.current&&g(h),e&&r&&r.on(e,a),t&&r&&r.store.on(t,a),()=>{b.current=!1,e&&r&&e.split(" ").forEach((e=>r.off(e,a))),t&&r&&t.split(" ").forEach((e=>r.store.off(e,a)))}}),[r,y]);const w=(0,t.useRef)(!0);(0,t.useEffect)((()=>{b.current&&!w.current&&g(u),w.current=!1}),[r,c]);const k=[f,r,d];if(k.t=f,k.i18n=r,k.ready=d,d)return k;if(!d&&!l)return k;throw new Promise((e=>{n.lng?St(r,n.lng,m,(()=>e())):Tt(r,m,(()=>e()))}))}function Ut(e){return{translation:(t=e,t.split("\xa7 ").slice(1).reduce(((e,t)=>{let n=t.indexOf("\n");return n===t.length-1&&(n=t.indexOf(":")),e[t.slice(0,n)]=t.slice(n+1).trim(),e}),{}))};var t}const Ht={de:Ut(Te),en:Ut(Se),es:Ut(Ce),fr:Ut(Ee),ja:Ut(je),pt:Ut(Ae),ru:Ut(Ne),zh:Ut(Oe),ko:Ut(De)},Gt=navigator.languages.filter((e=>2===e.length&&Ht[e])).shift()||"en";var Vt=__webpack_require__(98);if(!t.useState)throw new Error("mobx-react-lite requires React with Hooks support");if(!Vt.rC)throw new Error("mobx-react-lite@3 requires mobx at least version 6 to be available");var Kt=__webpack_require__(164);function $t(e){e()}function qt(e){return(0,Vt.Gf)(e)}var Yt="undefined"===typeof FinalizationRegistry?void 0:FinalizationRegistry;function Zt(e){return{reaction:e,mounted:!1,changedBeforeMount:!1,cleanAt:Date.now()+Jt}}var Jt=1e4;var Xt=function(e){var t="function"===typeof Symbol&&Symbol.iterator,n=t&&e[t],a=0;if(n)return n.call(e);if(e&&"number"===typeof e.length)return{next:function(){return e&&a>=e.length&&(e=void 0),{value:e&&e[a++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};var Qt=Yt?function(e){var t=new Map,n=1,a=new e((function(e){var n=t.get(e);n&&(n.reaction.dispose(),t.delete(e))}));return{addReactionToTrack:function(e,o,s){var r=n++;return a.register(s,r,e),e.current=Zt(o),e.current.finalizationRegistryCleanupToken=r,t.set(r,e.current),e.current},recordReactionAsCommitted:function(e){a.unregister(e),e.current&&e.current.finalizationRegistryCleanupToken&&t.delete(e.current.finalizationRegistryCleanupToken)},forceCleanupTimerToRunNowForTests:function(){},resetCleanupScheduleForTests:function(){}}}(Yt):function(){var e,t=new Set;function n(){void 0===e&&(e=setTimeout(a,1e4))}function a(){e=void 0;var a=Date.now();t.forEach((function(e){var n=e.current;n&&a>=n.cleanAt&&(n.reaction.dispose(),e.current=null,t.delete(e))})),t.size>0&&n()}return{addReactionToTrack:function(e,a,o){var s;return e.current=Zt(a),s=e,t.add(s),n(),e.current},recordReactionAsCommitted:function(e){t.delete(e)},forceCleanupTimerToRunNowForTests:function(){e&&(clearTimeout(e),a())},resetCleanupScheduleForTests:function(){var n,a;if(t.size>0){try{for(var o=Xt(t),s=o.next();!s.done;s=o.next()){var r=s.value,i=r.current;i&&(i.reaction.dispose(),r.current=null)}}catch(l){n={error:l}}finally{try{s&&!s.done&&(a=o.return)&&a.call(o)}finally{if(n)throw n.error}}t.clear()}e&&(clearTimeout(e),e=void 0)}}}(),en=Qt.addReactionToTrack,tn=Qt.recordReactionAsCommitted,nn=(Qt.resetCleanupScheduleForTests,Qt.forceCleanupTimerToRunNowForTests,!1);function an(){return nn}var on=function(e,t){var n="function"===typeof Symbol&&e[Symbol.iterator];if(!n)return e;var a,o,s=n.call(e),r=[];try{for(;(void 0===t||t-- >0)&&!(a=s.next()).done;)r.push(a.value)}catch(i){o={error:i}}finally{try{a&&!a.done&&(n=s.return)&&n.call(s)}finally{if(o)throw o.error}}return r};function sn(e){return"observer".concat(e)}var rn=function(){};function ln(){return new rn}function cn(e,n){if(void 0===n&&(n="observed"),an())return e();var a=on(t.useState(ln),1)[0],o=on(t.useState(),2)[1],s=function(){return o([])},r=t.useRef(null);if(!r.current)var i=new Vt.le(sn(n),(function(){l.mounted?s():l.changedBeforeMount=!0})),l=en(r,i,a);var c,m,d=r.current.reaction;if(t.useDebugValue(d,qt),t.useEffect((function(){return tn(r),r.current?(r.current.mounted=!0,r.current.changedBeforeMount&&(r.current.changedBeforeMount=!1,s())):(r.current={reaction:new Vt.le(sn(n),(function(){s()})),mounted:!0,changedBeforeMount:!1,cleanAt:1/0},s()),function(){r.current.reaction.dispose(),r.current=null}}),[]),d.track((function(){try{c=e()}catch(t){m=t}})),m)throw m;return c}var mn="function"===typeof Symbol&&Symbol.for,dn=mn?Symbol.for("react.forward_ref"):"function"===typeof t.forwardRef&&(0,t.forwardRef)((function(e){return null})).$$typeof,pn=mn?Symbol.for("react.memo"):"function"===typeof t.memo&&(0,t.memo)((function(e){return null})).$$typeof;function un(e,n){var a;if(pn&&e.$$typeof===pn)throw new Error("[mobx-react-lite] You are trying to use `observer` on a function component wrapped in either another `observer` or `React.memo`. The observer already applies 'React.memo' for you.");if(an())return e;var o=null!==(a=null===n||void 0===n?void 0:n.forwardRef)&&void 0!==a&&a,s=e,r=e.displayName||e.name;if(dn&&e.$$typeof===dn&&(o=!0,"function"!==typeof(s=e.render)))throw new Error("[mobx-react-lite] `render` property of ForwardRef was not a function");var i,l,c=function(e,t){return cn((function(){return s(e,t)}),r)};return""!==r&&(c.displayName=r),e.contextTypes&&(c.contextTypes=e.contextTypes),o&&(c=(0,t.forwardRef)(c)),c=(0,t.memo)(c),i=e,l=c,Object.keys(i).forEach((function(e){hn[e]||Object.defineProperty(l,e,Object.getOwnPropertyDescriptor(i,e))})),c}var hn={$$typeof:!0,render:!0,compare:!0,type:!0,displayName:!0};var fn;(fn=Kt.unstable_batchedUpdates)||(fn=$t),(0,Vt.jQ)({reactionScheduler:fn});var gn=__webpack_require__(274),yn=__webpack_require__(359);const vn=1,bn=2,wn=3,kn={commitsAfter1500:bn,commitsBefore1500:bn,workEveryTime:wn,workNotWork:wn,userNotWork:bn,userIsDied:bn,lessTasks:wn,moreTasks:vn,everyMessageLong:bn,everyMessageShort:wn,shortestName:bn,longestName:bn,moreCommits:bn,lessCommits:wn,oneCommitOneTask:bn,moreLazyDays:wn,lessLazyDays:vn,zeroLazyDays:vn,moreWorkDays:vn,moreScopes:vn,lessScopes:wn,moreDaysForTask:wn,more2DaysForTask:wn,moreDaysInProject:vn,lessDaysInProject:bn,more90DaysInProject:vn,lessDaysForTask:vn,adam:bn,more666DaysInProject:vn,more777DaysInProject:vn,moreRefactoring:vn,moreStyle:vn,hasCommitEveryTime:wn,more365DaysInProject:vn,moreReadMe:vn,moreTests:vn,moreDevOps:vn,longFilePath:bn,longFileName:bn,moreTasksInDay:vn,moreLongWaitPR:wn,morePRMerge:bn,firstLastCommit:bn,haveNotEmail:bn,hasCommitFrom0to7:wn,longWaitPR:wn,lastCommit:bn,longTask:wn,noCommitOnDay:bn,firstCommit:bn,horoscope1:bn,horoscope2:bn,horoscope3:bn,horoscope4:bn,horoscope5:bn,horoscope6:bn,horoscope7:bn,horoscope8:bn,horoscope9:bn,horoscope10:bn,horoscope11:bn,horoscope12:bn,longestMessage:bn,commitsAfter1800:vn,more3YearsInProject:vn,moreLintHint:vn,moreAddedFolders:bn,workOnWeekends:wn,fileRush:bn,lessWorkDays:wn,moreOnHoliday:wn,moreCreateCode:bn,moreRemoveCode:bn,moreChangeCode:bn,oneExtension:bn,allRelease:bn,removeCreateFile:bn,renameFile:bn};function xn(e){return new Map(e.map((e=>[e,!0])))}const _n=xn([".eslintrc",".stylelintrc.json"]),Tn=xn(["css","scss","less","style"]),Sn=xn(["test","mock","snap"]),Cn=xn(["Dockerfile","gradlew","gradlew.bat","gradle.properties","docker-compose.yml"]);function En(e){return[Object.entries((null===e||void 0===e?void 0:e.addedLinesByAuthor)||{}),Object.entries((null===e||void 0===e?void 0:e.changedLinesByAuthor)||{})]}function jn(e){const t=e.reduce(((e,t)=>(e[t[0]]=e[t[0]]?e[t[0]]+t[1]:t[1],e)),{});return Object.entries(t).sort(((e,t)=>t[1]-e[1]))}class An{constructor(){this.authors={}}addAuthor(e){this.authors[e]=[]}add(e,t,n){var a;const o=null===e||void 0===e||null===(a=e[0])||void 0===a?void 0:a[0];if(o){var s,r;if(t)null===(s=this.authors)||void 0===s||null===(r=s[o])||void 0===r||r.push(t);if(n){var i,l,c;const t=null===e||void 0===e||null===(i=e[e.length-1])||void 0===i?void 0:i[0];null===(l=this.authors)||void 0===l||null===(c=l[t])||void 0===c||c.push(n)}}}}var Nn=(0,yn.Z)("getMinMaxValue");function Dn(e,t,n){const a={};return e.forEach((e=>{n(e);const o=(t,n)=>{a[t]||(a[t]=[]),a[t].push([e.author,n||0])};o("nameLength",e.author.length),o("messageLength",e.messageLength[e.messageLength.length-1]),o("midMessageLength",e.middleMessageLength),o("tasks",e.tasks.length),o("days",e.days),o("moreRefactoring",e.types.refactor);const s=t.timestamp.statisticByAuthor[e.author];o("tasksInDay",s.tasksByTimestampCounter.max),o("commitsInDay",s.commitsByTimestampCounter.max);const r=t.pr.statisticByName[e.author]||{};o("moreLongWaitPR",null===r||void 0===r?void 0:r.maxDelayDays),o("morePRMerge",null===r||void 0===r?void 0:r.numberMergedPr),e.isStaff||(o("allDaysInProject",e.allDaysInProject),o("lazyDays",e.lazyDays),o("firstCommit",e.firstCommit.milliseconds))})),Object.keys(a).forEach((e=>{a[e].sort(((e,t)=>t[1]-e[1]))})),a}const On=new class{constructor(){Object.defineProperty(this,Nn,{value:Dn}),this.authors={}}updateByGrip(e,t){const n=e.author.statistic,a=new An,o=(0,gn.Z)(this,Nn)[Nn](n,e,(e=>{a.addAuthor(e.author)}));a.add(o.nameLength,"longestName","shortestName"),a.add(o.messageLength,"longestMessage"),a.add(o.midMessageLength,"everyMessageLong","everyMessageShort"),a.add(o.tasks,"moreTasks","lessTasks"),a.add(o.days,"moreWorkDays","lessWorkDays"),a.add(o.lazyDays,"moreLazyDays","lessLazyDays"),a.add(o.allDaysInProject,"moreDaysInProject","lessDaysInProject"),a.add(o.firstCommit,null,"adam"),a.add(o.moreRefactoring,"moreRefactoring"),a.add(o.tasksInDay,"moreTasksInDay"),a.add(o.commitsInDay,"moreCommits"),a.add(o.morePRMerge,"morePRMerge"),a.add(o.moreLongWaitPR,"moreLongWaitPR");const s=e.firstLastCommit.maxData.author,r=e.firstLastCommit.minData.author;r===s?a.authors[r].push("firstLastCommit"):(a.authors[r].push("firstCommit"),a.authors[s].push("lastCommit")),function(e,t){if(!e.files.list.length)return;const n=[],a=[],o=[],s=[],r=[],i={author:"",length:0},l={author:"",length:0},c={};e.files.list.forEach((e=>{var t,m,d,p,u;_n.has[e.name]&&n.push(En(e)),"md"===e.extension&&a.push(En(e)),Tn.has[e.extension]&&o.push(En(e)),(Sn.has[e.extension]||Sn.has[e.type])&&s.push(En(e)),Cn.has[e.name]&&r.push(En(e)),c[(null===(t=e.firstCommit)||void 0===t?void 0:t.author)||""]=c[(null===(m=e.firstCommit)||void 0===m?void 0:m.author)||""]?c[(null===(d=e.firstCommit)||void 0===d?void 0:d.author)||""]+1:1,e.name.length>l.length&&(l.author=null===(p=e.firstCommit)||void 0===p?void 0:p.author,l.length=e.name.length),e.path.length>i.length&&(i.author=null===(u=e.firstCommit)||void 0===u?void 0:u.author,i.length=e.name.length)}));const m=Object.entries(c).sort(((e,t)=>t[1]-e[1])),d=Object.entries(e.tree.addedFoldersByAuthor).map((e=>[e[0],e[1].length]));t.add(jn(m),"fileRush"),t.add(jn(d),"moreAddedFolders"),t.add(jn(n.flat(2)),"moreLintHint"),t.add(jn(a.flat(2)),"moreReadMe"),t.add(jn(o.flat(2)),"moreStyle"),t.add(jn(s.flat(2)),"moreTests"),t.add(jn(r.flat(2)),"moreDevOps"),t.authors[i.author].push("longFilePath"),t.authors[l.author].push("longFileName")}(t,a),n.forEach((t=>{const n=a.authors[t.author];this.authors[t.author]=function(e,t,n){const a=t.author.statisticByName[n],o=a.commitsByHour;a.commits>20&&(a.hours.filter((e=>e>=15)).length>.7*a.commits&&e.push("commitsAfter1500"),a.hours.filter((e=>e<=13)).length>.7*a.commits&&e.push("commitsBefore1500")),a.isStaff?e.push("userNotWork"):(o.slice(0,7).every((e=>e))&&e.push("hasCommitFrom0to7"),o.slice(10,18).some((e=>!e))&&e.push("noCommitOnDay"),o.slice(0,5).every((e=>!e))&&o.slice(18,24).every((e=>!e))&&e.push("commitsAfter1800"),o.every((e=>e))&&e.push("workEveryTime"),a.commitsByDayAndHour.every((e=>e.every((e=>e))))&&e.push("hasCommitEveryTime"),a.isDismissed&&e.push("userIsDied"),a.daysForTask<1&&e.push("lessDaysForTask"),a.daysForTask>2&&e.push("more2DaysForTask"),a.allDaysInProject>90&&e.push("more90DaysInProject"),a.allDaysInProject>=365&&e.push("more365DaysInProject"),a.allDaysInProject>=666&&e.push("more666DaysInProject"),a.allDaysInProject>=777&&e.push("more777DaysInProject"),a.allDaysInProject>=1095&&e.push("more3YearsInProject"),(a.commitsByDayAndHourTotal[5]||a.commitsByDayAndHourTotal[6])&&e.push("workOnWeekends"),(t.tasks.longTaskByAuthor[n]||{})>92&&e.push("longTask"));a.lastCommit.email||e.push("haveNotEmail"),0===a.lazyDays&&e.push("zeroLazyDays"),a.commits>0&&0===a.tasks&&e.push("workNotWork"),a.tasks/a.commits&&e.push("oneCommitOneTask"),e.push(function(e){const t=e.month+1,n=e.month,a=[{from:[22,12],to:[20,1]},{from:[20,1],to:[18,2]},{from:[19,2],to:[20,3]},{from:[21,3],to:[19,4]},{from:[20,4],to:[20,5]},{from:[21,5],to:[21,6]},{from:[22,6],to:[22,7]},{from:[23,7],to:[22,8]},{from:[23,8],to:[22,9]},{from:[23,9],to:[23,10]},{from:[24,10],to:[22,11]},{from:[23,11],to:[21,12]}].reduce(((e,a,o)=>e||(a.from[1]===t&&n>=a.from[0]||a.to[1]===t&&n<=a.to[0]?"".concat(o+1):e)),"");return"horoscope".concat(a)}(a.firstCommit));const s=t.pr.statisticByName[n]||{};return(null===s||void 0===s?void 0:s.maxDelayDays)>31&&e.push("longWaitPR"),e.reduce(((e,t)=>(e[kn[t]-1].push(t),e)),[[],[],[]])}(n,e,t.author)}))}},Rn=On;let Pn={};function In(e){return{id:Math.random(),value:e.defaultSalary.value,currency:e.defaultSalary.currency,workDaysInYear:e.defaultSalary.workDaysInYear,vacationDaysInYear:e.defaultSalary.vacationDaysInYear,workDaysInWeek:[...e.defaultSalary.workDaysInWeek],from:Pn.from,type:"full"}}function Ln(e,t,n){return{id:Math.random(),name:e,order:n,salary:[In(t)]}}function Fn(){return{version:2,defaultSalary:{value:3e3,currency:{ru:"RUB",en:"USD"}[_e.Z.language||""]||"EUR",workDaysInYear:247,vacationDaysInYear:28,workDaysInWeek:[1,1,1,1,1,0,0],type:"full"},linksPrefix:{task:"https://jira.com/secure/RapidBoard.jspa?task=",pr:"https://bitbucket.com/projects/assayo/repos/frontend/pull-requests/"},employees:[]}}const Mn={loadSettings(){const e=Fn(),t=localStorage.getItem("settings"),n=()=>(localStorage.removeItem("settings"),Promise.resolve(e));if(!t||t===JSON.stringify(e))return n();const a=JSON.parse(t);return a.version!==e.version?n():Promise.resolve(a)},saveSettings(e){const t=Fn();return JSON.stringify(t)===JSON.stringify(e)?localStorage.removeItem("settings"):localStorage.setItem("settings",JSON.stringify(e)),Promise.resolve()}};const Wn=new class{constructor(){this.settings={},(0,Vt.rC)(this,{settings:Vt.LO,loadUserSettings:Vt.aD})}loadUserSettings(){return Mn.loadSettings().then((e=>{var t;this.settings=(t=e,{...t,employees:t.employees.map((e=>{var t;return{...e,salary:null===e||void 0===e||null===(t=e.salary)||void 0===t?void 0:t.map((e=>({...e,milliseconds:new Date(e.from).getTime()})))}}))})}))}getUserByName(e){return this.settings.employees.find((t=>t.name===e))}getEmploymentContract(e,t){var n;const a=this.getUserByName(e),o=null===a||void 0===a||null===(n=a.salary)||void 0===n?void 0:n.length;if(!a||!o)return this.settings.defaultSalary;let s=a.salary[o-1];return t?(a.salary.forEach((e=>{e.milliseconds>=t||(s=e)})),s):s}getCurrentSalaryInMonth(e){return this.getEmploymentContract(e).value}getCurrentSalaryInDay(e){return this.getCurrentSalaryInMonth(e)/30}getMiddleSalaryInMonth(e,t,n){var a;const o=this.getUserByName(e),s=null===o||void 0===o||null===(a=o.salary)||void 0===a?void 0:a.length;if(!o||!s)return this.settings.defaultSalary.value;const r=t-n;let i=this.settings.defaultSalary,l=0,c=0;for(let m=0;m<s;m++){const e=o.salary[m],n=i.milliseconds||t,a=((e.milliseconds||n)-n)/r,s=a*i.value;l+=a,i=e,c+=s}return c+=(1-l)*i.value,c}},Bn=Wn,zn=864e5;function Un(){var e,t;return{ru:"ru-RU",en:"en-EN",zh:"zh-ZH",es:"es-ES",fr:"fr-FR",pt:"pt-PT",de:"de-DE",ja:"ja-JA",ko:"ko-KO"}[(null===(e=window)||void 0===e||null===(t=e.localization)||void 0===t?void 0:t.language)||"ru"]||"ru-RU"}const Hn=[3456e5,432e6,5184e5,0,zn,1728e5,2592e5],Gn=new Map;function Vn(e,t){var n,a;const o=(null===(n=window)||void 0===n||null===(a=n.localization)||void 0===a?void 0:a.language)||"ru",s=Gn.get("".concat(o).concat(e).concat(t));if(s)return s;const r=new Date(Hn[e]).toLocaleString(Un(),{weekday:t||"long"});return Gn.set("".concat(o).concat(e).concat(t),r),r}function Kn(e){const t=new Date(e),n=t.getDay()-1;return[t.toLocaleString(Un(),{day:"numeric",month:"long",year:"numeric"}),Vn(n<0?6:n,"long")]}function $n(e){return e<10?"0".concat(e):e}function qn(e){if(!e)return"";return new Date(e).toLocaleString(Un(),{day:"numeric",month:"long",year:"numeric"})}function Yn(e){if(!e)return"";return new Date(e).toISOString().substring(0,10).split("-").reverse().join(".")}function Zn(e){if(!e)return"";return new Date(e).toLocaleString(Un(),{hour:"numeric",minute:"numeric"})}function Jn(e,t){var n,a;const o=(null===Bn||void 0===Bn||null===(n=Bn.settings)||void 0===n||null===(a=n.defaultSalary)||void 0===a?void 0:a.currency)||"USD";return function(e,t){return"USD"!==t&&e?({USD:1,EUR:.92,RUB:90,CNY:7.26,JPY:158,KRW:1360,CAD:1.4}[t]||1)*e:e}(e||0,o).toLocaleString(Un(),{style:"currency",currency:o,currencyDisplay:"symbol",maximumFractionDigits:0,...t||{}})}function Xn(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return Jn(e,{notation:"compact",maximumFractionDigits:t})}function Qn(e){if(e===1/0||e===-1/0)return"\u2014";const t=e<15?1:0;return(e||0).toFixed(t)}function ea(e){let{from:t,to:n}=e;return t&&n?"".concat((a=t,a?new Date(a).toLocaleString(Un(),{day:"numeric",month:"long"}):"")," \u2014 ").concat(qn(n)):"".concat(qn(t)).concat(qn(n));var a}const ta={ALERT:"error",WARNING:"warning",FACT:"fact",INFO:"info"};class na{getTotalInfo(e){return e.author.list.reduce(((t,n)=>{const a=e.timestamp.statisticByAuthor[n],o=e.author.statisticByName[n],s=a.workByDay[5]+a.workByDay[6];return t[n]=[],s&&t[n].push({title:"recommendations.timestamp.common.title",description:"recommendations.timestamp.weekendDays.description",type:ta.ALERT,arguments:{title:[s]}}),o.daysLosses&&t[n].push({title:"recommendations.timestamp.common.title",description:"recommendations.timestamp.lossesDays.description",type:ta.WARNING,arguments:{title:[o.daysLosses]}}),t[n].push({title:"recommendations.timestamp.common.title",description:"recommendations.timestamp.allDays.description",type:ta.FACT,arguments:{title:[o.daysAll]}}),t[n].push(this.getFirstDay(a)),t[n].push(this.getLastDay(a)),t}),{})}getFirstDay(e){const t=e.allCommitsByTimestamp[0],[n,a]=Kn(t.timestamp);return{title:n,description:"recommendations.timestamp.firstCommit.description",type:ta.FACT,arguments:{description:[a]}}}getLastDay(e){const t=e.allCommitsByTimestamp[e.allCommitsByTimestamp.length-1],[n,a]=Kn(t.timestamp);return{title:n,description:"recommendations.timestamp.lastCommit.description",type:ta.FACT,arguments:{description:[a]}}}}class aa{getTotalInfo(e){const t=e.week.statistic.slice(0,3);return e.author.list.reduce(((e,n)=>(e[n]=[this.getLazyDays(t,n),this.getNotWork(t,n),this.getUpWork(t,n),this.getTasks(t,n)].filter((e=>e)),e)),{})}getLazyDays(e,t){const n=e.map((e=>e.lazyDays[t]));return n[0]<n[1]&&n[1]<n[2]?{title:"recommendations.week.lazyDays.down.title",description:"recommendations.week.lazyDays.down.description",type:ta.FACT}:n[0]>n[1]&&n[1]>n[2]?{title:"recommendations.week.lazyDays.up.title",description:"recommendations.week.lazyDays.up.description",type:ta.ALERT}:null}getNotWork(e,t){const n=e.map((e=>e.lazyDays[t]));return n[0]&&n[1]&&n[2]?{title:"recommendations.week.notWork.title",description:"recommendations.week.notWork.description",type:ta.ALERT}:null}getUpWork(e,t){const n=e.map((e=>e.weekDays[t]));return n[0]&&n[1]&&n[2]?{title:"recommendations.week.upWork.title",description:"recommendations.week.upWork.description",type:ta.ALERT}:null}getTasks(e,t){const n=e.map((e=>e.taskInDay[t]));return n[0]<n[1]&&n[1]<n[2]?{title:"recommendations.week.task.up.title",description:"recommendations.week.task.up.description",type:ta.FACT}:n[0]>n[1]&&n[1]>n[2]?{title:"recommendations.week.task.down.title",description:"recommendations.week.task.down.description",type:ta.ALERT}:null}}class oa{getTotalInfo(e){const t=[],n=[],a=[],o=[],s=[],r=[];let i=1;e.author.list.forEach((l=>{const c=e.author.statisticByName[l];if(c.isStaff)return void a.push(l);if(c.isDismissed)return void n.push(l);t.push(l);const m=c.daysWorked/c.daysLosses;m>=0&&m<3&&o.unshift(l),m>=3&&m<5&&s.unshift(l),i*=m;100*Object.values(c.types).sort().pop()/c.commits>=70&&r.unshift(l)})),i=i**(1/t.length);return[this.getProjectType(i),o.length?{title:"recommendations.author.lotOfLazy.title",description:"recommendations.author.lotOfLazy.description",type:ta.ALERT,arguments:{title:o.length,description:o.join(";\n- ")}}:null,s.length?{title:"recommendations.author.manyLazy.title",description:"recommendations.author.manyLazy.description",type:ta.WARNING,arguments:{title:s.length,description:s.join(";\n- ")}}:null,r.length?{title:r,description:"recommendations.author.oneTypeMans",type:ta.WARNING}:null,t.length?{title:"recommendations.author.workToday.title",description:"recommendations.author.workToday.description",type:ta.FACT,arguments:{title:t.length,description:t.join(";\n- ")}}:null,n.length?{title:"recommendations.author.dismissed.title",description:"recommendations.author.dismissed.description",type:ta.FACT,arguments:{title:n.length,description:n.join(";\n- ")}}:null,a.length?{title:"recommendations.author.staff.title",description:"recommendations.author.staff.description",type:ta.FACT,arguments:{title:a.length,description:a.join(";\n- ")}}:null,{title:"recommendations.author.manager.title",description:"recommendations.author.manager.description",type:ta.INFO},{title:"recommendations.author.shorTalk.title",description:"recommendations.author.shorTalk.description",type:ta.INFO},{title:"recommendations.author.ipr.title",description:"recommendations.author.ipr.description",type:ta.INFO},{title:"recommendations.author.oneToOne.title",description:"recommendations.author.oneToOne.description",type:ta.INFO},{title:"recommendations.author.club.title",description:"recommendations.author.club.description",type:ta.INFO}].filter((e=>e))}getProjectType(e){return e<1?{title:"recommendations.author.projectType.openSource.title",description:"recommendations.author.projectType.openSource.description",type:ta.FACT}:e<5?{title:"recommendations.author.projectType.easy.title",description:"recommendations.author.projectType.easy.description",type:ta.ALERT}:null}}class sa{getTotalInfo(e){if(e.author.list.length<2)return[];const t=e.team.statistic;return[this.getWeekIsWork(t)].filter((e=>e))}getWeekIsWork(e){const t=Math.min(...e.commitsByDayAndHourTotal.slice(0,5)),n=Math.max(...e.commitsByDayAndHourTotal.slice(5,7))/t;return n>.45?{title:"recommendations.hour.onlyWork.title",description:"recommendations.hour.onlyWork.description",type:ta.ALERT}:n>.2?{title:"recommendations.hour.weekends.title",description:"recommendations.hour.weekends.description",type:ta.ALERT}:n>0?{title:"recommendations.hour.easy.title",description:"recommendations.hour.easy.description",type:ta.WARNING}:null}}class ra{getTotalInfo(e){const t=Jn(e.team.statistic.moneyWorked);return[this.getBusFactor(e),this.getManyTypes(e),this.getParallelism(e),{title:t,description:"recommendations.scope.money",type:ta.FACT},{title:"recommendations.scope.plan.title",description:"recommendations.scope.plan.description",type:ta.INFO},{title:"recommendations.scope.cost.title",description:"recommendations.scope.cost.description",type:ta.INFO}].filter((e=>e))}getParallelism(e){if(e.author.list.length<3||e.scope.list.length<3)return null;const t=[];e.scope.statistic.forEach((n=>{let a=0;e.author.list.forEach((e=>{var t;a+=(null===(t=n.authors[e])||void 0===t?void 0:t.days)||0})),t.push(a/n.days)}));const n=t.reduce(((e,t)=>e+t),0)/t.length;return n<1.3?{title:"recommendations.scope.parallelism.not.title",description:"recommendations.scope.parallelism.not.description",type:ta.FACT}:n<2?{title:"recommendations.scope.parallelism.has.title",description:"recommendations.scope.parallelism.has.description",type:ta.FACT}:{title:"recommendations.scope.parallelism.every.title",description:"recommendations.scope.parallelism.every.description",type:ta.FACT}}getBusFactor(e){if(e.author.list.length<3||e.scope.list.length<3)return null;const t=e.scope.statistic.filter((t=>{const n=.8*t.commits;return e.author.list.some((e=>{var a;return(null===(a=t.authors[e])||void 0===a?void 0:a.commits)>=n}))})).map((e=>e.scope));if(!t.length)return null;return t.length>.6*e.scope.statistic.length?{title:"recommendations.scope.bus.everyHasOne.title",description:"recommendations.scope.bus.everyHasOne.description",type:ta.WARNING}:{title:t,description:"recommendations.scope.bus.oneMaintainer",type:ta.ALERT}}getManyTypes(e){if(e.scope.list.length<3)return null;const t=e.scope.statistic.filter((t=>{const n=.8*t.commits;return e.type.list.some((e=>t.types[e]>=n))})).map((e=>e.scope));return t.length>.6*e.scope.statistic.length?{title:"recommendations.scope.types.process.title",description:["recommendations.scope.types.process.description","recommendations.scope.types.common"],type:ta.WARNING}:{title:t,description:["recommendations.scope.types.one","recommendations.scope.types.common"],type:ta.WARNING}}}class ia{getTotalInfo(e){if(e.author.list.length<2)return[];const t=e.timestamp.statistic,n=t.workByDay[5]+t.workByDay[6],a=t.allCommitsByTimestamp.length;return[n?{title:"recommendations.timestamp.common.title",description:"recommendations.timestamp.weekendDays.description",type:ta.ALERT,arguments:{title:[n]}}:null,this.getWorkOnWeek(t.allCommitsByTimestamp.length,n),{title:"recommendations.timestamp.common.title",description:"recommendations.timestamp.allDays.description",type:ta.FACT,arguments:{title:[a]}},this.getFirstDay(t),this.getLastDay(t)].filter((e=>e))}getWorkOnWeek(e,t){const n=100*t/e;return n>13?{title:"recommendations.timestamp.regularWeekendWord.title",description:"recommendations.timestamp.weekendWord.description",type:ta.ALERT}:n>7?{title:"recommendations.timestamp.sometimeWeekendWord.title",description:"recommendations.timestamp.weekendWord.description",type:ta.ALERT}:n>2?{title:"recommendations.timestamp.neverWeekendWord.title",description:"recommendations.timestamp.neverWeekendWord.description",type:ta.FACT}:null}getFirstDay(e){const t=e.allCommitsByTimestamp[0],[n,a]=Kn(t.timestamp);return{title:n,description:"recommendations.timestamp.firstCommit.description",type:ta.FACT,arguments:{description:[a]}}}getLastDay(e){const t=e.allCommitsByTimestamp[e.allCommitsByTimestamp.length-1],[n,a]=Kn(t.timestamp);return{title:n,description:"recommendations.timestamp.lastCommit.description",type:ta.FACT,arguments:{description:[a]}}}}class la{getTotalInfo(e){const t=e.type.statistic.filter((e=>e.tasks>20)).length<7;return[this.getBusFactor(e),t?{title:"recommendations.type.fewTypes.title",description:"recommendations.type.fewTypes.description",type:ta.FACT}:null,{title:"recommendations.type.diff.title",description:"recommendations.type.diff.description",type:ta.INFO},{title:"recommendations.type.buddy.title",description:"recommendations.type.buddy.description",type:ta.INFO}].filter((e=>e))}getBusFactor(e){if(e.author.list.length<2)return null;if(e.type.statistic.length>200)return null;const t=e.type.statistic.filter((t=>{const n=.8*t.commits;return e.author.list.some((e=>t.commitsByAuthors[e]>=n))})).map((e=>e.type));if(!t.length)return null;return t.length>.6*e.type.statistic.length?{title:"recommendations.type.everyHasOne.title",description:["recommendations.type.everyHasOne.description","recommendations.type.common"],type:ta.WARNING}:{title:"recommendations.type.oneMaintainer.title",description:["recommendations.type.oneMaintainer.description","recommendations.type.common"],type:ta.ALERT,arguments:{description:["- ".concat(t.join(";\n- "))]}}}}class ca{getTotalInfo(e){if(e.author.list.length<2)return[];const t=e.week.statistic.slice(0,3);return[this.getLazyDays(e,t),this.getTasks(e,t)].filter((e=>e))}getLazyDays(e,t){const n=t.map((e=>e.lazyDaysTotal/e.authorsLength));return n[0]<n[1]&&n[1]<n[2]?{title:"recommendations.week.lazyDays.down.title",description:"recommendations.week.lazyDays.down.description",type:ta.FACT}:n[0]>n[1]&&n[1]>n[2]?{title:"recommendations.week.lazyDays.up.title",description:"recommendations.week.lazyDays.up.description",type:ta.ALERT}:null}getTasks(e,t){const n=t.map((e=>e.tasks/e.authorsLength));return n[0]<n[1]&&n[1]<n[2]?{title:"recommendations.week.task.up.title",description:"recommendations.week.task.up.description",type:ta.FACT}:n[0]>n[1]&&n[1]>n[2]?{title:"recommendations.week.task.down.title",description:"recommendations.week.task.down.description",type:ta.ALERT}:null}getLazyMaintainer(e,t){const n=t.map((e=>{var t;return null===(t=Object.entries(e.lazyDays).sort(((e,t)=>e[1]-t[1])).pop())||void 0===t?void 0:t[0]}));return n[0]===n[1]===n[2]?{title:n[0],description:"recommendations.week.task.lazyMaintainer.description",type:ta.ALERT}:null}}class ma{constructor(){this.byScope=new ra,this.byAuthor=new oa,this.byType=new la,this.byWeek=new ca,this.byTimestamp=new ia,this.byHour=new sa,this.personByWeek=new aa,this.personByTimestamp=new na,this.team={},this.person={}}updateTotalInfo(e){this.team={byScope:this.byScope.getTotalInfo(e),byAuthor:this.byAuthor.getTotalInfo(e),byType:this.byType.getTotalInfo(e),byWeek:this.byWeek.getTotalInfo(e),byTimestamp:this.byTimestamp.getTotalInfo(e),byHour:this.byHour.getTotalInfo(e)},this.person={byWeek:this.personByWeek.getTotalInfo(e),byTimestamp:this.personByTimestamp.getTotalInfo(e)}}clear(){this.team={},this.person={}}}class da{constructor(){this.valueAndCount={}}update(e){this.valueAndCount[e]?this.valueAndCount[e].count+=1:this.valueAndCount[e]={value:e,count:1}}clear(){this.valueAndCount={}}get(){let e=0,t=0;return Object.values(this.valueAndCount).forEach((n=>{t+=n.value*n.count,e+=n.count})),t/e}}function pa(e,t){t&&(e[t]=(e[t]||0)+1)}function ua(e,t){return e?{[e]:t||1}:{}}var ha=(0,yn.Z)("updateCommitByAuthor"),fa=(0,yn.Z)("addCommitByAuthor"),ga=(0,yn.Z)("setMoneyByMonth"),ya=(0,yn.Z)("updateMoneyByMonth"),va=(0,yn.Z)("addMoneyByMonth"),ba=(0,yn.Z)("updateWordStatistics");class wa{constructor(){Object.defineProperty(this,va,{value:Sa}),Object.defineProperty(this,ya,{value:Ta}),Object.defineProperty(this,ga,{value:_a}),Object.defineProperty(this,fa,{value:xa}),Object.defineProperty(this,ha,{value:ka}),this.list=[],this.commits=new Map,this.statistic=[],this.statisticByName={},this.employment={}}clear(){this.list=[],this.commits.clear(),this.statistic=[],this.statisticByName={}}addCommit(e,t){const n=this.commits.get(e.author);n?(0,gn.Z)(this,ha)[ha](n,e,t):(0,gn.Z)(this,fa)[fa](e),(0,gn.Z)(this,ga)[ga](e)}static getDefaultCommitsByDayAndHour(){return new Array(7).fill(1).map((()=>new Array(24).fill(0)))}updateTotalInfo(e){const t=(null===e||void 0===e?void 0:e.milliseconds)-27648e5;this.employment={staff:[],dismissed:[],active:[]},this.statistic=Array.from(this.commits.values()).sort(((e,t)=>t.commits-e.commits)).map((e=>{const n=e.firstCommit.milliseconds,a=e.lastCommit.milliseconds,o=e.days.size,s=Math.ceil((a-n)/zn),r=Math.floor(.6222222222222222*s-o)+1,i=Bn.getMiddleSalaryInMonth(e.author,n,a),l=i/22,c=Math.ceil(o*l),m=r>0?Math.ceil(r*l):0,d=Math.ceil(s/30*i),p=Object.entries(e.tasks).filter((e=>e[0])),u=p.map((e=>e[0])),h=p.map((e=>e[1]));e.hours.sort(),e.messageLength.sort();const f=Math.round(e.totalMessageLength/e.commits),g=Object.entries(e.wordStatistics).sort(((e,t)=>t[1]-e[1])),y=o+(r>0?r:0),v=100*o/y,b=/[^a-z]bot[^a-z]/gim.test(e.author),w=y<20||v<15||b,k={...e,tasks:u,scopes:Object.keys(e.scopes).length,daysForTask:w?0:o/u.length,taskInDay:w?0:u.length/o,changesForTask:wa.getMiddleValue(h),days:o,money:w?0:c,allDaysInProject:s,lazyDays:r,daysAll:s,daysLosses:r>0?r:0,daysWorked:o,daysWorkedLosses:o+(r>0?r:0),moneyAll:w?0:d,moneyLosses:w?0:m,moneyWorked:w?0:c,isDismissed:e.lastCommit.milliseconds<t,isStaff:w,middleMessageLength:f,maxMessageLength:e.maxMessageLength,commitsByDayAndHourTotal:wa.getTotalCommitsByDayAndHour(e.commitsByDayAndHour),wordStatistics:g};return this.statisticByName[k.author]=k,k.isStaff?this.employment.staff.push(k.author):k.isDismissed?this.employment.dismissed.push(k.author):this.employment.active.push(k.author),k})),this.list=[...this.employment.active,...this.employment.dismissed,...this.employment.staff],this.updateSort()}updateSort(){const e=new Map;this.list.forEach(((t,n)=>{e.set(t,n)})),this.statistic.sort(((t,n)=>e.get(t.author)-e.get(n.author)))}static getMiddleValue(e){const t=e.length,n=Math.round(.05*t),a=t>5?e.sort(((e,t)=>e-t)).slice(n,t-n-1):e;return Math.round(a.reduce(((e,t)=>e+t),0)/a.length)}static getTotalCommitsByDayAndHour(e){const t=e.map((e=>Math.max(...e)));return t.push(Math.min(...t)),t.push(Math.max(...t)),t}}function ka(e,t,n){e.commits+=1,e.lastCommit=t,e.device=e.device||t.device,e.days.set(t.timestamp,!0),e.tasks[t.task]=t.added+t.changes+t.removed+(e.tasks[t.task]?e.tasks[t.task]:0),pa(e.types,t.type),pa(e.scopes,t.scope),e.hours.push(t.hours),e.messageLength.push(t.text.length),e.totalMessageLength+=t.text.length||0,e.maxMessageLength=t.text.length>e.maxMessageLength?t.text.length:e.maxMessageLength;try{e.commitsByDayAndHour[t.day][t.hours]+=1}catch(a){}e.commitsByHour[t.hours]+=1,n<5e4&&(e.wordStatistics=(0,gn.Z)(wa,ba)[ba](t,e.wordStatistics)),t.company&&e.lastCompany!==t.company&&(e.lastCompany=t.company,e.company.push({title:t.company,from:t.timestamp})),t.timezone&&e.lastCountry!==t.timezone&&(e.lastTimezone=t.timezone,e.lastCountry=t.country,e.country.push({country:t.country,timezone:t.timezone,from:t.milliseconds}))}function xa(e){const t=wa.getDefaultCommitsByDayAndHour();t[e.day][e.hours]+=1;const n=new Array(24).fill(0);n[e.hours]+=1,this.commits.set(e.author,{author:e.author,commits:1,firstCommit:e,lastCommit:e,days:new Map([[e.timestamp,!0]]),tasks:{[e.task]:e.added+e.changes+e.removed},types:ua(e.type),scopes:ua(e.scope),hours:[e.hours],company:e.company?[{title:e.company,from:e.milliseconds}]:[],lastCompany:e.company,country:[{country:e.country,timezone:e.timezone,from:e.milliseconds}],lastTimezone:e.timezone,lastCountry:e.country,device:e.device,commitsByDayAndHour:t,commitsByHour:n,messageLength:[e.text.length||0],totalMessageLength:e.text.length||0,maxMessageLength:e.text.length||0,wordStatistics:(0,gn.Z)(wa,ba)[ba](e),moneyByMonth:{}})}function _a(e){const t="".concat(e.year,"-").concat(e.month);this.commits.get(e.author).moneyByMonth[t]?(0,gn.Z)(this,ya)[ya](e,t):(0,gn.Z)(this,va)[va](e,t)}function Ta(e,t){const n=this.commits.get(e.author).moneyByMonth[t];if(n.alreadyAdded[e.milliseconds])return;n.alreadyAdded[e.milliseconds]=!0;n.contract.workDaysInWeek[e.day]?n.workDay+=1:n.weekDay+=1}function Sa(e,t){const n=Bn.getEmploymentContract(e.author,e.milliseconds),a=n.workDaysInWeek[e.day];this.commits.get(e.author).moneyByMonth[t]={workDay:a?1:0,weekDay:a?0:1,alreadyAdded:{[e.milliseconds]:!0},contract:n}}Object.defineProperty(wa,ba,{value:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=2,a={for:1,fix:1};return e.text.toLowerCase().split(" ").forEach((e=>{e.length<=n||a[e]||pa(t,e)})),t}});const Ca=["commits","daysForTask","daysAll","daysLosses","daysWorked","moneyAll","moneyLosses","moneyWorked"];class Ea{constructor(){this.statistic={}}clear(){this.statistic={}}updateTotalInfo(e){const t={...Object.fromEntries(Ca.map((e=>[e,0]))),wordStatistics:{},commitsByDayAndHour:wa.getDefaultCommitsByDayAndHour(),commitsByDayAndHourTotal:[]};e.statistic.forEach((e=>{Ca.forEach((n=>{t[n]+=e[n]||0})),e.commitsByDayAndHour.forEach(((e,n)=>{e.forEach(((e,a)=>{t.commitsByDayAndHour[n][a]+=e}))})),e.wordStatistics.slice(0,45).forEach((e=>{let[n,a]=e;t.wordStatistics[n]=t.wordStatistics[n]?t.wordStatistics[n]+a:a}))})),t.commitsByDayAndHourTotal=wa.getTotalCommitsByDayAndHour(t.commitsByDayAndHour),t.wordStatistics=Object.entries(t.wordStatistics).sort(((e,t)=>t[1]-e[1])),this.statistic=t}}var ja=(0,yn.Z)("updateCommitByScope"),Aa=(0,yn.Z)("addCommitByScope"),Na=(0,yn.Z)("getDefaultAuthorForScope");class Da{constructor(){Object.defineProperty(this,Na,{value:Pa}),Object.defineProperty(this,Aa,{value:Ra}),Object.defineProperty(this,ja,{value:Oa}),this.list=[],this.commits={},this.statistic=[]}clear(){this.list=[],this.commits={},this.statistic=[]}addCommit(e){this.commits.hasOwnProperty(e.scope)?(0,gn.Z)(this,ja)[ja](e):(0,gn.Z)(this,Aa)[Aa](e)}updateTotalInfo(){const e={};this.statistic=Object.values(this.commits).filter((e=>e.commits>5)).sort(((e,t)=>t.commits-e.commits)).map((t=>{let n=0;for(let a in t.authors){const o=t.authors[a],s=o.days.size;e[a]=e[a]||Bn.getCurrentSalaryInDay(a),n+=s*e[a],t.authors[a]={...o,days:s}}return t.tasks.delete(""),{...t,days:t.days.size,cost:n,tasks:t.tasks.size}})),this.list=this.statistic.map((e=>e.scope))}}function Oa(e){const t=this.commits[e.scope];t.commits+=1,t.days.set(e.timestamp,!0),t.tasks.set(e.task,!0),pa(t.types,e.type);const n=t.authors[e.author];n?(n.commits+=1,n.days.set(e.timestamp,!0),pa(n.types,e.type)):t.authors[e.author]=(0,gn.Z)(this,Na)[Na](e)}function Ra(e){this.commits[e.scope]={scope:e.scope,commits:1,days:new Map([[e.timestamp,!0]]),tasks:new Map([[e.task,!0]]),types:ua(e.type),authors:ua(e.author,(0,gn.Z)(this,Na)[Na](e))}}function Pa(e){return{commits:1,days:new Map([[e.timestamp,!0]]),types:{[e.type]:1}}}const Ia=["refactor","feat","chore","code style","style","doc","docs","test","update","improve","add","remove","delete","optimize","rename","eslint","fix"],La={add:"feat",remove:"refactor",delete:"refactor",update:"refactor",improve:"refactor",optimize:"refactor",rename:"refactor",eslint:"style","code style":"refactor"};function Fa(e,t){let n="",a="";const o=e.replace(t,"").toLowerCase().split(":");return o.length>1&&([n,a]=o[0].split(/[()]/g).map((e=>e.trim()))),n||(n=function(e){const t=Ia.find((t=>-1!==e.indexOf(t)));return La[t||""]||t}(e)),n&&!a&&o.length>1&&(a=function(e){var t;return null===(t=e.replace(/[()]/gim,"").split(",").map((e=>e.trim())))||void 0===t?void 0:t[0]}(o[0].replace(n,""))),n&&(n=n.split(" ").shift()),[n,a]}function Ma(e){return((e||"").match(/(([A-Z]+[-_])|(#)|(gh-)|(GH-))([0-9]+)/gm)||[])[0]||""}function Wa(e){return(e||"").replace(/[^0-9]+/gim,"")}function Ba(e){return(e||"").replace(/[^A-Z]+/gim,"")}var za=(0,yn.Z)("updateCommitByType"),Ua=(0,yn.Z)("addCommitByType");class Ha{constructor(){Object.defineProperty(this,Ua,{value:Va}),Object.defineProperty(this,za,{value:Ga}),this.list=[],this.commits={},this.statistic=[]}clear(){this.list=[],this.commits={},this.statistic=[]}addCommit(e){this.commits.hasOwnProperty(e.type)?(0,gn.Z)(this,za)[za](e):(0,gn.Z)(this,Ua)[Ua](e)}updateTotalInfo(){const e=[...Ia,"ci"],t=Object.fromEntries(e.map((e=>[e,!0])));this.statistic=Object.values(this.commits).filter((e=>e.commits>5||t[(null===e||void 0===e?void 0:e.type)||""])).map((e=>({...e,tasks:e.tasks.size,days:e.days.size,daysByAuthorsTotal:Object.values(e.daysByAuthors).reduce(((e,t)=>e+Object.keys(t).length),0)}))).sort(((e,t)=>t.days-e.days)),this.list=this.statistic.map((e=>e.type))}}function Ga(e){const t=this.commits[e.type];t.commits+=1,t.days.set(e.timestamp,!0),t.tasks.set(e.task,!0),pa(t.commitsByAuthors,e.author),t.daysByAuthors[e.author]||(t.daysByAuthors[e.author]={}),pa(t.daysByAuthors[e.author],e.timestamp)}function Va(e){this.commits[e.type]={type:e.type,commits:1,days:new Map([[e.timestamp,!0]]),tasks:new Map([[e.task,!0]]),commitsByAuthors:ua(e.author,!0),daysByAuthors:{[e.author]:ua(e.timestamp,!0)}}}class Ka{constructor(){this.min=1/0,this.max=-1/0,this.minData=void 0,this.maxData=void 0}update(e,t){(e||0===e)&&(this.min>e&&(this.min=e,this.minData=t),this.max<e&&(this.max=e,this.maxData=t))}clear(){this.min=1/0,this.max=-1/0,this.minData=void 0,this.maxData=void 0}}var $a=(0,yn.Z)("updateCommitByTimestamp"),qa=(0,yn.Z)("getDefaultCommitByTimestamp"),Ya=(0,yn.Z)("getTotalInfo"),Za=(0,yn.Z)("getWeekendPaymentByAuthor");class Ja{constructor(){Object.defineProperty(this,Za,{value:to}),Object.defineProperty(this,Ya,{value:eo}),Object.defineProperty(this,qa,{value:Qa}),Object.defineProperty(this,$a,{value:Xa}),this.commits=new Map,this.commitsByAuthor=new Map,this.statistic=[],this.statisticByAuthor={},this.clear()}clear(){this.commits.clear(),this.commitsByAuthor.clear(),this.statistic=[],this.statisticByAuthor={}}addCommit(e){const t=this.commits.get(e.milliseconds);t?(0,gn.Z)(this,$a)[$a](t,e):this.commits.set(e.milliseconds,(0,gn.Z)(this,qa)[qa](e));let n=this.commitsByAuthor.get(e.author);n||(n=new Map,this.commitsByAuthor.set(e.author,n));const a=n.get(e.milliseconds);a?(0,gn.Z)(this,$a)[$a](a,e):n.set(e.milliseconds,(0,gn.Z)(this,qa)[qa](e))}updateTotalInfo(e){this.statistic=(0,gn.Z)(this,Ya)[Ya](this.commits),this.statistic.weekendPayment=0;for(let t of this.commitsByAuthor.keys()){const n=(0,gn.Z)(this,Ya)[Ya](this.commitsByAuthor.get(t));n.weekendPayment=(0,gn.Z)(this,Za)[Za](n,e.statisticByName[t||""]),this.statisticByAuthor[t||""]=n,this.statistic.weekendPayment+=n.weekendPayment}}}function Xa(e,t){e.commits+=1,e.addedAndChanges+=t.added+t.changes,pa(e.tasks,t.task),e.tasksByAuthor[t.author]||(e.tasksByAuthor[t.author]={}),e.tasksByAuthor[t.author][t.task]?e.tasksByAuthor[t.author][t.task].push(t):e.tasksByAuthor[t.author][t.task]=[t],e.messages.push(t.message)}function Qa(e){return{commits:1,day:e.day,dayInMonth:e.dayInMonth,month:e.month,year:e.year,week:e.week,timestamp:e.timestamp,milliseconds:e.milliseconds,tasks:{[e.task]:1},tasksByAuthor:{[e.author]:{[e.task]:[e]}},addedAndChanges:e.added+e.changes,messages:[e.message]}}function eo(e){const t=Array.from(e.values()),n=new Ka,a=new Ka,o=new Ka,s=new Array(7).fill(0);return t.forEach((e=>{e.tasksInDay=Object.keys(e.tasks).length,s[e.day]+=1,n.update(e.commits,e),a.update(e.addedAndChanges,e),o.update(e.tasksInDay,e)})),{allCommitsByTimestamp:t,commitsByTimestampCounter:n,changesByTimestampCounter:a,tasksByTimestampCounter:o,workByDay:s,weekendPayment:0}}function to(e,t){if(t.isStaff)return 0;const n=Bn.getCurrentSalaryInMonth(t.author)/22*2;return e.workByDay[5]*n+e.workByDay[6]*n}var no=(0,yn.Z)("updateCommitByWeek"),ao=(0,yn.Z)("addCommitByWeek");class oo{constructor(){Object.defineProperty(this,ao,{value:ro}),Object.defineProperty(this,no,{value:so}),this.commits={},this.statistic=[],this.clear()}clear(){this.commits={},this.statistic=[]}addCommit(e){this.commits.hasOwnProperty(e.week)?(0,gn.Z)(this,no)[no](e):(0,gn.Z)(this,ao)[ao](e)}updateTotalInfo(e){this.statistic=Object.values(this.commits).map((t=>{const n={};for(let e in t.authors)n[e]=Object.keys(t.authors[e]).filter((e=>e)).length;const a={},o={},s={};let r=0,i=0,l=0;for(let m in t.workDays){if(e.statisticByName[m].isStaff)continue;l+=1,a[m]=Object.keys(t.workDays[m]).length,r+=a[m];const n=5,c=n-a[m],d=a[m]-n;o[m]=c>0?c:0,s[m]=d>0?d:0,i+=o[m]}const c={};for(let e in t.workDays)c[e]=n[e]&&a[e]?n[e]/a[e]:0;return{...t,tasks:Object.keys(t.tasks).filter((e=>e)).length,authors:n,workDays:a,lazyDays:o,weekDays:s,workDaysTotal:r,lazyDaysTotal:i,taskInDay:c,authorsLength:l,changesLength:t.changes.added+t.changes.changes+t.changes.removed}})).reverse()}}function so(e){const t=this.commits[e.week];t.commits+=1,t.tasks[e.task]=!0,t.timestamp.to=e.timestamp;const n=(e,t)=>(e[t]||(e[t]={}),e[t]);for(let a in t.changes)t.changes[a]+=e[a]||0;n(t.authors,e.author)[e.task]=!0,n(t.workDays,e.author)[e.day]=!0,t.typeByAuthor[e.author]||(t.typeByAuthor[e.author]={}),pa(t.typeByAuthor[e.author],e.type),pa(t.types,e.type)}function ro(e){this.commits[e.week]={commits:1,timestamp:{from:e.timestamp},tasks:{[e.task]:!0},types:{[e.type]:1},changes:{added:e.added,changes:e.changes,removed:e.removed},authors:{[e.author]:{[e.task]:!0}},workDays:{[e.author]:{[e.day]:!0}},typeByAuthor:{[e.author]:{[e.type]:1}}}}class io{constructor(){this.isGet={},this.alreadyAdded={},this.getsByAuthor={},this.defaultGets=[],this.statistic=[],this.createDefaultGets(),this.clear()}createDefaultGets(){const e=["1234","12345","123456","1234567","12345678"];for(let t=3;t<7;t++)for(let n=1;n<9;n++){const a=new Array(t).fill(n).join("");e.push(a);const o=new Array(t).fill("0");o[0]=n,e.push(o.join(""))}this.defaultGets=e}clear(){this.isGet=Object.fromEntries(this.defaultGets.map((e=>[e,!0]))),this.alreadyAdded={},this.getsByAuthor={}}addCommit(e){this.isGet[e.taskNumber]&&!this.alreadyAdded[e.taskNumber]&&(this.alreadyAdded[e.taskNumber]=e,this.getsByAuthor[e.author]=this.getsByAuthor[e.author]||[],this.getsByAuthor[e.author].push(e))}}var lo=(0,yn.Z)("addCommitByPR");class co{constructor(){Object.defineProperty(this,lo,{value:mo}),this.pr=new Map,this.statistic=[],this.statisticByName={}}clear(){this.pr.clear(),this.statistic=[],this.statisticByName={}}addCommit(e){if(!e.prId)return;this.pr.get(e.prId)?console.log("Parsing error. PR already exist."):(0,gn.Z)(this,lo)[lo](e)}updateTotalInfo(e,t){const n=new Map;this.pr.forEach((t=>{if(!t.task)return;const a=e.statisticByName.get(t.task);if(!a)return;a.prIds.push(t.prId),t.daysInWork=a.daysInWork;let o=(null===a||void 0===a?void 0:a.to)||(null===a||void 0===a?void 0:a.from);if(o>t.dateMerge){if(!a.timestamps)return void console.log("x");const e=a.timestamps.find((e=>e>t.dateMerge)),n=a.timestamps.indexOf(e);o=a.timestamps[n-1],a.timestamps=a.timestamps.slice(n),t.daysInWork=n}t.dateCreate=o||t.dateCreate,t.daysReview=(t.dateMerge-t.dateCreate||zn)/zn;const s=n.get(t.author);s?s.push(t):n.set(t.author,[t])})),this.statistic=Array.from(this.pr.values()).sort(((e,t)=>t.daysReview-e.daysReview)),this.updateTotalByAuthor(n,t)}static getPRByGroups(e,t){const n="page.team.pr.chart.1day",a="page.team.pr.chart.3day",o="page.team.pr.chart.7day",s="page.team.pr.chart.14day",r="page.team.pr.chart.30day",i="page.team.pr.chart.more",l={[n]:0,[a]:0,[o]:0,[s]:0,[r]:0,[i]:0};let c=0;const m=new da;e.forEach((e=>{const d=e[t];d>c&&(c=d),m.update(d),d<=1?l[n]++:d<=2?l[a]++:d<=7?l[o]++:d<=14?l[s]++:d<=30?l[r]++:l[i]++}));const d=Object.keys(l);return{details:l,order:d,weightedAverage:m.get(),max:c}}updateTotalByAuthor(e,t){this.statisticByName={},e.forEach((e=>{const n=e[0].author,a=t.statisticByName[n];if(!a||null!==a&&void 0!==a&&a.isStaff)return;const o=co.getPRByGroups(e,"daysReview"),s=parseInt(o.weightedAverage.toFixed(1),10),r=co.getPRByGroups(e,"daysInWork"),i=parseInt(r.weightedAverage.toFixed(1),10);this.statisticByName[n]={author:n,maxDelayDays:o.max,numberMergedPr:e.length,workDays:r.details,delayDays:o.details,weightedAverage:i+s,weightedAverageDetails:{workDays:i,delayDays:s}}}))}}function mo(e){this.pr.set(e.prId,{prId:e.prId,author:e.author,task:e.task,type:e.type,branch:e.branch,message:e.message,dateCreate:e.milliseconds,dateMerge:e.milliseconds,daysReview:1,daysInWork:1})}class po{constructor(){this.commits=new Map,this.statistic=[],this.statisticByName=new Map,this.longTaskByAuthor={}}clear(){this.commits.clear(),this.statistic=[],this.statisticByName.clear(),this.longTaskByAuthor={}}addCommit(e){var t;this.commits.has(e.task)?null===(t=this.commits.get(e.task))||void 0===t||t.push(e):this.commits.set(e.task,[e])}updateTotalInfo(){this.statistic=Array.from(this.commits,(e=>{let[t,n]=e;return[t,n]})).map((e=>{let[t,n]=e;const a=n[0],o=n[n.length-1],s=a.milliseconds,r={task:t,author:a.author,from:s,commits:1,daysInWork:1,prIds:[],releaseIds:new Set,comments:a.text,types:a.type?{[a.type]:1}:{},scope:a.scope?{[a.scope]:1}:{}};if(1===n.length)return r;const i=new Set,l=new Set,c={},m={},d={};n.forEach((e=>{i.add(e.text),l.add(e.milliseconds),pa(c,e.author),pa(m,e.type),pa(d,e.scope)}));const p=Array.from(i).join(", "),u=o.milliseconds,h=l.size,f=this.longTaskByAuthor[r.author];return(!f||f<h)&&(this.longTaskByAuthor[r.author]=h),{...r,to:u!==s?u:void 0,commits:n.length,timestamps:Array.from(l),daysInWork:h,comments:p,authors:c,types:m,scope:d}})).filter((e=>e.task)).sort(((e,t)=>t.from-e.from)),this.statistic.forEach((e=>{this.statisticByName.set(e.task,e)})),this.commits.clear()}}const uo="PR_BITBUCKET",ho="PR_GITHUB",fo="PR_GITLAB",go="MERGE",yo="AUTO_MERGE";function vo(e,t,n){const a=t.milliseconds,o=e.milliseconds,s=(a-o)/zn-(n||0);return a!==o&&s>0?s:0}var bo=(0,yn.Z)("updateDateInRelease"),wo=(0,yn.Z)("updatePRInRelease"),ko=(0,yn.Z)("addReleaseForBB"),xo=(0,yn.Z)("addRelease");class _o{constructor(){Object.defineProperty(this,xo,{value:Eo}),Object.defineProperty(this,ko,{value:Co}),Object.defineProperty(this,wo,{value:So}),Object.defineProperty(this,bo,{value:To}),this.release={},this.statistic=[],this.lastPrList=[],this.statisticByName=[]}clear(){this.release={},this.statistic=[],this.lastPrList=[]}addCommit(e){if(e.commitType===yo)this.release[e.branch]?(0,gn.Z)(this,bo)[bo](e.branch,e):(0,gn.Z)(this,ko)[ko](e);else if(e.commitType===ho){if(this.release[e.toBranch]||(0,gn.Z)(this,xo)[xo](e.toBranch,e),!this.release[e.toBranch])return;(0,gn.Z)(this,bo)[bo](e.toBranch,e),(0,gn.Z)(this,wo)[wo](e.toBranch,e)}else e.commitType===uo&&this.lastPrList.push(e.prId)}updateTotalInfo(e,t){let n=null;this.lastPrList=[],this.statistic=Object.entries(this.release).sort(((e,t)=>e[1].firstCommit.milliseconds-t[1].firstCommit.milliseconds)).map((a=>{const o=a[1];return o.prIds.forEach((n=>{const o=t.pr.get(n);if(!o)return;const s=e.statisticByName.get(o.task);s&&s.releaseIds.add(a[0])})),o.to=o.from!==o.to&&o.to?o.lastCommit.date:null,o.from=o.firstCommit.date,n&&(n.waitingInDays=vo(n.lastCommit,o.firstCommit,1)),n=o,o})).reverse()}}function To(e,t){const n=this.release[e];n.lastCommit=t,n.to=t.timestamp,n.delayInDays=vo(n.firstCommit,t)||n.delayInDays}function So(e,t){const n=this.release[e];n.prIds.push(t),n.prLength=n.prIds.length}function Co(e){if(!e.branch)return;(0,gn.Z)(this,xo)[xo](e.branch,e)&&(this.release[e.branch].prIds=this.lastPrList,this.release[e.branch].prLength=this.lastPrList.length,this.lastPrList=[])}function Eo(e,t){const n=e.lastIndexOf("release");if(-1===n)return!1;const a=e.substring(n+7).replace(/([^\w.]*)|(["']*)/gim,"").trim();return this.release[e]={title:a,firstCommit:t,lastCommit:t,from:t.timestamp,to:null,delayInDays:0,waitingInDays:0,prIds:[],prLength:0},!0}const jo=[{property:"daysWorked",sort:1},{property:"daysLosses",sort:-1},{property:"commits",sort:1},{property:"tasks",sort:1,isNeedTasks:!0},{property:"moneyAll",sort:1,isNotStaff:!0},{property:"moneyWorked",sort:1,isNotStaff:!0},{property:"moneyLosses",sort:-1,isNotStaff:!0},{property:"weekendPayment",sort:1,isNotStaff:!0},{property:"daysForTask",sort:-1,isNotStaff:!0,isNeedTasks:!0,formatter:e=>e.daysForTask},{property:"commitsForTask",sort:1,isNotStaff:!0,isNeedTasks:!0,formatter:e=>e.commits/e.tasks.length},{property:"changesForTask",sort:-1,isNotStaff:!0,isNeedTasks:!0,formatter:e=>e.changesForTask},{property:"speedMaxTasks",sort:1,isNotStaff:!0,isNeedTasks:!0,formatter:(e,t)=>t.tasksByTimestampCounter.max},{property:"speedMaxCommits",sort:1,isNotStaff:!0,formatter:(e,t)=>t.commitsByTimestampCounter.max},{property:"moneyForTask",sort:-1,isNotStaff:!0,isNeedTasks:!0,formatter:e=>e.moneyWorked/e.tasks.length},{property:"moneyForCommit",sort:-1,isNotStaff:!0,formatter:e=>e.moneyWorked/e.commits}];class Ao{constructor(){this.total={},this.statisticByName={},this.clear()}clear(){this.total={},this.statisticByName={}}updateTotalInfo(e,t){const n=[...e.statistic];n.forEach((e=>{this.statisticByName[e.author]={}})),jo.forEach((e=>{const a=function(e,t){return n=>{const a=t.statisticByAuthor[n.author];if(e.isNeedTasks&&!n.tasks.length||e.isNotStaff&&n.isStaff)return NaN;if(e.formatter)return e.formatter(n,a);const o=n[e.property]||a[e.property]||0;return Array.isArray(o)?null===o||void 0===o?void 0:o.length:o}}(e,t),o=n.map(a).filter((e=>!isNaN(e))),s=Array.from(new Set(o)),r=s.sort(((t,n)=>(n-t)*e.sort)).map(((e,t)=>[e,t+1])),i=Object.fromEntries(r);n.forEach(((t,n)=>{const a=o[n];this.statisticByName[t.author][e.property]=i[a]})),this.total[e.property]=s.length}))}}var No=(0,yn.Z)("updateCommitByTaskCode"),Do=(0,yn.Z)("addCommitByTaskCode");class Oo{constructor(){Object.defineProperty(this,Do,{value:Po}),Object.defineProperty(this,No,{value:Ro}),this.commits=new Map,this.statistic=[]}clear(){this.commits.clear(),this.statistic=[]}addCommit(e){if(!e.taskCode)return;const t=this.commits.get(e.taskCode);t?(0,gn.Z)(this,No)[No](t,e):(0,gn.Z)(this,Do)[Do](e)}updateTotalInfo(e,t){const n=(null===e||void 0===e?void 0:e.milliseconds)-27648e5;this.statistic=Array.from(this.commits.values()).map((e=>{const a=Array.from(e.authors),o=a.reduce(((e,n)=>{const a=t.statisticByName[n];return e+(a.isStaff||a.isDismissed?0:1)}),0);return{taskCode:e.taskCode,commits:e.commits,from:e.firstCommit.timestamp,to:e.lastCommit.timestamp,authors:a,totalDays:(e.lastCommit.milliseconds-e.firstCommit.milliseconds)/zn,totalDaysWorked:e.days.size,totalAuthors:a.length,totalWorked:o,isActive:e.lastCommit.milliseconds>n}})).sort(((e,t)=>t.totalDays-e.totalDays)),this.commits.clear()}}function Ro(e,t){e.commits+=1,e.lastCommit=t,e.days.set(t.timestamp,!0),e.authors.add(t.author)}function Po(e){this.commits.set(e.taskCode,{taskCode:e.taskCode,commits:1,firstCommit:e,lastCommit:e,days:new Map([[e.timestamp,!0]]),authors:new Set([e.author])})}var Io=(0,yn.Z)("addAuthor"),Lo=(0,yn.Z)("addCommitByCompany"),Fo=(0,yn.Z)("updateCommitByCompany");class Mo{constructor(){Object.defineProperty(this,Fo,{value:zo}),Object.defineProperty(this,Lo,{value:Bo}),Object.defineProperty(this,Io,{value:Wo}),this.companies=new Map,this.statistic=[],this.statisticByName={}}clear(){this.companies.clear(),this.statistic=[],this.statisticByName={}}updateTotalInfo(e){e.statistic.forEach((e=>{(0,gn.Z)(this,Io)[Io](e)})),this.statistic=Array.from(this.companies.values()).map((e=>(e.tasks=Array.from(new Set(e.tasks.flat(1))).length,e.totalDays=Math.max((e.to-e.from)/zn,1),this.statisticByName[e.company]=e,e))),this.companies.clear()}}function Wo(e){var t;const n=null===(t=e.company[e.company.length-1])||void 0===t?void 0:t.title;if(!n)return;const a=this.companies.get(n);a?(0,gn.Z)(this,Fo)[Fo](a,e):(0,gn.Z)(this,Lo)[Lo](n,e)}function Bo(e,t){this.companies.set(e,{company:e,isActive:!t.isDismissed&&!t.isStaff,commits:t.commits,from:t.firstCommit.milliseconds,to:t.lastCommit.milliseconds,daysWorked:t.daysWorked,employments:[t.author],tasks:[t.tasks]})}function zo(e,t){e.isActive||(e.isActive=!t.isDismissed&&!t.isStaff),e.commits+=t.commits,e.from=e.from>t.firstCommit.milliseconds?t.firstCommit.milliseconds:e.from,e.to=e.to<t.lastCommit.milliseconds?t.lastCommit.milliseconds:e.to,e.daysWorked+=t.daysWorked,e.employments.push(t.author),e.tasks.push(t.tasks)}const Uo={"-12:00":1,"-11:00":2,"-10:00":3,"-09:30":3.5,"-09:00":4,"-08:00":5,"-07:00":6,"-06:00":7,"-05:00":8,"-04:00":9,"-03:00":10,"-02:00":11,"-01:00":12,"+00:00":13,"+01:00":14,"+02:00":15,"+03:00":16,"+03:30":16.5,"+04:00":17,"+04:30":17.5,"+05:00":18,"+05:30":18.5,"+05:45":18.75,"+06:00":19,"+07:00":20,"+08:00":21,"+09:00":22,"+09:30":22.5,"+10:00":23,"+10:30":23.5,"+11:00":24,"+12:00":25,"+13:00":26};var Ho=(0,yn.Z)("addAuthor");class Go{constructor(){Object.defineProperty(this,Ho,{value:Vo}),this.countries=new Map,this.vpn={},this.devices={},this.statistic=[]}clear(){this.countries.clear(),this.vpn={},this.devices={},this.statistic=[]}updateTotalInfo(e){e.statistic.forEach((e=>{const t=function(e){const t=new Map;if(e.length<2)return t;for(let n=0,a=e.length;n<a;n++){const a=e[n],o=e[n+1],s=e[n+2];if(!o||!s)continue;const r=(null===s||void 0===s?void 0:s.from)-(null===a||void 0===a?void 0:a.from)<zn,i=a.timezone===s.timezone;r&&i&&(t.set(o.country,o.timezone),n+=1)}return t}(e.country);e.country=function(e,t){if(1===e.length)return null;let n=e[0].timezone;const a=[e[0]],o=e.length>3?e.filter((e=>!t.has(e.country))):e;for(let i=1,l=o.length;i<l;i++){const e=o[i],t=e.timezone;n!==t&&(s=n,r=t,Math.abs(Uo[s]-Uo[r])>1&&(n=t,a.push(e)))}var s,r;return 1===a.length?null:a}(e.country,t),(0,gn.Z)(this,Ho)[Ho](e.lastCountry||"unknown",e.author),pa(this.devices,e.device||"unknown"),Array.from(t.keys()).forEach((e=>{pa(this.vpn,e)}))})),this.statistic=Array.from(this.countries.values()).sort(((e,t)=>{var n,a;return(null===t||void 0===t||null===(n=t.employments)||void 0===n?void 0:n.length)-(null===e||void 0===e||null===(a=e.employments)||void 0===a?void 0:a.length)})),this.countries.clear()}}function Vo(e,t){const n=this.countries.get(e);n?n.employments.push(t):this.countries.set(e,{country:e,employments:[t]})}const Ko=new class{constructor(){this.firstLastCommit=new Ka,this.author=new wa,this.company=new Mo,this.country=new Go,this.team=new Ea,this.scope=new Da,this.type=new Ha,this.timestamp=new Ja,this.week=new oo,this.recommendations=new ma,this.get=new io,this.pr=new co,this.tasks=new po,this.release=new _o,this.scoring=new Ao,this.taskCodes=new Oo}clear(){this.firstLastCommit.clear(),this.author.clear(),this.company.clear(),this.country.clear(),this.team.clear(),this.scope.clear(),this.type.clear(),this.timestamp.clear(),this.week.clear(),this.recommendations.clear(),this.get.clear(),this.pr.clear(),this.tasks.clear(),this.release.clear(),this.scoring.clear(),this.taskCodes.clear()}addCommit(e,t){"GitHub"!==e.author&&(this.pr.addCommit(e),this.release.addCommit(e),e.commitType||(this.firstLastCommit.update(e.milliseconds,e),this.author.addCommit(e,t),this.scope.addCommit(e),this.type.addCommit(e),this.timestamp.addCommit(e),this.get.addCommit(e),this.week.addCommit(e),this.tasks.addCommit(e),this.taskCodes.addCommit(e)))}updateTotalInfo(){this.author.updateTotalInfo(this.firstLastCommit.maxData),this.team.updateTotalInfo(this.author),this.scope.updateTotalInfo(),this.type.updateTotalInfo(),this.timestamp.updateTotalInfo(this.author),this.week.updateTotalInfo(this.author),this.recommendations.updateTotalInfo(this),this.tasks.updateTotalInfo(),this.pr.updateTotalInfo(this.tasks,this.author),this.release.updateTotalInfo(this.tasks,this.pr),this.scoring.updateTotalInfo(this.author,this.timestamp),this.company.updateTotalInfo(this.author),this.country.updateTotalInfo(this.author),this.taskCodes.updateTotalInfo(this.firstLastCommit.maxData,this.author)}};class $o{static setProps(e,t,n){e.name="",e.path=t.path,e.action=t.action,e.firstCommit=n,e.lastCommit=n}static updateProps(e,t,n){e.action=t.action,e.lastCommit=n}static updateTotal(e){if(Array.isArray(null===e||void 0===e?void 0:e.path))return;const t=e.path.split("/"),n=t.pop()||"",a=function(e){const t=e.lastIndexOf("."),n=e.substring(t+1),a=e.substring(0,t),o=a.lastIndexOf(".");return{type:-1!==o?a.substring(o+1):"",extension:n}}(n);e.name=n,e.type=a.type,e.extension=a.extension,e.pathString=e.path,e.path=t}}function qo(e,t){const n=100/t,a={};for(let s in e){var o;if(e[s])a[s]=Math.round((null!==(o=e[s])&&void 0!==o?o:100)*n)}return a}class Yo{static setProps(e,t,n){e.lines=t.addedLines,e.addedLines=t.addedLines,e.removedLines=t.removedLines,e.changedLines=t.changedLines,e.addedLinesByAuthor={[n.author]:t.addedLines},e.removedLinesByAuthor={[n.author]:t.removedLines},e.changedLinesByAuthor={[n.author]:t.changedLines}}static updateProps(e,t,n){e.lines+=t.addedLines,e.lines-=t.removedLines,e.addedLines+=t.addedLines,e.removedLines+=t.removedLines,e.changedLines+=t.changedLines;const a=e.addedLinesByAuthor[n.author];e.addedLinesByAuthor[n.author]=a?a+t.addedLines:t.addedLines;const o=e.removedLinesByAuthor[n.author];e.removedLinesByAuthor[n.author]=o?o+t.removedLines:t.removedLines;const s=e.changedLinesByAuthor[n.author];e.changedLinesByAuthor[n.author]=s?s+t.changedLines:t.changedLines}static updateTotal(e){e.addedByAuthorInPercent=qo(e.addedLinesByAuthor,e.addedLines),e.removedByAuthorInPercent=qo(e.removedLinesByAuthor,e.removedLines),e.changedByAuthorInPercent=qo(e.changedLinesByAuthor,e.changedLines)}}class Zo{static setProps(e,t){e.tasks=t.task?[t.task]:[],e.timestamp=[t.timestamp],e.totalTasks=0,e.totalDays=0}static updateProps(e,t){t.task&&e.tasks.push(t.task),e.timestamp.push(t.timestamp)}static updateTotal(e){e.tasks=Array.from(new Set(e.tasks)),e.timestamp=Array.from(new Set(e.timestamp)),e.totalTasks=e.tasks.length,e.totalDays=e.timestamp.length}}var Jo=(0,yn.Z)("getNewDirtyFile"),Xo=(0,yn.Z)("updateDirtyFile"),Qo=(0,yn.Z)("renameFile"),es=(0,yn.Z)("removeFile");class ts{constructor(){Object.defineProperty(this,es,{value:ss}),Object.defineProperty(this,Qo,{value:os}),Object.defineProperty(this,Xo,{value:as}),Object.defineProperty(this,Jo,{value:ns}),this.list=[],this.refFileIds=new Map,this.refRemovedFileIds=new Map,this.refExtensionType=new Map}clear(){this.list=[],this.refFileIds.clear(),this.refRemovedFileIds.clear(),this.refExtensionType.clear()}addCommit(e,t){let n=this.refFileIds.get(e.id);n||(n=this.refFileIds.get(e.newId)),n?(0,gn.Z)(this,Xo)[Xo](n,e,t):(n=(0,gn.Z)(this,Jo)[Jo](e,t),this.refFileIds.set(e.id,n)),e.newId&&(0,gn.Z)(this,Qo)[Qo](n,e.newId)}updateTotalInfo(e){const t=Array.from(this.refFileIds.values());for(let n=0,a=t.length;n<a;n++){const a=t[n];if($o.updateTotal(a),Yo.updateTotal(a),Zo.updateTotal(a),a.type){let e=this.refExtensionType.get(a.extension);e||(e={},this.refExtensionType.set(a.extension,e)),pa(e,a.type)}0!==a.lines&&"D"!==a.action&&"A"!==a.action||(0,gn.Z)(this,es)[es](a),e(a)}this.list=t}}function ns(e,t){const n={name:"",id:e.id};return $o.setProps(n,e,t),Yo.setProps(n,e,t),Zo.setProps(n,t),n}function as(e,t,n){$o.updateProps(e,t,n),Yo.updateProps(e,t,n),Zo.updateProps(e,n)}function os(e,t){const n=this.refFileIds.get(e.id);this.refFileIds.set(t,n),this.refFileIds.delete(e.id),e.id=t}function ss(e){e.action="D",this.refRemovedFileIds.set(e.id,e),this.refFileIds.delete(e.id)}const rs=[".eslintrc",".gitignore","package.json","package-lock.json","tsconfig.json"];var is=(0,yn.Z)("getNewExtension");class ls{constructor(e){Object.defineProperty(this,is,{value:cs}),this.statistic=[],this.statisticByName=new Map,this.property="",this.property=e||"extension"}clear(){this.statistic=[],this.statisticByName.clear()}addFile(e){const t=null===e||void 0===e?void 0:e.extension;if(!t||rs.includes(e.name))return;let n=this.statisticByName.get(t);n||(n=(0,gn.Z)(this,is)[is](e),this.statisticByName.set(t,n)),"D"===e.action?(n.removedFiles.push(e),n.removedCount+=1):(n.files.push(e),n.count+=1)}updateTotalInfo(){this.statistic=Array.from(this.statisticByName.values()).sort(((e,t)=>t.count-e.count))}}function cs(e){var t;return{extension:null===e||void 0===e?void 0:e.extension,task:null===e||void 0===e||null===(t=e.firstCommit)||void 0===t?void 0:t.task,path:null===e||void 0===e?void 0:e.name,files:[],count:0,removedFiles:[],removedCount:0}}var ms=(0,yn.Z)("getNewType");class ds{constructor(){Object.defineProperty(this,ms,{value:ps}),this.statistic=[],this.statisticByName=new Map}clear(){this.statistic=[],this.statisticByName.clear()}addFile(e){var t;const n=null===e||void 0===e?void 0:e.type;if(!n||"."===(null===e||void 0===e||null===(t=e.name)||void 0===t?void 0:t[0]))return;let a=this.statisticByName.get(n);a||(a=(0,gn.Z)(this,ms)[ms](e),this.statisticByName.set(n,a)),pa(a.extension,null===e||void 0===e?void 0:e.extension),"D"===e.action?(a.removedFiles.push(e),a.removedCount+=1):(a.files.push(e),a.count+=1)}updateTotalInfo(){this.statistic=Array.from(this.statisticByName.values()).filter((e=>-1===e.type.indexOf("#"))).sort(((e,t)=>t.count-e.count))}}function ps(e){var t;return{type:null===e||void 0===e?void 0:e.type,task:null===e||void 0===e||null===(t=e.firstCommit)||void 0===t?void 0:t.task,path:null===e||void 0===e?void 0:e.name,extension:{},files:[],count:0,removedFiles:[],removedCount:0}}function us(e,t,n){return{id:Math.random(),name:e||"",path:t||[],pathString:"".concat((t||[]).join("/"),"/").concat(e||""),content:new Map,tasks:(null===n||void 0===n?void 0:n.tasks)||[],timestamp:(null===n||void 0===n?void 0:n.timestamp)||[],totalTasks:0,totalDays:0,lines:(null===n||void 0===n?void 0:n.lines)||0,addedLines:(null===n||void 0===n?void 0:n.addedLines)||0,removedLines:(null===n||void 0===n?void 0:n.removedLines)||0,changedLines:(null===n||void 0===n?void 0:n.changedLines)||0,addedLinesByAuthor:{...(null===n||void 0===n?void 0:n.addedLinesByAuthor)||{}},removedLinesByAuthor:{...(null===n||void 0===n?void 0:n.removedLinesByAuthor)||{}},changedLinesByAuthor:{...(null===n||void 0===n?void 0:n.changedLinesByAuthor)||{}},addedByAuthorInPercent:{},removedByAuthorInPercent:{},changedByAuthorInPercent:{},firstCommit:(null===n||void 0===n?void 0:n.firstCommit)||null,lastCommit:(null===n||void 0===n?void 0:n.firstCommit)||null}}function hs(e,t,n){for(let a in t[n]){const o=e[n][a],s=t[n][a];e[n][a]=o?o+s:s}}function fs(e,t){e.lastCommit=t.lastCommit,e.lines+=t.lines,e.addedLines+=t.addedLines||0,e.removedLines+=t.removedLines||0,e.changedLines+=t.changedLines||0;for(let n=0,a=t.tasks.length;n<a;n++)e.tasks.push(t.tasks[n]);for(let n=0,a=t.timestamp.length;n<a;n++)e.timestamp.push(t.timestamp[n]);hs(e,t,"addedLinesByAuthor"),hs(e,t,"removedLinesByAuthor"),hs(e,t,"changedLinesByAuthor")}class gs{constructor(){this.tree=us(),this.folders=[],this.addedFoldersByAuthor={}}clear(){this.tree=us(),this.folders=[]}addFile(e){let t=this.tree.content;for(let n=0,a=e.path.length;n<a;n++){const a=e.path[n],o=t.get(a);if(null!==o&&void 0!==o&&o.content)fs(o,e),t=o.content;else{const o=us(a,e.path.slice(0,n),e);t.set(a,o),this.folders.push(o),t=o.content}}t.set(e.name,e)}updateTotalInfo(){this.folders.forEach((e=>{var t;e.tasks=Array.from(new Set(e.tasks)),e.timestamp=Array.from(new Set(e.timestamp)),e.totalTasks=e.tasks.length,e.totalDays=e.timestamp.length,e.addedByAuthorInPercent=qo(e.addedLinesByAuthor,e.addedLines),e.removedByAuthorInPercent=qo(e.removedLinesByAuthor,e.removedLines),e.changedByAuthorInPercent=qo(e.changedLinesByAuthor,e.changedLines);const n=(null===(t=e.firstCommit)||void 0===t?void 0:t.author)||"";this.addedFoldersByAuthor[n]||(this.addedFoldersByAuthor[n]=[]),this.addedFoldersByAuthor[n].push(e.pathString)})),this.folders=[]}}var ys=(0,yn.Z)("addCommitByAuthor"),vs=(0,yn.Z)("updateCommitByAuthor");class bs{constructor(){Object.defineProperty(this,vs,{value:ks}),Object.defineProperty(this,ys,{value:ws}),this.statisticByName=new Map,this.totalAddedFiles=0}clear(){this.statisticByName.clear()}addFile(e){var t,n,a;const o=(null===e||void 0===e||null===(t=e.firstCommit)||void 0===t?void 0:t.author)||"",s=(null===e||void 0===e||null===(n=e.lastCommit)||void 0===n?void 0:n.author)||"";(o||s)&&"."!==(null===e||void 0===e||null===(a=e.name)||void 0===a?void 0:a[0])&&((0,gn.Z)(this,ys)[ys](o),(0,gn.Z)(this,ys)[ys](s),(0,gn.Z)(this,vs)[vs](e,o,s))}updateTotalInfo(){this.totalAddedFiles=Array.from(this.statisticByName.values()).reduce(((e,t)=>e+t.addedFiles),0)}}function ws(e){this.statisticByName.has(e)||this.statisticByName.set(e,{addedFiles:0,removedFiles:0,addedWithoutRemoveFiles:0})}function ks(e,t,n){const a=this.statisticByName.get(t),o=this.statisticByName.get(n);a.addedWithoutRemoveFiles+=1,"D"===e.action?o.removedFiles+=1:a.addedFiles+=1}function xs(e){return!("D"===e.action||e.path.length<3||!e.extension||{json:!0,xml:!0,md:!0,config:!0}[e.extension]||{test:!0,config:!0}[e.type])}function _s(e,t){return e.sort(((e,n)=>n[t]-e[t])),e.slice(0,20).map((e=>[e.id,e]))}class Ts{constructor(){this.files=[]}updateTotalInfo(e){const t=e.filter(xs),n=[..._s(t,"lines"),..._s(t,"totalDays"),..._s(t,"totalTasks")],a=Array.from(new Map(n).values()).filter((e=>e.lines>50&&e.totalDays>10));a.sort(((e,t)=>t.totalDays-e.totalDays)),this.files=a}clear(){this.files=[]}}const Ss=new class{constructor(){this.files=new ts,this.extension=new ls,this.type=new ds,this.tree=new gs,this.removedTree=new gs,this.author=new bs,this.refactor=new Ts}clear(){this.files.clear(),this.extension.clear(),this.type.clear(),this.tree.clear(),this.removedTree.clear(),this.author.clear(),this.refactor.clear()}addCommit(e){var t;null!==e&&void 0!==e&&null!==(t=e.fileChanges)&&void 0!==t&&t.length&&e.fileChanges.forEach((t=>{this.files.addCommit(t,e)}))}updateTotalInfo(){this.files.updateTotalInfo((e=>{this.extension.addFile(e),this.type.addFile(e),this.author.addFile(e),"D"!==e.action?this.tree.addFile(e):this.removedTree.addFile(e)})),this.extension.updateTotalInfo(),this.type.updateTotalInfo(),this.author.updateTotalInfo(),this.tree.updateTotalInfo(),this.removedTree.updateTotalInfo(),this.refactor.updateTotalInfo(this.files.list)}};const Cs=Object.fromEntries(Object.values(["icloud","google","inbox","yahoo","aol","zoho","outlook","gmx","tutanota","vk","ok","ya","yandex","rambler","github","gitlab","com","me","qq","dev","list","localhost"]).map((e=>[e.toUpperCase(),!0]))),Es=/([0-9]{1,3}(-|_|.)[0-9]{1,3}(-|_|.)[0-9]{1,3}(-|_|.)[0-9]{1,3})/;function js(e){return(e||"").replace(/(\[[^\]]])+/gim,"").replace(/[\s\t._0-9]+/gim,"").replace(/[*?^)(\-]+/gim,"").toLowerCase()}function As(e,t){const n=function(e){const t=((e||"").toUpperCase().match(/(\[[^\]]+])/gim)||[]).map((e=>e.replace(/([\[\]]+)/gim,"").trim().split(","))).flat(1/0);return t.length?t[0]:""}(e),[a,o]=function(e){const t=((e||"").split("@").pop()||"").split("."),n=t.pop();return[(t.pop()||"").toUpperCase(),n]}(t),s=function(e){return e&&/(MACBOOK)|(-AIR)|(-IMAC)/gi.test(e)?"MacBook":""}(a),r=n||a||"",i=-1!==r.indexOf("MAIL"),l=Cs[r]||i||function(e,t){if(!e||!t)return!1;const n=js(e),a=js(t);return!(!n||!a)&&!!n.match(a)}(e,r)||Es.test(r);return{company:l||s?"":r,domain:o,device:s}}const Ns={ac:"Ascension Island",ad:"Andorra",ae:"United Arab Emirates",af:"Afghanistan",ag:"Antigua and Barbuda",ai:"Anguilla",al:"Albania",am:"Armenia",ao:"Angola",aq:"Antarctica",ar:"Argentina",as:"American Samoa",at:"Austria",au:"Australia",aw:"Aruba (Kingdom of the Netherlands)",ax:"Aland (Finland)",az:"Azerbaijan",ba:"Bosnia and Herzegovina",bb:"Barbados",bd:"Bangladesh",be:"Belgium",bf:"Burkina Faso",bg:"Bulgaria",bh:"Bahrain",bi:"Burundi",bj:"Benin",bm:"Bermuda",bn:"Brunei",bo:"Bolivia",bq:"Caribbean Netherlands",br:"Brazil",bs:"Bahamas",bt:"Bhutan",bw:"Botswana",by:"Belarus",bz:"Belize",ca:"Canada",cc:"Cocos (Keeling) Islands",cd:"Democratic Republic of the Congo",cf:"Central African Republic",cg:"Republic of the Congo",ch:"Switzerland",ci:"Ivory Coast",ck:"Cook Islands",cl:"Chile",cm:"Cameroon",cn:"China",co:"Colombia",cr:"Costa Rica",cu:"Cuba",cv:"Cape Verde",cw:"Curacao (Kingdom of the Netherlands)",cx:"Christmas Island",cy:"Cyprus",cz:"Czech Republic",de:"Germany",dj:"Djibouti",dk:"Denmark",dm:"Dominica",do:"Dominican Republic",dz:"Algeria",ec:"Ecuador",ee:"Estonia",eg:"Egypt",eh:"Western Sahara",er:"Eritrea",es:"Spain",et:"Ethiopia",eu:"Europe",fi:"Finland",fj:"Fiji",fk:"Falkland Islands",fo:"Faroe Islands (Kingdom of Denmark)",fr:"France",ga:"Gabon",gd:"Grenada",ge:"Georgia",gf:"French Guiana",gg:"Guernsey",gh:"Ghana",gi:"Gibraltar",gl:"Greenland (Kingdom of Denmark)",gm:"The Gambia",gn:"Guinea",gp:"Guadeloupe",gq:"Equatorial Guinea10 July 1997",gr:"Greece",gs:"United Kingdom",gt:"Guatemala",gu:"Guam",gw:"Guinea-Bissau",gy:"Guyana",hk:"Hong Kong",hm:"Heard Island and McDonald Islands",hn:"Honduras",hr:"Croatia",ht:"Haiti",hu:"Hungary",id:"Indonesia",ie:"Ireland",il:"Israel",im:"Isle of Man",in:"India",iq:"Iraq",ir:"Iran",is:"Iceland",it:"Italy",je:"Jersey",jm:"Jamaica",jo:"Jordan",jp:"Japan",ke:"Kenya",kg:"Kyrgyzstan",kh:"Cambodia",ki:"Kiribati",km:"Comoros",kn:"Saint Kitts and Nevis",kp:"North Korea",kr:"South Korea",kw:"Kuwait",ky:"Cayman Islands",kz:"Kazakhstan",la:"Laos",lb:"Lebanon",lc:"Saint Lucia",li:"Liechtenstein",lk:"Sri Lanka",lr:"Liberia",ls:"Lesotho",lt:"Lithuania",lu:"Luxembourg",lv:"Latvia",ly:"Libya",ma:"Morocco",mc:"Monaco",md:"Moldova",me:"Montenegro",mg:"Madagascar",mh:"Marshall Islands",mk:"North Macedonia",ml:"Mali",mm:"Myanmar",mn:"Mongolia",mo:"Macau",mp:"Northern Mariana Islands",mq:"Martinique",mr:"Mauritania",ms:"Montserrat",mt:"Malta",mu:"Mauritius",mv:"Maldives",mw:"Malawi",mx:"Mexico",my:"Malaysia",mz:"Mozambique",na:"Namibia",nc:"New Caledonia",ne:"Niger",nf:"Norfolk Island",ng:"Nigeria",ni:"Nicaragua",nl:"Netherlands",no:"Norway",np:" Nepal",nr:"Nauru",nu:"Niue",nz:"New Zealand",om:"Oman",pa:"Panama",pe:"Peru",pf:"French Polynesia",pg:"Papua New Guinea",ph:"Philippines",pk:"Pakistan",pl:"Poland",pm:"Saint-Pierre and Miquelon",pn:"Pitcairn Islands",pr:"Puerto Rico",ps:"Palestine",pt:"Portugal",pw:"Palau",py:"Paraguay",qa:"Qatar",re:"R\xe9union",ro:"Romania",rs:"Serbia",ru:"Russia",rw:"Rwanda",sa:"Saudi Arabia",sb:"Solomon Islands",sc:"Seychelles",sd:"Sudan",se:"Sweden",sg:"Singapore",sh:"Saint Helena, Ascension and Tristan da Cunha",si:"Slovenia",sk:"Slovakia",sl:"Sierra Leone",sm:"San Marino",sn:"Senegal",so:"Somalia",sr:"Suriname",ss:"South Sudan",st:"S\xe3o Tom\xe9 and Pr\xedncipe",sv:"El Salvador",sx:"Sint Maarten",sy:"Syria",sz:"Eswatini",tc:"Turks and Caicos Islands",td:"Chad",tf:"French Southern and Antarctic Lands",tg:"Togo",th:"Thailand",tj:"Tajikistan",tl:"East Timor",tm:"Turkmenistan",tn:"Tunisia",to:"Tonga",tr:"Turkey",tt:"Trinidad and Tobago",tw:"Taiwan",tz:"Tanzania",ua:"Ukraine",ug:"Uganda",uk:"United Kingdom",us:"USA",uy:"Uruguay",uz:"Uzbekistan",va:"Vatican City",vc:"Saint Vincent and the Grenadines",ve:"Venezuela",vg:"British Virgin Islands",vi:"United States Virgin Islands",vn:"Vietnam",vu:"Vanuatu",wf:"Wallis and Futuna",ws:"Samoa",ye:"Yemen",yt:"Mayotte",za:"South Africa",zm:"Zambia",zw:"Zimbabwe",africa:"African Union"},Ds={su:"ru",gov:"us",mil:"us",amazon:"us",aws:"us"},Os={ru:["\u0430","\u0435","\u0438","ivan","alexan","alexe","andre","anton","petr","konstan","sergey","dmitr","roman","pavel","vlad","nikol","nikita","maks","oleg","denis","viktor","victor","eugen","ikhail","italy","yura","igor","ov"],tr:["ilmaz","aya","demir","elik","ahin","ildiz","ildir\u0131m"],pt:["silva","santos","ferreira","pereira","oliveira","rodrigues","pereira","soares"],kr:["kim","won","khan"],jp:["sudzuki","yashi","kami","yuki","yama","sato","mato","moto","sawa","hiro"],uk:["watson","thomson","smith","johnson","williams","jones","brown","davis","miller","wilson","moore","taylor"],es:["\xf1","gonzales","rodriguez","fernandez","garcia","lopez"],fr:["blanchet","boucher","deschamps","dupont","fournier","garnier","laurent","lavigne","martin","monet"],it:["rossi","ferrari","conti","romano","bruni","esposito","russo","marino","de luca","mancini"],pl:["\u0142"],ee:["\xf5"],gr:["\u03b1","\u03b5","\u043e","\u03c5","\u03b2","\u03c0"],de:["\xdf"],il:["\u05d4","\u05d9","\u05d5"]},Rs={"-12:00":{countries:["us"]},"-11:00":{countries:["us"]},"-10:00":{countries:["us"]},"-09:30":{countries:["pf"]},"-09:00":{countries:["us"]},"-08:00":{countries:["us"]},"-07:00":{countries:["ca","us"]},"-06:00":{countries:["ca","us","mx","hn","ni"]},"-05:00":{title:"Canada or USA or Caribbean or Peru",countries:["ca","us","jm","dm","pa","pe","cu","co"]},"-04:00":{countries:["ca","us","South America"]},"-03:00":{countries:["ar","br"],name:{ar:Os.es,br:Os.pt}},"-02:00":{countries:["br"]},"-01:00":{countries:["pt"]},"+00:00":{countries:["pt","uk"],name:{pt:Os.pt,uk:Os.uk,ru:Os.ru}},"+01:00":{title:"Europe",countries:["uk","es","fr","de","it","ch","at","pl","be","li","rs","se","no","me","si","sk","dk","nl","dz","ne","td","ao"],name:{es:Os.es,fr:Os.fr,it:Os.it,pl:Os.pl,ee:Os.ee,gr:Os.gr,de:Os.de}},"+02:00":{title:"Finland or Ukraine or Balkans or Israel",countries:["fi","lv","lt","ee","ua","bg","gr","cy","il","eg","ly","za"],name:{es:Os.es,pl:Os.pl,ee:Os.ee,il:Os.il}},"+03:00":{countries:["ru","by","tr"],name:{ru:Os.ru,tr:Os.tr}},"+03:30":{countries:["ir"]},"+04:00":{countries:["ru"]},"+04:30":{countries:["af"]},"+05:00":{title:"Yekaterinburg or Middle Asia or Pakistan",countries:["ru","kz","uz","uz","kg","tm","tj","pk"],name:{ru:Os.ru}},"+05:30":{countries:["in"]},"+05:45":{countries:["np"]},"+06:00":{countries:["ru"]},"+07:00":{countries:["th","vn","id"],name:{ru:Os.ru}},"+08:00":{title:"China or Philippines",countries:["cn","ph","ml"]},"+09:00":{countries:["kr","jp"],name:{kr:Os.kr,jp:Os.jp}},"+09:30":{countries:["au"]},"+10:00":{title:"Australia",countries:["au","ru"],name:{ru:Os.ru}},"+10:30":{countries:["au"]},"+11:00":{countries:["au"]},"+12:00":{countries:["nz"]},"+13:00":{countries:["ws"]}};!function(){let e=Object.keys(Rs);e.forEach(((t,n)=>{var a,o;Rs[t].prev=(null===(a=Rs[e[n-1]||""])||void 0===a?void 0:a.countries)||[],Rs[t].next=(null===(o=Rs[e[n+1]||""])||void 0===o?void 0:o.countries)||[],Rs[t].title||(Rs[t].title=Rs[t].countries.map((e=>Ns[e]||e)).join(" or "))}))}();const Ps=new Map,Is=new Map,Ls=new Map,Fs=new Map,Ms=new Map,Ws=new Map;function Bs(e){return e.toLowerCase().replace(/[\s\t.\-_]+/gm,"")}function zs(e,t){let n=e[1]||"",a=e[2]||"";-1===a.indexOf("@")&&(a="");const o="".concat(n,">").concat(a);let s=Ms.get(o);s||(s=As(n,a),Ms.set(o,s));const{company:r,domain:i,device:l}=s,c="".concat(n,">").concat(t);let m=Ws.get(c);m||(m=function(e,t,n){const a=Rs[e||""];if(!a)return"";if(1===a.countries.length)return Ns[a.countries[0]];if(t&&-1!==[...a.prev,...a.countries,...a.next].indexOf(t))return Ns[Ds[t||""]||t];if(n&&a.name){const e=n.toLowerCase();for(let t in a.name)if(a.name[t].some((t=>-1!==e.indexOf(t))))return Ns[t]}return a.title}(t,i,n),Ws.set(o,s));const d=Fs.get(o);if(d)n=d.author,a=d.email;else{const e=Bs(n),t=Ps.get(e);e&&t&&t!==n&&(Ps.set(e,t),n=t);const s=Ls.get(a);a&&s&&s!==n&&(Ls.set(a,s),n=s);const r=Is.get(n);n&&r&&r!==a&&(Is.set(n,r),a=r);const i=Bs(n);n=n.replace(/[.\-_]+/gm," ").replace(/([a-z])([A-Z])/gm,"$1 $2").trim(),Ps.set(i,n),Ls.set(a,n),Is.set(n,a),Fs.set(o,{author:n,email:a})}return{author:n,email:a,device:l,company:r,country:m}}const Us={master:!0,dev:!0,develop:!0};let Hs=new Date,Gs=new Map;function Vs(e){var t,n,a;const o=e.split(">"),s=o[0]||"";let r=new Date(s);isNaN(r.getDay())&&(r=Hs),Hs=r;const i=r.getDay()-1,l=s.substring(0,10),c=s.substring(19,25);let m=Gs.get(l);m||(m=new Date(l).getTime(),Gs.set(l,m));const{author:d,email:p,device:u,company:h,country:f}=zs(o,c),g=e.substring((null===(t=o[0])||void 0===t?void 0:t.length)+(null===(n=o[1])||void 0===n?void 0:n.length)+(null===(a=o[2])||void 0===a?void 0:a.length)+3),y={date:s,day:i<0?6:i,dayInMonth:r.getDate(),hours:r.getHours(),minutes:r.getMinutes(),month:r.getMonth(),year:r.getUTCFullYear(),week:0,timezone:c,timestamp:l,milliseconds:m,author:d,email:p,message:g,company:h,country:f,device:u,text:"",type:"",scope:"",fileChanges:[]},v=0===g.indexOf("Pull request #"),b=0===g.indexOf("Merge pull request #"),w=0===g.indexOf("Merge branch "),k=0===g.indexOf("Merge commit ")||0===g.indexOf("Merge remote-tracking branch"),x=0===g.indexOf("Automatic merge from");if(v||b||k||w||x){let e,t,n,a,o,s,r,i,l=go;if(b)l=ho,[e,t,n,a]=function(e){const t=(e||"").replace(/["']+/gim,"").replace("#",'#": "').replace(" in ",'", "in": "').replace(" from ",'", "from": "').replace(" to ",'", "to": "').replace(" into ",'", "to": "'),n=JSON.parse('{"'.concat(t,'"}'));return[n["Merge pull request #"],n.in,n.from,n.to]}(g),o=Ma(n);else if(v){l=uo;const t=g.substring(14).split(":");e=t.shift();const n=t.join(":");o=Ma(n),[r,i]=Fa(n,o)}else x?(l=yo,[,n,a]=g.replace(/(Automatic\smerge\sfrom\s)|(\s->\s)/gim,",").replace(/(Merge\sremote-tracking\sbranch\s')|('\sinto\s)/gim,",").split(",")):w&&(l=fo,[n,a]=function(e){const t=e.substring(14,e.length-1),n=t.indexOf("'");return[t.substring(0,n),t.substring(n+8)]}(g),a&&Us[a]&&(o=Ma(n),s=Wa(n),e="#".concat(s,"-").concat(Math.random()),!o&&s&&(o="#".concat(s))));s=Wa(o);const c=Ba(o);return{...y,type:r,scope:i,prId:e||"",task:o||"",taskNumber:s||"",taskCode:c,repository:t||"",branch:n||"",toBranch:a||"",commitType:l}}{const e=(g||"").indexOf(":"),t=e>1?g.substring(e+2).trim():g,n=Ma(g),a=Wa(n),o=Ba(n),[s,r]=Fa(g,n);return{...y,task:n,taskNumber:a,taskCode:o,text:t,type:s||"",scope:r||"",changes:0,added:0,removed:0}}}function Ks(e){let[t,n,a]=function(e){let t=0;"\t"===e[1]?t=1:"\t"===e[2]?t=2:"\t"===e[3]?t=3:"\t"===e[4]?t=4:"\t"===e[5]&&(t=5);let n=t+2;return"\t"===e[t+2]?n=t+2:"\t"===e[t+3]?n=t+3:"\t"===e[t+4]?n=t+4:"\t"===e[t+5]?n=t+5:"\t"===e[t+6]&&(n=t+6),[e.substring(0,t),e.substring(t+1,n),e.substring(n+1)]}(e),o=parseInt(t,10)||0,s=parseInt(n,10)||0,r=0;return o>s?(o-=s,r=s,s=0):s>o?(s-=o,r=o,o=0):(r=o,o=0,s=0),{path:a,addedLines:o,removedLines:s,changedLines:r}}function $s(e){return{action:e[35],path:e.substring(37)}}function qs(e){const[t,n]=function(e){const t='"'===e[e.length-1]?e.replace(/"/gm,"").replace(/\/\//gm,"/"):e;if(-1===t.indexOf("{"))return[t];const n=t.split(/(?:\{)|(?:\s=>\s)|(?:})/gm);if(2!==n.length&&4!==n.length)return[t];2===n.length&&n.unshift("");let a="".concat(n[0]||"").concat(n[1]||"").concat(n[3]||""),o="".concat(n[0]||"").concat(n[2]||"").concat(n[3]||"");return n[1]||(a=a.replace(/\/\//gm,"/")),n[2]||(o=o.replace(/\/\//gm,"/")),[a,o]}(e),a=t.toLowerCase(),o=null===n||void 0===n?void 0:n.toLowerCase();return{id:a,newId:o&&a!==o?o:void 0,path:n||t,action:"",addedLines:0,removedLines:0,changedLines:0}}function Ys(e,t){e.added+=t.addedLines||0,e.removed+=t.removedLines||0,e.changes+=t.changedLines||0}function Zs(e){return"\t"===e[1]||"\t"===e[2]||"\t"===e[3]||"\t"===e[4]||"\t"===e[5]||"\t"===e[6]||"\t"===e[7]}function Js(e){let t=null;const n=[];let a=new Map,o=null,s=0;for(let r=0,i=e.length;r<i;r+=1){const i=e[r];if(i)if(":"===i[0]){const e=$s(i);o=a.get(e.path),o||(o=qs(e.path),a.set(e.path,o)),o.action=e.action}else if(Zs(i)){const e=Ks(i);o=a.get(e.path),o||(o=qs(e.path),a.set(e.path,o)),o.addedLines=e.addedLines,o.removedLines=e.removedLines,o.changedLines=e.changedLines,Ys(t,e)}else{t&&(t.fileChanges=Array.from(a.values())),a.clear(),t=Vs(i);const e=t.milliseconds-t.day*zn;s?t.week=Math.floor((s-e)/6048e5):s=e,n.push(t)}}return Ps.clear(),Is.clear(),Ls.clear(),Fs.clear(),Ms.clear(),Ws.clear(),Hs=new Date,Gs.clear(),n}var Xs;!function(e){e.FRONT="Front",e.IOS="IOS",e.ANDROID="Android",e.BACK="Back",e.CONFIG="Config",e.DESIGN="Design"}(Xs||(Xs={}));const Qs={js:Xs.FRONT,ts:Xs.FRONT,tsx:Xs.FRONT,vue:Xs.FRONT,css:Xs.FRONT,less:Xs.FRONT,scss:Xs.FRONT,cjs:Xs.FRONT,html:Xs.FRONT,jsp:Xs.FRONT,swift:Xs.IOS,kt:Xs.ANDROID,java:Xs.ANDROID,php:Xs.BACK,perl:Xs.BACK,py:Xs.BACK,rb:Xs.BACK,c:Xs.BACK,h:Xs.BACK,xml:Xs.CONFIG,json:Xs.CONFIG,yml:Xs.CONFIG,csv:Xs.DESIGN,png:Xs.DESIGN,jpg:Xs.DESIGN,jpeg:Xs.DESIGN,gif:Xs.DESIGN,webp:Xs.DESIGN};function er(e,t,n){var a,o,s;if(!n.length)return(0,_e.t)("common.title");const r=function(e){var t;const n=(null===(t=e.extension.statistic)||void 0===t?void 0:t[0])||{},a=(null===n||void 0===n?void 0:n.extension)||"",o=Qs[a];var s,r,i;return o===Xs.ANDROID?(null===(s=e.extension.statisticByName)||void 0===s||null===(r=s.xml)||void 0===r||null===(i=r.files)||void 0===i?void 0:i.AndroidManifest)?Xs.ANDROID:Xs.BACK:o||a.toUpperCase()}(t)||"",i=(null===(a=e.pr.statistic)||void 0===a||null===(o=a[0])||void 0===o?void 0:o.task)||"",l=e.firstLastCommit.minData.author||"",c=(null===n||void 0===n||null===(s=n[0])||void 0===s?void 0:s.year)||"",m=i.split("-").shift().toUpperCase()||"",d=l.split(" ").shift()||"";return"".concat(r," ").concat(m," (").concat(c,", ").concat(d,")")}let tr=document.body.style.overflow;function nr(){document.body.style.overflow=tr}function ar(e){tr=document.body.style.overflow,document.body.style.overflow="hidden",e&&setTimeout(nr,e)}const or={on:nr,off:ar,useOnOff:function(){return ar(),()=>{nr()}}};const sr=new class{constructor(){this.isOpen=!1,this.delay=3400,(0,Vt.rC)(this,{isOpen:Vt.LO,delay:Vt.LO,show:Vt.aD,hide:Vt.aD,setDelay:Vt.aD})}show(){this.isOpen=!0,or.off(this.delay)}hide(){this.isOpen=!1}setDelay(e){const t=e/180+400;this.delay=Math.max(3400,t)}getDelay(e){return((this.delay+(e||0))/1e3).toFixed(1)+"s"}};var rr=__webpack_require__(575);const ir=["Fyodor Dostoevsky","Dante Alighieri","Lev Tolstoy","Victor Hugo","William Shakespeare","Johann Wolfgang von Goethe","Miguel de Cervantes y Saavedra","Italo Calvino","Stendhal","Charles Baudelaire","Marcel Proust","Giovanni Boccaccio","Alexander Pushkin","Jalaluddin Muhammad Rumi","Franz Kafka","Anton Chekhov","Gabriel Garc\xeda M\xe1rquez","Umberto Eco","J.R.R. Tolkien","William Faulkner","Aesop","Arthur Rimbaud","Aristophanes","Ivan Turgenev","Sophocles","Moli\xe8re","Charles Dickens","Maxim Gorky","George Orwell","Edgar Allan Poe","Publius Vergilius Maro","Julio Cort\xe1zar","Nazim Hikmet","Oscar Wilde","Jean de La Fontaine","Rainer Maria Rilke","Lord Byron","Hans Christian Andersen","Thomas Mann","Alexandre Dumas","James Joyce","Louis-Ferdinand C\xe9line","Boris Pasternak","Federico Garc\xeda Lorca","Pablo Neruda","Borges","Beaumarchais","Naguib Mahfouz","Ursula K. Le Guin","Nikolay Gogol","Honor\xe9 de Balzac","Ernest Hemingway","Neil Gaiman","Jean Racine","Albert Camus","Jean-Paul Sartre","Chingiz Aitmatov","John Steinbeck","Milan Kundera","Jules Verne","Mark Twain","Francois Rabelais","Yasar Kemal","George Bernard Shaw","Arthur Conan Doyle","Jane Austen","Geoffrey Chaucer","Antoine de Saint-Exup\xe9ry","Erich Maria Remarque","J.D. Salinger","Virginia Woolf","Louis Aragon","Herman Melville","Alphonse Daudet","Mikhail Sholokhov","Stefan Zweig","Jos\xe9 Saramago","Bertolt Brecht","Mario Vargas Llosa","T.S. Eliot","Guy de Maupassant","John Keats","Sabahattin Ali","Ahmet Hamdi Tanpinar","John Fante","Henri-Fr\xe9d\xe9ric Blanc","Isaac Asimov","Fitzgerald Scott","J.M. Coetzee","Kazuo Ishiguro","Hermann Hesse","Robert Louis Stevenson","Salman Rushdie","Mario Vargas Llosa","Aldous Huxley","Paul Val\xe9ry","Thomas Pynchon","H.P. Lovecraft","Haruki Murakami","Nikos Kazantzakis"],lr=ir.map(((e,t)=>e.replace(/([\s.]+)|([^A-Za-z]+)/gim,"-").toLowerCase()+t+"@yahoo.com")),cr="axeurtyqwpsdfghjklzcvbnm".split("").map((e=>new Array(5).fill(e.toUpperCase()).join(""))),mr=["Apple","Microsoft","Samsung Electronics","Alphabet","AT&T","Amazon","Verizon Communications","China Mobile","Walt Disney","Facebook","Alibaba","Intel","Softbank","IBM","Tencent Holdings","Cisco Systems","Oracle","Deutsche Telekom","Taiwan Semiconductor"];class dr{constructor(e,t){this.refOldNewName={},this.dictionary=[],this.index=0,this.newNamePrefix="",this.dictionary=t,this.newNamePrefix=e}get(e){return this.refOldNewName[e]||(this.refOldNewName[e]=this.dictionary[this.index]||"".concat(this.newNamePrefix).concat(this.index),this.index+=1),this.refOldNewName[e]}}class pr{constructor(){this.fakeName=null,this.fakeEmail=null,this.fakeTaskPrefix=null,this.fakeCompany=null,this.fakeName=new dr("User",ir),this.fakeEmail=new dr("user",lr),this.fakeTaskPrefix=new dr("JIRA",cr),this.fakeCompany=new dr("Company",mr)}getCommit(e){const t=this.fakeName.get(e.author),n=this.fakeEmail.get(e.author),a=this.fakeCompany.get(e.company);if(!e.task)return{...e,author:t,email:n,company:a};const o=e.task.split(/[-_\s:#=]+/gim).shift()||"",s=this.fakeTaskPrefix.get(o),r=e.task.replace(o,s),i=e.message.replace(o,s),l=e.branch?e.branch.replace(o,s):void 0,c=e.toBranch?e.toBranch.replace(o,s):void 0;return{...e,task:r,message:i,author:t,email:n,company:a,branch:l,toBranch:c}}}const ur=new class{constructor(){this.defaultFrom="",this.defaultTo="",this.from="",this.to="",this.lastCommitTime=0,(0,Vt.rC)(this,{defaultFrom:Vt.LO,defaultTo:Vt.LO,from:Vt.LO,to:Vt.LO,updateByCommits:Vt.aD,setFilterByDateType:Vt.aD,updateProperty:Vt.aD})}updateByCommits(e,t){this.defaultFrom=e.timestamp,this.defaultTo=t.timestamp,this.from=this.defaultFrom,this.to=this.defaultTo,this.lastCommitTime=new Date(this.defaultTo).getTime()}setFilterByDateType(e){const t={year:365,halfYear:183,month:30,week:7,day:1}[e];this.from=t?new Date(this.lastCommitTime-zn*t).toISOString().split("T")[0]:this.defaultFrom,this.to=this.defaultTo}updateProperty(e,t){this[e]=null!==t&&void 0!==t?t:null}},hr=ur;let fr;!function(e){e.EMPTY="empty",e.WELCOME="welcome",e.INFO="info"}(fr||(fr={}));const gr=new class{constructor(){this.view=fr.EMPTY,(0,Vt.rC)(this,{view:Vt.LO,toggle:Vt.aD})}toggle(e){this.view=e}},yr=300;var vr=(0,yn.Z)("updateRender");function br(){this.dataGrip=null,this.dataGrip=Ko,this.fileGrip=null,this.fileGrip=Ss,this.hash=Math.random()}const wr=new class{constructor(){Object.defineProperty(this,vr,{value:br}),this.commits=[],this.dataGrip=null,this.fileGrip=null,this.hash=0,this.isDepersonalized=!1,(0,Vt.rC)(this,{dataGrip:Vt.LO,fileGrip:Vt.LO,hash:Vt.LO,isDepersonalized:Vt.LO,asyncSetCommits:Vt.aD,processingStringToCommit:Vt.aD,processingDataAnalysis:Vt.aD,depersonalized:Vt.aD,updateStatistic:Vt.aD})}asyncSetCommits(e){null!==e&&void 0!==e&&e.length&&(sr.show(),setTimeout((()=>this.processingStringToCommit(e)),yr))}processingStringToCommit(e){Ko.clear(),Ss.clear();const t=Js(e||[]);t.length?setTimeout((()=>this.processingCommitGrouping(t)),yr):sr.hide()}processingCommitGrouping(e){e.sort(((e,t)=>e.milliseconds-t.milliseconds));const t=e.length;e.forEach((e=>{Ko.addCommit(e,t)})),setTimeout((()=>this.processingFileGrouping(e)),yr)}processingFileGrouping(e){e.forEach((e=>{Ss.addCommit(e)})),setTimeout((()=>this.processingDataAnalysis(e)),yr)}processingDataAnalysis(e){var t,n;Ss.updateTotalInfo(),this.commits=e,hr.updateByCommits(Ko.firstLastCommit.minData,Ko.firstLastCommit.maxData),t=Ko.firstLastCommit.minData,n=Ko.firstLastCommit.maxData,Pn={from:t.timestamp,to:n.timestamp},Ko.updateTotalInfo(),Rn.updateByGrip(Ko,Ss),gr.toggle(fr.INFO),(0,gn.Z)(this,vr)[vr](),console.dir(this.dataGrip),console.dir(this.fileGrip),rr.C.title||(document.title=er(this.dataGrip,this.fileGrip,this.commits))}depersonalized(e){this.isDepersonalized=!!e,setTimeout((()=>{this.updateStatistic()}),100)}updateStatistic(){Ko.clear(),Ss.clear();const e=new pr;this.commits.forEach((t=>{if(t.timestamp<hr.from||t.timestamp>hr.to)return;const n=this.isDepersonalized?e.getCommit(t):t;Ko.addCommit(n,0),Ss.addCommit(n)})),Ss.updateTotalInfo(),Ko.updateTotalInfo(),Rn.updateByGrip(Ko,Ss),(0,gn.Z)(this,vr)[vr]()}},kr=wr;function xr(e){var t;window.report=e||[],sr.setDelay(null===(t=e||[])||void 0===t?void 0:t.length)}function _r(e){xr([]);return{rep:!0,"r(f":!0,"R(f":!0}[e.slice(0,3)]&&(e=e.replace(/(R\(f`)|(r\(f`)|(report\.push\(`)|(`\);)/gim,"")),xr(e.split("\n")),window.report}async function Tr(e){return(await Promise.all(e.map((e=>e.text())))).filter((e=>e)).map((e=>({key:e.substring(13,32),text:e}))).sort(((e,t)=>(e.key||"").localeCompare(t.key||""))).map((e=>e.text)).join("\n")}const Sr="dropzone",Cr="dropzone_title";var Er=__webpack_require__(184);const jr=function(e){let{onChange:n}=e;const[a,o]=(0,t.useState)(!1);return(0,t.useEffect)((()=>{const e=function(e,t){return async function(n){var a;n.preventDefault(),n.stopPropagation();const o=[...(null===n||void 0===n||null===(a=n.dataTransfer)||void 0===a?void 0:a.items)||[]].map((e=>"file"===e.kind?null===e||void 0===e?void 0:e.getAsFile():null)).filter((e=>e));if(e(!1),!o.length)return;const s=_r(await Tr(o));t("dump",s)}}(o,n),t=function(e){return function(t){t.preventDefault(),t.stopPropagation(),e(!0)}}(o);return document.body.addEventListener("drop",e),document.body.addEventListener("dragover",t),()=>{document.body.removeEventListener("drop",e),document.body.removeEventListener("dragover",t)}}),[]),a?(0,Er.jsx)("div",{className:Sr,children:(0,Er.jsx)("p",{className:Cr,children:"Drop file here"})}):(0,Er.jsx)(Er.Fragment,{})},Ar={ui_kit_button:"ui_kit_button",ui_kit_button_slim:"ui_kit_button_slim",ui_kit_button_second:"ui_kit_button_second",ui_kit_button_border:"ui_kit_button_border",ui_kit_button_link:"ui_kit_button_link",disabled:"disabled",ui_kit_button_full_size:"ui_kit_button_full_size",ui_kit_button_menu:"ui_kit_button_menu"};function Nr(e){return{link:Ar.ui_kit_button_link,slim:Ar.ui_kit_button_slim,second:Ar.ui_kit_button_second,primary:Ar.ui_kit_button_primary,border:Ar.ui_kit_button_border,full_size:Ar.ui_kit_button_full_size}[e||""]||""}function Dr(e,t){let n="";return n=Array.isArray(e)?e.map(Nr).join(" "):Nr(e||"primary"),t&&(n+=" ".concat(Ar.disabled)),n}const Or=function(e){let{title:t,mode:n,disabled:a,className:o,onClick:s,children:r}=e;const i=Dr(n,a);return(0,Er.jsx)("button",{title:t,className:"".concat(Ar.ui_kit_button," ").concat(i||""," ").concat(o||""),onClick:()=>{s&&s()},children:r})},Rr=navigator.userAgent||navigator.vendor||window.opera||"",Pr=/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(Rr)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(Rr.substr(0,4))||window.innerWidth<700,Ir="locker",Lr="locker_icon",Fr="locker_border",Mr="locker_center",Wr="locker_sector",Br="locker_text";function zr(e){let{delay:n,callback:a,className:o,sectorClassName:s,borderClassName:r}=e;const[i,l]=(0,t.useState)(""),[c,m]=(0,t.useState)(n);return(0,t.useEffect)((()=>{const e=Math.round(100-100*c/n),t=49.5*Math.PI;l("".concat(t/100*e,", ").concat(t)),e>=99?a&&a():setTimeout((()=>{m((e=>e-1))}),1e3)}),[c]),n&&c?(0,Er.jsxs)("div",{className:"".concat(Ir," ").concat(o||""),children:[(0,Er.jsxs)("svg",{viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid meet",xmlns:"http://www.w3.org/2000/svg",className:Lr,children:[(0,Er.jsx)("circle",{r:"25",cx:"50",cy:"50",style:{strokeDasharray:i},className:"".concat(Wr," ").concat(s||"")}),(0,Er.jsx)("circle",{r:"49.5",cx:"50",cy:"50",className:"".concat(Fr," ").concat(r||"")}),(0,Er.jsx)("circle",{r:"40",cx:"50",cy:"50",className:"".concat(Mr," ").concat(r||"")})]}),(0,Er.jsx)("p",{className:Br,children:c})]}):null}zr.defaultProps={delay:60,callback:void 0,className:"",sectorClassName:"",borderClassName:""};const Ur=zr,Hr="modal_window",Gr="modal_window_fullscreen",Vr="modal_window_wrapper",Kr="modal_window_halo",$r="modal_window_title",qr="modal_window_body",Yr="modal_window_footer",Zr="modal_window_locker",Jr="modal_window_close",Xr=un((e=>{let{id:t,delay:n,className:a,children:o,onClose:s,setCanClose:r}=e;return(0,Er.jsxs)("div",{id:"".concat(t||"","-title"),className:"".concat($r," ").concat(a||""),children:[o,s?(0,Er.jsx)("img",{id:"".concat(t,"-close"),src:"./assets/close.svg",className:Jr,onClick:e=>{e.stopPropagation(),s()}}):null,n?(0,Er.jsx)(Ur,{delay:n,className:Zr,callback:()=>{r&&r(!0)}}):null]})})),Qr=un((e=>{let{id:t,className:n,children:a}=e;return(0,Er.jsx)("div",{id:"".concat(t||"","-body"),className:"".concat(qr," scroll_y ").concat(n||""),children:a})})),ei=un((e=>{let{id:t,className:n,children:a}=e;return(0,Er.jsx)("div",{id:"".concat(t||"","-footer"),className:"".concat(Yr," ").concat(n||""),children:a})}));function ti(e){let{id:n,mode:a,delay:o,className:s,onClose:r,children:i}=e;const[l,c]=(0,t.useState)(!o);(0,t.useEffect)(or.useOnOff,[]);const m=t.Children.map(i,(e=>t.isValidElement(e)?t.cloneElement(e,{onClose:r,delay:o,setCanClose:c}):e)),d=Pr?Gr:Hr;return Kt.createPortal((0,Er.jsx)("div",{id:"".concat(n,"-wrapper"),className:"".concat(Vr||""),onClick:e=>{var t;e.stopPropagation(),(null===(t=e.target)||void 0===t?void 0:t.id)==="".concat(n,"-wrapper")&&r&&l&&r()},children:(0,Er.jsxs)("div",{id:n,className:"".concat(d," ").concat(s||""),onClick:e=>{e.stopPropagation()},children:["halo"===a?(0,Er.jsx)("img",{className:Kr,src:"./assets/sponsor/halo.png"}):null,m]})}),document.body)}ti.displayName="Modal",ti.defaultProps={id:"modal-window",delay:void 0,className:"",onClose:void 0,children:void 0};const ni={logo:"./assets/logo.svg",isOpenInNewTab:!1},ai={vk_frontend_du2:{logo:"./social/vk/frontend_du2.png",banner:"./social/vk/frontend_du2.jpg",link:"https://vk.com/frontend_du2"},vk_take_off_staff:{logo:"./social/vk/take_off_staff.png",banner:"./social/vk/take_off_staff.jpg",link:"https://vk.com/takeoff_staff"}};const oi=new class{constructor(){this.urlParameters={},(0,Vt.rC)(this,{urlParameters:Vt.LO,setUrlParameters:Vt.aD})}setUrlParameters(e){this.urlParameters=e||{}}getConfig(){var e;const t=(null===(e=this.urlParameters)||void 0===e?void 0:e.ref)||"";return ai[t]||function(e){if(!e)return null;const t=e.split("_"),n=t.shift()||"",a=t.join("_");return a?{isOpenInNewTab:!0,logo:"./assets/logo.svg",link:{vk:"https://vk.com/".concat(a),yt:"https://www.youtube.com/@".concat(a),tg:"https://t.me/@".concat(a)}[n],text:a,textIcon:{vk:"./social/vk.png",yt:"./social/youtube.png",tg:"./social/tg.png"}[n],color:"#FFFFFF",backgroundColor:{vk:"#5181B8",yt:"#FE0000",tg:"#29A6E6"}[n]||"#EFC526"}:null}(t)}getLogo(){return ni||this.getConfig()||ni}getBanner(){return this.getConfig()}},si=oi,ri=0,ii=1,li=2;const ci=new class{constructor(){this.type=ri,(0,Vt.rC)(this,{type:Vt.LO,open:Vt.aD,close:Vt.aD});"localhost"===window.location.hostname||Pr||si.getConfig()||this.setTimer()}setTimer(){setInterval((()=>{this.type||(this.type=li)}),42e4)}open(){this.type=ii}close(){this.type=ri}},mi="sponsor_title",di="sponsor_body",pi="sponsor_cover",ui="sponsor_text",hi="sponsor_footer",fi="sponsor_button",gi="sponsor_button_wrapper",yi=un((()=>{const{t:e}=zt();return(0,Er.jsxs)(ti,{mode:"halo",delay:10,onClose:()=>{ci.close()},children:[(0,Er.jsx)(Xr,{className:mi,children:e("page.sponsor.title")}),(0,Er.jsxs)(Qr,{className:di,children:[(0,Er.jsx)("p",{className:ui,children:e("page.sponsor.money.description")}),(0,Er.jsx)("img",{className:pi,src:"./assets/sponsor/money.jpg"})]}),(0,Er.jsx)(ei,{className:hi,children:(0,Er.jsx)(Or,{mode:["border","full_size"],onClick:()=>{window.open("https://www.sberbank.com/sms/pbpn?requisiteNumber=79818413061","_blank"),ci.close()},children:e("page.sponsor.money.qr")})})]})})),vi=yi,bi="description_title",wi="description_text",ki="description_list";function xi(e,t){const n=(e||"").split(/(\[[^\]]+\])/gim).map((e=>{if("["!==(null===e||void 0===e?void 0:e[0]))return e;const[n,a]=e.replace(/\[|\]/gim,"").split("|");return(0,Er.jsx)(we,{target:"_blank",rel:"noreferrer",className:t||"",to:a,children:n},e)}));return(0,Er.jsx)(Er.Fragment,{children:n})}function _i(e,t){const n=(e||"").split("*").map(((e,n)=>n%2?(0,Er.jsx)("b",{children:xi(e,t)},e):(0,Er.jsx)("span",{children:xi(e,t)},e)));return(0,Er.jsx)(Er.Fragment,{children:n})}function Ti(e){let{text:t,style:n,className:a}=e;return(0,Er.jsx)("p",{style:n||{},className:"".concat(ki," ").concat(a||""),children:_i(t,a)})}function Si(e){let{text:t,style:n,className:a}=e;return(0,Er.jsx)("h6",{style:n||{},className:"".concat(bi," ").concat(a||""),children:_i(t,a)})}function Ci(e){let{text:t,style:n,className:a}=e;return(0,Er.jsx)("p",{style:n||{},className:"".concat(wi," ").concat(a||""),children:_i(t)})}function Ei(e){let{text:t,style:n,className:a}=e;const o=(Array.isArray(t)?t:(t||"").trim().split(/\n+/gm)).map((e=>{const t=e.substring(0,2),o=e.substring(2);return"- "===t?(0,Er.jsx)(Ti,{text:o,style:n,className:a},o):"# "===t?(0,Er.jsx)(Si,{text:o,style:n,className:a},o):(0,Er.jsx)(Ci,{text:e,style:n,className:a},o)}));return(0,Er.jsx)(Er.Fragment,{children:o})}Ei.defaultProps={text:""};const ji=Ei;var Ai=__webpack_require__(122);function Ni(e){if(!e)return;const t=document.createElement("textarea");t.style.position="fixed",t.style.opacity="0",t.textContent=e,document.body.appendChild(t),t.select(),document.execCommand("copy"),document.body.removeChild(t)}const Di=function(){const e=Object.entries(function(){const e="https://github.com/bakhirev/assayo",t="Visualization and analysis of git repository",n="Check your git stats!",a="",o="IT,git,statistics,audit,data-visualization,report";return{Facebook:"http://www.facebook.com/sharer.php?u=".concat(e),VK:"http://vk.com/share.php?url=".concat(e,"&title=").concat(t,"&comment=").concat(n),QQ:"http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=".concat(e),Reddit:"https://reddit.com/submit?url=".concat(e,"&title=").concat(t),X:"https://twitter.com/intent/tweet?url=".concat(e,"&text=").concat(a,"&via=&hashtags=").concat(o),LinkedIn:"https://www.linkedin.com/sharing/share-offsite/?url=".concat(e),OK:"https://connect.ok.ru/dk?st.cmd=WidgetSharePreview&st.shareUrl=".concat(e),Tumblr:"https://www.tumblr.com/widgets/share/tool?canonicalUrl=".concat(e,"&title=").concat(t,"&caption=").concat(n,"&tags=").concat(o),Blogger:"https://www.blogger.com/blog-this.g?u=".concat(e,"&n=").concat(t,"&t=").concat(n),Evernote:"https://www.evernote.com/clip.action?url=".concat(e,"&title=").concat(a),Addthis:"http://www.addthis.com/bookmark.php?url=".concat(e),GetPocket:"https://getpocket.com/edit?url=".concat(e),YCombinator:"https://news.ycombinator.com/submitlink?u=".concat(e,"&t=").concat(t),Buffer:"https://buffer.com/add?text=".concat(a,"&url=").concat(e),Flipboard:"https://share.flipboard.com/bookmarklet/popout?v=2&title=".concat(a,"&url=").concat(e),Instapaper:"http://www.instapaper.com/edit?url=".concat(e,"&title=").concat(t,"&description=").concat(n),Renren:"http://widget.renren.com/dialog/share?resourceUrl=".concat(e,"&srcUrl=").concat(e,"&title=").concat(t,"&description=").concat(n),"The diaspora* Project":"https://share.diasporafoundation.org/?title=".concat(t,"&url=").concat(e),Weibo:"http://service.weibo.com/share/share.php?url=".concat(e,"&appkey=&title=").concat(t,"&pic=&ralateUid="),Douban:"http://www.douban.com/recommend/?url=".concat(e,"&title=").concat(a),XING:"https://www.xing.com/spi/shares/new?url=".concat(e),Line:"https://lineit.line.me/share/ui?url=".concat(e,"&text=").concat(a)}}()).map((e=>{let[t,n]=e;return(0,Er.jsx)(we,{className:fi,to:n,target:"_blank",children:t},t)}));return(0,Er.jsx)("div",{className:gi,children:e})},Oi=un((()=>{const{t:e}=zt(),t=_e.Z.get("page.sponsor.share.description");return(0,Er.jsxs)(ti,{mode:"halo",delay:10,onClose:()=>{ci.close()},children:[(0,Er.jsx)(Xr,{className:mi,children:e("page.sponsor.title")}),(0,Er.jsxs)(Qr,{className:di,children:[(0,Er.jsx)("p",{className:ui,children:_i(t)}),(0,Er.jsx)(Di,{})]}),(0,Er.jsx)(ei,{className:hi,children:(0,Er.jsx)(Or,{mode:["primary","full_size"],onClick:()=>{Ni("https://github.com/bakhirev/assayo"),Ai.Z.show(_e.Z.get("uiKit.console.notification"))},children:e("page.sponsor.share.button")})})]})})),Ri=Oi,Pi=un((()=>ci.type===ii?(0,Er.jsx)(vi,{}):ci.type===li?(0,Er.jsx)(Ri,{}):null)),Ii="logo",Li="logo_center",Fi="logo_link",Mi="logo_icon",Wi="logo_default";function Bi(e){let{center:t}=e;const{logo:n,link:a,title:o}=si.getLogo()||{},s="./assets/logo.svg"===n;return(0,Er.jsx)("figure",{className:t?"".concat(Ii," ").concat(Li):Ii,children:(0,Er.jsx)(we,{to:a||"",target:s?"":"_blank",className:Fi,children:(0,Er.jsx)("img",{src:n||"",title:o||"",className:s?"".concat(Mi," ").concat(Wi):Mi})})})}Bi.defaultProps={center:!1};const zi=Bi,Ui="splash_screen",Hi="splash_screen_container",Gi="progress_bar",Vi="progress_bar_line",Ki=un((()=>((0,t.useEffect)((()=>{sr.isOpen&&setTimeout((()=>{sr.hide()}),sr.delay)}),[sr.isOpen]),sr.isOpen?(0,Er.jsx)("div",{className:Ui,style:{animationDelay:sr.getDelay(100)},children:(0,Er.jsxs)("div",{className:Hi,style:{animationDelay:sr.getDelay(-1400)},children:[(0,Er.jsx)(zi,{center:!0}),(0,Er.jsx)("div",{className:Gi,children:(0,Er.jsx)("div",{className:Vi,style:{animationDuration:sr.getDelay(-1100)}})})]})}):null)));const $i=new class{constructor(){this.title="",this.yes="",this.no="",this.isOpen=!1,this.successCallback=()=>{},this.cancelCallback=()=>{},(0,Vt.rC)(this,{title:Vt.LO,yes:Vt.LO,no:Vt.LO,successCallback:Vt.LO,cancelCallback:Vt.LO,isOpen:Vt.LO,open:Vt.aD,close:Vt.aD})}open(e){return this.title=(null===e||void 0===e?void 0:e.title)||e||"\u0412\u044b \u0443\u0432\u0435\u0440\u0435\u043d\u044b \u0447\u0442\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c?",this.yes=(null===e||void 0===e?void 0:e.yes)||"\u0414\u0430, \u0443\u0432\u0435\u0440\u0435\u043d",this.no=(null===e||void 0===e?void 0:e.no)||"\u041e\u0442\u043c\u0435\u043d\u0430",this.isOpen=!0,new Promise(((e,t)=>{this.successCallback=e,this.cancelCallback=t}))}close(){this.isOpen=!1}success(){this.isOpen&&(this.close(),this.successCallback())}cancel(){this.isOpen&&(this.close(),this.cancelCallback())}},qi=un((()=>$i.isOpen?(0,Er.jsxs)(ti,{children:[(0,Er.jsx)(Xr,{children:null===$i||void 0===$i?void 0:$i.title}),(0,Er.jsxs)(ei,{children:[(0,Er.jsx)(Or,{mode:Pr?["primary","full_size"]:["primary"],onClick:()=>{$i.cancel()},children:$i.no}),(0,Er.jsx)(Or,{mode:Pr?["second","full_size"]:["second"],onClick:()=>{$i.success()},children:$i.yes})]})]}):null));function Yi(e){const{title:t}=e;return Array.isArray(t)?t.length>1?"".concat(t[0]," +").concat(t.length-1):t[0]:t||""}function Zi(e){var t;const{description:n}=e,a=null===e||void 0===e||null===(t=e.arguments)||void 0===t?void 0:t.description;return(Array.isArray(n)?n:[n]).map((e=>_e.Z.get(e,a))).join("\n")}const Ji=new class{constructor(){this.recommendation=null,(0,Vt.rC)(this,{recommendation:Vt.LO,open:Vt.aD,close:Vt.aD})}open(e){this.recommendation=e}close(){this.recommendation=null}},Xi="recommendations_modal",Qi="recommendations_modal_title",el="recommendations_modal_header",tl="recommendations_modal_footer",nl="recommendations_modal_sub_title",al="recommendations_modal_description",ol="recommendations_modal_info",sl="recommendations_modal_fact",rl="recommendations_modal_warning",il="recommendations_modal_error",ll="recommendations_modal_button";const cl=un((()=>{var e;const{recommendation:t}=Ji;if(!t)return null;const n=Yi(t),a=null===t||void 0===t||null===(e=t.arguments)||void 0===e?void 0:e.title,o=function(e){var t;const n=null===e||void 0===e?void 0:e.type;return null!==(t={[ta.INFO]:ol,[ta.FACT]:sl,[ta.WARNING]:rl,[ta.ALERT]:il}[n||ta.INFO])&&void 0!==t?t:sl}(t),s=Zi(t).split("\n"),r=s.shift();return(0,Er.jsxs)(ti,{className:"".concat(o," ").concat(Xi),onClose:()=>{Ji.close()},children:[(0,Er.jsxs)(Xr,{className:el,children:[(0,Er.jsx)("span",{className:Qi,children:_e.Z.get(n,a)}),(0,Er.jsx)("p",{className:nl,children:r})]}),(0,Er.jsx)(Qr,{children:(0,Er.jsx)(ji,{className:al,text:s})}),(0,Er.jsx)(ei,{className:tl,children:(0,Er.jsx)(Or,{mode:["border","full_size"],className:ll,onClick:()=>{Ji.close()},children:_e.Z.get("recommendations.modal.cancel")})})]})})),ml=cl;const dl=new class{constructor(){this.mode="",this.isOpen=!1,(0,Vt.rC)(this,{isOpen:Vt.LO,on:Vt.aD,off:Vt.aD,toggle:Vt.aD})}on(e){this.isOpen=!0,this.mode=e||""}off(){this.isOpen=!1,this.mode=""}toggle(e){this.isOpen?this.off():this.on(e)}},pl="switch",ul="switch_item",hl="selected",fl="switch_item_icon",gl="switch_item_title";function yl(e){let{value:t,options:n,onChange:a}=e;const{t:o}=zt(),s=n.map((e=>{const n=o((null===e||void 0===e?void 0:e.title)||"");return(0,Er.jsxs)("div",{className:"".concat(ul," ").concat(t===(null===e||void 0===e?void 0:e.id)?hl:""),onClick:()=>{a&&a(null===e||void 0===e?void 0:e.id)},children:[(0,Er.jsx)("img",{className:fl,src:(null===e||void 0===e?void 0:e.icon)||"",alt:n||"",title:n||""}),(0,Er.jsx)("span",{className:gl,children:n||""})]},n)}));return(0,Er.jsx)("div",{className:pl,children:s})}yl.defaultProps={value:"",onChange:void 0};const vl=yl;function bl(e){const t={};return Object.keys(e).forEach((n=>{const a=e[n],o=a&&"object"===typeof a&&!(a instanceof Array);t[n]=o?bl(a):a})),t}const wl={getDeepCopy:bl,getUpdatedFormData(e,t,n){const a=this.getKeys(t),o=a.length-1,s=bl(e);let r=s;return a.forEach(((e,t)=>{t===o?r[e]=n:(r[e]||(r[e]={}),r=r[e])})),s},getKeys:e=>e?Array.isArray(e)?e:"".concat(e).split("."):[""],getValueByKeys(e){var t;let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];const a=this.getKeys(n);return a.length&&null!==(t=a.reduce(((e,t)=>null===e||void 0===e?void 0:e[t]),e))&&void 0!==t?t:""}};const kl=class{constructor(){this.isEdited=!1,this.isSuccess=!1,this.isLoading=!1,this.isLocked=!1,this.isServerError=!1,this.initState={},this.state={},this.errorMessage="",this.errors={},(0,Vt.rC)(this,{isEdited:Vt.LO,isSuccess:Vt.LO,isLoading:Vt.LO,isLocked:Vt.LO,isServerError:Vt.LO,state:Vt.LO,errorMessage:Vt.LO,errors:Vt.LO,setIsLocked:Vt.aD,setState:Vt.aD,setInitState:Vt.aD,updateState:Vt.aD,setFormError:Vt.aD,removeFormError:Vt.aD,clearErrorMessage:Vt.aD,clearAllErrors:Vt.aD,clear:Vt.aD,getFormattedState:Vt.aD,validation:Vt.aD,submit:Vt.aD})}setIsLocked(e){this.isLocked=e}setInitState(e){this.initState=e||{},this.state=JSON.parse(JSON.stringify(this.initState)),this.isEdited=!1}setState(e){this.state=e||{}}updateState(e,t){this.state=wl.getUpdatedFormData(this.state,e,t),this.isEdited=!0}setFormError(e,t){t?this.errors={...this.errors,[e]:t}:this.removeFormError(e)}removeFormError(e){if(!this.errors[e])return;const t={...this.errors};delete t[e],this.errors=t}clearErrorMessage(){this.errorMessage=""}clearAllErrors(){this.isServerError=!1,this.errorMessage="",this.errors={}}clear(){this.clearAllErrors(),this.state={},this.initState={}}getFormattedState(){return{...this.state}}validation(e){return this.errors.length?Promise.reject():e?(this.clearErrorMessage(),Promise.resolve()):Promise.reject()}submit(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return this.clearAllErrors(),this.isLocked?Promise.resolve():this.validation(t).then((0,Vt.aD)((()=>{this.isLoading=!0}))).then((()=>e(t))).then((0,Vt.aD)((e=>(this.isSuccess=!0,n&&this.clear(),Promise.resolve(e))))).catch((0,Vt.aD)((e=>(null===e||void 0===e?void 0:e.code)>204?(this.isServerError=!0,Promise.reject(e)):Promise.reject(e)))).finally((0,Vt.aD)((()=>{this.isLoading=!1})))}};const xl=new class extends kl{constructor(){super(),(0,Vt.rC)(this,{save:Vt.aD})}save(e){const{saveSettings:t}=Mn;return this.submit(t,e,!1).then((e=>(Ai.Z.show("common.notifications.setting"),Bn.loadUserSettings(),this.setInitState(this.state),Promise.resolve(e))))}},_l="sidebar",Tl="sidebar_title",Sl="sidebar_item",Cl="selected",El="sidebar_item_icon",jl="sidebar_item_title";function Al(e){let{id:t,link:n,title:a,icon:o,isSelected:s}=e;const{t:r}=zt(),i=r(a||"");return(0,Er.jsxs)(we,{className:"".concat(Sl," ").concat(s?Cl:""),to:n,title:i,id:"sidebar-menu-".concat(t),onClick:()=>{xl.isEdited&&(xl.clear(),xl.setInitState(xl.initState))},children:[(0,Er.jsx)("img",{className:El,src:o,alt:a||""}),(0,Er.jsx)("figcaption",{className:jl,children:i})]},t)}Al.defaultProps={title:"",icon:"",isSelected:!1};const Nl=Al;function Dl(e){let{title:t}=e;const{t:n}=zt();return(0,Er.jsx)("div",{className:Tl,children:n(t||"")})}Dl.defaultProps={title:""};const Ol=Dl,Rl=[{id:"team",title:"sidebar.switch.team",icon:"./assets/switch/team.svg"},{id:"person",title:"sidebar.switch.person",icon:"./assets/switch/person.svg"}],Pl=[{id:"total",link:"/team/total",title:"sidebar.team.total",icon:"./assets/menu/team_common.svg"},{id:"scope",link:"/team/scope",title:"sidebar.team.scope",icon:"./assets/menu/team_feat.svg"},{id:"author",link:"/team/author",title:"sidebar.team.author",icon:"./assets/menu/team_work.svg"},{id:"type",link:"/team/type",title:"sidebar.team.type",icon:"./assets/menu/team_type.svg"},{id:"company",link:"/team/company",title:"sidebar.team.company",icon:"./assets/menu/company.svg"},{id:"department",link:"/team/department",title:"sidebar.team.department",icon:"./assets/menu/department.svg"},{id:"country",link:"/team/country",title:"sidebar.team.country",icon:"./assets/menu/country.svg"},{},{id:"day",link:"/team/day",title:"sidebar.team.day",icon:"./assets/menu/team_day.svg"},{id:"week",link:"/team/week",title:"sidebar.team.week",icon:"./assets/menu/team_week.svg"},{id:"month",link:"/team/month",title:"sidebar.team.month",icon:"./assets/menu/team_month.svg"},{id:"hours",link:"/team/hours",title:"sidebar.team.hours",icon:"./assets/menu/team_hours.svg"},{},{id:"files",link:"/team/files",title:"sidebar.team.files",icon:"./assets/menu/team_files.svg"},{id:"removedFiles",link:"/team/removedFiles",title:"sidebar.team.removedFiles",icon:"./assets/menu/team_files_remove.svg"},{id:"extension",link:"/team/extension",title:"sidebar.team.extension",icon:"./assets/menu/team_files_ext.svg"},{id:"refactor",link:"/team/refactor",title:"sidebar.team.refactor",icon:"./assets/menu/refactor.svg"},{},{id:"release",link:"/team/release",title:"sidebar.team.release",icon:"./assets/menu/team_release.svg"},{id:"tasks",link:"/team/tasks",title:"sidebar.team.tasks",icon:"./assets/menu/team_tasks.svg"},{id:"pr",link:"/team/pr",title:"sidebar.team.pr",icon:"./assets/menu/pull_request.svg"},{},{id:"commits",link:"/team/commits",title:"sidebar.team.commits",icon:"./assets/menu/pull-request.svg"},{id:"changes",link:"/team/changes",title:"sidebar.team.changes",icon:"./assets/menu/branch.svg"},{id:"words",link:"/team/words",title:"sidebar.team.words",icon:"./assets/menu/team_words.svg"}],Il=[{id:"total",link:"/person/total/",title:"sidebar.person.total",icon:"./assets/menu/team_common.svg"},{id:"money",link:"/person/money/",title:"sidebar.person.money",icon:"./assets/menu/per_money.svg"},{id:"speed",link:"/person/speed/",title:"sidebar.person.speed",icon:"./assets/menu/per_speed.svg"},{},{id:"day",link:"/person/day/",title:"sidebar.person.day",icon:"./assets/menu/team_day.svg"},{id:"week",link:"/person/week/",title:"sidebar.person.week",icon:"./assets/menu/team_week.svg"},{id:"month",link:"/person/month/",title:"sidebar.person.month",icon:"./assets/menu/team_month.svg"},{id:"hours",link:"/person/hours/",title:"sidebar.person.hours",icon:"./assets/menu/team_hours.svg"},{},{id:"tasks",link:"/person/tasks/",title:"sidebar.person.tasks",icon:"./assets/menu/team_tasks.svg"},{},{id:"commits",link:"/person/commits/",title:"sidebar.person.commits",icon:"./assets/menu/pull-request.svg"},{id:"changes",link:"/person/changes/",title:"sidebar.person.changes",icon:"./assets/menu/branch.svg"},{id:"words",link:"/person/words/",title:"sidebar.person.words",icon:"./assets/menu/team_words.svg"}];const Ll=function(e){let{type:t}=e;const{page:n,userId:a}=Q(),o="team"===t?"":a||0,s=("team"===t?Pl:Il).map(((e,t)=>{if(!e.id)return(0,Er.jsx)(Ol,{},t);const a=n===e.id||!n&&"total"===e.id;return(0,Er.jsx)(Nl,{id:e.id,link:"".concat(e.link).concat(o),title:e.title,icon:e.icon,isSelected:a},e.id)}));return(0,Er.jsx)(Er.Fragment,{children:s})},Fl="scroll_up_button",Ml="scroll_up_button_icon";function Wl(){if(!window.scrollY)return;const e=.7*window.scrollY;window.scrollTo(0,e>20?e:0),setTimeout(Wl,30)}const Bl=function(){const[e,n]=(0,t.useState)(!1);return(0,t.useEffect)((()=>{function e(){n(window.scrollY>document.body.offsetHeight)}return window.addEventListener("scroll",e),()=>{window.removeEventListener("scroll",e)}}),[window.scrollY]),e?(0,Er.jsx)("div",{className:Fl,onClick:()=>{Wl()},children:(0,Er.jsx)("img",{className:Ml,src:"./assets/list/arrow.svg"})}):null};const zl=function(){const{type:e}=Q(),t=X(),n=e||"team";return(0,Er.jsxs)("aside",{className:_l,children:[(0,Er.jsx)(zi,{}),(0,Er.jsx)(vl,{value:n,options:Rl,onChange:n=>{n!==e&&t("/".concat(n,"person"===n?"/total/0":"/total"))}}),(0,Er.jsx)(Ll,{type:n}),(0,Er.jsx)(Bl,{})]})},Ul="ui_kit_wrapper",Hl="ui_kit_title",Gl="ui_kit_description",Vl="ui_kit_help",Kl="ui_kit_error";const $l=function(e){let{title:t,description:n,help:a,example:o,error:s,className:r,children:i}=e;const{t:l}=zt();return(0,Er.jsxs)("div",{className:"".concat(Ul," ").concat(r||""),title:l(a||""),children:[t&&(0,Er.jsx)("h6",{className:Hl,children:l(t)}),n&&(0,Er.jsx)("p",{className:Gl,children:l(n)}),i,a&&(0,Er.jsx)("p",{className:Vl,children:l(o||"")}),s&&(0,Er.jsx)("p",{className:Kl,children:s})]})},ql="ui_kit_common",Yl="ui_kit_select",Zl="ui_kit_select_with_buttons_wrapper",Jl="ui_kit_select_with_buttons_left",Xl="ui_kit_select_with_buttons_right";const Ql=function(e){let{title:t,description:n,help:a,error:o,className:s,value:r,options:i,onChange:l}=e;const c=(i||[]).map((e=>"object"!==typeof e?{id:e,title:e}:e)).map(((e,t)=>{var n,a,o;return(0,Er.jsx)("option",{value:null!==(n=null===e||void 0===e?void 0:e.id)&&void 0!==n?n:null,children:null!==(a=null!==(o=null===e||void 0===e?void 0:e.title)&&void 0!==o?o:null===e||void 0===e?void 0:e.id)&&void 0!==a?a:""},"".concat(null===e||void 0===e?void 0:e.id,"_").concat(t))}));return(0,Er.jsx)($l,{title:t,description:n,help:a,error:o,className:s,children:(0,Er.jsx)("select",{value:r,className:"".concat(ql," ").concat(Yl," ").concat(s||""),onChange:e=>{const t=e.target.value,n="null"!==t?parseInt(t,10)||0:null;l&&l(n,t)},children:c})})},ec={buttons_header:"buttons_header",buttons_footer:"buttons_footer",user:"user",user_title:"user_title",user_footer:"user_footer",salary:"salary",salary_title:"salary_title",salary_icons:"salary_icons",salary_icons_item:"salary_icons_item",salary_footer:"salary_footer"},tc=un((()=>xl.isEdited?(0,Er.jsxs)("div",{className:ec.buttons_header,children:[(0,Er.jsx)(Or,{mode:"second",onClick:()=>{xl.setInitState(xl.initState)},children:_e.Z.get("page.settings.form.cancel")}),(0,Er.jsx)(Or,{onClick:()=>{xl.save(xl.state)},children:_e.Z.get("page.settings.form.save")})]}):null)),nc={header:"header",header_title:"header_title",header_print:"header_print",header_lang:"header_lang",header_setting:"header_setting",header_with_tab:"header_with_tab"};const ac=function(){const{t:e}=zt(),{type:t,page:n}=Q(),a=e(t&&n?"sidebar.".concat(t,".").concat(n):"sidebar.team.total");return(0,Er.jsx)("h2",{className:nc.header_title,children:a})},oc="header_filters",sc="header_filters_input",rc="header_filters_fast",ic="header_filters_fast_button";const lc=function(e){let{title:t,type:n}=e;const{t:a}=zt();return(0,Er.jsx)("button",{className:ic,onClick:()=>{hr.setFilterByDateType(n),kr.updateStatistic()},children:a(t)})},cc=un((e=>{var t;let{type:n,placeholder:a}=e;return(0,Er.jsx)("input",{type:"date",placeholder:a||"",value:null!==(t=hr[n])&&void 0!==t?t:"",className:sc,onChange:e=>{hr.updateProperty(n,e.target.value),kr.updateStatistic()}})})),mc=cc;const dc=function(){return(0,Er.jsxs)("div",{className:oc,children:[(0,Er.jsx)(mc,{type:"from",placeholder:"\u0441"})," \u2014 ",(0,Er.jsx)(mc,{type:"to",placeholder:"\u043f\u043e"}),(0,Er.jsxs)("div",{className:rc,children:[(0,Er.jsx)(lc,{title:"sidebar.filters.all",type:"all"}),(0,Er.jsx)(lc,{title:"sidebar.filters.year",type:"year"}),(0,Er.jsx)(lc,{title:"sidebar.filters.halfYear",type:"halfYear"}),(0,Er.jsx)(lc,{title:"sidebar.filters.month",type:"month"}),(0,Er.jsx)(lc,{title:"sidebar.filters.week",type:"week"})]})]})};const pc=new class{constructor(){this.isOpen=!1,this.navigate=null,this.prevUrl="",this.processing=!1,(0,Vt.rC)(this,{isOpen:Vt.LO,processing:Vt.LO,open:Vt.aD,close:Vt.aD,printPage:Vt.aD,printSection:Vt.aD,printAllPages:Vt.aD,triggerPrint:Vt.aD,endPrint:Vt.aD})}open(e,t){this.isOpen=!0,this.navigate=e,this.prevUrl=t}close(){this.isOpen=!1,this.navigate=null,this.prevUrl=""}printPage(){this.triggerPrint()}printSection(){let e=this.prevUrl.split("/");e[2]="print",e=e.join("/"),this.navigate(e),this.triggerPrint()}printAllPages(){this.navigate("/print"),this.triggerPrint()}triggerPrint(){this.isOpen=!1,this.processing=!0,setTimeout((()=>{window.print()}),500)}endPrint(){this.processing=!1,this.prevUrl&&this.navigate(this.prevUrl),this.navigate=null,this.prevUrl=""}},uc=un((()=>{const{t:e,i18n:t}=zt(),n=X(),a=J();return(0,Er.jsxs)("header",{className:nc.header,children:[(0,Er.jsx)(ac,{}),xl.isEdited?(0,Er.jsx)(tc,{}):(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(dc,{}),(0,Er.jsx)(Ql,{className:nc.header_lang,value:_e.Z.language,options:[{id:"ru",title:"RU"},{id:"en",title:"EN"},{id:"zh",title:"ZH"},{id:"es",title:"ES"},{id:"fr",title:"FR"},{id:"pt",title:"PT"},{id:"de",title:"DE"},{id:"ja",title:"JA"},{id:"ko",title:"KO"}],onChange:(e,n)=>{_e.Z.language=n,t.changeLanguage(n),n===Gt?localStorage.removeItem("language"):localStorage.setItem("language",n)}}),(0,Er.jsx)("img",{title:e("sidebar.buttons.print"),className:nc.header_print,src:"./assets/menu/print.svg",onClick:()=>{pc.open(n,a.pathname)}}),(0,Er.jsx)("img",{title:e("sidebar.buttons.settings"),className:nc.header_setting,src:"./assets/menu/setting.svg",onClick:()=>{n("/settings")}})]})]})})),hc=uc,fc="ui_kit_tabs",gc="ui_kit_tabs_item",yc="ui_kit_tabs_item_selected",vc=t.forwardRef(((e,t)=>{let{value:n,options:a,onChange:o}=e;const{t:s}=zt(),r=n||0===n||!1===n,i=(a||[]).map(((e,a)=>{var i,l;const c="object"!==typeof e?{id:e,title:e}:e,m=r&&n===(null===c||void 0===c?void 0:c.id),d=null!==(i=null!==(l=s(null===c||void 0===c?void 0:c.title))&&void 0!==l?l:null===c||void 0===c?void 0:c.id)&&void 0!==i?i:"";return(0,Er.jsx)("button",{className:m?"".concat(gc," ").concat(yc):gc,onClick:e=>{o(c);const n=null===e||void 0===e?void 0:e.target,a=null===t||void 0===t?void 0:t.current,s=((null===a||void 0===a?void 0:a.offsetWidth)-(null===n||void 0===n?void 0:n.offsetWidth))/2;a.scrollLeft=(null===n||void 0===n?void 0:n.offsetLeft)-s},children:d},"".concat(null===c||void 0===c?void 0:c.id,"_").concat(a))}));return(0,Er.jsx)("div",{ref:t,className:"".concat(fc," scroll_x"),children:i})}));vc.displayName="UiKitTabs";const bc=vc;const wc=function(){const e=(0,t.useRef)(),n=X(),{type:a,page:o,userId:s}=Q(),r=("team"===a?Pl:Il).filter((e=>null===e||void 0===e?void 0:e.title));return(0,t.useEffect)((()=>{var t;null===e||void 0===e||null===(t=e.current)||void 0===t||t.scrollTo(0,0)}),[a]),(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)("header",{className:nc.header_with_tab,children:(0,Er.jsx)(bc,{ref:e,value:o,options:r,onChange:e=>{const t="person"===a?"".concat(e.link).concat(s):e.link;n(t)}})}),(0,Er.jsx)("div",{className:nc.light_header_gap})]})},kc="footer",xc="footer_hidden",_c="footer_wrapper",Tc="footer_gap",Sc="footer_button",Cc="footer_button_selected",Ec="footer_button_text",jc="footer_button_icon";const Ac=function(e){let{title:t,icon:n,isSelected:a,onClick:o}=e;return(0,Er.jsxs)("figure",{className:"".concat(Sc," ").concat(a?Cc:""),onClick:o,children:[(0,Er.jsx)("div",{className:jc,style:{backgroundImage:"url(".concat(n,")")}}),(0,Er.jsx)("figcaption",{className:Ec,children:t})]})};const Nc=function(){const e=X(),{type:n,page:a}=Q(),[o,s]=(0,t.useState)(!0),{t:r}=zt();(0,t.useEffect)((()=>function(e,t){let n=window.scrollY,a=e;function o(){const e=n>window.scrollY||window.scrollY<150;n=window.scrollY,e!==a&&(a=e,t(e))}return document.addEventListener("scroll",o),()=>{document.removeEventListener("scroll",o)}}(o,s)),[]);const i=function(e){return[{id:"team",title:"sidebar.switch.team",icon:"./assets/switch/team.svg",onClick(){e("/team/total")}},{id:"person",title:"sidebar.switch.person",icon:"./assets/switch/person.svg",onClick(){e("/person/total/0")}},{id:"print",title:"sidebar.buttons.share",icon:"./assets/menu/share.svg",onClick(){navigator.share({title:_e.Z.get("common.title"),text:"",url:window.location.href})}},{id:"settings",title:"sidebar.buttons.logout",icon:"./assets/menu/logout.svg",onClick(){$i.open({title:"\u0412\u044b \u0443\u0432\u0435\u0440\u0435\u043d\u044b \u0447\u0442\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u044b\u0439\u0442\u0438?"}).then((()=>{kr.asyncSetCommits([]),e("/")}))}}].filter((e=>e))}(e),l=i.find((e=>a===e.id))||i.find((e=>n===e.id)),c=i.map((e=>(0,Er.jsx)(Ac,{icon:e.icon,title:r(e.title),isSelected:(null===l||void 0===l?void 0:l.id)===e.id,onClick:e.onClick},e.id)));return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)("div",{className:Tc}),(0,Er.jsx)("div",{className:"".concat(kc," ").concat(o?"":xc),children:(0,Er.jsx)("nav",{className:_c,children:c})})]})},Dc="page_wrapper_print_icon",Oc=un((()=>{const{t:e}=zt();return pc.isOpen?(0,Er.jsxs)(ti,{onClose:()=>{pc.close()},children:[(0,Er.jsx)(Xr,{children:(0,Er.jsx)("div",{style:{textAlign:"center"},children:e("page.print.modal.title")})}),(0,Er.jsxs)(Qr,{children:[(0,Er.jsx)("img",{src:"./assets/cards/print.png",className:Dc}),(0,Er.jsx)(Or,{mode:["primary","full_size"],onClick:()=>{pc.printPage()},children:e("page.print.modal.page")}),(0,Er.jsx)(Or,{mode:["primary","full_size"],onClick:()=>{pc.printSection()},children:e("page.print.modal.type")}),(0,Er.jsx)(Or,{mode:["primary","full_size"],onClick:()=>{pc.printAllPages()},children:e("page.print.modal.all")}),(0,Er.jsx)(Or,{mode:["second","full_size"],onClick:()=>{pc.close()},children:e("page.print.modal.cancel")})]})]}):null})),Rc=Oc,Pc="page_wrapper",Ic="page_wrapper_header",Lc="page_wrapper_main",Fc="page_wrapper_main_mobile",Mc="page_wrapper_main_fullscreen";function Wc(e){let{children:t}=e;return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsxs)("div",{className:Pc,children:[(0,Er.jsx)("div",{className:Fc,children:t}),(0,Er.jsx)(wc,{}),(0,Er.jsx)(Rc,{}),(0,Er.jsx)(ml,{}),(0,Er.jsx)(Nc,{})]}),(0,Er.jsx)("div",{className:Ic})]})}const Bc=un((e=>{let{children:t}=e;const{type:n,page:a}=Q(),o="team"===n&&"building"===a?{padding:0}:{};return dl.isOpen?(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)("div",{className:Mc,children:t}),(0,Er.jsx)(ml,{})]}):(0,Er.jsxs)("div",{className:Pc,children:[(0,Er.jsx)(zl,{}),(0,Er.jsx)(hc,{}),(0,Er.jsx)("div",{className:Lc,style:o,children:t}),(0,Er.jsx)(Rc,{}),(0,Er.jsx)(ml,{})]})}));function zc(e){let{children:t}=e;return Pr?(0,Er.jsx)(Wc,{children:t}):(0,Er.jsx)(Bc,{children:t})}zc.defaultProps={selectedMenuItem:""};const Uc=zc;const Hc="slider_exit_left",Gc="slider_exit_right",Vc="slider_entrance_left",Kc="slider_entrance_right";function $c(e){let{getViewById:n}=e;const{type:a,page:o}=Q(),s=o||"total",[r,i]=(0,t.useState)(s),[l,c]=(0,t.useState)([]),m="team"===a?Pl:Il;if((0,t.useEffect)((()=>{!function(e,t,n,a,o){const s=n.map((e=>e.id)).indexOf(e),r=n.map((e=>e.id)).indexOf(t)<s?[Hc,Kc]:[Gc,Vc],[i,l]=r;o([t,i]),setTimeout((()=>{o([e||"",l])}),250),setTimeout((()=>{o([]),a(e||"")}),500),setTimeout((()=>{document.body.scrollIntoView()}),600)}(o||"",r,m,i,c)}),[o]),!l.length)return n(o);const[d,p]=l;return(0,Er.jsx)("div",{className:p,children:n(d)})}function qc(e){let{getViewById:t}=e;const{page:n}=Q();return t(n||"total")}function Yc(e){let{getViewById:t}=e;return Pr?(0,Er.jsx)($c,{getViewById:t}):(0,Er.jsx)(qc,{getViewById:t})}const Zc="main_wrapper",Jc="main_wrapper_white",Xc="main_wrapper_icons",Qc="main_wrapper_item";const em=function(e){let{children:t,className:n,template:a}=e;const o=a?"".concat(Zc," ").concat(Jc):"".concat(Zc),s="table"===a?{paddingTop:0}:{};return(0,Er.jsx)("div",{className:"".concat(o," ").concat(n||""),style:s,children:t})};function tm(e){let{className:t,onRemove:n,children:a}=e;const{t:o}=zt();return(0,Er.jsxs)("div",{className:"".concat(Jc," ").concat(t||""),children:[(0,Er.jsx)("div",{className:Xc,children:n&&(0,Er.jsx)(Or,{mode:"second",onClick:()=>n(),children:o("uiKit.page.remove")})}),a]})}tm.defaultProps={className:void 0};const nm=tm;function am(e){let{template:t,children:n}=e;return t?(0,Er.jsx)(nm,{className:Qc,children:n}):(0,Er.jsx)("div",{className:Qc,children:n})}am.defaultProps={template:void 0};const om=am,sm="nothing_found",rm="nothing_found_wrapper",im="nothing_found_icon",lm="nothing_found_title",cm="nothing_found_text",mm="nothing_found_console",dm="nothing_found_link";const pm=function(){const{t:e}=zt();return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)("p",{className:lm,children:e("uiKit.nothingFound.common.title")}),(0,Er.jsxs)("p",{className:cm,children:['\u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u0434\u0430\u043d\u043d\u044b\u0445, \u0435\u0441\u043b\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u044b \u0431\u0443\u0434\u0443\u0442 \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d\u044b \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 "',(0,Er.jsx)("a",{href:"https://www.conventionalcommits.org/en/v1.0.0/",target:"_blank",rel:"noreferrer",className:dm,children:"Git commit message convention"}),'". \u0428\u0430\u0431\u043b\u043e\u043d:']}),(0,Er.jsx)("p",{className:mm,children:e("uiKit.nothingFound.common.console")}),(0,Er.jsx)("p",{className:cm,children:e("uiKit.nothingFound.common.example")}),(0,Er.jsxs)("p",{className:mm,children:["JIRA-0001 feat(profile): add user avatar",(0,Er.jsx)("br",{}),"JIRA-0002 fix(profile): changed link for user web site",(0,Er.jsx)("br",{}),"JIRA-0003 test(profile): added unit tests for edit phone"]})]})};function um(e){let{icon:t,message:n,children:a,className:o}=e;const{t:s}=zt(),r=s(n||"");return(0,Er.jsx)("div",{className:"".concat(rm," ").concat(o),children:(0,Er.jsxs)("div",{className:sm,children:[(0,Er.jsx)("img",{src:t||"./assets/cards/nothing_found.png",className:im}),!a&&n&&(0,Er.jsx)("p",{className:lm,children:r}),!a&&!n&&(0,Er.jsx)(pm,{}),a]})})}um.defaultProps={children:null,icon:null,className:"",message:"",stylesConfig:{iconWidth:"483px",iconHeight:"332px",margin:"0"}};const hm=um,fm="loading";function gm(e){let{height:t}=e;return(0,Er.jsx)("div",{className:fm,style:{minHeight:t?"".concat(t,"px"):"auto"},children:"..."})}gm.defaultProps={height:0};const ym=gm,vm={INIT:"INIT",LOADING:"LOADING",LOADING_MORE:"LOADING_MORE",LOADING_ALL:"LOADING_ALL",LOADING_PAGE:"LOADING_PAGE",ERROR:"ERROR",SUCCESS:"SUCCESS"};class bm{constructor(e){let{loader:t,callback:n,defaultPageNumber:a,defaultPageSize:o,watch:s}=e;this.state=vm.INIT,this.watchedValue="",this.defaultPageNumber=0,this.defaultPageSize=10,this.pageNumber=0,this.pageSize=10,this.sort=[],this.loader=()=>{},this.callback=()=>{},this.response=null,this.loader=t,this.callback=n,this.defaultPageNumber=a||0,this.defaultPageSize=o||10,this.watchedValue=s||"",(0,Vt.rC)(this,{state:Vt.LO,watchedValue:Vt.LO,sort:Vt.LO,fetchData:Vt.aD,successCallback:Vt.aD,errorCallback:Vt.aD,loadMore:Vt.aD,showAll:Vt.aD,updateSort:Vt.aD,updateWatchedValue:Vt.aD,canSendRequest:Vt.Fl})}newSearch(){return this.fetchData(vm.LOADING,{pageNumber:this.defaultPageNumber,pageSize:this.defaultPageSize})}updateSort(e){return this.sort=e||[],this.fetchData(vm.LOADING,{pageNumber:this.pageNumber,pageSize:this.pageSize})}goToPage(e,t){return this.fetchData(vm.LOADING_PAGE,{pageNumber:e,pageSize:t})}loadMore(){const e=this.pageNumber+1;return this.fetchData(vm.LOADING_MORE,{pageNumber:e,pageSize:this.pageSize})}showAll(){var e;const t=(null===(e=this.response)||void 0===e?void 0:e.totalElements)||100;return this.fetchData(vm.LOADING_ALL,{pageNumber:0,pageSize:t})}get canSendRequest(){return![vm.LOADING,vm.LOADING_MORE,vm.LOADING_ALL,vm.LOADING_PAGE,vm.ERROR].includes(this.state)}async fetchData(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(this.canSendRequest){this.state=e;try{const{pageNumber:e,pageSize:n}=t;this.callback&&this.callback();const a=await this.loader({page:e,size:n},this.sort);this.successCallback(a)}catch(n){const e=await n;this.errorCallback(e)}}}successCallback(e){var t,n,a,o;this.setResponse(e),this.pageSize=(null===(t=this.response)||void 0===t?void 0:t.size)||(null===(n=this.response)||void 0===n?void 0:n.pageSize)||10,this.pageNumber=(null===(a=this.response)||void 0===a?void 0:a.number)||(null===(o=this.response)||void 0===o?void 0:o.pageNumber)||0,this.callback&&this.callback(this.response),this.state=vm.SUCCESS}setResponse(e){this.state===vm.LOADING_MORE?this.response={...e,content:[...this.response.content,...e.content]}:this.response=e}errorCallback(e){this.state===vm.LOADING&&(this.response=e),this.state=vm.ERROR}updateWatchedValue(e){this.watchedValue=e,this.state=vm.INIT,this.newSearch()}}function wm(e){let{response:t}=e;return(0,Er.jsx)("div",{className:"data-loader-error",children:(0,Er.jsx)("div",{title:"\u0417\u0430\u043f\u0440\u043e\u0441 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d",children:(0,Er.jsx)("div",{children:t})})})}wm.defaultProps={response:null};const km=wm;function xm(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return"response"in(null===e||void 0===e?void 0:e.props)&&"state"in(null===e||void 0===e?void 0:e.props)&&"store"in(null===e||void 0===e?void 0:e.props)||"parameterInUrl"in(null===e||void 0===e?void 0:e.props)||"pagination"in(null===e||void 0===e?void 0:e.props)}const _m=un((e=>{let{watch:n,children:a,loader:o,callback:s,to:r,from:i,height:l,id:c,className:m,parameterInUrl:d,pagination:p}=e;const u=new URLSearchParams(J().search),[h,f]=(0,t.useState)(),g=null!==d&&void 0!==d&&d.includes("pageNumber")&&parseInt(u.get("pageNumber")||"",10)||0,y=null!==d&&void 0!==d&&d.includes("pageSize")&&parseInt(u.get("pageSize")||"",10)||10;(0,t.useEffect)((()=>{if(h instanceof bm){if(h.response)if(h.loader=o,h.callback=s,(n||h.watchedValue)&&h.watchedValue!==n)h.updateWatchedValue(n);else if(!d||h.pageNumber===g&&h.pageSize===y){if(p&&(h.pageNumber!==(null===p||void 0===p?void 0:p.page)||h.pageSize!==(null===p||void 0===p?void 0:p.size))){const e=(null===p||void 0===p?void 0:p.page)||0,t=(null===p||void 0===p?void 0:p.size)||10;h.goToPage(e,t)}}else h.goToPage(g,y)}else{const e=new bm({loader:o,callback:s,defaultPageNumber:g||(null===p||void 0===p?void 0:p.page),defaultPageSize:y||(null===p||void 0===p?void 0:p.size),watch:n});e.newSearch(),f(e)}}));const{state:v,response:b}=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=vm.INIT,a=null;return e instanceof bm&&(n=e.state,[vm.SUCCESS,vm.LOADING_MORE,vm.LOADING_ALL].includes(n)&&(a=t?e.response[t]:e.response)),{state:n,response:a}}(h,i);if(v===vm.LOADING||v===vm.LOADING_PAGE)return(0,Er.jsx)(ym,{height:l||80});if(v===vm.ERROR)return(0,Er.jsx)(km,{response:null===h||void 0===h?void 0:h.response});const w=t.Children.map(a,(e=>t.isValidElement(e)?t.cloneElement(e,function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"",s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"",r=arguments.length>6&&void 0!==arguments[6]?arguments[6]:[""],i=arguments.length>7&&void 0!==arguments[7]?arguments[7]:{page:0,size:10};return xm(e)?{response:null===t||void 0===t?void 0:t.response,to:o,from:s,state:n,store:t,parameterInUrl:r,pagination:i}:{[o]:a,updateSort:e=>null===t||void 0===t?void 0:t.updateSort(e)}}(e,h,v,b,r,i,d,p)):e)),k=null===w||void 0===w?void 0:w.find((e=>e.type===hm));var x;if(v===vm.SUCCESS&&k&&(0===Object.keys(b||{}).length||0===(null===b||void 0===b||null===(x=b.content)||void 0===x?void 0:x.length)))return(0,Er.jsx)(Er.Fragment,{children:k});const _=null===w||void 0===w?void 0:w.filter((e=>e.type!==hm));return m?(0,Er.jsx)("div",{id:c||"",className:m||"",children:_}):(0,Er.jsx)(Er.Fragment,{children:_})})),Tm=_m;function Sm(e){let{title:t,description:n,help:a,error:o,className:s,value:r,placeholder:i,onChange:l}=e;return(0,Er.jsx)($l,{title:t,description:n,help:a,error:o,className:s,children:(0,Er.jsx)("input",{type:"text",value:r,placeholder:i,className:"".concat(s," ").concat(ql," }"),onChange:e=>{l&&l(e.target.value)}})})}Sm.defaultProps={placeholder:"\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435"};const Cm=Sm,Em="paginator",jm="paginator_text",Am="paginator_page_number";function Nm(e){let{response:t,state:n,pagination:a,store:o}=e;const{t:s}=zt();if(!t)return null;const r=(null===a||void 0===a?void 0:a.size)||10,{number:i,size:l,totalElements:c}=t,m=Math.ceil(c/l);if(n===vm.INIT||i>m||1===m||!c)return null;const d=!(n===vm.INIT||i>=m-1);return[vm.LOADING_ALL,vm.LOADING_MORE].includes(n||"")?(0,Er.jsx)(ym,{height:40}):n===vm.ERROR?(0,Er.jsx)(km,{response:null===o||void 0===o?void 0:o.response}):(0,Er.jsxs)("nav",{className:Em,children:[(0,Er.jsx)("p",{className:jm,children:s("uiKit.dataLoader.page")}),(0,Er.jsx)(Or,{mode:"second",disabled:!i,onClick:()=>{o&&o.goToPage(i-1,l||r)},children:"\xab"}),(0,Er.jsx)(Cm,{className:Am,value:i+1,onChange:e=>{let t=parseInt(e||"1",10);t<1&&(t=1),t>=m&&(t=m),o&&o.goToPage(t-1,l||r)}}),(0,Er.jsx)(Or,{mode:"second",disabled:i===m-1,onClick:()=>{o&&o.goToPage(i+1,l||r)},children:"\xbb"}),(0,Er.jsx)("p",{className:jm,children:s("uiKit.dataLoader.from")}),(0,Er.jsx)(Or,{mode:"second",onClick:()=>{o&&o.goToPage(m-1,l||r)},children:m}),(0,Er.jsx)("p",{className:jm,children:s("uiKit.dataLoader.size")}),(0,Er.jsx)(Cm,{value:l,className:Am,onChange:e=>{let t=parseInt(e||"10",10);t<1&&(t=1),t>c&&(t=c),o&&o.goToPage(0,t)}}),(0,Er.jsx)("p",{className:jm,children:s("uiKit.dataLoader.rows")}),d&&(0,Er.jsx)(Or,{mode:"slim",onClick:()=>{o&&o.showAll()},children:s("uiKit.dataLoader.all")})]})}Nm.defaultProps={response:null,state:vm.INIT,store:null,pagination:{}};const Dm=Nm;function Om(e){let{content:t,pagination:n,query:a,mode:o,sort:s}=e;const r=t||[],i=a?r.filter((e=>e.name.toLowerCase().includes(null===a||void 0===a?void 0:a.toLowerCase()))):r,l=s?function(e,t){function n(e,t,n){return(e[n]||"").localeCompare(t[n]||"")}function a(e,t,n){return(e[n]||0)-(t[n]||0)}function o(e,t,n){return(e[n]||0).length-(t[n]||0).length}const s=null===e||void 0===e?void 0:e[0],r=t.map((e=>"string"===typeof s[e.property]?n:Array.isArray(s[e.property])?o:a)),i=t.length;return[...e].sort(((e,n)=>{for(let a=0;a<i;a++){const o=t[a],s=r[a](e,n,o.property);if(s)return s*o.direction}return 0}))}(i,s||[]):i;if(!n||"print"===o)return Promise.resolve({size:(null===l||void 0===l?void 0:l.length)||0,number:0,totalPages:1,totalElements:(null===l||void 0===l?void 0:l.length)||0,sort:s||[],content:l||[]});const c=n.size||10,m=n.page||0,d=c*m,p=d+c,u=l.length,h={size:c,number:m,totalPages:Math.ceil(u/c),totalElements:u,sort:s||[],content:l.slice(d,p)||[]};return Promise.resolve(h)}const Rm={title:"title"};function Pm(e){let{title:t,addPadding:n,className:a}=e;const{t:o}=zt();return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)("a",{name:t}),(0,Er.jsx)("h3",{className:"".concat(Rm.title," ").concat(n?Rm.title_padding:""," ").concat(a||""),children:o(t||"")})]})}Pm.defaultProps={addPadding:!1,className:""};const Im=Pm,Lm="banner",Fm="banner_icon";const Mm=function(e){let{className:t}=e;const n=si.getBanner();if(!n)return null;const{ref:a,link:o,banner:s,text:r,textIcon:i,color:l,backgroundColor:c}=n,m={title:r,to:o||"",target:"_blank",className:t};if(s)return(0,Er.jsx)(we,{...m,children:(0,Er.jsx)("div",{className:Lm,style:{backgroundImage:"url(".concat(s,")")}})});const d=(a||"").split("_").splice(1).join(" ").toUpperCase(),p=c||"linear-gradient(135deg, rgba(64,117,252,1) 0%, rgba(172,179,246,1) 100%)";return(0,Er.jsx)(we,{...m,children:(0,Er.jsxs)("div",{title:r,className:Lm,style:{color:l,background:p},children:[i?(0,Er.jsx)("img",{src:i,className:Fm}):null,r||d||""]})})},Wm="recommendations_card",Bm="recommendations_card_for_print",zm="recommendations_card_title",Um="recommendations_card_icon",Hm="recommendations_card_button",Gm="recommendations_card_info",Vm="recommendations_card_fact",Km="recommendations_card_warning",$m="recommendations_card_error",qm="recommendations_card_banner";function Ym(e){var t;const n=null===e||void 0===e?void 0:e.type;return null!==(t={[ta.INFO]:"./assets/recommendations/info.svg",[ta.FACT]:"./assets/recommendations/fact.svg",[ta.WARNING]:"./assets/recommendations/warning.svg",[ta.ALERT]:"./assets/recommendations/alert.svg"}[n||ta.INFO])&&void 0!==t?t:"./assets/recommendations/info.svg"}const Zm=function(e){var t;let{recommendation:n,onClick:a}=e;const{t:o}=zt();if(!n)return null;const s=function(e){var t;const n=null===e||void 0===e?void 0:e.type;return null!==(t={[ta.INFO]:Gm,[ta.FACT]:Vm,[ta.WARNING]:Km,[ta.ALERT]:$m}[n||ta.INFO])&&void 0!==t?t:Vm}(n),r=Yi(n),i=null===n||void 0===n||null===(t=n.arguments)||void 0===t?void 0:t.title,l=Zi(n).split("\n").shift();return(0,Er.jsxs)("div",{className:"".concat(Wm," ").concat(s),onClick:Pr?a:void 0,children:[(0,Er.jsxs)("h5",{className:zm,children:[(0,Er.jsx)("img",{className:Um,src:Ym(n)}),_e.Z.get(r,i)]}),(0,Er.jsx)(ji,{style:{color:"#12131B"},text:l||""}),!Pr&&(0,Er.jsx)(Or,{mode:"link",className:Hm,onClick:a,children:o("recommendations.modal.open")})]})};const Jm=function(e){var t;let{recommendation:n}=e;if(!n)return null;const a=function(e){var t;const n=null===e||void 0===e?void 0:e.type;return null!==(t={[ta.INFO]:Gm,[ta.FACT]:Vm,[ta.WARNING]:Km,[ta.ALERT]:$m}[n||ta.INFO])&&void 0!==t?t:Vm}(n),o=Yi(n),s=null===n||void 0===n||null===(t=n.arguments)||void 0===t?void 0:t.title,r=Zi(n);return(0,Er.jsxs)("div",{className:"".concat(Wm," ").concat(Bm," ").concat(a),children:[(0,Er.jsxs)("h5",{className:zm,children:[(0,Er.jsx)("span",{className:Um}),_e.Z.get(o,s)]}),(0,Er.jsx)(ji,{style:{color:"#12131B"},text:r})]})},Xm="recommendations_container",Qm="recommendations_container_for_print";function ed(e){let{recommendations:t,mode:n}=e,a=(t||[]).filter((e=>e)).map((e=>"print"===n?(0,Er.jsx)(Jm,{recommendation:e},e.description):(0,Er.jsx)(Zm,{recommendation:e,onClick:()=>{Ji.open(e)}},e.description)));if(!a.length)return null;"print"!==n&&(a=function(e){const t="".concat(Wm," ").concat(qm),n=(0,Er.jsx)(Mm,{className:t},"banner"),a=Math.floor(Math.random()*e.length),o=e.splice(a);return[...e,n,...o]}(a));const o=(0,_e.t)("recommendations.title"),s="print"===n?"".concat(Xm," scroll_x ").concat(Qm):"".concat(Xm," scroll_x");return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:o}),(0,Er.jsx)("div",{className:s,onTouchStart:e=>e.stopPropagation(),onMouseDown:e=>e.stopPropagation(),children:a})]})}ed.defaultProps={mode:void 0};const td=ed;class nd{constructor(e){this.refColorByTitle={};const t=["#7F9BE0","#E9A5A1","#C2ECC1","#B6BAE9","#A18BE0","#FFC178","#75CCE0","#B2E069","#EC95B6","#E2DA84","#A7C0FF","#D7D4B1","#E0BA96","#E0BE69","#C0D79C","#B6C5C9","#9E98AD","#AACFD8","#BAB2D0","#DCBAC7"];this.refColorByTitle=Object.fromEntries(e.map(((e,n)=>[e,{first:t[n],second:"#FFFFFF"}])))}get(e){return this.refColorByTitle[e]||nd.DEFAULT}}function ad(e){let{order:t,suffix:n,other:a,max:o,limit:s,formatter:r}=e;return{max:o instanceof Array?Math.max(...o):o||100,order:t||[],suffix:null!==n&&void 0!==n?n:"commits",otherTitle:null!==a&&void 0!==a?a:"...",color:null!==t&&void 0!==t&&t.length?new nd(t):null,limit:s||15,formatter:r||(e=>e)}}function od(e,t,n){let a=0;const o=100-t,s=[];return e.forEach((e=>{a+=e.value,e.title&&s.push(e.title)})),{title:n.otherTitle,value:a,width:o,description:s.join(", ")}}function sd(e,t){const n=Object.entries(e).sort(((e,n)=>t.order.indexOf(e[0])-t.order.indexOf(n[0]))),a=n.reduce(((e,t)=>e+t[1]),0),o=[],s=[],r=[];let i=0;return n.forEach((e=>{let[n,l]=e;const c=function(e,t){return Math.round(e*(100/t))}(l||0,a),m={title:n,value:l,width:c};o.push(m),c>=t.limit?(s.push(m),i+=c):r.push(m)})),0===r.length?s:1===r.length?o:[...s,od(r,i,t)].filter((e=>e.width>1))}function rd(e,t,n,a,o,s){const r=Math.abs(o-s)>180?1:0,i=(n,a)=>function(e,t,n,a){const o=a*Math.PI/180;return[e+n*Math.cos(o),t+n*Math.sin(o)]}(e,t,n,a).map((e=>e.toPrecision(5))).join(",");return["M".concat(i(n,o)),"A".concat(n,",").concat(n,",0,").concat(r,",1,").concat(i(n,s)),"L".concat(i(a,s)),"A".concat(a,",").concat(a,",0,").concat(r,",0,").concat(i(a,o)),"Z"].join("")}nd.DEFAULT="#D0D1D2";const id="pie_svg",ld="pie_svg_sector";function cd(e){let{options:t,parts:n,center:a}=e;const{t:o}=zt(),s=(a||72)/100*49,r=t.suffix?o(t.suffix):"";let i=0;const l=n.map((e=>{const n=t.color.get(e.title).first,a=360*e.width/100,l=360===a?359.9:a,c=Math.min(i+l,360),m=rd(50,50,s,50,i+-90,c+-90);i+=a;const d=e.value&&r?" (".concat(e.value||""," ").concat(r,")"):"";return(0,Er.jsx)("path",{style:{fill:n},d:m,className:ld,children:(0,Er.jsx)("title",{children:"".concat(o(e.title)).concat(d)})},e.title)}));return(0,Er.jsx)("svg",{viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid meet",xmlns:"http://www.w3.org/2000/svg",className:id,children:l})}cd.defaultProps={className:""};const md=cd,dd="pie_chart",pd="pie_chart_data",ud="pie_chart_icon",hd="pie_chart_legend",fd="pie_chart_line",gd="pie_chart_color",yd="pie_chart_percent",vd="pie_chart_text";const bd=function(e){let{parts:t,options:n}=e;const{t:a}=zt(),o=t.map((e=>(0,Er.jsxs)("p",{className:fd,children:[(0,Er.jsx)("span",{className:gd,style:{backgroundColor:n.color.get(e.title).first}}),(0,Er.jsx)("span",{className:yd,children:"".concat(e.width,"%")}),(0,Er.jsx)("span",{className:vd,children:a(e.title)})]},e.title)));return(0,Er.jsx)("div",{className:hd,children:o})};function wd(e){let{title:t,options:n,value:a,details:o,center:s,className:r}=e;if(0===a)return null;const i=o||function(e,t){return{a:e,b:t-e}}(a||100,n.max||100),l=sd(i,n),c=l.length>6?"flex-start":"center";return(0,Er.jsxs)("div",{className:"".concat(dd," ").concat(r||""),children:[(0,Er.jsx)(Im,{title:t||""}),(0,Er.jsxs)("div",{className:pd,style:{alignItems:c},children:[(0,Er.jsx)("div",{className:ud,children:(0,Er.jsx)(md,{parts:l,options:n,center:s})}),(0,Er.jsx)(bd,{parts:l,options:n})]})]})}wd.defaultProps={value:void 0,details:void 0,className:"",title:""};const kd=wd,xd={WORK:(0,_e.t)("page.team.author.type.work"),DISMISSED:(0,_e.t)("page.team.author.type.dismissed"),STAFF:(0,_e.t)("page.team.author.type.staff")},_d={HALF:(0,_e.t)("page.team.author.days.half"),ONE:(0,_e.t)("page.team.author.days.one"),HALF_ONE:(0,_e.t)("page.team.author.days.15"),TWO:(0,_e.t)("page.team.author.days.two"),MORE:(0,_e.t)("page.team.author.days.more")};const Td=un((()=>{const e=kr.dataGrip.author.statistic,[t,n]=function(e){return[ad({order:Object.values(xd),limit:1}),e.reduce(((e,t)=>(t.isStaff?pa(e,xd.STAFF):t.isDismissed?pa(e,xd.DISMISSED):pa(e,xd.WORK),e)),{})]}(e),[a,o]=function(e){return[ad({order:Object.values(_d),limit:1,suffix:"page.team.author.daysChart.item"}),e.reduce(((e,t)=>(t.daysAll<183?pa(e,_d.HALF):t.daysAll<365?pa(e,_d.ONE):t.daysAll<547?pa(e,_d.HALF_ONE):t.daysAll<730?pa(e,_d.TWO):pa(e,_d.MORE),e)),{})]}(e);return(0,Er.jsxs)(em,{children:[(0,Er.jsx)(om,{children:(0,Er.jsx)(kd,{title:"page.team.author.statusChart.title",options:t,details:n})}),(0,Er.jsx)(om,{children:(0,Er.jsx)(kd,{title:"page.team.author.daysChart.title",options:a,details:o})})]})})),Sd="ui_kit_tags",Cd="ui_kit_tags_item";function Ed(e){let{value:t}=e;return(0,Er.jsx)("div",{className:Cd,children:t})}Ed.displayName="UiKitTag";const jd=Ed;function Ad(e){let{value:t}=e;const n=(Array.isArray(t)?t:[t]).filter((e=>e));if(null===n||void 0===n||!n.length)return null;const a=n.map((e=>(0,Er.jsx)(jd,{value:e},e)));return null!==a&&void 0!==a&&a.length?(0,Er.jsx)("div",{className:Sd,children:a}):null}Ad.displayName="UiKitTags";const Nd=Ad,Dd="table_wrapper",Od="table",Rd="table_row",Pd="table_row_hide",Id="table_row_selected",Ld="table_sub_row",Fd="table_cell",Md="table_header_cell",Wd="table_fixed",Bd="table_cell_number",zd="table_cell_icon_open",Ud="table_cell_icon_close";function Hd(e,t,n,a){const o=[e];if(a&&o.push(a),t.className){const e="function"===typeof t.className?t.className(...n):t.className;o.push(e)}return t.isFixed&&o.push(Wd),o.join(" ")}const Gd="table_sort_up",Vd="table_sort_down";function Kd(e){let{columns:t,className:n,updateSort:a}=e;const{t:o}=zt();let s=0;const r=t.map(((e,r)=>{var i;s+=(null===(i=t[r-1])||void 0===i?void 0:i.width)||0;const l=Hd(Md,e,["header",r],n),c=o(e.title||"");return(0,Er.jsxs)("div",{className:l,style:{width:e.width,left:s},children:[(0,Er.jsx)("span",{title:c,onClick:()=>{e.isSortable&&a&&a([{property:"string"===typeof e.isSortable?e.isSortable:e.properties,direction:[1,-1][e.sortDirection||0]||0}])},children:c}),e.title&&-1===e.sortDirection&&(0,Er.jsx)("div",{className:Vd}),e.title&&1===e.sortDirection&&(0,Er.jsx)("div",{className:Gd})]},"".concat(e.title,"_").concat(r))}));return(0,Er.jsx)("div",{className:"".concat(Rd," ").concat(n),children:r})}Kd.defaultProps={className:"",updateSort:()=>{}};const $d=Kd;let qd;function Yd(e){var t,n;let{column:a,row:o,rowIndex:s,marginLeft:r,className:i}=e;const l=Hd(Fd,a,["body",o],i),c=a.isFixed?r:0,m=a.onClick?()=>{a.onClick&&a.onClick(o)}:void 0,d=a.properties?o[a.properties]:o,p=a.formatter?a.formatter(d,s):d,u="function"===typeof a.template?a.template(p,o):"".concat(null!==(t=a.prefixes)&&void 0!==t?t:"").concat(null!==p&&void 0!==p?p:"").concat(null!==(n=a.suffixes)&&void 0!==n?n:""),h="string"===typeof u&&u.length>20?u:null;return(0,Er.jsx)("div",{title:h,className:l,style:{left:c,width:a.width,cursor:m?"pointer":"auto"},onClick:m,children:u},a.title)}!function(e){e.STRING="STRING",e.NUMBER="NUMBER",e.SHORT_NUMBER="SHORT_NUMBER",e.DETAILS="DETAILS"}(qd||(qd={})),Yd.defaultPeops={className:""};const Zd=Yd;function Jd(e){let{column:t,row:n,className:a,rowConfig:o,marginLeft:s,updateRowsConfig:r}=e;const i=o||{id:1},l=null!==t&&void 0!==t&&t.isFixed?s:0,c=null!==i&&void 0!==i&&i.details?zd:Ud,m=Hd(Fd,t,["body",n],a),d=null===n||void 0===n?void 0:n[(null===t||void 0===t?void 0:t.properties)||""],p=(Array.isArray(d)||d instanceof Set?(null===d||void 0===d?void 0:d.length)||(null===d||void 0===d?void 0:d.size):!!d)||!(null!==t&&void 0!==t&&t.properties);return(0,Er.jsx)("div",{className:m,style:{left:l,width:t.width,cursor:"pointer"},onClick:()=>{p&&r&&r({...i,details:!(null!==i&&void 0!==i&&i.details)})},children:p&&(0,Er.jsx)("img",{className:c,src:"./assets/list/arrow.svg"})},t.title)}Jd.defaultPeops={className:""};const Xd=Jd;function Qd(e,t){return(null===e||void 0===e?void 0:e.id)||(null===e||void 0===e?void 0:e.uuid)||"".concat(null===e||void 0===e?void 0:e.title,"-").concat(t)}function ep(e){return{id:e,details:!1,disabled:!1}}const tp=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n={};return e.map(((e,a)=>{const o=Qd(e,a);n[o]=t[o]||ep(o)})),n};function np(e){var t;let{rows:n,disabledRow:a,columns:o,className:s,rowsConfig:r,updateRowsConfig:i}=e;const l=[],c=null===(t=o.find((e=>e.template===qd.DETAILS)))||void 0===t?void 0:t.formatter;return null===n||void 0===n||n.forEach(((e,t)=>{let n=0;const m=(r||{})[Qd(e,t)],d=o.map(((a,s)=>{var r;const l="".concat(a.title,"_").concat(s);return n+=(null===(r=o[s-1])||void 0===r?void 0:r.width)||0,a.template===qd.DETAILS?(0,Er.jsx)(Xd,{column:a,row:e,rowConfig:m,marginLeft:n,updateRowsConfig:i},l):(0,Er.jsx)(Zd,{column:a,row:e,rowIndex:t,marginLeft:n},l)})),p=[Rd,s];a&&a(e)&&p.push(Pd),null!==m&&void 0!==m&&m.details&&p.push(Id),l.push((0,Er.jsx)("div",{className:p.join(""),children:d},t)),null!==m&&void 0!==m&&m.details&&c&&l.push((0,Er.jsx)("div",{className:"".concat(Ld," ").concat(s),children:c(e)||null},"".concat(t,"-detail")))})),(0,Er.jsx)(Er.Fragment,{children:l})}np.defaultProps={className:""};const ap=np;const op=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:150,n=arguments.length>2?arguments[2]:void 0;const a=null===n||void 0===n?void 0:n.reduce(((e,t)=>(e[t.property]=t.direction,e)),{}),o=e.map((e=>{const n=e.minWidth?Math.max(e.minWidth,t):t;return{...e,sortDirection:"string"===typeof(null===e||void 0===e?void 0:e.isSortable)?a[(null===e||void 0===e?void 0:e.isSortable)||""]||0:a[(null===e||void 0===e?void 0:e.properties)||""]||0,width:e.userWidth||e.defaultWidth||n}})),s=Math.floor(o.length/2);return[...o.filter(((e,t)=>e.isFixed&&t<=s)),...o.filter((e=>!e.isFixed)),...o.filter(((e,t)=>e.isFixed&&t>s))]};function sp(e){return t.Children.map(e,(e=>{var n,a,o,s,r,i;if(!t.isValidElement(e))return null;const l=(null===e||void 0===e||null===(n=e.props)||void 0===n?void 0:n.template)||qd.STRING,c=(null===e||void 0===e||null===(a=e.props)||void 0===a?void 0:a.className)||{[qd.STRING]:"",[qd.NUMBER]:Bd,[qd.SHORT_NUMBER]:Bd}[l||""]||"",m=(null===e||void 0===e||null===(o=e.props)||void 0===o?void 0:o.width)||{[qd.SHORT_NUMBER]:70}[l||""]||0,d=(null===e||void 0===e||null===(s=e.props)||void 0===s?void 0:s.minWidth)||{[qd.STRING]:200,[qd.NUMBER]:110}[l||""]||40,p=null!==e&&void 0!==e&&null!==(r=e.props)&&void 0!==r&&r.isSortable?null===e||void 0===e||null===(i=e.props)||void 0===i?void 0:i.isSortable:[qd.STRING,qd.NUMBER,qd.SHORT_NUMBER].includes(l);return{...e.props,className:c,template:l,isSortable:p,minWidth:d,defaultWidth:m,width:void 0,userWidth:void 0}}))}function rp(e){var n;let{rows:a=[],sort:o=[],disabledRow:s,updateSort:r,children:i}=e;const[l,c]=(0,t.useState)(0),[m,d]=(0,t.useState)({});if(!a||!a.length)return null;const p=t.useRef(),u=null===p||void 0===p||null===(n=p.current)||void 0===n?void 0:n.offsetWidth;(0,t.useEffect)((()=>{c(u)}),[u]),(0,t.useEffect)((()=>{const e=tp(a,m);d(e)}),[a]);const h=sp(i),f=function(e,t){if(!t)return 150;const n=e.filter((e=>{let{isShow:t}=e;return t})),a=n.map((e=>e.userWidth||e.defaultWidth||0)),o=a.reduce(((e,t)=>e+t),0);let s=a.filter((e=>!e)).length;if(!s)return 40;let r=t-o,i=Math.floor(r/s);return n.forEach((e=>{e.userWidth||e.defaultWidth||!e.minWidth||e.minWidth<i||!s||(r-=e.minWidth,s-=1,i=r/s)})),Math.max(i||40,40)}(h,l),g=op(h,f,o);return(0,Er.jsx)("div",{ref:p,className:"".concat(Dd," scroll_x"),onTouchStart:e=>e.stopPropagation(),onMouseDown:e=>e.stopPropagation(),children:(0,Er.jsxs)("div",{className:"".concat(Od),children:[(0,Er.jsx)($d,{columns:g,updateSort:r}),(0,Er.jsx)(ap,{rows:a,columns:g,disabledRow:s,rowsConfig:m,updateRowsConfig:e=>{d({...m,[e.id]:e})}})]})})}rp.defaultProps={rows:[],sort:[],updateSort:()=>{}};const ip=rp,lp="card",cp="card_wrapper",mp="card_title",dp="card_line",pp="card_line_title",up="card_line_value",hp="card_line_with_template",fp="card_line_with_template_title";function gp(e){let{column:t,item:n,value:a,className:o}=e;const{t:s}=zt(),r="function"===typeof t.className?t.className("body",n):t.className,i=typeof a;return!t.title||"undefined"===i||""===a||"number"===i&&isNaN(a)||"object"===i&&!a?null:(0,Er.jsxs)("div",{className:"".concat(dp," ").concat(o||""," ").concat(r||""),children:[(0,Er.jsx)("div",{className:pp,children:s(t.title||"")}),(0,Er.jsx)("div",{className:up,children:a})]})}gp.defaultPeops={className:""};const yp=gp;function vp(e){let{column:t,item:n,className:a,value:o}=e;const{t:s}=zt(),r="function"===typeof t.className?t.className("body",n):t.className;return o?(0,Er.jsxs)("div",{className:"".concat(hp," ").concat(a||""," ").concat(r||""),children:[(0,Er.jsx)("div",{className:fp,children:s(t.title||"")}),o]}):null}vp.defaultPeops={className:""};const bp=vp;function wp(e){let{column:t,item:n,className:a,value:o}=e;const s="function"===typeof t.className?t.className("body",n):t.className;return(0,Er.jsx)("div",{className:"".concat(mp," ").concat(a||""," ").concat(s||""),children:o||"\u2014"},t.title)}wp.defaultPeops={className:""};const kp=wp;function xp(e){let{item:t,lines:n,className:a,customStyle:o}=e,s=!1;const r=n.map(((e,n)=>{var a,o;const r=e.properties?t[e.properties]:t,i=e.formatter?e.formatter(r):r,l="function"===typeof e.template,c=l?e.template(i,t):"".concat(null!==(a=e.prefixes)&&void 0!==a?a:"").concat(null!==i&&void 0!==i?i:"").concat(null!==(o=e.suffixes)&&void 0!==o?o:"");return!s&&e.title?(s=!0,(0,Er.jsx)(kp,{item:t,column:e,value:c},"".concat(e.title,"_").concat(n))):l&&(!e.width||e.width&&e.width>110)?(0,Er.jsx)(bp,{item:t,column:e,value:c},"".concat(e.title,"_").concat(n)):(0,Er.jsx)(yp,{item:t,column:e,value:c},"".concat(e.title,"_").concat(n))}));return(0,Er.jsx)("div",{className:"".concat(lp," ").concat(a),style:o||{},children:r})}xp.defaultProps={className:""};const _p=xp;const Tp=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];const t=e.reduce(((t,n,a)=>{if(n.template===qd.DETAILS)return t;if(0===a)return t.text.push(n),t;const o=e[a+1];return n.template===qd.SHORT_NUMBER&&"function"===typeof(null===o||void 0===o?void 0:o.template)?(t.text.push({...n,title:null===o||void 0===o?void 0:o.title}),t):("function"===typeof n.template?a>0&&e[a-1].template===qd.SHORT_NUMBER?t.shortChart.push(n):t.longChart.push(n):t.text.push(n),t)}),{text:[],shortChart:[],longChart:[]});return[...t.text,...t.longChart]};function Sp(e){let{items:n=[],className:a,columnCount:o,children:s}=e;const[r,i]=(0,t.useState)(o||4),l=(0,t.useRef)();if(!n||!n.length)return null;const c=sp(s),m=Tp(c);(0,t.useLayoutEffect)((()=>{var e;const t=null===l||void 0===l||null===(e=l.current)||void 0===e?void 0:e.offsetWidth;let n=4;t<1100&&(n=3),t<850&&(n=2),t<700&&(n=1),i(o||n)}),[]);const d=null===n||void 0===n?void 0:n.map(((e,t)=>(0,Er.jsx)(_p,{item:e,lines:m,customStyle:[{width:"calc(100% - 24px)"},{width:"calc(50% - 24px)"},{width:"calc(33.33% - 24px)"},{width:"calc(25% - 24px)"}][r-1],className:a},t)));return(0,Er.jsx)("div",{ref:l,className:cp,children:d})}Sp.defaultProps={items:[],className:void 0,columnCount:void 0};const Cp=Sp;var Ep={version:"0.18.5"},jp=1200,Ap=1252,Np=[874,932,936,949,950,1250,1251,1252,1253,1254,1255,1256,1257,1258,1e4],Dp={0:1252,1:65001,2:65001,77:1e4,128:932,129:949,130:1361,134:936,136:950,161:1253,162:1254,163:1258,177:1255,178:1256,186:1257,204:1251,222:874,238:1250,255:1252,69:6969},Op=function(e){-1!=Np.indexOf(e)&&(Ap=Dp[0]=e)};var Rp=function(e){jp=e,Op(e)};function Pp(){Rp(1200),Op(1252)}function Ip(e){for(var t=[],n=0;n<e.length>>1;++n)t[n]=String.fromCharCode(e.charCodeAt(2*n+1)+(e.charCodeAt(2*n)<<8));return t.join("")}var Lp,Fp=function(e){return String.fromCharCode(e)},Mp=function(e){return String.fromCharCode(e)};var Wp="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function Bp(e){for(var t="",n=0,a=0,o=0,s=0,r=0,i=0,l=0,c=0;c<e.length;)s=(n=e.charCodeAt(c++))>>2,r=(3&n)<<4|(a=e.charCodeAt(c++))>>4,i=(15&a)<<2|(o=e.charCodeAt(c++))>>6,l=63&o,isNaN(a)?i=l=64:isNaN(o)&&(l=64),t+=Wp.charAt(s)+Wp.charAt(r)+Wp.charAt(i)+Wp.charAt(l);return t}function zp(e){var t="",n=0,a=0,o=0,s=0,r=0,i=0;e=e.replace(/[^\w\+\/\=]/g,"");for(var l=0;l<e.length;)n=Wp.indexOf(e.charAt(l++))<<2|(s=Wp.indexOf(e.charAt(l++)))>>4,t+=String.fromCharCode(n),a=(15&s)<<4|(r=Wp.indexOf(e.charAt(l++)))>>2,64!==r&&(t+=String.fromCharCode(a)),o=(3&r)<<6|(i=Wp.indexOf(e.charAt(l++))),64!==i&&(t+=String.fromCharCode(o));return t}var Up=function(){return"undefined"!==typeof Buffer&&"undefined"!==typeof process&&"undefined"!==typeof process.versions&&!!process.versions.node}(),Hp=function(){if("undefined"!==typeof Buffer){var e=!Buffer.from;if(!e)try{Buffer.from("foo","utf8")}catch(t){e=!0}return e?function(e,t){return t?new Buffer(e,t):new Buffer(e)}:Buffer.from.bind(Buffer)}return function(){}}();function Gp(e){return Up?Buffer.alloc?Buffer.alloc(e):new Buffer(e):"undefined"!=typeof Uint8Array?new Uint8Array(e):new Array(e)}function Vp(e){return Up?Buffer.allocUnsafe?Buffer.allocUnsafe(e):new Buffer(e):"undefined"!=typeof Uint8Array?new Uint8Array(e):new Array(e)}var Kp=function(e){return Up?Hp(e,"binary"):e.split("").map((function(e){return 255&e.charCodeAt(0)}))};function $p(e){if("undefined"===typeof ArrayBuffer)return Kp(e);for(var t=new ArrayBuffer(e.length),n=new Uint8Array(t),a=0;a!=e.length;++a)n[a]=255&e.charCodeAt(a);return t}function qp(e){if(Array.isArray(e))return e.map((function(e){return String.fromCharCode(e)})).join("");for(var t=[],n=0;n<e.length;++n)t[n]=String.fromCharCode(e[n]);return t.join("")}var Yp=Up?function(e){return Buffer.concat(e.map((function(e){return Buffer.isBuffer(e)?e:Hp(e)})))}:function(e){if("undefined"!==typeof Uint8Array){var t=0,n=0;for(t=0;t<e.length;++t)n+=e[t].length;var a=new Uint8Array(n),o=0;for(t=0,n=0;t<e.length;n+=o,++t)if(o=e[t].length,e[t]instanceof Uint8Array)a.set(e[t],n);else{if("string"==typeof e[t])throw"wtf";a.set(new Uint8Array(e[t]),n)}return a}return[].concat.apply([],e.map((function(e){return Array.isArray(e)?e:[].slice.call(e)})))};var Zp=/\u0000/g,Jp=/[\u0001-\u0006]/g;function Xp(e){for(var t="",n=e.length-1;n>=0;)t+=e.charAt(n--);return t}function Qp(e,t){var n=""+e;return n.length>=t?n:dh("0",t-n.length)+n}function eu(e,t){var n=""+e;return n.length>=t?n:dh(" ",t-n.length)+n}function tu(e,t){var n=""+e;return n.length>=t?n:n+dh(" ",t-n.length)}var nu=Math.pow(2,32);function au(e,t){return e>nu||e<-nu?function(e,t){var n=""+Math.round(e);return n.length>=t?n:dh("0",t-n.length)+n}(e,t):function(e,t){var n=""+e;return n.length>=t?n:dh("0",t-n.length)+n}(Math.round(e),t)}function ou(e,t){return t=t||0,e.length>=7+t&&103===(32|e.charCodeAt(t))&&101===(32|e.charCodeAt(t+1))&&110===(32|e.charCodeAt(t+2))&&101===(32|e.charCodeAt(t+3))&&114===(32|e.charCodeAt(t+4))&&97===(32|e.charCodeAt(t+5))&&108===(32|e.charCodeAt(t+6))}var su=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]],ru=[["J","Jan","January"],["F","Feb","February"],["M","Mar","March"],["A","Apr","April"],["M","May","May"],["J","Jun","June"],["J","Jul","July"],["A","Aug","August"],["S","Sep","September"],["O","Oct","October"],["N","Nov","November"],["D","Dec","December"]];var iu={0:"General",1:"0",2:"0.00",3:"#,##0",4:"#,##0.00",9:"0%",10:"0.00%",11:"0.00E+00",12:"# ?/?",13:"# ??/??",14:"m/d/yy",15:"d-mmm-yy",16:"d-mmm",17:"mmm-yy",18:"h:mm AM/PM",19:"h:mm:ss AM/PM",20:"h:mm",21:"h:mm:ss",22:"m/d/yy h:mm",37:"#,##0 ;(#,##0)",38:"#,##0 ;[Red](#,##0)",39:"#,##0.00;(#,##0.00)",40:"#,##0.00;[Red](#,##0.00)",45:"mm:ss",46:"[h]:mm:ss",47:"mmss.0",48:"##0.0E+0",49:"@",56:'"\u4e0a\u5348/\u4e0b\u5348 "hh"\u6642"mm"\u5206"ss"\u79d2 "'},lu={5:37,6:38,7:39,8:40,23:0,24:0,25:0,26:0,27:14,28:14,29:14,30:14,31:14,50:14,51:14,52:14,53:14,54:14,55:14,56:14,57:14,58:14,59:1,60:2,61:3,62:4,67:9,68:10,69:12,70:13,71:14,72:14,73:15,74:16,75:17,76:20,77:21,78:22,79:45,80:46,81:47,82:0},cu={5:'"$"#,##0_);\\("$"#,##0\\)',63:'"$"#,##0_);\\("$"#,##0\\)',6:'"$"#,##0_);[Red]\\("$"#,##0\\)',64:'"$"#,##0_);[Red]\\("$"#,##0\\)',7:'"$"#,##0.00_);\\("$"#,##0.00\\)',65:'"$"#,##0.00_);\\("$"#,##0.00\\)',8:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',66:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',41:'_(* #,##0_);_(* \\(#,##0\\);_(* "-"_);_(@_)',42:'_("$"* #,##0_);_("$"* \\(#,##0\\);_("$"* "-"_);_(@_)',43:'_(* #,##0.00_);_(* \\(#,##0.00\\);_(* "-"??_);_(@_)',44:'_("$"* #,##0.00_);_("$"* \\(#,##0.00\\);_("$"* "-"??_);_(@_)'};function mu(e,t,n){for(var a=e<0?-1:1,o=e*a,s=0,r=1,i=0,l=1,c=0,m=0,d=Math.floor(o);c<t&&(i=(d=Math.floor(o))*r+s,m=d*c+l,!(o-d<5e-8));)o=1/(o-d),s=r,r=i,l=c,c=m;if(m>t&&(c>t?(m=l,i=s):(m=c,i=r)),!n)return[0,a*i,m];var p=Math.floor(a*i/m);return[p,a*i-p*m,m]}function du(e,t,n){if(e>2958465||e<0)return null;var a=0|e,o=Math.floor(86400*(e-a)),s=0,r=[],i={D:a,T:o,u:86400*(e-a)-o,y:0,m:0,d:0,H:0,M:0,S:0,q:0};if(Math.abs(i.u)<1e-6&&(i.u=0),t&&t.date1904&&(a+=1462),i.u>.9999&&(i.u=0,86400==++o&&(i.T=o=0,++a,++i.D)),60===a)r=n?[1317,10,29]:[1900,2,29],s=3;else if(0===a)r=n?[1317,8,29]:[1900,1,0],s=6;else{a>60&&--a;var l=new Date(1900,0,1);l.setDate(l.getDate()+a-1),r=[l.getFullYear(),l.getMonth()+1,l.getDate()],s=l.getDay(),a<60&&(s=(s+6)%7),n&&(s=function(e,t){t[0]-=581;var n=e.getDay();e<60&&(n=(n+6)%7);return n}(l,r))}return i.y=r[0],i.m=r[1],i.d=r[2],i.S=o%60,o=Math.floor(o/60),i.M=o%60,o=Math.floor(o/60),i.H=o,i.q=s,i}var pu=new Date(1899,11,31,0,0,0),uu=pu.getTime(),hu=new Date(1900,2,1,0,0,0);function fu(e,t){var n=e.getTime();return t?n-=1262304e5:e>=hu&&(n+=864e5),(n-(uu+6e4*(e.getTimezoneOffset()-pu.getTimezoneOffset())))/864e5}function gu(e){return-1==e.indexOf(".")?e:e.replace(/(?:\.0*|(\.\d*[1-9])0+)$/,"$1")}function yu(e){var t,n=Math.floor(Math.log(Math.abs(e))*Math.LOG10E);return t=n>=-4&&n<=-1?e.toPrecision(10+n):Math.abs(n)<=9?function(e){var t=e<0?12:11,n=gu(e.toFixed(12));return n.length<=t||(n=e.toPrecision(10)).length<=t?n:e.toExponential(5)}(e):10===n?e.toFixed(10).substr(0,12):function(e){var t=gu(e.toFixed(11));return t.length>(e<0?12:11)||"0"===t||"-0"===t?e.toPrecision(6):t}(e),gu(function(e){return-1==e.indexOf("E")?e:e.replace(/(?:\.0*|(\.\d*[1-9])0+)[Ee]/,"$1E").replace(/(E[+-])(\d)$/,"$10$2")}(t.toUpperCase()))}function vu(e,t){switch(typeof e){case"string":return e;case"boolean":return e?"TRUE":"FALSE";case"number":return(0|e)===e?e.toString(10):yu(e);case"undefined":return"";case"object":if(null==e)return"";if(e instanceof Date)return Wu(14,fu(e,t&&t.date1904),t)}throw new Error("unsupported value in General format: "+e)}function bu(e,t,n,a){var o,s="",r=0,i=0,l=n.y,c=0;switch(e){case 98:l=n.y+543;case 121:switch(t.length){case 1:case 2:o=l%100,c=2;break;default:o=l%1e4,c=4}break;case 109:switch(t.length){case 1:case 2:o=n.m,c=t.length;break;case 3:return ru[n.m-1][1];case 5:return ru[n.m-1][0];default:return ru[n.m-1][2]}break;case 100:switch(t.length){case 1:case 2:o=n.d,c=t.length;break;case 3:return su[n.q][0];default:return su[n.q][1]}break;case 104:switch(t.length){case 1:case 2:o=1+(n.H+11)%12,c=t.length;break;default:throw"bad hour format: "+t}break;case 72:switch(t.length){case 1:case 2:o=n.H,c=t.length;break;default:throw"bad hour format: "+t}break;case 77:switch(t.length){case 1:case 2:o=n.M,c=t.length;break;default:throw"bad minute format: "+t}break;case 115:if("s"!=t&&"ss"!=t&&".0"!=t&&".00"!=t&&".000"!=t)throw"bad second format: "+t;return 0!==n.u||"s"!=t&&"ss"!=t?(i=a>=2?3===a?1e3:100:1===a?10:1,(r=Math.round(i*(n.S+n.u)))>=60*i&&(r=0),"s"===t?0===r?"0":""+r/i:(s=Qp(r,2+a),"ss"===t?s.substr(0,2):"."+s.substr(2,t.length-1))):Qp(n.S,t.length);case 90:switch(t){case"[h]":case"[hh]":o=24*n.D+n.H;break;case"[m]":case"[mm]":o=60*(24*n.D+n.H)+n.M;break;case"[s]":case"[ss]":o=60*(60*(24*n.D+n.H)+n.M)+Math.round(n.S+n.u);break;default:throw"bad abstime format: "+t}c=3===t.length?1:2;break;case 101:o=l,c=1}return c>0?Qp(o,c):""}function wu(e){if(e.length<=3)return e;for(var t=e.length%3,n=e.substr(0,t);t!=e.length;t+=3)n+=(n.length>0?",":"")+e.substr(t,3);return n}var ku=/%/g;function xu(e,t){var n,a=e.indexOf("E")-e.indexOf(".")-1;if(e.match(/^#+0.0E\+0$/)){if(0==t)return"0.0E+0";if(t<0)return"-"+xu(e,-t);var o=e.indexOf(".");-1===o&&(o=e.indexOf("E"));var s=Math.floor(Math.log(t)*Math.LOG10E)%o;if(s<0&&(s+=o),-1===(n=(t/Math.pow(10,s)).toPrecision(a+1+(o+s)%o)).indexOf("e")){var r=Math.floor(Math.log(t)*Math.LOG10E);for(-1===n.indexOf(".")?n=n.charAt(0)+"."+n.substr(1)+"E+"+(r-n.length+s):n+="E+"+(r-s);"0."===n.substr(0,2);)n=(n=n.charAt(0)+n.substr(2,o)+"."+n.substr(2+o)).replace(/^0+([1-9])/,"$1").replace(/^0+\./,"0.");n=n.replace(/\+-/,"-")}n=n.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,(function(e,t,n,a){return t+n+a.substr(0,(o+s)%o)+"."+a.substr(s)+"E"}))}else n=t.toExponential(a);return e.match(/E\+00$/)&&n.match(/e[+-]\d$/)&&(n=n.substr(0,n.length-1)+"0"+n.charAt(n.length-1)),e.match(/E\-/)&&n.match(/e\+/)&&(n=n.replace(/e\+/,"e")),n.replace("e","E")}var _u=/# (\?+)( ?)\/( ?)(\d+)/;var Tu=/^#*0*\.([0#]+)/,Su=/\).*[0#]/,Cu=/\(###\) ###\\?-####/;function Eu(e){for(var t,n="",a=0;a!=e.length;++a)switch(t=e.charCodeAt(a)){case 35:break;case 63:n+=" ";break;case 48:n+="0";break;default:n+=String.fromCharCode(t)}return n}function ju(e,t){var n=Math.pow(10,t);return""+Math.round(e*n)/n}function Au(e,t){var n=e-Math.floor(e),a=Math.pow(10,t);return t<(""+Math.round(n*a)).length?0:Math.round(n*a)}function Nu(e,t,n){if(40===e.charCodeAt(0)&&!t.match(Su)){var a=t.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");return n>=0?Nu("n",a,n):"("+Nu("n",a,-n)+")"}if(44===t.charCodeAt(t.length-1))return function(e,t,n){for(var a=t.length-1;44===t.charCodeAt(a-1);)--a;return Ru(e,t.substr(0,a),n/Math.pow(10,3*(t.length-a)))}(e,t,n);if(-1!==t.indexOf("%"))return function(e,t,n){var a=t.replace(ku,""),o=t.length-a.length;return Ru(e,a,n*Math.pow(10,2*o))+dh("%",o)}(e,t,n);if(-1!==t.indexOf("E"))return xu(t,n);if(36===t.charCodeAt(0))return"$"+Nu(e,t.substr(" "==t.charAt(1)?2:1),n);var o,s,r,i,l=Math.abs(n),c=n<0?"-":"";if(t.match(/^00+$/))return c+au(l,t.length);if(t.match(/^[#?]+$/))return"0"===(o=au(n,0))&&(o=""),o.length>t.length?o:Eu(t.substr(0,t.length-o.length))+o;if(s=t.match(_u))return function(e,t,n){var a=parseInt(e[4],10),o=Math.round(t*a),s=Math.floor(o/a),r=o-s*a,i=a;return n+(0===s?"":""+s)+" "+(0===r?dh(" ",e[1].length+1+e[4].length):eu(r,e[1].length)+e[2]+"/"+e[3]+Qp(i,e[4].length))}(s,l,c);if(t.match(/^#+0+$/))return c+au(l,t.length-t.indexOf("0"));if(s=t.match(Tu))return o=ju(n,s[1].length).replace(/^([^\.]+)$/,"$1."+Eu(s[1])).replace(/\.$/,"."+Eu(s[1])).replace(/\.(\d*)$/,(function(e,t){return"."+t+dh("0",Eu(s[1]).length-t.length)})),-1!==t.indexOf("0.")?o:o.replace(/^0\./,".");if(t=t.replace(/^#+([0.])/,"$1"),s=t.match(/^(0*)\.(#*)$/))return c+ju(l,s[2].length).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,s[1].length?"0.":".");if(s=t.match(/^#{1,3},##0(\.?)$/))return c+wu(au(l,0));if(s=t.match(/^#,##0\.([#0]*0)$/))return n<0?"-"+Nu(e,t,-n):wu(""+(Math.floor(n)+function(e,t){return t<(""+Math.round((e-Math.floor(e))*Math.pow(10,t))).length?1:0}(n,s[1].length)))+"."+Qp(Au(n,s[1].length),s[1].length);if(s=t.match(/^#,#*,#0/))return Nu(e,t.replace(/^#,#*,/,""),n);if(s=t.match(/^([0#]+)(\\?-([0#]+))+$/))return o=Xp(Nu(e,t.replace(/[\\-]/g,""),n)),r=0,Xp(Xp(t.replace(/\\/g,"")).replace(/[0#]/g,(function(e){return r<o.length?o.charAt(r++):"0"===e?"0":""})));if(t.match(Cu))return"("+(o=Nu(e,"##########",n)).substr(0,3)+") "+o.substr(3,3)+"-"+o.substr(6);var m="";if(s=t.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))return r=Math.min(s[4].length,7),i=mu(l,Math.pow(10,r)-1,!1),o=""+c," "==(m=Ru("n",s[1],i[1])).charAt(m.length-1)&&(m=m.substr(0,m.length-1)+"0"),o+=m+s[2]+"/"+s[3],(m=tu(i[2],r)).length<s[4].length&&(m=Eu(s[4].substr(s[4].length-m.length))+m),o+=m;if(s=t.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))return r=Math.min(Math.max(s[1].length,s[4].length),7),c+((i=mu(l,Math.pow(10,r)-1,!0))[0]||(i[1]?"":"0"))+" "+(i[1]?eu(i[1],r)+s[2]+"/"+s[3]+tu(i[2],r):dh(" ",2*r+1+s[2].length+s[3].length));if(s=t.match(/^[#0?]+$/))return o=au(n,0),t.length<=o.length?o:Eu(t.substr(0,t.length-o.length))+o;if(s=t.match(/^([#0?]+)\.([#0]+)$/)){o=""+n.toFixed(Math.min(s[2].length,10)).replace(/([^0])0+$/,"$1"),r=o.indexOf(".");var d=t.indexOf(".")-r,p=t.length-o.length-d;return Eu(t.substr(0,d)+o+t.substr(t.length-p))}if(s=t.match(/^00,000\.([#0]*0)$/))return r=Au(n,s[1].length),n<0?"-"+Nu(e,t,-n):wu(function(e){return e<2147483647&&e>-2147483648?""+(e>=0?0|e:e-1|0):""+Math.floor(e)}(n)).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,(function(e){return"00,"+(e.length<3?Qp(0,3-e.length):"")+e}))+"."+Qp(r,s[1].length);switch(t){case"###,##0.00":return Nu(e,"#,##0.00",n);case"###,###":case"##,###":case"#,###":var u=wu(au(l,0));return"0"!==u?c+u:"";case"###,###.00":return Nu(e,"###,##0.00",n).replace(/^0\./,".");case"#,###.00":return Nu(e,"#,##0.00",n).replace(/^0\./,".")}throw new Error("unsupported format |"+t+"|")}function Du(e,t){var n,a=e.indexOf("E")-e.indexOf(".")-1;if(e.match(/^#+0.0E\+0$/)){if(0==t)return"0.0E+0";if(t<0)return"-"+Du(e,-t);var o=e.indexOf(".");-1===o&&(o=e.indexOf("E"));var s=Math.floor(Math.log(t)*Math.LOG10E)%o;if(s<0&&(s+=o),!(n=(t/Math.pow(10,s)).toPrecision(a+1+(o+s)%o)).match(/[Ee]/)){var r=Math.floor(Math.log(t)*Math.LOG10E);-1===n.indexOf(".")?n=n.charAt(0)+"."+n.substr(1)+"E+"+(r-n.length+s):n+="E+"+(r-s),n=n.replace(/\+-/,"-")}n=n.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,(function(e,t,n,a){return t+n+a.substr(0,(o+s)%o)+"."+a.substr(s)+"E"}))}else n=t.toExponential(a);return e.match(/E\+00$/)&&n.match(/e[+-]\d$/)&&(n=n.substr(0,n.length-1)+"0"+n.charAt(n.length-1)),e.match(/E\-/)&&n.match(/e\+/)&&(n=n.replace(/e\+/,"e")),n.replace("e","E")}function Ou(e,t,n){if(40===e.charCodeAt(0)&&!t.match(Su)){var a=t.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");return n>=0?Ou("n",a,n):"("+Ou("n",a,-n)+")"}if(44===t.charCodeAt(t.length-1))return function(e,t,n){for(var a=t.length-1;44===t.charCodeAt(a-1);)--a;return Ru(e,t.substr(0,a),n/Math.pow(10,3*(t.length-a)))}(e,t,n);if(-1!==t.indexOf("%"))return function(e,t,n){var a=t.replace(ku,""),o=t.length-a.length;return Ru(e,a,n*Math.pow(10,2*o))+dh("%",o)}(e,t,n);if(-1!==t.indexOf("E"))return Du(t,n);if(36===t.charCodeAt(0))return"$"+Ou(e,t.substr(" "==t.charAt(1)?2:1),n);var o,s,r,i,l=Math.abs(n),c=n<0?"-":"";if(t.match(/^00+$/))return c+Qp(l,t.length);if(t.match(/^[#?]+$/))return o=""+n,0===n&&(o=""),o.length>t.length?o:Eu(t.substr(0,t.length-o.length))+o;if(s=t.match(_u))return function(e,t,n){return n+(0===t?"":""+t)+dh(" ",e[1].length+2+e[4].length)}(s,l,c);if(t.match(/^#+0+$/))return c+Qp(l,t.length-t.indexOf("0"));if(s=t.match(Tu))return o=(o=(""+n).replace(/^([^\.]+)$/,"$1."+Eu(s[1])).replace(/\.$/,"."+Eu(s[1]))).replace(/\.(\d*)$/,(function(e,t){return"."+t+dh("0",Eu(s[1]).length-t.length)})),-1!==t.indexOf("0.")?o:o.replace(/^0\./,".");if(t=t.replace(/^#+([0.])/,"$1"),s=t.match(/^(0*)\.(#*)$/))return c+(""+l).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,s[1].length?"0.":".");if(s=t.match(/^#{1,3},##0(\.?)$/))return c+wu(""+l);if(s=t.match(/^#,##0\.([#0]*0)$/))return n<0?"-"+Ou(e,t,-n):wu(""+n)+"."+dh("0",s[1].length);if(s=t.match(/^#,#*,#0/))return Ou(e,t.replace(/^#,#*,/,""),n);if(s=t.match(/^([0#]+)(\\?-([0#]+))+$/))return o=Xp(Ou(e,t.replace(/[\\-]/g,""),n)),r=0,Xp(Xp(t.replace(/\\/g,"")).replace(/[0#]/g,(function(e){return r<o.length?o.charAt(r++):"0"===e?"0":""})));if(t.match(Cu))return"("+(o=Ou(e,"##########",n)).substr(0,3)+") "+o.substr(3,3)+"-"+o.substr(6);var m="";if(s=t.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))return r=Math.min(s[4].length,7),i=mu(l,Math.pow(10,r)-1,!1),o=""+c," "==(m=Ru("n",s[1],i[1])).charAt(m.length-1)&&(m=m.substr(0,m.length-1)+"0"),o+=m+s[2]+"/"+s[3],(m=tu(i[2],r)).length<s[4].length&&(m=Eu(s[4].substr(s[4].length-m.length))+m),o+=m;if(s=t.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))return r=Math.min(Math.max(s[1].length,s[4].length),7),c+((i=mu(l,Math.pow(10,r)-1,!0))[0]||(i[1]?"":"0"))+" "+(i[1]?eu(i[1],r)+s[2]+"/"+s[3]+tu(i[2],r):dh(" ",2*r+1+s[2].length+s[3].length));if(s=t.match(/^[#0?]+$/))return o=""+n,t.length<=o.length?o:Eu(t.substr(0,t.length-o.length))+o;if(s=t.match(/^([#0]+)\.([#0]+)$/)){o=""+n.toFixed(Math.min(s[2].length,10)).replace(/([^0])0+$/,"$1"),r=o.indexOf(".");var d=t.indexOf(".")-r,p=t.length-o.length-d;return Eu(t.substr(0,d)+o+t.substr(t.length-p))}if(s=t.match(/^00,000\.([#0]*0)$/))return n<0?"-"+Ou(e,t,-n):wu(""+n).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,(function(e){return"00,"+(e.length<3?Qp(0,3-e.length):"")+e}))+"."+Qp(0,s[1].length);switch(t){case"###,###":case"##,###":case"#,###":var u=wu(""+l);return"0"!==u?c+u:"";default:if(t.match(/\.[0#?]*$/))return Ou(e,t.slice(0,t.lastIndexOf(".")),n)+Eu(t.slice(t.lastIndexOf(".")))}throw new Error("unsupported format |"+t+"|")}function Ru(e,t,n){return(0|n)===n?Ou(e,t,n):Nu(e,t,n)}var Pu=/\[[HhMmSs\u0E0A\u0E19\u0E17]*\]/;function Iu(e){for(var t=0,n="",a="";t<e.length;)switch(n=e.charAt(t)){case"G":ou(e,t)&&(t+=6),t++;break;case'"':for(;34!==e.charCodeAt(++t)&&t<e.length;);++t;break;case"\\":case"_":t+=2;break;case"@":++t;break;case"B":case"b":if("1"===e.charAt(t+1)||"2"===e.charAt(t+1))return!0;case"M":case"D":case"Y":case"H":case"S":case"E":case"m":case"d":case"y":case"h":case"s":case"e":case"g":return!0;case"A":case"a":case"\u4e0a":if("A/P"===e.substr(t,3).toUpperCase())return!0;if("AM/PM"===e.substr(t,5).toUpperCase())return!0;if("\u4e0a\u5348/\u4e0b\u5348"===e.substr(t,5).toUpperCase())return!0;++t;break;case"[":for(a=n;"]"!==e.charAt(t++)&&t<e.length;)a+=e.charAt(t);if(a.match(Pu))return!0;break;case".":case"0":case"#":for(;t<e.length&&("0#?.,E+-%".indexOf(n=e.charAt(++t))>-1||"\\"==n&&"-"==e.charAt(t+1)&&"0#".indexOf(e.charAt(t+2))>-1););break;case"?":for(;e.charAt(++t)===n;);break;case"*":++t," "!=e.charAt(t)&&"*"!=e.charAt(t)||++t;break;case"(":case")":++t;break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":for(;t<e.length&&"0123456789".indexOf(e.charAt(++t))>-1;);break;default:++t}return!1}var Lu=/\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/;function Fu(e,t){if(null==t)return!1;var n=parseFloat(t[2]);switch(t[1]){case"=":if(e==n)return!0;break;case">":if(e>n)return!0;break;case"<":if(e<n)return!0;break;case"<>":if(e!=n)return!0;break;case">=":if(e>=n)return!0;break;case"<=":if(e<=n)return!0}return!1}function Mu(e,t){var n=function(e){for(var t=[],n=!1,a=0,o=0;a<e.length;++a)switch(e.charCodeAt(a)){case 34:n=!n;break;case 95:case 42:case 92:++a;break;case 59:t[t.length]=e.substr(o,a-o),o=a+1}if(t[t.length]=e.substr(o),!0===n)throw new Error("Format |"+e+"| unterminated string ");return t}(e),a=n.length,o=n[a-1].indexOf("@");if(a<4&&o>-1&&--a,n.length>4)throw new Error("cannot find right format for |"+n.join("|")+"|");if("number"!==typeof t)return[4,4===n.length||o>-1?n[n.length-1]:"@"];switch(n.length){case 1:n=o>-1?["General","General","General",n[0]]:[n[0],n[0],n[0],"@"];break;case 2:n=o>-1?[n[0],n[0],n[0],n[1]]:[n[0],n[1],n[0],"@"];break;case 3:n=o>-1?[n[0],n[1],n[0],n[2]]:[n[0],n[1],n[2],"@"]}var s=t>0?n[0]:t<0?n[1]:n[2];if(-1===n[0].indexOf("[")&&-1===n[1].indexOf("["))return[a,s];if(null!=n[0].match(/\[[=<>]/)||null!=n[1].match(/\[[=<>]/)){var r=n[0].match(Lu),i=n[1].match(Lu);return Fu(t,r)?[a,n[0]]:Fu(t,i)?[a,n[1]]:[a,n[null!=r&&null!=i?2:1]]}return[a,s]}function Wu(e,t,n){null==n&&(n={});var a="";switch(typeof e){case"string":a="m/d/yy"==e&&n.dateNF?n.dateNF:e;break;case"number":null==(a=14==e&&n.dateNF?n.dateNF:(null!=n.table?n.table:iu)[e])&&(a=n.table&&n.table[lu[e]]||iu[lu[e]]),null==a&&(a=cu[e]||"General")}if(ou(a,0))return vu(t,n);t instanceof Date&&(t=fu(t,n.date1904));var o=Mu(a,t);if(ou(o[1]))return vu(t,n);if(!0===t)t="TRUE";else if(!1===t)t="FALSE";else if(""===t||null==t)return"";return function(e,t,n,a){for(var o,s,r,i=[],l="",c=0,m="",d="t",p="H";c<e.length;)switch(m=e.charAt(c)){case"G":if(!ou(e,c))throw new Error("unrecognized character "+m+" in "+e);i[i.length]={t:"G",v:"General"},c+=7;break;case'"':for(l="";34!==(r=e.charCodeAt(++c))&&c<e.length;)l+=String.fromCharCode(r);i[i.length]={t:"t",v:l},++c;break;case"\\":var u=e.charAt(++c),h="("===u||")"===u?u:"t";i[i.length]={t:h,v:u},++c;break;case"_":i[i.length]={t:"t",v:" "},c+=2;break;case"@":i[i.length]={t:"T",v:t},++c;break;case"B":case"b":if("1"===e.charAt(c+1)||"2"===e.charAt(c+1)){if(null==o&&null==(o=du(t,n,"2"===e.charAt(c+1))))return"";i[i.length]={t:"X",v:e.substr(c,2)},d=m,c+=2;break}case"M":case"D":case"Y":case"H":case"S":case"E":m=m.toLowerCase();case"m":case"d":case"y":case"h":case"s":case"e":case"g":if(t<0)return"";if(null==o&&null==(o=du(t,n)))return"";for(l=m;++c<e.length&&e.charAt(c).toLowerCase()===m;)l+=m;"m"===m&&"h"===d.toLowerCase()&&(m="M"),"h"===m&&(m=p),i[i.length]={t:m,v:l},d=m;break;case"A":case"a":case"\u4e0a":var f={t:m,v:m};if(null==o&&(o=du(t,n)),"A/P"===e.substr(c,3).toUpperCase()?(null!=o&&(f.v=o.H>=12?"P":"A"),f.t="T",p="h",c+=3):"AM/PM"===e.substr(c,5).toUpperCase()?(null!=o&&(f.v=o.H>=12?"PM":"AM"),f.t="T",c+=5,p="h"):"\u4e0a\u5348/\u4e0b\u5348"===e.substr(c,5).toUpperCase()?(null!=o&&(f.v=o.H>=12?"\u4e0b\u5348":"\u4e0a\u5348"),f.t="T",c+=5,p="h"):(f.t="t",++c),null==o&&"T"===f.t)return"";i[i.length]=f,d=m;break;case"[":for(l=m;"]"!==e.charAt(c++)&&c<e.length;)l+=e.charAt(c);if("]"!==l.slice(-1))throw'unterminated "[" block: |'+l+"|";if(l.match(Pu)){if(null==o&&null==(o=du(t,n)))return"";i[i.length]={t:"Z",v:l.toLowerCase()},d=l.charAt(1)}else l.indexOf("$")>-1&&(l=(l.match(/\$([^-\[\]]*)/)||[])[1]||"$",Iu(e)||(i[i.length]={t:"t",v:l}));break;case".":if(null!=o){for(l=m;++c<e.length&&"0"===(m=e.charAt(c));)l+=m;i[i.length]={t:"s",v:l};break}case"0":case"#":for(l=m;++c<e.length&&"0#?.,E+-%".indexOf(m=e.charAt(c))>-1;)l+=m;i[i.length]={t:"n",v:l};break;case"?":for(l=m;e.charAt(++c)===m;)l+=m;i[i.length]={t:m,v:l},d=m;break;case"*":++c," "!=e.charAt(c)&&"*"!=e.charAt(c)||++c;break;case"(":case")":i[i.length]={t:1===a?"t":m,v:m},++c;break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":for(l=m;c<e.length&&"0123456789".indexOf(e.charAt(++c))>-1;)l+=e.charAt(c);i[i.length]={t:"D",v:l};break;case" ":i[i.length]={t:m,v:m},++c;break;case"$":i[i.length]={t:"t",v:"$"},++c;break;default:if(-1===",$-+/():!^&'~{}<>=\u20acacfijklopqrtuvwxzP".indexOf(m))throw new Error("unrecognized character "+m+" in "+e);i[i.length]={t:"t",v:m},++c}var g,y=0,v=0;for(c=i.length-1,d="t";c>=0;--c)switch(i[c].t){case"h":case"H":i[c].t=p,d="h",y<1&&(y=1);break;case"s":(g=i[c].v.match(/\.0+$/))&&(v=Math.max(v,g[0].length-1)),y<3&&(y=3);case"d":case"y":case"M":case"e":d=i[c].t;break;case"m":"s"===d&&(i[c].t="M",y<2&&(y=2));break;case"X":break;case"Z":y<1&&i[c].v.match(/[Hh]/)&&(y=1),y<2&&i[c].v.match(/[Mm]/)&&(y=2),y<3&&i[c].v.match(/[Ss]/)&&(y=3)}switch(y){case 0:break;case 1:o.u>=.5&&(o.u=0,++o.S),o.S>=60&&(o.S=0,++o.M),o.M>=60&&(o.M=0,++o.H);break;case 2:o.u>=.5&&(o.u=0,++o.S),o.S>=60&&(o.S=0,++o.M)}var b,w="";for(c=0;c<i.length;++c)switch(i[c].t){case"t":case"T":case" ":case"D":break;case"X":i[c].v="",i[c].t=";";break;case"d":case"m":case"y":case"h":case"H":case"M":case"s":case"e":case"b":case"Z":i[c].v=bu(i[c].t.charCodeAt(0),i[c].v,o,v),i[c].t="t";break;case"n":case"?":for(b=c+1;null!=i[b]&&("?"===(m=i[b].t)||"D"===m||(" "===m||"t"===m)&&null!=i[b+1]&&("?"===i[b+1].t||"t"===i[b+1].t&&"/"===i[b+1].v)||"("===i[c].t&&(" "===m||"n"===m||")"===m)||"t"===m&&("/"===i[b].v||" "===i[b].v&&null!=i[b+1]&&"?"==i[b+1].t));)i[c].v+=i[b].v,i[b]={v:"",t:";"},++b;w+=i[c].v,c=b-1;break;case"G":i[c].t="t",i[c].v=vu(t,n)}var k,x,_="";if(w.length>0){40==w.charCodeAt(0)?(k=t<0&&45===w.charCodeAt(0)?-t:t,x=Ru("n",w,k)):(x=Ru("n",w,k=t<0&&a>1?-t:t),k<0&&i[0]&&"t"==i[0].t&&(x=x.substr(1),i[0].v="-"+i[0].v)),b=x.length-1;var T=i.length;for(c=0;c<i.length;++c)if(null!=i[c]&&"t"!=i[c].t&&i[c].v.indexOf(".")>-1){T=c;break}var S=i.length;if(T===i.length&&-1===x.indexOf("E")){for(c=i.length-1;c>=0;--c)null!=i[c]&&-1!=="n?".indexOf(i[c].t)&&(b>=i[c].v.length-1?(b-=i[c].v.length,i[c].v=x.substr(b+1,i[c].v.length)):b<0?i[c].v="":(i[c].v=x.substr(0,b+1),b=-1),i[c].t="t",S=c);b>=0&&S<i.length&&(i[S].v=x.substr(0,b+1)+i[S].v)}else if(T!==i.length&&-1===x.indexOf("E")){for(b=x.indexOf(".")-1,c=T;c>=0;--c)if(null!=i[c]&&-1!=="n?".indexOf(i[c].t)){for(s=i[c].v.indexOf(".")>-1&&c===T?i[c].v.indexOf(".")-1:i[c].v.length-1,_=i[c].v.substr(s+1);s>=0;--s)b>=0&&("0"===i[c].v.charAt(s)||"#"===i[c].v.charAt(s))&&(_=x.charAt(b--)+_);i[c].v=_,i[c].t="t",S=c}for(b>=0&&S<i.length&&(i[S].v=x.substr(0,b+1)+i[S].v),b=x.indexOf(".")+1,c=T;c<i.length;++c)if(null!=i[c]&&(-1!=="n?(".indexOf(i[c].t)||c===T)){for(s=i[c].v.indexOf(".")>-1&&c===T?i[c].v.indexOf(".")+1:0,_=i[c].v.substr(0,s);s<i[c].v.length;++s)b<x.length&&(_+=x.charAt(b++));i[c].v=_,i[c].t="t",S=c}}}for(c=0;c<i.length;++c)null!=i[c]&&"n?".indexOf(i[c].t)>-1&&(k=a>1&&t<0&&c>0&&"-"===i[c-1].v?-t:t,i[c].v=Ru(i[c].t,i[c].v,k),i[c].t="t");var C="";for(c=0;c!==i.length;++c)null!=i[c]&&(C+=i[c].v);return C}(o[1],t,n,o[0])}function Bu(e,t){if("number"!=typeof t){t=+t||-1;for(var n=0;n<392;++n)if(void 0!=iu[n]){if(iu[n]==e){t=n;break}}else t<0&&(t=n);t<0&&(t=391)}return iu[t]=e,t}function zu(e){for(var t=0;392!=t;++t)void 0!==e[t]&&Bu(e[t],t)}function Uu(){iu=function(e){return e||(e={}),e[0]="General",e[1]="0",e[2]="0.00",e[3]="#,##0",e[4]="#,##0.00",e[9]="0%",e[10]="0.00%",e[11]="0.00E+00",e[12]="# ?/?",e[13]="# ??/??",e[14]="m/d/yy",e[15]="d-mmm-yy",e[16]="d-mmm",e[17]="mmm-yy",e[18]="h:mm AM/PM",e[19]="h:mm:ss AM/PM",e[20]="h:mm",e[21]="h:mm:ss",e[22]="m/d/yy h:mm",e[37]="#,##0 ;(#,##0)",e[38]="#,##0 ;[Red](#,##0)",e[39]="#,##0.00;(#,##0.00)",e[40]="#,##0.00;[Red](#,##0.00)",e[45]="mm:ss",e[46]="[h]:mm:ss",e[47]="mmss.0",e[48]="##0.0E+0",e[49]="@",e[56]='"\u4e0a\u5348/\u4e0b\u5348 "hh"\u6642"mm"\u5206"ss"\u79d2 "',e}()}var Hu=/[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g;var Gu=function(){var e={};e.version="1.2.0";var t=function(){for(var e=0,t=new Array(256),n=0;256!=n;++n)e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=n)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1,t[n]=e;return"undefined"!==typeof Int32Array?new Int32Array(t):t}();var n=function(e){var t=0,n=0,a=0,o="undefined"!==typeof Int32Array?new Int32Array(4096):new Array(4096);for(a=0;256!=a;++a)o[a]=e[a];for(a=0;256!=a;++a)for(n=e[a],t=256+a;t<4096;t+=256)n=o[t]=n>>>8^e[255&n];var s=[];for(a=1;16!=a;++a)s[a-1]="undefined"!==typeof Int32Array?o.subarray(256*a,256*a+256):o.slice(256*a,256*a+256);return s}(t),a=n[0],o=n[1],s=n[2],r=n[3],i=n[4],l=n[5],c=n[6],m=n[7],d=n[8],p=n[9],u=n[10],h=n[11],f=n[12],g=n[13],y=n[14];return e.table=t,e.bstr=function(e,n){for(var a=-1^n,o=0,s=e.length;o<s;)a=a>>>8^t[255&(a^e.charCodeAt(o++))];return~a},e.buf=function(e,n){for(var v=-1^n,b=e.length-15,w=0;w<b;)v=y[e[w++]^255&v]^g[e[w++]^v>>8&255]^f[e[w++]^v>>16&255]^h[e[w++]^v>>>24]^u[e[w++]]^p[e[w++]]^d[e[w++]]^m[e[w++]]^c[e[w++]]^l[e[w++]]^i[e[w++]]^r[e[w++]]^s[e[w++]]^o[e[w++]]^a[e[w++]]^t[e[w++]];for(b+=15;w<b;)v=v>>>8^t[255&(v^e[w++])];return~v},e.str=function(e,n){for(var a=-1^n,o=0,s=e.length,r=0,i=0;o<s;)(r=e.charCodeAt(o++))<128?a=a>>>8^t[255&(a^r)]:r<2048?a=(a=a>>>8^t[255&(a^(192|r>>6&31))])>>>8^t[255&(a^(128|63&r))]:r>=55296&&r<57344?(r=64+(1023&r),i=1023&e.charCodeAt(o++),a=(a=(a=(a=a>>>8^t[255&(a^(240|r>>8&7))])>>>8^t[255&(a^(128|r>>2&63))])>>>8^t[255&(a^(128|i>>6&15|(3&r)<<4))])>>>8^t[255&(a^(128|63&i))]):a=(a=(a=a>>>8^t[255&(a^(224|r>>12&15))])>>>8^t[255&(a^(128|r>>6&63))])>>>8^t[255&(a^(128|63&r))];return~a},e}(),Vu=function(){var e,t={};function n(e){if("/"==e.charAt(e.length-1))return-1===e.slice(0,-1).indexOf("/")?e:n(e.slice(0,-1));var t=e.lastIndexOf("/");return-1===t?e:e.slice(0,t+1)}function a(e){if("/"==e.charAt(e.length-1))return a(e.slice(0,-1));var t=e.lastIndexOf("/");return-1===t?e:e.slice(t+1)}function o(e,t){"string"===typeof t&&(t=new Date(t));var n=t.getHours();n=(n=n<<6|t.getMinutes())<<5|t.getSeconds()>>>1,e.write_shift(2,n);var a=t.getFullYear()-1980;a=(a=a<<4|t.getMonth()+1)<<5|t.getDate(),e.write_shift(2,a)}function s(e){Wf(e,0);for(var t={},n=0;e.l<=e.length-4;){var a=e.read_shift(2),o=e.read_shift(2),s=e.l+o,r={};if(21589===a)1&(n=e.read_shift(1))&&(r.mtime=e.read_shift(4)),o>5&&(2&n&&(r.atime=e.read_shift(4)),4&n&&(r.ctime=e.read_shift(4))),r.mtime&&(r.mt=new Date(1e3*r.mtime));e.l=s,t[a]=r}return t}function r(){return e||(e={})}function i(e,t){if(80==e[0]&&75==e[1])return ae(e,t);if(109==(32|e[0])&&105==(32|e[1]))return function(e,t){if("mime-version:"!=x(e.slice(0,13)).toLowerCase())throw new Error("Unsupported MAD header");var n=t&&t.root||"",a=(Up&&Buffer.isBuffer(e)?e.toString("binary"):x(e)).split("\r\n"),o=0,s="";for(o=0;o<a.length;++o)if(s=a[o],/^Content-Location:/i.test(s)&&(s=s.slice(s.indexOf("file")),n||(n=s.slice(0,s.lastIndexOf("/")+1)),s.slice(0,n.length)!=n))for(;n.length>0&&(n=(n=n.slice(0,n.length-1)).slice(0,n.lastIndexOf("/")+1),s.slice(0,n.length)!=n););var r=(a[1]||"").match(/boundary="(.*?)"/);if(!r)throw new Error("MAD cannot find boundary");var i="--"+(r[1]||""),l=[],c=[],m={FileIndex:l,FullPaths:c};p(m);var d,u=0;for(o=0;o<a.length;++o){var h=a[o];h!==i&&h!==i+"--"||(u++&&ce(m,a.slice(d,o),n),d=o)}return m}(e,t);if(e.length<512)throw new Error("CFB file size "+e.length+" < 512");var n,a,o,s,r,i,u=512,h=[],f=e.slice(0,512);Wf(f,0);var g=function(e){if(80==e[e.l]&&75==e[e.l+1])return[0,0];e.chk(v,"Header Signature: "),e.l+=16;var t=e.read_shift(2,"u");return[e.read_shift(2,"u"),t]}(f);switch(n=g[0]){case 3:u=512;break;case 4:u=4096;break;case 0:if(0==g[1])return ae(e,t);default:throw new Error("Major Version: Expected 3 or 4 saw "+n)}512!==u&&Wf(f=e.slice(0,u),28);var b=e.slice(0,u);!function(e,t){var n=9;switch(e.l+=2,n=e.read_shift(2)){case 9:if(3!=t)throw new Error("Sector Shift: Expected 9 saw "+n);break;case 12:if(4!=t)throw new Error("Sector Shift: Expected 12 saw "+n);break;default:throw new Error("Sector Shift: Expected 9 or 12 saw "+n)}e.chk("0600","Mini Sector Shift: "),e.chk("000000000000","Reserved: ")}(f,n);var w=f.read_shift(4,"i");if(3===n&&0!==w)throw new Error("# Directory Sectors: Expected 0 saw "+w);f.l+=4,s=f.read_shift(4,"i"),f.l+=4,f.chk("00100000","Mini Stream Cutoff Size: "),r=f.read_shift(4,"i"),a=f.read_shift(4,"i"),i=f.read_shift(4,"i"),o=f.read_shift(4,"i");for(var k=-1,_=0;_<109&&!((k=f.read_shift(4,"i"))<0);++_)h[_]=k;var T=function(e,t){for(var n=Math.ceil(e.length/t)-1,a=[],o=1;o<n;++o)a[o-1]=e.slice(o*t,(o+1)*t);return a[n-1]=e.slice(n*t),a}(e,u);c(i,o,T,u,h);var S=function(e,t,n,a){var o=e.length,s=[],r=[],i=[],l=[],c=a-1,m=0,d=0,p=0,u=0;for(m=0;m<o;++m)if(i=[],(p=m+t)>=o&&(p-=o),!r[p]){l=[];var h=[];for(d=p;d>=0;){h[d]=!0,r[d]=!0,i[i.length]=d,l.push(e[d]);var f=n[Math.floor(4*d/a)];if(a<4+(u=4*d&c))throw new Error("FAT boundary crossed: "+d+" 4 "+a);if(!e[f])break;if(h[d=Rf(e[f],u)])break}s[p]={nodes:i,data:lf([l])}}return s}(T,s,h,u);S[s].name="!Directory",a>0&&r!==y&&(S[r].name="!MiniFAT"),S[h[0]].name="!FAT",S.fat_addrs=h,S.ssz=u;var C=[],E=[],j=[];!function(e,t,n,a,o,s,r,i){for(var c,p=0,u=a.length?2:0,h=t[e].data,f=0,g=0;f<h.length;f+=128){var v=h.slice(f,f+128);Wf(v,64),g=v.read_shift(2),c=mf(v,0,g-u),a.push(c);var b={name:c,type:v.read_shift(1),color:v.read_shift(1),L:v.read_shift(4,"i"),R:v.read_shift(4,"i"),C:v.read_shift(4,"i"),clsid:v.read_shift(16),state:v.read_shift(4,"i"),start:0,size:0};0!==v.read_shift(2)+v.read_shift(2)+v.read_shift(2)+v.read_shift(2)&&(b.ct=d(v,v.l-8)),0!==v.read_shift(2)+v.read_shift(2)+v.read_shift(2)+v.read_shift(2)&&(b.mt=d(v,v.l-8)),b.start=v.read_shift(4,"i"),b.size=v.read_shift(4,"i"),b.size<0&&b.start<0&&(b.size=b.type=0,b.start=y,b.name=""),5===b.type?(p=b.start,o>0&&p!==y&&(t[p].name="!StreamData")):b.size>=4096?(b.storage="fat",void 0===t[b.start]&&(t[b.start]=m(n,b.start,t.fat_addrs,t.ssz)),t[b.start].name=b.name,b.content=t[b.start].data.slice(0,b.size)):(b.storage="minifat",b.size<0?b.size=0:p!==y&&b.start!==y&&t[p]&&(b.content=l(b,t[p].data,(t[i]||{}).data))),b.content&&Wf(b.content,0),s[c]=b,r.push(b)}}(s,S,T,C,a,{},E,r),function(e,t,n){for(var a=0,o=0,s=0,r=0,i=0,l=n.length,c=[],m=[];a<l;++a)c[a]=m[a]=a,t[a]=n[a];for(;i<m.length;++i)o=e[a=m[i]].L,s=e[a].R,r=e[a].C,c[a]===a&&(-1!==o&&c[o]!==o&&(c[a]=c[o]),-1!==s&&c[s]!==s&&(c[a]=c[s])),-1!==r&&(c[r]=a),-1!==o&&a!=c[a]&&(c[o]=c[a],m.lastIndexOf(o)<i&&m.push(o)),-1!==s&&a!=c[a]&&(c[s]=c[a],m.lastIndexOf(s)<i&&m.push(s));for(a=1;a<l;++a)c[a]===a&&(-1!==s&&c[s]!==s?c[a]=c[s]:-1!==o&&c[o]!==o&&(c[a]=c[o]));for(a=1;a<l;++a)if(0!==e[a].type){if((i=a)!=c[i])do{i=c[i],t[a]=t[i]+"/"+t[a]}while(0!==i&&-1!==c[i]&&i!=c[i]);c[a]=-1}for(t[0]+="/",a=1;a<l;++a)2!==e[a].type&&(t[a]+="/")}(E,j,C),C.shift();var A={FileIndex:E,FullPaths:j};return t&&t.raw&&(A.raw={header:b,sectors:T}),A}function l(e,t,n){for(var a=e.start,o=e.size,s=[],r=a;n&&o>0&&r>=0;)s.push(t.slice(r*g,r*g+g)),o-=g,r=Rf(n,4*r);return 0===s.length?zf(0):Yp(s).slice(0,e.size)}function c(e,t,n,a,o){var s=y;if(e===y){if(0!==t)throw new Error("DIFAT chain shorter than expected")}else if(-1!==e){var r=n[e],i=(a>>>2)-1;if(!r)return;for(var l=0;l<i&&(s=Rf(r,4*l))!==y;++l)o.push(s);c(Rf(r,a-4),t-1,n,a,o)}}function m(e,t,n,a,o){var s=[],r=[];o||(o=[]);var i=a-1,l=0,c=0;for(l=t;l>=0;){o[l]=!0,s[s.length]=l,r.push(e[l]);var m=n[Math.floor(4*l/a)];if(a<4+(c=4*l&i))throw new Error("FAT boundary crossed: "+l+" 4 "+a);if(!e[m])break;l=Rf(e[m],c)}return{nodes:s,data:lf([r])}}function d(e,t){return new Date(1e3*(Of(e,t+4)/1e7*Math.pow(2,32)+Of(e,t)/1e7-11644473600))}function p(e,t){var n=t||{},a=n.root||"Root Entry";if(e.FullPaths||(e.FullPaths=[]),e.FileIndex||(e.FileIndex=[]),e.FullPaths.length!==e.FileIndex.length)throw new Error("inconsistent CFB structure");0===e.FullPaths.length&&(e.FullPaths[0]=a+"/",e.FileIndex[0]={name:a,type:5}),n.CLSID&&(e.FileIndex[0].clsid=n.CLSID),function(e){var t="\x01Sh33tJ5";if(Vu.find(e,"/"+t))return;var n=zf(4);n[0]=55,n[1]=n[3]=50,n[2]=54,e.FileIndex.push({name:t,type:2,content:n,size:4,L:69,R:69,C:69}),e.FullPaths.push(e.FullPaths[0]+t),u(e)}(e)}function u(e,t){p(e);for(var o=!1,s=!1,r=e.FullPaths.length-1;r>=0;--r){var i=e.FileIndex[r];switch(i.type){case 0:s?o=!0:(e.FileIndex.pop(),e.FullPaths.pop());break;case 1:case 2:case 5:s=!0,isNaN(i.R*i.L*i.C)&&(o=!0),i.R>-1&&i.L>-1&&i.R==i.L&&(o=!0);break;default:o=!0}}if(o||t){var l=new Date(1987,1,19),c=0,m=Object.create?Object.create(null):{},d=[];for(r=0;r<e.FullPaths.length;++r)m[e.FullPaths[r]]=!0,0!==e.FileIndex[r].type&&d.push([e.FullPaths[r],e.FileIndex[r]]);for(r=0;r<d.length;++r){var u=n(d[r][0]);(s=m[u])||(d.push([u,{name:a(u).replace("/",""),type:1,clsid:w,ct:l,mt:l,content:null}]),m[u]=!0)}for(d.sort((function(e,t){return function(e,t){for(var n=e.split("/"),a=t.split("/"),o=0,s=0,r=Math.min(n.length,a.length);o<r;++o){if(s=n[o].length-a[o].length)return s;if(n[o]!=a[o])return n[o]<a[o]?-1:1}return n.length-a.length}(e[0],t[0])})),e.FullPaths=[],e.FileIndex=[],r=0;r<d.length;++r)e.FullPaths[r]=d[r][0],e.FileIndex[r]=d[r][1];for(r=0;r<d.length;++r){var h=e.FileIndex[r],f=e.FullPaths[r];if(h.name=a(f).replace("/",""),h.L=h.R=h.C=-(h.color=1),h.size=h.content?h.content.length:0,h.start=0,h.clsid=h.clsid||w,0===r)h.C=d.length>1?1:-1,h.size=0,h.type=5;else if("/"==f.slice(-1)){for(c=r+1;c<d.length&&n(e.FullPaths[c])!=f;++c);for(h.C=c>=d.length?-1:c,c=r+1;c<d.length&&n(e.FullPaths[c])!=n(f);++c);h.R=c>=d.length?-1:c,h.type=1}else n(e.FullPaths[r+1]||"")==n(f)&&(h.R=r+1),h.type=2}}}function h(e,t){var n=t||{};if("mad"==n.fileType)return function(e,t){for(var n=t||{},a=n.boundary||"SheetJS",o=["MIME-Version: 1.0",'Content-Type: multipart/related; boundary="'+(a="------="+a).slice(2)+'"',"","",""],s=e.FullPaths[0],r=s,i=e.FileIndex[0],l=1;l<e.FullPaths.length;++l)if(r=e.FullPaths[l].slice(s.length),(i=e.FileIndex[l]).size&&i.content&&"\x01Sh33tJ5"!=r){r=r.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F\x7E-\xFF]/g,(function(e){return"_x"+e.charCodeAt(0).toString(16)+"_"})).replace(/[\u0080-\uFFFF]/g,(function(e){return"_u"+e.charCodeAt(0).toString(16)+"_"}));for(var c=i.content,m=Up&&Buffer.isBuffer(c)?c.toString("binary"):x(c),d=0,p=Math.min(1024,m.length),u=0,h=0;h<=p;++h)(u=m.charCodeAt(h))>=32&&u<128&&++d;var f=d>=4*p/5;o.push(a),o.push("Content-Location: "+(n.root||"file:///C:/SheetJS/")+r),o.push("Content-Transfer-Encoding: "+(f?"quoted-printable":"base64")),o.push("Content-Type: "+re(i,r)),o.push(""),o.push(f?le(m):ie(m))}return o.push(a+"--\r\n"),o.join("\r\n")}(e,n);if(u(e),"zip"===n.fileType)return function(e,t){var n=t||{},a=[],s=[],r=zf(1),i=n.compression?8:0,l=0;0;var c=0,m=0,d=0,p=0,u=e.FullPaths[0],h=u,f=e.FileIndex[0],g=[],y=0;for(c=1;c<e.FullPaths.length;++c)if(h=e.FullPaths[c].slice(u.length),(f=e.FileIndex[c]).size&&f.content&&"\x01Sh33tJ5"!=h){var v=d,b=zf(h.length);for(m=0;m<h.length;++m)b.write_shift(1,127&h.charCodeAt(m));b=b.slice(0,b.l),g[p]=Gu.buf(f.content,0);var w=f.content;8==i&&(w=_(w)),(r=zf(30)).write_shift(4,67324752),r.write_shift(2,20),r.write_shift(2,l),r.write_shift(2,i),f.mt?o(r,f.mt):r.write_shift(4,0),r.write_shift(-4,8&l?0:g[p]),r.write_shift(4,8&l?0:w.length),r.write_shift(4,8&l?0:f.content.length),r.write_shift(2,b.length),r.write_shift(2,0),d+=r.length,a.push(r),d+=b.length,a.push(b),d+=w.length,a.push(w),8&l&&((r=zf(12)).write_shift(-4,g[p]),r.write_shift(4,w.length),r.write_shift(4,f.content.length),d+=r.l,a.push(r)),(r=zf(46)).write_shift(4,33639248),r.write_shift(2,0),r.write_shift(2,20),r.write_shift(2,l),r.write_shift(2,i),r.write_shift(4,0),r.write_shift(-4,g[p]),r.write_shift(4,w.length),r.write_shift(4,f.content.length),r.write_shift(2,b.length),r.write_shift(2,0),r.write_shift(2,0),r.write_shift(2,0),r.write_shift(2,0),r.write_shift(4,0),r.write_shift(4,v),y+=r.l,s.push(r),y+=b.length,s.push(b),++p}return r=zf(22),r.write_shift(4,101010256),r.write_shift(2,0),r.write_shift(2,0),r.write_shift(2,p),r.write_shift(2,p),r.write_shift(4,y),r.write_shift(4,d),r.write_shift(2,0),Yp([Yp(a),Yp(s),r])}(e,n);var a=function(e){for(var t=0,n=0,a=0;a<e.FileIndex.length;++a){var o=e.FileIndex[a];if(o.content){var s=o.content.length;s>0&&(s<4096?t+=s+63>>6:n+=s+511>>9)}}for(var r=e.FullPaths.length+3>>2,i=t+127>>7,l=(t+7>>3)+n+r+i,c=l+127>>7,m=c<=109?0:Math.ceil((c-109)/127);l+c+m+127>>7>c;)m=++c<=109?0:Math.ceil((c-109)/127);var d=[1,m,c,i,r,n,t,0];return e.FileIndex[0].size=t<<6,d[7]=(e.FileIndex[0].start=d[0]+d[1]+d[2]+d[3]+d[4]+d[5])+(d[6]+7>>3),d}(e),s=zf(a[7]<<9),r=0,i=0;for(r=0;r<8;++r)s.write_shift(1,b[r]);for(r=0;r<8;++r)s.write_shift(2,0);for(s.write_shift(2,62),s.write_shift(2,3),s.write_shift(2,65534),s.write_shift(2,9),s.write_shift(2,6),r=0;r<3;++r)s.write_shift(2,0);for(s.write_shift(4,0),s.write_shift(4,a[2]),s.write_shift(4,a[0]+a[1]+a[2]+a[3]-1),s.write_shift(4,0),s.write_shift(4,4096),s.write_shift(4,a[3]?a[0]+a[1]+a[2]-1:y),s.write_shift(4,a[3]),s.write_shift(-4,a[1]?a[0]-1:y),s.write_shift(4,a[1]),r=0;r<109;++r)s.write_shift(-4,r<a[2]?a[1]+r:-1);if(a[1])for(i=0;i<a[1];++i){for(;r<236+127*i;++r)s.write_shift(-4,r<a[2]?a[1]+r:-1);s.write_shift(-4,i===a[1]-1?y:i+1)}var l=function(e){for(i+=e;r<i-1;++r)s.write_shift(-4,r+1);e&&(++r,s.write_shift(-4,y))};for(i=r=0,i+=a[1];r<i;++r)s.write_shift(-4,k.DIFSECT);for(i+=a[2];r<i;++r)s.write_shift(-4,k.FATSECT);l(a[3]),l(a[4]);for(var c=0,m=0,d=e.FileIndex[0];c<e.FileIndex.length;++c)(d=e.FileIndex[c]).content&&((m=d.content.length)<4096||(d.start=i,l(m+511>>9)));for(l(a[6]+7>>3);511&s.l;)s.write_shift(-4,k.ENDOFCHAIN);for(i=r=0,c=0;c<e.FileIndex.length;++c)(d=e.FileIndex[c]).content&&(!(m=d.content.length)||m>=4096||(d.start=i,l(m+63>>6)));for(;511&s.l;)s.write_shift(-4,k.ENDOFCHAIN);for(r=0;r<a[4]<<2;++r){var p=e.FullPaths[r];if(p&&0!==p.length){d=e.FileIndex[r],0===r&&(d.start=d.size?d.start-1:y);var h=0===r&&n.root||d.name;if(m=2*(h.length+1),s.write_shift(64,h,"utf16le"),s.write_shift(2,m),s.write_shift(1,d.type),s.write_shift(1,d.color),s.write_shift(-4,d.L),s.write_shift(-4,d.R),s.write_shift(-4,d.C),d.clsid)s.write_shift(16,d.clsid,"hex");else for(c=0;c<4;++c)s.write_shift(4,0);s.write_shift(4,d.state||0),s.write_shift(4,0),s.write_shift(4,0),s.write_shift(4,0),s.write_shift(4,0),s.write_shift(4,d.start),s.write_shift(4,d.size),s.write_shift(4,0)}else{for(c=0;c<17;++c)s.write_shift(4,0);for(c=0;c<3;++c)s.write_shift(4,-1);for(c=0;c<12;++c)s.write_shift(4,0)}}for(r=1;r<e.FileIndex.length;++r)if((d=e.FileIndex[r]).size>=4096)if(s.l=d.start+1<<9,Up&&Buffer.isBuffer(d.content))d.content.copy(s,s.l,0,d.size),s.l+=d.size+511&-512;else{for(c=0;c<d.size;++c)s.write_shift(1,d.content[c]);for(;511&c;++c)s.write_shift(1,0)}for(r=1;r<e.FileIndex.length;++r)if((d=e.FileIndex[r]).size>0&&d.size<4096)if(Up&&Buffer.isBuffer(d.content))d.content.copy(s,s.l,0,d.size),s.l+=d.size+63&-64;else{for(c=0;c<d.size;++c)s.write_shift(1,d.content[c]);for(;63&c;++c)s.write_shift(1,0)}if(Up)s.l=s.length;else for(;s.l<s.length;)s.write_shift(1,0);return s}t.version="1.2.1";var f,g=64,y=-2,v="d0cf11e0a1b11ae1",b=[208,207,17,224,161,177,26,225],w="00000000000000000000000000000000",k={MAXREGSECT:-6,DIFSECT:-4,FATSECT:-3,ENDOFCHAIN:y,FREESECT:-1,HEADER_SIGNATURE:v,HEADER_MINOR_VERSION:"3e00",MAXREGSID:-6,NOSTREAM:-1,HEADER_CLSID:w,EntryTypes:["unknown","storage","stream","lockbytes","property","root"]};function x(e){for(var t=new Array(e.length),n=0;n<e.length;++n)t[n]=String.fromCharCode(e[n]);return t.join("")}function _(e){return f?f.deflateRawSync(e):q(e)}var T=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],S=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258],C=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577];function E(e){var t=139536&(e<<1|e<<11)|558144&(e<<5|e<<15);return 255&(t>>16|t>>8|t)}for(var j="undefined"!==typeof Uint8Array,A=j?new Uint8Array(256):[],N=0;N<256;++N)A[N]=E(N);function D(e,t){var n=A[255&e];return t<=8?n>>>8-t:(n=n<<8|A[e>>8&255],t<=16?n>>>16-t:(n=n<<8|A[e>>16&255])>>>24-t)}function O(e,t){var n=7&t,a=t>>>3;return(e[a]|(n<=6?0:e[a+1]<<8))>>>n&3}function R(e,t){var n=7&t,a=t>>>3;return(e[a]|(n<=5?0:e[a+1]<<8))>>>n&7}function P(e,t){var n=7&t,a=t>>>3;return(e[a]|(n<=3?0:e[a+1]<<8))>>>n&31}function I(e,t){var n=7&t,a=t>>>3;return(e[a]|(n<=1?0:e[a+1]<<8))>>>n&127}function L(e,t,n){var a=7&t,o=t>>>3,s=(1<<n)-1,r=e[o]>>>a;return n<8-a?r&s:(r|=e[o+1]<<8-a,n<16-a?r&s:(r|=e[o+2]<<16-a,n<24-a?r&s:(r|=e[o+3]<<24-a)&s))}function F(e,t,n){var a=7&t,o=t>>>3;return a<=5?e[o]|=(7&n)<<a:(e[o]|=n<<a&255,e[o+1]=(7&n)>>8-a),t+3}function M(e,t,n){return n=(1&n)<<(7&t),e[t>>>3]|=n,t+1}function W(e,t,n){var a=t>>>3;return n<<=7&t,e[a]|=255&n,n>>>=8,e[a+1]=n,t+8}function B(e,t,n){var a=t>>>3;return n<<=7&t,e[a]|=255&n,n>>>=8,e[a+1]=255&n,e[a+2]=n>>>8,t+16}function z(e,t){var n=e.length,a=2*n>t?2*n:t+5,o=0;if(n>=t)return e;if(Up){var s=Vp(a);if(e.copy)e.copy(s);else for(;o<e.length;++o)s[o]=e[o];return s}if(j){var r=new Uint8Array(a);if(r.set)r.set(e);else for(;o<n;++o)r[o]=e[o];return r}return e.length=a,e}function U(e){for(var t=new Array(e),n=0;n<e;++n)t[n]=0;return t}function H(e,t,n){var a=1,o=0,s=0,r=0,i=0,l=e.length,c=j?new Uint16Array(32):U(32);for(s=0;s<32;++s)c[s]=0;for(s=l;s<n;++s)e[s]=0;l=e.length;var m=j?new Uint16Array(l):U(l);for(s=0;s<l;++s)c[o=e[s]]++,a<o&&(a=o),m[s]=0;for(c[0]=0,s=1;s<=a;++s)c[s+16]=i=i+c[s-1]<<1;for(s=0;s<l;++s)0!=(i=e[s])&&(m[s]=c[i+16]++);var d=0;for(s=0;s<l;++s)if(0!=(d=e[s]))for(i=D(m[s],a)>>a-d,r=(1<<a+4-d)-1;r>=0;--r)t[i|r<<d]=15&d|s<<4;return a}var G=j?new Uint16Array(512):U(512),V=j?new Uint16Array(32):U(32);if(!j){for(var K=0;K<512;++K)G[K]=0;for(K=0;K<32;++K)V[K]=0}!function(){for(var e=[],t=0;t<32;t++)e.push(5);H(e,V,32);var n=[];for(t=0;t<=143;t++)n.push(8);for(;t<=255;t++)n.push(9);for(;t<=279;t++)n.push(7);for(;t<=287;t++)n.push(8);H(n,G,288)}();var $=function(){for(var e=j?new Uint8Array(32768):[],t=0,n=0;t<C.length-1;++t)for(;n<C[t+1];++n)e[n]=t;for(;n<32768;++n)e[n]=29;var a=j?new Uint8Array(259):[];for(t=0,n=0;t<S.length-1;++t)for(;n<S[t+1];++n)a[n]=t;return function(t,n){return t.length<8?function(e,t){for(var n=0;n<e.length;){var a=Math.min(65535,e.length-n),o=n+a==e.length;for(t.write_shift(1,+o),t.write_shift(2,a),t.write_shift(2,65535&~a);a-- >0;)t[t.l++]=e[n++]}return t.l}(t,n):function(t,n){for(var o=0,s=0,r=j?new Uint16Array(32768):[];s<t.length;){var i=Math.min(65535,t.length-s);if(i<10){for(7&(o=F(n,o,+!(s+i!=t.length)))&&(o+=8-(7&o)),n.l=o/8|0,n.write_shift(2,i),n.write_shift(2,65535&~i);i-- >0;)n[n.l++]=t[s++];o=8*n.l}else{o=F(n,o,+!(s+i!=t.length)+2);for(var l=0;i-- >0;){var c=t[s],m=-1,d=0;if((m=r[l=32767&(l<<5^c)])&&((m|=-32768&s)>s&&(m-=32768),m<s))for(;t[m+d]==t[s+d]&&d<250;)++d;if(d>2){(c=a[d])<=22?o=W(n,o,A[c+1]>>1)-1:(W(n,o,3),W(n,o+=5,A[c-23]>>5),o+=3);var p=c<8?0:c-4>>2;p>0&&(B(n,o,d-S[c]),o+=p),c=e[s-m],o=W(n,o,A[c]>>3),o-=3;var u=c<4?0:c-2>>1;u>0&&(B(n,o,s-m-C[c]),o+=u);for(var h=0;h<d;++h)r[l]=32767&s,l=32767&(l<<5^t[s]),++s;i-=d-1}else c<=143?c+=48:o=M(n,o,1),o=W(n,o,A[c]),r[l]=32767&s,++s}o=W(n,o,0)-1}}return n.l=(o+7)/8|0,n.l}(t,n)}}();function q(e){var t=zf(50+Math.floor(1.1*e.length)),n=$(e,t);return t.slice(0,n)}var Y=j?new Uint16Array(32768):U(32768),Z=j?new Uint16Array(32768):U(32768),J=j?new Uint16Array(128):U(128),X=1,Q=1;function ee(e,t){var n=P(e,t)+257,a=P(e,t+=5)+1,o=function(e,t){var n=7&t,a=t>>>3;return(e[a]|(n<=4?0:e[a+1]<<8))>>>n&15}(e,t+=5)+4;t+=4;for(var s=0,r=j?new Uint8Array(19):U(19),i=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],l=1,c=j?new Uint8Array(8):U(8),m=j?new Uint8Array(8):U(8),d=r.length,p=0;p<o;++p)r[T[p]]=s=R(e,t),l<s&&(l=s),c[s]++,t+=3;var u=0;for(c[0]=0,p=1;p<=l;++p)m[p]=u=u+c[p-1]<<1;for(p=0;p<d;++p)0!=(u=r[p])&&(i[p]=m[u]++);var h=0;for(p=0;p<d;++p)if(0!=(h=r[p])){u=A[i[p]]>>8-h;for(var f=(1<<7-h)-1;f>=0;--f)J[u|f<<h]=7&h|p<<3}var g=[];for(l=1;g.length<n+a;)switch(t+=7&(u=J[I(e,t)]),u>>>=3){case 16:for(s=3+O(e,t),t+=2,u=g[g.length-1];s-- >0;)g.push(u);break;case 17:for(s=3+R(e,t),t+=3;s-- >0;)g.push(0);break;case 18:for(s=11+I(e,t),t+=7;s-- >0;)g.push(0);break;default:g.push(u),l<u&&(l=u)}var y=g.slice(0,n),v=g.slice(n);for(p=n;p<286;++p)y[p]=0;for(p=a;p<30;++p)v[p]=0;return X=H(y,Y,286),Q=H(v,Z,30),t}function te(e,t){var n=function(e,t){if(3==e[0]&&!(3&e[1]))return[Gp(t),2];for(var n=0,a=0,o=Vp(t||1<<18),s=0,r=o.length>>>0,i=0,l=0;0==(1&a);)if(a=R(e,n),n+=3,a>>>1!=0)for(a>>1==1?(i=9,l=5):(n=ee(e,n),i=X,l=Q);;){!t&&r<s+32767&&(r=(o=z(o,s+32767)).length);var c=L(e,n,i),m=a>>>1==1?G[c]:Y[c];if(n+=15&m,0===((m>>>=4)>>>8&255))o[s++]=m;else{if(256==m)break;var d=(m-=257)<8?0:m-4>>2;d>5&&(d=0);var p=s+S[m];d>0&&(p+=L(e,n,d),n+=d),c=L(e,n,l),n+=15&(m=a>>>1==1?V[c]:Z[c]);var u=(m>>>=4)<4?0:m-2>>1,h=C[m];for(u>0&&(h+=L(e,n,u),n+=u),!t&&r<p&&(r=(o=z(o,p+100)).length);s<p;)o[s]=o[s-h],++s}}else{7&n&&(n+=8-(7&n));var f=e[n>>>3]|e[1+(n>>>3)]<<8;if(n+=32,f>0)for(!t&&r<s+f&&(r=(o=z(o,s+f)).length);f-- >0;)o[s++]=e[n>>>3],n+=8}return t?[o,n+7>>>3]:[o.slice(0,s),n+7>>>3]}(e.slice(e.l||0),t);return e.l+=n[1],n[0]}function ne(e,t){if(!e)throw new Error(t);"undefined"!==typeof console&&console.error(t)}function ae(e,t){var n=e;Wf(n,0);var a={FileIndex:[],FullPaths:[]};p(a,{root:t.root});for(var o=n.length-4;(80!=n[o]||75!=n[o+1]||5!=n[o+2]||6!=n[o+3])&&o>=0;)--o;n.l=o+4,n.l+=4;var r=n.read_shift(2);n.l+=6;var i=n.read_shift(4);for(n.l=i,o=0;o<r;++o){n.l+=20;var l=n.read_shift(4),c=n.read_shift(4),m=n.read_shift(2),d=n.read_shift(2),u=n.read_shift(2);n.l+=8;var h=n.read_shift(4),f=s(n.slice(n.l+m,n.l+m+d));n.l+=m+d+u;var g=n.l;n.l=h+4,oe(n,l,c,a,f),n.l=g}return a}function oe(e,t,n,a,o){e.l+=2;var r=e.read_shift(2),i=e.read_shift(2),l=function(e){var t=65535&e.read_shift(2),n=65535&e.read_shift(2),a=new Date,o=31&n,s=15&(n>>>=5);n>>>=4,a.setMilliseconds(0),a.setFullYear(n+1980),a.setMonth(s-1),a.setDate(o);var r=31&t,i=63&(t>>>=5);return t>>>=6,a.setHours(t),a.setMinutes(i),a.setSeconds(r<<1),a}(e);if(8257&r)throw new Error("Unsupported ZIP encryption");e.read_shift(4);for(var c=e.read_shift(4),m=e.read_shift(4),d=e.read_shift(2),p=e.read_shift(2),u="",h=0;h<d;++h)u+=String.fromCharCode(e[e.l++]);if(p){var g=s(e.slice(e.l,e.l+p));(g[21589]||{}).mt&&(l=g[21589].mt),((o||{})[21589]||{}).mt&&(l=o[21589].mt)}e.l+=p;var y=e.slice(e.l,e.l+c);switch(i){case 8:y=function(e,t){if(!f)return te(e,t);var n=new(0,f.InflateRaw),a=n._processChunk(e.slice(e.l),n._finishFlushFlag);return e.l+=n.bytesRead,a}(e,m);break;case 0:break;default:throw new Error("Unsupported ZIP Compression method "+i)}var v=!1;8&r&&(134695760==e.read_shift(4)&&(e.read_shift(4),v=!0),c=e.read_shift(4),m=e.read_shift(4)),c!=t&&ne(v,"Bad compressed size: "+t+" != "+c),m!=n&&ne(v,"Bad uncompressed size: "+n+" != "+m),me(a,u,y,{unsafe:!0,mt:l})}var se={htm:"text/html",xml:"text/xml",gif:"image/gif",jpg:"image/jpeg",png:"image/png",mso:"application/x-mso",thmx:"application/vnd.ms-officetheme",sh33tj5:"application/octet-stream"};function re(e,t){if(e.ctype)return e.ctype;var n=e.name||"",a=n.match(/\.([^\.]+)$/);return a&&se[a[1]]||t&&(a=(n=t).match(/[\.\\]([^\.\\])+$/))&&se[a[1]]?se[a[1]]:"application/octet-stream"}function ie(e){for(var t=Bp(e),n=[],a=0;a<t.length;a+=76)n.push(t.slice(a,a+76));return n.join("\r\n")+"\r\n"}function le(e){var t=e.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F\x7E-\xFF=]/g,(function(e){var t=e.charCodeAt(0).toString(16).toUpperCase();return"="+(1==t.length?"0"+t:t)}));"\n"==(t=t.replace(/ $/gm,"=20").replace(/\t$/gm,"=09")).charAt(0)&&(t="=0D"+t.slice(1));for(var n=[],a=(t=t.replace(/\r(?!\n)/gm,"=0D").replace(/\n\n/gm,"\n=0A").replace(/([^\r\n])\n/gm,"$1=0A")).split("\r\n"),o=0;o<a.length;++o){var s=a[o];if(0!=s.length)for(var r=0;r<s.length;){var i=76,l=s.slice(r,r+i);"="==l.charAt(i-1)?i--:"="==l.charAt(i-2)?i-=2:"="==l.charAt(i-3)&&(i-=3),l=s.slice(r,r+i),(r+=i)<s.length&&(l+="="),n.push(l)}else n.push("")}return n.join("\r\n")}function ce(e,t,n){for(var a,o="",s="",r="",i=0;i<10;++i){var l=t[i];if(!l||l.match(/^\s*$/))break;var c=l.match(/^(.*?):\s*([^\s].*)$/);if(c)switch(c[1].toLowerCase()){case"content-location":o=c[2].trim();break;case"content-type":r=c[2].trim();break;case"content-transfer-encoding":s=c[2].trim()}}switch(++i,s.toLowerCase()){case"base64":a=Kp(zp(t.slice(i).join("")));break;case"quoted-printable":a=function(e){for(var t=[],n=0;n<e.length;++n){for(var a=e[n];n<=e.length&&"="==a.charAt(a.length-1);)a=a.slice(0,a.length-1)+e[++n];t.push(a)}for(var o=0;o<t.length;++o)t[o]=t[o].replace(/[=][0-9A-Fa-f]{2}/g,(function(e){return String.fromCharCode(parseInt(e.slice(1),16))}));return Kp(t.join("\r\n"))}(t.slice(i));break;default:throw new Error("Unsupported Content-Transfer-Encoding "+s)}var m=me(e,o.slice(n.length),a,{unsafe:!0});r&&(m.ctype=r)}function me(e,t,n,o){var s=o&&o.unsafe;s||p(e);var r=!s&&Vu.find(e,t);if(!r){var i=e.FullPaths[0];t.slice(0,i.length)==i?i=t:("/"!=i.slice(-1)&&(i+="/"),i=(i+t).replace("//","/")),r={name:a(t),type:2},e.FileIndex.push(r),e.FullPaths.push(i),s||Vu.utils.cfb_gc(e)}return r.content=n,r.size=n?n.length:0,o&&(o.CLSID&&(r.clsid=o.CLSID),o.mt&&(r.mt=o.mt),o.ct&&(r.ct=o.ct)),r}return t.find=function(e,t){var n=e.FullPaths.map((function(e){return e.toUpperCase()})),a=n.map((function(e){var t=e.split("/");return t[t.length-("/"==e.slice(-1)?2:1)]})),o=!1;47===t.charCodeAt(0)?(o=!0,t=n[0].slice(0,-1)+t):o=-1!==t.indexOf("/");var s=t.toUpperCase(),r=!0===o?n.indexOf(s):a.indexOf(s);if(-1!==r)return e.FileIndex[r];var i=!s.match(Jp);for(s=s.replace(Zp,""),i&&(s=s.replace(Jp,"!")),r=0;r<n.length;++r){if((i?n[r].replace(Jp,"!"):n[r]).replace(Zp,"")==s)return e.FileIndex[r];if((i?a[r].replace(Jp,"!"):a[r]).replace(Zp,"")==s)return e.FileIndex[r]}return null},t.read=function(t,n){var a=n&&n.type;switch(a||Up&&Buffer.isBuffer(t)&&(a="buffer"),a||"base64"){case"file":return function(t,n){return r(),i(e.readFileSync(t),n)}(t,n);case"base64":return i(Kp(zp(t)),n);case"binary":return i(Kp(t),n)}return i(t,n)},t.parse=i,t.write=function(t,n){var a=h(t,n);switch(n&&n.type||"buffer"){case"file":return r(),e.writeFileSync(n.filename,a),a;case"binary":return"string"==typeof a?a:x(a);case"base64":return Bp("string"==typeof a?a:x(a));case"buffer":if(Up)return Buffer.isBuffer(a)?a:Hp(a);case"array":return"string"==typeof a?Kp(a):a}return a},t.writeFile=function(t,n,a){r();var o=h(t,a);e.writeFileSync(n,o)},t.utils={cfb_new:function(e){var t={};return p(t,e),t},cfb_add:me,cfb_del:function(e,t){p(e);var n=Vu.find(e,t);if(n)for(var a=0;a<e.FileIndex.length;++a)if(e.FileIndex[a]==n)return e.FileIndex.splice(a,1),e.FullPaths.splice(a,1),!0;return!1},cfb_mov:function(e,t,n){p(e);var o=Vu.find(e,t);if(o)for(var s=0;s<e.FileIndex.length;++s)if(e.FileIndex[s]==o)return e.FileIndex[s].name=a(n),e.FullPaths[s]=n,!0;return!1},cfb_gc:function(e){u(e,!0)},ReadShift:If,CheckField:Mf,prep_blob:Wf,bconcat:Yp,use_zlib:function(e){try{var t=new(0,e.InflateRaw);if(t._processChunk(new Uint8Array([3,0]),t._finishFlushFlag),!t.bytesRead)throw new Error("zlib does not expose bytesRead");f=e}catch(n){console.error("cannot use native zlib: "+(n.message||n))}},_deflateRaw:q,_inflateRaw:te,consts:k},t}();let Ku;function $u(e){return"string"===typeof e?$p(e):Array.isArray(e)?function(e){if("undefined"===typeof Uint8Array)throw new Error("Unsupported");return new Uint8Array(e)}(e):e}function qu(e,t,n){if("undefined"!==typeof Ku&&Ku.writeFileSync)return n?Ku.writeFileSync(e,t,n):Ku.writeFileSync(e,t);if("undefined"!==typeof Deno){if(n&&"string"==typeof t)switch(n){case"utf8":t=new TextEncoder(n).encode(t);break;case"binary":t=$p(t);break;default:throw new Error("Unsupported encoding "+n)}return Deno.writeFileSync(e,t)}var a="utf8"==n?Oh(t):t;if("undefined"!==typeof IE_SaveFile)return IE_SaveFile(a,e);if("undefined"!==typeof Blob){var o=new Blob([$u(a)],{type:"application/octet-stream"});if("undefined"!==typeof navigator&&navigator.msSaveBlob)return navigator.msSaveBlob(o,e);if("undefined"!==typeof saveAs)return saveAs(o,e);if("undefined"!==typeof URL&&"undefined"!==typeof document&&document.createElement&&URL.createObjectURL){var s=URL.createObjectURL(o);if("object"===typeof chrome&&"function"==typeof(chrome.downloads||{}).download)return URL.revokeObjectURL&&"undefined"!==typeof setTimeout&&setTimeout((function(){URL.revokeObjectURL(s)}),6e4),chrome.downloads.download({url:s,filename:e,saveAs:!0});var r=document.createElement("a");if(null!=r.download)return r.download=e,r.href=s,document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL&&"undefined"!==typeof setTimeout&&setTimeout((function(){URL.revokeObjectURL(s)}),6e4),s}}if("undefined"!==typeof $&&"undefined"!==typeof File&&"undefined"!==typeof Folder)try{var i=File(e);return i.open("w"),i.encoding="binary",Array.isArray(t)&&(t=qp(t)),i.write(t),i.close(),t}catch(l){if(!l.message||!l.message.match(/onstruct/))throw l}throw new Error("cannot save file "+e)}function Yu(e){for(var t=Object.keys(e),n=[],a=0;a<t.length;++a)Object.prototype.hasOwnProperty.call(e,t[a])&&n.push(t[a]);return n}function Zu(e,t){for(var n=[],a=Yu(e),o=0;o!==a.length;++o)null==n[e[a[o]][t]]&&(n[e[a[o]][t]]=a[o]);return n}function Ju(e){for(var t=[],n=Yu(e),a=0;a!==n.length;++a)t[e[n[a]]]=n[a];return t}function Xu(e){for(var t=[],n=Yu(e),a=0;a!==n.length;++a)t[e[n[a]]]=parseInt(n[a],10);return t}var Qu=new Date(1899,11,30,0,0,0);function eh(e,t){var n=e.getTime();return t&&(n-=1263168e5),(n-(Qu.getTime()+6e4*(e.getTimezoneOffset()-Qu.getTimezoneOffset())))/864e5}var th=new Date,nh=Qu.getTime()+6e4*(th.getTimezoneOffset()-Qu.getTimezoneOffset()),ah=th.getTimezoneOffset();function oh(e){var t=new Date;return t.setTime(24*e*60*60*1e3+nh),t.getTimezoneOffset()!==ah&&t.setTime(t.getTime()+6e4*(t.getTimezoneOffset()-ah)),t}var sh=new Date("2017-02-19T19:06:09.000Z"),rh=isNaN(sh.getFullYear())?new Date("2/19/17"):sh,ih=2017==rh.getFullYear();function lh(e,t){var n=new Date(e);if(ih)return t>0?n.setTime(n.getTime()+60*n.getTimezoneOffset()*1e3):t<0&&n.setTime(n.getTime()-60*n.getTimezoneOffset()*1e3),n;if(e instanceof Date)return e;if(1917==rh.getFullYear()&&!isNaN(n.getFullYear())){var a=n.getFullYear();return e.indexOf(""+a)>-1||n.setFullYear(n.getFullYear()+100),n}var o=e.match(/\d+/g)||["2017","2","19","0","0","0"],s=new Date(+o[0],+o[1]-1,+o[2],+o[3]||0,+o[4]||0,+o[5]||0);return e.indexOf("Z")>-1&&(s=new Date(s.getTime()-60*s.getTimezoneOffset()*1e3)),s}function ch(e,t){if(Up&&Buffer.isBuffer(e)){if(t){if(255==e[0]&&254==e[1])return Oh(e.slice(2).toString("utf16le"));if(254==e[1]&&255==e[2])return Oh(Ip(e.slice(2).toString("binary")))}return e.toString("binary")}if("undefined"!==typeof TextDecoder)try{if(t){if(255==e[0]&&254==e[1])return Oh(new TextDecoder("utf-16le").decode(e.slice(2)));if(254==e[0]&&255==e[1])return Oh(new TextDecoder("utf-16be").decode(e.slice(2)))}var n={"\u20ac":"\x80","\u201a":"\x82","\u0192":"\x83","\u201e":"\x84","\u2026":"\x85","\u2020":"\x86","\u2021":"\x87","\u02c6":"\x88","\u2030":"\x89","\u0160":"\x8a","\u2039":"\x8b","\u0152":"\x8c","\u017d":"\x8e","\u2018":"\x91","\u2019":"\x92","\u201c":"\x93","\u201d":"\x94","\u2022":"\x95","\u2013":"\x96","\u2014":"\x97","\u02dc":"\x98","\u2122":"\x99","\u0161":"\x9a","\u203a":"\x9b","\u0153":"\x9c","\u017e":"\x9e","\u0178":"\x9f"};return Array.isArray(e)&&(e=new Uint8Array(e)),new TextDecoder("latin1").decode(e).replace(/[\u20ac\u201a\u0192\u201e\u2026\u2020\u2021\u02c6\u2030\u0160\u2039\u0152\u017d\u2018\u2019\u201c\u201d\u2022\u2013\u2014\u02dc\u2122\u0161\u203a\u0153\u017e\u0178]/g,(function(e){return n[e]||e}))}catch(s){}for(var a=[],o=0;o!=e.length;++o)a.push(String.fromCharCode(e[o]));return a.join("")}function mh(e){if("undefined"!=typeof JSON&&!Array.isArray(e))return JSON.parse(JSON.stringify(e));if("object"!=typeof e||null==e)return e;if(e instanceof Date)return new Date(e.getTime());var t={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=mh(e[n]));return t}function dh(e,t){for(var n="";n.length<t;)n+=e;return n}function ph(e){var t=Number(e);if(!isNaN(t))return isFinite(t)?t:NaN;if(!/\d/.test(e))return t;var n=1,a=e.replace(/([\d]),([\d])/g,"$1$2").replace(/[$]/g,"").replace(/[%]/g,(function(){return n*=100,""}));return isNaN(t=Number(a))?(a=a.replace(/[(](.*)[)]/,(function(e,t){return n=-n,t})),isNaN(t=Number(a))?t:t/n):t/n}var uh=["january","february","march","april","may","june","july","august","september","october","november","december"];function hh(e){var t=new Date(e),n=new Date(NaN),a=t.getYear(),o=t.getMonth(),s=t.getDate();if(isNaN(s))return n;var r=e.toLowerCase();if(r.match(/jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec/)){if((r=r.replace(/[^a-z]/g,"").replace(/([^a-z]|^)[ap]m?([^a-z]|$)/,"")).length>3&&-1==uh.indexOf(r))return n}else if(r.match(/[a-z]/))return n;return a<0||a>8099?n:(o>0||s>1)&&101!=a?t:e.match(/[^-0-9:,\/\\]/)?n:t}function fh(e,t,n){if(e.FullPaths){var a;if("string"==typeof n)return a=Up?Hp(n):function(e){for(var t=[],n=0,a=e.length+250,o=Gp(e.length+255),s=0;s<e.length;++s){var r=e.charCodeAt(s);if(r<128)o[n++]=r;else if(r<2048)o[n++]=192|r>>6&31,o[n++]=128|63&r;else if(r>=55296&&r<57344){r=64+(1023&r);var i=1023&e.charCodeAt(++s);o[n++]=240|r>>8&7,o[n++]=128|r>>2&63,o[n++]=128|i>>6&15|(3&r)<<4,o[n++]=128|63&i}else o[n++]=224|r>>12&15,o[n++]=128|r>>6&63,o[n++]=128|63&r;n>a&&(t.push(o.slice(0,n)),n=0,o=Gp(65535),a=65530)}return t.push(o.slice(0,n)),Yp(t)}(n),Vu.utils.cfb_add(e,t,a);Vu.utils.cfb_add(e,t,n)}else e.file(t,n)}function gh(){return Vu.utils.cfb_new()}var yh='<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r\n';var vh={""":'"',"'":"'",">":">","<":"<","&":"&"},bh=Ju(vh),wh=/[&<>'"]/g,kh=/[\u0000-\u0008\u000b-\u001f]/g;function xh(e){return(e+"").replace(wh,(function(e){return bh[e]})).replace(kh,(function(e){return"_x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+"_"}))}function _h(e){return xh(e).replace(/ /g,"_x0020_")}var Th=/[\u0000-\u001f]/g;function Sh(e){return(e+"").replace(wh,(function(e){return bh[e]})).replace(/\n/g,"<br/>").replace(Th,(function(e){return"&#x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+";"}))}function Ch(e){switch(e){case 1:case!0:case"1":case"true":case"TRUE":return!0;default:return!1}}function Eh(e){for(var t="",n=0,a=0,o=0,s=0,r=0,i=0;n<e.length;)(a=e.charCodeAt(n++))<128?t+=String.fromCharCode(a):(o=e.charCodeAt(n++),a>191&&a<224?(r=(31&a)<<6,r|=63&o,t+=String.fromCharCode(r)):(s=e.charCodeAt(n++),a<240?t+=String.fromCharCode((15&a)<<12|(63&o)<<6|63&s):(i=((7&a)<<18|(63&o)<<12|(63&s)<<6|63&(r=e.charCodeAt(n++)))-65536,t+=String.fromCharCode(55296+(i>>>10&1023)),t+=String.fromCharCode(56320+(1023&i)))));return t}function jh(e){var t,n,a,o=Gp(2*e.length),s=1,r=0,i=0;for(n=0;n<e.length;n+=s)s=1,(a=e.charCodeAt(n))<128?t=a:a<224?(t=64*(31&a)+(63&e.charCodeAt(n+1)),s=2):a<240?(t=4096*(15&a)+64*(63&e.charCodeAt(n+1))+(63&e.charCodeAt(n+2)),s=3):(s=4,t=262144*(7&a)+4096*(63&e.charCodeAt(n+1))+64*(63&e.charCodeAt(n+2))+(63&e.charCodeAt(n+3)),i=55296+((t-=65536)>>>10&1023),t=56320+(1023&t)),0!==i&&(o[r++]=255&i,o[r++]=i>>>8,i=0),o[r++]=t%256,o[r++]=t>>>8;return o.slice(0,r).toString("ucs2")}function Ah(e){return Hp(e,"binary").toString("utf8")}var Nh="foo bar baz\xe2\x98\x83\xf0\x9f\x8d\xa3",Dh=Up&&(Ah(Nh)==Eh(Nh)&&Ah||jh(Nh)==Eh(Nh)&&jh)||Eh,Oh=Up?function(e){return Hp(e,"utf8").toString("binary")}:function(e){for(var t=[],n=0,a=0,o=0;n<e.length;)switch(a=e.charCodeAt(n++),!0){case a<128:t.push(String.fromCharCode(a));break;case a<2048:t.push(String.fromCharCode(192+(a>>6))),t.push(String.fromCharCode(128+(63&a)));break;case a>=55296&&a<57344:a-=55296,o=e.charCodeAt(n++)-56320+(a<<10),t.push(String.fromCharCode(240+(o>>18&7))),t.push(String.fromCharCode(144+(o>>12&63))),t.push(String.fromCharCode(128+(o>>6&63))),t.push(String.fromCharCode(128+(63&o)));break;default:t.push(String.fromCharCode(224+(a>>12))),t.push(String.fromCharCode(128+(a>>6&63))),t.push(String.fromCharCode(128+(63&a)))}return t.join("")},Rh=function(){var e=[["nbsp"," "],["middot","\xb7"],["quot",'"'],["apos","'"],["gt",">"],["lt","<"],["amp","&"]].map((function(e){return[new RegExp("&"+e[0]+";","ig"),e[1]]}));return function(t){for(var n=t.replace(/^[\t\n\r ]+/,"").replace(/[\t\n\r ]+$/,"").replace(/>\s+/g,">").replace(/\s+</g,"<").replace(/[\t\n\r ]+/g," ").replace(/<\s*[bB][rR]\s*\/?>/g,"\n").replace(/<[^>]*>/g,""),a=0;a<e.length;++a)n=n.replace(e[a][0],e[a][1]);return n}}();var Ph=/(^\s|\s$|\n)/;function Ih(e,t){return"<"+e+(t.match(Ph)?' xml:space="preserve"':"")+">"+t+"</"+e+">"}function Lh(e){return Yu(e).map((function(t){return" "+t+'="'+e[t]+'"'})).join("")}function Fh(e,t,n){return"<"+e+(null!=n?Lh(n):"")+(null!=t?(t.match(Ph)?' xml:space="preserve"':"")+">"+t+"</"+e:"/")+">"}function Mh(e,t){try{return e.toISOString().replace(/\.\d*/,"")}catch(n){if(t)throw n}return""}var Wh="http://schemas.openxmlformats.org/package/2006/metadata/core-properties",Bh="http://schemas.openxmlformats.org/officeDocument/2006/custom-properties",zh="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties",Uh="http://schemas.openxmlformats.org/package/2006/content-types",Hh="http://schemas.openxmlformats.org/package/2006/relationships",Gh="http://schemas.microsoft.com/office/spreadsheetml/2018/threadedcomments",Vh="http://purl.org/dc/elements/1.1/",Kh="http://purl.org/dc/terms/",$h="http://purl.org/dc/dcmitype/",qh="http://schemas.openxmlformats.org/officeDocument/2006/relationships",Yh="http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes",Zh="http://www.w3.org/2001/XMLSchema-instance",Jh="http://www.w3.org/2001/XMLSchema",Xh=["http://schemas.openxmlformats.org/spreadsheetml/2006/main","http://purl.oclc.org/ooxml/spreadsheetml/main","http://schemas.microsoft.com/office/excel/2006/main","http://schemas.microsoft.com/office/excel/2006/2"],Qh="urn:schemas-microsoft-com:office:office",ef="urn:schemas-microsoft-com:office:excel",tf="urn:schemas-microsoft-com:office:spreadsheet",nf="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882",af="http://macVmlSchemaUri",of="urn:schemas-microsoft-com:vml",sf="http://www.w3.org/TR/REC-html40";var rf=function(e){for(var t=[],n=0;n<e[0].length;++n)if(e[0][n])for(var a=0,o=e[0][n].length;a<o;a+=10240)t.push.apply(t,e[0][n].slice(a,a+10240));return t},lf=Up?function(e){return e[0].length>0&&Buffer.isBuffer(e[0][0])?Buffer.concat(e[0].map((function(e){return Buffer.isBuffer(e)?e:Hp(e)}))):rf(e)}:rf,cf=function(e,t,n){for(var a=[],o=t;o<n;o+=2)a.push(String.fromCharCode(Nf(e,o)));return a.join("").replace(Zp,"")},mf=Up?function(e,t,n){return Buffer.isBuffer(e)?e.toString("utf16le",t,n).replace(Zp,""):cf(e,t,n)}:cf,df=function(e,t,n){for(var a=[],o=t;o<t+n;++o)a.push(("0"+e[o].toString(16)).slice(-2));return a.join("")},pf=Up?function(e,t,n){return Buffer.isBuffer(e)?e.toString("hex",t,t+n):df(e,t,n)}:df,uf=function(e,t,n){for(var a=[],o=t;o<n;o++)a.push(String.fromCharCode(Af(e,o)));return a.join("")},hf=Up?function(e,t,n){return Buffer.isBuffer(e)?e.toString("utf8",t,n):uf(e,t,n)}:uf,ff=function(e,t){var n=Of(e,t);return n>0?hf(e,t+4,t+4+n-1):""},gf=ff,yf=function(e,t){var n=Of(e,t);return n>0?hf(e,t+4,t+4+n-1):""},vf=yf,bf=function(e,t){var n=2*Of(e,t);return n>0?hf(e,t+4,t+4+n-1):""},wf=bf,kf=function(e,t){var n=Of(e,t);return n>0?mf(e,t+4,t+4+n):""},xf=kf,_f=function(e,t){var n=Of(e,t);return n>0?hf(e,t+4,t+4+n):""},Tf=_f,Sf=function(e,t){return function(e,t){for(var n=1-2*(e[t+7]>>>7),a=((127&e[t+7])<<4)+(e[t+6]>>>4&15),o=15&e[t+6],s=5;s>=0;--s)o=256*o+e[t+s];return 2047==a?0==o?n*(1/0):NaN:(0==a?a=-1022:(a-=1023,o+=Math.pow(2,52)),n*Math.pow(2,a-52)*o)}(e,t)},Cf=Sf,Ef=function(e){return Array.isArray(e)||"undefined"!==typeof Uint8Array&&e instanceof Uint8Array};function jf(){mf=function(e,t,n){return Lp.utils.decode(1200,e.slice(t,n)).replace(Zp,"")},hf=function(e,t,n){return Lp.utils.decode(65001,e.slice(t,n))},gf=function(e,t){var n=Of(e,t);return n>0?Lp.utils.decode(Ap,e.slice(t+4,t+4+n-1)):""},vf=function(e,t){var n=Of(e,t);return n>0?Lp.utils.decode(jp,e.slice(t+4,t+4+n-1)):""},wf=function(e,t){var n=2*Of(e,t);return n>0?Lp.utils.decode(1200,e.slice(t+4,t+4+n-1)):""},xf=function(e,t){var n=Of(e,t);return n>0?Lp.utils.decode(1200,e.slice(t+4,t+4+n)):""},Tf=function(e,t){var n=Of(e,t);return n>0?Lp.utils.decode(65001,e.slice(t+4,t+4+n)):""}}Up&&(gf=function(e,t){if(!Buffer.isBuffer(e))return ff(e,t);var n=e.readUInt32LE(t);return n>0?e.toString("utf8",t+4,t+4+n-1):""},vf=function(e,t){if(!Buffer.isBuffer(e))return yf(e,t);var n=e.readUInt32LE(t);return n>0?e.toString("utf8",t+4,t+4+n-1):""},wf=function(e,t){if(!Buffer.isBuffer(e))return bf(e,t);var n=2*e.readUInt32LE(t);return e.toString("utf16le",t+4,t+4+n-1)},xf=function(e,t){if(!Buffer.isBuffer(e))return kf(e,t);var n=e.readUInt32LE(t);return e.toString("utf16le",t+4,t+4+n)},Tf=function(e,t){if(!Buffer.isBuffer(e))return _f(e,t);var n=e.readUInt32LE(t);return e.toString("utf8",t+4,t+4+n)},Cf=function(e,t){return Buffer.isBuffer(e)?e.readDoubleLE(t):Sf(e,t)},Ef=function(e){return Buffer.isBuffer(e)||Array.isArray(e)||"undefined"!==typeof Uint8Array&&e instanceof Uint8Array}),"undefined"!==typeof Lp&&jf();var Af=function(e,t){return e[t]},Nf=function(e,t){return 256*e[t+1]+e[t]},Df=function(e,t){var n=256*e[t+1]+e[t];return n<32768?n:-1*(65535-n+1)},Of=function(e,t){return e[t+3]*(1<<24)+(e[t+2]<<16)+(e[t+1]<<8)+e[t]},Rf=function(e,t){return e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t]},Pf=function(e,t){return e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3]};function If(e,t){var n,a,o,s,r,i,l="",c=[];switch(t){case"dbcs":if(i=this.l,Up&&Buffer.isBuffer(this))l=this.slice(this.l,this.l+2*e).toString("utf16le");else for(r=0;r<e;++r)l+=String.fromCharCode(Nf(this,i)),i+=2;e*=2;break;case"utf8":l=hf(this,this.l,this.l+e);break;case"utf16le":e*=2,l=mf(this,this.l,this.l+e);break;case"wstr":if("undefined"===typeof Lp)return If.call(this,e,"dbcs");l=Lp.utils.decode(jp,this.slice(this.l,this.l+2*e)),e*=2;break;case"lpstr-ansi":l=gf(this,this.l),e=4+Of(this,this.l);break;case"lpstr-cp":l=vf(this,this.l),e=4+Of(this,this.l);break;case"lpwstr":l=wf(this,this.l),e=4+2*Of(this,this.l);break;case"lpp4":e=4+Of(this,this.l),l=xf(this,this.l),2&e&&(e+=2);break;case"8lpp4":e=4+Of(this,this.l),l=Tf(this,this.l),3&e&&(e+=4-(3&e));break;case"cstr":for(e=0,l="";0!==(o=Af(this,this.l+e++));)c.push(Fp(o));l=c.join("");break;case"_wstr":for(e=0,l="";0!==(o=Nf(this,this.l+e));)c.push(Fp(o)),e+=2;e+=2,l=c.join("");break;case"dbcs-cont":for(l="",i=this.l,r=0;r<e;++r){if(this.lens&&-1!==this.lens.indexOf(i))return o=Af(this,i),this.l=i+1,s=If.call(this,e-r,o?"dbcs-cont":"sbcs-cont"),c.join("")+s;c.push(Fp(Nf(this,i))),i+=2}l=c.join(""),e*=2;break;case"cpstr":if("undefined"!==typeof Lp){l=Lp.utils.decode(jp,this.slice(this.l,this.l+e));break}case"sbcs-cont":for(l="",i=this.l,r=0;r!=e;++r){if(this.lens&&-1!==this.lens.indexOf(i))return o=Af(this,i),this.l=i+1,s=If.call(this,e-r,o?"dbcs-cont":"sbcs-cont"),c.join("")+s;c.push(Fp(Af(this,i))),i+=1}l=c.join("");break;default:switch(e){case 1:return n=Af(this,this.l),this.l++,n;case 2:return n=("i"===t?Df:Nf)(this,this.l),this.l+=2,n;case 4:case-4:return"i"===t||0===(128&this[this.l+3])?(n=(e>0?Rf:Pf)(this,this.l),this.l+=4,n):(a=Of(this,this.l),this.l+=4,a);case 8:case-8:if("f"===t)return a=8==e?Cf(this,this.l):Cf([this[this.l+7],this[this.l+6],this[this.l+5],this[this.l+4],this[this.l+3],this[this.l+2],this[this.l+1],this[this.l+0]],0),this.l+=8,a;e=8;case 16:l=pf(this,this.l,e)}}return this.l+=e,l}var Lf=function(e,t,n){e[n]=255&t,e[n+1]=t>>>8&255};function Ff(e,t,n){var a=0,o=0;if("dbcs"===n){for(o=0;o!=t.length;++o)Lf(this,t.charCodeAt(o),this.l+2*o);a=2*t.length}else if("sbcs"===n){if("undefined"!==typeof Lp&&874==Ap)for(o=0;o!=t.length;++o){var s=Lp.utils.encode(Ap,t.charAt(o));this[this.l+o]=s[0]}else for(t=t.replace(/[^\x00-\x7F]/g,"_"),o=0;o!=t.length;++o)this[this.l+o]=255&t.charCodeAt(o);a=t.length}else{if("hex"===n){for(;o<e;++o)this[this.l++]=parseInt(t.slice(2*o,2*o+2),16)||0;return this}if("utf16le"===n){var r=Math.min(this.l+e,this.length);for(o=0;o<Math.min(t.length,e);++o){var i=t.charCodeAt(o);this[this.l++]=255&i,this[this.l++]=i>>8}for(;this.l<r;)this[this.l++]=0;return this}switch(e){case 1:a=1,this[this.l]=255&t;break;case 2:a=2,this[this.l]=255&t,t>>>=8,this[this.l+1]=255&t;break;case 3:a=3,this[this.l]=255&t,t>>>=8,this[this.l+1]=255&t,t>>>=8,this[this.l+2]=255&t;break;case 4:a=4,function(e,t,n){e[n]=255&t,e[n+1]=t>>>8&255,e[n+2]=t>>>16&255,e[n+3]=t>>>24&255}(this,t,this.l);break;case 8:if(a=8,"f"===n){!function(e,t,n){var a=(t<0||1/t==-1/0?1:0)<<7,o=0,s=0,r=a?-t:t;isFinite(r)?0==r?o=s=0:(o=Math.floor(Math.log(r)/Math.LN2),s=r*Math.pow(2,52-o),o<=-1023&&(!isFinite(s)||s<Math.pow(2,52))?o=-1022:(s-=Math.pow(2,52),o+=1023)):(o=2047,s=isNaN(t)?26985:0);for(var i=0;i<=5;++i,s/=256)e[n+i]=255&s;e[n+6]=(15&o)<<4|15&s,e[n+7]=o>>4|a}(this,t,this.l);break}case 16:break;case-4:a=4,function(e,t,n){e[n]=255&t,e[n+1]=t>>8&255,e[n+2]=t>>16&255,e[n+3]=t>>24&255}(this,t,this.l)}}return this.l+=a,this}function Mf(e,t){var n=pf(this,this.l,e.length>>1);if(n!==e)throw new Error(t+"Expected "+e+" saw "+n);this.l+=e.length>>1}function Wf(e,t){e.l=t,e.read_shift=If,e.chk=Mf,e.write_shift=Ff}function Bf(e,t){e.l+=t}function zf(e){var t=Gp(e);return Wf(t,0),t}function Uf(){var e=[],t=Up?256:2048,n=function(e){var t=zf(e);return Wf(t,0),t},a=n(t),o=function(){a&&(a.length>a.l&&((a=a.slice(0,a.l)).l=a.length),a.length>0&&e.push(a),a=null)},s=function(e){return a&&e<a.length-a.l?a:(o(),a=n(Math.max(e+1,t)))};return{next:s,push:function(e){o(),null==(a=e).l&&(a.l=a.length),s(t)},end:function(){return o(),Yp(e)},_bufs:e}}function Hf(e,t,n,a){var o,s=+t;if(!isNaN(s)){a||(a=ew[s].p||(n||[]).length||0),o=1+(s>=128?1:0)+1,a>=128&&++o,a>=16384&&++o,a>=2097152&&++o;var r=e.next(o);s<=127?r.write_shift(1,s):(r.write_shift(1,128+(127&s)),r.write_shift(1,s>>7));for(var i=0;4!=i;++i){if(!(a>=128)){r.write_shift(1,a);break}r.write_shift(1,128+(127&a)),a>>=7}a>0&&Ef(n)&&e.push(n)}}function Gf(e,t,n){var a=mh(e);if(t.s?(a.cRel&&(a.c+=t.s.c),a.rRel&&(a.r+=t.s.r)):(a.cRel&&(a.c+=t.c),a.rRel&&(a.r+=t.r)),!n||n.biff<12){for(;a.c>=256;)a.c-=256;for(;a.r>=65536;)a.r-=65536}return a}function Vf(e,t,n){var a=mh(e);return a.s=Gf(a.s,t.s,n),a.e=Gf(a.e,t.s,n),a}function Kf(e,t){if(e.cRel&&e.c<0)for(e=mh(e);e.c<0;)e.c+=t>8?16384:256;if(e.rRel&&e.r<0)for(e=mh(e);e.r<0;)e.r+=t>8?1048576:t>5?65536:16384;var n=Qf(e);return e.cRel||null==e.cRel||(n=n.replace(/^([A-Z])/,"$$$1")),e.rRel||null==e.rRel||(n=function(e){return e.replace(/([A-Z]|^)(\d+)$/,"$1$$$2")}(n)),n}function $f(e,t){return 0!=e.s.r||e.s.rRel||e.e.r!=(t.biff>=12?1048575:t.biff>=8?65536:16384)||e.e.rRel?0!=e.s.c||e.s.cRel||e.e.c!=(t.biff>=12?16383:255)||e.e.cRel?Kf(e.s,t.biff)+":"+Kf(e.e,t.biff):(e.s.rRel?"":"$")+Yf(e.s.r)+":"+(e.e.rRel?"":"$")+Yf(e.e.r):(e.s.cRel?"":"$")+Jf(e.s.c)+":"+(e.e.cRel?"":"$")+Jf(e.e.c)}function qf(e){return parseInt(e.replace(/\$(\d+)$/,"$1"),10)-1}function Yf(e){return""+(e+1)}function Zf(e){for(var t=e.replace(/^\$([A-Z])/,"$1"),n=0,a=0;a!==t.length;++a)n=26*n+t.charCodeAt(a)-64;return n-1}function Jf(e){if(e<0)throw new Error("invalid column "+e);var t="";for(++e;e;e=Math.floor((e-1)/26))t=String.fromCharCode((e-1)%26+65)+t;return t}function Xf(e){for(var t=0,n=0,a=0;a<e.length;++a){var o=e.charCodeAt(a);o>=48&&o<=57?t=10*t+(o-48):o>=65&&o<=90&&(n=26*n+(o-64))}return{c:n-1,r:t-1}}function Qf(e){for(var t=e.c+1,n="";t;t=(t-1)/26|0)n=String.fromCharCode((t-1)%26+65)+n;return n+(e.r+1)}function eg(e){var t=e.indexOf(":");return-1==t?{s:Xf(e),e:Xf(e)}:{s:Xf(e.slice(0,t)),e:Xf(e.slice(t+1))}}function tg(e,t){return"undefined"===typeof t||"number"===typeof t?tg(e.s,e.e):("string"!==typeof e&&(e=Qf(e)),"string"!==typeof t&&(t=Qf(t)),e==t?e:e+":"+t)}function ng(e){var t={s:{c:0,r:0},e:{c:0,r:0}},n=0,a=0,o=0,s=e.length;for(n=0;a<s&&!((o=e.charCodeAt(a)-64)<1||o>26);++a)n=26*n+o;for(t.s.c=--n,n=0;a<s&&!((o=e.charCodeAt(a)-48)<0||o>9);++a)n=10*n+o;if(t.s.r=--n,a===s||10!=o)return t.e.c=t.s.c,t.e.r=t.s.r,t;for(++a,n=0;a!=s&&!((o=e.charCodeAt(a)-64)<1||o>26);++a)n=26*n+o;for(t.e.c=--n,n=0;a!=s&&!((o=e.charCodeAt(a)-48)<0||o>9);++a)n=10*n+o;return t.e.r=--n,t}function ag(e,t){var n="d"==e.t&&t instanceof Date;if(null!=e.z)try{return e.w=Wu(e.z,n?eh(t):t)}catch(a){}try{return e.w=Wu((e.XF||{}).numFmtId||(n?14:0),n?eh(t):t)}catch(a){return""+t}}function og(e,t,n){return null==e||null==e.t||"z"==e.t?"":void 0!==e.w?e.w:("d"==e.t&&!e.z&&n&&n.dateNF&&(e.z=n.dateNF),"e"==e.t?Wg[e.v]||e.v:ag(e,void 0==t?e.v:t))}function sg(e,t){var n=t&&t.sheet?t.sheet:"Sheet1",a={};return a[n]=e,{SheetNames:[n],Sheets:a}}function rg(e,t,n){var a=n||{},o=e?Array.isArray(e):a.dense;var s=e||(o?[]:{}),r=0,i=0;if(s&&null!=a.origin){if("number"==typeof a.origin)r=a.origin;else{var l="string"==typeof a.origin?Xf(a.origin):a.origin;r=l.r,i=l.c}s["!ref"]||(s["!ref"]="A1:A1")}var c={s:{c:1e7,r:1e7},e:{c:0,r:0}};if(s["!ref"]){var m=ng(s["!ref"]);c.s.c=m.s.c,c.s.r=m.s.r,c.e.c=Math.max(c.e.c,m.e.c),c.e.r=Math.max(c.e.r,m.e.r),-1==r&&(c.e.r=r=m.e.r+1)}for(var d=0;d!=t.length;++d)if(t[d]){if(!Array.isArray(t[d]))throw new Error("aoa_to_sheet expects an array of arrays");for(var p=0;p!=t[d].length;++p)if("undefined"!==typeof t[d][p]){var u={v:t[d][p]},h=r+d,f=i+p;if(c.s.r>h&&(c.s.r=h),c.s.c>f&&(c.s.c=f),c.e.r<h&&(c.e.r=h),c.e.c<f&&(c.e.c=f),!t[d][p]||"object"!==typeof t[d][p]||Array.isArray(t[d][p])||t[d][p]instanceof Date)if(Array.isArray(u.v)&&(u.f=t[d][p][1],u.v=u.v[0]),null===u.v)if(u.f)u.t="n";else if(a.nullError)u.t="e",u.v=0;else{if(!a.sheetStubs)continue;u.t="z"}else"number"===typeof u.v?u.t="n":"boolean"===typeof u.v?u.t="b":u.v instanceof Date?(u.z=a.dateNF||iu[14],a.cellDates?(u.t="d",u.w=Wu(u.z,eh(u.v))):(u.t="n",u.v=eh(u.v),u.w=Wu(u.z,u.v))):u.t="s";else u=t[d][p];if(o)s[h]||(s[h]=[]),s[h][f]&&s[h][f].z&&(u.z=s[h][f].z),s[h][f]=u;else{var g=Qf({c:f,r:h});s[g]&&s[g].z&&(u.z=s[g].z),s[g]=u}}}return c.s.c<1e7&&(s["!ref"]=tg(c)),s}function ig(e,t){return rg(null,e,t)}function lg(e,t){return t||(t=zf(4)),t.write_shift(4,e),t}function cg(e){var t=e.read_shift(4);return 0===t?"":e.read_shift(t,"dbcs")}function mg(e,t){var n=!1;return null==t&&(n=!0,t=zf(4+2*e.length)),t.write_shift(4,e.length),e.length>0&&t.write_shift(0,e,"dbcs"),n?t.slice(0,t.l):t}function dg(e){return{ich:e.read_shift(2),ifnt:e.read_shift(2)}}function pg(e,t){var n=e.l,a=e.read_shift(1),o=cg(e),s=[],r={t:o,h:o};if(0!==(1&a)){for(var i=e.read_shift(4),l=0;l!=i;++l)s.push(dg(e));r.r=s}else r.r=[{ich:0,ifnt:0}];return e.l=n+t,r}var ug=pg;function hg(e,t){var n=!1;return null==t&&(n=!0,t=zf(23+4*e.t.length)),t.write_shift(1,1),mg(e.t,t),t.write_shift(4,1),function(e,t){t||(t=zf(4)),t.write_shift(2,e.ich||0),t.write_shift(2,e.ifnt||0)}({ich:0,ifnt:0},t),n?t.slice(0,t.l):t}function fg(e){var t=e.read_shift(4),n=e.read_shift(2);return n+=e.read_shift(1)<<16,e.l++,{c:t,iStyleRef:n}}function gg(e,t){return null==t&&(t=zf(8)),t.write_shift(-4,e.c),t.write_shift(3,e.iStyleRef||e.s),t.write_shift(1,0),t}function yg(e){var t=e.read_shift(2);return t+=e.read_shift(1)<<16,e.l++,{c:-1,iStyleRef:t}}function vg(e,t){return null==t&&(t=zf(4)),t.write_shift(3,e.iStyleRef||e.s),t.write_shift(1,0),t}var bg=cg,wg=mg;function kg(e){var t=e.read_shift(4);return 0===t||4294967295===t?"":e.read_shift(t,"dbcs")}function xg(e,t){var n=!1;return null==t&&(n=!0,t=zf(127)),t.write_shift(4,e.length>0?e.length:4294967295),e.length>0&&t.write_shift(0,e,"dbcs"),n?t.slice(0,t.l):t}var _g=cg,Tg=kg,Sg=xg;function Cg(e){var t=e.slice(e.l,e.l+4),n=1&t[0],a=2&t[0];e.l+=4;var o=0===a?Cf([0,0,0,0,252&t[0],t[1],t[2],t[3]],0):Rf(t,0)>>2;return n?o/100:o}function Eg(e,t){null==t&&(t=zf(4));var n=0,a=0,o=100*e;if(e==(0|e)&&e>=-(1<<29)&&e<1<<29?a=1:o==(0|o)&&o>=-(1<<29)&&o<1<<29&&(a=1,n=1),!a)throw new Error("unsupported RkNumber "+e);t.write_shift(-4,((n?o:e)<<2)+(n+2))}function jg(e){var t={s:{},e:{}};return t.s.r=e.read_shift(4),t.e.r=e.read_shift(4),t.s.c=e.read_shift(4),t.e.c=e.read_shift(4),t}var Ag=jg,Ng=function(e,t){return t||(t=zf(16)),t.write_shift(4,e.s.r),t.write_shift(4,e.e.r),t.write_shift(4,e.s.c),t.write_shift(4,e.e.c),t};function Dg(e){if(e.length-e.l<8)throw"XLS Xnum Buffer underflow";return e.read_shift(8,"f")}function Og(e,t){return(t||zf(8)).write_shift(8,e,"f")}function Rg(e,t){if(t||(t=zf(8)),!e||e.auto)return t.write_shift(4,0),t.write_shift(4,0),t;null!=e.index?(t.write_shift(1,2),t.write_shift(1,e.index)):null!=e.theme?(t.write_shift(1,6),t.write_shift(1,e.theme)):(t.write_shift(1,5),t.write_shift(1,0));var n=e.tint||0;if(n>0?n*=32767:n<0&&(n*=32768),t.write_shift(2,n),e.rgb&&null==e.theme){var a=e.rgb||"FFFFFF";"number"==typeof a&&(a=("000000"+a.toString(16)).slice(-6)),t.write_shift(1,parseInt(a.slice(0,2),16)),t.write_shift(1,parseInt(a.slice(2,4),16)),t.write_shift(1,parseInt(a.slice(4,6),16)),t.write_shift(1,255)}else t.write_shift(2,0),t.write_shift(1,0),t.write_shift(1,0);return t}var Pg=80,Ig={1:{n:"CodePage",t:2},2:{n:"Category",t:Pg},3:{n:"PresentationFormat",t:Pg},4:{n:"ByteCount",t:3},5:{n:"LineCount",t:3},6:{n:"ParagraphCount",t:3},7:{n:"SlideCount",t:3},8:{n:"NoteCount",t:3},9:{n:"HiddenCount",t:3},10:{n:"MultimediaClipCount",t:3},11:{n:"ScaleCrop",t:11},12:{n:"HeadingPairs",t:4108},13:{n:"TitlesOfParts",t:4126},14:{n:"Manager",t:Pg},15:{n:"Company",t:Pg},16:{n:"LinksUpToDate",t:11},17:{n:"CharacterCount",t:3},19:{n:"SharedDoc",t:11},22:{n:"HyperlinksChanged",t:11},23:{n:"AppVersion",t:3,p:"version"},24:{n:"DigSig",t:65},26:{n:"ContentType",t:Pg},27:{n:"ContentStatus",t:Pg},28:{n:"Language",t:Pg},29:{n:"Version",t:Pg},255:{},2147483648:{n:"Locale",t:19},2147483651:{n:"Behavior",t:19},1919054434:{}},Lg={1:{n:"CodePage",t:2},2:{n:"Title",t:Pg},3:{n:"Subject",t:Pg},4:{n:"Author",t:Pg},5:{n:"Keywords",t:Pg},6:{n:"Comments",t:Pg},7:{n:"Template",t:Pg},8:{n:"LastAuthor",t:Pg},9:{n:"RevNumber",t:Pg},10:{n:"EditTime",t:64},11:{n:"LastPrinted",t:64},12:{n:"CreatedDate",t:64},13:{n:"ModifiedDate",t:64},14:{n:"PageCount",t:3},15:{n:"WordCount",t:3},16:{n:"CharCount",t:3},17:{n:"Thumbnail",t:71},18:{n:"Application",t:Pg},19:{n:"DocSecurity",t:3},255:{},2147483648:{n:"Locale",t:19},2147483651:{n:"Behavior",t:19},1919054434:{}};function Fg(e){return e.map((function(e){return[e>>16&255,e>>8&255,255&e]}))}var Mg=mh(Fg([0,16777215,16711680,65280,255,16776960,16711935,65535,0,16777215,16711680,65280,255,16776960,16711935,65535,8388608,32768,128,8421376,8388736,32896,12632256,8421504,10066431,10040166,16777164,13434879,6684774,16744576,26316,13421823,128,16711935,16776960,65535,8388736,8388608,32896,255,52479,13434879,13434828,16777113,10079487,16751052,13408767,16764057,3368703,3394764,10079232,16763904,16750848,16737792,6710937,9868950,13158,3381606,13056,3355392,10040064,10040166,3355545,3355443,16777215,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])),Wg={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"},Bg={"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":"workbooks","application/vnd.ms-excel.sheet.macroEnabled.main+xml":"workbooks","application/vnd.ms-excel.sheet.binary.macroEnabled.main":"workbooks","application/vnd.ms-excel.addin.macroEnabled.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":"sheets","application/vnd.ms-excel.worksheet":"sheets","application/vnd.ms-excel.binIndexWs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":"charts","application/vnd.ms-excel.chartsheet":"charts","application/vnd.ms-excel.macrosheet+xml":"macros","application/vnd.ms-excel.macrosheet":"macros","application/vnd.ms-excel.intlmacrosheet":"TODO","application/vnd.ms-excel.binIndexMs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":"dialogs","application/vnd.ms-excel.dialogsheet":"dialogs","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml":"strs","application/vnd.ms-excel.sharedStrings":"strs","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":"styles","application/vnd.ms-excel.styles":"styles","application/vnd.openxmlformats-package.core-properties+xml":"coreprops","application/vnd.openxmlformats-officedocument.custom-properties+xml":"custprops","application/vnd.openxmlformats-officedocument.extended-properties+xml":"extprops","application/vnd.openxmlformats-officedocument.customXmlProperties+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.customProperty":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":"comments","application/vnd.ms-excel.comments":"comments","application/vnd.ms-excel.threadedcomments+xml":"threadedcomments","application/vnd.ms-excel.person+xml":"people","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml":"metadata","application/vnd.ms-excel.sheetMetadata":"metadata","application/vnd.ms-excel.pivotTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.chart+xml":"TODO","application/vnd.ms-office.chartcolorstyle+xml":"TODO","application/vnd.ms-office.chartstyle+xml":"TODO","application/vnd.ms-office.chartex+xml":"TODO","application/vnd.ms-excel.calcChain":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings":"TODO","application/vnd.ms-office.activeX":"TODO","application/vnd.ms-office.activeX+xml":"TODO","application/vnd.ms-excel.attachedToolbars":"TODO","application/vnd.ms-excel.connections":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":"TODO","application/vnd.ms-excel.externalLink":"links","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml":"links","application/vnd.ms-excel.pivotCacheDefinition":"TODO","application/vnd.ms-excel.pivotCacheRecords":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml":"TODO","application/vnd.ms-excel.queryTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml":"TODO","application/vnd.ms-excel.userNames":"TODO","application/vnd.ms-excel.revisionHeaders":"TODO","application/vnd.ms-excel.revisionLog":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml":"TODO","application/vnd.ms-excel.tableSingleCells":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml":"TODO","application/vnd.ms-excel.slicer":"TODO","application/vnd.ms-excel.slicerCache":"TODO","application/vnd.ms-excel.slicer+xml":"TODO","application/vnd.ms-excel.slicerCache+xml":"TODO","application/vnd.ms-excel.wsSortMap":"TODO","application/vnd.ms-excel.table":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":"TODO","application/vnd.openxmlformats-officedocument.theme+xml":"themes","application/vnd.openxmlformats-officedocument.themeOverride+xml":"TODO","application/vnd.ms-excel.Timeline+xml":"TODO","application/vnd.ms-excel.TimelineCache+xml":"TODO","application/vnd.ms-office.vbaProject":"vba","application/vnd.ms-office.vbaProjectSignature":"TODO","application/vnd.ms-office.volatileDependencies":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml":"TODO","application/vnd.ms-excel.controlproperties+xml":"TODO","application/vnd.openxmlformats-officedocument.model+data":"TODO","application/vnd.ms-excel.Survey+xml":"TODO","application/vnd.openxmlformats-officedocument.drawing+xml":"drawings","application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml":"TODO","application/vnd.openxmlformats-officedocument.vmlDrawing":"TODO","application/vnd.openxmlformats-package.relationships+xml":"rels","application/vnd.openxmlformats-officedocument.oleObject":"TODO","image/png":"TODO",sheet:"js"},zg={workbooks:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml",xlsm:"application/vnd.ms-excel.sheet.macroEnabled.main+xml",xlsb:"application/vnd.ms-excel.sheet.binary.macroEnabled.main",xlam:"application/vnd.ms-excel.addin.macroEnabled.main+xml",xltx:"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml"},strs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml",xlsb:"application/vnd.ms-excel.sharedStrings"},comments:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml",xlsb:"application/vnd.ms-excel.comments"},sheets:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",xlsb:"application/vnd.ms-excel.worksheet"},charts:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml",xlsb:"application/vnd.ms-excel.chartsheet"},dialogs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml",xlsb:"application/vnd.ms-excel.dialogsheet"},macros:{xlsx:"application/vnd.ms-excel.macrosheet+xml",xlsb:"application/vnd.ms-excel.macrosheet"},metadata:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml",xlsb:"application/vnd.ms-excel.sheetMetadata"},styles:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml",xlsb:"application/vnd.ms-excel.styles"}};function Ug(e,t){var n,a=function(e){for(var t=[],n=Yu(e),a=0;a!==n.length;++a)null==t[e[n[a]]]&&(t[e[n[a]]]=[]),t[e[n[a]]].push(n[a]);return t}(Bg),o=[];o[o.length]=yh,o[o.length]=Fh("Types",null,{xmlns:Uh,"xmlns:xsd":Jh,"xmlns:xsi":Zh}),o=o.concat([["xml","application/xml"],["bin","application/vnd.ms-excel.sheet.binary.macroEnabled.main"],["vml","application/vnd.openxmlformats-officedocument.vmlDrawing"],["data","application/vnd.openxmlformats-officedocument.model+data"],["bmp","image/bmp"],["png","image/png"],["gif","image/gif"],["emf","image/x-emf"],["wmf","image/x-wmf"],["jpg","image/jpeg"],["jpeg","image/jpeg"],["tif","image/tiff"],["tiff","image/tiff"],["pdf","application/pdf"],["rels","application/vnd.openxmlformats-package.relationships+xml"]].map((function(e){return Fh("Default",null,{Extension:e[0],ContentType:e[1]})})));var s=function(a){e[a]&&e[a].length>0&&(n=e[a][0],o[o.length]=Fh("Override",null,{PartName:("/"==n[0]?"":"/")+n,ContentType:zg[a][t.bookType]||zg[a].xlsx}))},r=function(n){(e[n]||[]).forEach((function(e){o[o.length]=Fh("Override",null,{PartName:("/"==e[0]?"":"/")+e,ContentType:zg[n][t.bookType]||zg[n].xlsx})}))},i=function(t){(e[t]||[]).forEach((function(e){o[o.length]=Fh("Override",null,{PartName:("/"==e[0]?"":"/")+e,ContentType:a[t][0]})}))};return s("workbooks"),r("sheets"),r("charts"),i("themes"),["strs","styles"].forEach(s),["coreprops","extprops","custprops"].forEach(i),i("vba"),i("comments"),i("threadedcomments"),i("drawings"),r("metadata"),i("people"),o.length>2&&(o[o.length]="</Types>",o[1]=o[1].replace("/>",">")),o.join("")}var Hg={WB:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",SHEET:"http://sheetjs.openxmlformats.org/officeDocument/2006/relationships/officeDocument",HLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink",VML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing",XPATH:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLinkPath",XMISS:"http://schemas.microsoft.com/office/2006/relationships/xlExternalLinkPath/xlPathMissing",XLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLink",CXML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXml",CXMLP:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXmlProps",CMNT:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments",CORE_PROPS:"http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties",EXT_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties",CUST_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties",SST:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",STY:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",THEME:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",CHART:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart",CHARTEX:"http://schemas.microsoft.com/office/2014/relationships/chartEx",CS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chartsheet",WS:["http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet","http://purl.oclc.org/ooxml/officeDocument/relationships/worksheet"],DS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/dialogsheet",MS:"http://schemas.microsoft.com/office/2006/relationships/xlMacrosheet",IMG:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",DRAW:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing",XLMETA:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sheetMetadata",TCMNT:"http://schemas.microsoft.com/office/2017/10/relationships/threadedComment",PEOPLE:"http://schemas.microsoft.com/office/2017/10/relationships/person",VBA:"http://schemas.microsoft.com/office/2006/relationships/vbaProject"};function Gg(e){var t=e.lastIndexOf("/");return e.slice(0,t+1)+"_rels/"+e.slice(t+1)+".rels"}function Vg(e){var t=[yh,Fh("Relationships",null,{xmlns:Hh})];return Yu(e["!id"]).forEach((function(n){t[t.length]=Fh("Relationship",null,e["!id"][n])})),t.length>2&&(t[t.length]="</Relationships>",t[1]=t[1].replace("/>",">")),t.join("")}function Kg(e,t,n,a,o,s){if(o||(o={}),e["!id"]||(e["!id"]={}),e["!idx"]||(e["!idx"]=1),t<0)for(t=e["!idx"];e["!id"]["rId"+t];++t);if(e["!idx"]=t+1,o.Id="rId"+t,o.Type=a,o.Target=n,s?o.TargetMode=s:[Hg.HLINK,Hg.XPATH,Hg.XMISS].indexOf(o.Type)>-1&&(o.TargetMode="External"),e["!id"][o.Id])throw new Error("Cannot rewrite rId "+t);return e["!id"][o.Id]=o,e[("/"+o.Target).replace("//","/")]=o,t}function $g(e,t,n){return[' <rdf:Description rdf:about="'+e+'">\n',' <rdf:type rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/'+(n||"odf")+"#"+t+'"/>\n'," </rdf:Description>\n"].join("")}function qg(){return'<office:document-meta xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:xlink="http://www.w3.org/1999/xlink" office:version="1.2"><office:meta><meta:generator>SheetJS '+Ep.version+"</meta:generator></office:meta></office:document-meta>"}var Yg=[["cp:category","Category"],["cp:contentStatus","ContentStatus"],["cp:keywords","Keywords"],["cp:lastModifiedBy","LastAuthor"],["cp:lastPrinted","LastPrinted"],["cp:revision","RevNumber"],["cp:version","Version"],["dc:creator","Author"],["dc:description","Comments"],["dc:identifier","Identifier"],["dc:language","Language"],["dc:subject","Subject"],["dc:title","Title"],["dcterms:created","CreatedDate","date"],["dcterms:modified","ModifiedDate","date"]];function Zg(e,t,n,a,o){null==o[e]&&null!=t&&""!==t&&(o[e]=t,t=xh(t),a[a.length]=n?Fh(e,t,n):Ih(e,t))}function Jg(e,t){var n=t||{},a=[yh,Fh("cp:coreProperties",null,{"xmlns:cp":Wh,"xmlns:dc":Vh,"xmlns:dcterms":Kh,"xmlns:dcmitype":$h,"xmlns:xsi":Zh})],o={};if(!e&&!n.Props)return a.join("");e&&(null!=e.CreatedDate&&Zg("dcterms:created","string"===typeof e.CreatedDate?e.CreatedDate:Mh(e.CreatedDate,n.WTF),{"xsi:type":"dcterms:W3CDTF"},a,o),null!=e.ModifiedDate&&Zg("dcterms:modified","string"===typeof e.ModifiedDate?e.ModifiedDate:Mh(e.ModifiedDate,n.WTF),{"xsi:type":"dcterms:W3CDTF"},a,o));for(var s=0;s!=Yg.length;++s){var r=Yg[s],i=n.Props&&null!=n.Props[r[1]]?n.Props[r[1]]:e?e[r[1]]:null;!0===i?i="1":!1===i?i="0":"number"==typeof i&&(i=String(i)),null!=i&&Zg(r[0],i,null,a,o)}return a.length>2&&(a[a.length]="</cp:coreProperties>",a[1]=a[1].replace("/>",">")),a.join("")}var Xg=[["Application","Application","string"],["AppVersion","AppVersion","string"],["Company","Company","string"],["DocSecurity","DocSecurity","string"],["Manager","Manager","string"],["HyperlinksChanged","HyperlinksChanged","bool"],["SharedDoc","SharedDoc","bool"],["LinksUpToDate","LinksUpToDate","bool"],["ScaleCrop","ScaleCrop","bool"],["HeadingPairs","HeadingPairs","raw"],["TitlesOfParts","TitlesOfParts","raw"]],Qg=["Worksheets","SheetNames","NamedRanges","DefinedNames","Chartsheets","ChartNames"];function ey(e){var t=[],n=Fh;return e||(e={}),e.Application="SheetJS",t[t.length]=yh,t[t.length]=Fh("Properties",null,{xmlns:zh,"xmlns:vt":Yh}),Xg.forEach((function(a){if(void 0!==e[a[1]]){var o;switch(a[2]){case"string":o=xh(String(e[a[1]]));break;case"bool":o=e[a[1]]?"true":"false"}void 0!==o&&(t[t.length]=n(a[0],o))}})),t[t.length]=n("HeadingPairs",n("vt:vector",n("vt:variant","<vt:lpstr>Worksheets</vt:lpstr>")+n("vt:variant",n("vt:i4",String(e.Worksheets))),{size:2,baseType:"variant"})),t[t.length]=n("TitlesOfParts",n("vt:vector",e.SheetNames.map((function(e){return"<vt:lpstr>"+xh(e)+"</vt:lpstr>"})).join(""),{size:e.Worksheets,baseType:"lpstr"})),t.length>2&&(t[t.length]="</Properties>",t[1]=t[1].replace("/>",">")),t.join("")}function ty(e){var t=[yh,Fh("Properties",null,{xmlns:Bh,"xmlns:vt":Yh})];if(!e)return t.join("");var n=1;return Yu(e).forEach((function(a){++n,t[t.length]=Fh("property",function(e,t){switch(typeof e){case"string":var n=Fh("vt:lpwstr",xh(e));return t&&(n=n.replace(/"/g,"_x0022_")),n;case"number":return Fh((0|e)==e?"vt:i4":"vt:r8",xh(String(e)));case"boolean":return Fh("vt:bool",e?"true":"false")}if(e instanceof Date)return Fh("vt:filetime",Mh(e));throw new Error("Unable to serialize "+e)}(e[a],!0),{fmtid:"{D5CDD505-2E9C-101B-9397-08002B2CF9AE}",pid:n,name:xh(a)})})),t.length>2&&(t[t.length]="</Properties>",t[1]=t[1].replace("/>",">")),t.join("")}var ny={Title:"Title",Subject:"Subject",Author:"Author",Keywords:"Keywords",Comments:"Description",LastAuthor:"LastAuthor",RevNumber:"Revision",Application:"AppName",LastPrinted:"LastPrinted",CreatedDate:"Created",ModifiedDate:"LastSaved",Category:"Category",Manager:"Manager",Company:"Company",AppVersion:"Version",ContentStatus:"ContentStatus",Identifier:"Identifier",Language:"Language"};function ay(e,t){var n=zf(4),a=zf(4);switch(n.write_shift(4,80==e?31:e),e){case 3:a.write_shift(-4,t);break;case 5:(a=zf(8)).write_shift(8,t,"f");break;case 11:a.write_shift(4,t?1:0);break;case 64:a=function(e){var t=("string"==typeof e?new Date(Date.parse(e)):e).getTime()/1e3+11644473600,n=t%Math.pow(2,32),a=(t-n)/Math.pow(2,32);a*=1e7;var o=(n*=1e7)/Math.pow(2,32)|0;o>0&&(n%=Math.pow(2,32),a+=o);var s=zf(8);return s.write_shift(4,n),s.write_shift(4,a),s}(t);break;case 31:case 80:for((a=zf(4+2*(t.length+1)+(t.length%2?0:2))).write_shift(4,t.length+1),a.write_shift(0,t,"dbcs");a.l!=a.length;)a.write_shift(1,0);break;default:throw new Error("TypedPropertyValue unrecognized type "+e+" "+t)}return Yp([n,a])}var oy=["CodePage","Thumbnail","_PID_LINKBASE","_PID_HLINKS","SystemIdentifier","FMTID"];function sy(e){switch(typeof e){case"boolean":return 11;case"number":return(0|e)==e?3:5;case"string":return 31;case"object":if(e instanceof Date)return 64}return-1}function ry(e,t,n){var a=zf(8),o=[],s=[],r=8,i=0,l=zf(8),c=zf(8);if(l.write_shift(4,2),l.write_shift(4,1200),c.write_shift(4,1),s.push(l),o.push(c),r+=8+l.length,!t){(c=zf(8)).write_shift(4,0),o.unshift(c);var m=[zf(4)];for(m[0].write_shift(4,e.length),i=0;i<e.length;++i){var d=e[i][0];for((l=zf(8+2*(d.length+1)+(d.length%2?0:2))).write_shift(4,i+2),l.write_shift(4,d.length+1),l.write_shift(0,d,"dbcs");l.l!=l.length;)l.write_shift(1,0);m.push(l)}l=Yp(m),s.unshift(l),r+=8+l.length}for(i=0;i<e.length;++i)if((!t||t[e[i][0]])&&!(oy.indexOf(e[i][0])>-1||Qg.indexOf(e[i][0])>-1)&&null!=e[i][1]){var p=e[i][1],u=0;if(t){var h=n[u=+t[e[i][0]]];if("version"==h.p&&"string"==typeof p){var f=p.split(".");p=(+f[0]<<16)+(+f[1]||0)}l=ay(h.t,p)}else{var g=sy(p);-1==g&&(g=31,p=String(p)),l=ay(g,p)}s.push(l),(c=zf(8)).write_shift(4,t?u:2+i),o.push(c),r+=8+l.length}var y=8*(s.length+1);for(i=0;i<s.length;++i)o[i].write_shift(4,y),y+=s[i].length;return a.write_shift(4,r),a.write_shift(4,s.length),Yp([a].concat(o).concat(s))}function iy(e,t,n,a,o,s){var r=zf(o?68:48),i=[r];r.write_shift(2,65534),r.write_shift(2,0),r.write_shift(4,842412599),r.write_shift(16,Vu.utils.consts.HEADER_CLSID,"hex"),r.write_shift(4,o?2:1),r.write_shift(16,t,"hex"),r.write_shift(4,o?68:48);var l=ry(e,n,a);if(i.push(l),o){var c=ry(o,null,null);r.write_shift(16,s,"hex"),r.write_shift(4,68+l.length),i.push(c)}return Yp(i)}function ly(e,t){return 1===e.read_shift(t)}function cy(e,t){return t||(t=zf(2)),t.write_shift(2,+!!e),t}function my(e){return e.read_shift(2,"u")}function dy(e,t){return t||(t=zf(2)),t.write_shift(2,e),t}function py(e,t,n){return n||(n=zf(2)),n.write_shift(1,"e"==t?+e:+!!e),n.write_shift(1,"e"==t?1:0),n}function uy(e,t,n){var a=e.read_shift(n&&n.biff>=12?2:1),o="sbcs-cont",s=jp;(n&&n.biff>=8&&(jp=1200),n&&8!=n.biff)?12==n.biff&&(o="wstr"):e.read_shift(1)&&(o="dbcs-cont");n.biff>=2&&n.biff<=5&&(o="cpstr");var r=a?e.read_shift(a,o):"";return jp=s,r}function hy(e){var t=e.t||"",n=zf(3);n.write_shift(2,t.length),n.write_shift(1,1);var a=zf(2*t.length);return a.write_shift(2*t.length,t,"utf16le"),Yp([n,a])}function fy(e,t,n){if(n){if(n.biff>=2&&n.biff<=5)return e.read_shift(t,"cpstr");if(n.biff>=12)return e.read_shift(t,"dbcs-cont")}return 0===e.read_shift(1)?e.read_shift(t,"sbcs-cont"):e.read_shift(t,"dbcs-cont")}function gy(e,t,n){var a=e.read_shift(n&&2==n.biff?1:2);return 0===a?(e.l++,""):fy(e,a,n)}function yy(e,t,n){if(n.biff>5)return gy(e,0,n);var a=e.read_shift(1);return 0===a?(e.l++,""):e.read_shift(a,n.biff<=4||!e.lens?"cpstr":"sbcs-cont")}function vy(e,t,n){return n||(n=zf(3+2*e.length)),n.write_shift(2,e.length),n.write_shift(1,1),n.write_shift(31,e,"utf16le"),n}function by(e,t){t||(t=zf(6+2*e.length)),t.write_shift(4,1+e.length);for(var n=0;n<e.length;++n)t.write_shift(2,e.charCodeAt(n));return t.write_shift(2,0),t}function wy(e){var t=zf(512),n=0,a=e.Target;"file://"==a.slice(0,7)&&(a=a.slice(7));var o=a.indexOf("#"),s=o>-1?31:23;switch(a.charAt(0)){case"#":s=28;break;case".":s&=-3}t.write_shift(4,2),t.write_shift(4,s);var r=[8,6815827,6619237,4849780,83];for(n=0;n<r.length;++n)t.write_shift(4,r[n]);if(28==s)by(a=a.slice(1),t);else if(2&s){for(r="e0 c9 ea 79 f9 ba ce 11 8c 82 00 aa 00 4b a9 0b".split(" "),n=0;n<r.length;++n)t.write_shift(1,parseInt(r[n],16));var i=o>-1?a.slice(0,o):a;for(t.write_shift(4,2*(i.length+1)),n=0;n<i.length;++n)t.write_shift(2,i.charCodeAt(n));t.write_shift(2,0),8&s&&by(o>-1?a.slice(o+1):"",t)}else{for(r="03 03 00 00 00 00 00 00 c0 00 00 00 00 00 00 46".split(" "),n=0;n<r.length;++n)t.write_shift(1,parseInt(r[n],16));for(var l=0;"../"==a.slice(3*l,3*l+3)||"..\\"==a.slice(3*l,3*l+3);)++l;for(t.write_shift(2,l),t.write_shift(4,a.length-3*l+1),n=0;n<a.length-3*l;++n)t.write_shift(1,255&a.charCodeAt(n+3*l));for(t.write_shift(1,0),t.write_shift(2,65535),t.write_shift(2,57005),n=0;n<6;++n)t.write_shift(4,0)}return t.slice(0,t.l)}function ky(e,t,n,a){return a||(a=zf(6)),a.write_shift(2,e),a.write_shift(2,t),a.write_shift(2,n||0),a}function xy(e,t,n){var a=n.biff>8?4:2;return[e.read_shift(a),e.read_shift(a,"i"),e.read_shift(a,"i")]}function _y(e){var t=e.read_shift(2),n=e.read_shift(2);return{s:{c:e.read_shift(2),r:t},e:{c:e.read_shift(2),r:n}}}function Ty(e,t){return t||(t=zf(8)),t.write_shift(2,e.s.r),t.write_shift(2,e.e.r),t.write_shift(2,e.s.c),t.write_shift(2,e.e.c),t}function Sy(e,t,n){var a=1536,o=16;switch(n.bookType){case"biff8":case"xla":break;case"biff5":a=1280,o=8;break;case"biff4":a=4,o=6;break;case"biff3":a=3,o=6;break;case"biff2":a=2,o=4;break;default:throw new Error("unsupported BIFF version")}var s=zf(o);return s.write_shift(2,a),s.write_shift(2,t),o>4&&s.write_shift(2,29282),o>6&&s.write_shift(2,1997),o>8&&(s.write_shift(2,49161),s.write_shift(2,1),s.write_shift(2,1798),s.write_shift(2,0)),s}function Cy(e,t){var n=!t||t.biff>=8?2:1,a=zf(8+n*e.name.length);a.write_shift(4,e.pos),a.write_shift(1,e.hs||0),a.write_shift(1,e.dt),a.write_shift(1,e.name.length),t.biff>=8&&a.write_shift(1,1),a.write_shift(n*e.name.length,e.name,t.biff<8?"sbcs":"utf16le");var o=a.slice(0,a.l);return o.l=a.l,o}function Ey(e,t,n,a){var o=n&&5==n.biff;a||(a=zf(o?3+t.length:5+2*t.length)),a.write_shift(2,e),a.write_shift(o?1:2,t.length),o||a.write_shift(1,1),a.write_shift((o?1:2)*t.length,t,o?"sbcs":"utf16le");var s=a.length>a.l?a.slice(0,a.l):a;return null==s.l&&(s.l=s.length),s}function jy(e,t,n,a){var o=n&&5==n.biff;a||(a=zf(o?16:20)),a.write_shift(2,0),e.style?(a.write_shift(2,e.numFmtId||0),a.write_shift(2,65524)):(a.write_shift(2,e.numFmtId||0),a.write_shift(2,t<<4));var s=0;return e.numFmtId>0&&o&&(s|=1024),a.write_shift(4,s),a.write_shift(4,0),o||a.write_shift(4,0),a.write_shift(2,0),a}function Ay(e,t,n){if(n.biff<8)return function(e,t,n){3==e[e.l+1]&&e[e.l]++;var a=uy(e,0,n);return 3==a.charCodeAt(0)?a.slice(1):a}(e,0,n);for(var a=[],o=e.l+t,s=e.read_shift(n.biff>8?4:2);0!==s--;)a.push(xy(e,n.biff,n));if(e.l!=o)throw new Error("Bad ExternSheet: "+e.l+" != "+o);return a}function Ny(e){var t=zf(24),n=Xf(e[0]);t.write_shift(2,n.r),t.write_shift(2,n.r),t.write_shift(2,n.c),t.write_shift(2,n.c);for(var a="d0 c9 ea 79 f9 ba ce 11 8c 82 00 aa 00 4b a9 0b".split(" "),o=0;o<16;++o)t.write_shift(1,parseInt(a[o],16));return Yp([t,wy(e[1])])}function Dy(e){var t=e[1].Tooltip,n=zf(10+2*(t.length+1));n.write_shift(2,2048);var a=Xf(e[0]);n.write_shift(2,a.r),n.write_shift(2,a.r),n.write_shift(2,a.c),n.write_shift(2,a.c);for(var o=0;o<t.length;++o)n.write_shift(2,t.charCodeAt(o));return n.write_shift(2,0),n}function Oy(e,t,n){if(!n.cellStyles)return Bf(e,t);var a=n&&n.biff>=12?4:2,o=e.read_shift(a),s=e.read_shift(a),r=e.read_shift(a),i=e.read_shift(a),l=e.read_shift(2);2==a&&(e.l+=2);var c={s:o,e:s,w:r,ixfe:i,flags:l};return(n.biff>=5||!n.biff)&&(c.level=l>>8&7),c}var Ry=function(){var e={1:437,2:850,3:1252,4:1e4,100:852,101:866,102:865,103:861,104:895,105:620,106:737,107:857,120:950,121:949,122:936,123:932,124:874,125:1255,126:1256,150:10007,151:10029,152:10006,200:1250,201:1251,202:1254,203:1253,0:20127,8:865,9:437,10:850,11:437,13:437,14:850,15:437,16:850,17:437,18:850,19:932,20:850,21:437,22:850,23:865,24:437,25:437,26:850,27:437,28:863,29:850,31:852,34:852,35:852,36:860,37:850,38:866,55:850,64:852,77:936,78:949,79:950,80:874,87:1252,88:1252,89:1252,108:863,134:737,135:852,136:857,204:1257,255:16969},t=Ju({1:437,2:850,3:1252,4:1e4,100:852,101:866,102:865,103:861,104:895,105:620,106:737,107:857,120:950,121:949,122:936,123:932,124:874,125:1255,126:1256,150:10007,151:10029,152:10006,200:1250,201:1251,202:1254,203:1253,0:20127});function n(t,n){var a=n||{};a.dateNF||(a.dateNF="yyyymmdd");var o=ig(function(t,n){var a=[],o=Gp(1);switch(n.type){case"base64":o=Kp(zp(t));break;case"binary":o=Kp(t);break;case"buffer":case"array":o=t}Wf(o,0);var s=o.read_shift(1),r=!!(136&s),i=!1,l=!1;switch(s){case 2:case 3:case 131:case 139:case 245:break;case 48:case 49:i=!0,r=!0;break;case 140:l=!0;break;default:throw new Error("DBF Unsupported Version: "+s.toString(16))}var c=0,m=521;2==s&&(c=o.read_shift(2)),o.l+=3,2!=s&&(c=o.read_shift(4)),c>1048576&&(c=1e6),2!=s&&(m=o.read_shift(2));var d=o.read_shift(2),p=n.codepage||1252;2!=s&&(o.l+=16,o.read_shift(1),0!==o[o.l]&&(p=e[o[o.l]]),o.l+=1,o.l+=2),l&&(o.l+=36);for(var u=[],h={},f=Math.min(o.length,2==s?521:m-10-(i?264:0)),g=l?32:11;o.l<f&&13!=o[o.l];)switch((h={}).name=Lp.utils.decode(p,o.slice(o.l,o.l+g)).replace(/[\u0000\r\n].*$/g,""),o.l+=g,h.type=String.fromCharCode(o.read_shift(1)),2==s||l||(h.offset=o.read_shift(4)),h.len=o.read_shift(1),2==s&&(h.offset=o.read_shift(2)),h.dec=o.read_shift(1),h.name.length&&u.push(h),2!=s&&(o.l+=l?13:14),h.type){case"B":i&&8==h.len||!n.WTF||console.log("Skipping "+h.name+":"+h.type);break;case"G":case"P":n.WTF&&console.log("Skipping "+h.name+":"+h.type);break;case"+":case"0":case"@":case"C":case"D":case"F":case"I":case"L":case"M":case"N":case"O":case"T":case"Y":break;default:throw new Error("Unknown Field Type: "+h.type)}if(13!==o[o.l]&&(o.l=m-1),13!==o.read_shift(1))throw new Error("DBF Terminator not found "+o.l+" "+o[o.l]);o.l=m;var y=0,v=0;for(a[0]=[],v=0;v!=u.length;++v)a[0][v]=u[v].name;for(;c-- >0;)if(42!==o[o.l])for(++o.l,a[++y]=[],v=0,v=0;v!=u.length;++v){var b=o.slice(o.l,o.l+u[v].len);o.l+=u[v].len,Wf(b,0);var w=Lp.utils.decode(p,b);switch(u[v].type){case"C":w.trim().length&&(a[y][v]=w.replace(/\s+$/,""));break;case"D":8===w.length?a[y][v]=new Date(+w.slice(0,4),+w.slice(4,6)-1,+w.slice(6,8)):a[y][v]=w;break;case"F":a[y][v]=parseFloat(w.trim());break;case"+":case"I":a[y][v]=l?2147483648^b.read_shift(-4,"i"):b.read_shift(4,"i");break;case"L":switch(w.trim().toUpperCase()){case"Y":case"T":a[y][v]=!0;break;case"N":case"F":a[y][v]=!1;break;case"":case"?":break;default:throw new Error("DBF Unrecognized L:|"+w+"|")}break;case"M":if(!r)throw new Error("DBF Unexpected MEMO for type "+s.toString(16));a[y][v]="##MEMO##"+(l?parseInt(w.trim(),10):b.read_shift(4));break;case"N":(w=w.replace(/\u0000/g,"").trim())&&"."!=w&&(a[y][v]=+w||0);break;case"@":a[y][v]=new Date(b.read_shift(-8,"f")-621356832e5);break;case"T":a[y][v]=new Date(864e5*(b.read_shift(4)-2440588)+b.read_shift(4));break;case"Y":a[y][v]=b.read_shift(4,"i")/1e4+b.read_shift(4,"i")/1e4*Math.pow(2,32);break;case"O":a[y][v]=-b.read_shift(-8,"f");break;case"B":if(i&&8==u[v].len){a[y][v]=b.read_shift(8,"f");break}case"G":case"P":b.l+=u[v].len;break;case"0":if("_NullFlags"===u[v].name)break;default:throw new Error("DBF Unsupported data type "+u[v].type)}}else o.l+=d;if(2!=s&&o.l<o.length&&26!=o[o.l++])throw new Error("DBF EOF Marker missing "+(o.l-1)+" of "+o.length+" "+o[o.l-1].toString(16));return n&&n.sheetRows&&(a=a.slice(0,n.sheetRows)),n.DBF=u,a}(t,a),a);return o["!cols"]=a.DBF.map((function(e){return{wch:e.len,DBF:e}})),delete a.DBF,o}var a={B:8,C:250,L:1,D:8,"?":0,"":0};return{to_workbook:function(e,t){try{return sg(n(e,t),t)}catch(a){if(t&&t.WTF)throw a}return{SheetNames:[],Sheets:{}}},to_sheet:n,from_sheet:function(e,n){var o=n||{};if(+o.codepage>=0&&Rp(+o.codepage),"string"==o.type)throw new Error("Cannot write DBF to JS string");var s=Uf(),r=Jw(e,{header:1,raw:!0,cellDates:!0}),i=r[0],l=r.slice(1),c=e["!cols"]||[],m=0,d=0,p=0,u=1;for(m=0;m<i.length;++m)if(((c[m]||{}).DBF||{}).name)i[m]=c[m].DBF.name,++p;else if(null!=i[m]){if(++p,"number"===typeof i[m]&&(i[m]=i[m].toString(10)),"string"!==typeof i[m])throw new Error("DBF Invalid column name "+i[m]+" |"+typeof i[m]+"|");if(i.indexOf(i[m])!==m)for(d=0;d<1024;++d)if(-1==i.indexOf(i[m]+"_"+d)){i[m]+="_"+d;break}}var h=ng(e["!ref"]),f=[],g=[],y=[];for(m=0;m<=h.e.c-h.s.c;++m){var v="",b="",w=0,k=[];for(d=0;d<l.length;++d)null!=l[d][m]&&k.push(l[d][m]);if(0!=k.length&&null!=i[m]){for(d=0;d<k.length;++d){switch(typeof k[d]){case"number":b="B";break;case"string":default:b="C";break;case"boolean":b="L";break;case"object":b=k[d]instanceof Date?"D":"C"}w=Math.max(w,String(k[d]).length),v=v&&v!=b?"C":b}w>250&&(w=250),"C"==(b=((c[m]||{}).DBF||{}).type)&&c[m].DBF.len>w&&(w=c[m].DBF.len),"B"==v&&"N"==b&&(v="N",y[m]=c[m].DBF.dec,w=c[m].DBF.len),g[m]="C"==v||"N"==b?w:a[v]||0,u+=g[m],f[m]=v}else f[m]="?"}var x=s.next(32);for(x.write_shift(4,318902576),x.write_shift(4,l.length),x.write_shift(2,296+32*p),x.write_shift(2,u),m=0;m<4;++m)x.write_shift(4,0);for(x.write_shift(4,0|(+t[Ap]||3)<<8),m=0,d=0;m<i.length;++m)if(null!=i[m]){var _=s.next(32),T=(i[m].slice(-10)+"\0\0\0\0\0\0\0\0\0\0\0").slice(0,11);_.write_shift(1,T,"sbcs"),_.write_shift(1,"?"==f[m]?"C":f[m],"sbcs"),_.write_shift(4,d),_.write_shift(1,g[m]||a[f[m]]||0),_.write_shift(1,y[m]||0),_.write_shift(1,2),_.write_shift(4,0),_.write_shift(1,0),_.write_shift(4,0),_.write_shift(4,0),d+=g[m]||a[f[m]]||0}var S=s.next(264);for(S.write_shift(4,13),m=0;m<65;++m)S.write_shift(4,0);for(m=0;m<l.length;++m){var C=s.next(u);for(C.write_shift(1,0),d=0;d<i.length;++d)if(null!=i[d])switch(f[d]){case"L":C.write_shift(1,null==l[m][d]?63:l[m][d]?84:70);break;case"B":C.write_shift(8,l[m][d]||0,"f");break;case"N":var E="0";for("number"==typeof l[m][d]&&(E=l[m][d].toFixed(y[d]||0)),p=0;p<g[d]-E.length;++p)C.write_shift(1,32);C.write_shift(1,E,"sbcs");break;case"D":l[m][d]?(C.write_shift(4,("0000"+l[m][d].getFullYear()).slice(-4),"sbcs"),C.write_shift(2,("00"+(l[m][d].getMonth()+1)).slice(-2),"sbcs"),C.write_shift(2,("00"+l[m][d].getDate()).slice(-2),"sbcs")):C.write_shift(8,"00000000","sbcs");break;case"C":var j=String(null!=l[m][d]?l[m][d]:"").slice(0,g[d]);for(C.write_shift(1,j,"sbcs"),p=0;p<g[d]-j.length;++p)C.write_shift(1,32)}}return s.next(1).write_shift(1,26),s.end()}}}(),Py=function(){var e={AA:"\xc0",BA:"\xc1",CA:"\xc2",DA:195,HA:"\xc4",JA:197,AE:"\xc8",BE:"\xc9",CE:"\xca",HE:"\xcb",AI:"\xcc",BI:"\xcd",CI:"\xce",HI:"\xcf",AO:"\xd2",BO:"\xd3",CO:"\xd4",DO:213,HO:"\xd6",AU:"\xd9",BU:"\xda",CU:"\xdb",HU:"\xdc",Aa:"\xe0",Ba:"\xe1",Ca:"\xe2",Da:227,Ha:"\xe4",Ja:229,Ae:"\xe8",Be:"\xe9",Ce:"\xea",He:"\xeb",Ai:"\xec",Bi:"\xed",Ci:"\xee",Hi:"\xef",Ao:"\xf2",Bo:"\xf3",Co:"\xf4",Do:245,Ho:"\xf6",Au:"\xf9",Bu:"\xfa",Cu:"\xfb",Hu:"\xfc",KC:"\xc7",Kc:"\xe7",q:"\xe6",z:"\u0153",a:"\xc6",j:"\u0152",DN:209,Dn:241,Hy:255,S:169,c:170,R:174,"B ":180,0:176,1:177,2:178,3:179,5:181,6:182,7:183,Q:185,k:186,b:208,i:216,l:222,s:240,y:248,"!":161,'"':162,"#":163,"(":164,"%":165,"'":167,"H ":168,"+":171,";":187,"<":188,"=":189,">":190,"?":191,"{":223},t=new RegExp("\x1bN("+Yu(e).join("|").replace(/\|\|\|/,"|\\||").replace(/([?()+])/g,"\\$1")+"|\\|)","gm"),n=function(t,n){var a=e[n];return"number"==typeof a?Mp(a):a},a=function(e,t,n){var a=t.charCodeAt(0)-32<<4|n.charCodeAt(0)-48;return 59==a?e:Mp(a)};function o(e,o){var s,r=e.split(/[\n\r]+/),i=-1,l=-1,c=0,m=0,d=[],p=[],u=null,h={},f=[],g=[],y=[],v=0;for(+o.codepage>=0&&Rp(+o.codepage);c!==r.length;++c){v=0;var b,w=r[c].trim().replace(/\x1B([\x20-\x2F])([\x30-\x3F])/g,a).replace(t,n),k=w.replace(/;;/g,"\0").split(";").map((function(e){return e.replace(/\u0000/g,";")})),x=k[0];if(w.length>0)switch(x){case"ID":case"E":case"B":case"O":case"W":break;case"P":"P"==k[1].charAt(0)&&p.push(w.slice(3).replace(/;;/g,";"));break;case"C":var _=!1,T=!1,S=!1,C=!1,E=-1,j=-1;for(m=1;m<k.length;++m)switch(k[m].charAt(0)){case"A":case"G":break;case"X":l=parseInt(k[m].slice(1))-1,T=!0;break;case"Y":for(i=parseInt(k[m].slice(1))-1,T||(l=0),s=d.length;s<=i;++s)d[s]=[];break;case"K":'"'===(b=k[m].slice(1)).charAt(0)?b=b.slice(1,b.length-1):"TRUE"===b?b=!0:"FALSE"===b?b=!1:isNaN(ph(b))?isNaN(hh(b).getDate())||(b=lh(b)):(b=ph(b),null!==u&&Iu(u)&&(b=oh(b))),"undefined"!==typeof Lp&&"string"==typeof b&&"string"!=(o||{}).type&&(o||{}).codepage&&(b=Lp.utils.decode(o.codepage,b)),_=!0;break;case"E":C=!0;var A=Tv(k[m].slice(1),{r:i,c:l});d[i][l]=[d[i][l],A];break;case"S":S=!0,d[i][l]=[d[i][l],"S5S"];break;case"R":E=parseInt(k[m].slice(1))-1;break;case"C":j=parseInt(k[m].slice(1))-1;break;default:if(o&&o.WTF)throw new Error("SYLK bad record "+w)}if(_&&(d[i][l]&&2==d[i][l].length?d[i][l][0]=b:d[i][l]=b,u=null),S){if(C)throw new Error("SYLK shared formula cannot have own formula");var N=E>-1&&d[E][j];if(!N||!N[1])throw new Error("SYLK shared formula cannot find base");d[i][l][1]=Ev(N[1],{r:i-E,c:l-j})}break;case"F":var D=0;for(m=1;m<k.length;++m)switch(k[m].charAt(0)){case"X":l=parseInt(k[m].slice(1))-1,++D;break;case"Y":for(i=parseInt(k[m].slice(1))-1,s=d.length;s<=i;++s)d[s]=[];break;case"M":v=parseInt(k[m].slice(1))/20;break;case"F":case"G":case"S":case"D":case"N":break;case"P":u=p[parseInt(k[m].slice(1))];break;case"W":for(y=k[m].slice(1).split(" "),s=parseInt(y[0],10);s<=parseInt(y[1],10);++s)v=parseInt(y[2],10),g[s-1]=0===v?{hidden:!0}:{wch:v},Jy(g[s-1]);break;case"C":g[l=parseInt(k[m].slice(1))-1]||(g[l]={});break;case"R":f[i=parseInt(k[m].slice(1))-1]||(f[i]={}),v>0?(f[i].hpt=v,f[i].hpx=Qy(v)):0===v&&(f[i].hidden=!0);break;default:if(o&&o.WTF)throw new Error("SYLK bad record "+w)}D<1&&(u=null);break;default:if(o&&o.WTF)throw new Error("SYLK bad record "+w)}}return f.length>0&&(h["!rows"]=f),g.length>0&&(h["!cols"]=g),o&&o.sheetRows&&(d=d.slice(0,o.sheetRows)),[d,h]}function s(e,t){var n=function(e,t){switch(t.type){case"base64":return o(zp(e),t);case"binary":return o(e,t);case"buffer":return o(Up&&Buffer.isBuffer(e)?e.toString("binary"):qp(e),t);case"array":return o(ch(e),t)}throw new Error("Unrecognized type "+t.type)}(e,t),a=n[0],s=n[1],r=ig(a,t);return Yu(s).forEach((function(e){r[e]=s[e]})),r}function r(e,t,n,a){var o="C;Y"+(n+1)+";X"+(a+1)+";K";switch(e.t){case"n":o+=e.v||0,e.f&&!e.F&&(o+=";E"+Cv(e.f,{r:n,c:a}));break;case"b":o+=e.v?"TRUE":"FALSE";break;case"e":o+=e.w||e.v;break;case"d":o+='"'+(e.w||e.v)+'"';break;case"s":o+='"'+e.v.replace(/"/g,"").replace(/;/g,";;")+'"'}return o}return e["|"]=254,{to_workbook:function(e,t){return sg(s(e,t),t)},to_sheet:s,from_sheet:function(e,t){var n,a,o=["ID;PWXL;N;E"],s=[],i=ng(e["!ref"]),l=Array.isArray(e),c="\r\n";o.push("P;PGeneral"),o.push("F;P0;DG0G8;M255"),e["!cols"]&&(a=o,e["!cols"].forEach((function(e,t){var n="F;W"+(t+1)+" "+(t+1)+" ";e.hidden?n+="0":("number"!=typeof e.width||e.wpx||(e.wpx=qy(e.width)),"number"!=typeof e.wpx||e.wch||(e.wch=Yy(e.wpx)),"number"==typeof e.wch&&(n+=Math.round(e.wch)))," "!=n.charAt(n.length-1)&&a.push(n)}))),e["!rows"]&&function(e,t){t.forEach((function(t,n){var a="F;";t.hidden?a+="M0;":t.hpt?a+="M"+20*t.hpt+";":t.hpx&&(a+="M"+20*Xy(t.hpx)+";"),a.length>2&&e.push(a+"R"+(n+1))}))}(o,e["!rows"]),o.push("B;Y"+(i.e.r-i.s.r+1)+";X"+(i.e.c-i.s.c+1)+";D"+[i.s.c,i.s.r,i.e.c,i.e.r].join(" "));for(var m=i.s.r;m<=i.e.r;++m)for(var d=i.s.c;d<=i.e.c;++d){var p=Qf({r:m,c:d});(n=l?(e[m]||[])[d]:e[p])&&(null!=n.v||n.f&&!n.F)&&s.push(r(n,0,m,d))}return o.join(c)+c+s.join(c)+c+"E"+c}}}(),Iy=function(){function e(e,t){for(var n=e.split("\n"),a=-1,o=-1,s=0,r=[];s!==n.length;++s)if("BOT"!==n[s].trim()){if(!(a<0)){for(var i=n[s].trim().split(","),l=i[0],c=i[1],m=n[++s]||"";1&(m.match(/["]/g)||[]).length&&s<n.length-1;)m+="\n"+n[++s];switch(m=m.trim(),+l){case-1:if("BOT"===m){r[++a]=[],o=0;continue}if("EOD"!==m)throw new Error("Unrecognized DIF special command "+m);break;case 0:"TRUE"===m?r[a][o]=!0:"FALSE"===m?r[a][o]=!1:isNaN(ph(c))?isNaN(hh(c).getDate())?r[a][o]=c:r[a][o]=lh(c):r[a][o]=ph(c),++o;break;case 1:(m=(m=m.slice(1,m.length-1)).replace(/""/g,'"'))&&m.match(/^=".*"$/)&&(m=m.slice(2,-1)),r[a][o++]=""!==m?m:null}if("EOD"===m)break}}else r[++a]=[],o=0;return t&&t.sheetRows&&(r=r.slice(0,t.sheetRows)),r}function t(t,n){return ig(function(t,n){switch(n.type){case"base64":return e(zp(t),n);case"binary":return e(t,n);case"buffer":return e(Up&&Buffer.isBuffer(t)?t.toString("binary"):qp(t),n);case"array":return e(ch(t),n)}throw new Error("Unrecognized type "+n.type)}(t,n),n)}var n=function(){var e=function(e,t,n,a,o){e.push(t),e.push(n+","+a),e.push('"'+o.replace(/"/g,'""')+'"')},t=function(e,t,n,a){e.push(t+","+n),e.push(1==t?'"'+a.replace(/"/g,'""')+'"':a)};return function(n){var a,o=[],s=ng(n["!ref"]),r=Array.isArray(n);e(o,"TABLE",0,1,"sheetjs"),e(o,"VECTORS",0,s.e.r-s.s.r+1,""),e(o,"TUPLES",0,s.e.c-s.s.c+1,""),e(o,"DATA",0,0,"");for(var i=s.s.r;i<=s.e.r;++i){t(o,-1,0,"BOT");for(var l=s.s.c;l<=s.e.c;++l){var c=Qf({r:i,c:l});if(a=r?(n[i]||[])[l]:n[c])switch(a.t){case"n":var m=a.w;m||null==a.v||(m=a.v),null==m?a.f&&!a.F?t(o,1,0,"="+a.f):t(o,1,0,""):t(o,0,m,"V");break;case"b":t(o,0,a.v?1:0,a.v?"TRUE":"FALSE");break;case"s":t(o,1,0,isNaN(a.v)?a.v:'="'+a.v+'"');break;case"d":a.w||(a.w=Wu(a.z||iu[14],eh(lh(a.v)))),t(o,0,a.w,"V");break;default:t(o,1,0,"")}else t(o,1,0,"")}}t(o,-1,0,"EOD");return o.join("\r\n")}}();return{to_workbook:function(e,n){return sg(t(e,n),n)},to_sheet:t,from_sheet:n}}(),Ly=function(){function e(e){return e.replace(/\\b/g,"\\").replace(/\\c/g,":").replace(/\\n/g,"\n")}function t(e){return e.replace(/\\/g,"\\b").replace(/:/g,"\\c").replace(/\n/g,"\\n")}function n(t,n){return ig(function(t,n){for(var a=t.split("\n"),o=-1,s=-1,r=0,i=[];r!==a.length;++r){var l=a[r].trim().split(":");if("cell"===l[0]){var c=Xf(l[1]);if(i.length<=c.r)for(o=i.length;o<=c.r;++o)i[o]||(i[o]=[]);switch(o=c.r,s=c.c,l[2]){case"t":i[o][s]=e(l[3]);break;case"v":i[o][s]=+l[3];break;case"vtf":var m=l[l.length-1];case"vtc":"nl"===l[3]?i[o][s]=!!+l[4]:i[o][s]=+l[4],"vtf"==l[2]&&(i[o][s]=[i[o][s],m])}}}return n&&n.sheetRows&&(i=i.slice(0,n.sheetRows)),i}(t,n),n)}var a=["socialcalc:version:1.5","MIME-Version: 1.0","Content-Type: multipart/mixed; boundary=SocialCalcSpreadsheetControlSave"].join("\n"),o=["--SocialCalcSpreadsheetControlSave","Content-type: text/plain; charset=UTF-8"].join("\n")+"\n",s=["# SocialCalc Spreadsheet Control Save","part:sheet"].join("\n"),r="--SocialCalcSpreadsheetControlSave--";function i(e){if(!e||!e["!ref"])return"";for(var n,a=[],o=[],s="",r=eg(e["!ref"]),i=Array.isArray(e),l=r.s.r;l<=r.e.r;++l)for(var c=r.s.c;c<=r.e.c;++c)if(s=Qf({r:l,c:c}),(n=i?(e[l]||[])[c]:e[s])&&null!=n.v&&"z"!==n.t){switch(o=["cell",s,"t"],n.t){case"s":case"str":o.push(t(n.v));break;case"n":n.f?(o[2]="vtf",o[3]="n",o[4]=n.v,o[5]=t(n.f)):(o[2]="v",o[3]=n.v);break;case"b":o[2]="vt"+(n.f?"f":"c"),o[3]="nl",o[4]=n.v?"1":"0",o[5]=t(n.f||(n.v?"TRUE":"FALSE"));break;case"d":var m=eh(lh(n.v));o[2]="vtc",o[3]="nd",o[4]=""+m,o[5]=n.w||Wu(n.z||iu[14],m);break;case"e":continue}a.push(o.join(":"))}return a.push("sheet:c:"+(r.e.c-r.s.c+1)+":r:"+(r.e.r-r.s.r+1)+":tvf:1"),a.push("valueformat:1:text-wiki"),a.join("\n")}return{to_workbook:function(e,t){return sg(n(e,t),t)},to_sheet:n,from_sheet:function(e){return[a,o,s,o,i(e),r].join("\n")}}}(),Fy=function(){function e(e,t,n,a,o){o.raw?t[n][a]=e:""===e||("TRUE"===e?t[n][a]=!0:"FALSE"===e?t[n][a]=!1:isNaN(ph(e))?isNaN(hh(e).getDate())?t[n][a]=e:t[n][a]=lh(e):t[n][a]=ph(e))}var t={44:",",9:"\t",59:";",124:"|"},n={44:3,9:2,59:1,124:0};function a(e){for(var a={},o=!1,s=0,r=0;s<e.length;++s)34==(r=e.charCodeAt(s))?o=!o:!o&&r in t&&(a[r]=(a[r]||0)+1);for(s in r=[],a)Object.prototype.hasOwnProperty.call(a,s)&&r.push([a[s],s]);if(!r.length)for(s in a=n)Object.prototype.hasOwnProperty.call(a,s)&&r.push([a[s],s]);return r.sort((function(e,t){return e[0]-t[0]||n[e[1]]-n[t[1]]})),t[r.pop()[1]]||44}function o(e,t){var n=t||{},o="";var s=n.dense?[]:{},r={s:{c:0,r:0},e:{c:0,r:0}};"sep="==e.slice(0,4)?13==e.charCodeAt(5)&&10==e.charCodeAt(6)?(o=e.charAt(4),e=e.slice(7)):13==e.charCodeAt(5)||10==e.charCodeAt(5)?(o=e.charAt(4),e=e.slice(6)):o=a(e.slice(0,1024)):o=n&&n.FS?n.FS:a(e.slice(0,1024));var i=0,l=0,c=0,m=0,d=0,p=o.charCodeAt(0),u=!1,h=0,f=e.charCodeAt(0);e=e.replace(/\r\n/gm,"\n");var g=null!=n.dateNF?function(e){var t="number"==typeof e?iu[e]:e;return t=t.replace(Hu,"(\\d+)"),new RegExp("^"+t+"$")}(n.dateNF):null;function y(){var t=e.slice(m,d),a={};if('"'==t.charAt(0)&&'"'==t.charAt(t.length-1)&&(t=t.slice(1,-1).replace(/""/g,'"')),0===t.length)a.t="z";else if(n.raw)a.t="s",a.v=t;else if(0===t.trim().length)a.t="s",a.v=t;else if(61==t.charCodeAt(0))34==t.charCodeAt(1)&&34==t.charCodeAt(t.length-1)?(a.t="s",a.v=t.slice(2,-1).replace(/""/g,'"')):1!=t.length?(a.t="n",a.f=t.slice(1)):(a.t="s",a.v=t);else if("TRUE"==t)a.t="b",a.v=!0;else if("FALSE"==t)a.t="b",a.v=!1;else if(isNaN(c=ph(t)))if(!isNaN(hh(t).getDate())||g&&t.match(g)){a.z=n.dateNF||iu[14];var o=0;g&&t.match(g)&&(t=function(e,t,n){var a=-1,o=-1,s=-1,r=-1,i=-1,l=-1;(t.match(Hu)||[]).forEach((function(e,t){var c=parseInt(n[t+1],10);switch(e.toLowerCase().charAt(0)){case"y":a=c;break;case"d":s=c;break;case"h":r=c;break;case"s":l=c;break;case"m":r>=0?i=c:o=c}})),l>=0&&-1==i&&o>=0&&(i=o,o=-1);var c=(""+(a>=0?a:(new Date).getFullYear())).slice(-4)+"-"+("00"+(o>=1?o:1)).slice(-2)+"-"+("00"+(s>=1?s:1)).slice(-2);7==c.length&&(c="0"+c),8==c.length&&(c="20"+c);var m=("00"+(r>=0?r:0)).slice(-2)+":"+("00"+(i>=0?i:0)).slice(-2)+":"+("00"+(l>=0?l:0)).slice(-2);return-1==r&&-1==i&&-1==l?c:-1==a&&-1==o&&-1==s?m:c+"T"+m}(0,n.dateNF,t.match(g)||[]),o=1),n.cellDates?(a.t="d",a.v=lh(t,o)):(a.t="n",a.v=eh(lh(t,o))),!1!==n.cellText&&(a.w=Wu(a.z,a.v instanceof Date?eh(a.v):a.v)),n.cellNF||delete a.z}else a.t="s",a.v=t;else a.t="n",!1!==n.cellText&&(a.w=t),a.v=c;if("z"==a.t||(n.dense?(s[i]||(s[i]=[]),s[i][l]=a):s[Qf({c:l,r:i})]=a),m=d+1,f=e.charCodeAt(m),r.e.c<l&&(r.e.c=l),r.e.r<i&&(r.e.r=i),h==p)++l;else if(l=0,++i,n.sheetRows&&n.sheetRows<=i)return!0}e:for(;d<e.length;++d)switch(h=e.charCodeAt(d)){case 34:34===f&&(u=!u);break;case p:case 10:case 13:if(!u&&y())break e}return d-m>0&&y(),s["!ref"]=tg(r),s}function s(t,n){return n&&n.PRN?n.FS||"sep="==t.slice(0,4)||t.indexOf("\t")>=0||t.indexOf(",")>=0||t.indexOf(";")>=0?o(t,n):ig(function(t,n){var a=n||{},o=[];if(!t||0===t.length)return o;for(var s=t.split(/[\r\n]/),r=s.length-1;r>=0&&0===s[r].length;)--r;for(var i=10,l=0,c=0;c<=r;++c)-1==(l=s[c].indexOf(" "))?l=s[c].length:l++,i=Math.max(i,l);for(c=0;c<=r;++c){o[c]=[];var m=0;for(e(s[c].slice(0,i).trim(),o,c,m,a),m=1;m<=(s[c].length-i)/10+1;++m)e(s[c].slice(i+10*(m-1),i+10*m).trim(),o,c,m,a)}return a.sheetRows&&(o=o.slice(0,a.sheetRows)),o}(t,n),n):o(t,n)}function r(e,t){var n="",a="string"==t.type?[0,0,0,0]:Hw(e,t);switch(t.type){case"base64":n=zp(e);break;case"binary":case"string":n=e;break;case"buffer":n=65001==t.codepage?e.toString("utf8"):t.codepage&&"undefined"!==typeof Lp?Lp.utils.decode(t.codepage,e):Up&&Buffer.isBuffer(e)?e.toString("binary"):qp(e);break;case"array":n=ch(e);break;default:throw new Error("Unrecognized type "+t.type)}return 239==a[0]&&187==a[1]&&191==a[2]?n=Dh(n.slice(3)):"string"!=t.type&&"buffer"!=t.type&&65001==t.codepage?n=Dh(n):"binary"==t.type&&"undefined"!==typeof Lp&&t.codepage&&(n=Lp.utils.decode(t.codepage,Lp.utils.encode(28591,n))),"socialcalc:version:"==n.slice(0,19)?Ly.to_sheet("string"==t.type?n:Dh(n),t):s(n,t)}return{to_workbook:function(e,t){return sg(r(e,t),t)},to_sheet:r,from_sheet:function(e){for(var t,n=[],a=ng(e["!ref"]),o=Array.isArray(e),s=a.s.r;s<=a.e.r;++s){for(var r=[],i=a.s.c;i<=a.e.c;++i){var l=Qf({r:s,c:i});if((t=o?(e[s]||[])[i]:e[l])&&null!=t.v){for(var c=(t.w||(og(t),t.w)||"").slice(0,10);c.length<10;)c+=" ";r.push(c+(0===i?" ":""))}else r.push(" ")}n.push(r.join(""))}return n.join("\n")}}}();var My=function(){function e(e,t,n){if(e){Wf(e,e.l||0);for(var a=n.Enum||y;e.l<e.length;){var o=e.read_shift(2),s=a[o]||a[65535],r=e.read_shift(2),i=e.l+r,l=s.f&&s.f(e,r,n);if(e.l=i,t(l,s,o))return}}}function t(t,n){if(!t)return t;var a=n||{};var o=a.dense?[]:{},s="Sheet1",r="",i=0,l={},c=[],m=[],d={s:{r:0,c:0},e:{r:0,c:0}},p=a.sheetRows||0;if(0==t[2]&&(8==t[3]||9==t[3])&&t.length>=16&&5==t[14]&&108===t[15])throw new Error("Unsupported Works 3 for Mac file");if(2==t[2])a.Enum=y,e(t,(function(e,t,n){switch(n){case 0:a.vers=e,e>=4096&&(a.qpro=!0);break;case 6:d=e;break;case 204:e&&(r=e);break;case 222:r=e;break;case 15:case 51:a.qpro||(e[1].v=e[1].v.slice(1));case 13:case 14:case 16:14==n&&112==(112&e[2])&&(15&e[2])>1&&(15&e[2])<15&&(e[1].z=a.dateNF||iu[14],a.cellDates&&(e[1].t="d",e[1].v=oh(e[1].v))),a.qpro&&e[3]>i&&(o["!ref"]=tg(d),l[s]=o,c.push(s),o=a.dense?[]:{},d={s:{r:0,c:0},e:{r:0,c:0}},i=e[3],s=r||"Sheet"+(i+1),r="");var m=a.dense?(o[e[0].r]||[])[e[0].c]:o[Qf(e[0])];if(m){m.t=e[1].t,m.v=e[1].v,null!=e[1].z&&(m.z=e[1].z),null!=e[1].f&&(m.f=e[1].f);break}a.dense?(o[e[0].r]||(o[e[0].r]=[]),o[e[0].r][e[0].c]=e[1]):o[Qf(e[0])]=e[1]}}),a);else{if(26!=t[2]&&14!=t[2])throw new Error("Unrecognized LOTUS BOF "+t[2]);a.Enum=v,14==t[2]&&(a.qpro=!0,t.l=0),e(t,(function(e,t,n){switch(n){case 204:s=e;break;case 22:e[1].v=e[1].v.slice(1);case 23:case 24:case 25:case 37:case 39:case 40:if(e[3]>i&&(o["!ref"]=tg(d),l[s]=o,c.push(s),o=a.dense?[]:{},d={s:{r:0,c:0},e:{r:0,c:0}},i=e[3],s="Sheet"+(i+1)),p>0&&e[0].r>=p)break;a.dense?(o[e[0].r]||(o[e[0].r]=[]),o[e[0].r][e[0].c]=e[1]):o[Qf(e[0])]=e[1],d.e.c<e[0].c&&(d.e.c=e[0].c),d.e.r<e[0].r&&(d.e.r=e[0].r);break;case 27:e[14e3]&&(m[e[14e3][0]]=e[14e3][1]);break;case 1537:m[e[0]]=e[1],e[0]==i&&(s=e[1])}}),a)}if(o["!ref"]=tg(d),l[r||s]=o,c.push(r||s),!m.length)return{SheetNames:c,Sheets:l};for(var u={},h=[],f=0;f<m.length;++f)l[c[f]]?(h.push(m[f]||c[f]),u[m[f]]=l[m[f]]||l[c[f]]):(h.push(m[f]),u[m[f]]={"!ref":"A1"});return{SheetNames:h,Sheets:u}}function n(e,t,n){var a=[{c:0,r:0},{t:"n",v:0},0,0];return n.qpro&&20768!=n.vers?(a[0].c=e.read_shift(1),a[3]=e.read_shift(1),a[0].r=e.read_shift(2),e.l+=2):(a[2]=e.read_shift(1),a[0].c=e.read_shift(2),a[0].r=e.read_shift(2)),a}function a(e,t,a){var o=e.l+t,s=n(e,0,a);if(s[1].t="s",20768==a.vers){e.l++;var r=e.read_shift(1);return s[1].v=e.read_shift(r,"utf8"),s}return a.qpro&&e.l++,s[1].v=e.read_shift(o-e.l,"cstr"),s}function o(e,t,n){var a=zf(7+n.length);a.write_shift(1,255),a.write_shift(2,t),a.write_shift(2,e),a.write_shift(1,39);for(var o=0;o<a.length;++o){var s=n.charCodeAt(o);a.write_shift(1,s>=128?95:s)}return a.write_shift(1,0),a}function s(e,t,n){var a=zf(7);return a.write_shift(1,255),a.write_shift(2,t),a.write_shift(2,e),a.write_shift(2,n,"i"),a}function r(e,t,n){var a=zf(13);return a.write_shift(1,255),a.write_shift(2,t),a.write_shift(2,e),a.write_shift(8,n,"f"),a}function i(e,t,n){var a=32768&t;return t=(a?e:0)+((t&=-32769)>=8192?t-16384:t),(a?"":"$")+(n?Jf(t):Yf(t))}var l={51:["FALSE",0],52:["TRUE",0],70:["LEN",1],80:["SUM",69],81:["AVERAGEA",69],82:["COUNTA",69],83:["MINA",69],84:["MAXA",69],111:["T",1]},c=["","","","","","","","","","+","-","*","/","^","=","<>","<=",">=","<",">","","","","","&","","","","","","",""];function m(e){var t=[{c:0,r:0},{t:"n",v:0},0];return t[0].r=e.read_shift(2),t[3]=e[e.l++],t[0].c=e[e.l++],t}function d(e,t,n,a){var o=zf(6+a.length);o.write_shift(2,e),o.write_shift(1,n),o.write_shift(1,t),o.write_shift(1,39);for(var s=0;s<a.length;++s){var r=a.charCodeAt(s);o.write_shift(1,r>=128?95:r)}return o.write_shift(1,0),o}function p(e,t){var n=m(e),a=e.read_shift(4),o=e.read_shift(4),s=e.read_shift(2);if(65535==s)return 0===a&&3221225472===o?(n[1].t="e",n[1].v=15):0===a&&3489660928===o?(n[1].t="e",n[1].v=42):n[1].v=0,n;var r=32768&s;return s=(32767&s)-16446,n[1].v=(1-2*r)*(o*Math.pow(2,s+32)+a*Math.pow(2,s)),n}function u(e,t,n,a){var o=zf(14);if(o.write_shift(2,e),o.write_shift(1,n),o.write_shift(1,t),0==a)return o.write_shift(4,0),o.write_shift(4,0),o.write_shift(2,65535),o;var s,r=0,i=0,l=0;return a<0&&(r=1,a=-a),i=0|Math.log2(a),0==(2147483648&(l=(a/=Math.pow(2,i-31))>>>0))&&(++i,l=(a/=2)>>>0),a-=l,l|=2147483648,l>>>=0,s=(a*=Math.pow(2,32))>>>0,o.write_shift(4,s),o.write_shift(4,l),i+=16383+(r?32768:0),o.write_shift(2,i),o}function h(e,t){var n=m(e),a=e.read_shift(8,"f");return n[1].v=a,n}function f(e,t){return 0==e[e.l+t-1]?e.read_shift(t,"cstr"):""}function g(e,t){var n=zf(5+e.length);n.write_shift(2,14e3),n.write_shift(2,t);for(var a=0;a<e.length;++a){var o=e.charCodeAt(a);n[n.l++]=o>127?95:o}return n[n.l++]=0,n}var y={0:{n:"BOF",f:my},1:{n:"EOF"},2:{n:"CALCMODE"},3:{n:"CALCORDER"},4:{n:"SPLIT"},5:{n:"SYNC"},6:{n:"RANGE",f:function(e,t,n){var a={s:{c:0,r:0},e:{c:0,r:0}};return 8==t&&n.qpro?(a.s.c=e.read_shift(1),e.l++,a.s.r=e.read_shift(2),a.e.c=e.read_shift(1),e.l++,a.e.r=e.read_shift(2),a):(a.s.c=e.read_shift(2),a.s.r=e.read_shift(2),12==t&&n.qpro&&(e.l+=2),a.e.c=e.read_shift(2),a.e.r=e.read_shift(2),12==t&&n.qpro&&(e.l+=2),65535==a.s.c&&(a.s.c=a.e.c=a.s.r=a.e.r=0),a)}},7:{n:"WINDOW1"},8:{n:"COLW1"},9:{n:"WINTWO"},10:{n:"COLW2"},11:{n:"NAME"},12:{n:"BLANK"},13:{n:"INTEGER",f:function(e,t,a){var o=n(e,0,a);return o[1].v=e.read_shift(2,"i"),o}},14:{n:"NUMBER",f:function(e,t,a){var o=n(e,0,a);return o[1].v=e.read_shift(8,"f"),o}},15:{n:"LABEL",f:a},16:{n:"FORMULA",f:function(e,t,a){var o=e.l+t,s=n(e,0,a);if(s[1].v=e.read_shift(8,"f"),a.qpro)e.l=o;else{var r=e.read_shift(2);!function(e,t){Wf(e,0);var n=[],a=0,o="",s="",r="",m="";for(;e.l<e.length;){var d=e[e.l++];switch(d){case 0:n.push(e.read_shift(8,"f"));break;case 1:s=i(t[0].c,e.read_shift(2),!0),o=i(t[0].r,e.read_shift(2),!1),n.push(s+o);break;case 2:var p=i(t[0].c,e.read_shift(2),!0),u=i(t[0].r,e.read_shift(2),!1);s=i(t[0].c,e.read_shift(2),!0),o=i(t[0].r,e.read_shift(2),!1),n.push(p+u+":"+s+o);break;case 3:if(e.l<e.length)return void console.error("WK1 premature formula end");break;case 4:n.push("("+n.pop()+")");break;case 5:n.push(e.read_shift(2));break;case 6:for(var h="";d=e[e.l++];)h+=String.fromCharCode(d);n.push('"'+h.replace(/"/g,'""')+'"');break;case 8:n.push("-"+n.pop());break;case 23:n.push("+"+n.pop());break;case 22:n.push("NOT("+n.pop()+")");break;case 20:case 21:m=n.pop(),r=n.pop(),n.push(["AND","OR"][d-20]+"("+r+","+m+")");break;default:if(d<32&&c[d])m=n.pop(),r=n.pop(),n.push(r+c[d]+m);else{if(!l[d])return d<=7?console.error("WK1 invalid opcode "+d.toString(16)):d<=24?console.error("WK1 unsupported op "+d.toString(16)):d<=30?console.error("WK1 invalid opcode "+d.toString(16)):d<=115?console.error("WK1 unsupported function opcode "+d.toString(16)):console.error("WK1 unrecognized opcode "+d.toString(16));if(69==(a=l[d][1])&&(a=e[e.l++]),a>n.length)return void console.error("WK1 bad formula parse 0x"+d.toString(16)+":|"+n.join("|")+"|");var f=n.slice(-a);n.length-=a,n.push(l[d][0]+"("+f.join(",")+")")}}}1==n.length?t[1].f=""+n[0]:console.error("WK1 bad formula parse |"+n.join("|")+"|")}(e.slice(e.l,e.l+r),s),e.l+=r}return s}},24:{n:"TABLE"},25:{n:"ORANGE"},26:{n:"PRANGE"},27:{n:"SRANGE"},28:{n:"FRANGE"},29:{n:"KRANGE1"},32:{n:"HRANGE"},35:{n:"KRANGE2"},36:{n:"PROTEC"},37:{n:"FOOTER"},38:{n:"HEADER"},39:{n:"SETUP"},40:{n:"MARGINS"},41:{n:"LABELFMT"},42:{n:"TITLES"},43:{n:"SHEETJS"},45:{n:"GRAPH"},46:{n:"NGRAPH"},47:{n:"CALCCOUNT"},48:{n:"UNFORMATTED"},49:{n:"CURSORW12"},50:{n:"WINDOW"},51:{n:"STRING",f:a},55:{n:"PASSWORD"},56:{n:"LOCKED"},60:{n:"QUERY"},61:{n:"QUERYNAME"},62:{n:"PRINT"},63:{n:"PRINTNAME"},64:{n:"GRAPH2"},65:{n:"GRAPHNAME"},66:{n:"ZOOM"},67:{n:"SYMSPLIT"},68:{n:"NSROWS"},69:{n:"NSCOLS"},70:{n:"RULER"},71:{n:"NNAME"},72:{n:"ACOMM"},73:{n:"AMACRO"},74:{n:"PARSE"},102:{n:"PRANGES??"},103:{n:"RRANGES??"},104:{n:"FNAME??"},105:{n:"MRANGES??"},204:{n:"SHEETNAMECS",f:f},222:{n:"SHEETNAMELP",f:function(e,t){var n=e[e.l++];n>t-1&&(n=t-1);for(var a="";a.length<n;)a+=String.fromCharCode(e[e.l++]);return a}},65535:{n:""}},v={0:{n:"BOF"},1:{n:"EOF"},2:{n:"PASSWORD"},3:{n:"CALCSET"},4:{n:"WINDOWSET"},5:{n:"SHEETCELLPTR"},6:{n:"SHEETLAYOUT"},7:{n:"COLUMNWIDTH"},8:{n:"HIDDENCOLUMN"},9:{n:"USERRANGE"},10:{n:"SYSTEMRANGE"},11:{n:"ZEROFORCE"},12:{n:"SORTKEYDIR"},13:{n:"FILESEAL"},14:{n:"DATAFILLNUMS"},15:{n:"PRINTMAIN"},16:{n:"PRINTSTRING"},17:{n:"GRAPHMAIN"},18:{n:"GRAPHSTRING"},19:{n:"??"},20:{n:"ERRCELL"},21:{n:"NACELL"},22:{n:"LABEL16",f:function(e,t){var n=m(e);return n[1].t="s",n[1].v=e.read_shift(t-4,"cstr"),n}},23:{n:"NUMBER17",f:p},24:{n:"NUMBER18",f:function(e,t){var n=m(e);n[1].v=e.read_shift(2);var a=n[1].v>>1;if(1&n[1].v)switch(7&a){case 0:a=5e3*(a>>3);break;case 1:a=500*(a>>3);break;case 2:a=(a>>3)/20;break;case 3:a=(a>>3)/200;break;case 4:a=(a>>3)/2e3;break;case 5:a=(a>>3)/2e4;break;case 6:a=(a>>3)/16;break;case 7:a=(a>>3)/64}return n[1].v=a,n}},25:{n:"FORMULA19",f:function(e,t){var n=p(e);return e.l+=t-14,n}},26:{n:"FORMULA1A"},27:{n:"XFORMAT",f:function(e,t){for(var n={},a=e.l+t;e.l<a;){var o=e.read_shift(2);if(14e3==o){for(n[o]=[0,""],n[o][0]=e.read_shift(2);e[e.l];)n[o][1]+=String.fromCharCode(e[e.l]),e.l++;e.l++}}return n}},28:{n:"DTLABELMISC"},29:{n:"DTLABELCELL"},30:{n:"GRAPHWINDOW"},31:{n:"CPA"},32:{n:"LPLAUTO"},33:{n:"QUERY"},34:{n:"HIDDENSHEET"},35:{n:"??"},37:{n:"NUMBER25",f:function(e,t){var n=m(e),a=e.read_shift(4);return n[1].v=a>>6,n}},38:{n:"??"},39:{n:"NUMBER27",f:h},40:{n:"FORMULA28",f:function(e,t){var n=h(e);return e.l+=t-10,n}},142:{n:"??"},147:{n:"??"},150:{n:"??"},151:{n:"??"},152:{n:"??"},153:{n:"??"},154:{n:"??"},155:{n:"??"},156:{n:"??"},163:{n:"??"},174:{n:"??"},175:{n:"??"},176:{n:"??"},177:{n:"??"},184:{n:"??"},185:{n:"??"},186:{n:"??"},187:{n:"??"},188:{n:"??"},195:{n:"??"},201:{n:"??"},204:{n:"SHEETNAMECS",f:f},205:{n:"??"},206:{n:"??"},207:{n:"??"},208:{n:"??"},256:{n:"??"},259:{n:"??"},260:{n:"??"},261:{n:"??"},262:{n:"??"},263:{n:"??"},265:{n:"??"},266:{n:"??"},267:{n:"??"},268:{n:"??"},270:{n:"??"},271:{n:"??"},384:{n:"??"},389:{n:"??"},390:{n:"??"},393:{n:"??"},396:{n:"??"},512:{n:"??"},514:{n:"??"},513:{n:"??"},516:{n:"??"},517:{n:"??"},640:{n:"??"},641:{n:"??"},642:{n:"??"},643:{n:"??"},644:{n:"??"},645:{n:"??"},646:{n:"??"},647:{n:"??"},648:{n:"??"},658:{n:"??"},659:{n:"??"},660:{n:"??"},661:{n:"??"},662:{n:"??"},665:{n:"??"},666:{n:"??"},768:{n:"??"},772:{n:"??"},1537:{n:"SHEETINFOQP",f:function(e,t,n){if(n.qpro&&!(t<21)){var a=e.read_shift(1);return e.l+=17,e.l+=1,e.l+=2,[a,e.read_shift(t-21,"cstr")]}}},1600:{n:"??"},1602:{n:"??"},1793:{n:"??"},1794:{n:"??"},1795:{n:"??"},1796:{n:"??"},1920:{n:"??"},2048:{n:"??"},2049:{n:"??"},2052:{n:"??"},2688:{n:"??"},10998:{n:"??"},12849:{n:"??"},28233:{n:"??"},28484:{n:"??"},65535:{n:""}};return{sheet_to_wk1:function(e,t){var n=t||{};if(+n.codepage>=0&&Rp(+n.codepage),"string"==n.type)throw new Error("Cannot write WK1 to JS string");var a=Uf(),i=ng(e["!ref"]),l=Array.isArray(e),c=[];tw(a,0,function(e){var t=zf(2);return t.write_shift(2,e),t}(1030)),tw(a,6,function(e){var t=zf(8);return t.write_shift(2,e.s.c),t.write_shift(2,e.s.r),t.write_shift(2,e.e.c),t.write_shift(2,e.e.r),t}(i));for(var m=Math.min(i.e.r,8191),d=i.s.r;d<=m;++d)for(var p=Yf(d),u=i.s.c;u<=i.e.c;++u){d===i.s.r&&(c[u]=Jf(u));var h=c[u]+p,f=l?(e[d]||[])[u]:e[h];if(f&&"z"!=f.t)if("n"==f.t)(0|f.v)==f.v&&f.v>=-32768&&f.v<=32767?tw(a,13,s(d,u,f.v)):tw(a,14,r(d,u,f.v));else tw(a,15,o(d,u,og(f).slice(0,239)))}return tw(a,1),a.end()},book_to_wk3:function(e,t){var n=t||{};if(+n.codepage>=0&&Rp(+n.codepage),"string"==n.type)throw new Error("Cannot write WK3 to JS string");var a=Uf();tw(a,0,function(e){var t=zf(26);t.write_shift(2,4096),t.write_shift(2,4),t.write_shift(4,0);for(var n=0,a=0,o=0,s=0;s<e.SheetNames.length;++s){var r=e.SheetNames[s],i=e.Sheets[r];if(i&&i["!ref"]){++o;var l=eg(i["!ref"]);n<l.e.r&&(n=l.e.r),a<l.e.c&&(a=l.e.c)}}n>8191&&(n=8191);return t.write_shift(2,n),t.write_shift(1,o),t.write_shift(1,a),t.write_shift(2,0),t.write_shift(2,0),t.write_shift(1,1),t.write_shift(1,2),t.write_shift(4,0),t.write_shift(4,0),t}(e));for(var o=0,s=0;o<e.SheetNames.length;++o)(e.Sheets[e.SheetNames[o]]||{})["!ref"]&&tw(a,27,g(e.SheetNames[o],s++));var r=0;for(o=0;o<e.SheetNames.length;++o){var i=e.Sheets[e.SheetNames[o]];if(i&&i["!ref"]){for(var l=ng(i["!ref"]),c=Array.isArray(i),m=[],p=Math.min(l.e.r,8191),h=l.s.r;h<=p;++h)for(var f=Yf(h),y=l.s.c;y<=l.e.c;++y){h===l.s.r&&(m[y]=Jf(y));var v=m[y]+f,b=c?(i[h]||[])[y]:i[v];if(b&&"z"!=b.t)if("n"==b.t)tw(a,23,u(h,y,r,b.v));else tw(a,22,d(h,y,r,og(b).slice(0,239)))}++r}}return tw(a,1),a.end()},to_workbook:function(e,n){switch(n.type){case"base64":return t(Kp(zp(e)),n);case"binary":return t(Kp(e),n);case"buffer":case"array":return t(e,n)}throw"Unsupported type "+n.type}}}();var Wy=/^\s|\s$|[\t\n\r]/;function By(e,t){if(!t.bookSST)return"";var n=[yh];n[n.length]=Fh("sst",null,{xmlns:Xh[0],count:e.Count,uniqueCount:e.Unique});for(var a=0;a!=e.length;++a)if(null!=e[a]){var o=e[a],s="<si>";o.r?s+=o.r:(s+="<t",o.t||(o.t=""),o.t.match(Wy)&&(s+=' xml:space="preserve"'),s+=">"+xh(o.t)+"</t>"),s+="</si>",n[n.length]=s}return n.length>2&&(n[n.length]="</sst>",n[1]=n[1].replace("/>",">")),n.join("")}var zy=function(e,t){var n=!1;return null==t&&(n=!0,t=zf(15+4*e.t.length)),t.write_shift(1,0),mg(e.t,t),n?t.slice(0,t.l):t};function Uy(e){var t=Uf();Hf(t,159,function(e,t){return t||(t=zf(8)),t.write_shift(4,e.Count),t.write_shift(4,e.Unique),t}(e));for(var n=0;n<e.length;++n)Hf(t,19,zy(e[n]));return Hf(t,160),t.end()}function Hy(e){if("undefined"!==typeof Lp)return Lp.utils.encode(Ap,e);for(var t=[],n=e.split(""),a=0;a<n.length;++a)t[a]=n[a].charCodeAt(0);return t}function Gy(e){var t,n,a=0,o=Hy(e),s=o.length+1;for((t=Gp(s))[0]=o.length,n=1;n!=s;++n)t[n]=o[n-1];for(n=s-1;n>=0;--n)a=((0===(16384&a)?0:1)|a<<1&32767)^t[n];return 52811^a}var Vy=function(){function e(e,n){switch(n.type){case"base64":return t(zp(e),n);case"binary":return t(e,n);case"buffer":return t(Up&&Buffer.isBuffer(e)?e.toString("binary"):qp(e),n);case"array":return t(ch(e),n)}throw new Error("Unrecognized type "+n.type)}function t(e,t){var n=(t||{}).dense?[]:{},a=e.match(/\\trowd.*?\\row\b/g);if(!a.length)throw new Error("RTF missing table");var o={s:{c:0,r:0},e:{c:0,r:a.length-1}};return a.forEach((function(e,t){Array.isArray(n)&&(n[t]=[]);for(var a,s=/\\\w+\b/g,r=0,i=-1;a=s.exec(e);){if("\\cell"===a[0]){var l=e.slice(r,s.lastIndex-a[0].length);if(" "==l[0]&&(l=l.slice(1)),++i,l.length){var c={v:l,t:"s"};Array.isArray(n)?n[t][i]=c:n[Qf({r:t,c:i})]=c}}r=s.lastIndex}i>o.e.c&&(o.e.c=i)})),n["!ref"]=tg(o),n}return{to_workbook:function(t,n){return sg(e(t,n),n)},to_sheet:e,from_sheet:function(e){for(var t,n=["{\\rtf1\\ansi"],a=ng(e["!ref"]),o=Array.isArray(e),s=a.s.r;s<=a.e.r;++s){n.push("\\trowd\\trautofit1");for(var r=a.s.c;r<=a.e.c;++r)n.push("\\cellx"+(r+1));for(n.push("\\pard\\intbl"),r=a.s.c;r<=a.e.c;++r){var i=Qf({r:s,c:r});(t=o?(e[s]||[])[r]:e[i])&&(null!=t.v||t.f&&!t.F)&&(n.push(" "+(t.w||(og(t),t.w))),n.push("\\cell"))}n.push("\\pard\\intbl\\row")}return n.join("")+"}"}}}();function Ky(e){for(var t=0,n=1;3!=t;++t)n=256*n+(e[t]>255?255:e[t]<0?0:e[t]);return n.toString(16).toUpperCase().slice(1)}var $y=6;function qy(e){return Math.floor((e+Math.round(128/$y)/256)*$y)}function Yy(e){return Math.floor((e-5)/$y*100+.5)/100}function Zy(e){return Math.round((e*$y+5)/$y*256)/256}function Jy(e){e.width?(e.wpx=qy(e.width),e.wch=Yy(e.wpx),e.MDW=$y):e.wpx?(e.wch=Yy(e.wpx),e.width=Zy(e.wch),e.MDW=$y):"number"==typeof e.wch&&(e.width=Zy(e.wch),e.wpx=qy(e.width),e.MDW=$y),e.customWidth&&delete e.customWidth}function Xy(e){return 96*e/96}function Qy(e){return 96*e/96}function ev(e,t){var n,a=[yh,Fh("styleSheet",null,{xmlns:Xh[0],"xmlns:vt":Yh})];return e.SSF&&null!=(n=function(e){var t=["<numFmts>"];return[[5,8],[23,26],[41,44],[50,392]].forEach((function(n){for(var a=n[0];a<=n[1];++a)null!=e[a]&&(t[t.length]=Fh("numFmt",null,{numFmtId:a,formatCode:xh(e[a])}))})),1===t.length?"":(t[t.length]="</numFmts>",t[0]=Fh("numFmts",null,{count:t.length-2}).replace("/>",">"),t.join(""))}(e.SSF))&&(a[a.length]=n),a[a.length]='<fonts count="1"><font><sz val="12"/><color theme="1"/><name val="Calibri"/><family val="2"/><scheme val="minor"/></font></fonts>',a[a.length]='<fills count="2"><fill><patternFill patternType="none"/></fill><fill><patternFill patternType="gray125"/></fill></fills>',a[a.length]='<borders count="1"><border><left/><right/><top/><bottom/><diagonal/></border></borders>',a[a.length]='<cellStyleXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0"/></cellStyleXfs>',(n=function(e){var t=[];return t[t.length]=Fh("cellXfs",null),e.forEach((function(e){t[t.length]=Fh("xf",null,e)})),t[t.length]="</cellXfs>",2===t.length?"":(t[0]=Fh("cellXfs",null,{count:t.length-2}).replace("/>",">"),t.join(""))}(t.cellXfs))&&(a[a.length]=n),a[a.length]='<cellStyles count="1"><cellStyle name="Normal" xfId="0" builtinId="0"/></cellStyles>',a[a.length]='<dxfs count="0"/>',a[a.length]='<tableStyles count="0" defaultTableStyle="TableStyleMedium9" defaultPivotStyle="PivotStyleMedium4"/>',a.length>2&&(a[a.length]="</styleSheet>",a[1]=a[1].replace("/>",">")),a.join("")}function tv(e,t,n){n||(n=zf(6+4*t.length)),n.write_shift(2,e),mg(t,n);var a=n.length>n.l?n.slice(0,n.l):n;return null==n.l&&(n.l=n.length),a}function nv(e,t){t||(t=zf(153)),t.write_shift(2,20*e.sz),function(e,t){t||(t=zf(2));var n=(e.italic?2:0)|(e.strike?8:0)|(e.outline?16:0)|(e.shadow?32:0)|(e.condense?64:0)|(e.extend?128:0);t.write_shift(1,n),t.write_shift(1,0)}(e,t),t.write_shift(2,e.bold?700:400);var n=0;"superscript"==e.vertAlign?n=1:"subscript"==e.vertAlign&&(n=2),t.write_shift(2,n),t.write_shift(1,e.underline||0),t.write_shift(1,e.family||0),t.write_shift(1,e.charset||0),t.write_shift(1,0),Rg(e.color,t);var a=0;return"major"==e.scheme&&(a=1),"minor"==e.scheme&&(a=2),t.write_shift(1,a),mg(e.name,t),t.length>t.l?t.slice(0,t.l):t}var av,ov=["none","solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"],sv=Bf;function rv(e,t){t||(t=zf(84)),av||(av=Ju(ov));var n=av[e.patternType];null==n&&(n=40),t.write_shift(4,n);var a=0;if(40!=n)for(Rg({auto:1},t),Rg({auto:1},t);a<12;++a)t.write_shift(4,0);else{for(;a<4;++a)t.write_shift(4,0);for(;a<12;++a)t.write_shift(4,0)}return t.length>t.l?t.slice(0,t.l):t}function iv(e,t,n){n||(n=zf(16)),n.write_shift(2,t||0),n.write_shift(2,e.numFmtId||0),n.write_shift(2,0),n.write_shift(2,0),n.write_shift(2,0),n.write_shift(1,0),n.write_shift(1,0);return n.write_shift(1,0),n.write_shift(1,0),n.write_shift(1,0),n.write_shift(1,0),n}function lv(e,t){return t||(t=zf(10)),t.write_shift(1,0),t.write_shift(1,0),t.write_shift(4,0),t.write_shift(4,0),t}var cv=Bf;function mv(e){var t;Hf(e,613,lg(1)),Hf(e,46,(t||(t=zf(51)),t.write_shift(1,0),lv(0,t),lv(0,t),lv(0,t),lv(0,t),lv(0,t),t.length>t.l?t.slice(0,t.l):t)),Hf(e,614)}function dv(e){Hf(e,619,lg(1)),Hf(e,48,function(e,t){return t||(t=zf(52)),t.write_shift(4,e.xfId),t.write_shift(2,1),t.write_shift(1,+e.builtinId),t.write_shift(1,0),xg(e.name||"",t),t.length>t.l?t.slice(0,t.l):t}({xfId:0,builtinId:0,name:"Normal"})),Hf(e,620)}function pv(e){Hf(e,508,function(e,t,n){var a=zf(2052);return a.write_shift(4,e),xg(t,a),xg(n,a),a.length>a.l?a.slice(0,a.l):a}(0,"TableStyleMedium9","PivotStyleMedium4")),Hf(e,509)}function uv(e,t){var n=Uf();return Hf(n,278),function(e,t){if(t){var n=0;[[5,8],[23,26],[41,44],[50,392]].forEach((function(e){for(var a=e[0];a<=e[1];++a)null!=t[a]&&++n})),0!=n&&(Hf(e,615,lg(n)),[[5,8],[23,26],[41,44],[50,392]].forEach((function(n){for(var a=n[0];a<=n[1];++a)null!=t[a]&&Hf(e,44,tv(a,t[a]))})),Hf(e,616))}}(n,e.SSF),function(e){Hf(e,611,lg(1)),Hf(e,43,nv({sz:12,color:{theme:1},name:"Calibri",family:2,scheme:"minor"})),Hf(e,612)}(n),function(e){Hf(e,603,lg(2)),Hf(e,45,rv({patternType:"none"})),Hf(e,45,rv({patternType:"gray125"})),Hf(e,604)}(n),mv(n),function(e){Hf(e,626,lg(1)),Hf(e,47,iv({numFmtId:0,fontId:0,fillId:0,borderId:0},65535)),Hf(e,627)}(n),function(e,t){Hf(e,617,lg(t.length)),t.forEach((function(t){Hf(e,47,iv(t,0))})),Hf(e,618)}(n,t.cellXfs),dv(n),function(e){Hf(e,505,lg(0)),Hf(e,506)}(n),pv(n),Hf(n,279),n.end()}function hv(e,t){if(t&&t.themeXLSX)return t.themeXLSX;if(e&&"string"==typeof e.raw)return e.raw;var n=[yh];return n[n.length]='<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme">',n[n.length]="<a:themeElements>",n[n.length]='<a:clrScheme name="Office">',n[n.length]='<a:dk1><a:sysClr val="windowText" lastClr="000000"/></a:dk1>',n[n.length]='<a:lt1><a:sysClr val="window" lastClr="FFFFFF"/></a:lt1>',n[n.length]='<a:dk2><a:srgbClr val="1F497D"/></a:dk2>',n[n.length]='<a:lt2><a:srgbClr val="EEECE1"/></a:lt2>',n[n.length]='<a:accent1><a:srgbClr val="4F81BD"/></a:accent1>',n[n.length]='<a:accent2><a:srgbClr val="C0504D"/></a:accent2>',n[n.length]='<a:accent3><a:srgbClr val="9BBB59"/></a:accent3>',n[n.length]='<a:accent4><a:srgbClr val="8064A2"/></a:accent4>',n[n.length]='<a:accent5><a:srgbClr val="4BACC6"/></a:accent5>',n[n.length]='<a:accent6><a:srgbClr val="F79646"/></a:accent6>',n[n.length]='<a:hlink><a:srgbClr val="0000FF"/></a:hlink>',n[n.length]='<a:folHlink><a:srgbClr val="800080"/></a:folHlink>',n[n.length]="</a:clrScheme>",n[n.length]='<a:fontScheme name="Office">',n[n.length]="<a:majorFont>",n[n.length]='<a:latin typeface="Cambria"/>',n[n.length]='<a:ea typeface=""/>',n[n.length]='<a:cs typeface=""/>',n[n.length]='<a:font script="Jpan" typeface="\uff2d\uff33 \uff30\u30b4\u30b7\u30c3\u30af"/>',n[n.length]='<a:font script="Hang" typeface="\ub9d1\uc740 \uace0\ub515"/>',n[n.length]='<a:font script="Hans" typeface="\u5b8b\u4f53"/>',n[n.length]='<a:font script="Hant" typeface="\u65b0\u7d30\u660e\u9ad4"/>',n[n.length]='<a:font script="Arab" typeface="Times New Roman"/>',n[n.length]='<a:font script="Hebr" typeface="Times New Roman"/>',n[n.length]='<a:font script="Thai" typeface="Tahoma"/>',n[n.length]='<a:font script="Ethi" typeface="Nyala"/>',n[n.length]='<a:font script="Beng" typeface="Vrinda"/>',n[n.length]='<a:font script="Gujr" typeface="Shruti"/>',n[n.length]='<a:font script="Khmr" typeface="MoolBoran"/>',n[n.length]='<a:font script="Knda" typeface="Tunga"/>',n[n.length]='<a:font script="Guru" typeface="Raavi"/>',n[n.length]='<a:font script="Cans" typeface="Euphemia"/>',n[n.length]='<a:font script="Cher" typeface="Plantagenet Cherokee"/>',n[n.length]='<a:font script="Yiii" typeface="Microsoft Yi Baiti"/>',n[n.length]='<a:font script="Tibt" typeface="Microsoft Himalaya"/>',n[n.length]='<a:font script="Thaa" typeface="MV Boli"/>',n[n.length]='<a:font script="Deva" typeface="Mangal"/>',n[n.length]='<a:font script="Telu" typeface="Gautami"/>',n[n.length]='<a:font script="Taml" typeface="Latha"/>',n[n.length]='<a:font script="Syrc" typeface="Estrangelo Edessa"/>',n[n.length]='<a:font script="Orya" typeface="Kalinga"/>',n[n.length]='<a:font script="Mlym" typeface="Kartika"/>',n[n.length]='<a:font script="Laoo" typeface="DokChampa"/>',n[n.length]='<a:font script="Sinh" typeface="Iskoola Pota"/>',n[n.length]='<a:font script="Mong" typeface="Mongolian Baiti"/>',n[n.length]='<a:font script="Viet" typeface="Times New Roman"/>',n[n.length]='<a:font script="Uigh" typeface="Microsoft Uighur"/>',n[n.length]='<a:font script="Geor" typeface="Sylfaen"/>',n[n.length]="</a:majorFont>",n[n.length]="<a:minorFont>",n[n.length]='<a:latin typeface="Calibri"/>',n[n.length]='<a:ea typeface=""/>',n[n.length]='<a:cs typeface=""/>',n[n.length]='<a:font script="Jpan" typeface="\uff2d\uff33 \uff30\u30b4\u30b7\u30c3\u30af"/>',n[n.length]='<a:font script="Hang" typeface="\ub9d1\uc740 \uace0\ub515"/>',n[n.length]='<a:font script="Hans" typeface="\u5b8b\u4f53"/>',n[n.length]='<a:font script="Hant" typeface="\u65b0\u7d30\u660e\u9ad4"/>',n[n.length]='<a:font script="Arab" typeface="Arial"/>',n[n.length]='<a:font script="Hebr" typeface="Arial"/>',n[n.length]='<a:font script="Thai" typeface="Tahoma"/>',n[n.length]='<a:font script="Ethi" typeface="Nyala"/>',n[n.length]='<a:font script="Beng" typeface="Vrinda"/>',n[n.length]='<a:font script="Gujr" typeface="Shruti"/>',n[n.length]='<a:font script="Khmr" typeface="DaunPenh"/>',n[n.length]='<a:font script="Knda" typeface="Tunga"/>',n[n.length]='<a:font script="Guru" typeface="Raavi"/>',n[n.length]='<a:font script="Cans" typeface="Euphemia"/>',n[n.length]='<a:font script="Cher" typeface="Plantagenet Cherokee"/>',n[n.length]='<a:font script="Yiii" typeface="Microsoft Yi Baiti"/>',n[n.length]='<a:font script="Tibt" typeface="Microsoft Himalaya"/>',n[n.length]='<a:font script="Thaa" typeface="MV Boli"/>',n[n.length]='<a:font script="Deva" typeface="Mangal"/>',n[n.length]='<a:font script="Telu" typeface="Gautami"/>',n[n.length]='<a:font script="Taml" typeface="Latha"/>',n[n.length]='<a:font script="Syrc" typeface="Estrangelo Edessa"/>',n[n.length]='<a:font script="Orya" typeface="Kalinga"/>',n[n.length]='<a:font script="Mlym" typeface="Kartika"/>',n[n.length]='<a:font script="Laoo" typeface="DokChampa"/>',n[n.length]='<a:font script="Sinh" typeface="Iskoola Pota"/>',n[n.length]='<a:font script="Mong" typeface="Mongolian Baiti"/>',n[n.length]='<a:font script="Viet" typeface="Arial"/>',n[n.length]='<a:font script="Uigh" typeface="Microsoft Uighur"/>',n[n.length]='<a:font script="Geor" typeface="Sylfaen"/>',n[n.length]="</a:minorFont>",n[n.length]="</a:fontScheme>",n[n.length]='<a:fmtScheme name="Office">',n[n.length]="<a:fillStyleLst>",n[n.length]='<a:solidFill><a:schemeClr val="phClr"/></a:solidFill>',n[n.length]='<a:gradFill rotWithShape="1">',n[n.length]="<a:gsLst>",n[n.length]='<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="50000"/><a:satMod val="300000"/></a:schemeClr></a:gs>',n[n.length]='<a:gs pos="35000"><a:schemeClr val="phClr"><a:tint val="37000"/><a:satMod val="300000"/></a:schemeClr></a:gs>',n[n.length]='<a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="15000"/><a:satMod val="350000"/></a:schemeClr></a:gs>',n[n.length]="</a:gsLst>",n[n.length]='<a:lin ang="16200000" scaled="1"/>',n[n.length]="</a:gradFill>",n[n.length]='<a:gradFill rotWithShape="1">',n[n.length]="<a:gsLst>",n[n.length]='<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="100000"/><a:shade val="100000"/><a:satMod val="130000"/></a:schemeClr></a:gs>',n[n.length]='<a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="50000"/><a:shade val="100000"/><a:satMod val="350000"/></a:schemeClr></a:gs>',n[n.length]="</a:gsLst>",n[n.length]='<a:lin ang="16200000" scaled="0"/>',n[n.length]="</a:gradFill>",n[n.length]="</a:fillStyleLst>",n[n.length]="<a:lnStyleLst>",n[n.length]='<a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"><a:shade val="95000"/><a:satMod val="105000"/></a:schemeClr></a:solidFill><a:prstDash val="solid"/></a:ln>',n[n.length]='<a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln>',n[n.length]='<a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln>',n[n.length]="</a:lnStyleLst>",n[n.length]="<a:effectStyleLst>",n[n.length]="<a:effectStyle>",n[n.length]="<a:effectLst>",n[n.length]='<a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="38000"/></a:srgbClr></a:outerShdw>',n[n.length]="</a:effectLst>",n[n.length]="</a:effectStyle>",n[n.length]="<a:effectStyle>",n[n.length]="<a:effectLst>",n[n.length]='<a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw>',n[n.length]="</a:effectLst>",n[n.length]="</a:effectStyle>",n[n.length]="<a:effectStyle>",n[n.length]="<a:effectLst>",n[n.length]='<a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw>',n[n.length]="</a:effectLst>",n[n.length]='<a:scene3d><a:camera prst="orthographicFront"><a:rot lat="0" lon="0" rev="0"/></a:camera><a:lightRig rig="threePt" dir="t"><a:rot lat="0" lon="0" rev="1200000"/></a:lightRig></a:scene3d>',n[n.length]='<a:sp3d><a:bevelT w="63500" h="25400"/></a:sp3d>',n[n.length]="</a:effectStyle>",n[n.length]="</a:effectStyleLst>",n[n.length]="<a:bgFillStyleLst>",n[n.length]='<a:solidFill><a:schemeClr val="phClr"/></a:solidFill>',n[n.length]='<a:gradFill rotWithShape="1">',n[n.length]="<a:gsLst>",n[n.length]='<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="40000"/><a:satMod val="350000"/></a:schemeClr></a:gs>',n[n.length]='<a:gs pos="40000"><a:schemeClr val="phClr"><a:tint val="45000"/><a:shade val="99000"/><a:satMod val="350000"/></a:schemeClr></a:gs>',n[n.length]='<a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="20000"/><a:satMod val="255000"/></a:schemeClr></a:gs>',n[n.length]="</a:gsLst>",n[n.length]='<a:path path="circle"><a:fillToRect l="50000" t="-80000" r="50000" b="180000"/></a:path>',n[n.length]="</a:gradFill>",n[n.length]='<a:gradFill rotWithShape="1">',n[n.length]="<a:gsLst>",n[n.length]='<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="80000"/><a:satMod val="300000"/></a:schemeClr></a:gs>',n[n.length]='<a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="30000"/><a:satMod val="200000"/></a:schemeClr></a:gs>',n[n.length]="</a:gsLst>",n[n.length]='<a:path path="circle"><a:fillToRect l="50000" t="50000" r="50000" b="50000"/></a:path>',n[n.length]="</a:gradFill>",n[n.length]="</a:bgFillStyleLst>",n[n.length]="</a:fmtScheme>",n[n.length]="</a:themeElements>",n[n.length]="<a:objectDefaults>",n[n.length]="<a:spDef>",n[n.length]='<a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="1"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="3"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="2"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="lt1"/></a:fontRef></a:style>',n[n.length]="</a:spDef>",n[n.length]="<a:lnDef>",n[n.length]='<a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="2"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="0"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="1"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="tx1"/></a:fontRef></a:style>',n[n.length]="</a:lnDef>",n[n.length]="</a:objectDefaults>",n[n.length]="<a:extraClrSchemeLst/>",n[n.length]="</a:theme>",n.join("")}function fv(){var e=Uf();return Hf(e,332),Hf(e,334,lg(1)),Hf(e,335,function(e){var t=zf(12+2*e.name.length);return t.write_shift(4,e.flags),t.write_shift(4,e.version),mg(e.name,t),t.slice(0,t.l)}({name:"XLDAPR",version:12e4,flags:3496657072})),Hf(e,336),Hf(e,339,function(e,t){var n=zf(8+2*t.length);return n.write_shift(4,e),mg(t,n),n.slice(0,n.l)}(1,"XLDAPR")),Hf(e,52),Hf(e,35,lg(514)),Hf(e,4096,lg(0)),Hf(e,4097,dy(1)),Hf(e,36),Hf(e,53),Hf(e,340),Hf(e,337,function(e,t){var n=zf(8);return n.write_shift(4,e),n.write_shift(4,t?1:0),n}(1,!0)),Hf(e,51,function(e){var t=zf(4+8*e.length);t.write_shift(4,e.length);for(var n=0;n<e.length;++n)t.write_shift(4,e[n][0]),t.write_shift(4,e[n][1]);return t}([[1,0]])),Hf(e,338),Hf(e,333),e.end()}function gv(){var e=[yh];return e.push('<metadata xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:xlrd="http://schemas.microsoft.com/office/spreadsheetml/2017/richdata" xmlns:xda="http://schemas.microsoft.com/office/spreadsheetml/2017/dynamicarray">\n <metadataTypes count="1">\n <metadataType name="XLDAPR" minSupportedVersion="120000" copy="1" pasteAll="1" pasteValues="1" merge="1" splitFirst="1" rowColShift="1" clearFormats="1" clearComments="1" assign="1" coerce="1" cellMeta="1"/>\n </metadataTypes>\n <futureMetadata name="XLDAPR" count="1">\n <bk>\n <extLst>\n <ext uri="{bdbb8cdc-fa1e-496e-a857-3c3f30c029c3}">\n <xda:dynamicArrayProperties fDynamic="1" fCollapsed="0"/>\n </ext>\n </extLst>\n </bk>\n </futureMetadata>\n <cellMetadata count="1">\n <bk>\n <rc t="1" v="0"/>\n </bk>\n </cellMetadata>\n</metadata>'),e.join("")}var yv=1024;function vv(e,t){for(var n=[21600,21600],a=["m0,0l0",n[1],n[0],n[1],n[0],"0xe"].join(","),o=[Fh("xml",null,{"xmlns:v":of,"xmlns:o":Qh,"xmlns:x":ef,"xmlns:mv":af}).replace(/\/>/,">"),Fh("o:shapelayout",Fh("o:idmap",null,{"v:ext":"edit",data:e}),{"v:ext":"edit"}),Fh("v:shapetype",[Fh("v:stroke",null,{joinstyle:"miter"}),Fh("v:path",null,{gradientshapeok:"t","o:connecttype":"rect"})].join(""),{id:"_x0000_t202","o:spt":202,coordsize:n.join(","),path:a})];yv<1e3*e;)yv+=1e3;return t.forEach((function(e){var t=Xf(e[0]),n={color2:"#BEFF82",type:"gradient"};"gradient"==n.type&&(n.angle="-180");var a="gradient"==n.type?Fh("o:fill",null,{type:"gradientUnscaled","v:ext":"view"}):null,s=Fh("v:fill",a,n);++yv,o=o.concat(["<v:shape"+Lh({id:"_x0000_s"+yv,type:"#_x0000_t202",style:"position:absolute; margin-left:80pt;margin-top:5pt;width:104pt;height:64pt;z-index:10"+(e[1].hidden?";visibility:hidden":""),fillcolor:"#ECFAD4",strokecolor:"#edeaa1"})+">",s,Fh("v:shadow",null,{on:"t",obscured:"t"}),Fh("v:path",null,{"o:connecttype":"none"}),'<v:textbox><div style="text-align:left"></div></v:textbox>','<x:ClientData ObjectType="Note">',"<x:MoveWithCells/>","<x:SizeWithCells/>",Ih("x:Anchor",[t.c+1,0,t.r+1,0,t.c+3,20,t.r+5,20].join(",")),Ih("x:AutoFill","False"),Ih("x:Row",String(t.r)),Ih("x:Column",String(t.c)),e[1].hidden?"":"<x:Visible/>","</x:ClientData>","</v:shape>"])})),o.push("</xml>"),o.join("")}function bv(e){var t=[yh,Fh("comments",null,{xmlns:Xh[0]})],n=[];return t.push("<authors>"),e.forEach((function(e){e[1].forEach((function(e){var a=xh(e.a);-1==n.indexOf(a)&&(n.push(a),t.push("<author>"+a+"</author>")),e.T&&e.ID&&-1==n.indexOf("tc="+e.ID)&&(n.push("tc="+e.ID),t.push("<author>tc="+e.ID+"</author>"))}))})),0==n.length&&(n.push("SheetJ5"),t.push("<author>SheetJ5</author>")),t.push("</authors>"),t.push("<commentList>"),e.forEach((function(e){var a=0,o=[];if(e[1][0]&&e[1][0].T&&e[1][0].ID?a=n.indexOf("tc="+e[1][0].ID):e[1].forEach((function(e){e.a&&(a=n.indexOf(xh(e.a))),o.push(e.t||"")})),t.push('<comment ref="'+e[0]+'" authorId="'+a+'"><text>'),o.length<=1)t.push(Ih("t",xh(o[0]||"")));else{for(var s="Comment:\n "+o[0]+"\n",r=1;r<o.length;++r)s+="Reply:\n "+o[r]+"\n";t.push(Ih("t",xh(s)))}t.push("</text></comment>")})),t.push("</commentList>"),t.length>2&&(t[t.length]="</comments>",t[1]=t[1].replace("/>",">")),t.join("")}function wv(e,t,n){var a=[yh,Fh("ThreadedComments",null,{xmlns:Gh}).replace(/[\/]>/,">")];return e.forEach((function(e){var o="";(e[1]||[]).forEach((function(s,r){if(s.T){s.a&&-1==t.indexOf(s.a)&&t.push(s.a);var i={ref:e[0],id:"{54EE7951-7262-4200-6969-"+("000000000000"+n.tcid++).slice(-12)+"}"};0==r?o=i.id:i.parentId=o,s.ID=i.id,s.a&&(i.personId="{54EE7950-7262-4200-6969-"+("000000000000"+t.indexOf(s.a)).slice(-12)+"}"),a.push(Fh("threadedComment",Ih("text",s.t||""),i))}else delete s.ID}))})),a.push("</ThreadedComments>"),a.join("")}var kv=cg;function xv(e){var t=Uf(),n=[];return Hf(t,628),Hf(t,630),e.forEach((function(e){e[1].forEach((function(e){n.indexOf(e.a)>-1||(n.push(e.a.slice(0,54)),Hf(t,632,function(e){return mg(e.slice(0,54))}(e.a)))}))})),Hf(t,631),Hf(t,633),e.forEach((function(e){e[1].forEach((function(a){a.iauthor=n.indexOf(a.a);var o={s:Xf(e[0]),e:Xf(e[0])};Hf(t,635,function(e,t){return null==t&&(t=zf(36)),t.write_shift(4,e[1].iauthor),Ng(e[0],t),t.write_shift(4,0),t.write_shift(4,0),t.write_shift(4,0),t.write_shift(4,0),t}([o,a])),a.t&&a.t.length>0&&Hf(t,637,hg(a)),Hf(t,636),delete a.iauthor}))})),Hf(t,634),Hf(t,629),t.end()}var _v=["xlsb","xlsm","xlam","biff8","xla"];var Tv=function(){var e=/(^|[^A-Za-z_])R(\[?-?\d+\]|[1-9]\d*|)C(\[?-?\d+\]|[1-9]\d*|)(?![A-Za-z0-9_])/g,t={r:0,c:0};function n(e,n,a,o){var s=!1,r=!1;0==a.length?r=!0:"["==a.charAt(0)&&(r=!0,a=a.slice(1,-1)),0==o.length?s=!0:"["==o.charAt(0)&&(s=!0,o=o.slice(1,-1));var i=a.length>0?0|parseInt(a,10):0,l=o.length>0?0|parseInt(o,10):0;return s?l+=t.c:--l,r?i+=t.r:--i,n+(s?"":"$")+Jf(l)+(r?"":"$")+Yf(i)}return function(a,o){return t=o,a.replace(e,n)}}(),Sv=/(^|[^._A-Z0-9])([$]?)([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])([$]?)(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})(?![_.\(A-Za-z0-9])/g,Cv=function(){return function(e,t){return e.replace(Sv,(function(e,n,a,o,s,r){var i=Zf(o)-(a?0:t.c),l=qf(r)-(s?0:t.r);return n+"R"+(0==l?"":s?l+1:"["+l+"]")+"C"+(0==i?"":a?i+1:"["+i+"]")}))}}();function Ev(e,t){return e.replace(Sv,(function(e,n,a,o,s,r){return n+("$"==a?a+o:Jf(Zf(o)+t.c))+("$"==s?s+r:Yf(qf(r)+t.r))}))}function jv(e){e.l+=1}function Av(e,t){var n=e.read_shift(1==t?1:2);return[16383&n,n>>14&1,n>>15&1]}function Nv(e,t,n){var a=2;if(n){if(n.biff>=2&&n.biff<=5)return Dv(e);12==n.biff&&(a=4)}var o=e.read_shift(a),s=e.read_shift(a),r=Av(e,2),i=Av(e,2);return{s:{r:o,c:r[0],cRel:r[1],rRel:r[2]},e:{r:s,c:i[0],cRel:i[1],rRel:i[2]}}}function Dv(e){var t=Av(e,2),n=Av(e,2),a=e.read_shift(1),o=e.read_shift(1);return{s:{r:t[0],c:a,cRel:t[1],rRel:t[2]},e:{r:n[0],c:o,cRel:n[1],rRel:n[2]}}}function Ov(e,t,n){if(n&&n.biff>=2&&n.biff<=5)return function(e){var t=Av(e,2),n=e.read_shift(1);return{r:t[0],c:n,cRel:t[1],rRel:t[2]}}(e);var a=e.read_shift(n&&12==n.biff?4:2),o=Av(e,2);return{r:a,c:o[0],cRel:o[1],rRel:o[2]}}function Rv(e){var t=e.read_shift(2),n=e.read_shift(2);return{r:t,c:255&n,fQuoted:!!(16384&n),cRel:n>>15,rRel:n>>15}}function Pv(e){var t=1&e[e.l+1];return e.l+=4,[t,1]}function Iv(e){return[e.read_shift(1),e.read_shift(1)]}function Lv(e,t){var n=[e.read_shift(1)];if(12==t)switch(n[0]){case 2:n[0]=4;break;case 4:n[0]=16;break;case 0:n[0]=1;break;case 1:n[0]=2}switch(n[0]){case 4:n[1]=ly(e,1)?"TRUE":"FALSE",12!=t&&(e.l+=7);break;case 37:case 16:n[1]=Wg[e[e.l]],e.l+=12==t?4:8;break;case 0:e.l+=8;break;case 1:n[1]=Dg(e);break;case 2:n[1]=yy(e,0,{biff:t>0&&t<8?2:t});break;default:throw new Error("Bad SerAr: "+n[0])}return n}function Fv(e,t,n){for(var a=e.read_shift(12==n.biff?4:2),o=[],s=0;s!=a;++s)o.push((12==n.biff?Ag:_y)(e,8));return o}function Mv(e,t,n){var a=0,o=0;12==n.biff?(a=e.read_shift(4),o=e.read_shift(4)):(o=1+e.read_shift(1),a=1+e.read_shift(2)),n.biff>=2&&n.biff<8&&(--a,0==--o&&(o=256));for(var s=0,r=[];s!=a&&(r[s]=[]);++s)for(var i=0;i!=o;++i)r[s][i]=Lv(e,n.biff);return r}function Wv(e,t,n){return e.l+=2,[Rv(e)]}function Bv(e){return e.l+=6,[]}function zv(e){return e.l+=2,[my(e),1&e.read_shift(2)]}var Uv=["Data","All","Headers","??","?Data2","??","?DataHeaders","??","Totals","??","??","??","?DataTotals","??","??","??","?Current"];var Hv={1:{n:"PtgExp",f:function(e,t,n){return e.l++,n&&12==n.biff?[e.read_shift(4,"i"),0]:[e.read_shift(2),e.read_shift(n&&2==n.biff?1:2)]}},2:{n:"PtgTbl",f:Bf},3:{n:"PtgAdd",f:jv},4:{n:"PtgSub",f:jv},5:{n:"PtgMul",f:jv},6:{n:"PtgDiv",f:jv},7:{n:"PtgPower",f:jv},8:{n:"PtgConcat",f:jv},9:{n:"PtgLt",f:jv},10:{n:"PtgLe",f:jv},11:{n:"PtgEq",f:jv},12:{n:"PtgGe",f:jv},13:{n:"PtgGt",f:jv},14:{n:"PtgNe",f:jv},15:{n:"PtgIsect",f:jv},16:{n:"PtgUnion",f:jv},17:{n:"PtgRange",f:jv},18:{n:"PtgUplus",f:jv},19:{n:"PtgUminus",f:jv},20:{n:"PtgPercent",f:jv},21:{n:"PtgParen",f:jv},22:{n:"PtgMissArg",f:jv},23:{n:"PtgStr",f:function(e,t,n){return e.l++,uy(e,0,n)}},26:{n:"PtgSheet",f:function(e,t,n){return e.l+=5,e.l+=2,e.l+=2==n.biff?1:4,["PTGSHEET"]}},27:{n:"PtgEndSheet",f:function(e,t,n){return e.l+=2==n.biff?4:5,["PTGENDSHEET"]}},28:{n:"PtgErr",f:function(e){return e.l++,Wg[e.read_shift(1)]}},29:{n:"PtgBool",f:function(e){return e.l++,0!==e.read_shift(1)}},30:{n:"PtgInt",f:function(e){return e.l++,e.read_shift(2)}},31:{n:"PtgNum",f:function(e){return e.l++,Dg(e)}},32:{n:"PtgArray",f:function(e,t,n){var a=(96&e[e.l++])>>5;return e.l+=2==n.biff?6:12==n.biff?14:7,[a]}},33:{n:"PtgFunc",f:function(e,t,n){var a=(96&e[e.l])>>5;e.l+=1;var o=e.read_shift(n&&n.biff<=3?1:2);return[lb[o],ib[o],a]}},34:{n:"PtgFuncVar",f:function(e,t,n){var a=e[e.l++],o=e.read_shift(1),s=n&&n.biff<=3?[88==a?-1:0,e.read_shift(1)]:function(e){return[e[e.l+1]>>7,32767&e.read_shift(2)]}(e);return[o,(0===s[0]?ib:rb)[s[1]]]}},35:{n:"PtgName",f:function(e,t,n){var a=e.read_shift(1)>>>5&3,o=!n||n.biff>=8?4:2,s=e.read_shift(o);switch(n.biff){case 2:e.l+=5;break;case 3:case 4:e.l+=8;break;case 5:e.l+=12}return[a,0,s]}},36:{n:"PtgRef",f:function(e,t,n){var a=(96&e[e.l])>>5;return e.l+=1,[a,Ov(e,0,n)]}},37:{n:"PtgArea",f:function(e,t,n){return[(96&e[e.l++])>>5,Nv(e,n.biff>=2&&n.biff,n)]}},38:{n:"PtgMemArea",f:function(e,t,n){var a=e.read_shift(1)>>>5&3;return e.l+=n&&2==n.biff?3:4,[a,e.read_shift(n&&2==n.biff?1:2)]}},39:{n:"PtgMemErr",f:Bf},40:{n:"PtgMemNoMem",f:Bf},41:{n:"PtgMemFunc",f:function(e,t,n){return[e.read_shift(1)>>>5&3,e.read_shift(n&&2==n.biff?1:2)]}},42:{n:"PtgRefErr",f:function(e,t,n){var a=e.read_shift(1)>>>5&3;return e.l+=4,n.biff<8&&e.l--,12==n.biff&&(e.l+=2),[a]}},43:{n:"PtgAreaErr",f:function(e,t,n){var a=(96&e[e.l++])>>5;return e.l+=n&&n.biff>8?12:n.biff<8?6:8,[a]}},44:{n:"PtgRefN",f:function(e,t,n){var a=(96&e[e.l])>>5;e.l+=1;var o=function(e,t,n){var a=n&&n.biff?n.biff:8;if(a>=2&&a<=5)return function(e){var t=e.read_shift(2),n=e.read_shift(1),a=(32768&t)>>15,o=(16384&t)>>14;return t&=16383,1==a&&t>=8192&&(t-=16384),1==o&&n>=128&&(n-=256),{r:t,c:n,cRel:o,rRel:a}}(e);var o=e.read_shift(a>=12?4:2),s=e.read_shift(2),r=(16384&s)>>14,i=(32768&s)>>15;if(s&=16383,1==i)for(;o>524287;)o-=1048576;if(1==r)for(;s>8191;)s-=16384;return{r:o,c:s,cRel:r,rRel:i}}(e,0,n);return[a,o]}},45:{n:"PtgAreaN",f:function(e,t,n){var a=(96&e[e.l++])>>5,o=function(e,t,n){if(n.biff<8)return Dv(e);var a=e.read_shift(12==n.biff?4:2),o=e.read_shift(12==n.biff?4:2),s=Av(e,2),r=Av(e,2);return{s:{r:a,c:s[0],cRel:s[1],rRel:s[2]},e:{r:o,c:r[0],cRel:r[1],rRel:r[2]}}}(e,0,n);return[a,o]}},46:{n:"PtgMemAreaN",f:function(e){return[e.read_shift(1)>>>5&3,e.read_shift(2)]}},47:{n:"PtgMemNoMemN",f:function(e){return[e.read_shift(1)>>>5&3,e.read_shift(2)]}},57:{n:"PtgNameX",f:function(e,t,n){return 5==n.biff?function(e){var t=e.read_shift(1)>>>5&3,n=e.read_shift(2,"i");e.l+=8;var a=e.read_shift(2);return e.l+=12,[t,n,a]}(e):[e.read_shift(1)>>>5&3,e.read_shift(2),e.read_shift(4)]}},58:{n:"PtgRef3d",f:function(e,t,n){var a=(96&e[e.l])>>5;e.l+=1;var o=e.read_shift(2);return n&&5==n.biff&&(e.l+=12),[a,o,Ov(e,0,n)]}},59:{n:"PtgArea3d",f:function(e,t,n){var a=(96&e[e.l++])>>5,o=e.read_shift(2,"i");if(n)switch(n.biff){case 5:e.l+=12,6;break;case 12:12}return[a,o,Nv(e,0,n)]}},60:{n:"PtgRefErr3d",f:function(e,t,n){var a=(96&e[e.l++])>>5,o=e.read_shift(2),s=4;if(n)switch(n.biff){case 5:s=15;break;case 12:s=6}return e.l+=s,[a,o]}},61:{n:"PtgAreaErr3d",f:function(e,t,n){var a=(96&e[e.l++])>>5,o=e.read_shift(2),s=8;if(n)switch(n.biff){case 5:e.l+=12,s=6;break;case 12:s=12}return e.l+=s,[a,o]}},255:{}},Gv={64:32,96:32,65:33,97:33,66:34,98:34,67:35,99:35,68:36,100:36,69:37,101:37,70:38,102:38,71:39,103:39,72:40,104:40,73:41,105:41,74:42,106:42,75:43,107:43,76:44,108:44,77:45,109:45,78:46,110:46,79:47,111:47,88:34,120:34,89:57,121:57,90:58,122:58,91:59,123:59,92:60,124:60,93:61,125:61},Vv={1:{n:"PtgElfLel",f:zv},2:{n:"PtgElfRw",f:Wv},3:{n:"PtgElfCol",f:Wv},6:{n:"PtgElfRwV",f:Wv},7:{n:"PtgElfColV",f:Wv},10:{n:"PtgElfRadical",f:Wv},11:{n:"PtgElfRadicalS",f:Bv},13:{n:"PtgElfColS",f:Bv},15:{n:"PtgElfColSV",f:Bv},16:{n:"PtgElfRadicalLel",f:zv},25:{n:"PtgList",f:function(e){e.l+=2;var t=e.read_shift(2),n=e.read_shift(2),a=e.read_shift(4),o=e.read_shift(2),s=e.read_shift(2);return{ixti:t,coltype:3&n,rt:Uv[n>>2&31],idx:a,c:o,C:s}}},29:{n:"PtgSxName",f:function(e){return e.l+=2,[e.read_shift(4)]}},255:{}},Kv={0:{n:"PtgAttrNoop",f:function(e){return e.l+=4,[0,0]}},1:{n:"PtgAttrSemi",f:function(e,t,n){var a=255&e[e.l+1]?1:0;return e.l+=n&&2==n.biff?3:4,[a]}},2:{n:"PtgAttrIf",f:function(e,t,n){var a=255&e[e.l+1]?1:0;return e.l+=2,[a,e.read_shift(n&&2==n.biff?1:2)]}},4:{n:"PtgAttrChoose",f:function(e,t,n){e.l+=2;for(var a=e.read_shift(n&&2==n.biff?1:2),o=[],s=0;s<=a;++s)o.push(e.read_shift(n&&2==n.biff?1:2));return o}},8:{n:"PtgAttrGoto",f:function(e,t,n){var a=255&e[e.l+1]?1:0;return e.l+=2,[a,e.read_shift(n&&2==n.biff?1:2)]}},16:{n:"PtgAttrSum",f:function(e,t,n){e.l+=n&&2==n.biff?3:4}},32:{n:"PtgAttrBaxcel",f:Pv},33:{n:"PtgAttrBaxcel",f:Pv},64:{n:"PtgAttrSpace",f:function(e){return e.read_shift(2),Iv(e)}},65:{n:"PtgAttrSpaceSemi",f:function(e){return e.read_shift(2),Iv(e)}},128:{n:"PtgAttrIfError",f:function(e){var t=255&e[e.l+1]?1:0;return e.l+=2,[t,e.read_shift(2)]}},255:{}};function $v(e,t,n,a){if(a.biff<8)return Bf(e,t);for(var o=e.l+t,s=[],r=0;r!==n.length;++r)switch(n[r][0]){case"PtgArray":n[r][1]=Mv(e,0,a),s.push(n[r][1]);break;case"PtgMemArea":n[r][2]=Fv(e,n[r][1],a),s.push(n[r][2]);break;case"PtgExp":a&&12==a.biff&&(n[r][1][1]=e.read_shift(4),s.push(n[r][1]));break;case"PtgList":case"PtgElfRadicalS":case"PtgElfColS":case"PtgElfColSV":throw"Unsupported "+n[r][0]}return 0!==(t=o-e.l)&&s.push(Bf(e,t)),s}function qv(e,t,n){for(var a,o,s=e.l+t,r=[];s!=e.l;)t=s-e.l,o=e[e.l],a=Hv[o]||Hv[Gv[o]],24!==o&&25!==o||(a=(24===o?Vv:Kv)[e[e.l+1]]),a&&a.f?r.push([a.n,a.f(e,t,n)]):Bf(e,t);return r}function Yv(e){for(var t=[],n=0;n<e.length;++n){for(var a=e[n],o=[],s=0;s<a.length;++s){var r=a[s];if(r)if(2===r[0])o.push('"'+r[1].replace(/"/g,'""')+'"');else o.push(r[1]);else o.push("")}t.push(o.join(","))}return t.join(";")}var Zv={PtgAdd:"+",PtgConcat:"&",PtgDiv:"/",PtgEq:"=",PtgGe:">=",PtgGt:">",PtgLe:"<=",PtgLt:"<",PtgMul:"*",PtgNe:"<>",PtgPower:"^",PtgSub:"-"};function Jv(e,t,n){if(!e)return"SH33TJSERR0";if(n.biff>8&&(!e.XTI||!e.XTI[t]))return e.SheetNames[t];if(!e.XTI)return"SH33TJSERR6";var a=e.XTI[t];if(n.biff<8)return t>1e4&&(t-=65536),t<0&&(t=-t),0==t?"":e.XTI[t-1];if(!a)return"SH33TJSERR1";var o="";if(n.biff>8)switch(e[a[0]][0]){case 357:return o=-1==a[1]?"#REF":e.SheetNames[a[1]],a[1]==a[2]?o:o+":"+e.SheetNames[a[2]];case 358:return null!=n.SID?e.SheetNames[n.SID]:"SH33TJSSAME"+e[a[0]][0];default:return"SH33TJSSRC"+e[a[0]][0]}switch(e[a[0]][0][0]){case 1025:return o=-1==a[1]?"#REF":e.SheetNames[a[1]]||"SH33TJSERR3",a[1]==a[2]?o:o+":"+e.SheetNames[a[2]];case 14849:return e[a[0]].slice(1).map((function(e){return e.Name})).join(";;");default:return e[a[0]][0][3]?(o=-1==a[1]?"#REF":e[a[0]][0][3][a[1]]||"SH33TJSERR4",a[1]==a[2]?o:o+":"+e[a[0]][0][3][a[2]]):"SH33TJSERR2"}}function Xv(e,t,n){var a=Jv(e,t,n);return"#REF"==a?a:function(e,t){if(!e&&!(t&&t.biff<=5&&t.biff>=2))throw new Error("empty sheet name");return/[^\w\u4E00-\u9FFF\u3040-\u30FF]/.test(e)?"'"+e+"'":e}(a,n)}function Qv(e,t,n,a,o){var s,r,i,l,c=o&&o.biff||8,m={s:{c:0,r:0},e:{c:0,r:0}},d=[],p=0,u=0,h="";if(!e[0]||!e[0][0])return"";for(var f=-1,g="",y=0,v=e[0].length;y<v;++y){var b=e[0][y];switch(b[0]){case"PtgUminus":d.push("-"+d.pop());break;case"PtgUplus":d.push("+"+d.pop());break;case"PtgPercent":d.push(d.pop()+"%");break;case"PtgAdd":case"PtgConcat":case"PtgDiv":case"PtgEq":case"PtgGe":case"PtgGt":case"PtgLe":case"PtgLt":case"PtgMul":case"PtgNe":case"PtgPower":case"PtgSub":if(s=d.pop(),r=d.pop(),f>=0){switch(e[0][f][1][0]){case 0:g=dh(" ",e[0][f][1][1]);break;case 1:g=dh("\r",e[0][f][1][1]);break;default:if(g="",o.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][f][1][0])}r+=g,f=-1}d.push(r+Zv[b[0]]+s);break;case"PtgIsect":s=d.pop(),r=d.pop(),d.push(r+" "+s);break;case"PtgUnion":s=d.pop(),r=d.pop(),d.push(r+","+s);break;case"PtgRange":s=d.pop(),r=d.pop(),d.push(r+":"+s);break;case"PtgAttrChoose":case"PtgAttrGoto":case"PtgAttrIf":case"PtgAttrIfError":case"PtgAttrBaxcel":case"PtgAttrSemi":case"PtgMemArea":case"PtgTbl":case"PtgMemErr":case"PtgMemAreaN":case"PtgMemNoMemN":case"PtgAttrNoop":case"PtgSheet":case"PtgEndSheet":case"PtgMemFunc":case"PtgMemNoMem":break;case"PtgRef":i=Gf(b[1][1],m,o),d.push(Kf(i,c));break;case"PtgRefN":i=n?Gf(b[1][1],n,o):b[1][1],d.push(Kf(i,c));break;case"PtgRef3d":p=b[1][1],i=Gf(b[1][2],m,o);h=Xv(a,p,o);d.push(h+"!"+Kf(i,c));break;case"PtgFunc":case"PtgFuncVar":var w=b[1][0],k=b[1][1];w||(w=0);var x=0==(w&=127)?[]:d.slice(-w);d.length-=w,"User"===k&&(k=x.shift()),d.push(k+"("+x.join(",")+")");break;case"PtgBool":d.push(b[1]?"TRUE":"FALSE");break;case"PtgInt":case"PtgErr":d.push(b[1]);break;case"PtgNum":d.push(String(b[1]));break;case"PtgStr":d.push('"'+b[1].replace(/"/g,'""')+'"');break;case"PtgAreaN":l=Vf(b[1][1],n?{s:n}:m,o),d.push($f(l,o));break;case"PtgArea":l=Vf(b[1][1],m,o),d.push($f(l,o));break;case"PtgArea3d":p=b[1][1],l=b[1][2],h=Xv(a,p,o),d.push(h+"!"+$f(l,o));break;case"PtgAttrSum":d.push("SUM("+d.pop()+")");break;case"PtgName":u=b[1][2];var _=(a.names||[])[u-1]||(a[0]||[])[u],T=_?_.Name:"SH33TJSNAME"+String(u);T&&"_xlfn."==T.slice(0,6)&&!o.xlfn&&(T=T.slice(6)),d.push(T);break;case"PtgNameX":var S,C=b[1][1];if(u=b[1][2],!(o.biff<=5)){var E="";if(14849==((a[C]||[])[0]||[])[0]||(1025==((a[C]||[])[0]||[])[0]?a[C][u]&&a[C][u].itab>0&&(E=a.SheetNames[a[C][u].itab-1]+"!"):E=a.SheetNames[u-1]+"!"),a[C]&&a[C][u])E+=a[C][u].Name;else if(a[0]&&a[0][u])E+=a[0][u].Name;else{var j=(Jv(a,C,o)||"").split(";;");j[u-1]?E=j[u-1]:E+="SH33TJSERRX"}d.push(E);break}C<0&&(C=-C),a[C]&&(S=a[C][u]),S||(S={Name:"SH33TJSERRY"}),d.push(S.Name);break;case"PtgParen":var A="(",N=")";if(f>=0){switch(g="",e[0][f][1][0]){case 2:A=dh(" ",e[0][f][1][1])+A;break;case 3:A=dh("\r",e[0][f][1][1])+A;break;case 4:N=dh(" ",e[0][f][1][1])+N;break;case 5:N=dh("\r",e[0][f][1][1])+N;break;default:if(o.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][f][1][0])}f=-1}d.push(A+d.pop()+N);break;case"PtgRefErr":case"PtgRefErr3d":case"PtgAreaErr":case"PtgAreaErr3d":d.push("#REF!");break;case"PtgExp":i={c:b[1][1],r:b[1][0]};var D={c:n.c,r:n.r};if(a.sharedf[Qf(i)]){var O=a.sharedf[Qf(i)];d.push(Qv(O,m,D,a,o))}else{var R=!1;for(s=0;s!=a.arrayf.length;++s)if(r=a.arrayf[s],!(i.c<r[0].s.c||i.c>r[0].e.c)&&!(i.r<r[0].s.r||i.r>r[0].e.r)){d.push(Qv(r[1],m,D,a,o)),R=!0;break}R||d.push(b[1])}break;case"PtgArray":d.push("{"+Yv(b[1])+"}");break;case"PtgAttrSpace":case"PtgAttrSpaceSemi":f=y;break;case"PtgMissArg":d.push("");break;case"PtgList":d.push("Table"+b[1].idx+"[#"+b[1].rt+"]");break;case"PtgElfCol":case"PtgElfColS":case"PtgElfColSV":case"PtgElfColV":case"PtgElfLel":case"PtgElfRadical":case"PtgElfRadicalLel":case"PtgElfRadicalS":case"PtgElfRw":case"PtgElfRwV":throw new Error("Unsupported ELFs");default:throw new Error("Unrecognized Formula Token: "+String(b))}if(3!=o.biff&&f>=0&&-1==["PtgAttrSpace","PtgAttrSpaceSemi","PtgAttrGoto"].indexOf(e[0][y][0])){var P=!0;switch((b=e[0][f])[1][0]){case 4:P=!1;case 0:g=dh(" ",b[1][1]);break;case 5:P=!1;case 1:g=dh("\r",b[1][1]);break;default:if(g="",o.WTF)throw new Error("Unexpected PtgAttrSpaceType "+b[1][0])}d.push((P?g:"")+d.pop()+(P?"":g)),f=-1}}if(d.length>1&&o.WTF)throw new Error("bad formula stack");return d[0]}function eb(e,t,n,a,o){var s=ky(t,n,o),r=function(e){if(null==e){var t=zf(8);return t.write_shift(1,3),t.write_shift(1,0),t.write_shift(2,0),t.write_shift(2,0),t.write_shift(2,65535),t}return Og("number"==typeof e?e:0)}(e.v),i=zf(6);i.write_shift(2,33),i.write_shift(4,0);for(var l=zf(e.bf.length),c=0;c<e.bf.length;++c)l[c]=e.bf[c];return Yp([s,r,i,l])}function tb(e,t,n){var a=e.read_shift(4),o=qv(e,a,n),s=e.read_shift(4);return[o,s>0?$v(e,s,o,n):null]}var nb=tb,ab=tb,ob=tb,sb=tb,rb={0:"BEEP",1:"OPEN",2:"OPEN.LINKS",3:"CLOSE.ALL",4:"SAVE",5:"SAVE.AS",6:"FILE.DELETE",7:"PAGE.SETUP",8:"PRINT",9:"PRINTER.SETUP",10:"QUIT",11:"NEW.WINDOW",12:"ARRANGE.ALL",13:"WINDOW.SIZE",14:"WINDOW.MOVE",15:"FULL",16:"CLOSE",17:"RUN",22:"SET.PRINT.AREA",23:"SET.PRINT.TITLES",24:"SET.PAGE.BREAK",25:"REMOVE.PAGE.BREAK",26:"FONT",27:"DISPLAY",28:"PROTECT.DOCUMENT",29:"PRECISION",30:"A1.R1C1",31:"CALCULATE.NOW",32:"CALCULATION",34:"DATA.FIND",35:"EXTRACT",36:"DATA.DELETE",37:"SET.DATABASE",38:"SET.CRITERIA",39:"SORT",40:"DATA.SERIES",41:"TABLE",42:"FORMAT.NUMBER",43:"ALIGNMENT",44:"STYLE",45:"BORDER",46:"CELL.PROTECTION",47:"COLUMN.WIDTH",48:"UNDO",49:"CUT",50:"COPY",51:"PASTE",52:"CLEAR",53:"PASTE.SPECIAL",54:"EDIT.DELETE",55:"INSERT",56:"FILL.RIGHT",57:"FILL.DOWN",61:"DEFINE.NAME",62:"CREATE.NAMES",63:"FORMULA.GOTO",64:"FORMULA.FIND",65:"SELECT.LAST.CELL",66:"SHOW.ACTIVE.CELL",67:"GALLERY.AREA",68:"GALLERY.BAR",69:"GALLERY.COLUMN",70:"GALLERY.LINE",71:"GALLERY.PIE",72:"GALLERY.SCATTER",73:"COMBINATION",74:"PREFERRED",75:"ADD.OVERLAY",76:"GRIDLINES",77:"SET.PREFERRED",78:"AXES",79:"LEGEND",80:"ATTACH.TEXT",81:"ADD.ARROW",82:"SELECT.CHART",83:"SELECT.PLOT.AREA",84:"PATTERNS",85:"MAIN.CHART",86:"OVERLAY",87:"SCALE",88:"FORMAT.LEGEND",89:"FORMAT.TEXT",90:"EDIT.REPEAT",91:"PARSE",92:"JUSTIFY",93:"HIDE",94:"UNHIDE",95:"WORKSPACE",96:"FORMULA",97:"FORMULA.FILL",98:"FORMULA.ARRAY",99:"DATA.FIND.NEXT",100:"DATA.FIND.PREV",101:"FORMULA.FIND.NEXT",102:"FORMULA.FIND.PREV",103:"ACTIVATE",104:"ACTIVATE.NEXT",105:"ACTIVATE.PREV",106:"UNLOCKED.NEXT",107:"UNLOCKED.PREV",108:"COPY.PICTURE",109:"SELECT",110:"DELETE.NAME",111:"DELETE.FORMAT",112:"VLINE",113:"HLINE",114:"VPAGE",115:"HPAGE",116:"VSCROLL",117:"HSCROLL",118:"ALERT",119:"NEW",120:"CANCEL.COPY",121:"SHOW.CLIPBOARD",122:"MESSAGE",124:"PASTE.LINK",125:"APP.ACTIVATE",126:"DELETE.ARROW",127:"ROW.HEIGHT",128:"FORMAT.MOVE",129:"FORMAT.SIZE",130:"FORMULA.REPLACE",131:"SEND.KEYS",132:"SELECT.SPECIAL",133:"APPLY.NAMES",134:"REPLACE.FONT",135:"FREEZE.PANES",136:"SHOW.INFO",137:"SPLIT",138:"ON.WINDOW",139:"ON.DATA",140:"DISABLE.INPUT",142:"OUTLINE",143:"LIST.NAMES",144:"FILE.CLOSE",145:"SAVE.WORKBOOK",146:"DATA.FORM",147:"COPY.CHART",148:"ON.TIME",149:"WAIT",150:"FORMAT.FONT",151:"FILL.UP",152:"FILL.LEFT",153:"DELETE.OVERLAY",155:"SHORT.MENUS",159:"SET.UPDATE.STATUS",161:"COLOR.PALETTE",162:"DELETE.STYLE",163:"WINDOW.RESTORE",164:"WINDOW.MAXIMIZE",166:"CHANGE.LINK",167:"CALCULATE.DOCUMENT",168:"ON.KEY",169:"APP.RESTORE",170:"APP.MOVE",171:"APP.SIZE",172:"APP.MINIMIZE",173:"APP.MAXIMIZE",174:"BRING.TO.FRONT",175:"SEND.TO.BACK",185:"MAIN.CHART.TYPE",186:"OVERLAY.CHART.TYPE",187:"SELECT.END",188:"OPEN.MAIL",189:"SEND.MAIL",190:"STANDARD.FONT",191:"CONSOLIDATE",192:"SORT.SPECIAL",193:"GALLERY.3D.AREA",194:"GALLERY.3D.COLUMN",195:"GALLERY.3D.LINE",196:"GALLERY.3D.PIE",197:"VIEW.3D",198:"GOAL.SEEK",199:"WORKGROUP",200:"FILL.GROUP",201:"UPDATE.LINK",202:"PROMOTE",203:"DEMOTE",204:"SHOW.DETAIL",206:"UNGROUP",207:"OBJECT.PROPERTIES",208:"SAVE.NEW.OBJECT",209:"SHARE",210:"SHARE.NAME",211:"DUPLICATE",212:"APPLY.STYLE",213:"ASSIGN.TO.OBJECT",214:"OBJECT.PROTECTION",215:"HIDE.OBJECT",216:"SET.EXTRACT",217:"CREATE.PUBLISHER",218:"SUBSCRIBE.TO",219:"ATTRIBUTES",220:"SHOW.TOOLBAR",222:"PRINT.PREVIEW",223:"EDIT.COLOR",224:"SHOW.LEVELS",225:"FORMAT.MAIN",226:"FORMAT.OVERLAY",227:"ON.RECALC",228:"EDIT.SERIES",229:"DEFINE.STYLE",240:"LINE.PRINT",243:"ENTER.DATA",249:"GALLERY.RADAR",250:"MERGE.STYLES",251:"EDITION.OPTIONS",252:"PASTE.PICTURE",253:"PASTE.PICTURE.LINK",254:"SPELLING",256:"ZOOM",259:"INSERT.OBJECT",260:"WINDOW.MINIMIZE",265:"SOUND.NOTE",266:"SOUND.PLAY",267:"FORMAT.SHAPE",268:"EXTEND.POLYGON",269:"FORMAT.AUTO",272:"GALLERY.3D.BAR",273:"GALLERY.3D.SURFACE",274:"FILL.AUTO",276:"CUSTOMIZE.TOOLBAR",277:"ADD.TOOL",278:"EDIT.OBJECT",279:"ON.DOUBLECLICK",280:"ON.ENTRY",281:"WORKBOOK.ADD",282:"WORKBOOK.MOVE",283:"WORKBOOK.COPY",284:"WORKBOOK.OPTIONS",285:"SAVE.WORKSPACE",288:"CHART.WIZARD",289:"DELETE.TOOL",290:"MOVE.TOOL",291:"WORKBOOK.SELECT",292:"WORKBOOK.ACTIVATE",293:"ASSIGN.TO.TOOL",295:"COPY.TOOL",296:"RESET.TOOL",297:"CONSTRAIN.NUMERIC",298:"PASTE.TOOL",302:"WORKBOOK.NEW",305:"SCENARIO.CELLS",306:"SCENARIO.DELETE",307:"SCENARIO.ADD",308:"SCENARIO.EDIT",309:"SCENARIO.SHOW",310:"SCENARIO.SHOW.NEXT",311:"SCENARIO.SUMMARY",312:"PIVOT.TABLE.WIZARD",313:"PIVOT.FIELD.PROPERTIES",314:"PIVOT.FIELD",315:"PIVOT.ITEM",316:"PIVOT.ADD.FIELDS",318:"OPTIONS.CALCULATION",319:"OPTIONS.EDIT",320:"OPTIONS.VIEW",321:"ADDIN.MANAGER",322:"MENU.EDITOR",323:"ATTACH.TOOLBARS",324:"VBAActivate",325:"OPTIONS.CHART",328:"VBA.INSERT.FILE",330:"VBA.PROCEDURE.DEFINITION",336:"ROUTING.SLIP",338:"ROUTE.DOCUMENT",339:"MAIL.LOGON",342:"INSERT.PICTURE",343:"EDIT.TOOL",344:"GALLERY.DOUGHNUT",350:"CHART.TREND",352:"PIVOT.ITEM.PROPERTIES",354:"WORKBOOK.INSERT",355:"OPTIONS.TRANSITION",356:"OPTIONS.GENERAL",370:"FILTER.ADVANCED",373:"MAIL.ADD.MAILER",374:"MAIL.DELETE.MAILER",375:"MAIL.REPLY",376:"MAIL.REPLY.ALL",377:"MAIL.FORWARD",378:"MAIL.NEXT.LETTER",379:"DATA.LABEL",380:"INSERT.TITLE",381:"FONT.PROPERTIES",382:"MACRO.OPTIONS",383:"WORKBOOK.HIDE",384:"WORKBOOK.UNHIDE",385:"WORKBOOK.DELETE",386:"WORKBOOK.NAME",388:"GALLERY.CUSTOM",390:"ADD.CHART.AUTOFORMAT",391:"DELETE.CHART.AUTOFORMAT",392:"CHART.ADD.DATA",393:"AUTO.OUTLINE",394:"TAB.ORDER",395:"SHOW.DIALOG",396:"SELECT.ALL",397:"UNGROUP.SHEETS",398:"SUBTOTAL.CREATE",399:"SUBTOTAL.REMOVE",400:"RENAME.OBJECT",412:"WORKBOOK.SCROLL",413:"WORKBOOK.NEXT",414:"WORKBOOK.PREV",415:"WORKBOOK.TAB.SPLIT",416:"FULL.SCREEN",417:"WORKBOOK.PROTECT",420:"SCROLLBAR.PROPERTIES",421:"PIVOT.SHOW.PAGES",422:"TEXT.TO.COLUMNS",423:"FORMAT.CHARTTYPE",424:"LINK.FORMAT",425:"TRACER.DISPLAY",430:"TRACER.NAVIGATE",431:"TRACER.CLEAR",432:"TRACER.ERROR",433:"PIVOT.FIELD.GROUP",434:"PIVOT.FIELD.UNGROUP",435:"CHECKBOX.PROPERTIES",436:"LABEL.PROPERTIES",437:"LISTBOX.PROPERTIES",438:"EDITBOX.PROPERTIES",439:"PIVOT.REFRESH",440:"LINK.COMBO",441:"OPEN.TEXT",442:"HIDE.DIALOG",443:"SET.DIALOG.FOCUS",444:"ENABLE.OBJECT",445:"PUSHBUTTON.PROPERTIES",446:"SET.DIALOG.DEFAULT",447:"FILTER",448:"FILTER.SHOW.ALL",449:"CLEAR.OUTLINE",450:"FUNCTION.WIZARD",451:"ADD.LIST.ITEM",452:"SET.LIST.ITEM",453:"REMOVE.LIST.ITEM",454:"SELECT.LIST.ITEM",455:"SET.CONTROL.VALUE",456:"SAVE.COPY.AS",458:"OPTIONS.LISTS.ADD",459:"OPTIONS.LISTS.DELETE",460:"SERIES.AXES",461:"SERIES.X",462:"SERIES.Y",463:"ERRORBAR.X",464:"ERRORBAR.Y",465:"FORMAT.CHART",466:"SERIES.ORDER",467:"MAIL.LOGOFF",468:"CLEAR.ROUTING.SLIP",469:"APP.ACTIVATE.MICROSOFT",470:"MAIL.EDIT.MAILER",471:"ON.SHEET",472:"STANDARD.WIDTH",473:"SCENARIO.MERGE",474:"SUMMARY.INFO",475:"FIND.FILE",476:"ACTIVE.CELL.FONT",477:"ENABLE.TIPWIZARD",478:"VBA.MAKE.ADDIN",480:"INSERTDATATABLE",481:"WORKGROUP.OPTIONS",482:"MAIL.SEND.MAILER",485:"AUTOCORRECT",489:"POST.DOCUMENT",491:"PICKLIST",493:"VIEW.SHOW",494:"VIEW.DEFINE",495:"VIEW.DELETE",509:"SHEET.BACKGROUND",510:"INSERT.MAP.OBJECT",511:"OPTIONS.MENONO",517:"MSOCHECKS",518:"NORMAL",519:"LAYOUT",520:"RM.PRINT.AREA",521:"CLEAR.PRINT.AREA",522:"ADD.PRINT.AREA",523:"MOVE.BRK",545:"HIDECURR.NOTE",546:"HIDEALL.NOTES",547:"DELETE.NOTE",548:"TRAVERSE.NOTES",549:"ACTIVATE.NOTES",620:"PROTECT.REVISIONS",621:"UNPROTECT.REVISIONS",647:"OPTIONS.ME",653:"WEB.PUBLISH",667:"NEWWEBQUERY",673:"PIVOT.TABLE.CHART",753:"OPTIONS.SAVE",755:"OPTIONS.SPELL",808:"HIDEALL.INKANNOTS"},ib={0:"COUNT",1:"IF",2:"ISNA",3:"ISERROR",4:"SUM",5:"AVERAGE",6:"MIN",7:"MAX",8:"ROW",9:"COLUMN",10:"NA",11:"NPV",12:"STDEV",13:"DOLLAR",14:"FIXED",15:"SIN",16:"COS",17:"TAN",18:"ATAN",19:"PI",20:"SQRT",21:"EXP",22:"LN",23:"LOG10",24:"ABS",25:"INT",26:"SIGN",27:"ROUND",28:"LOOKUP",29:"INDEX",30:"REPT",31:"MID",32:"LEN",33:"VALUE",34:"TRUE",35:"FALSE",36:"AND",37:"OR",38:"NOT",39:"MOD",40:"DCOUNT",41:"DSUM",42:"DAVERAGE",43:"DMIN",44:"DMAX",45:"DSTDEV",46:"VAR",47:"DVAR",48:"TEXT",49:"LINEST",50:"TREND",51:"LOGEST",52:"GROWTH",53:"GOTO",54:"HALT",55:"RETURN",56:"PV",57:"FV",58:"NPER",59:"PMT",60:"RATE",61:"MIRR",62:"IRR",63:"RAND",64:"MATCH",65:"DATE",66:"TIME",67:"DAY",68:"MONTH",69:"YEAR",70:"WEEKDAY",71:"HOUR",72:"MINUTE",73:"SECOND",74:"NOW",75:"AREAS",76:"ROWS",77:"COLUMNS",78:"OFFSET",79:"ABSREF",80:"RELREF",81:"ARGUMENT",82:"SEARCH",83:"TRANSPOSE",84:"ERROR",85:"STEP",86:"TYPE",87:"ECHO",88:"SET.NAME",89:"CALLER",90:"DEREF",91:"WINDOWS",92:"SERIES",93:"DOCUMENTS",94:"ACTIVE.CELL",95:"SELECTION",96:"RESULT",97:"ATAN2",98:"ASIN",99:"ACOS",100:"CHOOSE",101:"HLOOKUP",102:"VLOOKUP",103:"LINKS",104:"INPUT",105:"ISREF",106:"GET.FORMULA",107:"GET.NAME",108:"SET.VALUE",109:"LOG",110:"EXEC",111:"CHAR",112:"LOWER",113:"UPPER",114:"PROPER",115:"LEFT",116:"RIGHT",117:"EXACT",118:"TRIM",119:"REPLACE",120:"SUBSTITUTE",121:"CODE",122:"NAMES",123:"DIRECTORY",124:"FIND",125:"CELL",126:"ISERR",127:"ISTEXT",128:"ISNUMBER",129:"ISBLANK",130:"T",131:"N",132:"FOPEN",133:"FCLOSE",134:"FSIZE",135:"FREADLN",136:"FREAD",137:"FWRITELN",138:"FWRITE",139:"FPOS",140:"DATEVALUE",141:"TIMEVALUE",142:"SLN",143:"SYD",144:"DDB",145:"GET.DEF",146:"REFTEXT",147:"TEXTREF",148:"INDIRECT",149:"REGISTER",150:"CALL",151:"ADD.BAR",152:"ADD.MENU",153:"ADD.COMMAND",154:"ENABLE.COMMAND",155:"CHECK.COMMAND",156:"RENAME.COMMAND",157:"SHOW.BAR",158:"DELETE.MENU",159:"DELETE.COMMAND",160:"GET.CHART.ITEM",161:"DIALOG.BOX",162:"CLEAN",163:"MDETERM",164:"MINVERSE",165:"MMULT",166:"FILES",167:"IPMT",168:"PPMT",169:"COUNTA",170:"CANCEL.KEY",171:"FOR",172:"WHILE",173:"BREAK",174:"NEXT",175:"INITIATE",176:"REQUEST",177:"POKE",178:"EXECUTE",179:"TERMINATE",180:"RESTART",181:"HELP",182:"GET.BAR",183:"PRODUCT",184:"FACT",185:"GET.CELL",186:"GET.WORKSPACE",187:"GET.WINDOW",188:"GET.DOCUMENT",189:"DPRODUCT",190:"ISNONTEXT",191:"GET.NOTE",192:"NOTE",193:"STDEVP",194:"VARP",195:"DSTDEVP",196:"DVARP",197:"TRUNC",198:"ISLOGICAL",199:"DCOUNTA",200:"DELETE.BAR",201:"UNREGISTER",204:"USDOLLAR",205:"FINDB",206:"SEARCHB",207:"REPLACEB",208:"LEFTB",209:"RIGHTB",210:"MIDB",211:"LENB",212:"ROUNDUP",213:"ROUNDDOWN",214:"ASC",215:"DBCS",216:"RANK",219:"ADDRESS",220:"DAYS360",221:"TODAY",222:"VDB",223:"ELSE",224:"ELSE.IF",225:"END.IF",226:"FOR.CELL",227:"MEDIAN",228:"SUMPRODUCT",229:"SINH",230:"COSH",231:"TANH",232:"ASINH",233:"ACOSH",234:"ATANH",235:"DGET",236:"CREATE.OBJECT",237:"VOLATILE",238:"LAST.ERROR",239:"CUSTOM.UNDO",240:"CUSTOM.REPEAT",241:"FORMULA.CONVERT",242:"GET.LINK.INFO",243:"TEXT.BOX",244:"INFO",245:"GROUP",246:"GET.OBJECT",247:"DB",248:"PAUSE",251:"RESUME",252:"FREQUENCY",253:"ADD.TOOLBAR",254:"DELETE.TOOLBAR",255:"User",256:"RESET.TOOLBAR",257:"EVALUATE",258:"GET.TOOLBAR",259:"GET.TOOL",260:"SPELLING.CHECK",261:"ERROR.TYPE",262:"APP.TITLE",263:"WINDOW.TITLE",264:"SAVE.TOOLBAR",265:"ENABLE.TOOL",266:"PRESS.TOOL",267:"REGISTER.ID",268:"GET.WORKBOOK",269:"AVEDEV",270:"BETADIST",271:"GAMMALN",272:"BETAINV",273:"BINOMDIST",274:"CHIDIST",275:"CHIINV",276:"COMBIN",277:"CONFIDENCE",278:"CRITBINOM",279:"EVEN",280:"EXPONDIST",281:"FDIST",282:"FINV",283:"FISHER",284:"FISHERINV",285:"FLOOR",286:"GAMMADIST",287:"GAMMAINV",288:"CEILING",289:"HYPGEOMDIST",290:"LOGNORMDIST",291:"LOGINV",292:"NEGBINOMDIST",293:"NORMDIST",294:"NORMSDIST",295:"NORMINV",296:"NORMSINV",297:"STANDARDIZE",298:"ODD",299:"PERMUT",300:"POISSON",301:"TDIST",302:"WEIBULL",303:"SUMXMY2",304:"SUMX2MY2",305:"SUMX2PY2",306:"CHITEST",307:"CORREL",308:"COVAR",309:"FORECAST",310:"FTEST",311:"INTERCEPT",312:"PEARSON",313:"RSQ",314:"STEYX",315:"SLOPE",316:"TTEST",317:"PROB",318:"DEVSQ",319:"GEOMEAN",320:"HARMEAN",321:"SUMSQ",322:"KURT",323:"SKEW",324:"ZTEST",325:"LARGE",326:"SMALL",327:"QUARTILE",328:"PERCENTILE",329:"PERCENTRANK",330:"MODE",331:"TRIMMEAN",332:"TINV",334:"MOVIE.COMMAND",335:"GET.MOVIE",336:"CONCATENATE",337:"POWER",338:"PIVOT.ADD.DATA",339:"GET.PIVOT.TABLE",340:"GET.PIVOT.FIELD",341:"GET.PIVOT.ITEM",342:"RADIANS",343:"DEGREES",344:"SUBTOTAL",345:"SUMIF",346:"COUNTIF",347:"COUNTBLANK",348:"SCENARIO.GET",349:"OPTIONS.LISTS.GET",350:"ISPMT",351:"DATEDIF",352:"DATESTRING",353:"NUMBERSTRING",354:"ROMAN",355:"OPEN.DIALOG",356:"SAVE.DIALOG",357:"VIEW.GET",358:"GETPIVOTDATA",359:"HYPERLINK",360:"PHONETIC",361:"AVERAGEA",362:"MAXA",363:"MINA",364:"STDEVPA",365:"VARPA",366:"STDEVA",367:"VARA",368:"BAHTTEXT",369:"THAIDAYOFWEEK",370:"THAIDIGIT",371:"THAIMONTHOFYEAR",372:"THAINUMSOUND",373:"THAINUMSTRING",374:"THAISTRINGLENGTH",375:"ISTHAIDIGIT",376:"ROUNDBAHTDOWN",377:"ROUNDBAHTUP",378:"THAIYEAR",379:"RTD",380:"CUBEVALUE",381:"CUBEMEMBER",382:"CUBEMEMBERPROPERTY",383:"CUBERANKEDMEMBER",384:"HEX2BIN",385:"HEX2DEC",386:"HEX2OCT",387:"DEC2BIN",388:"DEC2HEX",389:"DEC2OCT",390:"OCT2BIN",391:"OCT2HEX",392:"OCT2DEC",393:"BIN2DEC",394:"BIN2OCT",395:"BIN2HEX",396:"IMSUB",397:"IMDIV",398:"IMPOWER",399:"IMABS",400:"IMSQRT",401:"IMLN",402:"IMLOG2",403:"IMLOG10",404:"IMSIN",405:"IMCOS",406:"IMEXP",407:"IMARGUMENT",408:"IMCONJUGATE",409:"IMAGINARY",410:"IMREAL",411:"COMPLEX",412:"IMSUM",413:"IMPRODUCT",414:"SERIESSUM",415:"FACTDOUBLE",416:"SQRTPI",417:"QUOTIENT",418:"DELTA",419:"GESTEP",420:"ISEVEN",421:"ISODD",422:"MROUND",423:"ERF",424:"ERFC",425:"BESSELJ",426:"BESSELK",427:"BESSELY",428:"BESSELI",429:"XIRR",430:"XNPV",431:"PRICEMAT",432:"YIELDMAT",433:"INTRATE",434:"RECEIVED",435:"DISC",436:"PRICEDISC",437:"YIELDDISC",438:"TBILLEQ",439:"TBILLPRICE",440:"TBILLYIELD",441:"PRICE",442:"YIELD",443:"DOLLARDE",444:"DOLLARFR",445:"NOMINAL",446:"EFFECT",447:"CUMPRINC",448:"CUMIPMT",449:"EDATE",450:"EOMONTH",451:"YEARFRAC",452:"COUPDAYBS",453:"COUPDAYS",454:"COUPDAYSNC",455:"COUPNCD",456:"COUPNUM",457:"COUPPCD",458:"DURATION",459:"MDURATION",460:"ODDLPRICE",461:"ODDLYIELD",462:"ODDFPRICE",463:"ODDFYIELD",464:"RANDBETWEEN",465:"WEEKNUM",466:"AMORDEGRC",467:"AMORLINC",468:"CONVERT",724:"SHEETJS",469:"ACCRINT",470:"ACCRINTM",471:"WORKDAY",472:"NETWORKDAYS",473:"GCD",474:"MULTINOMIAL",475:"LCM",476:"FVSCHEDULE",477:"CUBEKPIMEMBER",478:"CUBESET",479:"CUBESETCOUNT",480:"IFERROR",481:"COUNTIFS",482:"SUMIFS",483:"AVERAGEIF",484:"AVERAGEIFS"},lb={2:1,3:1,10:0,15:1,16:1,17:1,18:1,19:0,20:1,21:1,22:1,23:1,24:1,25:1,26:1,27:2,30:2,31:3,32:1,33:1,34:0,35:0,38:1,39:2,40:3,41:3,42:3,43:3,44:3,45:3,47:3,48:2,53:1,61:3,63:0,65:3,66:3,67:1,68:1,69:1,70:1,71:1,72:1,73:1,74:0,75:1,76:1,77:1,79:2,80:2,83:1,85:0,86:1,89:0,90:1,94:0,95:0,97:2,98:1,99:1,101:3,102:3,105:1,106:1,108:2,111:1,112:1,113:1,114:1,117:2,118:1,119:4,121:1,126:1,127:1,128:1,129:1,130:1,131:1,133:1,134:1,135:1,136:2,137:2,138:2,140:1,141:1,142:3,143:4,144:4,161:1,162:1,163:1,164:1,165:2,172:1,175:2,176:2,177:3,178:2,179:1,184:1,186:1,189:3,190:1,195:3,196:3,197:1,198:1,199:3,201:1,207:4,210:3,211:1,212:2,213:2,214:1,215:1,225:0,229:1,230:1,231:1,232:1,233:1,234:1,235:3,244:1,247:4,252:2,257:1,261:1,271:1,273:4,274:2,275:2,276:2,277:3,278:3,279:1,280:3,281:3,282:3,283:1,284:1,285:2,286:4,287:3,288:2,289:4,290:3,291:3,292:3,293:4,294:1,295:3,296:1,297:3,298:1,299:2,300:3,301:3,302:4,303:2,304:2,305:2,306:2,307:2,308:2,309:3,310:2,311:2,312:2,313:2,314:2,315:2,316:4,325:2,326:2,327:2,328:2,331:2,332:2,337:2,342:1,343:1,346:2,347:1,350:4,351:3,352:1,353:2,360:1,368:1,369:1,370:1,371:1,372:1,373:1,374:1,375:1,376:1,377:1,378:1,382:3,385:1,392:1,393:1,396:2,397:2,398:2,399:1,400:1,401:1,402:1,403:1,404:1,405:1,406:1,407:1,408:1,409:1,410:1,414:4,415:1,416:1,417:2,420:1,421:1,422:2,424:1,425:2,426:2,427:2,428:2,430:3,438:3,439:3,440:3,443:2,444:2,445:2,446:2,447:6,448:6,449:2,450:2,464:2,468:3,476:2,479:1,480:2,65535:0};function cb(e){return e.replace(/\./,"!")}var mb="undefined"!==typeof Map;function db(e,t,n){var a=0,o=e.length;if(n){if(mb?n.has(t):Object.prototype.hasOwnProperty.call(n,t))for(var s=mb?n.get(t):n[t];a<s.length;++a)if(e[s[a]].t===t)return e.Count++,s[a]}else for(;a<o;++a)if(e[a].t===t)return e.Count++,a;return e[o]={t:t},e.Count++,e.Unique++,n&&(mb?(n.has(t)||n.set(t,[]),n.get(t).push(o)):(Object.prototype.hasOwnProperty.call(n,t)||(n[t]=[]),n[t].push(o))),o}function pb(e,t){var n={min:e+1,max:e+1},a=-1;return t.MDW&&($y=t.MDW),null!=t.width?n.customWidth=1:null!=t.wpx?a=Yy(t.wpx):null!=t.wch&&(a=t.wch),a>-1?(n.width=Zy(a),n.customWidth=1):null!=t.width&&(n.width=t.width),t.hidden&&(n.hidden=!0),null!=t.level&&(n.outlineLevel=n.level=t.level),n}function ub(e,t){if(e){var n=[.7,.7,.75,.75,.3,.3];"xlml"==t&&(n=[1,1,1,1,.5,.5]),null==e.left&&(e.left=n[0]),null==e.right&&(e.right=n[1]),null==e.top&&(e.top=n[2]),null==e.bottom&&(e.bottom=n[3]),null==e.header&&(e.header=n[4]),null==e.footer&&(e.footer=n[5])}}function hb(e,t,n){var a=n.revssf[null!=t.z?t.z:"General"],o=60,s=e.length;if(null==a&&n.ssf)for(;o<392;++o)if(null==n.ssf[o]){Bu(t.z,o),n.ssf[o]=t.z,n.revssf[t.z]=a=o;break}for(o=0;o!=s;++o)if(e[o].numFmtId===a)return o;return e[s]={numFmtId:a,fontId:0,fillId:0,borderId:0,xfId:0,applyNumberFormat:1},s}function fb(e,t,n){if(e&&e["!ref"]){var a=ng(e["!ref"]);if(a.e.c<a.s.c||a.e.r<a.s.r)throw new Error("Bad range ("+n+"): "+e["!ref"])}}var gb=["objects","scenarios","selectLockedCells","selectUnlockedCells"],yb=["formatColumns","formatRows","formatCells","insertColumns","insertRows","insertHyperlinks","deleteColumns","deleteRows","sort","autoFilter","pivotTables"];function vb(e,t,n,a){if(e.c&&n["!comments"].push([t,e.c]),void 0===e.v&&"string"!==typeof e.f||"z"===e.t&&!e.f)return"";var o="",s=e.t,r=e.v;if("z"!==e.t)switch(e.t){case"b":o=e.v?"1":"0";break;case"n":o=""+e.v;break;case"e":o=Wg[e.v];break;case"d":a&&a.cellDates?o=lh(e.v,-1).toISOString():((e=mh(e)).t="n",o=""+(e.v=eh(lh(e.v)))),"undefined"===typeof e.z&&(e.z=iu[14]);break;default:o=e.v}var i=Ih("v",xh(o)),l={r:t},c=hb(a.cellXfs,e,a);switch(0!==c&&(l.s=c),e.t){case"n":case"z":break;case"d":l.t="d";break;case"b":l.t="b";break;case"e":l.t="e";break;default:if(null==e.v){delete e.t;break}if(e.v.length>32767)throw new Error("Text length must not exceed 32767 characters");if(a&&a.bookSST){i=Ih("v",""+db(a.Strings,e.v,a.revStrings)),l.t="s";break}l.t="str"}if(e.t!=s&&(e.t=s,e.v=r),"string"==typeof e.f&&e.f){var m=e.F&&e.F.slice(0,t.length)==t?{t:"array",ref:e.F}:null;i=Fh("f",xh(e.f),m)+(null!=e.v?i:"")}return e.l&&n["!links"].push([t,e.l]),e.D&&(l.cm=1),Fh("c",i,l)}function bb(e,t,n,a){var o,s=[yh,Fh("worksheet",null,{xmlns:Xh[0],"xmlns:r":qh})],r=n.SheetNames[e],i="",l=n.Sheets[r];null==l&&(l={});var c=l["!ref"]||"A1",m=ng(c);if(m.e.c>16383||m.e.r>1048575){if(t.WTF)throw new Error("Range "+c+" exceeds format limit A1:XFD1048576");m.e.c=Math.min(m.e.c,16383),m.e.r=Math.min(m.e.c,1048575),c=tg(m)}a||(a={}),l["!comments"]=[];var d=[];!function(e,t,n,a,o){var s=!1,r={},i=null;if("xlsx"!==a.bookType&&t.vbaraw){var l=t.SheetNames[n];try{t.Workbook&&(l=t.Workbook.Sheets[n].CodeName||l)}catch(m){}s=!0,r.codeName=Oh(xh(l))}if(e&&e["!outline"]){var c={summaryBelow:1,summaryRight:1};e["!outline"].above&&(c.summaryBelow=0),e["!outline"].left&&(c.summaryRight=0),i=(i||"")+Fh("outlinePr",null,c)}(s||i)&&(o[o.length]=Fh("sheetPr",i,r))}(l,n,e,t,s),s[s.length]=Fh("dimension",null,{ref:c}),s[s.length]=function(e,t,n,a){var o={workbookViewId:"0"};return(((a||{}).Workbook||{}).Views||[])[0]&&(o.rightToLeft=a.Workbook.Views[0].RTL?"1":"0"),Fh("sheetViews",Fh("sheetView",null,o),{})}(0,0,0,n),t.sheetFormat&&(s[s.length]=Fh("sheetFormatPr",null,{defaultRowHeight:t.sheetFormat.defaultRowHeight||"16",baseColWidth:t.sheetFormat.baseColWidth||"10",outlineLevelRow:t.sheetFormat.outlineLevelRow||"7"})),null!=l["!cols"]&&l["!cols"].length>0&&(s[s.length]=function(e,t){for(var n,a=["<cols>"],o=0;o!=t.length;++o)(n=t[o])&&(a[a.length]=Fh("col",null,pb(o,n)));return a[a.length]="</cols>",a.join("")}(0,l["!cols"])),s[o=s.length]="<sheetData/>",l["!links"]=[],null!=l["!ref"]&&(i=function(e,t,n,a){var o,s,r=[],i=[],l=ng(e["!ref"]),c="",m="",d=[],p=0,u=0,h=e["!rows"],f=Array.isArray(e),g={r:m},y=-1;for(u=l.s.c;u<=l.e.c;++u)d[u]=Jf(u);for(p=l.s.r;p<=l.e.r;++p){for(i=[],m=Yf(p),u=l.s.c;u<=l.e.c;++u){o=d[u]+m;var v=f?(e[p]||[])[u]:e[o];void 0!==v&&null!=(c=vb(v,o,e,t))&&i.push(c)}(i.length>0||h&&h[p])&&(g={r:m},h&&h[p]&&((s=h[p]).hidden&&(g.hidden=1),y=-1,s.hpx?y=Xy(s.hpx):s.hpt&&(y=s.hpt),y>-1&&(g.ht=y,g.customHeight=1),s.level&&(g.outlineLevel=s.level)),r[r.length]=Fh("row",i.join(""),g))}if(h)for(;p<h.length;++p)h&&h[p]&&(g={r:p+1},(s=h[p]).hidden&&(g.hidden=1),y=-1,s.hpx?y=Xy(s.hpx):s.hpt&&(y=s.hpt),y>-1&&(g.ht=y,g.customHeight=1),s.level&&(g.outlineLevel=s.level),r[r.length]=Fh("row","",g));return r.join("")}(l,t,0,0),i.length>0&&(s[s.length]=i)),s.length>o+1&&(s[s.length]="</sheetData>",s[o]=s[o].replace("/>",">")),l["!protect"]&&(s[s.length]=function(e){var t={sheet:1};return gb.forEach((function(n){null!=e[n]&&e[n]&&(t[n]="1")})),yb.forEach((function(n){null==e[n]||e[n]||(t[n]="0")})),e.password&&(t.password=Gy(e.password).toString(16).toUpperCase()),Fh("sheetProtection",null,t)}(l["!protect"])),null!=l["!autofilter"]&&(s[s.length]=function(e,t,n,a){var o="string"==typeof e.ref?e.ref:tg(e.ref);n.Workbook||(n.Workbook={Sheets:[]}),n.Workbook.Names||(n.Workbook.Names=[]);var s=n.Workbook.Names,r=eg(o);r.s.r==r.e.r&&(r.e.r=eg(t["!ref"]).e.r,o=tg(r));for(var i=0;i<s.length;++i){var l=s[i];if("_xlnm._FilterDatabase"==l.Name&&l.Sheet==a){l.Ref="'"+n.SheetNames[a]+"'!"+o;break}}return i==s.length&&s.push({Name:"_xlnm._FilterDatabase",Sheet:a,Ref:"'"+n.SheetNames[a]+"'!"+o}),Fh("autoFilter",null,{ref:o})}(l["!autofilter"],l,n,e)),null!=l["!merges"]&&l["!merges"].length>0&&(s[s.length]=function(e){if(0===e.length)return"";for(var t='<mergeCells count="'+e.length+'">',n=0;n!=e.length;++n)t+='<mergeCell ref="'+tg(e[n])+'"/>';return t+"</mergeCells>"}(l["!merges"]));var p,u,h=-1,f=-1;return l["!links"].length>0&&(s[s.length]="<hyperlinks>",l["!links"].forEach((function(e){e[1].Target&&(p={ref:e[0]},"#"!=e[1].Target.charAt(0)&&(f=Kg(a,-1,xh(e[1].Target).replace(/#.*$/,""),Hg.HLINK),p["r:id"]="rId"+f),(h=e[1].Target.indexOf("#"))>-1&&(p.location=xh(e[1].Target.slice(h+1))),e[1].Tooltip&&(p.tooltip=xh(e[1].Tooltip)),s[s.length]=Fh("hyperlink",null,p))})),s[s.length]="</hyperlinks>"),delete l["!links"],null!=l["!margins"]&&(s[s.length]=(ub(u=l["!margins"]),Fh("pageMargins",null,u))),t&&!t.ignoreEC&&void 0!=t.ignoreEC||(s[s.length]=Ih("ignoredErrors",Fh("ignoredError",null,{numberStoredAsText:1,sqref:c}))),d.length>0&&(f=Kg(a,-1,"../drawings/drawing"+(e+1)+".xml",Hg.DRAW),s[s.length]=Fh("drawing",null,{"r:id":"rId"+f}),l["!drawing"]=d),l["!comments"].length>0&&(f=Kg(a,-1,"../drawings/vmlDrawing"+(e+1)+".vml",Hg.VML),s[s.length]=Fh("legacyDrawing",null,{"r:id":"rId"+f}),l["!legacy"]=f),s.length>1&&(s[s.length]="</worksheet>",s[1]=s[1].replace("/>",">")),s.join("")}function wb(e,t,n,a){var o=function(e,t,n){var a=zf(145),o=(n["!rows"]||[])[e]||{};a.write_shift(4,e),a.write_shift(4,0);var s=320;o.hpx?s=20*Xy(o.hpx):o.hpt&&(s=20*o.hpt),a.write_shift(2,s),a.write_shift(1,0);var r=0;o.level&&(r|=o.level),o.hidden&&(r|=16),(o.hpx||o.hpt)&&(r|=32),a.write_shift(1,r),a.write_shift(1,0);var i=0,l=a.l;a.l+=4;for(var c={r:e,c:0},m=0;m<16;++m)if(!(t.s.c>m+1<<10||t.e.c<m<<10)){for(var d=-1,p=-1,u=m<<10;u<m+1<<10;++u)c.c=u,(Array.isArray(n)?(n[c.r]||[])[c.c]:n[Qf(c)])&&(d<0&&(d=u),p=u);d<0||(++i,a.write_shift(4,d),a.write_shift(4,p))}var h=a.l;return a.l=l,a.write_shift(4,i),a.l=h,a.length>a.l?a.slice(0,a.l):a}(a,n,t);(o.length>17||(t["!rows"]||[])[a])&&Hf(e,0,o)}var kb=Ag,xb=Ng;function _b(e){return[yg(e),Dg(e),"n"]}var Tb=Ag,Sb=Ng;var Cb=["left","right","top","bottom","header","footer"];function Eb(e,t,n,a,o,s,r){if(void 0===t.v)return!1;var i="";switch(t.t){case"b":i=t.v?"1":"0";break;case"d":(t=mh(t)).z=t.z||iu[14],t.v=eh(lh(t.v)),t.t="n";break;case"n":case"e":i=""+t.v;break;default:i=t.v}var l={r:n,c:a};switch(l.s=hb(o.cellXfs,t,o),t.l&&s["!links"].push([Qf(l),t.l]),t.c&&s["!comments"].push([Qf(l),t.c]),t.t){case"s":case"str":return o.bookSST?(i=db(o.Strings,t.v,o.revStrings),l.t="s",l.v=i,r?Hf(e,18,function(e,t,n){return null==n&&(n=zf(8)),vg(t,n),n.write_shift(4,t.v),n}(0,l)):Hf(e,7,function(e,t,n){return null==n&&(n=zf(12)),gg(t,n),n.write_shift(4,t.v),n}(0,l))):(l.t="str",r?Hf(e,17,function(e,t,n){return null==n&&(n=zf(8+4*e.v.length)),vg(t,n),mg(e.v,n),n.length>n.l?n.slice(0,n.l):n}(t,l)):Hf(e,6,function(e,t,n){return null==n&&(n=zf(12+4*e.v.length)),gg(t,n),mg(e.v,n),n.length>n.l?n.slice(0,n.l):n}(t,l))),!0;case"n":return t.v==(0|t.v)&&t.v>-1e3&&t.v<1e3?r?Hf(e,13,function(e,t,n){return null==n&&(n=zf(8)),vg(t,n),Eg(e.v,n),n}(t,l)):Hf(e,2,function(e,t,n){return null==n&&(n=zf(12)),gg(t,n),Eg(e.v,n),n}(t,l)):r?Hf(e,16,function(e,t,n){return null==n&&(n=zf(12)),vg(t,n),Og(e.v,n),n}(t,l)):Hf(e,5,function(e,t,n){return null==n&&(n=zf(16)),gg(t,n),Og(e.v,n),n}(t,l)),!0;case"b":return l.t="b",r?Hf(e,15,function(e,t,n){return null==n&&(n=zf(5)),vg(t,n),n.write_shift(1,e.v?1:0),n}(t,l)):Hf(e,4,function(e,t,n){return null==n&&(n=zf(9)),gg(t,n),n.write_shift(1,e.v?1:0),n}(t,l)),!0;case"e":return l.t="e",r?Hf(e,14,function(e,t,n){return null==n&&(n=zf(8)),vg(t,n),n.write_shift(1,e.v),n.write_shift(2,0),n.write_shift(1,0),n}(t,l)):Hf(e,3,function(e,t,n){return null==n&&(n=zf(9)),gg(t,n),n.write_shift(1,e.v),n}(t,l)),!0}return r?Hf(e,12,function(e,t,n){return null==n&&(n=zf(4)),vg(t,n)}(0,l)):Hf(e,1,function(e,t,n){return null==n&&(n=zf(8)),gg(t,n)}(0,l)),!0}function jb(e,t){var n,a;t&&t["!merges"]&&(Hf(e,177,(n=t["!merges"].length,null==a&&(a=zf(4)),a.write_shift(4,n),a)),t["!merges"].forEach((function(t){Hf(e,176,Sb(t))})),Hf(e,178))}function Ab(e,t){t&&t["!cols"]&&(Hf(e,390),t["!cols"].forEach((function(t,n){t&&Hf(e,60,function(e,t,n){null==n&&(n=zf(18));var a=pb(e,t);n.write_shift(-4,e),n.write_shift(-4,e),n.write_shift(4,256*(a.width||10)),n.write_shift(4,0);var o=0;return t.hidden&&(o|=1),"number"==typeof a.width&&(o|=2),t.level&&(o|=t.level<<8),n.write_shift(2,o),n}(n,t))})),Hf(e,391))}function Nb(e,t){t&&t["!ref"]&&(Hf(e,648),Hf(e,649,function(e){var t=zf(24);return t.write_shift(4,4),t.write_shift(4,1),Ng(e,t),t}(ng(t["!ref"]))),Hf(e,650))}function Db(e,t,n){t["!links"].forEach((function(t){if(t[1].Target){var a=Kg(n,-1,t[1].Target.replace(/#.*$/,""),Hg.HLINK);Hf(e,494,function(e,t){var n=zf(50+4*(e[1].Target.length+(e[1].Tooltip||"").length));Ng({s:Xf(e[0]),e:Xf(e[0])},n),Sg("rId"+t,n);var a=e[1].Target.indexOf("#");return mg((-1==a?"":e[1].Target.slice(a+1))||"",n),mg(e[1].Tooltip||"",n),mg("",n),n.slice(0,n.l)}(t,a))}})),delete t["!links"]}function Ob(e,t,n){Hf(e,133),Hf(e,137,function(e,t,n){null==n&&(n=zf(30));var a=924;return(((t||{}).Views||[])[0]||{}).RTL&&(a|=32),n.write_shift(2,a),n.write_shift(4,0),n.write_shift(4,0),n.write_shift(4,0),n.write_shift(1,0),n.write_shift(1,0),n.write_shift(2,0),n.write_shift(2,100),n.write_shift(2,0),n.write_shift(2,0),n.write_shift(2,0),n.write_shift(4,0),n}(0,n)),Hf(e,138),Hf(e,134)}function Rb(e,t){var n,a;t["!protect"]&&Hf(e,535,(n=t["!protect"],null==a&&(a=zf(66)),a.write_shift(2,n.password?Gy(n.password):0),a.write_shift(4,1),[["objects",!1],["scenarios",!1],["formatCells",!0],["formatColumns",!0],["formatRows",!0],["insertColumns",!0],["insertRows",!0],["insertHyperlinks",!0],["deleteColumns",!0],["deleteRows",!0],["selectLockedCells",!1],["sort",!0],["autoFilter",!0],["pivotTables",!0],["selectUnlockedCells",!1]].forEach((function(e){e[1]?a.write_shift(4,null==n[e[0]]||n[e[0]]?0:1):a.write_shift(4,null!=n[e[0]]&&n[e[0]]?0:1)})),a))}function Pb(e,t,n,a){var o=Uf(),s=n.SheetNames[e],r=n.Sheets[s]||{},i=s;try{n&&n.Workbook&&(i=n.Workbook.Sheets[e].CodeName||i)}catch(d){}var l,c,m=ng(r["!ref"]||"A1");if(m.e.c>16383||m.e.r>1048575){if(t.WTF)throw new Error("Range "+(r["!ref"]||"A1")+" exceeds format limit A1:XFD1048576");m.e.c=Math.min(m.e.c,16383),m.e.r=Math.min(m.e.c,1048575)}return r["!links"]=[],r["!comments"]=[],Hf(o,129),(n.vbaraw||r["!outline"])&&Hf(o,147,function(e,t,n){null==n&&(n=zf(84+4*e.length));var a=192;t&&(t.above&&(a&=-65),t.left&&(a&=-129)),n.write_shift(1,a);for(var o=1;o<3;++o)n.write_shift(1,0);return Rg({auto:1},n),n.write_shift(-4,-1),n.write_shift(-4,-1),wg(e,n),n.slice(0,n.l)}(i,r["!outline"])),Hf(o,148,xb(m)),Ob(o,0,n.Workbook),Ab(o,r),function(e,t,n,a){var o,s=ng(t["!ref"]||"A1"),r="",i=[];Hf(e,145);var l=Array.isArray(t),c=s.e.r;t["!rows"]&&(c=Math.max(s.e.r,t["!rows"].length-1));for(var m=s.s.r;m<=c;++m){r=Yf(m),wb(e,t,s,m);var d=!1;if(m<=s.e.r)for(var p=s.s.c;p<=s.e.c;++p){m===s.s.r&&(i[p]=Jf(p)),o=i[p]+r;var u=l?(t[m]||[])[p]:t[o];d=!!u&&Eb(e,u,m,p,a,t,d)}}Hf(e,146)}(o,r,0,t),Rb(o,r),function(e,t,n,a){if(t["!autofilter"]){var o=t["!autofilter"],s="string"===typeof o.ref?o.ref:tg(o.ref);n.Workbook||(n.Workbook={Sheets:[]}),n.Workbook.Names||(n.Workbook.Names=[]);var r=n.Workbook.Names,i=eg(s);i.s.r==i.e.r&&(i.e.r=eg(t["!ref"]).e.r,s=tg(i));for(var l=0;l<r.length;++l){var c=r[l];if("_xlnm._FilterDatabase"==c.Name&&c.Sheet==a){c.Ref="'"+n.SheetNames[a]+"'!"+s;break}}l==r.length&&r.push({Name:"_xlnm._FilterDatabase",Sheet:a,Ref:"'"+n.SheetNames[a]+"'!"+s}),Hf(e,161,Ng(ng(s))),Hf(e,162)}}(o,r,n,e),jb(o,r),Db(o,r,a),r["!margins"]&&Hf(o,476,(l=r["!margins"],null==c&&(c=zf(48)),ub(l),Cb.forEach((function(e){Og(l[e],c)})),c)),t&&!t.ignoreEC&&void 0!=t.ignoreEC||Nb(o,r),function(e,t,n,a){if(t["!comments"].length>0){var o=Kg(a,-1,"../drawings/vmlDrawing"+(n+1)+".vml",Hg.VML);Hf(e,551,Sg("rId"+o)),t["!legacy"]=o}}(o,r,e,a),Hf(o,130),o.end()}var Ib=[["allowRefreshQuery",!1,"bool"],["autoCompressPictures",!0,"bool"],["backupFile",!1,"bool"],["checkCompatibility",!1,"bool"],["CodeName",""],["date1904",!1,"bool"],["defaultThemeVersion",0,"int"],["filterPrivacy",!1,"bool"],["hidePivotFieldList",!1,"bool"],["promptedSolutions",!1,"bool"],["publishItems",!1,"bool"],["refreshAllConnections",!1,"bool"],["saveExternalLinkValues",!0,"bool"],["showBorderUnselectedTables",!0,"bool"],["showInkAnnotation",!0,"bool"],["showObjects","all"],["showPivotChartFilter",!1,"bool"],["updateLinks","userSet"]];var Lb="][*?/\\".split("");function Fb(e,t){if(e.length>31){if(t)return!1;throw new Error("Sheet names cannot exceed 31 chars")}var n=!0;return Lb.forEach((function(a){if(-1!=e.indexOf(a)){if(!t)throw new Error("Sheet name cannot contain : \\ / ? * [ ]");n=!1}})),n}function Mb(e){if(!e||!e.SheetNames||!e.Sheets)throw new Error("Invalid Workbook");if(!e.SheetNames.length)throw new Error("Workbook is empty");var t,n,a,o=e.Workbook&&e.Workbook.Sheets||[];t=e.SheetNames,n=o,a=!!e.vbaraw,t.forEach((function(e,o){Fb(e);for(var s=0;s<o;++s)if(e==t[s])throw new Error("Duplicate Sheet Name: "+e);if(a){var r=n&&n[o]&&n[o].CodeName||e;if(95==r.charCodeAt(0)&&r.length>22)throw new Error("Bad Code Name: Worksheet"+r)}}));for(var s=0;s<e.SheetNames.length;++s)fb(e.Sheets[e.SheetNames[s]],e.SheetNames[s],s)}function Wb(e){var t=[yh];t[t.length]=Fh("workbook",null,{xmlns:Xh[0],"xmlns:r":qh});var n=e.Workbook&&(e.Workbook.Names||[]).length>0,a={codeName:"ThisWorkbook"};e.Workbook&&e.Workbook.WBProps&&(Ib.forEach((function(t){null!=e.Workbook.WBProps[t[0]]&&e.Workbook.WBProps[t[0]]!=t[1]&&(a[t[0]]=e.Workbook.WBProps[t[0]])})),e.Workbook.WBProps.CodeName&&(a.codeName=e.Workbook.WBProps.CodeName,delete a.CodeName)),t[t.length]=Fh("workbookPr",null,a);var o=e.Workbook&&e.Workbook.Sheets||[],s=0;if(o&&o[0]&&o[0].Hidden){for(t[t.length]="<bookViews>",s=0;s!=e.SheetNames.length&&o[s]&&o[s].Hidden;++s);s==e.SheetNames.length&&(s=0),t[t.length]='<workbookView firstSheet="'+s+'" activeTab="'+s+'"/>',t[t.length]="</bookViews>"}for(t[t.length]="<sheets>",s=0;s!=e.SheetNames.length;++s){var r={name:xh(e.SheetNames[s].slice(0,31))};if(r.sheetId=""+(s+1),r["r:id"]="rId"+(s+1),o[s])switch(o[s].Hidden){case 1:r.state="hidden";break;case 2:r.state="veryHidden"}t[t.length]=Fh("sheet",null,r)}return t[t.length]="</sheets>",n&&(t[t.length]="<definedNames>",e.Workbook&&e.Workbook.Names&&e.Workbook.Names.forEach((function(e){var n={name:e.Name};e.Comment&&(n.comment=e.Comment),null!=e.Sheet&&(n.localSheetId=""+e.Sheet),e.Hidden&&(n.hidden="1"),e.Ref&&(t[t.length]=Fh("definedName",xh(e.Ref),n))})),t[t.length]="</definedNames>"),t.length>2&&(t[t.length]="</workbook>",t[1]=t[1].replace("/>",">")),t.join("")}function Bb(e,t){if(t.Workbook&&t.Workbook.Sheets){for(var n,a,o=t.Workbook.Sheets,s=0,r=-1,i=-1;s<o.length;++s)!o[s]||!o[s].Hidden&&-1==r?r=s:1==o[s].Hidden&&-1==i&&(i=s);if(!(i>r))Hf(e,135),Hf(e,158,(n=r,a||(a=zf(29)),a.write_shift(-4,0),a.write_shift(-4,460),a.write_shift(4,28800),a.write_shift(4,17600),a.write_shift(4,500),a.write_shift(4,n),a.write_shift(4,n),a.write_shift(1,120),a.length>a.l?a.slice(0,a.l):a)),Hf(e,136)}}function zb(e,t){var n=Uf();return Hf(n,131),Hf(n,128,function(e,t){t||(t=zf(127));for(var n=0;4!=n;++n)t.write_shift(4,0);return mg("SheetJS",t),mg(Ep.version,t),mg(Ep.version,t),mg("7262",t),t.length>t.l?t.slice(0,t.l):t}()),Hf(n,153,function(e,t){t||(t=zf(72));var n=0;return e&&e.filterPrivacy&&(n|=8),t.write_shift(4,n),t.write_shift(4,0),wg(e&&e.CodeName||"ThisWorkbook",t),t.slice(0,t.l)}(e.Workbook&&e.Workbook.WBProps||null)),Bb(n,e),function(e,t){Hf(e,143);for(var n=0;n!=t.SheetNames.length;++n){Hf(e,156,(a={Hidden:t.Workbook&&t.Workbook.Sheets&&t.Workbook.Sheets[n]&&t.Workbook.Sheets[n].Hidden||0,iTabID:n+1,strRelID:"rId"+(n+1),name:t.SheetNames[n]},(o=void 0)||(o=zf(127)),o.write_shift(4,a.Hidden),o.write_shift(4,a.iTabID),Sg(a.strRelID,o),mg(a.name.slice(0,31),o),o.length>o.l?o.slice(0,o.l):o))}var a,o;Hf(e,144)}(n,e),Hf(n,132),n.end()}function Ub(e,t,n,a,o){return(".bin"===t.slice(-4)?Pb:bb)(e,n,a,o)}function Hb(e,t,n){return(".bin"===t.slice(-4)?xv:bv)(e,n)}function Gb(e,t){var n=[];return e.Props&&n.push(function(e,t){var n=[];return Yu(ny).map((function(e){for(var t=0;t<Yg.length;++t)if(Yg[t][1]==e)return Yg[t];for(t=0;t<Xg.length;++t)if(Xg[t][1]==e)return Xg[t];throw e})).forEach((function(a){if(null!=e[a[1]]){var o=t&&t.Props&&null!=t.Props[a[1]]?t.Props[a[1]]:e[a[1]];"date"===a[2]&&(o=new Date(o).toISOString().replace(/\.\d*Z/,"Z")),"number"==typeof o?o=String(o):!0===o||!1===o?o=o?"1":"0":o instanceof Date&&(o=new Date(o).toISOString().replace(/\.\d*Z/,"")),n.push(Ih(ny[a[1]]||a[1],o))}})),Fh("DocumentProperties",n.join(""),{xmlns:Qh})}(e.Props,t)),e.Custprops&&n.push(function(e,t){var n=["Worksheets","SheetNames"],a="CustomDocumentProperties",o=[];return e&&Yu(e).forEach((function(t){if(Object.prototype.hasOwnProperty.call(e,t)){for(var a=0;a<Yg.length;++a)if(t==Yg[a][1])return;for(a=0;a<Xg.length;++a)if(t==Xg[a][1])return;for(a=0;a<n.length;++a)if(t==n[a])return;var s=e[t],r="string";"number"==typeof s?(r="float",s=String(s)):!0===s||!1===s?(r="boolean",s=s?"1":"0"):s=String(s),o.push(Fh(_h(t),s,{"dt:dt":r}))}})),t&&Yu(t).forEach((function(n){if(Object.prototype.hasOwnProperty.call(t,n)&&(!e||!Object.prototype.hasOwnProperty.call(e,n))){var a=t[n],s="string";"number"==typeof a?(s="float",a=String(a)):!0===a||!1===a?(s="boolean",a=a?"1":"0"):a instanceof Date?(s="dateTime.tz",a=a.toISOString()):a=String(a),o.push(Fh(_h(n),a,{"dt:dt":s}))}})),"<"+a+' xmlns="'+Qh+'">'+o.join("")+"</"+a+">"}(e.Props,e.Custprops)),n.join("")}function Vb(e){return Fh("NamedRange",null,{"ss:Name":e.Name,"ss:RefersTo":"="+Cv(e.Ref,{r:0,c:0})})}function Kb(e,t,n,a,o,s,r){if(!e||void 0==e.v&&void 0==e.f)return"";var i={};if(e.f&&(i["ss:Formula"]="="+xh(Cv(e.f,r))),e.F&&e.F.slice(0,t.length)==t){var l=Xf(e.F.slice(t.length+1));i["ss:ArrayRange"]="RC:R"+(l.r==r.r?"":"["+(l.r-r.r)+"]")+"C"+(l.c==r.c?"":"["+(l.c-r.c)+"]")}if(e.l&&e.l.Target&&(i["ss:HRef"]=xh(e.l.Target),e.l.Tooltip&&(i["x:HRefScreenTip"]=xh(e.l.Tooltip))),n["!merges"])for(var c=n["!merges"],m=0;m!=c.length;++m)c[m].s.c==r.c&&c[m].s.r==r.r&&(c[m].e.c>c[m].s.c&&(i["ss:MergeAcross"]=c[m].e.c-c[m].s.c),c[m].e.r>c[m].s.r&&(i["ss:MergeDown"]=c[m].e.r-c[m].s.r));var d="",p="";switch(e.t){case"z":if(!a.sheetStubs)return"";break;case"n":d="Number",p=String(e.v);break;case"b":d="Boolean",p=e.v?"1":"0";break;case"e":d="Error",p=Wg[e.v];break;case"d":d="DateTime",p=new Date(e.v).toISOString(),null==e.z&&(e.z=e.z||iu[14]);break;case"s":d="String",p=((e.v||"")+"").replace(wh,(function(e){return bh[e]})).replace(Th,(function(e){return"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"}))}var u=hb(a.cellXfs,e,a);i["ss:StyleID"]="s"+(21+u),i["ss:Index"]=r.c+1;var h=null!=e.v?p:"",f="z"==e.t?"":'<Data ss:Type="'+d+'">'+h+"</Data>";return(e.c||[]).length>0&&(f+=e.c.map((function(e){var t=Fh("ss:Data",(e.t||"").replace(/(\r\n|[\r\n])/g," "),{xmlns:"http://www.w3.org/TR/REC-html40"});return Fh("Comment",t,{"ss:Author":e.a})})).join("")),Fh("Cell",f,i)}function $b(e,t){var n='<Row ss:Index="'+(e+1)+'"';return t&&(t.hpt&&!t.hpx&&(t.hpx=Qy(t.hpt)),t.hpx&&(n+=' ss:AutoFitHeight="0" ss:Height="'+t.hpx+'"'),t.hidden&&(n+=' ss:Hidden="1"')),n+">"}function qb(e,t,n){var a=[],o=n.SheetNames[e],s=n.Sheets[o],r=s?function(e,t,n,a){if(!e)return"";if(!((a||{}).Workbook||{}).Names)return"";for(var o=a.Workbook.Names,s=[],r=0;r<o.length;++r){var i=o[r];i.Sheet==n&&(i.Name.match(/^_xlfn\./)||s.push(Vb(i)))}return s.join("")}(s,0,e,n):"";return r.length>0&&a.push("<Names>"+r+"</Names>"),r=s?function(e,t,n,a){if(!e["!ref"])return"";var o=ng(e["!ref"]),s=e["!merges"]||[],r=0,i=[];e["!cols"]&&e["!cols"].forEach((function(e,t){Jy(e);var n=!!e.width,a=pb(t,e),o={"ss:Index":t+1};n&&(o["ss:Width"]=qy(a.width)),e.hidden&&(o["ss:Hidden"]="1"),i.push(Fh("Column",null,o))}));for(var l=Array.isArray(e),c=o.s.r;c<=o.e.r;++c){for(var m=[$b(c,(e["!rows"]||[])[c])],d=o.s.c;d<=o.e.c;++d){var p=!1;for(r=0;r!=s.length;++r)if(!(s[r].s.c>d)&&!(s[r].s.r>c)&&!(s[r].e.c<d)&&!(s[r].e.r<c)){s[r].s.c==d&&s[r].s.r==c||(p=!0);break}if(!p){var u={r:c,c:d},h=Qf(u),f=l?(e[c]||[])[d]:e[h];m.push(Kb(f,h,e,t,0,0,u))}}m.push("</Row>"),m.length>2&&i.push(m.join(""))}return i.join("")}(s,t):"",r.length>0&&a.push("<Table>"+r+"</Table>"),a.push(function(e,t,n,a){if(!e)return"";var o=[];if(e["!margins"]&&(o.push("<PageSetup>"),e["!margins"].header&&o.push(Fh("Header",null,{"x:Margin":e["!margins"].header})),e["!margins"].footer&&o.push(Fh("Footer",null,{"x:Margin":e["!margins"].footer})),o.push(Fh("PageMargins",null,{"x:Bottom":e["!margins"].bottom||"0.75","x:Left":e["!margins"].left||"0.7","x:Right":e["!margins"].right||"0.7","x:Top":e["!margins"].top||"0.75"})),o.push("</PageSetup>")),a&&a.Workbook&&a.Workbook.Sheets&&a.Workbook.Sheets[n])if(a.Workbook.Sheets[n].Hidden)o.push(Fh("Visible",1==a.Workbook.Sheets[n].Hidden?"SheetHidden":"SheetVeryHidden",{}));else{for(var s=0;s<n&&(!a.Workbook.Sheets[s]||a.Workbook.Sheets[s].Hidden);++s);s==n&&o.push("<Selected/>")}return((((a||{}).Workbook||{}).Views||[])[0]||{}).RTL&&o.push("<DisplayRightToLeft/>"),e["!protect"]&&(o.push(Ih("ProtectContents","True")),e["!protect"].objects&&o.push(Ih("ProtectObjects","True")),e["!protect"].scenarios&&o.push(Ih("ProtectScenarios","True")),null==e["!protect"].selectLockedCells||e["!protect"].selectLockedCells?null==e["!protect"].selectUnlockedCells||e["!protect"].selectUnlockedCells||o.push(Ih("EnableSelection","UnlockedCells")):o.push(Ih("EnableSelection","NoSelection")),[["formatCells","AllowFormatCells"],["formatColumns","AllowSizeCols"],["formatRows","AllowSizeRows"],["insertColumns","AllowInsertCols"],["insertRows","AllowInsertRows"],["insertHyperlinks","AllowInsertHyperlinks"],["deleteColumns","AllowDeleteCols"],["deleteRows","AllowDeleteRows"],["sort","AllowSort"],["autoFilter","AllowFilter"],["pivotTables","AllowUsePivotTables"]].forEach((function(t){e["!protect"][t[0]]&&o.push("<"+t[1]+"/>")}))),0==o.length?"":Fh("WorksheetOptions",o.join(""),{xmlns:ef})}(s,0,e,n)),a.join("")}function Yb(e,t){t||(t={}),e.SSF||(e.SSF=mh(iu)),e.SSF&&(Uu(),zu(e.SSF),t.revssf=Xu(e.SSF),t.revssf[e.SSF[65535]]=0,t.ssf=e.SSF,t.cellXfs=[],hb(t.cellXfs,{},{revssf:{General:0}}));var n=[];n.push(Gb(e,t)),n.push(""),n.push(""),n.push("");for(var a=0;a<e.SheetNames.length;++a)n.push(Fh("Worksheet",qb(a,t,e),{"ss:Name":xh(e.SheetNames[a])}));return n[2]=function(e,t){var n=['<Style ss:ID="Default" ss:Name="Normal"><NumberFormat/></Style>'];return t.cellXfs.forEach((function(e,t){var a=[];a.push(Fh("NumberFormat",null,{"ss:Format":xh(iu[e.numFmtId])}));var o={"ss:ID":"s"+(21+t)};n.push(Fh("Style",a.join(""),o))})),Fh("Styles",n.join(""))}(0,t),n[3]=function(e){if(!((e||{}).Workbook||{}).Names)return"";for(var t=e.Workbook.Names,n=[],a=0;a<t.length;++a){var o=t[a];null==o.Sheet&&(o.Name.match(/^_xlfn\./)||n.push(Vb(o)))}return Fh("Names",n.join(""))}(e),yh+Fh("Workbook",n.join(""),{xmlns:tf,"xmlns:o":Qh,"xmlns:x":ef,"xmlns:ss":tf,"xmlns:dt":nf,"xmlns:html":sf})}var Zb="e0859ff2f94f6810ab9108002b27b3d9",Jb="02d5cdd59c2e1b10939708002b2cf9ae",Xb="05d5cdd59c2e1b10939708002b2cf9ae";function Qb(e,t){var n=t||{},a=Vu.utils.cfb_new({root:"R"}),o="/Workbook";switch(n.bookType||"xls"){case"xls":n.bookType="biff8";case"xla":n.bookType||(n.bookType="xla");case"biff8":o="/Workbook",n.biff=8;break;case"biff5":o="/Book",n.biff=5;break;default:throw new Error("invalid type "+n.bookType+" for XLS CFB")}return Vu.utils.cfb_add(a,o,mw(e,n)),8==n.biff&&(e.Props||e.Custprops)&&function(e,t){var n,a=[],o=[],s=[],r=0,i=Zu(Ig,"n"),l=Zu(Lg,"n");if(e.Props)for(n=Yu(e.Props),r=0;r<n.length;++r)(Object.prototype.hasOwnProperty.call(i,n[r])?a:Object.prototype.hasOwnProperty.call(l,n[r])?o:s).push([n[r],e.Props[n[r]]]);if(e.Custprops)for(n=Yu(e.Custprops),r=0;r<n.length;++r)Object.prototype.hasOwnProperty.call(e.Props||{},n[r])||(Object.prototype.hasOwnProperty.call(i,n[r])?a:Object.prototype.hasOwnProperty.call(l,n[r])?o:s).push([n[r],e.Custprops[n[r]]]);var c=[];for(r=0;r<s.length;++r)oy.indexOf(s[r][0])>-1||Qg.indexOf(s[r][0])>-1||null!=s[r][1]&&c.push(s[r]);o.length&&Vu.utils.cfb_add(t,"/\x05SummaryInformation",iy(o,Zb,l,Lg)),(a.length||c.length)&&Vu.utils.cfb_add(t,"/\x05DocumentSummaryInformation",iy(a,Jb,i,Ig,c.length?c:null,Xb))}(e,a),8==n.biff&&e.vbaraw&&function(e,t){t.FullPaths.forEach((function(n,a){if(0!=a){var o=n.replace(/[^\/]*[\/]/,"/_VBA_PROJECT_CUR/");"/"!==o.slice(-1)&&Vu.utils.cfb_add(e,o,t.FileIndex[a].content)}}))}(a,Vu.read(e.vbaraw,{type:"string"==typeof e.vbaraw?"binary":"buffer"})),a}var ew={0:{f:function(e,t){var n={},a=e.l+t;n.r=e.read_shift(4),e.l+=4;var o=e.read_shift(2);e.l+=1;var s=e.read_shift(1);return e.l=a,7&s&&(n.level=7&s),16&s&&(n.hidden=!0),32&s&&(n.hpt=o/20),n}},1:{f:function(e){return[fg(e)]}},2:{f:function(e){return[fg(e),Cg(e),"n"]}},3:{f:function(e){return[fg(e),e.read_shift(1),"e"]}},4:{f:function(e){return[fg(e),e.read_shift(1),"b"]}},5:{f:function(e){return[fg(e),Dg(e),"n"]}},6:{f:function(e){return[fg(e),cg(e),"str"]}},7:{f:function(e){return[fg(e),e.read_shift(4),"s"]}},8:{f:function(e,t,n){var a=e.l+t,o=fg(e);o.r=n["!row"];var s=[o,cg(e),"str"];if(n.cellFormula){e.l+=2;var r=ab(e,a-e.l,n);s[3]=Qv(r,0,o,n.supbooks,n)}else e.l=a;return s}},9:{f:function(e,t,n){var a=e.l+t,o=fg(e);o.r=n["!row"];var s=[o,Dg(e),"n"];if(n.cellFormula){e.l+=2;var r=ab(e,a-e.l,n);s[3]=Qv(r,0,o,n.supbooks,n)}else e.l=a;return s}},10:{f:function(e,t,n){var a=e.l+t,o=fg(e);o.r=n["!row"];var s=[o,e.read_shift(1),"b"];if(n.cellFormula){e.l+=2;var r=ab(e,a-e.l,n);s[3]=Qv(r,0,o,n.supbooks,n)}else e.l=a;return s}},11:{f:function(e,t,n){var a=e.l+t,o=fg(e);o.r=n["!row"];var s=[o,e.read_shift(1),"e"];if(n.cellFormula){e.l+=2;var r=ab(e,a-e.l,n);s[3]=Qv(r,0,o,n.supbooks,n)}else e.l=a;return s}},12:{f:function(e){return[yg(e)]}},13:{f:function(e){return[yg(e),Cg(e),"n"]}},14:{f:function(e){return[yg(e),e.read_shift(1),"e"]}},15:{f:function(e){return[yg(e),e.read_shift(1),"b"]}},16:{f:_b},17:{f:function(e){return[yg(e),cg(e),"str"]}},18:{f:function(e){return[yg(e),e.read_shift(4),"s"]}},19:{f:pg},20:{},21:{},22:{},23:{},24:{},25:{},26:{},27:{},28:{},29:{},30:{},31:{},32:{},33:{},34:{},35:{T:1},36:{T:-1},37:{T:1},38:{T:-1},39:{f:function(e,t,n){var a=e.l+t;e.l+=4,e.l+=1;var o=e.read_shift(4),s=_g(e),r=ob(e,0,n),i=kg(e);e.l=a;var l={Name:s,Ptg:r};return o<268435455&&(l.Sheet=o),i&&(l.Comment=i),l}},40:{},42:{},43:{f:function(e,t,n){var a={};a.sz=e.read_shift(2)/20;var o=function(e){var t=e.read_shift(1);return e.l++,{fBold:1&t,fItalic:2&t,fUnderline:4&t,fStrikeout:8&t,fOutline:16&t,fShadow:32&t,fCondense:64&t,fExtend:128&t}}(e);switch(o.fItalic&&(a.italic=1),o.fCondense&&(a.condense=1),o.fExtend&&(a.extend=1),o.fShadow&&(a.shadow=1),o.fOutline&&(a.outline=1),o.fStrikeout&&(a.strike=1),700===e.read_shift(2)&&(a.bold=1),e.read_shift(2)){case 1:a.vertAlign="superscript";break;case 2:a.vertAlign="subscript"}var s=e.read_shift(1);0!=s&&(a.underline=s);var r=e.read_shift(1);r>0&&(a.family=r);var i=e.read_shift(1);switch(i>0&&(a.charset=i),e.l++,a.color=function(e){var t={},n=e.read_shift(1)>>>1,a=e.read_shift(1),o=e.read_shift(2,"i"),s=e.read_shift(1),r=e.read_shift(1),i=e.read_shift(1);switch(e.l++,n){case 0:t.auto=1;break;case 1:t.index=a;var l=Mg[a];l&&(t.rgb=Ky(l));break;case 2:t.rgb=Ky([s,r,i]);break;case 3:t.theme=a}return 0!=o&&(t.tint=o>0?o/32767:o/32768),t}(e),e.read_shift(1)){case 1:a.scheme="major";break;case 2:a.scheme="minor"}return a.name=cg(e),a}},44:{f:function(e,t){return[e.read_shift(2),cg(e)]}},45:{f:sv},46:{f:cv},47:{f:function(e,t){var n=e.l+t,a=e.read_shift(2),o=e.read_shift(2);return e.l=n,{ixfe:a,numFmtId:o}}},48:{},49:{f:function(e){return e.read_shift(4,"i")}},50:{},51:{f:function(e){for(var t=[],n=e.read_shift(4);n-- >0;)t.push([e.read_shift(4),e.read_shift(4)]);return t}},52:{T:1},53:{T:-1},54:{T:1},55:{T:-1},56:{T:1},57:{T:-1},58:{},59:{},60:{f:Oy},62:{f:function(e){return[fg(e),pg(e),"is"]}},63:{f:function(e){var t={};t.i=e.read_shift(4);var n={};n.r=e.read_shift(4),n.c=e.read_shift(4),t.r=Qf(n);var a=e.read_shift(1);return 2&a&&(t.l="1"),8&a&&(t.a="1"),t}},64:{f:function(){}},65:{},66:{},67:{},68:{},69:{},70:{},128:{},129:{T:1},130:{T:-1},131:{T:1,f:Bf,p:0},132:{T:-1},133:{T:1},134:{T:-1},135:{T:1},136:{T:-1},137:{T:1,f:function(e){var t=e.read_shift(2);return e.l+=28,{RTL:32&t}}},138:{T:-1},139:{T:1},140:{T:-1},141:{T:1},142:{T:-1},143:{T:1},144:{T:-1},145:{T:1},146:{T:-1},147:{f:function(e,t){var n={},a=e[e.l];return++e.l,n.above=!(64&a),n.left=!(128&a),e.l+=18,n.name=bg(e,t-19),n}},148:{f:kb,p:16},151:{f:function(){}},152:{},153:{f:function(e,t){var n={},a=e.read_shift(4);n.defaultThemeVersion=e.read_shift(4);var o=t>8?cg(e):"";return o.length>0&&(n.CodeName=o),n.autoCompressPictures=!!(65536&a),n.backupFile=!!(64&a),n.checkCompatibility=!!(4096&a),n.date1904=!!(1&a),n.filterPrivacy=!!(8&a),n.hidePivotFieldList=!!(1024&a),n.promptedSolutions=!!(16&a),n.publishItems=!!(2048&a),n.refreshAllConnections=!!(262144&a),n.saveExternalLinkValues=!!(128&a),n.showBorderUnselectedTables=!!(4&a),n.showInkAnnotation=!!(32&a),n.showObjects=["all","placeholders","none"][a>>13&3],n.showPivotChartFilter=!!(32768&a),n.updateLinks=["userSet","never","always"][a>>8&3],n}},154:{},155:{},156:{f:function(e,t){var n={};return n.Hidden=e.read_shift(4),n.iTabID=e.read_shift(4),n.strRelID=Tg(e,t-8),n.name=cg(e),n}},157:{},158:{},159:{T:1,f:function(e){return[e.read_shift(4),e.read_shift(4)]}},160:{T:-1},161:{T:1,f:Ag},162:{T:-1},163:{T:1},164:{T:-1},165:{T:1},166:{T:-1},167:{},168:{},169:{},170:{},171:{},172:{T:1},173:{T:-1},174:{},175:{},176:{f:Tb},177:{T:1},178:{T:-1},179:{T:1},180:{T:-1},181:{T:1},182:{T:-1},183:{T:1},184:{T:-1},185:{T:1},186:{T:-1},187:{T:1},188:{T:-1},189:{T:1},190:{T:-1},191:{T:1},192:{T:-1},193:{T:1},194:{T:-1},195:{T:1},196:{T:-1},197:{T:1},198:{T:-1},199:{T:1},200:{T:-1},201:{T:1},202:{T:-1},203:{T:1},204:{T:-1},205:{T:1},206:{T:-1},207:{T:1},208:{T:-1},209:{T:1},210:{T:-1},211:{T:1},212:{T:-1},213:{T:1},214:{T:-1},215:{T:1},216:{T:-1},217:{T:1},218:{T:-1},219:{T:1},220:{T:-1},221:{T:1},222:{T:-1},223:{T:1},224:{T:-1},225:{T:1},226:{T:-1},227:{T:1},228:{T:-1},229:{T:1},230:{T:-1},231:{T:1},232:{T:-1},233:{T:1},234:{T:-1},235:{T:1},236:{T:-1},237:{T:1},238:{T:-1},239:{T:1},240:{T:-1},241:{T:1},242:{T:-1},243:{T:1},244:{T:-1},245:{T:1},246:{T:-1},247:{T:1},248:{T:-1},249:{T:1},250:{T:-1},251:{T:1},252:{T:-1},253:{T:1},254:{T:-1},255:{T:1},256:{T:-1},257:{T:1},258:{T:-1},259:{T:1},260:{T:-1},261:{T:1},262:{T:-1},263:{T:1},264:{T:-1},265:{T:1},266:{T:-1},267:{T:1},268:{T:-1},269:{T:1},270:{T:-1},271:{T:1},272:{T:-1},273:{T:1},274:{T:-1},275:{T:1},276:{T:-1},277:{},278:{T:1},279:{T:-1},280:{T:1},281:{T:-1},282:{T:1},283:{T:1},284:{T:-1},285:{T:1},286:{T:-1},287:{T:1},288:{T:-1},289:{T:1},290:{T:-1},291:{T:1},292:{T:-1},293:{T:1},294:{T:-1},295:{T:1},296:{T:-1},297:{T:1},298:{T:-1},299:{T:1},300:{T:-1},301:{T:1},302:{T:-1},303:{T:1},304:{T:-1},305:{T:1},306:{T:-1},307:{T:1},308:{T:-1},309:{T:1},310:{T:-1},311:{T:1},312:{T:-1},313:{T:-1},314:{T:1},315:{T:-1},316:{T:1},317:{T:-1},318:{T:1},319:{T:-1},320:{T:1},321:{T:-1},322:{T:1},323:{T:-1},324:{T:1},325:{T:-1},326:{T:1},327:{T:-1},328:{T:1},329:{T:-1},330:{T:1},331:{T:-1},332:{T:1},333:{T:-1},334:{T:1},335:{f:function(e,t){return{flags:e.read_shift(4),version:e.read_shift(4),name:cg(e)}}},336:{T:-1},337:{f:function(e){return e.l+=4,0!=e.read_shift(4)},T:1},338:{T:-1},339:{T:1},340:{T:-1},341:{T:1},342:{T:-1},343:{T:1},344:{T:-1},345:{T:1},346:{T:-1},347:{T:1},348:{T:-1},349:{T:1},350:{T:-1},351:{},352:{},353:{T:1},354:{T:-1},355:{f:Tg},357:{},358:{},359:{},360:{T:1},361:{},362:{f:Ay},363:{},364:{},366:{},367:{},368:{},369:{},370:{},371:{},372:{T:1},373:{T:-1},374:{T:1},375:{T:-1},376:{T:1},377:{T:-1},378:{T:1},379:{T:-1},380:{T:1},381:{T:-1},382:{T:1},383:{T:-1},384:{T:1},385:{T:-1},386:{T:1},387:{T:-1},388:{T:1},389:{T:-1},390:{T:1},391:{T:-1},392:{T:1},393:{T:-1},394:{T:1},395:{T:-1},396:{},397:{},398:{},399:{},400:{},401:{T:1},403:{},404:{},405:{},406:{},407:{},408:{},409:{},410:{},411:{},412:{},413:{},414:{},415:{},416:{},417:{},418:{},419:{},420:{},421:{},422:{T:1},423:{T:1},424:{T:-1},425:{T:-1},426:{f:function(e,t,n){var a=e.l+t,o=jg(e),s=e.read_shift(1),r=[o];if(r[2]=s,n.cellFormula){var i=nb(e,a-e.l,n);r[1]=i}else e.l=a;return r}},427:{f:function(e,t,n){var a=e.l+t,o=[Ag(e,16)];if(n.cellFormula){var s=sb(e,a-e.l,n);o[1]=s,e.l=a}else e.l=a;return o}},428:{},429:{T:1},430:{T:-1},431:{T:1},432:{T:-1},433:{T:1},434:{T:-1},435:{T:1},436:{T:-1},437:{T:1},438:{T:-1},439:{T:1},440:{T:-1},441:{T:1},442:{T:-1},443:{T:1},444:{T:-1},445:{T:1},446:{T:-1},447:{T:1},448:{T:-1},449:{T:1},450:{T:-1},451:{T:1},452:{T:-1},453:{T:1},454:{T:-1},455:{T:1},456:{T:-1},457:{T:1},458:{T:-1},459:{T:1},460:{T:-1},461:{T:1},462:{T:-1},463:{T:1},464:{T:-1},465:{T:1},466:{T:-1},467:{T:1},468:{T:-1},469:{T:1},470:{T:-1},471:{},472:{},473:{T:1},474:{T:-1},475:{},476:{f:function(e){var t={};return Cb.forEach((function(n){t[n]=Dg(e)})),t}},477:{},478:{},479:{T:1},480:{T:-1},481:{T:1},482:{T:-1},483:{T:1},484:{T:-1},485:{f:function(){}},486:{T:1},487:{T:-1},488:{T:1},489:{T:-1},490:{T:1},491:{T:-1},492:{T:1},493:{T:-1},494:{f:function(e,t){var n=e.l+t,a=Ag(e,16),o=kg(e),s=cg(e),r=cg(e),i=cg(e);e.l=n;var l={rfx:a,relId:o,loc:s,display:i};return r&&(l.Tooltip=r),l}},495:{T:1},496:{T:-1},497:{T:1},498:{T:-1},499:{},500:{T:1},501:{T:-1},502:{T:1},503:{T:-1},504:{},505:{T:1},506:{T:-1},507:{},508:{T:1},509:{T:-1},510:{T:1},511:{T:-1},512:{},513:{},514:{T:1},515:{T:-1},516:{T:1},517:{T:-1},518:{T:1},519:{T:-1},520:{T:1},521:{T:-1},522:{},523:{},524:{},525:{},526:{},527:{},528:{T:1},529:{T:-1},530:{T:1},531:{T:-1},532:{T:1},533:{T:-1},534:{},535:{},536:{},537:{},538:{T:1},539:{T:-1},540:{T:1},541:{T:-1},542:{T:1},548:{},549:{},550:{f:Tg},551:{},552:{},553:{},554:{T:1},555:{T:-1},556:{T:1},557:{T:-1},558:{T:1},559:{T:-1},560:{T:1},561:{T:-1},562:{},564:{},565:{T:1},566:{T:-1},569:{T:1},570:{T:-1},572:{},573:{T:1},574:{T:-1},577:{},578:{},579:{},580:{},581:{},582:{},583:{},584:{},585:{},586:{},587:{},588:{T:-1},589:{},590:{T:1},591:{T:-1},592:{T:1},593:{T:-1},594:{T:1},595:{T:-1},596:{},597:{T:1},598:{T:-1},599:{T:1},600:{T:-1},601:{T:1},602:{T:-1},603:{T:1},604:{T:-1},605:{T:1},606:{T:-1},607:{},608:{T:1},609:{T:-1},610:{},611:{T:1},612:{T:-1},613:{T:1},614:{T:-1},615:{T:1},616:{T:-1},617:{T:1},618:{T:-1},619:{T:1},620:{T:-1},625:{},626:{T:1},627:{T:-1},628:{T:1},629:{T:-1},630:{T:1},631:{T:-1},632:{f:kv},633:{T:1},634:{T:-1},635:{T:1,f:function(e){var t={};t.iauthor=e.read_shift(4);var n=Ag(e,16);return t.rfx=n.s,t.ref=Qf(n.s),e.l+=16,t}},636:{T:-1},637:{f:ug},638:{T:1},639:{},640:{T:-1},641:{T:1},642:{T:-1},643:{T:1},644:{},645:{T:-1},646:{T:1},648:{T:1},649:{},650:{T:-1},651:{f:function(e,t){return e.l+=10,{name:cg(e)}}},652:{},653:{T:1},654:{T:-1},655:{T:1},656:{T:-1},657:{T:1},658:{T:-1},659:{},660:{T:1},661:{},662:{T:-1},663:{},664:{T:1},665:{},666:{T:-1},667:{},668:{},669:{},671:{T:1},672:{T:-1},673:{T:1},674:{T:-1},675:{},676:{},677:{},678:{},679:{},680:{},681:{},1024:{},1025:{},1026:{T:1},1027:{T:-1},1028:{T:1},1029:{T:-1},1030:{},1031:{T:1},1032:{T:-1},1033:{T:1},1034:{T:-1},1035:{},1036:{},1037:{},1038:{T:1},1039:{T:-1},1040:{},1041:{T:1},1042:{T:-1},1043:{},1044:{},1045:{},1046:{T:1},1047:{T:-1},1048:{T:1},1049:{T:-1},1050:{},1051:{T:1},1052:{T:1},1053:{f:function(){}},1054:{T:1},1055:{},1056:{T:1},1057:{T:-1},1058:{T:1},1059:{T:-1},1061:{},1062:{T:1},1063:{T:-1},1064:{T:1},1065:{T:-1},1066:{T:1},1067:{T:-1},1068:{T:1},1069:{T:-1},1070:{T:1},1071:{T:-1},1072:{T:1},1073:{T:-1},1075:{T:1},1076:{T:-1},1077:{T:1},1078:{T:-1},1079:{T:1},1080:{T:-1},1081:{T:1},1082:{T:-1},1083:{T:1},1084:{T:-1},1085:{},1086:{T:1},1087:{T:-1},1088:{T:1},1089:{T:-1},1090:{T:1},1091:{T:-1},1092:{T:1},1093:{T:-1},1094:{T:1},1095:{T:-1},1096:{},1097:{T:1},1098:{},1099:{T:-1},1100:{T:1},1101:{T:-1},1102:{},1103:{},1104:{},1105:{},1111:{},1112:{},1113:{T:1},1114:{T:-1},1115:{T:1},1116:{T:-1},1117:{},1118:{T:1},1119:{T:-1},1120:{T:1},1121:{T:-1},1122:{T:1},1123:{T:-1},1124:{T:1},1125:{T:-1},1126:{},1128:{T:1},1129:{T:-1},1130:{},1131:{T:1},1132:{T:-1},1133:{T:1},1134:{T:-1},1135:{T:1},1136:{T:-1},1137:{T:1},1138:{T:-1},1139:{T:1},1140:{T:-1},1141:{},1142:{T:1},1143:{T:-1},1144:{T:1},1145:{T:-1},1146:{},1147:{T:1},1148:{T:-1},1149:{T:1},1150:{T:-1},1152:{T:1},1153:{T:-1},1154:{T:-1},1155:{T:-1},1156:{T:-1},1157:{T:1},1158:{T:-1},1159:{T:1},1160:{T:-1},1161:{T:1},1162:{T:-1},1163:{T:1},1164:{T:-1},1165:{T:1},1166:{T:-1},1167:{T:1},1168:{T:-1},1169:{T:1},1170:{T:-1},1171:{},1172:{T:1},1173:{T:-1},1177:{},1178:{T:1},1180:{},1181:{},1182:{},2048:{T:1},2049:{T:-1},2050:{},2051:{T:1},2052:{T:-1},2053:{},2054:{},2055:{T:1},2056:{T:-1},2057:{T:1},2058:{T:-1},2060:{},2067:{},2068:{T:1},2069:{T:-1},2070:{},2071:{},2072:{T:1},2073:{T:-1},2075:{},2076:{},2077:{T:1},2078:{T:-1},2079:{},2080:{T:1},2081:{T:-1},2082:{},2083:{T:1},2084:{T:-1},2085:{T:1},2086:{T:-1},2087:{T:1},2088:{T:-1},2089:{T:1},2090:{T:-1},2091:{},2092:{},2093:{T:1},2094:{T:-1},2095:{},2096:{T:1},2097:{T:-1},2098:{T:1},2099:{T:-1},2100:{T:1},2101:{T:-1},2102:{},2103:{T:1},2104:{T:-1},2105:{},2106:{T:1},2107:{T:-1},2108:{},2109:{T:1},2110:{T:-1},2111:{T:1},2112:{T:-1},2113:{T:1},2114:{T:-1},2115:{},2116:{},2117:{},2118:{T:1},2119:{T:-1},2120:{},2121:{T:1},2122:{T:-1},2123:{T:1},2124:{T:-1},2125:{},2126:{T:1},2127:{T:-1},2128:{},2129:{T:1},2130:{T:-1},2131:{T:1},2132:{T:-1},2133:{T:1},2134:{},2135:{},2136:{},2137:{T:1},2138:{T:-1},2139:{T:1},2140:{T:-1},2141:{},3072:{},3073:{},4096:{T:1},4097:{T:-1},5002:{T:1},5003:{T:-1},5081:{T:1},5082:{T:-1},5083:{},5084:{T:1},5085:{T:-1},5086:{T:1},5087:{T:-1},5088:{},5089:{},5090:{},5092:{T:1},5093:{T:-1},5094:{},5095:{T:1},5096:{T:-1},5097:{},5099:{},65535:{n:""}};function tw(e,t,n,a){var o=t;if(!isNaN(o)){var s=a||(n||[]).length||0,r=e.next(4);r.write_shift(2,o),r.write_shift(2,s),s>0&&Ef(n)&&e.push(n)}}function nw(e,t,n){return e||(e=zf(7)),e.write_shift(2,t),e.write_shift(2,n),e.write_shift(2,0),e.write_shift(1,0),e}function aw(e,t,n,a){if(null!=t.v)switch(t.t){case"d":case"n":var o="d"==t.t?eh(lh(t.v)):t.v;return void(o==(0|o)&&o>=0&&o<65536?tw(e,2,function(e,t,n){var a=zf(9);return nw(a,e,t),a.write_shift(2,n),a}(n,a,o)):tw(e,3,function(e,t,n){var a=zf(15);return nw(a,e,t),a.write_shift(8,n,"f"),a}(n,a,o)));case"b":case"e":return void tw(e,5,function(e,t,n,a){var o=zf(9);return nw(o,e,t),py(n,a||"b",o),o}(n,a,t.v,t.t));case"s":case"str":return void tw(e,4,function(e,t,n){var a=zf(8+2*n.length);return nw(a,e,t),a.write_shift(1,n.length),a.write_shift(n.length,n,"sbcs"),a.l<a.length?a.slice(0,a.l):a}(n,a,(t.v||"").slice(0,255)))}tw(e,1,nw(null,n,a))}function ow(e,t){var n=t||{};for(var a=Uf(),o=0,s=0;s<e.SheetNames.length;++s)e.SheetNames[s]==n.sheet&&(o=s);if(0==o&&n.sheet&&e.SheetNames[0]!=n.sheet)throw new Error("Sheet not found: "+n.sheet);return tw(a,4==n.biff?1033:3==n.biff?521:9,Sy(0,16,n)),function(e,t,n,a){var o,s=Array.isArray(t),r=ng(t["!ref"]||"A1"),i="",l=[];if(r.e.c>255||r.e.r>16383){if(a.WTF)throw new Error("Range "+(t["!ref"]||"A1")+" exceeds format limit A1:IV16384");r.e.c=Math.min(r.e.c,255),r.e.r=Math.min(r.e.c,16383),o=tg(r)}for(var c=r.s.r;c<=r.e.r;++c){i=Yf(c);for(var m=r.s.c;m<=r.e.c;++m){c===r.s.r&&(l[m]=Jf(m)),o=l[m]+i;var d=s?(t[c]||[])[m]:t[o];d&&aw(e,d,c,m)}}}(a,e.Sheets[e.SheetNames[o]],0,n),tw(a,10),a.end()}function sw(e,t,n){tw(e,49,function(e,t){var n=e.name||"Arial",a=t&&5==t.biff,o=zf(a?15+n.length:16+2*n.length);return o.write_shift(2,20*(e.sz||12)),o.write_shift(4,0),o.write_shift(2,400),o.write_shift(4,0),o.write_shift(2,0),o.write_shift(1,n.length),a||o.write_shift(1,1),o.write_shift((a?1:2)*n.length,n,a?"sbcs":"utf16le"),o}({sz:12,color:{theme:1},name:"Arial",family:2,scheme:"minor"},n))}function rw(e,t){if(t){var n=0;t.forEach((function(t,a){++n<=256&&t&&tw(e,125,function(e,t){var n=zf(12);n.write_shift(2,t),n.write_shift(2,t),n.write_shift(2,256*e.width),n.write_shift(2,0);var a=0;return e.hidden&&(a|=1),n.write_shift(1,a),a=e.level||0,n.write_shift(1,a),n.write_shift(2,0),n}(pb(a,t),a))}))}}function iw(e,t,n,a,o){var s=16+hb(o.cellXfs,t,o);if(null!=t.v||t.bf)if(t.bf)tw(e,6,eb(t,n,a,0,s));else switch(t.t){case"d":case"n":tw(e,515,function(e,t,n,a){var o=zf(14);return ky(e,t,a,o),Og(n,o),o}(n,a,"d"==t.t?eh(lh(t.v)):t.v,s));break;case"b":case"e":tw(e,517,function(e,t,n,a,o,s){var r=zf(8);return ky(e,t,a,r),py(n,s,r),r}(n,a,t.v,s,0,t.t));break;case"s":case"str":if(o.bookSST)tw(e,253,function(e,t,n,a){var o=zf(10);return ky(e,t,a,o),o.write_shift(4,n),o}(n,a,db(o.Strings,t.v,o.revStrings),s));else tw(e,516,function(e,t,n,a,o){var s=!o||8==o.biff,r=zf(+s+8+(1+s)*n.length);return ky(e,t,a,r),r.write_shift(2,n.length),s&&r.write_shift(1,1),r.write_shift((1+s)*n.length,n,s?"utf16le":"sbcs"),r}(n,a,(t.v||"").slice(0,255),s,o));break;default:tw(e,513,ky(n,a,s))}else tw(e,513,ky(n,a,s))}function lw(e,t,n){var a,o=Uf(),s=n.SheetNames[e],r=n.Sheets[s]||{},i=(n||{}).Workbook||{},l=(i.Sheets||[])[e]||{},c=Array.isArray(r),m=8==t.biff,d="",p=[],u=ng(r["!ref"]||"A1"),h=m?65536:16384;if(u.e.c>255||u.e.r>=h){if(t.WTF)throw new Error("Range "+(r["!ref"]||"A1")+" exceeds format limit A1:IV16384");u.e.c=Math.min(u.e.c,255),u.e.r=Math.min(u.e.c,h-1)}tw(o,2057,Sy(0,16,t)),tw(o,13,dy(1)),tw(o,12,dy(100)),tw(o,15,cy(!0)),tw(o,17,cy(!1)),tw(o,16,Og(.001)),tw(o,95,cy(!0)),tw(o,42,cy(!1)),tw(o,43,cy(!1)),tw(o,130,dy(1)),tw(o,128,function(e){var t=zf(8);return t.write_shift(4,0),t.write_shift(2,e[0]?e[0]+1:0),t.write_shift(2,e[1]?e[1]+1:0),t}([0,0])),tw(o,131,cy(!1)),tw(o,132,cy(!1)),m&&rw(o,r["!cols"]),tw(o,512,function(e,t){var n=8!=t.biff&&t.biff?2:4,a=zf(2*n+6);return a.write_shift(n,e.s.r),a.write_shift(n,e.e.r+1),a.write_shift(2,e.s.c),a.write_shift(2,e.e.c+1),a.write_shift(2,0),a}(u,t)),m&&(r["!links"]=[]);for(var f=u.s.r;f<=u.e.r;++f){d=Yf(f);for(var g=u.s.c;g<=u.e.c;++g){f===u.s.r&&(p[g]=Jf(g)),a=p[g]+d;var y=c?(r[f]||[])[g]:r[a];y&&(iw(o,y,f,g,t),m&&y.l&&r["!links"].push([a,y.l]))}}var v=l.CodeName||l.name||s;return m&&tw(o,574,function(e){var t=zf(18),n=1718;return e&&e.RTL&&(n|=64),t.write_shift(2,n),t.write_shift(4,0),t.write_shift(4,64),t.write_shift(4,0),t.write_shift(4,0),t}((i.Views||[])[0])),m&&(r["!merges"]||[]).length&&tw(o,229,function(e){var t=zf(2+8*e.length);t.write_shift(2,e.length);for(var n=0;n<e.length;++n)Ty(e[n],t);return t}(r["!merges"])),m&&function(e,t){for(var n=0;n<t["!links"].length;++n){var a=t["!links"][n];tw(e,440,Ny(a)),a[1].Tooltip&&tw(e,2048,Dy(a))}delete t["!links"]}(o,r),tw(o,442,vy(v)),m&&function(e,t){var n=zf(19);n.write_shift(4,2151),n.write_shift(4,0),n.write_shift(4,0),n.write_shift(2,3),n.write_shift(1,1),n.write_shift(4,0),tw(e,2151,n),(n=zf(39)).write_shift(4,2152),n.write_shift(4,0),n.write_shift(4,0),n.write_shift(2,3),n.write_shift(1,0),n.write_shift(4,0),n.write_shift(2,1),n.write_shift(4,4),n.write_shift(2,0),Ty(ng(t["!ref"]||"A1"),n),n.write_shift(4,4),tw(e,2152,n)}(o,r),tw(o,10),o.end()}function cw(e,t,n){var a=Uf(),o=(e||{}).Workbook||{},s=o.Sheets||[],r=o.WBProps||{},i=8==n.biff,l=5==n.biff;(tw(a,2057,Sy(0,5,n)),"xla"==n.bookType&&tw(a,135),tw(a,225,i?dy(1200):null),tw(a,193,function(e,t){t||(t=zf(e));for(var n=0;n<e;++n)t.write_shift(1,0);return t}(2)),l&&tw(a,191),l&&tw(a,192),tw(a,226),tw(a,92,function(e,t){var n=!t||8==t.biff,a=zf(n?112:54);for(a.write_shift(8==t.biff?2:1,7),n&&a.write_shift(1,0),a.write_shift(4,859007059),a.write_shift(4,5458548|(n?0:536870912));a.l<a.length;)a.write_shift(1,n?0:32);return a}(0,n)),tw(a,66,dy(i?1200:1252)),i&&tw(a,353,dy(0)),i&&tw(a,448),tw(a,317,function(e){for(var t=zf(2*e),n=0;n<e;++n)t.write_shift(2,n+1);return t}(e.SheetNames.length)),i&&e.vbaraw&&tw(a,211),i&&e.vbaraw)&&tw(a,442,vy(r.CodeName||"ThisWorkbook"));tw(a,156,dy(17)),tw(a,25,cy(!1)),tw(a,18,cy(!1)),tw(a,19,dy(0)),i&&tw(a,431,cy(!1)),i&&tw(a,444,dy(0)),tw(a,61,function(){var e=zf(18);return e.write_shift(2,0),e.write_shift(2,0),e.write_shift(2,29280),e.write_shift(2,17600),e.write_shift(2,56),e.write_shift(2,0),e.write_shift(2,0),e.write_shift(2,1),e.write_shift(2,500),e}()),tw(a,64,cy(!1)),tw(a,141,dy(0)),tw(a,34,cy("true"==function(e){return e.Workbook&&e.Workbook.WBProps&&Ch(e.Workbook.WBProps.date1904)?"true":"false"}(e))),tw(a,14,cy(!0)),i&&tw(a,439,cy(!1)),tw(a,218,dy(0)),sw(a,0,n),function(e,t,n){t&&[[5,8],[23,26],[41,44],[50,392]].forEach((function(a){for(var o=a[0];o<=a[1];++o)null!=t[o]&&tw(e,1054,Ey(o,t[o],n))}))}(a,e.SSF,n),function(e,t){for(var n=0;n<16;++n)tw(e,224,jy({numFmtId:0,style:!0},0,t));t.cellXfs.forEach((function(n){tw(e,224,jy(n,0,t))}))}(a,n),i&&tw(a,352,cy(!1));var c,m=a.end(),d=Uf();i&&tw(d,140,(c||(c=zf(4)),c.write_shift(2,1),c.write_shift(2,1),c)),i&&n.Strings&&function(e,t,n,a){var o=a||(n||[]).length||0;if(o<=8224)return tw(e,t,n,o);var s=t;if(!isNaN(s)){for(var r=n.parts||[],i=0,l=0,c=0;c+(r[i]||8224)<=8224;)c+=r[i]||8224,i++;var m=e.next(4);for(m.write_shift(2,s),m.write_shift(2,c),e.push(n.slice(l,l+c)),l+=c;l<o;){for((m=e.next(4)).write_shift(2,60),c=0;c+(r[i]||8224)<=8224;)c+=r[i]||8224,i++;m.write_shift(2,c),e.push(n.slice(l,l+c)),l+=c}}}(d,252,function(e,t){var n=zf(8);n.write_shift(4,e.Count),n.write_shift(4,e.Unique);for(var a=[],o=0;o<e.length;++o)a[o]=hy(e[o]);var s=Yp([n].concat(a));return s.parts=[n.length].concat(a.map((function(e){return e.length}))),s}(n.Strings)),tw(d,10);var p=d.end(),u=Uf(),h=0,f=0;for(f=0;f<e.SheetNames.length;++f)h+=(i?12:11)+(i?2:1)*e.SheetNames[f].length;var g=m.length+h+p.length;for(f=0;f<e.SheetNames.length;++f){tw(u,133,Cy({pos:g,hs:(s[f]||{}).Hidden||0,dt:0,name:e.SheetNames[f]},n)),g+=t[f].length}var y=u.end();if(h!=y.length)throw new Error("BS8 "+h+" != "+y.length);var v=[];return m.length&&v.push(m),y.length&&v.push(y),p.length&&v.push(p),Yp(v)}function mw(e,t){for(var n=0;n<=e.SheetNames.length;++n){var a=e.Sheets[e.SheetNames[n]];if(a&&a["!ref"])eg(a["!ref"]).e.c>255&&"undefined"!=typeof console&&console.error&&console.error("Worksheet '"+e.SheetNames[n]+"' extends beyond column IV (255). Data may be lost.")}var o=t||{};switch(o.biff||2){case 8:case 5:return function(e,t){var n=t||{},a=[];e&&!e.SSF&&(e.SSF=mh(iu)),e&&e.SSF&&(Uu(),zu(e.SSF),n.revssf=Xu(e.SSF),n.revssf[e.SSF[65535]]=0,n.ssf=e.SSF),n.Strings=[],n.Strings.Count=0,n.Strings.Unique=0,Bw(n),n.cellXfs=[],hb(n.cellXfs,{},{revssf:{General:0}}),e.Props||(e.Props={});for(var o=0;o<e.SheetNames.length;++o)a[a.length]=lw(o,n,e);return a.unshift(cw(e,a,n)),Yp(a)}(e,t);case 4:case 3:case 2:return ow(e,t)}throw new Error("invalid type "+o.bookType+" for BIFF")}function dw(e,t,n,a){for(var o=e["!merges"]||[],s=[],r=t.s.c;r<=t.e.c;++r){for(var i=0,l=0,c=0;c<o.length;++c)if(!(o[c].s.r>n||o[c].s.c>r)&&!(o[c].e.r<n||o[c].e.c<r)){if(o[c].s.r<n||o[c].s.c<r){i=-1;break}i=o[c].e.r-o[c].s.r+1,l=o[c].e.c-o[c].s.c+1;break}if(!(i<0)){var m=Qf({r:n,c:r}),d=a.dense?(e[n]||[])[r]:e[m],p=d&&null!=d.v&&(d.h||Sh(d.w||(og(d),d.w)||""))||"",u={};i>1&&(u.rowspan=i),l>1&&(u.colspan=l),a.editable?p='<span contenteditable="true">'+p+"</span>":d&&(u["data-t"]=d&&d.t||"z",null!=d.v&&(u["data-v"]=d.v),null!=d.z&&(u["data-z"]=d.z),d.l&&"#"!=(d.l.Target||"#").charAt(0)&&(p='<a href="'+d.l.Target+'">'+p+"</a>")),u.id=(a.id||"sjs")+"-"+m,s.push(Fh("td",p,u))}}return"<tr>"+s.join("")+"</tr>"}var pw='<html><head><meta charset="utf-8"/><title>SheetJS Table Export</title></head><body>',uw="</body></html>";function hw(e,t,n){return[].join("")+"<table"+(n&&n.id?' id="'+n.id+'"':"")+">"}function fw(e,t){var n=t||{},a=null!=n.header?n.header:pw,o=null!=n.footer?n.footer:uw,s=[a],r=eg(e["!ref"]);n.dense=Array.isArray(e),s.push(hw(0,0,n));for(var i=r.s.r;i<=r.e.r;++i)s.push(dw(e,r,i,n));return s.push("</table>"+o),s.join("")}function gw(e,t,n){var a=n||{};var o=0,s=0;if(null!=a.origin)if("number"==typeof a.origin)o=a.origin;else{var r="string"==typeof a.origin?Xf(a.origin):a.origin;o=r.r,s=r.c}var i=t.getElementsByTagName("tr"),l=Math.min(a.sheetRows||1e7,i.length),c={s:{r:0,c:0},e:{r:o,c:s}};if(e["!ref"]){var m=eg(e["!ref"]);c.s.r=Math.min(c.s.r,m.s.r),c.s.c=Math.min(c.s.c,m.s.c),c.e.r=Math.max(c.e.r,m.e.r),c.e.c=Math.max(c.e.c,m.e.c),-1==o&&(c.e.r=o=m.e.r+1)}var d=[],p=0,u=e["!rows"]||(e["!rows"]=[]),h=0,f=0,g=0,y=0,v=0,b=0;for(e["!cols"]||(e["!cols"]=[]);h<i.length&&f<l;++h){var w=i[h];if(vw(w)){if(a.display)continue;u[f]={hidden:!0}}var k=w.children;for(g=y=0;g<k.length;++g){var x=k[g];if(!a.display||!vw(x)){var _=x.hasAttribute("data-v")?x.getAttribute("data-v"):x.hasAttribute("v")?x.getAttribute("v"):Rh(x.innerHTML),T=x.getAttribute("data-z")||x.getAttribute("z");for(p=0;p<d.length;++p){var S=d[p];S.s.c==y+s&&S.s.r<f+o&&f+o<=S.e.r&&(y=S.e.c+1-s,p=-1)}b=+x.getAttribute("colspan")||1,((v=+x.getAttribute("rowspan")||1)>1||b>1)&&d.push({s:{r:f+o,c:y+s},e:{r:f+o+(v||1)-1,c:y+s+(b||1)-1}});var C={t:"s",v:_},E=x.getAttribute("data-t")||x.getAttribute("t")||"";null!=_&&(0==_.length?C.t=E||"z":a.raw||0==_.trim().length||"s"==E||("TRUE"===_?C={t:"b",v:!0}:"FALSE"===_?C={t:"b",v:!1}:isNaN(ph(_))?isNaN(hh(_).getDate())||(C={t:"d",v:lh(_)},a.cellDates||(C={t:"n",v:eh(C.v)}),C.z=a.dateNF||iu[14]):C={t:"n",v:ph(_)})),void 0===C.z&&null!=T&&(C.z=T);var j="",A=x.getElementsByTagName("A");if(A&&A.length)for(var N=0;N<A.length&&(!A[N].hasAttribute("href")||"#"==(j=A[N].getAttribute("href")).charAt(0));++N);j&&"#"!=j.charAt(0)&&(C.l={Target:j}),a.dense?(e[f+o]||(e[f+o]=[]),e[f+o][y+s]=C):e[Qf({c:y+s,r:f+o})]=C,c.e.c<y+s&&(c.e.c=y+s),y+=b}}++f}return d.length&&(e["!merges"]=(e["!merges"]||[]).concat(d)),c.e.r=Math.max(c.e.r,f-1+o),e["!ref"]=tg(c),f>=l&&(e["!fullref"]=tg((c.e.r=i.length-h+f-1+o,c))),e}function yw(e,t){return gw((t||{}).dense?[]:{},e,t)}function vw(e){var t="",n=function(e){return e.ownerDocument.defaultView&&"function"===typeof e.ownerDocument.defaultView.getComputedStyle?e.ownerDocument.defaultView.getComputedStyle:"function"===typeof getComputedStyle?getComputedStyle:null}(e);return n&&(t=n(e).getPropertyValue("display")),t||(t=e.style&&e.style.display),"none"===t}var bw=function(){var e=["<office:master-styles>",'<style:master-page style:name="mp1" style:page-layout-name="mp1">',"<style:header/>",'<style:header-left style:display="false"/>',"<style:footer/>",'<style:footer-left style:display="false"/>',"</style:master-page>","</office:master-styles>"].join(""),t="<office:document-styles "+Lh({"xmlns:office":"urn:oasis:names:tc:opendocument:xmlns:office:1.0","xmlns:table":"urn:oasis:names:tc:opendocument:xmlns:table:1.0","xmlns:style":"urn:oasis:names:tc:opendocument:xmlns:style:1.0","xmlns:text":"urn:oasis:names:tc:opendocument:xmlns:text:1.0","xmlns:draw":"urn:oasis:names:tc:opendocument:xmlns:drawing:1.0","xmlns:fo":"urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0","xmlns:xlink":"http://www.w3.org/1999/xlink","xmlns:dc":"http://purl.org/dc/elements/1.1/","xmlns:number":"urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0","xmlns:svg":"urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0","xmlns:of":"urn:oasis:names:tc:opendocument:xmlns:of:1.2","office:version":"1.2"})+">"+e+"</office:document-styles>";return function(){return yh+t}}(),ww=function(){var e=" <table:table-cell />\n",t=function(t,n,a){var o=[];o.push(' <table:table table:name="'+xh(n.SheetNames[a])+'" table:style-name="ta1">\n');var s=0,r=0,i=eg(t["!ref"]||"A1"),l=t["!merges"]||[],c=0,m=Array.isArray(t);if(t["!cols"])for(r=0;r<=i.e.c;++r)o.push(" <table:table-column"+(t["!cols"][r]?' table:style-name="co'+t["!cols"][r].ods+'"':"")+"></table:table-column>\n");var d="",p=t["!rows"]||[];for(s=0;s<i.s.r;++s)d=p[s]?' table:style-name="ro'+p[s].ods+'"':"",o.push(" <table:table-row"+d+"></table:table-row>\n");for(;s<=i.e.r;++s){for(d=p[s]?' table:style-name="ro'+p[s].ods+'"':"",o.push(" <table:table-row"+d+">\n"),r=0;r<i.s.c;++r)o.push(e);for(;r<=i.e.c;++r){var u=!1,h={},f="";for(c=0;c!=l.length;++c)if(!(l[c].s.c>r)&&!(l[c].s.r>s)&&!(l[c].e.c<r)&&!(l[c].e.r<s)){l[c].s.c==r&&l[c].s.r==s||(u=!0),h["table:number-columns-spanned"]=l[c].e.c-l[c].s.c+1,h["table:number-rows-spanned"]=l[c].e.r-l[c].s.r+1;break}if(u)o.push(" <table:covered-table-cell/>\n");else{var g=Qf({r:s,c:r}),y=m?(t[s]||[])[r]:t[g];if(y&&y.f&&(h["table:formula"]=xh(("of:="+y.f.replace(Sv,"$1[.$2$3$4$5]").replace(/\]:\[/g,":")).replace(/;/g,"|").replace(/,/g,";")),y.F&&y.F.slice(0,g.length)==g)){var v=eg(y.F);h["table:number-matrix-columns-spanned"]=v.e.c-v.s.c+1,h["table:number-matrix-rows-spanned"]=v.e.r-v.s.r+1}if(y){switch(y.t){case"b":f=y.v?"TRUE":"FALSE",h["office:value-type"]="boolean",h["office:boolean-value"]=y.v?"true":"false";break;case"n":f=y.w||String(y.v||0),h["office:value-type"]="float",h["office:value"]=y.v||0;break;case"s":case"str":f=null==y.v?"":y.v,h["office:value-type"]="string";break;case"d":f=y.w||lh(y.v).toISOString(),h["office:value-type"]="date",h["office:date-value"]=lh(y.v).toISOString(),h["table:style-name"]="ce1";break;default:o.push(e);continue}var b=xh(f).replace(/ +/g,(function(e){return'<text:s text:c="'+e.length+'"/>'})).replace(/\t/g,"<text:tab/>").replace(/\n/g,"</text:p><text:p>").replace(/^ /,"<text:s/>").replace(/ $/,"<text:s/>");if(y.l&&y.l.Target){var w=y.l.Target;"#"==(w="#"==w.charAt(0)?"#"+cb(w.slice(1)):w).charAt(0)||w.match(/^\w+:/)||(w="../"+w),b=Fh("text:a",b,{"xlink:href":w.replace(/&/g,"&")})}o.push(" "+Fh("table:table-cell",Fh("text:p",b,{}),h)+"\n")}else o.push(e)}}o.push(" </table:table-row>\n")}return o.push(" </table:table>\n"),o.join("")};return function(e,n){var a=[yh],o=Lh({"xmlns:office":"urn:oasis:names:tc:opendocument:xmlns:office:1.0","xmlns:table":"urn:oasis:names:tc:opendocument:xmlns:table:1.0","xmlns:style":"urn:oasis:names:tc:opendocument:xmlns:style:1.0","xmlns:text":"urn:oasis:names:tc:opendocument:xmlns:text:1.0","xmlns:draw":"urn:oasis:names:tc:opendocument:xmlns:drawing:1.0","xmlns:fo":"urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0","xmlns:xlink":"http://www.w3.org/1999/xlink","xmlns:dc":"http://purl.org/dc/elements/1.1/","xmlns:meta":"urn:oasis:names:tc:opendocument:xmlns:meta:1.0","xmlns:number":"urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0","xmlns:presentation":"urn:oasis:names:tc:opendocument:xmlns:presentation:1.0","xmlns:svg":"urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0","xmlns:chart":"urn:oasis:names:tc:opendocument:xmlns:chart:1.0","xmlns:dr3d":"urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0","xmlns:math":"http://www.w3.org/1998/Math/MathML","xmlns:form":"urn:oasis:names:tc:opendocument:xmlns:form:1.0","xmlns:script":"urn:oasis:names:tc:opendocument:xmlns:script:1.0","xmlns:ooo":"http://openoffice.org/2004/office","xmlns:ooow":"http://openoffice.org/2004/writer","xmlns:oooc":"http://openoffice.org/2004/calc","xmlns:dom":"http://www.w3.org/2001/xml-events","xmlns:xforms":"http://www.w3.org/2002/xforms","xmlns:xsd":"http://www.w3.org/2001/XMLSchema","xmlns:xsi":"http://www.w3.org/2001/XMLSchema-instance","xmlns:sheet":"urn:oasis:names:tc:opendocument:sh33tjs:1.0","xmlns:rpt":"http://openoffice.org/2005/report","xmlns:of":"urn:oasis:names:tc:opendocument:xmlns:of:1.2","xmlns:xhtml":"http://www.w3.org/1999/xhtml","xmlns:grddl":"http://www.w3.org/2003/g/data-view#","xmlns:tableooo":"http://openoffice.org/2009/table","xmlns:drawooo":"http://openoffice.org/2010/draw","xmlns:calcext":"urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0","xmlns:loext":"urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0","xmlns:field":"urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0","xmlns:formx":"urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0","xmlns:css3t":"http://www.w3.org/TR/css3-text/","office:version":"1.2"}),s=Lh({"xmlns:config":"urn:oasis:names:tc:opendocument:xmlns:config:1.0","office:mimetype":"application/vnd.oasis.opendocument.spreadsheet"});"fods"==n.bookType?(a.push("<office:document"+o+s+">\n"),a.push(qg().replace(/office:document-meta/g,"office:meta"))):a.push("<office:document-content"+o+">\n"),function(e,t){e.push(" <office:automatic-styles>\n"),e.push(' <number:date-style style:name="N37" number:automatic-order="true">\n'),e.push(' <number:month number:style="long"/>\n'),e.push(" <number:text>/</number:text>\n"),e.push(' <number:day number:style="long"/>\n'),e.push(" <number:text>/</number:text>\n"),e.push(" <number:year/>\n"),e.push(" </number:date-style>\n");var n=0;t.SheetNames.map((function(e){return t.Sheets[e]})).forEach((function(t){if(t&&t["!cols"])for(var a=0;a<t["!cols"].length;++a)if(t["!cols"][a]){var o=t["!cols"][a];if(null==o.width&&null==o.wpx&&null==o.wch)continue;Jy(o),o.ods=n;var s=t["!cols"][a].wpx+"px";e.push(' <style:style style:name="co'+n+'" style:family="table-column">\n'),e.push(' <style:table-column-properties fo:break-before="auto" style:column-width="'+s+'"/>\n'),e.push(" </style:style>\n"),++n}}));var a=0;t.SheetNames.map((function(e){return t.Sheets[e]})).forEach((function(t){if(t&&t["!rows"])for(var n=0;n<t["!rows"].length;++n)if(t["!rows"][n]){t["!rows"][n].ods=a;var o=t["!rows"][n].hpx+"px";e.push(' <style:style style:name="ro'+a+'" style:family="table-row">\n'),e.push(' <style:table-row-properties fo:break-before="auto" style:row-height="'+o+'"/>\n'),e.push(" </style:style>\n"),++a}})),e.push(' <style:style style:name="ta1" style:family="table" style:master-page-name="mp1">\n'),e.push(' <style:table-properties table:display="true" style:writing-mode="lr-tb"/>\n'),e.push(" </style:style>\n"),e.push(' <style:style style:name="ce1" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N37"/>\n'),e.push(" </office:automatic-styles>\n")}(a,e),a.push(" <office:body>\n"),a.push(" <office:spreadsheet>\n");for(var r=0;r!=e.SheetNames.length;++r)a.push(t(e.Sheets[e.SheetNames[r]],e,r));return a.push(" </office:spreadsheet>\n"),a.push(" </office:body>\n"),"fods"==n.bookType?a.push("</office:document>"):a.push("</office:document-content>"),a.join("")}}();function kw(e,t){if("fods"==t.bookType)return ww(e,t);var n=gh(),a="",o=[],s=[];return fh(n,a="mimetype","application/vnd.oasis.opendocument.spreadsheet"),fh(n,a="content.xml",ww(e,t)),o.push([a,"text/xml"]),s.push([a,"ContentFile"]),fh(n,a="styles.xml",bw(e,t)),o.push([a,"text/xml"]),s.push([a,"StylesFile"]),fh(n,a="meta.xml",yh+qg()),o.push([a,"text/xml"]),s.push([a,"MetadataFile"]),fh(n,a="manifest.rdf",function(e){var t,n,a=[yh];a.push('<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">\n');for(var o=0;o!=e.length;++o)a.push($g(e[o][0],e[o][1])),a.push((t="",n=e[o][0],[' <rdf:Description rdf:about="'+t+'">\n',' <ns0:hasPart xmlns:ns0="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#" rdf:resource="'+n+'"/>\n'," </rdf:Description>\n"].join("")));return a.push($g("","Document","pkg")),a.push("</rdf:RDF>"),a.join("")}(s)),o.push([a,"application/rdf+xml"]),fh(n,a="META-INF/manifest.xml",function(e){var t=[yh];t.push('<manifest:manifest xmlns:manifest="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0" manifest:version="1.2">\n'),t.push(' <manifest:file-entry manifest:full-path="/" manifest:version="1.2" manifest:media-type="application/vnd.oasis.opendocument.spreadsheet"/>\n');for(var n=0;n<e.length;++n)t.push(' <manifest:file-entry manifest:full-path="'+e[n][0]+'" manifest:media-type="'+e[n][1]+'"/>\n');return t.push("</manifest:manifest>"),t.join("")}(o)),n}function xw(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function _w(e){return"undefined"!=typeof TextEncoder?(new TextEncoder).encode(e):Kp(Oh(e))}function Tw(e){var t=e.reduce((function(e,t){return e+t.length}),0),n=new Uint8Array(t),a=0;return e.forEach((function(e){n.set(e,a),a+=e.length})),n}function Sw(e,t){var n=t?t[0]:0,a=127&e[n];e:if(e[n++]>=128){if(a|=(127&e[n])<<7,e[n++]<128)break e;if(a|=(127&e[n])<<14,e[n++]<128)break e;if(a|=(127&e[n])<<21,e[n++]<128)break e;if(a+=(127&e[n])*Math.pow(2,28),++n,e[n++]<128)break e;if(a+=(127&e[n])*Math.pow(2,35),++n,e[n++]<128)break e;if(a+=(127&e[n])*Math.pow(2,42),++n,e[n++]<128)break e}return t&&(t[0]=n),a}function Cw(e){var t=new Uint8Array(7);t[0]=127&e;var n=1;e:if(e>127){if(t[n-1]|=128,t[n]=e>>7&127,++n,e<=16383)break e;if(t[n-1]|=128,t[n]=e>>14&127,++n,e<=2097151)break e;if(t[n-1]|=128,t[n]=e>>21&127,++n,e<=268435455)break e;if(t[n-1]|=128,t[n]=e/256>>>21&127,++n,e<=34359738367)break e;if(t[n-1]|=128,t[n]=e/65536>>>21&127,++n,e<=4398046511103)break e;t[n-1]|=128,t[n]=e/16777216>>>21&127,++n}return t.slice(0,n)}function Ew(e){var t=0,n=127&e[t];e:if(e[t++]>=128){if(n|=(127&e[t])<<7,e[t++]<128)break e;if(n|=(127&e[t])<<14,e[t++]<128)break e;if(n|=(127&e[t])<<21,e[t++]<128)break e;n|=(127&e[t])<<28}return n}function jw(e){for(var t=[],n=[0];n[0]<e.length;){var a,o=n[0],s=Sw(e,n),r=7&s,i=0;if(0==(s=Math.floor(s/8)))break;switch(r){case 0:for(var l=n[0];e[n[0]++]>=128;);a=e.slice(l,n[0]);break;case 5:i=4,a=e.slice(n[0],n[0]+i),n[0]+=i;break;case 1:i=8,a=e.slice(n[0],n[0]+i),n[0]+=i;break;case 2:i=Sw(e,n),a=e.slice(n[0],n[0]+i),n[0]+=i;break;default:throw new Error("PB Type ".concat(r," for Field ").concat(s," at offset ").concat(o))}var c={data:a,type:r};null==t[s]?t[s]=[c]:t[s].push(c)}return t}function Aw(e){var t=[];return e.forEach((function(e,n){e.forEach((function(e){e.data&&(t.push(Cw(8*n+e.type)),2==e.type&&t.push(Cw(e.data.length)),t.push(e.data))}))})),Tw(t)}function Nw(e){for(var t,n=[],a=[0];a[0]<e.length;){var o=Sw(e,a),s=jw(e.slice(a[0],a[0]+o));a[0]+=o;var r={id:Ew(s[1][0].data),messages:[]};s[2].forEach((function(t){var n=jw(t.data),o=Ew(n[3][0].data);r.messages.push({meta:n,data:e.slice(a[0],a[0]+o)}),a[0]+=o})),(null==(t=s[3])?void 0:t[0])&&(r.merge=Ew(s[3][0].data)>>>0>0),n.push(r)}return n}function Dw(e){var t=[];return e.forEach((function(e){var n=[];n[1]=[{data:Cw(e.id),type:0}],n[2]=[],null!=e.merge&&(n[3]=[{data:Cw(+!!e.merge),type:0}]);var a=[];e.messages.forEach((function(e){a.push(e.data),e.meta[3]=[{type:0,data:Cw(e.data.length)}],n[2].push({data:Aw(e.meta),type:2})}));var o=Aw(n);t.push(Cw(o.length)),t.push(o),a.forEach((function(e){return t.push(e)}))})),Tw(t)}function Ow(e,t){if(0!=e)throw new Error("Unexpected Snappy chunk type ".concat(e));for(var n=[0],a=Sw(t,n),o=[];n[0]<t.length;){var s=3&t[n[0]];if(0!=s){var r=0,i=0;if(1==s?(i=4+(t[n[0]]>>2&7),r=(224&t[n[0]++])<<3,r|=t[n[0]++]):(i=1+(t[n[0]++]>>2),2==s?(r=t[n[0]]|t[n[0]+1]<<8,n[0]+=2):(r=(t[n[0]]|t[n[0]+1]<<8|t[n[0]+2]<<16|t[n[0]+3]<<24)>>>0,n[0]+=4)),o=[Tw(o)],0==r)throw new Error("Invalid offset 0");if(r>o[0].length)throw new Error("Invalid offset beyond length");if(i>=r)for(o.push(o[0].slice(-r)),i-=r;i>=o[o.length-1].length;)o.push(o[o.length-1]),i-=o[o.length-1].length;o.push(o[0].slice(-r,-r+i))}else{var l=t[n[0]++]>>2;if(l<60)++l;else{var c=l-59;l=t[n[0]],c>1&&(l|=t[n[0]+1]<<8),c>2&&(l|=t[n[0]+2]<<16),c>3&&(l|=t[n[0]+3]<<24),l>>>=0,l++,n[0]+=c}o.push(t.slice(n[0],n[0]+l)),n[0]+=l}}var m=Tw(o);if(m.length!=a)throw new Error("Unexpected length: ".concat(m.length," != ").concat(a));return m}function Rw(e){for(var t=[],n=0;n<e.length;){var a=e[n++],o=e[n]|e[n+1]<<8|e[n+2]<<16;n+=3,t.push(Ow(a,e.slice(n,n+o))),n+=o}if(n!==e.length)throw new Error("data is not a valid framed stream!");return Tw(t)}function Pw(e){for(var t=[],n=0;n<e.length;){var a=Math.min(e.length-n,268435455),o=new Uint8Array(4);t.push(o);var s=Cw(a),r=s.length;t.push(s),a<=60?(r++,t.push(new Uint8Array([a-1<<2]))):a<=256?(r+=2,t.push(new Uint8Array([240,a-1&255]))):a<=65536?(r+=3,t.push(new Uint8Array([244,a-1&255,a-1>>8&255]))):a<=16777216?(r+=4,t.push(new Uint8Array([248,a-1&255,a-1>>8&255,a-1>>16&255]))):a<=4294967296&&(r+=5,t.push(new Uint8Array([252,a-1&255,a-1>>8&255,a-1>>16&255,a-1>>>24&255]))),t.push(e.slice(n,n+a)),r+=a,o[0]=0,o[1]=255&r,o[2]=r>>8&255,o[3]=r>>16&255,n+=a}return Tw(t)}function Iw(e,t){var n=new Uint8Array(32),a=xw(n),o=12,s=0;switch(n[0]=5,e.t){case"n":n[1]=2,function(e,t,n){var a=Math.floor(0==n?0:Math.LOG10E*Math.log(Math.abs(n)))+6176-20,o=n/Math.pow(10,a-6176);e[t+15]|=a>>7,e[t+14]|=(127&a)<<1;for(var s=0;o>=1;++s,o/=256)e[t+s]=255&o;e[t+15]|=n>=0?0:128}(n,o,e.v),s|=1,o+=16;break;case"b":n[1]=6,a.setFloat64(o,e.v?1:0,!0),s|=2,o+=8;break;case"s":if(-1==t.indexOf(e.v))throw new Error("Value ".concat(e.v," missing from SST!"));n[1]=3,a.setUint32(o,t.indexOf(e.v),!0),s|=8,o+=4;break;default:throw"unsupported cell type "+e.t}return a.setUint32(8,s,!0),n.slice(0,o)}function Lw(e,t){var n=new Uint8Array(32),a=xw(n),o=12,s=0;switch(n[0]=3,e.t){case"n":n[2]=2,a.setFloat64(o,e.v,!0),s|=32,o+=8;break;case"b":n[2]=6,a.setFloat64(o,e.v?1:0,!0),s|=32,o+=8;break;case"s":if(-1==t.indexOf(e.v))throw new Error("Value ".concat(e.v," missing from SST!"));n[2]=3,a.setUint32(o,t.indexOf(e.v),!0),s|=16,o+=4;break;default:throw"unsupported cell type "+e.t}return a.setUint32(4,s,!0),n.slice(0,o)}function Fw(e){return Sw(jw(e)[1][0].data)}function Mw(e,t,n){var a,o,s,r;if(!(null==(a=e[6])?void 0:a[0])||!(null==(o=e[7])?void 0:o[0]))throw"Mutation only works on post-BNC storages!";if((null==(r=null==(s=e[8])?void 0:s[0])?void 0:r.data)&&Ew(e[8][0].data)>0||!1)throw"Math only works with normal offsets";for(var i=0,l=xw(e[7][0].data),c=0,m=[],d=xw(e[4][0].data),p=0,u=[],h=0;h<t.length;++h)if(null!=t[h]){var f,g;switch(l.setUint16(2*h,c,!0),d.setUint16(2*h,p,!0),typeof t[h]){case"string":f=Iw({t:"s",v:t[h]},n),g=Lw({t:"s",v:t[h]},n);break;case"number":f=Iw({t:"n",v:t[h]},n),g=Lw({t:"n",v:t[h]},n);break;case"boolean":f=Iw({t:"b",v:t[h]},n),g=Lw({t:"b",v:t[h]},n);break;default:throw new Error("Unsupported value "+t[h])}m.push(f),c+=f.length,u.push(g),p+=g.length,++i}else l.setUint16(2*h,65535,!0),d.setUint16(2*h,65535);for(e[2][0].data=Cw(i);h<e[7][0].data.length/2;++h)l.setUint16(2*h,65535,!0),d.setUint16(2*h,65535,!0);return e[6][0].data=Tw(m),e[3][0].data=Tw(u),i}function Ww(e){return function(t){for(var n=0;n!=e.length;++n){var a=e[n];void 0===t[a[0]]&&(t[a[0]]=a[1]),"n"===a[2]&&(t[a[0]]=Number(t[a[0]]))}}}function Bw(e){Ww([["cellDates",!1],["bookSST",!1],["bookType","xlsx"],["compression",!1],["WTF",!1]])(e)}function zw(e,t){return"ods"==t.bookType?kw(e,t):"numbers"==t.bookType?function(e,t){if(!t||!t.numbers)throw new Error("Must pass a `numbers` option -- check the README");var n=e.Sheets[e.SheetNames[0]];e.SheetNames.length>1&&console.error("The Numbers writer currently writes only the first table");var a=eg(n["!ref"]);a.s.r=a.s.c=0;var o=!1;a.e.c>9&&(o=!0,a.e.c=9),a.e.r>49&&(o=!0,a.e.r=49),o&&console.error("The Numbers writer is currently limited to ".concat(tg(a)));var s=Jw(n,{range:a,header:1}),r=["~Sh33tJ5~"];s.forEach((function(e){return e.forEach((function(e){"string"==typeof e&&r.push(e)}))}));var i={},l=[],c=Vu.read(t.numbers,{type:"base64"});c.FileIndex.map((function(e,t){return[e,c.FullPaths[t]]})).forEach((function(e){var t=e[0],n=e[1];2==t.type&&t.name.match(/\.iwa/)&&Nw(Rw(t.content)).forEach((function(e){l.push(e.id),i[e.id]={deps:[],location:n,type:Ew(e.messages[0].meta[1][0].data)}}))})),l.sort((function(e,t){return e-t}));var m=l.filter((function(e){return e>1})).map((function(e){return[e,Cw(e)]}));c.FileIndex.map((function(e,t){return[e,c.FullPaths[t]]})).forEach((function(e){var t=e[0];e[1],t.name.match(/\.iwa/)&&Nw(Rw(t.content)).forEach((function(e){e.messages.forEach((function(t){m.forEach((function(t){e.messages.some((function(e){return 11006!=Ew(e.meta[1][0].data)&&function(e,t){e:for(var n=0;n<=e.length-t.length;++n){for(var a=0;a<t.length;++a)if(e[n+a]!=t[a])continue e;return!0}return!1}(e.data,t[1])}))&&i[t[0]].deps.push(e.id)}))}))}))}));for(var d,p=Vu.find(c,i[1].location),u=Nw(Rw(p.content)),h=0;h<u.length;++h){var f=u[h];1==f.id&&(d=f)}var g=Fw(jw(d.messages[0].data)[1][0].data);for(u=Nw(Rw((p=Vu.find(c,i[g].location)).content)),h=0;h<u.length;++h)(f=u[h]).id==g&&(d=f);for(g=Fw(jw(d.messages[0].data)[2][0].data),u=Nw(Rw((p=Vu.find(c,i[g].location)).content)),h=0;h<u.length;++h)(f=u[h]).id==g&&(d=f);for(g=Fw(jw(d.messages[0].data)[2][0].data),u=Nw(Rw((p=Vu.find(c,i[g].location)).content)),h=0;h<u.length;++h)(f=u[h]).id==g&&(d=f);var y=jw(d.messages[0].data);y[6][0].data=Cw(a.e.r+1),y[7][0].data=Cw(a.e.c+1);for(var v=Fw(y[46][0].data),b=Vu.find(c,i[v].location),w=Nw(Rw(b.content)),k=0;k<w.length&&w[k].id!=v;++k);if(w[k].id!=v)throw"Bad ColumnRowUIDMapArchive";var x=jw(w[k].messages[0].data);x[1]=[],x[2]=[],x[3]=[];for(var _=0;_<=a.e.c;++_){var T=[];T[1]=T[2]=[{type:0,data:Cw(_+420690)}],x[1].push({type:2,data:Aw(T)}),x[2].push({type:0,data:Cw(_)}),x[3].push({type:0,data:Cw(_)})}x[4]=[],x[5]=[],x[6]=[];for(var S=0;S<=a.e.r;++S)(T=[])[1]=T[2]=[{type:0,data:Cw(S+726270)}],x[4].push({type:2,data:Aw(T)}),x[5].push({type:0,data:Cw(S)}),x[6].push({type:0,data:Cw(S)});w[k].messages[0].data=Aw(x),b.content=Pw(Dw(w)),b.size=b.content.length,delete y[46];var C=jw(y[4][0].data);C[7][0].data=Cw(a.e.r+1);var E=Fw(jw(C[1][0].data)[2][0].data);if((w=Nw(Rw((b=Vu.find(c,i[E].location)).content)))[0].id!=E)throw"Bad HeaderStorageBucket";var j=jw(w[0].messages[0].data);for(S=0;S<s.length;++S){var A=jw(j[2][0].data);A[1][0].data=Cw(S),A[4][0].data=Cw(s[S].length),j[2][S]={type:j[2][0].type,data:Aw(A)}}w[0].messages[0].data=Aw(j),b.content=Pw(Dw(w)),b.size=b.content.length;var N=Fw(C[2][0].data);if((w=Nw(Rw((b=Vu.find(c,i[N].location)).content)))[0].id!=N)throw"Bad HeaderStorageBucket";for(j=jw(w[0].messages[0].data),_=0;_<=a.e.c;++_)(A=jw(j[2][0].data))[1][0].data=Cw(_),A[4][0].data=Cw(a.e.r+1),j[2][_]={type:j[2][0].type,data:Aw(A)};w[0].messages[0].data=Aw(j),b.content=Pw(Dw(w)),b.size=b.content.length;var D=Fw(C[4][0].data);!function(){for(var e,t=Vu.find(c,i[D].location),n=Nw(Rw(t.content)),a=0;a<n.length;++a){var o=n[a];o.id==D&&(e=o)}var s=jw(e.messages[0].data);s[3]=[];var l=[];r.forEach((function(e,t){l[1]=[{type:0,data:Cw(t)}],l[2]=[{type:0,data:Cw(1)}],l[3]=[{type:2,data:_w(e)}],s[3].push({type:2,data:Aw(l)})})),e.messages[0].data=Aw(s);var m=Pw(Dw(n));t.content=m,t.size=t.content.length}();var O=jw(C[3][0].data),R=O[1][0];delete O[2];var P=jw(R.data),I=Fw(P[2][0].data);!function(){for(var e,t=Vu.find(c,i[I].location),n=Nw(Rw(t.content)),o=0;o<n.length;++o){var l=n[o];l.id==I&&(e=l)}var m=jw(e.messages[0].data);delete m[6],delete O[7];var d=new Uint8Array(m[5][0].data);m[5]=[];for(var p=0,u=0;u<=a.e.r;++u){var h=jw(d);p+=Mw(h,s[u],r),h[1][0].data=Cw(u),m[5].push({data:Aw(h),type:2})}m[1]=[{type:0,data:Cw(a.e.c+1)}],m[2]=[{type:0,data:Cw(a.e.r+1)}],m[3]=[{type:0,data:Cw(p)}],m[4]=[{type:0,data:Cw(a.e.r+1)}],e.messages[0].data=Aw(m);var f=Pw(Dw(n));t.content=f,t.size=t.content.length}(),R.data=Aw(P),C[3][0].data=Aw(O),y[4][0].data=Aw(C),d.messages[0].data=Aw(y);var L=Pw(Dw(u));return p.content=L,p.size=p.content.length,c}(e,t):"xlsb"==t.bookType?function(e,t){yv=1024,e&&!e.SSF&&(e.SSF=mh(iu));e&&e.SSF&&(Uu(),zu(e.SSF),t.revssf=Xu(e.SSF),t.revssf[e.SSF[65535]]=0,t.ssf=e.SSF);t.rels={},t.wbrels={},t.Strings=[],t.Strings.Count=0,t.Strings.Unique=0,mb?t.revStrings=new Map:(t.revStrings={},t.revStrings.foo=[],delete t.revStrings.foo);var n="xlsb"==t.bookType?"bin":"xml",a=_v.indexOf(t.bookType)>-1,o={workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""};Bw(t=t||{});var s=gh(),r="",i=0;t.cellXfs=[],hb(t.cellXfs,{},{revssf:{General:0}}),e.Props||(e.Props={});if(fh(s,r="docProps/core.xml",Jg(e.Props,t)),o.coreprops.push(r),Kg(t.rels,2,r,Hg.CORE_PROPS),r="docProps/app.xml",e.Props&&e.Props.SheetNames);else if(e.Workbook&&e.Workbook.Sheets){for(var l=[],c=0;c<e.SheetNames.length;++c)2!=(e.Workbook.Sheets[c]||{}).Hidden&&l.push(e.SheetNames[c]);e.Props.SheetNames=l}else e.Props.SheetNames=e.SheetNames;e.Props.Worksheets=e.Props.SheetNames.length,fh(s,r,ey(e.Props)),o.extprops.push(r),Kg(t.rels,3,r,Hg.EXT_PROPS),e.Custprops!==e.Props&&Yu(e.Custprops||{}).length>0&&(fh(s,r="docProps/custom.xml",ty(e.Custprops)),o.custprops.push(r),Kg(t.rels,4,r,Hg.CUST_PROPS));for(i=1;i<=e.SheetNames.length;++i){var m={"!id":{}},d=e.Sheets[e.SheetNames[i-1]];(d||{})["!type"];if(fh(s,r="xl/worksheets/sheet"+i+"."+n,Ub(i-1,r,t,e,m)),o.sheets.push(r),Kg(t.wbrels,-1,"worksheets/sheet"+i+"."+n,Hg.WS[0]),d){var p=d["!comments"],u=!1,h="";p&&p.length>0&&(fh(s,h="xl/comments"+i+"."+n,Hb(p,h,t)),o.comments.push(h),Kg(m,-1,"../comments"+i+"."+n,Hg.CMNT),u=!0),d["!legacy"]&&u&&fh(s,"xl/drawings/vmlDrawing"+i+".vml",vv(i,d["!comments"])),delete d["!comments"],delete d["!legacy"]}m["!id"].rId1&&fh(s,Gg(r),Vg(m))}null!=t.Strings&&t.Strings.length>0&&(fh(s,r="xl/sharedStrings."+n,function(e,t,n){return(".bin"===t.slice(-4)?Uy:By)(e,n)}(t.Strings,r,t)),o.strs.push(r),Kg(t.wbrels,-1,"sharedStrings."+n,Hg.SST));fh(s,r="xl/workbook."+n,function(e,t,n){return(".bin"===t.slice(-4)?zb:Wb)(e,n)}(e,r,t)),o.workbooks.push(r),Kg(t.rels,1,r,Hg.WB),fh(s,r="xl/theme/theme1.xml",hv(e.Themes,t)),o.themes.push(r),Kg(t.wbrels,-1,"theme/theme1.xml",Hg.THEME),fh(s,r="xl/styles."+n,function(e,t,n){return(".bin"===t.slice(-4)?uv:ev)(e,n)}(e,r,t)),o.styles.push(r),Kg(t.wbrels,-1,"styles."+n,Hg.STY),e.vbaraw&&a&&(fh(s,r="xl/vbaProject.bin",e.vbaraw),o.vba.push(r),Kg(t.wbrels,-1,"vbaProject.bin",Hg.VBA));return fh(s,r="xl/metadata."+n,function(e){return(".bin"===e.slice(-4)?fv:gv)()}(r)),o.metadata.push(r),Kg(t.wbrels,-1,"metadata."+n,Hg.XLMETA),fh(s,"[Content_Types].xml",Ug(o,t)),fh(s,"_rels/.rels",Vg(t.rels)),fh(s,"xl/_rels/workbook."+n+".rels",Vg(t.wbrels)),delete t.revssf,delete t.ssf,s}(e,t):Uw(e,t)}function Uw(e,t){yv=1024,e&&!e.SSF&&(e.SSF=mh(iu)),e&&e.SSF&&(Uu(),zu(e.SSF),t.revssf=Xu(e.SSF),t.revssf[e.SSF[65535]]=0,t.ssf=e.SSF),t.rels={},t.wbrels={},t.Strings=[],t.Strings.Count=0,t.Strings.Unique=0,mb?t.revStrings=new Map:(t.revStrings={},t.revStrings.foo=[],delete t.revStrings.foo);var n="xml",a=_v.indexOf(t.bookType)>-1,o={workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""};Bw(t=t||{});var s=gh(),r="",i=0;if(t.cellXfs=[],hb(t.cellXfs,{},{revssf:{General:0}}),e.Props||(e.Props={}),fh(s,r="docProps/core.xml",Jg(e.Props,t)),o.coreprops.push(r),Kg(t.rels,2,r,Hg.CORE_PROPS),r="docProps/app.xml",e.Props&&e.Props.SheetNames);else if(e.Workbook&&e.Workbook.Sheets){for(var l=[],c=0;c<e.SheetNames.length;++c)2!=(e.Workbook.Sheets[c]||{}).Hidden&&l.push(e.SheetNames[c]);e.Props.SheetNames=l}else e.Props.SheetNames=e.SheetNames;e.Props.Worksheets=e.Props.SheetNames.length,fh(s,r,ey(e.Props)),o.extprops.push(r),Kg(t.rels,3,r,Hg.EXT_PROPS),e.Custprops!==e.Props&&Yu(e.Custprops||{}).length>0&&(fh(s,r="docProps/custom.xml",ty(e.Custprops)),o.custprops.push(r),Kg(t.rels,4,r,Hg.CUST_PROPS));var m=["SheetJ5"];for(t.tcid=0,i=1;i<=e.SheetNames.length;++i){var d={"!id":{}},p=e.Sheets[e.SheetNames[i-1]];(p||{})["!type"];if(fh(s,r="xl/worksheets/sheet"+i+"."+n,bb(i-1,t,e,d)),o.sheets.push(r),Kg(t.wbrels,-1,"worksheets/sheet"+i+"."+n,Hg.WS[0]),p){var u=p["!comments"],h=!1,f="";if(u&&u.length>0){var g=!1;u.forEach((function(e){e[1].forEach((function(e){1==e.T&&(g=!0)}))})),g&&(fh(s,f="xl/threadedComments/threadedComment"+i+"."+n,wv(u,m,t)),o.threadedcomments.push(f),Kg(d,-1,"../threadedComments/threadedComment"+i+"."+n,Hg.TCMNT)),fh(s,f="xl/comments"+i+"."+n,bv(u)),o.comments.push(f),Kg(d,-1,"../comments"+i+"."+n,Hg.CMNT),h=!0}p["!legacy"]&&h&&fh(s,"xl/drawings/vmlDrawing"+i+".vml",vv(i,p["!comments"])),delete p["!comments"],delete p["!legacy"]}d["!id"].rId1&&fh(s,Gg(r),Vg(d))}return null!=t.Strings&&t.Strings.length>0&&(fh(s,r="xl/sharedStrings."+n,By(t.Strings,t)),o.strs.push(r),Kg(t.wbrels,-1,"sharedStrings."+n,Hg.SST)),fh(s,r="xl/workbook."+n,Wb(e)),o.workbooks.push(r),Kg(t.rels,1,r,Hg.WB),fh(s,r="xl/theme/theme1.xml",hv(e.Themes,t)),o.themes.push(r),Kg(t.wbrels,-1,"theme/theme1.xml",Hg.THEME),fh(s,r="xl/styles."+n,ev(e,t)),o.styles.push(r),Kg(t.wbrels,-1,"styles."+n,Hg.STY),e.vbaraw&&a&&(fh(s,r="xl/vbaProject.bin",e.vbaraw),o.vba.push(r),Kg(t.wbrels,-1,"vbaProject.bin",Hg.VBA)),fh(s,r="xl/metadata."+n,gv()),o.metadata.push(r),Kg(t.wbrels,-1,"metadata."+n,Hg.XLMETA),m.length>1&&(fh(s,r="xl/persons/person.xml",function(e){var t=[yh,Fh("personList",null,{xmlns:Gh,"xmlns:x":Xh[0]}).replace(/[\/]>/,">")];return e.forEach((function(e,n){t.push(Fh("person",null,{displayName:e,id:"{54EE7950-7262-4200-6969-"+("000000000000"+n).slice(-12)+"}",userId:e,providerId:"None"}))})),t.push("</personList>"),t.join("")}(m)),o.people.push(r),Kg(t.wbrels,-1,"persons/person.xml",Hg.PEOPLE)),fh(s,"[Content_Types].xml",Ug(o,t)),fh(s,"_rels/.rels",Vg(t.rels)),fh(s,"xl/_rels/workbook.xml.rels",Vg(t.wbrels)),delete t.revssf,delete t.ssf,s}function Hw(e,t){var n="";switch((t||{}).type||"base64"){case"buffer":case"array":return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]];case"base64":n=zp(e.slice(0,12));break;case"binary":n=e;break;default:throw new Error("Unrecognized type "+(t&&t.type||"undefined"))}return[n.charCodeAt(0),n.charCodeAt(1),n.charCodeAt(2),n.charCodeAt(3),n.charCodeAt(4),n.charCodeAt(5),n.charCodeAt(6),n.charCodeAt(7)]}function Gw(e,t){switch(t.type){case"base64":case"binary":break;case"buffer":case"array":t.type="";break;case"file":return qu(t.file,Vu.write(e,{type:Up?"buffer":""}));case"string":throw new Error("'string' output type invalid for '"+t.bookType+"' files");default:throw new Error("Unrecognized type "+t.type)}return Vu.write(e,t)}function Vw(e,t){var n={},a=Up?"nodebuffer":"undefined"!==typeof Uint8Array?"array":"string";if(t.compression&&(n.compression="DEFLATE"),t.password)n.type=a;else switch(t.type){case"base64":n.type="base64";break;case"binary":n.type="string";break;case"string":throw new Error("'string' output type invalid for '"+t.bookType+"' files");case"buffer":case"file":n.type=a;break;default:throw new Error("Unrecognized type "+t.type)}var o=e.FullPaths?Vu.write(e,{fileType:"zip",type:{nodebuffer:"buffer",string:"binary"}[n.type]||n.type,compression:!!t.compression}):e.generate(n);if("undefined"!==typeof Deno&&"string"==typeof o){if("binary"==t.type||"base64"==t.type)return o;o=new Uint8Array($p(o))}return t.password&&"undefined"!==typeof encrypt_agile?Gw(encrypt_agile(o,t.password),t):"file"===t.type?qu(t.file,o):"string"==t.type?Dh(o):o}function Kw(e,t,n){n||(n="");var a=n+e;switch(t.type){case"base64":return Bp(Oh(a));case"binary":return Oh(a);case"string":return e;case"file":return qu(t.file,a,"utf8");case"buffer":return Up?Hp(a,"utf8"):"undefined"!==typeof TextEncoder?(new TextEncoder).encode(a):Kw(a,{type:"binary"}).split("").map((function(e){return e.charCodeAt(0)}))}throw new Error("Unrecognized type "+t.type)}function $w(e,t){switch(t.type){case"string":case"base64":case"binary":for(var n="",a=0;a<e.length;++a)n+=String.fromCharCode(e[a]);return"base64"==t.type?Bp(n):"string"==t.type?Dh(n):n;case"file":return qu(t.file,e);case"buffer":return e;default:throw new Error("Unrecognized type "+t.type)}}function qw(e,t){Pp(),Mb(e);var n=mh(t||{});if(n.cellStyles&&(n.cellNF=!0,n.sheetStubs=!0),"array"==n.type){n.type="binary";var a=qw(e,n);return n.type="array",$p(a)}var o=0;if(n.sheet&&(o="number"==typeof n.sheet?n.sheet:e.SheetNames.indexOf(n.sheet),!e.SheetNames[o]))throw new Error("Sheet not found: "+n.sheet+" : "+typeof n.sheet);switch(n.bookType||"xlsb"){case"xml":case"xlml":return Kw(Yb(e,n),n);case"slk":case"sylk":return Kw(Py.from_sheet(e.Sheets[e.SheetNames[o]],n),n);case"htm":case"html":return Kw(fw(e.Sheets[e.SheetNames[o]],n),n);case"txt":return function(e,t){switch(t.type){case"base64":return Bp(e);case"binary":case"string":return e;case"file":return qu(t.file,e,"binary");case"buffer":return Up?Hp(e,"binary"):e.split("").map((function(e){return e.charCodeAt(0)}))}throw new Error("Unrecognized type "+t.type)}(tk(e.Sheets[e.SheetNames[o]],n),n);case"csv":return Kw(ek(e.Sheets[e.SheetNames[o]],n),n,"\ufeff");case"dif":return Kw(Iy.from_sheet(e.Sheets[e.SheetNames[o]],n),n);case"dbf":return $w(Ry.from_sheet(e.Sheets[e.SheetNames[o]],n),n);case"prn":return Kw(Fy.from_sheet(e.Sheets[e.SheetNames[o]],n),n);case"rtf":return Kw(Vy.from_sheet(e.Sheets[e.SheetNames[o]],n),n);case"eth":return Kw(Ly.from_sheet(e.Sheets[e.SheetNames[o]],n),n);case"fods":return Kw(kw(e,n),n);case"wk1":return $w(My.sheet_to_wk1(e.Sheets[e.SheetNames[o]],n),n);case"wk3":return $w(My.book_to_wk3(e,n),n);case"biff2":n.biff||(n.biff=2);case"biff3":n.biff||(n.biff=3);case"biff4":return n.biff||(n.biff=4),$w(mw(e,n),n);case"biff5":n.biff||(n.biff=5);case"biff8":case"xla":case"xls":return n.biff||(n.biff=8),function(e,t){var n=t||{};return Gw(Qb(e,n),n)}(e,n);case"xlsx":case"xlsm":case"xlam":case"xlsb":case"numbers":case"ods":return function(e,t){var n=mh(t||{});return Vw(zw(e,n),n)}(e,n);default:throw new Error("Unrecognized bookType |"+n.bookType+"|")}}function Yw(e){if(!e.bookType){var t=e.file.slice(e.file.lastIndexOf(".")).toLowerCase();t.match(/^\.[a-z]+$/)&&(e.bookType=t.slice(1)),e.bookType={xls:"biff8",htm:"html",slk:"sylk",socialcalc:"eth",Sh33tJS:"WTF"}[e.bookType]||e.bookType}}function Zw(e,t,n,a,o,s,r,i){var l=Yf(n),c=i.defval,m=i.raw||!Object.prototype.hasOwnProperty.call(i,"raw"),d=!0,p=1===o?[]:{};if(1!==o)if(Object.defineProperty)try{Object.defineProperty(p,"__rowNum__",{value:n,enumerable:!1})}catch(g){p.__rowNum__=n}else p.__rowNum__=n;if(!r||e[n])for(var u=t.s.c;u<=t.e.c;++u){var h=r?e[n][u]:e[a[u]+l];if(void 0!==h&&void 0!==h.t){var f=h.v;switch(h.t){case"z":if(null==f)break;continue;case"e":f=0==f?null:void 0;break;case"s":case"d":case"b":case"n":break;default:throw new Error("unrecognized type "+h.t)}if(null!=s[u]){if(null==f)if("e"==h.t&&null===f)p[s[u]]=null;else if(void 0!==c)p[s[u]]=c;else{if(!m||null!==f)continue;p[s[u]]=null}else p[s[u]]=m&&("n"!==h.t||"n"===h.t&&!1!==i.rawNumbers)?f:og(h,f,i);null!=f&&(d=!1)}}else{if(void 0===c)continue;null!=s[u]&&(p[s[u]]=c)}}return{row:p,isempty:d}}function Jw(e,t){if(null==e||null==e["!ref"])return[];var n={t:"n",v:0},a=0,o=1,s=[],r=0,i="",l={s:{r:0,c:0},e:{r:0,c:0}},c=t||{},m=null!=c.range?c.range:e["!ref"];switch(1===c.header?a=1:"A"===c.header?a=2:Array.isArray(c.header)?a=3:null==c.header&&(a=0),typeof m){case"string":l=ng(m);break;case"number":(l=ng(e["!ref"])).s.r=m;break;default:l=m}a>0&&(o=0);var d=Yf(l.s.r),p=[],u=[],h=0,f=0,g=Array.isArray(e),y=l.s.r,v=0,b={};g&&!e[y]&&(e[y]=[]);var w=c.skipHidden&&e["!cols"]||[],k=c.skipHidden&&e["!rows"]||[];for(v=l.s.c;v<=l.e.c;++v)if(!(w[v]||{}).hidden)switch(p[v]=Jf(v),n=g?e[y][v]:e[p[v]+d],a){case 1:s[v]=v-l.s.c;break;case 2:s[v]=p[v];break;case 3:s[v]=c.header[v-l.s.c];break;default:if(null==n&&(n={w:"__EMPTY",t:"s"}),i=r=og(n,null,c),f=b[r]||0){do{i=r+"_"+f++}while(b[i]);b[r]=f,b[i]=1}else b[r]=1;s[v]=i}for(y=l.s.r+o;y<=l.e.r;++y)if(!(k[y]||{}).hidden){var x=Zw(e,l,y,p,a,s,g,c);(!1===x.isempty||(1===a?!1!==c.blankrows:c.blankrows))&&(u[h++]=x.row)}return u.length=h,u}var Xw=/"/g;function Qw(e,t,n,a,o,s,r,i){for(var l=!0,c=[],m="",d=Yf(n),p=t.s.c;p<=t.e.c;++p)if(a[p]){var u=i.dense?(e[n]||[])[p]:e[a[p]+d];if(null==u)m="";else if(null!=u.v){l=!1,m=""+(i.rawNumbers&&"n"==u.t?u.v:og(u,null,i));for(var h=0,f=0;h!==m.length;++h)if((f=m.charCodeAt(h))===o||f===s||34===f||i.forceQuotes){m='"'+m.replace(Xw,'""')+'"';break}"ID"==m&&(m='"ID"')}else null==u.f||u.F?m="":(l=!1,(m="="+u.f).indexOf(",")>=0&&(m='"'+m.replace(Xw,'""')+'"'));c.push(m)}return!1===i.blankrows&&l?null:c.join(r)}function ek(e,t){var n=[],a=null==t?{}:t;if(null==e||null==e["!ref"])return"";var o=ng(e["!ref"]),s=void 0!==a.FS?a.FS:",",r=s.charCodeAt(0),i=void 0!==a.RS?a.RS:"\n",l=i.charCodeAt(0),c=new RegExp(("|"==s?"\\|":s)+"+$"),m="",d=[];a.dense=Array.isArray(e);for(var p=a.skipHidden&&e["!cols"]||[],u=a.skipHidden&&e["!rows"]||[],h=o.s.c;h<=o.e.c;++h)(p[h]||{}).hidden||(d[h]=Jf(h));for(var f=0,g=o.s.r;g<=o.e.r;++g)(u[g]||{}).hidden||null!=(m=Qw(e,o,g,d,r,l,s,a))&&(a.strip&&(m=m.replace(c,"")),(m||!1!==a.blankrows)&&n.push((f++?i:"")+m));return delete a.dense,n.join("")}function tk(e,t){t||(t={}),t.FS="\t",t.RS="\n";var n=ek(e,t);if("undefined"==typeof Lp||"string"==t.type)return n;var a=Lp.utils.encode(1200,n,"str");return String.fromCharCode(255)+String.fromCharCode(254)+a}function nk(e,t,n){var a,o=n||{},s=+!o.skipHeader,r=e||{},i=0,l=0;if(r&&null!=o.origin)if("number"==typeof o.origin)i=o.origin;else{var c="string"==typeof o.origin?Xf(o.origin):o.origin;i=c.r,l=c.c}var m={s:{c:0,r:0},e:{c:l,r:i+t.length-1+s}};if(r["!ref"]){var d=ng(r["!ref"]);m.e.c=Math.max(m.e.c,d.e.c),m.e.r=Math.max(m.e.r,d.e.r),-1==i&&(i=d.e.r+1,m.e.r=i+t.length-1+s)}else-1==i&&(i=0,m.e.r=t.length-1+s);var p=o.header||[],u=0;t.forEach((function(e,t){Yu(e).forEach((function(n){-1==(u=p.indexOf(n))&&(p[u=p.length]=n);var c=e[n],m="z",d="",h=Qf({c:l+u,r:i+t+s});a=ak(r,h),!c||"object"!==typeof c||c instanceof Date?("number"==typeof c?m="n":"boolean"==typeof c?m="b":"string"==typeof c?m="s":c instanceof Date?(m="d",o.cellDates||(m="n",c=eh(c)),d=o.dateNF||iu[14]):null===c&&o.nullError&&(m="e",c=0),a?(a.t=m,a.v=c,delete a.w,delete a.R,d&&(a.z=d)):r[h]=a={t:m,v:c},d&&(a.z=d)):r[h]=c}))})),m.e.c=Math.max(m.e.c,l+p.length-1);var h=Yf(i);if(s)for(u=0;u<p.length;++u)r[Jf(u+l)+h]={t:"s",v:p[u]};return r["!ref"]=tg(m),r}function ak(e,t,n){if("string"==typeof t){if(Array.isArray(e)){var a=Xf(t);return e[a.r]||(e[a.r]=[]),e[a.r][a.c]||(e[a.r][a.c]={t:"z"})}return e[t]||(e[t]={t:"z"})}return ak(e,Qf("number"!=typeof t?t:{r:t,c:n||0}))}function ok(){return{SheetNames:[],Sheets:{}}}function sk(e,t,n,a){var o=1;if(!n)for(;o<=65535&&-1!=e.SheetNames.indexOf(n="Sheet"+o);++o,n=void 0);if(!n||e.SheetNames.length>=65535)throw new Error("Too many worksheets");if(a&&e.SheetNames.indexOf(n)>=0){var s=n.match(/(^.*?)(\d+)$/);o=s&&+s[2]||0;var r=s&&s[1]||n;for(++o;o<=65535&&-1!=e.SheetNames.indexOf(n=r+o);++o);}if(Fb(n),e.SheetNames.indexOf(n)>=0)throw new Error("Worksheet with name |"+n+"| already exists!");return e.SheetNames.push(n),e.Sheets[n]=t,n}function rk(e,t,n){return t?(e.l={Target:t},n&&(e.l.Tooltip=n)):delete e.l,e}var ik={encode_col:Jf,encode_row:Yf,encode_cell:Qf,encode_range:tg,decode_col:Zf,decode_row:qf,split_cell:function(e){return e.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(",")},decode_cell:Xf,decode_range:eg,format_cell:og,sheet_add_aoa:rg,sheet_add_json:nk,sheet_add_dom:gw,aoa_to_sheet:ig,json_to_sheet:function(e,t){return nk(null,e,t)},table_to_sheet:yw,table_to_book:function(e,t){return sg(yw(e,t),t)},sheet_to_csv:ek,sheet_to_txt:tk,sheet_to_json:Jw,sheet_to_html:fw,sheet_to_formulae:function(e){var t,n="",a="";if(null==e||null==e["!ref"])return[];var o,s=ng(e["!ref"]),r="",i=[],l=[],c=Array.isArray(e);for(o=s.s.c;o<=s.e.c;++o)i[o]=Jf(o);for(var m=s.s.r;m<=s.e.r;++m)for(r=Yf(m),o=s.s.c;o<=s.e.c;++o)if(n=i[o]+r,a="",void 0!==(t=c?(e[m]||[])[o]:e[n])){if(null!=t.F){if(n=t.F,!t.f)continue;a=t.f,-1==n.indexOf(":")&&(n=n+":"+n)}if(null!=t.f)a=t.f;else{if("z"==t.t)continue;if("n"==t.t&&null!=t.v)a=""+t.v;else if("b"==t.t)a=t.v?"TRUE":"FALSE";else if(void 0!==t.w)a="'"+t.w;else{if(void 0===t.v)continue;a="s"==t.t?"'"+t.v:""+t.v}}l[l.length]=n+"="+a}return l},sheet_to_row_object_array:Jw,sheet_get_cell:ak,book_new:ok,book_append_sheet:sk,book_set_sheet_visibility:function(e,t,n){e.Workbook||(e.Workbook={}),e.Workbook.Sheets||(e.Workbook.Sheets=[]);var a=function(e,t){if("number"==typeof t){if(t>=0&&e.SheetNames.length>t)return t;throw new Error("Cannot find sheet # "+t)}if("string"==typeof t){var n=e.SheetNames.indexOf(t);if(n>-1)return n;throw new Error("Cannot find sheet name |"+t+"|")}throw new Error("Cannot find sheet |"+t+"|")}(e,t);switch(e.Workbook.Sheets[a]||(e.Workbook.Sheets[a]={}),n){case 0:case 1:case 2:break;default:throw new Error("Bad sheet visibility setting "+n)}e.Workbook.Sheets[a].Hidden=n},cell_set_number_format:function(e,t){return e.z=t,e},cell_set_hyperlink:rk,cell_set_internal_link:function(e,t,n){return rk(e,"#"+t,n)},cell_add_comment:function(e,t,n){e.c||(e.c=[]),e.c.push({t:t,a:n||"SheetJS"})},sheet_set_array_formula:function(e,t,n,a){for(var o="string"!=typeof t?t:ng(t),s="string"==typeof t?t:tg(t),r=o.s.r;r<=o.e.r;++r)for(var i=o.s.c;i<=o.e.c;++i){var l=ak(e,r,i);l.t="n",l.F=s,delete l.v,r==o.s.r&&i==o.s.c&&(l.f=n,a&&(l.D=!0))}return e},consts:{SHEET_VISIBLE:0,SHEET_HIDDEN:1,SHEET_VERY_HIDDEN:2}};Ep.version;function lk(e,t){const n=document.createElement("a");n.href=URL.createObjectURL(e),n.download=t,document.body.append(n),n.click(),n.remove(),setTimeout((()=>URL.revokeObjectURL(n.href)),7e3)}function ck(e){const n=t.Children.map(e,(e=>{var n;if(!t.isValidElement(e))return null;const a=(null===e||void 0===e||null===(n=e.props)||void 0===n?void 0:n.template)||qd.STRING;return{...e.props,template:a}})),a=Array.from(n).filter((e=>null===e||void 0===e?void 0:e.title));return a}function mk(e){return e.map((e=>(0,_e.t)(e.title||"")))}function dk(e){return t=>e.map((e=>{let n=e.properties?t[e.properties]:t;if(e.formatter===qn)return Yn(n);if(e.formatter&&(n=e.formatter(n)),Array.isArray(n))return n.length;const a=typeof n;return"object"===a?!e.formatter&&e.template?"":Object.entries(n).map((e=>"".concat((0,_e.t)(e[0])||"",": ").concat(e[1]||""))).join(", "):"string"===a?n.replace(".",","):n}))}function pk(e,t,n){const a=ck(t),o=dk(a),s=[mk(a),...e.map(o)],r=ik.aoa_to_sheet(s);r["!cols"]=a.map((()=>({width:20})));const i=ik.book_new();ik.book_append_sheet(i,r,"Sheet1"),function(e,t,n){var a=n||{};a.type="file",a.file=t,Yw(a),qw(e,a)}(i,"".concat(n,".xlsx"))}var uk=(0,yn.Z)("getPath");function hk(e){return e?Array.isArray(e)?e.join("."):"object"===typeof e?[e.type,e.page].join("."):e:""}const fk=new class{constructor(){Object.defineProperty(this,uk,{value:hk}),this.key="view_settings",this.version=1,this.settings={},this.load(),(0,Vt.rC)(this,{settings:Vt.LO,load:Vt.aD,setItem:Vt.aD})}load(){const e=JSON.parse(localStorage.getItem(this.key)||"{}")||{};e.version===this.version&&(this.settings=e.settings)}save(){0!==Object.keys(this.settings).length?localStorage.setItem(this.key,JSON.stringify({version:this.version,settings:this.settings})):localStorage.removeItem(this.key)}setItem(e,t,n){const a=(0,gn.Z)(this,uk)[uk](e);a&&(t&&t!==n?this.settings[a]=t:delete this.settings[a],this.save())}getItem(e,t){var n;const a=(0,gn.Z)(this,uk)[uk](e);return(null===(n=this.settings)||void 0===n?void 0:n[a])||t}},gk=fk,yk="data_view_buttons",vk="data_view_icon";function bk(e){let{rowsForExcel:n=[],rows:a=[],sort:o=[],type:s,mode:r,columnCount:i,className:l,fullScreenMode:c="",disabledRow:m,updateSort:d,children:p}=e;const{t:u}=zt(),h=Q(),f=gk.getItem(h,Pr?"cards":"table"),[g,y]=(0,t.useState)(s||f);if(!a||!a.length)return null;const v={table:"./assets/icons/Cards.svg",cards:"./assets/icons/Table.svg"}[g],b={table:"\u041e\u0442\u043e\u0431\u0440\u0430\u0437\u0438\u0442\u044c \u043a\u0430\u0440\u0442\u043e\u0447\u043a\u0430\u043c\u0438",cards:"\u041e\u0442\u043e\u0431\u0440\u0430\u0437\u0438\u0442\u044c \u0442\u0430\u0431\u043b\u0438\u0446\u043e\u0439"}[g];return(0,Er.jsxs)(Er.Fragment,{children:["details"!==r&&(0,Er.jsx)("div",{style:{position:"relative"},children:(0,Er.jsxs)("div",{className:yk,children:[!Pr&&(0,Er.jsx)("img",{src:"./assets/icons/Download.svg",className:vk,onClick:()=>{const e=u("sidebar.".concat(h.type,".").concat(h.page));pk(n||a,p,e)}}),!Pr&&(0,Er.jsx)("img",{src:dl.isOpen?"./assets/icons/CloseFullscreen.svg":"./assets/icons/OpenFullscreen.svg",className:vk,onClick:()=>{dl.toggle(c)}}),!Pr&&(0,Er.jsx)("img",{title:b,src:v,className:vk,onClick:()=>{const e="table"===g?"cards":"table";y(e),gk.setItem(h,e,"table")}})]})}),"table"===g&&"details"!==r&&(0,Er.jsx)(em,{template:"table",children:(0,Er.jsx)(ip,{rows:a,sort:o,disabledRow:m,updateSort:d,children:p})}),"table"===g&&"details"===r&&(0,Er.jsx)(ip,{rows:a,sort:o,disabledRow:m,updateSort:d,children:p}),"cards"===g&&(0,Er.jsx)(Cp,{items:a,columnCount:i,className:l,children:p})]})}bk.defaultProps={rows:[],sort:[],type:void 0,columnCount:void 0,updateSort:()=>{}};const wk=bk;function kk(e){let{template:t,title:n,properties:a,prefixes:o,suffixes:s,formatter:r,className:i,style:l,isFixed:c,isSortable:m,isResizable:d,isDraggable:p,isShow:u,minWidth:h,width:f,onClick:g}=e;return(0,Er.jsx)(Er.Fragment,{children:{template:t,title:n,properties:a,prefixes:o,suffixes:s,formatter:r,className:i,style:l,isFixed:c,isSortable:m,isResizable:d,isDraggable:p,isShow:u,minWidth:h,width:f,onClick:g}})}kk.defaultProps={title:"",prefixes:[""],suffixes:[""],formatter:void 0,className:"",isDisabled:!1,isFixed:!1,isSortable:!1,isResizable:!1,isDraggable:!1,isShow:!0,minWidth:void 0,width:void 0,onClick:void 0};const xk=kk;function _k(e){let{value:t,width:n,title:a,description:o,suffix:s,color:r,className:i,formatter:l}=e;const{t:c}=zt();if(!n||n<=0)return null;const m=c(a||""),d=c(o||"")||m,p=null===l||void 0===l?void 0:l(t),u=s?" ".concat(c(s||"")):"",h=t?"".concat(n,"% (").concat(p).concat(u,") ").concat(d):"".concat(n,"% ").concat(d);return(0,Er.jsx)("div",{className:i,style:{width:"".concat(n,"%"),color:null===r||void 0===r?void 0:r.second,padding:m?"0 0 0 4px":"0",backgroundColor:null===r||void 0===r?void 0:r.first},title:h,children:m})}_k.defaultProps={value:0,width:0,title:"",description:"",suffix:"",color:null,className:"",formatter:e=>e};const Tk=_k,Sk="line_chart",Ck="line_chart_item",Ek="line_chart_sub_item";function jk(e){let{options:t,value:n,details:a,className:o}=e;if(0===n)return null;let s=Math.round((n||100)*(100/t.max));if(s<1)return null;if(s>100&&(s=100),!a)return(0,Er.jsx)("div",{className:"".concat(Sk," ").concat(o||""),children:(0,Er.jsx)(Tk,{value:n,width:s,suffix:t.suffix,formatter:t.formatter,className:Ck})});const r=sd(a,t).map((e=>(0,Er.jsx)(Tk,{title:e.title,value:e.value,width:e.width,color:t.color.get(e.title),suffix:t.suffix,formatter:t.formatter,description:e.description,className:Ek},e.title)));return(0,Er.jsx)("div",{className:"".concat(Sk," ").concat(o||""),children:(0,Er.jsx)("div",{className:Ck,style:{width:"".concat(s,"%")},children:r})})}jk.defaultProps={value:void 0,details:void 0,className:""};const Ak=jk;function Nk(e,t,n){return Math.max(...e.content.map((e=>n?e[t][n]||0:e[t]||0)))}function Dk(e,t){return Nk(e,t,"length")}function Ok(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;const{t:s}=zt();if(!t)return null;const[r,i,l]=[s("page.team.author.type.work"),s("page.team.author.type.dismissed"),s("page.team.author.type.staff")],c=s("page.team.author.worked"),m=s("page.team.author.losses"),d=ad({order:[c,m],suffix:"page.team.author.days"}),p=ad({max:Dk(t,"tasks"),suffix:"page.team.author.tasksSmall"}),u=ad({max:Nk(t,"commits")}),h=ad({order:kr.dataGrip.type.list});return(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:o,type:"print"===o?"cards":void 0,columnCount:"print"===o?3:void 0,children:[(0,Er.jsx)(xk,{isFixed:!0,template:qd.STRING,formatter:(e,t)=>t+1,width:40}),(0,Er.jsx)(xk,{isFixed:!0,template:qd.STRING,properties:"author",title:"page.team.pr.author",width:200}),(0,Er.jsx)(xk,{title:"page.team.author.status",formatter:e=>e.isStaff?l:e.isDismissed?i:r,template:e=>(0,Er.jsx)(Nd,{value:e}),width:100}),(0,Er.jsx)(xk,{isSortable:"company",title:"page.team.author.company",properties:"lastCompany",template:e=>(0,Er.jsx)(Nd,{value:e}),width:150}),(0,Er.jsx)(xk,{template:qd.STRING,properties:"firstCommit",title:"page.team.author.firstCommit",width:130,formatter:e=>qn(e.timestamp)}),(0,Er.jsx)(xk,{template:qd.STRING,properties:"lastCommit",title:"page.team.author.lastCommit",width:130,formatter:e=>qn(e.timestamp)}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,title:"page.team.author.daysAll",properties:"daysAll",formatter:e=>e||1,width:90}),(0,Er.jsx)(xk,{isSortable:"daysWorked",title:"page.team.author.workedLosses",minWidth:300,template:e=>(0,Er.jsx)(Ak,{options:d,details:e}),formatter:e=>({[c]:e.daysWorked,[m]:e.daysLosses})}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"tasks",formatter:e=>(null===e||void 0===e?void 0:e.length)||0}),(0,Er.jsx)(xk,{isSortable:!0,properties:"tasks",title:"page.team.author.tasks",minWidth:200,template:e=>(0,Er.jsx)(Ak,{options:p,value:e}),formatter:e=>(null===e||void 0===e?void 0:e.length)||0}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,title:"page.team.author.daysForTask",properties:"daysForTask",formatter:Qn,width:120}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,title:"page.team.author.scopes",properties:"scopes"}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"commits"}),(0,Er.jsx)(xk,{isSortable:!0,title:"page.team.author.commits",properties:"commits",minWidth:100,template:e=>(0,Er.jsx)(Ak,{options:u,value:e})}),(0,Er.jsx)(xk,{title:"page.team.author.types",properties:"types",width:400,template:e=>(0,Er.jsx)(Ak,{options:h,details:e})}),(0,Er.jsx)(xk,{template:qd.NUMBER,title:"page.team.author.moneyAll",properties:"moneyAll",formatter:Jn}),(0,Er.jsx)(xk,{template:qd.NUMBER,title:"page.team.author.moneyWorked",properties:"moneyWorked",formatter:Jn}),(0,Er.jsx)(xk,{template:qd.NUMBER,title:"page.team.author.moneyLosses",properties:"moneyLosses",formatter:Jn})]})}Ok.defaultProps={response:void 0};const Rk=Ok,Pk=un((e=>{var t;let{mode:n}=e;const{t:a}=zt(),o=kr.dataGrip.author.statistic;if(null===o||void 0===o||!o.length)return"print"!==n?(0,Er.jsx)(hm,{}):null;const s=null===(t=kr.dataGrip.recommendations.team)||void 0===t?void 0:t.byAuthor;return(0,Er.jsxs)(Er.Fragment,{children:["fullscreen"!==n&&(0,Er.jsx)(td,{mode:n,recommendations:s}),(0,Er.jsx)("br",{}),(0,Er.jsx)("br",{}),(0,Er.jsx)(Td,{}),(0,Er.jsx)(Im,{title:"page.team.author.title"}),(0,Er.jsxs)(Tm,{to:"response",loader:(e,t)=>Om({content:o,pagination:e,sort:t,mode:n}),watch:"".concat(n).concat(kr.hash),children:[(0,Er.jsx)(Rk,{mode:n,rowsForExcel:o}),(0,Er.jsx)(Dm,{})]}),(0,Er.jsxs)(em,{children:[(0,Er.jsx)(om,{children:(0,Er.jsx)(ji,{text:a("page.team.author.description1")})}),(0,Er.jsx)(om,{children:(0,Er.jsx)(ji,{text:a("page.team.author.description2")})})]})]})})),Ik=Pk,Lk="vertical_bar_scale",Fk="vertical_bar_scale_wrapper";const Mk=function(e){let{max:n,onChange:a}=e;const[o,s]=(0,t.useState)(null),[r,i]=(0,t.useState)(n);return(0,t.useEffect)((()=>{i(n),a(n)}),[n]),(0,Er.jsx)("div",{className:Fk,children:(0,Er.jsx)("input",{type:"range",min:1,max:n,value:r,className:Lk,onChange:e=>{const t=parseInt(e.target.value||"0",10)||0;i(t),clearTimeout(o),s(setTimeout((()=>{a(t)}),300))}})})},Wk="vertical_bar",Bk="vertical_bar_item",zk="vertical_bar_line",Uk="vertical_bar_line_text";const Hk=function(e){let{text:t,bottom:n}=e;return t?(0,Er.jsx)("div",{className:zk,style:{bottom:"".concat(n,"%")},children:(0,Er.jsx)("span",{className:Uk,children:t})}):null};const Gk=function(e){let{dots:n,selected:a,onClick:o}=e;const s=Math.max(...n.map((e=>e.value))),[r,i]=(0,t.useState)(s),l=100/n.length+"%",c=100/r,m=n.map(((e,t)=>{return(0,Er.jsx)("div",{className:Bk,style:{width:l,height:"".concat((n=e.value,n>r?100:n*c),"%"),backgroundColor:e.meta===a?"#ED675F":""},title:e.title,onClick:()=>{o&&o(e)}},"".concat(e.title,"_").concat(t));var n}));return(0,Er.jsxs)("div",{className:Wk,children:[(0,Er.jsx)(Mk,{max:s,onChange:i}),(0,Er.jsx)(Hk,{text:r,bottom:100}),r>10?(0,Er.jsx)(Hk,{text:r/2,bottom:50}):null,m]})};function Vk(e){var t,n;let{task:a,className:o}=e;if(!a)return null;const s=(null===Bn||void 0===Bn||null===(t=Bn.settings)||void 0===t||null===(n=t.linksPrefix)||void 0===n?void 0:n.task)||"/",r="#"===(null===a||void 0===a?void 0:a[0])?a.replace("#",""):a;return(0,Er.jsx)(Zk,{text:a,link:"".concat(s).concat(r),className:o})}Vk.defaultProps={task:"",className:""};const Kk=Vk;function $k(e){var t,n;let{prId:a,text:o,className:s}=e;if(!a)return null;const r=(null===Bn||void 0===Bn||null===(t=Bn.settings)||void 0===t||null===(n=t.linksPrefix)||void 0===n?void 0:n.task)||"/",i="#"===(null===a||void 0===a?void 0:a[0])?a.replace("#",""):a;return(0,Er.jsx)(Zk,{text:o||"PR",link:"".concat(r).concat(i),className:s})}$k.defaultProps={prId:"",text:"",className:""};const qk=$k,Yk="external_link";const Zk=function(e){let{link:t,text:n,className:a}=e;return(0,Er.jsx)(we,{to:t,target:"_blank",className:"".concat(Yk," ").concat(a||""),children:n})},Jk={day_info_wrapper:"day_info_wrapper",day_info_author:"day_info_author",day_info_date:"day_info_date",day_info_message:"day_info_message",day_info_link:"day_info_link",day_info_row:"day_info_row"};function Xk(e){let{commits:t}=e;const n=t.map((e=>(0,Er.jsxs)("div",{className:Jk.day_info_row,children:[(0,Er.jsx)("span",{className:Jk.day_info_date,children:Zn(e.date)}),(0,Er.jsx)("span",{className:Jk.day_info_message,children:e.message})]},e.date)));return(0,Er.jsx)(Er.Fragment,{children:n})}function Qk(e){let{tasks:t}=e;const n=Object.entries(t).map((e=>{var t;let[n,a]=e;const o=Ko.tasks.statisticByName.get(n),s=a[0].milliseconds,r=null===o||void 0===o||null===(t=o.prIds)||void 0===t?void 0:t.find((e=>Ko.pr.pr.get(e).dateMerge>=s));return(0,Er.jsxs)("div",{children:[(0,Er.jsxs)("div",{className:Jk.day_info_link,children:[(0,Er.jsx)(Kk,{task:n}),(0,Er.jsx)(qk,{prId:r})]}),(0,Er.jsx)(Xk,{commits:a})]},"".concat(r).concat(n))}));return(0,Er.jsx)(Er.Fragment,{children:n})}function ex(e){var t,n;let{day:a,order:o,events:s,timestamp:r}=e;const{t:i}=zt(),l=(null===s||void 0===s||null===(t=s.firstCommit)||void 0===t?void 0:t[r||""])||[],c=(null===s||void 0===s||null===(n=s.lastCommit)||void 0===n?void 0:n[r||""])||[];let m=0;const d=Object.entries(null===a||void 0===a?void 0:a.tasksByAuthor).sort(((e,t)=>o.indexOf(e[0])-o.indexOf(t[0]))).map((e=>{let[t,n]=e;m+=Object.keys(n).length;let a="";return l.includes(t)&&(a=i("page.team.month.first")),c.includes(t)&&(a=i("page.team.month.last")),(0,Er.jsxs)("div",{className:Jk.day_info,children:[(0,Er.jsx)("h3",{className:Jk.day_info_author,children:"".concat(t," ").concat(a)}),(0,Er.jsx)(Qk,{tasks:n})]},t)}));return(0,Er.jsx)("div",{className:Jk.day_info_wrapper,style:{columnCount:m>20?2:1},children:d})}ex.defaultProps={events:void 0,timestamp:void 0};const tx=ex;const nx=function(e){let{statistic:n}=e;const a=n.commitsByTimestampCounter.maxData,[o,s]=(0,t.useState)(a),r=n.allCommitsByTimestamp.map((e=>({title:"".concat(e.timestamp," - ").concat(e.commits," \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432"),value:e.commits,meta:e})));if(null===r||void 0===r||!r.length)return(0,Er.jsx)(hm,{});const[i,l]=Kn(a.timestamp),c=[{title:i,description:"page.common.commits.description",type:ta.FACT,arguments:{description:[l]}}];return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(td,{recommendations:c}),(0,Er.jsx)(Im,{title:"page.common.commits.title"}),(0,Er.jsx)(em,{template:"box",children:(0,Er.jsx)(Gk,{dots:r,selected:o,onClick:e=>{s(e.meta)}})}),(0,Er.jsx)("br",{}),(0,Er.jsx)("br",{}),(0,Er.jsx)(Im,{title:_e.Z.get("page.common.commits.title2",qn(null===o||void 0===o?void 0:o.timestamp),null===o||void 0===o?void 0:o.commits)}),(0,Er.jsx)(em,{template:"box",children:(0,Er.jsx)(tx,{day:o,order:kr.dataGrip.author.list})})]})},ax=un((()=>{const e=kr.dataGrip.timestamp.statistic;return(0,Er.jsx)(nx,{statistic:e})}));function ox(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;const{t:s}=zt();if(!t)return null;const[r,i,l]=[s("page.team.author.type.work"),s("page.team.author.type.dismissed"),s("page.team.author.type.staff")],c=s("page.team.author.worked"),m=s("page.team.author.losses"),d=ad({order:[c,m],suffix:"page.team.author.days"}),p=ad({suffix:"page.team.author.tasksSmall",order:kr.dataGrip.type.list});return(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:o,type:"print"===o?"cards":void 0,columnCount:"print"===o?3:void 0,children:[(0,Er.jsx)(xk,{isFixed:!0,template:qd.STRING,formatter:(e,t)=>t+1,width:40}),(0,Er.jsx)(xk,{isFixed:!0,template:qd.STRING,properties:"author",title:"page.team.pr.author",width:158}),(0,Er.jsx)(xk,{formatter:e=>e.isStaff?l:e.isDismissed?i:r,template:e=>(0,Er.jsx)(Nd,{value:e}),width:140}),(0,Er.jsx)(xk,{template:qd.STRING,properties:"firstCommit",width:130,formatter:e=>qn(e.timestamp)}),(0,Er.jsx)(xk,{template:qd.STRING,properties:"lastCommit",width:130,formatter:e=>qn(e.timestamp)}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"daysAll",formatter:e=>e||1,width:90}),(0,Er.jsx)(xk,{isSortable:"daysWorked",width:150,template:e=>(0,Er.jsx)(Ak,{options:d,details:e}),formatter:e=>({[c]:e.daysWorked,[m]:e.daysLosses})}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"tasks",formatter:e=>(null===e||void 0===e?void 0:e.length)||0,width:90}),(0,Er.jsx)(xk,{isSortable:!0,width:150,template:e=>(0,Er.jsx)(Ak,{options:p,details:e.types})}),(0,Er.jsx)(xk,{template:qd.NUMBER,title:"page.team.author.moneyAll",properties:"moneyAll",formatter:Jn}),(0,Er.jsx)(xk,{template:qd.NUMBER,title:"page.team.author.moneyWorked",properties:"moneyWorked",formatter:Jn}),(0,Er.jsx)(xk,{template:qd.NUMBER,title:"page.team.author.moneyLosses",properties:"moneyLosses",formatter:Jn})]})}ox.defaultProps={response:void 0};const sx=ox;function rx(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;const{t:s}=zt();if(!t)return null;const[r,i]=[s("page.team.company.active.yes"),s("page.team.company.active.no")],l=ad({max:Nk(t,"tasks"),suffix:"page.team.author.tasksSmall"}),c=ad({max:Nk(t,"totalDays"),suffix:"page.team.author.days"});return(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===o?"cards":void 0,columnCount:"print"===o?3:void 0,children:[(0,Er.jsx)(xk,{isFixed:!0,template:qd.DETAILS,width:40,formatter:e=>{const t=e.employments.map((e=>{var t,n,a;return null===kr||void 0===kr||null===(t=kr.dataGrip)||void 0===t||null===(n=t.author)||void 0===n||null===(a=n.statisticByName)||void 0===a?void 0:a[e]})).filter((e=>e));return(0,Er.jsx)(sx,{response:{content:t},mode:"details"})}}),(0,Er.jsx)(xk,{isFixed:!0,template:qd.STRING,properties:"company",width:200}),(0,Er.jsx)(xk,{title:"page.team.author.status",formatter:e=>e.isActive?r:i,template:e=>(0,Er.jsx)(Nd,{value:e}),width:140}),(0,Er.jsx)(xk,{template:qd.STRING,properties:"from",title:"page.team.author.firstCommit",width:130,formatter:qn}),(0,Er.jsx)(xk,{template:qd.STRING,properties:"to",title:"page.team.author.lastCommit",width:130,formatter:qn}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"totalDays",width:90}),(0,Er.jsx)(xk,{isSortable:!0,title:"page.team.author.daysAll",properties:"totalDays",width:150,template:e=>(0,Er.jsx)(Ak,{options:c,value:e})}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"tasks",width:90}),(0,Er.jsx)(xk,{isSortable:!0,title:"page.team.author.tasks",properties:"tasks",width:150,template:e=>(0,Er.jsx)(Ak,{options:l,value:e})}),(0,Er.jsx)(xk,{properties:"emptyCell",minWidth:40})]})}rx.defaultProps={response:void 0};const ix=rx;const lx=un((()=>{const e=kr.dataGrip.company.statistic,[t,n]=function(e){const t=e.map((e=>e.company));return[ad({order:t,limit:t.length>10?2:1,suffix:"page.team.company.employments.item"}),Object.fromEntries(e.map((e=>[e.company,e.employments.length])))]}(e),[a,o]=function(e){return[ad({order:Object.values(_d),limit:1,suffix:"page.team.company.daysChart.item"}),e.reduce(((e,t)=>(t.totalDays<183?pa(e,_d.HALF):t.totalDays<365?pa(e,_d.ONE):t.totalDays<547?pa(e,_d.HALF_ONE):t.totalDays<730?pa(e,_d.TWO):pa(e,_d.MORE),e)),{})]}(e);return(0,Er.jsxs)(em,{children:[(0,Er.jsx)(om,{children:(0,Er.jsx)(kd,{title:"page.team.company.employments.title",options:t,details:n})}),(0,Er.jsx)(om,{children:(0,Er.jsx)(kd,{title:"page.team.company.daysChart.title",options:a,details:o})})]})})),cx=un((e=>{let{mode:t}=e;const n=kr.dataGrip.company.statistic;return null!==n&&void 0!==n&&n.length?(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(lx,{}),(0,Er.jsx)(Im,{title:"page.team.company.title"}),(0,Er.jsxs)(Tm,{to:"response",loader:(e,a)=>Om({content:n,pagination:e,sort:a,mode:t}),watch:"".concat(t).concat(kr.hash),children:[(0,Er.jsx)(ix,{mode:t,rowsForExcel:n}),(0,Er.jsx)(Dm,{})]})]}):"print"!==t?(0,Er.jsx)(hm,{}):null}));function mx(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;if(!t)return null;const s=ad({max:Dk(t,"employments")});return(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===o?"cards":void 0,columnCount:"print"===o?3:void 0,fullScreenMode:"countries",children:[(0,Er.jsx)(xk,{isFixed:!0,template:qd.DETAILS,width:40,formatter:e=>{const t=e.employments.map((e=>{var t,n,a;return null===kr||void 0===kr||null===(t=kr.dataGrip)||void 0===t||null===(n=t.author)||void 0===n||null===(a=n.statisticByName)||void 0===a?void 0:a[e]})).filter((e=>e));return(0,Er.jsx)(sx,{response:{content:t},mode:"details"})}}),(0,Er.jsx)(xk,{isFixed:!0,template:qd.STRING,properties:"country",title:"page.team.country.table.country",width:200}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"employments",formatter:e=>e.length}),(0,Er.jsx)(xk,{isSortable:!0,properties:"employments",width:200,template:e=>(0,Er.jsx)(Ak,{options:s,value:e.length})}),(0,Er.jsx)(xk,{template:qd.STRING,properties:"employments",minWidth:300,title:"page.team.country.table.employments",formatter:e=>e.join(", ")})]})}mx.defaultProps={response:void 0};const dx=mx;const px=function(e){let{authors:t,countries:n}=e;const[a,o]=function(e){const t=e.map((e=>e.country));return[ad({order:t,limit:t.length>10?2:1,suffix:"page.team.country.chart.item"}),Object.fromEntries(e.map((e=>[e.country,e.employments.length])))]}(n),[s,r]=function(e){const t=e.reduce(((e,t)=>(pa(e,t.lastCommit.timezone.replace(":",".")),e)),{});return[ad({order:Object.keys(t).sort(),limit:5,suffix:"page.team.country.chart.item"}),t]}(t);return(0,Er.jsxs)(em,{children:[(0,Er.jsx)(om,{children:(0,Er.jsx)(kd,{title:"page.team.country.pieByDomain.title",options:a,details:o})}),(0,Er.jsx)(om,{children:(0,Er.jsx)(kd,{title:"page.team.country.pieByTimezone.title",options:s,details:r})})]})},ux="ui_kit_select_value",hx="ui_kit_select_search",fx="ui_kit_select_option",gx="ui_kit_select_container",yx="ui_kit_select_list",vx="ui_kit_select_option_focus";const bx=function(e){let{value:t,className:n,onClick:a}=e;return(0,Er.jsx)("div",{className:"".concat(ux," ").concat(n||""),onClick:a,children:t})};const wx=function(e){let{value:n,placeholder:a,className:o,onChange:s,onClose:r,onKeyDown:i}=e;const l=(0,t.useRef)(null),[c,m]=(0,t.useState)(0);return(0,t.useEffect)((()=>{setTimeout((()=>{null!==l&&void 0!==l&&l.current&&l.current.focus()}),250)}),[]),(0,Er.jsx)("input",{ref:l,type:"text",value:n,placeholder:a,className:"".concat(hx," ").concat(o||""),onChange:e=>{clearTimeout(c),s(e.target.value)},onBlur:()=>{clearTimeout(c);const e=setTimeout((()=>{r()}),250);m(e)},onFocus:()=>{clearTimeout(c)},onKeyDown:()=>{},onKeyUp:e=>{i({ArrowUp:"up",ArrowDown:"down",Enter:"enter"}[e.key||""]||"")}})};const kx=function(e){let{option:t,focus:n,className:a,onClick:o}=e,s=[fx];return a&&s.push(a),n&&s.push(vx),(0,Er.jsx)("li",{className:s.join(" "),onClick:o,children:t.title})};const xx=function(e){let{value:n,options:a,search:o,keyCode:s,className:r,setKeyCode:i,onClick:l}=e;const[c,m]=(0,t.useState)(-1);console.log(n);const d=o?o.toLowerCase():"",p=d?null===a||void 0===a?void 0:a.filter((e=>{var t;return-1!==(null===e||void 0===e||null===(t=e._textForSearch)||void 0===t?void 0:t.indexOf(d))})):a;(0,t.useEffect)((()=>{if(s){if("down"===s){let e=c+1;e>=p.length&&(e=0),m(e)}if("up"===s){let e=c-1;e<0&&(e=p.length-1),m(e)}if("enter"===s){const e=p[c];l(e,c)}i("")}}),[s]),(0,t.useEffect)((()=>{m(-1)}),[o]);const u=null===p||void 0===p?void 0:p.map(((e,t)=>(0,Er.jsx)(kx,{focus:t===c,option:e,className:r,onClick:()=>{l(e.source,t)}},e.id)));return u.length?(0,Er.jsx)("ul",{className:"".concat(yx," scroll_y ").concat(r||""),children:u}):null},_x="ui_kit_select_icon",Tx="ui_kit_select_icon_button",Sx="ui_kit_select_icon_button_open";const Cx=function(e){let{openSearch:t,setOpenSearch:n}=e;const a=[Tx];return t&&a.push(Sx),(0,Er.jsx)("div",{className:_x,children:(0,Er.jsx)("img",{src:"./assets/list/arrow.svg",className:a.join(" "),onClick:()=>n(!t)})})};function Ex(e){return(null===e||void 0===e?void 0:e.title)||(null===e||void 0===e?void 0:e.name)||(null===e||void 0===e?void 0:e.label)||(null===e||void 0===e?void 0:e.description)||(null===e||void 0===e?void 0:e.value)||(null===e||void 0===e?void 0:e.id)||(null===e||void 0===e?void 0:e.uuid)||(null===e||void 0===e?void 0:e.key)||JSON.stringify(e)}function jx(e,t){const n=typeof e;return"boolean"===n?e?"true":"false":"number"===n?"".concat(e):"string"===n?e:e?Array.isArray(e)?e.map(t).join(", "):t(e):""}function Ax(e){return jx(e,Ex)}function Nx(e,t){return jx(e,(e=>function(e,t){var n,a,o,s;return null!==(n=null!==(a=null!==(o=null!==(s=null===e||void 0===e?void 0:e.id)&&void 0!==s?s:null===e||void 0===e?void 0:e.uuid)&&void 0!==o?o:null===e||void 0===e?void 0:e.key)&&void 0!==a?a:t)&&void 0!==n?n:Ex(e)}(e,t)))}function Dx(e,t){const n=Ax(e);return{id:Nx(e,t),title:n,_textForSearch:(null===n||void 0===n?void 0:n.toLowerCase())||"",source:e}}const Ox=function(e){let{value:n,options:a,className:o,onChange:s}=e;const[r,i]=(0,t.useState)(!1),[l,c]=(0,t.useState)(""),[m,d]=(0,t.useState)(""),p=(0,t.useMemo)((()=>(null===a||void 0===a?void 0:a.map(Dx))||[]),[a]),u=(0,t.useMemo)((()=>Ax(a.find((e=>e.id===n)))||Ax(n)),[n]);return(0,Er.jsxs)("div",{className:"".concat(gx," ").concat(o||""),children:[r?null:(0,Er.jsx)(bx,{value:u,options:p,className:o,onClick:()=>i(!0)}),r?(0,Er.jsx)(wx,{value:l,placeholder:u,className:o,onChange:c,onKeyDown:d,onClose:()=>{c(""),i(!1)}}):null,(0,Er.jsx)(Cx,{openSearch:r,setOpenSearch:i}),r?(0,Er.jsx)(xx,{value:n,options:p,search:l,keyCode:m,setKeyCode:d,className:o,onClick:e=>{c(""),i(!1),s&&s(null===e||void 0===e?void 0:e.id)}}):null]})};function Rx(e){var t,n;let{className:a,value:o,options:s,reverse:r,onChange:i}=e,l=s.map((e=>e.id)).indexOf(o);-1===l&&(l=0);const c=l<=0,m=l>=s.length-1,d=null===(t=s[l-1])||void 0===t?void 0:t.id,p=null===(n=s[l+1])||void 0===n?void 0:n.id;return(0,Er.jsxs)("div",{className:"".concat(Zl," ").concat(a||""),children:[(0,Er.jsx)(Or,{mode:"second",className:Jl,disabled:r?m:c,onClick:()=>{i(r?p:d)},children:"\xab"}),Pr?(0,Er.jsx)(Ql,{value:o,options:s,onChange:i}):(0,Er.jsx)(Ox,{value:o,options:s,onChange:i}),(0,Er.jsx)(Or,{mode:"second",className:Xl,disabled:r?c:m,onClick:()=>{i(r?d:p)},children:"\xbb"})]})}Rx.defaultProps={reverse:!1,className:""};const Px=Rx,Ix="ui_kit_checkbox",Lx="ui_kit_checkbox_box",Fx="ui_kit_checkbox_title";const Mx=function(e){let{title:t,description:n,help:a,error:o,className:s,value:r,onChange:i}=e;const{t:l}=zt(),c="checkbox-".concat(Math.ceil(1e4*Math.random()));return(0,Er.jsx)($l,{description:n,help:a,error:o,className:s,children:(0,Er.jsxs)("div",{className:Ix,children:[(0,Er.jsx)("input",{type:"checkbox",id:c,checked:!!r,className:Lx,onChange:()=>{i(!r)}}),(0,Er.jsx)("label",{htmlFor:c,className:Fx,children:l(t||"")})]})})};const Wx="team_country_filter",Bx="team_country_filter_checkbox",zx="team_country_filter_select",Ux=un((e=>{let{filters:n,onChange:a}=e;const o=kr.dataGrip.company.statistic,s=(0,t.useMemo)((()=>function(e){const t=e.map((e=>({id:e.company,title:e.company})));return[{id:"",title:(0,_e.t)("page.common.filter.allUsers")},{id:Math.random(),title:"Unknown"},...t]}(o)),o),r=(e,t)=>{a({...n,[e]:t,hash:Math.random()})};return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:"common.filters"}),(0,Er.jsxs)("div",{className:Wx,children:[(0,Er.jsx)(Px,{title:"page.team.tree.filters.author",className:zx,value:n.company,options:s,onChange:e=>r("company",e)}),(0,Er.jsx)(Mx,{title:"page.team.country.filters.active",className:Bx,value:n.isActive,onChange:()=>r("isActive",!n.isActive)}),(0,Er.jsx)(Mx,{title:"page.team.country.filters.dismissed",className:Bx,value:n.isDismissed,onChange:()=>r("isDismissed",!n.isDismissed)}),(0,Er.jsx)(Mx,{title:"page.team.country.filters.staff",className:Bx,value:n.isStaff,onChange:()=>r("isStaff",!n.isStaff)})]})]})}));function Hx(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;return t?(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:o,type:"print"===o?"cards":void 0,columnCount:"print"===o?3:void 0,children:[(0,Er.jsx)(xk,{isSortable:!0,template:qd.STRING,title:"page.team.country.travel.date",properties:"from",formatter:qn,width:142}),(0,Er.jsx)(xk,{template:qd.STRING,width:40,formatter:()=>"\u2708\ufe0f"}),(0,Er.jsx)(xk,{template:qd.STRING,width:72,properties:"timezone"}),(0,Er.jsx)(xk,{template:qd.STRING,properties:"country",title:"page.team.country.travel.country"})]}):null}Hx.defaultProps={response:void 0};const Gx=Hx;function Vx(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;if(!t)return null;const s=ad({max:Dk(t,"country"),suffix:"page.team.country.travel.flyItem"});return(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===o?"cards":void 0,columnCount:"print"===o?3:void 0,fullScreenMode:"travel",children:[(0,Er.jsx)(xk,{isFixed:!0,template:qd.DETAILS,width:40,formatter:e=>{const t=null===e||void 0===e?void 0:e.country;return(0,Er.jsx)(Gx,{response:{content:t},mode:"details"})}}),(0,Er.jsx)(xk,{isFixed:!0,template:qd.STRING,properties:"author",title:"page.team.country.travel.author",width:200}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"country",formatter:e=>e.length-1}),(0,Er.jsx)(xk,{isSortable:!0,properties:"country",title:"page.team.country.travel.fly",width:200,template:e=>(0,Er.jsx)(Ak,{options:s,value:e}),formatter:e=>(null===e||void 0===e?void 0:e.length)||0}),(0,Er.jsx)(xk,{template:qd.STRING,title:"page.team.country.travel.path",formatter:e=>e.country.map((e=>e.country)).join(" \u2708\ufe0f ")})]})}Vx.defaultProps={response:void 0};const Kx=Vx,$x="time_zone_map",qx="time_zone_map_gap",Yx="time_zone_map_points",Zx="time_zone_map_point",Jx="time_zone_map_point_hide",Xx="time_zone_map_point_active",Qx="time_zone_map_point_dismissed",e_="time_zone_map_point_s",t_="time_zone_map_point_m",n_="time_zone_map_point_l",a_={p1300:"time_zone_map_point_p1300",p1200:"time_zone_map_point_p1200",p1100:"time_zone_map_point_p1100",p1000:"time_zone_map_point_p1000",p1030:"time_zone_map_point_p1030",p0930:"time_zone_map_point_p0930",p0900:"time_zone_map_point_p0900",p0800:"time_zone_map_point_p0800",p0700:"time_zone_map_point_p0700",p0630:"time_zone_map_point_p0630",p0600:"time_zone_map_point_p0600",p0545:"time_zone_map_point_p0545",p0430:"time_zone_map_point_p0430",p0530:"time_zone_map_point_p0530",p0500:"time_zone_map_point_p0500",p0400:"time_zone_map_point_p0400",p0330:"time_zone_map_point_p0330",p0300:"time_zone_map_point_p0300",p0200:"time_zone_map_point_p0200",p0100:"time_zone_map_point_p0100",p0000:"time_zone_map_point_p0000",m0100:"time_zone_map_point_m0100",m0200:"time_zone_map_point_m0200",m0300:"time_zone_map_point_m0300",m0330:"time_zone_map_point_m0330",m0400:"time_zone_map_point_m0400",m0500:"time_zone_map_point_m0500",m0600:"time_zone_map_point_m0600",m0700:"time_zone_map_point_m0700",m0800:"time_zone_map_point_m0800",m0900:"time_zone_map_point_m0900",m1000:"time_zone_map_point_m1000",m1100:"time_zone_map_point_m1100",m1200:"time_zone_map_point_m1200"};function o_(e){let{timezone:t,authors:n,maxValue:a}=e;const o=function(e){const t=(e||"").replace("+","p").replace("-","m").replace(":","");return a_[t]||Jx}(t),s=function(e){let t=!1;for(let n=0,a=e.length;n<a;n++){const a=kr.dataGrip.author.statisticByName[e[n]];if(null===a||void 0===a||!a.isStaff){if(null===a||void 0===a||!a.isDismissed)return Xx;null!==a&&void 0!==a&&a.isDismissed&&(t=!0)}}return t?Qx:""}(n),r=(i=n.length)<.3*(l=a)||l<=10?e_:i<.7*l||l<=100?t_:n_;var i,l;return(0,Er.jsx)("div",{title:n.join(", "),className:"".concat(Zx," ").concat(o," ").concat(s," ").concat(r),children:n.length})}o_.defaultProps={timezone:"",authors:[]};const s_=o_;const r_=function(e){let{authors:t=[]}=e;const n=function(e){return e.reduce(((e,t)=>{const n=t.lastCommit.timezone;return e[n]||(e[n]=[]),e[n].push(t.author),e}),{})}(t),a=Object.entries(n),o=Dk({content:a},"1"),s=a.map((e=>(0,Er.jsx)(s_,{timezone:e[0],authors:e[1],maxValue:o},e[0])));return(0,Er.jsxs)("div",{className:$x,children:[(0,Er.jsx)("img",{src:"./assets/map/2x1.png",className:qx}),(0,Er.jsx)("div",{style:{backgroundImage:"url(./assets/map/map.png)"},className:Yx,children:s})]})};const i_=function(e){let{authors:t}=e;return(0,Er.jsxs)(nm,{children:[(0,Er.jsx)(Im,{title:"page.team.country.byTimezone"}),(0,Er.jsx)(r_,{authors:t})]})},l_=un((e=>{let{mode:n}=e;const[a,o]=(0,t.useState)({hash:Math.random(),isActive:!0,isDismissed:!0,isStaff:!0,company:""}),s=kr.dataGrip.author.statistic,r=(0,t.useMemo)((()=>s.filter(function(e){return t=>(!e.company||t.lastCompany===e.company)&&!(!e.isStaff&&t.isStaff)&&!!(e.isActive||t.isDismissed||t.isStaff)&&!(!e.isDismissed&&t.isDismissed&&!t.isStaff)}(a))),[s,a.hash]),i=kr.dataGrip.country.statistic,l=(0,t.useMemo)((()=>i.map(function(e){const t=e.reduce(((e,t)=>(e.set(t.author,!0),e)),new Map);return e=>{const n=e.employments.filter((e=>t.has(e)));return n.length?{...e,employments:n}:null}}(r)).filter((e=>e))),[i,a.hash]),c=(0,t.useMemo)((()=>r.filter((e=>{var t;return null===e||void 0===e||null===(t=e.country)||void 0===t?void 0:t.length})).sort(((e,t)=>{var n,a;return(null===t||void 0===t||null===(n=t.country)||void 0===n?void 0:n.length)-(null===e||void 0===e||null===(a=e.country)||void 0===a?void 0:a.length)}))),[r,a.hash]),m=!dl.isOpen||"countries"===dl.mode,d=(!dl.isOpen||"travel"===dl.mode)&&c.length;return null!==i&&void 0!==i&&i.length?(0,Er.jsxs)(Er.Fragment,{children:[!dl.isOpen&&(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Ux,{filters:a,onChange:o}),(0,Er.jsx)(i_,{authors:r}),(0,Er.jsx)(px,{authors:r,countries:l})]}),m?(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:"page.team.country.table.title"}),(0,Er.jsxs)(Tm,{to:"response",loader:(e,t)=>Om({content:l,pagination:e,sort:t,mode:n}),watch:"".concat(n).concat(kr.hash).concat(a.hash),children:[(0,Er.jsx)(dx,{mode:n,rowsForExcel:l}),(0,Er.jsx)(Dm,{})]})]}):null,d?(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:"page.team.country.travel.title"}),(0,Er.jsxs)(Tm,{to:"response",loader:(e,t)=>Om({content:c,pagination:e,sort:t,mode:n}),watch:"".concat(n).concat(kr.hash).concat(a.hash),children:[(0,Er.jsx)(Kx,{mode:n,rowsForExcel:l}),(0,Er.jsx)(Dm,{})]})]}):null]}):"print"!==n?(0,Er.jsx)(hm,{}):null})),c_=l_;const m_=function(e){let{statistic:n}=e;const a=kr.fileGrip.files.list,o=n.changesByTimestampCounter.maxData,[s,r]=(0,t.useState)(o),i=n.allCommitsByTimestamp.map((e=>({title:"".concat(e.timestamp," - ").concat(e.addedAndChanges," \u0441\u0442\u0440\u043e\u043a \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u0438"),value:e.addedAndChanges,meta:e})));if(null===i||void 0===i||!i.length||null===a||void 0===a||!a.length)return(0,Er.jsx)(hm,{});const[l,c]=Kn(o.timestamp),m=[{title:l,description:" (".concat(c,") \u0431\u044b\u043b\u043e \u0432\u043b\u0438\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439."),type:ta.FACT,arguments:{description:[c]}}];return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(td,{recommendations:m}),(0,Er.jsx)(Im,{title:"\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0438\u0437\u043c\u0435\u043d\u0451\u043d\u043d\u044b\u0445 \u0441\u0442\u0440\u043e\u043a \u043f\u043e \u0434\u043d\u044f\u043c"}),(0,Er.jsx)(em,{template:"box",children:(0,Er.jsx)(Gk,{dots:i,selected:s,onClick:e=>{r(e.meta)}})}),(0,Er.jsx)("br",{}),(0,Er.jsx)("br",{}),(0,Er.jsx)(Im,{title:"".concat(qn(null===s||void 0===s?void 0:s.timestamp)," \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u0438 ").concat((null===s||void 0===s?void 0:s.addedAndChanges)||"_"," \u0441\u0442\u0440\u043e\u043a")}),(0,Er.jsx)(em,{template:"box",children:(0,Er.jsx)(tx,{day:s,order:kr.dataGrip.author.list})})]})},d_=un((()=>{const e=kr.dataGrip.timestamp.statistic;return(0,Er.jsx)(m_,{statistic:e})})),p_={hours_chart_user:"hours_chart_user",hours_chart_title:"hours_chart_title",hours_chart_data:"hours_chart_data",hours_chart_day:"hours_chart_day",hours_chart_day_time:"hours_chart_day_time",hours_chart_day_name:"hours_chart_day_name",hours_chart_hour:"hours_chart_hour",hours_chart_day_time_mm:"hours_chart_day_time_mm"};const u_=function(){const e=new Array(25).fill(1).map(((e,t)=>t?(0,Er.jsxs)("div",{className:p_.hours_chart_day_time,children:[(0,Er.jsx)("span",{className:p_.hours_chart_day_time_hh,children:$n(t-1)}),(0,Er.jsx)("span",{className:p_.hours_chart_day_time_mm,children:":00"})]},t):(0,Er.jsx)("div",{className:p_.hours_chart_day_name},t)));return(0,Er.jsx)(Er.Fragment,{children:e})};const h_=function(e){let{week:t,day:n,max:a}=e;const o=t.map(((e,t)=>{const o=function(e,t){const n=100*(e||0)/t;return(n-n%1)/100}(e,a),s=o>.2?"#FFFFFF":"#CBCBCD",r=n>4||t<7||t>20?"237, 103, 95":"65, 98, 181";return(0,Er.jsx)("div",{className:p_.hours_chart_hour,style:{color:s,backgroundColor:"rgba(".concat(r,", ").concat(o,")")},children:e||""},t)}));return(0,Er.jsx)(Er.Fragment,{children:o})},f_="hours_chart_legend",g_="hours_chart_legend_item",y_="hours_chart_legend_work",v_="hours_chart_legend_weekend",b_="hours_chart_legend_count",w_="hours_chart_legend_title";const k_=function(){const{t:e}=zt();return(0,Er.jsxs)("div",{className:f_,children:[(0,Er.jsxs)("div",{className:g_,children:[(0,Er.jsx)("div",{className:y_}),(0,Er.jsx)("div",{className:w_,children:e("uiKit.hoursChart.work")})]}),(0,Er.jsxs)("div",{className:g_,children:[(0,Er.jsx)("div",{className:v_}),(0,Er.jsx)("div",{className:w_,children:e("uiKit.hoursChart.weekend")})]}),(0,Er.jsxs)("div",{className:g_,children:[(0,Er.jsx)("div",{className:b_,children:"42"}),(0,Er.jsx)("div",{className:w_,children:e("uiKit.hoursChart.days")})]})]})};const x_=function(e){let{statistic:t}=e;const n=t.commitsByDayAndHour.map(((e,n)=>(0,Er.jsxs)("div",{className:p_.hours_chart_day,children:[(0,Er.jsx)("div",{className:p_.hours_chart_day_name,children:Vn(n,"short")}),(0,Er.jsx)(h_,{week:e,day:n,max:t.commitsByDayAndHourTotal[8]})]},n)));return(0,Er.jsxs)("div",{className:p_.hours_chart_user,children:[(0,Er.jsxs)("div",{className:p_.hours_chart_data,children:[(0,Er.jsx)("div",{className:p_.hours_chart_day,children:(0,Er.jsx)(u_,{})}),n]}),(0,Er.jsx)(k_,{})]})},__=un((e=>{var t;let{mode:n}=e;const a=kr.dataGrip.team.statistic,o=null===(t=kr.dataGrip.recommendations.team)||void 0===t?void 0:t.byHour;return(0,Er.jsxs)(Er.Fragment,{children:["fullscreen"!==n&&(0,Er.jsx)(td,{mode:n,recommendations:o}),(0,Er.jsx)(Im,{title:"page.team.hours.title"}),(0,Er.jsx)(em,{template:"table",children:(0,Er.jsx)(x_,{statistic:a})})]})})),T_=__,S_="candy",C_="candy_item",E_="candy_title",j_="candy_line",A_="candy_value",N_="candy_prefix",D_="candy_dot";const O_=function(e){let{dots:t}=e;const n=100/Math.max(...t.map((e=>e.value))),a=t.map((e=>{return(0,Er.jsxs)("div",{className:C_,children:[(0,Er.jsx)("div",{className:E_,children:e.title}),(0,Er.jsxs)("div",{className:j_,children:[(0,Er.jsx)("div",{className:N_,children:e.value}),(0,Er.jsx)("div",{className:A_,style:{width:"".concat((t=e.value,t*n),"%"),backgroundColor:e.color||""}}),(0,Er.jsx)("div",{className:D_,style:{backgroundColor:e.color||""}})]})]},e.title);var t}));return(0,Er.jsx)("div",{className:S_,children:a})};const R_=function(e){let{statistic:t,mode:n}=e;const a="print"===n?20:40,o=t.slice(0,a).map((e=>({title:e[0],value:e[1]})));if(null===o||void 0===o||!o.length)return(0,Er.jsx)(hm,{});const s=[{title:o[0].title,description:"page.common.words.description",type:ta.FACT,arguments:{description:[o[0].value]}}];return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(td,{mode:n,recommendations:s}),(0,Er.jsx)(Im,{title:"page.common.words.title"}),(0,Er.jsx)(em,{template:"table",children:(0,Er.jsx)(O_,{dots:o})})]})},P_=un((e=>{let{mode:t}=e;const n=kr.dataGrip.team.statistic.wordStatistics;return(0,Er.jsx)(R_,{mode:t,statistic:n})}));function I_(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;if(!t)return null;const s=ad({order:kr.dataGrip.type.list}),r=ad({order:kr.dataGrip.author.list});return(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===o?"cards":void 0,columnCount:"print"===o?3:void 0,children:[(0,Er.jsx)(xk,{isFixed:!0,template:qd.STRING,title:"page.team.scope.scope",properties:"scope",width:200}),(0,Er.jsx)(xk,{template:qd.NUMBER,title:"page.team.scope.days",properties:"days"}),(0,Er.jsx)(xk,{template:qd.NUMBER,title:"page.team.scope.authorsDays",properties:"authors",formatter:e=>Object.keys(e).map((t=>e[t].days||0)).reduce(((e,t)=>e+t),0)}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,title:"page.team.scope.tasks",properties:"tasks",formatter:e=>(null===e||void 0===e?void 0:e.length)||0}),(0,Er.jsx)(xk,{template:qd.NUMBER,title:"page.team.scope.commits",properties:"commits"}),(0,Er.jsx)(xk,{title:"page.team.scope.types",properties:"types",minWidth:200,template:e=>(0,Er.jsx)(Ak,{options:s,details:e})}),(0,Er.jsx)(xk,{title:"page.team.scope.authors",properties:"authors",minWidth:200,formatter:e=>Object.fromEntries(Object.keys(e).map((t=>{var n;return[t,(null===(n=e[t])||void 0===n?void 0:n.commits)||0]}))),template:e=>(0,Er.jsx)(Ak,{options:r,details:e})}),(0,Er.jsx)(xk,{template:qd.NUMBER,title:"page.team.scope.cost",properties:"cost",formatter:Jn})]})}I_.defaultProps={response:void 0};const L_=un((e=>{var t;let{mode:n}=e;const a=kr.dataGrip.scope.statistic;if((null===a||void 0===a?void 0:a.length)<2)return"print"!==n?(0,Er.jsx)(hm,{}):null;const o=null===(t=kr.dataGrip.recommendations.team)||void 0===t?void 0:t.byScope;return(0,Er.jsxs)(Er.Fragment,{children:["fullscreen"!==n&&(0,Er.jsx)(td,{mode:n,recommendations:o}),(0,Er.jsx)(Im,{title:"page.team.scope.title"}),(0,Er.jsxs)(Tm,{to:"response",loader:e=>Om({content:a,pagination:e,mode:n}),watch:"".concat(n).concat(kr.hash),children:[(0,Er.jsx)(I_,{mode:n,rowsForExcel:a}),(0,Er.jsx)(Dm,{})]})]})})),F_=L_,M_="tempo",W_="tempo_wrapper",B_="tempo_column",z_="tempo_column_wrapper",U_="tempo_header",H_="tempo_author",G_="tempo_header_title",V_="tempo_header_day";const K_=function(e){let{dayInfo:t}=e;return(0,Er.jsxs)("div",{className:U_,children:[(0,Er.jsx)("p",{className:G_,children:qn(null===t||void 0===t?void 0:t.timestamp)}),(0,Er.jsx)("p",{className:V_,children:Vn(null===t||void 0===t?void 0:t.day,"long")})]})};const $_=function(e){let{name:t}=e;return(0,Er.jsx)("div",{className:H_,children:t||""})},q_="tempo_task",Y_="tempo_task_wrapper",Z_="tempo_task_header",J_="tempo_task_value",X_="tempo_task_title",Q_="tempo_task_tag",eT="tempo_task_tags",tT="tempo_task_commits",nT="tempo_task_hours",aT="tempo_task_icon";function oT(e){return"".concat($n(e.hours),":").concat($n(e.minutes))}function sT(e){const t=e[0],n=e[e.length-1];return t!==n?"c ".concat(oT(t)," \u0434\u043e ").concat(oT(n)):"\u0434\u043e ".concat(oT(t))}function rT(e){const t=new Set(e.map((e=>e.type))),n=Array.from(t).filter((e=>e)).map((e=>(0,Er.jsx)("p",{className:Q_,children:e},e)));return(0,Er.jsx)(Er.Fragment,{children:n})}function iT(e){var t;let{title:n,commits:a}=e;const{t:o}=zt(),s=Ko.tasks.statisticByName.get(n),r=a[0].milliseconds,i=null===s||void 0===s||null===(t=s.prIds)||void 0===t?void 0:t.find((e=>Ko.pr.pr.get(e).dateMerge>=r));return(0,Er.jsxs)("div",{className:q_,children:[(0,Er.jsxs)("div",{className:Z_,children:[(0,Er.jsxs)("div",{children:[n?(0,Er.jsx)(Kk,{task:n}):"\u2014",(0,Er.jsx)(qk,{prId:i})]}),(0,Er.jsx)("div",{className:eT,children:rT(a)})]}),(0,Er.jsxs)("figure",{className:tT,children:[(0,Er.jsxs)("figure",{children:[(0,Er.jsx)("img",{src:"./assets/chart/commit.svg",className:aT}),(0,Er.jsx)("figcaption",{className:J_,children:a.length})]}),(0,Er.jsx)("figcaption",{className:X_,children:o("page.team.day.commits")})]}),(0,Er.jsxs)("figure",{className:nT,children:[(0,Er.jsxs)("figure",{children:[(0,Er.jsx)("img",{src:"./assets/chart/clock.svg",className:aT}),(0,Er.jsx)("figcaption",{className:J_,children:sT(a)})]}),(0,Er.jsx)("figcaption",{className:X_,children:o("page.team.day.activity")})]})]},n)}const lT=function(e){let{tasks:t}=e;const n=Object.entries(t).map((e=>{let[t,n]=e;return(0,Er.jsx)(iT,{title:t,commits:n},t)}));return(0,Er.jsx)("div",{className:Y_,children:n})},cT="tempo_chart",mT="tempo_chart_dashboard",dT="tempo_chart_dot",pT="tempo_chart_legend",uT="tempo_chart_time";const hT=function(e){let{tasks:t}=e;const n=Object.values(t).flat(1).reduce(((e,t)=>(e[t.hours]+=t.changes+t.added+t.removed,e)),new Array(24).fill(0)).map(((e,t)=>{if(!e)return null;const n=4.166666666666667*t,a=Math.min(80,e/1.5);return(0,Er.jsx)("div",{className:"".concat(dT),title:"".concat(e," \u0441\u0442\u0440\u043e\u043a \u0441 ").concat($n(t),":00 \u0434\u043e ").concat($n(t+1),":00"),style:{left:"".concat(n,"%"),height:"".concat(a,"%")}},t)}));return(0,Er.jsxs)("div",{className:cT,children:[(0,Er.jsx)("div",{className:mT,children:n}),(0,Er.jsxs)("div",{className:pT,children:[(0,Er.jsx)("span",{className:uT,children:"00:00"}),(0,Er.jsx)("span",{className:uT,children:"06:00"}),(0,Er.jsx)("span",{className:uT,children:"12:00"}),(0,Er.jsx)("span",{className:uT,children:"18:00"}),(0,Er.jsx)("span",{className:uT,children:"00:00"})]})]})};function fT(e){let{dayInfo:t,order:n,author:a}=e;const o=Object.entries((null===t||void 0===t?void 0:t.tasksByAuthor)||{}).sort(((e,t)=>n.indexOf(e[0])-n.indexOf(t[0]))).filter((e=>{let[t]=e;return!a||t===a})).map((e=>{let[t,n]=e;return(0,Er.jsxs)("div",{children:[a?null:(0,Er.jsx)($_,{name:t}),(0,Er.jsx)(hT,{tasks:n}),(0,Er.jsx)(lT,{tasks:n})]},t)}));return(0,Er.jsxs)("div",{className:B_,children:[(0,Er.jsx)(K_,{dayInfo:t}),(0,Er.jsx)("div",{className:"".concat(z_," scroll_y"),children:o.length?o:(0,Er.jsx)(hm,{icon:"./assets/cards/commits.png",message:"\u0412 \u044d\u0442\u043e\u0442 \u0434\u0435\u043d\u044c \u0443 \u044d\u0442\u043e\u0433\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430 \u043d\u0435 \u0431\u044b\u043b\u043e \u043d\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430."})})]})}fT.defaultProps={order:[],author:""};const gT=fT;gT.defaultProps={order:[],author:""};const yT=function(e){let{days:n,author:a,order:o}=e;const[s,r]=(0,t.useState)({}),i=(0,t.useRef)();(0,t.useEffect)((()=>{const e=null===i||void 0===i?void 0:i.current;(null===e||void 0===e?void 0:e.clientWidth)===(null===e||void 0===e?void 0:e.scrollWidth)&&r({overflowX:"hidden"})}),[]);const l=n.map((e=>(0,Er.jsx)(gT,{dayInfo:e,author:a,order:o||[]},null===e||void 0===e?void 0:e.timestamp)));return(0,Er.jsx)("div",{ref:i,style:s,className:"".concat(W_," scroll_x"),onTouchStart:e=>e.stopPropagation(),onMouseDown:e=>e.stopPropagation(),children:(0,Er.jsx)("div",{className:M_,children:l})})},vT="table_filters",bT="table_filters_item";function wT(e){const t=(e||[]).reduce(((e,t)=>(e[t.week]||(e[t.week]=[]),e[t.week].push(t),e)),{});return Object.entries(t).map((e=>{const t=e[1][0],n=e[1][e[1].length-1];return{id:t.week,days:e[1],title:ea({from:t.timestamp,to:n.timestamp})}}))}const kT=un((e=>{let{filters:n,onChange:a}=e;const{t:o}=zt(),s=kr.dataGrip.timestamp.statistic.allCommitsByTimestamp||[],r=(0,t.useMemo)((()=>wT(s)),[s]),i=kr.dataGrip.author.list,l=(0,t.useMemo)((()=>function(e,t){const n=e.map(((e,t)=>({id:t+1,title:e})));return n.unshift({id:0,title:t("page.team.tree.filters.all")}),n}(i,o)),[i]);return(0,Er.jsxs)("div",{className:vT,children:[(0,Er.jsx)(Px,{title:"page.team.tree.filters.author",value:n.user,className:bT,options:l,onChange:e=>{a({...n,user:e})}}),(0,Er.jsx)(Px,{reverse:!0,title:"page.team.tree.filters.author",value:n.week||s[s.length-1].week,className:bT,options:r.reverse(),onChange:e=>{a({...n,week:e})}})]})})),xT=kT;function _T(e){let{response:t,order:n,user:a}=e;return t?(0,Er.jsx)(yT,{days:t.content,author:a,order:n}):null}_T.defaultProps={response:void 0};const TT=un((()=>{const e=kr.dataGrip.timestamp.statistic.allCommitsByTimestamp||[],n=kr.dataGrip.author.list||[],a=e[e.length-1],[o,s]=(0,t.useState)({user:0,week:a.week}),r=o.user?n[o.user-1]:"";if(null===e||void 0===e||!e.length)return(0,Er.jsx)(hm,{});const i=function(e,t){return t.filter((t=>t.week===e.week)).slice(0,7)}({week:o.week,user:r},e);return null!==i&&void 0!==i&&i.length?(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:"common.filters"}),(0,Er.jsx)(em,{children:(0,Er.jsx)(xT,{filters:o,onChange:s})}),(0,Er.jsx)("br",{}),(0,Er.jsx)(em,{template:"table",children:(0,Er.jsx)(Tm,{to:"response",loader:()=>Om({content:i}),watch:JSON.stringify(o),children:(0,Er.jsx)(_T,{order:n,user:r})})})]}):(0,Er.jsx)(hm,{})})),ST="card_with_icon",CT="card_with_icon_icon",ET="card_with_icon_value",jT="card_with_icon_title",AT="card_with_icon_description",NT="card_with_icon_scoring",DT="card_with_icon_scoring_wrapper",OT="card_with_icon_small",RT="card_with_icon_long",PT="card_with_icon_banner";function IT(e){let{title:t,value:n,total:a}=e;const{t:o}=zt();return n?(0,Er.jsx)("div",{className:DT,children:(0,Er.jsx)("div",{title:o(t||"page.person.scoring.toolbar"),className:NT,children:"".concat(n," / ").concat(a||n)})}):null}IT.defaultProps={title:void 0,value:void 0,total:void 0};const LT=IT;function FT(e){let{title:t,description:n,value:a,suffix:o,icon:s,size:r,scoring:i}=e;const{t:l}=zt();if(!a&&0!==a)return null;const c=[ST];return"s"===r&&c.push(OT),"l"===r&&c.push(RT),(0,Er.jsxs)("figure",{className:c.join(" "),children:[s&&(0,Er.jsx)("img",{className:CT,src:s}),(0,Er.jsxs)("p",{className:ET,children:[a,o||""]}),(0,Er.jsx)("h4",{className:jT,children:l(t||"")}),(0,Er.jsx)("figcaption",{className:AT,children:l(n||"")}),i?(0,Er.jsx)(LT,{title:null===i||void 0===i?void 0:i.title,value:null===i||void 0===i?void 0:i.value,total:null===i||void 0===i?void 0:i.total}):null]})}FT.defaultProps={description:"",suffix:"",icon:void 0,size:"m",scoring:void 0};const MT=FT,WT=un((()=>{const{t:e}=zt(),t=kr.dataGrip.team.statistic,n=kr.dataGrip.author.employment,a=kr.dataGrip.timestamp.statistic,o=n.active.reduce(((e,t)=>e+kr.dataGrip.author.statisticByName[t].taskInDay),0).toFixed(1),s=n.active.reduce(((e,t)=>e+Bn.getCurrentSalaryInMonth(t)),0);return(0,Er.jsxs)(em,{children:[(0,Er.jsxs)(om,{children:[(0,Er.jsx)(Im,{title:"page.team.total.titleA"}),(0,Er.jsxs)("div",{children:[(0,Er.jsx)(MT,{value:o,icon:"./assets/cards/tasks_month.png",title:"page.team.total.workSpeed.title",description:"page.team.total.workSpeed.description"}),(0,Er.jsx)(MT,{value:"".concat(n.active.length," / ").concat(n.dismissed.length),icon:"./assets/cards/dismissal.png",title:"page.team.total.employment.title",description:"page.team.total.employment.description"}),(0,Er.jsx)(MT,{value:t.daysWorked,icon:"./assets/cards/work_days.png",title:"page.team.total.daysWorked.title",description:"page.team.total.daysWorked.description"}),(0,Er.jsx)(MT,{value:t.daysLosses,icon:"./assets/cards/lazy.png",title:"page.team.total.daysLosses.title",description:"page.team.total.daysLosses.description"}),(0,Er.jsx)(MT,{size:"l",value:t.commits,icon:"./assets/cards/commits.png",title:"page.team.total.commits.title",description:"page.team.total.commits.description"})]}),(0,Er.jsx)(ji,{text:e("page.team.total.description1")}),(0,Er.jsx)(ji,{text:e("page.team.total.description2")}),(0,Er.jsx)(ji,{text:e("page.team.total.description3")})]}),(0,Er.jsxs)(om,{children:[(0,Er.jsx)(Im,{title:"page.team.total.titleB"}),(0,Er.jsxs)("div",{children:[(0,Er.jsx)(MT,{value:Xn(t.moneyAll),icon:"./assets/cards/money_total.png",title:"page.team.total.moneyAll.title",description:"page.team.total.moneyAll.description"}),(0,Er.jsx)(MT,{value:Xn(t.moneyWorked),icon:"./assets/cards/money_work.png",title:"page.team.total.moneyWorked.title",description:"page.team.total.moneyWorked.description"}),(0,Er.jsx)(MT,{value:Xn(t.moneyLosses),icon:"./assets/cards/money_lazy.png",title:"page.team.total.moneyLosses.title",description:"page.team.total.moneyLosses.description"}),(0,Er.jsx)(MT,{value:Xn(a.weekendPayment),icon:"./assets/cards/money_holidays.png",title:"page.team.total.weekendPayment.title",description:"page.team.total.weekendPayment.description"}),(0,Er.jsx)(MT,{size:"l",value:Xn(s),icon:"./assets/cards/money_month.png",title:"page.team.total.moneySpeed.title",description:"page.team.total.moneySpeed.description"})]}),(0,Er.jsx)(ji,{text:e("page.team.total.description4")}),(0,Er.jsx)(ji,{text:e("page.team.total.description5")})]})]})})),BT=WT;function zT(e){let{title:t,description:n,help:a,error:o,className:s,disabled:r,value:i,placeholder:l,onChange:c}=e;const{t:m}=zt();return(0,Er.jsx)($l,{title:t,description:n,help:a,error:o,className:s,children:(0,Er.jsx)("input",{disabled:r,type:"number",value:i,placeholder:l?m(l):"",className:ql,onChange:e=>{c&&c(parseInt(e.target.value,10)||0)}})})}zT.defaultProps={placeholder:"\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435"};const UT=zT;const HT=new class{constructor(){this.hash=0,this.authorId=0,this.minCommits=0,this.selectedPath=[],(0,Vt.rC)(this,{hash:Vt.LO,authorId:Vt.LO,minCommits:Vt.LO,selectedPath:Vt.LO,updateFilter:Vt.aD})}updateFilter(e,t){this[e]=t,this.hash=Math.random()}},GT=un((()=>{const{t:e}=zt(),t=kr.dataGrip.author.list.map(((e,t)=>({id:t+1,title:e})));return t.unshift({id:0,title:e("page.team.tree.filters.all")}),(0,Er.jsxs)("div",{className:vT,children:[(0,Er.jsx)(Px,{title:"page.team.tree.filters.author",value:HT.authorId,className:bT,options:t,onChange:e=>{HT.updateFilter("authorId",e)}}),(0,Er.jsx)(UT,{placeholder:"page.team.tree.filters.commits",help:"page.team.tree.filters.help",value:HT.minCommits||"",className:bT,onChange:e=>{HT.updateFilter("minCommits",e)}})]})})),VT=GT,KT="file_breadcrumbs",$T="file_breadcrumbs_text",qT="file_breadcrumbs_link",YT=un((()=>{const e=HT.selectedPath.map(((e,t)=>(0,Er.jsxs)("span",{children:[(0,Er.jsx)("span",{className:$T,children:"/"}),(0,Er.jsx)("span",{className:"".concat($T," ").concat(qT),onClick:()=>{const e=HT.selectedPath.slice(0,t+1);HT.updateFilter("selectedPath",e)},children:e})]},e)));return(0,Er.jsxs)("h3",{className:KT,children:[(0,Er.jsx)("span",{className:$T,children:"\u0410\u0434\u0440\u0435\u0441:"}),(0,Er.jsx)("span",{className:"".concat($T," ").concat(qT),onClick:()=>{HT.updateFilter("selectedPath",[])},children:".."}),e]})}));function ZT(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;return t?(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:"details",type:"print"===o?"cards":void 0,columnCount:"print"===o?3:void 0,children:[(0,Er.jsx)(xk,{isFixed:!0,isSortable:!0,template:e=>(0,Er.jsx)(Kk,{task:e}),title:"page.team.tasks.task",properties:"task",width:120}),(0,Er.jsx)(xk,{properties:"types",width:100,template:e=>(0,Er.jsx)(Nd,{value:Object.keys(e)})}),(0,Er.jsx)(xk,{properties:"scope",width:100,template:e=>(0,Er.jsx)(Nd,{value:Object.keys(e)})}),(0,Er.jsx)(xk,{isSortable:!0,minWidth:80,template:e=>{const t=e.prIds.map((e=>(0,Er.jsx)(qk,{prId:e},e)));return(0,Er.jsx)(Er.Fragment,{children:t})}})]}):null}ZT.defaultProps={response:void 0};const JT=ZT;function XT(e){let{response:t}=e;if(!t)return null;const n=ad({max:Nk(t,"lines"),suffix:"page.team.tree.line"}),a=ad({max:Nk(t,"totalTasks"),suffix:"page.team.tree.tasks"}),o=ad({max:Nk(t,"totalDays"),suffix:"page.team.tree.days"}),s=ad({order:kr.dataGrip.author.list,suffix:"page.team.tree.line"}),r=ad({order:["page.team.tree.linesAdded","page.team.tree.linesChanged","page.team.tree.linesRemoved"],suffix:"page.team.tree.line"});return(0,Er.jsxs)(ip,{rows:t.content,disabledRow:e=>".."!==(null===e||void 0===e?void 0:e.title),children:[(0,Er.jsx)(xk,{isFixed:!0,template:qd.DETAILS,width:40,properties:"tasks",formatter:e=>{const t=Array.from(null===e||void 0===e?void 0:e.tasks).reverse().map((e=>kr.dataGrip.tasks.statisticByName.get(e))).filter((e=>e));return(0,Er.jsx)(JT,{response:{content:t},mode:"details"})}}),(0,Er.jsx)(xk,{isFixed:!0,template:qd.STRING,formatter:e=>null!==e&&void 0!==e&&e.content?"\ud83d\udcc1 ".concat(null===e||void 0===e?void 0:e.name):"\ud83d\udcc4 ".concat(null===e||void 0===e?void 0:e.name),minWidth:170,onClick:e=>{e.content&&HT.updateFilter("selectedPath",[...e.path,e.name])}}),(0,Er.jsx)(xk,{isSortable:!0,width:60,properties:"lines",template:qd.SHORT_NUMBER}),(0,Er.jsx)(xk,{isSortable:!0,properties:"lines",title:"page.team.tree.totalLines",minWidth:100,template:e=>(0,Er.jsx)(Ak,{options:n,value:e})}),(0,Er.jsx)(xk,{isSortable:!0,width:50,properties:"totalTasks",template:qd.SHORT_NUMBER}),(0,Er.jsx)(xk,{isSortable:!0,properties:"totalTasks",title:"page.team.tree.totalTasks",minWidth:100,template:e=>(0,Er.jsx)(Ak,{options:a,value:e})}),(0,Er.jsx)(xk,{isSortable:!0,width:50,properties:"totalDays",template:qd.SHORT_NUMBER}),(0,Er.jsx)(xk,{isSortable:!0,properties:"totalDays",title:"page.team.tree.totalDays",minWidth:100,template:e=>(0,Er.jsx)(Ak,{options:o,value:e})}),(0,Er.jsx)(xk,{isSortable:!0,template:qd.STRING,title:"page.team.pr.firstCommitTime",formatter:e=>{var t;return qn(null===e||void 0===e||null===(t=e.firstCommit)||void 0===t?void 0:t.timestamp)},width:130}),(0,Er.jsx)(xk,{isSortable:!0,template:qd.STRING,title:"page.team.pr.author",formatter:e=>{var t;return(null===e||void 0===e||null===(t=e.firstCommit)||void 0===t?void 0:t.author)||""},width:150}),(0,Er.jsx)(xk,{isSortable:!0,template:qd.STRING,title:"page.team.pr.lastCommitTime",formatter:e=>{var t;return qn(null===e||void 0===e||null===(t=e.lastCommit)||void 0===t?void 0:t.timestamp)},width:130}),(0,Er.jsx)(xk,{isSortable:!0,template:qd.STRING,title:"page.team.pr.author",formatter:e=>{var t;return(null===e||void 0===e||null===(t=e.lastCommit)||void 0===t?void 0:t.author)||""},width:150}),(0,Er.jsx)(xk,{minWidth:200,template:e=>(0,Er.jsx)(Ak,{value:100,options:r,details:{"page.team.tree.linesAdded":(null===e||void 0===e?void 0:e.addedLines)||0,"page.team.tree.linesRemoved":(null===e||void 0===e?void 0:e.removedLines)||0,"page.team.tree.linesChanged":(null===e||void 0===e?void 0:e.changedLines)||0}})}),(0,Er.jsx)(xk,{title:"page.team.tree.add",minWidth:200,template:e=>(0,Er.jsx)(Ak,{value:100,options:s,details:null===e||void 0===e?void 0:e.addedByAuthorInPercent})}),(0,Er.jsx)(xk,{title:"page.team.tree.change",minWidth:200,template:e=>(0,Er.jsx)(Ak,{value:100,options:s,details:null===e||void 0===e?void 0:e.changedByAuthorInPercent})}),(0,Er.jsx)(xk,{title:"page.team.tree.remove",minWidth:200,template:e=>(0,Er.jsx)(Ak,{value:100,options:s,details:null===e||void 0===e?void 0:e.removedByAuthorInPercent})})]})}XT.defaultProps={response:void 0};const QT=XT;function eS(e,t){return n=function(e,t){return(t||[]).reduce(((e,t)=>e.content.get(t)||{content:new Map}),e||{content:new Map})}(e,t),Array.from(n.content.values()).sort(((e,t)=>e.content&&!t.content?-1:!e.content&&t.content?1:e.name===t.name?0:e.name>t.name?1:-1));var n}const tS=un((e=>{let{type:n}=e;const{t:a}=zt(),o="removed"===n?kr.fileGrip.removedTree.tree:kr.fileGrip.tree.tree;(0,t.useEffect)((()=>{HT.updateFilter("selectedPath",[])}),[n]);const s=eS(o,HT.selectedPath);return null!==s&&void 0!==s&&s.length?(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:a("common.filters")}),(0,Er.jsx)(VT,{}),(0,Er.jsx)(YT,{}),(0,Er.jsx)(em,{template:"table",children:(0,Er.jsxs)(Tm,{to:"response",loader:e=>Om({content:s,pagination:{...e,size:2e3}}),watch:"".concat(HT.hash).concat(n),children:[(0,Er.jsx)(QT,{}),(0,Er.jsx)(Dm,{})]})})]}):(0,Er.jsx)(hm,{})})),nS=tS;function aS(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;if(!t)return null;const s=Nk(t,"count"),r=Nk(t,"removedCount"),i=ad({max:Math.max(s,r),suffix:"page.team.extension.files"});return(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===o?"cards":void 0,columnCount:"print"===o?3:void 0,children:[(0,Er.jsx)(xk,{isFixed:!0,template:qd.STRING,title:"page.team.extension.name",properties:"extension",width:200}),(0,Er.jsx)(xk,{template:qd.STRING,title:"page.team.extension.path",width:350,formatter:e=>1===e.count||1===e.removedCount?e.path:""}),"print"===o?(0,Er.jsx)(xk,{isSortable:!0,title:"page.team.pr.task",properties:"task",width:120}):(0,Er.jsx)(xk,{isSortable:!0,template:(e,t)=>t.path?(0,Er.jsx)(Kk,{task:e}):"",title:"page.team.pr.task",properties:"task",width:120}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"count"}),(0,Er.jsx)(xk,{isSortable:!0,title:"page.team.extension.current.count",properties:"count",width:170,minWidth:170,template:e=>(0,Er.jsx)(Ak,{options:i,value:e})}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"removedCount"}),(0,Er.jsx)(xk,{isSortable:!0,title:"page.team.extension.removed.count",properties:"removedCount",width:170,minWidth:170,template:e=>(0,Er.jsx)(Ak,{options:i,value:e})})]})}aS.defaultProps={response:void 0};const oS=un((e=>{let{mode:t}=e;const n=kr.fileGrip.extension.statistic;return(null===n||void 0===n?void 0:n.length)<2?"print"!==t?(0,Er.jsx)(hm,{}):null:(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:"page.team.extension.extension"}),(0,Er.jsxs)(Tm,{to:"response",loader:e=>Om({content:n,pagination:e,mode:t}),watch:"".concat(t).concat(kr.hash),children:[(0,Er.jsx)(aS,{mode:t,rowsForExcel:n}),(0,Er.jsx)(Dm,{})]})]})}));function sS(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;if(!t)return null;const s=Nk(t,"count"),r=Nk(t,"removedCount"),i=ad({max:Math.max(s,r),suffix:"page.team.extension.files"});return(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===o?"cards":void 0,columnCount:"print"===o?3:void 0,children:[(0,Er.jsx)(xk,{isFixed:!0,template:qd.STRING,title:"page.team.extension.name",properties:"type",width:200}),(0,Er.jsx)(xk,{template:qd.STRING,title:"page.team.extension.path",width:350,formatter:e=>1===e.count||1===e.removedCount?e.path:""}),"print"===o?(0,Er.jsx)(xk,{isSortable:!0,title:"page.team.pr.task",properties:"task",width:120}):(0,Er.jsx)(xk,{isSortable:!0,template:(e,t)=>t.path?(0,Er.jsx)(Kk,{task:e}):"",title:"page.team.pr.task",properties:"task",width:120}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"count"}),(0,Er.jsx)(xk,{isSortable:!0,title:"page.team.extension.current.count",properties:"count",width:170,minWidth:170,template:e=>(0,Er.jsx)(Ak,{options:i,value:e})}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"removedCount"}),(0,Er.jsx)(xk,{isSortable:!0,title:"page.team.extension.removed.count",properties:"removedCount",width:170,minWidth:170,template:e=>(0,Er.jsx)(Ak,{options:i,value:e})})]})}sS.defaultProps={response:void 0};const rS=un((e=>{let{mode:t}=e;const n=kr.fileGrip.type.statistic;return(null===n||void 0===n?void 0:n.length)<2?"print"!==t?(0,Er.jsx)(hm,{}):null:(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:"page.team.extension.type"}),(0,Er.jsxs)(Tm,{to:"response",loader:e=>Om({content:n,pagination:e,mode:t}),watch:"".concat(t).concat(kr.hash),children:[(0,Er.jsx)(sS,{mode:t,rowsForExcel:n}),(0,Er.jsx)(Dm,{})]})]})})),iS=un((e=>{let{mode:t}=e;return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(oS,{mode:t}),(0,Er.jsx)(rS,{mode:t})]})}));function lS(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;const{t:s}=zt(),r=s("page.team.type.unknown");if(!t)return null;const i=ad({max:Nk(t,"tasks"),suffix:"page.team.type.tasksSmall"}),l=ad({max:Nk(t,"daysByAuthorsTotal"),suffix:"page.team.type.daysSmall"}),c=ad({order:kr.dataGrip.author.list});return(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===o?"cards":void 0,columnCount:"print"===o?3:void 0,children:[(0,Er.jsx)(xk,{isFixed:!0,template:qd.STRING,title:"page.team.type.type",properties:"type",formatter:e=>e||r,width:150}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"tasks"}),(0,Er.jsx)(xk,{isSortable:!0,title:"page.team.type.tasks",properties:"tasks",minWidth:120,template:e=>(0,Er.jsx)(Ak,{options:i,value:e})}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,title:"page.team.type.days",properties:"days"}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"daysByAuthorsTotal"}),(0,Er.jsx)(xk,{isSortable:!0,title:"page.team.type.authorsDays",properties:"daysByAuthorsTotal",minWidth:120,template:e=>(0,Er.jsx)(Ak,{options:l,value:e})}),(0,Er.jsx)(xk,{template:qd.NUMBER,title:"page.team.type.commits",properties:"commits"}),(0,Er.jsx)(xk,{title:"page.team.type.authors",properties:"commitsByAuthors",template:e=>(0,Er.jsx)(Ak,{options:c,details:e}),minWidth:500})]})}lS.defaultProps={response:void 0};const cS=un((e=>{var t;let{mode:n}=e;const{t:a}=zt(),o=kr.dataGrip.type.statistic;if(null===o||void 0===o||!o.length)return"print"!==n?(0,Er.jsx)(hm,{}):null;const s=null===(t=kr.dataGrip.recommendations.team)||void 0===t?void 0:t.byType;return(0,Er.jsxs)(Er.Fragment,{children:["fullscreen"!==n&&(0,Er.jsx)(td,{mode:n,recommendations:s}),(0,Er.jsx)(Im,{title:"page.team.type.title"}),(0,Er.jsxs)(Tm,{to:"response",loader:(e,t)=>Om({content:o,pagination:e,sort:t,mode:n}),watch:"".concat(n).concat(kr.hash),children:[(0,Er.jsx)(lS,{mode:n,rowsForExcel:o}),(0,Er.jsx)(Dm,{})]}),(0,Er.jsx)(em,{children:(0,Er.jsx)(ji,{text:a("page.team.type.description")})})]})})),mS=cS;function dS(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;if(!t)return null;const s=ad({max:Nk(t,"tasks"),order:kr.dataGrip.type.list,suffix:"page.team.week.tasks"}),r=ad({max:Nk(t,"authorsLength"),order:kr.dataGrip.author.list,suffix:"page.team.week.tasks"}),i=ad({max:Nk(t,"changesLength"),order:["page.team.week.add","page.team.week.change","page.team.week.remove"],suffix:"\u0441\u0442\u0440\u043e\u043a"}),l=ad({order:["page.team.week.hasCommits","page.team.week.hasNotCommits"],suffix:"page.team.week.days"}),c=ad({order:kr.dataGrip.author.list,suffix:"page.team.week.days"});return(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===o?"cards":void 0,columnCount:"print"===o?3:void 0,children:[(0,Er.jsx)(xk,{isFixed:!0,template:qd.STRING,title:"page.team.week.date",properties:"timestamp",formatter:ea,width:260}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"tasks"}),(0,Er.jsx)(xk,{isSortable:"tasks",title:"page.team.week.numberTasks",template:e=>(0,Er.jsx)(Ak,{options:s,value:e.tasks,details:e.types}),minWidth:200}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"authorsLength"}),(0,Er.jsx)(xk,{isSortable:"authorsLength",title:"page.team.week.people",template:e=>(0,Er.jsx)(Ak,{options:r,value:e.authorsLength,details:e.authors}),minWidth:200}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"changesLength"}),(0,Er.jsx)(xk,{isSortable:"changesLength",title:"page.team.week.line",template:e=>{var t,n,a;return(0,Er.jsx)(Ak,{options:i,value:e.changesLength,details:{"page.team.week.add":null===e||void 0===e||null===(t=e.changes)||void 0===t?void 0:t.added,"page.team.week.change":null===e||void 0===e||null===(n=e.changes)||void 0===n?void 0:n.changes,"page.team.week.remove":null===e||void 0===e||null===(a=e.changes)||void 0===a?void 0:a.removed}})},minWidth:200}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"workDaysTotal"}),(0,Er.jsx)(xk,{isSortable:"workDaysTotal",title:"page.team.week.days",template:e=>(0,Er.jsx)(Ak,{options:l,details:{"page.team.week.hasCommits":null===e||void 0===e?void 0:e.workDaysTotal,"page.team.week.hasNotCommits":5*(null===e||void 0===e?void 0:e.authorsLength)-(null===e||void 0===e?void 0:e.workDaysTotal)}}),minWidth:200}),(0,Er.jsx)(xk,{title:"page.team.week.lossesDetails",template:e=>(0,Er.jsx)(Ak,{options:c,details:e}),formatter:e=>{const t=Object.entries(null===e||void 0===e?void 0:e.workDays).map((e=>{let[t,n]=e;return[t,5-n]}));return Object.fromEntries(t.filter((e=>e[1]>0)))},minWidth:200})]})}dS.defaultProps={response:void 0};const pS=un((e=>{var t;let{mode:n}=e;const a=kr.dataGrip.week.statistic;if(null===a||void 0===a||!a.length)return"print"!==n?(0,Er.jsx)(hm,{}):null;const o=null===(t=kr.dataGrip.recommendations.team)||void 0===t?void 0:t.byWeek;return(0,Er.jsxs)(Er.Fragment,{children:["fullscreen"!==n&&(0,Er.jsx)(td,{mode:n,recommendations:o}),"print"===n?(0,Er.jsx)(Im,{title:"page.team.week.title"}):(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)("br",{}),(0,Er.jsx)("br",{}),(0,Er.jsx)("br",{})]}),(0,Er.jsxs)(Tm,{to:"response",loader:(e,t)=>Om({content:a,pagination:e,sort:t}),watch:"".concat(n).concat(kr.hash),children:[(0,Er.jsx)(dS,{mode:n,rowsForExcel:a}),"print"!==n&&(0,Er.jsx)(Dm,{})]})]})})),uS=pS;function hS(e,t,n){return{id:"".concat(e,"-").concat(t),month:e,year:t,first:!1,last:!1,date:new Date("".concat(t,"-").concat($n(e+1),"-01")),firstDay:n.firstDay["".concat(e,"-").concat(t)],lastDay:n.lastDay["".concat(e,"-").concat(t)],commits:[]}}function fS(e,t,n){const a="".concat(e.month,"-").concat(e.year);if(t[a]){t[a].commits=n;const e=[],o=[];n.forEach((t=>{e.push(...Object.keys(t.tasks)),o.push(...Object.keys(t.tasksByAuthor))})),t[a].tasks=Array.from(new Set(e)).length;const s=Array.from(new Set(o));t[a].money=s.reduce(((e,t)=>e+Bn.getCurrentSalaryInMonth(t)),0)}}function gS(e,t){let n={month:0,year:0},a=[];const o=e[0],s=e[e.length-1],{months:r,monthsByDate:i}=function(e,t,n){const a=[],o={};for(let s=e.year;s<=t.year;s++){const r=s===e.year?e.month:0,i=s===t.year?t.month+1:12;for(let e=r;e<i;e++){const t=hS(e,s,n);a.push(t),o[t.id]=t}}return a.slice(null===e||void 0===e?void 0:e.month),a.slice(a.length-(12-(null===t||void 0===t?void 0:t.month))),a[0].first=!0,a[a.length-1].last=!0,a[a.length-1].lastDay=void 0,{months:a,monthsByDate:o}}(o,s,t);return e.forEach((e=>{e.month!==n.month||e.year!==n.year?(fS(n,i,a),a=[e]):a.push(e),n=e})),fS(n,i,a),r}const yS="year_chart",vS="year_chart_month",bS="year_chart_month_header",wS="year_chart_month_header_title",kS="year_chart_month_body",xS="year_chart_month_body_day",_S="year_chart_month_body_day_arrow",TS="year_chart_month_body_day_info";const SS=function(e){let{month:t}=e;const n=t.date.toLocaleString(Un(),{month:"long"}),a=t.first||t.last||!t.month;return(0,Er.jsx)("div",{className:bS,children:(0,Er.jsxs)("span",{className:wS,style:{fontWeight:a?"bold":100},children:[n," ",a?t.year:""]})})};function CS(e,t){return e.reduce(((e,n)=>{var a;if(n.isStaff)return e;if("lastCommit"===t&&!n.isDismissed)return e;const o=null===n||void 0===n||null===(a=n[t])||void 0===a?void 0:a.timestamp;return e[o]||(e[o]=[]),e[o].push(n.author),e}),{})}function ES(e){let{month:n,dayInfo:a,maxCommits:o,dayNumber:s,events:r}=e;const[i,l]=(0,t.useState)(!1),c=function(e,t){const n=100*(e||0)/t;return(n-n%1)/100}(a.commits,o),m=function(e,t){const n=e?["#ED675F","#EB817C","#E98E8A","#E89B99","#E7A8A7","#E7B5B6","#E6C3C4","#E4CFD3"]:["#4162B5","#617DC1","#718AC6","#8198CD","#91A6D2","#A2B3D8","#B2C1DE","#C2CEE4"];return t>=.8?n[1]:t>=.6?n[3]:t>=.4?n[5]:n[7]}([5,6,12,13,19,20,26,27,33,34,40,41].includes(s),c),d=function(e,t){var n,a;const o=null===(n=e.firstDay)||void 0===n?void 0:n[t],s=null===(a=e.lastDay)||void 0===a?void 0:a[t];return o&&s||s||o?"./assets/chart/commit.svg":""}(n,a.dayInMonth),p=function(e,t){var n,a;const o=null===e||void 0===e||null===(n=e.firstCommit)||void 0===n?void 0:n[t],s=null===e||void 0===e||null===(a=e.lastCommit)||void 0===a?void 0:a[t];return o&&s?"+-":s?"-":o?"+":""}(r,a.timestamp);return(0,Er.jsx)("div",{className:xS,title:"commits: ".concat(a.commits,", tasks: ").concat(a.tasksInDay||0),style:{backgroundColor:m,backgroundImage:d?"url(".concat(d,")"):""},onClick:()=>{l(!i)},children:i?(0,Er.jsxs)(Er.Fragment,{children:["\u25c9",(0,Er.jsx)("div",{className:_S}),(0,Er.jsxs)("div",{className:"".concat(TS," scroll_y"),children:[(0,Er.jsx)(Im,{title:qn(a.timestamp)}),(0,Er.jsx)(tx,{day:a,events:r,timestamp:a.timestamp,order:kr.dataGrip.author.list})]})]}):p})}ES.defaultProps={rows:[]};const jS=ES;function AS(e){let{month:t,maxCommits:n,showEvents:a}=e;const o=t.date.getDay()-1,s=o+[31,28,31,30,31,30,31,31,30,31,30,31][t.month],r=new Array(42).fill(0);let i=0;const l=a?function(e){const t=e.dataGrip.author.statistic;return{firstCommit:CS(t,"firstCommit"),lastCommit:CS(t,"lastCommit")}}(kr):{},c=r.map(((e,a)=>{const r=t.commits[i];return(null===r||void 0===r?void 0:r.dayInMonth)===a-o+1?(i+=1,(0,Er.jsx)(jS,{month:t,maxCommits:n,dayNumber:a,dayInfo:r,events:l},a)):(0,Er.jsx)("div",{className:xS,style:{opacity:a<o||a>s?.3:1}},a)}));return(0,Er.jsx)("div",{className:kS,children:c})}AS.defaultProps={rows:[]};const NS=AS,DS="year_chart_month_info";function OS(e){let{max:t,month:n,showEvents:a,hideMoney:o}=e,s="";n.tasks&&(s="\u2611 ".concat(n.tasks||0)),!o&&n.money&&(s="\u2611 ".concat(n.tasks||0," \u2014 ").concat(Xn(n.money||0,0)));const r=o?"tasks":"tasks and money";return(0,Er.jsxs)("div",{className:vS,children:[(0,Er.jsx)(SS,{month:n}),(0,Er.jsx)(NS,{month:n,maxCommits:t.commits,showEvents:a}),(0,Er.jsx)("div",{title:r,className:DS,children:s})]})}OS.defaultProps={hideMoney:!1};const RS=OS;function PS(e){let{maxCommits:n=100,showEvents:a=!0,wordDays:o=[],authors:s=[]}=e;const r=(0,t.useRef)(null),[i,l]=(0,t.useState)(16);if((0,t.useEffect)((()=>{var e;if(!r.current)return;const t=(null===(e=r.current)||void 0===e?void 0:e.getBoundingClientRect())||{},n=Math.floor(t.width/135),a=function(e,t){for(let n=16;n<=24;n+=.3)if((7+8*n)*t>e)return n-.3;return 24}(t.width,n);l(a)}),[]),!o||!o.length)return null;const c=function(e){const t={},n={};return e.forEach((e=>{if(e.isStaff)return;const a="".concat(e.firstCommit.month,"-").concat(e.firstCommit.year);t[a]||(t[a]={}),t[a][e.firstCommit.dayInMonth]=e;const o="".concat(e.lastCommit.month,"-").concat(e.lastCommit.year);n[o]||(n[o]={}),n[o][e.lastCommit.dayInMonth]=e})),{firstDay:t,lastDay:n}}(s),m=gS(o,c),d=1===(null===s||void 0===s?void 0:s.length),p={tasks:new Ka,money:new Ka};m.forEach((e=>{p.tasks.update(e.tasks),p.money.update(e.money)}));const u=m.map((e=>(0,Er.jsx)(RS,{max:{tasks:p.tasks.max,money:p.money.max,commits:n},month:e,showEvents:a,hideMoney:d},e.id))),h={"--day-size":"".concat(i.toFixed(1),"px")};return(0,Er.jsx)("div",{ref:r,style:h,className:yS,children:u})}PS.defaultProps={showEvents:!0};const IS=PS,LS=un((e=>{var t;let{mode:n}=e;const a=kr.dataGrip.author.statistic,o=kr.dataGrip.timestamp.statistic,s=o.commitsByTimestampCounter.max,r=null===(t=kr.dataGrip.recommendations.team)||void 0===t?void 0:t.byTimestamp;return(0,Er.jsxs)(Er.Fragment,{children:["fullscreen"!==n&&(0,Er.jsx)(td,{mode:n,recommendations:r}),(0,Er.jsx)(Im,{title:"page.team.month.title"}),(0,Er.jsx)(em,{template:"table",children:(0,Er.jsx)(IS,{maxCommits:s,authors:a,wordDays:o.allCommitsByTimestamp})})]})})),FS=LS;function MS(e,t){const n=e.map(((e,t)=>({id:t+1,title:e})));return n.unshift({id:0,title:t("page.team.tree.filters.all")}),n}const WS=un((e=>{let{filters:n,onChange:a}=e;const{t:o}=zt(),s=kr.dataGrip.author.list,r=(0,t.useMemo)((()=>MS(s,o)),[s]),i=kr.dataGrip.company.statistic.map((e=>e.company)),l=(0,t.useMemo)((()=>MS(i,o)),[i]);return(0,Er.jsxs)("div",{className:vT,children:[(0,Er.jsx)(Px,{title:"page.team.tree.filters.author",value:n.user,className:bT,options:r,onChange:e=>{a({...n,user:e,company:0})}}),(0,Er.jsx)(Px,{title:"page.team.tree.filters.author",value:n.company,className:bT,options:l,onChange:e=>{a({...n,user:0,company:e})}})]})})),BS=WS;function zS(e){let{isCorrectPR:t,response:n,updateSort:a,rowsForExcel:o,mode:s}=e;return n?(0,Er.jsxs)(wk,{rowsForExcel:o,rows:n.content,sort:n.sort,updateSort:a,mode:"details",type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,Er.jsx)(xk,{isFixed:!0,template:qd.STRING,title:"page.team.release.title",properties:"title",width:120}),(0,Er.jsx)(xk,{template:qd.STRING,title:"page.team.release.to",width:198,formatter:e=>qn(e.to||e.from)}),(0,Er.jsx)(xk,{isSortable:!0,minWidth:80,template:e=>{var n,a;const o=null===e||void 0===e||null===(n=e.prIds)||void 0===n||null===(a=n.filter((e=>null===t||void 0===t?void 0:t[e])))||void 0===a?void 0:a.map((e=>(0,Er.jsx)(qk,{prId:e},e)));return(0,Er.jsx)(Er.Fragment,{children:o})}})]}):null}zS.defaultProps={response:void 0};const US=zS;function HS(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;return t?(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===o?"cards":void 0,columnCount:"print"===o?3:void 0,children:[(0,Er.jsx)(xk,{isFixed:!0,template:qd.DETAILS,width:40,properties:"releaseIds",formatter:e=>{const t=Array.from(null===e||void 0===e?void 0:e.releaseIds).reverse().map((e=>kr.dataGrip.release.release[e])).filter((e=>e)),n=Object.fromEntries(e.prIds.map((e=>[e,!0])));return(0,Er.jsx)(US,{response:{content:t},isCorrectPR:n,mode:"details"})}}),(0,Er.jsx)(xk,{isFixed:!0,isSortable:!0,template:e=>(0,Er.jsx)(Kk,{task:e}),title:"page.team.tasks.task",properties:"task",width:120}),(0,Er.jsx)(xk,{properties:"types",width:100,template:e=>(0,Er.jsx)(Nd,{value:Object.keys(e)})}),(0,Er.jsx)(xk,{properties:"scope",width:100,template:e=>(0,Er.jsx)(Nd,{value:Object.keys(e)})}),(0,Er.jsx)(xk,{isSortable:!0,width:80,template:e=>{const t=e.prIds.map((e=>(0,Er.jsx)(qk,{prId:e},e)));return(0,Er.jsx)(Er.Fragment,{children:t})}}),(0,Er.jsx)(xk,{template:qd.STRING,properties:"comments"}),(0,Er.jsx)(xk,{template:qd.STRING,title:"page.team.tasks.author",properties:"author",width:170}),(0,Er.jsx)(xk,{template:qd.STRING,title:"page.team.tasks.from",properties:"from",width:150,formatter:qn}),(0,Er.jsx)(xk,{template:qd.STRING,title:"page.team.tasks.to",properties:"to",width:150,formatter:qn})]}):null}HS.defaultProps={response:void 0};const GS=HS;const VS=un((e=>{let{mode:n}=e;const a=kr.dataGrip.tasks.statistic,[o,s]=(0,t.useState)({user:0,company:0}),r=function(e,t){if(t.user){var n,a;const o=null===(n=kr.dataGrip.author.statistic)||void 0===n||null===(a=n[t.user])||void 0===a?void 0:a.author;return o?e.filter((e=>{var t;return e.author===o||(null===(t=e.authors)||void 0===t?void 0:t[o])})):e}if(t.company){var o;const n=null===(o=kr.dataGrip.company.statistic)||void 0===o?void 0:o[t.company].employments,a=new Map(n.map((e=>[e,!0])));return null!==n&&void 0!==n&&n.length?e.filter((e=>a.has(e.author))):e}return e}(a,o),i=[n,kr.hash,o.user,o.company,r.length].join(".");return null!==a&&void 0!==a&&a.length?(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:"common.filters"}),(0,Er.jsx)(em,{children:(0,Er.jsx)(BS,{filters:o,onChange:s})}),(0,Er.jsxs)(Tm,{to:"response",loader:(e,t)=>Om({content:r,pagination:e,sort:t,mode:n}),watch:i,children:[(0,Er.jsx)(GS,{mode:n,rowsForExcel:a}),(0,Er.jsx)(Dm,{})]})]}):"print"!==n?(0,Er.jsx)(hm,{}):null})),KS="game_banner",$S="game_banner_description";const qS=function(e){let{src:t,children:n}=e;return t?(0,Er.jsx)("div",{className:KS,style:{backgroundImage:"url(".concat(t,")")},children:n?(0,Er.jsx)("div",{className:$S,children:n}):null}):null};function YS(e){return Math.floor(Math.random()*(e+1))}function ZS(e){for(let t,n,a=e.length;a;t=parseInt(Math.random()*a),n=e[--a],e[a]=e[t],e[t]=n);return e}const JS="races_track_info";const XS=function(e){let{title:t,duration:n}=e;return console.log(t),(0,Er.jsx)("div",{className:JS,style:{animationDelay:"".concat(n+1,"s")},children:"4"})},QS="races_track_car",eC="races_track_car_title",tC="races_track_car_cover",nC="races_track_car_animation",aC=["ease","ease-in","ease-out","ease-in-out","linear","cubic-bezier(0.1, 0.7, 1, 0.1)"];function oC(e){let{title:n,duration:a,type:o,canStart:s}=e;const r=YS(aC.length-1),[i]=(0,t.useState)(aC[r]);(0,t.useEffect)((()=>{ZS(aC)}),[]);const l=s?nC:"";return(0,Er.jsxs)("div",{className:"".concat(QS," ").concat(o||""," ").concat(l||""),style:{animationTimingFunction:i,animationDuration:"".concat(a,"s")},children:[(0,Er.jsx)("div",{className:"".concat(eC," ").concat(o||""),children:n}),(0,Er.jsx)("img",{className:tC,src:"./assets/games/races/car.png"})]})}oC.defaultProps={type:"",canStart:!1};const sC=oC,rC="races",iC="races_green",lC="races_track",cC="races_button",mC=10,dC=20;function pC(e){let{title:t,speed:n,type:a,canStart:o}=e;if(!t)return null;const s=mC+dC*(1-n)*3;return(0,Er.jsxs)("div",{className:"".concat(lC," ").concat(a||""),style:{backgroundImage:"url(./assets/games/races/road.png)"},children:[o&&(0,Er.jsx)(XS,{title:t,duration:s}),(0,Er.jsx)(sC,{title:t,duration:s,type:a,canStart:o})]})}pC.defaultProps={type:"",canStart:!1};const uC=pC;const hC=function(e){let{tracks:n}=e;const{t:a}=zt(),[o,s]=(0,t.useState)(!1),[r]=(0,t.useState)([...ZS(n)]);if(!n.length)return null;const i=r.map((e=>(0,Er.jsx)(uC,{title:e.title,speed:e.speed,canStart:o},e.title)));return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(qS,{src:"./assets/games/races/bg.png",children:!o&&(0,Er.jsx)(Or,{className:cC,onClick:()=>{s(!0)},children:a("uiKit.races.go")})}),(0,Er.jsx)("div",{className:iC,style:{backgroundImage:"url(./assets/games/races/greenTop.png)"}}),(0,Er.jsx)("div",{className:rC,children:i}),(0,Er.jsx)("div",{className:iC,style:{backgroundImage:"url(./assets/games/races/greenBottom.png)"}})]})},fC="show_symbol_wrapper",gC="show_symbol",yC="show_symbol_s",vC="show_symbol_hide",bC="show_symbol_bg",wC="show_symbol_bg_hide";const kC=function(e){let{show:n,children:a,mode:o}=e;const[s,r]=(0,t.useState)(!1);(0,t.useEffect)((()=>{r(n)}),[n]);const i=s?vC:"",l=s?wC:"",c={"table-row":yC}[o||""]||"";return(0,Er.jsxs)("div",{className:"".concat(gC," ").concat(i," ").concat(c),children:[a,(0,Er.jsx)("div",{className:"".concat(bC," ").concat(l),onClick:()=>r(!0)})]})};const xC=function(e){let{children:t,onClick:n,mode:a}=e;const o={"table-row":yC}[a||""]||"";return(0,Er.jsx)("div",{className:"".concat(gC," ").concat(vC," ").concat(o),onClick:()=>n(),children:t})};const _C=function(e){let{text:n,length:a,mode:o}=e;const[s,r]=(0,t.useState)(!1);if((0,t.useEffect)((()=>{r(!1)}),[n]),!n&&!a)return null;const i=function(e,t){const n=(e||"").split(""),a=t?t-1:n.length-1;return n.length-1>a&&(n[a]="\u2026"),n}(n,a),l=((a?new Array(a).fill(1):null)||i).map(((e,t)=>(0,Er.jsx)(kC,{mode:o,show:s,children:i[t]||""},"".concat(n,"|").concat(e,"|").concat(t))));return(0,Er.jsxs)("div",{className:"".concat(fC),style:{paddingTop:"table-row"===o?"8px":0},children:[l,(0,Er.jsx)(xC,{mode:o,onClick:()=>r(!0),children:"\xbb"})]})},TC="swimming_pool_track",SC="swimming_pool_track_value",CC="swimming_pool_track_line",EC="swimming_pool_track_chart",jC="swimming_pool_track_man";function AC(e,t){return t?{className:e,style:{backgroundImage:"url(".concat(t,")")}}:{className:e}}const NC=function(e){let{title:t,value:n,maxValue:a}=e;if(!t)return null;const o=1.1*a/100,s=Math.ceil(n/o);return(0,Er.jsxs)("div",{...AC(TC,"./assets/games/swimmingPool/track_title.png"),children:[(0,Er.jsx)(_C,{text:t,length:10}),(0,Er.jsx)("div",{...AC(SC,"./assets/games/swimmingPool/block.png"),children:n}),(0,Er.jsx)("div",{...AC(CC,"./assets/games/swimmingPool/water.png"),children:(0,Er.jsx)("div",{className:EC,style:{width:"".concat(s,"%")},children:(0,Er.jsx)("img",{className:jC,src:"./assets/games/swimmingPool/man.png"})})})]})},DC="swimming_pool_top_border",OC="swimming_pool_bottom_border";const RC=function(e){let{tracks:n}=e;const[a]=(0,t.useState)([...ZS(n)]);if(!n.length)return null;const o=a.map((e=>(0,Er.jsx)(NC,{title:e.title,value:e.value,maxValue:300},e.title)));return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(qS,{src:"./assets/games/swimmingPool/bg.png"}),(0,Er.jsx)("div",{className:DC,style:{backgroundImage:"url(./assets/games/swimmingPool/block2.png)"}}),o,(0,Er.jsx)("div",{className:OC,style:{backgroundImage:"url(./assets/games/swimmingPool/block2.png)"}})]})},PC={quiz_result_title:"quiz_result_title",quiz_result_description:"quiz_result_description"},IC={quiz_container:"quiz_container",quiz_cloud:"quiz_cloud",quiz_cloud_bg:"quiz_cloud_bg",quiz_slider:"quiz_slider",quiz_slider_animation:"quiz_slider_animation",quiz_footer:"quiz_footer",quiz_title:"quiz_title",quiz_description:"quiz_description",quiz_icon:"quiz_icon"};const LC=function(e){let{result:t,onClick:n}=e;return(0,Er.jsxs)("section",{className:PC.quiz_result,children:[(0,Er.jsx)("h4",{className:IC.quiz_title,children:t.title}),(0,Er.jsx)("p",{className:IC.quiz_description,children:t.description}),(0,Er.jsx)("div",{className:IC.quiz_footer,children:(0,Er.jsx)(Or,{onClick:()=>{n()},children:"Replay"})})]})},FC="quiz_answer",MC="quiz_answer_wrapper",WC="quiz_answer_wrapper_small",BC="quiz_answer_icon",zC="quiz_answer_text",UC="quiz_answer_text_selected",HC="quiz_answer_text_correct",GC="quiz_answer_text_error";const VC=function(e){let{answer:n,mode:a,onClick:o}=e;const[s]=(0,t.useState)(YS(5)),r=[MC],i=[zC];return"small"!==a&&"error"!==a||r.push(WC),"selected"===a&&i.push(UC),"correct"===a&&i.push(HC),"error"===a&&i.push(GC),(0,Er.jsx)("div",{className:r.join(" "),children:(0,Er.jsxs)("figure",{className:FC,onClick:()=>{o()},children:[(0,Er.jsx)("img",{className:BC,src:"./assets/games/quize/balloon_".concat(s,".png")}),(0,Er.jsx)("figcaption",{className:i.join(" "),children:n.title})]})})},KC={quiz_question_title:"quiz_question_title",quiz_question_answer:"quiz_question_answer"};function $C(e,t){return(e||[]).map((e=>null!==e&&void 0!==e&&e.score?"correct":null!==e&&void 0!==e&&e.score||e!==t?"small":"error"))}const qC=function(e){let{question:n,onClick:a}=e;const[o,s]=(0,t.useState)(null),[r,i]=(0,t.useState)(!1),[l,c]=(0,t.useState)([]),m=n.answers||[];if((0,t.useEffect)((()=>{c([]),s(null),i(!1)}),[n]),!n)return null;const d=m.map(((e,t)=>(0,Er.jsx)(VC,{mode:l[t],answer:e,onClick:()=>{if(!r){if(o!==e){const n=[];return n[t]="selected",c(n),void s(e)}i(!0),setTimeout((()=>{c($C(m,o))}),1e3),setTimeout((()=>{a(o)}),3e3)}}},"".concat(e.id||"","|").concat(e.title))));return(0,Er.jsx)("div",{className:KC.quiz_question,children:(0,Er.jsxs)("div",{className:KC.quiz_question_body,children:[(0,Er.jsx)("div",{className:IC.quiz_title,style:{backgroundImage:"url(./assets/games/quize/cloud_big.png)"},children:n.title}),(0,Er.jsx)("div",{className:IC.quiz_question_answer,children:d}),(0,Er.jsx)("div",{className:IC.quiz_footer,children:(0,Er.jsx)(Or,{disabled:r,onClick:()=>{i(!0),setTimeout((()=>{c($C(m,o))}),1e3),setTimeout((()=>{a(o)}),3e3)},children:n.button||"Next question"})})]})})},YC={};const ZC=function(e){let{quiz:t,onClick:n}=e;return(0,Er.jsxs)("section",{className:YC.quiz_start,children:[(0,Er.jsx)("h4",{className:IC.quiz_title,children:t.title}),(0,Er.jsx)("p",{className:IC.quiz_description,children:t.description}),(0,Er.jsx)("div",{className:IC.quiz_footer,children:(0,Er.jsx)(Or,{onClick:()=>{n()},children:t.button||"GO"})})]})};const JC=function(e){let{quiz:n,onEnd:a}=e;const[o,s]=(0,t.useState)(n.questions[0]),[r,i]=(0,t.useState)(n.results[0]),[l,c]=(0,t.useState)([]),[m,d]=(0,t.useState)("start"),[p,u]=(0,t.useState)(!1),h=function(e,t){return n=>{e(!0),setTimeout((()=>{n()}),t/2),setTimeout((()=>{e(!1)}),t)}}(u,1500),f=function(e){const t={},n={};return e.forEach(((e,a)=>{null!==e&&void 0!==e&&e.id&&(t[null===e||void 0===e?void 0:e.id]=e),n[a]=e,e.index=a})),{byId:t,byIndex:n}}(n.questions);let g=null;"start"===m&&(g=(0,Er.jsx)(ZC,{quiz:n,onClick:()=>{h((()=>{d("question")}))}})),"question"===m&&(g=(0,Er.jsx)(qC,{question:o,onClick:e=>{const t=f.byId[e.nextQuestionId||""],a=f.byIndex[o.index+1],r=function(e,t){const n=e.reduce(((e,t)=>e+(t.score||0)),0);let a=t[0];return t.forEach((e=>{(e.min&&e.max&&n>=e.min&&n<=e.max||e.min&&!e.max&&n>=e.min||!e.min&&e.max&&n<=e.max)&&(a=e)})),a}(l,n.results);c([...l,e]),e.isEnd&&h((()=>{i(r),d("result")})),e.nextQuestionId&&t?h((()=>{s(t)})):h(a?()=>{s(a)}:()=>{i(r),d("result")})}})),"result"===m&&(g=(0,Er.jsx)(LC,{result:r,onClick:()=>{h((()=>{a(),s(n.questions[0]),c([]),d("start")}))}}));const y=p?"".concat(IC.quiz_slider," ").concat(IC.quiz_slider_animation):IC.quiz_slider;return(0,Er.jsxs)("div",{className:IC.quiz_container,style:{backgroundImage:"url(./assets/games/quize/cloud_bg.png)"},children:[(0,Er.jsx)("div",{className:IC.quiz_cloud_bg,style:{backgroundImage:"url(./assets/games/quize/cloud_bg.png)"}}),(0,Er.jsx)("div",{className:IC.quiz_cloud,style:{backgroundImage:"url(./assets/games/quize/cloud.png)"}}),(0,Er.jsx)("div",{className:y,children:g})]})},XC={title:"\u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u043e\u0442\u0434\u0435\u043b\u0430",icon:"./assets/games/wheel.jpg",description:"\u0422\u0435\u043a\u0441\u0442 \u0441 \u043a\u0430\u043a\u0438\u043c \u0442\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u043c \u043d\u0430 \u0442\u0440\u0438 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u043d\u0442\u0440\u0438\u0433\u0443\u044e\u0442 \u0438 \u043c\u0430\u043d\u044f\u0442 \u043f\u0440\u043e\u0439\u0442\u0438 \u044d\u0442\u043e\u0442 \u0443\u043d\u044b\u043b\u044b\u0439 \u043a\u0432\u0438\u0437 \u0441 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u043c \u0433\u0440\u0430\u0444\u0438\u043a\u0438.",questions:[{title:"\u0421\u043a\u043e\u043b\u044c \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0439 \u0441\u043e\u0437\u0434\u0430\u043b Anatoliy?",answers:[{title:"17",icon:"./assets/games/wheel.jpg",score:0},{title:"23",icon:"./assets/games/wheel.jpg",score:1},{title:"29",icon:"./assets/games/wheel.jpg",score:0}]},{title:"Albert \u043a\u043e\u043c\u043c\u0438\u0442\u0438\u0442 \u0447\u0430\u0449\u0435 Marrie?",answers:[{title:"\u0414\u0430",icon:"./assets/games/wheel.jpg",score:0},{title:"\u041d\u0435\u0442",icon:"./assets/games/wheel.jpg",score:1}]},{title:"\u0421\u0430\u043c\u043e\u0435 \u0434\u043b\u0438\u043d\u043d\u043e\u0435 commit message \u043e\u0441\u0442\u0430\u0432\u0438\u043b:",answers:[{title:"Kolya Elow",icon:"./assets/games/wheel.jpg",score:0},{title:"Subrine Titan",icon:"./assets/games/wheel.jpg",score:0},{title:"Grebenshikov Muz TV",icon:"./assets/games/wheel.jpg",score:1}]}],results:[{title:"\u041f\u043e\u0437\u0434\u0440\u0430\u0432\u043b\u044f\u0435\u043c, \u043f\u044b\u0442\u043a\u0430 \u043e\u043a\u043e\u043d\u0447\u0435\u043d\u0430",icon:"./assets/games/wheel.jpg",description:"\u0412\u044b \u043f\u0440\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u044d\u0442\u043e\u0442 \u043a\u0432\u0438\u0437 \u0438 \u0433\u043e\u0442\u043e\u0432\u044b \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043d\u0430 \u043d\u0435\u0433\u043e \u043e\u0442\u0437\u044b\u0432 \u0434\u043b\u0438\u043d\u043d\u043e\u0439 \u0434\u0432\u0430 \u0438\u043b\u0438 \u0442\u0440\u0438 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u044f.",min:0,max:60}]};const QC=function(e){let{}=e;return(0,Er.jsx)(JC,{quiz:XC,onEnd:()=>{}})},eE=un((()=>{const e=kr.dataGrip.author.statistic.filter((e=>!e.isStaff)),t=e.map((e=>e.taskInDay)),n=Math.max(...t),a=e.map((e=>({title:e.author,speed:e.taskInDay/n}))),o=[...e].sort(((e,t)=>t.maxMessageLength-e.maxMessageLength)).map((e=>({title:e.author,value:e.maxMessageLength})));return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(QC,{}),(0,Er.jsx)(hC,{tracks:a}),(0,Er.jsx)(Im,{title:"\u041c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0434\u043b\u0438\u043d\u043d\u0430 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u0430"}),(0,Er.jsx)(RC,{tracks:o})]})})),tE=eE;const nE=function(){return(0,Er.jsx)("div",{style:{pageBreakAfter:"always",breakAfter:"always"},children:" "})};const aE=function(){const{t:e}=zt(),t=kr.dataGrip.pr.statistic,n=co.getPRByGroups(t,"daysInWork"),a=ad({order:n.order,limit:3,suffix:"page.team.pr.tasks"}),o=co.getPRByGroups(t,"daysReview"),s=ad({order:o.order,limit:3,suffix:"PR"}),r=Math.round(n.weightedAverage),i=Math.round(o.weightedAverage),l=r+i,c=ad({order:["page.team.pr.word","page.team.pr.delay"],suffix:"page.team.pr.days"});return console.log(l.toFixed(1)),(0,Er.jsxs)(em,{children:[(0,Er.jsxs)(om,{children:[(0,Er.jsx)(kd,{title:"page.team.pr.workDays",options:a,details:n.details}),(0,Er.jsx)(kd,{title:"page.team.pr.middleTimeRelease",options:c,details:{"page.team.pr.work":r,"page.team.pr.delay":i}})]}),(0,Er.jsxs)(om,{children:[(0,Er.jsx)(kd,{title:"page.team.pr.delayDays",options:s,details:o.details}),(0,Er.jsx)(ji,{text:e("page.team.pr.description1")}),(0,Er.jsx)(ji,{text:e("page.team.pr.description2")}),(0,Er.jsx)(ji,{text:e("page.team.pr.description3")})]})]})};function oE(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;if(!t)return null;const s=ad({order:["page.team.pr.chart.1day","page.team.pr.chart.3day","page.team.pr.chart.7day","page.team.pr.chart.14day","page.team.pr.chart.30day","page.team.pr.chart.more"],limit:3}),r=ad({max:Nk(t,"weightedAverage"),order:["page.team.pr.work","page.team.pr.delay"],suffix:"page.team.pr.days"});return(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===o?"cards":void 0,columnCount:"print"===o?3:void 0,fullScreenMode:"author",children:[(0,Er.jsx)(xk,{isSortable:!0,template:qd.STRING,title:"page.team.pr.author",properties:"author",width:250}),(0,Er.jsx)(xk,{title:"page.team.pr.workDays",properties:"workDays",template:e=>(0,Er.jsx)(Ak,{options:s,details:e})}),(0,Er.jsx)(xk,{title:"page.team.pr.delayDays",properties:"delayDays",template:e=>(0,Er.jsx)(Ak,{options:s,details:e})}),(0,Er.jsx)(xk,{properties:"weightedAverage",template:qd.SHORT_NUMBER}),(0,Er.jsx)(xk,{title:"page.team.pr.middleTimeRelease",properties:"weightedAverageDetails",width:300,template:(e,t)=>(0,Er.jsx)(Ak,{options:r,value:t.weightedAverage,details:{"page.team.pr.work":e.workDays,"page.team.pr.delay":e.delayDays}})})]})}oE.defaultProps={response:void 0};const sE=oE;function rE(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;return t?(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:o,type:"print"===o?"cards":void 0,columnCount:"print"===o?2:void 0,fullScreenMode:"anonymous",children:["print"===o?(0,Er.jsx)(xk,{isSortable:!0,properties:"prId",width:140}):(0,Er.jsx)(xk,{isSortable:!0,template:(e,t)=>(0,Er.jsx)(qk,{prId:null===t||void 0===t?void 0:t.prId}),properties:"prId",width:120}),(0,Er.jsx)(xk,{isSortable:!0,template:qd.STRING,title:"page.team.pr.date",properties:"dateMerge",formatter:qn,width:130}),(0,Er.jsx)(xk,{isSortable:!0,template:qd.STRING,title:"page.team.pr.mergeAuthor",properties:"author"}),(0,Er.jsx)(xk,{isSortable:!0,template:qd.STRING,title:"page.team.pr.branch",properties:"branch"})]}):null}rE.defaultProps={mode:void 0,response:void 0};const iE=rE;function lE(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;if(!t)return null;const s=kr.dataGrip.tasks.statisticByName,r=ad({max:Nk(t,"daysInWork")}),i=ad({max:Nk(t,"daysReview")});return(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:o,type:"print"===o?"cards":void 0,columnCount:"print"===o?2:void 0,fullScreenMode:"all",children:["print"===o?(0,Er.jsx)(xk,{isSortable:!0,title:"page.team.pr.task",properties:"task",width:140}):(0,Er.jsx)(xk,{isSortable:!0,template:(e,t)=>(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Kk,{task:e}),(0,Er.jsx)(qk,{prId:null===t||void 0===t?void 0:t.prId})]}),title:"page.team.pr.task",properties:"task",width:120}),(0,Er.jsx)(xk,{template:qd.STRING,title:"page.team.pr.firstCommitTime",formatter:e=>{var t;return qn((null===(t=s.get(e.task))||void 0===t?void 0:t.from)||e.beginTaskTime)},width:130}),(0,Er.jsx)(xk,{isSortable:!0,template:qd.STRING,title:"page.team.pr.lastCommitTime",properties:"dateCreate",formatter:qn,width:130}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"daysInWork",width:40}),(0,Er.jsx)(xk,{isSortable:!0,title:"page.team.pr.all.workDays",properties:"daysInWork",minWidth:170,template:e=>(0,Er.jsx)(Ak,{options:r,value:e})}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"daysReview",width:40}),(0,Er.jsx)(xk,{isSortable:!0,title:"page.team.pr.all.delayDays",properties:"daysReview",minWidth:170,template:e=>(0,Er.jsx)(Ak,{options:i,value:e})}),(0,Er.jsx)(xk,{isSortable:!0,template:qd.STRING,title:"page.team.pr.date",properties:"dateMerge",formatter:qn,width:130}),(0,Er.jsx)(xk,{isSortable:!0,template:qd.STRING,title:"page.team.pr.mergeAuthor",properties:"author",width:250})]})}lE.defaultProps={mode:void 0,response:void 0};const cE=lE;const mE=un((e=>{let{mode:t}=e;const n=kr.dataGrip.pr.statistic,[a,o]=function(e){const t=[],n=[];return e.forEach((e=>{e.task?t.push(e):n.push(e)})),[t,n.reverse()]}(n),s=a.filter((e=>e.daysReview>4)),r=(!dl.isOpen||"all"===dl.mode)&&s.length>1,i=(!dl.isOpen||"anonymous"===dl.mode)&&o.length;if(!r&&!i)return"print"!==t?(0,Er.jsx)(hm,{}):null;const l=kr.dataGrip.pr.statisticByName,c=Object.values(l);return(0,Er.jsxs)(Er.Fragment,{children:[!dl.isOpen&&r&&(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:"page.team.pr.oneTaskDays"}),(0,Er.jsx)(aE,{})]}),r?(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:"page.team.pr.statByAuthors"}),(0,Er.jsxs)(Tm,{to:"response",loader:(e,n)=>Om({content:c,pagination:e,sort:n,mode:t}),children:[(0,Er.jsx)(sE,{mode:t,rowsForExcel:c}),(0,Er.jsx)(Dm,{})]}),(0,Er.jsx)(nE,{}),(0,Er.jsx)(Im,{title:"page.team.pr.longDelay"}),(0,Er.jsxs)(Tm,{to:"response",loader:(e,n)=>Om({content:s,pagination:"print"===t?{size:20}:e,sort:n}),children:[(0,Er.jsx)(cE,{mode:t,rowsForExcel:s}),"print"!==t&&(0,Er.jsx)(Dm,{})]})]}):null,(0,Er.jsx)(nE,{}),i?(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:"page.team.pr.anonymous"}),(0,Er.jsxs)(Tm,{to:"response",loader:(e,n)=>Om({content:o,pagination:"print"===t?{size:20}:e,sort:n}),children:[(0,Er.jsx)(iE,{mode:t,rowsForExcel:o}),"print"!==t&&(0,Er.jsx)(Dm,{})]})]}):null]})})),dE="table_of_contents",pE="table_of_contents_title",uE="table_of_contents_item";const hE=function(e){let{titles:t}=e;const{t:n}=zt(),a=(t||[]).map((e=>(0,Er.jsx)("a",{className:uE,href:"#".concat(e),children:n(e||"")},e)));return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{className:pE,title:"page.print.tableOfContents"}),(0,Er.jsx)("nav",{className:dE,children:a})]})},fE="cover",gE="cover_title",yE="cover_sub_title",vE=un((()=>{const{t:e}=zt();return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsxs)("div",{className:fE,children:[(0,Er.jsx)("h1",{className:gE,children:e("page.print.title")}),(0,Er.jsx)("h2",{className:yE,children:document.title}),(0,Er.jsx)(hE,{titles:["page.team.total.titleA","page.team.total.titleB","page.team.scope.title","page.team.author.title","page.team.type.title","page.team.pr.oneTaskDays","page.team.pr.statByAuthors","page.team.pr.longDelay","page.team.hours.title","page.common.words.title"]}),(0,Er.jsx)(ji,{text:e("page.print.description")})]}),(0,Er.jsx)(BT,{}),(0,Er.jsx)(nE,{}),(0,Er.jsx)(F_,{mode:"print"}),(0,Er.jsx)(nE,{}),(0,Er.jsx)(Ik,{mode:"print"}),(0,Er.jsx)(nE,{}),(0,Er.jsx)(mS,{mode:"print"}),(0,Er.jsx)(nE,{}),(0,Er.jsx)(mE,{mode:"print"}),(0,Er.jsx)(nE,{}),(0,Er.jsx)(uS,{mode:"print"}),(0,Er.jsx)(nE,{}),(0,Er.jsx)(FS,{mode:"print"}),(0,Er.jsx)(T_,{mode:"print"}),(0,Er.jsx)(P_,{mode:"print"})]})})),bE=vE;function wE(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;if(!t)return null;const s=Nk(t,"delayInDays"),r=Nk(t,"waitingInDays"),i=ad({max:Math.max(s,r),suffix:"page.team.release.chart"});return(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===o?"cards":void 0,columnCount:"print"===o?3:void 0,children:[(0,Er.jsx)(xk,{isFixed:!0,template:qd.DETAILS,width:40,formatter:e=>{const t=e.prIds.map((e=>{var t,n,a;return null===kr||void 0===kr||null===(t=kr.dataGrip)||void 0===t||null===(n=t.pr)||void 0===n||null===(a=n.pr)||void 0===a?void 0:a.get(e)})).filter((e=>e));return(0,Er.jsx)(cE,{response:{content:t},mode:"details"})}}),(0,Er.jsx)(xk,{isFixed:!0,template:qd.STRING,title:"page.team.release.title",properties:"title",width:200}),(0,Er.jsx)(xk,{template:qd.STRING,title:"page.team.release.from",width:150,properties:"from",formatter:qn}),(0,Er.jsx)(xk,{template:qd.STRING,title:"page.team.release.to",width:150,properties:"to",formatter:qn}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,title:"page.team.release.prLength",properties:"prLength"}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"delayInDays"}),(0,Er.jsx)(xk,{isSortable:!0,title:"page.team.release.delay",properties:"delayInDays",width:170,minWidth:170,template:e=>(0,Er.jsx)(Ak,{options:i,value:e})}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"waitingInDays"}),(0,Er.jsx)(xk,{isSortable:!0,title:"page.team.release.waiting",properties:"waitingInDays",width:170,minWidth:170,template:e=>(0,Er.jsx)(Ak,{options:i,value:e})})]})}wE.defaultProps={response:void 0};const kE=wE;function xE(e){var t,n,a;const o=e.message.substring(e.message.lastIndexOf(":")+2).replace(e.task,"").trim(),s=(null===Bn||void 0===Bn||null===(t=Bn.settings)||void 0===t||null===(n=t.linksPrefix)||void 0===n?void 0:n.task)||"/",r="#"===(null===(a=e.task)||void 0===a?void 0:a[0])?e.task.replace("#",""):e.task;return"- [".concat(r,"](").concat(s).concat(r,") ").concat(o)}function _E(){const e=kr.dataGrip.release.statistic.map((e=>{const t=Yn(e.lastCommit.date),n=function(e){const t=function(e){return e.reduce(((e,t)=>{const n=t.type||"";return e[n]||(e[n]=[]),e[n].push(t),e}),{})}(e);return Object.keys(t).sort().map((e=>{const n=t[e].map(xE).join("\n");return e?"\n### ".concat(e,"\n").concat(n):"\n".concat(n)})).join("\n")}(e.pr.map((e=>kr.dataGrip.pr.pr.get(e))).filter((e=>e)));return"\n## [".concat(e.title,"] - ").concat(t,"\n").concat(n)})).join("\n");return"# Change Log\n".concat(e)}function TE(){const e=_E();lk(new Blob([e],{type:"text/csv;charset=windows-utf-8;"}),"CHANGELOG.md")}const SE="team_release_download",CE=un((e=>{let{mode:t}=e;const{t:n}=zt(),a=kr.dataGrip.release.statistic;return(null===a||void 0===a?void 0:a.length)<2?"print"!==t?(0,Er.jsx)(hm,{}):null:(0,Er.jsxs)(Er.Fragment,{children:["print"===t?(0,Er.jsx)(Im,{title:"sidebar.team.extension"}):(0,Er.jsx)(Or,{mode:["slim"],className:SE,onClick:TE,children:n("page.team.release.download")}),(0,Er.jsxs)(Tm,{to:"response",loader:e=>Om({content:a,pagination:e,mode:t}),watch:"".concat(t).concat(kr.hash),children:[(0,Er.jsx)(kE,{mode:t,rowsForExcel:a}),(0,Er.jsx)(Dm,{})]})]})})),EE=CE;function jE(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;if(!t)return null;const s=ad({max:Nk(t,"lines"),suffix:"page.team.refactor.lines"}),r=ad({max:Nk(t,"totalTasks"),suffix:"page.team.refactor.tasks"}),i=ad({max:Nk(t,"totalDays"),suffix:"page.team.author.days"});return(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===o?"cards":void 0,columnCount:"print"===o?3:void 0,children:[(0,Er.jsx)(xk,{isFixed:!0,template:qd.DETAILS,width:40,properties:"tasks",formatter:e=>{const t=Array.from(null===e||void 0===e?void 0:e.tasks).reverse().map((e=>kr.dataGrip.tasks.statisticByName.get(e))).filter((e=>e));return(0,Er.jsx)(JT,{response:{content:t},mode:"details"})}}),(0,Er.jsx)(xk,{isFixed:!0,template:qd.STRING,properties:"pathString",title:"page.team.refactor.path",width:400}),(0,Er.jsx)(xk,{template:qd.STRING,properties:"firstCommit",title:"page.team.refactor.firstCommit",width:130,formatter:e=>qn(e.timestamp)}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"lines",width:90}),(0,Er.jsx)(xk,{isSortable:"lines",title:"page.team.refactor.totalLines",properties:"lines",minWidth:150,template:e=>(0,Er.jsx)(Ak,{options:s,value:e})}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"totalDays",width:90}),(0,Er.jsx)(xk,{isSortable:"totalDays",title:"page.team.refactor.totalDays",properties:"totalDays",minWidth:150,template:e=>(0,Er.jsx)(Ak,{options:i,value:e})}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"totalTasks",width:90}),(0,Er.jsx)(xk,{isSortable:"totalTasks",title:"page.team.refactor.totalTasks",properties:"totalTasks",minWidth:150,template:e=>(0,Er.jsx)(Ak,{options:r,value:e})})]})}jE.defaultProps={response:void 0};const AE=un((e=>{let{mode:t}=e;const n=kr.fileGrip.refactor.files;return null!==n&&void 0!==n&&n.length?(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:"page.team.refactor.title"}),(0,Er.jsxs)(Tm,{to:"response",loader:(e,a)=>Om({content:n,pagination:e,sort:a,mode:t}),children:[(0,Er.jsx)(jE,{}),(0,Er.jsx)(Dm,{})]})]}):(0,Er.jsx)(hm,{})}));function NE(e){let{response:t,updateSort:n,rowsForExcel:a,mode:o}=e;const{t:s}=zt();if(!t)return null;const[r,i]=[s("page.team.company.active.yes"),s("page.team.company.active.no")],[l,c,m]=[s("page.team.author.type.work"),s("page.team.author.type.dismissed"),s("page.team.author.type.staff")],d=ad({order:[l,c,m],max:Nk(t,"totalAuthors"),suffix:"page.team.department.authors"}),p=ad({max:Nk(t,"totalDays"),suffix:"page.team.author.days"});return(0,Er.jsxs)(wk,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===o?"cards":void 0,columnCount:"print"===o?3:void 0,children:[(0,Er.jsx)(xk,{isFixed:!0,template:qd.DETAILS,width:40,formatter:e=>{const t=kr.dataGrip.author.statistic.filter((t=>{var n;return null===e||void 0===e||null===(n=e.authors)||void 0===n?void 0:n.includes(t.author)}));return(0,Er.jsx)(sx,{response:{content:t},mode:"details"})}}),(0,Er.jsx)(xk,{isFixed:!0,template:qd.STRING,properties:"taskCode",title:"page.team.department.code"}),(0,Er.jsx)(xk,{title:"page.team.author.status",formatter:e=>e.isActive?r:i,template:e=>(0,Er.jsx)(Nd,{value:e}),width:140}),(0,Er.jsx)(xk,{template:qd.STRING,properties:"from",title:"page.team.department.from",width:130,formatter:qn}),(0,Er.jsx)(xk,{template:qd.STRING,properties:"to",title:"page.team.department.to",width:130,formatter:qn}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"totalDaysWorked",width:90}),(0,Er.jsx)(xk,{isSortable:"totalDays",title:"page.team.department.totalDays",properties:"totalDaysWorked",minWidth:150,template:e=>(0,Er.jsx)(Ak,{options:p,value:e})}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"totalAuthors",width:90}),(0,Er.jsx)(xk,{isSortable:"totalAuthors",title:"page.team.department.totalAuthors",minWidth:150,template:e=>{const t=kr.dataGrip.author.statisticByName,n=e.authors.reduce(((e,n)=>{const a=t[n]||{};return a.isStaff?pa(e,m):a.isDismissed?pa(e,c):pa(e,l),e}),{});return(0,Er.jsx)(Ak,{options:d,value:e.totalAuthors,details:n})}})]})}NE.defaultProps={response:void 0};const DE=NE,OE={LESS1:(0,_e.t)("page.team.author.employments.less1"),LESS2:(0,_e.t)("page.team.author.employments.less2"),LESS3:(0,_e.t)("page.team.author.employments.less3"),LESS6:(0,_e.t)("page.team.author.employments.less6"),LESS9:(0,_e.t)("page.team.author.employments.less9"),LESS12:(0,_e.t)("page.team.author.employments.less12"),LESS15:(0,_e.t)("page.team.author.employments.less15"),MORE:(0,_e.t)("page.team.author.employments.more")};const RE=un((()=>{const e=kr.dataGrip.taskCodes.statistic.filter((e=>e.totalDaysWorked>10)),[t,n]=function(e){return[ad({order:Object.values(OE),limit:1,suffix:"page.team.department.employments.item"}),e.reduce(((e,t)=>t.isActive?(t.totalWorked<=1?pa(e,OE.LESS1):t.totalWorked<=2?pa(e,OE.LESS2):t.totalWorked<=3?pa(e,OE.LESS3):t.totalWorked<=6?pa(e,OE.LESS6):t.totalWorked<=9?pa(e,OE.LESS9):t.totalWorked<=12?pa(e,OE.LESS12):t.totalWorked<=15?pa(e,OE.LESS15):pa(e,OE.MORE),e):e),{})]}(e),[a,o]=function(e){return[ad({order:Object.values(_d),limit:1,suffix:"page.team.department.daysChart.item"}),e.reduce(((e,t)=>(t.totalDays<183?pa(e,_d.HALF):t.totalDays<365?pa(e,_d.ONE):t.totalDays<547?pa(e,_d.HALF_ONE):t.totalDays<730?pa(e,_d.TWO):pa(e,_d.MORE),e)),{})]}(e);return Object.keys(n).length?(0,Er.jsxs)(em,{children:[(0,Er.jsx)(om,{children:(0,Er.jsx)(kd,{title:"page.team.department.daysChart.title",options:a,details:o})}),(0,Er.jsx)(om,{children:(0,Er.jsx)(kd,{title:"page.team.department.employments.title",options:t,details:n})})]}):(0,Er.jsx)(em,{children:(0,Er.jsx)(kd,{title:"page.team.department.daysChart.title",options:a,details:o})})})),PE=un((e=>{let{mode:t}=e;const n=kr.dataGrip.taskCodes.statistic.filter((e=>e.totalDaysWorked>10));return null!==n&&void 0!==n&&n.length?(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(RE,{}),(0,Er.jsx)(Im,{title:"page.team.department.title"}),(0,Er.jsxs)(Tm,{to:"response",loader:(e,a)=>Om({content:n,pagination:e,sort:a,mode:t}),children:[(0,Er.jsx)(DE,{}),(0,Er.jsx)(Dm,{})]})]}):(0,Er.jsx)(hm,{})})),IE=un((e=>{let t,{page:n}=e;return dl.isOpen&&(t="fullscreen"),pc.processing&&(t="print"),"total"===n?(0,Er.jsx)(BT,{}):"scope"===n?(0,Er.jsx)(F_,{mode:t}):"author"===n?(0,Er.jsx)(Ik,{mode:t}):"company"===n?(0,Er.jsx)(cx,{mode:t}):"country"===n?(0,Er.jsx)(c_,{mode:t}):"type"===n?(0,Er.jsx)(mS,{mode:t}):"pr"===n?(0,Er.jsx)(mE,{mode:t}):"day"===n?(0,Er.jsx)(TT,{}):"week"===n?(0,Er.jsx)(uS,{mode:t}):"month"===n?(0,Er.jsx)(FS,{mode:t}):"hours"===n?(0,Er.jsx)(T_,{mode:t}):"files"===n?(0,Er.jsx)(nS,{}):"removedFiles"===n?(0,Er.jsx)(nS,{type:"removed"}):"extension"===n?(0,Er.jsx)(iS,{mode:t}):"release"===n?(0,Er.jsx)(EE,{mode:t}):"commits"===n?(0,Er.jsx)(ax,{}):"changes"===n?(0,Er.jsx)(d_,{}):"words"===n?(0,Er.jsx)(P_,{mode:t}):"building"===n?(0,Er.jsx)(tE,{}):"print"===n?(0,Er.jsx)(bE,{}):"tasks"===n?(0,Er.jsx)(VS,{}):"refactor"===n?(0,Er.jsx)(AE,{}):"department"===n?(0,Er.jsx)(PE,{}):(0,Er.jsx)(BT,{})}));function LE(){const{type:e}=Q();return e&&"team"!==e?null:(0,Er.jsx)(Yc,{getViewById:e=>(0,Er.jsx)(IE,{page:e})})}const FE=un((e=>{let{filters:n,onChange:a}=e;const{type:o,page:s,userId:r}=Q(),i=X(),l=parseInt(r||"0",10)||0,c=kr.dataGrip.author.list.map(((e,t)=>({id:t,title:e}))),m=kr.dataGrip.timestamp.statistic.allCommitsByTimestamp||[],d=(0,t.useMemo)((()=>wT(m)),[m]);return(0,Er.jsxs)("div",{className:vT,children:[(0,Er.jsx)(Px,{title:"page.team.tree.filters.author",value:l,className:bT,options:c,onChange:e=>{i("/".concat(o,"/").concat(s,"/").concat(e))}}),"day"===s?(0,Er.jsx)(Px,{reverse:!0,title:"page.team.tree.filters.author",value:(null===n||void 0===n?void 0:n.week)||m[m.length-1].week,className:bT,options:d.reverse(),onChange:e=>{a({...n,week:e})}}):null]})})),ME=FE,WE=un((e=>{let{user:t}=e;const n=kr.dataGrip.timestamp.statisticByAuthor[t.author];return(0,Er.jsx)(m_,{statistic:n})})),BE=un((e=>{let{user:t}=e;const n=kr.dataGrip.timestamp.statisticByAuthor[t.author];return(0,Er.jsx)(nx,{statistic:n})})),zE=un((e=>{let{user:t}=e;return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:"page.person.hours.title"}),(0,Er.jsx)(em,{template:"table",children:(0,Er.jsx)(x_,{statistic:t})})]})}));const UE=function(){return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)("p",{className:lm,children:(0,_e.t)("uiKit.nothingFound.staff.title")}),(0,Er.jsx)("p",{className:cm,children:(0,_e.t)("uiKit.nothingFound.staff.description1")}),(0,Er.jsx)("p",{className:cm,children:(0,_e.t)("uiKit.nothingFound.staff.description2")})]})},HE=un((e=>{let{user:t}=e;const n=t,a=kr.dataGrip.scoring.total,o=kr.dataGrip.scoring.statisticByName[t.author],s=kr.dataGrip.timestamp.statisticByAuthor[n.author],r=n.tasks.length;return n.isStaff?(0,Er.jsx)(hm,{children:(0,Er.jsx)(UE,{})}):(0,Er.jsxs)(em,{children:[(0,Er.jsxs)(om,{children:[(0,Er.jsx)(Im,{title:"page.person.money.title.total"}),(0,Er.jsxs)("div",{children:[(0,Er.jsx)(MT,{value:Xn(n.moneyAll),icon:"./assets/cards/money_total.png",title:"page.person.money.moneyAll.title",description:"page.person.money.moneyAll.description",scoring:{value:o.moneyAll,total:a.moneyAll}}),(0,Er.jsx)(MT,{value:Xn(n.moneyWorked),icon:"./assets/cards/money_work.png",title:"page.person.money.moneyWorked.title",description:"page.person.money.moneyWorked.description",scoring:{value:o.moneyWorked,total:a.moneyWorked}}),(0,Er.jsx)(MT,{value:Xn(n.moneyLosses),icon:"./assets/cards/money_lazy.png",title:"page.person.money.moneyLosses.title",description:"page.person.money.moneyLosses.description",scoring:{value:o.moneyLosses,total:a.moneyLosses}}),(0,Er.jsx)(MT,{value:Xn(s.weekendPayment),icon:"./assets/cards/money_holidays.png",title:"page.team.total.weekendPayment.title",description:"page.team.total.weekendPayment.description",scoring:{value:o.weekendPayment,total:a.weekendPayment}})]})]}),(0,Er.jsxs)(om,{children:[(0,Er.jsx)(Im,{title:"page.person.money.title.middle"}),0===r?(0,Er.jsx)(hm,{}):(0,Er.jsxs)("div",{children:[(0,Er.jsx)(MT,{size:"l",value:r?Xn(n.moneyWorked/r,0):null,icon:"./assets/cards/money_task.png",title:"page.person.money.tasks.title",description:"page.person.money.tasks.description",scoring:{value:o.moneyForTask,total:a.moneyForTask}}),(0,Er.jsx)(MT,{size:"l",value:r?Xn(n.moneyWorked/n.commits,0):null,icon:"./assets/cards/money_work.png",title:"page.person.money.commits.title",description:"page.person.money.commits.description",scoring:{value:o.moneyForCommit,total:a.moneyForCommit}})]})]})]})})),GE=un((e=>{let{user:t,mode:n}=e;const a=t.wordStatistics;return(0,Er.jsx)(R_,{mode:n,statistic:a})}));function VE(e){let{size:t}=e;const n=[ST,PT];return"s"===t&&n.push(OT),"l"===t&&n.push(RT),(0,Er.jsx)(Mm,{className:n.join(" ")})}VE.defaultProps={size:"m"};const KE=VE,$E=un((e=>{let{user:t}=e;const n=t,a=kr.dataGrip.timestamp.statisticByAuthor[n.author],o=kr.dataGrip.scoring.statisticByName[t.author],s=kr.dataGrip.scoring.total,r=n.tasks.length;return n.isStaff?(0,Er.jsx)(hm,{children:(0,Er.jsx)(UE,{})}):(0,Er.jsxs)(em,{children:[(0,Er.jsxs)(om,{children:[(0,Er.jsx)(Im,{title:"page.person.speed.task"}),0===r?(0,Er.jsx)(hm,{}):(0,Er.jsxs)("div",{children:[(0,Er.jsx)(MT,{value:n.daysForTask&&r?Qn(n.daysForTask):null,icon:"./assets/cards/month.png",title:"page.person.speed.days.title",description:"page.person.speed.days.description",scoring:{value:o.daysForTask,total:s.daysForTask}}),(0,Er.jsx)(MT,{value:r?(n.commits/r).toFixed(1):null,icon:"./assets/cards/commits.png",title:"page.person.speed.commits.title",description:"page.person.speed.commits.description",scoring:{value:o.commitsForTask,total:s.commitsForTask}}),(0,Er.jsx)(MT,{value:r?n.changesForTask:null,icon:"./assets/cards/lines.png",title:"page.person.speed.line.title",description:"page.person.speed.line.description",scoring:{value:o.changesForTask,total:s.changesForTask}}),(0,Er.jsx)(KE,{})]})]}),(0,Er.jsxs)(om,{children:[(0,Er.jsx)(Im,{title:"page.person.speed.max"}),(0,Er.jsxs)("div",{children:[(0,Er.jsx)(MT,{size:"l",value:a.tasksByTimestampCounter.max,icon:"./assets/cards/tasks.png",title:"page.person.speed.tasks.title",description:"page.person.speed.tasks.description",scoring:{value:o.speedMaxTasks,total:s.speedMaxTasks}}),(0,Er.jsx)(MT,{size:"l",value:a.commitsByTimestampCounter.max,icon:"./assets/cards/commits.png",title:"page.person.speed.maxCommits.title",description:"page.person.speed.maxCommits.description",scoring:{value:o.speedMaxCommits,total:s.speedMaxCommits}})]})]})]})})),qE={achievement_container:"achievement_container",achievement:"achievement",achievement_icon_container:"achievement_icon_container",achievement_icon:"achievement_icon",achievement_icon_svg:"achievement_icon_svg",achievement_title:"achievement_title",achievement_description:"achievement_description",achievement_good:"achievement_good",achievement_bad:"achievement_bad"};const YE=function(e){let{code:t}=e;const{t:n}=zt();if(!kn[t])return null;const a=n("achievements.".concat(t,".title")),o=n("achievements.".concat(t,".description")),s=[qE.achievement_good,qE.achievement_middle,qE.achievement_bad][kn[t]-1];return(0,Er.jsxs)("div",{className:qE.achievement,children:[(0,Er.jsx)("div",{className:qE.achievement_icon_container,children:(0,Er.jsx)("div",{className:"".concat(qE.achievement_icon," ").concat(s||""),children:(0,Er.jsx)("img",{className:qE.achievement_icon_svg,src:"./assets/achievements/".concat(t,".svg")})})}),(0,Er.jsx)("div",{className:qE.achievement_title,children:a}),(0,Er.jsx)("div",{className:qE.achievement_description,children:o})]})};const ZE=function(e){let{list:t}=e;const n=null===t||void 0===t?void 0:t.map((e=>(0,Er.jsx)(YE,{code:e},e)));return(0,Er.jsx)("div",{className:qE.achievement_container,children:n})};const JE="get_list",XE="get_list_container",QE="get_list_title",ej="get_list_icon",tj="get_list_big_number",nj="get_list_task",aj="get_list_pr",oj="get_list_date";const sj=function(e){var t,n;let{commit:a,mode:o}=e;const s=((null===(t=a.taskNumber)||void 0===t?void 0:t.length)||1)>5?tj:"",r=Ko.tasks.statisticByName.get(a.task),i=Ko.pr.pr.get(null===r||void 0===r||null===(n=r.prIds)||void 0===n?void 0:n[0]);return(0,Er.jsxs)("div",{className:JE,children:[(0,Er.jsxs)("div",{className:QE,children:[(0,Er.jsx)(Kk,{task:a.task,className:nj}),"print"!==o&&(0,Er.jsx)(qk,{text:"pull request",prId:i,className:aj})]}),(0,Er.jsx)("div",{className:"".concat(ej," ").concat(s),children:a.taskNumber}),(0,Er.jsx)("div",{className:oj,children:qn(a.date)})]})};const rj=function(e){let{list:t,mode:n}=e;const a=null===t||void 0===t?void 0:t.map((e=>(0,Er.jsx)(sj,{commit:e,mode:n},e.taskNumber)));return(0,Er.jsx)("div",{className:XE,children:a})};function ij(e){let{title:t,achievements:n}=e;const{t:a}=zt();return null!==n&&void 0!==n&&n.length?(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(ji,{text:"# ".concat(a(t))}),(0,Er.jsx)(ZE,{list:n})]}):null}const lj=un((e=>{let{user:t}=e;const{t:n}=zt(),a=t,o=kr.dataGrip.get.getsByAuthor[t.author],s=kr.dataGrip.scoring.statisticByName[t.author],r=kr.dataGrip.scoring.total,i=a.tasks.length,l=Rn.authors[a.author];return(0,Er.jsxs)(em,{children:[(0,Er.jsxs)(om,{children:[(0,Er.jsx)(Im,{title:"page.person.total.title"}),(0,Er.jsxs)("div",{children:[!1,(0,Er.jsx)(MT,{value:a.daysWorked,icon:"./assets/cards/work_days.png",title:"page.person.total.daysWorked.title",description:"page.person.total.daysWorked.description",scoring:{value:s.daysWorked,total:r.daysWorked}}),(0,Er.jsx)(MT,{value:i||null,icon:"./assets/cards/tasks.png",title:"page.person.total.tasks.title",description:"page.person.total.tasks.description",scoring:{value:s.tasks,total:r.tasks}}),(0,Er.jsx)(MT,{value:a.daysLosses,icon:"./assets/cards/lazy.png",title:"page.team.total.daysLosses.title",description:"page.team.total.daysLosses.description",scoring:{value:s.daysLosses,total:r.daysLosses}}),(0,Er.jsx)(MT,{value:a.commits,icon:"./assets/cards/commits.png",title:"page.team.total.commits.title",description:"page.team.total.commits.description",scoring:{value:s.commits,total:r.commits}}),(0,Er.jsx)(KE,{size:"l"})]}),!1,!1]}),(0,Er.jsxs)(om,{children:[(0,Er.jsx)(Im,{title:"page.person.achievement.title"}),(0,Er.jsx)(ij,{title:"page.person.achievement.positive",achievements:l[vn-1]}),(0,Er.jsx)(ij,{title:"page.person.achievement.normal",achievements:l[bn-1]}),(0,Er.jsx)(ij,{title:"page.person.achievement.negative",achievements:l[wn-1]}),(0,Er.jsx)(ji,{text:n("page.person.achievement.description")}),(0,Er.jsx)("br",{}),(0,Er.jsx)("br",{}),null!==o&&void 0!==o&&o.length?(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:"page.person.gets.title"}),(0,Er.jsx)(rj,{list:o}),(0,Er.jsx)(ji,{text:n("page.person.gets.description")})]}):null]})]})})),cj=lj;function mj(e){let{response:t,updateSort:n,name:a,mode:o}=e;if(!t)return null;const s=ad({max:Nk(t,"authors",a),order:kr.dataGrip.type.list}),r=ad({max:7,order:["page.person.week.workDay","page.person.week.weekends"],suffix:"page.person.week.days"}),i=ad({max:Nk(t,"taskInDay",a)});return(0,Er.jsxs)(wk,{rows:t.content,sort:t.sort,updateSort:n,type:"print"===o?"cards":void 0,columnCount:"print"===o?3:void 0,children:[(0,Er.jsx)(xk,{isFixed:!0,template:qd.STRING,title:"page.person.week.date",properties:"timestamp",formatter:ea,width:200}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"authors",formatter:e=>e[a]||0}),(0,Er.jsx)(xk,{title:"page.person.week.tasks",template:e=>(0,Er.jsx)(Ak,{options:s,value:e.authors[a],details:e.typeByAuthor[a]}),width:200}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"workDays",formatter:e=>e[a]||0}),(0,Er.jsx)(xk,{title:"page.person.week.workDays",template:e=>{let[t,n]=e;return(0,Er.jsx)(Ak,{options:r,value:t+n,details:{"page.person.week.workDay":t,"page.person.week.weekends":n}})},formatter:e=>(null===e||void 0===e?void 0:e.workDays[a])>5?[5,(null===e||void 0===e?void 0:e.workDays[a])-5]:[null===e||void 0===e?void 0:e.workDays[a],0],width:200}),(0,Er.jsx)(xk,{template:qd.SHORT_NUMBER,properties:"taskInDay",formatter:e=>Qn(e[a]||0)}),(0,Er.jsx)(xk,{title:"page.person.week.taskInDay",properties:"taskInDay",template:e=>(0,Er.jsx)(Ak,{options:i,value:e[a]}),width:200})]})}mj.defaultProps={response:void 0};const dj=un((e=>{var t;let{user:n,mode:a}=e;const o=n,s=kr.dataGrip.week.statistic.filter((e=>e.authors[o.author]));if(null===s||void 0===s||!s.length)return(0,Er.jsx)(hm,{});const r=null===(t=kr.dataGrip.recommendations.person)||void 0===t?void 0:t.byWeek[o.author];return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(td,{mode:a,recommendations:r}),(0,Er.jsxs)(Tm,{to:"response",loader:(e,t)=>Om({content:s,pagination:e,sort:t}),children:[(0,Er.jsx)(mj,{name:o.author,mode:a}),"print"!==a&&(0,Er.jsx)(Dm,{})]})]})})),pj=dj,uj=un((e=>{let{user:t}=e;const n=t,a=kr.dataGrip.timestamp.statisticByAuthor[n.author],o=a.commitsByTimestampCounter.max;return(0,Er.jsx)(em,{template:"table",children:(0,Er.jsx)(IS,{showEvents:!1,maxCommits:o,authors:[n],wordDays:a.allCommitsByTimestamp})})})),hj=un((e=>{let{user:t,mode:n}=e;const a=kr.dataGrip.tasks.statistic.filter((e=>{var n;return e.author===t.author||(null===e||void 0===e||null===(n=e.authors)||void 0===n?void 0:n[t.author])}));return null!==a&&void 0!==a&&a.length?(0,Er.jsxs)(Tm,{to:"response",loader:(e,t)=>Om({content:a,pagination:e,sort:t,mode:n}),watch:"".concat(n).concat(kr.hash).concat(t.author),children:[(0,Er.jsx)(GS,{mode:n,rowsForExcel:a}),(0,Er.jsx)(Dm,{})]}):"print"!==n?(0,Er.jsx)(hm,{}):null}));function fj(e){let{response:t,user:n}=e;return t?(0,Er.jsx)(yT,{days:t.content,author:n}):null}fj.defaultProps={response:void 0};const gj=un((e=>{let{user:t,filters:n}=e;const a=kr.dataGrip.timestamp.statistic.allCommitsByTimestamp||[];if(null===a||void 0===a||!a.length)return(0,Er.jsx)(hm,{});const o=function(e,t){return t.filter((t=>t.week===e.week)).slice(0,7)}({week:n.week,user:t.author},a);return null!==o&&void 0!==o&&o.length?(0,Er.jsx)(Er.Fragment,{children:(0,Er.jsx)(em,{template:"table",children:(0,Er.jsxs)(Tm,{to:"response",loader:()=>Om({content:o}),watch:JSON.stringify(n),children:[(0,Er.jsx)(fj,{user:t.author}),(0,Er.jsx)(Dm,{})]})})}):(0,Er.jsx)(hm,{})})),yj="place_for_photo",vj=un((e=>{let{user:t}=e;const{t:n}=zt(),a=t,o=a.tasks.length;return(0,Er.jsxs)(em,{children:[(0,Er.jsxs)(om,{children:[(0,Er.jsx)(MT,{value:"",icon:"./assets/cards/work_days.png",title:"page.person.print.photo.title"}),(0,Er.jsx)("div",{className:yj,children:n("page.person.print.photo.description")})]}),(0,Er.jsxs)(om,{children:[(0,Er.jsx)(Im,{title:a.author}),(0,Er.jsxs)("div",{children:[(0,Er.jsx)(MT,{value:a.daysWorked,icon:"./assets/cards/work_days.png",title:"page.person.total.daysWorked.title",description:"page.person.total.daysWorked.description"}),(0,Er.jsx)(MT,{value:o||null,icon:"./assets/cards/tasks.png",title:"page.person.total.tasks.title",description:"page.person.total.tasks.description"}),(0,Er.jsx)(MT,{value:a.daysLosses,icon:"./assets/cards/lazy.png",title:"page.team.total.daysLosses.title",description:"page.team.total.daysLosses.description"}),(0,Er.jsx)(MT,{value:a.commits,icon:"./assets/cards/commits.png",title:"page.team.total.commits.title",description:"page.team.total.commits.description"})]})]})]})})),bj=vj;function wj(e){let{title:t,achievements:n}=e;return null!==n&&void 0!==n&&n.length?(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(ji,{text:"# ".concat(t)}),(0,Er.jsx)(ZE,{list:n})]}):null}const kj=un((e=>{let{user:t}=e;const{t:n}=zt(),a=t,o=kr.dataGrip.get.getsByAuthor[a.author],s=Rn.authors[a.author];return(0,Er.jsxs)(em,{children:[(0,Er.jsxs)(om,{children:[(0,Er.jsx)(Im,{title:"page.person.achievement.title"}),(0,Er.jsx)(wj,{title:"page.person.achievement.positive",achievements:s[vn-1]})]}),(0,Er.jsxs)(om,{children:[(0,Er.jsx)(Im,{title:n("_")}),(0,Er.jsx)(wj,{title:"page.person.achievement.normal",achievements:s[bn-1]}),(0,Er.jsx)(wj,{title:"page.person.achievement.negative",achievements:s[wn-1]}),(0,Er.jsx)("br",{}),(0,Er.jsx)("br",{}),null!==o&&void 0!==o&&o.length?(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:"page.person.gets.title"}),(0,Er.jsx)(rj,{mode:"print",list:o}),(0,Er.jsx)(ji,{text:n("page.person.gets.description")})]}):null]})]})})),xj=kj,_j=un((e=>{let{user:t}=e;const{t:n}=zt();return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsxs)("div",{className:fE,children:[(0,Er.jsx)("h1",{className:gE,children:n("page.print.title")}),(0,Er.jsx)("h2",{className:yE,children:t.author}),(0,Er.jsx)(hE,{titles:["page.team.total.titleA","page.person.speed.task","page.person.speed.max","page.team.total.titleB","page.person.achievement.title","page.person.hours.title","page.common.words.title"]}),(0,Er.jsx)(ji,{text:n("page.print.description")})]}),(0,Er.jsx)(nE,{}),(0,Er.jsx)(bj,{user:t}),(0,Er.jsx)($E,{user:t}),(0,Er.jsx)(HE,{user:t}),(0,Er.jsx)(nE,{}),(0,Er.jsx)(xj,{user:t}),(0,Er.jsx)(nE,{}),(0,Er.jsx)(zE,{user:t}),(0,Er.jsx)(pj,{user:t,mode:"print"}),(0,Er.jsx)(nE,{}),(0,Er.jsx)(uj,{user:t}),(0,Er.jsx)(GE,{user:t,mode:"print"})]})})),Tj=_j;const Sj=un((e=>{let{userId:n}=e;const{t:a}=zt(),{type:o,page:s,userId:r}=Q(),i=kr.dataGrip.timestamp.statistic.allCommitsByTimestamp||[],l=i.length?i[i.length-1].week:0,[c,m]=(0,t.useState)({week:l}),d=kr.dataGrip.author.statistic[n||r||0];if("person"!==o||!d)return null;const p=function(e,t){return function(n){let a;return dl.isOpen&&(a="fullscreen"),pc.processing&&(a="print"),"total"===n?(0,Er.jsx)(cj,{user:e}):"money"===n?(0,Er.jsx)(HE,{user:e}):"week"===n?(0,Er.jsx)(pj,{user:e,mode:a}):"month"===n?(0,Er.jsx)(uj,{user:e}):"hours"===n?(0,Er.jsx)(zE,{user:e}):"commits"===n?(0,Er.jsx)(BE,{user:e}):"changes"===n?(0,Er.jsx)(WE,{user:e}):"words"===n?(0,Er.jsx)(GE,{user:e,mode:a}):"speed"===n?(0,Er.jsx)($E,{user:e}):"day"===n?(0,Er.jsx)(gj,{user:e,filters:t}):"print"===n?(0,Er.jsx)(Tj,{user:e}):"tasks"===n?(0,Er.jsx)(hj,{user:e}):(0,Er.jsx)(cj,{user:e})}}(d,c);return(0,Er.jsxs)(Er.Fragment,{children:["print"!==s&&(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:a("common.filters")}),(0,Er.jsx)(ME,{filters:c,onChange:m})]}),(0,Er.jsx)(Yc,{getViewById:p})]})})),Cj=Sj,Ej=un((()=>{const e=kr.dataGrip.author.statistic,t=Object.entries(e).filter((e=>{let[,t]=e;return!t.isStaff})).map((e=>{let[t,n]=e;return(0,Er.jsx)(Tj,{user:n},t)}));return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(bE,{}),t]})})),jj="console",Aj="console_header",Nj="console_body",Dj="console_header_icon",Oj="console_copy";function Rj(e){let{className:t,textForCopy:n,children:a}=e;return(0,Er.jsxs)("div",{className:"".concat(jj," ").concat(t||""),children:[(0,Er.jsxs)("div",{className:"".concat(Aj),children:[(0,Er.jsx)("span",{className:"".concat(Dj)}),(0,Er.jsx)("span",{className:"".concat(Dj)}),(0,Er.jsx)("span",{className:"".concat(Dj)})]}),(0,Er.jsx)("div",{className:"".concat(Nj),children:a||n}),n?(0,Er.jsx)(Or,{mode:"second",className:"".concat(Oj),onClick:()=>{Ni(n),Ai.Z.show((0,_e.t)("uiKit.console.notification"))},children:(0,_e.t)("uiKit.console.button")}):null]})}Rj.defaultProps={textForCopy:void 0,children:void 0,className:""};const Pj=Rj,Ij="welcome",Lj="welcome_console",Fj="welcome_row",Mj="welcome_warning",Wj="welcome_warning_text",Bj="welcome_description",zj="welcome_first_title",Uj="welcome_last_title",Hj="welcome_title_link";function Gj(){return(0,Er.jsxs)("h4",{className:Mj,children:[(0,Er.jsx)(ji,{text:(0,_e.t)("page.welcome.warning1"),className:Wj}),(0,Er.jsx)(ji,{text:(0,_e.t)("page.welcome.warning2"),className:Wj})]})}const Vj=function(){const e=window.ym;return(0,Er.jsxs)(Er.Fragment,{children:[e&&(0,Er.jsx)(Gj,{}),(0,Er.jsx)("section",{className:Ij,children:(0,Er.jsxs)("div",{className:Fj,children:[(0,Er.jsx)("h2",{className:zj,children:(0,_e.t)("page.welcome.step1")}),(0,Er.jsx)(Pj,{className:Lj,textForCopy:'git --no-pager log --raw --numstat --oneline --all --reverse --date=iso-strict --pretty=format:"%ad>%aN>%aE>%s" > log.txt\n'}),(0,Er.jsx)(ji,{text:(0,_e.t)("page.welcome.description"),className:"".concat(Bj)}),(0,Er.jsxs)("h2",{className:Uj,children:["page.welcome.step2"===(0,_e.t)("page.welcome.step2")?"":(0,_e.t)("page.welcome.step2"),(0,Er.jsxs)("label",{className:Hj,children:[(0,_e.t)("page.welcome.step3"),(0,Er.jsx)("input",{multiple:!0,type:"file",style:{display:"none"},onChange:async e=>{const t=Array.from(e.target.files),n=_r(await Tr(t));sr.show(),kr.asyncSetCommits(n)}})]}),(0,_e.t)("page.welcome.step4")]})]})})]})};const Kj=function(e){let{title:n,mode:a,disabled:o,className:s,options:r,onClick:i,children:l}=e;if(null===r||void 0===r||!r.length)return null;const[c,m]=(0,t.useState)(!1),d=Dr(a,o),p=null===r||void 0===r?void 0:r.map((e=>{var t,a,o;const s=null!==(t=null!==(a=null!==(o=null===e||void 0===e?void 0:e.title)&&void 0!==o?o:null===e||void 0===e?void 0:e.id)&&void 0!==a?a:e)&&void 0!==t?t:"";return(0,Er.jsx)("button",{className:Ar.ui_kit_button_menu,onClick:()=>{i&&i(e),m(!1)},children:s},n)}));return(0,Er.jsx)(Er.Fragment,{children:(0,Er.jsxs)("button",{title:n,className:"".concat(Ar.ui_kit_button," ").concat(d||""," ").concat(s||""),style:{position:"relative"},onClick:()=>{m(!c)},children:[l,c&&(0,Er.jsx)("div",{className:Ar.ui_kit_dialog,children:p})]})})};const $j=function(e){let{columns:t,className:n,children:a}=e;return(0,Er.jsx)("div",{className:"".concat(Ul," ").concat(n||""),style:{columnCount:t||2},children:a})},qj="ui_kit_switch",Yj="ui_kit_switch_item",Zj="ui_kit_switch_item_selected",Jj="ui_kit_switch_item_disabled";const Xj=function(e){let{title:t,description:n,help:a,error:o,className:s,disabled:r,multiple:i,value:l,options:c,onChange:m}=e;const d=l||0===l||!1===l;let p=l;d&&!Array.isArray(l)&&(p=[l]);const u=(c||[]).map(((e,t)=>{var n,a;const o="object"!==typeof e?{id:e,title:e}:e,s=d&&p.includes(null===o||void 0===o?void 0:o.id),l=[Yj];return s&&l.push(Zj),r&&l.push(Jj),(0,Er.jsx)("button",{className:l.join(" "),onClick:()=>{if(!m)return;let e=[null===o||void 0===o?void 0:o.id];i&&(e=s?p.filter((e=>e!==(null===o||void 0===o?void 0:o.id))):[...p,null===o||void 0===o?void 0:o.id].sort()),m(e)},children:null!==(n=null!==(a=null===o||void 0===o?void 0:o.title)&&void 0!==a?a:null===o||void 0===o?void 0:o.id)&&void 0!==n?n:""},"".concat(null===o||void 0===o?void 0:o.id,"_").concat(t))}));return(0,Er.jsx)($l,{title:t,description:n,help:a,error:o,className:s,children:(0,Er.jsx)("div",{className:qj,children:u})})};function Qj(e){let{title:t,description:n,help:a,error:o,className:s,value:r,placeholder:i,onChange:l}=e;const c=(null===r||void 0===r?void 0:r.length)>10?r.substring(0,10):r;return(0,Er.jsx)($l,{title:t,description:n,help:a,error:o,className:s,children:(0,Er.jsx)("input",{type:"date",value:c,placeholder:i,className:ql,onChange:e=>{l&&l("".concat(e.target.value,"T00:00:00.000Z"))}})})}Qj.defaultProps={placeholder:"\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435"};const eA=Qj;const tA=function(e){let{salary:n,index:a,onChange:o,onRemove:s}=e;const[r,i]=(0,t.useState)(!1);return(0,Er.jsxs)("div",{className:ec.salary,children:[(0,Er.jsx)(Im,{title:_e.Z.get("page.settings.user.subTitle",a),className:r?"":ec.salary_title}),(0,Er.jsx)("div",{className:ec.salary_icons,children:(0,Er.jsx)("img",{className:ec.salary_icons_item,src:"./assets/list/arrow.svg",onClick:()=>i(!r)})}),r&&(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsxs)($j,{children:[(0,Er.jsx)(eA,{title:"page.settings.user.from",value:null===n||void 0===n?void 0:n.from,onChange:e=>{o({...n,from:e})}}),(0,Er.jsx)(Xj,{disabled:!0,title:"page.settings.common.workDaysInWeek",value:n.workDaysInWeek,options:[1,2,3,4,5,6,7],onChange:e=>{o({...n,workDaysInWeek:e})}})]}),(0,Er.jsxs)($j,{children:[(0,Er.jsx)(UT,{title:"page.settings.common.salary",value:null===n||void 0===n?void 0:n.value,onChange:e=>{o({...n,value:e})}}),(0,Er.jsx)(Xj,{disabled:!0,title:"page.settings.common.currency",value:null===n||void 0===n?void 0:n.currency,options:["RUB","USD","EUR"],onChange:e=>{o({...n,currency:e})}})]}),(0,Er.jsxs)($j,{children:[(0,Er.jsx)(UT,{title:"page.settings.common.workDaysInYear",value:null===n||void 0===n?void 0:n.workDaysInYear,onChange:e=>{o({...n,workDaysInYear:e})}}),(0,Er.jsx)(UT,{title:"page.settings.common.vacationDaysInYear",value:null===n||void 0===n?void 0:n.vacationDaysInYear,onChange:e=>{o({...n,vacationDaysInYear:e})}})]}),(0,Er.jsx)("div",{className:ec.salary_footer,children:(0,Er.jsx)(Or,{mode:"second",onClick:()=>$i.open().then((()=>s())),children:_e.Z.get("page.settings.form.remove")})})]})]})};const nA=function(e){let{user:t,onChange:n,onRemove:a}=e;const o=t.salary.map(((e,a)=>(0,Er.jsx)(tA,{index:a+1,salary:e,onChange:a=>{n({...t,salary:t.salary.map((t=>t.id===e.id?a:t))})},onRemove:()=>{n({...t,salary:t.salary.filter((t=>t.id!==e.id))})}},t.id)));return(0,Er.jsxs)(nm,{className:ec.user,onRemove:()=>$i.open().then((()=>a())),children:[(0,Er.jsx)(Im,{title:(null===t||void 0===t?void 0:t.name)||"",className:ec.user_title}),o,(0,Er.jsx)("div",{className:ec.user_footer,children:(0,Er.jsx)(Or,{mode:"slim",onClick:()=>{n({...t,salary:[...t.salary,In(xl.state)]})},children:_e.Z.get("page.settings.form.addContract")})})]})},aA=un((()=>{const e=xl.state.defaultSalary;return e?(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:"page.settings.common.title"}),(0,Er.jsxs)(nm,{children:[(0,Er.jsx)(Xj,{disabled:!0,title:"page.settings.common.type.title",value:e.type,options:[{id:"full",title:_e.Z.get("page.settings.common.type.full")},{id:"part",title:_e.Z.get("page.settings.common.type.part")}],onChange:e=>{xl.updateState("defaultSalary.type",null===e||void 0===e?void 0:e.id)}}),(0,Er.jsx)(Xj,{disabled:!0,multiple:!0,title:"page.settings.common.workDaysInWeek",value:e.workDaysInWeek.map(((e,t)=>e?t+1:null)),options:[{id:1,title:Vn(0,"short")},{id:2,title:Vn(1,"short")},{id:3,title:Vn(2,"short")},{id:4,title:Vn(3,"short")},{id:5,title:Vn(4,"short")},{id:6,title:Vn(5,"short")},{id:7,title:Vn(6,"short")}],onChange:e=>{const t=new Array(7).fill(0).map(((t,n)=>e.includes(n+1)));console.log(t),xl.updateState("defaultSalary.workDaysInWeek",t)}}),(0,Er.jsxs)($j,{children:[(0,Er.jsx)(UT,{title:"page.settings.common.salary",value:e.value,onChange:e=>{xl.updateState("defaultSalary.value",e)}}),(0,Er.jsx)(UT,{disabled:!0,title:"page.settings.common.tax",value:e.tax,onChange:e=>{xl.updateState("defaultSalary.tax",e)}})]}),(0,Er.jsxs)($j,{children:[(0,Er.jsx)(UT,{title:"page.settings.common.workDaysInYear",value:e.workDaysInYear,onChange:e=>{xl.updateState("defaultSalary.workDaysInYear",e)}}),(0,Er.jsx)(UT,{title:"page.settings.common.vacationDaysInYear",value:e.vacationDaysInYear,onChange:e=>{xl.updateState("defaultSalary.vacationDaysInYear",e)}})]}),(0,Er.jsx)(Xj,{title:"page.settings.common.currency",value:e.currency,options:["USD","EUR","RUB","CNY","JPY","KRW","CAD"],onChange:e=>{xl.updateState("defaultSalary.currency",e)}})]})]}):null})),oA=aA,sA=un((()=>{const{i18n:e}=zt(),[n,a]=(0,t.useState)(document.title),[o,s]=(0,t.useState)(_e.Z.language);return(0,t.useEffect)((()=>{e.changeLanguage(o)}),[o]),(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:"page.settings.document.title"}),(0,Er.jsxs)(nm,{children:[(0,Er.jsx)(Cm,{title:"page.settings.document.name",value:n,placeholder:_e.Z.get("common.title"),onChange:e=>{a(e),document.title=e||_e.Z.get("common.title"),rr.C.title=!0}}),(0,Er.jsx)(Ql,{title:"page.settings.document.language",value:o,options:[{id:"ru",title:"\u0420\u0443\u0441\u0441\u043a\u0438\u0439"},{id:"en",title:"English"},{id:"zh",title:"\u4e2d\u6587"},{id:"es",title:"Espa\xf1ol"},{id:"fr",title:"Fran\xe7ais"},{id:"pt",title:"Portugu\xeas"},{id:"de",title:"Deutsch"},{id:"ja",title:"\u65e5\u672c\u8a9e"}],onChange:(e,t)=>{_e.Z.language=t,s(t)}}),(0,Er.jsx)(Mx,{value:kr.isDepersonalized,title:"page.settings.document.depersonalize",onChange:()=>{kr.depersonalized(!kr.isDepersonalized)}})]})]})})),rA=un((()=>{var e,t;return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:"page.settings.links.title"}),(0,Er.jsxs)(nm,{children:[(0,Er.jsx)(Cm,{title:"page.settings.links.task",value:null===(e=xl.state)||void 0===e||null===(t=e.linksPrefix)||void 0===t?void 0:t.task,placeholder:"https://jira.com/secure/RapidBoard.jspa?task=",onChange:e=>{xl.updateState("linksPrefix.task",e)}}),(0,Er.jsx)(Cm,{title:"page.settings.links.pr",value:xl.state.linksPrefix.pr,placeholder:"https://bitbucket.com/projects/assayo/repos/frontend/pull-requests/",onChange:e=>{xl.updateState("linksPrefix.pr",e)}})]})]})}));const iA=function(){const e=kr.dataGrip.author.statistic.map((e=>"".concat(e.author," <").concat(e.firstCommit.email,"> <").concat(e.firstCommit.email,">"))).sort(),t=e.map((e=>(0,Er.jsx)("p",{children:e},e))),n=e.join("\r\n");return(0,Er.jsx)("div",{className:ec.races_track,children:(0,Er.jsx)(Pj,{textForCopy:n,children:t})})},lA=un((e=>{const t=xl.state.employees;if(!e||!t)return null;const n=t.map((e=>e.name)),a=kr.dataGrip.author.list.filter((e=>!n.includes(e))).map(((e,t)=>({id:t,title:e}))),o=xl.state.employees.map((e=>(0,Er.jsx)(nA,{user:e,onChange:n=>{const a=t.map((t=>t.id===e.id?n:t));xl.updateState("employees",a)},onRemove:()=>{const n=t.filter((t=>t.id!==e.id));xl.updateState("employees",n)}},e.id)));return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsxs)(em,{children:[(0,Er.jsxs)(om,{children:[(0,Er.jsx)(sA,{}),(0,Er.jsx)(oA,{})]}),(0,Er.jsxs)(om,{children:[(0,Er.jsx)(rA,{}),(0,Er.jsx)(Im,{title:"page.settings.mailmap"}),(0,Er.jsx)(iA,{})]})]}),(0,Er.jsxs)(em,{children:[(0,Er.jsx)(Im,{title:"page.settings.user.title"}),t.length>0?o:(0,Er.jsx)(hm,{message:"page.settings.user.notFound"}),a.length&&(0,Er.jsx)("div",{className:ec.buttons_footer,children:(0,Er.jsx)(Kj,{options:a,onClick:e=>{xl.updateState("employees",[...t,Ln(null===e||void 0===e?void 0:e.title,xl.state,null===n||void 0===n?void 0:n.length)])},children:_e.Z.get("page.settings.form.addEmployee")})})]})]})})),cA=un((()=>(0,Er.jsx)(Tm,{to:"response",loader:()=>Mn.loadSettings().then((e=>(xl.setInitState(e),Promise.resolve(e)))),children:(0,Er.jsx)(lA,{})})));function mA(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];if(!e)return t;for(let n in e){const a=e[n];null!==a&&void 0!==a&&a.title?t.push(a):"string"===typeof a?t.push({title:a}):mA(a,t)}return t}const dA=function(){const e=mA(_e.Z.translations[_e.Z.language].recommendations).map((e=>(0,Er.jsx)(Jm,{recommendation:e},e[1]))),t=Object.entries(kn).sort(((e,t)=>e[1]-t[1])).map((e=>{let[t]=e;return(0,Er.jsx)(YE,{code:t},t)}));return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Im,{title:"page.person.achievement.title"}),(0,Er.jsx)("div",{style:{columnCount:3,marginBottom:"24px"},children:t}),(0,Er.jsx)("section",{children:e})]})};function pA(){return(0,Er.jsxs)(Er.Fragment,{children:[(0,Er.jsx)(Pi,{}),(0,Er.jsx)(qi,{}),(0,Er.jsxs)(de,{children:[(0,Er.jsx)(ce,{path:"/settings",element:(0,Er.jsx)(Uc,{children:(0,Er.jsx)(cA,{})})}),(0,Er.jsx)(ce,{path:"/debug",element:(0,Er.jsx)(Uc,{children:(0,Er.jsx)(dA,{})})}),(0,Er.jsx)(ce,{path:"/print",element:(0,Er.jsx)(Uc,{children:(0,Er.jsx)(Ej,{})})}),(0,Er.jsx)(ce,{path:"/:type/:page",element:(0,Er.jsx)(Uc,{children:(0,Er.jsx)(LE,{})})}),(0,Er.jsx)(ce,{path:"/:type/:page/:userId",element:(0,Er.jsx)(Uc,{children:(0,Er.jsx)(Cj,{})})}),(0,Er.jsx)(ce,{path:"*",element:(0,Er.jsx)(Uc,{children:(0,Er.jsx)(LE,{})})})]})]})}function uA(){return(0,Er.jsx)(de,{children:(0,Er.jsx)(ce,{path:"*",element:(0,Er.jsx)(Vj,{})})})}let hA=1;const fA=un((()=>{const e=gr.view;return(0,t.useEffect)((()=>{var e;const t=(null===(e=window)||void 0===e?void 0:e.report)||[];null!==t&&void 0!==t&&t.length&&hA!==(null===t||void 0===t?void 0:t.length)?(hA=null===t||void 0===t?void 0:t.length,kr.asyncSetCommits(t)):gr.toggle(fr.WELCOME)}),[]),(0,t.useEffect)((()=>{e!==fr.INFO||window.location.hash||(window.location.hash="#/team/total")}),[e]),e===fr.EMPTY?null:(0,Er.jsxs)(Er.Fragment,{children:[e===fr.WELCOME&&(0,Er.jsx)(uA,{}),e===fr.INFO&&(0,Er.jsx)(pA,{}),(0,Er.jsx)(Ki,{}),(0,Er.jsx)(jr,{onChange:(e,t)=>{"dump"===e&&kr.asyncSetCommits(t)}})]})})),gA=fA,yA="notifications",vA="notifications_item",bA="notifications_item_icon",wA="notifications_item_error",kA="notifications_item_warning",xA="notifications_item_success",_A="notifications_item_info",TA="notifications_item_title",SA="notifications_item_description";const CA=function(e){let{message:t}=e;const n={error:wA,warning:kA,success:xA,info:_A}[t.type||"success"]||_A,a={error:"./assets/notifications/alert.svg",warning:"./assets/notifications/warning.svg",success:"./assets/notifications/info.svg",info:"./assets/notifications/info.svg"}[t.type||"info"]||"./assets/notifications/info.svg";return(0,Er.jsxs)("div",{className:"".concat(vA," ").concat(n),children:[(0,Er.jsx)("img",{className:bA,src:a}),t.title&&(0,Er.jsx)("h6",{className:TA,children:t.title}),t.description&&(0,Er.jsx)("p",{className:SA,children:t.description})]})},EA=un((()=>{const e=Ai.Z.messages.map((e=>(0,Er.jsx)(CA,{message:e},e.id)));return Kt.createPortal((0,Er.jsx)("div",{className:yA,children:e}),document.body)}));_e.Z.parse("de",Te),_e.Z.parse("en",Se),_e.Z.parse("es",Ce),_e.Z.parse("fr",Ee),_e.Z.parse("ja",je),_e.Z.parse("pt",Ae),_e.Z.parse("ru",Ne),_e.Z.parse("ko",De),_e.Z.parse("zh",Oe),(0,rr.Z)((e=>{!function(e){const t=e||localStorage.getItem("language")||Gt||"en";_e.Z.language=t,bt.use(It).init({lng:t,debug:!1,resources:Ht})}(e.lang||e.language),si.setUrlParameters(e),Bn.loadUserSettings().then((()=>{!function(){window.onafterprint=()=>{pc.endPrint()};const e=document.getElementById("root");e&&(0,a.s)(e).render((0,Er.jsx)(t.StrictMode,{children:(0,Er.jsxs)(ve,{children:[(0,Er.jsx)(gA,{}),(0,Er.jsx)(EA,{})]})}))}()}))}))})()})();
|
|
//# sourceMappingURL=main.0d32a6fa.js.map |