mirror of
https://github.com/bakhirev/assayo.git
synced 2026-04-29 20:19:56 +00:00
3 lines
No EOL
2.1 MiB
3 lines
No EOL
2.1 MiB
/*! For license information please see main.ff90a0a1.js.LICENSE.txt */
|
|
(()=>{"use strict";var e={463:(e,t,n)=>{var a=n(791),s=n(296);function i(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 o=new Set,r={};function l(e,t){m(e,t),m(e+"Capture",t)}function m(e,t){for(r[e]=t,e=0;e<t.length;e++)o.add(t[e])}var c=!("undefined"===typeof window||"undefined"===typeof window.document||"undefined"===typeof window.document.createElement),u=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]*$/,d={},h={};function g(e,t,n,a,s,i,o){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=a,this.attributeNamespace=s,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=o}var f={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach((function(e){f[e]=new g(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((function(e){var t=e[0];f[t]=new g(t,1,!1,e[1],null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((function(e){f[e]=new g(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((function(e){f[e]=new g(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){f[e]=new g(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((function(e){f[e]=new g(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((function(e){f[e]=new g(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((function(e){f[e]=new g(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((function(e){f[e]=new g(e,5,!1,e.toLowerCase(),null,!1,!1)}));var y=/[\-:]([a-z])/g;function v(e){return e[1].toUpperCase()}function _(e,t,n,a){var s=f.hasOwnProperty(t)?f[t]:null;(null!==s?0!==s.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,s,a)&&(n=null),a||null===s?function(e){return!!u.call(h,e)||!u.call(d,e)&&(p.test(e)?h[e]=!0:(d[e]=!0,!1))}(t)&&(null===n?e.removeAttribute(t):e.setAttribute(t,""+n)):s.mustUseProperty?e[s.propertyName]=null===n?3!==s.type&&"":n:(t=s.attributeName,a=s.attributeNamespace,null===n?e.removeAttribute(t):(n=3===(s=s.type)||4===s&&!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);f[t]=new g(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);f[t]=new g(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);f[t]=new g(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((function(e){f[e]=new g(e,1,!1,e.toLowerCase(),null,!1,!1)})),f.xlinkHref=new g("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((function(e){f[e]=new g(e,1,!1,e.toLowerCase(),null,!0,!0)}));var k=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,b=Symbol.for("react.element"),w=Symbol.for("react.portal"),x=Symbol.for("react.fragment"),T=Symbol.for("react.strict_mode"),C=Symbol.for("react.profiler"),S=Symbol.for("react.provider"),j=Symbol.for("react.context"),D=Symbol.for("react.forward_ref"),A=Symbol.for("react.suspense"),E=Symbol.for("react.suspense_list"),I=Symbol.for("react.memo"),N=Symbol.for("react.lazy");Symbol.for("react.scope"),Symbol.for("react.debug_trace_mode");var P=Symbol.for("react.offscreen");Symbol.for("react.legacy_hidden"),Symbol.for("react.cache"),Symbol.for("react.tracing_marker");var R=Symbol.iterator;function O(e){return null===e||"object"!==typeof e?null:"function"===typeof(e=R&&e[R]||e["@@iterator"])?e:null}var L,M=Object.assign;function F(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 q(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(m){var a=m}Reflect.construct(e,[],t)}else{try{t.call()}catch(m){a=m}e.call(t.prototype)}else{try{throw Error()}catch(m){a=m}e()}}catch(m){if(m&&a&&"string"===typeof m.stack){for(var s=m.stack.split("\n"),i=a.stack.split("\n"),o=s.length-1,r=i.length-1;1<=o&&0<=r&&s[o]!==i[r];)r--;for(;1<=o&&0<=r;o--,r--)if(s[o]!==i[r]){if(1!==o||1!==r)do{if(o--,0>--r||s[o]!==i[r]){var l="\n"+s[o].replace(" at new "," at ");return e.displayName&&l.includes("<anonymous>")&&(l=l.replace("<anonymous>",e.displayName)),l}}while(1<=o&&0<=r);break}}}finally{W=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?F(e):""}function z(e){switch(e.tag){case 5:return F(e.type);case 16:return F("Lazy");case 13:return F("Suspense");case 19:return F("SuspenseList");case 0:case 2:case 15:return e=q(e.type,!1);case 11:return e=q(e.type.render,!1);case 1:return e=q(e.type,!0);default:return""}}function B(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 x:return"Fragment";case w:return"Portal";case C:return"Profiler";case T:return"StrictMode";case A:return"Suspense";case E:return"SuspenseList"}if("object"===typeof e)switch(e.$$typeof){case j:return(e.displayName||"Context")+".Consumer";case S:return(e._context.displayName||"Context")+".Provider";case D:var t=e.render;return(e=e.displayName)||(e=""!==(e=t.displayName||t.name||"")?"ForwardRef("+e+")":"ForwardRef"),e;case I:return null!==(t=e.displayName||null)?t:B(e.type)||"Memo";case N:t=e._payload,e=e._init;try{return B(e(t))}catch(n){}}return null}function U(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 B(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 H(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":case"object":return e;default:return""}}function G(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function V(e){e._valueTracker||(e._valueTracker=function(e){var t=G(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 s=n.get,i=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return s.call(this)},set:function(e){a=""+e,i.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 K(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),a="";return e&&(a=G(e)?e.checked?"true":"false":e.value),(e=a)!==n&&(t.setValue(e),!0)}function $(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 M({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=n?n:e._wrapperState.initialChecked})}function X(e,t){var n=null==t.defaultValue?"":t.defaultValue,a=null!=t.checked?t.checked:t.defaultChecked;n=H(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 Q(e,t){null!=(t=t.checked)&&_(e,"checked",t,!1)}function J(e,t){Q(e,t);var n=H(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,H(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function Z(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&&$(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 s=0;s<n.length;s++)t["$"+n[s]]=!0;for(n=0;n<e.length;n++)s=t.hasOwnProperty("$"+e[n].value),e[n].selected!==s&&(e[n].selected=s),s&&a&&(e[n].defaultSelected=!0)}else{for(n=""+H(n),t=null,s=0;s<e.length;s++){if(e[s].value===n)return e[s].selected=!0,void(a&&(e[s].defaultSelected=!0));null!==t||e[s].disabled||(t=e[s])}null!==t&&(t.selected=!0)}}function ae(e,t){if(null!=t.dangerouslySetInnerHTML)throw Error(i(91));return M({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function se(e,t){var n=t.value;if(null==n){if(n=t.children,t=t.defaultValue,null!=n){if(null!=t)throw Error(i(92));if(te(n)){if(1<n.length)throw Error(i(93));n=n[0]}t=n}null==t&&(t=""),n=t}e._wrapperState={initialValue:H(n)}}function ie(e,t){var n=H(t.value),a=H(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 oe(e){var t=e.textContent;t===e._wrapperState.initialValue&&""!==t&&null!==t&&(e.value=t)}function re(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?re(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}var me,ce,ue=(ce=function(e,t){if("http://www.w3.org/2000/svg"!==e.namespaceURI||"innerHTML"in e)e.innerHTML=t;else{for((me=me||document.createElement("div")).innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=me.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 ce(e,t)}))}:ce);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 de={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 ge(e,t,n){return null==t||"boolean"===typeof t||""===t?"":n||"number"!==typeof t||0===t||de.hasOwnProperty(e)&&de[e]?(""+t).trim():t+"px"}function fe(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var a=0===n.indexOf("--"),s=ge(n,t[n],a);"float"===n&&(n="cssFloat"),a?e.setProperty(n,s):e[n]=s}}Object.keys(de).forEach((function(e){he.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),de[t]=de[e]}))}));var ye=M({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(i(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(i(60));if("object"!==typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(i(61))}if(null!=t.style&&"object"!==typeof t.style)throw Error(i(62))}}function _e(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 ke=null;function be(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var we=null,xe=null,Te=null;function Ce(e){if(e=_s(e)){if("function"!==typeof we)throw Error(i(280));var t=e.stateNode;t&&(t=bs(t),we(e.stateNode,e.type,t))}}function Se(e){xe?Te?Te.push(e):Te=[e]:xe=e}function je(){if(xe){var e=xe,t=Te;if(Te=xe=null,Ce(e),t)for(e=0;e<t.length;e++)Ce(t[e])}}function De(e,t){return e(t)}function Ae(){}var Ee=!1;function Ie(e,t,n){if(Ee)return e(t,n);Ee=!0;try{return De(e,t,n)}finally{Ee=!1,(null!==xe||null!==Te)&&(Ae(),je())}}function Ne(e,t){var n=e.stateNode;if(null===n)return null;var a=bs(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(i(231,t,typeof n));return n}var Pe=!1;if(c)try{var Re={};Object.defineProperty(Re,"passive",{get:function(){Pe=!0}}),window.addEventListener("test",Re,Re),window.removeEventListener("test",Re,Re)}catch(ce){Pe=!1}function Oe(e,t,n,a,s,i,o,r,l){var m=Array.prototype.slice.call(arguments,3);try{t.apply(n,m)}catch(c){this.onError(c)}}var Le=!1,Me=null,Fe=!1,We=null,qe={onError:function(e){Le=!0,Me=e}};function ze(e,t,n,a,s,i,o,r,l){Le=!1,Me=null,Oe.apply(qe,arguments)}function Be(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 Ue(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 He(e){if(Be(e)!==e)throw Error(i(188))}function Ge(e){return null!==(e=function(e){var t=e.alternate;if(!t){if(null===(t=Be(e)))throw Error(i(188));return t!==e?null:e}for(var n=e,a=t;;){var s=n.return;if(null===s)break;var o=s.alternate;if(null===o){if(null!==(a=s.return)){n=a;continue}break}if(s.child===o.child){for(o=s.child;o;){if(o===n)return He(s),e;if(o===a)return He(s),t;o=o.sibling}throw Error(i(188))}if(n.return!==a.return)n=s,a=o;else{for(var r=!1,l=s.child;l;){if(l===n){r=!0,n=s,a=o;break}if(l===a){r=!0,a=s,n=o;break}l=l.sibling}if(!r){for(l=o.child;l;){if(l===n){r=!0,n=o,a=s;break}if(l===a){r=!0,a=o,n=s;break}l=l.sibling}if(!r)throw Error(i(189))}}if(n.alternate!==a)throw Error(i(190))}if(3!==n.tag)throw Error(i(188));return n.stateNode.current===n?e:t}(e))?Ve(e):null}function Ve(e){if(5===e.tag||6===e.tag)return e;for(e=e.child;null!==e;){var t=Ve(e);if(null!==t)return t;e=e.sibling}return null}var Ke=s.unstable_scheduleCallback,$e=s.unstable_cancelCallback,Ye=s.unstable_shouldYield,Xe=s.unstable_requestPaint,Qe=s.unstable_now,Je=s.unstable_getCurrentPriorityLevel,Ze=s.unstable_ImmediatePriority,et=s.unstable_UserBlockingPriority,tt=s.unstable_NormalPriority,nt=s.unstable_LowPriority,at=s.unstable_IdlePriority,st=null,it=null;var ot=Math.clz32?Math.clz32:function(e){return e>>>=0,0===e?32:31-(rt(e)/lt|0)|0},rt=Math.log,lt=Math.LN2;var mt=64,ct=4194304;function ut(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,s=e.suspendedLanes,i=e.pingedLanes,o=268435455&n;if(0!==o){var r=o&~s;0!==r?a=ut(r):0!==(i&=o)&&(a=ut(i))}else 0!==(o=n&~s)?a=ut(o):0!==i&&(a=ut(i));if(0===a)return 0;if(0!==t&&t!==a&&0===(t&s)&&((s=a&-a)>=(i=t&-t)||16===s&&0!==(4194240&i)))return t;if(0!==(4&a)&&(a|=16&n),0!==(t=e.entangledLanes))for(e=e.entanglements,t&=a;0<t;)s=1<<(n=31-ot(t)),a|=e[n],t&=~s;return a}function dt(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 gt(){var e=mt;return 0===(4194240&(mt<<=1))&&(mt=64),e}function ft(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-ot(t)]=n}function vt(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var a=31-ot(n),s=1<<a;s&t|e[a]&t&&(e[a]|=t),n&=~s}}var _t=0;function kt(e){return 1<(e&=-e)?4<e?0!==(268435455&e)?16:536870912:4:1}var bt,wt,xt,Tt,Ct,St=!1,jt=[],Dt=null,At=null,Et=null,It=new Map,Nt=new Map,Pt=[],Rt="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 Ot(e,t){switch(e){case"focusin":case"focusout":Dt=null;break;case"dragenter":case"dragleave":At=null;break;case"mouseover":case"mouseout":Et=null;break;case"pointerover":case"pointerout":It.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Nt.delete(t.pointerId)}}function Lt(e,t,n,a,s,i){return null===e||e.nativeEvent!==i?(e={blockedOn:t,domEventName:n,eventSystemFlags:a,nativeEvent:i,targetContainers:[s]},null!==t&&(null!==(t=_s(t))&&wt(t)),e):(e.eventSystemFlags|=a,t=e.targetContainers,null!==s&&-1===t.indexOf(s)&&t.push(s),e)}function Mt(e){var t=vs(e.target);if(null!==t){var n=Be(t);if(null!==n)if(13===(t=n.tag)){if(null!==(t=Ue(n)))return e.blockedOn=t,void Ct(e.priority,(function(){xt(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 Ft(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=_s(n))&&wt(t),e.blockedOn=n,!1;var a=new(n=e.nativeEvent).constructor(n.type,n);ke=a,n.target.dispatchEvent(a),ke=null,t.shift()}return!0}function Wt(e,t,n){Ft(e)&&n.delete(t)}function qt(){St=!1,null!==Dt&&Ft(Dt)&&(Dt=null),null!==At&&Ft(At)&&(At=null),null!==Et&&Ft(Et)&&(Et=null),It.forEach(Wt),Nt.forEach(Wt)}function zt(e,t){e.blockedOn===t&&(e.blockedOn=null,St||(St=!0,s.unstable_scheduleCallback(s.unstable_NormalPriority,qt)))}function Bt(e){function t(t){return zt(t,e)}if(0<jt.length){zt(jt[0],e);for(var n=1;n<jt.length;n++){var a=jt[n];a.blockedOn===e&&(a.blockedOn=null)}}for(null!==Dt&&zt(Dt,e),null!==At&&zt(At,e),null!==Et&&zt(Et,e),It.forEach(t),Nt.forEach(t),n=0;n<Pt.length;n++)(a=Pt[n]).blockedOn===e&&(a.blockedOn=null);for(;0<Pt.length&&null===(n=Pt[0]).blockedOn;)Mt(n),null===n.blockedOn&&Pt.shift()}var Ut=k.ReactCurrentBatchConfig,Ht=!0;function Gt(e,t,n,a){var s=_t,i=Ut.transition;Ut.transition=null;try{_t=1,Kt(e,t,n,a)}finally{_t=s,Ut.transition=i}}function Vt(e,t,n,a){var s=_t,i=Ut.transition;Ut.transition=null;try{_t=4,Kt(e,t,n,a)}finally{_t=s,Ut.transition=i}}function Kt(e,t,n,a){if(Ht){var s=Yt(e,t,n,a);if(null===s)Ha(e,t,a,$t,n),Ot(e,a);else if(function(e,t,n,a,s){switch(t){case"focusin":return Dt=Lt(Dt,e,t,n,a,s),!0;case"dragenter":return At=Lt(At,e,t,n,a,s),!0;case"mouseover":return Et=Lt(Et,e,t,n,a,s),!0;case"pointerover":var i=s.pointerId;return It.set(i,Lt(It.get(i)||null,e,t,n,a,s)),!0;case"gotpointercapture":return i=s.pointerId,Nt.set(i,Lt(Nt.get(i)||null,e,t,n,a,s)),!0}return!1}(s,e,t,n,a))a.stopPropagation();else if(Ot(e,a),4&t&&-1<Rt.indexOf(e)){for(;null!==s;){var i=_s(s);if(null!==i&&bt(i),null===(i=Yt(e,t,n,a))&&Ha(e,t,a,$t,n),i===s)break;s=i}null!==s&&a.stopPropagation()}else Ha(e,t,a,null,n)}}var $t=null;function Yt(e,t,n,a){if($t=null,null!==(e=vs(e=be(a))))if(null===(t=Be(e)))e=null;else if(13===(n=t.tag)){if(null!==(e=Ue(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 $t=e,null}function Xt(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(Je()){case Ze:return 1;case et:return 4;case tt:case nt:return 16;case at:return 536870912;default:return 16}default:return 16}}var Qt=null,Jt=null,Zt=null;function en(){if(Zt)return Zt;var e,t,n=Jt,a=n.length,s="value"in Qt?Qt.value:Qt.textContent,i=s.length;for(e=0;e<a&&n[e]===s[e];e++);var o=a-e;for(t=1;t<=o&&n[a-t]===s[i-t];t++);return Zt=s.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 sn(e){function t(t,n,a,s,i){for(var o in this._reactName=t,this._targetInst=a,this.type=n,this.nativeEvent=s,this.target=i,this.currentTarget=null,e)e.hasOwnProperty(o)&&(t=e[o],this[o]=t?t(s):s[o]);return this.isDefaultPrevented=(null!=s.defaultPrevented?s.defaultPrevented:!1===s.returnValue)?nn:an,this.isPropagationStopped=an,this}return M(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 on,rn,ln,mn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},cn=sn(mn),un=M({},mn,{view:0,detail:0}),pn=sn(un),dn=M({},un,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Cn,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?(on=e.screenX-ln.screenX,rn=e.screenY-ln.screenY):rn=on=0,ln=e),on)},movementY:function(e){return"movementY"in e?e.movementY:rn}}),hn=sn(dn),gn=sn(M({},dn,{dataTransfer:0})),fn=sn(M({},un,{relatedTarget:0})),yn=sn(M({},mn,{animationName:0,elapsedTime:0,pseudoElement:0})),vn=M({},mn,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),_n=sn(vn),kn=sn(M({},mn,{data:0})),bn={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},wn={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"},xn={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Tn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):!!(e=xn[e])&&!!t[e]}function Cn(){return Tn}var Sn=M({},un,{key:function(e){if(e.key){var t=bn[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?wn[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Cn,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}}),jn=sn(Sn),Dn=sn(M({},dn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),An=sn(M({},un,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Cn})),En=sn(M({},mn,{propertyName:0,elapsedTime:0,pseudoElement:0})),In=M({},dn,{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}),Nn=sn(In),Pn=[9,13,27,32],Rn=c&&"CompositionEvent"in window,On=null;c&&"documentMode"in document&&(On=document.documentMode);var Ln=c&&"TextEvent"in window&&!On,Mn=c&&(!Rn||On&&8<On&&11>=On),Fn=String.fromCharCode(32),Wn=!1;function qn(e,t){switch(e){case"keyup":return-1!==Pn.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 Bn=!1;var Un={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 Hn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!Un[e.type]:"textarea"===t}function Gn(e,t,n,a){Se(a),0<(t=Va(t,"onChange")).length&&(n=new cn("onChange","change",null,n,a),e.push({event:n,listeners:t}))}var Vn=null,Kn=null;function $n(e){Fa(e,0)}function Yn(e){if(K(ks(e)))return e}function Xn(e,t){if("change"===e)return t}var Qn=!1;if(c){var Jn;if(c){var Zn="oninput"in document;if(!Zn){var ea=document.createElement("div");ea.setAttribute("oninput","return;"),Zn="function"===typeof ea.oninput}Jn=Zn}else Jn=!1;Qn=Jn&&(!document.documentMode||9<document.documentMode)}function ta(){Vn&&(Vn.detachEvent("onpropertychange",na),Kn=Vn=null)}function na(e){if("value"===e.propertyName&&Yn(Kn)){var t=[];Gn(t,Kn,e,be(e)),Ie($n,t)}}function aa(e,t,n){"focusin"===e?(ta(),Kn=n,(Vn=t).attachEvent("onpropertychange",na)):"focusout"===e&&ta()}function sa(e){if("selectionchange"===e||"keyup"===e||"keydown"===e)return Yn(Kn)}function ia(e,t){if("click"===e)return Yn(t)}function oa(e,t){if("input"===e||"change"===e)return Yn(t)}var ra="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(ra(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 s=n[a];if(!u.call(t,s)||!ra(e[s],t[s]))return!1}return!0}function ma(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function ca(e,t){var n,a=ma(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=ma(a)}}function ua(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?ua(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function pa(){for(var e=window,t=$();t instanceof e.HTMLIFrameElement;){try{var n="string"===typeof t.contentWindow.location.href}catch(a){n=!1}if(!n)break;t=$((e=t.contentWindow).document)}return t}function da(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&&ua(n.ownerDocument.documentElement,n)){if(null!==a&&da(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 s=n.textContent.length,i=Math.min(a.start,s);a=void 0===a.end?i:Math.min(a.end,s),!e.extend&&i>a&&(s=a,a=i,i=s),s=ca(n,i);var o=ca(n,a);s&&o&&(1!==e.rangeCount||e.anchorNode!==s.node||e.anchorOffset!==s.offset||e.focusNode!==o.node||e.focusOffset!==o.offset)&&((t=t.createRange()).setStart(s.node,s.offset),e.removeAllRanges(),i>a?(e.addRange(t),e.extend(o.node,o.offset)):(t.setEnd(o.node,o.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 ga=c&&"documentMode"in document&&11>=document.documentMode,fa=null,ya=null,va=null,_a=!1;function ka(e,t,n){var a=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;_a||null==fa||fa!==$(a)||("selectionStart"in(a=fa)&&da(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=Va(ya,"onSelect")).length&&(t=new cn("onSelect","select",null,t,n),e.push({event:t,listeners:a}),t.target=fa)))}function ba(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var wa={animationend:ba("Animation","AnimationEnd"),animationiteration:ba("Animation","AnimationIteration"),animationstart:ba("Animation","AnimationStart"),transitionend:ba("Transition","TransitionEnd")},xa={},Ta={};function Ca(e){if(xa[e])return xa[e];if(!wa[e])return e;var t,n=wa[e];for(t in n)if(n.hasOwnProperty(t)&&t in Ta)return xa[e]=n[t];return e}c&&(Ta=document.createElement("div").style,"AnimationEvent"in window||(delete wa.animationend.animation,delete wa.animationiteration.animation,delete wa.animationstart.animation),"TransitionEvent"in window||delete wa.transitionend.transition);var Sa=Ca("animationend"),ja=Ca("animationiteration"),Da=Ca("animationstart"),Aa=Ca("transitionend"),Ea=new Map,Ia="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 Na(e,t){Ea.set(e,t),l(t,[e])}for(var Pa=0;Pa<Ia.length;Pa++){var Ra=Ia[Pa];Na(Ra.toLowerCase(),"on"+(Ra[0].toUpperCase()+Ra.slice(1)))}Na(Sa,"onAnimationEnd"),Na(ja,"onAnimationIteration"),Na(Da,"onAnimationStart"),Na("dblclick","onDoubleClick"),Na("focusin","onFocus"),Na("focusout","onBlur"),Na(Aa,"onTransitionEnd"),m("onMouseEnter",["mouseout","mouseover"]),m("onMouseLeave",["mouseout","mouseover"]),m("onPointerEnter",["pointerout","pointerover"]),m("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 Oa="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(Oa));function Ma(e,t,n){var a=e.type||"unknown-event";e.currentTarget=n,function(e,t,n,a,s,o,r,l,m){if(ze.apply(this,arguments),Le){if(!Le)throw Error(i(198));var c=Me;Le=!1,Me=null,Fe||(Fe=!0,We=c)}}(a,t,void 0,e),e.currentTarget=null}function Fa(e,t){t=0!==(4&t);for(var n=0;n<e.length;n++){var a=e[n],s=a.event;a=a.listeners;e:{var i=void 0;if(t)for(var o=a.length-1;0<=o;o--){var r=a[o],l=r.instance,m=r.currentTarget;if(r=r.listener,l!==i&&s.isPropagationStopped())break e;Ma(s,r,m),i=l}else for(o=0;o<a.length;o++){if(l=(r=a[o]).instance,m=r.currentTarget,r=r.listener,l!==i&&s.isPropagationStopped())break e;Ma(s,r,m),i=l}}}if(Fe)throw e=We,Fe=!1,We=null,e}function Wa(e,t){var n=t[gs];void 0===n&&(n=t[gs]=new Set);var a=e+"__bubble";n.has(a)||(Ua(t,e,2,!1),n.add(a))}function qa(e,t,n){var a=0;t&&(a|=4),Ua(n,e,a,t)}var za="_reactListening"+Math.random().toString(36).slice(2);function Ba(e){if(!e[za]){e[za]=!0,o.forEach((function(t){"selectionchange"!==t&&(La.has(t)||qa(t,!1,e),qa(t,!0,e))}));var t=9===e.nodeType?e:e.ownerDocument;null===t||t[za]||(t[za]=!0,qa("selectionchange",!1,t))}}function Ua(e,t,n,a){switch(Xt(t)){case 1:var s=Gt;break;case 4:s=Vt;break;default:s=Kt}n=s.bind(null,t,n,e),s=void 0,!Pe||"touchstart"!==t&&"touchmove"!==t&&"wheel"!==t||(s=!0),a?void 0!==s?e.addEventListener(t,n,{capture:!0,passive:s}):e.addEventListener(t,n,!0):void 0!==s?e.addEventListener(t,n,{passive:s}):e.addEventListener(t,n,!1)}function Ha(e,t,n,a,s){var i=a;if(0===(1&t)&&0===(2&t)&&null!==a)e:for(;;){if(null===a)return;var o=a.tag;if(3===o||4===o){var r=a.stateNode.containerInfo;if(r===s||8===r.nodeType&&r.parentNode===s)break;if(4===o)for(o=a.return;null!==o;){var l=o.tag;if((3===l||4===l)&&((l=o.stateNode.containerInfo)===s||8===l.nodeType&&l.parentNode===s))return;o=o.return}for(;null!==r;){if(null===(o=vs(r)))return;if(5===(l=o.tag)||6===l){a=i=o;continue e}r=r.parentNode}}a=a.return}Ie((function(){var a=i,s=be(n),o=[];e:{var r=Ea.get(e);if(void 0!==r){var l=cn,m=e;switch(e){case"keypress":if(0===tn(n))break e;case"keydown":case"keyup":l=jn;break;case"focusin":m="focus",l=fn;break;case"focusout":m="blur",l=fn;break;case"beforeblur":case"afterblur":l=fn;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=gn;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":l=An;break;case Sa:case ja:case Da:l=yn;break;case Aa:l=En;break;case"scroll":l=pn;break;case"wheel":l=Nn;break;case"copy":case"cut":case"paste":l=_n;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":l=Dn}var c=0!==(4&t),u=!c&&"scroll"===e,p=c?null!==r?r+"Capture":null:r;c=[];for(var d,h=a;null!==h;){var g=(d=h).stateNode;if(5===d.tag&&null!==g&&(d=g,null!==p&&(null!=(g=Ne(h,p))&&c.push(Ga(h,g,d)))),u)break;h=h.return}0<c.length&&(r=new l(r,m,null,n,s),o.push({event:r,listeners:c}))}}if(0===(7&t)){if(l="mouseout"===e||"pointerout"===e,(!(r="mouseover"===e||"pointerover"===e)||n===ke||!(m=n.relatedTarget||n.fromElement)||!vs(m)&&!m[hs])&&(l||r)&&(r=s.window===s?s:(r=s.ownerDocument)?r.defaultView||r.parentWindow:window,l?(l=a,null!==(m=(m=n.relatedTarget||n.toElement)?vs(m):null)&&(m!==(u=Be(m))||5!==m.tag&&6!==m.tag)&&(m=null)):(l=null,m=a),l!==m)){if(c=hn,g="onMouseLeave",p="onMouseEnter",h="mouse","pointerout"!==e&&"pointerover"!==e||(c=Dn,g="onPointerLeave",p="onPointerEnter",h="pointer"),u=null==l?r:ks(l),d=null==m?r:ks(m),(r=new c(g,h+"leave",l,n,s)).target=u,r.relatedTarget=d,g=null,vs(s)===a&&((c=new c(p,h+"enter",m,n,s)).target=d,c.relatedTarget=u,g=c),u=g,l&&m)e:{for(p=m,h=0,d=c=l;d;d=Ka(d))h++;for(d=0,g=p;g;g=Ka(g))d++;for(;0<h-d;)c=Ka(c),h--;for(;0<d-h;)p=Ka(p),d--;for(;h--;){if(c===p||null!==p&&c===p.alternate)break e;c=Ka(c),p=Ka(p)}c=null}else c=null;null!==l&&$a(o,r,l,c,!1),null!==m&&null!==u&&$a(o,u,m,c,!0)}if("select"===(l=(r=a?ks(a):window).nodeName&&r.nodeName.toLowerCase())||"input"===l&&"file"===r.type)var f=Xn;else if(Hn(r))if(Qn)f=oa;else{f=sa;var y=aa}else(l=r.nodeName)&&"input"===l.toLowerCase()&&("checkbox"===r.type||"radio"===r.type)&&(f=ia);switch(f&&(f=f(e,a))?Gn(o,f,n,s):(y&&y(e,r,a),"focusout"===e&&(y=r._wrapperState)&&y.controlled&&"number"===r.type&&ee(r,"number",r.value)),y=a?ks(a):window,e){case"focusin":(Hn(y)||"true"===y.contentEditable)&&(fa=y,ya=a,va=null);break;case"focusout":va=ya=fa=null;break;case"mousedown":_a=!0;break;case"contextmenu":case"mouseup":case"dragend":_a=!1,ka(o,n,s);break;case"selectionchange":if(ga)break;case"keydown":case"keyup":ka(o,n,s)}var v;if(Rn)e:{switch(e){case"compositionstart":var _="onCompositionStart";break e;case"compositionend":_="onCompositionEnd";break e;case"compositionupdate":_="onCompositionUpdate";break e}_=void 0}else Bn?qn(e,n)&&(_="onCompositionEnd"):"keydown"===e&&229===n.keyCode&&(_="onCompositionStart");_&&(Mn&&"ko"!==n.locale&&(Bn||"onCompositionStart"!==_?"onCompositionEnd"===_&&Bn&&(v=en()):(Jt="value"in(Qt=s)?Qt.value:Qt.textContent,Bn=!0)),0<(y=Va(a,_)).length&&(_=new kn(_,e,null,n,s),o.push({event:_,listeners:y}),v?_.data=v:null!==(v=zn(n))&&(_.data=v))),(v=Ln?function(e,t){switch(e){case"compositionend":return zn(t);case"keypress":return 32!==t.which?null:(Wn=!0,Fn);case"textInput":return(e=t.data)===Fn&&Wn?null:e;default:return null}}(e,n):function(e,t){if(Bn)return"compositionend"===e||!Rn&&qn(e,t)?(e=en(),Zt=Jt=Qt=null,Bn=!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 Mn&&"ko"!==t.locale?null:t.data}}(e,n))&&(0<(a=Va(a,"onBeforeInput")).length&&(s=new kn("onBeforeInput","beforeinput",null,n,s),o.push({event:s,listeners:a}),s.data=v))}Fa(o,t)}))}function Ga(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Va(e,t){for(var n=t+"Capture",a=[];null!==e;){var s=e,i=s.stateNode;5===s.tag&&null!==i&&(s=i,null!=(i=Ne(e,n))&&a.unshift(Ga(e,i,s)),null!=(i=Ne(e,t))&&a.push(Ga(e,i,s))),e=e.return}return a}function Ka(e){if(null===e)return null;do{e=e.return}while(e&&5!==e.tag);return e||null}function $a(e,t,n,a,s){for(var i=t._reactName,o=[];null!==n&&n!==a;){var r=n,l=r.alternate,m=r.stateNode;if(null!==l&&l===a)break;5===r.tag&&null!==m&&(r=m,s?null!=(l=Ne(n,i))&&o.unshift(Ga(n,l,r)):s||null!=(l=Ne(n,i))&&o.push(Ga(n,l,r))),n=n.return}0!==o.length&&e.push({event:t,listeners:o})}var Ya=/\r\n?/g,Xa=/\u0000|\uFFFD/g;function Qa(e){return("string"===typeof e?e:""+e).replace(Ya,"\n").replace(Xa,"")}function Ja(e,t,n){if(t=Qa(t),Qa(e)!==t&&n)throw Error(i(425))}function Za(){}var es=null,ts=null;function ns(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 as="function"===typeof setTimeout?setTimeout:void 0,ss="function"===typeof clearTimeout?clearTimeout:void 0,is="function"===typeof Promise?Promise:void 0,os="function"===typeof queueMicrotask?queueMicrotask:"undefined"!==typeof is?function(e){return is.resolve(null).then(e).catch(rs)}:as;function rs(e){setTimeout((function(){throw e}))}function ls(e,t){var n=t,a=0;do{var s=n.nextSibling;if(e.removeChild(n),s&&8===s.nodeType)if("/$"===(n=s.data)){if(0===a)return e.removeChild(s),void Bt(t);a--}else"$"!==n&&"$?"!==n&&"$!"!==n||a++;n=s}while(n);Bt(t)}function ms(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 cs(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 us=Math.random().toString(36).slice(2),ps="__reactFiber$"+us,ds="__reactProps$"+us,hs="__reactContainer$"+us,gs="__reactEvents$"+us,fs="__reactListeners$"+us,ys="__reactHandles$"+us;function vs(e){var t=e[ps];if(t)return t;for(var n=e.parentNode;n;){if(t=n[hs]||n[ps]){if(n=t.alternate,null!==t.child||null!==n&&null!==n.child)for(e=cs(e);null!==e;){if(n=e[ps])return n;e=cs(e)}return t}n=(e=n).parentNode}return null}function _s(e){return!(e=e[ps]||e[hs])||5!==e.tag&&6!==e.tag&&13!==e.tag&&3!==e.tag?null:e}function ks(e){if(5===e.tag||6===e.tag)return e.stateNode;throw Error(i(33))}function bs(e){return e[ds]||null}var ws=[],xs=-1;function Ts(e){return{current:e}}function Cs(e){0>xs||(e.current=ws[xs],ws[xs]=null,xs--)}function Ss(e,t){xs++,ws[xs]=e.current,e.current=t}var js={},Ds=Ts(js),As=Ts(!1),Es=js;function Is(e,t){var n=e.type.contextTypes;if(!n)return js;var a=e.stateNode;if(a&&a.__reactInternalMemoizedUnmaskedChildContext===t)return a.__reactInternalMemoizedMaskedChildContext;var s,i={};for(s in n)i[s]=t[s];return a&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function Ns(e){return null!==(e=e.childContextTypes)&&void 0!==e}function Ps(){Cs(As),Cs(Ds)}function Rs(e,t,n){if(Ds.current!==js)throw Error(i(168));Ss(Ds,t),Ss(As,n)}function Os(e,t,n){var a=e.stateNode;if(t=t.childContextTypes,"function"!==typeof a.getChildContext)return n;for(var s in a=a.getChildContext())if(!(s in t))throw Error(i(108,U(e)||"Unknown",s));return M({},n,a)}function Ls(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||js,Es=Ds.current,Ss(Ds,e),Ss(As,As.current),!0}function Ms(e,t,n){var a=e.stateNode;if(!a)throw Error(i(169));n?(e=Os(e,t,Es),a.__reactInternalMemoizedMergedChildContext=e,Cs(As),Cs(Ds),Ss(Ds,e)):Cs(As),Ss(As,n)}var Fs=null,Ws=!1,qs=!1;function zs(e){null===Fs?Fs=[e]:Fs.push(e)}function Bs(){if(!qs&&null!==Fs){qs=!0;var e=0,t=_t;try{var n=Fs;for(_t=1;e<n.length;e++){var a=n[e];do{a=a(!0)}while(null!==a)}Fs=null,Ws=!1}catch(s){throw null!==Fs&&(Fs=Fs.slice(e+1)),Ke(Ze,Bs),s}finally{_t=t,qs=!1}}return null}var Us=[],Hs=0,Gs=null,Vs=0,Ks=[],$s=0,Ys=null,Xs=1,Qs="";function Js(e,t){Us[Hs++]=Vs,Us[Hs++]=Gs,Gs=e,Vs=t}function Zs(e,t,n){Ks[$s++]=Xs,Ks[$s++]=Qs,Ks[$s++]=Ys,Ys=e;var a=Xs;e=Qs;var s=32-ot(a)-1;a&=~(1<<s),n+=1;var i=32-ot(t)+s;if(30<i){var o=s-s%5;i=(a&(1<<o)-1).toString(32),a>>=o,s-=o,Xs=1<<32-ot(t)+s|n<<s|a,Qs=i+e}else Xs=1<<i|n<<s|a,Qs=e}function ei(e){null!==e.return&&(Js(e,1),Zs(e,1,0))}function ti(e){for(;e===Gs;)Gs=Us[--Hs],Us[Hs]=null,Vs=Us[--Hs],Us[Hs]=null;for(;e===Ys;)Ys=Ks[--$s],Ks[$s]=null,Qs=Ks[--$s],Ks[$s]=null,Xs=Ks[--$s],Ks[$s]=null}var ni=null,ai=null,si=!1,ii=null;function oi(e,t){var n=Im(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 ri(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,ni=e,ai=ms(t.firstChild),!0);case 6:return null!==(t=""===e.pendingProps||3!==t.nodeType?null:t)&&(e.stateNode=t,ni=e,ai=null,!0);case 13:return null!==(t=8!==t.nodeType?null:t)&&(n=null!==Ys?{id:Xs,overflow:Qs}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},(n=Im(18,null,null,0)).stateNode=t,n.return=e,e.child=n,ni=e,ai=null,!0);default:return!1}}function li(e){return 0!==(1&e.mode)&&0===(128&e.flags)}function mi(e){if(si){var t=ai;if(t){var n=t;if(!ri(e,t)){if(li(e))throw Error(i(418));t=ms(n.nextSibling);var a=ni;t&&ri(e,t)?oi(a,n):(e.flags=-4097&e.flags|2,si=!1,ni=e)}}else{if(li(e))throw Error(i(418));e.flags=-4097&e.flags|2,si=!1,ni=e}}}function ci(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;ni=e}function ui(e){if(e!==ni)return!1;if(!si)return ci(e),si=!0,!1;var t;if((t=3!==e.tag)&&!(t=5!==e.tag)&&(t="head"!==(t=e.type)&&"body"!==t&&!ns(e.type,e.memoizedProps)),t&&(t=ai)){if(li(e))throw pi(),Error(i(418));for(;t;)oi(e,t),t=ms(t.nextSibling)}if(ci(e),13===e.tag){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(i(317));e:{for(e=e.nextSibling,t=0;e;){if(8===e.nodeType){var n=e.data;if("/$"===n){if(0===t){ai=ms(e.nextSibling);break e}t--}else"$"!==n&&"$!"!==n&&"$?"!==n||t++}e=e.nextSibling}ai=null}}else ai=ni?ms(e.stateNode.nextSibling):null;return!0}function pi(){for(var e=ai;e;)e=ms(e.nextSibling)}function di(){ai=ni=null,si=!1}function hi(e){null===ii?ii=[e]:ii.push(e)}var gi=k.ReactCurrentBatchConfig;function fi(e,t){if(e&&e.defaultProps){for(var n in t=M({},t),e=e.defaultProps)void 0===t[n]&&(t[n]=e[n]);return t}return t}var yi=Ts(null),vi=null,_i=null,ki=null;function bi(){ki=_i=vi=null}function wi(e){var t=yi.current;Cs(yi),e._currentValue=t}function xi(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 Ti(e,t){vi=e,ki=_i=null,null!==(e=e.dependencies)&&null!==e.firstContext&&(0!==(e.lanes&t)&&(kr=!0),e.firstContext=null)}function Ci(e){var t=e._currentValue;if(ki!==e)if(e={context:e,memoizedValue:t,next:null},null===_i){if(null===vi)throw Error(i(308));_i=e,vi.dependencies={lanes:0,firstContext:e}}else _i=_i.next=e;return t}var Si=null;function ji(e){null===Si?Si=[e]:Si.push(e)}function Di(e,t,n,a){var s=t.interleaved;return null===s?(n.next=n,ji(t)):(n.next=s.next,s.next=n),t.interleaved=n,Ai(e,a)}function Ai(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 Ei=!1;function Ii(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Ni(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 Pi(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Ri(e,t,n){var a=e.updateQueue;if(null===a)return null;if(a=a.shared,0!==(2&Dl)){var s=a.pending;return null===s?t.next=t:(t.next=s.next,s.next=t),a.pending=t,Ai(e,n)}return null===(s=a.interleaved)?(t.next=t,ji(a)):(t.next=s.next,s.next=t),a.interleaved=t,Ai(e,n)}function Oi(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 Li(e,t){var n=e.updateQueue,a=e.alternate;if(null!==a&&n===(a=a.updateQueue)){var s=null,i=null;if(null!==(n=n.firstBaseUpdate)){do{var o={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};null===i?s=i=o:i=i.next=o,n=n.next}while(null!==n);null===i?s=i=t:i=i.next=t}else s=i=t;return n={baseState:a.baseState,firstBaseUpdate:s,lastBaseUpdate:i,shared:a.shared,effects:a.effects},void(e.updateQueue=n)}null===(e=n.lastBaseUpdate)?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Mi(e,t,n,a){var s=e.updateQueue;Ei=!1;var i=s.firstBaseUpdate,o=s.lastBaseUpdate,r=s.shared.pending;if(null!==r){s.shared.pending=null;var l=r,m=l.next;l.next=null,null===o?i=m:o.next=m,o=l;var c=e.alternate;null!==c&&((r=(c=c.updateQueue).lastBaseUpdate)!==o&&(null===r?c.firstBaseUpdate=m:r.next=m,c.lastBaseUpdate=l))}if(null!==i){var u=s.baseState;for(o=0,c=m=l=null,r=i;;){var p=r.lane,d=r.eventTime;if((a&p)===p){null!==c&&(c=c.next={eventTime:d,lane:0,tag:r.tag,payload:r.payload,callback:r.callback,next:null});e:{var h=e,g=r;switch(p=t,d=n,g.tag){case 1:if("function"===typeof(h=g.payload)){u=h.call(d,u,p);break e}u=h;break e;case 3:h.flags=-65537&h.flags|128;case 0:if(null===(p="function"===typeof(h=g.payload)?h.call(d,u,p):h)||void 0===p)break e;u=M({},u,p);break e;case 2:Ei=!0}}null!==r.callback&&0!==r.lane&&(e.flags|=64,null===(p=s.effects)?s.effects=[r]:p.push(r))}else d={eventTime:d,lane:p,tag:r.tag,payload:r.payload,callback:r.callback,next:null},null===c?(m=c=d,l=u):c=c.next=d,o|=p;if(null===(r=r.next)){if(null===(r=s.shared.pending))break;r=(p=r).next,p.next=null,s.lastBaseUpdate=p,s.shared.pending=null}}if(null===c&&(l=u),s.baseState=l,s.firstBaseUpdate=m,s.lastBaseUpdate=c,null!==(t=s.shared.interleaved)){s=t;do{o|=s.lane,s=s.next}while(s!==t)}else null===i&&(s.shared.lanes=0);Ll|=o,e.lanes=o,e.memoizedState=u}}function Fi(e,t,n){if(e=t.effects,t.effects=null,null!==e)for(t=0;t<e.length;t++){var a=e[t],s=a.callback;if(null!==s){if(a.callback=null,a=n,"function"!==typeof s)throw Error(i(191,s));s.call(a)}}}var Wi=(new a.Component).refs;function qi(e,t,n,a){n=null===(n=n(a,t=e.memoizedState))||void 0===n?t:M({},t,n),e.memoizedState=n,0===e.lanes&&(e.updateQueue.baseState=n)}var zi={isMounted:function(e){return!!(e=e._reactInternals)&&Be(e)===e},enqueueSetState:function(e,t,n){e=e._reactInternals;var a=em(),s=tm(e),i=Pi(a,s);i.payload=t,void 0!==n&&null!==n&&(i.callback=n),null!==(t=Ri(e,i,s))&&(nm(t,e,s,a),Oi(t,e,s))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var a=em(),s=tm(e),i=Pi(a,s);i.tag=1,i.payload=t,void 0!==n&&null!==n&&(i.callback=n),null!==(t=Ri(e,i,s))&&(nm(t,e,s,a),Oi(t,e,s))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=em(),a=tm(e),s=Pi(n,a);s.tag=2,void 0!==t&&null!==t&&(s.callback=t),null!==(t=Ri(e,s,a))&&(nm(t,e,a,n),Oi(t,e,a))}};function Bi(e,t,n,a,s,i,o){return"function"===typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(a,i,o):!t.prototype||!t.prototype.isPureReactComponent||(!la(n,a)||!la(s,i))}function Ui(e,t,n){var a=!1,s=js,i=t.contextType;return"object"===typeof i&&null!==i?i=Ci(i):(s=Ns(t)?Es:Ds.current,i=(a=null!==(a=t.contextTypes)&&void 0!==a)?Is(e,s):js),t=new t(n,i),e.memoizedState=null!==t.state&&void 0!==t.state?t.state:null,t.updater=zi,e.stateNode=t,t._reactInternals=e,a&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=s,e.__reactInternalMemoizedMaskedChildContext=i),t}function Hi(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&&zi.enqueueReplaceState(t,t.state,null)}function Gi(e,t,n,a){var s=e.stateNode;s.props=n,s.state=e.memoizedState,s.refs=Wi,Ii(e);var i=t.contextType;"object"===typeof i&&null!==i?s.context=Ci(i):(i=Ns(t)?Es:Ds.current,s.context=Is(e,i)),s.state=e.memoizedState,"function"===typeof(i=t.getDerivedStateFromProps)&&(qi(e,t,i,n),s.state=e.memoizedState),"function"===typeof t.getDerivedStateFromProps||"function"===typeof s.getSnapshotBeforeUpdate||"function"!==typeof s.UNSAFE_componentWillMount&&"function"!==typeof s.componentWillMount||(t=s.state,"function"===typeof s.componentWillMount&&s.componentWillMount(),"function"===typeof s.UNSAFE_componentWillMount&&s.UNSAFE_componentWillMount(),t!==s.state&&zi.enqueueReplaceState(s,s.state,null),Mi(e,n,s,a),s.state=e.memoizedState),"function"===typeof s.componentDidMount&&(e.flags|=4194308)}function Vi(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(i(309));var a=n.stateNode}if(!a)throw Error(i(147,e));var s=a,o=""+e;return null!==t&&null!==t.ref&&"function"===typeof t.ref&&t.ref._stringRef===o?t.ref:(t=function(e){var t=s.refs;t===Wi&&(t=s.refs={}),null===e?delete t[o]:t[o]=e},t._stringRef=o,t)}if("string"!==typeof e)throw Error(i(284));if(!n._owner)throw Error(i(290,e))}return e}function Ki(e,t){throw e=Object.prototype.toString.call(t),Error(i(31,"[object Object]"===e?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function $i(e){return(0,e._init)(e._payload)}function Yi(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 s(e,t){return(e=Pm(e,t)).index=0,e.sibling=null,e}function o(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 r(t){return e&&null===t.alternate&&(t.flags|=2),t}function l(e,t,n,a){return null===t||6!==t.tag?((t=Mm(n,e.mode,a)).return=e,t):((t=s(t,n)).return=e,t)}function m(e,t,n,a){var i=n.type;return i===x?u(e,t,n.props.children,a,n.key):null!==t&&(t.elementType===i||"object"===typeof i&&null!==i&&i.$$typeof===N&&$i(i)===t.type)?((a=s(t,n.props)).ref=Vi(e,t,n),a.return=e,a):((a=Rm(n.type,n.key,n.props,null,e.mode,a)).ref=Vi(e,t,n),a.return=e,a)}function c(e,t,n,a){return null===t||4!==t.tag||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?((t=Fm(n,e.mode,a)).return=e,t):((t=s(t,n.children||[])).return=e,t)}function u(e,t,n,a,i){return null===t||7!==t.tag?((t=Om(n,e.mode,a,i)).return=e,t):((t=s(t,n)).return=e,t)}function p(e,t,n){if("string"===typeof t&&""!==t||"number"===typeof t)return(t=Mm(""+t,e.mode,n)).return=e,t;if("object"===typeof t&&null!==t){switch(t.$$typeof){case b:return(n=Rm(t.type,t.key,t.props,null,e.mode,n)).ref=Vi(e,null,t),n.return=e,n;case w:return(t=Fm(t,e.mode,n)).return=e,t;case N:return p(e,(0,t._init)(t._payload),n)}if(te(t)||O(t))return(t=Om(t,e.mode,n,null)).return=e,t;Ki(e,t)}return null}function d(e,t,n,a){var s=null!==t?t.key:null;if("string"===typeof n&&""!==n||"number"===typeof n)return null!==s?null:l(e,t,""+n,a);if("object"===typeof n&&null!==n){switch(n.$$typeof){case b:return n.key===s?m(e,t,n,a):null;case w:return n.key===s?c(e,t,n,a):null;case N:return d(e,t,(s=n._init)(n._payload),a)}if(te(n)||O(n))return null!==s?null:u(e,t,n,a,null);Ki(e,n)}return null}function h(e,t,n,a,s){if("string"===typeof a&&""!==a||"number"===typeof a)return l(t,e=e.get(n)||null,""+a,s);if("object"===typeof a&&null!==a){switch(a.$$typeof){case b:return m(t,e=e.get(null===a.key?n:a.key)||null,a,s);case w:return c(t,e=e.get(null===a.key?n:a.key)||null,a,s);case N:return h(e,t,n,(0,a._init)(a._payload),s)}if(te(a)||O(a))return u(t,e=e.get(n)||null,a,s,null);Ki(t,a)}return null}function g(s,i,r,l){for(var m=null,c=null,u=i,g=i=0,f=null;null!==u&&g<r.length;g++){u.index>g?(f=u,u=null):f=u.sibling;var y=d(s,u,r[g],l);if(null===y){null===u&&(u=f);break}e&&u&&null===y.alternate&&t(s,u),i=o(y,i,g),null===c?m=y:c.sibling=y,c=y,u=f}if(g===r.length)return n(s,u),si&&Js(s,g),m;if(null===u){for(;g<r.length;g++)null!==(u=p(s,r[g],l))&&(i=o(u,i,g),null===c?m=u:c.sibling=u,c=u);return si&&Js(s,g),m}for(u=a(s,u);g<r.length;g++)null!==(f=h(u,s,g,r[g],l))&&(e&&null!==f.alternate&&u.delete(null===f.key?g:f.key),i=o(f,i,g),null===c?m=f:c.sibling=f,c=f);return e&&u.forEach((function(e){return t(s,e)})),si&&Js(s,g),m}function f(s,r,l,m){var c=O(l);if("function"!==typeof c)throw Error(i(150));if(null==(l=c.call(l)))throw Error(i(151));for(var u=c=null,g=r,f=r=0,y=null,v=l.next();null!==g&&!v.done;f++,v=l.next()){g.index>f?(y=g,g=null):y=g.sibling;var _=d(s,g,v.value,m);if(null===_){null===g&&(g=y);break}e&&g&&null===_.alternate&&t(s,g),r=o(_,r,f),null===u?c=_:u.sibling=_,u=_,g=y}if(v.done)return n(s,g),si&&Js(s,f),c;if(null===g){for(;!v.done;f++,v=l.next())null!==(v=p(s,v.value,m))&&(r=o(v,r,f),null===u?c=v:u.sibling=v,u=v);return si&&Js(s,f),c}for(g=a(s,g);!v.done;f++,v=l.next())null!==(v=h(g,s,f,v.value,m))&&(e&&null!==v.alternate&&g.delete(null===v.key?f:v.key),r=o(v,r,f),null===u?c=v:u.sibling=v,u=v);return e&&g.forEach((function(e){return t(s,e)})),si&&Js(s,f),c}return function e(a,i,o,l){if("object"===typeof o&&null!==o&&o.type===x&&null===o.key&&(o=o.props.children),"object"===typeof o&&null!==o){switch(o.$$typeof){case b:e:{for(var m=o.key,c=i;null!==c;){if(c.key===m){if((m=o.type)===x){if(7===c.tag){n(a,c.sibling),(i=s(c,o.props.children)).return=a,a=i;break e}}else if(c.elementType===m||"object"===typeof m&&null!==m&&m.$$typeof===N&&$i(m)===c.type){n(a,c.sibling),(i=s(c,o.props)).ref=Vi(a,c,o),i.return=a,a=i;break e}n(a,c);break}t(a,c),c=c.sibling}o.type===x?((i=Om(o.props.children,a.mode,l,o.key)).return=a,a=i):((l=Rm(o.type,o.key,o.props,null,a.mode,l)).ref=Vi(a,i,o),l.return=a,a=l)}return r(a);case w:e:{for(c=o.key;null!==i;){if(i.key===c){if(4===i.tag&&i.stateNode.containerInfo===o.containerInfo&&i.stateNode.implementation===o.implementation){n(a,i.sibling),(i=s(i,o.children||[])).return=a,a=i;break e}n(a,i);break}t(a,i),i=i.sibling}(i=Fm(o,a.mode,l)).return=a,a=i}return r(a);case N:return e(a,i,(c=o._init)(o._payload),l)}if(te(o))return g(a,i,o,l);if(O(o))return f(a,i,o,l);Ki(a,o)}return"string"===typeof o&&""!==o||"number"===typeof o?(o=""+o,null!==i&&6===i.tag?(n(a,i.sibling),(i=s(i,o)).return=a,a=i):(n(a,i),(i=Mm(o,a.mode,l)).return=a,a=i),r(a)):n(a,i)}}var Xi=Yi(!0),Qi=Yi(!1),Ji={},Zi=Ts(Ji),eo=Ts(Ji),to=Ts(Ji);function no(e){if(e===Ji)throw Error(i(174));return e}function ao(e,t){switch(Ss(to,t),Ss(eo,e),Ss(Zi,Ji),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)}Cs(Zi),Ss(Zi,t)}function so(){Cs(Zi),Cs(eo),Cs(to)}function io(e){no(to.current);var t=no(Zi.current),n=le(t,e.type);t!==n&&(Ss(eo,e),Ss(Zi,n))}function oo(e){eo.current===e&&(Cs(Zi),Cs(eo))}var ro=Ts(0);function lo(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 mo=[];function co(){for(var e=0;e<mo.length;e++)mo[e]._workInProgressVersionPrimary=null;mo.length=0}var uo=k.ReactCurrentDispatcher,po=k.ReactCurrentBatchConfig,ho=0,go=null,fo=null,yo=null,vo=!1,_o=!1,ko=0,bo=0;function wo(){throw Error(i(321))}function xo(e,t){if(null===t)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!ra(e[n],t[n]))return!1;return!0}function To(e,t,n,a,s,o){if(ho=o,go=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,uo.current=null===e||null===e.memoizedState?rr:lr,e=n(a,s),_o){o=0;do{if(_o=!1,ko=0,25<=o)throw Error(i(301));o+=1,yo=fo=null,t.updateQueue=null,uo.current=mr,e=n(a,s)}while(_o)}if(uo.current=or,t=null!==fo&&null!==fo.next,ho=0,yo=fo=go=null,vo=!1,t)throw Error(i(300));return e}function Co(){var e=0!==ko;return ko=0,e}function So(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===yo?go.memoizedState=yo=e:yo=yo.next=e,yo}function jo(){if(null===fo){var e=go.alternate;e=null!==e?e.memoizedState:null}else e=fo.next;var t=null===yo?go.memoizedState:yo.next;if(null!==t)yo=t,fo=e;else{if(null===e)throw Error(i(310));e={memoizedState:(fo=e).memoizedState,baseState:fo.baseState,baseQueue:fo.baseQueue,queue:fo.queue,next:null},null===yo?go.memoizedState=yo=e:yo=yo.next=e}return yo}function Do(e,t){return"function"===typeof t?t(e):t}function Ao(e){var t=jo(),n=t.queue;if(null===n)throw Error(i(311));n.lastRenderedReducer=e;var a=fo,s=a.baseQueue,o=n.pending;if(null!==o){if(null!==s){var r=s.next;s.next=o.next,o.next=r}a.baseQueue=s=o,n.pending=null}if(null!==s){o=s.next,a=a.baseState;var l=r=null,m=null,c=o;do{var u=c.lane;if((ho&u)===u)null!==m&&(m=m.next={lane:0,action:c.action,hasEagerState:c.hasEagerState,eagerState:c.eagerState,next:null}),a=c.hasEagerState?c.eagerState:e(a,c.action);else{var p={lane:u,action:c.action,hasEagerState:c.hasEagerState,eagerState:c.eagerState,next:null};null===m?(l=m=p,r=a):m=m.next=p,go.lanes|=u,Ll|=u}c=c.next}while(null!==c&&c!==o);null===m?r=a:m.next=l,ra(a,t.memoizedState)||(kr=!0),t.memoizedState=a,t.baseState=r,t.baseQueue=m,n.lastRenderedState=a}if(null!==(e=n.interleaved)){s=e;do{o=s.lane,go.lanes|=o,Ll|=o,s=s.next}while(s!==e)}else null===s&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function Eo(e){var t=jo(),n=t.queue;if(null===n)throw Error(i(311));n.lastRenderedReducer=e;var a=n.dispatch,s=n.pending,o=t.memoizedState;if(null!==s){n.pending=null;var r=s=s.next;do{o=e(o,r.action),r=r.next}while(r!==s);ra(o,t.memoizedState)||(kr=!0),t.memoizedState=o,null===t.baseQueue&&(t.baseState=o),n.lastRenderedState=o}return[o,a]}function Io(){}function No(e,t){var n=go,a=jo(),s=t(),o=!ra(a.memoizedState,s);if(o&&(a.memoizedState=s,kr=!0),a=a.queue,Ho(Oo.bind(null,n,a,e),[e]),a.getSnapshot!==t||o||null!==yo&&1&yo.memoizedState.tag){if(n.flags|=2048,Wo(9,Ro.bind(null,n,a,s,t),void 0,null),null===Al)throw Error(i(349));0!==(30&ho)||Po(n,t,s)}return s}function Po(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},null===(t=go.updateQueue)?(t={lastEffect:null,stores:null},go.updateQueue=t,t.stores=[e]):null===(n=t.stores)?t.stores=[e]:n.push(e)}function Ro(e,t,n,a){t.value=n,t.getSnapshot=a,Lo(t)&&Mo(e)}function Oo(e,t,n){return n((function(){Lo(t)&&Mo(e)}))}function Lo(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!ra(e,n)}catch(a){return!0}}function Mo(e){var t=Ai(e,1);null!==t&&nm(t,e,1,-1)}function Fo(e){var t=So();return"function"===typeof e&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Do,lastRenderedState:e},t.queue=e,e=e.dispatch=nr.bind(null,go,e),[t.memoizedState,e]}function Wo(e,t,n,a){return e={tag:e,create:t,destroy:n,deps:a,next:null},null===(t=go.updateQueue)?(t={lastEffect:null,stores:null},go.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 qo(){return jo().memoizedState}function zo(e,t,n,a){var s=So();go.flags|=e,s.memoizedState=Wo(1|t,n,void 0,void 0===a?null:a)}function Bo(e,t,n,a){var s=jo();a=void 0===a?null:a;var i=void 0;if(null!==fo){var o=fo.memoizedState;if(i=o.destroy,null!==a&&xo(a,o.deps))return void(s.memoizedState=Wo(t,n,i,a))}go.flags|=e,s.memoizedState=Wo(1|t,n,i,a)}function Uo(e,t){return zo(8390656,8,e,t)}function Ho(e,t){return Bo(2048,8,e,t)}function Go(e,t){return Bo(4,2,e,t)}function Vo(e,t){return Bo(4,4,e,t)}function Ko(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 $o(e,t,n){return n=null!==n&&void 0!==n?n.concat([e]):null,Bo(4,4,Ko.bind(null,t,e),n)}function Yo(){}function Xo(e,t){var n=jo();t=void 0===t?null:t;var a=n.memoizedState;return null!==a&&null!==t&&xo(t,a[1])?a[0]:(n.memoizedState=[e,t],e)}function Qo(e,t){var n=jo();t=void 0===t?null:t;var a=n.memoizedState;return null!==a&&null!==t&&xo(t,a[1])?a[0]:(e=e(),n.memoizedState=[e,t],e)}function Jo(e,t,n){return 0===(21&ho)?(e.baseState&&(e.baseState=!1,kr=!0),e.memoizedState=n):(ra(n,t)||(n=gt(),go.lanes|=n,Ll|=n,e.baseState=!0),t)}function Zo(e,t){var n=_t;_t=0!==n&&4>n?n:4,e(!0);var a=po.transition;po.transition={};try{e(!1),t()}finally{_t=n,po.transition=a}}function er(){return jo().memoizedState}function tr(e,t,n){var a=tm(e);if(n={lane:a,action:n,hasEagerState:!1,eagerState:null,next:null},ar(e))sr(t,n);else if(null!==(n=Di(e,t,n,a))){nm(n,e,a,em()),ir(n,t,a)}}function nr(e,t,n){var a=tm(e),s={lane:a,action:n,hasEagerState:!1,eagerState:null,next:null};if(ar(e))sr(t,s);else{var i=e.alternate;if(0===e.lanes&&(null===i||0===i.lanes)&&null!==(i=t.lastRenderedReducer))try{var o=t.lastRenderedState,r=i(o,n);if(s.hasEagerState=!0,s.eagerState=r,ra(r,o)){var l=t.interleaved;return null===l?(s.next=s,ji(t)):(s.next=l.next,l.next=s),void(t.interleaved=s)}}catch(m){}null!==(n=Di(e,t,s,a))&&(nm(n,e,a,s=em()),ir(n,t,a))}}function ar(e){var t=e.alternate;return e===go||null!==t&&t===go}function sr(e,t){_o=vo=!0;var n=e.pending;null===n?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function ir(e,t,n){if(0!==(4194240&n)){var a=t.lanes;n|=a&=e.pendingLanes,t.lanes=n,vt(e,n)}}var or={readContext:Ci,useCallback:wo,useContext:wo,useEffect:wo,useImperativeHandle:wo,useInsertionEffect:wo,useLayoutEffect:wo,useMemo:wo,useReducer:wo,useRef:wo,useState:wo,useDebugValue:wo,useDeferredValue:wo,useTransition:wo,useMutableSource:wo,useSyncExternalStore:wo,useId:wo,unstable_isNewReconciler:!1},rr={readContext:Ci,useCallback:function(e,t){return So().memoizedState=[e,void 0===t?null:t],e},useContext:Ci,useEffect:Uo,useImperativeHandle:function(e,t,n){return n=null!==n&&void 0!==n?n.concat([e]):null,zo(4194308,4,Ko.bind(null,t,e),n)},useLayoutEffect:function(e,t){return zo(4194308,4,e,t)},useInsertionEffect:function(e,t){return zo(4,2,e,t)},useMemo:function(e,t){var n=So();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var a=So();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=tr.bind(null,go,e),[a.memoizedState,e]},useRef:function(e){return e={current:e},So().memoizedState=e},useState:Fo,useDebugValue:Yo,useDeferredValue:function(e){return So().memoizedState=e},useTransition:function(){var e=Fo(!1),t=e[0];return e=Zo.bind(null,e[1]),So().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var a=go,s=So();if(si){if(void 0===n)throw Error(i(407));n=n()}else{if(n=t(),null===Al)throw Error(i(349));0!==(30&ho)||Po(a,t,n)}s.memoizedState=n;var o={value:n,getSnapshot:t};return s.queue=o,Uo(Oo.bind(null,a,o,e),[e]),a.flags|=2048,Wo(9,Ro.bind(null,a,o,n,t),void 0,null),n},useId:function(){var e=So(),t=Al.identifierPrefix;if(si){var n=Qs;t=":"+t+"R"+(n=(Xs&~(1<<32-ot(Xs)-1)).toString(32)+n),0<(n=ko++)&&(t+="H"+n.toString(32)),t+=":"}else t=":"+t+"r"+(n=bo++).toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},lr={readContext:Ci,useCallback:Xo,useContext:Ci,useEffect:Ho,useImperativeHandle:$o,useInsertionEffect:Go,useLayoutEffect:Vo,useMemo:Qo,useReducer:Ao,useRef:qo,useState:function(){return Ao(Do)},useDebugValue:Yo,useDeferredValue:function(e){return Jo(jo(),fo.memoizedState,e)},useTransition:function(){return[Ao(Do)[0],jo().memoizedState]},useMutableSource:Io,useSyncExternalStore:No,useId:er,unstable_isNewReconciler:!1},mr={readContext:Ci,useCallback:Xo,useContext:Ci,useEffect:Ho,useImperativeHandle:$o,useInsertionEffect:Go,useLayoutEffect:Vo,useMemo:Qo,useReducer:Eo,useRef:qo,useState:function(){return Eo(Do)},useDebugValue:Yo,useDeferredValue:function(e){var t=jo();return null===fo?t.memoizedState=e:Jo(t,fo.memoizedState,e)},useTransition:function(){return[Eo(Do)[0],jo().memoizedState]},useMutableSource:Io,useSyncExternalStore:No,useId:er,unstable_isNewReconciler:!1};function cr(e,t){try{var n="",a=t;do{n+=z(a),a=a.return}while(a);var s=n}catch(i){s="\nError generating stack: "+i.message+"\n"+i.stack}return{value:e,source:t,stack:s,digest:null}}function ur(e,t,n){return{value:e,source:null,stack:null!=n?n:null,digest:null!=t?t:null}}function pr(e,t){try{console.error(t.value)}catch(n){setTimeout((function(){throw n}))}}var dr="function"===typeof WeakMap?WeakMap:Map;function hr(e,t,n){(n=Pi(-1,n)).tag=3,n.payload={element:null};var a=t.value;return n.callback=function(){Hl||(Hl=!0,Gl=a),pr(0,t)},n}function gr(e,t,n){(n=Pi(-1,n)).tag=3;var a=e.type.getDerivedStateFromError;if("function"===typeof a){var s=t.value;n.payload=function(){return a(s)},n.callback=function(){pr(0,t)}}var i=e.stateNode;return null!==i&&"function"===typeof i.componentDidCatch&&(n.callback=function(){pr(0,t),"function"!==typeof a&&(null===Vl?Vl=new Set([this]):Vl.add(this));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),n}function fr(e,t,n){var a=e.pingCache;if(null===a){a=e.pingCache=new dr;var s=new Set;a.set(t,s)}else void 0===(s=a.get(t))&&(s=new Set,a.set(t,s));s.has(n)||(s.add(n),e=Cm.bind(null,e,t,n),t.then(e,e))}function yr(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 vr(e,t,n,a,s){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=Pi(-1,1)).tag=2,Ri(n,t,1))),n.lanes|=1),e):(e.flags|=65536,e.lanes=s,e)}var _r=k.ReactCurrentOwner,kr=!1;function br(e,t,n,a){t.child=null===e?Qi(t,null,n,a):Xi(t,e.child,n,a)}function wr(e,t,n,a,s){n=n.render;var i=t.ref;return Ti(t,s),a=To(e,t,n,a,i,s),n=Co(),null===e||kr?(si&&n&&ei(t),t.flags|=1,br(e,t,a,s),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~s,Hr(e,t,s))}function xr(e,t,n,a,s){if(null===e){var i=n.type;return"function"!==typeof i||Nm(i)||void 0!==i.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=Rm(n.type,null,a,t,t.mode,s)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=i,Tr(e,t,i,a,s))}if(i=e.child,0===(e.lanes&s)){var o=i.memoizedProps;if((n=null!==(n=n.compare)?n:la)(o,a)&&e.ref===t.ref)return Hr(e,t,s)}return t.flags|=1,(e=Pm(i,a)).ref=t.ref,e.return=t,t.child=e}function Tr(e,t,n,a,s){if(null!==e){var i=e.memoizedProps;if(la(i,a)&&e.ref===t.ref){if(kr=!1,t.pendingProps=a=i,0===(e.lanes&s))return t.lanes=e.lanes,Hr(e,t,s);0!==(131072&e.flags)&&(kr=!0)}}return jr(e,t,n,a,s)}function Cr(e,t,n){var a=t.pendingProps,s=a.children,i=null!==e?e.memoizedState:null;if("hidden"===a.mode)if(0===(1&t.mode))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},Ss(Pl,Nl),Nl|=n;else{if(0===(1073741824&n))return e=null!==i?i.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,Ss(Pl,Nl),Nl|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},a=null!==i?i.baseLanes:n,Ss(Pl,Nl),Nl|=a}else null!==i?(a=i.baseLanes|n,t.memoizedState=null):a=n,Ss(Pl,Nl),Nl|=a;return br(e,t,s,n),t.child}function Sr(e,t){var n=t.ref;(null===e&&null!==n||null!==e&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function jr(e,t,n,a,s){var i=Ns(n)?Es:Ds.current;return i=Is(t,i),Ti(t,s),n=To(e,t,n,a,i,s),a=Co(),null===e||kr?(si&&a&&ei(t),t.flags|=1,br(e,t,n,s),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~s,Hr(e,t,s))}function Dr(e,t,n,a,s){if(Ns(n)){var i=!0;Ls(t)}else i=!1;if(Ti(t,s),null===t.stateNode)Ur(e,t),Ui(t,n,a),Gi(t,n,a,s),a=!0;else if(null===e){var o=t.stateNode,r=t.memoizedProps;o.props=r;var l=o.context,m=n.contextType;"object"===typeof m&&null!==m?m=Ci(m):m=Is(t,m=Ns(n)?Es:Ds.current);var c=n.getDerivedStateFromProps,u="function"===typeof c||"function"===typeof o.getSnapshotBeforeUpdate;u||"function"!==typeof o.UNSAFE_componentWillReceiveProps&&"function"!==typeof o.componentWillReceiveProps||(r!==a||l!==m)&&Hi(t,o,a,m),Ei=!1;var p=t.memoizedState;o.state=p,Mi(t,a,o,s),l=t.memoizedState,r!==a||p!==l||As.current||Ei?("function"===typeof c&&(qi(t,n,c,a),l=t.memoizedState),(r=Ei||Bi(t,n,r,a,p,l,m))?(u||"function"!==typeof o.UNSAFE_componentWillMount&&"function"!==typeof o.componentWillMount||("function"===typeof o.componentWillMount&&o.componentWillMount(),"function"===typeof o.UNSAFE_componentWillMount&&o.UNSAFE_componentWillMount()),"function"===typeof o.componentDidMount&&(t.flags|=4194308)):("function"===typeof o.componentDidMount&&(t.flags|=4194308),t.memoizedProps=a,t.memoizedState=l),o.props=a,o.state=l,o.context=m,a=r):("function"===typeof o.componentDidMount&&(t.flags|=4194308),a=!1)}else{o=t.stateNode,Ni(e,t),r=t.memoizedProps,m=t.type===t.elementType?r:fi(t.type,r),o.props=m,u=t.pendingProps,p=o.context,"object"===typeof(l=n.contextType)&&null!==l?l=Ci(l):l=Is(t,l=Ns(n)?Es:Ds.current);var d=n.getDerivedStateFromProps;(c="function"===typeof d||"function"===typeof o.getSnapshotBeforeUpdate)||"function"!==typeof o.UNSAFE_componentWillReceiveProps&&"function"!==typeof o.componentWillReceiveProps||(r!==u||p!==l)&&Hi(t,o,a,l),Ei=!1,p=t.memoizedState,o.state=p,Mi(t,a,o,s);var h=t.memoizedState;r!==u||p!==h||As.current||Ei?("function"===typeof d&&(qi(t,n,d,a),h=t.memoizedState),(m=Ei||Bi(t,n,m,a,p,h,l)||!1)?(c||"function"!==typeof o.UNSAFE_componentWillUpdate&&"function"!==typeof o.componentWillUpdate||("function"===typeof o.componentWillUpdate&&o.componentWillUpdate(a,h,l),"function"===typeof o.UNSAFE_componentWillUpdate&&o.UNSAFE_componentWillUpdate(a,h,l)),"function"===typeof o.componentDidUpdate&&(t.flags|=4),"function"===typeof o.getSnapshotBeforeUpdate&&(t.flags|=1024)):("function"!==typeof o.componentDidUpdate||r===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),"function"!==typeof o.getSnapshotBeforeUpdate||r===e.memoizedProps&&p===e.memoizedState||(t.flags|=1024),t.memoizedProps=a,t.memoizedState=h),o.props=a,o.state=h,o.context=l,a=m):("function"!==typeof o.componentDidUpdate||r===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),"function"!==typeof o.getSnapshotBeforeUpdate||r===e.memoizedProps&&p===e.memoizedState||(t.flags|=1024),a=!1)}return Ar(e,t,n,a,i,s)}function Ar(e,t,n,a,s,i){Sr(e,t);var o=0!==(128&t.flags);if(!a&&!o)return s&&Ms(t,n,!1),Hr(e,t,i);a=t.stateNode,_r.current=t;var r=o&&"function"!==typeof n.getDerivedStateFromError?null:a.render();return t.flags|=1,null!==e&&o?(t.child=Xi(t,e.child,null,i),t.child=Xi(t,null,r,i)):br(e,t,r,i),t.memoizedState=a.state,s&&Ms(t,n,!0),t.child}function Er(e){var t=e.stateNode;t.pendingContext?Rs(0,t.pendingContext,t.pendingContext!==t.context):t.context&&Rs(0,t.context,!1),ao(e,t.containerInfo)}function Ir(e,t,n,a,s){return di(),hi(s),t.flags|=256,br(e,t,n,a),t.child}var Nr,Pr,Rr,Or={dehydrated:null,treeContext:null,retryLane:0};function Lr(e){return{baseLanes:e,cachePool:null,transitions:null}}function Mr(e,t,n){var a,s=t.pendingProps,o=ro.current,r=!1,l=0!==(128&t.flags);if((a=l)||(a=(null===e||null!==e.memoizedState)&&0!==(2&o)),a?(r=!0,t.flags&=-129):null!==e&&null===e.memoizedState||(o|=1),Ss(ro,1&o),null===e)return mi(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=s.children,e=s.fallback,r?(s=t.mode,r=t.child,l={mode:"hidden",children:l},0===(1&s)&&null!==r?(r.childLanes=0,r.pendingProps=l):r=Lm(l,s,0,null),e=Om(e,s,n,null),r.return=t,e.return=t,r.sibling=e,t.child=r,t.child.memoizedState=Lr(n),t.memoizedState=Or,e):Fr(t,l));if(null!==(o=e.memoizedState)&&null!==(a=o.dehydrated))return function(e,t,n,a,s,o,r){if(n)return 256&t.flags?(t.flags&=-257,Wr(e,t,r,a=ur(Error(i(422))))):null!==t.memoizedState?(t.child=e.child,t.flags|=128,null):(o=a.fallback,s=t.mode,a=Lm({mode:"visible",children:a.children},s,0,null),(o=Om(o,s,r,null)).flags|=2,a.return=t,o.return=t,a.sibling=o,t.child=a,0!==(1&t.mode)&&Xi(t,e.child,null,r),t.child.memoizedState=Lr(r),t.memoizedState=Or,o);if(0===(1&t.mode))return Wr(e,t,r,null);if("$!"===s.data){if(a=s.nextSibling&&s.nextSibling.dataset)var l=a.dgst;return a=l,Wr(e,t,r,a=ur(o=Error(i(419)),a,void 0))}if(l=0!==(r&e.childLanes),kr||l){if(null!==(a=Al)){switch(r&-r){case 4:s=2;break;case 16:s=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:s=32;break;case 536870912:s=268435456;break;default:s=0}0!==(s=0!==(s&(a.suspendedLanes|r))?0:s)&&s!==o.retryLane&&(o.retryLane=s,Ai(e,s),nm(a,e,s,-1))}return gm(),Wr(e,t,r,a=ur(Error(i(421))))}return"$?"===s.data?(t.flags|=128,t.child=e.child,t=jm.bind(null,e),s._reactRetry=t,null):(e=o.treeContext,ai=ms(s.nextSibling),ni=t,si=!0,ii=null,null!==e&&(Ks[$s++]=Xs,Ks[$s++]=Qs,Ks[$s++]=Ys,Xs=e.id,Qs=e.overflow,Ys=t),t=Fr(t,a.children),t.flags|=4096,t)}(e,t,l,s,a,o,n);if(r){r=s.fallback,l=t.mode,a=(o=e.child).sibling;var m={mode:"hidden",children:s.children};return 0===(1&l)&&t.child!==o?((s=t.child).childLanes=0,s.pendingProps=m,t.deletions=null):(s=Pm(o,m)).subtreeFlags=14680064&o.subtreeFlags,null!==a?r=Pm(a,r):(r=Om(r,l,n,null)).flags|=2,r.return=t,s.return=t,s.sibling=r,t.child=s,s=r,r=t.child,l=null===(l=e.child.memoizedState)?Lr(n):{baseLanes:l.baseLanes|n,cachePool:null,transitions:l.transitions},r.memoizedState=l,r.childLanes=e.childLanes&~n,t.memoizedState=Or,s}return e=(r=e.child).sibling,s=Pm(r,{mode:"visible",children:s.children}),0===(1&t.mode)&&(s.lanes=n),s.return=t,s.sibling=null,null!==e&&(null===(n=t.deletions)?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=s,t.memoizedState=null,s}function Fr(e,t){return(t=Lm({mode:"visible",children:t},e.mode,0,null)).return=e,e.child=t}function Wr(e,t,n,a){return null!==a&&hi(a),Xi(t,e.child,null,n),(e=Fr(t,t.pendingProps.children)).flags|=2,t.memoizedState=null,e}function qr(e,t,n){e.lanes|=t;var a=e.alternate;null!==a&&(a.lanes|=t),xi(e.return,t,n)}function zr(e,t,n,a,s){var i=e.memoizedState;null===i?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:a,tail:n,tailMode:s}:(i.isBackwards=t,i.rendering=null,i.renderingStartTime=0,i.last=a,i.tail=n,i.tailMode=s)}function Br(e,t,n){var a=t.pendingProps,s=a.revealOrder,i=a.tail;if(br(e,t,a.children,n),0!==(2&(a=ro.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&&qr(e,n,t);else if(19===e.tag)qr(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(Ss(ro,a),0===(1&t.mode))t.memoizedState=null;else switch(s){case"forwards":for(n=t.child,s=null;null!==n;)null!==(e=n.alternate)&&null===lo(e)&&(s=n),n=n.sibling;null===(n=s)?(s=t.child,t.child=null):(s=n.sibling,n.sibling=null),zr(t,!1,s,n,i);break;case"backwards":for(n=null,s=t.child,t.child=null;null!==s;){if(null!==(e=s.alternate)&&null===lo(e)){t.child=s;break}e=s.sibling,s.sibling=n,n=s,s=e}zr(t,!0,n,null,i);break;case"together":zr(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Ur(e,t){0===(1&t.mode)&&null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Hr(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(i(153));if(null!==t.child){for(n=Pm(e=t.child,e.pendingProps),t.child=n,n.return=t;null!==e.sibling;)e=e.sibling,(n=n.sibling=Pm(e,e.pendingProps)).return=t;n.sibling=null}return t.child}function Gr(e,t){if(!si)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 Vr(e){var t=null!==e.alternate&&e.alternate.child===e.child,n=0,a=0;if(t)for(var s=e.child;null!==s;)n|=s.lanes|s.childLanes,a|=14680064&s.subtreeFlags,a|=14680064&s.flags,s.return=e,s=s.sibling;else for(s=e.child;null!==s;)n|=s.lanes|s.childLanes,a|=s.subtreeFlags,a|=s.flags,s.return=e,s=s.sibling;return e.subtreeFlags|=a,e.childLanes=n,t}function Kr(e,t,n){var a=t.pendingProps;switch(ti(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Vr(t),null;case 1:case 17:return Ns(t.type)&&Ps(),Vr(t),null;case 3:return a=t.stateNode,so(),Cs(As),Cs(Ds),co(),a.pendingContext&&(a.context=a.pendingContext,a.pendingContext=null),null!==e&&null!==e.child||(ui(t)?t.flags|=4:null===e||e.memoizedState.isDehydrated&&0===(256&t.flags)||(t.flags|=1024,null!==ii&&(om(ii),ii=null))),Vr(t),null;case 5:oo(t);var s=no(to.current);if(n=t.type,null!==e&&null!=t.stateNode)Pr(e,t,n,a),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!a){if(null===t.stateNode)throw Error(i(166));return Vr(t),null}if(e=no(Zi.current),ui(t)){a=t.stateNode,n=t.type;var o=t.memoizedProps;switch(a[ps]=t,a[ds]=o,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(s=0;s<Oa.length;s++)Wa(Oa[s],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":X(a,o),Wa("invalid",a);break;case"select":a._wrapperState={wasMultiple:!!o.multiple},Wa("invalid",a);break;case"textarea":se(a,o),Wa("invalid",a)}for(var l in ve(n,o),s=null,o)if(o.hasOwnProperty(l)){var m=o[l];"children"===l?"string"===typeof m?a.textContent!==m&&(!0!==o.suppressHydrationWarning&&Ja(a.textContent,m,e),s=["children",m]):"number"===typeof m&&a.textContent!==""+m&&(!0!==o.suppressHydrationWarning&&Ja(a.textContent,m,e),s=["children",""+m]):r.hasOwnProperty(l)&&null!=m&&"onScroll"===l&&Wa("scroll",a)}switch(n){case"input":V(a),Z(a,o,!0);break;case"textarea":V(a),oe(a);break;case"select":case"option":break;default:"function"===typeof o.onClick&&(a.onclick=Za)}a=s,t.updateQueue=a,null!==a&&(t.flags|=4)}else{l=9===s.nodeType?s:s.ownerDocument,"http://www.w3.org/1999/xhtml"===e&&(e=re(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[ps]=t,e[ds]=a,Nr(e,t),t.stateNode=e;e:{switch(l=_e(n,a),n){case"dialog":Wa("cancel",e),Wa("close",e),s=a;break;case"iframe":case"object":case"embed":Wa("load",e),s=a;break;case"video":case"audio":for(s=0;s<Oa.length;s++)Wa(Oa[s],e);s=a;break;case"source":Wa("error",e),s=a;break;case"img":case"image":case"link":Wa("error",e),Wa("load",e),s=a;break;case"details":Wa("toggle",e),s=a;break;case"input":X(e,a),s=Y(e,a),Wa("invalid",e);break;case"option":default:s=a;break;case"select":e._wrapperState={wasMultiple:!!a.multiple},s=M({},a,{value:void 0}),Wa("invalid",e);break;case"textarea":se(e,a),s=ae(e,a),Wa("invalid",e)}for(o in ve(n,s),m=s)if(m.hasOwnProperty(o)){var c=m[o];"style"===o?fe(e,c):"dangerouslySetInnerHTML"===o?null!=(c=c?c.__html:void 0)&&ue(e,c):"children"===o?"string"===typeof c?("textarea"!==n||""!==c)&&pe(e,c):"number"===typeof c&&pe(e,""+c):"suppressContentEditableWarning"!==o&&"suppressHydrationWarning"!==o&&"autoFocus"!==o&&(r.hasOwnProperty(o)?null!=c&&"onScroll"===o&&Wa("scroll",e):null!=c&&_(e,o,c,l))}switch(n){case"input":V(e),Z(e,a,!1);break;case"textarea":V(e),oe(e);break;case"option":null!=a.value&&e.setAttribute("value",""+H(a.value));break;case"select":e.multiple=!!a.multiple,null!=(o=a.value)?ne(e,!!a.multiple,o,!1):null!=a.defaultValue&&ne(e,!!a.multiple,a.defaultValue,!0);break;default:"function"===typeof s.onClick&&(e.onclick=Za)}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 Vr(t),null;case 6:if(e&&null!=t.stateNode)Rr(0,t,e.memoizedProps,a);else{if("string"!==typeof a&&null===t.stateNode)throw Error(i(166));if(n=no(to.current),no(Zi.current),ui(t)){if(a=t.stateNode,n=t.memoizedProps,a[ps]=t,(o=a.nodeValue!==n)&&null!==(e=ni))switch(e.tag){case 3:Ja(a.nodeValue,n,0!==(1&e.mode));break;case 5:!0!==e.memoizedProps.suppressHydrationWarning&&Ja(a.nodeValue,n,0!==(1&e.mode))}o&&(t.flags|=4)}else(a=(9===n.nodeType?n:n.ownerDocument).createTextNode(a))[ps]=t,t.stateNode=a}return Vr(t),null;case 13:if(Cs(ro),a=t.memoizedState,null===e||null!==e.memoizedState&&null!==e.memoizedState.dehydrated){if(si&&null!==ai&&0!==(1&t.mode)&&0===(128&t.flags))pi(),di(),t.flags|=98560,o=!1;else if(o=ui(t),null!==a&&null!==a.dehydrated){if(null===e){if(!o)throw Error(i(318));if(!(o=null!==(o=t.memoizedState)?o.dehydrated:null))throw Error(i(317));o[ps]=t}else di(),0===(128&t.flags)&&(t.memoizedState=null),t.flags|=4;Vr(t),o=!1}else null!==ii&&(om(ii),ii=null),o=!0;if(!o)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&ro.current)?0===Rl&&(Rl=3):gm())),null!==t.updateQueue&&(t.flags|=4),Vr(t),null);case 4:return so(),null===e&&Ba(t.stateNode.containerInfo),Vr(t),null;case 10:return wi(t.type._context),Vr(t),null;case 19:if(Cs(ro),null===(o=t.memoizedState))return Vr(t),null;if(a=0!==(128&t.flags),null===(l=o.rendering))if(a)Gr(o,!1);else{if(0!==Rl||null!==e&&0!==(128&e.flags))for(e=t.child;null!==e;){if(null!==(l=lo(e))){for(t.flags|=128,Gr(o,!1),null!==(a=l.updateQueue)&&(t.updateQueue=a,t.flags|=4),t.subtreeFlags=0,a=n,n=t.child;null!==n;)e=a,(o=n).flags&=14680066,null===(l=o.alternate)?(o.childLanes=0,o.lanes=e,o.child=null,o.subtreeFlags=0,o.memoizedProps=null,o.memoizedState=null,o.updateQueue=null,o.dependencies=null,o.stateNode=null):(o.childLanes=l.childLanes,o.lanes=l.lanes,o.child=l.child,o.subtreeFlags=0,o.deletions=null,o.memoizedProps=l.memoizedProps,o.memoizedState=l.memoizedState,o.updateQueue=l.updateQueue,o.type=l.type,e=l.dependencies,o.dependencies=null===e?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return Ss(ro,1&ro.current|2),t.child}e=e.sibling}null!==o.tail&&Qe()>Bl&&(t.flags|=128,a=!0,Gr(o,!1),t.lanes=4194304)}else{if(!a)if(null!==(e=lo(l))){if(t.flags|=128,a=!0,null!==(n=e.updateQueue)&&(t.updateQueue=n,t.flags|=4),Gr(o,!0),null===o.tail&&"hidden"===o.tailMode&&!l.alternate&&!si)return Vr(t),null}else 2*Qe()-o.renderingStartTime>Bl&&1073741824!==n&&(t.flags|=128,a=!0,Gr(o,!1),t.lanes=4194304);o.isBackwards?(l.sibling=t.child,t.child=l):(null!==(n=o.last)?n.sibling=l:t.child=l,o.last=l)}return null!==o.tail?(t=o.tail,o.rendering=t,o.tail=t.sibling,o.renderingStartTime=Qe(),t.sibling=null,n=ro.current,Ss(ro,a?1&n|2:1&n),t):(Vr(t),null);case 22:case 23:return um(),a=null!==t.memoizedState,null!==e&&null!==e.memoizedState!==a&&(t.flags|=8192),a&&0!==(1&t.mode)?0!==(1073741824&Nl)&&(Vr(t),6&t.subtreeFlags&&(t.flags|=8192)):Vr(t),null;case 24:case 25:return null}throw Error(i(156,t.tag))}function $r(e,t){switch(ti(t),t.tag){case 1:return Ns(t.type)&&Ps(),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return so(),Cs(As),Cs(Ds),co(),0!==(65536&(e=t.flags))&&0===(128&e)?(t.flags=-65537&e|128,t):null;case 5:return oo(t),null;case 13:if(Cs(ro),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(i(340));di()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return Cs(ro),null;case 4:return so(),null;case 10:return wi(t.type._context),null;case 22:case 23:return um(),null;default:return null}}Nr=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}},Pr=function(e,t,n,a){var s=e.memoizedProps;if(s!==a){e=t.stateNode,no(Zi.current);var i,o=null;switch(n){case"input":s=Y(e,s),a=Y(e,a),o=[];break;case"select":s=M({},s,{value:void 0}),a=M({},a,{value:void 0}),o=[];break;case"textarea":s=ae(e,s),a=ae(e,a),o=[];break;default:"function"!==typeof s.onClick&&"function"===typeof a.onClick&&(e.onclick=Za)}for(c in ve(n,a),n=null,s)if(!a.hasOwnProperty(c)&&s.hasOwnProperty(c)&&null!=s[c])if("style"===c){var l=s[c];for(i in l)l.hasOwnProperty(i)&&(n||(n={}),n[i]="")}else"dangerouslySetInnerHTML"!==c&&"children"!==c&&"suppressContentEditableWarning"!==c&&"suppressHydrationWarning"!==c&&"autoFocus"!==c&&(r.hasOwnProperty(c)?o||(o=[]):(o=o||[]).push(c,null));for(c in a){var m=a[c];if(l=null!=s?s[c]:void 0,a.hasOwnProperty(c)&&m!==l&&(null!=m||null!=l))if("style"===c)if(l){for(i in l)!l.hasOwnProperty(i)||m&&m.hasOwnProperty(i)||(n||(n={}),n[i]="");for(i in m)m.hasOwnProperty(i)&&l[i]!==m[i]&&(n||(n={}),n[i]=m[i])}else n||(o||(o=[]),o.push(c,n)),n=m;else"dangerouslySetInnerHTML"===c?(m=m?m.__html:void 0,l=l?l.__html:void 0,null!=m&&l!==m&&(o=o||[]).push(c,m)):"children"===c?"string"!==typeof m&&"number"!==typeof m||(o=o||[]).push(c,""+m):"suppressContentEditableWarning"!==c&&"suppressHydrationWarning"!==c&&(r.hasOwnProperty(c)?(null!=m&&"onScroll"===c&&Wa("scroll",e),o||l===m||(o=[])):(o=o||[]).push(c,m))}n&&(o=o||[]).push("style",n);var c=o;(t.updateQueue=c)&&(t.flags|=4)}},Rr=function(e,t,n,a){n!==a&&(t.flags|=4)};var Yr=!1,Xr=!1,Qr="function"===typeof WeakSet?WeakSet:Set,Jr=null;function Zr(e,t){var n=e.ref;if(null!==n)if("function"===typeof n)try{n(null)}catch(a){Tm(e,t,a)}else n.current=null}function el(e,t,n){try{n()}catch(a){Tm(e,t,a)}}var tl=!1;function nl(e,t,n){var a=t.updateQueue;if(null!==(a=null!==a?a.lastEffect:null)){var s=a=a.next;do{if((s.tag&e)===e){var i=s.destroy;s.destroy=void 0,void 0!==i&&el(t,n,i)}s=s.next}while(s!==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 sl(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 il(e){var t=e.alternate;null!==t&&(e.alternate=null,il(t)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&(null!==(t=e.stateNode)&&(delete t[ps],delete t[ds],delete t[gs],delete t[fs],delete t[ys])),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 ol(e){return 5===e.tag||3===e.tag||4===e.tag}function rl(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||ol(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=Za));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 ml(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(ml(e,t,n),e=e.sibling;null!==e;)ml(e,t,n),e=e.sibling}var cl=null,ul=!1;function pl(e,t,n){for(n=n.child;null!==n;)dl(e,t,n),n=n.sibling}function dl(e,t,n){if(it&&"function"===typeof it.onCommitFiberUnmount)try{it.onCommitFiberUnmount(st,n)}catch(r){}switch(n.tag){case 5:Xr||Zr(n,t);case 6:var a=cl,s=ul;cl=null,pl(e,t,n),ul=s,null!==(cl=a)&&(ul?(e=cl,n=n.stateNode,8===e.nodeType?e.parentNode.removeChild(n):e.removeChild(n)):cl.removeChild(n.stateNode));break;case 18:null!==cl&&(ul?(e=cl,n=n.stateNode,8===e.nodeType?ls(e.parentNode,n):1===e.nodeType&&ls(e,n),Bt(e)):ls(cl,n.stateNode));break;case 4:a=cl,s=ul,cl=n.stateNode.containerInfo,ul=!0,pl(e,t,n),cl=a,ul=s;break;case 0:case 11:case 14:case 15:if(!Xr&&(null!==(a=n.updateQueue)&&null!==(a=a.lastEffect))){s=a=a.next;do{var i=s,o=i.destroy;i=i.tag,void 0!==o&&(0!==(2&i)||0!==(4&i))&&el(n,t,o),s=s.next}while(s!==a)}pl(e,t,n);break;case 1:if(!Xr&&(Zr(n,t),"function"===typeof(a=n.stateNode).componentWillUnmount))try{a.props=n.memoizedProps,a.state=n.memoizedState,a.componentWillUnmount()}catch(r){Tm(n,t,r)}pl(e,t,n);break;case 21:pl(e,t,n);break;case 22:1&n.mode?(Xr=(a=Xr)||null!==n.memoizedState,pl(e,t,n),Xr=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 Qr),t.forEach((function(t){var a=Dm.bind(null,e,t);n.has(t)||(n.add(t),t.then(a,a))}))}}function gl(e,t){var n=t.deletions;if(null!==n)for(var a=0;a<n.length;a++){var s=n[a];try{var o=e,r=t,l=r;e:for(;null!==l;){switch(l.tag){case 5:cl=l.stateNode,ul=!1;break e;case 3:case 4:cl=l.stateNode.containerInfo,ul=!0;break e}l=l.return}if(null===cl)throw Error(i(160));dl(o,r,s),cl=null,ul=!1;var m=s.alternate;null!==m&&(m.return=null),s.return=null}catch(c){Tm(s,t,c)}}if(12854&t.subtreeFlags)for(t=t.child;null!==t;)fl(t,e),t=t.sibling}function fl(e,t){var n=e.alternate,a=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(gl(t,e),yl(e),4&a){try{nl(3,e,e.return),al(3,e)}catch(f){Tm(e,e.return,f)}try{nl(5,e,e.return)}catch(f){Tm(e,e.return,f)}}break;case 1:gl(t,e),yl(e),512&a&&null!==n&&Zr(n,n.return);break;case 5:if(gl(t,e),yl(e),512&a&&null!==n&&Zr(n,n.return),32&e.flags){var s=e.stateNode;try{pe(s,"")}catch(f){Tm(e,e.return,f)}}if(4&a&&null!=(s=e.stateNode)){var o=e.memoizedProps,r=null!==n?n.memoizedProps:o,l=e.type,m=e.updateQueue;if(e.updateQueue=null,null!==m)try{"input"===l&&"radio"===o.type&&null!=o.name&&Q(s,o),_e(l,r);var c=_e(l,o);for(r=0;r<m.length;r+=2){var u=m[r],p=m[r+1];"style"===u?fe(s,p):"dangerouslySetInnerHTML"===u?ue(s,p):"children"===u?pe(s,p):_(s,u,p,c)}switch(l){case"input":J(s,o);break;case"textarea":ie(s,o);break;case"select":var d=s._wrapperState.wasMultiple;s._wrapperState.wasMultiple=!!o.multiple;var h=o.value;null!=h?ne(s,!!o.multiple,h,!1):d!==!!o.multiple&&(null!=o.defaultValue?ne(s,!!o.multiple,o.defaultValue,!0):ne(s,!!o.multiple,o.multiple?[]:"",!1))}s[ds]=o}catch(f){Tm(e,e.return,f)}}break;case 6:if(gl(t,e),yl(e),4&a){if(null===e.stateNode)throw Error(i(162));s=e.stateNode,o=e.memoizedProps;try{s.nodeValue=o}catch(f){Tm(e,e.return,f)}}break;case 3:if(gl(t,e),yl(e),4&a&&null!==n&&n.memoizedState.isDehydrated)try{Bt(t.containerInfo)}catch(f){Tm(e,e.return,f)}break;case 4:default:gl(t,e),yl(e);break;case 13:gl(t,e),yl(e),8192&(s=e.child).flags&&(o=null!==s.memoizedState,s.stateNode.isHidden=o,!o||null!==s.alternate&&null!==s.alternate.memoizedState||(zl=Qe())),4&a&&hl(e);break;case 22:if(u=null!==n&&null!==n.memoizedState,1&e.mode?(Xr=(c=Xr)||u,gl(t,e),Xr=c):gl(t,e),yl(e),8192&a){if(c=null!==e.memoizedState,(e.stateNode.isHidden=c)&&!u&&0!==(1&e.mode))for(Jr=e,u=e.child;null!==u;){for(p=Jr=u;null!==Jr;){switch(h=(d=Jr).child,d.tag){case 0:case 11:case 14:case 15:nl(4,d,d.return);break;case 1:Zr(d,d.return);var g=d.stateNode;if("function"===typeof g.componentWillUnmount){a=d,n=d.return;try{t=a,g.props=t.memoizedProps,g.state=t.memoizedState,g.componentWillUnmount()}catch(f){Tm(a,n,f)}}break;case 5:Zr(d,d.return);break;case 22:if(null!==d.memoizedState){bl(p);continue}}null!==h?(h.return=d,Jr=h):bl(p)}u=u.sibling}e:for(u=null,p=e;;){if(5===p.tag){if(null===u){u=p;try{s=p.stateNode,c?"function"===typeof(o=s.style).setProperty?o.setProperty("display","none","important"):o.display="none":(l=p.stateNode,r=void 0!==(m=p.memoizedProps.style)&&null!==m&&m.hasOwnProperty("display")?m.display:null,l.style.display=ge("display",r))}catch(f){Tm(e,e.return,f)}}}else if(6===p.tag){if(null===u)try{p.stateNode.nodeValue=c?"":p.memoizedProps}catch(f){Tm(e,e.return,f)}}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;u===p&&(u=null),p=p.return}u===p&&(u=null),p.sibling.return=p.return,p=p.sibling}}break;case 19:gl(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(ol(n)){var a=n;break e}n=n.return}throw Error(i(160))}switch(a.tag){case 5:var s=a.stateNode;32&a.flags&&(pe(s,""),a.flags&=-33),ml(e,rl(e),s);break;case 3:case 4:var o=a.stateNode.containerInfo;ll(e,rl(e),o);break;default:throw Error(i(161))}}catch(r){Tm(e,e.return,r)}e.flags&=-3}4096&t&&(e.flags&=-4097)}function vl(e,t,n){Jr=e,_l(e,t,n)}function _l(e,t,n){for(var a=0!==(1&e.mode);null!==Jr;){var s=Jr,i=s.child;if(22===s.tag&&a){var o=null!==s.memoizedState||Yr;if(!o){var r=s.alternate,l=null!==r&&null!==r.memoizedState||Xr;r=Yr;var m=Xr;if(Yr=o,(Xr=l)&&!m)for(Jr=s;null!==Jr;)l=(o=Jr).child,22===o.tag&&null!==o.memoizedState?wl(s):null!==l?(l.return=o,Jr=l):wl(s);for(;null!==i;)Jr=i,_l(i,t,n),i=i.sibling;Jr=s,Yr=r,Xr=m}kl(e)}else 0!==(8772&s.subtreeFlags)&&null!==i?(i.return=s,Jr=i):kl(e)}}function kl(e){for(;null!==Jr;){var t=Jr;if(0!==(8772&t.flags)){var n=t.alternate;try{if(0!==(8772&t.flags))switch(t.tag){case 0:case 11:case 15:Xr||al(5,t);break;case 1:var a=t.stateNode;if(4&t.flags&&!Xr)if(null===n)a.componentDidMount();else{var s=t.elementType===t.type?n.memoizedProps:fi(t.type,n.memoizedProps);a.componentDidUpdate(s,n.memoizedState,a.__reactInternalSnapshotBeforeUpdate)}var o=t.updateQueue;null!==o&&Fi(t,o,a);break;case 3:var r=t.updateQueue;if(null!==r){if(n=null,null!==t.child)switch(t.child.tag){case 5:case 1:n=t.child.stateNode}Fi(t,r,n)}break;case 5:var l=t.stateNode;if(null===n&&4&t.flags){n=l;var m=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":m.autoFocus&&n.focus();break;case"img":m.src&&(n.src=m.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 c=t.alternate;if(null!==c){var u=c.memoizedState;if(null!==u){var p=u.dehydrated;null!==p&&Bt(p)}}}break;default:throw Error(i(163))}Xr||512&t.flags&&sl(t)}catch(d){Tm(t,t.return,d)}}if(t===e){Jr=null;break}if(null!==(n=t.sibling)){n.return=t.return,Jr=n;break}Jr=t.return}}function bl(e){for(;null!==Jr;){var t=Jr;if(t===e){Jr=null;break}var n=t.sibling;if(null!==n){n.return=t.return,Jr=n;break}Jr=t.return}}function wl(e){for(;null!==Jr;){var t=Jr;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{al(4,t)}catch(l){Tm(t,n,l)}break;case 1:var a=t.stateNode;if("function"===typeof a.componentDidMount){var s=t.return;try{a.componentDidMount()}catch(l){Tm(t,s,l)}}var i=t.return;try{sl(t)}catch(l){Tm(t,i,l)}break;case 5:var o=t.return;try{sl(t)}catch(l){Tm(t,o,l)}}}catch(l){Tm(t,t.return,l)}if(t===e){Jr=null;break}var r=t.sibling;if(null!==r){r.return=t.return,Jr=r;break}Jr=t.return}}var xl,Tl=Math.ceil,Cl=k.ReactCurrentDispatcher,Sl=k.ReactCurrentOwner,jl=k.ReactCurrentBatchConfig,Dl=0,Al=null,El=null,Il=0,Nl=0,Pl=Ts(0),Rl=0,Ol=null,Ll=0,Ml=0,Fl=0,Wl=null,ql=null,zl=0,Bl=1/0,Ul=null,Hl=!1,Gl=null,Vl=null,Kl=!1,$l=null,Yl=0,Xl=0,Ql=null,Jl=-1,Zl=0;function em(){return 0!==(6&Dl)?Qe():-1!==Jl?Jl:Jl=Qe()}function tm(e){return 0===(1&e.mode)?1:0!==(2&Dl)&&0!==Il?Il&-Il:null!==gi.transition?(0===Zl&&(Zl=gt()),Zl):0!==(e=_t)?e:e=void 0===(e=window.event)?16:Xt(e.type)}function nm(e,t,n,a){if(50<Xl)throw Xl=0,Ql=null,Error(i(185));yt(e,n,a),0!==(2&Dl)&&e===Al||(e===Al&&(0===(2&Dl)&&(Ml|=n),4===Rl&&rm(e,Il)),am(e,a),1===n&&0===Dl&&0===(1&t.mode)&&(Bl=Qe()+500,Ws&&Bs()))}function am(e,t){var n=e.callbackNode;!function(e,t){for(var n=e.suspendedLanes,a=e.pingedLanes,s=e.expirationTimes,i=e.pendingLanes;0<i;){var o=31-ot(i),r=1<<o,l=s[o];-1===l?0!==(r&n)&&0===(r&a)||(s[o]=dt(r,t)):l<=t&&(e.expiredLanes|=r),i&=~r}}(e,t);var a=pt(e,e===Al?Il:0);if(0===a)null!==n&&$e(n),e.callbackNode=null,e.callbackPriority=0;else if(t=a&-a,e.callbackPriority!==t){if(null!=n&&$e(n),1===t)0===e.tag?function(e){Ws=!0,zs(e)}(lm.bind(null,e)):zs(lm.bind(null,e)),os((function(){0===(6&Dl)&&Bs()})),n=null;else{switch(kt(a)){case 1:n=Ze;break;case 4:n=et;break;case 16:default:n=tt;break;case 536870912:n=at}n=Am(n,sm.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function sm(e,t){if(Jl=-1,Zl=0,0!==(6&Dl))throw Error(i(327));var n=e.callbackNode;if(wm()&&e.callbackNode!==n)return null;var a=pt(e,e===Al?Il:0);if(0===a)return null;if(0!==(30&a)||0!==(a&e.expiredLanes)||t)t=fm(e,a);else{t=a;var s=Dl;Dl|=2;var o=hm();for(Al===e&&Il===t||(Ul=null,Bl=Qe()+500,pm(e,t));;)try{vm();break}catch(l){dm(e,l)}bi(),Cl.current=o,Dl=s,null!==El?t=0:(Al=null,Il=0,t=Rl)}if(0!==t){if(2===t&&(0!==(s=ht(e))&&(a=s,t=im(e,s))),1===t)throw n=Ol,pm(e,0),rm(e,a),am(e,Qe()),n;if(6===t)rm(e,a);else{if(s=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 s=n[a],i=s.getSnapshot;s=s.value;try{if(!ra(i(),s))return!1}catch(r){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}(s)&&(2===(t=fm(e,a))&&(0!==(o=ht(e))&&(a=o,t=im(e,o))),1===t))throw n=Ol,pm(e,0),rm(e,a),am(e,Qe()),n;switch(e.finishedWork=s,e.finishedLanes=a,t){case 0:case 1:throw Error(i(345));case 2:case 5:bm(e,ql,Ul);break;case 3:if(rm(e,a),(130023424&a)===a&&10<(t=zl+500-Qe())){if(0!==pt(e,0))break;if(((s=e.suspendedLanes)&a)!==a){em(),e.pingedLanes|=e.suspendedLanes&s;break}e.timeoutHandle=as(bm.bind(null,e,ql,Ul),t);break}bm(e,ql,Ul);break;case 4:if(rm(e,a),(4194240&a)===a)break;for(t=e.eventTimes,s=-1;0<a;){var r=31-ot(a);o=1<<r,(r=t[r])>s&&(s=r),a&=~o}if(a=s,10<(a=(120>(a=Qe()-a)?120:480>a?480:1080>a?1080:1920>a?1920:3e3>a?3e3:4320>a?4320:1960*Tl(a/1960))-a)){e.timeoutHandle=as(bm.bind(null,e,ql,Ul),a);break}bm(e,ql,Ul);break;default:throw Error(i(329))}}}return am(e,Qe()),e.callbackNode===n?sm.bind(null,e):null}function im(e,t){var n=Wl;return e.current.memoizedState.isDehydrated&&(pm(e,t).flags|=256),2!==(e=fm(e,t))&&(t=ql,ql=n,null!==t&&om(t)),e}function om(e){null===ql?ql=e:ql.push.apply(ql,e)}function rm(e,t){for(t&=~Fl,t&=~Ml,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-ot(t),a=1<<n;e[n]=-1,t&=~a}}function lm(e){if(0!==(6&Dl))throw Error(i(327));wm();var t=pt(e,0);if(0===(1&t))return am(e,Qe()),null;var n=fm(e,t);if(0!==e.tag&&2===n){var a=ht(e);0!==a&&(t=a,n=im(e,a))}if(1===n)throw n=Ol,pm(e,0),rm(e,t),am(e,Qe()),n;if(6===n)throw Error(i(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,bm(e,ql,Ul),am(e,Qe()),null}function mm(e,t){var n=Dl;Dl|=1;try{return e(t)}finally{0===(Dl=n)&&(Bl=Qe()+500,Ws&&Bs())}}function cm(e){null!==$l&&0===$l.tag&&0===(6&Dl)&&wm();var t=Dl;Dl|=1;var n=jl.transition,a=_t;try{if(jl.transition=null,_t=1,e)return e()}finally{_t=a,jl.transition=n,0===(6&(Dl=t))&&Bs()}}function um(){Nl=Pl.current,Cs(Pl)}function pm(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(-1!==n&&(e.timeoutHandle=-1,ss(n)),null!==El)for(n=El.return;null!==n;){var a=n;switch(ti(a),a.tag){case 1:null!==(a=a.type.childContextTypes)&&void 0!==a&&Ps();break;case 3:so(),Cs(As),Cs(Ds),co();break;case 5:oo(a);break;case 4:so();break;case 13:case 19:Cs(ro);break;case 10:wi(a.type._context);break;case 22:case 23:um()}n=n.return}if(Al=e,El=e=Pm(e.current,null),Il=Nl=t,Rl=0,Ol=null,Fl=Ml=Ll=0,ql=Wl=null,null!==Si){for(t=0;t<Si.length;t++)if(null!==(a=(n=Si[t]).interleaved)){n.interleaved=null;var s=a.next,i=n.pending;if(null!==i){var o=i.next;i.next=s,a.next=o}n.pending=a}Si=null}return e}function dm(e,t){for(;;){var n=El;try{if(bi(),uo.current=or,vo){for(var a=go.memoizedState;null!==a;){var s=a.queue;null!==s&&(s.pending=null),a=a.next}vo=!1}if(ho=0,yo=fo=go=null,_o=!1,ko=0,Sl.current=null,null===n||null===n.return){Rl=1,Ol=t,El=null;break}e:{var o=e,r=n.return,l=n,m=t;if(t=Il,l.flags|=32768,null!==m&&"object"===typeof m&&"function"===typeof m.then){var c=m,u=l,p=u.tag;if(0===(1&u.mode)&&(0===p||11===p||15===p)){var d=u.alternate;d?(u.updateQueue=d.updateQueue,u.memoizedState=d.memoizedState,u.lanes=d.lanes):(u.updateQueue=null,u.memoizedState=null)}var h=yr(r);if(null!==h){h.flags&=-257,vr(h,r,l,0,t),1&h.mode&&fr(o,c,t),m=c;var g=(t=h).updateQueue;if(null===g){var f=new Set;f.add(m),t.updateQueue=f}else g.add(m);break e}if(0===(1&t)){fr(o,c,t),gm();break e}m=Error(i(426))}else if(si&&1&l.mode){var y=yr(r);if(null!==y){0===(65536&y.flags)&&(y.flags|=256),vr(y,r,l,0,t),hi(cr(m,l));break e}}o=m=cr(m,l),4!==Rl&&(Rl=2),null===Wl?Wl=[o]:Wl.push(o),o=r;do{switch(o.tag){case 3:o.flags|=65536,t&=-t,o.lanes|=t,Li(o,hr(0,m,t));break e;case 1:l=m;var v=o.type,_=o.stateNode;if(0===(128&o.flags)&&("function"===typeof v.getDerivedStateFromError||null!==_&&"function"===typeof _.componentDidCatch&&(null===Vl||!Vl.has(_)))){o.flags|=65536,t&=-t,o.lanes|=t,Li(o,gr(o,l,t));break e}}o=o.return}while(null!==o)}km(n)}catch(k){t=k,El===n&&null!==n&&(El=n=n.return);continue}break}}function hm(){var e=Cl.current;return Cl.current=or,null===e?or:e}function gm(){0!==Rl&&3!==Rl&&2!==Rl||(Rl=4),null===Al||0===(268435455&Ll)&&0===(268435455&Ml)||rm(Al,Il)}function fm(e,t){var n=Dl;Dl|=2;var a=hm();for(Al===e&&Il===t||(Ul=null,pm(e,t));;)try{ym();break}catch(s){dm(e,s)}if(bi(),Dl=n,Cl.current=a,null!==El)throw Error(i(261));return Al=null,Il=0,Rl}function ym(){for(;null!==El;)_m(El)}function vm(){for(;null!==El&&!Ye();)_m(El)}function _m(e){var t=xl(e.alternate,e,Nl);e.memoizedProps=e.pendingProps,null===t?km(e):El=t,Sl.current=null}function km(e){var t=e;do{var n=t.alternate;if(e=t.return,0===(32768&t.flags)){if(null!==(n=Kr(n,t,Nl)))return void(El=n)}else{if(null!==(n=$r(n,t)))return n.flags&=32767,void(El=n);if(null===e)return Rl=6,void(El=null);e.flags|=32768,e.subtreeFlags=0,e.deletions=null}if(null!==(t=t.sibling))return void(El=t);El=t=e}while(null!==t);0===Rl&&(Rl=5)}function bm(e,t,n){var a=_t,s=jl.transition;try{jl.transition=null,_t=1,function(e,t,n,a){do{wm()}while(null!==$l);if(0!==(6&Dl))throw Error(i(327));n=e.finishedWork;var s=e.finishedLanes;if(null===n)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(i(177));e.callbackNode=null,e.callbackPriority=0;var o=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 s=31-ot(n),i=1<<s;t[s]=0,a[s]=-1,e[s]=-1,n&=~i}}(e,o),e===Al&&(El=Al=null,Il=0),0===(2064&n.subtreeFlags)&&0===(2064&n.flags)||Kl||(Kl=!0,Am(tt,(function(){return wm(),null}))),o=0!==(15990&n.flags),0!==(15990&n.subtreeFlags)||o){o=jl.transition,jl.transition=null;var r=_t;_t=1;var l=Dl;Dl|=4,Sl.current=null,function(e,t){if(es=Ht,da(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 s=a.anchorOffset,o=a.focusNode;a=a.focusOffset;try{n.nodeType,o.nodeType}catch(b){n=null;break e}var r=0,l=-1,m=-1,c=0,u=0,p=e,d=null;t:for(;;){for(var h;p!==n||0!==s&&3!==p.nodeType||(l=r+s),p!==o||0!==a&&3!==p.nodeType||(m=r+a),3===p.nodeType&&(r+=p.nodeValue.length),null!==(h=p.firstChild);)d=p,p=h;for(;;){if(p===e)break t;if(d===n&&++c===s&&(l=r),d===o&&++u===a&&(m=r),null!==(h=p.nextSibling))break;d=(p=d).parentNode}p=h}n=-1===l||-1===m?null:{start:l,end:m}}else n=null}n=n||{start:0,end:0}}else n=null;for(ts={focusedElem:e,selectionRange:n},Ht=!1,Jr=t;null!==Jr;)if(e=(t=Jr).child,0!==(1028&t.subtreeFlags)&&null!==e)e.return=t,Jr=e;else for(;null!==Jr;){t=Jr;try{var g=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!==g){var f=g.memoizedProps,y=g.memoizedState,v=t.stateNode,_=v.getSnapshotBeforeUpdate(t.elementType===t.type?f:fi(t.type,f),y);v.__reactInternalSnapshotBeforeUpdate=_}break;case 3:var k=t.stateNode.containerInfo;1===k.nodeType?k.textContent="":9===k.nodeType&&k.documentElement&&k.removeChild(k.documentElement);break;default:throw Error(i(163))}}catch(b){Tm(t,t.return,b)}if(null!==(e=t.sibling)){e.return=t.return,Jr=e;break}Jr=t.return}g=tl,tl=!1}(e,n),fl(n,e),ha(ts),Ht=!!es,ts=es=null,e.current=n,vl(n,e,s),Xe(),Dl=l,_t=r,jl.transition=o}else e.current=n;if(Kl&&(Kl=!1,$l=e,Yl=s),o=e.pendingLanes,0===o&&(Vl=null),function(e){if(it&&"function"===typeof it.onCommitFiberRoot)try{it.onCommitFiberRoot(st,e,void 0,128===(128&e.current.flags))}catch(t){}}(n.stateNode),am(e,Qe()),null!==t)for(a=e.onRecoverableError,n=0;n<t.length;n++)s=t[n],a(s.value,{componentStack:s.stack,digest:s.digest});if(Hl)throw Hl=!1,e=Gl,Gl=null,e;0!==(1&Yl)&&0!==e.tag&&wm(),o=e.pendingLanes,0!==(1&o)?e===Ql?Xl++:(Xl=0,Ql=e):Xl=0,Bs()}(e,t,n,a)}finally{jl.transition=s,_t=a}return null}function wm(){if(null!==$l){var e=kt(Yl),t=jl.transition,n=_t;try{if(jl.transition=null,_t=16>e?16:e,null===$l)var a=!1;else{if(e=$l,$l=null,Yl=0,0!==(6&Dl))throw Error(i(331));var s=Dl;for(Dl|=4,Jr=e.current;null!==Jr;){var o=Jr,r=o.child;if(0!==(16&Jr.flags)){var l=o.deletions;if(null!==l){for(var m=0;m<l.length;m++){var c=l[m];for(Jr=c;null!==Jr;){var u=Jr;switch(u.tag){case 0:case 11:case 15:nl(8,u,o)}var p=u.child;if(null!==p)p.return=u,Jr=p;else for(;null!==Jr;){var d=(u=Jr).sibling,h=u.return;if(il(u),u===c){Jr=null;break}if(null!==d){d.return=h,Jr=d;break}Jr=h}}}var g=o.alternate;if(null!==g){var f=g.child;if(null!==f){g.child=null;do{var y=f.sibling;f.sibling=null,f=y}while(null!==f)}}Jr=o}}if(0!==(2064&o.subtreeFlags)&&null!==r)r.return=o,Jr=r;else e:for(;null!==Jr;){if(0!==(2048&(o=Jr).flags))switch(o.tag){case 0:case 11:case 15:nl(9,o,o.return)}var v=o.sibling;if(null!==v){v.return=o.return,Jr=v;break e}Jr=o.return}}var _=e.current;for(Jr=_;null!==Jr;){var k=(r=Jr).child;if(0!==(2064&r.subtreeFlags)&&null!==k)k.return=r,Jr=k;else e:for(r=_;null!==Jr;){if(0!==(2048&(l=Jr).flags))try{switch(l.tag){case 0:case 11:case 15:al(9,l)}}catch(w){Tm(l,l.return,w)}if(l===r){Jr=null;break e}var b=l.sibling;if(null!==b){b.return=l.return,Jr=b;break e}Jr=l.return}}if(Dl=s,Bs(),it&&"function"===typeof it.onPostCommitFiberRoot)try{it.onPostCommitFiberRoot(st,e)}catch(w){}a=!0}return a}finally{_t=n,jl.transition=t}}return!1}function xm(e,t,n){e=Ri(e,t=hr(0,t=cr(n,t),1),1),t=em(),null!==e&&(yt(e,1,t),am(e,t))}function Tm(e,t,n){if(3===e.tag)xm(e,e,n);else for(;null!==t;){if(3===t.tag){xm(t,e,n);break}if(1===t.tag){var a=t.stateNode;if("function"===typeof t.type.getDerivedStateFromError||"function"===typeof a.componentDidCatch&&(null===Vl||!Vl.has(a))){t=Ri(t,e=gr(t,e=cr(n,e),1),1),e=em(),null!==t&&(yt(t,1,e),am(t,e));break}}t=t.return}}function Cm(e,t,n){var a=e.pingCache;null!==a&&a.delete(t),t=em(),e.pingedLanes|=e.suspendedLanes&n,Al===e&&(Il&n)===n&&(4===Rl||3===Rl&&(130023424&Il)===Il&&500>Qe()-zl?pm(e,0):Fl|=n),am(e,t)}function Sm(e,t){0===t&&(0===(1&e.mode)?t=1:(t=ct,0===(130023424&(ct<<=1))&&(ct=4194304)));var n=em();null!==(e=Ai(e,t))&&(yt(e,t,n),am(e,n))}function jm(e){var t=e.memoizedState,n=0;null!==t&&(n=t.retryLane),Sm(e,n)}function Dm(e,t){var n=0;switch(e.tag){case 13:var a=e.stateNode,s=e.memoizedState;null!==s&&(n=s.retryLane);break;case 19:a=e.stateNode;break;default:throw Error(i(314))}null!==a&&a.delete(t),Sm(e,n)}function Am(e,t){return Ke(e,t)}function Em(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 Im(e,t,n,a){return new Em(e,t,n,a)}function Nm(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Pm(e,t){var n=e.alternate;return null===n?((n=Im(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 Rm(e,t,n,a,s,o){var r=2;if(a=e,"function"===typeof e)Nm(e)&&(r=1);else if("string"===typeof e)r=5;else e:switch(e){case x:return Om(n.children,s,o,t);case T:r=8,s|=8;break;case C:return(e=Im(12,n,t,2|s)).elementType=C,e.lanes=o,e;case A:return(e=Im(13,n,t,s)).elementType=A,e.lanes=o,e;case E:return(e=Im(19,n,t,s)).elementType=E,e.lanes=o,e;case P:return Lm(n,s,o,t);default:if("object"===typeof e&&null!==e)switch(e.$$typeof){case S:r=10;break e;case j:r=9;break e;case D:r=11;break e;case I:r=14;break e;case N:r=16,a=null;break e}throw Error(i(130,null==e?e:typeof e,""))}return(t=Im(r,n,t,s)).elementType=e,t.type=a,t.lanes=o,t}function Om(e,t,n,a){return(e=Im(7,e,a,t)).lanes=n,e}function Lm(e,t,n,a){return(e=Im(22,e,a,t)).elementType=P,e.lanes=n,e.stateNode={isHidden:!1},e}function Mm(e,t,n){return(e=Im(6,e,null,t)).lanes=n,e}function Fm(e,t,n){return(t=Im(4,null!==e.children?e.children:[],e.key,t)).lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Wm(e,t,n,a,s){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=ft(0),this.expirationTimes=ft(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ft(0),this.identifierPrefix=a,this.onRecoverableError=s,this.mutableSourceEagerHydrationData=null}function qm(e,t,n,a,s,i,o,r,l){return e=new Wm(e,t,n,r,l),1===t?(t=1,!0===i&&(t|=8)):t=0,i=Im(3,null,null,t),e.current=i,i.stateNode=e,i.memoizedState={element:a,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Ii(i),e}function zm(e,t,n){var a=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:w,key:null==a?null:""+a,children:e,containerInfo:t,implementation:n}}function Bm(e){if(!e)return js;e:{if(Be(e=e._reactInternals)!==e||1!==e.tag)throw Error(i(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(Ns(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(null!==t);throw Error(i(171))}if(1===e.tag){var n=e.type;if(Ns(n))return Os(e,n,t)}return t}function Um(e,t,n,a,s,i,o,r,l){return(e=qm(n,a,!0,e,0,i,0,r,l)).context=Bm(null),n=e.current,(i=Pi(a=em(),s=tm(n))).callback=void 0!==t&&null!==t?t:null,Ri(n,i,s),e.current.lanes=s,yt(e,s,a),am(e,a),e}function Hm(e,t,n,a){var s=t.current,i=em(),o=tm(s);return n=Bm(n),null===t.context?t.context=n:t.pendingContext=n,(t=Pi(i,o)).payload={element:e},null!==(a=void 0===a?null:a)&&(t.callback=a),null!==(e=Ri(s,t,o))&&(nm(e,s,o,i),Oi(e,s,o)),o}function Gm(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function Vm(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var n=e.retryLane;e.retryLane=0!==n&&n<t?n:t}}function Km(e,t){Vm(e,t),(e=e.alternate)&&Vm(e,t)}xl=function(e,t,n){if(null!==e)if(e.memoizedProps!==t.pendingProps||As.current)kr=!0;else{if(0===(e.lanes&n)&&0===(128&t.flags))return kr=!1,function(e,t,n){switch(t.tag){case 3:Er(t),di();break;case 5:io(t);break;case 1:Ns(t.type)&&Ls(t);break;case 4:ao(t,t.stateNode.containerInfo);break;case 10:var a=t.type._context,s=t.memoizedProps.value;Ss(yi,a._currentValue),a._currentValue=s;break;case 13:if(null!==(a=t.memoizedState))return null!==a.dehydrated?(Ss(ro,1&ro.current),t.flags|=128,null):0!==(n&t.child.childLanes)?Mr(e,t,n):(Ss(ro,1&ro.current),null!==(e=Hr(e,t,n))?e.sibling:null);Ss(ro,1&ro.current);break;case 19:if(a=0!==(n&t.childLanes),0!==(128&e.flags)){if(a)return Br(e,t,n);t.flags|=128}if(null!==(s=t.memoizedState)&&(s.rendering=null,s.tail=null,s.lastEffect=null),Ss(ro,ro.current),a)break;return null;case 22:case 23:return t.lanes=0,Cr(e,t,n)}return Hr(e,t,n)}(e,t,n);kr=0!==(131072&e.flags)}else kr=!1,si&&0!==(1048576&t.flags)&&Zs(t,Vs,t.index);switch(t.lanes=0,t.tag){case 2:var a=t.type;Ur(e,t),e=t.pendingProps;var s=Is(t,Ds.current);Ti(t,n),s=To(null,t,a,e,s,n);var o=Co();return t.flags|=1,"object"===typeof s&&null!==s&&"function"===typeof s.render&&void 0===s.$$typeof?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Ns(a)?(o=!0,Ls(t)):o=!1,t.memoizedState=null!==s.state&&void 0!==s.state?s.state:null,Ii(t),s.updater=zi,t.stateNode=s,s._reactInternals=t,Gi(t,a,e,n),t=Ar(null,t,a,!0,o,n)):(t.tag=0,si&&o&&ei(t),br(null,t,s,n),t=t.child),t;case 16:a=t.elementType;e:{switch(Ur(e,t),e=t.pendingProps,a=(s=a._init)(a._payload),t.type=a,s=t.tag=function(e){if("function"===typeof e)return Nm(e)?1:0;if(void 0!==e&&null!==e){if((e=e.$$typeof)===D)return 11;if(e===I)return 14}return 2}(a),e=fi(a,e),s){case 0:t=jr(null,t,a,e,n);break e;case 1:t=Dr(null,t,a,e,n);break e;case 11:t=wr(null,t,a,e,n);break e;case 14:t=xr(null,t,a,fi(a.type,e),n);break e}throw Error(i(306,a,""))}return t;case 0:return a=t.type,s=t.pendingProps,jr(e,t,a,s=t.elementType===a?s:fi(a,s),n);case 1:return a=t.type,s=t.pendingProps,Dr(e,t,a,s=t.elementType===a?s:fi(a,s),n);case 3:e:{if(Er(t),null===e)throw Error(i(387));a=t.pendingProps,s=(o=t.memoizedState).element,Ni(e,t),Mi(t,a,null,n);var r=t.memoizedState;if(a=r.element,o.isDehydrated){if(o={element:a,isDehydrated:!1,cache:r.cache,pendingSuspenseBoundaries:r.pendingSuspenseBoundaries,transitions:r.transitions},t.updateQueue.baseState=o,t.memoizedState=o,256&t.flags){t=Ir(e,t,a,n,s=cr(Error(i(423)),t));break e}if(a!==s){t=Ir(e,t,a,n,s=cr(Error(i(424)),t));break e}for(ai=ms(t.stateNode.containerInfo.firstChild),ni=t,si=!0,ii=null,n=Qi(t,null,a,n),t.child=n;n;)n.flags=-3&n.flags|4096,n=n.sibling}else{if(di(),a===s){t=Hr(e,t,n);break e}br(e,t,a,n)}t=t.child}return t;case 5:return io(t),null===e&&mi(t),a=t.type,s=t.pendingProps,o=null!==e?e.memoizedProps:null,r=s.children,ns(a,s)?r=null:null!==o&&ns(a,o)&&(t.flags|=32),Sr(e,t),br(e,t,r,n),t.child;case 6:return null===e&&mi(t),null;case 13:return Mr(e,t,n);case 4:return ao(t,t.stateNode.containerInfo),a=t.pendingProps,null===e?t.child=Xi(t,null,a,n):br(e,t,a,n),t.child;case 11:return a=t.type,s=t.pendingProps,wr(e,t,a,s=t.elementType===a?s:fi(a,s),n);case 7:return br(e,t,t.pendingProps,n),t.child;case 8:case 12:return br(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(a=t.type._context,s=t.pendingProps,o=t.memoizedProps,r=s.value,Ss(yi,a._currentValue),a._currentValue=r,null!==o)if(ra(o.value,r)){if(o.children===s.children&&!As.current){t=Hr(e,t,n);break e}}else for(null!==(o=t.child)&&(o.return=t);null!==o;){var l=o.dependencies;if(null!==l){r=o.child;for(var m=l.firstContext;null!==m;){if(m.context===a){if(1===o.tag){(m=Pi(-1,n&-n)).tag=2;var c=o.updateQueue;if(null!==c){var u=(c=c.shared).pending;null===u?m.next=m:(m.next=u.next,u.next=m),c.pending=m}}o.lanes|=n,null!==(m=o.alternate)&&(m.lanes|=n),xi(o.return,n,t),l.lanes|=n;break}m=m.next}}else if(10===o.tag)r=o.type===t.type?null:o.child;else if(18===o.tag){if(null===(r=o.return))throw Error(i(341));r.lanes|=n,null!==(l=r.alternate)&&(l.lanes|=n),xi(r,n,t),r=o.sibling}else r=o.child;if(null!==r)r.return=o;else for(r=o;null!==r;){if(r===t){r=null;break}if(null!==(o=r.sibling)){o.return=r.return,r=o;break}r=r.return}o=r}br(e,t,s.children,n),t=t.child}return t;case 9:return s=t.type,a=t.pendingProps.children,Ti(t,n),a=a(s=Ci(s)),t.flags|=1,br(e,t,a,n),t.child;case 14:return s=fi(a=t.type,t.pendingProps),xr(e,t,a,s=fi(a.type,s),n);case 15:return Tr(e,t,t.type,t.pendingProps,n);case 17:return a=t.type,s=t.pendingProps,s=t.elementType===a?s:fi(a,s),Ur(e,t),t.tag=1,Ns(a)?(e=!0,Ls(t)):e=!1,Ti(t,n),Ui(t,a,s),Gi(t,a,s,n),Ar(null,t,a,!0,e,n);case 19:return Br(e,t,n);case 22:return Cr(e,t,n)}throw Error(i(156,t.tag))};var $m="function"===typeof reportError?reportError:function(e){console.error(e)};function Ym(e){this._internalRoot=e}function Xm(e){this._internalRoot=e}function Qm(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType)}function Jm(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function Zm(){}function ec(e,t,n,a,s){var i=n._reactRootContainer;if(i){var o=i;if("function"===typeof s){var r=s;s=function(){var e=Gm(o);r.call(e)}}Hm(t,o,e,s)}else o=function(e,t,n,a,s){if(s){if("function"===typeof a){var i=a;a=function(){var e=Gm(o);i.call(e)}}var o=Um(t,a,e,0,null,!1,0,"",Zm);return e._reactRootContainer=o,e[hs]=o.current,Ba(8===e.nodeType?e.parentNode:e),cm(),o}for(;s=e.lastChild;)e.removeChild(s);if("function"===typeof a){var r=a;a=function(){var e=Gm(l);r.call(e)}}var l=qm(e,0,!1,null,0,!1,0,"",Zm);return e._reactRootContainer=l,e[hs]=l.current,Ba(8===e.nodeType?e.parentNode:e),cm((function(){Hm(t,l,n,a)})),l}(n,t,e,s,a);return Gm(o)}Xm.prototype.render=Ym.prototype.render=function(e){var t=this._internalRoot;if(null===t)throw Error(i(409));Hm(e,t,null,null)},Xm.prototype.unmount=Ym.prototype.unmount=function(){var e=this._internalRoot;if(null!==e){this._internalRoot=null;var t=e.containerInfo;cm((function(){Hm(null,e,null,null)})),t[hs]=null}},Xm.prototype.unstable_scheduleHydration=function(e){if(e){var t=Tt();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Pt.length&&0!==t&&t<Pt[n].priority;n++);Pt.splice(n,0,e),0===n&&Mt(e)}},bt=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=ut(t.pendingLanes);0!==n&&(vt(t,1|n),am(t,Qe()),0===(6&Dl)&&(Bl=Qe()+500,Bs()))}break;case 13:cm((function(){var t=Ai(e,1);if(null!==t){var n=em();nm(t,e,1,n)}})),Km(e,1)}},wt=function(e){if(13===e.tag){var t=Ai(e,134217728);if(null!==t)nm(t,e,134217728,em());Km(e,134217728)}},xt=function(e){if(13===e.tag){var t=tm(e),n=Ai(e,t);if(null!==n)nm(n,e,t,em());Km(e,t)}},Tt=function(){return _t},Ct=function(e,t){var n=_t;try{return _t=e,t()}finally{_t=n}},we=function(e,t,n){switch(t){case"input":if(J(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 s=bs(a);if(!s)throw Error(i(90));K(a),J(a,s)}}}break;case"textarea":ie(e,n);break;case"select":null!=(t=n.value)&&ne(e,!!n.multiple,t,!1)}},De=mm,Ae=cm;var tc={usingClientEntryPoint:!1,Events:[_s,ks,bs,Se,je,mm]},nc={findFiberByHostInstance:vs,bundleType:0,version:"18.2.0",rendererPackageName:"react-dom"},ac={bundleType:nc.bundleType,version:nc.version,rendererPackageName:nc.rendererPackageName,rendererConfig:nc.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:k.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return null===(e=Ge(e))?null:e.stateNode},findFiberByHostInstance:nc.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 sc=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!sc.isDisabled&&sc.supportsFiber)try{st=sc.inject(ac),it=sc}catch(ce){}}t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=tc,t.createPortal=function(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!Qm(t))throw Error(i(200));return zm(e,t,null,n)},t.createRoot=function(e,t){if(!Qm(e))throw Error(i(299));var n=!1,a="",s=$m;return null!==t&&void 0!==t&&(!0===t.unstable_strictMode&&(n=!0),void 0!==t.identifierPrefix&&(a=t.identifierPrefix),void 0!==t.onRecoverableError&&(s=t.onRecoverableError)),t=qm(e,1,!1,null,0,n,0,a,s),e[hs]=t.current,Ba(8===e.nodeType?e.parentNode:e),new Ym(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(i(188));throw e=Object.keys(e).join(","),Error(i(268,e))}return e=null===(e=Ge(t))?null:e.stateNode},t.flushSync=function(e){return cm(e)},t.hydrate=function(e,t,n){if(!Jm(t))throw Error(i(200));return ec(null,e,t,!0,n)},t.hydrateRoot=function(e,t,n){if(!Qm(e))throw Error(i(405));var a=null!=n&&n.hydratedSources||null,s=!1,o="",r=$m;if(null!==n&&void 0!==n&&(!0===n.unstable_strictMode&&(s=!0),void 0!==n.identifierPrefix&&(o=n.identifierPrefix),void 0!==n.onRecoverableError&&(r=n.onRecoverableError)),t=Um(t,null,e,1,null!=n?n:null,s,0,o,r),e[hs]=t.current,Ba(e),a)for(e=0;e<a.length;e++)s=(s=(n=a[e])._getVersion)(n._source),null==t.mutableSourceEagerHydrationData?t.mutableSourceEagerHydrationData=[n,s]:t.mutableSourceEagerHydrationData.push(n,s);return new Xm(t)},t.render=function(e,t,n){if(!Jm(t))throw Error(i(200));return ec(null,e,t,!1,n)},t.unmountComponentAtNode=function(e){if(!Jm(e))throw Error(i(40));return!!e._reactRootContainer&&(cm((function(){ec(null,null,e,!1,(function(){e._reactRootContainer=null,e[hs]=null}))})),!0)},t.unstable_batchedUpdates=mm,t.unstable_renderSubtreeIntoContainer=function(e,t,n,a){if(!Jm(n))throw Error(i(200));if(null==e||void 0===e._reactInternals)throw Error(i(38));return ec(e,t,n,!1,a)},t.version="18.2.0-next-9e3b772b8-20220608"},250:(e,t,n)=>{var a=n(164);t.s=a.createRoot,a.hydrateRoot},164:(e,t,n)=>{!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)=>{var a=n(791),s=Symbol.for("react.element"),i=Symbol.for("react.fragment"),o=Object.prototype.hasOwnProperty,r=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,l={key:!0,ref:!0,__self:!0,__source:!0};function m(e,t,n){var a,i={},m=null,c=null;for(a in void 0!==n&&(m=""+n),void 0!==t.key&&(m=""+t.key),void 0!==t.ref&&(c=t.ref),t)o.call(t,a)&&!l.hasOwnProperty(a)&&(i[a]=t[a]);if(e&&e.defaultProps)for(a in t=e.defaultProps)void 0===i[a]&&(i[a]=t[a]);return{$$typeof:s,type:e,key:m,ref:c,props:i,_owner:r.current}}t.Fragment=i,t.jsx=m,t.jsxs=m},117:(e,t)=>{var n=Symbol.for("react.element"),a=Symbol.for("react.portal"),s=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),r=Symbol.for("react.provider"),l=Symbol.for("react.context"),m=Symbol.for("react.forward_ref"),c=Symbol.for("react.suspense"),u=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),d=Symbol.iterator;var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,f={};function y(e,t,n){this.props=e,this.context=t,this.refs=f,this.updater=n||h}function v(){}function _(e,t,n){this.props=e,this.context=t,this.refs=f,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 k=_.prototype=new v;k.constructor=_,g(k,y.prototype),k.isPureReactComponent=!0;var b=Array.isArray,w=Object.prototype.hasOwnProperty,x={current:null},T={key:!0,ref:!0,__self:!0,__source:!0};function C(e,t,a){var s,i={},o=null,r=null;if(null!=t)for(s in void 0!==t.ref&&(r=t.ref),void 0!==t.key&&(o=""+t.key),t)w.call(t,s)&&!T.hasOwnProperty(s)&&(i[s]=t[s]);var l=arguments.length-2;if(1===l)i.children=a;else if(1<l){for(var m=Array(l),c=0;c<l;c++)m[c]=arguments[c+2];i.children=m}if(e&&e.defaultProps)for(s in l=e.defaultProps)void 0===i[s]&&(i[s]=l[s]);return{$$typeof:n,type:e,key:o,ref:r,props:i,_owner:x.current}}function S(e){return"object"===typeof e&&null!==e&&e.$$typeof===n}var j=/\/+/g;function D(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,s,i,o){var r=typeof e;"undefined"!==r&&"boolean"!==r||(e=null);var l=!1;if(null===e)l=!0;else switch(r){case"string":case"number":l=!0;break;case"object":switch(e.$$typeof){case n:case a:l=!0}}if(l)return o=o(l=e),e=""===i?"."+D(l,0):i,b(o)?(s="",null!=e&&(s=e.replace(j,"$&/")+"/"),A(o,t,s,"",(function(e){return e}))):null!=o&&(S(o)&&(o=function(e,t){return{$$typeof:n,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(o,s+(!o.key||l&&l.key===o.key?"":(""+o.key).replace(j,"$&/")+"/")+e)),t.push(o)),1;if(l=0,i=""===i?".":i+":",b(e))for(var m=0;m<e.length;m++){var c=i+D(r=e[m],m);l+=A(r,t,s,c,o)}else if(c=function(e){return null===e||"object"!==typeof e?null:"function"===typeof(e=d&&e[d]||e["@@iterator"])?e:null}(e),"function"===typeof c)for(e=c.call(e),m=0;!(r=e.next()).done;)l+=A(r=r.value,t,s,c=i+D(r,m++),o);else if("object"===r)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 E(e,t,n){if(null==e)return e;var a=[],s=0;return A(e,a,"","",(function(e){return t.call(n,e,s++)})),a}function I(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 N={current:null},P={transition:null},R={ReactCurrentDispatcher:N,ReactCurrentBatchConfig:P,ReactCurrentOwner:x};t.Children={map:E,forEach:function(e,t,n){E(e,(function(){t.apply(this,arguments)}),n)},count:function(e){var t=0;return E(e,(function(){t++})),t},toArray:function(e){return E(e,(function(e){return e}))||[]},only:function(e){if(!S(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},t.Component=y,t.Fragment=s,t.Profiler=o,t.PureComponent=_,t.StrictMode=i,t.Suspense=c,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=R,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 s=g({},e.props),i=e.key,o=e.ref,r=e._owner;if(null!=t){if(void 0!==t.ref&&(o=t.ref,r=x.current),void 0!==t.key&&(i=""+t.key),e.type&&e.type.defaultProps)var l=e.type.defaultProps;for(m in t)w.call(t,m)&&!T.hasOwnProperty(m)&&(s[m]=void 0===t[m]&&void 0!==l?l[m]:t[m])}var m=arguments.length-2;if(1===m)s.children=a;else if(1<m){l=Array(m);for(var c=0;c<m;c++)l[c]=arguments[c+2];s.children=l}return{$$typeof:n,type:e.type,key:i,ref:o,props:s,_owner:r}},t.createContext=function(e){return(e={$$typeof:l,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null}).Provider={$$typeof:r,_context:e},e.Consumer=e},t.createElement=C,t.createFactory=function(e){var t=C.bind(null,e);return t.type=e,t},t.createRef=function(){return{current:null}},t.forwardRef=function(e){return{$$typeof:m,render:e}},t.isValidElement=S,t.lazy=function(e){return{$$typeof:p,_payload:{_status:-1,_result:e},_init:I}},t.memo=function(e,t){return{$$typeof:u,type:e,compare:void 0===t?null:t}},t.startTransition=function(e){var t=P.transition;P.transition={};try{e()}finally{P.transition=t}},t.unstable_act=function(){throw Error("act(...) is not supported in production builds of React.")},t.useCallback=function(e,t){return N.current.useCallback(e,t)},t.useContext=function(e){return N.current.useContext(e)},t.useDebugValue=function(){},t.useDeferredValue=function(e){return N.current.useDeferredValue(e)},t.useEffect=function(e,t){return N.current.useEffect(e,t)},t.useId=function(){return N.current.useId()},t.useImperativeHandle=function(e,t,n){return N.current.useImperativeHandle(e,t,n)},t.useInsertionEffect=function(e,t){return N.current.useInsertionEffect(e,t)},t.useLayoutEffect=function(e,t){return N.current.useLayoutEffect(e,t)},t.useMemo=function(e,t){return N.current.useMemo(e,t)},t.useReducer=function(e,t,n){return N.current.useReducer(e,t,n)},t.useRef=function(e){return N.current.useRef(e)},t.useState=function(e){return N.current.useState(e)},t.useSyncExternalStore=function(e,t,n){return N.current.useSyncExternalStore(e,t,n)},t.useTransition=function(){return N.current.useTransition()},t.version="18.2.0"},791:(e,t,n)=>{e.exports=n(117)},184:(e,t,n)=>{e.exports=n(374)},813:(e,t)=>{function n(e,t){var n=e.length;e.push(t);e:for(;0<n;){var a=n-1>>>1,s=e[a];if(!(0<i(s,t)))break e;e[a]=t,e[n]=s,n=a}}function a(e){return 0===e.length?null:e[0]}function s(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,s=e.length,o=s>>>1;a<o;){var r=2*(a+1)-1,l=e[r],m=r+1,c=e[m];if(0>i(l,n))m<s&&0>i(c,l)?(e[a]=c,e[m]=n,a=m):(e[a]=l,e[r]=n,a=r);else{if(!(m<s&&0>i(c,n)))break e;e[a]=c,e[m]=n,a=m}}}return t}function i(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 o=performance;t.unstable_now=function(){return o.now()}}else{var r=Date,l=r.now();t.unstable_now=function(){return r.now()-l}}var m=[],c=[],u=1,p=null,d=3,h=!1,g=!1,f=!1,y="function"===typeof setTimeout?setTimeout:null,v="function"===typeof clearTimeout?clearTimeout:null,_="undefined"!==typeof setImmediate?setImmediate:null;function k(e){for(var t=a(c);null!==t;){if(null===t.callback)s(c);else{if(!(t.startTime<=e))break;s(c),t.sortIndex=t.expirationTime,n(m,t)}t=a(c)}}function b(e){if(f=!1,k(e),!g)if(null!==a(m))g=!0,P(w);else{var t=a(c);null!==t&&R(b,t.startTime-e)}}function w(e,n){g=!1,f&&(f=!1,v(S),S=-1),h=!0;var i=d;try{for(k(n),p=a(m);null!==p&&(!(p.expirationTime>n)||e&&!A());){var o=p.callback;if("function"===typeof o){p.callback=null,d=p.priorityLevel;var r=o(p.expirationTime<=n);n=t.unstable_now(),"function"===typeof r?p.callback=r:p===a(m)&&s(m),k(n)}else s(m);p=a(m)}if(null!==p)var l=!0;else{var u=a(c);null!==u&&R(b,u.startTime-n),l=!1}return l}finally{p=null,d=i,h=!1}}"undefined"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var x,T=!1,C=null,S=-1,j=5,D=-1;function A(){return!(t.unstable_now()-D<j)}function E(){if(null!==C){var e=t.unstable_now();D=e;var n=!0;try{n=C(!0,e)}finally{n?x():(T=!1,C=null)}}else T=!1}if("function"===typeof _)x=function(){_(E)};else if("undefined"!==typeof MessageChannel){var I=new MessageChannel,N=I.port2;I.port1.onmessage=E,x=function(){N.postMessage(null)}}else x=function(){y(E,0)};function P(e){C=e,T||(T=!0,x())}function R(e,n){S=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(){g||h||(g=!0,P(w))},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"):j=0<e?Math.floor(1e3/e):5},t.unstable_getCurrentPriorityLevel=function(){return d},t.unstable_getFirstCallbackNode=function(){return a(m)},t.unstable_next=function(e){switch(d){case 1:case 2:case 3:var t=3;break;default:t=d}var n=d;d=t;try{return e()}finally{d=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=d;d=e;try{return t()}finally{d=n}},t.unstable_scheduleCallback=function(e,s,i){var o=t.unstable_now();switch("object"===typeof i&&null!==i?i="number"===typeof(i=i.delay)&&0<i?o+i:o:i=o,e){case 1:var r=-1;break;case 2:r=250;break;case 5:r=1073741823;break;case 4:r=1e4;break;default:r=5e3}return e={id:u++,callback:s,priorityLevel:e,startTime:i,expirationTime:r=i+r,sortIndex:-1},i>o?(e.sortIndex=i,n(c,e),null===a(m)&&e===a(c)&&(f?(v(S),S=-1):f=!0,R(b,i-o))):(e.sortIndex=r,n(m,e),g||h||(g=!0,P(w))),e},t.unstable_shouldYield=A,t.unstable_wrapCallback=function(e){var t=d;return function(){var n=d;d=t;try{return e.apply(this,arguments)}finally{d=n}}}},296:(e,t,n)=>{e.exports=n(813)}},t={};function n(a){var s=t[a];if(void 0!==s)return s.exports;var i=t[a]={exports:{}};return e[a](i,i.exports,n),i.exports}(()=>{var e,t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__;n.t=function(a,s){if(1&s&&(a=this(a)),8&s)return a;if("object"===typeof a&&a){if(4&s&&a.__esModule)return a;if(16&s&&"function"===typeof a.then)return a}var i=Object.create(null);n.r(i);var o={};e=e||[null,t({}),t([]),t(t)];for(var r=2&s&&a;"object"==typeof r&&!~e.indexOf(r);r=t(r))Object.getOwnPropertyNames(r).forEach((e=>o[e]=()=>a[e]));return o.default=()=>a,n.d(i,o),i}})(),n.d=(e,t)=>{for(var a in t)n.o(t,a)&&!n.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},n.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e,t=n(791),a=n.t(t,2),s=n(250);function i(){return i=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},i.apply(this,arguments)}!function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"}(e||(e={}));const o="popstate";function r(e,t){if(!1===e||null===e||"undefined"===typeof e)throw new Error(t)}function l(e,t){if(!e){"undefined"!==typeof console&&console.warn(t);try{throw new Error(t)}catch(n){}}}function m(e,t){return{usr:e.state,key:e.key,idx:t}}function c(e,t,n,a){return void 0===n&&(n=null),i({pathname:"string"===typeof e?e:e.pathname,search:"",hash:""},"string"===typeof t?p(t):t,{state:n,key:t&&t.key||a||Math.random().toString(36).substr(2,8)})}function u(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 p(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 d(t,n,a,s){void 0===s&&(s={});let{window:l=document.defaultView,v5Compat:p=!1}=s,d=l.history,h=e.Pop,g=null,f=y();function y(){return(d.state||{idx:null}).idx}function v(){h=e.Pop;let t=y(),n=null==t?null:t-f;f=t,g&&g({action:h,location:k.location,delta:n})}function _(e){let t="null"!==l.location.origin?l.location.origin:l.location.href,n="string"===typeof e?e:u(e);return r(t,"No window.location.(origin|href) available to create URL for href: "+n),new URL(n,t)}null==f&&(f=0,d.replaceState(i({},d.state,{idx:f}),""));let k={get action(){return h},get location(){return t(l,d)},listen(e){if(g)throw new Error("A history only accepts one active listener");return l.addEventListener(o,v),g=e,()=>{l.removeEventListener(o,v),g=null}},createHref:e=>n(l,e),createURL:_,encodeLocation(e){let t=_(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:function(t,n){h=e.Push;let s=c(k.location,t,n);a&&a(s,t),f=y()+1;let i=m(s,f),o=k.createHref(s);try{d.pushState(i,"",o)}catch(r){l.location.assign(o)}p&&g&&g({action:h,location:k.location,delta:1})},replace:function(t,n){h=e.Replace;let s=c(k.location,t,n);a&&a(s,t),f=y();let i=m(s,f),o=k.createHref(s);d.replaceState(i,"",o),p&&g&&g({action:h,location:k.location,delta:0})},go:e=>d.go(e)};return k}var h;function g(e,t,n){void 0===n&&(n="/");let a=T(("string"===typeof t?p(t):t).pathname||"/",n);if(null==a)return null;let s=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)))))}(s);let i=null;for(let o=0;null==i&&o<s.length;++o)i=b(s[o],x(a));return i}function f(e,t,n,a){void 0===t&&(t=[]),void 0===n&&(n=[]),void 0===a&&(a="");let s=(e,s,i)=>{let o={relativePath:void 0===i?e.path||"":i,caseSensitive:!0===e.caseSensitive,childrenIndex:s,route:e};o.relativePath.startsWith("/")&&(r(o.relativePath.startsWith(a),'Absolute route path "'+o.relativePath+'" nested under path "'+a+'" is not valid. An absolute child route path must start with the combined path of all its parent routes.'),o.relativePath=o.relativePath.slice(a.length));let l=A([a,o.relativePath]),m=n.concat(o);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,m,l)),(null!=e.path||e.index)&&t.push({path:l,score:k(l,e.index),routesMeta:m})};return e.forEach(((e,t)=>{var n;if(""!==e.path&&null!=(n=e.path)&&n.includes("?"))for(let a of y(e.path))s(e,t,a);else s(e,t)})),t}function y(e){let t=e.split("/");if(0===t.length)return[];let[n,...a]=t,s=n.endsWith("?"),i=n.replace(/\?$/,"");if(0===a.length)return s?[i,""]:[i];let o=y(a.join("/")),r=[];return r.push(...o.map((e=>""===e?i:[i,e].join("/")))),s&&r.push(...o),r.map((t=>e.startsWith("/")&&""===t?"/":t))}!function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"}(h||(h={}));const v=/^:\w+$/,_=e=>"*"===e;function k(e,t){let n=e.split("/"),a=n.length;return n.some(_)&&(a+=-2),t&&(a+=2),n.filter((e=>!_(e))).reduce(((e,t)=>e+(v.test(t)?3:""===t?1:10)),a)}function b(e,t){let{routesMeta:n}=e,a={},s="/",i=[];for(let o=0;o<n.length;++o){let e=n[o],r=o===n.length-1,l="/"===s?t:t.slice(s.length)||"/",m=w({path:e.relativePath,caseSensitive:e.caseSensitive,end:r},l);if(!m)return null;Object.assign(a,m.params);let c=e.route;i.push({params:a,pathname:A([s,m.pathname]),pathnameBase:E(A([s,m.pathnameBase])),route:c}),"/"!==m.pathnameBase&&(s=A([s,m.pathnameBase]))}return i}function w(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);C("*"===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=[],s="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^$?{}|()[\]]/g,"\\$&").replace(/\/:(\w+)/g,((e,t)=>(a.push(t),"/([^\\/]+)")));e.endsWith("*")?(a.push("*"),s+="*"===e||"/*"===e?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?s+="\\/*$":""!==e&&"/"!==e&&(s+="(?:(?=\\/|$))");let i=new RegExp(s,t?void 0:"i");return[i,a]}(e.path,e.caseSensitive,e.end),s=t.match(n);if(!s)return null;let i=s[0],o=i.replace(/(.)\/+$/,"$1"),r=s.slice(1);return{params:a.reduce(((e,t,n)=>{if("*"===t){let e=r[n]||"";o=i.slice(0,i.length-e.length).replace(/(.)\/+$/,"$1")}return e[t]=function(e,t){try{return decodeURIComponent(e)}catch(n){return C(!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}}(r[n]||"",t),e}),{}),pathname:i,pathnameBase:o,pattern:e}}function x(e){try{return decodeURI(e)}catch(t){return C(!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 T(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 C(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 j(e){return e.filter(((e,t)=>0===t||e.route.path&&e.route.path.length>0))}function D(e,t,n,a){let s;void 0===a&&(a=!1),"string"===typeof e?s=p(e):(s=i({},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 o,l=""===e||""===s.pathname,m=l?"/":s.pathname;if(a||null==m)o=n;else{let e=t.length-1;if(m.startsWith("..")){let t=m.split("/");for(;".."===t[0];)t.shift(),e-=1;s.pathname=t.join("/")}o=e>=0?t[e]:"/"}let c=function(e,t){void 0===t&&(t="/");let{pathname:n,search:a="",hash:s=""}="string"===typeof e?p(e):e,i=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:i,search:I(a),hash:N(s)}}(s,o),u=m&&"/"!==m&&m.endsWith("/"),d=(l||"."===m)&&n.endsWith("/");return c.pathname.endsWith("/")||!u&&!d||(c.pathname+="/"),c}const A=e=>e.join("/").replace(/\/\/+/g,"/"),E=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),I=e=>e&&"?"!==e?e.startsWith("?")?e:"?"+e:"",N=e=>e&&"#"!==e?e.startsWith("#")?e:"#"+e:"";class P extends Error{}function R(e){return null!=e&&"number"===typeof e.status&&"string"===typeof e.statusText&&"boolean"===typeof e.internal&&"data"in e}const O=["post","put","patch","delete"],L=(new Set(O),["get",...O]);new Set(L),new Set([301,302,303,307,308]),new Set([307,308]),"undefined"!==typeof window&&"undefined"!==typeof window.document&&window.document.createElement;Symbol("deferred");function M(){return M=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},M.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:W,useEffect:q,useLayoutEffect:z,useDebugValue:B}=a;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,a.useSyncExternalStore;const H=t.createContext(null);const G=t.createContext(null);const V=t.createContext(null);const K=t.createContext(null);const Y=t.createContext({outlet:null,matches:[]});const X=t.createContext(null);function Q(){return null!=t.useContext(K)}function J(){return Q()||r(!1),t.useContext(K).location}function Z(){Q()||r(!1);let{basename:e,navigator:n}=t.useContext(V),{matches:a}=t.useContext(Y),{pathname:s}=J(),i=JSON.stringify(j(a).map((e=>e.pathnameBase))),o=t.useRef(!1);return t.useEffect((()=>{o.current=!0})),t.useCallback((function(t,a){if(void 0===a&&(a={}),!o.current)return;if("number"===typeof t)return void n.go(t);let r=D(t,JSON.parse(i),s,"path"===a.relative);"/"!==e&&(r.pathname="/"===r.pathname?e:A([e,r.pathname])),(a.replace?n.replace:n.push)(r,a.state,a)}),[e,n,i,s])}function ee(){let{matches:e}=t.useContext(Y),n=e[e.length-1];return n?n.params:{}}function te(e,n){let{relative:a}=void 0===n?{}:n,{matches:s}=t.useContext(Y),{pathname:i}=J(),o=JSON.stringify(j(s).map((e=>e.pathnameBase)));return t.useMemo((()=>D(e,JSON.parse(o),i,"path"===a)),[e,o,i,a])}function ne(){let e=function(){var e;let n=t.useContext(X),a=le(re.UseRouteError),s=me(re.UseRouteError);if(n)return n;return null==(e=a.errors)?void 0:e[s]}(),n=R(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),a=e instanceof Error?e.stack:null,s="rgba(200,200,200, 0.5)",i={padding:"0.5rem",backgroundColor:s};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:i},a):null,null)}class ae 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(Y.Provider,{value:this.props.routeContext},t.createElement(X.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function se(e){let{routeContext:n,match:a,children:s}=e,i=t.useContext(H);return i&&i.static&&i.staticContext&&a.route.errorElement&&(i.staticContext._deepestRenderedBoundaryId=a.route.id),t.createElement(Y.Provider,{value:n},s)}function ie(e,n,a){if(void 0===n&&(n=[]),null==e){if(null==a||!a.errors)return null;e=a.matches}let s=e,i=null==a?void 0:a.errors;if(null!=i){let e=s.findIndex((e=>e.route.id&&(null==i?void 0:i[e.route.id])));e>=0||r(!1),s=s.slice(0,Math.min(s.length,e+1))}return s.reduceRight(((e,o,r)=>{let l=o.route.id?null==i?void 0:i[o.route.id]:null,m=a?o.route.errorElement||t.createElement(ne,null):null,c=n.concat(s.slice(0,r+1)),u=()=>t.createElement(se,{match:o,routeContext:{outlet:e,matches:c}},l?m:void 0!==o.route.element?o.route.element:e);return a&&(o.route.errorElement||0===r)?t.createElement(ae,{location:a.location,component:m,error:l,children:u(),routeContext:{outlet:null,matches:c}}):u()}),null)}var oe,re;function le(e){let n=t.useContext(G);return n||r(!1),n}function me(e){let n=function(e){let n=t.useContext(Y);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"}(oe||(oe={})),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 ue(n){let{basename:a="/",children:s=null,location:i,navigationType:o=e.Pop,navigator:l,static:m=!1}=n;Q()&&r(!1);let c=a.replace(/^\/*/,"/"),u=t.useMemo((()=>({basename:c,navigator:l,static:m})),[c,l,m]);"string"===typeof i&&(i=p(i));let{pathname:d="/",search:h="",hash:g="",state:f=null,key:y="default"}=i,v=t.useMemo((()=>{let e=T(d,c);return null==e?null:{pathname:e,search:h,hash:g,state:f,key:y}}),[c,d,h,g,f,y]);return null==v?null:t.createElement(V.Provider,{value:u},t.createElement(K.Provider,{children:s,value:{location:v,navigationType:o}}))}function pe(n){let{children:a,location:s}=n,i=t.useContext(H);return function(n,a){Q()||r(!1);let{navigator:s}=t.useContext(V),i=t.useContext(G),{matches:o}=t.useContext(Y),l=o[o.length-1],m=l?l.params:{},c=(l&&l.pathname,l?l.pathnameBase:"/");l&&l.route;let u,d=J();if(a){var h;let e="string"===typeof a?p(a):a;"/"===c||(null==(h=e.pathname)?void 0:h.startsWith(c))||r(!1),u=e}else u=d;let f=u.pathname||"/",y=g(n,{pathname:"/"===c?f:f.slice(c.length)||"/"}),v=ie(y&&y.map((e=>Object.assign({},e,{params:Object.assign({},m,e.params),pathname:A([c,s.encodeLocation?s.encodeLocation(e.pathname).pathname:e.pathname]),pathnameBase:"/"===e.pathnameBase?c:A([c,s.encodeLocation?s.encodeLocation(e.pathnameBase).pathname:e.pathnameBase])}))),o,i||void 0);return a&&v?t.createElement(K.Provider,{value:{location:M({pathname:"/",search:"",hash:"",state:null,key:"default"},u),navigationType:e.Pop}},v):v}(i&&!a?i.router.routes:ge(a),s)}var de;!function(e){e[e.pending=0]="pending",e[e.success=1]="success",e[e.error=2]="error"}(de||(de={}));new Promise((()=>{}));class he 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,s=de.pending;if(n instanceof Promise)if(this.state.error){de.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?de.error:void 0!==a._data?de.success:de.pending):(de.pending,Object.defineProperty(n,"_tracked",{get:()=>!0}),n.then((e=>Object.defineProperty(n,"_data",{get:()=>e})),(e=>Object.defineProperty(n,"_error",{get:()=>e}))));else de.success,Promise.resolve(),Object.defineProperty(a,"_tracked",{get:()=>!0}),Object.defineProperty(a,"_data",{get:()=>n});if(s===de.error&&a._error instanceof AbortedDeferredError)throw neverSettledPromise;if(s===de.error&&!t)throw a._error;if(s===de.error)return React.createElement(AwaitContext.Provider,{value:a,children:t});if(s===de.success)return React.createElement(AwaitContext.Provider,{value:a,children:e});throw a}}function ge(e,n){void 0===n&&(n=[]);let a=[];return t.Children.forEach(e,((e,s)=>{if(!t.isValidElement(e))return;if(e.type===t.Fragment)return void a.push.apply(a,ge(e.props.children,n));e.type!==ce&&r(!1),e.props.index&&e.props.children&&r(!1);let i=[...n,s],o={id:e.props.id||i.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&&(o.children=ge(e.props.children,i)),a.push(o)})),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 ye(e,t){if(null==e)return{};var n,a,s={},i=Object.keys(e);for(a=0;a<i.length;a++)n=i[a],t.indexOf(n)>=0||(s[n]=e[n]);return s}const ve=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset"];function _e(e){let{basename:n,children:a,window:s}=e,i=t.useRef();var o;null==i.current&&(i.current=(void 0===(o={window:s,v5Compat:!0})&&(o={}),d((function(e,t){let{pathname:n="/",search:a="",hash:s=""}=p(e.location.hash.substr(1));return c("",{pathname:n,search:a,hash:s},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:u(t))}),(function(e,t){l("/"===e.pathname.charAt(0),"relative pathnames are not supported in hash history.push("+JSON.stringify(t)+")")}),o)));let r=i.current,[m,h]=t.useState({action:r.action,location:r.location});return t.useLayoutEffect((()=>r.listen(h)),[r]),t.createElement(ue,{basename:n,children:a,location:m.location,navigationType:m.action,navigator:r})}const ke="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement,be=t.forwardRef((function(e,n){let{onClick:a,relative:s,reloadDocument:i,replace:o,state:l,target:m,to:c,preventScrollReset:p}=e,d=ye(e,ve),h="string"===typeof c?c:u(c),g=/^[a-z+]+:\/\//i.test(h)||h.startsWith("//"),f=h,y=!1;if(ke&&g){let e=new URL(window.location.href),t=h.startsWith("//")?new URL(e.protocol+h):new URL(h);t.origin===e.origin?f=t.pathname+t.search+t.hash:y=!0}let v=function(e,n){let{relative:a}=void 0===n?{}:n;Q()||r(!1);let{basename:s,navigator:i}=t.useContext(V),{hash:o,pathname:l,search:m}=te(e,{relative:a}),c=l;return"/"!==s&&(c="/"===l?s:A([s,l])),i.createHref({pathname:c,search:m,hash:o})}(f,{relative:s}),_=function(e,n){let{target:a,replace:s,state:i,preventScrollReset:o,relative:r}=void 0===n?{}:n,l=Z(),m=J(),c=te(e,{relative:r});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!==s?s:u(m)===u(c);l(e,{replace:n,state:i,preventScrollReset:o,relative:r})}}),[m,l,c,s,i,a,e,o,r])}(f,{replace:o,state:l,target:m,preventScrollReset:p,relative:s});return t.createElement("a",fe({},d,{href:g?h:v,onClick:y||i?a:function(e){a&&a(e),e.defaultPrevented||_(e)},ref:n,target:m}))}));var we,xe;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmitImpl="useSubmitImpl",e.UseFetcher="useFetcher"})(we||(we={})),function(e){e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"}(xe||(xe={}));function Te(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw new TypeError("attempted to use private field on non-instance");return e}var Ce=0;function Se(e){return"__private_"+Ce+++"_"+e}var je=Se("updateTranslationByText");function De(e,t){t.split("\xa7 ").slice(1).forEach((t=>{let n=t.indexOf("\n");n===t.length-1&&(n=t.indexOf(":"));const a=t.slice(0,n),s=t.slice(n+1).trim();e.set(a,s)}))}const Ae=new class{constructor(){Object.defineProperty(this,je,{value:De}),this.language="ru",this.translations=new Map}get(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";const t=this.translations.get(this.language),n=null===t||void 0===t?void 0:t.get(e||"");for(var a=arguments.length,s=new Array(a>1?a-1:0),i=1;i<a;i++)s[i-1]=arguments[i];return n?this.insertArguments(n,s):e||""}insertArguments(e,t){if(!t)return e;return(Array.isArray(t)?t:[t]).forEach(((t,n)=>{e=e.replace("$".concat(n+1),t||"_")})),e}addTranslationsForLanguage(e,t){const n=this.translations.get(e)||new Map;Te(this,je)[je](n,t),this.translations.set(e,n)}updateLangAttribute(){try{document.body.parentNode.setAttribute("lang",this.language)}catch(e){}}updateTranslation(e,t){var n;const a=this.translations.get(this.language);null===a||void 0===a||null===(n=a.set)||void 0===n||n.call(a,e,t)}};window.localization=Ae;const Ee=Ae;function Ie(e){return Ae.get(e)}const Ne=["\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.moreChangeTimeZone.title: Aaaaa-viasales\n\xa7 achievements.moreChangeTimeZone.description: changed location more often than anyone else\n\xa7 achievements.publicitySitnik.title: Sitnik approves\n\xa7 achievements.publicitySitnik.description: the first who added the PostCSS or Browserslist config\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\xa7 common.confirm.title: Are you sure you want to remove it?\n\xa7 common.confirm.yes: Yes, I am sure.\n\xa7 common.confirm.no: Cancel\n\xa7 common.confirm.abc: abc\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.buttons.logoutQuestion: Are you sure you want to clear data-set?\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.team.recommendations: Recommendations\n\xa7 sidebar.team.building: Games\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.author.absence.title: Vacation schedule\n\xa7 page.team.author.absence.vacation: Vacation\n\xa7 page.team.author.absence.transfer: Department change\n\xa7 page.team.author.absence.from: from\n\xa7 page.team.author.absence.to: to\n\xa7 page.team.author.absence.duration: days\n\xa7 page.team.hours.title: Distribution of commits during each day of the week\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last days\n\xa7 plugin.team_month.filters.authors: All employees\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed time zone)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first work day)\n\xa7 plugin.team_month.work.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.backlogDays: The delay of the task in the backlog before the start of development\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: *Task creation date* in the task tracker is calculated by its sequential number and the minimum date of any next Issue in the code. The method has a margin of error and, as a rule, the tasks turn out to be older. Frequent releases, fast bugfixes, and a large number of employees working on the code reduce this margin of error.\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.createdBefore: Created before\n\xa7 page.team.tasks.backlog: Development waiting\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.tasks.backlogTitle: Tasks undeveloped for over four months after being added to the task-tracker\n\xa7 page.team.tasks.charts.authors.title: Who is doing these tasks?\n\xa7 page.team.tasks.charts.authors.other: , etc.\n\xa7 page.team.tasks.charts.relative.title: Count relative to other tasks\n\xa7 page.team.tasks.charts.relative.backlog: backlog\n\xa7 page.team.tasks.charts.relative.all: other tasks\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: CHANGELOG.md\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.team.department.months.title: Possible number of employees in the department\n\xa7 page.team.department.months.description: It is assumed that the task tracker issues the serial numbers of the tasks. Knowing the maximum task number at the beginning and end of the month, we can find out the number of completed tasks. Knowing how many tasks the authors we know have closed this month, we can interpolate their work speed to all new tasks and assume the total number of employees whose work was not reflected in the git log.\n\xa7 page.team.department.months.date: Date\n\xa7 page.team.department.months.tasks: New tasks\n\xa7 page.team.department.months.tasksInWeek: in week\n\xa7 page.team.department.months.fixed: was fixed\n\xa7 page.team.department.months.authors: Worked\n\xa7 page.team.department.months.allAuthors: total number of employees in the department\n\xa7 page.team.building.races.title: The speed of closing tasks\n\xa7 page.team.building.races.go: Let\'s go!\n\xa7 page.team.building.swimmingPool.title: Maximum commit message length\n\xa7 page.team.building.quiz.start: Start a quiz\n\xa7 page.team.building.quiz.next: Next question\n\xa7 page.team.building.quiz.replay: Re-play?\n\xa7 page.team.building.quiz.question01: Who made the first commit?\n\xa7 page.team.building.quiz.question02: Who closed more tasks?\n\xa7 page.team.building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 page.team.building.quiz.question04: Who has been working on the project the longest?\n\xa7 page.team.building.quiz.question05: Who worked the least on the project?\n\xa7 page.team.building.quiz.question08: Who has the longest commit signatures?\n\xa7 page.team.building.quiz.question09: Who has the shortest commit signatures?\n\xa7 page.team.building.quiz.question11: How many people have quit?\n\xa7 page.team.building.quiz.question12: How many people helped the project?\n\xa7 page.team.building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 page.team.building.quiz.question14: What type of tasks have been added more?\n\xa7 page.team.building.quiz.question15: How many days do they work on the project on average?\n\xa7 page.team.building.quiz.question16: Who created the most directories?\n\xa7 page.team.building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 page.team.building.quiz.question18: Who clicks the "Merge" button for PR more often than others?\n\xa7 page.team.building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 page.team.building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 page.team.building.quiz.begin: How well do you know the team?\n\xa7 page.team.building.quiz.result1.title: Not enough\n\xa7 page.team.building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 page.team.building.quiz.result2.title: Well\n\xa7 page.team.building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 page.team.building.quiz.result3.title: Great\n\xa7 page.team.building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n\xa7 page.team.recommendations.alert: Warning\n\xa7 page.team.recommendations.warning: Pay attention\n\xa7 page.team.recommendations.fact: Facts about the project\n\xa7 page.team.recommendations.info: General tips\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.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.publicity: Special\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/852782/], [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'].join(""),Pe=["\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.moreChangeTimeZone.title: Aaaaa-viasales\n\xa7 achievements.moreChangeTimeZone.description: changed location more often than anyone else\n\xa7 achievements.publicitySitnik.title: Sitnik approves\n\xa7 achievements.publicitySitnik.description: the first who added the PostCSS or Browserslist config\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\xa7 common.confirm.title: Are you sure you want to remove it?\n\xa7 common.confirm.yes: Yes, I am sure.\n\xa7 common.confirm.no: Cancel\n\xa7 common.confirm.abc: abc\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.buttons.logoutQuestion: Are you sure you want to clear data-set?\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.team.recommendations: Recommendations\n\xa7 sidebar.team.building: Games\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.author.absence.title: Vacation schedule\n\xa7 page.team.author.absence.vacation: Vacation\n\xa7 page.team.author.absence.transfer: Department change\n\xa7 page.team.author.absence.from: from\n\xa7 page.team.author.absence.to: to\n\xa7 page.team.author.absence.duration: days\n\xa7 page.team.hours.title: Distribution of commits during each day of the week\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last days\n\xa7 plugin.team_month.filters.authors: All employees\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed time zone)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first work day)\n\xa7 plugin.team_month.work.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.backlogDays: The delay of the task in the backlog before the start of development\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: *Task creation date* in the task tracker is calculated by its sequential number and the minimum date of any next Issue in the code. The method has a margin of error and, as a rule, the tasks turn out to be older. Frequent releases, fast bugfixes, and a large number of employees working on the code reduce this margin of error.\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.createdBefore: Created before\n\xa7 page.team.tasks.backlog: Development waiting\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.tasks.backlogTitle: Tasks undeveloped for over four months after being added to the task-tracker\n\xa7 page.team.tasks.charts.authors.title: Who is doing these tasks?\n\xa7 page.team.tasks.charts.authors.other: , etc.\n\xa7 page.team.tasks.charts.relative.title: Count relative to other tasks\n\xa7 page.team.tasks.charts.relative.backlog: backlog\n\xa7 page.team.tasks.charts.relative.all: other tasks\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: CHANGELOG.md\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.team.department.months.title: Possible number of employees in the department\n\xa7 page.team.department.months.description: It is assumed that the task tracker issues the serial numbers of the tasks. Knowing the maximum task number at the beginning and end of the month, we can find out the number of completed tasks. Knowing how many tasks the authors we know have closed this month, we can interpolate their work speed to all new tasks and assume the total number of employees whose work was not reflected in the git log.\n\xa7 page.team.department.months.date: Date\n\xa7 page.team.department.months.tasks: New tasks\n\xa7 page.team.department.months.tasksInWeek: in week\n\xa7 page.team.department.months.fixed: was fixed\n\xa7 page.team.department.months.authors: Worked\n\xa7 page.team.department.months.allAuthors: total number of employees in the department\n\xa7 page.team.building.races.title: The speed of closing tasks\n\xa7 page.team.building.races.go: Let\'s go!\n\xa7 page.team.building.swimmingPool.title: Maximum commit message length\n\xa7 page.team.building.quiz.start: Start a quiz\n\xa7 page.team.building.quiz.next: Next question\n\xa7 page.team.building.quiz.replay: Re-play?\n\xa7 page.team.building.quiz.question01: Who made the first commit?\n\xa7 page.team.building.quiz.question02: Who closed more tasks?\n\xa7 page.team.building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 page.team.building.quiz.question04: Who has been working on the project the longest?\n\xa7 page.team.building.quiz.question05: Who worked the least on the project?\n\xa7 page.team.building.quiz.question08: Who has the longest commit signatures?\n\xa7 page.team.building.quiz.question09: Who has the shortest commit signatures?\n\xa7 page.team.building.quiz.question11: How many people have quit?\n\xa7 page.team.building.quiz.question12: How many people helped the project?\n\xa7 page.team.building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 page.team.building.quiz.question14: What type of tasks have been added more?\n\xa7 page.team.building.quiz.question15: How many days do they work on the project on average?\n\xa7 page.team.building.quiz.question16: Who created the most directories?\n\xa7 page.team.building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 page.team.building.quiz.question18: Who clicks the "Merge" button for PR more often than others?\n\xa7 page.team.building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 page.team.building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 page.team.building.quiz.begin: How well do you know the team?\n\xa7 page.team.building.quiz.result1.title: Not enough\n\xa7 page.team.building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 page.team.building.quiz.result2.title: Well\n\xa7 page.team.building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 page.team.building.quiz.result3.title: Great\n\xa7 page.team.building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n\xa7 page.team.recommendations.alert: Warning\n\xa7 page.team.recommendations.warning: Pay attention\n\xa7 page.team.recommendations.fact: Facts about the project\n\xa7 page.team.recommendations.info: General tips\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.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.publicity: Special\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/852782/], [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'].join(""),Re=["\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.moreChangeTimeZone.title: Aaaaa-viasales\n\xa7 achievements.moreChangeTimeZone.description: changed location more often than anyone else\n\xa7 achievements.publicitySitnik.title: Sitnik approves\n\xa7 achievements.publicitySitnik.description: the first who added the PostCSS or Browserslist config\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\xa7 common.confirm.title: Are you sure you want to remove it?\n\xa7 common.confirm.yes: Yes, I am sure.\n\xa7 common.confirm.no: Cancel\n\xa7 common.confirm.abc: abc\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.buttons.logoutQuestion: Are you sure you want to clear data-set?\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.team.recommendations: Recommendations\n\xa7 sidebar.team.building: Games\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.author.absence.title: Vacation schedule\n\xa7 page.team.author.absence.vacation: Vacation\n\xa7 page.team.author.absence.transfer: Department change\n\xa7 page.team.author.absence.from: from\n\xa7 page.team.author.absence.to: to\n\xa7 page.team.author.absence.duration: days\n\xa7 page.team.hours.title: Distribuci\xf3n del trabajo cada d\xeda de la semana\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last days\n\xa7 plugin.team_month.filters.authors: All employees\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Calendario del proyecto\n\xa7 plugin.team_month.travel: (changed time zone)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first work day)\n\xa7 plugin.team_month.work.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.backlogDays: The delay of the task in the backlog before the start of development\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: *Task creation date* in the task tracker is calculated by its sequential number and the minimum date of any next Issue in the code. The method has a margin of error and, as a rule, the tasks turn out to be older. Frequent releases, fast bugfixes, and a large number of employees working on the code reduce this margin of error.\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.createdBefore: Created before\n\xa7 page.team.tasks.backlog: Development waiting\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.tasks.backlogTitle: Tasks undeveloped for over four months after being added to the task-tracker\n\xa7 page.team.tasks.charts.authors.title: Who is doing these tasks?\n\xa7 page.team.tasks.charts.authors.other: , etc.\n\xa7 page.team.tasks.charts.relative.title: Count relative to other tasks\n\xa7 page.team.tasks.charts.relative.backlog: backlog\n\xa7 page.team.tasks.charts.relative.all: other tasks\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: CHANGELOG.md\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.team.department.months.title: Possible number of employees in the department\n\xa7 page.team.department.months.description: It is assumed that the task tracker issues the serial numbers of the tasks. Knowing the maximum task number at the beginning and end of the month, we can find out the number of completed tasks. Knowing how many tasks the authors we know have closed this month, we can interpolate their work speed to all new tasks and assume the total number of employees whose work was not reflected in the git log.\n\xa7 page.team.department.months.date: Date\n\xa7 page.team.department.months.tasks: New tasks\n\xa7 page.team.department.months.tasksInWeek: in week\n\xa7 page.team.department.months.fixed: was fixed\n\xa7 page.team.department.months.authors: Worked\n\xa7 page.team.department.months.allAuthors: total number of employees in the department\n\xa7 page.team.building.races.title: The speed of closing tasks\n\xa7 page.team.building.races.go: Let\'s go!\n\xa7 page.team.building.swimmingPool.title: Maximum commit message length\n\xa7 page.team.building.quiz.start: Start a quiz\n\xa7 page.team.building.quiz.next: Next question\n\xa7 page.team.building.quiz.replay: Re-play?\n\xa7 page.team.building.quiz.question01: Who made the first commit?\n\xa7 page.team.building.quiz.question02: Who closed more tasks?\n\xa7 page.team.building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 page.team.building.quiz.question04: Who has been working on the project the longest?\n\xa7 page.team.building.quiz.question05: Who worked the least on the project?\n\xa7 page.team.building.quiz.question08: Who has the longest commit signatures?\n\xa7 page.team.building.quiz.question09: Who has the shortest commit signatures?\n\xa7 page.team.building.quiz.question11: How many people have quit?\n\xa7 page.team.building.quiz.question12: How many people helped the project?\n\xa7 page.team.building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 page.team.building.quiz.question14: What type of tasks have been added more?\n\xa7 page.team.building.quiz.question15: How many days do they work on the project on average?\n\xa7 page.team.building.quiz.question16: Who created the most directories?\n\xa7 page.team.building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 page.team.building.quiz.question18: Who clicks the "Merge" button for PR more often than others?\n\xa7 page.team.building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 page.team.building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 page.team.building.quiz.begin: How well do you know the team?\n\xa7 page.team.building.quiz.result1.title: Not enough\n\xa7 page.team.building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 page.team.building.quiz.result2.title: Well\n\xa7 page.team.building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 page.team.building.quiz.result3.title: Great\n\xa7 page.team.building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n\xa7 page.team.recommendations.alert: Warning\n\xa7 page.team.recommendations.warning: Pay attention\n\xa7 page.team.recommendations.fact: Facts about the project\n\xa7 page.team.recommendations.info: General tips\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.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.publicity: Special\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/852782/], [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'].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.moreChangeTimeZone.title: Aaaaa-viasales\n\xa7 achievements.moreChangeTimeZone.description: changed location more often than anyone else\n\xa7 achievements.publicitySitnik.title: Sitnik approves\n\xa7 achievements.publicitySitnik.description: the first who added the PostCSS or Browserslist config\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\xa7 common.confirm.title: Are you sure you want to remove it?\n\xa7 common.confirm.yes: Yes, I am sure.\n\xa7 common.confirm.no: Cancel\n\xa7 common.confirm.abc: abc\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.buttons.logoutQuestion: Are you sure you want to clear data-set?\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.team.recommendations: Recommendations\n\xa7 sidebar.team.building: Games\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.author.absence.title: Vacation schedule\n\xa7 page.team.author.absence.vacation: Vacation\n\xa7 page.team.author.absence.transfer: Department change\n\xa7 page.team.author.absence.from: from\n\xa7 page.team.author.absence.to: to\n\xa7 page.team.author.absence.duration: days\n\xa7 page.team.hours.title: R\xe9partition du travail pour chaque jour de la semaine\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last days\n\xa7 plugin.team_month.filters.authors: All employees\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Calendrier du projet\n\xa7 plugin.team_month.travel: (changed time zone)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first work day)\n\xa7 plugin.team_month.work.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.backlogDays: The delay of the task in the backlog before the start of development\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: *Task creation date* in the task tracker is calculated by its sequential number and the minimum date of any next Issue in the code. The method has a margin of error and, as a rule, the tasks turn out to be older. Frequent releases, fast bugfixes, and a large number of employees working on the code reduce this margin of error.\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.createdBefore: Created before\n\xa7 page.team.tasks.backlog: Development waiting\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.tasks.backlogTitle: Tasks undeveloped for over four months after being added to the task-tracker\n\xa7 page.team.tasks.charts.authors.title: Who is doing these tasks?\n\xa7 page.team.tasks.charts.authors.other: , etc.\n\xa7 page.team.tasks.charts.relative.title: Count relative to other tasks\n\xa7 page.team.tasks.charts.relative.backlog: backlog\n\xa7 page.team.tasks.charts.relative.all: other tasks\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: CHANGELOG.md\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.team.department.months.title: Possible number of employees in the department\n\xa7 page.team.department.months.description: It is assumed that the task tracker issues the serial numbers of the tasks. Knowing the maximum task number at the beginning and end of the month, we can find out the number of completed tasks. Knowing how many tasks the authors we know have closed this month, we can interpolate their work speed to all new tasks and assume the total number of employees whose work was not reflected in the git log.\n\xa7 page.team.department.months.date: Date\n\xa7 page.team.department.months.tasks: New tasks\n\xa7 page.team.department.months.tasksInWeek: in week\n\xa7 page.team.department.months.fixed: was fixed\n\xa7 page.team.department.months.authors: Worked\n\xa7 page.team.department.months.allAuthors: total number of employees in the department\n\xa7 page.team.building.races.title: The speed of closing tasks\n\xa7 page.team.building.races.go: Let's go!\n\xa7 page.team.building.swimmingPool.title: Maximum commit message length\n\xa7 page.team.building.quiz.start: Start a quiz\n\xa7 page.team.building.quiz.next: Next question\n\xa7 page.team.building.quiz.replay: Re-play?\n\xa7 page.team.building.quiz.question01: Who made the first commit?\n\xa7 page.team.building.quiz.question02: Who closed more tasks?\n\xa7 page.team.building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 page.team.building.quiz.question04: Who has been working on the project the longest?\n\xa7 page.team.building.quiz.question05: Who worked the least on the project?\n\xa7 page.team.building.quiz.question08: Who has the longest commit signatures?\n\xa7 page.team.building.quiz.question09: Who has the shortest commit signatures?\n\xa7 page.team.building.quiz.question11: How many people have quit?\n\xa7 page.team.building.quiz.question12: How many people helped the project?\n\xa7 page.team.building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 page.team.building.quiz.question14: What type of tasks have been added more?\n\xa7 page.team.building.quiz.question15: How many days do they work on the project on average?\n\xa7 page.team.building.quiz.question16: Who created the most directories?\n\xa7 page.team.building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 page.team.building.quiz.question18: Who clicks the \"Merge\" button for PR more often than others?\n\xa7 page.team.building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 page.team.building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 page.team.building.quiz.begin: How well do you know the team?\n\xa7 page.team.building.quiz.result1.title: Not enough\n\xa7 page.team.building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 page.team.building.quiz.result2.title: Well\n\xa7 page.team.building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 page.team.building.quiz.result3.title: Great\n\xa7 page.team.building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n\xa7 page.team.recommendations.alert: Warning\n\xa7 page.team.recommendations.warning: Pay attention\n\xa7 page.team.recommendations.fact: Facts about the project\n\xa7 page.team.recommendations.info: General tips\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.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.publicity: Special\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/852782/], [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"].join(""),Le=["\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.moreChangeTimeZone.title: Aaaaa-viasales\n\xa7 achievements.moreChangeTimeZone.description: changed location more often than anyone else\n\xa7 achievements.publicitySitnik.title: Sitnik approves\n\xa7 achievements.publicitySitnik.description: the first who added the PostCSS or Browserslist config\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\xa7 common.confirm.title: Are you sure you want to remove it?\n\xa7 common.confirm.yes: Yes, I am sure.\n\xa7 common.confirm.no: Cancel\n\xa7 common.confirm.abc: abc\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.buttons.logoutQuestion: Are you sure you want to clear data-set?\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.team.recommendations: Recommendations\n\xa7 sidebar.team.building: Games\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.author.absence.title: Vacation schedule\n\xa7 page.team.author.absence.vacation: Vacation\n\xa7 page.team.author.absence.transfer: Department change\n\xa7 page.team.author.absence.from: from\n\xa7 page.team.author.absence.to: to\n\xa7 page.team.author.absence.duration: days\n\xa7 page.team.hours.title: Distribution of commits during each day of the week\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last days\n\xa7 plugin.team_month.filters.authors: All employees\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed time zone)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first work day)\n\xa7 plugin.team_month.work.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.backlogDays: The delay of the task in the backlog before the start of development\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: *Task creation date* in the task tracker is calculated by its sequential number and the minimum date of any next Issue in the code. The method has a margin of error and, as a rule, the tasks turn out to be older. Frequent releases, fast bugfixes, and a large number of employees working on the code reduce this margin of error.\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.createdBefore: Created before\n\xa7 page.team.tasks.backlog: Development waiting\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.tasks.backlogTitle: Tasks undeveloped for over four months after being added to the task-tracker\n\xa7 page.team.tasks.charts.authors.title: Who is doing these tasks?\n\xa7 page.team.tasks.charts.authors.other: , etc.\n\xa7 page.team.tasks.charts.relative.title: Count relative to other tasks\n\xa7 page.team.tasks.charts.relative.backlog: backlog\n\xa7 page.team.tasks.charts.relative.all: other tasks\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: CHANGELOG.md\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.team.department.months.title: Possible number of employees in the department\n\xa7 page.team.department.months.description: It is assumed that the task tracker issues the serial numbers of the tasks. Knowing the maximum task number at the beginning and end of the month, we can find out the number of completed tasks. Knowing how many tasks the authors we know have closed this month, we can interpolate their work speed to all new tasks and assume the total number of employees whose work was not reflected in the git log.\n\xa7 page.team.department.months.date: Date\n\xa7 page.team.department.months.tasks: New tasks\n\xa7 page.team.department.months.tasksInWeek: in week\n\xa7 page.team.department.months.fixed: was fixed\n\xa7 page.team.department.months.authors: Worked\n\xa7 page.team.department.months.allAuthors: total number of employees in the department\n\xa7 page.team.building.races.title: The speed of closing tasks\n\xa7 page.team.building.races.go: Let\'s go!\n\xa7 page.team.building.swimmingPool.title: Maximum commit message length\n\xa7 page.team.building.quiz.start: Start a quiz\n\xa7 page.team.building.quiz.next: Next question\n\xa7 page.team.building.quiz.replay: Re-play?\n\xa7 page.team.building.quiz.question01: Who made the first commit?\n\xa7 page.team.building.quiz.question02: Who closed more tasks?\n\xa7 page.team.building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 page.team.building.quiz.question04: Who has been working on the project the longest?\n\xa7 page.team.building.quiz.question05: Who worked the least on the project?\n\xa7 page.team.building.quiz.question08: Who has the longest commit signatures?\n\xa7 page.team.building.quiz.question09: Who has the shortest commit signatures?\n\xa7 page.team.building.quiz.question11: How many people have quit?\n\xa7 page.team.building.quiz.question12: How many people helped the project?\n\xa7 page.team.building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 page.team.building.quiz.question14: What type of tasks have been added more?\n\xa7 page.team.building.quiz.question15: How many days do they work on the project on average?\n\xa7 page.team.building.quiz.question16: Who created the most directories?\n\xa7 page.team.building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 page.team.building.quiz.question18: Who clicks the "Merge" button for PR more often than others?\n\xa7 page.team.building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 page.team.building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 page.team.building.quiz.begin: How well do you know the team?\n\xa7 page.team.building.quiz.result1.title: Not enough\n\xa7 page.team.building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 page.team.building.quiz.result2.title: Well\n\xa7 page.team.building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 page.team.building.quiz.result3.title: Great\n\xa7 page.team.building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n\xa7 page.team.recommendations.alert: Warning\n\xa7 page.team.recommendations.warning: Pay attention\n\xa7 page.team.recommendations.fact: Facts about the project\n\xa7 page.team.recommendations.info: General tips\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.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.publicity: Special\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/852782/], [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'].join(""),Me=["\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.moreChangeTimeZone.title: Aaaaa-viasales\n\xa7 achievements.moreChangeTimeZone.description: changed location more often than anyone else\n\xa7 achievements.publicitySitnik.title: Sitnik approves\n\xa7 achievements.publicitySitnik.description: the first who added the PostCSS or Browserslist config\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\xa7 common.confirm.title: Are you sure you want to remove it?\n\xa7 common.confirm.yes: Yes, I am sure.\n\xa7 common.confirm.no: Cancel\n\xa7 common.confirm.abc: abc\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.buttons.logoutQuestion: Are you sure you want to clear data-set?\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.team.recommendations: Recommendations\n\xa7 sidebar.team.building: Games\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.author.absence.title: Vacation schedule\n\xa7 page.team.author.absence.vacation: Vacation\n\xa7 page.team.author.absence.transfer: Department change\n\xa7 page.team.author.absence.from: from\n\xa7 page.team.author.absence.to: to\n\xa7 page.team.author.absence.duration: days\n\xa7 page.team.hours.title: Distribution of commits during each day of the week\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last days\n\xa7 plugin.team_month.filters.authors: All employees\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed time zone)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first work day)\n\xa7 plugin.team_month.work.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.backlogDays: The delay of the task in the backlog before the start of development\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: *Task creation date* in the task tracker is calculated by its sequential number and the minimum date of any next Issue in the code. The method has a margin of error and, as a rule, the tasks turn out to be older. Frequent releases, fast bugfixes, and a large number of employees working on the code reduce this margin of error.\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.createdBefore: Created before\n\xa7 page.team.tasks.backlog: Development waiting\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.tasks.backlogTitle: Tasks undeveloped for over four months after being added to the task-tracker\n\xa7 page.team.tasks.charts.authors.title: Who is doing these tasks?\n\xa7 page.team.tasks.charts.authors.other: , etc.\n\xa7 page.team.tasks.charts.relative.title: Count relative to other tasks\n\xa7 page.team.tasks.charts.relative.backlog: backlog\n\xa7 page.team.tasks.charts.relative.all: other tasks\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: CHANGELOG.md\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.team.department.months.title: Possible number of employees in the department\n\xa7 page.team.department.months.description: It is assumed that the task tracker issues the serial numbers of the tasks. Knowing the maximum task number at the beginning and end of the month, we can find out the number of completed tasks. Knowing how many tasks the authors we know have closed this month, we can interpolate their work speed to all new tasks and assume the total number of employees whose work was not reflected in the git log.\n\xa7 page.team.department.months.date: Date\n\xa7 page.team.department.months.tasks: New tasks\n\xa7 page.team.department.months.tasksInWeek: in week\n\xa7 page.team.department.months.fixed: was fixed\n\xa7 page.team.department.months.authors: Worked\n\xa7 page.team.department.months.allAuthors: total number of employees in the department\n\xa7 page.team.building.races.title: The speed of closing tasks\n\xa7 page.team.building.races.go: Let\'s go!\n\xa7 page.team.building.swimmingPool.title: Maximum commit message length\n\xa7 page.team.building.quiz.start: Start a quiz\n\xa7 page.team.building.quiz.next: Next question\n\xa7 page.team.building.quiz.replay: Re-play?\n\xa7 page.team.building.quiz.question01: Who made the first commit?\n\xa7 page.team.building.quiz.question02: Who closed more tasks?\n\xa7 page.team.building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 page.team.building.quiz.question04: Who has been working on the project the longest?\n\xa7 page.team.building.quiz.question05: Who worked the least on the project?\n\xa7 page.team.building.quiz.question08: Who has the longest commit signatures?\n\xa7 page.team.building.quiz.question09: Who has the shortest commit signatures?\n\xa7 page.team.building.quiz.question11: How many people have quit?\n\xa7 page.team.building.quiz.question12: How many people helped the project?\n\xa7 page.team.building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 page.team.building.quiz.question14: What type of tasks have been added more?\n\xa7 page.team.building.quiz.question15: How many days do they work on the project on average?\n\xa7 page.team.building.quiz.question16: Who created the most directories?\n\xa7 page.team.building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 page.team.building.quiz.question18: Who clicks the "Merge" button for PR more often than others?\n\xa7 page.team.building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 page.team.building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 page.team.building.quiz.begin: How well do you know the team?\n\xa7 page.team.building.quiz.result1.title: Not enough\n\xa7 page.team.building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 page.team.building.quiz.result2.title: Well\n\xa7 page.team.building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 page.team.building.quiz.result3.title: Great\n\xa7 page.team.building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n\xa7 page.team.recommendations.alert: Warning\n\xa7 page.team.recommendations.warning: Pay attention\n\xa7 page.team.recommendations.fact: Facts about the project\n\xa7 page.team.recommendations.info: General tips\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.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.publicity: Special\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/852782/], [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'].join(""),Fe=["\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: \xab\u042f\u0437\u044b\u043a\u043e\u043c \u0431\u043e\u043b\u0442\u0430\u0442\u044c\xbb \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.moreChangeTimeZone.title: Aaaaa-viasales\n\xa7 achievements.moreChangeTimeZone.description: \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0445 \u043c\u0435\u043d\u044f\u043b \u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\n\xa7 achievements.publicitySitnik.title: \u0421\u0438\u0442\u043d\u0438\u043a \u043e\u0434\u043e\u0431\u0440\u044f\u0435\u0442\n\xa7 achievements.publicitySitnik.description: \u043f\u0435\u0440\u0432\u044b\u0439 \u0434\u043e\u0431\u0430\u0432\u0438\u043b PostCSS \u0438\u043b\u0438 Browserslist \u043a\u043e\u043d\u0444\u0438\u0433\n\xa7 achievements.github.title: \u0414\u043e\u043c\u0440\u0430\u0431\u043e\u0442\u043d\u0438\u0446\u0430\n\xa7 achievements.github.description: \u043a\u0440\u043e\u043c\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0438\u0448\u0435\u0442 \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0439 \u043f\u0440\u043e\u0435\u043a\u0442\n\xa7 achievements.mackBook.title: \u0412\u0430\u043d\u0438\u043b\u044c\u043d\u044b\u0439 \u0440\u0430\u0444 \u043d\u0430 \u043a\u043e\u043a\u043e\u0441\u043e\u0432\u043e\u043c \u043c\u043e\u043b\u043e\u043a\u0435\n\xa7 achievements.mackBook.description: \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 MackBook \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b\n\xa7 achievements.moreCommitsBeforeRelease.title: \u0421\u0443\u0435\u0442\u043e\u043b\u043e\u0433\n\xa7 achievements.moreCommitsBeforeRelease.description: \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435 \u0447\u0438\u0441\u043b\u0430 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u043f\u0435\u0440\u0435\u0434 \u0440\u0435\u043b\u0438\u0437\u043e\u043c\n\xa7 achievements.ipInEmail.title: LAN-man\n\xa7 achievements.ipInEmail.description: \u0432\u043c\u0435\u0441\u0442\u043e email \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 IP \u0430\u0434\u0440\u0435\u0441\n\xa7 achievements.languageErrors.title: \u0421\u043c\u043e\u0442\u0440\u044f \u043a\u0430\u043a\u043e\u0439 fabric, \u0441\u043c\u043e\u0442\u0440\u044f \u0441\u043a\u043e\u043b\u044c\u043a\u043e details\n\xa7 achievements.languageErrors.description: \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u043e\u0440\u0444\u043e\u0433\u0440\u0430\u0444\u0438\u0438 \u0438\u043b\u0438 \u043f\u0443\u043d\u043a\u0442\u0443\u0430\u0446\u0438\u0438 \u043e\u0442 \u0434\u0440\u0443\u0433\u043e\u0433\u043e \u044f\u0437\u044b\u043a\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 (\u0432\u0441\u0435\u0433\u043e $1).\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.description:\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\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\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\xa7 common.confirm.title: \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?\n\xa7 common.confirm.yes: \u0414\u0430, \u0443\u0432\u0435\u0440\u0435\u043d\n\xa7 common.confirm.no: \u041e\u0442\u043c\u0435\u043d\u0430\n\xa7 common.statistic.days: \u0434\u043d\u0435\u0439\n\xa7 common.statistic.Days: \u0414\u043d\u0435\u0439\n\xa7 common.statistic.tasks: \u0437\u0430\u0434\u0430\u0447\n\xa7 common.statistic.Tasks: \u0417\u0430\u0434\u0430\u0447\n\xa7 common.statistic.commits: \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 common.statistic.employees: \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 common.statistic.date: \u0434\u0430\u0442\u0430\n\xa7 common.statistic.Date: \u0414\u0430\u0442\u0430\n\xa7 common.statistic.firstCommit: \u041f\u0435\u0440\u0432\u044b\u0439 \u043a\u043e\u043c\u043c\u0438\u0442\n\xa7 common.statistic.lastCommit: \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439\n\xa7 common.statistic.work: \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442\n\xa7 common.statistic.dismissed: \u0443\u0432\u043e\u043b\u0435\u043d\n\xa7 common.statistic.staff: \u043f\u043e\u043c\u043e\u0449\u043d\u0438\u043a\n\xa7 common.search.placeholder: \u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0442\u0435\u043a\u0441\u0442 \u0434\u043b\u044f \u043f\u043e\u0438\u0441\u043a\u0430\n\xa7 common.search.select.author: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\n\xa7 common.search.select.taskCode: \u041e\u0442\u0434\u0435\u043b \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\n\xa7 common.search.select.company: \u0421\u0443\u0431\u043f\u043e\u0434\u0440\u044f\u0434\u0447\u0438\u043a \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\n\xa7 common.search.select.type: \u0422\u0438\u043f \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\n\xa7 common.search.select.scope: \u0424\u0438\u0447\u0430 \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\n\xa7 common.search.example: \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:\n\xa7 uiKit.translation.tooltip.list: \u041f\u0435\u0440\u0435\u0432\u043e\u0434\u044b\n\xa7 uiKit.translation.modal.title: \u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0432 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0435\n\xa7 uiKit.translation.modal.key: ID\n\xa7 uiKit.translation.modal.value: \u041d\u043e\u0432\u044b\u0439 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\n\xa7 uiKit.translation.modal.export: \u042d\u043a\u0441\u043f\u043e\u0440\u0442\n\xa7 uiKit.translation.modal.cancel: \u041e\u0442\u043c\u0435\u043d\u0430\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.buttons.logoutQuestion: \u0412\u044b \u0443\u0432\u0435\u0440\u0435\u043d\u044b \u0447\u0442\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\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.server: \u0421\u0435\u0440\u0432\u0435\u0440\u0430\n\xa7 sidebar.team.settings: \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\n\xa7 sidebar.team.recommendations: \u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438 \u0438 \u0444\u0430\u043a\u0442\u044b\n\xa7 sidebar.team.building: \u041c\u0438\u043d\u0438 \u0438\u0433\u0440\u044b\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 \xab\u043a\u043e\u0440\u043e\u0431\u043e\u0447\u043d\u0443\u044e\xbb \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.translations: \u0420\u0435\u0436\u0438\u043c \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a\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.mailmap.title: \u041e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 page.settings.mailmap.description1: \u0427\u0442\u043e\u0431\u044b \u0441\u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043c\u043c\u0438\u0442\u044b \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u044b\u0435 \u0441 \u0440\u0430\u0437\u043d\u044b\u0445 \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u043e\u0432 \u043e\u0434\u043d\u043e\u0433\u043e \u0438 \u0442\u043e\u0433\u043e \u0436\u0435 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430, \u0441\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u0432 \u043a\u043e\u0440\u043d\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0439 \u0444\u0430\u0439\u043b \u0441 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043c \xab.mailmap\xbb. \u041d\u0438\u0436\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d \u043f\u0440\u0438\u043c\u0435\u0440 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u044d\u0442\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 \u043f\u043e \u0442\u0435\u043a\u0443\u0449\u0438\u043c \u0434\u0430\u043d\u043d\u044b\u043c.\n\xa7 page.settings.mailmap.description2: \u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u0435 \u043b\u043e\u0433\u0438 \u0435\u0449\u0451 \u0440\u0430\u0437. \u041f\u0440\u0438 \u0441\u043a\u043b\u0435\u0439\u043a\u0435 \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u043e\u0432, \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0430\u044f \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0430 \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \xab\u043f\u043e\u0447\u0442\u043e\u0432\u044b\u0435 \u0430\u0434\u0440\u0435\u0441\u0430\xbb, \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u043f\u043e\u0442\u0435\u0440\u044f\u0435\u0442 \u0447\u0430\u0441\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0445. \u042d\u0442\u043e \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e.\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: \u0421\u0443\u0431\u043f\u043e\u0434\u0440\u044f\u0434\u0447\u0438\u043a\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.author.absence.title: \u0413\u0440\u0430\u0444\u0438\u043a \u043e\u0442\u043f\u0443\u0441\u043a\u043e\u0432\n\xa7 page.team.author.absence.vacation: \u041e\u0442\u043f\u0443\u0441\u043a\n\xa7 page.team.author.absence.transfer: \u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0432 \u0434\u0440\u0443\u0433\u043e\u0439 \u043e\u0442\u0434\u0435\u043b\n\xa7 page.team.author.absence.from: \u0441\n\xa7 page.team.author.absence.to: \u043f\u043e\n\xa7 page.team.author.absence.duration: \u0434\u043d\u0435\u0439\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 plugin.team_month.filters.release: \u0420\u0435\u043b\u0438\u0437\u044b\n\xa7 plugin.team_month.filters.absence: \u041e\u0442\u043f\u0443\u0441\u043a\u0430 \u0438 \u043f\u0435\u0440\u0435\u0435\u0437\u0434\u044b\n\xa7 plugin.team_month.filters.firstLastDays: \u041f\u0435\u0440\u0432\u044b\u0439 \u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0434\u0435\u043d\u044c\n\xa7 plugin.team_month.filters.authors: \u0412\u0441\u0435 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438\n\xa7 plugin.team_month.filters.types: \u0412\u0441\u0435 \u0442\u0438\u043f\u044b\n\xa7 plugin.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 plugin.team_month.travel: (\u0438\u0437\u043c\u0435\u043d\u0438\u043b \u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435)\n\xa7 plugin.team_month.vacation.first: (\u0443\u0445\u043e\u0434\u0438\u0442 \u0432 \u043e\u0442\u043f\u0443\u0441\u043a)\n\xa7 plugin.team_month.vacation.last: (\u0432\u0435\u0440\u043d\u0443\u043b\u0441\u044f \u0438\u0437 \u043e\u0442\u043f\u0443\u0441\u043a\u0430)\n\xa7 plugin.team_month.work.first: (\u043f\u0435\u0440\u0432\u044b\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0434\u0435\u043d\u044c)\n\xa7 plugin.team_month.work.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.backlogDays: \u0412\u0440\u0435\u043c\u044f \u0437\u0430\u0434\u0430\u0447\u0438 \u0432 \u0431\u044d\u043a\u043b\u043e\u0433\u0435 \u0434\u043e \u043d\u0430\u0447\u0430\u043b\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438\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\u0431\u043e\u0442\u044b \u043d\u0430\u0434 \u0437\u0430\u0434\u0430\u0447\u0435\u0439* \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 \u0440\u0435\u0432\u044c\u044e PR* \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: *\u0414\u0430\u0442\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0437\u0430\u0434\u0430\u0447\u0438* \u0432 \u0442\u0430\u0441\u043a-\u0442\u0440\u0435\u043a\u0435\u0440\u0435 \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u043e \u0435\u0451 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432\u043e\u043c\u0443 \u043d\u043e\u043c\u0435\u0440\u0443 \u0438 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u0434\u0430\u0442\u0435 \u043b\u044e\u0431\u043e\u0439 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0432 \u043a\u043e\u0434\u0435. \u041c\u0435\u0442\u043e\u0434 \u0438\u043c\u0435\u0435\u0442 \u043f\u043e\u0433\u0440\u0435\u0448\u043d\u043e\u0441\u0442\u044c \u0438, \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u0437\u0430\u0434\u0430\u0447\u0438 \u043e\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0441\u0442\u0430\u0440\u0448\u0435. \u0427\u0430\u0441\u0442\u044b\u0435 \u0440\u0435\u043b\u0438\u0437\u044b, \u0431\u044b\u0441\u0442\u0440\u044b\u0435 \u0431\u0430\u0433-\u0444\u0438\u043a\u0441\u044b \u0438 \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432, \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0445 \u043d\u0430\u0434 \u043a\u043e\u0434\u043e\u043c, \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u044e\u0442 \u044d\u0442\u0443 \u043f\u043e\u0433\u0440\u0435\u0448\u043d\u043e\u0441\u0442\u044c.\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.createdBefore: \u0421\u043e\u0437\u0434\u0430\u043d\u0430 \u0434\u043e\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.backlog: \u041e\u0436\u0438\u0434\u0430\u043d\u0438\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438\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.tasks.backlogTitle: \u0421\u043f\u0438\u0441\u043e\u043a \u0437\u0430\u0434\u0430\u0447, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u0432\u0435\u043b\u0438 \u0432 \u0442\u0430\u0441\u043a-\u0442\u0440\u0435\u043a\u0435\u0440 \u0438 \u043d\u0435 \u0431\u0440\u0430\u043b\u0438 \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0431\u043e\u043b\u044c\u0448\u0435 \u0447\u0435\u0442\u044b\u0440\u0435\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432\n\xa7 page.team.tasks.charts.authors.title: \u041a\u0442\u043e \u0435\u0433\u043e \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u0442\n\xa7 page.team.tasks.charts.authors.other: \u0438 \u0434\u0440\u0443\u0433\u0438\u0435\n\xa7 page.team.tasks.charts.relative.title: \u041e\u0431\u044a\u0435\u043c \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u0440\u0443\u0433\u0438\u0445 \u0437\u0430\u0434\u0430\u0447\n\xa7 page.team.tasks.charts.relative.backlog: \u0442\u0435\u0445. \u0434\u043e\u043b\u0433\n\xa7 page.team.tasks.charts.relative.all: \u0434\u0440\u0443\u0433\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\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: CHANGELOG.md\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.team.department.months.title: \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 \u0432 \u043e\u0442\u0434\u0435\u043b\u0435\n\xa7 page.team.department.months.description: \u0422\u0430\u0441\u043a-\u0442\u0440\u0435\u043a\u0435\u0440 \u0432\u044b\u0434\u0430\u0435\u0442 \u0441\u0435\u0440\u0438\u0439\u043d\u044b\u0435 \u043d\u043e\u043c\u0435\u0440\u0430 \u0437\u0430\u0434\u0430\u0447. \u0417\u043d\u0430\u044f \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u043d\u043e\u043c\u0435\u0440 \u0437\u0430\u0434\u0430\u0447\u0438 \u0432 \u043d\u0430\u0447\u0430\u043b\u0435 \u0438 \u043a\u043e\u043d\u0446\u0435 \u043c\u0435\u0441\u044f\u0446\u0430, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0443\u0437\u043d\u0430\u0442\u044c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e *\u043d\u043e\u0432\u044b\u0445 \u0437\u0430\u0434\u0430\u0447*. \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u0434\u0430\u0447 *\u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445* \u0432 \u044d\u0442\u043e\u043c \u043c\u0435\u0441\u044f\u0446\u0435 \u0432\u0438\u0434\u0438\u043c \u0432 \u043b\u043e\u0433\u0430\u0445. \u041a\u0442\u043e \u0438\u0445 \u043f\u0440\u0430\u0432\u0438\u043b (*\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e*) \u0442\u0430\u043a \u0436\u0435 \u0432\u0438\u0434\u0438\u043c. \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u0434\u0430\u0447 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u043e\u0437\u0436\u0435 (*\u0431\u0435\u043a\u043b\u043e\u0433*) \u0442\u0430\u043a \u0436\u0435 \u0441\u0447\u0438\u0442\u0430\u0435\u043c \u043f\u043e \u043b\u043e\u0433\u0430\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432. \u042d\u043a\u0441\u0442\u0440\u0430\u043f\u043e\u043b\u0438\u0440\u0443\u0435\u043c \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043c\u044b \u0432\u0438\u0434\u0438\u043c, \u043d\u0430 \u043e\u0431\u0449\u0435\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u0434\u0430\u0447, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0438\u043a\u0438\u043d\u0443\u0442\u044c \u0441\u043a\u043e\u043b\u044c\u043a\u043e *\u0432\u0441\u0435\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043e\u0432* \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u0432 \u043e\u0442\u0434\u0435\u043b\u0435. \u041f\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0443 "\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043e\u0432" \u043f\u0440\u0438\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u043e\u0432, \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u043e\u0432 \u0438 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u043e\u0432.\n\xa7 page.team.department.months.date: \u0414\u0430\u0442\u0430\n\xa7 page.team.department.months.newTaskInMonth: \u041d\u043e\u0432\u044b\u0445 \u0437\u0430\u0434\u0430\u0447\n\xa7 page.team.department.months.tasksFixedThisGroup: \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u043e\n\xa7 page.team.department.months.tasksInBacklog: \u0411\u0435\u043a\u043b\u043e\u0433\n\xa7 page.team.department.months.programmistInThisGroup: \u0420\u0430\u0431\u043e\u0442\u0430\u043b\u043e\n\xa7 page.team.department.months.allProgrammistInDepartment: \u0414\u043e\u043b\u0436\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c\n\xa7 page.team.department.months.allUsersInDepartment: \u0412\u0441\u0435\u0433\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 page.team.building.races.title: \u0421\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u044f \u0437\u0430\u0434\u0430\u0447\n\xa7 page.team.building.races.go: \u041f\u043e\u0435\u0445\u0430\u043b\u0438!\n\xa7 page.team.building.swimmingPool.title: \u041c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0434\u043b\u0438\u043d\u0430 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 page.team.building.quiz.start: \u041d\u0430\u0447\u0430\u0442\u044c \u043a\u0432\u0438\u0437\n\xa7 page.team.building.quiz.next: \u0414\u0430\u043b\u0435\u0435\n\xa7 page.team.building.quiz.replay: \u0415\u0449\u0451 \u0440\u0430\u0437\n\xa7 page.team.building.quiz.question01: \u041a\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u043b \u043f\u0435\u0440\u0432\u044b\u0439 \u043a\u043e\u043c\u043c\u0438\u0442?\n\xa7 page.team.building.quiz.question02: \u041a\u0442\u043e \u0437\u0430\u043a\u0440\u044b\u043b \u0431\u043e\u043b\u044c\u0448\u0435 \u0437\u0430\u0434\u0430\u0447?\n\xa7 page.team.building.quiz.question03: \u041a\u0442\u043e \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u0432\u0441\u0435\u0445 \u0434\u0435\u043b\u0430\u0435\u0442 \u0437\u0430\u0434\u0430\u0447\u0438?\n\xa7 page.team.building.quiz.question04: \u041a\u0442\u043e \u0434\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0445 \u0440\u0430\u0431\u043e\u0442\u0430\u043b \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435?\n\xa7 page.team.building.quiz.question05: \u041a\u0442\u043e \u043c\u0435\u043d\u044c\u0448\u0435 \u0432\u0441\u0435\u0445 \u0440\u0430\u0431\u043e\u0442\u0430\u043b \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435?\n\xa7 page.team.building.quiz.question08: \u0423 \u043a\u043e\u0433\u043e \u0441\u0430\u043c\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 page.team.building.quiz.question09: \u0423 \u043a\u043e\u0433\u043e \u0441\u0430\u043c\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 page.team.building.quiz.question11: \u0421\u043a\u043e\u043b\u044c\u043a\u043e \u0447\u0435\u043b\u043e\u0432\u0435\u043a \u0443\u0432\u043e\u043b\u0438\u043b\u043e\u0441\u044c?\n\xa7 page.team.building.quiz.question12: \u0421\u043a\u043e\u043b\u044c\u043a\u043e \u0447\u0435\u043b\u043e\u0432\u0435\u043a \u043f\u043e\u043c\u043e\u0433\u0430\u043b\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0443?\n\xa7 page.team.building.quiz.question13: \u0421\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c \u0437\u0430\u0434\u0430\u0447 \u0432 \u0434\u0435\u043d\u044c \u0434\u0435\u043b\u0430\u043b $1?\n\xa7 page.team.building.quiz.question14: \u0417\u0430\u0434\u0430\u0447 \u043a\u0430\u043a\u043e\u0433\u043e \u0442\u0438\u043f\u0430 \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u043b\u0438\u043b\u0438?\n\xa7 page.team.building.quiz.question15: \u0421\u043a\u043e\u043b\u044c\u043a\u043e \u0432 \u0441\u0440\u0435\u0434\u043d\u0435\u043c \u0434\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435?\n\xa7 page.team.building.quiz.question16: \u041a\u0442\u043e \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 page.team.building.quiz.question17: \u041a\u0442\u043e \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 page.team.building.quiz.question18: \u041a\u0442\u043e \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 page.team.building.quiz.question19: \u0423 \u043a\u043e\u0433\u043e \u0431\u044b\u043b\u0430 \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 page.team.building.quiz.question20: \u041a\u0442\u043e \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 page.team.building.quiz.begin: \u041d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0445\u043e\u0440\u043e\u0448\u043e \u0442\u044b \u0437\u043d\u0430\u0435\u0448\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443?\n\xa7 page.team.building.quiz.result1.title: \u041d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e\n\xa7 page.team.building.quiz.result1.description: \u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0445 \u043e\u0442\u0432\u0435\u0442\u043e\u0432 \u043c\u0435\u043d\u044c\u0448\u0435 40%. \u041e\u0437\u043d\u0430\u043a\u043e\u043c\u044c\u0442\u0435\u0441\u044c \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u043e \u0432\u0430\u0448\u0435\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0432 \u0441\u043e\u0441\u0435\u0434\u043d\u0438\u0445 \u0440\u0430\u0437\u0434\u0435\u043b\u0430\u0445 \u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0441\u043d\u043e\u0432\u0430!\n\xa7 page.team.building.quiz.result2.title: \u0425\u043e\u0440\u043e\u0448\u043e\n\xa7 page.team.building.quiz.result2.description: \u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0445 \u043e\u0442\u0432\u0435\u0442\u043e\u0432 \u043e\u0442 40% \u0434\u043e 70%. \u0412\u044b \u0438\u043c\u0435\u0435\u0442\u0435 \u0445\u043e\u0440\u043e\u0448\u0435\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e \u0432\u0430\u0448\u0435\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u0435, \u043d\u043e \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u0437\u043d\u0430\u0442\u044c \u0435\u0451 \u043b\u0443\u0447\u0448\u0435. \u041e\u0437\u043d\u0430\u043a\u043e\u043c\u044c\u0442\u0435\u0441\u044c \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0432 \u0441\u043e\u0441\u0435\u0434\u043d\u0438\u0445 \u0440\u0430\u0437\u0434\u0435\u043b\u0430\u0445 \u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0441\u043d\u043e\u0432\u0430!\n\xa7 page.team.building.quiz.result3.title: \u041e\u0442\u043b\u0438\u0447\u043d\u043e\n\xa7 page.team.building.quiz.result3.description: \u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0445 \u043e\u0442\u0432\u0435\u0442\u043e\u0432 \u0431\u043e\u043b\u044c\u0448\u0435 70%. \u0412\u044b \u043e\u0442\u043b\u0438\u0447\u043d\u043e \u0437\u043d\u0430\u0435\u0442\u0435 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0443 \u043f\u043e \u0432\u0430\u0448\u0435\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u0435!\n\xa7 page.team.recommendations.alert: \u041f\u0440\u043e\u0431\u043b\u0435\u043c\u044b\n\xa7 page.team.recommendations.warning: \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435\n\xa7 page.team.recommendations.fact: \u0424\u0430\u043a\u0442\u044b \u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0435\n\xa7 page.team.recommendations.info: \u041e\u0431\u0449\u0438\u0435 \u0441\u043e\u0432\u0435\u0442\u044b\n\xa7 page.team.server.title: \u0410\u0434\u0440\u0435\u0441\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0432 \u043b\u043e\u0433\u0430\u0445\n\xa7 page.team.server.domain: \u0414\u043e\u043c\u0435\u043d\n\xa7 page.team.server.from: \u0441\n\xa7 page.team.server.to: \u043f\u043e\n\xa7 page.team.server.protocol: \u041f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\n\xa7 page.team.server.port: \u041f\u043e\u0440\u0442\n\xa7 page.team.server.url: URL\n\xa7 page.team.server.service: \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u0434\u043b\u044f \u0445\u043e\u0441\u0442\u0438\u043d\u0433\u0430 \u043a\u043e\u0434\u0430\n\xa7 page.team.server.type.title: \u0421\u0435\u0440\u0432\u0438\u0441\n\xa7 page.team.server.type.description: $1 \u0438\u043b\u0438 \u0447\u0442\u043e-\u0442\u043e \u043f\u043e\u0445\u043e\u0436\u0435\u0435\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.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.publicity: \u0421\u043f\u0435\u0446\u0438\u0430\u043b\u044c\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/852782/], [\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'].join(""),We=['\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.moreChangeTimeZone.title: Aaaaa-viasales\n\xa7 achievements.moreChangeTimeZone.description: changed location more often than anyone else\n\xa7 achievements.publicitySitnik.title: Sitnik approves\n\xa7 achievements.publicitySitnik.description: the first who added the PostCSS or Browserslist config\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\xa7 common.confirm.title: Are you sure you want to remove it?\n\xa7 common.confirm.yes: Yes, I am sure.\n\xa7 common.confirm.no: Cancel\n\xa7 common.confirm.abc: abc\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.buttons.logoutQuestion: Are you sure you want to clear data-set?\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.team.recommendations: \uad8c\uc7a5 \uc0ac\ud56d \ubc0f \uc0ac\uc2e4\n\xa7 sidebar.team.building: Games\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 plugin.team_month.title: \ud504\ub85c\uc81d\ud2b8 \uc791\uc5c5 \uc77c\uc815\n\xa7 plugin.team_month.first: (\uccab \uadfc\ubb34\uc77c)\n\xa7 plugin.team_month.last: (\ub9c8\uc9c0\ub9c9 \uc791\uc5c5 \uc77c)\n\xa7 plugin.team_month.authors: All employees\n\xa7 plugin.team_month.types: All types\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.backlogDays: The delay of the task in the backlog before the start of development\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: *Task creation date* in the task tracker is calculated by its sequential number and the minimum date of any next Issue in the code. The method has a margin of error and, as a rule, the tasks turn out to be older. Frequent releases, fast bugfixes, and a large number of employees working on the code reduce this margin of error.\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.createdBefore: Created before\n\xa7 page.team.tasks.backlog: Development waiting\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.tasks.backlogTitle: Tasks undeveloped for over four months after being added to the task-tracker\n\xa7 page.team.tasks.charts.authors.title: Who is doing these tasks?\n\xa7 page.team.tasks.charts.authors.other: , etc.\n\xa7 page.team.tasks.charts.relative.title: Count relative to other tasks\n\xa7 page.team.tasks.charts.relative.backlog: backlog\n\xa7 page.team.tasks.charts.relative.all: other tasks\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: CHANGELOG.md\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.team.department.months.title: Possible number of employees in the department\n\xa7 page.team.department.months.description: It is assumed that the task tracker issues the serial numbers of the tasks. Knowing the maximum task number at the beginning and end of the month, we can find out the number of completed tasks. Knowing how many tasks the authors we know have closed this month, we can interpolate their work speed to all new tasks and assume the total number of employees whose work was not reflected in the git log.\n\xa7 page.team.department.months.date: Date\n\xa7 page.team.department.months.tasks: New tasks\n\xa7 page.team.department.months.tasksInWeek: in week\n\xa7 page.team.department.months.fixed: was fixed\n\xa7 page.team.department.months.authors: Worked\n\xa7 page.team.department.months.allAuthors: total number of employees in the department\n\xa7 page.team.building.races.title: The speed of closing tasks\n\xa7 page.team.building.races.go: Let\'s go!\n\xa7 page.team.building.swimmingPool.title: Maximum commit message length\n\xa7 page.team.building.quiz.start: Start a quiz\n\xa7 page.team.building.quiz.next: Next question\n\xa7 page.team.building.quiz.replay: Re-play?\n\xa7 page.team.building.quiz.question01: Who made the first commit?\n\xa7 page.team.building.quiz.question02: Who closed more tasks?\n\xa7 page.team.building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 page.team.building.quiz.question04: Who has been working on the project the longest?\n\xa7 page.team.building.quiz.question05: Who worked the least on the project?\n\xa7 page.team.building.quiz.question08: Who has the longest commit signatures?\n\xa7 page.team.building.quiz.question09: Who has the shortest commit signatures?\n\xa7 page.team.building.quiz.question11: How many people have quit?\n\xa7 page.team.building.quiz.question12: How many people helped the project?\n\xa7 page.team.building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 page.team.building.quiz.question14: What type of tasks have been added more?\n\xa7 page.team.building.quiz.question15: How many days do they work on the project on average?\n\xa7 page.team.building.quiz.question16: Who created the most directories?\n\xa7 page.team.building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 page.team.building.quiz.question18: Who clicks the "Merge" button for PR more often than others?\n\xa7 page.team.building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 page.team.building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 page.team.building.quiz.begin: How well do you know the team?\n\xa7 page.team.building.quiz.result1.title: Not enough\n\xa7 page.team.building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 page.team.building.quiz.result2.title: Well\n\xa7 page.team.building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 page.team.building.quiz.result3.title: Great\n\xa7 page.team.building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n\xa7 page.team.recommendations.alert: Warning\n\xa7 page.team.recommendations.warning: Pay attention\n\xa7 page.team.recommendations.fact: Facts about the project\n\xa7 page.team.recommendations.info: General tips\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.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.publicity: Special\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'].join(""),qe=["\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.moreChangeTimeZone.title: Aaaaa-viasales\n\xa7 achievements.moreChangeTimeZone.description: changed location more often than anyone else\n\xa7 achievements.publicitySitnik.title: Sitnik approves\n\xa7 achievements.publicitySitnik.description: the first who added the PostCSS or Browserslist config\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\xa7 common.confirm.title: Are you sure you want to remove it?\n\xa7 common.confirm.yes: Yes, I am sure.\n\xa7 common.confirm.no: Cancel\n\xa7 common.confirm.abc: abc\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.buttons.logoutQuestion: Are you sure you want to clear data-set?\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.team.recommendations: Recommendations\n\xa7 sidebar.team.building: Games\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.author.absence.title: Vacation schedule\n\xa7 page.team.author.absence.vacation: Vacation\n\xa7 page.team.author.absence.transfer: Department change\n\xa7 page.team.author.absence.from: from\n\xa7 page.team.author.absence.to: to\n\xa7 page.team.author.absence.duration: days\n\xa7 page.team.hours.title: Distribution of commits during each day of the week\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last days\n\xa7 plugin.team_month.filters.authors: All employees\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed time zone)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first work day)\n\xa7 plugin.team_month.work.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.backlogDays: The delay of the task in the backlog before the start of development\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: *Task creation date* in the task tracker is calculated by its sequential number and the minimum date of any next Issue in the code. The method has a margin of error and, as a rule, the tasks turn out to be older. Frequent releases, fast bugfixes, and a large number of employees working on the code reduce this margin of error.\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.createdBefore: Created before\n\xa7 page.team.tasks.backlog: Development waiting\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.tasks.backlogTitle: Tasks undeveloped for over four months after being added to the task-tracker\n\xa7 page.team.tasks.charts.authors.title: Who is doing these tasks?\n\xa7 page.team.tasks.charts.authors.other: , etc.\n\xa7 page.team.tasks.charts.relative.title: Count relative to other tasks\n\xa7 page.team.tasks.charts.relative.backlog: backlog\n\xa7 page.team.tasks.charts.relative.all: other tasks\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: CHANGELOG.md\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.team.department.months.title: Possible number of employees in the department\n\xa7 page.team.department.months.description: It is assumed that the task tracker issues the serial numbers of the tasks. Knowing the maximum task number at the beginning and end of the month, we can find out the number of completed tasks. Knowing how many tasks the authors we know have closed this month, we can interpolate their work speed to all new tasks and assume the total number of employees whose work was not reflected in the git log.\n\xa7 page.team.department.months.date: Date\n\xa7 page.team.department.months.tasks: New tasks\n\xa7 page.team.department.months.tasksInWeek: in week\n\xa7 page.team.department.months.fixed: was fixed\n\xa7 page.team.department.months.authors: Worked\n\xa7 page.team.department.months.allAuthors: total number of employees in the department\n\xa7 page.team.building.races.title: The speed of closing tasks\n\xa7 page.team.building.races.go: Let\'s go!\n\xa7 page.team.building.swimmingPool.title: Maximum commit message length\n\xa7 page.team.building.quiz.start: Start a quiz\n\xa7 page.team.building.quiz.next: Next question\n\xa7 page.team.building.quiz.replay: Re-play?\n\xa7 page.team.building.quiz.question01: Who made the first commit?\n\xa7 page.team.building.quiz.question02: Who closed more tasks?\n\xa7 page.team.building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 page.team.building.quiz.question04: Who has been working on the project the longest?\n\xa7 page.team.building.quiz.question05: Who worked the least on the project?\n\xa7 page.team.building.quiz.question08: Who has the longest commit signatures?\n\xa7 page.team.building.quiz.question09: Who has the shortest commit signatures?\n\xa7 page.team.building.quiz.question11: How many people have quit?\n\xa7 page.team.building.quiz.question12: How many people helped the project?\n\xa7 page.team.building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 page.team.building.quiz.question14: What type of tasks have been added more?\n\xa7 page.team.building.quiz.question15: How many days do they work on the project on average?\n\xa7 page.team.building.quiz.question16: Who created the most directories?\n\xa7 page.team.building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 page.team.building.quiz.question18: Who clicks the "Merge" button for PR more often than others?\n\xa7 page.team.building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 page.team.building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 page.team.building.quiz.begin: How well do you know the team?\n\xa7 page.team.building.quiz.result1.title: Not enough\n\xa7 page.team.building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 page.team.building.quiz.result2.title: Well\n\xa7 page.team.building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 page.team.building.quiz.result3.title: Great\n\xa7 page.team.building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n\xa7 page.team.recommendations.alert: Warning\n\xa7 page.team.recommendations.warning: Pay attention\n\xa7 page.team.recommendations.fact: Facts about the project\n\xa7 page.team.recommendations.info: General tips\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.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.publicity: Special\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("");function ze(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 Be={de:ze(Ne),en:ze(Pe),es:ze(Re),fr:ze(Oe),ja:ze(Le),pt:ze(Me),ru:ze(Fe),zh:ze(qe),ko:ze(We)},Ue=navigator.languages.filter((e=>2===e.length&&Be[e])).shift()||"en";const He="\u200b";function Ge(e){const t=function(e){const t=[];for(let a=0;a<e.length;a++){const s=e[a],i=e[a+1];if(!s)continue;const[o,r]=[(n=s)[0],n[n.length-1]];if(s&&!i){if(o===He){t.push("\u2014 ".concat(s," ").concat(e[a+2]," (").concat(e[a+3],");")),a+=3;continue}}else if(s&&i){if("%"===r){t.push("\u2014 ".concat(s," ").concat(i,";")),a+=2;continue}if(o===He&&r===He){t.push("\u2014 ".concat(s," ").concat(i)),a+=2;continue}if(o===He){const e=/(\p{Ll})(\p{Lu})/gu;t.push(";".concat(s.replace(e,"$1;$2")));continue}if(r===He){t.push(";".concat(s.split(He).filter((e=>e)).join(";")," "));continue}}t.push(s)}var n;return t}(e.split("\n"));return function(e){let t="";for(let n=0;n<e.length;n++){const a=e[n],s=e[n+1];if(s){if("\u2014"!==a[0]&&"\u2014"===s[0]){t+="\n".concat(a,":\n");continue}if("\u2014"===a[0]&&"\u2014"!==s[0]){t+="".concat(a,"\n\n");continue}}t+="".concat(a,"\n")}return t.replace(/\n{3,}/gm,"\n\n").replaceAll(He,"")}(t)}function Ve(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 Ke={};function $e(){return"undefined"!==typeof globalThis?globalThis:"undefined"!==typeof window?window:"undefined"!==typeof n.g?n.g:"undefined"!==typeof self?self:Ke}var Ye=Object.assign,Xe=Object.getOwnPropertyDescriptor,Qe=Object.defineProperty,Je=Object.prototype,Ze=[];Object.freeze(Ze);var et={};Object.freeze(et);var tt="undefined"!==typeof Proxy,nt=Object.toString();function at(){tt||Ve("Proxy not available")}function st(e){var t=!1;return function(){if(!t)return t=!0,e.apply(this,arguments)}}var it=function(){};function ot(e){return"function"===typeof e}function rt(e){switch(typeof e){case"string":case"symbol":case"number":return!0}return!1}function lt(e){return null!==e&&"object"===typeof e}function mt(e){if(!lt(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()===nt}function ct(e){var t=null==e?void 0:e.constructor;return!!t&&("GeneratorFunction"===t.name||"GeneratorFunction"===t.displayName)}function ut(e,t,n){Qe(e,t,{enumerable:!1,writable:!0,configurable:!0,value:n})}function pt(e,t,n){Qe(e,t,{enumerable:!1,writable:!1,configurable:!0,value:n})}function dt(e,t){var n="isMobX"+e;return t.prototype[n]=!0,function(e){return lt(e)&&!0===e[n]}}function ht(e){return e instanceof Map}function gt(e){return e instanceof Set}var ft="undefined"!==typeof Object.getOwnPropertySymbols;var yt="undefined"!==typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:ft?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames;function vt(e){return null===e?null:"object"===typeof e?""+e:e}function _t(e,t){return Je.hasOwnProperty.call(e,t)}var kt=Object.getOwnPropertyDescriptors||function(e){var t={};return yt(e).forEach((function(n){t[n]=Xe(e,n)})),t};function bt(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 wt(e,t,n){return t&&bt(e.prototype,t),n&&bt(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function xt(){return xt=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},xt.apply(this,arguments)}function Tt(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,Ct(e,t)}function Ct(e,t){return Ct=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Ct(e,t)}function St(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function jt(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 Dt(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 jt(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)?jt(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 At=Symbol("mobx-stored-annotations");function Et(e){return Object.assign((function(t,n){It(t,n,e)}),e)}function It(e,t,n){_t(e,At)||ut(e,At,xt({},e[At])),function(e){return e.annotationType_===Wt}(n)||(e[At][t]=n)}var Nt=Symbol("mobx administration"),Pt=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_=Pn.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 sa(this)},t.reportChanged=function(){na(),ia(this),aa()},t.toString=function(){return this.name_},e}(),Rt=dt("Atom",Pt);function Ot(e,t,n){void 0===t&&(t=it),void 0===n&&(n=it);var a,s=new Pt(e);return t!==it&&ja(Ca,s,t,a),n!==it&&Sa(s,n),s}var Lt={identity:function(e,t){return e===t},structural:function(e,t){return Vs(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 Vs(e,t,1)}};function Mt(e,t,n){return za(e)?e:Array.isArray(e)?fn.array(e,{name:n}):mt(e)?fn.object(e,void 0,{name:n}):ht(e)?fn.map(e,{name:n}):gt(e)?fn.set(e,{name:n}):"function"!==typeof e||ba(e)||Wa(e)?e:ct(e)?Ma(e):ka(n,e)}function Ft(e){return e}var Wt="override";function qt(e,t){return{annotationType_:e,options_:t,make_:zt,extend_:Bt}}function zt(e,t,n,a){var s;if(null!=(s=this.options_)&&s.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(ba(n.value))return 1;var i=Ut(e,this,t,n,!1);return Qe(a,t,i),2}function Bt(e,t,n,a){var s=Ut(e,this,t,n);return e.defineProperty_(t,s,a)}function Ut(e,t,n,a,s){var i,o,r,l,m,c,u,p;void 0===s&&(s=Jn.safeDescriptors),p=a,t.annotationType_,p.value;var d,h=a.value;null!=(i=t.options_)&&i.bound&&(h=h.bind(null!=(d=e.proxy_)?d:e.target_));return{value:Sn(null!=(o=null==(r=t.options_)?void 0:r.name)?o:n.toString(),h,null!=(l=null==(m=t.options_)?void 0:m.autoAction)&&l,null!=(c=t.options_)&&c.bound?null!=(u=e.proxy_)?u:e.target_:void 0),configurable:!s||e.isPlainObject_,enumerable:!1,writable:!s}}function Ht(e,t){return{annotationType_:e,options_:t,make_:Gt,extend_:Vt}}function Gt(e,t,n,a){var s;if(a===e.target_)return null===this.extend_(e,t,n,!1)?0:2;if(null!=(s=this.options_)&&s.bound&&(!_t(e.target_,t)||!Wa(e.target_[t]))&&null===this.extend_(e,t,n,!1))return 0;if(Wa(n.value))return 1;var i=Kt(e,this,t,n,!1,!1);return Qe(a,t,i),2}function Vt(e,t,n,a){var s,i=Kt(e,this,t,n,null==(s=this.options_)?void 0:s.bound);return e.defineProperty_(t,i,a)}function Kt(e,t,n,a,s,i){var o;void 0===i&&(i=Jn.safeDescriptors),o=a,t.annotationType_,o.value;var r,l=a.value;(Wa(l)||(l=Ma(l)),s)&&((l=l.bind(null!=(r=e.proxy_)?r:e.target_)).isMobXFlow=!0);return{value:l,configurable:!i||e.isPlainObject_,enumerable:!1,writable:!i}}function $t(e,t){return{annotationType_:e,options_:t,make_:Yt,extend_:Xt}}function Yt(e,t,n){return null===this.extend_(e,t,n,!1)?0:1}function Xt(e,t,n,a){return function(e,t,n,a){t.annotationType_,a.get;0}(0,this,0,n),e.defineComputedProperty_(t,xt({},this.options_,{get:n.get,set:n.set}),a)}function Qt(e,t){return{annotationType_:e,options_:t,make_:Jt,extend_:Zt}}function Jt(e,t,n){return null===this.extend_(e,t,n,!1)?0:1}function Zt(e,t,n,a){var s,i;return function(e,t,n,a){t.annotationType_;0}(0,this),e.defineObservableProperty_(t,n.value,null!=(s=null==(i=this.options_)?void 0:i.enhancer)?s:Mt,a)}var en=tn();function tn(e){return{annotationType_:"true",options_:e,make_:nn,extend_:an}}function nn(e,t,n,a){var s,i,o,r;if(n.get)return kn.make_(e,t,n,a);if(n.set){var l=Sn(t.toString(),n.set);return a===e.target_?null===e.defineProperty_(t,{configurable:!Jn.safeDescriptors||e.isPlainObject_,set:l})?0:2:(Qe(a,t,{configurable:!0,set:l}),2)}if(a!==e.target_&&"function"===typeof n.value)return ct(n.value)?(null!=(r=this.options_)&&r.autoBind?Ma.bound:Ma).make_(e,t,n,a):(null!=(o=this.options_)&&o.autoBind?ka.bound:ka).make_(e,t,n,a);var m,c=!1===(null==(s=this.options_)?void 0:s.deep)?fn.ref:fn;"function"===typeof n.value&&null!=(i=this.options_)&&i.autoBind&&(n.value=n.value.bind(null!=(m=e.proxy_)?m:e.target_));return c.make_(e,t,n,a)}function an(e,t,n,a){var s,i,o;if(n.get)return kn.extend_(e,t,n,a);if(n.set)return e.defineProperty_(t,{configurable:!Jn.safeDescriptors||e.isPlainObject_,set:Sn(t.toString(),n.set)},a);"function"===typeof n.value&&null!=(s=this.options_)&&s.autoBind&&(n.value=n.value.bind(null!=(o=e.proxy_)?o:e.target_));return(!1===(null==(i=this.options_)?void 0:i.deep)?fn.ref:fn).extend_(e,t,n,a)}var sn={deep:!0,name:void 0,defaultDecorator:void 0,proxy:!0};function on(e){return e||sn}Object.freeze(sn);var rn=Qt("observable"),ln=Qt("observable.ref",{enhancer:Ft}),mn=Qt("observable.shallow",{enhancer:function(e,t,n){return void 0===e||null===e||As(e)||ps(e)||_s(e)||ws(e)?e:Array.isArray(e)?fn.array(e,{name:n,deep:!1}):mt(e)?fn.object(e,void 0,{name:n,deep:!1}):ht(e)?fn.map(e,{name:n,deep:!1}):gt(e)?fn.set(e,{name:n,deep:!1}):void 0}}),cn=Qt("observable.struct",{enhancer:function(e,t){return Vs(e,t)?t:e}}),un=Et(rn);function pn(e){return!0===e.deep?Mt:!1===e.deep?Ft:function(e){var t,n;return e&&null!=(t=null==(n=e.options_)?void 0:n.enhancer)?t:Mt}(e.defaultDecorator)}function dn(e,t,n){if(!rt(t))return za(e)?e:mt(e)?fn.object(e,t,n):Array.isArray(e)?fn.array(e,t):ht(e)?fn.map(e,t):gt(e)?fn.set(e,t):"object"===typeof e&&null!==e?e:fn.box(e,t);It(e,t,rn)}Object.assign(dn,un);var hn,gn,fn=Ye(dn,{box:function(e,t){var n=on(t);return new Nn(e,pn(n),n.name,!0,n.equals)},array:function(e,t){var n=on(t);return(!1===Jn.useProxies||!1===n.proxy?zs:as)(e,pn(n),n.name)},map:function(e,t){var n=on(t);return new vs(e,pn(n),n.name)},set:function(e,t){var n=on(t);return new bs(e,pn(n),n.name)},object:function(e,t,n){return Ea(!1===Jn.useProxies||!1===(null==n?void 0:n.proxy)?Ss({},n):function(e,t){var n,a;return at(),e=Ss(e,t),null!=(a=(n=e[Nt]).proxy_)?a:n.proxy_=new Proxy(e,Ga)}({},n),e,t)},ref:Et(ln),shallow:Et(mn),deep:un,struct:Et(cn)}),yn="computed",vn=$t(yn),_n=$t("computed.struct",{equals:Lt.structural}),kn=function(e,t){if(rt(t))return It(e,t,vn);if(mt(e))return Et($t(yn,e));var n=mt(t)?t:{};return n.get=e,n.name||(n.name=e.name||""),new On(n)};Object.assign(kn,vn),kn.struct=Et(_n);var bn,wn=0,xn=1,Tn=null!=(hn=null==(gn=Xe((function(){}),"name"))?void 0:gn.configurable)&&hn,Cn={value:"action",configurable:!0,writable:!1,enumerable:!1};function Sn(e,t,n,a){function s(){return jn(e,n,t,a||this,arguments)}return void 0===n&&(n=!1),s.isMobxAction=!0,Tn&&(Cn.value=e,Object.defineProperty(s,"name",Cn)),s}function jn(e,t,n,a,s){var i=function(e,t,n,a){var s=!1,i=0;0;var o=Jn.trackingDerivation,r=!t||!o;na();var l=Jn.allowStateChanges;r&&(Hn(),l=An(!0));var m=Vn(!0),c={runAsAction_:r,prevDerivation_:o,prevAllowStateChanges_:l,prevAllowStateReads_:m,notifySpy_:s,startTime_:i,actionId_:xn++,parentActionId_:wn};return wn=c.actionId_,c}(0,t);try{return n.apply(a,s)}catch(o){throw i.error_=o,o}finally{!function(e){wn!==e.actionId_&&Ve(30);wn=e.parentActionId_,void 0!==e.error_&&(Jn.suppressReactionErrors=!0);En(e.prevAllowStateChanges_),Kn(e.prevAllowStateReads_),aa(),e.runAsAction_&&Gn(e.prevDerivation_);0;Jn.suppressReactionErrors=!1}(i)}}function Dn(e,t){var n=An(e);try{return t()}finally{En(n)}}function An(e){var t=Jn.allowStateChanges;return Jn.allowStateChanges=e,t}function En(e){Jn.allowStateChanges=e}bn=Symbol.toPrimitive;var In,Nn=function(e){function t(t,n,a,s,i){var o;return void 0===a&&(a="ObservableValue"),void 0===s&&(s=!0),void 0===i&&(i=Lt.default),(o=e.call(this,a)||this).enhancer=void 0,o.name_=void 0,o.equals=void 0,o.hasUnreportedChange_=!1,o.interceptors_=void 0,o.changeListeners_=void 0,o.value_=void 0,o.dehancer=void 0,o.enhancer=n,o.name_=a,o.equals=i,o.value_=n(t,void 0,a),o}Tt(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))!==Jn.UNCHANGED){0,this.setNewValue_(e)}},n.prepareNewValue_=function(e){if(qn(this),Va(this)){var t=$a(this,{object:this,type:es,newValue:e});if(!t)return Jn.UNCHANGED;e=t.newValue}return e=this.enhancer(e,this.value_,this.name_),this.equals(this.value_,e)?Jn.UNCHANGED:e},n.setNewValue_=function(e){var t=this.value_;this.value_=e,this.reportChanged(),Ya(this)&&Qa(this,{type:es,object:this,newValue:e,oldValue:t})},n.get=function(){return this.reportObserved(),this.dehanceValue(this.value_)},n.intercept_=function(e){return Ka(this,e)},n.observe_=function(e,t){return t&&e({observableKind:"value",debugObjectName:this.name_,object:this,type:es,newValue:this.value_,oldValue:void 0}),Xa(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 vt(this.get())},n[bn]=function(){return this.valueOf()},t}(Pt);In=Symbol.toPrimitive;var Pn,Rn,On=function(){function e(e){this.dependenciesState_=Pn.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_=Pn.UP_TO_DATE_,this.unboundDepsCount_=0,this.value_=new Mn(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_=Rn.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||Ve(31),this.derivation=e.get,this.name_=e.name||"ComputedValue",e.set&&(this.setter_=Sn("ComputedValue-setter",e.set)),this.equals_=e.equals||(e.compareStructural||e.struct?Lt.structural:Lt.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_!==Pn.UP_TO_DATE_)return;e.lowestObserverState_=Pn.POSSIBLY_STALE_,e.observers_.forEach((function(e){e.dependenciesState_===Pn.UP_TO_DATE_&&(e.dependenciesState_=Pn.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_&&Ve(32,this.name_,this.derivation),0!==Jn.inBatch||0!==this.observers_.size||this.keepAlive_){if(sa(this),Wn(this)){var e=Jn.trackingContext;this.keepAlive_&&!e&&(Jn.trackingContext=this),this.trackAndCompute()&&function(e){if(e.lowestObserverState_===Pn.STALE_)return;e.lowestObserverState_=Pn.STALE_,e.observers_.forEach((function(t){t.dependenciesState_===Pn.POSSIBLY_STALE_?t.dependenciesState_=Pn.STALE_:t.dependenciesState_===Pn.UP_TO_DATE_&&(e.lowestObserverState_=Pn.UP_TO_DATE_)}))}(this),Jn.trackingContext=e}}else Wn(this)&&(this.warnAboutUntrackedRead_(),na(),this.value_=this.computeValue_(!1),aa());var t=this.value_;if(Fn(t))throw t.cause;return t},t.set=function(e){if(this.setter_){this.isRunningSetter_&&Ve(33,this.name_),this.isRunningSetter_=!0;try{this.setter_.call(this.scope_,e)}finally{this.isRunningSetter_=!1}}else Ve(34,this.name_)},t.trackAndCompute=function(){var e=this.value_,t=this.dependenciesState_===Pn.NOT_TRACKING_,n=this.computeValue_(!0),a=t||Fn(e)||Fn(n)||!this.equals_(e,n);return a&&(this.value_=n),a},t.computeValue_=function(e){this.isComputing_=!0;var t,n=An(!1);if(e)t=zn(this,this.derivation,this.scope_);else if(!0===Jn.disableErrorBoundaries)t=this.derivation.call(this.scope_);else try{t=this.derivation.call(this.scope_)}catch(a){t=new Mn(a)}return En(n),this.isComputing_=!1,t},t.suspend_=function(){this.keepAlive_||(Bn(this),this.value_=void 0)},t.observe_=function(e,t){var n=this,a=!0,s=void 0;return wa((function(){var i=n.get();if(!a||t){var o=Hn();e({observableKind:"computed",debugObjectName:n.name_,type:es,object:n,newValue:i,oldValue:s}),Gn(o)}a=!1,s=i}))},t.warnAboutUntrackedRead_=function(){},t.toString=function(){return this.name_+"["+this.derivation.toString()+"]"},t.valueOf=function(){return vt(this.get())},t[In]=function(){return this.valueOf()},e}(),Ln=dt("ComputedValue",On);!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_"}(Pn||(Pn={})),function(e){e[e.NONE=0]="NONE",e[e.LOG=1]="LOG",e[e.BREAK=2]="BREAK"}(Rn||(Rn={}));var Mn=function(e){this.cause=void 0,this.cause=e};function Fn(e){return e instanceof Mn}function Wn(e){switch(e.dependenciesState_){case Pn.UP_TO_DATE_:return!1;case Pn.NOT_TRACKING_:case Pn.STALE_:return!0;case Pn.POSSIBLY_STALE_:for(var t=Vn(!0),n=Hn(),a=e.observing_,s=a.length,i=0;i<s;i++){var o=a[i];if(Ln(o)){if(Jn.disableErrorBoundaries)o.get();else try{o.get()}catch(r){return Gn(n),Kn(t),!0}if(e.dependenciesState_===Pn.STALE_)return Gn(n),Kn(t),!0}}return $n(e),Gn(n),Kn(t),!1}}function qn(e){}function zn(e,t,n){var a=Vn(!0);$n(e),e.newObserving_=new Array(e.observing_.length+100),e.unboundDepsCount_=0,e.runId_=++Jn.runId;var s,i=Jn.trackingDerivation;if(Jn.trackingDerivation=e,Jn.inBatch++,!0===Jn.disableErrorBoundaries)s=t.call(n);else try{s=t.call(n)}catch(o){s=new Mn(o)}return Jn.inBatch--,Jn.trackingDerivation=i,function(e){for(var t=e.observing_,n=e.observing_=e.newObserving_,a=Pn.UP_TO_DATE_,s=0,i=e.unboundDepsCount_,o=0;o<i;o++){var r=n[o];0===r.diffValue_&&(r.diffValue_=1,s!==o&&(n[s]=r),s++),r.dependenciesState_>a&&(a=r.dependenciesState_)}n.length=s,e.newObserving_=null,i=t.length;for(;i--;){var l=t[i];0===l.diffValue_&&ea(l,e),l.diffValue_=0}for(;s--;){var m=n[s];1===m.diffValue_&&(m.diffValue_=0,Zn(m,e))}a!==Pn.UP_TO_DATE_&&(e.dependenciesState_=a,e.onBecomeStale_())}(e),Kn(a),s}function Bn(e){var t=e.observing_;e.observing_=[];for(var n=t.length;n--;)ea(t[n],e);e.dependenciesState_=Pn.NOT_TRACKING_}function Un(e){var t=Hn();try{return e()}finally{Gn(t)}}function Hn(){var e=Jn.trackingDerivation;return Jn.trackingDerivation=null,e}function Gn(e){Jn.trackingDerivation=e}function Vn(e){var t=Jn.allowStateReads;return Jn.allowStateReads=e,t}function Kn(e){Jn.allowStateReads=e}function $n(e){if(e.dependenciesState_!==Pn.UP_TO_DATE_){e.dependenciesState_=Pn.UP_TO_DATE_;for(var t=e.observing_,n=t.length;n--;)t[n].lowestObserverState_=Pn.UP_TO_DATE_}}var Yn=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},Xn=!0,Qn=!1,Jn=function(){var e=$e();return e.__mobxInstanceCount>0&&!e.__mobxGlobals&&(Xn=!1),e.__mobxGlobals&&e.__mobxGlobals.version!==(new Yn).version&&(Xn=!1),Xn?e.__mobxGlobals?(e.__mobxInstanceCount+=1,e.__mobxGlobals.UNCHANGED||(e.__mobxGlobals.UNCHANGED={}),e.__mobxGlobals):(e.__mobxInstanceCount=1,e.__mobxGlobals=new Yn):(setTimeout((function(){Qn||Ve(35)}),1),new Yn)}();function Zn(e,t){e.observers_.add(t),e.lowestObserverState_>t.dependenciesState_&&(e.lowestObserverState_=t.dependenciesState_)}function ea(e,t){e.observers_.delete(t),0===e.observers_.size&&ta(e)}function ta(e){!1===e.isPendingUnobservation_&&(e.isPendingUnobservation_=!0,Jn.pendingUnobservations.push(e))}function na(){Jn.inBatch++}function aa(){if(0===--Jn.inBatch){la();for(var e=Jn.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 On&&n.suspend_())}Jn.pendingUnobservations=[]}}function sa(e){var t=Jn.trackingDerivation;return null!==t?(t.runId_!==e.lastAccessedBy_&&(e.lastAccessedBy_=t.runId_,t.newObserving_[t.unboundDepsCount_++]=e,!e.isBeingObserved_&&Jn.trackingContext&&(e.isBeingObserved_=!0,e.onBO())),e.isBeingObserved_):(0===e.observers_.size&&Jn.inBatch>0&&ta(e),!1)}function ia(e){e.lowestObserverState_!==Pn.STALE_&&(e.lowestObserverState_=Pn.STALE_,e.observers_.forEach((function(e){e.dependenciesState_===Pn.UP_TO_DATE_&&e.onBecomeStale_(),e.dependenciesState_=Pn.STALE_})))}var oa=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_=Pn.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_=Rn.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,Jn.pendingReactions.push(this),la())},t.isScheduled=function(){return this.isScheduled_},t.runReaction_=function(){if(!this.isDisposed_){na(),this.isScheduled_=!1;var e=Jn.trackingContext;if(Jn.trackingContext=this,Wn(this)){this.isTrackPending_=!0;try{this.onInvalidate_()}catch(t){this.reportExceptionInDerivation_(t)}}Jn.trackingContext=e,aa()}},t.track=function(e){if(!this.isDisposed_){na();0,this.isRunning_=!0;var t=Jn.trackingContext;Jn.trackingContext=this;var n=zn(this,e,void 0);Jn.trackingContext=t,this.isRunning_=!1,this.isTrackPending_=!1,this.isDisposed_&&Bn(this),Fn(n)&&this.reportExceptionInDerivation_(n.cause),aa()}},t.reportExceptionInDerivation_=function(e){var t=this;if(this.errorHandler_)this.errorHandler_(e,this);else{if(Jn.disableErrorBoundaries)throw e;var n="[mobx] uncaught error in '"+this+"'";Jn.suppressReactionErrors||console.error(n,e),Jn.globalReactionErrorHandlers.forEach((function(n){return n(e,t)}))}},t.dispose=function(){this.isDisposed_||(this.isDisposed_=!0,this.isRunning_||(na(),Bn(this),aa()))},t.getDisposer_=function(){var e=this.dispose.bind(this);return e[Nt]=this,e},t.toString=function(){return"Reaction["+this.name_+"]"},t.trace=function(e){void 0===e&&(e=!1),function(){Ve("trace() is not available in production builds");for(var e=!1,t=arguments.length,n=new Array(t),a=0;a<t;a++)n[a]=arguments[a];"boolean"===typeof n[n.length-1]&&(e=n.pop());var s=Ba(n);if(!s)return Ve("'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_===Rn.NONE&&console.log("[mobx.trace] '"+s.name_+"' tracing enabled");s.isTracing_=e?Rn.BREAK:Rn.LOG}(this,e)},e}();var ra=function(e){return e()};function la(){Jn.inBatch>0||Jn.isRunningReactions||ra(ma)}function ma(){Jn.isRunningReactions=!0;for(var e=Jn.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,s=n.length;a<s;a++)n[a].runReaction_()}Jn.isRunningReactions=!1}var ca=dt("Reaction",oa);var ua="action",pa="autoAction",da="<unnamed action>",ha=qt(ua),ga=qt("action.bound",{bound:!0}),fa=qt(pa,{autoAction:!0}),ya=qt("autoAction.bound",{autoAction:!0,bound:!0});function va(e){return function(t,n){return ot(t)?Sn(t.name||da,t,e):ot(n)?Sn(t,n,e):rt(n)?It(t,n,e?fa:ha):rt(t)?Et(qt(e?pa:ua,{name:t,autoAction:e})):void 0}}var _a=va(!1);Object.assign(_a,ha);var ka=va(!0);function ba(e){return ot(e)&&!0===e.isMobxAction}function wa(e,t){var n,a;void 0===t&&(t=et);var s,i=null!=(n=null==(a=t)?void 0:a.name)?n:"Autorun";if(!t.scheduler&&!t.delay)s=new oa(i,(function(){this.track(l)}),t.onError,t.requiresObservable);else{var o=Ta(t),r=!1;s=new oa(i,(function(){r||(r=!0,o((function(){r=!1,s.isDisposed_||s.track(l)})))}),t.onError,t.requiresObservable)}function l(){e(s)}return s.schedule_(),s.getDisposer_()}Object.assign(ka,fa),_a.bound=Et(ga),ka.bound=Et(ya);var xa=function(e){return e()};function Ta(e){return e.scheduler?e.scheduler:e.delay?function(t){return setTimeout(t,e.delay)}:xa}var Ca="onBO";function Sa(e,t,n){return ja("onBUO",e,t,n)}function ja(e,t,n,a){var s="function"===typeof a?Bs(t,n):Bs(t),i=ot(a)?a:n,o=e+"L";return s[o]?s[o].add(i):s[o]=new Set([i]),function(){var e=s[o];e&&(e.delete(i),0===e.size&&delete s[o])}}var Da="always";function Aa(e){!0===e.isolateGlobalState&&function(){if((Jn.pendingReactions.length||Jn.inBatch||Jn.isRunningReactions)&&Ve(36),Qn=!0,Xn){var e=$e();0===--e.__mobxInstanceCount&&(e.__mobxGlobals=void 0),Jn=new Yn}}();var t=e.useProxies,n=e.enforceActions;if(void 0!==t&&(Jn.useProxies=t===Da||"never"!==t&&"undefined"!==typeof Proxy),"ifavailable"===t&&(Jn.verifyProxies=!0),void 0!==n){var a=n===Da?Da:"observed"===n;Jn.enforceActions=a,Jn.allowStateChanges=!0!==a&&a!==Da}["computedRequiresReaction","reactionRequiresObservable","observableRequiresReaction","disableErrorBoundaries","safeDescriptors"].forEach((function(t){t in e&&(Jn[t]=!!e[t])})),Jn.allowStateReads=!Jn.observableRequiresReaction,e.reactionScheduler&&function(e){var t=ra;ra=function(n){return e((function(){return t(n)}))}}(e.reactionScheduler)}function Ea(e,t,n,a){var s=kt(t),i=Ss(e,a)[Nt];na();try{yt(s).forEach((function(e){i.extend_(e,s[e],!n||(!(e in n)||n[e]))}))}finally{aa()}return e}function Ia(e,t){return Na(Bs(e,t))}function Na(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(Na)),n}var Pa=0;function Ra(){this.message="FLOW_CANCELLED"}Ra.prototype=Object.create(Error.prototype);var Oa=Ht("flow"),La=Ht("flow.bound",{bound:!0}),Ma=Object.assign((function(e,t){if(rt(t))return It(e,t,Oa);var n=e,a=n.name||"<unnamed flow>",s=function(){var e,t=this,s=arguments,i=++Pa,o=_a(a+" - runid: "+i+" - init",n).apply(t,s),r=void 0,l=new Promise((function(t,n){var s=0;function l(e){var t;r=void 0;try{t=_a(a+" - runid: "+i+" - yield "+s++,o.next).call(o,e)}catch(l){return n(l)}c(t)}function m(e){var t;r=void 0;try{t=_a(a+" - runid: "+i+" - yield "+s++,o.throw).call(o,e)}catch(l){return n(l)}c(t)}function c(e){if(!ot(null==e?void 0:e.then))return e.done?t(e.value):(r=Promise.resolve(e.value)).then(l,m);e.then(c,n)}e=n,l(void 0)}));return l.cancel=_a(a+" - runid: "+i+" - cancel",(function(){try{r&&Fa(r);var t=o.return(void 0),n=Promise.resolve(t.value);n.then(it,it),Fa(n),e(new Ra)}catch(a){e(a)}})),l};return s.isMobXFlow=!0,s}),Oa);function Fa(e){ot(e.cancel)&&e.cancel()}function Wa(e){return!0===(null==e?void 0:e.isMobXFlow)}function qa(e,t){return!!e&&(void 0!==t?!!As(e)&&e[Nt].values_.has(t):As(e)||!!e[Nt]||Rt(e)||ca(e)||Ln(e))}function za(e){return qa(e)}function Ba(e){switch(e.length){case 0:return Jn.trackingDerivation;case 1:return Bs(e[0]);case 2:return Bs(e[0],e[1])}}function Ua(e,t){void 0===t&&(t=void 0),na();try{return e.apply(t)}finally{aa()}}function Ha(e){return e[Nt]}Ma.bound=Et(La);var Ga={has:function(e,t){return Ha(e).has_(t)},get:function(e,t){return Ha(e).get_(t)},set:function(e,t,n){var a;return!!rt(t)&&(null==(a=Ha(e).set_(t,n,!0))||a)},deleteProperty:function(e,t){var n;return!!rt(t)&&(null==(n=Ha(e).delete_(t,!0))||n)},defineProperty:function(e,t,n){var a;return null==(a=Ha(e).defineProperty_(t,n))||a},ownKeys:function(e){return Ha(e).ownKeys_()},preventExtensions:function(e){Ve(13)}};function Va(e){return void 0!==e.interceptors_&&e.interceptors_.length>0}function Ka(e,t){var n=e.interceptors_||(e.interceptors_=[]);return n.push(t),st((function(){var e=n.indexOf(t);-1!==e&&n.splice(e,1)}))}function $a(e,t){var n=Hn();try{for(var a=[].concat(e.interceptors_||[]),s=0,i=a.length;s<i&&((t=a[s](t))&&!t.type&&Ve(14),t);s++);return t}finally{Gn(n)}}function Ya(e){return void 0!==e.changeListeners_&&e.changeListeners_.length>0}function Xa(e,t){var n=e.changeListeners_||(e.changeListeners_=[]);return n.push(t),st((function(){var e=n.indexOf(t);-1!==e&&n.splice(e,1)}))}function Qa(e,t){var n=Hn(),a=e.changeListeners_;if(a){for(var s=0,i=(a=a.slice()).length;s<i;s++)a[s](t);Gn(n)}}function Ja(e,t,n){var a=Ss(e,n)[Nt];na();try{0,null!=t||(t=function(e){return _t(e,At)||ut(e,At,xt({},e[At])),e[At]}(e)),yt(t).forEach((function(e){return a.make_(e,t[e])}))}finally{aa()}return e}var Za="splice",es="update",ts={get:function(e,t){var n=e[Nt];return t===Nt?n:"length"===t?n.getArrayLength_():"string"!==typeof t||isNaN(t)?_t(ss,t)?ss[t]:e[t]:n.get_(parseInt(t))},set:function(e,t,n){var a=e[Nt];return"length"===t&&a.setArrayLength_(n),"symbol"===typeof t||isNaN(t)?e[t]=n:a.set_(parseInt(t),n),!0},preventExtensions:function(){Ve(15)}},ns=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 Pt(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 Ka(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}),Xa(this,e)},t.getArrayLength_=function(){return this.atom_.reportObserved(),this.values_.length},t.setArrayLength_=function(e){("number"!==typeof e||isNaN(e)||e<0)&&Ve("Out of range: "+e);var t=this.values_.length;if(e!==t)if(e>t){for(var n=new Array(e-t),a=0;a<e-t;a++)n[a]=void 0;this.spliceWithArray_(t,0,n)}else this.spliceWithArray_(e,t-e)},t.updateArrayLength_=function(e,t){e!==this.lastKnownLength_&&Ve(16),this.lastKnownLength_+=t,this.legacyMode_&&t>0&&qs(e+t+1)},t.spliceWithArray_=function(e,t,n){var a=this;this.atom_;var s=this.values_.length;if(void 0===e?e=0:e>s?e=s:e<0&&(e=Math.max(0,s+e)),t=1===arguments.length?s-e:void 0===t||null===t?0:Math.max(0,Math.min(t,s-e)),void 0===n&&(n=Ze),Va(this)){var i=$a(this,{object:this.proxy_,type:Za,index:e,removedCount:t,added:n});if(!i)return Ze;t=i.removedCount,n=i.added}if(n=0===n.length?n:n.map((function(e){return a.enhancer_(e,void 0)})),this.legacyMode_){var o=n.length-t;this.updateArrayLength_(s,o)}var r=this.spliceItemsIntoValues_(e,t,n);return 0===t&&0===n.length||this.notifyArraySplice_(e,n,r),this.dehanceValues_(r)},t.spliceItemsIntoValues_=function(e,t,n){var a;if(n.length<1e4)return(a=this.values_).splice.apply(a,[e,t].concat(n));var s=this.values_.slice(e,e+t),i=this.values_.slice(e+t);this.values_.length+=n.length-t;for(var o=0;o<n.length;o++)this.values_[e+o]=n[o];for(var r=0;r<i.length;r++)this.values_[e+n.length+r]=i[r];return s},t.notifyArrayChildUpdate_=function(e,t,n){var a=!this.owned_&&!1,s=Ya(this),i=s||a?{observableKind:"array",object:this.proxy_,type:es,debugObjectName:this.atom_.name_,index:e,newValue:t,oldValue:n}:null;this.atom_.reportChanged(),s&&Qa(this,i)},t.notifyArraySplice_=function(e,t,n){var a=!this.owned_&&!1,s=Ya(this),i=s||a?{observableKind:"array",object:this.proxy_,debugObjectName:this.atom_.name_,type:Za,index:e,removed:n,added:t,removedCount:n.length,addedCount:t.length}:null;this.atom_.reportChanged(),s&&Qa(this,i)},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&&Ve(17,e,n.length),e<n.length){this.atom_;var a=n[e];if(Va(this)){var s=$a(this,{type:es,object:this.proxy_,index:e,newValue:t});if(!s)return;t=s.newValue}(t=this.enhancer_(t,a))!==a&&(n[e]=t,this.notifyArrayChildUpdate_(e,t,a))}else{for(var i=new Array(e+1-n.length),o=0;o<i.length-1;o++)i[o]=void 0;i[i.length-1]=t,this.spliceWithArray_(n.length,0,i)}},e}();function as(e,t,n,a){void 0===n&&(n="ObservableArray"),void 0===a&&(a=!1),at();var s=new ns(n,t,a,!1);pt(s.values_,Nt,s);var i=new Proxy(s.values_,ts);if(s.proxy_=i,e&&e.length){var o=An(!0);s.spliceWithArray_(0,0,e),En(o)}return i}var ss={clear:function(){return this.splice(0)},replace:function(e){var t=this[Nt];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),s=2;s<n;s++)a[s-2]=arguments[s];var i=this[Nt];switch(arguments.length){case 0:return[];case 1:return i.spliceWithArray_(e);case 2:return i.spliceWithArray_(e,t)}return i.spliceWithArray_(e,t,a)},spliceWithArray:function(e,t,n){return this[Nt].spliceWithArray_(e,t,n)},push:function(){for(var e=this[Nt],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[Nt].values_.length-1,0),1)[0]},shift:function(){return this.splice(0,1)[0]},unshift:function(){for(var e=this[Nt],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 Jn.trackingDerivation&&Ve(37,"reverse"),this.replace(this.slice().reverse()),this},sort:function(){Jn.trackingDerivation&&Ve(37,"sort");var e=this.slice();return e.sort.apply(e,arguments),this.replace(e),this},remove:function(e){var t=this[Nt],n=t.dehanceValues_(t.values_).indexOf(e);return n>-1&&(this.splice(n,1),!0)}};function is(e,t){"function"===typeof Array.prototype[e]&&(ss[e]=t(e))}function os(e){return function(){var t=this[Nt];t.atom_.reportObserved();var n=t.dehanceValues_(t.values_);return n[e].apply(n,arguments)}}function rs(e){return function(t,n){var a=this,s=this[Nt];return s.atom_.reportObserved(),s.dehanceValues_(s.values_)[e]((function(e,s){return t.call(n,e,s,a)}))}}function ls(e){return function(){var t=this,n=this[Nt];n.atom_.reportObserved();var a=n.dehanceValues_(n.values_),s=arguments[0];return arguments[0]=function(e,n,a){return s(e,n,a,t)},a[e].apply(a,arguments)}}is("concat",os),is("flat",os),is("includes",os),is("indexOf",os),is("join",os),is("lastIndexOf",os),is("slice",os),is("toString",os),is("toLocaleString",os),is("every",rs),is("filter",rs),is("find",rs),is("findIndex",rs),is("flatMap",rs),is("forEach",rs),is("map",rs),is("some",rs),is("reduce",ls),is("reduceRight",ls);var ms,cs,us=dt("ObservableArrayAdministration",ns);function ps(e){return lt(e)&&us(e[Nt])}var ds={},hs="add",gs="delete";ms=Symbol.iterator,cs=Symbol.toStringTag;var fs,ys,vs=function(){function e(e,t,n){var a=this;void 0===t&&(t=Mt),void 0===n&&(n="ObservableMap"),this.enhancer_=void 0,this.name_=void 0,this[Nt]=ds,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,ot(Map)||Ve(18),this.keysAtom_=Ot("ObservableMap.keys()"),this.data_=new Map,this.hasMap_=new Map,Dn(!0,(function(){a.merge(e)}))}var t=e.prototype;return t.has_=function(e){return this.data_.has(e)},t.has=function(e){var t=this;if(!Jn.trackingDerivation)return this.has_(e);var n=this.hasMap_.get(e);if(!n){var a=n=new Nn(this.has_(e),Ft,"ObservableMap.key?",!1);this.hasMap_.set(e,a),Sa(a,(function(){return t.hasMap_.delete(e)}))}return n.get()},t.set=function(e,t){var n=this.has_(e);if(Va(this)){var a=$a(this,{type:n?es:hs,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_,Va(this))&&!$a(this,{type:gs,object:this,name:e}))return!1;if(this.has_(e)){var n=Ya(this),a=n?{observableKind:"map",debugObjectName:this.name_,type:gs,object:this,oldValue:this.data_.get(e).value_,name:e}:null;return Ua((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&&Qa(this,a),!0}return!1},t.updateValue_=function(e,t){var n=this.data_.get(e);if((t=n.prepareNewValue_(t))!==Jn.UNCHANGED){var a=Ya(this),s=a?{observableKind:"map",debugObjectName:this.name_,type:es,object:this,oldValue:n.value_,name:e,newValue:t}:null;0,n.setNewValue_(t),a&&Qa(this,s)}},t.addValue_=function(e,t){var n=this;this.keysAtom_,Ua((function(){var a,s=new Nn(t,n.enhancer_,"ObservableMap.key",!1);n.data_.set(e,s),t=s.value_,null==(a=n.hasMap_.get(e))||a.setNewValue_(!0),n.keysAtom_.reportChanged()}));var a=Ya(this),s=a?{observableKind:"map",debugObjectName:this.name_,type:hs,object:this,name:e,newValue:t}:null;a&&Qa(this,s)},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 Ys({next:function(){var n=t.next(),a=n.done,s=n.value;return{done:a,value:a?void 0:e.get(s)}}})},t.entries=function(){var e=this,t=this.keys();return Ys({next:function(){var n=t.next(),a=n.done,s=n.value;return{done:a,value:a?void 0:[s,e.get(s)]}}})},t[ms]=function(){return this.entries()},t.forEach=function(e,t){for(var n,a=Dt(this);!(n=a()).done;){var s=n.value,i=s[0],o=s[1];e.call(t,o,i,this)}},t.merge=function(e){var t=this;return _s(e)&&(e=new Map(e)),Ua((function(){mt(e)?function(e){var t=Object.keys(e);if(!ft)return t;var n=Object.getOwnPropertySymbols(e);return n.length?[].concat(t,n.filter((function(t){return Je.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)})):ht(e)?(e.constructor!==Map&&Ve(19,e),e.forEach((function(e,n){return t.set(n,e)}))):null!==e&&void 0!==e&&Ve(20,e)})),this},t.clear=function(){var e=this;Ua((function(){Un((function(){for(var t,n=Dt(e.keys());!(t=n()).done;){var a=t.value;e.delete(a)}}))}))},t.replace=function(e){var t=this;return Ua((function(){for(var n,a=function(e){if(ht(e)||_s(e))return e;if(Array.isArray(e))return new Map(e);if(mt(e)){var t=new Map;for(var n in e)t.set(n,e[n]);return t}return Ve(21,e)}(e),s=new Map,i=!1,o=Dt(t.data_.keys());!(n=o()).done;){var r=n.value;if(!a.has(r))if(t.delete(r))i=!0;else{var l=t.data_.get(r);s.set(r,l)}}for(var m,c=Dt(a.entries());!(m=c()).done;){var u=m.value,p=u[0],d=u[1],h=t.data_.has(p);if(t.set(p,d),t.data_.has(p)){var g=t.data_.get(p);s.set(p,g),h||(i=!0)}}if(!i)if(t.data_.size!==s.size)t.keysAtom_.reportChanged();else for(var f=t.data_.keys(),y=s.keys(),v=f.next(),_=y.next();!v.done;){if(v.value!==_.value){t.keysAtom_.reportChanged();break}v=f.next(),_=y.next()}t.data_=s})),this},t.toString=function(){return"[object ObservableMap]"},t.toJSON=function(){return Array.from(this)},t.observe_=function(e,t){return Xa(this,e)},t.intercept_=function(e){return Ka(this,e)},wt(e,[{key:"size",get:function(){return this.keysAtom_.reportObserved(),this.data_.size}},{key:cs,get:function(){return"Map"}}]),e}(),_s=dt("ObservableMap",vs);var ks={};fs=Symbol.iterator,ys=Symbol.toStringTag;var bs=function(){function e(e,t,n){void 0===t&&(t=Mt),void 0===n&&(n="ObservableSet"),this.name_=void 0,this[Nt]=ks,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,ot(Set)||Ve(22),this.atom_=Ot(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;Ua((function(){Un((function(){for(var t,n=Dt(e.data_.values());!(t=n()).done;){var a=t.value;e.delete(a)}}))}))},t.forEach=function(e,t){for(var n,a=Dt(this);!(n=a()).done;){var s=n.value;e.call(t,s,s,this)}},t.add=function(e){var t=this;if((this.atom_,Va(this))&&!$a(this,{type:hs,object:this,newValue:e}))return this;if(!this.has(e)){Ua((function(){t.data_.add(t.enhancer_(e,void 0)),t.atom_.reportChanged()}));var n=!1,a=Ya(this),s=a?{observableKind:"set",debugObjectName:this.name_,type:hs,object:this,newValue:e}:null;n,a&&Qa(this,s)}return this},t.delete=function(e){var t=this;if(Va(this)&&!$a(this,{type:gs,object:this,oldValue:e}))return!1;if(this.has(e)){var n=Ya(this),a=n?{observableKind:"set",debugObjectName:this.name_,type:gs,object:this,oldValue:e}:null;return Ua((function(){t.atom_.reportChanged(),t.data_.delete(e)})),n&&Qa(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 Ys({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 Ys({next:function(){return t<n.length?{value:e.dehanceValue_(n[t++]),done:!1}:{done:!0}}})},t.replace=function(e){var t=this;return ws(e)&&(e=new Set(e)),Ua((function(){Array.isArray(e)||gt(e)?(t.clear(),e.forEach((function(e){return t.add(e)}))):null!==e&&void 0!==e&&Ve("Cannot initialize set from "+e)})),this},t.observe_=function(e,t){return Xa(this,e)},t.intercept_=function(e){return Ka(this,e)},t.toJSON=function(){return Array.from(this)},t.toString=function(){return"[object ObservableSet]"},t[fs]=function(){return this.values()},wt(e,[{key:"size",get:function(){return this.atom_.reportObserved(),this.data_.size}},{key:ys,get:function(){return"Set"}}]),e}(),ws=dt("ObservableSet",bs),xs=Object.create(null),Ts="remove",Cs=function(){function e(e,t,n,a){void 0===t&&(t=new Map),void 0===a&&(a=en),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 Pt("ObservableObject.keys"),this.isPlainObject_=mt(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 On)return n.set(t),!0;if(Va(this)){var a=$a(this,{type:es,object:this.proxy_||this.target_,name:e,newValue:t});if(!a)return null;t=a.newValue}if((t=n.prepareNewValue_(t))!==Jn.UNCHANGED){var s=Ya(this),i=s?{type:es,observableKind:"object",debugObjectName:this.name_,object:this.proxy_||this.target_,oldValue:n.value_,name:e,newValue:t}:null;0,n.setNewValue_(t),s&&Qa(this,i)}return!0},t.get_=function(e){return Jn.trackingDerivation&&!_t(this.target_,e)&&this.has_(e),this.target_[e]},t.set_=function(e,t,n){return void 0===n&&(n=!1),_t(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(!Jn.trackingDerivation)return e in this.target_;this.pendingKeys_||(this.pendingKeys_=new Map);var t=this.pendingKeys_.get(e);return t||(t=new Nn(e in this.target_,Ft,"ObservableObject.key?",!1),this.pendingKeys_.set(e,t)),t.get()},t.make_=function(e,t){if(!0===t&&(t=this.defaultAnnotation_),!1!==t){if(Is(this,t,e),!(e in this.target_)){var n;if(null!=(n=this.target_[At])&&n[e])return;Ve(1,t.annotationType_,this.name_+"."+e.toString())}for(var a=this.target_;a&&a!==Je;){var s=Xe(a,e);if(s){var i=t.make_(this,e,s,a);if(0===i)return;if(1===i)break}a=Object.getPrototypeOf(a)}Es(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);Is(this,n,e);var s=n.extend_(this,e,t,a);return s&&Es(this,n,e),s},t.defineProperty_=function(e,t,n){void 0===n&&(n=!1);try{na();var a=this.delete_(e);if(!a)return a;if(Va(this)){var s=$a(this,{object:this.proxy_||this.target_,name:e,type:hs,newValue:t.value});if(!s)return null;var i=s.newValue;t.value!==i&&(t=xt({},t,{value:i}))}if(n){if(!Reflect.defineProperty(this.target_,e,t))return!1}else Qe(this.target_,e,t);this.notifyPropertyAddition_(e,t.value)}finally{aa()}return!0},t.defineObservableProperty_=function(e,t,n,a){void 0===a&&(a=!1);try{na();var s=this.delete_(e);if(!s)return s;if(Va(this)){var i=$a(this,{object:this.proxy_||this.target_,name:e,type:hs,newValue:t});if(!i)return null;t=i.newValue}var o=Ds(e),r={configurable:!Jn.safeDescriptors||this.isPlainObject_,enumerable:!0,get:o.get,set:o.set};if(a){if(!Reflect.defineProperty(this.target_,e,r))return!1}else Qe(this.target_,e,r);var l=new Nn(t,n,"ObservableObject.key",!1);this.values_.set(e,l),this.notifyPropertyAddition_(e,l.value_)}finally{aa()}return!0},t.defineComputedProperty_=function(e,t,n){void 0===n&&(n=!1);try{na();var a=this.delete_(e);if(!a)return a;if(Va(this))if(!$a(this,{object:this.proxy_||this.target_,name:e,type:hs,newValue:void 0}))return null;t.name||(t.name="ObservableObject.key"),t.context=this.proxy_||this.target_;var s=Ds(e),i={configurable:!Jn.safeDescriptors||this.isPlainObject_,enumerable:!1,get:s.get,set:s.set};if(n){if(!Reflect.defineProperty(this.target_,e,i))return!1}else Qe(this.target_,e,i);this.values_.set(e,new On(t)),this.notifyPropertyAddition_(e,void 0)}finally{aa()}return!0},t.delete_=function(e,t){if(void 0===t&&(t=!1),!_t(this.target_,e))return!0;if(Va(this)&&!$a(this,{object:this.proxy_||this.target_,name:e,type:Ts}))return null;try{var n,a;na();var s,i=Ya(this),o=this.values_.get(e),r=void 0;if(!o&&i)r=null==(s=Xe(this.target_,e))?void 0:s.value;if(t){if(!Reflect.deleteProperty(this.target_,e))return!1}else delete this.target_[e];if(o&&(this.values_.delete(e),o instanceof Nn&&(r=o.value_),ia(o)),this.keysAtom_.reportChanged(),null==(n=this.pendingKeys_)||null==(a=n.get(e))||a.set(e in this.target_),i){var l={type:Ts,observableKind:"object",object:this.proxy_||this.target_,debugObjectName:this.name_,oldValue:r,name:e};0,i&&Qa(this,l)}}finally{aa()}return!0},t.observe_=function(e,t){return Xa(this,e)},t.intercept_=function(e){return Ka(this,e)},t.notifyPropertyAddition_=function(e,t){var n,a,s=Ya(this);if(s){var i=s?{type:hs,observableKind:"object",debugObjectName:this.name_,object:this.proxy_||this.target_,name:e,newValue:t}:null;0,s&&Qa(this,i)}null==(n=this.pendingKeys_)||null==(a=n.get(e))||a.set(!0),this.keysAtom_.reportChanged()},t.ownKeys_=function(){return this.keysAtom_.reportObserved(),yt(this.target_)},t.keys_=function(){return this.keysAtom_.reportObserved(),Object.keys(this.target_)},e}();function Ss(e,t){var n;if(_t(e,Nt))return e;var a=null!=(n=null==t?void 0:t.name)?n:"ObservableObject",s=new Cs(e,new Map,String(a),function(e){var t;return e?null!=(t=e.defaultDecorator)?t:tn(e):void 0}(t));return ut(e,Nt,s),e}var js=dt("ObservableObjectAdministration",Cs);function Ds(e){return xs[e]||(xs[e]={get:function(){return this[Nt].getObservablePropValue_(e)},set:function(t){return this[Nt].setObservablePropValue_(e,t)}})}function As(e){return!!lt(e)&&js(e[Nt])}function Es(e,t,n){var a;null==(a=e.target_[At])||delete a[n]}function Is(e,t,n){}var Ns,Ps,Rs=Fs(0),Os=0,Ls=function(){};Ns=Ls,Ps=Array.prototype,Object.setPrototypeOf?Object.setPrototypeOf(Ns.prototype,Ps):void 0!==Ns.prototype.__proto__?Ns.prototype.__proto__=Ps:Ns.prototype=Ps;var Ms=function(e,t,n){function a(t,n,a,s){var i;void 0===a&&(a="ObservableArray"),void 0===s&&(s=!1),i=e.call(this)||this;var o=new ns(a,n,s,!0);if(o.proxy_=St(i),pt(St(i),Nt,o),t&&t.length){var r=An(!0);i.spliceWithArray(0,0,t),En(r)}return Object.defineProperty(St(i),"0",Rs),i}Tt(a,e);var s=a.prototype;return s.concat=function(){this[Nt].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 ps(e)?e.slice():e})))},s[n]=function(){var e=this,t=0;return Ys({next:function(){return t<e.length?{value:e[t++],done:!1}:{done:!0,value:void 0}}})},wt(a,[{key:"length",get:function(){return this[Nt].getArrayLength_()},set:function(e){this[Nt].setArrayLength_(e)}},{key:t,get:function(){return"Array"}}]),a}(Ls,Symbol.toStringTag,Symbol.iterator);function Fs(e){return{enumerable:!1,configurable:!0,get:function(){return this[Nt].get_(e)},set:function(t){this[Nt].set_(e,t)}}}function Ws(e){Qe(Ms.prototype,""+e,Fs(e))}function qs(e){if(e>Os){for(var t=Os;t<e+100;t++)Ws(t);Os=e}}function zs(e,t,n){return new Ms(e,t,n)}function Bs(e,t){if("object"===typeof e&&null!==e){if(ps(e))return void 0!==t&&Ve(23),e[Nt].atom_;if(ws(e))return e[Nt];if(_s(e)){if(void 0===t)return e.keysAtom_;var n=e.data_.get(t)||e.hasMap_.get(t);return n||Ve(25,t,Hs(e)),n}if(As(e)){if(!t)return Ve(26);var a=e[Nt].values_.get(t);return a||Ve(27,t,Hs(e)),a}if(Rt(e)||Ln(e)||ca(e))return e}else if(ot(e)&&ca(e[Nt]))return e[Nt];Ve(28)}function Us(e,t){return e||Ve(29),void 0!==t?Us(Bs(e,t)):Rt(e)||Ln(e)||ca(e)||_s(e)||ws(e)?e:e[Nt]?e[Nt]:void Ve(24,e)}function Hs(e,t){var n;if(void 0!==t)n=Bs(e,t);else{if(ba(e))return e.name;n=As(e)||_s(e)||ws(e)?Us(e):Bs(e)}return n.name_}Object.entries(ss).forEach((function(e){var t=e[0],n=e[1];"concat"!==t&&ut(Ms.prototype,t,n)})),qs(1e3);var Gs=Je.toString;function Vs(e,t,n){return void 0===n&&(n=-1),Ks(e,t,n)}function Ks(e,t,n,a,s){if(e===t)return 0!==e||1/e===1/t;if(null==e||null==t)return!1;if(e!==e)return t!==t;var i=typeof e;if("function"!==i&&"object"!==i&&"object"!=typeof t)return!1;var o=Gs.call(e);if(o!==Gs.call(t))return!1;switch(o){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=$s(e),t=$s(t);var r="[object Array]"===o;if(!r){if("object"!=typeof e||"object"!=typeof t)return!1;var l=e.constructor,m=t.constructor;if(l!==m&&!(ot(l)&&l instanceof l&&ot(m)&&m instanceof m)&&"constructor"in e&&"constructor"in t)return!1}if(0===n)return!1;n<0&&(n=-1),s=s||[];for(var c=(a=a||[]).length;c--;)if(a[c]===e)return s[c]===t;if(a.push(e),s.push(t),r){if((c=e.length)!==t.length)return!1;for(;c--;)if(!Ks(e[c],t[c],n-1,a,s))return!1}else{var u,p=Object.keys(e);if(c=p.length,Object.keys(t).length!==c)return!1;for(;c--;)if(!_t(t,u=p[c])||!Ks(e[u],t[u],n-1,a,s))return!1}return a.pop(),s.pop(),!0}function $s(e){return ps(e)?e.slice():ht(e)||_s(e)||gt(e)||ws(e)?Array.from(e.entries()):e}function Ys(e){return e[Symbol.iterator]=Xs,e}function Xs(){return this}if(["Symbol","Map","Set"].forEach((function(e){"undefined"===typeof $e()[e]&&Ve("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:Hs},$mobx:Nt}),!t.useState)throw new Error("mobx-react-lite requires React with Hooks support");if(!Ja)throw new Error("mobx-react-lite@3 requires mobx at least version 6 to be available");var Qs=n(164);function Js(e){e()}function Zs(e){return Ia(e)}var ei="undefined"===typeof FinalizationRegistry?void 0:FinalizationRegistry;function ti(e){return{reaction:e,mounted:!1,changedBeforeMount:!1,cleanAt:Date.now()+ni}}var ni=1e4;var ai=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 si=ei?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,s,i){var o=n++;return a.register(i,o,e),e.current=ti(s),e.current.finalizationRegistryCleanupToken=o,t.set(o,e.current),e.current},recordReactionAsCommitted:function(e){a.unregister(e),e.current&&e.current.finalizationRegistryCleanupToken&&t.delete(e.current.finalizationRegistryCleanupToken)},forceCleanupTimerToRunNowForTests:function(){},resetCleanupScheduleForTests:function(){}}}(ei):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,s){var i;return e.current=ti(a),i=e,t.add(i),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 s=ai(t),i=s.next();!i.done;i=s.next()){var o=i.value,r=o.current;r&&(r.reaction.dispose(),o.current=null)}}catch(l){n={error:l}}finally{try{i&&!i.done&&(a=s.return)&&a.call(s)}finally{if(n)throw n.error}}t.clear()}e&&(clearTimeout(e),e=void 0)}}}(),ii=si.addReactionToTrack,oi=si.recordReactionAsCommitted,ri=(si.resetCleanupScheduleForTests,si.forceCleanupTimerToRunNowForTests,!1);function li(){return ri}var mi=function(e,t){var n="function"===typeof Symbol&&e[Symbol.iterator];if(!n)return e;var a,s,i=n.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(a=i.next()).done;)o.push(a.value)}catch(r){s={error:r}}finally{try{a&&!a.done&&(n=i.return)&&n.call(i)}finally{if(s)throw s.error}}return o};function ci(e){return"observer".concat(e)}var ui=function(){};function pi(){return new ui}function di(e,n){if(void 0===n&&(n="observed"),li())return e();var a=mi(t.useState(pi),1)[0],s=mi(t.useState(),2)[1],i=function(){return s([])},o=t.useRef(null);if(!o.current)var r=new oa(ci(n),(function(){l.mounted?i():l.changedBeforeMount=!0})),l=ii(o,r,a);var m,c,u=o.current.reaction;if(t.useDebugValue(u,Zs),t.useEffect((function(){return oi(o),o.current?(o.current.mounted=!0,o.current.changedBeforeMount&&(o.current.changedBeforeMount=!1,i())):(o.current={reaction:new oa(ci(n),(function(){i()})),mounted:!0,changedBeforeMount:!1,cleanAt:1/0},i()),function(){o.current.reaction.dispose(),o.current=null}}),[]),u.track((function(){try{m=e()}catch(t){c=t}})),c)throw c;return m}var hi="function"===typeof Symbol&&Symbol.for,gi=hi?Symbol.for("react.forward_ref"):"function"===typeof t.forwardRef&&(0,t.forwardRef)((function(e){return null})).$$typeof,fi=hi?Symbol.for("react.memo"):"function"===typeof t.memo&&(0,t.memo)((function(e){return null})).$$typeof;function yi(e,n){var a;if(fi&&e.$$typeof===fi)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(li())return e;var s=null!==(a=null===n||void 0===n?void 0:n.forwardRef)&&void 0!==a&&a,i=e,o=e.displayName||e.name;if(gi&&e.$$typeof===gi&&(s=!0,"function"!==typeof(i=e.render)))throw new Error("[mobx-react-lite] `render` property of ForwardRef was not a function");var r,l,m=function(e,t){return di((function(){return i(e,t)}),o)};return""!==o&&(m.displayName=o),e.contextTypes&&(m.contextTypes=e.contextTypes),s&&(m=(0,t.forwardRef)(m)),m=(0,t.memo)(m),r=e,l=m,Object.keys(r).forEach((function(e){vi[e]||Object.defineProperty(l,e,Object.getOwnPropertyDescriptor(r,e))})),m}var vi={$$typeof:!0,render:!0,compare:!0,type:!0,displayName:!0};let _i;!function(e){e||(e=Js),Aa({reactionScheduler:e})}(Qs.unstable_batchedUpdates),function(e){e[e.MAIL=1]="MAIL",e[e.COMPANY=2]="COMPANY",e[e.ACCOUNT=3]="ACCOUNT",e[e.GITHUB=4]="GITHUB",e[e.NETWORK=5]="NETWORK",e[e.DEVICE=6]="DEVICE",e[e.UNKNOWN=7]="UNKNOWN"}(_i||(_i={}));const ki="PR_BITBUCKET",bi="PR_GITHUB",wi="PR_GITLAB",xi="MERGE",Ti="AUTO_MERGE",Ci=1,Si=2,ji=3,Di=4,Ai={commitsAfter1500:Si,commitsBefore1500:Si,workEveryTime:ji,workNotWork:ji,userNotWork:Si,userIsDied:Si,lessTasks:ji,moreTasks:Ci,everyMessageLong:Si,everyMessageShort:ji,shortestName:Si,longestName:Si,moreCommits:Si,lessCommits:ji,oneCommitOneTask:Si,moreLazyDays:ji,lessLazyDays:Ci,zeroLazyDays:Ci,moreWorkDays:Ci,moreScopes:Ci,lessScopes:ji,moreDaysForTask:ji,more2DaysForTask:ji,moreDaysInProject:Ci,lessDaysInProject:Si,more90DaysInProject:Ci,lessDaysForTask:Ci,adam:Si,more666DaysInProject:Ci,more777DaysInProject:Ci,moreRefactoring:Ci,moreStyle:Ci,hasCommitEveryTime:ji,more365DaysInProject:Ci,moreReadMe:Ci,moreTests:Ci,moreDevOps:Ci,longFilePath:Si,longFileName:Si,moreTasksInDay:Ci,moreLongWaitPR:ji,morePRMerge:Si,firstLastCommit:Si,haveNotEmail:Si,hasCommitFrom0to7:ji,longWaitPR:ji,lastCommit:Si,longTask:ji,noCommitOnDay:Si,firstCommit:Si,horoscope1:Si,horoscope2:Si,horoscope3:Si,horoscope4:Si,horoscope5:Si,horoscope6:Si,horoscope7:Si,horoscope8:Si,horoscope9:Si,horoscope10:Si,horoscope11:Si,horoscope12:Si,moreChangeTimeZone:Di,publicitySitnik:Di,longestMessage:Si,commitsAfter1800:Ci,more3YearsInProject:Ci,moreLintHint:Ci,moreAddedFolders:Si,workOnWeekends:ji,fileRush:Si,lessWorkDays:ji,moreOnHoliday:ji,moreCreateCode:Si,moreRemoveCode:Si,moreChangeCode:Si,github:Si,mackBook:Si,moreCommitsBeforeRelease:Si,ipInEmail:Si,languageErrors:Si,oneExtension:Si,allRelease:Si,removeCreateFile:Si,renameFile:Si};function Ei(e,t,n){const a=t.author.totalInfoByName.get(n),s=a.commitsByHour;if(a.commits>20){let t=0,n=0;const i=.7*a.commits;s.forEach(((e,a)=>{a>=15&&(t+=e),a<=13&&(n+=e)})),t>i&&e.push("commitsAfter1500"),n>i&&e.push("commitsBefore1500")}if(a.isStaff)e.push("userNotWork");else{s.slice(0,7).every((e=>e))&&e.push("hasCommitFrom0to7"),s.slice(10,18).some((e=>!e))&&e.push("noCommitOnDay"),s.slice(0,5).every((e=>!e))&&s.slice(18,24).every((e=>!e))&&e.push("commitsAfter1800"),s.every((e=>e))&&e.push("workEveryTime"),a.commitsByDayAndHour.every((e=>e.every((e=>e))))&&e.push("hasCommitEveryTime"),a.isDismissed&&e.push("userIsDied"),a.totalTaskInDay<1&&e.push("lessDaysForTask"),a.totalTaskInDay>2&&e.push("more2DaysForTask"),a.totalDays>90&&e.push("more90DaysInProject"),a.totalDays>=365&&e.push("more365DaysInProject"),a.totalDays>=666&&e.push("more666DaysInProject"),a.totalDays>=777&&e.push("more777DaysInProject"),a.totalDays>=1095&&e.push("more3YearsInProject"),a.totalWeekendsDaysWithCommits&&e.push("workOnWeekends");(t.tasks.longTaskByAuthor[n]||{})>92&&e.push("longTask")}0===a.totalDaysWithoutCommits&&e.push("zeroLazyDays"),a.commits>0&&0===a.totalTasks&&e.push("workNotWork"),a.totalTaskInCommits<2&&e.push("oneCommitOneTask"),a.device&&e.push("mackBook"),a.emails&&a.emails.forEach((n=>{const a=t.email.totalInfoByName.get(n);(null===a||void 0===a?void 0:a.type)===_i.GITHUB?e.push("github"):(null===a||void 0===a?void 0:a.type)===_i.NETWORK&&e.push("ipInEmail")})),e.push(function(e){const[t,n]=e.substring(5,10).split("-").map((e=>parseInt(e,10))),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,s)=>e||(a.from[1]===t&&n>=a.from[0]||a.to[1]===t&&n<=a.to[0]?"".concat(s+1):e)),"");return"horoscope".concat(a)}(a.firstCommitTimestamp));const i=t.pr.totalInfoByName[n]||{};return(null===i||void 0===i?void 0:i.maxDelayDays)>31&&e.push("longWaitPR"),(e=Array.from(new Set(e))).reduce(((e,t)=>{const n=Ai[t]-1;return e[n]?e[n].push(t):console.log("Achievement ".concat(t," not found.")),e}),[[],[],[],[]])}function Ii(e){return new Map(e.map((e=>[e,!0])))}const Ni=Ii([".eslintrc",".stylelintrc.json"]),Pi=Ii(["md","doc","docx","txt"]),Ri=Ii(["css","scss","less","style"]),Oi=Ii(["style","styles"]),Li=Ii(["browserslist-stats.json",".browserslistrc","postcss.config.js","postcss.config.ts"]),Mi=Ii(["test","mock","snap"]),Fi=Ii(["Dockerfile","gradlew","gradlew.bat","gradle.properties","docker-compose.yml"]);function Wi(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 qi(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 zi{constructor(){this.authors={}}addAuthor(e){this.authors[e]=[]}add(e,t,n){var a;const s=null===e||void 0===e||null===(a=e[0])||void 0===a?void 0:a[0];if(s){var i,o;if(t)null===(i=this.authors)||void 0===i||null===(o=i[s])||void 0===o||o.push(t);if(n){var r,l,m;const t=null===e||void 0===e||null===(r=e[e.length-1])||void 0===r?void 0:r[0];null===(l=this.authors)||void 0===l||null===(m=l[t])||void 0===m||m.push(n)}}}}var Bi=Se("getMinMaxValue");function Ui(e,t,n){const a={};return e.forEach((e=>{n(e);const s=(t,n)=>{a[t]||(a[t]=[]),a[t].push([e.author,n||0])};if(s("nameLength",e.author.length),s("messageLength",e.maxMessageLength),s("midMessageLength",e.middleMessageLength),s("tasks",e.totalTasks),s("days",e.totalDaysWithCommits),s("moreRefactoring",e.types.refactor),e.countries){s("manyTimeZone",e.countries.filter((e=>"+00:00"!==e.timezone)).length)}const i=t.timestamp.totalInfoByName[e.author];s("tasksInDay",i.tasksByTimestampCounter.max),s("commitsInDay",i.commitsByTimestampCounter.max);const o=t.pr.totalInfoByName[e.author]||{};s("moreLongWaitPR",null===o||void 0===o?void 0:o.maxDelayDays),s("morePRMerge",null===o||void 0===o?void 0:o.numberMergedPr),e.isStaff||(s("allDaysInProject",e.totalDays),s("lazyDays",e.totalDaysWithoutCommits),s("firstCommit",e.firstCommit))})),Object.keys(a).forEach((e=>{a[e].sort(((e,t)=>t[1]-e[1]))})),a}const Hi=new class{constructor(){Object.defineProperty(this,Bi,{value:Ui}),this.authors={}}updateByGrip(e,t){const n=e.author.totalInfo,a=new zi,s=Te(this,Bi)[Bi](n,e,(e=>{a.addAuthor(e.author)}));a.add(s.nameLength,"longestName","shortestName"),a.add(s.messageLength,"longestMessage"),a.add(s.midMessageLength,"everyMessageLong","everyMessageShort"),a.add(s.tasks,"moreTasks","lessTasks"),a.add(s.days,"moreWorkDays","lessWorkDays"),a.add(s.lazyDays,"moreLazyDays","lessLazyDays"),a.add(s.allDaysInProject,"moreDaysInProject","lessDaysInProject"),a.add(s.firstCommit,null,"adam"),a.add(s.moreRefactoring,"moreRefactoring"),a.add(s.tasksInDay,"moreTasksInDay"),a.add(s.commitsInDay,"moreCommits"),a.add(s.morePRMerge,"morePRMerge"),a.add(s.moreLongWaitPR,"moreLongWaitPR"),a.add(s.manyTimeZone,"moreChangeTimeZone");const i=e.firstLastCommit.maxData.author,o=e.firstLastCommit.minData.author;o===i?a.authors[o].push("firstLastCommit"):(a.authors[o].push("firstCommit"),a.authors[i].push("lastCommit")),function(e,t){if(!e.files.list.length)return;const n=[],a=[],s=[],i=[],o=[],r={author:"",length:0},l={author:"",length:0},m={author:"",milliseconds:1/0},c={};e.files.list.forEach((e=>{Ni.has(e.name)?n.push(Wi(e)):Pi.has(e.extension)?a.push(Wi(e)):Ri.has(e.extension)||Oi.has(e.name)?s.push(Wi(e)):Li.has(e.name)?null!==e&&void 0!==e&&e.firstCommit&&(null===e||void 0===e?void 0:e.firstCommit)<m.milliseconds&&(m.author=e.createAuthor,m.milliseconds=e.firstCommit):Mi.has(e.extension)||Mi.has(e.type)?i.push(Wi(e)):Fi.has(e.name)&&o.push(Wi(e)),c[e.createAuthor||""]=c[e.createAuthor||""]?c[e.createAuthor||""]+1:1,e.name.length>l.length&&(l.author=e.createAuthor,l.length=e.name.length),e.path.length>r.length&&(r.author=e.createAuthor,r.length=e.name.length)}));const u=Object.entries(c).sort(((e,t)=>t[1]-e[1])),p=Object.entries(e.tree.addedFoldersByAuthor).map((e=>[e[0],e[1].length]));t.add(qi(u),"fileRush"),t.add(qi(p),"moreAddedFolders"),t.add(qi(n.flat(2)),"moreLintHint"),t.add(qi(a.flat(2)),"moreReadMe"),t.add(qi(s.flat(2)),"moreStyle"),t.add(qi(i.flat(2)),"moreTests"),t.add(qi(o.flat(2)),"moreDevOps"),t.authors[r.author]&&t.authors[r.author].push("longFilePath"),t.authors[l.author]&&t.authors[l.author].push("longFileName"),m.author&&t.authors[m.author].push("publicitySitnik")}(t,a),n.forEach((t=>{const n=a.authors[t.author];this.authors[t.author]=Ei(n,e,t.author)}))}},Gi=Hi;function Vi(){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 Ki=864e5,$i=[3456e5,432e6,5184e5,0,Ki,1728e5,2592e5],Yi=new Map;function Xi(e,t){var n,a;const s=(null===(n=window)||void 0===n||null===(a=n.localization)||void 0===a?void 0:a.language)||"ru",i=Yi.get("".concat(s).concat(e).concat(t));if(i)return i;const o=new Date($i[e]).toLocaleString(Vi(),{weekday:t||"long"});return Yi.set("".concat(s).concat(e).concat(t),o),o}function Qi(e){const t=new Date(e),n=t.getDay()-1;return[t.toLocaleString(Vi(),{day:"numeric",month:"long",year:"numeric"}),Xi(n<0?6:n,"long")]}function Ji(e,t){if(!e)return"";return new Date(e).toLocaleString(Vi(),t||{day:"numeric",month:"long",year:"numeric"})}function Zi(e){return Ji(e,{day:"numeric",month:"long",year:"numeric"})}function eo(e){return Ji(e,{day:"numeric",month:"long",year:"numeric",hour:"numeric",minute:"numeric"})}function to(e){if(!e)return"";return new Date(e).toISOString().substring(0,10).split("-").reverse().join(".")}function no(e){let{from:t,to:n}=e;return t&&n?"".concat((a=t,Ji(a,{day:"numeric",month:"long"}))," \u2014 ").concat(Zi(n)):"".concat(Zi(t)).concat(Zi(n));var a}function ao(e){const t=Math.floor(e/365),n=Math.floor(e/30),a=n-12*t,s=e-30*n,i=function(){const e=new Intl.RelativeTimeFormat(Vi(),{numeric:"always",style:"long"});return(t,n)=>e.format(t,n).split(" ").slice(1).join(" ")}(),o=[];return t&&o.push(i(t,"year")),a&&o.push(i(a,"month")),s&&t<1&&o.push(i(s,"day")),o.join(" ")}const so=new class{constructor(){this.config={},this.workDaysInMonth=22,Ja(this,{config:fn,updateConfig:_a,updateConfigProperty:_a})}updateConfig(e){this.config=e;const t=this.config.workDays.filter(Boolean).length;this.workDaysInMonth=Math.ceil(30/7*t)}updateConfigProperty(e,t){this.updateConfig({...this.config,[e]:t})}getMiddleSalaryInMonth(){return this.config.middleSalaryInMonth}getMiddleSalaryInDay(){return this.getMiddleSalaryInMonth()/this.workDaysInMonth}getMiddleVacationPayInDay(){return this.getMiddleSalaryInMonth()/30}};let io={};function oo(e,t){var n;const a=(null===so||void 0===so||null===(n=so.config)||void 0===n?void 0:n.currency)||"USD";return function(e,t){return"USD"!==t&&e?(io[t]||1)*e:e}(e||0,a).toLocaleString(Vi(),{style:"currency",currency:a,currencyDisplay:"symbol",maximumFractionDigits:0,...t||{}})}function ro(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return oo(e,{notation:"compact",maximumFractionDigits:t})}function lo(e){return e<10?"0".concat(e):e}function mo(e){if(e===1/0||e===-1/0)return"\u2014";const t=(e<0?-1*e:e)<15?1:0;return(e||0).toFixed(t)}const co="error",uo="warning",po="fact",ho="info",go={timestamp:{weekendDays:{title:"recommendations.timestamp.common.title",description:"recommendations.timestamp.weekendDays.description",type:co,arguments:{title:[]}},lossesDays:{title:"recommendations.timestamp.common.title",description:"recommendations.timestamp.lossesDays.description",type:uo,arguments:{title:[]}},allDays:{title:"recommendations.timestamp.common.title",description:"recommendations.timestamp.allDays.description",type:po,arguments:{title:[]}},firstCommit:{title:"",description:"recommendations.timestamp.firstCommit.description",type:po,arguments:{description:[]}},lastCommit:{title:"",description:"recommendations.timestamp.lastCommit.description",type:po,arguments:{description:[]}},regularWeekendWord:{title:"recommendations.timestamp.regularWeekendWord.title",description:"recommendations.timestamp.weekendWord.description",type:co},sometimeWeekendWord:{title:"recommendations.timestamp.sometimeWeekendWord.title",description:"recommendations.timestamp.weekendWord.description",type:co},neverWeekendWord:{title:"recommendations.timestamp.neverWeekendWord.title",description:"recommendations.timestamp.neverWeekendWord.description",type:po}},week:{lazyDaysDown:{title:"recommendations.week.lazyDays.down.title",description:"recommendations.week.lazyDays.down.description",type:po},lazyDaysUp:{title:"recommendations.week.lazyDays.up.title",description:"recommendations.week.lazyDays.up.description",type:co},notWork:{title:"recommendations.week.notWork.title",description:"recommendations.week.notWork.description",type:co},upWork:{title:"recommendations.week.upWork.title",description:"recommendations.week.upWork.description",type:co},taskUp:{title:"recommendations.week.task.up.title",description:"recommendations.week.task.up.description",type:po},taskDown:{title:"recommendations.week.task.down.title",description:"recommendations.week.task.down.description",type:co},taskLazyMaintainer:{description:"recommendations.week.task.lazyMaintainer.description",type:co}},type:{fewTypes:{title:"recommendations.type.fewTypes.title",description:"recommendations.type.fewTypes.description",type:po},diff:{title:"recommendations.type.diff.title",description:"recommendations.type.diff.description",type:ho},buddy:{title:"recommendations.type.buddy.title",description:"recommendations.type.buddy.description",type:ho},everyHasOne:{title:"recommendations.type.everyHasOne.title",description:["recommendations.type.everyHasOne.description","recommendations.type.common"],type:uo},oneMaintainer:{title:"recommendations.type.oneMaintainer.title",description:["recommendations.type.oneMaintainer.description","recommendations.type.common"],type:co,arguments:{description:[]}}},scope:{money:{description:"recommendations.scope.money",type:po},plan:{title:"recommendations.scope.plan.title",description:"recommendations.scope.plan.description",type:ho},cost:{title:"recommendations.scope.cost.title",description:"recommendations.scope.cost.description",type:ho},parallelismNot:{title:"recommendations.scope.parallelism.not.title",description:"recommendations.scope.parallelism.not.description",type:po},parallelismHas:{title:"recommendations.scope.parallelism.has.title",description:"recommendations.scope.parallelism.has.description",type:po},parallelismEvery:{title:"recommendations.scope.parallelism.every.title",description:"recommendations.scope.parallelism.every.description",type:po},busEveryHasOne:{title:"recommendations.scope.bus.everyHasOne.title",description:"recommendations.scope.bus.everyHasOne.description",type:uo},busOneMaintainer:{description:"recommendations.scope.bus.oneMaintainer",type:co},typesProcess:{title:"recommendations.scope.types.process.title",description:["recommendations.scope.types.process.description","recommendations.scope.types.common"],type:uo},typesOne:{description:["recommendations.scope.types.one","recommendations.scope.types.common"],type:uo}},hour:{onlyWork:{title:"recommendations.hour.onlyWork.title",description:"recommendations.hour.onlyWork.description",type:co},weekends:{title:"recommendations.hour.weekends.title",description:"recommendations.hour.weekends.description",type:co},easy:{title:"recommendations.hour.easy.title",description:"recommendations.hour.easy.description",type:uo}},author:{lotOfLazy:{title:"recommendations.author.lotOfLazy.title",description:"recommendations.author.lotOfLazy.description",type:co,arguments:{title:"",description:""}},manyLazy:{title:"recommendations.author.manyLazy.title",description:"recommendations.author.manyLazy.description",type:uo,arguments:{title:"",description:""}},oneTypeMans:{description:"recommendations.author.oneTypeMans",type:uo},workToday:{title:"recommendations.author.workToday.title",description:"recommendations.author.workToday.description",type:po,arguments:{title:"",description:""}},dismissed:{title:"recommendations.author.dismissed.title",description:"recommendations.author.dismissed.description",type:po,arguments:{title:"",description:""}},staff:{title:"recommendations.author.staff.title",description:"recommendations.author.staff.description",type:po,arguments:{title:"",description:""}},manager:{title:"recommendations.author.manager.title",description:"recommendations.author.manager.description",type:ho},shorTalk:{title:"recommendations.author.shorTalk.title",description:"recommendations.author.shorTalk.description",type:ho},ipr:{title:"recommendations.author.ipr.title",description:"recommendations.author.ipr.description",type:ho},oneToOne:{title:"recommendations.author.oneToOne.title",description:"recommendations.author.oneToOne.description",type:ho},club:{title:"recommendations.author.club.title",description:"recommendations.author.club.description",type:ho},projectTypeOpenSource:{title:"recommendations.author.projectType.openSource.title",description:"recommendations.author.projectType.openSource.description",type:po},projectTypeEasy:{title:"recommendations.author.projectType.easy.title",description:"recommendations.author.projectType.easy.description",type:co}}};function fo(e){function t(t){return go[e][t]}function n(e,n){return{...t(e),title:n}}return{getItem:t,getTitle:n,getArgTitle:function(e,n){return{...t(e),arguments:{title:n}}},getArgDescription:function(e,n){return{...t(e),arguments:{description:n}}},getTitleArgDescription:function(e,t,a){return{...n(e,t),arguments:{description:a}}},getArgTitleDescription:function(e,n,a){return{...t(e),arguments:{title:n,description:a}}}}}const{getArgTitle:yo,getTitleArgDescription:vo}=fo("timestamp");class _o{getTotalInfo(e){return e.author.list.reduce(((t,n)=>{const a=e.timestamp.totalInfoByName[n],s=e.author.totalInfoByName.get(n),i=a.workByDay[5]+a.workByDay[6];return t[n]=[],i&&t[n].push(yo("totalDaysWithCommits",[i])),s.daysLosses&&t[n].push(yo("totalDaysWithoutCommits",[s.daysLosses])),t[n].push(yo("totalDays",[s.daysAll])),t[n].push(this.getFirstDay(a)),t[n].push(this.getLastDay(a)),t}),{})}getFirstDay(e){const t=e.allCommitsByTimestamp[0],[n,a]=Qi(t.timestamp);return vo("firstCommit",n,[a])}getLastDay(e){const t=e.allCommitsByTimestamp[e.allCommitsByTimestamp.length-1],[n,a]=Qi(t.timestamp);return vo("lastCommit",n,[a])}}const{getItem:ko}=fo("week");class bo{getTotalInfo(e){const t=e.week.totalInfo.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]?ko("lazyDaysDown"):n[0]>n[1]&&n[1]>n[2]?ko("lazyDaysUp"):null}getNotWork(e,t){const n=e.map((e=>e.lazyDays[t]));return n[0]&&n[1]&&n[2]?ko("notWork"):null}getUpWork(e,t){const n=e.map((e=>e.weekDays[t]));return n[0]&&n[1]&&n[2]?ko("upWork"):null}getTasks(e,t){const n=e.map((e=>e.taskInDay[t]));return n[0]<n[1]&&n[1]<n[2]?ko("taskUp"):n[0]>n[1]&&n[1]>n[2]?ko("taskDown"):null}}const{getItem:wo,getTitle:xo,getArgTitleDescription:To}=fo("author");class Co{getTotalInfo(e){const t=[],n=[],a=[],s=[],i=[],o=[];let r=1;e.author.list.forEach((l=>{const m=e.author.totalInfoByName.get(l);if(m.isStaff)return void a.push(l);if(m.isDismissed)return void n.push(l);t.push(l);const c=m.totalDaysWithCommits/m.totalDaysWithoutCommits;c>=0&&c<3&&s.unshift(l),c>=3&&c<5&&i.unshift(l),r*=c;100*Object.values(m.types).sort().pop()/m.commits>=70&&o.unshift(l)})),r=r**(1/t.length);return[this.getProjectType(r),s.length?To("lotOfLazy",s.length,s.join(";\n- ")):null,i.length?To("manyLazy",i.length,i.join(";\n- ")):null,o.length?xo("oneTypeMans",o):null,t.length?To("workToday",t.length,t.join(";\n- ")):null,n.length?To("dismissed",n.length,n.join(";\n- ")):null,a.length?To("staff",a.length,a.join(";\n- ")):null,wo("manager"),wo("shorTalk"),wo("ipr"),wo("oneToOne"),wo("club")].filter((e=>e))}getProjectType(e){return e<1?wo("projectTypeOpenSource"):e<5?wo("projectTypeEasy"):null}}const{getItem:So}=fo("hour");class jo{getTotalInfo(e){if(e.author.list.length<2)return[];const t=e.team.totalInfo;return[this.getWeekIsWork(t)].filter((e=>e))}getWeekIsWork(e){const t=Math.min(...e.commitsByDay.slice(0,5)),n=Math.max(...e.commitsByDay.slice(5,7))/t;return n>.45?So("onlyWork"):n>.2?So("weekends"):n>0?So("easy"):null}}const{getItem:Do,getTitle:Ao}=fo("scope");class Eo{getTotalInfo(e){const t=oo(e.team.totalInfo.moneyWorked);return[this.getBusFactor(e),this.getManyTypes(e),this.getParallelism(e),Ao("money",t),Do("plan"),Do("cost")].filter((e=>e))}getParallelism(e){if(e.author.list.length<3||e.scope.list.length<3)return null;const t=[];e.scope.totalInfo.forEach((e=>{t.push(e.totalDaysWorkedByAuthor/e.totalDaysWorked)}));const n=t.reduce(((e,t)=>e+t),0)/t.length;return Do(n<1.3?"parallelismNot":n<2?"parallelismHas":"parallelismEvery")}getBusFactor(e){if(e.author.list.length<3||e.scope.list.length<3)return null;const t=e.scope.totalInfo.filter((e=>{const t=.8*e.commits;return Object.values(e.commitsByAuthor).some((e=>e>=t))})).map((e=>e.scope));if(!t.length)return null;return t.length>.6*e.scope.totalInfo.length?Do("busEveryHasOne"):Ao("busOneMaintainer",t)}getManyTypes(e){if(e.scope.list.length<3)return null;const t=e.scope.totalInfo.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.totalInfo.length?Do("typesProcess"):Ao("typesOne",t)}}const{getItem:Io,getArgTitle:No,getTitleArgDescription:Po}=fo("timestamp");class Ro{getTotalInfo(e){if(e.author.list.length<2)return[];const t=e.timestamp.totalInfo,n=t.workByDay[5]+t.workByDay[6],a=t.allCommitsByTimestamp.length;return[n?No("weekendDays",[n]):null,this.getWorkOnWeek(t.allCommitsByTimestamp.length,n),No("allDays",[a]),this.getFirstDay(t),this.getLastDay(t)].filter((e=>e))}getWorkOnWeek(e,t){const n=100*t/e;return n>13?Io("regularWeekendWord"):n>7?Io("sometimeWeekendWord"):n>2?Io("neverWeekendWord"):null}getFirstDay(e){const t=e.allCommitsByTimestamp[0],[n,a]=Qi(t.timestamp);return Po("firstCommit",n,[a])}getLastDay(e){const t=e.allCommitsByTimestamp[e.allCommitsByTimestamp.length-1],[n,a]=Qi(t.timestamp);return Po("lastCommit",n,[a])}}const{getItem:Oo,getArgDescription:Lo}=fo("type");class Mo{getTotalInfo(e){const t=e.type.totalInfo.filter((e=>e.tasks>20)).length<7;return[this.getBusFactor(e),t?Oo("fewTypes"):null,Oo("diff"),Oo("buddy")].filter((e=>e))}getBusFactor(e){if(e.author.list.length<2)return null;if(e.type.totalInfo.length>200)return null;const t=e.type.totalInfo.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.totalInfo.length?Oo("everyHasOne"):Lo("oneMaintainer",["- ".concat(t.join(";\n- "))])}}const{getItem:Fo,getTitle:Wo}=fo("week");class qo{getTotalInfo(e){if(e.author.list.length<2)return[];const t=e.week.totalInfo.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]?Fo("lazyDaysDown"):n[0]>n[1]&&n[1]>n[2]?Fo("lazyDaysUp"):null}getTasks(e,t){const n=t.map((e=>e.tasks/e.authorsLength));return n[0]<n[1]&&n[1]<n[2]?Fo("taskUp"):n[0]>n[1]&&n[1]>n[2]?Fo("taskDown"):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]?Wo("taskLazyMaintainer",n[0]):null}}class zo{constructor(){this.byScope=new Eo,this.byAuthor=new Co,this.byType=new Mo,this.byWeek=new qo,this.byTimestamp=new Ro,this.byHour=new jo,this.personByWeek=new bo,this.personByTimestamp=new _o,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={}}}var Bo=Se("removeExtremeValues");class Uo{constructor(e){Object.defineProperty(this,Bo,{value:Ho}),this.valueAndCount=new Map,(e||0===e)&&this.update(e)}update(e,t){const n=this.valueAndCount.get(e);n?n.count+=1:this.valueAndCount.set(e,{value:e,count:t||1})}clear(){this.valueAndCount=new Map}get(e){let t=0,n=0,a=Array.from(this.valueAndCount.values());return a.length?(e&&a.length>=20&&(a=e(a)),a.forEach((e=>{n+=e.value*e.count,t+=e.count})),n&&t?n/t:0):0}}function Ho(e){e.sort(((e,t)=>t.count-e.count));const t=.9*(e.length-1)>>0;return e.slice(0,t)}class Go{constructor(e,t,n){this.from=0,this.step=Ki,this.weightedAverage=[],this.from=e,this.weightedAverage=new Array(n).fill(1).map((()=>new Uo)),this.step=(t-e)/n}getWeightedAverage(e){const t=(e-this.from)/this.step>>0;return this.weightedAverage[t]}getWeightedAverages(){return this.weightedAverage.map((e=>e.get()))}}function Vo(e,t,n){t&&(e[t]=(e[t]||0)+(null!==n&&void 0!==n?n:1))}function Ko(e,t){return e?{[e]:t||1}:{}}function $o(e,t,n){const a=t-e;if(a<Ki)return.5;const s=a/Ki,i=s>>0,o=i+(s-i>.5?1:.5);return n&&o>n?o-n:o}class Yo{constructor(e,t){this.min=1/0,this.max=-1/0,this.minData=void 0,this.maxData=void 0,(e||0===e)&&this.update(e,t)}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}}function Xo(e,t){return t>e?Math.ceil((t-e)/Ki):1}function Qo(e,t){return new Map(e?[[e,null!==t&&void 0!==t?t:1]]:[])}function Jo(e,t,n){if(!t)return;const a=e.get(t)||0;e.set(t,a+(null!==n&&void 0!==n?n:1))}function Zo(e){return new Set(e?[e]:[])}function er(e,t){t&&e.add(t)}function tr(e,t){const n=(e.isStaff?10:0)+(e.isDismissed?5:0)-((t.isStaff?10:0)+(t.isDismissed?5:0));if(n)return n;let a=t.totalTasks-e.totalTasks;return a||(a=t.commits-e.commits,a||t.lastCommit-e.lastCommit)}class nr{constructor(e){this.commitsByDayAndHour=[],this.commitsByHour=[],this.commitsByDayAndHour=new Array(7).fill(1).map((()=>new Array(24).fill(0))),this.commitsByHour=new Array(24).fill(0),this.addCommit(e)}addCommit(e){this.commitsByDayAndHour[e.day][e.hours]+=1,this.commitsByHour[e.hours]+=1}getTotalInfo(){return[this.commitsByDayAndHour,this.commitsByHour]}}var ar=Se("updateCommit"),sr=Se("addNewCommit");class ir{constructor(e){Object.defineProperty(this,sr,{value:rr}),Object.defineProperty(this,ar,{value:or}),this.commits=new Map,this.addCommit(e)}addCommit(e){if(!e.task)return;const t=this.commits.get(e.task);t?Te(this,ar)[ar](t,e):Te(this,sr)[sr](e)}getTotalInfo(e){const t=Array.from(this.commits.values()),n=t.length,a=new Uo,s=new Uo,i=new Uo;t.forEach((e=>{a.update(e.changes),s.update(e.commits),i.update(e.files.size)})),this.commits.clear();const o=(r=10,l="desc",e=>{const t="desc"===l?1:-1;e.sort(((e,n)=>n.count-e.count||(n.value-e.value)*t));const n=(e.length-1)*((100-r)/100)>>0;return e.slice(0,n)});var r,l;return{totalTasks:n,totalTaskInDay:n/e,totalTaskInChanges:a.get(),totalTaskInCommits:s.get(o),totalTaskInFiles:i.get(o)}}}function or(e,t){e.commits+=1,er(e.days,t.timestamp),e.changes+=t.added+t.changes-t.removed,t.fileChanges.forEach((t=>{e.files.add(t.id)}))}function rr(e){const t=e.fileChanges.map((e=>e.id));this.commits.set(e.task,{commits:1,days:Zo(e.timestamp),changes:e.added+e.changes-e.removed,files:new Set(t)})}var lr=Se("updateCommit"),mr=Se("addNewCommit");class cr{constructor(e){Object.defineProperty(this,mr,{value:pr}),Object.defineProperty(this,lr,{value:ur}),this.commits=new Map,this.addCommit(e)}addCommit(e){if(!e.company)return;const t=this.commits.get(e.company);t?Te(this,lr)[lr](t,e):Te(this,mr)[mr](e)}getTotalInfo(){const e=Array.from(this.commits.values());return this.commits.clear(),e}}function ur(e,t){e.to=t.milliseconds}function pr(e){this.commits.set(e.company,{title:e.company,from:e.milliseconds,to:e.milliseconds})}var dr=Se("addNewCommit"),hr=Se("updateCommit");class gr{constructor(){Object.defineProperty(this,hr,{value:yr}),Object.defineProperty(this,dr,{value:fr}),this.list=[],this.employment={},this.commits=new Map,this.totalInfo=[],this.totalInfoByName=new Map}clear(){this.list=[],this.commits.clear(),this.totalInfo=[],this.totalInfoByName.clear()}addCommit(e){const t=this.commits.get(e.author);t?Te(this,hr)[hr](t,e):Te(this,dr)[dr](e)}updateTotalInfo(e){const t=(null===e||void 0===e?void 0:e.milliseconds)-27648e5,n=so.getMiddleSalaryInMonth(),a=so.getMiddleSalaryInDay();this.totalInfo=Array.from(this.commits.values()).map((e=>{var s;const i=e.weekends.size,o=e.days.size+i,r=Xo(e.firstCommit,e.lastCommit),l=function(e,t){const n=Math.floor(.4777327935222672*t)-e+1;return n>0?n:0}(o,r),m=function(e,t,n,a){const s=100*e/(e+t),i=/[^a-z]bot[^a-z]/gim.test(a);return n<20||s<15||i}(o,l,r,e.author),c=e.lastCommit<t,u=e.company.getTotalInfo(),p=(null===(s=u[(null===u||void 0===u?void 0:u.length)-1])||void 0===s?void 0:s.title)||"";let d=i*a*2,h=Math.ceil(r/30)*n+d,g=o*a,f=l*a;m&&(d=0,h=0,g=0,f=0);const[y,v]=e.hour.getTotalInfo(),{totalTasks:_,totalTaskInDay:k,totalTaskInChanges:b,totalTaskInCommits:w,totalTaskInFiles:x}=e.tasks.getTotalInfo(o),T={author:e.author,commits:e.commits,commitsByDayAndHour:y,commitsByHour:v,firstCommit:e.firstCommit,firstCommitTimestamp:e.firstCommitTimestamp,lastCommit:e.lastCommit,lastCommitTimestamp:e.lastCommitTimestamp,lastCommitTimezone:e.lastCommitTimezone,lastCompany:p,lastCountry:e.lastCountry,totalDays:r,totalDaysWithCommits:o,totalWeekendsDaysWithCommits:e.weekends.size,totalDaysWithoutCommits:l,emails:Array.from(e.emails),device:e.device,countries:e.country,companies:u,totalScopes:e.scopes.size,totalTasks:_,totalTaskInDay:k,totalTaskInChanges:b,totalTaskInCommits:w,totalTaskInFiles:x,types:Object.fromEntries(e.types.entries()),isStaff:m,isDismissed:c,totalMoney:h,totalMoneyWorked:g,totalMoneyLosses:f,totalMoneyInWeekend:d,middleMessageLength:e.middleMessageLength.get(),maxMessageLength:e.maxMessageLength.max,wordStatistics:[]};return this.totalInfoByName.set(e.author,T),T})).sort(tr);const[s,i,o]=function(e){const t=[[],[],[]];return e.forEach((e=>{e.isStaff?t[2].push(e.author):e.isDismissed?t[1].push(e.author):t[0].push(e.author)})),t}(this.totalInfo);this.employment={active:s,dismissed:i,staff:o},this.list=[...s,...i,...o],this.commits.clear()}}function fr(e){var t,n;const a=!(null!==(t=so.config)&&void 0!==t&&null!==(n=t.workDays)&&void 0!==n&&n[e.day-1]),s=e.text.length||0;this.commits.set(e.author,{author:e.author,commits:1,firstCommit:e.milliseconds,lastCommit:e.milliseconds,firstCommitTimestamp:e.timestamp,lastCommitTimestamp:e.timestamp,lastCommitTimezone:e.timezone,days:Zo(a?void 0:e.timestamp),weekends:Zo(a?e.timestamp:void 0),tasks:new ir(e),types:Qo(e.type),hour:new nr(e),scopes:Zo(e.scope),emails:Zo(e.email),device:e.device,company:new cr(e),country:e.country?[{title:e.country,from:e.milliseconds,fromTimestamp:e.timestamp,fromTimezone:e.timezone}]:[],lastCountry:e.country,maxMessageLength:new Yo(s),middleMessageLength:new Uo(s)})}function yr(e,t){var n,a;e.commits+=1,e.lastCommit=t.milliseconds,e.lastCommitTimestamp=t.timestamp,e.lastCommitTimezone=t.timezone;er(!(null!==(n=so.config)&&void 0!==n&&null!==(a=n.workDays)&&void 0!==a&&a[t.day-1])?e.weekends:e.days,t.timestamp),e.tasks.addCommit(t),Jo(e.types,t.type),e.hour.addCommit(t),er(e.scopes,t.scope),er(e.emails,t.email),e.device=t.device||e.device,e.company.addCommit(t),t.country&&e.lastCountry!==t.country&&(e.country.push({title:t.country,from:t.milliseconds,fromTimestamp:t.timestamp,fromTimezone:t.timezone}),e.lastCountry=t.country);const s=t.text.length||0;e.maxMessageLength.update(s),e.middleMessageLength.update(s)}const vr=["commits","totalTaskInDay","totalWeekendsDaysWithCommits","totalDaysWithCommits","totalMoney","totalMoneyLosses","totalMoneyWorked","totalMoneyInWeekend"];class _r{constructor(){this.totalInfo={}}clear(){this.totalInfo={}}updateTotalInfo(e){const t={...Object.fromEntries(vr.map((e=>[e,0]))),commitsByDayAndHour:new Array(7).fill(1).map((()=>new Array(24).fill(0))),commitsByDay:new Array(7).fill(0),wordStatistics:{}};e.totalInfo.forEach((e=>{vr.forEach((n=>{"totalTaskInDay"===n&&(e.isStaff||e.isDismissed)||(t[n]+=e[n]||0)})),e.commitsByDayAndHour.forEach(((e,n)=>{e.forEach(((e,a)=>{t.commitsByDayAndHour[n][a]+=e,t.commitsByDay[n]+=e}))})),e.wordStatistics.slice(0,45).forEach((e=>{let[n,a]=e;t.wordStatistics[n]=t.wordStatistics[n]?t.wordStatistics[n]+a:a}))})),t.wordStatistics=Object.entries(t.wordStatistics).sort(((e,t)=>t[1]-e[1])),this.totalInfo=t}}var kr=Se("updateCommit"),br=Se("addNewCommit");class wr{constructor(e){Object.defineProperty(this,br,{value:Tr}),Object.defineProperty(this,kr,{value:xr}),this.commits=new Map,this.addCommit(e)}addCommit(e){if(!e.author)return;const t=this.commits.get(e.author);t?Te(this,kr)[kr](t,e):Te(this,br)[br](e)}getTotalInfo(){let e=0,t=0;const n={},a={};return Array.from(this.commits.values()).forEach((s=>{e+=s.days.size,t+=1,n[s.author]=s.commits,a[s.author]=s.tasks.size})),{totalDays:e,totalAuthors:t,commitsByAuthor:n,tasksByAuthor:a}}}function xr(e,t){e.commits+=1,e.days.add(t.timestamp),t.task&&e.tasks.add(t.task)}function Tr(e){this.commits.set(e.author,{author:e.author,commits:1,days:new Set([e.timestamp]),tasks:new Set(e.task?[e.task]:[])})}var Cr=Se("updateCommit"),Sr=Se("addNewCommit");class jr{constructor(){Object.defineProperty(this,Sr,{value:Ar}),Object.defineProperty(this,Cr,{value:Dr}),this.list=[],this.commits=new Map,this.totalInfo=[]}clear(){this.list=[],this.commits.clear(),this.totalInfo=[]}addCommit(e){const t=this.commits.get(e.scope);t?Te(this,Cr)[Cr](t,e):Te(this,Sr)[Sr](e)}updateTotalInfo(){const e=so.getMiddleSalaryInDay();this.totalInfo=Array.from(this.commits.values()).filter((e=>e.commits>5)).map((t=>{const{totalDays:n,totalAuthors:a,commitsByAuthor:s,tasksByAuthor:i}=t.authors.getTotalInfo();return{scope:t.scope,commits:t.commits,firstCommit:t.firstCommit,lastCommit:t.lastCommit,totalDaysWorked:t.days.size,totalDaysWorkedByAuthor:n,totalDays:Xo(t.firstCommit,t.lastCommit),totalTasks:t.tasks.size,totalAuthors:a,tasks:Array.from(t.tasks),types:Object.fromEntries(t.types.entries()),companies:Object.fromEntries(t.companies.entries()),commitsByAuthor:s,tasksByAuthor:i,cost:n*e}})).sort(((e,t)=>t.commits-e.commits)),this.list=this.totalInfo.map((e=>e.scope)),this.commits.clear()}}function Dr(e,t){e.commits+=1,e.lastCommit=t.milliseconds,e.days.add(t.timestamp),t.task&&e.tasks.add(t.task),Jo(e.types,t.type),Jo(e.companies,t.company),e.authors.addCommit(t)}function Ar(e){this.commits.set(e.scope,{scope:e.scope,commits:1,firstCommit:e.milliseconds,lastCommit:e.milliseconds,days:new Set([e.timestamp]),tasks:new Set(e.task?[e.task]:[]),types:Qo(e.type),companies:Qo(e.company),authors:new wr(e)})}var Er=Se("updateCommitByType"),Ir=Se("addCommitByType");class Nr{constructor(){Object.defineProperty(this,Ir,{value:Rr}),Object.defineProperty(this,Er,{value:Pr}),this.list=[],this.commits={},this.totalInfo=[]}clear(){this.list=[],this.commits={},this.totalInfo=[]}addCommit(e){this.commits.hasOwnProperty(e.type)?Te(this,Er)[Er](e):Te(this,Ir)[Ir](e)}updateTotalInfo(){this.totalInfo=Object.values(this.commits).filter((e=>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.totalInfo.map((e=>e.type))}}function Pr(e){const t=this.commits[e.type];t.commits+=1,t.days.set(e.timestamp,!0),t.tasks.set(e.task,!0),Vo(t.commitsByAuthors,e.author),t.daysByAuthors[e.author]||(t.daysByAuthors[e.author]={}),Vo(t.daysByAuthors[e.author],e.timestamp)}function Rr(e){this.commits[e.type]={type:e.type,commits:1,days:new Map([[e.timestamp,!0]]),tasks:new Map([[e.task,!0]]),commitsByAuthors:Ko(e.author,!0),daysByAuthors:{[e.author]:Ko(e.timestamp,!0)}}}var Or=Se("updateCommitByTimestamp"),Lr=Se("getDefaultCommitByTimestamp"),Mr=Se("getTotalInfo"),Fr=Se("getWeekendPaymentByAuthor");class Wr{constructor(){Object.defineProperty(this,Fr,{value:Ur}),Object.defineProperty(this,Mr,{value:Br}),Object.defineProperty(this,Lr,{value:zr}),Object.defineProperty(this,Or,{value:qr}),this.commits=new Map,this.commitsByAuthor=new Map,this.totalInfo=[],this.totalInfoByName={},this.clear()}clear(){this.commits.clear(),this.commitsByAuthor.clear(),this.totalInfo=[],this.totalInfoByName={}}addCommit(e){const t=this.commits.get(e.timestamp);t?Te(this,Or)[Or](t,e):this.commits.set(e.timestamp,Te(this,Lr)[Lr](e));let n=this.commitsByAuthor.get(e.author);n||(n=new Map,this.commitsByAuthor.set(e.author,n));const a=n.get(e.timestamp);a?Te(this,Or)[Or](a,e):n.set(e.timestamp,Te(this,Lr)[Lr](e))}updateTotalInfo(e){this.totalInfo=Te(this,Mr)[Mr](this.commits),this.totalInfo.weekendPayment=0;for(let t of this.commitsByAuthor.keys()){const n=Te(this,Mr)[Mr](this.commitsByAuthor.get(t));n.weekendPayment=Te(this,Fr)[Fr](n,e.totalInfoByName.get(t)),this.totalInfoByName[t||""]=n,this.totalInfo.weekendPayment+=n.weekendPayment}}}function qr(e,t){e.commits+=1,e.addedAndChanges+=t.added+t.changes,Vo(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 zr(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 Br(e){const t=Array.from(e.values()),n=new Yo,a=new Yo,s=new Yo,i=new Array(7).fill(0);return t.forEach((e=>{e.tasksInDay=Object.keys(e.tasks).length,i[e.day]+=1,n.update(e.commits,e),a.update(e.addedAndChanges,e),s.update(e.tasksInDay,e)})),{allCommitsByTimestamp:t,commitsByTimestampCounter:n,changesByTimestampCounter:a,tasksByTimestampCounter:s,workByDay:i,weekendPayment:0}}function Ur(e,t){if(t.isStaff)return 0;const n=so.getMiddleSalaryInMonth()/22*2;return e.workByDay[5]*n+e.workByDay[6]*n}var Hr=Se("getKey"),Gr=Se("update"),Vr=Se("add"),Kr=Se("updateDay"),$r=Se("addDay");class Yr{constructor(){Object.defineProperty(this,$r,{value:el}),Object.defineProperty(this,Kr,{value:Zr}),Object.defineProperty(this,Vr,{value:Jr}),Object.defineProperty(this,Gr,{value:Qr}),Object.defineProperty(this,Hr,{value:Xr}),this.months=new Map,this.totalInfo=[],this.maxCommitsInDay=0}clear(){this.months.clear(),this.totalInfo=[],this.maxCommitsInDay=0}addCommit(e){const t=Te(this,Hr)[Hr](e),n=this.months.get(t);n?Te(this,Gr)[Gr](n,e):Te(this,Vr)[Vr](e)}updateTotalInfo(e){this.totalInfo=Array.from(this.months.values()).map((t=>(t.days=Array.from(t.days.values()),t.tasksNumber=Array.from(t.tasksNumber).length,t.usersNumber=Array.from(t.usersNumber).filter((t=>{var n;return!(null!==(n=e.totalInfoByName[t])&&void 0!==n&&n.isStaff)})).length,t))).sort(((e,t)=>e.milliseconds-t.milliseconds)),this.months.clear()}}function Xr(e){return"".concat(e.year,"-").concat(e.month)}function Qr(e,t){const n=e.days.get(t.dayInMonth);n?Te(this,Kr)[Kr](n,t):Te(this,$r)[$r](e.days,t),e.tasksNumber.add(t.task),e.usersNumber.add(t.author)}function Jr(e){const t=Te(this,Hr)[Hr](e),n=new Map;Te(this,$r)[$r](n,e),this.months.set(t,{id:t,month:e.month,year:e.year,milliseconds:e.milliseconds,date:new Date(e.milliseconds),days:n,tasksNumber:new Set([e.task]),usersNumber:new Set([e.author])})}function Zr(e,t){e.commitsNumber+=1,e.userCommitNumbers.set(t.author,(e.userCommitNumbers.get(t.author)||0)+1),e.typeCommitNumbers.set(t.type,(e.typeCommitNumbers.get(t.type)||0)+1),e.commitsNumber>this.maxCommitsInDay&&(this.maxCommitsInDay=e.commitsNumber)}function el(e,t){e.set(t.dayInMonth,{dayInMonth:t.dayInMonth,timestamp:t.timestamp,commitsNumber:1,userCommitNumbers:new Map([[t.author,1]]),typeCommitNumbers:new Map([[t.type,1]])})}var tl=Se("updateCommitByWeek"),nl=Se("addCommitByWeek");class al{constructor(){Object.defineProperty(this,nl,{value:il}),Object.defineProperty(this,tl,{value:sl}),this.commits=new Map,this.totalInfo=[],this.clear()}clear(){this.commits.clear(),this.totalInfo=[]}addCommit(e){const t=this.commits.get(e.week);t?Te(this,tl)[tl](t,e):Te(this,nl)[nl](e)}updateTotalInfo(e){this.totalInfo=Array.from(this.commits.values()).map((t=>{const n={};for(let e in t.authors)n[e]=Object.keys(t.authors[e]).filter((e=>e)).length;const a={},s={},i={};let o=0,r=0,l=0;for(let c in t.workDays){if(e.totalInfoByName.get(c).isStaff)continue;l+=1,a[c]=Object.keys(t.workDays[c]).length,o+=a[c];const n=5,m=n-a[c],u=a[c]-n;s[c]=m>0?m:0,i[c]=u>0?u:0,r+=s[c]}const m={};for(let e in t.workDays)m[e]=n[e]&&a[e]?n[e]/a[e]:0;return{...t,tasks:t.tasks.size,authors:n,workDays:a,lazyDays:s,weekDays:i,workDaysTotal:o,lazyDaysTotal:r,taskInDay:m,authorsLength:l,changesLength:t.changes.added+t.changes.changes+t.changes.removed}})).reverse()}}function sl(e,t){e.commits+=1,e.timestamp.to=t.timestamp,t.task&&e.tasks.add(t.task);const n=(e,t)=>(e[t]||(e[t]={}),e[t]);for(let a in e.changes)e.changes[a]+=t[a]||0;n(e.authors,t.author)[t.task]=!0,n(e.workDays,t.author)[t.day]=!0,e.typeByAuthor[t.author]||(e.typeByAuthor[t.author]={}),Vo(e.typeByAuthor[t.author],t.type),Vo(e.types,t.type)}function il(e){this.commits.set(e.week,{commits:1,timestamp:{from:e.timestamp},tasks:e.task?new Set([e.task]):new Set,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 ol{constructor(){this.isGet={},this.alreadyAdded={},this.getsByAuthor={},this.defaultGets=[],this.totalInfo=[],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 s=new Array(t).fill("0");s[0]=n,e.push(s.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))}}function rl(e,t,n,a){const s=[t,n,a].flat().filter((e=>e)).reduce(((e,t)=>e.replaceAll(t,"")),e||"").replace(/[)(}{:#_-]+/gm,"").replace(/\s{2,}/g," ").trim();return s.length>150?"".concat(s.substring(0,140),"..."):s}function ll(e,t,n,a){return rl(Array.from(e.values()).join(", "),t,n,a)}function ml(e,t){return e.findIndex((e=>e>t))}class cl{constructor(){this.uniqIndex=1,this.totalInfo=[],this.totalInfoByName=new Map}clear(){this.uniqIndex=1,this.totalInfo=[],this.totalInfoByName.clear()}addCommit(e){if(!e.prId)return;const t=rl(e.message,e.task,[e.type],[e.scope]);this.totalInfo.push({prId:e.prId,prExternalId:e.prExternalId,branch:e.branch,description:t||e.branch,dateMerge:e.milliseconds,dateMergeFull:e.date,dateCreate:e.milliseconds,dateMergeYear:e.year,daysInReview:1,daysWorkOnTask:1,author:e.author,task:e.task,taskCode:e.taskCode,company:e.company,types:[],scope:[]})}updateTotalInfo(e){this.totalInfo.forEach((t=>{this.totalInfoByName.set(t.prId,t);const n=e.totalInfoByName.get(t.task);if(!n)return;var a,s;t.dateCreate=n.lastCommit<t.dateMerge?n.lastCommit:(a=n.milliseconds,s=t.dateMerge,a[ml(a,s)-1]||s),t.daysInReview=$o(t.dateCreate,t.dateMerge,1),n.prIds.push(t.prId),t.types=n.types,t.scope=n.scope;const i=n.prIds[n.prIds.length-2];if(i){const e=this.totalInfoByName.get(i),a=function(e,t){return e[ml(e,t)]||t}(n.milliseconds,e.dateMerge);t.daysWorkOnTask=$o(a,t.dateCreate)}else t.daysWorkOnTask=$o(n.firstCommit,t.dateCreate)})),this.totalInfo.sort(((e,t)=>t.dateMerge-e.dateMerge))}}var ul=Se("updateCommit"),pl=Se("addNewCommit");class dl{constructor(){Object.defineProperty(this,pl,{value:gl}),Object.defineProperty(this,ul,{value:hl}),this.commits=new Map,this.totalInfo=[],this.totalInfoByName=new Map,this.longTaskByAuthor={}}clear(){this.commits.clear(),this.totalInfo=[],this.totalInfoByName.clear(),this.longTaskByAuthor={}}addCommit(e){if(!e.task)return;const t=this.commits.get(e.task);t?Te(this,ul)[ul](t,e):Te(this,pl)[pl](e)}updateTotalInfo(){this.totalInfo=Array.from(this.commits.values()).map((e=>{const t=Array.from(e.milliseconds),n=t[0],a=t[t.length-1],s=Array.from(e.scope.values()),i=Array.from(e.types.values()),o={task:e.task,taskCode:e.taskCode,taskNumber:e.taskNumber,commits:e.commits,description:ll(e.messages,e.task,i,s),firstAuthor:e.firstAuthor,authors:e.authors,totalAuthors:e.authors.size,scope:s,types:i,firstCommit:n,lastCommit:a,totalDays:$o(n,a),totalDaysWorked:e.days.size,totalDaysInBacklog:1,milliseconds:t,prIds:[],releaseIds:new Set,createdBefore:n};return this.totalInfoByName.set(e.task,o),o})).sort(((e,t)=>t.lastCommit-e.lastCommit)),this.commits.clear()}updateTotalInfo2(){this.totalInfo.forEach((e=>{e.releaseIds=Array.from(e.releaseIds)}))}}function hl(e,t){e.commits+=1,e.messages.add(t.message),e.authors.add(t.author),e.days.add(t.timestamp),t.scope&&e.scope.add(t.scope),t.type&&e.types.add(t.type),e.milliseconds.add(t.milliseconds)}function gl(e){this.commits.set(e.task,{task:e.task,taskCode:e.taskCode,taskNumber:e.taskNumber,commits:1,firstAuthor:e.author,messages:new Set([e.message]),authors:new Set([e.author]),days:new Set([e.timestamp]),scope:new Set(e.scope?[e.scope]:[]),types:new Set(e.type?[e.type]:[]),milliseconds:new Set([e.milliseconds])})}var fl=Se("updateDateInRelease"),yl=Se("updatePRInRelease"),vl=Se("addReleaseForBB"),_l=Se("addRelease");class kl{constructor(){Object.defineProperty(this,_l,{value:Tl}),Object.defineProperty(this,vl,{value:xl}),Object.defineProperty(this,yl,{value:wl}),Object.defineProperty(this,fl,{value:bl}),this.release={},this.totalInfo=[],this.lastPrList=[],this.totalInfoByName=[]}clear(){this.release={},this.totalInfo=[],this.lastPrList=[]}addCommit(e){if(e.commitType===Ti)this.release[e.branch]?Te(this,fl)[fl](e.branch,e):Te(this,vl)[vl](e);else if(e.commitType===bi){if(this.release[e.toBranch]||Te(this,_l)[_l](e.toBranch,e),!this.release[e.toBranch])return;Te(this,fl)[fl](e.toBranch,e),Te(this,yl)[yl](e.toBranch,e)}else e.commitType===ki&&this.lastPrList.push(e.prId)}updateTotalInfo(e,t){let n=null;this.lastPrList=[],this.totalInfo=Object.entries(this.release).sort(((e,t)=>e[1].dateCreate-t[1].dateCreate)).map((a=>{const s=a[1];return s.prIds.forEach((n=>{const i=t.totalInfoByName.get(n);if(!i)return;i.daysAwaitRelease=$o(i.dateMerge,s.dateMerge);const o=e.totalInfoByName.get(i.task);o&&o.releaseIds.add(a[0])})),s.totalPR=s.prIds.length,n&&(n.daysAwaitNextRelease=$o(n.dateMerge,s.dateCreate)),n=s,s})).reverse()}}function bl(e,t){const n=this.release[e];n.dateMerge=t.milliseconds,n.to.month=t.month,n.to.dayInMonth=t.dayInMonth,n.to.year=t.year,n.to.timestamp=t.timestamp;const a=$o(n.dateCreate,n.dateMerge);n.delayInDays=(a>1?a-1:0)||n.delayInDays}function wl(e,t){this.release[e].prIds.push(t.prId)}function xl(e){if(!e.branch)return;Te(this,_l)[_l](e.branch,e)&&(this.release[e.branch].prIds=this.lastPrList,this.lastPrList=[])}function Tl(e,t){const n=(e||"").lastIndexOf("release");if(-1===n)return!1;const a=e.substring(n+7).replace(/([^\w.]*)|(["']*)/gim,"").trim().replace(/([0-9])([a-z])|([a-z])([0-9])/gim,"$1$3-$2$4");return this.release[e]={title:a,dateMerge:t.milliseconds,dateCreate:t.milliseconds,from:{month:t.month,dayInMonth:t.dayInMonth,year:t.year},to:{month:t.month,dayInMonth:t.dayInMonth,year:t.year,timestamp:t.timestamp},delayInDays:0,daysAwaitNextRelease:0,prIds:[],totalPR:0},!0}const Cl=[{property:"totalDays",sort:1},{property:"totalDaysWithCommits",sort:1},{property:"totalDaysWithoutCommits",sort:-1},{property:"commits",sort:1},{property:"totalMoney",sort:1,isNotStaff:!0},{property:"totalMoneyWorked",sort:1,isNotStaff:!0},{property:"totalMoneyLosses",sort:-1,isNotStaff:!0},{property:"totalMoneyInWeekend",sort:1,isNotStaff:!0},{property:"totalTasks",sort:1,isNeedTasks:!0},{property:"totalTaskInDay",sort:1,isNotStaff:!0,isNeedTasks:!0},{property:"totalTaskInChanges",sort:1,isNotStaff:!0,isNeedTasks:!0},{property:"totalTaskInCommits",sort:-1,isNotStaff:!0,isNeedTasks:!0},{property:"totalTaskInFiles",sort:-1,isNotStaff:!0,isNeedTasks:!0},{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.totalMoney/e.totalTasks},{property:"moneyForCommit",sort:-1,isNotStaff:!0,formatter:e=>e.totalMoney/e.commits}];class Sl{constructor(){this.total={},this.totalInfoByName={},this.clear()}clear(){this.total={},this.totalInfoByName={}}updateTotalInfo(e,t){const n=[...e.totalInfo];n.forEach((e=>{this.totalInfoByName[e.author]={}})),Cl.forEach((e=>{const a=function(e,t){return n=>{const a=t.totalInfoByName[n.author];if(e.isNeedTasks&&!n.totalTasks||e.isNotStaff&&n.isStaff)return NaN;if(e.formatter)return e.formatter(n,a);const s=n[e.property]||a[e.property]||0;return Array.isArray(s)?null===s||void 0===s?void 0:s.length:s}}(e,t),s=n.map(a).filter((e=>!isNaN(e))),i=Array.from(new Set(s)),o=i.sort(((t,n)=>(n-t)*e.sort)).map(((e,t)=>[e,t+1])),r=Object.fromEntries(o);n.forEach(((t,n)=>{const a=s[n];this.totalInfoByName[t.author][e.property]=r[a]})),this.total[e.property]=i.length}))}}var jl=Se("updateCommit"),Dl=Se("addNewCommit");class Al{constructor(e){Object.defineProperty(this,Dl,{value:Il}),Object.defineProperty(this,jl,{value:El}),this.commits=new Map,this.addCommit(e)}addCommit(e){if(!e.author)return;const t=this.commits.get(e.author);t?Te(this,jl)[jl](t,e):Te(this,Dl)[Dl](e)}getTotalInfo(e){const t=e.list;return Array.from(this.commits.values()).map((e=>({author:e.author,totalDays:e.days.size,totalDaysInProject:Xo(e.firstCommit,e.lastCommit),totalTasks:e.tasks.size,firstCommit:e.firstCommit,lastCommit:e.lastCommit}))).sort(((e,n)=>t.indexOf(e.author)-t.indexOf(n.author)))}}function El(e,t){er(e.days,t.timestamp),er(e.tasks,t.taskNumber),e.lastCommit=t.milliseconds}function Il(e){this.commits.set(e.author,{author:e.author,days:Zo(e.timestamp),tasks:Zo(e.taskNumber),firstCommit:e.milliseconds,lastCommit:e.milliseconds})}function Nl(e,t){return e<t/2||e<3?0:Math.ceil(e/t)}var Pl=Se("updateCommit"),Rl=Se("addNewCommit"),Ol=Se("getWithoutPeaks"),Ll=Se("getMiddleValues");class Ml{constructor(e){Object.defineProperty(this,Ll,{value:zl}),Object.defineProperty(this,Ol,{value:ql}),Object.defineProperty(this,Rl,{value:Wl}),Object.defineProperty(this,Pl,{value:Fl}),this.commits=new Map,this.addCommit(e)}addCommit(e){if(!e.taskCode||!e.week)return;const t=this.commits.get("".concat(e.year,"-").concat(e.month));t?Te(this,Pl)[Pl](t,e):Te(this,Rl)[Rl](e)}getTotalInfo(e,t){const n=Array.from(this.commits.values()),a=[];n.forEach(((s,i)=>{if(!i)return;const o=n[i-1];s.min=o.max+1;const r=s.max-s.min,l=s.tasks.size,m=Array.from(s.authors.values()).filter((t=>{var n;return!(null!==(n=e.totalInfoByName[t])&&void 0!==n&&n.isStaff)})).length;if(r<10||l<4||m<1)return;const c=function(e,t,n){let a=0;for(let s=e;s<t;s++)a+=n.has(s)?1:0;return a}(s.min,s.max,t),u=c+l,p=Math.ceil(u/m),d=Math.ceil(r/p),h=d+(Nl(d,5)+Nl(d,4)+Nl(d,7));a.push({month:s.month,year:s.year,newTaskInMonth:r,tasksFixedThisGroup:l,tasksInBacklog:c,tasksForThisGroup:u,tasksPerUser:p,programmistInThisGroup:m,allProgrammistInDepartment:d,allUsersInDepartment:h,allMiddleUsersInDepartment:h})}));const s=Te(this,Ol)[Ol](a),i=Te(this,Ll)[Ll](s);return a.length>3?i.reverse():[]}}function Fl(e,t){e.max<t.taskNumber&&(e.max=t.taskNumber),er(e.tasks,t.taskNumber),er(e.authors,t.author)}function Wl(e){this.commits.set("".concat(e.year,"-").concat(e.month),{month:e.month,year:e.year,max:e.taskNumber,tasks:Zo(e.taskNumber),authors:Zo(e.author)})}function ql(e){const t=[];for(let n=0;n<e.length;n++){if(!n)continue;const a=e[n],s=e[n-1];a.newTaskInMonth>4*s.newTaskInMonth||t.push(a)}return t}function zl(e){return e.forEach(((t,n)=>{const a=e[n-1];if(!a)return;const s=e[n+1];s&&(t.allMiddleUsersInDepartment=Math.floor((a.allUsersInDepartment+t.allUsersInDepartment+s.allUsersInDepartment)/3))})),e.pop(),e}var Bl=Se("updateCommitByTaskCode"),Ul=Se("addCommitByTaskCode");class Hl{constructor(){Object.defineProperty(this,Ul,{value:Vl}),Object.defineProperty(this,Bl,{value:Gl}),this.commits=new Map,this.totalInfo=[],this.totalInfoByName=new Map}clear(){this.commits.clear(),this.totalInfo=[],this.totalInfoByName.clear()}addCommit(e){if(!e.taskCode)return;const t=this.commits.get(e.taskCode);t?Te(this,Bl)[Bl](t,e):Te(this,Ul)[Ul](e)}updateTotalInfo(e,t){const n=(null===t||void 0===t?void 0:t.milliseconds)-5184e6;this.totalInfo=Array.from(this.commits.values()).filter((e=>e.commits>3)).map((t=>{const a=t.authors.getTotalInfo(e),s=t.months.getTotalInfo(e,t.tasks),i={taskCode:t.taskCode,tasks:t.tasks.size,from:t.firstCommit,to:t.lastCommit,authors:a,months:s,totalDays:Xo(t.firstCommit,t.lastCommit),totalDaysWorked:t.days.size,totalAuthors:a.length,isActive:t.lastCommit>n,linesInTask:Math.round(t.linesInTask.get())};return this.totalInfoByName.set(t.taskCode,i),i})).sort(((e,t)=>t.totalDays-e.totalDays)),this.commits.clear()}}function Gl(e,t){e.commits+=1,e.lastCommit=t.milliseconds,er(e.days,t.timestamp),er(e.tasks,t.taskNumber),e.authors.addCommit(t),e.months.addCommit(t),e.linesInTask.update(t.added+t.changes+t.removed)}function Vl(e){const t=new Uo;t.update(e.added+e.changes+e.removed),this.commits.set(e.taskCode,{commits:1,taskCode:e.taskCode,firstCommit:e.milliseconds,lastCommit:e.milliseconds,days:Zo(e.timestamp),tasks:Zo(e.taskNumber),authors:new Al(e),months:new Ml(e),linesInTask:t})}var Kl=Se("updateCommit"),$l=Se("addNewCommit");class Yl{constructor(){Object.defineProperty(this,$l,{value:Ql}),Object.defineProperty(this,Kl,{value:Xl}),this.commits=new Map}clear(){this.commits.clear()}addCommit(e){if(!e.taskCode||!e.taskNumber)return;const t=this.commits.get(e.taskCode);t?Te(this,Kl)[Kl](t,e):Te(this,$l)[$l](e)}updateTotalInfo(e){Array.from(this.commits.values()).forEach((t=>{const n=Array.from(t.taskNumbers.entries()).sort(((e,t)=>e[0]-t[0])).reverse();n.forEach(((t,a)=>{const s=n[a+1];if(!s)return;if(s[1].milliseconds<=t[1].milliseconds)return;s[1].milliseconds=t[1].milliseconds;const i=e.totalInfoByName.get(s[1].task);i.createdBefore=t[1].milliseconds,i.totalDaysInBacklog=function(e,t){const n=t-e;return n<Ki?1:Math.round(n/Ki)}(i.createdBefore,i.firstCommit)}))})),this.commits.clear()}}function Xl(e,t){e.taskNumbers.has(t.taskNumber)||e.taskNumbers.set(t.taskNumber,{task:t.task,milliseconds:t.milliseconds})}function Ql(e){const t=new Map;t.set(e.taskNumber,{task:e.task,milliseconds:e.milliseconds}),this.commits.set(e.taskCode,{taskCode:e.taskCode,taskNumbers:t})}var Jl=Se("updateCommit"),Zl=Se("addNewCommit");class em{constructor(e){Object.defineProperty(this,Zl,{value:nm}),Object.defineProperty(this,Jl,{value:tm}),this.commits=new Map,this.addCommit(e)}addCommit(e){if(!e.author)return;const t=this.commits.get(e.author);t?Te(this,Jl)[Jl](t,e):Te(this,Zl)[Zl](e)}getTotalInfo(){return Array.from(this.commits.values()).map((e=>({author:e.author,totalDaysWorked:e.days.size,totalDaysInProject:Xo(e.firstCommit,e.lastCommit),totalTasks:e.tasks.size,taskCodes:Array.from(e.taskCodes),firstCommit:e.firstCommit,lastCommit:e.lastCommit}))).sort(((e,t)=>t.totalTasks-e.totalTasks))}}function tm(e,t){e.lastCommit=t.milliseconds,e.days.add(t.timestamp),t.task&&e.tasks.add(t.task),t.taskCode&&e.taskCodes.add(t.taskCode)}function nm(e){this.commits.set(e.author,{author:e.author,firstCommit:e.milliseconds,lastCommit:e.milliseconds,days:new Set([e.timestamp]),tasks:new Set(e.task?[e.task]:[]),taskCodes:new Set(e.taskCode?[e.taskCode]:[])})}var am=Se("updateCommit"),sm=Se("addNewCommit");class im{constructor(e){Object.defineProperty(this,sm,{value:rm}),Object.defineProperty(this,am,{value:om}),this.commits=new Map,this.addCommit(e)}addCommit(e){if(!e.taskCode)return;const t=this.commits.get(e.taskCode);t?Te(this,am)[am](t,e):Te(this,sm)[sm](e)}getTotalInfo(){return Array.from(this.commits.values()).map((e=>({taskCode:e.taskCode,totalDaysWorked:e.days.size,totalTasks:e.tasks.size,totalAuthors:e.authors.size,authors:Array.from(e.authors),firstCommit:e.firstCommit,lastCommit:e.lastCommit}))).filter((e=>e.totalDaysWorked>1)).sort(((e,t)=>t.totalDaysWorked-e.totalDaysWorked))}}function om(e,t){e.lastCommit=t.milliseconds,e.days.add(t.timestamp),t.taskNumber&&e.tasks.add(t.taskNumber),t.author&&e.authors.add(t.author)}function rm(e){this.commits.set(e.taskCode,{taskCode:e.taskCode,firstCommit:e.milliseconds,lastCommit:e.milliseconds,days:new Set([e.timestamp]),tasks:new Set(e.taskNumber?[e.taskNumber]:[]),authors:new Set(e.author?[e.author]:[])})}var lm=Se("updateCommit"),mm=Se("addNewCommit");class cm{constructor(){Object.defineProperty(this,mm,{value:pm}),Object.defineProperty(this,lm,{value:um}),this.commits=new Map,this.totalInfo=[],this.totalInfoByName=new Map}clear(){this.commits.clear(),this.totalInfo=[],this.totalInfoByName.clear()}addCommit(e){if(!e.company)return;const t=this.commits.get(e.company);t?Te(this,lm)[lm](t,e):Te(this,mm)[mm](e)}updateTotalInfo(e){const t=(null===e||void 0===e?void 0:e.milliseconds)-5184e6;this.totalInfo=Array.from(this.commits.values()).map((e=>{const n=e.authors.getTotalInfo(),a=e.taskCodes.getTotalInfo(),s={company:e.company,from:e.firstCommit,to:e.lastCommit,authors:n,taskCodes:a,totalTasks:e.tasks.size,totalTaskCodes:a.length,totalDays:Xo(e.firstCommit,e.lastCommit),totalDaysWorked:e.days.size,totalAuthors:n.length,isActive:e.lastCommit>t,linesInTask:Math.round(e.linesInTask.get())};return this.totalInfoByName.set(e.company,s),s})).sort(((e,t)=>t.totalTasks-e.totalTasks)),this.commits.clear()}}function um(e,t){e.lastCommit=t.milliseconds,e.days.add(t.timestamp),t.task&&e.tasks.add(t.task),e.authors.addCommit(t),e.taskCodes.addCommit(t),e.linesInTask.update(t.added+t.changes+t.removed)}function pm(e){const t=new Uo;t.update(e.added+e.changes+e.removed),this.commits.set(e.company,{company:e.company,firstCommit:e.milliseconds,lastCommit:e.milliseconds,days:new Set([e.timestamp]),tasks:new Set(e.task?[e.task]:[]),authors:new em(e),taskCodes:new im(e),linesInTask:t})}const dm={"-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 hm=Se("addAuthor");class gm{constructor(){Object.defineProperty(this,hm,{value:fm}),this.countries=new Map,this.vpn={},this.devices={},this.totalInfo=[]}clear(){this.countries.clear(),this.vpn={},this.devices={},this.totalInfo=[]}updateTotalInfo(e){e.totalInfo.forEach((e=>{const t=function(e){const t=new Map;if(e.length<2)return t;for(let n=0;n<e.length;n++){const a=e[n],s=e[n+1],i=e[n+2];if(!s||!i)continue;const o=(null===i||void 0===i?void 0:i.from)-(null===s||void 0===s?void 0:s.from)<Ki,r=a.fromTimezone===i.fromTimezone;o&&r&&(t.set(s.title,s.fromTimestamp),n+=1)}return t}(e.countries);e.countries=function(e,t){if(1===e.length)return null;let n=e[0].fromTimezone;const a=[e[0]],s=e.length>3?e.filter((e=>!t.has(e.title))):e;for(let r=1,l=s.length;r<l;r++){const e=s[r],t=e.fromTimezone;n!==t&&(i=n,o=t,Math.abs(dm[i]-dm[o])>1&&(n=t,a.push(e)))}var i,o;return 1===a.length?null:a}(e.countries,t),Te(this,hm)[hm](e.lastCountry||"unknown",e.author),Vo(this.devices,e.device||"unknown"),Array.from(t.keys()).forEach((e=>{Vo(this.vpn,e)}))})),this.totalInfo=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 fm(e,t){const n=this.countries.get(e);n?n.employments.push(t):this.countries.set(e,{country:e,employments:[t]})}var ym=Se("update"),vm=Se("getTimes"),_m=Se("add");class km{constructor(){Object.defineProperty(this,_m,{value:xm}),Object.defineProperty(this,vm,{value:wm}),Object.defineProperty(this,ym,{value:bm}),this.lastCommitDate=new Map,this.totalInfo=[],this.totalInfoByName=new Map}clear(){this.lastCommitDate.clear(),this.totalInfo=[]}addCommit(e){const t=this.lastCommitDate.get(e.author);t?Te(this,ym)[ym](t,e):Te(this,_m)[_m](e)}updateTotalInfo(e){this.totalInfo=this.totalInfo.filter((t=>{var n;return!(null!==(n=e.totalInfoByName[t.author])&&void 0!==n&&n.isStaff)})).sort(((e,t)=>t.to.milliseconds-e.to.milliseconds)),this.totalInfo.forEach((e=>{const t=this.totalInfoByName.get(e.author)||[];t.push(e),this.totalInfoByName.set(e.author,t)})),this.lastCommitDate.clear()}}function bm(e,t){const n=t.milliseconds;let a=(n-e.milliseconds)/Ki-2;if(0===t.month&&t.dayInMonth<=11&&(a-=10),5===t.month&&t.dayInMonth<=11&&(a-=4),Te(this,_m)[_m](t),!a||a<=7)return;const s=new Date(e.milliseconds+Ki),i=new Date(n-Ki);this.totalInfo.push({author:t.author,duration:Math.round(a),from:Te(this,vm)[vm](s,e.timestamp),to:Te(this,vm)[vm](i,t.timestamp)})}function wm(e,t){return{milliseconds:e.getTime(),year:e.getUTCFullYear(),month:e.getMonth(),day:e.getDate(),timestamp:t}}function xm(e){this.lastCommitDate.set(e.author,{milliseconds:e.milliseconds,timestamp:e.timestamp})}var Tm=Se("updateCommitByServer"),Cm=Se("addCommitByServer"),Sm=Se("updateServerGroup"),jm=Se("getServerGroup");class Dm{constructor(){Object.defineProperty(this,jm,{value:Nm}),Object.defineProperty(this,Sm,{value:Im}),Object.defineProperty(this,Cm,{value:Em}),Object.defineProperty(this,Tm,{value:Am}),this.commits=new Map,this.totalInfo=[]}clear(){this.commits.clear(),this.totalInfo=[]}addCommit(e){if(!e.server)return;const t=this.commits.get(e.server);t?Te(this,Tm)[Tm](t,e):Te(this,Cm)[Cm](e)}updateTotalInfo(){const e=Array.from(this.commits.values()),t=new Map;e.forEach((e=>{const n=t.get(e.domain);n?Te(this,Sm)[Sm](n,e):t.set(e.domain,Te(this,jm)[jm](e))})),this.totalInfo=Array.from(t.values()),this.commits.clear()}}function Am(e,t){e.commits+=1,e.to=t.timestamp}function Em(e){let[t,n,a,s,i]=["","","","",""];"/"!==e.server[0]&&([t,n]=function(e){const t=e.indexOf("//"),[n,a]=e.split(/\/+/g);return-1===t?["",n]:[n,a]}(e.server),[a,s]=function(e){const t=(e||"").split(/[@:]/g),n=t[0]||"",a=t[1]||"";return 1===t.length?[n]:2===t.length?[n,a]:[n,a,t[2],t[3]]}(n),i=a.split(".").slice(-2).join(".")),this.commits.set(e.server,{url:e.server,commits:1,port:s,domain:i||"local",protocol:t.replace(":","").toUpperCase(),hostname:a,from:e.milliseconds,to:e.milliseconds})}function Im(e,t){e.from=t.from<e.from?t.from:e.from,e.to=t.to>e.to?t.to:e.to,e.children.push(t)}function Nm(e){return{domain:e.domain,from:e.from,to:e.to,children:[e]}}const Pm=new Set([xi,Ti,wi]);var Rm=Se("updateCommitByService"),Om=Se("addCommitByService");class Lm{constructor(){Object.defineProperty(this,Om,{value:Fm}),Object.defineProperty(this,Rm,{value:Mm}),this.commits=new Map,this.lastService={},this.totalInfo=[]}clear(){this.commits.clear(),this.lastService={},this.totalInfo=[]}addCommit(e){var t;Pm.has(e.commitType)||((null===(t=this.lastService)||void 0===t?void 0:t.type)===e.commitType?Te(this,Rm)[Rm](e):Te(this,Om)[Om](e))}updateTotalInfo(){this.totalInfo=this.totalInfo.filter((e=>e.from!==e.to&&e.commits>10)),this.commits.clear()}}function Mm(e){this.lastService.commits+=1,this.lastService.to=e.timestamp}function Fm(e){this.lastService={type:e.commitType,commits:1,from:e.timestamp,to:e.timestamp},this.totalInfo.push(this.lastService)}var Wm=Se("updateCommitByEmail"),qm=Se("addCommitByEmail");class zm{constructor(){Object.defineProperty(this,qm,{value:Um}),Object.defineProperty(this,Wm,{value:Bm}),this.commits=new Map,this.totalInfo=[],this.totalInfoByName=new Map,this.clear()}clear(){this.commits.clear(),this.totalInfo=[],this.totalInfoByName.clear()}addCommit(e){const t=this.commits.get(e.email);t?Te(this,Wm)[Wm](t,e):Te(this,qm)[qm](e)}updateTotalInfo(e){const t=Object.fromEntries(e.list.map(((e,t)=>[e,t])));this.totalInfo=Array.from(this.commits.values()).sort(((e,n)=>{const a=t[e.author]-t[n.author];return a||e.type-n.type})),this.totalInfoByName=this.commits,this.commits=new Map}}function Bm(e,t){e.to=t.milliseconds}function Um(e){this.commits.set(e.email,{author:e.author,email:e.email,from:e.milliseconds,to:e.milliseconds,company:e.company,type:e.emailType})}const Hm=new class{constructor(){this.firstLastCommit=new Yo,this.author=new gr,this.company=new cm,this.country=new gm,this.team=new _r,this.scope=new jr,this.type=new Nr,this.timestamp=new Wr,this.month=new Yr,this.week=new al,this.recommendations=new zo,this.get=new ol,this.pr=new cl,this.tasks=new dl,this.release=new kl,this.scoring=new Sl,this.taskCodes=new Hl,this.taskNumbersDate=new Yl,this.absence=new km,this.server=new Dm,this.service=new Lm,this.email=new zm}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.month.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(),this.taskNumbersDate.clear(),this.absence.clear(),this.server.clear(),this.service.clear(),this.email.clear()}addCommit(e,t){this.server.addCommit(e),"GitHub"!==e.author&&(this.pr.addCommit(e),this.release.addCommit(e),e.commitType?this.service.addCommit(e):(this.firstLastCommit.update(e.milliseconds,e),this.author.addCommit(e,t),this.company.addCommit(e),this.scope.addCommit(e),this.type.addCommit(e),this.timestamp.addCommit(e),this.month.addCommit(e),this.get.addCommit(e),this.week.addCommit(e),this.tasks.addCommit(e),this.taskCodes.addCommit(e),this.taskNumbersDate.addCommit(e),this.absence.addCommit(e),this.email.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.month.updateTotalInfo(this.author),this.week.updateTotalInfo(this.author),this.recommendations.updateTotalInfo(this),this.tasks.updateTotalInfo(),this.taskNumbersDate.updateTotalInfo(this.tasks),this.pr.updateTotalInfo(this.tasks),this.release.updateTotalInfo(this.tasks,this.pr),this.tasks.updateTotalInfo2(),this.scoring.updateTotalInfo(this.author,this.timestamp),this.company.updateTotalInfo(this.firstLastCommit.maxData),this.country.updateTotalInfo(this.author),this.taskCodes.updateTotalInfo(this.author,this.firstLastCommit.maxData),this.absence.updateTotalInfo(this.author),this.server.updateTotalInfo(),this.service.updateTotalInfo(),this.email.updateTotalInfo(this.author)}};function Gm(e,t){return new Map(e?[[e,null!==t&&void 0!==t?t:1]]:[])}function Vm(e,t,n){if(!t)return;const a=e.get(t)||0;e.set(t,a+(null!==n&&void 0!==n?n:1))}function Km(e,t){const n=e.path.split("/"),a=n.pop()||"",{type:s,extension:i}=function(e){const t=e.lastIndexOf("."),n=e.substring(t+1),a=e.substring(0,t),s=a.lastIndexOf(".");return{type:-1!==s?a.substring(s+1):"",extension:n}}(a);e.name=a,e.type=s,e.extension=i,e.pathString=e.path,e.path=n,e.totalTasks=e.tasks.size,e.tasks=Array.from(e.tasks),e.authors=Object.fromEntries(e.authors.entries()),e.companies=Object.fromEntries(e.companies.entries()),e.types=Object.fromEntries(e.types.entries()),e.scope=Object.fromEntries(e.scope.entries()),e.taskCode=Object.fromEntries(e.taskCode.entries()),e.totalDays=e.days.size,e.days=Array.from(e.days),e.daysByAuthor=Object.fromEntries(e.daysByAuthor.entries()),e.money=e.totalDays*t,e.lines=e.addedLines-e.removedLines,e.lines<0&&(e.lines=0),e.addedLinesByAuthor=Object.fromEntries(e.addedLinesByAuthor.entries()),e.removedLinesByAuthor=Object.fromEntries(e.removedLinesByAuthor.entries()),e.changedLinesByAuthor=Object.fromEntries(e.changedLinesByAuthor.entries())}var $m=Se("getNewDirtyFile"),Ym=Se("updateDirtyFile"),Xm=Se("renameFile"),Qm=Se("removeFile");class Jm{constructor(){Object.defineProperty(this,Qm,{value:nc}),Object.defineProperty(this,Xm,{value:tc}),Object.defineProperty(this,Ym,{value:ec}),Object.defineProperty(this,$m,{value:Zm}),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?Te(this,Ym)[Ym](n,e,t):(n=Te(this,$m)[$m](e,t),this.refFileIds.set(e.id,n)),e.newId&&Te(this,Xm)[Xm](n,e.newId)}updateTotalInfo(e,t){const n=Array.from(this.refFileIds.values());for(let a=0;a<n.length;a++){const s=n[a];if(Km(s,t),s.type){let e=this.refExtensionType.get(s.extension);e||(e={},this.refExtensionType.set(s.extension,e)),Vo(e,s.type)}0!==s.lines&&"D"!==s.action&&"A"!==s.action||Te(this,Qm)[Qm](s),e(s)}this.list=n}}function Zm(e,t){return function(e,t){return{id:e.id,name:"",path:e.path,pathString:e.path,extension:"",type:"",lines:0,action:e.action,commits:1,firstCommit:t.milliseconds,lastCommit:t.milliseconds,createAuthor:t.author,createYear:t.year,tasks:new Set(t.task?[t.task]:[]),totalTasks:0,days:new Set(t.timestamp?[t.timestamp]:[]),daysByAuthor:new Map([[t.author,new Set([t.timestamp])]]),totalDays:0,money:0,authors:Gm(t.author),companies:Gm(t.company),types:Gm(t.type),scope:Gm(t.scope),taskCode:Gm(t.taskCode),addedLines:e.addedLines,removedLines:e.removedLines,changedLines:e.changedLines,addedLinesByAuthor:Gm(t.author,e.addedLines),removedLinesByAuthor:Gm(t.author,e.removedLines),changedLinesByAuthor:Gm(t.author,e.changedLines)}}(e,t)}function ec(e,t,n){!function(e,t,n){e.action=t.action,e.lastCommit=n.milliseconds,e.commits+=1,n.task&&e.tasks.add(n.task),n.timestamp&&e.days.add(n.timestamp);const a=e.daysByAuthor.get(n.author)||new Set;a.add(n.timestamp),e.daysByAuthor.set(n.author,a),Vm(e.authors,n.author),Vm(e.companies,n.company),Vm(e.types,n.type),Vm(e.scope,n.scope),Vm(e.taskCode,n.taskCode),e.addedLines+=t.addedLines,e.removedLines+=t.removedLines,e.changedLines+=t.changedLines,Vm(e.addedLinesByAuthor,n.author,t.addedLines),Vm(e.removedLinesByAuthor,n.author,t.removedLines),Vm(e.changedLinesByAuthor,n.author,t.changedLines)}(e,t,n)}function tc(e,t){const n=this.refFileIds.get(e.id);this.refFileIds.set(t,n),this.refFileIds.delete(e.id),e.id=t}function nc(e){e.action="D",this.refRemovedFileIds.set(e.id,e),this.refFileIds.delete(e.id)}function ac(e){return e?new Map(Object.entries(e)):new Map}function sc(e,t){if(t)for(const n in t){const a=e.get(n)||0;e.set(n,a+t[n])}}function ic(e,t){if(!t)return e;for(const n in t)e[n]=new Set([...e[n]||[],...t[n]||[]]);return e}function oc(e,t,n){return{id:Math.random(),name:e||"",path:t||[],pathString:"".concat((t||[]).join("/"),"/").concat(e||""),content:new Map,lines:(null===n||void 0===n?void 0:n.lines)||0,action:"F",commits:(null===n||void 0===n?void 0:n.commits)||0,firstCommit:0,lastCommit:0,createAuthor:(null===n||void 0===n?void 0:n.createAuthor)||"",createYear:null===n||void 0===n?void 0:n.createYear,tasks:new Set((null===n||void 0===n?void 0:n.tasks)||[]),totalTasks:0,days:new Set((null===n||void 0===n?void 0:n.days)||[]),daysByAuthor:ic({},null===n||void 0===n?void 0:n.daysByAuthor),totalDays:0,money:0,authors:ac(null===n||void 0===n?void 0:n.authors),companies:ac(null===n||void 0===n?void 0:n.companies),types:ac(null===n||void 0===n?void 0:n.types),scope:ac(null===n||void 0===n?void 0:n.scope),taskCode:ac(null===n||void 0===n?void 0:n.taskCode),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:ac(null===n||void 0===n?void 0:n.addedLinesByAuthor),removedLinesByAuthor:ac(null===n||void 0===n?void 0:n.removedLinesByAuthor),changedLinesByAuthor:ac(null===n||void 0===n?void 0:n.changedLinesByAuthor)}}function rc(e,t){e.lines+=t.lines,e.commits+=null===t||void 0===t?void 0:t.commits;for(let n=0;n<t.tasks.length;n++)e.tasks.add(t.tasks[n]);for(let n=0;n<t.days.length;n++)e.days.add(t.days[n]);ic(e.daysByAuthor,null===t||void 0===t?void 0:t.daysByAuthor),sc(e.authors,t.authors),sc(e.companies,t.companies),sc(e.types,t.types),sc(e.scope,t.scope),e.addedLines+=t.addedLines||0,e.removedLines+=t.removedLines||0,e.changedLines+=t.changedLines||0,sc(e.addedLinesByAuthor,t.addedLinesByAuthor),sc(e.removedLinesByAuthor,t.removedLinesByAuthor),sc(e.changedLinesByAuthor,t.changedLinesByAuthor)}class lc{constructor(){this.tree=oc(),this.folders=[],this.addedFoldersByAuthor={}}clear(){this.tree=oc(),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],s=t.get(a);if(null!==s&&void 0!==s&&s.content)rc(s,e),t=s.content;else{const s=oc(a,e.path.slice(0,n),e);t.set(a,s),this.folders.push(s),t=s.content}}t.set(e.name,e)}updateTotalInfo(e){this.folders.forEach((t=>{!function(e,t){e.totalTasks=e.tasks.size,e.tasks=Array.from(e.tasks),e.totalDays=e.days.size,e.days=Array.from(e.days),e.authors=Object.fromEntries(e.authors.entries()),e.companies=Object.fromEntries(e.companies.entries()),e.types=Object.fromEntries(e.types.entries()),e.scope=Object.fromEntries(e.scope.entries()),e.taskCode=Object.fromEntries(e.taskCode.entries()),e.totalDaysByAuthor=Object.values(e.daysByAuthor).reduce(((e,t)=>e+t.size),0),e.daysByAuthor=Object.fromEntries(Object.entries(e.daysByAuthor).map((e=>{let[t,n]=e;return[t,n.size]}))),e.money=e.totalDaysByAuthor*t,e.lines=e.addedLines-e.removedLines,e.lines<0&&(e.lines=0),e.addedLinesByAuthor=Object.fromEntries(e.addedLinesByAuthor.entries()),e.removedLinesByAuthor=Object.fromEntries(e.removedLinesByAuthor.entries()),e.changedLinesByAuthor=Object.fromEntries(e.changedLinesByAuthor.entries())}(t,e);const n=t.createAuthor||"";this.addedFoldersByAuthor[n]||(this.addedFoldersByAuthor[n]=[]),this.addedFoldersByAuthor[n].push(t.pathString)})),this.folders=[]}}const mc=new Set([".eslintrc",".gitignore","package.json","package-lock.json","tsconfig.json"]);var cc=Se("updateFile"),uc=Se("addNewFile");class pc{constructor(){Object.defineProperty(this,uc,{value:hc}),Object.defineProperty(this,cc,{value:dc}),this.commits=new Map,this.totalInfo=[]}clear(){this.totalInfo=[],this.commits.clear()}addFile(e){if(null===e||void 0===e||!e.extension||mc.has(e.name))return;const t=this.commits.get(null===e||void 0===e?void 0:e.extension);t?Te(this,cc)[cc](t,e):Te(this,uc)[uc](e)}updateTotalInfo(){this.totalInfo=Array.from(this.commits.values()).sort(((e,t)=>t.files-e.files)),this.commits.clear()}}function dc(e,t){"D"===t.action?e.removedFiles+=1:e.files+=1}function hc(e){var t;this.commits.set(null===e||void 0===e?void 0:e.extension,{extension:null===e||void 0===e?void 0:e.extension,task:null===e||void 0===e||null===(t=e.tasks)||void 0===t?void 0:t[0],path:null===e||void 0===e?void 0:e.name,files:"D"===e.action?0:1,removedFiles:"D"===e.action?1:0})}var gc=Se("updateFile"),fc=Se("addNewFile");class yc{constructor(){Object.defineProperty(this,fc,{value:_c}),Object.defineProperty(this,gc,{value:vc}),this.commits=new Map,this.totalInfo=[]}clear(){this.totalInfo=[],this.commits.clear()}addFile(e){var t;if(null===e||void 0===e||!e.type||"."===(null===e||void 0===e||null===(t=e.name)||void 0===t?void 0:t[0]))return;const n=this.commits.get(null===e||void 0===e?void 0:e.type);n?Te(this,gc)[gc](n,e):Te(this,fc)[fc](e)}updateTotalInfo(){this.totalInfo=Array.from(this.commits.values()).sort(((e,t)=>t.files-e.files)),this.commits.clear()}}function vc(e,t){"D"===t.action?e.removedFiles+=1:e.files+=1}function _c(e){var t;this.commits.set(null===e||void 0===e?void 0:e.type,{type:null===e||void 0===e?void 0:e.type,task:null===e||void 0===e||null===(t=e.tasks)||void 0===t?void 0:t[0],path:null===e||void 0===e?void 0:e.name,files:"D"===e.action?0:1,removedFiles:"D"===e.action?1:0})}function kc(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 bc(e,t){return e.sort(((e,n)=>n[t]-e[t])),e.slice(0,20).map((e=>[e.id,e]))}class wc{constructor(){this.files=[]}updateTotalInfo(e){const t=e.filter(kc),n=[...bc(t,"lines"),...bc(t,"totalDays"),...bc(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 xc=new class{constructor(){this.files=new Jm,this.extension=new pc,this.type=new yc,this.tree=new lc,this.removedTree=new lc,this.refactor=new wc}clear(){this.files.clear(),this.extension.clear(),this.type.clear(),this.tree.clear(),this.removedTree.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(){const e=so.getMiddleSalaryInDay();this.files.updateTotalInfo((e=>{this.extension.addFile(e),this.type.addFile(e),"D"===e.action?this.removedTree.addFile(e):this.tree.addFile(e)}),e),this.extension.updateTotalInfo(),this.type.updateTotalInfo(),this.tree.updateTotalInfo(e),this.removedTree.updateTotalInfo(e),this.refactor.updateTotalInfo(this.files.list)}},Tc=["refactor","feat","chore","code style","style","doc","docs","test","update","improve","add","remove","delete","optimize","rename","eslint","revert","merge","fix"],Cc={add:"feat",remove:"refactor",delete:"refactor",update:"refactor",improve:"refactor",optimize:"refactor",rename:"refactor",eslint:"style","code style":"refactor"};function Sc(e,t){let n="",a="";if(!e)return[n,a];const s=e.replace(t,"").toLowerCase().split(":");return s.length>1&&([n,a]=s[0].split(/[()]/g).map((e=>e.trim()))),n||(n=function(e){const t=Tc.find((t=>-1!==e.indexOf(t)));return Cc[t||""]||t}(e)),n&&!a&&s.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]}(s[0].replace(n,""))),n&&(n=n.split(" ").shift()),[n,a]}function jc(e){return((e||"").match(/(([A-Z]+[-_])|(#)|(gh-)|(GH-))([0-9]+)/gm)||[])[0]||""}const Dc=new Map;function Ac(e){const t=(e||"").replace(/[^0-9]+/gim,""),n=Dc.get(t);if(n)return n;const a=parseInt(t,10);return a||0===a?(Dc.set(t,a),a):t}function Ec(e){return(e||"").replace(/[^A-Z]+/gim,"")}new Array(1e5).fill(1).map(((e,t)=>{Dc.set("".concat(t),t)}));const Ic=Object.fromEntries(Object.values(["icloud","google","inbox","yahoo","aol","zoho","outlook","gmx","tutanota","vk","ok","ya","yandex","rambler","me","qq","bk","list"]).map((e=>[e.toUpperCase(),!0]))),Nc=/(\.local)|(localhost)|(([0-9]{1,3}([-_\.])[0-9]{1,3}([-_\.])[0-9]{1,3}([-_\.])[0-9]{1,3}))/i,Pc=/(github)|(gitlab)/i;function Rc(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,s]=(t||"").split("@"),i=(s||"").split("."),o=i[i.length-1],r=(i[i.length-2]||"").toUpperCase(),l=-1!==r.indexOf("MAIL")||Ic[r],m=/(MACBOOK)|(-AIR)|(-IMAC)/gi.test(t||"")?"MacBook":"";let c=_i.UNKNOWN;l?c=_i.MAIL:m?c=_i.DEVICE:Nc.test(t||"")?c=_i.NETWORK:Pc.test(s||"")?c=_i.GITHUB:i.length>2?c=_i.ACCOUNT:r&&2==i.length&&(c=_i.COMPANY);const u=c===_i.MAIL?function(e){const t="".concat(e,"@").match(/([^0-9][4-9][0-9][^0-9])|([^0-9]19[5-9][0-9][^0-9])|([^0-9]20[0-5][0-9][^0-9])/);if(!t)return 0;const n=(new Date).getFullYear();if(6===t[0].length){const e=parseInt(t[0].substring(1,5),10);return n-e<18?0:e}const a=t[0].substring(1,3),s=parseInt(a,10),i=n-2e3;return s>i?1900+s:i-s<18?0:2e3+s}(a):0,p=c===_i.GITHUB?a.split("+").pop():"";let d="";return n?d=n:c!==_i.COMPANY&&c!==_i.ACCOUNT||(d=/(dev)|(local)|(prod)/i.test(r)||i.length>2?"":r),{company:d,domain:o,device:m,emailType:c,yearOfBirth:u,githubLogin:p}}const Oc={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"},Lc={su:"ru",gov:"us",mil:"us",amazon:"us",aws:"us"},Mc={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"]},Fc={"-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:30":{title:"Newfoundland",countries:["ca"]},"-03:00":{countries:["ar","br"],name:{ar:Mc.es,br:Mc.pt}},"-02:00":{countries:["br"]},"-01:00":{countries:["pt"]},"+00:00":{countries:["pt","uk"],name:{pt:Mc.pt,uk:Mc.uk,ru:Mc.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:Mc.es,fr:Mc.fr,it:Mc.it,pl:Mc.pl,ee:Mc.ee,gr:Mc.gr,de:Mc.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:Mc.es,pl:Mc.pl,ee:Mc.ee,il:Mc.il}},"+03:00":{countries:["ru","by","tr"],name:{ru:Mc.ru,tr:Mc.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:Mc.ru}},"+05:30":{countries:["in"]},"+05:45":{countries:["np"]},"+06:00":{countries:["ru"]},"+06:30":{title:"Myanmar",countries:["mm"]},"+07:00":{countries:["th","vn","id"],name:{ru:Mc.ru}},"+08:00":{title:"China or Philippines",countries:["cn","ph","ml"]},"+09:00":{countries:["kr","jp"],name:{kr:Mc.kr,jp:Mc.jp}},"+09:30":{countries:["au"]},"+10:00":{title:"Australia",countries:["au","ru"],name:{ru:Mc.ru}},"+10:30":{countries:["au"]},"+11:00":{countries:["au"]},"+12:00":{countries:["nz"]},"+12:45":{countries:["nz"]},"+13:00":{countries:["ws"]},"+14:00":{title:"Line Islands",countries:["pf"]}};!function(){let e=Object.keys(Fc);e.forEach(((t,n)=>{var a,s;Fc[t].prev=(null===(a=Fc[e[n-1]||""])||void 0===a?void 0:a.countries)||[],Fc[t].next=(null===(s=Fc[e[n+1]||""])||void 0===s?void 0:s.countries)||[],Fc[t].title||(Fc[t].title=Fc[t].countries.map((e=>Oc[e]||e)).join(" or "))}))}();const Wc=new Map,qc=new Map,zc=new Map,Bc=new Map,Uc=new Map,Hc=new Map;function Gc(e){return e.toLowerCase().replace(/[\s\t.\-_]+/gm,"")}function Vc(e,t){let n=e[1]||"",a=e[2]||"";const s="".concat(n,">").concat(a);let i=Uc.get(s);i||(i=Rc(n,a),Uc.set(s,i));const{company:o,domain:r,device:l,emailType:m}=i,c="".concat(n,">").concat(t);let u=Hc.get(c);u||(u=function(e,t,n){const a=Fc[e||""];if(!a)return"";if(1===a.countries.length)return Oc[a.countries[0]];if(t&&-1!==[...a.prev,...a.countries,...a.next].indexOf(t))return Oc[Lc[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 Oc[t]}return a.title}(t,r,n),Hc.set(s,i));const p=Bc.get(s);if(p)n=p.author,a=p.email;else{const e=Gc(n),t=Wc.get(e);e&&t&&t!==n&&(Wc.set(e,t),n=t);const i=zc.get(a);a&&i&&i!==n&&(zc.set(a,i),n=i);const o=qc.get(n);n&&o&&o!==a&&(qc.set(n,o),a=o);const r=Gc(n);n=n.replace(/[.\-_]+/gm," ").replace(/([a-z])([A-Z])/gm,"$1 $2").trim(),Wc.set(r,n),zc.set(a,n),qc.set(n,a),Bc.set(s,{author:n,email:a})}return{author:n,email:e[2]||a,emailType:m,device:l,company:o,country:u}}let Kc=1,$c=new Date;function Yc(e){var t,n,a;const s=e.split(">"),i=s[0]||"";let o=new Date(i);isNaN(o.getDay())&&(o=$c),$c=o;const r=o.getDay()-1,l=i.substring(0,10),m=i.substring(19,25),{author:c,email:u,emailType:p,device:d,company:h,country:g}=Vc(s,m),f=e.substring((null===(t=s[0])||void 0===t?void 0:t.length)+(null===(n=s[1])||void 0===n?void 0:n.length)+(null===(a=s[2])||void 0===a?void 0:a.length)+3),y={date:i,day:r<0?6:r,dayInMonth:o.getDate(),hours:o.getHours(),minutes:o.getMinutes(),month:o.getMonth(),year:o.getUTCFullYear(),week:0,timezone:m,timestamp:l,milliseconds:o.getTime(),author:c,email:u,emailType:p,message:f,company:h,country:g,device:d,text:"",type:"",scope:"",fileChanges:[]},v=0===f.indexOf("Pull request #"),_=0===f.indexOf("Merge pull request #"),k=0===f.indexOf("Merge commit ")||0===f.indexOf("Merge remote-tracking branch")||0===f.indexOf("Merge branch "),b=0===f.indexOf("Automatic merge from");if(v||_||k||b){let e,t,n,a,s,i,o,r,l,m,c=xi;if(_)c=bi,[t,n,a,s]=function(e){const t=(e||"").replace(/["'\r\n]+/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||""]}(f),e=Kc++,i=jc(a),[r]=Sc(a,i);else if(v){c=ki;const n=14,a=n+((f.substring(n).match(/[^0-9]/)||{index:0}).index||0);t=f.substring(n,a),e=Kc++;const s=f.substring(a+1).trim();y.message=s,i=jc(s),[r,l]=Sc(s,i)}else b&&(c=Ti,[,a,s]=f.replace(/(Automatic\smerge\sfrom\s)|(\s->\s)/gim,",").replace(/(Merge\sremote-tracking\sbranch\s')|('\sinto\s)/gim,",").split(","));o=Ac(i);const u=Ec(i);return{...y,type:r,scope:l,prId:e||"",prExternalId:t||"",task:i||"",taskNumber:o||"",taskCode:u,repository:n||"",branch:a||"",toBranch:s||"",server:m,commitType:c}}{const e=(f||"").indexOf(":"),t=e>1?f.substring(e+2).trim():f,n=jc(f),a=Ac(n),s=Ec(n),[i,o]=Sc(f,n);return{...y,task:n,taskNumber:a,taskCode:s,text:t,type:i||"",scope:o||"",changes:0,added:0,removed:0}}}function Xc(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),s=parseInt(t,10)||0,i=parseInt(n,10)||0,o=0;return s>i?(s-=i,o=i,i=0):i>s?(i-=s,o=s,s=0):(o=s,s=0,i=0),{path:a,addedLines:s,removedLines:i,changedLines:o}}function Qc(e){if("\t"===e[36])return{action:e[35],path:e.substring(37)};const t=e.split("\t"),n=t[0]||"";return{action:n[n.length-1]||"",path:t.pop()||""}}function Jc(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]||""),s="".concat(n[0]||"").concat(n[2]||"").concat(n[3]||"");return n[1]||(a=a.replace(/\/\//gm,"/")),n[2]||(s=s.replace(/\/\//gm,"/")),[a,s]}(e),a=t.toLowerCase(),s=null===n||void 0===n?void 0:n.toLowerCase();return{id:a,newId:s&&a!==s?s:void 0,path:n||t,action:"",addedLines:0,removedLines:0,changedLines:0}}function Zc(e,t){e.added+=t.addedLines||0,e.removed+=t.removedLines||0,e.changes+=t.changedLines||0}function eu(e){return"\t"===e[1]||"\t"===e[2]||"\t"===e[3]||"\t"===e[4]||"\t"===e[5]||"\t"===e[6]||"\t"===e[7]}function tu(e){let t=null;const n=[];let a=[],s=0,i=null,o=0;for(let r=0;r<e.length;r+=1){const l=e[r];if(l)if(":"===l[0]){const e=Qc(l);i=Jc(e.path),i.action=e.action,a.push(i)}else if(eu(l)){const e=Xc(l);i=a[s],i||(i=Jc(e.path),a.push(i)),s+=1,i.addedLines=e.addedLines,i.removedLines=e.removedLines,i.changedLines=e.changedLines,Zc(t,e)}else{t&&(t.fileChanges=a),a=[],s=0,t=Yc(l);const e=t.milliseconds-t.day*Ki;o?t.week=Math.floor((o-e)/6048e5):o=e,n.push(t)}}return Wc.clear(),qc.clear(),zc.clear(),Bc.clear(),Uc.clear(),Hc.clear(),Kc=1,$c=new Date,n}var nu;!function(e){e.FRONT="Frontend",e.IOS="IOS",e.ANDROID="Android",e.BACK="Backend",e.CONFIG="Config",e.DESIGN="Design"}(nu||(nu={}));const au={js:nu.FRONT,ts:nu.FRONT,tsx:nu.FRONT,vue:nu.FRONT,css:nu.FRONT,less:nu.FRONT,scss:nu.FRONT,cjs:nu.FRONT,html:nu.FRONT,jsp:nu.FRONT,swift:nu.IOS,kt:nu.ANDROID,java:nu.ANDROID,php:nu.BACK,perl:nu.BACK,py:nu.BACK,rb:nu.BACK,c:nu.BACK,h:nu.BACK,xml:nu.CONFIG,json:nu.CONFIG,yml:nu.CONFIG,csv:nu.DESIGN,png:nu.DESIGN,jpg:nu.DESIGN,jpeg:nu.DESIGN,gif:nu.DESIGN,webp:nu.DESIGN};function su(e,t,n){var a,s,i,o;if(!n.length||so.config.title)return so.config.title||"Assayo";const r=function(e){var t;const n=(null===(t=e.extension.totalInfo)||void 0===t?void 0:t[0])||{},a=(null===n||void 0===n?void 0:n.extension)||"",s=au[a];var i,o,r;return s===nu.ANDROID?(null===(i=e.extension.totalInfoByName)||void 0===i||null===(o=i.xml)||void 0===o||null===(r=o.files)||void 0===r?void 0:r.AndroidManifest)?nu.ANDROID:nu.BACK:s||a.toUpperCase()}(t)||"",l=(null===(a=e.pr.totalInfo)||void 0===a||null===(s=a[0])||void 0===s?void 0:s.task)||"",m=(null===n||void 0===n||null===(i=n[0])||void 0===i?void 0:i.year)||"",c=(null===n||void 0===n||null===(o=n[n.length-1])||void 0===o?void 0:o.year)||"",u=l.split("-").shift().toUpperCase()||"";return"".concat(u," ").concat(r," (").concat(m," - ").concat(c,")")}const iu=new class{constructor(){this.ref="",Ja(this,{ref:fn,setReference:_a})}setReference(e){this.ref=e||""}getBanner(){return function(e){const t=(e||"").split("_"),n=t.shift()||"",a=t.join("_")||"";return{isOpenInNewTab:Boolean(n&&a),logo:"./assets/logo.svg",link:{vk:"https://vk.com/".concat(a),yt:"https://www.youtube.com/@".concat(a),tg:"https://t.me/".concat(a),tw:"https://x.com/".concat(a),www:"https://".concat(a,"/")}[n],text:a,textIcon:{vk:"./social/vk.png",yt:"./social/youtube.png",tg:"./social/tg.png",tw:"./social/tw.png"}[n],color:"#FFFFFF",backgroundColor:{vk:"#5181B8",yt:"#FE0000",tg:"#29A6E6",tw:"#000000"}[n]||"#7F9BE0"}}(this.ref)}},ou=iu,ru="banner",lu="banner_icon";var mu=n(184);const cu=function(e){let{className:t}=e;const n=ou.getBanner();if(!n.isOpenInNewTab)return null;const{ref:a,link:s,banner:i,text:o,textIcon:r,color:l,backgroundColor:m}=n,c={title:o,to:s||"",target:"_blank",className:t};if(i)return(0,mu.jsx)(be,{...c,children:(0,mu.jsx)("div",{className:ru,style:{backgroundImage:"url(".concat(i,")")}})});const u=(a||"").split("_").splice(1).join(" ").toUpperCase(),p=m||"linear-gradient(135deg, rgba(64,117,252,1) 0%, rgba(172,179,246,1) 100%)";return(0,mu.jsx)(be,{...c,children:(0,mu.jsxs)("div",{title:o,className:ru,style:{color:l,background:p},children:[r?(0,mu.jsx)("img",{src:r,className:lu}):null,o||u||""]})})};const uu=new class{constructor(){this.language="",this.isOpen=!1,this.isEditor=!1,this.refKeyTranslation=new Map,Ja(this,{language:fn,isOpen:fn,isEditor:fn,refKeyTranslation:fn,show:_a,hide:_a,editorOn:_a,editorOff:_a,update:_a})}show(){this.isOpen=!0}hide(){this.isOpen=!1}editorOn(){this.isEditor=!0}editorOff(){this.isEditor=!1}update(e,t){this.refKeyTranslation.set(e,t),Ee.updateTranslation(e,t)}getList(){return Array.from(this.refKeyTranslation.entries()).map((e=>{let[t,n]=e;return{key:t,value:n}}))}export(){return this.getList().map((e=>{let{key:t,value:n}=e;return"\xa7 ".concat(t,": ").concat(n)})).join("\r\n")}setLanguage(e){this.language=e}};window.translationStore=uu;const pu=uu;const du=function(e){let{children:n,onClick:a}=e;const s=(0,t.useRef)();return(0,mu.jsx)("span",{ref:s,onClick:e=>{var t;e.stopPropagation();const n=null===s||void 0===s||null===(t=s.current)||void 0===t?void 0:t.getBoundingClientRect();a((null===n||void 0===n?void 0:n.height)+4)},children:n})},hu="component_translation_input";function gu(e){let{defaultValue:n,autoClose:a,height:s,onChange:i}=e;const o=(0,t.useRef)(),[r,l]=(0,t.useState)(n);return(0,t.useEffect)((()=>{var e;null===o||void 0===o||null===(e=o.current)||void 0===e||e.focus()}),[null===o||void 0===o?void 0:o.current]),(0,mu.jsx)("textarea",{ref:o,value:r,className:hu,style:{height:"".concat(s,"px")},onChange:e=>{e.stopPropagation(),l(e.target.value)},onBlur:()=>{a&&i(r||n)}})}gu.defaultProps={autoClosing:!0};const fu=gu;const yu=function(e){let{translationId:n,args:a,children:s}=e;const[i,o]=(0,t.useState)(0);if(!i)return(0,mu.jsx)(du,{onClick:o,children:s||Ee.get(n,a)});const r=Array.isArray(n)?n:[n],l=i/r.length,m=r.length<2,c=r.map((e=>{const t=Ee.get(e);return(0,mu.jsx)(fu,{defaultValue:t,height:l,autoClose:m,onChange:e=>{o(0),t!==e&&pu.update(n,e)}},e)}));return(0,mu.jsx)(mu.Fragment,{children:c})},vu=yi((e=>{let{translationId:n,args:a}=e;const s=(0,t.useMemo)((()=>Ee.get(n,a)),[n,a,pu.language]);return(0,mu.jsx)(mu.Fragment,{children:s})}));function _u(){return{t(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;return pu.isEditor?(0,mu.jsx)(yu,{translationId:e,args:t}):(0,mu.jsx)(vu,{translationId:e,args:t})},text(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;return Ee.get(e,t)},wrapper(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;return pu.isEditor?(0,mu.jsx)(yu,{translationId:e,children:t}):t}}}const ku="card_with_icon",bu="card_with_icon_icon",wu="card_with_icon_value",xu="card_with_icon_title",Tu="card_with_icon_description",Cu="card_with_icon_scoring",Su="card_with_icon_scoring_wrapper",ju="card_with_icon_small",Du="card_with_icon_long",Au="card_with_icon_banner";function Eu(e){let{id:t,title:n,value:a,total:s}=e;const{text:i}=_u();return a?(0,mu.jsx)("div",{className:Su,children:(0,mu.jsx)("div",{id:t,title:i(n||"page.person.scoring.toolbar"),className:Cu,children:"".concat(a," / ").concat(s||a)})}):null}Eu.defaultProps={id:void 0,title:void 0,value:void 0,total:void 0};const Iu=Eu;function Nu(e){let{title:t,description:n,value:a,suffix:s,icon:i,size:o,scoring:r}=e;const{t:l,text:m}=_u();if(!a&&0!==a)return null;const c=[ku];return"l"===o&&c.push(Du),"s"===o&&c.push(ju),(0,mu.jsxs)("figure",{className:c.join(" "),children:[i&&(0,mu.jsx)("img",{className:bu,alt:m(t||""),src:i}),(0,mu.jsxs)("p",{className:wu,children:[He,a,s||""]}),(0,mu.jsx)("h4",{className:xu,children:l(t||"")}),(0,mu.jsx)("figcaption",{className:Tu,children:l(n||"")}),r?(0,mu.jsx)(Iu,{title:null===r||void 0===r?void 0:r.title,value:null===r||void 0===r?void 0:r.value,total:null===r||void 0===r?void 0:r.total}):null]})}Nu.defaultProps={description:"",suffix:"",icon:void 0,size:"m",scoring:void 0};const Pu=Nu,Ru="card_with_icon_small",Ou="card_with_icon_small2",Lu="card_with_icon_small_icon",Mu="card_with_icon_small_value",Fu="card_with_icon_small_title";function Wu(e){let{title:t,description:n,value:a,icon:s,scoring:i}=e;const{t:o,text:r}=_u();if(!a)return null;if(Array.isArray(a)&&!a.length)return null;const l=Mu;let m=r(n);s&&(m="");const c=Array.isArray(a)&&"string"===typeof(null===a||void 0===a?void 0:a[0])?a.map((e=>(0,mu.jsx)("p",{className:l,children:e},e))):(0,mu.jsx)("p",{className:l,children:a});return(0,mu.jsxs)("figure",{className:Ru,children:[(0,mu.jsxs)("div",{className:Ou,children:[s&&(0,mu.jsx)("img",{className:Lu,src:s}),c,(0,mu.jsx)("figcaption",{title:m,className:Fu,children:o(t||"")})]}),i?(0,mu.jsx)(Iu,{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]})}Wu.defaultProps={description:"",icon:void 0};const qu=Wu;function zu(e){let{size:t}=e;const n=[ku,Au];return"s"===t&&n.push(ju),"l"===t&&n.push(Du),(0,mu.jsx)(cu,{className:n.join(" ")})}zu.defaultProps={size:"m"};const Bu=zu,Uu={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 Hu(e){return{link:Uu.ui_kit_button_link,slim:Uu.ui_kit_button_slim,second:Uu.ui_kit_button_second,primary:Uu.ui_kit_button_primary,border:Uu.ui_kit_button_border,full_size:Uu.ui_kit_button_full_size}[e||""]||""}const Gu=function(e){let{title:t,mode:n,disabled:a,className:s,onClick:i,children:o}=e;const r=function(e,t){let n="";return n=Array.isArray(e)?e.map(Hu).join(" "):Hu(e||"primary"),t&&(n+=" ".concat(Uu.disabled)),n}(n,a);return(0,mu.jsx)("button",{title:t,className:"".concat(Uu.ui_kit_button," ").concat(r||""," ").concat(s||""),onClick:()=>{i&&i()},children:o})};class Vu{constructor(){this.timer=null,this.limit=6,this.messages=[],Ja(this,{messages:fn,show:_a,startClearTimer:_a})}static getTime(){return(new Date).getTime()}show(e){this.messages.push({id:Vu.getTime(),title:Ee.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=Vu.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 Ku=new Vu;function $u(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 Yu="console",Xu="console_header",Qu="console_body",Ju="console_header_icon",Zu="console_copy";function ep(e){let{className:t,textForCopy:n,children:a}=e;return(0,mu.jsxs)("div",{className:"".concat(Yu," ").concat(t||""),children:[(0,mu.jsxs)("div",{className:Xu,children:[(0,mu.jsx)("span",{className:Ju}),(0,mu.jsx)("span",{className:Ju}),(0,mu.jsx)("span",{className:Ju})]}),(0,mu.jsx)("div",{className:"".concat(Qu," scroll_y"),children:a||n}),n?(0,mu.jsx)(Gu,{mode:"second",className:Zu,onClick:()=>{$u(n),Ku.show(Ie("uiKit.console.notification"))},children:Ie("uiKit.console.button")}):null]})}ep.defaultProps={textForCopy:void 0,children:void 0,className:""};const tp=ep,np="table_wrapper",ap="table",sp="table_row",ip="table_row_hide",op="table_row_selected",rp="table_sub_row",lp="table_cell",mp="table_header_cell",cp="table_fixed",up="table_cell_number",pp="table_cell_icon_open",dp="table_cell_icon_close";function hp(e,t,n,a){const s=[e];if(a&&s.push(a),t.className){const e="function"===typeof t.className?t.className(...n):t.className;s.push(e)}return t.isFixed&&s.push(cp),s.join(" ")}const gp="table_sort_up",fp="table_sort_down";function yp(e){let{columns:t,className:n,updateSort:a}=e;const{t:s}=_u();let i=0;const o=t.map(((e,o)=>{var r;i+=(null===(r=t[o-1])||void 0===r?void 0:r.width)||0;const l=hp(mp,e,["header",o],n);return"function"===typeof e.title?(0,mu.jsx)("div",{className:l,style:{width:e.width,left:i},children:e.title()},"".concat(e.title,"_").concat(o)):(0,mu.jsxs)("div",{className:l,style:{width:e.width,left:i},children:[(0,mu.jsx)("span",{onClick:()=>{e.isSortable&&a&&a([{property:"string"===typeof e.isSortable?e.isSortable:e.properties,direction:[1,-1][e.sortDirection||0]||0}])},children:s(e.title)}),e.title&&-1===e.sortDirection&&(0,mu.jsx)("div",{className:fp}),e.title&&1===e.sortDirection&&(0,mu.jsx)("div",{className:gp})]},"".concat(e.title,"_").concat(o))}));return(0,mu.jsxs)("div",{className:"".concat(sp," ").concat(n),children:[He,o]})}yp.defaultProps={className:"",updateSort:()=>{}};const vp=yp;let _p;function kp(e){var t,n;let{column:a,row:s,rowIndex:i,marginLeft:o,className:r}=e;const l=hp(lp,a,["body",s],r),m=a.isFixed?o:0,c=a.onClick?()=>{a.onClick&&a.onClick(s)}:void 0,u=a.properties?s[a.properties]:s,p=a.formatter?a.formatter(u,i):u,d="function"===typeof a.template?a.template(p,s,i):"".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:"").concat(He),h="string"===typeof d&&d.length>20?d:null;return(0,mu.jsx)("div",{title:h,className:l,style:{left:m,width:a.width,cursor:c?"pointer":"auto"},onClick:c,children:d},String(a.title))}!function(e){e.STRING="STRING",e.NUMBER="NUMBER",e.SHORT_NUMBER="SHORT_NUMBER",e.DETAILS="DETAILS",e.PULL_REQUESTS="PULL_REQUESTS",e.TASK="TASK",e.TAGS="TAGS"}(_p||(_p={})),kp.defaultPeops={className:""};const bp=kp;function wp(e){let{column:t,row:n,className:a,rowConfig:s,marginLeft:i,updateRowsConfig:o}=e;const r=s||{id:1},l=null!==t&&void 0!==t&&t.isFixed?i:0,m=null!==r&&void 0!==r&&r.details?pp:dp,c=hp(lp,t,["body",n],a),u=null===n||void 0===n?void 0:n[(null===t||void 0===t?void 0:t.properties)||""],p=(Array.isArray(u)||u instanceof Set?(null===u||void 0===u?void 0:u.length)||(null===u||void 0===u?void 0:u.size):!!u)||!(null!==t&&void 0!==t&&t.properties);return(0,mu.jsx)("div",{className:c,style:{left:l,width:t.width,cursor:"pointer"},onClick:()=>{p&&o&&o({...r,details:!(null!==r&&void 0!==r&&r.details)})},children:p&&(0,mu.jsx)("img",{className:m,src:"./assets/list/arrow.svg"})},String(t.title))}wp.defaultPeops={className:""};const xp=wp;function Tp(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 Cp(e){return{id:e,details:!1,disabled:!1}}const Sp=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 s=Tp(e,a);n[s]=t[s]||Cp(s)})),n};function jp(e){var t;let{rows:n,disabledRow:a,columns:s,tableWidth:i,className:o,rowsConfig:r,updateRowsConfig:l}=e;const m=[],c=null===(t=s.find((e=>e.template===_p.DETAILS)))||void 0===t?void 0:t.formatter;return null===n||void 0===n||n.forEach(((e,t)=>{let n=0;const u=(r||{})[Tp(e,t)],p=s.map(((a,i)=>{var o;const r="".concat(a.title,"_").concat(i);return n+=(null===(o=s[i-1])||void 0===o?void 0:o.width)||0,a.template===_p.DETAILS?(0,mu.jsx)(xp,{column:a,row:e,rowConfig:u,marginLeft:n,updateRowsConfig:l},r):(0,mu.jsx)(bp,{column:a,row:e,rowIndex:t,marginLeft:n},r)})),d=[sp,o];a&&a(e)&&d.push(ip),null!==u&&void 0!==u&&u.details&&d.push(op),m.push((0,mu.jsx)("div",{className:d.join(""),children:p},t)),null!==u&&void 0!==u&&u.details&&c&&m.push((0,mu.jsx)("div",{style:{width:"".concat(i,"px")},className:"".concat(rp," ").concat(o),children:c(e)||null},"".concat(t,"-detail")))})),(0,mu.jsx)(mu.Fragment,{children:m})}jp.defaultProps={className:""};const Dp=jp;const Ap=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)),{}),s=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}})),i=Math.floor(s.length/2);return[...s.filter(((e,t)=>e.isFixed&&t<=i)),...s.filter((e=>!e.isFixed)),...s.filter(((e,t)=>e.isFixed&&t>i))]},Ep="ui_kit_tags",Ip="ui_kit_tags_item",Np="ui_kit_tags_item_empty";function Pp(e){let{value:t,title:n,mode:a}=e;const{t:s}=_u(),i=a?"".concat(Ip," ").concat(Np):Ip;return(0,mu.jsx)("div",{title:n,className:i,children:s("".concat(t))||t})}Pp.displayName="UiKitTag";const Rp=Pp;function Op(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[0],s=n.slice(1);return(0,mu.jsxs)("div",{className:Ep,children:[(0,mu.jsx)(Rp,{value:a}),s.length>0?(0,mu.jsx)(Rp,{title:s.join(", "),mode:"empty",value:"+".concat(s.length)}):null]})}Op.displayName="UiKitTags";const Lp=Op;function Mp(e){return t.Children.map(e,(e=>{var n,a,s,i,o,r,l;if(!t.isValidElement(e))return null;let m=null===e||void 0===e||null===(n=e.props)||void 0===n?void 0:n.properties,c=(null===e||void 0===e||null===(a=e.props)||void 0===a?void 0:a.template)||_p.STRING;const u=(null===e||void 0===e||null===(s=e.props)||void 0===s?void 0:s.width)||{[_p.SHORT_NUMBER]:70,[_p.PULL_REQUESTS]:80,[_p.TASK]:120,[_p.TAGS]:100}[c||""]||0,p=(null===e||void 0===e||null===(i=e.props)||void 0===i?void 0:i.className)||{[_p.STRING]:"",[_p.NUMBER]:up,[_p.SHORT_NUMBER]:up}[c||""]||"",d=(null===e||void 0===e||null===(o=e.props)||void 0===o?void 0:o.minWidth)||{[_p.STRING]:200,[_p.NUMBER]:110}[c||""]||40;c===_p.PULL_REQUESTS?c=e=>{var t;if(!e.length)return"";const n=null===(t=PT.statisticsByCommits.pr.totalInfoByName.get(e[0]))||void 0===t?void 0:t.prExternalId,a=(0,mu.jsx)(Cw,{prId:n});return 1===e.length?a:(0,mu.jsxs)(mu.Fragment,{children:[a,(0,mu.jsx)(Rp,{mode:"empty",value:"+".concat(e.length-1)})]})}:c===_p.TASK?c=e=>(0,mu.jsx)(jw,{task:e}):c===_p.TAGS&&(c=e=>(0,mu.jsx)(Lp,{value:e}));const h=null!==e&&void 0!==e&&null!==(r=e.props)&&void 0!==r&&r.isSortable?null===e||void 0===e||null===(l=e.props)||void 0===l?void 0:l.isSortable:[_p.STRING,_p.NUMBER,_p.SHORT_NUMBER].includes(c);return{...e.props,properties:m,className:p,template:c,isSortable:h,minWidth:d,defaultWidth:u,width:void 0,userWidth:void 0}}))}function Fp(e){var n;let{rows:a=[],sort:s=[],headless:i,disabledRow:o,updateSort:r,children:l}=e;const[m,c]=(0,t.useState)(0),[u,p]=(0,t.useState)({});if(!a||!a.length)return null;const d=t.useRef(),h=null===d||void 0===d||null===(n=d.current)||void 0===n?void 0:n.offsetWidth;(0,t.useEffect)((()=>{c(h)}),[h]),(0,t.useEffect)((()=>{const e=Sp(a,u);p(e)}),[a]);const g=Mp(l),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)),s=a.reduce(((e,t)=>e+t),0);let i=a.filter((e=>!e)).length;if(!i)return 40;let o=t-s,r=Math.floor(o/i);return n.forEach((e=>{e.userWidth||e.defaultWidth||!e.minWidth||e.minWidth<r||!i||(o-=e.minWidth,i-=1,r=o/i)})),Math.max(r||40,40)}(g,m),y=Ap(g,f,s);return(0,mu.jsx)("div",{ref:d,className:"".concat(np," scroll_x"),onTouchStart:e=>e.stopPropagation(),onMouseDown:e=>e.stopPropagation(),children:(0,mu.jsxs)("div",{className:ap,children:[!0===i?null:(0,mu.jsx)(vp,{columns:y,updateSort:r}),(0,mu.jsx)(Dp,{rows:a,columns:y,tableWidth:m,disabledRow:o,rowsConfig:u,updateRowsConfig:e=>{p({...u,[e.id]:e})}})]})})}Fp.defaultProps={rows:[],sort:[],updateSort:()=>{}};const Wp=Fp;function qp(e){let{template:t,title:n,properties:a,prefixes:s,suffixes:i,formatter:o,className:r,style:l,isFixed:m,isSortable:c,isResizable:u,isDraggable:p,isShow:d,minWidth:h,width:g,onClick:f}=e;return(0,mu.jsx)(mu.Fragment,{children:{template:t,title:n,properties:a,prefixes:s,suffixes:i,formatter:o,className:r,style:l,isFixed:m,isSortable:c,isResizable:u,isDraggable:p,isShow:d,minWidth:h,width:g,onClick:f}})}qp.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 zp=qp;var Bp={version:"0.18.5"},Up=1200,Hp=1252,Gp=[874,932,936,949,950,1250,1251,1252,1253,1254,1255,1256,1257,1258,1e4],Vp={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},Kp=function(e){-1!=Gp.indexOf(e)&&(Hp=Vp[0]=e)};var $p=function(e){Up=e,Kp(e)};function Yp(){$p(1200),Kp(1252)}function Xp(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 Qp,Jp=function(e){return String.fromCharCode(e)},Zp=function(e){return String.fromCharCode(e)};var ed="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function td(e){for(var t="",n=0,a=0,s=0,i=0,o=0,r=0,l=0,m=0;m<e.length;)i=(n=e.charCodeAt(m++))>>2,o=(3&n)<<4|(a=e.charCodeAt(m++))>>4,r=(15&a)<<2|(s=e.charCodeAt(m++))>>6,l=63&s,isNaN(a)?r=l=64:isNaN(s)&&(l=64),t+=ed.charAt(i)+ed.charAt(o)+ed.charAt(r)+ed.charAt(l);return t}function nd(e){var t="",n=0,a=0,s=0,i=0,o=0,r=0;e=e.replace(/[^\w\+\/\=]/g,"");for(var l=0;l<e.length;)n=ed.indexOf(e.charAt(l++))<<2|(i=ed.indexOf(e.charAt(l++)))>>4,t+=String.fromCharCode(n),a=(15&i)<<4|(o=ed.indexOf(e.charAt(l++)))>>2,64!==o&&(t+=String.fromCharCode(a)),s=(3&o)<<6|(r=ed.indexOf(e.charAt(l++))),64!==r&&(t+=String.fromCharCode(s));return t}var ad=function(){return"undefined"!==typeof Buffer&&"undefined"!==typeof process&&"undefined"!==typeof process.versions&&!!process.versions.node}(),sd=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 id(e){return ad?Buffer.alloc?Buffer.alloc(e):new Buffer(e):"undefined"!=typeof Uint8Array?new Uint8Array(e):new Array(e)}function od(e){return ad?Buffer.allocUnsafe?Buffer.allocUnsafe(e):new Buffer(e):"undefined"!=typeof Uint8Array?new Uint8Array(e):new Array(e)}var rd=function(e){return ad?sd(e,"binary"):e.split("").map((function(e){return 255&e.charCodeAt(0)}))};function ld(e){if("undefined"===typeof ArrayBuffer)return rd(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 md(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 cd=ad?function(e){return Buffer.concat(e.map((function(e){return Buffer.isBuffer(e)?e:sd(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),s=0;for(t=0,n=0;t<e.length;n+=s,++t)if(s=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 ud=/\u0000/g,pd=/[\u0001-\u0006]/g;function dd(e){for(var t="",n=e.length-1;n>=0;)t+=e.charAt(n--);return t}function hd(e,t){var n=""+e;return n.length>=t?n:Sh("0",t-n.length)+n}function gd(e,t){var n=""+e;return n.length>=t?n:Sh(" ",t-n.length)+n}function fd(e,t){var n=""+e;return n.length>=t?n:n+Sh(" ",t-n.length)}var yd=Math.pow(2,32);function vd(e,t){return e>yd||e<-yd?function(e,t){var n=""+Math.round(e);return n.length>=t?n:Sh("0",t-n.length)+n}(e,t):function(e,t){var n=""+e;return n.length>=t?n:Sh("0",t-n.length)+n}(Math.round(e),t)}function _d(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 kd=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]],bd=[["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 wd={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 "'},xd={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},Td={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 Cd(e,t,n){for(var a=e<0?-1:1,s=e*a,i=0,o=1,r=0,l=1,m=0,c=0,u=Math.floor(s);m<t&&(r=(u=Math.floor(s))*o+i,c=u*m+l,!(s-u<5e-8));)s=1/(s-u),i=o,o=r,l=m,m=c;if(c>t&&(m>t?(c=l,r=i):(c=m,r=o)),!n)return[0,a*r,c];var p=Math.floor(a*r/c);return[p,a*r-p*c,c]}function Sd(e,t,n){if(e>2958465||e<0)return null;var a=0|e,s=Math.floor(86400*(e-a)),i=0,o=[],r={D:a,T:s,u:86400*(e-a)-s,y:0,m:0,d:0,H:0,M:0,S:0,q:0};if(Math.abs(r.u)<1e-6&&(r.u=0),t&&t.date1904&&(a+=1462),r.u>.9999&&(r.u=0,86400==++s&&(r.T=s=0,++a,++r.D)),60===a)o=n?[1317,10,29]:[1900,2,29],i=3;else if(0===a)o=n?[1317,8,29]:[1900,1,0],i=6;else{a>60&&--a;var l=new Date(1900,0,1);l.setDate(l.getDate()+a-1),o=[l.getFullYear(),l.getMonth()+1,l.getDate()],i=l.getDay(),a<60&&(i=(i+6)%7),n&&(i=function(e,t){t[0]-=581;var n=e.getDay();e<60&&(n=(n+6)%7);return n}(l,o))}return r.y=o[0],r.m=o[1],r.d=o[2],r.S=s%60,s=Math.floor(s/60),r.M=s%60,s=Math.floor(s/60),r.H=s,r.q=i,r}var jd=new Date(1899,11,31,0,0,0),Dd=jd.getTime(),Ad=new Date(1900,2,1,0,0,0);function Ed(e,t){var n=e.getTime();return t?n-=1262304e5:e>=Ad&&(n+=864e5),(n-(Dd+6e4*(e.getTimezoneOffset()-jd.getTimezoneOffset())))/864e5}function Id(e){return-1==e.indexOf(".")?e:e.replace(/(?:\.0*|(\.\d*[1-9])0+)$/,"$1")}function Nd(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=Id(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=Id(e.toFixed(11));return t.length>(e<0?12:11)||"0"===t||"-0"===t?e.toPrecision(6):t}(e),Id(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 Pd(e,t){switch(typeof e){case"string":return e;case"boolean":return e?"TRUE":"FALSE";case"number":return(0|e)===e?e.toString(10):Nd(e);case"undefined":return"";case"object":if(null==e)return"";if(e instanceof Date)return eh(14,Ed(e,t&&t.date1904),t)}throw new Error("unsupported value in General format: "+e)}function Rd(e,t,n,a){var s,i="",o=0,r=0,l=n.y,m=0;switch(e){case 98:l=n.y+543;case 121:switch(t.length){case 1:case 2:s=l%100,m=2;break;default:s=l%1e4,m=4}break;case 109:switch(t.length){case 1:case 2:s=n.m,m=t.length;break;case 3:return bd[n.m-1][1];case 5:return bd[n.m-1][0];default:return bd[n.m-1][2]}break;case 100:switch(t.length){case 1:case 2:s=n.d,m=t.length;break;case 3:return kd[n.q][0];default:return kd[n.q][1]}break;case 104:switch(t.length){case 1:case 2:s=1+(n.H+11)%12,m=t.length;break;default:throw"bad hour format: "+t}break;case 72:switch(t.length){case 1:case 2:s=n.H,m=t.length;break;default:throw"bad hour format: "+t}break;case 77:switch(t.length){case 1:case 2:s=n.M,m=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?(r=a>=2?3===a?1e3:100:1===a?10:1,(o=Math.round(r*(n.S+n.u)))>=60*r&&(o=0),"s"===t?0===o?"0":""+o/r:(i=hd(o,2+a),"ss"===t?i.substr(0,2):"."+i.substr(2,t.length-1))):hd(n.S,t.length);case 90:switch(t){case"[h]":case"[hh]":s=24*n.D+n.H;break;case"[m]":case"[mm]":s=60*(24*n.D+n.H)+n.M;break;case"[s]":case"[ss]":s=60*(60*(24*n.D+n.H)+n.M)+Math.round(n.S+n.u);break;default:throw"bad abstime format: "+t}m=3===t.length?1:2;break;case 101:s=l,m=1}return m>0?hd(s,m):""}function Od(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 Ld=/%/g;function Md(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"-"+Md(e,-t);var s=e.indexOf(".");-1===s&&(s=e.indexOf("E"));var i=Math.floor(Math.log(t)*Math.LOG10E)%s;if(i<0&&(i+=s),-1===(n=(t/Math.pow(10,i)).toPrecision(a+1+(s+i)%s)).indexOf("e")){var o=Math.floor(Math.log(t)*Math.LOG10E);for(-1===n.indexOf(".")?n=n.charAt(0)+"."+n.substr(1)+"E+"+(o-n.length+i):n+="E+"+(o-i);"0."===n.substr(0,2);)n=(n=n.charAt(0)+n.substr(2,s)+"."+n.substr(2+s)).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,(s+i)%s)+"."+a.substr(i)+"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 Fd=/# (\?+)( ?)\/( ?)(\d+)/;var Wd=/^#*0*\.([0#]+)/,qd=/\).*[0#]/,zd=/\(###\) ###\\?-####/;function Bd(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 Ud(e,t){var n=Math.pow(10,t);return""+Math.round(e*n)/n}function Hd(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 Gd(e,t,n){if(40===e.charCodeAt(0)&&!t.match(qd)){var a=t.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");return n>=0?Gd("n",a,n):"("+Gd("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 $d(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(Ld,""),s=t.length-a.length;return $d(e,a,n*Math.pow(10,2*s))+Sh("%",s)}(e,t,n);if(-1!==t.indexOf("E"))return Md(t,n);if(36===t.charCodeAt(0))return"$"+Gd(e,t.substr(" "==t.charAt(1)?2:1),n);var s,i,o,r,l=Math.abs(n),m=n<0?"-":"";if(t.match(/^00+$/))return m+vd(l,t.length);if(t.match(/^[#?]+$/))return"0"===(s=vd(n,0))&&(s=""),s.length>t.length?s:Bd(t.substr(0,t.length-s.length))+s;if(i=t.match(Fd))return function(e,t,n){var a=parseInt(e[4],10),s=Math.round(t*a),i=Math.floor(s/a),o=s-i*a,r=a;return n+(0===i?"":""+i)+" "+(0===o?Sh(" ",e[1].length+1+e[4].length):gd(o,e[1].length)+e[2]+"/"+e[3]+hd(r,e[4].length))}(i,l,m);if(t.match(/^#+0+$/))return m+vd(l,t.length-t.indexOf("0"));if(i=t.match(Wd))return s=Ud(n,i[1].length).replace(/^([^\.]+)$/,"$1."+Bd(i[1])).replace(/\.$/,"."+Bd(i[1])).replace(/\.(\d*)$/,(function(e,t){return"."+t+Sh("0",Bd(i[1]).length-t.length)})),-1!==t.indexOf("0.")?s:s.replace(/^0\./,".");if(t=t.replace(/^#+([0.])/,"$1"),i=t.match(/^(0*)\.(#*)$/))return m+Ud(l,i[2].length).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,i[1].length?"0.":".");if(i=t.match(/^#{1,3},##0(\.?)$/))return m+Od(vd(l,0));if(i=t.match(/^#,##0\.([#0]*0)$/))return n<0?"-"+Gd(e,t,-n):Od(""+(Math.floor(n)+function(e,t){return t<(""+Math.round((e-Math.floor(e))*Math.pow(10,t))).length?1:0}(n,i[1].length)))+"."+hd(Hd(n,i[1].length),i[1].length);if(i=t.match(/^#,#*,#0/))return Gd(e,t.replace(/^#,#*,/,""),n);if(i=t.match(/^([0#]+)(\\?-([0#]+))+$/))return s=dd(Gd(e,t.replace(/[\\-]/g,""),n)),o=0,dd(dd(t.replace(/\\/g,"")).replace(/[0#]/g,(function(e){return o<s.length?s.charAt(o++):"0"===e?"0":""})));if(t.match(zd))return"("+(s=Gd(e,"##########",n)).substr(0,3)+") "+s.substr(3,3)+"-"+s.substr(6);var c="";if(i=t.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))return o=Math.min(i[4].length,7),r=Cd(l,Math.pow(10,o)-1,!1),s=""+m," "==(c=$d("n",i[1],r[1])).charAt(c.length-1)&&(c=c.substr(0,c.length-1)+"0"),s+=c+i[2]+"/"+i[3],(c=fd(r[2],o)).length<i[4].length&&(c=Bd(i[4].substr(i[4].length-c.length))+c),s+=c;if(i=t.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))return o=Math.min(Math.max(i[1].length,i[4].length),7),m+((r=Cd(l,Math.pow(10,o)-1,!0))[0]||(r[1]?"":"0"))+" "+(r[1]?gd(r[1],o)+i[2]+"/"+i[3]+fd(r[2],o):Sh(" ",2*o+1+i[2].length+i[3].length));if(i=t.match(/^[#0?]+$/))return s=vd(n,0),t.length<=s.length?s:Bd(t.substr(0,t.length-s.length))+s;if(i=t.match(/^([#0?]+)\.([#0]+)$/)){s=""+n.toFixed(Math.min(i[2].length,10)).replace(/([^0])0+$/,"$1"),o=s.indexOf(".");var u=t.indexOf(".")-o,p=t.length-s.length-u;return Bd(t.substr(0,u)+s+t.substr(t.length-p))}if(i=t.match(/^00,000\.([#0]*0)$/))return o=Hd(n,i[1].length),n<0?"-"+Gd(e,t,-n):Od(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?hd(0,3-e.length):"")+e}))+"."+hd(o,i[1].length);switch(t){case"###,##0.00":return Gd(e,"#,##0.00",n);case"###,###":case"##,###":case"#,###":var d=Od(vd(l,0));return"0"!==d?m+d:"";case"###,###.00":return Gd(e,"###,##0.00",n).replace(/^0\./,".");case"#,###.00":return Gd(e,"#,##0.00",n).replace(/^0\./,".")}throw new Error("unsupported format |"+t+"|")}function Vd(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"-"+Vd(e,-t);var s=e.indexOf(".");-1===s&&(s=e.indexOf("E"));var i=Math.floor(Math.log(t)*Math.LOG10E)%s;if(i<0&&(i+=s),!(n=(t/Math.pow(10,i)).toPrecision(a+1+(s+i)%s)).match(/[Ee]/)){var o=Math.floor(Math.log(t)*Math.LOG10E);-1===n.indexOf(".")?n=n.charAt(0)+"."+n.substr(1)+"E+"+(o-n.length+i):n+="E+"+(o-i),n=n.replace(/\+-/,"-")}n=n.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,(function(e,t,n,a){return t+n+a.substr(0,(s+i)%s)+"."+a.substr(i)+"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 Kd(e,t,n){if(40===e.charCodeAt(0)&&!t.match(qd)){var a=t.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");return n>=0?Kd("n",a,n):"("+Kd("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 $d(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(Ld,""),s=t.length-a.length;return $d(e,a,n*Math.pow(10,2*s))+Sh("%",s)}(e,t,n);if(-1!==t.indexOf("E"))return Vd(t,n);if(36===t.charCodeAt(0))return"$"+Kd(e,t.substr(" "==t.charAt(1)?2:1),n);var s,i,o,r,l=Math.abs(n),m=n<0?"-":"";if(t.match(/^00+$/))return m+hd(l,t.length);if(t.match(/^[#?]+$/))return s=""+n,0===n&&(s=""),s.length>t.length?s:Bd(t.substr(0,t.length-s.length))+s;if(i=t.match(Fd))return function(e,t,n){return n+(0===t?"":""+t)+Sh(" ",e[1].length+2+e[4].length)}(i,l,m);if(t.match(/^#+0+$/))return m+hd(l,t.length-t.indexOf("0"));if(i=t.match(Wd))return s=(s=(""+n).replace(/^([^\.]+)$/,"$1."+Bd(i[1])).replace(/\.$/,"."+Bd(i[1]))).replace(/\.(\d*)$/,(function(e,t){return"."+t+Sh("0",Bd(i[1]).length-t.length)})),-1!==t.indexOf("0.")?s:s.replace(/^0\./,".");if(t=t.replace(/^#+([0.])/,"$1"),i=t.match(/^(0*)\.(#*)$/))return m+(""+l).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,i[1].length?"0.":".");if(i=t.match(/^#{1,3},##0(\.?)$/))return m+Od(""+l);if(i=t.match(/^#,##0\.([#0]*0)$/))return n<0?"-"+Kd(e,t,-n):Od(""+n)+"."+Sh("0",i[1].length);if(i=t.match(/^#,#*,#0/))return Kd(e,t.replace(/^#,#*,/,""),n);if(i=t.match(/^([0#]+)(\\?-([0#]+))+$/))return s=dd(Kd(e,t.replace(/[\\-]/g,""),n)),o=0,dd(dd(t.replace(/\\/g,"")).replace(/[0#]/g,(function(e){return o<s.length?s.charAt(o++):"0"===e?"0":""})));if(t.match(zd))return"("+(s=Kd(e,"##########",n)).substr(0,3)+") "+s.substr(3,3)+"-"+s.substr(6);var c="";if(i=t.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))return o=Math.min(i[4].length,7),r=Cd(l,Math.pow(10,o)-1,!1),s=""+m," "==(c=$d("n",i[1],r[1])).charAt(c.length-1)&&(c=c.substr(0,c.length-1)+"0"),s+=c+i[2]+"/"+i[3],(c=fd(r[2],o)).length<i[4].length&&(c=Bd(i[4].substr(i[4].length-c.length))+c),s+=c;if(i=t.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))return o=Math.min(Math.max(i[1].length,i[4].length),7),m+((r=Cd(l,Math.pow(10,o)-1,!0))[0]||(r[1]?"":"0"))+" "+(r[1]?gd(r[1],o)+i[2]+"/"+i[3]+fd(r[2],o):Sh(" ",2*o+1+i[2].length+i[3].length));if(i=t.match(/^[#0?]+$/))return s=""+n,t.length<=s.length?s:Bd(t.substr(0,t.length-s.length))+s;if(i=t.match(/^([#0]+)\.([#0]+)$/)){s=""+n.toFixed(Math.min(i[2].length,10)).replace(/([^0])0+$/,"$1"),o=s.indexOf(".");var u=t.indexOf(".")-o,p=t.length-s.length-u;return Bd(t.substr(0,u)+s+t.substr(t.length-p))}if(i=t.match(/^00,000\.([#0]*0)$/))return n<0?"-"+Kd(e,t,-n):Od(""+n).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,(function(e){return"00,"+(e.length<3?hd(0,3-e.length):"")+e}))+"."+hd(0,i[1].length);switch(t){case"###,###":case"##,###":case"#,###":var d=Od(""+l);return"0"!==d?m+d:"";default:if(t.match(/\.[0#?]*$/))return Kd(e,t.slice(0,t.lastIndexOf(".")),n)+Bd(t.slice(t.lastIndexOf(".")))}throw new Error("unsupported format |"+t+"|")}function $d(e,t,n){return(0|n)===n?Kd(e,t,n):Gd(e,t,n)}var Yd=/\[[HhMmSs\u0E0A\u0E19\u0E17]*\]/;function Xd(e){for(var t=0,n="",a="";t<e.length;)switch(n=e.charAt(t)){case"G":_d(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(Yd))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 Qd=/\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/;function Jd(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 Zd(e,t){var n=function(e){for(var t=[],n=!1,a=0,s=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(s,a-s),s=a+1}if(t[t.length]=e.substr(s),!0===n)throw new Error("Format |"+e+"| unterminated string ");return t}(e),a=n.length,s=n[a-1].indexOf("@");if(a<4&&s>-1&&--a,n.length>4)throw new Error("cannot find right format for |"+n.join("|")+"|");if("number"!==typeof t)return[4,4===n.length||s>-1?n[n.length-1]:"@"];switch(n.length){case 1:n=s>-1?["General","General","General",n[0]]:[n[0],n[0],n[0],"@"];break;case 2:n=s>-1?[n[0],n[0],n[0],n[1]]:[n[0],n[1],n[0],"@"];break;case 3:n=s>-1?[n[0],n[1],n[0],n[2]]:[n[0],n[1],n[2],"@"]}var i=t>0?n[0]:t<0?n[1]:n[2];if(-1===n[0].indexOf("[")&&-1===n[1].indexOf("["))return[a,i];if(null!=n[0].match(/\[[=<>]/)||null!=n[1].match(/\[[=<>]/)){var o=n[0].match(Qd),r=n[1].match(Qd);return Jd(t,o)?[a,n[0]]:Jd(t,r)?[a,n[1]]:[a,n[null!=o&&null!=r?2:1]]}return[a,i]}function eh(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:wd)[e])&&(a=n.table&&n.table[xd[e]]||wd[xd[e]]),null==a&&(a=Td[e]||"General")}if(_d(a,0))return Pd(t,n);t instanceof Date&&(t=Ed(t,n.date1904));var s=Zd(a,t);if(_d(s[1]))return Pd(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 s,i,o,r=[],l="",m=0,c="",u="t",p="H";m<e.length;)switch(c=e.charAt(m)){case"G":if(!_d(e,m))throw new Error("unrecognized character "+c+" in "+e);r[r.length]={t:"G",v:"General"},m+=7;break;case'"':for(l="";34!==(o=e.charCodeAt(++m))&&m<e.length;)l+=String.fromCharCode(o);r[r.length]={t:"t",v:l},++m;break;case"\\":var d=e.charAt(++m),h="("===d||")"===d?d:"t";r[r.length]={t:h,v:d},++m;break;case"_":r[r.length]={t:"t",v:" "},m+=2;break;case"@":r[r.length]={t:"T",v:t},++m;break;case"B":case"b":if("1"===e.charAt(m+1)||"2"===e.charAt(m+1)){if(null==s&&null==(s=Sd(t,n,"2"===e.charAt(m+1))))return"";r[r.length]={t:"X",v:e.substr(m,2)},u=c,m+=2;break}case"M":case"D":case"Y":case"H":case"S":case"E":c=c.toLowerCase();case"m":case"d":case"y":case"h":case"s":case"e":case"g":if(t<0)return"";if(null==s&&null==(s=Sd(t,n)))return"";for(l=c;++m<e.length&&e.charAt(m).toLowerCase()===c;)l+=c;"m"===c&&"h"===u.toLowerCase()&&(c="M"),"h"===c&&(c=p),r[r.length]={t:c,v:l},u=c;break;case"A":case"a":case"\u4e0a":var g={t:c,v:c};if(null==s&&(s=Sd(t,n)),"A/P"===e.substr(m,3).toUpperCase()?(null!=s&&(g.v=s.H>=12?"P":"A"),g.t="T",p="h",m+=3):"AM/PM"===e.substr(m,5).toUpperCase()?(null!=s&&(g.v=s.H>=12?"PM":"AM"),g.t="T",m+=5,p="h"):"\u4e0a\u5348/\u4e0b\u5348"===e.substr(m,5).toUpperCase()?(null!=s&&(g.v=s.H>=12?"\u4e0b\u5348":"\u4e0a\u5348"),g.t="T",m+=5,p="h"):(g.t="t",++m),null==s&&"T"===g.t)return"";r[r.length]=g,u=c;break;case"[":for(l=c;"]"!==e.charAt(m++)&&m<e.length;)l+=e.charAt(m);if("]"!==l.slice(-1))throw'unterminated "[" block: |'+l+"|";if(l.match(Yd)){if(null==s&&null==(s=Sd(t,n)))return"";r[r.length]={t:"Z",v:l.toLowerCase()},u=l.charAt(1)}else l.indexOf("$")>-1&&(l=(l.match(/\$([^-\[\]]*)/)||[])[1]||"$",Xd(e)||(r[r.length]={t:"t",v:l}));break;case".":if(null!=s){for(l=c;++m<e.length&&"0"===(c=e.charAt(m));)l+=c;r[r.length]={t:"s",v:l};break}case"0":case"#":for(l=c;++m<e.length&&"0#?.,E+-%".indexOf(c=e.charAt(m))>-1;)l+=c;r[r.length]={t:"n",v:l};break;case"?":for(l=c;e.charAt(++m)===c;)l+=c;r[r.length]={t:c,v:l},u=c;break;case"*":++m," "!=e.charAt(m)&&"*"!=e.charAt(m)||++m;break;case"(":case")":r[r.length]={t:1===a?"t":c,v:c},++m;break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":for(l=c;m<e.length&&"0123456789".indexOf(e.charAt(++m))>-1;)l+=e.charAt(m);r[r.length]={t:"D",v:l};break;case" ":r[r.length]={t:c,v:c},++m;break;case"$":r[r.length]={t:"t",v:"$"},++m;break;default:if(-1===",$-+/():!^&'~{}<>=\u20acacfijklopqrtuvwxzP".indexOf(c))throw new Error("unrecognized character "+c+" in "+e);r[r.length]={t:"t",v:c},++m}var f,y=0,v=0;for(m=r.length-1,u="t";m>=0;--m)switch(r[m].t){case"h":case"H":r[m].t=p,u="h",y<1&&(y=1);break;case"s":(f=r[m].v.match(/\.0+$/))&&(v=Math.max(v,f[0].length-1)),y<3&&(y=3);case"d":case"y":case"M":case"e":u=r[m].t;break;case"m":"s"===u&&(r[m].t="M",y<2&&(y=2));break;case"X":break;case"Z":y<1&&r[m].v.match(/[Hh]/)&&(y=1),y<2&&r[m].v.match(/[Mm]/)&&(y=2),y<3&&r[m].v.match(/[Ss]/)&&(y=3)}switch(y){case 0:break;case 1:s.u>=.5&&(s.u=0,++s.S),s.S>=60&&(s.S=0,++s.M),s.M>=60&&(s.M=0,++s.H);break;case 2:s.u>=.5&&(s.u=0,++s.S),s.S>=60&&(s.S=0,++s.M)}var _,k="";for(m=0;m<r.length;++m)switch(r[m].t){case"t":case"T":case" ":case"D":break;case"X":r[m].v="",r[m].t=";";break;case"d":case"m":case"y":case"h":case"H":case"M":case"s":case"e":case"b":case"Z":r[m].v=Rd(r[m].t.charCodeAt(0),r[m].v,s,v),r[m].t="t";break;case"n":case"?":for(_=m+1;null!=r[_]&&("?"===(c=r[_].t)||"D"===c||(" "===c||"t"===c)&&null!=r[_+1]&&("?"===r[_+1].t||"t"===r[_+1].t&&"/"===r[_+1].v)||"("===r[m].t&&(" "===c||"n"===c||")"===c)||"t"===c&&("/"===r[_].v||" "===r[_].v&&null!=r[_+1]&&"?"==r[_+1].t));)r[m].v+=r[_].v,r[_]={v:"",t:";"},++_;k+=r[m].v,m=_-1;break;case"G":r[m].t="t",r[m].v=Pd(t,n)}var b,w,x="";if(k.length>0){40==k.charCodeAt(0)?(b=t<0&&45===k.charCodeAt(0)?-t:t,w=$d("n",k,b)):(w=$d("n",k,b=t<0&&a>1?-t:t),b<0&&r[0]&&"t"==r[0].t&&(w=w.substr(1),r[0].v="-"+r[0].v)),_=w.length-1;var T=r.length;for(m=0;m<r.length;++m)if(null!=r[m]&&"t"!=r[m].t&&r[m].v.indexOf(".")>-1){T=m;break}var C=r.length;if(T===r.length&&-1===w.indexOf("E")){for(m=r.length-1;m>=0;--m)null!=r[m]&&-1!=="n?".indexOf(r[m].t)&&(_>=r[m].v.length-1?(_-=r[m].v.length,r[m].v=w.substr(_+1,r[m].v.length)):_<0?r[m].v="":(r[m].v=w.substr(0,_+1),_=-1),r[m].t="t",C=m);_>=0&&C<r.length&&(r[C].v=w.substr(0,_+1)+r[C].v)}else if(T!==r.length&&-1===w.indexOf("E")){for(_=w.indexOf(".")-1,m=T;m>=0;--m)if(null!=r[m]&&-1!=="n?".indexOf(r[m].t)){for(i=r[m].v.indexOf(".")>-1&&m===T?r[m].v.indexOf(".")-1:r[m].v.length-1,x=r[m].v.substr(i+1);i>=0;--i)_>=0&&("0"===r[m].v.charAt(i)||"#"===r[m].v.charAt(i))&&(x=w.charAt(_--)+x);r[m].v=x,r[m].t="t",C=m}for(_>=0&&C<r.length&&(r[C].v=w.substr(0,_+1)+r[C].v),_=w.indexOf(".")+1,m=T;m<r.length;++m)if(null!=r[m]&&(-1!=="n?(".indexOf(r[m].t)||m===T)){for(i=r[m].v.indexOf(".")>-1&&m===T?r[m].v.indexOf(".")+1:0,x=r[m].v.substr(0,i);i<r[m].v.length;++i)_<w.length&&(x+=w.charAt(_++));r[m].v=x,r[m].t="t",C=m}}}for(m=0;m<r.length;++m)null!=r[m]&&"n?".indexOf(r[m].t)>-1&&(b=a>1&&t<0&&m>0&&"-"===r[m-1].v?-t:t,r[m].v=$d(r[m].t,r[m].v,b),r[m].t="t");var S="";for(m=0;m!==r.length;++m)null!=r[m]&&(S+=r[m].v);return S}(s[1],t,n,s[0])}function th(e,t){if("number"!=typeof t){t=+t||-1;for(var n=0;n<392;++n)if(void 0!=wd[n]){if(wd[n]==e){t=n;break}}else t<0&&(t=n);t<0&&(t=391)}return wd[t]=e,t}function nh(e){for(var t=0;392!=t;++t)void 0!==e[t]&&th(e[t],t)}function ah(){wd=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 sh=/[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g;var ih=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,s="undefined"!==typeof Int32Array?new Int32Array(4096):new Array(4096);for(a=0;256!=a;++a)s[a]=e[a];for(a=0;256!=a;++a)for(n=e[a],t=256+a;t<4096;t+=256)n=s[t]=n>>>8^e[255&n];var i=[];for(a=1;16!=a;++a)i[a-1]="undefined"!==typeof Int32Array?s.subarray(256*a,256*a+256):s.slice(256*a,256*a+256);return i}(t),a=n[0],s=n[1],i=n[2],o=n[3],r=n[4],l=n[5],m=n[6],c=n[7],u=n[8],p=n[9],d=n[10],h=n[11],g=n[12],f=n[13],y=n[14];return e.table=t,e.bstr=function(e,n){for(var a=-1^n,s=0,i=e.length;s<i;)a=a>>>8^t[255&(a^e.charCodeAt(s++))];return~a},e.buf=function(e,n){for(var v=-1^n,_=e.length-15,k=0;k<_;)v=y[e[k++]^255&v]^f[e[k++]^v>>8&255]^g[e[k++]^v>>16&255]^h[e[k++]^v>>>24]^d[e[k++]]^p[e[k++]]^u[e[k++]]^c[e[k++]]^m[e[k++]]^l[e[k++]]^r[e[k++]]^o[e[k++]]^i[e[k++]]^s[e[k++]]^a[e[k++]]^t[e[k++]];for(_+=15;k<_;)v=v>>>8^t[255&(v^e[k++])];return~v},e.str=function(e,n){for(var a=-1^n,s=0,i=e.length,o=0,r=0;s<i;)(o=e.charCodeAt(s++))<128?a=a>>>8^t[255&(a^o)]:o<2048?a=(a=a>>>8^t[255&(a^(192|o>>6&31))])>>>8^t[255&(a^(128|63&o))]:o>=55296&&o<57344?(o=64+(1023&o),r=1023&e.charCodeAt(s++),a=(a=(a=(a=a>>>8^t[255&(a^(240|o>>8&7))])>>>8^t[255&(a^(128|o>>2&63))])>>>8^t[255&(a^(128|r>>6&15|(3&o)<<4))])>>>8^t[255&(a^(128|63&r))]):a=(a=(a=a>>>8^t[255&(a^(224|o>>12&15))])>>>8^t[255&(a^(128|o>>6&63))])>>>8^t[255&(a^(128|63&o))];return~a},e}(),oh=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 s(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 i(e){Zg(e,0);for(var t={},n=0;e.l<=e.length-4;){var a=e.read_shift(2),s=e.read_shift(2),i=e.l+s,o={};if(21589===a)1&(n=e.read_shift(1))&&(o.mtime=e.read_shift(4)),s>5&&(2&n&&(o.atime=e.read_shift(4)),4&n&&(o.ctime=e.read_shift(4))),o.mtime&&(o.mt=new Date(1e3*o.mtime));e.l=i,t[a]=o}return t}function o(){return e||(e={})}function r(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:"!=w(e.slice(0,13)).toLowerCase())throw new Error("Unsupported MAD header");var n=t&&t.root||"",a=(ad&&Buffer.isBuffer(e)?e.toString("binary"):w(e)).split("\r\n"),s=0,i="";for(s=0;s<a.length;++s)if(i=a[s],/^Content-Location:/i.test(i)&&(i=i.slice(i.indexOf("file")),n||(n=i.slice(0,i.lastIndexOf("/")+1)),i.slice(0,n.length)!=n))for(;n.length>0&&(n=(n=n.slice(0,n.length-1)).slice(0,n.lastIndexOf("/")+1),i.slice(0,n.length)!=n););var o=(a[1]||"").match(/boundary="(.*?)"/);if(!o)throw new Error("MAD cannot find boundary");var r="--"+(o[1]||""),l=[],m=[],c={FileIndex:l,FullPaths:m};p(c);var u,d=0;for(s=0;s<a.length;++s){var h=a[s];h!==r&&h!==r+"--"||(d++&&me(c,a.slice(u,s),n),u=s)}return c}(e,t);if(e.length<512)throw new Error("CFB file size "+e.length+" < 512");var n,a,s,i,o,r,d=512,h=[],g=e.slice(0,512);Zg(g,0);var f=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]}(g);switch(n=f[0]){case 3:d=512;break;case 4:d=4096;break;case 0:if(0==f[1])return ae(e,t);default:throw new Error("Major Version: Expected 3 or 4 saw "+n)}512!==d&&Zg(g=e.slice(0,d),28);var _=e.slice(0,d);!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: ")}(g,n);var k=g.read_shift(4,"i");if(3===n&&0!==k)throw new Error("# Directory Sectors: Expected 0 saw "+k);g.l+=4,i=g.read_shift(4,"i"),g.l+=4,g.chk("00100000","Mini Stream Cutoff Size: "),o=g.read_shift(4,"i"),a=g.read_shift(4,"i"),r=g.read_shift(4,"i"),s=g.read_shift(4,"i");for(var b=-1,x=0;x<109&&!((b=g.read_shift(4,"i"))<0);++x)h[x]=b;var T=function(e,t){for(var n=Math.ceil(e.length/t)-1,a=[],s=1;s<n;++s)a[s-1]=e.slice(s*t,(s+1)*t);return a[n-1]=e.slice(n*t),a}(e,d);m(r,s,T,d,h);var C=function(e,t,n,a){var s=e.length,i=[],o=[],r=[],l=[],m=a-1,c=0,u=0,p=0,d=0;for(c=0;c<s;++c)if(r=[],(p=c+t)>=s&&(p-=s),!o[p]){l=[];var h=[];for(u=p;u>=0;){h[u]=!0,o[u]=!0,r[r.length]=u,l.push(e[u]);var g=n[Math.floor(4*u/a)];if(a<4+(d=4*u&m))throw new Error("FAT boundary crossed: "+u+" 4 "+a);if(!e[g])break;if(h[u=Kg(e[g],d)])break}i[p]={nodes:r,data:wg([l])}}return i}(T,i,h,d);C[i].name="!Directory",a>0&&o!==y&&(C[o].name="!MiniFAT"),C[h[0]].name="!FAT",C.fat_addrs=h,C.ssz=d;var S=[],j=[],D=[];!function(e,t,n,a,s,i,o,r){for(var m,p=0,d=a.length?2:0,h=t[e].data,g=0,f=0;g<h.length;g+=128){var v=h.slice(g,g+128);Zg(v,64),f=v.read_shift(2),m=Tg(v,0,f-d),a.push(m);var _={name:m,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)&&(_.ct=u(v,v.l-8)),0!==v.read_shift(2)+v.read_shift(2)+v.read_shift(2)+v.read_shift(2)&&(_.mt=u(v,v.l-8)),_.start=v.read_shift(4,"i"),_.size=v.read_shift(4,"i"),_.size<0&&_.start<0&&(_.size=_.type=0,_.start=y,_.name=""),5===_.type?(p=_.start,s>0&&p!==y&&(t[p].name="!StreamData")):_.size>=4096?(_.storage="fat",void 0===t[_.start]&&(t[_.start]=c(n,_.start,t.fat_addrs,t.ssz)),t[_.start].name=_.name,_.content=t[_.start].data.slice(0,_.size)):(_.storage="minifat",_.size<0?_.size=0:p!==y&&_.start!==y&&t[p]&&(_.content=l(_,t[p].data,(t[r]||{}).data))),_.content&&Zg(_.content,0),i[m]=_,o.push(_)}}(i,C,T,S,a,{},j,o),function(e,t,n){for(var a=0,s=0,i=0,o=0,r=0,l=n.length,m=[],c=[];a<l;++a)m[a]=c[a]=a,t[a]=n[a];for(;r<c.length;++r)s=e[a=c[r]].L,i=e[a].R,o=e[a].C,m[a]===a&&(-1!==s&&m[s]!==s&&(m[a]=m[s]),-1!==i&&m[i]!==i&&(m[a]=m[i])),-1!==o&&(m[o]=a),-1!==s&&a!=m[a]&&(m[s]=m[a],c.lastIndexOf(s)<r&&c.push(s)),-1!==i&&a!=m[a]&&(m[i]=m[a],c.lastIndexOf(i)<r&&c.push(i));for(a=1;a<l;++a)m[a]===a&&(-1!==i&&m[i]!==i?m[a]=m[i]:-1!==s&&m[s]!==s&&(m[a]=m[s]));for(a=1;a<l;++a)if(0!==e[a].type){if((r=a)!=m[r])do{r=m[r],t[a]=t[r]+"/"+t[a]}while(0!==r&&-1!==m[r]&&r!=m[r]);m[a]=-1}for(t[0]+="/",a=1;a<l;++a)2!==e[a].type&&(t[a]+="/")}(j,D,S),S.shift();var A={FileIndex:j,FullPaths:D};return t&&t.raw&&(A.raw={header:_,sectors:T}),A}function l(e,t,n){for(var a=e.start,s=e.size,i=[],o=a;n&&s>0&&o>=0;)i.push(t.slice(o*f,o*f+f)),s-=f,o=Kg(n,4*o);return 0===i.length?tf(0):cd(i).slice(0,e.size)}function m(e,t,n,a,s){var i=y;if(e===y){if(0!==t)throw new Error("DIFAT chain shorter than expected")}else if(-1!==e){var o=n[e],r=(a>>>2)-1;if(!o)return;for(var l=0;l<r&&(i=Kg(o,4*l))!==y;++l)s.push(i);m(Kg(o,a-4),t-1,n,a,s)}}function c(e,t,n,a,s){var i=[],o=[];s||(s=[]);var r=a-1,l=0,m=0;for(l=t;l>=0;){s[l]=!0,i[i.length]=l,o.push(e[l]);var c=n[Math.floor(4*l/a)];if(a<4+(m=4*l&r))throw new Error("FAT boundary crossed: "+l+" 4 "+a);if(!e[c])break;l=Kg(e[c],m)}return{nodes:i,data:wg([o])}}function u(e,t){return new Date(1e3*(Vg(e,t+4)/1e7*Math.pow(2,32)+Vg(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(oh.find(e,"/"+t))return;var n=tf(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),d(e)}(e)}function d(e,t){p(e);for(var s=!1,i=!1,o=e.FullPaths.length-1;o>=0;--o){var r=e.FileIndex[o];switch(r.type){case 0:i?s=!0:(e.FileIndex.pop(),e.FullPaths.pop());break;case 1:case 2:case 5:i=!0,isNaN(r.R*r.L*r.C)&&(s=!0),r.R>-1&&r.L>-1&&r.R==r.L&&(s=!0);break;default:s=!0}}if(s||t){var l=new Date(1987,1,19),m=0,c=Object.create?Object.create(null):{},u=[];for(o=0;o<e.FullPaths.length;++o)c[e.FullPaths[o]]=!0,0!==e.FileIndex[o].type&&u.push([e.FullPaths[o],e.FileIndex[o]]);for(o=0;o<u.length;++o){var d=n(u[o][0]);(i=c[d])||(u.push([d,{name:a(d).replace("/",""),type:1,clsid:k,ct:l,mt:l,content:null}]),c[d]=!0)}for(u.sort((function(e,t){return function(e,t){for(var n=e.split("/"),a=t.split("/"),s=0,i=0,o=Math.min(n.length,a.length);s<o;++s){if(i=n[s].length-a[s].length)return i;if(n[s]!=a[s])return n[s]<a[s]?-1:1}return n.length-a.length}(e[0],t[0])})),e.FullPaths=[],e.FileIndex=[],o=0;o<u.length;++o)e.FullPaths[o]=u[o][0],e.FileIndex[o]=u[o][1];for(o=0;o<u.length;++o){var h=e.FileIndex[o],g=e.FullPaths[o];if(h.name=a(g).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||k,0===o)h.C=u.length>1?1:-1,h.size=0,h.type=5;else if("/"==g.slice(-1)){for(m=o+1;m<u.length&&n(e.FullPaths[m])!=g;++m);for(h.C=m>=u.length?-1:m,m=o+1;m<u.length&&n(e.FullPaths[m])!=n(g);++m);h.R=m>=u.length?-1:m,h.type=1}else n(e.FullPaths[o+1]||"")==n(g)&&(h.R=o+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",s=["MIME-Version: 1.0",'Content-Type: multipart/related; boundary="'+(a="------="+a).slice(2)+'"',"","",""],i=e.FullPaths[0],o=i,r=e.FileIndex[0],l=1;l<e.FullPaths.length;++l)if(o=e.FullPaths[l].slice(i.length),(r=e.FileIndex[l]).size&&r.content&&"\x01Sh33tJ5"!=o){o=o.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 m=r.content,c=ad&&Buffer.isBuffer(m)?m.toString("binary"):w(m),u=0,p=Math.min(1024,c.length),d=0,h=0;h<=p;++h)(d=c.charCodeAt(h))>=32&&d<128&&++u;var g=u>=4*p/5;s.push(a),s.push("Content-Location: "+(n.root||"file:///C:/SheetJS/")+o),s.push("Content-Transfer-Encoding: "+(g?"quoted-printable":"base64")),s.push("Content-Type: "+oe(r,o)),s.push(""),s.push(g?le(c):re(c))}return s.push(a+"--\r\n"),s.join("\r\n")}(e,n);if(d(e),"zip"===n.fileType)return function(e,t){var n=t||{},a=[],i=[],o=tf(1),r=n.compression?8:0,l=0;0;var m=0,c=0,u=0,p=0,d=e.FullPaths[0],h=d,g=e.FileIndex[0],f=[],y=0;for(m=1;m<e.FullPaths.length;++m)if(h=e.FullPaths[m].slice(d.length),(g=e.FileIndex[m]).size&&g.content&&"\x01Sh33tJ5"!=h){var v=u,_=tf(h.length);for(c=0;c<h.length;++c)_.write_shift(1,127&h.charCodeAt(c));_=_.slice(0,_.l),f[p]=ih.buf(g.content,0);var k=g.content;8==r&&(k=x(k)),(o=tf(30)).write_shift(4,67324752),o.write_shift(2,20),o.write_shift(2,l),o.write_shift(2,r),g.mt?s(o,g.mt):o.write_shift(4,0),o.write_shift(-4,8&l?0:f[p]),o.write_shift(4,8&l?0:k.length),o.write_shift(4,8&l?0:g.content.length),o.write_shift(2,_.length),o.write_shift(2,0),u+=o.length,a.push(o),u+=_.length,a.push(_),u+=k.length,a.push(k),8&l&&((o=tf(12)).write_shift(-4,f[p]),o.write_shift(4,k.length),o.write_shift(4,g.content.length),u+=o.l,a.push(o)),(o=tf(46)).write_shift(4,33639248),o.write_shift(2,0),o.write_shift(2,20),o.write_shift(2,l),o.write_shift(2,r),o.write_shift(4,0),o.write_shift(-4,f[p]),o.write_shift(4,k.length),o.write_shift(4,g.content.length),o.write_shift(2,_.length),o.write_shift(2,0),o.write_shift(2,0),o.write_shift(2,0),o.write_shift(2,0),o.write_shift(4,0),o.write_shift(4,v),y+=o.l,i.push(o),y+=_.length,i.push(_),++p}return o=tf(22),o.write_shift(4,101010256),o.write_shift(2,0),o.write_shift(2,0),o.write_shift(2,p),o.write_shift(2,p),o.write_shift(4,y),o.write_shift(4,u),o.write_shift(2,0),cd([cd(a),cd(i),o])}(e,n);var a=function(e){for(var t=0,n=0,a=0;a<e.FileIndex.length;++a){var s=e.FileIndex[a];if(s.content){var i=s.content.length;i>0&&(i<4096?t+=i+63>>6:n+=i+511>>9)}}for(var o=e.FullPaths.length+3>>2,r=t+127>>7,l=(t+7>>3)+n+o+r,m=l+127>>7,c=m<=109?0:Math.ceil((m-109)/127);l+m+c+127>>7>m;)c=++m<=109?0:Math.ceil((m-109)/127);var u=[1,c,m,r,o,n,t,0];return e.FileIndex[0].size=t<<6,u[7]=(e.FileIndex[0].start=u[0]+u[1]+u[2]+u[3]+u[4]+u[5])+(u[6]+7>>3),u}(e),i=tf(a[7]<<9),o=0,r=0;for(o=0;o<8;++o)i.write_shift(1,_[o]);for(o=0;o<8;++o)i.write_shift(2,0);for(i.write_shift(2,62),i.write_shift(2,3),i.write_shift(2,65534),i.write_shift(2,9),i.write_shift(2,6),o=0;o<3;++o)i.write_shift(2,0);for(i.write_shift(4,0),i.write_shift(4,a[2]),i.write_shift(4,a[0]+a[1]+a[2]+a[3]-1),i.write_shift(4,0),i.write_shift(4,4096),i.write_shift(4,a[3]?a[0]+a[1]+a[2]-1:y),i.write_shift(4,a[3]),i.write_shift(-4,a[1]?a[0]-1:y),i.write_shift(4,a[1]),o=0;o<109;++o)i.write_shift(-4,o<a[2]?a[1]+o:-1);if(a[1])for(r=0;r<a[1];++r){for(;o<236+127*r;++o)i.write_shift(-4,o<a[2]?a[1]+o:-1);i.write_shift(-4,r===a[1]-1?y:r+1)}var l=function(e){for(r+=e;o<r-1;++o)i.write_shift(-4,o+1);e&&(++o,i.write_shift(-4,y))};for(r=o=0,r+=a[1];o<r;++o)i.write_shift(-4,b.DIFSECT);for(r+=a[2];o<r;++o)i.write_shift(-4,b.FATSECT);l(a[3]),l(a[4]);for(var m=0,c=0,u=e.FileIndex[0];m<e.FileIndex.length;++m)(u=e.FileIndex[m]).content&&((c=u.content.length)<4096||(u.start=r,l(c+511>>9)));for(l(a[6]+7>>3);511&i.l;)i.write_shift(-4,b.ENDOFCHAIN);for(r=o=0,m=0;m<e.FileIndex.length;++m)(u=e.FileIndex[m]).content&&(!(c=u.content.length)||c>=4096||(u.start=r,l(c+63>>6)));for(;511&i.l;)i.write_shift(-4,b.ENDOFCHAIN);for(o=0;o<a[4]<<2;++o){var p=e.FullPaths[o];if(p&&0!==p.length){u=e.FileIndex[o],0===o&&(u.start=u.size?u.start-1:y);var h=0===o&&n.root||u.name;if(c=2*(h.length+1),i.write_shift(64,h,"utf16le"),i.write_shift(2,c),i.write_shift(1,u.type),i.write_shift(1,u.color),i.write_shift(-4,u.L),i.write_shift(-4,u.R),i.write_shift(-4,u.C),u.clsid)i.write_shift(16,u.clsid,"hex");else for(m=0;m<4;++m)i.write_shift(4,0);i.write_shift(4,u.state||0),i.write_shift(4,0),i.write_shift(4,0),i.write_shift(4,0),i.write_shift(4,0),i.write_shift(4,u.start),i.write_shift(4,u.size),i.write_shift(4,0)}else{for(m=0;m<17;++m)i.write_shift(4,0);for(m=0;m<3;++m)i.write_shift(4,-1);for(m=0;m<12;++m)i.write_shift(4,0)}}for(o=1;o<e.FileIndex.length;++o)if((u=e.FileIndex[o]).size>=4096)if(i.l=u.start+1<<9,ad&&Buffer.isBuffer(u.content))u.content.copy(i,i.l,0,u.size),i.l+=u.size+511&-512;else{for(m=0;m<u.size;++m)i.write_shift(1,u.content[m]);for(;511&m;++m)i.write_shift(1,0)}for(o=1;o<e.FileIndex.length;++o)if((u=e.FileIndex[o]).size>0&&u.size<4096)if(ad&&Buffer.isBuffer(u.content))u.content.copy(i,i.l,0,u.size),i.l+=u.size+63&-64;else{for(m=0;m<u.size;++m)i.write_shift(1,u.content[m]);for(;63&m;++m)i.write_shift(1,0)}if(ad)i.l=i.length;else for(;i.l<i.length;)i.write_shift(1,0);return i}t.version="1.2.1";var g,f=64,y=-2,v="d0cf11e0a1b11ae1",_=[208,207,17,224,161,177,26,225],k="00000000000000000000000000000000",b={MAXREGSECT:-6,DIFSECT:-4,FATSECT:-3,ENDOFCHAIN:y,FREESECT:-1,HEADER_SIGNATURE:v,HEADER_MINOR_VERSION:"3e00",MAXREGSID:-6,NOSTREAM:-1,HEADER_CLSID:k,EntryTypes:["unknown","storage","stream","lockbytes","property","root"]};function w(e){for(var t=new Array(e.length),n=0;n<e.length;++n)t[n]=String.fromCharCode(e[n]);return t.join("")}function x(e){return g?g.deflateRawSync(e):$(e)}var T=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],C=[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],S=[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 j(e){var t=139536&(e<<1|e<<11)|558144&(e<<5|e<<15);return 255&(t>>16|t>>8|t)}for(var D="undefined"!==typeof Uint8Array,A=D?new Uint8Array(256):[],E=0;E<256;++E)A[E]=j(E);function I(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 N(e,t){var n=7&t,a=t>>>3;return(e[a]|(n<=6?0:e[a+1]<<8))>>>n&3}function P(e,t){var n=7&t,a=t>>>3;return(e[a]|(n<=5?0:e[a+1]<<8))>>>n&7}function R(e,t){var n=7&t,a=t>>>3;return(e[a]|(n<=3?0:e[a+1]<<8))>>>n&31}function O(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,s=t>>>3,i=(1<<n)-1,o=e[s]>>>a;return n<8-a?o&i:(o|=e[s+1]<<8-a,n<16-a?o&i:(o|=e[s+2]<<16-a,n<24-a?o&i:(o|=e[s+3]<<24-a)&i))}function M(e,t,n){var a=7&t,s=t>>>3;return a<=5?e[s]|=(7&n)<<a:(e[s]|=n<<a&255,e[s+1]=(7&n)>>8-a),t+3}function F(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 q(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,s=0;if(n>=t)return e;if(ad){var i=od(a);if(e.copy)e.copy(i);else for(;s<e.length;++s)i[s]=e[s];return i}if(D){var o=new Uint8Array(a);if(o.set)o.set(e);else for(;s<n;++s)o[s]=e[s];return o}return e.length=a,e}function B(e){for(var t=new Array(e),n=0;n<e;++n)t[n]=0;return t}function U(e,t,n){var a=1,s=0,i=0,o=0,r=0,l=e.length,m=D?new Uint16Array(32):B(32);for(i=0;i<32;++i)m[i]=0;for(i=l;i<n;++i)e[i]=0;l=e.length;var c=D?new Uint16Array(l):B(l);for(i=0;i<l;++i)m[s=e[i]]++,a<s&&(a=s),c[i]=0;for(m[0]=0,i=1;i<=a;++i)m[i+16]=r=r+m[i-1]<<1;for(i=0;i<l;++i)0!=(r=e[i])&&(c[i]=m[r+16]++);var u=0;for(i=0;i<l;++i)if(0!=(u=e[i]))for(r=I(c[i],a)>>a-u,o=(1<<a+4-u)-1;o>=0;--o)t[r|o<<u]=15&u|i<<4;return a}var H=D?new Uint16Array(512):B(512),G=D?new Uint16Array(32):B(32);if(!D){for(var V=0;V<512;++V)H[V]=0;for(V=0;V<32;++V)G[V]=0}!function(){for(var e=[],t=0;t<32;t++)e.push(5);U(e,G,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);U(n,H,288)}();var K=function(){for(var e=D?new Uint8Array(32768):[],t=0,n=0;t<S.length-1;++t)for(;n<S[t+1];++n)e[n]=t;for(;n<32768;++n)e[n]=29;var a=D?new Uint8Array(259):[];for(t=0,n=0;t<C.length-1;++t)for(;n<C[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),s=n+a==e.length;for(t.write_shift(1,+s),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 s=0,i=0,o=D?new Uint16Array(32768):[];i<t.length;){var r=Math.min(65535,t.length-i);if(r<10){for(7&(s=M(n,s,+!(i+r!=t.length)))&&(s+=8-(7&s)),n.l=s/8|0,n.write_shift(2,r),n.write_shift(2,65535&~r);r-- >0;)n[n.l++]=t[i++];s=8*n.l}else{s=M(n,s,+!(i+r!=t.length)+2);for(var l=0;r-- >0;){var m=t[i],c=-1,u=0;if((c=o[l=32767&(l<<5^m)])&&((c|=-32768&i)>i&&(c-=32768),c<i))for(;t[c+u]==t[i+u]&&u<250;)++u;if(u>2){(m=a[u])<=22?s=W(n,s,A[m+1]>>1)-1:(W(n,s,3),W(n,s+=5,A[m-23]>>5),s+=3);var p=m<8?0:m-4>>2;p>0&&(q(n,s,u-C[m]),s+=p),m=e[i-c],s=W(n,s,A[m]>>3),s-=3;var d=m<4?0:m-2>>1;d>0&&(q(n,s,i-c-S[m]),s+=d);for(var h=0;h<u;++h)o[l]=32767&i,l=32767&(l<<5^t[i]),++i;r-=u-1}else m<=143?m+=48:s=F(n,s,1),s=W(n,s,A[m]),o[l]=32767&i,++i}s=W(n,s,0)-1}}return n.l=(s+7)/8|0,n.l}(t,n)}}();function $(e){var t=tf(50+Math.floor(1.1*e.length)),n=K(e,t);return t.slice(0,n)}var Y=D?new Uint16Array(32768):B(32768),X=D?new Uint16Array(32768):B(32768),Q=D?new Uint16Array(128):B(128),J=1,Z=1;function ee(e,t){var n=R(e,t)+257,a=R(e,t+=5)+1,s=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 i=0,o=D?new Uint8Array(19):B(19),r=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],l=1,m=D?new Uint8Array(8):B(8),c=D?new Uint8Array(8):B(8),u=o.length,p=0;p<s;++p)o[T[p]]=i=P(e,t),l<i&&(l=i),m[i]++,t+=3;var d=0;for(m[0]=0,p=1;p<=l;++p)c[p]=d=d+m[p-1]<<1;for(p=0;p<u;++p)0!=(d=o[p])&&(r[p]=c[d]++);var h=0;for(p=0;p<u;++p)if(0!=(h=o[p])){d=A[r[p]]>>8-h;for(var g=(1<<7-h)-1;g>=0;--g)Q[d|g<<h]=7&h|p<<3}var f=[];for(l=1;f.length<n+a;)switch(t+=7&(d=Q[O(e,t)]),d>>>=3){case 16:for(i=3+N(e,t),t+=2,d=f[f.length-1];i-- >0;)f.push(d);break;case 17:for(i=3+P(e,t),t+=3;i-- >0;)f.push(0);break;case 18:for(i=11+O(e,t),t+=7;i-- >0;)f.push(0);break;default:f.push(d),l<d&&(l=d)}var y=f.slice(0,n),v=f.slice(n);for(p=n;p<286;++p)y[p]=0;for(p=a;p<30;++p)v[p]=0;return J=U(y,Y,286),Z=U(v,X,30),t}function te(e,t){var n=function(e,t){if(3==e[0]&&!(3&e[1]))return[id(t),2];for(var n=0,a=0,s=od(t||1<<18),i=0,o=s.length>>>0,r=0,l=0;0==(1&a);)if(a=P(e,n),n+=3,a>>>1!=0)for(a>>1==1?(r=9,l=5):(n=ee(e,n),r=J,l=Z);;){!t&&o<i+32767&&(o=(s=z(s,i+32767)).length);var m=L(e,n,r),c=a>>>1==1?H[m]:Y[m];if(n+=15&c,0===((c>>>=4)>>>8&255))s[i++]=c;else{if(256==c)break;var u=(c-=257)<8?0:c-4>>2;u>5&&(u=0);var p=i+C[c];u>0&&(p+=L(e,n,u),n+=u),m=L(e,n,l),n+=15&(c=a>>>1==1?G[m]:X[m]);var d=(c>>>=4)<4?0:c-2>>1,h=S[c];for(d>0&&(h+=L(e,n,d),n+=d),!t&&o<p&&(o=(s=z(s,p+100)).length);i<p;)s[i]=s[i-h],++i}}else{7&n&&(n+=8-(7&n));var g=e[n>>>3]|e[1+(n>>>3)]<<8;if(n+=32,g>0)for(!t&&o<i+g&&(o=(s=z(s,i+g)).length);g-- >0;)s[i++]=e[n>>>3],n+=8}return t?[s,n+7>>>3]:[s.slice(0,i),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;Zg(n,0);var a={FileIndex:[],FullPaths:[]};p(a,{root:t.root});for(var s=n.length-4;(80!=n[s]||75!=n[s+1]||5!=n[s+2]||6!=n[s+3])&&s>=0;)--s;n.l=s+4,n.l+=4;var o=n.read_shift(2);n.l+=6;var r=n.read_shift(4);for(n.l=r,s=0;s<o;++s){n.l+=20;var l=n.read_shift(4),m=n.read_shift(4),c=n.read_shift(2),u=n.read_shift(2),d=n.read_shift(2);n.l+=8;var h=n.read_shift(4),g=i(n.slice(n.l+c,n.l+c+u));n.l+=c+u+d;var f=n.l;n.l=h+4,se(n,l,m,a,g),n.l=f}return a}function se(e,t,n,a,s){e.l+=2;var o=e.read_shift(2),r=e.read_shift(2),l=function(e){var t=65535&e.read_shift(2),n=65535&e.read_shift(2),a=new Date,s=31&n,i=15&(n>>>=5);n>>>=4,a.setMilliseconds(0),a.setFullYear(n+1980),a.setMonth(i-1),a.setDate(s);var o=31&t,r=63&(t>>>=5);return t>>>=6,a.setHours(t),a.setMinutes(r),a.setSeconds(o<<1),a}(e);if(8257&o)throw new Error("Unsupported ZIP encryption");e.read_shift(4);for(var m=e.read_shift(4),c=e.read_shift(4),u=e.read_shift(2),p=e.read_shift(2),d="",h=0;h<u;++h)d+=String.fromCharCode(e[e.l++]);if(p){var f=i(e.slice(e.l,e.l+p));(f[21589]||{}).mt&&(l=f[21589].mt),((s||{})[21589]||{}).mt&&(l=s[21589].mt)}e.l+=p;var y=e.slice(e.l,e.l+m);switch(r){case 8:y=function(e,t){if(!g)return te(e,t);var n=new(0,g.InflateRaw),a=n._processChunk(e.slice(e.l),n._finishFlushFlag);return e.l+=n.bytesRead,a}(e,c);break;case 0:break;default:throw new Error("Unsupported ZIP Compression method "+r)}var v=!1;8&o&&(134695760==e.read_shift(4)&&(e.read_shift(4),v=!0),m=e.read_shift(4),c=e.read_shift(4)),m!=t&&ne(v,"Bad compressed size: "+t+" != "+m),c!=n&&ne(v,"Bad uncompressed size: "+n+" != "+c),ce(a,d,y,{unsafe:!0,mt:l})}var ie={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 oe(e,t){if(e.ctype)return e.ctype;var n=e.name||"",a=n.match(/\.([^\.]+)$/);return a&&ie[a[1]]||t&&(a=(n=t).match(/[\.\\]([^\.\\])+$/))&&ie[a[1]]?ie[a[1]]:"application/octet-stream"}function re(e){for(var t=td(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"),s=0;s<a.length;++s){var i=a[s];if(0!=i.length)for(var o=0;o<i.length;){var r=76,l=i.slice(o,o+r);"="==l.charAt(r-1)?r--:"="==l.charAt(r-2)?r-=2:"="==l.charAt(r-3)&&(r-=3),l=i.slice(o,o+r),(o+=r)<i.length&&(l+="="),n.push(l)}else n.push("")}return n.join("\r\n")}function me(e,t,n){for(var a,s="",i="",o="",r=0;r<10;++r){var l=t[r];if(!l||l.match(/^\s*$/))break;var m=l.match(/^(.*?):\s*([^\s].*)$/);if(m)switch(m[1].toLowerCase()){case"content-location":s=m[2].trim();break;case"content-type":o=m[2].trim();break;case"content-transfer-encoding":i=m[2].trim()}}switch(++r,i.toLowerCase()){case"base64":a=rd(nd(t.slice(r).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 s=0;s<t.length;++s)t[s]=t[s].replace(/[=][0-9A-Fa-f]{2}/g,(function(e){return String.fromCharCode(parseInt(e.slice(1),16))}));return rd(t.join("\r\n"))}(t.slice(r));break;default:throw new Error("Unsupported Content-Transfer-Encoding "+i)}var c=ce(e,s.slice(n.length),a,{unsafe:!0});o&&(c.ctype=o)}function ce(e,t,n,s){var i=s&&s.unsafe;i||p(e);var o=!i&&oh.find(e,t);if(!o){var r=e.FullPaths[0];t.slice(0,r.length)==r?r=t:("/"!=r.slice(-1)&&(r+="/"),r=(r+t).replace("//","/")),o={name:a(t),type:2},e.FileIndex.push(o),e.FullPaths.push(r),i||oh.utils.cfb_gc(e)}return o.content=n,o.size=n?n.length:0,s&&(s.CLSID&&(o.clsid=s.CLSID),s.mt&&(o.mt=s.mt),s.ct&&(o.ct=s.ct)),o}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)]})),s=!1;47===t.charCodeAt(0)?(s=!0,t=n[0].slice(0,-1)+t):s=-1!==t.indexOf("/");var i=t.toUpperCase(),o=!0===s?n.indexOf(i):a.indexOf(i);if(-1!==o)return e.FileIndex[o];var r=!i.match(pd);for(i=i.replace(ud,""),r&&(i=i.replace(pd,"!")),o=0;o<n.length;++o){if((r?n[o].replace(pd,"!"):n[o]).replace(ud,"")==i)return e.FileIndex[o];if((r?a[o].replace(pd,"!"):a[o]).replace(ud,"")==i)return e.FileIndex[o]}return null},t.read=function(t,n){var a=n&&n.type;switch(a||ad&&Buffer.isBuffer(t)&&(a="buffer"),a||"base64"){case"file":return function(t,n){return o(),r(e.readFileSync(t),n)}(t,n);case"base64":return r(rd(nd(t)),n);case"binary":return r(rd(t),n)}return r(t,n)},t.parse=r,t.write=function(t,n){var a=h(t,n);switch(n&&n.type||"buffer"){case"file":return o(),e.writeFileSync(n.filename,a),a;case"binary":return"string"==typeof a?a:w(a);case"base64":return td("string"==typeof a?a:w(a));case"buffer":if(ad)return Buffer.isBuffer(a)?a:sd(a);case"array":return"string"==typeof a?rd(a):a}return a},t.writeFile=function(t,n,a){o();var s=h(t,a);e.writeFileSync(n,s)},t.utils={cfb_new:function(e){var t={};return p(t,e),t},cfb_add:ce,cfb_del:function(e,t){p(e);var n=oh.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 s=oh.find(e,t);if(s)for(var i=0;i<e.FileIndex.length;++i)if(e.FileIndex[i]==s)return e.FileIndex[i].name=a(n),e.FullPaths[i]=n,!0;return!1},cfb_gc:function(e){d(e,!0)},ReadShift:Yg,CheckField:Jg,prep_blob:Zg,bconcat:cd,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");g=e}catch(n){console.error("cannot use native zlib: "+(n.message||n))}},_deflateRaw:$,_inflateRaw:te,consts:b},t}();let rh;function lh(e){return"string"===typeof e?ld(e):Array.isArray(e)?function(e){if("undefined"===typeof Uint8Array)throw new Error("Unsupported");return new Uint8Array(e)}(e):e}function mh(e,t,n){if("undefined"!==typeof rh&&rh.writeFileSync)return n?rh.writeFileSync(e,t,n):rh.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=ld(t);break;default:throw new Error("Unsupported encoding "+n)}return Deno.writeFileSync(e,t)}var a="utf8"==n?Kh(t):t;if("undefined"!==typeof IE_SaveFile)return IE_SaveFile(a,e);if("undefined"!==typeof Blob){var s=new Blob([lh(a)],{type:"application/octet-stream"});if("undefined"!==typeof navigator&&navigator.msSaveBlob)return navigator.msSaveBlob(s,e);if("undefined"!==typeof saveAs)return saveAs(s,e);if("undefined"!==typeof URL&&"undefined"!==typeof document&&document.createElement&&URL.createObjectURL){var i=URL.createObjectURL(s);if("object"===typeof chrome&&"function"==typeof(chrome.downloads||{}).download)return URL.revokeObjectURL&&"undefined"!==typeof setTimeout&&setTimeout((function(){URL.revokeObjectURL(i)}),6e4),chrome.downloads.download({url:i,filename:e,saveAs:!0});var o=document.createElement("a");if(null!=o.download)return o.download=e,o.href=i,document.body.appendChild(o),o.click(),document.body.removeChild(o),URL.revokeObjectURL&&"undefined"!==typeof setTimeout&&setTimeout((function(){URL.revokeObjectURL(i)}),6e4),i}}if("undefined"!==typeof $&&"undefined"!==typeof File&&"undefined"!==typeof Folder)try{var r=File(e);return r.open("w"),r.encoding="binary",Array.isArray(t)&&(t=md(t)),r.write(t),r.close(),t}catch(l){if(!l.message||!l.message.match(/onstruct/))throw l}throw new Error("cannot save file "+e)}function ch(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 uh(e,t){for(var n=[],a=ch(e),s=0;s!==a.length;++s)null==n[e[a[s]][t]]&&(n[e[a[s]][t]]=a[s]);return n}function ph(e){for(var t=[],n=ch(e),a=0;a!==n.length;++a)t[e[n[a]]]=n[a];return t}function dh(e){for(var t=[],n=ch(e),a=0;a!==n.length;++a)t[e[n[a]]]=parseInt(n[a],10);return t}var hh=new Date(1899,11,30,0,0,0);function gh(e,t){var n=e.getTime();return t&&(n-=1263168e5),(n-(hh.getTime()+6e4*(e.getTimezoneOffset()-hh.getTimezoneOffset())))/864e5}var fh=new Date,yh=hh.getTime()+6e4*(fh.getTimezoneOffset()-hh.getTimezoneOffset()),vh=fh.getTimezoneOffset();function _h(e){var t=new Date;return t.setTime(24*e*60*60*1e3+yh),t.getTimezoneOffset()!==vh&&t.setTime(t.getTime()+6e4*(t.getTimezoneOffset()-vh)),t}var kh=new Date("2017-02-19T19:06:09.000Z"),bh=isNaN(kh.getFullYear())?new Date("2/19/17"):kh,wh=2017==bh.getFullYear();function xh(e,t){var n=new Date(e);if(wh)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==bh.getFullYear()&&!isNaN(n.getFullYear())){var a=n.getFullYear();return e.indexOf(""+a)>-1||n.setFullYear(n.getFullYear()+100),n}var s=e.match(/\d+/g)||["2017","2","19","0","0","0"],i=new Date(+s[0],+s[1]-1,+s[2],+s[3]||0,+s[4]||0,+s[5]||0);return e.indexOf("Z")>-1&&(i=new Date(i.getTime()-60*i.getTimezoneOffset()*1e3)),i}function Th(e,t){if(ad&&Buffer.isBuffer(e)){if(t){if(255==e[0]&&254==e[1])return Kh(e.slice(2).toString("utf16le"));if(254==e[1]&&255==e[2])return Kh(Xp(e.slice(2).toString("binary")))}return e.toString("binary")}if("undefined"!==typeof TextDecoder)try{if(t){if(255==e[0]&&254==e[1])return Kh(new TextDecoder("utf-16le").decode(e.slice(2)));if(254==e[0]&&255==e[1])return Kh(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(i){}for(var a=[],s=0;s!=e.length;++s)a.push(String.fromCharCode(e[s]));return a.join("")}function Ch(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]=Ch(e[n]));return t}function Sh(e,t){for(var n="";n.length<t;)n+=e;return n}function jh(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 Dh=["january","february","march","april","may","june","july","august","september","october","november","december"];function Ah(e){var t=new Date(e),n=new Date(NaN),a=t.getYear(),s=t.getMonth(),i=t.getDate();if(isNaN(i))return n;var o=e.toLowerCase();if(o.match(/jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec/)){if((o=o.replace(/[^a-z]/g,"").replace(/([^a-z]|^)[ap]m?([^a-z]|$)/,"")).length>3&&-1==Dh.indexOf(o))return n}else if(o.match(/[a-z]/))return n;return a<0||a>8099?n:(s>0||i>1)&&101!=a?t:e.match(/[^-0-9:,\/\\]/)?n:t}function Eh(e,t,n){if(e.FullPaths){var a;if("string"==typeof n)return a=ad?sd(n):function(e){for(var t=[],n=0,a=e.length+250,s=id(e.length+255),i=0;i<e.length;++i){var o=e.charCodeAt(i);if(o<128)s[n++]=o;else if(o<2048)s[n++]=192|o>>6&31,s[n++]=128|63&o;else if(o>=55296&&o<57344){o=64+(1023&o);var r=1023&e.charCodeAt(++i);s[n++]=240|o>>8&7,s[n++]=128|o>>2&63,s[n++]=128|r>>6&15|(3&o)<<4,s[n++]=128|63&r}else s[n++]=224|o>>12&15,s[n++]=128|o>>6&63,s[n++]=128|63&o;n>a&&(t.push(s.slice(0,n)),n=0,s=id(65535),a=65530)}return t.push(s.slice(0,n)),cd(t)}(n),oh.utils.cfb_add(e,t,a);oh.utils.cfb_add(e,t,n)}else e.file(t,n)}function Ih(){return oh.utils.cfb_new()}var Nh='<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r\n';var Ph={""":'"',"'":"'",">":">","<":"<","&":"&"},Rh=ph(Ph),Oh=/[&<>'"]/g,Lh=/[\u0000-\u0008\u000b-\u001f]/g;function Mh(e){return(e+"").replace(Oh,(function(e){return Rh[e]})).replace(Lh,(function(e){return"_x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+"_"}))}function Fh(e){return Mh(e).replace(/ /g,"_x0020_")}var Wh=/[\u0000-\u001f]/g;function qh(e){return(e+"").replace(Oh,(function(e){return Rh[e]})).replace(/\n/g,"<br/>").replace(Wh,(function(e){return"&#x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+";"}))}function zh(e){switch(e){case 1:case!0:case"1":case"true":case"TRUE":return!0;default:return!1}}function Bh(e){for(var t="",n=0,a=0,s=0,i=0,o=0,r=0;n<e.length;)(a=e.charCodeAt(n++))<128?t+=String.fromCharCode(a):(s=e.charCodeAt(n++),a>191&&a<224?(o=(31&a)<<6,o|=63&s,t+=String.fromCharCode(o)):(i=e.charCodeAt(n++),a<240?t+=String.fromCharCode((15&a)<<12|(63&s)<<6|63&i):(r=((7&a)<<18|(63&s)<<12|(63&i)<<6|63&(o=e.charCodeAt(n++)))-65536,t+=String.fromCharCode(55296+(r>>>10&1023)),t+=String.fromCharCode(56320+(1023&r)))));return t}function Uh(e){var t,n,a,s=id(2*e.length),i=1,o=0,r=0;for(n=0;n<e.length;n+=i)i=1,(a=e.charCodeAt(n))<128?t=a:a<224?(t=64*(31&a)+(63&e.charCodeAt(n+1)),i=2):a<240?(t=4096*(15&a)+64*(63&e.charCodeAt(n+1))+(63&e.charCodeAt(n+2)),i=3):(i=4,t=262144*(7&a)+4096*(63&e.charCodeAt(n+1))+64*(63&e.charCodeAt(n+2))+(63&e.charCodeAt(n+3)),r=55296+((t-=65536)>>>10&1023),t=56320+(1023&t)),0!==r&&(s[o++]=255&r,s[o++]=r>>>8,r=0),s[o++]=t%256,s[o++]=t>>>8;return s.slice(0,o).toString("ucs2")}function Hh(e){return sd(e,"binary").toString("utf8")}var Gh="foo bar baz\xe2\x98\x83\xf0\x9f\x8d\xa3",Vh=ad&&(Hh(Gh)==Bh(Gh)&&Hh||Uh(Gh)==Bh(Gh)&&Uh)||Bh,Kh=ad?function(e){return sd(e,"utf8").toString("binary")}:function(e){for(var t=[],n=0,a=0,s=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,s=e.charCodeAt(n++)-56320+(a<<10),t.push(String.fromCharCode(240+(s>>18&7))),t.push(String.fromCharCode(144+(s>>12&63))),t.push(String.fromCharCode(128+(s>>6&63))),t.push(String.fromCharCode(128+(63&s)));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("")},$h=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 Yh=/(^\s|\s$|\n)/;function Xh(e,t){return"<"+e+(t.match(Yh)?' xml:space="preserve"':"")+">"+t+"</"+e+">"}function Qh(e){return ch(e).map((function(t){return" "+t+'="'+e[t]+'"'})).join("")}function Jh(e,t,n){return"<"+e+(null!=n?Qh(n):"")+(null!=t?(t.match(Yh)?' xml:space="preserve"':"")+">"+t+"</"+e:"/")+">"}function Zh(e,t){try{return e.toISOString().replace(/\.\d*/,"")}catch(n){if(t)throw n}return""}var eg="http://schemas.openxmlformats.org/package/2006/metadata/core-properties",tg="http://schemas.openxmlformats.org/officeDocument/2006/custom-properties",ng="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties",ag="http://schemas.openxmlformats.org/package/2006/content-types",sg="http://schemas.openxmlformats.org/package/2006/relationships",ig="http://schemas.microsoft.com/office/spreadsheetml/2018/threadedcomments",og="http://purl.org/dc/elements/1.1/",rg="http://purl.org/dc/terms/",lg="http://purl.org/dc/dcmitype/",mg="http://schemas.openxmlformats.org/officeDocument/2006/relationships",cg="http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes",ug="http://www.w3.org/2001/XMLSchema-instance",pg="http://www.w3.org/2001/XMLSchema",dg=["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"],hg="urn:schemas-microsoft-com:office:office",gg="urn:schemas-microsoft-com:office:excel",fg="urn:schemas-microsoft-com:office:spreadsheet",yg="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882",vg="http://macVmlSchemaUri",_g="urn:schemas-microsoft-com:vml",kg="http://www.w3.org/TR/REC-html40";var bg=function(e){for(var t=[],n=0;n<e[0].length;++n)if(e[0][n])for(var a=0,s=e[0][n].length;a<s;a+=10240)t.push.apply(t,e[0][n].slice(a,a+10240));return t},wg=ad?function(e){return e[0].length>0&&Buffer.isBuffer(e[0][0])?Buffer.concat(e[0].map((function(e){return Buffer.isBuffer(e)?e:sd(e)}))):bg(e)}:bg,xg=function(e,t,n){for(var a=[],s=t;s<n;s+=2)a.push(String.fromCharCode(Hg(e,s)));return a.join("").replace(ud,"")},Tg=ad?function(e,t,n){return Buffer.isBuffer(e)?e.toString("utf16le",t,n).replace(ud,""):xg(e,t,n)}:xg,Cg=function(e,t,n){for(var a=[],s=t;s<t+n;++s)a.push(("0"+e[s].toString(16)).slice(-2));return a.join("")},Sg=ad?function(e,t,n){return Buffer.isBuffer(e)?e.toString("hex",t,t+n):Cg(e,t,n)}:Cg,jg=function(e,t,n){for(var a=[],s=t;s<n;s++)a.push(String.fromCharCode(Ug(e,s)));return a.join("")},Dg=ad?function(e,t,n){return Buffer.isBuffer(e)?e.toString("utf8",t,n):jg(e,t,n)}:jg,Ag=function(e,t){var n=Vg(e,t);return n>0?Dg(e,t+4,t+4+n-1):""},Eg=Ag,Ig=function(e,t){var n=Vg(e,t);return n>0?Dg(e,t+4,t+4+n-1):""},Ng=Ig,Pg=function(e,t){var n=2*Vg(e,t);return n>0?Dg(e,t+4,t+4+n-1):""},Rg=Pg,Og=function(e,t){var n=Vg(e,t);return n>0?Tg(e,t+4,t+4+n):""},Lg=Og,Mg=function(e,t){var n=Vg(e,t);return n>0?Dg(e,t+4,t+4+n):""},Fg=Mg,Wg=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),s=15&e[t+6],i=5;i>=0;--i)s=256*s+e[t+i];return 2047==a?0==s?n*(1/0):NaN:(0==a?a=-1022:(a-=1023,s+=Math.pow(2,52)),n*Math.pow(2,a-52)*s)}(e,t)},qg=Wg,zg=function(e){return Array.isArray(e)||"undefined"!==typeof Uint8Array&&e instanceof Uint8Array};function Bg(){Tg=function(e,t,n){return Qp.utils.decode(1200,e.slice(t,n)).replace(ud,"")},Dg=function(e,t,n){return Qp.utils.decode(65001,e.slice(t,n))},Eg=function(e,t){var n=Vg(e,t);return n>0?Qp.utils.decode(Hp,e.slice(t+4,t+4+n-1)):""},Ng=function(e,t){var n=Vg(e,t);return n>0?Qp.utils.decode(Up,e.slice(t+4,t+4+n-1)):""},Rg=function(e,t){var n=2*Vg(e,t);return n>0?Qp.utils.decode(1200,e.slice(t+4,t+4+n-1)):""},Lg=function(e,t){var n=Vg(e,t);return n>0?Qp.utils.decode(1200,e.slice(t+4,t+4+n)):""},Fg=function(e,t){var n=Vg(e,t);return n>0?Qp.utils.decode(65001,e.slice(t+4,t+4+n)):""}}ad&&(Eg=function(e,t){if(!Buffer.isBuffer(e))return Ag(e,t);var n=e.readUInt32LE(t);return n>0?e.toString("utf8",t+4,t+4+n-1):""},Ng=function(e,t){if(!Buffer.isBuffer(e))return Ig(e,t);var n=e.readUInt32LE(t);return n>0?e.toString("utf8",t+4,t+4+n-1):""},Rg=function(e,t){if(!Buffer.isBuffer(e))return Pg(e,t);var n=2*e.readUInt32LE(t);return e.toString("utf16le",t+4,t+4+n-1)},Lg=function(e,t){if(!Buffer.isBuffer(e))return Og(e,t);var n=e.readUInt32LE(t);return e.toString("utf16le",t+4,t+4+n)},Fg=function(e,t){if(!Buffer.isBuffer(e))return Mg(e,t);var n=e.readUInt32LE(t);return e.toString("utf8",t+4,t+4+n)},qg=function(e,t){return Buffer.isBuffer(e)?e.readDoubleLE(t):Wg(e,t)},zg=function(e){return Buffer.isBuffer(e)||Array.isArray(e)||"undefined"!==typeof Uint8Array&&e instanceof Uint8Array}),"undefined"!==typeof Qp&&Bg();var Ug=function(e,t){return e[t]},Hg=function(e,t){return 256*e[t+1]+e[t]},Gg=function(e,t){var n=256*e[t+1]+e[t];return n<32768?n:-1*(65535-n+1)},Vg=function(e,t){return e[t+3]*(1<<24)+(e[t+2]<<16)+(e[t+1]<<8)+e[t]},Kg=function(e,t){return e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t]},$g=function(e,t){return e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3]};function Yg(e,t){var n,a,s,i,o,r,l="",m=[];switch(t){case"dbcs":if(r=this.l,ad&&Buffer.isBuffer(this))l=this.slice(this.l,this.l+2*e).toString("utf16le");else for(o=0;o<e;++o)l+=String.fromCharCode(Hg(this,r)),r+=2;e*=2;break;case"utf8":l=Dg(this,this.l,this.l+e);break;case"utf16le":e*=2,l=Tg(this,this.l,this.l+e);break;case"wstr":if("undefined"===typeof Qp)return Yg.call(this,e,"dbcs");l=Qp.utils.decode(Up,this.slice(this.l,this.l+2*e)),e*=2;break;case"lpstr-ansi":l=Eg(this,this.l),e=4+Vg(this,this.l);break;case"lpstr-cp":l=Ng(this,this.l),e=4+Vg(this,this.l);break;case"lpwstr":l=Rg(this,this.l),e=4+2*Vg(this,this.l);break;case"lpp4":e=4+Vg(this,this.l),l=Lg(this,this.l),2&e&&(e+=2);break;case"8lpp4":e=4+Vg(this,this.l),l=Fg(this,this.l),3&e&&(e+=4-(3&e));break;case"cstr":for(e=0,l="";0!==(s=Ug(this,this.l+e++));)m.push(Jp(s));l=m.join("");break;case"_wstr":for(e=0,l="";0!==(s=Hg(this,this.l+e));)m.push(Jp(s)),e+=2;e+=2,l=m.join("");break;case"dbcs-cont":for(l="",r=this.l,o=0;o<e;++o){if(this.lens&&-1!==this.lens.indexOf(r))return s=Ug(this,r),this.l=r+1,i=Yg.call(this,e-o,s?"dbcs-cont":"sbcs-cont"),m.join("")+i;m.push(Jp(Hg(this,r))),r+=2}l=m.join(""),e*=2;break;case"cpstr":if("undefined"!==typeof Qp){l=Qp.utils.decode(Up,this.slice(this.l,this.l+e));break}case"sbcs-cont":for(l="",r=this.l,o=0;o!=e;++o){if(this.lens&&-1!==this.lens.indexOf(r))return s=Ug(this,r),this.l=r+1,i=Yg.call(this,e-o,s?"dbcs-cont":"sbcs-cont"),m.join("")+i;m.push(Jp(Ug(this,r))),r+=1}l=m.join("");break;default:switch(e){case 1:return n=Ug(this,this.l),this.l++,n;case 2:return n=("i"===t?Gg:Hg)(this,this.l),this.l+=2,n;case 4:case-4:return"i"===t||0===(128&this[this.l+3])?(n=(e>0?Kg:$g)(this,this.l),this.l+=4,n):(a=Vg(this,this.l),this.l+=4,a);case 8:case-8:if("f"===t)return a=8==e?qg(this,this.l):qg([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=Sg(this,this.l,e)}}return this.l+=e,l}var Xg=function(e,t,n){e[n]=255&t,e[n+1]=t>>>8&255};function Qg(e,t,n){var a=0,s=0;if("dbcs"===n){for(s=0;s!=t.length;++s)Xg(this,t.charCodeAt(s),this.l+2*s);a=2*t.length}else if("sbcs"===n){if("undefined"!==typeof Qp&&874==Hp)for(s=0;s!=t.length;++s){var i=Qp.utils.encode(Hp,t.charAt(s));this[this.l+s]=i[0]}else for(t=t.replace(/[^\x00-\x7F]/g,"_"),s=0;s!=t.length;++s)this[this.l+s]=255&t.charCodeAt(s);a=t.length}else{if("hex"===n){for(;s<e;++s)this[this.l++]=parseInt(t.slice(2*s,2*s+2),16)||0;return this}if("utf16le"===n){var o=Math.min(this.l+e,this.length);for(s=0;s<Math.min(t.length,e);++s){var r=t.charCodeAt(s);this[this.l++]=255&r,this[this.l++]=r>>8}for(;this.l<o;)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,s=0,i=0,o=a?-t:t;isFinite(o)?0==o?s=i=0:(s=Math.floor(Math.log(o)/Math.LN2),i=o*Math.pow(2,52-s),s<=-1023&&(!isFinite(i)||i<Math.pow(2,52))?s=-1022:(i-=Math.pow(2,52),s+=1023)):(s=2047,i=isNaN(t)?26985:0);for(var r=0;r<=5;++r,i/=256)e[n+r]=255&i;e[n+6]=(15&s)<<4|15&i,e[n+7]=s>>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 Jg(e,t){var n=Sg(this,this.l,e.length>>1);if(n!==e)throw new Error(t+"Expected "+e+" saw "+n);this.l+=e.length>>1}function Zg(e,t){e.l=t,e.read_shift=Yg,e.chk=Jg,e.write_shift=Qg}function ef(e,t){e.l+=t}function tf(e){var t=id(e);return Zg(t,0),t}function nf(){var e=[],t=ad?256:2048,n=function(e){var t=tf(e);return Zg(t,0),t},a=n(t),s=function(){a&&(a.length>a.l&&((a=a.slice(0,a.l)).l=a.length),a.length>0&&e.push(a),a=null)},i=function(e){return a&&e<a.length-a.l?a:(s(),a=n(Math.max(e+1,t)))};return{next:i,push:function(e){s(),null==(a=e).l&&(a.l=a.length),i(t)},end:function(){return s(),cd(e)},_bufs:e}}function af(e,t,n,a){var s,i=+t;if(!isNaN(i)){a||(a=hk[i].p||(n||[]).length||0),s=1+(i>=128?1:0)+1,a>=128&&++s,a>=16384&&++s,a>=2097152&&++s;var o=e.next(s);i<=127?o.write_shift(1,i):(o.write_shift(1,128+(127&i)),o.write_shift(1,i>>7));for(var r=0;4!=r;++r){if(!(a>=128)){o.write_shift(1,a);break}o.write_shift(1,128+(127&a)),a>>=7}a>0&&zg(n)&&e.push(n)}}function sf(e,t,n){var a=Ch(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 of(e,t,n){var a=Ch(e);return a.s=sf(a.s,t.s,n),a.e=sf(a.e,t.s,n),a}function rf(e,t){if(e.cRel&&e.c<0)for(e=Ch(e);e.c<0;)e.c+=t>8?16384:256;if(e.rRel&&e.r<0)for(e=Ch(e);e.r<0;)e.r+=t>8?1048576:t>5?65536:16384;var n=hf(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 lf(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?rf(e.s,t.biff)+":"+rf(e.e,t.biff):(e.s.rRel?"":"$")+cf(e.s.r)+":"+(e.e.rRel?"":"$")+cf(e.e.r):(e.s.cRel?"":"$")+pf(e.s.c)+":"+(e.e.cRel?"":"$")+pf(e.e.c)}function mf(e){return parseInt(e.replace(/\$(\d+)$/,"$1"),10)-1}function cf(e){return""+(e+1)}function uf(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 pf(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 df(e){for(var t=0,n=0,a=0;a<e.length;++a){var s=e.charCodeAt(a);s>=48&&s<=57?t=10*t+(s-48):s>=65&&s<=90&&(n=26*n+(s-64))}return{c:n-1,r:t-1}}function hf(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 gf(e){var t=e.indexOf(":");return-1==t?{s:df(e),e:df(e)}:{s:df(e.slice(0,t)),e:df(e.slice(t+1))}}function ff(e,t){return"undefined"===typeof t||"number"===typeof t?ff(e.s,e.e):("string"!==typeof e&&(e=hf(e)),"string"!==typeof t&&(t=hf(t)),e==t?e:e+":"+t)}function yf(e){var t={s:{c:0,r:0},e:{c:0,r:0}},n=0,a=0,s=0,i=e.length;for(n=0;a<i&&!((s=e.charCodeAt(a)-64)<1||s>26);++a)n=26*n+s;for(t.s.c=--n,n=0;a<i&&!((s=e.charCodeAt(a)-48)<0||s>9);++a)n=10*n+s;if(t.s.r=--n,a===i||10!=s)return t.e.c=t.s.c,t.e.r=t.s.r,t;for(++a,n=0;a!=i&&!((s=e.charCodeAt(a)-64)<1||s>26);++a)n=26*n+s;for(t.e.c=--n,n=0;a!=i&&!((s=e.charCodeAt(a)-48)<0||s>9);++a)n=10*n+s;return t.e.r=--n,t}function vf(e,t){var n="d"==e.t&&t instanceof Date;if(null!=e.z)try{return e.w=eh(e.z,n?gh(t):t)}catch(a){}try{return e.w=eh((e.XF||{}).numFmtId||(n?14:0),n?gh(t):t)}catch(a){return""+t}}function _f(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?ey[e.v]||e.v:vf(e,void 0==t?e.v:t))}function kf(e,t){var n=t&&t.sheet?t.sheet:"Sheet1",a={};return a[n]=e,{SheetNames:[n],Sheets:a}}function bf(e,t,n){var a=n||{},s=e?Array.isArray(e):a.dense;var i=e||(s?[]:{}),o=0,r=0;if(i&&null!=a.origin){if("number"==typeof a.origin)o=a.origin;else{var l="string"==typeof a.origin?df(a.origin):a.origin;o=l.r,r=l.c}i["!ref"]||(i["!ref"]="A1:A1")}var m={s:{c:1e7,r:1e7},e:{c:0,r:0}};if(i["!ref"]){var c=yf(i["!ref"]);m.s.c=c.s.c,m.s.r=c.s.r,m.e.c=Math.max(m.e.c,c.e.c),m.e.r=Math.max(m.e.r,c.e.r),-1==o&&(m.e.r=o=c.e.r+1)}for(var u=0;u!=t.length;++u)if(t[u]){if(!Array.isArray(t[u]))throw new Error("aoa_to_sheet expects an array of arrays");for(var p=0;p!=t[u].length;++p)if("undefined"!==typeof t[u][p]){var d={v:t[u][p]},h=o+u,g=r+p;if(m.s.r>h&&(m.s.r=h),m.s.c>g&&(m.s.c=g),m.e.r<h&&(m.e.r=h),m.e.c<g&&(m.e.c=g),!t[u][p]||"object"!==typeof t[u][p]||Array.isArray(t[u][p])||t[u][p]instanceof Date)if(Array.isArray(d.v)&&(d.f=t[u][p][1],d.v=d.v[0]),null===d.v)if(d.f)d.t="n";else if(a.nullError)d.t="e",d.v=0;else{if(!a.sheetStubs)continue;d.t="z"}else"number"===typeof d.v?d.t="n":"boolean"===typeof d.v?d.t="b":d.v instanceof Date?(d.z=a.dateNF||wd[14],a.cellDates?(d.t="d",d.w=eh(d.z,gh(d.v))):(d.t="n",d.v=gh(d.v),d.w=eh(d.z,d.v))):d.t="s";else d=t[u][p];if(s)i[h]||(i[h]=[]),i[h][g]&&i[h][g].z&&(d.z=i[h][g].z),i[h][g]=d;else{var f=hf({c:g,r:h});i[f]&&i[f].z&&(d.z=i[f].z),i[f]=d}}}return m.s.c<1e7&&(i["!ref"]=ff(m)),i}function wf(e,t){return bf(null,e,t)}function xf(e,t){return t||(t=tf(4)),t.write_shift(4,e),t}function Tf(e){var t=e.read_shift(4);return 0===t?"":e.read_shift(t,"dbcs")}function Cf(e,t){var n=!1;return null==t&&(n=!0,t=tf(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 Sf(e){return{ich:e.read_shift(2),ifnt:e.read_shift(2)}}function jf(e,t){var n=e.l,a=e.read_shift(1),s=Tf(e),i=[],o={t:s,h:s};if(0!==(1&a)){for(var r=e.read_shift(4),l=0;l!=r;++l)i.push(Sf(e));o.r=i}else o.r=[{ich:0,ifnt:0}];return e.l=n+t,o}var Df=jf;function Af(e,t){var n=!1;return null==t&&(n=!0,t=tf(23+4*e.t.length)),t.write_shift(1,1),Cf(e.t,t),t.write_shift(4,1),function(e,t){t||(t=tf(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 Ef(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 If(e,t){return null==t&&(t=tf(8)),t.write_shift(-4,e.c),t.write_shift(3,e.iStyleRef||e.s),t.write_shift(1,0),t}function Nf(e){var t=e.read_shift(2);return t+=e.read_shift(1)<<16,e.l++,{c:-1,iStyleRef:t}}function Pf(e,t){return null==t&&(t=tf(4)),t.write_shift(3,e.iStyleRef||e.s),t.write_shift(1,0),t}var Rf=Tf,Of=Cf;function Lf(e){var t=e.read_shift(4);return 0===t||4294967295===t?"":e.read_shift(t,"dbcs")}function Mf(e,t){var n=!1;return null==t&&(n=!0,t=tf(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 Ff=Tf,Wf=Lf,qf=Mf;function zf(e){var t=e.slice(e.l,e.l+4),n=1&t[0],a=2&t[0];e.l+=4;var s=0===a?qg([0,0,0,0,252&t[0],t[1],t[2],t[3]],0):Kg(t,0)>>2;return n?s/100:s}function Bf(e,t){null==t&&(t=tf(4));var n=0,a=0,s=100*e;if(e==(0|e)&&e>=-(1<<29)&&e<1<<29?a=1:s==(0|s)&&s>=-(1<<29)&&s<1<<29&&(a=1,n=1),!a)throw new Error("unsupported RkNumber "+e);t.write_shift(-4,((n?s:e)<<2)+(n+2))}function Uf(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 Hf=Uf,Gf=function(e,t){return t||(t=tf(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 Vf(e){if(e.length-e.l<8)throw"XLS Xnum Buffer underflow";return e.read_shift(8,"f")}function Kf(e,t){return(t||tf(8)).write_shift(8,e,"f")}function $f(e,t){if(t||(t=tf(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 Yf=80,Xf={1:{n:"CodePage",t:2},2:{n:"Category",t:Yf},3:{n:"PresentationFormat",t:Yf},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:Yf},15:{n:"Company",t:Yf},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:Yf},27:{n:"ContentStatus",t:Yf},28:{n:"Language",t:Yf},29:{n:"Version",t:Yf},255:{},2147483648:{n:"Locale",t:19},2147483651:{n:"Behavior",t:19},1919054434:{}},Qf={1:{n:"CodePage",t:2},2:{n:"Title",t:Yf},3:{n:"Subject",t:Yf},4:{n:"Author",t:Yf},5:{n:"Keywords",t:Yf},6:{n:"Comments",t:Yf},7:{n:"Template",t:Yf},8:{n:"LastAuthor",t:Yf},9:{n:"RevNumber",t:Yf},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:Yf},19:{n:"DocSecurity",t:3},255:{},2147483648:{n:"Locale",t:19},2147483651:{n:"Behavior",t:19},1919054434:{}};function Jf(e){return e.map((function(e){return[e>>16&255,e>>8&255,255&e]}))}var Zf=Ch(Jf([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])),ey={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"},ty={"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"},ny={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 ay(e,t){var n,a=function(e){for(var t=[],n=ch(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}(ty),s=[];s[s.length]=Nh,s[s.length]=Jh("Types",null,{xmlns:ag,"xmlns:xsd":pg,"xmlns:xsi":ug}),s=s.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 Jh("Default",null,{Extension:e[0],ContentType:e[1]})})));var i=function(a){e[a]&&e[a].length>0&&(n=e[a][0],s[s.length]=Jh("Override",null,{PartName:("/"==n[0]?"":"/")+n,ContentType:ny[a][t.bookType]||ny[a].xlsx}))},o=function(n){(e[n]||[]).forEach((function(e){s[s.length]=Jh("Override",null,{PartName:("/"==e[0]?"":"/")+e,ContentType:ny[n][t.bookType]||ny[n].xlsx})}))},r=function(t){(e[t]||[]).forEach((function(e){s[s.length]=Jh("Override",null,{PartName:("/"==e[0]?"":"/")+e,ContentType:a[t][0]})}))};return i("workbooks"),o("sheets"),o("charts"),r("themes"),["strs","styles"].forEach(i),["coreprops","extprops","custprops"].forEach(r),r("vba"),r("comments"),r("threadedcomments"),r("drawings"),o("metadata"),r("people"),s.length>2&&(s[s.length]="</Types>",s[1]=s[1].replace("/>",">")),s.join("")}var sy={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 iy(e){var t=e.lastIndexOf("/");return e.slice(0,t+1)+"_rels/"+e.slice(t+1)+".rels"}function oy(e){var t=[Nh,Jh("Relationships",null,{xmlns:sg})];return ch(e["!id"]).forEach((function(n){t[t.length]=Jh("Relationship",null,e["!id"][n])})),t.length>2&&(t[t.length]="</Relationships>",t[1]=t[1].replace("/>",">")),t.join("")}function ry(e,t,n,a,s,i){if(s||(s={}),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,s.Id="rId"+t,s.Type=a,s.Target=n,i?s.TargetMode=i:[sy.HLINK,sy.XPATH,sy.XMISS].indexOf(s.Type)>-1&&(s.TargetMode="External"),e["!id"][s.Id])throw new Error("Cannot rewrite rId "+t);return e["!id"][s.Id]=s,e[("/"+s.Target).replace("//","/")]=s,t}function ly(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 my(){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 '+Bp.version+"</meta:generator></office:meta></office:document-meta>"}var cy=[["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 uy(e,t,n,a,s){null==s[e]&&null!=t&&""!==t&&(s[e]=t,t=Mh(t),a[a.length]=n?Jh(e,t,n):Xh(e,t))}function py(e,t){var n=t||{},a=[Nh,Jh("cp:coreProperties",null,{"xmlns:cp":eg,"xmlns:dc":og,"xmlns:dcterms":rg,"xmlns:dcmitype":lg,"xmlns:xsi":ug})],s={};if(!e&&!n.Props)return a.join("");e&&(null!=e.CreatedDate&&uy("dcterms:created","string"===typeof e.CreatedDate?e.CreatedDate:Zh(e.CreatedDate,n.WTF),{"xsi:type":"dcterms:W3CDTF"},a,s),null!=e.ModifiedDate&&uy("dcterms:modified","string"===typeof e.ModifiedDate?e.ModifiedDate:Zh(e.ModifiedDate,n.WTF),{"xsi:type":"dcterms:W3CDTF"},a,s));for(var i=0;i!=cy.length;++i){var o=cy[i],r=n.Props&&null!=n.Props[o[1]]?n.Props[o[1]]:e?e[o[1]]:null;!0===r?r="1":!1===r?r="0":"number"==typeof r&&(r=String(r)),null!=r&&uy(o[0],r,null,a,s)}return a.length>2&&(a[a.length]="</cp:coreProperties>",a[1]=a[1].replace("/>",">")),a.join("")}var dy=[["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"]],hy=["Worksheets","SheetNames","NamedRanges","DefinedNames","Chartsheets","ChartNames"];function gy(e){var t=[],n=Jh;return e||(e={}),e.Application="SheetJS",t[t.length]=Nh,t[t.length]=Jh("Properties",null,{xmlns:ng,"xmlns:vt":cg}),dy.forEach((function(a){if(void 0!==e[a[1]]){var s;switch(a[2]){case"string":s=Mh(String(e[a[1]]));break;case"bool":s=e[a[1]]?"true":"false"}void 0!==s&&(t[t.length]=n(a[0],s))}})),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>"+Mh(e)+"</vt:lpstr>"})).join(""),{size:e.Worksheets,baseType:"lpstr"})),t.length>2&&(t[t.length]="</Properties>",t[1]=t[1].replace("/>",">")),t.join("")}function fy(e){var t=[Nh,Jh("Properties",null,{xmlns:tg,"xmlns:vt":cg})];if(!e)return t.join("");var n=1;return ch(e).forEach((function(a){++n,t[t.length]=Jh("property",function(e,t){switch(typeof e){case"string":var n=Jh("vt:lpwstr",Mh(e));return t&&(n=n.replace(/"/g,"_x0022_")),n;case"number":return Jh((0|e)==e?"vt:i4":"vt:r8",Mh(String(e)));case"boolean":return Jh("vt:bool",e?"true":"false")}if(e instanceof Date)return Jh("vt:filetime",Zh(e));throw new Error("Unable to serialize "+e)}(e[a],!0),{fmtid:"{D5CDD505-2E9C-101B-9397-08002B2CF9AE}",pid:n,name:Mh(a)})})),t.length>2&&(t[t.length]="</Properties>",t[1]=t[1].replace("/>",">")),t.join("")}var yy={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 vy(e,t){var n=tf(4),a=tf(4);switch(n.write_shift(4,80==e?31:e),e){case 3:a.write_shift(-4,t);break;case 5:(a=tf(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 s=(n*=1e7)/Math.pow(2,32)|0;s>0&&(n%=Math.pow(2,32),a+=s);var i=tf(8);return i.write_shift(4,n),i.write_shift(4,a),i}(t);break;case 31:case 80:for((a=tf(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 cd([n,a])}var _y=["CodePage","Thumbnail","_PID_LINKBASE","_PID_HLINKS","SystemIdentifier","FMTID"];function ky(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 by(e,t,n){var a=tf(8),s=[],i=[],o=8,r=0,l=tf(8),m=tf(8);if(l.write_shift(4,2),l.write_shift(4,1200),m.write_shift(4,1),i.push(l),s.push(m),o+=8+l.length,!t){(m=tf(8)).write_shift(4,0),s.unshift(m);var c=[tf(4)];for(c[0].write_shift(4,e.length),r=0;r<e.length;++r){var u=e[r][0];for((l=tf(8+2*(u.length+1)+(u.length%2?0:2))).write_shift(4,r+2),l.write_shift(4,u.length+1),l.write_shift(0,u,"dbcs");l.l!=l.length;)l.write_shift(1,0);c.push(l)}l=cd(c),i.unshift(l),o+=8+l.length}for(r=0;r<e.length;++r)if((!t||t[e[r][0]])&&!(_y.indexOf(e[r][0])>-1||hy.indexOf(e[r][0])>-1)&&null!=e[r][1]){var p=e[r][1],d=0;if(t){var h=n[d=+t[e[r][0]]];if("version"==h.p&&"string"==typeof p){var g=p.split(".");p=(+g[0]<<16)+(+g[1]||0)}l=vy(h.t,p)}else{var f=ky(p);-1==f&&(f=31,p=String(p)),l=vy(f,p)}i.push(l),(m=tf(8)).write_shift(4,t?d:2+r),s.push(m),o+=8+l.length}var y=8*(i.length+1);for(r=0;r<i.length;++r)s[r].write_shift(4,y),y+=i[r].length;return a.write_shift(4,o),a.write_shift(4,i.length),cd([a].concat(s).concat(i))}function wy(e,t,n,a,s,i){var o=tf(s?68:48),r=[o];o.write_shift(2,65534),o.write_shift(2,0),o.write_shift(4,842412599),o.write_shift(16,oh.utils.consts.HEADER_CLSID,"hex"),o.write_shift(4,s?2:1),o.write_shift(16,t,"hex"),o.write_shift(4,s?68:48);var l=by(e,n,a);if(r.push(l),s){var m=by(s,null,null);o.write_shift(16,i,"hex"),o.write_shift(4,68+l.length),r.push(m)}return cd(r)}function xy(e,t){return 1===e.read_shift(t)}function Ty(e,t){return t||(t=tf(2)),t.write_shift(2,+!!e),t}function Cy(e){return e.read_shift(2,"u")}function Sy(e,t){return t||(t=tf(2)),t.write_shift(2,e),t}function jy(e,t,n){return n||(n=tf(2)),n.write_shift(1,"e"==t?+e:+!!e),n.write_shift(1,"e"==t?1:0),n}function Dy(e,t,n){var a=e.read_shift(n&&n.biff>=12?2:1),s="sbcs-cont",i=Up;(n&&n.biff>=8&&(Up=1200),n&&8!=n.biff)?12==n.biff&&(s="wstr"):e.read_shift(1)&&(s="dbcs-cont");n.biff>=2&&n.biff<=5&&(s="cpstr");var o=a?e.read_shift(a,s):"";return Up=i,o}function Ay(e){var t=e.t||"",n=tf(3);n.write_shift(2,t.length),n.write_shift(1,1);var a=tf(2*t.length);return a.write_shift(2*t.length,t,"utf16le"),cd([n,a])}function Ey(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 Iy(e,t,n){var a=e.read_shift(n&&2==n.biff?1:2);return 0===a?(e.l++,""):Ey(e,a,n)}function Ny(e,t,n){if(n.biff>5)return Iy(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 Py(e,t,n){return n||(n=tf(3+2*e.length)),n.write_shift(2,e.length),n.write_shift(1,1),n.write_shift(31,e,"utf16le"),n}function Ry(e,t){t||(t=tf(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 Oy(e){var t=tf(512),n=0,a=e.Target;"file://"==a.slice(0,7)&&(a=a.slice(7));var s=a.indexOf("#"),i=s>-1?31:23;switch(a.charAt(0)){case"#":i=28;break;case".":i&=-3}t.write_shift(4,2),t.write_shift(4,i);var o=[8,6815827,6619237,4849780,83];for(n=0;n<o.length;++n)t.write_shift(4,o[n]);if(28==i)Ry(a=a.slice(1),t);else if(2&i){for(o="e0 c9 ea 79 f9 ba ce 11 8c 82 00 aa 00 4b a9 0b".split(" "),n=0;n<o.length;++n)t.write_shift(1,parseInt(o[n],16));var r=s>-1?a.slice(0,s):a;for(t.write_shift(4,2*(r.length+1)),n=0;n<r.length;++n)t.write_shift(2,r.charCodeAt(n));t.write_shift(2,0),8&i&&Ry(s>-1?a.slice(s+1):"",t)}else{for(o="03 03 00 00 00 00 00 00 c0 00 00 00 00 00 00 46".split(" "),n=0;n<o.length;++n)t.write_shift(1,parseInt(o[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 Ly(e,t,n,a){return a||(a=tf(6)),a.write_shift(2,e),a.write_shift(2,t),a.write_shift(2,n||0),a}function My(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 Fy(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 Wy(e,t){return t||(t=tf(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 qy(e,t,n){var a=1536,s=16;switch(n.bookType){case"biff8":case"xla":break;case"biff5":a=1280,s=8;break;case"biff4":a=4,s=6;break;case"biff3":a=3,s=6;break;case"biff2":a=2,s=4;break;default:throw new Error("unsupported BIFF version")}var i=tf(s);return i.write_shift(2,a),i.write_shift(2,t),s>4&&i.write_shift(2,29282),s>6&&i.write_shift(2,1997),s>8&&(i.write_shift(2,49161),i.write_shift(2,1),i.write_shift(2,1798),i.write_shift(2,0)),i}function zy(e,t){var n=!t||t.biff>=8?2:1,a=tf(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 s=a.slice(0,a.l);return s.l=a.l,s}function By(e,t,n,a){var s=n&&5==n.biff;a||(a=tf(s?3+t.length:5+2*t.length)),a.write_shift(2,e),a.write_shift(s?1:2,t.length),s||a.write_shift(1,1),a.write_shift((s?1:2)*t.length,t,s?"sbcs":"utf16le");var i=a.length>a.l?a.slice(0,a.l):a;return null==i.l&&(i.l=i.length),i}function Uy(e,t,n,a){var s=n&&5==n.biff;a||(a=tf(s?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 i=0;return e.numFmtId>0&&s&&(i|=1024),a.write_shift(4,i),a.write_shift(4,0),s||a.write_shift(4,0),a.write_shift(2,0),a}function Hy(e,t,n){if(n.biff<8)return function(e,t,n){3==e[e.l+1]&&e[e.l]++;var a=Dy(e,0,n);return 3==a.charCodeAt(0)?a.slice(1):a}(e,0,n);for(var a=[],s=e.l+t,i=e.read_shift(n.biff>8?4:2);0!==i--;)a.push(My(e,n.biff,n));if(e.l!=s)throw new Error("Bad ExternSheet: "+e.l+" != "+s);return a}function Gy(e){var t=tf(24),n=df(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(" "),s=0;s<16;++s)t.write_shift(1,parseInt(a[s],16));return cd([t,Oy(e[1])])}function Vy(e){var t=e[1].Tooltip,n=tf(10+2*(t.length+1));n.write_shift(2,2048);var a=df(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 s=0;s<t.length;++s)n.write_shift(2,t.charCodeAt(s));return n.write_shift(2,0),n}function Ky(e,t,n){if(!n.cellStyles)return ef(e,t);var a=n&&n.biff>=12?4:2,s=e.read_shift(a),i=e.read_shift(a),o=e.read_shift(a),r=e.read_shift(a),l=e.read_shift(2);2==a&&(e.l+=2);var m={s:s,e:i,w:o,ixfe:r,flags:l};return(n.biff>=5||!n.biff)&&(m.level=l>>8&7),m}var $y=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=ph({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 s=wf(function(t,n){var a=[],s=id(1);switch(n.type){case"base64":s=rd(nd(t));break;case"binary":s=rd(t);break;case"buffer":case"array":s=t}Zg(s,0);var i=s.read_shift(1),o=!!(136&i),r=!1,l=!1;switch(i){case 2:case 3:case 131:case 139:case 245:break;case 48:case 49:r=!0,o=!0;break;case 140:l=!0;break;default:throw new Error("DBF Unsupported Version: "+i.toString(16))}var m=0,c=521;2==i&&(m=s.read_shift(2)),s.l+=3,2!=i&&(m=s.read_shift(4)),m>1048576&&(m=1e6),2!=i&&(c=s.read_shift(2));var u=s.read_shift(2),p=n.codepage||1252;2!=i&&(s.l+=16,s.read_shift(1),0!==s[s.l]&&(p=e[s[s.l]]),s.l+=1,s.l+=2),l&&(s.l+=36);for(var d=[],h={},g=Math.min(s.length,2==i?521:c-10-(r?264:0)),f=l?32:11;s.l<g&&13!=s[s.l];)switch((h={}).name=Qp.utils.decode(p,s.slice(s.l,s.l+f)).replace(/[\u0000\r\n].*$/g,""),s.l+=f,h.type=String.fromCharCode(s.read_shift(1)),2==i||l||(h.offset=s.read_shift(4)),h.len=s.read_shift(1),2==i&&(h.offset=s.read_shift(2)),h.dec=s.read_shift(1),h.name.length&&d.push(h),2!=i&&(s.l+=l?13:14),h.type){case"B":r&&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!==s[s.l]&&(s.l=c-1),13!==s.read_shift(1))throw new Error("DBF Terminator not found "+s.l+" "+s[s.l]);s.l=c;var y=0,v=0;for(a[0]=[],v=0;v!=d.length;++v)a[0][v]=d[v].name;for(;m-- >0;)if(42!==s[s.l])for(++s.l,a[++y]=[],v=0,v=0;v!=d.length;++v){var _=s.slice(s.l,s.l+d[v].len);s.l+=d[v].len,Zg(_,0);var k=Qp.utils.decode(p,_);switch(d[v].type){case"C":k.trim().length&&(a[y][v]=k.replace(/\s+$/,""));break;case"D":8===k.length?a[y][v]=new Date(+k.slice(0,4),+k.slice(4,6)-1,+k.slice(6,8)):a[y][v]=k;break;case"F":a[y][v]=parseFloat(k.trim());break;case"+":case"I":a[y][v]=l?2147483648^_.read_shift(-4,"i"):_.read_shift(4,"i");break;case"L":switch(k.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:|"+k+"|")}break;case"M":if(!o)throw new Error("DBF Unexpected MEMO for type "+i.toString(16));a[y][v]="##MEMO##"+(l?parseInt(k.trim(),10):_.read_shift(4));break;case"N":(k=k.replace(/\u0000/g,"").trim())&&"."!=k&&(a[y][v]=+k||0);break;case"@":a[y][v]=new Date(_.read_shift(-8,"f")-621356832e5);break;case"T":a[y][v]=new Date(864e5*(_.read_shift(4)-2440588)+_.read_shift(4));break;case"Y":a[y][v]=_.read_shift(4,"i")/1e4+_.read_shift(4,"i")/1e4*Math.pow(2,32);break;case"O":a[y][v]=-_.read_shift(-8,"f");break;case"B":if(r&&8==d[v].len){a[y][v]=_.read_shift(8,"f");break}case"G":case"P":_.l+=d[v].len;break;case"0":if("_NullFlags"===d[v].name)break;default:throw new Error("DBF Unsupported data type "+d[v].type)}}else s.l+=u;if(2!=i&&s.l<s.length&&26!=s[s.l++])throw new Error("DBF EOF Marker missing "+(s.l-1)+" of "+s.length+" "+s[s.l-1].toString(16));return n&&n.sheetRows&&(a=a.slice(0,n.sheetRows)),n.DBF=d,a}(t,a),a);return s["!cols"]=a.DBF.map((function(e){return{wch:e.len,DBF:e}})),delete a.DBF,s}var a={B:8,C:250,L:1,D:8,"?":0,"":0};return{to_workbook:function(e,t){try{return kf(n(e,t),t)}catch(a){if(t&&t.WTF)throw a}return{SheetNames:[],Sheets:{}}},to_sheet:n,from_sheet:function(e,n){var s=n||{};if(+s.codepage>=0&&$p(+s.codepage),"string"==s.type)throw new Error("Cannot write DBF to JS string");var i=nf(),o=ub(e,{header:1,raw:!0,cellDates:!0}),r=o[0],l=o.slice(1),m=e["!cols"]||[],c=0,u=0,p=0,d=1;for(c=0;c<r.length;++c)if(((m[c]||{}).DBF||{}).name)r[c]=m[c].DBF.name,++p;else if(null!=r[c]){if(++p,"number"===typeof r[c]&&(r[c]=r[c].toString(10)),"string"!==typeof r[c])throw new Error("DBF Invalid column name "+r[c]+" |"+typeof r[c]+"|");if(r.indexOf(r[c])!==c)for(u=0;u<1024;++u)if(-1==r.indexOf(r[c]+"_"+u)){r[c]+="_"+u;break}}var h=yf(e["!ref"]),g=[],f=[],y=[];for(c=0;c<=h.e.c-h.s.c;++c){var v="",_="",k=0,b=[];for(u=0;u<l.length;++u)null!=l[u][c]&&b.push(l[u][c]);if(0!=b.length&&null!=r[c]){for(u=0;u<b.length;++u){switch(typeof b[u]){case"number":_="B";break;case"string":default:_="C";break;case"boolean":_="L";break;case"object":_=b[u]instanceof Date?"D":"C"}k=Math.max(k,String(b[u]).length),v=v&&v!=_?"C":_}k>250&&(k=250),"C"==(_=((m[c]||{}).DBF||{}).type)&&m[c].DBF.len>k&&(k=m[c].DBF.len),"B"==v&&"N"==_&&(v="N",y[c]=m[c].DBF.dec,k=m[c].DBF.len),f[c]="C"==v||"N"==_?k:a[v]||0,d+=f[c],g[c]=v}else g[c]="?"}var w=i.next(32);for(w.write_shift(4,318902576),w.write_shift(4,l.length),w.write_shift(2,296+32*p),w.write_shift(2,d),c=0;c<4;++c)w.write_shift(4,0);for(w.write_shift(4,0|(+t[Hp]||3)<<8),c=0,u=0;c<r.length;++c)if(null!=r[c]){var x=i.next(32),T=(r[c].slice(-10)+"\0\0\0\0\0\0\0\0\0\0\0").slice(0,11);x.write_shift(1,T,"sbcs"),x.write_shift(1,"?"==g[c]?"C":g[c],"sbcs"),x.write_shift(4,u),x.write_shift(1,f[c]||a[g[c]]||0),x.write_shift(1,y[c]||0),x.write_shift(1,2),x.write_shift(4,0),x.write_shift(1,0),x.write_shift(4,0),x.write_shift(4,0),u+=f[c]||a[g[c]]||0}var C=i.next(264);for(C.write_shift(4,13),c=0;c<65;++c)C.write_shift(4,0);for(c=0;c<l.length;++c){var S=i.next(d);for(S.write_shift(1,0),u=0;u<r.length;++u)if(null!=r[u])switch(g[u]){case"L":S.write_shift(1,null==l[c][u]?63:l[c][u]?84:70);break;case"B":S.write_shift(8,l[c][u]||0,"f");break;case"N":var j="0";for("number"==typeof l[c][u]&&(j=l[c][u].toFixed(y[u]||0)),p=0;p<f[u]-j.length;++p)S.write_shift(1,32);S.write_shift(1,j,"sbcs");break;case"D":l[c][u]?(S.write_shift(4,("0000"+l[c][u].getFullYear()).slice(-4),"sbcs"),S.write_shift(2,("00"+(l[c][u].getMonth()+1)).slice(-2),"sbcs"),S.write_shift(2,("00"+l[c][u].getDate()).slice(-2),"sbcs")):S.write_shift(8,"00000000","sbcs");break;case"C":var D=String(null!=l[c][u]?l[c][u]:"").slice(0,f[u]);for(S.write_shift(1,D,"sbcs"),p=0;p<f[u]-D.length;++p)S.write_shift(1,32)}}return i.next(1).write_shift(1,26),i.end()}}}(),Yy=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("+ch(e).join("|").replace(/\|\|\|/,"|\\||").replace(/([?()+])/g,"\\$1")+"|\\|)","gm"),n=function(t,n){var a=e[n];return"number"==typeof a?Zp(a):a},a=function(e,t,n){var a=t.charCodeAt(0)-32<<4|n.charCodeAt(0)-48;return 59==a?e:Zp(a)};function s(e,s){var i,o=e.split(/[\n\r]+/),r=-1,l=-1,m=0,c=0,u=[],p=[],d=null,h={},g=[],f=[],y=[],v=0;for(+s.codepage>=0&&$p(+s.codepage);m!==o.length;++m){v=0;var _,k=o[m].trim().replace(/\x1B([\x20-\x2F])([\x30-\x3F])/g,a).replace(t,n),b=k.replace(/;;/g,"\0").split(";").map((function(e){return e.replace(/\u0000/g,";")})),w=b[0];if(k.length>0)switch(w){case"ID":case"E":case"B":case"O":case"W":break;case"P":"P"==b[1].charAt(0)&&p.push(k.slice(3).replace(/;;/g,";"));break;case"C":var x=!1,T=!1,C=!1,S=!1,j=-1,D=-1;for(c=1;c<b.length;++c)switch(b[c].charAt(0)){case"A":case"G":break;case"X":l=parseInt(b[c].slice(1))-1,T=!0;break;case"Y":for(r=parseInt(b[c].slice(1))-1,T||(l=0),i=u.length;i<=r;++i)u[i]=[];break;case"K":'"'===(_=b[c].slice(1)).charAt(0)?_=_.slice(1,_.length-1):"TRUE"===_?_=!0:"FALSE"===_?_=!1:isNaN(jh(_))?isNaN(Ah(_).getDate())||(_=xh(_)):(_=jh(_),null!==d&&Xd(d)&&(_=_h(_))),"undefined"!==typeof Qp&&"string"==typeof _&&"string"!=(s||{}).type&&(s||{}).codepage&&(_=Qp.utils.decode(s.codepage,_)),x=!0;break;case"E":S=!0;var A=Wv(b[c].slice(1),{r:r,c:l});u[r][l]=[u[r][l],A];break;case"S":C=!0,u[r][l]=[u[r][l],"S5S"];break;case"R":j=parseInt(b[c].slice(1))-1;break;case"C":D=parseInt(b[c].slice(1))-1;break;default:if(s&&s.WTF)throw new Error("SYLK bad record "+k)}if(x&&(u[r][l]&&2==u[r][l].length?u[r][l][0]=_:u[r][l]=_,d=null),C){if(S)throw new Error("SYLK shared formula cannot have own formula");var E=j>-1&&u[j][D];if(!E||!E[1])throw new Error("SYLK shared formula cannot find base");u[r][l][1]=Bv(E[1],{r:r-j,c:l-D})}break;case"F":var I=0;for(c=1;c<b.length;++c)switch(b[c].charAt(0)){case"X":l=parseInt(b[c].slice(1))-1,++I;break;case"Y":for(r=parseInt(b[c].slice(1))-1,i=u.length;i<=r;++i)u[i]=[];break;case"M":v=parseInt(b[c].slice(1))/20;break;case"F":case"G":case"S":case"D":case"N":break;case"P":d=p[parseInt(b[c].slice(1))];break;case"W":for(y=b[c].slice(1).split(" "),i=parseInt(y[0],10);i<=parseInt(y[1],10);++i)v=parseInt(y[2],10),f[i-1]=0===v?{hidden:!0}:{wch:v},pv(f[i-1]);break;case"C":f[l=parseInt(b[c].slice(1))-1]||(f[l]={});break;case"R":g[r=parseInt(b[c].slice(1))-1]||(g[r]={}),v>0?(g[r].hpt=v,g[r].hpx=hv(v)):0===v&&(g[r].hidden=!0);break;default:if(s&&s.WTF)throw new Error("SYLK bad record "+k)}I<1&&(d=null);break;default:if(s&&s.WTF)throw new Error("SYLK bad record "+k)}}return g.length>0&&(h["!rows"]=g),f.length>0&&(h["!cols"]=f),s&&s.sheetRows&&(u=u.slice(0,s.sheetRows)),[u,h]}function i(e,t){var n=function(e,t){switch(t.type){case"base64":return s(nd(e),t);case"binary":return s(e,t);case"buffer":return s(ad&&Buffer.isBuffer(e)?e.toString("binary"):md(e),t);case"array":return s(Th(e),t)}throw new Error("Unrecognized type "+t.type)}(e,t),a=n[0],i=n[1],o=wf(a,t);return ch(i).forEach((function(e){o[e]=i[e]})),o}function o(e,t,n,a){var s="C;Y"+(n+1)+";X"+(a+1)+";K";switch(e.t){case"n":s+=e.v||0,e.f&&!e.F&&(s+=";E"+zv(e.f,{r:n,c:a}));break;case"b":s+=e.v?"TRUE":"FALSE";break;case"e":s+=e.w||e.v;break;case"d":s+='"'+(e.w||e.v)+'"';break;case"s":s+='"'+e.v.replace(/"/g,"").replace(/;/g,";;")+'"'}return s}return e["|"]=254,{to_workbook:function(e,t){return kf(i(e,t),t)},to_sheet:i,from_sheet:function(e,t){var n,a,s=["ID;PWXL;N;E"],i=[],r=yf(e["!ref"]),l=Array.isArray(e),m="\r\n";s.push("P;PGeneral"),s.push("F;P0;DG0G8;M255"),e["!cols"]&&(a=s,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=mv(e.width)),"number"!=typeof e.wpx||e.wch||(e.wch=cv(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*dv(t.hpx)+";"),a.length>2&&e.push(a+"R"+(n+1))}))}(s,e["!rows"]),s.push("B;Y"+(r.e.r-r.s.r+1)+";X"+(r.e.c-r.s.c+1)+";D"+[r.s.c,r.s.r,r.e.c,r.e.r].join(" "));for(var c=r.s.r;c<=r.e.r;++c)for(var u=r.s.c;u<=r.e.c;++u){var p=hf({r:c,c:u});(n=l?(e[c]||[])[u]:e[p])&&(null!=n.v||n.f&&!n.F)&&i.push(o(n,0,c,u))}return s.join(m)+m+i.join(m)+m+"E"+m}}}(),Xy=function(){function e(e,t){for(var n=e.split("\n"),a=-1,s=-1,i=0,o=[];i!==n.length;++i)if("BOT"!==n[i].trim()){if(!(a<0)){for(var r=n[i].trim().split(","),l=r[0],m=r[1],c=n[++i]||"";1&(c.match(/["]/g)||[]).length&&i<n.length-1;)c+="\n"+n[++i];switch(c=c.trim(),+l){case-1:if("BOT"===c){o[++a]=[],s=0;continue}if("EOD"!==c)throw new Error("Unrecognized DIF special command "+c);break;case 0:"TRUE"===c?o[a][s]=!0:"FALSE"===c?o[a][s]=!1:isNaN(jh(m))?isNaN(Ah(m).getDate())?o[a][s]=m:o[a][s]=xh(m):o[a][s]=jh(m),++s;break;case 1:(c=(c=c.slice(1,c.length-1)).replace(/""/g,'"'))&&c.match(/^=".*"$/)&&(c=c.slice(2,-1)),o[a][s++]=""!==c?c:null}if("EOD"===c)break}}else o[++a]=[],s=0;return t&&t.sheetRows&&(o=o.slice(0,t.sheetRows)),o}function t(t,n){return wf(function(t,n){switch(n.type){case"base64":return e(nd(t),n);case"binary":return e(t,n);case"buffer":return e(ad&&Buffer.isBuffer(t)?t.toString("binary"):md(t),n);case"array":return e(Th(t),n)}throw new Error("Unrecognized type "+n.type)}(t,n),n)}var n=function(){var e=function(e,t,n,a,s){e.push(t),e.push(n+","+a),e.push('"'+s.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,s=[],i=yf(n["!ref"]),o=Array.isArray(n);e(s,"TABLE",0,1,"sheetjs"),e(s,"VECTORS",0,i.e.r-i.s.r+1,""),e(s,"TUPLES",0,i.e.c-i.s.c+1,""),e(s,"DATA",0,0,"");for(var r=i.s.r;r<=i.e.r;++r){t(s,-1,0,"BOT");for(var l=i.s.c;l<=i.e.c;++l){var m=hf({r:r,c:l});if(a=o?(n[r]||[])[l]:n[m])switch(a.t){case"n":var c=a.w;c||null==a.v||(c=a.v),null==c?a.f&&!a.F?t(s,1,0,"="+a.f):t(s,1,0,""):t(s,0,c,"V");break;case"b":t(s,0,a.v?1:0,a.v?"TRUE":"FALSE");break;case"s":t(s,1,0,isNaN(a.v)?a.v:'="'+a.v+'"');break;case"d":a.w||(a.w=eh(a.z||wd[14],gh(xh(a.v)))),t(s,0,a.w,"V");break;default:t(s,1,0,"")}else t(s,1,0,"")}}t(s,-1,0,"EOD");return s.join("\r\n")}}();return{to_workbook:function(e,n){return kf(t(e,n),n)},to_sheet:t,from_sheet:n}}(),Qy=function(){function e(e){return e.replace(/\\/g,"\\b").replace(/:/g,"\\c").replace(/\n/g,"\\n")}function t(e,t){return wf(function(e,t){for(var n=e.split("\n"),a=-1,s=-1,i=0,o=[];i!==n.length;++i){var r=n[i].trim().split(":");if("cell"===r[0]){var l=df(r[1]);if(o.length<=l.r)for(a=o.length;a<=l.r;++a)o[a]||(o[a]=[]);switch(a=l.r,s=l.c,r[2]){case"t":o[a][s]=r[3].replace(/\\b/g,"\\").replace(/\\c/g,":").replace(/\\n/g,"\n");break;case"v":o[a][s]=+r[3];break;case"vtf":var m=r[r.length-1];case"vtc":"nl"===r[3]?o[a][s]=!!+r[4]:o[a][s]=+r[4],"vtf"==r[2]&&(o[a][s]=[o[a][s],m])}}}return t&&t.sheetRows&&(o=o.slice(0,t.sheetRows)),o}(e,t),t)}var n=["socialcalc:version:1.5","MIME-Version: 1.0","Content-Type: multipart/mixed; boundary=SocialCalcSpreadsheetControlSave"].join("\n"),a=["--SocialCalcSpreadsheetControlSave","Content-type: text/plain; charset=UTF-8"].join("\n")+"\n",s=["# SocialCalc Spreadsheet Control Save","part:sheet"].join("\n"),i="--SocialCalcSpreadsheetControlSave--";function o(t){if(!t||!t["!ref"])return"";for(var n,a=[],s=[],i="",o=gf(t["!ref"]),r=Array.isArray(t),l=o.s.r;l<=o.e.r;++l)for(var m=o.s.c;m<=o.e.c;++m)if(i=hf({r:l,c:m}),(n=r?(t[l]||[])[m]:t[i])&&null!=n.v&&"z"!==n.t){switch(s=["cell",i,"t"],n.t){case"s":case"str":s.push(e(n.v));break;case"n":n.f?(s[2]="vtf",s[3]="n",s[4]=n.v,s[5]=e(n.f)):(s[2]="v",s[3]=n.v);break;case"b":s[2]="vt"+(n.f?"f":"c"),s[3]="nl",s[4]=n.v?"1":"0",s[5]=e(n.f||(n.v?"TRUE":"FALSE"));break;case"d":var c=gh(xh(n.v));s[2]="vtc",s[3]="nd",s[4]=""+c,s[5]=n.w||eh(n.z||wd[14],c);break;case"e":continue}a.push(s.join(":"))}return a.push("sheet:c:"+(o.e.c-o.s.c+1)+":r:"+(o.e.r-o.s.r+1)+":tvf:1"),a.push("valueformat:1:text-wiki"),a.join("\n")}return{to_workbook:function(e,n){return kf(t(e,n),n)},to_sheet:t,from_sheet:function(e){return[n,a,s,a,o(e),i].join("\n")}}}(),Jy=function(){function e(e,t,n,a,s){s.raw?t[n][a]=e:""===e||("TRUE"===e?t[n][a]=!0:"FALSE"===e?t[n][a]=!1:isNaN(jh(e))?isNaN(Ah(e).getDate())?t[n][a]=e:t[n][a]=xh(e):t[n][a]=jh(e))}var t={44:",",9:"\t",59:";",124:"|"},n={44:3,9:2,59:1,124:0};function a(e){for(var a={},s=!1,i=0,o=0;i<e.length;++i)34==(o=e.charCodeAt(i))?s=!s:!s&&o in t&&(a[o]=(a[o]||0)+1);for(i in o=[],a)Object.prototype.hasOwnProperty.call(a,i)&&o.push([a[i],i]);if(!o.length)for(i in a=n)Object.prototype.hasOwnProperty.call(a,i)&&o.push([a[i],i]);return o.sort((function(e,t){return e[0]-t[0]||n[e[1]]-n[t[1]]})),t[o.pop()[1]]||44}function s(e,t){var n=t||{},s="";var i=n.dense?[]:{},o={s:{c:0,r:0},e:{c:0,r:0}};"sep="==e.slice(0,4)?13==e.charCodeAt(5)&&10==e.charCodeAt(6)?(s=e.charAt(4),e=e.slice(7)):13==e.charCodeAt(5)||10==e.charCodeAt(5)?(s=e.charAt(4),e=e.slice(6)):s=a(e.slice(0,1024)):s=n&&n.FS?n.FS:a(e.slice(0,1024));var r=0,l=0,m=0,c=0,u=0,p=s.charCodeAt(0),d=!1,h=0,g=e.charCodeAt(0);e=e.replace(/\r\n/gm,"\n");var f=null!=n.dateNF?function(e){var t="number"==typeof e?wd[e]:e;return t=t.replace(sh,"(\\d+)"),new RegExp("^"+t+"$")}(n.dateNF):null;function y(){var t=e.slice(c,u),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(m=jh(t)))if(!isNaN(Ah(t).getDate())||f&&t.match(f)){a.z=n.dateNF||wd[14];var s=0;f&&t.match(f)&&(t=function(e,t,n){var a=-1,s=-1,i=-1,o=-1,r=-1,l=-1;(t.match(sh)||[]).forEach((function(e,t){var m=parseInt(n[t+1],10);switch(e.toLowerCase().charAt(0)){case"y":a=m;break;case"d":i=m;break;case"h":o=m;break;case"s":l=m;break;case"m":o>=0?r=m:s=m}})),l>=0&&-1==r&&s>=0&&(r=s,s=-1);var m=(""+(a>=0?a:(new Date).getFullYear())).slice(-4)+"-"+("00"+(s>=1?s:1)).slice(-2)+"-"+("00"+(i>=1?i:1)).slice(-2);7==m.length&&(m="0"+m),8==m.length&&(m="20"+m);var c=("00"+(o>=0?o:0)).slice(-2)+":"+("00"+(r>=0?r:0)).slice(-2)+":"+("00"+(l>=0?l:0)).slice(-2);return-1==o&&-1==r&&-1==l?m:-1==a&&-1==s&&-1==i?c:m+"T"+c}(0,n.dateNF,t.match(f)||[]),s=1),n.cellDates?(a.t="d",a.v=xh(t,s)):(a.t="n",a.v=gh(xh(t,s))),!1!==n.cellText&&(a.w=eh(a.z,a.v instanceof Date?gh(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=m;if("z"==a.t||(n.dense?(i[r]||(i[r]=[]),i[r][l]=a):i[hf({c:l,r:r})]=a),c=u+1,g=e.charCodeAt(c),o.e.c<l&&(o.e.c=l),o.e.r<r&&(o.e.r=r),h==p)++l;else if(l=0,++r,n.sheetRows&&n.sheetRows<=r)return!0}e:for(;u<e.length;++u)switch(h=e.charCodeAt(u)){case 34:34===g&&(d=!d);break;case p:case 10:case 13:if(!d&&y())break e}return u-c>0&&y(),i["!ref"]=ff(o),i}function i(t,n){return n&&n.PRN?n.FS||"sep="==t.slice(0,4)||t.indexOf("\t")>=0||t.indexOf(",")>=0||t.indexOf(";")>=0?s(t,n):wf(function(t,n){var a=n||{},s=[];if(!t||0===t.length)return s;for(var i=t.split(/[\r\n]/),o=i.length-1;o>=0&&0===i[o].length;)--o;for(var r=10,l=0,m=0;m<=o;++m)-1==(l=i[m].indexOf(" "))?l=i[m].length:l++,r=Math.max(r,l);for(m=0;m<=o;++m){s[m]=[];var c=0;for(e(i[m].slice(0,r).trim(),s,m,c,a),c=1;c<=(i[m].length-r)/10+1;++c)e(i[m].slice(r+10*(c-1),r+10*c).trim(),s,m,c,a)}return a.sheetRows&&(s=s.slice(0,a.sheetRows)),s}(t,n),n):s(t,n)}function o(e,t){var n="",a="string"==t.type?[0,0,0,0]:ab(e,t);switch(t.type){case"base64":n=nd(e);break;case"binary":case"string":n=e;break;case"buffer":n=65001==t.codepage?e.toString("utf8"):t.codepage&&"undefined"!==typeof Qp?Qp.utils.decode(t.codepage,e):ad&&Buffer.isBuffer(e)?e.toString("binary"):md(e);break;case"array":n=Th(e);break;default:throw new Error("Unrecognized type "+t.type)}return 239==a[0]&&187==a[1]&&191==a[2]?n=Vh(n.slice(3)):"string"!=t.type&&"buffer"!=t.type&&65001==t.codepage?n=Vh(n):"binary"==t.type&&"undefined"!==typeof Qp&&t.codepage&&(n=Qp.utils.decode(t.codepage,Qp.utils.encode(28591,n))),"socialcalc:version:"==n.slice(0,19)?Qy.to_sheet("string"==t.type?n:Vh(n),t):i(n,t)}return{to_workbook:function(e,t){return kf(o(e,t),t)},to_sheet:o,from_sheet:function(e){for(var t,n=[],a=yf(e["!ref"]),s=Array.isArray(e),i=a.s.r;i<=a.e.r;++i){for(var o=[],r=a.s.c;r<=a.e.c;++r){var l=hf({r:i,c:r});if((t=s?(e[i]||[])[r]:e[l])&&null!=t.v){for(var m=(t.w||(_f(t),t.w)||"").slice(0,10);m.length<10;)m+=" ";o.push(m+(0===r?" ":""))}else o.push(" ")}n.push(o.join(""))}return n.join("\n")}}}();var Zy=function(){function e(e,t,n){if(e){Zg(e,e.l||0);for(var a=n.Enum||y;e.l<e.length;){var s=e.read_shift(2),i=a[s]||a[65535],o=e.read_shift(2),r=e.l+o,l=i.f&&i.f(e,o,n);if(e.l=r,t(l,i,s))return}}}function t(t,n){if(!t)return t;var a=n||{};var s=a.dense?[]:{},i="Sheet1",o="",r=0,l={},m=[],c=[],u={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:u=e;break;case 204:e&&(o=e);break;case 222:o=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||wd[14],a.cellDates&&(e[1].t="d",e[1].v=_h(e[1].v))),a.qpro&&e[3]>r&&(s["!ref"]=ff(u),l[i]=s,m.push(i),s=a.dense?[]:{},u={s:{r:0,c:0},e:{r:0,c:0}},r=e[3],i=o||"Sheet"+(r+1),o="");var c=a.dense?(s[e[0].r]||[])[e[0].c]:s[hf(e[0])];if(c){c.t=e[1].t,c.v=e[1].v,null!=e[1].z&&(c.z=e[1].z),null!=e[1].f&&(c.f=e[1].f);break}a.dense?(s[e[0].r]||(s[e[0].r]=[]),s[e[0].r][e[0].c]=e[1]):s[hf(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:i=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]>r&&(s["!ref"]=ff(u),l[i]=s,m.push(i),s=a.dense?[]:{},u={s:{r:0,c:0},e:{r:0,c:0}},r=e[3],i="Sheet"+(r+1)),p>0&&e[0].r>=p)break;a.dense?(s[e[0].r]||(s[e[0].r]=[]),s[e[0].r][e[0].c]=e[1]):s[hf(e[0])]=e[1],u.e.c<e[0].c&&(u.e.c=e[0].c),u.e.r<e[0].r&&(u.e.r=e[0].r);break;case 27:e[14e3]&&(c[e[14e3][0]]=e[14e3][1]);break;case 1537:c[e[0]]=e[1],e[0]==r&&(i=e[1])}}),a)}if(s["!ref"]=ff(u),l[o||i]=s,m.push(o||i),!c.length)return{SheetNames:m,Sheets:l};for(var d={},h=[],g=0;g<c.length;++g)l[m[g]]?(h.push(c[g]||m[g]),d[c[g]]=l[c[g]]||l[m[g]]):(h.push(c[g]),d[c[g]]={"!ref":"A1"});return{SheetNames:h,Sheets:d}}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 s=e.l+t,i=n(e,0,a);if(i[1].t="s",20768==a.vers){e.l++;var o=e.read_shift(1);return i[1].v=e.read_shift(o,"utf8"),i}return a.qpro&&e.l++,i[1].v=e.read_shift(s-e.l,"cstr"),i}function s(e,t,n){var a=tf(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 s=0;s<a.length;++s){var i=n.charCodeAt(s);a.write_shift(1,i>=128?95:i)}return a.write_shift(1,0),a}function i(e,t,n){var a=tf(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 o(e,t,n){var a=tf(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 r(e,t,n){var a=32768&t;return t=(a?e:0)+((t&=-32769)>=8192?t-16384:t),(a?"":"$")+(n?pf(t):cf(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]},m=["","","","","","","","","","+","-","*","/","^","=","<>","<=",">=","<",">","","","","","&","","","","","","",""];function c(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 u(e,t,n,a){var s=tf(6+a.length);s.write_shift(2,e),s.write_shift(1,n),s.write_shift(1,t),s.write_shift(1,39);for(var i=0;i<a.length;++i){var o=a.charCodeAt(i);s.write_shift(1,o>=128?95:o)}return s.write_shift(1,0),s}function p(e,t){var n=c(e),a=e.read_shift(4),s=e.read_shift(4),i=e.read_shift(2);if(65535==i)return 0===a&&3221225472===s?(n[1].t="e",n[1].v=15):0===a&&3489660928===s?(n[1].t="e",n[1].v=42):n[1].v=0,n;var o=32768&i;return i=(32767&i)-16446,n[1].v=(1-2*o)*(s*Math.pow(2,i+32)+a*Math.pow(2,i)),n}function d(e,t,n,a){var s=tf(14);if(s.write_shift(2,e),s.write_shift(1,n),s.write_shift(1,t),0==a)return s.write_shift(4,0),s.write_shift(4,0),s.write_shift(2,65535),s;var i,o=0,r=0,l=0;return a<0&&(o=1,a=-a),r=0|Math.log2(a),0==(2147483648&(l=(a/=Math.pow(2,r-31))>>>0))&&(++r,l=(a/=2)>>>0),a-=l,l|=2147483648,l>>>=0,i=(a*=Math.pow(2,32))>>>0,s.write_shift(4,i),s.write_shift(4,l),r+=16383+(o?32768:0),s.write_shift(2,r),s}function h(e,t){var n=c(e),a=e.read_shift(8,"f");return n[1].v=a,n}function g(e,t){return 0==e[e.l+t-1]?e.read_shift(t,"cstr"):""}function f(e,t){var n=tf(5+e.length);n.write_shift(2,14e3),n.write_shift(2,t);for(var a=0;a<e.length;++a){var s=e.charCodeAt(a);n[n.l++]=s>127?95:s}return n[n.l++]=0,n}var y={0:{n:"BOF",f:Cy},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 s=n(e,0,a);return s[1].v=e.read_shift(2,"i"),s}},14:{n:"NUMBER",f:function(e,t,a){var s=n(e,0,a);return s[1].v=e.read_shift(8,"f"),s}},15:{n:"LABEL",f:a},16:{n:"FORMULA",f:function(e,t,a){var s=e.l+t,i=n(e,0,a);if(i[1].v=e.read_shift(8,"f"),a.qpro)e.l=s;else{var o=e.read_shift(2);!function(e,t){Zg(e,0);var n=[],a=0,s="",i="",o="",c="";for(;e.l<e.length;){var u=e[e.l++];switch(u){case 0:n.push(e.read_shift(8,"f"));break;case 1:i=r(t[0].c,e.read_shift(2),!0),s=r(t[0].r,e.read_shift(2),!1),n.push(i+s);break;case 2:var p=r(t[0].c,e.read_shift(2),!0),d=r(t[0].r,e.read_shift(2),!1);i=r(t[0].c,e.read_shift(2),!0),s=r(t[0].r,e.read_shift(2),!1),n.push(p+d+":"+i+s);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="";u=e[e.l++];)h+=String.fromCharCode(u);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:c=n.pop(),o=n.pop(),n.push(["AND","OR"][u-20]+"("+o+","+c+")");break;default:if(u<32&&m[u])c=n.pop(),o=n.pop(),n.push(o+m[u]+c);else{if(!l[u])return u<=7?console.error("WK1 invalid opcode "+u.toString(16)):u<=24?console.error("WK1 unsupported op "+u.toString(16)):u<=30?console.error("WK1 invalid opcode "+u.toString(16)):u<=115?console.error("WK1 unsupported function opcode "+u.toString(16)):console.error("WK1 unrecognized opcode "+u.toString(16));if(69==(a=l[u][1])&&(a=e[e.l++]),a>n.length)return void console.error("WK1 bad formula parse 0x"+u.toString(16)+":|"+n.join("|")+"|");var g=n.slice(-a);n.length-=a,n.push(l[u][0]+"("+g.join(",")+")")}}}1==n.length?t[1].f=""+n[0]:console.error("WK1 bad formula parse |"+n.join("|")+"|")}(e.slice(e.l,e.l+o),i),e.l+=o}return i}},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:g},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=c(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=c(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 s=e.read_shift(2);if(14e3==s){for(n[s]=[0,""],n[s][0]=e.read_shift(2);e[e.l];)n[s][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=c(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:g},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&&$p(+n.codepage),"string"==n.type)throw new Error("Cannot write WK1 to JS string");var a=nf(),r=yf(e["!ref"]),l=Array.isArray(e),m=[];gk(a,0,function(e){var t=tf(2);return t.write_shift(2,e),t}(1030)),gk(a,6,function(e){var t=tf(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}(r));for(var c=Math.min(r.e.r,8191),u=r.s.r;u<=c;++u)for(var p=cf(u),d=r.s.c;d<=r.e.c;++d){u===r.s.r&&(m[d]=pf(d));var h=m[d]+p,g=l?(e[u]||[])[d]:e[h];if(g&&"z"!=g.t)if("n"==g.t)(0|g.v)==g.v&&g.v>=-32768&&g.v<=32767?gk(a,13,i(u,d,g.v)):gk(a,14,o(u,d,g.v));else gk(a,15,s(u,d,_f(g).slice(0,239)))}return gk(a,1),a.end()},book_to_wk3:function(e,t){var n=t||{};if(+n.codepage>=0&&$p(+n.codepage),"string"==n.type)throw new Error("Cannot write WK3 to JS string");var a=nf();gk(a,0,function(e){var t=tf(26);t.write_shift(2,4096),t.write_shift(2,4),t.write_shift(4,0);for(var n=0,a=0,s=0,i=0;i<e.SheetNames.length;++i){var o=e.SheetNames[i],r=e.Sheets[o];if(r&&r["!ref"]){++s;var l=gf(r["!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,s),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 s=0,i=0;s<e.SheetNames.length;++s)(e.Sheets[e.SheetNames[s]]||{})["!ref"]&&gk(a,27,f(e.SheetNames[s],i++));var o=0;for(s=0;s<e.SheetNames.length;++s){var r=e.Sheets[e.SheetNames[s]];if(r&&r["!ref"]){for(var l=yf(r["!ref"]),m=Array.isArray(r),c=[],p=Math.min(l.e.r,8191),h=l.s.r;h<=p;++h)for(var g=cf(h),y=l.s.c;y<=l.e.c;++y){h===l.s.r&&(c[y]=pf(y));var v=c[y]+g,_=m?(r[h]||[])[y]:r[v];if(_&&"z"!=_.t)if("n"==_.t)gk(a,23,d(h,y,o,_.v));else gk(a,22,u(h,y,o,_f(_).slice(0,239)))}++o}}return gk(a,1),a.end()},to_workbook:function(e,n){switch(n.type){case"base64":return t(rd(nd(e)),n);case"binary":return t(rd(e),n);case"buffer":case"array":return t(e,n)}throw"Unsupported type "+n.type}}}();var ev=/^\s|\s$|[\t\n\r]/;function tv(e,t){if(!t.bookSST)return"";var n=[Nh];n[n.length]=Jh("sst",null,{xmlns:dg[0],count:e.Count,uniqueCount:e.Unique});for(var a=0;a!=e.length;++a)if(null!=e[a]){var s=e[a],i="<si>";s.r?i+=s.r:(i+="<t",s.t||(s.t=""),s.t.match(ev)&&(i+=' xml:space="preserve"'),i+=">"+Mh(s.t)+"</t>"),i+="</si>",n[n.length]=i}return n.length>2&&(n[n.length]="</sst>",n[1]=n[1].replace("/>",">")),n.join("")}var nv=function(e,t){var n=!1;return null==t&&(n=!0,t=tf(15+4*e.t.length)),t.write_shift(1,0),Cf(e.t,t),n?t.slice(0,t.l):t};function av(e){var t=nf();af(t,159,function(e,t){return t||(t=tf(8)),t.write_shift(4,e.Count),t.write_shift(4,e.Unique),t}(e));for(var n=0;n<e.length;++n)af(t,19,nv(e[n]));return af(t,160),t.end()}function sv(e){if("undefined"!==typeof Qp)return Qp.utils.encode(Hp,e);for(var t=[],n=e.split(""),a=0;a<n.length;++a)t[a]=n[a].charCodeAt(0);return t}function iv(e){var t,n,a=0,s=sv(e),i=s.length+1;for((t=id(i))[0]=s.length,n=1;n!=i;++n)t[n]=s[n-1];for(n=i-1;n>=0;--n)a=((0===(16384&a)?0:1)|a<<1&32767)^t[n];return 52811^a}var ov=function(){function e(e,n){switch(n.type){case"base64":return t(nd(e),n);case"binary":return t(e,n);case"buffer":return t(ad&&Buffer.isBuffer(e)?e.toString("binary"):md(e),n);case"array":return t(Th(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 s={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,i=/\\\w+\b/g,o=0,r=-1;a=i.exec(e);){if("\\cell"===a[0]){var l=e.slice(o,i.lastIndex-a[0].length);if(" "==l[0]&&(l=l.slice(1)),++r,l.length){var m={v:l,t:"s"};Array.isArray(n)?n[t][r]=m:n[hf({r:t,c:r})]=m}}o=i.lastIndex}r>s.e.c&&(s.e.c=r)})),n["!ref"]=ff(s),n}return{to_workbook:function(t,n){return kf(e(t,n),n)},to_sheet:e,from_sheet:function(e){for(var t,n=["{\\rtf1\\ansi"],a=yf(e["!ref"]),s=Array.isArray(e),i=a.s.r;i<=a.e.r;++i){n.push("\\trowd\\trautofit1");for(var o=a.s.c;o<=a.e.c;++o)n.push("\\cellx"+(o+1));for(n.push("\\pard\\intbl"),o=a.s.c;o<=a.e.c;++o){var r=hf({r:i,c:o});(t=s?(e[i]||[])[o]:e[r])&&(null!=t.v||t.f&&!t.F)&&(n.push(" "+(t.w||(_f(t),t.w))),n.push("\\cell"))}n.push("\\pard\\intbl\\row")}return n.join("")+"}"}}}();function rv(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 lv=6;function mv(e){return Math.floor((e+Math.round(128/lv)/256)*lv)}function cv(e){return Math.floor((e-5)/lv*100+.5)/100}function uv(e){return Math.round((e*lv+5)/lv*256)/256}function pv(e){e.width?(e.wpx=mv(e.width),e.wch=cv(e.wpx),e.MDW=lv):e.wpx?(e.wch=cv(e.wpx),e.width=uv(e.wch),e.MDW=lv):"number"==typeof e.wch&&(e.width=uv(e.wch),e.wpx=mv(e.width),e.MDW=lv),e.customWidth&&delete e.customWidth}function dv(e){return 96*e/96}function hv(e){return 96*e/96}function gv(e,t){var n,a=[Nh,Jh("styleSheet",null,{xmlns:dg[0],"xmlns:vt":cg})];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]=Jh("numFmt",null,{numFmtId:a,formatCode:Mh(e[a])}))})),1===t.length?"":(t[t.length]="</numFmts>",t[0]=Jh("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]=Jh("cellXfs",null),e.forEach((function(e){t[t.length]=Jh("xf",null,e)})),t[t.length]="</cellXfs>",2===t.length?"":(t[0]=Jh("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 fv(e,t,n){n||(n=tf(6+4*t.length)),n.write_shift(2,e),Cf(t,n);var a=n.length>n.l?n.slice(0,n.l):n;return null==n.l&&(n.l=n.length),a}function yv(e,t){t||(t=tf(153)),t.write_shift(2,20*e.sz),function(e,t){t||(t=tf(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),$f(e.color,t);var a=0;return"major"==e.scheme&&(a=1),"minor"==e.scheme&&(a=2),t.write_shift(1,a),Cf(e.name,t),t.length>t.l?t.slice(0,t.l):t}var vv,_v=["none","solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"],kv=ef;function bv(e,t){t||(t=tf(84)),vv||(vv=ph(_v));var n=vv[e.patternType];null==n&&(n=40),t.write_shift(4,n);var a=0;if(40!=n)for($f({auto:1},t),$f({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 wv(e,t,n){n||(n=tf(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 xv(e,t){return t||(t=tf(10)),t.write_shift(1,0),t.write_shift(1,0),t.write_shift(4,0),t.write_shift(4,0),t}var Tv=ef;function Cv(e){var t;af(e,613,xf(1)),af(e,46,(t||(t=tf(51)),t.write_shift(1,0),xv(0,t),xv(0,t),xv(0,t),xv(0,t),xv(0,t),t.length>t.l?t.slice(0,t.l):t)),af(e,614)}function Sv(e){af(e,619,xf(1)),af(e,48,function(e,t){return t||(t=tf(52)),t.write_shift(4,e.xfId),t.write_shift(2,1),t.write_shift(1,+e.builtinId),t.write_shift(1,0),Mf(e.name||"",t),t.length>t.l?t.slice(0,t.l):t}({xfId:0,builtinId:0,name:"Normal"})),af(e,620)}function jv(e){af(e,508,function(e,t,n){var a=tf(2052);return a.write_shift(4,e),Mf(t,a),Mf(n,a),a.length>a.l?a.slice(0,a.l):a}(0,"TableStyleMedium9","PivotStyleMedium4")),af(e,509)}function Dv(e,t){var n=nf();return af(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&&(af(e,615,xf(n)),[[5,8],[23,26],[41,44],[50,392]].forEach((function(n){for(var a=n[0];a<=n[1];++a)null!=t[a]&&af(e,44,fv(a,t[a]))})),af(e,616))}}(n,e.SSF),function(e){af(e,611,xf(1)),af(e,43,yv({sz:12,color:{theme:1},name:"Calibri",family:2,scheme:"minor"})),af(e,612)}(n),function(e){af(e,603,xf(2)),af(e,45,bv({patternType:"none"})),af(e,45,bv({patternType:"gray125"})),af(e,604)}(n),Cv(n),function(e){af(e,626,xf(1)),af(e,47,wv({numFmtId:0,fontId:0,fillId:0,borderId:0},65535)),af(e,627)}(n),function(e,t){af(e,617,xf(t.length)),t.forEach((function(t){af(e,47,wv(t,0))})),af(e,618)}(n,t.cellXfs),Sv(n),function(e){af(e,505,xf(0)),af(e,506)}(n),jv(n),af(n,279),n.end()}function Av(e,t){if(t&&t.themeXLSX)return t.themeXLSX;if(e&&"string"==typeof e.raw)return e.raw;var n=[Nh];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 Ev(){var e=nf();return af(e,332),af(e,334,xf(1)),af(e,335,function(e){var t=tf(12+2*e.name.length);return t.write_shift(4,e.flags),t.write_shift(4,e.version),Cf(e.name,t),t.slice(0,t.l)}({name:"XLDAPR",version:12e4,flags:3496657072})),af(e,336),af(e,339,function(e,t){var n=tf(8+2*t.length);return n.write_shift(4,e),Cf(t,n),n.slice(0,n.l)}(1,"XLDAPR")),af(e,52),af(e,35,xf(514)),af(e,4096,xf(0)),af(e,4097,Sy(1)),af(e,36),af(e,53),af(e,340),af(e,337,function(e,t){var n=tf(8);return n.write_shift(4,e),n.write_shift(4,t?1:0),n}(1,!0)),af(e,51,function(e){var t=tf(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]])),af(e,338),af(e,333),e.end()}function Iv(){var e=[Nh];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 Nv=1024;function Pv(e,t){for(var n=[21600,21600],a=["m0,0l0",n[1],n[0],n[1],n[0],"0xe"].join(","),s=[Jh("xml",null,{"xmlns:v":_g,"xmlns:o":hg,"xmlns:x":gg,"xmlns:mv":vg}).replace(/\/>/,">"),Jh("o:shapelayout",Jh("o:idmap",null,{"v:ext":"edit",data:e}),{"v:ext":"edit"}),Jh("v:shapetype",[Jh("v:stroke",null,{joinstyle:"miter"}),Jh("v:path",null,{gradientshapeok:"t","o:connecttype":"rect"})].join(""),{id:"_x0000_t202","o:spt":202,coordsize:n.join(","),path:a})];Nv<1e3*e;)Nv+=1e3;return t.forEach((function(e){var t=df(e[0]),n={color2:"#BEFF82",type:"gradient"};"gradient"==n.type&&(n.angle="-180");var a="gradient"==n.type?Jh("o:fill",null,{type:"gradientUnscaled","v:ext":"view"}):null,i=Jh("v:fill",a,n);++Nv,s=s.concat(["<v:shape"+Qh({id:"_x0000_s"+Nv,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"})+">",i,Jh("v:shadow",null,{on:"t",obscured:"t"}),Jh("v:path",null,{"o:connecttype":"none"}),'<v:textbox><div style="text-align:left"></div></v:textbox>','<x:ClientData ObjectType="Note">',"<x:MoveWithCells/>","<x:SizeWithCells/>",Xh("x:Anchor",[t.c+1,0,t.r+1,0,t.c+3,20,t.r+5,20].join(",")),Xh("x:AutoFill","False"),Xh("x:Row",String(t.r)),Xh("x:Column",String(t.c)),e[1].hidden?"":"<x:Visible/>","</x:ClientData>","</v:shape>"])})),s.push("</xml>"),s.join("")}function Rv(e){var t=[Nh,Jh("comments",null,{xmlns:dg[0]})],n=[];return t.push("<authors>"),e.forEach((function(e){e[1].forEach((function(e){var a=Mh(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,s=[];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(Mh(e.a))),s.push(e.t||"")})),t.push('<comment ref="'+e[0]+'" authorId="'+a+'"><text>'),s.length<=1)t.push(Xh("t",Mh(s[0]||"")));else{for(var i="Comment:\n "+s[0]+"\n",o=1;o<s.length;++o)i+="Reply:\n "+s[o]+"\n";t.push(Xh("t",Mh(i)))}t.push("</text></comment>")})),t.push("</commentList>"),t.length>2&&(t[t.length]="</comments>",t[1]=t[1].replace("/>",">")),t.join("")}function Ov(e,t,n){var a=[Nh,Jh("ThreadedComments",null,{xmlns:ig}).replace(/[\/]>/,">")];return e.forEach((function(e){var s="";(e[1]||[]).forEach((function(i,o){if(i.T){i.a&&-1==t.indexOf(i.a)&&t.push(i.a);var r={ref:e[0],id:"{54EE7951-7262-4200-6969-"+("000000000000"+n.tcid++).slice(-12)+"}"};0==o?s=r.id:r.parentId=s,i.ID=r.id,i.a&&(r.personId="{54EE7950-7262-4200-6969-"+("000000000000"+t.indexOf(i.a)).slice(-12)+"}"),a.push(Jh("threadedComment",Xh("text",i.t||""),r))}else delete i.ID}))})),a.push("</ThreadedComments>"),a.join("")}var Lv=Tf;function Mv(e){var t=nf(),n=[];return af(t,628),af(t,630),e.forEach((function(e){e[1].forEach((function(e){n.indexOf(e.a)>-1||(n.push(e.a.slice(0,54)),af(t,632,function(e){return Cf(e.slice(0,54))}(e.a)))}))})),af(t,631),af(t,633),e.forEach((function(e){e[1].forEach((function(a){a.iauthor=n.indexOf(a.a);var s={s:df(e[0]),e:df(e[0])};af(t,635,function(e,t){return null==t&&(t=tf(36)),t.write_shift(4,e[1].iauthor),Gf(e[0],t),t.write_shift(4,0),t.write_shift(4,0),t.write_shift(4,0),t.write_shift(4,0),t}([s,a])),a.t&&a.t.length>0&&af(t,637,Af(a)),af(t,636),delete a.iauthor}))})),af(t,634),af(t,629),t.end()}var Fv=["xlsb","xlsm","xlam","biff8","xla"];var Wv=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,s){var i=!1,o=!1;0==a.length?o=!0:"["==a.charAt(0)&&(o=!0,a=a.slice(1,-1)),0==s.length?i=!0:"["==s.charAt(0)&&(i=!0,s=s.slice(1,-1));var r=a.length>0?0|parseInt(a,10):0,l=s.length>0?0|parseInt(s,10):0;return i?l+=t.c:--l,o?r+=t.r:--r,n+(i?"":"$")+pf(l)+(o?"":"$")+cf(r)}return function(a,s){return t=s,a.replace(e,n)}}(),qv=/(^|[^._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,zv=function(){return function(e,t){return e.replace(qv,(function(e,n,a,s,i,o){var r=uf(s)-(a?0:t.c),l=mf(o)-(i?0:t.r);return n+"R"+(0==l?"":i?l+1:"["+l+"]")+"C"+(0==r?"":a?r+1:"["+r+"]")}))}}();function Bv(e,t){return e.replace(qv,(function(e,n,a,s,i,o){return n+("$"==a?a+s:pf(uf(s)+t.c))+("$"==i?i+o:cf(mf(o)+t.r))}))}function Uv(e){e.l+=1}function Hv(e,t){var n=e.read_shift(1==t?1:2);return[16383&n,n>>14&1,n>>15&1]}function Gv(e,t,n){var a=2;if(n){if(n.biff>=2&&n.biff<=5)return Vv(e);12==n.biff&&(a=4)}var s=e.read_shift(a),i=e.read_shift(a),o=Hv(e,2),r=Hv(e,2);return{s:{r:s,c:o[0],cRel:o[1],rRel:o[2]},e:{r:i,c:r[0],cRel:r[1],rRel:r[2]}}}function Vv(e){var t=Hv(e,2),n=Hv(e,2),a=e.read_shift(1),s=e.read_shift(1);return{s:{r:t[0],c:a,cRel:t[1],rRel:t[2]},e:{r:n[0],c:s,cRel:n[1],rRel:n[2]}}}function Kv(e,t,n){if(n&&n.biff>=2&&n.biff<=5)return function(e){var t=Hv(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),s=Hv(e,2);return{r:a,c:s[0],cRel:s[1],rRel:s[2]}}function $v(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 Yv(e){var t=1&e[e.l+1];return e.l+=4,[t,1]}function Xv(e){return[e.read_shift(1),e.read_shift(1)]}function Qv(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]=xy(e,1)?"TRUE":"FALSE",12!=t&&(e.l+=7);break;case 37:case 16:n[1]=ey[e[e.l]],e.l+=12==t?4:8;break;case 0:e.l+=8;break;case 1:n[1]=Vf(e);break;case 2:n[1]=Ny(e,0,{biff:t>0&&t<8?2:t});break;default:throw new Error("Bad SerAr: "+n[0])}return n}function Jv(e,t,n){for(var a=e.read_shift(12==n.biff?4:2),s=[],i=0;i!=a;++i)s.push((12==n.biff?Hf:Fy)(e,8));return s}function Zv(e,t,n){var a=0,s=0;12==n.biff?(a=e.read_shift(4),s=e.read_shift(4)):(s=1+e.read_shift(1),a=1+e.read_shift(2)),n.biff>=2&&n.biff<8&&(--a,0==--s&&(s=256));for(var i=0,o=[];i!=a&&(o[i]=[]);++i)for(var r=0;r!=s;++r)o[i][r]=Qv(e,n.biff);return o}function e_(e,t,n){return e.l+=2,[$v(e)]}function t_(e){return e.l+=6,[]}function n_(e){return e.l+=2,[Cy(e),1&e.read_shift(2)]}var a_=["Data","All","Headers","??","?Data2","??","?DataHeaders","??","Totals","??","??","??","?DataTotals","??","??","??","?Current"];var s_={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:ef},3:{n:"PtgAdd",f:Uv},4:{n:"PtgSub",f:Uv},5:{n:"PtgMul",f:Uv},6:{n:"PtgDiv",f:Uv},7:{n:"PtgPower",f:Uv},8:{n:"PtgConcat",f:Uv},9:{n:"PtgLt",f:Uv},10:{n:"PtgLe",f:Uv},11:{n:"PtgEq",f:Uv},12:{n:"PtgGe",f:Uv},13:{n:"PtgGt",f:Uv},14:{n:"PtgNe",f:Uv},15:{n:"PtgIsect",f:Uv},16:{n:"PtgUnion",f:Uv},17:{n:"PtgRange",f:Uv},18:{n:"PtgUplus",f:Uv},19:{n:"PtgUminus",f:Uv},20:{n:"PtgPercent",f:Uv},21:{n:"PtgParen",f:Uv},22:{n:"PtgMissArg",f:Uv},23:{n:"PtgStr",f:function(e,t,n){return e.l++,Dy(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++,ey[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++,Vf(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 s=e.read_shift(n&&n.biff<=3?1:2);return[x_[s],w_[s],a]}},34:{n:"PtgFuncVar",f:function(e,t,n){var a=e[e.l++],s=e.read_shift(1),i=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[s,(0===i[0]?w_:b_)[i[1]]]}},35:{n:"PtgName",f:function(e,t,n){var a=e.read_shift(1)>>>5&3,s=!n||n.biff>=8?4:2,i=e.read_shift(s);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,i]}},36:{n:"PtgRef",f:function(e,t,n){var a=(96&e[e.l])>>5;return e.l+=1,[a,Kv(e,0,n)]}},37:{n:"PtgArea",f:function(e,t,n){return[(96&e[e.l++])>>5,Gv(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:ef},40:{n:"PtgMemNoMem",f:ef},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 s=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,s=(16384&t)>>14;return t&=16383,1==a&&t>=8192&&(t-=16384),1==s&&n>=128&&(n-=256),{r:t,c:n,cRel:s,rRel:a}}(e);var s=e.read_shift(a>=12?4:2),i=e.read_shift(2),o=(16384&i)>>14,r=(32768&i)>>15;if(i&=16383,1==r)for(;s>524287;)s-=1048576;if(1==o)for(;i>8191;)i-=16384;return{r:s,c:i,cRel:o,rRel:r}}(e,0,n);return[a,s]}},45:{n:"PtgAreaN",f:function(e,t,n){var a=(96&e[e.l++])>>5,s=function(e,t,n){if(n.biff<8)return Vv(e);var a=e.read_shift(12==n.biff?4:2),s=e.read_shift(12==n.biff?4:2),i=Hv(e,2),o=Hv(e,2);return{s:{r:a,c:i[0],cRel:i[1],rRel:i[2]},e:{r:s,c:o[0],cRel:o[1],rRel:o[2]}}}(e,0,n);return[a,s]}},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 s=e.read_shift(2);return n&&5==n.biff&&(e.l+=12),[a,s,Kv(e,0,n)]}},59:{n:"PtgArea3d",f:function(e,t,n){var a=(96&e[e.l++])>>5,s=e.read_shift(2,"i");if(n)switch(n.biff){case 5:e.l+=12,6;break;case 12:12}return[a,s,Gv(e,0,n)]}},60:{n:"PtgRefErr3d",f:function(e,t,n){var a=(96&e[e.l++])>>5,s=e.read_shift(2),i=4;if(n)switch(n.biff){case 5:i=15;break;case 12:i=6}return e.l+=i,[a,s]}},61:{n:"PtgAreaErr3d",f:function(e,t,n){var a=(96&e[e.l++])>>5,s=e.read_shift(2),i=8;if(n)switch(n.biff){case 5:e.l+=12,i=6;break;case 12:i=12}return e.l+=i,[a,s]}},255:{}},i_={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},o_={1:{n:"PtgElfLel",f:n_},2:{n:"PtgElfRw",f:e_},3:{n:"PtgElfCol",f:e_},6:{n:"PtgElfRwV",f:e_},7:{n:"PtgElfColV",f:e_},10:{n:"PtgElfRadical",f:e_},11:{n:"PtgElfRadicalS",f:t_},13:{n:"PtgElfColS",f:t_},15:{n:"PtgElfColSV",f:t_},16:{n:"PtgElfRadicalLel",f:n_},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),s=e.read_shift(2),i=e.read_shift(2);return{ixti:t,coltype:3&n,rt:a_[n>>2&31],idx:a,c:s,C:i}}},29:{n:"PtgSxName",f:function(e){return e.l+=2,[e.read_shift(4)]}},255:{}},r_={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),s=[],i=0;i<=a;++i)s.push(e.read_shift(n&&2==n.biff?1:2));return s}},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:Yv},33:{n:"PtgAttrBaxcel",f:Yv},64:{n:"PtgAttrSpace",f:function(e){return e.read_shift(2),Xv(e)}},65:{n:"PtgAttrSpaceSemi",f:function(e){return e.read_shift(2),Xv(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 l_(e,t,n,a){if(a.biff<8)return ef(e,t);for(var s=e.l+t,i=[],o=0;o!==n.length;++o)switch(n[o][0]){case"PtgArray":n[o][1]=Zv(e,0,a),i.push(n[o][1]);break;case"PtgMemArea":n[o][2]=Jv(e,n[o][1],a),i.push(n[o][2]);break;case"PtgExp":a&&12==a.biff&&(n[o][1][1]=e.read_shift(4),i.push(n[o][1]));break;case"PtgList":case"PtgElfRadicalS":case"PtgElfColS":case"PtgElfColSV":throw"Unsupported "+n[o][0]}return 0!==(t=s-e.l)&&i.push(ef(e,t)),i}function m_(e,t,n){for(var a,s,i=e.l+t,o=[];i!=e.l;)t=i-e.l,s=e[e.l],a=s_[s]||s_[i_[s]],24!==s&&25!==s||(a=(24===s?o_:r_)[e[e.l+1]]),a&&a.f?o.push([a.n,a.f(e,t,n)]):ef(e,t);return o}function c_(e){for(var t=[],n=0;n<e.length;++n){for(var a=e[n],s=[],i=0;i<a.length;++i){var o=a[i];if(o)if(2===o[0])s.push('"'+o[1].replace(/"/g,'""')+'"');else s.push(o[1]);else s.push("")}t.push(s.join(","))}return t.join(";")}var u_={PtgAdd:"+",PtgConcat:"&",PtgDiv:"/",PtgEq:"=",PtgGe:">=",PtgGt:">",PtgLe:"<=",PtgLt:"<",PtgMul:"*",PtgNe:"<>",PtgPower:"^",PtgSub:"-"};function p_(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 s="";if(n.biff>8)switch(e[a[0]][0]){case 357:return s=-1==a[1]?"#REF":e.SheetNames[a[1]],a[1]==a[2]?s:s+":"+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 s=-1==a[1]?"#REF":e.SheetNames[a[1]]||"SH33TJSERR3",a[1]==a[2]?s:s+":"+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]?(s=-1==a[1]?"#REF":e[a[0]][0][3][a[1]]||"SH33TJSERR4",a[1]==a[2]?s:s+":"+e[a[0]][0][3][a[2]]):"SH33TJSERR2"}}function d_(e,t,n){var a=p_(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 h_(e,t,n,a,s){var i,o,r,l,m=s&&s.biff||8,c={s:{c:0,r:0},e:{c:0,r:0}},u=[],p=0,d=0,h="";if(!e[0]||!e[0][0])return"";for(var g=-1,f="",y=0,v=e[0].length;y<v;++y){var _=e[0][y];switch(_[0]){case"PtgUminus":u.push("-"+u.pop());break;case"PtgUplus":u.push("+"+u.pop());break;case"PtgPercent":u.push(u.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(i=u.pop(),o=u.pop(),g>=0){switch(e[0][g][1][0]){case 0:f=Sh(" ",e[0][g][1][1]);break;case 1:f=Sh("\r",e[0][g][1][1]);break;default:if(f="",s.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][g][1][0])}o+=f,g=-1}u.push(o+u_[_[0]]+i);break;case"PtgIsect":i=u.pop(),o=u.pop(),u.push(o+" "+i);break;case"PtgUnion":i=u.pop(),o=u.pop(),u.push(o+","+i);break;case"PtgRange":i=u.pop(),o=u.pop(),u.push(o+":"+i);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":r=sf(_[1][1],c,s),u.push(rf(r,m));break;case"PtgRefN":r=n?sf(_[1][1],n,s):_[1][1],u.push(rf(r,m));break;case"PtgRef3d":p=_[1][1],r=sf(_[1][2],c,s);h=d_(a,p,s);u.push(h+"!"+rf(r,m));break;case"PtgFunc":case"PtgFuncVar":var k=_[1][0],b=_[1][1];k||(k=0);var w=0==(k&=127)?[]:u.slice(-k);u.length-=k,"User"===b&&(b=w.shift()),u.push(b+"("+w.join(",")+")");break;case"PtgBool":u.push(_[1]?"TRUE":"FALSE");break;case"PtgInt":case"PtgErr":u.push(_[1]);break;case"PtgNum":u.push(String(_[1]));break;case"PtgStr":u.push('"'+_[1].replace(/"/g,'""')+'"');break;case"PtgAreaN":l=of(_[1][1],n?{s:n}:c,s),u.push(lf(l,s));break;case"PtgArea":l=of(_[1][1],c,s),u.push(lf(l,s));break;case"PtgArea3d":p=_[1][1],l=_[1][2],h=d_(a,p,s),u.push(h+"!"+lf(l,s));break;case"PtgAttrSum":u.push("SUM("+u.pop()+")");break;case"PtgName":d=_[1][2];var x=(a.names||[])[d-1]||(a[0]||[])[d],T=x?x.Name:"SH33TJSNAME"+String(d);T&&"_xlfn."==T.slice(0,6)&&!s.xlfn&&(T=T.slice(6)),u.push(T);break;case"PtgNameX":var C,S=_[1][1];if(d=_[1][2],!(s.biff<=5)){var j="";if(14849==((a[S]||[])[0]||[])[0]||(1025==((a[S]||[])[0]||[])[0]?a[S][d]&&a[S][d].itab>0&&(j=a.SheetNames[a[S][d].itab-1]+"!"):j=a.SheetNames[d-1]+"!"),a[S]&&a[S][d])j+=a[S][d].Name;else if(a[0]&&a[0][d])j+=a[0][d].Name;else{var D=(p_(a,S,s)||"").split(";;");D[d-1]?j=D[d-1]:j+="SH33TJSERRX"}u.push(j);break}S<0&&(S=-S),a[S]&&(C=a[S][d]),C||(C={Name:"SH33TJSERRY"}),u.push(C.Name);break;case"PtgParen":var A="(",E=")";if(g>=0){switch(f="",e[0][g][1][0]){case 2:A=Sh(" ",e[0][g][1][1])+A;break;case 3:A=Sh("\r",e[0][g][1][1])+A;break;case 4:E=Sh(" ",e[0][g][1][1])+E;break;case 5:E=Sh("\r",e[0][g][1][1])+E;break;default:if(s.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][g][1][0])}g=-1}u.push(A+u.pop()+E);break;case"PtgRefErr":case"PtgRefErr3d":case"PtgAreaErr":case"PtgAreaErr3d":u.push("#REF!");break;case"PtgExp":r={c:_[1][1],r:_[1][0]};var I={c:n.c,r:n.r};if(a.sharedf[hf(r)]){var N=a.sharedf[hf(r)];u.push(h_(N,c,I,a,s))}else{var P=!1;for(i=0;i!=a.arrayf.length;++i)if(o=a.arrayf[i],!(r.c<o[0].s.c||r.c>o[0].e.c)&&!(r.r<o[0].s.r||r.r>o[0].e.r)){u.push(h_(o[1],c,I,a,s)),P=!0;break}P||u.push(_[1])}break;case"PtgArray":u.push("{"+c_(_[1])+"}");break;case"PtgAttrSpace":case"PtgAttrSpaceSemi":g=y;break;case"PtgMissArg":u.push("");break;case"PtgList":u.push("Table"+_[1].idx+"[#"+_[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(_))}if(3!=s.biff&&g>=0&&-1==["PtgAttrSpace","PtgAttrSpaceSemi","PtgAttrGoto"].indexOf(e[0][y][0])){var R=!0;switch((_=e[0][g])[1][0]){case 4:R=!1;case 0:f=Sh(" ",_[1][1]);break;case 5:R=!1;case 1:f=Sh("\r",_[1][1]);break;default:if(f="",s.WTF)throw new Error("Unexpected PtgAttrSpaceType "+_[1][0])}u.push((R?f:"")+u.pop()+(R?"":f)),g=-1}}if(u.length>1&&s.WTF)throw new Error("bad formula stack");return u[0]}function g_(e,t,n,a,s){var i=Ly(t,n,s),o=function(e){if(null==e){var t=tf(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 Kf("number"==typeof e?e:0)}(e.v),r=tf(6);r.write_shift(2,33),r.write_shift(4,0);for(var l=tf(e.bf.length),m=0;m<e.bf.length;++m)l[m]=e.bf[m];return cd([i,o,r,l])}function f_(e,t,n){var a=e.read_shift(4),s=m_(e,a,n),i=e.read_shift(4);return[s,i>0?l_(e,i,s,n):null]}var y_=f_,v_=f_,__=f_,k_=f_,b_={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"},w_={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"},x_={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};var T_="undefined"!==typeof Map;function C_(e,t,n){var a=0,s=e.length;if(n){if(T_?n.has(t):Object.prototype.hasOwnProperty.call(n,t))for(var i=T_?n.get(t):n[t];a<i.length;++a)if(e[i[a]].t===t)return e.Count++,i[a]}else for(;a<s;++a)if(e[a].t===t)return e.Count++,a;return e[s]={t:t},e.Count++,e.Unique++,n&&(T_?(n.has(t)||n.set(t,[]),n.get(t).push(s)):(Object.prototype.hasOwnProperty.call(n,t)||(n[t]=[]),n[t].push(s))),s}function S_(e,t){var n={min:e+1,max:e+1},a=-1;return t.MDW&&(lv=t.MDW),null!=t.width?n.customWidth=1:null!=t.wpx?a=cv(t.wpx):null!=t.wch&&(a=t.wch),a>-1?(n.width=uv(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 j_(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 D_(e,t,n){var a=n.revssf[null!=t.z?t.z:"General"],s=60,i=e.length;if(null==a&&n.ssf)for(;s<392;++s)if(null==n.ssf[s]){th(t.z,s),n.ssf[s]=t.z,n.revssf[t.z]=a=s;break}for(s=0;s!=i;++s)if(e[s].numFmtId===a)return s;return e[i]={numFmtId:a,fontId:0,fillId:0,borderId:0,xfId:0,applyNumberFormat:1},i}function A_(e,t,n){if(e&&e["!ref"]){var a=yf(e["!ref"]);if(a.e.c<a.s.c||a.e.r<a.s.r)throw new Error("Bad range ("+n+"): "+e["!ref"])}}var E_=["objects","scenarios","selectLockedCells","selectUnlockedCells"],I_=["formatColumns","formatRows","formatCells","insertColumns","insertRows","insertHyperlinks","deleteColumns","deleteRows","sort","autoFilter","pivotTables"];function N_(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 s="",i=e.t,o=e.v;if("z"!==e.t)switch(e.t){case"b":s=e.v?"1":"0";break;case"n":s=""+e.v;break;case"e":s=ey[e.v];break;case"d":a&&a.cellDates?s=xh(e.v,-1).toISOString():((e=Ch(e)).t="n",s=""+(e.v=gh(xh(e.v)))),"undefined"===typeof e.z&&(e.z=wd[14]);break;default:s=e.v}var r=Xh("v",Mh(s)),l={r:t},m=D_(a.cellXfs,e,a);switch(0!==m&&(l.s=m),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){r=Xh("v",""+C_(a.Strings,e.v,a.revStrings)),l.t="s";break}l.t="str"}if(e.t!=i&&(e.t=i,e.v=o),"string"==typeof e.f&&e.f){var c=e.F&&e.F.slice(0,t.length)==t?{t:"array",ref:e.F}:null;r=Jh("f",Mh(e.f),c)+(null!=e.v?r:"")}return e.l&&n["!links"].push([t,e.l]),e.D&&(l.cm=1),Jh("c",r,l)}function P_(e,t,n,a){var s,i=[Nh,Jh("worksheet",null,{xmlns:dg[0],"xmlns:r":mg})],o=n.SheetNames[e],r="",l=n.Sheets[o];null==l&&(l={});var m=l["!ref"]||"A1",c=yf(m);if(c.e.c>16383||c.e.r>1048575){if(t.WTF)throw new Error("Range "+m+" exceeds format limit A1:XFD1048576");c.e.c=Math.min(c.e.c,16383),c.e.r=Math.min(c.e.c,1048575),m=ff(c)}a||(a={}),l["!comments"]=[];var u=[];!function(e,t,n,a,s){var i=!1,o={},r=null;if("xlsx"!==a.bookType&&t.vbaraw){var l=t.SheetNames[n];try{t.Workbook&&(l=t.Workbook.Sheets[n].CodeName||l)}catch(c){}i=!0,o.codeName=Kh(Mh(l))}if(e&&e["!outline"]){var m={summaryBelow:1,summaryRight:1};e["!outline"].above&&(m.summaryBelow=0),e["!outline"].left&&(m.summaryRight=0),r=(r||"")+Jh("outlinePr",null,m)}(i||r)&&(s[s.length]=Jh("sheetPr",r,o))}(l,n,e,t,i),i[i.length]=Jh("dimension",null,{ref:m}),i[i.length]=function(e,t,n,a){var s={workbookViewId:"0"};return(((a||{}).Workbook||{}).Views||[])[0]&&(s.rightToLeft=a.Workbook.Views[0].RTL?"1":"0"),Jh("sheetViews",Jh("sheetView",null,s),{})}(0,0,0,n),t.sheetFormat&&(i[i.length]=Jh("sheetFormatPr",null,{defaultRowHeight:t.sheetFormat.defaultRowHeight||"16",baseColWidth:t.sheetFormat.baseColWidth||"10",outlineLevelRow:t.sheetFormat.outlineLevelRow||"7"})),null!=l["!cols"]&&l["!cols"].length>0&&(i[i.length]=function(e,t){for(var n,a=["<cols>"],s=0;s!=t.length;++s)(n=t[s])&&(a[a.length]=Jh("col",null,S_(s,n)));return a[a.length]="</cols>",a.join("")}(0,l["!cols"])),i[s=i.length]="<sheetData/>",l["!links"]=[],null!=l["!ref"]&&(r=function(e,t,n,a){var s,i,o=[],r=[],l=yf(e["!ref"]),m="",c="",u=[],p=0,d=0,h=e["!rows"],g=Array.isArray(e),f={r:c},y=-1;for(d=l.s.c;d<=l.e.c;++d)u[d]=pf(d);for(p=l.s.r;p<=l.e.r;++p){for(r=[],c=cf(p),d=l.s.c;d<=l.e.c;++d){s=u[d]+c;var v=g?(e[p]||[])[d]:e[s];void 0!==v&&null!=(m=N_(v,s,e,t))&&r.push(m)}(r.length>0||h&&h[p])&&(f={r:c},h&&h[p]&&((i=h[p]).hidden&&(f.hidden=1),y=-1,i.hpx?y=dv(i.hpx):i.hpt&&(y=i.hpt),y>-1&&(f.ht=y,f.customHeight=1),i.level&&(f.outlineLevel=i.level)),o[o.length]=Jh("row",r.join(""),f))}if(h)for(;p<h.length;++p)h&&h[p]&&(f={r:p+1},(i=h[p]).hidden&&(f.hidden=1),y=-1,i.hpx?y=dv(i.hpx):i.hpt&&(y=i.hpt),y>-1&&(f.ht=y,f.customHeight=1),i.level&&(f.outlineLevel=i.level),o[o.length]=Jh("row","",f));return o.join("")}(l,t,0,0),r.length>0&&(i[i.length]=r)),i.length>s+1&&(i[i.length]="</sheetData>",i[s]=i[s].replace("/>",">")),l["!protect"]&&(i[i.length]=function(e){var t={sheet:1};return E_.forEach((function(n){null!=e[n]&&e[n]&&(t[n]="1")})),I_.forEach((function(n){null==e[n]||e[n]||(t[n]="0")})),e.password&&(t.password=iv(e.password).toString(16).toUpperCase()),Jh("sheetProtection",null,t)}(l["!protect"])),null!=l["!autofilter"]&&(i[i.length]=function(e,t,n,a){var s="string"==typeof e.ref?e.ref:ff(e.ref);n.Workbook||(n.Workbook={Sheets:[]}),n.Workbook.Names||(n.Workbook.Names=[]);var i=n.Workbook.Names,o=gf(s);o.s.r==o.e.r&&(o.e.r=gf(t["!ref"]).e.r,s=ff(o));for(var r=0;r<i.length;++r){var l=i[r];if("_xlnm._FilterDatabase"==l.Name&&l.Sheet==a){l.Ref="'"+n.SheetNames[a]+"'!"+s;break}}return r==i.length&&i.push({Name:"_xlnm._FilterDatabase",Sheet:a,Ref:"'"+n.SheetNames[a]+"'!"+s}),Jh("autoFilter",null,{ref:s})}(l["!autofilter"],l,n,e)),null!=l["!merges"]&&l["!merges"].length>0&&(i[i.length]=function(e){if(0===e.length)return"";for(var t='<mergeCells count="'+e.length+'">',n=0;n!=e.length;++n)t+='<mergeCell ref="'+ff(e[n])+'"/>';return t+"</mergeCells>"}(l["!merges"]));var p,d,h=-1,g=-1;return l["!links"].length>0&&(i[i.length]="<hyperlinks>",l["!links"].forEach((function(e){e[1].Target&&(p={ref:e[0]},"#"!=e[1].Target.charAt(0)&&(g=ry(a,-1,Mh(e[1].Target).replace(/#.*$/,""),sy.HLINK),p["r:id"]="rId"+g),(h=e[1].Target.indexOf("#"))>-1&&(p.location=Mh(e[1].Target.slice(h+1))),e[1].Tooltip&&(p.tooltip=Mh(e[1].Tooltip)),i[i.length]=Jh("hyperlink",null,p))})),i[i.length]="</hyperlinks>"),delete l["!links"],null!=l["!margins"]&&(i[i.length]=(j_(d=l["!margins"]),Jh("pageMargins",null,d))),t&&!t.ignoreEC&&void 0!=t.ignoreEC||(i[i.length]=Xh("ignoredErrors",Jh("ignoredError",null,{numberStoredAsText:1,sqref:m}))),u.length>0&&(g=ry(a,-1,"../drawings/drawing"+(e+1)+".xml",sy.DRAW),i[i.length]=Jh("drawing",null,{"r:id":"rId"+g}),l["!drawing"]=u),l["!comments"].length>0&&(g=ry(a,-1,"../drawings/vmlDrawing"+(e+1)+".vml",sy.VML),i[i.length]=Jh("legacyDrawing",null,{"r:id":"rId"+g}),l["!legacy"]=g),i.length>1&&(i[i.length]="</worksheet>",i[1]=i[1].replace("/>",">")),i.join("")}function R_(e,t,n,a){var s=function(e,t,n){var a=tf(145),s=(n["!rows"]||[])[e]||{};a.write_shift(4,e),a.write_shift(4,0);var i=320;s.hpx?i=20*dv(s.hpx):s.hpt&&(i=20*s.hpt),a.write_shift(2,i),a.write_shift(1,0);var o=0;s.level&&(o|=s.level),s.hidden&&(o|=16),(s.hpx||s.hpt)&&(o|=32),a.write_shift(1,o),a.write_shift(1,0);var r=0,l=a.l;a.l+=4;for(var m={r:e,c:0},c=0;c<16;++c)if(!(t.s.c>c+1<<10||t.e.c<c<<10)){for(var u=-1,p=-1,d=c<<10;d<c+1<<10;++d)m.c=d,(Array.isArray(n)?(n[m.r]||[])[m.c]:n[hf(m)])&&(u<0&&(u=d),p=d);u<0||(++r,a.write_shift(4,u),a.write_shift(4,p))}var h=a.l;return a.l=l,a.write_shift(4,r),a.l=h,a.length>a.l?a.slice(0,a.l):a}(a,n,t);(s.length>17||(t["!rows"]||[])[a])&&af(e,0,s)}var O_=Hf,L_=Gf;function M_(e){return[Nf(e),Vf(e),"n"]}var F_=Hf,W_=Gf;var q_=["left","right","top","bottom","header","footer"];function z_(e,t,n,a,s,i,o){if(void 0===t.v)return!1;var r="";switch(t.t){case"b":r=t.v?"1":"0";break;case"d":(t=Ch(t)).z=t.z||wd[14],t.v=gh(xh(t.v)),t.t="n";break;case"n":case"e":r=""+t.v;break;default:r=t.v}var l={r:n,c:a};switch(l.s=D_(s.cellXfs,t,s),t.l&&i["!links"].push([hf(l),t.l]),t.c&&i["!comments"].push([hf(l),t.c]),t.t){case"s":case"str":return s.bookSST?(r=C_(s.Strings,t.v,s.revStrings),l.t="s",l.v=r,o?af(e,18,function(e,t,n){return null==n&&(n=tf(8)),Pf(t,n),n.write_shift(4,t.v),n}(0,l)):af(e,7,function(e,t,n){return null==n&&(n=tf(12)),If(t,n),n.write_shift(4,t.v),n}(0,l))):(l.t="str",o?af(e,17,function(e,t,n){return null==n&&(n=tf(8+4*e.v.length)),Pf(t,n),Cf(e.v,n),n.length>n.l?n.slice(0,n.l):n}(t,l)):af(e,6,function(e,t,n){return null==n&&(n=tf(12+4*e.v.length)),If(t,n),Cf(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?o?af(e,13,function(e,t,n){return null==n&&(n=tf(8)),Pf(t,n),Bf(e.v,n),n}(t,l)):af(e,2,function(e,t,n){return null==n&&(n=tf(12)),If(t,n),Bf(e.v,n),n}(t,l)):o?af(e,16,function(e,t,n){return null==n&&(n=tf(12)),Pf(t,n),Kf(e.v,n),n}(t,l)):af(e,5,function(e,t,n){return null==n&&(n=tf(16)),If(t,n),Kf(e.v,n),n}(t,l)),!0;case"b":return l.t="b",o?af(e,15,function(e,t,n){return null==n&&(n=tf(5)),Pf(t,n),n.write_shift(1,e.v?1:0),n}(t,l)):af(e,4,function(e,t,n){return null==n&&(n=tf(9)),If(t,n),n.write_shift(1,e.v?1:0),n}(t,l)),!0;case"e":return l.t="e",o?af(e,14,function(e,t,n){return null==n&&(n=tf(8)),Pf(t,n),n.write_shift(1,e.v),n.write_shift(2,0),n.write_shift(1,0),n}(t,l)):af(e,3,function(e,t,n){return null==n&&(n=tf(9)),If(t,n),n.write_shift(1,e.v),n}(t,l)),!0}return o?af(e,12,function(e,t,n){return null==n&&(n=tf(4)),Pf(t,n)}(0,l)):af(e,1,function(e,t,n){return null==n&&(n=tf(8)),If(t,n)}(0,l)),!0}function B_(e,t){var n,a;t&&t["!merges"]&&(af(e,177,(n=t["!merges"].length,null==a&&(a=tf(4)),a.write_shift(4,n),a)),t["!merges"].forEach((function(t){af(e,176,W_(t))})),af(e,178))}function U_(e,t){t&&t["!cols"]&&(af(e,390),t["!cols"].forEach((function(t,n){t&&af(e,60,function(e,t,n){null==n&&(n=tf(18));var a=S_(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 s=0;return t.hidden&&(s|=1),"number"==typeof a.width&&(s|=2),t.level&&(s|=t.level<<8),n.write_shift(2,s),n}(n,t))})),af(e,391))}function H_(e,t){t&&t["!ref"]&&(af(e,648),af(e,649,function(e){var t=tf(24);return t.write_shift(4,4),t.write_shift(4,1),Gf(e,t),t}(yf(t["!ref"]))),af(e,650))}function G_(e,t,n){t["!links"].forEach((function(t){if(t[1].Target){var a=ry(n,-1,t[1].Target.replace(/#.*$/,""),sy.HLINK);af(e,494,function(e,t){var n=tf(50+4*(e[1].Target.length+(e[1].Tooltip||"").length));Gf({s:df(e[0]),e:df(e[0])},n),qf("rId"+t,n);var a=e[1].Target.indexOf("#");return Cf((-1==a?"":e[1].Target.slice(a+1))||"",n),Cf(e[1].Tooltip||"",n),Cf("",n),n.slice(0,n.l)}(t,a))}})),delete t["!links"]}function V_(e,t,n){af(e,133),af(e,137,function(e,t,n){null==n&&(n=tf(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)),af(e,138),af(e,134)}function K_(e,t){var n,a;t["!protect"]&&af(e,535,(n=t["!protect"],null==a&&(a=tf(66)),a.write_shift(2,n.password?iv(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 $_(e,t,n,a){var s=nf(),i=n.SheetNames[e],o=n.Sheets[i]||{},r=i;try{n&&n.Workbook&&(r=n.Workbook.Sheets[e].CodeName||r)}catch(u){}var l,m,c=yf(o["!ref"]||"A1");if(c.e.c>16383||c.e.r>1048575){if(t.WTF)throw new Error("Range "+(o["!ref"]||"A1")+" exceeds format limit A1:XFD1048576");c.e.c=Math.min(c.e.c,16383),c.e.r=Math.min(c.e.c,1048575)}return o["!links"]=[],o["!comments"]=[],af(s,129),(n.vbaraw||o["!outline"])&&af(s,147,function(e,t,n){null==n&&(n=tf(84+4*e.length));var a=192;t&&(t.above&&(a&=-65),t.left&&(a&=-129)),n.write_shift(1,a);for(var s=1;s<3;++s)n.write_shift(1,0);return $f({auto:1},n),n.write_shift(-4,-1),n.write_shift(-4,-1),Of(e,n),n.slice(0,n.l)}(r,o["!outline"])),af(s,148,L_(c)),V_(s,0,n.Workbook),U_(s,o),function(e,t,n,a){var s,i=yf(t["!ref"]||"A1"),o="",r=[];af(e,145);var l=Array.isArray(t),m=i.e.r;t["!rows"]&&(m=Math.max(i.e.r,t["!rows"].length-1));for(var c=i.s.r;c<=m;++c){o=cf(c),R_(e,t,i,c);var u=!1;if(c<=i.e.r)for(var p=i.s.c;p<=i.e.c;++p){c===i.s.r&&(r[p]=pf(p)),s=r[p]+o;var d=l?(t[c]||[])[p]:t[s];u=!!d&&z_(e,d,c,p,a,t,u)}}af(e,146)}(s,o,0,t),K_(s,o),function(e,t,n,a){if(t["!autofilter"]){var s=t["!autofilter"],i="string"===typeof s.ref?s.ref:ff(s.ref);n.Workbook||(n.Workbook={Sheets:[]}),n.Workbook.Names||(n.Workbook.Names=[]);var o=n.Workbook.Names,r=gf(i);r.s.r==r.e.r&&(r.e.r=gf(t["!ref"]).e.r,i=ff(r));for(var l=0;l<o.length;++l){var m=o[l];if("_xlnm._FilterDatabase"==m.Name&&m.Sheet==a){m.Ref="'"+n.SheetNames[a]+"'!"+i;break}}l==o.length&&o.push({Name:"_xlnm._FilterDatabase",Sheet:a,Ref:"'"+n.SheetNames[a]+"'!"+i}),af(e,161,Gf(yf(i))),af(e,162)}}(s,o,n,e),B_(s,o),G_(s,o,a),o["!margins"]&&af(s,476,(l=o["!margins"],null==m&&(m=tf(48)),j_(l),q_.forEach((function(e){Kf(l[e],m)})),m)),t&&!t.ignoreEC&&void 0!=t.ignoreEC||H_(s,o),function(e,t,n,a){if(t["!comments"].length>0){var s=ry(a,-1,"../drawings/vmlDrawing"+(n+1)+".vml",sy.VML);af(e,551,qf("rId"+s)),t["!legacy"]=s}}(s,o,e,a),af(s,130),s.end()}var Y_=[["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 X_="][*?/\\".split("");function Q_(e,t){if(e.length>31){if(t)return!1;throw new Error("Sheet names cannot exceed 31 chars")}var n=!0;return X_.forEach((function(a){if(-1!=e.indexOf(a)){if(!t)throw new Error("Sheet name cannot contain : \\ / ? * [ ]");n=!1}})),n}function J_(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,s=e.Workbook&&e.Workbook.Sheets||[];t=e.SheetNames,n=s,a=!!e.vbaraw,t.forEach((function(e,s){Q_(e);for(var i=0;i<s;++i)if(e==t[i])throw new Error("Duplicate Sheet Name: "+e);if(a){var o=n&&n[s]&&n[s].CodeName||e;if(95==o.charCodeAt(0)&&o.length>22)throw new Error("Bad Code Name: Worksheet"+o)}}));for(var i=0;i<e.SheetNames.length;++i)A_(e.Sheets[e.SheetNames[i]],e.SheetNames[i],i)}function Z_(e){var t=[Nh];t[t.length]=Jh("workbook",null,{xmlns:dg[0],"xmlns:r":mg});var n=e.Workbook&&(e.Workbook.Names||[]).length>0,a={codeName:"ThisWorkbook"};e.Workbook&&e.Workbook.WBProps&&(Y_.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]=Jh("workbookPr",null,a);var s=e.Workbook&&e.Workbook.Sheets||[],i=0;if(s&&s[0]&&s[0].Hidden){for(t[t.length]="<bookViews>",i=0;i!=e.SheetNames.length&&s[i]&&s[i].Hidden;++i);i==e.SheetNames.length&&(i=0),t[t.length]='<workbookView firstSheet="'+i+'" activeTab="'+i+'"/>',t[t.length]="</bookViews>"}for(t[t.length]="<sheets>",i=0;i!=e.SheetNames.length;++i){var o={name:Mh(e.SheetNames[i].slice(0,31))};if(o.sheetId=""+(i+1),o["r:id"]="rId"+(i+1),s[i])switch(s[i].Hidden){case 1:o.state="hidden";break;case 2:o.state="veryHidden"}t[t.length]=Jh("sheet",null,o)}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]=Jh("definedName",Mh(e.Ref),n))})),t[t.length]="</definedNames>"),t.length>2&&(t[t.length]="</workbook>",t[1]=t[1].replace("/>",">")),t.join("")}function ek(e,t){if(t.Workbook&&t.Workbook.Sheets){for(var n,a,s=t.Workbook.Sheets,i=0,o=-1,r=-1;i<s.length;++i)!s[i]||!s[i].Hidden&&-1==o?o=i:1==s[i].Hidden&&-1==r&&(r=i);if(!(r>o))af(e,135),af(e,158,(n=o,a||(a=tf(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)),af(e,136)}}function tk(e,t){var n=nf();return af(n,131),af(n,128,function(e,t){t||(t=tf(127));for(var n=0;4!=n;++n)t.write_shift(4,0);return Cf("SheetJS",t),Cf(Bp.version,t),Cf(Bp.version,t),Cf("7262",t),t.length>t.l?t.slice(0,t.l):t}()),af(n,153,function(e,t){t||(t=tf(72));var n=0;return e&&e.filterPrivacy&&(n|=8),t.write_shift(4,n),t.write_shift(4,0),Of(e&&e.CodeName||"ThisWorkbook",t),t.slice(0,t.l)}(e.Workbook&&e.Workbook.WBProps||null)),ek(n,e),function(e,t){af(e,143);for(var n=0;n!=t.SheetNames.length;++n){af(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]},(s=void 0)||(s=tf(127)),s.write_shift(4,a.Hidden),s.write_shift(4,a.iTabID),qf(a.strRelID,s),Cf(a.name.slice(0,31),s),s.length>s.l?s.slice(0,s.l):s))}var a,s;af(e,144)}(n,e),af(n,132),n.end()}function nk(e,t,n,a,s){return(".bin"===t.slice(-4)?$_:P_)(e,n,a,s)}function ak(e,t,n){return(".bin"===t.slice(-4)?Mv:Rv)(e,n)}function sk(e,t){var n=[];return e.Props&&n.push(function(e,t){var n=[];return ch(yy).map((function(e){for(var t=0;t<cy.length;++t)if(cy[t][1]==e)return cy[t];for(t=0;t<dy.length;++t)if(dy[t][1]==e)return dy[t];throw e})).forEach((function(a){if(null!=e[a[1]]){var s=t&&t.Props&&null!=t.Props[a[1]]?t.Props[a[1]]:e[a[1]];"date"===a[2]&&(s=new Date(s).toISOString().replace(/\.\d*Z/,"Z")),"number"==typeof s?s=String(s):!0===s||!1===s?s=s?"1":"0":s instanceof Date&&(s=new Date(s).toISOString().replace(/\.\d*Z/,"")),n.push(Xh(yy[a[1]]||a[1],s))}})),Jh("DocumentProperties",n.join(""),{xmlns:hg})}(e.Props,t)),e.Custprops&&n.push(function(e,t){var n=["Worksheets","SheetNames"],a="CustomDocumentProperties",s=[];return e&&ch(e).forEach((function(t){if(Object.prototype.hasOwnProperty.call(e,t)){for(var a=0;a<cy.length;++a)if(t==cy[a][1])return;for(a=0;a<dy.length;++a)if(t==dy[a][1])return;for(a=0;a<n.length;++a)if(t==n[a])return;var i=e[t],o="string";"number"==typeof i?(o="float",i=String(i)):!0===i||!1===i?(o="boolean",i=i?"1":"0"):i=String(i),s.push(Jh(Fh(t),i,{"dt:dt":o}))}})),t&&ch(t).forEach((function(n){if(Object.prototype.hasOwnProperty.call(t,n)&&(!e||!Object.prototype.hasOwnProperty.call(e,n))){var a=t[n],i="string";"number"==typeof a?(i="float",a=String(a)):!0===a||!1===a?(i="boolean",a=a?"1":"0"):a instanceof Date?(i="dateTime.tz",a=a.toISOString()):a=String(a),s.push(Jh(Fh(n),a,{"dt:dt":i}))}})),"<"+a+' xmlns="'+hg+'">'+s.join("")+"</"+a+">"}(e.Props,e.Custprops)),n.join("")}function ik(e){return Jh("NamedRange",null,{"ss:Name":e.Name,"ss:RefersTo":"="+zv(e.Ref,{r:0,c:0})})}function ok(e,t,n,a,s,i,o){if(!e||void 0==e.v&&void 0==e.f)return"";var r={};if(e.f&&(r["ss:Formula"]="="+Mh(zv(e.f,o))),e.F&&e.F.slice(0,t.length)==t){var l=df(e.F.slice(t.length+1));r["ss:ArrayRange"]="RC:R"+(l.r==o.r?"":"["+(l.r-o.r)+"]")+"C"+(l.c==o.c?"":"["+(l.c-o.c)+"]")}if(e.l&&e.l.Target&&(r["ss:HRef"]=Mh(e.l.Target),e.l.Tooltip&&(r["x:HRefScreenTip"]=Mh(e.l.Tooltip))),n["!merges"])for(var m=n["!merges"],c=0;c!=m.length;++c)m[c].s.c==o.c&&m[c].s.r==o.r&&(m[c].e.c>m[c].s.c&&(r["ss:MergeAcross"]=m[c].e.c-m[c].s.c),m[c].e.r>m[c].s.r&&(r["ss:MergeDown"]=m[c].e.r-m[c].s.r));var u="",p="";switch(e.t){case"z":if(!a.sheetStubs)return"";break;case"n":u="Number",p=String(e.v);break;case"b":u="Boolean",p=e.v?"1":"0";break;case"e":u="Error",p=ey[e.v];break;case"d":u="DateTime",p=new Date(e.v).toISOString(),null==e.z&&(e.z=e.z||wd[14]);break;case"s":u="String",p=((e.v||"")+"").replace(Oh,(function(e){return Rh[e]})).replace(Wh,(function(e){return"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"}))}var d=D_(a.cellXfs,e,a);r["ss:StyleID"]="s"+(21+d),r["ss:Index"]=o.c+1;var h=null!=e.v?p:"",g="z"==e.t?"":'<Data ss:Type="'+u+'">'+h+"</Data>";return(e.c||[]).length>0&&(g+=e.c.map((function(e){var t=Jh("ss:Data",(e.t||"").replace(/(\r\n|[\r\n])/g," "),{xmlns:"http://www.w3.org/TR/REC-html40"});return Jh("Comment",t,{"ss:Author":e.a})})).join("")),Jh("Cell",g,r)}function rk(e,t){var n='<Row ss:Index="'+(e+1)+'"';return t&&(t.hpt&&!t.hpx&&(t.hpx=hv(t.hpt)),t.hpx&&(n+=' ss:AutoFitHeight="0" ss:Height="'+t.hpx+'"'),t.hidden&&(n+=' ss:Hidden="1"')),n+">"}function lk(e,t,n){var a=[],s=n.SheetNames[e],i=n.Sheets[s],o=i?function(e,t,n,a){if(!e)return"";if(!((a||{}).Workbook||{}).Names)return"";for(var s=a.Workbook.Names,i=[],o=0;o<s.length;++o){var r=s[o];r.Sheet==n&&(r.Name.match(/^_xlfn\./)||i.push(ik(r)))}return i.join("")}(i,0,e,n):"";return o.length>0&&a.push("<Names>"+o+"</Names>"),o=i?function(e,t,n,a){if(!e["!ref"])return"";var s=yf(e["!ref"]),i=e["!merges"]||[],o=0,r=[];e["!cols"]&&e["!cols"].forEach((function(e,t){pv(e);var n=!!e.width,a=S_(t,e),s={"ss:Index":t+1};n&&(s["ss:Width"]=mv(a.width)),e.hidden&&(s["ss:Hidden"]="1"),r.push(Jh("Column",null,s))}));for(var l=Array.isArray(e),m=s.s.r;m<=s.e.r;++m){for(var c=[rk(m,(e["!rows"]||[])[m])],u=s.s.c;u<=s.e.c;++u){var p=!1;for(o=0;o!=i.length;++o)if(!(i[o].s.c>u)&&!(i[o].s.r>m)&&!(i[o].e.c<u)&&!(i[o].e.r<m)){i[o].s.c==u&&i[o].s.r==m||(p=!0);break}if(!p){var d={r:m,c:u},h=hf(d),g=l?(e[m]||[])[u]:e[h];c.push(ok(g,h,e,t,0,0,d))}}c.push("</Row>"),c.length>2&&r.push(c.join(""))}return r.join("")}(i,t):"",o.length>0&&a.push("<Table>"+o+"</Table>"),a.push(function(e,t,n,a){if(!e)return"";var s=[];if(e["!margins"]&&(s.push("<PageSetup>"),e["!margins"].header&&s.push(Jh("Header",null,{"x:Margin":e["!margins"].header})),e["!margins"].footer&&s.push(Jh("Footer",null,{"x:Margin":e["!margins"].footer})),s.push(Jh("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"})),s.push("</PageSetup>")),a&&a.Workbook&&a.Workbook.Sheets&&a.Workbook.Sheets[n])if(a.Workbook.Sheets[n].Hidden)s.push(Jh("Visible",1==a.Workbook.Sheets[n].Hidden?"SheetHidden":"SheetVeryHidden",{}));else{for(var i=0;i<n&&(!a.Workbook.Sheets[i]||a.Workbook.Sheets[i].Hidden);++i);i==n&&s.push("<Selected/>")}return((((a||{}).Workbook||{}).Views||[])[0]||{}).RTL&&s.push("<DisplayRightToLeft/>"),e["!protect"]&&(s.push(Xh("ProtectContents","True")),e["!protect"].objects&&s.push(Xh("ProtectObjects","True")),e["!protect"].scenarios&&s.push(Xh("ProtectScenarios","True")),null==e["!protect"].selectLockedCells||e["!protect"].selectLockedCells?null==e["!protect"].selectUnlockedCells||e["!protect"].selectUnlockedCells||s.push(Xh("EnableSelection","UnlockedCells")):s.push(Xh("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]]&&s.push("<"+t[1]+"/>")}))),0==s.length?"":Jh("WorksheetOptions",s.join(""),{xmlns:gg})}(i,0,e,n)),a.join("")}function mk(e,t){t||(t={}),e.SSF||(e.SSF=Ch(wd)),e.SSF&&(ah(),nh(e.SSF),t.revssf=dh(e.SSF),t.revssf[e.SSF[65535]]=0,t.ssf=e.SSF,t.cellXfs=[],D_(t.cellXfs,{},{revssf:{General:0}}));var n=[];n.push(sk(e,t)),n.push(""),n.push(""),n.push("");for(var a=0;a<e.SheetNames.length;++a)n.push(Jh("Worksheet",lk(a,t,e),{"ss:Name":Mh(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(Jh("NumberFormat",null,{"ss:Format":Mh(wd[e.numFmtId])}));var s={"ss:ID":"s"+(21+t)};n.push(Jh("Style",a.join(""),s))})),Jh("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 s=t[a];null==s.Sheet&&(s.Name.match(/^_xlfn\./)||n.push(ik(s)))}return Jh("Names",n.join(""))}(e),Nh+Jh("Workbook",n.join(""),{xmlns:fg,"xmlns:o":hg,"xmlns:x":gg,"xmlns:ss":fg,"xmlns:dt":yg,"xmlns:html":kg})}var ck="e0859ff2f94f6810ab9108002b27b3d9",uk="02d5cdd59c2e1b10939708002b2cf9ae",pk="05d5cdd59c2e1b10939708002b2cf9ae";function dk(e,t){var n=t||{},a=oh.utils.cfb_new({root:"R"}),s="/Workbook";switch(n.bookType||"xls"){case"xls":n.bookType="biff8";case"xla":n.bookType||(n.bookType="xla");case"biff8":s="/Workbook",n.biff=8;break;case"biff5":s="/Book",n.biff=5;break;default:throw new Error("invalid type "+n.bookType+" for XLS CFB")}return oh.utils.cfb_add(a,s,Tk(e,n)),8==n.biff&&(e.Props||e.Custprops)&&function(e,t){var n,a=[],s=[],i=[],o=0,r=uh(Xf,"n"),l=uh(Qf,"n");if(e.Props)for(n=ch(e.Props),o=0;o<n.length;++o)(Object.prototype.hasOwnProperty.call(r,n[o])?a:Object.prototype.hasOwnProperty.call(l,n[o])?s:i).push([n[o],e.Props[n[o]]]);if(e.Custprops)for(n=ch(e.Custprops),o=0;o<n.length;++o)Object.prototype.hasOwnProperty.call(e.Props||{},n[o])||(Object.prototype.hasOwnProperty.call(r,n[o])?a:Object.prototype.hasOwnProperty.call(l,n[o])?s:i).push([n[o],e.Custprops[n[o]]]);var m=[];for(o=0;o<i.length;++o)_y.indexOf(i[o][0])>-1||hy.indexOf(i[o][0])>-1||null!=i[o][1]&&m.push(i[o]);s.length&&oh.utils.cfb_add(t,"/\x05SummaryInformation",wy(s,ck,l,Qf)),(a.length||m.length)&&oh.utils.cfb_add(t,"/\x05DocumentSummaryInformation",wy(a,uk,r,Xf,m.length?m:null,pk))}(e,a),8==n.biff&&e.vbaraw&&function(e,t){t.FullPaths.forEach((function(n,a){if(0!=a){var s=n.replace(/[^\/]*[\/]/,"/_VBA_PROJECT_CUR/");"/"!==s.slice(-1)&&oh.utils.cfb_add(e,s,t.FileIndex[a].content)}}))}(a,oh.read(e.vbaraw,{type:"string"==typeof e.vbaraw?"binary":"buffer"})),a}var hk={0:{f:function(e,t){var n={},a=e.l+t;n.r=e.read_shift(4),e.l+=4;var s=e.read_shift(2);e.l+=1;var i=e.read_shift(1);return e.l=a,7&i&&(n.level=7&i),16&i&&(n.hidden=!0),32&i&&(n.hpt=s/20),n}},1:{f:function(e){return[Ef(e)]}},2:{f:function(e){return[Ef(e),zf(e),"n"]}},3:{f:function(e){return[Ef(e),e.read_shift(1),"e"]}},4:{f:function(e){return[Ef(e),e.read_shift(1),"b"]}},5:{f:function(e){return[Ef(e),Vf(e),"n"]}},6:{f:function(e){return[Ef(e),Tf(e),"str"]}},7:{f:function(e){return[Ef(e),e.read_shift(4),"s"]}},8:{f:function(e,t,n){var a=e.l+t,s=Ef(e);s.r=n["!row"];var i=[s,Tf(e),"str"];if(n.cellFormula){e.l+=2;var o=v_(e,a-e.l,n);i[3]=h_(o,0,s,n.supbooks,n)}else e.l=a;return i}},9:{f:function(e,t,n){var a=e.l+t,s=Ef(e);s.r=n["!row"];var i=[s,Vf(e),"n"];if(n.cellFormula){e.l+=2;var o=v_(e,a-e.l,n);i[3]=h_(o,0,s,n.supbooks,n)}else e.l=a;return i}},10:{f:function(e,t,n){var a=e.l+t,s=Ef(e);s.r=n["!row"];var i=[s,e.read_shift(1),"b"];if(n.cellFormula){e.l+=2;var o=v_(e,a-e.l,n);i[3]=h_(o,0,s,n.supbooks,n)}else e.l=a;return i}},11:{f:function(e,t,n){var a=e.l+t,s=Ef(e);s.r=n["!row"];var i=[s,e.read_shift(1),"e"];if(n.cellFormula){e.l+=2;var o=v_(e,a-e.l,n);i[3]=h_(o,0,s,n.supbooks,n)}else e.l=a;return i}},12:{f:function(e){return[Nf(e)]}},13:{f:function(e){return[Nf(e),zf(e),"n"]}},14:{f:function(e){return[Nf(e),e.read_shift(1),"e"]}},15:{f:function(e){return[Nf(e),e.read_shift(1),"b"]}},16:{f:M_},17:{f:function(e){return[Nf(e),Tf(e),"str"]}},18:{f:function(e){return[Nf(e),e.read_shift(4),"s"]}},19:{f:jf},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 s=e.read_shift(4),i=Ff(e),o=__(e,0,n),r=Lf(e);e.l=a;var l={Name:i,Ptg:o};return s<268435455&&(l.Sheet=s),r&&(l.Comment=r),l}},40:{},42:{},43:{f:function(e,t,n){var a={};a.sz=e.read_shift(2)/20;var s=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(s.fItalic&&(a.italic=1),s.fCondense&&(a.condense=1),s.fExtend&&(a.extend=1),s.fShadow&&(a.shadow=1),s.fOutline&&(a.outline=1),s.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 i=e.read_shift(1);0!=i&&(a.underline=i);var o=e.read_shift(1);o>0&&(a.family=o);var r=e.read_shift(1);switch(r>0&&(a.charset=r),e.l++,a.color=function(e){var t={},n=e.read_shift(1)>>>1,a=e.read_shift(1),s=e.read_shift(2,"i"),i=e.read_shift(1),o=e.read_shift(1),r=e.read_shift(1);switch(e.l++,n){case 0:t.auto=1;break;case 1:t.index=a;var l=Zf[a];l&&(t.rgb=rv(l));break;case 2:t.rgb=rv([i,o,r]);break;case 3:t.theme=a}return 0!=s&&(t.tint=s>0?s/32767:s/32768),t}(e),e.read_shift(1)){case 1:a.scheme="major";break;case 2:a.scheme="minor"}return a.name=Tf(e),a}},44:{f:function(e,t){return[e.read_shift(2),Tf(e)]}},45:{f:kv},46:{f:Tv},47:{f:function(e,t){var n=e.l+t,a=e.read_shift(2),s=e.read_shift(2);return e.l=n,{ixfe:a,numFmtId:s}}},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:Ky},62:{f:function(e){return[Ef(e),jf(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=hf(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:ef,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=Rf(e,t-19),n}},148:{f:O_,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 s=t>8?Tf(e):"";return s.length>0&&(n.CodeName=s),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=Wf(e,t-8),n.name=Tf(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:Hf},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:F_},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:Tf(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:Wf},357:{},358:{},359:{},360:{T:1},361:{},362:{f:Hy},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,s=Uf(e),i=e.read_shift(1),o=[s];if(o[2]=i,n.cellFormula){var r=y_(e,a-e.l,n);o[1]=r}else e.l=a;return o}},427:{f:function(e,t,n){var a=e.l+t,s=[Hf(e,16)];if(n.cellFormula){var i=k_(e,a-e.l,n);s[1]=i,e.l=a}else e.l=a;return s}},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 q_.forEach((function(n){t[n]=Vf(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=Hf(e,16),s=Lf(e),i=Tf(e),o=Tf(e),r=Tf(e);e.l=n;var l={rfx:a,relId:s,loc:i,display:r};return o&&(l.Tooltip=o),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:Wf},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:Lv},633:{T:1},634:{T:-1},635:{T:1,f:function(e){var t={};t.iauthor=e.read_shift(4);var n=Hf(e,16);return t.rfx=n.s,t.ref=hf(n.s),e.l+=16,t}},636:{T:-1},637:{f:Df},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:Tf(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 gk(e,t,n,a){var s=t;if(!isNaN(s)){var i=a||(n||[]).length||0,o=e.next(4);o.write_shift(2,s),o.write_shift(2,i),i>0&&zg(n)&&e.push(n)}}function fk(e,t,n){return e||(e=tf(7)),e.write_shift(2,t),e.write_shift(2,n),e.write_shift(2,0),e.write_shift(1,0),e}function yk(e,t,n,a){if(null!=t.v)switch(t.t){case"d":case"n":var s="d"==t.t?gh(xh(t.v)):t.v;return void(s==(0|s)&&s>=0&&s<65536?gk(e,2,function(e,t,n){var a=tf(9);return fk(a,e,t),a.write_shift(2,n),a}(n,a,s)):gk(e,3,function(e,t,n){var a=tf(15);return fk(a,e,t),a.write_shift(8,n,"f"),a}(n,a,s)));case"b":case"e":return void gk(e,5,function(e,t,n,a){var s=tf(9);return fk(s,e,t),jy(n,a||"b",s),s}(n,a,t.v,t.t));case"s":case"str":return void gk(e,4,function(e,t,n){var a=tf(8+2*n.length);return fk(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)))}gk(e,1,fk(null,n,a))}function vk(e,t){var n=t||{};for(var a=nf(),s=0,i=0;i<e.SheetNames.length;++i)e.SheetNames[i]==n.sheet&&(s=i);if(0==s&&n.sheet&&e.SheetNames[0]!=n.sheet)throw new Error("Sheet not found: "+n.sheet);return gk(a,4==n.biff?1033:3==n.biff?521:9,qy(0,16,n)),function(e,t,n,a){var s,i=Array.isArray(t),o=yf(t["!ref"]||"A1"),r="",l=[];if(o.e.c>255||o.e.r>16383){if(a.WTF)throw new Error("Range "+(t["!ref"]||"A1")+" exceeds format limit A1:IV16384");o.e.c=Math.min(o.e.c,255),o.e.r=Math.min(o.e.c,16383),s=ff(o)}for(var m=o.s.r;m<=o.e.r;++m){r=cf(m);for(var c=o.s.c;c<=o.e.c;++c){m===o.s.r&&(l[c]=pf(c)),s=l[c]+r;var u=i?(t[m]||[])[c]:t[s];u&&yk(e,u,m,c)}}}(a,e.Sheets[e.SheetNames[s]],0,n),gk(a,10),a.end()}function _k(e,t,n){gk(e,49,function(e,t){var n=e.name||"Arial",a=t&&5==t.biff,s=tf(a?15+n.length:16+2*n.length);return s.write_shift(2,20*(e.sz||12)),s.write_shift(4,0),s.write_shift(2,400),s.write_shift(4,0),s.write_shift(2,0),s.write_shift(1,n.length),a||s.write_shift(1,1),s.write_shift((a?1:2)*n.length,n,a?"sbcs":"utf16le"),s}({sz:12,color:{theme:1},name:"Arial",family:2,scheme:"minor"},n))}function kk(e,t){if(t){var n=0;t.forEach((function(t,a){++n<=256&&t&&gk(e,125,function(e,t){var n=tf(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}(S_(a,t),a))}))}}function bk(e,t,n,a,s){var i=16+D_(s.cellXfs,t,s);if(null!=t.v||t.bf)if(t.bf)gk(e,6,g_(t,n,a,0,i));else switch(t.t){case"d":case"n":gk(e,515,function(e,t,n,a){var s=tf(14);return Ly(e,t,a,s),Kf(n,s),s}(n,a,"d"==t.t?gh(xh(t.v)):t.v,i));break;case"b":case"e":gk(e,517,function(e,t,n,a,s,i){var o=tf(8);return Ly(e,t,a,o),jy(n,i,o),o}(n,a,t.v,i,0,t.t));break;case"s":case"str":if(s.bookSST)gk(e,253,function(e,t,n,a){var s=tf(10);return Ly(e,t,a,s),s.write_shift(4,n),s}(n,a,C_(s.Strings,t.v,s.revStrings),i));else gk(e,516,function(e,t,n,a,s){var i=!s||8==s.biff,o=tf(+i+8+(1+i)*n.length);return Ly(e,t,a,o),o.write_shift(2,n.length),i&&o.write_shift(1,1),o.write_shift((1+i)*n.length,n,i?"utf16le":"sbcs"),o}(n,a,(t.v||"").slice(0,255),i,s));break;default:gk(e,513,Ly(n,a,i))}else gk(e,513,Ly(n,a,i))}function wk(e,t,n){var a,s=nf(),i=n.SheetNames[e],o=n.Sheets[i]||{},r=(n||{}).Workbook||{},l=(r.Sheets||[])[e]||{},m=Array.isArray(o),c=8==t.biff,u="",p=[],d=yf(o["!ref"]||"A1"),h=c?65536:16384;if(d.e.c>255||d.e.r>=h){if(t.WTF)throw new Error("Range "+(o["!ref"]||"A1")+" exceeds format limit A1:IV16384");d.e.c=Math.min(d.e.c,255),d.e.r=Math.min(d.e.c,h-1)}gk(s,2057,qy(0,16,t)),gk(s,13,Sy(1)),gk(s,12,Sy(100)),gk(s,15,Ty(!0)),gk(s,17,Ty(!1)),gk(s,16,Kf(.001)),gk(s,95,Ty(!0)),gk(s,42,Ty(!1)),gk(s,43,Ty(!1)),gk(s,130,Sy(1)),gk(s,128,function(e){var t=tf(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])),gk(s,131,Ty(!1)),gk(s,132,Ty(!1)),c&&kk(s,o["!cols"]),gk(s,512,function(e,t){var n=8!=t.biff&&t.biff?2:4,a=tf(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}(d,t)),c&&(o["!links"]=[]);for(var g=d.s.r;g<=d.e.r;++g){u=cf(g);for(var f=d.s.c;f<=d.e.c;++f){g===d.s.r&&(p[f]=pf(f)),a=p[f]+u;var y=m?(o[g]||[])[f]:o[a];y&&(bk(s,y,g,f,t),c&&y.l&&o["!links"].push([a,y.l]))}}var v=l.CodeName||l.name||i;return c&&gk(s,574,function(e){var t=tf(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}((r.Views||[])[0])),c&&(o["!merges"]||[]).length&&gk(s,229,function(e){var t=tf(2+8*e.length);t.write_shift(2,e.length);for(var n=0;n<e.length;++n)Wy(e[n],t);return t}(o["!merges"])),c&&function(e,t){for(var n=0;n<t["!links"].length;++n){var a=t["!links"][n];gk(e,440,Gy(a)),a[1].Tooltip&&gk(e,2048,Vy(a))}delete t["!links"]}(s,o),gk(s,442,Py(v)),c&&function(e,t){var n=tf(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),gk(e,2151,n),(n=tf(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),Wy(yf(t["!ref"]||"A1"),n),n.write_shift(4,4),gk(e,2152,n)}(s,o),gk(s,10),s.end()}function xk(e,t,n){var a=nf(),s=(e||{}).Workbook||{},i=s.Sheets||[],o=s.WBProps||{},r=8==n.biff,l=5==n.biff;(gk(a,2057,qy(0,5,n)),"xla"==n.bookType&&gk(a,135),gk(a,225,r?Sy(1200):null),gk(a,193,function(e,t){t||(t=tf(e));for(var n=0;n<e;++n)t.write_shift(1,0);return t}(2)),l&&gk(a,191),l&&gk(a,192),gk(a,226),gk(a,92,function(e,t){var n=!t||8==t.biff,a=tf(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)),gk(a,66,Sy(r?1200:1252)),r&&gk(a,353,Sy(0)),r&&gk(a,448),gk(a,317,function(e){for(var t=tf(2*e),n=0;n<e;++n)t.write_shift(2,n+1);return t}(e.SheetNames.length)),r&&e.vbaraw&&gk(a,211),r&&e.vbaraw)&&gk(a,442,Py(o.CodeName||"ThisWorkbook"));gk(a,156,Sy(17)),gk(a,25,Ty(!1)),gk(a,18,Ty(!1)),gk(a,19,Sy(0)),r&&gk(a,431,Ty(!1)),r&&gk(a,444,Sy(0)),gk(a,61,function(){var e=tf(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}()),gk(a,64,Ty(!1)),gk(a,141,Sy(0)),gk(a,34,Ty("true"==function(e){return e.Workbook&&e.Workbook.WBProps&&zh(e.Workbook.WBProps.date1904)?"true":"false"}(e))),gk(a,14,Ty(!0)),r&&gk(a,439,Ty(!1)),gk(a,218,Sy(0)),_k(a,0,n),function(e,t,n){t&&[[5,8],[23,26],[41,44],[50,392]].forEach((function(a){for(var s=a[0];s<=a[1];++s)null!=t[s]&&gk(e,1054,By(s,t[s],n))}))}(a,e.SSF,n),function(e,t){for(var n=0;n<16;++n)gk(e,224,Uy({numFmtId:0,style:!0},0,t));t.cellXfs.forEach((function(n){gk(e,224,Uy(n,0,t))}))}(a,n),r&&gk(a,352,Ty(!1));var m,c=a.end(),u=nf();r&&gk(u,140,(m||(m=tf(4)),m.write_shift(2,1),m.write_shift(2,1),m)),r&&n.Strings&&function(e,t,n,a){var s=a||(n||[]).length||0;if(s<=8224)return gk(e,t,n,s);var i=t;if(!isNaN(i)){for(var o=n.parts||[],r=0,l=0,m=0;m+(o[r]||8224)<=8224;)m+=o[r]||8224,r++;var c=e.next(4);for(c.write_shift(2,i),c.write_shift(2,m),e.push(n.slice(l,l+m)),l+=m;l<s;){for((c=e.next(4)).write_shift(2,60),m=0;m+(o[r]||8224)<=8224;)m+=o[r]||8224,r++;c.write_shift(2,m),e.push(n.slice(l,l+m)),l+=m}}}(u,252,function(e,t){var n=tf(8);n.write_shift(4,e.Count),n.write_shift(4,e.Unique);for(var a=[],s=0;s<e.length;++s)a[s]=Ay(e[s]);var i=cd([n].concat(a));return i.parts=[n.length].concat(a.map((function(e){return e.length}))),i}(n.Strings)),gk(u,10);var p=u.end(),d=nf(),h=0,g=0;for(g=0;g<e.SheetNames.length;++g)h+=(r?12:11)+(r?2:1)*e.SheetNames[g].length;var f=c.length+h+p.length;for(g=0;g<e.SheetNames.length;++g){gk(d,133,zy({pos:f,hs:(i[g]||{}).Hidden||0,dt:0,name:e.SheetNames[g]},n)),f+=t[g].length}var y=d.end();if(h!=y.length)throw new Error("BS8 "+h+" != "+y.length);var v=[];return c.length&&v.push(c),y.length&&v.push(y),p.length&&v.push(p),cd(v)}function Tk(e,t){for(var n=0;n<=e.SheetNames.length;++n){var a=e.Sheets[e.SheetNames[n]];if(a&&a["!ref"])gf(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 s=t||{};switch(s.biff||2){case 8:case 5:return function(e,t){var n=t||{},a=[];e&&!e.SSF&&(e.SSF=Ch(wd)),e&&e.SSF&&(ah(),nh(e.SSF),n.revssf=dh(e.SSF),n.revssf[e.SSF[65535]]=0,n.ssf=e.SSF),n.Strings=[],n.Strings.Count=0,n.Strings.Unique=0,eb(n),n.cellXfs=[],D_(n.cellXfs,{},{revssf:{General:0}}),e.Props||(e.Props={});for(var s=0;s<e.SheetNames.length;++s)a[a.length]=wk(s,n,e);return a.unshift(xk(e,a,n)),cd(a)}(e,t);case 4:case 3:case 2:return vk(e,t)}throw new Error("invalid type "+s.bookType+" for BIFF")}function Ck(e,t,n,a){for(var s=e["!merges"]||[],i=[],o=t.s.c;o<=t.e.c;++o){for(var r=0,l=0,m=0;m<s.length;++m)if(!(s[m].s.r>n||s[m].s.c>o)&&!(s[m].e.r<n||s[m].e.c<o)){if(s[m].s.r<n||s[m].s.c<o){r=-1;break}r=s[m].e.r-s[m].s.r+1,l=s[m].e.c-s[m].s.c+1;break}if(!(r<0)){var c=hf({r:n,c:o}),u=a.dense?(e[n]||[])[o]:e[c],p=u&&null!=u.v&&(u.h||qh(u.w||(_f(u),u.w)||""))||"",d={};r>1&&(d.rowspan=r),l>1&&(d.colspan=l),a.editable?p='<span contenteditable="true">'+p+"</span>":u&&(d["data-t"]=u&&u.t||"z",null!=u.v&&(d["data-v"]=u.v),null!=u.z&&(d["data-z"]=u.z),u.l&&"#"!=(u.l.Target||"#").charAt(0)&&(p='<a href="'+u.l.Target+'">'+p+"</a>")),d.id=(a.id||"sjs")+"-"+c,i.push(Jh("td",p,d))}}return"<tr>"+i.join("")+"</tr>"}var Sk='<html><head><meta charset="utf-8"/><title>SheetJS Table Export</title></head><body>',jk="</body></html>";function Dk(e,t,n){return[].join("")+"<table"+(n&&n.id?' id="'+n.id+'"':"")+">"}function Ak(e,t){var n=t||{},a=null!=n.header?n.header:Sk,s=null!=n.footer?n.footer:jk,i=[a],o=gf(e["!ref"]);n.dense=Array.isArray(e),i.push(Dk(0,0,n));for(var r=o.s.r;r<=o.e.r;++r)i.push(Ck(e,o,r,n));return i.push("</table>"+s),i.join("")}function Ek(e,t,n){var a=n||{};var s=0,i=0;if(null!=a.origin)if("number"==typeof a.origin)s=a.origin;else{var o="string"==typeof a.origin?df(a.origin):a.origin;s=o.r,i=o.c}var r=t.getElementsByTagName("tr"),l=Math.min(a.sheetRows||1e7,r.length),m={s:{r:0,c:0},e:{r:s,c:i}};if(e["!ref"]){var c=gf(e["!ref"]);m.s.r=Math.min(m.s.r,c.s.r),m.s.c=Math.min(m.s.c,c.s.c),m.e.r=Math.max(m.e.r,c.e.r),m.e.c=Math.max(m.e.c,c.e.c),-1==s&&(m.e.r=s=c.e.r+1)}var u=[],p=0,d=e["!rows"]||(e["!rows"]=[]),h=0,g=0,f=0,y=0,v=0,_=0;for(e["!cols"]||(e["!cols"]=[]);h<r.length&&g<l;++h){var k=r[h];if(Nk(k)){if(a.display)continue;d[g]={hidden:!0}}var b=k.children;for(f=y=0;f<b.length;++f){var w=b[f];if(!a.display||!Nk(w)){var x=w.hasAttribute("data-v")?w.getAttribute("data-v"):w.hasAttribute("v")?w.getAttribute("v"):$h(w.innerHTML),T=w.getAttribute("data-z")||w.getAttribute("z");for(p=0;p<u.length;++p){var C=u[p];C.s.c==y+i&&C.s.r<g+s&&g+s<=C.e.r&&(y=C.e.c+1-i,p=-1)}_=+w.getAttribute("colspan")||1,((v=+w.getAttribute("rowspan")||1)>1||_>1)&&u.push({s:{r:g+s,c:y+i},e:{r:g+s+(v||1)-1,c:y+i+(_||1)-1}});var S={t:"s",v:x},j=w.getAttribute("data-t")||w.getAttribute("t")||"";null!=x&&(0==x.length?S.t=j||"z":a.raw||0==x.trim().length||"s"==j||("TRUE"===x?S={t:"b",v:!0}:"FALSE"===x?S={t:"b",v:!1}:isNaN(jh(x))?isNaN(Ah(x).getDate())||(S={t:"d",v:xh(x)},a.cellDates||(S={t:"n",v:gh(S.v)}),S.z=a.dateNF||wd[14]):S={t:"n",v:jh(x)})),void 0===S.z&&null!=T&&(S.z=T);var D="",A=w.getElementsByTagName("A");if(A&&A.length)for(var E=0;E<A.length&&(!A[E].hasAttribute("href")||"#"==(D=A[E].getAttribute("href")).charAt(0));++E);D&&"#"!=D.charAt(0)&&(S.l={Target:D}),a.dense?(e[g+s]||(e[g+s]=[]),e[g+s][y+i]=S):e[hf({c:y+i,r:g+s})]=S,m.e.c<y+i&&(m.e.c=y+i),y+=_}}++g}return u.length&&(e["!merges"]=(e["!merges"]||[]).concat(u)),m.e.r=Math.max(m.e.r,g-1+s),e["!ref"]=ff(m),g>=l&&(e["!fullref"]=ff((m.e.r=r.length-h+g-1+s,m))),e}function Ik(e,t){return Ek((t||{}).dense?[]:{},e,t)}function Nk(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 Pk=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 "+Qh({"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 Nh+t}}(),Rk=function(){var e=" <table:table-cell />\n",t=function(t,n,a){var s=[];s.push(' <table:table table:name="'+Mh(n.SheetNames[a])+'" table:style-name="ta1">\n');var i=0,o=0,r=gf(t["!ref"]||"A1"),l=t["!merges"]||[],m=0,c=Array.isArray(t);if(t["!cols"])for(o=0;o<=r.e.c;++o)s.push(" <table:table-column"+(t["!cols"][o]?' table:style-name="co'+t["!cols"][o].ods+'"':"")+"></table:table-column>\n");var u="",p=t["!rows"]||[];for(i=0;i<r.s.r;++i)u=p[i]?' table:style-name="ro'+p[i].ods+'"':"",s.push(" <table:table-row"+u+"></table:table-row>\n");for(;i<=r.e.r;++i){for(u=p[i]?' table:style-name="ro'+p[i].ods+'"':"",s.push(" <table:table-row"+u+">\n"),o=0;o<r.s.c;++o)s.push(e);for(;o<=r.e.c;++o){var d=!1,h={},g="";for(m=0;m!=l.length;++m)if(!(l[m].s.c>o)&&!(l[m].s.r>i)&&!(l[m].e.c<o)&&!(l[m].e.r<i)){l[m].s.c==o&&l[m].s.r==i||(d=!0),h["table:number-columns-spanned"]=l[m].e.c-l[m].s.c+1,h["table:number-rows-spanned"]=l[m].e.r-l[m].s.r+1;break}if(d)s.push(" <table:covered-table-cell/>\n");else{var f=hf({r:i,c:o}),y=c?(t[i]||[])[o]:t[f];if(y&&y.f&&(h["table:formula"]=Mh(("of:="+y.f.replace(qv,"$1[.$2$3$4$5]").replace(/\]:\[/g,":")).replace(/;/g,"|").replace(/,/g,";")),y.F&&y.F.slice(0,f.length)==f)){var v=gf(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":g=y.v?"TRUE":"FALSE",h["office:value-type"]="boolean",h["office:boolean-value"]=y.v?"true":"false";break;case"n":g=y.w||String(y.v||0),h["office:value-type"]="float",h["office:value"]=y.v||0;break;case"s":case"str":g=null==y.v?"":y.v,h["office:value-type"]="string";break;case"d":g=y.w||xh(y.v).toISOString(),h["office:value-type"]="date",h["office:date-value"]=xh(y.v).toISOString(),h["table:style-name"]="ce1";break;default:s.push(e);continue}var _=Mh(g).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 k=y.l.Target;"#"==(k="#"==k.charAt(0)?"#"+k.slice(1).replace(/\./,"!"):k).charAt(0)||k.match(/^\w+:/)||(k="../"+k),_=Jh("text:a",_,{"xlink:href":k.replace(/&/g,"&")})}s.push(" "+Jh("table:table-cell",Jh("text:p",_,{}),h)+"\n")}else s.push(e)}}s.push(" </table:table-row>\n")}return s.push(" </table:table>\n"),s.join("")};return function(e,n){var a=[Nh],s=Qh({"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"}),i=Qh({"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"+s+i+">\n"),a.push(my().replace(/office:document-meta/g,"office:meta"))):a.push("<office:document-content"+s+">\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 s=t["!cols"][a];if(null==s.width&&null==s.wpx&&null==s.wch)continue;pv(s),s.ods=n;var i=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="'+i+'"/>\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 s=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="'+s+'"/>\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 o=0;o!=e.SheetNames.length;++o)a.push(t(e.Sheets[e.SheetNames[o]],e,o));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 Ok(e,t){if("fods"==t.bookType)return Rk(e,t);var n=Ih(),a="",s=[],i=[];return Eh(n,a="mimetype","application/vnd.oasis.opendocument.spreadsheet"),Eh(n,a="content.xml",Rk(e,t)),s.push([a,"text/xml"]),i.push([a,"ContentFile"]),Eh(n,a="styles.xml",Pk(e,t)),s.push([a,"text/xml"]),i.push([a,"StylesFile"]),Eh(n,a="meta.xml",Nh+my()),s.push([a,"text/xml"]),i.push([a,"MetadataFile"]),Eh(n,a="manifest.rdf",function(e){var t,n,a=[Nh];a.push('<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">\n');for(var s=0;s!=e.length;++s)a.push(ly(e[s][0],e[s][1])),a.push((t="",n=e[s][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(ly("","Document","pkg")),a.push("</rdf:RDF>"),a.join("")}(i)),s.push([a,"application/rdf+xml"]),Eh(n,a="META-INF/manifest.xml",function(e){var t=[Nh];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("")}(s)),n}function Lk(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Mk(e){return"undefined"!=typeof TextEncoder?(new TextEncoder).encode(e):rd(Kh(e))}function Fk(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 Wk(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 qk(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 zk(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 Bk(e){for(var t=[],n=[0];n[0]<e.length;){var a,s=n[0],i=Wk(e,n),o=7&i,r=0;if(0==(i=Math.floor(i/8)))break;switch(o){case 0:for(var l=n[0];e[n[0]++]>=128;);a=e.slice(l,n[0]);break;case 5:r=4,a=e.slice(n[0],n[0]+r),n[0]+=r;break;case 1:r=8,a=e.slice(n[0],n[0]+r),n[0]+=r;break;case 2:r=Wk(e,n),a=e.slice(n[0],n[0]+r),n[0]+=r;break;default:throw new Error("PB Type ".concat(o," for Field ").concat(i," at offset ").concat(s))}var m={data:a,type:o};null==t[i]?t[i]=[m]:t[i].push(m)}return t}function Uk(e){var t=[];return e.forEach((function(e,n){e.forEach((function(e){e.data&&(t.push(qk(8*n+e.type)),2==e.type&&t.push(qk(e.data.length)),t.push(e.data))}))})),Fk(t)}function Hk(e){for(var t,n=[],a=[0];a[0]<e.length;){var s=Wk(e,a),i=Bk(e.slice(a[0],a[0]+s));a[0]+=s;var o={id:zk(i[1][0].data),messages:[]};i[2].forEach((function(t){var n=Bk(t.data),s=zk(n[3][0].data);o.messages.push({meta:n,data:e.slice(a[0],a[0]+s)}),a[0]+=s})),(null==(t=i[3])?void 0:t[0])&&(o.merge=zk(i[3][0].data)>>>0>0),n.push(o)}return n}function Gk(e){var t=[];return e.forEach((function(e){var n=[];n[1]=[{data:qk(e.id),type:0}],n[2]=[],null!=e.merge&&(n[3]=[{data:qk(+!!e.merge),type:0}]);var a=[];e.messages.forEach((function(e){a.push(e.data),e.meta[3]=[{type:0,data:qk(e.data.length)}],n[2].push({data:Uk(e.meta),type:2})}));var s=Uk(n);t.push(qk(s.length)),t.push(s),a.forEach((function(e){return t.push(e)}))})),Fk(t)}function Vk(e,t){if(0!=e)throw new Error("Unexpected Snappy chunk type ".concat(e));for(var n=[0],a=Wk(t,n),s=[];n[0]<t.length;){var i=3&t[n[0]];if(0!=i){var o=0,r=0;if(1==i?(r=4+(t[n[0]]>>2&7),o=(224&t[n[0]++])<<3,o|=t[n[0]++]):(r=1+(t[n[0]++]>>2),2==i?(o=t[n[0]]|t[n[0]+1]<<8,n[0]+=2):(o=(t[n[0]]|t[n[0]+1]<<8|t[n[0]+2]<<16|t[n[0]+3]<<24)>>>0,n[0]+=4)),s=[Fk(s)],0==o)throw new Error("Invalid offset 0");if(o>s[0].length)throw new Error("Invalid offset beyond length");if(r>=o)for(s.push(s[0].slice(-o)),r-=o;r>=s[s.length-1].length;)s.push(s[s.length-1]),r-=s[s.length-1].length;s.push(s[0].slice(-o,-o+r))}else{var l=t[n[0]++]>>2;if(l<60)++l;else{var m=l-59;l=t[n[0]],m>1&&(l|=t[n[0]+1]<<8),m>2&&(l|=t[n[0]+2]<<16),m>3&&(l|=t[n[0]+3]<<24),l>>>=0,l++,n[0]+=m}s.push(t.slice(n[0],n[0]+l)),n[0]+=l}}var c=Fk(s);if(c.length!=a)throw new Error("Unexpected length: ".concat(c.length," != ").concat(a));return c}function Kk(e){for(var t=[],n=0;n<e.length;){var a=e[n++],s=e[n]|e[n+1]<<8|e[n+2]<<16;n+=3,t.push(Vk(a,e.slice(n,n+s))),n+=s}if(n!==e.length)throw new Error("data is not a valid framed stream!");return Fk(t)}function $k(e){for(var t=[],n=0;n<e.length;){var a=Math.min(e.length-n,268435455),s=new Uint8Array(4);t.push(s);var i=qk(a),o=i.length;t.push(i),a<=60?(o++,t.push(new Uint8Array([a-1<<2]))):a<=256?(o+=2,t.push(new Uint8Array([240,a-1&255]))):a<=65536?(o+=3,t.push(new Uint8Array([244,a-1&255,a-1>>8&255]))):a<=16777216?(o+=4,t.push(new Uint8Array([248,a-1&255,a-1>>8&255,a-1>>16&255]))):a<=4294967296&&(o+=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)),o+=a,s[0]=0,s[1]=255&o,s[2]=o>>8&255,s[3]=o>>16&255,n+=a}return Fk(t)}function Yk(e,t){var n=new Uint8Array(32),a=Lk(n),s=12,i=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,s=n/Math.pow(10,a-6176);e[t+15]|=a>>7,e[t+14]|=(127&a)<<1;for(var i=0;s>=1;++i,s/=256)e[t+i]=255&s;e[t+15]|=n>=0?0:128}(n,s,e.v),i|=1,s+=16;break;case"b":n[1]=6,a.setFloat64(s,e.v?1:0,!0),i|=2,s+=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(s,t.indexOf(e.v),!0),i|=8,s+=4;break;default:throw"unsupported cell type "+e.t}return a.setUint32(8,i,!0),n.slice(0,s)}function Xk(e,t){var n=new Uint8Array(32),a=Lk(n),s=12,i=0;switch(n[0]=3,e.t){case"n":n[2]=2,a.setFloat64(s,e.v,!0),i|=32,s+=8;break;case"b":n[2]=6,a.setFloat64(s,e.v?1:0,!0),i|=32,s+=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(s,t.indexOf(e.v),!0),i|=16,s+=4;break;default:throw"unsupported cell type "+e.t}return a.setUint32(4,i,!0),n.slice(0,s)}function Qk(e){return Wk(Bk(e)[1][0].data)}function Jk(e,t,n){var a,s,i,o;if(!(null==(a=e[6])?void 0:a[0])||!(null==(s=e[7])?void 0:s[0]))throw"Mutation only works on post-BNC storages!";if((null==(o=null==(i=e[8])?void 0:i[0])?void 0:o.data)&&zk(e[8][0].data)>0||!1)throw"Math only works with normal offsets";for(var r=0,l=Lk(e[7][0].data),m=0,c=[],u=Lk(e[4][0].data),p=0,d=[],h=0;h<t.length;++h)if(null!=t[h]){var g,f;switch(l.setUint16(2*h,m,!0),u.setUint16(2*h,p,!0),typeof t[h]){case"string":g=Yk({t:"s",v:t[h]},n),f=Xk({t:"s",v:t[h]},n);break;case"number":g=Yk({t:"n",v:t[h]},n),f=Xk({t:"n",v:t[h]},n);break;case"boolean":g=Yk({t:"b",v:t[h]},n),f=Xk({t:"b",v:t[h]},n);break;default:throw new Error("Unsupported value "+t[h])}c.push(g),m+=g.length,d.push(f),p+=f.length,++r}else l.setUint16(2*h,65535,!0),u.setUint16(2*h,65535);for(e[2][0].data=qk(r);h<e[7][0].data.length/2;++h)l.setUint16(2*h,65535,!0),u.setUint16(2*h,65535,!0);return e[6][0].data=Fk(c),e[3][0].data=Fk(d),r}function Zk(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 eb(e){Zk([["cellDates",!1],["bookSST",!1],["bookType","xlsx"],["compression",!1],["WTF",!1]])(e)}function tb(e,t){return"ods"==t.bookType?Ok(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=gf(n["!ref"]);a.s.r=a.s.c=0;var s=!1;a.e.c>9&&(s=!0,a.e.c=9),a.e.r>49&&(s=!0,a.e.r=49),s&&console.error("The Numbers writer is currently limited to ".concat(ff(a)));var i=ub(n,{range:a,header:1}),o=["~Sh33tJ5~"];i.forEach((function(e){return e.forEach((function(e){"string"==typeof e&&o.push(e)}))}));var r={},l=[],m=oh.read(t.numbers,{type:"base64"});m.FileIndex.map((function(e,t){return[e,m.FullPaths[t]]})).forEach((function(e){var t=e[0],n=e[1];2==t.type&&t.name.match(/\.iwa/)&&Hk(Kk(t.content)).forEach((function(e){l.push(e.id),r[e.id]={deps:[],location:n,type:zk(e.messages[0].meta[1][0].data)}}))})),l.sort((function(e,t){return e-t}));var c=l.filter((function(e){return e>1})).map((function(e){return[e,qk(e)]}));m.FileIndex.map((function(e,t){return[e,m.FullPaths[t]]})).forEach((function(e){var t=e[0];e[1],t.name.match(/\.iwa/)&&Hk(Kk(t.content)).forEach((function(e){e.messages.forEach((function(t){c.forEach((function(t){e.messages.some((function(e){return 11006!=zk(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])}))&&r[t[0]].deps.push(e.id)}))}))}))}));for(var u,p=oh.find(m,r[1].location),d=Hk(Kk(p.content)),h=0;h<d.length;++h){var g=d[h];1==g.id&&(u=g)}var f=Qk(Bk(u.messages[0].data)[1][0].data);for(d=Hk(Kk((p=oh.find(m,r[f].location)).content)),h=0;h<d.length;++h)(g=d[h]).id==f&&(u=g);for(f=Qk(Bk(u.messages[0].data)[2][0].data),d=Hk(Kk((p=oh.find(m,r[f].location)).content)),h=0;h<d.length;++h)(g=d[h]).id==f&&(u=g);for(f=Qk(Bk(u.messages[0].data)[2][0].data),d=Hk(Kk((p=oh.find(m,r[f].location)).content)),h=0;h<d.length;++h)(g=d[h]).id==f&&(u=g);var y=Bk(u.messages[0].data);y[6][0].data=qk(a.e.r+1),y[7][0].data=qk(a.e.c+1);for(var v=Qk(y[46][0].data),_=oh.find(m,r[v].location),k=Hk(Kk(_.content)),b=0;b<k.length&&k[b].id!=v;++b);if(k[b].id!=v)throw"Bad ColumnRowUIDMapArchive";var w=Bk(k[b].messages[0].data);w[1]=[],w[2]=[],w[3]=[];for(var x=0;x<=a.e.c;++x){var T=[];T[1]=T[2]=[{type:0,data:qk(x+420690)}],w[1].push({type:2,data:Uk(T)}),w[2].push({type:0,data:qk(x)}),w[3].push({type:0,data:qk(x)})}w[4]=[],w[5]=[],w[6]=[];for(var C=0;C<=a.e.r;++C)(T=[])[1]=T[2]=[{type:0,data:qk(C+726270)}],w[4].push({type:2,data:Uk(T)}),w[5].push({type:0,data:qk(C)}),w[6].push({type:0,data:qk(C)});k[b].messages[0].data=Uk(w),_.content=$k(Gk(k)),_.size=_.content.length,delete y[46];var S=Bk(y[4][0].data);S[7][0].data=qk(a.e.r+1);var j=Qk(Bk(S[1][0].data)[2][0].data);if((k=Hk(Kk((_=oh.find(m,r[j].location)).content)))[0].id!=j)throw"Bad HeaderStorageBucket";var D=Bk(k[0].messages[0].data);for(C=0;C<i.length;++C){var A=Bk(D[2][0].data);A[1][0].data=qk(C),A[4][0].data=qk(i[C].length),D[2][C]={type:D[2][0].type,data:Uk(A)}}k[0].messages[0].data=Uk(D),_.content=$k(Gk(k)),_.size=_.content.length;var E=Qk(S[2][0].data);if((k=Hk(Kk((_=oh.find(m,r[E].location)).content)))[0].id!=E)throw"Bad HeaderStorageBucket";for(D=Bk(k[0].messages[0].data),x=0;x<=a.e.c;++x)(A=Bk(D[2][0].data))[1][0].data=qk(x),A[4][0].data=qk(a.e.r+1),D[2][x]={type:D[2][0].type,data:Uk(A)};k[0].messages[0].data=Uk(D),_.content=$k(Gk(k)),_.size=_.content.length;var I=Qk(S[4][0].data);!function(){for(var e,t=oh.find(m,r[I].location),n=Hk(Kk(t.content)),a=0;a<n.length;++a){var s=n[a];s.id==I&&(e=s)}var i=Bk(e.messages[0].data);i[3]=[];var l=[];o.forEach((function(e,t){l[1]=[{type:0,data:qk(t)}],l[2]=[{type:0,data:qk(1)}],l[3]=[{type:2,data:Mk(e)}],i[3].push({type:2,data:Uk(l)})})),e.messages[0].data=Uk(i);var c=$k(Gk(n));t.content=c,t.size=t.content.length}();var N=Bk(S[3][0].data),P=N[1][0];delete N[2];var R=Bk(P.data),O=Qk(R[2][0].data);!function(){for(var e,t=oh.find(m,r[O].location),n=Hk(Kk(t.content)),s=0;s<n.length;++s){var l=n[s];l.id==O&&(e=l)}var c=Bk(e.messages[0].data);delete c[6],delete N[7];var u=new Uint8Array(c[5][0].data);c[5]=[];for(var p=0,d=0;d<=a.e.r;++d){var h=Bk(u);p+=Jk(h,i[d],o),h[1][0].data=qk(d),c[5].push({data:Uk(h),type:2})}c[1]=[{type:0,data:qk(a.e.c+1)}],c[2]=[{type:0,data:qk(a.e.r+1)}],c[3]=[{type:0,data:qk(p)}],c[4]=[{type:0,data:qk(a.e.r+1)}],e.messages[0].data=Uk(c);var g=$k(Gk(n));t.content=g,t.size=t.content.length}(),P.data=Uk(R),S[3][0].data=Uk(N),y[4][0].data=Uk(S),u.messages[0].data=Uk(y);var L=$k(Gk(d));return p.content=L,p.size=p.content.length,m}(e,t):"xlsb"==t.bookType?function(e,t){Nv=1024,e&&!e.SSF&&(e.SSF=Ch(wd));e&&e.SSF&&(ah(),nh(e.SSF),t.revssf=dh(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,T_?t.revStrings=new Map:(t.revStrings={},t.revStrings.foo=[],delete t.revStrings.foo);var n="xlsb"==t.bookType?"bin":"xml",a=Fv.indexOf(t.bookType)>-1,s={workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""};eb(t=t||{});var i=Ih(),o="",r=0;t.cellXfs=[],D_(t.cellXfs,{},{revssf:{General:0}}),e.Props||(e.Props={});if(Eh(i,o="docProps/core.xml",py(e.Props,t)),s.coreprops.push(o),ry(t.rels,2,o,sy.CORE_PROPS),o="docProps/app.xml",e.Props&&e.Props.SheetNames);else if(e.Workbook&&e.Workbook.Sheets){for(var l=[],m=0;m<e.SheetNames.length;++m)2!=(e.Workbook.Sheets[m]||{}).Hidden&&l.push(e.SheetNames[m]);e.Props.SheetNames=l}else e.Props.SheetNames=e.SheetNames;e.Props.Worksheets=e.Props.SheetNames.length,Eh(i,o,gy(e.Props)),s.extprops.push(o),ry(t.rels,3,o,sy.EXT_PROPS),e.Custprops!==e.Props&&ch(e.Custprops||{}).length>0&&(Eh(i,o="docProps/custom.xml",fy(e.Custprops)),s.custprops.push(o),ry(t.rels,4,o,sy.CUST_PROPS));for(r=1;r<=e.SheetNames.length;++r){var c={"!id":{}},u=e.Sheets[e.SheetNames[r-1]];(u||{})["!type"];if(Eh(i,o="xl/worksheets/sheet"+r+"."+n,nk(r-1,o,t,e,c)),s.sheets.push(o),ry(t.wbrels,-1,"worksheets/sheet"+r+"."+n,sy.WS[0]),u){var p=u["!comments"],d=!1,h="";p&&p.length>0&&(Eh(i,h="xl/comments"+r+"."+n,ak(p,h,t)),s.comments.push(h),ry(c,-1,"../comments"+r+"."+n,sy.CMNT),d=!0),u["!legacy"]&&d&&Eh(i,"xl/drawings/vmlDrawing"+r+".vml",Pv(r,u["!comments"])),delete u["!comments"],delete u["!legacy"]}c["!id"].rId1&&Eh(i,iy(o),oy(c))}null!=t.Strings&&t.Strings.length>0&&(Eh(i,o="xl/sharedStrings."+n,function(e,t,n){return(".bin"===t.slice(-4)?av:tv)(e,n)}(t.Strings,o,t)),s.strs.push(o),ry(t.wbrels,-1,"sharedStrings."+n,sy.SST));Eh(i,o="xl/workbook."+n,function(e,t,n){return(".bin"===t.slice(-4)?tk:Z_)(e,n)}(e,o,t)),s.workbooks.push(o),ry(t.rels,1,o,sy.WB),Eh(i,o="xl/theme/theme1.xml",Av(e.Themes,t)),s.themes.push(o),ry(t.wbrels,-1,"theme/theme1.xml",sy.THEME),Eh(i,o="xl/styles."+n,function(e,t,n){return(".bin"===t.slice(-4)?Dv:gv)(e,n)}(e,o,t)),s.styles.push(o),ry(t.wbrels,-1,"styles."+n,sy.STY),e.vbaraw&&a&&(Eh(i,o="xl/vbaProject.bin",e.vbaraw),s.vba.push(o),ry(t.wbrels,-1,"vbaProject.bin",sy.VBA));return Eh(i,o="xl/metadata."+n,function(e){return(".bin"===e.slice(-4)?Ev:Iv)()}(o)),s.metadata.push(o),ry(t.wbrels,-1,"metadata."+n,sy.XLMETA),Eh(i,"[Content_Types].xml",ay(s,t)),Eh(i,"_rels/.rels",oy(t.rels)),Eh(i,"xl/_rels/workbook."+n+".rels",oy(t.wbrels)),delete t.revssf,delete t.ssf,i}(e,t):nb(e,t)}function nb(e,t){Nv=1024,e&&!e.SSF&&(e.SSF=Ch(wd)),e&&e.SSF&&(ah(),nh(e.SSF),t.revssf=dh(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,T_?t.revStrings=new Map:(t.revStrings={},t.revStrings.foo=[],delete t.revStrings.foo);var n="xml",a=Fv.indexOf(t.bookType)>-1,s={workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""};eb(t=t||{});var i=Ih(),o="",r=0;if(t.cellXfs=[],D_(t.cellXfs,{},{revssf:{General:0}}),e.Props||(e.Props={}),Eh(i,o="docProps/core.xml",py(e.Props,t)),s.coreprops.push(o),ry(t.rels,2,o,sy.CORE_PROPS),o="docProps/app.xml",e.Props&&e.Props.SheetNames);else if(e.Workbook&&e.Workbook.Sheets){for(var l=[],m=0;m<e.SheetNames.length;++m)2!=(e.Workbook.Sheets[m]||{}).Hidden&&l.push(e.SheetNames[m]);e.Props.SheetNames=l}else e.Props.SheetNames=e.SheetNames;e.Props.Worksheets=e.Props.SheetNames.length,Eh(i,o,gy(e.Props)),s.extprops.push(o),ry(t.rels,3,o,sy.EXT_PROPS),e.Custprops!==e.Props&&ch(e.Custprops||{}).length>0&&(Eh(i,o="docProps/custom.xml",fy(e.Custprops)),s.custprops.push(o),ry(t.rels,4,o,sy.CUST_PROPS));var c=["SheetJ5"];for(t.tcid=0,r=1;r<=e.SheetNames.length;++r){var u={"!id":{}},p=e.Sheets[e.SheetNames[r-1]];(p||{})["!type"];if(Eh(i,o="xl/worksheets/sheet"+r+"."+n,P_(r-1,t,e,u)),s.sheets.push(o),ry(t.wbrels,-1,"worksheets/sheet"+r+"."+n,sy.WS[0]),p){var d=p["!comments"],h=!1,g="";if(d&&d.length>0){var f=!1;d.forEach((function(e){e[1].forEach((function(e){1==e.T&&(f=!0)}))})),f&&(Eh(i,g="xl/threadedComments/threadedComment"+r+"."+n,Ov(d,c,t)),s.threadedcomments.push(g),ry(u,-1,"../threadedComments/threadedComment"+r+"."+n,sy.TCMNT)),Eh(i,g="xl/comments"+r+"."+n,Rv(d)),s.comments.push(g),ry(u,-1,"../comments"+r+"."+n,sy.CMNT),h=!0}p["!legacy"]&&h&&Eh(i,"xl/drawings/vmlDrawing"+r+".vml",Pv(r,p["!comments"])),delete p["!comments"],delete p["!legacy"]}u["!id"].rId1&&Eh(i,iy(o),oy(u))}return null!=t.Strings&&t.Strings.length>0&&(Eh(i,o="xl/sharedStrings."+n,tv(t.Strings,t)),s.strs.push(o),ry(t.wbrels,-1,"sharedStrings."+n,sy.SST)),Eh(i,o="xl/workbook."+n,Z_(e)),s.workbooks.push(o),ry(t.rels,1,o,sy.WB),Eh(i,o="xl/theme/theme1.xml",Av(e.Themes,t)),s.themes.push(o),ry(t.wbrels,-1,"theme/theme1.xml",sy.THEME),Eh(i,o="xl/styles."+n,gv(e,t)),s.styles.push(o),ry(t.wbrels,-1,"styles."+n,sy.STY),e.vbaraw&&a&&(Eh(i,o="xl/vbaProject.bin",e.vbaraw),s.vba.push(o),ry(t.wbrels,-1,"vbaProject.bin",sy.VBA)),Eh(i,o="xl/metadata."+n,Iv()),s.metadata.push(o),ry(t.wbrels,-1,"metadata."+n,sy.XLMETA),c.length>1&&(Eh(i,o="xl/persons/person.xml",function(e){var t=[Nh,Jh("personList",null,{xmlns:ig,"xmlns:x":dg[0]}).replace(/[\/]>/,">")];return e.forEach((function(e,n){t.push(Jh("person",null,{displayName:e,id:"{54EE7950-7262-4200-6969-"+("000000000000"+n).slice(-12)+"}",userId:e,providerId:"None"}))})),t.push("</personList>"),t.join("")}(c)),s.people.push(o),ry(t.wbrels,-1,"persons/person.xml",sy.PEOPLE)),Eh(i,"[Content_Types].xml",ay(s,t)),Eh(i,"_rels/.rels",oy(t.rels)),Eh(i,"xl/_rels/workbook.xml.rels",oy(t.wbrels)),delete t.revssf,delete t.ssf,i}function ab(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=nd(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 sb(e,t){switch(t.type){case"base64":case"binary":break;case"buffer":case"array":t.type="";break;case"file":return mh(t.file,oh.write(e,{type:ad?"buffer":""}));case"string":throw new Error("'string' output type invalid for '"+t.bookType+"' files");default:throw new Error("Unrecognized type "+t.type)}return oh.write(e,t)}function ib(e,t){var n={},a=ad?"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 s=e.FullPaths?oh.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 s){if("binary"==t.type||"base64"==t.type)return s;s=new Uint8Array(ld(s))}return t.password&&"undefined"!==typeof encrypt_agile?sb(encrypt_agile(s,t.password),t):"file"===t.type?mh(t.file,s):"string"==t.type?Vh(s):s}function ob(e,t,n){n||(n="");var a=n+e;switch(t.type){case"base64":return td(Kh(a));case"binary":return Kh(a);case"string":return e;case"file":return mh(t.file,a,"utf8");case"buffer":return ad?sd(a,"utf8"):"undefined"!==typeof TextEncoder?(new TextEncoder).encode(a):ob(a,{type:"binary"}).split("").map((function(e){return e.charCodeAt(0)}))}throw new Error("Unrecognized type "+t.type)}function rb(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?td(n):"string"==t.type?Vh(n):n;case"file":return mh(t.file,e);case"buffer":return e;default:throw new Error("Unrecognized type "+t.type)}}function lb(e,t){Yp(),J_(e);var n=Ch(t||{});if(n.cellStyles&&(n.cellNF=!0,n.sheetStubs=!0),"array"==n.type){n.type="binary";var a=lb(e,n);return n.type="array",ld(a)}var s=0;if(n.sheet&&(s="number"==typeof n.sheet?n.sheet:e.SheetNames.indexOf(n.sheet),!e.SheetNames[s]))throw new Error("Sheet not found: "+n.sheet+" : "+typeof n.sheet);switch(n.bookType||"xlsb"){case"xml":case"xlml":return ob(mk(e,n),n);case"slk":case"sylk":return ob(Yy.from_sheet(e.Sheets[e.SheetNames[s]],n),n);case"htm":case"html":return ob(Ak(e.Sheets[e.SheetNames[s]],n),n);case"txt":return function(e,t){switch(t.type){case"base64":return td(e);case"binary":case"string":return e;case"file":return mh(t.file,e,"binary");case"buffer":return ad?sd(e,"binary"):e.split("").map((function(e){return e.charCodeAt(0)}))}throw new Error("Unrecognized type "+t.type)}(gb(e.Sheets[e.SheetNames[s]],n),n);case"csv":return ob(hb(e.Sheets[e.SheetNames[s]],n),n,"\ufeff");case"dif":return ob(Xy.from_sheet(e.Sheets[e.SheetNames[s]],n),n);case"dbf":return rb($y.from_sheet(e.Sheets[e.SheetNames[s]],n),n);case"prn":return ob(Jy.from_sheet(e.Sheets[e.SheetNames[s]],n),n);case"rtf":return ob(ov.from_sheet(e.Sheets[e.SheetNames[s]],n),n);case"eth":return ob(Qy.from_sheet(e.Sheets[e.SheetNames[s]],n),n);case"fods":return ob(Ok(e,n),n);case"wk1":return rb(Zy.sheet_to_wk1(e.Sheets[e.SheetNames[s]],n),n);case"wk3":return rb(Zy.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),rb(Tk(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 sb(dk(e,n),n)}(e,n);case"xlsx":case"xlsm":case"xlam":case"xlsb":case"numbers":case"ods":return function(e,t){var n=Ch(t||{});return ib(tb(e,n),n)}(e,n);default:throw new Error("Unrecognized bookType |"+n.bookType+"|")}}function mb(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 cb(e,t,n,a,s,i,o,r){var l=cf(n),m=r.defval,c=r.raw||!Object.prototype.hasOwnProperty.call(r,"raw"),u=!0,p=1===s?[]:{};if(1!==s)if(Object.defineProperty)try{Object.defineProperty(p,"__rowNum__",{value:n,enumerable:!1})}catch(f){p.__rowNum__=n}else p.__rowNum__=n;if(!o||e[n])for(var d=t.s.c;d<=t.e.c;++d){var h=o?e[n][d]:e[a[d]+l];if(void 0!==h&&void 0!==h.t){var g=h.v;switch(h.t){case"z":if(null==g)break;continue;case"e":g=0==g?null:void 0;break;case"s":case"d":case"b":case"n":break;default:throw new Error("unrecognized type "+h.t)}if(null!=i[d]){if(null==g)if("e"==h.t&&null===g)p[i[d]]=null;else if(void 0!==m)p[i[d]]=m;else{if(!c||null!==g)continue;p[i[d]]=null}else p[i[d]]=c&&("n"!==h.t||"n"===h.t&&!1!==r.rawNumbers)?g:_f(h,g,r);null!=g&&(u=!1)}}else{if(void 0===m)continue;null!=i[d]&&(p[i[d]]=m)}}return{row:p,isempty:u}}function ub(e,t){if(null==e||null==e["!ref"])return[];var n={t:"n",v:0},a=0,s=1,i=[],o=0,r="",l={s:{r:0,c:0},e:{r:0,c:0}},m=t||{},c=null!=m.range?m.range:e["!ref"];switch(1===m.header?a=1:"A"===m.header?a=2:Array.isArray(m.header)?a=3:null==m.header&&(a=0),typeof c){case"string":l=yf(c);break;case"number":(l=yf(e["!ref"])).s.r=c;break;default:l=c}a>0&&(s=0);var u=cf(l.s.r),p=[],d=[],h=0,g=0,f=Array.isArray(e),y=l.s.r,v=0,_={};f&&!e[y]&&(e[y]=[]);var k=m.skipHidden&&e["!cols"]||[],b=m.skipHidden&&e["!rows"]||[];for(v=l.s.c;v<=l.e.c;++v)if(!(k[v]||{}).hidden)switch(p[v]=pf(v),n=f?e[y][v]:e[p[v]+u],a){case 1:i[v]=v-l.s.c;break;case 2:i[v]=p[v];break;case 3:i[v]=m.header[v-l.s.c];break;default:if(null==n&&(n={w:"__EMPTY",t:"s"}),r=o=_f(n,null,m),g=_[o]||0){do{r=o+"_"+g++}while(_[r]);_[o]=g,_[r]=1}else _[o]=1;i[v]=r}for(y=l.s.r+s;y<=l.e.r;++y)if(!(b[y]||{}).hidden){var w=cb(e,l,y,p,a,i,f,m);(!1===w.isempty||(1===a?!1!==m.blankrows:m.blankrows))&&(d[h++]=w.row)}return d.length=h,d}var pb=/"/g;function db(e,t,n,a,s,i,o,r){for(var l=!0,m=[],c="",u=cf(n),p=t.s.c;p<=t.e.c;++p)if(a[p]){var d=r.dense?(e[n]||[])[p]:e[a[p]+u];if(null==d)c="";else if(null!=d.v){l=!1,c=""+(r.rawNumbers&&"n"==d.t?d.v:_f(d,null,r));for(var h=0,g=0;h!==c.length;++h)if((g=c.charCodeAt(h))===s||g===i||34===g||r.forceQuotes){c='"'+c.replace(pb,'""')+'"';break}"ID"==c&&(c='"ID"')}else null==d.f||d.F?c="":(l=!1,(c="="+d.f).indexOf(",")>=0&&(c='"'+c.replace(pb,'""')+'"'));m.push(c)}return!1===r.blankrows&&l?null:m.join(o)}function hb(e,t){var n=[],a=null==t?{}:t;if(null==e||null==e["!ref"])return"";var s=yf(e["!ref"]),i=void 0!==a.FS?a.FS:",",o=i.charCodeAt(0),r=void 0!==a.RS?a.RS:"\n",l=r.charCodeAt(0),m=new RegExp(("|"==i?"\\|":i)+"+$"),c="",u=[];a.dense=Array.isArray(e);for(var p=a.skipHidden&&e["!cols"]||[],d=a.skipHidden&&e["!rows"]||[],h=s.s.c;h<=s.e.c;++h)(p[h]||{}).hidden||(u[h]=pf(h));for(var g=0,f=s.s.r;f<=s.e.r;++f)(d[f]||{}).hidden||null!=(c=db(e,s,f,u,o,l,i,a))&&(a.strip&&(c=c.replace(m,"")),(c||!1!==a.blankrows)&&n.push((g++?r:"")+c));return delete a.dense,n.join("")}function gb(e,t){t||(t={}),t.FS="\t",t.RS="\n";var n=hb(e,t);if("undefined"==typeof Qp||"string"==t.type)return n;var a=Qp.utils.encode(1200,n,"str");return String.fromCharCode(255)+String.fromCharCode(254)+a}function fb(e,t,n){var a,s=n||{},i=+!s.skipHeader,o=e||{},r=0,l=0;if(o&&null!=s.origin)if("number"==typeof s.origin)r=s.origin;else{var m="string"==typeof s.origin?df(s.origin):s.origin;r=m.r,l=m.c}var c={s:{c:0,r:0},e:{c:l,r:r+t.length-1+i}};if(o["!ref"]){var u=yf(o["!ref"]);c.e.c=Math.max(c.e.c,u.e.c),c.e.r=Math.max(c.e.r,u.e.r),-1==r&&(r=u.e.r+1,c.e.r=r+t.length-1+i)}else-1==r&&(r=0,c.e.r=t.length-1+i);var p=s.header||[],d=0;t.forEach((function(e,t){ch(e).forEach((function(n){-1==(d=p.indexOf(n))&&(p[d=p.length]=n);var m=e[n],c="z",u="",h=hf({c:l+d,r:r+t+i});a=yb(o,h),!m||"object"!==typeof m||m instanceof Date?("number"==typeof m?c="n":"boolean"==typeof m?c="b":"string"==typeof m?c="s":m instanceof Date?(c="d",s.cellDates||(c="n",m=gh(m)),u=s.dateNF||wd[14]):null===m&&s.nullError&&(c="e",m=0),a?(a.t=c,a.v=m,delete a.w,delete a.R,u&&(a.z=u)):o[h]=a={t:c,v:m},u&&(a.z=u)):o[h]=m}))})),c.e.c=Math.max(c.e.c,l+p.length-1);var h=cf(r);if(i)for(d=0;d<p.length;++d)o[pf(d+l)+h]={t:"s",v:p[d]};return o["!ref"]=ff(c),o}function yb(e,t,n){if("string"==typeof t){if(Array.isArray(e)){var a=df(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 yb(e,hf("number"!=typeof t?t:{r:t,c:n||0}))}function vb(){return{SheetNames:[],Sheets:{}}}function _b(e,t,n,a){var s=1;if(!n)for(;s<=65535&&-1!=e.SheetNames.indexOf(n="Sheet"+s);++s,n=void 0);if(!n||e.SheetNames.length>=65535)throw new Error("Too many worksheets");if(a&&e.SheetNames.indexOf(n)>=0){var i=n.match(/(^.*?)(\d+)$/);s=i&&+i[2]||0;var o=i&&i[1]||n;for(++s;s<=65535&&-1!=e.SheetNames.indexOf(n=o+s);++s);}if(Q_(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 kb(e,t,n){return t?(e.l={Target:t},n&&(e.l.Tooltip=n)):delete e.l,e}var bb={encode_col:pf,encode_row:cf,encode_cell:hf,encode_range:ff,decode_col:uf,decode_row:mf,split_cell:function(e){return e.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(",")},decode_cell:df,decode_range:gf,format_cell:_f,sheet_add_aoa:bf,sheet_add_json:fb,sheet_add_dom:Ek,aoa_to_sheet:wf,json_to_sheet:function(e,t){return fb(null,e,t)},table_to_sheet:Ik,table_to_book:function(e,t){return kf(Ik(e,t),t)},sheet_to_csv:hb,sheet_to_txt:gb,sheet_to_json:ub,sheet_to_html:Ak,sheet_to_formulae:function(e){var t,n="",a="";if(null==e||null==e["!ref"])return[];var s,i=yf(e["!ref"]),o="",r=[],l=[],m=Array.isArray(e);for(s=i.s.c;s<=i.e.c;++s)r[s]=pf(s);for(var c=i.s.r;c<=i.e.r;++c)for(o=cf(c),s=i.s.c;s<=i.e.c;++s)if(n=r[s]+o,a="",void 0!==(t=m?(e[c]||[])[s]: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:ub,sheet_get_cell:yb,book_new:vb,book_append_sheet:_b,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:kb,cell_set_internal_link:function(e,t,n){return kb(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 s="string"!=typeof t?t:yf(t),i="string"==typeof t?t:ff(t),o=s.s.r;o<=s.e.r;++o)for(var r=s.s.c;r<=s.e.c;++r){var l=yb(e,o,r);l.t="n",l.F=i,delete l.v,o==s.s.r&&r==s.s.c&&(l.f=n,a&&(l.D=!0))}return e},consts:{SHEET_VISIBLE:0,SHEET_HIDDEN:1,SHEET_VERY_HIDDEN:2}};Bp.version;function wb(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 xb(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)||_p.STRING;return{...e.props,template:a}}));return Array.from(n).filter((e=>null===e||void 0===e?void 0:e.title))}function Tb(e){return e.map((e=>Ie("string"===typeof e.title?e.title:"")))}function Cb(e){return t=>e.map((e=>{let n=e.properties?t[e.properties]:t;if(e.formatter===Zi)return to(n);if(e.formatter&&(n=e.formatter(n)),Array.isArray(n))return n.length;return"object"===typeof n?!e.formatter&&e.template?"":Object.entries(n).map((e=>"".concat(Ie(e[0])||"",": ").concat(e[1]||""))).join(", "):n}))}function Sb(e,t,n){const a=xb(t),s=Cb(a),i=[Tb(a),...e.map(s)],o=bb.aoa_to_sheet(i);o["!cols"]=a.map((()=>({width:20})));const r=bb.book_new();bb.book_append_sheet(r,o,"Sheet1"),function(e,t,n){var a=n||{};a.type="file",a.file=t,mb(a),lb(e,a)}(r,"".concat(n,".xlsx"))}const jb=navigator.userAgent||navigator.vendor||window.opera||"",Db=/(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(jb)||/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(jb.substr(0,4))||window.innerWidth<700;const Ab=new class{constructor(){this.mode="",this.isOpen=!1,Ja(this,{isOpen:fn,on:_a,off:_a,toggle:_a})}on(e){this.isOpen=!0,this.mode=e||""}off(){this.isOpen=!1,this.mode=""}toggle(e){this.isOpen?this.off():this.on(e)}},Eb="card",Ib="card_wrapper",Nb="card_title",Pb="card_line",Rb="card_line_title",Ob="card_line_value",Lb="card_line_with_template",Mb="card_line_with_template_title";function Fb(e){let{column:t,item:n,value:a,className:s}=e;const{t:i}=_u(),o="function"===typeof t.className?t.className("body",n):t.className,r=typeof a;return!t.title||"undefined"===r||""===a||"number"===r&&isNaN(a)||"object"===r&&!a?null:(0,mu.jsxs)("div",{className:"".concat(Pb," ").concat(s||""," ").concat(o||""),children:[(0,mu.jsx)("div",{className:Rb,children:i(String(t.title))}),(0,mu.jsx)("div",{className:Ob,children:a})]})}Fb.defaultPeops={className:""};const Wb=Fb;function qb(e){let{column:t,item:n,className:a,value:s}=e;const{t:i}=_u(),o="function"===typeof t.className?t.className("body",n):t.className;return s?(0,mu.jsxs)("div",{className:"".concat(Lb," ").concat(a||""," ").concat(o||""),children:[(0,mu.jsx)("div",{className:Mb,children:i(String(t.title))}),s]}):null}qb.defaultPeops={className:""};const zb=qb;function Bb(e){let{column:t,item:n,className:a,value:s}=e;const i="function"===typeof t.className?t.className("body",n):t.className;return(0,mu.jsx)("div",{className:"".concat(Nb," ").concat(a||""," ").concat(i||""),children:s||"\u2014"},String(t.title))}Bb.defaultPeops={className:""};const Ub=Bb;function Hb(e){let{item:t,lines:n,className:a,customStyle:s}=e,i=!1;const o=n.map(((e,n)=>{var a,s;const o=e.properties?t[e.properties]:t,r=e.formatter?e.formatter(o):o,l="function"===typeof e.template,m=l?e.template(r,t):"".concat(null!==(a=e.prefixes)&&void 0!==a?a:"").concat(null!==r&&void 0!==r?r:"").concat(null!==(s=e.suffixes)&&void 0!==s?s:"");return!i&&e.title?(i=!0,(0,mu.jsx)(Ub,{item:t,column:e,value:m},"".concat(e.title,"_").concat(n))):l&&(!e.width||e.width&&e.width>110)?(0,mu.jsx)(zb,{item:t,column:e,value:m},"".concat(e.title,"_").concat(n)):(0,mu.jsx)(Wb,{item:t,column:e,value:m},"".concat(e.title,"_").concat(n))}));return(0,mu.jsx)("div",{className:"".concat(Eb," ").concat(a),style:s||{},children:o})}Hb.defaultProps={className:""};const Gb=Hb;const Vb=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];const t=e.reduce(((t,n,a)=>{if(n.template===_p.DETAILS)return t;if(0===a)return t.text.push(n),t;const s=e[a+1];return n.template===_p.SHORT_NUMBER&&"function"===typeof(null===s||void 0===s?void 0:s.template)?(t.text.push({...n,title:String(null===s||void 0===s?void 0:s.title)}),t):("function"===typeof n.template?a>0&&e[a-1].template===_p.SHORT_NUMBER?t.shortChart.push(n):t.longChart.push(n):t.text.push(n),t)}),{text:[],shortChart:[],longChart:[]});return[...t.text,...t.longChart]};function Kb(e){let{items:n=[],className:a,columnCount:s,children:i}=e;const[o,r]=(0,t.useState)(s||4),l=(0,t.useRef)();if(!n||!n.length)return null;const m=Mp(i),c=Vb(m);(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),r(s||n)}),[]);const u=null===n||void 0===n?void 0:n.map(((e,t)=>(0,mu.jsx)(Gb,{item:e,lines:c,customStyle:[{width:"calc(100% - 24px)"},{width:"calc(50% - 24px)"},{width:"calc(33.33% - 24px)"},{width:"calc(25% - 24px)"}][o-1],className:a},t)));return(0,mu.jsx)("div",{ref:l,className:Ib,children:u})}Kb.defaultProps={items:[],className:void 0,columnCount:void 0};const $b=Kb,Yb="main_wrapper",Xb="main_wrapper_white",Qb="main_wrapper_icons";const Jb=function(e){let{children:t,className:n,template:a}=e;const s=a?"".concat(Yb," ").concat(Xb):"".concat(Yb),i="table"===a?{paddingTop:0}:{};return(0,mu.jsx)("div",{className:"".concat(s," ").concat(n||""),style:i,children:t})};var Zb=Se("getPath");function ew(e){return e?Array.isArray(e)?e.join("."):"object"===typeof e?[e.type,e.page].join("."):e:""}const tw=new class{constructor(){Object.defineProperty(this,Zb,{value:ew}),this.key="view_settings",this.version=1,this.settings={},this.load(),Ja(this,{settings:fn,load:_a,setItem:_a})}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=Te(this,Zb)[Zb](e);a&&(t&&t!==n?this.settings[a]=t:delete this.settings[a],this.save())}getItem(e,t){var n;const a=Te(this,Zb)[Zb](e);return(null===(n=this.settings)||void 0===n?void 0:n[a])||t}},nw=tw,aw="data_view_buttons",sw="data_view_icon";function iw(e){let{rowsForExcel:n=[],rows:a=[],sort:s=[],type:i,mode:o,columnCount:r,className:l,fullScreenMode:m="",disabledRow:c,updateSort:u,children:p}=e;const{text:d}=_u(),h=ee(),g=nw.getItem(h,Db?"cards":"table"),[f,y]=(0,t.useState)(i||g);if(!a||!a.length)return null;return(0,mu.jsxs)(mu.Fragment,{children:["details"!==o&&(0,mu.jsx)("div",{style:{position:"relative"},children:(0,mu.jsxs)("div",{className:aw,children:[!Db&&(0,mu.jsx)("img",{src:"./assets/icons/Download.svg",className:sw,onClick:()=>{const e=document.title,t=d("plugin.".concat(h.type,"_").concat(h.page,".sidebar")),s="".concat(e," - ").concat(t);Sb(n||a,p,s)}}),!1,!1]})}),"table"===f&&"details"!==o&&(0,mu.jsx)(Jb,{template:"table",children:(0,mu.jsx)(Wp,{rows:a,sort:s,disabledRow:c,updateSort:u,children:p})}),"table"===f&&"details"===o&&(0,mu.jsx)(Wp,{rows:a,sort:s,disabledRow:c,updateSort:u,children:p}),"cards"===f&&(0,mu.jsx)($b,{items:a,columnCount:r,className:l,children:p})]})}iw.defaultProps={rows:[],sort:[],type:void 0,columnCount:void 0,updateSort:()=>{}};const ow=iw,rw={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 lw(e){let{commits:t}=e;const n=t.map((e=>{return(0,mu.jsxs)("div",{className:rw.day_info_row,children:[(0,mu.jsx)("span",{className:rw.day_info_date,children:(t=e.date,Ji(t,{hour:"numeric",minute:"numeric"}))}),(0,mu.jsx)("span",{className:rw.day_info_message,children:e.message})]},e.date);var t}));return(0,mu.jsx)(mu.Fragment,{children:n})}function mw(e){let{tasks:t}=e;const n=Object.entries(t).map((e=>{var t;let[n,a]=e;const s=Hm.tasks.totalInfoByName.get(n),i=a[0].milliseconds,o=null===s||void 0===s||null===(t=s.prIds)||void 0===t?void 0:t.find((e=>Hm.pr.totalInfoByName.get(e).dateMerge>=i));return(0,mu.jsxs)("div",{children:[(0,mu.jsxs)("div",{className:rw.day_info_link,children:[(0,mu.jsx)(jw,{task:n}),(0,mu.jsx)(Cw,{prId:o})]}),(0,mu.jsx)(lw,{commits:a})]},"".concat(o).concat(n))}));return(0,mu.jsx)(mu.Fragment,{children:n})}function cw(e){let{timestamp:t,events:n}=e;const{text:a}=_u();let s=0;const i=Hm.timestamp.totalInfo.allCommitsByTimestamp.find((e=>e.timestamp===t)).tasksByAuthor||{},o=Hm.author.list,r=Object.entries(i).sort(((e,t)=>o.indexOf(e[0])-o.indexOf(t[0]))).map((e=>{var t,i,o,r,l;let[m,c]=e;s+=Object.keys(c).length;let u="";return null!==n&&void 0!==n&&null!==(t=n.vacationStart)&&void 0!==t&&t.has(m)&&(u=a("plugin.team_month.vacation.first")),null!==n&&void 0!==n&&null!==(i=n.vacationEnd)&&void 0!==i&&i.has(m)&&(u=a("plugin.team_month.vacation.last")),null!==n&&void 0!==n&&null!==(o=n.firstDay)&&void 0!==o&&o.has(m)&&(u=a("plugin.team_month.work.first")),null!==n&&void 0!==n&&null!==(r=n.lastDay)&&void 0!==r&&r.has(m)&&(u=a("plugin.team_month.work.last")),null!==n&&void 0!==n&&null!==(l=n.travel)&&void 0!==l&&l.has(m)&&(u=a("plugin.team_month.travel")),(0,mu.jsxs)("div",{className:rw.day_info,children:[(0,mu.jsx)("h3",{className:rw.day_info_author,children:"".concat(m," ").concat(u)}),(0,mu.jsx)(mw,{tasks:c})]},m)}));return(0,mu.jsx)("div",{className:rw.day_info_wrapper,style:{columnCount:s>20?2:1},children:r})}cw.defaultProps={events:void 0};const uw=cw,pw="description_title",dw="description_text",hw="description_list";function gw(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,mu.jsx)(be,{target:"_blank",rel:"noreferrer",className:t||"",to:a||"",children:n},e)}));return(0,mu.jsx)(mu.Fragment,{children:n})}function fw(e,t){const n=(e||"").split("*").map(((e,n)=>n%2?(0,mu.jsx)("b",{children:gw(e,t)},e):(0,mu.jsx)("span",{children:gw(e,t)},e)));return(0,mu.jsx)(mu.Fragment,{children:n})}function yw(e){let{text:t,style:n,className:a}=e;return(0,mu.jsx)("p",{style:n||{},className:"".concat(hw," ").concat(a||""),children:fw(t,a)})}function vw(e){let{text:t,style:n,className:a}=e;return(0,mu.jsx)("h6",{style:n||{},className:"".concat(pw," ").concat(a||""),children:fw(t,a)})}function _w(e){let{text:t,style:n,className:a}=e;return(0,mu.jsx)("p",{style:n||{},className:"".concat(dw," ").concat(a||""),children:fw(t)})}function kw(e){let{text:t,style:n,className:a,translationId:s}=e;const{wrapper:i}=_u(),o=t||Ee.get(s),r=(Array.isArray(o)?o:(o||"").trim().split(/\n+/gm)).map(((e,t)=>{const s=e.substring(0,2),i=e.substring(2),o="".concat(i).concat(t);return"- "===s?(0,mu.jsx)(yw,{text:i,style:n,className:a},o):"# "===s?(0,mu.jsx)(vw,{text:i,style:n,className:a},o):(0,mu.jsx)(_w,{text:e,style:n,className:a},o)}));return s?i(s,r):(0,mu.jsx)(mu.Fragment,{children:r})}kw.defaultProps={text:""};const bw=kw,ww="external_link";function xw(e){let{link:t,text:n,className:a}=e;return(0,mu.jsx)(be,{to:t,target:"_blank",className:"".concat(ww," ").concat(a||""),children:n})}function Tw(e){var t;let{prId:n,text:a,className:s}=e;if(!n)return null;const i=(null===so||void 0===so||null===(t=so.config)||void 0===t?void 0:t.prefixForPR)||"/",o="#"===(null===n||void 0===n?void 0:n[0])?n.replace("#",""):n;return(0,mu.jsx)(xw,{text:a||"PR",link:"".concat(i).concat(o),className:s})}Tw.defaultProps={prId:"",text:"",className:""};const Cw=Tw;function Sw(e){var t;let{task:n,className:a}=e;if(!n)return null;const s=(null===so||void 0===so||null===(t=so.config)||void 0===t?void 0:t.prefixForTask)||"/",i="#"===(null===n||void 0===n?void 0:n[0])?n.replace("#",""):n;return(0,mu.jsx)(xw,{text:n,link:"".concat(s).concat(i),className:a})}Sw.defaultProps={task:"",className:""};const jw=Sw;function Dw(e){let{email:t,className:n}=e;if(!t)return null;const a=(t.split("+").pop()||"").split("@").shift();return a?(0,mu.jsx)(xw,{text:t,link:"https://github.com/".concat(a),className:n}):null}Dw.defaultProps={email:"",className:""};const Aw=Dw,Ew={logo:"logo",logo_link:"logo_link",logo_icon:"logo_icon",logo_text:"logo_text"};function Iw(e){let{showDescription:n}=e;const{logo:a,link:s,text:i,isOpenInNewTab:o}=ou.getBanner()||{},[r,l]=(0,t.useState)(a||""),m=document.body.offsetWidth;return(0,t.useLayoutEffect)((()=>{if(o)return;l(m<1e3?"./assets/logo/middle.svg":"./assets/logo.svg")}),[m]),(0,mu.jsxs)("figure",{className:Ew.logo,children:[(0,mu.jsx)(be,{to:s||"",target:o?"_blank":"",className:Ew.logo_icon_link,children:(0,mu.jsx)("img",{alt:"assayo",src:r,title:"assayo",className:Ew.logo_icon})}),s&&n?(0,mu.jsxs)("p",{className:Ew.logo_text,children:["\u043f\u0440\u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0435 ",i]}):null]})}Iw.defaultProps={showDescription:!1};const Nw=Iw;const Pw=function(e){let{value:t,children:n}=e;return t?Array.isArray(t)&&!t.length?null:(0,mu.jsx)(mu.Fragment,{children:n}):null},Rw="nothing_found",Ow="nothing_found_wrapper",Lw="nothing_found_icon",Mw="nothing_found_title",Fw="nothing_found_text",Ww="nothing_found_console",qw="nothing_found_link";const zw=function(){const{t:e}=_u();return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)("p",{className:Mw,children:e("uiKit.nothingFound.common.title")}),(0,mu.jsxs)("p",{className:Fw,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,mu.jsx)("a",{href:"https://www.conventionalcommits.org/en/v1.0.0/",target:"_blank",rel:"noreferrer",className:qw,children:"Git commit message convention"}),'". \u0428\u0430\u0431\u043b\u043e\u043d:']}),(0,mu.jsx)("p",{className:Ww,children:e("uiKit.nothingFound.common.console")}),(0,mu.jsx)("p",{className:Fw,children:e("uiKit.nothingFound.common.example")}),(0,mu.jsxs)("p",{className:Ww,children:["JIRA-0001 feat(profile): add user avatar",(0,mu.jsx)("br",{}),"JIRA-0002 fix(profile): changed link for user web site",(0,mu.jsx)("br",{}),"JIRA-0003 test(profile): added unit tests for edit phone"]})]})};const Bw=function(){return(0,mu.jsx)("p",{className:Mw,children:Ie("uiKit.nothingFound.common.title")})};const Uw=function(){return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)("p",{className:Mw,children:Ie("uiKit.nothingFound.staff.title")}),(0,mu.jsx)("p",{className:Fw,children:Ie("uiKit.nothingFound.staff.description")})]})};const Hw=function(e){let{mode:t}=e;return(0,mu.jsx)("div",{className:Ow,children:(0,mu.jsxs)("div",{className:Rw,children:[(0,mu.jsx)("img",{src:"./assets/cards/nothing_found.svg",className:Lw}),(0,mu.jsx)(Pw,{value:!t,children:(0,mu.jsx)(zw,{})}),(0,mu.jsx)(Pw,{value:"staff"===t,children:(0,mu.jsx)(Uw,{})}),(0,mu.jsx)(Pw,{value:"search"===t,children:(0,mu.jsx)(Bw,{})})]})})};let Gw=document.body.style.overflow;function Vw(e){const t=document.getElementById("root");t&&(t.style.filter=e?"blur(".concat(e,"px)"):"none")}function Kw(){document.body.style.overflow=Gw}function $w(e){Gw=document.body.style.overflow,document.body.style.overflow="hidden",e&&setTimeout(Kw,e)}const Yw={on:Kw,off:$w,useOnOff:function(){return $w(),Vw(1),()=>{Kw(),Vw()}}};const Xw=new class{constructor(){this.isOpen=!1,this.delay=3400,Ja(this,{isOpen:fn,delay:fn,show:_a,hide:_a,setDelay:_a})}show(){this.isOpen=!0,Yw.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"}},Qw="splash_screen",Jw="splash_screen_container",Zw="progress_bar",ex="progress_bar_line",tx=yi((()=>((0,t.useEffect)((()=>{Xw.isOpen&&setTimeout((()=>{Xw.hide()}),Xw.delay)}),[Xw.isOpen]),Xw.isOpen?(0,mu.jsx)("div",{className:Qw,style:{animationDelay:Xw.getDelay(100)},children:(0,mu.jsxs)("div",{className:Jw,style:{animationDelay:Xw.getDelay(-1400)},children:[(0,mu.jsx)(Nw,{showDescription:!0}),(0,mu.jsx)("div",{className:Zw,children:(0,mu.jsx)("div",{className:ex,style:{animationDuration:Xw.getDelay(-1100)}})})]})}):null))),nx={title:"title"};function ax(e){let{id:t,title:n,addPadding:a,className:s}=e;const{t:i}=_u();return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)("a",{name:n}),(0,mu.jsx)("h3",{id:t||"",className:"".concat(nx.title," ").concat(a?nx.title_padding:""," ").concat(s||""),children:i(n||"")})]})}ax.defaultProps={addPadding:!1,className:""};const sx=ax,ix="title_big",ox="title_big_header",rx="title_big_header_wrapper",lx="title_big_wrapper",mx="title_big_select";const cx=function(e){let{title:t,prefix:n,children:a}=e;const{t:s}=_u();return(0,mu.jsxs)("div",{className:lx,children:[(0,mu.jsx)(Pw,{value:n,children:(0,mu.jsx)("div",{className:rx,children:(0,mu.jsx)("h6",{className:ox,children:s(n||"")})})}),(0,mu.jsx)("h3",{className:ix,children:s(t||"")}),(0,mu.jsx)("div",{className:mx,children:a})]})},ux="ui_kit_wrapper",px="ui_kit_title",dx="ui_kit_description",hx="ui_kit_help",gx="ui_kit_error";const fx=function(e){let{title:t,description:n,help:a,example:s,error:i,className:o,children:r}=e;const{t:l,text:m}=_u();return(0,mu.jsxs)("div",{className:"".concat(ux," ").concat(o||""),title:m(a||""),children:[t&&(0,mu.jsx)("h6",{className:px,children:l(t)}),n&&(0,mu.jsx)("p",{className:dx,children:l(n)}),r,s&&(0,mu.jsx)("p",{className:hx,children:l(s||"")}),i&&(0,mu.jsx)("p",{className:gx,children:i})]})},yx="ui_kit_common";function vx(e){let{title:n,description:a,help:s,error:i,example:o,className:r,value:l,placeholder:m,debounceDelay:c,onChange:u,onChangeDebounce:p}=e;const{text:d}=_u(),h=(0,t.useCallback)((()=>{let e=null;return function(t){const n=t.target.value;u&&u(n),p&&(clearTimeout(e),e=setTimeout((()=>p(n)),c||800))}})(),[u]);return(0,mu.jsx)(fx,{title:n,description:a,help:s,error:i,example:o,className:r,children:(0,mu.jsx)("input",{type:"text",value:l,placeholder:m?d(m):"",className:"".concat(r," ").concat(yx),onChange:h})})}vx.defaultProps={placeholder:"\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435"};const _x=vx,kx="layout_search_example_item",bx="layout_search_example_item_title",wx="layout_search_example_item_value";const xx=function(e){let{examples:t,onClick:n}=e;const{t:a}=_u();if(null===t||void 0===t||!t.length)return null;const s=(t||[]).map((e=>(0,mu.jsx)("span",{className:wx,onClick:()=>n(e),children:e},e)));return(0,mu.jsxs)("div",{className:kx,children:[(0,mu.jsx)("span",{className:bx,children:a("common.search.example")}),s]})};const Tx=function(e){let{filters:n,examples:a,placeholder:s,className:i,onChange:o}=e;const[r,l]=(0,t.useState)(""),m=(e,t)=>{o({...n,[e]:t,hash:Math.random()})};return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(_x,{value:r,className:i||"",placeholder:s||"common.search.placeholder",onChange:l,onChangeDebounce:e=>{m("query",e)}}),(0,mu.jsx)(xx,{examples:a,onClick:e=>{l(e),m("query",e)}})]})},Cx="ui_kit_select_value",Sx="ui_kit_select_search",jx="ui_kit_select_option",Dx="ui_kit_select_container",Ax="ui_kit_select_list",Ex="ui_kit_select_option_focus";const Ix=function(e){let{value:t,className:n,onClick:a}=e;return(0,mu.jsx)("div",{className:"".concat(Cx," ").concat(n||""),onClick:a,children:t})};const Nx=function(e){let{value:n,placeholder:a,className:s,onChange:i,onClose:o,onKeyDown:r}=e;const l=(0,t.useRef)(null),[m,c]=(0,t.useState)(0);return(0,t.useEffect)((()=>{setTimeout((()=>{null!==l&&void 0!==l&&l.current&&l.current.focus()}),250)}),[]),(0,mu.jsx)("input",{ref:l,type:"text",value:n,placeholder:a,className:"".concat(Sx," ").concat(s||""),onChange:e=>{clearTimeout(m),i(e.target.value)},onBlur:()=>{clearTimeout(m);const e=setTimeout((()=>{o()}),250);c(e)},onFocus:()=>{clearTimeout(m)},onKeyDown:()=>{},onKeyUp:e=>{r({ArrowUp:"up",ArrowDown:"down",Enter:"enter"}[e.key||""]||"")}})};const Px=function(e){let{option:t,focus:n,className:a,onClick:s}=e,i=[jx];return a&&i.push(a),n&&i.push(Ex),(0,mu.jsx)("li",{className:i.join(" "),onClick:s,children:t.title})};const Rx=function(e){let{options:n,search:a,keyCode:s,className:i,setKeyCode:o,onClick:r}=e;const[l,m]=(0,t.useState)(-1),c=a?a.toLowerCase():"",u=c?null===n||void 0===n?void 0:n.filter((e=>{var t;return-1!==(null===e||void 0===e||null===(t=e._textForSearch)||void 0===t?void 0:t.indexOf(c))})):n;(0,t.useEffect)((()=>{if(s){if("down"===s){let e=l+1;e>=u.length&&(e=0),m(e)}if("up"===s){let e=l-1;e<0&&(e=u.length-1),m(e)}if("enter"===s){const e=u[l];r(e,l)}o("")}}),[s]),(0,t.useEffect)((()=>{m(-1)}),[a]);const p=null===u||void 0===u?void 0:u.map(((e,t)=>(0,mu.jsx)(Px,{focus:t===l,option:e,className:i,onClick:()=>{r(e.source,t)}},e.id)));return p.length?(0,mu.jsx)("ul",{className:"".concat(Ax," scroll_y ").concat(i||""),children:p}):null},Ox="ui_kit_select_icon",Lx="ui_kit_select_icon_button",Mx="ui_kit_select_icon_button_open";const Fx=function(e){let{openSearch:t,setOpenSearch:n}=e;const a=[Lx];return t&&a.push(Mx),(0,mu.jsx)("div",{className:Ox,children:(0,mu.jsx)("img",{src:"./assets/list/arrow.svg",className:a.join(" "),onClick:()=>n(!t)})})};function Wx(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 qx(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 zx(e){return qx(e,Wx)}function Bx(e,t){return qx(e,(e=>function(e,t){var n,a,s,i;return null!==(n=null!==(a=null!==(s=null!==(i=null===e||void 0===e?void 0:e.id)&&void 0!==i?i:null===e||void 0===e?void 0:e.uuid)&&void 0!==s?s:null===e||void 0===e?void 0:e.key)&&void 0!==a?a:t)&&void 0!==n?n:Wx(e)}(e,t)))}function Ux(e,t){const n=zx(e);return{id:Bx(e,t),title:n,_textForSearch:null!==n&&void 0!==n&&n.toLowerCase?null===n||void 0===n?void 0:n.toLowerCase():"",source:e}}const Hx=function(e){let{value:n,options:a,className:s,onChange:i}=e;const[o,r]=(0,t.useState)(!1),[l,m]=(0,t.useState)(""),[c,u]=(0,t.useState)(""),p=(0,t.useMemo)((()=>(null===a||void 0===a?void 0:a.map(Ux))||[]),[a]),d=(0,t.useMemo)((()=>zx(a.find((e=>e.id===n)))||zx(n)),[n]);return(0,mu.jsxs)("div",{className:"".concat(Dx," ").concat(s||""),children:[o?null:(0,mu.jsx)(Ix,{value:d,options:p,className:s,onClick:()=>r(!0)}),o?(0,mu.jsx)(Nx,{value:l,placeholder:d,className:s,onChange:m,onKeyDown:u,onClose:()=>{m(""),r(!1)}}):null,(0,mu.jsx)(Fx,{openSearch:o,setOpenSearch:r}),o?(0,mu.jsx)(Rx,{value:n,options:p,search:l,keyCode:c,setKeyCode:u,className:s,onClick:e=>{m(""),r(!1),i&&i(null===e||void 0===e?void 0:e.id)}}):null]})},Gx="ui_kit_select",Vx="ui_kit_select_with_buttons_wrapper",Kx="ui_kit_select_with_buttons_left",$x="ui_kit_select_with_buttons_right";const Yx=function(e){let{title:t,description:n,help:a,error:s,className:i,value:o,options:r,onChange:l}=e;const m=(r||[]).map((e=>"object"!==typeof e?{id:e,title:e}:e)).map(((e,t)=>{var n,a,s;return(0,mu.jsx)("option",{value:null!==(n=null===e||void 0===e?void 0:e.id)&&void 0!==n?n:null,children:null!==(a=null!==(s=null===e||void 0===e?void 0:e.title)&&void 0!==s?s: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,mu.jsx)(fx,{title:t,description:n,help:a,error:s,className:i,children:(0,mu.jsx)("select",{value:o,className:"".concat(yx," ").concat(Gx," ").concat(i||""),onChange:e=>{const t=e.target.value,n="null"!==t?parseInt(t,10)||0:null;l&&l(n,t)},children:m})})};function Xx(e){var t,n;let{className:a,value:s,options:i,reverse:o,onChange:r}=e,l=i.map((e=>e.id)).indexOf(s);-1===l&&(l=0);const m=l<=0,c=l>=i.length-1,u=null===(t=i[l-1])||void 0===t?void 0:t.id,p=null===(n=i[l+1])||void 0===n?void 0:n.id;return(0,mu.jsxs)("div",{className:"".concat(Vx," ").concat(a||""),children:[(0,mu.jsx)(Gu,{mode:"second",className:Kx,disabled:o?c:m,onClick:()=>{r(o?p:u)},children:"\xab"}),Db?(0,mu.jsx)(Yx,{value:s,options:i,onChange:r}):(0,mu.jsx)(Hx,{value:s,options:i,onChange:r}),(0,mu.jsx)(Gu,{mode:"second",className:$x,disabled:o?m:c,onClick:()=>{r(o?u:p)},children:"\xbb"})]})}Xx.defaultProps={reverse:!1,className:""};const Qx=Xx;function Jx(e,t,n){const{text:a}=_u(),s=n?t.map((e=>({id:e[n],title:e[n]}))):t.map((e=>({id:e,title:e})));return[{id:"",title:a(e)},...s.filter((e=>e.id))]}const Zx="layout_search",eT="layout_search_query",tT="layout_search_selects",nT="layout_search_select",aT=yi((e=>{let{elements:n,examples:a,placeholder:s,filters:i,onChange:o}=e;const r=PT.hash,l=PT.statisticsByCommits,m=(0,t.useMemo)((()=>Jx("common.search.select.author",l.author.list)),[r]),c=(0,t.useMemo)((()=>Jx("common.search.select.company",l.company.totalInfo,"company")),[r]),u=(0,t.useMemo)((()=>Jx("common.search.select.taskCode",l.taskCodes.totalInfo,"taskCode")),[r]),p=(0,t.useMemo)((()=>Jx("common.search.select.type",l.type.totalInfo,"type")),[r]),d=(0,t.useMemo)((()=>Jx("common.search.select.scope",l.scope.totalInfo,"scope")),[r]),h=(e,t)=>{o({...i,[e]:t,hash:Math.random()})};return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(Pw,{value:!n||n.includes("company"),children:(0,mu.jsx)(Qx,{value:i.company,options:c,className:nT,onChange:e=>h("company",e)})}),(0,mu.jsx)(Pw,{value:!n||n.includes("taskCode"),children:(0,mu.jsx)(Qx,{value:i.taskCode,options:u,className:nT,onChange:e=>h("taskCode",e)})}),(0,mu.jsx)(Pw,{value:!n||n.includes("author"),children:(0,mu.jsx)(Qx,{value:i.author,options:m,className:nT,onChange:e=>h("author",e)})}),(0,mu.jsx)(Pw,{value:!n||n.includes("scope")&&d.length>2,children:(0,mu.jsx)(Qx,{value:i.scope,options:d,className:nT,onChange:e=>h("scope",e)})}),(0,mu.jsx)(Pw,{value:(!n||n.includes("type"))&&p.length>2,children:(0,mu.jsx)(Qx,{value:i.type,options:p,className:nT,onChange:e=>h("type",e)})}),(0,mu.jsx)(Pw,{value:!n||n.includes("search_small"),children:(0,mu.jsx)("div",{className:nT,children:(0,mu.jsx)(Tx,{filters:i,examples:a,placeholder:s,onChange:o})})})]})})),sT=aT;function iT(e){return(e||"").toLocaleLowerCase().replace(/[[\]{}\-().,*?!'"%$^]/gim," ").replace(/\s{2,}/gim," ").trim()}function oT(e,t){return(Array.isArray(t)?t:[t]).filter((e=>e)).reduce(((t,n)=>"".concat(t," ")+iT("".concat(null===e||void 0===e?void 0:e[n]))),"").trim()}function rT(e,t){return t.reduce(((t,n)=>{var a;const s=(null===(a=e.match(n.value))||void 0===a?void 0:a.length)||0;return s&&(t=t+1+s/100),t}),0)}function lT(e,t){const n=function(e){return e.replace(/[[()\]{}\\.^$|?+\-]+/g,"").split(/\s+/).map((e=>({id:e,value:new RegExp("(".concat(e,")"),"g")})))}(t);return e.map((e=>[e.value,rT(e.key,n)])).filter((e=>e[1]))}function mT(e){return t=>(!e.author||t.author===e.author)&&((!e.company||t.company===e.company)&&((!e.taskCode||t.taskCode===e.taskCode)&&((!e.scope||t.scope===e.scope)&&(!e.type||t.type===e.type))))}const cT=function(e){let{content:n,properties:a,examples:s,elements:i,placeholder:o,className:r,defaultFilters:l,mode:m,onChange:c,onFilter:u,children:p}=e;const[d,h]=(0,t.useState)({query:"",author:"",company:"",taskCode:"",type:"",scope:"",...l||{}}),g=(0,t.useMemo)((()=>function(e,t){return e.map((e=>({key:oT(e,t),value:e}))).filter((e=>e.key))}(n||[],a||"")),[n]);(0,t.useEffect)((()=>{let e=n||[];if(d.query){const t="sort-by-searchIndex"===m;e=function(e,t,n){const a=lT(e,iT(t));return n&&a.sort(((e,t)=>t[1]-e[1]||t[0].milliseconds-e[0].milliseconds)),s=a,s.map((e=>e[0]));var s}(g,d.query,t)}const t=(u||mT)(d);e=e.filter(t),d.hash&&c(e,String(d.hash),d)}),[d.hash]);const f=t.Children.map(p,(e=>t.isValidElement(e)?t.cloneElement(e,{filters:d,onChange:h}):e));return(0,mu.jsxs)("div",{className:Zx,children:[(0,mu.jsx)(Pw,{value:i&&i.includes("search"),children:(0,mu.jsx)("div",{className:eT,children:(0,mu.jsx)(Tx,{filters:d,examples:s,placeholder:o,className:r,onChange:h})})}),(0,mu.jsxs)("div",{className:tT,children:[(0,mu.jsx)(sT,{elements:i,examples:s,placeholder:o,filters:d,onChange:h}),(0,mu.jsx)(Pw,{value:f,children:(0,mu.jsx)("div",{className:nT,children:f})})]})]})};function uT(e){const t={xxxs:"2px",xxs:"4px",xs:"6px",s:"8px",sm:"10px",m:"12px",l:"16px",xl:"18px",xxl:"24px"}[e||""];return t||("number"===typeof e?"".concat(e,"px"):e)}function pT(e){let{width:t,height:n}=e;const a={};return t&&(a.width=uT(t)),n&&(a.height=uT(n)),(0,mu.jsx)("div",{style:a})}pT.defaultProps={width:"",height:""};const dT=pT,hT="main_wrapper",gT="main_wrapper_white",fT="main_wrapper_item";const yT=function(e){let{children:t,className:n}=e;return(0,mu.jsx)("section",{className:"".concat(hT," ").concat(n||""),children:t})};const vT=function(e){let{children:t,className:n}=e;return(0,mu.jsx)("section",{className:"".concat(hT," ").concat(gT," ").concat(n||""),style:{paddingTop:0},children:t})};const _T=function(e){let{children:t}=e;return(0,mu.jsx)("div",{className:fT,children:t})},kT=["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"],bT=kT.map(((e,t)=>e.replace(/([\s.]+)|([^A-Za-z]+)/gim,"-").toLowerCase()+t+"@yahoo.com")),wT="axeurtyqwpsdfghjklzcvbnm".split("").map((e=>new Array(5).fill(e.toUpperCase()).join(""))),xT=["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 TT{constructor(e,t){this.cache=new Map,this.dictionary=[],this.index=0,this.prefix="",this.dictionary=t,this.prefix=e}get(e){let t=this.cache.get(e);return t||(t=this.dictionary[this.index]||"".concat(this.prefix).concat(this.index),this.cache.set(e,t),this.index+=1,t)}}class CT{constructor(){this.fakeName=null,this.fakeEmail=null,this.fakeTaskPrefix=null,this.fakeCompany=null,this.fakeName=new TT("User",kT),this.fakeEmail=new TT("user",bT),this.fakeTaskPrefix=new TT("JIRA",wT),this.fakeCompany=new TT("Company",xT)}getDepersonalizedCommit(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 s=e.task.split(/[-_\s:#=]+/gim).shift()||"",i=this.fakeTaskPrefix.get(s),o=e.task.replace(s,i),r=e.message.replace(s,i),l=e.branch?e.branch.replace(s,i):void 0,m=e.toBranch?e.toBranch.replace(s,i):void 0;return{...e,task:o,message:r,author:t,email:n,company:a,branch:l,toBranch:m}}}const ST=new class{constructor(){this.defaultFrom="",this.defaultTo="",this.from="",this.to="",this.lastCommitTime=0,Ja(this,{defaultFrom:fn,defaultTo:fn,from:fn,to:fn,updateByCommits:_a,setFilterByDateType:_a,updateProperty:_a})}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-Ki*t).toISOString().split("T")[0]:this.defaultFrom,this.to=this.defaultTo}updateProperty(e,t){this[e]=null!==t&&void 0!==t?t:null}},jT=ST;let DT;!function(e){e.EMPTY="empty",e.WELCOME="welcome",e.INFO="info"}(DT||(DT={}));const AT=new class{constructor(){this.view=DT.EMPTY,Ja(this,{view:fn,toggle:_a})}toggle(e){this.view=e}},ET=300;var IT=Se("updateRender");function NT(){this.statisticsByCommits=null,this.statisticsByCommits=Hm,this.statisticsByFiles=null,this.statisticsByFiles=xc,this.hash=Math.random()}const PT=new class{constructor(){Object.defineProperty(this,IT,{value:NT}),this.commits=[],this.statisticsByCommits=null,this.statisticsByFiles=null,this.hash=0,this.isDepersonalized=!1,Ja(this,{statisticsByCommits:fn,statisticsByFiles:fn,hash:fn,isDepersonalized:fn,asyncSetCommits:_a,processingStringToCommit:_a,processingDataAnalysis:_a,depersonalized:_a,updateStatistic:_a,exit:_a})}asyncSetCommits(e){null!==e&&void 0!==e&&e.length&&(Xw.show(),setTimeout((()=>this.processingStringToCommit(e)),ET))}processingStringToCommit(e){Hm.clear(),xc.clear();const t=tu(e||[]);t.length?setTimeout((()=>this.processingCommitGrouping(t)),ET):Xw.hide()}processingCommitGrouping(e){e.sort(((e,t)=>e.milliseconds-t.milliseconds));const t=e.length;e.forEach((e=>{Hm.addCommit(e,t)})),setTimeout((()=>this.processingFileGrouping(e)),ET)}processingFileGrouping(e){e.forEach((e=>{xc.addCommit(e)})),setTimeout((()=>this.processingDataAnalysis(e)),ET)}processingDataAnalysis(e){xc.updateTotalInfo(),this.commits=e,jT.updateByCommits(Hm.firstLastCommit.minData,Hm.firstLastCommit.maxData),Hm.updateTotalInfo(),Gi.updateByGrip(Hm,xc),AT.toggle(DT.INFO),Te(this,IT)[IT](),console.dir(this.statisticsByCommits),console.dir(this.statisticsByFiles),document.title=su(this.statisticsByCommits,this.statisticsByFiles,this.commits)}depersonalized(e){this.isDepersonalized=!!e,setTimeout((()=>{this.updateStatistic()}),100)}updateStatistic(){Hm.clear(),xc.clear();const e=new CT;this.commits.forEach((t=>{if(t.timestamp<jT.from||t.timestamp>jT.to)return;const n=this.isDepersonalized?e.getDepersonalizedCommit(t):t;Hm.addCommit(n,0),xc.addCommit(n)})),xc.updateTotalInfo(),Hm.updateTotalInfo(),Gi.updateByGrip(Hm,xc),Te(this,IT)[IT]()}exit(){Hm.clear(),xc.clear(),this.commits=[],Te(this,IT)[IT]()}};function RT(e){var t;window.report=e||[],Xw.setDelay(null===(t=e||[])||void 0===t?void 0:t.length)}function OT(e){RT([]);return{rep:!0,"r(f":!0,"R(f":!0}[e.slice(0,3)]&&(e=e.replace(/(R\(f`)|(r\(f`)|(report\.push\(`)|(`\);)/gim,"")),RT(e.split("\n")),window.report}async function LT(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 MT="dropzone",FT="dropzone_title";const WT=function(e){let{onChange:n}=e;const[a,s]=(0,t.useState)(!1);return(0,t.useEffect)((()=>{const e=function(e,t){return async function(n){var a;n.preventDefault(),n.stopPropagation();const s=[...(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),!s.length)return;const i=OT(await LT(s));t("dump",i)}}(s,n),t=function(e){return function(t){t.preventDefault(),t.stopPropagation(),e(!0)}}(s);return document.body.addEventListener("drop",e),document.body.addEventListener("dragover",t),()=>{document.body.removeEventListener("drop",e),document.body.removeEventListener("dragover",t)}}),[]),a?(0,mu.jsx)("div",{className:MT,onClick:()=>{s(!1)},children:(0,mu.jsx)("p",{className:FT,children:"Drop file here"})}):(0,mu.jsx)(mu.Fragment,{})},qT="locker",zT="locker_icon",BT="locker_border",UT="locker_center",HT="locker_sector",GT="locker_text";function VT(e){let{delay:n,callback:a,className:s,sectorClassName:i,borderClassName:o}=e;const[r,l]=(0,t.useState)(""),[m,c]=(0,t.useState)(n);return(0,t.useEffect)((()=>{const e=Math.round(100-100*m/n),t=49.5*Math.PI;l("".concat(t/100*e,", ").concat(t)),e>=99?a&&a():setTimeout((()=>{c((e=>e-1))}),1e3)}),[m]),n&&m?(0,mu.jsxs)("div",{className:"".concat(qT," ").concat(s||""),children:[(0,mu.jsxs)("svg",{viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid meet",xmlns:"http://www.w3.org/2000/svg",className:zT,children:[(0,mu.jsx)("circle",{r:"25",cx:"50",cy:"50",style:{strokeDasharray:r},className:"".concat(HT," ").concat(i||"")}),(0,mu.jsx)("circle",{r:"49.5",cx:"50",cy:"50",className:"".concat(BT," ").concat(o||"")}),(0,mu.jsx)("circle",{r:"40",cx:"50",cy:"50",className:"".concat(UT," ").concat(o||"")})]}),(0,mu.jsx)("p",{className:GT,children:m})]}):null}VT.defaultProps={delay:60,callback:void 0,className:"",sectorClassName:"",borderClassName:""};const KT=VT,$T="modal_window",YT="modal_window_big",XT="modal_window_fullscreen",QT="modal_window_wrapper",JT="modal_window_title",ZT="modal_window_body",eC="modal_window_footer",tC="modal_window_locker",nC="modal_window_close",aC=yi((e=>{let{delay:t,className:n,children:a,onClose:s,setCanClose:i}=e;return(0,mu.jsxs)("div",{className:"".concat(JT," ").concat(n||""),children:[a,s?(0,mu.jsx)("img",{src:"./assets/close.svg",className:nC,onClick:e=>{e.stopPropagation(),s()}}):null,t?(0,mu.jsx)(KT,{delay:t,className:tC,callback:()=>{i&&i(!0)}}):null]})})),sC=yi((e=>{let{className:t,children:n}=e;return(0,mu.jsx)("div",{className:"".concat(ZT," scroll_y ").concat(t||""),children:n})})),iC=yi((e=>{let{className:t,children:n}=e;return(0,mu.jsx)("div",{className:"".concat(eC," ").concat(t||""),children:n})}));function oC(e){let{id:n,mode:a,delay:s,className:i,onClose:o,children:r}=e;const[l,m]=(0,t.useState)(!s),c=n||"modal_window";(0,t.useEffect)(Yw.useOnOff,[]);const u=t.Children.map(r,(e=>t.isValidElement(e)?t.cloneElement(e,{onClose:o,delay:s,setCanClose:m}):e));let p=$T;return"big"===a&&(p=YT),Db&&(p=XT),Qs.createPortal((0,mu.jsx)("div",{id:"".concat(c,"-wrapper"),className:"".concat(QT||""),onClick:e=>{var t;e.stopPropagation(),(null===(t=e.target)||void 0===t?void 0:t.id)==="".concat(c,"-wrapper")&&o&&l&&o()},children:(0,mu.jsx)("div",{id:c,className:"".concat(p," ").concat(i||""),onClick:e=>{e.stopPropagation()},children:u})}),document.body)}oC.displayName="Modal",oC.defaultProps={id:"modal-window",delay:void 0,className:"",onClose:void 0,children:void 0};const rC=new class{constructor(){this.title="",this.yes="",this.no="",this.isOpen=!1,this.successCallback=()=>{},this.cancelCallback=()=>{},Ja(this,{title:fn,yes:fn,no:fn,successCallback:fn,cancelCallback:fn,isOpen:fn,open:_a,close:_a})}open(e){return this.title=(null===e||void 0===e?void 0:e.title)||e||Ie("common.confirm.title"),this.yes=(null===e||void 0===e?void 0:e.yes)||Ie("common.confirm.yes"),this.no=(null===e||void 0===e?void 0:e.no)||Ie("common.confirm.no"),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())}},lC=yi((()=>rC.isOpen?(0,mu.jsxs)(oC,{children:[(0,mu.jsx)(aC,{children:null===rC||void 0===rC?void 0:rC.title}),(0,mu.jsxs)(iC,{children:[(0,mu.jsx)(Gu,{mode:Db?["primary","full_size"]:["primary"],onClick:()=>{rC.cancel()},children:rC.no}),(0,mu.jsx)(Gu,{mode:Db?["second","full_size"]:["second"],onClick:()=>{rC.success()},children:rC.yes})]})]}):null));var mC=Se("getItems");function cC(e,t){const n=this.plugins.map((t=>{var n;return null===t||void 0===t||null===(n=t[e])||void 0===n?void 0:n.call(t)})).flat().filter((e=>e)).sort(((e,t)=>(e.order||0)-(t.order||0))),a=t?n.filter((e=>{var n;return(null===e||void 0===e||null===(n=e.link)||void 0===n?void 0:n[1])===t})):n;let s=a[0];return a.reduce(((e,t)=>{var n;return(null===(n=s)||void 0===n?void 0:n.group)!==(null===t||void 0===t?void 0:t.group)&&e.push({}),e.push(t),s=t,e}),[])}const uC=new class{constructor(){Object.defineProperty(this,mC,{value:cC}),this.plugins=[],this.refIdPlugin=new Map}setPlugins(e){this.plugins=[],this.refIdPlugin.clear(),e.forEach((e=>{const t=new e;t&&(this.plugins.push(t),this.refIdPlugin.set(e.id,t))}))}getMenuItems(e){return Te(this,mC)[mC]("getMenuItems",e)}getHeaderItems(e){return Te(this,mC)[mC]("getHeaderItems",e)}getPage(e,t){for(let a=0;a<this.plugins.length;a++){var n;const s=this.plugins[a],i=null===s||void 0===s||null===(n=s.getPage)||void 0===n?void 0:n.call(s,e||"",t||{});if(i)return i}return null}getPages(e,t){return this.plugins.map((n=>{var a;return null===n||void 0===n||null===(a=n.getPage)||void 0===a?void 0:a.call(n,e||"",t||{})})).filter((e=>e))}getById(e){return this.refIdPlugin.get(e||"")}getTranslations(){return this.plugins.map((e=>{var t;return null===e||void 0===e||null===(t=e.getTranslations)||void 0===t?void 0:t.call(e)})).filter((e=>e))}},pC=uC;function dC(e){const{title:t}=e;return Array.isArray(t)?t.length>1?"".concat(t[0]," +").concat(t.length-1):t[0]:t||""}function hC(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=>Ee.get(e,a))).join("\n")}const gC=new class{constructor(){this.recommendation=null,Ja(this,{recommendation:fn,open:_a,close:_a})}open(e){this.recommendation=e}close(){this.recommendation=null}},fC="recommendations_modal",yC="recommendations_modal_title",vC="recommendations_modal_header",_C="recommendations_modal_footer",kC="recommendations_modal_sub_title",bC="recommendations_modal_description",wC="recommendations_modal_info",xC="recommendations_modal_fact",TC="recommendations_modal_warning",CC="recommendations_modal_error",SC="recommendations_modal_button";const jC=yi((()=>{var e;const{t:t}=_u(),{recommendation:n}=gC;if(!n)return null;const a=dC(n),s=null===n||void 0===n||null===(e=n.arguments)||void 0===e?void 0:e.title,i=function(e){var t;const n=null===e||void 0===e?void 0:e.type;return null!==(t={[ho]:wC,[po]:xC,[uo]:TC,[co]:CC}[n||ho])&&void 0!==t?t:xC}(n),o=hC(n).split("\n"),r=o.shift();return(0,mu.jsxs)(oC,{className:"".concat(i," ").concat(fC),onClose:()=>{gC.close()},children:[(0,mu.jsxs)(aC,{className:vC,children:[(0,mu.jsx)("span",{className:yC,children:t(a,s)}),(0,mu.jsx)("p",{className:kC,children:r})]}),(0,mu.jsx)(sC,{children:(0,mu.jsx)(bw,{className:bC,text:o.join("\n"),translationId:n.description})}),(0,mu.jsx)(iC,{className:_C,children:(0,mu.jsx)(Gu,{mode:["border","full_size"],className:SC,onClick:()=>{gC.close()},children:Ee.get("recommendations.modal.cancel")})})]})})),DC=jC,AC="translation_tooltip",EC=yi((()=>{const{text:e}=_u();return pu.isEditor&&pu.refKeyTranslation.size?Qs.createPortal((0,mu.jsx)("div",{className:AC,children:(0,mu.jsx)(Gu,{mode:"second",onClick:()=>{pu.show()},children:e("uiKit.translation.tooltip.list")})}),document.body):null})),IC="loading";function NC(e){let{height:t}=e;return(0,mu.jsx)("div",{className:IC,style:{minHeight:t?"".concat(t,"px"):"auto"},children:"..."})}NC.defaultProps={height:0};const PC=NC,RC={INIT:"INIT",LOADING:"LOADING",LOADING_MORE:"LOADING_MORE",LOADING_ALL:"LOADING_ALL",LOADING_PAGE:"LOADING_PAGE",ERROR:"ERROR",SUCCESS:"SUCCESS"};class OC{constructor(e){let{loader:t,callback:n,defaultPageNumber:a,defaultPageSize:s,watch:i}=e;this.state=RC.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=s||10,this.watchedValue=i||"",Ja(this,{state:fn,watchedValue:fn,sort:fn,fetchData:_a,successCallback:_a,errorCallback:_a,loadMore:_a,showAll:_a,updateSort:_a,updateWatchedValue:_a,canSendRequest:kn})}newSearch(){return this.fetchData(RC.LOADING,{pageNumber:this.defaultPageNumber,pageSize:this.defaultPageSize})}updateSort(e){return this.sort=e||[],this.fetchData(RC.LOADING,{pageNumber:this.pageNumber,pageSize:this.pageSize})}goToPage(e,t){return this.fetchData(RC.LOADING_PAGE,{pageNumber:e,pageSize:t})}loadMore(){const e=this.pageNumber+1;return this.fetchData(RC.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(RC.LOADING_ALL,{pageNumber:0,pageSize:t})}get canSendRequest(){return![RC.LOADING,RC.LOADING_MORE,RC.LOADING_ALL,RC.LOADING_PAGE,RC.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,s;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===(s=this.response)||void 0===s?void 0:s.pageNumber)||0,this.callback&&this.callback(this.response),this.state=RC.SUCCESS}setResponse(e){this.state===RC.LOADING_MORE?this.response={...e,content:[...this.response.content,...e.content]}:this.response=e}errorCallback(e){this.state===RC.LOADING&&(this.response=e),this.state=RC.ERROR}updateWatchedValue(e){this.watchedValue=e,this.state=RC.INIT,this.newSearch()}}function LC(e){let{response:t}=e;return(0,mu.jsx)("div",{className:"data-loader-error",children:(0,mu.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,mu.jsx)("div",{children:t})})})}LC.defaultProps={response:null};const MC=LC;function FC(){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 WC=yi((e=>{let{watch:n,children:a,loader:s,callback:i,to:o,from:r,height:l,id:m,className:c,parameterInUrl:u,pagination:p}=e;const d=new URLSearchParams(J().search),[h,g]=(0,t.useState)(),f=null!==u&&void 0!==u&&u.includes("pageNumber")&&parseInt(d.get("pageNumber")||"",10)||0,y=null!==u&&void 0!==u&&u.includes("pageSize")&&parseInt(d.get("pageSize")||"",10)||10;(0,t.useEffect)((()=>{if(h instanceof OC){if(h.response)if(h.loader=s,h.callback=i,(n||h.watchedValue)&&h.watchedValue!==n)h.updateWatchedValue(n);else if(!u||h.pageNumber===f&&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(f,y)}else{const e=new OC({loader:s,callback:i,defaultPageNumber:f||(null===p||void 0===p?void 0:p.page),defaultPageSize:y||(null===p||void 0===p?void 0:p.size),watch:n});e.newSearch(),g(e)}}));const{state:v,response:_}=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=RC.INIT,a=null;return e instanceof OC&&(n=e.state,[RC.SUCCESS,RC.LOADING_MORE,RC.LOADING_ALL].includes(n)&&(a=t?e.response[t]:e.response)),{state:n,response:a}}(h,r);if(v===RC.LOADING||v===RC.LOADING_PAGE)return(0,mu.jsx)(PC,{height:l||80});if(v===RC.ERROR)return(0,mu.jsx)(MC,{response:null===h||void 0===h?void 0:h.response});const k=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,s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"response",i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"",o=arguments.length>6&&void 0!==arguments[6]?arguments[6]:[""],r=arguments.length>7&&void 0!==arguments[7]?arguments[7]:{page:0,size:10};return FC(e)?{response:null===t||void 0===t?void 0:t.response,to:s,from:i,state:n,store:t,parameterInUrl:o,pagination:r}:{[s]:a,updateSort:e=>null===t||void 0===t?void 0:t.updateSort(e)}}(e,h,v,_,o,r,u,p)):e)),b=null===k||void 0===k?void 0:k.find((e=>e.type===Hw));var w;if(v===RC.SUCCESS&&b&&(0===Object.keys(_||{}).length||0===(null===_||void 0===_||null===(w=_.content)||void 0===w?void 0:w.length))){const e=t.cloneElement(b,{mode:"search"});return(0,mu.jsx)(mu.Fragment,{children:e})}const x=null===k||void 0===k?void 0:k.filter((e=>e.type!==Hw));return c?(0,mu.jsx)("div",{id:m||"",className:c||"",children:x}):(0,mu.jsx)(mu.Fragment,{children:x})})),qC=WC,zC="show_all";function BC(e){let{response:t,state:n,store:a,className:s}=e;const{t:i}=_u();if(!t)return null;const{number:o,totalPages:r}=t;return n===RC.INIT||o>=r-1?null:[RC.LOADING_ALL,RC.LOADING_MORE].includes(n||"")?(0,mu.jsx)(PC,{height:40}):n===RC.ERROR?(0,mu.jsx)(MC,{response:null===a||void 0===a?void 0:a.response}):(0,mu.jsx)("div",{className:"".concat(zC," ").concat(s||""),onClick:()=>{a&&a.showAll()},children:i("uiKit.dataLoader.all")})}BC.defaultProps={response:null,className:"",state:RC.INIT,store:null};const UC="paginator",HC="paginator_text",GC="paginator_page_number";function VC(e){let{response:t,state:n,pagination:a,store:s}=e;const{t:i}=_u();if(!t)return null;const o=(null===a||void 0===a?void 0:a.size)||10,{number:r,size:l,totalElements:m}=t,c=Math.ceil(m/l);if(n===RC.INIT||r>c||1===c||!m)return null;const u=!(n===RC.INIT||r>=c-1);return[RC.LOADING_ALL,RC.LOADING_MORE].includes(n||"")?(0,mu.jsx)(PC,{height:40}):n===RC.ERROR?(0,mu.jsx)(MC,{response:null===s||void 0===s?void 0:s.response}):(0,mu.jsxs)("nav",{className:UC,children:[(0,mu.jsx)("p",{className:HC,children:i("uiKit.dataLoader.page")}),(0,mu.jsx)(Gu,{mode:"second",disabled:!r,onClick:()=>{s&&s.goToPage(r-1,l||o)},children:"\xab"}),(0,mu.jsx)(_x,{className:GC,value:r+1,onChange:e=>{let t=parseInt(e||"1",10);t<1&&(t=1),t>=c&&(t=c),s&&s.goToPage(t-1,l||o)}}),(0,mu.jsx)(Gu,{mode:"second",disabled:r===c-1,onClick:()=>{s&&s.goToPage(r+1,l||o)},children:"\xbb"}),(0,mu.jsx)("p",{className:HC,children:i("uiKit.dataLoader.from")}),(0,mu.jsx)(Gu,{mode:"second",onClick:()=>{s&&s.goToPage(c-1,l||o)},children:c}),(0,mu.jsx)("p",{className:HC,children:i("uiKit.dataLoader.size")}),(0,mu.jsx)(_x,{value:l,className:GC,onChange:e=>{let t=parseInt(e||"10",10);t<1&&(t=1),t>m&&(t=m),s&&s.goToPage(0,t)}}),(0,mu.jsx)("p",{className:HC,children:i("uiKit.dataLoader.rows",m)}),u&&(0,mu.jsx)(Gu,{mode:"slim",onClick:()=>{s&&s.showAll()},children:i("uiKit.dataLoader.all")})]})}VC.defaultProps={response:null,state:RC.INIT,store:null,pagination:{}};const KC=VC,$C="infinite_scroll_border_top",YC="infinite_scroll_border_bottom";function XC(e){let{response:n,children:a,to:s,from:i,state:o,store:r}=e;if(!n)return null;const l=(0,t.useRef)(null),{number:m,size:c,totalElements:u}=n,p=Math.ceil(u/c);if((0,t.useLayoutEffect)((()=>{const[e,t]=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=e,a=t;for(;n&&"HTML"!==n.tagName&&"BODY"!==n.tagName&&1===n.nodeType;){var s,i;const{overflowY:e}=(null===(s=document)||void 0===s||null===(i=s.defaultView)||void 0===i?void 0:i.getComputedStyle(n))||{};if("scroll"===e||"auto"===e)return[n,t];a+=n.offsetTop,n=n.parentNode}return[window,a]}(l.current),n=e=>{if(o!==RC.SUCCESS)return;const n=e.target===document?document.scrollingElement:e.target,{scrollTop:a,scrollHeight:s,clientHeight:i}=n;a<s-i-t-10||r&&r.canSendRequest&&m<p-1&&r.loadMore()};return e.addEventListener("scroll",n),()=>null===e||void 0===e?void 0:e.removeEventListener("scroll",n)}),[]),o===RC.ERROR)return(0,mu.jsx)(MC,{response:null===r||void 0===r?void 0:r.response});const d=[RC.LOADING_ALL,RC.LOADING_MORE].includes(o||""),h=t.Children.map(a,(e=>{if(!t.isValidElement(e))return e;const a=i?n[i]:n,o={[s||"response"]:a};return t.cloneElement(e,o)}));return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)("div",{className:$C}),(0,mu.jsxs)("div",{ref:l,children:[h,d&&(0,mu.jsx)(PC,{height:40})]}),(0,mu.jsx)("div",{className:YC})]})}XC.defaultProps={response:null,children:null,state:RC.INIT,to:null,from:null,store:null};const QC="load_more";function JC(e){let{response:t,state:n,store:a,className:s,title:i}=e;if(!t)return null;const{number:o,totalPages:r}=t;return n===RC.INIT||o>=r-1?null:[RC.LOADING_ALL,RC.LOADING_MORE].includes(n||"")?(0,mu.jsx)(PC,{height:40}):n===RC.ERROR?(0,mu.jsx)(MC,{response:null===a||void 0===a?void 0:a.response}):(0,mu.jsx)("div",{className:"".concat(QC," ").concat(s||""),onClick:()=>{a&&a.loadMore()},children:i||"\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0435\u0449\u0451"})}JC.defaultProps={response:null,className:"",title:"",state:RC.INIT,store:null};function ZC(e){let{content:t,pagination:n,query:a,mode:s,sort:i}=e;const o=Array.isArray(t)?t:[],r=a?o.filter((e=>e.name.toLowerCase().includes(null===a||void 0===a?void 0:a.toLowerCase()))):o,l=i&&null!==i&&void 0!==i&&i.length?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 s(e,t,n){return(e[n]||0).length-(t[n]||0).length}const i=null===e||void 0===e?void 0:e[0],o=t.map((e=>"string"===typeof i[e.property]?n:Array.isArray(i[e.property])?s:a)),r=t.length;return[...e].sort(((e,n)=>{for(let a=0;a<r;a++){const s=t[a],i=o[a](e,n,s.property);if(i)return i*s.direction}return 0}))}(r,i):r;if(!n||"print"===s)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:i||[],content:l||[]});const m=n.size||10,c=n.page||0,u=m*c,p=u+m,d=l.length,h={size:m,number:c,totalPages:Math.ceil(d/m),totalElements:d,sort:i||[],content:l.slice(u,p)||[]};return Promise.resolve(h)}function eS(e,t){return(n,a)=>ZC({content:e,pagination:n,sort:a,mode:t})}function tS(e){let{content:t,mode:n,watch:a,children:s}=e;return(0,mu.jsx)(qC,{loader:eS(t,n),watch:a,children:s})}function nS(e){let{response:t}=e;return t?(0,mu.jsxs)(Wp,{rows:(null===t||void 0===t?void 0:t.content)||[],children:[(0,mu.jsx)(zp,{template:_p.STRING,title:"uiKit.translation.modal.key",properties:"key",width:270}),(0,mu.jsx)(zp,{template:_p.STRING,title:"uiKit.translation.modal.value",properties:"value"}),(0,mu.jsx)(zp,{template:_p.STRING,properties:"valu2e",width:40})]}):null}nS.defaultProps={response:void 0};const aS=nS,sS=yi((()=>{const{t:e}=_u(),n=(0,t.useMemo)((()=>pu.getList()),[pu.isOpen]);return pu.isOpen?(0,mu.jsxs)(oC,{mode:"big",onClose:()=>{pu.hide()},children:[(0,mu.jsx)(aC,{children:e("uiKit.translation.modal.title")}),(0,mu.jsx)(sC,{children:(0,mu.jsxs)(qC,{loader:(e,t)=>{const a={...e,size:5};return ZC({content:n,pagination:a,sort:t})},children:[(0,mu.jsx)(aS,{}),(0,mu.jsx)(KC,{})]})}),(0,mu.jsxs)(iC,{children:[(0,mu.jsx)(Gu,{mode:"second",onClick:()=>{pu.hide()},children:e("uiKit.translation.modal.cancel")}),(0,mu.jsx)(Gu,{mode:"primary",onClick:()=>{const e=pu.export();wb(new Blob([e],{type:"text/plain;charset=windows-utf-8;"}),"translations.".concat(Ee.language,".txt")),Ku.show({title:"\u0420\u0435\u0436\u0438\u043c \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a\u0430",description:"\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u043e\u0432 \u0438\u043b\u0438 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0435\u0433\u043e",type:"info"})},children:e("uiKit.translation.modal.export")})]})]}):null})),iS=sS,oS="sidebar_logo";function rS(){return(0,mu.jsx)("div",{className:oS,children:(0,mu.jsx)(Nw,{})})}const lS="switch",mS="switch_item",cS="selected",uS="switch_item_icon",pS="switch_item_title";function dS(e){let{value:t,options:n,onChange:a}=e;const{t:s,text:i}=_u(),o=n.map((e=>{const n=i((null===e||void 0===e?void 0:e.title)||"");return(0,mu.jsxs)("div",{className:"".concat(mS," ").concat(t===(null===e||void 0===e?void 0:e.id)?cS:""),onClick:()=>{a&&a(null===e||void 0===e?void 0:e.id)},children:[(0,mu.jsx)("img",{className:uS,src:(null===e||void 0===e?void 0:e.icon)||"",alt:n||"",title:n||""}),(0,mu.jsx)("span",{className:pS,children:s((null===e||void 0===e?void 0:e.title)||"")})]},n)}));return(0,mu.jsx)("div",{className:lS,children:o})}dS.defaultProps={value:"",onChange:void 0};const hS=dS,gS="sidebar",fS="sidebar_title",yS="sidebar_item",vS="selected",_S="sidebar_item_icon",kS="sidebar_item_title";function bS(e){let{id:t,link:n,title:a,icon:s,isSelected:i}=e;const{t:o}=_u();return(0,mu.jsxs)(be,{className:"".concat(yS," ").concat(i?vS:""),to:n,id:"sidebar-menu-".concat(t),children:[(0,mu.jsx)("img",{className:_S,src:s}),(0,mu.jsx)("figcaption",{className:kS,children:o(a||"")})]},t)}bS.defaultProps={title:"",icon:"",isSelected:!1};const wS=bS;function xS(e){let{title:t}=e;const{t:n}=_u();return(0,mu.jsx)("div",{className:fS,children:n(t||"")})}xS.defaultProps={title:""};const TS=xS;const CS=function(e){let{type:t}=e;const{page:n,userId:a}=ee(),s="team"===t?pC.getMenuItems("t"):pC.getMenuItems("p"),i="team"===t?"":a||0,o=s.map(((e,t)=>{if(!e.id)return(0,mu.jsx)(TS,{},t);const a=n===e.id||!n&&"total"===e.id;return(0,mu.jsx)(wS,{id:e.id,link:"".concat(e.link).concat(i),title:e.title,icon:e.icon,isSelected:a},e.id)}));return(0,mu.jsx)(mu.Fragment,{children:o})},SS="scroll_up_button",jS="scroll_up_button_wrapper",DS="scroll_up_button_icon";function AS(){if(!window.scrollY)return;const e=.7*window.scrollY;window.scrollTo(0,e>20?e:0),setTimeout(AS,30)}const ES=function(){const[e,n]=(0,t.useState)(!1);return(0,t.useEffect)((()=>{function e(){n(window.scrollY>300)}return window.addEventListener("scroll",e),()=>{window.removeEventListener("scroll",e)}}),[window.scrollY]),e?(0,mu.jsx)("div",{className:SS,onClick:()=>{AS()},children:(0,mu.jsx)("div",{className:jS,children:(0,mu.jsx)("img",{className:DS,src:"./assets/list/arrow.svg"})})}):null},IS="sidebar_banner";function NS(){const{link:e,text:t,isOpenInNewTab:n}=ou.getBanner()||{};return n?(0,mu.jsx)(be,{to:e||"",target:"_blank",className:IS,children:"\u043f\u0440\u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0435 ".concat(t)}):null}const PS=[{id:"team",title:"sidebar.switch.team",icon:"./assets/switch/team.svg"},{id:"person",title:"sidebar.switch.person",icon:"./assets/switch/person.svg"}];pC.getMenuItems("t"),pC.getMenuItems("p");const RS=function(){const{type:e}=ee(),t=Z(),n=e||"team";return(0,mu.jsxs)("aside",{className:gS,children:[(0,mu.jsx)(rS,{}),(0,mu.jsx)(hS,{value:n,options:PS,onChange:n=>{n!==e&&t("/".concat(n,"person"===n?"/total/0":"/total"))}}),(0,mu.jsx)(CS,{type:n}),(0,mu.jsx)(NS,{}),(0,mu.jsx)(ES,{})]})},OS={header:"header",header_wrapper:"header_wrapper",header_title:"header_title",header_icon:"header_icon",header_language:"header_language",header_currency:"header_currency",header_with_tab:"header_with_tab",header_print:"header_print",header_setting:"header_setting"};const LS=function(e){let{text:t}=e;const{t:n}=_u(),a=n(t||"plugin.team_total.sidebar");return(0,mu.jsx)("h2",{className:OS.header_title,children:a})},MS="header_filters",FS="header_filters_input",WS="header_filters_fast",qS="header_filters_fast_button";const zS=function(e){let{title:t,type:n}=e;const{t:a}=_u();return(0,mu.jsx)("button",{className:qS,onClick:()=>{jT.setFilterByDateType(n),PT.updateStatistic()},children:a(t)})},BS=yi((e=>{var t;let{type:n,placeholder:a}=e;return(0,mu.jsx)("input",{type:"date",placeholder:a||"",value:null!==(t=jT[n])&&void 0!==t?t:"",className:FS,onChange:e=>{jT.updateProperty(n,e.target.value),PT.updateStatistic()}})})),US=BS;const HS=function(){return(0,mu.jsxs)("div",{className:MS,children:[(0,mu.jsx)(US,{type:"from",placeholder:"\u0441"})," \u2014 ",(0,mu.jsx)(US,{type:"to",placeholder:"\u043f\u043e"}),(0,mu.jsxs)("div",{className:WS,children:[(0,mu.jsx)(zS,{title:"sidebar.filters.all",type:"all"}),(0,mu.jsx)(zS,{title:"sidebar.filters.year",type:"year"}),(0,mu.jsx)(zS,{title:"sidebar.filters.halfYear",type:"halfYear"}),(0,mu.jsx)(zS,{title:"sidebar.filters.month",type:"month"}),(0,mu.jsx)(zS,{title:"sidebar.filters.week",type:"week"})]})]})},GS=yi((()=>{const{text:e}=_u(),t=Z(),n=J(),a=so.config.languages,s=pC.getMenuItems().find((e=>(null===e||void 0===e?void 0:e.link)===(null===n||void 0===n?void 0:n.pathname)))||{},i=pC.getHeaderItems().filter((e=>e.title)).map((a=>{var s;return(0,mu.jsx)("img",{alt:e(a.title||""),title:e(a.title||""),className:OS.header_icon,src:a.icon,onClick:null===a||void 0===a||null===(s=a.onClick)||void 0===s?void 0:s.call(a,t,n)},a.id)}));return(0,mu.jsx)("header",{className:OS.header,children:(0,mu.jsxs)("div",{className:OS.header_wrapper,children:[(0,mu.jsx)(LS,{text:null===s||void 0===s?void 0:s.title}),(0,mu.jsx)(HS,{}),(0,mu.jsx)(Yx,{className:OS.header_language,value:pu.language||"ru",options:a,onChange:(e,t)=>{const n=a.find((e=>e.id===t));so.updateConfigProperty("language",null===n||void 0===n?void 0:n.language),so.updateConfigProperty("currency",null===n||void 0===n?void 0:n.currency),Ee.language=t,Ee.updateLangAttribute(),pu.setLanguage(Ee.language),t===Ue?localStorage.removeItem("language"):localStorage.setItem("language",t)}}),(0,mu.jsx)(Yx,{className:OS.header_currency,value:so.config.currency,options:[{id:"USD",title:"USD"},{id:"EUR",title:"EUR"},{id:"RUB",title:"RUB"},{id:"CNY",title:"CNY"},{id:"ILS",title:"ILS"},{id:"JPY",title:"JPY"},{id:"KRW",title:"KRW"},{id:"INR",title:"INR"}],onChange:(e,t)=>{so.updateConfigProperty("currency",t)}}),i]})})})),VS=GS,KS="ui_kit_tabs",$S="ui_kit_tabs_item",YS="ui_kit_tabs_item_selected",XS=t.forwardRef(((e,t)=>{let{value:n,options:a,onChange:s}=e;const{t:i}=_u(),o=n||0===n||!1===n,r=(a||[]).map(((e,a)=>{var r,l;const m="object"!==typeof e?{id:e,title:e}:e,c=o&&n===(null===m||void 0===m?void 0:m.id),u=null!==(r=null!==(l=i(null===m||void 0===m?void 0:m.title))&&void 0!==l?l:null===m||void 0===m?void 0:m.id)&&void 0!==r?r:"";return(0,mu.jsx)("button",{className:c?"".concat($S," ").concat(YS):$S,onClick:e=>{s(m);const n=null===e||void 0===e?void 0:e.target,a=null===t||void 0===t?void 0:t.current,i=((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)-i},children:u},"".concat(null===m||void 0===m?void 0:m.id,"_").concat(a))}));return(0,mu.jsx)("div",{ref:t,className:"".concat(KS," scroll_x"),children:r})}));XS.displayName="UiKitTabs";const QS=XS;const JS=function(){const e=(0,t.useRef)(),n=Z(),{type:a,page:s,userId:i}=ee(),o=("team"===a?pC.getMenuItems("t"):pC.getMenuItems("p")).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,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)("header",{className:OS.header_with_tab,children:(0,mu.jsx)(QS,{ref:e,value:s,options:o,onChange:e=>{const t="person"===a?"".concat(e.link).concat(i):e.link;n(t)}})}),(0,mu.jsx)("div",{className:OS.light_header_gap})]})},ZS="footer",ej="footer_hidden",tj="footer_wrapper",nj="footer_gap",aj="footer_button",sj="footer_button_selected",ij="footer_button_text",oj="footer_button_icon";const rj=function(e){let{title:t,icon:n,isSelected:a,onClick:s}=e;return(0,mu.jsxs)("figure",{className:"".concat(aj," ").concat(a?sj:""),onClick:s,children:[(0,mu.jsx)("div",{className:oj,style:{backgroundImage:"url(".concat(n,")")}}),(0,mu.jsx)("figcaption",{className:ij,children:t})]})};const lj=function(){const e=Z(),{type:n,page:a}=ee(),[s,i]=(0,t.useState)(!0),{text:o}=_u();(0,t.useEffect)((()=>function(e,t){let n=window.scrollY,a=e;function s(){const e=n>window.scrollY||window.scrollY<150;n=window.scrollY,e!==a&&(a=e,t(e))}return document.addEventListener("scroll",s),()=>{document.removeEventListener("scroll",s)}}(s,i)),[]);const r=function(e){const{text:t}=_u();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:t("common.title"),text:"",url:window.location.href})}},{id:"settings",title:"sidebar.buttons.logout",icon:"./assets/menu/logout.svg",onClick(){rC.open({title:t("sidebar.buttons.logoutQuestion")}).then((()=>{PT.exit(),e("/"),AT.toggle(DT.WELCOME)}))}}].filter((e=>e))}(e),l=r.find((e=>a===e.id))||r.find((e=>n===e.id)),m=r.map((e=>(0,mu.jsx)(rj,{icon:e.icon,title:o(e.title),isSelected:(null===l||void 0===l?void 0:l.id)===e.id,onClick:e.onClick},e.id)));return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)("div",{className:nj}),(0,mu.jsx)("div",{className:"".concat(ZS," ").concat(s?"":ej),children:(0,mu.jsx)("nav",{className:tj,children:m})})]})},mj="page_wrapper",cj="page_wrapper_header",uj="page_wrapper_main",pj="page_wrapper_main_mobile",dj="page_wrapper_main_fullscreen";function hj(e){let{children:n}=e;const{type:a,page:s}=ee(),i=(0,t.useMemo)((()=>pC.getPages("global")),[pC]),o="team"===a&&"building"===s?{padding:0}:{};return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsxs)("div",{className:mj,children:[(0,mu.jsx)("div",{className:pj,style:o,children:n}),(0,mu.jsx)(JS,{}),i,(0,mu.jsx)(DC,{}),(0,mu.jsx)(lj,{})]}),(0,mu.jsx)("div",{className:cj})]})}const gj=yi((e=>{let{children:n}=e;const{type:a,page:s}=ee(),i=(0,t.useMemo)((()=>pC.getPages("global")),[pC]),o="team"===a&&"building"===s?{padding:0}:{};return Ab.isOpen?(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)("div",{className:dj,style:o,children:n}),(0,mu.jsx)(DC,{})]}):(0,mu.jsxs)("div",{className:mj,children:[(0,mu.jsx)(RS,{}),(0,mu.jsx)(VS,{}),(0,mu.jsx)("div",{className:uj,style:o,children:n}),i,(0,mu.jsx)(DC,{}),(0,mu.jsx)(EC,{}),(0,mu.jsx)(iS,{})]})}));function fj(e){let{children:n}=e;const[a,s]=(0,t.useState)(Db);return(0,t.useEffect)((()=>{function e(){s(window.innerWidth<700||Db)}return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)}),[]),a?(0,mu.jsx)(hj,{children:n}):(0,mu.jsx)(gj,{children:n})}fj.defaultProps={selectedMenuItem:""};const yj=fj;const vj="slider_exit_left",_j="slider_exit_right",kj="slider_entrance_left",bj="slider_entrance_right";function wj(e){let{getViewById:n}=e;const{type:a,page:s}=ee(),i=s||"total",[o,r]=(0,t.useState)(i),[l,m]=(0,t.useState)([]),c="team"===a?pC.getMenuItems("t"):pC.getMenuItems("p");if((0,t.useEffect)((()=>{!function(e,t,n,a,s){const i=n.map((e=>e.id)).indexOf(e),o=n.map((e=>e.id)).indexOf(t)<i?[vj,bj]:[_j,kj],[r,l]=o;s([t,r]),setTimeout((()=>{s([e||"",l])}),250),setTimeout((()=>{s([]),a(e||"")}),500),setTimeout((()=>{document.body.scrollIntoView()}),600)}(s||"",o,c,r,m)}),[s]),!l.length)return n(s);const[u,p]=l;return(0,mu.jsx)("div",{className:p,children:n(u)})}function xj(e){let{getViewById:t}=e;const{page:n}=ee();return t(n||"total")}function Tj(e){let{getViewById:t}=e;return Db?(0,mu.jsx)(wj,{getViewById:t}):(0,mu.jsx)(xj,{getViewById:t})}const Cj=new class{constructor(){this.isOpen=!1,this.navigate=null,this.prevUrl="",this.processing=!1,Ja(this,{isOpen:fn,processing:fn,open:_a,close:_a,printPage:_a,printSection:_a,printAllPages:_a,triggerPrint:_a,endPrint:_a})}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=""}},Sj=yi((e=>{let t,{page:n}=e;return Ab.isOpen&&(t="fullscreen"),Cj.processing&&(t="print"),pC.getPage("/team/".concat(n),{mode:t})}));function jj(){const{type:e}=ee();return e&&"team"!==e?null:(0,mu.jsx)(Tj,{getViewById:e=>(0,mu.jsx)(Sj,{page:e})})}const Dj="table_filters",Aj="table_filters_item";function Ej(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:no({from:t.timestamp,to:n.timestamp})}}))}const Ij=yi((e=>{let{filters:n,onChange:a}=e;const{text:s}=_u(),i=PT.statisticsByCommits.timestamp.totalInfo.allCommitsByTimestamp||[],o=(0,t.useMemo)((()=>Ej(i)),[i]),r=PT.statisticsByCommits.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}(r,s)),[r]);return(0,mu.jsxs)("div",{className:Dj,children:[(0,mu.jsx)(Qx,{title:"page.team.tree.filters.author",value:n.user,className:Aj,options:l,onChange:e=>{a({...n,user:e})}}),(0,mu.jsx)(Qx,{reverse:!0,title:"page.team.tree.filters.author",value:n.week||i[i.length-1].week,className:Aj,options:o.reverse(),onChange:e=>{a({...n,week:e})}})]})})),Nj=Ij,Pj=yi((e=>{let{filters:n,onChange:a}=e;const{type:s,page:i,userId:o}=ee(),r=Z(),l=parseInt(o||"0",10)||0,m=PT.statisticsByCommits.author.list.map(((e,t)=>({id:t,title:e}))),c=PT.statisticsByCommits.timestamp.totalInfo.allCommitsByTimestamp||[],u=(0,t.useMemo)((()=>Ej(c)),[c]);return(0,mu.jsxs)("div",{className:Dj,children:[(0,mu.jsx)(Qx,{title:"page.team.tree.filters.author",value:l,className:Aj,options:m,onChange:e=>{r("/".concat(s,"/").concat(i,"/").concat(e))}}),"day"===i?(0,mu.jsx)(Qx,{reverse:!0,title:"page.team.tree.filters.author",value:(null===n||void 0===n?void 0:n.week)||c[c.length-1].week,className:Aj,options:u.reverse(),onChange:e=>{a({...n,week:e})}}):null]})})),Rj=Pj;const Oj=yi((e=>{let{userId:n}=e;const{type:a,page:s,userId:i}=ee(),o=PT.statisticsByCommits.timestamp.totalInfo.allCommitsByTimestamp||[],r=o.length?o[o.length-1].week:0,[l,m]=(0,t.useState)({week:r}),c=parseInt(i||"0",10)||0,u=PT.statisticsByCommits.author.totalInfo[n||c||0];if("person"!==a||!u)return null;const p=function(e,t){return function(n){let a;return Ab.isOpen&&(a="fullscreen"),Cj.processing&&(a="print"),pC.getPage("/person/".concat(n),{user:e,mode:a,filters:t})}}(u,l);return(0,mu.jsxs)(mu.Fragment,{children:["print"!==s&&(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(sx,{title:"common.filters"}),(0,mu.jsx)(Rj,{filters:l,onChange:m})]}),(0,mu.jsx)(Tj,{getViewById:p})]})})),Lj=Oj,Mj="welcome",Fj="welcome_console",Wj="welcome_row",qj="welcome_warning",zj="welcome_warning_text",Bj="welcome_description",Uj="welcome_first_title",Hj="welcome_last_title",Gj="welcome_title_link";function Vj(){return(0,mu.jsxs)("div",{className:qj,children:[(0,mu.jsx)(bw,{translationId:"page.welcome.warning1",className:zj}),(0,mu.jsx)(bw,{translationId:"page.welcome.warning2",className:zj})]})}const Kj=function(){return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(Vj,{}),(0,mu.jsx)("section",{className:Mj,children:(0,mu.jsxs)("div",{className:Wj,children:[(0,mu.jsx)("h2",{className:Uj,children:Ie("page.welcome.step1")}),(0,mu.jsx)(tp,{className:Fj,textForCopy:'git --no-pager log --raw --numstat --oneline --all --reverse --date=iso-strict --pretty=format:"%ad>%aN>%aE>%s" > log.txt\n'}),(0,mu.jsx)(bw,{translationId:"page.welcome.description",className:Bj}),(0,mu.jsxs)("h2",{className:Hj,children:["page.welcome.step2"===Ie("page.welcome.step2")?"":Ie("page.welcome.step2"),(0,mu.jsxs)("label",{className:Gj,children:[Ie("page.welcome.step3"),(0,mu.jsx)("input",{multiple:!0,type:"file",style:{display:"none"},onChange:async e=>{const t=Array.from(e.target.files),n=OT(await LT(t));PT.asyncSetCommits(n)}})]}),Ie("page.welcome.step4")]})]})})]})},$j="recommendations_card",Yj="recommendations_card_for_print",Xj="recommendations_card_title",Qj="recommendations_card_icon",Jj="recommendations_card_button",Zj="recommendations_card_info",eD="recommendations_card_fact",tD="recommendations_card_warning",nD="recommendations_card_error",aD="recommendations_card_banner";const sD=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={[ho]:Zj,[po]:eD,[uo]:tD,[co]:nD}[n||ho])&&void 0!==t?t:eD}(n),s=dC(n),i=null===n||void 0===n||null===(t=n.arguments)||void 0===t?void 0:t.title,o=hC(n);return(0,mu.jsxs)("div",{className:"".concat($j," ").concat(Yj," ").concat(a),children:[(0,mu.jsxs)("h5",{className:Xj,children:[(0,mu.jsx)("span",{className:Qj}),Ee.get(s,i)]}),(0,mu.jsx)(bw,{style:{color:"#12131B"},text:o})]})},iD={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",achievement_publicity:"achievement_publicity"};const oD=function(e){let{code:t}=e;const{t:n}=_u();if(!Ai[t])return null;const a=[iD.achievement_good,iD.achievement_middle,iD.achievement_bad,iD.achievement_publicity][Ai[t]-1];return(0,mu.jsxs)("div",{className:iD.achievement,children:[(0,mu.jsx)("div",{className:iD.achievement_icon_container,children:(0,mu.jsx)("div",{className:"".concat(iD.achievement_icon," ").concat(a||""),children:(0,mu.jsx)("img",{alt:"",className:iD.achievement_icon_svg,src:"./assets/achievements/".concat(t,".svg")})})}),(0,mu.jsx)("div",{className:iD.achievement_title,children:n("achievements.".concat(t,".title"))}),(0,mu.jsx)("div",{className:iD.achievement_description,children:n("achievements.".concat(t,".description"))})]})};function rD(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}):rD(a,t)}return t}const lD=function(){const e=Ee.translations.get(Ee.language),t=rD(null===e||void 0===e?void 0:e.recommendations).map((e=>(0,mu.jsx)(sD,{recommendation:e},e[1]))),n=Object.entries(Ai).sort(((e,t)=>e[1]-t[1])).map((e=>{let[t]=e;return(0,mu.jsx)(oD,{code:t},t)}));return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(sx,{title:"page.person.achievement.title"}),(0,mu.jsx)("div",{style:{columnCount:3,marginBottom:"24px"},children:n}),(0,mu.jsx)("section",{children:t})]})};function mD(){return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(lC,{}),(0,mu.jsxs)(pe,{children:[(0,mu.jsx)(ce,{path:"/settings",element:(0,mu.jsx)(yj,{children:pC.getPage("/settings")})}),(0,mu.jsx)(ce,{path:"/debug",element:(0,mu.jsx)(yj,{children:(0,mu.jsx)(lD,{})})}),(0,mu.jsx)(ce,{path:"/print",element:(0,mu.jsx)(yj,{children:pC.getPage("/print")})}),(0,mu.jsx)(ce,{path:"/:type/:page",element:(0,mu.jsx)(yj,{children:(0,mu.jsx)(jj,{})})}),(0,mu.jsx)(ce,{path:"/:type/:page/:userId",element:(0,mu.jsx)(yj,{children:(0,mu.jsx)(Lj,{})})}),(0,mu.jsx)(ce,{path:"*",element:(0,mu.jsx)(yj,{children:(0,mu.jsx)(jj,{})})})]})]})}function cD(){return(0,mu.jsx)(pe,{children:(0,mu.jsx)(ce,{path:"*",element:(0,mu.jsx)(Kj,{})})})}let uD=1;const pD=yi((()=>{const e=AT.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&&uD!==(null===t||void 0===t?void 0:t.length)?(uD=null===t||void 0===t?void 0:t.length,PT.asyncSetCommits(t)):AT.toggle(DT.WELCOME)}),[]),(0,t.useEffect)((()=>{e!==DT.INFO||window.location.hash||(window.location.hash="#/team/total")}),[e]),e===DT.EMPTY?null:(0,mu.jsxs)(mu.Fragment,{children:[e===DT.WELCOME&&(0,mu.jsx)(cD,{}),e===DT.INFO&&(0,mu.jsx)(mD,{}),(0,mu.jsx)(tx,{}),(0,mu.jsx)(WT,{onChange:(e,t)=>{"dump"===e&&PT.asyncSetCommits(t)}})]})})),dD=pD,hD="notifications",gD="notifications_item",fD="notifications_item_success",yD="notifications_item_info",vD="notifications_item_warning",_D="notifications_item_error",kD="notifications_item_title",bD="notifications_item_description";const wD=function(e){let{message:t}=e;const n={error:_D,warning:vD,success:fD,info:yD}[t.type||"success"]||yD;return(0,mu.jsxs)("div",{className:"".concat(gD," ").concat(n),children:[t.title&&(0,mu.jsx)("h6",{className:kD,children:t.title}),t.description&&(0,mu.jsx)("p",{className:bD,children:t.description})]})},xD=yi((()=>{const e=Ku.messages.map((e=>(0,mu.jsx)(wD,{message:e},e.id)));return Qs.createPortal((0,mu.jsx)("div",{className:hD,children:e}),document.body)}));function TD(e){return Array.isArray(e)&&null!==e&&void 0!==e&&e.length?e:void 0}function CD(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n={title:"",language:"",languages:[{id:"ar",currency:"AED",title:"\u0627\u0644\u0639\u064e\u0631\u064e\u0628\u0650\u064a\u064e\u0651\u0629"},{id:"de",currency:"EUR",title:"Deutsch"},{id:"en",currency:"USD",title:"English"},{id:"es",currency:"EUR",title:"Espa\xf1ol"},{id:"fr",currency:"EUR",title:"Fran\xe7ais"},{id:"he",currency:"ILS",title:"\u05e2\u05d1\u05e8\u05d9\u05ea"},{id:"hi",currency:"INR",title:"\u0939\u093f\u0902\u0926\u0940"},{id:"ja",currency:"JPY",title:"\u65e5\u672c\u8a9e"},{id:"ko",currency:"KRW",title:"\ud55c\uad6d\uc5b4"},{id:"pt",currency:"EUR",title:"Portugu\xeas"},{id:"ru",currency:"RUB",title:"\u0420\u0443\u0441\u0441\u043a\u0438\u0439"},{id:"zh",currency:"CNY",title:"\u4e2d\u6587"}],ref:"",urlForCss:"",urlForGitLog:"",prefixForTask:"https://jira.com/secure/RapidBoard.jspa?task=",prefixForPR:"https://bitbucket.com/projects/assayo/repos/frontend/pull-requests/",middleSalaryInMonth:3e3,workDays:[!0,!0,!0,!0,!0,!1,!1],currency:"RUB",exchangeRate:{USD:1,EUR:.9,RUB:82,CNY:7,JPY:160,KRW:1500,CAD:1.4,INR:92,ILS:3.1,AED:3.6},permissions:[],disabledPermissions:[],plugins:["person_achievements","person_money","person_month","person_vacation","person_speed","person_total","person_week","team_author","team_building","team_commits","team_companies","team_country","team_vacation","team_day","team_departments","team_file_analytics","team_files","team_hours","team_month","team_pull_requests","team_recommendations","team_refactor","team_release","team_scope","team_server","team_tasks","team_total","team_types","team_weeks","print","sponsor","settings"],disabledPlugins:[]};return{title:decodeURIComponent((null===e||void 0===e?void 0:e.title)||"")||(null===t||void 0===t?void 0:t.title)||(null===n||void 0===n?void 0:n.title)||"",ref:(null===e||void 0===e?void 0:e.ref)||(null===t||void 0===t?void 0:t.ref)||(null===n||void 0===n?void 0:n.ref)||"",language:(null===e||void 0===e?void 0:e.lang)||(null===e||void 0===e?void 0:e.language)||(null===t||void 0===t?void 0:t.language)||(null===n||void 0===n?void 0:n.language)||"",languages:(null===t||void 0===t?void 0:t.languages)||(null===n||void 0===n?void 0:n.languages)||[],prefixForTask:(null===t||void 0===t?void 0:t.prefixForTask)||(null===n||void 0===n?void 0:n.prefixForTask)||"",prefixForPR:(null===t||void 0===t?void 0:t.prefixForPR)||(null===n||void 0===n?void 0:n.prefixForPR)||"",middleSalaryInMonth:(null===t||void 0===t?void 0:t.middleSalaryInMonth)||(null===n||void 0===n?void 0:n.middleSalaryInMonth)||0,workDays:(null===t||void 0===t?void 0:t.workDays)||(null===n||void 0===n?void 0:n.workDays),currency:(null===t||void 0===t?void 0:t.currency)||(null===n||void 0===n?void 0:n.currency),exchangeRate:(null===t||void 0===t?void 0:t.exchangeRate)||(null===n||void 0===n?void 0:n.exchangeRate)||{},urlForCss:(null===e||void 0===e?void 0:e.style)||(null===e||void 0===e?void 0:e.theme)||(null===t||void 0===t?void 0:t.urlForCss)||(null===n||void 0===n?void 0:n.urlForCss)||"",urlForGitLog:(null===e||void 0===e?void 0:e.dump)||(null===e||void 0===e?void 0:e.log)||(null===t||void 0===t?void 0:t.urlForGitLog)||(null===n||void 0===n?void 0:n.urlForGitLog)||"",permissions:TD(null===t||void 0===t?void 0:t.permissions)||TD(null===n||void 0===n?void 0:n.permissions)||[],disabledPermissions:TD(null===t||void 0===t?void 0:t.disabledPermissions)||TD(null===n||void 0===n?void 0:n.disabledPermissions)||[],plugins:TD(null===t||void 0===t?void 0:t.plugins)||TD(null===n||void 0===n?void 0:n.plugins)||[],disabledPlugins:TD(null===t||void 0===t?void 0:t.disabledPlugins)||TD(null===n||void 0===n?void 0:n.disabledPlugins)||[]}}function SD(e){return Object.fromEntries(new URLSearchParams(e||"").entries())}function jD(e,t){"."===(null===e||void 0===e?void 0:e[0])?function(e,t){const n=document.createElement("script");n.src=e,n.async=!0,n.onload=t,n.onerror=()=>{Ku.show("common.fileLoader.notification")},document.body.appendChild(n)}(e,t):function(e,t){fetch(e).then((e=>e.text())).then((e=>{OT(e||""),t()}))}(e,t)}const DD="page_wrapper_print_icon",AD=yi((()=>{const{t:e}=_u();return Cj.isOpen?(0,mu.jsxs)(oC,{onClose:()=>{Cj.close()},children:[(0,mu.jsx)(aC,{children:(0,mu.jsx)("div",{style:{textAlign:"center"},children:e("plugin.print.modal.title")})}),(0,mu.jsxs)(sC,{children:[(0,mu.jsx)("img",{src:"./assets/cards/print.svg",className:DD}),(0,mu.jsx)(Gu,{mode:["primary","full_size"],onClick:()=>{Cj.printPage()},children:e("plugin.print.modal.page")}),(0,mu.jsx)(Gu,{mode:["primary","full_size"],onClick:()=>{Cj.printSection()},children:e("plugin.print.modal.type")}),(0,mu.jsx)(Gu,{mode:["primary","full_size"],onClick:()=>{Cj.printAllPages()},children:e("plugin.print.modal.all")}),(0,mu.jsx)(Gu,{mode:["second","full_size"],onClick:()=>{Cj.close()},children:e("plugin.print.modal.cancel")})]})]}):null})),ED=AD,ID="table_of_contents",ND="table_of_contents_title",PD="table_of_contents_item";const RD=function(e){let{titles:t}=e;const{t:n}=_u(),a=(t||[]).map((e=>(0,mu.jsx)("a",{className:PD,href:"#".concat(e),children:n(e||"")},e)));return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(sx,{className:ND,title:"page.print.tableOfContents"}),(0,mu.jsx)("nav",{className:ID,children:a})]})},OD="plugin_print_title",LD="plugin_print_sub_title",MD=yi((e=>{let{user:t}=e;const{t:n}=_u(),a=pC.getMenuItems("p").filter((e=>e.title)),s=a.map((e=>e.title)),i={user:t,mode:"print"},o=a.map((e=>(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(sx,{title:e.title}),pC.getPage(e.link.substring(0,e.link.length-1),i)]})));return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)("h1",{className:OD,children:n("plugin.print.title")}),(0,mu.jsx)("h2",{className:LD,children:t.author}),(0,mu.jsx)(RD,{titles:s}),(0,mu.jsx)(bw,{translationId:"plugin.print.description"}),o]})})),FD=MD,WD=["/team/files","/team/removedFiles","/team/recommendations","/team/building"],qD=yi((()=>{const{t:e}=_u(),t=pC.getMenuItems("t").filter((e=>e.title&&!WD.includes(e.link))),n=t.map((e=>e.title)),a={mode:"print"},s=t.map((e=>(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(sx,{title:e.title}),pC.getPage(e.link,a)]})));return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)("h1",{className:OD,children:e("plugin.print.title")}),(0,mu.jsx)("h2",{className:LD,children:document.title}),(0,mu.jsx)(RD,{titles:n}),(0,mu.jsx)(bw,{translationId:"plugin.print.description"}),s]})})),zD=qD,BD=yi((()=>{const e=PT.statisticsByCommits.author.totalInfo,t=Object.entries(e).filter((e=>{let[,t]=e;return!t.isStaff})).map((e=>{let[t,n]=e;return(0,mu.jsx)(FD,{user:n},t)}));return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(zD,{}),t]})})),UD=BD,HD={ar:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",de:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",en:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",es:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",fr:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",he:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",hi:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",ja:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",ko:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",pt:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",ru:"\n\xa7 plugin.print.sidebar: \u041f\u0435\u0447\u0430\u0442\u044c\n\xa7 plugin.print.modal.title: \u0427\u0442\u043e \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u044b\u0432\u0430\u0435\u043c?\n\xa7 plugin.print.modal.page: \u0422\u0435\u043a\u0443\u0449\u0443\u044e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443\n\xa7 plugin.print.modal.type: \u0422\u0435\u043a\u0443\u0449\u0438\u0439 \u0440\u0430\u0437\u0434\u0435\u043b\n\xa7 plugin.print.modal.all: \u0412\u0441\u044e \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0443\n\xa7 plugin.print.modal.cancel: \u041e\u0442\u043c\u0435\u043d\u0430\n\xa7 plugin.print.tableOfContents: \u041e\u0433\u043b\u0430\u0432\u043b\u0435\u043d\u0438\u0435\n\xa7 plugin.print.title: \u041e\u0442\u0447\u0451\u0442 \u043f\u043e git-\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044e\n\xa7 plugin.print.sub_title: \xab$1\xbb\n\xa7 plugin.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",zh:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n"};class GD{getHeaderItems(){return[{id:"print",link:"/person/changes/",title:"plugin.print.sidebar",icon:"./assets/menu/print.svg",onClick:(e,t)=>()=>{Cj.open(e,t.pathname)}}]}getMenuItems(){return[]}getPage(e,t){return{"/person/print":(0,mu.jsx)(FD,{user:null===t||void 0===t?void 0:t.user}),"/team/print":(0,mu.jsx)(zD,{}),"/print":(0,mu.jsx)(UD,{}),global:(0,mu.jsx)(ED,{})}[e]}getTranslations(){return HD}}GD.id="print";const VD="sponsor_title",KD="sponsor_body",$D="sponsor_text",YD="sponsor_footer",XD="sponsor_button",QD="sponsor_button_wrapper";const JD=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="",s="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(s),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(s),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,mu.jsx)(be,{className:XD,to:n,target:"_blank",children:t},t)}));return(0,mu.jsx)("div",{className:QD,children:e})},ZD=0,eA=2;const tA=new class{constructor(){this.type=ZD,Ja(this,{type:fn,close:_a});"localhost"===window.location.hostname||Db||ou.getBanner()||this.setTimer()}setTimer(){setInterval((()=>{this.type||(this.type=eA)}),42e4)}close(){this.type=ZD}},nA=yi((()=>{const{t:e}=_u(),t=Ee.get("page.sponsor.share.description");return(0,mu.jsxs)(oC,{delay:10,onClose:()=>{tA.close()},children:[(0,mu.jsx)(aC,{className:VD,children:e("page.sponsor.title")}),(0,mu.jsxs)(sC,{className:KD,children:[(0,mu.jsx)("p",{className:$D,children:fw(t)}),(0,mu.jsx)(JD,{})]}),(0,mu.jsx)(iC,{className:YD,children:(0,mu.jsx)(Gu,{mode:["primary","full_size"],onClick:()=>{$u("https://github.com/bakhirev/assayo"),Ku.show(Ee.get("uiKit.console.notification"))},children:e("page.sponsor.share.button")})})]})})),aA=nA,sA=yi((()=>tA.type===eA?(0,mu.jsx)(aA,{}):null));class iA{getPage(e){return"global"===e?(0,mu.jsx)(sA,{}):void 0}}iA.id="sponsor";const oA={ar:"\n\xa7 plugin.settings.sidebar: \u0627\u0644\u0625\u0639\u062f\u0627\u062f\u0627\u062a\n\xa7 plugin.settings.document.title: \u0625\u0639\u062f\u0627\u062f\u0627\u062a \u0627\u0644\u0639\u0631\u0636\n\xa7 plugin.settings.document.name: \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0635\u0641\u062d\u0629\n\xa7 plugin.settings.document.language: \u0644\u063a\u0629 \u0648\u0627\u062c\u0647\u0629 \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645\n\xa7 plugin.settings.document.translations: \u0648\u0636\u0639 \u0627\u0644\u0645\u062a\u0631\u062c\u0645\n\xa7 plugin.settings.document.depersonalize: \u0625\u062e\u0641\u0627\u0621 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0627\u0644\u0634\u062e\u0635\u064a\u0629\n\xa7 plugin.settings.links.title: \u0628\u0627\u062f\u0626\u0627\u062a \u0627\u0644\u0631\u0648\u0627\u0628\u0637\n\xa7 plugin.settings.links.task: \u0644\u0645\u0639\u0631\u0651\u0641\u0627\u062a task\n\xa7 plugin.settings.links.pr: \u0644\u0640 PR\n\xa7 plugin.settings.mailmap.title: \u062f\u0645\u062c \u0627\u0644\u0645\u0648\u0638\u0641\u064a\u0646\n\xa7 plugin.settings.mailmap.description1: \u0644\u062a\u062c\u0645\u064a\u0639 commits \u0627\u0644\u062a\u064a \u0623\u064f\u0646\u0634\u0626\u062a \u0645\u0646 \u062d\u0633\u0627\u0628\u0627\u062a \u0645\u062e\u062a\u0644\u0641\u0629 \u0644\u0646\u0641\u0633 \u0627\u0644\u0645\u0648\u0638\u0641\u060c \u0623\u0646\u0634\u0626 \u0645\u0644\u0641\u064b\u0627 \u0646\u0635\u064a\u064b\u0627 \u0628\u0633\u064a\u0637\u064b\u0627 \u0628\u0627\u0633\u0645 \u201c.mailmap\u201d \u0641\u064a \u062c\u0630\u0631 \u0627\u0644\u0645\u0634\u0631\u0648\u0639. \u0641\u064a\u0645\u0627 \u064a\u0644\u064a \u0645\u062b\u0627\u0644 \u0644\u0643\u064a\u0641\u064a\u0629 \u0645\u0644\u0621 \u0647\u0630\u0627 \u0627\u0644\u0645\u0644\u0641 \u0627\u0633\u062a\u0646\u0627\u062f\u064b\u0627 \u0625\u0644\u0649 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0627\u0644\u062d\u0627\u0644\u064a\u0629.\n\xa7 plugin.settings.mailmap.description2: \u0628\u0639\u062f \u0630\u0644\u0643\u060c \u0627\u062d\u0641\u0638 logs \u0645\u0631\u0629 \u0623\u062e\u0631\u0649. \u0639\u0646\u062f \u062f\u0645\u062c \u0627\u0644\u062d\u0633\u0627\u0628\u0627\u062a\u060c \u0645\u0646 \u0627\u0644\u0645\u0631\u062c\u0651\u062d \u0623\u0646 \u062a\u0641\u0642\u062f \u0627\u0644\u062a\u062d\u0644\u064a\u0644\u0627\u062a \u0627\u0644\u062a\u0641\u0635\u064a\u0644\u064a\u0629 \u0641\u064a \u0642\u0633\u0645 \u201cemail addresses\u201d \u0628\u0639\u0636 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a. \u0647\u0630\u0627 \u0623\u0645\u0631 \u0637\u0628\u064a\u0639\u064a.\n",de:"\n\xa7 plugin.settings.sidebar: Einstellungen\n\xa7 plugin.settings.document.title: Anzeigeeinstellungen\n\xa7 plugin.settings.document.name: Seitentitel\n\xa7 plugin.settings.document.language: UI-Sprache\n\xa7 plugin.settings.document.translations: \xdcbersetzermodus\n\xa7 plugin.settings.document.depersonalize: Personenbezogene Daten ausblenden\n\xa7 plugin.settings.links.title: Link-Pr\xe4fixe\n\xa7 plugin.settings.links.task: F\xfcr Task-IDs\n\xa7 plugin.settings.links.pr: F\xfcr PR\n\xa7 plugin.settings.mailmap.title: Mitarbeiter-Zusammenf\xfchrung\n\xa7 plugin.settings.mailmap.description1: Um commits zu gruppieren, die von verschiedenen Accounts desselben Mitarbeiters erstellt wurden, erstelle im Projekt-Root eine reine Textdatei mit dem Namen \u201c.mailmap\u201d. Unten ist ein Beispiel, wie diese Datei anhand der aktuellen Daten ausgef\xfcllt werden kann.\n\xa7 plugin.settings.mailmap.description2: Danach speichere die logs erneut. Wenn Accounts zusammengef\xfchrt werden, verliert die detaillierte Analytik im Abschnitt \u201cemail addresses\u201d sehr wahrscheinlich einige Daten. Das ist normal.\n",en:"\n\xa7 plugin.settings.sidebar: Settings\n\xa7 plugin.settings.document.title: Display settings\n\xa7 plugin.settings.document.name: Page title\n\xa7 plugin.settings.document.language: UI language\n\xa7 plugin.settings.document.translations: Translator mode\n\xa7 plugin.settings.document.depersonalize: Hide personal data\n\xa7 plugin.settings.links.title: Link prefixes\n\xa7 plugin.settings.links.task: For task IDs\n\xa7 plugin.settings.links.pr: For PR\n\xa7 plugin.settings.mailmap.title: Staff merge\n\xa7 plugin.settings.mailmap.description1: To group commits made from different accounts of the same staff member, create a plain text file named \u201c.mailmap\u201d in the project root. Below is an example of how to fill this file based on the current data.\n\xa7 plugin.settings.mailmap.description2: After that, save the logs again. When accounts are merged, detailed analytics in the \u201cemail addresses\u201d section will most likely lose some data. This is normal.\n",es:"\n\xa7 plugin.settings.sidebar: Ajustes\n\xa7 plugin.settings.document.title: Ajustes de visualizaci\xf3n\n\xa7 plugin.settings.document.name: T\xedtulo de la p\xe1gina\n\xa7 plugin.settings.document.language: Idioma de la interfaz\n\xa7 plugin.settings.document.translations: Modo traductor\n\xa7 plugin.settings.document.depersonalize: Ocultar datos personales\n\xa7 plugin.settings.links.title: Prefijos de enlaces\n\xa7 plugin.settings.links.task: Para IDs de tareas\n\xa7 plugin.settings.links.pr: Para PR\n\xa7 plugin.settings.mailmap.title: Unificaci\xf3n de personal\n\xa7 plugin.settings.mailmap.description1: Para agrupar commits realizados desde distintas cuentas del mismo miembro del personal, crea un archivo de texto sin formato llamado \u201c.mailmap\u201d en la ra\xedz del proyecto. A continuaci\xf3n se muestra un ejemplo de c\xf3mo rellenar este archivo con base en los datos actuales.\n\xa7 plugin.settings.mailmap.description2: Despu\xe9s, vuelve a guardar los logs. Cuando las cuentas se unifican, la anal\xedtica detallada en la secci\xf3n \u201cemail addresses\u201d probablemente perder\xe1 algunos datos. Esto es normal.\n",fr:"\n\xa7 plugin.settings.sidebar: Param\xe8tres\n\xa7 plugin.settings.document.title: Param\xe8tres d\u2019affichage\n\xa7 plugin.settings.document.name: Titre de la page\n\xa7 plugin.settings.document.language: Langue de l\u2019interface\n\xa7 plugin.settings.document.translations: Mode traducteur\n\xa7 plugin.settings.document.depersonalize: Masquer les donn\xe9es personnelles\n\xa7 plugin.settings.links.title: Pr\xe9fixes de liens\n\xa7 plugin.settings.links.task: Pour les identifiants de t\xe2che\n\xa7 plugin.settings.links.pr: Pour PR\n\xa7 plugin.settings.mailmap.title: Fusion des collaborateurs\n\xa7 plugin.settings.mailmap.description1: Pour regrouper des commits effectu\xe9s depuis diff\xe9rents comptes d\u2019un m\xeame collaborateur, cr\xe9ez un fichier texte brut nomm\xe9 \u201c.mailmap\u201d \xe0 la racine du projet. Ci-dessous, un exemple de remplissage bas\xe9 sur les donn\xe9es actuelles.\n\xa7 plugin.settings.mailmap.description2: Ensuite, enregistrez les logs \xe0 nouveau. Lorsque les comptes sont fusionn\xe9s, l\u2019analytique d\xe9taill\xe9e dans la section \u201cemail addresses\u201d perdra tr\xe8s probablement une partie des donn\xe9es. C\u2019est normal.\n",he:"\n\xa7 plugin.settings.sidebar: \u05d4\u05d2\u05d3\u05e8\u05d5\u05ea\n\xa7 plugin.settings.document.title: \u05d4\u05d2\u05d3\u05e8\u05d5\u05ea \u05ea\u05e6\u05d5\u05d2\u05d4\n\xa7 plugin.settings.document.name: \u05db\u05d5\u05ea\u05e8\u05ea \u05d4\u05e2\u05de\u05d5\u05d3\n\xa7 plugin.settings.document.language: \u05e9\u05e4\u05ea \u05d4-UI\n\xa7 plugin.settings.document.translations: \u05de\u05e6\u05d1 \u05de\u05ea\u05e8\u05d2\u05dd\n\xa7 plugin.settings.document.depersonalize: \u05d4\u05e1\u05ea\u05e8\u05ea \u05e0\u05ea\u05d5\u05e0\u05d9\u05dd \u05d0\u05d9\u05e9\u05d9\u05d9\u05dd\n\xa7 plugin.settings.links.title: \u05ea\u05d7\u05d9\u05dc\u05d9\u05d5\u05ea \u05e7\u05d9\u05e9\u05d5\u05e8\u05d9\u05dd\n\xa7 plugin.settings.links.task: \u05e2\u05d1\u05d5\u05e8 \u05de\u05d6\u05d4\u05d9 task\n\xa7 plugin.settings.links.pr: \u05e2\u05d1\u05d5\u05e8 PR\n\xa7 plugin.settings.mailmap.title: \u05de\u05d9\u05d6\u05d5\u05d2 \u05e6\u05d5\u05d5\u05ea\n\xa7 plugin.settings.mailmap.description1: \u05db\u05d3\u05d9 \u05dc\u05e7\u05d1\u05e5 commits \u05e9\u05e0\u05d5\u05e6\u05e8\u05d5 \u05de\u05d7\u05e9\u05d1\u05d5\u05e0\u05d5\u05ea \u05e9\u05d5\u05e0\u05d9\u05dd \u05e9\u05dc \u05d0\u05d5\u05ea\u05d5 \u05d7\u05d1\u05e8 \u05e6\u05d5\u05d5\u05ea, \u05e6\u05e8\u05d5 \u05e7\u05d5\u05d1\u05e5 \u05d8\u05e7\u05e1\u05d8 \u05e4\u05e9\u05d5\u05d8 \u05d1\u05e9\u05dd \u201c.mailmap\u201d \u05d1\u05e9\u05d5\u05e8\u05e9 \u05d4\u05e4\u05e8\u05d5\u05d9\u05e7\u05d8. \u05dc\u05d4\u05dc\u05df \u05d3\u05d5\u05d2\u05de\u05d4 \u05db\u05d9\u05e6\u05d3 \u05dc\u05de\u05dc\u05d0 \u05d0\u05ea \u05d4\u05e7\u05d5\u05d1\u05e5 \u05e2\u05dc \u05d1\u05e1\u05d9\u05e1 \u05d4\u05e0\u05ea\u05d5\u05e0\u05d9\u05dd \u05d4\u05e0\u05d5\u05db\u05d7\u05d9\u05d9\u05dd.\n\xa7 plugin.settings.mailmap.description2: \u05dc\u05d0\u05d7\u05e8 \u05de\u05db\u05df, \u05e9\u05de\u05e8\u05d5 \u05d0\u05ea \u05d4-logs \u05e9\u05d5\u05d1. \u05db\u05d0\u05e9\u05e8 \u05d7\u05e9\u05d1\u05d5\u05e0\u05d5\u05ea \u05de\u05de\u05d5\u05d6\u05d2\u05d9\u05dd, \u05d4\u05d0\u05e0\u05dc\u05d9\u05d8\u05d9\u05e7\u05d4 \u05d4\u05de\u05e4\u05d5\u05e8\u05d8\u05ea \u05d1\u05e1\u05e2\u05d9\u05e3 \u201cemail addresses\u201d \u05db\u05e0\u05e8\u05d0\u05d4 \u05ea\u05d0\u05d1\u05d3 \u05d7\u05dc\u05e7 \u05de\u05d4\u05e0\u05ea\u05d5\u05e0\u05d9\u05dd. \u05d6\u05d4 \u05ea\u05e7\u05d9\u05df.\n",hi:"\n\xa7 plugin.settings.sidebar: \u0938\u0947\u091f\u093f\u0902\u0917\u094d\u0938\n\xa7 plugin.settings.document.title: \u0921\u093f\u0938\u094d\u092a\u094d\u0932\u0947 \u0938\u0947\u091f\u093f\u0902\u0917\u094d\u0938\n\xa7 plugin.settings.document.name: \u092a\u0947\u091c \u0936\u0940\u0930\u094d\u0937\u0915\n\xa7 plugin.settings.document.language: UI \u092d\u093e\u0937\u093e\n\xa7 plugin.settings.document.translations: \u0905\u0928\u0941\u0935\u093e\u0926\u0915 \u092e\u094b\u0921\n\xa7 plugin.settings.document.depersonalize: \u0935\u094d\u092f\u0915\u094d\u0924\u093f\u0917\u0924 \u0921\u0947\u091f\u093e \u091b\u093f\u092a\u093e\u090f\u0901\n\xa7 plugin.settings.links.title: \u0932\u093f\u0902\u0915 \u092a\u094d\u0930\u0940\u092b\u093c\u093f\u0915\u094d\u0938\n\xa7 plugin.settings.links.task: task IDs \u0915\u0947 \u0932\u093f\u090f\n\xa7 plugin.settings.links.pr: PR \u0915\u0947 \u0932\u093f\u090f\n\xa7 plugin.settings.mailmap.title: \u0938\u094d\u091f\u093e\u092b \u092e\u0930\u094d\u091c\n\xa7 plugin.settings.mailmap.description1: \u090f\u0915 \u0939\u0940 \u0938\u094d\u091f\u093e\u092b \u0938\u0926\u0938\u094d\u092f \u0915\u0947 \u0905\u0932\u0917-\u0905\u0932\u0917 \u0905\u0915\u093e\u0909\u0902\u091f\u094d\u0938 \u0938\u0947 \u0915\u093f\u090f \u0917\u090f commits \u0915\u094b \u0938\u092e\u0942\u0939\u093f\u0924 \u0915\u0930\u0928\u0947 \u0915\u0947 \u0932\u093f\u090f, \u092a\u094d\u0930\u094b\u091c\u0947\u0915\u094d\u091f \u0930\u0942\u091f \u092e\u0947\u0902 \u201c.mailmap\u201d \u0928\u093e\u092e \u0915\u0940 \u090f\u0915 plain text \u092b\u093c\u093e\u0907\u0932 \u092c\u0928\u093e\u090f\u0901\u0964 \u0928\u0940\u091a\u0947 \u0935\u0930\u094d\u0924\u092e\u093e\u0928 \u0921\u0947\u091f\u093e \u0915\u0947 \u0906\u0927\u093e\u0930 \u092a\u0930 \u0907\u0938 \u092b\u093c\u093e\u0907\u0932 \u0915\u094b \u092d\u0930\u0928\u0947 \u0915\u093e \u090f\u0915 \u0909\u0926\u093e\u0939\u0930\u0923 \u0939\u0948\u0964\n\xa7 plugin.settings.mailmap.description2: \u0907\u0938\u0915\u0947 \u092c\u093e\u0926, logs \u0915\u094b \u092b\u093f\u0930 \u0938\u0947 \u0938\u0947\u0935 \u0915\u0930\u0947\u0902\u0964 \u091c\u092c \u0905\u0915\u093e\u0909\u0902\u091f\u094d\u0938 \u092e\u0930\u094d\u091c \u0939\u094b\u0924\u0947 \u0939\u0948\u0902, \u0924\u094b \u201cemail addresses\u201d \u0938\u0947\u0915\u094d\u0936\u0928 \u092e\u0947\u0902 detailed analytics \u092e\u0947\u0902 \u0915\u0941\u091b \u0921\u0947\u091f\u093e \u0916\u094b \u0938\u0915\u0924\u093e \u0939\u0948\u0964 \u092f\u0939 \u0938\u093e\u092e\u093e\u0928\u094d\u092f \u0939\u0948\u0964\n",ja:"\n\xa7 plugin.settings.sidebar: \u8a2d\u5b9a\n\xa7 plugin.settings.document.title: \u8868\u793a\u8a2d\u5b9a\n\xa7 plugin.settings.document.name: \u30da\u30fc\u30b8\u30bf\u30a4\u30c8\u30eb\n\xa7 plugin.settings.document.language: UI\u8a00\u8a9e\n\xa7 plugin.settings.document.translations: \u7ffb\u8a33\u8005\u30e2\u30fc\u30c9\n\xa7 plugin.settings.document.depersonalize: \u500b\u4eba\u30c7\u30fc\u30bf\u3092\u975e\u8868\u793a\n\xa7 plugin.settings.links.title: \u30ea\u30f3\u30af\u306e\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\n\xa7 plugin.settings.links.task: task ID \u7528\n\xa7 plugin.settings.links.pr: PR \u7528\n\xa7 plugin.settings.mailmap.title: \u30b9\u30bf\u30c3\u30d5\u306e\u7d71\u5408\n\xa7 plugin.settings.mailmap.description1: \u540c\u3058\u30b9\u30bf\u30c3\u30d5\u30e1\u30f3\u30d0\u30fc\u306e\u7570\u306a\u308b\u30a2\u30ab\u30a6\u30f3\u30c8\u304b\u3089\u4f5c\u6210\u3055\u308c\u305f commits \u3092\u30b0\u30eb\u30fc\u30d7\u5316\u3059\u308b\u306b\u306f\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30eb\u30fc\u30c8\u306b \u201c.mailmap\u201d \u3068\u3044\u3046\u540d\u524d\u306e\u30d7\u30ec\u30fc\u30f3\u30c6\u30ad\u30b9\u30c8\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002\u4ee5\u4e0b\u306f\u3001\u73fe\u5728\u306e\u30c7\u30fc\u30bf\u306b\u57fa\u3065\u304f\u8a18\u5165\u4f8b\u3067\u3059\u3002\n\xa7 plugin.settings.mailmap.description2: \u305d\u306e\u5f8c\u3001logs \u3092\u3082\u3046\u4e00\u5ea6\u4fdd\u5b58\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u30a2\u30ab\u30a6\u30f3\u30c8\u304c\u7d71\u5408\u3055\u308c\u308b\u3068\u3001\u201cemail addresses\u201d \u30bb\u30af\u30b7\u30e7\u30f3\u306e\u8a73\u7d30\u306a\u5206\u6790\u306f\u4e00\u90e8\u306e\u30c7\u30fc\u30bf\u3092\u5931\u3046\u53ef\u80fd\u6027\u304c\u9ad8\u3044\u3067\u3059\u304c\u3001\u3053\u308c\u306f\u6b63\u5e38\u3067\u3059\u3002\n",ko:"\n\xa7 plugin.settings.sidebar: \uc124\uc815\n\xa7 plugin.settings.document.title: \ud45c\uc2dc \uc124\uc815\n\xa7 plugin.settings.document.name: \ud398\uc774\uc9c0 \uc81c\ubaa9\n\xa7 plugin.settings.document.language: UI \uc5b8\uc5b4\n\xa7 plugin.settings.document.translations: \ubc88\uc5ed\uc790 \ubaa8\ub4dc\n\xa7 plugin.settings.document.depersonalize: \uac1c\uc778 \ub370\uc774\ud130 \uc228\uae30\uae30\n\xa7 plugin.settings.links.title: \ub9c1\ud06c \uc811\ub450\uc0ac\n\xa7 plugin.settings.links.task: task ID\uc6a9\n\xa7 plugin.settings.links.pr: PR\uc6a9\n\xa7 plugin.settings.mailmap.title: \uc9c1\uc6d0 \ud1b5\ud569\n\xa7 plugin.settings.mailmap.description1: \ub3d9\uc77c\ud55c \uc9c1\uc6d0\uc758 \uc11c\ub85c \ub2e4\ub978 \uacc4\uc815\uc5d0\uc11c \ub9cc\ub4e0 commits \ub97c \uadf8\ub8f9\ud654\ud558\ub824\uba74 \ud504\ub85c\uc81d\ud2b8 \ub8e8\ud2b8\uc5d0 \u201c.mailmap\u201d\uc774\ub77c\ub294 \uc774\ub984\uc758 \uc77c\ubc18 \ud14d\uc2a4\ud2b8 \ud30c\uc77c\uc744 \ub9cc\ub4dc\uc138\uc694. \uc544\ub798\ub294 \ud604\uc7ac \ub370\uc774\ud130\ub97c \uae30\uc900\uc73c\ub85c \uc774 \ud30c\uc77c\uc744 \ucc44\uc6b0\ub294 \uc608\uc2dc\uc785\ub2c8\ub2e4.\n\xa7 plugin.settings.mailmap.description2: \uadf8\ub7f0 \ub2e4\uc74c logs \ub97c \ub2e4\uc2dc \uc800\uc7a5\ud558\uc138\uc694. \uacc4\uc815\uc774 \ud1b5\ud569\ub418\uba74 \u201cemail addresses\u201d \uc139\uc158\uc758 \uc0c1\uc138 \ubd84\uc11d\uc5d0\uc11c \uc77c\ubd80 \ub370\uc774\ud130\uac00 \uc190\uc2e4\ub420 \uac00\ub2a5\uc131\uc774 \ub192\uc2b5\ub2c8\ub2e4. \uc774\ub294 \uc815\uc0c1\uc785\ub2c8\ub2e4.\n",pt:"\n\xa7 plugin.settings.sidebar: Configura\xe7\xf5es\n\xa7 plugin.settings.document.title: Configura\xe7\xf5es de exibi\xe7\xe3o\n\xa7 plugin.settings.document.name: T\xedtulo da p\xe1gina\n\xa7 plugin.settings.document.language: Idioma da interface\n\xa7 plugin.settings.document.translations: Modo tradutor\n\xa7 plugin.settings.document.depersonalize: Ocultar dados pessoais\n\xa7 plugin.settings.links.title: Prefixos de links\n\xa7 plugin.settings.links.task: Para IDs de tarefas\n\xa7 plugin.settings.links.pr: Para PR\n\xa7 plugin.settings.mailmap.title: Mesclagem de colaboradores\n\xa7 plugin.settings.mailmap.description1: Para agrupar commits feitos a partir de contas diferentes do mesmo colaborador, crie um arquivo de texto simples chamado \u201c.mailmap\u201d na raiz do projeto. Abaixo h\xe1 um exemplo de como preencher esse arquivo com base nos dados atuais.\n\xa7 plugin.settings.mailmap.description2: Depois disso, salve os logs novamente. Quando as contas forem mescladas, a anal\xedtica detalhada na se\xe7\xe3o \u201cemail addresses\u201d provavelmente perder\xe1 alguns dados. Isso \xe9 normal.\n",ru:"\n\xa7 plugin.settings.sidebar: \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\n\xa7 plugin.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 plugin.settings.document.name: \u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b\n\xa7 plugin.settings.document.language: \u042f\u0437\u044b\u043a \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430\n\xa7 plugin.settings.document.translations: \u0420\u0435\u0436\u0438\u043c \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a\u0430\n\xa7 plugin.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 plugin.settings.links.title: \u041f\u0440\u0435\u0444\u0438\u043a\u0441\u044b \u0441\u0441\u044b\u043b\u043e\u043a\n\xa7 plugin.settings.links.task: \u0414\u043b\u044f \u043d\u043e\u043c\u0435\u0440\u043e\u0432 \u0437\u0430\u0434\u0430\u0447\n\xa7 plugin.settings.links.pr: \u0414\u043b\u044f PR\n\xa7 plugin.settings.salary.title: \u0414\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0444\u0438\u043d\u0430\u043d\u0441\u043e\u0432\u044b\u0445 \u0440\u0430\u0441\u0447\u0451\u0442\u043e\u0432 (USD)\n\xa7 plugin.settings.salary.middle: \u0421\u0440\u0435\u0434\u043d\u044f\u044f \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u043d\u0430\u044f \u043f\u043b\u0430\u0442\u0430\n\xa7 plugin.settings.days.title: \u0414\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0440\u0430\u0441\u0447\u0451\u0442\u0430 \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u0438 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0445 \u0434\u043d\u0435\u0439\n\xa7 plugin.settings.days.works: \u0420\u0430\u0431\u043e\u0447\u0438\u0435 \u0434\u043d\u0438 \u0432 \u043d\u0435\u0434\u0435\u043b\u0435\n\xa7 plugin.settings.mailmap.title: \u041e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 plugin.settings.mailmap.description1: \u0427\u0442\u043e\u0431\u044b \u0441\u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043c\u043c\u0438\u0442\u044b \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u044b\u0435 \u0441 \u0440\u0430\u0437\u043d\u044b\u0445 \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u043e\u0432 \u043e\u0434\u043d\u043e\u0433\u043e \u0438 \u0442\u043e\u0433\u043e \u0436\u0435 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430, \u0441\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u0432 \u043a\u043e\u0440\u043d\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0439 \u0444\u0430\u0439\u043b \u0441 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043c \xab.mailmap\xbb. \u041d\u0438\u0436\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d \u043f\u0440\u0438\u043c\u0435\u0440 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u044d\u0442\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 \u043f\u043e \u0442\u0435\u043a\u0443\u0449\u0438\u043c \u0434\u0430\u043d\u043d\u044b\u043c.\n\xa7 plugin.settings.mailmap.description2: \u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u0435 \u043b\u043e\u0433\u0438 \u0435\u0449\u0451 \u0440\u0430\u0437. \u041f\u0440\u0438 \u0441\u043a\u043b\u0435\u0439\u043a\u0435 \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u043e\u0432, \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0430\u044f \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0430 \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \xab\u043f\u043e\u0447\u0442\u043e\u0432\u044b\u0435 \u0430\u0434\u0440\u0435\u0441\u0430\xbb, \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u043f\u043e\u0442\u0435\u0440\u044f\u0435\u0442 \u0447\u0430\u0441\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0445. \u042d\u0442\u043e \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e.\n",zh:"\n\xa7 plugin.settings.sidebar: \u8bbe\u7f6e\n\xa7 plugin.settings.document.title: \u663e\u793a\u8bbe\u7f6e\n\xa7 plugin.settings.document.name: \u9875\u9762\u6807\u9898\n\xa7 plugin.settings.document.language: UI \u8bed\u8a00\n\xa7 plugin.settings.document.translations: \u8bd1\u8005\u6a21\u5f0f\n\xa7 plugin.settings.document.depersonalize: \u9690\u85cf\u4e2a\u4eba\u6570\u636e\n\xa7 plugin.settings.links.title: \u94fe\u63a5\u524d\u7f00\n\xa7 plugin.settings.links.task: \u7528\u4e8e task ID\n\xa7 plugin.settings.links.pr: \u7528\u4e8e PR\n\xa7 plugin.settings.mailmap.title: \u5458\u5de5\u5408\u5e76\n\xa7 plugin.settings.mailmap.description1: \u4e3a\u4e86\u5c06\u540c\u4e00\u5458\u5de5\u4ece\u4e0d\u540c\u8d26\u53f7\u4ea7\u751f\u7684 commits \u8fdb\u884c\u5f52\u5e76\uff0c\u8bf7\u5728\u9879\u76ee\u6839\u76ee\u5f55\u521b\u5efa\u4e00\u4e2a\u540d\u4e3a \u201c.mailmap\u201d \u7684\u7eaf\u6587\u672c\u6587\u4ef6\u3002\u4e0b\u9762\u7ed9\u51fa\u4e00\u4e2a\u57fa\u4e8e\u5f53\u524d\u6570\u636e\u7684\u586b\u5199\u793a\u4f8b\u3002\n\xa7 plugin.settings.mailmap.description2: \u4e4b\u540e\uff0c\u8bf7\u518d\u6b21\u4fdd\u5b58 logs\u3002\u8d26\u53f7\u5408\u5e76\u540e\uff0c\u201cemail addresses\u201d \u90e8\u5206\u7684\u8be6\u7ec6\u5206\u6790\u5f88\u53ef\u80fd\u4f1a\u4e22\u5931\u90e8\u5206\u6570\u636e\u3002\u8fd9\u662f\u6b63\u5e38\u73b0\u8c61\u3002\n"},rA="ui_kit_checkbox",lA="ui_kit_checkbox_box",mA="ui_kit_checkbox_title";const cA=function(e){let{title:t,description:n,help:a,error:s,className:i,value:o,onChange:r}=e;const{t:l}=_u(),m="checkbox-".concat(Math.ceil(1e4*Math.random()));return(0,mu.jsx)(fx,{description:n,help:a,error:s,className:i,children:(0,mu.jsxs)("div",{className:rA,children:[(0,mu.jsx)("input",{type:"checkbox",id:m,checked:!!o,className:lA,onChange:()=>{r(!o)}}),(0,mu.jsx)("label",{htmlFor:m,className:mA,children:l(t||"")})]})})};function uA(e){let{className:t,onRemove:n,children:a}=e;const{t:s}=_u();return(0,mu.jsxs)("div",{className:"".concat(Xb," ").concat(t||""),children:[(0,mu.jsx)("div",{className:Qb,children:n&&(0,mu.jsx)(Gu,{mode:"second",onClick:()=>n(),children:s("uiKit.page.remove")})}),a]})}uA.defaultProps={className:void 0};const pA=uA,dA=yi((()=>{var e;const[n,a]=(0,t.useState)(document.title);return(0,mu.jsxs)(pA,{children:[(0,mu.jsx)(_x,{title:"plugin.settings.document.name",value:n,placeholder:null===(e=so.config)||void 0===e?void 0:e.title,onChange:e=>{a(e)},onChangeDebounce:()=>{document.title=n}}),(0,mu.jsx)(cA,{value:PT.isDepersonalized,title:"plugin.settings.document.depersonalize",onChange:()=>{PT.depersonalized(!PT.isDepersonalized)}}),(0,mu.jsx)(cA,{value:pu.isEditor,title:"plugin.settings.document.translations",onChange:e=>{e?pu.editorOn():pu.editorOff()}}),(0,mu.jsx)(dT,{height:"xl"})]})})),hA={title:"",language:"",languages:[{id:"ar",currency:"AED",title:"\u0627\u0644\u0639\u064e\u0631\u064e\u0628\u0650\u064a\u064e\u0651\u0629"},{id:"de",currency:"EUR",title:"Deutsch"},{id:"en",currency:"USD",title:"English"},{id:"es",currency:"EUR",title:"Espa\xf1ol"},{id:"fr",currency:"EUR",title:"Fran\xe7ais"},{id:"he",currency:"ILS",title:"\u05e2\u05d1\u05e8\u05d9\u05ea"},{id:"hi",currency:"INR",title:"\u0939\u093f\u0902\u0926\u0940"},{id:"ja",currency:"JPY",title:"\u65e5\u672c\u8a9e"},{id:"ko",currency:"KRW",title:"\ud55c\uad6d\uc5b4"},{id:"pt",currency:"EUR",title:"Portugu\xeas"},{id:"ru",currency:"RUB",title:"\u0420\u0443\u0441\u0441\u043a\u0438\u0439"},{id:"zh",currency:"CNY",title:"\u4e2d\u6587"}],ref:"",urlForCss:"",urlForGitLog:"",prefixForTask:"https://jira.com/secure/RapidBoard.jspa?task=",prefixForPR:"https://bitbucket.com/projects/assayo/repos/frontend/pull-requests/",middleSalaryInMonth:3e3,workDays:[!0,!0,!0,!0,!0,!1,!1],currency:"RUB",exchangeRate:{USD:1,EUR:.9,RUB:82,CNY:7,JPY:160,KRW:1500,CAD:1.4,INR:92,ILS:3.1,AED:3.6},permissions:[],disabledPermissions:[],plugins:["person_achievements","person_money","person_month","person_vacation","person_speed","person_total","person_week","team_author","team_building","team_commits","team_companies","team_country","team_vacation","team_day","team_departments","team_file_analytics","team_files","team_hours","team_month","team_pull_requests","team_recommendations","team_refactor","team_release","team_scope","team_server","team_tasks","team_total","team_types","team_weeks","print","sponsor","settings"],disabledPlugins:[]},gA=yi((()=>{const[e,n]=(0,t.useState)(""),[a,s]=(0,t.useState)("");return(0,mu.jsxs)(pA,{children:[(0,mu.jsx)(_x,{title:"plugin.settings.links.task",value:e,placeholder:hA.prefixForTask,onChange:e=>{n(e)},onChangeDebounce:e=>{so.updateConfigProperty("prefixForTask",e||hA.prefixForTask)}}),(0,mu.jsx)(_x,{title:"plugin.settings.links.pr",value:a,placeholder:hA.prefixForPR,onChange:e=>{s(e)},onChangeDebounce:e=>{so.updateConfigProperty("prefixForPR",e||hA.prefixForPR)}})]})})),fA=yi((()=>{var e,t;const n=((null===PT||void 0===PT||null===(e=PT.statisticsByCommits)||void 0===e||null===(t=e.author)||void 0===t?void 0:t.totalInfo)||[]).map((e=>e.emails.map((t=>"".concat(e.author," <").concat(e.emails[0],"> <").concat(t,">"))))).flat(),a=n.map((e=>(0,mu.jsx)("p",{children:e},e))),s=n.join("\r\n");return(0,mu.jsx)(tp,{textForCopy:s,children:a})}));function yA(e){let{title:n,description:a,help:s,error:i,className:o,disabled:r,value:l,placeholder:m,debounceDelay:c,onChange:u,onChangeDebounce:p}=e;const{text:d}=_u(),h=(0,t.useCallback)((()=>{let e=null;return function(t){const n=parseInt(t.target.value,10)||0;u&&u(n),p&&(clearTimeout(e),e=setTimeout((()=>p(n)),c||800))}})(),[u]);return(0,mu.jsx)(fx,{title:n,description:a,help:s,error:i,className:o,children:(0,mu.jsx)("input",{disabled:r,type:"number",value:l,placeholder:m?d(m):"",className:yx,onChange:h})})}yA.defaultProps={placeholder:"\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435"};const vA=yA,_A={title:"",language:"",languages:[{id:"ar",currency:"AED",title:"\u0627\u0644\u0639\u064e\u0631\u064e\u0628\u0650\u064a\u064e\u0651\u0629"},{id:"de",currency:"EUR",title:"Deutsch"},{id:"en",currency:"USD",title:"English"},{id:"es",currency:"EUR",title:"Espa\xf1ol"},{id:"fr",currency:"EUR",title:"Fran\xe7ais"},{id:"he",currency:"ILS",title:"\u05e2\u05d1\u05e8\u05d9\u05ea"},{id:"hi",currency:"INR",title:"\u0939\u093f\u0902\u0926\u0940"},{id:"ja",currency:"JPY",title:"\u65e5\u672c\u8a9e"},{id:"ko",currency:"KRW",title:"\ud55c\uad6d\uc5b4"},{id:"pt",currency:"EUR",title:"Portugu\xeas"},{id:"ru",currency:"RUB",title:"\u0420\u0443\u0441\u0441\u043a\u0438\u0439"},{id:"zh",currency:"CNY",title:"\u4e2d\u6587"}],ref:"",urlForCss:"",urlForGitLog:"",prefixForTask:"https://jira.com/secure/RapidBoard.jspa?task=",prefixForPR:"https://bitbucket.com/projects/assayo/repos/frontend/pull-requests/",middleSalaryInMonth:3e3,workDays:[!0,!0,!0,!0,!0,!1,!1],currency:"RUB",exchangeRate:{USD:1,EUR:.9,RUB:82,CNY:7,JPY:160,KRW:1500,CAD:1.4,INR:92,ILS:3.1,AED:3.6},permissions:[],disabledPermissions:[],plugins:["person_achievements","person_money","person_month","person_vacation","person_speed","person_total","person_week","team_author","team_building","team_commits","team_companies","team_country","team_vacation","team_day","team_departments","team_file_analytics","team_files","team_hours","team_month","team_pull_requests","team_recommendations","team_refactor","team_release","team_scope","team_server","team_tasks","team_total","team_types","team_weeks","print","sponsor","settings"],disabledPlugins:[]},kA=yi((()=>{var e;const[n,a]=(0,t.useState)(null===(e=so.config)||void 0===e?void 0:e.middleSalaryInMonth);return(0,mu.jsx)(pA,{children:(0,mu.jsx)(vA,{title:"plugin.settings.salary.middle",value:n,placeholder:"".concat(_A.middleSalaryInMonth),onChange:e=>{a(e)},onChangeDebounce:e=>{const t=parseInt(e,10)||_A.middleSalaryInMonth;so.updateConfigProperty("middleSalaryInMonth",t),PT.updateStatistic()}})})})),bA="ui_kit_switch",wA="ui_kit_switch_item",xA="ui_kit_switch_item_selected",TA="ui_kit_switch_item_disabled";const CA=function(e){let{title:t,description:n,help:a,error:s,className:i,disabled:o,multiple:r,value:l,options:m,onChange:c}=e;const u=l||0===l||!1===l;let p=l;u&&!Array.isArray(l)&&(p=[l]);const d=(m||[]).map(((e,t)=>{var n,a;const s="object"!==typeof e?{id:e,title:e}:e,i=u&&p.includes(null===s||void 0===s?void 0:s.id),l=[wA];return i&&l.push(xA),o&&l.push(TA),(0,mu.jsx)("button",{className:l.join(" "),onClick:()=>{if(!c)return;let e=[null===s||void 0===s?void 0:s.id];r&&(e=i?p.filter((e=>e!==(null===s||void 0===s?void 0:s.id))):[...p,null===s||void 0===s?void 0:s.id].sort()),c(e)},children:null!==(n=null!==(a=null===s||void 0===s?void 0:s.title)&&void 0!==a?a:null===s||void 0===s?void 0:s.id)&&void 0!==n?n:""},"".concat(null===s||void 0===s?void 0:s.id,"_").concat(t))}));return(0,mu.jsx)(fx,{title:t,description:n,help:a,error:s,className:i,children:(0,mu.jsx)("div",{className:bA,children:d})})},SA=yi((()=>{var e;const t=null===(e=so.config)||void 0===e?void 0:e.workDays.map(((e,t)=>e?t+1:null));return(0,mu.jsx)(pA,{children:(0,mu.jsx)(CA,{multiple:!0,title:"plugin.settings.days.works",value:t,options:[{id:1,title:Xi(0,"short")},{id:2,title:Xi(1,"short")},{id:3,title:Xi(2,"short")},{id:4,title:Xi(3,"short")},{id:5,title:Xi(4,"short")},{id:6,title:Xi(5,"short")},{id:7,title:Xi(6,"short")}],onChange:e=>{const t=new Array(7).fill(0).map(((t,n)=>e.includes(n+1)));so.updateConfigProperty("workDays",t),PT.updateStatistic()}})})}));const jA=function(){return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(sx,{title:"plugin.settings.document.title"}),(0,mu.jsx)(dA,{})]}),(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(sx,{title:"plugin.settings.links.title"}),(0,mu.jsx)(gA,{})]})]}),(0,mu.jsx)(sx,{title:"plugin.settings.mailmap.title"}),(0,mu.jsxs)(yT,{children:[(0,mu.jsx)(_T,{children:(0,mu.jsx)(bw,{translationId:"plugin.settings.mailmap.description1"})}),(0,mu.jsx)(_T,{children:(0,mu.jsx)(bw,{translationId:"plugin.settings.mailmap.description2"})})]}),(0,mu.jsx)(dT,{height:"m"}),(0,mu.jsx)(fA,{}),(0,mu.jsx)(dT,{height:"xxl"}),(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(sx,{title:"plugin.settings.days.title"}),(0,mu.jsx)(SA,{})]}),(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(sx,{title:"plugin.settings.salary.title"}),(0,mu.jsx)(kA,{})]})]})]})};class DA{getHeaderItems(){return[{id:"settings",link:"/settings",title:"plugin.settings.sidebar",icon:"./assets/menu/setting.svg",onClick:e=>()=>{e("/settings")}}]}getMenuItems(){return[]}getPage(e){return"/settings"===e?(0,mu.jsx)(jA,{}):void 0}getTranslations(){return oA}}DA.id="settings";const AA={ar:"\n\xa7 plugin.team_month.sidebar: By months\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last day\n\xa7 plugin.team_month.filters.authors: All staff members\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed location)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first working day)\n\xa7 plugin.team_month.work.last: (last working day)\n",de:"\n\xa7 plugin.team_author.sidebar: Mitarbeiter\n\xa7 plugin.team_author.statusChart.title: Status\n\xa7 plugin.team_author.daysChart.title: Days of work\n\xa7 plugin.team_author.daysChart.item: days\n\xa7 plugin.team_author.days.half: half year\n\xa7 plugin.team_author.days.one: year\n\xa7 plugin.team_author.days.15: year and a half\n\xa7 plugin.team_author.days.two: two years\n\xa7 plugin.team_author.days.more: more than two years\n\xa7 plugin.team_author.title: Details\n\xa7 plugin.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 plugin.team_author.description2: *Default sorting* is by the number of tasks and groups (current, fired, assisting employees).\n\xa7 plugin.team_author.status: Status\n\xa7 plugin.team_author.company: Company\n\xa7 plugin.team_author.firstCommit: First commit\n\xa7 plugin.team_author.lastCommit: Last\n\xa7 plugin.team_author.daysAll: Total days\n\xa7 plugin.team_author.types: Types of work\n\xa7 plugin.team_author.commits: Commits\n\xa7 plugin.team_author.commitsSmall: commits\n\xa7 plugin.team_author.tasks: Tasks\n\xa7 plugin.team_author.tasksSmall: tasks\n\xa7 plugin.team_author.workedLosses: Days with and without commits\n\xa7 plugin.team_author.worked: work\n\xa7 plugin.team_author.losses: days without commits\n\xa7 plugin.team_author.days: days\n\xa7 plugin.team_author.daysForTask: Days per task\n\xa7 plugin.team_author.scopes: Features\n\xa7 plugin.team_author.moneyAll: Received\n\xa7 plugin.team_author.moneyWorked: Worked for\n\xa7 plugin.team_author.moneyLosses: Overpayment\n\xa7 plugin.team_author.type.work: works\n\xa7 plugin.team_author.type.dismissed: dismissed\n\xa7 plugin.team_author.type.staff: staff\n\xa7 plugin.team_author.absence.title: Vacation schedule\n\xa7 plugin.team_author.absence.vacation: Vacation\n\xa7 plugin.team_author.absence.transfer: Department change\n\xa7 plugin.team_author.absence.from: from\n\xa7 plugin.team_author.absence.to: to\n\xa7 plugin.team_author.absence.duration: days\n\xa7 plugin.team_author.employments.less1: one employee\n\xa7 plugin.team_author.employments.less2: two employees\n\xa7 plugin.team_author.employments.less3: three employees\n\xa7 plugin.team_author.employments.less6: up to six employees\n\xa7 plugin.team_author.employments.less9: up to nine employees\n\xa7 plugin.team_author.employments.less12: up to 12 employees\n\xa7 plugin.team_author.employments.less15: up to 15 employees\n\xa7 plugin.team_author.employments.more: more than 15\n",en:"\n\xa7 plugin.team_author.sidebar: Staff members\n\xa7 plugin.team_author.statusChart.title: Current status\n\xa7 plugin.team_author.daysChart.title: Time worked\n\xa7 plugin.team_author.daysChart.item: days\n\xa7 plugin.team_author.days.half: half a year\n\xa7 plugin.team_author.days.one: one year\n\xa7 plugin.team_author.days.15: one and a half\n\xa7 plugin.team_author.days.two: two years\n\xa7 plugin.team_author.days.more: more than two years\n\xa7 plugin.team_author.title: Details\n\xa7 plugin.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 plugin.team_author.author: Staff member\n\xa7 plugin.team_author.status: Status\n\xa7 plugin.team_author.company: Subcontractor\n\xa7 plugin.team_author.firstCommit: First commit\n\xa7 plugin.team_author.lastCommit: Last\n\xa7 plugin.team_author.daysAll: Total days\n\xa7 plugin.team_author.types: Type\n\xa7 plugin.team_author.commits: Commits\n\xa7 plugin.team_author.commitsSmall: commits\n\xa7 plugin.team_author.tasks: Tasks\n\xa7 plugin.team_author.workedLosses: Days with and without commits\n\xa7 plugin.team_author.worked: work\n\xa7 plugin.team_author.losses: days without commits\n\xa7 plugin.team_author.daysForTask: Days per task\n\xa7 plugin.team_author.scopes: Features\n\xa7 plugin.team_author.moneyAll: Received\n\xa7 plugin.team_author.moneyWorked: Worked\n\xa7 plugin.team_author.moneyLosses: Overpayment\n\xa7 plugin.team_author.type.work: works\n\xa7 plugin.team_author.type.dismissed: left\n\xa7 plugin.team_author.type.staff: staff\n\xa7 plugin.team_author.absence.title: Vacation schedule\n\xa7 plugin.team_author.absence.vacation: Vacation\n\xa7 plugin.team_author.absence.transfer: Transfer to another department\n\xa7 plugin.team_author.absence.duration: Duration\n",es:'\n\xa7 plugin.team_author.sidebar: Personal\n\xa7 plugin.team_author.statusChart.title: Status\n\xa7 plugin.team_author.daysChart.title: Days of work\n\xa7 plugin.team_author.daysChart.item: days\n\xa7 plugin.team_author.days.half: half year\n\xa7 plugin.team_author.days.one: year\n\xa7 plugin.team_author.days.15: year and a half\n\xa7 plugin.team_author.days.two: two years\n\xa7 plugin.team_author.days.more: more than two years\n\xa7 plugin.team_author.title: Details\n\xa7 plugin.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 plugin.team_author.description2: La clasificaci\xf3n predeterminada es la clasificaci\xf3n por n\xfamero de tareas y grupos(empleados actuales, despedidos, ayudantes).\n\xa7 plugin.team_author.status: Status\n\xa7 plugin.team_author.company: Company\n\xa7 plugin.team_author.firstCommit: First commit\n\xa7 plugin.team_author.lastCommit: Last\n\xa7 plugin.team_author.daysAll: Total days\n\xa7 plugin.team_author.types: Tipo de trabajo\n\xa7 plugin.team_author.commits: Commits\n\xa7 plugin.team_author.commitsSmall: commits\n\xa7 plugin.team_author.tasks: Tareas\n\xa7 plugin.team_author.tasksSmall: Tareas\n\xa7 plugin.team_author.workedLosses: D\xedas con y sin commits\n\xa7 plugin.team_author.worked: trabajo\n\xa7 plugin.team_author.losses: d\xedas sin commits\n\xa7 plugin.team_author.days: d\xeda\n\xa7 plugin.team_author.daysForTask: D\xedas por tarea\n\xa7 plugin.team_author.scopes: Elaboraci\xf3n definitiva\n\xa7 plugin.team_author.moneyAll: Dinero recibido\n\xa7 plugin.team_author.moneyWorked: Trabajo\n\xa7 plugin.team_author.moneyLosses: Sobrepago\n\xa7 plugin.team_author.type.work: works\n\xa7 plugin.team_author.type.dismissed: dismissed\n\xa7 plugin.team_author.type.staff: staff\n\xa7 plugin.team_author.absence.title: Vacation schedule\n\xa7 plugin.team_author.absence.vacation: Vacation\n\xa7 plugin.team_author.absence.transfer: Department change\n\xa7 plugin.team_author.absence.from: from\n\xa7 plugin.team_author.absence.to: to\n\xa7 plugin.team_author.absence.duration: days\n\xa7 plugin.team_author.employments.less1: one employee\n\xa7 plugin.team_author.employments.less2: two employees\n\xa7 plugin.team_author.employments.less3: three employees\n\xa7 plugin.team_author.employments.less6: up to six employees\n\xa7 plugin.team_author.employments.less9: up to nine employees\n\xa7 plugin.team_author.employments.less12: up to 12 employees\n\xa7 plugin.team_author.employments.less15: up to 15 employees\n\xa7 plugin.team_author.employments.more: more than 15\n',fr:"\n\xa7 plugin.team_author.sidebar: Employ\xe9s\n\xa7 plugin.team_author.statusChart.title: Status\n\xa7 plugin.team_author.daysChart.title: Days of work\n\xa7 plugin.team_author.daysChart.item: days\n\xa7 plugin.team_author.days.half: half year\n\xa7 plugin.team_author.days.one: year\n\xa7 plugin.team_author.days.15: year and a half\n\xa7 plugin.team_author.days.two: two years\n\xa7 plugin.team_author.days.more: more than two years\n\xa7 plugin.team_author.title: Details\n\xa7 plugin.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 plugin.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 plugin.team_author.status: Status\n\xa7 plugin.team_author.company: Company\n\xa7 plugin.team_author.firstCommit: First commit\n\xa7 plugin.team_author.lastCommit: Last\n\xa7 plugin.team_author.daysAll: Total days\n\xa7 plugin.team_author.types: Type de travaux\n\xa7 plugin.team_author.commits: Commits\n\xa7 plugin.team_author.commitsSmall: commits\n\xa7 plugin.team_author.tasks: t\xe2che\n\xa7 plugin.team_author.tasksSmall: t\xe2che\n\xa7 plugin.team_author.workedLosses: Jours avec et sans commits\n\xa7 plugin.team_author.worked: travail\n\xa7 plugin.team_author.losses: jours sans commits\n\xa7 plugin.team_author.days: jours\n\xa7 plugin.team_author.daysForTask: Jours par t\xe2che\n\xa7 plugin.team_author.scopes: Mise au point\n\xa7 plugin.team_author.moneyAll: L'argent re\xe7u\n\xa7 plugin.team_author.moneyWorked: Travaillas\n\xa7 plugin.team_author.moneyLosses: Trop-per\xe7u\n\xa7 plugin.team_author.type.work: works\n\xa7 plugin.team_author.type.dismissed: dismissed\n\xa7 plugin.team_author.type.staff: staff\n\xa7 plugin.team_author.absence.title: Vacation schedule\n\xa7 plugin.team_author.absence.vacation: Vacation\n\xa7 plugin.team_author.absence.transfer: Department change\n\xa7 plugin.team_author.absence.from: from\n\xa7 plugin.team_author.absence.to: to\n\xa7 plugin.team_author.absence.duration: days\n\xa7 plugin.team_author.employments.less1: one employee\n\xa7 plugin.team_author.employments.less2: two employees\n\xa7 plugin.team_author.employments.less3: three employees\n\xa7 plugin.team_author.employments.less6: up to six employees\n\xa7 plugin.team_author.employments.less9: up to nine employees\n\xa7 plugin.team_author.employments.less12: up to 12 employees\n\xa7 plugin.team_author.employments.less15: up to 15 employees\n\xa7 plugin.team_author.employments.more: more than 15\n",he:"\n\xa7 plugin.team_month.sidebar: By months\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last day\n\xa7 plugin.team_month.filters.authors: All staff members\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed location)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first working day)\n\xa7 plugin.team_month.work.last: (last working day)\n",hi:"\n\xa7 plugin.team_month.sidebar: By months\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last day\n\xa7 plugin.team_month.filters.authors: All staff members\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed location)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first working day)\n\xa7 plugin.team_month.work.last: (last working day)\n",ja:"\n\xa7 plugin.team_author.sidebar: \u30b9\u30bf\u30c3\u30d5\n\xa7 plugin.team_author.statusChart.title: Status\n\xa7 plugin.team_author.daysChart.title: Days of work\n\xa7 plugin.team_author.daysChart.item: days\n\xa7 plugin.team_author.days.half: half year\n\xa7 plugin.team_author.days.one: year\n\xa7 plugin.team_author.days.15: year and a half\n\xa7 plugin.team_author.days.two: two years\n\xa7 plugin.team_author.days.more: more than two years\n\xa7 plugin.team_author.title: Details\n\xa7 plugin.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 plugin.team_author.description2: *Default sorting* is by the number of tasks and groups (current, fired, assisting employees).\n\xa7 plugin.team_author.status: Status\n\xa7 plugin.team_author.company: Company\n\xa7 plugin.team_author.firstCommit: First commit\n\xa7 plugin.team_author.lastCommit: Last\n\xa7 plugin.team_author.daysAll: Total days\n\xa7 plugin.team_author.types: Types of work\n\xa7 plugin.team_author.commits: Commits\n\xa7 plugin.team_author.commitsSmall: commits\n\xa7 plugin.team_author.tasks: Tasks\n\xa7 plugin.team_author.tasksSmall: tasks\n\xa7 plugin.team_author.workedLosses: Days with and without commits\n\xa7 plugin.team_author.worked: work\n\xa7 plugin.team_author.losses: days without commits\n\xa7 plugin.team_author.days: days\n\xa7 plugin.team_author.daysForTask: Days per task\n\xa7 plugin.team_author.scopes: Features\n\xa7 plugin.team_author.moneyAll: Received\n\xa7 plugin.team_author.moneyWorked: Worked for\n\xa7 plugin.team_author.moneyLosses: Overpayment\n\xa7 plugin.team_author.type.work: works\n\xa7 plugin.team_author.type.dismissed: dismissed\n\xa7 plugin.team_author.type.staff: staff\n\xa7 plugin.team_author.absence.title: Vacation schedule\n\xa7 plugin.team_author.absence.vacation: Vacation\n\xa7 plugin.team_author.absence.transfer: Department change\n\xa7 plugin.team_author.absence.from: from\n\xa7 plugin.team_author.absence.to: to\n\xa7 plugin.team_author.absence.duration: days\n\xa7 plugin.team_author.employments.less1: one employee\n\xa7 plugin.team_author.employments.less2: two employees\n\xa7 plugin.team_author.employments.less3: three employees\n\xa7 plugin.team_author.employments.less6: up to six employees\n\xa7 plugin.team_author.employments.less9: up to nine employees\n\xa7 plugin.team_author.employments.less12: up to 12 employees\n\xa7 plugin.team_author.employments.less15: up to 15 employees\n\xa7 plugin.team_author.employments.more: more than 15\n",ko:'\n\xa7 plugin.team_author.sidebar: \uc9c1\uc6d0\n\xa7 plugin.team_author.statusChart.title: \ud604\uc7ac \uc0c1\ud0dc\n\xa7 plugin.team_author.daysChart.title: \uadfc\ubb34 \uc2dc\uac04\n\xa7 plugin.team_author.daysChart.item: \uc77c\n\xa7 plugin.team_author.days.half: \ubc18 \ub144\n\xa7 plugin.team_author.days.one: 1 \ub144\n\xa7 plugin.team_author.days.15: \ud55c \ubc18\n\xa7 plugin.team_author.days.two: 2 \ub144\n\xa7 plugin.team_author.days.more: more than two years\n\xa7 plugin.team_author.title: \uc138\ubd80 \uc815\ubcf4\n\xa7 plugin.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 plugin.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 plugin.team_author.status: \uc0c1\ud0dc\n\xa7 plugin.team_author.company: \ud68c\uc0ac\uc18c\uac1c\n\xa7 plugin.team_author.firstCommit: \uccab \ubc88\uc9f8 \ucee4\ubc0b\n\xa7 plugin.team_author.lastCommit: \ub9c8\uc9c0\ub9c9\n\xa7 plugin.team_author.daysAll: \uadf8\ub0e5 \uc77c\n\xa7 plugin.team_author.types: \uc791\uc5c5 \uc720\ud615\n\xa7 plugin.team_author.commits: \ucee4\ubc0b\n\xa7 plugin.team_author.commitsSmall: \ucee4\ubc0b\n\xa7 plugin.team_author.tasks: \uc791\uc5c5\n\xa7 plugin.team_author.tasksSmall: \uc791\uc5c5\n\xa7 plugin.team_author.workedLosses: \ucee4\ubc0b\uc774 \uc788\ub294 \ub0a0\uacfc \uc5c6\ub294 \ub0a0\n\xa7 plugin.team_author.worked: \uc77c\n\xa7 plugin.team_author.losses: \ucee4\ubc0b \uc5c6\ub294 \uc77c\n\xa7 plugin.team_author.days: \uc77c\n\xa7 plugin.team_author.daysForTask: \uc77c \ub2f9\n\xa7 plugin.team_author.scopes: \uae30\ub2a5 \uc791\uc5c5\n\xa7 plugin.team_author.moneyAll: \uc218\uc2e0\n\xa7 plugin.team_author.moneyWorked: \ubc16\uc73c\ub85c \uc77c\n\xa7 plugin.team_author.moneyLosses: \ucd08\uacfc \uc9c0\ubd88\n\xa7 plugin.team_author.type.work: \uc791\ub3d9 \uc911\n\xa7 plugin.team_author.type.dismissed: \ud574\uace0\ub428\n\xa7 plugin.team_author.type.staff: \uc870\uc218\uac00 \ud574\uace0\ub410\uc5b4\n\xa7 plugin.team_author.employments.less1: one employee\n\xa7 plugin.team_author.employments.less2: two employees\n\xa7 plugin.team_author.employments.less3: three employees\n\xa7 plugin.team_author.employments.less6: up to six employees\n\xa7 plugin.team_author.employments.less9: up to nine employees\n\xa7 plugin.team_author.employments.less12: up to 12 employees\n\xa7 plugin.team_author.employments.less15: up to 15 employees\n\xa7 plugin.team_author.employments.more: more than 15\n',pt:"\n\xa7 plugin.team_author.sidebar: Funcion\xe1rio\n\xa7 plugin.team_author.statusChart.title: Status\n\xa7 plugin.team_author.daysChart.title: Days of work\n\xa7 plugin.team_author.daysChart.item: days\n\xa7 plugin.team_author.days.half: half year\n\xa7 plugin.team_author.days.one: year\n\xa7 plugin.team_author.days.15: year and a half\n\xa7 plugin.team_author.days.two: two years\n\xa7 plugin.team_author.days.more: more than two years\n\xa7 plugin.team_author.title: Details\n\xa7 plugin.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 plugin.team_author.description2: *Default sorting* is by the number of tasks and groups (current, fired, assisting employees).\n\xa7 plugin.team_author.status: Status\n\xa7 plugin.team_author.company: Company\n\xa7 plugin.team_author.firstCommit: First commit\n\xa7 plugin.team_author.lastCommit: Last\n\xa7 plugin.team_author.daysAll: Total days\n\xa7 plugin.team_author.types: Types of work\n\xa7 plugin.team_author.commits: Commits\n\xa7 plugin.team_author.commitsSmall: commits\n\xa7 plugin.team_author.tasks: Tasks\n\xa7 plugin.team_author.tasksSmall: tasks\n\xa7 plugin.team_author.workedLosses: Days with and without commits\n\xa7 plugin.team_author.worked: work\n\xa7 plugin.team_author.losses: days without commits\n\xa7 plugin.team_author.days: days\n\xa7 plugin.team_author.daysForTask: Days per task\n\xa7 plugin.team_author.scopes: Features\n\xa7 plugin.team_author.moneyAll: Received\n\xa7 plugin.team_author.moneyWorked: Worked for\n\xa7 plugin.team_author.moneyLosses: Overpayment\n\xa7 plugin.team_author.type.work: works\n\xa7 plugin.team_author.type.dismissed: dismissed\n\xa7 plugin.team_author.type.staff: staff\n\xa7 plugin.team_author.absence.title: Vacation schedule\n\xa7 plugin.team_author.absence.vacation: Vacation\n\xa7 plugin.team_author.absence.transfer: Department change\n\xa7 plugin.team_author.absence.from: from\n\xa7 plugin.team_author.absence.to: to\n\xa7 plugin.team_author.absence.duration: days\n\xa7 plugin.team_author.employments.less1: one employee\n\xa7 plugin.team_author.employments.less2: two employees\n\xa7 plugin.team_author.employments.less3: three employees\n\xa7 plugin.team_author.employments.less6: up to six employees\n\xa7 plugin.team_author.employments.less9: up to nine employees\n\xa7 plugin.team_author.employments.less12: up to 12 employees\n\xa7 plugin.team_author.employments.less15: up to 15 employees\n\xa7 plugin.team_author.employments.more: more than 15\n",ru:"\n\xa7 plugin.team_author.sidebar: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438\n\xa7 plugin.team_author.statusChart.title: \u0422\u0435\u043a\u0443\u0449\u0438\u0439 \u0441\u0442\u0430\u0442\u0443\u0441\n\xa7 plugin.team_author.daysChart.title: \u0412\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b\n\xa7 plugin.team_author.daysChart.item: \u0434\u043d\u0435\u0439\n\xa7 plugin.team_author.days.half: \u043f\u043e\u043b \u0433\u043e\u0434\u0430\n\xa7 plugin.team_author.days.one: \u0433\u043e\u0434\n\xa7 plugin.team_author.days.15: \u043f\u043e\u043b\u0442\u043e\u0440\u0430\n\xa7 plugin.team_author.days.two: \u0434\u0432\u0430 \u0433\u043e\u0434\u0430\n\xa7 plugin.team_author.days.more: \u0431\u043e\u043b\u044c\u0448\u0435 \u0434\u0432\u0443\u0445 \u043b\u0435\u0442\n\xa7 plugin.team_author.title: \u0414\u0435\u0442\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\n\xa7 plugin.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 plugin.team_author.author: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\n\xa7 plugin.team_author.status: \u0421\u0442\u0430\u0442\u0443\u0441\n\xa7 plugin.team_author.company: \u0421\u0443\u0431\u043f\u043e\u0434\u0440\u044f\u0434\u0447\u0438\u043a\n\xa7 plugin.team_author.firstCommit: \u041f\u0435\u0440\u0432\u044b\u0439 \u043a\u043e\u043c\u043c\u0438\u0442\n\xa7 plugin.team_author.lastCommit: \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439\n\xa7 plugin.team_author.daysAll: \u0412\u0441\u0435\u0433\u043e \u0434\u043d\u0435\u0439\n\xa7 plugin.team_author.types: \u0422\u0438\u043f \u0440\u0430\u0431\u043e\u0442\n\xa7 plugin.team_author.commits: \u041a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.team_author.commitsSmall: \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.team_author.tasks: \u0417\u0430\u0434\u0430\u0447\n\xa7 plugin.team_author.workedLosses: \u0414\u043d\u0438 \u0441 \u043a\u043e\u043c\u043c\u0438\u0442\u0430\u043c\u0438 \u0438 \u0431\u0435\u0437\n\xa7 plugin.team_author.worked: \u0440\u0430\u0431\u043e\u0442\u0430\n\xa7 plugin.team_author.losses: \u0434\u043d\u0438 \u0431\u0435\u0437 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.team_author.daysForTask: \u0414\u043d\u0435\u0439 \u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0443\n\xa7 plugin.team_author.scopes: \u0424\u0438\u0447\n\xa7 plugin.team_author.moneyAll: \u041f\u043e\u043b\u0443\u0447\u0438\u043b\n\xa7 plugin.team_author.moneyWorked: \u041e\u0442\u0440\u0430\u0431\u043e\u0442\u0430\u043b\n\xa7 plugin.team_author.moneyLosses: \u041f\u0435\u0440\u0435\u043f\u043b\u0430\u0442\u0430\n\xa7 plugin.team_author.type.work: \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442\n\xa7 plugin.team_author.type.dismissed: \u0443\u0432\u043e\u043b\u0435\u043d\n\xa7 plugin.team_author.type.staff: \u043f\u043e\u043c\u043e\u0449\u043d\u0438\u043a\n\xa7 plugin.team_author.absence.title: \u0413\u0440\u0430\u0444\u0438\u043a \u043e\u0442\u043f\u0443\u0441\u043a\u043e\u0432\n\xa7 plugin.team_author.absence.vacation: \u041e\u0442\u043f\u0443\u0441\u043a\n\xa7 plugin.team_author.absence.transfer: \u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0432 \u0434\u0440\u0443\u0433\u043e\u0439 \u043e\u0442\u0434\u0435\u043b\n\xa7 plugin.team_author.absence.duration: \u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\n",zh:'\n\xa7 plugin.team_author.sidebar: \u5458\u5de5\n\xa7 plugin.team_author.statusChart.title: Status\n\xa7 plugin.team_author.daysChart.title: Days of work\n\xa7 plugin.team_author.daysChart.item: days\n\xa7 plugin.team_author.days.half: half year\n\xa7 plugin.team_author.days.one: year\n\xa7 plugin.team_author.days.15: year and a half\n\xa7 plugin.team_author.days.two: two years\n\xa7 plugin.team_author.days.more: more than two years\n\xa7 plugin.team_author.title: Details\n\xa7 plugin.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 plugin.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 plugin.team_author.types: \u5de5\u4f5c\u7c7b\u522b\n\xa7 plugin.team_author.commits: Commits\n\xa7 plugin.team_author.commitsSmall: commits\n\xa7 plugin.team_author.tasks: \u4efb\u52a1\n\xa7 plugin.team_author.tasksSmall: \u4efb\u52a1\n\xa7 plugin.team_author.workedLosses: \u6709\u548c\u6ca1\u6709commits\u7684\u65e5\u5b50\n\xa7 plugin.team_author.worked: \u5de5\u4f5c\n\xa7 plugin.team_author.losses: \u6ca1\u6709commits\u7684\u65e5\u5b50\n\xa7 plugin.team_author.days: \u5929\u6570\n\xa7 plugin.team_author.daysForTask: \u6bcf\u9879\u4efb\u52a1\u7684\u5929\u6570\n\xa7 plugin.team_author.scopes: \u4fee\u6539\n\xa7 plugin.team_author.moneyAll: \u6211\u62ff\u5230\u94b1\u4e86\n\xa7 plugin.team_author.moneyWorked: \u5de5\u4f5c\u4e86\n\xa7 plugin.team_author.moneyLosses: \u591a\u4ed8\n\xa7 plugin.team_author.type.work: works\n\xa7 plugin.team_author.type.dismissed: dismissed\n\xa7 plugin.team_author.type.staff: staff\n\xa7 plugin.team_author.absence.title: Vacation schedule\n\xa7 plugin.team_author.absence.vacation: Vacation\n\xa7 plugin.team_author.absence.transfer: Department change\n\xa7 plugin.team_author.absence.from: from\n\xa7 plugin.team_author.absence.to: to\n\xa7 plugin.team_author.absence.duration: days\n\xa7 plugin.team_author.employments.less1: one employee\n\xa7 plugin.team_author.employments.less2: two employees\n\xa7 plugin.team_author.employments.less3: three employees\n\xa7 plugin.team_author.employments.less6: up to six employees\n\xa7 plugin.team_author.employments.less9: up to nine employees\n\xa7 plugin.team_author.employments.less12: up to 12 employees\n\xa7 plugin.team_author.employments.less15: up to 15 employees\n\xa7 plugin.team_author.employments.more: more than 15\n'};function EA(e){var t;const n=null===e||void 0===e?void 0:e.type;return null!==(t={[ho]:"./assets/recommendations/info.svg",[po]:"./assets/recommendations/fact.svg",[uo]:"./assets/recommendations/warning.svg",[co]:"./assets/recommendations/alert.svg"}[n||ho])&&void 0!==t?t:"./assets/recommendations/info.svg"}const IA=function(e){var t;let{recommendation:n,onClick:a}=e;const{t:s}=_u();if(!n)return null;const i=function(e){var t;const n=null===e||void 0===e?void 0:e.type;return null!==(t={[ho]:Zj,[po]:eD,[uo]:tD,[co]:nD}[n||ho])&&void 0!==t?t:eD}(n),o=dC(n),r=null===n||void 0===n||null===(t=n.arguments)||void 0===t?void 0:t.title,l=hC(n).split("\n").shift();return(0,mu.jsxs)("div",{className:"".concat($j," ").concat(i),onClick:Db?a:void 0,children:[(0,mu.jsxs)("h5",{className:Xj,children:[(0,mu.jsx)("img",{className:Qj,src:EA(n)}),He,s(o,r),He]}),(0,mu.jsx)(bw,{style:{color:"#12131B"},text:l||""}),!Db&&(0,mu.jsx)(Gu,{mode:"link",className:Jj,onClick:a,children:s("recommendations.modal.open")})]})},NA="recommendations_container",PA="recommendations_container_for_print";function RA(e){let{recommendations:t,mode:n}=e,a=(t||[]).filter((e=>e)).map((e=>"print"===n?(0,mu.jsx)(sD,{recommendation:e},e.description):(0,mu.jsx)(IA,{recommendation:e,onClick:()=>{gC.open(e)}},e.description)));if(!a.length)return null;"print"!==n&&(a=function(e){const t="".concat($j," ").concat(aD),n=(0,mu.jsx)(cu,{className:t},"banner"),a=Math.floor(Math.random()*e.length),s=e.splice(a);return[...e,n,...s]}(a));const s=Ie("recommendations.title"),i="print"===n?"".concat(NA," scroll_x ").concat(PA):"".concat(NA," scroll_x");return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(sx,{title:s}),(0,mu.jsx)("div",{className:i,onTouchStart:e=>e.stopPropagation(),onMouseDown:e=>e.stopPropagation(),children:a})]})}RA.defaultProps={mode:void 0};const OA=RA,LA="vertical_bar_scale",MA="vertical_bar_scale_wrapper";const FA=function(e){let{max:n,onChange:a}=e;const[s,i]=(0,t.useState)(null),[o,r]=(0,t.useState)(n);return(0,t.useEffect)((()=>{r(n),a(n)}),[n]),(0,mu.jsx)("div",{className:MA,children:(0,mu.jsx)("input",{type:"range",min:1,max:n,value:o,className:LA,onChange:e=>{const t=parseInt(e.target.value||"0",10)||0;r(t),clearTimeout(s),i(setTimeout((()=>{a(t)}),300))}})})},WA="vertical_bar",qA="vertical_bar_item",zA="vertical_bar_line",BA="vertical_bar_line_text";const UA=function(e){let{text:t,bottom:n}=e;return t?(0,mu.jsx)("div",{className:zA,style:{bottom:"".concat(n,"%")},children:(0,mu.jsx)("span",{className:BA,children:t})}):null};function HA(e){let{dots:n,selected:a,onClick:s}=e;const i=Math.max(...n.map((e=>e.value))),[o,r]=(0,t.useState)(i),l=100/n.length+"%",m=100/o,c=n.map(((e,t)=>{return(0,mu.jsx)("div",{className:qA,style:{width:l,height:"".concat((n=e.value,n>o?100:n*m),"%"),backgroundColor:e.meta===a?"#ED675F":""},title:e.title,onClick:()=>{s&&s(e)}},"".concat(e.title,"_").concat(t));var n}));return(0,mu.jsxs)("div",{className:WA,children:[(0,mu.jsx)(FA,{max:i,onChange:r}),(0,mu.jsx)(UA,{text:o,bottom:100}),o>10?(0,mu.jsx)(UA,{text:o/2,bottom:50}):null,c]})}const GA="vertical_bar_few",VA="vertical_bar_few_item",KA="vertical_bar_few_item_column",$A="vertical_bar_few_item_value",YA="vertical_bar_few_line",XA="vertical_bar_few_line_text";const QA=function(e){let{text:t,bottom:n}=e;return t?(0,mu.jsx)("div",{className:YA,style:{bottom:"".concat(n,"%")},children:(0,mu.jsx)("span",{className:XA,children:t})}):null};function JA(e){let{dots:t,selected:n,onClick:a}=e;const s=Math.ceil(Math.max(...t.map((e=>e.value)))),i=100/t.length+"%",o=100/s,r=t.map(((e,t)=>{return(0,mu.jsxs)("div",{className:VA,style:{width:i,height:"".concat((s=e.value,s*o),"%")},children:[(0,mu.jsx)("div",{className:$A,children:e.value}),(0,mu.jsx)("div",{className:KA,title:e.title,style:{backgroundColor:e.meta===n?"#ED675F":""},onClick:()=>{a&&a(e)}})]},"".concat(e.title,"_").concat(t));var s}));return(0,mu.jsxs)("div",{className:GA,children:[(0,mu.jsx)(QA,{text:s,bottom:100}),(0,mu.jsx)(QA,{text:s/2,bottom:50}),r]})}const ZA={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 eE=function(){const e=new Array(25).fill(1).map(((e,t)=>t?(0,mu.jsxs)("div",{className:ZA.hours_chart_day_time,children:[(0,mu.jsx)("span",{className:ZA.hours_chart_day_time_hh,children:lo(t-1)}),(0,mu.jsx)("span",{className:ZA.hours_chart_day_time_mm,children:":00"})]},t):(0,mu.jsx)("div",{className:ZA.hours_chart_day_name},t)));return(0,mu.jsx)(mu.Fragment,{children:e})};const tE=function(e){let{week:t,isWeekend:n,max:a}=e;const s=t.map(((e,t)=>{const s=function(e,t){if(!e)return 0;const n=100*e/t;return(n-n%1)/100}(e,a),i=s>.2?"#FFFFFF":"#CBCBCD",o=n||t<7||t>20?"237, 103, 95":"65, 98, 181";return(0,mu.jsx)("div",{className:ZA.hours_chart_hour,style:{color:i,backgroundColor:"rgba(".concat(o,", ").concat(s,")")},children:e||""},t)}));return(0,mu.jsx)(mu.Fragment,{children:s})},nE="hours_chart_legend",aE="hours_chart_legend_item",sE="hours_chart_legend_work",iE="hours_chart_legend_weekend",oE="hours_chart_legend_count",rE="hours_chart_legend_title";const lE=function(){const{t:e}=_u();return(0,mu.jsxs)("div",{className:nE,children:[(0,mu.jsxs)("div",{className:aE,children:[(0,mu.jsx)("div",{className:sE}),(0,mu.jsx)("div",{className:rE,children:e("uiKit.hoursChart.work")})]}),(0,mu.jsxs)("div",{className:aE,children:[(0,mu.jsx)("div",{className:iE}),(0,mu.jsx)("div",{className:rE,children:e("uiKit.hoursChart.weekend")})]}),(0,mu.jsxs)("div",{className:aE,children:[(0,mu.jsx)("div",{className:oE,children:"42"}),(0,mu.jsx)("div",{className:rE,children:e("uiKit.hoursChart.days")})]})]})},mE=yi((e=>{let{max:t,commitsByDayAndHour:n}=e;const a=n.map(((e,n)=>{var a,s;const i=!(null!==(a=so.config)&&void 0!==a&&null!==(s=a.workDays)&&void 0!==s&&s[n]);return(0,mu.jsxs)("div",{className:ZA.hours_chart_day,children:[(0,mu.jsx)("div",{className:ZA.hours_chart_day_name,children:Xi(n,"short")}),(0,mu.jsx)(tE,{week:e,isWeekend:i,max:t})]},n)}));return(0,mu.jsxs)("div",{className:ZA.hours_chart_user,children:[(0,mu.jsxs)("div",{className:ZA.hours_chart_data,children:[(0,mu.jsx)("div",{className:ZA.hours_chart_day,children:(0,mu.jsx)(eE,{})}),a]}),(0,mu.jsx)(lE,{})]})}));class cE{constructor(e){if(this.refColorByTitle=new Map,null===e||void 0===e||!e.length)return;const t=["#7F9BE0","#E9A5A1","#C2ECC1","#A7C0FF","#75CCE0","#EC95B6","#4F69A9","#824844","#E0BE69","#B2E069","#A18BE0","#FFC178","#E2DA84","#B6BAE9","#D7D4B1","#E0BA96","#C0D79C","#B6C5C9","#9E98AD","#AACFD8","#BAB2D0","#DCBAC7"];e.map(((e,n)=>{const a=n%20;this.refColorByTitle.set(e,{first:t[a],second:"#FFFFFF"})}))}get(e){return this.refColorByTitle.get(e)||{first:cE.DEFAULT,second:cE.DEFAULT}}}function uE(e,t,n,a){const s=Object.entries(e);null!==t&&void 0!==t&&t.length&&s.sort(((e,n)=>t.indexOf(e[0])-t.indexOf(n[0])));const i=s.reduce(((e,t)=>e+t[1]),0);let o=[],r=[],l=[],m=0;if(s.forEach((e=>{let[t,a]=e;const s=function(e,t){return Math.round(e*(100/t))}(a||0,i),c={title:t,value:a,width:s};o.push(c),s>=(n||5)?(r.push(c),m+=s):l.push(c)})),o=o.filter((e=>e.width>=1)),r=r.filter((e=>e.width>=1)),0===l.length)return r;if(1===l.length)return o;const c=function(e,t,n){let a=0;const s=100-t,i=[];return e.forEach((e=>{a+=e.value,e.title&&i.push(e.title)})),{title:n,value:a,width:s,description:i.join(", ")}}(l,m,a||"...");return c.width>1?[...r,c]:r}function pE(e,t,n,a,s,i){const o=Math.abs(s-i)>180?1:0,r=(n,a)=>function(e,t,n,a){const s=a*Math.PI/180;return[e+n*Math.cos(s),t+n*Math.sin(s)]}(e,t,n,a).map((e=>e.toPrecision(5))).join(",");return["M".concat(r(n,s)),"A".concat(n,",").concat(n,",0,").concat(o,",1,").concat(r(n,i)),"L".concat(r(a,i)),"A".concat(a,",").concat(a,",0,").concat(o,",0,").concat(r(a,s)),"Z"].join("")}cE.DEFAULT="#D0D1D2";const dE="pie_svg",hE="pie_svg_sector";function gE(e){let{parts:t,center:n,color:a,suffix:s}=e;const{text:i}=_u(),o=(n||72)/100*49,r=s?i(s):"";let l=0;const m=t.length-1,c=t.map(((e,t)=>{const n=a.get(e.title).first,s=360*e.width/100,c=360===s||m===t?359.9:s,u=Math.min(l+c,360),p=pE(50,50,o,50,l+-90,u+-90);l+=s;const d=e.value&&r?" (".concat(e.value||""," ").concat(r,")"):"";return(0,mu.jsx)("path",{style:{fill:n},d:p,className:hE,children:(0,mu.jsx)("title",{children:"".concat(i(e.title)).concat(d)})},e.title)}));return(0,mu.jsx)("svg",{viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid meet",xmlns:"http://www.w3.org/2000/svg",className:dE,children:c})}gE.defaultProps={className:""};const fE=gE,yE="pie_chart",vE="pie_chart_data",_E="pie_chart_icon",kE="pie_chart_legend",bE="pie_chart_value",wE="pie_chart_description",xE="pie_chart_line",TE="pie_chart_color",CE="pie_chart_percent",SE="pie_chart_text";const jE=function(e){let{parts:n,color:a}=e;const{t:s}=_u(),i=(0,t.useRef)(),[o,r]=(0,t.useState)(1);(0,t.useLayoutEffect)((()=>{r(function(e,t){var n,a;if(!t||Db||e.length<=7)return 1;const s=(null===t||void 0===t||null===(n=t.parentNode)||void 0===n||null===(a=n.getBoundingClientRect())||void 0===a?void 0:a.width)||0,i=Math.floor(s/300)||1,o=Math.round(e.length/8);return Math.min(o,i)}(n,null===i||void 0===i?void 0:i.current))}),[i,i.current]);const l=n.map((e=>(0,mu.jsxs)("p",{className:xE,children:[(0,mu.jsx)("span",{className:TE,style:{backgroundColor:a.get(e.title).first}}),(0,mu.jsx)("span",{className:CE,children:"".concat(e.width,"%")}),(0,mu.jsx)("span",{className:SE,children:s(e.title)})]},e.title)));return(0,mu.jsx)("div",{ref:i,className:kE,style:{columnCount:o},children:l})};function DE(e){let{title:t,description:n,value:a,details:s,max:i,suffix:o,other:r,order:l,limit:m,center:c,className:u}=e;if(!s)return null;const{t:p}=_u(),d=i||100,h=l||Object.keys(s),g=(null===h||void 0===h?void 0:h.length)>7?.2*d:1,f=uE(s,h,m||g,r),y=f.length>6?"flex-start":"center",v=new cE(h);return(0,mu.jsxs)("div",{className:"".concat(yE," ").concat(u||""),children:[(0,mu.jsx)(sx,{title:t||""}),(0,mu.jsxs)("div",{className:vE,style:{alignItems:y},children:[(0,mu.jsxs)("div",{className:_E,children:[(0,mu.jsx)(fE,{parts:f,color:v,suffix:o,center:c}),a?(0,mu.jsx)("div",{className:bE,children:a}):null,a&&o?(0,mu.jsx)("div",{className:wE,children:p(n)||p(o)}):null]}),(0,mu.jsx)(jE,{parts:f,color:v})]})]})}DE.defaultProps={value:void 0,details:void 0,className:"",title:""};const AE=DE;function EE(e){let{value:t,width:n,title:a,description:s,suffix:i,color:o,className:r,formatter:l}=e;const{text:m}=_u();if(!n||n<=0)return null;const c=m(a||""),u=m(s||"")||c,p=l?l(t):t,d=i?" ".concat(m(i||"")):"",h=t?"".concat(n,"% (").concat(p).concat(d,") ").concat(u):"".concat(n,"% ").concat(u);return(0,mu.jsx)("div",{className:r,style:{width:"".concat(n,"%"),color:null===o||void 0===o?void 0:o.second,padding:c?"0 0 0 4px":"0",backgroundColor:null===o||void 0===o?void 0:o.first},title:h,children:c})}EE.defaultProps={value:0,width:0,title:"",description:"",suffix:"",color:null,className:"",formatter:e=>e};const IE=EE,NE="line_chart",PE="line_chart_item",RE="line_chart_sub_item";function OE(e){let{value:t,details:n,max:a,suffix:s,order:i,limit:o,formatter:r,className:l}=e;if(0===t||!t&&!n)return null;const m=a||t||100,c=t||a||100,u=null!==i&&void 0!==i&&i.length?new cE(i):void 0;let p=Math.round(c*(100/m));if(p<1)return null;if(p>100&&(p=100),!n)return(0,mu.jsx)("div",{className:"".concat(NE," ").concat(l||""),children:(0,mu.jsx)(IE,{value:t,width:p,suffix:s,formatter:r,className:PE})});const d=uE(n,i,o||4).map((e=>(0,mu.jsx)(IE,{title:e.title,value:e.value,width:e.width,color:null===u||void 0===u?void 0:u.get(e.title),suffix:s,formatter:r,description:e.description,className:RE},e.title)));return(0,mu.jsx)("div",{className:"".concat(NE," ").concat(l||""),children:(0,mu.jsx)("div",{className:PE,style:{width:"".concat(p,"%")},children:d})})}OE.defaultProps={max:void 0,suffix:"commits",value:void 0,formatter:void 0,details:void 0,className:""};const LE=OE,ME="gantt_chart",FE="gantt_chart_circle",WE="gantt_chart_line",qE="gantt_chart_marker_bg",zE="gantt_chart_marker_line";const BE=function(e){let{right:t,children:n}=e;return(0,mu.jsx)("div",{className:FE,style:{right:"".concat(100-t,"%")},children:n})};const UE=function(e){let{left:t,right:n,children:a}=e;return(0,mu.jsx)("div",{className:WE,style:{left:"".concat(t,"%"),right:"".concat(100-n,"%")},children:a})};const HE=function(e){let{left:t}=e;return(0,mu.jsx)("div",{className:zE,style:{left:"".concat(t,"%")}})};const GE=function(e){let{title:t,left:n,right:a}=e;return(0,mu.jsx)("div",{className:qE,style:{left:"".concat(n,"%"),right:"".concat(100-a,"%")},children:t||""})};function VE(e,t){return[(null===t||void 0===t?void 0:t.from)/3.66,(null===t||void 0===t?void 0:t.to)/3.66]}const KE=new Array(12).fill(null).map(((e,t)=>({from:30*t+1}))),$E=KE.map(((e,t)=>({title:t>=9?"2024-".concat(t+1,"-01"):"2024-0".concat(t+1,"-01"),from:e.from,to:e.from+30})));function YE(){return[(0,t.useMemo)((()=>$E.map((e=>({...e,title:Ji(e.title,{month:"long"})})))),[Ee.language]),KE]}function XE(e){let{lines:t,markersText:n,markersLine:a,formatter:s,className:i,mode:o}=e;const r=s||VE,l=(a||[]).map(((e,t)=>{const[n]=r("marker",e);return(0,mu.jsx)(HE,{left:n},t)})),m=(n||[]).map(((e,t)=>{const[n,a]=r("marker",e);return(0,mu.jsx)(GE,{left:n,right:a,title:e.title},t)})),c=(t||[]).map(((e,t)=>{const[n,a]=r("line",e);return o?(0,mu.jsx)(BE,{right:a},t):(0,mu.jsx)(UE,{left:n,right:a},t)}));return(0,mu.jsxs)("div",{className:"".concat(ME," ").concat(i||""),children:[c,l,m]})}XE.defaultProps={className:""};const QE=XE,JE={HALF:"page.team.author.days.half",ONE:"page.team.author.days.one",HALF_ONE:"page.team.author.days.15",TWO:"page.team.author.days.two",MORE:"page.team.author.days.more"},ZE=Object.values(JE);function eI(e,t){const n=new Uo;return{details:e.reduce(((e,a)=>{const s=a[t];return n.update(s),Vo(e,s<183?JE.HALF:s<365?JE.ONE:s<547?JE.HALF_ONE:s<730?JE.TWO:JE.MORE),e}),{}),weightedAverage:n.get()}}const tI={DAY:"plugin.team_pull_requests.chart.1day",THREE_DAY:"plugin.team_pull_requests.chart.3day",WEEK:"plugin.team_pull_requests.chart.7day",TWO_WEEK:"plugin.team_pull_requests.chart.14day",MONTH:"plugin.team_pull_requests.chart.30day",MORE:"plugin.team_pull_requests.chart.more"},nI=Object.values(tI);function aI(e,t){const n=new Uo;return{details:e.reduce(((e,a)=>{const s=a[t];return n.update(s),Vo(e,s<=1?tI.DAY:s<=2?tI.THREE_DAY:s<=7?tI.WEEK:s<=14?tI.TWO_WEEK:s<=30?tI.MONTH:tI.MORE),e}),{}),weightedAverage:n.get()}}function sI(e,t){const n=e.content,a=new Array(t.length).fill(0),s=t.length-1;for(let o=n.length-1;o>=0;o--)for(let e=s;e>=0;e--){var i;const s=null===(i=n[o])||void 0===i?void 0:i[t[e]];a[e]=s>a[e]?s:a[e]}return a}function iI(e,t){return function(e,t,n){return Math.max(...e.content.map((e=>n?e[t][n]||0:e[t]||0)))}(e,t,"length")}function oI(e){return"days"===e?[eI,ZE,JE]:[aI,nI,tI]}const[rI,lI]=oI("days"),mI=yi((()=>{var e;const t=PT.statisticsByCommits.author.totalInfo,n=PT.statisticsByCommits.author.employment,[a,s]=function(e){const[t,n,a]=["plugin.team_author.type.work","plugin.team_author.type.dismissed","plugin.team_author.type.staff"];return[[t,n,a],{[t]:e.active.length,[n]:e.dismissed.length,[a]:e.staff.length}]}(n),i=null===(e=rI(t,"totalDays"))||void 0===e?void 0:e.details;return(0,mu.jsxs)(yT,{children:[(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_author.statusChart.title",suffix:"common.statistic.employees",order:a,limit:1,details:s})}),(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_author.daysChart.title",suffix:"common.statistic.employees",order:lI,limit:1,details:i})})]})}));function cI(e){let{rows:t,max:n,year:a}=e;return(0,mu.jsxs)(Wp,{rows:t,children:[(0,mu.jsx)(zp,{template:_p.STRING,properties:"empty",width:40}),(0,mu.jsx)(zp,{title:a,formatter:e=>e.duration>40?"plugin.team_author.absence.transfer":"plugin.team_author.absence.vacation",template:_p.TAGS,minWidth:200}),(0,mu.jsx)(zp,{template:_p.STRING,properties:"from",width:130,formatter:e=>Zi(e.milliseconds)}),(0,mu.jsx)(zp,{template:_p.STRING,properties:"to",width:130,formatter:e=>Zi(e.milliseconds)}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"duration",width:90}),(0,mu.jsx)(zp,{isSortable:!0,properties:"duration",title:"plugin.team_author.absence.duration",width:300,template:e=>(0,mu.jsx)(LE,{value:e,max:n,suffix:"common.statistic.days"})})]})}function uI(e){let{rows:t}=e;if(!t||null===t||void 0===t||!t.length)return null;const[n]=sI({content:t},["duration"]),a=function(e){return e.reduce(((e,t)=>{const n=t.from.year;return e[n]||(e[n]=[]),e[n].push(t),e}),{})}(t),s=Object.entries(a).reverse().map((e=>{let[t,a]=e;const s=a.length>6?a.sort(((e,t)=>t.duration-e.duration)).slice(0,5).sort(((e,t)=>t.from.milliseconds-e.from.milliseconds)):a;return(0,mu.jsx)(cI,{max:n,rows:s,year:t},t)}));return(0,mu.jsx)(mu.Fragment,{children:s})}uI.defaultProps={response:void 0};const pI=uI;function dI(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;if(!t)return null;const[i,o,r,l,m]=["plugin.team_author.type.work","plugin.team_author.type.dismissed","plugin.team_author.type.staff","plugin.team_author.worked","plugin.team_author.losses"],[c,u]=sI(t,["commits","totalTasks"]),p=PT.statisticsByCommits.absence.totalInfoByName,d=t.content.map((e=>{const t=p.get(e.author)||[];return{...e,absence:t.length}}));return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:d,sort:t.sort,updateSort:n,mode:s,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,template:_p.DETAILS,width:40,formatter:e=>{const t=p.get(e.author)||[];return(0,mu.jsx)(pI,{rows:t})}}),(0,mu.jsx)(zp,{isFixed:!0,template:_p.STRING,formatter:(e,t)=>t+1,width:40}),(0,mu.jsx)(zp,{isFixed:!0,template:_p.STRING,properties:"author",title:"plugin.team_author.author",width:200}),(0,mu.jsx)(zp,{title:"plugin.team_author.status",formatter:e=>e.isStaff?r:e.isDismissed?o:i,template:_p.TAGS,width:100}),(0,mu.jsx)(zp,{isSortable:"company",title:"plugin.team_author.company",properties:"lastCompany",template:_p.TAGS,width:150}),(0,mu.jsx)(zp,{template:_p.STRING,properties:"firstCommit",title:"plugin.team_author.firstCommit",width:130,formatter:Zi}),(0,mu.jsx)(zp,{template:_p.STRING,properties:"lastCommit",title:"plugin.team_author.lastCommit",width:130,formatter:Zi}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,title:"plugin.team_author.daysAll",properties:"totalDays",formatter:e=>e||1,width:90}),(0,mu.jsx)(zp,{isSortable:"daysWorked",title:"plugin.team_author.workedLosses",minWidth:300,template:e=>(0,mu.jsx)(LE,{details:e,order:[l,m],suffix:"common.statistic.days"}),formatter:e=>({[l]:e.totalDaysWithCommits,[m]:e.totalDaysWithoutCommits})}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"totalTasks"}),(0,mu.jsx)(zp,{isSortable:!0,properties:"totalTasks",title:"plugin.team_author.tasks",minWidth:200,template:e=>(0,mu.jsx)(LE,{value:e,max:u,suffix:"common.statistic.tasks"})}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,title:"plugin.team_author.daysForTask",properties:"totalTaskInDay",formatter:mo,width:120}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,title:"plugin.team_author.scopes",properties:"totalScopes"}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"commits"}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_author.commits",properties:"commits",minWidth:100,template:e=>(0,mu.jsx)(LE,{value:e,max:c})}),(0,mu.jsx)(zp,{title:"plugin.team_author.types",properties:"types",width:400,template:e=>(0,mu.jsx)(LE,{details:e,order:PT.statisticsByCommits.type.list,limit:1})}),(0,mu.jsx)(zp,{template:_p.NUMBER,title:"plugin.team_author.moneyAll",properties:"totalMoney",formatter:oo}),(0,mu.jsx)(zp,{template:_p.NUMBER,title:"plugin.team_author.moneyWorked",properties:"totalMoneyWorked",formatter:oo}),(0,mu.jsx)(zp,{template:_p.NUMBER,title:"plugin.team_author.moneyLosses",properties:"totalMoneyLosses",formatter:oo})]})}dI.defaultProps={response:void 0};const hI=dI,gI=yi((e=>{var t;let{mode:n}=e;const a=PT.statisticsByCommits.author.totalInfo;if(null===a||void 0===a||!a.length)return"print"!==n?(0,mu.jsx)(Hw,{}):null;const s=null===(t=PT.statisticsByCommits.recommendations.team)||void 0===t?void 0:t.byAuthor;return(0,mu.jsxs)(mu.Fragment,{children:["fullscreen"!==n&&(0,mu.jsx)(OA,{mode:n,recommendations:s}),(0,mu.jsx)(dT,{height:"xl"}),(0,mu.jsx)(mI,{}),(0,mu.jsx)(sx,{title:"plugin.team_author.title"}),(0,mu.jsxs)(tS,{content:a,mode:n,watch:"".concat(n).concat(PT.hash),children:[(0,mu.jsx)(hI,{mode:n,rowsForExcel:a}),(0,mu.jsx)(KC,{})]}),(0,mu.jsx)(bw,{translationId:"plugin.team_author.description1"})]})})),fI=gI;class yI{getMenuItems(){return[{id:"author",group:10,order:30,link:"/team/author",title:"sidebar.team.author",icon:"./assets/menu/team_work.svg"}]}getPage(e,t){return"/team/author"===e?(0,mu.jsx)(fI,{mode:null===t||void 0===t?void 0:t.mode}):void 0}getTranslations(){return AA}}yI.id="team_author";const vI={ar:'\n\xa7 plugin.team_building.sidebar: Games\n\xa7 plugin.team_building.races.title: The speed of closing tasks\n\xa7 plugin.team_building.races.go: Let\'s go!\n\xa7 plugin.team_building.swimmingPool.title: Maximum commit message length\n\xa7 plugin.team_building.quiz.start: Start a quiz\n\xa7 plugin.team_building.quiz.next: Next question\n\xa7 plugin.team_building.quiz.replay: Re-play?\n\xa7 plugin.team_building.quiz.question01: Who made the first commit?\n\xa7 plugin.team_building.quiz.question02: Who closed more tasks?\n\xa7 plugin.team_building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 plugin.team_building.quiz.question04: Who has been working on the project the longest?\n\xa7 plugin.team_building.quiz.question05: Who worked the least on the project?\n\xa7 plugin.team_building.quiz.question08: Who has the longest commit signatures?\n\xa7 plugin.team_building.quiz.question09: Who has the shortest commit signatures?\n\xa7 plugin.team_building.quiz.question11: How many people have quit?\n\xa7 plugin.team_building.quiz.question12: How many people helped the project?\n\xa7 plugin.team_building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 plugin.team_building.quiz.question14: What type of tasks have been added more?\n\xa7 plugin.team_building.quiz.question15: How many days do they work on the project on average?\n\xa7 plugin.team_building.quiz.question16: Who created the most directories?\n\xa7 plugin.team_building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 plugin.team_building.quiz.question18: Who clicks the "Merge" button for PR more often than others?\n\xa7 plugin.team_building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 plugin.team_building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 plugin.team_building.quiz.begin: How well do you know the team?\n\xa7 plugin.team_building.quiz.result1.title: Not enough\n\xa7 plugin.team_building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result2.title: Well\n\xa7 plugin.team_building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result3.title: Great\n\xa7 plugin.team_building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n',de:'\n\xa7 plugin.team_building.sidebar: Games\n\xa7 plugin.team_building.races.title: The speed of closing tasks\n\xa7 plugin.team_building.races.go: Let\'s go!\n\xa7 plugin.team_building.swimmingPool.title: Maximum commit message length\n\xa7 plugin.team_building.quiz.start: Start a quiz\n\xa7 plugin.team_building.quiz.next: Next question\n\xa7 plugin.team_building.quiz.replay: Re-play?\n\xa7 plugin.team_building.quiz.question01: Who made the first commit?\n\xa7 plugin.team_building.quiz.question02: Who closed more tasks?\n\xa7 plugin.team_building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 plugin.team_building.quiz.question04: Who has been working on the project the longest?\n\xa7 plugin.team_building.quiz.question05: Who worked the least on the project?\n\xa7 plugin.team_building.quiz.question08: Who has the longest commit signatures?\n\xa7 plugin.team_building.quiz.question09: Who has the shortest commit signatures?\n\xa7 plugin.team_building.quiz.question11: How many people have quit?\n\xa7 plugin.team_building.quiz.question12: How many people helped the project?\n\xa7 plugin.team_building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 plugin.team_building.quiz.question14: What type of tasks have been added more?\n\xa7 plugin.team_building.quiz.question15: How many days do they work on the project on average?\n\xa7 plugin.team_building.quiz.question16: Who created the most directories?\n\xa7 plugin.team_building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 plugin.team_building.quiz.question18: Who clicks the "Merge" button for PR more often than others?\n\xa7 plugin.team_building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 plugin.team_building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 plugin.team_building.quiz.begin: How well do you know the team?\n\xa7 plugin.team_building.quiz.result1.title: Not enough\n\xa7 plugin.team_building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result2.title: Well\n\xa7 plugin.team_building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result3.title: Great\n\xa7 plugin.team_building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n',en:'\n\xa7 plugin.team_building.sidebar: Games\n\xa7 plugin.team_building.races.title: The speed of closing tasks\n\xa7 plugin.team_building.races.go: Let\'s go!\n\xa7 plugin.team_building.swimmingPool.title: Maximum commit message length\n\xa7 plugin.team_building.quiz.start: Start a quiz\n\xa7 plugin.team_building.quiz.next: Next question\n\xa7 plugin.team_building.quiz.replay: Re-play?\n\xa7 plugin.team_building.quiz.question01: Who made the first commit?\n\xa7 plugin.team_building.quiz.question02: Who closed more tasks?\n\xa7 plugin.team_building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 plugin.team_building.quiz.question04: Who has been working on the project the longest?\n\xa7 plugin.team_building.quiz.question05: Who worked the least on the project?\n\xa7 plugin.team_building.quiz.question08: Who has the longest commit signatures?\n\xa7 plugin.team_building.quiz.question09: Who has the shortest commit signatures?\n\xa7 plugin.team_building.quiz.question11: How many people have quit?\n\xa7 plugin.team_building.quiz.question12: How many people helped the project?\n\xa7 plugin.team_building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 plugin.team_building.quiz.question14: What type of tasks have been added more?\n\xa7 plugin.team_building.quiz.question15: How many days do they work on the project on average?\n\xa7 plugin.team_building.quiz.question16: Who created the most directories?\n\xa7 plugin.team_building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 plugin.team_building.quiz.question18: Who clicks the "Merge" button for PR more often than others?\n\xa7 plugin.team_building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 plugin.team_building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 plugin.team_building.quiz.begin: How well do you know the team?\n\xa7 plugin.team_building.quiz.result1.title: Not enough\n\xa7 plugin.team_building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result2.title: Well\n\xa7 plugin.team_building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result3.title: Great\n\xa7 plugin.team_building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n',es:'\n\xa7 plugin.team_building.sidebar: Games\n\xa7 plugin.team_building.races.title: The speed of closing tasks\n\xa7 plugin.team_building.races.go: Let\'s go!\n\xa7 plugin.team_building.swimmingPool.title: Maximum commit message length\n\xa7 plugin.team_building.quiz.start: Start a quiz\n\xa7 plugin.team_building.quiz.next: Next question\n\xa7 plugin.team_building.quiz.replay: Re-play?\n\xa7 plugin.team_building.quiz.question01: Who made the first commit?\n\xa7 plugin.team_building.quiz.question02: Who closed more tasks?\n\xa7 plugin.team_building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 plugin.team_building.quiz.question04: Who has been working on the project the longest?\n\xa7 plugin.team_building.quiz.question05: Who worked the least on the project?\n\xa7 plugin.team_building.quiz.question08: Who has the longest commit signatures?\n\xa7 plugin.team_building.quiz.question09: Who has the shortest commit signatures?\n\xa7 plugin.team_building.quiz.question11: How many people have quit?\n\xa7 plugin.team_building.quiz.question12: How many people helped the project?\n\xa7 plugin.team_building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 plugin.team_building.quiz.question14: What type of tasks have been added more?\n\xa7 plugin.team_building.quiz.question15: How many days do they work on the project on average?\n\xa7 plugin.team_building.quiz.question16: Who created the most directories?\n\xa7 plugin.team_building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 plugin.team_building.quiz.question18: Who clicks the "Merge" button for PR more often than others?\n\xa7 plugin.team_building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 plugin.team_building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 plugin.team_building.quiz.begin: How well do you know the team?\n\xa7 plugin.team_building.quiz.result1.title: Not enough\n\xa7 plugin.team_building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result2.title: Well\n\xa7 plugin.team_building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result3.title: Great\n\xa7 plugin.team_building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n',fr:'\n\xa7 plugin.team_building.sidebar: Games\n\xa7 plugin.team_building.races.title: The speed of closing tasks\n\xa7 plugin.team_building.races.go: Let\'s go!\n\xa7 plugin.team_building.swimmingPool.title: Maximum commit message length\n\xa7 plugin.team_building.quiz.start: Start a quiz\n\xa7 plugin.team_building.quiz.next: Next question\n\xa7 plugin.team_building.quiz.replay: Re-play?\n\xa7 plugin.team_building.quiz.question01: Who made the first commit?\n\xa7 plugin.team_building.quiz.question02: Who closed more tasks?\n\xa7 plugin.team_building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 plugin.team_building.quiz.question04: Who has been working on the project the longest?\n\xa7 plugin.team_building.quiz.question05: Who worked the least on the project?\n\xa7 plugin.team_building.quiz.question08: Who has the longest commit signatures?\n\xa7 plugin.team_building.quiz.question09: Who has the shortest commit signatures?\n\xa7 plugin.team_building.quiz.question11: How many people have quit?\n\xa7 plugin.team_building.quiz.question12: How many people helped the project?\n\xa7 plugin.team_building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 plugin.team_building.quiz.question14: What type of tasks have been added more?\n\xa7 plugin.team_building.quiz.question15: How many days do they work on the project on average?\n\xa7 plugin.team_building.quiz.question16: Who created the most directories?\n\xa7 plugin.team_building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 plugin.team_building.quiz.question18: Who clicks the "Merge" button for PR more often than others?\n\xa7 plugin.team_building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 plugin.team_building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 plugin.team_building.quiz.begin: How well do you know the team?\n\xa7 plugin.team_building.quiz.result1.title: Not enough\n\xa7 plugin.team_building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result2.title: Well\n\xa7 plugin.team_building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result3.title: Great\n\xa7 plugin.team_building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n',he:'\n\xa7 plugin.team_building.sidebar: Games\n\xa7 plugin.team_building.races.title: The speed of closing tasks\n\xa7 plugin.team_building.races.go: Let\'s go!\n\xa7 plugin.team_building.swimmingPool.title: Maximum commit message length\n\xa7 plugin.team_building.quiz.start: Start a quiz\n\xa7 plugin.team_building.quiz.next: Next question\n\xa7 plugin.team_building.quiz.replay: Re-play?\n\xa7 plugin.team_building.quiz.question01: Who made the first commit?\n\xa7 plugin.team_building.quiz.question02: Who closed more tasks?\n\xa7 plugin.team_building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 plugin.team_building.quiz.question04: Who has been working on the project the longest?\n\xa7 plugin.team_building.quiz.question05: Who worked the least on the project?\n\xa7 plugin.team_building.quiz.question08: Who has the longest commit signatures?\n\xa7 plugin.team_building.quiz.question09: Who has the shortest commit signatures?\n\xa7 plugin.team_building.quiz.question11: How many people have quit?\n\xa7 plugin.team_building.quiz.question12: How many people helped the project?\n\xa7 plugin.team_building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 plugin.team_building.quiz.question14: What type of tasks have been added more?\n\xa7 plugin.team_building.quiz.question15: How many days do they work on the project on average?\n\xa7 plugin.team_building.quiz.question16: Who created the most directories?\n\xa7 plugin.team_building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 plugin.team_building.quiz.question18: Who clicks the "Merge" button for PR more often than others?\n\xa7 plugin.team_building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 plugin.team_building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 plugin.team_building.quiz.begin: How well do you know the team?\n\xa7 plugin.team_building.quiz.result1.title: Not enough\n\xa7 plugin.team_building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result2.title: Well\n\xa7 plugin.team_building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result3.title: Great\n\xa7 plugin.team_building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n',hi:'\n\xa7 plugin.team_building.sidebar: Games\n\xa7 plugin.team_building.races.title: The speed of closing tasks\n\xa7 plugin.team_building.races.go: Let\'s go!\n\xa7 plugin.team_building.swimmingPool.title: Maximum commit message length\n\xa7 plugin.team_building.quiz.start: Start a quiz\n\xa7 plugin.team_building.quiz.next: Next question\n\xa7 plugin.team_building.quiz.replay: Re-play?\n\xa7 plugin.team_building.quiz.question01: Who made the first commit?\n\xa7 plugin.team_building.quiz.question02: Who closed more tasks?\n\xa7 plugin.team_building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 plugin.team_building.quiz.question04: Who has been working on the project the longest?\n\xa7 plugin.team_building.quiz.question05: Who worked the least on the project?\n\xa7 plugin.team_building.quiz.question08: Who has the longest commit signatures?\n\xa7 plugin.team_building.quiz.question09: Who has the shortest commit signatures?\n\xa7 plugin.team_building.quiz.question11: How many people have quit?\n\xa7 plugin.team_building.quiz.question12: How many people helped the project?\n\xa7 plugin.team_building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 plugin.team_building.quiz.question14: What type of tasks have been added more?\n\xa7 plugin.team_building.quiz.question15: How many days do they work on the project on average?\n\xa7 plugin.team_building.quiz.question16: Who created the most directories?\n\xa7 plugin.team_building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 plugin.team_building.quiz.question18: Who clicks the "Merge" button for PR more often than others?\n\xa7 plugin.team_building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 plugin.team_building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 plugin.team_building.quiz.begin: How well do you know the team?\n\xa7 plugin.team_building.quiz.result1.title: Not enough\n\xa7 plugin.team_building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result2.title: Well\n\xa7 plugin.team_building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result3.title: Great\n\xa7 plugin.team_building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n',ja:'\n\xa7 plugin.team_building.sidebar: Games\n\xa7 plugin.team_building.races.title: The speed of closing tasks\n\xa7 plugin.team_building.races.go: Let\'s go!\n\xa7 plugin.team_building.swimmingPool.title: Maximum commit message length\n\xa7 plugin.team_building.quiz.start: Start a quiz\n\xa7 plugin.team_building.quiz.next: Next question\n\xa7 plugin.team_building.quiz.replay: Re-play?\n\xa7 plugin.team_building.quiz.question01: Who made the first commit?\n\xa7 plugin.team_building.quiz.question02: Who closed more tasks?\n\xa7 plugin.team_building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 plugin.team_building.quiz.question04: Who has been working on the project the longest?\n\xa7 plugin.team_building.quiz.question05: Who worked the least on the project?\n\xa7 plugin.team_building.quiz.question08: Who has the longest commit signatures?\n\xa7 plugin.team_building.quiz.question09: Who has the shortest commit signatures?\n\xa7 plugin.team_building.quiz.question11: How many people have quit?\n\xa7 plugin.team_building.quiz.question12: How many people helped the project?\n\xa7 plugin.team_building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 plugin.team_building.quiz.question14: What type of tasks have been added more?\n\xa7 plugin.team_building.quiz.question15: How many days do they work on the project on average?\n\xa7 plugin.team_building.quiz.question16: Who created the most directories?\n\xa7 plugin.team_building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 plugin.team_building.quiz.question18: Who clicks the "Merge" button for PR more often than others?\n\xa7 plugin.team_building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 plugin.team_building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 plugin.team_building.quiz.begin: How well do you know the team?\n\xa7 plugin.team_building.quiz.result1.title: Not enough\n\xa7 plugin.team_building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result2.title: Well\n\xa7 plugin.team_building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result3.title: Great\n\xa7 plugin.team_building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n',ko:'\n\xa7 plugin.team_building.sidebar: Games\n\xa7 plugin.team_building.races.title: The speed of closing tasks\n\xa7 plugin.team_building.races.go: Let\'s go!\n\xa7 plugin.team_building.swimmingPool.title: Maximum commit message length\n\xa7 plugin.team_building.quiz.start: Start a quiz\n\xa7 plugin.team_building.quiz.next: Next question\n\xa7 plugin.team_building.quiz.replay: Re-play?\n\xa7 plugin.team_building.quiz.question01: Who made the first commit?\n\xa7 plugin.team_building.quiz.question02: Who closed more tasks?\n\xa7 plugin.team_building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 plugin.team_building.quiz.question04: Who has been working on the project the longest?\n\xa7 plugin.team_building.quiz.question05: Who worked the least on the project?\n\xa7 plugin.team_building.quiz.question08: Who has the longest commit signatures?\n\xa7 plugin.team_building.quiz.question09: Who has the shortest commit signatures?\n\xa7 plugin.team_building.quiz.question11: How many people have quit?\n\xa7 plugin.team_building.quiz.question12: How many people helped the project?\n\xa7 plugin.team_building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 plugin.team_building.quiz.question14: What type of tasks have been added more?\n\xa7 plugin.team_building.quiz.question15: How many days do they work on the project on average?\n\xa7 plugin.team_building.quiz.question16: Who created the most directories?\n\xa7 plugin.team_building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 plugin.team_building.quiz.question18: Who clicks the "Merge" button for PR more often than others?\n\xa7 plugin.team_building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 plugin.team_building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 plugin.team_building.quiz.begin: How well do you know the team?\n\xa7 plugin.team_building.quiz.result1.title: Not enough\n\xa7 plugin.team_building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result2.title: Well\n\xa7 plugin.team_building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result3.title: Great\n\xa7 plugin.team_building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n',pt:'\n\xa7 plugin.team_building.sidebar: Games\n\xa7 plugin.team_building.races.title: The speed of closing tasks\n\xa7 plugin.team_building.races.go: Let\'s go!\n\xa7 plugin.team_building.swimmingPool.title: Maximum commit message length\n\xa7 plugin.team_building.quiz.start: Start a quiz\n\xa7 plugin.team_building.quiz.next: Next question\n\xa7 plugin.team_building.quiz.replay: Re-play?\n\xa7 plugin.team_building.quiz.question01: Who made the first commit?\n\xa7 plugin.team_building.quiz.question02: Who closed more tasks?\n\xa7 plugin.team_building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 plugin.team_building.quiz.question04: Who has been working on the project the longest?\n\xa7 plugin.team_building.quiz.question05: Who worked the least on the project?\n\xa7 plugin.team_building.quiz.question08: Who has the longest commit signatures?\n\xa7 plugin.team_building.quiz.question09: Who has the shortest commit signatures?\n\xa7 plugin.team_building.quiz.question11: How many people have quit?\n\xa7 plugin.team_building.quiz.question12: How many people helped the project?\n\xa7 plugin.team_building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 plugin.team_building.quiz.question14: What type of tasks have been added more?\n\xa7 plugin.team_building.quiz.question15: How many days do they work on the project on average?\n\xa7 plugin.team_building.quiz.question16: Who created the most directories?\n\xa7 plugin.team_building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 plugin.team_building.quiz.question18: Who clicks the "Merge" button for PR more often than others?\n\xa7 plugin.team_building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 plugin.team_building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 plugin.team_building.quiz.begin: How well do you know the team?\n\xa7 plugin.team_building.quiz.result1.title: Not enough\n\xa7 plugin.team_building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result2.title: Well\n\xa7 plugin.team_building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result3.title: Great\n\xa7 plugin.team_building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n',ru:"\n\xa7 plugin.team_building.sidebar: \u041c\u0438\u043d\u0438 \u0438\u0433\u0440\u044b\n\xa7 plugin.team_building.races.title: \u0421\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u044f \u0437\u0430\u0434\u0430\u0447\n\xa7 plugin.team_building.races.go: \u041f\u043e\u0435\u0445\u0430\u043b\u0438!\n\xa7 plugin.team_building.swimmingPool.title: \u041c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0434\u043b\u0438\u043d\u0430 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 plugin.team_building.quiz.start: \u041d\u0430\u0447\u0430\u0442\u044c \u043a\u0432\u0438\u0437\n\xa7 plugin.team_building.quiz.next: \u0414\u0430\u043b\u0435\u0435\n\xa7 plugin.team_building.quiz.replay: \u0415\u0449\u0451 \u0440\u0430\u0437\n\xa7 plugin.team_building.quiz.question01: \u041a\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u043b \u043f\u0435\u0440\u0432\u044b\u0439 \u043a\u043e\u043c\u043c\u0438\u0442?\n\xa7 plugin.team_building.quiz.question02: \u041a\u0442\u043e \u0437\u0430\u043a\u0440\u044b\u043b \u0431\u043e\u043b\u044c\u0448\u0435 \u0437\u0430\u0434\u0430\u0447?\n\xa7 plugin.team_building.quiz.question03: \u041a\u0442\u043e \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u0432\u0441\u0435\u0445 \u0434\u0435\u043b\u0430\u0435\u0442 \u0437\u0430\u0434\u0430\u0447\u0438?\n\xa7 plugin.team_building.quiz.question04: \u041a\u0442\u043e \u0434\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0445 \u0440\u0430\u0431\u043e\u0442\u0430\u043b \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435?\n\xa7 plugin.team_building.quiz.question05: \u041a\u0442\u043e \u043c\u0435\u043d\u044c\u0448\u0435 \u0432\u0441\u0435\u0445 \u0440\u0430\u0431\u043e\u0442\u0430\u043b \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435?\n\xa7 plugin.team_building.quiz.question08: \u0423 \u043a\u043e\u0433\u043e \u0441\u0430\u043c\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 plugin.team_building.quiz.question09: \u0423 \u043a\u043e\u0433\u043e \u0441\u0430\u043c\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 plugin.team_building.quiz.question11: \u0421\u043a\u043e\u043b\u044c\u043a\u043e \u0447\u0435\u043b\u043e\u0432\u0435\u043a \u0443\u0432\u043e\u043b\u0438\u043b\u043e\u0441\u044c?\n\xa7 plugin.team_building.quiz.question12: \u0421\u043a\u043e\u043b\u044c\u043a\u043e \u0447\u0435\u043b\u043e\u0432\u0435\u043a \u043f\u043e\u043c\u043e\u0433\u0430\u043b\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0443?\n\xa7 plugin.team_building.quiz.question13: \u0421\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c \u0437\u0430\u0434\u0430\u0447 \u0432 \u0434\u0435\u043d\u044c \u0434\u0435\u043b\u0430\u043b $1?\n\xa7 plugin.team_building.quiz.question14: \u0417\u0430\u0434\u0430\u0447 \u043a\u0430\u043a\u043e\u0433\u043e \u0442\u0438\u043f\u0430 \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u043b\u0438\u043b\u0438?\n\xa7 plugin.team_building.quiz.question15: \u0421\u043a\u043e\u043b\u044c\u043a\u043e \u0432 \u0441\u0440\u0435\u0434\u043d\u0435\u043c \u0434\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0435?\n\xa7 plugin.team_building.quiz.question16: \u041a\u0442\u043e \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 plugin.team_building.quiz.question17: \u041a\u0442\u043e \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 plugin.team_building.quiz.question18: \u041a\u0442\u043e \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 plugin.team_building.quiz.question19: \u0423 \u043a\u043e\u0433\u043e \u0431\u044b\u043b\u0430 \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 plugin.team_building.quiz.question20: \u041a\u0442\u043e \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 plugin.team_building.quiz.begin: \u041d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0445\u043e\u0440\u043e\u0448\u043e \u0442\u044b \u0437\u043d\u0430\u0435\u0448\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443?\n\xa7 plugin.team_building.quiz.result1.title: \u041d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e\n\xa7 plugin.team_building.quiz.result1.description: \u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0445 \u043e\u0442\u0432\u0435\u0442\u043e\u0432 \u043c\u0435\u043d\u044c\u0448\u0435 40%. \u041e\u0437\u043d\u0430\u043a\u043e\u043c\u044c\u0442\u0435\u0441\u044c \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u043e \u0432\u0430\u0448\u0435\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0432 \u0441\u043e\u0441\u0435\u0434\u043d\u0438\u0445 \u0440\u0430\u0437\u0434\u0435\u043b\u0430\u0445 \u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0441\u043d\u043e\u0432\u0430!\n\xa7 plugin.team_building.quiz.result2.title: \u0425\u043e\u0440\u043e\u0448\u043e\n\xa7 plugin.team_building.quiz.result2.description: \u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0445 \u043e\u0442\u0432\u0435\u0442\u043e\u0432 \u043e\u0442 40% \u0434\u043e 70%. \u0412\u044b \u0438\u043c\u0435\u0435\u0442\u0435 \u0445\u043e\u0440\u043e\u0448\u0435\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e \u0432\u0430\u0448\u0435\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u0435, \u043d\u043e \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u0437\u043d\u0430\u0442\u044c \u0435\u0451 \u043b\u0443\u0447\u0448\u0435. \u041e\u0437\u043d\u0430\u043a\u043e\u043c\u044c\u0442\u0435\u0441\u044c \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0432 \u0441\u043e\u0441\u0435\u0434\u043d\u0438\u0445 \u0440\u0430\u0437\u0434\u0435\u043b\u0430\u0445 \u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0441\u043d\u043e\u0432\u0430!\n\xa7 plugin.team_building.quiz.result3.title: \u041e\u0442\u043b\u0438\u0447\u043d\u043e\n\xa7 plugin.team_building.quiz.result3.description: \u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0445 \u043e\u0442\u0432\u0435\u0442\u043e\u0432 \u0431\u043e\u043b\u044c\u0448\u0435 70%. \u0412\u044b \u043e\u0442\u043b\u0438\u0447\u043d\u043e \u0437\u043d\u0430\u0435\u0442\u0435 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0443 \u043f\u043e \u0432\u0430\u0448\u0435\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u0435!\n",zh:'\n\xa7 plugin.team_building.sidebar: Games\n\xa7 plugin.team_building.races.title: The speed of closing tasks\n\xa7 plugin.team_building.races.go: Let\'s go!\n\xa7 plugin.team_building.swimmingPool.title: Maximum commit message length\n\xa7 plugin.team_building.quiz.start: Start a quiz\n\xa7 plugin.team_building.quiz.next: Next question\n\xa7 plugin.team_building.quiz.replay: Re-play?\n\xa7 plugin.team_building.quiz.question01: Who made the first commit?\n\xa7 plugin.team_building.quiz.question02: Who closed more tasks?\n\xa7 plugin.team_building.quiz.question03: Who is the fastest at completing tasks?\n\xa7 plugin.team_building.quiz.question04: Who has been working on the project the longest?\n\xa7 plugin.team_building.quiz.question05: Who worked the least on the project?\n\xa7 plugin.team_building.quiz.question08: Who has the longest commit signatures?\n\xa7 plugin.team_building.quiz.question09: Who has the shortest commit signatures?\n\xa7 plugin.team_building.quiz.question11: How many people have quit?\n\xa7 plugin.team_building.quiz.question12: How many people helped the project?\n\xa7 plugin.team_building.quiz.question13: How many maximum tasks did $1 per day?\n\xa7 plugin.team_building.quiz.question14: What type of tasks have been added more?\n\xa7 plugin.team_building.quiz.question15: How many days do they work on the project on average?\n\xa7 plugin.team_building.quiz.question16: Who created the most directories?\n\xa7 plugin.team_building.quiz.question17: Who was the first to create the file with the deepest path?\n\xa7 plugin.team_building.quiz.question18: Who clicks the "Merge" button for PR more often than others?\n\xa7 plugin.team_building.quiz.question19: Who had the longest commit signature of all time?\n\xa7 plugin.team_building.quiz.question20: Who created the PR that hung on the review for more than a month?\n\xa7 plugin.team_building.quiz.begin: How well do you know the team?\n\xa7 plugin.team_building.quiz.result1.title: Not enough\n\xa7 plugin.team_building.quiz.result1.description: The correct answers are less than 40%. Check out the information about your team in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result2.title: Well\n\xa7 plugin.team_building.quiz.result2.description: The correct answers range from 40% to 70%. You have a good idea of your team, but you can get to know it better. Check out the data in the adjacent sections and try again!\n\xa7 plugin.team_building.quiz.result3.title: Great\n\xa7 plugin.team_building.quiz.result3.description: There are more than 70% correct answers. You know the statistics on your team perfectly well!\n'},_I={quiz_result_title:"quiz_result_title",quiz_result_description:"quiz_result_description"},kI={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 bI=function(e){let{result:t,onClick:n}=e;const{t:a}=_u();return(0,mu.jsxs)("section",{className:_I.quiz_result,children:[(0,mu.jsx)("h4",{className:kI.quiz_title,children:a(t.title||"")}),(0,mu.jsx)("p",{className:kI.quiz_description,children:a(t.description||"")}),(0,mu.jsx)("div",{className:kI.quiz_footer,children:(0,mu.jsx)(Gu,{mode:"second",onClick:()=>{n()},children:a("plugin.team_building.quiz.replay")})})]})};function wI(e){return Math.floor(Math.random()*(e+1))}function xI(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 TI="quiz_answer",CI="quiz_answer_wrapper",SI="quiz_answer_wrapper_small",jI="quiz_answer_icon",DI="quiz_answer_text",AI="quiz_answer_text_selected",EI="quiz_answer_text_correct",II="quiz_answer_text_error";const NI=function(e){let{answer:n,mode:a,onClick:s}=e;const{t:i}=_u(),[o]=(0,t.useState)(wI(5)),r=[CI],l=[DI];return"small"!==a&&"error"!==a||r.push(SI),"selected"===a&&l.push(AI),"correct"===a&&l.push(EI),"error"===a&&l.push(II),(0,mu.jsx)("div",{className:r.join(" "),children:(0,mu.jsxs)("figure",{className:TI,onClick:()=>{s()},children:[(0,mu.jsx)("img",{className:jI,src:"./assets/games/quize/balloon_".concat(o,".png")}),(0,mu.jsx)("figcaption",{className:l.join(" "),children:i(n.title)})]})})},PI={quiz_question_title:"quiz_question_title",quiz_question_answer:"quiz_question_answer",quiz_question_hide:"quiz_question_hide"};function RI(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 OI=function(e){let{question:n,onClick:a}=e;const{t:s}=_u(),[i,o]=(0,t.useState)(null),[r,l]=(0,t.useState)(!1),[m,c]=(0,t.useState)([]),u=n.answers||[],p=r?PI.quiz_question_hide:"";if((0,t.useEffect)((()=>{c([]),o(null),l(!1)}),[n]),!n)return null;const d=u.map(((e,t)=>(0,mu.jsx)(NI,{mode:m[t],answer:e,onClick:()=>{if(!r){if(i!==e){const n=[];return n[t]="selected",c(n),void o(e)}l(!0),setTimeout((()=>{c(RI(u,i))}),1e3),setTimeout((()=>{a(i)}),3e3)}}},"".concat(e.id||"","|").concat(e.title,"|").concat(t))));return(0,mu.jsx)("div",{className:PI.quiz_question,children:(0,mu.jsxs)("div",{className:PI.quiz_question_body,children:[(0,mu.jsx)("div",{className:"".concat(kI.quiz_title," ").concat(p),style:{backgroundImage:"url(./assets/games/quize/cloud_big.png)"},children:s(n.title)}),(0,mu.jsx)("div",{className:kI.quiz_question_answer,children:d}),(0,mu.jsx)("div",{className:"".concat(kI.quiz_footer," ").concat(p),children:(0,mu.jsx)(Gu,{mode:"second",disabled:r||!i,onClick:()=>{l(!0),setTimeout((()=>{c(RI(u,i))}),1e3),setTimeout((()=>{a(i)}),3e3)},children:s("plugin.team_building.quiz.next")})})]})})},LI={};const MI=function(e){let{quiz:t,onClick:n}=e;const{t:a}=_u();return(0,mu.jsxs)("section",{className:LI.quiz_start,children:[(0,mu.jsx)("h4",{className:kI.quiz_title,children:a(t.title||"")}),(0,mu.jsx)("p",{className:kI.quiz_description,children:a(t.description||"")}),(0,mu.jsx)("div",{className:kI.quiz_footer,children:(0,mu.jsx)(Gu,{mode:"second",onClick:()=>{n()},children:a("plugin.team_building.quiz.start")})})]})};const FI=function(e){let{quiz:n,onEnd:a}=e;const[s,i]=(0,t.useState)(n.questions[0]),[o,r]=(0,t.useState)(n.results[0]),[l,m]=(0,t.useState)([]),[c,u]=(0,t.useState)("start"),[p,d]=(0,t.useState)(!1),h=function(e,t){return n=>{e(!0),setTimeout((()=>{n()}),t/2),setTimeout((()=>{e(!1)}),t)}}(d,1500),g=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 f=null;"start"===c&&(f=(0,mu.jsx)(MI,{quiz:n,onClick:()=>{h((()=>{u("question")}))}})),"question"===c&&(f=(0,mu.jsx)(OI,{question:s,onClick:e=>{const t=g.byId[e.nextQuestionId||""],a=g.byIndex[s.index+1],o=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);m([...l,e]),e.isEnd&&h((()=>{r(o),u("result")})),e.nextQuestionId&&t?h((()=>{i(t)})):h(a?()=>{i(a)}:()=>{r(o),u("result")})}})),"result"===c&&(f=(0,mu.jsx)(bI,{result:o,onClick:()=>{h((()=>{a(),i(n.questions[0]),m([]),u("start")}))}}));const y=p?"".concat(kI.quiz_slider," ").concat(kI.quiz_slider_animation):kI.quiz_slider;return(0,mu.jsxs)("div",{className:kI.quiz_container,style:{backgroundImage:"url(./assets/games/quize/cloud_bg.png)"},children:[(0,mu.jsx)("div",{className:kI.quiz_cloud_bg,style:{backgroundImage:"url(./assets/games/quize/cloud_bg.png)"}}),(0,mu.jsx)("div",{className:kI.quiz_cloud,style:{backgroundImage:"url(./assets/games/quize/cloud.png)"}}),(0,mu.jsx)("div",{className:y,children:f})]})};function WI(e,t,n){return{title:e,index:0,answers:t.map(((e,t)=>({title:e,score:n===t?1:0})))}}function qI(e,t,n,a){const s=e.sort(((e,t)=>n(t)-n(e))).slice(0,3).map((e=>e.author)),i=s[a||0],o=xI(s);return WI(t,o,o.indexOf(i))}function zI(e){return Math.random()>.5?e:-e}function BI(e,t){let n,a;if(t<3)n=t+1,a=t+2;else{const e=t>10?Math.ceil(.15*t):1;n=t+zI(e),a=t+zI(2*e)}const s=xI([t,n,a]);return WI(e,s,s.indexOf(t))}function UI(e){if(!e)return null;return BI(Ee.get("plugin.team_building.quiz.question13",e.author),PT.statisticsByCommits.timestamp.totalInfoByName[e.author].tasksByTimestampCounter.max)}function HI(){const e=PT.statisticsByCommits.type.list.slice(2).filter((e=>e));if(e.length<3)return null;const t=xI(e).slice(0,3),[n,a,s]=t.map((t=>e.indexOf(t)));let i=0;return a<n&&a<s&&(i=1),s<n&&s<a&&(i=2),WI("plugin.team_building.quiz.question14",t,i)}function GI(e){const t=e.map((e=>e.totalDays)),n=Math.floor(.2*e.length);if(t.slice(n,e.length-n).length<3)return null;return BI("plugin.team_building.quiz.question15",Math.ceil(t.reduce(((e,t)=>e+t))/t.length))}function VI(e,t,n,a){const s=e.find((e=>{var t;return null===n||void 0===n||null===(t=n[e])||void 0===t?void 0:t[a]}));if(!s)return null;const i=xI(e.filter((e=>e!==s))).slice(0,2),o=xI([...i,s]);return WI(t,o,o.indexOf(s))}const KI=function(){const e=function(){const e=[...PT.statisticsByCommits.author.totalInfo],t=e.filter((e=>!e.isStaff)),n=t.map((e=>e.author)),a=PT.statisticsByCommits.author.employment.dismissed.length,s=PT.statisticsByCommits.author.employment.staff.length,i=xI([...t]).slice(0,3),o=t.reduce(((e,t)=>{const n=Gi.authors[t.author].flat(1).map((e=>[e,!0]));return e[t.author]=Object.fromEntries(n),e}),{});return{description:"plugin.team_building.quiz.begin",questions:xI([qI(e,"plugin.team_building.quiz.question01",(e=>e.firstCommit)),qI(t,"plugin.team_building.quiz.question02",(e=>e.totalTasks)),qI(t,"plugin.team_building.quiz.question03",(e=>e.taskInDay)),qI(t,"plugin.team_building.quiz.question04",(e=>e.totalDays)),qI(t,"plugin.team_building.quiz.question05",(e=>e.totalDays),2),VI(n,"plugin.team_building.quiz.question16",o,"moreAddedFolders"),VI(n,"plugin.team_building.quiz.question17",o,"longFilePath"),VI(n,"plugin.team_building.quiz.question18",o,"morePRMerge"),VI(n,"plugin.team_building.quiz.question19",o,"longestMessage"),VI(n,"plugin.team_building.quiz.question20",o,"longWaitPR"),qI(t,"plugin.team_building.quiz.question08",(e=>e.middleMessageLength)),qI(t,"plugin.team_building.quiz.question09",(e=>e.middleMessageLength),2),BI("plugin.team_building.quiz.question11",a),BI("plugin.team_building.quiz.question12",s),UI(i[0]),UI(i[1]),UI(i[2]),HI(),GI(t)].filter((e=>e)).map(((e,t)=>({...e,index:t+1})))),results:[{title:"plugin.team_building.quiz.result1.title",description:"plugin.team_building.quiz.result1.description",min:0,max:7},{title:"plugin.team_building.quiz.result2.title",description:"plugin.team_building.quiz.result2.description",min:8,max:13},{title:"plugin.team_building.quiz.result3.title",description:"plugin.team_building.quiz.result3.description",min:14,max:25}]}}();return(0,mu.jsx)(FI,{quiz:e,onEnd:()=>{}})},$I="game_banner",YI="game_banner_description";const XI=function(e){let{src:t,children:n}=e;return t?(0,mu.jsx)("div",{className:$I,style:{backgroundImage:"url(".concat(t,")")},children:n?(0,mu.jsx)("div",{className:YI,children:n}):null}):null},QI="races_track_info";const JI=function(e){let{title:t,duration:n,taskInDay:a}=e;return(0,mu.jsx)("div",{className:QI,style:{animationDelay:"".concat(n+1,"s")},title:"".concat(mo(a)," ").concat(Ie("plugin.team_building.total.workSpeed.title")),children:t})},ZI="races_track_car",eN="races_track_car_title",tN="races_track_car_cover",nN="races_track_car_animation",aN=["ease","ease-in","ease-out","ease-in-out","linear","cubic-bezier(0.1, 0.7, 1, 0.1)"];function sN(e){let{title:n,duration:a,type:s,canStart:i}=e;const o=wI(aN.length-1),[r]=(0,t.useState)(aN[o]);(0,t.useEffect)((()=>{xI(aN)}),[]);const l=i?nN:"";return(0,mu.jsxs)("div",{className:"".concat(ZI," ").concat(s||""," ").concat(l||""),style:{animationTimingFunction:r,animationDuration:"".concat(a,"s")},children:[(0,mu.jsx)("div",{className:"".concat(eN," ").concat(s||""),children:n}),(0,mu.jsx)("img",{className:tN,src:"./assets/games/races/car.png"})]})}sN.defaultProps={type:"",canStart:!1};const iN=sN,oN="races",rN="races_green",lN="races_track",mN="races_button",cN=10,uN=20;function pN(e){let{title:t,position:n,speed:a,taskInDay:s,type:i,canStart:o}=e;if(!t)return null;const r=cN+uN*(1-a)*3;return(0,mu.jsxs)("div",{className:"".concat(lN," ").concat(i||""),style:{backgroundImage:"url(./assets/games/races/road.png)"},children:[o&&(0,mu.jsx)(JI,{title:n,duration:r,taskInDay:s}),(0,mu.jsx)(iN,{title:t,duration:r,type:i,canStart:o})]})}pN.defaultProps={type:"",canStart:!1};const dN=pN;const hN=function(e){let{tracks:n}=e;const{t:a}=_u(),[s,i]=(0,t.useState)(!1),[o]=(0,t.useState)([...xI(n)]);if(!n.length)return null;const r=o.map((e=>(0,mu.jsx)(dN,{title:e.title,position:e.position,speed:e.speed,taskInDay:e.taskInDay,canStart:s},e.title)));return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(XI,{src:"./assets/games/races/bg.png",children:!s&&(0,mu.jsx)(Gu,{className:mN,onClick:()=>{i(!0)},children:a("plugin.team_building.races.go")})}),(0,mu.jsx)("div",{className:rN,style:{backgroundImage:"url(./assets/games/races/greenTop.png)"}}),(0,mu.jsx)("div",{className:"".concat(oN," scroll_x"),children:(0,mu.jsx)("div",{style:{minWidth:"900px"},children:r})}),(0,mu.jsx)("div",{className:rN,style:{backgroundImage:"url(./assets/games/races/greenBottom.png)"}})]})},gN="billboard",fN="billboard_box",yN="billboard_title",vN="billboard_cloud",_N="billboard_green";const kN=function(e){let{title:t,type:n}=e;const{t:a}=_u();if(!t)return null;const s="cloud"===n?vN:_N,i="cloud"===n?"./assets/games/cloud.png":"./assets/games/lawn.png";return(0,mu.jsx)("div",{className:"".concat(gN," ").concat(s),style:{backgroundImage:"url(".concat(i,")")},children:(0,mu.jsx)("div",{className:fN,style:{backgroundImage:"url(./assets/games/billboard1.png)"},children:(0,mu.jsx)("div",{className:yN,children:a(t||"")})})})},bN="show_symbol_wrapper",wN="show_symbol",xN="show_symbol_s",TN="show_symbol_hide",CN="show_symbol_bg",SN="show_symbol_bg_hide";const jN=function(e){let{show:n,children:a,mode:s}=e;const[i,o]=(0,t.useState)(!1);(0,t.useEffect)((()=>{o(n)}),[n]);const r=i?TN:"",l=i?SN:"",m={"table-row":xN}[s||""]||"";return(0,mu.jsxs)("div",{className:"".concat(wN," ").concat(r," ").concat(m),children:[a,(0,mu.jsx)("div",{className:"".concat(CN," ").concat(l),onClick:()=>o(!0)})]})};const DN=function(e){let{children:t,onClick:n,mode:a}=e;const s={"table-row":xN}[a||""]||"";return(0,mu.jsx)("div",{className:"".concat(wN," ").concat(TN," ").concat(s),onClick:()=>n(),children:t})};const AN=function(e){let{text:n,length:a,mode:s}=e;const[i,o]=(0,t.useState)(!1);if((0,t.useEffect)((()=>{o(!1)}),[n]),!n&&!a)return null;const r=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)||r).map(((e,t)=>(0,mu.jsx)(jN,{mode:s,show:i,children:r[t]||""},"".concat(n,"|").concat(e,"|").concat(t))));return(0,mu.jsxs)("div",{className:"".concat(bN),style:{paddingTop:"table-row"===s?"8px":0},children:[l,(0,mu.jsx)(DN,{mode:s,onClick:()=>o(!0),children:"\xbb"})]})},EN="swimming_pool_track",IN="swimming_pool_track_value",NN="swimming_pool_track_line",PN="swimming_pool_track_chart",RN="swimming_pool_track_man";function ON(e,t){return t?{className:e,style:{backgroundImage:"url(".concat(t,")")}}:{className:e}}const LN=function(e){let{title:t,value:n,maxValue:a}=e;if(!t)return null;const s=1.1*a/100,i=Math.ceil(n/s);return(0,mu.jsxs)("div",{...ON(EN,"./assets/games/swimmingPool/track_title.png"),children:[(0,mu.jsx)(AN,{text:t,length:10}),(0,mu.jsx)("div",{...ON(IN,"./assets/games/swimmingPool/block.png"),children:n}),(0,mu.jsx)("div",{...ON(NN,"./assets/games/swimmingPool/water.png"),children:(0,mu.jsx)("div",{className:PN,style:{width:"".concat(i,"%")},children:(0,mu.jsx)("img",{className:RN,src:"./assets/games/swimmingPool/man.png"})})})]})},MN="swimming_pool_top_border",FN="swimming_pool_bottom_border";const WN=function(e){let{tracks:n}=e;const[a]=(0,t.useState)([...xI(n)]);if(!n.length)return null;const s=a.map((e=>(0,mu.jsx)(LN,{title:e.title,value:e.value,maxValue:300},e.title)));return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(XI,{src:"./assets/games/swimmingPool/bg.png"}),(0,mu.jsx)("div",{className:MN,style:{backgroundImage:"url(./assets/games/swimmingPool/block2.png)"}}),(0,mu.jsx)("div",{className:"scroll_x",children:(0,mu.jsx)("div",{style:{minWidth:"900px"},children:s})}),(0,mu.jsx)("div",{className:FN,style:{backgroundImage:"url(./assets/games/swimmingPool/block2.png)"}})]})},qN="team_building_full_screen_open",zN="team_building_full_screen_close",BN=yi((()=>{const e=PT.statisticsByCommits.author.totalInfo.filter((e=>!e.isStaff)),t=e.map((e=>e.totalTaskInDay));t.sort(((e,t)=>t-e));const n=e.map((e=>({title:e.author,position:t.indexOf(e.totalTaskInDay)+1,taskInDay:e.totalTaskInDay,speed:e.totalTaskInDay/t[0]}))),a=[...e].sort(((e,t)=>t.maxMessageLength-e.maxMessageLength)).map((e=>({title:e.author,value:e.maxMessageLength}))),s=Ab.isOpen?qN:zN;return(0,mu.jsxs)(mu.Fragment,{children:[!Db&&(0,mu.jsx)("img",{src:Ab.isOpen?"./assets/icons/CloseFullscreen.svg":"./assets/icons/OpenFullscreen.svg",className:s,onClick:()=>{Ab.toggle()}}),Math.random()<1&&(0,mu.jsx)(KI,{}),(0,mu.jsx)(kN,{title:"plugin.team_building.races.title",type:"cloud"}),(0,mu.jsx)(hN,{tracks:n}),(0,mu.jsx)(kN,{title:"plugin.team_building.swimmingPool.title",type:"green"}),(0,mu.jsx)(WN,{tracks:a})]})}));class UN{getMenuItems(){return[{id:"building",group:50,order:230,link:"/team/building",title:"plugin.team_building.sidebar",icon:"./assets/menu/building.svg"}]}getPage(e){return"/team/building"===e?(0,mu.jsx)(BN,{}):void 0}getTranslations(){return vI}}UN.id="team_building";const HN=function(e){let{statistic:n}=e;const a=PT.statisticsByFiles.files.list,s=n.changesByTimestampCounter.maxData,[i,o]=(0,t.useState)(s),r=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===r||void 0===r||!r.length||null===a||void 0===a||!a.length)return(0,mu.jsx)(Hw,{});const[l,m]=Qi(s.timestamp),c=[{title:l,description:" (".concat(m,") \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:po,arguments:{description:[m]}}];return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(OA,{recommendations:c}),(0,mu.jsx)(sx,{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,mu.jsx)(Jb,{template:"box",children:(0,mu.jsx)(HA,{dots:r,selected:i,onClick:e=>{o(e.meta)}})}),(0,mu.jsx)("br",{}),(0,mu.jsx)("br",{}),(0,mu.jsx)(sx,{title:"".concat(Zi(null===i||void 0===i?void 0:i.timestamp)," \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u0438 ").concat((null===i||void 0===i?void 0:i.addedAndChanges)||"_"," \u0441\u0442\u0440\u043e\u043a")}),(0,mu.jsx)(Jb,{template:"box",children:(0,mu.jsx)(uw,{timestamp:null===i||void 0===i?void 0:i.timestamp})})]})},GN=yi((()=>{const e=PT.statisticsByCommits.timestamp.totalInfo;return(0,mu.jsx)(HN,{statistic:e})}));class VN{getMenuItems(){return[{id:"changes",group:50,order:200,link:"/team/changes",title:"sidebar.team.changes",icon:"./assets/menu/branch.svg"}]}getPage(e){return"/team/changes"===e?(0,mu.jsx)(GN,{}):void 0}}VN.id="team_changes";const KN={ar:"\n\xa7 plugin.team_commits.sidebar: All commits\n\xa7 plugin.team_commits.chart.title: Search results analysis\n\xa7 plugin.team_commits.yearChart.title: Breakdown by years\n\xa7 plugin.team_commits.authorChart.title: Breakdown by staff members\n\xa7 plugin.team_commits.results.title: Commit list\n\xa7 plugin.team_commits.results.author: Staff member\n\xa7 plugin.team_commits.results.task: Task\n\xa7 plugin.team_commits.results.message: Commit message\n\xa7 plugin.team_commits.details.title: Commit information\n\xa7 plugin.team_commits.files.title: Files the staff member worked with\n\xa7 plugin.team_commits.files.action.title: Type\n\xa7 plugin.team_commits.files.action.added: created\n\xa7 plugin.team_commits.files.action.copy: copied\n\xa7 plugin.team_commits.files.action.removed: deleted\n\xa7 plugin.team_commits.files.action.modification: modified\n\xa7 plugin.team_commits.files.action.renamed: renamed\n\xa7 plugin.team_commits.files.action.typeChange: extension change\n\xa7 plugin.team_commits.files.action.unmerged: merge conflict\n\xa7 plugin.team_commits.files.action.unknown: unknown\n\xa7 plugin.team_commits.files.addedRemoved: Added / Removed\n\xa7 plugin.team_commits.files.changed: Changed\n\xa7 plugin.team_commits.files.line: lines\n\xa7 plugin.team_commits.files.path: Path\n\xa7 plugin.team_commits.info.date: commit date\n\xa7 plugin.team_commits.info.location: possible location\n\xa7 plugin.team_commits.info.task: task\n\xa7 plugin.team_commits.info.email: email address\n\xa7 plugin.team_commits.info.company: company\n\xa7 plugin.team_commits.info.device: Device\n\xa7 plugin.team_commits.info.release: List of releases this commit likely landed in\n\xa7 plugin.team_commits.info.release.title: Release\n\xa7 plugin.team_commits.info.release.releaseDateMerge: Published\n\xa7 plugin.team_commits.info.release.prDateMerge: Merged\n",de:"\n\xa7 plugin.team_commits.sidebar: All commits\n",en:"\n\xa7 plugin.team_commits.sidebar: All commits\n\xa7 plugin.team_commits.chart.title: Search results analysis\n\xa7 plugin.team_commits.yearChart.title: Breakdown by years\n\xa7 plugin.team_commits.authorChart.title: Breakdown by staff members\n\xa7 plugin.team_commits.results.title: Commit list\n\xa7 plugin.team_commits.results.author: Staff member\n\xa7 plugin.team_commits.results.task: Task\n\xa7 plugin.team_commits.results.message: Commit message\n\xa7 plugin.team_commits.details.title: Commit information\n\xa7 plugin.team_commits.files.title: Files the staff member worked with\n\xa7 plugin.team_commits.files.action.title: Type\n\xa7 plugin.team_commits.files.action.added: created\n\xa7 plugin.team_commits.files.action.copy: copied\n\xa7 plugin.team_commits.files.action.removed: deleted\n\xa7 plugin.team_commits.files.action.modification: modified\n\xa7 plugin.team_commits.files.action.renamed: renamed\n\xa7 plugin.team_commits.files.action.typeChange: extension change\n\xa7 plugin.team_commits.files.action.unmerged: merge conflict\n\xa7 plugin.team_commits.files.action.unknown: unknown\n\xa7 plugin.team_commits.files.addedRemoved: Added / Removed\n\xa7 plugin.team_commits.files.changed: Changed\n\xa7 plugin.team_commits.files.line: lines\n\xa7 plugin.team_commits.files.path: Path\n\xa7 plugin.team_commits.info.date: commit date\n\xa7 plugin.team_commits.info.location: possible location\n\xa7 plugin.team_commits.info.task: task\n\xa7 plugin.team_commits.info.email: email address\n\xa7 plugin.team_commits.info.company: company\n\xa7 plugin.team_commits.info.device: Device\n\xa7 plugin.team_commits.info.release: List of releases this commit likely landed in\n\xa7 plugin.team_commits.info.release.title: Release\n\xa7 plugin.team_commits.info.release.releaseDateMerge: Published\n\xa7 plugin.team_commits.info.release.prDateMerge: Merged\n",es:"\n\xa7 plugin.team_commits.sidebar: All commits\n",fr:"\n\xa7 plugin.team_commits.sidebar: all commits\n",he:"\n\xa7 plugin.team_commits.sidebar: All commits\n\xa7 plugin.team_commits.chart.title: Search results analysis\n\xa7 plugin.team_commits.yearChart.title: Breakdown by years\n\xa7 plugin.team_commits.authorChart.title: Breakdown by staff members\n\xa7 plugin.team_commits.results.title: Commit list\n\xa7 plugin.team_commits.results.author: Staff member\n\xa7 plugin.team_commits.results.task: Task\n\xa7 plugin.team_commits.results.message: Commit message\n\xa7 plugin.team_commits.details.title: Commit information\n\xa7 plugin.team_commits.files.title: Files the staff member worked with\n\xa7 plugin.team_commits.files.action.title: Type\n\xa7 plugin.team_commits.files.action.added: created\n\xa7 plugin.team_commits.files.action.copy: copied\n\xa7 plugin.team_commits.files.action.removed: deleted\n\xa7 plugin.team_commits.files.action.modification: modified\n\xa7 plugin.team_commits.files.action.renamed: renamed\n\xa7 plugin.team_commits.files.action.typeChange: extension change\n\xa7 plugin.team_commits.files.action.unmerged: merge conflict\n\xa7 plugin.team_commits.files.action.unknown: unknown\n\xa7 plugin.team_commits.files.addedRemoved: Added / Removed\n\xa7 plugin.team_commits.files.changed: Changed\n\xa7 plugin.team_commits.files.line: lines\n\xa7 plugin.team_commits.files.path: Path\n\xa7 plugin.team_commits.info.date: commit date\n\xa7 plugin.team_commits.info.location: possible location\n\xa7 plugin.team_commits.info.task: task\n\xa7 plugin.team_commits.info.email: email address\n\xa7 plugin.team_commits.info.company: company\n\xa7 plugin.team_commits.info.device: Device\n\xa7 plugin.team_commits.info.release: List of releases this commit likely landed in\n\xa7 plugin.team_commits.info.release.title: Release\n\xa7 plugin.team_commits.info.release.releaseDateMerge: Published\n\xa7 plugin.team_commits.info.release.prDateMerge: Merged\n",hi:"\n\xa7 plugin.team_commits.sidebar: All commits\n\xa7 plugin.team_commits.chart.title: Search results analysis\n\xa7 plugin.team_commits.yearChart.title: Breakdown by years\n\xa7 plugin.team_commits.authorChart.title: Breakdown by staff members\n\xa7 plugin.team_commits.results.title: Commit list\n\xa7 plugin.team_commits.results.author: Staff member\n\xa7 plugin.team_commits.results.task: Task\n\xa7 plugin.team_commits.results.message: Commit message\n\xa7 plugin.team_commits.details.title: Commit information\n\xa7 plugin.team_commits.files.title: Files the staff member worked with\n\xa7 plugin.team_commits.files.action.title: Type\n\xa7 plugin.team_commits.files.action.added: created\n\xa7 plugin.team_commits.files.action.copy: copied\n\xa7 plugin.team_commits.files.action.removed: deleted\n\xa7 plugin.team_commits.files.action.modification: modified\n\xa7 plugin.team_commits.files.action.renamed: renamed\n\xa7 plugin.team_commits.files.action.typeChange: extension change\n\xa7 plugin.team_commits.files.action.unmerged: merge conflict\n\xa7 plugin.team_commits.files.action.unknown: unknown\n\xa7 plugin.team_commits.files.addedRemoved: Added / Removed\n\xa7 plugin.team_commits.files.changed: Changed\n\xa7 plugin.team_commits.files.line: lines\n\xa7 plugin.team_commits.files.path: Path\n\xa7 plugin.team_commits.info.date: commit date\n\xa7 plugin.team_commits.info.location: possible location\n\xa7 plugin.team_commits.info.task: task\n\xa7 plugin.team_commits.info.email: email address\n\xa7 plugin.team_commits.info.company: company\n\xa7 plugin.team_commits.info.device: Device\n\xa7 plugin.team_commits.info.release: List of releases this commit likely landed in\n\xa7 plugin.team_commits.info.release.title: Release\n\xa7 plugin.team_commits.info.release.releaseDateMerge: Published\n\xa7 plugin.team_commits.info.release.prDateMerge: Merged\n",ja:"\n\xa7 plugin.team_commits.sidebar: All commits\n",ko:"\n\xa7 plugin.team_commits.sidebar: \ubaa8\ub4e0 \ub313\uae00\n",pt:"\n\xa7 plugin.team_commits.sidebar: All commits\n",ru:"\n\xa7 plugin.team_commits.sidebar: \u0412\u0441\u0435 \u043a\u043e\u043c\u043c\u0438\u0442\u044b\n\xa7 plugin.team_commits.chart.title: \u0410\u043d\u0430\u043b\u0438\u0437 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 \u043f\u043e\u0438\u0441\u043a\u0430\n\xa7 plugin.team_commits.yearChart.title: \u0420\u0430\u0437\u0431\u0438\u0432\u043a\u0430 \u043f\u043e \u0433\u043e\u0434\u0430\u043c\n\xa7 plugin.team_commits.authorChart.title: \u0420\u0430\u0437\u0431\u0438\u0432\u043a\u0430 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\u043c\n\xa7 plugin.team_commits.results.title: \u0421\u043f\u0438\u0441\u043e\u043a \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.team_commits.results.author: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\n\xa7 plugin.team_commits.results.task: \u0417\u0430\u0434\u0430\u0447\u0430\n\xa7 plugin.team_commits.results.message: \u041f\u043e\u0434\u043f\u0438\u0441\u044c\n\xa7 plugin.team_commits.details.title: \u0418\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0435\n\xa7 plugin.team_commits.files.title: \u0424\u0430\u0439\u043b\u044b, \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u043b \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\n\xa7 plugin.team_commits.files.action.title: \u041e\u043f\u0435\u0440\u0430\u0446\u0438\u044f\n\xa7 plugin.team_commits.files.action.added: \u0441\u043e\u0437\u0434\u0430\u043d\n\xa7 plugin.team_commits.files.action.copy: \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\n\xa7 plugin.team_commits.files.action.removed: \u0443\u0434\u0430\u043b\u0451\u043d\n\xa7 plugin.team_commits.files.action.modification: \u0438\u0437\u043c\u0435\u043d\u0451\u043d\n\xa7 plugin.team_commits.files.action.renamed: \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d\n\xa7 plugin.team_commits.files.action.typeChange: \u0441\u043c\u0435\u043d\u0430 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f\n\xa7 plugin.team_commits.files.action.unmerged: merge \u043a\u043e\u043d\u0444\u043b\u0438\u043a\u0442\n\xa7 plugin.team_commits.files.action.unknown: \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e\n\xa7 plugin.team_commits.files.addedRemoved: \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043d\u043e / \u0423\u0434\u0430\u043b\u0435\u043d\u043e\n\xa7 plugin.team_commits.files.changed: \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e\n\xa7 plugin.team_commits.files.line: \u0441\u0442\u0440\u043e\u043a\n\xa7 plugin.team_commits.files.path: \u041f\u0443\u0442\u044c\n\xa7 plugin.team_commits.info.date: \u0434\u0430\u0442\u0430 \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 plugin.team_commits.info.location: \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0435 \u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\n\xa7 plugin.team_commits.info.task: \u0437\u0430\u0434\u0430\u0447\u0430\n\xa7 plugin.team_commits.info.email: \u043f\u043e\u0447\u0442\u043e\u0432\u044b\u0439 \u0430\u0434\u0440\u0435\u0441\n\xa7 plugin.team_commits.info.company: \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f\n\xa7 plugin.team_commits.info.device: \u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\n\xa7 plugin.team_commits.info.release: \u0421\u043f\u0438\u0441\u043e\u043a \u0440\u0435\u043b\u0438\u0437\u043e\u0432, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0435, \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u043f\u043e\u043f\u0430\u043b \u044d\u0442\u043e\u0442 \u043a\u043e\u043c\u043c\u0438\u0442\n\xa7 plugin.team_commits.info.release.title: \u0420\u0435\u043b\u0438\u0437\n\xa7 plugin.team_commits.info.release.releaseDateMerge: \u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\n\xa7 plugin.team_commits.info.release.prDateMerge: \u0412\u043b\u0438\u0442\n",zh:"\n\xa7 plugin.team_commits.sidebar: All commits\n"};function $N(e,t,n){if(!e)return[];const a=t.pr.totalInfoByName,s=t.release.release,i=[];return e.releaseIds.forEach((t=>{const o=s[t];n&&n>o.dateMerge||e.prIds.forEach((e=>{if(!o.prIds.includes(e))return;const t=a.get(e);n&&n>t.dateMerge||i.push({releaseTitle:o.title,releaseDateMerge:o.dateMerge,prId:e,prExternalId:t.prExternalId,prDateMerge:t.dateMergeFull})}))})),i.reverse()}const YN=function(e){let{commit:t}=e;return(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(qu,{value:eo(t.date),icon:"./assets/cards/day.svg",title:"plugin.team_commits.info.date"}),(0,mu.jsx)(qu,{value:t.country,icon:"./assets/cards/location.svg",title:"plugin.team_commits.info.location"})]}),(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(Pw,{value:t.device,children:(0,mu.jsx)(qu,{value:t.task,icon:"./assets/cards/tasks.svg",title:"plugin.team_commits.info.task"})}),(0,mu.jsx)(Pw,{value:!t.device,children:(0,mu.jsx)(qu,{value:t.email,icon:"./assets/cards/mail.svg",title:"plugin.team_commits.info.email"})}),(0,mu.jsx)(qu,{value:t.device,icon:"./assets/cards/device.svg",title:"plugin.team_commits.info.device"}),(0,mu.jsx)(Pw,{value:!t.device,children:(0,mu.jsx)(qu,{value:t.task,icon:"./assets/cards/tasks.svg",title:"plugin.team_commits.info.task"})}),(0,mu.jsx)(Pw,{value:!t.device&&!t.task,children:(0,mu.jsx)(qu,{value:t.company,icon:"./assets/cards/employees.svg",title:"plugin.team_commits.info.company"})})]})]})};function XN(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;return t?(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:"details",type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_commits.info.release.title",width:120,properties:"releaseTitle"}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_commits.info.release.releaseDateMerge",width:150,properties:"releaseDateMerge",formatter:Zi}),(0,mu.jsx)(zp,{width:80,template:e=>(0,mu.jsx)(Cw,{prId:e.prExternalId},e.prId)}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_commits.info.release.prDateMerge",properties:"prDateMerge",formatter:eo})]}):null}XN.defaultProps={response:void 0};const QN=XN;function JN(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;return t?(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:"details",type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_commits.files.action.title",properties:"action",formatter:e=>({A:"plugin.team_commits.files.action.added",C:"plugin.team_commits.files.action.copy",D:"plugin.team_commits.files.action.removed",M:"plugin.team_commits.files.action.modification",R:"plugin.team_commits.files.action.renamed",T:"plugin.team_commits.files.action.typeChange",U:"plugin.team_commits.files.action.unmerged",X:"plugin.team_commits.files.action.unknown"}[e||""]||e),template:_p.TAGS,width:100}),(0,mu.jsx)(zp,{template:_p.NUMBER,properties:"addedRemoved",formatter:e=>e>0?"+".concat(e):e,width:60}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_commits.files.addedRemoved",properties:"addedRemoved",width:150,template:e=>(0,mu.jsx)(LE,{value:e<0?-1*e:e,max:100,suffix:"plugin.team_commits.files.line"})}),(0,mu.jsx)(zp,{template:_p.NUMBER,properties:"changed",width:60}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_commits.files.changed",properties:"changed",width:150,template:e=>(0,mu.jsx)(LE,{value:e,max:100,suffix:"plugin.team_commits.files.line"})}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_commits.files.path",properties:"path"})]}):null}JN.defaultProps={response:void 0};const ZN=JN,eP=yi((e=>{let{commit:t}=e;if(!t)return null;const n=$N(PT.statisticsByCommits.tasks.totalInfoByName.get(t.task),PT.statisticsByCommits,t.milliseconds),a=((null===t||void 0===t?void 0:t.fileChanges)||[]).map((e=>({action:e.action,addedRemoved:e.removedLines?-1*e.removedLines:e.addedLines,added:e.addedLines,removed:e.removedLines,changed:e.changedLines,path:e.path})));return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(dT,{height:"xxl"}),(0,mu.jsx)(sx,{title:"plugin.team_commits.details.title"}),(0,mu.jsx)(YN,{commit:t}),(0,mu.jsxs)(Pw,{value:n,children:[(0,mu.jsx)(dT,{height:"l"}),(0,mu.jsx)(sx,{title:"plugin.team_commits.info.release"})]}),(0,mu.jsxs)(tS,{content:n,children:[(0,mu.jsx)(QN,{mode:"details"}),(0,mu.jsx)(KC,{})]}),(0,mu.jsxs)(Pw,{value:a,children:[(0,mu.jsx)(dT,{height:"l"}),(0,mu.jsx)(sx,{title:"plugin.team_commits.files.title"})]}),(0,mu.jsxs)(tS,{content:a,children:[(0,mu.jsx)(ZN,{rowsForExcel:a,mode:"details"}),(0,mu.jsx)(KC,{})]})]})}));function tP(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;return t?(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,template:_p.DETAILS,width:40,formatter:e=>(0,mu.jsx)(eP,{commit:e})}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"common.statistic.Date",properties:"milliseconds",width:180,formatter:eo}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_commits.results.author",properties:"author",width:158}),(0,mu.jsx)(zp,{isSortable:!0,template:e=>(0,mu.jsx)(jw,{task:e}),title:"plugin.team_commits.results.task",properties:"task",width:120}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_commits.results.message",properties:"message"})]}):null}tP.defaultProps={response:void 0};const nP=tP;const aP=yi((e=>{let{rows:n}=e;if(!n||null===n||void 0===n||!n.length)return null;const a=PT.statisticsByCommits.author.list,[s,i,o]=(0,t.useMemo)((()=>function(e){const t={},n={};return e.forEach((e=>{Vo(t,String(e.year)),Vo(n,String(e.author))})),[Object.keys(t).sort().reverse(),t,n]}(n)),[n]);return(0,mu.jsxs)(yT,{children:[(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_commits.yearChart.title",suffix:"common.statistic.commits",order:s,limit:1,details:i})}),(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_commits.authorChart.title",suffix:"common.statistic.commits",order:a,limit:3,details:o})})]})})),sP=yi((e=>{let{mode:n}=e;const a=(0,t.useMemo)((()=>PT.commits.filter((e=>!e.commitType)).reverse()),[PT.hash]),[s,i]=(0,t.useState)(a),[o,r]=(0,t.useState)(""),l=(null===s||void 0===s?void 0:s.length)>8;return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsxs)(Pw,{value:"print"!==n,children:[(0,mu.jsx)(sx,{title:"common.filters"}),(0,mu.jsx)(cT,{content:a,mode:"sort-by-searchIndex",properties:"message",examples:["hack","password","prod","token","key","env"],onChange:(e,t)=>{i(e),r(t)}})]}),(0,mu.jsxs)(Pw,{value:l,children:[(0,mu.jsx)(sx,{title:"plugin.team_commits.chart.title"}),(0,mu.jsx)(aP,{rows:s})]}),(0,mu.jsx)(Pw,{value:s,children:(0,mu.jsx)(sx,{title:"plugin.team_commits.results.title"})}),(0,mu.jsxs)(tS,{content:s,watch:o,children:[(0,mu.jsx)(nP,{rowsForExcel:s}),(0,mu.jsx)(Hw,{}),(0,mu.jsx)(KC,{})]})]})}));class iP{getMenuItems(){return[{id:"commits",group:50,order:190,link:"/team/commits",title:"plugin.team_commits.sidebar",icon:"./assets/menu/pull-request.svg"}]}getPage(e){return"/team/commits"===e?(0,mu.jsx)(sP,{}):void 0}getTranslations(){return KN}}iP.id="team_commits";const oP={ar:"\n\xa7 plugin.team_companies.sidebar: Companies\n\xa7 plugin.team_companies.title: Details\n\xa7 plugin.team_companies.charts.employments.title: By number of staff members\n\xa7 plugin.team_companies.charts.employments.item: staff members\n\xa7 plugin.team_companies.charts.daysChart.title: By contract duration\n\xa7 plugin.team_companies.charts.daysChart.item: companies\n\xa7 plugin.team_companies.companies.company: Company\n\xa7 plugin.team_companies.companies.status: Status\n\xa7 plugin.team_companies.companies.active.yes: active\n\xa7 plugin.team_companies.companies.active.no: contract expired\n\xa7 plugin.team_companies.companies.active.none: outstaff (?)\n\xa7 plugin.team_companies.companies.from: First commit\n\xa7 plugin.team_companies.companies.to: last\n\xa7 plugin.team_companies.companies.totalDays: Working days\n\xa7 plugin.team_companies.companies.totalTasks: Tasks\n\xa7 plugin.team_companies.companies.totalTaskCodes: Departments\n\xa7 plugin.team_companies.companies.totalAuthors: Staff members\n\xa7 plugin.team_companies.details.activeAuthors.title: works / left\n\xa7 plugin.team_companies.details.activeAuthors.description: If a staff member did not make a single commit within a month, they are considered to have left. The status is shown for staff members regardless of this company: they may work on behalf of another company or be removed from the project completely.\n\xa7 plugin.team_companies.details.linesInTask.title: lines of code per task\n\xa7 plugin.team_companies.details.linesInTask.description: Weighted average number of lines of code per task. Helps estimate task granularity.\n\xa7 plugin.team_companies.details.totalTasks.title: tasks were in work\n\xa7 plugin.team_companies.details.totalTasks.description: Any mention of a unique task ID is counted. The task may not have been closed in the task tracker.\n\xa7 plugin.team_companies.details.moneyInMonth.title: development cost per month\n\xa7 plugin.team_companies.details.moneyAll.title: cost over time\n\xa7 plugin.team_companies.details.totalDays.title: contract duration\n\xa7 plugin.team_companies.details.mainLocation.title: head office\n\xa7 plugin.team_companies.taskCodes.title: Departments that have commits by this company\n\xa7 plugin.team_companies.taskCodes.taskCode: Department\n\xa7 plugin.team_companies.taskCodes.status: Status\n\xa7 plugin.team_companies.taskCodes.totalAuthors: Staff members\n\xa7 plugin.team_companies.taskCodes.totalDays: Working days\n\xa7 plugin.team_companies.taskCodes.totalTasks: Tasks\n\xa7 plugin.team_companies.taskCodes.active.yes: Development in progress\n\xa7 plugin.team_companies.taskCodes.active.no: No new tasks\n\xa7 plugin.team_companies.employments.title: Staff members who made commits on behalf of this company\n\xa7 plugin.team_companies.employments.author: Staff member\n\xa7 plugin.team_companies.employments.status: Status\n\xa7 plugin.team_companies.employments.totalDays: Working days\n\xa7 plugin.team_companies.employments.totalTasks: Tasks\n",de:"\n\xa7 plugin.team_companies.sidebar: Companies\n\xa7 plugin.team_companies.title: Details\n\xa7 plugin.team_companies.employments.title: By number of employees\n\xa7 plugin.team_companies.employments.item: employments\n\xa7 plugin.team_companies.daysChart.title: By duration of the contract\n\xa7 plugin.team_companies.daysChart.item: companies\n\xa7 plugin.team_companies.active.yes: active\n\xa7 plugin.team_companies.active.no: contract has expired\n",en:"\n\xa7 plugin.team_companies.sidebar: Companies\n\xa7 plugin.team_companies.title: Details\n\xa7 plugin.team_companies.charts.employments.title: By number of staff members\n\xa7 plugin.team_companies.charts.employments.item: staff members\n\xa7 plugin.team_companies.charts.daysChart.title: By contract duration\n\xa7 plugin.team_companies.charts.daysChart.item: companies\n\xa7 plugin.team_companies.companies.company: Company\n\xa7 plugin.team_companies.companies.status: Status\n\xa7 plugin.team_companies.companies.active.yes: active\n\xa7 plugin.team_companies.companies.active.no: contract expired\n\xa7 plugin.team_companies.companies.active.none: outstaff (?)\n\xa7 plugin.team_companies.companies.from: First commit\n\xa7 plugin.team_companies.companies.to: last\n\xa7 plugin.team_companies.companies.totalDays: Working days\n\xa7 plugin.team_companies.companies.totalTasks: Tasks\n\xa7 plugin.team_companies.companies.totalTaskCodes: Departments\n\xa7 plugin.team_companies.companies.totalAuthors: Staff members\n\xa7 plugin.team_companies.details.activeAuthors.title: works / left\n\xa7 plugin.team_companies.details.activeAuthors.description: If a staff member did not make a single commit within a month, they are considered to have left. The status is shown for staff members regardless of this company: they may work on behalf of another company or be removed from the project completely.\n\xa7 plugin.team_companies.details.linesInTask.title: lines of code per task\n\xa7 plugin.team_companies.details.linesInTask.description: Weighted average number of lines of code per task. Helps estimate task granularity.\n\xa7 plugin.team_companies.details.totalTasks.title: tasks were in work\n\xa7 plugin.team_companies.details.totalTasks.description: Any mention of a unique task ID is counted. The task may not have been closed in the task tracker.\n\xa7 plugin.team_companies.details.moneyInMonth.title: development cost per month\n\xa7 plugin.team_companies.details.moneyAll.title: cost over time\n\xa7 plugin.team_companies.details.totalDays.title: contract duration\n\xa7 plugin.team_companies.details.mainLocation.title: head office\n\xa7 plugin.team_companies.taskCodes.title: Departments that have commits by this company\n\xa7 plugin.team_companies.taskCodes.taskCode: Department\n\xa7 plugin.team_companies.taskCodes.status: Status\n\xa7 plugin.team_companies.taskCodes.totalAuthors: Staff members\n\xa7 plugin.team_companies.taskCodes.totalDays: Working days\n\xa7 plugin.team_companies.taskCodes.totalTasks: Tasks\n\xa7 plugin.team_companies.taskCodes.active.yes: Development in progress\n\xa7 plugin.team_companies.taskCodes.active.no: No new tasks\n\xa7 plugin.team_companies.employments.title: Staff members who made commits on behalf of this company\n\xa7 plugin.team_companies.employments.author: Staff member\n\xa7 plugin.team_companies.employments.status: Status\n\xa7 plugin.team_companies.employments.totalDays: Working days\n\xa7 plugin.team_companies.employments.totalTasks: Tasks\n",es:"\n\xa7 plugin.team_companies.sidebar: Companies\n\xa7 plugin.team_companies.title: Details\n\xa7 plugin.team_companies.employments.title: By number of employees\n\xa7 plugin.team_companies.employments.item: employments\n\xa7 plugin.team_companies.daysChart.title: By duration of the contract\n\xa7 plugin.team_companies.daysChart.item: companies\n\xa7 plugin.team_companies.active.yes: active\n\xa7 plugin.team_companies.active.no: contract has expired\n",fr:"\n\xa7 plugin.team_companies.sidebar: Companies\n\xa7 plugin.team_companies.title: Details\n\xa7 plugin.team_companies.employments.title: By number of employees\n\xa7 plugin.team_companies.employments.item: employments\n\xa7 plugin.team_companies.daysChart.title: By duration of the contract\n\xa7 plugin.team_companies.daysChart.item: companies\n\xa7 plugin.team_companies.active.yes: active\n\xa7 plugin.team_companies.active.no: contract has expired\n",he:"\n\xa7 plugin.team_companies.sidebar: Companies\n\xa7 plugin.team_companies.title: Details\n\xa7 plugin.team_companies.charts.employments.title: By number of staff members\n\xa7 plugin.team_companies.charts.employments.item: staff members\n\xa7 plugin.team_companies.charts.daysChart.title: By contract duration\n\xa7 plugin.team_companies.charts.daysChart.item: companies\n\xa7 plugin.team_companies.companies.company: Company\n\xa7 plugin.team_companies.companies.status: Status\n\xa7 plugin.team_companies.companies.active.yes: active\n\xa7 plugin.team_companies.companies.active.no: contract expired\n\xa7 plugin.team_companies.companies.active.none: outstaff (?)\n\xa7 plugin.team_companies.companies.from: First commit\n\xa7 plugin.team_companies.companies.to: last\n\xa7 plugin.team_companies.companies.totalDays: Working days\n\xa7 plugin.team_companies.companies.totalTasks: Tasks\n\xa7 plugin.team_companies.companies.totalTaskCodes: Departments\n\xa7 plugin.team_companies.companies.totalAuthors: Staff members\n\xa7 plugin.team_companies.details.activeAuthors.title: works / left\n\xa7 plugin.team_companies.details.activeAuthors.description: If a staff member did not make a single commit within a month, they are considered to have left. The status is shown for staff members regardless of this company: they may work on behalf of another company or be removed from the project completely.\n\xa7 plugin.team_companies.details.linesInTask.title: lines of code per task\n\xa7 plugin.team_companies.details.linesInTask.description: Weighted average number of lines of code per task. Helps estimate task granularity.\n\xa7 plugin.team_companies.details.totalTasks.title: tasks were in work\n\xa7 plugin.team_companies.details.totalTasks.description: Any mention of a unique task ID is counted. The task may not have been closed in the task tracker.\n\xa7 plugin.team_companies.details.moneyInMonth.title: development cost per month\n\xa7 plugin.team_companies.details.moneyAll.title: cost over time\n\xa7 plugin.team_companies.details.totalDays.title: contract duration\n\xa7 plugin.team_companies.details.mainLocation.title: head office\n\xa7 plugin.team_companies.taskCodes.title: Departments that have commits by this company\n\xa7 plugin.team_companies.taskCodes.taskCode: Department\n\xa7 plugin.team_companies.taskCodes.status: Status\n\xa7 plugin.team_companies.taskCodes.totalAuthors: Staff members\n\xa7 plugin.team_companies.taskCodes.totalDays: Working days\n\xa7 plugin.team_companies.taskCodes.totalTasks: Tasks\n\xa7 plugin.team_companies.taskCodes.active.yes: Development in progress\n\xa7 plugin.team_companies.taskCodes.active.no: No new tasks\n\xa7 plugin.team_companies.employments.title: Staff members who made commits on behalf of this company\n\xa7 plugin.team_companies.employments.author: Staff member\n\xa7 plugin.team_companies.employments.status: Status\n\xa7 plugin.team_companies.employments.totalDays: Working days\n\xa7 plugin.team_companies.employments.totalTasks: Tasks\n",hi:"\n\xa7 plugin.team_companies.sidebar: Companies\n\xa7 plugin.team_companies.title: Details\n\xa7 plugin.team_companies.charts.employments.title: By number of staff members\n\xa7 plugin.team_companies.charts.employments.item: staff members\n\xa7 plugin.team_companies.charts.daysChart.title: By contract duration\n\xa7 plugin.team_companies.charts.daysChart.item: companies\n\xa7 plugin.team_companies.companies.company: Company\n\xa7 plugin.team_companies.companies.status: Status\n\xa7 plugin.team_companies.companies.active.yes: active\n\xa7 plugin.team_companies.companies.active.no: contract expired\n\xa7 plugin.team_companies.companies.active.none: outstaff (?)\n\xa7 plugin.team_companies.companies.from: First commit\n\xa7 plugin.team_companies.companies.to: last\n\xa7 plugin.team_companies.companies.totalDays: Working days\n\xa7 plugin.team_companies.companies.totalTasks: Tasks\n\xa7 plugin.team_companies.companies.totalTaskCodes: Departments\n\xa7 plugin.team_companies.companies.totalAuthors: Staff members\n\xa7 plugin.team_companies.details.activeAuthors.title: works / left\n\xa7 plugin.team_companies.details.activeAuthors.description: If a staff member did not make a single commit within a month, they are considered to have left. The status is shown for staff members regardless of this company: they may work on behalf of another company or be removed from the project completely.\n\xa7 plugin.team_companies.details.linesInTask.title: lines of code per task\n\xa7 plugin.team_companies.details.linesInTask.description: Weighted average number of lines of code per task. Helps estimate task granularity.\n\xa7 plugin.team_companies.details.totalTasks.title: tasks were in work\n\xa7 plugin.team_companies.details.totalTasks.description: Any mention of a unique task ID is counted. The task may not have been closed in the task tracker.\n\xa7 plugin.team_companies.details.moneyInMonth.title: development cost per month\n\xa7 plugin.team_companies.details.moneyAll.title: cost over time\n\xa7 plugin.team_companies.details.totalDays.title: contract duration\n\xa7 plugin.team_companies.details.mainLocation.title: head office\n\xa7 plugin.team_companies.taskCodes.title: Departments that have commits by this company\n\xa7 plugin.team_companies.taskCodes.taskCode: Department\n\xa7 plugin.team_companies.taskCodes.status: Status\n\xa7 plugin.team_companies.taskCodes.totalAuthors: Staff members\n\xa7 plugin.team_companies.taskCodes.totalDays: Working days\n\xa7 plugin.team_companies.taskCodes.totalTasks: Tasks\n\xa7 plugin.team_companies.taskCodes.active.yes: Development in progress\n\xa7 plugin.team_companies.taskCodes.active.no: No new tasks\n\xa7 plugin.team_companies.employments.title: Staff members who made commits on behalf of this company\n\xa7 plugin.team_companies.employments.author: Staff member\n\xa7 plugin.team_companies.employments.status: Status\n\xa7 plugin.team_companies.employments.totalDays: Working days\n\xa7 plugin.team_companies.employments.totalTasks: Tasks\n",ja:"\n\xa7 plugin.team_companies.sidebar: Companies\n\xa7 plugin.team_companies.title: Details\n\xa7 plugin.team_companies.employments.title: By number of employees\n\xa7 plugin.team_companies.employments.item: employments\n\xa7 plugin.team_companies.daysChart.title: By duration of the contract\n\xa7 plugin.team_companies.daysChart.item: companies\n\xa7 plugin.team_companies.active.yes: active\n\xa7 plugin.team_companies.active.no: contract has expired\n",ko:"\n\xa7 plugin.team_companies.sidebar: \ud68c\uc0ac\n\xa7 plugin.team_companies.title: \uc138\ubd80 \uc815\ubcf4\n\xa7 plugin.team_companies.employments.title: \uc22b\uc790\ub85c\n\xa7 plugin.team_companies.employments.item: \uc9c1\uc6d0\uc758\n\xa7 plugin.team_companies.daysChart.title: \uae30\uac04\uc5d0 \ub530\ub77c\n\xa7 plugin.team_companies.daysChart.item: \ud68c\uc0ac\uc758 \uacc4\uc57d\n\xa7 plugin.team_companies.active.yes: ,\n\xa7 plugin.team_companies.active.no: \uacc4\uc57d\uc774 \ub9cc\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4.\n",pt:"\n\xa7 plugin.team_companies.sidebar: Companies\n\xa7 plugin.team_companies.title: Details\n\xa7 plugin.team_companies.employments.title: By number of employees\n\xa7 plugin.team_companies.employments.item: employments\n\xa7 plugin.team_companies.daysChart.title: By duration of the contract\n\xa7 plugin.team_companies.daysChart.item: companies\n\xa7 plugin.team_companies.active.yes: active\n\xa7 plugin.team_companies.active.no: contract has expired\n",ru:"\n\xa7 plugin.team_companies.sidebar: \u041a\u043e\u043c\u043f\u0430\u043d\u0438\u0438\n\xa7 plugin.team_companies.title: \u0414\u0435\u0442\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\n\xa7 plugin.team_companies.charts.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 plugin.team_companies.charts.employments.item: \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 plugin.team_companies.charts.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 plugin.team_companies.charts.daysChart.item: \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439\n\xa7 plugin.team_companies.companies.company: \u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f\n\xa7 plugin.team_companies.companies.status: \u0421\u0442\u0430\u0442\u0443\u0441\n\xa7 plugin.team_companies.companies.active.yes: \u0430\u043a\u0442\u0438\u0432\u043d\u0430\n\xa7 plugin.team_companies.companies.active.no: \u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442 \u0438\u0441\u0442\u0451\u043a\n\xa7 plugin.team_companies.companies.active.none: \u0430\u0443\u0442\u0441\u0442\u0430\u0444\u0444 (?)\n\xa7 plugin.team_companies.companies.from: \u041f\u0435\u0440\u0432\u044b\u0439 \u043a\u043e\u043c\u043c\u0438\u0442\n\xa7 plugin.team_companies.companies.to: \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439\n\xa7 plugin.team_companies.companies.totalDays: \u0420\u0430\u0431\u043e\u0447\u0438\u0445 \u0434\u043d\u0435\u0439\n\xa7 plugin.team_companies.companies.totalTasks: \u0417\u0430\u0434\u0430\u0447\n\xa7 plugin.team_companies.companies.totalTaskCodes: \u041e\u0442\u0434\u0435\u043b\u043e\u0432\n\xa7 plugin.team_companies.companies.totalAuthors: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 plugin.team_companies.banner.title: \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043e \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438\n\xa7 plugin.team_companies.details.activeAuthors.title: \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 / \u0443\u0432\u043e\u043b\u0438\u043b\u043e\u0441\u044c\n\xa7 plugin.team_companies.details.activeAuthors.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. \u0421\u0442\u0430\u0442\u0443\u0441 \u043f\u043e\u043a\u0430\u0437\u0430\u043d \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432, \u0431\u0435\u0437 \u043f\u0440\u0438\u0432\u044f\u0437\u043a\u0438 \u043a \u044d\u0442\u043e\u0439 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438. \u0420\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043e\u0442 \u043b\u0438\u0446\u0430 \u0434\u0440\u0443\u0433\u043e\u0439 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0438\u043b\u0438 \u0443\u0431\u0440\u0430\u043d \u0438\u0437 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e.\n\xa7 plugin.team_companies.details.linesInTask.title: \u0441\u0442\u0440\u043e\u043a \u043a\u043e\u0434\u0430 \u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0443\n\xa7 plugin.team_companies.details.linesInTask.description: \u0421\u0440\u0435\u0434\u043d\u0435\u0432\u0437\u0432\u0435\u0448\u0435\u043d\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u0442\u0440\u043e\u043a \u043a\u043e\u0434\u0430 \u043d\u0430 \u043e\u0434\u043d\u0443 \u0437\u0430\u0434\u0430\u0447\u0443. \u041f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u043e\u0446\u0435\u043d\u0438\u0442\u044c \u0433\u0440\u0430\u043d\u0443\u043b\u044f\u0440\u043d\u043e\u0441\u0442\u044c \u0437\u0430\u0434\u0430\u0447.\n\xa7 plugin.team_companies.details.totalTasks.title: \u0437\u0430\u0434\u0430\u0447 \u0431\u044b\u043b\u043e \u0432 \u0440\u0430\u0431\u043e\u0442\u0435\n\xa7 plugin.team_companies.details.totalTasks.description: \u0421\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u043b\u044e\u0431\u043e\u0435 \u0443\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u0435 \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043d\u043e\u043c\u0435\u0440\u0430 \u0437\u0430\u0434\u0430\u0447\u0438. \u0417\u0430\u0434\u0430\u0447\u0430 \u043c\u043e\u0433\u043b\u0430 \u0431\u044b\u0442\u044c \u043d\u0435 \u0437\u0430\u043a\u0440\u044b\u0442\u0430 \u0432 \u0442\u0430\u0441\u043a-\u0442\u0440\u0435\u043a\u0435\u0440\u0435.\n\xa7 plugin.team_companies.details.moneyInMonth.title: \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432 \u043c\u0435\u0441\u044f\u0446\n\xa7 plugin.team_companies.details.moneyAll.title: \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0437\u0430 \u0432\u0441\u0451 \u0432\u0440\u0435\u043c\u044f\n\xa7 plugin.team_companies.details.totalDays.title: \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u0430\n\xa7 plugin.team_companies.details.mainLocation.title: \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u044c\u043d\u044b\u0439 \u043e\u0444\u0438\u0441\n\xa7 plugin.team_companies.taskCodes.title: \u041e\u0442\u0434\u0435\u043b\u044b, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0435\u0441\u0442\u044c \u043a\u043e\u043c\u043c\u0438\u0442\u044b \u044d\u0442\u043e\u0439 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438\n\xa7 plugin.team_companies.taskCodes.taskCode: \u041e\u0442\u0434\u0435\u043b\n\xa7 plugin.team_companies.taskCodes.status: \u0421\u0442\u0430\u0442\u0443\u0441\n\xa7 plugin.team_companies.taskCodes.totalAuthors: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 plugin.team_companies.taskCodes.totalDays: \u0420\u0430\u0431\u043e\u0447\u0438\u0445 \u0434\u043d\u0435\u0439\n\xa7 plugin.team_companies.taskCodes.totalTasks: \u0417\u0430\u0434\u0430\u0447\n\xa7 plugin.team_companies.taskCodes.active.yes: \u0418\u0434\u0451\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430\n\xa7 plugin.team_companies.taskCodes.active.no: \u041d\u043e\u0432\u044b\u0445 \u0437\u0430\u0434\u0430\u0447 \u043d\u0435\u0442\n\xa7 plugin.team_companies.employments.title: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u0435\u043b\u0430\u043b\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u044b \u043e\u0442 \u044d\u0442\u043e\u0439 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438\n\xa7 plugin.team_companies.employments.author: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\n\xa7 plugin.team_companies.employments.status: \u0421\u0442\u0430\u0442\u0443\u0441\n\xa7 plugin.team_companies.employments.totalDays: \u0420\u0430\u0431\u043e\u0447\u0438\u0445 \u0434\u043d\u0435\u0439\n\xa7 plugin.team_companies.employments.totalTasks: \u0417\u0430\u0434\u0430\u0447\n",zh:"\n\xa7 plugin.team_companies.sidebar: Companies\n\xa7 plugin.team_companies.title: Details\n\xa7 plugin.team_companies.employments.title: By number of employees\n\xa7 plugin.team_companies.employments.item: employments\n\xa7 plugin.team_companies.daysChart.title: By duration of the contract\n\xa7 plugin.team_companies.daysChart.item: companies\n\xa7 plugin.team_companies.active.yes: active\n\xa7 plugin.team_companies.active.no: contract has expired\n"};const rP=function(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;if(!t)return null;const[i,o]=sI(t,["totalDaysWorked","totalTasks"]);return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:s,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,width:200,template:_p.STRING,properties:"taskCode",title:"plugin.team_companies.taskCodes.taskCode"}),(0,mu.jsx)(zp,{properties:"isActive",width:140,title:"plugin.team_companies.taskCodes.status",formatter:e=>e?"plugin.team_companies.taskCodes.active.yes":"plugin.team_companies.taskCodes.active.no",template:_p.TAGS}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,properties:"firstCommit",width:130,formatter:Zi}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,properties:"lastCommit",width:130,formatter:Zi}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.SHORT_NUMBER,properties:"totalAuthors",width:120,title:"plugin.team_companies.taskCodes.totalAuthors"}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.SHORT_NUMBER,properties:"totalDaysWorked",width:90}),(0,mu.jsx)(zp,{isSortable:!0,width:150,properties:"totalDaysWorked",title:"plugin.team_companies.taskCodes.totalDays",template:e=>(0,mu.jsx)(LE,{value:e,max:i,suffix:"common.statistic.days"})}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.SHORT_NUMBER,properties:"totalTasks",width:90}),(0,mu.jsx)(zp,{isSortable:!0,properties:"totalTasks",title:"plugin.team_companies.taskCodes.totalTasks",template:e=>(0,mu.jsx)(LE,{value:e,max:o,suffix:"common.statistic.tasks"})})]})},lP=yi((e=>{let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;const i=PT.statisticsByCommits.author.totalInfoByName;if(!t)return null;const[o,r,l]=["plugin.team_departments.author.work","plugin.team_departments.author.dismissed","plugin.team_departments.author.staff"],[m,c]=sI(t,["totalDaysWorked","totalTasks"]);return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:s,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,width:200,template:_p.STRING,properties:"author",title:"plugin.team_companies.employments.author"}),(0,mu.jsx)(zp,{properties:"author",width:140,title:"plugin.team_companies.employments.status",formatter:e=>{const t=i.get(e);return null!==t&&void 0!==t&&t.isStaff?l:null!==t&&void 0!==t&&t.isDismissed?r:o},template:_p.TAGS}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,properties:"firstCommit",width:130,formatter:Zi}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,properties:"lastCommit",formatter:Zi}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.SHORT_NUMBER,properties:"totalDaysWorked",width:90}),(0,mu.jsx)(zp,{isSortable:!0,width:150,title:"plugin.team_companies.employments.totalDays",template:e=>(0,mu.jsx)(LE,{value:e.totalDaysWorked,max:m,suffix:"common.statistic.days"})}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.SHORT_NUMBER,properties:"totalTasks",width:90}),(0,mu.jsx)(zp,{isSortable:!0,properties:"totalTasks",title:"plugin.team_companies.employments.totalTasks",template:e=>(0,mu.jsx)(LE,{value:e,max:c,suffix:"common.statistic.tasks"})})]})}));const mP=function(e){let{authors:t,taskCodes:n}=e;return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsxs)(tS,{content:n,children:[(0,mu.jsx)(rP,{mode:"details",rowsForExcel:n}),(0,mu.jsx)(KC,{})]}),(0,mu.jsxs)(tS,{content:t,children:[(0,mu.jsx)(lP,{mode:"details",rowsForExcel:t}),(0,mu.jsx)(KC,{})]})]})};function cP(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;if(!t)return null;const[i,o,r]=["plugin.team_companies.companies.active.yes","plugin.team_companies.companies.active.no","plugin.team_companies.companies.active.none"];return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,template:_p.DETAILS,width:40,formatter:e=>(0,mu.jsx)(mP,{authors:e.authors,taskCodes:e.taskCodes})}),(0,mu.jsx)(zp,{isFixed:!0,template:_p.STRING,properties:"company",title:"plugin.team_companies.companies.company"}),(0,mu.jsx)(zp,{title:"plugin.team_companies.companies.status",formatter:e=>{var t,n;return e.isActive?i:(null===e||void 0===e||null===(t=e.taskCodes)||void 0===t||null===(n=t[0])||void 0===n?void 0:n.totalDays)>30?o:r},template:_p.TAGS,width:140}),(0,mu.jsx)(zp,{template:_p.STRING,properties:"from",title:"plugin.team_companies.companies.from",width:130,formatter:Zi}),(0,mu.jsx)(zp,{template:_p.STRING,properties:"to",title:"plugin.team_companies.companies.to",width:130,formatter:Zi}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.SHORT_NUMBER,title:"plugin.team_companies.companies.totalDays",properties:"totalDaysWorked",width:140}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.SHORT_NUMBER,title:"plugin.team_companies.companies.totalTasks",properties:"totalTasks",width:90}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.SHORT_NUMBER,title:"plugin.team_companies.companies.totalTaskCodes",properties:"totalTaskCodes",width:90}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.SHORT_NUMBER,title:"plugin.team_companies.companies.totalAuthors",properties:"totalAuthors",width:110})]})}cP.defaultProps={response:void 0};const uP=cP;const[pP,dP]=oI("days"),hP=yi((()=>{var e;const t=PT.statisticsByCommits.company.totalInfo,[n,a,s]=function(e){const t=e.map((e=>e.company));return[t,t.length>10?2:1,Object.fromEntries(e.map((e=>[e.company,e.totalAuthors])))]}(t),i=null===(e=pP(t,"totalDays"))||void 0===e?void 0:e.details;return(0,mu.jsxs)(yT,{children:[(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_companies.charts.employments.title",suffix:"plugin.team_companies.charts.employments.item",order:n,limit:a,details:s})}),(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_companies.charts.daysChart.title",suffix:"plugin.team_companies.charts.daysChart.item",order:dP,limit:1,details:i})})]})})),gP=yi((e=>{var t;let{company:n}=e;const a=PT.statisticsByCommits.author.totalInfoByName;if(!n)return null;const s={},i=n.authors.filter((e=>{const t=a.get(null===e||void 0===e?void 0:e.author);return Vo(s,t.lastCountry),!(null!==t&&void 0!==t&&t.isDismissed)&&!(null!==t&&void 0!==t&&t.isStaff)})).length,o=so.getMiddleSalaryInMonth(),r=i*o,l=n.authors.filter((e=>{var t;return!(null!==(t=a[null===e||void 0===e?void 0:e.author])&&void 0!==t&&t.isStaff)})).reduce(((e,t)=>e+t.totalDaysInProject/30*o),0),m=(null===(t=Object.entries(s).sort(((e,t)=>e[1]-t[1])).pop())||void 0===t?void 0:t[0])||null;return(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(qu,{value:ao(n.totalDays),icon:"./assets/cards/work_days2.svg",title:"plugin.team_companies.details.totalDays.title",description:"plugin.team_companies.details.totalDays.description"}),(0,mu.jsx)(qu,{value:ro(r),icon:"./assets/cards/money_month.svg",title:"plugin.team_companies.details.moneyInMonth.title",description:"plugin.team_companies.details.moneyInMonth.description"}),(0,mu.jsx)(Pu,{size:"l",value:"".concat(i," / ").concat(n.totalAuthors-i),icon:"./assets/cards/dismissal.svg",title:"plugin.team_companies.details.activeAuthors.title",description:"plugin.team_companies.details.activeAuthors.description"})]}),(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(qu,{value:ro(l),icon:"./assets/cards/money_total.svg",title:"plugin.team_companies.details.moneyAll.title",description:"plugin.team_companies.details.moneyAll.description"}),(0,mu.jsx)(qu,{value:m,icon:"./assets/cards/location.svg",title:"plugin.team_companies.details.mainLocation.title",description:"plugin.team_companies.details.mainLocation.description"}),(0,mu.jsx)(Pu,{value:n.linesInTask,icon:"./assets/cards/lines.svg",title:"plugin.team_companies.details.linesInTask.title",description:"plugin.team_companies.details.linesInTask.description"}),(0,mu.jsx)(Pu,{value:n.totalTasks,icon:"./assets/cards/tasks.svg",title:"plugin.team_companies.details.totalTasks.title",description:"plugin.team_companies.details.totalTasks.description"})]})]})})),fP=yi((e=>{var n,a;let{mode:s}=e;const i=PT.statisticsByCommits.company,o=i.totalInfo.filter((e=>(null===e||void 0===e?void 0:e.totalDaysWorked)>6)).map((e=>({id:e.company,title:e.company}))),[r,l]=(0,t.useState)(null===o||void 0===o||null===(n=o[0])||void 0===n?void 0:n.id),m=i.totalInfoByName.get(r);return null!==(a=i.totalInfo)&&void 0!==a&&a.length?(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(Pw,{value:!Ab.isOpen,children:(0,mu.jsx)(hP,{})}),(0,mu.jsx)(sx,{title:"plugin.team_country.title"}),(0,mu.jsxs)(tS,{content:i.totalInfo,mode:s,watch:"".concat(s).concat(PT.hash),children:[(0,mu.jsx)(uP,{mode:s,rowsForExcel:i.totalInfo}),(0,mu.jsx)(KC,{})]}),(0,mu.jsx)(cx,{prefix:"plugin.team_companies.banner.title",title:r,children:(0,mu.jsx)(Qx,{value:r,options:o,onChange:e=>{l(e)}})}),(0,mu.jsxs)(Pw,{value:m,children:[(0,mu.jsx)(gP,{company:m}),(0,mu.jsxs)(Pw,{value:null===m||void 0===m?void 0:m.taskCodes,children:[(0,mu.jsx)(sx,{title:"plugin.team_companies.taskCodes.title"}),(0,mu.jsxs)(tS,{content:null===m||void 0===m?void 0:m.taskCodes,watch:"".concat(s).concat(r).concat(PT.hash),children:[(0,mu.jsx)(rP,{mode:s,rowsForExcel:null===m||void 0===m?void 0:m.taskCodes}),(0,mu.jsx)(Hw,{}),(0,mu.jsx)(KC,{})]})]}),(0,mu.jsxs)(Pw,{value:null===m||void 0===m?void 0:m.authors,children:[(0,mu.jsx)(sx,{title:"plugin.team_companies.employments.title"}),(0,mu.jsxs)(tS,{content:null===m||void 0===m?void 0:m.authors,watch:"".concat(s).concat(r).concat(PT.hash),children:[(0,mu.jsx)(lP,{mode:s,rowsForExcel:null===m||void 0===m?void 0:m.authors}),(0,mu.jsx)(Hw,{}),(0,mu.jsx)(KC,{})]})]})]})]}):"print"!==s?(0,mu.jsx)(Hw,{}):null}));class yP{getMenuItems(){return[{id:"company",group:10,order:50,link:"/team/company",title:"sidebar.team.company",icon:"./assets/menu/company.svg"}]}getPage(e,t){return"/team/company"===e?(0,mu.jsx)(fP,{mode:null===t||void 0===t?void 0:t.mode}):void 0}getTranslations(){return oP}}yP.id="team_companies";const vP={ar:"\n\xa7 plugin.team_country.sidebar: Location\n\xa7 plugin.team_country.title: Details\n\xa7 plugin.team_country.byTimezone: Possible staff location\n\xa7 plugin.team_country.filters.active: Works\n\xa7 plugin.team_country.filters.dismissed: Left\n\xa7 plugin.team_country.filters.staff: Staff\n\xa7 plugin.team_country.pieByDomain.title: Breakdown by location\n\xa7 plugin.team_country.pieByTimezone.title: Breakdown by timezone\n\xa7 plugin.team_country.chart.item: staff members\n\xa7 plugin.team_country.table.title: Staff list\n\xa7 plugin.team_country.table.country: Location\n\xa7 plugin.team_country.table.employments: Staff members\n\xa7 plugin.team_country.employments.author: Staff member\n\xa7 plugin.team_country.travel.title: Trips (or VPN, or rebase)\n\xa7 plugin.team_country.travel.author: Staff member\n\xa7 plugin.team_country.travel.fly: Number of flights\n\xa7 plugin.team_country.travel.path: Locations list\n\xa7 plugin.team_country.travel.date: Flight date\n\xa7 plugin.team_country.travel.country: Location\n",de:"\n\xa7 plugin.team_country.sidebar: Locations\n\xa7 plugin.team_country.byTimezone: By the time of the last commit\n\xa7 plugin.team_country.filters.active: Works\n\xa7 plugin.team_country.filters.dismissed: Dismissed\n\xa7 plugin.team_country.filters.staff: Staff\n\xa7 plugin.team_country.pieByDomain.title: By email, timezone and language\n\xa7 plugin.team_country.pieByTimezone.title: By timezone\n\xa7 plugin.team_country.chart.item: employments\n\xa7 plugin.team_country.table.title: List of employees\n\xa7 plugin.team_country.table.country: Country\n\xa7 plugin.team_country.table.employments: Employments\n\xa7 plugin.team_country.travel.title: Trips (or VPN, or rebase)\n\xa7 plugin.team_country.travel.author: Employee\n\xa7 plugin.team_country.travel.fly: Number of flights\n\xa7 plugin.team_country.travel.path: Locations list\n\xa7 plugin.team_country.travel.date: Arrival date\n\xa7 plugin.team_country.travel.country: Location\n",en:"\n\xa7 plugin.team_country.sidebar: Location\n\xa7 plugin.team_country.title: Details\n\xa7 plugin.team_country.byTimezone: Possible staff location\n\xa7 plugin.team_country.filters.active: Works\n\xa7 plugin.team_country.filters.dismissed: Left\n\xa7 plugin.team_country.filters.staff: Staff\n\xa7 plugin.team_country.pieByDomain.title: Breakdown by location\n\xa7 plugin.team_country.pieByTimezone.title: Breakdown by timezone\n\xa7 plugin.team_country.chart.item: staff members\n\xa7 plugin.team_country.table.title: Staff list\n\xa7 plugin.team_country.table.country: Location\n\xa7 plugin.team_country.table.employments: Staff members\n\xa7 plugin.team_country.employments.author: Staff member\n\xa7 plugin.team_country.travel.title: Trips (or VPN, or rebase)\n\xa7 plugin.team_country.travel.author: Staff member\n\xa7 plugin.team_country.travel.fly: Number of flights\n\xa7 plugin.team_country.travel.path: Locations list\n\xa7 plugin.team_country.travel.date: Flight date\n\xa7 plugin.team_country.travel.country: Location\n",es:"\n\xa7 plugin.team_country.sidebar: Locations\n\xa7 plugin.team_country.byTimezone: By the time of the last commit\n\xa7 plugin.team_country.filters.active: Works\n\xa7 plugin.team_country.filters.dismissed: Dismissed\n\xa7 plugin.team_country.filters.staff: Staff\n\xa7 plugin.team_country.pieByDomain.title: By email, timezone and language\n\xa7 plugin.team_country.pieByTimezone.title: By timezone\n\xa7 plugin.team_country.chart.item: employments\n\xa7 plugin.team_country.table.title: List of employees\n\xa7 plugin.team_country.table.country: Country\n\xa7 plugin.team_country.table.employments: Employments\n\xa7 plugin.team_country.travel.title: Trips (or VPN, or rebase)\n\xa7 plugin.team_country.travel.author: Employee\n\xa7 plugin.team_country.travel.fly: Number of flights\n\xa7 plugin.team_country.travel.path: Locations list\n\xa7 plugin.team_country.travel.date: Arrival date\n\xa7 plugin.team_country.travel.country: Location\n",fr:"\n\xa7 plugin.team_country.sidebar: Locations\n\xa7 plugin.team_country.byTimezone: By the time of the last commit\n\xa7 plugin.team_country.filters.active: Works\n\xa7 plugin.team_country.filters.dismissed: Dismissed\n\xa7 plugin.team_country.filters.staff: Staff\n\xa7 plugin.team_country.pieByDomain.title: By email, timezone and language\n\xa7 plugin.team_country.pieByTimezone.title: By timezone\n\xa7 plugin.team_country.chart.item: employments\n\xa7 plugin.team_country.table.title: List of employees\n\xa7 plugin.team_country.table.country: Country\n\xa7 plugin.team_country.table.employments: Employments\n\xa7 plugin.team_country.travel.title: Trips (or VPN, or rebase)\n\xa7 plugin.team_country.travel.author: Employee\n\xa7 plugin.team_country.travel.fly: Number of flights\n\xa7 plugin.team_country.travel.path: Locations list\n\xa7 plugin.team_country.travel.date: Arrival date\n\xa7 plugin.team_country.travel.country: Location\n",he:"\n\xa7 plugin.team_country.sidebar: Location\n\xa7 plugin.team_country.title: Details\n\xa7 plugin.team_country.byTimezone: Possible staff location\n\xa7 plugin.team_country.filters.active: Works\n\xa7 plugin.team_country.filters.dismissed: Left\n\xa7 plugin.team_country.filters.staff: Staff\n\xa7 plugin.team_country.pieByDomain.title: Breakdown by location\n\xa7 plugin.team_country.pieByTimezone.title: Breakdown by timezone\n\xa7 plugin.team_country.chart.item: staff members\n\xa7 plugin.team_country.table.title: Staff list\n\xa7 plugin.team_country.table.country: Location\n\xa7 plugin.team_country.table.employments: Staff members\n\xa7 plugin.team_country.employments.author: Staff member\n\xa7 plugin.team_country.travel.title: Trips (or VPN, or rebase)\n\xa7 plugin.team_country.travel.author: Staff member\n\xa7 plugin.team_country.travel.fly: Number of flights\n\xa7 plugin.team_country.travel.path: Locations list\n\xa7 plugin.team_country.travel.date: Flight date\n\xa7 plugin.team_country.travel.country: Location\n",hi:"\n\xa7 plugin.team_country.sidebar: Location\n\xa7 plugin.team_country.title: Details\n\xa7 plugin.team_country.byTimezone: Possible staff location\n\xa7 plugin.team_country.filters.active: Works\n\xa7 plugin.team_country.filters.dismissed: Left\n\xa7 plugin.team_country.filters.staff: Staff\n\xa7 plugin.team_country.pieByDomain.title: Breakdown by location\n\xa7 plugin.team_country.pieByTimezone.title: Breakdown by timezone\n\xa7 plugin.team_country.chart.item: staff members\n\xa7 plugin.team_country.table.title: Staff list\n\xa7 plugin.team_country.table.country: Location\n\xa7 plugin.team_country.table.employments: Staff members\n\xa7 plugin.team_country.employments.author: Staff member\n\xa7 plugin.team_country.travel.title: Trips (or VPN, or rebase)\n\xa7 plugin.team_country.travel.author: Staff member\n\xa7 plugin.team_country.travel.fly: Number of flights\n\xa7 plugin.team_country.travel.path: Locations list\n\xa7 plugin.team_country.travel.date: Flight date\n\xa7 plugin.team_country.travel.country: Location\n",ja:"\n\xa7 plugin.team_country.sidebar: Locations\n\xa7 plugin.team_country.byTimezone: By the time of the last commit\n\xa7 plugin.team_country.filters.active: Works\n\xa7 plugin.team_country.filters.dismissed: Dismissed\n\xa7 plugin.team_country.filters.staff: Staff\n\xa7 plugin.team_country.pieByDomain.title: By email, timezone and language\n\xa7 plugin.team_country.pieByTimezone.title: By timezone\n\xa7 plugin.team_country.chart.item: employments\n\xa7 plugin.team_country.table.title: List of employees\n\xa7 plugin.team_country.table.country: Country\n\xa7 plugin.team_country.table.employments: Employments\n\xa7 plugin.team_country.travel.title: Trips (or VPN, or rebase)\n\xa7 plugin.team_country.travel.author: Employee\n\xa7 plugin.team_country.travel.fly: Number of flights\n\xa7 plugin.team_country.travel.path: Locations list\n\xa7 plugin.team_country.travel.date: Arrival date\n\xa7 plugin.team_country.travel.country: Location\n",ko:"\n\xa7 plugin.team_country.sidebar: \uc704\uce58\n\xa7 plugin.team_country.byTimezone: \ub9c8\uc9c0\ub9c9 \ucee4\ubc0b \uc2dc\uac04\uae4c\uc9c0\n\xa7 plugin.team_country.filters.active: \uadf8\ub4e4\uc740 \uc791\ub3d9\n\xa7 plugin.team_country.filters.dismissed: \ud574\uace0\n\xa7 plugin.team_country.filters.staff: \ubcf4\uc870\uc6d0\n\xa7 plugin.team_country.pieByDomain.title: \uc6b0\ud3b8,\uc2dc\uac04 \ubc0f \uc5b8\uc5b4\ub85c\n\xa7 plugin.team_country.pieByTimezone.title: \uc5d0 \uc758\ud574\n\xa7 plugin.team_country.chart.item: \uc9c1\uc6d0 \uc2dc\uac04\n\xa7 plugin.team_country.table.title: \uc9c1\uc6d0 \ubaa9\ub85d\n\xa7 plugin.team_country.table.country: \uc704\uce58\n\xa7 plugin.team_country.table.employments: \uc9c1\uc6d0\n\xa7 plugin.team_country.travel.title: \ube44\uc988\ub2c8\uc2a4 \uc5ec\ud589(\ub610\ub294 \ub9ac\ubca0\uc774\uc2a4)\n\xa7 plugin.team_country.travel.author: \uc9c1\uc6d0\n\xa7 plugin.team_country.travel.fly: \ud56d\uacf5\ud3b8 \uc218\n\xa7 plugin.team_country.travel.path: \uc704\uce58 \ubaa9\ub85d\n\xa7 plugin.team_country.travel.date: \ube44\ud589 \ub0a0\uc9dc\n\xa7 plugin.team_country.travel.country: \uc704\uce58\n",pt:"\n\xa7 plugin.team_country.sidebar: Locations\n\xa7 plugin.team_country.byTimezone: By the time of the last commit\n\xa7 plugin.team_country.filters.active: Works\n\xa7 plugin.team_country.filters.dismissed: Dismissed\n\xa7 plugin.team_country.filters.staff: Staff\n\xa7 plugin.team_country.pieByDomain.title: By email, timezone and language\n\xa7 plugin.team_country.pieByTimezone.title: By timezone\n\xa7 plugin.team_country.chart.item: employments\n\xa7 plugin.team_country.table.title: List of employees\n\xa7 plugin.team_country.table.country: Country\n\xa7 plugin.team_country.table.employments: Employments\n\xa7 plugin.team_country.travel.title: Trips (or VPN, or rebase)\n\xa7 plugin.team_country.travel.author: Employee\n\xa7 plugin.team_country.travel.fly: Number of flights\n\xa7 plugin.team_country.travel.path: Locations list\n\xa7 plugin.team_country.travel.date: Arrival date\n\xa7 plugin.team_country.travel.country: Location\n",ru:"\n\xa7 plugin.team_country.sidebar: \u041c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\n\xa7 plugin.team_country.title: \u0414\u0435\u0442\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\n\xa7 plugin.team_country.byTimezone: \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0435 \u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 plugin.team_country.filters.active: \u0420\u0430\u0431\u043e\u0442\u0430\u044e\u0442\n\xa7 plugin.team_country.filters.dismissed: \u0423\u0432\u043e\u043b\u0435\u043d\u043d\u044b\u0435\n\xa7 plugin.team_country.filters.staff: \u041f\u043e\u043c\u043e\u0449\u043d\u0438\u043a\u0438\n\xa7 plugin.team_country.pieByDomain.title: \u0420\u0430\u0437\u0431\u0438\u0432\u043a\u0430 \u043f\u043e \u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044e\n\xa7 plugin.team_country.pieByTimezone.title: \u0420\u0430\u0437\u0431\u0438\u0432\u043a\u0430 \u043f\u043e \u0447\u0430\u0441\u043e\u0432\u043e\u043c\u0443 \u043f\u043e\u044f\u0441\u0443\n\xa7 plugin.team_country.chart.item: \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 plugin.team_country.table.title: \u0421\u043f\u0438\u0441\u043e\u043a \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 plugin.team_country.table.country: \u041c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\n\xa7 plugin.team_country.table.employments: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438\n\xa7 plugin.team_country.employments.author: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\n\xa7 plugin.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 plugin.team_country.travel.author: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\n\xa7 plugin.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 plugin.team_country.travel.path: \u0421\u043f\u0438\u0441\u043e\u043a \u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0439\n\xa7 plugin.team_country.travel.date: \u0414\u0430\u0442\u0430 \u043f\u0435\u0440\u043b\u0451\u0442\u0430\n\xa7 plugin.team_country.travel.country: \u041c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\n",zh:"\n\xa7 plugin.team_country.sidebar: Locations\n\xa7 plugin.team_country.byTimezone: By the time of the last commit\n\xa7 plugin.team_country.filters.active: Works\n\xa7 plugin.team_country.filters.dismissed: Dismissed\n\xa7 plugin.team_country.filters.staff: Staff\n\xa7 plugin.team_country.pieByDomain.title: By email, timezone and language\n\xa7 plugin.team_country.pieByTimezone.title: By timezone\n\xa7 plugin.team_country.chart.item: employments\n\xa7 plugin.team_country.table.title: List of employees\n\xa7 plugin.team_country.table.country: Country\n\xa7 plugin.team_country.table.employments: Employments\n\xa7 plugin.team_country.travel.title: Trips (or VPN, or rebase)\n\xa7 plugin.team_country.travel.author: Employee\n\xa7 plugin.team_country.travel.fly: Number of flights\n\xa7 plugin.team_country.travel.path: Locations list\n\xa7 plugin.team_country.travel.date: Arrival date\n\xa7 plugin.team_country.travel.country: Location\n"};function _P(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;const{text:i}=_u();if(!t)return null;const[o,r,l]=[i("common.statistic.work"),i("common.statistic.dismissed"),i("common.statistic.staff")];return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:s,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,template:_p.STRING,formatter:(e,t)=>t+1,width:40}),(0,mu.jsx)(zp,{isFixed:!0,template:_p.STRING,properties:"author",title:"plugin.team_country.employments.author",width:158}),(0,mu.jsx)(zp,{formatter:e=>e.isStaff?l:e.isDismissed?r:o,template:_p.TAGS,width:140}),(0,mu.jsx)(zp,{template:_p.STRING,properties:"firstCommit",width:130,formatter:Zi}),(0,mu.jsx)(zp,{template:_p.STRING,properties:"lastCommit",width:130,formatter:Zi})]})}_P.defaultProps={response:void 0};const kP=_P;function bP(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;if(!t)return null;const i=PT.statisticsByCommits.author.totalInfoByName,o=iI(t,"employments");return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,fullScreenMode:"countries",children:[(0,mu.jsx)(zp,{isFixed:!0,template:_p.DETAILS,width:40,formatter:e=>{const t=e.employments.map((e=>i.get(e))).filter((e=>e));return(0,mu.jsx)(kP,{response:{content:t},mode:"details"})}}),(0,mu.jsx)(zp,{isFixed:!0,template:_p.STRING,properties:"country",title:"plugin.team_country.table.country",width:200}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"employments",formatter:e=>e.length}),(0,mu.jsx)(zp,{isSortable:!0,properties:"employments",width:200,template:e=>(0,mu.jsx)(LE,{value:e.length,max:o})}),(0,mu.jsx)(zp,{template:_p.STRING,properties:"employments",minWidth:300,title:"plugin.team_country.table.employments",formatter:e=>e.join(", ")})]})}bP.defaultProps={response:void 0};const wP=bP;const xP=function(e){let{authors:t,countries:n}=e;const[a,s,i]=function(e){const t=e.map((e=>e.country));return[t,t.length>10?2:1,Object.fromEntries(e.map((e=>[e.country,e.employments.length])))]}(n),[o,r]=function(e){const t=e.reduce(((e,t)=>(Vo(e,t.lastCommitTimezone.replace(":",".")),e)),{});return[Object.keys(t).sort(),t]}(t);return(0,mu.jsxs)(yT,{children:[(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_country.pieByDomain.title",suffix:"plugin.team_country.chart.item",order:a,limit:s,details:i})}),(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_country.pieByTimezone.title",suffix:"plugin.team_country.chart.item",order:o,limit:3,details:r})})]})},TP="team_country_filter",CP="team_country_filter_checkbox",SP=yi((e=>{let{filters:t,onChange:n}=e;const a=(e,a)=>{n&&n({...t||{},[e]:a,hash:Math.random()})};return(0,mu.jsxs)("div",{className:TP,children:[(0,mu.jsx)(cA,{title:"plugin.team_country.filters.active",className:CP,value:null===t||void 0===t?void 0:t.isActive,onChange:()=>a("isActive",!(null!==t&&void 0!==t&&t.isActive))}),(0,mu.jsx)(cA,{title:"plugin.team_country.filters.dismissed",className:CP,value:null===t||void 0===t?void 0:t.isDismissed,onChange:()=>a("isDismissed",!(null!==t&&void 0!==t&&t.isDismissed))}),(0,mu.jsx)(cA,{title:"plugin.team_country.filters.staff",className:CP,value:null===t||void 0===t?void 0:t.isStaff,onChange:()=>a("isStaff",!(null!==t&&void 0!==t&&t.isStaff))})]})}));function jP(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;return t?(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:s,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_country.travel.date",properties:"fromTimestamp",formatter:Zi,width:142}),(0,mu.jsx)(zp,{template:_p.STRING,width:40,formatter:()=>"\u2708\ufe0f"}),(0,mu.jsx)(zp,{template:_p.STRING,width:72,properties:"fromTimezone"}),(0,mu.jsx)(zp,{template:_p.STRING,properties:"title",title:"plugin.team_country.travel.country"})]}):null}jP.defaultProps={response:void 0};const DP=jP;function AP(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;if(!t)return null;const i=iI(t,"countries");return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,fullScreenMode:"travel",children:[(0,mu.jsx)(zp,{isFixed:!0,template:_p.DETAILS,width:40,formatter:e=>(0,mu.jsx)(DP,{response:{content:e.countries},mode:"details"})}),(0,mu.jsx)(zp,{isFixed:!0,template:_p.STRING,properties:"author",title:"plugin.team_country.travel.author",width:200}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"countries",formatter:e=>e.length-1}),(0,mu.jsx)(zp,{isSortable:!0,properties:"countries",title:"plugin.team_country.travel.fly",width:200,template:e=>(0,mu.jsx)(LE,{value:e,max:i,suffix:"plugin.team_country.travel.flyItem"}),formatter:e=>(null===e||void 0===e?void 0:e.length)||0}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_country.travel.path",formatter:e=>e.countries.map((e=>e.title)).join(" \u2708\ufe0f ")})]})}AP.defaultProps={response:void 0};const EP=AP,IP="time_zone_map",NP="time_zone_map_gap",PP="time_zone_map_points",RP="time_zone_map_point",OP="time_zone_map_point_hide",LP="time_zone_map_point_active",MP="time_zone_map_point_dismissed",FP="time_zone_map_point_s",WP="time_zone_map_point_m",qP="time_zone_map_point_l",zP={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 BP(e){let{timezone:t,authors:n,maxValue:a}=e;const s=function(e){const t=(e||"").replace("+","p").replace("-","m").replace(":","");return zP[t]||OP}(t),i=function(e){let t=!1;const n=PT.statisticsByCommits.author.totalInfoByName;for(let a=0;a<e.length;a++){const s=n.get(e[a]);if(null===s||void 0===s||!s.isStaff){if(null===s||void 0===s||!s.isDismissed)return LP;null!==s&&void 0!==s&&s.isDismissed&&(t=!0)}}return t?MP:""}(n),o=(r=n.length)<.3*(l=a)||l<=10?FP:r<.7*l||l<=100?WP:qP;var r,l;return(0,mu.jsx)("div",{title:n.join(", "),className:"".concat(RP," ").concat(s," ").concat(i," ").concat(o),children:n.length})}BP.defaultProps={timezone:"",authors:[]};const UP=BP;const HP=function(e){let{authors:t=[]}=e;const n=function(e){return e.reduce(((e,t)=>{const n=t.lastCommitTimezone;return e[n]||(e[n]=[]),e[n].push(t.author),e}),{})}(t),a=Object.entries(n),s=iI({content:a},"1"),i=a.map((e=>(0,mu.jsx)(UP,{timezone:e[0],authors:e[1],maxValue:s},e[0])));return(0,mu.jsxs)("div",{className:IP,children:[(0,mu.jsx)("img",{src:"./assets/map/2x1.png",className:NP}),(0,mu.jsx)("div",{style:{backgroundImage:"url(./assets/map/map.png)"},className:PP,children:i})]})};const GP=function(e){let{authors:t}=e;return(0,mu.jsxs)(yT,{children:[(0,mu.jsx)(sx,{title:"plugin.team_country.byTimezone"}),(0,mu.jsx)(HP,{authors:t})]})};function VP(e){var t,n;const a=(null===(t=PT.statisticsByCommits.company.totalInfoByName[e.company||""])||void 0===t?void 0:t.authors)||[],s=new Set(a.map((e=>e.author))),i=(null===(n=PT.statisticsByCommits.taskCodes.totalInfoByName[e.taskCode||""])||void 0===n?void 0:n.authors)||[],o=new Set(i.map((e=>e.author)));return t=>(!e.author||t.author===e.author)&&(!(!e.isStaff&&t.isStaff)&&(!!(e.isActive||t.isDismissed||t.isStaff)&&(!(!e.isDismissed&&t.isDismissed&&!t.isStaff)&&(!(e.company&&!s.has(t.author))&&!(e.taskCode&&!o.has(t.author))))))}const KP=yi((e=>{let{mode:n}=e;const a=(0,t.useMemo)((()=>({isActive:!0,isDismissed:!0,isStaff:!0})),[]),[s,i]=(0,t.useState)(a),o=PT.statisticsByCommits.author,r=o.list.slice(0,4),[l,m]=(0,t.useState)(o.totalInfo),c=PT.statisticsByCommits.country.totalInfo,u=(0,t.useMemo)((()=>c.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}}(l)).filter((e=>e))),[c,s.hash]),p=(0,t.useMemo)((()=>l.filter((e=>{var t;return null===e||void 0===e||null===(t=e.countries)||void 0===t?void 0:t.length})).sort(((e,t)=>{var n,a;return(null===t||void 0===t||null===(n=t.countries)||void 0===n?void 0:n.length)-(null===e||void 0===e||null===(a=e.countries)||void 0===a?void 0:a.length)}))),[l,s.hash]),d=!Ab.isOpen||"countries"===Ab.mode,h=(!Ab.isOpen||"travel"===Ab.mode)&&p.length;return null!==c&&void 0!==c&&c.length?(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsxs)(Pw,{value:!Ab.isOpen,children:[(0,mu.jsx)(sx,{title:"common.filters"}),(0,mu.jsx)(cT,{content:o.totalInfo,properties:"author",elements:["search","company","author"],examples:r,defaultFilters:a,onChange:(e,t,n)=>{m(e),i(n)},onFilter:VP,children:(0,mu.jsx)(SP,{})}),(0,mu.jsx)(GP,{authors:l}),(0,mu.jsx)(dT,{height:"xxl"}),(0,mu.jsx)(xP,{authors:l,countries:u})]}),(0,mu.jsxs)(Pw,{value:d,children:[(0,mu.jsx)(sx,{title:"plugin.team_country.table.title"}),(0,mu.jsxs)(tS,{content:u,mode:n,watch:"".concat(n).concat(PT.hash).concat(s.hash),children:[(0,mu.jsx)(wP,{mode:n,rowsForExcel:u}),(0,mu.jsx)(KC,{})]})]}),(0,mu.jsxs)(Pw,{value:h,children:[(0,mu.jsx)(sx,{title:"plugin.team_country.travel.title"}),(0,mu.jsxs)(tS,{content:p,mode:n,watch:"".concat(n).concat(PT.hash).concat(s.hash),children:[(0,mu.jsx)(EP,{mode:n,rowsForExcel:u}),(0,mu.jsx)(KC,{})]})]})]}):"print"!==n?(0,mu.jsx)(Hw,{}):null}));class $P{getMenuItems(){return[{id:"country",group:10,order:70,link:"/team/country",title:"sidebar.team.country",icon:"./assets/menu/country.svg"}]}getPage(e,t){return"/team/country"===e?(0,mu.jsx)(KP,{mode:null===t||void 0===t?void 0:t.mode}):void 0}getTranslations(){return vP}}$P.id="team_country";const YP={ar:"\n\xa7 plugin.team_vacation.sidebar: Vacation schedule\n\xa7 plugin.team_vacation.grant.title: Breakdown by year\n\xa7 plugin.team_vacation.charts.title: Vacation analysis over time\n\xa7 plugin.team_vacation.charts.total.title: vacation days\n\xa7 plugin.team_vacation.charts.total.description: Total across all staff members over time.\n\xa7 plugin.team_vacation.charts.money.title: vacation pay\n\xa7 plugin.team_vacation.charts.money.description: Total across all staff members over time. Average daily earnings are multiplied by the number of vacation days.\n\xa7 plugin.team_vacation.charts.author: Vacation pay distribution by staff member\n\xa7 plugin.team_vacation.details.title: Periods with a long absence of commits\n\xa7 plugin.team_vacation.details.type: Type\n\xa7 plugin.team_vacation.details.transfer: Transfer to another department\n\xa7 plugin.team_vacation.details.vacation: Vacation\n\xa7 plugin.team_vacation.details.author: Staff member\n\xa7 plugin.team_vacation.details.from: from\n\xa7 plugin.team_vacation.details.to: to\n\xa7 plugin.team_vacation.details.duration: Duration\n",de:"\n\xa7 plugin.team_vacation.sidebar: Vacation schedule\n\xa7 plugin.team_vacation.grant.title: Breakdown by year\n\xa7 plugin.team_vacation.charts.title: Vacation analysis over time\n\xa7 plugin.team_vacation.charts.total.title: vacation days\n\xa7 plugin.team_vacation.charts.total.description: Total across all staff members over time.\n\xa7 plugin.team_vacation.charts.money.title: vacation pay\n\xa7 plugin.team_vacation.charts.money.description: Total across all staff members over time. Average daily earnings are multiplied by the number of vacation days.\n\xa7 plugin.team_vacation.charts.author: Vacation pay distribution by staff member\n\xa7 plugin.team_vacation.details.title: Periods with a long absence of commits\n\xa7 plugin.team_vacation.details.type: Type\n\xa7 plugin.team_vacation.details.transfer: Transfer to another department\n\xa7 plugin.team_vacation.details.vacation: Vacation\n\xa7 plugin.team_vacation.details.author: Staff member\n\xa7 plugin.team_vacation.details.from: from\n\xa7 plugin.team_vacation.details.to: to\n\xa7 plugin.team_vacation.details.duration: Duration\n",en:"\n\xa7 plugin.team_vacation.sidebar: Vacation schedule\n\xa7 plugin.team_vacation.grant.title: Breakdown by year\n\xa7 plugin.team_vacation.charts.title: Vacation analysis over time\n\xa7 plugin.team_vacation.charts.total.title: vacation days\n\xa7 plugin.team_vacation.charts.total.description: Total across all staff members over time.\n\xa7 plugin.team_vacation.charts.money.title: vacation pay\n\xa7 plugin.team_vacation.charts.money.description: Total across all staff members over time. Average daily earnings are multiplied by the number of vacation days.\n\xa7 plugin.team_vacation.charts.author: Vacation pay distribution by staff member\n\xa7 plugin.team_vacation.details.title: Periods with a long absence of commits\n\xa7 plugin.team_vacation.details.type: Type\n\xa7 plugin.team_vacation.details.transfer: Transfer to another department\n\xa7 plugin.team_vacation.details.vacation: Vacation\n\xa7 plugin.team_vacation.details.author: Staff member\n\xa7 plugin.team_vacation.details.from: from\n\xa7 plugin.team_vacation.details.to: to\n\xa7 plugin.team_vacation.details.duration: Duration\n",es:"\n\xa7 plugin.team_vacation.sidebar: Vacation schedule\n\xa7 plugin.team_vacation.grant.title: Breakdown by year\n\xa7 plugin.team_vacation.charts.title: Vacation analysis over time\n\xa7 plugin.team_vacation.charts.total.title: vacation days\n\xa7 plugin.team_vacation.charts.total.description: Total across all staff members over time.\n\xa7 plugin.team_vacation.charts.money.title: vacation pay\n\xa7 plugin.team_vacation.charts.money.description: Total across all staff members over time. Average daily earnings are multiplied by the number of vacation days.\n\xa7 plugin.team_vacation.charts.author: Vacation pay distribution by staff member\n\xa7 plugin.team_vacation.details.title: Periods with a long absence of commits\n\xa7 plugin.team_vacation.details.type: Type\n\xa7 plugin.team_vacation.details.transfer: Transfer to another department\n\xa7 plugin.team_vacation.details.vacation: Vacation\n\xa7 plugin.team_vacation.details.author: Staff member\n\xa7 plugin.team_vacation.details.from: from\n\xa7 plugin.team_vacation.details.to: to\n\xa7 plugin.team_vacation.details.duration: Duration\n",fr:"\n\xa7 plugin.team_vacation.sidebar: Vacation schedule\n\xa7 plugin.team_vacation.grant.title: Breakdown by year\n\xa7 plugin.team_vacation.charts.title: Vacation analysis over time\n\xa7 plugin.team_vacation.charts.total.title: vacation days\n\xa7 plugin.team_vacation.charts.total.description: Total across all staff members over time.\n\xa7 plugin.team_vacation.charts.money.title: vacation pay\n\xa7 plugin.team_vacation.charts.money.description: Total across all staff members over time. Average daily earnings are multiplied by the number of vacation days.\n\xa7 plugin.team_vacation.charts.author: Vacation pay distribution by staff member\n\xa7 plugin.team_vacation.details.title: Periods with a long absence of commits\n\xa7 plugin.team_vacation.details.type: Type\n\xa7 plugin.team_vacation.details.transfer: Transfer to another department\n\xa7 plugin.team_vacation.details.vacation: Vacation\n\xa7 plugin.team_vacation.details.author: Staff member\n\xa7 plugin.team_vacation.details.from: from\n\xa7 plugin.team_vacation.details.to: to\n\xa7 plugin.team_vacation.details.duration: Duration\n",he:"\n\xa7 plugin.team_vacation.sidebar: Vacation schedule\n\xa7 plugin.team_vacation.grant.title: Breakdown by year\n\xa7 plugin.team_vacation.charts.title: Vacation analysis over time\n\xa7 plugin.team_vacation.charts.total.title: vacation days\n\xa7 plugin.team_vacation.charts.total.description: Total across all staff members over time.\n\xa7 plugin.team_vacation.charts.money.title: vacation pay\n\xa7 plugin.team_vacation.charts.money.description: Total across all staff members over time. Average daily earnings are multiplied by the number of vacation days.\n\xa7 plugin.team_vacation.charts.author: Vacation pay distribution by staff member\n\xa7 plugin.team_vacation.details.title: Periods with a long absence of commits\n\xa7 plugin.team_vacation.details.type: Type\n\xa7 plugin.team_vacation.details.transfer: Transfer to another department\n\xa7 plugin.team_vacation.details.vacation: Vacation\n\xa7 plugin.team_vacation.details.author: Staff member\n\xa7 plugin.team_vacation.details.from: from\n\xa7 plugin.team_vacation.details.to: to\n\xa7 plugin.team_vacation.details.duration: Duration\n",hi:"\n\xa7 plugin.team_vacation.sidebar: Vacation schedule\n\xa7 plugin.team_vacation.grant.title: Breakdown by year\n\xa7 plugin.team_vacation.charts.title: Vacation analysis over time\n\xa7 plugin.team_vacation.charts.total.title: vacation days\n\xa7 plugin.team_vacation.charts.total.description: Total across all staff members over time.\n\xa7 plugin.team_vacation.charts.money.title: vacation pay\n\xa7 plugin.team_vacation.charts.money.description: Total across all staff members over time. Average daily earnings are multiplied by the number of vacation days.\n\xa7 plugin.team_vacation.charts.author: Vacation pay distribution by staff member\n\xa7 plugin.team_vacation.details.title: Periods with a long absence of commits\n\xa7 plugin.team_vacation.details.type: Type\n\xa7 plugin.team_vacation.details.transfer: Transfer to another department\n\xa7 plugin.team_vacation.details.vacation: Vacation\n\xa7 plugin.team_vacation.details.author: Staff member\n\xa7 plugin.team_vacation.details.from: from\n\xa7 plugin.team_vacation.details.to: to\n\xa7 plugin.team_vacation.details.duration: Duration\n",ja:"\n\xa7 plugin.team_vacation.sidebar: \u4f11\u6687\u30b9\u30b1\u30b8\u30e5\u30fc\u30eb\n\xa7 plugin.team_vacation.grant.title: \u5e74\u3054\u3068\u306e\u5185\u8a33\n\xa7 plugin.team_vacation.charts.title: \u671f\u9593\u5225\u306e\u4f11\u6687\u5206\u6790\n\xa7 plugin.team_vacation.charts.total.title: \u4f11\u6687\u65e5\u6570\n\xa7 plugin.team_vacation.charts.total.description: \u3059\u3079\u3066\u306e\u30b9\u30bf\u30c3\u30d5\u306b\u3064\u3044\u3066\u3001\u671f\u9593\u5168\u4f53\u306e\u5408\u8a08\u3067\u3059\u3002\n\xa7 plugin.team_vacation.charts.money.title: \u4f11\u6687\u624b\u5f53\n\xa7 plugin.team_vacation.charts.money.description: \u3059\u3079\u3066\u306e\u30b9\u30bf\u30c3\u30d5\u306b\u3064\u3044\u3066\u3001\u671f\u9593\u5168\u4f53\u306e\u5408\u8a08\u3067\u3059\u3002\u5e73\u5747\u65e5\u984d\u5831\u916c\u306b\u4f11\u6687\u65e5\u6570\u3092\u4e57\u3058\u3066\u7b97\u51fa\u3057\u307e\u3059\u3002\n\xa7 plugin.team_vacation.charts.author: \u30b9\u30bf\u30c3\u30d5\u5225\u306e\u4f11\u6687\u624b\u5f53\u5206\u5e03\n\xa7 plugin.team_vacation.details.title: \u30b3\u30df\u30c3\u30c8\u304c\u9577\u671f\u9593\u884c\u308f\u308c\u3066\u3044\u306a\u3044\u671f\u9593\n\xa7 plugin.team_vacation.details.type: \u7a2e\u985e\n\xa7 plugin.team_vacation.details.transfer: \u4ed6\u90e8\u7f72\u3078\u306e\u7570\u52d5\n\xa7 plugin.team_vacation.details.vacation: \u4f11\u6687\n\xa7 plugin.team_vacation.details.author: \u30b9\u30bf\u30c3\u30d5\n\xa7 plugin.team_vacation.details.from: \u304b\u3089\n\xa7 plugin.team_vacation.details.to: \u307e\u3067\n\xa7 plugin.team_vacation.details.duration: \u671f\u9593\n",ko:"\n\xa7 plugin.team_vacation.sidebar: \ud734\uac00 \uc77c\uc815\n\xa7 plugin.team_vacation.grant.title: \uc5f0\ub3c4\ubcc4 \uc138\ubd80 \ub0b4\uc5ed\n\xa7 plugin.team_vacation.charts.title: \uae30\uac04\ubcc4 \ud734\uac00 \ubd84\uc11d\n\xa7 plugin.team_vacation.charts.total.title: \ud734\uac00 \uc77c\uc218\n\xa7 plugin.team_vacation.charts.total.description: \ubaa8\ub4e0 \uc9c1\uc6d0\uc5d0 \ub300\ud574 \uae30\uac04 \uc804\uccb4\ub97c \ud569\uc0b0\ud55c \uac12\uc785\ub2c8\ub2e4.\n\xa7 plugin.team_vacation.charts.money.title: \ud734\uac00 \uc218\ub2f9\n\xa7 plugin.team_vacation.charts.money.description: \ubaa8\ub4e0 \uc9c1\uc6d0\uc5d0 \ub300\ud574 \uae30\uac04 \uc804\uccb4\ub97c \ud569\uc0b0\ud55c \uac12\uc785\ub2c8\ub2e4. \ud3c9\uade0 \uc77c\uc77c \uc218\uc775\uc5d0 \ud734\uac00 \uc77c\uc218\ub97c \uacf1\ud574 \uacc4\uc0b0\ud569\ub2c8\ub2e4.\n\xa7 plugin.team_vacation.charts.author: \uc9c1\uc6d0\ubcc4 \ud734\uac00 \uc218\ub2f9 \ubd84\ud3ec\n\xa7 plugin.team_vacation.details.title: \ucee4\ubc0b\uc774 \uc7a5\uae30\uac04 \uc5c6\ub294 \uae30\uac04\n\xa7 plugin.team_vacation.details.type: \uc720\ud615\n\xa7 plugin.team_vacation.details.transfer: \ub2e4\ub978 \ubd80\uc11c\ub85c\uc758 \uc774\ub3d9\n\xa7 plugin.team_vacation.details.vacation: \ud734\uac00\n\xa7 plugin.team_vacation.details.author: \uc9c1\uc6d0\n\xa7 plugin.team_vacation.details.from: \uc2dc\uc791\n\xa7 plugin.team_vacation.details.to: \uc885\ub8cc\n\xa7 plugin.team_vacation.details.duration: \uae30\uac04\n",pt:"\n\xa7 plugin.team_vacation.sidebar: undefined\n",ru:"\n\xa7 plugin.team_vacation.sidebar: \u0413\u0440\u0430\u0444\u0438\u043a \u043e\u0442\u043f\u0443\u0441\u043a\u043e\u0432\n\xa7 plugin.team_vacation.grant.title: \u0420\u0430\u0437\u0431\u0438\u0432\u043a\u0430 \u043f\u043e \u0433\u043e\u0434\u0430\u043c\n\xa7 plugin.team_vacation.charts.title: \u0410\u043d\u0430\u043b\u0438\u0437 \u043e\u0442\u043f\u0443\u0441\u043a\u043e\u0432 \u0437\u0430 \u0432\u0441\u0451 \u0432\u0440\u0435\u043c\u044f\n\xa7 plugin.team_vacation.charts.total.title: \u0434\u043d\u0435\u0439 \u043e\u0442\u043f\u0443\u0441\u043a\u0430\n\xa7 plugin.team_vacation.charts.total.description: \u0421\u0443\u043c\u043c\u0430\u0440\u043d\u043e \u043f\u043e \u0432\u0441\u0435\u043c \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\u043c \u0437\u0430 \u0432\u0441\u0451 \u0432\u0440\u0435\u043c\u044f.\n\xa7 plugin.team_vacation.charts.money.title: \u043e\u0442\u043f\u0443\u0441\u043a\u043d\u044b\u0435\n\xa7 plugin.team_vacation.charts.money.description: \u0421\u0443\u043c\u043c\u0430\u0440\u043d\u043e \u043f\u043e \u0432\u0441\u0435\u043c \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\u043c \u0437\u0430 \u0432\u0441\u0451 \u0432\u0440\u0435\u043c\u044f. \u0421\u0440\u0435\u0434\u043d\u0435-\u0434\u043d\u0435\u0432\u043d\u043e\u0439 \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u043e\u043a \u0443\u043c\u043d\u043e\u0436\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0434\u043d\u0435\u0439 \u043e\u0442\u043f\u0443\u0441\u043a\u0430.\n\xa7 plugin.team_vacation.charts.author: \u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043e\u0442\u043f\u0443\u0441\u043a\u043d\u044b\u0445 \u043f\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\u043c\n\xa7 plugin.team_vacation.details.title: \u041f\u0435\u0440\u0438\u043e\u0434\u044b \u0441 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435\u043c \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.team_vacation.details.type: \u0422\u0438\u043f\n\xa7 plugin.team_vacation.details.transfer: \u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0432 \u0434\u0440\u0443\u0433\u043e\u0439 \u043e\u0442\u0434\u0435\u043b\n\xa7 plugin.team_vacation.details.vacation: \u041e\u0442\u043f\u0443\u0441\u043a\n\xa7 plugin.team_vacation.details.author: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\n\xa7 plugin.team_vacation.details.from: c\n\xa7 plugin.team_vacation.details.to: \u043f\u043e\n\xa7 plugin.team_vacation.details.duration: \u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\n",zh:"\n\xa7 plugin.team_vacation.sidebar: \u4f11\u5047\u8ba1\u5212\n\xa7 plugin.team_vacation.grant.title: \u6309\u5e74\u5ea6\u7684\u660e\u7ec6\n\xa7 plugin.team_vacation.charts.title: \u6309\u65f6\u95f4\u7ef4\u5ea6\u7684\u4f11\u5047\u5206\u6790\n\xa7 plugin.team_vacation.charts.total.title: \u4f11\u5047\u5929\u6570\n\xa7 plugin.team_vacation.charts.total.description: \u6309\u6240\u6709\u5458\u5de5\u5728\u6574\u4e2a\u65f6\u95f4\u6bb5\u4e0a\u7684\u7d2f\u8ba1\u603b\u548c\u3002\n\xa7 plugin.team_vacation.charts.money.title: \u4f11\u5047\u85aa\u916c\n\xa7 plugin.team_vacation.charts.money.description: \u6309\u6240\u6709\u5458\u5de5\u5728\u6574\u4e2a\u65f6\u95f4\u6bb5\u4e0a\u7684\u7d2f\u8ba1\u603b\u548c\u3002\u5c06\u5e73\u5747\u65e5\u6536\u5165\u4e58\u4ee5\u4f11\u5047\u5929\u6570\u8ba1\u7b97\u5f97\u5230\u3002\n\xa7 plugin.team_vacation.charts.author: \u6309\u5458\u5de5\u5212\u5206\u7684\u4f11\u5047\u85aa\u916c\u5206\u5e03\n\xa7 plugin.team_vacation.details.title: \u957f\u65f6\u95f4\u65e0\u63d0\u4ea4\u7684\u533a\u95f4\n\xa7 plugin.team_vacation.details.type: \u7c7b\u578b\n\xa7 plugin.team_vacation.details.transfer: \u8c03\u5c97\u5230\u5176\u4ed6\u90e8\u95e8\n\xa7 plugin.team_vacation.details.vacation: \u4f11\u5047\n\xa7 plugin.team_vacation.details.author: \u5458\u5de5\n\xa7 plugin.team_vacation.details.from: \u81ea\n\xa7 plugin.team_vacation.details.to: \u81f3\n\xa7 plugin.team_vacation.details.duration: \u65f6\u957f\n"};function XP(e,t,n){return{id:e,year:t,author:n,lines:[]}}function QP(e){const t=new Map;return(e||[]).forEach((e=>{let n="".concat(e.from.year,"-").concat(e.author),a=t.get(n)||XP(n,e.from.year,e.author);a.lines.push(e),t.set(n,a),e.from.year!==e.to.year&&(n="".concat(e.to.year,"-").concat(e.author),a=t.get(n)||XP(n,e.to.year,e.author),a.lines.push(e),t.set(n,a))})),Array.from(t.values())}function JP(e){return(t,n)=>{const a=3.66;if("marker"===t)return n.to?[Math.floor(n.from/a),Math.floor(n.to/a)]:[Math.floor(n.from/a)];let s=30*n.from.month+n.from.day,i=30*n.to.month+n.to.day;return n.from.year!==n.to.year&&(n.from.year===e?i=365:s=0),[Math.floor(s/a),Math.floor(i/a)]}}const ZP=function(e){let{rowsByYear:t}=e;const n=t.map((e=>[{year:e.year,isYear:!0},...e.rows])).flat(),[a,s]=YE();return(0,mu.jsx)(Jb,{template:"table",children:(0,mu.jsxs)(Wp,{rows:n,children:[(0,mu.jsx)(zp,{width:200,template:e=>e.isYear?(0,mu.jsx)("b",{children:e.year}):e.author}),(0,mu.jsx)(zp,{title:()=>(0,mu.jsx)(QE,{markersLine:s,markersText:a,formatter:JP()}),template:e=>(0,mu.jsx)(QE,{markersLine:e.isYear?[]:s,lines:e.lines||[],formatter:JP(e.year)})})]})})};const eR=function(e){let{response:t,updateSort:n}=e;if(!t)return null;const[a,s]=YE();return(0,mu.jsxs)(Jb,{template:"table",children:[(0,mu.jsx)(dT,{height:"xxl"}),(0,mu.jsxs)(Wp,{rows:t.content,sort:t.sort,updateSort:n,children:[(0,mu.jsx)(zp,{template:_p.STRING,width:200,properties:"author"}),(0,mu.jsx)(zp,{title:()=>(0,mu.jsx)(QE,{markersLine:s,markersText:a,formatter:JP()}),template:e=>(0,mu.jsx)(QE,{markersLine:s,markersText:e.header?a:[],lines:e.header?[]:e.lines,formatter:JP(e.year)})})]})]})};const tR=function(e){let{mode:n,rowsByYear:a}=e;const[s,i]=(0,t.useState)(null===a||void 0===a?void 0:a[0]),o=(0,t.useMemo)((()=>a.map((e=>({id:e.year,title:e.year})))),[null===s||void 0===s?void 0:s.year]);return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(Qx,{value:null===s||void 0===s?void 0:s.year,options:o,onChange:e=>{var t;i(null===a||void 0===a||null===(t=a.filter((t=>t.year===e)))||void 0===t?void 0:t[0])}}),(0,mu.jsx)(dT,{height:"xxl"}),(0,mu.jsxs)(tS,{content:null===s||void 0===s?void 0:s.rows,mode:n,watch:"".concat(n).concat(null===s||void 0===s?void 0:s.year),children:[(0,mu.jsx)(eR,{}),(0,mu.jsx)(KC,{})]})]})};const nR=function(e){let{mode:t,rows:n}=e;const a=QP(n),s=function(e){const t=new Map;e.forEach((e=>{const n=t.get(e.year)||{year:e.year,rows:[]};n.rows.push(e),t.set(e.year,n)}));const n=Array.from(t.values()).sort(((e,t)=>t.year-e.year));return n.forEach((e=>{e.rows.sort(((e,t)=>e.author.localeCompare(t.author)))})),n}(a);return a.length>5?(0,mu.jsx)(tR,{rowsByYear:s,mode:t}):(0,mu.jsx)(ZP,{rowsByYear:s})};function aR(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;if(!t)return null;const[i]=sI(t,["duration"]);return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:s,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_vacation.details.author",minWidth:200,properties:"author"}),(0,mu.jsx)(zp,{title:"plugin.team_vacation.details.type",formatter:e=>e.duration>40?"plugin.team_vacation.details.transfer":"plugin.team_vacation.details.vacation",template:_p.TAGS,minWidth:200}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_vacation.details.from",minWidth:130,formatter:e=>Zi(e.from.milliseconds)}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_vacation.details.to",minWidth:130,formatter:e=>Zi(e.to.milliseconds)}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"duration"}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_vacation.details.duration",properties:"duration",minWidth:200,template:e=>(0,mu.jsx)(LE,{value:e,max:i,suffix:"common.statistic.days"})})]})}aR.defaultProps={response:void 0};const sR=aR;const iR=function(e){let{content:t}=e;if(null===t||void 0===t||!t.length)return null;const n=PT.statisticsByCommits.author.list,{totalDays:a,details:s}=function(e){let t=0;const n={};return e.forEach((e=>{e.duration>40||(t+=e.duration,n[e.author]=(n[e.author]||0)+e.duration)})),{totalDays:t,details:n}}(t),i=so.getMiddleVacationPayInDay();return(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(Pu,{value:a,icon:"./assets/cards/lazy.svg",title:"plugin.team_vacation.charts.total.title",description:"plugin.team_vacation.charts.total.description"}),(0,mu.jsx)(Pu,{value:ro(a*i),icon:"./assets/cards/money_holidays.svg",title:"plugin.team_vacation.charts.money.title",description:"plugin.team_vacation.charts.money.description"})]}),(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_vacation.charts.author",details:s,limit:1,order:n,suffix:"common.statistic.days"})})]})},oR=yi((e=>{let{mode:t}=e;const n=PT.statisticsByCommits.absence.totalInfo||[];return null!==n&&void 0!==n&&n.length?(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(sx,{title:"plugin.team_vacation.charts.title"}),(0,mu.jsx)(iR,{content:n}),(0,mu.jsx)(sx,{title:"plugin.team_vacation.grant.title"}),(0,mu.jsx)(nR,{rows:n,mode:t}),(0,mu.jsx)(sx,{title:"plugin.team_vacation.details.title"}),(0,mu.jsxs)(tS,{content:n,mode:t,watch:"".concat(t).concat(PT.hash),children:[(0,mu.jsx)(sR,{mode:t,rowsForExcel:n}),(0,mu.jsx)(KC,{})]})]}):"print"!==t?(0,mu.jsx)(Hw,{}):null}));class rR{getMenuItems(){return[{id:"vacation",group:10,order:85,link:"/team/vacation/",title:"plugin.team_vacation.sidebar",icon:"./assets/menu/vacation.svg"}]}getPage(e,t){return"/team/vacation"===e?(0,mu.jsx)(oR,{mode:null===t||void 0===t?void 0:t.mode}):void 0}getTranslations(){return YP}}rR.id="team_vacation";const lR={ar:'\n\xa7 plugin.team_departments.sidebar: Departments\n\xa7 plugin.team_departments.employmentsChart.title: Current team sizes\n\xa7 plugin.team_departments.employmentsChart.item: teams\n\xa7 plugin.team_departments.employmentsChart.less1: one staff member\n\xa7 plugin.team_departments.employmentsChart.less2: two staff members\n\xa7 plugin.team_departments.employmentsChart.less3: three staff members\n\xa7 plugin.team_departments.employmentsChart.less6: up to six staff members\n\xa7 plugin.team_departments.employmentsChart.less9: up to nine staff members\n\xa7 plugin.team_departments.employmentsChart.less12: up to 12 staff members\n\xa7 plugin.team_departments.employmentsChart.less15: up to 15 staff members\n\xa7 plugin.team_departments.employmentsChart.more: more than 15\n\xa7 plugin.team_departments.daysChart.title: Project duration\n\xa7 plugin.team_departments.daysChart.item: projects\n\xa7 plugin.team_departments.title: Project list\n\xa7 plugin.team_departments.status: Status\n\xa7 plugin.team_departments.active.yes: Development in progress\n\xa7 plugin.team_departments.active.no: No new tasks\n\xa7 plugin.team_departments.author.work: works\n\xa7 plugin.team_departments.author.dismissed: left\n\xa7 plugin.team_departments.author.staff: staff\n\xa7 plugin.team_departments.code: Code\n\xa7 plugin.team_departments.from: First commit\n\xa7 plugin.team_departments.to: Last\n\xa7 plugin.team_departments.authors: people\n\xa7 plugin.team_departments.tasks: tasks\n\xa7 plugin.team_departments.totalDays: Duration\n\xa7 plugin.team_departments.totalAuthors: Staff members\n\xa7 plugin.team_departments.totalTasks: Tasks\n\xa7 plugin.team_departments.employments.author: Staff member\n\xa7 plugin.team_departments.employments.worked: work\n\xa7 plugin.team_departments.employments.losses: days without commits\n\xa7 plugin.team_departments.employments.totalDays: Days in department\n\xa7 plugin.team_departments.employments.totalTasks: Tasks completed\n\xa7 plugin.team_departments.details.title: Actual department data\n\xa7 plugin.team_departments.details.totalDays: work duration\n\xa7 plugin.team_departments.details.moneyInMonth: development cost per month\n\xa7 plugin.team_departments.details.moneyAll: development cost over time\n\xa7 plugin.team_departments.details.mainLocation: main location\n\xa7 plugin.team_departments.details.activeAuthors.title: works / left\n\xa7 plugin.team_departments.details.activeAuthors.description: If a staff member did not make a single commit within a month, they are considered to have left. The status is shown for staff members regardless of this department: they may work in any department or have left the company completely.\n\xa7 plugin.team_departments.details.linesInTask.title: lines of code per task\n\xa7 plugin.team_departments.details.linesInTask.description: Weighted average number of lines of code per task. Helps estimate task granularity.\n\xa7 plugin.team_departments.details.totalTasks.title: tasks were in work\n\xa7 plugin.team_departments.details.totalTasks.description: Any mention of a unique task ID is counted. The task may not have been closed in the task tracker.\n\xa7 plugin.team_departments.months.title: Possible number of staff members in the department\n\xa7 plugin.team_departments.months.description: The task tracker issues sequential task IDs. Knowing the maximum task ID at the beginning and end of the month, we can find the number of *new tasks*. The number of tasks *fixed* this month is visible in the logs. Who fixed them (*worked*) is also visible. The number of tasks fixed later (*backlog*) is also calculated from the logs of subsequent months. We extrapolate the throughput of the programmers we see to the total number of tasks to estimate how many *total programmers* should be in the department. Based on the number of "programmers", we estimate the number of QA engineers, analysts, and managers.\n\xa7 plugin.team_departments.months.newTaskInMonth: New tasks\n\xa7 plugin.team_departments.months.tasksFixedThisGroup: Fixed\n\xa7 plugin.team_departments.months.tasksInBacklog: Backlog\n\xa7 plugin.team_departments.months.programmistInThisGroup: Worked\n\xa7 plugin.team_departments.months.allProgrammistInDepartment: Should work\n\xa7 plugin.team_departments.months.allUsersInDepartment: Total staff\n\xa7 plugin.team_departments.forecasting.title: Full cost forecast\n\xa7 plugin.team_departments.forecasting.moneyInMonth.title: department costs per month\n\xa7 plugin.team_departments.forecasting.moneyInMonth.description: Multiply the number of all potential staff members (development, QA, analytics, management) for the last month by the average salary.\n\xa7 plugin.team_departments.forecasting.moneyAll.title: department costs over time\n\xa7 plugin.team_departments.forecasting.moneyAll.description: Multiply the number of all potential staff members (development, QA, analytics, management) for each month by the average salary.\n',de:"\n\xa7 plugin.team_departments.sidebar: Departments\n\xa7 plugin.team_departments.employments.title: The size of the current teams\n\xa7 plugin.team_departments.employments.item: of teams\n\xa7 plugin.team_departments.daysChart.title: Duration of the project\n\xa7 plugin.team_departments.daysChart.item: projects\n\xa7 plugin.team_departments.title: List of projects\n\xa7 plugin.team_departments.code: Code\n\xa7 plugin.team_departments.from: First commit\n\xa7 plugin.team_departments.to: Last\n\xa7 plugin.team_departments.authors: employees\n\xa7 plugin.team_departments.tasks: tasks\n\xa7 plugin.team_departments.totalDays: Working days\n\xa7 plugin.team_departments.totalAuthors: Number of employees\n\xa7 plugin.team_departments.months.title: Possible number of employees in the department\n\xa7 plugin.team_departments.months.description: It is assumed that the task tracker issues the serial numbers of the tasks. Knowing the maximum task number at the beginning and end of the month, we can find out the number of completed tasks. Knowing how many tasks the authors we know have closed this month, we can interpolate their work speed to all new tasks and assume the total number of employees whose work was not reflected in the git log.\n\xa7 plugin.team_departments.months.date: Date\n\xa7 plugin.team_departments.months.tasks: New tasks\n\xa7 plugin.team_departments.months.tasksInWeek: in week\n\xa7 plugin.team_departments.months.fixed: was fixed\n\xa7 plugin.team_departments.months.authors: Worked\n\xa7 plugin.team_departments.months.allAuthors: total number of employees in the department\n",en:'\n\xa7 plugin.team_departments.sidebar: Departments\n\xa7 plugin.team_departments.employmentsChart.title: Current team sizes\n\xa7 plugin.team_departments.employmentsChart.item: teams\n\xa7 plugin.team_departments.employmentsChart.less1: one staff member\n\xa7 plugin.team_departments.employmentsChart.less2: two staff members\n\xa7 plugin.team_departments.employmentsChart.less3: three staff members\n\xa7 plugin.team_departments.employmentsChart.less6: up to six staff members\n\xa7 plugin.team_departments.employmentsChart.less9: up to nine staff members\n\xa7 plugin.team_departments.employmentsChart.less12: up to 12 staff members\n\xa7 plugin.team_departments.employmentsChart.less15: up to 15 staff members\n\xa7 plugin.team_departments.employmentsChart.more: more than 15\n\xa7 plugin.team_departments.daysChart.title: Project duration\n\xa7 plugin.team_departments.daysChart.item: projects\n\xa7 plugin.team_departments.title: Project list\n\xa7 plugin.team_departments.status: Status\n\xa7 plugin.team_departments.active.yes: Development in progress\n\xa7 plugin.team_departments.active.no: No new tasks\n\xa7 plugin.team_departments.author.work: works\n\xa7 plugin.team_departments.author.dismissed: left\n\xa7 plugin.team_departments.author.staff: staff\n\xa7 plugin.team_departments.code: Code\n\xa7 plugin.team_departments.from: First commit\n\xa7 plugin.team_departments.to: Last\n\xa7 plugin.team_departments.authors: people\n\xa7 plugin.team_departments.tasks: tasks\n\xa7 plugin.team_departments.totalDays: Duration\n\xa7 plugin.team_departments.totalAuthors: Staff members\n\xa7 plugin.team_departments.totalTasks: Tasks\n\xa7 plugin.team_departments.employments.author: Staff member\n\xa7 plugin.team_departments.employments.worked: work\n\xa7 plugin.team_departments.employments.losses: days without commits\n\xa7 plugin.team_departments.employments.totalDays: Days in department\n\xa7 plugin.team_departments.employments.totalTasks: Tasks completed\n\xa7 plugin.team_departments.details.title: Actual department data\n\xa7 plugin.team_departments.details.totalDays: work duration\n\xa7 plugin.team_departments.details.moneyInMonth: development cost per month\n\xa7 plugin.team_departments.details.moneyAll: development cost over time\n\xa7 plugin.team_departments.details.mainLocation: main location\n\xa7 plugin.team_departments.details.activeAuthors.title: works / left\n\xa7 plugin.team_departments.details.activeAuthors.description: If a staff member did not make a single commit within a month, they are considered to have left. The status is shown for staff members regardless of this department: they may work in any department or have left the company completely.\n\xa7 plugin.team_departments.details.linesInTask.title: lines of code per task\n\xa7 plugin.team_departments.details.linesInTask.description: Weighted average number of lines of code per task. Helps estimate task granularity.\n\xa7 plugin.team_departments.details.totalTasks.title: tasks were in work\n\xa7 plugin.team_departments.details.totalTasks.description: Any mention of a unique task ID is counted. The task may not have been closed in the task tracker.\n\xa7 plugin.team_departments.months.title: Possible number of staff members in the department\n\xa7 plugin.team_departments.months.description: The task tracker issues sequential task IDs. Knowing the maximum task ID at the beginning and end of the month, we can find the number of *new tasks*. The number of tasks *fixed* this month is visible in the logs. Who fixed them (*worked*) is also visible. The number of tasks fixed later (*backlog*) is also calculated from the logs of subsequent months. We extrapolate the throughput of the programmers we see to the total number of tasks to estimate how many *total programmers* should be in the department. Based on the number of "programmers", we estimate the number of QA engineers, analysts, and managers.\n\xa7 plugin.team_departments.months.newTaskInMonth: New tasks\n\xa7 plugin.team_departments.months.tasksFixedThisGroup: Fixed\n\xa7 plugin.team_departments.months.tasksInBacklog: Backlog\n\xa7 plugin.team_departments.months.programmistInThisGroup: Worked\n\xa7 plugin.team_departments.months.allProgrammistInDepartment: Should work\n\xa7 plugin.team_departments.months.allUsersInDepartment: Total staff\n\xa7 plugin.team_departments.forecasting.title: Full cost forecast\n\xa7 plugin.team_departments.forecasting.moneyInMonth.title: department costs per month\n\xa7 plugin.team_departments.forecasting.moneyInMonth.description: Multiply the number of all potential staff members (development, QA, analytics, management) for the last month by the average salary.\n\xa7 plugin.team_departments.forecasting.moneyAll.title: department costs over time\n\xa7 plugin.team_departments.forecasting.moneyAll.description: Multiply the number of all potential staff members (development, QA, analytics, management) for each month by the average salary.\n',es:"\n\xa7 plugin.team_departments.sidebar: Departments\n\xa7 plugin.team_departments.employments.title: The size of the current teams\n\xa7 plugin.team_departments.employments.item: of teams\n\xa7 plugin.team_departments.daysChart.title: Duration of the project\n\xa7 plugin.team_departments.daysChart.item: projects\n\xa7 plugin.team_departments.title: List of projects\n\xa7 plugin.team_departments.code: Code\n\xa7 plugin.team_departments.from: First commit\n\xa7 plugin.team_departments.to: Last\n\xa7 plugin.team_departments.authors: employees\n\xa7 plugin.team_departments.tasks: tasks\n\xa7 plugin.team_departments.totalDays: Working days\n\xa7 plugin.team_departments.totalAuthors: Number of employees\n\xa7 plugin.team_departments.months.title: Possible number of employees in the department\n\xa7 plugin.team_departments.months.description: It is assumed that the task tracker issues the serial numbers of the tasks. Knowing the maximum task number at the beginning and end of the month, we can find out the number of completed tasks. Knowing how many tasks the authors we know have closed this month, we can interpolate their work speed to all new tasks and assume the total number of employees whose work was not reflected in the git log.\n\xa7 plugin.team_departments.months.date: Date\n\xa7 plugin.team_departments.months.tasks: New tasks\n\xa7 plugin.team_departments.months.tasksInWeek: in week\n\xa7 plugin.team_departments.months.fixed: was fixed\n\xa7 plugin.team_departments.months.authors: Worked\n\xa7 plugin.team_departments.months.allAuthors: total number of employees in the department\n",fr:"\n\xa7 plugin.team_departments.sidebar: Departments\n\xa7 plugin.team_departments.employments.title: The size of the current teams\n\xa7 plugin.team_departments.employments.item: of teams\n\xa7 plugin.team_departments.daysChart.title: Duration of the project\n\xa7 plugin.team_departments.daysChart.item: projects\n\xa7 plugin.team_departments.title: List of projects\n\xa7 plugin.team_departments.code: Code\n\xa7 plugin.team_departments.from: First commit\n\xa7 plugin.team_departments.to: Last\n\xa7 plugin.team_departments.authors: employees\n\xa7 plugin.team_departments.tasks: tasks\n\xa7 plugin.team_departments.totalDays: Working days\n\xa7 plugin.team_departments.totalAuthors: Number of employees\n\xa7 plugin.team_departments.months.title: Possible number of employees in the department\n\xa7 plugin.team_departments.months.description: It is assumed that the task tracker issues the serial numbers of the tasks. Knowing the maximum task number at the beginning and end of the month, we can find out the number of completed tasks. Knowing how many tasks the authors we know have closed this month, we can interpolate their work speed to all new tasks and assume the total number of employees whose work was not reflected in the git log.\n\xa7 plugin.team_departments.months.date: Date\n\xa7 plugin.team_departments.months.tasks: New tasks\n\xa7 plugin.team_departments.months.tasksInWeek: in week\n\xa7 plugin.team_departments.months.fixed: was fixed\n\xa7 plugin.team_departments.months.authors: Worked\n\xa7 plugin.team_departments.months.allAuthors: total number of employees in the department\n",he:'\n\xa7 plugin.team_departments.sidebar: Departments\n\xa7 plugin.team_departments.employmentsChart.title: Current team sizes\n\xa7 plugin.team_departments.employmentsChart.item: teams\n\xa7 plugin.team_departments.employmentsChart.less1: one staff member\n\xa7 plugin.team_departments.employmentsChart.less2: two staff members\n\xa7 plugin.team_departments.employmentsChart.less3: three staff members\n\xa7 plugin.team_departments.employmentsChart.less6: up to six staff members\n\xa7 plugin.team_departments.employmentsChart.less9: up to nine staff members\n\xa7 plugin.team_departments.employmentsChart.less12: up to 12 staff members\n\xa7 plugin.team_departments.employmentsChart.less15: up to 15 staff members\n\xa7 plugin.team_departments.employmentsChart.more: more than 15\n\xa7 plugin.team_departments.daysChart.title: Project duration\n\xa7 plugin.team_departments.daysChart.item: projects\n\xa7 plugin.team_departments.title: Project list\n\xa7 plugin.team_departments.status: Status\n\xa7 plugin.team_departments.active.yes: Development in progress\n\xa7 plugin.team_departments.active.no: No new tasks\n\xa7 plugin.team_departments.author.work: works\n\xa7 plugin.team_departments.author.dismissed: left\n\xa7 plugin.team_departments.author.staff: staff\n\xa7 plugin.team_departments.code: Code\n\xa7 plugin.team_departments.from: First commit\n\xa7 plugin.team_departments.to: Last\n\xa7 plugin.team_departments.authors: people\n\xa7 plugin.team_departments.tasks: tasks\n\xa7 plugin.team_departments.totalDays: Duration\n\xa7 plugin.team_departments.totalAuthors: Staff members\n\xa7 plugin.team_departments.totalTasks: Tasks\n\xa7 plugin.team_departments.employments.author: Staff member\n\xa7 plugin.team_departments.employments.worked: work\n\xa7 plugin.team_departments.employments.losses: days without commits\n\xa7 plugin.team_departments.employments.totalDays: Days in department\n\xa7 plugin.team_departments.employments.totalTasks: Tasks completed\n\xa7 plugin.team_departments.details.title: Actual department data\n\xa7 plugin.team_departments.details.totalDays: work duration\n\xa7 plugin.team_departments.details.moneyInMonth: development cost per month\n\xa7 plugin.team_departments.details.moneyAll: development cost over time\n\xa7 plugin.team_departments.details.mainLocation: main location\n\xa7 plugin.team_departments.details.activeAuthors.title: works / left\n\xa7 plugin.team_departments.details.activeAuthors.description: If a staff member did not make a single commit within a month, they are considered to have left. The status is shown for staff members regardless of this department: they may work in any department or have left the company completely.\n\xa7 plugin.team_departments.details.linesInTask.title: lines of code per task\n\xa7 plugin.team_departments.details.linesInTask.description: Weighted average number of lines of code per task. Helps estimate task granularity.\n\xa7 plugin.team_departments.details.totalTasks.title: tasks were in work\n\xa7 plugin.team_departments.details.totalTasks.description: Any mention of a unique task ID is counted. The task may not have been closed in the task tracker.\n\xa7 plugin.team_departments.months.title: Possible number of staff members in the department\n\xa7 plugin.team_departments.months.description: The task tracker issues sequential task IDs. Knowing the maximum task ID at the beginning and end of the month, we can find the number of *new tasks*. The number of tasks *fixed* this month is visible in the logs. Who fixed them (*worked*) is also visible. The number of tasks fixed later (*backlog*) is also calculated from the logs of subsequent months. We extrapolate the throughput of the programmers we see to the total number of tasks to estimate how many *total programmers* should be in the department. Based on the number of "programmers", we estimate the number of QA engineers, analysts, and managers.\n\xa7 plugin.team_departments.months.newTaskInMonth: New tasks\n\xa7 plugin.team_departments.months.tasksFixedThisGroup: Fixed\n\xa7 plugin.team_departments.months.tasksInBacklog: Backlog\n\xa7 plugin.team_departments.months.programmistInThisGroup: Worked\n\xa7 plugin.team_departments.months.allProgrammistInDepartment: Should work\n\xa7 plugin.team_departments.months.allUsersInDepartment: Total staff\n\xa7 plugin.team_departments.forecasting.title: Full cost forecast\n\xa7 plugin.team_departments.forecasting.moneyInMonth.title: department costs per month\n\xa7 plugin.team_departments.forecasting.moneyInMonth.description: Multiply the number of all potential staff members (development, QA, analytics, management) for the last month by the average salary.\n\xa7 plugin.team_departments.forecasting.moneyAll.title: department costs over time\n\xa7 plugin.team_departments.forecasting.moneyAll.description: Multiply the number of all potential staff members (development, QA, analytics, management) for each month by the average salary.\n',hi:'\n\xa7 plugin.team_departments.sidebar: Departments\n\xa7 plugin.team_departments.employmentsChart.title: Current team sizes\n\xa7 plugin.team_departments.employmentsChart.item: teams\n\xa7 plugin.team_departments.employmentsChart.less1: one staff member\n\xa7 plugin.team_departments.employmentsChart.less2: two staff members\n\xa7 plugin.team_departments.employmentsChart.less3: three staff members\n\xa7 plugin.team_departments.employmentsChart.less6: up to six staff members\n\xa7 plugin.team_departments.employmentsChart.less9: up to nine staff members\n\xa7 plugin.team_departments.employmentsChart.less12: up to 12 staff members\n\xa7 plugin.team_departments.employmentsChart.less15: up to 15 staff members\n\xa7 plugin.team_departments.employmentsChart.more: more than 15\n\xa7 plugin.team_departments.daysChart.title: Project duration\n\xa7 plugin.team_departments.daysChart.item: projects\n\xa7 plugin.team_departments.title: Project list\n\xa7 plugin.team_departments.status: Status\n\xa7 plugin.team_departments.active.yes: Development in progress\n\xa7 plugin.team_departments.active.no: No new tasks\n\xa7 plugin.team_departments.author.work: works\n\xa7 plugin.team_departments.author.dismissed: left\n\xa7 plugin.team_departments.author.staff: staff\n\xa7 plugin.team_departments.code: Code\n\xa7 plugin.team_departments.from: First commit\n\xa7 plugin.team_departments.to: Last\n\xa7 plugin.team_departments.authors: people\n\xa7 plugin.team_departments.tasks: tasks\n\xa7 plugin.team_departments.totalDays: Duration\n\xa7 plugin.team_departments.totalAuthors: Staff members\n\xa7 plugin.team_departments.totalTasks: Tasks\n\xa7 plugin.team_departments.employments.author: Staff member\n\xa7 plugin.team_departments.employments.worked: work\n\xa7 plugin.team_departments.employments.losses: days without commits\n\xa7 plugin.team_departments.employments.totalDays: Days in department\n\xa7 plugin.team_departments.employments.totalTasks: Tasks completed\n\xa7 plugin.team_departments.details.title: Actual department data\n\xa7 plugin.team_departments.details.totalDays: work duration\n\xa7 plugin.team_departments.details.moneyInMonth: development cost per month\n\xa7 plugin.team_departments.details.moneyAll: development cost over time\n\xa7 plugin.team_departments.details.mainLocation: main location\n\xa7 plugin.team_departments.details.activeAuthors.title: works / left\n\xa7 plugin.team_departments.details.activeAuthors.description: If a staff member did not make a single commit within a month, they are considered to have left. The status is shown for staff members regardless of this department: they may work in any department or have left the company completely.\n\xa7 plugin.team_departments.details.linesInTask.title: lines of code per task\n\xa7 plugin.team_departments.details.linesInTask.description: Weighted average number of lines of code per task. Helps estimate task granularity.\n\xa7 plugin.team_departments.details.totalTasks.title: tasks were in work\n\xa7 plugin.team_departments.details.totalTasks.description: Any mention of a unique task ID is counted. The task may not have been closed in the task tracker.\n\xa7 plugin.team_departments.months.title: Possible number of staff members in the department\n\xa7 plugin.team_departments.months.description: The task tracker issues sequential task IDs. Knowing the maximum task ID at the beginning and end of the month, we can find the number of *new tasks*. The number of tasks *fixed* this month is visible in the logs. Who fixed them (*worked*) is also visible. The number of tasks fixed later (*backlog*) is also calculated from the logs of subsequent months. We extrapolate the throughput of the programmers we see to the total number of tasks to estimate how many *total programmers* should be in the department. Based on the number of "programmers", we estimate the number of QA engineers, analysts, and managers.\n\xa7 plugin.team_departments.months.newTaskInMonth: New tasks\n\xa7 plugin.team_departments.months.tasksFixedThisGroup: Fixed\n\xa7 plugin.team_departments.months.tasksInBacklog: Backlog\n\xa7 plugin.team_departments.months.programmistInThisGroup: Worked\n\xa7 plugin.team_departments.months.allProgrammistInDepartment: Should work\n\xa7 plugin.team_departments.months.allUsersInDepartment: Total staff\n\xa7 plugin.team_departments.forecasting.title: Full cost forecast\n\xa7 plugin.team_departments.forecasting.moneyInMonth.title: department costs per month\n\xa7 plugin.team_departments.forecasting.moneyInMonth.description: Multiply the number of all potential staff members (development, QA, analytics, management) for the last month by the average salary.\n\xa7 plugin.team_departments.forecasting.moneyAll.title: department costs over time\n\xa7 plugin.team_departments.forecasting.moneyAll.description: Multiply the number of all potential staff members (development, QA, analytics, management) for each month by the average salary.\n',ja:"\n\xa7 plugin.team_departments.sidebar: Departments\n\xa7 plugin.team_departments.employments.title: The size of the current teams\n\xa7 plugin.team_departments.employments.item: of teams\n\xa7 plugin.team_departments.daysChart.title: Duration of the project\n\xa7 plugin.team_departments.daysChart.item: projects\n\xa7 plugin.team_departments.title: List of projects\n\xa7 plugin.team_departments.code: Code\n\xa7 plugin.team_departments.from: First commit\n\xa7 plugin.team_departments.to: Last\n\xa7 plugin.team_departments.authors: employees\n\xa7 plugin.team_departments.tasks: tasks\n\xa7 plugin.team_departments.totalDays: Working days\n\xa7 plugin.team_departments.totalAuthors: Number of employees\n\xa7 plugin.team_departments.months.title: Possible number of employees in the department\n\xa7 plugin.team_departments.months.description: It is assumed that the task tracker issues the serial numbers of the tasks. Knowing the maximum task number at the beginning and end of the month, we can find out the number of completed tasks. Knowing how many tasks the authors we know have closed this month, we can interpolate their work speed to all new tasks and assume the total number of employees whose work was not reflected in the git log.\n\xa7 plugin.team_departments.months.date: Date\n\xa7 plugin.team_departments.months.tasks: New tasks\n\xa7 plugin.team_departments.months.tasksInWeek: in week\n\xa7 plugin.team_departments.months.fixed: was fixed\n\xa7 plugin.team_departments.months.authors: Worked\n\xa7 plugin.team_departments.months.allAuthors: total number of employees in the department\n",ko:"\n\xa7 plugin.team_departments.sidebar: Departments\n\xa7 plugin.team_departments.employments.title: The size of the current teams\n\xa7 plugin.team_departments.employments.item: of teams\n\xa7 plugin.team_departments.daysChart.title: Duration of the project\n\xa7 plugin.team_departments.daysChart.item: projects\n\xa7 plugin.team_departments.title: List of projects\n\xa7 plugin.team_departments.code: Code\n\xa7 plugin.team_departments.from: First commit\n\xa7 plugin.team_departments.to: Last\n\xa7 plugin.team_departments.authors: employees\n\xa7 plugin.team_departments.tasks: tasks\n\xa7 plugin.team_departments.totalDays: Working days\n\xa7 plugin.team_departments.totalAuthors: Number of employees\n\xa7 plugin.team_departments.months.title: Possible number of employees in the department\n\xa7 plugin.team_departments.months.description: It is assumed that the task tracker issues the serial numbers of the tasks. Knowing the maximum task number at the beginning and end of the month, we can find out the number of completed tasks. Knowing how many tasks the authors we know have closed this month, we can interpolate their work speed to all new tasks and assume the total number of employees whose work was not reflected in the git log.\n\xa7 plugin.team_departments.months.date: Date\n\xa7 plugin.team_departments.months.tasks: New tasks\n\xa7 plugin.team_departments.months.tasksInWeek: in week\n\xa7 plugin.team_departments.months.fixed: was fixed\n\xa7 plugin.team_departments.months.authors: Worked\n\xa7 plugin.team_departments.months.allAuthors: total number of employees in the department\n",pt:"\n\xa7 plugin.team_departments.sidebar: Departments\n\xa7 plugin.team_departments.employments.title: The size of the current teams\n\xa7 plugin.team_departments.employments.item: of teams\n\xa7 plugin.team_departments.daysChart.title: Duration of the project\n\xa7 plugin.team_departments.daysChart.item: projects\n\xa7 plugin.team_departments.title: List of projects\n\xa7 plugin.team_departments.code: Code\n\xa7 plugin.team_departments.from: First commit\n\xa7 plugin.team_departments.to: Last\n\xa7 plugin.team_departments.authors: employees\n\xa7 plugin.team_departments.tasks: tasks\n\xa7 plugin.team_departments.totalDays: Working days\n\xa7 plugin.team_departments.totalAuthors: Number of employees\n\xa7 plugin.team_departments.months.title: Possible number of employees in the department\n\xa7 plugin.team_departments.months.description: It is assumed that the task tracker issues the serial numbers of the tasks. Knowing the maximum task number at the beginning and end of the month, we can find out the number of completed tasks. Knowing how many tasks the authors we know have closed this month, we can interpolate their work speed to all new tasks and assume the total number of employees whose work was not reflected in the git log.\n\xa7 plugin.team_departments.months.date: Date\n\xa7 plugin.team_departments.months.tasks: New tasks\n\xa7 plugin.team_departments.months.tasksInWeek: in week\n\xa7 plugin.team_departments.months.fixed: was fixed\n\xa7 plugin.team_departments.months.authors: Worked\n\xa7 plugin.team_departments.months.allAuthors: total number of employees in the department\n",ru:'\n\xa7 plugin.team_departments.sidebar: \u041e\u0442\u0434\u0435\u043b\u044b\n\xa7 plugin.team_departments.employmentsChart.title: \u0420\u0430\u0437\u043c\u0435\u0440 \u0442\u0435\u043a\u0443\u0449\u0438\u0445 \u043a\u043e\u043c\u0430\u043d\u0434\n\xa7 plugin.team_departments.employmentsChart.item: \u043a\u043e\u043c\u0430\u043d\u0434\n\xa7 plugin.team_departments.employmentsChart.less1: \u043e\u0434\u0438\u043d \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\n\xa7 plugin.team_departments.employmentsChart.less2: \u0434\u0432\u0430 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\n\xa7 plugin.team_departments.employmentsChart.less3: \u0442\u0440\u0438 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\n\xa7 plugin.team_departments.employmentsChart.less6: \u0434\u043e \u0448\u0435\u0441\u0442\u0438 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 plugin.team_departments.employmentsChart.less9: \u0434\u043e \u0434\u0435\u0432\u044f\u0442\u0438 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 plugin.team_departments.employmentsChart.less12: \u0434\u043e 12 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 plugin.team_departments.employmentsChart.less15: \u0434\u043e 15 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 plugin.team_departments.employmentsChart.more: \u0431\u043e\u043b\u044c\u0448\u0435 15\n\xa7 plugin.team_departments.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 plugin.team_departments.daysChart.item: \u043f\u0440\u043e\u0435\u043a\u0442\u0430\n\xa7 plugin.team_departments.title: \u0421\u043f\u0438\u0441\u043e\u043a \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432\n\xa7 plugin.team_departments.status: \u0421\u0442\u0430\u0442\u0443\u0441\n\xa7 plugin.team_departments.active.yes: \u0418\u0434\u0451\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430\n\xa7 plugin.team_departments.active.no: \u041d\u043e\u0432\u044b\u0445 \u0437\u0430\u0434\u0430\u0447 \u043d\u0435\u0442\n\xa7 plugin.team_departments.author.work: \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442\n\xa7 plugin.team_departments.author.dismissed: \u0443\u0432\u043e\u043b\u0435\u043d\n\xa7 plugin.team_departments.author.staff: \u043f\u043e\u043c\u043e\u0449\u043d\u0438\u043a\n\xa7 plugin.team_departments.code: \u041a\u043e\u0434\n\xa7 plugin.team_departments.from: \u041f\u0435\u0440\u0432\u044b\u0439 \u043a\u043e\u043c\u043c\u0438\u0442\n\xa7 plugin.team_departments.to: \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439\n\xa7 plugin.team_departments.authors: \u0447\u0435\u043b\u043e\u0432\u0435\u043a\n\xa7 plugin.team_departments.tasks: \u0437\u0430\u0434\u0430\u0447\n\xa7 plugin.team_departments.totalDays: \u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\n\xa7 plugin.team_departments.totalAuthors: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 plugin.team_departments.totalTasks: \u0417\u0430\u0434\u0430\u0447\n\xa7 plugin.team_departments.employments.author: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\n\xa7 plugin.team_departments.employments.worked: \u0440\u0430\u0431\u043e\u0442\u0430\n\xa7 plugin.team_departments.employments.losses: \u0434\u043d\u0438 \u0431\u0435\u0437 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.team_departments.employments.totalDays: \u0414\u043d\u0435\u0439 \u0432 \u043e\u0442\u0434\u0435\u043b\u0435\n\xa7 plugin.team_departments.employments.totalTasks: \u0421\u0434\u0435\u043b\u0430\u043b \u0437\u0430\u0434\u0430\u0447\n\xa7 plugin.team_departments.banner.title: \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043f\u043e \u043e\u0442\u0434\u0435\u043b\u0443\n\xa7 plugin.team_departments.details.title: \u0424\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e \u043e\u0442\u0434\u0435\u043b\u0443\n\xa7 plugin.team_departments.details.totalDays: \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\n\xa7 plugin.team_departments.details.moneyInMonth: \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432 \u043c\u0435\u0441\u044f\u0446\n\xa7 plugin.team_departments.details.moneyAll: \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0437\u0430 \u0432\u0441\u0451 \u0432\u0440\u0435\u043c\u044f\n\xa7 plugin.team_departments.details.mainLocation: \u043e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u043b\u043e\u043a\u0430\u0446\u0438\u044f\n\xa7 plugin.team_departments.details.activeAuthors.title: \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 / \u0443\u0432\u043e\u043b\u0438\u043b\u043e\u0441\u044c\n\xa7 plugin.team_departments.details.activeAuthors.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. \u0421\u0442\u0430\u0442\u0443\u0441 \u043f\u043e\u043a\u0430\u0437\u0430\u043d \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432, \u0431\u0435\u0437 \u043f\u0440\u0438\u0432\u044f\u0437\u043a\u0438 \u043a \u044d\u0442\u043e\u043c\u0443 \u043e\u0442\u0434\u0435\u043b\u0443. \u0420\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432 \u043a\u0430\u043a\u043e\u043c-\u043b\u0438\u0431\u043e \u043e\u0442\u0434\u0435\u043b\u0435 \u0432\u043e\u043e\u0431\u0449\u0435 \u0438\u043b\u0438 \u0443\u0432\u043e\u043b\u0435\u043d \u0438\u0437 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e.\n\xa7 plugin.team_departments.details.linesInTask.title: \u0441\u0442\u0440\u043e\u043a \u043a\u043e\u0434\u0430 \u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0443\n\xa7 plugin.team_departments.details.linesInTask.description: \u0421\u0440\u0435\u0434\u043d\u0435\u0432\u0437\u0432\u0435\u0448\u0435\u043d\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u0442\u0440\u043e\u043a \u043a\u043e\u0434\u0430 \u043d\u0430 \u043e\u0434\u043d\u0443 \u0437\u0430\u0434\u0430\u0447\u0443. \u041f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u043e\u0446\u0435\u043d\u0438\u0442\u044c \u0433\u0440\u0430\u043d\u0443\u043b\u044f\u0440\u043d\u043e\u0441\u0442\u044c \u0437\u0430\u0434\u0430\u0447.\n\xa7 plugin.team_departments.details.totalTasks.title: \u0437\u0430\u0434\u0430\u0447 \u0431\u044b\u043b\u043e \u0432 \u0440\u0430\u0431\u043e\u0442\u0435\n\xa7 plugin.team_departments.details.totalTasks.description: \u0421\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u043b\u044e\u0431\u043e\u0435 \u0443\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u0435 \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043d\u043e\u043c\u0435\u0440\u0430 \u0437\u0430\u0434\u0430\u0447\u0438. \u0417\u0430\u0434\u0430\u0447\u0430 \u043c\u043e\u0433\u043b\u0430 \u0431\u044b\u0442\u044c \u043d\u0435 \u0437\u0430\u043a\u0440\u044b\u0442\u0430 \u0432 \u0442\u0430\u0441\u043a-\u0442\u0440\u0435\u043a\u0435\u0440\u0435.\n\xa7 plugin.team_departments.months.title: \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 \u0432 \u043e\u0442\u0434\u0435\u043b\u0435\n\xa7 plugin.team_departments.months.description: \u0422\u0430\u0441\u043a-\u0442\u0440\u0435\u043a\u0435\u0440 \u0432\u044b\u0434\u0430\u0435\u0442 \u0441\u0435\u0440\u0438\u0439\u043d\u044b\u0435 \u043d\u043e\u043c\u0435\u0440\u0430 \u0437\u0430\u0434\u0430\u0447. \u0417\u043d\u0430\u044f \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u043d\u043e\u043c\u0435\u0440 \u0437\u0430\u0434\u0430\u0447\u0438 \u0432 \u043d\u0430\u0447\u0430\u043b\u0435 \u0438 \u043a\u043e\u043d\u0446\u0435 \u043c\u0435\u0441\u044f\u0446\u0430, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0443\u0437\u043d\u0430\u0442\u044c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e *\u043d\u043e\u0432\u044b\u0445 \u0437\u0430\u0434\u0430\u0447*. \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u0434\u0430\u0447 *\u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445* \u0432 \u044d\u0442\u043e\u043c \u043c\u0435\u0441\u044f\u0446\u0435 \u0432\u0438\u0434\u0438\u043c \u0432 \u043b\u043e\u0433\u0430\u0445. \u041a\u0442\u043e \u0438\u0445 \u043f\u0440\u0430\u0432\u0438\u043b (*\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e*) \u0442\u0430\u043a \u0436\u0435 \u0432\u0438\u0434\u0438\u043c. \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u0434\u0430\u0447 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u043e\u0437\u0436\u0435 (*\u0431\u0435\u043a\u043b\u043e\u0433*) \u0442\u0430\u043a \u0436\u0435 \u0441\u0447\u0438\u0442\u0430\u0435\u043c \u043f\u043e \u043b\u043e\u0433\u0430\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432. \u042d\u043a\u0441\u0442\u0440\u0430\u043f\u043e\u043b\u0438\u0440\u0443\u0435\u043c \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043c\u044b \u0432\u0438\u0434\u0438\u043c, \u043d\u0430 \u043e\u0431\u0449\u0435\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u0434\u0430\u0447, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0438\u043a\u0438\u043d\u0443\u0442\u044c \u0441\u043a\u043e\u043b\u044c\u043a\u043e *\u0432\u0441\u0435\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043e\u0432* \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u0432 \u043e\u0442\u0434\u0435\u043b\u0435. \u041f\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0443 "\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043e\u0432" \u043f\u0440\u0438\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u043e\u0432, \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u043e\u0432 \u0438 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u043e\u0432.\n\xa7 plugin.team_departments.months.newTaskInMonth: \u041d\u043e\u0432\u044b\u0445 \u0437\u0430\u0434\u0430\u0447\n\xa7 plugin.team_departments.months.tasksFixedThisGroup: \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u043e\n\xa7 plugin.team_departments.months.tasksInBacklog: \u0411\u0435\u043a\u043b\u043e\u0433\n\xa7 plugin.team_departments.months.programmistInThisGroup: \u0420\u0430\u0431\u043e\u0442\u0430\u043b\u043e\n\xa7 plugin.team_departments.months.allProgrammistInDepartment: \u0414\u043e\u043b\u0436\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c\n\xa7 plugin.team_departments.months.allUsersInDepartment: \u0412\u0441\u0435\u0433\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 plugin.team_departments.forecasting.title: \u041f\u0440\u043e\u0433\u043d\u043e\u0437 \u043f\u043e\u043b\u043d\u043e\u0439 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u0438\n\xa7 plugin.team_departments.forecasting.moneyInMonth.title: \u0440\u0430\u0441\u0445\u043e\u0434\u044b \u043d\u0430 \u043e\u0442\u0434\u0435\u043b \u0432 \u043c\u0435\u0441\u044f\u0446\n\xa7 plugin.team_departments.forecasting.moneyInMonth.description: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0432\u0441\u0435\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 (\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430, \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0430, \u043c\u0435\u043d\u0435\u0434\u0436\u043c\u0435\u043d\u0442) \u0437\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043c\u0435\u0441\u044f\u0446 \u0443\u043c\u043d\u043e\u0436\u0430\u0435\u043c \u043d\u0430 \u0441\u0440\u0435\u0434\u043d\u044e\u044e \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u043d\u0443\u044e \u043f\u043b\u0430\u0442\u0443.\n\xa7 plugin.team_departments.forecasting.moneyAll.title: \u0440\u0430\u0441\u0445\u043e\u0434\u044b \u043d\u0430 \u043e\u0442\u0434\u0435\u043b \u0437\u0430 \u0432\u0441\u0451 \u0432\u0440\u0435\u043c\u044f\n\xa7 plugin.team_departments.forecasting.moneyAll.description: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0432\u0441\u0435\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 (\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430, \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0430, \u043c\u0435\u043d\u0435\u0434\u0436\u043c\u0435\u043d\u0442) \u0437\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u043c\u0435\u0441\u044f\u0446 \u0443\u043c\u043d\u043e\u0436\u0430\u0435\u043c \u043d\u0430 \u0441\u0440\u0435\u0434\u043d\u044e\u044e \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u043d\u0443\u044e \u043f\u043b\u0430\u0442\u0443.\n',zh:"\n\xa7 plugin.team_departments.sidebar: Departments\n\xa7 plugin.team_departments.employments.title: The size of the current teams\n\xa7 plugin.team_departments.employments.item: of teams\n\xa7 plugin.team_departments.daysChart.title: Duration of the project\n\xa7 plugin.team_departments.daysChart.item: projects\n\xa7 plugin.team_departments.title: List of projects\n\xa7 plugin.team_departments.code: Code\n\xa7 plugin.team_departments.from: First commit\n\xa7 plugin.team_departments.to: Last\n\xa7 plugin.team_departments.authors: employees\n\xa7 plugin.team_departments.tasks: tasks\n\xa7 plugin.team_departments.totalDays: Working days\n\xa7 plugin.team_departments.totalAuthors: Number of employees\n\xa7 plugin.team_departments.months.title: Possible number of employees in the department\n\xa7 plugin.team_departments.months.description: It is assumed that the task tracker issues the serial numbers of the tasks. Knowing the maximum task number at the beginning and end of the month, we can find out the number of completed tasks. Knowing how many tasks the authors we know have closed this month, we can interpolate their work speed to all new tasks and assume the total number of employees whose work was not reflected in the git log.\n\xa7 plugin.team_departments.months.date: Date\n\xa7 plugin.team_departments.months.tasks: New tasks\n\xa7 plugin.team_departments.months.tasksInWeek: in week\n\xa7 plugin.team_departments.months.fixed: was fixed\n\xa7 plugin.team_departments.months.authors: Worked\n\xa7 plugin.team_departments.months.allAuthors: total number of employees in the department\n"},mR=yi((e=>{let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;const i=PT.statisticsByCommits.author.totalInfoByName;t||(t={content:[]});const[o,r,l]=["plugin.team_departments.author.work","plugin.team_departments.author.dismissed","plugin.team_departments.author.staff"],[m,c]=["plugin.team_departments.employments.worked","plugin.team_departments.employments.losses"],[u,p]=sI(t,["totalDaysInProject","totalTasks"]);return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:s,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,width:200,template:_p.STRING,properties:"author",title:"plugin.team_departments.employments.author"}),(0,mu.jsx)(zp,{properties:"author",template:_p.TAGS,width:140,formatter:e=>{const t=i.get(e);return t.isStaff?l:t.isDismissed?r:o}}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,properties:"firstCommit",width:130,formatter:Zi}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,properties:"lastCommit",width:130,formatter:Zi}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.SHORT_NUMBER,properties:"totalDaysInProject",width:90}),(0,mu.jsx)(zp,{isSortable:!0,width:150,title:"plugin.team_departments.employments.totalDays",template:e=>(0,mu.jsx)(LE,{value:e.totalDaysInProject,max:u,order:[m,c],details:{[m]:e.totalDays,[c]:e.totalDaysInProject-e.totalDays},limit:1,suffix:"common.statistic.days"})}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.SHORT_NUMBER,properties:"totalTasks",width:90}),(0,mu.jsx)(zp,{isSortable:!0,properties:"totalTasks",title:"plugin.team_departments.employments.totalTasks",template:e=>(0,mu.jsx)(LE,{value:e,max:p,suffix:"common.statistic.tasks"})})]})}));function cR(e,t,n,a){const s=PT.statisticsByCommits.author.totalInfoByName,i={[t]:0,[n]:0,[a]:0};return((null===e||void 0===e?void 0:e.authors)||[]).forEach((e=>{const o=s.get(e.author);null!==o&&void 0!==o&&o.isStaff?i[a]+=1:null!==o&&void 0!==o&&o.isDismissed?i[n]+=1:i[t]+=1})),i}function uR(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;if(!t)return null;const[i,o]=["plugin.team_departments.active.yes","plugin.team_departments.active.no"],[r,l,m]=["plugin.team_departments.author.work","plugin.team_departments.author.dismissed","plugin.team_departments.author.staff"],[c,u,p]=sI(t,["totalDays","totalAuthors","tasks"]);return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,template:_p.DETAILS,width:40,formatter:e=>(0,mu.jsxs)(tS,{content:e.authors,mode:"details",children:[(0,mu.jsx)(mR,{mode:"details"}),(0,mu.jsx)(KC,{})]})}),(0,mu.jsx)(zp,{isFixed:!0,template:_p.STRING,properties:"taskCode",title:"plugin.team_departments.code"}),(0,mu.jsx)(zp,{title:"plugin.team_departments.status",formatter:e=>e.isActive?i:o,template:_p.TAGS,width:140}),(0,mu.jsx)(zp,{template:_p.STRING,properties:"from",title:"plugin.team_departments.from",width:130,formatter:Zi}),(0,mu.jsx)(zp,{template:_p.STRING,properties:"to",title:"plugin.team_departments.to",width:130,formatter:Zi}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"totalDaysWorked",width:90}),(0,mu.jsx)(zp,{isSortable:"totalDays",title:"plugin.team_departments.totalDays",properties:"totalDaysWorked",minWidth:150,template:e=>(0,mu.jsx)(LE,{value:e,max:c,suffix:"common.statistic.days"})}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"tasks",width:90}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_departments.totalTasks",properties:"tasks",minWidth:150,template:e=>(0,mu.jsx)(LE,{value:e,max:p,suffix:"common.statistic.tasks"})}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"totalAuthors",width:90}),(0,mu.jsx)(zp,{isSortable:"totalAuthors",title:"plugin.team_departments.totalAuthors",minWidth:150,template:e=>(0,mu.jsx)(LE,{value:e.totalAuthors,order:[r,l,m],details:cR(e,r,l,m),max:u,suffix:"common.statistic.employees"})})]})}uR.defaultProps={response:void 0};const pR=uR,dR=["plugin.team_departments.employmentsChart.less1","plugin.team_departments.employmentsChart.less2","plugin.team_departments.employmentsChart.less3","plugin.team_departments.employmentsChart.less6","plugin.team_departments.employmentsChart.less9","plugin.team_departments.employmentsChart.less12","plugin.team_departments.employmentsChart.less15","plugin.team_departments.employmentsChart.more"],[hR,gR,fR,yR,vR,_R,kR,bR]=dR;const[wR,xR]=oI("days"),TR=yi((()=>{var e;const t=PT.statisticsByCommits.author.totalInfoByName,n=PT.statisticsByCommits.taskCodes.totalInfo.filter((e=>e.totalDaysWorked>10)),[a,s]=function(e,t){const n=e.reduce(((e,n)=>{const a=n.authors.filter((e=>{const n=t.get(e.author);return!(null!==n&&void 0!==n&&n.isStaff)&&!(null!==n&&void 0!==n&&n.isDismissed)})).length;return a?(Vo(e,a<=1?hR:a<=2?gR:a<=3?fR:a<=6?yR:a<=9?vR:a<=12?_R:a<=15?kR:bR),e):e}),{});return[dR.filter((e=>n[e])),n]}(n,t),i=null===(e=wR(n,"totalDays"))||void 0===e?void 0:e.details;return Object.keys(s).length?(0,mu.jsxs)(yT,{children:[(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_departments.daysChart.title",suffix:"plugin.team_departments.daysChart.item",order:xR,limit:1,details:i})}),(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_departments.employmentsChart.title",suffix:"plugin.team_departments.employmentsChart.item",order:a,limit:1,details:s})})]}):(0,mu.jsx)(yT,{children:(0,mu.jsx)(AE,{title:"plugin.team_departments.daysChart.title",suffix:"plugin.team_departments.daysChart.item",order:xR,limit:1,details:i})})}));function CR(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;if(!t)return null;const[i]=sI(t,["allUsersInDepartment"]);return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,title:"common.statistic.Date",width:150,template:(e,n,a)=>{const s=t.content[a+1],i=Ji("".concat(e.year,"-").concat(e.month+1,"-01"),{month:"long",year:"numeric"});return(null===s||void 0===s?void 0:s.year)!==e.year?(0,mu.jsx)("b",{children:i}):i}}),(0,mu.jsx)(zp,{template:_p.NUMBER,properties:"newTaskInMonth",title:"plugin.team_departments.months.newTaskInMonth",width:100}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"tasksFixedThisGroup",title:"plugin.team_departments.months.tasksFixedThisGroup",width:100}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"tasksInBacklog",title:"plugin.team_departments.months.tasksInBacklog",width:100}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"programmistInThisGroup",title:"plugin.team_departments.months.programmistInThisGroup",width:150}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"allProgrammistInDepartment",title:"plugin.team_departments.months.allProgrammistInDepartment",width:150}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"allMiddleUsersInDepartment",width:70}),(0,mu.jsx)(zp,{isSortable:!0,minWidth:200,properties:"allMiddleUsersInDepartment",title:"plugin.team_departments.months.allUsersInDepartment",template:e=>(0,mu.jsx)(LE,{value:e,max:i,suffix:"plugin.team_departments.months.allAuthors"})})]})}CR.defaultProps={response:void 0};const SR=CR;const jR=yi((e=>{let{department:t}=e;if(!t)return null;const{country:n,total:a}=function(e){var t;const n=PT.statisticsByCommits.author.totalInfoByName,a={},s={};return e.forEach((e=>{const t=n.get(null===e||void 0===e?void 0:e.author);Vo(a,t.lastCountry),null!==t&&void 0!==t&&t.isStaff?Vo(s,"staff"):null!==t&&void 0!==t&&t.isDismissed?Vo(s,"dismissed"):Vo(s,"active")})),{country:(null===(t=Object.entries(a).sort(((e,t)=>e[1]-t[1])).pop())||void 0===t?void 0:t[0])||null,total:s}}(t.authors),s=so.getMiddleSalaryInMonth(),i=a.active*s,o=t.months.reduce(((e,t)=>e+t.programmistInThisGroup*s),0);return(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(qu,{value:ao(t.totalDays),icon:"./assets/cards/work_days2.svg",title:"plugin.team_departments.details.totalDays"}),(0,mu.jsx)(qu,{value:ro(i),icon:"./assets/cards/money_month.svg",title:"plugin.team_departments.details.moneyInMonth"}),(0,mu.jsx)(Pu,{size:"l",value:"".concat(a.active," / ").concat(a.dismissed),icon:"./assets/cards/dismissal.svg",title:"plugin.team_departments.details.activeAuthors.title",description:"plugin.team_departments.details.activeAuthors.description"})]}),(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(qu,{value:ro(o),icon:"./assets/cards/money_total.svg",title:"plugin.team_departments.details.moneyAll"}),(0,mu.jsx)(qu,{value:n,icon:"./assets/cards/location.svg",title:"plugin.team_departments.details.mainLocation"}),(0,mu.jsx)(Pu,{value:t.linesInTask,icon:"./assets/cards/lines.svg",title:"plugin.team_departments.details.linesInTask.title",description:"plugin.team_departments.details.linesInTask.description"}),(0,mu.jsx)(Pu,{value:t.tasks,icon:"./assets/cards/tasks.svg",title:"plugin.team_departments.details.totalTasks.title",description:"plugin.team_departments.details.totalTasks.description"})]})]})})),DR=yi((e=>{var t;let{department:n}=e;if(!n||null===n||void 0===n||null===(t=n.months)||void 0===t||!t.length)return null;const a=so.getMiddleSalaryInMonth(),s=n.months[0].allMiddleUsersInDepartment*a,i=n.months.reduce(((e,t)=>e+t.allMiddleUsersInDepartment*a),0);return(0,mu.jsxs)(yT,{children:[(0,mu.jsx)(_T,{children:(0,mu.jsx)(Pu,{value:ro(s),icon:"./assets/cards/money_month.svg",title:"plugin.team_departments.forecasting.moneyInMonth.title",description:"plugin.team_departments.forecasting.moneyInMonth.description",size:"l"})}),(0,mu.jsx)(_T,{children:(0,mu.jsx)(Pu,{value:ro(i),icon:"./assets/cards/money_total.svg",title:"plugin.team_departments.forecasting.moneyAll.title",description:"plugin.team_departments.forecasting.moneyAll.description",size:"l"})})]})})),AR=yi((e=>{var n,a,s;let{mode:i}=e;const o=PT.statisticsByCommits.taskCodes.totalInfo.filter((e=>e.totalDaysWorked>10)),r=o.filter((e=>{var t;return(null===e||void 0===e||null===(t=e.months)||void 0===t?void 0:t.length)>6})).map(((e,t)=>({id:t,title:e.taskCode}))),[l,m]=(0,t.useState)(null===r||void 0===r||null===(n=r[0])||void 0===n?void 0:n.id),c=(null===(a=o[l])||void 0===a?void 0:a.months)||[];return null!==o&&void 0!==o&&o.length?(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(Pw,{value:!Ab.isOpen&&(null===o||void 0===o?void 0:o.length)>1,children:(0,mu.jsx)(TR,{})}),(0,mu.jsx)(sx,{title:"plugin.team_departments.title"}),(0,mu.jsxs)(tS,{content:o,mode:i,children:[(0,mu.jsx)(pR,{mode:i}),(0,mu.jsx)(KC,{})]}),(0,mu.jsx)(cx,{prefix:"plugin.team_departments.banner.title",title:null===(s=r[l])||void 0===s?void 0:s.title,children:(0,mu.jsx)(Qx,{value:l,className:Aj,options:r,onChange:e=>{m(e)}})}),(0,mu.jsx)(sx,{title:"plugin.team_departments.details.title"}),(0,mu.jsx)(jR,{department:o[l]}),(0,mu.jsx)(sx,{title:"plugin.team_departments.months.title"}),(0,mu.jsx)(bw,{translationId:"plugin.team_departments.months.description"}),(0,mu.jsx)(dT,{height:48}),(0,mu.jsxs)(tS,{content:c,mode:i,watch:l,children:[(0,mu.jsx)(SR,{mode:i}),(0,mu.jsx)(KC,{})]}),(0,mu.jsx)(sx,{title:"plugin.team_departments.forecasting.title"}),(0,mu.jsx)(DR,{department:o[l]})]}):(0,mu.jsx)(Hw,{})})),ER=AR;class IR{getMenuItems(){return[{id:"departments",group:10,order:60,link:"/team/departments",title:"plugin.team_departments.sidebar",icon:"./assets/menu/department.svg"}]}getPage(e,t){return"/team/departments"===e?(0,mu.jsx)(ER,{mode:null===t||void 0===t?void 0:t.mode}):void 0}getTranslations(){return lR}}IR.id="team_departments";const NR={ar:"\n\xa7 plugin.team_file_analytics.sidebar: File types\n\xa7 plugin.team_file_analytics.createChart.title: For existing files\n\xa7 plugin.team_file_analytics.createChart.suffix: files\n\xa7 plugin.team_file_analytics.removeChart.title: For deleted files\n\xa7 plugin.team_file_analytics.extension.title: File extensions\n\xa7 plugin.team_file_analytics.extension.view: Extension list\n\xa7 plugin.team_file_analytics.type.title: File subtype\n\xa7 plugin.team_file_analytics.type.view: File subtype list\n\xa7 plugin.team_file_analytics.task: Task\n\xa7 plugin.team_file_analytics.name: Type\n\xa7 plugin.team_file_analytics.path: Path\n\xa7 plugin.team_file_analytics.current.count: Number\n\xa7 plugin.team_file_analytics.removed.count: Number of deleted\n\xa7 plugin.team_file_analytics.files: files\n",de:"\n\xa7 plugin.team_file_analytics.sidebar: Extensions\n\xa7 plugin.team_file_analytics.extension: File extensions\n\xa7 plugin.team_file_analytics.type: File sub types\n\xa7 plugin.team_file_analytics.name: Type\n\xa7 plugin.team_file_analytics.path: Path\n\xa7 plugin.team_file_analytics.current.count: Number\n\xa7 plugin.team_file_analytics.removed.count: Number of removed\n\xa7 plugin.team_file_analytics.files: files\n",en:"\n\xa7 plugin.team_file_analytics.sidebar: File types\n\xa7 plugin.team_file_analytics.createChart.title: For existing files\n\xa7 plugin.team_file_analytics.createChart.suffix: files\n\xa7 plugin.team_file_analytics.removeChart.title: For deleted files\n\xa7 plugin.team_file_analytics.extension.title: File extensions\n\xa7 plugin.team_file_analytics.extension.view: Extension list\n\xa7 plugin.team_file_analytics.type.title: File subtype\n\xa7 plugin.team_file_analytics.type.view: File subtype list\n\xa7 plugin.team_file_analytics.task: Task\n\xa7 plugin.team_file_analytics.name: Type\n\xa7 plugin.team_file_analytics.path: Path\n\xa7 plugin.team_file_analytics.current.count: Number\n\xa7 plugin.team_file_analytics.removed.count: Number of deleted\n\xa7 plugin.team_file_analytics.files: files\n",es:"\n\xa7 plugin.team_file_analytics.sidebar: Extensions\n\xa7 plugin.team_file_analytics.extension: File extensions\n\xa7 plugin.team_file_analytics.type: File sub types\n\xa7 plugin.team_file_analytics.name: Type\n\xa7 plugin.team_file_analytics.path: Path\n\xa7 plugin.team_file_analytics.current.count: Number\n\xa7 plugin.team_file_analytics.removed.count: Number of removed\n\xa7 plugin.team_file_analytics.files: files\n",fr:"\n\xa7 plugin.team_file_analytics.sidebar: Extensions\n\xa7 plugin.team_file_analytics.extension: File extensions\n\xa7 plugin.team_file_analytics.type: File sub types\n\xa7 plugin.team_file_analytics.name: Type\n\xa7 plugin.team_file_analytics.path: Path\n\xa7 plugin.team_file_analytics.current.count: Number\n\xa7 plugin.team_file_analytics.removed.count: Number of removed\n\xa7 plugin.team_file_analytics.files: files\n",he:"\n\xa7 plugin.team_file_analytics.sidebar: File types\n\xa7 plugin.team_file_analytics.createChart.title: For existing files\n\xa7 plugin.team_file_analytics.createChart.suffix: files\n\xa7 plugin.team_file_analytics.removeChart.title: For deleted files\n\xa7 plugin.team_file_analytics.extension.title: File extensions\n\xa7 plugin.team_file_analytics.extension.view: Extension list\n\xa7 plugin.team_file_analytics.type.title: File subtype\n\xa7 plugin.team_file_analytics.type.view: File subtype list\n\xa7 plugin.team_file_analytics.task: Task\n\xa7 plugin.team_file_analytics.name: Type\n\xa7 plugin.team_file_analytics.path: Path\n\xa7 plugin.team_file_analytics.current.count: Number\n\xa7 plugin.team_file_analytics.removed.count: Number of deleted\n\xa7 plugin.team_file_analytics.files: files\n",hi:"\n\xa7 plugin.team_file_analytics.sidebar: File types\n\xa7 plugin.team_file_analytics.createChart.title: For existing files\n\xa7 plugin.team_file_analytics.createChart.suffix: files\n\xa7 plugin.team_file_analytics.removeChart.title: For deleted files\n\xa7 plugin.team_file_analytics.extension.title: File extensions\n\xa7 plugin.team_file_analytics.extension.view: Extension list\n\xa7 plugin.team_file_analytics.type.title: File subtype\n\xa7 plugin.team_file_analytics.type.view: File subtype list\n\xa7 plugin.team_file_analytics.task: Task\n\xa7 plugin.team_file_analytics.name: Type\n\xa7 plugin.team_file_analytics.path: Path\n\xa7 plugin.team_file_analytics.current.count: Number\n\xa7 plugin.team_file_analytics.removed.count: Number of deleted\n\xa7 plugin.team_file_analytics.files: files\n",ja:"\n\xa7 plugin.team_file_analytics.sidebar: Extensions\n\xa7 plugin.team_file_analytics.extension: File extensions\n\xa7 plugin.team_file_analytics.type: File sub types\n\xa7 plugin.team_file_analytics.name: Type\n\xa7 plugin.team_file_analytics.path: Path\n\xa7 plugin.team_file_analytics.current.count: Number\n\xa7 plugin.team_file_analytics.removed.count: Number of removed\n\xa7 plugin.team_file_analytics.files: files\n",ko:"\n\xa7 plugin.team_file_analytics.sidebar: \ud30c\uc77c \ud615\uc2dd\n\xa7 plugin.team_file_analytics.extension: \ud30c\uc77c \ud655\uc7a5\uc790\n\xa7 plugin.team_file_analytics.type: \ud30c\uc77c \ud558\uc704 \uc720\ud615\n\xa7 plugin.team_file_analytics.name: \uc720\ud615\n\xa7 plugin.team_file_analytics.path: \uacbd\ub85c\n\xa7 plugin.team_file_analytics.current.count: \uc218\ub7c9\n\xa7 plugin.team_file_analytics.removed.count: \uc0ad\uc81c\ub41c \uc218\n\xa7 plugin.team_file_analytics.files: \ud30c\uc77c\n",pt:"\n\xa7 plugin.team_file_analytics.sidebar: Extensions\n\xa7 plugin.team_file_analytics.extension: File extensions\n\xa7 plugin.team_file_analytics.type: File sub types\n\xa7 plugin.team_file_analytics.name: Type\n\xa7 plugin.team_file_analytics.path: Path\n\xa7 plugin.team_file_analytics.current.count: Number\n\xa7 plugin.team_file_analytics.removed.count: Number of removed\n\xa7 plugin.team_file_analytics.files: files\n",ru:"\n\xa7 plugin.team_file_analytics.sidebar: \u0422\u0438\u043f\u044b \u0444\u0430\u0439\u043b\u043e\u0432\n\xa7 plugin.team_file_analytics.createChart.title: \u0423 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0444\u0430\u0439\u043b\u043e\u0432\n\xa7 plugin.team_file_analytics.createChart.suffix: \u0444\u0430\u0439\u043b\u043e\u0432\n\xa7 plugin.team_file_analytics.removeChart.title: \u0423 \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432\n\xa7 plugin.team_file_analytics.extension.title: \u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432\n\xa7 plugin.team_file_analytics.extension.view: \u0421\u043f\u0438\u0441\u043e\u043a \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0439\n\xa7 plugin.team_file_analytics.type.title: \u041f\u043e\u0434\u0442\u0438\u043f \u0444\u0430\u0439\u043b\u043e\u0432\n\xa7 plugin.team_file_analytics.type.view: \u0421\u043f\u0438\u0441\u043e\u043a \u043f\u043e\u0434\u0442\u0438\u043f\u043e\u0432 \u0444\u0430\u0439\u043b\u043e\u0432\n\xa7 plugin.team_file_analytics.task: \u0417\u0430\u0434\u0430\u0447\u0430\n\xa7 plugin.team_file_analytics.name: \u0422\u0438\u043f\n\xa7 plugin.team_file_analytics.path: \u041f\u0443\u0442\u044c\n\xa7 plugin.team_file_analytics.current.count: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\n\xa7 plugin.team_file_analytics.removed.count: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u044b\u0445\n\xa7 plugin.team_file_analytics.files: \u0444\u0430\u0439\u043b\u043e\u0432\n",zh:"\n\xa7 plugin.team_file_analytics.sidebar: Extensions\n\xa7 plugin.team_file_analytics.extension: File extensions\n\xa7 plugin.team_file_analytics.type: File sub types\n\xa7 plugin.team_file_analytics.name: Type\n\xa7 plugin.team_file_analytics.path: Path\n\xa7 plugin.team_file_analytics.current.count: Number\n\xa7 plugin.team_file_analytics.removed.count: Number of removed\n\xa7 plugin.team_file_analytics.files: files\n"};function PR(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;if(!t)return null;const[i,o]=sI(t,["files","removedFiles"]),r=Math.max(i,o);return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,template:_p.STRING,title:"plugin.team_file_analytics.name",properties:"extension",width:200}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_file_analytics.path",width:350,formatter:e=>1===e.files||1===e.removedFiles?e.path:""}),(0,mu.jsx)(zp,{template:_p.TASK,title:"plugin.team_file_analytics.task",width:120,formatter:e=>e.files<5?e.task:""}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"files"}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_file_analytics.current.count",properties:"files",minWidth:170,template:e=>(0,mu.jsx)(LE,{value:e,max:r,suffix:"plugin.team_file_analytics.files"})}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"removedFiles"}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_file_analytics.removed.count",properties:"removedFiles",minWidth:170,template:e=>(0,mu.jsx)(LE,{value:e,max:r,suffix:"plugin.team_file_analytics.files"})})]})}PR.defaultProps={response:void 0};const RR=PR;function OR(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;if(!t)return null;const[i,o]=sI(t,["files","removedFiles"]),r=Math.max(i,o);return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,template:_p.STRING,title:"plugin.team_file_analytics.name",properties:"type",width:200}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_file_analytics.path",width:350,formatter:e=>1===e.files||1===e.removedFiles?e.path:""}),(0,mu.jsx)(zp,{template:_p.TASK,title:"common.statistic.Tasks",width:120,formatter:e=>e.files<5?e.task:""}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"files"}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_file_analytics.current.count",properties:"files",minWidth:170,template:e=>(0,mu.jsx)(LE,{value:e,max:r,suffix:"plugin.team_file_analytics.files"})}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"removedFiles"}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_file_analytics.removed.count",properties:"removedFiles",minWidth:170,template:e=>(0,mu.jsx)(LE,{value:e,max:r,suffix:"plugin.team_file_analytics.files"})})]})}OR.defaultProps={response:void 0};const LR=OR;const MR=yi((e=>{let{rows:t,property:n}=e;if(!t)return null;const[a,s,i]=function(e,t){const n={},a={},s=[];return e.forEach((e=>{const i=e[t];n[i]=e.files,a[i]=e.removedFiles,s.push(i)})),[s,n,a]}(t,n);return(0,mu.jsxs)(yT,{children:[(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_file_analytics.createChart.title",suffix:"plugin.team_file_analytics.createChart.suffix",limit:2,order:a,details:s})}),(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_file_analytics.removeChart.title",suffix:"plugin.team_file_analytics.createChart.suffix",limit:2,order:a,details:i})})]})})),FR=yi((e=>{let{mode:t}=e;const n=PT.statisticsByFiles.type.totalInfo,a=PT.statisticsByFiles.extension.totalInfo;return null!==n&&void 0!==n&&n.length||null!==a&&void 0!==a&&a.length?(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsxs)(Pw,{value:a,children:[(0,mu.jsx)(sx,{title:"plugin.team_file_analytics.extension.title"}),(0,mu.jsx)(MR,{property:"extension",rows:a}),(0,mu.jsx)(sx,{title:"plugin.team_file_analytics.extension.view"}),(0,mu.jsxs)(tS,{content:a,mode:t,watch:"".concat(t).concat(PT.hash),children:[(0,mu.jsx)(RR,{mode:t,rowsForExcel:a}),(0,mu.jsx)(KC,{}),(0,mu.jsx)(Hw,{})]})]}),(0,mu.jsxs)(Pw,{value:n,children:[(0,mu.jsx)(sx,{title:"plugin.team_file_analytics.type.title"}),(0,mu.jsx)(MR,{property:"type",rows:n}),(0,mu.jsxs)(tS,{content:n,mode:t,watch:"".concat(t).concat(PT.hash),children:[(0,mu.jsx)(LR,{mode:t,rowsForExcel:n}),(0,mu.jsx)(KC,{}),(0,mu.jsx)(Hw,{})]})]})]}):(0,mu.jsx)(Hw,{})}));class WR{getMenuItems(){return[{id:"extension",group:30,order:140,link:"/team/extension",title:"plugin.team_file_analytics.sidebar",icon:"./assets/menu/team_files_ext.svg"}]}getPage(e,t){return"/team/extension"===e?(0,mu.jsx)(FR,{mode:null===t||void 0===t?void 0:t.mode}):void 0}getTranslations(){return NR}}WR.id="team_file_analytics";const qR={ar:"\n\xa7 plugin.team_files.sidebar.files: Files\n\xa7 plugin.team_files.sidebar.removedFiles: Deleted files\n\xa7 plugin.team_files.title: Project tree considering selected filters\n\xa7 plugin.team_files.filters.commits: Number of commits\n\xa7 plugin.team_files.filters.help: The minimum number of commits an employee has made in a file\n\xa7 plugin.team_files.table.lines: Lines\n\xa7 plugin.team_files.table.tasks: Tasks\n\xa7 plugin.team_files.table.days: Days\n\xa7 plugin.team_files.table.workedDays: Person days\n\xa7 plugin.team_files.table.money: Cost\n\xa7 plugin.team_files.table.add: Who added\n\xa7 plugin.team_files.table.change: Who changed\n\xa7 plugin.team_files.table.remove: Who deleted\n\xa7 plugin.team_files.table.chart.line: lines\n\xa7 plugin.team_files.table.chart.linesAdded: added\n\xa7 plugin.team_files.table.chart.linesChanged: changed\n\xa7 plugin.team_files.table.chart.linesRemoved: deleted\n",de:"\n\xa7 plugin.team_files.sidebar: Dateien\n\xa7 plugin.team_files.title: Project tree considering selected filters\n\xa7 plugin.team_files.filters.author: Employee\n\xa7 plugin.team_files.filters.commits: Number of commits\n\xa7 plugin.team_files.filters.help: The minimum number of commits an employee has made in a file\n\xa7 plugin.team_files.filters.all: All employees\n\xa7 plugin.team_files.totalLines: Lines\n\xa7 plugin.team_files.totalTasks: Tasks\n\xa7 plugin.team_files.totalDays: Days\n\xa7 plugin.team_files.tasks: tasks\n\xa7 plugin.team_files.days: days\n\xa7 plugin.team_files.add: Who added\n\xa7 plugin.team_files.change: Who changed\n\xa7 plugin.team_files.remove: Who removed\n\xa7 plugin.team_files.line: lines\n\xa7 plugin.team_files.linesAdded: added\n\xa7 plugin.team_files.linesChanged: changed\n\xa7 plugin.team_files.linesRemoved: removed\n",en:"\n\xa7 plugin.team_files.sidebar.files: Files\n\xa7 plugin.team_files.sidebar.removedFiles: Deleted files\n\xa7 plugin.team_files.title: Project tree considering selected filters\n\xa7 plugin.team_files.filters.commits: Number of commits\n\xa7 plugin.team_files.filters.help: The minimum number of commits an employee has made in a file\n\xa7 plugin.team_files.table.lines: Lines\n\xa7 plugin.team_files.table.tasks: Tasks\n\xa7 plugin.team_files.table.days: Days\n\xa7 plugin.team_files.table.workedDays: Person days\n\xa7 plugin.team_files.table.money: Cost\n\xa7 plugin.team_files.table.add: Who added\n\xa7 plugin.team_files.table.change: Who changed\n\xa7 plugin.team_files.table.remove: Who deleted\n\xa7 plugin.team_files.table.chart.line: lines\n\xa7 plugin.team_files.table.chart.linesAdded: added\n\xa7 plugin.team_files.table.chart.linesChanged: changed\n\xa7 plugin.team_files.table.chart.linesRemoved: deleted\n",es:"\n\xa7 plugin.team_files.sidebar: Archivos\n\xa7 plugin.team_files.title: \xc1rbol de proyecto con filtros seleccionados\n\xa7 plugin.team_files.filters.author: Empleado\n\xa7 plugin.team_files.filters.commits: N\xfamero de commits\n\xa7 plugin.team_files.filters.help: El n\xfamero m\xednimo de commits que hizo un empleado en el archivo\n\xa7 plugin.team_files.filters.all: Todos los empleados\n\xa7 plugin.team_files.totalLines: Lines\n\xa7 plugin.team_files.totalTasks: Tasks\n\xa7 plugin.team_files.totalDays: Days\n\xa7 plugin.team_files.tasks: tasks\n\xa7 plugin.team_files.days: days\n\xa7 plugin.team_files.add: Quien ha a\xf1adido\n\xa7 plugin.team_files.change: Quien cambi\xf3\n\xa7 plugin.team_files.remove: Qui\xe9n borr\xf3\n\xa7 plugin.team_files.line: filas\n\xa7 plugin.team_files.linesAdded: agregaron\n\xa7 plugin.team_files.linesChanged: changed\n\xa7 plugin.team_files.linesRemoved: cambiaron\n",fr:"\n\xa7 plugin.team_files.sidebar: undefined\n\xa7 plugin.team_files.title: Arborescence du projet avec les filtres s\xe9lectionn\xe9s\n\xa7 plugin.team_files.filters.author: Employ\xe9\n\xa7 plugin.team_files.filters.commits: Nombre de commits\n\xa7 plugin.team_files.filters.help: Minimum commits que l'employ\xe9 a fait dans le fichier\n\xa7 plugin.team_files.filters.all: Tous les employ\xe9s\n\xa7 plugin.team_files.totalLines: Lines\n\xa7 plugin.team_files.totalTasks: Tasks\n\xa7 plugin.team_files.totalDays: Days\n\xa7 plugin.team_files.tasks: tasks\n\xa7 plugin.team_files.days: days\n\xa7 plugin.team_files.add: Qui a Ajout\xe9\n\xa7 plugin.team_files.change: Qui a chang\xe9\n\xa7 plugin.team_files.remove: Qui a supprim\xe9\n\xa7 plugin.team_files.line: lignes\n\xa7 plugin.team_files.linesAdded: ajout\xe2tes\n\xa7 plugin.team_files.linesChanged: changed\n\xa7 plugin.team_files.linesRemoved: modifi\xe2tes\n",he:"\n\xa7 plugin.team_files.sidebar.files: Files\n\xa7 plugin.team_files.sidebar.removedFiles: Deleted files\n\xa7 plugin.team_files.title: Project tree considering selected filters\n\xa7 plugin.team_files.filters.commits: Number of commits\n\xa7 plugin.team_files.filters.help: The minimum number of commits an employee has made in a file\n\xa7 plugin.team_files.table.lines: Lines\n\xa7 plugin.team_files.table.tasks: Tasks\n\xa7 plugin.team_files.table.days: Days\n\xa7 plugin.team_files.table.workedDays: Person days\n\xa7 plugin.team_files.table.money: Cost\n\xa7 plugin.team_files.table.add: Who added\n\xa7 plugin.team_files.table.change: Who changed\n\xa7 plugin.team_files.table.remove: Who deleted\n\xa7 plugin.team_files.table.chart.line: lines\n\xa7 plugin.team_files.table.chart.linesAdded: added\n\xa7 plugin.team_files.table.chart.linesChanged: changed\n\xa7 plugin.team_files.table.chart.linesRemoved: deleted\n",hi:"\n\xa7 plugin.team_files.sidebar.files: Files\n\xa7 plugin.team_files.sidebar.removedFiles: Deleted files\n\xa7 plugin.team_files.title: Project tree considering selected filters\n\xa7 plugin.team_files.filters.commits: Number of commits\n\xa7 plugin.team_files.filters.help: The minimum number of commits an employee has made in a file\n\xa7 plugin.team_files.table.lines: Lines\n\xa7 plugin.team_files.table.tasks: Tasks\n\xa7 plugin.team_files.table.days: Days\n\xa7 plugin.team_files.table.workedDays: Person days\n\xa7 plugin.team_files.table.money: Cost\n\xa7 plugin.team_files.table.add: Who added\n\xa7 plugin.team_files.table.change: Who changed\n\xa7 plugin.team_files.table.remove: Who deleted\n\xa7 plugin.team_files.table.chart.line: lines\n\xa7 plugin.team_files.table.chart.linesAdded: added\n\xa7 plugin.team_files.table.chart.linesChanged: changed\n\xa7 plugin.team_files.table.chart.linesRemoved: deleted\n",ja:"\n\xa7 plugin.team_files.sidebar.files: \u30d5\u30a1\u30a4\u30eb\n\xa7 plugin.team_files.sidebar.removedFiles: \u524a\u9664\u3055\u308c\u305f\u30d5\u30a1\u30a4\u30eb\n\xa7 plugin.team_files.title: \u9078\u629e\u3057\u305f\u30d5\u30a3\u30eb\u30bf\u30fc\u3092\u53cd\u6620\u3057\u305f\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c4\u30ea\u30fc\n\xa7 plugin.team_files.filters.commits: \u30b3\u30df\u30c3\u30c8\u6570\n\xa7 plugin.team_files.filters.help: \u5f93\u696d\u54e1\u304c\u30d5\u30a1\u30a4\u30eb\u306b\u5bfe\u3057\u3066\u884c\u3063\u305f\u6700\u5c0f\u30b3\u30df\u30c3\u30c8\u6570\n\xa7 plugin.team_files.table.lines: \u884c\u6570\n\xa7 plugin.team_files.table.tasks: \u30bf\u30b9\u30af\n\xa7 plugin.team_files.table.days: \u65e5\u6570\n\xa7 plugin.team_files.table.workedDays: \u4eba\u65e5\n\xa7 plugin.team_files.table.money: \u30b3\u30b9\u30c8\n\xa7 plugin.team_files.table.add: \u8ffd\u52a0\u62c5\u5f53\u8005\n\xa7 plugin.team_files.table.change: \u5909\u66f4\u62c5\u5f53\u8005\n\xa7 plugin.team_files.table.remove: \u524a\u9664\u62c5\u5f53\u8005\n\xa7 plugin.team_files.table.chart.line: \u884c\n\xa7 plugin.team_files.table.chart.linesAdded: \u8ffd\u52a0\n\xa7 plugin.team_files.table.chart.linesChanged: \u5909\u66f4\n\xa7 plugin.team_files.table.chart.linesRemoved: \u524a\u9664\n",ko:"\n\xa7 plugin.team_files.sidebar.files: \ud30c\uc77c\n\xa7 plugin.team_files.sidebar.removedFiles: \uc0ad\uc81c\ub41c \ud30c\uc77c\n\xa7 plugin.team_files.title: \uc120\ud0dd\ud55c \ud544\ud130\ub97c \ubc18\uc601\ud55c \ud504\ub85c\uc81d\ud2b8 \ud2b8\ub9ac\n\xa7 plugin.team_files.filters.commits: \ucee4\ubc0b \uc218\n\xa7 plugin.team_files.filters.help: \uc9c1\uc6d0\uc774 \ud30c\uc77c\uc5d0 \uc218\ud589\ud55c \ucd5c\uc18c \ucee4\ubc0b \uc218\n\xa7 plugin.team_files.table.lines: \ub77c\uc778 \uc218\n\xa7 plugin.team_files.table.tasks: \uc791\uc5c5\n\xa7 plugin.team_files.table.days: \uc77c\uc218\n\xa7 plugin.team_files.table.workedDays: \uc778-\uc77c\n\xa7 plugin.team_files.table.money: \ube44\uc6a9\n\xa7 plugin.team_files.table.add: \ucd5c\ucd08 \ucd94\uac00\uc790\n\xa7 plugin.team_files.table.change: \ubcc0\uacbd \ub2f4\ub2f9\uc790\n\xa7 plugin.team_files.table.remove: \uc0ad\uc81c \ub2f4\ub2f9\uc790\n\xa7 plugin.team_files.table.chart.line: \ub77c\uc778\n\xa7 plugin.team_files.table.chart.linesAdded: \ucd94\uac00\ub428\n\xa7 plugin.team_files.table.chart.linesChanged: \ubcc0\uacbd\ub428\n\xa7 plugin.team_files.table.chart.linesRemoved: \uc0ad\uc81c\ub428\n",pt:"\n\xa7 plugin.team_files.sidebar: An\xe1lise de arquivos\n\xa7 plugin.team_files.title: Project tree considering selected filters\n\xa7 plugin.team_files.filters.author: Employee\n\xa7 plugin.team_files.filters.commits: Number of commits\n\xa7 plugin.team_files.filters.help: The minimum number of commits an employee has made in a file\n\xa7 plugin.team_files.filters.all: All employees\n\xa7 plugin.team_files.totalLines: Lines\n\xa7 plugin.team_files.totalTasks: Tasks\n\xa7 plugin.team_files.totalDays: Days\n\xa7 plugin.team_files.tasks: tasks\n\xa7 plugin.team_files.days: days\n\xa7 plugin.team_files.add: Who added\n\xa7 plugin.team_files.change: Who changed\n\xa7 plugin.team_files.remove: Who removed\n\xa7 plugin.team_files.line: lines\n\xa7 plugin.team_files.linesAdded: added\n\xa7 plugin.team_files.linesChanged: changed\n\xa7 plugin.team_files.linesRemoved: removed\n",ru:"\n\xa7 plugin.team_files.sidebar.files: \u0424\u0430\u0439\u043b\u044b\n\xa7 plugin.team_files.sidebar.removedFiles: \u0423\u0434\u0430\u043b\u0451\u043d\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b\n\xa7 plugin.team_files.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 plugin.team_files.filters.commits: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.team_files.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 plugin.team_files.table.lines: \u0421\u0442\u0440\u043e\u043a\n\xa7 plugin.team_files.table.tasks: \u0417\u0430\u0434\u0430\u0447\n\xa7 plugin.team_files.table.days: \u0414\u043d\u0435\u0439\n\xa7 plugin.team_files.table.workedDays: \u0427\u0435\u043b. \u0434\u043d\u0435\u0439\n\xa7 plugin.team_files.table.money: \u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c\n\xa7 plugin.team_files.table.add: \u041a\u0442\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u043b\n\xa7 plugin.team_files.table.change: \u041a\u0442\u043e \u043c\u0435\u043d\u044f\u043b\n\xa7 plugin.team_files.table.remove: \u041a\u0442\u043e \u0443\u0434\u0430\u043b\u044f\u043b\n\xa7 plugin.team_files.table.chart.line: \u0441\u0442\u0440\u043e\u043a\n\xa7 plugin.team_files.table.chart.linesAdded: \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438\n\xa7 plugin.team_files.table.chart.linesChanged: \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u0438\n\xa7 plugin.team_files.table.chart.linesRemoved: \u0443\u0434\u0430\u043b\u0438\u043b\u0438\n",zh:"\n\xa7 plugin.team_files.sidebar.files: \u6587\u4ef6\n\xa7 plugin.team_files.sidebar.removedFiles: \u5df2\u5220\u9664\u7684\u6587\u4ef6\n\xa7 plugin.team_files.title: \u8003\u8651\u6240\u9009\u8fc7\u6ee4\u6761\u4ef6\u7684\u9879\u76ee\u6811\n\xa7 plugin.team_files.filters.commits: \u63d0\u4ea4\u6b21\u6570\n\xa7 plugin.team_files.filters.help: \u5458\u5de5\u5728\u6587\u4ef6\u4e2d\u81f3\u5c11\u6267\u884c\u7684\u6700\u5c11\u63d0\u4ea4\u6b21\u6570\n\xa7 plugin.team_files.table.lines: \u884c\u6570\n\xa7 plugin.team_files.table.tasks: \u4efb\u52a1\n\xa7 plugin.team_files.table.days: \u5929\u6570\n\xa7 plugin.team_files.table.workedDays: \u4eba\u5929\n\xa7 plugin.team_files.table.money: \u6210\u672c\n\xa7 plugin.team_files.table.add: \u9996\u6b21\u6dfb\u52a0\u4eba\n\xa7 plugin.team_files.table.change: \u4fee\u6539\u8d1f\u8d23\u4eba\n\xa7 plugin.team_files.table.remove: \u5220\u9664\u8d1f\u8d23\u4eba\n\xa7 plugin.team_files.table.chart.line: \u884c\n\xa7 plugin.team_files.table.chart.linesAdded: \u65b0\u589e\n\xa7 plugin.team_files.table.chart.linesChanged: \u4fee\u6539\n\xa7 plugin.team_files.table.chart.linesRemoved: \u5220\u9664\n"},zR=yi((e=>{let{filters:t,onChange:n}=e;return(0,mu.jsx)("div",{className:nT,children:(0,mu.jsx)(vA,{placeholder:"plugin.team_files.filters.commits",help:"plugin.team_files.filters.help",value:null===t||void 0===t?void 0:t.minCommits,onChange:e=>{return a="minCommits",s=e,void(n&&n({...t||{},[a]:s,hash:Math.random()}));var a,s}})})})),BR="file_breadcrumbs",UR="file_breadcrumbs_text",HR="file_breadcrumbs_link";function GR(e){let{dirName:t,onClick:n}=e;return(0,mu.jsx)("span",{className:"".concat(UR," ").concat(HR),onClick:n,children:t||".."})}const VR=function(e){let{path:t,setPath:n}=e;const a=t.map(((e,a)=>(0,mu.jsxs)("span",{children:[(0,mu.jsx)("span",{className:UR,children:"/"}),(0,mu.jsx)(GR,{dirName:e,onClick:()=>{n(t.slice(0,a+1))}})]},e)));return(0,mu.jsxs)("h3",{className:BR,children:[(0,mu.jsx)("span",{className:UR,children:"\u0410\u0434\u0440\u0435\u0441:"}),(0,mu.jsx)(GR,{onClick:()=>{n([])}}),a]})},KR="plugin_team_files_table_select",$R="plugin_team_files_table_not_select";function YR(e){let{children:t,isSelected:n}=e;const a=n?KR:$R;return(0,mu.jsx)("div",{className:a,children:t})}function XR(e){let{name:t,isSelected:n}=e;return(0,mu.jsx)(YR,{isSelected:n,children:"\ud83d\udcc1 ".concat(t||"")})}function QR(e){let{name:t,isSelected:n}=e;return(0,mu.jsx)(YR,{isSelected:n,children:"\ud83d\udcc4 ".concat(t||"")})}function JR(e){let{response:t,updateSort:n,rowsForExcel:a}=e;return t?(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:"details",children:[(0,mu.jsx)(zp,{isFixed:!0,isSortable:!0,template:_p.TASK,properties:"task",title:"plugin.team_refactor.tasks.task"}),(0,mu.jsx)(zp,{properties:"prIds",template:_p.PULL_REQUESTS}),(0,mu.jsx)(zp,{properties:"types",template:_p.TAGS}),(0,mu.jsx)(zp,{properties:"scope",template:_p.TAGS}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_refactor.tasks.description",properties:"description"})]}):null}JR.defaultProps={response:void 0};const ZR=JR;function eO(e,t,n){return!e||!!t&&t>=n}function tO(e,t){const n=(null===t||void 0===t?void 0:t.minCommits)||0;let a=e.commits>=n;if(a){var s;const i=null===(s=e.authors)||void 0===s?void 0:s[null===t||void 0===t?void 0:t.author];a=eO(null===t||void 0===t?void 0:t.author,i,n)}if(a){var i;const s=null===(i=e.companies)||void 0===i?void 0:i[null===t||void 0===t?void 0:t.company];a=eO(null===t||void 0===t?void 0:t.company,s,n)}if(a){var o;const s=null===(o=e.taskCode)||void 0===o?void 0:o[null===t||void 0===t?void 0:t.taskCode];a=eO(null===t||void 0===t?void 0:t.taskCode,s,n)}if(a){var r;const s=null===(r=e.types)||void 0===r?void 0:r[null===t||void 0===t?void 0:t.type];a=eO(null===t||void 0===t?void 0:t.type,s,n)}if(a){var l;const s=null===(l=e.scope)||void 0===l?void 0:l[null===t||void 0===t?void 0:t.scope];a=eO(null===t||void 0===t?void 0:t.scope,s,n)}return a}function nO(e){let{response:t,filters:n,setPath:a}=e;if(!t)return null;const[s,i,o]=["plugin.team_files.table.chart.linesAdded","plugin.team_files.table.chart.linesChanged","plugin.team_files.table.chart.linesRemoved"],r=t.content.map((e=>({...e,isSelected:tO(e,n)})));return(0,mu.jsxs)(Wp,{rows:r,children:[(0,mu.jsx)(zp,{isFixed:!0,template:_p.DETAILS,width:40,formatter:e=>{const t=function(e,t){const n=PT.statisticsByCommits.tasks.totalInfoByName;return[...e||[]].reverse().map((e=>n.get(e))).filter((e=>!!e&&(!t||!(t.author&&!e.authors.has(t.author))&&(!t.taskCode||e.taskCode===t.taskCode)&&!(t.scope&&!e.scope.includes(t.scope))&&!(t.type&&!e.types.includes(t.type)))))}(null===e||void 0===e?void 0:e.tasks,n);return(0,mu.jsxs)(tS,{content:t,children:[(0,mu.jsx)(ZR,{}),(0,mu.jsx)(KC,{})]})}}),(0,mu.jsx)(zp,{isFixed:!0,minWidth:170,template:e=>null!==e&&void 0!==e&&e.content?(0,mu.jsx)(XR,{name:null===e||void 0===e?void 0:e.name,isSelected:null===e||void 0===e?void 0:e.isSelected}):(0,mu.jsx)(QR,{name:null===e||void 0===e?void 0:e.name,isSelected:null===e||void 0===e?void 0:e.isSelected}),onClick:e=>{e.content&&a([...e.path,e.name])}}),(0,mu.jsx)(zp,{isSortable:!0,width:100,title:"plugin.team_files.table.lines",template:e=>(0,mu.jsx)(YR,{isSelected:e.isSelected,children:null===e||void 0===e?void 0:e.lines})}),(0,mu.jsx)(zp,{isSortable:!0,width:100,title:"plugin.team_files.table.tasks",template:e=>(0,mu.jsx)(YR,{isSelected:e.isSelected,children:null===e||void 0===e?void 0:e.totalTasks})}),(0,mu.jsx)(zp,{isSortable:!0,width:100,title:"plugin.team_files.table.days",template:e=>(0,mu.jsx)(YR,{isSelected:e.isSelected,children:null===e||void 0===e?void 0:e.totalDays})}),(0,mu.jsx)(zp,{width:100,title:"plugin.team_files.table.workedDays",template:e=>(0,mu.jsx)(YR,{isSelected:e.isSelected,children:null!==e&&void 0!==e&&e.content?null===e||void 0===e?void 0:e.totalDaysByAuthor:null===e||void 0===e?void 0:e.totalDays})}),(0,mu.jsx)(zp,{width:150,title:"plugin.team_files.table.money",properties:"money",template:_p.SHORT_NUMBER,formatter:e=>ro(e)}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_files.table.workedDays",minWidth:200,template:e=>null!==e&&void 0!==e&&e.content?(0,mu.jsx)(LE,{details:null===e||void 0===e?void 0:e.daysByAuthor,order:PT.statisticsByCommits.author.list,suffix:"common.statistic.days"}):null}),(0,mu.jsx)(zp,{minWidth:200,template:e=>(0,mu.jsx)(LE,{details:{[s]:(null===e||void 0===e?void 0:e.addedLines)||0,[o]:(null===e||void 0===e?void 0:e.removedLines)||0,[i]:(null===e||void 0===e?void 0:e.changedLines)||0},order:[s,i,o],suffix:"plugin.team_files.table.chart.line"})}),(0,mu.jsx)(zp,{title:"plugin.team_files.table.add",minWidth:200,template:e=>(0,mu.jsx)(LE,{details:null===e||void 0===e?void 0:e.addedLinesByAuthor,order:PT.statisticsByCommits.author.list,suffix:"plugin.team_files.table.chart.line"})}),(0,mu.jsx)(zp,{title:"plugin.team_files.table.change",minWidth:200,template:e=>(0,mu.jsx)(LE,{details:null===e||void 0===e?void 0:e.changedLinesByAuthor,order:PT.statisticsByCommits.author.list,suffix:"plugin.team_files.table.chart.line"})}),(0,mu.jsx)(zp,{title:"plugin.team_files.table.remove",minWidth:200,template:e=>(0,mu.jsx)(LE,{details:null===e||void 0===e?void 0:e.removedLinesByAuthor,order:PT.statisticsByCommits.author.list,suffix:"plugin.team_files.table.chart.line"})})]})}nO.defaultProps={response:void 0};const aO=nO;function sO(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 iO=yi((e=>{let{type:n,mode:a}=e;const[s,i]=(0,t.useState)([]),[o,r]=(0,t.useState)({}),l="removed"===n?PT.statisticsByFiles.removedTree.tree:PT.statisticsByFiles.tree.tree;(0,t.useEffect)((()=>{i([])}),[n]);const m=sO(l,s);return null!==m&&void 0!==m&&m.length?(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsxs)(Pw,{value:"print"!==a,children:[(0,mu.jsx)(sx,{title:"common.filters"}),(0,mu.jsx)(cT,{elements:["company","taskCode","author","type","scope"],onChange:(e,t,n)=>{r(n)},children:(0,mu.jsx)(zR,{})})]}),(0,mu.jsx)(VR,{path:s,setPath:i}),(0,mu.jsx)(vT,{children:(0,mu.jsxs)(qC,{loader:e=>ZC({content:m,pagination:{...e,size:2e3}}),watch:"".concat(s).concat(o.hash).concat(n),children:[(0,mu.jsx)(aO,{filters:o,setPath:i}),(0,mu.jsx)(KC,{})]})})]}):(0,mu.jsx)(Hw,{})})),oO=iO;class rO{getMenuItems(){return[{id:"files",group:30,order:130,link:"/team/files",title:"plugin.team_files.sidebar.files",icon:"./assets/menu/team_files.svg"},{id:"removedFiles",group:30,order:131,link:"/team/removedFiles",title:"plugin.team_files.sidebar.removedFiles",icon:"./assets/menu/team_files_remove.svg"}]}getPage(e){return"/team/files"===e?(0,mu.jsx)(oO,{}):"/team/removedFiles"===e?(0,mu.jsx)(oO,{type:"removed"}):void 0}getTranslations(){return qR}}rO.id="team_files";const lO={ar:"\n\xa7 plugin.team_hours.sidebar: By hours\n\xa7 plugin.team_hours.title: Distribution of commits throughout each day of the week\n",de:"\n\xa7 plugin.team_hours.sidebar: By hours\n\xa7 plugin.team_hours.title: Distribution of commits throughout each day of the week\n",en:"\n\xa7 plugin.team_hours.sidebar: By hours\n\xa7 plugin.team_hours.title: Distribution of commits throughout each day of the week\n",es:"\n\xa7 plugin.team_hours.sidebar: By hours\n\xa7 plugin.team_hours.title: Distribution of commits throughout each day of the week\n",fr:"\n\xa7 plugin.team_hours.sidebar: By hours\n\xa7 plugin.team_hours.title: Distribution of commits throughout each day of the week\n",he:"\n\xa7 plugin.team_hours.sidebar: By hours\n\xa7 plugin.team_hours.title: Distribution of commits throughout each day of the week\n",hi:"\n\xa7 plugin.team_hours.sidebar: By hours\n\xa7 plugin.team_hours.title: Distribution of commits throughout each day of the week\n",ja:"\n\xa7 plugin.team_hours.sidebar: By hours\n\xa7 plugin.team_hours.title: Distribution of commits throughout each day of the week\n",ko:"\n\xa7 plugin.team_hours.sidebar: By hours\n\xa7 plugin.team_hours.title: Distribution of commits throughout each day of the week\n",pt:"\n\xa7 plugin.team_hours.sidebar: By hours\n\xa7 plugin.team_hours.title: Distribution of commits throughout each day of the week\n",ru:"\n\xa7 plugin.team_hours.sidebar: \u041f\u043e \u0447\u0430\u0441\u0430\u043c\n\xa7 plugin.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",zh:"\n\xa7 plugin.team_hours.sidebar: By hours\n\xa7 plugin.team_hours.title: Distribution of commits throughout each day of the week\n"},mO=yi((e=>{var t;let{mode:n,user:a}=e;const s=a?PT.statisticsByCommits.author.totalInfoByName.get(a.author):PT.statisticsByCommits.team.totalInfo;let i=0;s.commitsByDayAndHour.forEach((e=>{i=Math.max(...e,i)}));const o=null===(t=PT.statisticsByCommits.recommendations.team)||void 0===t?void 0:t.byHour;return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(Pw,{value:o&&!a,children:(0,mu.jsx)(OA,{mode:n,recommendations:o})}),(0,mu.jsx)(sx,{title:"plugin.team_hours.title"}),(0,mu.jsx)(vT,{children:(0,mu.jsx)(mE,{max:i,commitsByDayAndHour:s.commitsByDayAndHour})})]})})),cO=mO;class uO{getMenuItems(){return[{id:"hours",group:20,order:120,link:"/team/hours",title:"sidebar.team.hours",icon:"./assets/menu/team_hours.svg"},{id:"hours",group:20,order:70,link:"/person/hours/",title:"sidebar.person.hours",icon:"./assets/menu/team_hours.svg"}]}getPage(e,t){return"/person/hours"===e?(0,mu.jsx)(cO,{mode:null===t||void 0===t?void 0:t.mode,user:null===t||void 0===t?void 0:t.user,filters:null===t||void 0===t?void 0:t.filters}):"/team/hours"===e?(0,mu.jsx)(cO,{mode:null===t||void 0===t?void 0:t.mode}):void 0}getTranslations(){return lO}}uO.id="team_hours";const pO={ar:"\n\xa7 plugin.team_month.sidebar: By months\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last day\n\xa7 plugin.team_month.filters.authors: All staff members\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed location)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first working day)\n\xa7 plugin.team_month.work.last: (last working day)\n",de:"\n\xa7 plugin.team_month.sidebar: By months\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last day\n\xa7 plugin.team_month.filters.authors: All staff members\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed location)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first working day)\n\xa7 plugin.team_month.work.last: (last working day)\n",en:"\n\xa7 plugin.team_month.sidebar: By months\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last day\n\xa7 plugin.team_month.filters.authors: All staff members\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed location)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first working day)\n\xa7 plugin.team_month.work.last: (last working day)\n",es:"\n\xa7 plugin.team_month.sidebar: By months\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last day\n\xa7 plugin.team_month.filters.authors: All staff members\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed location)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first working day)\n\xa7 plugin.team_month.work.last: (last working day)\n",fr:"\n\xa7 plugin.team_month.sidebar: By months\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last day\n\xa7 plugin.team_month.filters.authors: All staff members\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed location)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first working day)\n\xa7 plugin.team_month.work.last: (last working day)\n",he:"\n\xa7 plugin.team_month.sidebar: By months\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last day\n\xa7 plugin.team_month.filters.authors: All staff members\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed location)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first working day)\n\xa7 plugin.team_month.work.last: (last working day)\n",hi:"\n\xa7 plugin.team_month.sidebar: By months\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last day\n\xa7 plugin.team_month.filters.authors: All staff members\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed location)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first working day)\n\xa7 plugin.team_month.work.last: (last working day)\n",ja:"\n\xa7 plugin.team_month.sidebar: By months\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last day\n\xa7 plugin.team_month.filters.authors: All staff members\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed location)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first working day)\n\xa7 plugin.team_month.work.last: (last working day)\n",ko:"\n\xa7 plugin.team_month.sidebar: By months\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last day\n\xa7 plugin.team_month.filters.authors: All staff members\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed location)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first working day)\n\xa7 plugin.team_month.work.last: (last working day)\n",pt:"\n\xa7 plugin.team_month.sidebar: By months\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last day\n\xa7 plugin.team_month.filters.authors: All staff members\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed location)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first working day)\n\xa7 plugin.team_month.work.last: (last working day)\n",ru:"\n\xa7 plugin.team_month.sidebar: \u041f\u043e \u043c\u0435\u0441\u044f\u0446\u0430\u043c\n\xa7 plugin.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 plugin.team_month.filters.release: \u0420\u0435\u043b\u0438\u0437\u044b\n\xa7 plugin.team_month.filters.absence: \u041e\u0442\u043f\u0443\u0441\u043a\u0430 \u0438 \u043f\u0435\u0440\u0435\u0435\u0437\u0434\u044b\n\xa7 plugin.team_month.filters.firstLastDays: \u041f\u0435\u0440\u0432\u044b\u0439 \u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0434\u0435\u043d\u044c\n\xa7 plugin.team_month.filters.authors: \u0412\u0441\u0435 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438\n\xa7 plugin.team_month.filters.types: \u0412\u0441\u0435 \u0442\u0438\u043f\u044b\n\xa7 plugin.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 plugin.team_month.travel: (\u0438\u0437\u043c\u0435\u043d\u0438\u043b \u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435)\n\xa7 plugin.team_month.vacation.first: (\u0443\u0445\u043e\u0434\u0438\u0442 \u0432 \u043e\u0442\u043f\u0443\u0441\u043a)\n\xa7 plugin.team_month.vacation.last: (\u0432\u0435\u0440\u043d\u0443\u043b\u0441\u044f \u0438\u0437 \u043e\u0442\u043f\u0443\u0441\u043a\u0430)\n\xa7 plugin.team_month.work.first: (\u043f\u0435\u0440\u0432\u044b\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0434\u0435\u043d\u044c)\n\xa7 plugin.team_month.work.last: (\u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0434\u0435\u043d\u044c)\n",zh:"\n\xa7 plugin.team_month.sidebar: By months\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.filters.release: Releases\n\xa7 plugin.team_month.filters.absence: Vacations and relocations\n\xa7 plugin.team_month.filters.firstLastDays: First and last day\n\xa7 plugin.team_month.filters.authors: All staff members\n\xa7 plugin.team_month.filters.types: All types\n\xa7 plugin.team_month.title: Project work calendar\n\xa7 plugin.team_month.travel: (changed location)\n\xa7 plugin.team_month.vacation.first: (goes on vacation)\n\xa7 plugin.team_month.vacation.last: (returned from vacation)\n\xa7 plugin.team_month.work.first: (first working day)\n\xa7 plugin.team_month.work.last: (last working day)\n"};const dO=new class{constructor(){this.info=void 0,this.position=[0,0],Ja(this,{info:fn,open:_a,close:_a})}toggle(e,t){var n;(null===(n=this.info)||void 0===n?void 0:n.timestamp)===(null===e||void 0===e?void 0:e.timestamp)?this.close():(this.open(e),this.position=t)}open(e){this.info=e}close(){this.info=void 0}},hO="year_chart_day_info",gO="year_chart_day_info_body",fO="year_chart_day_info_title";const yO=yi((e=>{var t,n;let{events:a}=e;if(!dO.info)return null;const s=(null===(t=dO.position)||void 0===t?void 0:t[1])+24,i=(null===(n=dO.position)||void 0===n?void 0:n[0])-150,o=a.get(dO.info.timestamp),r=function(e){if(null===e||void 0===e||!e.release)return"";const t=Array.from((null===e||void 0===e?void 0:e.release)||[]).sort().join(", ");return" Release: ".concat(t)}(o);return Qs.createPortal((0,mu.jsx)("div",{className:hO,style:{top:s,left:i},children:(0,mu.jsxs)("div",{className:"".concat(gO," scroll_y"),children:[(0,mu.jsx)(sx,{title:Zi(dO.info.timestamp),className:fO}),r?(0,mu.jsx)(bw,{text:r,className:fO}):null,(0,mu.jsx)(uw,{timestamp:dO.info.timestamp,events:o})]})}),document.body)})),vO="year_chart",_O="year_chart_month",kO="year_chart_month_icon",bO="year_chart_month_header",wO="year_chart_month_header_title",xO="year_chart_month_body",TO="year_chart_month_body_day",CO="year_chart_month_body_day_icon";const SO=function(e){let{showYear:t,month:n}=e;const a=Ji(n.milliseconds,t?{month:"long",year:"numeric"}:{month:"long"});return(0,mu.jsx)("div",{className:bO,children:(0,mu.jsx)("span",{className:wO,style:{fontWeight:t?"bold":100},children:a})})};const jO=["#4162B5","#617DC1","#718AC6","#8198CD","#91A6D2","#A2B3D8","#B2C1DE","#C2CEE4"],DO=["#ED675F","#EB817C","#E98E8A","#E89B99","#E7A8A7","#E7B5B6","#E6C3C4","#E4CFD3"],AO=["#0E5C0C","#2B9829","#4FBF4C","#6DD26A","#88E185","#ACE4AA","#C2ECC1","#E1F7E1"];function EO(e){return Array.from(e).join(", ")}function IO(e){let{max:t,dayNumber:n,events:a,filters:s,dayInfo:i}=e;const o=function(e,t){const n=100*(e||0)/t;return(n-n%1)/100}(i.commitsNumber,t),r=function(e,t,n){var a,s,i,o;const r=null===t||void 0===t||null===(a=t.authors)||void 0===a||null===(s=a[0])||void 0===s?void 0:s.title;if(r&&n.userCommitNumbers.has(r))return AO;const l=null===t||void 0===t||null===(i=t.types)||void 0===i||null===(o=i[0])||void 0===o?void 0:o.title;return l&&n.typeCommitNumbers.has(l)?AO:[5,6,12,13,19,20,26,27,33,34,40,41].includes(e)?DO:jO}(n,s,i),l=function(e,t){return t>=.8?e[1]:t>=.6?e[3]:t>=.4?e[5]:e[7]}(r,o),m=Zi(i.timestamp),[c,u]=function(e,t){let n="",a="";e.absence&&(null!==t&&void 0!==t&&t.vacationStart&&(n="vacation_start",a=EO(null===t||void 0===t?void 0:t.vacationStart)),null!==t&&void 0!==t&&t.vacationEnd&&(n="vacation_end",a=EO(null===t||void 0===t?void 0:t.vacationEnd)),null!==t&&void 0!==t&&t.travel&&(n="travel",a=EO(null===t||void 0===t?void 0:t.travel))),e.release&&null!==t&&void 0!==t&&t.release&&(n="release",a=EO(null===t||void 0===t?void 0:t.release)),e.firstLastDays&&(null===t||void 0===t||!t.firstDay||null!==t&&void 0!==t&&t.lastDay||(n="person_add",a=EO(null===t||void 0===t?void 0:t.firstDay)),null!==t&&void 0!==t&&t.firstDay||null===t||void 0===t||!t.lastDay||(n="person_remove",a=EO(null===t||void 0===t?void 0:t.lastDay)),null!==t&&void 0!==t&&t.firstDay&&null!==t&&void 0!==t&&t.lastDay&&(n="person_add_remove",a=EO(null===t||void 0===t?void 0:t.firstDay)));const s=n?(0,mu.jsx)("img",{className:CO,src:"./assets/chart/".concat(n,".svg")}):null;return a=a?" | ".concat(a):a,[a,s]}(s,a);return(0,mu.jsx)("div",{title:"".concat(m).concat(c),id:"year_chart_day_".concat(null===i||void 0===i?void 0:i.timestamp),className:TO,style:{backgroundColor:l},onClick:e=>{dO.toggle(i,[e.pageX,e.pageY])},children:u||" "})}IO.defaultProps={rows:[]};const NO=IO,PO=[31,28,31,30,31,30,31,31,30,31,30,31];function RO(e){let{max:t,month:n,events:a,filters:s}=e;const i=n.date.getDay()-1,o=i+PO[n.month],r=new Array(42).fill(0);let l=0;const m=r.map(((e,r)=>{const m=r-i+1,c=n.days[l],u=a.get(null===c||void 0===c?void 0:c.timestamp);return(null===c||void 0===c?void 0:c.dayInMonth)===m?(l+=1,(0,mu.jsx)(NO,{max:t,dayNumber:r,dayInfo:c,events:u,filters:s},r)):(0,mu.jsx)("div",{className:TO,style:{opacity:r<i||r>o?.3:1}},r)}));return(0,mu.jsx)("div",{className:xO,children:m})}RO.defaultProps={rows:[]};const OO=RO,LO="year_chart_month_info";const MO=function(e){let{max:t,showYear:n,events:a,filters:s,month:i}=e;return(0,mu.jsxs)("div",{className:_O,children:[(0,mu.jsx)(SO,{month:i,showYear:n}),(0,mu.jsx)(OO,{max:t,month:i,events:a,filters:s}),(0,mu.jsxs)("div",{className:LO,children:[(0,mu.jsx)("img",{className:kO,src:"./assets/chart/tasks.svg"}),(0,mu.jsx)("span",{children:i.tasksNumber||0}),(0,mu.jsx)("img",{className:kO,src:"./assets/chart/person.svg"}),(0,mu.jsx)("span",{children:i.usersNumber||0})]})]})};const FO=function(e){let{max:n=100,events:a,months:s=[],filters:i={}}=e;const o=(0,t.useRef)(null),[r,l]=(0,t.useState)(16);if((0,t.useEffect)((()=>{var e;if(!o.current)return;const t=(null===(e=o.current)||void 0===e?void 0:e.getBoundingClientRect())||{},n=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;const t=135,n=Math.floor(e/t),a=.3,s=7;for(let i=16;i<=24;i+=a)if((s+8*i)*n>e)return i-a;return 24}(null===t||void 0===t?void 0:t.width);return l(n),()=>dO.close()}),[]),null===s||void 0===s||!s.length)return null;const m=s.map(((e,t)=>{const o=s[t-1];return(0,mu.jsx)(MO,{max:n,events:a,filters:i,showYear:(null===o||void 0===o?void 0:o.year)!==(null===e||void 0===e?void 0:e.year),month:e},e.id)})),c=r.toFixed(1),u={"--day-size":"".concat(c,"px")};return(0,mu.jsxs)("div",{ref:o,style:u,className:vO,children:[m,(0,mu.jsx)(yO,{events:a})]})};function WO(e,t,n){const a=e.get(t)||{firstDay:void 0,lastDay:void 0,release:void 0,vacationStart:void 0,vacationEnd:void 0,travel:void 0};n(a),e.set(t,a)}function qO(e,t){return function(n){n[e]?n[e].add(t):n[e]=new Set([t])}}function zO(e,t){const n=new Map;return function(e,t){t.forEach((t=>{var n;null===t||void 0===t||null===(n=t.countries)||void 0===n||n.forEach((n=>{WO(e,n.fromTimestamp,qO("travel",t.author))})),t.isStaff||(WO(e,t.firstCommitTimestamp,qO("firstDay",t.author)),t.isDismissed&&WO(e,t.lastCommitTimestamp,qO("lastDay",t.author)))}))}(n,e),function(e,t){t.forEach((t=>{WO(e,t.to.timestamp,qO("release",t.title))}))}(n,t.release.totalInfo),function(e,t){t.forEach((t=>{t.duration>30||(WO(e,t.from.timestamp,qO("vacationStart",t.author)),WO(e,t.to.timestamp,qO("vacationEnd",t.author)))}))}(n,t.absence.totalInfo),n}const BO="team_month_filter",UO="team_month_filter_checkbox",HO="team_month_filter_select";function GO(e,t){const n=e.map(((e,t)=>({id:t+1,title:e})));return n.unshift({id:0,title:t}),n}const VO=yi((e=>{var n,a;let{filters:s,onChange:i}=e;const{text:o}=_u(),r=PT.statisticsByCommits.author.list,l=PT.statisticsByCommits.type.list,m=(0,t.useMemo)((()=>GO(r,o("plugin.team_month.filters.authors"))),[r]),c=(0,t.useMemo)((()=>GO(l,o("plugin.team_month.filters.types"))),[l]),u=(e,t)=>{i({...s,[e]:t})};return(0,mu.jsxs)("div",{className:BO,children:[(0,mu.jsx)(Qx,{className:HO,value:(null===s||void 0===s||null===(n=s.authors)||void 0===n?void 0:n[0])||m[0],options:m,onChange:e=>u("authors",[m[e]])}),(0,mu.jsx)(Qx,{className:HO,value:(null===s||void 0===s||null===(a=s.types)||void 0===a?void 0:a[0])||c[0],options:c,onChange:e=>u("types",[c[e]])}),(0,mu.jsx)(cA,{title:"plugin.team_month.filters.release",className:UO,value:s.release,onChange:()=>u("release",!s.release)}),(0,mu.jsx)(cA,{title:"plugin.team_month.filters.absence",className:UO,value:s.absence,onChange:()=>u("absence",!s.absence)}),(0,mu.jsx)(cA,{title:"plugin.team_month.filters.firstLastDays",className:UO,value:s.firstLastDays,onChange:()=>u("firstLastDays",!s.firstLastDays)})]})})),KO=VO,$O=yi((e=>{var n;let{mode:a}=e;const s=PT.statisticsByCommits.month,i=PT.statisticsByCommits.author.totalInfo,o=null===(n=PT.statisticsByCommits.recommendations.team)||void 0===n?void 0:n.byTimestamp,r=zO(i,PT.statisticsByCommits),[l,m]=(0,t.useState)({release:!1,firstLastDays:!0});return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(Pw,{value:"fullscreen"!==a,children:(0,mu.jsx)(OA,{mode:a,recommendations:o})}),(0,mu.jsx)(sx,{title:"plugin.team_month.title"}),(0,mu.jsx)(Pw,{value:"print"!==a,children:(0,mu.jsx)(Jb,{children:(0,mu.jsx)(KO,{filters:l,onChange:m})})}),(0,mu.jsx)(Jb,{template:"table",children:(0,mu.jsx)(FO,{max:s.maxCommitsInDay,events:r,months:s.totalInfo,filters:l})})]})})),YO=$O;class XO{getMenuItems(){return[{id:"month",group:20,order:110,link:"/team/month",title:"plugin.team_month.sidebar",icon:"./assets/menu/team_month.svg"}]}getPage(e,t){return"/team/month"===e?(0,mu.jsx)(YO,{mode:null===t||void 0===t?void 0:t.mode}):void 0}getTranslations(){return pO}}XO.id="team_month";const QO={ar:'\n\xa7 plugin.team_pull_requests.sidebar: Code merge\n\xa7 plugin.team_pull_requests.total.title: Overall statistics across all PRs\n\xa7 plugin.team_pull_requests.total.daysWorkOnTask: Average time spent working before creating a PR\n\xa7 plugin.team_pull_requests.total.daysInReview: Average PR review time\n\xa7 plugin.team_pull_requests.total.description1: *Work time* is the time between the first and the last commit for a task. If a task has multiple PRs, then the *work time* for the next one is counted from the merge date of the previous PR.\n\xa7 plugin.team_pull_requests.total.description11: For example: if you work on a task for a week and at the end of each day create and merge a PR, then the work time for each of these PRs will be one day. But the "total time spent working on the task" (see in the "Task list" section) will be a week.\n\xa7 plugin.team_pull_requests.total.description2: *Review time* is the time between the last commit and the code merge. It shows actual downtime while waiting for something.\n\xa7 plugin.team_pull_requests.author.title: Statistics by staff members\n\xa7 plugin.team_pull_requests.author.author: Staff member\n\xa7 plugin.team_pull_requests.author.daysWorkOnTask: Average time spent working before PR\n\xa7 plugin.team_pull_requests.author.daysInReview: Average PR review time\n\xa7 plugin.team_pull_requests.author.middleTimeRelease: Development time to review time\n\xa7 plugin.team_pull_requests.yearChart.title: Breakdown by years\n\xa7 plugin.team_pull_requests.authorChart.title: Breakdown by staff members\n\xa7 plugin.team_pull_requests.chart.suffix: pull requests\n\xa7 plugin.team_pull_requests.all.title: PRs linked to tasks\n\xa7 plugin.team_pull_requests.all.task: Task\n\xa7 plugin.team_pull_requests.all.pr: PR\n\xa7 plugin.team_pull_requests.all.message: Commit message or branch\n\xa7 plugin.team_pull_requests.all.dateCreate: Created\n\xa7 plugin.team_pull_requests.all.dateMerge: Merged\n\xa7 plugin.team_pull_requests.all.daysWorkOnTask: Days in development\n\xa7 plugin.team_pull_requests.all.daysInReview: Days in review\n\xa7 plugin.team_pull_requests.anonymous.title: PRs without task IDs\n\xa7 plugin.team_pull_requests.anonymous.date: Merge date\n\xa7 plugin.team_pull_requests.anonymous.author: Merged by\n\xa7 plugin.team_pull_requests.anonymous.message: Commit message or branch\n\xa7 plugin.team_pull_requests.chart.1day: day\n\xa7 plugin.team_pull_requests.chart.3day: three days\n\xa7 plugin.team_pull_requests.chart.7day: week\n\xa7 plugin.team_pull_requests.chart.14day: two weeks\n\xa7 plugin.team_pull_requests.chart.30day: month\n\xa7 plugin.team_pull_requests.chart.more: more than\n',de:"\n\xa7 plugin.team_pull_requests.sidebar: Code einf\xfcllen\n\xa7 plugin.team_pull_requests.task: Task\n\xa7 plugin.team_pull_requests.tasks: tasks\n\xa7 plugin.team_pull_requests.firstCommitTime: First commit\n\xa7 plugin.team_pull_requests.lastCommitTime: Last\n\xa7 plugin.team_pull_requests.workDays: Development days\n\xa7 plugin.team_pull_requests.delayDays: Days waiting for merge\n\xa7 plugin.team_pull_requests.backlogDays: The delay of the task in the backlog before the start of development\n\xa7 plugin.team_pull_requests.middleTimeRelease: Average delivery time (days)\n\xa7 plugin.team_pull_requests.chart.1day: day\n\xa7 plugin.team_pull_requests.chart.3day: three days\n\xa7 plugin.team_pull_requests.chart.7day: week\n\xa7 plugin.team_pull_requests.chart.14day: two weeks\n\xa7 plugin.team_pull_requests.chart.30day: month\n\xa7 plugin.team_pull_requests.chart.more: more\n\xa7 plugin.team_pull_requests.date: Merge Date\n\xa7 plugin.team_pull_requests.mergeAuthor: Merged by\n\xa7 plugin.team_pull_requests.author: Employee\n\xa7 plugin.team_pull_requests.work: development\n\xa7 plugin.team_pull_requests.delay: waiting\n\xa7 plugin.team_pull_requests.days: days\n\xa7 plugin.team_pull_requests.oneTaskDays: Time spent on one task\n\xa7 plugin.team_pull_requests.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 plugin.team_pull_requests.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 plugin.team_pull_requests.description3: *Task creation date* in the task tracker is calculated by its sequential number and the minimum date of any next Issue in the code. The method has a margin of error and, as a rule, the tasks turn out to be older. Frequent releases, fast bugfixes, and a large number of employees working on the code reduce this margin of error.\n\xa7 plugin.team_pull_requests.statByAuthors: Statistics by employees\n\xa7 plugin.team_pull_requests.longDelay: Prolonged Waiting for merge\n\xa7 plugin.team_pull_requests.anonymous: PR without task number\n\xa7 plugin.team_pull_requests.branch: Branch\n",en:'\n\xa7 plugin.team_pull_requests.sidebar: Code merge\n\xa7 plugin.team_pull_requests.total.title: Overall statistics across all PRs\n\xa7 plugin.team_pull_requests.total.daysWorkOnTask: Average time spent working before creating a PR\n\xa7 plugin.team_pull_requests.total.daysInReview: Average PR review time\n\xa7 plugin.team_pull_requests.total.description1: *Work time* is the time between the first and the last commit for a task. If a task has multiple PRs, then the *work time* for the next one is counted from the merge date of the previous PR.\n\xa7 plugin.team_pull_requests.total.description11: For example: if you work on a task for a week and at the end of each day create and merge a PR, then the work time for each of these PRs will be one day. But the "total time spent working on the task" (see in the "Task list" section) will be a week.\n\xa7 plugin.team_pull_requests.total.description2: *Review time* is the time between the last commit and the code merge. It shows actual downtime while waiting for something.\n\xa7 plugin.team_pull_requests.author.title: Statistics by staff members\n\xa7 plugin.team_pull_requests.author.author: Staff member\n\xa7 plugin.team_pull_requests.author.daysWorkOnTask: Average time spent working before PR\n\xa7 plugin.team_pull_requests.author.daysInReview: Average PR review time\n\xa7 plugin.team_pull_requests.author.middleTimeRelease: Development time to review time\n\xa7 plugin.team_pull_requests.author.work: work\n\xa7 plugin.team_pull_requests.author.review: review\n\xa7 plugin.team_pull_requests.yearChart.title: Breakdown by years\n\xa7 plugin.team_pull_requests.authorChart.title: Breakdown by staff members\n\xa7 plugin.team_pull_requests.chart.suffix: pull requests\n\xa7 plugin.team_pull_requests.all.title: PRs linked to tasks\n\xa7 plugin.team_pull_requests.all.task: Task\n\xa7 plugin.team_pull_requests.all.pr: PR\n\xa7 plugin.team_pull_requests.all.message: Commit message or branch\n\xa7 plugin.team_pull_requests.all.dateCreate: Created\n\xa7 plugin.team_pull_requests.all.dateMerge: Merged\n\xa7 plugin.team_pull_requests.all.daysWorkOnTask: Days in development\n\xa7 plugin.team_pull_requests.all.daysInReview: Days in review\n\xa7 plugin.team_pull_requests.anonymous.title: PRs without task IDs\n\xa7 plugin.team_pull_requests.anonymous.date: Merge date\n\xa7 plugin.team_pull_requests.anonymous.author: Merged by\n\xa7 plugin.team_pull_requests.anonymous.message: Commit message or branch\n\xa7 plugin.team_pull_requests.chart.1day: day\n\xa7 plugin.team_pull_requests.chart.3day: three days\n\xa7 plugin.team_pull_requests.chart.7day: week\n\xa7 plugin.team_pull_requests.chart.14day: two weeks\n\xa7 plugin.team_pull_requests.chart.30day: month\n\xa7 plugin.team_pull_requests.chart.more: more than\n',es:"\n\xa7 plugin.team_pull_requests.sidebar: Inyecci\xf3n de c\xf3digo\n\xa7 plugin.team_pull_requests.task: Tarea\n\xa7 plugin.team_pull_requests.tasks: tareas\n\xa7 plugin.team_pull_requests.firstCommitTime: Primer commits\n\xa7 plugin.team_pull_requests.lastCommitTime: Last\n\xa7 plugin.team_pull_requests.workDays: Average time spent working on a task\n\xa7 plugin.team_pull_requests.delayDays: Average time of the PR review\n\xa7 plugin.team_pull_requests.backlogDays: The delay of the task in the backlog before the start of development\n\xa7 plugin.team_pull_requests.all.workDays: Time spent working on a task\n\xa7 plugin.team_pull_requests.all.delayDays: Time of the PR review\n\xa7 plugin.team_pull_requests.middleTimeRelease: The ratio of development time to review time\n\xa7 plugin.team_pull_requests.chart.1day: day\n\xa7 plugin.team_pull_requests.chart.3day: three days\n\xa7 plugin.team_pull_requests.chart.7day: week\n\xa7 plugin.team_pull_requests.chart.14day: two weeks\n\xa7 plugin.team_pull_requests.chart.30day: month\n\xa7 plugin.team_pull_requests.chart.more: more\n\xa7 plugin.team_pull_requests.date: Date of injection\n\xa7 plugin.team_pull_requests.mergeAuthor: I poured it in\n\xa7 plugin.team_pull_requests.author: Employee\n\xa7 plugin.team_pull_requests.work: development\n\xa7 plugin.team_pull_requests.delay: expectation\n\xa7 plugin.team_pull_requests.days: days\n\xa7 plugin.team_pull_requests.oneTaskDays: Time spent on one task\n\xa7 plugin.team_pull_requests.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 plugin.team_pull_requests.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 plugin.team_pull_requests.description3: *Task creation date* in the task tracker is calculated by its sequential number and the minimum date of any next Issue in the code. The method has a margin of error and, as a rule, the tasks turn out to be older. Frequent releases, fast bugfixes, and a large number of employees working on the code reduce this margin of error.\n\xa7 plugin.team_pull_requests.statByAuthors: Employee statistics\n\xa7 plugin.team_pull_requests.longDelay: Long wait for infusion\n\xa7 plugin.team_pull_requests.anonymous: PR without task number\n\xa7 plugin.team_pull_requests.branch: Branch\n",fr:"\n\xa7 plugin.team_pull_requests.sidebar: injection de code\n\xa7 plugin.team_pull_requests.task: t\xe2ches\n\xa7 plugin.team_pull_requests.tasks: t\xe2ches\n\xa7 plugin.team_pull_requests.firstCommitTime: Premier commit\n\xa7 plugin.team_pull_requests.lastCommitTime: Dernier\n\xa7 plugin.team_pull_requests.workDays: Average time spent working on a task\n\xa7 plugin.team_pull_requests.delayDays: Average time of the PR review\n\xa7 plugin.team_pull_requests.backlogDays: The delay of the task in the backlog before the start of development\n\xa7 plugin.team_pull_requests.all.workDays: Time spent working on a task\n\xa7 plugin.team_pull_requests.all.delayDays: Time of the PR review\n\xa7 plugin.team_pull_requests.middleTimeRelease: The ratio of development time to review time\n\xa7 plugin.team_pull_requests.chart.1day: day\n\xa7 plugin.team_pull_requests.chart.3day: three days\n\xa7 plugin.team_pull_requests.chart.7day: week\n\xa7 plugin.team_pull_requests.chart.14day: two weeks\n\xa7 plugin.team_pull_requests.chart.30day: month\n\xa7 plugin.team_pull_requests.chart.more: more\n\xa7 plugin.team_pull_requests.date: Date de diffusion\n\xa7 plugin.team_pull_requests.mergeAuthor: Versai\n\xa7 plugin.team_pull_requests.author: Employ\xe9\n\xa7 plugin.team_pull_requests.work: d\xe9veloppement\n\xa7 plugin.team_pull_requests.delay: attente\n\xa7 plugin.team_pull_requests.days: jours\n\xa7 plugin.team_pull_requests.oneTaskDays: Temps pass\xe9 sur une t\xe2che\n\xa7 plugin.team_pull_requests.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 plugin.team_pull_requests.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 plugin.team_pull_requests.description3: *Task creation date* in the task tracker is calculated by its sequential number and the minimum date of any next Issue in the code. The method has a margin of error and, as a rule, the tasks turn out to be older. Frequent releases, fast bugfixes, and a large number of employees working on the code reduce this margin of error.\n\xa7 plugin.team_pull_requests.statByAuthors: Statistiques du personnel\n\xa7 plugin.team_pull_requests.longDelay: Longue attente pour l'injection\n\xa7 plugin.team_pull_requests.anonymous: PR without task number\n\xa7 plugin.team_pull_requests.branch: Branch\n",he:'\n\xa7 plugin.team_pull_requests.sidebar: Code merge\n\xa7 plugin.team_pull_requests.total.title: Overall statistics across all PRs\n\xa7 plugin.team_pull_requests.total.daysWorkOnTask: Average time spent working before creating a PR\n\xa7 plugin.team_pull_requests.total.daysInReview: Average PR review time\n\xa7 plugin.team_pull_requests.total.description1: *Work time* is the time between the first and the last commit for a task. If a task has multiple PRs, then the *work time* for the next one is counted from the merge date of the previous PR.\n\xa7 plugin.team_pull_requests.total.description11: For example: if you work on a task for a week and at the end of each day create and merge a PR, then the work time for each of these PRs will be one day. But the "total time spent working on the task" (see in the "Task list" section) will be a week.\n\xa7 plugin.team_pull_requests.total.description2: *Review time* is the time between the last commit and the code merge. It shows actual downtime while waiting for something.\n\xa7 plugin.team_pull_requests.author.title: Statistics by staff members\n\xa7 plugin.team_pull_requests.author.author: Staff member\n\xa7 plugin.team_pull_requests.author.daysWorkOnTask: Average time spent working before PR\n\xa7 plugin.team_pull_requests.author.daysInReview: Average PR review time\n\xa7 plugin.team_pull_requests.author.middleTimeRelease: Development time to review time\n\xa7 plugin.team_pull_requests.yearChart.title: Breakdown by years\n\xa7 plugin.team_pull_requests.authorChart.title: Breakdown by staff members\n\xa7 plugin.team_pull_requests.chart.suffix: pull requests\n\xa7 plugin.team_pull_requests.all.title: PRs linked to tasks\n\xa7 plugin.team_pull_requests.all.task: Task\n\xa7 plugin.team_pull_requests.all.pr: PR\n\xa7 plugin.team_pull_requests.all.message: Commit message or branch\n\xa7 plugin.team_pull_requests.all.dateCreate: Created\n\xa7 plugin.team_pull_requests.all.dateMerge: Merged\n\xa7 plugin.team_pull_requests.all.daysWorkOnTask: Days in development\n\xa7 plugin.team_pull_requests.all.daysInReview: Days in review\n\xa7 plugin.team_pull_requests.anonymous.title: PRs without task IDs\n\xa7 plugin.team_pull_requests.anonymous.date: Merge date\n\xa7 plugin.team_pull_requests.anonymous.author: Merged by\n\xa7 plugin.team_pull_requests.anonymous.message: Commit message or branch\n\xa7 plugin.team_pull_requests.chart.1day: day\n\xa7 plugin.team_pull_requests.chart.3day: three days\n\xa7 plugin.team_pull_requests.chart.7day: week\n\xa7 plugin.team_pull_requests.chart.14day: two weeks\n\xa7 plugin.team_pull_requests.chart.30day: month\n\xa7 plugin.team_pull_requests.chart.more: more than\n',hi:'\n\xa7 plugin.team_pull_requests.sidebar: Code merge\n\xa7 plugin.team_pull_requests.total.title: Overall statistics across all PRs\n\xa7 plugin.team_pull_requests.total.daysWorkOnTask: Average time spent working before creating a PR\n\xa7 plugin.team_pull_requests.total.daysInReview: Average PR review time\n\xa7 plugin.team_pull_requests.total.description1: *Work time* is the time between the first and the last commit for a task. If a task has multiple PRs, then the *work time* for the next one is counted from the merge date of the previous PR.\n\xa7 plugin.team_pull_requests.total.description11: For example: if you work on a task for a week and at the end of each day create and merge a PR, then the work time for each of these PRs will be one day. But the "total time spent working on the task" (see in the "Task list" section) will be a week.\n\xa7 plugin.team_pull_requests.total.description2: *Review time* is the time between the last commit and the code merge. It shows actual downtime while waiting for something.\n\xa7 plugin.team_pull_requests.author.title: Statistics by staff members\n\xa7 plugin.team_pull_requests.author.author: Staff member\n\xa7 plugin.team_pull_requests.author.daysWorkOnTask: Average time spent working before PR\n\xa7 plugin.team_pull_requests.author.daysInReview: Average PR review time\n\xa7 plugin.team_pull_requests.author.middleTimeRelease: Development time to review time\n\xa7 plugin.team_pull_requests.yearChart.title: Breakdown by years\n\xa7 plugin.team_pull_requests.authorChart.title: Breakdown by staff members\n\xa7 plugin.team_pull_requests.chart.suffix: pull requests\n\xa7 plugin.team_pull_requests.all.title: PRs linked to tasks\n\xa7 plugin.team_pull_requests.all.task: Task\n\xa7 plugin.team_pull_requests.all.pr: PR\n\xa7 plugin.team_pull_requests.all.message: Commit message or branch\n\xa7 plugin.team_pull_requests.all.dateCreate: Created\n\xa7 plugin.team_pull_requests.all.dateMerge: Merged\n\xa7 plugin.team_pull_requests.all.daysWorkOnTask: Days in development\n\xa7 plugin.team_pull_requests.all.daysInReview: Days in review\n\xa7 plugin.team_pull_requests.anonymous.title: PRs without task IDs\n\xa7 plugin.team_pull_requests.anonymous.date: Merge date\n\xa7 plugin.team_pull_requests.anonymous.author: Merged by\n\xa7 plugin.team_pull_requests.anonymous.message: Commit message or branch\n\xa7 plugin.team_pull_requests.chart.1day: day\n\xa7 plugin.team_pull_requests.chart.3day: three days\n\xa7 plugin.team_pull_requests.chart.7day: week\n\xa7 plugin.team_pull_requests.chart.14day: two weeks\n\xa7 plugin.team_pull_requests.chart.30day: month\n\xa7 plugin.team_pull_requests.chart.more: more than\n',ja:"\n\xa7 plugin.team_pull_requests.sidebar: \u30b3\u30fc\u30c9\u6ce8\u5165\n\xa7 plugin.team_pull_requests.task: Task\n\xa7 plugin.team_pull_requests.tasks: tasks\n\xa7 plugin.team_pull_requests.firstCommitTime: First commit\n\xa7 plugin.team_pull_requests.lastCommitTime: Last\n\xa7 plugin.team_pull_requests.workDays: Average time spent working on a task\n\xa7 plugin.team_pull_requests.delayDays: Average time of the PR review\n\xa7 plugin.team_pull_requests.backlogDays: The delay of the task in the backlog before the start of development\n\xa7 plugin.team_pull_requests.all.workDays: Time spent working on a task\n\xa7 plugin.team_pull_requests.all.delayDays: Time of the PR review\n\xa7 plugin.team_pull_requests.middleTimeRelease: The ratio of development time to review time\n\xa7 plugin.team_pull_requests.chart.1day: day\n\xa7 plugin.team_pull_requests.chart.3day: three days\n\xa7 plugin.team_pull_requests.chart.7day: week\n\xa7 plugin.team_pull_requests.chart.14day: two weeks\n\xa7 plugin.team_pull_requests.chart.30day: month\n\xa7 plugin.team_pull_requests.chart.more: more\n\xa7 plugin.team_pull_requests.date: Merge Date\n\xa7 plugin.team_pull_requests.mergeAuthor: Merged by\n\xa7 plugin.team_pull_requests.author: Employee\n\xa7 plugin.team_pull_requests.work: development\n\xa7 plugin.team_pull_requests.delay: waiting\n\xa7 plugin.team_pull_requests.days: days\n\xa7 plugin.team_pull_requests.oneTaskDays: Time spent on one task\n\xa7 plugin.team_pull_requests.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 plugin.team_pull_requests.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 plugin.team_pull_requests.description3: *Task creation date* in the task tracker is calculated by its sequential number and the minimum date of any next Issue in the code. The method has a margin of error and, as a rule, the tasks turn out to be older. Frequent releases, fast bugfixes, and a large number of employees working on the code reduce this margin of error.\n\xa7 plugin.team_pull_requests.statByAuthors: Statistics by employees\n\xa7 plugin.team_pull_requests.longDelay: Prolonged Waiting for merge\n\xa7 plugin.team_pull_requests.anonymous: PR without task number\n\xa7 plugin.team_pull_requests.branch: Branch\n",ko:"\n\xa7 plugin.team_pull_requests.sidebar: \ucf54\ub4dc \uc0bd\uc785\n\xa7 plugin.team_pull_requests.task: \uc791\uc5c5\n\xa7 plugin.team_pull_requests.tasks: \uc791\uc5c5\n\xa7 plugin.team_pull_requests.firstCommitTime: \uccab \ubc88\uc9f8 \ucee4\ubc0b\n\xa7 plugin.team_pull_requests.lastCommitTime: \ub9c8\uc9c0\ub9c9\n\xa7 plugin.team_pull_requests.workDays: \uc791\uc5c5 \uc791\uc5c5\uc5d0 \uc18c\uc694\ub41c \ud3c9\uade0 \uc2dc\uac04\n\xa7 plugin.team_pull_requests.delayDays: \ud3c9\uade0 \ud64d\ubcf4 \uac80\ud1a0 \uc2dc\uac04\n\xa7 plugin.team_pull_requests.backlogDays: The delay of the task in the backlog before the start of development\n\xa7 plugin.team_pull_requests.all.workDays: \uc791\uc5c5 \uc791\uc5c5\uc5d0 \uc18c\uc694\ub41c \uc2dc\uac04\n\xa7 plugin.team_pull_requests.all.delayDays: \ud64d\ubcf4 \uac80\ud1a0 \uc2dc\uac04\n\xa7 plugin.team_pull_requests.middleTimeRelease: \uac80\ud1a0 \ud560 \uac1c\ubc1c \uc2dc\uac04\uc758 \ube44\uc728\n\xa7 plugin.team_pull_requests.chart.1day: \uc2dc\uac04\uc740 \ud558\ub8e8\n\xa7 plugin.team_pull_requests.chart.3day: 3 \uc77c\n\xa7 plugin.team_pull_requests.chart.7day: \ud55c \uc8fc\n\xa7 plugin.team_pull_requests.chart.14day: 2 \uc8fc\n\xa7 plugin.team_pull_requests.chart.30day: \ud55c \ub2ec\n\xa7 plugin.team_pull_requests.chart.more: \ub354 \ubcf4\uae30\n\xa7 plugin.team_pull_requests.date: \uc8fc\uc785 \ub0a0\uc9dc\n\xa7 plugin.team_pull_requests.mergeAuthor: \ub098\ub294 \uadf8\uac83\uc744 \ubd80\uc5b4\n\xa7 plugin.team_pull_requests.author: \uc9c1\uc6d0\n\xa7 plugin.team_pull_requests.work: \uac1c\ubc1c\n\xa7 plugin.team_pull_requests.delay: \ub300\uae30 \uc911\n\xa7 plugin.team_pull_requests.days: \uc77c\n\xa7 plugin.team_pull_requests.oneTaskDays: \ud55c \uc791\uc5c5\uc5d0 \uc18c\uc694 \ub41c \uc2dc\uac04\n\xa7 plugin.team_pull_requests.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 plugin.team_pull_requests.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 plugin.team_pull_requests.description3: *Task creation date* in the task tracker is calculated by its sequential number and the minimum date of any next Issue in the code. The method has a margin of error and, as a rule, the tasks turn out to be older. Frequent releases, fast bugfixes, and a large number of employees working on the code reduce this margin of error.\n\xa7 plugin.team_pull_requests.statByAuthors: \uc9c1\uc6d0 \ud1b5\uacc4\n\xa7 plugin.team_pull_requests.longDelay: \uc8fc\uc785\uc5d0 \ub300\ud55c \uae34 \ub300\uae30\n\xa7 plugin.team_pull_requests.anonymous: \ubb38\uc81c \ubc88\ud638\uac00\uc5c6\ub294 \ud64d\ubcf4\n\xa7 plugin.team_pull_requests.branch: \uc9c0\uc810\n",pt:"\n\xa7 plugin.team_pull_requests.sidebar: Introdu\xe7\xe3o do c\xf3digo\n\xa7 plugin.team_pull_requests.task: Task\n\xa7 plugin.team_pull_requests.tasks: tasks\n\xa7 plugin.team_pull_requests.firstCommitTime: First commit\n\xa7 plugin.team_pull_requests.lastCommitTime: Last\n\xa7 plugin.team_pull_requests.workDays: Average time spent working on a task\n\xa7 plugin.team_pull_requests.delayDays: Average time of the PR review\n\xa7 plugin.team_pull_requests.backlogDays: The delay of the task in the backlog before the start of development\n\xa7 plugin.team_pull_requests.all.workDays: Time spent working on a task\n\xa7 plugin.team_pull_requests.all.delayDays: Time of the PR review\n\xa7 plugin.team_pull_requests.middleTimeRelease: The ratio of development time to review time\n\xa7 plugin.team_pull_requests.chart.1day: day\n\xa7 plugin.team_pull_requests.chart.3day: three days\n\xa7 plugin.team_pull_requests.chart.7day: week\n\xa7 plugin.team_pull_requests.chart.14day: two weeks\n\xa7 plugin.team_pull_requests.chart.30day: month\n\xa7 plugin.team_pull_requests.chart.more: more\n\xa7 plugin.team_pull_requests.date: Merge Date\n\xa7 plugin.team_pull_requests.mergeAuthor: Merged by\n\xa7 plugin.team_pull_requests.author: Employee\n\xa7 plugin.team_pull_requests.work: development\n\xa7 plugin.team_pull_requests.delay: waiting\n\xa7 plugin.team_pull_requests.days: days\n\xa7 plugin.team_pull_requests.oneTaskDays: Time spent on one task\n\xa7 plugin.team_pull_requests.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 plugin.team_pull_requests.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 plugin.team_pull_requests.description3: *Task creation date* in the task tracker is calculated by its sequential number and the minimum date of any next Issue in the code. The method has a margin of error and, as a rule, the tasks turn out to be older. Frequent releases, fast bugfixes, and a large number of employees working on the code reduce this margin of error.\n\xa7 plugin.team_pull_requests.statByAuthors: Statistics by employees\n\xa7 plugin.team_pull_requests.longDelay: Prolonged Waiting for merge\n\xa7 plugin.team_pull_requests.anonymous: PR without task number\n\xa7 plugin.team_pull_requests.branch: Branch\n",ru:'\n\xa7 plugin.team_pull_requests.sidebar: \u0412\u043b\u0438\u0442\u0438\u0435 \u043a\u043e\u0434\u0430\n\xa7 plugin.team_pull_requests.total.title: \u041e\u0431\u0449\u0430\u044f \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u043f\u043e \u0432\u0441\u0435\u043c PR\n\xa7 plugin.team_pull_requests.total.daysWorkOnTask: \u0421\u0440\u0435\u0434\u043d\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0434\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f PR\n\xa7 plugin.team_pull_requests.total.daysInReview: \u0421\u0440\u0435\u0434\u043d\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0435\u0432\u044c\u044e PR\n\xa7 plugin.team_pull_requests.total.description1: *\u0412\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b* \u044d\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043c\u0435\u0436\u0434\u0443 \u043f\u0435\u0440\u0432\u044b\u043c \u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u043c \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u043c \u043f\u043e \u0437\u0430\u0434\u0430\u0447\u0435. \u0415\u0441\u043b\u0438 \u043f\u043e \u0437\u0430\u0434\u0430\u0447\u0435 \u0431\u044b\u043b\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e PR, \u0442\u043e *\u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b* \u0434\u043b\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u0434\u0430\u0442\u044b \u0432\u043b\u0438\u0442\u0438\u044f \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0433\u043e PR.\n\xa7 plugin.team_pull_requests.total.description11: \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440: \u0435\u0441\u043b\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043d\u0430\u0434 \u0437\u0430\u0434\u0430\u0447\u0435\u0439 \u043d\u0435\u0434\u0435\u043b\u044e \u0438 \u0432 \u043a\u043e\u043d\u0446\u0435 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0434\u043d\u044f \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u0438 \u0432\u043b\u0438\u0432\u0430\u0442\u044c PR, \u0442\u043e \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0438\u0437 \u044d\u0442\u0438\u0445 PR \u0431\u0443\u0434\u0435\u0442 \u043e\u0434\u0438\u043d \u0434\u0435\u043d\u044c. \u041d\u043e "\u043e\u0431\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0434 \u0437\u0430\u0434\u0430\u0447\u0435\u0439" (\u0441\u043c. \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 "\u0421\u043f\u0438\u0441\u043e\u043a \u0437\u0430\u0434\u0430\u0447") \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u0434\u0435\u043b\u044f.\n\xa7 plugin.team_pull_requests.total.description2: *\u0412\u0440\u0435\u043c\u044f \u0440\u0435\u0432\u044c\u044e* \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 plugin.team_pull_requests.author.title: \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 plugin.team_pull_requests.author.author: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\n\xa7 plugin.team_pull_requests.author.daysWorkOnTask: \u0421\u0440\u0435\u0434\u043d\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0434\u043e PR\n\xa7 plugin.team_pull_requests.author.daysInReview: \u0421\u0440\u0435\u0434\u043d\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0435\u0432\u044c\u044e PR\n\xa7 plugin.team_pull_requests.author.middleTimeRelease: \u0412\u0440\u0435\u043c\u0435\u043d\u044f \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 plugin.team_pull_requests.author.work: \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430\n\xa7 plugin.team_pull_requests.author.review: \u0440\u0435\u0432\u044c\u044e\n\xa7 plugin.team_pull_requests.yearChart.title: \u0420\u0430\u0437\u0431\u0438\u0432\u043a\u0430 \u043f\u043e \u0433\u043e\u0434\u0430\u043c\n\xa7 plugin.team_pull_requests.authorChart.title: \u0420\u0430\u0437\u0431\u0438\u0432\u043a\u0430 \u043f\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\u043c\n\xa7 plugin.team_pull_requests.chart.suffix: pull requests\n\xa7 plugin.team_pull_requests.all.title: PR \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0441 \u0437\u0430\u0434\u0430\u0447\u0430\u043c\u0438\n\xa7 plugin.team_pull_requests.all.task: \u0417\u0430\u0434\u0430\u0447\u0430\n\xa7 plugin.team_pull_requests.all.pr: PR\n\xa7 plugin.team_pull_requests.all.message: \u041f\u043e\u0434\u043f\u0438\u0441\u044c \u043a\u043e\u043c\u043c\u0438\u0442\u0430 \u0438\u043b\u0438 \u0432\u0435\u0442\u043a\u0430\n\xa7 plugin.team_pull_requests.all.dateCreate: \u0421\u043e\u0437\u0434\u0430\u043d\n\xa7 plugin.team_pull_requests.all.dateMerge: \u0412\u043b\u0438\u0442\n\xa7 plugin.team_pull_requests.all.daysWorkOnTask: \u0414\u043d\u0435\u0439 \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435\n\xa7 plugin.team_pull_requests.all.daysInReview: \u0414\u043d\u0435\u0439 \u043d\u0430 \u0440\u0435\u0432\u044c\u044e\n\xa7 plugin.team_pull_requests.anonymous.title: PR \u0431\u0435\u0437 \u043d\u043e\u043c\u0435\u0440\u043e\u0432 \u0437\u0430\u0434\u0430\u0447\n\xa7 plugin.team_pull_requests.anonymous.date: \u0414\u0430\u0442\u0430 \u0432\u043b\u0438\u0442\u0438\u044f\n\xa7 plugin.team_pull_requests.anonymous.author: \u041a\u0442\u043e \u0432\u043b\u0438\u043b\n\xa7 plugin.team_pull_requests.anonymous.message: \u041f\u043e\u0434\u043f\u0438\u0441\u044c \u043a\u043e\u043c\u043c\u0438\u0442\u0430 \u0438\u043b\u0438 \u0432\u0435\u0442\u043a\u0430\n\xa7 plugin.team_pull_requests.chart.1day: \u0434\u0435\u043d\u044c\n\xa7 plugin.team_pull_requests.chart.3day: \u0442\u0440\u0438 \u0434\u043d\u044f\n\xa7 plugin.team_pull_requests.chart.7day: \u043d\u0435\u0434\u0435\u043b\u044f\n\xa7 plugin.team_pull_requests.chart.14day: \u0434\u0432\u0435 \u043d\u0435\u0434\u0435\u043b\u0438\n\xa7 plugin.team_pull_requests.chart.30day: \u043c\u0435\u0441\u044f\u0446\n\xa7 plugin.team_pull_requests.chart.more: \u0431\u043e\u043b\u0435\u0435\n',zh:"\n\xa7 plugin.team_pull_requests.sidebar: \u4ee3\u7801\u6ce8\u5165\n\xa7 plugin.team_pull_requests.task: \u4efb\u52a1\n\xa7 plugin.team_pull_requests.tasks: \u4efb\u52a1\n\xa7 plugin.team_pull_requests.firstCommitTime: \u7b2c\u4e00\u4e2a Commits\n\xa7 plugin.team_pull_requests.lastCommitTime: \u6700\u540e\u4e00\u6b21\n\xa7 plugin.team_pull_requests.workDays: \u5b8c\u6210\u4efb\u52a1\u7684\u5e73\u5747\u65f6\u95f4\n\xa7 plugin.team_pull_requests.delayDays: PR\u5ba1\u67e5\u7684\u5e73\u5747\u65f6\u95f4\n\xa7 plugin.team_pull_requests.backlogDays: The delay of the task in the backlog before the start of development\n\xa7 plugin.team_pull_requests.all.workDays: \u4efb\u52a1\u5b8c\u6210\u65f6\u95f4\n\xa7 plugin.team_pull_requests.all.delayDays: PR\u8bf7\u6c42\u7684\u5ba1\u8bae\u65f6\u95f4\n\xa7 plugin.team_pull_requests.middleTimeRelease: \u5f00\u53d1\u65f6\u95f4\u4e0e\u5ba1\u67e5\u65f6\u95f4\u7684\u6bd4\u7387\n\xa7 plugin.team_pull_requests.chart.1day: day\n\xa7 plugin.team_pull_requests.chart.3day: three days\n\xa7 plugin.team_pull_requests.chart.7day: week\n\xa7 plugin.team_pull_requests.chart.14day: two weeks\n\xa7 plugin.team_pull_requests.chart.30day: month\n\xa7 plugin.team_pull_requests.chart.more: more\n\xa7 plugin.team_pull_requests.date: \u6ce8\u5c04\u65e5\u671f\n\xa7 plugin.team_pull_requests.mergeAuthor: \u586b\u5199\n\xa7 plugin.team_pull_requests.author: \u96c7\u5458\n\xa7 plugin.team_pull_requests.work: \u53d1\u5c55\n\xa7 plugin.team_pull_requests.delay: \u671f\u671b\n\xa7 plugin.team_pull_requests.days: \u5929\u6570\n\xa7 plugin.team_pull_requests.oneTaskDays: \u82b1\u5728\u4e00\u9879\u4efb\u52a1\u4e0a\u7684\u65f6\u95f4\n\xa7 plugin.team_pull_requests.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 plugin.team_pull_requests.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 plugin.team_pull_requests.description3: *Task creation date* in the task tracker is calculated by its sequential number and the minimum date of any next Issue in the code. The method has a margin of error and, as a rule, the tasks turn out to be older. Frequent releases, fast bugfixes, and a large number of employees working on the code reduce this margin of error.\n\xa7 plugin.team_pull_requests.statByAuthors: \u96c7\u5458\u7edf\u8ba1\u6570\u5b57\n\xa7 plugin.team_pull_requests.longDelay: \u957f\u65f6\u95f4\u7b49\u5f85\u8f93\u6db2\n\xa7 plugin.team_pull_requests.anonymous: PR without task number\n\xa7 plugin.team_pull_requests.branch: Branch\n"};const JO=function(){return(0,mu.jsx)("div",{style:{pageBreakAfter:"always",breakAfter:"always"},children:" "})},[ZO,eL]=oI("years");const tL=function(e){let{prWithTask:t}=e;const n=ZO(t,"daysInReview"),a=ZO(t,"daysWorkOnTask");return(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(AE,{title:"plugin.team_pull_requests.total.daysWorkOnTask",details:a.details,order:eL,limit:3,suffix:"common.statistic.days"}),(0,mu.jsx)(bw,{translationId:"plugin.team_pull_requests.total.description1"}),(0,mu.jsx)(bw,{translationId:"plugin.team_pull_requests.total.description11"}),(0,mu.jsx)(dT,{height:"xl"})]}),(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(AE,{title:"plugin.team_pull_requests.total.daysInReview",details:n.details,order:eL,limit:3,suffix:"common.statistic.days"}),(0,mu.jsx)(bw,{translationId:"plugin.team_pull_requests.total.description2"})]})]})};function nL(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s,order:i}=e;if(!t)return null;const[o]=sI(t,["daysTotalValue"]);return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,fullScreenMode:"author",children:[(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_pull_requests.author.author",properties:"author",width:250}),(0,mu.jsx)(zp,{title:"plugin.team_pull_requests.author.daysWorkOnTask",properties:"daysWorkOnTask",template:e=>(0,mu.jsx)(LE,{details:e,order:i,suffix:"plugin.team_pull_requests.chart.suffix",limit:3})}),(0,mu.jsx)(zp,{title:"plugin.team_pull_requests.author.daysInReview",properties:"daysInReview",template:e=>(0,mu.jsx)(LE,{details:e,order:i,suffix:"plugin.team_pull_requests.chart.suffix",limit:3})}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"daysTotalValue",formatter:mo,width:40}),(0,mu.jsx)(zp,{isSortable:!0,properties:"daysTotalValue",title:"plugin.team_pull_requests.author.middleTimeRelease",width:300,template:(e,t)=>(0,mu.jsx)(LE,{value:e,order:["plugin.team_pull_requests.author.work","plugin.team_pull_requests.author.review"],suffix:"common.statistic.days",max:o,details:t.daysTotalDetails})})]})}nL.defaultProps={response:void 0};const aL=nL;const[sL,iL]=oI("years"),oL=yi((e=>{let{allPR:n,mode:a}=e;const s=(0,t.useMemo)((()=>function(e){const t=PT.statisticsByCommits.author.totalInfo.filter((e=>!e.isStaff)).map((e=>[e.author,[]])),n=new Map(t);return e.forEach((e=>{const t=n.get(e.author);t&&t.push(e)})),Array.from(n.values()).filter((e=>e.length>0))}(n).map((e=>{const t=sL(e,"daysInReview"),n=sL(e,"daysWorkOnTask"),a=t.weightedAverage+n.weightedAverage;return{author:e[0].author,daysInReview:t.details,daysWorkOnTask:n.details,daysTotalValue:a,daysTotalDetails:{"plugin.team_pull_requests.author.work":n.weightedAverage,"plugin.team_pull_requests.author.review":t.weightedAverage}}}))),[n]);return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(sx,{title:"plugin.team_pull_requests.author.title"}),(0,mu.jsxs)(tS,{content:s,watch:"".concat(a).concat(PT.hash),children:[(0,mu.jsx)(aL,{mode:a,order:iL,rowsForExcel:s}),(0,mu.jsx)(KC,{})]})]})}));function rL(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;return t?(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:s,type:"print"===s?"cards":void 0,columnCount:"print"===s?2:void 0,fullScreenMode:"anonymous",children:[(0,mu.jsx)(zp,{isSortable:!0,properties:"prExternalId",width:80,template:e=>(0,mu.jsx)(Cw,{prId:e})}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_pull_requests.anonymous.date",properties:"dateMerge",formatter:Zi,width:130}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_pull_requests.anonymous.author",properties:"author",width:200}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_pull_requests.anonymous.message",properties:"description"})]}):null}rL.defaultProps={mode:void 0,response:void 0};const lL=rL;function mL(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;if(!t)return null;const[i,o]=sI(t,["daysInReview","daysWorkOnTask"]);return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:s,type:"print"===s?"cards":void 0,columnCount:"print"===s?2:void 0,fullScreenMode:"all",children:[(0,mu.jsx)(zp,{isSortable:!0,template:_p.TASK,title:"plugin.team_pull_requests.all.task",width:120,properties:"task"}),(0,mu.jsx)(zp,{title:"plugin.team_pull_requests.all.pr",width:40,properties:"prExternalId",template:e=>(0,mu.jsx)(Cw,{prId:e})}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_pull_requests.all.message",properties:"description"}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_pull_requests.all.dateCreate",properties:"dateCreate",formatter:Zi,width:130}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_pull_requests.all.dateMerge",properties:"dateMerge",formatter:Zi,width:130}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"daysWorkOnTask",width:40}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_pull_requests.all.daysWorkOnTask",properties:"daysWorkOnTask",minWidth:170,template:e=>(0,mu.jsx)(LE,{value:e,max:o})}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"daysInReview",width:40}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_pull_requests.all.daysInReview",properties:"daysInReview",minWidth:170,template:e=>(0,mu.jsx)(LE,{value:e,max:i})})]})}mL.defaultProps={mode:void 0,response:void 0};const cL=mL;const uL=yi((e=>{let{rows:n}=e;if(!n)return null;const a=PT.statisticsByCommits.author.list,[s,i,o]=(0,t.useMemo)((()=>function(e){const t={},n={};return e.forEach((e=>{Vo(t,String(e.dateMergeYear)),Vo(n,String(e.author))})),[Object.keys(t).sort().reverse(),t,n]}(n)),[n]);return(0,mu.jsxs)(yT,{children:[(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_pull_requests.yearChart.title",suffix:"plugin.team_pull_requests.chart.suffix",order:s,limit:1,details:i})}),(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_pull_requests.authorChart.title",suffix:"plugin.team_pull_requests.chart.suffix",order:a,limit:3,details:o})})]})}));function pL(e){const t=[],n=[];return e.forEach((e=>{e.task?t.push(e):n.push(e)})),[t,n]}const dL=yi((e=>{let{mode:n}=e;const a=PT.statisticsByCommits.pr.totalInfo,[s,i]=pL(a),[o,r]=(0,t.useState)(s),[l,m]=(0,t.useState)(i),[c,u]=(0,t.useState)("");return a.length<5?"print"!==n?(0,mu.jsx)(Hw,{}):null:(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsxs)(Pw,{value:s,children:[(0,mu.jsx)(sx,{title:"plugin.team_pull_requests.total.title"}),(0,mu.jsx)(tL,{prWithTask:s}),(0,mu.jsx)(oL,{mode:n,allPR:a})]}),(0,mu.jsx)(JO,{}),(0,mu.jsxs)(Pw,{value:"print"!==n,children:[(0,mu.jsx)(sx,{title:"common.filters"}),(0,mu.jsx)(cT,{content:a,properties:"message",examples:["hack","password","prod","token","key","env"],onChange:(e,t)=>{const[n,a]=pL(e);r(n),m(a),u(t)},onFilter:e=>t=>(!e.author||t.author===e.author)&&((!e.company||t.company===e.company)&&((!e.taskCode||t.taskCode===e.taskCode)&&(!(e.scope&&!t.scope.includes(e.scope))&&!(e.type&&!t.types.includes(e.type)))))})]}),(0,mu.jsxs)(Pw,{value:s,children:[(0,mu.jsx)(sx,{title:"plugin.team_pull_requests.all.title"}),(0,mu.jsx)(Pw,{value:o,children:(0,mu.jsx)(uL,{rows:o})}),(0,mu.jsxs)(tS,{content:o,watch:"".concat(c).concat(n).concat(PT.hash),children:[(0,mu.jsx)(cL,{mode:n,rowsForExcel:o}),(0,mu.jsx)(Hw,{}),(0,mu.jsx)(KC,{})]})]}),(0,mu.jsx)(JO,{}),(0,mu.jsxs)(Pw,{value:i,children:[(0,mu.jsx)(sx,{title:"plugin.team_pull_requests.anonymous.title"}),(0,mu.jsx)(Pw,{value:l,children:(0,mu.jsx)(uL,{rows:l})}),(0,mu.jsxs)(tS,{content:l,watch:"".concat(c).concat(n).concat(PT.hash),children:[(0,mu.jsx)(lL,{mode:n,rowsForExcel:l}),(0,mu.jsx)(Hw,{}),(0,mu.jsx)(KC,{})]})]})]})}));class hL{getMenuItems(){return[{id:"pr",group:40,order:180,link:"/team/pr",title:"plugin.team_pull_requests.sidebar",icon:"./assets/menu/pull_request.svg"}]}getPage(e,t){return"/team/pr"===e?(0,mu.jsx)(dL,{mode:null===t||void 0===t?void 0:t.mode}):void 0}getTranslations(){return QO}}hL.id="team_pull_requests";const gL="recommendations_page";function fL(e){let{title:t,recommendations:n}=e;const a=null===n||void 0===n?void 0:n.map((e=>(0,mu.jsx)(sD,{recommendation:e},e.description)));return null!==a&&void 0!==a&&a.length?(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(sx,{title:t}),(0,mu.jsx)("div",{className:gL,children:a})]}):null}const yL=yi((()=>{const e=function(e){return Object.values(e).flat(1).filter((e=>e))}(PT.statisticsByCommits.recommendations.team);if(null===e||void 0===e||!e.length)return(0,mu.jsx)(Hw,{});const t=function(e){return e.reduce(((e,t)=>(e[t.type]||(e[t.type]=[]),e[t.type].push(t),e)),{})}(e);return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(fL,{title:"page.team.recommendations.alert",recommendations:t[co]}),(0,mu.jsx)(fL,{title:"page.team.recommendations.warning",recommendations:t[uo]}),(0,mu.jsx)(fL,{title:"page.team.recommendations.fact",recommendations:t[po]}),(0,mu.jsx)(fL,{title:"page.team.recommendations.info",recommendations:t[ho]})]})})),vL=yL;class _L{getMenuItems(){return[{id:"recommendations",group:50,order:220,link:"/team/recommendations",title:"sidebar.team.recommendations",icon:"./assets/menu/recommendations.svg"}]}getPage(e){return"/team/recommendations"===e?(0,mu.jsx)(vL,{}):void 0}}_L.id="team_recommendations";const kL={ar:"\n\xa7 plugin.team_refactor.sidebar: Refactoring\n\xa7 plugin.team_refactor.title: List of files that may need refactoring\n\xa7 plugin.team_refactor.view.path: Path\n\xa7 plugin.team_refactor.view.lines: Lines in file\n\xa7 plugin.team_refactor.view.totalDays: Days in development\n\xa7 plugin.team_refactor.view.totalTasks: Tasks\n\xa7 plugin.team_refactor.tasks.task: Task\n\xa7 plugin.team_refactor.tasks.description: Description\n\xa7 plugin.team_refactor.charts.title: File analytics\n\xa7 plugin.team_refactor.charts.yearChart.title: When these files were created\n\xa7 plugin.team_refactor.charts.authorChart.title: Who works with them\n",de:"\n\xa7 plugin.team_refactor.sidebar: Refactoring\n\xa7 plugin.team_refactor.title: List of files that may need refactoring\n\xa7 plugin.team_refactor.view.path: Path\n\xa7 plugin.team_refactor.view.lines: Lines in file\n\xa7 plugin.team_refactor.view.totalDays: Days in development\n\xa7 plugin.team_refactor.view.totalTasks: Tasks\n\xa7 plugin.team_refactor.tasks.task: Task\n\xa7 plugin.team_refactor.tasks.description: Description\n\xa7 plugin.team_refactor.charts.title: File analytics\n\xa7 plugin.team_refactor.charts.yearChart.title: When these files were created\n\xa7 plugin.team_refactor.charts.authorChart.title: Who works with them\n",en:"\n\xa7 plugin.team_refactor.sidebar: Refactoring\n\xa7 plugin.team_refactor.title: List of files that may need refactoring\n\xa7 plugin.team_refactor.view.path: Path\n\xa7 plugin.team_refactor.view.lines: Lines in file\n\xa7 plugin.team_refactor.view.totalDays: Days in development\n\xa7 plugin.team_refactor.view.totalTasks: Tasks\n\xa7 plugin.team_refactor.tasks.task: Task\n\xa7 plugin.team_refactor.tasks.description: Description\n\xa7 plugin.team_refactor.charts.title: File analytics\n\xa7 plugin.team_refactor.charts.yearChart.title: When these files were created\n\xa7 plugin.team_refactor.charts.authorChart.title: Who works with them\n",es:"\n\xa7 plugin.team_refactor.sidebar: Refactoring\n\xa7 plugin.team_refactor.title: List of files that may need refactoring\n\xa7 plugin.team_refactor.view.path: Path\n\xa7 plugin.team_refactor.view.lines: Lines in file\n\xa7 plugin.team_refactor.view.totalDays: Days in development\n\xa7 plugin.team_refactor.view.totalTasks: Tasks\n\xa7 plugin.team_refactor.tasks.task: Task\n\xa7 plugin.team_refactor.tasks.description: Description\n\xa7 plugin.team_refactor.charts.title: File analytics\n\xa7 plugin.team_refactor.charts.yearChart.title: When these files were created\n\xa7 plugin.team_refactor.charts.authorChart.title: Who works with them\n",fr:"\n\xa7 plugin.team_refactor.sidebar: Refactoring\n\xa7 plugin.team_refactor.title: List of files that may need refactoring\n\xa7 plugin.team_refactor.view.path: Path\n\xa7 plugin.team_refactor.view.lines: Lines in file\n\xa7 plugin.team_refactor.view.totalDays: Days in development\n\xa7 plugin.team_refactor.view.totalTasks: Tasks\n\xa7 plugin.team_refactor.tasks.task: Task\n\xa7 plugin.team_refactor.tasks.description: Description\n\xa7 plugin.team_refactor.charts.title: File analytics\n\xa7 plugin.team_refactor.charts.yearChart.title: When these files were created\n\xa7 plugin.team_refactor.charts.authorChart.title: Who works with them\n",he:"\n\xa7 plugin.team_refactor.sidebar: Refactoring\n\xa7 plugin.team_refactor.title: List of files that may need refactoring\n\xa7 plugin.team_refactor.view.path: Path\n\xa7 plugin.team_refactor.view.lines: Lines in file\n\xa7 plugin.team_refactor.view.totalDays: Days in development\n\xa7 plugin.team_refactor.view.totalTasks: Tasks\n\xa7 plugin.team_refactor.tasks.task: Task\n\xa7 plugin.team_refactor.tasks.description: Description\n\xa7 plugin.team_refactor.charts.title: File analytics\n\xa7 plugin.team_refactor.charts.yearChart.title: When these files were created\n\xa7 plugin.team_refactor.charts.authorChart.title: Who works with them\n",hi:"\n\xa7 plugin.team_refactor.sidebar: Refactoring\n\xa7 plugin.team_refactor.title: List of files that may need refactoring\n\xa7 plugin.team_refactor.view.path: Path\n\xa7 plugin.team_refactor.view.lines: Lines in file\n\xa7 plugin.team_refactor.view.totalDays: Days in development\n\xa7 plugin.team_refactor.view.totalTasks: Tasks\n\xa7 plugin.team_refactor.tasks.task: Task\n\xa7 plugin.team_refactor.tasks.description: Description\n\xa7 plugin.team_refactor.charts.title: File analytics\n\xa7 plugin.team_refactor.charts.yearChart.title: When these files were created\n\xa7 plugin.team_refactor.charts.authorChart.title: Who works with them\n",ja:"\n\xa7 plugin.team_refactor.sidebar: Refactoring\n\xa7 plugin.team_refactor.title: List of files that may need refactoring\n\xa7 plugin.team_refactor.view.path: Path\n\xa7 plugin.team_refactor.view.lines: Lines in file\n\xa7 plugin.team_refactor.view.totalDays: Days in development\n\xa7 plugin.team_refactor.view.totalTasks: Tasks\n\xa7 plugin.team_refactor.tasks.task: Task\n\xa7 plugin.team_refactor.tasks.description: Description\n\xa7 plugin.team_refactor.charts.title: File analytics\n\xa7 plugin.team_refactor.charts.yearChart.title: When these files were created\n\xa7 plugin.team_refactor.charts.authorChart.title: Who works with them\n",ko:"\n\xa7 plugin.team_refactor.sidebar: Refactoring\n\xa7 plugin.team_refactor.title: List of files that may need refactoring\n\xa7 plugin.team_refactor.view.path: Path\n\xa7 plugin.team_refactor.view.lines: Lines in file\n\xa7 plugin.team_refactor.view.totalDays: Days in development\n\xa7 plugin.team_refactor.view.totalTasks: Tasks\n\xa7 plugin.team_refactor.tasks.task: Task\n\xa7 plugin.team_refactor.tasks.description: Description\n\xa7 plugin.team_refactor.charts.title: File analytics\n\xa7 plugin.team_refactor.charts.yearChart.title: When these files were created\n\xa7 plugin.team_refactor.charts.authorChart.title: Who works with them\n",pt:"\n\xa7 plugin.team_refactor.sidebar: Refactoring\n\xa7 plugin.team_refactor.title: List of files that may need refactoring\n\xa7 plugin.team_refactor.view.path: Path\n\xa7 plugin.team_refactor.view.lines: Lines in file\n\xa7 plugin.team_refactor.view.totalDays: Days in development\n\xa7 plugin.team_refactor.view.totalTasks: Tasks\n\xa7 plugin.team_refactor.tasks.task: Task\n\xa7 plugin.team_refactor.tasks.description: Description\n\xa7 plugin.team_refactor.charts.title: File analytics\n\xa7 plugin.team_refactor.charts.yearChart.title: When these files were created\n\xa7 plugin.team_refactor.charts.authorChart.title: Who works with them\n",ru:"\n\xa7 plugin.team_refactor.sidebar: \u0420\u0435\u0444\u0430\u043a\u0442\u043e\u0440\u0438\u043d\u0433\n\xa7 plugin.team_refactor.title: \u0421\u043f\u0438\u0441\u043e\u043a \u0444\u0430\u0439\u043b\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u043c, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u043d\u0443\u0436\u0435\u043d \u0440\u0435\u0444\u0430\u043a\u0442\u043e\u0440\u0438\u043d\u0433\n\xa7 plugin.team_refactor.view.path: \u041f\u0443\u0442\u044c\n\xa7 plugin.team_refactor.view.lines: \u0421\u0442\u0440\u043e\u043a \u0432 \u0444\u0430\u0439\u043b\u0435\n\xa7 plugin.team_refactor.view.totalDays: \u0414\u043d\u0435\u0439 \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435\n\xa7 plugin.team_refactor.view.totalTasks: \u0417\u0430\u0434\u0430\u0447\n\xa7 plugin.team_refactor.tasks.task: \u0417\u0430\u0434\u0430\u0447\u0430\n\xa7 plugin.team_refactor.tasks.description: \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435\n\xa7 plugin.team_refactor.charts.title: \u0410\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0430 \u043f\u043e \u0444\u0430\u0439\u043b\u0430\u043c\n\xa7 plugin.team_refactor.charts.yearChart.title: \u041a\u043e\u0433\u0434\u0430 \u0431\u044b\u043b\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u044b \u044d\u0442\u0438 \u0444\u0430\u0439\u043b\u044b\n\xa7 plugin.team_refactor.charts.authorChart.title: \u041a\u0442\u043e \u0441 \u043d\u0438\u043c\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442\n",zh:"\n\xa7 plugin.team_refactor.sidebar: Refactoring\n\xa7 plugin.team_refactor.title: List of files that may need refactoring\n\xa7 plugin.team_refactor.view.path: Path\n\xa7 plugin.team_refactor.view.lines: Lines in file\n\xa7 plugin.team_refactor.view.totalDays: Days in development\n\xa7 plugin.team_refactor.view.totalTasks: Tasks\n\xa7 plugin.team_refactor.tasks.task: Task\n\xa7 plugin.team_refactor.tasks.description: Description\n\xa7 plugin.team_refactor.charts.title: File analytics\n\xa7 plugin.team_refactor.charts.yearChart.title: When these files were created\n\xa7 plugin.team_refactor.charts.authorChart.title: Who works with them\n"};function bL(e){let{response:t,updateSort:n,rowsForExcel:a}=e;return t?(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:"details",children:[(0,mu.jsx)(zp,{isFixed:!0,isSortable:!0,template:_p.TASK,properties:"task",title:"plugin.team_refactor.tasks.task"}),(0,mu.jsx)(zp,{properties:"prIds",template:_p.PULL_REQUESTS}),(0,mu.jsx)(zp,{properties:"types",template:_p.TAGS}),(0,mu.jsx)(zp,{properties:"scope",template:_p.TAGS}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_refactor.tasks.description",properties:"description"})]}):null}bL.defaultProps={response:void 0};const wL=bL;function xL(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;if(!t)return null;const i=PT.statisticsByCommits.tasks.totalInfoByName,[o,r,l]=sI(t,["lines","totalTasks","totalDays"]);return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,template:_p.DETAILS,width:40,formatter:e=>{const t=Array.from(null===e||void 0===e?void 0:e.tasks).reverse().map((e=>i.get(e))).filter((e=>e));return(0,mu.jsxs)(tS,{content:t,children:[(0,mu.jsx)(wL,{}),(0,mu.jsx)(KC,{})]})}}),(0,mu.jsx)(zp,{isFixed:!0,template:_p.STRING,properties:"pathString",title:"plugin.team_refactor.view.path",width:400}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"lines",width:90}),(0,mu.jsx)(zp,{isSortable:"lines",title:"plugin.team_refactor.view.lines",properties:"lines",minWidth:150,template:e=>(0,mu.jsx)(LE,{value:e,max:o,suffix:"plugin.team_refactor.lines"})}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"totalDays",width:90}),(0,mu.jsx)(zp,{isSortable:"totalDays",title:"plugin.team_refactor.view.totalDays",properties:"totalDays",minWidth:150,template:e=>(0,mu.jsx)(LE,{value:e,max:l,suffix:"common.statistic.days"})}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"totalTasks",width:90}),(0,mu.jsx)(zp,{isSortable:"totalTasks",title:"plugin.team_refactor.view.totalTasks",properties:"totalTasks",minWidth:150,template:e=>(0,mu.jsx)(LE,{value:e,max:r,suffix:"common.statistic.tasks"})})]})}xL.defaultProps={response:void 0};const TL=xL;const CL=yi((e=>{let{rows:n}=e;if(!n)return null;const a=PT.statisticsByCommits.author.list,[s,i,o]=(0,t.useMemo)((()=>function(e){const t={},n={};return e.forEach((e=>{Vo(t,String(e.createYear)),Vo(n,String(e.createAuthor))})),[Object.keys(t).sort().reverse(),t,n]}(n)),[n]);return(0,mu.jsxs)(yT,{children:[(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_refactor.charts.yearChart.title",suffix:"common.statistic.commits",order:s,limit:1,details:i})}),(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_refactor.charts.authorChart.title",suffix:"common.statistic.commits",order:a,limit:3,details:o})})]})})),SL=yi((e=>{let{mode:t}=e;const n=PT.statisticsByFiles.refactor.files;return null!==n&&void 0!==n&&n.length?(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(sx,{title:"plugin.team_refactor.title"}),(0,mu.jsx)(tS,{content:n,mode:t,children:(0,mu.jsx)(TL,{mode:t})}),(0,mu.jsx)(sx,{title:"plugin.team_refactor.charts.title"}),(0,mu.jsx)(CL,{rows:n})]}):(0,mu.jsx)(Hw,{})}));class jL{getMenuItems(){return[{id:"refactor",group:30,order:150,link:"/team/refactor",title:"plugin.team_refactor.sidebar",icon:"./assets/menu/refactor.svg"}]}getPage(e,t){return"/team/refactor"===e?(0,mu.jsx)(SL,{mode:null===t||void 0===t?void 0:t.mode}):void 0}getTranslations(){return kL}}jL.id="team_refactor";const DL={ar:"\n\xa7 plugin.team_release.sidebar: Release list\n\xa7 plugin.team_release.title: Release list\n\xa7 plugin.team_release.download: CHANGELOG.md\n\xa7 plugin.team_release.view.title: Release\n\xa7 plugin.team_release.view.from: Created date\n\xa7 plugin.team_release.view.to: Completion date\n\xa7 plugin.team_release.view.pr: Tasks\n\xa7 plugin.team_release.view.delay: Review days\n\xa7 plugin.team_release.view.waiting: Days until next release\n\xa7 plugin.team_release.pr.task: Task\n\xa7 plugin.team_release.pr.daysWorkOnTask: Days worked\n\xa7 plugin.team_release.pr.daysInReview: Review days\n\xa7 plugin.team_release.pr.daysAwaitRelease: Days until release end\n\xa7 plugin.team_release.pr.mergeDate: Merge date\n\xa7 plugin.team_release.pr.mergeAuthor: Merged by\n",de:"\n\xa7 plugin.team_release.sidebar: Release list\n\xa7 plugin.team_release.title: Release list\n\xa7 plugin.team_release.download: CHANGELOG.md\n\xa7 plugin.team_release.view.title: Release\n\xa7 plugin.team_release.view.from: Created date\n\xa7 plugin.team_release.view.to: Completion date\n\xa7 plugin.team_release.view.pr: Tasks\n\xa7 plugin.team_release.view.delay: Review days\n\xa7 plugin.team_release.view.waiting: Days until next release\n\xa7 plugin.team_release.pr.task: Task\n\xa7 plugin.team_release.pr.daysWorkOnTask: Days worked\n\xa7 plugin.team_release.pr.daysInReview: Review days\n\xa7 plugin.team_release.pr.daysAwaitRelease: Days until release end\n\xa7 plugin.team_release.pr.mergeDate: Merge date\n\xa7 plugin.team_release.pr.mergeAuthor: Merged by\n",en:"\n\xa7 plugin.team_release.sidebar: Release list\n\xa7 plugin.team_release.title: Release list\n\xa7 plugin.team_release.download: CHANGELOG.md\n\xa7 plugin.team_release.view.title: Release\n\xa7 plugin.team_release.view.from: Created date\n\xa7 plugin.team_release.view.to: Completion date\n\xa7 plugin.team_release.view.pr: Tasks\n\xa7 plugin.team_release.view.delay: Review days\n\xa7 plugin.team_release.view.waiting: Days until next release\n\xa7 plugin.team_release.pr.task: Task\n\xa7 plugin.team_release.pr.daysWorkOnTask: Days worked\n\xa7 plugin.team_release.pr.daysInReview: Review days\n\xa7 plugin.team_release.pr.daysAwaitRelease: Days until release end\n\xa7 plugin.team_release.pr.mergeDate: Merge date\n\xa7 plugin.team_release.pr.mergeAuthor: Merged by\n",es:"\n\xa7 plugin.team_release.sidebar: Release list\n\xa7 plugin.team_release.title: Release list\n\xa7 plugin.team_release.download: CHANGELOG.md\n\xa7 plugin.team_release.view.title: Release\n\xa7 plugin.team_release.view.from: Created date\n\xa7 plugin.team_release.view.to: Completion date\n\xa7 plugin.team_release.view.pr: Tasks\n\xa7 plugin.team_release.view.delay: Review days\n\xa7 plugin.team_release.view.waiting: Days until next release\n\xa7 plugin.team_release.pr.task: Task\n\xa7 plugin.team_release.pr.daysWorkOnTask: Days worked\n\xa7 plugin.team_release.pr.daysInReview: Review days\n\xa7 plugin.team_release.pr.daysAwaitRelease: Days until release end\n\xa7 plugin.team_release.pr.mergeDate: Merge date\n\xa7 plugin.team_release.pr.mergeAuthor: Merged by\n",fr:"\n\xa7 plugin.team_release.sidebar: Release list\n\xa7 plugin.team_release.title: Release list\n\xa7 plugin.team_release.download: CHANGELOG.md\n\xa7 plugin.team_release.view.title: Release\n\xa7 plugin.team_release.view.from: Created date\n\xa7 plugin.team_release.view.to: Completion date\n\xa7 plugin.team_release.view.pr: Tasks\n\xa7 plugin.team_release.view.delay: Review days\n\xa7 plugin.team_release.view.waiting: Days until next release\n\xa7 plugin.team_release.pr.task: Task\n\xa7 plugin.team_release.pr.daysWorkOnTask: Days worked\n\xa7 plugin.team_release.pr.daysInReview: Review days\n\xa7 plugin.team_release.pr.daysAwaitRelease: Days until release end\n\xa7 plugin.team_release.pr.mergeDate: Merge date\n\xa7 plugin.team_release.pr.mergeAuthor: Merged by\n",he:"\n\xa7 plugin.team_release.sidebar: Release list\n\xa7 plugin.team_release.title: Release list\n\xa7 plugin.team_release.download: CHANGELOG.md\n\xa7 plugin.team_release.view.title: Release\n\xa7 plugin.team_release.view.from: Created date\n\xa7 plugin.team_release.view.to: Completion date\n\xa7 plugin.team_release.view.pr: Tasks\n\xa7 plugin.team_release.view.delay: Review days\n\xa7 plugin.team_release.view.waiting: Days until next release\n\xa7 plugin.team_release.pr.task: Task\n\xa7 plugin.team_release.pr.daysWorkOnTask: Days worked\n\xa7 plugin.team_release.pr.daysInReview: Review days\n\xa7 plugin.team_release.pr.daysAwaitRelease: Days until release end\n\xa7 plugin.team_release.pr.mergeDate: Merge date\n\xa7 plugin.team_release.pr.mergeAuthor: Merged by\n",hi:"\n\xa7 plugin.team_release.sidebar: Release list\n\xa7 plugin.team_release.title: Release list\n\xa7 plugin.team_release.download: CHANGELOG.md\n\xa7 plugin.team_release.view.title: Release\n\xa7 plugin.team_release.view.from: Created date\n\xa7 plugin.team_release.view.to: Completion date\n\xa7 plugin.team_release.view.pr: Tasks\n\xa7 plugin.team_release.view.delay: Review days\n\xa7 plugin.team_release.view.waiting: Days until next release\n\xa7 plugin.team_release.pr.task: Task\n\xa7 plugin.team_release.pr.daysWorkOnTask: Days worked\n\xa7 plugin.team_release.pr.daysInReview: Review days\n\xa7 plugin.team_release.pr.daysAwaitRelease: Days until release end\n\xa7 plugin.team_release.pr.mergeDate: Merge date\n\xa7 plugin.team_release.pr.mergeAuthor: Merged by\n",ja:"\n\xa7 plugin.team_release.sidebar: Release list\n\xa7 plugin.team_release.title: Release list\n\xa7 plugin.team_release.download: CHANGELOG.md\n\xa7 plugin.team_release.view.title: Release\n\xa7 plugin.team_release.view.from: Created date\n\xa7 plugin.team_release.view.to: Completion date\n\xa7 plugin.team_release.view.pr: Tasks\n\xa7 plugin.team_release.view.delay: Review days\n\xa7 plugin.team_release.view.waiting: Days until next release\n\xa7 plugin.team_release.pr.task: Task\n\xa7 plugin.team_release.pr.daysWorkOnTask: Days worked\n\xa7 plugin.team_release.pr.daysInReview: Review days\n\xa7 plugin.team_release.pr.daysAwaitRelease: Days until release end\n\xa7 plugin.team_release.pr.mergeDate: Merge date\n\xa7 plugin.team_release.pr.mergeAuthor: Merged by\n",ko:"\n\xa7 plugin.team_release.sidebar: Release list\n\xa7 plugin.team_release.title: Release list\n\xa7 plugin.team_release.download: CHANGELOG.md\n\xa7 plugin.team_release.view.title: Release\n\xa7 plugin.team_release.view.from: Created date\n\xa7 plugin.team_release.view.to: Completion date\n\xa7 plugin.team_release.view.pr: Tasks\n\xa7 plugin.team_release.view.delay: Review days\n\xa7 plugin.team_release.view.waiting: Days until next release\n\xa7 plugin.team_release.pr.task: Task\n\xa7 plugin.team_release.pr.daysWorkOnTask: Days worked\n\xa7 plugin.team_release.pr.daysInReview: Review days\n\xa7 plugin.team_release.pr.daysAwaitRelease: Days until release end\n\xa7 plugin.team_release.pr.mergeDate: Merge date\n\xa7 plugin.team_release.pr.mergeAuthor: Merged by\n",pt:"\n\xa7 plugin.team_release.sidebar: Release list\n\xa7 plugin.team_release.title: Release list\n\xa7 plugin.team_release.download: CHANGELOG.md\n\xa7 plugin.team_release.view.title: Release\n\xa7 plugin.team_release.view.from: Created date\n\xa7 plugin.team_release.view.to: Completion date\n\xa7 plugin.team_release.view.pr: Tasks\n\xa7 plugin.team_release.view.delay: Review days\n\xa7 plugin.team_release.view.waiting: Days until next release\n\xa7 plugin.team_release.pr.task: Task\n\xa7 plugin.team_release.pr.daysWorkOnTask: Days worked\n\xa7 plugin.team_release.pr.daysInReview: Review days\n\xa7 plugin.team_release.pr.daysAwaitRelease: Days until release end\n\xa7 plugin.team_release.pr.mergeDate: Merge date\n\xa7 plugin.team_release.pr.mergeAuthor: Merged by\n",ru:"\n\xa7 plugin.team_release.sidebar: \u0421\u043f\u0438\u0441\u043e\u043a \u0440\u0435\u043b\u0438\u0437\u043e\u0432\n\xa7 plugin.team_release.title: \u0421\u043f\u0438\u0441\u043e\u043a \u0440\u0435\u043b\u0438\u0437\u043e\u0432\n\xa7 plugin.team_release.download: CHANGELOG.md\n\xa7 plugin.team_release.view.title: \u0420\u0435\u043b\u0438\u0437\n\xa7 plugin.team_release.view.from: \u0414\u0430\u0442\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f\n\xa7 plugin.team_release.view.to: \u0414\u0430\u0442\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f\n\xa7 plugin.team_release.view.pr: \u0417\u0430\u0434\u0430\u0447\n\xa7 plugin.team_release.view.delay: \u0414\u043d\u0435\u0439 \u0440\u0435\u0432\u044c\u044e\n\xa7 plugin.team_release.view.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 plugin.team_release.pr.task: \u0417\u0430\u0434\u0430\u0447\u0430\n\xa7 plugin.team_release.pr.daysWorkOnTask: \u0414\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b\n\xa7 plugin.team_release.pr.daysInReview: \u0414\u043d\u0435\u0439 \u0440\u0435\u0432\u044c\u044e\n\xa7 plugin.team_release.pr.daysAwaitRelease: \u0414\u043d\u0435\u0439 \u0434\u043e \u043a\u043e\u043d\u0446\u0430 \u0440\u0435\u043b\u0438\u0437\u0430\n\xa7 plugin.team_release.pr.mergeDate: \u0414\u0430\u0442\u0430 \u0432\u043b\u0438\u0442\u0438\u044f\n\xa7 plugin.team_release.pr.mergeAuthor: \u0412\u043b\u0438\u043b\n",zh:"\n\xa7 plugin.team_release.sidebar: Release list\n\xa7 plugin.team_release.title: Release list\n\xa7 plugin.team_release.download: CHANGELOG.md\n\xa7 plugin.team_release.view.title: Release\n\xa7 plugin.team_release.view.from: Created date\n\xa7 plugin.team_release.view.to: Completion date\n\xa7 plugin.team_release.view.pr: Tasks\n\xa7 plugin.team_release.view.delay: Review days\n\xa7 plugin.team_release.view.waiting: Days until next release\n\xa7 plugin.team_release.pr.task: Task\n\xa7 plugin.team_release.pr.daysWorkOnTask: Days worked\n\xa7 plugin.team_release.pr.daysInReview: Review days\n\xa7 plugin.team_release.pr.daysAwaitRelease: Days until release end\n\xa7 plugin.team_release.pr.mergeDate: Merge date\n\xa7 plugin.team_release.pr.mergeAuthor: Merged by\n"};function AL(e){return(t,n)=>{const a=3.66;if("marker"===t)return n.to?[Math.floor(n.from/a),Math.floor(n.to/a)]:[Math.floor(n.from/a)];let s=30*n.from.month+n.from.dayInMonth,i=30*n.to.month+n.to.dayInMonth;return n.from.year!==n.to.year&&(n.from.year===e?i=365:s=0),[Math.floor(s/a),Math.floor(i/a)]}}function EL(e){return{year:e,lines:[]}}const IL=yi((e=>{let{content:t}=e;if(!t||null===t||void 0===t||!t.length)return null;const n=function(e){const t=new Map;return(e||[]).forEach((e=>{let n=e.from.year,a=t.get(n)||EL(n);a.lines.push(e),t.set(n,a),e.from.year!==e.to.year&&(n=e.to.year,a=t.get(n)||EL(n),a.lines.push(e),t.set(n,a))})),Array.from(t.values()).sort(((e,t)=>t.year-e.year))}(t),[a,s]=YE();return(0,mu.jsx)(Jb,{template:"table",children:(0,mu.jsxs)(Wp,{rows:n,children:[(0,mu.jsx)(zp,{template:_p.STRING,width:100,properties:"year"}),(0,mu.jsx)(zp,{title:()=>(0,mu.jsx)(QE,{markersLine:s,markersText:a,formatter:AL()}),template:e=>(0,mu.jsx)(QE,{mode:"circle",markersLine:s,lines:e.lines,formatter:AL(e.year)})})]})})})),NL=IL;function PL(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;if(!t)return null;const[i,o,r]=sI(t,["daysWorkOnTask","daysInReview","daysAwaitRelease"]),l=Math.max(i,o,r);return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:s,type:"print"===s?"cards":void 0,columnCount:"print"===s?2:void 0,fullScreenMode:"all",children:[(0,mu.jsx)(zp,{isSortable:!0,template:e=>(0,mu.jsx)(jw,{task:e}),title:"plugin.team_release.pr.task",properties:"task",width:120}),(0,mu.jsx)(zp,{width:40,properties:"prExternalId",template:e=>(0,mu.jsx)(Cw,{prId:e})}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"daysWorkOnTask",width:40}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_release.pr.daysWorkOnTask",properties:"daysWorkOnTask",minWidth:100,template:e=>(0,mu.jsx)(LE,{value:e,max:l,suffix:"common.statistic.days"})}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"daysInReview",width:40}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_release.pr.daysInReview",properties:"daysInReview",minWidth:100,template:e=>(0,mu.jsx)(LE,{value:e,max:l,suffix:"common.statistic.days"})}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"daysAwaitRelease",width:40}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_release.pr.daysAwaitRelease",properties:"daysAwaitRelease",minWidth:100,template:e=>(0,mu.jsx)(LE,{value:e,max:l,suffix:"common.statistic.days"})}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_release.pr.mergeDate",properties:"dateMerge",formatter:Zi,width:130}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_release.pr.mergeAuthor",properties:"author",width:250})]})}PL.defaultProps={mode:void 0,response:void 0};const RL=PL;function OL(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;if(!t)return null;const i=PT.statisticsByCommits.pr.totalInfoByName,[o,r]=sI(t,["delayInDays","daysAwaitNextRelease"]),l=Math.max(o,r);return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,template:_p.DETAILS,width:40,formatter:e=>{const t=e.prIds.map((e=>i.get(e))).filter((e=>e));return(0,mu.jsxs)(tS,{content:t,children:[(0,mu.jsx)(RL,{mode:"details"}),(0,mu.jsx)(KC,{})]})}}),(0,mu.jsx)(zp,{isFixed:!0,template:_p.STRING,title:"plugin.team_release.view.title",properties:"title",width:200}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_release.view.from",width:150,properties:"dateCreate",formatter:Zi}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_release.view.to",width:150,properties:"dateMerge",formatter:Zi}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.SHORT_NUMBER,title:"plugin.team_release.view.pr",properties:"totalPR"}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"delayInDays"}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_release.view.delay",properties:"delayInDays",minWidth:170,template:e=>(0,mu.jsx)(LE,{value:e,max:l,suffix:"plugin.team_release.view.chart"})}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"daysAwaitNextRelease"}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_release.view.waiting",properties:"daysAwaitNextRelease",minWidth:170,template:e=>(0,mu.jsx)(LE,{value:e,max:l,suffix:"plugin.team_release.view.chart"})})]})}OL.defaultProps={response:void 0};const LL=OL;function ML(e,t){const n=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(n).sort().map((e=>{const a=n[e].map((e=>function(e,t){var n,a;const s=e.message||"";let i=s.substring(s.lastIndexOf(":")+2).replace(e.task,"").trim();const o=(null===so||void 0===so||null===(n=so.config)||void 0===n?void 0:n.prefixForTask)||"/",r="#"===(null===(a=e.task)||void 0===a?void 0:a[0])?e.task.replace("#",""):e.task,l=t.get(r),m=(null===l||void 0===l?void 0:l.task)||r;return i=-1!==i.indexOf("pull request")?(null===l||void 0===l?void 0:l.comments)||"":i,m||i?"- [".concat(m,"](").concat(o).concat(m,") ").concat(function(e){var t;const n=e||"",a=(null===n||void 0===n||null===(t=n[0])||void 0===t?void 0:t.toUpperCase())||"";return"".concat(a).concat((null===n||void 0===n?void 0:n.slice(1))||"")}(i)):""}(e,t))).filter((e=>e)).join("\n");return e?"\n### ".concat(e,"\n").concat(a):"\n".concat(a)})).join("\n")}function FL(){const e=function(){const e=PT.statisticsByCommits.release.totalInfo,t=PT.statisticsByCommits.pr.totalInfoByName,n=e.map((e=>{const n=to(e.dateMerge),a=ML(e.prIds.map((e=>t.get(e))).filter((e=>e)),PT.statisticsByCommits.tasks.totalInfoByName);return"\n## [".concat(e.title,"] - ").concat(n,"\n").concat(a)})).join("\n");return"# Change Log\n".concat(n)}();wb(new Blob([e],{type:"text/csv;charset=windows-utf-8;"}),"CHANGELOG.md")}const WL="team_release_download",qL=yi((e=>{let{mode:t}=e;const{t:n}=_u(),a=PT.statisticsByCommits.release.totalInfo;return(null===a||void 0===a?void 0:a.length)<2?"print"!==t?(0,mu.jsx)(Hw,{}):null:(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(NL,{content:a}),(0,mu.jsx)(Pw,{value:"print"!==t,children:(0,mu.jsx)(Gu,{mode:["slim"],className:WL,onClick:FL,children:n("plugin.team_release.download")})}),(0,mu.jsx)(Pw,{value:"print"===t,children:(0,mu.jsx)(sx,{title:"plugin.team_release.title"})}),(0,mu.jsxs)(tS,{content:a,mode:t,watch:"".concat(t).concat(PT.hash),children:[(0,mu.jsx)(LL,{mode:t,rowsForExcel:a}),(0,mu.jsx)(KC,{})]})]})})),zL=qL;class BL{getMenuItems(){return[{id:"release",group:40,order:160,link:"/team/release",title:"plugin.team_release.sidebar",icon:"./assets/menu/release.svg"}]}getPage(e,t){return"/team/release"===e?(0,mu.jsx)(zL,{mode:null===t||void 0===t?void 0:t.mode}):void 0}getTranslations(){return DL}}BL.id="team_release";const UL={ar:"\n\xa7 plugin.team_scope.sidebar: Features\n\xa7 plugin.team_scope.title: Feature statistics\n\xa7 plugin.team_scope.scope: Feature\n\xa7 plugin.team_scope.unknown: (feature is not labeled)\n\xa7 plugin.team_scope.days: Work days\n\xa7 plugin.team_scope.authorsDays: Person days\n\xa7 plugin.team_scope.tasks: Tasks\n\xa7 plugin.team_scope.lastCommit: Last commit\n\xa7 plugin.team_scope.commits: Commits\n\xa7 plugin.team_scope.authors: Personal contribution\n\xa7 plugin.team_scope.cost: Cost\n\xa7 plugin.team_scope.details.cards: General feature information\n\xa7 plugin.team_scope.details.charts: Who contributed\n\xa7 plugin.team_scope.details.tasks: List of tasks within which changes were made\n\xa7 plugin.team_scope.details.commits: List of commits matching the search filters\n\xa7 plugin.team_scope.cards.firstCommit: first commit\n\xa7 plugin.team_scope.cards.lastCommit: last commit\n\xa7 plugin.team_scope.cards.totalDays.title: total work duration\n\xa7 plugin.team_scope.cards.totalDays.description: Total development time from the first to the last commit.\n\xa7 plugin.team_scope.cards.totalDaysWorked.title: actual days worked\n\xa7 plugin.team_scope.cards.totalDaysWorked.description: Days when the found commits were made.\n\xa7 plugin.team_scope.cards.totalCommits.title: commits found\n\xa7 plugin.team_scope.cards.totalCommits.description: Commits that match the search filter specified above. Further calculations are based on them.\n\xa7 plugin.team_scope.cards.totalTasks.title: tasks affected\n\xa7 plugin.team_scope.cards.totalTasks.description: Unique task IDs found in commit messages.\n\xa7 plugin.team_scope.cards.authorsDays.title: person days\n\xa7 plugin.team_scope.cards.authorsDays.description: A unit of working time equal to one day of work by one staff member.\n\xa7 plugin.team_scope.cards.cost.title: estimated cost\n\xa7 plugin.team_scope.cards.cost.description: Person days spent are multiplied by the average salary.\n\xa7 plugin.team_commits.chart.commits.title: Who made commits\n\xa7 plugin.team_commits.chart.tasks.title: Who did tasks\n\xa7 plugin.team_commits.chart.types.title: Commit types\n\xa7 plugin.team_commits.chart.companies.title: Companies on whose behalf commits were made\n\xa7 plugin.team_scope.calculator.title: Feature estimation calculator\n\xa7 plugin.team_scope.calculator.description: Filter the required commits using search. The statistics module will group them into a feature and show its data.\n\xa7 plugin.team_scope.tasks.task: Task\n\xa7 plugin.team_scope.tasks.types: Types\n\xa7 plugin.team_scope.tasks.description: Description\n\xa7 plugin.team_scope.commits.author: Staff member\n\xa7 plugin.team_scope.commits.message: Commit message\n",de:"\n\xa7 plugin.team_scope.sidebar: Features\n\xa7 plugin.team_scope.title: Feature statistics\n\xa7 plugin.team_scope.scope: Feature\n\xa7 plugin.team_scope.unknown: (feature is not labeled)\n\xa7 plugin.team_scope.days: Work days\n\xa7 plugin.team_scope.authorsDays: Person days\n\xa7 plugin.team_scope.tasks: Tasks\n\xa7 plugin.team_scope.lastCommit: Last commit\n\xa7 plugin.team_scope.commits: Commits\n\xa7 plugin.team_scope.authors: Personal contribution\n\xa7 plugin.team_scope.cost: Cost\n\xa7 plugin.team_scope.details.cards: General feature information\n\xa7 plugin.team_scope.details.charts: Who contributed\n\xa7 plugin.team_scope.details.tasks: List of tasks within which changes were made\n\xa7 plugin.team_scope.details.commits: List of commits matching the search filters\n\xa7 plugin.team_scope.cards.firstCommit: first commit\n\xa7 plugin.team_scope.cards.lastCommit: last commit\n\xa7 plugin.team_scope.cards.totalDays.title: total work duration\n\xa7 plugin.team_scope.cards.totalDays.description: Total development time from the first to the last commit.\n\xa7 plugin.team_scope.cards.totalDaysWorked.title: actual days worked\n\xa7 plugin.team_scope.cards.totalDaysWorked.description: Days when the found commits were made.\n\xa7 plugin.team_scope.cards.totalCommits.title: commits found\n\xa7 plugin.team_scope.cards.totalCommits.description: Commits that match the search filter specified above. Further calculations are based on them.\n\xa7 plugin.team_scope.cards.totalTasks.title: tasks affected\n\xa7 plugin.team_scope.cards.totalTasks.description: Unique task IDs found in commit messages.\n\xa7 plugin.team_scope.cards.authorsDays.title: person days\n\xa7 plugin.team_scope.cards.authorsDays.description: A unit of working time equal to one day of work by one staff member.\n\xa7 plugin.team_scope.cards.cost.title: estimated cost\n\xa7 plugin.team_scope.cards.cost.description: Person days spent are multiplied by the average salary.\n\xa7 plugin.team_commits.chart.commits.title: Who made commits\n\xa7 plugin.team_commits.chart.tasks.title: Who did tasks\n\xa7 plugin.team_commits.chart.types.title: Commit types\n\xa7 plugin.team_commits.chart.companies.title: Companies on whose behalf commits were made\n\xa7 plugin.team_scope.calculator.title: Feature estimation calculator\n\xa7 plugin.team_scope.calculator.description: Filter the required commits using search. The statistics module will group them into a feature and show its data.\n\xa7 plugin.team_scope.tasks.task: Task\n\xa7 plugin.team_scope.tasks.types: Types\n\xa7 plugin.team_scope.tasks.description: Description\n\xa7 plugin.team_scope.commits.author: Staff member\n\xa7 plugin.team_scope.commits.message: Commit message\n",en:"\n\xa7 plugin.team_scope.sidebar: Features\n\xa7 plugin.team_scope.title: Feature statistics\n\xa7 plugin.team_scope.scope: Feature\n\xa7 plugin.team_scope.unknown: (feature is not labeled)\n\xa7 plugin.team_scope.days: Work days\n\xa7 plugin.team_scope.authorsDays: Person days\n\xa7 plugin.team_scope.tasks: Tasks\n\xa7 plugin.team_scope.lastCommit: Last commit\n\xa7 plugin.team_scope.commits: Commits\n\xa7 plugin.team_scope.authors: Personal contribution\n\xa7 plugin.team_scope.cost: Cost\n\xa7 plugin.team_scope.details.cards: General feature information\n\xa7 plugin.team_scope.details.charts: Who contributed\n\xa7 plugin.team_scope.details.tasks: List of tasks within which changes were made\n\xa7 plugin.team_scope.details.commits: List of commits matching the search filters\n\xa7 plugin.team_scope.cards.firstCommit: first commit\n\xa7 plugin.team_scope.cards.lastCommit: last commit\n\xa7 plugin.team_scope.cards.totalDays.title: total work duration\n\xa7 plugin.team_scope.cards.totalDays.description: Total development time from the first to the last commit.\n\xa7 plugin.team_scope.cards.totalDaysWorked.title: actual days worked\n\xa7 plugin.team_scope.cards.totalDaysWorked.description: Days when the found commits were made.\n\xa7 plugin.team_scope.cards.totalCommits.title: commits found\n\xa7 plugin.team_scope.cards.totalCommits.description: Commits that match the search filter specified above. Further calculations are based on them.\n\xa7 plugin.team_scope.cards.totalTasks.title: tasks affected\n\xa7 plugin.team_scope.cards.totalTasks.description: Unique task IDs found in commit messages.\n\xa7 plugin.team_scope.cards.authorsDays.title: person days\n\xa7 plugin.team_scope.cards.authorsDays.description: A unit of working time equal to one day of work by one staff member.\n\xa7 plugin.team_scope.cards.cost.title: estimated cost\n\xa7 plugin.team_scope.cards.cost.description: Person days spent are multiplied by the average salary.\n\xa7 plugin.team_commits.chart.commits.title: Who made commits\n\xa7 plugin.team_commits.chart.tasks.title: Who did tasks\n\xa7 plugin.team_commits.chart.types.title: Commit types\n\xa7 plugin.team_commits.chart.companies.title: Companies on whose behalf commits were made\n\xa7 plugin.team_scope.calculator.title: Feature estimation calculator\n\xa7 plugin.team_scope.calculator.description: Filter the required commits using search. The statistics module will group them into a feature and show its data.\n\xa7 plugin.team_scope.tasks.task: Task\n\xa7 plugin.team_scope.tasks.types: Types\n\xa7 plugin.team_scope.tasks.description: Description\n\xa7 plugin.team_scope.commits.author: Staff member\n\xa7 plugin.team_scope.commits.message: Commit message\n",es:"\n\xa7 plugin.team_scope.sidebar: Features\n\xa7 plugin.team_scope.title: Feature statistics\n\xa7 plugin.team_scope.scope: Feature\n\xa7 plugin.team_scope.unknown: (feature is not labeled)\n\xa7 plugin.team_scope.days: Work days\n\xa7 plugin.team_scope.authorsDays: Person days\n\xa7 plugin.team_scope.tasks: Tasks\n\xa7 plugin.team_scope.lastCommit: Last commit\n\xa7 plugin.team_scope.commits: Commits\n\xa7 plugin.team_scope.authors: Personal contribution\n\xa7 plugin.team_scope.cost: Cost\n\xa7 plugin.team_scope.details.cards: General feature information\n\xa7 plugin.team_scope.details.charts: Who contributed\n\xa7 plugin.team_scope.details.tasks: List of tasks within which changes were made\n\xa7 plugin.team_scope.details.commits: List of commits matching the search filters\n\xa7 plugin.team_scope.cards.firstCommit: first commit\n\xa7 plugin.team_scope.cards.lastCommit: last commit\n\xa7 plugin.team_scope.cards.totalDays.title: total work duration\n\xa7 plugin.team_scope.cards.totalDays.description: Total development time from the first to the last commit.\n\xa7 plugin.team_scope.cards.totalDaysWorked.title: actual days worked\n\xa7 plugin.team_scope.cards.totalDaysWorked.description: Days when the found commits were made.\n\xa7 plugin.team_scope.cards.totalCommits.title: commits found\n\xa7 plugin.team_scope.cards.totalCommits.description: Commits that match the search filter specified above. Further calculations are based on them.\n\xa7 plugin.team_scope.cards.totalTasks.title: tasks affected\n\xa7 plugin.team_scope.cards.totalTasks.description: Unique task IDs found in commit messages.\n\xa7 plugin.team_scope.cards.authorsDays.title: person days\n\xa7 plugin.team_scope.cards.authorsDays.description: A unit of working time equal to one day of work by one staff member.\n\xa7 plugin.team_scope.cards.cost.title: estimated cost\n\xa7 plugin.team_scope.cards.cost.description: Person days spent are multiplied by the average salary.\n\xa7 plugin.team_commits.chart.commits.title: Who made commits\n\xa7 plugin.team_commits.chart.tasks.title: Who did tasks\n\xa7 plugin.team_commits.chart.types.title: Commit types\n\xa7 plugin.team_commits.chart.companies.title: Companies on whose behalf commits were made\n\xa7 plugin.team_scope.calculator.title: Feature estimation calculator\n\xa7 plugin.team_scope.calculator.description: Filter the required commits using search. The statistics module will group them into a feature and show its data.\n\xa7 plugin.team_scope.tasks.task: Task\n\xa7 plugin.team_scope.tasks.types: Types\n\xa7 plugin.team_scope.tasks.description: Description\n\xa7 plugin.team_scope.commits.author: Staff member\n\xa7 plugin.team_scope.commits.message: Commit message\n",fr:"\n\xa7 plugin.team_scope.sidebar: Features\n\xa7 plugin.team_scope.title: Feature statistics\n\xa7 plugin.team_scope.scope: Feature\n\xa7 plugin.team_scope.unknown: (feature is not labeled)\n\xa7 plugin.team_scope.days: Work days\n\xa7 plugin.team_scope.authorsDays: Person days\n\xa7 plugin.team_scope.tasks: Tasks\n\xa7 plugin.team_scope.lastCommit: Last commit\n\xa7 plugin.team_scope.commits: Commits\n\xa7 plugin.team_scope.authors: Personal contribution\n\xa7 plugin.team_scope.cost: Cost\n\xa7 plugin.team_scope.details.cards: General feature information\n\xa7 plugin.team_scope.details.charts: Who contributed\n\xa7 plugin.team_scope.details.tasks: List of tasks within which changes were made\n\xa7 plugin.team_scope.details.commits: List of commits matching the search filters\n\xa7 plugin.team_scope.cards.firstCommit: first commit\n\xa7 plugin.team_scope.cards.lastCommit: last commit\n\xa7 plugin.team_scope.cards.totalDays.title: total work duration\n\xa7 plugin.team_scope.cards.totalDays.description: Total development time from the first to the last commit.\n\xa7 plugin.team_scope.cards.totalDaysWorked.title: actual days worked\n\xa7 plugin.team_scope.cards.totalDaysWorked.description: Days when the found commits were made.\n\xa7 plugin.team_scope.cards.totalCommits.title: commits found\n\xa7 plugin.team_scope.cards.totalCommits.description: Commits that match the search filter specified above. Further calculations are based on them.\n\xa7 plugin.team_scope.cards.totalTasks.title: tasks affected\n\xa7 plugin.team_scope.cards.totalTasks.description: Unique task IDs found in commit messages.\n\xa7 plugin.team_scope.cards.authorsDays.title: person days\n\xa7 plugin.team_scope.cards.authorsDays.description: A unit of working time equal to one day of work by one staff member.\n\xa7 plugin.team_scope.cards.cost.title: estimated cost\n\xa7 plugin.team_scope.cards.cost.description: Person days spent are multiplied by the average salary.\n\xa7 plugin.team_commits.chart.commits.title: Who made commits\n\xa7 plugin.team_commits.chart.tasks.title: Who did tasks\n\xa7 plugin.team_commits.chart.types.title: Commit types\n\xa7 plugin.team_commits.chart.companies.title: Companies on whose behalf commits were made\n\xa7 plugin.team_scope.calculator.title: Feature estimation calculator\n\xa7 plugin.team_scope.calculator.description: Filter the required commits using search. The statistics module will group them into a feature and show its data.\n\xa7 plugin.team_scope.tasks.task: Task\n\xa7 plugin.team_scope.tasks.types: Types\n\xa7 plugin.team_scope.tasks.description: Description\n\xa7 plugin.team_scope.commits.author: Staff member\n\xa7 plugin.team_scope.commits.message: Commit message\n",he:"\n\xa7 plugin.team_scope.sidebar: Features\n\xa7 plugin.team_scope.title: Feature statistics\n\xa7 plugin.team_scope.scope: Feature\n\xa7 plugin.team_scope.unknown: (feature is not labeled)\n\xa7 plugin.team_scope.days: Work days\n\xa7 plugin.team_scope.authorsDays: Person days\n\xa7 plugin.team_scope.tasks: Tasks\n\xa7 plugin.team_scope.lastCommit: Last commit\n\xa7 plugin.team_scope.commits: Commits\n\xa7 plugin.team_scope.authors: Personal contribution\n\xa7 plugin.team_scope.cost: Cost\n\xa7 plugin.team_scope.details.cards: General feature information\n\xa7 plugin.team_scope.details.charts: Who contributed\n\xa7 plugin.team_scope.details.tasks: List of tasks within which changes were made\n\xa7 plugin.team_scope.details.commits: List of commits matching the search filters\n\xa7 plugin.team_scope.cards.firstCommit: first commit\n\xa7 plugin.team_scope.cards.lastCommit: last commit\n\xa7 plugin.team_scope.cards.totalDays.title: total work duration\n\xa7 plugin.team_scope.cards.totalDays.description: Total development time from the first to the last commit.\n\xa7 plugin.team_scope.cards.totalDaysWorked.title: actual days worked\n\xa7 plugin.team_scope.cards.totalDaysWorked.description: Days when the found commits were made.\n\xa7 plugin.team_scope.cards.totalCommits.title: commits found\n\xa7 plugin.team_scope.cards.totalCommits.description: Commits that match the search filter specified above. Further calculations are based on them.\n\xa7 plugin.team_scope.cards.totalTasks.title: tasks affected\n\xa7 plugin.team_scope.cards.totalTasks.description: Unique task IDs found in commit messages.\n\xa7 plugin.team_scope.cards.authorsDays.title: person days\n\xa7 plugin.team_scope.cards.authorsDays.description: A unit of working time equal to one day of work by one staff member.\n\xa7 plugin.team_scope.cards.cost.title: estimated cost\n\xa7 plugin.team_scope.cards.cost.description: Person days spent are multiplied by the average salary.\n\xa7 plugin.team_commits.chart.commits.title: Who made commits\n\xa7 plugin.team_commits.chart.tasks.title: Who did tasks\n\xa7 plugin.team_commits.chart.types.title: Commit types\n\xa7 plugin.team_commits.chart.companies.title: Companies on whose behalf commits were made\n\xa7 plugin.team_scope.calculator.title: Feature estimation calculator\n\xa7 plugin.team_scope.calculator.description: Filter the required commits using search. The statistics module will group them into a feature and show its data.\n\xa7 plugin.team_scope.tasks.task: Task\n\xa7 plugin.team_scope.tasks.types: Types\n\xa7 plugin.team_scope.tasks.description: Description\n\xa7 plugin.team_scope.commits.author: Staff member\n\xa7 plugin.team_scope.commits.message: Commit message\n",hi:"\n\xa7 plugin.team_scope.sidebar: Features\n\xa7 plugin.team_scope.title: Feature statistics\n\xa7 plugin.team_scope.scope: Feature\n\xa7 plugin.team_scope.unknown: (feature is not labeled)\n\xa7 plugin.team_scope.days: Work days\n\xa7 plugin.team_scope.authorsDays: Person days\n\xa7 plugin.team_scope.tasks: Tasks\n\xa7 plugin.team_scope.lastCommit: Last commit\n\xa7 plugin.team_scope.commits: Commits\n\xa7 plugin.team_scope.authors: Personal contribution\n\xa7 plugin.team_scope.cost: Cost\n\xa7 plugin.team_scope.details.cards: General feature information\n\xa7 plugin.team_scope.details.charts: Who contributed\n\xa7 plugin.team_scope.details.tasks: List of tasks within which changes were made\n\xa7 plugin.team_scope.details.commits: List of commits matching the search filters\n\xa7 plugin.team_scope.cards.firstCommit: first commit\n\xa7 plugin.team_scope.cards.lastCommit: last commit\n\xa7 plugin.team_scope.cards.totalDays.title: total work duration\n\xa7 plugin.team_scope.cards.totalDays.description: Total development time from the first to the last commit.\n\xa7 plugin.team_scope.cards.totalDaysWorked.title: actual days worked\n\xa7 plugin.team_scope.cards.totalDaysWorked.description: Days when the found commits were made.\n\xa7 plugin.team_scope.cards.totalCommits.title: commits found\n\xa7 plugin.team_scope.cards.totalCommits.description: Commits that match the search filter specified above. Further calculations are based on them.\n\xa7 plugin.team_scope.cards.totalTasks.title: tasks affected\n\xa7 plugin.team_scope.cards.totalTasks.description: Unique task IDs found in commit messages.\n\xa7 plugin.team_scope.cards.authorsDays.title: person days\n\xa7 plugin.team_scope.cards.authorsDays.description: A unit of working time equal to one day of work by one staff member.\n\xa7 plugin.team_scope.cards.cost.title: estimated cost\n\xa7 plugin.team_scope.cards.cost.description: Person days spent are multiplied by the average salary.\n\xa7 plugin.team_commits.chart.commits.title: Who made commits\n\xa7 plugin.team_commits.chart.tasks.title: Who did tasks\n\xa7 plugin.team_commits.chart.types.title: Commit types\n\xa7 plugin.team_commits.chart.companies.title: Companies on whose behalf commits were made\n\xa7 plugin.team_scope.calculator.title: Feature estimation calculator\n\xa7 plugin.team_scope.calculator.description: Filter the required commits using search. The statistics module will group them into a feature and show its data.\n\xa7 plugin.team_scope.tasks.task: Task\n\xa7 plugin.team_scope.tasks.types: Types\n\xa7 plugin.team_scope.tasks.description: Description\n\xa7 plugin.team_scope.commits.author: Staff member\n\xa7 plugin.team_scope.commits.message: Commit message\n",ja:"\n\xa7 plugin.team_scope.sidebar: Features\n\xa7 plugin.team_scope.title: Feature statistics\n\xa7 plugin.team_scope.scope: Feature\n\xa7 plugin.team_scope.unknown: (feature is not labeled)\n\xa7 plugin.team_scope.days: Work days\n\xa7 plugin.team_scope.authorsDays: Person days\n\xa7 plugin.team_scope.tasks: Tasks\n\xa7 plugin.team_scope.lastCommit: Last commit\n\xa7 plugin.team_scope.commits: Commits\n\xa7 plugin.team_scope.authors: Personal contribution\n\xa7 plugin.team_scope.cost: Cost\n\xa7 plugin.team_scope.details.cards: General feature information\n\xa7 plugin.team_scope.details.charts: Who contributed\n\xa7 plugin.team_scope.details.tasks: List of tasks within which changes were made\n\xa7 plugin.team_scope.details.commits: List of commits matching the search filters\n\xa7 plugin.team_scope.cards.firstCommit: first commit\n\xa7 plugin.team_scope.cards.lastCommit: last commit\n\xa7 plugin.team_scope.cards.totalDays.title: total work duration\n\xa7 plugin.team_scope.cards.totalDays.description: Total development time from the first to the last commit.\n\xa7 plugin.team_scope.cards.totalDaysWorked.title: actual days worked\n\xa7 plugin.team_scope.cards.totalDaysWorked.description: Days when the found commits were made.\n\xa7 plugin.team_scope.cards.totalCommits.title: commits found\n\xa7 plugin.team_scope.cards.totalCommits.description: Commits that match the search filter specified above. Further calculations are based on them.\n\xa7 plugin.team_scope.cards.totalTasks.title: tasks affected\n\xa7 plugin.team_scope.cards.totalTasks.description: Unique task IDs found in commit messages.\n\xa7 plugin.team_scope.cards.authorsDays.title: person days\n\xa7 plugin.team_scope.cards.authorsDays.description: A unit of working time equal to one day of work by one staff member.\n\xa7 plugin.team_scope.cards.cost.title: estimated cost\n\xa7 plugin.team_scope.cards.cost.description: Person days spent are multiplied by the average salary.\n\xa7 plugin.team_commits.chart.commits.title: Who made commits\n\xa7 plugin.team_commits.chart.tasks.title: Who did tasks\n\xa7 plugin.team_commits.chart.types.title: Commit types\n\xa7 plugin.team_commits.chart.companies.title: Companies on whose behalf commits were made\n\xa7 plugin.team_scope.calculator.title: Feature estimation calculator\n\xa7 plugin.team_scope.calculator.description: Filter the required commits using search. The statistics module will group them into a feature and show its data.\n\xa7 plugin.team_scope.tasks.task: Task\n\xa7 plugin.team_scope.tasks.types: Types\n\xa7 plugin.team_scope.tasks.description: Description\n\xa7 plugin.team_scope.commits.author: Staff member\n\xa7 plugin.team_scope.commits.message: Commit message\n",ko:"\n\xa7 plugin.team_scope.sidebar: Features\n\xa7 plugin.team_scope.title: Feature statistics\n\xa7 plugin.team_scope.scope: Feature\n\xa7 plugin.team_scope.unknown: (feature is not labeled)\n\xa7 plugin.team_scope.days: Work days\n\xa7 plugin.team_scope.authorsDays: Person days\n\xa7 plugin.team_scope.tasks: Tasks\n\xa7 plugin.team_scope.lastCommit: Last commit\n\xa7 plugin.team_scope.commits: Commits\n\xa7 plugin.team_scope.authors: Personal contribution\n\xa7 plugin.team_scope.cost: Cost\n\xa7 plugin.team_scope.details.cards: General feature information\n\xa7 plugin.team_scope.details.charts: Who contributed\n\xa7 plugin.team_scope.details.tasks: List of tasks within which changes were made\n\xa7 plugin.team_scope.details.commits: List of commits matching the search filters\n\xa7 plugin.team_scope.cards.firstCommit: first commit\n\xa7 plugin.team_scope.cards.lastCommit: last commit\n\xa7 plugin.team_scope.cards.totalDays.title: total work duration\n\xa7 plugin.team_scope.cards.totalDays.description: Total development time from the first to the last commit.\n\xa7 plugin.team_scope.cards.totalDaysWorked.title: actual days worked\n\xa7 plugin.team_scope.cards.totalDaysWorked.description: Days when the found commits were made.\n\xa7 plugin.team_scope.cards.totalCommits.title: commits found\n\xa7 plugin.team_scope.cards.totalCommits.description: Commits that match the search filter specified above. Further calculations are based on them.\n\xa7 plugin.team_scope.cards.totalTasks.title: tasks affected\n\xa7 plugin.team_scope.cards.totalTasks.description: Unique task IDs found in commit messages.\n\xa7 plugin.team_scope.cards.authorsDays.title: person days\n\xa7 plugin.team_scope.cards.authorsDays.description: A unit of working time equal to one day of work by one staff member.\n\xa7 plugin.team_scope.cards.cost.title: estimated cost\n\xa7 plugin.team_scope.cards.cost.description: Person days spent are multiplied by the average salary.\n\xa7 plugin.team_commits.chart.commits.title: Who made commits\n\xa7 plugin.team_commits.chart.tasks.title: Who did tasks\n\xa7 plugin.team_commits.chart.types.title: Commit types\n\xa7 plugin.team_commits.chart.companies.title: Companies on whose behalf commits were made\n\xa7 plugin.team_scope.calculator.title: Feature estimation calculator\n\xa7 plugin.team_scope.calculator.description: Filter the required commits using search. The statistics module will group them into a feature and show its data.\n\xa7 plugin.team_scope.tasks.task: Task\n\xa7 plugin.team_scope.tasks.types: Types\n\xa7 plugin.team_scope.tasks.description: Description\n\xa7 plugin.team_scope.commits.author: Staff member\n\xa7 plugin.team_scope.commits.message: Commit message\n",pt:"\n\xa7 plugin.team_scope.sidebar: Features\n\xa7 plugin.team_scope.title: Feature statistics\n\xa7 plugin.team_scope.scope: Feature\n\xa7 plugin.team_scope.unknown: (feature is not labeled)\n\xa7 plugin.team_scope.days: Work days\n\xa7 plugin.team_scope.authorsDays: Person days\n\xa7 plugin.team_scope.tasks: Tasks\n\xa7 plugin.team_scope.lastCommit: Last commit\n\xa7 plugin.team_scope.commits: Commits\n\xa7 plugin.team_scope.authors: Personal contribution\n\xa7 plugin.team_scope.cost: Cost\n\xa7 plugin.team_scope.details.cards: General feature information\n\xa7 plugin.team_scope.details.charts: Who contributed\n\xa7 plugin.team_scope.details.tasks: List of tasks within which changes were made\n\xa7 plugin.team_scope.details.commits: List of commits matching the search filters\n\xa7 plugin.team_scope.cards.firstCommit: first commit\n\xa7 plugin.team_scope.cards.lastCommit: last commit\n\xa7 plugin.team_scope.cards.totalDays.title: total work duration\n\xa7 plugin.team_scope.cards.totalDays.description: Total development time from the first to the last commit.\n\xa7 plugin.team_scope.cards.totalDaysWorked.title: actual days worked\n\xa7 plugin.team_scope.cards.totalDaysWorked.description: Days when the found commits were made.\n\xa7 plugin.team_scope.cards.totalCommits.title: commits found\n\xa7 plugin.team_scope.cards.totalCommits.description: Commits that match the search filter specified above. Further calculations are based on them.\n\xa7 plugin.team_scope.cards.totalTasks.title: tasks affected\n\xa7 plugin.team_scope.cards.totalTasks.description: Unique task IDs found in commit messages.\n\xa7 plugin.team_scope.cards.authorsDays.title: person days\n\xa7 plugin.team_scope.cards.authorsDays.description: A unit of working time equal to one day of work by one staff member.\n\xa7 plugin.team_scope.cards.cost.title: estimated cost\n\xa7 plugin.team_scope.cards.cost.description: Person days spent are multiplied by the average salary.\n\xa7 plugin.team_commits.chart.commits.title: Who made commits\n\xa7 plugin.team_commits.chart.tasks.title: Who did tasks\n\xa7 plugin.team_commits.chart.types.title: Commit types\n\xa7 plugin.team_commits.chart.companies.title: Companies on whose behalf commits were made\n\xa7 plugin.team_scope.calculator.title: Feature estimation calculator\n\xa7 plugin.team_scope.calculator.description: Filter the required commits using search. The statistics module will group them into a feature and show its data.\n\xa7 plugin.team_scope.tasks.task: Task\n\xa7 plugin.team_scope.tasks.types: Types\n\xa7 plugin.team_scope.tasks.description: Description\n\xa7 plugin.team_scope.commits.author: Staff member\n\xa7 plugin.team_scope.commits.message: Commit message\n",ru:"\n\xa7 plugin.team_scope.sidebar: \u0424\u0438\u0447\u0438\n\xa7 plugin.team_scope.title: \u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u043f\u043e \u0444\u0438\u0447\u0430\u043c\n\xa7 plugin.team_scope.scope: \u0424\u0438\u0447\u0430\n\xa7 plugin.team_scope.unknown: (\u0444\u0438\u0447\u0430 \u043d\u0435 \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d\u0430)\n\xa7 plugin.team_scope.days: \u0420\u0430\u0431. \u0434\u043d\u0435\u0439\n\xa7 plugin.team_scope.authorsDays: \u0427\u0435\u043b\u043e\u0432\u0435\u043a\u043e-\u0434\u043d\u0435\u0439\n\xa7 plugin.team_scope.tasks: \u0417\u0430\u0434\u0430\u0447\n\xa7 plugin.team_scope.lastCommit: \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043a\u043e\u043c\u043c\u0438\u0442\n\xa7 plugin.team_scope.commits: \u041a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.team_scope.authors: \u041f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u0432\u043a\u043b\u0430\u0434\n\xa7 plugin.team_scope.cost: \u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c\n\xa7 plugin.team_scope.details.cards: \u041e\u0431\u0449\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043e \u0444\u0438\u0447\u0435\n\xa7 plugin.team_scope.details.charts: \u041a\u0442\u043e \u0432\u043d\u043e\u0441\u0438\u043b \u0432\u043a\u043b\u0430\u0434\n\xa7 plugin.team_scope.details.tasks: \u0421\u043f\u0438\u0441\u043e\u043a \u0437\u0430\u0434\u0430\u0447, \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0431\u044b\u043b\u0438 \u043f\u0440\u0430\u0432\u043a\u0438\n\xa7 plugin.team_scope.details.commits: \u0421\u043f\u0438\u0441\u043e\u043a \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432, \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u043f\u043e\u0434 \u0444\u0438\u043b\u044c\u0442\u0440\u044b \u043f\u043e\u0438\u0441\u043a\u0430\n\xa7 plugin.team_scope.cards.firstCommit: \u043f\u0435\u0440\u0432\u044b\u0439 \u043a\u043e\u043c\u043c\u0438\u0442\n\xa7 plugin.team_scope.cards.lastCommit: \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043a\u043e\u043c\u043c\u0438\u0442\n\xa7 plugin.team_scope.cards.totalDays.title: \u043e\u0431\u0449\u0430\u044f \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\n\xa7 plugin.team_scope.cards.totalDays.description: \u0412\u0441\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\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.\n\xa7 plugin.team_scope.cards.totalDaysWorked.title: \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0434\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b\n\xa7 plugin.team_scope.cards.totalDaysWorked.description: \u0414\u043d\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u044b\u043b\u0438 \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u044b \u043d\u0430\u0439\u0434\u0435\u043d\u043d\u044b\u0435 \u043a\u043e\u043c\u043c\u0438\u0442\u044b.\n\xa7 plugin.team_scope.cards.totalCommits.title: \u043d\u0430\u0439\u0434\u0435\u043d\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.team_scope.cards.totalCommits.description: \u041a\u043e\u043c\u043c\u0438\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u0444\u0438\u043b\u044c\u0442\u0440\u0443 \u043f\u043e\u0438\u0441\u043a\u0430 \u0437\u0430\u0434\u0430\u043d\u043e\u043c\u0443 \u0432\u044b\u0448\u0435. \u041d\u0430 \u0438\u0445 \u043e\u0441\u043d\u043e\u0432\u0435 \u0432\u0435\u0434\u0451\u0442\u0441\u044f \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0439 \u0440\u0430\u0441\u0447\u0451\u0442.\n\xa7 plugin.team_scope.cards.totalTasks.title: \u0437\u0430\u0442\u0440\u043e\u043d\u0443\u0442\u043e \u0437\u0430\u0434\u0430\u0447\n\xa7 plugin.team_scope.cards.totalTasks.description: \u0423\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u043d\u043e\u043c\u0435\u0440\u0430 \u0437\u0430\u0434\u0430\u0447, \u043d\u0430\u0439\u0434\u0435\u043d\u043d\u044b\u0435 \u0432 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432.\n\xa7 plugin.team_scope.cards.authorsDays.title: \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e-\u0434\u043d\u0435\u0439\n\xa7 plugin.team_scope.cards.authorsDays.description: \u0415\u0434\u0438\u043d\u0438\u0446\u0430 \u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u044f \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0440\u0430\u0432\u043d\u0430\u044f \u043e\u0434\u043d\u043e\u043c\u0443 \u0434\u043d\u044e \u0442\u0440\u0443\u0434\u0430 \u043e\u0434\u043d\u043e\u0433\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430.\n\xa7 plugin.team_scope.cards.cost.title: \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0430\u044f \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c\n\xa7 plugin.team_scope.cards.cost.description: \u0417\u0430\u0442\u0440\u0430\u0447\u0435\u043d\u043d\u044b\u0435 \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e-\u0434\u043d\u0438 \u0443\u043c\u043d\u043e\u0436\u0430\u044e\u0442\u0441\u044f \u043d\u0430 \u0441\u0440\u0435\u0434\u043d\u044e\u044e \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u043d\u0443\u044e \u043f\u043b\u0430\u0442\u0443.\n\xa7 plugin.team_commits.chart.commits.title: \u041a\u0442\u043e \u0434\u0435\u043b\u0430\u043b \u043a\u043e\u043c\u043c\u0438\u0442\u044b\n\xa7 plugin.team_commits.chart.tasks.title: \u041a\u0442\u043e \u0434\u0435\u043b\u0430\u043b \u0437\u0430\u0434\u0430\u0447\u0438\n\xa7 plugin.team_commits.chart.types.title: \u0422\u0438\u043f\u044b \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.team_commits.chart.companies.title: \u041e\u0442 \u043b\u0438\u0446\u0430 \u043a\u0430\u043a\u0438\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439 \u0431\u044b\u043b\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u044b\n\xa7 plugin.team_scope.calculator.title: \u041a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 \u0434\u043b\u044f \u043e\u0446\u0435\u043d\u043a\u0438 \u0444\u0438\u0447\u0438\n\xa7 plugin.team_scope.calculator.description: \u041e\u0442\u0444\u0438\u043b\u044c\u0442\u0440\u0443\u0439 \u043d\u0443\u0436\u043d\u044b\u0435 \u043a\u043e\u043c\u043c\u0438\u0442\u044b \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u043e\u0438\u0441\u043a\u0430. \u041c\u043e\u0434\u0443\u043b\u044c \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0438 \u0441\u0433\u0440\u0443\u043f\u043f\u0438\u0440\u0443\u0435\u0442 \u0438\u0445 \u0432 \u0444\u0438\u0447\u0443 \u0438 \u043f\u043e\u043a\u0430\u0436\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e \u043d\u0435\u0439.\n\xa7 plugin.team_scope.tasks.task: \u0417\u0430\u0434\u0430\u0447\u0430\n\xa7 plugin.team_scope.tasks.types: \u0422\u0438\u043f\u044b\n\xa7 plugin.team_scope.tasks.description: \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435\n\xa7 plugin.team_scope.commits.author: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\n\xa7 plugin.team_scope.commits.message: \u041f\u043e\u0434\u043f\u0438\u0441\u044c\n",zh:"\n\xa7 plugin.team_scope.sidebar: Features\n\xa7 plugin.team_scope.title: Feature statistics\n\xa7 plugin.team_scope.scope: Feature\n\xa7 plugin.team_scope.unknown: (feature is not labeled)\n\xa7 plugin.team_scope.days: Work days\n\xa7 plugin.team_scope.authorsDays: Person days\n\xa7 plugin.team_scope.tasks: Tasks\n\xa7 plugin.team_scope.lastCommit: Last commit\n\xa7 plugin.team_scope.commits: Commits\n\xa7 plugin.team_scope.authors: Personal contribution\n\xa7 plugin.team_scope.cost: Cost\n\xa7 plugin.team_scope.details.cards: General feature information\n\xa7 plugin.team_scope.details.charts: Who contributed\n\xa7 plugin.team_scope.details.tasks: List of tasks within which changes were made\n\xa7 plugin.team_scope.details.commits: List of commits matching the search filters\n\xa7 plugin.team_scope.cards.firstCommit: first commit\n\xa7 plugin.team_scope.cards.lastCommit: last commit\n\xa7 plugin.team_scope.cards.totalDays.title: total work duration\n\xa7 plugin.team_scope.cards.totalDays.description: Total development time from the first to the last commit.\n\xa7 plugin.team_scope.cards.totalDaysWorked.title: actual days worked\n\xa7 plugin.team_scope.cards.totalDaysWorked.description: Days when the found commits were made.\n\xa7 plugin.team_scope.cards.totalCommits.title: commits found\n\xa7 plugin.team_scope.cards.totalCommits.description: Commits that match the search filter specified above. Further calculations are based on them.\n\xa7 plugin.team_scope.cards.totalTasks.title: tasks affected\n\xa7 plugin.team_scope.cards.totalTasks.description: Unique task IDs found in commit messages.\n\xa7 plugin.team_scope.cards.authorsDays.title: person days\n\xa7 plugin.team_scope.cards.authorsDays.description: A unit of working time equal to one day of work by one staff member.\n\xa7 plugin.team_scope.cards.cost.title: estimated cost\n\xa7 plugin.team_scope.cards.cost.description: Person days spent are multiplied by the average salary.\n\xa7 plugin.team_commits.chart.commits.title: Who made commits\n\xa7 plugin.team_commits.chart.tasks.title: Who did tasks\n\xa7 plugin.team_commits.chart.types.title: Commit types\n\xa7 plugin.team_commits.chart.companies.title: Companies on whose behalf commits were made\n\xa7 plugin.team_scope.calculator.title: Feature estimation calculator\n\xa7 plugin.team_scope.calculator.description: Filter the required commits using search. The statistics module will group them into a feature and show its data.\n\xa7 plugin.team_scope.tasks.task: Task\n\xa7 plugin.team_scope.tasks.types: Types\n\xa7 plugin.team_scope.tasks.description: Description\n\xa7 plugin.team_scope.commits.author: Staff member\n\xa7 plugin.team_scope.commits.message: Commit message\n"};const HL=function(e){let{scope:t}=e;return(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(qu,{value:Zi(t.firstCommit),icon:"./assets/cards/day.svg",title:"plugin.team_scope.cards.firstCommit"}),(0,mu.jsx)(qu,{value:Zi(t.lastCommit),icon:"./assets/cards/day.svg",title:"plugin.team_scope.cards.lastCommit"})]}),(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(qu,{value:t.totalDaysWorked,icon:"./assets/cards/work_days2.svg",title:"plugin.team_scope.cards.totalDaysWorked.title"}),(0,mu.jsx)(qu,{value:ao(t.totalDays),icon:"./assets/cards/month.svg",title:"plugin.team_scope.cards.totalDays.title"})]})]})},GL=yi((e=>{let{scope:t}=e;const n=PT.statisticsByCommits.author.list,a=PT.statisticsByCommits.type.list,s=PT.statisticsByCommits.company.totalInfo.map((e=>e.company));return(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(AE,{title:"plugin.team_commits.chart.commits.title",suffix:"common.statistic.commits",order:n,limit:2,details:t.commitsByAuthor}),(0,mu.jsx)(AE,{title:"plugin.team_commits.chart.companies.title",suffix:"common.statistic.commits",limit:1,order:s,details:t.companies})]}),(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(AE,{title:"plugin.team_commits.chart.tasks.title",suffix:"common.statistic.tasks",order:n,limit:2,details:t.tasksByAuthor}),(0,mu.jsx)(AE,{title:"plugin.team_commits.chart.types.title",suffix:"common.statistic.commits",order:a,limit:3,details:t.types})]})]})}));const VL=function(e){let{scope:t}=e;return t?(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(dT,{height:"xxl"}),(0,mu.jsx)(sx,{title:"plugin.team_scope.details.cards"}),(0,mu.jsx)(HL,{scope:t}),(0,mu.jsx)(sx,{title:"plugin.team_scope.details.charts"}),(0,mu.jsx)(GL,{scope:t})]}):null};const KL=function(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;const{text:i}=_u();return t?(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,template:_p.DETAILS,width:40,formatter:e=>(0,mu.jsx)(VL,{scope:e})}),(0,mu.jsx)(zp,{isFixed:!0,isSortable:!0,template:_p.STRING,title:"plugin.team_scope.scope",properties:"scope",width:200,formatter:e=>e||i("plugin.team_scope.unknown")}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.NUMBER,title:"plugin.team_scope.days",properties:"totalDaysWorked"}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.NUMBER,title:"plugin.team_scope.authorsDays",properties:"totalDaysWorkedByAuthor"}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.SHORT_NUMBER,title:"plugin.team_scope.tasks",properties:"totalTasks"}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.NUMBER,title:"plugin.team_scope.lastCommit",properties:"lastCommit",formatter:Zi}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.NUMBER,title:"plugin.team_scope.commits",properties:"commits"}),(0,mu.jsx)(zp,{title:"plugin.team_scope.authors",properties:"commitsByAuthor",minWidth:150,template:e=>(0,mu.jsx)(LE,{details:e,order:PT.statisticsByCommits.author.list})}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.NUMBER,title:"plugin.team_scope.cost",properties:"cost",formatter:oo})]}):null};const $L=function(e){let{scope:t}=e;return(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(Pu,{value:t.commits,icon:"./assets/cards/commits.svg",title:"plugin.team_scope.cards.totalCommits.title",description:"plugin.team_scope.cards.totalCommits.description"}),(0,mu.jsx)(Pu,{value:t.totalTasks,icon:"./assets/cards/tasks.svg",title:"plugin.team_scope.cards.totalTasks.title",description:"plugin.team_scope.cards.totalTasks.description"})]}),(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(Pu,{value:t.totalDaysWorkedByAuthor,icon:"./assets/cards/dismissal.svg",title:"plugin.team_scope.cards.authorsDays.title",description:"plugin.team_scope.cards.authorsDays.description"}),(0,mu.jsx)(Pu,{value:ro(t.cost),icon:"./assets/cards/money_total.svg",title:"plugin.team_scope.cards.cost.title",description:"plugin.team_scope.cards.cost.description"})]})]})};function YL(e){let{response:t,updateSort:n,rowsForExcel:a}=e;return t?(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,children:[(0,mu.jsx)(zp,{isFixed:!0,isSortable:!0,template:_p.TASK,properties:"task",title:"plugin.team_scope.tasks.task"}),(0,mu.jsx)(zp,{properties:"prIds",template:_p.PULL_REQUESTS}),(0,mu.jsx)(zp,{properties:"types",template:_p.TAGS,title:"plugin.team_scope.tasks.types"}),(0,mu.jsx)(zp,{properties:"scope",template:_p.TAGS}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_scope.tasks.description",properties:"description"})]}):null}YL.defaultProps={response:void 0};const XL=YL;function QL(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;return t?(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"common.statistic.Date",properties:"milliseconds",width:150,formatter:Zi}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_scope.commits.author",properties:"author",width:158}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_scope.commits.message",properties:"message"})]}):null}QL.defaultProps={response:void 0};const JL=QL;const ZL=function(e){let{scope:n,commits:a}=e;const[s,i]=(0,t.useState)(1);if(!n)return null;(0,t.useEffect)((()=>{i(Math.random())}),[n,a]);const o=PT.statisticsByCommits.tasks.totalInfoByName,r=n.tasks.map((e=>o.get(e))).filter((e=>e));return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(dT,{height:"xxl"}),(0,mu.jsx)(sx,{title:"plugin.team_scope.details.cards"}),(0,mu.jsx)($L,{scope:n}),(0,mu.jsx)(HL,{scope:n}),(0,mu.jsx)(sx,{title:"plugin.team_scope.details.charts"}),(0,mu.jsx)(GL,{scope:n}),(0,mu.jsx)(sx,{title:"plugin.team_scope.details.tasks"}),(0,mu.jsxs)(tS,{content:r,watch:s,children:[(0,mu.jsx)(XL,{}),(0,mu.jsx)(KC,{})]}),(0,mu.jsx)(sx,{title:"plugin.team_scope.details.commits"}),(0,mu.jsxs)(tS,{content:a,watch:s,children:[(0,mu.jsx)(JL,{}),(0,mu.jsx)(KC,{})]})]})},eM=new jr;const tM=function(e){let{mode:n}=e;const a=(0,t.useMemo)((()=>[...PT.commits].reverse().filter((e=>!(null!==e&&void 0!==e&&e.commitType)))),[PT.hash]),[s,i]=(0,t.useState)(!1),[o,r]=(0,t.useState)([]),[l,m]=(0,t.useState)(null);return"print"!==n||s?(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsxs)(Pw,{value:"print"!==n,children:[(0,mu.jsx)(sx,{title:"plugin.team_scope.calculator.title"}),(0,mu.jsx)(bw,{translationId:"plugin.team_scope.calculator.description"}),(0,mu.jsx)(dT,{height:"l"}),(0,mu.jsx)(cT,{content:a,properties:"message",examples:["api","http","auth","hack","doc","test","deploy"],elements:["search"],onChange:e=>{const t=e.filter((e=>!(null!==e&&void 0!==e&&e.commitType))),n=null===t||void 0===t?void 0:t.length,s=n>8&&n<a.length;s&&(r(t),m(function(e){return eM.clear(),[...e].reverse().forEach((e=>{eM.addCommit(e)})),eM.updateTotalInfo(),eM.totalInfo[0]}(t))),i(s)}})]}),s?(0,mu.jsx)(ZL,{scope:l,commits:o}):(0,mu.jsx)(Hw,{mode:"search"})]}):null},nM=yi((e=>{var t;let{mode:n}=e;const a=PT.statisticsByCommits.scope.totalInfo;if((null===a||void 0===a?void 0:a.length)<2&&"print"===n)return null;const s=null===(t=PT.statisticsByCommits.recommendations.team)||void 0===t?void 0:t.byScope;return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsxs)(Pw,{value:(null===a||void 0===a?void 0:a.length)>1,children:["fullscreen"!==n&&(0,mu.jsx)(OA,{mode:n,recommendations:s}),(0,mu.jsx)(sx,{title:"plugin.team_scope.title"}),(0,mu.jsxs)(tS,{content:a,mode:n,watch:"".concat(n).concat(PT.hash),children:[(0,mu.jsx)(KL,{mode:n,rowsForExcel:a}),(0,mu.jsx)(KC,{})]})]}),(0,mu.jsx)(tM,{mode:n})]})})),aM=nM;class sM{getMenuItems(){return[{id:"scope",group:10,order:20,link:"/team/scope",title:"sidebar.team.scope",icon:"./assets/menu/team_feat.svg"}]}getPage(e,t){return"/team/scope"===e?(0,mu.jsx)(aM,{mode:null===t||void 0===t?void 0:t.mode}):void 0}getTranslations(){return UL}}sM.id="team_scope";const iM={ar:"\n\xa7 plugin.team_server.sidebar: Email addresses\n\xa7 plugin.team_server.title: Server addresses in logs\n\xa7 plugin.team_server.domain: Domain\n\xa7 plugin.team_server.from: from\n\xa7 plugin.team_server.to: to\n\xa7 plugin.team_server.protocol: Protocol\n\xa7 plugin.team_server.port: Port\n\xa7 plugin.team_server.url: URL\n\xa7 plugin.team_server.service: Code hosting tool\n\xa7 plugin.team_server.type.title: Service\n\xa7 plugin.team_server.type.description: $1 or something similar\n\xa7 plugin.team_server.email.title: Email address list\n\xa7 plugin.team_server.email.typeChart.title: Address types\n\xa7 plugin.team_server.email.typeChart.suffix: email addresses\n\xa7 plugin.team_server.email.authorChart.title: Number of addresses per staff member\n\xa7 plugin.team_server.email.authorChart.suffix: email addresses\n\xa7 plugin.team_server.email.type: Type\n\xa7 plugin.team_server.email.company: Company\n\xa7 plugin.team_server.email.email: Email address\n\xa7 plugin.team_server.email.author: Staff member\n",de:"\n\xa7 plugin.team_server.sidebar: Email addresses\n\xa7 plugin.team_server.title: Server addresses in logs\n\xa7 plugin.team_server.domain: Domain\n\xa7 plugin.team_server.from: from\n\xa7 plugin.team_server.to: to\n\xa7 plugin.team_server.protocol: Protocol\n\xa7 plugin.team_server.port: Port\n\xa7 plugin.team_server.url: URL\n\xa7 plugin.team_server.service: Code hosting tool\n\xa7 plugin.team_server.type.title: Service\n\xa7 plugin.team_server.type.description: $1 or something similar\n\xa7 plugin.team_server.email.title: Email address list\n\xa7 plugin.team_server.email.typeChart.title: Address types\n\xa7 plugin.team_server.email.typeChart.suffix: email addresses\n\xa7 plugin.team_server.email.authorChart.title: Number of addresses per staff member\n\xa7 plugin.team_server.email.authorChart.suffix: email addresses\n\xa7 plugin.team_server.email.type: Type\n\xa7 plugin.team_server.email.company: Company\n\xa7 plugin.team_server.email.email: Email address\n\xa7 plugin.team_server.email.author: Staff member\n",en:"\n\xa7 plugin.team_server.sidebar: Email addresses\n\xa7 plugin.team_server.title: Server addresses in logs\n\xa7 plugin.team_server.domain: Domain\n\xa7 plugin.team_server.from: from\n\xa7 plugin.team_server.to: to\n\xa7 plugin.team_server.protocol: Protocol\n\xa7 plugin.team_server.port: Port\n\xa7 plugin.team_server.url: URL\n\xa7 plugin.team_server.service: Code hosting tool\n\xa7 plugin.team_server.type.title: Service\n\xa7 plugin.team_server.type.description: $1 or something similar\n\xa7 plugin.team_server.email.title: Email address list\n\xa7 plugin.team_server.email.typeChart.title: Address types\n\xa7 plugin.team_server.email.typeChart.suffix: email addresses\n\xa7 plugin.team_server.email.authorChart.title: Number of addresses per staff member\n\xa7 plugin.team_server.email.authorChart.suffix: email addresses\n\xa7 plugin.team_server.email.type: Type\n\xa7 plugin.team_server.email.company: Company\n\xa7 plugin.team_server.email.email: Email address\n\xa7 plugin.team_server.email.author: Staff member\n",es:"\n\xa7 plugin.team_server.sidebar: Email addresses\n\xa7 plugin.team_server.title: Server addresses in logs\n\xa7 plugin.team_server.domain: Domain\n\xa7 plugin.team_server.from: from\n\xa7 plugin.team_server.to: to\n\xa7 plugin.team_server.protocol: Protocol\n\xa7 plugin.team_server.port: Port\n\xa7 plugin.team_server.url: URL\n\xa7 plugin.team_server.service: Code hosting tool\n\xa7 plugin.team_server.type.title: Service\n\xa7 plugin.team_server.type.description: $1 or something similar\n\xa7 plugin.team_server.email.title: Email address list\n\xa7 plugin.team_server.email.typeChart.title: Address types\n\xa7 plugin.team_server.email.typeChart.suffix: email addresses\n\xa7 plugin.team_server.email.authorChart.title: Number of addresses per staff member\n\xa7 plugin.team_server.email.authorChart.suffix: email addresses\n\xa7 plugin.team_server.email.type: Type\n\xa7 plugin.team_server.email.company: Company\n\xa7 plugin.team_server.email.email: Email address\n\xa7 plugin.team_server.email.author: Staff member\n",fr:"\n\xa7 plugin.team_server.sidebar: Email addresses\n\xa7 plugin.team_server.title: Server addresses in logs\n\xa7 plugin.team_server.domain: Domain\n\xa7 plugin.team_server.from: from\n\xa7 plugin.team_server.to: to\n\xa7 plugin.team_server.protocol: Protocol\n\xa7 plugin.team_server.port: Port\n\xa7 plugin.team_server.url: URL\n\xa7 plugin.team_server.service: Code hosting tool\n\xa7 plugin.team_server.type.title: Service\n\xa7 plugin.team_server.type.description: $1 or something similar\n\xa7 plugin.team_server.email.title: Email address list\n\xa7 plugin.team_server.email.typeChart.title: Address types\n\xa7 plugin.team_server.email.typeChart.suffix: email addresses\n\xa7 plugin.team_server.email.authorChart.title: Number of addresses per staff member\n\xa7 plugin.team_server.email.authorChart.suffix: email addresses\n\xa7 plugin.team_server.email.type: Type\n\xa7 plugin.team_server.email.company: Company\n\xa7 plugin.team_server.email.email: Email address\n\xa7 plugin.team_server.email.author: Staff member\n",he:"\n\xa7 plugin.team_server.sidebar: Email addresses\n\xa7 plugin.team_server.title: Server addresses in logs\n\xa7 plugin.team_server.domain: Domain\n\xa7 plugin.team_server.from: from\n\xa7 plugin.team_server.to: to\n\xa7 plugin.team_server.protocol: Protocol\n\xa7 plugin.team_server.port: Port\n\xa7 plugin.team_server.url: URL\n\xa7 plugin.team_server.service: Code hosting tool\n\xa7 plugin.team_server.type.title: Service\n\xa7 plugin.team_server.type.description: $1 or something similar\n\xa7 plugin.team_server.email.title: Email address list\n\xa7 plugin.team_server.email.typeChart.title: Address types\n\xa7 plugin.team_server.email.typeChart.suffix: email addresses\n\xa7 plugin.team_server.email.authorChart.title: Number of addresses per staff member\n\xa7 plugin.team_server.email.authorChart.suffix: email addresses\n\xa7 plugin.team_server.email.type: Type\n\xa7 plugin.team_server.email.company: Company\n\xa7 plugin.team_server.email.email: Email address\n\xa7 plugin.team_server.email.author: Staff member\n",hi:"\n\xa7 plugin.team_server.sidebar: Email addresses\n\xa7 plugin.team_server.title: Server addresses in logs\n\xa7 plugin.team_server.domain: Domain\n\xa7 plugin.team_server.from: from\n\xa7 plugin.team_server.to: to\n\xa7 plugin.team_server.protocol: Protocol\n\xa7 plugin.team_server.port: Port\n\xa7 plugin.team_server.url: URL\n\xa7 plugin.team_server.service: Code hosting tool\n\xa7 plugin.team_server.type.title: Service\n\xa7 plugin.team_server.type.description: $1 or something similar\n\xa7 plugin.team_server.email.title: Email address list\n\xa7 plugin.team_server.email.typeChart.title: Address types\n\xa7 plugin.team_server.email.typeChart.suffix: email addresses\n\xa7 plugin.team_server.email.authorChart.title: Number of addresses per staff member\n\xa7 plugin.team_server.email.authorChart.suffix: email addresses\n\xa7 plugin.team_server.email.type: Type\n\xa7 plugin.team_server.email.company: Company\n\xa7 plugin.team_server.email.email: Email address\n\xa7 plugin.team_server.email.author: Staff member\n",ja:"\n\xa7 plugin.team_server.sidebar: \u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\n\xa7 plugin.team_server.title: \u30ed\u30b0\u5185\u306e\u30b5\u30fc\u30d0\u30fc\u30a2\u30c9\u30ec\u30b9\n\xa7 plugin.team_server.domain: \u30c9\u30e1\u30a4\u30f3\n\xa7 plugin.team_server.from: \u9001\u4fe1\u5143\n\xa7 plugin.team_server.to: \u5b9b\u5148\n\xa7 plugin.team_server.protocol: \u30d7\u30ed\u30c8\u30b3\u30eb\n\xa7 plugin.team_server.port: \u30dd\u30fc\u30c8\n\xa7 plugin.team_server.url: URL\n\xa7 plugin.team_server.service: \u30b3\u30fc\u30c9\u30db\u30b9\u30c6\u30a3\u30f3\u30b0\u30c4\u30fc\u30eb\n\xa7 plugin.team_server.type.title: \u30b5\u30fc\u30d3\u30b9\n\xa7 plugin.team_server.type.description: $1 \u307e\u305f\u306f\u985e\u4f3c\u306e\u30b5\u30fc\u30d3\u30b9\n\xa7 plugin.team_server.email.title: \u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u4e00\u89a7\n\xa7 plugin.team_server.email.typeChart.title: \u30a2\u30c9\u30ec\u30b9\u306e\u7a2e\u985e\n\xa7 plugin.team_server.email.typeChart.suffix: \u4ef6\u306e\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\n\xa7 plugin.team_server.email.authorChart.title: \u30b9\u30bf\u30c3\u30d5\u5225\u306e\u30a2\u30c9\u30ec\u30b9\u6570\n\xa7 plugin.team_server.email.authorChart.suffix: \u4ef6\u306e\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\n\xa7 plugin.team_server.email.type: \u7a2e\u985e\n\xa7 plugin.team_server.email.company: \u4f1a\u793e\n\xa7 plugin.team_server.email.email: \u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\n\xa7 plugin.team_server.email.author: \u30b9\u30bf\u30c3\u30d5\n",ko:"\n\xa7 plugin.team_server.sidebar: \uc774\uba54\uc77c \uc8fc\uc18c\n\xa7 plugin.team_server.title: \ub85c\uadf8\uc5d0 \uae30\ub85d\ub41c \uc11c\ubc84 \uc8fc\uc18c\n\xa7 plugin.team_server.domain: \ub3c4\uba54\uc778\n\xa7 plugin.team_server.from: \ubc1c\uc2e0\n\xa7 plugin.team_server.to: \uc218\uc2e0\n\xa7 plugin.team_server.protocol: \ud504\ub85c\ud1a0\ucf5c\n\xa7 plugin.team_server.port: \ud3ec\ud2b8\n\xa7 plugin.team_server.url: URL\n\xa7 plugin.team_server.service: \ucf54\ub4dc \ud638\uc2a4\ud305 \ub3c4\uad6c\n\xa7 plugin.team_server.type.title: \uc11c\ube44\uc2a4\n\xa7 plugin.team_server.type.description: $1 \ub610\ub294 \uc720\uc0ac\ud55c \uc11c\ube44\uc2a4\n\xa7 plugin.team_server.email.title: \uc774\uba54\uc77c \uc8fc\uc18c \ubaa9\ub85d\n\xa7 plugin.team_server.email.typeChart.title: \uc8fc\uc18c \uc720\ud615\n\xa7 plugin.team_server.email.typeChart.suffix: \uac1c\uc758 \uc774\uba54\uc77c \uc8fc\uc18c\n\xa7 plugin.team_server.email.authorChart.title: \uc9c1\uc6d0\ubcc4 \uc8fc\uc18c \uac1c\uc218\n\xa7 plugin.team_server.email.authorChart.suffix: \uac1c\uc758 \uc774\uba54\uc77c \uc8fc\uc18c\n\xa7 plugin.team_server.email.type: \uc720\ud615\n\xa7 plugin.team_server.email.company: \ud68c\uc0ac\n\xa7 plugin.team_server.email.email: \uc774\uba54\uc77c \uc8fc\uc18c\n\xa7 plugin.team_server.email.author: \uc9c1\uc6d0\n",pt:"\n\xa7 plugin.team_server.sidebar: Email addresses\n\xa7 plugin.team_server.title: Server addresses in logs\n\xa7 plugin.team_server.domain: Domain\n\xa7 plugin.team_server.from: from\n\xa7 plugin.team_server.to: to\n\xa7 plugin.team_server.protocol: Protocol\n\xa7 plugin.team_server.port: Port\n\xa7 plugin.team_server.url: URL\n\xa7 plugin.team_server.service: Code hosting tool\n\xa7 plugin.team_server.type.title: Service\n\xa7 plugin.team_server.type.description: $1 or something similar\n\xa7 plugin.team_server.email.title: Email address list\n\xa7 plugin.team_server.email.typeChart.title: Address types\n\xa7 plugin.team_server.email.typeChart.suffix: email addresses\n\xa7 plugin.team_server.email.authorChart.title: Number of addresses per staff member\n\xa7 plugin.team_server.email.authorChart.suffix: email addresses\n\xa7 plugin.team_server.email.type: Type\n\xa7 plugin.team_server.email.company: Company\n\xa7 plugin.team_server.email.email: Email address\n\xa7 plugin.team_server.email.author: Staff member\n",ru:"\n\xa7 plugin.team_server.sidebar: \u041f\u043e\u0447\u0442\u043e\u0432\u044b\u0435 \u0430\u0434\u0440\u0435\u0441\u0430\n\xa7 plugin.team_server.title: \u0410\u0434\u0440\u0435\u0441\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0432 \u043b\u043e\u0433\u0430\u0445\n\xa7 plugin.team_server.domain: \u0414\u043e\u043c\u0435\u043d\n\xa7 plugin.team_server.from: \u0441\n\xa7 plugin.team_server.to: \u043f\u043e\n\xa7 plugin.team_server.protocol: \u041f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\n\xa7 plugin.team_server.port: \u041f\u043e\u0440\u0442\n\xa7 plugin.team_server.url: URL\n\xa7 plugin.team_server.service: \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u0434\u043b\u044f \u0445\u043e\u0441\u0442\u0438\u043d\u0433\u0430 \u043a\u043e\u0434\u0430\n\xa7 plugin.team_server.type.title: \u0421\u0435\u0440\u0432\u0438\u0441\n\xa7 plugin.team_server.type.description: $1 \u0438\u043b\u0438 \u0447\u0442\u043e-\u0442\u043e \u043f\u043e\u0445\u043e\u0436\u0435\u0435\n\xa7 plugin.team_server.email.title: \u0421\u043f\u0438\u0441\u043e\u043a \u043f\u043e\u0447\u0442\u043e\u0432\u044b\u0445 \u0430\u0434\u0440\u0435\u0441\u043e\u0432\n\xa7 plugin.team_server.email.typeChart.title: \u0422\u0438\u043f\u044b \u0430\u0434\u0440\u0435\u0441\u043e\u0432\n\xa7 plugin.team_server.email.typeChart.suffix: \u043f\u043e\u0447\u0442\u043e\u0432\u044b\u0445 \u0430\u0434\u0440\u0435\u0441\u043e\u0432\n\xa7 plugin.team_server.email.authorChart.title: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0430\u0434\u0440\u0435\u0441\u043e\u0432 \u043d\u0430 \u043e\u0434\u043d\u043e\u0433\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\n\xa7 plugin.team_server.email.authorChart.suffix: \u043f\u043e\u0447\u0442\u043e\u0432\u044b\u0445 \u0430\u0434\u0440\u0435\u0441\u043e\u0432\n\xa7 plugin.team_server.email.type: \u0422\u0438\u043f\n\xa7 plugin.team_server.email.company: \u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f\n\xa7 plugin.team_server.email.email: \u0410\u0434\u0440\u0435\u0441 \u043f\u043e\u0447\u0442\u044b\n\xa7 plugin.team_server.email.author: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\n",zh:"\n\xa7 plugin.team_server.sidebar: \u90ae\u7bb1\u5730\u5740\n\xa7 plugin.team_server.title: \u65e5\u5fd7\u4e2d\u7684\u670d\u52a1\u5668\u5730\u5740\n\xa7 plugin.team_server.domain: \u57df\u540d\n\xa7 plugin.team_server.from: \u53d1\u4ef6\u4eba\n\xa7 plugin.team_server.to: \u6536\u4ef6\u4eba\n\xa7 plugin.team_server.protocol: \u534f\u8bae\n\xa7 plugin.team_server.port: \u7aef\u53e3\n\xa7 plugin.team_server.url: URL\n\xa7 plugin.team_server.service: \u4ee3\u7801\u6258\u7ba1\u5de5\u5177\n\xa7 plugin.team_server.type.title: \u670d\u52a1\n\xa7 plugin.team_server.type.description: $1 \u6216\u7c7b\u4f3c\u670d\u52a1\n\xa7 plugin.team_server.email.title: \u90ae\u7bb1\u5730\u5740\u5217\u8868\n\xa7 plugin.team_server.email.typeChart.title: \u5730\u5740\u7c7b\u578b\n\xa7 plugin.team_server.email.typeChart.suffix: \u4e2a\u90ae\u7bb1\u5730\u5740\n\xa7 plugin.team_server.email.authorChart.title: \u6309\u5458\u5de5\u7edf\u8ba1\u7684\u5730\u5740\u6570\u91cf\n\xa7 plugin.team_server.email.authorChart.suffix: \u4e2a\u90ae\u7bb1\u5730\u5740\n\xa7 plugin.team_server.email.type: \u7c7b\u578b\n\xa7 plugin.team_server.email.company: \u516c\u53f8\n\xa7 plugin.team_server.email.email: \u90ae\u7bb1\u5730\u5740\n\xa7 plugin.team_server.email.author: \u5458\u5de5\n"};function oM(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;return t?(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:"details",type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{title:"plugin.team_server.protocol",properties:"protocol",template:_p.TAGS,width:80}),(0,mu.jsx)(zp,{title:"plugin.team_server.port",properties:"port",template:_p.TAGS,width:80}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_server.url",properties:"url"}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,properties:"from",width:150,formatter:Zi}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,properties:"to",width:150,formatter:Zi})]}):null}oM.defaultProps={response:void 0};const rM=oM;function lM(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;return t?(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,template:_p.DETAILS,width:40,formatter:e=>(0,mu.jsx)(rM,{response:{content:e.children}})}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_server.domain",properties:"domain"}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_server.from",properties:"from",width:150,formatter:Zi}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_server.to",properties:"to",width:150,formatter:Zi}),(0,mu.jsx)(zp,{template:_p.STRING,properties:"xyz",width:12})]}):null}lM.defaultProps={response:void 0};const mM=lM;function cM(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;const{text:i}=_u();return t?(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_server.type.title",properties:"type",formatter:e=>i("plugin.team_server.type.description",e===ki?"Bitbucket":"GitHub")}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_server.from",properties:"from",width:150,formatter:Zi}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_server.to",properties:"to",width:150,formatter:Zi}),(0,mu.jsx)(zp,{template:_p.STRING,properties:"xyz",width:12})]}):null}cM.defaultProps={response:void 0};const uM=cM;function pM(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;return t?(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_server.email.type",properties:"type",formatter:e=>({[_i.UNKNOWN]:"",[_i.ACCOUNT]:"TECH ACCOUNT",[_i.GITHUB]:"GITHUB",[_i.MAIL]:"PERSONAL",[_i.COMPANY]:"CORPORATE",[_i.NETWORK]:"NETWORK",[_i.DEVICE]:"DEVICE"}[e]),template:_p.TAGS,width:150}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_server.email.company",properties:"company",template:_p.TAGS,width:150}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_server.email.author",properties:"author",width:200}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_server.email.email",properties:"email",template:(e,t)=>t.type===_i.GITHUB?(0,mu.jsx)(Aw,{email:e}):e}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_server.from",properties:"from",width:150,formatter:Zi}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.team_server.to",properties:"to",width:150,formatter:Zi})]}):null}pM.defaultProps={response:void 0};const dM=pM,hM={[_i.UNKNOWN]:"",[_i.ACCOUNT]:"TECH ACCOUNT",[_i.GITHUB]:"GITHUB",[_i.MAIL]:"PERSONAL",[_i.COMPANY]:"CORPORATE",[_i.NETWORK]:"NETWORK"};function gM(e){const t={};e.forEach((e=>{var n;Vo(t,(n=e.type,hM[String(n)]||""))}));return[Object.entries(t).sort(((e,t)=>t[1]-e[1])).map((e=>{let[t]=e;return t})),t]}const fM=yi((e=>{let{rows:n}=e;if(!n)return null;const a=PT.statisticsByCommits.author.totalInfo,[s,i]=(0,t.useMemo)((()=>gM(n)),[n]),[o,r]=(0,t.useMemo)((()=>function(e){const t={};return e.forEach((e=>{Vo(t,e.emails.length)})),[Object.keys(t).sort(),t]}(a)),[a]);return(0,mu.jsxs)(yT,{children:[(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_server.email.typeChart.title",suffix:"plugin.team_server.email.typeChart.suffix",order:s,limit:1,details:i})}),(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_server.email.authorChart.title",suffix:"plugin.team_server.email.authorChart.suffix",order:o,limit:1,details:r})})]})})),yM=yi((e=>{let{mode:n}=e;const a=PT.statisticsByCommits.server.totalInfo,s=PT.statisticsByCommits.service.totalInfo,i=PT.statisticsByCommits.email.totalInfo,[o,r]=(0,t.useState)(i),[l,m]=(0,t.useState)("");return null!==a&&void 0!==a&&a.length||null!==s&&void 0!==s&&s.length||null!==i&&void 0!==i&&i.length?(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsxs)(Pw,{value:"print"!==n,children:[(0,mu.jsx)(sx,{title:"common.filters"}),(0,mu.jsx)(cT,{content:i,elements:["search_small","company","author"],properties:"email",onChange:(e,t)=>{r(e),m(t)}})]}),(0,mu.jsx)(Pw,{value:o.length>6,children:(0,mu.jsx)(fM,{rows:o})}),(0,mu.jsx)(sx,{title:"plugin.team_server.email.title"}),(0,mu.jsxs)(tS,{content:o,mode:n,watch:"".concat(n).concat(l).concat(PT.hash),children:[(0,mu.jsx)(dM,{mode:n,rowsForExcel:o}),(0,mu.jsx)(Hw,{}),(0,mu.jsx)(KC,{})]}),(0,mu.jsxs)(Pw,{value:a,children:[(0,mu.jsx)(sx,{title:"plugin.team_server.title"}),(0,mu.jsxs)(tS,{content:a,mode:n,watch:"".concat(n).concat(PT.hash),children:[(0,mu.jsx)(mM,{mode:n,rowsForExcel:a}),(0,mu.jsx)(KC,{})]})]}),(0,mu.jsxs)(Pw,{value:s,children:[(0,mu.jsx)(sx,{title:"plugin.team_server.service"}),(0,mu.jsxs)(tS,{content:s,mode:n,watch:"".concat(n).concat(PT.hash),children:[(0,mu.jsx)(uM,{mode:n,rowsForExcel:s}),(0,mu.jsx)(KC,{})]})]})]}):"print"!==n?(0,mu.jsx)(Hw,{}):null}));class vM{getMenuItems(){return[{id:"server",group:10,order:80,link:"/team/server",title:"plugin.team_server.sidebar",icon:"./assets/menu/email.svg"}]}getPage(e,t){return"/team/server"===e?(0,mu.jsx)(yM,{mode:null===t||void 0===t?void 0:t.mode}):void 0}getTranslations(){return iM}}vM.id="team_server";const _M={ar:"\n\xa7 plugin.team_tasks.sidebar: Task list\n\xa7 plugin.team_tasks.task.title: Task list\n\xa7 plugin.team_tasks.task.author: Author of the first commit\n\xa7 plugin.team_tasks.task.task: Task\n\xa7 plugin.team_tasks.task.description: Description\n\xa7 plugin.team_tasks.task.totalAuthors: Staff members\n\xa7 plugin.team_tasks.task.totalDaysInBacklog: In backlog\n\xa7 plugin.team_tasks.task.totalDaysWorked: In development\n\xa7 plugin.team_tasks.details.facts: Task information\n\xa7 plugin.team_tasks.details.release: List of releases this task likely landed in\n\xa7 plugin.team_tasks.release.title: Release\n\xa7 plugin.team_tasks.release.releaseDateMerge: Published\n\xa7 plugin.team_tasks.release.prDateMerge: Merged\n\xa7 plugin.team_tasks.info.createdBefore: created before\n\xa7 plugin.team_tasks.info.totalDaysInBacklog: days in backlog\n\xa7 plugin.team_tasks.info.totalAuthors: staff members worked\n\xa7 plugin.team_tasks.info.totalDaysWorked: days in work\n\xa7 plugin.team_tasks.info.authors: Staff members\n\xa7 plugin.team_tasks.info.types: Commit types\n\xa7 plugin.team_tasks.info.scope: Feature list\n\xa7 plugin.team_tasks.info.commits: Commits\n\xa7 plugin.team_tasks.charts.all: Analytics across all tasks\n\xa7 plugin.team_tasks.charts.cardTotal.title: tasks in this category\n\xa7 plugin.team_tasks.charts.cardTotal.description: Considering the current search filters.\n\xa7 plugin.team_tasks.charts.cardFromCommit.title: days from commit to release\n\xa7 plugin.team_tasks.charts.cardFromCommit.description: Average time for tasks that were in backlog for less than three months.\n\xa7 plugin.team_tasks.charts.timeToMarket.title: Time to market (time-to-market)\n\xa7 plugin.team_tasks.charts.timeToMarket.backlog: in backlog\n\xa7 plugin.team_tasks.charts.timeToMarket.worked: in work\n\xa7 plugin.team_tasks.charts.timeToMarket.review: in review\n\xa7 plugin.team_tasks.charts.timeToMarket.release: release waiting\n\xa7 plugin.team_tasks.charts.timeToMarket.improvements: improvements\n\xa7 plugin.team_tasks.charts.relative.title: Days from creation to the first commit\n\xa7 plugin.team_tasks.charts.relative.fast: up to 2 weeks\n\xa7 plugin.team_tasks.charts.relative.normal: up to 3 months\n\xa7 plugin.team_tasks.charts.relative.backlog: more\n\xa7 plugin.team_tasks.charts.normal: Regular tasks\n\xa7 plugin.team_tasks.charts.totalDays.title: Calendar days in work\n\xa7 plugin.team_tasks.charts.totalDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the total time spent working on the task will be counted as 4 days (Fri, Sat, Sun, Mon).\n\xa7 plugin.team_tasks.charts.workedDays.title: Actual days in work\n\xa7 plugin.team_tasks.charts.workedDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the time spent working on the task will be counted as 2 days (Fri, Mon).\n\xa7 plugin.team_tasks.charts.backlog: Technical debt (tasks that were added to the task tracker and not taken into development for more than three months)\n\xa7 plugin.team_tasks.charts.authors.title: Who picked it up\n\xa7 plugin.team_tasks.charts.authors.other: and others\n\xa7 plugin.team_tasks.charts.await.title: How long the task stayed in backlog\n\xa7 plugin.team_tasks.charts.worked.title: How many (calendar) days it was then worked on\n\xa7 plugin.team_tasks.charts.other: more\n",de:"\n\xa7 plugin.team_tasks.sidebar: Task list\n\xa7 plugin.team_tasks.task.title: Task list\n\xa7 plugin.team_tasks.task.author: Author of the first commit\n\xa7 plugin.team_tasks.task.task: Task\n\xa7 plugin.team_tasks.task.description: Description\n\xa7 plugin.team_tasks.task.totalAuthors: Staff members\n\xa7 plugin.team_tasks.task.totalDaysInBacklog: In backlog\n\xa7 plugin.team_tasks.task.totalDaysWorked: In development\n\xa7 plugin.team_tasks.details.facts: Task information\n\xa7 plugin.team_tasks.details.release: List of releases this task likely landed in\n\xa7 plugin.team_tasks.release.title: Release\n\xa7 plugin.team_tasks.release.releaseDateMerge: Published\n\xa7 plugin.team_tasks.release.prDateMerge: Merged\n\xa7 plugin.team_tasks.info.createdBefore: created before\n\xa7 plugin.team_tasks.info.totalDaysInBacklog: days in backlog\n\xa7 plugin.team_tasks.info.totalAuthors: staff members worked\n\xa7 plugin.team_tasks.info.totalDaysWorked: days in work\n\xa7 plugin.team_tasks.info.authors: Staff members\n\xa7 plugin.team_tasks.info.types: Commit types\n\xa7 plugin.team_tasks.info.scope: Feature list\n\xa7 plugin.team_tasks.info.commits: Commits\n\xa7 plugin.team_tasks.charts.all: Analytics across all tasks\n\xa7 plugin.team_tasks.charts.cardTotal.title: tasks in this category\n\xa7 plugin.team_tasks.charts.cardTotal.description: Considering the current search filters.\n\xa7 plugin.team_tasks.charts.cardFromCommit.title: days from commit to release\n\xa7 plugin.team_tasks.charts.cardFromCommit.description: Average time for tasks that were in backlog for less than three months.\n\xa7 plugin.team_tasks.charts.timeToMarket.title: Time to market (time-to-market)\n\xa7 plugin.team_tasks.charts.timeToMarket.backlog: in backlog\n\xa7 plugin.team_tasks.charts.timeToMarket.worked: in work\n\xa7 plugin.team_tasks.charts.timeToMarket.review: in review\n\xa7 plugin.team_tasks.charts.timeToMarket.release: release waiting\n\xa7 plugin.team_tasks.charts.timeToMarket.improvements: improvements\n\xa7 plugin.team_tasks.charts.relative.title: Days from creation to the first commit\n\xa7 plugin.team_tasks.charts.relative.fast: up to 2 weeks\n\xa7 plugin.team_tasks.charts.relative.normal: up to 3 months\n\xa7 plugin.team_tasks.charts.relative.backlog: more\n\xa7 plugin.team_tasks.charts.normal: Regular tasks\n\xa7 plugin.team_tasks.charts.totalDays.title: Calendar days in work\n\xa7 plugin.team_tasks.charts.totalDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the total time spent working on the task will be counted as 4 days (Fri, Sat, Sun, Mon).\n\xa7 plugin.team_tasks.charts.workedDays.title: Actual days in work\n\xa7 plugin.team_tasks.charts.workedDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the time spent working on the task will be counted as 2 days (Fri, Mon).\n\xa7 plugin.team_tasks.charts.backlog: Technical debt (tasks that were added to the task tracker and not taken into development for more than three months)\n\xa7 plugin.team_tasks.charts.authors.title: Who picked it up\n\xa7 plugin.team_tasks.charts.authors.other: and others\n\xa7 plugin.team_tasks.charts.await.title: How long the task stayed in backlog\n\xa7 plugin.team_tasks.charts.worked.title: How many (calendar) days it was then worked on\n\xa7 plugin.team_tasks.charts.other: more\n",en:"\n\xa7 plugin.team_tasks.sidebar: Task list\n\xa7 plugin.team_tasks.task.title: Task list\n\xa7 plugin.team_tasks.task.author: Author of the first commit\n\xa7 plugin.team_tasks.task.task: Task\n\xa7 plugin.team_tasks.task.description: Description\n\xa7 plugin.team_tasks.task.totalAuthors: Staff members\n\xa7 plugin.team_tasks.task.totalDaysInBacklog: In backlog\n\xa7 plugin.team_tasks.task.totalDaysWorked: In development\n\xa7 plugin.team_tasks.task.createdBefore: Created before\n\xa7 plugin.team_tasks.task.from: First commit\n\xa7 plugin.team_tasks.task.to: Last commit\n\xa7 plugin.team_tasks.details.facts: Task information\n\xa7 plugin.team_tasks.details.release: List of releases this task likely landed in\n\xa7 plugin.team_tasks.release.title: Release\n\xa7 plugin.team_tasks.release.releaseDateMerge: Published\n\xa7 plugin.team_tasks.release.prDateMerge: Merged\n\xa7 plugin.team_tasks.info.createdBefore: created before\n\xa7 plugin.team_tasks.info.totalDaysInBacklog: days in backlog\n\xa7 plugin.team_tasks.info.totalAuthors: staff members worked\n\xa7 plugin.team_tasks.info.totalDaysWorked: days in work\n\xa7 plugin.team_tasks.info.authors: Staff members\n\xa7 plugin.team_tasks.info.types: Commit types\n\xa7 plugin.team_tasks.info.scope: Feature list\n\xa7 plugin.team_tasks.info.commits: Commits\n\xa7 plugin.team_tasks.charts.all: Analytics across all tasks\n\xa7 plugin.team_tasks.charts.cardTotal.title: tasks in this category\n\xa7 plugin.team_tasks.charts.cardTotal.description: Considering the current search filters.\n\xa7 plugin.team_tasks.charts.cardFromCommit.title: days from commit to release\n\xa7 plugin.team_tasks.charts.cardFromCommit.description: Average time for tasks that were in backlog for less than three months.\n\xa7 plugin.team_tasks.charts.timeToMarket.title: Time to market (time-to-market)\n\xa7 plugin.team_tasks.charts.timeToMarket.backlog: in backlog\n\xa7 plugin.team_tasks.charts.timeToMarket.worked: in work\n\xa7 plugin.team_tasks.charts.timeToMarket.review: in review\n\xa7 plugin.team_tasks.charts.timeToMarket.release: release waiting\n\xa7 plugin.team_tasks.charts.timeToMarket.improvements: improvements\n\xa7 plugin.team_tasks.charts.relative.title: Days from creation to the first commit\n\xa7 plugin.team_tasks.charts.relative.fast: up to 2 weeks\n\xa7 plugin.team_tasks.charts.relative.normal: up to 3 months\n\xa7 plugin.team_tasks.charts.relative.backlog: more\n\xa7 plugin.team_tasks.charts.normal: Regular tasks\n\xa7 plugin.team_tasks.charts.totalDays.title: Calendar days in work\n\xa7 plugin.team_tasks.charts.totalDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the total time spent working on the task will be counted as 4 days (Fri, Sat, Sun, Mon).\n\xa7 plugin.team_tasks.charts.workedDays.title: Actual days in work\n\xa7 plugin.team_tasks.charts.workedDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the time spent working on the task will be counted as 2 days (Fri, Mon).\n\xa7 plugin.team_tasks.charts.backlog: Technical debt (tasks that were added to the task tracker and not taken into development for more than three months)\n\xa7 plugin.team_tasks.charts.authors.title: Who picked it up\n\xa7 plugin.team_tasks.charts.authors.other: and others\n\xa7 plugin.team_tasks.charts.await.title: How long the task stayed in backlog\n\xa7 plugin.team_tasks.charts.worked.title: How many (calendar) days it was then worked on\n\xa7 plugin.team_tasks.charts.other: more\n",es:"\n\xa7 plugin.team_tasks.sidebar: Task list\n\xa7 plugin.team_tasks.task.title: Task list\n\xa7 plugin.team_tasks.task.author: Author of the first commit\n\xa7 plugin.team_tasks.task.task: Task\n\xa7 plugin.team_tasks.task.description: Description\n\xa7 plugin.team_tasks.task.totalAuthors: Staff members\n\xa7 plugin.team_tasks.task.totalDaysInBacklog: In backlog\n\xa7 plugin.team_tasks.task.totalDaysWorked: In development\n\xa7 plugin.team_tasks.details.facts: Task information\n\xa7 plugin.team_tasks.details.release: List of releases this task likely landed in\n\xa7 plugin.team_tasks.release.title: Release\n\xa7 plugin.team_tasks.release.releaseDateMerge: Published\n\xa7 plugin.team_tasks.release.prDateMerge: Merged\n\xa7 plugin.team_tasks.info.createdBefore: created before\n\xa7 plugin.team_tasks.info.totalDaysInBacklog: days in backlog\n\xa7 plugin.team_tasks.info.totalAuthors: staff members worked\n\xa7 plugin.team_tasks.info.totalDaysWorked: days in work\n\xa7 plugin.team_tasks.info.authors: Staff members\n\xa7 plugin.team_tasks.info.types: Commit types\n\xa7 plugin.team_tasks.info.scope: Feature list\n\xa7 plugin.team_tasks.info.commits: Commits\n\xa7 plugin.team_tasks.charts.all: Analytics across all tasks\n\xa7 plugin.team_tasks.charts.cardTotal.title: tasks in this category\n\xa7 plugin.team_tasks.charts.cardTotal.description: Considering the current search filters.\n\xa7 plugin.team_tasks.charts.cardFromCommit.title: days from commit to release\n\xa7 plugin.team_tasks.charts.cardFromCommit.description: Average time for tasks that were in backlog for less than three months.\n\xa7 plugin.team_tasks.charts.timeToMarket.title: Time to market (time-to-market)\n\xa7 plugin.team_tasks.charts.timeToMarket.backlog: in backlog\n\xa7 plugin.team_tasks.charts.timeToMarket.worked: in work\n\xa7 plugin.team_tasks.charts.timeToMarket.review: in review\n\xa7 plugin.team_tasks.charts.timeToMarket.release: release waiting\n\xa7 plugin.team_tasks.charts.timeToMarket.improvements: improvements\n\xa7 plugin.team_tasks.charts.relative.title: Days from creation to the first commit\n\xa7 plugin.team_tasks.charts.relative.fast: up to 2 weeks\n\xa7 plugin.team_tasks.charts.relative.normal: up to 3 months\n\xa7 plugin.team_tasks.charts.relative.backlog: more\n\xa7 plugin.team_tasks.charts.normal: Regular tasks\n\xa7 plugin.team_tasks.charts.totalDays.title: Calendar days in work\n\xa7 plugin.team_tasks.charts.totalDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the total time spent working on the task will be counted as 4 days (Fri, Sat, Sun, Mon).\n\xa7 plugin.team_tasks.charts.workedDays.title: Actual days in work\n\xa7 plugin.team_tasks.charts.workedDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the time spent working on the task will be counted as 2 days (Fri, Mon).\n\xa7 plugin.team_tasks.charts.backlog: Technical debt (tasks that were added to the task tracker and not taken into development for more than three months)\n\xa7 plugin.team_tasks.charts.authors.title: Who picked it up\n\xa7 plugin.team_tasks.charts.authors.other: and others\n\xa7 plugin.team_tasks.charts.await.title: How long the task stayed in backlog\n\xa7 plugin.team_tasks.charts.worked.title: How many (calendar) days it was then worked on\n\xa7 plugin.team_tasks.charts.other: more\n",fr:"\n\xa7 plugin.team_tasks.sidebar: Task list\n\xa7 plugin.team_tasks.task.title: Task list\n\xa7 plugin.team_tasks.task.author: Author of the first commit\n\xa7 plugin.team_tasks.task.task: Task\n\xa7 plugin.team_tasks.task.description: Description\n\xa7 plugin.team_tasks.task.totalAuthors: Staff members\n\xa7 plugin.team_tasks.task.totalDaysInBacklog: In backlog\n\xa7 plugin.team_tasks.task.totalDaysWorked: In development\n\xa7 plugin.team_tasks.details.facts: Task information\n\xa7 plugin.team_tasks.details.release: List of releases this task likely landed in\n\xa7 plugin.team_tasks.release.title: Release\n\xa7 plugin.team_tasks.release.releaseDateMerge: Published\n\xa7 plugin.team_tasks.release.prDateMerge: Merged\n\xa7 plugin.team_tasks.info.createdBefore: created before\n\xa7 plugin.team_tasks.info.totalDaysInBacklog: days in backlog\n\xa7 plugin.team_tasks.info.totalAuthors: staff members worked\n\xa7 plugin.team_tasks.info.totalDaysWorked: days in work\n\xa7 plugin.team_tasks.info.authors: Staff members\n\xa7 plugin.team_tasks.info.types: Commit types\n\xa7 plugin.team_tasks.info.scope: Feature list\n\xa7 plugin.team_tasks.info.commits: Commits\n\xa7 plugin.team_tasks.charts.all: Analytics across all tasks\n\xa7 plugin.team_tasks.charts.cardTotal.title: tasks in this category\n\xa7 plugin.team_tasks.charts.cardTotal.description: Considering the current search filters.\n\xa7 plugin.team_tasks.charts.cardFromCommit.title: days from commit to release\n\xa7 plugin.team_tasks.charts.cardFromCommit.description: Average time for tasks that were in backlog for less than three months.\n\xa7 plugin.team_tasks.charts.timeToMarket.title: Time to market (time-to-market)\n\xa7 plugin.team_tasks.charts.timeToMarket.backlog: in backlog\n\xa7 plugin.team_tasks.charts.timeToMarket.worked: in work\n\xa7 plugin.team_tasks.charts.timeToMarket.review: in review\n\xa7 plugin.team_tasks.charts.timeToMarket.release: release waiting\n\xa7 plugin.team_tasks.charts.timeToMarket.improvements: improvements\n\xa7 plugin.team_tasks.charts.relative.title: Days from creation to the first commit\n\xa7 plugin.team_tasks.charts.relative.fast: up to 2 weeks\n\xa7 plugin.team_tasks.charts.relative.normal: up to 3 months\n\xa7 plugin.team_tasks.charts.relative.backlog: more\n\xa7 plugin.team_tasks.charts.normal: Regular tasks\n\xa7 plugin.team_tasks.charts.totalDays.title: Calendar days in work\n\xa7 plugin.team_tasks.charts.totalDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the total time spent working on the task will be counted as 4 days (Fri, Sat, Sun, Mon).\n\xa7 plugin.team_tasks.charts.workedDays.title: Actual days in work\n\xa7 plugin.team_tasks.charts.workedDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the time spent working on the task will be counted as 2 days (Fri, Mon).\n\xa7 plugin.team_tasks.charts.backlog: Technical debt (tasks that were added to the task tracker and not taken into development for more than three months)\n\xa7 plugin.team_tasks.charts.authors.title: Who picked it up\n\xa7 plugin.team_tasks.charts.authors.other: and others\n\xa7 plugin.team_tasks.charts.await.title: How long the task stayed in backlog\n\xa7 plugin.team_tasks.charts.worked.title: How many (calendar) days it was then worked on\n\xa7 plugin.team_tasks.charts.other: more\n",he:"\n\xa7 plugin.team_tasks.sidebar: Task list\n\xa7 plugin.team_tasks.task.title: Task list\n\xa7 plugin.team_tasks.task.author: Author of the first commit\n\xa7 plugin.team_tasks.task.task: Task\n\xa7 plugin.team_tasks.task.description: Description\n\xa7 plugin.team_tasks.task.totalAuthors: Staff members\n\xa7 plugin.team_tasks.task.totalDaysInBacklog: In backlog\n\xa7 plugin.team_tasks.task.totalDaysWorked: In development\n\xa7 plugin.team_tasks.details.facts: Task information\n\xa7 plugin.team_tasks.details.release: List of releases this task likely landed in\n\xa7 plugin.team_tasks.release.title: Release\n\xa7 plugin.team_tasks.release.releaseDateMerge: Published\n\xa7 plugin.team_tasks.release.prDateMerge: Merged\n\xa7 plugin.team_tasks.info.createdBefore: created before\n\xa7 plugin.team_tasks.info.totalDaysInBacklog: days in backlog\n\xa7 plugin.team_tasks.info.totalAuthors: staff members worked\n\xa7 plugin.team_tasks.info.totalDaysWorked: days in work\n\xa7 plugin.team_tasks.info.authors: Staff members\n\xa7 plugin.team_tasks.info.types: Commit types\n\xa7 plugin.team_tasks.info.scope: Feature list\n\xa7 plugin.team_tasks.info.commits: Commits\n\xa7 plugin.team_tasks.charts.all: Analytics across all tasks\n\xa7 plugin.team_tasks.charts.cardTotal.title: tasks in this category\n\xa7 plugin.team_tasks.charts.cardTotal.description: Considering the current search filters.\n\xa7 plugin.team_tasks.charts.cardFromCommit.title: days from commit to release\n\xa7 plugin.team_tasks.charts.cardFromCommit.description: Average time for tasks that were in backlog for less than three months.\n\xa7 plugin.team_tasks.charts.timeToMarket.title: Time to market (time-to-market)\n\xa7 plugin.team_tasks.charts.timeToMarket.backlog: in backlog\n\xa7 plugin.team_tasks.charts.timeToMarket.worked: in work\n\xa7 plugin.team_tasks.charts.timeToMarket.review: in review\n\xa7 plugin.team_tasks.charts.timeToMarket.release: release waiting\n\xa7 plugin.team_tasks.charts.timeToMarket.improvements: improvements\n\xa7 plugin.team_tasks.charts.relative.title: Days from creation to the first commit\n\xa7 plugin.team_tasks.charts.relative.fast: up to 2 weeks\n\xa7 plugin.team_tasks.charts.relative.normal: up to 3 months\n\xa7 plugin.team_tasks.charts.relative.backlog: more\n\xa7 plugin.team_tasks.charts.normal: Regular tasks\n\xa7 plugin.team_tasks.charts.totalDays.title: Calendar days in work\n\xa7 plugin.team_tasks.charts.totalDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the total time spent working on the task will be counted as 4 days (Fri, Sat, Sun, Mon).\n\xa7 plugin.team_tasks.charts.workedDays.title: Actual days in work\n\xa7 plugin.team_tasks.charts.workedDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the time spent working on the task will be counted as 2 days (Fri, Mon).\n\xa7 plugin.team_tasks.charts.backlog: Technical debt (tasks that were added to the task tracker and not taken into development for more than three months)\n\xa7 plugin.team_tasks.charts.authors.title: Who picked it up\n\xa7 plugin.team_tasks.charts.authors.other: and others\n\xa7 plugin.team_tasks.charts.await.title: How long the task stayed in backlog\n\xa7 plugin.team_tasks.charts.worked.title: How many (calendar) days it was then worked on\n\xa7 plugin.team_tasks.charts.other: more\n",hi:"\n\xa7 plugin.team_tasks.sidebar: Task list\n\xa7 plugin.team_tasks.task.title: Task list\n\xa7 plugin.team_tasks.task.author: Author of the first commit\n\xa7 plugin.team_tasks.task.task: Task\n\xa7 plugin.team_tasks.task.description: Description\n\xa7 plugin.team_tasks.task.totalAuthors: Staff members\n\xa7 plugin.team_tasks.task.totalDaysInBacklog: In backlog\n\xa7 plugin.team_tasks.task.totalDaysWorked: In development\n\xa7 plugin.team_tasks.details.facts: Task information\n\xa7 plugin.team_tasks.details.release: List of releases this task likely landed in\n\xa7 plugin.team_tasks.release.title: Release\n\xa7 plugin.team_tasks.release.releaseDateMerge: Published\n\xa7 plugin.team_tasks.release.prDateMerge: Merged\n\xa7 plugin.team_tasks.info.createdBefore: created before\n\xa7 plugin.team_tasks.info.totalDaysInBacklog: days in backlog\n\xa7 plugin.team_tasks.info.totalAuthors: staff members worked\n\xa7 plugin.team_tasks.info.totalDaysWorked: days in work\n\xa7 plugin.team_tasks.info.authors: Staff members\n\xa7 plugin.team_tasks.info.types: Commit types\n\xa7 plugin.team_tasks.info.scope: Feature list\n\xa7 plugin.team_tasks.info.commits: Commits\n\xa7 plugin.team_tasks.charts.all: Analytics across all tasks\n\xa7 plugin.team_tasks.charts.cardTotal.title: tasks in this category\n\xa7 plugin.team_tasks.charts.cardTotal.description: Considering the current search filters.\n\xa7 plugin.team_tasks.charts.cardFromCommit.title: days from commit to release\n\xa7 plugin.team_tasks.charts.cardFromCommit.description: Average time for tasks that were in backlog for less than three months.\n\xa7 plugin.team_tasks.charts.timeToMarket.title: Time to market (time-to-market)\n\xa7 plugin.team_tasks.charts.timeToMarket.backlog: in backlog\n\xa7 plugin.team_tasks.charts.timeToMarket.worked: in work\n\xa7 plugin.team_tasks.charts.timeToMarket.review: in review\n\xa7 plugin.team_tasks.charts.timeToMarket.release: release waiting\n\xa7 plugin.team_tasks.charts.timeToMarket.improvements: improvements\n\xa7 plugin.team_tasks.charts.relative.title: Days from creation to the first commit\n\xa7 plugin.team_tasks.charts.relative.fast: up to 2 weeks\n\xa7 plugin.team_tasks.charts.relative.normal: up to 3 months\n\xa7 plugin.team_tasks.charts.relative.backlog: more\n\xa7 plugin.team_tasks.charts.normal: Regular tasks\n\xa7 plugin.team_tasks.charts.totalDays.title: Calendar days in work\n\xa7 plugin.team_tasks.charts.totalDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the total time spent working on the task will be counted as 4 days (Fri, Sat, Sun, Mon).\n\xa7 plugin.team_tasks.charts.workedDays.title: Actual days in work\n\xa7 plugin.team_tasks.charts.workedDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the time spent working on the task will be counted as 2 days (Fri, Mon).\n\xa7 plugin.team_tasks.charts.backlog: Technical debt (tasks that were added to the task tracker and not taken into development for more than three months)\n\xa7 plugin.team_tasks.charts.authors.title: Who picked it up\n\xa7 plugin.team_tasks.charts.authors.other: and others\n\xa7 plugin.team_tasks.charts.await.title: How long the task stayed in backlog\n\xa7 plugin.team_tasks.charts.worked.title: How many (calendar) days it was then worked on\n\xa7 plugin.team_tasks.charts.other: more\n",ja:"\n\xa7 plugin.team_tasks.sidebar: Task list\n\xa7 plugin.team_tasks.task.title: Task list\n\xa7 plugin.team_tasks.task.author: Author of the first commit\n\xa7 plugin.team_tasks.task.task: Task\n\xa7 plugin.team_tasks.task.description: Description\n\xa7 plugin.team_tasks.task.totalAuthors: Staff members\n\xa7 plugin.team_tasks.task.totalDaysInBacklog: In backlog\n\xa7 plugin.team_tasks.task.totalDaysWorked: In development\n\xa7 plugin.team_tasks.details.facts: Task information\n\xa7 plugin.team_tasks.details.release: List of releases this task likely landed in\n\xa7 plugin.team_tasks.release.title: Release\n\xa7 plugin.team_tasks.release.releaseDateMerge: Published\n\xa7 plugin.team_tasks.release.prDateMerge: Merged\n\xa7 plugin.team_tasks.info.createdBefore: created before\n\xa7 plugin.team_tasks.info.totalDaysInBacklog: days in backlog\n\xa7 plugin.team_tasks.info.totalAuthors: staff members worked\n\xa7 plugin.team_tasks.info.totalDaysWorked: days in work\n\xa7 plugin.team_tasks.info.authors: Staff members\n\xa7 plugin.team_tasks.info.types: Commit types\n\xa7 plugin.team_tasks.info.scope: Feature list\n\xa7 plugin.team_tasks.info.commits: Commits\n\xa7 plugin.team_tasks.charts.all: Analytics across all tasks\n\xa7 plugin.team_tasks.charts.cardTotal.title: tasks in this category\n\xa7 plugin.team_tasks.charts.cardTotal.description: Considering the current search filters.\n\xa7 plugin.team_tasks.charts.cardFromCommit.title: days from commit to release\n\xa7 plugin.team_tasks.charts.cardFromCommit.description: Average time for tasks that were in backlog for less than three months.\n\xa7 plugin.team_tasks.charts.timeToMarket.title: Time to market (time-to-market)\n\xa7 plugin.team_tasks.charts.timeToMarket.backlog: in backlog\n\xa7 plugin.team_tasks.charts.timeToMarket.worked: in work\n\xa7 plugin.team_tasks.charts.timeToMarket.review: in review\n\xa7 plugin.team_tasks.charts.timeToMarket.release: release waiting\n\xa7 plugin.team_tasks.charts.timeToMarket.improvements: improvements\n\xa7 plugin.team_tasks.charts.relative.title: Days from creation to the first commit\n\xa7 plugin.team_tasks.charts.relative.fast: up to 2 weeks\n\xa7 plugin.team_tasks.charts.relative.normal: up to 3 months\n\xa7 plugin.team_tasks.charts.relative.backlog: more\n\xa7 plugin.team_tasks.charts.normal: Regular tasks\n\xa7 plugin.team_tasks.charts.totalDays.title: Calendar days in work\n\xa7 plugin.team_tasks.charts.totalDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the total time spent working on the task will be counted as 4 days (Fri, Sat, Sun, Mon).\n\xa7 plugin.team_tasks.charts.workedDays.title: Actual days in work\n\xa7 plugin.team_tasks.charts.workedDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the time spent working on the task will be counted as 2 days (Fri, Mon).\n\xa7 plugin.team_tasks.charts.backlog: Technical debt (tasks that were added to the task tracker and not taken into development for more than three months)\n\xa7 plugin.team_tasks.charts.authors.title: Who picked it up\n\xa7 plugin.team_tasks.charts.authors.other: and others\n\xa7 plugin.team_tasks.charts.await.title: How long the task stayed in backlog\n\xa7 plugin.team_tasks.charts.worked.title: How many (calendar) days it was then worked on\n\xa7 plugin.team_tasks.charts.other: more\n",ko:"\n\xa7 plugin.team_tasks.sidebar: Task list\n\xa7 plugin.team_tasks.task.title: Task list\n\xa7 plugin.team_tasks.task.author: Author of the first commit\n\xa7 plugin.team_tasks.task.task: Task\n\xa7 plugin.team_tasks.task.description: Description\n\xa7 plugin.team_tasks.task.totalAuthors: Staff members\n\xa7 plugin.team_tasks.task.totalDaysInBacklog: In backlog\n\xa7 plugin.team_tasks.task.totalDaysWorked: In development\n\xa7 plugin.team_tasks.details.facts: Task information\n\xa7 plugin.team_tasks.details.release: List of releases this task likely landed in\n\xa7 plugin.team_tasks.release.title: Release\n\xa7 plugin.team_tasks.release.releaseDateMerge: Published\n\xa7 plugin.team_tasks.release.prDateMerge: Merged\n\xa7 plugin.team_tasks.info.createdBefore: created before\n\xa7 plugin.team_tasks.info.totalDaysInBacklog: days in backlog\n\xa7 plugin.team_tasks.info.totalAuthors: staff members worked\n\xa7 plugin.team_tasks.info.totalDaysWorked: days in work\n\xa7 plugin.team_tasks.info.authors: Staff members\n\xa7 plugin.team_tasks.info.types: Commit types\n\xa7 plugin.team_tasks.info.scope: Feature list\n\xa7 plugin.team_tasks.info.commits: Commits\n\xa7 plugin.team_tasks.charts.all: Analytics across all tasks\n\xa7 plugin.team_tasks.charts.cardTotal.title: tasks in this category\n\xa7 plugin.team_tasks.charts.cardTotal.description: Considering the current search filters.\n\xa7 plugin.team_tasks.charts.cardFromCommit.title: days from commit to release\n\xa7 plugin.team_tasks.charts.cardFromCommit.description: Average time for tasks that were in backlog for less than three months.\n\xa7 plugin.team_tasks.charts.timeToMarket.title: Time to market (time-to-market)\n\xa7 plugin.team_tasks.charts.timeToMarket.backlog: in backlog\n\xa7 plugin.team_tasks.charts.timeToMarket.worked: in work\n\xa7 plugin.team_tasks.charts.timeToMarket.review: in review\n\xa7 plugin.team_tasks.charts.timeToMarket.release: release waiting\n\xa7 plugin.team_tasks.charts.timeToMarket.improvements: improvements\n\xa7 plugin.team_tasks.charts.relative.title: Days from creation to the first commit\n\xa7 plugin.team_tasks.charts.relative.fast: up to 2 weeks\n\xa7 plugin.team_tasks.charts.relative.normal: up to 3 months\n\xa7 plugin.team_tasks.charts.relative.backlog: more\n\xa7 plugin.team_tasks.charts.normal: Regular tasks\n\xa7 plugin.team_tasks.charts.totalDays.title: Calendar days in work\n\xa7 plugin.team_tasks.charts.totalDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the total time spent working on the task will be counted as 4 days (Fri, Sat, Sun, Mon).\n\xa7 plugin.team_tasks.charts.workedDays.title: Actual days in work\n\xa7 plugin.team_tasks.charts.workedDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the time spent working on the task will be counted as 2 days (Fri, Mon).\n\xa7 plugin.team_tasks.charts.backlog: Technical debt (tasks that were added to the task tracker and not taken into development for more than three months)\n\xa7 plugin.team_tasks.charts.authors.title: Who picked it up\n\xa7 plugin.team_tasks.charts.authors.other: and others\n\xa7 plugin.team_tasks.charts.await.title: How long the task stayed in backlog\n\xa7 plugin.team_tasks.charts.worked.title: How many (calendar) days it was then worked on\n\xa7 plugin.team_tasks.charts.other: more\n",pt:"\n\xa7 plugin.team_tasks.sidebar: Task list\n\xa7 plugin.team_tasks.task.title: Task list\n\xa7 plugin.team_tasks.task.author: Author of the first commit\n\xa7 plugin.team_tasks.task.task: Task\n\xa7 plugin.team_tasks.task.description: Description\n\xa7 plugin.team_tasks.task.totalAuthors: Staff members\n\xa7 plugin.team_tasks.task.totalDaysInBacklog: In backlog\n\xa7 plugin.team_tasks.task.totalDaysWorked: In development\n\xa7 plugin.team_tasks.details.facts: Task information\n\xa7 plugin.team_tasks.details.release: List of releases this task likely landed in\n\xa7 plugin.team_tasks.release.title: Release\n\xa7 plugin.team_tasks.release.releaseDateMerge: Published\n\xa7 plugin.team_tasks.release.prDateMerge: Merged\n\xa7 plugin.team_tasks.info.createdBefore: created before\n\xa7 plugin.team_tasks.info.totalDaysInBacklog: days in backlog\n\xa7 plugin.team_tasks.info.totalAuthors: staff members worked\n\xa7 plugin.team_tasks.info.totalDaysWorked: days in work\n\xa7 plugin.team_tasks.info.authors: Staff members\n\xa7 plugin.team_tasks.info.types: Commit types\n\xa7 plugin.team_tasks.info.scope: Feature list\n\xa7 plugin.team_tasks.info.commits: Commits\n\xa7 plugin.team_tasks.charts.all: Analytics across all tasks\n\xa7 plugin.team_tasks.charts.cardTotal.title: tasks in this category\n\xa7 plugin.team_tasks.charts.cardTotal.description: Considering the current search filters.\n\xa7 plugin.team_tasks.charts.cardFromCommit.title: days from commit to release\n\xa7 plugin.team_tasks.charts.cardFromCommit.description: Average time for tasks that were in backlog for less than three months.\n\xa7 plugin.team_tasks.charts.timeToMarket.title: Time to market (time-to-market)\n\xa7 plugin.team_tasks.charts.timeToMarket.backlog: in backlog\n\xa7 plugin.team_tasks.charts.timeToMarket.worked: in work\n\xa7 plugin.team_tasks.charts.timeToMarket.review: in review\n\xa7 plugin.team_tasks.charts.timeToMarket.release: release waiting\n\xa7 plugin.team_tasks.charts.timeToMarket.improvements: improvements\n\xa7 plugin.team_tasks.charts.relative.title: Days from creation to the first commit\n\xa7 plugin.team_tasks.charts.relative.fast: up to 2 weeks\n\xa7 plugin.team_tasks.charts.relative.normal: up to 3 months\n\xa7 plugin.team_tasks.charts.relative.backlog: more\n\xa7 plugin.team_tasks.charts.normal: Regular tasks\n\xa7 plugin.team_tasks.charts.totalDays.title: Calendar days in work\n\xa7 plugin.team_tasks.charts.totalDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the total time spent working on the task will be counted as 4 days (Fri, Sat, Sun, Mon).\n\xa7 plugin.team_tasks.charts.workedDays.title: Actual days in work\n\xa7 plugin.team_tasks.charts.workedDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the time spent working on the task will be counted as 2 days (Fri, Mon).\n\xa7 plugin.team_tasks.charts.backlog: Technical debt (tasks that were added to the task tracker and not taken into development for more than three months)\n\xa7 plugin.team_tasks.charts.authors.title: Who picked it up\n\xa7 plugin.team_tasks.charts.authors.other: and others\n\xa7 plugin.team_tasks.charts.await.title: How long the task stayed in backlog\n\xa7 plugin.team_tasks.charts.worked.title: How many (calendar) days it was then worked on\n\xa7 plugin.team_tasks.charts.other: more\n",ru:"\n\xa7 plugin.team_tasks.sidebar: \u0421\u043f\u0438\u0441\u043e\u043a \u0437\u0430\u0434\u0430\u0447\n\xa7 plugin.team_tasks.task.title: \u0421\u043f\u0438\u0441\u043e\u043a \u0437\u0430\u0434\u0430\u0447\n\xa7 plugin.team_tasks.task.author: \u0410\u0432\u0442\u043e\u0440 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 plugin.team_tasks.task.task: \u0417\u0430\u0434\u0430\u0447\u0430\n\xa7 plugin.team_tasks.task.description: \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435\n\xa7 plugin.team_tasks.task.totalAuthors: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432\n\xa7 plugin.team_tasks.task.totalDaysInBacklog: \u0412 \u0431\u0435\u043a\u043b\u043e\u0433\u0435\n\xa7 plugin.team_tasks.task.totalDaysWorked: \u0412 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435\n\xa7 plugin.team_tasks.task.createdBefore: \u0421\u043e\u0437\u0434\u0430\u043d\u0430 \u0434\u043e\n\xa7 plugin.team_tasks.task.from: \u041f\u0435\u0440\u0432\u044b\u0439 \u043a\u043e\u043c\u043c\u0438\u0442\n\xa7 plugin.team_tasks.task.to: \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043a\u043e\u043c\u043c\u0438\u0442\n\xa7 plugin.team_tasks.details.facts: \u0418\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043f\u043e \u0437\u0430\u0434\u0430\u0447\u0435\n\xa7 plugin.team_tasks.details.release: \u0421\u043f\u0438\u0441\u043e\u043a \u0440\u0435\u043b\u0438\u0437\u043e\u0432, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0435, \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u043f\u043e\u043f\u0430\u043b\u0430 \u044d\u0442\u0430 \u0437\u0430\u0434\u0430\u0447\u0430\n\xa7 plugin.team_tasks.release.title: \u0420\u0435\u043b\u0438\u0437\n\xa7 plugin.team_tasks.release.releaseDateMerge: \u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\n\xa7 plugin.team_tasks.release.prDateMerge: \u0412\u043b\u0438\u0442\n\xa7 plugin.team_tasks.info.timetoMarket: \u0441\u043e\u0437\u0434\u0430\u043d\u0430 \u0434\u043e\n\xa7 plugin.team_tasks.info.createdBefore: \u0441\u043e\u0437\u0434\u0430\u043d\u0430 \u0434\u043e\n\xa7 plugin.team_tasks.info.totalDaysInBacklog: \u0434\u043d\u0435\u0439 \u0432 \u0431\u0435\u043a\u043b\u043e\u0433\u0435\n\xa7 plugin.team_tasks.info.totalAuthors: \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e\n\xa7 plugin.team_tasks.info.totalDaysWorked: \u0434\u043d\u0435\u0439 \u0432 \u0440\u0430\u0431\u043e\u0442\u0435\n\xa7 plugin.team_tasks.info.authors: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438\n\xa7 plugin.team_tasks.info.types: \u0422\u0438\u043f\u044b \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.team_tasks.info.scope: \u0421\u043f\u0438\u0441\u043e\u043a \u0444\u0438\u0447\u0435\u0439\n\xa7 plugin.team_tasks.info.commits: \u041a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.team_tasks.charts.all: \u0410\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0430 \u043f\u043e \u0432\u0441\u0435\u043c \u0437\u0430\u0434\u0430\u0447\u0430\u043c\n\xa7 plugin.team_tasks.charts.totalTask.title: \u041e\u0434\u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u0432 \u0441\u0440\u0435\u0434\u043d\u0435\u043c \u044d\u0442\u043e\n\xa7 plugin.team_tasks.charts.totalTaskInDay.title: \u0434\u043d\u0435\u0439\n\xa7 plugin.team_tasks.charts.totalTaskInFiles.title: \u0444\u0430\u0439\u043b\u043e\u0432\n\xa7 plugin.team_tasks.charts.totalTaskInChanges.title: \u0441\u0442\u0440\u043e\u043a \u043a\u043e\u0434\u0430\n\xa7 plugin.team_tasks.charts.totalTaskInCommits.title: \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.team_tasks.charts.cardFromCommit.title: \u0434\u043d\u0435\u0439 \u043e\u0442 \u043a\u043e\u043c\u043c\u0438\u0442\u0430 \u0434\u043e \u0440\u0435\u043b\u0438\u0437\u0430\n\xa7 plugin.team_tasks.charts.cardFromCommit.description: \u0423\u0441\u0440\u0435\u0434\u043d\u0435\u043d\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0434\u043b\u044f \u0437\u0430\u0434\u0430\u0447, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u044b\u043b\u0438 \u0432 \u0431\u0435\u043a\u043b\u043e\u0433\u0435 \u043c\u0435\u043d\u044c\u0448\u0435 \u0442\u0440\u0451\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432.\n\xa7 plugin.team_tasks.charts.timeToMarket.title: \u0412\u0440\u0435\u043c\u044f \u0432\u044b\u0432\u043e\u0434\u0430 \u0437\u0430\u0434\u0430\u0447\u0438 \u0432 \u043f\u0440\u043e\u0434 (time-to-market)\n\xa7 plugin.team_tasks.charts.timeToMarket.backlog: \u0432 \u0431\u044d\u043a\u043b\u043e\u0433\u0435\n\xa7 plugin.team_tasks.charts.timeToMarket.worked: \u0432 \u0440\u0430\u0431\u043e\u0442\u0435\n\xa7 plugin.team_tasks.charts.timeToMarket.review: \u043d\u0430 \u0440\u0435\u0432\u044c\u044e\n\xa7 plugin.team_tasks.charts.timeToMarket.release: \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u0435 \u0440\u0435\u043b\u0438\u0437\u0430\n\xa7 plugin.team_tasks.charts.timeToMarket.improvements: \u0434\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0438\n\xa7 plugin.team_tasks.charts.relative.title: \u0414\u043d\u0435\u0439 \u043e\u0442 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0434\u043e \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 plugin.team_tasks.charts.relative.fast: \u0434\u043e 2\u0445 \u043d\u0435\u0434\u0435\u043b\u044c\n\xa7 plugin.team_tasks.charts.relative.normal: \u0434\u043e 3\u0445 \u043c\u0435\u0441\u044f\u0446\n\xa7 plugin.team_tasks.charts.relative.backlog: \u0431\u043e\u043b\u044c\u0448\u0435\n\xa7 plugin.team_tasks.charts.normal: \u041e\u0431\u044b\u0447\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 (\u0432\u0437\u044f\u043b\u0438 \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0438 \u0442\u0440\u0451\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u043e\u0442 \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f)\n\xa7 plugin.team_tasks.charts.cardTotal.title: \u0437\u0430\u0434\u0430\u0447 \u0432 \u044d\u0442\u043e\u0439 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0438\n\xa7 plugin.team_tasks.charts.cardTotal.description: \u0421 \u0443\u0447\u0451\u0442\u043e\u043c \u0442\u0435\u043a\u0443\u0449\u0438\u0445 \u0444\u0438\u043b\u044c\u0442\u0440\u043e\u0432 \u043f\u043e\u0438\u0441\u043a\u0430.\n\xa7 plugin.team_tasks.charts.totalDays.title: \u041a\u0430\u043b\u0435\u043d\u0434\u0430\u0440\u043d\u044b\u0445 \u0434\u043d\u0435\u0439 \u0432 \u0440\u0430\u0431\u043e\u0442\u0435\n\xa7 plugin.team_tasks.charts.totalDays.description: \u0415\u0441\u043b\u0438 \u043f\u0435\u0440\u0432\u044b\u0439 \u043a\u043e\u043c\u043c\u0438\u0442 \u0441\u0434\u0435\u043b\u0430\u043d \u0432 \u043f\u044f\u0442\u043d\u0438\u0446\u0443 \u0432\u0435\u0447\u0435\u0440\u043e\u043c, \u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0432 \u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a \u0443\u0442\u0440\u043e\u043c, \u0442\u043e \u043e\u0431\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0434 \u0437\u0430\u0434\u0430\u0447\u0435\u0439 \u0431\u0443\u0434\u0435\u0442 \u0441\u0447\u0438\u0442\u0430\u0442\u044c\u0441\u044f 4 \u0434\u043d\u044f (\u043f\u0442, \u0441\u0431, \u0432\u0441, \u043f\u043d).\n\xa7 plugin.team_tasks.charts.workedDays.title: \u0424\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0434\u043d\u0435\u0439 \u0432 \u0440\u0430\u0431\u043e\u0442\u0435\n\xa7 plugin.team_tasks.charts.workedDays.description: \u0415\u0441\u043b\u0438 \u043f\u0435\u0440\u0432\u044b\u0439 \u043a\u043e\u043c\u043c\u0438\u0442 \u0441\u0434\u0435\u043b\u0430\u043d \u0432 \u043f\u044f\u0442\u043d\u0438\u0446\u0443 \u0432\u0435\u0447\u0435\u0440\u043e\u043c, \u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0432 \u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a \u0443\u0442\u0440\u043e\u043c, \u0442\u043e \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0434 \u0437\u0430\u0434\u0430\u0447\u0435\u0439 \u0431\u0443\u0434\u0435\u0442 \u0441\u0447\u0438\u0442\u0430\u0442\u044c\u0441\u044f 2 \u0434\u043d\u044f (\u043f\u0442, \u043f\u043d).\n\xa7 plugin.team_tasks.charts.backlog: \u0422\u0435\u0445. \u0434\u043e\u043b\u0433 (\u0437\u0430\u0434\u0430\u0447\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u0432\u0435\u043b\u0438 \u0432 \u0442\u0430\u0441\u043a-\u0442\u0440\u0435\u043a\u0435\u0440 \u0438 \u043d\u0435 \u0431\u0440\u0430\u043b\u0438 \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0431\u043e\u043b\u044c\u0448\u0435 \u0442\u0440\u0451\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432)\n\xa7 plugin.team_tasks.charts.authors.title: \u041a\u0442\u043e \u0431\u0440\u0430\u043b \u0432 \u0440\u0430\u0431\u043e\u0442\u0443\n\xa7 plugin.team_tasks.charts.authors.other: \u0438 \u0434\u0440\u0443\u0433\u0438\u0435\n\xa7 plugin.team_tasks.charts.await.title: \u041a\u0430\u043a \u0434\u043e\u043b\u0433\u043e \u0437\u0430\u0434\u0430\u0447\u0430 \u0431\u044b\u043b\u0430 \u0432 \u0431\u0435\u043a\u043b\u043e\u0433\u0435\n\xa7 plugin.team_tasks.charts.worked.title: \u0421\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u043d\u0435\u0439 (\u043a\u0430\u043b\u0435\u043d\u0434\u0430\u0440\u043d\u044b\u0445) \u0435\u0451 \u043f\u043e\u0442\u043e\u043c \u0434\u0435\u043b\u0430\u043b\u0438\n\xa7 plugin.team_tasks.charts.other: \u0431\u043e\u043b\u044c\u0448\u0435\n",zh:"\n\xa7 plugin.team_tasks.sidebar: Task list\n\xa7 plugin.team_tasks.task.title: Task list\n\xa7 plugin.team_tasks.task.author: Author of the first commit\n\xa7 plugin.team_tasks.task.task: Task\n\xa7 plugin.team_tasks.task.description: Description\n\xa7 plugin.team_tasks.task.totalAuthors: Staff members\n\xa7 plugin.team_tasks.task.totalDaysInBacklog: In backlog\n\xa7 plugin.team_tasks.task.totalDaysWorked: In development\n\xa7 plugin.team_tasks.details.facts: Task information\n\xa7 plugin.team_tasks.details.release: List of releases this task likely landed in\n\xa7 plugin.team_tasks.release.title: Release\n\xa7 plugin.team_tasks.release.releaseDateMerge: Published\n\xa7 plugin.team_tasks.release.prDateMerge: Merged\n\xa7 plugin.team_tasks.info.createdBefore: created before\n\xa7 plugin.team_tasks.info.totalDaysInBacklog: days in backlog\n\xa7 plugin.team_tasks.info.totalAuthors: staff members worked\n\xa7 plugin.team_tasks.info.totalDaysWorked: days in work\n\xa7 plugin.team_tasks.info.authors: Staff members\n\xa7 plugin.team_tasks.info.types: Commit types\n\xa7 plugin.team_tasks.info.scope: Feature list\n\xa7 plugin.team_tasks.info.commits: Commits\n\xa7 plugin.team_tasks.charts.all: Analytics across all tasks\n\xa7 plugin.team_tasks.charts.cardTotal.title: tasks in this category\n\xa7 plugin.team_tasks.charts.cardTotal.description: Considering the current search filters.\n\xa7 plugin.team_tasks.charts.cardFromCommit.title: days from commit to release\n\xa7 plugin.team_tasks.charts.cardFromCommit.description: Average time for tasks that were in backlog for less than three months.\n\xa7 plugin.team_tasks.charts.timeToMarket.title: Time to market (time-to-market)\n\xa7 plugin.team_tasks.charts.timeToMarket.backlog: in backlog\n\xa7 plugin.team_tasks.charts.timeToMarket.worked: in work\n\xa7 plugin.team_tasks.charts.timeToMarket.review: in review\n\xa7 plugin.team_tasks.charts.timeToMarket.release: release waiting\n\xa7 plugin.team_tasks.charts.timeToMarket.improvements: improvements\n\xa7 plugin.team_tasks.charts.relative.title: Days from creation to the first commit\n\xa7 plugin.team_tasks.charts.relative.fast: up to 2 weeks\n\xa7 plugin.team_tasks.charts.relative.normal: up to 3 months\n\xa7 plugin.team_tasks.charts.relative.backlog: more\n\xa7 plugin.team_tasks.charts.normal: Regular tasks\n\xa7 plugin.team_tasks.charts.totalDays.title: Calendar days in work\n\xa7 plugin.team_tasks.charts.totalDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the total time spent working on the task will be counted as 4 days (Fri, Sat, Sun, Mon).\n\xa7 plugin.team_tasks.charts.workedDays.title: Actual days in work\n\xa7 plugin.team_tasks.charts.workedDays.description: If the first commit is made on Friday evening and the last one on Monday morning, then the time spent working on the task will be counted as 2 days (Fri, Mon).\n\xa7 plugin.team_tasks.charts.backlog: Technical debt (tasks that were added to the task tracker and not taken into development for more than three months)\n\xa7 plugin.team_tasks.charts.authors.title: Who picked it up\n\xa7 plugin.team_tasks.charts.authors.other: and others\n\xa7 plugin.team_tasks.charts.await.title: How long the task stayed in backlog\n\xa7 plugin.team_tasks.charts.worked.title: How many (calendar) days it was then worked on\n\xa7 plugin.team_tasks.charts.other: more\n"},[kM,bM]=oI("days"),[wM,xM]=oI("years");const TM=function(e){var t,n;let{content:a}=e;if(null===a||void 0===a||!a.length)return null;const s=null===(t=kM(a,"totalDaysInBacklog"))||void 0===t?void 0:t.details,i=null===(n=wM(a,"totalDays"))||void 0===n?void 0:n.details;return(0,mu.jsxs)(yT,{children:[(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_tasks.charts.await.title",details:s,order:bM,limit:3,suffix:"common.statistic.tasks",other:"plugin.team_tasks.charts.other"})}),(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_tasks.charts.worked.title",details:i,order:xM,limit:3,suffix:"common.statistic.tasks",other:"plugin.team_tasks.charts.other"})})]})};function CM(e,t){const n=e.prIds.length-1;if(n<0)return;const a=t.get(e.prIds[0]),s=e.totalDaysInBacklog,i=(null===a||void 0===a?void 0:a.daysWorkOnTask)||0,o=(null===a||void 0===a?void 0:a.daysInReview)||0,r=(null===a||void 0===a?void 0:a.daysAwaitRelease)||0,l=i+o+r,m={total:s+l,details:{backlog:s,worked:i,review:o,release:r,improvements:0}};if(!n)return m;const c=t.get(n),u=(null===e||void 0===e?void 0:e.totalDays)+((null===c||void 0===c?void 0:c.daysInReview)||0)+((null===c||void 0===c?void 0:c.daysAwaitRelease)||0)-l;return u<1?m:{total:s+l+u,details:{backlog:s,worked:i,review:o,release:r,improvements:u}}}function SM(e,t){const n=new Uo,a=new Uo,s=new Uo,i=new Uo,o=new Uo;e.forEach((e=>{const r=CM(e,t);r&&(n.update(r.details.backlog),a.update(r.details.worked),s.update(r.details.review),i.update(r.details.release),o.update(r.details.improvements))}));const r={backlog:n.get()>>0,worked:a.get()>>0,review:s.get()>>0,release:i.get()>>0,improvements:o.get()>>0};return{total:Object.values(r).reduce(((e,t)=>e+t),0),details:r}}const[jM,DM]=oI("years"),AM=yi((e=>{var t,n,a,s,i,o,r,l;let{content:m}=e;if(null===m||void 0===m||!m.length)return null;const c=null===(t=PT.statisticsByCommits.release.totalInfo)||void 0===t?void 0:t.length,u=SM(m,PT.statisticsByCommits.pr.totalInfoByName),[p,d,h,g,f]=["plugin.team_tasks.charts.timeToMarket.backlog","plugin.team_tasks.charts.timeToMarket.worked","plugin.team_tasks.charts.timeToMarket.review","plugin.team_tasks.charts.timeToMarket.release","plugin.team_tasks.charts.timeToMarket.improvements"],y=u.details.worked+u.details.review+u.details.release,v=null===(n=jM(m,"totalDays"))||void 0===n?void 0:n.details,_=null===(a=jM(m,"totalDaysWorked"))||void 0===a?void 0:a.details;return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(Pu,{value:null===m||void 0===m?void 0:m.length,icon:"./assets/cards/tasks.svg",title:"plugin.team_tasks.charts.cardTotal.title",description:"plugin.team_tasks.charts.cardTotal.description"}),(0,mu.jsx)(Pw,{value:c,children:(0,mu.jsx)(Pu,{value:y,icon:"./assets/cards/release_month.svg",title:"plugin.team_tasks.charts.cardFromCommit.title",description:"plugin.team_tasks.charts.cardFromCommit.description"})})]}),(0,mu.jsx)(_T,{children:(0,mu.jsx)(Pw,{value:null===u||void 0===u?void 0:u.total,children:(0,mu.jsx)(AE,{title:"plugin.team_tasks.charts.timeToMarket.title",description:"common.statistic.days",value:null===u||void 0===u?void 0:u.total,details:null!==u&&void 0!==u&&u.details?{[p]:null===u||void 0===u||null===(s=u.details)||void 0===s?void 0:s.backlog,[d]:null===u||void 0===u||null===(i=u.details)||void 0===i?void 0:i.worked,[h]:null===u||void 0===u||null===(o=u.details)||void 0===o?void 0:o.review,[g]:null===u||void 0===u||null===(r=u.details)||void 0===r?void 0:r.release,[f]:null===u||void 0===u||null===(l=u.details)||void 0===l?void 0:l.improvements}:void 0,limit:1,order:[p,d,h,g,f],suffix:"common.statistic.days"})})})]}),(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(AE,{title:"plugin.team_tasks.charts.totalDays.title",details:v,order:DM,limit:3,suffix:"common.statistic.tasks",other:"plugin.team_tasks.charts.other"}),(0,mu.jsx)(bw,{translationId:"plugin.team_tasks.charts.totalDays.description"})]}),(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(AE,{title:"plugin.team_tasks.charts.workedDays.title",details:_,order:DM,limit:3,suffix:"common.statistic.tasks",other:"plugin.team_tasks.charts.other"}),(0,mu.jsx)(bw,{translationId:"plugin.team_tasks.charts.workedDays.description"})]})]})]})}));const EM=function(e){let{content:t}=e;if(null===t||void 0===t||!t.length)return null;const[n,a,s]=function(e){let t=0,n=0,a=0;return e.forEach((e=>{e.totalDaysInBacklog>90?a+=1:e.totalDaysInBacklog>14?n+=1:t+=1})),[t,n,a]}(t),[i,o,r]=["plugin.team_tasks.charts.relative.fast","plugin.team_tasks.charts.relative.normal","plugin.team_tasks.charts.relative.backlog"],{totalTaskInChanges:l,totalTaskInCommits:m,totalTaskInDay:c,totalTaskInFiles:u}=function(e){const t=new Uo,n=new Uo,a=new Uo,s=new Uo;return e.forEach((e=>{e.isStaff||(t.update(e.totalTaskInChanges,e.totalTasks),n.update(e.totalTaskInCommits,e.totalTasks),a.update(e.totalTaskInDay,e.totalTasks),s.update(e.totalTaskInFiles,e.totalTasks))})),{totalTaskInChanges:t.get(),totalTaskInCommits:n.get(),totalTaskInDay:a.get(),totalTaskInFiles:s.get()}}(PT.statisticsByCommits.author.totalInfo);return(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(sx,{title:"plugin.team_tasks.charts.all"}),(0,mu.jsx)(AE,{value:null===t||void 0===t?void 0:t.length,title:"plugin.team_tasks.charts.relative.title",description:"common.statistic.tasks",details:{[i]:n,[o]:a,[r]:s},limit:1,order:[i,o,r],suffix:"common.statistic.tasks"})]}),(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(sx,{title:"plugin.team_tasks.charts.totalTask.title"}),(0,mu.jsx)(qu,{value:mo(c),icon:"./assets/cards/day.svg",title:"plugin.team_tasks.charts.totalTaskInDay.title"}),(0,mu.jsx)(qu,{value:mo(u),icon:"./assets/cards/files.svg",title:"plugin.team_tasks.charts.totalTaskInFiles.title"}),(0,mu.jsx)(qu,{value:mo(l),icon:"./assets/cards/lines.svg",title:"plugin.team_tasks.charts.totalTaskInChanges.title"}),(0,mu.jsx)(qu,{value:mo(m),icon:"./assets/cards/commits.svg",title:"plugin.team_tasks.charts.totalTaskInCommits.title"})]})]})},IM=yi((e=>{var t,n,a,s,i,o,r;let{task:l}=e;const m=PT.statisticsByCommits.pr.totalInfoByName,{text:c}=_u(),u=[{title:c("plugin.team_tasks.info.authors"),value:Array.from(null===l||void 0===l?void 0:l.authors).join(", ")||"\u2014"},{title:c("plugin.team_tasks.info.types"),value:(null===l||void 0===l||null===(t=l.types)||void 0===t?void 0:t.join(", "))||"\u2014"},{title:c("plugin.team_tasks.info.scope"),value:(null===l||void 0===l||null===(n=l.scope)||void 0===n?void 0:n.join(", "))||"\u2014"},{title:c("plugin.team_tasks.info.commits"),value:null===l||void 0===l?void 0:l.commits}],p=CM(l,m),[d,h,g,f,y]=["plugin.team_tasks.charts.timeToMarket.backlog","plugin.team_tasks.charts.timeToMarket.worked","plugin.team_tasks.charts.timeToMarket.review","plugin.team_tasks.charts.timeToMarket.release","plugin.team_tasks.charts.timeToMarket.improvements"];return(0,mu.jsxs)(yT,{children:[(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_tasks.charts.timeToMarket.title",description:"common.statistic.days",value:null===p||void 0===p?void 0:p.total,details:null!==p&&void 0!==p&&p.details?{[d]:null===p||void 0===p||null===(a=p.details)||void 0===a?void 0:a.backlog,[h]:null===p||void 0===p||null===(s=p.details)||void 0===s?void 0:s.worked,[g]:null===p||void 0===p||null===(i=p.details)||void 0===i?void 0:i.review,[f]:null===p||void 0===p||null===(o=p.details)||void 0===o?void 0:o.release,[y]:null===p||void 0===p||null===(r=p.details)||void 0===r?void 0:r.improvements}:void 0,limit:1,order:[d,h,g,f,y],suffix:"common.statistic.days"})}),(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(qu,{value:Zi(null===l||void 0===l?void 0:l.createdBefore),icon:"./assets/cards/day.svg",title:"plugin.team_tasks.info.createdBefore"}),(0,mu.jsx)(qu,{value:null===l||void 0===l?void 0:l.totalAuthors,icon:"./assets/cards/employees.svg",title:"plugin.team_tasks.info.totalAuthors"}),(0,mu.jsx)(qu,{value:null===l||void 0===l?void 0:l.totalDaysInBacklog,icon:"./assets/cards/month.svg",title:"plugin.team_tasks.info.totalDaysInBacklog"}),(0,mu.jsx)(qu,{value:null===l||void 0===l?void 0:l.totalDaysWorked,icon:"./assets/cards/work_days2.svg",title:"plugin.team_tasks.info.totalDaysWorked"})]}),(0,mu.jsxs)(Wp,{headless:!0,rows:u,children:[(0,mu.jsx)(zp,{properties:"title",width:170,template:e=>(0,mu.jsx)("b",{style:{fontWeight:"bold"},children:e})}),(0,mu.jsx)(zp,{template:_p.NUMBER,properties:"value"})]})]})}));function NM(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;return t?(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:"details",type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_tasks.release.title",width:120,properties:"releaseTitle"}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_tasks.release.releaseDateMerge",width:150,properties:"releaseDateMerge",formatter:Zi}),(0,mu.jsx)(zp,{width:80,template:e=>(0,mu.jsx)(Cw,{prId:e.prExternalId},e.prId)}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_tasks.release.prDateMerge",properties:"prDateMerge",formatter:eo})]}):null}NM.defaultProps={response:void 0};const PM=NM;function RM(e){let{task:t}=e;if(!t)return null;const n=$N(t,PT.statisticsByCommits);return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(dT,{height:"xxl"}),(0,mu.jsx)(sx,{title:"plugin.team_tasks.details.facts"}),(0,mu.jsx)(IM,{task:t}),(0,mu.jsxs)(Pw,{value:n,children:[(0,mu.jsx)(dT,{height:"xxl"}),(0,mu.jsx)(sx,{title:"plugin.team_tasks.details.release"})]}),(0,mu.jsxs)(tS,{content:n,children:[(0,mu.jsx)(PM,{mode:"details"}),(0,mu.jsx)(KC,{})]})]})}RM.defaultProps={response:void 0};const OM=RM;function LM(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;return t?(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,template:_p.DETAILS,width:40,formatter:e=>(0,mu.jsx)(OM,{task:e})}),(0,mu.jsx)(zp,{isFixed:!0,isSortable:!0,template:_p.TASK,properties:"task",title:"plugin.team_tasks.task.task"}),(0,mu.jsx)(zp,{properties:"prIds",template:_p.PULL_REQUESTS}),(0,mu.jsx)(zp,{properties:"types",template:_p.TAGS}),(0,mu.jsx)(zp,{properties:"scope",template:_p.TAGS}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_tasks.task.description",properties:"description"}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_tasks.task.author",properties:"firstAuthor",width:170}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"totalAuthors",title:"plugin.team_tasks.task.totalAuthors",width:120}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"totalDaysInBacklog",title:"plugin.team_tasks.task.totalDaysInBacklog",width:120}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"totalDaysWorked",title:"plugin.team_tasks.task.totalDaysWorked",width:120}),(0,mu.jsx)(zp,{template:_p.STRING,properties:"createdBefore",title:"plugin.team_tasks.task.createdBefore",width:150,formatter:Zi}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_tasks.task.from",properties:"firstCommit",width:150,formatter:Zi}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.team_tasks.task.to",properties:"lastCommit",width:150,formatter:Zi})]}):null}LM.defaultProps={response:void 0};const MM=LM,FM=yi((e=>{let{mode:n}=e;const a=PT.statisticsByCommits.tasks.totalInfo,[s,i]=(0,t.useState)(a),[o,r]=(0,t.useState)(""),l=(0,t.useMemo)((()=>s.filter((e=>e.totalDaysInBacklog>90))),[o]),m=(0,t.useMemo)((()=>s.filter((e=>e.totalDaysInBacklog<=90))),[o]),c="".concat(n).concat(o).concat(PT.hash);return null!==a&&void 0!==a&&a.length?(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsxs)(Pw,{value:"print"!==n,children:[(0,mu.jsx)(sx,{title:"common.filters"}),(0,mu.jsx)(cT,{content:a,mode:"sort-by-searchIndex",properties:["description","task","firstAuthor"],onChange:(e,t)=>{i(e),r(t)},onFilter:e=>t=>!(e.author&&!t.authors.has(e.author))&&((!e.company||t.company===e.company)&&((!e.taskCode||t.taskCode===e.taskCode)&&(!(e.scope&&!t.scope.includes(e.scope))&&!(e.type&&!t.types.includes(e.type)))))})]}),(0,mu.jsxs)(Pw,{value:(null===s||void 0===s?void 0:s.length)>8,children:[(0,mu.jsx)(EM,{content:s}),(0,mu.jsx)(dT,{height:"xl"})]}),(0,mu.jsxs)(Pw,{value:(null===s||void 0===s?void 0:s.length)>8,children:[(0,mu.jsx)(sx,{title:"plugin.team_tasks.charts.normal"}),(0,mu.jsx)(AM,{content:m}),(0,mu.jsx)(dT,{height:"xl"})]}),(0,mu.jsx)(sx,{title:"plugin.team_tasks.task.title"}),(0,mu.jsxs)(tS,{content:s,mode:n,watch:c,children:[(0,mu.jsx)(MM,{mode:n,rowsForExcel:s}),(0,mu.jsx)(Hw,{}),(0,mu.jsx)(KC,{})]}),(0,mu.jsxs)(Pw,{value:(null===l||void 0===l?void 0:l.length)>8,children:[(0,mu.jsx)(sx,{title:"plugin.team_tasks.charts.backlog"}),(0,mu.jsx)(TM,{content:l})]})]}):"print"!==n?(0,mu.jsx)(Hw,{}):null}));class WM{getMenuItems(){return[{id:"tasks",group:40,order:170,link:"/team/tasks",title:"plugin.team_tasks.sidebar",icon:"./assets/menu/team_tasks.svg"}]}getPage(e,t){return"/team/tasks"===e?(0,mu.jsx)(FM,{mode:null===t||void 0===t?void 0:t.mode}):void 0}getTranslations(){return _M}}WM.id="team_tasks";const qM="tempo",zM="tempo_wrapper",BM="tempo_column",UM="tempo_column_wrapper",HM="tempo_header",GM="tempo_author",VM="tempo_header_title",KM="tempo_header_day";const $M=function(e){let{dayInfo:t}=e;return(0,mu.jsxs)("div",{className:HM,children:[(0,mu.jsx)("p",{className:VM,children:Zi(null===t||void 0===t?void 0:t.timestamp)}),(0,mu.jsx)("p",{className:KM,children:Xi(null===t||void 0===t?void 0:t.day,"long")})]})};const YM=function(e){let{name:t}=e;return(0,mu.jsx)("div",{className:GM,children:t||""})},XM="tempo_task",QM="tempo_task_wrapper",JM="tempo_task_header",ZM="tempo_task_value",eF="tempo_task_title",tF="tempo_task_tag",nF="tempo_task_tags",aF="tempo_task_commits",sF="tempo_task_hours",iF="tempo_task_icon";function oF(e){return"".concat(lo(e.hours),":").concat(lo(e.minutes))}function rF(e){const t=e[0],n=e[e.length-1];return t!==n?"c ".concat(oF(t)," \u0434\u043e ").concat(oF(n)):"\u0434\u043e ".concat(oF(t))}function lF(e){const t=new Set(e.map((e=>e.type))),n=Array.from(t).filter((e=>e)).map((e=>(0,mu.jsx)("p",{className:tF,children:e},e)));return(0,mu.jsx)(mu.Fragment,{children:n})}function mF(e){var t;let{title:n,commits:a}=e;const{t:s}=_u(),i=Hm.tasks.totalInfoByName.get(n),o=a[0].milliseconds,r=null===i||void 0===i||null===(t=i.prIds)||void 0===t?void 0:t.find((e=>Hm.pr.totalInfoByName.get(e).dateMerge>=o));return(0,mu.jsxs)("div",{className:XM,children:[(0,mu.jsxs)("div",{className:JM,children:[(0,mu.jsxs)("div",{children:[n?(0,mu.jsx)(jw,{task:n}):"\u2014",(0,mu.jsx)(Cw,{prId:r})]}),(0,mu.jsx)("div",{className:nF,children:lF(a)})]}),(0,mu.jsxs)("figure",{className:aF,children:[(0,mu.jsxs)("figure",{children:[(0,mu.jsx)("img",{src:"./assets/chart/commit.svg",className:iF}),(0,mu.jsx)("figcaption",{className:ZM,children:a.length})]}),(0,mu.jsx)("figcaption",{className:eF,children:s("page.team.day.commits")})]}),(0,mu.jsxs)("figure",{className:sF,children:[(0,mu.jsxs)("figure",{children:[(0,mu.jsx)("img",{src:"./assets/chart/clock.svg",className:iF}),(0,mu.jsx)("figcaption",{className:ZM,children:rF(a)})]}),(0,mu.jsx)("figcaption",{className:eF,children:s("page.team.day.activity")})]})]},n)}const cF=function(e){let{tasks:t}=e;const n=Object.entries(t).map((e=>{let[t,n]=e;return(0,mu.jsx)(mF,{title:t,commits:n},t)}));return(0,mu.jsx)("div",{className:QM,children:n})},uF="tempo_chart",pF="tempo_chart_dashboard",dF="tempo_chart_dot",hF="tempo_chart_legend",gF="tempo_chart_time";const fF=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,mu.jsx)("div",{className:dF,title:"".concat(e," \u0441\u0442\u0440\u043e\u043a \u0441 ").concat(lo(t),":00 \u0434\u043e ").concat(lo(t+1),":00"),style:{left:"".concat(n,"%"),height:"".concat(a,"%")}},t)}));return(0,mu.jsxs)("div",{className:uF,children:[(0,mu.jsx)("div",{className:pF,children:n}),(0,mu.jsxs)("div",{className:hF,children:[(0,mu.jsx)("span",{className:gF,children:"00:00"}),(0,mu.jsx)("span",{className:gF,children:"06:00"}),(0,mu.jsx)("span",{className:gF,children:"12:00"}),(0,mu.jsx)("span",{className:gF,children:"18:00"}),(0,mu.jsx)("span",{className:gF,children:"00:00"})]})]})};function yF(e){let{dayInfo:t,order:n,author:a}=e;const s=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,mu.jsxs)("div",{children:[a?null:(0,mu.jsx)(YM,{name:t}),(0,mu.jsx)(fF,{tasks:n}),(0,mu.jsx)(cF,{tasks:n})]},t)}));return(0,mu.jsxs)("div",{className:BM,children:[(0,mu.jsx)($M,{dayInfo:t}),(0,mu.jsx)("div",{className:"".concat(UM," scroll_y"),children:s.length?s:null})]})}yF.defaultProps={order:[],author:""};const vF=yF;vF.defaultProps={order:[],author:""};const _F=function(e){let{days:t,author:n,order:a}=e;const s=t.map((e=>(0,mu.jsx)(vF,{dayInfo:e,author:n,order:a||[]},null===e||void 0===e?void 0:e.timestamp)));return(0,mu.jsx)("div",{className:"".concat(zM," scroll_x"),onTouchStart:e=>e.stopPropagation(),onMouseDown:e=>e.stopPropagation(),children:(0,mu.jsx)("div",{className:qM,children:s})})};function kF(e){let{response:t,order:n,user:a}=e;return t?(0,mu.jsx)(_F,{days:t.content,author:a,order:n}):null}kF.defaultProps={response:void 0};const bF=yi((()=>{const e=PT.statisticsByCommits.timestamp.totalInfo.allCommitsByTimestamp||[],n=PT.statisticsByCommits.author.list||[],a=e[e.length-1],[s,i]=(0,t.useState)({user:0,week:a.week}),o=s.user?n[s.user-1]:"";if(null===e||void 0===e||!e.length)return(0,mu.jsx)(Hw,{});const r=function(e,t){return t.filter((t=>t.week===e.week)).slice(0,7)}({week:s.week,user:o},e);return null!==r&&void 0!==r&&r.length?(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(sx,{title:"common.filters"}),(0,mu.jsx)(yT,{children:(0,mu.jsx)(Nj,{filters:s,onChange:i})}),(0,mu.jsx)(vT,{children:(0,mu.jsx)(qC,{loader:()=>ZC({content:r}),watch:JSON.stringify(s),children:(0,mu.jsx)(kF,{order:n,user:o})})})]}):(0,mu.jsx)(Hw,{})}));class wF{getMenuItems(){return[{id:"day",group:20,order:90,link:"/team/day",title:"sidebar.team.day",icon:"./assets/menu/team_day.svg"}]}getPage(e){return"/team/day"===e?(0,mu.jsx)(bF,{}):void 0}}wF.id="team_day";const xF={ar:"\n\xa7 plugin.team_total.sidebar: \u0645\u0639\u0644\u0648\u0645\u0627\u062a \u0639\u0627\u0645\u0629\n\xa7 plugin.team_total.common.title: \u0645\u0639\u0644\u0648\u0645\u0627\u062a \u0639\u0627\u0645\u0629\n\xa7 plugin.team_total.common.duration.title: \u0627\u0644\u0645\u062f\u0629 \u0627\u0644\u0625\u062c\u0645\u0627\u0644\u064a\u0629 \u0644\u0644\u0639\u0645\u0644\n\xa7 plugin.team_total.common.duration.description: \u0643\u0627\u0645\u0644 \u0645\u062f\u0629 \u0627\u0644\u062a\u0637\u0648\u064a\u0631 \u0645\u0646 \u0623\u0648\u0644 \u0625\u0644\u0649 \u0622\u062e\u0631 \u0627\u0644\u062a\u0632\u0627\u0645\n\xa7 plugin.team_total.common.location.title: \u0627\u0644\u0645\u0643\u062a\u0628 \u0627\u0644\u0631\u0626\u064a\u0633\u064a\n\xa7 plugin.team_total.common.employees.title: \u0639\u062f\u062f \u0627\u0644\u0623\u0634\u062e\u0627\u0635 \u0641\u064a \u0627\u0644\u0642\u0633\u0645\n\xa7 plugin.team_total.release.title: \u0645\u0639\u0644\u0648\u0645\u0627\u062a \u0627\u0644\u0625\u0635\u062f\u0627\u0631\u0627\u062a\n\xa7 plugin.team_total.release.total.title: \u0625\u062c\u0645\u0627\u0644\u064a \u0627\u0644\u0625\u0635\u062f\u0627\u0631\u0627\u062a\n\xa7 plugin.team_total.release.total.description: \u0645\u0639\u0644\u0648\u0645\u0627\u062a \u0627\u0644\u0625\u0635\u062f\u0627\u0631\u0627\u062a\n\xa7 plugin.team_total.money.title: \u062a\u0643\u0644\u0641\u0629 \u0627\u0644\u062a\u0637\u0648\u064a\u0631\n\xa7 plugin.team_total.titleA: \u062d\u062c\u0645 \u0627\u0644\u0639\u0645\u0644\n\xa7 plugin.team_total.titleB: \u0627\u0644\u062a\u0643\u0644\u0641\u0629\n\xa7 plugin.team_total.daysWorked.title: \u0623\u064a\u0627\u0645-\u0634\u062e\u0635\n\xa7 plugin.team_total.daysWorked.description: \u064a\u062a\u0645 \u0627\u062d\u062a\u0633\u0627\u0628 \u0627\u0644\u0623\u064a\u0627\u0645 \u0627\u0644\u062a\u064a \u062a\u0645 \u0641\u064a\u0647\u0627 \u0625\u062c\u0631\u0627\u0621 \u0627\u0644\u062a\u0632\u0627\u0645\u0627\u062a \u0641\u0642\u0637\n\xa7 plugin.team_total.commits.title: \u0627\u0644\u062a\u0632\u0627\u0645\u0627\u062a\n\xa7 plugin.team_total.commits.description: \u0644\u0627 \u064a\u062a\u0645 \u0627\u062d\u062a\u0633\u0627\u0628 \u0627\u0644\u0641\u0631\u0648\u0639 \u0627\u0644\u0645\u062d\u0630\u0648\u0641\u0629\n\xa7 plugin.team_total.daysLosses.title: \u0623\u064a\u0627\u0645 \u0628\u062f\u0648\u0646 \u0627\u0644\u062a\u0632\u0627\u0645\u0627\u062a\n\xa7 plugin.team_total.daysLosses.description: \u0643\u0644 \u0627\u0644\u0623\u064a\u0627\u0645 \u0646\u0627\u0642\u0635: \u0627\u0644\u0639\u0637\u0644\u060c \u0639\u0637\u0644\u0627\u062a \u0646\u0647\u0627\u064a\u0629 \u0627\u0644\u0623\u0633\u0628\u0648\u0639\u060c \u0627\u0644\u0625\u062c\u0627\u0632\u0627\u062a\u060c \u0623\u064a\u0627\u0645 \u0627\u0644\u062a\u0632\u0627\u0645\u0627\u062a\n\xa7 plugin.team_total.employment.title: \u0639\u0644\u0649 \u0631\u0623\u0633 \u0627\u0644\u0639\u0645\u0644 / \u063a\u0627\u062f\u0631\n\xa7 plugin.team_total.employment.description: \u0625\u0630\u0627 \u0644\u0645 \u064a\u0642\u0645 \u0627\u0644\u0645\u0648\u0638\u0641 \u0628\u0623\u064a \u0627\u0644\u062a\u0632\u0627\u0645 \u062e\u0644\u0627\u0644 \u0634\u0647\u0631\u060c \u0641\u064a\u064f\u0639\u062f\u0651 \u0623\u0646\u0647 \u063a\u0627\u062f\u0631\n\xa7 plugin.team_total.moneyAll.title: \u062a\u0643\u0627\u0644\u064a\u0641 \u0627\u0644\u062a\u0637\u0648\u064a\u0631\n\xa7 plugin.team_total.moneyAll.description: \u0625\u062c\u0645\u0627\u0644\u064a \u062a\u0643\u0627\u0644\u064a\u0641 \u0627\u0644\u0631\u0648\u0627\u062a\u0628\u060c \u062a\u0634\u0645\u0644 \u0628\u062f\u0644 \u0627\u0644\u0625\u062c\u0627\u0632\u0627\u062a \u0648\u0627\u0644\u0632\u064a\u0627\u062f\u0629 \u0627\u0644\u0645\u062f\u0641\u0648\u0639\u0629 \u0644\u0644\u0639\u0645\u0644 \u0641\u064a \u0639\u0637\u0644\u0627\u062a \u0646\u0647\u0627\u064a\u0629 \u0627\u0644\u0623\u0633\u0628\u0648\u0639.\n\xa7 plugin.team_total.moneyWorked.title: \u0627\u0644\u0641\u0639\u0644\u064a\u0629\n\xa7 plugin.team_total.moneyWorked.description: \u0627\u0644\u0623\u064a\u0627\u0645 \u0627\u0644\u0641\u0639\u0644\u064a\u0629 \u0627\u0644\u0645\u0636\u0631\u0648\u0628\u0629 \u0641\u064a \u0645\u062a\u0648\u0633\u0637 \u0627\u0644\u0631\u0627\u062a\u0628\n\xa7 plugin.team_total.moneyLosses.title: \u0632\u064a\u0627\u062f\u0629 \u0645\u062d\u062a\u0645\u0644\u0629\n\xa7 plugin.team_total.moneyLosses.description: \u0623\u064a\u0627\u0645 \u0639\u0645\u0644 \u0645\u062f\u0641\u0648\u0639\u0629 \u0644\u0645 \u062a\u0643\u0646 \u0641\u064a\u0647\u0627 \u0627\u0644\u062a\u0632\u0627\u0645\u0627\u062a\n\xa7 plugin.team_total.weekendPayment.title: \u0639\u0645\u0644 \u0639\u0637\u0644\u0629 \u0646\u0647\u0627\u064a\u0629 \u0627\u0644\u0623\u0633\u0628\u0648\u0639\n\xa7 plugin.team_total.weekendPayment.description: \u0625\u062c\u0645\u0627\u0644\u064a \u0627\u0644\u0632\u064a\u0627\u062f\u0629 \u0627\u0644\u0645\u062f\u0641\u0648\u0639\u0629 \u0644\u0644\u0639\u0645\u0644 \u0641\u064a \u0639\u0637\u0644\u0627\u062a \u0646\u0647\u0627\u064a\u0629 \u0627\u0644\u0623\u0633\u0628\u0648\u0639\n\xa7 plugin.team_total.workSpeed.title: \u0645\u0647\u0627\u0645 \u0641\u064a \u0627\u0644\u064a\u0648\u0645\n\xa7 plugin.team_total.workSpeed.description: \u0645\u062a\u0648\u0633\u0637 \u0633\u0631\u0639\u0629 \u0639\u0645\u0644 \u0627\u0644\u0641\u0631\u064a\u0642 \u0645\u0639 \u0627\u0644\u062a\u0643\u0648\u064a\u0646 \u0627\u0644\u062d\u0627\u0644\u064a \u0644\u0644\u0645\u0648\u0638\u0641\u064a\u0646\n\xa7 plugin.team_total.moneySpeed.title: \u0634\u0647\u0631\u064a\u0627\u064b\n\xa7 plugin.team_total.moneySpeed.description: \u0645\u0628\u0644\u063a \u0627\u0644\u0631\u0648\u0627\u062a\u0628 \u0627\u0644\u0645\u062a\u0648\u0642\u0639 \u0645\u0639 \u0627\u0644\u062a\u0643\u0648\u064a\u0646 \u0627\u0644\u062d\u0627\u0644\u064a \u0644\u0644\u0645\u0648\u0638\u0641\u064a\u0646 \u062f\u0648\u0646 \u0627\u062d\u062a\u0633\u0627\u0628 \u0627\u0644\u0636\u0631\u0627\u0626\u0628 \u0648\u0627\u0644\u062a\u0643\u0627\u0644\u064a\u0641 \u0627\u0644\u0645\u0635\u0627\u062d\u0628\u0629\n\xa7 plugin.team_total.description1: *\u0623\u064a\u0627\u0645-\u0634\u062e\u0635* \u0647\u064a \u0639\u0645\u0644 \u0645\u0648\u0638\u0641 \u0648\u0627\u062d\u062f \u062e\u0644\u0627\u0644 \u064a\u0648\u0645 \u0639\u0645\u0644 \u0648\u0627\u062d\u062f. \u0639\u0644\u0649 \u0633\u0628\u064a\u0644 \u0627\u0644\u0645\u062b\u0627\u0644\u060c \u0641\u064a \u064a\u0648\u0645 \u062a\u0642\u0648\u064a\u0645\u064a \u0648\u0627\u062d\u062f\u060c \u064a\u0646\u062c\u0632 \u0641\u0631\u064a\u0642 \u0645\u0646 \u062b\u0644\u0627\u062b\u0629 \u0645\u0648\u0638\u0641\u064a\u0646 \u062d\u062c\u0645 \u0639\u0645\u0644 \u064a\u0633\u0627\u0648\u064a \u062b\u0644\u0627\u062b\u0629 \u0623\u064a\u0627\u0645-\u0634\u062e\u0635.\n\xa7 plugin.team_total.description2: \u062a\u064f\u062d\u062a\u0633\u0628 *\u0623\u064a\u0627\u0645 \u0627\u0644\u063a\u064a\u0627\u0628* \u0641\u0642\u0637 \u0643\u0623\u064a\u0627\u0645 \u0639\u0645\u0644 \u0643\u0627\u0646 \u064a\u0645\u0643\u0646 \u0641\u064a\u0647\u0627 \u0625\u062c\u0631\u0627\u0621 \u0627\u0644\u062a\u0632\u0627\u0645\u0627\u062a. \u0644\u0627 \u062a\u062f\u062e\u0644 \u0639\u0637\u0644\u0627\u062a \u0646\u0647\u0627\u064a\u0629 \u0627\u0644\u0623\u0633\u0628\u0648\u0639 \u0648\u0627\u0644\u0639\u0637\u0644 \u0627\u0644\u0631\u0633\u0645\u064a\u0629 \u0648\u0627\u0644\u0625\u062c\u0627\u0632\u0627\u062a \u0641\u064a \u0627\u0644\u062d\u0633\u0627\u0628.\n\xa7 plugin.team_total.description3: \u062a\u0639\u0631\u0636 \u0628\u0637\u0627\u0642\u0629 *\u0639\u0644\u0649 \u0631\u0623\u0633 \u0627\u0644\u0639\u0645\u0644 / \u063a\u0627\u062f\u0631* \u0627\u0644\u062a\u0643\u0648\u064a\u0646 \u0627\u0644\u0641\u0639\u0644\u064a \u0644\u0644\u0645\u0648\u0638\u0641\u064a\u0646 \u0627\u0644\u0630\u064a\u0646 \u064a\u0634\u0627\u0631\u0643\u0648\u0646 \u0628\u0627\u0633\u062a\u0645\u0631\u0627\u0631 \u0641\u064a \u0627\u0644\u0639\u0645\u0644. \u0628\u0627\u0644\u0625\u0636\u0627\u0641\u0629 \u0625\u0644\u0649 \u0630\u0644\u0643\u060c \u0647\u0646\u0627\u0643 \xab\u0645\u0633\u0627\u0639\u062f\u0648\u0646\xbb \u2014 \u063a\u0627\u0644\u0628\u0627\u064b \u0645\u0648\u0638\u0641\u0648\u0646 \u0628\u062a\u062e\u0635\u0635 \u0645\u062e\u062a\u0644\u0641 \u0642\u062f \u064a\u062c\u0631\u0648\u0646 \u0627\u0644\u062a\u0632\u0627\u0645\u0627\u062a \u0641\u064a \u0627\u0644\u0645\u0634\u0631\u0648\u0639 \u0623\u062d\u064a\u0627\u0646\u0627\u064b.\n\xa7 plugin.team_total.description4: \u062a\u064f\u0639\u062f\u0651 *\u0627\u0644\u0632\u064a\u0627\u062f\u0629* \u0641\u0642\u0637 \u0623\u064a\u0627\u0645 \u0627\u0644\u0639\u0645\u0644 \u0627\u0644\u062a\u064a \u0643\u0627\u0646 \u064a\u0645\u0643\u0646 \u0641\u064a\u0647\u0627 \u0625\u062c\u0631\u0627\u0621 \u0627\u0644\u062a\u0632\u0627\u0645\u0627\u062a. \u0644\u0627 \u062a\u062f\u062e\u0644 \u0639\u0637\u0644\u0627\u062a \u0646\u0647\u0627\u064a\u0629 \u0627\u0644\u0623\u0633\u0628\u0648\u0639 \u0648\u0627\u0644\u0639\u0637\u0644 \u0627\u0644\u0631\u0633\u0645\u064a\u0629 \u0648\u0627\u0644\u0625\u062c\u0627\u0632\u0627\u062a \u0641\u064a \u0627\u0644\u062d\u0633\u0627\u0628. \u0644\u0630\u0644\u0643\u060c \u0627\u0644\u0632\u064a\u0627\u062f\u0629 + \u0627\u0644\u062a\u0643\u0644\u0641\u0629 \u0627\u0644\u0641\u0639\u0644\u064a\u0629 != \u0627\u0644\u0625\u062c\u0645\u0627\u0644\u064a\u0629. \u0627\u0644\u062a\u0643\u0644\u0641\u0629 \u0627\u0644\u0625\u062c\u0645\u0627\u0644\u064a\u0629 \u062a\u062a\u0636\u0645\u0646 \u0627\u0644\u062f\u0641\u0639 \u0639\u0646 \u0639\u0637\u0644\u0627\u062a \u0646\u0647\u0627\u064a\u0629 \u0627\u0644\u0623\u0633\u0628\u0648\u0639 \u0648\u0627\u0644\u0639\u0637\u0644 \u0627\u0644\u0631\u0633\u0645\u064a\u0629 \u0648\u0627\u0644\u0625\u062c\u0627\u0632\u0627\u062a.\n\xa7 plugin.team_total.description5: \u064a\u064f\u062d\u0633\u0628 *\u0627\u0644\u0639\u0645\u0644 \u0641\u064a \u0639\u0637\u0644\u0629 \u0646\u0647\u0627\u064a\u0629 \u0627\u0644\u0623\u0633\u0628\u0648\u0639* \u0628\u0645\u0639\u0627\u0645\u0644 x2 \u0645\u0642\u0627\u0631\u0646\u0629\u064b \u0628\u0623\u062c\u0631 \u0627\u0644\u064a\u0648\u0645 \u0627\u0644\u0639\u0627\u062f\u064a. \u0627\u0644\u0645\u0639\u0631\u0648\u0636 \u0623\u0639\u0644\u0627\u0647 \u0647\u0648 \u0627\u0644\u0632\u064a\u0627\u062f\u0629 \u0641\u0642\u0637 (x1)\u060c \u0644\u0623\u0646 \u062d\u0642\u064a\u0642\u0629 \u0627\u0644\u0639\u0645\u0644 \u0627\u0644\u0625\u0636\u0627\u0641\u064a \u0628\u062d\u062f \u0630\u0627\u062a\u0647\u0627 \u063a\u064a\u0631 \u0645\u0647\u0645\u0629 \u0641\u064a \u0647\u0630\u0627 \u0627\u0644\u0633\u064a\u0627\u0642. \u0646\u062d\u0646 \u0644\u0627 \u0646\u0646\u0638\u0631 \u0625\u0644\u0649 \u0633\u0631\u0639\u0629 \u062d\u0631\u0642 \u0627\u0644\u0645\u064a\u0632\u0627\u0646\u064a\u0629. \u0646\u062d\u0646 \u0646\u0646\u0638\u0631 \u0625\u0644\u0649 \u0627\u0644\u0632\u064a\u0627\u062f\u0629 \u0639\u0646\u062f \u0632\u064a\u0627\u062f\u0629 \u0633\u0631\u0639\u0629 \u0627\u0644\u0639\u0645\u0644.\n",de:"\n\xa7 plugin.team_total.sidebar: Allgemeine Informationen\n\xa7 plugin.team_total.common.title: Allgemeine Informationen\n\xa7 plugin.team_total.common.duration.title: gesamte Arbeitsdauer\n\xa7 plugin.team_total.common.duration.description: Gesamte Entwicklungszeit vom ersten bis zum letzten Commit\n\xa7 plugin.team_total.common.location.title: Zentrale\n\xa7 plugin.team_total.common.employees.title: Personen in der Abteilung\n\xa7 plugin.team_total.release.title: Release-Informationen\n\xa7 plugin.team_total.release.total.title: Releases insgesamt\n\xa7 plugin.team_total.release.total.description: Release-Informationen\n\xa7 plugin.team_total.money.title: Entwicklungskosten\n\xa7 plugin.team_total.titleA: Arbeitsvolumen\n\xa7 plugin.team_total.titleB: Kosten\n\xa7 plugin.team_total.daysWorked.title: Personentage\n\xa7 plugin.team_total.daysWorked.description: Es werden nur Tage ber\xfccksichtigt, an denen Commits erstellt wurden\n\xa7 plugin.team_total.commits.title: Commits\n\xa7 plugin.team_total.commits.description: Gel\xf6schte Branches werden nicht gez\xe4hlt\n\xa7 plugin.team_total.daysLosses.title: Tage ohne Commits\n\xa7 plugin.team_total.daysLosses.description: Alle Tage minus: Feiertage, Wochenenden, Urlaub, Tage mit Commits\n\xa7 plugin.team_total.employment.title: aktiv / ausgeschieden\n\xa7 plugin.team_total.employment.description: Wenn ein Mitarbeiter innerhalb eines Monats keinen einzigen Commit macht, gilt er als ausgeschieden\n\xa7 plugin.team_total.moneyAll.title: Entwicklungskosten\n\xa7 plugin.team_total.moneyAll.description: Gesamtaufwand f\xfcr Geh\xe4lter; inkl. Urlaubsverg\xfctung und Mehrzahlung f\xfcr Wochenendarbeit.\n\xa7 plugin.team_total.moneyWorked.title: tats\xe4chlich\n\xa7 plugin.team_total.moneyWorked.description: Tats\xe4chlich gearbeitete Tage multipliziert mit dem Durchschnittsgehalt\n\xa7 plugin.team_total.moneyLosses.title: m\xf6gliche Mehrzahlung\n\xa7 plugin.team_total.moneyLosses.description: Bezahlte Arbeitstage, an denen es keine Commits gab\n\xa7 plugin.team_total.weekendPayment.title: Wochenendarbeit\n\xa7 plugin.team_total.weekendPayment.description: Gesamte Mehrzahlung f\xfcr Wochenendarbeit\n\xa7 plugin.team_total.workSpeed.title: Aufgaben pro Tag\n\xa7 plugin.team_total.workSpeed.description: Durchschnittliche Teamleistung bei aktueller Mitarbeiterzusammensetzung\n\xa7 plugin.team_total.moneySpeed.title: pro Monat\n\xa7 plugin.team_total.moneySpeed.description: Prognostizierte Auszahlungssumme f\xfcr Geh\xe4lter bei aktueller Mitarbeiterzusammensetzung, ohne Steuern und Nebenkosten\n\xa7 plugin.team_total.description1: *Personentage* sind die Arbeit eines Mitarbeiters w\xe4hrend eines Arbeitstags. Zum Beispiel liefert ein Team aus drei Mitarbeitern an einem Kalendertag ein Arbeitsvolumen von drei Personentagen.\n\xa7 plugin.team_total.description2: Als *Fehltage* gelten nur Arbeitstage, an denen Commits h\xe4tten gemacht werden k\xf6nnen. Wochenenden, gesetzliche Feiertage und Urlaub werden nicht ber\xfccksichtigt.\n\xa7 plugin.team_total.description3: Die Karte *aktiv / ausgeschieden* zeigt die tats\xe4chliche Zusammensetzung der Mitarbeiter, die kontinuierlich an der Arbeit beteiligt sind. Zus\xe4tzlich gibt es \u201eHelfer\u201c \u2014 das sind in der Regel Mitarbeiter einer anderen Spezialisierung, die gelegentlich Commits ins Projekt bringen.\n\xa7 plugin.team_total.description4: Als *Mehrzahlung* gelten nur Arbeitstage, an denen Commits h\xe4tten gemacht werden k\xf6nnen. Wochenenden, gesetzliche Feiertage und Urlaub werden nicht ber\xfccksichtigt. Deshalb gilt: Mehrzahlung + tats\xe4chliche Kosten != Gesamt. In den Gesamtkosten sind Zahlungen f\xfcr Wochenenden, gesetzliche Feiertage und Urlaub enthalten.\n\xa7 plugin.team_total.description5: Als *Wochenendarbeit* gilt ein Koeffizient von x2 im Vergleich zur Bezahlung eines normalen Tages. Oben wird nur die Mehrzahlung (x1) angezeigt, da der Fakt der Mehrarbeit in diesem Kontext nicht relevant ist. Wir betrachten nicht die Budget-Burn-Rate. Wir betrachten die Mehrzahlung bei steigender Arbeitsgeschwindigkeit.\n",en:'\n\xa7 plugin.team_total.sidebar: Common info\n\xa7 plugin.team_total.common.title: About the project\n\xa7 plugin.team_total.workSpeed.title: tasks per day\n\xa7 plugin.team_total.workSpeed.description: Average team throughput with the current staff composition\n\xa7 plugin.team_total.employment.title: works / left\n\xa7 plugin.team_total.employment.description: If a staff member did not make a single commit within a month, they are considered to have left\n\xa7 plugin.team_total.common.duration.title: total work duration\n\xa7 plugin.team_total.common.duration.description: Total development time from the first to the last commit.\n\xa7 plugin.team_total.common.location.title: head office\n\xa7 plugin.team_total.common.location.description: Most popular location for the current core staff composition.\n\xa7 plugin.team_total.common.employees.title: people in the department\n\xa7 plugin.team_total.common.employees.description: Based on the forecast of total staff size by the change rate of task IDs.\n\xa7 plugin.team_total.release.title: Release information\n\xa7 plugin.team_total.release.total.title: total releases\n\xa7 plugin.team_total.release.total.description: A release is a branch with the word "release". As a rule, they appear in "auto-merge" events.\n\xa7 plugin.team_total.money.title: Development cost estimate\n\xa7 plugin.team_total.moneyAll.title: total\n\xa7 plugin.team_total.moneyAll.description: Total payroll costs, including vacation pay and overpayment for weekend work.\n\xa7 plugin.team_total.moneyWorked.title: actual\n\xa7 plugin.team_total.moneyWorked.description: Actual days worked multiplied by the average salary.\n\xa7 plugin.team_total.moneyLosses.title: possible overpayment\n\xa7 plugin.team_total.moneyLosses.description: Paid workdays when there were no commits.\n\xa7 plugin.team_total.weekendPayment.title: weekend work\n\xa7 plugin.team_total.weekendPayment.description: Total overpayment for weekend work.\n\xa7 plugin.team_total.moneySpeed.title: per month\n\xa7 plugin.team_total.moneySpeed.description: Forecasted payroll amount with the current staff composition, excluding taxes, equipment depreciation, and related costs.\n\xa7 plugin.team_total.forecastingMoneyAll.title: project costs over time\n\xa7 plugin.team_total.forecastingMoneyAll.description: Possible payroll amount over time for all potential staff members of the department who are not present in the logs but could have been (based on task ID numbering in the task tracker). \n\xa7 plugin.team_total.description1: *Person days* are the work of one staff member during one working day. For example, in one calendar day, a team of three staff members delivers a work volume of three person days.\n\xa7 plugin.team_total.description2: *Absence days* include only working days when commits could have been made. Weekends, public holidays, and vacations are not included in the calculation.\n\xa7 plugin.team_total.description3: The *works / left* card shows the actual staff members who are consistently involved in the work. In addition, there are \u201cstaff\u201d \u2014 typically people with a different specialization who may occasionally make commits to the project.\n\xa7 plugin.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. That is why overpayment + actual cost != total. The total cost includes payments for weekends, public holidays, and vacations.\n\xa7 plugin.team_total.description5: *Weekend work* is calculated using a x2 coefficient relative to a regular day\u2019s pay. Only the overpayment (x1) is shown above, because the overtime fact itself is not important in this context. We are not looking at budget burn rate. We are looking at overpayment when work speed increases.\n',es:"\n\xa7 plugin.team_total.sidebar: Informaci\xf3n general\n\xa7 plugin.team_total.common.title: Informaci\xf3n general\n\xa7 plugin.team_total.common.duration.title: duraci\xf3n total del trabajo\n\xa7 plugin.team_total.common.duration.description: Todo el tiempo de desarrollo desde el primer hasta el \xfaltimo commit\n\xa7 plugin.team_total.common.location.title: oficina central\n\xa7 plugin.team_total.common.employees.title: personas en el departamento\n\xa7 plugin.team_total.release.title: Informaci\xf3n de lanzamientos\n\xa7 plugin.team_total.release.total.title: lanzamientos totales\n\xa7 plugin.team_total.release.total.description: Informaci\xf3n de lanzamientos\n\xa7 plugin.team_total.money.title: Costo de desarrollo\n\xa7 plugin.team_total.titleA: Volumen de trabajo\n\xa7 plugin.team_total.titleB: Costo\n\xa7 plugin.team_total.daysWorked.title: d\xedas-persona\n\xa7 plugin.team_total.daysWorked.description: Solo se consideran los d\xedas en los que se hicieron commits\n\xa7 plugin.team_total.commits.title: commits\n\xa7 plugin.team_total.commits.description: Las ramas eliminadas no se cuentan\n\xa7 plugin.team_total.daysLosses.title: d\xedas sin commits\n\xa7 plugin.team_total.daysLosses.description: Todos los d\xedas menos: festivos, fines de semana, vacaciones, d\xedas con commits\n\xa7 plugin.team_total.employment.title: activos / baja\n\xa7 plugin.team_total.employment.description: Si un empleado no hizo ni un solo commit en el transcurso de un mes, se considera que ha causado baja\n\xa7 plugin.team_total.moneyAll.title: costos de desarrollo\n\xa7 plugin.team_total.moneyAll.description: Costos salariales totales, incluidos pago de vacaciones y sobrepago por trabajo en fines de semana.\n\xa7 plugin.team_total.moneyWorked.title: real\n\xa7 plugin.team_total.moneyWorked.description: D\xedas efectivamente trabajados multiplicados por el salario medio\n\xa7 plugin.team_total.moneyLosses.title: posible sobrepago\n\xa7 plugin.team_total.moneyLosses.description: D\xedas laborables pagados cuando no hubo commits\n\xa7 plugin.team_total.weekendPayment.title: trabajo en fin de semana\n\xa7 plugin.team_total.weekendPayment.description: Sobrepago total por trabajo en fines de semana\n\xa7 plugin.team_total.workSpeed.title: tareas al d\xeda\n\xa7 plugin.team_total.workSpeed.description: Velocidad media de trabajo del equipo con la composici\xf3n actual de personal\n\xa7 plugin.team_total.moneySpeed.title: al mes\n\xa7 plugin.team_total.moneySpeed.description: Monto estimado de n\xf3mina con la composici\xf3n actual de personal, sin impuestos ni costos asociados\n\xa7 plugin.team_total.description1: *D\xedas-persona* es el trabajo de un empleado durante un d\xeda laborable. Por ejemplo, en un d\xeda calendario, un equipo de tres empleados entrega un volumen de trabajo de tres d\xedas-persona.\n\xa7 plugin.team_total.description2: Por *d\xedas de ausencia* se consideran solo los d\xedas laborables en los que podr\xedan haberse hecho commits. Los fines de semana, festivos oficiales y vacaciones no participan en el c\xe1lculo.\n\xa7 plugin.team_total.description3: La tarjeta *activos y baja* muestra la composici\xf3n real del personal que participa de forma constante en el trabajo. Adem\xe1s, hay \u201cayudantes\u201d: empleados, por lo general de otra especialidad, que pueden hacer commits en el proyecto de vez en cuando.\n\xa7 plugin.team_total.description4: Por *sobrepago* se consideran solo los d\xedas laborables en los que podr\xedan haberse hecho commits. Los fines de semana, festivos oficiales y vacaciones no participan en el c\xe1lculo. Por eso, sobrepago + costo real != total. En el total se incluye el pago de fines de semana, festivos oficiales y vacaciones.\n\xa7 plugin.team_total.description5: Por *trabajo en fin de semana* se aplica un coeficiente x2 respecto al pago de un d\xeda normal. Arriba se muestra solo el sobrepago (x1), ya que el hecho de la sobrejornada en este contexto no es relevante. No observamos la velocidad de quema del presupuesto. Observamos el sobrepago al aumentar la velocidad de trabajo.\n",fr:"\n\xa7 plugin.team_total.sidebar: Informations g\xe9n\xe9rales\n\xa7 plugin.team_total.common.title: Informations g\xe9n\xe9rales\n\xa7 plugin.team_total.common.duration.title: dur\xe9e totale des travaux\n\xa7 plugin.team_total.common.duration.description: Toute la dur\xe9e de d\xe9veloppement, du premier au dernier commit\n\xa7 plugin.team_total.common.location.title: si\xe8ge\n\xa7 plugin.team_total.common.employees.title: personnes dans le service\n\xa7 plugin.team_total.release.title: Informations sur les versions\n\xa7 plugin.team_total.release.total.title: versions au total\n\xa7 plugin.team_total.release.total.description: Informations sur les versions\n\xa7 plugin.team_total.money.title: Co\xfbt de d\xe9veloppement\n\xa7 plugin.team_total.titleA: Volume de travaux\n\xa7 plugin.team_total.titleB: Co\xfbt\n\xa7 plugin.team_total.daysWorked.title: jours-homme\n\xa7 plugin.team_total.daysWorked.description: Seuls les jours o\xf9 des commits ont \xe9t\xe9 effectu\xe9s sont pris en compte\n\xa7 plugin.team_total.commits.title: commits\n\xa7 plugin.team_total.commits.description: Les branches supprim\xe9es ne sont pas compt\xe9es\n\xa7 plugin.team_total.daysLosses.title: jours sans commits\n\xa7 plugin.team_total.daysLosses.description: Tous les jours moins : jours f\xe9ri\xe9s, week-ends, cong\xe9s, jours avec commits\n\xa7 plugin.team_total.employment.title: actifs / sortis\n\xa7 plugin.team_total.employment.description: Si un employ\xe9 ne fait aucun commit pendant un mois, il est consid\xe9r\xe9 comme sorti\n\xa7 plugin.team_total.moneyAll.title: co\xfbts de d\xe9veloppement\n\xa7 plugin.team_total.moneyAll.description: Co\xfbts salariaux cumul\xe9s, incluant les cong\xe9s pay\xe9s et le surco\xfbt du travail le week-end.\n\xa7 plugin.team_total.moneyWorked.title: r\xe9el\n\xa7 plugin.team_total.moneyWorked.description: Jours effectivement travaill\xe9s multipli\xe9s par le salaire moyen\n\xa7 plugin.team_total.moneyLosses.title: surco\xfbt possible\n\xa7 plugin.team_total.moneyLosses.description: Jours ouvr\xe9s pay\xe9s alors qu\u2019il n\u2019y a pas eu de commits\n\xa7 plugin.team_total.weekendPayment.title: travail le week-end\n\xa7 plugin.team_total.weekendPayment.description: Surco\xfbt total du travail le week-end\n\xa7 plugin.team_total.workSpeed.title: t\xe2ches par jour\n\xa7 plugin.team_total.workSpeed.description: Vitesse moyenne de l\u2019\xe9quipe avec la composition actuelle du personnel\n\xa7 plugin.team_total.moneySpeed.title: par mois\n\xa7 plugin.team_total.moneySpeed.description: Montant pr\xe9visionnel de la masse salariale avec la composition actuelle du personnel, hors taxes et co\xfbts associ\xe9s\n\xa7 plugin.team_total.description1: *Les jours-homme* correspondent au travail d\u2019un employ\xe9 pendant une journ\xe9e ouvr\xe9e. Par exemple, en un jour calendaire, une \xe9quipe de trois employ\xe9s produit un volume de travail de trois jours-homme.\n\xa7 plugin.team_total.description2: Les *jours d\u2019absence* ne comptent que les jours ouvr\xe9s o\xf9 des commits auraient pu \xeatre r\xe9alis\xe9s. Les week-ends, jours f\xe9ri\xe9s et cong\xe9s ne sont pas inclus dans le calcul.\n\xa7 plugin.team_total.description3: La carte *actifs / sortis* montre la composition r\xe9elle des collaborateurs qui participent en continu au travail. En plus, il existe des \xab assistants \xbb \u2014 g\xe9n\xe9ralement des collaborateurs d\u2019une autre sp\xe9cialit\xe9 \u2014 qui peuvent parfois faire des commits dans le projet.\n\xa7 plugin.team_total.description4: Le *surco\xfbt* ne comprend que les jours ouvr\xe9s o\xf9 des commits auraient pu \xeatre r\xe9alis\xe9s. Les week-ends, jours f\xe9ri\xe9s et cong\xe9s ne sont pas inclus dans le calcul. C\u2019est pourquoi surco\xfbt + co\xfbt r\xe9el != total. Le total inclut le paiement des week-ends, jours f\xe9ri\xe9s et cong\xe9s.\n\xa7 plugin.team_total.description5: Le *travail le week-end* est calcul\xe9 avec un coefficient x2 par rapport \xe0 la r\xe9mun\xe9ration d\u2019une journ\xe9e normale. Seul le surco\xfbt (x1) est affich\xe9 ci-dessus, car le fait m\xeame des heures suppl\xe9mentaires n\u2019est pas pertinent dans ce contexte. Nous ne regardons pas la vitesse de consommation du budget. Nous regardons le surco\xfbt lorsque la vitesse de travail augmente.\n",he:"\n\xa7 plugin.team_total.sidebar: \u05de\u05d9\u05d3\u05e2 \u05db\u05dc\u05dc\u05d9\n\xa7 plugin.team_total.common.title: \u05de\u05d9\u05d3\u05e2 \u05db\u05dc\u05dc\u05d9\n\xa7 plugin.team_total.common.duration.title: \u05de\u05e9\u05da \u05d4\u05e2\u05d1\u05d5\u05d3\u05d4 \u05d4\u05db\u05d5\u05dc\u05dc\n\xa7 plugin.team_total.common.duration.description: \u05db\u05dc \u05d6\u05de\u05df \u05d4\u05e4\u05d9\u05ea\u05d5\u05d7 \u05de\u05d4\u05e7\u05d5\u05de\u05d9\u05d8 \u05d4\u05e8\u05d0\u05e9\u05d5\u05df \u05d5\u05e2\u05d3 \u05d4\u05d0\u05d7\u05e8\u05d5\u05df\n\xa7 plugin.team_total.common.location.title: \u05d4\u05de\u05e9\u05e8\u05d3 \u05d4\u05de\u05e8\u05db\u05d6\u05d9\n\xa7 plugin.team_total.common.employees.title: \u05d0\u05e0\u05e9\u05d9\u05dd \u05d1\u05de\u05d7\u05dc\u05e7\u05d4\n\xa7 plugin.team_total.release.title: \u05de\u05d9\u05d3\u05e2 \u05e2\u05dc \u05d2\u05e8\u05e1\u05d0\u05d5\u05ea\n\xa7 plugin.team_total.release.total.title: \u05e1\u05da \u05db\u05dc \u05d4\u05d2\u05e8\u05e1\u05d0\u05d5\u05ea\n\xa7 plugin.team_total.release.total.description: \u05de\u05d9\u05d3\u05e2 \u05e2\u05dc \u05d2\u05e8\u05e1\u05d0\u05d5\u05ea\n\xa7 plugin.team_total.money.title: \u05e2\u05dc\u05d5\u05ea \u05d4\u05e4\u05d9\u05ea\u05d5\u05d7\n\xa7 plugin.team_total.titleA: \u05d4\u05d9\u05e7\u05e3 \u05e2\u05d1\u05d5\u05d3\u05d4\n\xa7 plugin.team_total.titleB: \u05e2\u05dc\u05d5\u05ea\n\xa7 plugin.team_total.daysWorked.title: \u05d9\u05de\u05d9-\u05d0\u05d3\u05dd\n\xa7 plugin.team_total.daysWorked.description: \u05e0\u05e1\u05e4\u05e8\u05d9\u05dd \u05e8\u05e7 \u05d9\u05de\u05d9\u05dd \u05e9\u05d1\u05d4\u05dd \u05d1\u05d5\u05e6\u05e2\u05d5 \u05e7\u05d5\u05de\u05d9\u05d8\u05d9\u05dd\n\xa7 plugin.team_total.commits.title: \u05e7\u05d5\u05de\u05d9\u05d8\u05d9\u05dd\n\xa7 plugin.team_total.commits.description: \u05e2\u05e0\u05e4\u05d9\u05dd \u05e9\u05e0\u05de\u05d7\u05e7\u05d5 \u05dc\u05d0 \u05e0\u05e1\u05e4\u05e8\u05d9\u05dd\n\xa7 plugin.team_total.daysLosses.title: \u05d9\u05de\u05d9\u05dd \u05dc\u05dc\u05d0 \u05e7\u05d5\u05de\u05d9\u05d8\u05d9\u05dd\n\xa7 plugin.team_total.daysLosses.description: \u05db\u05dc \u05d4\u05d9\u05de\u05d9\u05dd \u05de\u05d9\u05e0\u05d5\u05e1: \u05d7\u05d2\u05d9\u05dd, \u05e1\u05d5\u05e4\u05d9 \u05e9\u05d1\u05d5\u05e2, \u05d7\u05d5\u05e4\u05e9\u05d4, \u05d9\u05de\u05d9\u05dd \u05e2\u05dd \u05e7\u05d5\u05de\u05d9\u05d8\u05d9\u05dd\n\xa7 plugin.team_total.employment.title: \u05e2\u05d5\u05d1\u05d3 / \u05e2\u05d6\u05d1\n\xa7 plugin.team_total.employment.description: \u05d0\u05dd \u05e2\u05d5\u05d1\u05d3 \u05dc\u05d0 \u05d1\u05d9\u05e6\u05e2 \u05d0\u05e3 \u05e7\u05d5\u05de\u05d9\u05d8 \u05d1\u05de\u05e9\u05da \u05d7\u05d5\u05d3\u05e9, \u05d4\u05d5\u05d0 \u05e0\u05d7\u05e9\u05d1 \u05db\u05e2\u05d6\u05d1\n\xa7 plugin.team_total.moneyAll.title: \u05e2\u05dc\u05d5\u05d9\u05d5\u05ea \u05e4\u05d9\u05ea\u05d5\u05d7\n\xa7 plugin.team_total.moneyAll.description: \u05e2\u05dc\u05d5\u05d9\u05d5\u05ea \u05e9\u05db\u05e8 \u05de\u05e6\u05d8\u05d1\u05e8\u05d5\u05ea, \u05db\u05d5\u05dc\u05dc \u05ea\u05e9\u05dc\u05d5\u05dd \u05d7\u05d5\u05e4\u05e9\u05d4 \u05d5\u05ea\u05d5\u05e1\u05e4\u05ea \u05e2\u05d1\u05d5\u05e8 \u05e2\u05d1\u05d5\u05d3\u05d4 \u05d1\u05e1\u05d5\u05e4\u05d9 \u05e9\u05d1\u05d5\u05e2.\n\xa7 plugin.team_total.moneyWorked.title: \u05d1\u05e4\u05d5\u05e2\u05dc\n\xa7 plugin.team_total.moneyWorked.description: \u05d9\u05de\u05d9\u05dd \u05e9\u05e2\u05d1\u05d3 \u05d1\u05e4\u05d5\u05e2\u05dc \u05db\u05e4\u05d5\u05dc \u05d4\u05e9\u05db\u05e8 \u05d4\u05de\u05de\u05d5\u05e6\u05e2\n\xa7 plugin.team_total.moneyLosses.title: \u05ea\u05e9\u05dc\u05d5\u05dd \u05d9\u05ea\u05e8 \u05d0\u05e4\u05e9\u05e8\u05d9\n\xa7 plugin.team_total.moneyLosses.description: \u05d9\u05de\u05d9 \u05e2\u05d1\u05d5\u05d3\u05d4 \u05e9\u05e9\u05d5\u05dc\u05de\u05d5 \u05e9\u05d1\u05d4\u05dd \u05dc\u05d0 \u05d4\u05d9\u05d5 \u05e7\u05d5\u05de\u05d9\u05d8\u05d9\u05dd\n\xa7 plugin.team_total.weekendPayment.title: \u05e2\u05d1\u05d5\u05d3\u05d4 \u05d1\u05e1\u05d5\u05e4\u05d9 \u05e9\u05d1\u05d5\u05e2\n\xa7 plugin.team_total.weekendPayment.description: \u05e1\u05da \u05ea\u05e9\u05dc\u05d5\u05dd \u05d4\u05d9\u05ea\u05e8 \u05e2\u05d1\u05d5\u05e8 \u05e2\u05d1\u05d5\u05d3\u05d4 \u05d1\u05e1\u05d5\u05e4\u05d9 \u05e9\u05d1\u05d5\u05e2\n\xa7 plugin.team_total.workSpeed.title: \u05de\u05e9\u05d9\u05de\u05d5\u05ea \u05d1\u05d9\u05d5\u05dd\n\xa7 plugin.team_total.workSpeed.description: \u05de\u05d4\u05d9\u05e8\u05d5\u05ea \u05e2\u05d1\u05d5\u05d3\u05d4 \u05de\u05de\u05d5\u05e6\u05e2\u05ea \u05e9\u05dc \u05d4\u05e6\u05d5\u05d5\u05ea \u05d1\u05d4\u05e8\u05db\u05d1 \u05d4\u05e2\u05d5\u05d1\u05d3\u05d9\u05dd \u05d4\u05e0\u05d5\u05db\u05d7\u05d9\n\xa7 plugin.team_total.moneySpeed.title: \u05d1\u05d7\u05d5\u05d3\u05e9\n\xa7 plugin.team_total.moneySpeed.description: \u05e1\u05db\u05d5\u05dd \u05ea\u05e9\u05dc\u05d5\u05dd \u05d4\u05e9\u05db\u05e8 \u05d4\u05d7\u05d6\u05d5\u05d9 \u05d1\u05d4\u05e8\u05db\u05d1 \u05d4\u05e2\u05d5\u05d1\u05d3\u05d9\u05dd \u05d4\u05e0\u05d5\u05db\u05d7\u05d9 \u05dc\u05dc\u05d0 \u05de\u05d9\u05e1\u05d9\u05dd \u05d5\u05e2\u05dc\u05d5\u05d9\u05d5\u05ea \u05e0\u05dc\u05d5\u05d5\u05ea\n\xa7 plugin.team_total.description1: *\u05d9\u05de\u05d9-\u05d0\u05d3\u05dd* \u05d4\u05dd \u05d4\u05e2\u05d1\u05d5\u05d3\u05d4 \u05e9\u05dc \u05e2\u05d5\u05d1\u05d3 \u05d0\u05d7\u05d3 \u05d1\u05de\u05d4\u05dc\u05da \u05d9\u05d5\u05dd \u05e2\u05d1\u05d5\u05d3\u05d4 \u05d0\u05d7\u05d3. \u05dc\u05d3\u05d5\u05d2\u05de\u05d4, \u05d1\u05d9\u05d5\u05dd \u05e7\u05dc\u05e0\u05d3\u05e8\u05d9 \u05d0\u05d7\u05d3, \u05e6\u05d5\u05d5\u05ea \u05e9\u05dc \u05e9\u05dc\u05d5\u05e9\u05d4 \u05e2\u05d5\u05d1\u05d3\u05d9\u05dd \u05de\u05e1\u05e4\u05e7 \u05d4\u05d9\u05e7\u05e3 \u05e2\u05d1\u05d5\u05d3\u05d4 \u05e9\u05dc \u05e9\u05dc\u05d5\u05e9\u05d4 \u05d9\u05de\u05d9-\u05d0\u05d3\u05dd.\n\xa7 plugin.team_total.description2: *\u05d9\u05de\u05d9 \u05d4\u05d9\u05e2\u05d3\u05e8\u05d5\u05ea* \u05e0\u05e1\u05e4\u05e8\u05d9\u05dd \u05e8\u05e7 \u05db\u05d9\u05de\u05d9 \u05e2\u05d1\u05d5\u05d3\u05d4 \u05e9\u05d1\u05d4\u05dd \u05e0\u05d9\u05ea\u05df \u05d4\u05d9\u05d4 \u05dc\u05d1\u05e6\u05e2 \u05e7\u05d5\u05de\u05d9\u05d8\u05d9\u05dd. \u05e1\u05d5\u05e4\u05d9 \u05e9\u05d1\u05d5\u05e2, \u05d7\u05d2\u05d9\u05dd \u05e8\u05e9\u05de\u05d9\u05d9\u05dd \u05d5\u05d7\u05d5\u05e4\u05e9\u05d5\u05ea \u05d0\u05d9\u05e0\u05dd \u05e0\u05db\u05dc\u05dc\u05d9\u05dd \u05d1\u05d7\u05d9\u05e9\u05d5\u05d1.\n\xa7 plugin.team_total.description3: \u05d4\u05db\u05e8\u05d8\u05d9\u05e1 *\u05e2\u05d5\u05d1\u05d3 / \u05e2\u05d6\u05d1* \u05de\u05e6\u05d9\u05d2 \u05d0\u05ea \u05d4\u05d4\u05e8\u05db\u05d1 \u05d1\u05e4\u05d5\u05e2\u05dc \u05e9\u05dc \u05e2\u05d5\u05d1\u05d3\u05d9\u05dd \u05d4\u05de\u05e9\u05ea\u05ea\u05e4\u05d9\u05dd \u05d1\u05e2\u05d1\u05d5\u05d3\u05d4 \u05d1\u05d0\u05d5\u05e4\u05df \u05e7\u05d1\u05d5\u05e2. \u05d1\u05e0\u05d5\u05e1\u05e3 \u05d9\u05e9 \u201c\u05e2\u05d5\u05d6\u05e8\u05d9\u05dd\u201d \u2014 \u05d1\u05d3\u05e8\u05da \u05db\u05dc\u05dc \u05e2\u05d5\u05d1\u05d3\u05d9\u05dd \u05d1\u05d4\u05ea\u05de\u05d7\u05d5\u05ea \u05d0\u05d7\u05e8\u05ea \u2014 \u05e9\u05d9\u05db\u05d5\u05dc\u05d9\u05dd \u05dc\u05e2\u05d9\u05ea\u05d9\u05dd \u05dc\u05d1\u05e6\u05e2 \u05e7\u05d5\u05de\u05d9\u05d8\u05d9\u05dd \u05d1\u05e4\u05e8\u05d5\u05d9\u05e7\u05d8.\n\xa7 plugin.team_total.description4: *\u05ea\u05e9\u05dc\u05d5\u05dd \u05d9\u05ea\u05e8* \u05db\u05d5\u05dc\u05dc \u05e8\u05e7 \u05d9\u05de\u05d9 \u05e2\u05d1\u05d5\u05d3\u05d4 \u05e9\u05d1\u05d4\u05dd \u05e0\u05d9\u05ea\u05df \u05d4\u05d9\u05d4 \u05dc\u05d1\u05e6\u05e2 \u05e7\u05d5\u05de\u05d9\u05d8\u05d9\u05dd. \u05e1\u05d5\u05e4\u05d9 \u05e9\u05d1\u05d5\u05e2, \u05d7\u05d2\u05d9\u05dd \u05e8\u05e9\u05de\u05d9\u05d9\u05dd \u05d5\u05d7\u05d5\u05e4\u05e9\u05d5\u05ea \u05d0\u05d9\u05e0\u05dd \u05e0\u05db\u05dc\u05dc\u05d9\u05dd \u05d1\u05d7\u05d9\u05e9\u05d5\u05d1. \u05dc\u05db\u05df \u05ea\u05e9\u05dc\u05d5\u05dd \u05d9\u05ea\u05e8 + \u05e2\u05dc\u05d5\u05ea \u05d1\u05e4\u05d5\u05e2\u05dc != \u05db\u05d5\u05dc\u05dc. \u05d4\u05e2\u05dc\u05d5\u05ea \u05d4\u05db\u05d5\u05dc\u05dc\u05ea \u05db\u05d5\u05dc\u05dc\u05ea \u05ea\u05e9\u05dc\u05d5\u05dd \u05e2\u05d1\u05d5\u05e8 \u05e1\u05d5\u05e4\u05d9 \u05e9\u05d1\u05d5\u05e2, \u05d7\u05d2\u05d9\u05dd \u05e8\u05e9\u05de\u05d9\u05d9\u05dd \u05d5\u05d7\u05d5\u05e4\u05e9\u05d5\u05ea.\n\xa7 plugin.team_total.description5: *\u05e2\u05d1\u05d5\u05d3\u05d4 \u05d1\u05e1\u05d5\u05e4\u05d9 \u05e9\u05d1\u05d5\u05e2* \u05de\u05d7\u05d5\u05e9\u05d1\u05ea \u05d1\u05de\u05e7\u05d3\u05dd x2 \u05d1\u05d9\u05d7\u05e1 \u05dc\u05ea\u05e9\u05dc\u05d5\u05dd \u05e9\u05dc \u05d9\u05d5\u05dd \u05e8\u05d2\u05d9\u05dc. \u05dc\u05de\u05e2\u05dc\u05d4 \u05de\u05d5\u05e6\u05d2 \u05e8\u05e7 \u05ea\u05e9\u05dc\u05d5\u05dd \u05d4\u05d9\u05ea\u05e8 (x1), \u05db\u05d9 \u05e2\u05e6\u05dd \u05d4\u05e2\u05d5\u05d1\u05d3\u05d4 \u05e9\u05dc \u05e9\u05e2\u05d5\u05ea \u05e0\u05d5\u05e1\u05e4\u05d5\u05ea \u05d0\u05d9\u05e0\u05d4 \u05de\u05e2\u05e0\u05d9\u05d9\u05e0\u05ea \u05d1\u05d4\u05e7\u05e9\u05e8 \u05d4\u05d6\u05d4. \u05d0\u05e0\u05d7\u05e0\u05d5 \u05dc\u05d0 \u05de\u05e1\u05ea\u05db\u05dc\u05d9\u05dd \u05e2\u05dc \u05e7\u05e6\u05d1 \u05e9\u05e8\u05d9\u05e4\u05ea \u05d4\u05ea\u05e7\u05e6\u05d9\u05d1. \u05d0\u05e0\u05d7\u05e0\u05d5 \u05de\u05e1\u05ea\u05db\u05dc\u05d9\u05dd \u05e2\u05dc \u05ea\u05e9\u05dc\u05d5\u05dd \u05d4\u05d9\u05ea\u05e8 \u05d1\u05e2\u05ea \u05d4\u05d2\u05d3\u05dc\u05ea \u05de\u05d4\u05d9\u05e8\u05d5\u05ea \u05d4\u05e2\u05d1\u05d5\u05d3\u05d4.\n",hi:"\n\xa7 plugin.team_total.sidebar: \u0938\u093e\u092e\u093e\u0928\u094d\u092f \u091c\u093e\u0928\u0915\u093e\u0930\u0940\n\xa7 plugin.team_total.common.title: \u0938\u093e\u092e\u093e\u0928\u094d\u092f \u091c\u093e\u0928\u0915\u093e\u0930\u0940\n\xa7 plugin.team_total.common.duration.title: \u0915\u093e\u0930\u094d\u092f \u0915\u0940 \u0915\u0941\u0932 \u0905\u0935\u0927\u093f\n\xa7 plugin.team_total.common.duration.description: \u092a\u0939\u0932\u0940 \u0938\u0947 \u0906\u0916\u093c\u093f\u0930\u0940 \u0915\u092e\u093f\u091f \u0924\u0915 \u0915\u093e \u092a\u0942\u0930\u093e \u0935\u093f\u0915\u093e\u0938 \u0938\u092e\u092f\n\xa7 plugin.team_total.common.location.title: \u0915\u0947\u0902\u0926\u094d\u0930\u0940\u092f \u0915\u093e\u0930\u094d\u092f\u093e\u0932\u092f\n\xa7 plugin.team_total.common.employees.title: \u0935\u093f\u092d\u093e\u0917 \u092e\u0947\u0902 \u0932\u094b\u0917\n\xa7 plugin.team_total.release.title: \u0930\u093f\u0932\u0940\u091c\u093c \u091c\u093e\u0928\u0915\u093e\u0930\u0940\n\xa7 plugin.team_total.release.total.title: \u0915\u0941\u0932 \u0930\u093f\u0932\u0940\u091c\u093c\n\xa7 plugin.team_total.release.total.description: \u0930\u093f\u0932\u0940\u091c\u093c \u091c\u093e\u0928\u0915\u093e\u0930\u0940\n\xa7 plugin.team_total.money.title: \u0935\u093f\u0915\u093e\u0938 \u0932\u093e\u0917\u0924\n\xa7 plugin.team_total.titleA: \u0915\u093e\u0930\u094d\u092f-\u092a\u0930\u093f\u092e\u093e\u0923\n\xa7 plugin.team_total.titleB: \u0932\u093e\u0917\u0924\n\xa7 plugin.team_total.daysWorked.title: \u0935\u094d\u092f\u0915\u094d\u0924\u093f-\u0926\u093f\u0928\n\xa7 plugin.team_total.daysWorked.description: \u0915\u0947\u0935\u0932 \u0935\u0947 \u0926\u093f\u0928 \u0917\u093f\u0928\u0947 \u091c\u093e\u0924\u0947 \u0939\u0948\u0902 \u091c\u093f\u0928\u092e\u0947\u0902 \u0915\u092e\u093f\u091f \u0915\u093f\u090f \u0917\u090f\n\xa7 plugin.team_total.commits.title: \u0915\u092e\u093f\u091f\u094d\u0938\n\xa7 plugin.team_total.commits.description: \u0939\u091f\u093e\u0908 \u0917\u0908 \u092c\u094d\u0930\u093e\u0902\u091a\u094b\u0902 \u0915\u094b \u0928\u0939\u0940\u0902 \u0917\u093f\u0928\u093e \u091c\u093e\u0924\u093e\n\xa7 plugin.team_total.daysLosses.title: \u092c\u093f\u0928\u093e \u0915\u092e\u093f\u091f \u0935\u093e\u0932\u0947 \u0926\u093f\u0928\n\xa7 plugin.team_total.daysLosses.description: \u0938\u092d\u0940 \u0926\u093f\u0928 \u0918\u091f\u093e\u0915\u0930: \u091b\u0941\u091f\u094d\u091f\u093f\u092f\u093e\u0901, \u0935\u0940\u0915\u0947\u0902\u0921, \u0905\u0935\u0915\u093e\u0936, \u0915\u092e\u093f\u091f \u0935\u093e\u0932\u0947 \u0926\u093f\u0928\n\xa7 plugin.team_total.employment.title: \u0915\u093e\u0930\u094d\u092f\u0930\u0924 / \u091b\u094b\u0921\u093c \u091a\u0941\u0915\u0947\n\xa7 plugin.team_total.employment.description: \u092f\u0926\u093f \u0915\u093f\u0938\u0940 \u0915\u0930\u094d\u092e\u091a\u093e\u0930\u0940 \u0928\u0947 \u090f\u0915 \u092e\u0939\u0940\u0928\u0947 \u092e\u0947\u0902 \u090f\u0915 \u092d\u0940 \u0915\u092e\u093f\u091f \u0928\u0939\u0940\u0902 \u0915\u093f\u092f\u093e, \u0924\u094b \u0909\u0938\u0947 \u091b\u094b\u0921\u093c \u091a\u0941\u0915\u093e \u092e\u093e\u0928\u093e \u091c\u093e\u0924\u093e \u0939\u0948\n\xa7 plugin.team_total.moneyAll.title: \u0935\u093f\u0915\u093e\u0938 \u0932\u093e\u0917\u0924\n\xa7 plugin.team_total.moneyAll.description: \u0935\u0947\u0924\u0928 \u0915\u0940 \u0915\u0941\u0932 \u0932\u093e\u0917\u0924; \u0907\u0938\u092e\u0947\u0902 \u0905\u0935\u0915\u093e\u0936 \u092d\u0941\u0917\u0924\u093e\u0928 \u0914\u0930 \u0935\u0940\u0915\u0947\u0902\u0921 \u092a\u0930 \u0915\u093e\u092e \u0915\u0947 \u0932\u093f\u090f \u0905\u0924\u093f\u0930\u093f\u0915\u094d\u0924 \u092d\u0941\u0917\u0924\u093e\u0928 \u0936\u093e\u092e\u093f\u0932 \u0939\u0948\u0964\n\xa7 plugin.team_total.moneyWorked.title: \u0935\u093e\u0938\u094d\u0924\u0935\u093f\u0915\n\xa7 plugin.team_total.moneyWorked.description: \u0935\u093e\u0938\u094d\u0924\u0935 \u092e\u0947\u0902 \u0915\u093e\u092e \u0915\u093f\u090f \u0917\u090f \u0926\u093f\u0928 \xd7 \u0914\u0938\u0924 \u0935\u0947\u0924\u0928\n\xa7 plugin.team_total.moneyLosses.title: \u0938\u0902\u092d\u093e\u0935\u093f\u0924 \u0905\u0927\u093f\u0915 \u092d\u0941\u0917\u0924\u093e\u0928\n\xa7 plugin.team_total.moneyLosses.description: \u092d\u0941\u0917\u0924\u093e\u0928 \u0915\u093f\u090f \u0917\u090f \u0915\u093e\u0930\u094d\u092f\u0926\u093f\u0935\u0938 \u091c\u093f\u0928\u092e\u0947\u0902 \u0915\u092e\u093f\u091f \u0928\u0939\u0940\u0902 \u0925\u0947\n\xa7 plugin.team_total.weekendPayment.title: \u0935\u0940\u0915\u0947\u0902\u0921 \u092a\u0930 \u0915\u093e\u092e\n\xa7 plugin.team_total.weekendPayment.description: \u0935\u0940\u0915\u0947\u0902\u0921 \u092a\u0930 \u0915\u093e\u092e \u0915\u0947 \u0932\u093f\u090f \u0915\u0941\u0932 \u0905\u0924\u093f\u0930\u093f\u0915\u094d\u0924 \u092d\u0941\u0917\u0924\u093e\u0928\n\xa7 plugin.team_total.workSpeed.title: \u092a\u094d\u0930\u0924\u093f \u0926\u093f\u0928 \u0915\u093e\u0930\u094d\u092f\n\xa7 plugin.team_total.workSpeed.description: \u0935\u0930\u094d\u0924\u092e\u093e\u0928 \u0938\u094d\u091f\u093e\u092b \u0938\u0902\u0930\u091a\u0928\u093e \u092e\u0947\u0902 \u091f\u0940\u092e \u0915\u0940 \u0914\u0938\u0924 \u0915\u093e\u0930\u094d\u092f-\u0917\u0924\u093f\n\xa7 plugin.team_total.moneySpeed.title: \u092a\u094d\u0930\u0924\u093f \u092e\u093e\u0939\n\xa7 plugin.team_total.moneySpeed.description: \u0915\u0930\u094b\u0902 \u0914\u0930 \u0938\u0902\u092c\u0902\u0927\u093f\u0924 \u0932\u093e\u0917\u0924\u094b\u0902 \u0915\u094b \u091b\u094b\u0921\u093c\u0915\u0930, \u0935\u0930\u094d\u0924\u092e\u093e\u0928 \u0938\u094d\u091f\u093e\u092b \u0938\u0902\u0930\u091a\u0928\u093e \u092e\u0947\u0902 \u0905\u0928\u0941\u092e\u093e\u0928\u093f\u0924 \u0935\u0947\u0924\u0928 \u092d\u0941\u0917\u0924\u093e\u0928 \u0930\u093e\u0936\u093f\n\xa7 plugin.team_total.description1: *\u0935\u094d\u092f\u0915\u094d\u0924\u093f-\u0926\u093f\u0928* \u0915\u093e \u0905\u0930\u094d\u0925 \u0939\u0948 \u090f\u0915 \u0915\u0930\u094d\u092e\u091a\u093e\u0930\u0940 \u0915\u093e \u090f\u0915 \u0915\u093e\u0930\u094d\u092f\u0926\u093f\u0935\u0938 \u092e\u0947\u0902 \u0915\u093f\u092f\u093e \u0917\u092f\u093e \u0915\u093e\u092e\u0964 \u0909\u0926\u093e\u0939\u0930\u0923 \u0915\u0947 \u0932\u093f\u090f, \u090f\u0915 \u0915\u0948\u0932\u0947\u0902\u0921\u0930 \u0926\u093f\u0928 \u092e\u0947\u0902 \u0924\u0940\u0928 \u0915\u0930\u094d\u092e\u091a\u093e\u0930\u093f\u092f\u094b\u0902 \u0915\u0940 \u091f\u0940\u092e \u0924\u0940\u0928 \u0935\u094d\u092f\u0915\u094d\u0924\u093f-\u0926\u093f\u0928 \u091c\u093f\u0924\u0928\u093e \u0915\u093e\u092e \u092a\u094d\u0930\u0926\u093e\u0928 \u0915\u0930\u0924\u0940 \u0939\u0948\u0964\n\xa7 plugin.team_total.description2: *\u0905\u0928\u0941\u092a\u0938\u094d\u0925\u093f\u0924\u093f \u0915\u0947 \u0926\u093f\u0928* \u0915\u0947\u0935\u0932 \u0935\u0947 \u0915\u093e\u0930\u094d\u092f\u0926\u093f\u0935\u0938 \u092e\u093e\u0928\u0947 \u091c\u093e\u0924\u0947 \u0939\u0948\u0902 \u091c\u093f\u0928\u092e\u0947\u0902 \u0915\u092e\u093f\u091f \u0915\u093f\u090f \u091c\u093e \u0938\u0915\u0924\u0947 \u0925\u0947\u0964 \u0935\u0940\u0915\u0947\u0902\u0921, \u0938\u0930\u0915\u093e\u0930\u0940 \u091b\u0941\u091f\u094d\u091f\u093f\u092f\u093e\u0901 \u0914\u0930 \u0905\u0935\u0915\u093e\u0936 \u0917\u0923\u0928\u093e \u092e\u0947\u0902 \u0936\u093e\u092e\u093f\u0932 \u0928\u0939\u0940\u0902 \u0939\u094b\u0924\u0947\u0964\n\xa7 plugin.team_total.description3: \u0915\u093e\u0930\u094d\u0921 *\u0915\u093e\u0930\u094d\u092f\u0930\u0924 / \u091b\u094b\u0921\u093c \u091a\u0941\u0915\u0947* \u0909\u0928 \u0915\u0930\u094d\u092e\u091a\u093e\u0930\u093f\u092f\u094b\u0902 \u0915\u0940 \u0935\u093e\u0938\u094d\u0924\u0935\u093f\u0915 \u0938\u0902\u0930\u091a\u0928\u093e \u0926\u093f\u0916\u093e\u0924\u093e \u0939\u0948 \u091c\u094b \u0932\u0917\u093e\u0924\u093e\u0930 \u0915\u093e\u092e \u092e\u0947\u0902 \u0936\u093e\u092e\u093f\u0932 \u0930\u0939\u0924\u0947 \u0939\u0948\u0902\u0964 \u0907\u0938\u0915\u0947 \u0905\u0932\u093e\u0935\u093e \u201c\u0938\u0939\u093e\u092f\u0915\u201d \u092d\u0940 \u0939\u094b\u0924\u0947 \u0939\u0948\u0902 \u2014 \u0906\u092e \u0924\u094c\u0930 \u092a\u0930 \u0905\u0932\u0917 \u0935\u093f\u0936\u0947\u0937\u091c\u094d\u091e\u0924\u093e \u0935\u093e\u0932\u0947 \u0915\u0930\u094d\u092e\u091a\u093e\u0930\u0940 \u2014 \u091c\u094b \u0915\u092d\u0940-\u0915\u092d\u0940 \u092a\u094d\u0930\u094b\u091c\u0947\u0915\u094d\u091f \u092e\u0947\u0902 \u0915\u092e\u093f\u091f \u0915\u0930 \u0938\u0915\u0924\u0947 \u0939\u0948\u0902\u0964\n\xa7 plugin.team_total.description4: *\u0905\u0927\u093f\u0915 \u092d\u0941\u0917\u0924\u093e\u0928* \u0915\u0947\u0935\u0932 \u0935\u0947 \u0915\u093e\u0930\u094d\u092f\u0926\u093f\u0935\u0938 \u092e\u093e\u0928\u0947 \u091c\u093e\u0924\u0947 \u0939\u0948\u0902 \u091c\u093f\u0928\u092e\u0947\u0902 \u0915\u092e\u093f\u091f \u0915\u093f\u090f \u091c\u093e \u0938\u0915\u0924\u0947 \u0925\u0947\u0964 \u0935\u0940\u0915\u0947\u0902\u0921, \u0938\u0930\u0915\u093e\u0930\u0940 \u091b\u0941\u091f\u094d\u091f\u093f\u092f\u093e\u0901 \u0914\u0930 \u0905\u0935\u0915\u093e\u0936 \u0917\u0923\u0928\u093e \u092e\u0947\u0902 \u0936\u093e\u092e\u093f\u0932 \u0928\u0939\u0940\u0902 \u0939\u094b\u0924\u0947\u0964 \u0907\u0938\u0940 \u0915\u093e\u0930\u0923 \u0905\u0927\u093f\u0915 \u092d\u0941\u0917\u0924\u093e\u0928 + \u0935\u093e\u0938\u094d\u0924\u0935\u093f\u0915 \u0932\u093e\u0917\u0924 != \u0915\u0941\u0932\u0964 \u0915\u0941\u0932 \u0932\u093e\u0917\u0924 \u092e\u0947\u0902 \u0935\u0940\u0915\u0947\u0902\u0921, \u0938\u0930\u0915\u093e\u0930\u0940 \u091b\u0941\u091f\u094d\u091f\u093f\u092f\u093e\u0901 \u0914\u0930 \u0905\u0935\u0915\u093e\u0936 \u0915\u093e \u092d\u0941\u0917\u0924\u093e\u0928 \u0936\u093e\u092e\u093f\u0932 \u0939\u0948\u0964\n\xa7 plugin.team_total.description5: *\u0935\u0940\u0915\u0947\u0902\u0921 \u092a\u0930 \u0915\u093e\u092e* \u0915\u094b \u0938\u093e\u092e\u093e\u0928\u094d\u092f \u0926\u093f\u0928 \u0915\u0947 \u092d\u0941\u0917\u0924\u093e\u0928 \u0915\u0947 \u092e\u0941\u0915\u093e\u092c\u0932\u0947 x2 \u0917\u0941\u0923\u093e\u0902\u0915 \u0915\u0947 \u0905\u0928\u0941\u0938\u093e\u0930 \u092e\u093e\u0928\u093e \u091c\u093e\u0924\u093e \u0939\u0948\u0964 \u090a\u092a\u0930 \u0915\u0947\u0935\u0932 \u0905\u0924\u093f\u0930\u093f\u0915\u094d\u0924 \u092d\u0941\u0917\u0924\u093e\u0928 (x1) \u0926\u093f\u0916\u093e\u092f\u093e \u0917\u092f\u093e \u0939\u0948, \u0915\u094d\u092f\u094b\u0902\u0915\u093f \u0907\u0938 \u0938\u0902\u0926\u0930\u094d\u092d \u092e\u0947\u0902 \u0913\u0935\u0930\u091f\u093e\u0907\u092e \u0915\u093e \u0924\u0925\u094d\u092f \u0938\u094d\u0935\u092f\u0902 \u092e\u0939\u0924\u094d\u0935\u092a\u0942\u0930\u094d\u0923 \u0928\u0939\u0940\u0902 \u0939\u0948\u0964 \u0939\u092e \u092c\u091c\u091f \u092c\u0930\u094d\u0928-\u0930\u0947\u091f \u0928\u0939\u0940\u0902 \u0926\u0947\u0916\u0924\u0947\u0964 \u0939\u092e \u0915\u093e\u0930\u094d\u092f-\u0917\u0924\u093f \u092c\u0922\u093c\u0928\u0947 \u092a\u0930 \u0939\u094b\u0928\u0947 \u0935\u093e\u0932\u0947 \u0905\u0927\u093f\u0915 \u092d\u0941\u0917\u0924\u093e\u0928 \u0915\u094b \u0926\u0947\u0916\u0924\u0947 \u0939\u0948\u0902\u0964\n",ja:"\n\xa7 plugin.team_total.sidebar: \u6982\u8981\n\xa7 plugin.team_total.common.title: \u6982\u8981\n\xa7 plugin.team_total.common.duration.title: \u5168\u4f53\u306e\u4f5c\u696d\u671f\u9593\n\xa7 plugin.team_total.common.duration.description: \u6700\u521d\u306e\u30b3\u30df\u30c3\u30c8\u304b\u3089\u6700\u5f8c\u306e\u30b3\u30df\u30c3\u30c8\u307e\u3067\u306e\u958b\u767a\u671f\u9593\n\xa7 plugin.team_total.common.location.title: \u672c\u793e\n\xa7 plugin.team_total.common.employees.title: \u90e8\u7f72\u306e\u4eba\u6570\n\xa7 plugin.team_total.release.title: \u30ea\u30ea\u30fc\u30b9\u60c5\u5831\n\xa7 plugin.team_total.release.total.title: \u30ea\u30ea\u30fc\u30b9\u7dcf\u6570\n\xa7 plugin.team_total.release.total.description: \u30ea\u30ea\u30fc\u30b9\u60c5\u5831\n\xa7 plugin.team_total.money.title: \u958b\u767a\u30b3\u30b9\u30c8\n\xa7 plugin.team_total.titleA: \u4f5c\u696d\u91cf\n\xa7 plugin.team_total.titleB: \u30b3\u30b9\u30c8\n\xa7 plugin.team_total.daysWorked.title: \u4eba\u65e5\n\xa7 plugin.team_total.daysWorked.description: \u30b3\u30df\u30c3\u30c8\u304c\u884c\u308f\u308c\u305f\u65e5\u306e\u307f\u3092\u96c6\u8a08\n\xa7 plugin.team_total.commits.title: \u30b3\u30df\u30c3\u30c8\u6570\n\xa7 plugin.team_total.commits.description: \u524a\u9664\u3055\u308c\u305f\u30d6\u30e9\u30f3\u30c1\u306f\u96c6\u8a08\u5bfe\u8c61\u5916\n\xa7 plugin.team_total.daysLosses.title: \u30b3\u30df\u30c3\u30c8\u306a\u3057\u306e\u65e5\u6570\n\xa7 plugin.team_total.daysLosses.description: \u5168\u65e5\u6570\u304b\u3089\u3001\u795d\u65e5\u30fb\u9031\u672b\u30fb\u4f11\u6687\u30fb\u30b3\u30df\u30c3\u30c8\u306e\u3042\u308b\u65e5\u3092\u5dee\u3057\u5f15\u3044\u305f\u65e5\u6570\n\xa7 plugin.team_total.employment.title: \u5728\u7c4d / \u96e2\u8077\n\xa7 plugin.team_total.employment.description: 1\u304b\u6708\u9593\u30b3\u30df\u30c3\u30c8\u304c1\u4ef6\u3082\u306a\u3044\u5834\u5408\u3001\u96e2\u8077\u3068\u307f\u306a\u3057\u307e\u3059\n\xa7 plugin.team_total.moneyAll.title: \u958b\u767a\u8cbb\n\xa7 plugin.team_total.moneyAll.description: \u7d66\u4e0e\u306e\u7dcf\u30b3\u30b9\u30c8\u3002\u4f11\u6687\u624b\u5f53\u3068\u9031\u672b\u52e4\u52d9\u306e\u5272\u5897\u5206\u3092\u542b\u307f\u307e\u3059\u3002\n\xa7 plugin.team_total.moneyWorked.title: \u5b9f\u7e3e\n\xa7 plugin.team_total.moneyWorked.description: \u5b9f\u50cd\u65e5\u6570 \xd7 \u5e73\u5747\u7d66\u4e0e\n\xa7 plugin.team_total.moneyLosses.title: \u60f3\u5b9a\u3055\u308c\u308b\u904e\u6255\u3044\n\xa7 plugin.team_total.moneyLosses.description: \u30b3\u30df\u30c3\u30c8\u304c\u306a\u3044\u306e\u306b\u652f\u6255\u308f\u308c\u305f\u7a3c\u50cd\u65e5\n\xa7 plugin.team_total.weekendPayment.title: \u9031\u672b\u52e4\u52d9\n\xa7 plugin.team_total.weekendPayment.description: \u9031\u672b\u52e4\u52d9\u306b\u5bfe\u3059\u308b\u5272\u5897\u652f\u6255\u3044\u306e\u5408\u8a08\n\xa7 plugin.team_total.workSpeed.title: 1\u65e5\u3042\u305f\u308a\u306e\u30bf\u30b9\u30af\n\xa7 plugin.team_total.workSpeed.description: \u73fe\u5728\u306e\u4eba\u54e1\u69cb\u6210\u306b\u304a\u3051\u308b\u30c1\u30fc\u30e0\u306e\u5e73\u5747\u51e6\u7406\u901f\u5ea6\n\xa7 plugin.team_total.moneySpeed.title: \u6708\u3042\u305f\u308a\n\xa7 plugin.team_total.moneySpeed.description: \u7a0e\u91d1\u3084\u4ed8\u968f\u30b3\u30b9\u30c8\u3092\u9664\u3044\u305f\u3001\u73fe\u5728\u306e\u4eba\u54e1\u69cb\u6210\u306b\u304a\u3051\u308b\u60f3\u5b9a\u7d66\u4e0e\u652f\u6255\u984d\n\xa7 plugin.team_total.description1: *\u4eba\u65e5* \u3068\u306f\u30011\u4eba\u306e\u5f93\u696d\u54e1\u304c1\u55b6\u696d\u65e5\u3067\u884c\u3046\u4f5c\u696d\u91cf\u3067\u3059\u3002\u4f8b\u3048\u3070\u3001\u66a6\u65e51\u65e5\u30673\u4eba\u306e\u30c1\u30fc\u30e0\u306f3\u4eba\u65e5\u5206\u306e\u4f5c\u696d\u91cf\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002\n\xa7 plugin.team_total.description2: *\u6b20\u52e4\u65e5* \u306f\u3001\u30b3\u30df\u30c3\u30c8\u304c\u884c\u3048\u305f\u306f\u305a\u306e\u55b6\u696d\u65e5\u306e\u307f\u3092\u6307\u3057\u307e\u3059\u3002\u9031\u672b\u3001\u795d\u65e5\u3001\u4f11\u6687\u306f\u8a08\u7b97\u306b\u542b\u307e\u308c\u307e\u305b\u3093\u3002\n\xa7 plugin.team_total.description3: \u30ab\u30fc\u30c9 *\u5728\u7c4d / \u96e2\u8077* \u306f\u3001\u7d99\u7d9a\u7684\u306b\u4f5c\u696d\u3078\u53c2\u52a0\u3057\u3066\u3044\u308b\u5b9f\u969b\u306e\u4eba\u54e1\u69cb\u6210\u3092\u793a\u3057\u307e\u3059\u3002\u52a0\u3048\u3066\u300c\u30d8\u30eb\u30d1\u30fc\u300d\u2014 \u591a\u304f\u306e\u5834\u5408\u5225\u8077\u7a2e\u306e\u5f93\u696d\u54e1 \u2014 \u304c\u3001\u3068\u304d\u3069\u304d\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306b\u30b3\u30df\u30c3\u30c8\u3059\u308b\u3053\u3068\u304c\u3042\u308a\u307e\u3059\u3002\n\xa7 plugin.team_total.description4: *\u904e\u6255\u3044* \u306f\u3001\u30b3\u30df\u30c3\u30c8\u304c\u884c\u3048\u305f\u306f\u305a\u306e\u55b6\u696d\u65e5\u306e\u307f\u3092\u5bfe\u8c61\u3068\u3057\u307e\u3059\u3002\u9031\u672b\u3001\u795d\u65e5\u3001\u4f11\u6687\u306f\u8a08\u7b97\u306b\u542b\u307e\u308c\u307e\u305b\u3093\u3002\u305d\u306e\u305f\u3081\u3001\u904e\u6255\u3044 + \u5b9f\u7e3e\u30b3\u30b9\u30c8 != \u7dcf\u984d\u3067\u3059\u3002\u7dcf\u984d\u306b\u306f\u9031\u672b\u3001\u795d\u65e5\u3001\u4f11\u6687\u306e\u652f\u6255\u3044\u304c\u542b\u307e\u308c\u307e\u3059\u3002\n\xa7 plugin.team_total.description5: *\u9031\u672b\u52e4\u52d9* \u306f\u901a\u5e38\u65e5\u306e\u652f\u6255\u3044\u306b\u5bfe\u3057\u3066\u4fc2\u6570 x2 \u3067\u7b97\u51fa\u3057\u307e\u3059\u3002\u4e0a\u306b\u8868\u793a\u3055\u308c\u308b\u306e\u306f\u5272\u5897\u5206\uff08x1\uff09\u306e\u307f\u3067\u3059\u3002\u3053\u3053\u3067\u306f\u6b8b\u696d\u306e\u4e8b\u5b9f\u81ea\u4f53\u306b\u610f\u5473\u304c\u306a\u3044\u305f\u3081\u3067\u3059\u3002\u4e88\u7b97\u6d88\u5316\u901f\u5ea6\u306f\u898b\u307e\u305b\u3093\u3002\u4f5c\u696d\u901f\u5ea6\u3092\u4e0a\u3052\u305f\u3068\u304d\u306e\u904e\u6255\u3044\u3092\u898b\u307e\u3059\u3002\n",ko:"\n\xa7 plugin.team_total.sidebar: \uc77c\ubc18 \uc815\ubcf4\n\xa7 plugin.team_total.common.title: \uc77c\ubc18 \uc815\ubcf4\n\xa7 plugin.team_total.common.duration.title: \uc804\uccb4 \uc791\uc5c5 \uae30\uac04\n\xa7 plugin.team_total.common.duration.description: \uccab \ucee4\ubc0b\ubd80\ud130 \ub9c8\uc9c0\ub9c9 \ucee4\ubc0b\uae4c\uc9c0\uc758 \uc804\uccb4 \uac1c\ubc1c \uae30\uac04\n\xa7 plugin.team_total.common.location.title: \ubcf8\uc0ac\n\xa7 plugin.team_total.common.employees.title: \ubd80\uc11c \uc778\uc6d0\n\xa7 plugin.team_total.release.title: \ub9b4\ub9ac\uc2a4 \uc815\ubcf4\n\xa7 plugin.team_total.release.total.title: \ucd1d \ub9b4\ub9ac\uc2a4 \uc218\n\xa7 plugin.team_total.release.total.description: \ub9b4\ub9ac\uc2a4 \uc815\ubcf4\n\xa7 plugin.team_total.money.title: \uac1c\ubc1c \ube44\uc6a9\n\xa7 plugin.team_total.titleA: \uc791\uc5c5\ub7c9\n\xa7 plugin.team_total.titleB: \ube44\uc6a9\n\xa7 plugin.team_total.daysWorked.title: \uc778\uc77c\n\xa7 plugin.team_total.daysWorked.description: \ucee4\ubc0b\uc774 \uc218\ud589\ub41c \ub0a0\ub9cc \uc9d1\uacc4\ub429\ub2c8\ub2e4\n\xa7 plugin.team_total.commits.title: \ucee4\ubc0b \uc218\n\xa7 plugin.team_total.commits.description: \uc0ad\uc81c\ub41c \ube0c\ub79c\uce58\ub294 \uc9d1\uacc4\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4\n\xa7 plugin.team_total.daysLosses.title: \ucee4\ubc0b \uc5c6\ub294 \uc77c\uc218\n\xa7 plugin.team_total.daysLosses.description: \uc804\uccb4 \uc77c\uc218\uc5d0\uc11c \uacf5\ud734\uc77c, \uc8fc\ub9d0, \ud734\uac00, \ucee4\ubc0b\uc774 \uc788\ub294 \ub0a0\uc744 \uc81c\uc678\n\xa7 plugin.team_total.employment.title: \uc7ac\uc9c1 / \ud1f4\uc0ac\n\xa7 plugin.team_total.employment.description: \ud55c \ub2ec \ub3d9\uc548 \ucee4\ubc0b\uc774 1\uac74\ub3c4 \uc5c6\uc73c\uba74 \ud1f4\uc0ac\ud55c \uac83\uc73c\ub85c \uac04\uc8fc\ud569\ub2c8\ub2e4\n\xa7 plugin.team_total.moneyAll.title: \uac1c\ubc1c \ube44\uc6a9\n\xa7 plugin.team_total.moneyAll.description: \uae09\uc5ec \ucd1d\ube44\uc6a9\uc774\uba70, \ud734\uac00 \uc218\ub2f9\uacfc \uc8fc\ub9d0 \uadfc\ubb34\uc5d0 \ub300\ud55c \ucd94\uac00 \uc9c0\uae09\ubd84\uc744 \ud3ec\ud568\ud569\ub2c8\ub2e4.\n\xa7 plugin.team_total.moneyWorked.title: \uc2e4\uc81c\n\xa7 plugin.team_total.moneyWorked.description: \uc2e4\uc81c \uadfc\ubb34\uc77c\uc218 \xd7 \ud3c9\uade0 \uae09\uc5ec\n\xa7 plugin.team_total.moneyLosses.title: \uc608\uc0c1 \uacfc\uc9c0\uae09\n\xa7 plugin.team_total.moneyLosses.description: \ucee4\ubc0b\uc774 \uc5c6\uc5c8\ub358 \uc720\uae09 \uadfc\ubb34\uc77c\n\xa7 plugin.team_total.weekendPayment.title: \uc8fc\ub9d0 \uadfc\ubb34\n\xa7 plugin.team_total.weekendPayment.description: \uc8fc\ub9d0 \uadfc\ubb34\uc5d0 \ub300\ud55c \ucd94\uac00 \uc9c0\uae09 \ucd1d\uc561\n\xa7 plugin.team_total.workSpeed.title: \uc77c\uc77c \uc791\uc5c5 \uc218\n\xa7 plugin.team_total.workSpeed.description: \ud604\uc7ac \uc778\uc6d0 \uad6c\uc131\uc5d0\uc11c\uc758 \ud300 \ud3c9\uade0 \ucc98\ub9ac \uc18d\ub3c4\n\xa7 plugin.team_total.moneySpeed.title: \uc6d4 \uae30\uc900\n\xa7 plugin.team_total.moneySpeed.description: \uc138\uae08 \ubc0f \ubd80\ub300\ube44\uc6a9\uc744 \uc81c\uc678\ud55c, \ud604\uc7ac \uc778\uc6d0 \uad6c\uc131\uc5d0\uc11c\uc758 \uc608\uc0c1 \uae09\uc5ec \uc9c0\uae09\uc561\n\xa7 plugin.team_total.description1: *\uc778\uc77c*\uc740 \ud55c \uba85\uc758 \uc9c1\uc6d0\uc774 \ud55c \uc601\uc5c5\uc77c \ub3d9\uc548 \uc218\ud589\ud558\ub294 \uc791\uc5c5\uc744 \uc758\ubbf8\ud569\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4, \ub2ec\ub825\uc77c 1\uc77c \ub3d9\uc548 3\uba85\uc73c\ub85c \uad6c\uc131\ub41c \ud300\uc740 3\uc778\uc77c\uc758 \uc791\uc5c5\ub7c9\uc744 \uc81c\uacf5\ud569\ub2c8\ub2e4.\n\xa7 plugin.team_total.description2: *\uacb0\uadfc\uc77c*\uc740 \ucee4\ubc0b\uc774 \uc218\ud589\ub420 \uc218 \uc788\uc5c8\ub358 \uc601\uc5c5\uc77c\ub9cc \ud3ec\ud568\ud569\ub2c8\ub2e4. \uc8fc\ub9d0, \uacf5\ud734\uc77c, \ud734\uac00\ub294 \uacc4\uc0b0\uc5d0 \ud3ec\ud568\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.\n\xa7 plugin.team_total.description3: \uce74\ub4dc *\uc7ac\uc9c1 / \ud1f4\uc0ac*\ub294 \uc9c0\uc18d\uc801\uc73c\ub85c \uc5c5\ubb34\uc5d0 \ucc38\uc5ec\ud558\ub294 \uc9c1\uc6d0\uc758 \uc2e4\uc81c \uad6c\uc131\uc744 \ubcf4\uc5ec\uc90d\ub2c8\ub2e4. \ub610\ud55c \u201c\ub3c4\uc6b0\ubbf8\u201d\uac00 \uc788\ub294\ub370, \ubcf4\ud1b5 \ub2e4\ub978 \uc804\ubb38 \ubd84\uc57c\uc758 \uc9c1\uc6d0\uc73c\ub85c \uac00\ub054 \ud504\ub85c\uc81d\ud2b8\uc5d0 \ucee4\ubc0b\uc744 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n\xa7 plugin.team_total.description4: *\uacfc\uc9c0\uae09*\uc740 \ucee4\ubc0b\uc774 \uc218\ud589\ub420 \uc218 \uc788\uc5c8\ub358 \uc601\uc5c5\uc77c\ub9cc \ud3ec\ud568\ud569\ub2c8\ub2e4. \uc8fc\ub9d0, \uacf5\ud734\uc77c, \ud734\uac00\ub294 \uacc4\uc0b0\uc5d0 \ud3ec\ud568\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \uadf8\ub798\uc11c \uacfc\uc9c0\uae09 + \uc2e4\uc81c \ube44\uc6a9 != \ucd1d\uc561\uc785\ub2c8\ub2e4. \ucd1d\uc561\uc5d0\ub294 \uc8fc\ub9d0, \uacf5\ud734\uc77c, \ud734\uac00\uc5d0 \ub300\ud55c \uc9c0\uae09\uc774 \ud3ec\ud568\ub429\ub2c8\ub2e4.\n\xa7 plugin.team_total.description5: *\uc8fc\ub9d0 \uadfc\ubb34*\ub294 \uc77c\ubc18 \uadfc\ubb34\uc77c \ub300\ube44 x2 \uacc4\uc218\ub85c \uacc4\uc0b0\ud569\ub2c8\ub2e4. \uc704\uc5d0\ub294 \ucd94\uac00 \uc9c0\uae09\ubd84(x1)\ub9cc \ud45c\uc2dc\ub429\ub2c8\ub2e4. \uc774 \ubb38\ub9e5\uc5d0\uc11c\ub294 \ucd08\uacfc\uadfc\ubb34 \uc790\uccb4\uac00 \uc911\uc694\ud558\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc785\ub2c8\ub2e4. \uc6b0\ub9ac\ub294 \uc608\uc0b0 \uc18c\uc9c4 \uc18d\ub3c4\ub97c \ubcf4\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \uc5c5\ubb34 \uc18d\ub3c4\uac00 \uc99d\uac00\ud560 \ub54c\uc758 \uacfc\uc9c0\uae09\uc744 \ubd05\ub2c8\ub2e4.\n",pt:"\n\xa7 plugin.team_total.sidebar: Informa\xe7\xe3o geral\n\xa7 plugin.team_total.common.title: Informa\xe7\xe3o geral\n\xa7 plugin.team_total.common.duration.title: dura\xe7\xe3o total do trabalho\n\xa7 plugin.team_total.common.duration.description: Todo tempo de desenvolvimento do primeiro ao \xfaltimo commit\n\xa7 plugin.team_total.common.location.title: escrit\xf3rio central\n\xa7 plugin.team_total.common.employees.title: pessoas no departamento\n\xa7 plugin.team_total.release.title: Informa\xe7\xf5es de lan\xe7amentos\n\xa7 plugin.team_total.release.total.title: total de lan\xe7amentos\n\xa7 plugin.team_total.release.total.description: Informa\xe7\xf5es de lan\xe7amentos\n\xa7 plugin.team_total.money.title: Custo de desenvolvimento\n\xa7 plugin.team_total.titleA: Volume de trabalho\n\xa7 plugin.team_total.titleB: Custo\n\xa7 plugin.team_total.daysWorked.title: dias-homem\n\xa7 plugin.team_total.daysWorked.description: Consideram-se apenas os dias em que foram feitos commits\n\xa7 plugin.team_total.commits.title: commits\n\xa7 plugin.team_total.commits.description: Branches removidas n\xe3o s\xe3o contabilizadas\n\xa7 plugin.team_total.daysLosses.title: dias sem commits\n\xa7 plugin.team_total.daysLosses.description: Todos os dias menos: feriados, fins de semana, f\xe9rias, dias com commits\n\xa7 plugin.team_total.employment.title: ativos / desligados\n\xa7 plugin.team_total.employment.description: Se um colaborador n\xe3o fizer nenhum commit ao longo de um m\xeas, considera-se que foi desligado\n\xa7 plugin.team_total.moneyAll.title: custos de desenvolvimento\n\xa7 plugin.team_total.moneyAll.description: Custos salariais totais, incluindo f\xe9rias remuneradas e sobrepagamento por trabalho aos fins de semana.\n\xa7 plugin.team_total.moneyWorked.title: real\n\xa7 plugin.team_total.moneyWorked.description: Dias efetivamente trabalhados multiplicados pela m\xe9dia salarial\n\xa7 plugin.team_total.moneyLosses.title: poss\xedvel sobrepagamento\n\xa7 plugin.team_total.moneyLosses.description: Dias \xfateis pagos quando n\xe3o houve commits\n\xa7 plugin.team_total.weekendPayment.title: trabalho no fim de semana\n\xa7 plugin.team_total.weekendPayment.description: Sobrepagamento total por trabalho aos fins de semana\n\xa7 plugin.team_total.workSpeed.title: tarefas por dia\n\xa7 plugin.team_total.workSpeed.description: Velocidade m\xe9dia de trabalho da equipe com a composi\xe7\xe3o atual de colaboradores\n\xa7 plugin.team_total.moneySpeed.title: por m\xeas\n\xa7 plugin.team_total.moneySpeed.description: Valor previsto de folha salarial com a composi\xe7\xe3o atual de colaboradores, sem considerar impostos e custos relacionados\n\xa7 plugin.team_total.description1: *Dias-homem* \xe9 o trabalho de um colaborador durante um dia \xfatil. Por exemplo, em um dia do calend\xe1rio, uma equipe de tr\xeas colaboradores entrega um volume de trabalho de tr\xeas dias-homem.\n\xa7 plugin.team_total.description2: Por *dias de aus\xeancia* consideram-se apenas os dias \xfateis em que commits poderiam ter sido feitos. Fins de semana, feriados nacionais e f\xe9rias n\xe3o participam do c\xe1lculo.\n\xa7 plugin.team_total.description3: O cart\xe3o *ativos e desligados* mostra a composi\xe7\xe3o real de colaboradores que participam continuamente do trabalho. Al\xe9m disso, h\xe1 \u201cajudantes\u201d \u2014 colaboradores, em geral de outra especialidade, que podem ocasionalmente fazer commits no projeto.\n\xa7 plugin.team_total.description4: Por *sobrepagamento* consideram-se apenas os dias \xfateis em que commits poderiam ter sido feitos. Fins de semana, feriados nacionais e f\xe9rias n\xe3o participam do c\xe1lculo. Por isso, sobrepagamento + custo real != total. O total inclui pagamento de fins de semana, feriados nacionais e f\xe9rias.\n\xa7 plugin.team_total.description5: Por *trabalho no fim de semana* considera-se um coeficiente x2 em rela\xe7\xe3o ao pagamento de um dia normal. Acima \xe9 exibido apenas o sobrepagamento (x1), pois o fato da hora extra neste contexto n\xe3o \xe9 relevante. N\xe3o analisamos a taxa de queima do or\xe7amento. Analisamos o sobrepagamento ao aumentar a velocidade de trabalho.\n",ru:'\n\xa7 plugin.team_total.sidebar: \u041e\u0431\u0449\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\n\xa7 plugin.team_total.common.title: \u041a\u0440\u0430\u0442\u043a\u043e \u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0435\n\xa7 plugin.team_total.workSpeed.title: \u0437\u0430\u0434\u0430\u0447 \u0432 \u0434\u0435\u043d\u044c\n\xa7 plugin.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 plugin.team_total.employment.title: \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 / \u0443\u0432\u043e\u043b\u0438\u043b\u043e\u0441\u044c\n\xa7 plugin.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 plugin.team_total.common.duration.title: \u043e\u0431\u0449\u0430\u044f \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\n\xa7 plugin.team_total.common.duration.description: \u0412\u0441\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\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.\n\xa7 plugin.team_total.common.location.title: \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u044c\u043d\u044b\u0439 \u043e\u0444\u0438\u0441\n\xa7 plugin.team_total.common.location.description: \u0421\u0430\u043c\u043e\u0435 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u043e\u0435 \u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0441\u043e\u0441\u0442\u0430\u0432\u0430 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432.\n\xa7 plugin.team_total.common.employees.title: \u0447\u0435\u043b\u043e\u0432\u0435\u043a \u0432 \u043e\u0442\u0434\u0435\u043b\u0435\n\xa7 plugin.team_total.common.employees.description: \u041d\u0430 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u043f\u0440\u043e\u0433\u043d\u043e\u0437\u0430 \u043e\u0431\u0449\u0435\u0439 \u0447\u0438\u0441\u043b\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 \u043f\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043d\u043e\u043c\u0435\u0440\u043e\u0432 \u0437\u0430\u0434\u0430\u0447.\n\xa7 plugin.team_total.release.title: \u0418\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043f\u043e \u0440\u0435\u043b\u0438\u0437\u0430\u043c\n\xa7 plugin.team_total.release.total.title: \u0432\u0441\u0435\u0433\u043e \u0440\u0435\u043b\u0438\u0437\u043e\u0432\n\xa7 plugin.team_total.release.total.description: \u0420\u0435\u043b\u0438\u0437\u043e\u043c \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u0432\u0435\u0442\u043a\u0430 \u0441\u043e \u0441\u043b\u043e\u0432\u043e\u043c "release". \u041a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u043e\u043d\u0438 \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u044e\u0442\u0441\u044f \u0441\u043e\u0431\u044b\u0442\u0438\u044f\u0445 "auto-merge".\n\xa7 plugin.team_total.money.title: \u041e\u0446\u0435\u043d\u043a\u0430 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438\n\xa7 plugin.team_total.moneyAll.title: \u043e\u0431\u0449\u0430\u044f\n\xa7 plugin.team_total.moneyAll.description: \u0421\u0443\u043c\u043c\u0430\u0440\u043d\u044b\u0435 \u0437\u0430\u0442\u0440\u0430\u0442\u044b \u043d\u0430 \u0437\u0430\u0440\u043f\u043b\u0430\u0442\u0443, \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0442 \u043e\u0442\u043f\u0443\u0441\u043a\u043d\u044b\u0435 \u0438 \u043f\u0435\u0440\u0435\u043f\u043b\u0430\u0442\u0443 \u0437\u0430 \u0440\u0430\u0431\u043e\u0442\u0443 \u0432 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0435 \u0434\u043d\u0438.\n\xa7 plugin.team_total.moneyWorked.title: \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f\n\xa7 plugin.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\u0430\u0440\u0430\u0431\u043e\u0442\u043d\u0443\u044e \u043f\u043b\u0430\u0442\u0443.\n\xa7 plugin.team_total.moneyLosses.title: \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0430\u044f \u043f\u0435\u0440\u0435\u043f\u043b\u0430\u0442\u0430\n\xa7 plugin.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 plugin.team_total.weekendPayment.title: \u0440\u0430\u0431\u043e\u0442\u0430 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0445\n\xa7 plugin.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 plugin.team_total.moneySpeed.title: \u0432 \u043c\u0435\u0441\u044f\u0446\n\xa7 plugin.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 \u043d\u0430 \u0437\u0430\u0440\u043f\u043b\u0430\u0442\u0443 \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, \u0430\u043c\u043e\u0440\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0441\u043e\u043f\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0437\u0430\u0442\u0440\u0430\u0442.\n\xa7 plugin.team_total.forecastingMoneyAll.title: \u0440\u0430\u0441\u0445\u043e\u0434\u044b \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442 \u0437\u0430 \u0432\u0441\u0451 \u0432\u0440\u0435\u043c\u044f\n\xa7 plugin.team_total.forecastingMoneyAll.description: \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u0430\u044f \u0441\u0443\u043c\u043c\u0430 \u0432\u044b\u043f\u043b\u0430\u0442 \u043d\u0430 \u0437\u0430\u0440\u043f\u043b\u0430\u0442\u0443 \u0437\u0430 \u0432\u0441\u0451 \u0432\u0440\u0435\u043c\u044f \u0432\u0441\u0435\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u043c \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\u043c \u043e\u0442\u0434\u0435\u043b\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0443\u044e\u0442 \u0432 \u043b\u043e\u0433\u0430\u0445, \u043d\u043e \u043c\u043e\u0433\u043b\u0438 \u0431\u044b\u0442\u044c (\u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u0438 \u0437\u0430\u0434\u0430\u0447 \u0432 \u0442\u0430\u0441\u043a-\u0442\u0440\u0435\u043a\u0435\u0440\u0435). \n\xa7 plugin.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 plugin.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 plugin.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 plugin.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 plugin.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',zh:"\n\xa7 plugin.team_total.sidebar: \u603b\u89c8\u4fe1\u606f\n\xa7 plugin.team_total.common.title: \u603b\u89c8\u4fe1\u606f\n\xa7 plugin.team_total.common.duration.title: \u603b\u5de5\u4f5c\u5468\u671f\n\xa7 plugin.team_total.common.duration.description: \u4ece\u7b2c\u4e00\u6b21\u5230\u6700\u540e\u4e00\u6b21\u63d0\u4ea4\u7684\u5168\u90e8\u5f00\u53d1\u65f6\u95f4\n\xa7 plugin.team_total.common.location.title: \u603b\u90e8\n\xa7 plugin.team_total.common.employees.title: \u90e8\u95e8\u4eba\u6570\n\xa7 plugin.team_total.release.title: \u53d1\u5e03\u4fe1\u606f\n\xa7 plugin.team_total.release.total.title: \u53d1\u5e03\u603b\u6570\n\xa7 plugin.team_total.release.total.description: \u53d1\u5e03\u4fe1\u606f\n\xa7 plugin.team_total.money.title: \u5f00\u53d1\u6210\u672c\n\xa7 plugin.team_total.titleA: \u5de5\u4f5c\u91cf\n\xa7 plugin.team_total.titleB: \u6210\u672c\n\xa7 plugin.team_total.daysWorked.title: \u4eba\u65e5\n\xa7 plugin.team_total.daysWorked.description: \u4ec5\u7edf\u8ba1\u6709\u63d0\u4ea4\u7684\u65e5\u671f\n\xa7 plugin.team_total.commits.title: \u63d0\u4ea4\u6570\n\xa7 plugin.team_total.commits.description: \u5df2\u5220\u9664\u7684\u5206\u652f\u4e0d\u8ba1\u5165\n\xa7 plugin.team_total.daysLosses.title: \u65e0\u63d0\u4ea4\u5929\u6570\n\xa7 plugin.team_total.daysLosses.description: \u5168\u90e8\u5929\u6570\u51cf\u53bb\uff1a\u8282\u5047\u65e5\u3001\u5468\u672b\u3001\u4f11\u5047\u3001\u6709\u63d0\u4ea4\u7684\u65e5\u671f\n\xa7 plugin.team_total.employment.title: \u5728\u804c / \u79bb\u804c\n\xa7 plugin.team_total.employment.description: \u5982\u679c\u5458\u5de5\u5728\u4e00\u4e2a\u6708\u5185\u6ca1\u6709\u4efb\u4f55\u63d0\u4ea4\uff0c\u5219\u89c6\u4e3a\u79bb\u804c\n\xa7 plugin.team_total.moneyAll.title: \u5f00\u53d1\u6210\u672c\n\xa7 plugin.team_total.moneyAll.description: \u85aa\u8d44\u603b\u6210\u672c\uff0c\u5305\u542b\u5e26\u85aa\u4f11\u5047\u4ee5\u53ca\u5468\u672b\u5de5\u4f5c\u7684\u989d\u5916\u652f\u4ed8\u3002\n\xa7 plugin.team_total.moneyWorked.title: \u5b9e\u9645\n\xa7 plugin.team_total.moneyWorked.description: \u5b9e\u9645\u51fa\u52e4\u5929\u6570\u4e58\u4ee5\u5e73\u5747\u85aa\u8d44\n\xa7 plugin.team_total.moneyLosses.title: \u53ef\u80fd\u7684\u591a\u4ed8\n\xa7 plugin.team_total.moneyLosses.description: \u6ca1\u6709\u63d0\u4ea4\u4f46\u4ecd\u652f\u4ed8\u7684\u5de5\u4f5c\u65e5\n\xa7 plugin.team_total.weekendPayment.title: \u5468\u672b\u5de5\u4f5c\n\xa7 plugin.team_total.weekendPayment.description: \u5468\u672b\u5de5\u4f5c\u7684\u989d\u5916\u652f\u4ed8\u603b\u989d\n\xa7 plugin.team_total.workSpeed.title: \u6bcf\u65e5\u4efb\u52a1\u6570\n\xa7 plugin.team_total.workSpeed.description: \u5728\u5f53\u524d\u4eba\u5458\u6784\u6210\u4e0b\u56e2\u961f\u7684\u5e73\u5747\u4ea7\u51fa\u901f\u5ea6\n\xa7 plugin.team_total.moneySpeed.title: \u6bcf\u6708\n\xa7 plugin.team_total.moneySpeed.description: \u5728\u5f53\u524d\u4eba\u5458\u6784\u6210\u4e0b\u9884\u8ba1\u7684\u85aa\u8d44\u652f\u51fa\uff08\u4e0d\u542b\u7a0e\u8d39\u53ca\u76f8\u5173\u6210\u672c\uff09\n\xa7 plugin.team_total.description1: *\u4eba\u65e5* \u6307\u4e00\u540d\u5458\u5de5\u5728\u4e00\u4e2a\u5de5\u4f5c\u65e5\u5185\u5b8c\u6210\u7684\u5de5\u4f5c\u91cf\u3002\u4f8b\u5982\uff0c\u5728\u4e00\u4e2a\u65e5\u5386\u65e5\u91cc\uff0c\u4e09\u540d\u5458\u5de5\u7684\u56e2\u961f\u53ef\u4ea7\u51fa\u4e09\u4eba\u65e5\u7684\u5de5\u4f5c\u91cf\u3002\n\xa7 plugin.team_total.description2: *\u7f3a\u52e4\u5929\u6570* \u4ec5\u6307\u672c\u53ef\u8fdb\u884c\u63d0\u4ea4\u7684\u5de5\u4f5c\u65e5\u3002\u5468\u672b\u3001\u6cd5\u5b9a\u8282\u5047\u65e5\u548c\u4f11\u5047\u4e0d\u53c2\u4e0e\u8ba1\u7b97\u3002\n\xa7 plugin.team_total.description3: \u5361\u7247 *\u5728\u804c / \u79bb\u804c* \u5c55\u793a\u6301\u7eed\u53c2\u4e0e\u5de5\u4f5c\u7684\u5b9e\u9645\u4eba\u5458\u6784\u6210\u3002\u6b64\u5916\u8fd8\u6709\u201c\u52a9\u624b\u201d\u2014\u2014\u901a\u5e38\u4e3a\u5176\u4ed6\u4e13\u4e1a\u7684\u5458\u5de5\uff0c\u4ed6\u4eec\u53ef\u80fd\u5076\u5c14\u5411\u9879\u76ee\u63d0\u4ea4\u4ee3\u7801\u3002\n\xa7 plugin.team_total.description4: *\u591a\u4ed8* \u4ec5\u6307\u672c\u53ef\u8fdb\u884c\u63d0\u4ea4\u7684\u5de5\u4f5c\u65e5\u3002\u5468\u672b\u3001\u6cd5\u5b9a\u8282\u5047\u65e5\u548c\u4f11\u5047\u4e0d\u53c2\u4e0e\u8ba1\u7b97\u3002\u56e0\u6b64\uff0c\u591a\u4ed8 + \u5b9e\u9645\u6210\u672c != \u603b\u6210\u672c\u3002\u603b\u6210\u672c\u5305\u542b\u5468\u672b\u3001\u6cd5\u5b9a\u8282\u5047\u65e5\u548c\u4f11\u5047\u7684\u652f\u4ed8\u3002\n\xa7 plugin.team_total.description5: *\u5468\u672b\u5de5\u4f5c* \u6309\u76f8\u5bf9\u4e8e\u6b63\u5e38\u5de5\u4f5c\u65e5\u85aa\u916c\u7684 x2 \u7cfb\u6570\u8ba1\u7b97\u3002\u4e0a\u65b9\u4ec5\u5c55\u793a\u989d\u5916\u652f\u4ed8\u90e8\u5206\uff08x1\uff09\uff0c\u56e0\u4e3a\u5728\u6b64\u8bed\u5883\u4e0b\u52a0\u73ed\u4e8b\u5b9e\u672c\u8eab\u5e76\u4e0d\u91cd\u8981\u3002\u6211\u4eec\u4e0d\u5173\u6ce8\u9884\u7b97\u71c3\u70e7\u901f\u5ea6\uff0c\u6211\u4eec\u5173\u6ce8\u5728\u63d0\u5347\u5de5\u4f5c\u901f\u5ea6\u65f6\u4ea7\u751f\u7684\u591a\u4ed8\u3002\n"};const TF=yi((e=>{let{employeesInCompany:t}=e;const n=PT.statisticsByCommits.team.totalInfo,a=PT.statisticsByCommits.author.employment,s=PT.statisticsByCommits.firstLastCommit,i=Xo(s.min,s.max),o=function(){var e;const t=PT.statisticsByCommits.author.totalInfo,n={};return t.forEach((e=>{e.isStaff||e.isDismissed||Vo(n,e.lastCountry)})),(null===(e=Object.entries(n).sort(((e,t)=>e[1]-t[1])).pop())||void 0===e?void 0:e[0])||null}();return(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(Pu,{value:mo(n.totalTaskInDay),icon:"./assets/cards/tasks_month.svg",title:"plugin.team_total.workSpeed.title",description:"plugin.team_total.workSpeed.description"}),(0,mu.jsx)(Pu,{value:"".concat(a.active.length," / ").concat(a.dismissed.length),icon:"./assets/cards/dismissal.svg",title:"plugin.team_total.employment.title",description:"plugin.team_total.employment.description"})]}),(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(qu,{value:ao(i),icon:"./assets/cards/work_days2.svg",title:"plugin.team_total.common.duration.title",description:"plugin.team_total.common.duration.description"}),(0,mu.jsx)(qu,{value:o,icon:"./assets/cards/location.svg",title:"plugin.team_total.common.location.title"}),(0,mu.jsx)(qu,{value:t,icon:"./assets/cards/employees.svg",title:"plugin.team_total.common.employees.title"})]})]})})),CF=yi((()=>{var e,n,a,s,i,o;const r=null===(e=PT.statisticsByCommits.release.totalInfo)||void 0===e?void 0:e.length,l=PT.statisticsByCommits.pr.totalInfoByName,m=PT.statisticsByCommits.tasks.totalInfo,c=SM((0,t.useMemo)((()=>m.filter((e=>e.totalDaysInBacklog<=90))),[PT.hash]),l),[u,p,d,h,g]=["plugin.team_tasks.charts.timeToMarket.backlog","plugin.team_tasks.charts.timeToMarket.worked","plugin.team_tasks.charts.timeToMarket.review","plugin.team_tasks.charts.timeToMarket.release","plugin.team_tasks.charts.timeToMarket.improvements"],f=c.details.worked+c.details.review+c.details.release;return r||c.total?(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(sx,{title:"plugin.team_total.release.title"}),(0,mu.jsxs)(yT,{children:[(0,mu.jsx)(_T,{children:(0,mu.jsxs)(Pw,{value:r,children:[(0,mu.jsx)(Pu,{value:r,icon:"./assets/cards/release.svg",title:"plugin.team_total.release.total.title",description:"plugin.team_total.release.total.description"}),(0,mu.jsx)(Pu,{value:f,icon:"./assets/cards/release_month.svg",title:"plugin.team_tasks.charts.cardFromCommit.title",description:"plugin.team_tasks.charts.cardFromCommit.description"})]})}),(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.team_tasks.charts.timeToMarket.title",value:null===c||void 0===c?void 0:c.total,details:null!==c&&void 0!==c&&c.details?{[u]:null===c||void 0===c||null===(n=c.details)||void 0===n?void 0:n.backlog,[p]:null===c||void 0===c||null===(a=c.details)||void 0===a?void 0:a.worked,[d]:null===c||void 0===c||null===(s=c.details)||void 0===s?void 0:s.review,[h]:null===c||void 0===c||null===(i=c.details)||void 0===i?void 0:i.release,[g]:null===c||void 0===c||null===(o=c.details)||void 0===o?void 0:o.improvements}:void 0,limit:1,order:[u,p,d,h,g],description:"common.statistic.days",suffix:"common.statistic.days"})})]})]}):null}));const SF=yi((()=>{const e=PT.statisticsByCommits.team.totalInfo,t=PT.statisticsByCommits.author.employment.active.length*so.getMiddleSalaryInMonth(),n=function(e){const t=so.getMiddleSalaryInMonth();return e.filter((e=>e.totalDaysWorked>10)).reduce(((e,n)=>e+n.months.reduce(((e,n)=>e+n.allMiddleUsersInDepartment*t),0)),0)}(PT.statisticsByCommits.taskCodes.totalInfo);return(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(Pu,{value:ro(e.totalMoney),icon:"./assets/cards/money_total.svg",title:"plugin.team_total.moneyAll.title",description:"plugin.team_total.moneyAll.description"}),(0,mu.jsx)(Pu,{value:ro(e.totalMoneyWorked),icon:"./assets/cards/money_work.svg",title:"plugin.team_total.moneyWorked.title",description:"plugin.team_total.moneyWorked.description"}),(0,mu.jsx)(Pu,{size:"l",value:ro(t),icon:"./assets/cards/money_month.svg",title:"plugin.team_total.moneySpeed.title",description:"plugin.team_total.moneySpeed.description"})]}),(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(Pu,{value:ro(e.totalMoneyLosses),icon:"./assets/cards/money_lazy.svg",title:"plugin.team_total.moneyLosses.title",description:"plugin.team_total.moneyLosses.description"}),(0,mu.jsx)(Pu,{value:ro(e.totalMoneyInWeekend),icon:"./assets/cards/money_holidays.svg",title:"plugin.team_total.weekendPayment.title",description:"plugin.team_total.weekendPayment.description"}),(0,mu.jsx)(Pu,{value:ro(Math.max(n,e.totalMoney)),icon:"./assets/cards/money_total.svg",title:"plugin.team_total.forecastingMoneyAll.title",description:"plugin.team_total.forecastingMoneyAll.description",size:"l"})]})]})})),jF=yi((()=>{const e=PT.statisticsByCommits.taskCodes.totalInfo.filter((e=>{var t;return(null===(t=e.months)||void 0===t?void 0:t.length)>5})).reduce(((e,t)=>{var n;return e+(null===(n=t.months[0])||void 0===n?void 0:n.allMiddleUsersInDepartment)}),0);return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(sx,{title:"plugin.team_total.common.title"}),(0,mu.jsx)(TF,{employeesInCompany:e}),(0,mu.jsx)(CF,{}),(0,mu.jsx)(sx,{title:"plugin.team_total.money.title"}),(0,mu.jsx)(SF,{})]})}));class DF{getMenuItems(){return[{id:"total",group:10,order:10,link:"/team/total",title:"plugin.team_total.sidebar",icon:"./assets/menu/team_common.svg"}]}getPage(e){return"/team/total"===e?(0,mu.jsx)(jF,{}):void 0}getTranslations(){return xF}}DF.id="team_total";const AF={ar:'\n\xa7 plugin.team_types.sidebar: Task types\n\xa7 plugin.team_types.title: Task type statistics\n\xa7 plugin.team_types.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 plugin.team_types.type: Type of work\n\xa7 plugin.team_types.unknown: unknown\n\xa7 plugin.team_types.tasks: Tasks\n\xa7 plugin.team_types.tasksSmall: tasks\n\xa7 plugin.team_types.days: Days\n\xa7 plugin.team_types.daysSmall: days\n\xa7 plugin.team_types.authorsDays: Person-days\n\xa7 plugin.team_types.commits: Commits\n\xa7 plugin.team_types.authors: Personal contribution\n',de:'\n\xa7 plugin.team_types.sidebar: Aufgabentypen\n\xa7 plugin.team_types.title: Task type statistics\n\xa7 plugin.team_types.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 plugin.team_types.type: Type of work\n\xa7 plugin.team_types.unknown: unknown\n\xa7 plugin.team_types.tasks: Tasks\n\xa7 plugin.team_types.tasksSmall: tasks\n\xa7 plugin.team_types.days: Days\n\xa7 plugin.team_types.daysSmall: days\n\xa7 plugin.team_types.authorsDays: Person-days\n\xa7 plugin.team_types.commits: Commits\n\xa7 plugin.team_types.authors: Personal contribution\n',en:'\n\xa7 plugin.team_types.sidebar: Task types\n\xa7 plugin.team_types.title: Task type statistics\n\xa7 plugin.team_types.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 plugin.team_types.type: Type of work\n\xa7 plugin.team_types.unknown: unknown\n\xa7 plugin.team_types.tasks: Tasks\n\xa7 plugin.team_types.tasksSmall: tasks\n\xa7 plugin.team_types.days: Days\n\xa7 plugin.team_types.daysSmall: days\n\xa7 plugin.team_types.authorsDays: Person-days\n\xa7 plugin.team_types.commits: Commits\n\xa7 plugin.team_types.authors: Personal contribution\n',es:'\n\xa7 plugin.team_types.sidebar: Tipos de tareas\n\xa7 plugin.team_types.title: Estad\xedsticas por tipo de tarea\n\xa7 plugin.team_types.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 plugin.team_types.type: Tipo de trabajo\n\xa7 plugin.team_types.unknown: unknown\n\xa7 plugin.team_types.tasks: Tareas\n\xa7 plugin.team_types.tasksSmall: Tareas\n\xa7 plugin.team_types.days: D\xeda\n\xa7 plugin.team_types.daysSmall: D\xeda\n\xa7 plugin.team_types.authorsDays: D\xedas-persona\n\xa7 plugin.team_types.commits: Commits\n\xa7 plugin.team_types.authors: Contribuci\xf3n personal\n',fr:"\n\xa7 plugin.team_types.sidebar: Types de t\xe2ches\n\xa7 plugin.team_types.title: Statistiques par type de t\xe2che\n\xa7 plugin.team_types.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 plugin.team_types.type: Type de travail\n\xa7 plugin.team_types.unknown: unknown\n\xa7 plugin.team_types.tasks: \u0417\u0430\u0434\u0430\u0447\n\xa7 plugin.team_types.tasksSmall: T\xe2che\n\xa7 plugin.team_types.days: Jours\n\xa7 plugin.team_types.daysSmall: Jours\n\xa7 plugin.team_types.authorsDays: Jours-homme\n\xa7 plugin.team_types.commits: Commits\n\xa7 plugin.team_types.authors: Contribution personnelle\n",he:'\n\xa7 plugin.team_types.sidebar: Task types\n\xa7 plugin.team_types.title: Task type statistics\n\xa7 plugin.team_types.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 plugin.team_types.type: Type of work\n\xa7 plugin.team_types.unknown: unknown\n\xa7 plugin.team_types.tasks: Tasks\n\xa7 plugin.team_types.tasksSmall: tasks\n\xa7 plugin.team_types.days: Days\n\xa7 plugin.team_types.daysSmall: days\n\xa7 plugin.team_types.authorsDays: Person-days\n\xa7 plugin.team_types.commits: Commits\n\xa7 plugin.team_types.authors: Personal contribution\n',hi:'\n\xa7 plugin.team_types.sidebar: Task types\n\xa7 plugin.team_types.title: Task type statistics\n\xa7 plugin.team_types.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 plugin.team_types.type: Type of work\n\xa7 plugin.team_types.unknown: unknown\n\xa7 plugin.team_types.tasks: Tasks\n\xa7 plugin.team_types.tasksSmall: tasks\n\xa7 plugin.team_types.days: Days\n\xa7 plugin.team_types.daysSmall: days\n\xa7 plugin.team_types.authorsDays: Person-days\n\xa7 plugin.team_types.commits: Commits\n\xa7 plugin.team_types.authors: Personal contribution\n',ja:'\n\xa7 plugin.team_types.sidebar: \u30bf\u30b9\u30af\u306e\u7a2e\u985e\n\xa7 plugin.team_types.title: Task type statistics\n\xa7 plugin.team_types.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 plugin.team_types.type: Type of work\n\xa7 plugin.team_types.unknown: unknown\n\xa7 plugin.team_types.tasks: Tasks\n\xa7 plugin.team_types.tasksSmall: tasks\n\xa7 plugin.team_types.days: Days\n\xa7 plugin.team_types.daysSmall: days\n\xa7 plugin.team_types.authorsDays: Person-days\n\xa7 plugin.team_types.commits: Commits\n\xa7 plugin.team_types.authors: Personal contribution\n',ko:'\n\xa7 plugin.team_types.sidebar: \uc791\uc5c5 \uc720\ud615\n\xa7 plugin.team_types.title: \uc791\uc5c5 \uc720\ud615\ubcc4 \ud1b5\uacc4\n\xa7 plugin.team_types.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 plugin.team_types.type: \uc791\uc5c5 \uc720\ud615\n\xa7 plugin.team_types.unknown: \uc54c \uc218 \uc5c6\ub294\n\xa7 plugin.team_types.tasks: \uc791\uc5c5\n\xa7 plugin.team_types.tasksSmall: \uc791\uc5c5\n\xa7 plugin.team_types.days: \uc77c\n\xa7 plugin.team_types.daysSmall: \uc77c\n\xa7 plugin.team_types.authorsDays: \ub0a8\uc790 \uc77c\n\xa7 plugin.team_types.commits: \ucee4\ubc0b\n\xa7 plugin.team_types.authors: \uac1c\uc778 \uae30\uc5ec\n',pt:'\n\xa7 plugin.team_types.sidebar: Tipos de tarefas\n\xa7 plugin.team_types.title: Task type statistics\n\xa7 plugin.team_types.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 plugin.team_types.type: Type of work\n\xa7 plugin.team_types.unknown: unknown\n\xa7 plugin.team_types.tasks: Tasks\n\xa7 plugin.team_types.tasksSmall: tasks\n\xa7 plugin.team_types.days: Days\n\xa7 plugin.team_types.daysSmall: days\n\xa7 plugin.team_types.authorsDays: Person-days\n\xa7 plugin.team_types.commits: Commits\n\xa7 plugin.team_types.authors: Personal contribution\n',ru:"\n\xa7 plugin.team_types.sidebar: \u0422\u0438\u043f\u044b \u0437\u0430\u0434\u0430\u0447\n\xa7 plugin.team_types.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 plugin.team_types.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 plugin.team_types.type: \u0422\u0438\u043f \u0440\u0430\u0431\u043e\u0442\u044b\n\xa7 plugin.team_types.unknown: \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439\n\xa7 plugin.team_types.tasks: \u0417\u0430\u0434\u0430\u0447\n\xa7 plugin.team_types.tasksSmall: \u0437\u0430\u0434\u0430\u0447\n\xa7 plugin.team_types.days: \u0414\u043d\u0435\u0439\n\xa7 plugin.team_types.daysSmall: \u0434\u043d\u0435\u0439\n\xa7 plugin.team_types.authorsDays: \u0427\u0435\u043b\u043e\u0432\u0435\u043a\u043e-\u0434\u043d\u0435\u0439\n\xa7 plugin.team_types.commits: \u041a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.team_types.authors: \u041f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u0432\u043a\u043b\u0430\u0434\n",zh:'\n\xa7 plugin.team_types.sidebar: \u4efb\u52a1\u7c7b\u578b\n\xa7 plugin.team_types.title: \u6309\u4efb\u52a1\u7c7b\u578b\u5212\u5206\u7684\u7edf\u8ba1\u4fe1\u606f\n\xa7 plugin.team_types.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 plugin.team_types.type: \u5de5\u4f5c\u7c7b\u522b\n\xa7 plugin.team_types.unknown: unknown\n\xa7 plugin.team_types.tasks: \u4efb\u52a1\n\xa7 plugin.team_types.tasksSmall: \u4efb\u52a1\n\xa7 plugin.team_types.days: \u5929\u6570\n\xa7 plugin.team_types.daysSmall: \u5929\u6570\n\xa7 plugin.team_types.authorsDays: \u4eba\u65e5\n\xa7 plugin.team_types.commits: Commits\n\xa7 plugin.team_types.authors: \u4e2a\u4eba\u8d21\u732e\n'};function EF(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;const{text:i}=_u(),o=i("plugin.team_types.unknown");if(!t)return null;const[r,l]=sI(t,["tasks","daysByAuthorsTotal"]);return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,template:_p.STRING,title:"plugin.team_types.type",properties:"type",formatter:e=>e||o,width:150}),(0,mu.jsx)(zp,{width:80,template:_p.SHORT_NUMBER,properties:"tasks"}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_types.tasks",properties:"tasks",width:120,template:e=>(0,mu.jsx)(LE,{value:e,max:r,suffix:"plugin.team_types.tasksSmall"})}),(0,mu.jsx)(zp,{width:80,template:_p.SHORT_NUMBER,title:"plugin.team_types.days",properties:"days"}),(0,mu.jsx)(zp,{width:80,template:_p.SHORT_NUMBER,properties:"daysByAuthorsTotal"}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.team_types.authorsDays",properties:"daysByAuthorsTotal",width:120,template:e=>(0,mu.jsx)(LE,{value:e,max:l,suffix:"plugin.team_types.daysSmall"})}),(0,mu.jsx)(zp,{width:80,template:_p.NUMBER,title:"plugin.team_types.commits",properties:"commits"}),(0,mu.jsx)(zp,{title:"plugin.team_types.authors",properties:"commitsByAuthors",template:e=>(0,mu.jsx)(LE,{details:e,order:PT.statisticsByCommits.author.list}),minWidth:200})]})}EF.defaultProps={response:void 0};const IF=EF,NF=yi((e=>{var t;let{mode:n}=e;const a=PT.statisticsByCommits.type.totalInfo;if(null===a||void 0===a||!a.length)return"print"!==n?(0,mu.jsx)(Hw,{}):null;const s=null===(t=PT.statisticsByCommits.recommendations.team)||void 0===t?void 0:t.byType;return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(Pw,{value:"fullscreen"!==n,children:(0,mu.jsx)(OA,{mode:n,recommendations:s})}),(0,mu.jsx)(sx,{title:"plugin.team_types.title"}),(0,mu.jsxs)(tS,{content:a,mode:n,watch:"".concat(n).concat(PT.hash),children:[(0,mu.jsx)(IF,{mode:n,rowsForExcel:a}),(0,mu.jsx)(KC,{})]}),(0,mu.jsx)(yT,{children:(0,mu.jsx)(bw,{translationId:"plugin.team_types.description"})})]})})),PF=NF;class RF{getMenuItems(){return[{id:"types",group:10,order:40,link:"/team/types",title:"sidebar.team.type",icon:"./assets/menu/team_type.svg"}]}getPage(e,t){return"/team/types"===e?(0,mu.jsx)(PF,{mode:null===t||void 0===t?void 0:t.mode}):void 0}getTranslations(){return AF}}RF.id="team_types";const OF={ar:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",de:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",en:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",es:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",fr:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",he:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",hi:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",ja:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",ko:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",pt:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n",ru:"\n\xa7 plugin.team_weeks.sidebar: \u041f\u043e \u043d\u0435\u0434\u0435\u043b\u044f\u043c\n\xa7 plugin.team_weeks.title: \u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u043f\u043e \u043d\u0435\u0434\u0435\u043b\u044f\u043c\n\xa7 plugin.team_weeks.numberTasks: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u0434\u0430\u0447\n\xa7 plugin.team_weeks.people: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0447\u0435\u043b\u043e\u0432\u0435\u043a\n\xa7 plugin.team_weeks.line: \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0441\u0442\u0440\u043e\u043a\n\xa7 plugin.team_weeks.lossesDetails: \u041a\u0442\u043e \u043d\u0435 \u043a\u043e\u043c\u043c\u0438\u0442\u0438\u043b\n\xa7 plugin.team_weeks.add: \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438\n\xa7 plugin.team_weeks.change: \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u0438\n\xa7 plugin.team_weeks.remove: \u0443\u0434\u0430\u043b\u0438\u043b\u0438\n\xa7 plugin.team_weeks.hasCommits: \u0431\u044b\u043b\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u044b\n\xa7 plugin.team_weeks.hasNotCommits: \u043d\u0435\u0431\u044b\u043b\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n",zh:"\n\xa7 plugin.team_weeks.sidebar: By weeks\n\xa7 plugin.team_weeks.title: Weekly statistics\n\xa7 plugin.team_weeks.numberTasks: Number of tasks\n\xa7 plugin.team_weeks.people: Number of people\n\xa7 plugin.team_weeks.line: Line changes\n\xa7 plugin.team_weeks.lossesDetails: Who did not commit\n\xa7 plugin.team_weeks.add: added\n\xa7 plugin.team_weeks.change: changed\n\xa7 plugin.team_weeks.remove: removed\n\xa7 plugin.team_weeks.hasCommits: had commits\n\xa7 plugin.team_weeks.hasNotCommits: had no commits\n"};function LF(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;if(!t)return null;const[i,o,r]=sI(t,["tasks","authorsLength","changesLength"]);return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,template:_p.STRING,title:"common.statistic.Date",properties:"timestamp",formatter:no,width:260}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"tasks"}),(0,mu.jsx)(zp,{isSortable:"tasks",title:"plugin.team_weeks.numberTasks",template:e=>(0,mu.jsx)(LE,{options:i,value:e.tasks,details:e.types,order:PT.statisticsByCommits.type.list,suffix:"common.statistic.tasks"}),minWidth:200}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"authorsLength"}),(0,mu.jsx)(zp,{isSortable:"authorsLength",title:"plugin.team_weeks.people",template:e=>(0,mu.jsx)(LE,{value:e.authorsLength,details:e.authors,order:PT.statisticsByCommits.author.list,max:o,suffix:"common.statistic.tasks"}),minWidth:200}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"changesLength"}),(0,mu.jsx)(zp,{isSortable:"changesLength",title:"plugin.team_weeks.line",template:e=>{var t,n,a;return(0,mu.jsx)(LE,{value:e.changesLength,details:{"plugin.team_weeks.add":null===e||void 0===e||null===(t=e.changes)||void 0===t?void 0:t.added,"plugin.team_weeks.change":null===e||void 0===e||null===(n=e.changes)||void 0===n?void 0:n.changes,"plugin.team_weeks.remove":null===e||void 0===e||null===(a=e.changes)||void 0===a?void 0:a.removed},order:["plugin.team_weeks.add","plugin.team_weeks.change","plugin.team_weeks.remove"],max:r,suffix:"lines"})},minWidth:200}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"workDaysTotal"}),(0,mu.jsx)(zp,{isSortable:"workDaysTotal",title:"common.statistic.days",template:e=>(0,mu.jsx)(LE,{details:{"plugin.team_weeks.hasCommits":null===e||void 0===e?void 0:e.workDaysTotal,"plugin.team_weeks.hasNotCommits":5*(null===e||void 0===e?void 0:e.authorsLength)-(null===e||void 0===e?void 0:e.workDaysTotal)},order:["plugin.team_weeks.hasCommits","plugin.team_weeks.hasNotCommits"],suffix:"common.statistic.days"}),minWidth:200}),(0,mu.jsx)(zp,{title:"plugin.team_weeks.lossesDetails",template:e=>(0,mu.jsx)(LE,{details:e,order:PT.statisticsByCommits.author.list,suffix:"common.statistic.days"}),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})]})}LF.defaultProps={response:void 0};const MF=LF,FF=yi((e=>{var t;let{mode:n}=e;const a=PT.statisticsByCommits.week.totalInfo;if(null===a||void 0===a||!a.length)return"print"!==n?(0,mu.jsx)(Hw,{}):null;const s=null===(t=PT.statisticsByCommits.recommendations.team)||void 0===t?void 0:t.byWeek;return(0,mu.jsxs)(mu.Fragment,{children:["fullscreen"!==n&&(0,mu.jsx)(OA,{mode:n,recommendations:s}),"print"===n?(0,mu.jsx)(sx,{title:"plugin.team_weeks.title"}):(0,mu.jsx)(dT,{height:48}),(0,mu.jsxs)(tS,{content:a,mode:n,watch:"".concat(n).concat(PT.hash),children:[(0,mu.jsx)(MF,{mode:n,rowsForExcel:a}),"print"!==n&&(0,mu.jsx)(KC,{})]})]})})),WF=FF;class qF{getMenuItems(){return[{id:"week",group:20,order:100,link:"/team/week",title:"plugin.team_weeks.sidebar",icon:"./assets/menu/team_week.svg"}]}getPage(e,t){return"/team/week"===e?(0,mu.jsx)(WF,{mode:null===t||void 0===t?void 0:t.mode}):void 0}getTranslations(){return OF}}qF.id="team_weeks";const zF={ar:"\n\xa7 plugin.person_achievements.sidebar: \u0627\u0644\u0625\u0646\u062c\u0627\u0632\u0627\u062a\n\xa7 plugin.person_achievements.title: \u0627\u0644\u062e\u0635\u0627\u0626\u0635 \u0627\u0644\u0631\u0626\u064a\u0633\u064a\u0629\n\xa7 plugin.person_achievements.small.status.title: \u0627\u0644\u062d\u0627\u0644\u0629\n\xa7 plugin.person_achievements.small.status.work: \u064a\u0639\u0645\u0644\n\xa7 plugin.person_achievements.small.status.dismissed: \u063a\u0627\u062f\u0631\n\xa7 plugin.person_achievements.small.status.staff: \u0637\u0627\u0642\u0645\n\xa7 plugin.person_achievements.small.totalDays: \u0645\u062f\u0629 \u0627\u0644\u0639\u0642\u062f\n\xa7 plugin.person_achievements.small.country: \u0622\u062e\u0631 \u0645\u0648\u0642\u0639\n\xa7 plugin.person_achievements.small.email: \u0622\u062e\u0631 \u0628\u0631\u064a\u062f \u0625\u0644\u0643\u062a\u0631\u0648\u0646\u064a\n\xa7 plugin.person_achievements.small.firstDay: \u0623\u0648\u0644 \u064a\u0648\u0645 \u0639\u0645\u0644\n\xa7 plugin.person_achievements.small.lastDay: \u0622\u062e\u0631 \u064a\u0648\u0645 \u0639\u0645\u0644\n\xa7 plugin.person_achievements.small.middleMessageLength: \u0645\u062a\u0648\u0633\u0637 \u0637\u0648\u0644 commit message\n\xa7 plugin.person_achievements.daysWorked.title: \u0623\u064a\u0627\u0645 \u0627\u0644\u0639\u0645\u0644\n\xa7 plugin.person_achievements.daysWorked.description: \u062a\u064f\u062d\u062a\u0633\u0628 \u0641\u0642\u0637 \u0627\u0644\u0623\u064a\u0627\u0645 \u0627\u0644\u062a\u064a \u062a\u0645 \u0641\u064a\u0647\u0627 \u0625\u0646\u0634\u0627\u0621 commits\n\xa7 plugin.person_achievements.tasks.title: tasks\n\xa7 plugin.person_achievements.tasks.description: \u0625\u0630\u0627 \u0643\u0627\u0646\u062a commits \u062a\u062d\u062a\u0648\u064a \u0639\u0644\u0649 commit messages \u0635\u062d\u064a\u062d\u0629\n",de:"\n\xa7 plugin.person_achievements.sidebar: Allgemeine Informationen\n\xa7 plugin.person_achievements.title: Main characteristics\n\xa7 plugin.person_achievements.daysWorked.title: days of work\n\xa7 plugin.person_achievements.daysWorked.description: Only days with commits are counted\n\xa7 plugin.person_achievements.tasks.title: tasks\n\xa7 plugin.person_achievements.tasks.description: If commits are properly signed\n",en:"\n\xa7 plugin.person_achievements.sidebar: Achievements\n\xa7 plugin.person_achievements.title: Main characteristics\n\xa7 plugin.person_achievements.small.status.title: status\n\xa7 plugin.person_achievements.small.status.work: works\n\xa7 plugin.person_achievements.small.status.dismissed: left\n\xa7 plugin.person_achievements.small.status.staff: staff\n\xa7 plugin.person_achievements.small.totalDays: contract duration\n\xa7 plugin.person_achievements.small.country: latest location\n\xa7 plugin.person_achievements.small.email: latest email\n\xa7 plugin.person_achievements.small.firstDay: first working day\n\xa7 plugin.person_achievements.small.lastDay: last working day\n\xa7 plugin.person_achievements.small.middleMessageLength: average commit message length\n\xa7 plugin.person_achievements.daysWorked.title: days worked\n\xa7 plugin.person_achievements.daysWorked.description: Only days when commits were made are counted\n\xa7 plugin.person_achievements.tasks.title: tasks\n\xa7 plugin.person_achievements.tasks.description: If commits have correct commit messages\n",es:"\n\xa7 plugin.person_achievements.sidebar: Informaci\xf3n general\n\xa7 plugin.person_achievements.title: Main Features\n\xa7 plugin.person_achievements.daysWorked.title: working days\n\xa7 plugin.person_achievements.daysWorked.description: Only the days on which commits were made are taken into account\n\xa7 plugin.person_achievements.tasks.title: tasks\n\xa7 plugin.person_achievements.tasks.description: If the commits are signed correctly\n",fr:"\n\xa7 plugin.person_achievements.sidebar: Informations g\xe9n\xe9rales\n\xa7 plugin.person_achievements.title: Caract\xe9ristiques de base\n\xa7 plugin.person_achievements.daysWorked.title: jours de travail\n\xa7 plugin.person_achievements.daysWorked.description: Seuls les jours o\xf9 les commits ont \xe9t\xe9 effectu\xe9s sont pris en compte\n\xa7 plugin.person_achievements.tasks.title: t\xe2ches\n\xa7 plugin.person_achievements.tasks.description: Si les commits sont correctement sign\xe9s\n",he:"\n\xa7 plugin.person_achievements.sidebar: \u05d4\u05d9\u05e9\u05d2\u05d9\u05dd\n\xa7 plugin.person_achievements.title: \u05de\u05d0\u05e4\u05d9\u05d9\u05e0\u05d9\u05dd \u05e2\u05d9\u05e7\u05e8\u05d9\u05d9\u05dd\n\xa7 plugin.person_achievements.small.status.title: \u05e1\u05d8\u05d8\u05d5\u05e1\n\xa7 plugin.person_achievements.small.status.work: \u05e2\u05d5\u05d1\u05d3\n\xa7 plugin.person_achievements.small.status.dismissed: \u05e2\u05d6\u05d1\n\xa7 plugin.person_achievements.small.status.staff: \u05e6\u05d5\u05d5\u05ea\n\xa7 plugin.person_achievements.small.totalDays: \u05de\u05e9\u05da \u05d4\u05d7\u05d5\u05d6\u05d4\n\xa7 plugin.person_achievements.small.country: \u05de\u05d9\u05e7\u05d5\u05dd \u05d0\u05d7\u05e8\u05d5\u05df\n\xa7 plugin.person_achievements.small.email: \u05d0\u05d9\u05de\u05d9\u05d9\u05dc \u05d0\u05d7\u05e8\u05d5\u05df\n\xa7 plugin.person_achievements.small.firstDay: \u05d9\u05d5\u05dd \u05d4\u05e2\u05d1\u05d5\u05d3\u05d4 \u05d4\u05e8\u05d0\u05e9\u05d5\u05df\n\xa7 plugin.person_achievements.small.lastDay: \u05d9\u05d5\u05dd \u05d4\u05e2\u05d1\u05d5\u05d3\u05d4 \u05d4\u05d0\u05d7\u05e8\u05d5\u05df\n\xa7 plugin.person_achievements.small.middleMessageLength: \u05d0\u05d5\u05e8\u05da \u05de\u05de\u05d5\u05e6\u05e2 \u05e9\u05dc commit message\n\xa7 plugin.person_achievements.daysWorked.title: \u05d9\u05de\u05d9 \u05e2\u05d1\u05d5\u05d3\u05d4\n\xa7 plugin.person_achievements.daysWorked.description: \u05e0\u05e1\u05e4\u05e8\u05d9\u05dd \u05e8\u05e7 \u05d9\u05de\u05d9\u05dd \u05e9\u05d1\u05d4\u05dd \u05d1\u05d5\u05e6\u05e2\u05d5 commits\n\xa7 plugin.person_achievements.tasks.title: tasks\n\xa7 plugin.person_achievements.tasks.description: \u05d0\u05dd \u05dc-commits \u05d9\u05e9 commit messages \u05ea\u05e7\u05d9\u05e0\u05d9\u05dd\n",hi:"\n\xa7 plugin.person_achievements.sidebar: \u0909\u092a\u0932\u092c\u094d\u0927\u093f\u092f\u093e\u0901\n\xa7 plugin.person_achievements.title: \u092e\u0941\u0916\u094d\u092f \u0935\u093f\u0936\u0947\u0937\u0924\u093e\u090f\u0901\n\xa7 plugin.person_achievements.small.status.title: \u0938\u094d\u0925\u093f\u0924\u093f\n\xa7 plugin.person_achievements.small.status.work: \u0915\u093e\u092e \u0915\u0930\u0924\u093e \u0939\u0948\n\xa7 plugin.person_achievements.small.status.dismissed: \u091b\u094b\u0921\u093c \u091a\u0941\u0915\u093e \u0939\u0948\n\xa7 plugin.person_achievements.small.status.staff: \u0938\u094d\u091f\u093e\u092b\n\xa7 plugin.person_achievements.small.totalDays: \u0905\u0928\u0941\u092c\u0902\u0927 \u0905\u0935\u0927\u093f\n\xa7 plugin.person_achievements.small.country: \u0928\u0935\u0940\u0928\u0924\u092e location\n\xa7 plugin.person_achievements.small.email: \u0928\u0935\u0940\u0928\u0924\u092e \u0908\u092e\u0947\u0932\n\xa7 plugin.person_achievements.small.firstDay: \u092a\u0939\u0932\u093e \u0915\u093e\u0930\u094d\u092f\u0926\u093f\u0935\u0938\n\xa7 plugin.person_achievements.small.lastDay: \u0906\u0916\u093c\u093f\u0930\u0940 \u0915\u093e\u0930\u094d\u092f\u0926\u093f\u0935\u0938\n\xa7 plugin.person_achievements.small.middleMessageLength: \u0914\u0938\u0924 commit message \u0932\u0902\u092c\u093e\u0908\n\xa7 plugin.person_achievements.daysWorked.title: \u0915\u093e\u092e \u0915\u093f\u090f \u0917\u090f \u0926\u093f\u0928\n\xa7 plugin.person_achievements.daysWorked.description: \u0915\u0947\u0935\u0932 \u0935\u0947 \u0926\u093f\u0928 \u0917\u093f\u0928\u0947 \u091c\u093e\u0924\u0947 \u0939\u0948\u0902 \u091c\u093f\u0928\u092e\u0947\u0902 commits \u0915\u093f\u090f \u0917\u090f \u0939\u094b\u0902\n\xa7 plugin.person_achievements.tasks.title: tasks\n\xa7 plugin.person_achievements.tasks.description: \u0905\u0917\u0930 commits \u092e\u0947\u0902 \u0938\u0939\u0940 commit messages \u0939\u094b\u0902\n",ja:"\n\xa7 plugin.person_achievements.sidebar: \u4e00\u822c\u7684\u306a\u60c5\u5831\n\xa7 plugin.person_achievements.title: Main characteristics\n\xa7 plugin.person_achievements.daysWorked.title: days of work\n\xa7 plugin.person_achievements.daysWorked.description: Only days with commits are counted\n\xa7 plugin.person_achievements.tasks.title: tasks\n\xa7 plugin.person_achievements.tasks.description: If commits are properly signed\n",ko:"\n\xa7 plugin.person_achievements.sidebar: \uc77c\ubc18 \uc815\ubcf4\n\xa7 plugin.person_achievements.title: \uc8fc\uc694 \ud2b9\uc9d5\n\xa7 plugin.person_achievements.daysWorked.title: \uc791\uc5c5 \uc77c\uc758\n\xa7 plugin.person_achievements.daysWorked.description: \ub9cc \ucee4\ubc0b\ud558\ub294 \uc77c\n\xa7 plugin.person_achievements.tasks.title: \uace0\ub824\ub418\uc5c8\ub2e4\n\xa7 plugin.person_achievements.tasks.description: \ucee4\ubc0b\uc774 \uc62c\ubc14\ub974\uac8c \uc11c\uba85 \ub41c \uacbd\uc6b0\n",pt:"\n\xa7 plugin.person_achievements.sidebar: Informa\xe7\xe3o geral\n\xa7 plugin.person_achievements.title: Main characteristics\n\xa7 plugin.person_achievements.daysWorked.title: days of work\n\xa7 plugin.person_achievements.daysWorked.description: Only days with commits are counted\n\xa7 plugin.person_achievements.tasks.title: tasks\n\xa7 plugin.person_achievements.tasks.description: If commits are properly signed\n",ru:"\n\xa7 plugin.person_achievements.sidebar: \u0414\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f\n\xa7 plugin.person_achievements.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 plugin.person_achievements.small.status.title: \u0441\u0442\u0430\u0442\u0443\u0441\n\xa7 plugin.person_achievements.small.status.work: \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442\n\xa7 plugin.person_achievements.small.status.dismissed: \u0443\u0432\u043e\u043b\u0435\u043d\n\xa7 plugin.person_achievements.small.status.staff: \u043f\u043e\u043c\u043e\u0449\u043d\u0438\u043a\n\xa7 plugin.person_achievements.small.totalDays: \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u0430\n\xa7 plugin.person_achievements.small.country: \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\n\xa7 plugin.person_achievements.small.email: \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 email\n\xa7 plugin.person_achievements.small.firstDay: \u043f\u0435\u0440\u0432\u044b\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0434\u0435\u043d\u044c\n\xa7 plugin.person_achievements.small.lastDay: \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0434\u0435\u043d\u044c\n\xa7 plugin.person_achievements.small.middleMessageLength: \u0441\u0440\u0435\u0434\u043d\u044f\u044f \u0434\u043b\u0438\u043d\u0430 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 plugin.person_achievements.daysWorked.title: \u0434\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b\n\xa7 plugin.person_achievements.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 plugin.person_achievements.tasks.title: \u0437\u0430\u0434\u0430\u0447\n\xa7 plugin.person_achievements.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",zh:"\n\xa7 plugin.person_achievements.sidebar: \u822c\u8d44\u6599\n\xa7 plugin.person_achievements.title: \u4e3b\u8981\u7279\u70b9\n\xa7 plugin.person_achievements.daysWorked.title: \u5de5\u4f5c\u5929\n\xa7 plugin.person_achievements.daysWorked.description: \u53ea\u8003\u8651\u5236\u4f5c\u5b83\u4eec\u7684\u65e5\u5b50 Commits\n\xa7 plugin.person_achievements.tasks.title: \u4efb\u52a1\n\xa7 plugin.person_achievements.tasks.description: \u5982\u679c Commits \u6b63\u786e\u7b7e\u540d\n"},BF="component_beautiful_tn",UF="component_beautiful_tn_container",HF="component_beautiful_tn_title",GF="component_beautiful_tn_icon",VF="component_beautiful_tn_big_number",KF="component_beautiful_tn_task",$F="component_beautiful_tn_pr",YF="component_beautiful_tn_date";const XF=function(e){var t;let{commit:n,mode:a}=e;const s=("".concat(n.taskNumber).length||1)>5?VF:"",i=Hm.tasks.totalInfoByName.get(n.task),o=Hm.pr.totalInfoByName.get(null===i||void 0===i||null===(t=i.prIds)||void 0===t?void 0:t[0]);return(0,mu.jsxs)("div",{className:BF,children:[(0,mu.jsxs)("div",{className:HF,children:[(0,mu.jsx)(jw,{task:n.task,className:KF}),"print"!==a&&(0,mu.jsx)(Cw,{text:"pull request",prId:o,className:$F})]}),(0,mu.jsx)("div",{className:"".concat(GF," ").concat(s),children:n.taskNumber}),(0,mu.jsx)("div",{className:YF,children:Zi(n.date)})]})};const QF=function(e){let{list:t,mode:n}=e;const a=null===t||void 0===t?void 0:t.map((e=>(0,mu.jsx)(XF,{commit:e,mode:n},e.taskNumber)));return(0,mu.jsx)("div",{className:UF,children:a})};const JF=function(e){let{list:t}=e;const n=null===t||void 0===t?void 0:t.map((e=>(0,mu.jsx)(oD,{code:e},e)));return(0,mu.jsx)("div",{className:iD.achievement_container,children:n})},ZF=yi((e=>{let{user:t}=e;const n=t,a=PT.statisticsByCommits.get.getsByAuthor[t.author],s=Gi.authors[n.author],[i,o,r,l]=[s[Ci-1],s[Si-1],s[ji-1],s[Di-1]];return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsxs)(Pw,{value:i,children:[(0,mu.jsx)(sx,{title:"page.person.achievement.positive"}),(0,mu.jsx)(JF,{list:i})]}),(0,mu.jsxs)(Pw,{value:o,children:[(0,mu.jsx)(sx,{title:"page.person.achievement.normal"}),(0,mu.jsx)(JF,{list:o})]}),(0,mu.jsxs)(Pw,{value:r,children:[(0,mu.jsx)(sx,{title:"page.person.achievement.negative"}),(0,mu.jsx)(JF,{list:r}),(0,mu.jsx)(bw,{translationId:"page.person.achievement.description"}),(0,mu.jsx)(dT,{height:"xl"})]}),(0,mu.jsxs)(Pw,{value:l,children:[(0,mu.jsx)(sx,{title:"page.person.achievement.publicity"}),(0,mu.jsx)(JF,{list:l})]}),(0,mu.jsxs)(Pw,{value:a,children:[(0,mu.jsx)(sx,{title:"page.person.gets.title"}),(0,mu.jsx)(QF,{list:a}),(0,mu.jsx)(bw,{translationId:"page.person.gets.description"})]})]})})),eW=ZF;class tW{getMenuItems(){return[{id:"achievements",group:10,order:15,link:"/person/achievements/",title:"plugin.person_achievements.sidebar",icon:"./assets/menu/team_common.svg"}]}getPage(e,t){return"/person/achievements"===e?(0,mu.jsx)(eW,{mode:null===t||void 0===t?void 0:t.mode,user:null===t||void 0===t?void 0:t.user,filters:null===t||void 0===t?void 0:t.filters}):void 0}getTranslations(){return zF}}tW.id="person_achievements";const nW=yi((e=>{let{user:t}=e;const n=PT.statisticsByCommits.timestamp.totalInfoByName[t.author];return(0,mu.jsx)(HN,{statistic:n})}));class aW{getMenuItems(){return[{id:"changes",group:40,order:100,link:"/person/changes/",title:"sidebar.person.changes",icon:"./assets/menu/branch.svg"}]}getPage(e,t){return"/person/changes"===e?(0,mu.jsx)(nW,{mode:null===t||void 0===t?void 0:t.mode,user:null===t||void 0===t?void 0:t.user,filters:null===t||void 0===t?void 0:t.filters}):void 0}}function sW(e,t){return e.getWeightedAverages().map(((n,a)=>{const s=t+e.step*a,i=t+e.step*(a+1),o=mo(n);return{title:"\u0441 ".concat(Zi(s)," \u043f\u043e ").concat(Zi(i)),value:o,meta:{}}}))}function iW(e,t,n,a){const s=new Go(t,n,20);return e.forEach((e=>{var t;null===(t=s.getWeightedAverage(e.milliseconds))||void 0===t||t.update(e[a])})),sW(s,t)}aW.id="person_changes";const oW=function(e){let{statistic:n,from:a,to:s}=e;const i=n.commitsByTimestampCounter.maxData,[o,r]=(0,t.useState)(i),l=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===l||void 0===l||!l.length)return(0,mu.jsx)(Hw,{});const m=(0,t.useMemo)((()=>iW(n.allCommitsByTimestamp,a,s,"commits")),[a,s]),c=(0,t.useMemo)((()=>iW(n.allCommitsByTimestamp,a,s,"tasksInDay")),[a,s]),u=(0,t.useMemo)((()=>function(e,t,n){const a=new Go(t,n,20);return e.forEach((e=>{Object.values(e.tasksByAuthor).forEach((t=>{var n,s;const i=null===(n=Object.keys(t))||void 0===n?void 0:n.length;null===(s=a.getWeightedAverage(e.milliseconds))||void 0===s||s.update(i)}))})),sW(a,t)}(n.allCommitsByTimestamp,a,s)),[a,s]),[p,d]=Qi(i.timestamp),h=[{title:p,description:"page.common.commits.description",type:po,arguments:{description:[d]}}];return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(OA,{recommendations:h}),(0,mu.jsx)(sx,{title:"\u0421\u0440\u0435\u0434\u043d\u0435\u0432\u0437\u0432\u0435\u0448\u0435\u043d\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u0432 \u0434\u0435\u043d\u044c"}),(0,mu.jsx)(Jb,{template:"box",children:(0,mu.jsx)(JA,{dots:m,selected:m[0],onClick:e=>{console.log(e.meta)}})}),(0,mu.jsx)(sx,{title:"\u0421\u0440\u0435\u0434\u043d\u0435\u0432\u0437\u0432\u0435\u0448\u0435\u043d\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u0434\u0430\u0447 \u0432 \u0434\u0435\u043d\u044c"}),(0,mu.jsx)(Jb,{template:"box",children:(0,mu.jsx)(JA,{dots:c,selected:c[0],onClick:e=>{console.log(e.meta)}})}),(0,mu.jsx)(sx,{title:"\u0421\u0440\u0435\u0434\u043d\u0435\u0432\u0437\u0432\u0435\u0448\u0435\u043d\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u0434\u0430\u0447 \u0432 \u0434\u0435\u043d\u044c \u043d\u0430 \u043e\u0434\u043d\u043e\u0433\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430"}),(0,mu.jsx)(Jb,{template:"box",children:(0,mu.jsx)(JA,{dots:u,selected:u[0],onClick:e=>{console.log(e.meta)}})}),(0,mu.jsx)(sx,{title:"page.common.commits.title"}),(0,mu.jsx)(Jb,{template:"box",children:(0,mu.jsx)(HA,{dots:l,selected:o,onClick:e=>{r(e.meta)}})}),(0,mu.jsx)("br",{}),(0,mu.jsx)("br",{}),(0,mu.jsx)(sx,{title:Ee.get("page.common.commits.title2",Zi(null===o||void 0===o?void 0:o.timestamp),null===o||void 0===o?void 0:o.commits)}),(0,mu.jsx)(Jb,{template:"box",children:(0,mu.jsx)(uw,{timestamp:null===o||void 0===o?void 0:o.timestamp})})]})},rW=yi((e=>{let{user:t}=e;const n=PT.statisticsByCommits.timestamp.totalInfoByName[t.author],a=PT.statisticsByCommits.firstLastCommit;return(0,mu.jsx)(oW,{statistic:n,from:a.min,to:a.max})}));class lW{getMenuItems(){return[{id:"commits",group:40,order:90,link:"/person/commits/",title:"sidebar.person.commits",icon:"./assets/menu/pull-request.svg"}]}getPage(e,t){return"/person/commits"===e?(0,mu.jsx)(rW,{mode:null===t||void 0===t?void 0:t.mode,user:null===t||void 0===t?void 0:t.user,filters:null===t||void 0===t?void 0:t.filters}):void 0}}lW.id="person_commits";const mW={ar:"\n\xa7 plugin.person_money.sidebar: \u062a\u0643\u0644\u0641\u0629 \u0627\u0644\u0639\u0645\u0644\n\xa7 plugin.person_money.title.total: \u0627\u0644\u0625\u062c\u0645\u0627\u0644\u064a \u0639\u0628\u0631 \u0627\u0644\u0641\u062a\u0631\u0629\n\xa7 plugin.person_money.title.middle: \u0627\u0644\u062a\u0643\u0644\u0641\u0629 \u0627\u0644\u0645\u062a\u0648\u0633\u0637\u0629\n\xa7 plugin.person_money.moneyAll.title: \u0627\u0644\u0645\u0633\u062a\u0644\u064e\u0645\n\xa7 plugin.person_money.moneyAll.description: \u0627\u0644\u0631\u0627\u062a\u0628 (\u0627\u0646\u0638\u0631 \u0627\u0644\u0625\u0639\u062f\u0627\u062f\u0627\u062a) \u0645\u0636\u0631\u0648\u0628\u064b\u0627 \u0641\u064a \u0639\u062f\u062f \u0627\u0644\u0623\u0634\u0647\u0631 \u0627\u0644\u062a\u064a \u062a\u0645 \u0627\u0644\u0639\u0645\u0644 \u0641\u064a\u0647\u0627.\n\xa7 plugin.person_money.moneyWorked.title: \u0623\u064a\u0627\u0645 \u0627\u0644\u0639\u0645\u0644\n\xa7 plugin.person_money.moneyWorked.description: \u0627\u0644\u0623\u064a\u0627\u0645 \u0627\u0644\u062a\u064a \u062a\u062d\u062a\u0648\u064a \u0639\u0644\u0649 commits \u0645\u0636\u0631\u0648\u0628\u0629 \u0641\u064a \u062a\u0643\u0644\u0641\u0629 \u064a\u0648\u0645 \u0639\u0645\u0644 \u0648\u0627\u062d\u062f.\n\xa7 plugin.person_money.moneyLosses.title: \u0627\u062d\u062a\u0645\u0627\u0644 \u0632\u064a\u0627\u062f\u0629 \u0627\u0644\u062f\u0641\u0639\n\xa7 plugin.person_money.moneyLosses.description: \u0627\u0644\u0623\u064a\u0627\u0645 \u0628\u062f\u0648\u0646 commits \u0645\u0636\u0631\u0648\u0628\u0629 \u0641\u064a \u062a\u0643\u0644\u0641\u0629 \u064a\u0648\u0645 \u0639\u0645\u0644 \u0648\u0627\u062d\u062f.\n\xa7 plugin.person_money.weekendPayment.title: \u0627\u0644\u0639\u0645\u0644 \u0641\u064a \u0639\u0637\u0644\u0627\u062a \u0646\u0647\u0627\u064a\u0629 \u0627\u0644\u0623\u0633\u0628\u0648\u0639\n\xa7 plugin.person_money.weekendPayment.description: \u0625\u062c\u0645\u0627\u0644\u064a \u0627\u0644\u0632\u064a\u0627\u062f\u0629 \u0641\u064a \u0627\u0644\u062f\u0641\u0639 \u0645\u0642\u0627\u0628\u0644 \u0627\u0644\u0639\u0645\u0644 \u0641\u064a \u0639\u0637\u0644\u0627\u062a \u0646\u0647\u0627\u064a\u0629 \u0627\u0644\u0623\u0633\u0628\u0648\u0639\n\xa7 plugin.person_money.tasks.title: task\n\xa7 plugin.person_money.tasks.description: \u0639\u062f\u062f tasks \u0627\u0644\u062a\u064a \u0639\u0645\u0644 \u0639\u0644\u064a\u0647\u0627 \u0639\u0636\u0648 \u0627\u0644\u0637\u0627\u0642\u0645 \u0645\u0642\u0633\u0648\u0645\u064b\u0627 \u0639\u0644\u0649 \u062a\u0643\u0644\u0641\u0629 \u0627\u0644\u0639\u0645\u0644 (\u0627\u0644\u0623\u064a\u0627\u0645 \u0645\u0639 commits \u0645\u0636\u0631\u0648\u0628\u0629 \u0641\u064a \u062a\u0643\u0644\u0641\u0629 \u064a\u0648\u0645 \u0639\u0645\u0644 \u0648\u0627\u062d\u062f).\n\xa7 plugin.person_money.commits.title: commit\n\xa7 plugin.person_money.commits.description: \u0625\u062c\u0645\u0627\u0644\u064a \u0639\u062f\u062f commits \u0639\u0628\u0631 \u0627\u0644\u0641\u062a\u0631\u0629 \u0645\u0642\u0633\u0648\u0645\u064b\u0627 \u0639\u0644\u0649 \u062a\u0643\u0644\u0641\u0629 \u0627\u0644\u0639\u0645\u0644 (\u0627\u0644\u0623\u064a\u0627\u0645 \u0645\u0639 commits \u0645\u0636\u0631\u0648\u0628\u0629 \u0641\u064a \u062a\u0643\u0644\u0641\u0629 \u064a\u0648\u0645 \u0639\u0645\u0644 \u0648\u0627\u062d\u062f).\n",de:"\n\xa7 plugin.person_money.sidebar: Arbeitskosten\n\xa7 plugin.person_money.title.total: Total over time\n\xa7 plugin.person_money.title.middle: Average cost\n\xa7 plugin.person_money.moneyAll.title: received\n\xa7 plugin.person_money.moneyAll.description: Assumed total salary from the project (see settings)\n\xa7 plugin.person_money.moneyWorked.title: worked for\n\xa7 plugin.person_money.moneyWorked.description: Actual days worked multiplied by average salary\n\xa7 plugin.person_money.moneyLosses.title: possible overpayment\n\xa7 plugin.person_money.moneyLosses.description: Days without commits multiplied by average salary\n\xa7 plugin.person_money.tasks.title: task\n\xa7 plugin.person_money.tasks.description: Number of closed tasks to the cost of the day\n\xa7 plugin.person_money.commits.title: commit\n\xa7 plugin.person_money.commits.description: Number of commits to the cost of the workday\n",en:"\n\xa7 plugin.person_money.sidebar: Work cost\n\xa7 plugin.person_money.title.total: Total over time\n\xa7 plugin.person_money.title.middle: Average cost\n\xa7 plugin.person_money.moneyAll.title: received\n\xa7 plugin.person_money.moneyAll.description: Salary (see settings) multiplied by the number of months worked.\n\xa7 plugin.person_money.moneyWorked.title: worked\n\xa7 plugin.person_money.moneyWorked.description: Days with commits multiplied by the cost of one working day.\n\xa7 plugin.person_money.moneyLosses.title: possible overpayment\n\xa7 plugin.person_money.moneyLosses.description: Days without commits multiplied by the cost of one working day.\n\xa7 plugin.person_money.weekendPayment.title: weekend work\n\xa7 plugin.person_money.weekendPayment.description: Total overpayment for weekend work\n\xa7 plugin.person_money.tasks.title: task\n\xa7 plugin.person_money.tasks.description: Number of tasks touched by the staff member divided by the worked cost (days with commits multiplied by the cost of one working day).\n\xa7 plugin.person_money.commits.title: commit\n\xa7 plugin.person_money.commits.description: Total number of commits over time divided by the worked cost (days with commits multiplied by the cost of one working day).\n",es:"\n\xa7 plugin.person_money.sidebar: Costo del trabajo\n\xa7 plugin.person_money.title.total: Durante todo este tiempo \ud83d\udc4c\ufe0f\n\xa7 plugin.person_money.title.middle: Average cost\n\xa7 plugin.person_money.moneyAll.title: received\n\xa7 plugin.person_money.moneyAll.description: Estimated amount of the PO from the project (see settings)\n\xa7 plugin.person_money.moneyWorked.title: worked out\n\xa7 plugin.person_money.moneyWorked.description: Actual days worked multiplied by the average po\n\xa7 plugin.person_money.moneyLosses.title: possible overpayment\n\xa7 plugin.person_money.moneyLosses.description: Days without commits multiplied by the average po\n\xa7 plugin.person_money.tasks.title: task\n\xa7 plugin.person_money.tasks.description: The number of closed tasks to the cost of the day\n\xa7 plugin.person_money.commits.title: commits\n\xa7 plugin.person_money.commits.description: The number of commits to the cost of the working day\n",fr:"\n\xa7 plugin.person_money.sidebar: Co\xfbt des travaux\n\xa7 plugin.person_money.title.total: Pour tous les temps\n\xa7 plugin.person_money.title.middle: Valeur moyenne\n\xa7 plugin.person_money.moneyAll.title: re\xe7ut\n\xa7 plugin.person_money.moneyAll.description: Montant estimatif des d\xe9penses d & apos; appui au projet (voir param\xe8tres)\n\xa7 plugin.person_money.moneyWorked.title: travaillas\n\xa7 plugin.person_money.moneyWorked.description: Jours effectivement travaill\xe9s multipli\xe9s par le nombre moyen de jours travaill\xe9s\n\xa7 plugin.person_money.moneyLosses.title: trop-per\xe7u possible\n\xa7 plugin.person_money.moneyLosses.description: Jours sans commits multipli\xe9s par la moyenne SN\n\xa7 plugin.person_money.tasks.title: t\xe2che\n\xa7 plugin.person_money.tasks.description: Nombre de t\xe2ches ferm\xe9es au co\xfbt de la journ\xe9e\n\xa7 plugin.person_money.commits.title: commit\n\xa7 plugin.person_money.commits.description: Nombre de commits par jour ouvrable\n",he:"\n\xa7 plugin.person_money.sidebar: \u05e2\u05dc\u05d5\u05ea \u05e2\u05d1\u05d5\u05d3\u05d4\n\xa7 plugin.person_money.title.total: \u05e1\u05da \u05d4\u05db\u05d5\u05dc \u05dc\u05d0\u05d5\u05e8\u05da \u05d4\u05ea\u05e7\u05d5\u05e4\u05d4\n\xa7 plugin.person_money.title.middle: \u05e2\u05dc\u05d5\u05ea \u05de\u05de\u05d5\u05e6\u05e2\u05ea\n\xa7 plugin.person_money.moneyAll.title: \u05d4\u05ea\u05e7\u05d1\u05dc\n\xa7 plugin.person_money.moneyAll.description: \u05d4\u05e9\u05db\u05e8 (\u05e8\u05d0\u05d5 \u05d4\u05d2\u05d3\u05e8\u05d5\u05ea) \u05de\u05d5\u05db\u05e4\u05dc \u05d1\u05de\u05e1\u05e4\u05e8 \u05d7\u05d5\u05d3\u05e9\u05d9 \u05d4\u05e2\u05d1\u05d5\u05d3\u05d4.\n\xa7 plugin.person_money.moneyWorked.title: \u05d9\u05de\u05d9 \u05e2\u05d1\u05d5\u05d3\u05d4\n\xa7 plugin.person_money.moneyWorked.description: \u05d9\u05de\u05d9\u05dd \u05e2\u05dd commits \u05de\u05d5\u05db\u05e4\u05dc\u05d9\u05dd \u05d1\u05e2\u05dc\u05d5\u05ea \u05e9\u05dc \u05d9\u05d5\u05dd \u05e2\u05d1\u05d5\u05d3\u05d4 \u05d0\u05d7\u05d3.\n\xa7 plugin.person_money.moneyLosses.title: \u05ea\u05e9\u05dc\u05d5\u05dd-\u05d9\u05ea\u05e8 \u05d0\u05e4\u05e9\u05e8\u05d9\n\xa7 plugin.person_money.moneyLosses.description: \u05d9\u05de\u05d9\u05dd \u05dc\u05dc\u05d0 commits \u05de\u05d5\u05db\u05e4\u05dc\u05d9\u05dd \u05d1\u05e2\u05dc\u05d5\u05ea \u05e9\u05dc \u05d9\u05d5\u05dd \u05e2\u05d1\u05d5\u05d3\u05d4 \u05d0\u05d7\u05d3.\n\xa7 plugin.person_money.weekendPayment.title: \u05e2\u05d1\u05d5\u05d3\u05d4 \u05d1\u05e1\u05d5\u05e4\u05d9 \u05e9\u05d1\u05d5\u05e2\n\xa7 plugin.person_money.weekendPayment.description: \u05e1\u05da \u05db\u05dc \u05d4\u05ea\u05e9\u05dc\u05d5\u05dd-\u05d4\u05d9\u05ea\u05e8 \u05e2\u05d1\u05d5\u05e8 \u05e2\u05d1\u05d5\u05d3\u05d4 \u05d1\u05e1\u05d5\u05e4\u05d9 \u05e9\u05d1\u05d5\u05e2\n\xa7 plugin.person_money.tasks.title: task\n\xa7 plugin.person_money.tasks.description: \u05de\u05e1\u05e4\u05e8 tasks \u05e9\u05d0\u05d9\u05e9 \u05d4\u05e6\u05d5\u05d5\u05ea \u05e2\u05d1\u05d3 \u05e2\u05dc\u05d9\u05d4\u05dd \u05d7\u05dc\u05e7\u05d9 \u05e2\u05dc\u05d5\u05ea \u05d4\u05e2\u05d1\u05d5\u05d3\u05d4 (\u05d9\u05de\u05d9\u05dd \u05e2\u05dd commits \u05de\u05d5\u05db\u05e4\u05dc\u05d9\u05dd \u05d1\u05e2\u05dc\u05d5\u05ea \u05e9\u05dc \u05d9\u05d5\u05dd \u05e2\u05d1\u05d5\u05d3\u05d4 \u05d0\u05d7\u05d3).\n\xa7 plugin.person_money.commits.title: commit\n\xa7 plugin.person_money.commits.description: \u05e1\u05da \u05db\u05dc \u05de\u05e1\u05e4\u05e8 \u05d4-commits \u05dc\u05d0\u05d5\u05e8\u05da \u05d4\u05ea\u05e7\u05d5\u05e4\u05d4 \u05d7\u05dc\u05e7\u05d9 \u05e2\u05dc\u05d5\u05ea \u05d4\u05e2\u05d1\u05d5\u05d3\u05d4 (\u05d9\u05de\u05d9\u05dd \u05e2\u05dd commits \u05de\u05d5\u05db\u05e4\u05dc\u05d9\u05dd \u05d1\u05e2\u05dc\u05d5\u05ea \u05e9\u05dc \u05d9\u05d5\u05dd \u05e2\u05d1\u05d5\u05d3\u05d4 \u05d0\u05d7\u05d3).\n",hi:"\n\xa7 plugin.person_money.sidebar: \u0915\u093e\u0930\u094d\u092f \u0932\u093e\u0917\u0924\n\xa7 plugin.person_money.title.total: \u092a\u0942\u0930\u0947 \u0938\u092e\u092f \u0915\u0940 \u0915\u0941\u0932 \u0930\u093e\u0936\u093f\n\xa7 plugin.person_money.title.middle: \u0914\u0938\u0924 \u0932\u093e\u0917\u0924\n\xa7 plugin.person_money.moneyAll.title: \u092a\u094d\u0930\u093e\u092a\u094d\u0924 \u0930\u093e\u0936\u093f\n\xa7 plugin.person_money.moneyAll.description: \u0935\u0947\u0924\u0928 (\u0938\u0947\u091f\u093f\u0902\u0917\u094d\u0938 \u0926\u0947\u0916\u0947\u0902) \u0915\u094b \u0915\u093e\u092e \u0915\u093f\u090f \u0917\u090f \u092e\u0939\u0940\u0928\u094b\u0902 \u0915\u0940 \u0938\u0902\u0916\u094d\u092f\u093e \u0938\u0947 \u0917\u0941\u0923\u093e \u0915\u093f\u092f\u093e \u091c\u093e\u0924\u093e \u0939\u0948\u0964\n\xa7 plugin.person_money.moneyWorked.title: \u0915\u093e\u092e \u0915\u093f\u090f \u0917\u090f \u0926\u093f\u0928\n\xa7 plugin.person_money.moneyWorked.description: \u091c\u093f\u0928 \u0926\u093f\u0928\u094b\u0902 \u092e\u0947\u0902 commits \u0939\u0941\u090f, \u0909\u0928\u094d\u0939\u0947\u0902 \u090f\u0915 \u0915\u093e\u0930\u094d\u092f\u0926\u093f\u0935\u0938 \u0915\u0940 \u0932\u093e\u0917\u0924 \u0938\u0947 \u0917\u0941\u0923\u093e \u0915\u093f\u092f\u093e \u091c\u093e\u0924\u093e \u0939\u0948\u0964\n\xa7 plugin.person_money.moneyLosses.title: \u0938\u0902\u092d\u093e\u0935\u093f\u0924 \u0905\u0927\u093f\u0915 \u092d\u0941\u0917\u0924\u093e\u0928\n\xa7 plugin.person_money.moneyLosses.description: \u091c\u093f\u0928 \u0926\u093f\u0928\u094b\u0902 \u092e\u0947\u0902 commits \u0928\u0939\u0940\u0902 \u0939\u0941\u090f, \u0909\u0928\u094d\u0939\u0947\u0902 \u090f\u0915 \u0915\u093e\u0930\u094d\u092f\u0926\u093f\u0935\u0938 \u0915\u0940 \u0932\u093e\u0917\u0924 \u0938\u0947 \u0917\u0941\u0923\u093e \u0915\u093f\u092f\u093e \u091c\u093e\u0924\u093e \u0939\u0948\u0964\n\xa7 plugin.person_money.weekendPayment.title: \u0938\u092a\u094d\u0924\u093e\u0939\u093e\u0902\u0924 \u092a\u0930 \u0915\u093e\u092e\n\xa7 plugin.person_money.weekendPayment.description: \u0938\u092a\u094d\u0924\u093e\u0939\u093e\u0902\u0924 \u0915\u0947 \u0915\u093e\u092e \u0915\u0947 \u0932\u093f\u090f \u0915\u0941\u0932 \u0905\u0927\u093f\u0915 \u092d\u0941\u0917\u0924\u093e\u0928\n\xa7 plugin.person_money.tasks.title: task\n\xa7 plugin.person_money.tasks.description: \u091c\u093f\u0928 tasks \u092a\u0930 \u0938\u094d\u091f\u093e\u092b \u0938\u0926\u0938\u094d\u092f \u0928\u0947 \u0915\u093e\u092e \u0915\u093f\u092f\u093e, \u0909\u0928\u0915\u0940 \u0938\u0902\u0916\u094d\u092f\u093e \u0915\u094b \u0915\u093e\u0930\u094d\u092f \u0932\u093e\u0917\u0924 (commits \u0935\u093e\u0932\u0947 \u0926\u093f\u0928\u094b\u0902 \u0915\u094b \u090f\u0915 \u0915\u093e\u0930\u094d\u092f\u0926\u093f\u0935\u0938 \u0915\u0940 \u0932\u093e\u0917\u0924 \u0938\u0947 \u0917\u0941\u0923\u093e \u0915\u0930\u0915\u0947) \u0938\u0947 \u0935\u093f\u092d\u093e\u091c\u093f\u0924 \u0915\u093f\u092f\u093e \u091c\u093e\u0924\u093e \u0939\u0948\u0964\n\xa7 plugin.person_money.commits.title: commit\n\xa7 plugin.person_money.commits.description: \u0938\u092e\u092f \u0915\u0947 \u0938\u093e\u0925 commits \u0915\u0940 \u0915\u0941\u0932 \u0938\u0902\u0916\u094d\u092f\u093e \u0915\u094b \u0915\u093e\u0930\u094d\u092f \u0932\u093e\u0917\u0924 (commits \u0935\u093e\u0932\u0947 \u0926\u093f\u0928\u094b\u0902 \u0915\u094b \u090f\u0915 \u0915\u093e\u0930\u094d\u092f\u0926\u093f\u0935\u0938 \u0915\u0940 \u0932\u093e\u0917\u0924 \u0938\u0947 \u0917\u0941\u0923\u093e \u0915\u0930\u0915\u0947) \u0938\u0947 \u0935\u093f\u092d\u093e\u091c\u093f\u0924 \u0915\u093f\u092f\u093e \u091c\u093e\u0924\u093e \u0939\u0948\u0964\n",ja:"\n\xa7 plugin.person_money.sidebar: \u4ed5\u4e8b\u306e\u30b3\u30b9\u30c8\n\xa7 plugin.person_money.title.total: Total over time\n\xa7 plugin.person_money.title.middle: Average cost\n\xa7 plugin.person_money.moneyAll.title: received\n\xa7 plugin.person_money.moneyAll.description: Assumed total salary from the project (see settings)\n\xa7 plugin.person_money.moneyWorked.title: worked for\n\xa7 plugin.person_money.moneyWorked.description: Actual days worked multiplied by average salary\n\xa7 plugin.person_money.moneyLosses.title: possible overpayment\n\xa7 plugin.person_money.moneyLosses.description: Days without commits multiplied by average salary\n\xa7 plugin.person_money.tasks.title: task\n\xa7 plugin.person_money.tasks.description: Number of closed tasks to the cost of the day\n\xa7 plugin.person_money.commits.title: commit\n\xa7 plugin.person_money.commits.description: Number of commits to the cost of the workday\n",ko:"\n\xa7 plugin.person_money.sidebar: \uc791\uc5c5 \ube44\uc6a9\n\xa7 plugin.person_money.title.total: \ubaa8\ub4e0 \uc2dc\uac04 \ub3d9\uc548\n\xa7 plugin.person_money.title.middle: \ud3c9\uade0 \ube44\uc6a9\n\xa7 plugin.person_money.moneyAll.title: \uc218\uc2e0\n\xa7 plugin.person_money.moneyAll.description: \ud504\ub85c\uc81d\ud2b8\uc5d0\uc11c \ud3ec\uc758 \uc608\uc0c1 \uae08\uc561(\uc124\uc815 \ucc38\uc870)\n\xa7 plugin.person_money.moneyWorked.title: \ubc16\uc73c\ub85c \uc77c\n\xa7 plugin.person_money.moneyWorked.description: \uc2e4\uc81c \uc77c \ud3c9\uade0 \ud3ec\ub97c \uacf1\ud55c \uc77c\n\xa7 plugin.person_money.moneyLosses.title: \uac00\ub2a5\ud55c \ucd08\uacfc \uc9c0\ubd88\n\xa7 plugin.person_money.moneyLosses.description: \ucee4\ubc0b\uc774 \uc5c6\ub294 \uc77c\uc5d0 \ud3c9\uade0 \ud3ec\ub97c \uacf1\ud55c \uac12\n\xa7 plugin.person_money.tasks.title: \uc791\uc5c5\n\xa7 plugin.person_money.tasks.description: \ube44\uc6a9\uc5d0 \ub300\ud55c \ub2eb\ud78c \uc791\uc5c5 \uc218\n\xa7 plugin.person_money.commits.title: \uc57d\uc18d\uc758 \ub0a0\n\xa7 plugin.person_money.commits.description: \uc791\uc5c5 \uc77c \ube44\uc6a9\uc5d0 \ub300\ud55c \ucee4\ubc0b \uc218\n",pt:"\n\xa7 plugin.person_money.sidebar: Custo do trabalho\n\xa7 plugin.person_money.title.total: Total over time\n\xa7 plugin.person_money.title.middle: Average cost\n\xa7 plugin.person_money.moneyAll.title: received\n\xa7 plugin.person_money.moneyAll.description: Assumed total salary from the project (see settings)\n\xa7 plugin.person_money.moneyWorked.title: worked for\n\xa7 plugin.person_money.moneyWorked.description: Actual days worked multiplied by average salary\n\xa7 plugin.person_money.moneyLosses.title: possible overpayment\n\xa7 plugin.person_money.moneyLosses.description: Days without commits multiplied by average salary\n\xa7 plugin.person_money.tasks.title: task\n\xa7 plugin.person_money.tasks.description: Number of closed tasks to the cost of the day\n\xa7 plugin.person_money.commits.title: commit\n\xa7 plugin.person_money.commits.description: Number of commits to the cost of the workday\n",ru:"\n\xa7 plugin.person_money.sidebar: \u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u044b\n\xa7 plugin.person_money.title.total: \u0417\u0430 \u0432\u0441\u0451 \u0432\u0440\u0435\u043c\u044f\n\xa7 plugin.person_money.title.middle: \u0421\u0440\u0435\u0434\u043d\u044f\u044f \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c\n\xa7 plugin.person_money.moneyAll.title: \u043f\u043e\u043b\u0443\u0447\u0438\u043b\n\xa7 plugin.person_money.moneyAll.description: \u0417\u0430\u0440\u043f\u043b\u0430\u0442\u0430 (\u0441\u043c. \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438) \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u043d\u0430\u044f \u043d\u0430 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043e\u0442\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432.\n\xa7 plugin.person_money.moneyWorked.title: \u043e\u0442\u0440\u0430\u0431\u043e\u0442\u0430\u043b\n\xa7 plugin.person_money.moneyWorked.description: \u0414\u043d\u0438 \u0441 \u043a\u043e\u043c\u043c\u0438\u0442\u0430\u043c\u0438 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u043d\u0430 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0434\u043d\u043e\u0433\u043e \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u0434\u043d\u044f.\n\xa7 plugin.person_money.moneyLosses.title: \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0430\u044f \u043f\u0435\u0440\u0435\u043f\u043b\u0430\u0442\u0430\n\xa7 plugin.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\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0434\u043d\u043e\u0433\u043e \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u0434\u043d\u044f.\n\xa7 plugin.person_money.weekendPayment.title: \u0440\u0430\u0431\u043e\u0442\u0430 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0445\n\xa7 plugin.person_money.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 plugin.person_money.tasks.title: \u0437\u0430\u0434\u0430\u0447\u0430\n\xa7 plugin.person_money.tasks.description: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u0434\u0430\u0447, \u0437\u0430\u0442\u0440\u043e\u043d\u0443\u0442\u044b\u0445 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u043c, \u0434\u0435\u043b\u0435\u043d\u043e\u0435 \u043d\u0430 \u043e\u0442\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u0443\u044e \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c (\u0434\u043d\u0438 \u0441 \u043a\u043e\u043c\u043c\u0438\u0442\u0430\u043c\u0438 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u043d\u0430 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0434\u043d\u043e\u0433\u043e \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u0434\u043d\u044f).\n\xa7 plugin.person_money.commits.title: \u043a\u043e\u043c\u043c\u0438\u0442\n\xa7 plugin.person_money.commits.description: \u041e\u0431\u0449\u0435\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u0437\u0430 \u0432\u0441\u0451 \u0432\u0440\u0435\u043c\u044f \u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0435 \u043d\u0430 \u043e\u0442\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u0443\u044e \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c (\u0434\u043d\u0438 \u0441 \u043a\u043e\u043c\u043c\u0438\u0442\u0430\u043c\u0438 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u043d\u0430 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0434\u043d\u043e\u0433\u043e \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u0434\u043d\u044f).\n",zh:"\n\xa7 plugin.person_money.sidebar: \u5de5\u4f5c\u7684\u6210\u672c\n\xa7 plugin.person_money.title.total: \u4e00\u76f4\u5982\u6b64\n\xa7 plugin.person_money.title.middle: \u5e73\u5747\u6210\u672c\n\xa7 plugin.person_money.moneyAll.title: \u6536\u5230\n\xa7 plugin.person_money.moneyAll.description: \u5de5\u7a0b\u9879\u76ee\u7684\u91c7\u8d2d\u8ba2\u5355\u4f30\u8ba1\u91d1\u989d (\u8bf7\u53c2\u9605\u8bbe\u7f6e)\n\xa7 plugin.person_money.moneyWorked.title: \u5de5\u4f5c\u4e86\n\xa7 plugin.person_money.moneyWorked.description: \u5b9e\u9645\u5de5\u4f5c\u5929\u6570\u4e58\u4ee5\u5e73\u5747po\n\xa7 plugin.person_money.moneyLosses.title: \u53ef\u80fd\u591a\u4ed8\n\xa7 plugin.person_money.moneyLosses.description: \u6ca1\u6709\u7684\u65e5\u5b50 Commits \u4e58\u4ee5\u5e73\u5747po\n\xa7 plugin.person_money.tasks.title: \u4efb\u52a1\n\xa7 plugin.person_money.tasks.description: \u5173\u95ed\u4efb\u52a1\u7684\u6570\u91cf\u5230\u4e00\u5929\u7684\u6210\u672c\n\xa7 plugin.person_money.commits.title: Commits\n\xa7 plugin.person_money.commits.description: \u6570\u91cf Commits \u5230\u4e00\u4e2a\u5de5\u4f5c\u65e5\u7684\u6210\u672c\n"},cW=yi((e=>{let{user:t}=e;const n=PT.statisticsByCommits.scoring.total,a=PT.statisticsByCommits.scoring.totalInfoByName[t.author],s=t.totalTasks;return t.isStaff?(0,mu.jsx)(Hw,{mode:"staff"}):(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(sx,{title:"plugin.person_money.title.total"}),(0,mu.jsx)(Pu,{value:ro(t.totalMoney),icon:"./assets/cards/money_total.svg",title:"plugin.person_money.moneyAll.title",description:"plugin.person_money.moneyAll.description",scoring:{value:a.totalMoney,total:n.totalMoney}}),(0,mu.jsx)(Pu,{value:ro(t.totalMoneyWorked),icon:"./assets/cards/money_work.svg",title:"plugin.person_money.moneyWorked.title",description:"plugin.person_money.moneyWorked.description",scoring:{value:a.totalMoneyWorked,total:n.totalMoneyWorked}}),(0,mu.jsx)(Pu,{value:ro(t.totalMoneyLosses),icon:"./assets/cards/money_lazy.svg",title:"plugin.person_money.moneyLosses.title",description:"plugin.person_money.moneyLosses.description",scoring:{value:a.totalMoneyLosses,total:n.totalMoneyLosses}}),(0,mu.jsx)(Pu,{value:ro(t.totalMoneyInWeekend),icon:"./assets/cards/money_holidays.svg",title:"plugin.person_money.weekendPayment.title",description:"plugin.person_money.weekendPayment.description",scoring:{value:a.totalMoneyInWeekend,total:n.totalMoneyInWeekend}})]}),(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(sx,{title:"plugin.person_money.title.middle"}),s?(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(Pu,{size:"l",value:ro(t.totalMoneyWorked/s,0),icon:"./assets/cards/money_task.svg",title:"plugin.person_money.tasks.title",description:"plugin.person_money.tasks.description",scoring:{value:a.moneyForTask,total:n.moneyForTask}}),(0,mu.jsx)(Pu,{size:"l",value:ro(t.totalMoneyWorked/t.commits,0),icon:"./assets/cards/money_work.svg",title:"plugin.person_money.commits.title",description:"plugin.person_money.commits.description",scoring:{value:a.moneyForCommit,total:n.moneyForCommit}})]}):(0,mu.jsx)(Hw,{})]})]})}));class uW{getMenuItems(){return[{id:"money",group:10,order:20,link:"/person/money/",title:"sidebar.person.money",icon:"./assets/menu/per_money.svg"}]}getPage(e,t){return"/person/money"===e?(0,mu.jsx)(cW,{mode:null===t||void 0===t?void 0:t.mode,user:null===t||void 0===t?void 0:t.user,filters:null===t||void 0===t?void 0:t.filters}):void 0}getTranslations(){return mW}}function pW(e,t,n){return{id:"".concat(e,"-").concat(t),month:e,year:t,first:!1,last:!1,date:new Date("".concat(t,"-").concat(lo(e+1),"-01")),firstDay:n.firstDay["".concat(e,"-").concat(t)],lastDay:n.lastDay["".concat(e,"-").concat(t)],commits:[]}}function dW(e,t,n){const a="".concat(e.month,"-").concat(e.year);if(t[a]){t[a].commits=n;const e=[],s=[];n.forEach((t=>{e.push(...Object.keys(t.tasks)),s.push(...Object.keys(t.tasksByAuthor))})),t[a].tasks=Array.from(new Set(e)).length;const i=new Set(s),o=so.getMiddleSalaryInMonth();t[a].money=i.size*o}}function hW(e,t){let n={month:0,year:0},a=[];const s=e[0],i=e[e.length-1],{months:o,monthsByDate:r}=function(e,t,n){const a=[],s={};for(let i=e.year;i<=t.year;i++){const o=i===e.year?e.month:0,r=i===t.year?t.month+1:12;for(let e=o;e<r;e++){const t=pW(e,i,n);a.push(t),s[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:s}}(s,i,t);return e.forEach((e=>{e.month!==n.month||e.year!==n.year?(dW(n,r,a),a=[e]):a.push(e),n=e})),dW(n,r,a),o}uW.id="person_money";const gW="year_chart",fW="year_chart_month",yW="year_chart_month_header",vW="year_chart_month_header_title",_W="year_chart_month_body",kW="year_chart_month_body_day",bW="year_chart_month_body_day_arrow",wW="year_chart_month_body_day_info";const xW=function(e){let{month:t}=e;const n=t.date.toLocaleString(Vi(),{month:"long"}),a=t.first||t.last||!t.month;return(0,mu.jsx)("div",{className:yW,children:(0,mu.jsxs)("span",{className:vW,style:{fontWeight:a?"bold":100},children:[n," ",a?t.year:""]})})};function TW(e,t){return e.reduce(((e,n)=>{var a;if(n.isStaff)return e;if("lastCommit"===t&&!n.isDismissed)return e;const s=null===n||void 0===n||null===(a=n[t])||void 0===a?void 0:a.timestamp;return e[s]||(e[s]=[]),e[s].push(n.author),e}),{})}function CW(e){let{month:n,dayInfo:a,maxCommits:s,dayNumber:i,events:o}=e;const[r,l]=(0,t.useState)(!1),m=function(e,t){const n=100*(e||0)/t;return(n-n%1)/100}(a.commits,s),c=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(i),m),u=function(e,t){var n,a;const s=null===(n=e.firstDay)||void 0===n?void 0:n[t],i=null===(a=e.lastDay)||void 0===a?void 0:a[t];return s&&i||i||s?"./assets/chart/commit.svg":""}(n,a.dayInMonth),p=function(e,t){var n,a;const s=null===e||void 0===e||null===(n=e.firstCommit)||void 0===n?void 0:n[t],i=null===e||void 0===e||null===(a=e.lastCommit)||void 0===a?void 0:a[t];return s&&i?"+-":i?"-":s?"+":""}(o,a.timestamp);return(0,mu.jsx)("div",{className:kW,title:"commits: ".concat(a.commits,", tasks: ").concat(a.tasksInDay||0),style:{backgroundColor:c,backgroundImage:u?"url(".concat(u,")"):""},onClick:()=>{l(!r)},children:r?(0,mu.jsxs)(mu.Fragment,{children:["\u25c9",(0,mu.jsx)("div",{className:bW}),(0,mu.jsxs)("div",{className:"".concat(wW," scroll_y"),children:[(0,mu.jsx)(sx,{title:Zi(a.timestamp)}),(0,mu.jsx)(uw,{timestamp:a.timestamp})]})]}):p})}CW.defaultProps={rows:[]};const SW=CW;function jW(e){let{month:t,maxCommits:n,showEvents:a}=e;const s=t.date.getDay()-1,i=s+[31,28,31,30,31,30,31,31,30,31,30,31][t.month],o=new Array(42).fill(0);let r=0;const l=a?function(e){const t=e.statisticsByCommits.author.totalInfo;return{firstCommit:TW(t,"firstCommit"),lastCommit:TW(t,"lastCommit")}}(PT):{},m=o.map(((e,a)=>{const o=t.commits[r];return(null===o||void 0===o?void 0:o.dayInMonth)===a-s+1?(r+=1,(0,mu.jsx)(SW,{month:t,maxCommits:n,dayNumber:a,dayInfo:o,events:l},a)):(0,mu.jsx)("div",{className:kW,style:{opacity:a<s||a>i?.3:1}},a)}));return(0,mu.jsx)("div",{className:_W,children:m})}jW.defaultProps={rows:[]};const DW=jW,AW="year_chart_month_info";function EW(e){let{max:t,month:n,showEvents:a,hideMoney:s}=e,i="";n.tasks&&(i="\u2611 ".concat(n.tasks||0)),!s&&n.money&&(i="\u2611 ".concat(n.tasks||0," \u2014 ").concat(ro(n.money||0,0)));const o=s?"tasks":"tasks and money";return(0,mu.jsxs)("div",{className:fW,children:[(0,mu.jsx)(xW,{month:n}),(0,mu.jsx)(DW,{month:n,maxCommits:t.commits,showEvents:a}),(0,mu.jsx)("div",{title:o,className:AW,children:i})]})}EW.defaultProps={hideMoney:!1};const IW=EW;function NW(e){let{maxCommits:n=100,showEvents:a=!0,wordDays:s=[],authors:i=[]}=e;const o=(0,t.useRef)(null),[r,l]=(0,t.useState)(16);if((0,t.useEffect)((()=>{var e;if(!o.current)return;const t=(null===(e=o.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)}),[]),!s||!s.length)return null;const m=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 s="".concat(e.lastCommit.month,"-").concat(e.lastCommit.year);n[s]||(n[s]={}),n[s][e.lastCommit.dayInMonth]=e})),{firstDay:t,lastDay:n}}(i),c=hW(s,m),u=1===(null===i||void 0===i?void 0:i.length),p={tasks:new Yo,money:new Yo};c.forEach((e=>{p.tasks.update(e.tasks),p.money.update(e.money)}));const d=c.map((e=>(0,mu.jsx)(IW,{max:{tasks:p.tasks.max,money:p.money.max,commits:n},month:e,showEvents:a,hideMoney:u},e.id))),h={"--day-size":"".concat(r.toFixed(1),"px")};return(0,mu.jsx)("div",{ref:o,style:h,className:gW,children:d})}NW.defaultProps={showEvents:!0};const PW=NW,RW=yi((e=>{let{user:t}=e;const n=t,a=PT.statisticsByCommits.timestamp.totalInfoByName[n.author],s=a.commitsByTimestampCounter.max;return(0,mu.jsx)(vT,{children:(0,mu.jsx)(PW,{showEvents:!1,maxCommits:s,authors:[n],wordDays:a.allCommitsByTimestamp})})}));class OW{getMenuItems(){return[{id:"month",group:20,order:60,link:"/person/month/",title:"sidebar.person.month",icon:"./assets/menu/team_month.svg"}]}getPage(e,t){return"/person/month"===e?(0,mu.jsx)(RW,{mode:null===t||void 0===t?void 0:t.mode,user:null===t||void 0===t?void 0:t.user,filters:null===t||void 0===t?void 0:t.filters}):void 0}}OW.id="person_month";const LW={ar:"\n\xa7 plugin.person_speed.sidebar: Speed\n\xa7 plugin.person_speed.task: One task on average is\n\xa7 plugin.person_speed.max: Maximum speed per day\n\xa7 plugin.person_speed.days.title: days\n\xa7 plugin.person_speed.days.description: The number of tasks found is divided by the number of days when there were commits.\n\xa7 plugin.person_speed.commits.title: commits\n\xa7 plugin.person_speed.commits.description: Weighted average trimmed by 10% of the rarest and largest values.\n\xa7 plugin.person_speed.line.title: lines of code\n\xa7 plugin.person_speed.line.description: The system does not recognize changes to the same lines in different commits within a single task. They are summed up.\n\xa7 plugin.person_speed.files.title: files\n\xa7 plugin.person_speed.files.description: Weighted average trimmed by 10% of the rarest and largest values.\n\xa7 plugin.person_speed.tasks.title: tasks\n\xa7 plugin.person_speed.tasks.description: A task may be unfinished. Only the fact of working on it within a specific day is recorded.\n\xa7 plugin.person_speed.maxCommits.title: commits\n\xa7 plugin.person_speed.maxCommits.description: Total number of commits made during one specific day. They can be made within one task or while working on different tasks.\n",de:"\n\xa7 plugin.person_speed.sidebar: Geschwindigkeit\n\xa7 plugin.person_speed.task: One task on average is\n\xa7 plugin.person_speed.max: Maximum speed per day\n\xa7 plugin.person_speed.days.title: days\n\xa7 plugin.person_speed.days.description: Refers to workdays, if commits are properly signed\n\xa7 plugin.person_speed.commits.title: commits\n\xa7 plugin.person_speed.commits.description: Top and bottom 10% of values are trimmed\n\xa7 plugin.person_speed.line.title: lines of code\n\xa7 plugin.person_speed.line.description: Top and bottom 10% of values are trimmed\n\xa7 plugin.person_speed.tasks.title: tasks\n\xa7 plugin.person_speed.tasks.description: A task may not be completed, but work should be done on it\n\xa7 plugin.person_speed.maxCommits.title: commits\n\xa7 plugin.person_speed.maxCommits.description: A task may not be completed, but work should be done on it\n",en:"\n\xa7 plugin.person_speed.sidebar: Speed\n\xa7 plugin.person_speed.task: One task on average is\n\xa7 plugin.person_speed.max: Maximum speed per day\n\xa7 plugin.person_speed.days.title: days\n\xa7 plugin.person_speed.days.description: The number of tasks found is divided by the number of days when there were commits.\n\xa7 plugin.person_speed.commits.title: commits\n\xa7 plugin.person_speed.commits.description: Weighted average trimmed by 10% of the rarest and largest values.\n\xa7 plugin.person_speed.line.title: lines of code\n\xa7 plugin.person_speed.line.description: The system does not recognize changes to the same lines in different commits within a single task. They are summed up.\n\xa7 plugin.person_speed.files.title: files\n\xa7 plugin.person_speed.files.description: Weighted average trimmed by 10% of the rarest and largest values.\n\xa7 plugin.person_speed.tasks.title: tasks\n\xa7 plugin.person_speed.tasks.description: A task may be unfinished. Only the fact of working on it within a specific day is recorded.\n\xa7 plugin.person_speed.maxCommits.title: commits\n\xa7 plugin.person_speed.maxCommits.description: Total number of commits made during one specific day. They can be made within one task or while working on different tasks.\n",es:"\n\xa7 plugin.person_speed.sidebar: Velocidad\n\xa7 plugin.person_speed.task: One task on average is\n\xa7 plugin.person_speed.max: Velocidad m\xe1xima por d\xeda\n\xa7 plugin.person_speed.days.title: d\xedas\n\xa7 plugin.person_speed.days.description: This means working days if the commits are signed correctly\n\xa7 plugin.person_speed.commits.title: commits\n\xa7 plugin.person_speed.commits.description: 10% of the maximum and minimum values were cut off\n\xa7 plugin.person_speed.line.title: lines of code\n\xa7 plugin.person_speed.line.description: 10% of the maximum and minimum values were cut off\n\xa7 plugin.person_speed.tasks.title: tasks\n\xa7 plugin.person_speed.tasks.description: The task may not be completed, but the work on it should be\n\xa7 plugin.person_speed.maxCommits.title: commits\n\xa7 plugin.person_speed.maxCommits.description: The task may not be completed, but the work on it should be\n",fr:"\n\xa7 plugin.person_speed.sidebar: Vitesse\n\xa7 plugin.person_speed.task: Une t\xe2che en moyenne est\n\xa7 plugin.person_speed.max: Vitesse maximale par jour\n\xa7 plugin.person_speed.days.title: jours\n\xa7 plugin.person_speed.days.description: Cela signifie des jours ouvrables si les commits sont correctement sign\xe9s\n\xa7 plugin.person_speed.commits.title: commits\n\xa7 plugin.person_speed.commits.description: 10% des valeurs maximales et minimales sont coup\xe9es\n\xa7 plugin.person_speed.line.title: lignes de code\n\xa7 plugin.person_speed.line.description: 10% des valeurs maximales et minimales sont coup\xe9es\n\xa7 plugin.person_speed.tasks.title: t\xe2ches\n\xa7 plugin.person_speed.tasks.description: La t\xe2che peut ne pas \xeatre termin\xe9e, mais le travail sur elle doit \xeatre\n\xa7 plugin.person_speed.maxCommits.title: commits\n\xa7 plugin.person_speed.maxCommits.description: La t\xe2che peut ne pas \xeatre termin\xe9e, mais le travail sur elle doit \xeatre\n",he:"\n\xa7 plugin.person_speed.sidebar: Speed\n\xa7 plugin.person_speed.task: One task on average is\n\xa7 plugin.person_speed.max: Maximum speed per day\n\xa7 plugin.person_speed.days.title: days\n\xa7 plugin.person_speed.days.description: The number of tasks found is divided by the number of days when there were commits.\n\xa7 plugin.person_speed.commits.title: commits\n\xa7 plugin.person_speed.commits.description: Weighted average trimmed by 10% of the rarest and largest values.\n\xa7 plugin.person_speed.line.title: lines of code\n\xa7 plugin.person_speed.line.description: The system does not recognize changes to the same lines in different commits within a single task. They are summed up.\n\xa7 plugin.person_speed.files.title: files\n\xa7 plugin.person_speed.files.description: Weighted average trimmed by 10% of the rarest and largest values.\n\xa7 plugin.person_speed.tasks.title: tasks\n\xa7 plugin.person_speed.tasks.description: A task may be unfinished. Only the fact of working on it within a specific day is recorded.\n\xa7 plugin.person_speed.maxCommits.title: commits\n\xa7 plugin.person_speed.maxCommits.description: Total number of commits made during one specific day. They can be made within one task or while working on different tasks.\n",hi:"\n\xa7 plugin.person_speed.sidebar: Speed\n\xa7 plugin.person_speed.task: One task on average is\n\xa7 plugin.person_speed.max: Maximum speed per day\n\xa7 plugin.person_speed.days.title: days\n\xa7 plugin.person_speed.days.description: The number of tasks found is divided by the number of days when there were commits.\n\xa7 plugin.person_speed.commits.title: commits\n\xa7 plugin.person_speed.commits.description: Weighted average trimmed by 10% of the rarest and largest values.\n\xa7 plugin.person_speed.line.title: lines of code\n\xa7 plugin.person_speed.line.description: The system does not recognize changes to the same lines in different commits within a single task. They are summed up.\n\xa7 plugin.person_speed.files.title: files\n\xa7 plugin.person_speed.files.description: Weighted average trimmed by 10% of the rarest and largest values.\n\xa7 plugin.person_speed.tasks.title: tasks\n\xa7 plugin.person_speed.tasks.description: A task may be unfinished. Only the fact of working on it within a specific day is recorded.\n\xa7 plugin.person_speed.maxCommits.title: commits\n\xa7 plugin.person_speed.maxCommits.description: Total number of commits made during one specific day. They can be made within one task or while working on different tasks.\n",ja:"\n\xa7 plugin.person_speed.sidebar: \u30b9\u30d4\u30fc\u30c9\n\xa7 plugin.person_speed.task: One task on average is\n\xa7 plugin.person_speed.max: Maximum speed per day\n\xa7 plugin.person_speed.days.title: days\n\xa7 plugin.person_speed.days.description: Refers to workdays, if commits are properly signed\n\xa7 plugin.person_speed.commits.title: commits\n\xa7 plugin.person_speed.commits.description: Top and bottom 10% of values are trimmed\n\xa7 plugin.person_speed.line.title: lines of code\n\xa7 plugin.person_speed.line.description: Top and bottom 10% of values are trimmed\n\xa7 plugin.person_speed.tasks.title: tasks\n\xa7 plugin.person_speed.tasks.description: A task may not be completed, but work should be done on it\n\xa7 plugin.person_speed.maxCommits.title: commits\n\xa7 plugin.person_speed.maxCommits.description: A task may not be completed, but work should be done on it\n",ko:"\n\xa7 plugin.person_speed.sidebar: \uc18d\ub3c4\n\xa7 plugin.person_speed.task: \ud3c9\uade0\uc801\uc73c\ub85c \ud55c \uac00\uc9c0 \uacfc\uc81c\ub294\n\xa7 plugin.person_speed.max: \ud558\ub8e8 \ucd5c\ub300 \uc18d\ub3c4\n\xa7 plugin.person_speed.days.title: \uc77c\n\xa7 plugin.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 plugin.person_speed.commits.title: \ucee4\ubc0b\n\xa7 plugin.person_speed.commits.description: \ucd5c\ub300 \ubc0f \ucd5c\uc18c\uac12\uc758 10%\n\xa7 plugin.person_speed.line.title: \ucf54\ub4dc \ub77c\uc778\uc774 \ucc28\ub2e8\ub418\uc5c8\uc2b5\ub2c8\ub2e4\n\xa7 plugin.person_speed.line.description: \ucd5c\ub300 \ubc0f \ucd5c\uc18c\uc758 10%\n\xa7 plugin.person_speed.tasks.title: \uc791\uc5c5 \uac12\uc774 \ucc28\ub2e8\ub418\uc5c8\uc2b5\ub2c8\ub2e4\n\xa7 plugin.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 plugin.person_speed.maxCommits.title: \ucee4\ubc0b\n\xa7 plugin.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",pt:"\n\xa7 plugin.person_speed.sidebar: Velocidade\n\xa7 plugin.person_speed.task: One task on average is\n\xa7 plugin.person_speed.max: Maximum speed per day\n\xa7 plugin.person_speed.days.title: days\n\xa7 plugin.person_speed.days.description: Refers to workdays, if commits are properly signed\n\xa7 plugin.person_speed.commits.title: commits\n\xa7 plugin.person_speed.commits.description: Top and bottom 10% of values are trimmed\n\xa7 plugin.person_speed.line.title: lines of code\n\xa7 plugin.person_speed.line.description: Top and bottom 10% of values are trimmed\n\xa7 plugin.person_speed.tasks.title: tasks\n\xa7 plugin.person_speed.tasks.description: A task may not be completed, but work should be done on it\n\xa7 plugin.person_speed.maxCommits.title: commits\n\xa7 plugin.person_speed.maxCommits.description: A task may not be completed, but work should be done on it\n",ru:"\n\xa7 plugin.person_speed.sidebar: \u0421\u043a\u043e\u0440\u043e\u0441\u0442\u044c\n\xa7 plugin.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 plugin.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 plugin.person_speed.days.title: \u0434\u043d\u0435\u0439\n\xa7 plugin.person_speed.days.description: \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043d\u0430\u0439\u0434\u0435\u043d\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447 \u0434\u0435\u043b\u0438\u0442\u0441\u044f \u043d\u0430 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0434\u043d\u0435\u0439, \u043a\u043e\u0433\u0434\u0430 \u0431\u044b\u043b\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u044b.\n\xa7 plugin.person_speed.commits.title: \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.person_speed.commits.description: \u0421\u0440\u0435\u0434\u043d\u0435\u0432\u0437\u0432\u0435\u0448\u0435\u043d\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441 \u043e\u0442\u0441\u0435\u0447\u0435\u043d\u0438\u0435\u043c 10% \u0441\u0430\u043c\u044b\u0445 \u0440\u0435\u0434\u043a\u0438\u0445 \u0438 \u0431\u043e\u043b\u044c\u0448\u0438\u0445.\n\xa7 plugin.person_speed.line.title: \u0441\u0442\u0440\u043e\u043a \u043a\u043e\u0434\u0430\n\xa7 plugin.person_speed.line.description: \u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u043d\u0435 \u0440\u0430\u0437\u043f\u043e\u0437\u043d\u0430\u0451\u0442 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043e\u0434\u043d\u0438\u0445 \u0438 \u0442\u0435\u0445 \u0436\u0435 \u0441\u0442\u0440\u043e\u043a \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u043a\u043e\u043c\u043c\u0438\u0442\u0430\u0445 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u043e\u0434\u043d\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438. \u041e\u043d\u0438 \u0441\u0443\u043c\u043c\u0438\u0440\u0443\u044e\u0442\u0441\u044f. \n\xa7 plugin.person_speed.files.title: \u0444\u0430\u0439\u043b\u043e\u0432\n\xa7 plugin.person_speed.files.description: \u0421\u0440\u0435\u0434\u043d\u0435\u0432\u0437\u0432\u0435\u0448\u0435\u043d\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441 \u043e\u0442\u0441\u0435\u0447\u0435\u043d\u0438\u0435\u043c 10% \u0441\u0430\u043c\u044b\u0445 \u0440\u0435\u0434\u043a\u0438\u0445 \u0438 \u0431\u043e\u043b\u044c\u0448\u0438\u0445.\n\xa7 plugin.person_speed.tasks.title: \u0437\u0430\u0434\u0430\u0447\n\xa7 plugin.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. \u0424\u0438\u043a\u0441\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u0430\u043c \u0444\u0430\u043a\u0442 \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0434 \u043d\u0435\u0439 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u0434\u043d\u044f.\n\xa7 plugin.person_speed.maxCommits.title: \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.person_speed.maxCommits.description: \u0421\u0443\u043c\u043c\u0430\u0440\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432 \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u044b\u0445 \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u0434\u043d\u044f. \u041e\u043d\u0438 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0441\u0434\u0435\u043b\u0430\u043d\u044b \u043a\u0430\u043a \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u043e\u0434\u043d\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438, \u0442\u0430\u043a \u0438 \u0432 \u0445\u043e\u0434\u0435 \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0434 \u0440\u0430\u0437\u043d\u044b\u043c\u0438 \u0437\u0430\u0434\u0430\u0447\u0430\u043c\u0438.\n",zh:"\n\xa7 plugin.person_speed.sidebar: \u901f\u5ea6\n\xa7 plugin.person_speed.task: \u5e73\u5747\u4e00\u9879\u4efb\u52a1\u662f\n\xa7 plugin.person_speed.max: \u6bcf\u65e5\u6700\u9ad8\u901f\u5ea6\n\xa7 plugin.person_speed.days.title: \u5929\u6570\n\xa7 plugin.person_speed.days.description: \u8fd9\u610f\u5473\u7740\u5982\u679c Commits \u6b63\u786e\u7b7e\u540d\n\xa7 plugin.person_speed.commits.title: Commits\n\xa7 plugin.person_speed.commits.description: \u6700\u5927\u503c\u548c\u6700\u5c0f\u503c\u768410\uff05\u5df2\u88ab\u5207\u65ad\n\xa7 plugin.person_speed.line.title: \u4ee3\u7801\u884c\n\xa7 plugin.person_speed.line.description: \u6700\u5927\u503c\u548c\u6700\u5c0f\u503c\u768410\uff05\u5df2\u88ab\u5207\u65ad\n\xa7 plugin.person_speed.tasks.title: \u4efb\u52a1\n\xa7 plugin.person_speed.tasks.description: \u4efb\u52a1\u53ef\u80fd\u6ca1\u6709\u5b8c\u6210\uff0c\u4f46\u5b83\u7684\u5de5\u4f5c\u5e94\u8be5\u662f\n\xa7 plugin.person_speed.maxCommits.title: Commits\n\xa7 plugin.person_speed.maxCommits.description: \u4efb\u52a1\u53ef\u80fd\u6ca1\u6709\u5b8c\u6210\uff0c\u4f46\u5b83\u7684\u5de5\u4f5c\u5e94\u8be5\u662f\n"},MW=yi((e=>{let{user:t}=e;const n=PT.statisticsByCommits.timestamp.totalInfoByName[t.author],a=PT.statisticsByCommits.scoring.totalInfoByName[t.author],s=PT.statisticsByCommits.scoring.total,i=t.totalTasks;return t.isStaff?(0,mu.jsx)(Hw,{mode:"staff"}):i?(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(sx,{title:"plugin.person_speed.task"}),(0,mu.jsx)(Pu,{value:mo(1/t.totalTaskInDay),icon:"./assets/cards/month.svg",title:"plugin.person_speed.days.title",description:"plugin.person_speed.days.description",scoring:{value:a.totalTaskInDay,total:s.totalTaskInDay}}),(0,mu.jsx)(Pu,{value:mo(t.totalTaskInCommits),icon:"./assets/cards/commits.svg",title:"plugin.person_speed.commits.title",description:"plugin.person_speed.commits.description",scoring:{value:a.totalTaskInCommits,total:s.totalTaskInCommits}}),(0,mu.jsx)(Pu,{value:mo(t.totalTaskInChanges),icon:"./assets/cards/lines.svg",title:"plugin.person_speed.line.title",description:"plugin.person_speed.line.description",scoring:{value:a.totalTaskInChanges,total:s.totalTaskInChanges}}),(0,mu.jsx)(Pu,{value:mo(t.totalTaskInFiles),icon:"./assets/cards/files.svg",title:"plugin.person_speed.files.title",description:"plugin.person_speed.files.description",scoring:{value:a.totalTaskInFiles,total:s.totalTaskInFiles}}),(0,mu.jsx)(Bu,{})]}),(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(sx,{title:"plugin.person_speed.max"}),(0,mu.jsx)(Pu,{size:"l",value:n.tasksByTimestampCounter.max,icon:"./assets/cards/tasks.svg",title:"plugin.person_speed.tasks.title",description:"plugin.person_speed.tasks.description",scoring:{value:a.speedMaxTasks,total:s.speedMaxTasks}}),(0,mu.jsx)(Pu,{size:"l",value:n.commitsByTimestampCounter.max,icon:"./assets/cards/commits.svg",title:"plugin.person_speed.maxCommits.title",description:"plugin.person_speed.maxCommits.description",scoring:{value:a.speedMaxCommits,total:s.speedMaxCommits}})]})]}):(0,mu.jsx)(Hw,{})}));class FW{getMenuItems(){return[{id:"speed",group:10,order:30,link:"/person/speed/",title:"plugin.person_speed.sidebar",icon:"./assets/menu/per_speed.svg"}]}getPage(e,t){return"/person/speed"===e?(0,mu.jsx)(MW,{mode:null===t||void 0===t?void 0:t.mode,user:null===t||void 0===t?void 0:t.user,filters:null===t||void 0===t?void 0:t.filters}):void 0}getTranslations(){return LW}}FW.id="person_speed";const WW={ar:"\n\xa7 plugin.person_total.sidebar: Common info\n\xa7 plugin.person_total.title: Main characteristics\n\xa7 plugin.person_total.small.status.title: estimated status\n\xa7 plugin.person_total.small.status.work: works\n\xa7 plugin.person_total.small.status.dismissed: left\n\xa7 plugin.person_total.small.status.staff: staff\n\xa7 plugin.person_total.small.totalDays: contract duration\n\xa7 plugin.person_total.small.country: latest location\n\xa7 plugin.person_total.small.email: latest email\n\xa7 plugin.person_total.small.firstDay: first working day\n\xa7 plugin.person_total.small.lastDay: last working day\n\xa7 plugin.person_total.small.middleMessageLength: average commit message length\n\xa7 plugin.person_total.daysWorked.title: days worked\n\xa7 plugin.person_total.daysWorked.description: Only days when commits were made are counted\n\xa7 plugin.person_total.daysLosses.title: days without commits\n\xa7 plugin.person_total.daysLosses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 plugin.person_total.commits.title: commits\n\xa7 plugin.person_total.commits.description: Deleted branches are not counted\n\xa7 plugin.person_total.tasks.title: tasks\n\xa7 plugin.person_total.tasks.description: If commits have correct commit messages\n\xa7 plugin.person_total.email.title: List of the staff member email addresses\n\xa7 plugin.person_total.email.type: Type\n\xa7 plugin.person_total.email.company: Company\n\xa7 plugin.person_total.email.email: Email\n\xa7 plugin.person_total.company.title: List of companies on whose behalf the staff member made commits\n\xa7 plugin.person_total.from: from \n\xa7 plugin.person_total.to: to\n",de:"\n\xa7 plugin.person_total.sidebar: Common info\n\xa7 plugin.person_total.title: Main characteristics\n\xa7 plugin.person_total.small.status.title: estimated status\n\xa7 plugin.person_total.small.status.work: works\n\xa7 plugin.person_total.small.status.dismissed: left\n\xa7 plugin.person_total.small.status.staff: staff\n\xa7 plugin.person_total.small.totalDays: contract duration\n\xa7 plugin.person_total.small.country: latest location\n\xa7 plugin.person_total.small.email: latest email\n\xa7 plugin.person_total.small.firstDay: first working day\n\xa7 plugin.person_total.small.lastDay: last working day\n\xa7 plugin.person_total.small.middleMessageLength: average commit message length\n\xa7 plugin.person_total.daysWorked.title: days worked\n\xa7 plugin.person_total.daysWorked.description: Only days when commits were made are counted\n\xa7 plugin.person_total.daysLosses.title: days without commits\n\xa7 plugin.person_total.daysLosses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 plugin.person_total.commits.title: commits\n\xa7 plugin.person_total.commits.description: Deleted branches are not counted\n\xa7 plugin.person_total.tasks.title: tasks\n\xa7 plugin.person_total.tasks.description: If commits have correct commit messages\n\xa7 plugin.person_total.email.title: List of the staff member email addresses\n\xa7 plugin.person_total.email.type: Type\n\xa7 plugin.person_total.email.company: Company\n\xa7 plugin.person_total.email.email: Email\n\xa7 plugin.person_total.company.title: List of companies on whose behalf the staff member made commits\n\xa7 plugin.person_total.from: from \n\xa7 plugin.person_total.to: to\n",en:"\n\xa7 plugin.person_total.sidebar: Common info\n\xa7 plugin.person_total.title: Main characteristics\n\xa7 plugin.person_total.small.status.title: estimated status\n\xa7 plugin.person_total.small.status.work: works\n\xa7 plugin.person_total.small.status.dismissed: left\n\xa7 plugin.person_total.small.status.staff: staff\n\xa7 plugin.person_total.small.totalDays: contract duration\n\xa7 plugin.person_total.small.country: latest location\n\xa7 plugin.person_total.small.email: latest email\n\xa7 plugin.person_total.small.firstDay: first working day\n\xa7 plugin.person_total.small.lastDay: last working day\n\xa7 plugin.person_total.small.middleMessageLength: average commit message length\n\xa7 plugin.person_total.daysWorked.title: days worked\n\xa7 plugin.person_total.daysWorked.description: Only days when commits were made are counted\n\xa7 plugin.person_total.daysLosses.title: days without commits\n\xa7 plugin.person_total.daysLosses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 plugin.person_total.commits.title: commits\n\xa7 plugin.person_total.commits.description: Deleted branches are not counted\n\xa7 plugin.person_total.tasks.title: tasks\n\xa7 plugin.person_total.tasks.description: If commits have correct commit messages\n\xa7 plugin.person_total.email.title: List of the staff member email addresses\n\xa7 plugin.person_total.email.type: Type\n\xa7 plugin.person_total.email.company: Company\n\xa7 plugin.person_total.email.email: Email\n\xa7 plugin.person_total.company.title: List of companies on whose behalf the staff member made commits\n\xa7 plugin.person_total.from: from \n\xa7 plugin.person_total.to: to\n",es:"\n\xa7 plugin.person_total.sidebar: Common info\n\xa7 plugin.person_total.title: Main characteristics\n\xa7 plugin.person_total.small.status.title: estimated status\n\xa7 plugin.person_total.small.status.work: works\n\xa7 plugin.person_total.small.status.dismissed: left\n\xa7 plugin.person_total.small.status.staff: staff\n\xa7 plugin.person_total.small.totalDays: contract duration\n\xa7 plugin.person_total.small.country: latest location\n\xa7 plugin.person_total.small.email: latest email\n\xa7 plugin.person_total.small.firstDay: first working day\n\xa7 plugin.person_total.small.lastDay: last working day\n\xa7 plugin.person_total.small.middleMessageLength: average commit message length\n\xa7 plugin.person_total.daysWorked.title: days worked\n\xa7 plugin.person_total.daysWorked.description: Only days when commits were made are counted\n\xa7 plugin.person_total.daysLosses.title: days without commits\n\xa7 plugin.person_total.daysLosses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 plugin.person_total.commits.title: commits\n\xa7 plugin.person_total.commits.description: Deleted branches are not counted\n\xa7 plugin.person_total.tasks.title: tasks\n\xa7 plugin.person_total.tasks.description: If commits have correct commit messages\n\xa7 plugin.person_total.email.title: List of the staff member email addresses\n\xa7 plugin.person_total.email.type: Type\n\xa7 plugin.person_total.email.company: Company\n\xa7 plugin.person_total.email.email: Email\n\xa7 plugin.person_total.company.title: List of companies on whose behalf the staff member made commits\n\xa7 plugin.person_total.from: from \n\xa7 plugin.person_total.to: to\n",fr:"\n\xa7 plugin.person_total.sidebar: Common info\n\xa7 plugin.person_total.title: Main characteristics\n\xa7 plugin.person_total.small.status.title: estimated status\n\xa7 plugin.person_total.small.status.work: works\n\xa7 plugin.person_total.small.status.dismissed: left\n\xa7 plugin.person_total.small.status.staff: staff\n\xa7 plugin.person_total.small.totalDays: contract duration\n\xa7 plugin.person_total.small.country: latest location\n\xa7 plugin.person_total.small.email: latest email\n\xa7 plugin.person_total.small.firstDay: first working day\n\xa7 plugin.person_total.small.lastDay: last working day\n\xa7 plugin.person_total.small.middleMessageLength: average commit message length\n\xa7 plugin.person_total.daysWorked.title: days worked\n\xa7 plugin.person_total.daysWorked.description: Only days when commits were made are counted\n\xa7 plugin.person_total.daysLosses.title: days without commits\n\xa7 plugin.person_total.daysLosses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 plugin.person_total.commits.title: commits\n\xa7 plugin.person_total.commits.description: Deleted branches are not counted\n\xa7 plugin.person_total.tasks.title: tasks\n\xa7 plugin.person_total.tasks.description: If commits have correct commit messages\n\xa7 plugin.person_total.email.title: List of the staff member email addresses\n\xa7 plugin.person_total.email.type: Type\n\xa7 plugin.person_total.email.company: Company\n\xa7 plugin.person_total.email.email: Email\n\xa7 plugin.person_total.company.title: List of companies on whose behalf the staff member made commits\n\xa7 plugin.person_total.from: from \n\xa7 plugin.person_total.to: to\n",he:"\n\xa7 plugin.person_total.sidebar: Common info\n\xa7 plugin.person_total.title: Main characteristics\n\xa7 plugin.person_total.small.status.title: estimated status\n\xa7 plugin.person_total.small.status.work: works\n\xa7 plugin.person_total.small.status.dismissed: left\n\xa7 plugin.person_total.small.status.staff: staff\n\xa7 plugin.person_total.small.totalDays: contract duration\n\xa7 plugin.person_total.small.country: latest location\n\xa7 plugin.person_total.small.email: latest email\n\xa7 plugin.person_total.small.firstDay: first working day\n\xa7 plugin.person_total.small.lastDay: last working day\n\xa7 plugin.person_total.small.middleMessageLength: average commit message length\n\xa7 plugin.person_total.daysWorked.title: days worked\n\xa7 plugin.person_total.daysWorked.description: Only days when commits were made are counted\n\xa7 plugin.person_total.daysLosses.title: days without commits\n\xa7 plugin.person_total.daysLosses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 plugin.person_total.commits.title: commits\n\xa7 plugin.person_total.commits.description: Deleted branches are not counted\n\xa7 plugin.person_total.tasks.title: tasks\n\xa7 plugin.person_total.tasks.description: If commits have correct commit messages\n\xa7 plugin.person_total.email.title: List of the staff member email addresses\n\xa7 plugin.person_total.email.type: Type\n\xa7 plugin.person_total.email.company: Company\n\xa7 plugin.person_total.email.email: Email\n\xa7 plugin.person_total.company.title: List of companies on whose behalf the staff member made commits\n\xa7 plugin.person_total.from: from \n\xa7 plugin.person_total.to: to\n",hi:"\n\xa7 plugin.person_total.sidebar: Common info\n\xa7 plugin.person_total.title: Main characteristics\n\xa7 plugin.person_total.small.status.title: estimated status\n\xa7 plugin.person_total.small.status.work: works\n\xa7 plugin.person_total.small.status.dismissed: left\n\xa7 plugin.person_total.small.status.staff: staff\n\xa7 plugin.person_total.small.totalDays: contract duration\n\xa7 plugin.person_total.small.country: latest location\n\xa7 plugin.person_total.small.email: latest email\n\xa7 plugin.person_total.small.firstDay: first working day\n\xa7 plugin.person_total.small.lastDay: last working day\n\xa7 plugin.person_total.small.middleMessageLength: average commit message length\n\xa7 plugin.person_total.daysWorked.title: days worked\n\xa7 plugin.person_total.daysWorked.description: Only days when commits were made are counted\n\xa7 plugin.person_total.daysLosses.title: days without commits\n\xa7 plugin.person_total.daysLosses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 plugin.person_total.commits.title: commits\n\xa7 plugin.person_total.commits.description: Deleted branches are not counted\n\xa7 plugin.person_total.tasks.title: tasks\n\xa7 plugin.person_total.tasks.description: If commits have correct commit messages\n\xa7 plugin.person_total.email.title: List of the staff member email addresses\n\xa7 plugin.person_total.email.type: Type\n\xa7 plugin.person_total.email.company: Company\n\xa7 plugin.person_total.email.email: Email\n\xa7 plugin.person_total.company.title: List of companies on whose behalf the staff member made commits\n\xa7 plugin.person_total.from: from \n\xa7 plugin.person_total.to: to\n",ja:"\n\xa7 plugin.person_total.sidebar: Common info\n\xa7 plugin.person_total.title: Main characteristics\n\xa7 plugin.person_total.small.status.title: estimated status\n\xa7 plugin.person_total.small.status.work: works\n\xa7 plugin.person_total.small.status.dismissed: left\n\xa7 plugin.person_total.small.status.staff: staff\n\xa7 plugin.person_total.small.totalDays: contract duration\n\xa7 plugin.person_total.small.country: latest location\n\xa7 plugin.person_total.small.email: latest email\n\xa7 plugin.person_total.small.firstDay: first working day\n\xa7 plugin.person_total.small.lastDay: last working day\n\xa7 plugin.person_total.small.middleMessageLength: average commit message length\n\xa7 plugin.person_total.daysWorked.title: days worked\n\xa7 plugin.person_total.daysWorked.description: Only days when commits were made are counted\n\xa7 plugin.person_total.daysLosses.title: days without commits\n\xa7 plugin.person_total.daysLosses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 plugin.person_total.commits.title: commits\n\xa7 plugin.person_total.commits.description: Deleted branches are not counted\n\xa7 plugin.person_total.tasks.title: tasks\n\xa7 plugin.person_total.tasks.description: If commits have correct commit messages\n\xa7 plugin.person_total.email.title: List of the staff member email addresses\n\xa7 plugin.person_total.email.type: Type\n\xa7 plugin.person_total.email.company: Company\n\xa7 plugin.person_total.email.email: Email\n\xa7 plugin.person_total.company.title: List of companies on whose behalf the staff member made commits\n\xa7 plugin.person_total.from: from \n\xa7 plugin.person_total.to: to\n",ko:"\n\xa7 plugin.person_total.sidebar: Common info\n\xa7 plugin.person_total.title: Main characteristics\n\xa7 plugin.person_total.small.status.title: estimated status\n\xa7 plugin.person_total.small.status.work: works\n\xa7 plugin.person_total.small.status.dismissed: left\n\xa7 plugin.person_total.small.status.staff: staff\n\xa7 plugin.person_total.small.totalDays: contract duration\n\xa7 plugin.person_total.small.country: latest location\n\xa7 plugin.person_total.small.email: latest email\n\xa7 plugin.person_total.small.firstDay: first working day\n\xa7 plugin.person_total.small.lastDay: last working day\n\xa7 plugin.person_total.small.middleMessageLength: average commit message length\n\xa7 plugin.person_total.daysWorked.title: days worked\n\xa7 plugin.person_total.daysWorked.description: Only days when commits were made are counted\n\xa7 plugin.person_total.daysLosses.title: days without commits\n\xa7 plugin.person_total.daysLosses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 plugin.person_total.commits.title: commits\n\xa7 plugin.person_total.commits.description: Deleted branches are not counted\n\xa7 plugin.person_total.tasks.title: tasks\n\xa7 plugin.person_total.tasks.description: If commits have correct commit messages\n\xa7 plugin.person_total.email.title: List of the staff member email addresses\n\xa7 plugin.person_total.email.type: Type\n\xa7 plugin.person_total.email.company: Company\n\xa7 plugin.person_total.email.email: Email\n\xa7 plugin.person_total.company.title: List of companies on whose behalf the staff member made commits\n\xa7 plugin.person_total.from: from \n\xa7 plugin.person_total.to: to\n",pt:"\n\xa7 plugin.person_total.sidebar: Common info\n\xa7 plugin.person_total.title: Main characteristics\n\xa7 plugin.person_total.small.status.title: estimated status\n\xa7 plugin.person_total.small.status.work: works\n\xa7 plugin.person_total.small.status.dismissed: left\n\xa7 plugin.person_total.small.status.staff: staff\n\xa7 plugin.person_total.small.totalDays: contract duration\n\xa7 plugin.person_total.small.country: latest location\n\xa7 plugin.person_total.small.email: latest email\n\xa7 plugin.person_total.small.firstDay: first working day\n\xa7 plugin.person_total.small.lastDay: last working day\n\xa7 plugin.person_total.small.middleMessageLength: average commit message length\n\xa7 plugin.person_total.daysWorked.title: days worked\n\xa7 plugin.person_total.daysWorked.description: Only days when commits were made are counted\n\xa7 plugin.person_total.daysLosses.title: days without commits\n\xa7 plugin.person_total.daysLosses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 plugin.person_total.commits.title: commits\n\xa7 plugin.person_total.commits.description: Deleted branches are not counted\n\xa7 plugin.person_total.tasks.title: tasks\n\xa7 plugin.person_total.tasks.description: If commits have correct commit messages\n\xa7 plugin.person_total.email.title: List of the staff member email addresses\n\xa7 plugin.person_total.email.type: Type\n\xa7 plugin.person_total.email.company: Company\n\xa7 plugin.person_total.email.email: Email\n\xa7 plugin.person_total.company.title: List of companies on whose behalf the staff member made commits\n\xa7 plugin.person_total.from: from \n\xa7 plugin.person_total.to: to\n",ru:"\n\xa7 plugin.person_total.sidebar: \u041e\u0431\u0449\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\n\xa7 plugin.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 plugin.person_total.small.status.title: \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u043c\u044b\u0439 \u0441\u0442\u0430\u0442\u0443\u0441\n\xa7 plugin.person_total.small.status.work: \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442\n\xa7 plugin.person_total.small.status.dismissed: \u0443\u0432\u043e\u043b\u0435\u043d\n\xa7 plugin.person_total.small.status.staff: \u043f\u043e\u043c\u043e\u0449\u043d\u0438\u043a\n\xa7 plugin.person_total.small.totalDays: \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u0430\n\xa7 plugin.person_total.small.country: \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\n\xa7 plugin.person_total.small.email: \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 email\n\xa7 plugin.person_total.small.firstDay: \u043f\u0435\u0440\u0432\u044b\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0434\u0435\u043d\u044c\n\xa7 plugin.person_total.small.lastDay: \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0434\u0435\u043d\u044c\n\xa7 plugin.person_total.small.middleMessageLength: \u0441\u0440\u0435\u0434\u043d\u044f\u044f \u0434\u043b\u0438\u043d\u0430 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u043a\u043e\u043c\u043c\u0438\u0442\u0430\n\xa7 plugin.person_total.daysWorked.title: \u0434\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b\n\xa7 plugin.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 plugin.person_total.daysLosses.title: \u0434\u043d\u0435\u0439 \u0431\u0435\u0437 \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.person_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 plugin.person_total.commits.title: \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.person_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 plugin.person_total.tasks.title: \u0437\u0430\u0434\u0430\u0447\n\xa7 plugin.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 plugin.person_total.email.title: \u0421\u043f\u0438\u0441\u043e\u043a \u043f\u043e\u0447\u0442\u043e\u0432\u044b\u0445 \u0430\u0434\u0440\u0435\u0441\u043e\u0432 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\n\xa7 plugin.person_total.email.type: \u0422\u0438\u043f\n\xa7 plugin.person_total.email.company: \u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f\n\xa7 plugin.person_total.email.email: \u041f\u043e\u0447\u0442\u0430\n\xa7 plugin.person_total.company.title: \u0421\u043f\u0438\u0441\u043e\u043a \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439, \u043e\u0442 \u043b\u0438\u0446\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a \u0434\u0435\u043b\u0430\u043b \u043a\u043e\u043c\u043c\u0438\u0442\u044b\n\xa7 plugin.person_total.from: \u0441 \n\xa7 plugin.person_total.to: \u043f\u043e\n",zh:"\n\xa7 plugin.person_total.sidebar: Common info\n\xa7 plugin.person_total.title: Main characteristics\n\xa7 plugin.person_total.small.status.title: estimated status\n\xa7 plugin.person_total.small.status.work: works\n\xa7 plugin.person_total.small.status.dismissed: left\n\xa7 plugin.person_total.small.status.staff: staff\n\xa7 plugin.person_total.small.totalDays: contract duration\n\xa7 plugin.person_total.small.country: latest location\n\xa7 plugin.person_total.small.email: latest email\n\xa7 plugin.person_total.small.firstDay: first working day\n\xa7 plugin.person_total.small.lastDay: last working day\n\xa7 plugin.person_total.small.middleMessageLength: average commit message length\n\xa7 plugin.person_total.daysWorked.title: days worked\n\xa7 plugin.person_total.daysWorked.description: Only days when commits were made are counted\n\xa7 plugin.person_total.daysLosses.title: days without commits\n\xa7 plugin.person_total.daysLosses.description: All days minus: holidays, weekends, vacation, days with commits\n\xa7 plugin.person_total.commits.title: commits\n\xa7 plugin.person_total.commits.description: Deleted branches are not counted\n\xa7 plugin.person_total.tasks.title: tasks\n\xa7 plugin.person_total.tasks.description: If commits have correct commit messages\n\xa7 plugin.person_total.email.title: List of the staff member email addresses\n\xa7 plugin.person_total.email.type: Type\n\xa7 plugin.person_total.email.company: Company\n\xa7 plugin.person_total.email.email: Email\n\xa7 plugin.person_total.company.title: List of companies on whose behalf the staff member made commits\n\xa7 plugin.person_total.from: from \n\xa7 plugin.person_total.to: to\n"},qW=yi((e=>{let{user:t}=e;const n=t,a=PT.statisticsByCommits.scoring.totalInfoByName[t.author],s=PT.statisticsByCommits.scoring.total;return(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(Pu,{value:n.totalDaysWithCommits,icon:"./assets/cards/work_days.png",title:"page.person.total.daysWorked.title",description:"page.person.total.daysWorked.description",scoring:{value:a.totalDaysWithCommits,total:s.totalDaysWithCommits}}),(0,mu.jsx)(Pu,{value:n.totalDaysWithoutCommits,icon:"./assets/cards/lazy.svg",title:"plugin.person_total.daysLosses.title",description:"plugin.person_total.daysLosses.description",scoring:{value:a.totalDaysWithoutCommits,total:s.totalDaysWithoutCommits}})]}),(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(Pu,{value:n.commits,icon:"./assets/cards/commits.svg",title:"plugin.person_total.commits.title",description:"plugin.person_total.commits.description",scoring:{value:a.commits,total:s.commits}}),(0,mu.jsx)(Pu,{value:n.totalTasks,icon:"./assets/cards/tasks.svg",title:"page.person.total.tasks.title",description:"page.person.total.tasks.description",scoring:{value:a.totalTasks,total:s.totalTasks}})]})]})}));function zW(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;return t?(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.person_total.email.type",properties:"type",formatter:e=>({[_i.UNKNOWN]:"",[_i.ACCOUNT]:"TECH ACCOUNT",[_i.GITHUB]:"GITHUB",[_i.MAIL]:"PERSONAL",[_i.COMPANY]:"CORPORATE",[_i.NETWORK]:"NETWORK"}[e]),template:_p.TAGS,width:150}),(0,mu.jsx)(zp,{title:"plugin.person_total.email.company",properties:"company",template:_p.TAGS,width:150}),(0,mu.jsx)(zp,{title:"plugin.person_total.email.email",properties:"email",template:(e,t)=>t.type===_i.GITHUB?(0,mu.jsx)(Aw,{email:e}):e}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.person_total.from",properties:"from",width:150,formatter:Zi}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.person_total.to",properties:"to",width:150,formatter:Zi})]}):null}zW.defaultProps={response:void 0};const BW=zW;function UW(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;return t?(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.person_total.email.company",properties:"title"}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.person_total.from",properties:"from",width:150,formatter:Zi}),(0,mu.jsx)(zp,{isSortable:!0,template:_p.STRING,title:"plugin.person_total.to",properties:"to",width:150,formatter:Zi})]}):null}UW.defaultProps={response:void 0};const HW=UW;const GW=function(e){let{user:t}=e;const{t:n}=_u(),a=PT.statisticsByCommits.scoring.totalInfoByName[t.author],s=PT.statisticsByCommits.scoring.total,[i,o,r]=["plugin.person_total.small.status.work","plugin.person_total.small.status.dismissed","plugin.person_total.small.status.staff"];let l=i;return t.isStaff&&(l=r),t.isDismissed&&(l=o),(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(qu,{value:n(l),icon:"./assets/cards/commits.svg",title:"plugin.person_total.small.status.title"}),(0,mu.jsx)(qu,{value:ao(t.totalDays),icon:"./assets/cards/work_days2.svg",title:"plugin.person_total.small.totalDays",scoring:{value:a.totalDays,total:s.totalDays}})]}),(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(qu,{value:t.lastCountry,icon:"./assets/cards/location.svg",title:"plugin.person_total.small.country"}),(0,mu.jsx)(qu,{value:t.emails[0],icon:"./assets/cards/mail.svg",title:"plugin.person_total.small.email"})]})]})};const VW=function(e){let{user:t,mode:n}=e;const a=PT.statisticsByCommits.email.totalInfo.filter((e=>e.author===t.author));return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(sx,{title:"plugin.person_total.title"}),(0,mu.jsx)(GW,{user:t}),(0,mu.jsx)(qW,{user:t}),(0,mu.jsx)(dT,{height:"xl"}),(0,mu.jsxs)(Pw,{value:a,children:[(0,mu.jsx)(sx,{title:"plugin.person_total.email.title"}),(0,mu.jsxs)(tS,{content:a,mode:n,watch:"".concat(n).concat(t.author).concat(PT.hash),children:[(0,mu.jsx)(BW,{mode:n,rowsForExcel:a}),(0,mu.jsx)(KC,{})]})]}),(0,mu.jsxs)(Pw,{value:t.companies,children:[(0,mu.jsx)(sx,{title:"plugin.person_total.company.title"}),(0,mu.jsxs)(tS,{content:t.companies,mode:n,watch:"".concat(n).concat(t.author).concat(PT.hash),children:[(0,mu.jsx)(HW,{mode:n,rowsForExcel:t.companies}),(0,mu.jsx)(KC,{})]})]})]})};class KW{getMenuItems(){return[{id:"total",group:10,order:10,link:"/person/total/",title:"plugin.person_total.sidebar",icon:"./assets/menu/team_common.svg"}]}getPage(e,t){return"/person/total"===e?(0,mu.jsx)(VW,{mode:null===t||void 0===t?void 0:t.mode,user:null===t||void 0===t?void 0:t.user,filters:null===t||void 0===t?void 0:t.filters}):void 0}getTranslations(){return WW}}function $W(e){let{response:t,updateSort:n,name:a,mode:s}=e;if(!t)return null;const[i,o]=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"length";const a=e.content,s=new Array(t.length).fill(0),i=t.length-1;for(let l=a.length-1;l>=0;l--)for(let e=i;e>=0;e--){var o,r;const i=null===(o=a[l])||void 0===o||null===(r=o[t[e]])||void 0===r?void 0:r[n];s[e]=i>s[e]?i:s[e]}return s}(t,["authors","taskInDay"],a);return(0,mu.jsxs)(ow,{rows:t.content,sort:t.sort,updateSort:n,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{isFixed:!0,template:_p.STRING,title:"page.person.week.date",properties:"timestamp",formatter:no,width:200}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"authors",formatter:e=>e[a]||0}),(0,mu.jsx)(zp,{title:"page.person.week.tasks",template:e=>(0,mu.jsx)(LE,{order:PT.statisticsByCommits.type.list,max:i,value:e.authors[a],details:e.typeByAuthor[a]})}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"workDays",formatter:e=>e[a]||0}),(0,mu.jsx)(zp,{title:"page.person.week.workDays",template:e=>{let[t,n]=e;return(0,mu.jsx)(LE,{value:t+n,max:7,details:{"page.person.week.workDay":t,"page.person.week.weekends":n},order:["page.person.week.workDay","page.person.week.weekends"],suffix:"page.person.week.days"})},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]}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"taskInDay",formatter:e=>mo(e[a]||0)}),(0,mu.jsx)(zp,{title:"page.person.week.taskInDay",properties:"taskInDay",template:e=>(0,mu.jsx)(LE,{max:o,value:e[a]})})]})}KW.id="person_total",$W.defaultProps={response:void 0};const YW=yi((e=>{var t;let{user:n,mode:a}=e;const s=n,i=PT.statisticsByCommits.week.totalInfo.filter((e=>e.authors[s.author]));if(null===i||void 0===i||!i.length)return(0,mu.jsx)(Hw,{});const o=null===(t=PT.statisticsByCommits.recommendations.person)||void 0===t?void 0:t.byWeek[s.author];return(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsx)(OA,{mode:a,recommendations:o}),(0,mu.jsxs)(tS,{content:i,children:[(0,mu.jsx)($W,{name:s.author,mode:a}),"print"!==a&&(0,mu.jsx)(KC,{})]})]})})),XW=YW;class QW{getMenuItems(){return[{id:"week",group:20,order:50,link:"/person/week/",title:"sidebar.person.week",icon:"./assets/menu/team_week.svg"}]}getPage(e,t){return"/person/week"===e?(0,mu.jsx)(XW,{mode:null===t||void 0===t?void 0:t.mode,user:null===t||void 0===t?void 0:t.user}):void 0}}QW.id="person_week";const JW={ar:"\n\xa7 plugin.person_vacation.sidebar: Vacation schedule\n\xa7 plugin.person_vacation.grant.title: Breakdown by year\n\xa7 plugin.person_vacation.charts.title: Vacation analysis over time\n\xa7 plugin.person_vacation.charts.total.title: vacation days\n\xa7 plugin.person_vacation.charts.total.description: Transfers to another department are not taken into account.\n\xa7 plugin.person_vacation.charts.money.title: vacation pay\n\xa7 plugin.person_vacation.charts.money.description: Total over time. Average daily earnings are multiplied by the number of vacation days.\n\xa7 plugin.person_vacation.charts.years: Vacation distribution by year\n\xa7 plugin.person_vacation.details.title: Periods with a long absence of commits\n\xa7 plugin.person_vacation.details.type: Type\n\xa7 plugin.person_vacation.details.transfer: Transfer to another department\n\xa7 plugin.person_vacation.details.vacation: Vacation\n\xa7 plugin.person_vacation.details.author: Staff member\n\xa7 plugin.person_vacation.details.from: from\n\xa7 plugin.person_vacation.details.to: to\n\xa7 plugin.person_vacation.details.duration: Duration\n",de:"\n\xa7 plugin.person_vacation.sidebar: Vacation schedule\n\xa7 plugin.person_vacation.grant.title: Breakdown by year\n\xa7 plugin.person_vacation.charts.title: Vacation analysis over time\n\xa7 plugin.person_vacation.charts.total.title: vacation days\n\xa7 plugin.person_vacation.charts.total.description: Transfers to another department are not taken into account.\n\xa7 plugin.person_vacation.charts.money.title: vacation pay\n\xa7 plugin.person_vacation.charts.money.description: Total over time. Average daily earnings are multiplied by the number of vacation days.\n\xa7 plugin.person_vacation.charts.years: Vacation distribution by year\n\xa7 plugin.person_vacation.details.title: Periods with a long absence of commits\n\xa7 plugin.person_vacation.details.type: Type\n\xa7 plugin.person_vacation.details.transfer: Transfer to another department\n\xa7 plugin.person_vacation.details.vacation: Vacation\n\xa7 plugin.person_vacation.details.author: Staff member\n\xa7 plugin.person_vacation.details.from: from\n\xa7 plugin.person_vacation.details.to: to\n\xa7 plugin.person_vacation.details.duration: Duration\n",en:"\n\xa7 plugin.person_vacation.sidebar: Vacation schedule\n\xa7 plugin.person_vacation.grant.title: Breakdown by year\n\xa7 plugin.person_vacation.charts.title: Vacation analysis over time\n\xa7 plugin.person_vacation.charts.total.title: vacation days\n\xa7 plugin.person_vacation.charts.total.description: Transfers to another department are not taken into account.\n\xa7 plugin.person_vacation.charts.money.title: vacation pay\n\xa7 plugin.person_vacation.charts.money.description: Total over time. Average daily earnings are multiplied by the number of vacation days.\n\xa7 plugin.person_vacation.charts.years: Vacation distribution by year\n\xa7 plugin.person_vacation.details.title: Periods with a long absence of commits\n\xa7 plugin.person_vacation.details.type: Type\n\xa7 plugin.person_vacation.details.transfer: Transfer to another department\n\xa7 plugin.person_vacation.details.vacation: Vacation\n\xa7 plugin.person_vacation.details.author: Staff member\n\xa7 plugin.person_vacation.details.from: from\n\xa7 plugin.person_vacation.details.to: to\n\xa7 plugin.person_vacation.details.duration: Duration\n",es:"\n\xa7 plugin.person_vacation.sidebar: Vacation schedule\n\xa7 plugin.person_vacation.grant.title: Breakdown by year\n\xa7 plugin.person_vacation.charts.title: Vacation analysis over time\n\xa7 plugin.person_vacation.charts.total.title: vacation days\n\xa7 plugin.person_vacation.charts.total.description: Transfers to another department are not taken into account.\n\xa7 plugin.person_vacation.charts.money.title: vacation pay\n\xa7 plugin.person_vacation.charts.money.description: Total over time. Average daily earnings are multiplied by the number of vacation days.\n\xa7 plugin.person_vacation.charts.years: Vacation distribution by year\n\xa7 plugin.person_vacation.details.title: Periods with a long absence of commits\n\xa7 plugin.person_vacation.details.type: Type\n\xa7 plugin.person_vacation.details.transfer: Transfer to another department\n\xa7 plugin.person_vacation.details.vacation: Vacation\n\xa7 plugin.person_vacation.details.author: Staff member\n\xa7 plugin.person_vacation.details.from: from\n\xa7 plugin.person_vacation.details.to: to\n\xa7 plugin.person_vacation.details.duration: Duration\n",fr:"\n\xa7 plugin.person_vacation.sidebar: Vacation schedule\n\xa7 plugin.person_vacation.grant.title: Breakdown by year\n\xa7 plugin.person_vacation.charts.title: Vacation analysis over time\n\xa7 plugin.person_vacation.charts.total.title: vacation days\n\xa7 plugin.person_vacation.charts.total.description: Transfers to another department are not taken into account.\n\xa7 plugin.person_vacation.charts.money.title: vacation pay\n\xa7 plugin.person_vacation.charts.money.description: Total over time. Average daily earnings are multiplied by the number of vacation days.\n\xa7 plugin.person_vacation.charts.years: Vacation distribution by year\n\xa7 plugin.person_vacation.details.title: Periods with a long absence of commits\n\xa7 plugin.person_vacation.details.type: Type\n\xa7 plugin.person_vacation.details.transfer: Transfer to another department\n\xa7 plugin.person_vacation.details.vacation: Vacation\n\xa7 plugin.person_vacation.details.author: Staff member\n\xa7 plugin.person_vacation.details.from: from\n\xa7 plugin.person_vacation.details.to: to\n\xa7 plugin.person_vacation.details.duration: Duration\n",he:"\n\xa7 plugin.person_vacation.sidebar: Vacation schedule\n\xa7 plugin.person_vacation.grant.title: Breakdown by year\n\xa7 plugin.person_vacation.charts.title: Vacation analysis over time\n\xa7 plugin.person_vacation.charts.total.title: vacation days\n\xa7 plugin.person_vacation.charts.total.description: Transfers to another department are not taken into account.\n\xa7 plugin.person_vacation.charts.money.title: vacation pay\n\xa7 plugin.person_vacation.charts.money.description: Total over time. Average daily earnings are multiplied by the number of vacation days.\n\xa7 plugin.person_vacation.charts.years: Vacation distribution by year\n\xa7 plugin.person_vacation.details.title: Periods with a long absence of commits\n\xa7 plugin.person_vacation.details.type: Type\n\xa7 plugin.person_vacation.details.transfer: Transfer to another department\n\xa7 plugin.person_vacation.details.vacation: Vacation\n\xa7 plugin.person_vacation.details.author: Staff member\n\xa7 plugin.person_vacation.details.from: from\n\xa7 plugin.person_vacation.details.to: to\n\xa7 plugin.person_vacation.details.duration: Duration\n",hi:"\n\xa7 plugin.person_vacation.sidebar: Vacation schedule\n\xa7 plugin.person_vacation.grant.title: Breakdown by year\n\xa7 plugin.person_vacation.charts.title: Vacation analysis over time\n\xa7 plugin.person_vacation.charts.total.title: vacation days\n\xa7 plugin.person_vacation.charts.total.description: Transfers to another department are not taken into account.\n\xa7 plugin.person_vacation.charts.money.title: vacation pay\n\xa7 plugin.person_vacation.charts.money.description: Total over time. Average daily earnings are multiplied by the number of vacation days.\n\xa7 plugin.person_vacation.charts.years: Vacation distribution by year\n\xa7 plugin.person_vacation.details.title: Periods with a long absence of commits\n\xa7 plugin.person_vacation.details.type: Type\n\xa7 plugin.person_vacation.details.transfer: Transfer to another department\n\xa7 plugin.person_vacation.details.vacation: Vacation\n\xa7 plugin.person_vacation.details.author: Staff member\n\xa7 plugin.person_vacation.details.from: from\n\xa7 plugin.person_vacation.details.to: to\n\xa7 plugin.person_vacation.details.duration: Duration\n",ja:"\n\xa7 plugin.person_vacation.sidebar: Vacation schedule\n\xa7 plugin.person_vacation.grant.title: Breakdown by year\n\xa7 plugin.person_vacation.charts.title: Vacation analysis over time\n\xa7 plugin.person_vacation.charts.total.title: vacation days\n\xa7 plugin.person_vacation.charts.total.description: Transfers to another department are not taken into account.\n\xa7 plugin.person_vacation.charts.money.title: vacation pay\n\xa7 plugin.person_vacation.charts.money.description: Total over time. Average daily earnings are multiplied by the number of vacation days.\n\xa7 plugin.person_vacation.charts.years: Vacation distribution by year\n\xa7 plugin.person_vacation.details.title: Periods with a long absence of commits\n\xa7 plugin.person_vacation.details.type: Type\n\xa7 plugin.person_vacation.details.transfer: Transfer to another department\n\xa7 plugin.person_vacation.details.vacation: Vacation\n\xa7 plugin.person_vacation.details.author: Staff member\n\xa7 plugin.person_vacation.details.from: from\n\xa7 plugin.person_vacation.details.to: to\n\xa7 plugin.person_vacation.details.duration: Duration\n",ko:"\n\xa7 plugin.person_vacation.sidebar: Vacation schedule\n\xa7 plugin.person_vacation.grant.title: Breakdown by year\n\xa7 plugin.person_vacation.charts.title: Vacation analysis over time\n\xa7 plugin.person_vacation.charts.total.title: vacation days\n\xa7 plugin.person_vacation.charts.total.description: Transfers to another department are not taken into account.\n\xa7 plugin.person_vacation.charts.money.title: vacation pay\n\xa7 plugin.person_vacation.charts.money.description: Total over time. Average daily earnings are multiplied by the number of vacation days.\n\xa7 plugin.person_vacation.charts.years: Vacation distribution by year\n\xa7 plugin.person_vacation.details.title: Periods with a long absence of commits\n\xa7 plugin.person_vacation.details.type: Type\n\xa7 plugin.person_vacation.details.transfer: Transfer to another department\n\xa7 plugin.person_vacation.details.vacation: Vacation\n\xa7 plugin.person_vacation.details.author: Staff member\n\xa7 plugin.person_vacation.details.from: from\n\xa7 plugin.person_vacation.details.to: to\n\xa7 plugin.person_vacation.details.duration: Duration\n",pt:"\n\xa7 plugin.person_vacation.sidebar: Vacation schedule\n\xa7 plugin.person_vacation.grant.title: Breakdown by year\n\xa7 plugin.person_vacation.charts.title: Vacation analysis over time\n\xa7 plugin.person_vacation.charts.total.title: vacation days\n\xa7 plugin.person_vacation.charts.total.description: Transfers to another department are not taken into account.\n\xa7 plugin.person_vacation.charts.money.title: vacation pay\n\xa7 plugin.person_vacation.charts.money.description: Total over time. Average daily earnings are multiplied by the number of vacation days.\n\xa7 plugin.person_vacation.charts.years: Vacation distribution by year\n\xa7 plugin.person_vacation.details.title: Periods with a long absence of commits\n\xa7 plugin.person_vacation.details.type: Type\n\xa7 plugin.person_vacation.details.transfer: Transfer to another department\n\xa7 plugin.person_vacation.details.vacation: Vacation\n\xa7 plugin.person_vacation.details.author: Staff member\n\xa7 plugin.person_vacation.details.from: from\n\xa7 plugin.person_vacation.details.to: to\n\xa7 plugin.person_vacation.details.duration: Duration\n",ru:"\n\xa7 plugin.person_vacation.sidebar: \u0413\u0440\u0430\u0444\u0438\u043a \u043e\u0442\u043f\u0443\u0441\u043a\u043e\u0432\n\xa7 plugin.person_vacation.grant.title: \u0420\u0430\u0437\u0431\u0438\u0432\u043a\u0430 \u043f\u043e \u0433\u043e\u0434\u0430\u043c\n\xa7 plugin.person_vacation.charts.title: \u0410\u043d\u0430\u043b\u0438\u0437 \u043e\u0442\u043f\u0443\u0441\u043a\u043e\u0432 \u0437\u0430 \u0432\u0441\u0451 \u0432\u0440\u0435\u043c\u044f\n\xa7 plugin.person_vacation.charts.total.title: \u0434\u043d\u0435\u0439 \u043e\u0442\u043f\u0443\u0441\u043a\u0430\n\xa7 plugin.person_vacation.charts.total.description: \u041f\u0435\u0440\u0435\u0432\u043e\u0434\u044b \u0432 \u0434\u0440\u0443\u0433\u043e\u0439 \u043e\u0442\u0434\u0435\u043b \u043d\u0435 \u0443\u0447\u0438\u0442\u044b\u0432\u0430\u044e\u0442\u0441\u044f.\n\xa7 plugin.person_vacation.charts.money.title: \u043e\u0442\u043f\u0443\u0441\u043a\u043d\u044b\u0435\n\xa7 plugin.person_vacation.charts.money.description: \u0421\u0443\u043c\u043c\u0430\u0440\u043d\u043e \u0437\u0430 \u0432\u0441\u0451 \u0432\u0440\u0435\u043c\u044f. \u0421\u0440\u0435\u0434\u043d\u0435-\u0434\u043d\u0435\u0432\u043d\u043e\u0439 \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u043e\u043a \u0443\u043c\u043d\u043e\u0436\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0434\u043d\u0435\u0439 \u043e\u0442\u043f\u0443\u0441\u043a\u0430.\n\xa7 plugin.person_vacation.charts.years: \u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043e\u0442\u043f\u0443\u0441\u043a\u043e\u0432 \u043f\u043e \u0433\u043e\u0434\u0430\u043c\n\xa7 plugin.person_vacation.details.title: \u041f\u0435\u0440\u0438\u043e\u0434\u044b \u0441 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435\u043c \u043a\u043e\u043c\u043c\u0438\u0442\u043e\u0432\n\xa7 plugin.person_vacation.details.type: \u0422\u0438\u043f\n\xa7 plugin.person_vacation.details.transfer: \u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0432 \u0434\u0440\u0443\u0433\u043e\u0439 \u043e\u0442\u0434\u0435\u043b\n\xa7 plugin.person_vacation.details.vacation: \u041e\u0442\u043f\u0443\u0441\u043a\n\xa7 plugin.person_vacation.details.author: \u0421\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\n\xa7 plugin.person_vacation.details.from: c\n\xa7 plugin.person_vacation.details.to: \u043f\u043e\n\xa7 plugin.person_vacation.details.duration: \u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\n",zh:"\n\xa7 plugin.person_vacation.sidebar: \u4f11\u5047\u8ba1\u5212\n\xa7 plugin.person_vacation.grant.title: \u6309\u5e74\u5ea6\u7684\u660e\u7ec6\n\xa7 plugin.person_vacation.charts.title: \u6309\u65f6\u95f4\u7ef4\u5ea6\u7684\u4f11\u5047\u5206\u6790\n\xa7 plugin.person_vacation.charts.total.title: \u4f11\u5047\u5929\u6570\n\xa7 plugin.person_vacation.charts.total.description: \u4e0d\u8ba1\u5165\u8c03\u5c97\u5230\u5176\u4ed6\u90e8\u95e8\u7684\u60c5\u51b5\u3002\n\xa7 plugin.person_vacation.charts.money.title: \u4f11\u5047\u85aa\u916c\n\xa7 plugin.person_vacation.charts.money.description: \u6309\u65f6\u95f4\u6bb5\u7d2f\u8ba1\u603b\u989d\u3002\u5c06\u5e73\u5747\u65e5\u6536\u5165\u4e58\u4ee5\u4f11\u5047\u5929\u6570\u8ba1\u7b97\u5f97\u5230\u3002\n\xa7 plugin.person_vacation.charts.years: \u6309\u5e74\u5ea6\u7684\u4f11\u5047\u5206\u5e03\n\xa7 plugin.person_vacation.details.title: \u957f\u65f6\u95f4\u65e0\u63d0\u4ea4\u7684\u533a\u95f4\n\xa7 plugin.person_vacation.details.type: \u7c7b\u578b\n\xa7 plugin.person_vacation.details.transfer: \u8c03\u5c97\u5230\u5176\u4ed6\u90e8\u95e8\n\xa7 plugin.person_vacation.details.vacation: \u4f11\u5047\n\xa7 plugin.person_vacation.details.author: \u5458\u5de5\n\xa7 plugin.person_vacation.details.from: \u81ea\n\xa7 plugin.person_vacation.details.to: \u81f3\n\xa7 plugin.person_vacation.details.duration: \u65f6\u957f\n"};const ZW=function(e){let{rows:n}=e;const a=(0,t.useMemo)((()=>QP(n)),[n]),[s,i]=YE();return(0,mu.jsxs)(Wp,{rows:a,children:[(0,mu.jsx)(zp,{template:_p.STRING,width:90,properties:"year"}),(0,mu.jsx)(zp,{title:()=>(0,mu.jsx)(QE,{markersLine:i,markersText:s,formatter:JP()}),template:e=>(0,mu.jsx)(QE,{markersLine:i,lines:e.lines,formatter:JP(e.year)})})]})};function eq(e){return 30*e.month+e.day}const tq=function(e){let{content:t}=e;if(null===t||void 0===t||!t.length)return null;const{totalDays:n,details:a,order:s}=function(e){let t=0;const n={};e.forEach((e=>{e.duration>40||(t+=e.duration,e.from.year===e.to.year?Vo(n,e.from.year,e.duration):(Vo(n,e.from.year,365-eq(e.from)),Vo(n,e.to.year,eq(e.to))))}));const a=Object.keys(n).reverse();return{totalDays:t,details:n,order:a}}(t),i=so.getMiddleVacationPayInDay();return(0,mu.jsxs)(yT,{children:[(0,mu.jsxs)(_T,{children:[(0,mu.jsx)(Pu,{value:n,icon:"./assets/cards/lazy.svg",title:"plugin.person_vacation.charts.total.title",description:"plugin.person_vacation.charts.total.description"}),(0,mu.jsx)(Pu,{value:ro(n*i),icon:"./assets/cards/money_holidays.svg",title:"plugin.person_vacation.charts.money.title",description:"plugin.person_vacation.charts.money.description"})]}),(0,mu.jsx)(_T,{children:(0,mu.jsx)(AE,{title:"plugin.person_vacation.charts.years",details:a,limit:1,order:s,suffix:"common.statistic.days"})})]})};function nq(e){let{response:t,updateSort:n,rowsForExcel:a,mode:s}=e;if(!t)return null;const[i]=sI(t,["duration"]);return(0,mu.jsxs)(ow,{rowsForExcel:a,rows:t.content,sort:t.sort,updateSort:n,mode:s,type:"print"===s?"cards":void 0,columnCount:"print"===s?3:void 0,children:[(0,mu.jsx)(zp,{title:"\u0442\u0438\u043f",formatter:e=>e.duration>40?"plugin.person_vacation.details.transfer":"plugin.person_vacation.details.vacation",template:_p.TAGS,minWidth:200}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.person_vacation.details.from",minWidth:130,formatter:e=>Zi(e.from.milliseconds)}),(0,mu.jsx)(zp,{template:_p.STRING,title:"plugin.person_vacation.details.to",minWidth:130,formatter:e=>Zi(e.to.milliseconds)}),(0,mu.jsx)(zp,{template:_p.SHORT_NUMBER,properties:"duration"}),(0,mu.jsx)(zp,{isSortable:!0,title:"plugin.person_vacation.details.duration",properties:"duration",minWidth:200,template:e=>(0,mu.jsx)(LE,{value:e,max:i,suffix:"common.statistic.days"})})]})}nq.defaultProps={response:void 0};const aq=nq,sq=yi((e=>{let{user:t,mode:n}=e;const a=PT.statisticsByCommits.absence.totalInfoByName.get(t.author)||[];return null!==a&&void 0!==a&&a.length?(0,mu.jsxs)(mu.Fragment,{children:[(0,mu.jsxs)(vT,{children:[(0,mu.jsx)(dT,{height:"xl"}),(0,mu.jsx)(ZW,{rows:a})]}),(0,mu.jsx)(sx,{title:"plugin.person_vacation.charts.title"}),(0,mu.jsx)(tq,{content:a}),(0,mu.jsx)(sx,{title:"plugin.person_vacation.details.title"}),(0,mu.jsxs)(tS,{content:a,mode:n,watch:"".concat(n).concat(t.author).concat(PT.hash),children:[(0,mu.jsx)(aq,{mode:n,rowsForExcel:a}),(0,mu.jsx)(KC,{})]})]}):"print"!==n?(0,mu.jsx)(Hw,{}):null}));class iq{getMenuItems(){return[{id:"vacation",group:20,order:75,link:"/person/vacation/",title:"plugin.person_vacation.sidebar",icon:"./assets/menu/vacation.svg"}]}getPage(e,t){return"/person/vacation"===e?(0,mu.jsx)(sq,{mode:null===t||void 0===t?void 0:t.mode,user:null===t||void 0===t?void 0:t.user,filters:null===t||void 0===t?void 0:t.filters}):void 0}getTranslations(){return JW}}iq.id="person_vacation";const oq=[DF,sM,yI,RF,yP,IR,$P,rR,vM,wF,qF,XO,uO,rO,WR,jL,BL,WM,hL,iP,VN,_L,UN,KW,tW,uW,FW,QW,OW,iq,lW,aW,GD,iA,DA];function rq(){window.onafterprint=()=>{Cj.endPrint()};const e=document.getElementById("root");e&&(0,s.s)(e).render((0,mu.jsx)(t.StrictMode,{children:(0,mu.jsxs)(_e,{children:[(0,mu.jsx)(dD,{}),(0,mu.jsx)(xD,{})]})}))}Ee.addTranslationsForLanguage("de",Ne),Ee.addTranslationsForLanguage("en",Pe),Ee.addTranslationsForLanguage("es",Re),Ee.addTranslationsForLanguage("fr",Oe),Ee.addTranslationsForLanguage("ja",Le),Ee.addTranslationsForLanguage("pt",Me),Ee.addTranslationsForLanguage("ru",Fe),Ee.addTranslationsForLanguage("ko",We),Ee.addTranslationsForLanguage("zh",qe),document.addEventListener("copy",(function(e){const t=document.getSelection(),n=t?t.toString():"";if(!n||!e.clipboardData)return;const a=Ge(n);e.clipboardData.setData("text/plain",a),e.preventDefault()})),function(e){const t={...SD(location.search),...SD(location.hash)};null!==t&&void 0!==t&&t.config?fetch(null===t||void 0===t?void 0:t.config).then((e=>e.json())).then((n=>{e(CD(t,n))})).catch((()=>{e(CD(t))})):e(CD(t))}((e=>{var t,n;so.updateConfig(e),pC.setPlugins(function(e,t){const n=new Set(t.plugins),a=new Set(t.disabledPlugins);return e.filter((e=>e.id&&n.has(e.id)&&!a.has(e.id)))}(oq,e)),t=e.exchangeRate,io=null!==t&&void 0!==t?t:{},e.urlForCss&&function(e){const t=document.createElement("link");t.setAttribute("rel","stylesheet"),t.setAttribute("href",e),document.body.appendChild(t)}(e.urlForCss),e.title&&(document.title="localhost"),n=e.language,Ee.language=n||localStorage.getItem("language")||Ue||"en",Ee.updateLangAttribute(),pC.getTranslations().forEach((e=>{Object.entries(e).forEach((e=>{let[t,n]=e;Ee.addTranslationsForLanguage(t,n)}))})),ou.setReference(e.ref),e.urlForGitLog?jD(e.urlForGitLog,(()=>rq())):rq()}))})()})();
|
|
//# sourceMappingURL=main.ff90a0a1.js.map |