calculator2026/33/static/js/workspace-DxKKyh8w.js
2026-06-25 09:43:48 +08:00

17 lines
139 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import{i as e,o as t,t as n}from"./rolldown-runtime-fVNAxIxX.js";import{$ as r,An as i,H as a,In as o,L as s,M as c,Pt as l,Rt as u,Wn as d,bt as f,ft as p,jn as m,lt as h,mn as g,qn as _,tt as v,zn as y}from"./vendor-ag-grid~XmMajorFactor~XmConsultCategoryFactor~xmInfo~ZxFwView~HtFeeMethodTypeLineVie~ntegcu2a-CFxQnYK4.js";import{n as b}from"./vendor-ag-grid~XmMajorFactor~XmConsultCategoryFactor~xmInfo~ZxFwView~HtFeeMethodTypeLineVie~ntegcu2a-BnO-wAhh.js";var x=n(((t,n)=>{(function(e){if(typeof t==`object`&&n!==void 0)n.exports=e();else if(typeof define==`function`&&define.amd)define([],e);else{var r=typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:this;r.localforage=e()}})(function(){return(function t(n,r,i){function a(s,c){if(!r[s]){if(!n[s]){var l=typeof e==`function`&&e;if(!c&&l)return l(s,!0);if(o)return o(s,!0);var u=Error(`Cannot find module '`+s+`'`);throw u.code=`MODULE_NOT_FOUND`,u}var d=r[s]={exports:{}};n[s][0].call(d.exports,function(e){var t=n[s][1][e];return a(t||e)},d,d.exports,t,n,r,i)}return r[s].exports}for(var o=typeof e==`function`&&e,s=0;s<i.length;s++)a(i[s]);return a})({1:[function(e,t,n){(function(e){var n=e.MutationObserver||e.WebKitMutationObserver,r;if(n){var i=0,a=new n(u),o=e.document.createTextNode(``);a.observe(o,{characterData:!0}),r=function(){o.data=i=++i%2}}else if(!e.setImmediate&&e.MessageChannel!==void 0){var s=new e.MessageChannel;s.port1.onmessage=u,r=function(){s.port2.postMessage(0)}}else r=`document`in e&&`onreadystatechange`in e.document.createElement(`script`)?function(){var t=e.document.createElement(`script`);t.onreadystatechange=function(){u(),t.onreadystatechange=null,t.parentNode.removeChild(t),t=null},e.document.documentElement.appendChild(t)}:function(){setTimeout(u,0)};var c,l=[];function u(){c=!0;for(var e,t,n=l.length;n;){for(t=l,l=[],e=-1;++e<n;)t[e]();n=l.length}c=!1}t.exports=d;function d(e){l.push(e)===1&&!c&&r()}}).call(this,typeof global<`u`?global:typeof self<`u`?self:typeof window<`u`?window:{})},{}],2:[function(e,t,n){var r=e(1);function i(){}var a={},o=[`REJECTED`],s=[`FULFILLED`],c=[`PENDING`];t.exports=l;function l(e){if(typeof e!=`function`)throw TypeError(`resolver must be a function`);this.state=c,this.queue=[],this.outcome=void 0,e!==i&&p(this,e)}l.prototype.catch=function(e){return this.then(null,e)},l.prototype.then=function(e,t){if(typeof e!=`function`&&this.state===s||typeof t!=`function`&&this.state===o)return this;var n=new this.constructor(i);return this.state===c?this.queue.push(new u(n,e,t)):d(n,this.state===s?e:t,this.outcome),n};function u(e,t,n){this.promise=e,typeof t==`function`&&(this.onFulfilled=t,this.callFulfilled=this.otherCallFulfilled),typeof n==`function`&&(this.onRejected=n,this.callRejected=this.otherCallRejected)}u.prototype.callFulfilled=function(e){a.resolve(this.promise,e)},u.prototype.otherCallFulfilled=function(e){d(this.promise,this.onFulfilled,e)},u.prototype.callRejected=function(e){a.reject(this.promise,e)},u.prototype.otherCallRejected=function(e){d(this.promise,this.onRejected,e)};function d(e,t,n){r(function(){var r;try{r=t(n)}catch(t){return a.reject(e,t)}r===e?a.reject(e,TypeError(`Cannot resolve promise with itself`)):a.resolve(e,r)})}a.resolve=function(e,t){var n=m(f,t);if(n.status===`error`)return a.reject(e,n.value);var r=n.value;if(r)p(e,r);else{e.state=s,e.outcome=t;for(var i=-1,o=e.queue.length;++i<o;)e.queue[i].callFulfilled(t)}return e},a.reject=function(e,t){e.state=o,e.outcome=t;for(var n=-1,r=e.queue.length;++n<r;)e.queue[n].callRejected(t);return e};function f(e){var t=e&&e.then;if(e&&(typeof e==`object`||typeof e==`function`)&&typeof t==`function`)return function(){t.apply(e,arguments)}}function p(e,t){var n=!1;function r(t){n||(n=!0,a.reject(e,t))}function i(t){n||(n=!0,a.resolve(e,t))}function o(){t(i,r)}var s=m(o);s.status===`error`&&r(s.value)}function m(e,t){var n={};try{n.value=e(t),n.status=`success`}catch(e){n.status=`error`,n.value=e}return n}l.resolve=h;function h(e){return e instanceof this?e:a.resolve(new this(i),e)}l.reject=g;function g(e){var t=new this(i);return a.reject(t,e)}l.all=_;function _(e){var t=this;if(Object.prototype.toString.call(e)!==`[object Array]`)return this.reject(TypeError(`must be an array`));var n=e.length,r=!1;if(!n)return this.resolve([]);for(var o=Array(n),s=0,c=-1,l=new this(i);++c<n;)u(e[c],c);return l;function u(e,i){t.resolve(e).then(c,function(e){r||(r=!0,a.reject(l,e))});function c(e){o[i]=e,++s===n&&!r&&(r=!0,a.resolve(l,o))}}}l.race=v;function v(e){var t=this;if(Object.prototype.toString.call(e)!==`[object Array]`)return this.reject(TypeError(`must be an array`));var n=e.length,r=!1;if(!n)return this.resolve([]);for(var o=-1,s=new this(i);++o<n;)c(e[o]);return s;function c(e){t.resolve(e).then(function(e){r||(r=!0,a.resolve(s,e))},function(e){r||(r=!0,a.reject(s,e))})}}},{1:1}],3:[function(e,t,n){(function(t){typeof t.Promise!=`function`&&(t.Promise=e(2))}).call(this,typeof global<`u`?global:typeof self<`u`?self:typeof window<`u`?window:{})},{2:2}],4:[function(e,t,n){var r=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e};function i(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function a(){try{if(typeof indexedDB<`u`)return indexedDB;if(typeof webkitIndexedDB<`u`)return webkitIndexedDB;if(typeof mozIndexedDB<`u`)return mozIndexedDB;if(typeof OIndexedDB<`u`)return OIndexedDB;if(typeof msIndexedDB<`u`)return msIndexedDB}catch{return}}var o=a();function s(){try{if(!o||!o.open)return!1;var e=typeof openDatabase<`u`&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),t=typeof fetch==`function`&&fetch.toString().indexOf(`[native code`)!==-1;return(!e||t)&&typeof indexedDB<`u`&&typeof IDBKeyRange<`u`}catch{return!1}}function c(e,t){e||=[],t||={};try{return new Blob(e,t)}catch(i){if(i.name!==`TypeError`)throw i;for(var n=new(typeof BlobBuilder<`u`?BlobBuilder:typeof MSBlobBuilder<`u`?MSBlobBuilder:typeof MozBlobBuilder<`u`?MozBlobBuilder:WebKitBlobBuilder),r=0;r<e.length;r+=1)n.append(e[r]);return n.getBlob(t.type)}}typeof Promise>`u`&&e(3);var l=Promise;function u(e,t){t&&e.then(function(e){t(null,e)},function(e){t(e)})}function d(e,t,n){typeof t==`function`&&e.then(t),typeof n==`function`&&e.catch(n)}function f(e){return typeof e!=`string`&&(console.warn(e+` used as a key, but it is not a string.`),e=String(e)),e}function p(){if(arguments.length&&typeof arguments[arguments.length-1]==`function`)return arguments[arguments.length-1]}var m=`local-forage-detect-blob-support`,h=void 0,g={},_=Object.prototype.toString,v=`readonly`,y=`readwrite`;function b(e){for(var t=e.length,n=new ArrayBuffer(t),r=new Uint8Array(n),i=0;i<t;i++)r[i]=e.charCodeAt(i);return n}function x(e){return new l(function(t){var n=e.transaction(m,y),r=c([``]);n.objectStore(m).put(r,`key`),n.onabort=function(e){e.preventDefault(),e.stopPropagation(),t(!1)},n.oncomplete=function(){var e=navigator.userAgent.match(/Chrome\/(\d+)/);t(navigator.userAgent.match(/Edge\//)||!e||parseInt(e[1],10)>=43)}}).catch(function(){return!1})}function S(e){return typeof h==`boolean`?l.resolve(h):x(e).then(function(e){return h=e,h})}function C(e){var t=g[e.name],n={};n.promise=new l(function(e,t){n.resolve=e,n.reject=t}),t.deferredOperations.push(n),t.dbReady?t.dbReady=t.dbReady.then(function(){return n.promise}):t.dbReady=n.promise}function w(e){var t=g[e.name].deferredOperations.pop();if(t)return t.resolve(),t.promise}function T(e,t){var n=g[e.name].deferredOperations.pop();if(n)return n.reject(t),n.promise}function E(e,t){return new l(function(n,r){if(g[e.name]=g[e.name]||re(),e.db)if(t)C(e),e.db.close();else return n(e.db);var i=[e.name];t&&i.push(e.version);var a=o.open.apply(o,i);t&&(a.onupgradeneeded=function(t){var n=a.result;try{n.createObjectStore(e.storeName),t.oldVersion<=1&&n.createObjectStore(m)}catch(n){if(n.name===`ConstraintError`)console.warn(`The database "`+e.name+`" has been upgraded from version `+t.oldVersion+` to version `+t.newVersion+`, but the storage "`+e.storeName+`" already exists.`);else throw n}}),a.onerror=function(e){e.preventDefault(),r(a.error)},a.onsuccess=function(){var t=a.result;t.onversionchange=function(e){e.target.close()},n(t),w(e)}})}function D(e){return E(e,!1)}function O(e){return E(e,!0)}function ee(e,t){if(!e.db)return!0;var n=!e.db.objectStoreNames.contains(e.storeName),r=e.version<e.db.version,i=e.version>e.db.version;if(r&&(e.version!==t&&console.warn(`The database "`+e.name+`" can't be downgraded from version `+e.db.version+` to version `+e.version+`.`),e.version=e.db.version),i||n){if(n){var a=e.db.version+1;a>e.version&&(e.version=a)}return!0}return!1}function k(e){return new l(function(t,n){var r=new FileReader;r.onerror=n,r.onloadend=function(n){t({__local_forage_encoded_blob:!0,data:btoa(n.target.result||``),type:e.type})},r.readAsBinaryString(e)})}function A(e){return c([b(atob(e.data))],{type:e.type})}function te(e){return e&&e.__local_forage_encoded_blob}function j(e){var t=this,n=t._initReady().then(function(){var e=g[t._dbInfo.name];if(e&&e.dbReady)return e.dbReady});return d(n,e,e),n}function ne(e){C(e);for(var t=g[e.name],n=t.forages,r=0;r<n.length;r++){var i=n[r];i._dbInfo.db&&(i._dbInfo.db.close(),i._dbInfo.db=null)}return e.db=null,D(e).then(function(t){return e.db=t,ee(e)?O(e):t}).then(function(r){e.db=t.db=r;for(var i=0;i<n.length;i++)n[i]._dbInfo.db=r}).catch(function(t){throw T(e,t),t})}function M(e,t,n,r){r===void 0&&(r=1);try{n(null,e.db.transaction(e.storeName,t))}catch(i){if(r>0&&(!e.db||i.name===`InvalidStateError`||i.name===`NotFoundError`))return l.resolve().then(function(){if(!e.db||i.name===`NotFoundError`&&!e.db.objectStoreNames.contains(e.storeName)&&e.version<=e.db.version)return e.db&&(e.version=e.db.version+1),O(e)}).then(function(){return ne(e).then(function(){M(e,t,n,r-1)})}).catch(n);n(i)}}function re(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function ie(e){var t=this,n={db:null};if(e)for(var r in e)n[r]=e[r];var i=g[n.name];i||(i=re(),g[n.name]=i),i.forages.push(t),t._initReady||(t._initReady=t.ready,t.ready=j);var a=[];function o(){return l.resolve()}for(var s=0;s<i.forages.length;s++){var c=i.forages[s];c!==t&&a.push(c._initReady().catch(o))}var u=i.forages.slice(0);return l.all(a).then(function(){return n.db=i.db,D(n)}).then(function(e){return n.db=e,ee(n,t._defaultConfig.version)?O(n):e}).then(function(e){n.db=i.db=e,t._dbInfo=n;for(var r=0;r<u.length;r++){var a=u[r];a!==t&&(a._dbInfo.db=n.db,a._dbInfo.version=n.version)}})}function ae(e,t){var n=this;e=f(e);var r=new l(function(t,r){n.ready().then(function(){M(n._dbInfo,v,function(i,a){if(i)return r(i);try{var o=a.objectStore(n._dbInfo.storeName).get(e);o.onsuccess=function(){var e=o.result;e===void 0&&(e=null),te(e)&&(e=A(e)),t(e)},o.onerror=function(){r(o.error)}}catch(e){r(e)}})}).catch(r)});return u(r,t),r}function oe(e,t){var n=this,r=new l(function(t,r){n.ready().then(function(){M(n._dbInfo,v,function(i,a){if(i)return r(i);try{var o=a.objectStore(n._dbInfo.storeName).openCursor(),s=1;o.onsuccess=function(){var n=o.result;if(n){var r=n.value;te(r)&&(r=A(r));var i=e(r,n.key,s++);i===void 0?n.continue():t(i)}else t()},o.onerror=function(){r(o.error)}}catch(e){r(e)}})}).catch(r)});return u(r,t),r}function se(e,t,n){var r=this;e=f(e);var i=new l(function(n,i){var a;r.ready().then(function(){return a=r._dbInfo,_.call(t)===`[object Blob]`?S(a.db).then(function(e){return e?t:k(t)}):t}).then(function(t){M(r._dbInfo,y,function(a,o){if(a)return i(a);try{var s=o.objectStore(r._dbInfo.storeName);t===null&&(t=void 0);var c=s.put(t,e);o.oncomplete=function(){t===void 0&&(t=null),n(t)},o.onabort=o.onerror=function(){i(c.error?c.error:c.transaction.error)}}catch(e){i(e)}})}).catch(i)});return u(i,n),i}function ce(e,t){var n=this;e=f(e);var r=new l(function(t,r){n.ready().then(function(){M(n._dbInfo,y,function(i,a){if(i)return r(i);try{var o=a.objectStore(n._dbInfo.storeName).delete(e);a.oncomplete=function(){t()},a.onerror=function(){r(o.error)},a.onabort=function(){r(o.error?o.error:o.transaction.error)}}catch(e){r(e)}})}).catch(r)});return u(r,t),r}function N(e){var t=this,n=new l(function(e,n){t.ready().then(function(){M(t._dbInfo,y,function(r,i){if(r)return n(r);try{var a=i.objectStore(t._dbInfo.storeName).clear();i.oncomplete=function(){e()},i.onabort=i.onerror=function(){n(a.error?a.error:a.transaction.error)}}catch(e){n(e)}})}).catch(n)});return u(n,e),n}function le(e){var t=this,n=new l(function(e,n){t.ready().then(function(){M(t._dbInfo,v,function(r,i){if(r)return n(r);try{var a=i.objectStore(t._dbInfo.storeName).count();a.onsuccess=function(){e(a.result)},a.onerror=function(){n(a.error)}}catch(e){n(e)}})}).catch(n)});return u(n,e),n}function ue(e,t){var n=this,r=new l(function(t,r){if(e<0){t(null);return}n.ready().then(function(){M(n._dbInfo,v,function(i,a){if(i)return r(i);try{var o=a.objectStore(n._dbInfo.storeName),s=!1,c=o.openKeyCursor();c.onsuccess=function(){var n=c.result;if(!n){t(null);return}e===0||s?t(n.key):(s=!0,n.advance(e))},c.onerror=function(){r(c.error)}}catch(e){r(e)}})}).catch(r)});return u(r,t),r}function P(e){var t=this,n=new l(function(e,n){t.ready().then(function(){M(t._dbInfo,v,function(r,i){if(r)return n(r);try{var a=i.objectStore(t._dbInfo.storeName).openKeyCursor(),o=[];a.onsuccess=function(){var t=a.result;if(!t){e(o);return}o.push(t.key),t.continue()},a.onerror=function(){n(a.error)}}catch(e){n(e)}})}).catch(n)});return u(n,e),n}function F(e,t){t=p.apply(this,arguments);var n=this.config();e=typeof e!=`function`&&e||{},e.name||(e.name=e.name||n.name,e.storeName=e.storeName||n.storeName);var r=this,i;if(!e.name)i=l.reject(`Invalid arguments`);else{var a=e.name===n.name&&r._dbInfo.db?l.resolve(r._dbInfo.db):D(e).then(function(t){var n=g[e.name],r=n.forages;n.db=t;for(var i=0;i<r.length;i++)r[i]._dbInfo.db=t;return t});i=e.storeName?a.then(function(t){if(t.objectStoreNames.contains(e.storeName)){var n=t.version+1;C(e);var r=g[e.name],i=r.forages;t.close();for(var a=0;a<i.length;a++){var s=i[a];s._dbInfo.db=null,s._dbInfo.version=n}return new l(function(t,r){var i=o.open(e.name,n);i.onerror=function(e){i.result.close(),r(e)},i.onupgradeneeded=function(){i.result.deleteObjectStore(e.storeName)},i.onsuccess=function(){var e=i.result;e.close(),t(e)}}).then(function(e){r.db=e;for(var t=0;t<i.length;t++){var n=i[t];n._dbInfo.db=e,w(n._dbInfo)}}).catch(function(t){throw(T(e,t)||l.resolve()).catch(function(){}),t})}}):a.then(function(t){C(e);var n=g[e.name],r=n.forages;t.close();for(var i=0;i<r.length;i++){var a=r[i];a._dbInfo.db=null}return new l(function(t,n){var r=o.deleteDatabase(e.name);r.onerror=function(){var e=r.result;e&&e.close(),n(r.error)},r.onblocked=function(){console.warn(`dropInstance blocked for database "`+e.name+`" until all open connections are closed`)},r.onsuccess=function(){var e=r.result;e&&e.close(),t(e)}}).then(function(e){n.db=e;for(var t=0;t<r.length;t++){var i=r[t];w(i._dbInfo)}}).catch(function(t){throw(T(e,t)||l.resolve()).catch(function(){}),t})})}return u(i,t),i}var I={_driver:`asyncStorage`,_initStorage:ie,_support:s(),iterate:oe,getItem:ae,setItem:se,removeItem:ce,clear:N,length:le,key:ue,keys:P,dropInstance:F};function L(){return typeof openDatabase==`function`}var R=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,z=`~~local_forage_type~`,de=/^~~local_forage_type~([^~]+)~/,B=`__lfsc__:`,fe=B.length,V=`arbf`,pe=`blob`,me=`si08`,he=`ui08`,ge=`uic8`,_e=`si16`,ve=`si32`,H=`ur16`,ye=`ui32`,be=`fl32`,U=`fl64`,xe=fe+V.length,W=Object.prototype.toString;function Se(e){var t=e.length*.75,n=e.length,r,i=0,a,o,s,c;e[e.length-1]===`=`&&(t--,e[e.length-2]===`=`&&t--);var l=new ArrayBuffer(t),u=new Uint8Array(l);for(r=0;r<n;r+=4)a=R.indexOf(e[r]),o=R.indexOf(e[r+1]),s=R.indexOf(e[r+2]),c=R.indexOf(e[r+3]),u[i++]=a<<2|o>>4,u[i++]=(o&15)<<4|s>>2,u[i++]=(s&3)<<6|c&63;return l}function Ce(e){var t=new Uint8Array(e),n=``,r;for(r=0;r<t.length;r+=3)n+=R[t[r]>>2],n+=R[(t[r]&3)<<4|t[r+1]>>4],n+=R[(t[r+1]&15)<<2|t[r+2]>>6],n+=R[t[r+2]&63];return t.length%3==2?n=n.substring(0,n.length-1)+`=`:t.length%3==1&&(n=n.substring(0,n.length-2)+`==`),n}function we(e,t){var n=``;if(e&&(n=W.call(e)),e&&(n===`[object ArrayBuffer]`||e.buffer&&W.call(e.buffer)===`[object ArrayBuffer]`)){var r,i=B;e instanceof ArrayBuffer?(r=e,i+=V):(r=e.buffer,n===`[object Int8Array]`?i+=me:n===`[object Uint8Array]`?i+=he:n===`[object Uint8ClampedArray]`?i+=ge:n===`[object Int16Array]`?i+=_e:n===`[object Uint16Array]`?i+=H:n===`[object Int32Array]`?i+=ve:n===`[object Uint32Array]`?i+=ye:n===`[object Float32Array]`?i+=be:n===`[object Float64Array]`?i+=U:t(Error(`Failed to get type for BinaryArray`))),t(i+Ce(r))}else if(n===`[object Blob]`){var a=new FileReader;a.onload=function(){var n=z+e.type+`~`+Ce(this.result);t(B+pe+n)},a.readAsArrayBuffer(e)}else try{t(JSON.stringify(e))}catch(n){console.error(`Couldn't convert value into a JSON string: `,e),t(null,n)}}function G(e){if(e.substring(0,fe)!==B)return JSON.parse(e);var t=e.substring(xe),n=e.substring(fe,xe),r;if(n===pe&&de.test(t)){var i=t.match(de);r=i[1],t=t.substring(i[0].length)}var a=Se(t);switch(n){case V:return a;case pe:return c([a],{type:r});case me:return new Int8Array(a);case he:return new Uint8Array(a);case ge:return new Uint8ClampedArray(a);case _e:return new Int16Array(a);case H:return new Uint16Array(a);case ve:return new Int32Array(a);case ye:return new Uint32Array(a);case be:return new Float32Array(a);case U:return new Float64Array(a);default:throw Error(`Unkown type: `+n)}}var Te={serialize:we,deserialize:G,stringToBuffer:Se,bufferToString:Ce};function Ee(e,t,n,r){e.executeSql(`CREATE TABLE IF NOT EXISTS `+t.storeName+` (id INTEGER PRIMARY KEY, key unique, value)`,[],n,r)}function K(e){var t=this,n={db:null};if(e)for(var r in e)n[r]=typeof e[r]==`string`?e[r]:e[r].toString();var i=new l(function(e,r){try{n.db=openDatabase(n.name,String(n.version),n.description,n.size)}catch(e){return r(e)}n.db.transaction(function(i){Ee(i,n,function(){t._dbInfo=n,e()},function(e,t){r(t)})},r)});return n.serializer=Te,i}function q(e,t,n,r,i,a){e.executeSql(n,r,i,function(e,o){o.code===o.SYNTAX_ERR?e.executeSql(`SELECT name FROM sqlite_master WHERE type='table' AND name = ?`,[t.storeName],function(e,s){s.rows.length?a(e,o):Ee(e,t,function(){e.executeSql(n,r,i,a)},a)},a):a(e,o)},a)}function De(e,t){var n=this;e=f(e);var r=new l(function(t,r){n.ready().then(function(){var i=n._dbInfo;i.db.transaction(function(n){q(n,i,`SELECT * FROM `+i.storeName+` WHERE key = ? LIMIT 1`,[e],function(e,n){var r=n.rows.length?n.rows.item(0).value:null;r&&=i.serializer.deserialize(r),t(r)},function(e,t){r(t)})})}).catch(r)});return u(r,t),r}function Oe(e,t){var n=this,r=new l(function(t,r){n.ready().then(function(){var i=n._dbInfo;i.db.transaction(function(n){q(n,i,`SELECT * FROM `+i.storeName,[],function(n,r){for(var a=r.rows,o=a.length,s=0;s<o;s++){var c=a.item(s),l=c.value;if(l&&=i.serializer.deserialize(l),l=e(l,c.key,s+1),l!==void 0){t(l);return}}t()},function(e,t){r(t)})})}).catch(r)});return u(r,t),r}function ke(e,t,n,r){var i=this;e=f(e);var a=new l(function(a,o){i.ready().then(function(){t===void 0&&(t=null);var s=t,c=i._dbInfo;c.serializer.serialize(t,function(t,l){l?o(l):c.db.transaction(function(n){q(n,c,`INSERT OR REPLACE INTO `+c.storeName+` (key, value) VALUES (?, ?)`,[e,t],function(){a(s)},function(e,t){o(t)})},function(t){if(t.code===t.QUOTA_ERR){if(r>0){a(ke.apply(i,[e,s,n,r-1]));return}o(t)}})})}).catch(o)});return u(a,n),a}function Ae(e,t,n){return ke.apply(this,[e,t,n,1])}function je(e,t){var n=this;e=f(e);var r=new l(function(t,r){n.ready().then(function(){var i=n._dbInfo;i.db.transaction(function(n){q(n,i,`DELETE FROM `+i.storeName+` WHERE key = ?`,[e],function(){t()},function(e,t){r(t)})})}).catch(r)});return u(r,t),r}function J(e){var t=this,n=new l(function(e,n){t.ready().then(function(){var r=t._dbInfo;r.db.transaction(function(t){q(t,r,`DELETE FROM `+r.storeName,[],function(){e()},function(e,t){n(t)})})}).catch(n)});return u(n,e),n}function Me(e){var t=this,n=new l(function(e,n){t.ready().then(function(){var r=t._dbInfo;r.db.transaction(function(t){q(t,r,`SELECT COUNT(key) as c FROM `+r.storeName,[],function(t,n){var r=n.rows.item(0).c;e(r)},function(e,t){n(t)})})}).catch(n)});return u(n,e),n}function Ne(e,t){var n=this,r=new l(function(t,r){n.ready().then(function(){var i=n._dbInfo;i.db.transaction(function(n){q(n,i,`SELECT key FROM `+i.storeName+` WHERE id = ? LIMIT 1`,[e+1],function(e,n){t(n.rows.length?n.rows.item(0).key:null)},function(e,t){r(t)})})}).catch(r)});return u(r,t),r}function Pe(e){var t=this,n=new l(function(e,n){t.ready().then(function(){var r=t._dbInfo;r.db.transaction(function(t){q(t,r,`SELECT key FROM `+r.storeName,[],function(t,n){for(var r=[],i=0;i<n.rows.length;i++)r.push(n.rows.item(i).key);e(r)},function(e,t){n(t)})})}).catch(n)});return u(n,e),n}function Fe(e){return new l(function(t,n){e.transaction(function(r){r.executeSql(`SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'`,[],function(n,r){for(var i=[],a=0;a<r.rows.length;a++)i.push(r.rows.item(a).name);t({db:e,storeNames:i})},function(e,t){n(t)})},function(e){n(e)})})}function Ie(e,t){t=p.apply(this,arguments);var n=this.config();e=typeof e!=`function`&&e||{},e.name||(e.name=e.name||n.name,e.storeName=e.storeName||n.storeName);var r=this,i=e.name?new l(function(t){var i=e.name===n.name?r._dbInfo.db:openDatabase(e.name,``,``,0);e.storeName?t({db:i,storeNames:[e.storeName]}):t(Fe(i))}).then(function(e){return new l(function(t,n){e.db.transaction(function(r){function i(e){return new l(function(t,n){r.executeSql(`DROP TABLE IF EXISTS `+e,[],function(){t()},function(e,t){n(t)})})}for(var a=[],o=0,s=e.storeNames.length;o<s;o++)a.push(i(e.storeNames[o]));l.all(a).then(function(){t()}).catch(function(e){n(e)})},function(e){n(e)})})}):l.reject(`Invalid arguments`);return u(i,t),i}var Le={_driver:`webSQLStorage`,_initStorage:K,_support:L(),iterate:Oe,getItem:De,setItem:Ae,removeItem:je,clear:J,length:Me,key:Ne,keys:Pe,dropInstance:Ie};function Re(){try{return typeof localStorage<`u`&&`setItem`in localStorage&&!!localStorage.setItem}catch{return!1}}function ze(e,t){var n=e.name+`/`;return e.storeName!==t.storeName&&(n+=e.storeName+`/`),n}function Be(){var e=`_localforage_support_test`;try{return localStorage.setItem(e,!0),localStorage.removeItem(e),!1}catch{return!0}}function Ve(){return!Be()||localStorage.length>0}function He(e){var t=this,n={};if(e)for(var r in e)n[r]=e[r];return n.keyPrefix=ze(e,t._defaultConfig),Ve()?(t._dbInfo=n,n.serializer=Te,l.resolve()):l.reject()}function Ue(e){var t=this,n=t.ready().then(function(){for(var e=t._dbInfo.keyPrefix,n=localStorage.length-1;n>=0;n--){var r=localStorage.key(n);r.indexOf(e)===0&&localStorage.removeItem(r)}});return u(n,e),n}function We(e,t){var n=this;e=f(e);var r=n.ready().then(function(){var t=n._dbInfo,r=localStorage.getItem(t.keyPrefix+e);return r&&=t.serializer.deserialize(r),r});return u(r,t),r}function Ge(e,t){var n=this,r=n.ready().then(function(){for(var t=n._dbInfo,r=t.keyPrefix,i=r.length,a=localStorage.length,o=1,s=0;s<a;s++){var c=localStorage.key(s);if(c.indexOf(r)===0){var l=localStorage.getItem(c);if(l&&=t.serializer.deserialize(l),l=e(l,c.substring(i),o++),l!==void 0)return l}}});return u(r,t),r}function Ke(e,t){var n=this,r=n.ready().then(function(){var t=n._dbInfo,r;try{r=localStorage.key(e)}catch{r=null}return r&&=r.substring(t.keyPrefix.length),r});return u(r,t),r}function qe(e){var t=this,n=t.ready().then(function(){for(var e=t._dbInfo,n=localStorage.length,r=[],i=0;i<n;i++){var a=localStorage.key(i);a.indexOf(e.keyPrefix)===0&&r.push(a.substring(e.keyPrefix.length))}return r});return u(n,e),n}function Y(e){var t=this.keys().then(function(e){return e.length});return u(t,e),t}function Je(e,t){var n=this;e=f(e);var r=n.ready().then(function(){var t=n._dbInfo;localStorage.removeItem(t.keyPrefix+e)});return u(r,t),r}function Ye(e,t,n){var r=this;e=f(e);var i=r.ready().then(function(){t===void 0&&(t=null);var n=t;return new l(function(i,a){var o=r._dbInfo;o.serializer.serialize(t,function(t,r){if(r)a(r);else try{localStorage.setItem(o.keyPrefix+e,t),i(n)}catch(e){(e.name===`QuotaExceededError`||e.name===`NS_ERROR_DOM_QUOTA_REACHED`)&&a(e),a(e)}})})});return u(i,n),i}function Xe(e,t){if(t=p.apply(this,arguments),e=typeof e!=`function`&&e||{},!e.name){var n=this.config();e.name=e.name||n.name,e.storeName=e.storeName||n.storeName}var r=this,i=e.name?new l(function(t){e.storeName?t(ze(e,r._defaultConfig)):t(e.name+`/`)}).then(function(e){for(var t=localStorage.length-1;t>=0;t--){var n=localStorage.key(t);n.indexOf(e)===0&&localStorage.removeItem(n)}}):l.reject(`Invalid arguments`);return u(i,t),i}var Ze={_driver:`localStorageWrapper`,_initStorage:He,_support:Re(),iterate:Ge,getItem:We,setItem:Ye,removeItem:Je,clear:Ue,length:Y,key:Ke,keys:qe,dropInstance:Xe},Qe=function(e,t){return e===t||typeof e==`number`&&typeof t==`number`&&isNaN(e)&&isNaN(t)},$e=function(e,t){for(var n=e.length,r=0;r<n;){if(Qe(e[r],t))return!0;r++}return!1},et=Array.isArray||function(e){return Object.prototype.toString.call(e)===`[object Array]`},tt={},nt={},rt={INDEXEDDB:I,WEBSQL:Le,LOCALSTORAGE:Ze},it=[rt.INDEXEDDB._driver,rt.WEBSQL._driver,rt.LOCALSTORAGE._driver],at=[`dropInstance`],ot=[`clear`,`getItem`,`iterate`,`key`,`keys`,`length`,`removeItem`,`setItem`].concat(at),st={description:``,driver:it.slice(),name:`localforage`,size:4980736,storeName:`keyvaluepairs`,version:1};function ct(e,t){e[t]=function(){var n=arguments;return e.ready().then(function(){return e[t].apply(e,n)})}}function lt(){for(var e=1;e<arguments.length;e++){var t=arguments[e];if(t)for(var n in t)t.hasOwnProperty(n)&&(et(t[n])?arguments[0][n]=t[n].slice():arguments[0][n]=t[n])}return arguments[0]}t.exports=new(function(){function e(t){for(var n in i(this,e),rt)if(rt.hasOwnProperty(n)){var r=rt[n],a=r._driver;this[n]=a,tt[a]||this.defineDriver(r)}this._defaultConfig=lt({},st),this._config=lt({},this._defaultConfig,t),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(function(){})}return e.prototype.config=function(e){if((e===void 0?`undefined`:r(e))===`object`){if(this._ready)return Error(`Can't call config() after localforage has been used.`);for(var t in e){if(t===`storeName`&&(e[t]=e[t].replace(/\W/g,`_`)),t===`version`&&typeof e[t]!=`number`)return Error(`Database version must be a number.`);this._config[t]=e[t]}return`driver`in e&&e.driver?this.setDriver(this._config.driver):!0}else if(typeof e==`string`)return this._config[e];else return this._config},e.prototype.defineDriver=function(e,t,n){var r=new l(function(t,n){try{var r=e._driver,i=Error(`Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver`);if(!e._driver){n(i);return}for(var a=ot.concat(`_initStorage`),o=0,s=a.length;o<s;o++){var c=a[o];if((!$e(at,c)||e[c])&&typeof e[c]!=`function`){n(i);return}}(function(){for(var t=function(e){return function(){var t=Error(`Method `+e+` is not implemented by the current driver`),n=l.reject(t);return u(n,arguments[arguments.length-1]),n}},n=0,r=at.length;n<r;n++){var i=at[n];e[i]||(e[i]=t(i))}})();var d=function(n){tt[r]&&console.info(`Redefining LocalForage driver: `+r),tt[r]=e,nt[r]=n,t()};`_support`in e?e._support&&typeof e._support==`function`?e._support().then(d,n):d(!!e._support):d(!0)}catch(e){n(e)}});return d(r,t,n),r},e.prototype.driver=function(){return this._driver||null},e.prototype.getDriver=function(e,t,n){var r=tt[e]?l.resolve(tt[e]):l.reject(Error(`Driver not found.`));return d(r,t,n),r},e.prototype.getSerializer=function(e){var t=l.resolve(Te);return d(t,e),t},e.prototype.ready=function(e){var t=this,n=t._driverSet.then(function(){return t._ready===null&&(t._ready=t._initDriver()),t._ready});return d(n,e,e),n},e.prototype.setDriver=function(e,t,n){var r=this;et(e)||(e=[e]);var i=this._getSupportedDrivers(e);function a(){r._config.driver=r.driver()}function o(e){return r._extend(e),a(),r._ready=r._initStorage(r._config),r._ready}function s(e){return function(){var t=0;function n(){for(;t<e.length;){var i=e[t];return t++,r._dbInfo=null,r._ready=null,r.getDriver(i).then(o).catch(n)}a();var s=Error(`No available storage method found.`);return r._driverSet=l.reject(s),r._driverSet}return n()}}return this._driverSet=(this._driverSet===null?l.resolve():this._driverSet.catch(function(){return l.resolve()})).then(function(){var e=i[0];return r._dbInfo=null,r._ready=null,r.getDriver(e).then(function(e){r._driver=e._driver,a(),r._wrapLibraryMethodsWithReady(),r._initDriver=s(i)})}).catch(function(){a();var e=Error(`No available storage method found.`);return r._driverSet=l.reject(e),r._driverSet}),d(this._driverSet,t,n),this._driverSet},e.prototype.supports=function(e){return!!nt[e]},e.prototype._extend=function(e){lt(this,e)},e.prototype._getSupportedDrivers=function(e){for(var t=[],n=0,r=e.length;n<r;n++){var i=e[n];this.supports(i)&&t.push(i)}return t},e.prototype._wrapLibraryMethodsWithReady=function(){for(var e=0,t=ot.length;e<t;e++)ct(this,ot[e])},e.prototype.createInstance=function(t){return new e(t)},e}())},{3:3}]},{},[4])(4)})}));function S(e,t){typeof console<`u`&&(console.warn(`[intlify] `+e),t&&console.warn(t.stack))}var C=typeof window<`u`,w=(e,t=!1)=>t?Symbol.for(e):Symbol(e),T=(e,t,n)=>E({l:e,k:t,s:n}),E=e=>JSON.stringify(e).replace(/\u2028/g,`\\u2028`).replace(/\u2029/g,`\\u2029`).replace(/\u0027/g,`\\u0027`),D=e=>typeof e==`number`&&isFinite(e),O=e=>fe(e)===`[object Date]`,ee=e=>fe(e)===`[object RegExp]`,k=e=>V(e)&&Object.keys(e).length===0,A=Object.assign,te=Object.create,j=(e=null)=>te(e),ne,M=()=>ne||=typeof globalThis<`u`?globalThis:typeof self<`u`?self:typeof window<`u`?window:typeof global<`u`?global:j();function re(e){return e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`).replace(/'/g,`&apos;`).replace(/\//g,`&#x2F;`).replace(/=/g,`&#x3D;`)}function ie(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,`&amp;`).replace(/"/g,`&quot;`).replace(/'/g,`&apos;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`)}var ae=/^\s*javascript\s*(?::|&#0*58;?|&#x0*3a;?|&colon;?)/i,oe=/^(?:href|src|action|formaction)$/i;function se(e){return ae.test(e)}function ce(e){let t=/url\s*\(/gi,n=``,r=0,i;for(;(i=t.exec(e))!==null;){let a=i.index,o=t.lastIndex-1,s=o+1,c=1,l=null;for(;s<e.length;s++){let t=e[s];if(l){t===l&&(l=null);continue}if(t===`"`||t===`'`)l=t;else if(t===`(`)c++;else if(t===`)`&&(c--,c===0))break}if(c!==0)break;let u=e.slice(o+1,s).trim(),d=u.startsWith(`"`)&&u.endsWith(`"`)||u.startsWith(`'`)&&u.endsWith(`'`)?u.slice(1,-1).trim():u;n+=e.slice(r,a),n+=se(d)?`url(about:blank)`:e.slice(a,s+1),r=s+1}return n+e.slice(r)}function N(e,t){return oe.test(e)&&se(t)?`about:blank`:ie(e.toLowerCase()===`style`?ce(t):t)}function le(e){return e=e.replace(/([\w:-]+)\s*=\s*"([^"]*)"/g,(e,t,n)=>`${t}="${N(t,n)}"`),e=e.replace(/([\w:-]+)\s*=\s*'([^']*)'/g,(e,t,n)=>`${t}='${N(t,n)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(e)&&(e=e.replace(/(\s+)(on)(\w+\s*=)/gi,`$1&#111;n$3`)),e=e.replace(/(\s+(?:href|src|action|formaction)\s*=\s*)([^\s"'=<>`]+)/gi,(e,t,n)=>se(n)?`${t}about:blank`:e),e}var ue=Object.prototype.hasOwnProperty;function P(e,t){return ue.call(e,t)}var F=Array.isArray,I=e=>typeof e==`function`,L=e=>typeof e==`string`,R=e=>typeof e==`boolean`,z=e=>typeof e==`object`&&!!e,de=e=>z(e)&&I(e.then)&&I(e.catch),B=Object.prototype.toString,fe=e=>B.call(e),V=e=>fe(e)===`[object Object]`,pe=e=>e==null?``:F(e)||V(e)&&e.toString===B?JSON.stringify(e,null,2):String(e);function me(e,t=``){return e.reduce((e,n,r)=>r===0?e+n:e+t+n,``)}var he=e=>!z(e)||F(e);function ge(e,t){if(he(e)||he(t))throw Error(`Invalid value`);let n=[{src:e,des:t}];for(;n.length;){let{src:e,des:t}=n.pop();Object.keys(e).forEach(r=>{r!==`__proto__`&&(z(e[r])&&!z(t[r])&&(t[r]=Array.isArray(e[r])?[]:j()),he(t[r])||he(e[r])?t[r]=e[r]:n.push({src:e[r],des:t[r]}))})}}function _e(e,t,n){return{line:e,column:t,offset:n}}function ve(e,t,n){let r={start:e,end:t};return n!=null&&(r.source=n),r}var H={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16};H.EXPECTED_TOKEN,H.INVALID_TOKEN_IN_PLACEHOLDER,H.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,H.UNKNOWN_ESCAPE_SEQUENCE,H.INVALID_UNICODE_ESCAPE_SEQUENCE,H.UNBALANCED_CLOSING_BRACE,H.UNTERMINATED_CLOSING_BRACE,H.EMPTY_PLACEHOLDER,H.NOT_ALLOW_NEST_PLACEHOLDER,H.INVALID_LINKED_FORMAT,H.MUST_HAVE_MESSAGES_IN_PLURAL,H.UNEXPECTED_EMPTY_LINKED_MODIFIER,H.UNEXPECTED_EMPTY_LINKED_KEY,H.UNEXPECTED_LEXICAL_ANALYSIS,H.UNHANDLED_CODEGEN_NODE_TYPE,H.UNHANDLED_MINIFIER_NODE_TYPE;function ye(e,t,n={}){let{domain:r,messages:i,args:a}=n,o=e,s=SyntaxError(String(o));return s.code=e,t&&(s.location=t),s.domain=r,s}function be(e){throw e}var U=` `,xe=`\r`,W=`
`,Se=`\u2028`,Ce=`\u2029`;function we(e){let t=e,n=0,r=1,i=1,a=0,o=e=>t[e]===xe&&t[e+1]===W,s=e=>t[e]===W,c=e=>t[e]===Ce,l=e=>t[e]===Se,u=e=>o(e)||s(e)||c(e)||l(e),d=()=>n,f=()=>r,p=()=>i,m=()=>a,h=e=>o(e)||c(e)||l(e)?W:t[e],g=()=>h(n),_=()=>h(n+a);function v(){return a=0,u(n)&&(r++,i=0),o(n)&&n++,n++,i++,t[n]}function y(){return o(n+a)&&a++,a++,t[n+a]}function b(){n=0,r=1,i=1,a=0}function x(e=0){a=e}function S(){let e=n+a;for(;e!==n;)v();a=0}return{index:d,line:f,column:p,peekOffset:m,charAt:h,currentChar:g,currentPeek:_,next:v,peek:y,reset:b,resetPeek:x,skipToPeek:S}}var G=void 0,Te=`'`,Ee=`tokenizer`;function K(e,t={}){let n=t.location!==!1,r=we(e),i=()=>r.index(),a=()=>_e(r.line(),r.column(),r.index()),o=a(),s=i(),c={currentType:13,offset:s,startLoc:o,endLoc:o,lastType:13,lastOffset:s,lastStartLoc:o,lastEndLoc:o,braceNest:0,inLinked:!1,text:``},l=()=>c,{onError:u}=t;function d(e,t,r,...i){let a=l();t.column+=r,t.offset+=r,u&&u(ye(e,n?ve(a.startLoc,t):null,{domain:Ee,args:i}))}function f(e,t,r){e.endLoc=a(),e.currentType=t;let i={type:t};return n&&(i.loc=ve(e.startLoc,e.endLoc)),r!=null&&(i.value=r),i}let p=e=>f(e,13);function m(e,t){return e.currentChar()===t?(e.next(),t):(d(H.EXPECTED_TOKEN,a(),0,t),``)}function h(e){let t=``;for(;e.currentPeek()===U||e.currentPeek()===W;)t+=e.currentPeek(),e.peek();return t}function g(e){let t=h(e);return e.skipToPeek(),t}function _(e){if(e===G)return!1;let t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t===95}function v(e){if(e===G)return!1;let t=e.charCodeAt(0);return t>=48&&t<=57}function y(e,t){let{currentType:n}=t;if(n!==2)return!1;h(e);let r=_(e.currentPeek());return e.resetPeek(),r}function b(e,t){let{currentType:n}=t;if(n!==2)return!1;h(e);let r=v(e.currentPeek()===`-`?e.peek():e.currentPeek());return e.resetPeek(),r}function x(e,t){let{currentType:n}=t;if(n!==2)return!1;h(e);let r=e.currentPeek()===Te;return e.resetPeek(),r}function S(e,t){let{currentType:n}=t;if(n!==7)return!1;h(e);let r=e.currentPeek()===`.`;return e.resetPeek(),r}function C(e,t){let{currentType:n}=t;if(n!==8)return!1;h(e);let r=_(e.currentPeek());return e.resetPeek(),r}function w(e,t){let{currentType:n}=t;if(!(n===7||n===11))return!1;h(e);let r=e.currentPeek()===`:`;return e.resetPeek(),r}function T(e,t){let{currentType:n}=t;if(n!==9)return!1;let r=()=>{let t=e.currentPeek();return t===`{`?_(e.peek()):t===`@`||t===`|`||t===`:`||t===`.`||t===U||!t?!1:t===W?(e.peek(),r()):D(e,!1)},i=r();return e.resetPeek(),i}function E(e){h(e);let t=e.currentPeek()===`|`;return e.resetPeek(),t}function D(e,t=!0){let n=(t=!1,r=``)=>{let i=e.currentPeek();return i===`{`||i===`@`||!i?t:i===`|`?!(r===U||r===W):i===U?(e.peek(),n(!0,U)):i===W?(e.peek(),n(!0,W)):!0},r=n();return t&&e.resetPeek(),r}function O(e,t){let n=e.currentChar();return n===G?G:t(n)?(e.next(),n):null}function ee(e){let t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||t===95||t===36}function k(e){return O(e,ee)}function A(e){let t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||t===95||t===36||t===45}function te(e){return O(e,A)}function j(e){let t=e.charCodeAt(0);return t>=48&&t<=57}function ne(e){return O(e,j)}function M(e){let t=e.charCodeAt(0);return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}function re(e){return O(e,M)}function ie(e){let t=``,n=``;for(;t=ne(e);)n+=t;return n}function ae(e){let t=``;for(;;){let n=e.currentChar();if(n===`\\`){let r=e.peek();r===`{`||r===`}`||r===`@`||r===`|`||r===`\\`?(t+=n+r,e.next(),e.next()):(e.resetPeek(),t+=n,e.next())}else if(n===`{`||n===`}`||n===`@`||n===`|`||!n)break;else if(n===U||n===W)if(D(e))t+=n,e.next();else if(E(e))break;else t+=n,e.next();else t+=n,e.next()}return t}function oe(e){g(e);let t=``,n=``;for(;t=te(e);)n+=t;let r=e.currentChar();if(r&&r!==`}`&&r!==G&&r!==U&&r!==W&&r!==` `){let t=F(e);return d(H.INVALID_TOKEN_IN_PLACEHOLDER,a(),0,n+t),n+t}return e.currentChar()===G&&d(H.UNTERMINATED_CLOSING_BRACE,a(),0),n}function se(e){g(e);let t=``;return e.currentChar()===`-`?(e.next(),t+=`-${ie(e)}`):t+=ie(e),e.currentChar()===G&&d(H.UNTERMINATED_CLOSING_BRACE,a(),0),t}function ce(e){return e!==Te&&e!==W}function N(e){g(e),m(e,`'`);let t=``,n=``;for(;t=O(e,ce);)t===`\\`?n+=le(e):n+=t;let r=e.currentChar();return r===W||r===G?(d(H.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,a(),0),r===W&&(e.next(),m(e,`'`)),n):(m(e,`'`),n)}function le(e){let t=e.currentChar();switch(t){case`\\`:case`'`:return e.next(),`\\${t}`;case`u`:return ue(e,t,4);case`U`:return ue(e,t,6);default:return d(H.UNKNOWN_ESCAPE_SEQUENCE,a(),0,t),``}}function ue(e,t,n){m(e,t);let r=``;for(let i=0;i<n;i++){let n=re(e);if(!n){d(H.INVALID_UNICODE_ESCAPE_SEQUENCE,a(),0,`\\${t}${r}${e.currentChar()}`);break}r+=n}return`\\${t}${r}`}function P(e){return e!==`{`&&e!==`}`&&e!==U&&e!==W}function F(e){g(e);let t=``,n=``;for(;t=O(e,P);)n+=t;return n}function I(e){let t=``,n=``;for(;t=k(e);)n+=t;return n}function L(e){let t=n=>{let r=e.currentChar();return r===`{`||r===`@`||r===`|`||r===`(`||r===`)`||!r||r===U?n:(n+=r,e.next(),t(n))};return t(``)}function R(e){g(e);let t=m(e,`|`);return g(e),t}function z(e,t){let n=null;switch(e.currentChar()){case`{`:return t.braceNest>=1&&d(H.NOT_ALLOW_NEST_PLACEHOLDER,a(),0),e.next(),n=f(t,2,`{`),g(e),t.braceNest++,n;case`}`:return t.braceNest>0&&t.currentType===2&&d(H.EMPTY_PLACEHOLDER,a(),0),e.next(),n=f(t,3,`}`),t.braceNest--,t.braceNest>0&&g(e),t.inLinked&&t.braceNest===0&&(t.inLinked=!1),n;case`@`:return t.braceNest>0&&d(H.UNTERMINATED_CLOSING_BRACE,a(),0),n=de(e,t)||p(t),t.braceNest=0,n;default:{let r=!0,i=!0,o=!0;if(E(e))return t.braceNest>0&&d(H.UNTERMINATED_CLOSING_BRACE,a(),0),n=f(t,1,R(e)),t.braceNest=0,t.inLinked=!1,n;if(t.braceNest>0&&(t.currentType===4||t.currentType===5||t.currentType===6))return d(H.UNTERMINATED_CLOSING_BRACE,a(),0),t.braceNest=0,B(e,t);if(r=y(e,t))return n=f(t,4,oe(e)),g(e),n;if(i=b(e,t))return n=f(t,5,se(e)),g(e),n;if(o=x(e,t))return n=f(t,6,N(e)),g(e),n;if(!r&&!i&&!o)return n=f(t,12,F(e)),d(H.INVALID_TOKEN_IN_PLACEHOLDER,a(),0,n.value),g(e),n;break}}return n}function de(e,t){let{currentType:n}=t,r=null,i=e.currentChar();switch((n===7||n===8||n===11||n===9)&&(i===W||i===U)&&d(H.INVALID_LINKED_FORMAT,a(),0),i){case`@`:return e.next(),r=f(t,7,`@`),t.inLinked=!0,r;case`.`:return g(e),e.next(),f(t,8,`.`);case`:`:return g(e),e.next(),f(t,9,`:`);default:return E(e)?(r=f(t,1,R(e)),t.braceNest=0,t.inLinked=!1,r):S(e,t)||w(e,t)?(g(e),de(e,t)):C(e,t)?(g(e),f(t,11,I(e))):T(e,t)?(g(e),i===`{`?z(e,t)||r:f(t,10,L(e))):(n===7&&d(H.INVALID_LINKED_FORMAT,a(),0),t.braceNest=0,t.inLinked=!1,B(e,t))}}function B(e,t){let n={type:13};if(t.braceNest>0)return z(e,t)||p(t);if(t.inLinked)return de(e,t)||p(t);switch(e.currentChar()){case`{`:return z(e,t)||p(t);case`}`:return d(H.UNBALANCED_CLOSING_BRACE,a(),0),e.next(),f(t,3,`}`);case`@`:return de(e,t)||p(t);default:if(E(e))return n=f(t,1,R(e)),t.braceNest=0,t.inLinked=!1,n;if(D(e))return f(t,0,ae(e));break}return n}function fe(){let{currentType:e,offset:t,startLoc:n,endLoc:o}=c;return c.lastType=e,c.lastOffset=t,c.lastStartLoc=n,c.lastEndLoc=o,c.offset=i(),c.startLoc=a(),r.currentChar()===G?f(c,13):B(r,c)}return{nextToken:fe,currentOffset:i,currentPosition:a,context:l}}var q=`parser`,De=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g,Oe=/\\([\\@{}|])/g;function ke(e,t){return t}function Ae(e,t,n){switch(e){case`\\\\`:return`\\`;case`\\'`:return`'`;default:{let e=parseInt(t||n,16);return e<=55295||e>=57344?String.fromCodePoint(e):`<EFBFBD>`}}}function je(e={}){let t=e.location!==!1,{onError:n}=e;function r(e,r,i,a,...o){let s=e.currentPosition();s.offset+=a,s.column+=a,n&&n(ye(r,t?ve(i,s):null,{domain:q,args:o}))}function i(e,n,r){let i={type:e};return t&&(i.start=n,i.end=n,i.loc={start:r,end:r}),i}function a(e,n,r,i){t&&(e.end=n,e.loc&&(e.loc.end=r))}function o(e,t){let n=e.context(),r=i(3,n.offset,n.startLoc);return r.value=t.replace(Oe,ke),a(r,e.currentOffset(),e.currentPosition()),r}function s(e,t){let{lastOffset:n,lastStartLoc:r}=e.context(),o=i(5,n,r);return o.index=parseInt(t,10),e.nextToken(),a(o,e.currentOffset(),e.currentPosition()),o}function c(e,t){let{lastOffset:n,lastStartLoc:r}=e.context(),o=i(4,n,r);return o.key=t,e.nextToken(),a(o,e.currentOffset(),e.currentPosition()),o}function l(e,t){let{lastOffset:n,lastStartLoc:r}=e.context(),o=i(9,n,r);return o.value=t.replace(De,Ae),e.nextToken(),a(o,e.currentOffset(),e.currentPosition()),o}function u(e){let t=e.nextToken(),n=e.context(),{lastOffset:o,lastStartLoc:s}=n,c=i(8,o,s);return t.type===11?(t.value??r(e,H.UNEXPECTED_LEXICAL_ANALYSIS,n.lastStartLoc,0,J(t)),c.value=t.value||``,a(c,e.currentOffset(),e.currentPosition()),{node:c}):(r(e,H.UNEXPECTED_EMPTY_LINKED_MODIFIER,n.lastStartLoc,0),c.value=``,a(c,o,s),{nextConsumeToken:t,node:c})}function d(e,t){let n=e.context(),r=i(7,n.offset,n.startLoc);return r.value=t,a(r,e.currentOffset(),e.currentPosition()),r}function f(e){let t=e.context(),n=i(6,t.offset,t.startLoc),o=e.nextToken();if(o.type===8){let t=u(e);n.modifier=t.node,o=t.nextConsumeToken||e.nextToken()}switch(o.type!==9&&r(e,H.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,0,J(o)),o=e.nextToken(),o.type===2&&(o=e.nextToken()),o.type){case 10:o.value??r(e,H.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,0,J(o)),n.key=d(e,o.value||``);break;case 4:o.value??r(e,H.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,0,J(o)),n.key=c(e,o.value||``);break;case 5:o.value??r(e,H.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,0,J(o)),n.key=s(e,o.value||``);break;case 6:o.value??r(e,H.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,0,J(o)),n.key=l(e,o.value||``);break;default:{r(e,H.UNEXPECTED_EMPTY_LINKED_KEY,t.lastStartLoc,0);let s=e.context(),c=i(7,s.offset,s.startLoc);return c.value=``,a(c,s.offset,s.startLoc),n.key=c,a(n,s.offset,s.startLoc),{nextConsumeToken:o,node:n}}}return a(n,e.currentOffset(),e.currentPosition()),{node:n}}function p(e){let t=e.context(),n=i(2,t.currentType===1?e.currentOffset():t.offset,t.currentType===1?t.endLoc:t.startLoc);n.items=[];let u=null;do{let i=u||e.nextToken();switch(u=null,i.type){case 0:i.value??r(e,H.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,0,J(i)),n.items.push(o(e,i.value||``));break;case 5:i.value??r(e,H.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,0,J(i)),n.items.push(s(e,i.value||``));break;case 4:i.value??r(e,H.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,0,J(i)),n.items.push(c(e,i.value||``));break;case 6:i.value??r(e,H.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,0,J(i)),n.items.push(l(e,i.value||``));break;case 7:{let t=f(e);n.items.push(t.node),u=t.nextConsumeToken||null;break}}}while(t.currentType!==13&&t.currentType!==1);return a(n,t.currentType===1?t.lastOffset:e.currentOffset(),t.currentType===1?t.lastEndLoc:e.currentPosition()),n}function m(e,t,n,o){let s=e.context(),c=o.items.length===0,l=i(1,t,n);l.cases=[],l.cases.push(o);do{let t=p(e);c||=t.items.length===0,l.cases.push(t)}while(s.currentType!==13);return c&&r(e,H.MUST_HAVE_MESSAGES_IN_PLURAL,n,0),a(l,e.currentOffset(),e.currentPosition()),l}function h(e){let t=e.context(),{offset:n,startLoc:r}=t,i=p(e);return t.currentType===13?i:m(e,n,r,i)}function g(n){let o=K(n,A({},e)),s=o.context(),c=i(0,s.offset,s.startLoc);return t&&c.loc&&(c.loc.source=n),c.body=h(o),e.onCacheKey&&(c.cacheKey=e.onCacheKey(n)),s.currentType!==13&&r(o,H.UNEXPECTED_LEXICAL_ANALYSIS,s.lastStartLoc,0,n[s.offset]||``),a(c,o.currentOffset(),o.currentPosition()),c}return{parse:g}}function J(e){if(e.type===13)return`EOF`;let t=(e.value||``).replace(/\r?\n/gu,`\\n`);return t.length>10?t.slice(0,9)+``:t}function Me(e,t={}){let n={ast:e,helpers:new Set};return{context:()=>n,helper:e=>(n.helpers.add(e),e)}}function Ne(e,t){for(let n=0;n<e.length;n++)Pe(e[n],t)}function Pe(e,t){switch(e.type){case 1:Ne(e.cases,t),t.helper(`plural`);break;case 2:Ne(e.items,t);break;case 6:Pe(e.key,t),t.helper(`linked`),t.helper(`type`);break;case 5:t.helper(`interpolate`),t.helper(`list`);break;case 4:t.helper(`interpolate`),t.helper(`named`);break}}function Fe(e,t={}){let n=Me(e);n.helper(`normalize`),e.body&&Pe(e.body,n);let r=n.context();e.helpers=Array.from(r.helpers)}function Ie(e){let t=e.body;return t.type===2?Le(t):t.cases.forEach(e=>Le(e)),e}function Le(e){if(e.items.length===1){let t=e.items[0];(t.type===3||t.type===9)&&(e.static=t.value,delete t.value)}else{let t=[];for(let n=0;n<e.items.length;n++){let r=e.items[n];if(!(r.type===3||r.type===9)||r.value==null)break;t.push(r.value)}if(t.length===e.items.length){e.static=me(t);for(let t=0;t<e.items.length;t++){let n=e.items[t];(n.type===3||n.type===9)&&delete n.value}}}}function Re(e){switch(e.t=e.type,e.type){case 0:{let t=e;Re(t.body),t.b=t.body,delete t.body;break}case 1:{let t=e,n=t.cases;for(let e=0;e<n.length;e++)Re(n[e]);t.c=n,delete t.cases;break}case 2:{let t=e,n=t.items;for(let e=0;e<n.length;e++)Re(n[e]);t.i=n,delete t.items,t.static&&(t.s=t.static,delete t.static);break}case 3:case 9:case 8:case 7:{let t=e;t.value&&(t.v=t.value,delete t.value);break}case 6:{let t=e;Re(t.key),t.k=t.key,delete t.key,t.modifier&&(Re(t.modifier),t.m=t.modifier,delete t.modifier);break}case 5:{let t=e;t.i=t.index,delete t.index;break}case 4:{let t=e;t.k=t.key,delete t.key;break}default:}delete e.type}function ze(e,t){let{filename:n,breakLineCode:r,needIndent:i}=t,a=t.location!==!1,o={filename:n,code:``,column:1,line:1,offset:0,map:void 0,breakLineCode:r,needIndent:i,indentLevel:0};a&&e.loc&&(o.source=e.loc.source);let s=()=>o;function c(e,t){o.code+=e}function l(e,t=!0){let n=t?r:``;c(i?n+` `.repeat(e):n)}function u(e=!0){let t=++o.indentLevel;e&&l(t)}function d(e=!0){let t=--o.indentLevel;e&&l(t)}function f(){l(o.indentLevel)}return{context:s,push:c,indent:u,deindent:d,newline:f,helper:e=>`_${e}`,needIndent:()=>o.needIndent}}function Be(e,t){let{helper:n}=e;e.push(`${n(`linked`)}(`),We(e,t.key),t.modifier?(e.push(`, `),We(e,t.modifier),e.push(`, _type`)):e.push(`, undefined, _type`),e.push(`)`)}function Ve(e,t){let{helper:n,needIndent:r}=e;e.push(`${n(`normalize`)}([`),e.indent(r());let i=t.items.length;for(let n=0;n<i&&(We(e,t.items[n]),n!==i-1);n++)e.push(`, `);e.deindent(r()),e.push(`])`)}function He(e,t){let{helper:n,needIndent:r}=e;if(t.cases.length>1){e.push(`${n(`plural`)}([`),e.indent(r());let i=t.cases.length;for(let n=0;n<i&&(We(e,t.cases[n]),n!==i-1);n++)e.push(`, `);e.deindent(r()),e.push(`])`)}}function Ue(e,t){t.body?We(e,t.body):e.push(`null`)}function We(e,t){let{helper:n}=e;switch(t.type){case 0:Ue(e,t);break;case 1:He(e,t);break;case 2:Ve(e,t);break;case 6:Be(e,t);break;case 8:e.push(JSON.stringify(t.value),t);break;case 7:e.push(JSON.stringify(t.value),t);break;case 5:e.push(`${n(`interpolate`)}(${n(`list`)}(${t.index}))`,t);break;case 4:e.push(`${n(`interpolate`)}(${n(`named`)}(${JSON.stringify(t.key)}))`,t);break;case 9:e.push(JSON.stringify(t.value),t);break;case 3:e.push(JSON.stringify(t.value),t);break;default:}}var Ge=(e,t={})=>{let n=L(t.mode)?t.mode:`normal`,r=L(t.filename)?t.filename:`message.intl`;t.sourceMap;let i=t.breakLineCode==null?n===`arrow`?`;`:`
`:t.breakLineCode,a=t.needIndent?t.needIndent:n!==`arrow`,o=e.helpers||[],s=ze(e,{filename:r,breakLineCode:i,needIndent:a});s.push(n===`normal`?`function __msg__ (ctx) {`:`(ctx) => {`),s.indent(a),o.length>0&&(s.push(`const { ${me(o.map(e=>`${e}: _${e}`),`, `)} } = ctx`),s.newline()),s.push(`return `),We(s,e),s.deindent(a),s.push(`}`),delete e.helpers;let{code:c,map:l}=s.context();return{ast:e,code:c,map:l?l.toJSON():void 0}};function Ke(e,t={}){let n=A({},t),r=!!n.jit,i=!!n.minify,a=n.optimize==null?!0:n.optimize,o=je(n).parse(e);return r?(a&&Ie(o),i&&Re(o),{ast:o,code:``}):(Fe(o,n),Ge(o,n))}function qe(){typeof __INTLIFY_PROD_DEVTOOLS__!=`boolean`&&(M().__INTLIFY_PROD_DEVTOOLS__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!=`boolean`&&(M().__INTLIFY_DROP_MESSAGE_COMPILER__=!1)}function Y(e){return z(e)&&rt(e)===0&&(P(e,`b`)||P(e,`body`))}var Je=[`b`,`body`];function Ye(e){return ut(e,Je)}var Xe=[`c`,`cases`];function Ze(e){return ut(e,Xe,[])}var Qe=[`s`,`static`];function $e(e){return ut(e,Qe)}var et=[`i`,`items`];function tt(e){return ut(e,et,[])}var nt=[`t`,`type`];function rt(e){return ut(e,nt)}var it=[`v`,`value`];function at(e,t){let n=ut(e,it);if(n!=null)return n;throw ft(t)}var ot=[`m`,`modifier`];function st(e){return ut(e,ot)}var ct=[`k`,`key`];function lt(e){let t=ut(e,ct);if(t)return t;throw ft(6)}function ut(e,t,n){for(let n=0;n<t.length;n++){let r=t[n];if(P(e,r)&&e[r]!=null)return e[r]}return n}var dt=[...Je,...Xe,...Qe,...et,...ct,...ot,...it,...nt];function ft(e){return Error(`unhandled node type: ${e}`)}function pt(e){return t=>mt(t,e)}function mt(e,t){let n=Ye(t);if(n==null)throw ft(0);if(rt(n)===1){let t=Ze(n);return e.plural(t.reduce((t,n)=>[...t,ht(e,n)],[]))}else return ht(e,n)}function ht(e,t){let n=$e(t);if(n!=null)return e.type===`text`?n:e.normalize([n]);{let n=tt(t).reduce((t,n)=>[...t,gt(e,n)],[]);return e.normalize(n)}}function gt(e,t){let n=rt(t);switch(n){case 3:return at(t,n);case 9:return at(t,n);case 4:{let r=t;if(P(r,`k`)&&r.k)return e.interpolate(e.named(r.k));if(P(r,`key`)&&r.key)return e.interpolate(e.named(r.key));throw ft(n)}case 5:{let r=t;if(P(r,`i`)&&D(r.i))return e.interpolate(e.list(r.i));if(P(r,`index`)&&D(r.index))return e.interpolate(e.list(r.index));throw ft(n)}case 6:{let n=t,r=st(n),i=lt(n);return e.linked(gt(e,i),r?gt(e,r):void 0,e.type)}case 7:return at(t,n);case 8:return at(t,n);default:throw Error(`unhandled node on format message part: ${n}`)}}var _t=e=>e,vt=j();function yt(e,t={}){let n=!1,r=t.onError||be;return t.onError=e=>{n=!0,r(e)},{...Ke(e,t),detectError:n}}function bt(e,t){if(!__INTLIFY_DROP_MESSAGE_COMPILER__&&L(e)){R(t.warnHtmlMessage)&&t.warnHtmlMessage;let n=(t.onCacheKey||_t)(e),r=vt[n];if(r)return r;let{ast:i,detectError:a}=yt(e,{...t,location:!1,jit:!0}),o=pt(i);return a?o:vt[n]=o}else{let t=e.cacheKey;return t?vt[t]||(vt[t]=pt(e)):pt(e)}}var xt=null;function St(e){xt=e}function Ct(e,t,n){xt&&xt.emit(`i18n:init`,{timestamp:Date.now(),i18n:e,version:t,meta:n})}var wt=Tt(`function:translate`);function Tt(e){return t=>xt&&xt.emit(e,t)}var X={INVALID_ARGUMENT:17,INVALID_DATE_ARGUMENT:18,INVALID_ISO_DATE_ARGUMENT:19,NOT_SUPPORT_NON_STRING_MESSAGE:20,NOT_SUPPORT_LOCALE_PROMISE_VALUE:21,NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:22,NOT_SUPPORT_LOCALE_TYPE:23};function Et(e){return ye(e,null,void 0)}X.INVALID_ARGUMENT,X.INVALID_DATE_ARGUMENT,X.INVALID_ISO_DATE_ARGUMENT,X.NOT_SUPPORT_NON_STRING_MESSAGE,X.NOT_SUPPORT_LOCALE_PROMISE_VALUE,X.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION,X.NOT_SUPPORT_LOCALE_TYPE;function Dt(e,t){return t.locale==null?kt(e.locale):kt(t.locale)}var Ot;function kt(e){if(L(e))return e;if(I(e)){if(e.resolvedOnce&&Ot!=null)return Ot;if(e.constructor.name===`Function`){let t=e();if(de(t))throw Et(X.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return Ot=t}else throw Et(X.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw Et(X.NOT_SUPPORT_LOCALE_TYPE)}function At(e,t,n){return[...new Set([n,...F(t)?t:z(t)?Object.keys(t):L(t)?[t]:[n]])]}function jt(e,t,n){let r=L(n)?n:qt,i=e;i.__localeChainCache||=new Map;let a=i.__localeChainCache.get(r);if(!a){a=[];let e=[n];for(;F(e);)e=Mt(a,e,t);let o=F(t)||!V(t)?t:t.default?t.default:null;e=L(o)?[o]:o,F(e)&&Mt(a,e,!1),i.__localeChainCache.set(r,a)}return a}function Mt(e,t,n){let r=!0;for(let i=0;i<t.length&&R(r);i++){let a=t[i];L(a)&&(r=Nt(e,t[i],n))}return r}function Nt(e,t,n){let r,i=t.split(`-`);do r=Pt(e,i.join(`-`),n),i.splice(-1,1);while(i.length&&r===!0);return r}function Pt(e,t,n){let r=!1;if(!e.includes(t)&&(r=!0,t)){r=t[t.length-1]!==`!`;let i=t.replace(/!/g,``);e.push(i),(F(n)||V(n))&&n[i]&&(r=n[i])}return r}var Ft=[];Ft[0]={w:[0],i:[3,0],"[":[4],o:[7]},Ft[1]={w:[1],".":[2],"[":[4],o:[7]},Ft[2]={w:[2],i:[3,0],0:[3,0]},Ft[3]={i:[3,0],0:[3,0],w:[1,1],".":[2,1],"[":[4,1],o:[7,1]},Ft[4]={"'":[5,0],'"':[6,0],"[":[4,2],"]":[1,3],o:8,l:[4,0]},Ft[5]={"'":[4,0],o:8,l:[5,0]},Ft[6]={'"':[4,0],o:8,l:[6,0]};var It=/^\s?(?:true|false|-?[\d.]+|'[^']*'|"[^"]*")\s?$/;function Lt(e){return It.test(e)}function Rt(e){let t=e.charCodeAt(0);return t===e.charCodeAt(e.length-1)&&(t===34||t===39)?e.slice(1,-1):e}function zt(e){if(e==null)return`o`;switch(e.charCodeAt(0)){case 91:case 93:case 46:case 34:case 39:return e;case 95:case 36:case 45:return`i`;case 9:case 10:case 13:case 160:case 65279:case 8232:case 8233:return`w`}return`i`}function Bt(e){let t=e.trim();return e.charAt(0)===`0`&&isNaN(parseInt(e))?!1:Lt(t)?Rt(t):`*`+t}function Vt(e){let t=[],n=-1,r=0,i=0,a,o,s,c,l,u,d,f=[];f[0]=()=>{o===void 0?o=s:o+=s},f[1]=()=>{o!==void 0&&(t.push(o),o=void 0)},f[2]=()=>{f[0](),i++},f[3]=()=>{if(i>0)i--,r=4,f[0]();else{if(i=0,o===void 0||(o=Bt(o),o===!1))return!1;f[1]()}};function p(){let t=e[n+1];if(r===5&&t===`'`||r===6&&t===`"`)return n++,s=`\\`+t,f[0](),!0}for(;r!==null;)if(n++,a=e[n],!(a===`\\`&&p())){if(c=zt(a),d=Ft[r],l=d[c]||d.l||8,l===8||(r=l[0],l[1]!==void 0&&(u=f[l[1]],u&&(s=a,u()===!1))))return;if(r===7)return t}}var Ht=new Map;function Ut(e,t){return z(e)?e[t]:null}function Wt(e,t){if(!z(e))return null;let n=Ht.get(t);if(n||(n=Vt(t),n&&Ht.set(t,n)),!n)return null;let r=n.length,i=e,a=0;for(;a<r;){let e=n[a];if(dt.includes(e)&&Y(i)||!z(i)||!P(i,e))return null;let t=i[e];if(t===void 0||I(i))return null;i=t,a++}return i}var Gt={NOT_FOUND_KEY:1,FALLBACK_TO_TRANSLATE:2,CANNOT_FORMAT_NUMBER:3,FALLBACK_TO_NUMBER_FORMAT:4,CANNOT_FORMAT_DATE:5,FALLBACK_TO_DATE_FORMAT:6,EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:7,INVALID_NUMBER_ARGUMENT:8,INVALID_DATE_ARGUMENT:9};Gt.NOT_FOUND_KEY,Gt.FALLBACK_TO_TRANSLATE,Gt.CANNOT_FORMAT_NUMBER,Gt.FALLBACK_TO_NUMBER_FORMAT,Gt.CANNOT_FORMAT_DATE,Gt.FALLBACK_TO_DATE_FORMAT,Gt.EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER,Gt.INVALID_NUMBER_ARGUMENT,Gt.INVALID_DATE_ARGUMENT;var Kt=`11.4.6`,qt=`en-US`,Jt=e=>`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function Yt(){return{upper:(e,t)=>t===`text`&&L(e)?e.toUpperCase():t===`vnode`&&z(e)&&`__v_isVNode`in e?e.children.toUpperCase():e,lower:(e,t)=>t===`text`&&L(e)?e.toLowerCase():t===`vnode`&&z(e)&&`__v_isVNode`in e?e.children.toLowerCase():e,capitalize:(e,t)=>t===`text`&&L(e)?Jt(e):t===`vnode`&&z(e)&&`__v_isVNode`in e?Jt(e.children):e}}var Xt;function Zt(e){Xt=e}var Qt;function $t(e){Qt=e}var en;function tn(e){en=e}var nn=null,rn=()=>nn,an=null,on=e=>{an=e},sn=()=>an,cn=0;function ln(e={}){let t=I(e.onWarn)?e.onWarn:S,n=L(e.version)?e.version:Kt,r=L(e.locale)||I(e.locale)?e.locale:qt,i=I(r)?qt:r,a=F(e.fallbackLocale)||V(e.fallbackLocale)||L(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:i,o=V(e.messages)?e.messages:un(i),s=V(e.datetimeFormats)?e.datetimeFormats:un(i),c=V(e.numberFormats)?e.numberFormats:un(i),l=A(j(),e.modifiers,Yt()),u=e.pluralRules||j(),d=I(e.missing)?e.missing:null,f=R(e.missingWarn)||ee(e.missingWarn)?e.missingWarn:!0,p=R(e.fallbackWarn)||ee(e.fallbackWarn)?e.fallbackWarn:!0,m=!!e.fallbackFormat,h=!!e.unresolving,g=I(e.postTranslation)?e.postTranslation:null,_=V(e.processor)?e.processor:null,v=R(e.warnHtmlMessage)?e.warnHtmlMessage:!0,y=!!e.escapeParameter,b=I(e.messageCompiler)?e.messageCompiler:Xt,x=I(e.messageResolver)?e.messageResolver:Qt||Ut,C=I(e.localeFallbacker)?e.localeFallbacker:en||At,w=z(e.fallbackContext)?e.fallbackContext:void 0,T=e,E=z(T.__datetimeFormatters)?T.__datetimeFormatters:new Map,D=z(T.__numberFormatters)?T.__numberFormatters:new Map,O=z(T.__meta)?T.__meta:{};cn++;let k={version:n,cid:cn,locale:r,fallbackLocale:a,messages:o,modifiers:l,pluralRules:u,missing:d,missingWarn:f,fallbackWarn:p,fallbackFormat:m,unresolving:h,postTranslation:g,processor:_,warnHtmlMessage:v,escapeParameter:y,messageCompiler:b,messageResolver:x,localeFallbacker:C,fallbackContext:w,onWarn:t,__meta:O};return k.datetimeFormats=s,k.numberFormats=c,k.__datetimeFormatters=E,k.__numberFormatters=D,__INTLIFY_PROD_DEVTOOLS__&&Ct(k,n,O),k}var un=e=>({[e]:j()});function dn(e,t,n,r,i){let{missing:a,onWarn:o}=e;if(a!==null){let r=a(e,n,t,i);return L(r)?r:t}else return t}function fn(e,t,n){let r=e;r.__localeChainCache=new Map,e.localeFallbacker(e,n,t)}function pn(e,t){return e===t?!1:e.split(`-`)[0]===t.split(`-`)[0]}function mn(e,t){let n=t.indexOf(e);if(n===-1)return!1;for(let r=n+1;r<t.length;r++)if(pn(e,t[r]))return!0;return!1}var hn=typeof Intl<`u`;hn&&Intl.DateTimeFormat,hn&&Intl.NumberFormat;function gn(e,...t){let{datetimeFormats:n,unresolving:r,fallbackLocale:i,onWarn:a,localeFallbacker:o}=e,{__datetimeFormatters:s}=e;if(!L(t[0])&&!O(t[0])&&!D(t[0]))return``;let[c,l,u,d]=vn(...t),f=R(u.missingWarn)?u.missingWarn:e.missingWarn;R(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;let p=!!u.part,m=Dt(e,u),h=o(e,i,m);if(!L(c)||c===``){let e=new Intl.DateTimeFormat(m.replace(/!/g,``),d);return p?e.formatToParts(l):e.format(l)}let g={},_,v=null;for(let t=0;t<h.length&&(_=h[t],g=n[_]||{},v=g[c],!V(v));t++)dn(e,c,_,f,`datetime format`);if(!V(v)||!L(_))return r?-1:c;let y=`${_}__${c}`;k(d)||(y=`${y}__${JSON.stringify(d)}`);let b=s.get(y);return b||(b=new Intl.DateTimeFormat(_,A({},v,d)),s.set(y,b)),p?b.formatToParts(l):b.format(l)}var _n=[`localeMatcher`,`weekday`,`era`,`year`,`month`,`day`,`hour`,`minute`,`second`,`timeZoneName`,`formatMatcher`,`hour12`,`timeZone`,`dateStyle`,`timeStyle`,`calendar`,`dayPeriod`,`numberingSystem`,`hourCycle`,`fractionalSecondDigits`];function vn(...e){let[t,n,r,i]=e,a=j(),o=j(),s;if(L(t)){let e=t.match(/(\d{4}-\d{2}-\d{2})(T|\s)?(.*)/);if(!e)throw Et(X.INVALID_ISO_DATE_ARGUMENT);let n=e[3]?e[3].trim().startsWith(`T`)?`${e[1].trim()}${e[3].trim()}`:`${e[1].trim()}T${e[3].trim()}`:e[1].trim();s=new Date(n);try{s.toISOString()}catch{throw Et(X.INVALID_ISO_DATE_ARGUMENT)}}else if(O(t)){if(isNaN(t.getTime()))throw Et(X.INVALID_DATE_ARGUMENT);s=t}else if(D(t))s=t;else throw Et(X.INVALID_ARGUMENT);return L(n)?a.key=n:V(n)&&Object.keys(n).forEach(e=>{_n.includes(e)?o[e]=n[e]:a[e]=n[e]}),L(r)?a.locale=r:V(r)&&(o=r),V(i)&&(o=i),[a.key||``,s,a,o]}function yn(e,t,n){let r=e;for(let e in n){let n=`${t}__${e}`;r.__datetimeFormatters.has(n)&&r.__datetimeFormatters.delete(n)}}function bn(e,...t){let{numberFormats:n,unresolving:r,fallbackLocale:i,onWarn:a,localeFallbacker:o}=e,{__numberFormatters:s}=e;if(!D(t[0]))return``;let[c,l,u,d]=Sn(...t),f=R(u.missingWarn)?u.missingWarn:e.missingWarn;R(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;let p=!!u.part,m=Dt(e,u),h=o(e,i,m);if(!L(c)||c===``){let e=new Intl.NumberFormat(m.replace(/!/g,``),d);return p?e.formatToParts(l):e.format(l)}let g={},_,v=null;for(let t=0;t<h.length&&(_=h[t],g=n[_]||{},v=g[c],!V(v));t++)dn(e,c,_,f,`number format`);if(!V(v)||!L(_))return r?-1:c;let y=`${_}__${c}`;k(d)||(y=`${y}__${JSON.stringify(d)}`);let b=s.get(y);return b||(b=new Intl.NumberFormat(_,A({},v,d)),s.set(y,b)),p?b.formatToParts(l):b.format(l)}var xn=[`localeMatcher`,`style`,`currency`,`currencyDisplay`,`currencySign`,`useGrouping`,`minimumIntegerDigits`,`minimumFractionDigits`,`maximumFractionDigits`,`minimumSignificantDigits`,`maximumSignificantDigits`,`compactDisplay`,`notation`,`signDisplay`,`unit`,`unitDisplay`,`roundingMode`,`roundingPriority`,`roundingIncrement`,`trailingZeroDisplay`];function Sn(...e){let[t,n,r,i]=e,a=j(),o=j();if(!D(t))throw Et(X.INVALID_ARGUMENT);let s=t;return L(n)?a.key=n:V(n)&&Object.keys(n).forEach(e=>{xn.includes(e)?o[e]=n[e]:a[e]=n[e]}),L(r)?a.locale=r:V(r)&&(o=r),V(i)&&(o=i),[a.key||``,s,a,o]}function Cn(e,t,n){let r=e;for(let e in n){let n=`${t}__${e}`;r.__numberFormatters.has(n)&&r.__numberFormatters.delete(n)}}var wn=e=>e,Tn=e=>``,En=`text`,Dn=e=>e.length===0?``:me(e),On=pe;function kn(e,t){return e=Math.abs(e),t===2?e===1?0:1:Math.min(e,2)}function An(e){let t=D(e.pluralIndex)?e.pluralIndex:-1;return D(e.named?.count)?e.named.count:D(e.named?.n)?e.named.n:t}function jn(e={}){let t=e.locale,n=An(e),r=L(t)&&I(e.pluralRules?.[t])?e.pluralRules[t]:kn,i=r===kn?void 0:kn,a=e=>e[r(n,e.length,i)],o=e.list||[],s=e=>o[e],c=e.named||j();D(e.pluralIndex)&&(c.count||=e.pluralIndex,c.n||=e.pluralIndex);let l=e=>c[e];function u(t,n){return(I(e.messages)?e.messages(t,!!n):z(e.messages)?e.messages[t]:!1)||(e.parent?e.parent.message(t):Tn)}let d=t=>e.modifiers?e.modifiers[t]:wn,f=I(e.processor?.normalize)?e.processor.normalize:Dn,p=I(e.processor?.interpolate)?e.processor.interpolate:On,m={list:s,named:l,plural:a,linked:(e,...t)=>{let[n,r]=t,i=`text`,a=``;t.length===1?z(n)?(a=n.modifier||a,i=n.type||i):L(n)&&(a=n||a):t.length===2&&(L(n)&&(a=n||a),L(r)&&(i=r||i));let o=u(e,!0)(m),s=o===``||o===void 0?e:o,c=i===`vnode`&&F(s)&&a?s[0]:s;return a?d(a)(c,i):c},message:u,type:L(e.processor?.type)?e.processor.type:En,interpolate:p,normalize:f,values:A(j(),o,c)};return m}var Mn=()=>``,Z=e=>I(e);function Nn(e,...t){let{fallbackFormat:n,postTranslation:r,unresolving:i,messageCompiler:a,fallbackLocale:o,messages:s}=e,[c,l]=Rn(...t),u=R(l.missingWarn)?l.missingWarn:e.missingWarn,d=R(l.fallbackWarn)?l.fallbackWarn:e.fallbackWarn,f=R(l.escapeParameter)?l.escapeParameter:e.escapeParameter,p=!!l.resolvedMessage,m=L(l.default)||R(l.default)?R(l.default)?a?c:()=>c:l.default:n?a?c:()=>c:null,h=n||m!=null&&(L(m)||I(m)),g=Dt(e,l);f&&Pn(l);let[_,v,y]=p?[c,g,s[g]||j()]:Fn(e,c,g,o,d,u),b=_,x=c;if(!p&&!(L(b)||Y(b)||Z(b))&&h&&(b=m,x=b),!p&&(!(L(b)||Y(b)||Z(b))||!L(v)))return i?-1:c;let S=!1,C=Z(b)?b:In(e,c,v,b,x,()=>{S=!0});if(S)return b;let w=Ln(e,C,jn(Bn(e,v,y,l))),T=r?r(w,c):w;if(f&&L(T)&&(T=le(T)),__INTLIFY_PROD_DEVTOOLS__){let t={timestamp:Date.now(),key:L(c)?c:Z(b)?b.key:``,locale:v||(Z(b)?b.locale:``),format:L(b)?b:Z(b)?b.source:``,message:T};t.meta=A({},e.__meta,rn()||{}),wt(t)}return T}function Pn(e){F(e.list)?e.list=e.list.map(e=>L(e)?re(e):e):z(e.named)&&Object.keys(e.named).forEach(t=>{L(e.named[t])&&(e.named[t]=re(e.named[t]))})}function Fn(e,t,n,r,i,a){let{messages:o,onWarn:s,messageResolver:c,localeFallbacker:l}=e,u=l(e,r,n),d=j(),f,p=null;for(let n=0;n<u.length&&(f=u[n],d=o[f]||j(),(p=c(d,t))===null&&(p=d[t]),!(L(p)||Y(p)||Z(p)));n++)if(!mn(f,u)){let n=dn(e,t,f,a,`translate`);n!==t&&(p=n)}return[p,f,d]}function In(e,t,n,r,i,a){let{messageCompiler:o,warnHtmlMessage:s}=e;if(Z(r)){let e=r;return e.locale=e.locale||n,e.key=e.key||t,e}if(o==null){let e=(()=>r);return e.locale=n,e.key=t,e}let c=o(r,zn(e,n,i,r,s,a));return c.locale=n,c.key=t,c.source=r,c}function Ln(e,t,n){return t(n)}function Rn(...e){let[t,n,r]=e,i=j();if(!L(t)&&!D(t)&&!Z(t)&&!Y(t))throw Et(X.INVALID_ARGUMENT);let a=D(t)?String(t):(Z(t),t);return D(n)?i.plural=n:L(n)?i.default=n:V(n)&&!k(n)?i.named=n:F(n)&&(i.list=n),D(r)?i.plural=r:L(r)?i.default=r:V(r)&&A(i,r),[a,i]}function zn(e,t,n,r,i,a){return{locale:t,key:n,warnHtmlMessage:i,onError:e=>{throw a&&a(e),e},onCacheKey:e=>T(t,n,e)}}function Bn(e,t,n,r){let{modifiers:i,pluralRules:a,messageResolver:o,fallbackLocale:s,fallbackWarn:c,missingWarn:l,fallbackContext:u}=e,d={locale:t,modifiers:i,pluralRules:a,messages:(r,i)=>{let a=o(n,r);if(a==null&&(u||i)){let[n,,i]=Fn(u||e,r,t,s,c,l);a=n??o(i,r)}if(L(a)||Y(a)){let n=!1,i=In(e,r,t,a,r,()=>{n=!0});return n?Mn:i}else if(Z(a))return a;else return Mn}};return e.processor&&(d.processor=e.processor),r.list&&(d.list=r.list),r.named&&(d.named=r.named),D(r.plural)&&(d.pluralIndex=r.plural),d}qe();var Vn=`11.4.6`;function Hn(){typeof __VUE_I18N_FULL_INSTALL__!=`boolean`&&(M().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!=`boolean`&&(M().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!=`boolean`&&(M().__INTLIFY_DROP_MESSAGE_COMPILER__=!1),typeof __INTLIFY_PROD_DEVTOOLS__!=`boolean`&&(M().__INTLIFY_PROD_DEVTOOLS__=!1)}var Q={UNEXPECTED_RETURN_TYPE:24,INVALID_ARGUMENT:25,MUST_BE_CALL_SETUP_TOP:26,NOT_INSTALLED:27,REQUIRED_VALUE:28,INVALID_VALUE:29,CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:30,NOT_INSTALLED_WITH_PROVIDE:31,UNEXPECTED_ERROR:32,NOT_COMPATIBLE_LEGACY_VUE_I18N:33,NOT_AVAILABLE_COMPOSITION_IN_LEGACY:34};function $(e,...t){return ye(e,null,void 0)}Q.UNEXPECTED_RETURN_TYPE,Q.INVALID_ARGUMENT,Q.MUST_BE_CALL_SETUP_TOP,Q.NOT_INSTALLED,Q.UNEXPECTED_ERROR,Q.REQUIRED_VALUE,Q.INVALID_VALUE,Q.CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN,Q.NOT_INSTALLED_WITH_PROVIDE,Q.NOT_COMPATIBLE_LEGACY_VUE_I18N,Q.NOT_AVAILABLE_COMPOSITION_IN_LEGACY;var Un=w(`__translateVNode`),Wn=w(`__datetimeParts`),Gn=w(`__numberParts`),Kn=w(`__setPluralRules`);w(`__intlifyMeta`);var qn=w(`__injectWithOption`),Jn=w(`__dispose`),Yn={FALLBACK_TO_ROOT:10,NOT_FOUND_PARENT_SCOPE:11,IGNORE_OBJ_FLATTEN:12,DEPRECATE_LEGACY_MODE:13,DEPRECATE_TRANSLATE_CUSTOME_DIRECTIVE:14,DUPLICATE_USE_I18N_CALLING:15};Yn.FALLBACK_TO_ROOT,Yn.NOT_FOUND_PARENT_SCOPE,Yn.IGNORE_OBJ_FLATTEN,Yn.DEPRECATE_LEGACY_MODE,Yn.DEPRECATE_TRANSLATE_CUSTOME_DIRECTIVE,Yn.DUPLICATE_USE_I18N_CALLING;function Xn(e){if(!z(e)||Y(e))return e;for(let t in e)if(P(e,t))if(!t.includes(`.`))z(e[t])&&Xn(e[t]);else{let n=t.split(`.`),r=n.length-1,i=e,a=!1;for(let e=0;e<r;e++){if(n[e]===`__proto__`)throw Error(`unsafe key: ${n[e]}`);if(n[e]in i||(i[n[e]]=j()),!z(i[n[e]])){a=!0;break}i=i[n[e]]}if(a||(Y(i)?dt.includes(n[r])||delete e[t]:(i[n[r]]=e[t],delete e[t])),!Y(i)){let e=i[n[r]];z(e)&&Xn(e)}}return e}function Zn(e,t){let{messages:n,__i18n:r,messageResolver:i,flatJson:a}=t,o=V(n)?n:F(r)?j():{[e]:j()};if(F(r)&&r.forEach(e=>{if(`locale`in e&&`resource`in e){let{locale:t,resource:n}=e;t?(o[t]=o[t]||j(),ge(n,o[t])):ge(n,o)}else L(e)&&ge(JSON.parse(e),o)}),i==null&&a)for(let e in o)P(o,e)&&Xn(o[e]);return o}function Qn(e){return e.type}function $n(e,t,n){let r=z(t.messages)?t.messages:j();`__i18nGlobal`in n&&(r=Zn(e.locale.value,{messages:r,__i18n:n.__i18nGlobal}));let i=Object.keys(r);if(i.length&&i.forEach(t=>{e.mergeLocaleMessage(t,r[t])}),z(t.datetimeFormats)){let n=Object.keys(t.datetimeFormats);n.length&&n.forEach(n=>{e.mergeDateTimeFormat(n,t.datetimeFormats[n])})}if(z(t.numberFormats)){let n=Object.keys(t.numberFormats);n.length&&n.forEach(n=>{e.mergeNumberFormat(n,t.numberFormats[n])})}}function er(e){return r(s,null,e,0)}function tr(){let e=`currentInstance`;return e in b?b[e]:h()}var nr=()=>[],rr=()=>!1,ir=0;function ar(e){return((t,n,r,i)=>e(n,r,tr()||void 0,i))}function or(e={}){let{__root:t,__injectWithOption:n}=e,r=t===void 0,i=e.flatJson,o=C?d:_,s=R(e.inheritLocale)?e.inheritLocale:!0,c=o(t&&s?t.locale.value:L(e.locale)?e.locale:qt),l=o(t&&s?t.fallbackLocale.value:L(e.fallbackLocale)||F(e.fallbackLocale)||V(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:c.value),u=o(Zn(c.value,e)),f=o(V(e.datetimeFormats)?e.datetimeFormats:{[c.value]:{}}),p=o(V(e.numberFormats)?e.numberFormats:{[c.value]:{}}),m=t?t.missingWarn:R(e.missingWarn)||ee(e.missingWarn)?e.missingWarn:!0,h=t?t.fallbackWarn:R(e.fallbackWarn)||ee(e.fallbackWarn)?e.fallbackWarn:!0,v=t?t.fallbackRoot:R(e.fallbackRoot)?e.fallbackRoot:!0,y=!!e.fallbackFormat,b=I(e.missing)?e.missing:null,x=I(e.missing)?ar(e.missing):null,S=I(e.postTranslation)?e.postTranslation:null,w=t?t.warnHtmlMessage:R(e.warnHtmlMessage)?e.warnHtmlMessage:!0,T=!!e.escapeParameter,E=t?t.modifiers:V(e.modifiers)?e.modifiers:{},O=e.pluralRules||t&&t.pluralRules,k;k=(()=>{r&&on(null);let t={version:Vn,locale:c.value,fallbackLocale:l.value,messages:u.value,modifiers:E,pluralRules:O,missing:x===null?void 0:x,missingWarn:m,fallbackWarn:h,fallbackFormat:y,unresolving:!0,postTranslation:S===null?void 0:S,warnHtmlMessage:w,escapeParameter:T,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:`vue`}};t.datetimeFormats=f.value,t.numberFormats=p.value,t.__datetimeFormatters=V(k)?k.__datetimeFormatters:void 0,t.__numberFormatters=V(k)?k.__numberFormatters:void 0;let n=ln(t);return r&&on(n),n})(),fn(k,c.value,l.value);function te(){return[c.value,l.value,u.value,f.value,p.value]}let j=a({get:()=>c.value,set:e=>{k.locale=e,c.value=e}}),ne=a({get:()=>l.value,set:e=>{k.fallbackLocale=e,l.value=e,fn(k,c.value,e)}}),M=a(()=>u.value),re=a(()=>f.value),ie=a(()=>p.value);function ae(){return I(S)?S:null}function oe(e){S=e,k.postTranslation=e}function se(){return b}function ce(e){e!==null&&(x=ar(e)),b=e,k.missing=x}let N=(e,n,i,a,o,s)=>{te();let c;try{__INTLIFY_PROD_DEVTOOLS__,r||(k.fallbackContext=t?sn():void 0),c=e(k)}finally{__INTLIFY_PROD_DEVTOOLS__,r||(k.fallbackContext=void 0)}if(i!==`translate exists`&&D(c)&&c===-1||i===`translate exists`&&!c){let[e,r]=n();return t&&v?a(t):o(e)}else if(s(c))return c;else throw $(Q.UNEXPECTED_RETURN_TYPE)};function le(...e){return N(t=>Reflect.apply(Nn,null,[t,...e]),()=>Rn(...e),`translate`,t=>Reflect.apply(t.t,t,[...e]),e=>e,e=>L(e))}function ue(...e){let[t,n,r]=e;if(r&&!z(r))throw $(Q.INVALID_ARGUMENT);return le(t,n,A({resolvedMessage:!0},r||{}))}function de(...e){return N(t=>Reflect.apply(gn,null,[t,...e]),()=>vn(...e),`datetime format`,t=>Reflect.apply(t.d,t,[...e]),()=>``,e=>L(e)||F(e))}function B(...e){return N(t=>Reflect.apply(bn,null,[t,...e]),()=>Sn(...e),`number format`,t=>Reflect.apply(t.n,t,[...e]),()=>``,e=>L(e)||F(e))}function fe(e){return e.map(e=>L(e)||D(e)||R(e)?er(String(e)):e)}let pe={normalize:fe,interpolate:e=>e,type:`vnode`};function me(...e){return N(t=>{let n,r=t;try{r.processor=pe,n=Reflect.apply(Nn,null,[r,...e])}finally{r.processor=null}return n},()=>Rn(...e),`translate`,t=>t[Un](...e),e=>[er(e)],e=>F(e))}function he(...e){return N(t=>Reflect.apply(bn,null,[t,...e]),()=>Sn(...e),`number format`,t=>t[Gn](...e),nr,e=>L(e)||F(e))}function _e(...e){return N(t=>Reflect.apply(gn,null,[t,...e]),()=>vn(...e),`datetime format`,t=>t[Wn](...e),nr,e=>L(e)||F(e))}function ve(e){O=e,k.pluralRules=O}function H(e,t){return N(()=>{if(!e)return!1;let n=L(t)?t:c.value,r=L(t)?[n]:jt(k,l.value,n);for(let t=0;t<r.length;t++){let n=U(r[t]),i=k.messageResolver(n,e);if(i===null&&(i=n[e]),Y(i)||Z(i)||L(i))return!0}return!1},()=>[e],`translate exists`,n=>Reflect.apply(n.te,n,[e,t]),rr,e=>R(e))}function ye(e){let t=null,n=jt(k,l.value,c.value);for(let r=0;r<n.length;r++){let i=u.value[n[r]]||{},a=k.messageResolver(i,e);if(a!=null){t=a;break}}return t}function be(e){return ye(e)??(t&&t.tm(e)||{})}function U(e){return u.value[e]||{}}function xe(e,t){if(i){let n={[e]:t};for(let e in n)P(n,e)&&Xn(n[e]);t=n[e]}u.value[e]=t,k.messages=u.value}function W(e,t){u.value[e]=u.value[e]||{};let n={[e]:t};if(i)for(let e in n)P(n,e)&&Xn(n[e]);t=n[e],ge(t,u.value[e]),k.messages=u.value}function Se(e){return f.value[e]||{}}function Ce(e,t){f.value[e]=t,k.datetimeFormats=f.value,yn(k,e,t)}function we(e,t){f.value[e]=A(f.value[e]||{},t),k.datetimeFormats=f.value,yn(k,e,t)}function G(e){return p.value[e]||{}}function Te(e,t){p.value[e]=t,k.numberFormats=p.value,Cn(k,e,t)}function Ee(e,t){p.value[e]=A(p.value[e]||{},t),k.numberFormats=p.value,Cn(k,e,t)}ir++,t&&C&&(g(t.locale,e=>{s&&(c.value=e,k.locale=e,fn(k,c.value,l.value))}),g(t.fallbackLocale,e=>{s&&(l.value=e,k.fallbackLocale=e,fn(k,c.value,l.value))}));let K={id:ir,locale:j,fallbackLocale:ne,get inheritLocale(){return s},set inheritLocale(e){s=e,e&&t&&(c.value=t.locale.value,l.value=t.fallbackLocale.value,fn(k,c.value,l.value))},get availableLocales(){return Object.keys(u.value).sort()},messages:M,get modifiers(){return E},get pluralRules(){return O||{}},get isGlobal(){return r},get missingWarn(){return m},set missingWarn(e){m=e,k.missingWarn=m},get fallbackWarn(){return h},set fallbackWarn(e){h=e,k.fallbackWarn=h},get fallbackRoot(){return v},set fallbackRoot(e){v=e},get fallbackFormat(){return y},set fallbackFormat(e){y=e,k.fallbackFormat=y},get warnHtmlMessage(){return w},set warnHtmlMessage(e){w=e,k.warnHtmlMessage=e},get escapeParameter(){return T},set escapeParameter(e){T=e,k.escapeParameter=e},t:le,getLocaleMessage:U,setLocaleMessage:xe,mergeLocaleMessage:W,getPostTranslationHandler:ae,setPostTranslationHandler:oe,getMissingHandler:se,setMissingHandler:ce,[Kn]:ve};return K.datetimeFormats=re,K.numberFormats=ie,K.rt=ue,K.te=H,K.tm=be,K.d=de,K.n=B,K.getDateTimeFormat=Se,K.setDateTimeFormat=Ce,K.mergeDateTimeFormat=we,K.getNumberFormat=G,K.setNumberFormat=Te,K.mergeNumberFormat=Ee,K[qn]=n,K[Un]=me,K[Wn]=_e,K[Gn]=he,K}function sr(e){let t=L(e.locale)?e.locale:qt,n=L(e.fallbackLocale)||F(e.fallbackLocale)||V(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,r=I(e.missing)?e.missing:void 0,i=R(e.silentTranslationWarn)||ee(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,a=R(e.silentFallbackWarn)||ee(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,o=R(e.fallbackRoot)?e.fallbackRoot:!0,s=!!e.formatFallbackMessages,c=V(e.modifiers)?e.modifiers:{},l=e.pluralizationRules,u=I(e.postTranslation)?e.postTranslation:void 0,d=L(e.warnHtmlInMessage)?e.warnHtmlInMessage!==`off`:!0,f=!!e.escapeParameterHtml,p=R(e.sync)?e.sync:!0,m=e.messages;if(V(e.sharedMessages)){let t=e.sharedMessages;m=Object.keys(t).reduce((e,n)=>(A(e[n]||(e[n]={}),t[n]),e),m||{})}let{__i18n:h,__root:g,__injectWithOption:_}=e,v=e.datetimeFormats,y=e.numberFormats,b=e.flatJson;return{locale:t,fallbackLocale:n,messages:m,flatJson:b,datetimeFormats:v,numberFormats:y,missing:r,missingWarn:i,fallbackWarn:a,fallbackRoot:o,fallbackFormat:s,modifiers:c,pluralRules:l,postTranslation:u,warnHtmlMessage:d,escapeParameter:f,messageResolver:e.messageResolver,inheritLocale:p,__i18n:h,__root:g,__injectWithOption:_}}function cr(e={}){let t=or(sr(e)),{__extender:n}=e,r={id:t.id,get locale(){return t.locale.value},set locale(e){t.locale.value=e},get fallbackLocale(){return t.fallbackLocale.value},set fallbackLocale(e){t.fallbackLocale.value=e},get messages(){return t.messages.value},get datetimeFormats(){return t.datetimeFormats.value},get numberFormats(){return t.numberFormats.value},get availableLocales(){return t.availableLocales},get missing(){return t.getMissingHandler()},set missing(e){t.setMissingHandler(e)},get silentTranslationWarn(){return R(t.missingWarn)?!t.missingWarn:t.missingWarn},set silentTranslationWarn(e){t.missingWarn=R(e)?!e:e},get silentFallbackWarn(){return R(t.fallbackWarn)?!t.fallbackWarn:t.fallbackWarn},set silentFallbackWarn(e){t.fallbackWarn=R(e)?!e:e},get modifiers(){return t.modifiers},get formatFallbackMessages(){return t.fallbackFormat},set formatFallbackMessages(e){t.fallbackFormat=e},get postTranslation(){return t.getPostTranslationHandler()},set postTranslation(e){t.setPostTranslationHandler(e)},get sync(){return t.inheritLocale},set sync(e){t.inheritLocale=e},get warnHtmlInMessage(){return t.warnHtmlMessage?`warn`:`off`},set warnHtmlInMessage(e){t.warnHtmlMessage=e!==`off`},get escapeParameterHtml(){return t.escapeParameter},set escapeParameterHtml(e){t.escapeParameter=e},get pluralizationRules(){return t.pluralRules||{}},__composer:t,t(...e){return Reflect.apply(t.t,t,[...e])},rt(...e){return Reflect.apply(t.rt,t,[...e])},te(e,n){return t.te(e,n)},tm(e){return t.tm(e)},getLocaleMessage(e){return t.getLocaleMessage(e)},setLocaleMessage(e,n){t.setLocaleMessage(e,n)},mergeLocaleMessage(e,n){t.mergeLocaleMessage(e,n)},d(...e){return Reflect.apply(t.d,t,[...e])},getDateTimeFormat(e){return t.getDateTimeFormat(e)},setDateTimeFormat(e,n){t.setDateTimeFormat(e,n)},mergeDateTimeFormat(e,n){t.mergeDateTimeFormat(e,n)},n(...e){return Reflect.apply(t.n,t,[...e])},getNumberFormat(e){return t.getNumberFormat(e)},setNumberFormat(e,n){t.setNumberFormat(e,n)},mergeNumberFormat(e,n){t.mergeNumberFormat(e,n)}};return r.__extender=n,r}function lr(e,t,n){return{beforeCreate(){let r=tr();if(!r)throw $(Q.UNEXPECTED_ERROR);let i=this.$options;if(i.i18n){let r=i.i18n;if(i.__i18n&&(r.__i18n=i.__i18n),r.__root=t,this===this.$root)this.$i18n=ur(e,r);else{r.__injectWithOption=!0,r.__extender=n.__vueI18nExtend,this.$i18n=cr(r);let e=this.$i18n;e.__extender&&(e.__disposer=e.__extender(this.$i18n))}}else if(i.__i18n)if(this===this.$root)this.$i18n=ur(e,i);else{this.$i18n=cr({__i18n:i.__i18n,__injectWithOption:!0,__extender:n.__vueI18nExtend,__root:t});let e=this.$i18n;e.__extender&&(e.__disposer=e.__extender(this.$i18n))}else this.$i18n=e;i.__i18nGlobal&&$n(t,i,i),this.$t=(...e)=>this.$i18n.t(...e),this.$rt=(...e)=>this.$i18n.rt(...e),this.$te=(e,t)=>this.$i18n.te(e,t),this.$d=(...e)=>this.$i18n.d(...e),this.$n=(...e)=>this.$i18n.n(...e),this.$tm=e=>this.$i18n.tm(e),n.__setInstance(r,this.$i18n)},mounted(){},unmounted(){let e=tr();if(!e)throw $(Q.UNEXPECTED_ERROR);let t=this.$i18n;t&&(delete this.$t,delete this.$rt,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,t?.__disposer&&(t.__disposer(),delete t.__disposer,delete t.__extender),n.__deleteInstance(e),delete this.$i18n)}}}function ur(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[Kn](t.pluralizationRules||e.pluralizationRules);let n=Zn(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(n).forEach(t=>e.mergeLocaleMessage(t,n[t])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(n=>e.mergeDateTimeFormat(n,t.datetimeFormats[n])),t.numberFormats&&Object.keys(t.numberFormats).forEach(n=>e.mergeNumberFormat(n,t.numberFormats[n])),e}var dr={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e===`parent`||e===`global`,default:`parent`},i18n:{type:Object}};function fr({slots:e},t){return t.length===1&&t[0]===`default`?(e.default?e.default():[]).reduce((e,t)=>[...e,...t.type===c?t.children:[t]],[]):t.reduce((t,n)=>{let r=e[n];return r&&(t[n]=r()),t},j())}function pr(){return c}var mr=v({name:`i18n-t`,props:A({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>D(e)||!isNaN(e)}},dr),setup(e,t){let{slots:n,attrs:r}=t,i=e.i18n||Tr({useScope:e.scope,__useComponent:!0});return()=>{let a=()=>{let r=Object.keys(n).filter(e=>e[0]!==`_`),a=j();e.locale&&(a.locale=e.locale),e.plural!==void 0&&(a.plural=L(e.plural)?+e.plural:e.plural);let o=fr(t,r);return i[Un](e.keypath,o,a)},o=A(j(),r),s=L(e.tag)||z(e.tag)?e.tag:pr();return z(s)?p(s,o,{default:a}):p(s,o,a())}}});function hr(e){return F(e)&&!L(e[0])}function gr(e,t,n,r){let{slots:i,attrs:a}=t;return()=>{let t=()=>{let t={part:!0},a=j();e.locale&&(t.locale=e.locale),L(e.format)?t.key=e.format:z(e.format)&&(L(e.format.key)&&(t.key=e.format.key),a=Object.keys(e.format).reduce((t,r)=>n.includes(r)?A(j(),t,{[r]:e.format[r]}):t,j()));let o=r(e.value,t,a),s=[t.key];return F(o)?s=o.map((e,t)=>{let n=i[e.type],r=n?n({[e.type]:e.value,index:t,parts:o}):[e.value];return hr(r)&&(r[0].key=`${e.type}-${t}`),r}):L(o)&&(s=[o]),s},o=A(j(),a),s=L(e.tag)||z(e.tag)?e.tag:pr();return z(s)?p(s,o,{default:t}):p(s,o,t())}}var _r=v({name:`i18n-n`,props:A({value:{type:Number,required:!0},format:{type:[String,Object]}},dr),setup(e,t){let n=e.i18n||Tr({useScope:e.scope,__useComponent:!0});return gr(e,t,xn,(...e)=>n[Gn](...e))}});function vr(e,t){let n=e;if(e.mode===`composition`)return n.__getInstance(t)||e.global;{let r=n.__getInstance(t);return r==null?e.global.__composer:r.__composer}}function yr(e){let t=t=>{let{instance:n,value:r}=t;if(!n||!n.$)throw $(Q.UNEXPECTED_ERROR);let i=vr(e,n.$),a=br(r);return[Reflect.apply(i.t,i,[...xr(a)]),i]};return{created:(e,n)=>{let[r,i]=t(n);C&&(e.__i18nWatcher=g(i.locale,()=>{n.instance&&n.instance.$forceUpdate()})),e.__composer=i,e.textContent=r},unmounted:e=>{C&&e.__i18nWatcher&&(e.__i18nWatcher(),e.__i18nWatcher=void 0,delete e.__i18nWatcher),e.__composer&&(e.__composer=void 0,delete e.__composer)},beforeUpdate:(e,{value:t})=>{if(e.__composer){let n=e.__composer,r=br(t);e.textContent=Reflect.apply(n.t,n,[...xr(r)])}},getSSRProps:e=>{let[n]=t(e);return{textContent:n}}}}function br(e){if(L(e))return{path:e};if(V(e)){if(!(`path`in e))throw $(Q.REQUIRED_VALUE,`path`);return e}else throw $(Q.INVALID_VALUE)}function xr(e){let{path:t,locale:n,args:r,choice:i,plural:a}=e,o={},s=r||{};return L(n)&&(o.locale=n),D(i)&&(o.plural=i),D(a)&&(o.plural=a),[t,s,o]}function Sr(e,t,...n){let r=V(n[0])?n[0]:{};(!R(r.globalInstall)||r.globalInstall)&&([mr.name,`I18nT`].forEach(t=>e.component(t,mr)),[_r.name,`I18nN`].forEach(t=>e.component(t,_r)),[Ir.name,`I18nD`].forEach(t=>e.component(t,Ir))),e.directive(`t`,yr(t))}var Cr=w(`global-vue-i18n`);function wr(e={}){let t=__VUE_I18N_LEGACY_API__&&R(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,n=R(e.globalInjection)?e.globalInjection:!0,r=new Map,[i,a]=Er(e,t),o=w(``);function s(e){return r.get(e)||null}function c(e,t){r.set(e,t)}function l(e){r.delete(e)}let u={get mode(){return __VUE_I18N_LEGACY_API__&&t?`legacy`:`composition`},async install(e,...r){if(e.__VUE_I18N_SYMBOL__=o,e.provide(e.__VUE_I18N_SYMBOL__,u),V(r[0])){let e=r[0];u.__composerExtend=e.__composerExtend,u.__vueI18nExtend=e.__vueI18nExtend}let i=null;!t&&n&&(i=Fr(e,u.global)),__VUE_I18N_FULL_INSTALL__&&Sr(e,u,...r),__VUE_I18N_LEGACY_API__&&t&&e.mixin(lr(a,a.__composer,u));let s=e.unmount;e.unmount=()=>{i&&i(),u.dispose(),s()}},get global(){return a},dispose(){i.stop()},__instances:r,__getInstance:s,__setInstance:c,__deleteInstance:l};return u}function Tr(e={}){let t=tr();if(t==null)throw $(Q.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw $(Q.NOT_INSTALLED);let n=Dr(t),r=kr(n),i=Qn(t),a=Or(e,i);if(a===`global`)return $n(r,e,i),r;if(a===`parent`){let i=Ar(n,t,e.__useComponent);return i??=r,i}if(a===`isolated`){if(n.mode!==`composition`)throw $(Q.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);let i=n,a=A({},e);a.__root=Ar(n,t)||r;let o=or(a);return i.__composerExtend&&(o[Jn]=i.__composerExtend(o)),m()&&y(()=>{let e=o[Jn];e&&(e(),delete o[Jn])}),o}let o=n,s=o.__getInstance(t);if(s==null){let n=A({},e);`__i18n`in i&&(n.__i18n=i.__i18n),r&&(n.__root=r),s=or(n),o.__composerExtend&&(s[Jn]=o.__composerExtend(s)),Mr(o,t,s),o.__setInstance(t,s)}return s}function Er(e,t){let n=i(),r=__VUE_I18N_LEGACY_API__&&t?n.run(()=>cr(e)):n.run(()=>or(e));if(r==null)throw $(Q.UNEXPECTED_ERROR);return[n,r]}function Dr(e){let t=f(e.isCE?Cr:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw $(e.isCE?Q.NOT_INSTALLED_WITH_PROVIDE:Q.UNEXPECTED_ERROR);return t}function Or(e,t){return k(e)?`__i18n`in t?`local`:`global`:e.useScope?e.useScope:`local`}function kr(e){return e.mode===`composition`?e.global:e.global.__composer}function Ar(e,t,n=!1){let r=null,i=t.root,a=jr(t,n);for(;a!=null;){let t=e;if(e.mode===`composition`)r=t.__getInstance(a);else if(__VUE_I18N_LEGACY_API__){let e=t.__getInstance(a);e!=null&&(r=e.__composer,n&&r&&!r[qn]&&(r=null))}if(r!=null||i===a)break;a=a.parent}return r}function jr(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function Mr(e,t,n){l(()=>{},t),u(()=>{let r=n;e.__deleteInstance(t);let i=r[Jn];i&&(i(),delete r[Jn])},t)}var Nr=[`locale`,`fallbackLocale`,`availableLocales`],Pr=[`t`,`rt`,`d`,`n`,`tm`,`te`];function Fr(e,t){let n=Object.create(null);return Nr.forEach(e=>{let r=Object.getOwnPropertyDescriptor(t,e);if(!r)throw $(Q.UNEXPECTED_ERROR);let i=o(r.value)?{get(){return r.value.value},set(e){r.value.value=e}}:{get(){return r.get&&r.get()}};Object.defineProperty(n,e,i)}),e.config.globalProperties.$i18n=n,Pr.forEach(n=>{let r=Object.getOwnPropertyDescriptor(t,n);if(!r||!r.value)throw $(Q.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${n}`,r)}),()=>{delete e.config.globalProperties.$i18n,Pr.forEach(t=>{delete e.config.globalProperties[`$${t}`]})}}var Ir=v({name:`i18n-d`,props:A({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},dr),setup(e,t){let n=e.i18n||Tr({useScope:e.scope,__useComponent:!0});return gr(e,t,_n,(...e)=>n[Wn](...e))}});if(Hn(),Zt(bt),$t(Wt),tn(jt),__INTLIFY_PROD_DEVTOOLS__){let e=M();e.__INTLIFY__=!0,St(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const Lr={common:{cancel:`Cancel`,confirm:`Confirm`,delete:`Delete`,close:`Close`,clear:`Clear`,loading:`Loading...`},app:{projectConflict:{title:`Project Already Open`,desc:`Project "{name}" is already active in another tab. Editing is blocked here to avoid IndexedDB conflicts.`,countdown:`This page will try to close automatically in {seconds} seconds. You can open another project in a new tab first.`,opened:`(Opened)`,lastEdited:`Last edited: {time}`,openDefault:`Open Default Project`,createAndOpen:`Create and Open`}},home:{title:`E Jian Wen [2023] No. 33
Reference Standard for Hubei Construction Cost Consulting Service Fees (Trial)`,subtitle:`Project Budget · Quick Calc · Related Files · Import Data`,projectCalcTab:`Project Calculation`,quickCalcTab:`Quick Calculation`,cards:{heroTitle:`One-Click Smart Budget`,heroSubTitle:`Accelerate standards adoption`,heroDesc:`Cost consulting fee calculator for transport construction projects`,projectBudget:`Project Budget`,projectBudgetDesc:`For full project-level calculation across multiple contracts with import/export support`,quickCalc:`Quick Calc`,quickCalcDesc:`Suitable for single service trial, select industry, consultation type, engineering specialty, input base number and get results in seconds`,importData:`Import Data`,importDataDesc:`Import a ".zw" package and create a new project automatically to restore the data without overriding existing projects`,enter:`Enter`,developing:`In Development`,pickFile:`Choose File`,pickExisting:`Choose Existing`,relatedFiles:`Related Files`,relatedFilesDesc:`Open the user system file page to view fee documents, contracts, service content, and work requirements`,openRelatedFiles:`Open Page`},dialog:{newProject:`New Project`,chooseIndustryDesc:`Choose an industry and enter project calculation directly.`,industry:`Industry`,selectIndustry:`Select industry`,entering:`Entering...`,enterProjectCalc:`Enter Project Calculation`,confirmImport:`Confirm Import`,confirmImportDesc:`Import "{file}"`,confirmImportAction:`Import and Create Project`,chooseExistingProject:`Choose Existing Project`,chooseExistingProjectDesc:`Select a project from the list and enter workspace directly.`,noProjectYet:`No project available. Create a new project first.`}},tab:{toolbar:{light:`Light`,dark:`Dark`,language:`Lang`,importData:`Import`,exportData:`Export`,exportReport:`Export Report`,savedata:`save data`,importexport:`Import/Export`,exporttable:`Export Table`,exportworddocument:`Export Word Document`,projectmanagement:`Project Management`,returntohomepage:`Returntohomepage`,userGuide:`Guide`,reset:`Reset`,resetting:`Resetting...`,projectList:`Projects`,projectCount:`Projects: {count}`,createProject:`New Project`,backHome:`Back Home`,resetAll:`Reset All`,opened:`(Opened)`,lastEdited:`Last edited: {time}`},menu:{closeAll:`Close All`,closeLeft:`Close Left`,closeRight:`Close Right`,closeOther:`Close Others`},dialog:{resetTitle:`Confirm Reset`,resetDesc:`All project data will be cleared and the default page will be restored. Continue?`,confirmReset:`Confirm Reset`,importOverrideTitle:`Confirm Override Import`,importOverrideDesc:`Use "{file}" to override all local data for current project. Continue?`,confirmOverride:`Confirm Override`,newProjectTitle:`New Project`,newProjectDesc:`Choose an industry, then open the new project calculation page in a new tab.`,createAndOpen:`Create & Open`,creating:`Creating...`,projectLimitTitle:`Project Limit Reached`,projectLimitDesc:`Project count has reached {max}. Delete one project before adding a new one.`,iKnow:`OK`,deleteProjectTitle:`Confirm Delete Project`,deleteCurrentProjectDesc:`Delete current project "{name}"? Data will be cleared and you will return to home.`,deleteProjectDesc:`Delete project "{name}"? This will remove local data for that project.`},guide:{title:`User Guide`,later:`Later`,prev:`Prev`,next:`Next`,finish:`Finish and Disable Auto Popup`,jumpToStep:`Jump to step {index}`,steps:{step1:{title:`Project Calculation Overview`,description:`This guide only explains the main project-calculation flow: project setup -> contract segments -> service pricing -> report export.`,point1:`The entry is the "Project Card", and the left flow line guides you through the setup in order.`,point2:`Forms and grids auto-save locally, so manual save is usually unnecessary.`,point3:`Project-level data affects later segment calculation and report output, so fill it first.`},step2:{title:`Project-Level Setup`,description:`Project-level setup mainly includes Basic Info, Scale Info, Consult Category Factor, and Major Factor.`,point1:`Basic Info: maintain project name, industry, and other base data.`,point2:`Scale Info: fill project scale by major as input for later budget values.`,point3:`The two factor pages maintain budget values and notes used to adjust calculation.`},step3:{title:`Fill Basic Info First`,description:`Complete the Basic Info page first. Project name and industry are core inputs for later project calculation.`,point1:`Project name is used in the home list, tab labels, and exported reports.`,point2:`Project industry determines the scale structure, major tree, and part of the budget logic.`,point3:`If project name is left empty, the system falls back to the default project name.`},step4:{title:`Maintain Scale Info`,description:`The Scale Info page stores project-level scale data, which is one of the base inputs of project calculation.`,point1:`Fill scale values by major. These numbers participate in later service budget values and summary.`,point2:`The grid supports direct edit, batch paste, and undo/redo for fast multi-row input.`,point3:`Grouped rows and the pinned summary row are calculated automatically for quick checking.`},step5:{title:`Maintain Project Factors`,description:`Consult Category Factor and Major Factor are used to adjust project budget values and should be reviewed before segment calculation.`,point1:`Consult Category Factor page: maintain budget values and notes by consult category.`,point2:`Major Factor page: maintain budget values and notes by major tree.`,point3:`Both pages support batch paste and undo/redo for efficient maintenance.`},step6:{title:`Enter Segment Calculation`,description:`After project-level setup is complete, go to Contract Segment Management and calculate each segment one by one.`,point1:`Create a contract segment first, then open its detail page to continue.`,point2:`Scale data under one segment belongs only to that segment and does not affect others.`,point3:`The consulting service page generates service rows and acts as the entry for pricing methods.`},step7:{title:`Choose Pricing Methods`,description:`From consulting service details inside a segment, open the service pricing page and fill method data based on the service.`,point1:`Common methods include investment scale, land scale, workload, and hourly pricing.`,point2:`Different services can enable different methods, and the system summarizes them into subtotal and final amount.`,point3:`If the default calculated value needs adjustment, edit the final amount or note fields directly.`},step8:{title:`Review and Export`,description:`After project-level and segment-level calculation is complete, review the final summary and then export the report.`,point1:`Check project name, scale info, factors, and segment service amounts before exporting.`,point2:`Export uses the current project data and generates the final report accordingly.`,point3:`If you make large changes, export a backup first before continuing.`}}},toast:{export:`Export Report`,success:`Export Success`,failed:`Export Failed`,saveSuccess:`Save Success`,saveFailed:`Save Failed`},messages:{defaultProjectLabel:`Default Project`,defaultProjectName:`Cost Project`,projectNamePrefix:`Project-{id}`,contractFallbackName:`Contract-{index}`,reportFileSuffix:`Budget Report`,reportGenerating:`Generating report file...`,reportExportDone:`Report export completed`,reportExportFailedRetry:`Report export failed, please retry`,importFailedTitle:`Import Failed`,importProjectIdMissing:`This package does not contain project ID (legacy export). Import is blocked to avoid cross-project overwrite.`,importProjectMismatch:`This package belongs to another project and cannot override current project.`,importInvalidFile:`File is invalid, corrupted, or modified.`,importCryptoUnavailable:`This runtime does not support secure archive decryption. Please open the site over HTTPS or another secure local context and try again.`,importWriteError:`An error occurred while writing local data.`,openFile:`Open file`}},typeLine:{copy:`Copy`,copied:`Copied`,copyFailed:`Copy failed`,brandAlt:`Zhongwei`,supportText:`This website is supported by Zhongwei Engineering Consulting Co., Ltd.`,aboutTitle:`About Us`,companyName:`Zhongwei Engineering Consulting Co., Ltd.`,openOfficialSiteAria:`Open official website`,officialSiteTitle:`Official Website`,aboutParagraph1:`Zhongwei Engineering Consulting Co., Ltd. was founded in 2009, focusing on whole-process consulting for project cost and cost control. It is a preferred audit vendor for Guangdong government. The company serves multi-domain and diverse clients, with cumulative project investment over one trillion CNY, deep participation in major national projects such as the Hong Kong-Zhuhai-Macao Bridge and Hengqin Campus of the University of Macau, and participation in over 30 national/provincial/municipal standards.`,aboutParagraph2:`Based in the Greater Bay Area and expanding globally, the company has offices in Macau and Sri Lanka, with cross-border and overseas delivery capabilities. With 15 years of expertise and trillion-level project experience, it provides precise and reliable engineering consulting services.`},agGrid:{resetDefault:`Reset to default`},ht:{title:`Contract Segments`,projectTotalBudget:`Project Total Budget: {amount}`,budgetLoading:`Calculating...`,selectedCount:`{count} selected`,exportSelected:`Export Selected`,deleteSelected:`Delete Selected`,cancelSelect:`Cancel`,addContract:`Add Segment`,batchDelete:`Batch Delete`,exportContracts:`Export Segments`,importContracts:`Import Segments`,searchPlaceholder:`Search by segment name or ID`,clearFilter:`Clear Filter`,searchingHint:`Searching ({filtered} / {total}), drag sorting is disabled`,selectModeExportHint:`Export mode: select segments and click "Export Selected"`,selectModeDeleteHint:`Delete mode: select segments and click "Delete Selected"`,setupRequiredHint:`Set project industry in "Basic Info" before adding or importing segments`,listLayout:`List`,gridLayout:`Grid`,dragSort:`Drag to Sort`,dragSortSearchOff:`Drag Sort (Disabled in Search)`,edit:`Edit`,remove:`Delete`,idLabel:`ID: {id}`,contractBudget:`Budget: {amount}`,contractBudgetLine:`Segment Budget: {amount}`,createdAt:`Created: {time}`,emptyTitle:`No Contract Segments`,emptyDesc:`Add one to get started`,notFound:`No matching contract segment`,backToTop:`Back to Top`,editContract:`Edit Segment`,createContract:`New Segment`,contractTabTitle:`Segment {name}`,contractName:`Segment Name`,contractNamePlaceholder:`Enter segment name`,save:`Save`,ok:`OK`,toastSuccessTitle:`Success`,createSuccess:`Created successfully`,editSuccess:`Updated successfully`,deleteSuccess:`Deleted successfully`,sortDone:`Sort completed`,exportSuccess:`Exported successfully ({count} segments)`,importSuccess:`Imported successfully ({count} segments)`,deleteBatchSuccess:`Deleted successfully ({count} segments)`,tipTitle:`Notice`,exportFailedTitle:`Export Failed`,importFailedTitle:`Import Failed`,batchDeleteFailedTitle:`Batch Delete Failed`,retry:`Please try again.`,selectAtLeastOne:`Please select at least one contract segment.`,noContractsToDelete:`No contract segment found to delete.`,industryMissingForExport:`Project industry is missing. Please set it in "Basic Info" first.`,importIndustryMismatch:`Industry mismatch (package: {importIndustry}, current: {currentIndustry}).`,importCurrentIndustryMissing:`Current project industry is not set. Please set it in "Basic Info" first.`,importPackageIndustryMissing:`Import package missing industry info. Re-export with latest version and try again.`,importFileInvalid:`Invalid or corrupted file, or not a contract-segment package.`,importCryptoUnavailable:`This runtime does not support secure archive decryption. Please open the site over HTTPS or another secure local context and try again.`,deleteSingleTitle:`Confirm Delete Segment`,deleteSingleDesc:`Delete "{name}" and all related service/pricing data. Continue?`,deleteBatchTitle:`Confirm Batch Delete`,deleteBatchDesc:`Delete {count} segments and related service/pricing data. Continue?`},htCard:{title:`Segment: {name}`,subtitle:`Segment ID: {id}`,metaBudget:`Segment Budget: {amount}`,currencySuffix:`CNY`,categories:{baseInfo:`Basic Info`,scaleInfo:`Scale Info`,services:`Consulting Services`,consultFactor:`Consult Category Factor`,majorFactor:`Major Factor`,additionalFee:`Additional Fee`,reserveFee:`Reserve Fee`,summary:`Summary`}},htBaseInfo:{title:`Basic Info`,defaultQuality:`The comprehensive evaluation of cost consulting services should reach "Good" or a score of 90.`,qualityLabel:`Quality Requirement`,qualityPlaceholder:`Enter quality requirement`,durationLabel:`Duration Requirement`,durationPlaceholder:`Enter duration requirement`},htFactors:{consultCategoryTitle:`Consult Category Factor Details`,majorTitle:`Major Factor Details`},htFee:{additionalTitle:`Additional Work Fee`,reserveTitle:`Reserve Fee`},htInfo:{scaleDetailTitle:`Contract Scale Details`},htFeeRate:{baseLabel:`Base (total budget of all service fees)`,reserveBaseLabel:`Base (consulting services total + additional work fee total)`,rateLabel:`Rate (%)`,ratePlaceholder:`Enter rate, suggested 1 ~ 5`,budgetFeeLabel:`Budget Fee (Auto)`,remarkLabel:`Remark`,remarkPlaceholder:`Enter remark`},htZxFw:{title:`Consulting Service Details`,warning:`Please review and adjust recommended limits/special values in the specification, then update final fee if needed.`,editTabTitle:`Service Edit-{name}`,subtotal:`Subtotal`,edit:`Edit`,resetDefault:`Reset`,delete:`Remove`,processDraft:`Draft`,processReview:`Review`,none:`No options, not editable`,columns:{code:`Code`,name:`Name`,process:`Process`,investScale:`Investment Scale`,landScale:`Bill of Quantities`,workload:`Workload`,workname:`Material and Equipment Inquiry (Verification)`,hourly:`Hourly`,subtotal:`Subtotal`,finalFee:`Final Fee ✎`,finalFeeTooltip:`This column supports manual edits and will auto-sync to the fixed subtotal row.`,remark:`Remark`,actions:`Actions`},dialog:{resetTitle:`Confirm Reset to Default`,resetDesc:`This will recalculate default data from latest scale/factor values and overwrite current data for "{name}". Continue?`,confirmReset:`Confirm Reset`,deleteTitle:`Confirm Delete Service`,deleteDesc:`This will logically remove "{name}". Existing entered data is kept and will restore if re-selected. Continue?`}},htSummary:{title:`Contract Summary`,total:`Total`,remark:`Remark`,placeholder:`Fill consulting services / additional work fee / reserve fee first`,additionalPrefix:`Additional Work Fee`,reservePrefix:`Reserve Fee`,explainByRate:`By rate {rate}%, calculated {fee} CNY`,explainByHourly:`By hourly method, calculated {fee} CNY`,explainByQuantity:`By quantity-unit-price method, calculated {fee} CNY`,columns:{code:`Code`,name:`Name`,investScale:`Investment Scale`,landScale:`Bill of Quantities`,workload:`Workload`,hourly:`Hourly`,subtotal:`Subtotal`,finalFee:`Final Fee`}},htFeeGrid:{subtotal:`Subtotal`,currentRow:`Current Row`,unnamed:`Unnamed`,edit:`Edit`,clear:`Clear`,add:`Add`,editTabTitle:`Fee Edit-{name}`,columns:{name:`Name`,rateFee:`Rate Fee`,hourlyFee:`Hourly`,quantityUnitPriceFee:`Quantity Unit Price`,subtotal:`Subtotal`,actions:`Actions`},dialog:{clearTitle:`Confirm Clear`,clearDesc:`This will clear editable and auto-calculated data for "{name}" and its edit page. Continue?`,confirmClear:`Confirm Clear`}},xmFactorGrid:{clickToInput:`Click to input`,columns:{standardFactor:`Standard Factor`,budgetValue:`Budget Value`,remark:`Remark`,groupName:`Major Code and Major Name`,code:`Serial Number`,projectname:`Engineering Major Name`}},serviceSelector:{title:`Select Services`,clear:`Clear`,empty:`No services`},zxFwView:{contractPrefix:`Contract: {name}`,calcSuffix:` Calculation`,contractId:`Contract ID: {id}`,workContentTitle:`Work Content`,categories:{investmentScale:`Investment Scale`,investmentScaleFormula:`Investment Scale Formula`,landScale:`Bill of Quantities`,landScaleFormula:`Land Scale Formula`,workload:`Workload`,hourly:`Hourly`,workContent:`Work Content`,otherservice:`Other services`},formulaColumns:{subtitle:`Shows the latest detail rows from the current pricing-method store and stays in sync with store updates.`,amount:`Amount (CNY)`,basicFormula:`Basic Work Formula`,optionalFormula:`Optional Work Formula`},unavailable:{investmentScaleTitle:`Investment Scale Not Applicable`,investmentScaleMessage:`Scale method is not enabled for this service, so Investment Scale is not editable.`,landScaleTitle:`Land Scale Not Applicable`,landScaleMessage:`This service only supports Investment Scale, so Land Scale is not editable.`,workloadTitle:`Workload Not Applicable`,workloadMessage:`Workload method is not enabled for this service, so Workload is not editable.`,hourlyTitle:`Hourly Not Applicable`,hourlyMessage:`Hourly method is not enabled for this service, so Hourly is not editable.`}},htFeeDetail:{subtotal:`Subtotal`,currentRow:`Current Row`,clickToInput:`Click to input`,addRow:`Add Row`,columns:{no:`No.`,feeItem:`Fee Item`,unit:`Unit`,quantity:`Quantity`,unitPrice:`Unit Price (CNY)`,budgetFee:`Budget Fee (CNY)`,remark:`Remark`,actions:`Actions`},dialog:{deleteTitle:`Confirm Delete Row`,deleteDesc:`Delete row "{name}"?`}},workContent:{title:`Work Content`,addCustom:`Add Custom Content`,clickToInput:`Click to input`,clickToInputContent:`Click to input work content`,currentRow:`Current Row`,unnamed:`Unnamed`,ungrouped:`Ungrouped`,type:{basic:`Basic Work`,optional:`Optional Work`,daily:`Daily Advisory`,special:`Special Advisory`,additional:`Additional Work`,custom:`Custom`},columns:{no:`No.`,content:`Content`,type:`Type`,remark:`Remark`,actions:`Actions`},dialog:{deleteTitle:`Confirm Delete Row`,deleteDesc:`Delete row "{name}"?`}},quickCalc:{projectName:`Quick Calculation`,industryLabel:`Industry {name}`,selectIndustry:`Select industry`,saving:`Saving...`,synced:`Industry synced`,notSelectedIndustry:`Industry not selected`,notSelected:`Not selected`,consultCategory:`Consult Category`,majorCategory:`Major`,types:{consult:{label:`Consult Category (Common)`,hint:`Select consult category first, then complete scale and budget parameters.`},general:{label:`General Major`,hint:`Cross-industry common compensation and other expense majors.`},road:{label:`Highway Major`,hint:`Shown by default when industry is Highway Engineering.`},railway:{label:`Railway Major`,hint:`Shown by default when industry is Railway Engineering.`},waterway:{label:`Waterway Major`,hint:`Shown by default when industry is Waterway Engineering.`}},fields:{industry:`Industry`,code:`Code`,investScale:`Investment Scale (10k CNY)`,landScale:`Land Scale (mu)`,formula:`Formula`,amount:`Amount (CNY)`,consultFactor:`Consult Category Factor`,majorFactor:`Major Factor`,workEnvCoefficient:`Work environment coefficient`,workEnvCoefficientPlaceholder:`Default 1`,budgetAmount:`Budget Amount (CNY)`},sections:{currentSelection:`Current Selection`,basicInfo:`Basic Info`,scaleBase:`Scale Base`,benchmarkBudget:`Benchmark Budget`,serviceBudget:`Service Budget`},empty:{selectIndustry:`Select an industry first. Then choose consult category and matched majors will appear.`,selectConsult:`Select a consult category first. Matched general and major categories will then appear.`,scaleUnavailable:`The selected consult category does not support scale method, so major categories are hidden.`,consultCostOnly:`The selected consult category is priced by industry summary. Major factor is auto-applied by industry.`},placeholder:{selectConsultFirst:`Select consult category first`,scaleUnavailable:`Current category does not support scale method`,selectMajorFirst:`Select major first`,preferLandScale:`Current major is priced by land scale`,investUnavailable:`Current major does not support investment scale`,consultCostOnly:`Current category supports investment scale only`,landUnavailable:`Current major does not support land scale`,input:`Please input`,selectScaleFirst:`Select and input a scale value first`}},methodUnavailable:{defaultTitle:`This Service Is Not Applicable to Current Pricing Method`},xmCard:{categories:{info:`Basic Info`,scaleInfo:`Scale Info`,consultCategoryFactor:`Consult Category Factor`,majorFactor:`Major Factor`,contract:`Contract Segment Management`}},htFeeMethodTypeLine:{feeDetail:`Fee Details`,unnamed:`Unnamed`,title:`Segment: {contractName} · {rowName}`,contractId:`Contract ID: {id}`,quantityUnitPrice:`Quantity Unit Price`},pricingScale:{totalInvestmentByIndustry:`{industryName} Total Investment`,totalInvestment:`Total Investment`,clickToInput:`Optional, enter manually, numeric, 4 decimals`,projectLabel:`Project {index}`,columns:{investAmount:`Cost Amount (10k CNY)`,landArea:`Land Area (mu)`,benchmarkBudget:`Benchmark Budget (CNY)`,basicWork:`Basic Work`,optionalWork:`Optional Work`,subtotal:`Subtotal`,budgetFee:`Budget Fee`,consultCategoryFactor:`Consult Category Factor`,majorFactor:`Major Factor`,calculation:`Value of this calculation`,workStageFactor:`Work Stage Factor (Draft/Review)`,workRatio:`Work Ratio (%)`,total:`Total`,remark:`Remark`,majorGroup:`Major Code and Major Name`,enterdata:`Please enter data`,name:`Name`,number:`Code`,projecttype:`Project Type`,computbase:`Calculation Basis`,computbaseoption:{a:`Total Construction Project Cost`,b:`Construction and Installation Cost`,c:`Land Expropriation and Resettlement Cost`,d:`Other Construction Project Costs`,e:`Others`},basetype:`Base Category`,basetypeoption:{a:`Estimated Price`,b:`Preliminary Estimate Price`,c:`Budget Price`,d:`Tender Control Price`,e:`Bid Quotation`,f:`Contract Signed Price`,g:`Contract Settlement Price`,h:`Final Account Price`},base:`Calculation Base`,formula:`Calculation Formula`,calculationAmount:`Calculated Amount (Yuan)`,calculationGroup:`Calculation Formula`,serviceFee:`Service Fee (Yuan)`,countbase:`Calculation Basis`,UnitPrice:`Unit Price`},tooltip:{resetInvestAmount:`Click ↻ to restore default cost amount for this column`,resetLandArea:`Click ↻ to restore default land area for this column`,resetConsultCategoryFactor:`Click ↻ to restore default consult category factor for this column`,resetMajorFactor:`Click ↻ to restore default major factor for this column`}},pricingPane:{projectCount:`Project Count`,clearTitle:`Confirm Clear Current Details`,confirmClear:`Confirm Clear`,useDefault:`Use Default Data`,overrideTitle:`Confirm Override Current Details`,confirmOverride:`Confirm Override`,investment:{title:`Investment Scale Details`,clearDesc:`This will clear current investment scale details. Continue?`,overrideDesc:`Use contract default data to override current investment scale details. Continue?`},land:{title:`Land Scale Details`,clearDesc:`This will clear current land scale details. Continue?`,overrideDesc:`Use contract default data to override current land scale details. Continue?`,columns:{name:`Name`,countbase:`Calculation Basis`,countbasevalue:`Confirm rebar weight`,base:`Calculation Base`,basetip:`Please enter data`,UnitPrice:`Unit Price`,calculationAmount:`Calculated Amount (Yuan)`,calculation:`Calculated Value`,projectquantity:`Quantity Basis`,projectquantityoption:{a:`Estimation`,b:`Preliminary Estimate`,c:`Budget`,d:`Bidding Documents`,e:`Tender Documents`,f:`Contract Documents`,g:`Project Settlement`,h:`Project Final Account`},ProjectSection:`Quantity Stage`,ProjectSectionoption:{a:`Preparation`,b:`Submission for Review`,c:`Final Review & Approval`,d:`Re-approval`,e:`Others`}}}},workloadPricing:{title:`Workload Details`,unavailableTitle:`Workload Method Not Applicable`,unavailableMessage:`No workload tasks are associated with this service. No input is needed.`,clickToInput:`Click to input`,none:`N/A`,total:`Grand Total`,columns:{code:`Code`,name:`Name`,budgetBase:`Budget Base`,budgetBasevalue:`Number of entries`,budgetReferenceUnitPrice:`Budget Reference Unit Price`,budgetReferenceUnitPricetip:`Click to enter`,consultCategoryFactor:`Consult Category Factor`,cHigh:`Calculated Cost (Yuan)`,serviceFee:`Calculated Value (Yuan)`,QuantityBasis:`Quantity Basis`,ProjectQuantityPhase:`Project Quantity Phase`,remark:`Remark`}},hourlyFeeGrid:{title:`Hourly Method Details`,clickToInput:`Click to input`,total:`Grand Total`,columns:{code:`Code`,name:`Name`,technician:`Technician`,assistantEngineer:`Other cost personnel`,midEngineer:`Intermediate Engineer (or Level 2 Cost Engineer)`,seniorEngineer:`Senior Engineer (or Level 1 Cost Engineer)`,profSeniorEngineer:`Professor-level Senior Engineer`,unitPrice:`Unit Price (CNY/workday)`,workdayCount:`Workday Count`,subtotal:`Subtotal (CNY)`,avgUnitPrice:`Average Unit Price (CNY/workday)`,remark:`Remark`}},otherService:{title:`Other Service Calculation`,addnew:`add new`,clickToInput:`Click to Input`,total:`Subtotal`,columns:{num:`No.`,code:`Code`,name:`Name`,feeItem:`Fee Item`,unit:`Unit`,quantity:`Quantity`,unitPrice:`Unit Price`,serviceFee:`Service Fee (Yuan)`,remark:`Remark`,actions:`Actions`}},xmScaleGrid:{syncToastTitle:`Consulting Services Synced`,syncToastDesc:`Scale info synced to consulting services ({serviceCount} services, {methodCount} pricing pages, {rowCount} rows)`},xmInfo:{defaultProjectName:`xxx Cost Consulting Service`,defaultDesc:`When providing cost consulting services, penalties should be graded by service quality. For scores >=85 and <90, penalty is 10% of budget fee; >=80 and <85: 20%; >=75 and <80: 30%; >=70 and <75: 40%; <70: 50% or above.`,industryHint:`Changing industry requires reset and re-selection`,industryHintAria:`Industry hint`,createFromHomeFirst:`Please create a project from Home before entering this page.`,fields:{projectName:`Project Name`,projectNametip:`*Note* This is optional. The information you fill in will only be used to automatically generate the preparation report.*`,projectIndustry:`Industry`,overview:`Project Overview`,overviewcontent:`(1) Project Scale Description:
(2) Total Project Investment:
(3) Construction and Installation Engineering Costs Include:
(4) Land Acquisition and Demolition Compensation Costs of This Project Include:
(5) Other Engineering Construction Costs Include:
(6) Contingency Reserve:
(7) Construction Period Loan Interest`,overviewtip:`*Tip* This item is optional. The filled content is only used for automatically generating the compiled report.`,preparedBy:`Prepared By`,reviewedBy:`Reviewed By`,preparedCompany:`Prepared Company`,preparedDate:`Prepared Date`,desc:`Other Notes`,desctip:`*Note* This content is optional. The information filled in is only used for automatically generating report content. You may provide the work requirements being commissioned (on-site services, service personnel, service assessment, etc.).`},placeholders:{overview:`Enter project overview`,preparedBy:`Enter preparer`,reviewedBy:`Enter reviewer`,preparedCompany:`Enter prepared company`}}},Rr={common:{cancel:`取消`,confirm:`确认`,delete:`删除`,close:`关闭`,clear:`清空`,loading:`加载中...`},app:{projectConflict:{title:`检测到项目重复打开`,desc:`项目「{name}」已在其他页面处于活跃状态。为避免 IndexedDB 数据冲突,本页面已阻断编辑。`,countdown:`本页将在 {seconds} 秒后自动尝试关闭。你也可以先在新标签页打开其他项目。`,opened:`(已打开)`,lastEdited:`最后编辑:{time}`,openDefault:`打开默认项目`,createAndOpen:`新建项目并打开`}},home:{title:`鄂建文202333号
《湖北省建设工程造价咨询服务收费参考标准(试行)》`,subtitle:`项目计算 · 单项速算 · 相关文件 · 导入数据`,projectCalcTab:`项目计算`,quickCalcTab:`快速计算`,cards:{heroTitle:`智能预算一键生成`,heroSubTitle:`助力《规范》高效落地`,heroDesc:`交通建设项目工程造价咨询服务费计算`,projectBudget:`项目预算`,projectBudgetDesc:`适用于多合同段、项目级整体计算,支持导出/导入完整项目数据`,quickCalc:`单项速算`,quickCalcDesc:`适用于单项服务试算,选择行业、咨询类型、工程专业,输入基数秒出结果`,importData:`导入数据`,importDataDesc:`导入".zw"数据包,并自动新建一个项目用于恢复数据,不会覆盖现有项目`,enter:`进入计算`,developing:`正在开发`,pickFile:`选择文件`,pickExisting:`选择已有项目`,relatedFiles:`相关文件`,relatedFilesDesc:`进入用户系统文件页面,查看收费文件、合同文件、服务内容和工作要求`,openRelatedFiles:`打开页面`},dialog:{newProject:`新建项目`,chooseIndustryDesc:`选择工程行业后,直接进入项目计算页面。`,industry:`工程行业`,selectIndustry:`请选择工程行业`,entering:`进入中...`,enterProjectCalc:`进入项目计算`,confirmImport:`确认导入数据`,confirmImportDesc:`将导入“{file}”数据包`,confirmImportAction:`确认导入并新建项目`,chooseExistingProject:`选择已有项目`,chooseExistingProjectDesc:`从项目列表中选择一个项目并直接进入工作台。`,noProjectYet:`当前暂无可进入的项目,请先新建项目。`}},tab:{toolbar:{light:`浅色`,dark:`深色`,language:`语言`,importData:`导入数据`,exportData:`导出数据`,exportReport:`导出报表`,savedata:`保存数据`,userGuide:`使用引导`,importexport:`导入/导出`,exporttable:`导出表格`,exportworddocument:`导出word文档`,projectmanagement:`项目管理`,returntohomepage:`返回首页`,reset:`重置`,resetting:`重置中...`,projectList:`项目列表`,projectCount:`项目数量:{count}/{max}`,createProject:`新建项目`,backHome:`返回入口`,resetAll:`清除全部项目`,opened:`(已打开)`,lastEdited:`最后编辑:{time}`},menu:{closeAll:`删除所有`,closeLeft:`删除左侧`,closeRight:`删除右侧`,closeOther:`删除其他`},dialog:{resetTitle:`确认重置`,resetDesc:`将全部项目数据,并恢复默认页面,确认继续吗?`,confirmReset:`确认重置`,importOverrideTitle:`确认导入覆盖`,importOverrideDesc:`将使用“{file}”覆盖当前本地全部数据,是否继续?`,confirmOverride:`确认覆盖`,newProjectTitle:`新建项目`,newProjectDesc:`选择工程行业后,将在新标签页直接打开新项目计算页面。`,createAndOpen:`新建并打开`,creating:`创建中...`,projectLimitTitle:`项目数量已达上限`,projectLimitDesc:`当前项目数量已达到 {max} 个,请先删除一个项目后再添加。`,iKnow:`我知道了`,deleteProjectTitle:`确认删除项目`,deleteCurrentProjectDesc:`确认删除当前项目「{name}」吗?将先清空该项目全部本地数据并返回首页。`,deleteProjectDesc:`确认删除项目「{name}」吗?这会移除该项目本地数据。`},guide:{title:`新用户引导`,later:`稍后再看`,prev:`上一步`,next:`下一步`,finish:`完成并不再自动弹出`,jumpToStep:`跳转到第 {index} 步`,steps:{step1:{title:`项目计算总览`,description:`这个引导只说明项目计算主链路,按“项目级设置 -> 合同段 -> 服务计费 -> 导出报表”的顺序理解即可。`,point1:`项目计算入口是“项目卡片”,左侧流程线会带你按顺序完成配置。`,point2:`页面里的表单和表格会自动保存,本地修改通常无需手动点击保存。`,point3:`项目级数据会影响后续合同段和报表结果,建议先补齐项目级信息。`},step2:{title:`项目级配置入口`,description:`项目级配置主要包括基础信息、规模信息、咨询分类系数、工程专业系数四部分。`,point1:`基础信息:维护项目名称、工程行业等项目基础资料。`,point2:`规模信息:按专业填写项目规模,为后续预算取值提供依据。`,point3:`两个系数页:维护预算取值和说明,作为项目计算的调节项。`},step3:{title:`先填基础信息`,description:`先完成基础信息页,尤其是项目名称和工程行业,后续所有项目计算都会依赖这里的数据。`,point1:`项目名称会用于主页列表、标签页显示和报表导出。`,point2:`工程行业决定规模信息结构、专业树和部分预算取值逻辑。`,point3:`如果项目名称留空,系统会自动回填默认项目名称。`},step4:{title:`维护规模信息`,description:`规模信息页用于录入项目级规模数据,这是项目计算的基础输入之一。`,point1:`按专业填写对应规模值,数值会参与后续服务预算取值和汇总。`,point2:`表格支持直接编辑、批量粘贴、撤销重做,适合一次性录入多行数据。`,point3:`分组行和固定汇总行会自动计算,便于快速检查录入结果。`},step5:{title:`维护项目系数`,description:`咨询分类系数和工程专业系数用于调整项目预算取值,建议在进入合同段前先检查完整。`,point1:`咨询分类系数页:按咨询分类维护预算取值与说明。`,point2:`工程专业系数页:按专业树维护预算取值与说明。`,point3:`两个系数页都支持批量粘贴和撤销重做,适合集中维护。`},step6:{title:`进入合同段计算`,description:`项目级配置完成后,再进入合同段管理,逐个维护合同段的规模和服务费用。`,point1:`先新增合同段,再进入合同段详情页继续计算。`,point2:`合同段下的规模信息用于该合同段自己的计费数据,不会和其他合同段串数据。`,point3:`咨询服务页负责生成服务明细,并作为各计费方法页面的入口。`},step7:{title:`选择计费方法`,description:`在合同段的咨询服务明细中,可进入具体服务计算页,按服务适用情况填写计费方法数据。`,point1:`常见方法包括投资规模法、用地规模法、工作量法和工时法。`,point2:`不同服务可启用不同方法,系统会按填写结果汇总到服务小计和确认金额。`,point3:`如果默认计算值需要调整,可直接修改确认金额或说明字段。`},step8:{title:`汇总与导出`,description:`完成项目级和合同段级计算后,最后再检查汇总结果并导出报表。`,point1:`先检查项目名称、规模信息、系数和各合同段服务金额是否完整。`,point2:`确认无误后再执行报表导出,导出结果会按当前项目数据生成。`,point3:`如果做了大范围调整,建议先导出备份,再继续修改。`}}},toast:{export:`导出报表`,success:`导出成功`,failed:`导出失败`,saveSuccess:`保存成功`,saveFailed:`保存失败`},messages:{defaultProjectLabel:`默认项目`,defaultProjectName:`造价项目`,projectNamePrefix:`项目-{id}`,contractFallbackName:`合同段-{index}`,reportFileSuffix:`预算文件`,reportGenerating:`正在生成报表文件...`,reportExportDone:`报表导出完成`,reportExportFailedRetry:`报表导出失败,请重试`,importFailedTitle:`导入失败`,importProjectIdMissing:`该数据包不包含项目标识(旧版本导出包),为避免串项目已禁止导入。`,importProjectMismatch:`该数据包属于其他项目,不能覆盖当前项目。`,importInvalidFile:`文件无效、已损坏或被修改。`,importCryptoUnavailable:`当前运行环境不支持安全解密导入,请使用 HTTPS 域名或本地安全环境访问后重试。`,importWriteError:`写入本地数据时发生错误。`,openFile:`打开文件`}},typeLine:{copy:`复制`,copied:`已复制`,copyFailed:`复制失败`,brandAlt:`众为咨询`,supportText:`本网站由众为工程咨询有限公司提供免费技术支持`,aboutTitle:`关于我们`,companyName:`众为工程咨询有限公司`,openOfficialSiteAria:`跳转到官网首页`,officialSiteTitle:`官网首页`,aboutParagraph1:`众为工程咨询有限公司 2009 年成立,专注工程造价与工程成本管控全过程咨询,是广东省政府审计入库优选单位。公司服务覆盖多领域、全类型客户,累计服务投资额超万亿元,深度参与港珠澳大桥、澳门大学横琴校区等国家级重点工程,参编三十余项国家及省市行业标准。`,aboutParagraph2:`公司立足大湾区,布局全球,设有澳门公司、斯里兰卡分公司,具备跨境与海外项目服务能力,以十五年专业沉淀、万亿级项目经验,为客户提供精准、可靠的工程咨询服务。`},agGrid:{resetDefault:`恢复默认值`},ht:{title:`合同段列表`,projectTotalBudget:`项目总预算金额:{amount}`,budgetLoading:`计算中...`,selectedCount:`已选 {count} 个`,exportSelected:`导出已选`,deleteSelected:`删除已选`,cancelSelect:`取消`,addContract:`添加合同段`,batchDelete:`批量删除`,exportContracts:`导出合同段`,importContracts:`导入合同段`,searchPlaceholder:`搜索合同段名称或ID`,clearFilter:`清空筛选`,searchingHint:`搜索中({filtered} / {total}),已关闭拖拽排序`,selectModeExportHint:`导出选择模式:勾选合同段后点击“导出已选”`,selectModeDeleteHint:`删除选择模式:勾选合同段后点击“删除已选”`,setupRequiredHint:`请先在“基础信息”里新建项目并选择工程行业后,再新增或导入合同段`,listLayout:`列表布局`,gridLayout:`网格布局`,dragSort:`拖动排序`,dragSortSearchOff:`拖动排序(搜索时关闭)`,edit:`编辑`,remove:`删除`,idLabel:`ID{id}`,contractBudget:`预算:{amount}`,contractBudgetLine:`本合同预算金额:{amount}`,createdAt:`创建时间:{time}`,emptyTitle:`暂无合同卡片`,emptyDesc:`赶紧来添加吧`,notFound:`未找到匹配的合同段`,backToTop:`回到顶部`,editContract:`编辑合同段`,createContract:`新增合同段`,contractTabTitle:`合同段{name}`,contractName:`合同段名称`,contractNamePlaceholder:`请输入合同段名称`,save:`保存`,ok:`确定`,toastSuccessTitle:`操作成功`,createSuccess:`新建成功`,editSuccess:`编辑成功`,deleteSuccess:`删除成功`,sortDone:`排序完成`,exportSuccess:`导出成功({count} 个合同段)`,importSuccess:`导入成功({count} 个合同段)`,deleteBatchSuccess:`删除成功({count} 个合同段)`,tipTitle:`提示`,exportFailedTitle:`导出失败`,importFailedTitle:`导入失败`,batchDeleteFailedTitle:`批量删除失败`,retry:`请重试。`,selectAtLeastOne:`请先勾选至少一个合同段。`,noContractsToDelete:`未找到可删除的合同段。`,industryMissingForExport:`未读取到当前项目工程行业,请先在“基础信息”里新建项目。`,importIndustryMismatch:`工程行业不一致(导入包:{importIndustry},当前项目:{currentIndustry})。`,importCurrentIndustryMissing:`当前项目未设置工程行业,请先在“基础信息”里新建项目。`,importPackageIndustryMissing:`导入包缺少工程行业信息,请使用最新版本重新导出后再导入。`,importFileInvalid:`文件无效、已损坏或不是合同段导出文件。`,importCryptoUnavailable:`当前运行环境不支持安全解密导入,请使用 HTTPS 域名或本地安全环境访问后重试。`,deleteSingleTitle:`确认删除合同段`,deleteSingleDesc:`即将删除“{name}”及其关联咨询服务和计价数据,是否继续?`,deleteBatchTitle:`确认批量删除`,deleteBatchDesc:`即将删除 {count} 个合同段及其关联咨询服务和计价数据,是否继续?`},htCard:{title:`合同段:{name}`,subtitle:`合同段ID{id}`,metaBudget:`合同段预算金额:{amount}`,currencySuffix:``,categories:{baseInfo:`合同基础信息`,scaleInfo:`合同规模`,services:`咨询服务表`,consultFactor:`咨询分类系数`,majorFactor:`工程专业系数`,additionalFee:`附加工作费`,reserveFee:`预备费`,summary:`汇总`}},htBaseInfo:{title:`基础信息`,defaultQuality:`造价咨询服务的综合评价应达到"较好"或综合评分90分`,qualityLabel:`质量要求`,qualityPlaceholder:`请输入质量要求`,durationLabel:`工期要求`,durationPlaceholder:`请输入工期要求`},htFactors:{consultCategoryTitle:`咨询分类系数明细`,majorTitle:`工程专业系数明细`},htFee:{additionalTitle:`附加工作费`,reserveTitle:`预备费`},htInfo:{scaleDetailTitle:`合同规模明细`},htFeeRate:{baseLabel:`基数(所有服务费预算合计)`,reserveBaseLabel:`基数(咨询服务总计 + 附加工作费总计)`,rateLabel:`费率(%`,ratePlaceholder:`请输入费率建议1 ~ 5`,budgetFeeLabel:`预算费用(自动计算)`,remarkLabel:`说明`,remarkPlaceholder:`请输入说明`},htZxFw:{title:`咨询服务明细`,warning:`※ 请注意检查并修改《规范》建议的限值或特殊值,并在确认金额栏修改`,editTabTitle:`服务编辑-{name}`,subtotal:`小计`,edit:`编辑`,resetDefault:`恢复默认`,delete:`删除`,processDraft:`编制`,processReview:`审核`,none:`无选项,不可编辑`,columns:{code:`编码`,name:`名称`,process:`工作环节`,investScale:`投资规模法`,landScale:`工程量法`,workload:`工作量法`,workname:`材料、设备询(核)价`,hourly:`工时法`,subtotal:`小计`,finalFee:`确认金额 ✎`,finalFeeTooltip:`该列支持手动修改,修改后会自动汇总到固定小计行`,remark:`备注`,actions:`操作`},dialog:{resetTitle:`确认恢复默认数据`,resetDesc:`会使用合同卡片里面最新填写的规模信息以及系数,自动计算默认数据,覆盖“{name}”当前数据,是否继续?`,confirmReset:`确认恢复`,deleteTitle:`确认删除服务`,deleteDesc:`将逻辑删除“{name}”,已填写的数据不会清空,重新勾选后会恢复,是否继续?`}},htSummary:{title:`合同段汇总`,total:`合计`,remark:`说明`,placeholder:`请先填咨询服务/附加工作费/预备费的数据`,additionalPrefix:`附加工作费`,reservePrefix:`预备费`,explainByRate:`按费率{rate}%计得{fee}元`,explainByHourly:`按工时法计得{fee}元`,explainByQuantity:`按数量单价计得{fee}元`,columns:{code:`编码`,name:`名称`,investScale:`投资规模法`,landScale:`用地规模法`,workload:`工作量法`,hourly:`工时法`,subtotal:`小计`,finalFee:`确认金额`}},htFeeGrid:{subtotal:`小计`,currentRow:`当前行`,unnamed:`未命名`,edit:`编辑`,clear:`清空`,add:`新增`,editTabTitle:`费用编辑-{name}`,columns:{name:`名字`,rateFee:`费率计取`,hourlyFee:`工时法`,quantityUnitPriceFee:`数量单价`,subtotal:`小计`,actions:`操作`},dialog:{clearTitle:`确认清空`,clearDesc:`将清空“{name}”及其编辑页面的可填和自动计算数据,是否继续?`,confirmClear:`确认清空`}},xmFactorGrid:{clickToInput:`点击输入`,columns:{standardFactor:`标准系数`,budgetValue:`预算取值`,remark:`说明`,groupName:`专业编码以及工程专业名称`,code:`序号`,projectname:`工程专业名称`}},serviceSelector:{title:`选择服务`,clear:`清空`,empty:`暂无服务`},zxFwView:{contractPrefix:`合同段:{name}`,calcSuffix:`计算`,contractId:`合同ID{id}`,workContentTitle:`工作内容`,categories:{investmentScale:`投资规模法`,investmentScaleFormula:`投资规模法计算公式`,landScale:`工程量法`,landScaleFormula:`用地规模法计算公式`,workload:`工作量法`,hourly:`工时法`,workContent:`工作内容`,otherservice:`其他服务`},formulaColumns:{subtitle:`直接展示当前计价法 store 的最新明细,随数据变更自动同步。`,amount:`金额(元)`,basicFormula:`基本工作计算式`,optionalFormula:`可选工作计算式`},unavailable:{investmentScaleTitle:`该服务不适用投资规模法`,investmentScaleMessage:`当前服务未启用规模法,投资规模法不可编辑。`,landScaleTitle:`该服务不适用用地规模法`,landScaleMessage:`当前服务仅支持投资规模法,用地规模法不可编辑。`,workloadTitle:`该服务不适用工作量法`,workloadMessage:`当前服务未启用工作量法,工作量法不可编辑。`,hourlyTitle:`该服务不适用工时法`,hourlyMessage:`当前服务未启用工时法,工时法不可编辑。`}},htFeeDetail:{subtotal:`小计`,currentRow:`当前行`,clickToInput:`点击输入`,addRow:`添加行`,columns:{no:`序号`,feeItem:`费用项`,unit:`单位`,quantity:`数量`,unitPrice:`单价(元)`,budgetFee:`预算费用(元)`,remark:`说明`,actions:`操作`},dialog:{deleteTitle:`确认删除行`,deleteDesc:`将删除“{name}”这条明细,是否继续?`}},workContent:{title:`工作内容`,addCustom:`添加自定义内容`,clickToInput:`点击输入`,clickToInputContent:`点击输入工作内容`,currentRow:`当前行`,unnamed:`未命名`,ungrouped:`未分组`,type:{basic:`基本工作`,optional:`可选工作`,daily:`日常顾问`,special:`专项顾问`,additional:`附加工作`,custom:`自定义`},columns:{no:`序号`,content:`工作内容`,type:`工作类型`,remark:`备注`,actions:`操作`},dialog:{deleteTitle:`确认删除行`,deleteDesc:`将删除“{name}”这条明细,是否继续?`}},quickCalc:{projectName:`快速计算`,industryLabel:`行业 {name}`,selectIndustry:`请选择工程行业`,saving:`保存中...`,synced:`已同步行业`,notSelectedIndustry:`未选择行业`,notSelected:`未选择`,consultCategory:`咨询类别`,majorCategory:`工程专业`,types:{consult:{label:`咨询类别(常用)`,hint:`先选择咨询类别,再补规模和预算参数。`},general:{label:`通用专业`,hint:`跨行业共用的补偿与其他费用专业。`},road:{label:`公路工程专业`,hint:`首页行业为公路工程时默认展示。`},railway:{label:`铁路工程专业`,hint:`首页行业为铁路工程时默认展示。`},waterway:{label:`水运工程专业`,hint:`首页行业为水运工程时默认展示。`}},fields:{industry:`工程行业`,code:`编码`,investScale:`投资规模(万元)`,landScale:`用地规模(亩)`,formula:`计算式`,amount:`金额(元)`,consultFactor:`咨询分类系数`,majorFactor:`工程专业系数`,workEnvCoefficient:`工作环节系数`,workEnvCoefficientPlaceholder:`默认 1`,budgetAmount:`预算金额(元)`},sections:{basicInfo:`基础信息`,scaleBase:`计算基数`,benchmarkBudget:`基准预算`,serviceBudget:`服务预算`},empty:{selectIndustry:`请选择工程行业。选中后可先选择咨询类别,再显示对应专业分类。`,selectConsult:`请先选择咨询类别。选中后才会显示匹配的通用专业和工程专业分类。`,scaleUnavailable:`当前咨询类别不适用规模法,因此不显示专业分类。`,consultCostOnly:`当前咨询类别按行业汇总计价,工程专业系数已按所选行业自动带入,不再显示内部互补专业行。`},placeholder:{selectConsultFirst:`请先选择咨询类别`,scaleUnavailable:`当前分类不适用规模法`,selectMajorFirst:`请先选择工程专业`,preferLandScale:`当前专业按用地规模计价`,investUnavailable:`当前专业不适用投资规模`,consultCostOnly:`当前分类仅支持投资规模`,landUnavailable:`当前专业不适用用地规模`,input:`请输入`,selectScaleFirst:`请先选择输入对应规模`}},methodUnavailable:{defaultTitle:`该服务不适用当前计价方法`},xmCard:{categories:{info:`项目基础信息`,scaleInfo:`项目规模`,consultCategoryFactor:`咨询分类系数`,majorFactor:`工程专业系数`,contract:`合同段管理`}},htFeeMethodTypeLine:{feeDetail:`费用明细`,unnamed:`未命名`,title:`合同段:{contractName} · {rowName}`,contractId:`合同ID{id}`,quantityUnitPrice:`数量单价`},pricingScale:{totalInvestmentByIndustry:`{industryName}总投资`,totalInvestment:`总投资`,clickToInput:`非必填手动录入数字4位`,projectLabel:`项目{index}`,columns:{investAmount:`造价金额(万元)`,landArea:`造价金额(元)`,benchmarkBudget:`基准预算(元)`,basicWork:`基本工作`,optionalWork:`可选工作`,subtotal:`小计`,budgetFee:`预算费用`,consultCategoryFactor:`咨询分类系数`,majorFactor:`专业系数`,calculation:`本计算取值`,workStageFactor:`专业调整系数`,workRatio:`工作比率与数量比`,total:`合计`,remark:`说明`,majorGroup:`项目明细费用`,enterdata:`请输入数据`,name:`名称`,number:`编码`,projecttype:`工程类型`,computbase:`计算基础`,computbaseoption:{a:`建设项目总费用`,b:`建安工程费用`,c:`征地拆迁费用`,d:`工程建设其他费用`,e:`其他`},basetype:`基数类别`,basetypeoption:{a:`估算价`,b:`概算价`,c:`预算价`,d:`招标控制价`,e:`投标报价`,f:`合同签订价`,g:`合同结算价`,h:`决算价`},base:`计算基数`,formula:`计算公式`,calculationAmount:`计算金额(元)`,calculationGroup:`计算公式`,serviceFee:`服务费用(元)`,countbase:`计算基础`,UnitPrice:`单价`},tooltip:{resetInvestAmount:`点击右侧↻恢复本列默认造价金额`,resetLandArea:`点击右侧↻恢复本列默认用地面积`,resetConsultCategoryFactor:`点击右侧↻恢复本列默认咨询分类系数`,resetMajorFactor:`点击右侧↻恢复本列默认专业系数`}},pricingPane:{projectCount:`项目数量`,clearTitle:`确认清空当前明细`,confirmClear:`确认清空`,useDefault:`使用默认数据`,overrideTitle:`确认覆盖当前明细`,confirmOverride:`确认覆盖`,investment:{title:`投资规模明细`,clearDesc:`将清空当前投资规模明细,是否继续?`,overrideDesc:`将使用合同默认数据覆盖当前投资规模明细,是否继续?`},land:{title:`工程量明细`,clearDesc:`将清空当前用地规模明细,是否继续?`,overrideDesc:`将使用合同默认数据覆盖当前用地规模明细,是否继续?`,columns:{name:`名称`,countbase:`计算基础`,countbasevalue:`确认钢筋重量`,base:`计算基数`,basetip:`请输入数据`,UnitPrice:`单价`,calculationAmount:`计算金额(元)`,calculation:`本计算取值`,projectquantity:`工程量依据`,projectquantityoption:{a:`估算`,b:`概算`,c:`预算`,d:`招标文件`,e:`投标文件`,f:`合同文件`,g:`工程结算`,h:`项目决算`},ProjectSection:`工程量环节`,ProjectSectionoption:{a:`编制`,b:`送审`,c:`审定`,d:`复批`,e:`其他`}}}},workloadPricing:{title:`工作量明细`,unavailableTitle:`该服务不适用工作量法`,unavailableMessage:`当前服务没有关联工作量法任务,无需填写此部分内容。`,clickToInput:`点击输入`,none:``,total:`总合计`,columns:{code:`编码`,name:`名称`,budgetBase:`计算基础`,budgetBasevalue:`条目数量`,budgetReferenceUnitPrice:`计算基数(份)`,budgetReferenceUnitPricetip:`点击输入`,consultCategoryFactor:`单价(元/条)`,cHigh:`计算费用(元)`,serviceFee:`本计算取值(元)`,QuantityBasis:`工程量依据`,ProjectQuantityPhase:`工程量环节`,remark:`说明`}},hourlyFeeGrid:{title:`工时法明细`,clickToInput:`点击输入`,total:`总合计`,columns:{code:`编码`,name:`名称`,assistantEngineer:`其他造价人员`,midEngineer:`二级造价工程师(或中级职称)`,seniorEngineer:`一级造价工程师(或高级职称)`,profSeniorEngineer:`正高级造价工程师`,unitPrice:`单价(元/工日)`,workdayCount:`工日数量(工日)`,subtotal:`费用小计(元)`,unitPrice2:`单价(元/工日)`,workdayCount2:`工日数量(工日)`,subtotal2:`费用小计(元)`,unitPrice3:`单价(元/工日)`,workdayCount3:`工日数量(工日)`,subtotal3:`费用小计(元)`,unitPrice4:`单价(元/工日)`,workdayCount4:`工日数量(工日)`,subtotal4:`费用小计(元)`,unitPrice5:`单价(元/工日)`,workdayCount5:`工日数量(工日)`,subtotal5:`费用小计(元)`,unitPrice6:`单价(元/工日)`,workdayCount6:`工日数量(工日)`,subtotal6:`费用小计(元)`,avgUnitPrice:`折算单价(元/工日)`,remark:`说明`,total:`合计`,referenceUnitPrice:`参考单价(元/工日)`,laborBudgetUnitPrice:`劳动预算单价(元/工日)`,compositeBudgetUnitPrice:`综合预算单价(元/工日)`,adoptedBudgetUnitPrice:`采用单价(元/工日)`,personnelCount:`人员数量(人)`,serviceBudget:`服务费用(元)`}},otherService:{title:`其他服务计算`,addnew:`新增条目`,clickToInput:`点击输入`,total:`小计`,columns:{num:`序号`,code:`编码`,name:`名称`,feeItem:`费用项`,unit:`单位`,quantity:`数量`,unitPrice:`单价`,serviceFee:`服务费用(元)`,remark:`说明`,actions:`操作`}},xmScaleGrid:{syncToastTitle:`已同步咨询服务`,syncToastDesc:`规模信息已同步到咨询服务({serviceCount} 项服务,{methodCount} 个计价页,{rowCount} 行)`},xmInfo:{defaultProjectName:`xxx造价咨询服务`,defaultDesc:`在履行造价咨询服务时宜根据咨询服务质量情况分级确定相应的处罚金额。其中考评得分在大于及等于85和小于90分时处罚金额为预算费用的10%其中考评得分在大于及等于80和小于85分时处罚金额为预算费用的20%其中考评得分在大于及等于75和小于80分时处罚金额为预算费用的30%其中考评得分在大于及等于70和小于75分时处罚金额为预算费用的40%其中考评得分小于70分时处罚金额为预算费用的50%以上。`,industryHint:`变更需要重置后重新选择`,industryHintAria:`工程行业提示`,createFromHomeFirst:`请从首页先新建项目后再进入此页面。`,fields:{projectName:`项目名称`,projectNametip:`*提示*本内容为选择性填写,填写内容仅用于自动生成编制报告内容。`,projectIndustry:`工程行业`,overview:`项目概况`,overviewcontent:`(一)项目规模说明:
(二)项目总投资:
(三)建安工程费包括:
(四)本项目征地拆迁费包括:
(五)工程建设其他费用包括:
(六)预备费:
(七)建设期贷款利息:`,overviewtip:`*提示*本内容为选择性填写,填写内容仅用于自动生成编制报告内容。 `,preparedBy:`编制人`,reviewedBy:`复核人`,preparedCompany:`编制单位`,preparedDate:`编制日期`,desc:`其他简明`,desctip:`*提示*本内容为选择性填写,填写内容仅用于自动生成编制报告内容,如可填写委托的工作要求(驻场服务、服务人员、服务考核等要求) `},placeholders:{overview:`请输入项目概况`,preparedBy:`请输入编制人`,reviewedBy:`请输入复核人`,preparedCompany:`请输入编制单位`}}},zr=`jgjs-locale-v1`,Br=`zh-CN`;var Vr={"zh-CN":Rr,"en-US":Lr};const Hr=wr({legacy:!1,locale:(()=>{if(typeof window>`u`)return Br;let e=String(localStorage.getItem(`jgjs-locale-v1`)||``).trim();return e in Vr?e:String(navigator.language||``).toLowerCase().startsWith(`en`)?`en-US`:Br})(),fallbackLocale:Br,messages:Vr}),Ur=e=>{Hr.global.locale.value=e,typeof window<`u`&&localStorage.setItem(zr,e)};var Wr=t(x(),1);const Gr=`ProjectCalcView`,Kr=`QuickCalcView`,qr=`jgjs-workspace-mode-v1`,Jr=`projectId`,Yr=`newProject`,Xr=`openProjectDialog`,Zr=`forceHome`,Qr=`default`,$r=`quick`,ei=`quick-contract-meta-v1`,ti=Hr.global.t(`quickCalc.projectName`),ni=`contract-quick-contract-default`,ri=`quick-xm-base-info-v1`;var ii=`JGJS-HOME-IMPORT-TEMP`,ai=`home-import`,oi=`pending-file`,si=`jgjs-home-import-skip-confirm`,ci=Wr.default.createInstance({name:ii,storeName:ai});const li=()=>{try{return window.localStorage.getItem(qr)}catch{return`project`}},ui=e=>{try{window.localStorage.setItem(qr,e)}catch{}},di=(e,t)=>(async()=>{try{e?await ci.setItem(oi,{name:e.name,type:e.type,lastModified:e.lastModified,blob:e}):await ci.removeItem(oi)}catch{}try{window.sessionStorage.setItem(si,t?.skipWorkspaceConfirm?`1`:`0`)}catch{}})(),fi=async()=>{try{let e=await ci.getItem(oi);if(await ci.removeItem(oi),!e?.blob)return null;let t=String(e.name||`import.zw`).trim()||`import.zw`;return new File([e.blob],t,{type:typeof e.type==`string`?e.type:``,lastModified:typeof e.lastModified==`number`?e.lastModified:Date.now()})}catch{return null}},pi=()=>{try{let e=window.sessionStorage.getItem(si)===`1`;return window.sessionStorage.removeItem(si),e}catch{return!1}},mi=e=>{let t=String(e||``).trim();return t?t.replace(/[^a-zA-Z0-9_-]/g,``).slice(0,64)||`default`:Qr},hi=()=>{try{return mi(new URL(window.location.href).searchParams.get(Jr))}catch{return Qr}},gi=e=>{try{let t=mi(e),n=new URL(window.location.href);n.searchParams.set(Jr,t),window.history.replaceState({},``,`${n.pathname}${n.search}${n.hash}`)}catch(e){console.error(`write project id to url failed:`,e)}},_i=()=>{let e=hi();return gi(e),e},vi=(e,t)=>{try{let n=new URL(window.location.href);return n.searchParams.set(Jr,mi(e)),t?.newProject?(n.searchParams.set(Yr,`1`),t?.openProjectDialog===!1?n.searchParams.set(Xr,`0`):n.searchParams.delete(Xr)):(n.searchParams.delete(Yr),n.searchParams.delete(Xr)),t?.forceHome?n.searchParams.set(Zr,`1`):n.searchParams.delete(Zr),`${n.pathname}${n.search}${n.hash}`}catch{return`/?${Jr}=${encodeURIComponent(mi(e))}`}},yi=e=>`DB-${mi(e)}`;export{Br as C,Tr as D,Ur as E,x as O,ui as S,Hr as T,mi as _,Gr as a,di as b,ni as c,Kr as d,vi as f,yi as g,_i as h,Xr as i,$r as l,pi as m,Zr as n,ti as o,fi as p,Yr as r,ei as s,Qr as t,ri as u,hi as v,zr as w,gi as x,li as y};