guanwei 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.en.md +202 -0
- package/README.md +247 -0
- package/dist/assets/index-CsOD5rSo.js +102 -0
- package/dist/assets/index-CsOD5rSo.js.map +1 -0
- package/dist/assets/index-DQx62TUr.css +1 -0
- package/dist/favicon.svg +12 -0
- package/dist/index.html +15 -0
- package/eslint.config.js +28 -0
- package/index.html +25 -0
- package/package.json +96 -0
- package/postcss.config.js +10 -0
- package/public/favicon.svg +12 -0
- package/scripts/guanwei +245 -0
- package/scripts/install.sh +79 -0
- package/scripts/release.sh +42 -0
- package/scripts/setup.bat +36 -0
- package/scripts/setup.sh +123 -0
- package/server/src/data/db.json +12059 -0
- package/server/src/data/guanwei.db +0 -0
- package/server/src/data/lifeContext.ts +423 -0
- package/server/src/data/spreads.ts +255 -0
- package/server/src/data/tarotCards.ts +2353 -0
- package/server/src/index.ts +71 -0
- package/server/src/routes/ai.ts +376 -0
- package/server/src/routes/divine.ts +140 -0
- package/server/src/routes/hour.ts +40 -0
- package/server/src/routes/tarot.ts +129 -0
- package/server/src/routes/users.ts +140 -0
- package/server/src/services/chartBrief.ts +131 -0
- package/server/src/services/divineStore.ts +188 -0
- package/server/src/services/hourInference.ts +150 -0
- package/server/src/services/llmProvider.ts +181 -0
- package/server/src/services/promptBuilder.ts +327 -0
- package/server/src/services/relativesCheck.ts +139 -0
- package/server/src/services/sixRelatives.ts +70 -0
- package/server/src/services/skills.ts +116 -0
- package/server/src/types/index.ts +104 -0
- package/server/src/utils/semanticAnalyzer.ts +555 -0
- package/server/src/utils/tarotEngine.ts +849 -0
- package/server/tsconfig.json +18 -0
- package/shared/core/data/classics.ts +276 -0
- package/shared/core/data/courses.ts +211 -0
- package/shared/core/data/duanyu.ts +148 -0
- package/shared/core/data/ganzhi.ts +53 -0
- package/shared/core/data/gua64.ts +93 -0
- package/shared/core/data/liuren.ts +18 -0
- package/shared/core/data/liuyao.ts +73 -0
- package/shared/core/data/qimen.ts +27 -0
- package/shared/core/data/region-full.ts +3 -0
- package/shared/core/data/region.ts +310 -0
- package/shared/core/data/tarotSpreads.ts +78 -0
- package/shared/core/data/xiaoliuren.ts +18 -0
- package/shared/core/data/ziwei.ts +97 -0
- package/shared/core/data/zodiac.ts +20 -0
- package/shared/core/engine/astrology.ts +169 -0
- package/shared/core/engine/bazi.ts +306 -0
- package/shared/core/engine/calendar.ts +127 -0
- package/shared/core/engine/daily.ts +133 -0
- package/shared/core/engine/liuren.ts +86 -0
- package/shared/core/engine/liuyao.ts +93 -0
- package/shared/core/engine/meihua.ts +87 -0
- package/shared/core/engine/qimen.ts +78 -0
- package/shared/core/engine/questionFit.ts +94 -0
- package/shared/core/engine/tarot.ts +69 -0
- package/shared/core/engine/trueSolarTime.ts +86 -0
- package/shared/core/engine/xiaoliuren.ts +19 -0
- package/shared/core/engine/ziwei.ts +217 -0
- package/shared/core/engine/ziweiInterpret.ts +161 -0
- package/shared/core/types.ts +206 -0
- package/src/App.tsx +69 -0
- package/src/arts/registry.ts +31 -0
- package/src/assets/react.svg +1 -0
- package/src/components/Backdrop.tsx +27 -0
- package/src/components/BambooArt.tsx +41 -0
- package/src/components/CalendarInput.tsx +131 -0
- package/src/components/DateInput.tsx +103 -0
- package/src/components/Disclaimer.tsx +12 -0
- package/src/components/Empty.tsx +8 -0
- package/src/components/ErrorBoundary.tsx +38 -0
- package/src/components/HomeSideAnchor.tsx +62 -0
- package/src/components/InkVein.tsx +10 -0
- package/src/components/LifeEventsInput.tsx +47 -0
- package/src/components/LocationPicker.tsx +117 -0
- package/src/components/Motes.tsx +65 -0
- package/src/components/Navigation.tsx +80 -0
- package/src/components/ProfileForm.tsx +40 -0
- package/src/components/ProfilePicker.tsx +40 -0
- package/src/components/QuestionFields.tsx +47 -0
- package/src/components/ReportView.tsx +211 -0
- package/src/components/ResultCard.tsx +40 -0
- package/src/components/SealButton.tsx +18 -0
- package/src/components/SiteFooter.tsx +17 -0
- package/src/components/SiteNav.tsx +103 -0
- package/src/components/SongDialog.tsx +64 -0
- package/src/components/SongSearchSelect.tsx +81 -0
- package/src/components/SongSelect.tsx +61 -0
- package/src/components/StarField.tsx +119 -0
- package/src/components/TarotCard.tsx +129 -0
- package/src/components/TimeShichenInput.tsx +29 -0
- package/src/components/arts/AstrologyArt.tsx +141 -0
- package/src/components/arts/BaziArt.tsx +269 -0
- package/src/components/arts/LiurenArt.tsx +87 -0
- package/src/components/arts/LiuyaoArt.tsx +111 -0
- package/src/components/arts/MeihuaArt.tsx +105 -0
- package/src/components/arts/QimenArt.tsx +86 -0
- package/src/components/arts/TarotArt.tsx +110 -0
- package/src/components/arts/XiaoliurenArt.tsx +93 -0
- package/src/components/arts/ZiweiArt.tsx +296 -0
- package/src/data/arts.ts +84 -0
- package/src/data/lifeContext.ts +423 -0
- package/src/data/sample-report.json +146 -0
- package/src/data/shichen.ts +21 -0
- package/src/data/spreads.ts +255 -0
- package/src/data/tarotCards.ts +2353 -0
- package/src/hooks/useAIInterpret.ts +76 -0
- package/src/hooks/useDivine.ts +39 -0
- package/src/hooks/useTheme.ts +29 -0
- package/src/index.css +190 -0
- package/src/lib/utils.ts +6 -0
- package/src/main.tsx +12 -0
- package/src/pages/AboutPage.tsx +25 -0
- package/src/pages/AcademyPage.tsx +128 -0
- package/src/pages/AstrologyPage.tsx +33 -0
- package/src/pages/AuthPage.tsx +263 -0
- package/src/pages/BaZiPage.tsx +33 -0
- package/src/pages/ClassicsPage.tsx +120 -0
- package/src/pages/DemoPage.tsx +161 -0
- package/src/pages/HistoryPage.tsx +133 -0
- package/src/pages/Home.tsx +179 -0
- package/src/pages/HomePage.tsx +174 -0
- package/src/pages/ModulePage.tsx +320 -0
- package/src/pages/SpreadEditor.tsx +230 -0
- package/src/pages/SpreadEditorPage.tsx +105 -0
- package/src/pages/SpreadLibrary.tsx +199 -0
- package/src/pages/SpreadLibraryPage.tsx +17 -0
- package/src/pages/TarotPage.tsx +738 -0
- package/src/pages/ZiWeiPage.tsx +33 -0
- package/src/services/api.ts +342 -0
- package/src/stores/useDivinationStore.ts +22 -0
- package/src/styles/song.css +1066 -0
- package/src/styles/tokens.css +60 -0
- package/src/types/index.ts +104 -0
- package/src/utils/astrologyCalc.ts +61 -0
- package/src/utils/comboEngine.ts +134 -0
- package/src/utils/dst.ts +24 -0
- package/src/utils/panTone.ts +206 -0
- package/src/utils/recordStore.ts +60 -0
- package/src/utils/semanticAnalyzer.ts +555 -0
- package/src/utils/spreadStorage.ts +32 -0
- package/src/utils/storage.ts +27 -0
- package/src/utils/tarotEngine.ts +849 -0
- package/src/utils/userStore.ts +234 -0
- package/src/vite-env.d.ts +1 -0
- package/tailwind.config.js +52 -0
- package/tsconfig.json +40 -0
- package/vite.config.ts +34 -0
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
var vc=Object.defineProperty;var _c=(t,e,i)=>e in t?vc(t,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[e]=i;var Q4=(t,e,i)=>_c(t,typeof e!="symbol"?e+"":e,i);(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const c of r)if(c.type==="childList")for(const o of c.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&s(o)}).observe(document,{childList:!0,subtree:!0});function i(r){const c={};return r.integrity&&(c.integrity=r.integrity),r.referrerPolicy&&(c.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?c.credentials="include":r.crossOrigin==="anonymous"?c.credentials="omit":c.credentials="same-origin",c}function s(r){if(r.ep)return;r.ep=!0;const c=i(r);fetch(r.href,c)}})();var Rs={exports:{}},Fi={},Gs={exports:{}},T0={};/**
|
|
2
|
+
* @license React
|
|
3
|
+
* react.production.min.js
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
6
|
+
*
|
|
7
|
+
* This source code is licensed under the MIT license found in the
|
|
8
|
+
* LICENSE file in the root directory of this source tree.
|
|
9
|
+
*/var K4;function Sc(){if(K4)return T0;K4=1;var t=Symbol.for("react.element"),e=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),c=Symbol.for("react.provider"),o=Symbol.for("react.context"),d=Symbol.for("react.forward_ref"),g=Symbol.for("react.suspense"),f=Symbol.for("react.memo"),E=Symbol.for("react.lazy"),F=Symbol.iterator;function x(N){return N===null||typeof N!="object"?null:(N=F&&N[F]||N["@@iterator"],typeof N=="function"?N:null)}var A={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},y=Object.assign,B={};function _(N,P,g0){this.props=N,this.context=P,this.refs=B,this.updater=g0||A}_.prototype.isReactComponent={},_.prototype.setState=function(N,P){if(typeof N!="object"&&typeof N!="function"&&N!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,N,P,"setState")},_.prototype.forceUpdate=function(N){this.updater.enqueueForceUpdate(this,N,"forceUpdate")};function S(){}S.prototype=_.prototype;function M(N,P,g0){this.props=N,this.context=P,this.refs=B,this.updater=g0||A}var Y=M.prototype=new S;Y.constructor=M,y(Y,_.prototype),Y.isPureReactComponent=!0;var z=Array.isArray,T=Object.prototype.hasOwnProperty,W={current:null},X={key:!0,ref:!0,__self:!0,__source:!0};function Z(N,P,g0){var m0,j0={},I0=null,R0=null;if(P!=null)for(m0 in P.ref!==void 0&&(R0=P.ref),P.key!==void 0&&(I0=""+P.key),P)T.call(P,m0)&&!X.hasOwnProperty(m0)&&(j0[m0]=P[m0]);var M0=arguments.length-2;if(M0===1)j0.children=g0;else if(1<M0){for(var J=Array(M0),Y0=0;Y0<M0;Y0++)J[Y0]=arguments[Y0+2];j0.children=J}if(N&&N.defaultProps)for(m0 in M0=N.defaultProps,M0)j0[m0]===void 0&&(j0[m0]=M0[m0]);return{$$typeof:t,type:N,key:I0,ref:R0,props:j0,_owner:W.current}}function $(N,P){return{$$typeof:t,type:N.type,key:P,ref:N.ref,props:N.props,_owner:N._owner}}function e0(N){return typeof N=="object"&&N!==null&&N.$$typeof===t}function q(N){var P={"=":"=0",":":"=2"};return"$"+N.replace(/[=:]/g,function(g0){return P[g0]})}var c0=/\/+/g;function b(N,P){return typeof N=="object"&&N!==null&&N.key!=null?q(""+N.key):P.toString(36)}function u0(N,P,g0,m0,j0){var I0=typeof N;(I0==="undefined"||I0==="boolean")&&(N=null);var R0=!1;if(N===null)R0=!0;else switch(I0){case"string":case"number":R0=!0;break;case"object":switch(N.$$typeof){case t:case e:R0=!0}}if(R0)return R0=N,j0=j0(R0),N=m0===""?"."+b(R0,0):m0,z(j0)?(g0="",N!=null&&(g0=N.replace(c0,"$&/")+"/"),u0(j0,P,g0,"",function(Y0){return Y0})):j0!=null&&(e0(j0)&&(j0=$(j0,g0+(!j0.key||R0&&R0.key===j0.key?"":(""+j0.key).replace(c0,"$&/")+"/")+N)),P.push(j0)),1;if(R0=0,m0=m0===""?".":m0+":",z(N))for(var M0=0;M0<N.length;M0++){I0=N[M0];var J=m0+b(I0,M0);R0+=u0(I0,P,g0,J,j0)}else if(J=x(N),typeof J=="function")for(N=J.call(N),M0=0;!(I0=N.next()).done;)I0=I0.value,J=m0+b(I0,M0++),R0+=u0(I0,P,g0,J,j0);else if(I0==="object")throw P=String(N),Error("Objects are not valid as a React child (found: "+(P==="[object Object]"?"object with keys {"+Object.keys(N).join(", ")+"}":P)+"). If you meant to render a collection of children, use an array instead.");return R0}function d0(N,P,g0){if(N==null)return N;var m0=[],j0=0;return u0(N,m0,"","",function(I0){return P.call(g0,I0,j0++)}),m0}function E0(N){if(N._status===-1){var P=N._result;P=P(),P.then(function(g0){(N._status===0||N._status===-1)&&(N._status=1,N._result=g0)},function(g0){(N._status===0||N._status===-1)&&(N._status=2,N._result=g0)}),N._status===-1&&(N._status=0,N._result=P)}if(N._status===1)return N._result.default;throw N._result}var i0={current:null},K={transition:null},h0={ReactCurrentDispatcher:i0,ReactCurrentBatchConfig:K,ReactCurrentOwner:W};function G(){throw Error("act(...) is not supported in production builds of React.")}return T0.Children={map:d0,forEach:function(N,P,g0){d0(N,function(){P.apply(this,arguments)},g0)},count:function(N){var P=0;return d0(N,function(){P++}),P},toArray:function(N){return d0(N,function(P){return P})||[]},only:function(N){if(!e0(N))throw Error("React.Children.only expected to receive a single React element child.");return N}},T0.Component=_,T0.Fragment=i,T0.Profiler=r,T0.PureComponent=M,T0.StrictMode=s,T0.Suspense=g,T0.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=h0,T0.act=G,T0.cloneElement=function(N,P,g0){if(N==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+N+".");var m0=y({},N.props),j0=N.key,I0=N.ref,R0=N._owner;if(P!=null){if(P.ref!==void 0&&(I0=P.ref,R0=W.current),P.key!==void 0&&(j0=""+P.key),N.type&&N.type.defaultProps)var M0=N.type.defaultProps;for(J in P)T.call(P,J)&&!X.hasOwnProperty(J)&&(m0[J]=P[J]===void 0&&M0!==void 0?M0[J]:P[J])}var J=arguments.length-2;if(J===1)m0.children=g0;else if(1<J){M0=Array(J);for(var Y0=0;Y0<J;Y0++)M0[Y0]=arguments[Y0+2];m0.children=M0}return{$$typeof:t,type:N.type,key:j0,ref:I0,props:m0,_owner:R0}},T0.createContext=function(N){return N={$$typeof:o,_currentValue:N,_currentValue2:N,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},N.Provider={$$typeof:c,_context:N},N.Consumer=N},T0.createElement=Z,T0.createFactory=function(N){var P=Z.bind(null,N);return P.type=N,P},T0.createRef=function(){return{current:null}},T0.forwardRef=function(N){return{$$typeof:d,render:N}},T0.isValidElement=e0,T0.lazy=function(N){return{$$typeof:E,_payload:{_status:-1,_result:N},_init:E0}},T0.memo=function(N,P){return{$$typeof:f,type:N,compare:P===void 0?null:P}},T0.startTransition=function(N){var P=K.transition;K.transition={};try{N()}finally{K.transition=P}},T0.unstable_act=G,T0.useCallback=function(N,P){return i0.current.useCallback(N,P)},T0.useContext=function(N){return i0.current.useContext(N)},T0.useDebugValue=function(){},T0.useDeferredValue=function(N){return i0.current.useDeferredValue(N)},T0.useEffect=function(N,P){return i0.current.useEffect(N,P)},T0.useId=function(){return i0.current.useId()},T0.useImperativeHandle=function(N,P,g0){return i0.current.useImperativeHandle(N,P,g0)},T0.useInsertionEffect=function(N,P){return i0.current.useInsertionEffect(N,P)},T0.useLayoutEffect=function(N,P){return i0.current.useLayoutEffect(N,P)},T0.useMemo=function(N,P){return i0.current.useMemo(N,P)},T0.useReducer=function(N,P,g0){return i0.current.useReducer(N,P,g0)},T0.useRef=function(N){return i0.current.useRef(N)},T0.useState=function(N){return i0.current.useState(N)},T0.useSyncExternalStore=function(N,P,g0){return i0.current.useSyncExternalStore(N,P,g0)},T0.useTransition=function(){return i0.current.useTransition()},T0.version="18.3.1",T0}var V4;function zr(){return V4||(V4=1,Gs.exports=Sc()),Gs.exports}/**
|
|
10
|
+
* @license React
|
|
11
|
+
* react-jsx-runtime.production.min.js
|
|
12
|
+
*
|
|
13
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
14
|
+
*
|
|
15
|
+
* This source code is licensed under the MIT license found in the
|
|
16
|
+
* LICENSE file in the root directory of this source tree.
|
|
17
|
+
*/var e7;function wc(){if(e7)return Fi;e7=1;var t=zr(),e=Symbol.for("react.element"),i=Symbol.for("react.fragment"),s=Object.prototype.hasOwnProperty,r=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,c={key:!0,ref:!0,__self:!0,__source:!0};function o(d,g,f){var E,F={},x=null,A=null;f!==void 0&&(x=""+f),g.key!==void 0&&(x=""+g.key),g.ref!==void 0&&(A=g.ref);for(E in g)s.call(g,E)&&!c.hasOwnProperty(E)&&(F[E]=g[E]);if(d&&d.defaultProps)for(E in g=d.defaultProps,g)F[E]===void 0&&(F[E]=g[E]);return{$$typeof:e,type:d,key:x,ref:A,props:F,_owner:r.current}}return Fi.Fragment=i,Fi.jsx=o,Fi.jsxs=o,Fi}var t7;function Nc(){return t7||(t7=1,Rs.exports=wc()),Rs.exports}var a=Nc(),v=zr(),u3={},Hs={exports:{}},ue={},Zs={exports:{}},Us={};/**
|
|
18
|
+
* @license React
|
|
19
|
+
* scheduler.production.min.js
|
|
20
|
+
*
|
|
21
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
22
|
+
*
|
|
23
|
+
* This source code is licensed under the MIT license found in the
|
|
24
|
+
* LICENSE file in the root directory of this source tree.
|
|
25
|
+
*/var n7;function Ic(){return n7||(n7=1,(function(t){function e(K,h0){var G=K.length;K.push(h0);e:for(;0<G;){var N=G-1>>>1,P=K[N];if(0<r(P,h0))K[N]=h0,K[G]=P,G=N;else break e}}function i(K){return K.length===0?null:K[0]}function s(K){if(K.length===0)return null;var h0=K[0],G=K.pop();if(G!==h0){K[0]=G;e:for(var N=0,P=K.length,g0=P>>>1;N<g0;){var m0=2*(N+1)-1,j0=K[m0],I0=m0+1,R0=K[I0];if(0>r(j0,G))I0<P&&0>r(R0,j0)?(K[N]=R0,K[I0]=G,N=I0):(K[N]=j0,K[m0]=G,N=m0);else if(I0<P&&0>r(R0,G))K[N]=R0,K[I0]=G,N=I0;else break e}}return h0}function r(K,h0){var G=K.sortIndex-h0.sortIndex;return G!==0?G:K.id-h0.id}if(typeof performance=="object"&&typeof performance.now=="function"){var c=performance;t.unstable_now=function(){return c.now()}}else{var o=Date,d=o.now();t.unstable_now=function(){return o.now()-d}}var g=[],f=[],E=1,F=null,x=3,A=!1,y=!1,B=!1,_=typeof setTimeout=="function"?setTimeout:null,S=typeof clearTimeout=="function"?clearTimeout:null,M=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function Y(K){for(var h0=i(f);h0!==null;){if(h0.callback===null)s(f);else if(h0.startTime<=K)s(f),h0.sortIndex=h0.expirationTime,e(g,h0);else break;h0=i(f)}}function z(K){if(B=!1,Y(K),!y)if(i(g)!==null)y=!0,E0(T);else{var h0=i(f);h0!==null&&i0(z,h0.startTime-K)}}function T(K,h0){y=!1,B&&(B=!1,S(Z),Z=-1),A=!0;var G=x;try{for(Y(h0),F=i(g);F!==null&&(!(F.expirationTime>h0)||K&&!q());){var N=F.callback;if(typeof N=="function"){F.callback=null,x=F.priorityLevel;var P=N(F.expirationTime<=h0);h0=t.unstable_now(),typeof P=="function"?F.callback=P:F===i(g)&&s(g),Y(h0)}else s(g);F=i(g)}if(F!==null)var g0=!0;else{var m0=i(f);m0!==null&&i0(z,m0.startTime-h0),g0=!1}return g0}finally{F=null,x=G,A=!1}}var W=!1,X=null,Z=-1,$=5,e0=-1;function q(){return!(t.unstable_now()-e0<$)}function c0(){if(X!==null){var K=t.unstable_now();e0=K;var h0=!0;try{h0=X(!0,K)}finally{h0?b():(W=!1,X=null)}}else W=!1}var b;if(typeof M=="function")b=function(){M(c0)};else if(typeof MessageChannel<"u"){var u0=new MessageChannel,d0=u0.port2;u0.port1.onmessage=c0,b=function(){d0.postMessage(null)}}else b=function(){_(c0,0)};function E0(K){X=K,W||(W=!0,b())}function i0(K,h0){Z=_(function(){K(t.unstable_now())},h0)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(K){K.callback=null},t.unstable_continueExecution=function(){y||A||(y=!0,E0(T))},t.unstable_forceFrameRate=function(K){0>K||125<K?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):$=0<K?Math.floor(1e3/K):5},t.unstable_getCurrentPriorityLevel=function(){return x},t.unstable_getFirstCallbackNode=function(){return i(g)},t.unstable_next=function(K){switch(x){case 1:case 2:case 3:var h0=3;break;default:h0=x}var G=x;x=h0;try{return K()}finally{x=G}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(K,h0){switch(K){case 1:case 2:case 3:case 4:case 5:break;default:K=3}var G=x;x=K;try{return h0()}finally{x=G}},t.unstable_scheduleCallback=function(K,h0,G){var N=t.unstable_now();switch(typeof G=="object"&&G!==null?(G=G.delay,G=typeof G=="number"&&0<G?N+G:N):G=N,K){case 1:var P=-1;break;case 2:P=250;break;case 5:P=1073741823;break;case 4:P=1e4;break;default:P=5e3}return P=G+P,K={id:E++,callback:h0,priorityLevel:K,startTime:G,expirationTime:P,sortIndex:-1},G>N?(K.sortIndex=G,e(f,K),i(g)===null&&K===i(f)&&(B?(S(Z),Z=-1):B=!0,i0(z,G-N))):(K.sortIndex=P,e(g,K),y||A||(y=!0,E0(T))),K},t.unstable_shouldYield=q,t.unstable_wrapCallback=function(K){var h0=x;return function(){var G=x;x=h0;try{return K.apply(this,arguments)}finally{x=G}}}})(Us)),Us}var i7;function zc(){return i7||(i7=1,Zs.exports=Ic()),Zs.exports}/**
|
|
26
|
+
* @license React
|
|
27
|
+
* react-dom.production.min.js
|
|
28
|
+
*
|
|
29
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
30
|
+
*
|
|
31
|
+
* This source code is licensed under the MIT license found in the
|
|
32
|
+
* LICENSE file in the root directory of this source tree.
|
|
33
|
+
*/var u7;function kc(){if(u7)return ue;u7=1;var t=zr(),e=zc();function i(n){for(var u="https://reactjs.org/docs/error-decoder.html?invariant="+n,l=1;l<arguments.length;l++)u+="&args[]="+encodeURIComponent(arguments[l]);return"Minified React error #"+n+"; visit "+u+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var s=new Set,r={};function c(n,u){o(n,u),o(n+"Capture",u)}function o(n,u){for(r[n]=u,n=0;n<u.length;n++)s.add(u[n])}var d=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),g=Object.prototype.hasOwnProperty,f=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,E={},F={};function x(n){return g.call(F,n)?!0:g.call(E,n)?!1:f.test(n)?F[n]=!0:(E[n]=!0,!1)}function A(n,u,l,h){if(l!==null&&l.type===0)return!1;switch(typeof u){case"function":case"symbol":return!0;case"boolean":return h?!1:l!==null?!l.acceptsBooleans:(n=n.toLowerCase().slice(0,5),n!=="data-"&&n!=="aria-");default:return!1}}function y(n,u,l,h){if(u===null||typeof u>"u"||A(n,u,l,h))return!0;if(h)return!1;if(l!==null)switch(l.type){case 3:return!u;case 4:return u===!1;case 5:return isNaN(u);case 6:return isNaN(u)||1>u}return!1}function B(n,u,l,h,m,p,D){this.acceptsBooleans=u===2||u===3||u===4,this.attributeName=h,this.attributeNamespace=m,this.mustUseProperty=l,this.propertyName=n,this.type=u,this.sanitizeURL=p,this.removeEmptyString=D}var _={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(n){_[n]=new B(n,0,!1,n,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(n){var u=n[0];_[u]=new B(u,1,!1,n[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(n){_[n]=new B(n,2,!1,n.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(n){_[n]=new B(n,2,!1,n,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(n){_[n]=new B(n,3,!1,n.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(n){_[n]=new B(n,3,!0,n,null,!1,!1)}),["capture","download"].forEach(function(n){_[n]=new B(n,4,!1,n,null,!1,!1)}),["cols","rows","size","span"].forEach(function(n){_[n]=new B(n,6,!1,n,null,!1,!1)}),["rowSpan","start"].forEach(function(n){_[n]=new B(n,5,!1,n.toLowerCase(),null,!1,!1)});var S=/[\-:]([a-z])/g;function M(n){return n[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(n){var u=n.replace(S,M);_[u]=new B(u,1,!1,n,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(n){var u=n.replace(S,M);_[u]=new B(u,1,!1,n,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(n){var u=n.replace(S,M);_[u]=new B(u,1,!1,n,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(n){_[n]=new B(n,1,!1,n.toLowerCase(),null,!1,!1)}),_.xlinkHref=new B("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(n){_[n]=new B(n,1,!1,n.toLowerCase(),null,!0,!0)});function Y(n,u,l,h){var m=_.hasOwnProperty(u)?_[u]:null;(m!==null?m.type!==0:h||!(2<u.length)||u[0]!=="o"&&u[0]!=="O"||u[1]!=="n"&&u[1]!=="N")&&(y(u,l,m,h)&&(l=null),h||m===null?x(u)&&(l===null?n.removeAttribute(u):n.setAttribute(u,""+l)):m.mustUseProperty?n[m.propertyName]=l===null?m.type===3?!1:"":l:(u=m.attributeName,h=m.attributeNamespace,l===null?n.removeAttribute(u):(m=m.type,l=m===3||m===4&&l===!0?"":""+l,h?n.setAttributeNS(h,u,l):n.setAttribute(u,l))))}var z=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,T=Symbol.for("react.element"),W=Symbol.for("react.portal"),X=Symbol.for("react.fragment"),Z=Symbol.for("react.strict_mode"),$=Symbol.for("react.profiler"),e0=Symbol.for("react.provider"),q=Symbol.for("react.context"),c0=Symbol.for("react.forward_ref"),b=Symbol.for("react.suspense"),u0=Symbol.for("react.suspense_list"),d0=Symbol.for("react.memo"),E0=Symbol.for("react.lazy"),i0=Symbol.for("react.offscreen"),K=Symbol.iterator;function h0(n){return n===null||typeof n!="object"?null:(n=K&&n[K]||n["@@iterator"],typeof n=="function"?n:null)}var G=Object.assign,N;function P(n){if(N===void 0)try{throw Error()}catch(l){var u=l.stack.trim().match(/\n( *(at )?)/);N=u&&u[1]||""}return`
|
|
34
|
+
`+N+n}var g0=!1;function m0(n,u){if(!n||g0)return"";g0=!0;var l=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(u)if(u=function(){throw Error()},Object.defineProperty(u.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(u,[])}catch(U){var h=U}Reflect.construct(n,[],u)}else{try{u.call()}catch(U){h=U}n.call(u.prototype)}else{try{throw Error()}catch(U){h=U}n()}}catch(U){if(U&&h&&typeof U.stack=="string"){for(var m=U.stack.split(`
|
|
35
|
+
`),p=h.stack.split(`
|
|
36
|
+
`),D=m.length-1,w=p.length-1;1<=D&&0<=w&&m[D]!==p[w];)w--;for(;1<=D&&0<=w;D--,w--)if(m[D]!==p[w]){if(D!==1||w!==1)do if(D--,w--,0>w||m[D]!==p[w]){var I=`
|
|
37
|
+
`+m[D].replace(" at new "," at ");return n.displayName&&I.includes("<anonymous>")&&(I=I.replace("<anonymous>",n.displayName)),I}while(1<=D&&0<=w);break}}}finally{g0=!1,Error.prepareStackTrace=l}return(n=n?n.displayName||n.name:"")?P(n):""}function j0(n){switch(n.tag){case 5:return P(n.type);case 16:return P("Lazy");case 13:return P("Suspense");case 19:return P("SuspenseList");case 0:case 2:case 15:return n=m0(n.type,!1),n;case 11:return n=m0(n.type.render,!1),n;case 1:return n=m0(n.type,!0),n;default:return""}}function I0(n){if(n==null)return null;if(typeof n=="function")return n.displayName||n.name||null;if(typeof n=="string")return n;switch(n){case X:return"Fragment";case W:return"Portal";case $:return"Profiler";case Z:return"StrictMode";case b:return"Suspense";case u0:return"SuspenseList"}if(typeof n=="object")switch(n.$$typeof){case q:return(n.displayName||"Context")+".Consumer";case e0:return(n._context.displayName||"Context")+".Provider";case c0:var u=n.render;return n=n.displayName,n||(n=u.displayName||u.name||"",n=n!==""?"ForwardRef("+n+")":"ForwardRef"),n;case d0:return u=n.displayName||null,u!==null?u:I0(n.type)||"Memo";case E0:u=n._payload,n=n._init;try{return I0(n(u))}catch{}}return null}function R0(n){var u=n.type;switch(n.tag){case 24:return"Cache";case 9:return(u.displayName||"Context")+".Consumer";case 10:return(u._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return n=u.render,n=n.displayName||n.name||"",u.displayName||(n!==""?"ForwardRef("+n+")":"ForwardRef");case 7:return"Fragment";case 5:return u;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return I0(u);case 8:return u===Z?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof u=="function")return u.displayName||u.name||null;if(typeof u=="string")return u}return null}function M0(n){switch(typeof n){case"boolean":case"number":case"string":case"undefined":return n;case"object":return n;default:return""}}function J(n){var u=n.type;return(n=n.nodeName)&&n.toLowerCase()==="input"&&(u==="checkbox"||u==="radio")}function Y0(n){var u=J(n)?"checked":"value",l=Object.getOwnPropertyDescriptor(n.constructor.prototype,u),h=""+n[u];if(!n.hasOwnProperty(u)&&typeof l<"u"&&typeof l.get=="function"&&typeof l.set=="function"){var m=l.get,p=l.set;return Object.defineProperty(n,u,{configurable:!0,get:function(){return m.call(this)},set:function(D){h=""+D,p.call(this,D)}}),Object.defineProperty(n,u,{enumerable:l.enumerable}),{getValue:function(){return h},setValue:function(D){h=""+D},stopTracking:function(){n._valueTracker=null,delete n[u]}}}}function X0(n){n._valueTracker||(n._valueTracker=Y0(n))}function z0(n){if(!n)return!1;var u=n._valueTracker;if(!u)return!0;var l=u.getValue(),h="";return n&&(h=J(n)?n.checked?"true":"false":n.value),n=h,n!==l?(u.setValue(n),!0):!1}function O0(n){if(n=n||(typeof document<"u"?document:void 0),typeof n>"u")return null;try{return n.activeElement||n.body}catch{return n.body}}function q0(n,u){var l=u.checked;return G({},u,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:l??n._wrapperState.initialChecked})}function J0(n,u){var l=u.defaultValue==null?"":u.defaultValue,h=u.checked!=null?u.checked:u.defaultChecked;l=M0(u.value!=null?u.value:l),n._wrapperState={initialChecked:h,initialValue:l,controlled:u.type==="checkbox"||u.type==="radio"?u.checked!=null:u.value!=null}}function K0(n,u){u=u.checked,u!=null&&Y(n,"checked",u,!1)}function f1(n,u){K0(n,u);var l=M0(u.value),h=u.type;if(l!=null)h==="number"?(l===0&&n.value===""||n.value!=l)&&(n.value=""+l):n.value!==""+l&&(n.value=""+l);else if(h==="submit"||h==="reset"){n.removeAttribute("value");return}u.hasOwnProperty("value")?ae(n,u.type,l):u.hasOwnProperty("defaultValue")&&ae(n,u.type,M0(u.defaultValue)),u.checked==null&&u.defaultChecked!=null&&(n.defaultChecked=!!u.defaultChecked)}function C1(n,u,l){if(u.hasOwnProperty("value")||u.hasOwnProperty("defaultValue")){var h=u.type;if(!(h!=="submit"&&h!=="reset"||u.value!==void 0&&u.value!==null))return;u=""+n._wrapperState.initialValue,l||u===n.value||(n.value=u),n.defaultValue=u}l=n.name,l!==""&&(n.name=""),n.defaultChecked=!!n._wrapperState.initialChecked,l!==""&&(n.name=l)}function ae(n,u,l){(u!=="number"||O0(n.ownerDocument)!==n)&&(l==null?n.defaultValue=""+n._wrapperState.initialValue:n.defaultValue!==""+l&&(n.defaultValue=""+l))}var b1=Array.isArray;function q1(n,u,l,h){if(n=n.options,u){u={};for(var m=0;m<l.length;m++)u["$"+l[m]]=!0;for(l=0;l<n.length;l++)m=u.hasOwnProperty("$"+n[l].value),n[l].selected!==m&&(n[l].selected=m),m&&h&&(n[l].defaultSelected=!0)}else{for(l=""+M0(l),u=null,m=0;m<n.length;m++){if(n[m].value===l){n[m].selected=!0,h&&(n[m].defaultSelected=!0);return}u!==null||n[m].disabled||(u=n[m])}u!==null&&(u.selected=!0)}}function Je(n,u){if(u.dangerouslySetInnerHTML!=null)throw Error(i(91));return G({},u,{value:void 0,defaultValue:void 0,children:""+n._wrapperState.initialValue})}function ct(n,u){var l=u.value;if(l==null){if(l=u.children,u=u.defaultValue,l!=null){if(u!=null)throw Error(i(92));if(b1(l)){if(1<l.length)throw Error(i(93));l=l[0]}u=l}u==null&&(u=""),l=u}n._wrapperState={initialValue:M0(l)}}function s2(n,u){var l=M0(u.value),h=M0(u.defaultValue);l!=null&&(l=""+l,l!==n.value&&(n.value=l),u.defaultValue==null&&n.defaultValue!==l&&(n.defaultValue=l)),h!=null&&(n.defaultValue=""+h)}function r2(n){var u=n.textContent;u===n._wrapperState.initialValue&&u!==""&&u!==null&&(n.value=u)}function pe(n){switch(n){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function a2(n,u){return n==null||n==="http://www.w3.org/1999/xhtml"?pe(u):n==="http://www.w3.org/2000/svg"&&u==="foreignObject"?"http://www.w3.org/1999/xhtml":n}var ke,Tn=(function(n){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(u,l,h,m){MSApp.execUnsafeLocalFunction(function(){return n(u,l,h,m)})}:n})(function(n,u){if(n.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in n)n.innerHTML=u;else{for(ke=ke||document.createElement("div"),ke.innerHTML="<svg>"+u.valueOf().toString()+"</svg>",u=ke.firstChild;n.firstChild;)n.removeChild(n.firstChild);for(;u.firstChild;)n.appendChild(u.firstChild)}});function D1(n,u){if(u){var l=n.firstChild;if(l&&l===n.lastChild&&l.nodeType===3){l.nodeValue=u;return}}n.textContent=u}var We={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},le=["Webkit","ms","Moz","O"];Object.keys(We).forEach(function(n){le.forEach(function(u){u=u+n.charAt(0).toUpperCase()+n.substring(1),We[u]=We[n]})});function ht(n,u,l){return u==null||typeof u=="boolean"||u===""?"":l||typeof u!="number"||u===0||We.hasOwnProperty(n)&&We[n]?(""+u).trim():u+"px"}function Ce(n,u){n=n.style;for(var l in u)if(u.hasOwnProperty(l)){var h=l.indexOf("--")===0,m=ht(l,u[l],h);l==="float"&&(l="cssFloat"),h?n.setProperty(l,m):n[l]=m}}var l2=G({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function X1(n,u){if(u){if(l2[n]&&(u.children!=null||u.dangerouslySetInnerHTML!=null))throw Error(i(137,n));if(u.dangerouslySetInnerHTML!=null){if(u.children!=null)throw Error(i(60));if(typeof u.dangerouslySetInnerHTML!="object"||!("__html"in u.dangerouslySetInnerHTML))throw Error(i(61))}if(u.style!=null&&typeof u.style!="object")throw Error(i(62))}}function x1(n,u){if(n.indexOf("-")===-1)return typeof u.is=="string";switch(n){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var xe=null;function Me(n){return n=n.target||n.srcElement||window,n.correspondingUseElement&&(n=n.correspondingUseElement),n.nodeType===3?n.parentNode:n}var o2=null,dt=null,F0=null;function o1(n){if(n=ni(n)){if(typeof o2!="function")throw Error(i(280));var u=n.stateNode;u&&(u=C5(u),o2(n.stateNode,n.type,u))}}function ye(n){dt?F0?F0.push(n):F0=[n]:dt=n}function $i(){if(dt){var n=dt,u=F0;if(F0=dt=null,o1(n),u)for(n=0;n<u.length;n++)o1(u[n])}}function D0(n,u){return n(u)}function b0(){}var K1=!1;function Nt(n,u,l){if(K1)return n(u,l);K1=!0;try{return D0(n,u,l)}finally{K1=!1,(dt!==null||F0!==null)&&(b0(),$i())}}function oe(n,u){var l=n.stateNode;if(l===null)return null;var h=C5(l);if(h===null)return null;l=h[u];e:switch(u){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(h=!h.disabled)||(n=n.type,h=!(n==="button"||n==="input"||n==="select"||n==="textarea")),n=!h;break e;default:n=!1}if(n)return null;if(l&&typeof l!="function")throw Error(i(231,u,typeof l));return l}var su=!1;if(d)try{var bn={};Object.defineProperty(bn,"passive",{get:function(){su=!0}}),window.addEventListener("test",bn,bn),window.removeEventListener("test",bn,bn)}catch{su=!1}function z8(n,u,l,h,m,p,D,w,I){var U=Array.prototype.slice.call(arguments,3);try{u.apply(l,U)}catch(n0){this.onError(n0)}}var On=!1,Qi=null,Ki=!1,ru=null,k8={onError:function(n){On=!0,Qi=n}};function M8(n,u,l,h,m,p,D,w,I){On=!1,Qi=null,z8.apply(k8,arguments)}function T8(n,u,l,h,m,p,D,w,I){if(M8.apply(this,arguments),On){if(On){var U=Qi;On=!1,Qi=null}else throw Error(i(198));Ki||(Ki=!0,ru=U)}}function c2(n){var u=n,l=n;if(n.alternate)for(;u.return;)u=u.return;else{n=u;do u=n,(u.flags&4098)!==0&&(l=u.return),n=u.return;while(n)}return u.tag===3?l:null}function xa(n){if(n.tag===13){var u=n.memoizedState;if(u===null&&(n=n.alternate,n!==null&&(u=n.memoizedState)),u!==null)return u.dehydrated}return null}function ya(n){if(c2(n)!==n)throw Error(i(188))}function b8(n){var u=n.alternate;if(!u){if(u=c2(n),u===null)throw Error(i(188));return u!==n?null:n}for(var l=n,h=u;;){var m=l.return;if(m===null)break;var p=m.alternate;if(p===null){if(h=m.return,h!==null){l=h;continue}break}if(m.child===p.child){for(p=m.child;p;){if(p===l)return ya(m),n;if(p===h)return ya(m),u;p=p.sibling}throw Error(i(188))}if(l.return!==h.return)l=m,h=p;else{for(var D=!1,w=m.child;w;){if(w===l){D=!0,l=m,h=p;break}if(w===h){D=!0,h=m,l=p;break}w=w.sibling}if(!D){for(w=p.child;w;){if(w===l){D=!0,l=p,h=m;break}if(w===h){D=!0,h=p,l=m;break}w=w.sibling}if(!D)throw Error(i(189))}}if(l.alternate!==h)throw Error(i(190))}if(l.tag!==3)throw Error(i(188));return l.stateNode.current===l?n:u}function Da(n){return n=b8(n),n!==null?Aa(n):null}function Aa(n){if(n.tag===5||n.tag===6)return n;for(n=n.child;n!==null;){var u=Aa(n);if(u!==null)return u;n=n.sibling}return null}var Ba=e.unstable_scheduleCallback,ja=e.unstable_cancelCallback,O8=e.unstable_shouldYield,P8=e.unstable_requestPaint,F1=e.unstable_now,Y8=e.unstable_getCurrentPriorityLevel,au=e.unstable_ImmediatePriority,va=e.unstable_UserBlockingPriority,Vi=e.unstable_NormalPriority,L8=e.unstable_LowPriority,_a=e.unstable_IdlePriority,e5=null,$e=null;function R8(n){if($e&&typeof $e.onCommitFiberRoot=="function")try{$e.onCommitFiberRoot(e5,n,void 0,(n.current.flags&128)===128)}catch{}}var Te=Math.clz32?Math.clz32:Z8,G8=Math.log,H8=Math.LN2;function Z8(n){return n>>>=0,n===0?32:31-(G8(n)/H8|0)|0}var t5=64,n5=4194304;function Pn(n){switch(n&-n){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return n&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return n&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return n}}function i5(n,u){var l=n.pendingLanes;if(l===0)return 0;var h=0,m=n.suspendedLanes,p=n.pingedLanes,D=l&268435455;if(D!==0){var w=D&~m;w!==0?h=Pn(w):(p&=D,p!==0&&(h=Pn(p)))}else D=l&~m,D!==0?h=Pn(D):p!==0&&(h=Pn(p));if(h===0)return 0;if(u!==0&&u!==h&&(u&m)===0&&(m=h&-h,p=u&-u,m>=p||m===16&&(p&4194240)!==0))return u;if((h&4)!==0&&(h|=l&16),u=n.entangledLanes,u!==0)for(n=n.entanglements,u&=h;0<u;)l=31-Te(u),m=1<<l,h|=n[l],u&=~m;return h}function U8(n,u){switch(n){case 1:case 2:case 4:return u+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return u+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function q8(n,u){for(var l=n.suspendedLanes,h=n.pingedLanes,m=n.expirationTimes,p=n.pendingLanes;0<p;){var D=31-Te(p),w=1<<D,I=m[D];I===-1?((w&l)===0||(w&h)!==0)&&(m[D]=U8(w,u)):I<=u&&(n.expiredLanes|=w),p&=~w}}function lu(n){return n=n.pendingLanes&-1073741825,n!==0?n:n&1073741824?1073741824:0}function Sa(){var n=t5;return t5<<=1,(t5&4194240)===0&&(t5=64),n}function ou(n){for(var u=[],l=0;31>l;l++)u.push(n);return u}function Yn(n,u,l){n.pendingLanes|=u,u!==536870912&&(n.suspendedLanes=0,n.pingedLanes=0),n=n.eventTimes,u=31-Te(u),n[u]=l}function X8(n,u){var l=n.pendingLanes&~u;n.pendingLanes=u,n.suspendedLanes=0,n.pingedLanes=0,n.expiredLanes&=u,n.mutableReadLanes&=u,n.entangledLanes&=u,u=n.entanglements;var h=n.eventTimes;for(n=n.expirationTimes;0<l;){var m=31-Te(l),p=1<<m;u[m]=0,h[m]=-1,n[m]=-1,l&=~p}}function cu(n,u){var l=n.entangledLanes|=u;for(n=n.entanglements;l;){var h=31-Te(l),m=1<<h;m&u|n[h]&u&&(n[h]|=u),l&=~m}}var W0=0;function wa(n){return n&=-n,1<n?4<n?(n&268435455)!==0?16:536870912:4:1}var Na,hu,Ia,za,ka,du=!1,u5=[],It=null,zt=null,kt=null,Ln=new Map,Rn=new Map,Mt=[],J8="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function Ma(n,u){switch(n){case"focusin":case"focusout":It=null;break;case"dragenter":case"dragleave":zt=null;break;case"mouseover":case"mouseout":kt=null;break;case"pointerover":case"pointerout":Ln.delete(u.pointerId);break;case"gotpointercapture":case"lostpointercapture":Rn.delete(u.pointerId)}}function Gn(n,u,l,h,m,p){return n===null||n.nativeEvent!==p?(n={blockedOn:u,domEventName:l,eventSystemFlags:h,nativeEvent:p,targetContainers:[m]},u!==null&&(u=ni(u),u!==null&&hu(u)),n):(n.eventSystemFlags|=h,u=n.targetContainers,m!==null&&u.indexOf(m)===-1&&u.push(m),n)}function W8(n,u,l,h,m){switch(u){case"focusin":return It=Gn(It,n,u,l,h,m),!0;case"dragenter":return zt=Gn(zt,n,u,l,h,m),!0;case"mouseover":return kt=Gn(kt,n,u,l,h,m),!0;case"pointerover":var p=m.pointerId;return Ln.set(p,Gn(Ln.get(p)||null,n,u,l,h,m)),!0;case"gotpointercapture":return p=m.pointerId,Rn.set(p,Gn(Rn.get(p)||null,n,u,l,h,m)),!0}return!1}function Ta(n){var u=h2(n.target);if(u!==null){var l=c2(u);if(l!==null){if(u=l.tag,u===13){if(u=xa(l),u!==null){n.blockedOn=u,ka(n.priority,function(){Ia(l)});return}}else if(u===3&&l.stateNode.current.memoizedState.isDehydrated){n.blockedOn=l.tag===3?l.stateNode.containerInfo:null;return}}}n.blockedOn=null}function s5(n){if(n.blockedOn!==null)return!1;for(var u=n.targetContainers;0<u.length;){var l=mu(n.domEventName,n.eventSystemFlags,u[0],n.nativeEvent);if(l===null){l=n.nativeEvent;var h=new l.constructor(l.type,l);xe=h,l.target.dispatchEvent(h),xe=null}else return u=ni(l),u!==null&&hu(u),n.blockedOn=l,!1;u.shift()}return!0}function ba(n,u,l){s5(n)&&l.delete(u)}function $8(){du=!1,It!==null&&s5(It)&&(It=null),zt!==null&&s5(zt)&&(zt=null),kt!==null&&s5(kt)&&(kt=null),Ln.forEach(ba),Rn.forEach(ba)}function Hn(n,u){n.blockedOn===u&&(n.blockedOn=null,du||(du=!0,e.unstable_scheduleCallback(e.unstable_NormalPriority,$8)))}function Zn(n){function u(m){return Hn(m,n)}if(0<u5.length){Hn(u5[0],n);for(var l=1;l<u5.length;l++){var h=u5[l];h.blockedOn===n&&(h.blockedOn=null)}}for(It!==null&&Hn(It,n),zt!==null&&Hn(zt,n),kt!==null&&Hn(kt,n),Ln.forEach(u),Rn.forEach(u),l=0;l<Mt.length;l++)h=Mt[l],h.blockedOn===n&&(h.blockedOn=null);for(;0<Mt.length&&(l=Mt[0],l.blockedOn===null);)Ta(l),l.blockedOn===null&&Mt.shift()}var b2=z.ReactCurrentBatchConfig,r5=!0;function Q8(n,u,l,h){var m=W0,p=b2.transition;b2.transition=null;try{W0=1,gu(n,u,l,h)}finally{W0=m,b2.transition=p}}function K8(n,u,l,h){var m=W0,p=b2.transition;b2.transition=null;try{W0=4,gu(n,u,l,h)}finally{W0=m,b2.transition=p}}function gu(n,u,l,h){if(r5){var m=mu(n,u,l,h);if(m===null)Iu(n,u,h,a5,l),Ma(n,h);else if(W8(m,n,u,l,h))h.stopPropagation();else if(Ma(n,h),u&4&&-1<J8.indexOf(n)){for(;m!==null;){var p=ni(m);if(p!==null&&Na(p),p=mu(n,u,l,h),p===null&&Iu(n,u,h,a5,l),p===m)break;m=p}m!==null&&h.stopPropagation()}else Iu(n,u,h,null,l)}}var a5=null;function mu(n,u,l,h){if(a5=null,n=Me(h),n=h2(n),n!==null)if(u=c2(n),u===null)n=null;else if(l=u.tag,l===13){if(n=xa(u),n!==null)return n;n=null}else if(l===3){if(u.stateNode.current.memoizedState.isDehydrated)return u.tag===3?u.stateNode.containerInfo:null;n=null}else u!==n&&(n=null);return a5=n,null}function Oa(n){switch(n){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(Y8()){case au:return 1;case va:return 4;case Vi:case L8:return 16;case _a:return 536870912;default:return 16}default:return 16}}var Tt=null,fu=null,l5=null;function Pa(){if(l5)return l5;var n,u=fu,l=u.length,h,m="value"in Tt?Tt.value:Tt.textContent,p=m.length;for(n=0;n<l&&u[n]===m[n];n++);var D=l-n;for(h=1;h<=D&&u[l-h]===m[p-h];h++);return l5=m.slice(n,1<h?1-h:void 0)}function o5(n){var u=n.keyCode;return"charCode"in n?(n=n.charCode,n===0&&u===13&&(n=13)):n=u,n===10&&(n=13),32<=n||n===13?n:0}function c5(){return!0}function Ya(){return!1}function ce(n){function u(l,h,m,p,D){this._reactName=l,this._targetInst=m,this.type=h,this.nativeEvent=p,this.target=D,this.currentTarget=null;for(var w in n)n.hasOwnProperty(w)&&(l=n[w],this[w]=l?l(p):p[w]);return this.isDefaultPrevented=(p.defaultPrevented!=null?p.defaultPrevented:p.returnValue===!1)?c5:Ya,this.isPropagationStopped=Ya,this}return G(u.prototype,{preventDefault:function(){this.defaultPrevented=!0;var l=this.nativeEvent;l&&(l.preventDefault?l.preventDefault():typeof l.returnValue!="unknown"&&(l.returnValue=!1),this.isDefaultPrevented=c5)},stopPropagation:function(){var l=this.nativeEvent;l&&(l.stopPropagation?l.stopPropagation():typeof l.cancelBubble!="unknown"&&(l.cancelBubble=!0),this.isPropagationStopped=c5)},persist:function(){},isPersistent:c5}),u}var O2={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(n){return n.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Eu=ce(O2),Un=G({},O2,{view:0,detail:0}),V8=ce(Un),Fu,pu,qn,h5=G({},Un,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:xu,button:0,buttons:0,relatedTarget:function(n){return n.relatedTarget===void 0?n.fromElement===n.srcElement?n.toElement:n.fromElement:n.relatedTarget},movementX:function(n){return"movementX"in n?n.movementX:(n!==qn&&(qn&&n.type==="mousemove"?(Fu=n.screenX-qn.screenX,pu=n.screenY-qn.screenY):pu=Fu=0,qn=n),Fu)},movementY:function(n){return"movementY"in n?n.movementY:pu}}),La=ce(h5),e9=G({},h5,{dataTransfer:0}),t9=ce(e9),n9=G({},Un,{relatedTarget:0}),Cu=ce(n9),i9=G({},O2,{animationName:0,elapsedTime:0,pseudoElement:0}),u9=ce(i9),s9=G({},O2,{clipboardData:function(n){return"clipboardData"in n?n.clipboardData:window.clipboardData}}),r9=ce(s9),a9=G({},O2,{data:0}),Ra=ce(a9),l9={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},o9={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},c9={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function h9(n){var u=this.nativeEvent;return u.getModifierState?u.getModifierState(n):(n=c9[n])?!!u[n]:!1}function xu(){return h9}var d9=G({},Un,{key:function(n){if(n.key){var u=l9[n.key]||n.key;if(u!=="Unidentified")return u}return n.type==="keypress"?(n=o5(n),n===13?"Enter":String.fromCharCode(n)):n.type==="keydown"||n.type==="keyup"?o9[n.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:xu,charCode:function(n){return n.type==="keypress"?o5(n):0},keyCode:function(n){return n.type==="keydown"||n.type==="keyup"?n.keyCode:0},which:function(n){return n.type==="keypress"?o5(n):n.type==="keydown"||n.type==="keyup"?n.keyCode:0}}),g9=ce(d9),m9=G({},h5,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Ga=ce(m9),f9=G({},Un,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:xu}),E9=ce(f9),F9=G({},O2,{propertyName:0,elapsedTime:0,pseudoElement:0}),p9=ce(F9),C9=G({},h5,{deltaX:function(n){return"deltaX"in n?n.deltaX:"wheelDeltaX"in n?-n.wheelDeltaX:0},deltaY:function(n){return"deltaY"in n?n.deltaY:"wheelDeltaY"in n?-n.wheelDeltaY:"wheelDelta"in n?-n.wheelDelta:0},deltaZ:0,deltaMode:0}),x9=ce(C9),y9=[9,13,27,32],yu=d&&"CompositionEvent"in window,Xn=null;d&&"documentMode"in document&&(Xn=document.documentMode);var D9=d&&"TextEvent"in window&&!Xn,Ha=d&&(!yu||Xn&&8<Xn&&11>=Xn),Za=" ",Ua=!1;function qa(n,u){switch(n){case"keyup":return y9.indexOf(u.keyCode)!==-1;case"keydown":return u.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Xa(n){return n=n.detail,typeof n=="object"&&"data"in n?n.data:null}var P2=!1;function A9(n,u){switch(n){case"compositionend":return Xa(u);case"keypress":return u.which!==32?null:(Ua=!0,Za);case"textInput":return n=u.data,n===Za&&Ua?null:n;default:return null}}function B9(n,u){if(P2)return n==="compositionend"||!yu&&qa(n,u)?(n=Pa(),l5=fu=Tt=null,P2=!1,n):null;switch(n){case"paste":return null;case"keypress":if(!(u.ctrlKey||u.altKey||u.metaKey)||u.ctrlKey&&u.altKey){if(u.char&&1<u.char.length)return u.char;if(u.which)return String.fromCharCode(u.which)}return null;case"compositionend":return Ha&&u.locale!=="ko"?null:u.data;default:return null}}var j9={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Ja(n){var u=n&&n.nodeName&&n.nodeName.toLowerCase();return u==="input"?!!j9[n.type]:u==="textarea"}function Wa(n,u,l,h){ye(h),u=E5(u,"onChange"),0<u.length&&(l=new Eu("onChange","change",null,l,h),n.push({event:l,listeners:u}))}var Jn=null,Wn=null;function v9(n){g6(n,0)}function d5(n){var u=H2(n);if(z0(u))return n}function _9(n,u){if(n==="change")return u}var $a=!1;if(d){var Du;if(d){var Au="oninput"in document;if(!Au){var Qa=document.createElement("div");Qa.setAttribute("oninput","return;"),Au=typeof Qa.oninput=="function"}Du=Au}else Du=!1;$a=Du&&(!document.documentMode||9<document.documentMode)}function Ka(){Jn&&(Jn.detachEvent("onpropertychange",Va),Wn=Jn=null)}function Va(n){if(n.propertyName==="value"&&d5(Wn)){var u=[];Wa(u,Wn,n,Me(n)),Nt(v9,u)}}function S9(n,u,l){n==="focusin"?(Ka(),Jn=u,Wn=l,Jn.attachEvent("onpropertychange",Va)):n==="focusout"&&Ka()}function w9(n){if(n==="selectionchange"||n==="keyup"||n==="keydown")return d5(Wn)}function N9(n,u){if(n==="click")return d5(u)}function I9(n,u){if(n==="input"||n==="change")return d5(u)}function z9(n,u){return n===u&&(n!==0||1/n===1/u)||n!==n&&u!==u}var be=typeof Object.is=="function"?Object.is:z9;function $n(n,u){if(be(n,u))return!0;if(typeof n!="object"||n===null||typeof u!="object"||u===null)return!1;var l=Object.keys(n),h=Object.keys(u);if(l.length!==h.length)return!1;for(h=0;h<l.length;h++){var m=l[h];if(!g.call(u,m)||!be(n[m],u[m]))return!1}return!0}function e6(n){for(;n&&n.firstChild;)n=n.firstChild;return n}function t6(n,u){var l=e6(n);n=0;for(var h;l;){if(l.nodeType===3){if(h=n+l.textContent.length,n<=u&&h>=u)return{node:l,offset:u-n};n=h}e:{for(;l;){if(l.nextSibling){l=l.nextSibling;break e}l=l.parentNode}l=void 0}l=e6(l)}}function n6(n,u){return n&&u?n===u?!0:n&&n.nodeType===3?!1:u&&u.nodeType===3?n6(n,u.parentNode):"contains"in n?n.contains(u):n.compareDocumentPosition?!!(n.compareDocumentPosition(u)&16):!1:!1}function i6(){for(var n=window,u=O0();u instanceof n.HTMLIFrameElement;){try{var l=typeof u.contentWindow.location.href=="string"}catch{l=!1}if(l)n=u.contentWindow;else break;u=O0(n.document)}return u}function Bu(n){var u=n&&n.nodeName&&n.nodeName.toLowerCase();return u&&(u==="input"&&(n.type==="text"||n.type==="search"||n.type==="tel"||n.type==="url"||n.type==="password")||u==="textarea"||n.contentEditable==="true")}function k9(n){var u=i6(),l=n.focusedElem,h=n.selectionRange;if(u!==l&&l&&l.ownerDocument&&n6(l.ownerDocument.documentElement,l)){if(h!==null&&Bu(l)){if(u=h.start,n=h.end,n===void 0&&(n=u),"selectionStart"in l)l.selectionStart=u,l.selectionEnd=Math.min(n,l.value.length);else if(n=(u=l.ownerDocument||document)&&u.defaultView||window,n.getSelection){n=n.getSelection();var m=l.textContent.length,p=Math.min(h.start,m);h=h.end===void 0?p:Math.min(h.end,m),!n.extend&&p>h&&(m=h,h=p,p=m),m=t6(l,p);var D=t6(l,h);m&&D&&(n.rangeCount!==1||n.anchorNode!==m.node||n.anchorOffset!==m.offset||n.focusNode!==D.node||n.focusOffset!==D.offset)&&(u=u.createRange(),u.setStart(m.node,m.offset),n.removeAllRanges(),p>h?(n.addRange(u),n.extend(D.node,D.offset)):(u.setEnd(D.node,D.offset),n.addRange(u)))}}for(u=[],n=l;n=n.parentNode;)n.nodeType===1&&u.push({element:n,left:n.scrollLeft,top:n.scrollTop});for(typeof l.focus=="function"&&l.focus(),l=0;l<u.length;l++)n=u[l],n.element.scrollLeft=n.left,n.element.scrollTop=n.top}}var M9=d&&"documentMode"in document&&11>=document.documentMode,Y2=null,ju=null,Qn=null,vu=!1;function u6(n,u,l){var h=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;vu||Y2==null||Y2!==O0(h)||(h=Y2,"selectionStart"in h&&Bu(h)?h={start:h.selectionStart,end:h.selectionEnd}:(h=(h.ownerDocument&&h.ownerDocument.defaultView||window).getSelection(),h={anchorNode:h.anchorNode,anchorOffset:h.anchorOffset,focusNode:h.focusNode,focusOffset:h.focusOffset}),Qn&&$n(Qn,h)||(Qn=h,h=E5(ju,"onSelect"),0<h.length&&(u=new Eu("onSelect","select",null,u,l),n.push({event:u,listeners:h}),u.target=Y2)))}function g5(n,u){var l={};return l[n.toLowerCase()]=u.toLowerCase(),l["Webkit"+n]="webkit"+u,l["Moz"+n]="moz"+u,l}var L2={animationend:g5("Animation","AnimationEnd"),animationiteration:g5("Animation","AnimationIteration"),animationstart:g5("Animation","AnimationStart"),transitionend:g5("Transition","TransitionEnd")},_u={},s6={};d&&(s6=document.createElement("div").style,"AnimationEvent"in window||(delete L2.animationend.animation,delete L2.animationiteration.animation,delete L2.animationstart.animation),"TransitionEvent"in window||delete L2.transitionend.transition);function m5(n){if(_u[n])return _u[n];if(!L2[n])return n;var u=L2[n],l;for(l in u)if(u.hasOwnProperty(l)&&l in s6)return _u[n]=u[l];return n}var r6=m5("animationend"),a6=m5("animationiteration"),l6=m5("animationstart"),o6=m5("transitionend"),c6=new Map,h6="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function bt(n,u){c6.set(n,u),c(u,[n])}for(var Su=0;Su<h6.length;Su++){var wu=h6[Su],T9=wu.toLowerCase(),b9=wu[0].toUpperCase()+wu.slice(1);bt(T9,"on"+b9)}bt(r6,"onAnimationEnd"),bt(a6,"onAnimationIteration"),bt(l6,"onAnimationStart"),bt("dblclick","onDoubleClick"),bt("focusin","onFocus"),bt("focusout","onBlur"),bt(o6,"onTransitionEnd"),o("onMouseEnter",["mouseout","mouseover"]),o("onMouseLeave",["mouseout","mouseover"]),o("onPointerEnter",["pointerout","pointerover"]),o("onPointerLeave",["pointerout","pointerover"]),c("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),c("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),c("onBeforeInput",["compositionend","keypress","textInput","paste"]),c("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),c("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),c("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Kn="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),O9=new Set("cancel close invalid load scroll toggle".split(" ").concat(Kn));function d6(n,u,l){var h=n.type||"unknown-event";n.currentTarget=l,T8(h,u,void 0,n),n.currentTarget=null}function g6(n,u){u=(u&4)!==0;for(var l=0;l<n.length;l++){var h=n[l],m=h.event;h=h.listeners;e:{var p=void 0;if(u)for(var D=h.length-1;0<=D;D--){var w=h[D],I=w.instance,U=w.currentTarget;if(w=w.listener,I!==p&&m.isPropagationStopped())break e;d6(m,w,U),p=I}else for(D=0;D<h.length;D++){if(w=h[D],I=w.instance,U=w.currentTarget,w=w.listener,I!==p&&m.isPropagationStopped())break e;d6(m,w,U),p=I}}}if(Ki)throw n=ru,Ki=!1,ru=null,n}function i1(n,u){var l=u[Ou];l===void 0&&(l=u[Ou]=new Set);var h=n+"__bubble";l.has(h)||(m6(u,n,2,!1),l.add(h))}function Nu(n,u,l){var h=0;u&&(h|=4),m6(l,n,h,u)}var f5="_reactListening"+Math.random().toString(36).slice(2);function Vn(n){if(!n[f5]){n[f5]=!0,s.forEach(function(l){l!=="selectionchange"&&(O9.has(l)||Nu(l,!1,n),Nu(l,!0,n))});var u=n.nodeType===9?n:n.ownerDocument;u===null||u[f5]||(u[f5]=!0,Nu("selectionchange",!1,u))}}function m6(n,u,l,h){switch(Oa(u)){case 1:var m=Q8;break;case 4:m=K8;break;default:m=gu}l=m.bind(null,u,l,n),m=void 0,!su||u!=="touchstart"&&u!=="touchmove"&&u!=="wheel"||(m=!0),h?m!==void 0?n.addEventListener(u,l,{capture:!0,passive:m}):n.addEventListener(u,l,!0):m!==void 0?n.addEventListener(u,l,{passive:m}):n.addEventListener(u,l,!1)}function Iu(n,u,l,h,m){var p=h;if((u&1)===0&&(u&2)===0&&h!==null)e:for(;;){if(h===null)return;var D=h.tag;if(D===3||D===4){var w=h.stateNode.containerInfo;if(w===m||w.nodeType===8&&w.parentNode===m)break;if(D===4)for(D=h.return;D!==null;){var I=D.tag;if((I===3||I===4)&&(I=D.stateNode.containerInfo,I===m||I.nodeType===8&&I.parentNode===m))return;D=D.return}for(;w!==null;){if(D=h2(w),D===null)return;if(I=D.tag,I===5||I===6){h=p=D;continue e}w=w.parentNode}}h=h.return}Nt(function(){var U=p,n0=Me(l),s0=[];e:{var t0=c6.get(n);if(t0!==void 0){var f0=Eu,C0=n;switch(n){case"keypress":if(o5(l)===0)break e;case"keydown":case"keyup":f0=g9;break;case"focusin":C0="focus",f0=Cu;break;case"focusout":C0="blur",f0=Cu;break;case"beforeblur":case"afterblur":f0=Cu;break;case"click":if(l.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":f0=La;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":f0=t9;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":f0=E9;break;case r6:case a6:case l6:f0=u9;break;case o6:f0=p9;break;case"scroll":f0=V8;break;case"wheel":f0=x9;break;case"copy":case"cut":case"paste":f0=r9;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":f0=Ga}var x0=(u&4)!==0,p1=!x0&&n==="scroll",L=x0?t0!==null?t0+"Capture":null:t0;x0=[];for(var k=U,H;k!==null;){H=k;var o0=H.stateNode;if(H.tag===5&&o0!==null&&(H=o0,L!==null&&(o0=oe(k,L),o0!=null&&x0.push(ei(k,o0,H)))),p1)break;k=k.return}0<x0.length&&(t0=new f0(t0,C0,null,l,n0),s0.push({event:t0,listeners:x0}))}}if((u&7)===0){e:{if(t0=n==="mouseover"||n==="pointerover",f0=n==="mouseout"||n==="pointerout",t0&&l!==xe&&(C0=l.relatedTarget||l.fromElement)&&(h2(C0)||C0[gt]))break e;if((f0||t0)&&(t0=n0.window===n0?n0:(t0=n0.ownerDocument)?t0.defaultView||t0.parentWindow:window,f0?(C0=l.relatedTarget||l.toElement,f0=U,C0=C0?h2(C0):null,C0!==null&&(p1=c2(C0),C0!==p1||C0.tag!==5&&C0.tag!==6)&&(C0=null)):(f0=null,C0=U),f0!==C0)){if(x0=La,o0="onMouseLeave",L="onMouseEnter",k="mouse",(n==="pointerout"||n==="pointerover")&&(x0=Ga,o0="onPointerLeave",L="onPointerEnter",k="pointer"),p1=f0==null?t0:H2(f0),H=C0==null?t0:H2(C0),t0=new x0(o0,k+"leave",f0,l,n0),t0.target=p1,t0.relatedTarget=H,o0=null,h2(n0)===U&&(x0=new x0(L,k+"enter",C0,l,n0),x0.target=H,x0.relatedTarget=p1,o0=x0),p1=o0,f0&&C0)t:{for(x0=f0,L=C0,k=0,H=x0;H;H=R2(H))k++;for(H=0,o0=L;o0;o0=R2(o0))H++;for(;0<k-H;)x0=R2(x0),k--;for(;0<H-k;)L=R2(L),H--;for(;k--;){if(x0===L||L!==null&&x0===L.alternate)break t;x0=R2(x0),L=R2(L)}x0=null}else x0=null;f0!==null&&f6(s0,t0,f0,x0,!1),C0!==null&&p1!==null&&f6(s0,p1,C0,x0,!0)}}e:{if(t0=U?H2(U):window,f0=t0.nodeName&&t0.nodeName.toLowerCase(),f0==="select"||f0==="input"&&t0.type==="file")var y0=_9;else if(Ja(t0))if($a)y0=I9;else{y0=w9;var v0=S9}else(f0=t0.nodeName)&&f0.toLowerCase()==="input"&&(t0.type==="checkbox"||t0.type==="radio")&&(y0=N9);if(y0&&(y0=y0(n,U))){Wa(s0,y0,l,n0);break e}v0&&v0(n,t0,U),n==="focusout"&&(v0=t0._wrapperState)&&v0.controlled&&t0.type==="number"&&ae(t0,"number",t0.value)}switch(v0=U?H2(U):window,n){case"focusin":(Ja(v0)||v0.contentEditable==="true")&&(Y2=v0,ju=U,Qn=null);break;case"focusout":Qn=ju=Y2=null;break;case"mousedown":vu=!0;break;case"contextmenu":case"mouseup":case"dragend":vu=!1,u6(s0,l,n0);break;case"selectionchange":if(M9)break;case"keydown":case"keyup":u6(s0,l,n0)}var _0;if(yu)e:{switch(n){case"compositionstart":var N0="onCompositionStart";break e;case"compositionend":N0="onCompositionEnd";break e;case"compositionupdate":N0="onCompositionUpdate";break e}N0=void 0}else P2?qa(n,l)&&(N0="onCompositionEnd"):n==="keydown"&&l.keyCode===229&&(N0="onCompositionStart");N0&&(Ha&&l.locale!=="ko"&&(P2||N0!=="onCompositionStart"?N0==="onCompositionEnd"&&P2&&(_0=Pa()):(Tt=n0,fu="value"in Tt?Tt.value:Tt.textContent,P2=!0)),v0=E5(U,N0),0<v0.length&&(N0=new Ra(N0,n,null,l,n0),s0.push({event:N0,listeners:v0}),_0?N0.data=_0:(_0=Xa(l),_0!==null&&(N0.data=_0)))),(_0=D9?A9(n,l):B9(n,l))&&(U=E5(U,"onBeforeInput"),0<U.length&&(n0=new Ra("onBeforeInput","beforeinput",null,l,n0),s0.push({event:n0,listeners:U}),n0.data=_0))}g6(s0,u)})}function ei(n,u,l){return{instance:n,listener:u,currentTarget:l}}function E5(n,u){for(var l=u+"Capture",h=[];n!==null;){var m=n,p=m.stateNode;m.tag===5&&p!==null&&(m=p,p=oe(n,l),p!=null&&h.unshift(ei(n,p,m)),p=oe(n,u),p!=null&&h.push(ei(n,p,m))),n=n.return}return h}function R2(n){if(n===null)return null;do n=n.return;while(n&&n.tag!==5);return n||null}function f6(n,u,l,h,m){for(var p=u._reactName,D=[];l!==null&&l!==h;){var w=l,I=w.alternate,U=w.stateNode;if(I!==null&&I===h)break;w.tag===5&&U!==null&&(w=U,m?(I=oe(l,p),I!=null&&D.unshift(ei(l,I,w))):m||(I=oe(l,p),I!=null&&D.push(ei(l,I,w)))),l=l.return}D.length!==0&&n.push({event:u,listeners:D})}var P9=/\r\n?/g,Y9=/\u0000|\uFFFD/g;function E6(n){return(typeof n=="string"?n:""+n).replace(P9,`
|
|
38
|
+
`).replace(Y9,"")}function F5(n,u,l){if(u=E6(u),E6(n)!==u&&l)throw Error(i(425))}function p5(){}var zu=null,ku=null;function Mu(n,u){return n==="textarea"||n==="noscript"||typeof u.children=="string"||typeof u.children=="number"||typeof u.dangerouslySetInnerHTML=="object"&&u.dangerouslySetInnerHTML!==null&&u.dangerouslySetInnerHTML.__html!=null}var Tu=typeof setTimeout=="function"?setTimeout:void 0,L9=typeof clearTimeout=="function"?clearTimeout:void 0,F6=typeof Promise=="function"?Promise:void 0,R9=typeof queueMicrotask=="function"?queueMicrotask:typeof F6<"u"?function(n){return F6.resolve(null).then(n).catch(G9)}:Tu;function G9(n){setTimeout(function(){throw n})}function bu(n,u){var l=u,h=0;do{var m=l.nextSibling;if(n.removeChild(l),m&&m.nodeType===8)if(l=m.data,l==="/$"){if(h===0){n.removeChild(m),Zn(u);return}h--}else l!=="$"&&l!=="$?"&&l!=="$!"||h++;l=m}while(l);Zn(u)}function Ot(n){for(;n!=null;n=n.nextSibling){var u=n.nodeType;if(u===1||u===3)break;if(u===8){if(u=n.data,u==="$"||u==="$!"||u==="$?")break;if(u==="/$")return null}}return n}function p6(n){n=n.previousSibling;for(var u=0;n;){if(n.nodeType===8){var l=n.data;if(l==="$"||l==="$!"||l==="$?"){if(u===0)return n;u--}else l==="/$"&&u++}n=n.previousSibling}return null}var G2=Math.random().toString(36).slice(2),Qe="__reactFiber$"+G2,ti="__reactProps$"+G2,gt="__reactContainer$"+G2,Ou="__reactEvents$"+G2,H9="__reactListeners$"+G2,Z9="__reactHandles$"+G2;function h2(n){var u=n[Qe];if(u)return u;for(var l=n.parentNode;l;){if(u=l[gt]||l[Qe]){if(l=u.alternate,u.child!==null||l!==null&&l.child!==null)for(n=p6(n);n!==null;){if(l=n[Qe])return l;n=p6(n)}return u}n=l,l=n.parentNode}return null}function ni(n){return n=n[Qe]||n[gt],!n||n.tag!==5&&n.tag!==6&&n.tag!==13&&n.tag!==3?null:n}function H2(n){if(n.tag===5||n.tag===6)return n.stateNode;throw Error(i(33))}function C5(n){return n[ti]||null}var Pu=[],Z2=-1;function Pt(n){return{current:n}}function u1(n){0>Z2||(n.current=Pu[Z2],Pu[Z2]=null,Z2--)}function t1(n,u){Z2++,Pu[Z2]=n.current,n.current=u}var Yt={},Y1=Pt(Yt),V1=Pt(!1),d2=Yt;function U2(n,u){var l=n.type.contextTypes;if(!l)return Yt;var h=n.stateNode;if(h&&h.__reactInternalMemoizedUnmaskedChildContext===u)return h.__reactInternalMemoizedMaskedChildContext;var m={},p;for(p in l)m[p]=u[p];return h&&(n=n.stateNode,n.__reactInternalMemoizedUnmaskedChildContext=u,n.__reactInternalMemoizedMaskedChildContext=m),m}function ee(n){return n=n.childContextTypes,n!=null}function x5(){u1(V1),u1(Y1)}function C6(n,u,l){if(Y1.current!==Yt)throw Error(i(168));t1(Y1,u),t1(V1,l)}function x6(n,u,l){var h=n.stateNode;if(u=u.childContextTypes,typeof h.getChildContext!="function")return l;h=h.getChildContext();for(var m in h)if(!(m in u))throw Error(i(108,R0(n)||"Unknown",m));return G({},l,h)}function y5(n){return n=(n=n.stateNode)&&n.__reactInternalMemoizedMergedChildContext||Yt,d2=Y1.current,t1(Y1,n),t1(V1,V1.current),!0}function y6(n,u,l){var h=n.stateNode;if(!h)throw Error(i(169));l?(n=x6(n,u,d2),h.__reactInternalMemoizedMergedChildContext=n,u1(V1),u1(Y1),t1(Y1,n)):u1(V1),t1(V1,l)}var mt=null,D5=!1,Yu=!1;function D6(n){mt===null?mt=[n]:mt.push(n)}function U9(n){D5=!0,D6(n)}function Lt(){if(!Yu&&mt!==null){Yu=!0;var n=0,u=W0;try{var l=mt;for(W0=1;n<l.length;n++){var h=l[n];do h=h(!0);while(h!==null)}mt=null,D5=!1}catch(m){throw mt!==null&&(mt=mt.slice(n+1)),Ba(au,Lt),m}finally{W0=u,Yu=!1}}return null}var q2=[],X2=0,A5=null,B5=0,De=[],Ae=0,g2=null,ft=1,Et="";function m2(n,u){q2[X2++]=B5,q2[X2++]=A5,A5=n,B5=u}function A6(n,u,l){De[Ae++]=ft,De[Ae++]=Et,De[Ae++]=g2,g2=n;var h=ft;n=Et;var m=32-Te(h)-1;h&=~(1<<m),l+=1;var p=32-Te(u)+m;if(30<p){var D=m-m%5;p=(h&(1<<D)-1).toString(32),h>>=D,m-=D,ft=1<<32-Te(u)+m|l<<m|h,Et=p+n}else ft=1<<p|l<<m|h,Et=n}function Lu(n){n.return!==null&&(m2(n,1),A6(n,1,0))}function Ru(n){for(;n===A5;)A5=q2[--X2],q2[X2]=null,B5=q2[--X2],q2[X2]=null;for(;n===g2;)g2=De[--Ae],De[Ae]=null,Et=De[--Ae],De[Ae]=null,ft=De[--Ae],De[Ae]=null}var he=null,de=null,r1=!1,Oe=null;function B6(n,u){var l=_e(5,null,null,0);l.elementType="DELETED",l.stateNode=u,l.return=n,u=n.deletions,u===null?(n.deletions=[l],n.flags|=16):u.push(l)}function j6(n,u){switch(n.tag){case 5:var l=n.type;return u=u.nodeType!==1||l.toLowerCase()!==u.nodeName.toLowerCase()?null:u,u!==null?(n.stateNode=u,he=n,de=Ot(u.firstChild),!0):!1;case 6:return u=n.pendingProps===""||u.nodeType!==3?null:u,u!==null?(n.stateNode=u,he=n,de=null,!0):!1;case 13:return u=u.nodeType!==8?null:u,u!==null?(l=g2!==null?{id:ft,overflow:Et}:null,n.memoizedState={dehydrated:u,treeContext:l,retryLane:1073741824},l=_e(18,null,null,0),l.stateNode=u,l.return=n,n.child=l,he=n,de=null,!0):!1;default:return!1}}function Gu(n){return(n.mode&1)!==0&&(n.flags&128)===0}function Hu(n){if(r1){var u=de;if(u){var l=u;if(!j6(n,u)){if(Gu(n))throw Error(i(418));u=Ot(l.nextSibling);var h=he;u&&j6(n,u)?B6(h,l):(n.flags=n.flags&-4097|2,r1=!1,he=n)}}else{if(Gu(n))throw Error(i(418));n.flags=n.flags&-4097|2,r1=!1,he=n}}}function v6(n){for(n=n.return;n!==null&&n.tag!==5&&n.tag!==3&&n.tag!==13;)n=n.return;he=n}function j5(n){if(n!==he)return!1;if(!r1)return v6(n),r1=!0,!1;var u;if((u=n.tag!==3)&&!(u=n.tag!==5)&&(u=n.type,u=u!=="head"&&u!=="body"&&!Mu(n.type,n.memoizedProps)),u&&(u=de)){if(Gu(n))throw _6(),Error(i(418));for(;u;)B6(n,u),u=Ot(u.nextSibling)}if(v6(n),n.tag===13){if(n=n.memoizedState,n=n!==null?n.dehydrated:null,!n)throw Error(i(317));e:{for(n=n.nextSibling,u=0;n;){if(n.nodeType===8){var l=n.data;if(l==="/$"){if(u===0){de=Ot(n.nextSibling);break e}u--}else l!=="$"&&l!=="$!"&&l!=="$?"||u++}n=n.nextSibling}de=null}}else de=he?Ot(n.stateNode.nextSibling):null;return!0}function _6(){for(var n=de;n;)n=Ot(n.nextSibling)}function J2(){de=he=null,r1=!1}function Zu(n){Oe===null?Oe=[n]:Oe.push(n)}var q9=z.ReactCurrentBatchConfig;function ii(n,u,l){if(n=l.ref,n!==null&&typeof n!="function"&&typeof n!="object"){if(l._owner){if(l=l._owner,l){if(l.tag!==1)throw Error(i(309));var h=l.stateNode}if(!h)throw Error(i(147,n));var m=h,p=""+n;return u!==null&&u.ref!==null&&typeof u.ref=="function"&&u.ref._stringRef===p?u.ref:(u=function(D){var w=m.refs;D===null?delete w[p]:w[p]=D},u._stringRef=p,u)}if(typeof n!="string")throw Error(i(284));if(!l._owner)throw Error(i(290,n))}return n}function v5(n,u){throw n=Object.prototype.toString.call(u),Error(i(31,n==="[object Object]"?"object with keys {"+Object.keys(u).join(", ")+"}":n))}function S6(n){var u=n._init;return u(n._payload)}function w6(n){function u(L,k){if(n){var H=L.deletions;H===null?(L.deletions=[k],L.flags|=16):H.push(k)}}function l(L,k){if(!n)return null;for(;k!==null;)u(L,k),k=k.sibling;return null}function h(L,k){for(L=new Map;k!==null;)k.key!==null?L.set(k.key,k):L.set(k.index,k),k=k.sibling;return L}function m(L,k){return L=Jt(L,k),L.index=0,L.sibling=null,L}function p(L,k,H){return L.index=H,n?(H=L.alternate,H!==null?(H=H.index,H<k?(L.flags|=2,k):H):(L.flags|=2,k)):(L.flags|=1048576,k)}function D(L){return n&&L.alternate===null&&(L.flags|=2),L}function w(L,k,H,o0){return k===null||k.tag!==6?(k=Ts(H,L.mode,o0),k.return=L,k):(k=m(k,H),k.return=L,k)}function I(L,k,H,o0){var y0=H.type;return y0===X?n0(L,k,H.props.children,o0,H.key):k!==null&&(k.elementType===y0||typeof y0=="object"&&y0!==null&&y0.$$typeof===E0&&S6(y0)===k.type)?(o0=m(k,H.props),o0.ref=ii(L,k,H),o0.return=L,o0):(o0=$5(H.type,H.key,H.props,null,L.mode,o0),o0.ref=ii(L,k,H),o0.return=L,o0)}function U(L,k,H,o0){return k===null||k.tag!==4||k.stateNode.containerInfo!==H.containerInfo||k.stateNode.implementation!==H.implementation?(k=bs(H,L.mode,o0),k.return=L,k):(k=m(k,H.children||[]),k.return=L,k)}function n0(L,k,H,o0,y0){return k===null||k.tag!==7?(k=D2(H,L.mode,o0,y0),k.return=L,k):(k=m(k,H),k.return=L,k)}function s0(L,k,H){if(typeof k=="string"&&k!==""||typeof k=="number")return k=Ts(""+k,L.mode,H),k.return=L,k;if(typeof k=="object"&&k!==null){switch(k.$$typeof){case T:return H=$5(k.type,k.key,k.props,null,L.mode,H),H.ref=ii(L,null,k),H.return=L,H;case W:return k=bs(k,L.mode,H),k.return=L,k;case E0:var o0=k._init;return s0(L,o0(k._payload),H)}if(b1(k)||h0(k))return k=D2(k,L.mode,H,null),k.return=L,k;v5(L,k)}return null}function t0(L,k,H,o0){var y0=k!==null?k.key:null;if(typeof H=="string"&&H!==""||typeof H=="number")return y0!==null?null:w(L,k,""+H,o0);if(typeof H=="object"&&H!==null){switch(H.$$typeof){case T:return H.key===y0?I(L,k,H,o0):null;case W:return H.key===y0?U(L,k,H,o0):null;case E0:return y0=H._init,t0(L,k,y0(H._payload),o0)}if(b1(H)||h0(H))return y0!==null?null:n0(L,k,H,o0,null);v5(L,H)}return null}function f0(L,k,H,o0,y0){if(typeof o0=="string"&&o0!==""||typeof o0=="number")return L=L.get(H)||null,w(k,L,""+o0,y0);if(typeof o0=="object"&&o0!==null){switch(o0.$$typeof){case T:return L=L.get(o0.key===null?H:o0.key)||null,I(k,L,o0,y0);case W:return L=L.get(o0.key===null?H:o0.key)||null,U(k,L,o0,y0);case E0:var v0=o0._init;return f0(L,k,H,v0(o0._payload),y0)}if(b1(o0)||h0(o0))return L=L.get(H)||null,n0(k,L,o0,y0,null);v5(k,o0)}return null}function C0(L,k,H,o0){for(var y0=null,v0=null,_0=k,N0=k=0,w1=null;_0!==null&&N0<H.length;N0++){_0.index>N0?(w1=_0,_0=null):w1=_0.sibling;var Z0=t0(L,_0,H[N0],o0);if(Z0===null){_0===null&&(_0=w1);break}n&&_0&&Z0.alternate===null&&u(L,_0),k=p(Z0,k,N0),v0===null?y0=Z0:v0.sibling=Z0,v0=Z0,_0=w1}if(N0===H.length)return l(L,_0),r1&&m2(L,N0),y0;if(_0===null){for(;N0<H.length;N0++)_0=s0(L,H[N0],o0),_0!==null&&(k=p(_0,k,N0),v0===null?y0=_0:v0.sibling=_0,v0=_0);return r1&&m2(L,N0),y0}for(_0=h(L,_0);N0<H.length;N0++)w1=f0(_0,L,N0,H[N0],o0),w1!==null&&(n&&w1.alternate!==null&&_0.delete(w1.key===null?N0:w1.key),k=p(w1,k,N0),v0===null?y0=w1:v0.sibling=w1,v0=w1);return n&&_0.forEach(function(Wt){return u(L,Wt)}),r1&&m2(L,N0),y0}function x0(L,k,H,o0){var y0=h0(H);if(typeof y0!="function")throw Error(i(150));if(H=y0.call(H),H==null)throw Error(i(151));for(var v0=y0=null,_0=k,N0=k=0,w1=null,Z0=H.next();_0!==null&&!Z0.done;N0++,Z0=H.next()){_0.index>N0?(w1=_0,_0=null):w1=_0.sibling;var Wt=t0(L,_0,Z0.value,o0);if(Wt===null){_0===null&&(_0=w1);break}n&&_0&&Wt.alternate===null&&u(L,_0),k=p(Wt,k,N0),v0===null?y0=Wt:v0.sibling=Wt,v0=Wt,_0=w1}if(Z0.done)return l(L,_0),r1&&m2(L,N0),y0;if(_0===null){for(;!Z0.done;N0++,Z0=H.next())Z0=s0(L,Z0.value,o0),Z0!==null&&(k=p(Z0,k,N0),v0===null?y0=Z0:v0.sibling=Z0,v0=Z0);return r1&&m2(L,N0),y0}for(_0=h(L,_0);!Z0.done;N0++,Z0=H.next())Z0=f0(_0,L,N0,Z0.value,o0),Z0!==null&&(n&&Z0.alternate!==null&&_0.delete(Z0.key===null?N0:Z0.key),k=p(Z0,k,N0),v0===null?y0=Z0:v0.sibling=Z0,v0=Z0);return n&&_0.forEach(function(jc){return u(L,jc)}),r1&&m2(L,N0),y0}function p1(L,k,H,o0){if(typeof H=="object"&&H!==null&&H.type===X&&H.key===null&&(H=H.props.children),typeof H=="object"&&H!==null){switch(H.$$typeof){case T:e:{for(var y0=H.key,v0=k;v0!==null;){if(v0.key===y0){if(y0=H.type,y0===X){if(v0.tag===7){l(L,v0.sibling),k=m(v0,H.props.children),k.return=L,L=k;break e}}else if(v0.elementType===y0||typeof y0=="object"&&y0!==null&&y0.$$typeof===E0&&S6(y0)===v0.type){l(L,v0.sibling),k=m(v0,H.props),k.ref=ii(L,v0,H),k.return=L,L=k;break e}l(L,v0);break}else u(L,v0);v0=v0.sibling}H.type===X?(k=D2(H.props.children,L.mode,o0,H.key),k.return=L,L=k):(o0=$5(H.type,H.key,H.props,null,L.mode,o0),o0.ref=ii(L,k,H),o0.return=L,L=o0)}return D(L);case W:e:{for(v0=H.key;k!==null;){if(k.key===v0)if(k.tag===4&&k.stateNode.containerInfo===H.containerInfo&&k.stateNode.implementation===H.implementation){l(L,k.sibling),k=m(k,H.children||[]),k.return=L,L=k;break e}else{l(L,k);break}else u(L,k);k=k.sibling}k=bs(H,L.mode,o0),k.return=L,L=k}return D(L);case E0:return v0=H._init,p1(L,k,v0(H._payload),o0)}if(b1(H))return C0(L,k,H,o0);if(h0(H))return x0(L,k,H,o0);v5(L,H)}return typeof H=="string"&&H!==""||typeof H=="number"?(H=""+H,k!==null&&k.tag===6?(l(L,k.sibling),k=m(k,H),k.return=L,L=k):(l(L,k),k=Ts(H,L.mode,o0),k.return=L,L=k),D(L)):l(L,k)}return p1}var W2=w6(!0),N6=w6(!1),_5=Pt(null),S5=null,$2=null,Uu=null;function qu(){Uu=$2=S5=null}function Xu(n){var u=_5.current;u1(_5),n._currentValue=u}function Ju(n,u,l){for(;n!==null;){var h=n.alternate;if((n.childLanes&u)!==u?(n.childLanes|=u,h!==null&&(h.childLanes|=u)):h!==null&&(h.childLanes&u)!==u&&(h.childLanes|=u),n===l)break;n=n.return}}function Q2(n,u){S5=n,Uu=$2=null,n=n.dependencies,n!==null&&n.firstContext!==null&&((n.lanes&u)!==0&&(te=!0),n.firstContext=null)}function Be(n){var u=n._currentValue;if(Uu!==n)if(n={context:n,memoizedValue:u,next:null},$2===null){if(S5===null)throw Error(i(308));$2=n,S5.dependencies={lanes:0,firstContext:n}}else $2=$2.next=n;return u}var f2=null;function Wu(n){f2===null?f2=[n]:f2.push(n)}function I6(n,u,l,h){var m=u.interleaved;return m===null?(l.next=l,Wu(u)):(l.next=m.next,m.next=l),u.interleaved=l,Ft(n,h)}function Ft(n,u){n.lanes|=u;var l=n.alternate;for(l!==null&&(l.lanes|=u),l=n,n=n.return;n!==null;)n.childLanes|=u,l=n.alternate,l!==null&&(l.childLanes|=u),l=n,n=n.return;return l.tag===3?l.stateNode:null}var Rt=!1;function $u(n){n.updateQueue={baseState:n.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function z6(n,u){n=n.updateQueue,u.updateQueue===n&&(u.updateQueue={baseState:n.baseState,firstBaseUpdate:n.firstBaseUpdate,lastBaseUpdate:n.lastBaseUpdate,shared:n.shared,effects:n.effects})}function pt(n,u){return{eventTime:n,lane:u,tag:0,payload:null,callback:null,next:null}}function Gt(n,u,l){var h=n.updateQueue;if(h===null)return null;if(h=h.shared,(G0&2)!==0){var m=h.pending;return m===null?u.next=u:(u.next=m.next,m.next=u),h.pending=u,Ft(n,l)}return m=h.interleaved,m===null?(u.next=u,Wu(h)):(u.next=m.next,m.next=u),h.interleaved=u,Ft(n,l)}function w5(n,u,l){if(u=u.updateQueue,u!==null&&(u=u.shared,(l&4194240)!==0)){var h=u.lanes;h&=n.pendingLanes,l|=h,u.lanes=l,cu(n,l)}}function k6(n,u){var l=n.updateQueue,h=n.alternate;if(h!==null&&(h=h.updateQueue,l===h)){var m=null,p=null;if(l=l.firstBaseUpdate,l!==null){do{var D={eventTime:l.eventTime,lane:l.lane,tag:l.tag,payload:l.payload,callback:l.callback,next:null};p===null?m=p=D:p=p.next=D,l=l.next}while(l!==null);p===null?m=p=u:p=p.next=u}else m=p=u;l={baseState:h.baseState,firstBaseUpdate:m,lastBaseUpdate:p,shared:h.shared,effects:h.effects},n.updateQueue=l;return}n=l.lastBaseUpdate,n===null?l.firstBaseUpdate=u:n.next=u,l.lastBaseUpdate=u}function N5(n,u,l,h){var m=n.updateQueue;Rt=!1;var p=m.firstBaseUpdate,D=m.lastBaseUpdate,w=m.shared.pending;if(w!==null){m.shared.pending=null;var I=w,U=I.next;I.next=null,D===null?p=U:D.next=U,D=I;var n0=n.alternate;n0!==null&&(n0=n0.updateQueue,w=n0.lastBaseUpdate,w!==D&&(w===null?n0.firstBaseUpdate=U:w.next=U,n0.lastBaseUpdate=I))}if(p!==null){var s0=m.baseState;D=0,n0=U=I=null,w=p;do{var t0=w.lane,f0=w.eventTime;if((h&t0)===t0){n0!==null&&(n0=n0.next={eventTime:f0,lane:0,tag:w.tag,payload:w.payload,callback:w.callback,next:null});e:{var C0=n,x0=w;switch(t0=u,f0=l,x0.tag){case 1:if(C0=x0.payload,typeof C0=="function"){s0=C0.call(f0,s0,t0);break e}s0=C0;break e;case 3:C0.flags=C0.flags&-65537|128;case 0:if(C0=x0.payload,t0=typeof C0=="function"?C0.call(f0,s0,t0):C0,t0==null)break e;s0=G({},s0,t0);break e;case 2:Rt=!0}}w.callback!==null&&w.lane!==0&&(n.flags|=64,t0=m.effects,t0===null?m.effects=[w]:t0.push(w))}else f0={eventTime:f0,lane:t0,tag:w.tag,payload:w.payload,callback:w.callback,next:null},n0===null?(U=n0=f0,I=s0):n0=n0.next=f0,D|=t0;if(w=w.next,w===null){if(w=m.shared.pending,w===null)break;t0=w,w=t0.next,t0.next=null,m.lastBaseUpdate=t0,m.shared.pending=null}}while(!0);if(n0===null&&(I=s0),m.baseState=I,m.firstBaseUpdate=U,m.lastBaseUpdate=n0,u=m.shared.interleaved,u!==null){m=u;do D|=m.lane,m=m.next;while(m!==u)}else p===null&&(m.shared.lanes=0);p2|=D,n.lanes=D,n.memoizedState=s0}}function M6(n,u,l){if(n=u.effects,u.effects=null,n!==null)for(u=0;u<n.length;u++){var h=n[u],m=h.callback;if(m!==null){if(h.callback=null,h=l,typeof m!="function")throw Error(i(191,m));m.call(h)}}}var ui={},Ke=Pt(ui),si=Pt(ui),ri=Pt(ui);function E2(n){if(n===ui)throw Error(i(174));return n}function Qu(n,u){switch(t1(ri,u),t1(si,n),t1(Ke,ui),n=u.nodeType,n){case 9:case 11:u=(u=u.documentElement)?u.namespaceURI:a2(null,"");break;default:n=n===8?u.parentNode:u,u=n.namespaceURI||null,n=n.tagName,u=a2(u,n)}u1(Ke),t1(Ke,u)}function K2(){u1(Ke),u1(si),u1(ri)}function T6(n){E2(ri.current);var u=E2(Ke.current),l=a2(u,n.type);u!==l&&(t1(si,n),t1(Ke,l))}function Ku(n){si.current===n&&(u1(Ke),u1(si))}var c1=Pt(0);function I5(n){for(var u=n;u!==null;){if(u.tag===13){var l=u.memoizedState;if(l!==null&&(l=l.dehydrated,l===null||l.data==="$?"||l.data==="$!"))return u}else if(u.tag===19&&u.memoizedProps.revealOrder!==void 0){if((u.flags&128)!==0)return u}else if(u.child!==null){u.child.return=u,u=u.child;continue}if(u===n)break;for(;u.sibling===null;){if(u.return===null||u.return===n)return null;u=u.return}u.sibling.return=u.return,u=u.sibling}return null}var Vu=[];function es(){for(var n=0;n<Vu.length;n++)Vu[n]._workInProgressVersionPrimary=null;Vu.length=0}var z5=z.ReactCurrentDispatcher,ts=z.ReactCurrentBatchConfig,F2=0,h1=null,A1=null,_1=null,k5=!1,ai=!1,li=0,X9=0;function L1(){throw Error(i(321))}function ns(n,u){if(u===null)return!1;for(var l=0;l<u.length&&l<n.length;l++)if(!be(n[l],u[l]))return!1;return!0}function is(n,u,l,h,m,p){if(F2=p,h1=u,u.memoizedState=null,u.updateQueue=null,u.lanes=0,z5.current=n===null||n.memoizedState===null?Q9:K9,n=l(h,m),ai){p=0;do{if(ai=!1,li=0,25<=p)throw Error(i(301));p+=1,_1=A1=null,u.updateQueue=null,z5.current=V9,n=l(h,m)}while(ai)}if(z5.current=b5,u=A1!==null&&A1.next!==null,F2=0,_1=A1=h1=null,k5=!1,u)throw Error(i(300));return n}function us(){var n=li!==0;return li=0,n}function Ve(){var n={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return _1===null?h1.memoizedState=_1=n:_1=_1.next=n,_1}function je(){if(A1===null){var n=h1.alternate;n=n!==null?n.memoizedState:null}else n=A1.next;var u=_1===null?h1.memoizedState:_1.next;if(u!==null)_1=u,A1=n;else{if(n===null)throw Error(i(310));A1=n,n={memoizedState:A1.memoizedState,baseState:A1.baseState,baseQueue:A1.baseQueue,queue:A1.queue,next:null},_1===null?h1.memoizedState=_1=n:_1=_1.next=n}return _1}function oi(n,u){return typeof u=="function"?u(n):u}function ss(n){var u=je(),l=u.queue;if(l===null)throw Error(i(311));l.lastRenderedReducer=n;var h=A1,m=h.baseQueue,p=l.pending;if(p!==null){if(m!==null){var D=m.next;m.next=p.next,p.next=D}h.baseQueue=m=p,l.pending=null}if(m!==null){p=m.next,h=h.baseState;var w=D=null,I=null,U=p;do{var n0=U.lane;if((F2&n0)===n0)I!==null&&(I=I.next={lane:0,action:U.action,hasEagerState:U.hasEagerState,eagerState:U.eagerState,next:null}),h=U.hasEagerState?U.eagerState:n(h,U.action);else{var s0={lane:n0,action:U.action,hasEagerState:U.hasEagerState,eagerState:U.eagerState,next:null};I===null?(w=I=s0,D=h):I=I.next=s0,h1.lanes|=n0,p2|=n0}U=U.next}while(U!==null&&U!==p);I===null?D=h:I.next=w,be(h,u.memoizedState)||(te=!0),u.memoizedState=h,u.baseState=D,u.baseQueue=I,l.lastRenderedState=h}if(n=l.interleaved,n!==null){m=n;do p=m.lane,h1.lanes|=p,p2|=p,m=m.next;while(m!==n)}else m===null&&(l.lanes=0);return[u.memoizedState,l.dispatch]}function rs(n){var u=je(),l=u.queue;if(l===null)throw Error(i(311));l.lastRenderedReducer=n;var h=l.dispatch,m=l.pending,p=u.memoizedState;if(m!==null){l.pending=null;var D=m=m.next;do p=n(p,D.action),D=D.next;while(D!==m);be(p,u.memoizedState)||(te=!0),u.memoizedState=p,u.baseQueue===null&&(u.baseState=p),l.lastRenderedState=p}return[p,h]}function b6(){}function O6(n,u){var l=h1,h=je(),m=u(),p=!be(h.memoizedState,m);if(p&&(h.memoizedState=m,te=!0),h=h.queue,as(L6.bind(null,l,h,n),[n]),h.getSnapshot!==u||p||_1!==null&&_1.memoizedState.tag&1){if(l.flags|=2048,ci(9,Y6.bind(null,l,h,m,u),void 0,null),S1===null)throw Error(i(349));(F2&30)!==0||P6(l,u,m)}return m}function P6(n,u,l){n.flags|=16384,n={getSnapshot:u,value:l},u=h1.updateQueue,u===null?(u={lastEffect:null,stores:null},h1.updateQueue=u,u.stores=[n]):(l=u.stores,l===null?u.stores=[n]:l.push(n))}function Y6(n,u,l,h){u.value=l,u.getSnapshot=h,R6(u)&&G6(n)}function L6(n,u,l){return l(function(){R6(u)&&G6(n)})}function R6(n){var u=n.getSnapshot;n=n.value;try{var l=u();return!be(n,l)}catch{return!0}}function G6(n){var u=Ft(n,1);u!==null&&Re(u,n,1,-1)}function H6(n){var u=Ve();return typeof n=="function"&&(n=n()),u.memoizedState=u.baseState=n,n={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:oi,lastRenderedState:n},u.queue=n,n=n.dispatch=$9.bind(null,h1,n),[u.memoizedState,n]}function ci(n,u,l,h){return n={tag:n,create:u,destroy:l,deps:h,next:null},u=h1.updateQueue,u===null?(u={lastEffect:null,stores:null},h1.updateQueue=u,u.lastEffect=n.next=n):(l=u.lastEffect,l===null?u.lastEffect=n.next=n:(h=l.next,l.next=n,n.next=h,u.lastEffect=n)),n}function Z6(){return je().memoizedState}function M5(n,u,l,h){var m=Ve();h1.flags|=n,m.memoizedState=ci(1|u,l,void 0,h===void 0?null:h)}function T5(n,u,l,h){var m=je();h=h===void 0?null:h;var p=void 0;if(A1!==null){var D=A1.memoizedState;if(p=D.destroy,h!==null&&ns(h,D.deps)){m.memoizedState=ci(u,l,p,h);return}}h1.flags|=n,m.memoizedState=ci(1|u,l,p,h)}function U6(n,u){return M5(8390656,8,n,u)}function as(n,u){return T5(2048,8,n,u)}function q6(n,u){return T5(4,2,n,u)}function X6(n,u){return T5(4,4,n,u)}function J6(n,u){if(typeof u=="function")return n=n(),u(n),function(){u(null)};if(u!=null)return n=n(),u.current=n,function(){u.current=null}}function W6(n,u,l){return l=l!=null?l.concat([n]):null,T5(4,4,J6.bind(null,u,n),l)}function ls(){}function $6(n,u){var l=je();u=u===void 0?null:u;var h=l.memoizedState;return h!==null&&u!==null&&ns(u,h[1])?h[0]:(l.memoizedState=[n,u],n)}function Q6(n,u){var l=je();u=u===void 0?null:u;var h=l.memoizedState;return h!==null&&u!==null&&ns(u,h[1])?h[0]:(n=n(),l.memoizedState=[n,u],n)}function K6(n,u,l){return(F2&21)===0?(n.baseState&&(n.baseState=!1,te=!0),n.memoizedState=l):(be(l,u)||(l=Sa(),h1.lanes|=l,p2|=l,n.baseState=!0),u)}function J9(n,u){var l=W0;W0=l!==0&&4>l?l:4,n(!0);var h=ts.transition;ts.transition={};try{n(!1),u()}finally{W0=l,ts.transition=h}}function V6(){return je().memoizedState}function W9(n,u,l){var h=qt(n);if(l={lane:h,action:l,hasEagerState:!1,eagerState:null,next:null},e4(n))t4(u,l);else if(l=I6(n,u,l,h),l!==null){var m=W1();Re(l,n,h,m),n4(l,u,h)}}function $9(n,u,l){var h=qt(n),m={lane:h,action:l,hasEagerState:!1,eagerState:null,next:null};if(e4(n))t4(u,m);else{var p=n.alternate;if(n.lanes===0&&(p===null||p.lanes===0)&&(p=u.lastRenderedReducer,p!==null))try{var D=u.lastRenderedState,w=p(D,l);if(m.hasEagerState=!0,m.eagerState=w,be(w,D)){var I=u.interleaved;I===null?(m.next=m,Wu(u)):(m.next=I.next,I.next=m),u.interleaved=m;return}}catch{}finally{}l=I6(n,u,m,h),l!==null&&(m=W1(),Re(l,n,h,m),n4(l,u,h))}}function e4(n){var u=n.alternate;return n===h1||u!==null&&u===h1}function t4(n,u){ai=k5=!0;var l=n.pending;l===null?u.next=u:(u.next=l.next,l.next=u),n.pending=u}function n4(n,u,l){if((l&4194240)!==0){var h=u.lanes;h&=n.pendingLanes,l|=h,u.lanes=l,cu(n,l)}}var b5={readContext:Be,useCallback:L1,useContext:L1,useEffect:L1,useImperativeHandle:L1,useInsertionEffect:L1,useLayoutEffect:L1,useMemo:L1,useReducer:L1,useRef:L1,useState:L1,useDebugValue:L1,useDeferredValue:L1,useTransition:L1,useMutableSource:L1,useSyncExternalStore:L1,useId:L1,unstable_isNewReconciler:!1},Q9={readContext:Be,useCallback:function(n,u){return Ve().memoizedState=[n,u===void 0?null:u],n},useContext:Be,useEffect:U6,useImperativeHandle:function(n,u,l){return l=l!=null?l.concat([n]):null,M5(4194308,4,J6.bind(null,u,n),l)},useLayoutEffect:function(n,u){return M5(4194308,4,n,u)},useInsertionEffect:function(n,u){return M5(4,2,n,u)},useMemo:function(n,u){var l=Ve();return u=u===void 0?null:u,n=n(),l.memoizedState=[n,u],n},useReducer:function(n,u,l){var h=Ve();return u=l!==void 0?l(u):u,h.memoizedState=h.baseState=u,n={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:n,lastRenderedState:u},h.queue=n,n=n.dispatch=W9.bind(null,h1,n),[h.memoizedState,n]},useRef:function(n){var u=Ve();return n={current:n},u.memoizedState=n},useState:H6,useDebugValue:ls,useDeferredValue:function(n){return Ve().memoizedState=n},useTransition:function(){var n=H6(!1),u=n[0];return n=J9.bind(null,n[1]),Ve().memoizedState=n,[u,n]},useMutableSource:function(){},useSyncExternalStore:function(n,u,l){var h=h1,m=Ve();if(r1){if(l===void 0)throw Error(i(407));l=l()}else{if(l=u(),S1===null)throw Error(i(349));(F2&30)!==0||P6(h,u,l)}m.memoizedState=l;var p={value:l,getSnapshot:u};return m.queue=p,U6(L6.bind(null,h,p,n),[n]),h.flags|=2048,ci(9,Y6.bind(null,h,p,l,u),void 0,null),l},useId:function(){var n=Ve(),u=S1.identifierPrefix;if(r1){var l=Et,h=ft;l=(h&~(1<<32-Te(h)-1)).toString(32)+l,u=":"+u+"R"+l,l=li++,0<l&&(u+="H"+l.toString(32)),u+=":"}else l=X9++,u=":"+u+"r"+l.toString(32)+":";return n.memoizedState=u},unstable_isNewReconciler:!1},K9={readContext:Be,useCallback:$6,useContext:Be,useEffect:as,useImperativeHandle:W6,useInsertionEffect:q6,useLayoutEffect:X6,useMemo:Q6,useReducer:ss,useRef:Z6,useState:function(){return ss(oi)},useDebugValue:ls,useDeferredValue:function(n){var u=je();return K6(u,A1.memoizedState,n)},useTransition:function(){var n=ss(oi)[0],u=je().memoizedState;return[n,u]},useMutableSource:b6,useSyncExternalStore:O6,useId:V6,unstable_isNewReconciler:!1},V9={readContext:Be,useCallback:$6,useContext:Be,useEffect:as,useImperativeHandle:W6,useInsertionEffect:q6,useLayoutEffect:X6,useMemo:Q6,useReducer:rs,useRef:Z6,useState:function(){return rs(oi)},useDebugValue:ls,useDeferredValue:function(n){var u=je();return A1===null?u.memoizedState=n:K6(u,A1.memoizedState,n)},useTransition:function(){var n=rs(oi)[0],u=je().memoizedState;return[n,u]},useMutableSource:b6,useSyncExternalStore:O6,useId:V6,unstable_isNewReconciler:!1};function Pe(n,u){if(n&&n.defaultProps){u=G({},u),n=n.defaultProps;for(var l in n)u[l]===void 0&&(u[l]=n[l]);return u}return u}function os(n,u,l,h){u=n.memoizedState,l=l(h,u),l=l==null?u:G({},u,l),n.memoizedState=l,n.lanes===0&&(n.updateQueue.baseState=l)}var O5={isMounted:function(n){return(n=n._reactInternals)?c2(n)===n:!1},enqueueSetState:function(n,u,l){n=n._reactInternals;var h=W1(),m=qt(n),p=pt(h,m);p.payload=u,l!=null&&(p.callback=l),u=Gt(n,p,m),u!==null&&(Re(u,n,m,h),w5(u,n,m))},enqueueReplaceState:function(n,u,l){n=n._reactInternals;var h=W1(),m=qt(n),p=pt(h,m);p.tag=1,p.payload=u,l!=null&&(p.callback=l),u=Gt(n,p,m),u!==null&&(Re(u,n,m,h),w5(u,n,m))},enqueueForceUpdate:function(n,u){n=n._reactInternals;var l=W1(),h=qt(n),m=pt(l,h);m.tag=2,u!=null&&(m.callback=u),u=Gt(n,m,h),u!==null&&(Re(u,n,h,l),w5(u,n,h))}};function i4(n,u,l,h,m,p,D){return n=n.stateNode,typeof n.shouldComponentUpdate=="function"?n.shouldComponentUpdate(h,p,D):u.prototype&&u.prototype.isPureReactComponent?!$n(l,h)||!$n(m,p):!0}function u4(n,u,l){var h=!1,m=Yt,p=u.contextType;return typeof p=="object"&&p!==null?p=Be(p):(m=ee(u)?d2:Y1.current,h=u.contextTypes,p=(h=h!=null)?U2(n,m):Yt),u=new u(l,p),n.memoizedState=u.state!==null&&u.state!==void 0?u.state:null,u.updater=O5,n.stateNode=u,u._reactInternals=n,h&&(n=n.stateNode,n.__reactInternalMemoizedUnmaskedChildContext=m,n.__reactInternalMemoizedMaskedChildContext=p),u}function s4(n,u,l,h){n=u.state,typeof u.componentWillReceiveProps=="function"&&u.componentWillReceiveProps(l,h),typeof u.UNSAFE_componentWillReceiveProps=="function"&&u.UNSAFE_componentWillReceiveProps(l,h),u.state!==n&&O5.enqueueReplaceState(u,u.state,null)}function cs(n,u,l,h){var m=n.stateNode;m.props=l,m.state=n.memoizedState,m.refs={},$u(n);var p=u.contextType;typeof p=="object"&&p!==null?m.context=Be(p):(p=ee(u)?d2:Y1.current,m.context=U2(n,p)),m.state=n.memoizedState,p=u.getDerivedStateFromProps,typeof p=="function"&&(os(n,u,p,l),m.state=n.memoizedState),typeof u.getDerivedStateFromProps=="function"||typeof m.getSnapshotBeforeUpdate=="function"||typeof m.UNSAFE_componentWillMount!="function"&&typeof m.componentWillMount!="function"||(u=m.state,typeof m.componentWillMount=="function"&&m.componentWillMount(),typeof m.UNSAFE_componentWillMount=="function"&&m.UNSAFE_componentWillMount(),u!==m.state&&O5.enqueueReplaceState(m,m.state,null),N5(n,l,m,h),m.state=n.memoizedState),typeof m.componentDidMount=="function"&&(n.flags|=4194308)}function V2(n,u){try{var l="",h=u;do l+=j0(h),h=h.return;while(h);var m=l}catch(p){m=`
|
|
39
|
+
Error generating stack: `+p.message+`
|
|
40
|
+
`+p.stack}return{value:n,source:u,stack:m,digest:null}}function hs(n,u,l){return{value:n,source:null,stack:l??null,digest:u??null}}function ds(n,u){try{console.error(u.value)}catch(l){setTimeout(function(){throw l})}}var ec=typeof WeakMap=="function"?WeakMap:Map;function r4(n,u,l){l=pt(-1,l),l.tag=3,l.payload={element:null};var h=u.value;return l.callback=function(){Z5||(Z5=!0,_s=h),ds(n,u)},l}function a4(n,u,l){l=pt(-1,l),l.tag=3;var h=n.type.getDerivedStateFromError;if(typeof h=="function"){var m=u.value;l.payload=function(){return h(m)},l.callback=function(){ds(n,u)}}var p=n.stateNode;return p!==null&&typeof p.componentDidCatch=="function"&&(l.callback=function(){ds(n,u),typeof h!="function"&&(Zt===null?Zt=new Set([this]):Zt.add(this));var D=u.stack;this.componentDidCatch(u.value,{componentStack:D!==null?D:""})}),l}function l4(n,u,l){var h=n.pingCache;if(h===null){h=n.pingCache=new ec;var m=new Set;h.set(u,m)}else m=h.get(u),m===void 0&&(m=new Set,h.set(u,m));m.has(l)||(m.add(l),n=mc.bind(null,n,u,l),u.then(n,n))}function o4(n){do{var u;if((u=n.tag===13)&&(u=n.memoizedState,u=u!==null?u.dehydrated!==null:!0),u)return n;n=n.return}while(n!==null);return null}function c4(n,u,l,h,m){return(n.mode&1)===0?(n===u?n.flags|=65536:(n.flags|=128,l.flags|=131072,l.flags&=-52805,l.tag===1&&(l.alternate===null?l.tag=17:(u=pt(-1,1),u.tag=2,Gt(l,u,1))),l.lanes|=1),n):(n.flags|=65536,n.lanes=m,n)}var tc=z.ReactCurrentOwner,te=!1;function J1(n,u,l,h){u.child=n===null?N6(u,null,l,h):W2(u,n.child,l,h)}function h4(n,u,l,h,m){l=l.render;var p=u.ref;return Q2(u,m),h=is(n,u,l,h,p,m),l=us(),n!==null&&!te?(u.updateQueue=n.updateQueue,u.flags&=-2053,n.lanes&=~m,Ct(n,u,m)):(r1&&l&&Lu(u),u.flags|=1,J1(n,u,h,m),u.child)}function d4(n,u,l,h,m){if(n===null){var p=l.type;return typeof p=="function"&&!Ms(p)&&p.defaultProps===void 0&&l.compare===null&&l.defaultProps===void 0?(u.tag=15,u.type=p,g4(n,u,p,h,m)):(n=$5(l.type,null,h,u,u.mode,m),n.ref=u.ref,n.return=u,u.child=n)}if(p=n.child,(n.lanes&m)===0){var D=p.memoizedProps;if(l=l.compare,l=l!==null?l:$n,l(D,h)&&n.ref===u.ref)return Ct(n,u,m)}return u.flags|=1,n=Jt(p,h),n.ref=u.ref,n.return=u,u.child=n}function g4(n,u,l,h,m){if(n!==null){var p=n.memoizedProps;if($n(p,h)&&n.ref===u.ref)if(te=!1,u.pendingProps=h=p,(n.lanes&m)!==0)(n.flags&131072)!==0&&(te=!0);else return u.lanes=n.lanes,Ct(n,u,m)}return gs(n,u,l,h,m)}function m4(n,u,l){var h=u.pendingProps,m=h.children,p=n!==null?n.memoizedState:null;if(h.mode==="hidden")if((u.mode&1)===0)u.memoizedState={baseLanes:0,cachePool:null,transitions:null},t1(tn,ge),ge|=l;else{if((l&1073741824)===0)return n=p!==null?p.baseLanes|l:l,u.lanes=u.childLanes=1073741824,u.memoizedState={baseLanes:n,cachePool:null,transitions:null},u.updateQueue=null,t1(tn,ge),ge|=n,null;u.memoizedState={baseLanes:0,cachePool:null,transitions:null},h=p!==null?p.baseLanes:l,t1(tn,ge),ge|=h}else p!==null?(h=p.baseLanes|l,u.memoizedState=null):h=l,t1(tn,ge),ge|=h;return J1(n,u,m,l),u.child}function f4(n,u){var l=u.ref;(n===null&&l!==null||n!==null&&n.ref!==l)&&(u.flags|=512,u.flags|=2097152)}function gs(n,u,l,h,m){var p=ee(l)?d2:Y1.current;return p=U2(u,p),Q2(u,m),l=is(n,u,l,h,p,m),h=us(),n!==null&&!te?(u.updateQueue=n.updateQueue,u.flags&=-2053,n.lanes&=~m,Ct(n,u,m)):(r1&&h&&Lu(u),u.flags|=1,J1(n,u,l,m),u.child)}function E4(n,u,l,h,m){if(ee(l)){var p=!0;y5(u)}else p=!1;if(Q2(u,m),u.stateNode===null)Y5(n,u),u4(u,l,h),cs(u,l,h,m),h=!0;else if(n===null){var D=u.stateNode,w=u.memoizedProps;D.props=w;var I=D.context,U=l.contextType;typeof U=="object"&&U!==null?U=Be(U):(U=ee(l)?d2:Y1.current,U=U2(u,U));var n0=l.getDerivedStateFromProps,s0=typeof n0=="function"||typeof D.getSnapshotBeforeUpdate=="function";s0||typeof D.UNSAFE_componentWillReceiveProps!="function"&&typeof D.componentWillReceiveProps!="function"||(w!==h||I!==U)&&s4(u,D,h,U),Rt=!1;var t0=u.memoizedState;D.state=t0,N5(u,h,D,m),I=u.memoizedState,w!==h||t0!==I||V1.current||Rt?(typeof n0=="function"&&(os(u,l,n0,h),I=u.memoizedState),(w=Rt||i4(u,l,w,h,t0,I,U))?(s0||typeof D.UNSAFE_componentWillMount!="function"&&typeof D.componentWillMount!="function"||(typeof D.componentWillMount=="function"&&D.componentWillMount(),typeof D.UNSAFE_componentWillMount=="function"&&D.UNSAFE_componentWillMount()),typeof D.componentDidMount=="function"&&(u.flags|=4194308)):(typeof D.componentDidMount=="function"&&(u.flags|=4194308),u.memoizedProps=h,u.memoizedState=I),D.props=h,D.state=I,D.context=U,h=w):(typeof D.componentDidMount=="function"&&(u.flags|=4194308),h=!1)}else{D=u.stateNode,z6(n,u),w=u.memoizedProps,U=u.type===u.elementType?w:Pe(u.type,w),D.props=U,s0=u.pendingProps,t0=D.context,I=l.contextType,typeof I=="object"&&I!==null?I=Be(I):(I=ee(l)?d2:Y1.current,I=U2(u,I));var f0=l.getDerivedStateFromProps;(n0=typeof f0=="function"||typeof D.getSnapshotBeforeUpdate=="function")||typeof D.UNSAFE_componentWillReceiveProps!="function"&&typeof D.componentWillReceiveProps!="function"||(w!==s0||t0!==I)&&s4(u,D,h,I),Rt=!1,t0=u.memoizedState,D.state=t0,N5(u,h,D,m);var C0=u.memoizedState;w!==s0||t0!==C0||V1.current||Rt?(typeof f0=="function"&&(os(u,l,f0,h),C0=u.memoizedState),(U=Rt||i4(u,l,U,h,t0,C0,I)||!1)?(n0||typeof D.UNSAFE_componentWillUpdate!="function"&&typeof D.componentWillUpdate!="function"||(typeof D.componentWillUpdate=="function"&&D.componentWillUpdate(h,C0,I),typeof D.UNSAFE_componentWillUpdate=="function"&&D.UNSAFE_componentWillUpdate(h,C0,I)),typeof D.componentDidUpdate=="function"&&(u.flags|=4),typeof D.getSnapshotBeforeUpdate=="function"&&(u.flags|=1024)):(typeof D.componentDidUpdate!="function"||w===n.memoizedProps&&t0===n.memoizedState||(u.flags|=4),typeof D.getSnapshotBeforeUpdate!="function"||w===n.memoizedProps&&t0===n.memoizedState||(u.flags|=1024),u.memoizedProps=h,u.memoizedState=C0),D.props=h,D.state=C0,D.context=I,h=U):(typeof D.componentDidUpdate!="function"||w===n.memoizedProps&&t0===n.memoizedState||(u.flags|=4),typeof D.getSnapshotBeforeUpdate!="function"||w===n.memoizedProps&&t0===n.memoizedState||(u.flags|=1024),h=!1)}return ms(n,u,l,h,p,m)}function ms(n,u,l,h,m,p){f4(n,u);var D=(u.flags&128)!==0;if(!h&&!D)return m&&y6(u,l,!1),Ct(n,u,p);h=u.stateNode,tc.current=u;var w=D&&typeof l.getDerivedStateFromError!="function"?null:h.render();return u.flags|=1,n!==null&&D?(u.child=W2(u,n.child,null,p),u.child=W2(u,null,w,p)):J1(n,u,w,p),u.memoizedState=h.state,m&&y6(u,l,!0),u.child}function F4(n){var u=n.stateNode;u.pendingContext?C6(n,u.pendingContext,u.pendingContext!==u.context):u.context&&C6(n,u.context,!1),Qu(n,u.containerInfo)}function p4(n,u,l,h,m){return J2(),Zu(m),u.flags|=256,J1(n,u,l,h),u.child}var fs={dehydrated:null,treeContext:null,retryLane:0};function Es(n){return{baseLanes:n,cachePool:null,transitions:null}}function C4(n,u,l){var h=u.pendingProps,m=c1.current,p=!1,D=(u.flags&128)!==0,w;if((w=D)||(w=n!==null&&n.memoizedState===null?!1:(m&2)!==0),w?(p=!0,u.flags&=-129):(n===null||n.memoizedState!==null)&&(m|=1),t1(c1,m&1),n===null)return Hu(u),n=u.memoizedState,n!==null&&(n=n.dehydrated,n!==null)?((u.mode&1)===0?u.lanes=1:n.data==="$!"?u.lanes=8:u.lanes=1073741824,null):(D=h.children,n=h.fallback,p?(h=u.mode,p=u.child,D={mode:"hidden",children:D},(h&1)===0&&p!==null?(p.childLanes=0,p.pendingProps=D):p=Q5(D,h,0,null),n=D2(n,h,l,null),p.return=u,n.return=u,p.sibling=n,u.child=p,u.child.memoizedState=Es(l),u.memoizedState=fs,n):Fs(u,D));if(m=n.memoizedState,m!==null&&(w=m.dehydrated,w!==null))return nc(n,u,D,h,w,m,l);if(p){p=h.fallback,D=u.mode,m=n.child,w=m.sibling;var I={mode:"hidden",children:h.children};return(D&1)===0&&u.child!==m?(h=u.child,h.childLanes=0,h.pendingProps=I,u.deletions=null):(h=Jt(m,I),h.subtreeFlags=m.subtreeFlags&14680064),w!==null?p=Jt(w,p):(p=D2(p,D,l,null),p.flags|=2),p.return=u,h.return=u,h.sibling=p,u.child=h,h=p,p=u.child,D=n.child.memoizedState,D=D===null?Es(l):{baseLanes:D.baseLanes|l,cachePool:null,transitions:D.transitions},p.memoizedState=D,p.childLanes=n.childLanes&~l,u.memoizedState=fs,h}return p=n.child,n=p.sibling,h=Jt(p,{mode:"visible",children:h.children}),(u.mode&1)===0&&(h.lanes=l),h.return=u,h.sibling=null,n!==null&&(l=u.deletions,l===null?(u.deletions=[n],u.flags|=16):l.push(n)),u.child=h,u.memoizedState=null,h}function Fs(n,u){return u=Q5({mode:"visible",children:u},n.mode,0,null),u.return=n,n.child=u}function P5(n,u,l,h){return h!==null&&Zu(h),W2(u,n.child,null,l),n=Fs(u,u.pendingProps.children),n.flags|=2,u.memoizedState=null,n}function nc(n,u,l,h,m,p,D){if(l)return u.flags&256?(u.flags&=-257,h=hs(Error(i(422))),P5(n,u,D,h)):u.memoizedState!==null?(u.child=n.child,u.flags|=128,null):(p=h.fallback,m=u.mode,h=Q5({mode:"visible",children:h.children},m,0,null),p=D2(p,m,D,null),p.flags|=2,h.return=u,p.return=u,h.sibling=p,u.child=h,(u.mode&1)!==0&&W2(u,n.child,null,D),u.child.memoizedState=Es(D),u.memoizedState=fs,p);if((u.mode&1)===0)return P5(n,u,D,null);if(m.data==="$!"){if(h=m.nextSibling&&m.nextSibling.dataset,h)var w=h.dgst;return h=w,p=Error(i(419)),h=hs(p,h,void 0),P5(n,u,D,h)}if(w=(D&n.childLanes)!==0,te||w){if(h=S1,h!==null){switch(D&-D){case 4:m=2;break;case 16:m=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:m=32;break;case 536870912:m=268435456;break;default:m=0}m=(m&(h.suspendedLanes|D))!==0?0:m,m!==0&&m!==p.retryLane&&(p.retryLane=m,Ft(n,m),Re(h,n,m,-1))}return ks(),h=hs(Error(i(421))),P5(n,u,D,h)}return m.data==="$?"?(u.flags|=128,u.child=n.child,u=fc.bind(null,n),m._reactRetry=u,null):(n=p.treeContext,de=Ot(m.nextSibling),he=u,r1=!0,Oe=null,n!==null&&(De[Ae++]=ft,De[Ae++]=Et,De[Ae++]=g2,ft=n.id,Et=n.overflow,g2=u),u=Fs(u,h.children),u.flags|=4096,u)}function x4(n,u,l){n.lanes|=u;var h=n.alternate;h!==null&&(h.lanes|=u),Ju(n.return,u,l)}function ps(n,u,l,h,m){var p=n.memoizedState;p===null?n.memoizedState={isBackwards:u,rendering:null,renderingStartTime:0,last:h,tail:l,tailMode:m}:(p.isBackwards=u,p.rendering=null,p.renderingStartTime=0,p.last=h,p.tail=l,p.tailMode=m)}function y4(n,u,l){var h=u.pendingProps,m=h.revealOrder,p=h.tail;if(J1(n,u,h.children,l),h=c1.current,(h&2)!==0)h=h&1|2,u.flags|=128;else{if(n!==null&&(n.flags&128)!==0)e:for(n=u.child;n!==null;){if(n.tag===13)n.memoizedState!==null&&x4(n,l,u);else if(n.tag===19)x4(n,l,u);else if(n.child!==null){n.child.return=n,n=n.child;continue}if(n===u)break e;for(;n.sibling===null;){if(n.return===null||n.return===u)break e;n=n.return}n.sibling.return=n.return,n=n.sibling}h&=1}if(t1(c1,h),(u.mode&1)===0)u.memoizedState=null;else switch(m){case"forwards":for(l=u.child,m=null;l!==null;)n=l.alternate,n!==null&&I5(n)===null&&(m=l),l=l.sibling;l=m,l===null?(m=u.child,u.child=null):(m=l.sibling,l.sibling=null),ps(u,!1,m,l,p);break;case"backwards":for(l=null,m=u.child,u.child=null;m!==null;){if(n=m.alternate,n!==null&&I5(n)===null){u.child=m;break}n=m.sibling,m.sibling=l,l=m,m=n}ps(u,!0,l,null,p);break;case"together":ps(u,!1,null,null,void 0);break;default:u.memoizedState=null}return u.child}function Y5(n,u){(u.mode&1)===0&&n!==null&&(n.alternate=null,u.alternate=null,u.flags|=2)}function Ct(n,u,l){if(n!==null&&(u.dependencies=n.dependencies),p2|=u.lanes,(l&u.childLanes)===0)return null;if(n!==null&&u.child!==n.child)throw Error(i(153));if(u.child!==null){for(n=u.child,l=Jt(n,n.pendingProps),u.child=l,l.return=u;n.sibling!==null;)n=n.sibling,l=l.sibling=Jt(n,n.pendingProps),l.return=u;l.sibling=null}return u.child}function ic(n,u,l){switch(u.tag){case 3:F4(u),J2();break;case 5:T6(u);break;case 1:ee(u.type)&&y5(u);break;case 4:Qu(u,u.stateNode.containerInfo);break;case 10:var h=u.type._context,m=u.memoizedProps.value;t1(_5,h._currentValue),h._currentValue=m;break;case 13:if(h=u.memoizedState,h!==null)return h.dehydrated!==null?(t1(c1,c1.current&1),u.flags|=128,null):(l&u.child.childLanes)!==0?C4(n,u,l):(t1(c1,c1.current&1),n=Ct(n,u,l),n!==null?n.sibling:null);t1(c1,c1.current&1);break;case 19:if(h=(l&u.childLanes)!==0,(n.flags&128)!==0){if(h)return y4(n,u,l);u.flags|=128}if(m=u.memoizedState,m!==null&&(m.rendering=null,m.tail=null,m.lastEffect=null),t1(c1,c1.current),h)break;return null;case 22:case 23:return u.lanes=0,m4(n,u,l)}return Ct(n,u,l)}var D4,Cs,A4,B4;D4=function(n,u){for(var l=u.child;l!==null;){if(l.tag===5||l.tag===6)n.appendChild(l.stateNode);else if(l.tag!==4&&l.child!==null){l.child.return=l,l=l.child;continue}if(l===u)break;for(;l.sibling===null;){if(l.return===null||l.return===u)return;l=l.return}l.sibling.return=l.return,l=l.sibling}},Cs=function(){},A4=function(n,u,l,h){var m=n.memoizedProps;if(m!==h){n=u.stateNode,E2(Ke.current);var p=null;switch(l){case"input":m=q0(n,m),h=q0(n,h),p=[];break;case"select":m=G({},m,{value:void 0}),h=G({},h,{value:void 0}),p=[];break;case"textarea":m=Je(n,m),h=Je(n,h),p=[];break;default:typeof m.onClick!="function"&&typeof h.onClick=="function"&&(n.onclick=p5)}X1(l,h);var D;l=null;for(U in m)if(!h.hasOwnProperty(U)&&m.hasOwnProperty(U)&&m[U]!=null)if(U==="style"){var w=m[U];for(D in w)w.hasOwnProperty(D)&&(l||(l={}),l[D]="")}else U!=="dangerouslySetInnerHTML"&&U!=="children"&&U!=="suppressContentEditableWarning"&&U!=="suppressHydrationWarning"&&U!=="autoFocus"&&(r.hasOwnProperty(U)?p||(p=[]):(p=p||[]).push(U,null));for(U in h){var I=h[U];if(w=m!=null?m[U]:void 0,h.hasOwnProperty(U)&&I!==w&&(I!=null||w!=null))if(U==="style")if(w){for(D in w)!w.hasOwnProperty(D)||I&&I.hasOwnProperty(D)||(l||(l={}),l[D]="");for(D in I)I.hasOwnProperty(D)&&w[D]!==I[D]&&(l||(l={}),l[D]=I[D])}else l||(p||(p=[]),p.push(U,l)),l=I;else U==="dangerouslySetInnerHTML"?(I=I?I.__html:void 0,w=w?w.__html:void 0,I!=null&&w!==I&&(p=p||[]).push(U,I)):U==="children"?typeof I!="string"&&typeof I!="number"||(p=p||[]).push(U,""+I):U!=="suppressContentEditableWarning"&&U!=="suppressHydrationWarning"&&(r.hasOwnProperty(U)?(I!=null&&U==="onScroll"&&i1("scroll",n),p||w===I||(p=[])):(p=p||[]).push(U,I))}l&&(p=p||[]).push("style",l);var U=p;(u.updateQueue=U)&&(u.flags|=4)}},B4=function(n,u,l,h){l!==h&&(u.flags|=4)};function hi(n,u){if(!r1)switch(n.tailMode){case"hidden":u=n.tail;for(var l=null;u!==null;)u.alternate!==null&&(l=u),u=u.sibling;l===null?n.tail=null:l.sibling=null;break;case"collapsed":l=n.tail;for(var h=null;l!==null;)l.alternate!==null&&(h=l),l=l.sibling;h===null?u||n.tail===null?n.tail=null:n.tail.sibling=null:h.sibling=null}}function R1(n){var u=n.alternate!==null&&n.alternate.child===n.child,l=0,h=0;if(u)for(var m=n.child;m!==null;)l|=m.lanes|m.childLanes,h|=m.subtreeFlags&14680064,h|=m.flags&14680064,m.return=n,m=m.sibling;else for(m=n.child;m!==null;)l|=m.lanes|m.childLanes,h|=m.subtreeFlags,h|=m.flags,m.return=n,m=m.sibling;return n.subtreeFlags|=h,n.childLanes=l,u}function uc(n,u,l){var h=u.pendingProps;switch(Ru(u),u.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return R1(u),null;case 1:return ee(u.type)&&x5(),R1(u),null;case 3:return h=u.stateNode,K2(),u1(V1),u1(Y1),es(),h.pendingContext&&(h.context=h.pendingContext,h.pendingContext=null),(n===null||n.child===null)&&(j5(u)?u.flags|=4:n===null||n.memoizedState.isDehydrated&&(u.flags&256)===0||(u.flags|=1024,Oe!==null&&(Ns(Oe),Oe=null))),Cs(n,u),R1(u),null;case 5:Ku(u);var m=E2(ri.current);if(l=u.type,n!==null&&u.stateNode!=null)A4(n,u,l,h,m),n.ref!==u.ref&&(u.flags|=512,u.flags|=2097152);else{if(!h){if(u.stateNode===null)throw Error(i(166));return R1(u),null}if(n=E2(Ke.current),j5(u)){h=u.stateNode,l=u.type;var p=u.memoizedProps;switch(h[Qe]=u,h[ti]=p,n=(u.mode&1)!==0,l){case"dialog":i1("cancel",h),i1("close",h);break;case"iframe":case"object":case"embed":i1("load",h);break;case"video":case"audio":for(m=0;m<Kn.length;m++)i1(Kn[m],h);break;case"source":i1("error",h);break;case"img":case"image":case"link":i1("error",h),i1("load",h);break;case"details":i1("toggle",h);break;case"input":J0(h,p),i1("invalid",h);break;case"select":h._wrapperState={wasMultiple:!!p.multiple},i1("invalid",h);break;case"textarea":ct(h,p),i1("invalid",h)}X1(l,p),m=null;for(var D in p)if(p.hasOwnProperty(D)){var w=p[D];D==="children"?typeof w=="string"?h.textContent!==w&&(p.suppressHydrationWarning!==!0&&F5(h.textContent,w,n),m=["children",w]):typeof w=="number"&&h.textContent!==""+w&&(p.suppressHydrationWarning!==!0&&F5(h.textContent,w,n),m=["children",""+w]):r.hasOwnProperty(D)&&w!=null&&D==="onScroll"&&i1("scroll",h)}switch(l){case"input":X0(h),C1(h,p,!0);break;case"textarea":X0(h),r2(h);break;case"select":case"option":break;default:typeof p.onClick=="function"&&(h.onclick=p5)}h=m,u.updateQueue=h,h!==null&&(u.flags|=4)}else{D=m.nodeType===9?m:m.ownerDocument,n==="http://www.w3.org/1999/xhtml"&&(n=pe(l)),n==="http://www.w3.org/1999/xhtml"?l==="script"?(n=D.createElement("div"),n.innerHTML="<script><\/script>",n=n.removeChild(n.firstChild)):typeof h.is=="string"?n=D.createElement(l,{is:h.is}):(n=D.createElement(l),l==="select"&&(D=n,h.multiple?D.multiple=!0:h.size&&(D.size=h.size))):n=D.createElementNS(n,l),n[Qe]=u,n[ti]=h,D4(n,u,!1,!1),u.stateNode=n;e:{switch(D=x1(l,h),l){case"dialog":i1("cancel",n),i1("close",n),m=h;break;case"iframe":case"object":case"embed":i1("load",n),m=h;break;case"video":case"audio":for(m=0;m<Kn.length;m++)i1(Kn[m],n);m=h;break;case"source":i1("error",n),m=h;break;case"img":case"image":case"link":i1("error",n),i1("load",n),m=h;break;case"details":i1("toggle",n),m=h;break;case"input":J0(n,h),m=q0(n,h),i1("invalid",n);break;case"option":m=h;break;case"select":n._wrapperState={wasMultiple:!!h.multiple},m=G({},h,{value:void 0}),i1("invalid",n);break;case"textarea":ct(n,h),m=Je(n,h),i1("invalid",n);break;default:m=h}X1(l,m),w=m;for(p in w)if(w.hasOwnProperty(p)){var I=w[p];p==="style"?Ce(n,I):p==="dangerouslySetInnerHTML"?(I=I?I.__html:void 0,I!=null&&Tn(n,I)):p==="children"?typeof I=="string"?(l!=="textarea"||I!=="")&&D1(n,I):typeof I=="number"&&D1(n,""+I):p!=="suppressContentEditableWarning"&&p!=="suppressHydrationWarning"&&p!=="autoFocus"&&(r.hasOwnProperty(p)?I!=null&&p==="onScroll"&&i1("scroll",n):I!=null&&Y(n,p,I,D))}switch(l){case"input":X0(n),C1(n,h,!1);break;case"textarea":X0(n),r2(n);break;case"option":h.value!=null&&n.setAttribute("value",""+M0(h.value));break;case"select":n.multiple=!!h.multiple,p=h.value,p!=null?q1(n,!!h.multiple,p,!1):h.defaultValue!=null&&q1(n,!!h.multiple,h.defaultValue,!0);break;default:typeof m.onClick=="function"&&(n.onclick=p5)}switch(l){case"button":case"input":case"select":case"textarea":h=!!h.autoFocus;break e;case"img":h=!0;break e;default:h=!1}}h&&(u.flags|=4)}u.ref!==null&&(u.flags|=512,u.flags|=2097152)}return R1(u),null;case 6:if(n&&u.stateNode!=null)B4(n,u,n.memoizedProps,h);else{if(typeof h!="string"&&u.stateNode===null)throw Error(i(166));if(l=E2(ri.current),E2(Ke.current),j5(u)){if(h=u.stateNode,l=u.memoizedProps,h[Qe]=u,(p=h.nodeValue!==l)&&(n=he,n!==null))switch(n.tag){case 3:F5(h.nodeValue,l,(n.mode&1)!==0);break;case 5:n.memoizedProps.suppressHydrationWarning!==!0&&F5(h.nodeValue,l,(n.mode&1)!==0)}p&&(u.flags|=4)}else h=(l.nodeType===9?l:l.ownerDocument).createTextNode(h),h[Qe]=u,u.stateNode=h}return R1(u),null;case 13:if(u1(c1),h=u.memoizedState,n===null||n.memoizedState!==null&&n.memoizedState.dehydrated!==null){if(r1&&de!==null&&(u.mode&1)!==0&&(u.flags&128)===0)_6(),J2(),u.flags|=98560,p=!1;else if(p=j5(u),h!==null&&h.dehydrated!==null){if(n===null){if(!p)throw Error(i(318));if(p=u.memoizedState,p=p!==null?p.dehydrated:null,!p)throw Error(i(317));p[Qe]=u}else J2(),(u.flags&128)===0&&(u.memoizedState=null),u.flags|=4;R1(u),p=!1}else Oe!==null&&(Ns(Oe),Oe=null),p=!0;if(!p)return u.flags&65536?u:null}return(u.flags&128)!==0?(u.lanes=l,u):(h=h!==null,h!==(n!==null&&n.memoizedState!==null)&&h&&(u.child.flags|=8192,(u.mode&1)!==0&&(n===null||(c1.current&1)!==0?B1===0&&(B1=3):ks())),u.updateQueue!==null&&(u.flags|=4),R1(u),null);case 4:return K2(),Cs(n,u),n===null&&Vn(u.stateNode.containerInfo),R1(u),null;case 10:return Xu(u.type._context),R1(u),null;case 17:return ee(u.type)&&x5(),R1(u),null;case 19:if(u1(c1),p=u.memoizedState,p===null)return R1(u),null;if(h=(u.flags&128)!==0,D=p.rendering,D===null)if(h)hi(p,!1);else{if(B1!==0||n!==null&&(n.flags&128)!==0)for(n=u.child;n!==null;){if(D=I5(n),D!==null){for(u.flags|=128,hi(p,!1),h=D.updateQueue,h!==null&&(u.updateQueue=h,u.flags|=4),u.subtreeFlags=0,h=l,l=u.child;l!==null;)p=l,n=h,p.flags&=14680066,D=p.alternate,D===null?(p.childLanes=0,p.lanes=n,p.child=null,p.subtreeFlags=0,p.memoizedProps=null,p.memoizedState=null,p.updateQueue=null,p.dependencies=null,p.stateNode=null):(p.childLanes=D.childLanes,p.lanes=D.lanes,p.child=D.child,p.subtreeFlags=0,p.deletions=null,p.memoizedProps=D.memoizedProps,p.memoizedState=D.memoizedState,p.updateQueue=D.updateQueue,p.type=D.type,n=D.dependencies,p.dependencies=n===null?null:{lanes:n.lanes,firstContext:n.firstContext}),l=l.sibling;return t1(c1,c1.current&1|2),u.child}n=n.sibling}p.tail!==null&&F1()>nn&&(u.flags|=128,h=!0,hi(p,!1),u.lanes=4194304)}else{if(!h)if(n=I5(D),n!==null){if(u.flags|=128,h=!0,l=n.updateQueue,l!==null&&(u.updateQueue=l,u.flags|=4),hi(p,!0),p.tail===null&&p.tailMode==="hidden"&&!D.alternate&&!r1)return R1(u),null}else 2*F1()-p.renderingStartTime>nn&&l!==1073741824&&(u.flags|=128,h=!0,hi(p,!1),u.lanes=4194304);p.isBackwards?(D.sibling=u.child,u.child=D):(l=p.last,l!==null?l.sibling=D:u.child=D,p.last=D)}return p.tail!==null?(u=p.tail,p.rendering=u,p.tail=u.sibling,p.renderingStartTime=F1(),u.sibling=null,l=c1.current,t1(c1,h?l&1|2:l&1),u):(R1(u),null);case 22:case 23:return zs(),h=u.memoizedState!==null,n!==null&&n.memoizedState!==null!==h&&(u.flags|=8192),h&&(u.mode&1)!==0?(ge&1073741824)!==0&&(R1(u),u.subtreeFlags&6&&(u.flags|=8192)):R1(u),null;case 24:return null;case 25:return null}throw Error(i(156,u.tag))}function sc(n,u){switch(Ru(u),u.tag){case 1:return ee(u.type)&&x5(),n=u.flags,n&65536?(u.flags=n&-65537|128,u):null;case 3:return K2(),u1(V1),u1(Y1),es(),n=u.flags,(n&65536)!==0&&(n&128)===0?(u.flags=n&-65537|128,u):null;case 5:return Ku(u),null;case 13:if(u1(c1),n=u.memoizedState,n!==null&&n.dehydrated!==null){if(u.alternate===null)throw Error(i(340));J2()}return n=u.flags,n&65536?(u.flags=n&-65537|128,u):null;case 19:return u1(c1),null;case 4:return K2(),null;case 10:return Xu(u.type._context),null;case 22:case 23:return zs(),null;case 24:return null;default:return null}}var L5=!1,G1=!1,rc=typeof WeakSet=="function"?WeakSet:Set,p0=null;function en(n,u){var l=n.ref;if(l!==null)if(typeof l=="function")try{l(null)}catch(h){E1(n,u,h)}else l.current=null}function xs(n,u,l){try{l()}catch(h){E1(n,u,h)}}var j4=!1;function ac(n,u){if(zu=r5,n=i6(),Bu(n)){if("selectionStart"in n)var l={start:n.selectionStart,end:n.selectionEnd};else e:{l=(l=n.ownerDocument)&&l.defaultView||window;var h=l.getSelection&&l.getSelection();if(h&&h.rangeCount!==0){l=h.anchorNode;var m=h.anchorOffset,p=h.focusNode;h=h.focusOffset;try{l.nodeType,p.nodeType}catch{l=null;break e}var D=0,w=-1,I=-1,U=0,n0=0,s0=n,t0=null;t:for(;;){for(var f0;s0!==l||m!==0&&s0.nodeType!==3||(w=D+m),s0!==p||h!==0&&s0.nodeType!==3||(I=D+h),s0.nodeType===3&&(D+=s0.nodeValue.length),(f0=s0.firstChild)!==null;)t0=s0,s0=f0;for(;;){if(s0===n)break t;if(t0===l&&++U===m&&(w=D),t0===p&&++n0===h&&(I=D),(f0=s0.nextSibling)!==null)break;s0=t0,t0=s0.parentNode}s0=f0}l=w===-1||I===-1?null:{start:w,end:I}}else l=null}l=l||{start:0,end:0}}else l=null;for(ku={focusedElem:n,selectionRange:l},r5=!1,p0=u;p0!==null;)if(u=p0,n=u.child,(u.subtreeFlags&1028)!==0&&n!==null)n.return=u,p0=n;else for(;p0!==null;){u=p0;try{var C0=u.alternate;if((u.flags&1024)!==0)switch(u.tag){case 0:case 11:case 15:break;case 1:if(C0!==null){var x0=C0.memoizedProps,p1=C0.memoizedState,L=u.stateNode,k=L.getSnapshotBeforeUpdate(u.elementType===u.type?x0:Pe(u.type,x0),p1);L.__reactInternalSnapshotBeforeUpdate=k}break;case 3:var H=u.stateNode.containerInfo;H.nodeType===1?H.textContent="":H.nodeType===9&&H.documentElement&&H.removeChild(H.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(i(163))}}catch(o0){E1(u,u.return,o0)}if(n=u.sibling,n!==null){n.return=u.return,p0=n;break}p0=u.return}return C0=j4,j4=!1,C0}function di(n,u,l){var h=u.updateQueue;if(h=h!==null?h.lastEffect:null,h!==null){var m=h=h.next;do{if((m.tag&n)===n){var p=m.destroy;m.destroy=void 0,p!==void 0&&xs(u,l,p)}m=m.next}while(m!==h)}}function R5(n,u){if(u=u.updateQueue,u=u!==null?u.lastEffect:null,u!==null){var l=u=u.next;do{if((l.tag&n)===n){var h=l.create;l.destroy=h()}l=l.next}while(l!==u)}}function ys(n){var u=n.ref;if(u!==null){var l=n.stateNode;switch(n.tag){case 5:n=l;break;default:n=l}typeof u=="function"?u(n):u.current=n}}function v4(n){var u=n.alternate;u!==null&&(n.alternate=null,v4(u)),n.child=null,n.deletions=null,n.sibling=null,n.tag===5&&(u=n.stateNode,u!==null&&(delete u[Qe],delete u[ti],delete u[Ou],delete u[H9],delete u[Z9])),n.stateNode=null,n.return=null,n.dependencies=null,n.memoizedProps=null,n.memoizedState=null,n.pendingProps=null,n.stateNode=null,n.updateQueue=null}function _4(n){return n.tag===5||n.tag===3||n.tag===4}function S4(n){e:for(;;){for(;n.sibling===null;){if(n.return===null||_4(n.return))return null;n=n.return}for(n.sibling.return=n.return,n=n.sibling;n.tag!==5&&n.tag!==6&&n.tag!==18;){if(n.flags&2||n.child===null||n.tag===4)continue e;n.child.return=n,n=n.child}if(!(n.flags&2))return n.stateNode}}function Ds(n,u,l){var h=n.tag;if(h===5||h===6)n=n.stateNode,u?l.nodeType===8?l.parentNode.insertBefore(n,u):l.insertBefore(n,u):(l.nodeType===8?(u=l.parentNode,u.insertBefore(n,l)):(u=l,u.appendChild(n)),l=l._reactRootContainer,l!=null||u.onclick!==null||(u.onclick=p5));else if(h!==4&&(n=n.child,n!==null))for(Ds(n,u,l),n=n.sibling;n!==null;)Ds(n,u,l),n=n.sibling}function As(n,u,l){var h=n.tag;if(h===5||h===6)n=n.stateNode,u?l.insertBefore(n,u):l.appendChild(n);else if(h!==4&&(n=n.child,n!==null))for(As(n,u,l),n=n.sibling;n!==null;)As(n,u,l),n=n.sibling}var O1=null,Ye=!1;function Ht(n,u,l){for(l=l.child;l!==null;)w4(n,u,l),l=l.sibling}function w4(n,u,l){if($e&&typeof $e.onCommitFiberUnmount=="function")try{$e.onCommitFiberUnmount(e5,l)}catch{}switch(l.tag){case 5:G1||en(l,u);case 6:var h=O1,m=Ye;O1=null,Ht(n,u,l),O1=h,Ye=m,O1!==null&&(Ye?(n=O1,l=l.stateNode,n.nodeType===8?n.parentNode.removeChild(l):n.removeChild(l)):O1.removeChild(l.stateNode));break;case 18:O1!==null&&(Ye?(n=O1,l=l.stateNode,n.nodeType===8?bu(n.parentNode,l):n.nodeType===1&&bu(n,l),Zn(n)):bu(O1,l.stateNode));break;case 4:h=O1,m=Ye,O1=l.stateNode.containerInfo,Ye=!0,Ht(n,u,l),O1=h,Ye=m;break;case 0:case 11:case 14:case 15:if(!G1&&(h=l.updateQueue,h!==null&&(h=h.lastEffect,h!==null))){m=h=h.next;do{var p=m,D=p.destroy;p=p.tag,D!==void 0&&((p&2)!==0||(p&4)!==0)&&xs(l,u,D),m=m.next}while(m!==h)}Ht(n,u,l);break;case 1:if(!G1&&(en(l,u),h=l.stateNode,typeof h.componentWillUnmount=="function"))try{h.props=l.memoizedProps,h.state=l.memoizedState,h.componentWillUnmount()}catch(w){E1(l,u,w)}Ht(n,u,l);break;case 21:Ht(n,u,l);break;case 22:l.mode&1?(G1=(h=G1)||l.memoizedState!==null,Ht(n,u,l),G1=h):Ht(n,u,l);break;default:Ht(n,u,l)}}function N4(n){var u=n.updateQueue;if(u!==null){n.updateQueue=null;var l=n.stateNode;l===null&&(l=n.stateNode=new rc),u.forEach(function(h){var m=Ec.bind(null,n,h);l.has(h)||(l.add(h),h.then(m,m))})}}function Le(n,u){var l=u.deletions;if(l!==null)for(var h=0;h<l.length;h++){var m=l[h];try{var p=n,D=u,w=D;e:for(;w!==null;){switch(w.tag){case 5:O1=w.stateNode,Ye=!1;break e;case 3:O1=w.stateNode.containerInfo,Ye=!0;break e;case 4:O1=w.stateNode.containerInfo,Ye=!0;break e}w=w.return}if(O1===null)throw Error(i(160));w4(p,D,m),O1=null,Ye=!1;var I=m.alternate;I!==null&&(I.return=null),m.return=null}catch(U){E1(m,u,U)}}if(u.subtreeFlags&12854)for(u=u.child;u!==null;)I4(u,n),u=u.sibling}function I4(n,u){var l=n.alternate,h=n.flags;switch(n.tag){case 0:case 11:case 14:case 15:if(Le(u,n),et(n),h&4){try{di(3,n,n.return),R5(3,n)}catch(x0){E1(n,n.return,x0)}try{di(5,n,n.return)}catch(x0){E1(n,n.return,x0)}}break;case 1:Le(u,n),et(n),h&512&&l!==null&&en(l,l.return);break;case 5:if(Le(u,n),et(n),h&512&&l!==null&&en(l,l.return),n.flags&32){var m=n.stateNode;try{D1(m,"")}catch(x0){E1(n,n.return,x0)}}if(h&4&&(m=n.stateNode,m!=null)){var p=n.memoizedProps,D=l!==null?l.memoizedProps:p,w=n.type,I=n.updateQueue;if(n.updateQueue=null,I!==null)try{w==="input"&&p.type==="radio"&&p.name!=null&&K0(m,p),x1(w,D);var U=x1(w,p);for(D=0;D<I.length;D+=2){var n0=I[D],s0=I[D+1];n0==="style"?Ce(m,s0):n0==="dangerouslySetInnerHTML"?Tn(m,s0):n0==="children"?D1(m,s0):Y(m,n0,s0,U)}switch(w){case"input":f1(m,p);break;case"textarea":s2(m,p);break;case"select":var t0=m._wrapperState.wasMultiple;m._wrapperState.wasMultiple=!!p.multiple;var f0=p.value;f0!=null?q1(m,!!p.multiple,f0,!1):t0!==!!p.multiple&&(p.defaultValue!=null?q1(m,!!p.multiple,p.defaultValue,!0):q1(m,!!p.multiple,p.multiple?[]:"",!1))}m[ti]=p}catch(x0){E1(n,n.return,x0)}}break;case 6:if(Le(u,n),et(n),h&4){if(n.stateNode===null)throw Error(i(162));m=n.stateNode,p=n.memoizedProps;try{m.nodeValue=p}catch(x0){E1(n,n.return,x0)}}break;case 3:if(Le(u,n),et(n),h&4&&l!==null&&l.memoizedState.isDehydrated)try{Zn(u.containerInfo)}catch(x0){E1(n,n.return,x0)}break;case 4:Le(u,n),et(n);break;case 13:Le(u,n),et(n),m=n.child,m.flags&8192&&(p=m.memoizedState!==null,m.stateNode.isHidden=p,!p||m.alternate!==null&&m.alternate.memoizedState!==null||(vs=F1())),h&4&&N4(n);break;case 22:if(n0=l!==null&&l.memoizedState!==null,n.mode&1?(G1=(U=G1)||n0,Le(u,n),G1=U):Le(u,n),et(n),h&8192){if(U=n.memoizedState!==null,(n.stateNode.isHidden=U)&&!n0&&(n.mode&1)!==0)for(p0=n,n0=n.child;n0!==null;){for(s0=p0=n0;p0!==null;){switch(t0=p0,f0=t0.child,t0.tag){case 0:case 11:case 14:case 15:di(4,t0,t0.return);break;case 1:en(t0,t0.return);var C0=t0.stateNode;if(typeof C0.componentWillUnmount=="function"){h=t0,l=t0.return;try{u=h,C0.props=u.memoizedProps,C0.state=u.memoizedState,C0.componentWillUnmount()}catch(x0){E1(h,l,x0)}}break;case 5:en(t0,t0.return);break;case 22:if(t0.memoizedState!==null){M4(s0);continue}}f0!==null?(f0.return=t0,p0=f0):M4(s0)}n0=n0.sibling}e:for(n0=null,s0=n;;){if(s0.tag===5){if(n0===null){n0=s0;try{m=s0.stateNode,U?(p=m.style,typeof p.setProperty=="function"?p.setProperty("display","none","important"):p.display="none"):(w=s0.stateNode,I=s0.memoizedProps.style,D=I!=null&&I.hasOwnProperty("display")?I.display:null,w.style.display=ht("display",D))}catch(x0){E1(n,n.return,x0)}}}else if(s0.tag===6){if(n0===null)try{s0.stateNode.nodeValue=U?"":s0.memoizedProps}catch(x0){E1(n,n.return,x0)}}else if((s0.tag!==22&&s0.tag!==23||s0.memoizedState===null||s0===n)&&s0.child!==null){s0.child.return=s0,s0=s0.child;continue}if(s0===n)break e;for(;s0.sibling===null;){if(s0.return===null||s0.return===n)break e;n0===s0&&(n0=null),s0=s0.return}n0===s0&&(n0=null),s0.sibling.return=s0.return,s0=s0.sibling}}break;case 19:Le(u,n),et(n),h&4&&N4(n);break;case 21:break;default:Le(u,n),et(n)}}function et(n){var u=n.flags;if(u&2){try{e:{for(var l=n.return;l!==null;){if(_4(l)){var h=l;break e}l=l.return}throw Error(i(160))}switch(h.tag){case 5:var m=h.stateNode;h.flags&32&&(D1(m,""),h.flags&=-33);var p=S4(n);As(n,p,m);break;case 3:case 4:var D=h.stateNode.containerInfo,w=S4(n);Ds(n,w,D);break;default:throw Error(i(161))}}catch(I){E1(n,n.return,I)}n.flags&=-3}u&4096&&(n.flags&=-4097)}function lc(n,u,l){p0=n,z4(n)}function z4(n,u,l){for(var h=(n.mode&1)!==0;p0!==null;){var m=p0,p=m.child;if(m.tag===22&&h){var D=m.memoizedState!==null||L5;if(!D){var w=m.alternate,I=w!==null&&w.memoizedState!==null||G1;w=L5;var U=G1;if(L5=D,(G1=I)&&!U)for(p0=m;p0!==null;)D=p0,I=D.child,D.tag===22&&D.memoizedState!==null?T4(m):I!==null?(I.return=D,p0=I):T4(m);for(;p!==null;)p0=p,z4(p),p=p.sibling;p0=m,L5=w,G1=U}k4(n)}else(m.subtreeFlags&8772)!==0&&p!==null?(p.return=m,p0=p):k4(n)}}function k4(n){for(;p0!==null;){var u=p0;if((u.flags&8772)!==0){var l=u.alternate;try{if((u.flags&8772)!==0)switch(u.tag){case 0:case 11:case 15:G1||R5(5,u);break;case 1:var h=u.stateNode;if(u.flags&4&&!G1)if(l===null)h.componentDidMount();else{var m=u.elementType===u.type?l.memoizedProps:Pe(u.type,l.memoizedProps);h.componentDidUpdate(m,l.memoizedState,h.__reactInternalSnapshotBeforeUpdate)}var p=u.updateQueue;p!==null&&M6(u,p,h);break;case 3:var D=u.updateQueue;if(D!==null){if(l=null,u.child!==null)switch(u.child.tag){case 5:l=u.child.stateNode;break;case 1:l=u.child.stateNode}M6(u,D,l)}break;case 5:var w=u.stateNode;if(l===null&&u.flags&4){l=w;var I=u.memoizedProps;switch(u.type){case"button":case"input":case"select":case"textarea":I.autoFocus&&l.focus();break;case"img":I.src&&(l.src=I.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(u.memoizedState===null){var U=u.alternate;if(U!==null){var n0=U.memoizedState;if(n0!==null){var s0=n0.dehydrated;s0!==null&&Zn(s0)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(i(163))}G1||u.flags&512&&ys(u)}catch(t0){E1(u,u.return,t0)}}if(u===n){p0=null;break}if(l=u.sibling,l!==null){l.return=u.return,p0=l;break}p0=u.return}}function M4(n){for(;p0!==null;){var u=p0;if(u===n){p0=null;break}var l=u.sibling;if(l!==null){l.return=u.return,p0=l;break}p0=u.return}}function T4(n){for(;p0!==null;){var u=p0;try{switch(u.tag){case 0:case 11:case 15:var l=u.return;try{R5(4,u)}catch(I){E1(u,l,I)}break;case 1:var h=u.stateNode;if(typeof h.componentDidMount=="function"){var m=u.return;try{h.componentDidMount()}catch(I){E1(u,m,I)}}var p=u.return;try{ys(u)}catch(I){E1(u,p,I)}break;case 5:var D=u.return;try{ys(u)}catch(I){E1(u,D,I)}}}catch(I){E1(u,u.return,I)}if(u===n){p0=null;break}var w=u.sibling;if(w!==null){w.return=u.return,p0=w;break}p0=u.return}}var oc=Math.ceil,G5=z.ReactCurrentDispatcher,Bs=z.ReactCurrentOwner,ve=z.ReactCurrentBatchConfig,G0=0,S1=null,y1=null,P1=0,ge=0,tn=Pt(0),B1=0,gi=null,p2=0,H5=0,js=0,mi=null,ne=null,vs=0,nn=1/0,xt=null,Z5=!1,_s=null,Zt=null,U5=!1,Ut=null,q5=0,fi=0,Ss=null,X5=-1,J5=0;function W1(){return(G0&6)!==0?F1():X5!==-1?X5:X5=F1()}function qt(n){return(n.mode&1)===0?1:(G0&2)!==0&&P1!==0?P1&-P1:q9.transition!==null?(J5===0&&(J5=Sa()),J5):(n=W0,n!==0||(n=window.event,n=n===void 0?16:Oa(n.type)),n)}function Re(n,u,l,h){if(50<fi)throw fi=0,Ss=null,Error(i(185));Yn(n,l,h),((G0&2)===0||n!==S1)&&(n===S1&&((G0&2)===0&&(H5|=l),B1===4&&Xt(n,P1)),ie(n,h),l===1&&G0===0&&(u.mode&1)===0&&(nn=F1()+500,D5&&Lt()))}function ie(n,u){var l=n.callbackNode;q8(n,u);var h=i5(n,n===S1?P1:0);if(h===0)l!==null&&ja(l),n.callbackNode=null,n.callbackPriority=0;else if(u=h&-h,n.callbackPriority!==u){if(l!=null&&ja(l),u===1)n.tag===0?U9(O4.bind(null,n)):D6(O4.bind(null,n)),R9(function(){(G0&6)===0&&Lt()}),l=null;else{switch(wa(h)){case 1:l=au;break;case 4:l=va;break;case 16:l=Vi;break;case 536870912:l=_a;break;default:l=Vi}l=U4(l,b4.bind(null,n))}n.callbackPriority=u,n.callbackNode=l}}function b4(n,u){if(X5=-1,J5=0,(G0&6)!==0)throw Error(i(327));var l=n.callbackNode;if(un()&&n.callbackNode!==l)return null;var h=i5(n,n===S1?P1:0);if(h===0)return null;if((h&30)!==0||(h&n.expiredLanes)!==0||u)u=W5(n,h);else{u=h;var m=G0;G0|=2;var p=Y4();(S1!==n||P1!==u)&&(xt=null,nn=F1()+500,x2(n,u));do try{dc();break}catch(w){P4(n,w)}while(!0);qu(),G5.current=p,G0=m,y1!==null?u=0:(S1=null,P1=0,u=B1)}if(u!==0){if(u===2&&(m=lu(n),m!==0&&(h=m,u=ws(n,m))),u===1)throw l=gi,x2(n,0),Xt(n,h),ie(n,F1()),l;if(u===6)Xt(n,h);else{if(m=n.current.alternate,(h&30)===0&&!cc(m)&&(u=W5(n,h),u===2&&(p=lu(n),p!==0&&(h=p,u=ws(n,p))),u===1))throw l=gi,x2(n,0),Xt(n,h),ie(n,F1()),l;switch(n.finishedWork=m,n.finishedLanes=h,u){case 0:case 1:throw Error(i(345));case 2:y2(n,ne,xt);break;case 3:if(Xt(n,h),(h&130023424)===h&&(u=vs+500-F1(),10<u)){if(i5(n,0)!==0)break;if(m=n.suspendedLanes,(m&h)!==h){W1(),n.pingedLanes|=n.suspendedLanes&m;break}n.timeoutHandle=Tu(y2.bind(null,n,ne,xt),u);break}y2(n,ne,xt);break;case 4:if(Xt(n,h),(h&4194240)===h)break;for(u=n.eventTimes,m=-1;0<h;){var D=31-Te(h);p=1<<D,D=u[D],D>m&&(m=D),h&=~p}if(h=m,h=F1()-h,h=(120>h?120:480>h?480:1080>h?1080:1920>h?1920:3e3>h?3e3:4320>h?4320:1960*oc(h/1960))-h,10<h){n.timeoutHandle=Tu(y2.bind(null,n,ne,xt),h);break}y2(n,ne,xt);break;case 5:y2(n,ne,xt);break;default:throw Error(i(329))}}}return ie(n,F1()),n.callbackNode===l?b4.bind(null,n):null}function ws(n,u){var l=mi;return n.current.memoizedState.isDehydrated&&(x2(n,u).flags|=256),n=W5(n,u),n!==2&&(u=ne,ne=l,u!==null&&Ns(u)),n}function Ns(n){ne===null?ne=n:ne.push.apply(ne,n)}function cc(n){for(var u=n;;){if(u.flags&16384){var l=u.updateQueue;if(l!==null&&(l=l.stores,l!==null))for(var h=0;h<l.length;h++){var m=l[h],p=m.getSnapshot;m=m.value;try{if(!be(p(),m))return!1}catch{return!1}}}if(l=u.child,u.subtreeFlags&16384&&l!==null)l.return=u,u=l;else{if(u===n)break;for(;u.sibling===null;){if(u.return===null||u.return===n)return!0;u=u.return}u.sibling.return=u.return,u=u.sibling}}return!0}function Xt(n,u){for(u&=~js,u&=~H5,n.suspendedLanes|=u,n.pingedLanes&=~u,n=n.expirationTimes;0<u;){var l=31-Te(u),h=1<<l;n[l]=-1,u&=~h}}function O4(n){if((G0&6)!==0)throw Error(i(327));un();var u=i5(n,0);if((u&1)===0)return ie(n,F1()),null;var l=W5(n,u);if(n.tag!==0&&l===2){var h=lu(n);h!==0&&(u=h,l=ws(n,h))}if(l===1)throw l=gi,x2(n,0),Xt(n,u),ie(n,F1()),l;if(l===6)throw Error(i(345));return n.finishedWork=n.current.alternate,n.finishedLanes=u,y2(n,ne,xt),ie(n,F1()),null}function Is(n,u){var l=G0;G0|=1;try{return n(u)}finally{G0=l,G0===0&&(nn=F1()+500,D5&&Lt())}}function C2(n){Ut!==null&&Ut.tag===0&&(G0&6)===0&&un();var u=G0;G0|=1;var l=ve.transition,h=W0;try{if(ve.transition=null,W0=1,n)return n()}finally{W0=h,ve.transition=l,G0=u,(G0&6)===0&&Lt()}}function zs(){ge=tn.current,u1(tn)}function x2(n,u){n.finishedWork=null,n.finishedLanes=0;var l=n.timeoutHandle;if(l!==-1&&(n.timeoutHandle=-1,L9(l)),y1!==null)for(l=y1.return;l!==null;){var h=l;switch(Ru(h),h.tag){case 1:h=h.type.childContextTypes,h!=null&&x5();break;case 3:K2(),u1(V1),u1(Y1),es();break;case 5:Ku(h);break;case 4:K2();break;case 13:u1(c1);break;case 19:u1(c1);break;case 10:Xu(h.type._context);break;case 22:case 23:zs()}l=l.return}if(S1=n,y1=n=Jt(n.current,null),P1=ge=u,B1=0,gi=null,js=H5=p2=0,ne=mi=null,f2!==null){for(u=0;u<f2.length;u++)if(l=f2[u],h=l.interleaved,h!==null){l.interleaved=null;var m=h.next,p=l.pending;if(p!==null){var D=p.next;p.next=m,h.next=D}l.pending=h}f2=null}return n}function P4(n,u){do{var l=y1;try{if(qu(),z5.current=b5,k5){for(var h=h1.memoizedState;h!==null;){var m=h.queue;m!==null&&(m.pending=null),h=h.next}k5=!1}if(F2=0,_1=A1=h1=null,ai=!1,li=0,Bs.current=null,l===null||l.return===null){B1=1,gi=u,y1=null;break}e:{var p=n,D=l.return,w=l,I=u;if(u=P1,w.flags|=32768,I!==null&&typeof I=="object"&&typeof I.then=="function"){var U=I,n0=w,s0=n0.tag;if((n0.mode&1)===0&&(s0===0||s0===11||s0===15)){var t0=n0.alternate;t0?(n0.updateQueue=t0.updateQueue,n0.memoizedState=t0.memoizedState,n0.lanes=t0.lanes):(n0.updateQueue=null,n0.memoizedState=null)}var f0=o4(D);if(f0!==null){f0.flags&=-257,c4(f0,D,w,p,u),f0.mode&1&&l4(p,U,u),u=f0,I=U;var C0=u.updateQueue;if(C0===null){var x0=new Set;x0.add(I),u.updateQueue=x0}else C0.add(I);break e}else{if((u&1)===0){l4(p,U,u),ks();break e}I=Error(i(426))}}else if(r1&&w.mode&1){var p1=o4(D);if(p1!==null){(p1.flags&65536)===0&&(p1.flags|=256),c4(p1,D,w,p,u),Zu(V2(I,w));break e}}p=I=V2(I,w),B1!==4&&(B1=2),mi===null?mi=[p]:mi.push(p),p=D;do{switch(p.tag){case 3:p.flags|=65536,u&=-u,p.lanes|=u;var L=r4(p,I,u);k6(p,L);break e;case 1:w=I;var k=p.type,H=p.stateNode;if((p.flags&128)===0&&(typeof k.getDerivedStateFromError=="function"||H!==null&&typeof H.componentDidCatch=="function"&&(Zt===null||!Zt.has(H)))){p.flags|=65536,u&=-u,p.lanes|=u;var o0=a4(p,w,u);k6(p,o0);break e}}p=p.return}while(p!==null)}R4(l)}catch(y0){u=y0,y1===l&&l!==null&&(y1=l=l.return);continue}break}while(!0)}function Y4(){var n=G5.current;return G5.current=b5,n===null?b5:n}function ks(){(B1===0||B1===3||B1===2)&&(B1=4),S1===null||(p2&268435455)===0&&(H5&268435455)===0||Xt(S1,P1)}function W5(n,u){var l=G0;G0|=2;var h=Y4();(S1!==n||P1!==u)&&(xt=null,x2(n,u));do try{hc();break}catch(m){P4(n,m)}while(!0);if(qu(),G0=l,G5.current=h,y1!==null)throw Error(i(261));return S1=null,P1=0,B1}function hc(){for(;y1!==null;)L4(y1)}function dc(){for(;y1!==null&&!O8();)L4(y1)}function L4(n){var u=Z4(n.alternate,n,ge);n.memoizedProps=n.pendingProps,u===null?R4(n):y1=u,Bs.current=null}function R4(n){var u=n;do{var l=u.alternate;if(n=u.return,(u.flags&32768)===0){if(l=uc(l,u,ge),l!==null){y1=l;return}}else{if(l=sc(l,u),l!==null){l.flags&=32767,y1=l;return}if(n!==null)n.flags|=32768,n.subtreeFlags=0,n.deletions=null;else{B1=6,y1=null;return}}if(u=u.sibling,u!==null){y1=u;return}y1=u=n}while(u!==null);B1===0&&(B1=5)}function y2(n,u,l){var h=W0,m=ve.transition;try{ve.transition=null,W0=1,gc(n,u,l,h)}finally{ve.transition=m,W0=h}return null}function gc(n,u,l,h){do un();while(Ut!==null);if((G0&6)!==0)throw Error(i(327));l=n.finishedWork;var m=n.finishedLanes;if(l===null)return null;if(n.finishedWork=null,n.finishedLanes=0,l===n.current)throw Error(i(177));n.callbackNode=null,n.callbackPriority=0;var p=l.lanes|l.childLanes;if(X8(n,p),n===S1&&(y1=S1=null,P1=0),(l.subtreeFlags&2064)===0&&(l.flags&2064)===0||U5||(U5=!0,U4(Vi,function(){return un(),null})),p=(l.flags&15990)!==0,(l.subtreeFlags&15990)!==0||p){p=ve.transition,ve.transition=null;var D=W0;W0=1;var w=G0;G0|=4,Bs.current=null,ac(n,l),I4(l,n),k9(ku),r5=!!zu,ku=zu=null,n.current=l,lc(l),P8(),G0=w,W0=D,ve.transition=p}else n.current=l;if(U5&&(U5=!1,Ut=n,q5=m),p=n.pendingLanes,p===0&&(Zt=null),R8(l.stateNode),ie(n,F1()),u!==null)for(h=n.onRecoverableError,l=0;l<u.length;l++)m=u[l],h(m.value,{componentStack:m.stack,digest:m.digest});if(Z5)throw Z5=!1,n=_s,_s=null,n;return(q5&1)!==0&&n.tag!==0&&un(),p=n.pendingLanes,(p&1)!==0?n===Ss?fi++:(fi=0,Ss=n):fi=0,Lt(),null}function un(){if(Ut!==null){var n=wa(q5),u=ve.transition,l=W0;try{if(ve.transition=null,W0=16>n?16:n,Ut===null)var h=!1;else{if(n=Ut,Ut=null,q5=0,(G0&6)!==0)throw Error(i(331));var m=G0;for(G0|=4,p0=n.current;p0!==null;){var p=p0,D=p.child;if((p0.flags&16)!==0){var w=p.deletions;if(w!==null){for(var I=0;I<w.length;I++){var U=w[I];for(p0=U;p0!==null;){var n0=p0;switch(n0.tag){case 0:case 11:case 15:di(8,n0,p)}var s0=n0.child;if(s0!==null)s0.return=n0,p0=s0;else for(;p0!==null;){n0=p0;var t0=n0.sibling,f0=n0.return;if(v4(n0),n0===U){p0=null;break}if(t0!==null){t0.return=f0,p0=t0;break}p0=f0}}}var C0=p.alternate;if(C0!==null){var x0=C0.child;if(x0!==null){C0.child=null;do{var p1=x0.sibling;x0.sibling=null,x0=p1}while(x0!==null)}}p0=p}}if((p.subtreeFlags&2064)!==0&&D!==null)D.return=p,p0=D;else e:for(;p0!==null;){if(p=p0,(p.flags&2048)!==0)switch(p.tag){case 0:case 11:case 15:di(9,p,p.return)}var L=p.sibling;if(L!==null){L.return=p.return,p0=L;break e}p0=p.return}}var k=n.current;for(p0=k;p0!==null;){D=p0;var H=D.child;if((D.subtreeFlags&2064)!==0&&H!==null)H.return=D,p0=H;else e:for(D=k;p0!==null;){if(w=p0,(w.flags&2048)!==0)try{switch(w.tag){case 0:case 11:case 15:R5(9,w)}}catch(y0){E1(w,w.return,y0)}if(w===D){p0=null;break e}var o0=w.sibling;if(o0!==null){o0.return=w.return,p0=o0;break e}p0=w.return}}if(G0=m,Lt(),$e&&typeof $e.onPostCommitFiberRoot=="function")try{$e.onPostCommitFiberRoot(e5,n)}catch{}h=!0}return h}finally{W0=l,ve.transition=u}}return!1}function G4(n,u,l){u=V2(l,u),u=r4(n,u,1),n=Gt(n,u,1),u=W1(),n!==null&&(Yn(n,1,u),ie(n,u))}function E1(n,u,l){if(n.tag===3)G4(n,n,l);else for(;u!==null;){if(u.tag===3){G4(u,n,l);break}else if(u.tag===1){var h=u.stateNode;if(typeof u.type.getDerivedStateFromError=="function"||typeof h.componentDidCatch=="function"&&(Zt===null||!Zt.has(h))){n=V2(l,n),n=a4(u,n,1),u=Gt(u,n,1),n=W1(),u!==null&&(Yn(u,1,n),ie(u,n));break}}u=u.return}}function mc(n,u,l){var h=n.pingCache;h!==null&&h.delete(u),u=W1(),n.pingedLanes|=n.suspendedLanes&l,S1===n&&(P1&l)===l&&(B1===4||B1===3&&(P1&130023424)===P1&&500>F1()-vs?x2(n,0):js|=l),ie(n,u)}function H4(n,u){u===0&&((n.mode&1)===0?u=1:(u=n5,n5<<=1,(n5&130023424)===0&&(n5=4194304)));var l=W1();n=Ft(n,u),n!==null&&(Yn(n,u,l),ie(n,l))}function fc(n){var u=n.memoizedState,l=0;u!==null&&(l=u.retryLane),H4(n,l)}function Ec(n,u){var l=0;switch(n.tag){case 13:var h=n.stateNode,m=n.memoizedState;m!==null&&(l=m.retryLane);break;case 19:h=n.stateNode;break;default:throw Error(i(314))}h!==null&&h.delete(u),H4(n,l)}var Z4;Z4=function(n,u,l){if(n!==null)if(n.memoizedProps!==u.pendingProps||V1.current)te=!0;else{if((n.lanes&l)===0&&(u.flags&128)===0)return te=!1,ic(n,u,l);te=(n.flags&131072)!==0}else te=!1,r1&&(u.flags&1048576)!==0&&A6(u,B5,u.index);switch(u.lanes=0,u.tag){case 2:var h=u.type;Y5(n,u),n=u.pendingProps;var m=U2(u,Y1.current);Q2(u,l),m=is(null,u,h,n,m,l);var p=us();return u.flags|=1,typeof m=="object"&&m!==null&&typeof m.render=="function"&&m.$$typeof===void 0?(u.tag=1,u.memoizedState=null,u.updateQueue=null,ee(h)?(p=!0,y5(u)):p=!1,u.memoizedState=m.state!==null&&m.state!==void 0?m.state:null,$u(u),m.updater=O5,u.stateNode=m,m._reactInternals=u,cs(u,h,n,l),u=ms(null,u,h,!0,p,l)):(u.tag=0,r1&&p&&Lu(u),J1(null,u,m,l),u=u.child),u;case 16:h=u.elementType;e:{switch(Y5(n,u),n=u.pendingProps,m=h._init,h=m(h._payload),u.type=h,m=u.tag=pc(h),n=Pe(h,n),m){case 0:u=gs(null,u,h,n,l);break e;case 1:u=E4(null,u,h,n,l);break e;case 11:u=h4(null,u,h,n,l);break e;case 14:u=d4(null,u,h,Pe(h.type,n),l);break e}throw Error(i(306,h,""))}return u;case 0:return h=u.type,m=u.pendingProps,m=u.elementType===h?m:Pe(h,m),gs(n,u,h,m,l);case 1:return h=u.type,m=u.pendingProps,m=u.elementType===h?m:Pe(h,m),E4(n,u,h,m,l);case 3:e:{if(F4(u),n===null)throw Error(i(387));h=u.pendingProps,p=u.memoizedState,m=p.element,z6(n,u),N5(u,h,null,l);var D=u.memoizedState;if(h=D.element,p.isDehydrated)if(p={element:h,isDehydrated:!1,cache:D.cache,pendingSuspenseBoundaries:D.pendingSuspenseBoundaries,transitions:D.transitions},u.updateQueue.baseState=p,u.memoizedState=p,u.flags&256){m=V2(Error(i(423)),u),u=p4(n,u,h,l,m);break e}else if(h!==m){m=V2(Error(i(424)),u),u=p4(n,u,h,l,m);break e}else for(de=Ot(u.stateNode.containerInfo.firstChild),he=u,r1=!0,Oe=null,l=N6(u,null,h,l),u.child=l;l;)l.flags=l.flags&-3|4096,l=l.sibling;else{if(J2(),h===m){u=Ct(n,u,l);break e}J1(n,u,h,l)}u=u.child}return u;case 5:return T6(u),n===null&&Hu(u),h=u.type,m=u.pendingProps,p=n!==null?n.memoizedProps:null,D=m.children,Mu(h,m)?D=null:p!==null&&Mu(h,p)&&(u.flags|=32),f4(n,u),J1(n,u,D,l),u.child;case 6:return n===null&&Hu(u),null;case 13:return C4(n,u,l);case 4:return Qu(u,u.stateNode.containerInfo),h=u.pendingProps,n===null?u.child=W2(u,null,h,l):J1(n,u,h,l),u.child;case 11:return h=u.type,m=u.pendingProps,m=u.elementType===h?m:Pe(h,m),h4(n,u,h,m,l);case 7:return J1(n,u,u.pendingProps,l),u.child;case 8:return J1(n,u,u.pendingProps.children,l),u.child;case 12:return J1(n,u,u.pendingProps.children,l),u.child;case 10:e:{if(h=u.type._context,m=u.pendingProps,p=u.memoizedProps,D=m.value,t1(_5,h._currentValue),h._currentValue=D,p!==null)if(be(p.value,D)){if(p.children===m.children&&!V1.current){u=Ct(n,u,l);break e}}else for(p=u.child,p!==null&&(p.return=u);p!==null;){var w=p.dependencies;if(w!==null){D=p.child;for(var I=w.firstContext;I!==null;){if(I.context===h){if(p.tag===1){I=pt(-1,l&-l),I.tag=2;var U=p.updateQueue;if(U!==null){U=U.shared;var n0=U.pending;n0===null?I.next=I:(I.next=n0.next,n0.next=I),U.pending=I}}p.lanes|=l,I=p.alternate,I!==null&&(I.lanes|=l),Ju(p.return,l,u),w.lanes|=l;break}I=I.next}}else if(p.tag===10)D=p.type===u.type?null:p.child;else if(p.tag===18){if(D=p.return,D===null)throw Error(i(341));D.lanes|=l,w=D.alternate,w!==null&&(w.lanes|=l),Ju(D,l,u),D=p.sibling}else D=p.child;if(D!==null)D.return=p;else for(D=p;D!==null;){if(D===u){D=null;break}if(p=D.sibling,p!==null){p.return=D.return,D=p;break}D=D.return}p=D}J1(n,u,m.children,l),u=u.child}return u;case 9:return m=u.type,h=u.pendingProps.children,Q2(u,l),m=Be(m),h=h(m),u.flags|=1,J1(n,u,h,l),u.child;case 14:return h=u.type,m=Pe(h,u.pendingProps),m=Pe(h.type,m),d4(n,u,h,m,l);case 15:return g4(n,u,u.type,u.pendingProps,l);case 17:return h=u.type,m=u.pendingProps,m=u.elementType===h?m:Pe(h,m),Y5(n,u),u.tag=1,ee(h)?(n=!0,y5(u)):n=!1,Q2(u,l),u4(u,h,m),cs(u,h,m,l),ms(null,u,h,!0,n,l);case 19:return y4(n,u,l);case 22:return m4(n,u,l)}throw Error(i(156,u.tag))};function U4(n,u){return Ba(n,u)}function Fc(n,u,l,h){this.tag=n,this.key=l,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=u,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=h,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function _e(n,u,l,h){return new Fc(n,u,l,h)}function Ms(n){return n=n.prototype,!(!n||!n.isReactComponent)}function pc(n){if(typeof n=="function")return Ms(n)?1:0;if(n!=null){if(n=n.$$typeof,n===c0)return 11;if(n===d0)return 14}return 2}function Jt(n,u){var l=n.alternate;return l===null?(l=_e(n.tag,u,n.key,n.mode),l.elementType=n.elementType,l.type=n.type,l.stateNode=n.stateNode,l.alternate=n,n.alternate=l):(l.pendingProps=u,l.type=n.type,l.flags=0,l.subtreeFlags=0,l.deletions=null),l.flags=n.flags&14680064,l.childLanes=n.childLanes,l.lanes=n.lanes,l.child=n.child,l.memoizedProps=n.memoizedProps,l.memoizedState=n.memoizedState,l.updateQueue=n.updateQueue,u=n.dependencies,l.dependencies=u===null?null:{lanes:u.lanes,firstContext:u.firstContext},l.sibling=n.sibling,l.index=n.index,l.ref=n.ref,l}function $5(n,u,l,h,m,p){var D=2;if(h=n,typeof n=="function")Ms(n)&&(D=1);else if(typeof n=="string")D=5;else e:switch(n){case X:return D2(l.children,m,p,u);case Z:D=8,m|=8;break;case $:return n=_e(12,l,u,m|2),n.elementType=$,n.lanes=p,n;case b:return n=_e(13,l,u,m),n.elementType=b,n.lanes=p,n;case u0:return n=_e(19,l,u,m),n.elementType=u0,n.lanes=p,n;case i0:return Q5(l,m,p,u);default:if(typeof n=="object"&&n!==null)switch(n.$$typeof){case e0:D=10;break e;case q:D=9;break e;case c0:D=11;break e;case d0:D=14;break e;case E0:D=16,h=null;break e}throw Error(i(130,n==null?n:typeof n,""))}return u=_e(D,l,u,m),u.elementType=n,u.type=h,u.lanes=p,u}function D2(n,u,l,h){return n=_e(7,n,h,u),n.lanes=l,n}function Q5(n,u,l,h){return n=_e(22,n,h,u),n.elementType=i0,n.lanes=l,n.stateNode={isHidden:!1},n}function Ts(n,u,l){return n=_e(6,n,null,u),n.lanes=l,n}function bs(n,u,l){return u=_e(4,n.children!==null?n.children:[],n.key,u),u.lanes=l,u.stateNode={containerInfo:n.containerInfo,pendingChildren:null,implementation:n.implementation},u}function Cc(n,u,l,h,m){this.tag=u,this.containerInfo=n,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=ou(0),this.expirationTimes=ou(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ou(0),this.identifierPrefix=h,this.onRecoverableError=m,this.mutableSourceEagerHydrationData=null}function Os(n,u,l,h,m,p,D,w,I){return n=new Cc(n,u,l,w,I),u===1?(u=1,p===!0&&(u|=8)):u=0,p=_e(3,null,null,u),n.current=p,p.stateNode=n,p.memoizedState={element:h,isDehydrated:l,cache:null,transitions:null,pendingSuspenseBoundaries:null},$u(p),n}function xc(n,u,l){var h=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:W,key:h==null?null:""+h,children:n,containerInfo:u,implementation:l}}function q4(n){if(!n)return Yt;n=n._reactInternals;e:{if(c2(n)!==n||n.tag!==1)throw Error(i(170));var u=n;do{switch(u.tag){case 3:u=u.stateNode.context;break e;case 1:if(ee(u.type)){u=u.stateNode.__reactInternalMemoizedMergedChildContext;break e}}u=u.return}while(u!==null);throw Error(i(171))}if(n.tag===1){var l=n.type;if(ee(l))return x6(n,l,u)}return u}function X4(n,u,l,h,m,p,D,w,I){return n=Os(l,h,!0,n,m,p,D,w,I),n.context=q4(null),l=n.current,h=W1(),m=qt(l),p=pt(h,m),p.callback=u??null,Gt(l,p,m),n.current.lanes=m,Yn(n,m,h),ie(n,h),n}function K5(n,u,l,h){var m=u.current,p=W1(),D=qt(m);return l=q4(l),u.context===null?u.context=l:u.pendingContext=l,u=pt(p,D),u.payload={element:n},h=h===void 0?null:h,h!==null&&(u.callback=h),n=Gt(m,u,D),n!==null&&(Re(n,m,D,p),w5(n,m,D)),D}function V5(n){if(n=n.current,!n.child)return null;switch(n.child.tag){case 5:return n.child.stateNode;default:return n.child.stateNode}}function J4(n,u){if(n=n.memoizedState,n!==null&&n.dehydrated!==null){var l=n.retryLane;n.retryLane=l!==0&&l<u?l:u}}function Ps(n,u){J4(n,u),(n=n.alternate)&&J4(n,u)}function yc(){return null}var W4=typeof reportError=="function"?reportError:function(n){console.error(n)};function Ys(n){this._internalRoot=n}e3.prototype.render=Ys.prototype.render=function(n){var u=this._internalRoot;if(u===null)throw Error(i(409));K5(n,u,null,null)},e3.prototype.unmount=Ys.prototype.unmount=function(){var n=this._internalRoot;if(n!==null){this._internalRoot=null;var u=n.containerInfo;C2(function(){K5(null,n,null,null)}),u[gt]=null}};function e3(n){this._internalRoot=n}e3.prototype.unstable_scheduleHydration=function(n){if(n){var u=za();n={blockedOn:null,target:n,priority:u};for(var l=0;l<Mt.length&&u!==0&&u<Mt[l].priority;l++);Mt.splice(l,0,n),l===0&&Ta(n)}};function Ls(n){return!(!n||n.nodeType!==1&&n.nodeType!==9&&n.nodeType!==11)}function t3(n){return!(!n||n.nodeType!==1&&n.nodeType!==9&&n.nodeType!==11&&(n.nodeType!==8||n.nodeValue!==" react-mount-point-unstable "))}function $4(){}function Dc(n,u,l,h,m){if(m){if(typeof h=="function"){var p=h;h=function(){var U=V5(D);p.call(U)}}var D=X4(u,h,n,0,null,!1,!1,"",$4);return n._reactRootContainer=D,n[gt]=D.current,Vn(n.nodeType===8?n.parentNode:n),C2(),D}for(;m=n.lastChild;)n.removeChild(m);if(typeof h=="function"){var w=h;h=function(){var U=V5(I);w.call(U)}}var I=Os(n,0,!1,null,null,!1,!1,"",$4);return n._reactRootContainer=I,n[gt]=I.current,Vn(n.nodeType===8?n.parentNode:n),C2(function(){K5(u,I,l,h)}),I}function n3(n,u,l,h,m){var p=l._reactRootContainer;if(p){var D=p;if(typeof m=="function"){var w=m;m=function(){var I=V5(D);w.call(I)}}K5(u,D,n,m)}else D=Dc(l,u,n,m,h);return V5(D)}Na=function(n){switch(n.tag){case 3:var u=n.stateNode;if(u.current.memoizedState.isDehydrated){var l=Pn(u.pendingLanes);l!==0&&(cu(u,l|1),ie(u,F1()),(G0&6)===0&&(nn=F1()+500,Lt()))}break;case 13:C2(function(){var h=Ft(n,1);if(h!==null){var m=W1();Re(h,n,1,m)}}),Ps(n,1)}},hu=function(n){if(n.tag===13){var u=Ft(n,134217728);if(u!==null){var l=W1();Re(u,n,134217728,l)}Ps(n,134217728)}},Ia=function(n){if(n.tag===13){var u=qt(n),l=Ft(n,u);if(l!==null){var h=W1();Re(l,n,u,h)}Ps(n,u)}},za=function(){return W0},ka=function(n,u){var l=W0;try{return W0=n,u()}finally{W0=l}},o2=function(n,u,l){switch(u){case"input":if(f1(n,l),u=l.name,l.type==="radio"&&u!=null){for(l=n;l.parentNode;)l=l.parentNode;for(l=l.querySelectorAll("input[name="+JSON.stringify(""+u)+'][type="radio"]'),u=0;u<l.length;u++){var h=l[u];if(h!==n&&h.form===n.form){var m=C5(h);if(!m)throw Error(i(90));z0(h),f1(h,m)}}}break;case"textarea":s2(n,l);break;case"select":u=l.value,u!=null&&q1(n,!!l.multiple,u,!1)}},D0=Is,b0=C2;var Ac={usingClientEntryPoint:!1,Events:[ni,H2,C5,ye,$i,Is]},Ei={findFiberByHostInstance:h2,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},Bc={bundleType:Ei.bundleType,version:Ei.version,rendererPackageName:Ei.rendererPackageName,rendererConfig:Ei.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:z.ReactCurrentDispatcher,findHostInstanceByFiber:function(n){return n=Da(n),n===null?null:n.stateNode},findFiberByHostInstance:Ei.findFiberByHostInstance||yc,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var i3=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!i3.isDisabled&&i3.supportsFiber)try{e5=i3.inject(Bc),$e=i3}catch{}}return ue.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Ac,ue.createPortal=function(n,u){var l=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!Ls(u))throw Error(i(200));return xc(n,u,null,l)},ue.createRoot=function(n,u){if(!Ls(n))throw Error(i(299));var l=!1,h="",m=W4;return u!=null&&(u.unstable_strictMode===!0&&(l=!0),u.identifierPrefix!==void 0&&(h=u.identifierPrefix),u.onRecoverableError!==void 0&&(m=u.onRecoverableError)),u=Os(n,1,!1,null,null,l,!1,h,m),n[gt]=u.current,Vn(n.nodeType===8?n.parentNode:n),new Ys(u)},ue.findDOMNode=function(n){if(n==null)return null;if(n.nodeType===1)return n;var u=n._reactInternals;if(u===void 0)throw typeof n.render=="function"?Error(i(188)):(n=Object.keys(n).join(","),Error(i(268,n)));return n=Da(u),n=n===null?null:n.stateNode,n},ue.flushSync=function(n){return C2(n)},ue.hydrate=function(n,u,l){if(!t3(u))throw Error(i(200));return n3(null,n,u,!0,l)},ue.hydrateRoot=function(n,u,l){if(!Ls(n))throw Error(i(405));var h=l!=null&&l.hydratedSources||null,m=!1,p="",D=W4;if(l!=null&&(l.unstable_strictMode===!0&&(m=!0),l.identifierPrefix!==void 0&&(p=l.identifierPrefix),l.onRecoverableError!==void 0&&(D=l.onRecoverableError)),u=X4(u,null,n,1,l??null,m,!1,p,D),n[gt]=u.current,Vn(n),h)for(n=0;n<h.length;n++)l=h[n],m=l._getVersion,m=m(l._source),u.mutableSourceEagerHydrationData==null?u.mutableSourceEagerHydrationData=[l,m]:u.mutableSourceEagerHydrationData.push(l,m);return new e3(u)},ue.render=function(n,u,l){if(!t3(u))throw Error(i(200));return n3(null,n,u,!1,l)},ue.unmountComponentAtNode=function(n){if(!t3(n))throw Error(i(40));return n._reactRootContainer?(C2(function(){n3(null,null,n,!1,function(){n._reactRootContainer=null,n[gt]=null})}),!0):!1},ue.unstable_batchedUpdates=Is,ue.unstable_renderSubtreeIntoContainer=function(n,u,l,h){if(!t3(l))throw Error(i(200));if(n==null||n._reactInternals===void 0)throw Error(i(38));return n3(n,u,l,!1,h)},ue.version="18.3.1-next-f1338f8080-20240426",ue}var s7;function Mc(){if(s7)return Hs.exports;s7=1;function t(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(e){console.error(e)}}return t(),Hs.exports=kc(),Hs.exports}var r7;function Tc(){if(r7)return u3;r7=1;var t=Mc();return u3.createRoot=t.createRoot,u3.hydrateRoot=t.hydrateRoot,u3}var bc=Tc();/**
|
|
41
|
+
* react-router v7.18.1
|
|
42
|
+
*
|
|
43
|
+
* Copyright (c) Remix Software Inc.
|
|
44
|
+
*
|
|
45
|
+
* This source code is licensed under the MIT license found in the
|
|
46
|
+
* LICENSE.md file in the root directory of this source tree.
|
|
47
|
+
*
|
|
48
|
+
* @license MIT
|
|
49
|
+
*/var kr=/^(?:[a-z][a-z0-9+.-]*:|[\\/]{2})/i,dl=/^[\\/]{2}/;function Oc(t,e){return e+t.replace(/\\/g,"/")}var a7="popstate";function l7(t){return typeof t=="object"&&t!=null&&"pathname"in t&&"search"in t&&"hash"in t&&"state"in t&&"key"in t}function Pc(t={}){function e(r,c){let{pathname:o="/",search:d="",hash:g=""}=T2(r.location.hash.substring(1));return!o.startsWith("/")&&!o.startsWith(".")&&(o="/"+o),rr("",{pathname:o,search:d,hash:g},c.state&&c.state.usr||null,c.state&&c.state.key||"default")}function i(r,c){let o=r.document.querySelector("base"),d="";if(o&&o.getAttribute("href")){let g=r.location.href,f=g.indexOf("#");d=f===-1?g:g.slice(0,f)}return d+"#"+(typeof c=="string"?c:Ni(c))}function s(r,c){qe(r.pathname.charAt(0)==="/",`relative pathnames are not supported in hash history.push(${JSON.stringify(c)})`)}return Lc(e,i,s,t)}function m1(t,e){if(t===!1||t===null||typeof t>"u")throw new Error(e)}function qe(t,e){if(!t){typeof console<"u"&&console.warn(e);try{throw new Error(e)}catch{}}}function Yc(){return Math.random().toString(36).substring(2,10)}function o7(t,e){return{usr:t.state,key:t.key,idx:e,masked:t.mask?{pathname:t.pathname,search:t.search,hash:t.hash}:void 0}}function rr(t,e,i=null,s,r){return{pathname:typeof t=="string"?t:t.pathname,search:"",hash:"",...typeof e=="string"?T2(e):e,state:i,key:e&&e.key||s||Yc(),mask:r}}function Ni({pathname:t="/",search:e="",hash:i=""}){return e&&e!=="?"&&(t+=e.charAt(0)==="?"?e:"?"+e),i&&i!=="#"&&(t+=i.charAt(0)==="#"?i:"#"+i),t}function T2(t){let e={};if(t){let i=t.indexOf("#");i>=0&&(e.hash=t.substring(i),t=t.substring(0,i));let s=t.indexOf("?");s>=0&&(e.search=t.substring(s),t=t.substring(0,s)),t&&(e.pathname=t)}return e}function Lc(t,e,i,s={}){let{window:r=document.defaultView,v5Compat:c=!1}=s,o=r.history,d="POP",g=null,f=E();f==null&&(f=0,o.replaceState({...o.state,idx:f},""));function E(){return(o.state||{idx:null}).idx}function F(){d="POP";let _=E(),S=_==null?null:_-f;f=_,g&&g({action:d,location:B.location,delta:S})}function x(_,S){d="PUSH";let M=l7(_)?_:rr(B.location,_,S);i&&i(M,_),f=E()+1;let Y=o7(M,f),z=B.createHref(M.mask||M);try{o.pushState(Y,"",z)}catch(T){if(T instanceof DOMException&&T.name==="DataCloneError")throw T;r.location.assign(z)}c&&g&&g({action:d,location:B.location,delta:1})}function A(_,S){d="REPLACE";let M=l7(_)?_:rr(B.location,_,S);i&&i(M,_),f=E();let Y=o7(M,f),z=B.createHref(M.mask||M);o.replaceState(Y,"",z),c&&g&&g({action:d,location:B.location,delta:0})}function y(_){return Rc(r,_)}let B={get action(){return d},get location(){return t(r,o)},listen(_){if(g)throw new Error("A history only accepts one active listener");return r.addEventListener(a7,F),g=_,()=>{r.removeEventListener(a7,F),g=null}},createHref(_){return e(r,_)},createURL:y,encodeLocation(_){let S=y(_);return{pathname:S.pathname,search:S.search,hash:S.hash}},push:x,replace:A,go(_){return o.go(_)}};return B}function Rc(t,e,i=!1){let s="http://localhost";t&&(s=t.location.origin!=="null"?t.location.origin:t.location.href),m1(s,"No window.location.(origin|href) available to create URL");let r=typeof e=="string"?e:Ni(e);return r=r.replace(/ $/,"%20"),!i&&dl.test(r)&&(r=s+r),new URL(r,s)}function gl(t,e,i="/"){return Gc(t,e,i,!1)}function Gc(t,e,i,s,r){let c=typeof e=="string"?T2(e):e,o=vt(c.pathname||"/",i);if(o==null)return null;let d=Hc(t),g=null,f=eh(o);for(let E=0;g==null&&E<d.length;++E)g=Vc(d[E],f,s);return g}function Hc(t){let e=ml(t);return Zc(e),e}function ml(t,e=[],i=[],s="",r=!1){let c=(o,d,g=r,f)=>{let E={relativePath:f===void 0?o.path||"":f,caseSensitive:o.caseSensitive===!0,childrenIndex:d,route:o};if(E.relativePath.startsWith("/")){if(!E.relativePath.startsWith(s)&&g)return;m1(E.relativePath.startsWith(s),`Absolute route path "${E.relativePath}" nested under path "${s}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),E.relativePath=E.relativePath.slice(s.length)}let F=Ue([s,E.relativePath]),x=i.concat(E);o.children&&o.children.length>0&&(m1(o.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${F}".`),ml(o.children,e,x,F,g)),!(o.path==null&&!o.index)&&e.push({path:F,score:Qc(F,o.index),routesMeta:x.map((A,y)=>{let[B,_]=Fl(A.relativePath,A.caseSensitive,y===x.length-1);return{...A,matcher:B,compiledParams:_}})})};return t.forEach((o,d)=>{var g;if(o.path===""||!((g=o.path)!=null&&g.includes("?")))c(o,d);else for(let f of fl(o.path))c(o,d,!0,f)}),e}function fl(t){let e=t.split("/");if(e.length===0)return[];let[i,...s]=e,r=i.endsWith("?"),c=i.replace(/\?$/,"");if(s.length===0)return r?[c,""]:[c];let o=fl(s.join("/")),d=[];return d.push(...o.map(g=>g===""?c:[c,g].join("/"))),r&&d.push(...o),d.map(g=>t.startsWith("/")&&g===""?"/":g)}function Zc(t){t.sort((e,i)=>e.score!==i.score?i.score-e.score:Kc(e.routesMeta.map(s=>s.childrenIndex),i.routesMeta.map(s=>s.childrenIndex)))}var Uc=/^:[\w-]+$/,qc=3,Xc=2,Jc=1,Wc=10,$c=-2,c7=t=>t==="*";function Qc(t,e){let i=t.split("/"),s=i.length;return i.some(c7)&&(s+=$c),e&&(s+=Xc),i.filter(r=>!c7(r)).reduce((r,c)=>r+(Uc.test(c)?qc:c===""?Jc:Wc),s)}function Kc(t,e){return t.length===e.length&&t.slice(0,-1).every((s,r)=>s===e[r])?t[t.length-1]-e[e.length-1]:0}function Vc(t,e,i=!1){let{routesMeta:s}=t,r={},c="/",o=[];for(let d=0;d<s.length;++d){let g=s[d],f=d===s.length-1,E=c==="/"?e:e.slice(c.length)||"/",F={path:g.relativePath,caseSensitive:g.caseSensitive,end:f},x=g.matcher&&g.compiledParams?El(F,E,g.matcher,g.compiledParams):j3(F,E),A=g.route;if(!x&&f&&i&&!s[s.length-1].route.index&&(x=j3({path:g.relativePath,caseSensitive:g.caseSensitive,end:!1},E)),!x)return null;Object.assign(r,x.params),o.push({params:r,pathname:Ue([c,x.pathname]),pathnameBase:ih(Ue([c,x.pathnameBase])),route:A}),x.pathnameBase!=="/"&&(c=Ue([c,x.pathnameBase]))}return o}function j3(t,e){typeof t=="string"&&(t={path:t,caseSensitive:!1,end:!0});let[i,s]=Fl(t.path,t.caseSensitive,t.end);return El(t,e,i,s)}function El(t,e,i,s){let r=e.match(i);if(!r)return null;let c=r[0],o=c.replace(/(.)\/+$/,"$1"),d=r.slice(1);return{params:s.reduce((f,{paramName:E,isOptional:F},x)=>{if(E==="*"){let y=d[x]||"";o=c.slice(0,c.length-y.length).replace(/(.)\/+$/,"$1")}const A=d[x];return F&&!A?f[E]=void 0:f[E]=(A||"").replace(/%2F/g,"/"),f},{}),pathname:c,pathnameBase:o,pattern:t}}function Fl(t,e=!1,i=!0){qe(t==="*"||!t.endsWith("*")||t.endsWith("/*"),`Route path "${t}" will be treated as if it were "${t.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${t.replace(/\*$/,"/*")}".`);let s=[],r="^"+t.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(o,d,g,f,E)=>{if(s.push({paramName:d,isOptional:g!=null}),g){let F=E.charAt(f+o.length);return F&&F!=="/"?"/([^\\/]*)":"(?:/([^\\/]*))?"}return"/([^\\/]+)"}).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return t.endsWith("*")?(s.push({paramName:"*"}),r+=t==="*"||t==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):i?r+="\\/*$":t!==""&&t!=="/"&&(r+="(?:(?=\\/|$))"),[new RegExp(r,e?void 0:"i"),s]}function eh(t){try{return t.split("/").map(e=>decodeURIComponent(e).replace(/\//g,"%2F")).join("/")}catch(e){return qe(!1,`The URL path "${t}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${e}).`),t}}function vt(t,e){if(e==="/")return t;if(!t.toLowerCase().startsWith(e.toLowerCase()))return null;let i=e.endsWith("/")?e.length-1:e.length,s=t.charAt(i);return s&&s!=="/"?null:t.slice(i)||"/"}function th(t,e="/"){let{pathname:i,search:s="",hash:r=""}=typeof t=="string"?T2(t):t,c;return i?(i=Cl(i),i.startsWith("/")?c=h7(i.substring(1),"/"):c=h7(i,e)):c=e,{pathname:c,search:uh(s),hash:sh(r)}}function h7(t,e){let i=v3(e).split("/");return t.split("/").forEach(r=>{r===".."?i.length>1&&i.pop():r!=="."&&i.push(r)}),i.length>1?i.join("/"):"/"}function qs(t,e,i,s){return`Cannot include a '${t}' character in a manually specified \`to.${e}\` field [${JSON.stringify(s)}]. Please separate it out to the \`to.${i}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function nh(t){return t.filter((e,i)=>i===0||e.route.path&&e.route.path.length>0)}function pl(t){let e=nh(t);return e.map((i,s)=>s===e.length-1?i.pathname:i.pathnameBase)}function Mr(t,e,i,s=!1){let r;typeof t=="string"?r=T2(t):(r={...t},m1(!r.pathname||!r.pathname.includes("?"),qs("?","pathname","search",r)),m1(!r.pathname||!r.pathname.includes("#"),qs("#","pathname","hash",r)),m1(!r.search||!r.search.includes("#"),qs("#","search","hash",r)));let c=t===""||r.pathname==="",o=c?"/":r.pathname,d;if(o==null)d=i;else{let F=e.length-1;if(!s&&o.startsWith("..")){let x=o.split("/");for(;x[0]==="..";)x.shift(),F-=1;r.pathname=x.join("/")}d=F>=0?e[F]:"/"}let g=th(r,d),f=o&&o!=="/"&&o.endsWith("/"),E=(c||o===".")&&i.endsWith("/");return!g.pathname.endsWith("/")&&(f||E)&&(g.pathname+="/"),g}var Cl=t=>t.replace(/[\\/]{2,}/g,"/"),Ue=t=>Cl(t.join("/")),v3=t=>t.replace(/\/+$/,""),ih=t=>v3(t).replace(/^\/*/,"/"),uh=t=>!t||t==="?"?"":t.startsWith("?")?t:"?"+t,sh=t=>!t||t==="#"?"":t.startsWith("#")?t:"#"+t,rh=class{constructor(t,e,i,s=!1){this.status=t,this.statusText=e||"",this.internal=s,i instanceof Error?(this.data=i.toString(),this.error=i):this.data=i}};function ah(t){return t!=null&&typeof t.status=="number"&&typeof t.statusText=="string"&&typeof t.internal=="boolean"&&"data"in t}function lh(t){let e=t.map(i=>i.route.path).filter(Boolean);return Ue(e)||"/"}var xl=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function yl(t,e){let i=t;if(typeof i!="string"||!kr.test(i))return{absoluteURL:void 0,isExternal:!1,to:i};let s=i,r=!1;if(xl)try{let c=new URL(window.location.href),o=dl.test(i)?new URL(Oc(i,c.protocol)):new URL(i),d=vt(o.pathname,e);o.origin===c.origin&&d!=null?i=d+o.search+o.hash:r=!0}catch{qe(!1,`<Link to="${i}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:s,isExternal:r,to:i}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var Dl=["POST","PUT","PATCH","DELETE"];new Set(Dl);var oh=["GET",...Dl];new Set(oh);var ch=["about:","blob:","chrome:","chrome-untrusted:","content:","data:","devtools:","file:","filesystem:","javascript:"];function hh(t){try{return ch.includes(new URL(t).protocol)}catch{return!1}}var wn=v.createContext(null);wn.displayName="DataRouter";var P3=v.createContext(null);P3.displayName="DataRouterState";var Al=v.createContext(!1);function dh(){return v.useContext(Al)}var Bl=v.createContext({isTransitioning:!1});Bl.displayName="ViewTransition";var gh=v.createContext(new Map);gh.displayName="Fetchers";var mh=v.createContext(null);mh.displayName="Await";var ze=v.createContext(null);ze.displayName="Navigation";var Yi=v.createContext(null);Yi.displayName="Location";var ot=v.createContext({outlet:null,matches:[],isDataRoute:!1});ot.displayName="Route";var Tr=v.createContext(null);Tr.displayName="RouteError";var jl="REACT_ROUTER_ERROR",fh="REDIRECT",Eh="ROUTE_ERROR_RESPONSE";function Fh(t){if(t.startsWith(`${jl}:${fh}:{`))try{let e=JSON.parse(t.slice(28));if(typeof e=="object"&&e&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.location=="string"&&typeof e.reloadDocument=="boolean"&&typeof e.replace=="boolean")return e}catch{}}function ph(t){if(t.startsWith(`${jl}:${Eh}:{`))try{let e=JSON.parse(t.slice(40));if(typeof e=="object"&&e&&typeof e.status=="number"&&typeof e.statusText=="string")return new rh(e.status,e.statusText,e.data)}catch{}}function Ch(t,{relative:e}={}){m1(Li(),"useHref() may be used only in the context of a <Router> component.");let{basename:i,navigator:s}=v.useContext(ze),{hash:r,pathname:c,search:o}=Ri(t,{relative:e}),d=c;return i!=="/"&&(d=c==="/"?i:Ue([i,c])),s.createHref({pathname:d,search:o,hash:r})}function Li(){return v.useContext(Yi)!=null}function Fe(){return m1(Li(),"useLocation() may be used only in the context of a <Router> component."),v.useContext(Yi).location}var vl="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function _l(t){v.useContext(ze).static||v.useLayoutEffect(t)}function br(){let{isDataRoute:t}=v.useContext(ot);return t?zh():xh()}function xh(){m1(Li(),"useNavigate() may be used only in the context of a <Router> component.");let t=v.useContext(wn),{basename:e,navigator:i}=v.useContext(ze),{matches:s}=v.useContext(ot),{pathname:r}=Fe(),c=JSON.stringify(pl(s)),o=v.useRef(!1);return _l(()=>{o.current=!0}),v.useCallback((g,f={})=>{if(qe(o.current,vl),!o.current)return;if(typeof g=="number"){i.go(g);return}let E=Mr(g,JSON.parse(c),r,f.relative==="path");t==null&&e!=="/"&&(E.pathname=E.pathname==="/"?e:Ue([e,E.pathname])),(f.replace?i.replace:i.push)(E,f.state,f)},[e,i,c,r,t])}v.createContext(null);function Y3(){let{matches:t}=v.useContext(ot),e=t[t.length-1];return(e==null?void 0:e.params)??{}}function Ri(t,{relative:e}={}){let{matches:i}=v.useContext(ot),{pathname:s}=Fe(),r=JSON.stringify(pl(i));return v.useMemo(()=>Mr(t,JSON.parse(r),s,e==="path"),[t,r,s,e])}function yh(t,e){return Sl(t,e)}function Sl(t,e,i){var _;m1(Li(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:s}=v.useContext(ze),{matches:r}=v.useContext(ot),c=r[r.length-1],o=c?c.params:{},d=c?c.pathname:"/",g=c?c.pathnameBase:"/",f=c&&c.route;{let S=f&&f.path||"";Nl(d,!f||S.endsWith("*")||S.endsWith("*?"),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${d}" (under <Route path="${S}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
|
|
50
|
+
|
|
51
|
+
Please change the parent <Route path="${S}"> to <Route path="${S==="/"?"*":`${S}/*`}">.`)}let E=Fe(),F;if(e){let S=typeof e=="string"?T2(e):e;m1(g==="/"||((_=S.pathname)==null?void 0:_.startsWith(g)),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${g}" but pathname "${S.pathname}" was given in the \`location\` prop.`),F=S}else F=E;let x=F.pathname||"/",A=x;if(g!=="/"){let S=g.replace(/^\//,"").split("/");A="/"+x.replace(/^\//,"").split("/").slice(S.length).join("/")}let y=i&&i.state.matches.length?i.state.matches.map(S=>Object.assign(S,{route:i.manifest[S.route.id]||S.route})):gl(t,{pathname:A});qe(f||y!=null,`No routes matched location "${F.pathname}${F.search}${F.hash}" `),qe(y==null||y[y.length-1].route.element!==void 0||y[y.length-1].route.Component!==void 0||y[y.length-1].route.lazy!==void 0,`Matched leaf route at location "${F.pathname}${F.search}${F.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let B=vh(y&&y.map(S=>Object.assign({},S,{params:Object.assign({},o,S.params),pathname:Ue([g,s.encodeLocation?s.encodeLocation(S.pathname.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:S.pathname]),pathnameBase:S.pathnameBase==="/"?g:Ue([g,s.encodeLocation?s.encodeLocation(S.pathnameBase.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:S.pathnameBase])})),r,i);return e&&B?v.createElement(Yi.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",mask:void 0,...F},navigationType:"POP"}},B):B}function Dh(){let t=Ih(),e=ah(t)?`${t.status} ${t.statusText}`:t instanceof Error?t.message:JSON.stringify(t),i=t instanceof Error?t.stack:null,s="rgba(200,200,200, 0.5)",r={padding:"0.5rem",backgroundColor:s},c={padding:"2px 4px",backgroundColor:s},o=null;return console.error("Error handled by React Router default ErrorBoundary:",t),o=v.createElement(v.Fragment,null,v.createElement("p",null,"💿 Hey developer 👋"),v.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",v.createElement("code",{style:c},"ErrorBoundary")," or"," ",v.createElement("code",{style:c},"errorElement")," prop on your route.")),v.createElement(v.Fragment,null,v.createElement("h2",null,"Unexpected Application Error!"),v.createElement("h3",{style:{fontStyle:"italic"}},e),i?v.createElement("pre",{style:r},i):null,o)}var Ah=v.createElement(Dh,null),wl=class extends v.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,e){return e.location!==t.location||e.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:e.error,location:e.location,revalidation:t.revalidation||e.revalidation}}componentDidCatch(t,e){this.props.onError?this.props.onError(t,e):console.error("React Router caught the following error during render",t)}render(){let t=this.state.error;if(this.context&&typeof t=="object"&&t&&"digest"in t&&typeof t.digest=="string"){const i=ph(t.digest);i&&(t=i)}let e=t!==void 0?v.createElement(ot.Provider,{value:this.props.routeContext},v.createElement(Tr.Provider,{value:t,children:this.props.component})):this.props.children;return this.context?v.createElement(Bh,{error:t},e):e}};wl.contextType=Al;var Xs=new WeakMap;function Bh({children:t,error:e}){let{basename:i}=v.useContext(ze);if(typeof e=="object"&&e&&"digest"in e&&typeof e.digest=="string"){let s=Fh(e.digest);if(s){let r=Xs.get(e);if(r)throw r;let c=yl(s.location,i),o=c.absoluteURL||c.to;if(hh(o))throw new Error("Invalid redirect location");if(xl&&!Xs.get(e))if(c.isExternal||s.reloadDocument)window.location.href=o;else{const d=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(c.to,{replace:s.replace}));throw Xs.set(e,d),d}return v.createElement("meta",{httpEquiv:"refresh",content:`0;url=${o}`})}}return t}function jh({routeContext:t,match:e,children:i}){let s=v.useContext(wn);return s&&s.static&&s.staticContext&&(e.route.errorElement||e.route.ErrorBoundary)&&(s.staticContext._deepestRenderedBoundaryId=e.route.id),v.createElement(ot.Provider,{value:t},i)}function vh(t,e=[],i){let s=i==null?void 0:i.state;if(t==null){if(!s)return null;if(s.errors)t=s.matches;else if(e.length===0&&!s.initialized&&s.matches.length>0)t=s.matches;else return null}let r=t,c=s==null?void 0:s.errors;if(c!=null){let E=r.findIndex(F=>F.route.id&&(c==null?void 0:c[F.route.id])!==void 0);m1(E>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(c).join(",")}`),r=r.slice(0,Math.min(r.length,E+1))}let o=!1,d=-1;if(i&&s){o=s.renderFallback;for(let E=0;E<r.length;E++){let F=r[E];if((F.route.HydrateFallback||F.route.hydrateFallbackElement)&&(d=E),F.route.id){let{loaderData:x,errors:A}=s,y=F.route.loader&&!x.hasOwnProperty(F.route.id)&&(!A||A[F.route.id]===void 0);if(F.route.lazy||y){i.isStatic&&(o=!0),d>=0?r=r.slice(0,d+1):r=[r[0]];break}}}}let g=i==null?void 0:i.onError,f=s&&g?(E,F)=>{var x,A;g(E,{location:s.location,params:((A=(x=s.matches)==null?void 0:x[0])==null?void 0:A.params)??{},pattern:lh(s.matches),errorInfo:F})}:void 0;return r.reduceRight((E,F,x)=>{let A,y=!1,B=null,_=null;s&&(A=c&&F.route.id?c[F.route.id]:void 0,B=F.route.errorElement||Ah,o&&(d<0&&x===0?(Nl("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),y=!0,_=null):d===x&&(y=!0,_=F.route.hydrateFallbackElement||null)));let S=e.concat(r.slice(0,x+1)),M=()=>{let Y;return A?Y=B:y?Y=_:F.route.Component?Y=v.createElement(F.route.Component,null):F.route.element?Y=F.route.element:Y=E,v.createElement(jh,{match:F,routeContext:{outlet:E,matches:S,isDataRoute:s!=null},children:Y})};return s&&(F.route.ErrorBoundary||F.route.errorElement||x===0)?v.createElement(wl,{location:s.location,revalidation:s.revalidation,component:B,error:A,children:M(),routeContext:{outlet:null,matches:S,isDataRoute:!0},onError:f}):M()},null)}function Or(t){return`${t} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function _h(t){let e=v.useContext(wn);return m1(e,Or(t)),e}function Sh(t){let e=v.useContext(P3);return m1(e,Or(t)),e}function wh(t){let e=v.useContext(ot);return m1(e,Or(t)),e}function Pr(t){let e=wh(t),i=e.matches[e.matches.length-1];return m1(i.route.id,`${t} can only be used on routes that contain a unique "id"`),i.route.id}function Nh(){return Pr("useRouteId")}function Ih(){var s;let t=v.useContext(Tr),e=Sh("useRouteError"),i=Pr("useRouteError");return t!==void 0?t:(s=e.errors)==null?void 0:s[i]}function zh(){let{router:t}=_h("useNavigate"),e=Pr("useNavigate"),i=v.useRef(!1);return _l(()=>{i.current=!0}),v.useCallback(async(r,c={})=>{qe(i.current,vl),i.current&&(typeof r=="number"?await t.navigate(r):await t.navigate(r,{fromRouteId:e,...c}))},[t,e])}var d7={};function Nl(t,e,i){!e&&!d7[t]&&(d7[t]=!0,qe(!1,i))}v.memo(kh);function kh({routes:t,manifest:e,future:i,state:s,isStatic:r,onError:c}){return Sl(t,void 0,{manifest:e,state:s,isStatic:r,onError:c})}function se(t){m1(!1,"A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.")}function Mh({basename:t="/",children:e=null,location:i,navigationType:s="POP",navigator:r,static:c=!1,useTransitions:o}){m1(!Li(),"You cannot render a <Router> inside another <Router>. You should never have more than one in your app.");let d=t.replace(/^\/*/,"/"),g=v.useMemo(()=>({basename:d,navigator:r,static:c,useTransitions:o,future:{}}),[d,r,c,o]);typeof i=="string"&&(i=T2(i));let{pathname:f="/",search:E="",hash:F="",state:x=null,key:A="default",mask:y}=i,B=v.useMemo(()=>{let _=vt(f,d);return _==null?null:{location:{pathname:_,search:E,hash:F,state:x,key:A,mask:y},navigationType:s}},[d,f,E,F,x,A,s,y]);return qe(B!=null,`<Router basename="${d}"> is not able to match the URL "${f}${E}${F}" because it does not start with the basename, so the <Router> won't render anything.`),B==null?null:v.createElement(ze.Provider,{value:g},v.createElement(Yi.Provider,{children:e,value:B}))}function Th({children:t,location:e}){return yh(ar(t),e)}function ar(t,e=[]){let i=[];return v.Children.forEach(t,(s,r)=>{if(!v.isValidElement(s))return;let c=[...e,r];if(s.type===v.Fragment){i.push.apply(i,ar(s.props.children,c));return}m1(s.type===se,`[${typeof s.type=="string"?s.type:s.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),m1(!s.props.index||!s.props.children,"An index route cannot have child routes.");let o={id:s.props.id||c.join("-"),caseSensitive:s.props.caseSensitive,element:s.props.element,Component:s.props.Component,index:s.props.index,path:s.props.path,middleware:s.props.middleware,loader:s.props.loader,action:s.props.action,hydrateFallbackElement:s.props.hydrateFallbackElement,HydrateFallback:s.props.HydrateFallback,errorElement:s.props.errorElement,ErrorBoundary:s.props.ErrorBoundary,hasErrorBoundary:s.props.hasErrorBoundary===!0||s.props.ErrorBoundary!=null||s.props.errorElement!=null,shouldRevalidate:s.props.shouldRevalidate,handle:s.props.handle,lazy:s.props.lazy};s.props.children&&(o.children=ar(s.props.children,c)),i.push(o)}),i}var x3="get",y3="application/x-www-form-urlencoded";function L3(t){return typeof HTMLElement<"u"&&t instanceof HTMLElement}function bh(t){return L3(t)&&t.tagName.toLowerCase()==="button"}function Oh(t){return L3(t)&&t.tagName.toLowerCase()==="form"}function Ph(t){return L3(t)&&t.tagName.toLowerCase()==="input"}function Yh(t){return!!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)}function Lh(t,e){return t.button===0&&(!e||e==="_self")&&!Yh(t)}var s3=null;function Rh(){if(s3===null)try{new FormData(document.createElement("form"),0),s3=!1}catch{s3=!0}return s3}var Gh=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Js(t){return t!=null&&!Gh.has(t)?(qe(!1,`"${t}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${y3}"`),null):t}function Hh(t,e){let i,s,r,c,o;if(Oh(t)){let d=t.getAttribute("action");s=d?vt(d,e):null,i=t.getAttribute("method")||x3,r=Js(t.getAttribute("enctype"))||y3,c=new FormData(t)}else if(bh(t)||Ph(t)&&(t.type==="submit"||t.type==="image")){let d=t.form;if(d==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let g=t.getAttribute("formaction")||d.getAttribute("action");if(s=g?vt(g,e):null,i=t.getAttribute("formmethod")||d.getAttribute("method")||x3,r=Js(t.getAttribute("formenctype"))||Js(d.getAttribute("enctype"))||y3,c=new FormData(d,t),!Rh()){let{name:f,type:E,value:F}=t;if(E==="image"){let x=f?`${f}.`:"";c.append(`${x}x`,"0"),c.append(`${x}y`,"0")}else f&&c.append(f,F)}}else{if(L3(t))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');i=x3,s=null,r=y3,o=t}return c&&r==="text/plain"&&(o=c,c=void 0),{action:s,method:i.toLowerCase(),encType:r,formData:c,body:o}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");function Yr(t,e){if(t===!1||t===null||typeof t>"u")throw new Error(e)}function Il(t,e,i,s){let r=typeof t=="string"?new URL(t,typeof window>"u"?"server://singlefetch/":window.location.origin):t;return i?r.pathname.endsWith("/")?r.pathname=`${r.pathname}_.${s}`:r.pathname=`${r.pathname}.${s}`:r.pathname==="/"?r.pathname=`_root.${s}`:e&&vt(r.pathname,e)==="/"?r.pathname=`${v3(e)}/_root.${s}`:r.pathname=`${v3(r.pathname)}.${s}`,r}async function Zh(t,e){if(t.id in e)return e[t.id];try{let i=await import(t.module);return e[t.id]=i,i}catch(i){return console.error(`Error loading route module \`${t.module}\`, reloading page...`),console.error(i),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function Uh(t){return t==null?!1:t.href==null?t.rel==="preload"&&typeof t.imageSrcSet=="string"&&typeof t.imageSizes=="string":typeof t.rel=="string"&&typeof t.href=="string"}async function qh(t,e,i){let s=await Promise.all(t.map(async r=>{let c=e.routes[r.route.id];if(c){let o=await Zh(c,i);return o.links?o.links():[]}return[]}));return $h(s.flat(1).filter(Uh).filter(r=>r.rel==="stylesheet"||r.rel==="preload").map(r=>r.rel==="stylesheet"?{...r,rel:"prefetch",as:"style"}:{...r,rel:"prefetch"}))}function g7(t,e,i,s,r,c){let o=(g,f)=>i[f]?g.route.id!==i[f].route.id:!0,d=(g,f)=>{var E;return i[f].pathname!==g.pathname||((E=i[f].route.path)==null?void 0:E.endsWith("*"))&&i[f].params["*"]!==g.params["*"]};return c==="assets"?e.filter((g,f)=>o(g,f)||d(g,f)):c==="data"?e.filter((g,f)=>{var F;let E=s.routes[g.route.id];if(!E||!E.hasLoader)return!1;if(o(g,f)||d(g,f))return!0;if(g.route.shouldRevalidate){let x=g.route.shouldRevalidate({currentUrl:new URL(r.pathname+r.search+r.hash,window.origin),currentParams:((F=i[0])==null?void 0:F.params)||{},nextUrl:new URL(t,window.origin),nextParams:g.params,defaultShouldRevalidate:!0});if(typeof x=="boolean")return x}return!0}):[]}function Xh(t,e,{includeHydrateFallback:i}={}){return Jh(t.map(s=>{let r=e.routes[s.route.id];if(!r)return[];let c=[r.module];return r.clientActionModule&&(c=c.concat(r.clientActionModule)),r.clientLoaderModule&&(c=c.concat(r.clientLoaderModule)),i&&r.hydrateFallbackModule&&(c=c.concat(r.hydrateFallbackModule)),r.imports&&(c=c.concat(r.imports)),c}).flat(1))}function Jh(t){return[...new Set(t)]}function Wh(t){let e={},i=Object.keys(t).sort();for(let s of i)e[s]=t[s];return e}function $h(t,e){let i=new Set;return new Set(e),t.reduce((s,r)=>{let c=JSON.stringify(Wh(r));return i.has(c)||(i.add(c),s.push({key:c,link:r})),s},[])}function Lr(){let t=v.useContext(wn);return Yr(t,"You must render this element inside a <DataRouterContext.Provider> element"),t}function Qh(){let t=v.useContext(P3);return Yr(t,"You must render this element inside a <DataRouterStateContext.Provider> element"),t}var Rr=v.createContext(void 0);Rr.displayName="FrameworkContext";function R3(){let t=v.useContext(Rr);return Yr(t,"You must render this element inside a <HydratedRouter> element"),t}function Kh(t,e){let i=v.useContext(Rr),[s,r]=v.useState(!1),[c,o]=v.useState(!1),{onFocus:d,onBlur:g,onMouseEnter:f,onMouseLeave:E,onTouchStart:F}=e,x=v.useRef(null);v.useEffect(()=>{if(t==="render"&&o(!0),t==="viewport"){let B=S=>{S.forEach(M=>{o(M.isIntersecting)})},_=new IntersectionObserver(B,{threshold:.5});return x.current&&_.observe(x.current),()=>{_.disconnect()}}},[t]),v.useEffect(()=>{if(s){let B=setTimeout(()=>{o(!0)},100);return()=>{clearTimeout(B)}}},[s]);let A=()=>{r(!0)},y=()=>{r(!1),o(!1)};return i?t!=="intent"?[c,x,{}]:[c,x,{onFocus:pi(d,A),onBlur:pi(g,y),onMouseEnter:pi(f,A),onMouseLeave:pi(E,y),onTouchStart:pi(F,A)}]:[!1,x,{}]}function pi(t,e){return i=>{t&&t(i),i.defaultPrevented||e(i)}}function Vh({page:t,...e}){let i=dh(),{nonce:s}=R3(),{router:r}=Lr(),c=v.useMemo(()=>gl(r.routes,t,r.basename),[r.routes,t,r.basename]);return c?(e.nonce==null&&s&&(e={...e,nonce:s}),i?v.createElement(td,{page:t,matches:c,...e}):v.createElement(nd,{page:t,matches:c,...e})):null}function ed(t){let{manifest:e,routeModules:i}=R3(),[s,r]=v.useState([]);return v.useEffect(()=>{let c=!1;return qh(t,e,i).then(o=>{c||r(o)}),()=>{c=!0}},[t,e,i]),s}function td({page:t,matches:e,...i}){let s=Fe(),{future:r}=R3(),{basename:c}=Lr(),o=v.useMemo(()=>{if(t===s.pathname+s.search+s.hash)return[];let d=Il(t,c,r.v8_trailingSlashAwareDataRequests,"rsc"),g=!1,f=[];for(let E of e)typeof E.route.shouldRevalidate=="function"?g=!0:f.push(E.route.id);return g&&f.length>0&&d.searchParams.set("_routes",f.join(",")),[d.pathname+d.search]},[c,r.v8_trailingSlashAwareDataRequests,t,s,e]);return v.createElement(v.Fragment,null,o.map(d=>v.createElement("link",{key:d,rel:"prefetch",as:"fetch",href:d,...i})))}function nd({page:t,matches:e,...i}){let s=Fe(),{future:r,manifest:c,routeModules:o}=R3(),{basename:d}=Lr(),{loaderData:g,matches:f}=Qh(),E=v.useMemo(()=>g7(t,e,f,c,s,"data"),[t,e,f,c,s]),F=v.useMemo(()=>g7(t,e,f,c,s,"assets"),[t,e,f,c,s]),x=v.useMemo(()=>{if(t===s.pathname+s.search+s.hash)return[];let B=new Set,_=!1;if(e.forEach(M=>{var z;let Y=c.routes[M.route.id];!Y||!Y.hasLoader||(!E.some(T=>T.route.id===M.route.id)&&M.route.id in g&&((z=o[M.route.id])!=null&&z.shouldRevalidate)||Y.hasClientLoader?_=!0:B.add(M.route.id))}),B.size===0)return[];let S=Il(t,d,r.v8_trailingSlashAwareDataRequests,"data");return _&&B.size>0&&S.searchParams.set("_routes",e.filter(M=>B.has(M.route.id)).map(M=>M.route.id).join(",")),[S.pathname+S.search]},[d,r.v8_trailingSlashAwareDataRequests,g,s,c,E,e,t,o]),A=v.useMemo(()=>Xh(F,c),[F,c]),y=ed(F);return v.createElement(v.Fragment,null,x.map(B=>v.createElement("link",{key:B,rel:"prefetch",as:"fetch",href:B,...i})),A.map(B=>v.createElement("link",{key:B,rel:"modulepreload",href:B,...i})),y.map(({key:B,link:_})=>v.createElement("link",{key:B,nonce:i.nonce,..._,crossOrigin:_.crossOrigin??i.crossOrigin})))}function id(...t){return e=>{t.forEach(i=>{typeof i=="function"?i(e):i!=null&&(i.current=e)})}}var ud=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";try{ud&&(window.__reactRouterVersion="7.18.1")}catch{}function sd({basename:t,children:e,useTransitions:i,window:s}){let r=v.useRef();r.current==null&&(r.current=Pc({window:s,v5Compat:!0}));let c=r.current,[o,d]=v.useState({action:c.action,location:c.location}),g=v.useCallback(f=>{i===!1?d(f):v.startTransition(()=>d(f))},[i]);return v.useLayoutEffect(()=>c.listen(g),[c,g]),v.createElement(Mh,{basename:t,children:e,location:o.location,navigationType:o.action,navigator:c,useTransitions:i})}var L0=v.forwardRef(function({onClick:e,discover:i="render",prefetch:s="none",relative:r,reloadDocument:c,replace:o,mask:d,state:g,target:f,to:E,preventScrollReset:F,viewTransition:x,defaultShouldRevalidate:A,...y},B){let{basename:_,navigator:S,useTransitions:M}=v.useContext(ze),Y=typeof E=="string"&&kr.test(E),z=yl(E,_);E=z.to;let T=Ch(E,{relative:r}),W=Fe(),X=null;if(d){let d0=Mr(d,[],W.mask?W.mask.pathname:"/",!0);_!=="/"&&(d0.pathname=d0.pathname==="/"?_:Ue([_,d0.pathname])),X=S.createHref(d0)}let[Z,$,e0]=Kh(s,y),q=od(E,{replace:o,mask:d,state:g,target:f,preventScrollReset:F,relative:r,viewTransition:x,defaultShouldRevalidate:A,useTransitions:M});function c0(d0){e&&e(d0),d0.defaultPrevented||q(d0)}let b=!(z.isExternal||c),u0=v.createElement("a",{...y,...e0,href:(b?X:void 0)||z.absoluteURL||T,onClick:b?c0:e,ref:id(B,$),target:f,"data-discover":!Y&&i==="render"?"true":void 0});return Z&&!Y?v.createElement(v.Fragment,null,u0,v.createElement(Vh,{page:T})):u0});L0.displayName="Link";var rd=v.forwardRef(function({"aria-current":e="page",caseSensitive:i=!1,className:s="",end:r=!1,style:c,to:o,viewTransition:d,children:g,...f},E){let F=Ri(o,{relative:f.relative}),x=Fe(),A=v.useContext(P3),{navigator:y,basename:B}=v.useContext(ze),_=A!=null&&md(F)&&d===!0,S=y.encodeLocation?y.encodeLocation(F).pathname:F.pathname,M=x.pathname,Y=A&&A.navigation&&A.navigation.location?A.navigation.location.pathname:null;i||(M=M.toLowerCase(),Y=Y?Y.toLowerCase():null,S=S.toLowerCase()),Y&&B&&(Y=vt(Y,B)||Y);const z=S!=="/"&&S.endsWith("/")?S.length-1:S.length;let T=M===S||!r&&M.startsWith(S)&&M.charAt(z)==="/",W=Y!=null&&(Y===S||!r&&Y.startsWith(S)&&Y.charAt(S.length)==="/"),X={isActive:T,isPending:W,isTransitioning:_},Z=T?e:void 0,$;typeof s=="function"?$=s(X):$=[s,T?"active":null,W?"pending":null,_?"transitioning":null].filter(Boolean).join(" ");let e0=typeof c=="function"?c(X):c;return v.createElement(L0,{...f,"aria-current":Z,className:$,ref:E,style:e0,to:o,viewTransition:d},typeof g=="function"?g(X):g)});rd.displayName="NavLink";var ad=v.forwardRef(({discover:t="render",fetcherKey:e,navigate:i,reloadDocument:s,replace:r,state:c,method:o=x3,action:d,onSubmit:g,relative:f,preventScrollReset:E,viewTransition:F,defaultShouldRevalidate:x,...A},y)=>{let{useTransitions:B}=v.useContext(ze),_=dd(),S=gd(d,{relative:f}),M=o.toLowerCase()==="get"?"get":"post",Y=typeof d=="string"&&kr.test(d),z=T=>{if(g&&g(T),T.defaultPrevented)return;T.preventDefault();let W=T.nativeEvent.submitter,X=(W==null?void 0:W.getAttribute("formmethod"))||o,Z=()=>_(W||T.currentTarget,{fetcherKey:e,method:X,navigate:i,replace:r,state:c,relative:f,preventScrollReset:E,viewTransition:F,defaultShouldRevalidate:x});B&&i!==!1?v.startTransition(()=>Z()):Z()};return v.createElement("form",{ref:y,method:M,action:S,onSubmit:s?g:z,...A,"data-discover":!Y&&t==="render"?"true":void 0})});ad.displayName="Form";function ld(t){return`${t} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function zl(t){let e=v.useContext(wn);return m1(e,ld(t)),e}function od(t,{target:e,replace:i,mask:s,state:r,preventScrollReset:c,relative:o,viewTransition:d,defaultShouldRevalidate:g,useTransitions:f}={}){let E=br(),F=Fe(),x=Ri(t,{relative:o});return v.useCallback(A=>{if(Lh(A,e)){A.preventDefault();let y=i!==void 0?i:Ni(F)===Ni(x),B=()=>E(t,{replace:y,mask:s,state:r,preventScrollReset:c,relative:o,viewTransition:d,defaultShouldRevalidate:g});f?v.startTransition(()=>B()):B()}},[F,E,x,i,s,r,e,t,c,o,d,g,f])}var cd=0,hd=()=>`__${String(++cd)}__`;function dd(){let{router:t}=zl("useSubmit"),{basename:e}=v.useContext(ze),i=Nh(),s=t.fetch,r=t.navigate;return v.useCallback(async(c,o={})=>{let{action:d,method:g,encType:f,formData:E,body:F}=Hh(c,e);if(o.navigate===!1){let x=o.fetcherKey||hd();await s(x,i,o.action||d,{defaultShouldRevalidate:o.defaultShouldRevalidate,preventScrollReset:o.preventScrollReset,formData:E,body:F,formMethod:o.method||g,formEncType:o.encType||f,flushSync:o.flushSync})}else await r(o.action||d,{defaultShouldRevalidate:o.defaultShouldRevalidate,preventScrollReset:o.preventScrollReset,formData:E,body:F,formMethod:o.method||g,formEncType:o.encType||f,replace:o.replace,state:o.state,fromRouteId:i,flushSync:o.flushSync,viewTransition:o.viewTransition})},[s,r,e,i])}function gd(t,{relative:e}={}){let{basename:i}=v.useContext(ze),s=v.useContext(ot);m1(s,"useFormAction must be used inside a RouteContext");let[r]=s.matches.slice(-1),c={...Ri(t||".",{relative:e})},o=Fe();if(t==null){c.search=o.search;let d=new URLSearchParams(c.search),g=d.getAll("index");if(g.some(E=>E==="")){d.delete("index"),g.filter(F=>F).forEach(F=>d.append("index",F));let E=d.toString();c.search=E?`?${E}`:""}}return(!t||t===".")&&r.route.index&&(c.search=c.search?c.search.replace(/^\?/,"?index&"):"?index"),i!=="/"&&(c.pathname=c.pathname==="/"?i:Ue([i,c.pathname])),Ni(c)}function md(t,{relative:e}={}){let i=v.useContext(Bl);m1(i!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:s}=zl("useViewTransitionState"),r=Ri(t,{relative:e});if(!i.isTransitioning)return!1;let c=vt(i.currentLocation.pathname,s)||i.currentLocation.pathname,o=vt(i.nextLocation.pathname,s)||i.nextLocation.pathname;return j3(r.pathname,o)!=null||j3(r.pathname,c)!=null}const m7=["甲","乙","丙","丁","戊","己","庚","辛","壬","癸","子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥","观","微","知","著","星","卦","易","遁","命","课","掌","镜","穹","历","参","悟"];function fd(t){let e=t>>>0;return()=>{e|=0,e=e+1831565813|0;let i=Math.imul(e^e>>>15,1|e);return i=i+Math.imul(i^i>>>7,61|i)^i,((i^i>>>14)>>>0)/4294967296}}function Ed({count:t=22,seed:e=20260818}){const i=v.useMemo(()=>{const s=fd(e);return Array.from({length:t},()=>({glyph:m7[Math.floor(s()*m7.length)],left:(s()*96).toFixed(1)+"%",top:(s()*88).toFixed(1)+"%",delay:(-s()*14).toFixed(2)+"s",duration:(7+s()*6).toFixed(2)+"s",drift:(-(s()*26-13)).toFixed(0)+"px",size:(.6+s()*.9).toFixed(2)+"rem"}))},[t,e]);return a.jsx("div",{className:"motes","aria-hidden":"true",children:i.map((s,r)=>a.jsx("span",{className:"mote",style:{left:s.left,top:s.top,animationDelay:s.delay,animationDuration:s.duration,"--mote-drift":s.drift,fontSize:s.size},children:s.glyph},r))})}function Fd(){return a.jsxs(a.Fragment,{children:[a.jsx("div",{id:"paper-grain","aria-hidden":"true"}),a.jsx(Ed,{}),a.jsx("span",{className:"hero-glow hero-glow--left","aria-hidden":"true"}),a.jsx("span",{className:"hero-glow hero-glow--right","aria-hidden":"true"}),a.jsxs("svg",{id:"mountains",viewBox:"0 0 1440 320",preserveAspectRatio:"xMidYMax slice","aria-hidden":"true",children:[a.jsxs("defs",{children:[a.jsxs("linearGradient",{id:"mg1",x1:"0",y1:"0",x2:"0",y2:"1",children:[a.jsx("stop",{offset:"0",stopColor:"#96A88F",stopOpacity:"0"}),a.jsx("stop",{offset:"1",stopColor:"#96A88F",stopOpacity:".30"})]}),a.jsxs("linearGradient",{id:"mg2",x1:"0",y1:"0",x2:"0",y2:"1",children:[a.jsx("stop",{offset:"0",stopColor:"#7C9792",stopOpacity:"0"}),a.jsx("stop",{offset:"1",stopColor:"#7C9792",stopOpacity:".22"})]})]}),a.jsx("path",{d:"M0,220 C160,140 300,120 420,168 C540,216 640,140 760,120 C880,100 960,150 1080,170 C1200,190 1320,150 1440,190 L1440,320 L0,320 Z",fill:"url(#mg1)"}),a.jsx("path",{d:"M0,260 C140,200 260,210 400,236 C560,264 680,210 820,200 C980,190 1100,240 1240,228 C1320,222 1380,240 1440,250 L1440,320 L0,320 Z",fill:"url(#mg2)"})]})]})}function pd(){return a.jsxs("div",{id:"ink-vein","aria-hidden":"true",children:[a.jsx("div",{className:"vein-lines"}),a.jsx("div",{className:"vein-poem",children:"静以观微 · 虚以纳象 · 诚以问占"}),a.jsx("div",{className:"vein-seal",children:"观微"})]})}const kl=v.createContext({confirm:async()=>!1});function Ml(){return v.useContext(kl).confirm}function Cd({children:t}){const[e,i]=v.useState({open:!1,title:"",message:"",confirmText:"确 定",danger:!1,resolve:null}),s=v.useCallback((o,d)=>new Promise(g=>{i({open:!0,title:(d==null?void 0:d.title)||"慎问",message:o,confirmText:(d==null?void 0:d.confirmText)||"确 定",danger:!!(d!=null&&d.danger),resolve:g})}),[]),r=o=>{var d;(d=e.resolve)==null||d.call(e,o),i(g=>({...g,open:!1,resolve:null}))},c=e.danger?{borderColor:"var(--cinnabar)",color:"var(--cinnabar)"}:{};return a.jsxs(kl.Provider,{value:{confirm:s},children:[t,e.open&&a.jsx("div",{className:"song-dialog-mask",onClick:()=>r(!1),children:a.jsxs("div",{className:"song-dialog",onClick:o=>o.stopPropagation(),role:"dialog","aria-modal":"true",children:[a.jsx("div",{className:"dlg-title",children:e.title}),a.jsx("div",{className:"dlg-body",children:e.message}),a.jsxs("div",{className:"dlg-actions",children:[a.jsx("button",{className:"btn-seal btn-ghost",style:{fontSize:".85rem",padding:".42rem 1.2rem"},onClick:()=>r(!1),children:"再 思"}),a.jsx("button",{className:"btn-seal",style:{fontSize:".85rem",padding:".42rem 1.2rem",...c},onClick:()=>r(!0),children:e.confirmText})]})]})})]})}class xd extends v.Component{constructor(){super(...arguments);Q4(this,"state",{hasError:!1,message:""})}static getDerivedStateFromError(i){return{hasError:!0,message:i instanceof Error?i.message:"未知之虞"}}componentDidCatch(i){console.error("[观微] 页面异常:",i)}render(){return this.state.hasError?a.jsxs("div",{className:"wrap",style:{paddingTop:"var(--sp-8)",textAlign:"center"},children:[a.jsxs("div",{className:"result-placeholder",children:[a.jsx("div",{className:"glyph",children:"滞"}),a.jsx("p",{children:"此页一时未应机 · 请返首页再试"}),a.jsx("p",{className:"tiny muted",style:{marginTop:".4rem"},children:this.state.message})]}),a.jsx("div",{className:"mt-4",children:a.jsx(L0,{className:"btn-seal",to:"/",onClick:()=>this.setState({hasError:!1}),children:a.jsx("span",{className:"sb-label",children:"返 首 页"})})})]}):this.props.children}}const Tl="guanwei_users",Gr="/api/users";async function Hr(){try{return(await fetch("/api/health")).ok}catch{return!1}}async function D3(t,e,i){if(await Hr())try{await fetch(Gr+"/"+encodeURIComponent(t)+"/profile",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({profile:e,samples:i})})}catch{}}async function bl(t,e){if(await Hr())try{await fetch(Gr+"/"+encodeURIComponent(t)+"/records",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({records:e})})}catch{}}async function yd(t){if(!await Hr())return null;try{const e=await fetch(Gr+"/"+encodeURIComponent(t)+"/records");return e.ok&&(await e.json()).records||null}catch{return null}}const Zr="guanwei_session";function Ur(t){let e=5381;const i="guanwei::"+t;for(let s=0;s<i.length;s++)e=(e<<5)+e+i.charCodeAt(s)>>>0;return"h"+e.toString(16)}function e2(){try{return JSON.parse(localStorage.getItem(Tl)||"[]").map(e=>({...e,profile:f7(e.profile),samples:(e.samples||[]).map(i=>({...i,profile:f7(i.profile)}))}))}catch{return[]}}function Nn(t){localStorage.setItem(Tl,JSON.stringify(t))}const qr={birthDate:"1990-06-15",birthTime:"12:00",birthHourIndex:6,gender:"男",location:null};function Ol(t,e,i=qr){const s=t.trim();if(s.length<2)return{ok:!1,message:"名号至少二字"};if(e.length<4)return{ok:!1,message:"密语至少四位"};const r=e2();if(r.some(o=>o.username===s))return{ok:!1,message:"此名号已有人用"};const c={username:s,passHash:Ur(e),createdAt:Date.now(),profile:i,samples:[]};return r.push(c),Nn(r),Yl(s),{ok:!0,message:"入馆成功",user:c}}function Pl(t,e){const s=e2().find(r=>r.username===t.trim());return!s||s.passHash!==Ur(e)?{ok:!1,message:"名号或密语未合"}:(Yl(s.username),{ok:!0,message:"入馆成功",user:s})}function Xr(){localStorage.removeItem(Zr)}function Yl(t){localStorage.setItem(Zr,JSON.stringify({username:t,loginAt:Date.now()}))}function k1(){try{const t=JSON.parse(localStorage.getItem(Zr)||"null");return t!=null&&t.username&&e2().find(e=>e.username===t.username)||null}catch{return null}}function Ll(t){const e=k1();if(!e)return null;const i=e2(),s=i.findIndex(r=>r.username===e.username);return s<0?null:(i[s]={...i[s],profile:{...i[s].profile,...t}},Nn(i),i[s])}function Rl(t,e){const i=k1();if(!i)return null;const s=e2(),r=s.findIndex(c=>c.username===i.username);return r<0?null:(s[r]={...s[r],samples:[...s[r].samples,{id:"s"+Date.now()+"-"+Math.random().toString(36).slice(2,7),name:t.trim()||"未名档案",profile:e}]},Nn(s),s[r])}function Gl(t,e){const i=k1();if(!i)return null;const s=e2(),r=s.findIndex(c=>c.username===i.username);return r<0?null:(s[r]={...s[r],samples:s[r].samples.map(c=>c.id===t?{...c,profile:{...c.profile,...e}}:c)},Nn(s),s[r])}function Hl(t){const e=k1();if(!e)return null;const i=e2(),s=i.findIndex(r=>r.username===e.username);return s<0?null:(i[s]={...i[s],samples:i[s].samples.filter(r=>r.id!==t)},Nn(i),i[s])}function Zl(t){const e=k1();if(!e)return null;const i=e2(),s=i.findIndex(o=>o.username===e.username);if(s<0)return null;const r=i[s].samples.find(o=>o.id===t);if(!r)return null;const c=i[s].profile;return i[s]={...i[s],profile:r.profile,samples:[...i[s].samples.filter(o=>o.id!==t),{id:"s"+Date.now()+"-"+Math.random().toString(36).slice(2,7),name:"旧主档案",profile:c}]},Nn(i),i[s]}function Gi(){var t;return"guanwei_records_"+(((t=k1())==null?void 0:t.username)||"guest")}function f7(t){if(!t)return qr;if(t.birthTime)return t;const e=(t.birthHourIndex??4)*2%24;return{...t,birthTime:String(e).padStart(2,"0")+":00"}}const Dd=Object.freeze(Object.defineProperty({__proto__:null,DEFAULT_PROFILE:qr,addSampleProfile:Rl,currentUser:k1,hashPassword:Ur,login:Pl,logout:Xr,promoteSampleProfile:Zl,pullRecordsFromServer:yd,pushRecordsToServer:bl,recordsKey:Gi,register:Ol,removeSampleProfile:Hl,syncProfileToServer:D3,updateProfile:Ll,updateSampleProfile:Gl},Symbol.toStringTag,{value:"Module"})),t2=[{id:"bazi",num:"壹",name:"四柱八字",glyph:"命",tag:"命理 · 中国",poem:"五行流转,命在干支",intro:"以年、月、日、时四柱干支为经纬,配五行生克、十神六亲,推人一生之格局穷通。唐李虚中首创,宋徐子平完善,世称「子平术」,为命理之首。",source:"源于唐·李虚中《李虚中命书》,成于宋·徐子平《渊海子平》",kicker:"命理 · Ming Shu"},{id:"ziwei",num:"贰",name:"紫微斗数",glyph:"星",tag:"星命 · 中国",poem:"星罗棋布,命宫为枢",intro:"以北斗紫微星垣为主,列十四主星、百余辅曜,布于十二宫垣,推一生之贵贱休咎。相传出于宋代道家陈抟,与八字并称命理双璧。",source:"相传宋·陈抟所传,明清坊间流布而成体系",kicker:"星命 · Zi Wei"},{id:"qimen",num:"叁",name:"奇门遁甲",glyph:"遁",tag:"三式 · 中国",poem:"遁甲藏机,运筹帷幄",intro:"三式之绝,以洛书九宫为盘,藏三奇六仪,配八门九星八神,推天时地利之机,古称「帝王之学」,用于择时趋吉、排兵布阵。",source:"传说出于黄帝战蚩尤,唐宋定型,明清大盛",kicker:"三式 · Qi Men"},{id:"meihua",num:"肆",name:"梅花易数",glyph:"易",tag:"象数 · 中国",poem:"梅开万象,心动即占",intro:"邵雍观梅得卦而名。以心动起卦,凡数、时、物、字皆可取象,重体用生克,轻程式繁缛,最见「简易」之道。",source:"宋·邵雍《梅花易数》",kicker:"象数 · Mei Hua"},{id:"liuyao",num:"伍",name:"六爻",glyph:"卦",tag:"筮法 · 中国",poem:"三枚铜钱,六次成卦",intro:"承《周易》蓍草古法,以三枚铜钱六掷成卦,配六亲六神、世应爻位,断吉凶悔吝。取象直观、占法灵活,为民间最盛之占。",source:"源于《周易》筮法,汉京房纳甲,唐以后铜钱代蓍",kicker:"筮法 · Liu Yao"},{id:"liuren",num:"陆",name:"大六壬",glyph:"课",tag:"三式 · 中国",poem:"天地人三传,吉凶立判",intro:"三式之中,大六壬最验人事。以月将加时立四课,贼克取三传,配十二天将,推事物之始终得失,古称「人事之王」。",source:"起源甚古,汉唐成熟,《六壬大全》集其大成",kicker:"三式 · Da Liu Ren"},{id:"xiaoliuren",num:"柒",name:"小六壬",glyph:"掌",tag:"占时 · 中国",poem:"六掌玄机,掐指即知",intro:"以农历月、日、时三数,于六掌诀中顺数取位——大安、留连、速喜、赤口、小吉、空亡,断吉凶宜忌。简便迅捷,随身可用。",source:"民间流传掌诀,李淳风六壬时课一脉",kicker:"占时 · Xiao Liu Ren"},{id:"astrology",num:"捌",name:"星盘",glyph:"穹",tag:"占星 · 西方",poem:"黄道十二,天穹为书",intro:"承西方古典占星,以出生时刻天象立本命盘,察太阳、月亮与诸行星之落宫相位,观性格天赋与人生轨迹,为西学观照之镜。",source:"源自古巴比伦与希腊化占星传统",kicker:"占星 · Astrology"},{id:"tarot",num:"玖",name:"塔罗",glyph:"镜",tag:"镜鉴 · 西方",poem:"镜照本心,塔罗为引",intro:"七十八张牌,二十二大阿卡纳述灵魂之旅,五十六小阿卡纳描日常万象。不问吉凶,但照本心,为自我观照之艺术。",source:"源起欧洲文艺复兴前后,马赛系为古制",kicker:"镜鉴 · Tarot"}],Bi=t=>t2.find(e=>e.id===t),Ad=[{name:"命理",arts:["bazi","ziwei"]},{name:"三式",arts:["qimen","liuren"]},{name:"象数 · 筮法",arts:["meihua","liuyao","xiaoliuren"]},{name:"西学镜鉴",arts:["astrology","tarot"]}];function Bd(){const e=Fe().pathname,i=e.startsWith("/art/"),s=r=>{switch(r){case"home":return e==="/"&&!i;case"arts":return i;case"fa":return!1;case"classics":return e.startsWith("/classics");case"academy":return e.startsWith("/academy");case"about":return e.startsWith("/about");default:return!1}};return a.jsx("header",{className:"site-head",children:a.jsxs("div",{className:"wrap head-inner",children:[a.jsxs(L0,{className:"brand",to:"/",children:[a.jsx("span",{className:"seal","aria-hidden":"true",children:"观微"}),a.jsx("span",{className:"name",children:"观微"}),a.jsx("span",{className:"sub",children:"以术问道 · 观微知著"})]}),a.jsxs("nav",{className:"nav-links","aria-label":"主导航",children:[a.jsx(L0,{to:"/",className:e==="/"&&!i?"active":"",children:"首页"}),a.jsx(jd,{active:i}),a.jsx(L0,{to:"/classics",className:s("classics")?"active":"",children:"古籍"}),a.jsx(L0,{to:"/academy",className:s("academy")?"active":"",children:"学馆"}),a.jsx(L0,{to:"/about",className:s("about")?"active":"",children:"缘起"})]}),a.jsx(vd,{})]})})}function jd({active:t}){return a.jsxs("div",{className:"has-sub",children:[a.jsxs(L0,{to:"/",className:t?"active":"",onClick:e=>{var i;e.preventDefault(),(i=document.getElementById("home-arts"))==null||i.scrollIntoView({behavior:"smooth"})},children:["九术 ",a.jsx("svg",{className:"chev-mini",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:a.jsx("path",{d:"m6 9 6 6 6-6"})})]}),a.jsx("div",{className:"sub-menu arts-sub",style:{minWidth:"13rem"},children:Ad.map(e=>a.jsxs("div",{className:"sub-group",children:[a.jsx("div",{className:"sub-group-name",children:e.name}),e.arts.map(i=>{const s=t2.find(r=>r.id===i);return a.jsxs(L0,{to:"/art/"+i,children:[a.jsx("span",{className:"sub-glyph",children:s.glyph}),s.name,a.jsx("span",{className:"sub-poem",children:s.poem.split(",")[0]})]},i)})]},e.name))})]})}function vd(){const t=k1(),[,e]=v.useState(0);if(!t)return a.jsx(L0,{to:"/auth",className:"btn-seal btn-ghost",style:{fontSize:".78rem",padding:".3rem 1rem",letterSpacing:".2em"},children:a.jsx("span",{className:"sb-label",children:"入 馆"})});const i=t.username.length>4?t.username.slice(0,4)+"…":t.username;return a.jsxs("div",{className:"has-sub user-menu",children:[a.jsxs("button",{className:"user-chip",onClick:()=>{},children:[a.jsx("span",{className:"user-seal",children:t.username.slice(0,1)}),a.jsx("span",{className:"user-name",children:i}),a.jsx("span",{className:"user-caret",children:a.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:a.jsx("path",{d:"m6 9 6 6 6-6"})})})]}),a.jsxs("div",{className:"sub-menu",style:{right:0,left:"auto",transform:"none"},children:[a.jsx(L0,{to:"/auth",children:"吾之档案"}),a.jsx(L0,{to:"/history",children:"占问记录"}),a.jsx(L0,{to:"/",onClick:()=>{Xr(),e(s=>s+1)},style:{color:"var(--cinnabar)"},children:"离 馆"})]})]})}function _d(){return a.jsx("footer",{className:"site-foot",children:a.jsxs("div",{className:"wrap foot-inner",children:[a.jsxs("div",{className:"foot-brand",children:[a.jsx("span",{className:"seal",children:"观微"}),a.jsx("span",{children:"观微 · 玄学问道"})]}),a.jsxs("div",{className:"foot-meta",children:[a.jsx("p",{children:"凡占问所得,仅供修身养性、怡情遣兴之用,不作决策依据。"}),a.jsx("p",{children:"术数乃先贤观天察地之遗智,敬而用之,勿迷勿执。"})]})]})})}const Z1=class{static isLeapYear(t){return t<1600?t%4===0:t%4===0&&t%100!==0||t%400===0}static getDaysOfMonth(t,e){if(t===1582&&e===10)return 21;const i=e-1;let s=Z1.DAYS_OF_MONTH[i];return i===1&&Z1.isLeapYear(t)&&s++,s}static getDaysOfYear(t){return t===1582?355:Z1.isLeapYear(t)?366:365}static getDaysInYear(t,e,i){let s=0;for(let c=1;c<e;c++)s+=Z1.getDaysOfMonth(t,c);let r=i;if(t===1582&&e===10&&i>=15){if(i>=15)r-=10;else if(i>4)throw new Error(`wrong solar year ${t} month ${e} day ${i}`)}return s+=r,s}static getWeeksOfMonth(t,e,i){return Math.ceil((Z1.getDaysOfMonth(t,e)+k0.fromYmd(t,e,1).getWeek()-i)/7)}static getDaysBetween(t,e,i,s,r,c){if(t==s)return Z1.getDaysInYear(s,r,c)-Z1.getDaysInYear(t,e,i);if(t>s){let o=Z1.getDaysOfYear(s)-Z1.getDaysInYear(s,r,c);for(let d=s+1;d<t;d++)o+=Z1.getDaysOfYear(d);return o+=Z1.getDaysInYear(t,e,i),-o}else{let o=Z1.getDaysOfYear(t)-Z1.getDaysInYear(t,e,i);for(let d=t+1;d<s;d++)o+=Z1.getDaysOfYear(d);return o+=Z1.getDaysInYear(s,r,c),o}}};let $0=Z1;$0.WEEK=["{w.sun}","{w.mon}","{w.tues}","{w.wed}","{w.thur}","{w.fri}","{w.sat}"];$0.DAYS_OF_MONTH=[31,28,31,30,31,30,31,31,30,31,30,31];$0.XINGZUO=["{xz.aries}","{xz.taurus}","{xz.gemini}","{xz.cancer}","{xz.leo}","{xz.virgo}","{xz.libra}","{xz.scorpio}","{xz.sagittarius}","{xz.capricornus}","{xz.aquarius}","{xz.pisces}"];$0.FESTIVAL={"1-1":"{jr.yuanDan}","2-14":"{jr.qingRen}","3-8":"{jr.fuNv}","3-12":"{jr.zhiShu}","3-15":"{jr.xiaoFei}","4-1":"{jr.yuRen}","5-1":"{jr.wuYi}","5-4":"{jr.qingNian}","6-1":"{jr.erTong}","7-1":"{jr.jianDang}","8-1":"{jr.jianJun}","9-10":"{jr.jiaoShi}","10-1":"{jr.guoQing}","10-31":"{jr.wanShengYe}","11-1":"{jr.wanSheng}","12-24":"{jr.pingAn}","12-25":"{jr.shengDan}"};$0.OTHER_FESTIVAL={"1-8":["周恩来逝世纪念日"],"1-10":["中国人民警察节"],"1-14":["日记情人节"],"1-21":["列宁逝世纪念日"],"1-26":["国际海关日"],"1-27":["国际大屠杀纪念日"],"2-2":["世界湿地日"],"2-4":["世界抗癌日"],"2-7":["京汉铁路罢工纪念日"],"2-10":["国际气象节"],"2-19":["邓小平逝世纪念日"],"2-20":["世界社会公正日"],"2-21":["国际母语日"],"2-24":["第三世界青年日"],"3-1":["国际海豹日"],"3-3":["世界野生动植物日","全国爱耳日"],"3-5":["周恩来诞辰纪念日","中国青年志愿者服务日"],"3-6":["世界青光眼日"],"3-7":["女生节"],"3-12":["孙中山逝世纪念日"],"3-14":["马克思逝世纪念日","白色情人节"],"3-17":["国际航海日"],"3-18":["全国科技人才活动日","全国爱肝日"],"3-20":["国际幸福日"],"3-21":["世界森林日","世界睡眠日","国际消除种族歧视日"],"3-22":["世界水日"],"3-23":["世界气象日"],"3-24":["世界防治结核病日"],"3-29":["中国黄花岗七十二烈士殉难纪念日"],"4-2":["国际儿童图书日","世界自闭症日"],"4-4":["国际地雷行动日"],"4-7":["世界卫生日"],"4-8":["国际珍稀动物保护日"],"4-12":["世界航天日"],"4-14":["黑色情人节"],"4-15":["全民国家安全教育日"],"4-22":["世界地球日","列宁诞辰纪念日"],"4-23":["世界读书日"],"4-24":["中国航天日"],"4-25":["儿童预防接种宣传日"],"4-26":["世界知识产权日","全国疟疾日"],"4-28":["世界安全生产与健康日"],"4-30":["全国交通安全反思日"],"5-2":["世界金枪鱼日"],"5-3":["世界新闻自由日"],"5-5":["马克思诞辰纪念日"],"5-8":["世界红十字日"],"5-11":["世界肥胖日"],"5-12":["全国防灾减灾日","护士节"],"5-14":["玫瑰情人节"],"5-15":["国际家庭日"],"5-19":["中国旅游日"],"5-20":["网络情人节"],"5-22":["国际生物多样性日"],"5-25":["525心理健康节"],"5-27":["上海解放日"],"5-29":["国际维和人员日"],"5-30":["中国五卅运动纪念日"],"5-31":["世界无烟日"],"6-3":["世界自行车日"],"6-5":["世界环境日"],"6-6":["全国爱眼日"],"6-8":["世界海洋日"],"6-11":["中国人口日"],"6-14":["世界献血日","亲亲情人节"],"6-17":["世界防治荒漠化与干旱日"],"6-20":["世界难民日"],"6-21":["国际瑜伽日"],"6-25":["全国土地日"],"6-26":["国际禁毒日","联合国宪章日"],"7-1":["香港回归纪念日"],"7-6":["国际接吻日","朱德逝世纪念日"],"7-7":["七七事变纪念日"],"7-11":["世界人口日","中国航海日"],"7-14":["银色情人节"],"7-18":["曼德拉国际日"],"7-30":["国际友谊日"],"8-3":["男人节"],"8-5":["恩格斯逝世纪念日"],"8-6":["国际电影节"],"8-8":["全民健身日"],"8-9":["国际土著人日"],"8-12":["国际青年节"],"8-14":["绿色情人节"],"8-19":["世界人道主义日","中国医师节"],"8-22":["邓小平诞辰纪念日"],"8-29":["全国测绘法宣传日"],"9-3":["中国抗日战争胜利纪念日"],"9-5":["中华慈善日"],"9-8":["世界扫盲日"],"9-9":["毛泽东逝世纪念日","全国拒绝酒驾日"],"9-14":["世界清洁地球日","相片情人节"],"9-15":["国际民主日"],"9-16":["国际臭氧层保护日"],"9-17":["世界骑行日"],"9-18":["九一八事变纪念日"],"9-20":["全国爱牙日"],"9-21":["国际和平日"],"9-27":["世界旅游日"],"9-30":["中国烈士纪念日"],"10-1":["国际老年人日"],"10-2":["国际非暴力日"],"10-4":["世界动物日"],"10-11":["国际女童日"],"10-10":["辛亥革命纪念日"],"10-13":["国际减轻自然灾害日","中国少年先锋队诞辰日"],"10-14":["葡萄酒情人节"],"10-16":["世界粮食日"],"10-17":["全国扶贫日"],"10-20":["世界统计日"],"10-24":["世界发展信息日","程序员节"],"10-25":["抗美援朝纪念日"],"11-5":["世界海啸日"],"11-8":["记者节"],"11-9":["全国消防日"],"11-11":["光棍节"],"11-12":["孙中山诞辰纪念日"],"11-14":["电影情人节"],"11-16":["国际宽容日"],"11-17":["国际大学生节"],"11-19":["世界厕所日"],"11-28":["恩格斯诞辰纪念日"],"11-29":["国际声援巴勒斯坦人民日"],"12-1":["世界艾滋病日"],"12-2":["全国交通安全日"],"12-3":["世界残疾人日"],"12-4":["全国法制宣传日"],"12-5":["世界弱能人士日","国际志愿人员日"],"12-7":["国际民航日"],"12-9":["世界足球日","国际反腐败日"],"12-10":["世界人权日"],"12-11":["国际山岳日"],"12-12":["西安事变纪念日"],"12-13":["国家公祭日"],"12-14":["拥抱情人节"],"12-18":["国际移徙者日"],"12-26":["毛泽东诞辰纪念日"]};$0.WEEK_FESTIVAL={"3-0-1":"全国中小学生安全教育日","5-2-0":"母亲节","5-3-0":"全国助残日","6-3-0":"父亲节","9-3-6":"全民国防教育日","10-1-1":"世界住房日","11-4-4":"感恩节"};class fe{static fromYmd(e,i,s,r){return new fe(e,i,s,r)}static fromDate(e,i){return fe.fromYmd(e.getFullYear(),e.getMonth()+1,e.getDate(),i)}constructor(e,i,s,r){this._year=e,this._month=i,this._day=s,this._start=r}getYear(){return this._year}getMonth(){return this._month}getDay(){return this._day}getStart(){return this._start}getIndex(){let e=k0.fromYmd(this._year,this._month,1).getWeek()-this._start;return e<0&&(e+=7),Math.ceil((this._day+e)/7)}getIndexInYear(){let e=k0.fromYmd(this._year,1,1).getWeek()-this._start;return e<0&&(e+=7),Math.ceil(($0.getDaysInYear(this._year,this._month,this._day)+e)/7)}next(e,i){const s=this._start;if(e===0)return fe.fromYmd(this._year,this._month,this._day,s);let r=k0.fromYmd(this._year,this._month,this._day);if(i){let c=e,o=fe.fromYmd(this._year,this._month,this._day,s),d=this._month;const g=c>0;for(;c!==0;){r=r.next(g?7:-7),o=fe.fromYmd(r.getYear(),r.getMonth(),r.getDay(),s);let f=o.getMonth();if(d!==f){const E=o.getIndex();if(g)if(E===1){const F=o.getFirstDay();o=fe.fromYmd(F.getYear(),F.getMonth(),F.getDay(),s),f=o.getMonth()}else r=k0.fromYmd(o.getYear(),o.getMonth(),1),o=fe.fromYmd(r.getYear(),r.getMonth(),r.getDay(),s);else if($0.getWeeksOfMonth(o.getYear(),o.getMonth(),s)===E){const F=o.getFirstDay().next(6);o=fe.fromYmd(F.getYear(),F.getMonth(),F.getDay(),s),f=o.getMonth()}else r=k0.fromYmd(o.getYear(),o.getMonth(),$0.getDaysOfMonth(o.getYear(),o.getMonth())),o=fe.fromYmd(r.getYear(),r.getMonth(),r.getDay(),s);d=f}c-=g?1:-1}return o}else return r=r.next(e*7),fe.fromYmd(r.getYear(),r.getMonth(),r.getDay(),s)}getFirstDay(){const e=k0.fromYmd(this._year,this._month,this._day);let i=e.getWeek()-this._start;return i<0&&(i+=7),e.next(-i)}getFirstDayInMonth(){let e=0;const i=this.getDays();for(let s=0;s<i.length;s++)if(this._month===i[s].getMonth()){e=s;break}return i[e]}getDays(){const e=this.getFirstDay(),i=[];i.push(e);for(let s=1;s<7;s++)i.push(e.next(s));return i}getDaysInMonth(){const e=this.getDays(),i=[];for(let s=0;s<e.length;s++){const r=e[s];this._month===r.getMonth()&&i.push(r)}return i}toString(){return`${this.getYear()}.${this.getMonth()}.${this.getIndex()}`}toFullString(){return`${this.getYear()}年${this.getMonth()}月第${this.getIndex()}周`}}const S0=class{static getTimeZhiIndex(t){if(!t)return 0;t.length>5&&(t=t.substring(0,5));let e=1;for(let i=1;i<22;i+=2){if(t>=(i<10?"0":"")+i+":00"&&t<=(i+1<10?"0":"")+(i+1)+":59")return e;e++}return 0}static convertTime(t){return S0.ZHI[S0.getTimeZhiIndex(t)+1]}static getJiaZiIndex(t){return S0.index(t,S0.JIA_ZI,0)}static hex(t){let e=t.toString(16);return e.length<2&&(e="0"+e),e.toUpperCase()}static getDayYi(t,e){const i=[],s=S0.hex(S0.getJiaZiIndex(e)),r=S0.hex(S0.getJiaZiIndex(t));let c=S0.DAY_YI_JI,o=c.indexOf(s+"=");for(;o>-1;){c=c.substring(o+3);let d=c;d.indexOf("=")>-1&&(d=d.substring(0,d.indexOf("=")-2));let g=!1;const f=d.substring(0,d.indexOf(":"));for(let E=0,F=f.length;E<F;E+=2)if(f.substring(E,E+2)==r){g=!0;break}if(g){let E=d.substring(d.indexOf(":")+1);E=E.substring(0,E.indexOf(","));for(let F=0,x=E.length;F<x;F+=2)i.push(S0.YI_JI[parseInt(E.substring(F,F+2),16)]);break}o=c.indexOf(s+"=")}return i.length<1&&i.push(S0.SHEN_SHA[0]),i}static getDayJi(t,e){const i=[],s=S0.hex(S0.getJiaZiIndex(e)),r=S0.hex(S0.getJiaZiIndex(t));let c=S0.DAY_YI_JI,o=c.indexOf(s+"=");for(;o>-1;){c=c.substring(o+3);let d=c;d.indexOf("=")>-1&&(d=d.substring(0,d.indexOf("=")-2));let g=!1;const f=d.substring(0,d.indexOf(":"));for(let E=0,F=f.length;E<F;E+=2)if(f.substring(E,E+2)==r){g=!0;break}if(g){const E=d.substring(d.indexOf(",")+1);for(let F=0,x=E.length;F<x;F+=2)i.push(S0.YI_JI[parseInt(E.substring(F,F+2),16)]);break}o=c.indexOf(s+"=")}return i.length<1&&i.push(S0.SHEN_SHA[0]),i}static getDayJiShen(t,e){const i=[];let s=t-2;s<0&&(s+=12);let r=S0.getJiaZiIndex(e).toString(16).toUpperCase();r.length<2&&(r="0"+r);const c=new RegExp(`;${r}(.[^;]*)`,"g").exec(S0.DAY_SHEN_SHA[s]);if(c){const o=c[1];for(let d=0,g=o.length;d<g;d+=2){const f=parseInt(o.substring(d,d+2),16);f<60&&i.push(S0.SHEN_SHA[f+1])}}return i.length<1&&i.push(S0.SHEN_SHA[0]),i}static getDayXiongSha(t,e){const i=[];let s=t-2;s<0&&(s+=12);let r=S0.getJiaZiIndex(e).toString(16).toUpperCase();r.length<2&&(r="0"+r);const c=new RegExp(`;${r}(.[^;]*)`,"g").exec(S0.DAY_SHEN_SHA[s]);if(c){const o=c[1];for(let d=0,g=o.length;d<g;d+=2){const f=parseInt(o.substring(d,d+2),16);f>=60&&i.push(S0.SHEN_SHA[f+1])}}return i.length<1&&i.push(S0.SHEN_SHA[0]),i}static getTimeYi(t,e){const i=[],s=S0.hex(S0.getJiaZiIndex(t)),r=S0.hex(S0.getJiaZiIndex(e)),c=S0.TIME_YI_JI.indexOf(s+r+"=");if(c>-1){let o=S0.TIME_YI_JI.substring(c+5);o.indexOf("=")>-1&&(o=o.substring(0,o.indexOf("=")-4));const d=o.substring(0,o.indexOf(","));for(let g=0,f=d.length;g<f;g+=2)i.push(S0.YI_JI[parseInt(d.substring(g,g+2),16)])}return i.length<1&&i.push(S0.SHEN_SHA[0]),i}static getTimeJi(t,e){const i=[],s=S0.hex(S0.getJiaZiIndex(t)),r=S0.hex(S0.getJiaZiIndex(e)),c=S0.TIME_YI_JI.indexOf(s+r+"=");if(c>-1){let o=S0.TIME_YI_JI.substring(c+5);o.indexOf("=")>-1&&(o=o.substring(0,o.indexOf("=")-4));const d=o.substring(o.indexOf(",")+1);for(let g=0,f=d.length;g<f;g+=2)i.push(S0.YI_JI[parseInt(d.substring(g,g+2),16)])}return i.length<1&&i.push(S0.SHEN_SHA[0]),i}static getXunIndex(t){const e=S0.find(t,S0.GAN),i=S0.find(t,S0.ZHI);let s=e.index-i.index;return s<0&&(s+=12),Math.floor(s/2)}static getXun(t){return S0.XUN[S0.getXunIndex(t)]}static getXunKong(t){return S0.XUN_KONG[S0.getXunIndex(t)]}static find(t,e){for(let i=0,s=e.length;i<s;i++){const r=e[i];if(!(r.length<1)&&t.indexOf(r)>-1)return{index:i,value:r}}return null}static index(t,e,i){for(let s=0,r=e.length;s<r;s++)if(e[s]===t)return s+i;return-1}};let C=S0;C.BASE_MONTH_ZHI_INDEX=2;C.XUN=["{jz.jiaZi}","{jz.jiaXu}","{jz.jiaShen}","{jz.jiaWu}","{jz.jiaChen}","{jz.jiaYin}"];C.XUN_KONG=["{dz.xu}{dz.hai}","{dz.shen}{dz.you}","{dz.wu}{dz.wei}","{dz.chen}{dz.si}","{dz.yin}{dz.mao}","{dz.zi}{dz.chou}"];C.CHANG_SHENG=["{ds.changSheng}","{ds.muYu}","{ds.guanDai}","{ds.linGuan}","{ds.diWang}","{ds.shuai}","{ds.bing}","{ds.si}","{ds.mu}","{ds.jue}","{ds.tai}","{ds.yang}"];C.MONTH_ZHI=["","{dz.yin}","{dz.mao}","{dz.chen}","{dz.si}","{dz.wu}","{dz.wei}","{dz.shen}","{dz.you}","{dz.xu}","{dz.hai}","{dz.zi}","{dz.chou}"];C.JIE_QI=["{jq.dongZhi}","{jq.xiaoHan}","{jq.daHan}","{jq.liChun}","{jq.yuShui}","{jq.jingZhe}","{jq.chunFen}","{jq.qingMing}","{jq.guYu}","{jq.liXia}","{jq.xiaoMan}","{jq.mangZhong}","{jq.xiaZhi}","{jq.xiaoShu}","{jq.daShu}","{jq.liQiu}","{jq.chuShu}","{jq.baiLu}","{jq.qiuFen}","{jq.hanLu}","{jq.shuangJiang}","{jq.liDong}","{jq.xiaoXue}","{jq.daXue}"];C.JIE_QI_IN_USE=["DA_XUE","{jq.dongZhi}","{jq.xiaoHan}","{jq.daHan}","{jq.liChun}","{jq.yuShui}","{jq.jingZhe}","{jq.chunFen}","{jq.qingMing}","{jq.guYu}","{jq.liXia}","{jq.xiaoMan}","{jq.mangZhong}","{jq.xiaZhi}","{jq.xiaoShu}","{jq.daShu}","{jq.liQiu}","{jq.chuShu}","{jq.baiLu}","{jq.qiuFen}","{jq.hanLu}","{jq.shuangJiang}","{jq.liDong}","{jq.xiaoXue}","{jq.daXue}","DONG_ZHI","XIAO_HAN","DA_HAN","LI_CHUN","YU_SHUI","JING_ZHE"];C.LIU_YAO=["{ly.xianSheng}","{ly.youYin}","{ly.xianFu}","{ly.foMie}","{ly.daAn}","{ly.chiKou}"];C.HOU=["{h.first}","{h.second}","{h.third}"];C.WU_HOU=["{h.qiuYinJie}","{h.miJiao}","{h.shuiQuan}","{h.yanBei}","{h.queShi}","{h.zhiShi}","{h.jiShi}","{h.zhengNiao}","{h.shuiZe}","{h.dongFeng}","{h.zheChongShiZhen}","{h.yuZhi}","{h.taJi}","{h.houYan}","{h.caoMuMengDong}","{h.taoShi}","{h.cangGeng}","{h.yingHua}","{h.xuanNiaoZhi}","{h.leiNai}","{h.shiDian}","{h.tongShi}","{h.tianShu}","{h.hongShi}","{h.pingShi}","{h.mingJiu}","{h.daiSheng}","{h.louGuo}","{h.qiuYinChu}","{h.wangGua}","{h.kuCai}","{h.miCao}","{h.maiQiu}","{h.tangLang}","{h.juShi}","{h.fanShe}","{h.luJia}","{h.tiaoShi}","{h.banXia}","{h.wenFeng}","{h.xiShuai}","{h.yingShi}","{h.fuCao}","{h.tuRun}","{h.daYu}","{h.liangFeng}","{h.baiLu}","{h.hanChan}","{h.yingNai}","{h.tianDi}","{h.heNai}","{h.hongYanLai}","{h.xuanNiaoGui}","{h.qunNiao}","{h.leiShi}","{h.zheChongPiHu}","{h.shuiShiHe}","{h.hongYanLaiBin}","{h.queRu}","{h.juYou}","{h.caiNai}","{h.caoMuHuangLuo}","{h.zheChongXianFu}","{h.shuiShiBing}","{h.diShi}","{h.zhiRu}","{h.hongCang}","{h.tianQi}","{h.biSe}","{h.heDan}","{h.huShi}","{h.liTing}"];C.GAN=["","{tg.jia}","{tg.yi}","{tg.bing}","{tg.ding}","{tg.wu}","{tg.ji}","{tg.geng}","{tg.xin}","{tg.ren}","{tg.gui}"];C.POSITION_XI=["","{bg.gen}","{bg.qian}","{bg.kun}","{bg.li}","{bg.xun}","{bg.gen}","{bg.qian}","{bg.kun}","{bg.li}","{bg.xun}"];C.POSITION_YANG_GUI=["","{bg.kun}","{bg.kun}","{bg.dui}","{bg.qian}","{bg.gen}","{bg.kan}","{bg.li}","{bg.gen}","{bg.zhen}","{bg.xun}"];C.POSITION_YIN_GUI=["","{bg.gen}","{bg.kan}","{bg.qian}","{bg.dui}","{bg.kun}","{bg.kun}","{bg.gen}","{bg.li}","{bg.xun}","{bg.zhen}"];C.POSITION_FU=["","{bg.xun}","{bg.xun}","{bg.zhen}","{bg.zhen}","{bg.kan}","{bg.li}","{bg.kun}","{bg.kun}","{bg.qian}","{bg.dui}"];C.POSITION_FU_2=["","{bg.kan}","{bg.kun}","{bg.qian}","{bg.xun}","{bg.gen}","{bg.kan}","{bg.kun}","{bg.qian}","{bg.xun}","{bg.gen}"];C.POSITION_CAI=["","{bg.gen}","{bg.gen}","{bg.kun}","{bg.kun}","{bg.kan}","{bg.kan}","{bg.zhen}","{bg.zhen}","{bg.li}","{bg.li}"];C.POSITION_TAI_SUI_YEAR=["{bg.kan}","{bg.gen}","{bg.gen}","{bg.zhen}","{bg.xun}","{bg.xun}","{bg.li}","{bg.kun}","{bg.kun}","{bg.dui}","{bg.kan}","{bg.kan}"];C.POSITION_GAN=["{bg.zhen}","{bg.zhen}","{bg.li}","{bg.li}","{ps.center}","{ps.center}","{bg.dui}","{bg.dui}","{bg.kan}","{bg.kan}"];C.POSITION_ZHI=["{bg.kan}","{ps.center}","{bg.zhen}","{bg.zhen}","{ps.center}","{bg.li}","{bg.li}","{ps.center}","{bg.dui}","{bg.dui}","{ps.center}","{bg.kan}"];C.POSITION_TAI_DAY=["{ts.zhan}{ts.men}{ts.dui} {ps.wai}{ps.dongNan}","{ts.dui}{ts.mo}{ts.ce} {ps.wai}{ps.dongNan}","{ts.chu}{ts.zao}{ts.lu} {ps.wai}{ps.zhengNan}","{ts.cangKu}{ts.men} {ps.wai}{ps.zhengNan}","{ts.fang}{ts.chuang}{ts.xi} {ps.wai}{ps.zhengNan}","{ts.zhan}{ts.men}{ts.chuang} {ps.wai}{ps.zhengNan}","{ts.zhan}{ts.dui}{ts.mo} {ps.wai}{ps.zhengNan}","{ts.chu}{ts.zao}{ts.ce} {ps.wai}{ps.xiNan}","{ts.cangKu}{ts.lu} {ps.wai}{ps.xiNan}","{ts.fang}{ts.chuang}{ts.men} {ps.wai}{ps.xiNan}","{ts.zhan}{ts.men}{ts.xi} {ps.wai}{ps.xiNan}","{ts.dui}{ts.mo}{ts.chuang} {ps.wai}{ps.xiNan}","{ts.chu}{ts.zao}{ts.dui} {ps.wai}{ps.xiNan}","{ts.cangKu}{ts.ce} {ps.wai}{ps.zhengXi}","{ts.fang}{ts.chuang}{ts.lu} {ps.wai}{ps.zhengXi}","{ts.zhan}{ts.daMen} {ps.wai}{ps.zhengXi}","{ts.dui}{ts.mo}{ts.xi} {ps.wai}{ps.zhengXi}","{ts.chu}{ts.zao}{ts.chuang} {ps.wai}{ps.zhengXi}","{ts.cangKu}{ts.dui} {ps.wai}{ps.xiBei}","{ts.fang}{ts.chuang}{ts.ce} {ps.wai}{ps.xiBei}","{ts.zhan}{ts.men}{ts.lu} {ps.wai}{ps.xiBei}","{ts.dui}{ts.mo}{ts.men} {ps.wai}{ps.xiBei}","{ts.chu}{ts.zao}{ts.xi} {ps.wai}{ps.xiBei}","{ts.cangKu}{ts.chuang} {ps.wai}{ps.xiBei}","{ts.fang}{ts.chuang}{ts.dui} {ps.wai}{ps.zhengBei}","{ts.zhan}{ts.men}{ts.ce} {ps.wai}{ps.zhengBei}","{ts.dui}{ts.mo}{ts.lu} {ps.wai}{ps.zhengBei}","{ts.chu}{ts.zao}{ts.men} {ps.wai}{ps.zhengBei}","{ts.cangKu}{ts.xi} {ps.wai}{ps.zhengBei}","{ts.zhan}{ts.fang}{ts.chuang} {ps.fangNei}{ps.bei}","{ts.zhan}{ts.men}{ts.dui} {ps.fangNei}{ps.bei}","{ts.dui}{ts.mo}{ts.ce} {ps.fangNei}{ps.bei}","{ts.chu}{ts.zao}{ts.lu} {ps.fangNei}{ps.bei}","{ts.cangKu}{ts.men} {ps.fangNei}{ps.bei}","{ts.fang}{ts.chuang}{ts.xi} {ps.fangNei}{ps.center}","{ts.zhan}{ts.men}{ts.chuang} {ps.fangNei}{ps.center}","{ts.zhan}{ts.dui}{ts.mo} {ps.fangNei}{ps.nan}","{ts.chu}{ts.zao}{ts.ce} {ps.fangNei}{ps.nan}","{ts.cangKu}{ts.lu} {ps.fangNei}{ps.nan}","{ts.fang}{ts.chuang}{ts.men} {ps.fangNei}{ps.xi}","{ts.zhan}{ts.men}{ts.xi} {ps.fangNei}{ps.dong}","{ts.dui}{ts.mo}{ts.chuang} {ps.fangNei}{ps.dong}","{ts.chu}{ts.zao}{ts.dui} {ps.fangNei}{ps.dong}","{ts.cangKu}{ts.ce} {ps.fangNei}{ps.dong}","{ts.fang}{ts.chuang}{ts.lu} {ps.fangNei}{ps.center}","{ts.zhan}{ts.daMen} {ps.wai}{ps.dongBei}","{ts.dui}{ts.mo}{ts.xi} {ps.wai}{ps.dongBei}","{ts.chu}{ts.zao}{ts.chuang} {ps.wai}{ps.dongBei}","{ts.cangKu}{ts.dui} {ps.wai}{ps.dongBei}","{ts.fang}{ts.chuang}{ts.ce} {ps.wai}{ps.dongBei}","{ts.zhan}{ts.men}{ts.lu} {ps.wai}{ps.dongBei}","{ts.dui}{ts.mo}{ts.men} {ps.wai}{ps.zhengDong}","{ts.chu}{ts.zao}{ts.xi} {ps.wai}{ps.zhengDong}","{ts.cangKu}{ts.chuang} {ps.wai}{ps.zhengDong}","{ts.fang}{ts.chuang}{ts.dui} {ps.wai}{ps.zhengDong}","{ts.zhan}{ts.men}{ts.ce} {ps.wai}{ps.zhengDong}","{ts.dui}{ts.mo}{ts.lu} {ps.wai}{ps.dongNan}","{ts.chu}{ts.zao}{ts.men} {ps.wai}{ps.dongNan}","{ts.cangKu}{ts.xi} {ps.wai}{ps.dongNan}","{ts.zhan}{ts.fang}{ts.chuang} {ps.wai}{ps.dongNan}"];C.POSITION_TAI_MONTH=["{ts.zhan}{ts.fang}{ts.chuang}","{ts.zhan}{ts.hu}{ts.win}","{ts.zhan}{ts.men}{ts.tang}","{ts.zhan}{ts.chu}{ts.zao}","{ts.zhan}{ts.fang}{ts.chuang}","{ts.zhan}{ts.chuang}{ts.cang}","{ts.zhan}{ts.dui}{ts.mo}","{ts.zhan}{ts.ce}{ts.hu}","{ts.zhan}{ts.men}{ts.fang}","{ts.zhan}{ts.fang}{ts.chuang}","{ts.zhan}{ts.zao}{ts.lu}","{ts.zhan}{ts.fang}{ts.chuang}"];C.ZHI=["","{dz.zi}","{dz.chou}","{dz.yin}","{dz.mao}","{dz.chen}","{dz.si}","{dz.wu}","{dz.wei}","{dz.shen}","{dz.you}","{dz.xu}","{dz.hai}"];C.ZHI_XING=["","{zx.jian}","{zx.chu}","{zx.man}","{zx.ping}","{zx.ding}","{zx.zhi}","{zx.po}","{zx.wei}","{zx.cheng}","{zx.shou}","{zx.kai}","{zx.bi}"];C.JIA_ZI=["{jz.jiaZi}","{jz.yiChou}","{jz.bingYin}","{jz.dingMao}","{jz.wuChen}","{jz.jiSi}","{jz.gengWu}","{jz.xinWei}","{jz.renShen}","{jz.guiYou}","{jz.jiaXu}","{jz.yiHai}","{jz.bingZi}","{jz.dingChou}","{jz.wuYin}","{jz.jiMao}","{jz.gengChen}","{jz.xinSi}","{jz.renWu}","{jz.guiWei}","{jz.jiaShen}","{jz.yiYou}","{jz.bingXu}","{jz.dingHai}","{jz.wuZi}","{jz.jiChou}","{jz.gengYin}","{jz.xinMao}","{jz.renChen}","{jz.guiSi}","{jz.jiaWu}","{jz.yiWei}","{jz.bingShen}","{jz.dingYou}","{jz.wuXu}","{jz.jiHai}","{jz.gengZi}","{jz.xinChou}","{jz.renYin}","{jz.guiMao}","{jz.jiaChen}","{jz.yiSi}","{jz.bingWu}","{jz.dingWei}","{jz.wuShen}","{jz.jiYou}","{jz.gengXu}","{jz.xinHai}","{jz.renZi}","{jz.guiChou}","{jz.jiaYin}","{jz.yiMao}","{jz.bingChen}","{jz.dingSi}","{jz.wuWu}","{jz.jiWei}","{jz.gengShen}","{jz.xinYou}","{jz.renXu}","{jz.guiHai}"];C.CHANG_SHENG_OFFSET={"{tg.jia}":1,"{tg.bing}":10,"{tg.wu}":10,"{tg.geng}":7,"{tg.ren}":4,"{tg.yi}":6,"{tg.ding}":9,"{tg.ji}":9,"{tg.xin}":0,"{tg.gui}":3};C.TIAN_SHEN=["","{sn.qingLong}","{sn.mingTang}","{sn.tianXing}","{sn.zhuQue}","{sn.jinKui}","{sn.tianDe}","{sn.baiHu}","{sn.yuTang}","{sn.tianLao}","{sn.xuanWu}","{sn.siMing}","{sn.gouChen}"];C.ZHI_TIAN_SHEN_OFFSET={"{dz.zi}":4,"{dz.chou}":2,"{dz.yin}":0,"{dz.mao}":10,"{dz.chen}":8,"{dz.si}":6,"{dz.wu}":4,"{dz.wei}":2,"{dz.shen}":0,"{dz.you}":10,"{dz.xu}":8,"{dz.hai}":6};C.TIAN_SHEN_TYPE={"{sn.qingLong}":"{s.huangDao}","{sn.mingTang}":"{s.huangDao}","{sn.jinKui}":"{s.huangDao}","{sn.tianDe}":"{s.huangDao}","{sn.yuTang}":"{s.huangDao}","{sn.siMing}":"{s.huangDao}","{sn.tianXing}":"{s.heiDao}","{sn.zhuQue}":"{s.heiDao}","{sn.baiHu}":"{s.heiDao}","{sn.tianLao}":"{s.heiDao}","{sn.xuanWu}":"{s.heiDao}","{sn.gouChen}":"{s.heiDao}"};C.TIAN_SHEN_TYPE_LUCK={"{s.huangDao}":"{s.goodLuck}","{s.heiDao}":"{s.badLuck}"};C.LU={"{tg.jia}":"{dz.yin}","{tg.yi}":"{dz.mao}","{tg.bing}":"{dz.si}","{tg.ding}":"{dz.wu}","{tg.wu}":"{dz.si}","{tg.ji}":"{dz.wu}","{tg.geng}":"{dz.shen}","{tg.xin}":"{dz.you}","{tg.ren}":"{dz.hai}","{tg.gui}":"{dz.zi}","{dz.yin}":"{tg.jia}","{dz.mao}":"{tg.yi}","{dz.si}":"{tg.bing},{tg.wu}","{dz.wu}":"{tg.ding},{tg.ji}","{dz.shen}":"{tg.geng}","{dz.you}":"{tg.xin}","{dz.hai}":"{tg.ren}","{dz.zi}":"{tg.gui}"};C.PENGZU_GAN=["","{tg.jia}不开仓财物耗散","{tg.yi}不栽植千株不长","{tg.bing}不修灶必见灾殃","{tg.ding}不剃头头必生疮","{tg.wu}不受田田主不祥","{tg.ji}不破券二比并亡","{tg.geng}不经络织机虚张","{tg.xin}不合酱主人不尝","{tg.ren}不泱水更难提防","{tg.gui}不词讼理弱敌强"];C.PENGZU_ZHI=["","{dz.zi}不问卜自惹祸殃","{dz.chou}不冠带主不还乡","{dz.yin}不祭祀神鬼不尝","{dz.mao}不穿井水泉不香","{dz.chen}不哭泣必主重丧","{dz.si}不远行财物伏藏","{dz.wu}不苫盖屋主更张","{dz.wei}不服药毒气入肠","{dz.shen}不安床鬼祟入房","{dz.you}不会客醉坐颠狂","{dz.xu}不吃犬作怪上床","{dz.hai}不嫁娶不利新郎"];C.NUMBER=["{n.zero}","{n.one}","{n.two}","{n.three}","{n.four}","{n.five}","{n.six}","{n.seven}","{n.eight}","{n.nine}","{n.ten}","{n.eleven}","{n.twelve}"];C.MONTH=["","{m.one}","{m.two}","{m.three}","{m.four}","{m.five}","{m.six}","{m.seven}","{m.eight}","{m.nine}","{m.ten}","{m.eleven}","{m.twelve}"];C.SEASON=["","{od.first}{sz.chun}","{od.second}{sz.chun}","{od.third}{sz.chun}","{od.first}{sz.xia}","{od.second}{sz.xia}","{od.third}{sz.xia}","{od.first}{sz.qiu}","{od.second}{sz.qiu}","{od.third}{sz.qiu}","{od.first}{sz.dong}","{od.second}{sz.dong}","{od.third}{sz.dong}"];C.SHENGXIAO=["","{sx.rat}","{sx.ox}","{sx.tiger}","{sx.rabbit}","{sx.dragon}","{sx.snake}","{sx.horse}","{sx.goat}","{sx.monkey}","{sx.rooster}","{sx.dog}","{sx.pig}"];C.DAY=["","{d.one}","{d.two}","{d.three}","{d.four}","{d.five}","{d.six}","{d.seven}","{d.eight}","{d.nine}","{d.ten}","{d.eleven}","{d.twelve}","{d.thirteen}","{d.fourteen}","{d.fifteen}","{d.sixteen}","{d.seventeen}","{d.eighteen}","{d.nighteen}","{d.twenty}","{d.twentyOne}","{d.twentyTwo}","{d.twentyThree}","{d.twentyFour}","{d.twentyFive}","{d.twentySix}","{d.twentySeven}","{d.twentyEight}","{d.twentyNine}","{d.thirty}"];C.YUE_XIANG=["","{yx.shuo}","{yx.jiShuo}","{yx.eMeiXin}","{yx.eMeiXin}","{yx.eMei}","{yx.xi}","{yx.shangXian}","{yx.shangXian}","{yx.jiuYe}","{yx.night}","{yx.night}","{yx.night}","{yx.jianYingTu}","{yx.xiaoWang}","{yx.wang}","{yx.jiWang}","{yx.liDai}","{yx.juDai}","{yx.qinDai}","{yx.gengDai}","{yx.jianKuiTu}","{yx.xiaXian}","{yx.xiaXian}","{yx.youMing}","{yx.youMing}","{yx.eMeiCan}","{yx.eMeiCan}","{yx.can}","{yx.xiao}","{yx.hui}"];C.XIU={"{dz.shen}1":"{xx.bi}","{dz.shen}2":"{xx.yi}","{dz.shen}3":"{xx.ji}","{dz.shen}4":"{xx.kui}","{dz.shen}5":"{xx.gui}","{dz.shen}6":"{xx.di}","{dz.shen}0":"{xx.xu}","{dz.zi}1":"{xx.bi}","{dz.zi}2":"{xx.yi}","{dz.zi}3":"{xx.ji}","{dz.zi}4":"{xx.kui}","{dz.zi}5":"{xx.gui}","{dz.zi}6":"{xx.di}","{dz.zi}0":"{xx.xu}","{dz.chen}1":"{xx.bi}","{dz.chen}2":"{xx.yi}","{dz.chen}3":"{xx.ji}","{dz.chen}4":"{xx.kui}","{dz.chen}5":"{xx.gui}","{dz.chen}6":"{xx.di}","{dz.chen}0":"{xx.xu}","{dz.si}1":"{xx.wei}","{dz.si}2":"{xx.zi}","{dz.si}3":"{xx.zhen}","{dz.si}4":"{xx.dou}","{dz.si}5":"{xx.lou}","{dz.si}6":"{xx.liu}","{dz.si}0":"{xx.fang}","{dz.you}1":"{xx.wei}","{dz.you}2":"{xx.zi}","{dz.you}3":"{xx.zhen}","{dz.you}4":"{xx.dou}","{dz.you}5":"{xx.lou}","{dz.you}6":"{xx.liu}","{dz.you}0":"{xx.fang}","{dz.chou}1":"{xx.wei}","{dz.chou}2":"{xx.zi}","{dz.chou}3":"{xx.zhen}","{dz.chou}4":"{xx.dou}","{dz.chou}5":"{xx.lou}","{dz.chou}6":"{xx.liu}","{dz.chou}0":"{xx.fang}","{dz.yin}1":"{xx.xin}","{dz.yin}2":"{xx.shi}","{dz.yin}3":"{xx.can}","{dz.yin}4":"{xx.jiao}","{dz.yin}5":"{xx.niu}","{dz.yin}6":"{xx.vei}","{dz.yin}0":"{xx.xing}","{dz.wu}1":"{xx.xin}","{dz.wu}2":"{xx.shi}","{dz.wu}3":"{xx.can}","{dz.wu}4":"{xx.jiao}","{dz.wu}5":"{xx.niu}","{dz.wu}6":"{xx.vei}","{dz.wu}0":"{xx.xing}","{dz.xu}1":"{xx.xin}","{dz.xu}2":"{xx.shi}","{dz.xu}3":"{xx.can}","{dz.xu}4":"{xx.jiao}","{dz.xu}5":"{xx.niu}","{dz.xu}6":"{xx.vei}","{dz.xu}0":"{xx.xing}","{dz.hai}1":"{xx.zhang}","{dz.hai}2":"{xx.tail}","{dz.hai}3":"{xx.qiang}","{dz.hai}4":"{xx.jing}","{dz.hai}5":"{xx.kang}","{dz.hai}6":"{xx.nv}","{dz.hai}0":"{xx.mao}","{dz.mao}1":"{xx.zhang}","{dz.mao}2":"{xx.tail}","{dz.mao}3":"{xx.qiang}","{dz.mao}4":"{xx.jing}","{dz.mao}5":"{xx.kang}","{dz.mao}6":"{xx.nv}","{dz.mao}0":"{xx.mao}","{dz.wei}1":"{xx.zhang}","{dz.wei}2":"{xx.tail}","{dz.wei}3":"{xx.qiang}","{dz.wei}4":"{xx.jing}","{dz.wei}5":"{xx.kang}","{dz.wei}6":"{xx.nv}","{dz.wei}0":"{xx.mao}"};C.XIU_LUCK={"{xx.jiao}":"{s.goodLuck}","{xx.kang}":"{s.badLuck}","{xx.di}":"{s.badLuck}","{xx.fang}":"{s.goodLuck}","{xx.xin}":"{s.badLuck}","{xx.tail}":"{s.goodLuck}","{xx.ji}":"{s.goodLuck}","{xx.dou}":"{s.goodLuck}","{xx.niu}":"{s.badLuck}","{xx.nv}":"{s.badLuck}","{xx.xu}":"{s.badLuck}","{xx.wei}":"{s.badLuck}","{xx.shi}":"{s.goodLuck}","{xx.qiang}":"{s.goodLuck}","{xx.kui}":"{s.badLuck}","{xx.lou}":"{s.goodLuck}","{xx.vei}":"{s.goodLuck}","{xx.mao}":"{s.badLuck}","{xx.bi}":"{s.goodLuck}","{xx.zi}":"{s.badLuck}","{xx.can}":"{s.goodLuck}","{xx.jing}":"{s.goodLuck}","{xx.gui}":"{s.badLuck}","{xx.liu}":"{s.badLuck}","{xx.xing}":"{s.badLuck}","{xx.zhang}":"{s.goodLuck}","{xx.yi}":"{s.badLuck}","{xx.zhen}":"{s.goodLuck}"};C.XIU_SONG={"{xx.jiao}":"角星造作主荣昌,外进田财及女郎,嫁娶婚姻出贵子,文人及第见君王,惟有埋葬不可用,三年之后主瘟疫,起工修筑坟基地,堂前立见主人凶。","{xx.kang}":"亢星造作长房当,十日之中主有殃,田地消磨官失职,接运定是虎狼伤,嫁娶婚姻用此日,儿孙新妇守空房,埋葬若还用此日,当时害祸主重伤。","{xx.di}":"氐星造作主灾凶,费尽田园仓库空,埋葬不可用此日,悬绳吊颈祸重重,若是婚姻离别散,夜招浪子入房中,行船必定遭沉没,更生聋哑子孙穷。","{xx.fang}":"房星造作田园进,钱财牛马遍山岗,更招外处田庄宅,荣华富贵福禄康,埋葬若然用此日,高官进职拜君王,嫁娶嫦娥至月殿,三年抱子至朝堂。","{xx.xin}":"心星造作大为凶,更遭刑讼狱囚中,忤逆官非宅产退,埋葬卒暴死相从,婚姻若是用此日,子死儿亡泪满胸,三年之内连遭祸,事事教君没始终。","{xx.tail}":"尾星造作主天恩,富贵荣华福禄增,招财进宝兴家宅,和合婚姻贵子孙,埋葬若能依此日,男清女正子孙兴,开门放水招田宅,代代公侯远播名。","{xx.ji}":"箕星造作主高强,岁岁年年大吉昌,埋葬修坟大吉利,田蚕牛马遍山岗,开门放水招田宅,箧满金银谷满仓,福荫高官加禄位,六亲丰禄乐安康。","{xx.dou}":"斗星造作主招财,文武官员位鼎台,田宅家财千万进,坟堂修筑贵富来,开门放水招牛马,旺蚕男女主和谐,遇此吉宿来照护,时支福庆永无灾。","{xx.niu}":"牛星造作主灾危,九横三灾不可推,家宅不安人口退,田蚕不利主人衰,嫁娶婚姻皆自损,金银财谷渐无之,若是开门并放水,牛猪羊马亦伤悲。","{xx.nv}":"女星造作损婆娘,兄弟相嫌似虎狼,埋葬生灾逢鬼怪,颠邪疾病主瘟惶,为事遭官财失散,泻利留连不可当,开门放水用此日,全家财散主离乡。","{xx.xu}":"虚星造作主灾殃,男女孤眠不一双,内乱风声无礼节,儿孙媳妇伴人床,开门放水遭灾祸,虎咬蛇伤又卒亡,三三五五连年病,家破人亡不可当。","{xx.wei}":"危星不可造高楼,自遭刑吊见血光,三年孩子遭水厄,后生出外永不还,埋葬若还逢此日,周年百日取高堂,三年两载一悲伤,开门放水到官堂。","{xx.shi}":"室星修造进田牛,儿孙代代近王侯,家贵荣华天上至,寿如彭祖八千秋,开门放水招财帛,和合婚姻生贵儿,埋葬若能依此日,门庭兴旺福无休。","{xx.qiang}":"壁星造作主增财,丝蚕大熟福滔天,奴婢自来人口进,开门放水出英贤,埋葬招财官品进,家中诸事乐陶然,婚姻吉利主贵子,早播名誉著祖鞭。","{xx.kui}":"奎星造作得祯祥,家内荣和大吉昌,若是埋葬阴卒死,当年定主两三伤,看看军令刑伤到,重重官事主瘟惶,开门放水遭灾祸,三年两次损儿郎。","{xx.lou}":"娄星修造起门庭,财旺家和事事兴,外进钱财百日进,一家兄弟播高名,婚姻进益生贵子,玉帛金银箱满盈,放水开门皆吉利,男荣女贵寿康宁。","{xx.vei}":"胃星造作事如何,家贵荣华喜气多,埋葬贵临官禄位,夫妇齐眉永保康,婚姻遇此家富贵,三灾九祸不逢他,从此门前多吉庆,儿孙代代拜金阶。","{xx.mao}":"昴星造作进田牛,埋葬官灾不得休,重丧二日三人死,尽卖田园不记增,开门放水招灾祸,三岁孩儿白了头,婚姻不可逢此日,死别生离是可愁。","{xx.bi}":"毕星造作主光前,买得田园有余钱,埋葬此日添官职,田蚕大熟永丰年,开门放水多吉庆,合家人口得安然,婚姻若得逢此日,生得孩儿福寿全。","{xx.zi}":"觜星造作有徒刑,三年必定主伶丁,埋葬卒死多因此,取定寅年使杀人,三丧不止皆由此,一人药毒二人身,家门田地皆退败,仓库金银化作尘。","{xx.can}":"参星造作旺人家,文星照耀大光华,只因造作田财旺,埋葬招疾哭黄沙,开门放水加官职,房房子孙见田加,婚姻许遁遭刑克,男女朝开幕落花。","{xx.jing}":"井星造作旺蚕田,金榜题名第一光,埋葬须防惊卒死,狂颠风疾入黄泉,开门放水招财帛,牛马猪羊旺莫言,贵人田塘来入宅,儿孙兴旺有余钱。","{xx.gui}":"鬼星起造卒人亡,堂前不见主人郎,埋葬此日官禄至,儿孙代代近君王,开门放水须伤死,嫁娶夫妻不久长,修土筑墙伤产女,手扶双女泪汪汪。","{xx.liu}":"柳星造作主遭官,昼夜偷闭不暂安,埋葬瘟惶多疾病,田园退尽守冬寒,开门放水遭聋瞎,腰驼背曲似弓弯,更有棒刑宜谨慎,妇人随客走盘桓。","{xx.xing}":"星宿日好造新房,进职加官近帝王,不可埋葬并放水,凶星临位女人亡,生离死别无心恋,要自归休别嫁郎,孔子九曲殊难度,放水开门天命伤。","{xx.zhang}":"张星日好造龙轩,年年并见进庄田,埋葬不久升官职,代代为官近帝前,开门放水招财帛,婚姻和合福绵绵,田蚕人满仓库满,百般顺意自安然。","{xx.yi}":"翼星不利架高堂,三年二载见瘟惶,埋葬若还逢此日,子孙必定走他乡,婚姻此日不宜利,归家定是不相当,开门放水家须破,少女恋花贪外郎。","{xx.zhen}":"轸星临水造龙宫,代代为官受皇封,富贵荣华增寿禄,库满仓盈自昌隆,埋葬文昌来照助,宅舍安宁不见凶,更有为官沾帝宠,婚姻龙子入龙宫。"};C.ZHENG={"{xx.jiao}":"{wx.mu}","{xx.jing}":"{wx.mu}","{xx.kui}":"{wx.mu}","{xx.dou}":"{wx.mu}","{xx.kang}":"{wx.jin}","{xx.gui}":"{wx.jin}","{xx.lou}":"{wx.jin}","{xx.niu}":"{wx.jin}","{xx.di}":"{wx.tu}","{xx.liu}":"{wx.tu}","{xx.vei}":"{wx.tu}","{xx.nv}":"{wx.tu}","{xx.fang}":"{wx.ri}","{xx.xing}":"{wx.ri}","{xx.mao}":"{wx.ri}","{xx.xu}":"{wx.ri}","{xx.xin}":"{wx.yue}","{xx.zhang}":"{wx.yue}","{xx.bi}":"{wx.yue}","{xx.wei}":"{wx.yue}","{xx.tail}":"{wx.huo}","{xx.yi}":"{wx.huo}","{xx.zi}":"{wx.huo}","{xx.shi}":"{wx.huo}","{xx.ji}":"{wx.shui}","{xx.zhen}":"{wx.shui}","{xx.can}":"{wx.shui}","{xx.qiang}":"{wx.shui}"};C.ANIMAL={"{xx.jiao}":"{dw.jiao}","{xx.dou}":"{dw.xie}","{xx.kui}":"{dw.lang}","{xx.jing}":"{dw.han}","{xx.kang}":"{dw.long}","{xx.niu}":"{dw.niu}","{xx.lou}":"{dw.gou}","{xx.gui}":"{dw.yang}","{xx.nv}":"{dw.fu}","{xx.di}":"{dw.he}","{xx.vei}":"{dw.zhi}","{xx.liu}":"{dw.zhang}","{xx.fang}":"{dw.tu}","{xx.xu}":"{dw.shu}","{xx.mao}":"{dw.ji}","{xx.xing}":"{dw.ma}","{xx.xin}":"{dw.huLi}","{xx.wei}":"{dw.yan}","{xx.bi}":"{dw.wu}","{xx.zhang}":"{dw.lu}","{xx.tail}":"{dw.hu}","{xx.shi}":"{dw.zhu}","{xx.zi}":"{dw.hou}","{xx.yi}":"{dw.she}","{xx.ji}":"{dw.bao}","{xx.qiang}":"{dw.xu}","{xx.can}":"{dw.yuan}","{xx.zhen}":"{dw.yin}"};C.GONG={"{xx.jiao}":"{ps.dong}","{xx.jing}":"{ps.nan}","{xx.kui}":"{ps.xi}","{xx.dou}":"{ps.bei}","{xx.kang}":"{ps.dong}","{xx.gui}":"{ps.nan}","{xx.lou}":"{ps.xi}","{xx.niu}":"{ps.bei}","{xx.di}":"{ps.dong}","{xx.liu}":"{ps.nan}","{xx.vei}":"{ps.xi}","{xx.nv}":"{ps.bei}","{xx.fang}":"{ps.dong}","{xx.xing}":"{ps.nan}","{xx.mao}":"{ps.xi}","{xx.xu}":"{ps.bei}","{xx.xin}":"{ps.dong}","{xx.zhang}":"{ps.nan}","{xx.bi}":"{ps.xi}","{xx.wei}":"{ps.bei}","{xx.tail}":"{ps.dong}","{xx.yi}":"{ps.nan}","{xx.zi}":"{ps.xi}","{xx.shi}":"{ps.bei}","{xx.ji}":"{ps.dong}","{xx.zhen}":"{ps.nan}","{xx.can}":"{ps.xi}","{xx.qiang}":"{ps.bei}"};C.SHOU={"{ps.dong}":"{sn.qingLong}","{ps.nan}":"{sn.zhuQue}","{ps.xi}":"{sn.baiHu}","{ps.bei}":"{sn.xuanWu}"};C.FESTIVAL={"1-1":"{jr.chunJie}","1-15":"{jr.yuanXiao}","2-2":"{jr.longTou}","5-5":"{jr.duanWu}","7-7":"{jr.qiXi}","8-15":"{jr.zhongQiu}","9-9":"{jr.chongYang}","12-8":"{jr.laBa}"};C.OTHER_FESTIVAL={"1-4":["接神日"],"1-5":["隔开日"],"1-7":["人日"],"1-8":["谷日","顺星节"],"1-9":["天日"],"1-10":["地日"],"1-20":["天穿节"],"1-25":["填仓节"],"1-30":["正月晦"],"2-1":["中和节"],"2-2":["社日节"],"3-3":["上巳节"],"5-20":["分龙节"],"5-25":["会龙节"],"6-6":["天贶节"],"6-24":["观莲节"],"6-25":["五谷母节"],"7-15":["中元节"],"7-22":["财神节"],"7-29":["地藏节"],"8-1":["天灸日"],"10-1":["寒衣节"],"10-10":["十成节"],"10-15":["下元节"],"12-7":["驱傩日"],"12-16":["尾牙"],"12-24":["祭灶日"]};C.CHONG=["{dz.wu}","{dz.wei}","{dz.shen}","{dz.you}","{dz.xu}","{dz.hai}","{dz.zi}","{dz.chou}","{dz.yin}","{dz.mao}","{dz.chen}","{dz.si}"];C.CHONG_GAN=["{tg.wu}","{tg.ji}","{tg.geng}","{tg.xin}","{tg.ren}","{tg.gui}","{tg.jia}","{tg.yi}","{tg.bing}","{tg.ding}"];C.CHONG_GAN_TIE=["{tg.ji}","{tg.wu}","{tg.xin}","{tg.geng}","{tg.gui}","{tg.ren}","{tg.yi}","{tg.jia}","{tg.ding}","{tg.bing}"];C.CHONG_GAN_4=["{tg.geng}","{tg.xin}","{tg.ren}","{tg.gui}","","","{tg.jia}","{tg.yi}","{tg.bing}","{tg.ding}"];C.HE_GAN_5=["{tg.ji}","{tg.geng}","{tg.xin}","{tg.ren}","{tg.gui}","{tg.jia}","{tg.yi}","{tg.bing}","{tg.ding}","{tg.wu}"];C.HE_ZHI_6=["{dz.chou}","{dz.zi}","{dz.hai}","{dz.xu}","{dz.you}","{dz.shen}","{dz.wei}","{dz.wu}","{dz.si}","{dz.chen}","{dz.mao}","{dz.yin}"];C.SHA={"{dz.zi}":"{ps.nan}","{dz.chou}":"{ps.dong}","{dz.yin}":"{ps.bei}","{dz.mao}":"{ps.xi}","{dz.chen}":"{ps.nan}","{dz.si}":"{ps.dong}","{dz.wu}":"{ps.bei}","{dz.wei}":"{ps.xi}","{dz.shen}":"{ps.nan}","{dz.you}":"{ps.dong}","{dz.xu}":"{ps.bei}","{dz.hai}":"{ps.xi}"};C.POSITION_DESC={"{bg.kan}":"{ps.zhengBei}","{bg.gen}":"{ps.dongBei}","{bg.zhen}":"{ps.zhengDong}","{bg.xun}":"{ps.dongNan}","{bg.li}":"{ps.zhengNan}","{bg.kun}":"{ps.xiNan}","{bg.dui}":"{ps.zhengXi}","{bg.qian}":"{ps.xiBei}","{ps.center}":"{ps.zhong}"};C.NAYIN={"{jz.jiaZi}":"{ny.haiZhong}{wx.jin}","{jz.jiaWu}":"{ny.shaZhong}{wx.jin}","{jz.bingYin}":"{ny.luZhong}{wx.huo}","{jz.bingShen}":"{ny.shanXia}{wx.huo}","{jz.wuChen}":"{ny.daLin}{wx.mu}","{jz.wuXu}":"{ny.pingDi}{wx.mu}","{jz.gengWu}":"{ny.luPang}{wx.tu}","{jz.gengZi}":"{ny.biShang}{wx.tu}","{jz.renShen}":"{ny.jianFeng}{wx.jin}","{jz.renYin}":"{ny.jinBo}{wx.jin}","{jz.jiaXu}":"{ny.shanTou}{wx.huo}","{jz.jiaChen}":"{ny.fuDeng}{wx.huo}","{jz.bingZi}":"{ny.jianXia}{wx.shui}","{jz.bingWu}":"{ny.tianHe}{wx.shui}","{jz.wuYin}":"{ny.chengTou}{wx.tu}","{jz.wuShen}":"{ny.daYi}{wx.tu}","{jz.gengChen}":"{ny.baiLa}{wx.jin}","{jz.gengXu}":"{ny.chaiChuan}{wx.jin}","{jz.renWu}":"{ny.yangLiu}{wx.mu}","{jz.renZi}":"{ny.sangZhe}{wx.mu}","{jz.jiaShen}":"{ny.quanZhong}{wx.shui}","{jz.jiaYin}":"{ny.daXi}{wx.shui}","{jz.bingXu}":"{ny.wuShang}{wx.tu}","{jz.bingChen}":"{ny.shaZhong}{wx.tu}","{jz.wuZi}":"{ny.piLi}{wx.huo}","{jz.wuWu}":"{ny.tianShang}{wx.huo}","{jz.gengYin}":"{ny.songBo}{wx.mu}","{jz.gengShen}":"{ny.shiLiu}{wx.mu}","{jz.renChen}":"{ny.changLiu}{wx.shui}","{jz.renXu}":"{ny.daHai}{wx.shui}","{jz.yiChou}":"{ny.haiZhong}{wx.jin}","{jz.yiWei}":"{ny.shaZhong}{wx.jin}","{jz.dingMao}":"{ny.luZhong}{wx.huo}","{jz.dingYou}":"{ny.shanXia}{wx.huo}","{jz.jiSi}":"{ny.daLin}{wx.mu}","{jz.jiHai}":"{ny.pingDi}{wx.mu}","{jz.xinWei}":"{ny.luPang}{wx.tu}","{jz.xinChou}":"{ny.biShang}{wx.tu}","{jz.guiYou}":"{ny.jianFeng}{wx.jin}","{jz.guiMao}":"{ny.jinBo}{wx.jin}","{jz.yiHai}":"{ny.shanTou}{wx.huo}","{jz.yiSi}":"{ny.fuDeng}{wx.huo}","{jz.dingChou}":"{ny.jianXia}{wx.shui}","{jz.dingWei}":"{ny.tianHe}{wx.shui}","{jz.jiMao}":"{ny.chengTou}{wx.tu}","{jz.jiYou}":"{ny.daYi}{wx.tu}","{jz.xinSi}":"{ny.baiLa}{wx.jin}","{jz.xinHai}":"{ny.chaiChuan}{wx.jin}","{jz.guiWei}":"{ny.yangLiu}{wx.mu}","{jz.guiChou}":"{ny.sangZhe}{wx.mu}","{jz.yiYou}":"{ny.quanZhong}{wx.shui}","{jz.yiMao}":"{ny.daXi}{wx.shui}","{jz.dingHai}":"{ny.wuShang}{wx.tu}","{jz.dingSi}":"{ny.shaZhong}{wx.tu}","{jz.jiChou}":"{ny.piLi}{wx.huo}","{jz.jiWei}":"{ny.tianShang}{wx.huo}","{jz.xinMao}":"{ny.songBo}{wx.mu}","{jz.xinYou}":"{ny.shiLiu}{wx.mu}","{jz.guiSi}":"{ny.changLiu}{wx.shui}","{jz.guiHai}":"{ny.daHai}{wx.shui}"};C.WU_XING_GAN={"{tg.jia}":"{wx.mu}","{tg.yi}":"{wx.mu}","{tg.bing}":"{wx.huo}","{tg.ding}":"{wx.huo}","{tg.wu}":"{wx.tu}","{tg.ji}":"{wx.tu}","{tg.geng}":"{wx.jin}","{tg.xin}":"{wx.jin}","{tg.ren}":"{wx.shui}","{tg.gui}":"{wx.shui}"};C.WU_XING_ZHI={"{dz.yin}":"{wx.mu}","{dz.mao}":"{wx.mu}","{dz.si}":"{wx.huo}","{dz.wu}":"{wx.huo}","{dz.chen}":"{wx.tu}","{dz.chou}":"{wx.tu}","{dz.xu}":"{wx.tu}","{dz.wei}":"{wx.tu}","{dz.shen}":"{wx.jin}","{dz.you}":"{wx.jin}","{dz.hai}":"{wx.shui}","{dz.zi}":"{wx.shui}"};C.SHI_SHEN={"{tg.jia}{tg.jia}":"{ss.biJian}","{tg.jia}{tg.yi}":"{ss.jieCai}","{tg.jia}{tg.bing}":"{ss.shiShen}","{tg.jia}{tg.ding}":"{ss.shangGuan}","{tg.jia}{tg.wu}":"{ss.pianCai}","{tg.jia}{tg.ji}":"{ss.zhengCai}","{tg.jia}{tg.geng}":"{ss.qiSha}","{tg.jia}{tg.xin}":"{ss.zhengGuan}","{tg.jia}{tg.ren}":"{ss.pianYin}","{tg.jia}{tg.gui}":"{ss.zhengYin}","{tg.yi}{tg.yi}":"{ss.biJian}","{tg.yi}{tg.jia}":"{ss.jieCai}","{tg.yi}{tg.ding}":"{ss.shiShen}","{tg.yi}{tg.bing}":"{ss.shangGuan}","{tg.yi}{tg.ji}":"{ss.pianCai}","{tg.yi}{tg.wu}":"{ss.zhengCai}","{tg.yi}{tg.xin}":"{ss.qiSha}","{tg.yi}{tg.geng}":"{ss.zhengGuan}","{tg.yi}{tg.gui}":"{ss.pianYin}","{tg.yi}{tg.ren}":"{ss.zhengYin}","{tg.bing}{tg.bing}":"{ss.biJian}","{tg.bing}{tg.ding}":"{ss.jieCai}","{tg.bing}{tg.wu}":"{ss.shiShen}","{tg.bing}{tg.ji}":"{ss.shangGuan}","{tg.bing}{tg.geng}":"{ss.pianCai}","{tg.bing}{tg.xin}":"{ss.zhengCai}","{tg.bing}{tg.ren}":"{ss.qiSha}","{tg.bing}{tg.gui}":"{ss.zhengGuan}","{tg.bing}{tg.jia}":"{ss.pianYin}","{tg.bing}{tg.yi}":"{ss.zhengYin}","{tg.ding}{tg.ding}":"{ss.biJian}","{tg.ding}{tg.bing}":"{ss.jieCai}","{tg.ding}{tg.ji}":"{ss.shiShen}","{tg.ding}{tg.wu}":"{ss.shangGuan}","{tg.ding}{tg.xin}":"{ss.pianCai}","{tg.ding}{tg.geng}":"{ss.zhengCai}","{tg.ding}{tg.gui}":"{ss.qiSha}","{tg.ding}{tg.ren}":"{ss.zhengGuan}","{tg.ding}{tg.yi}":"{ss.pianYin}","{tg.ding}{tg.jia}":"{ss.zhengYin}","{tg.wu}{tg.wu}":"{ss.biJian}","{tg.wu}{tg.ji}":"{ss.jieCai}","{tg.wu}{tg.geng}":"{ss.shiShen}","{tg.wu}{tg.xin}":"{ss.shangGuan}","{tg.wu}{tg.ren}":"{ss.pianCai}","{tg.wu}{tg.gui}":"{ss.zhengCai}","{tg.wu}{tg.jia}":"{ss.qiSha}","{tg.wu}{tg.yi}":"{ss.zhengGuan}","{tg.wu}{tg.bing}":"{ss.pianYin}","{tg.wu}{tg.ding}":"{ss.zhengYin}","{tg.ji}{tg.ji}":"{ss.biJian}","{tg.ji}{tg.wu}":"{ss.jieCai}","{tg.ji}{tg.xin}":"{ss.shiShen}","{tg.ji}{tg.geng}":"{ss.shangGuan}","{tg.ji}{tg.gui}":"{ss.pianCai}","{tg.ji}{tg.ren}":"{ss.zhengCai}","{tg.ji}{tg.yi}":"{ss.qiSha}","{tg.ji}{tg.jia}":"{ss.zhengGuan}","{tg.ji}{tg.ding}":"{ss.pianYin}","{tg.ji}{tg.bing}":"{ss.zhengYin}","{tg.geng}{tg.geng}":"{ss.biJian}","{tg.geng}{tg.xin}":"{ss.jieCai}","{tg.geng}{tg.ren}":"{ss.shiShen}","{tg.geng}{tg.gui}":"{ss.shangGuan}","{tg.geng}{tg.jia}":"{ss.pianCai}","{tg.geng}{tg.yi}":"{ss.zhengCai}","{tg.geng}{tg.bing}":"{ss.qiSha}","{tg.geng}{tg.ding}":"{ss.zhengGuan}","{tg.geng}{tg.wu}":"{ss.pianYin}","{tg.geng}{tg.ji}":"{ss.zhengYin}","{tg.xin}{tg.xin}":"{ss.biJian}","{tg.xin}{tg.geng}":"{ss.jieCai}","{tg.xin}{tg.gui}":"{ss.shiShen}","{tg.xin}{tg.ren}":"{ss.shangGuan}","{tg.xin}{tg.yi}":"{ss.pianCai}","{tg.xin}{tg.jia}":"{ss.zhengCai}","{tg.xin}{tg.ding}":"{ss.qiSha}","{tg.xin}{tg.bing}":"{ss.zhengGuan}","{tg.xin}{tg.ji}":"{ss.pianYin}","{tg.xin}{tg.wu}":"{ss.zhengYin}","{tg.ren}{tg.ren}":"{ss.biJian}","{tg.ren}{tg.gui}":"{ss.jieCai}","{tg.ren}{tg.jia}":"{ss.shiShen}","{tg.ren}{tg.yi}":"{ss.shangGuan}","{tg.ren}{tg.bing}":"{ss.pianCai}","{tg.ren}{tg.ding}":"{ss.zhengCai}","{tg.ren}{tg.wu}":"{ss.qiSha}","{tg.ren}{tg.ji}":"{ss.zhengGuan}","{tg.ren}{tg.geng}":"{ss.pianYin}","{tg.ren}{tg.xin}":"{ss.zhengYin}","{tg.gui}{tg.gui}":"{ss.biJian}","{tg.gui}{tg.ren}":"{ss.jieCai}","{tg.gui}{tg.yi}":"{ss.shiShen}","{tg.gui}{tg.jia}":"{ss.shangGuan}","{tg.gui}{tg.ding}":"{ss.pianCai}","{tg.gui}{tg.bing}":"{ss.zhengCai}","{tg.gui}{tg.ji}":"{ss.qiSha}","{tg.gui}{tg.wu}":"{ss.zhengGuan}","{tg.gui}{tg.xin}":"{ss.pianYin}","{tg.gui}{tg.geng}":"{ss.zhengYin}"};C.ZHI_HIDE_GAN={"{dz.zi}":["{tg.gui}"],"{dz.chou}":["{tg.ji}","{tg.gui}","{tg.xin}"],"{dz.yin}":["{tg.jia}","{tg.bing}","{tg.wu}"],"{dz.mao}":["{tg.yi}"],"{dz.chen}":["{tg.wu}","{tg.yi}","{tg.gui}"],"{dz.si}":["{tg.bing}","{tg.geng}","{tg.wu}"],"{dz.wu}":["{tg.ding}","{tg.ji}"],"{dz.wei}":["{tg.ji}","{tg.ding}","{tg.yi}"],"{dz.shen}":["{tg.geng}","{tg.ren}","{tg.wu}"],"{dz.you}":["{tg.xin}"],"{dz.xu}":["{tg.wu}","{tg.xin}","{tg.ding}"],"{dz.hai}":["{tg.ren}","{tg.jia}"]};C.YI_JI=["{yj.jiSi}","{yj.qiFu}","{yj.qiuSi}","{yj.kaiGuang}","{yj.suHui}","{yj.qiJiao}","{yj.zhaiJiao}","{yj.muYu}","{yj.chouShen}","{yj.zaoMiao}","{yj.siZhao}","{yj.fenXiang}","{yj.xieTu}","{yj.chuHuo}","{yj.diaoKe}","{yj.jiaQu}","{yj.DingHun}","{yj.naCai}","{yj.wenMing}","{yj.naXu}","{yj.guiNing}","{yj.anChuang}","{yj.heZhang}","{yj.guanJi}","{yj.dingMeng}","{yj.jinRenKou}","{yj.caiYi}","{yj.wanMian}","{yj.kaiRong}","{yj.xiuFen}","{yj.qiZuan}","{yj.poTu}","{yj.anZang}","{yj.liBei}","{yj.chengFu}","{yj.chuFu}","{yj.kaiShengFen}","{yj.heShouMu}","{yj.ruLian}","{yj.yiJiu}","{yj.puDu}","{yj.ruZhai}","{yj.anXiang}","{yj.anMen}","{yj.xiuZao}","{yj.qiJi}","{yj.dongTu}","{yj.shangLiang}","{yj.shuZhu}","{yj.kaiJing}","{yj.zuoBei}","{yj.chaiXie}","{yj.poWu}","{yj.huaiYuan}","{yj.buYuan}","{yj.faMuZuoLiang}","{yj.zuoZhao}","{yj.jieChu}","{yj.kaiZhuYan}","{yj.chuanPing}","{yj.gaiWuHeJi}","{yj.kaiCe}","{yj.zaoCang}","{yj.saiXue}","{yj.pingZhi}","{yj.zaoQiao}","{yj.zuoCe}","{yj.zhuDi}","{yj.kaiChi}","{yj.faMu}","{yj.kaiQu}","{yj.jueJing}","{yj.saoShe}","{yj.fangShui}","{yj.zaoWu}","{yj.heJi}","{yj.zaoChuChou}","{yj.xiuMen}","{yj.dingSang}","{yj.zuoLiang}","{yj.xiuShi}","{yj.jiaMa}","{yj.kaiShi}","{yj.guaBian}","{yj.naChai}","{yj.qiuCai}","{yj.kaiCang}","{yj.maiChe}","{yj.zhiChan}","{yj.guYong}","{yj.chuHuoCai}","{yj.anJiXie}","{yj.zaoCheQi}","{yj.jingLuo}","{yj.yunNiang}","{yj.zuoRan}","{yj.guZhu}","{yj.zaoChuan}","{yj.geMi}","{yj.zaiZhong}","{yj.quYu}","{yj.jieWang}","{yj.muYang}","{yj.anDuiWei}","{yj.xiYi}","{yj.ruXue}","{yj.liFa}","{yj.tanBing}","{yj.jianGui}","{yj.chengChuan}","{yj.duShui}","{yj.zhenJiu}","{yj.chuXing}","{yj.yiXi}","{yj.fenJu}","{yj.TiTou}","{yj.zhengShou}","{yj.naChu}","{yj.buZhuo}","{yj.tianLie}","{yj.jiaoNiuMa}","{yj.huiQinYou}","{yj.fuRen}","{yj.qiuYi}","{yj.zhiBing}","{yj.ciSong}","{yj.qiJiDongTu}","{yj.poWuHuaiYuan}","{yj.gaiWu}","{yj.zaoCangKu}","{yj.liQuanJiaoYi}","{yj.jiaoYi}","{yj.liQuan}","{yj.anJi}","{yj.huiYou}","{yj.qiuYiLiaoBing}","{yj.zhuShi}","{yj.yuShi}","{yj.xingSang}","{yj.duanYi}","{yj.guiXiu}","{s.none}"];C.DAY_YI_JI="30=192531010D:838454151A4C200C1E23221D212726,030F522E1F00=2430000C18:8319000776262322200C1E1D,06292C2E1F04=32020E1A26:7917155B0001025D,0F522E38201D=162E3A0A22:790F181113332C2E2D302F1554,7001203810=0E1A263202:79026A17657603,522E201F05=0D19250131:7911192C2E302F00030401060F1571292A75,707C20522F=0C18243000:4F2C2E2B383F443D433663,0F01478A20151D=0E1A320226:3840,0001202B892F=14202C3808:3807504089,8829=0E1A263202:383940,6370018A75202B454F6605=32020E1A26:38394089,0001202B22=16223A0A2E:384C,8A2020=2B3707131F:2C2E5B000739337C38802D44484C2425201F1E272621,5229701535=121E2A3606:2C2E2D2B156343364C,0F4729710D708A20036A1904=0D19250131:5040262789,0F7129033B=202C380814:5040000738,0F7D7C584F012063452B35=1A2632020E:50400089,8813=1A2632020E:69687011180F791966762627201E,0352292E8034=182430000C:291503000D332E53261F2075,0F5238584F450B=000C182430:297170192C2E2D2F2B3E363F4C,0F521563200103470B=131F2B3707:297115030102195283840D332C2E,0F1F5863201D8A02=222E3A0A16:261F1E20232289,52290058363F32=16222E3A0A:261F201E232289,8D39=0D19310125:262322271E201D21,52450F4F09=0D19253101:262322271E202189,1F4526=16222E3A0A:262322271F1E20,712906=0F1B273303:17262322274050,80387C6B2C=0915212D39:1707702C2E71291F20,0F52000106111D15=16222E3A0A:170007386A7448363F261F1E,030F79636F2026=030F1B2733:1784832C2E5B26201F,0F010D2913=182430000C:175447440D15838477656A49,2B2E1F8A202228=101C283404:70504C7889,8803=0D19250131:700F181126151E20001A7919,8D2F=0915212D39:705283845B0D2F71,0F202E4106=3606121E2A:70786289,06802E1F23=1824000C30:70076A363F,292017=202C380814:700718111A302F717566,0F2B2E2026=3B0B17232F:70545283842E71291A7933192A5D5A5040,090C384F45208A1D6B38=212D390915:7039170F45513A2C2E7129242526271F201D,00010352153A=15212D3909:703911170E2C2E2D2F4B15712952633D,092B8A2027=010D192531:702D155483840F63262720,53292F017D4F38442B2E1F4717=16222E3A0A:705C4C39171A4F0E7971295B5248,0F2E1F1D37=1A2632020E:2E260F27201F,523815292F1A22=0E1A260232:64262322271F2021,0F2F293822=2F3B0B1723:161A0F1526271F4C,586103473818=2430000C18:161A7889,292E1F0F386131=17232F3B0B:04795B3F651A5D,0F5201062016=14202C3808:04170F79195D1A637566363F76,01522E8A2039=132B37071F:0470170F191A134C8384662426232227201E,8D08=0D19253101:040370181123220F1326271E2021,29153B=0D19310125:040307177938494C,0F26207017=0E2632021A:0403010218111A17332C2E2D2B15713E6575,45382064291D=142C380820:04033918110F0D2C2E7129332D2B72528384547566,8D1C=1830000C24:040318111A17332C15290D200C7A,4745063835=0F2733031B:040318111A16175B795452848315302F6563395D,387029202E=14202C3808:04031975363F6366,0F5401202C5283842E2F1E=0E1A320226:0403080618111A16332E2F152A09537919702C5445490D75072B,8063203820=182430000C:04067033392C7161262322271E1D210C,8D2F=101C283404:3F4889,881C=2733030F1B:3F74397677658988,0F3847201D=293505111D:3F8B657789,0F2029702E7D35=111D293505:3F8B6589,1F200A=020E1A2632:3F656477,0F2B71292005=111D290535:3F6589,8810=0F1B273303:3F88,2B38200F1C=293505111D:0F83843D363F776424,15462F2C520329712A=0F1B273303:0F17795B54838458,52807C3811=121E2A3606:0F172C2E387129363F7566512D4E4461,01034752203A=172F3B0B23:0F171511793F76584C,0347200C1D20=2D39091521:0F175B3975660745514F2B4825201E211D,010352292E2E=0F1B273303:0F170070792C2E261F,040341232228=05111D2935:0F1700707129385C363F3D1F1E232226,80412B202F14=14202C3808:0F17000728705448757A,522E1F15562F05=30000C1824:0F17000102061979454F3A15477677,241F8A2021=2F3B0B1723:0F17000102060370392E52838453331F,452F2C266A79292B203810=0C18243000:0F170001020E032A70692C2E302F802D2B0D7129474C201F2322,5211183809615D34=1A2632020E:0F171170792F5B1566770001032C2B802D,29387C207134=14202C3808:0F0D33000103452E528384297115752620,63386F7014=15212D3909:0F7045332C2E71201F1D21,4701155229530327=101C283404:0F70161715232238838426271F20,7D035219=121E2A3606:0F705B0004037C5D15653F1F26,522B473809=131F2B0737:0F705215261E20,012E1F25=182430000C:0F707B7C00012F75,52201B=2531010D19:0F706A151E201D528384544466,47010C2E292F2C3820=14202C3808:0F707500261E20,382E1F05=3606121E2A:0F161A17452F0D33712C2E2B5443633F,150170208A0327=0E1A263202:0F150370002E0D3979528384532971331F1E20,477D0D=06121E2A36:0F5B8370000102060403161A494447,386A418A201A=17232F3B0B:0F03700D332C2E2971152F52838463,01004547380C26=101C283404:0F03700D33195284835329711563,01260038206B0E=131F2B3707:0F03706A4F0D332C528384532E29711563,4500750F=131F2B3707:0F0370010239332E2C19528384532971156375262720,8D18=17232F3B0B:0F0370390D332C192E2971637547202322,581528=0E1A263202:0F0302791566046F,29710D722A38528384202E4530=0E1A263202:0F030102392E15634447001F1E,293845200D707538=1E2A360612:0F0300017039712952542D2C302F80380D2A363F3349483E616320,1118150C1F2E20=33030F1B27:0F03000102700D29713963451F0C20,528338542F15806128=121E2A3606:0F030001027039452971150D332C2F6327,2052838403=2C38081420:0F030001022A0D3945297115528384637020,476A382E1F4426=010D192531:0F03390D332C1929711563261D2E2322,382000521118750C706B15=131F2B3707:0F033915666A52261E272048,382E2F6329712C0114=0D19253101:0F52838403700D332C29712E1F27201E2322,1545017505=131F2B3707:0F528400012E7129,092026=3707131F2B:0F528471295B795D2B155333565A446375661F201E272621,00016B0C4113=14202C3808:0F280001363F8B4326232220,2E1F47032F7D35=16222E3A0A:0F0211195465756679,2F384570202B6A10=15212D3909:0F0102700D332C2E2F0319528384531529716345261F2322,8D32=101C283404:0F0102037039330D5284832971152E1F0C,0026206B37=16222E3A0A:0F003854,20521D2106=020E1A2632:0F00175058,5D6B80382E16=1B2733030F:0F00701784831952712C2E1526271F,033806201F=2B3707131F:0F00701A17830E544C5C78,7129632E1F38208A452F16=15212D3909:0F00040370396A742E15444948,458A384F2021=16222E3A0A:0F005B261F20,2E2F1D=2531010D19:0F0003450D3329712C2E2F1575,528A63705A20587D7C12=17232F3B0B:0F00030D70332C2E3952838453542971156375,6B2019=1B2733030F:0F000301020D297115332E1F0C,165220262E=121E2A3606:0F00030102700D332E2C192971155383846375261F1E20,8D1F=33030F1B27:0F00030102700D19297115332C2B535448,2E45208A00=2632020E1A:0F00030102705283842E544779,2920454F754C3836=16222E3A0A:0F0052037029710D332C15,7545584F8A201D2121=121E2A3606:0F00074850,8A2036=0D25310119:0F00071A706A717677492923221E202726,80522E1F39=1E2A360612:0F006A385040740717,1F70631E=212D390915:0F006A1938271779,565A4575522F801F1E632B=121E2A3606:0F00010D0302703352838453297115632E,208A454F2B=0E1A263202:0F000170390D332E2971152F63751F1E20,52846A381F=14202C3808:0F000106387129,2E1F24=14202C3808:0F0001062E7129,522010=0814202C38:0F0001062871292E7C528384032C5C2A15767765,11185D8A206B08=131F2B0737:0F0001067C1F20,522900=202C380814:0F0001020D700339332C192A83842971152E1F0C20262322,065256386110=111D293505:0F000102700D332C2E297115383F631F20,0347562B=14202C3808:0F000102700D332C712E15261F201E,80036A61473831=0C18243000:0F000102700D335283845329711563,38048A7D45202A=14202C3808:0F000102702E15471F1E,294F2B452C2F268011=0D19253101:0F0001022E792D3E75663D19,472063703852292B39=222E3A0A16:0F0001022E154826271F1E203874362322,036312=0D19253101:0F000102032971152C2E19,4720637038522B15=111D293505:0F000102030D70332E3919528384532971152B2F201F0C,8D1B=232F3B0B17:0F000102030D7033528384534529711520,63475814=131F2B3707:0F000102030D332C2E195283845329716375261E2322,8D19=15212D3909:0F00010203700D332C2E1929711552838453637526202322,8D09=111D293505:0F00010203700D332E2F192971152B52838453631F20,8D33=1A2632020E:0F00010203700D332E2F1929711552838453261F201E2322,8D03=2E3A0A1622:0F0001020370332C2E2F1575261F,2971476A458352380C=111D293505:0F0001020370332E2F0D19297115637566302B2C3979,8D08=000C182430:0F000102037039297175261F1D21,454F2E1563410F=17232F3B0B:0F0001020370390D3319297115632E2C752620212322,8D07=3606121E2A:0F0001020370390D332C1929712E157563548384534C,20248A38=16222E3A0A:0F0001020370390D1952838453542971631F0C,152036=14202C3808:0F00010203703915632719792322,80262045297158750F=111D293505:0F00010203528384157033,752971206B452F2B262E05=3404101C28:0F00010206030D7129302F79802D7C2B5C4744,11701D2052843833=111D293505:0F00010206181139702E1F686F6A792D2C304E153375664923221D21,52296B0D800D=15212D3909:0F000102070D70332C2E19528384297115637526201E2322,8D05=2C38081420:0F0001021A175D2C19152E302F7183846379,8A20704F7545410A=131F2B3707:0F001A651707,565A58202E1F476320=121E36062A:0F11707B7C5271291E20,2E1F39=111D293505:0F11700001522E71291F20,2B07=131F2B0737:0F11700001397129,2E2002=111D293505:0F11707129,2E1F2002=131F37072B:0F1152702E2F71291F20,000103=131F37072B:0F1152702E2F71291F20,7A3A=111D293505:0F117B7C2C2E71291F20,520300=111D350529:0F110001702E2F71291F20,0621=101C280434:0F11000170717B,522E1F0A=06121E2A36:0F110001708471292E1F20,03388051561C=121E2A3606:0F1100017B7C702E7129,522B22=2D39091521:0F110039702C2E522F1574487B7C2D4E804B,098A204538612B=05111D2935:0F1118795B65170002195D,52382E8A201E=2531010D19:0F111829711500010370390D332E750C201F,4552832F382B8004=2A3606121E:0F1118175C000301027039450D29332C2E2F15631F,8A582020=31010D1925:0F1118032A0D545283841A802D2C2E2B71296366774744201F26232221,010900150C06=2C38081420:0F11180300706A2E1549466319,292F26806B382B20754506=2E3A0A1622:0F1118528384530001035C702971152B332C2E63201F1E23222621,6B75452D4F802E=111D293505:0F1118060300017B7C792E39767566261F20,7129805136=232F3B0B17:0F111800171A454F514E3A3871157765443D23221E262720,80612E1F1C=212D390915:0F11180003706A4F0D332C2E192971155363751F20262322,524746416128=3B0B17232F:0F111800037039450D2971332C632026,1F2E2B38528327=3B0B17232F:0F11180006032A0D70332E011954838471152C202322,58477D630C=0814202C38:0F1118000106287129705B032C2E302F802D4E2B201F,528458384108=380814202C:0F11180001027039302971542F7526201E,63472E151F583A=1E2A360612:0F1118000102030D70332C2E192971158384535426201E2322,471F1B=1F2B370713:0F1118000102030D70332C2E195283845329711563261F0C20,4745752522=3505111D29:0F1118000102030D70332E2C192971153953631F0C262720,5284612528=390915212D:0F111800010203700D332C2E192971152F4B49471F270C2322,52562B2029=390915212D:0F111800010203391929710D1552838453,2075708A456309410F=0A16222E3A:0F111800010206032A0D097170292D302F1575761320,521F47251D=1F2B370713:0F18000102111A1703154F2C2E382D2F807566,7163708A1F207D2A=05111D2935:0F111800017C5C2C2E7129,527015382021=2B3707131F:0F11185C0370332D152322528384636626271E,2F292C2E1F00010601=2430000C18:0F11185C0001092A0D7014692983847B7C2C2E302F802D2B,06454F208A2E=0D19253101:0F11181200171A7919547638,5215201D09=3A0A16222E:0F1A1716007015713F261F2720,5263587D2B470304=111D293505:0F1A0070153871291F20,7A7629=010D192531:0F181179005B712980152D4E2A0D533358,5270208A11=0814202C38:0F181138171A7975665B52845415,47701F8A2013=121E2A3606:0F181117795B5C007054292A0D690403332D2C2E66632B3D,8A454F3822=121E2A3606:0F1811705200012E71291F20,382A=16222E0A3A:0F1811705200012E71291F20,062B27=14202C0838:0F18117052000171291E20,2E1F27=16222E0A3A:0F18117000012E71291F20,527A06=111D290535:0F1811700001062E2F1F20,712912=14202C3808:0F181100062839707952542C2E302F03565A7566441F1E,0D29802B2029=1824300C00:0F181100012C2E7129,522025=121E2A0636:0F18110001261F20,03522E=0915212D39:0F18110001702C2E7129,6F454F098A2025=030F1B2733:0F18110001702C2E71291F0D2B152F2127,5283162014=16222E3A0A:0F18110001707B7C0D7129,52565A152B2034=17232F3B0B:0F1811000104037115454F7677657B7C392023222726210C,52092E1F27=3707131F2B:0F181100010603797B7C802D302F2B6743441F202322,2952477D2528=14202C0838:0F181100017B7C2E71291F20,036F33=0D19253101:0F18110001027939706954528384685D15565A75201E1D26,29032E11=182430000C:0F1811000102062A0D2C2D804B2B672E2F7129,70471F8A2030=17232F3B0B:0F5C707971292C2E0E032A0D6A804B2D8C2B3348634C,52110915462031=15212D3909:0F5C5B0001032A0D7052842C2E71291F20,1118517D462B=0F1B273303:0F5C111800015B712952841F20,756A251A=2733030F1B:1545332C2E2F84836375662620,0F0003700D71292B1C=0E1A320226:1516291211020056,06382007=000C182430:1551000403706A454F3A3D771F262322271E1D21,382B41522016=17232F3B0B:1500443626271F1E,29710F47380D19520337=182430000C:150001021745512E443D65262322,2B63387C18=192531010D:151A83842627202322,580F7003632E1F297C26=0E1A263202:15391A302F83845475662627201E,0F702E4629004708=3606121E2A:5B000102073911522C302F3A678C363F33490D482425200C1E2322,0F15382E1F6116=1E2A360612:5B71297000010611182A0D39792C2E332D4E80151F202621,52454F3804=2C38081420:5B11180001020328700D332C2E195283847115632F751F2720,290F476630=0C18243000:201E27262322,8902=3404101C28:2A0D11180F52848353037039156358332C2E,3820002628=010D192531:4089,030F565A61206B27=1824300C00:4089,8836=1C28340410:0370833F0F6A5215,010D582E1F202C2F2938=112935051D:03700F,79192C2E2D715275262322271F201D2136=112935051D:0370110F45510D3371290941614C522623222720,8D3B=152D390921:03047039171A533852443D363F,8D11=0F1B273303:030402111A16175B4F3A2B153E0079015D54528483696A51,7006200F05=0F1B270333:03041A174533302F56795B3E808339528454,700F292026=121E2A3606:037B7C2E2F261F20,0F14=1E2A360612:030270170F45513A2C71295283842A0D532D24252623222720,155A382E1F2F=1B2733030F:03027011170D332D2C2E2F716152838454,010F201F2C=121E2A3606:03027039450D332C2F2D2971528384636626202322,581535=212D390915:03020E0F18110D332C2E2D2F4971293E615244756653,8A202531=1B2733030F:030102703945802D2C512B7129092322270C7566,112E528325=2D39091521:030102062C2E543E3D636679,380D19462971001F=293505111D:03111A171538193E3F,0F632C2E70454F200C19=17232F3B0B:031A2B7915656A,0F177001204529710D632E2F02=32020E1A26:033945302F838475262720,297071000F2E1F3810=17232F3B0B:0339332C2E1575201E26,0F520D631F29712A72473826=390915212D:0339332C2E302B66201D1F27,0D2971010015520F6B0E=15212D3909:03392D2E332F211D201F1E27,0F7015380029710D195824=16223A0A2E:036F791E20,522E1F31=1D29350511:5283845B79037B7C802D2C2E4E302F2B38493D4463664C1F2021,0F0D712917=15212D3909:5283845303702971150D2F,388A6A6D0F2012=111D293505:528384530370331929272E2B2F631F1D20,0F156B380E=0D19253101:528384530339454F0D297115332E2F637520,0F00705802=2A3606121E:528384530339332E152C2F58631F20,380D000F2900=283404101C:528384530003010215392C20,1112180F29560D2E1F754511=15212D3909:5283845300031929150D332C2E63,0F217045208A717521=3505111D29:5283845300010670802D2C2E4E155B201F1E232221,380F71296A0E=17232F3B0B:5283845354037029711575262720,631F58000F2E38010D=111D293505:528384000103451915332C2E631F2720,29716A0D0F7019=1D29350511:5283840001032E1570637566302F391F,0F4729712030=16222E3A0A:5283845479036A2627201E,0F380D70297115012F1A=1F2B370713:528384542E03700F111869565A7566631F1E2021,297138000C31=121E2A3606:52838454443D65002C2E15495D1F,0F417D712B38630F=0D19253101:5283845444360F11756415,2C2F29016B472E2B20381D=212D390915:528384545363000103332E15,0F1F197029710D757D2032=121E2A3606:528384546315332C2E2F26201F2322,0F0D45002971756B17=192531010D:52838454754C2971150301022E,0F63206A0938268A4117=1B2733030F:52848353000103297115332E2F19,0F8A514F6A6620754526=1824300C00:528403395B2F1E20,0F012D=0B17232F3B:5254700001020612692D4E584647336375662E1F1E,71290D262037=131F2B3707:525400045B17791A565D754C7866,2E1F207C34=0F2733031B:483F89,8838=232F3B0B17:767779392623222789,152B1F1D200E=0A16222E3A:767789,528300292025=14202C3808:7665261F20,0F291A=222E3A0A16:7665262322271F201E21,0F0029807124=1824000C30:7889,292E1F24=101C283404:8D,8832=1D29350511:63767789,522E0006206B31=131F2B3707:7B7C343589,0F7038=2632020E1A:7B7C343589,520F20=0E1A260232:7B34,8812=1C28340410:02703918110F7919155283756626232227201E,012C2E1F0C29=121E2A3606:020F11161A17454F2C2E2D302F2B38434C,2070016328=1824300C00:02060418110D332C2E415B637566262322271F20,520F23=142038082C:07504089,0F010C=15212D3909:07262723221F40,0F7129523B=2430000C18:0717363F1A2C4F3A67433D8B,71290F0103471A=2531010D19:0704031118528384542D2E4E49201F1E1D2127,292B000C3B=283404101C:073F7765644889,012014=111D293505:074048261F202322,0F71454F1500018008=111D293505:07404826271F1E2089,882C=0D19253101:07565A5283845463756677261F20,010F15296120=2F3B0B1723:07487677393F89,0F2952151F1D30=111D293505:074889,06520F3808=17232F3B0B:074889,883B=131F2B3707:074889,8832=15212D3909:07762623221F1E20,000F1552296B2F2A=0D19253101:0776776A742623221F200C211D1E,11180F2F5206802B0B=04101C2834:0776776564,000F29382011=101C283404:0706397B7C794C636A48,520F7129472026=14202C3808:077C343589,880A=380814202C:076A79040363660F5D363F,52292E1F20382F15560123=16223A0A2E:076A696819,0F2918=222E3A0A16:076A171552847983546578,712970010F2D=182430000C:076A48,45752F29384C0F204F612B30=131F2B3707:076A7626271F1E20,0D0F29382F2E0E=0814202C38:07343589,065238=1C28340410:070039201F0C2789,06030F292F23=101C280434:076564,0F292002=0D19253101:073918111A17332C2E71292322271F1E20481D45548384,38002F702A=1824300C00:7C343589,8801=172F3B0B23:6A79363F65,0F292B7118=1B2733030F:6A170F19,5845754C201F4F382430=1B2733030F:6A170F1963766F,5452201F32=0C18243000:6A0339332C20528384531563,29713801000F0C47806B3B=2A3606121E:77766564000789,0F52201E8A01=202C380814:1F2027260076232289,0F29528339=0F1B330327:3435,8809=0F1B273303:34357B7C,8818=121E2A3606:34357B7C7789,0F291D=232F3B0B17:34357B7C89,0F2021=33030F1B27:34357B7C89,030F27=390915212D:34357B7C89,712917=1D29350511:3435073989,8802=2C38081420:34357C89,0111180F292006=30000C1824:34357C89,71291A=14202C3808:34357C89,8A2036=182430000C:3435000789,8835=232F3B0B17:34350089,0F2025=3707131F2B:34353989,0F2037=0D25310119:343589,0F52202D=0F1B273303:343589,0F7152290D=131F2B3707:343589,8830=121E2A3606:343589,881C=16222E3A0A:343589,8819=131F2B3707:343589,880F=15212D3909:343589,8832=14202C3808:343589,8813=0D19253101:343589,8811=17232F3B0B:343589,881E=142C380820:017018110F1A2E15495247838463462322271F,8D03=0F1B270333:0103040818111A155284262322271E20217A79708330,38472E631B=14202C3808:010670170F0E3A294152838454262322271F201E,2E1815442C=0F1B273303:01067071292C2E1F20,1103150F520A=17232F0B3B:010670181126271F202165,293816=182430000C:0106111839513A2C2E2D2F8C804B4723221F63,7152292037=0F2733031B:010203040618110F3315292A271D200C6339171A712C2E30491E21,7A21=0E1A260232:010206040318110F2E292A27200C70072C302F541F392B49,381512=1A2632020E:010206110F452C2E7129095B5226232227201F0C,58804B036B2B381C=142C380820:01023918112E2D493E52756624262322271F20,8D12=121E2A3606:008354,06462F2E1F27=030F1B2733:00797084831754,0F2E472D4E1F06=0D19250131:0079701811072C2E01060F33152627200C7A1A302F4576631F2B,8052382900=172F3B0B23:00790F072C2E0103047018111A262322271E7A302F5448637545,293815561E=101C340428:007952151E20,0F2E1F33=0F1B273303:007984831A160F1719,632E20471D6B01=152D390921:0079110F0304062A528423222627207A19701A2C2E2F5D83,294513=0F1B273303:0079181A165B332F2B262322271E2021030469702D4E49712930845D,454F05=152139092D:0079192E2F030417332D1552847A5D,4E201F=162E3A0A22:003826232277,632E20523A=0D19310125:0038262389,521513=1C28340410:00384089,0F202E157C07=04101C2834:00384089,152967631F=101C283404:00384740,0F2037=1C28340410:00387765504089,0F157C04=131F37072B:00385476,521F13=16222E3A0A:003854767789,2E1F522010=131F2B3707:003854637519,205D1D1F52151E210F=121E2A3606:003889,52201F1D4733=121E2A3606:003889,881F=212D390915:001D23221E2789,52290F2E1F202B=07131F2B37:002C7080305C784C62,2E1F472001=283404101C:004D64547589,0F292E=131F2B3707:005040,522E1F0F2C2004=3404101C28:005089,032C2E1F33=182430000C:005089,8815=192531010D:00261F23221E201D2189,8D12=131F2B3707:00261F2322271E200C89,8D1E=121E2A3606:0026271E20,2F2E1F33=16222E3A0A:002627241F1E20232289,8D33=14202C3808:002627651E20232289,881B=182430000C:00262789,292C2E1F2B2F2A=07131F2B37:00262322271F1E203F8B65,52290F038002=15212D3909:001779332D2322271E2007760304,38290F1C=1F2B370713:00173883546365756619,466115201F701D47522434=0D25310119:00170F79191A6540,712909387C2015=0E1A263202:00170F332C2E2D2F802952443F26232227201F,15637C383A=132B37071F:00170F7665776489,8D2A=390915212D:00177689,0F52804F2507=2E3A0A1622:00177179546A76,0F52443D1F2D=0915212D39:0070,0F292C2E791F13=131F2B3707:007083624C,0F38202E7D4F45471F7107=380814202C:00704F0D332C2E2D15363F261F20274C,0F2906036F4703=3404101C28:00702C2E164C157126271F1E202425363F,29386A032B0F=0F1B273303:00700F1715262720,472E386309=15212D0939:007022230726,2E17712952302F15=15212D3909:00704889,8834=1C28340410:0070784889,0345201F21=2D39091521:007007482089,2E1F58470B=0D19253101:0070071A010618110F5B52846775,6326202E=16222E3A0A:00701A17794C0F302F715475,2E454F8A20243A=0F1B330327:007018111A1617192E15382627201F656477,4F090A=0F1B273303:002E2F18110F5B3315292A26271F20210C7A70710102393E19,035A37=14202C3808:002E4344793F26271F20,03702C2F292B381A31=0E1A263202:00161A5D454F153826201E27,7D0D2904=152139092D:0004037039180F332D152952262322271F0C533A83,4117804735=1F2B370713:0004037B7C0F79494766754667,80293869208A1E=162E3A0A22:00040301067018111A0F332C15292A261E200C7A7919712F5D52838454,5617454F06=3404101C28:000403110F527079156523221E2027,0129802E1F6B1D=1830000C24:0004031A170F11332C2E302F1571292A657677451949,70201D5218=102834041C:0004031811171A5B332C2E155D52,0D29204504=17233B0B2F:00040318110F1519262322271E2021,52831F3825=3B0B17232F:00046A7966444C7765,010C202F38520F70292E31=14202C3808:003F261F202789,8836=131F2B3707:003F657789,7152290F032B3A=2632020E1A:003F651F0C2027232289,0F292B=16222E3A0A:003F89,8836=212D390915:000F76,032E1F522C292B22=2B3707131F:000F7765,2E1F7C4607=0F1B273303:000F01111A1615292A2627200C2C670279538384543E49,634512=0F1B273303:000F1320,6380382936=0F2733031B:000F1323222627,2E3829031535=0D25310119:00676589,0F200F=0C18243000:00401D232289,71290F47202B=101C283404:0040395089,8803=30000C1824:004023222089,0F291118470D=0A16222E3A:004089,0F5211=1A2632020E:004089,0F0147200B=3A0A16222E:00037039454F0D332971152C4C48,090F476341382E0A=111D293505:00037039041A26271F1E202322,0F2F2C335129452E0D3A3B=222E3A0A16:000370396A450D332F4B154C,0F208A7D41381F2E14=0F1B273303:00030401061A16170F332E71292627200C02696A45514F0D2C2D4E497A,2B0B=0F1B273303:000304111A33152D2E302F71292A5284530770022B,0F6345203B=0F1B330327:00030418111617332E2D2F292A52845407020D302B,090F452001=0F1B273303:000304080618110F1A2E2D0D3371292A2C302F7566010239454E802B,632039=2430000C18:00036A7415384878,45751F20240F522E834F2E=182430000C:000301394F2E154763751F27,0F707A802629710D192035=14202C3808:0003391983845475,2E1F0F6A702971722A0D04=0F1B270333:00483F,6338200F2A=3B0B17232F:00481F2023221E27262189,0F292C2E1B=122A36061E:0076645089,8819=202C380814:0076777566262322271F201E,0F111852290D=101C283404:00763989,0F2036=1E2A360612:00788B89,0671292E25=010D192531:00784C793989,0F29702E1F208A21=31010D1925:0006261F1E201D212322,0F2938111801=2A3606121E:00060403702C2E4C154947443D651F,0D2920=101C283404:0006522E261F20,0F712939=2632020E1A:00060724232227261F2025,520F157929382F22=31010D1925:0006547677,0F5229151F201B=0E1A320226:00061A161718110F292A0C26271F21797001022F49,470D=0814202C38:002876396577261F20,5283290F37=212D390915:0028397976771E232227,0F522E47442027=121E2A3606:006389,8822=101C280434:007B7C3989,881E=1830000C24:007B343589,8805=2E3A0A1622:00021719792B155D5466774962,010611180F292030=14202C3808:00020370454F0D3933192C2E2D156375261F202322,0F7123=0E1A260232:0002070818111A16175B153E445D5452848365647576,2038454F15=182430000C:0007385476771548,52061F2024=2D39091521:0007504089,0F29157030=15212D3909:0007504089,060F71702F2918=15212D3909:0007504089,880B=17232F0B3B:000770171989,0F2E20382F=0B17232F3B:00077089,522E1F8A202C=07131F2B37:000704036939487C4466,0F7011293821=1824000C30:000715547776,521F18=0E2632021A:0007030401021811171A0F2E2322271F1E706749528483,202F293800=0F1B330327:00077663,0F297138202C=0B17232F3B:000776776548,0F1118152E1F2017=121E2A3606:00077665776489,52830F208A14=1A2632020E:00077B7C4834353989,2952203B=2632020E1A:00076A386563,0F7D8A2066454F52754C15=1E2A360612:00076A0F3874485040,06707C2509=3606121E2A:00076A74504089,5229702C7D15=14202C3808:00076A74173926271F1E20,0F7029522B09=000C182430:00076A54196348767765,7920297115528A0D382B16=101C283404:000734357B7C3989,0F528329200C=06121E2A36:0007343589,290F7104=2E3A0A1622:0007343589,0F292F702012=182430000C:0007343589,0F71296B708003=15212D3909:0007343589,7129706300=0D19310125:0007010618111A332D302F15262322271E530270164C,560F712924=0E1A263202:000701020618111A1752848354230C7027,262038292C=111D293505:0007711F204840,010F29153814=17232F3B0B:00076527262322,1552835A201D0F382D=0D19253101:0007363F8B3989,09292C208A0F28=030F1B2733:000739483F66,0F208A2B0A=04101C2834:0007397B7C343589,0106522008=020E1A2632:0007396A48343589,0F203A=283404101C:00073934357B7C89,0F5223=3505111D29:000739343589,032010=0A16222E3A:000739343589,520F2F=111D293505:000739343589,8A200A=15212D0939:00077A7089,8817=17232F3B0B:000789,8D3B=172F3B0B23:000789,8815=1B2733030F:007C343589,881B=212D390915:007C343589,8812=15212D3909:006A79190F6F2627,6B46204538290B=380814202C:006A38075040,0F630141202B454F2D=121E2A3606:006A5040077448,702B2C0F2F292E=0B17232F3B:006A583F232227261F20,0F291547031C=232F3B0B17:006A6F391974,0F2E614447702C292F71201F38521F=31010D1925:0034353989,522E1F2B=0D19253101:00343589,060F5200=2A3606121E:00343589,7129565A01=131F2B3707:00343589,883B=111D350529:00343589,8800=152D390921:000150402627,0F292F2B1E=2733030F1B:00010F17505840,565A80385283846315=101C283404:000103020611187B7C2D4E616439201E0C26,522E474429=101C283404:0001030239450D297115332C2E4C,0F542070528438632C=101C283404:000103392E54837548,19700F58157A20381F=1830000C24:00010670175B71292A152322271E,03637C2B380F=0E1A263202:0001067052842E71291F20,030F38477533=131F2B3707:0001067011185B0D332C2E2D712909262322271F200C,0F5263250C=17232F0B3B:000106040318111A170F33292A26276A201D0C7A71077C1F1E74694F,520A=0D19253101:0001060403232226380F767754,568020152D=111D293505:000106025B75712904032D302F382B2A0D801E20,2E1F0F0C=0D19253101:00010607155B5C26271E2021165D83,38470F2920=16222E3A0A:000106073018110F3329271E0C7A0D75,3826201508=0F1B273303:00010618111A16332C2E2F2D27200C07483A450D,1552843825=0E1A263202:000102261E2027,03476F700F2971382E39=15212D3909:0001027007834878,2E388A201D17=131F2B3707:00010203450D3329152C2E2F5375,0F638A6A1D382D=0E1A263202:000102030D70332C2E29712F534426201F1E,0F38152F=121E2A3606:0001020370450D332C2E2D152971,0F52838A201D1B=1D29350511:0001020370528384631575712D2E4E3E581F1E1D,292C2B452620803A=222E3A0A16:0001020370392F2971152B54754C,458A1F0F20462C=14202C3808:0001020370392F80712B546675201E26,1F58472E152F=16222E3A0A:000102037039714515750D33,201D381F092E0F1103=32020E1A26:000102030F7039453319152E2D2F63751F0C1E20,71290D38472C=16222E3A0A:000102035270392E2D5863,0F381D2B2921201511=131F2B3707:0001020352666A,0F7020262938172F3A=2430000C18:00010203332C2E2F1558631F,0F1920707A2971264627=05111D2935:0001020311180F702E1F7952838468332D6749443E46630C1E1D21,292B2035=1C28340410:000102031118396375664819,1D4138702080291F=232F3B0B17:000102033945332C6375201D21,0F1929710D702D=101C283404:00010203390D3329152C2B751E20,2E1F54475352458316=111D293505:0001020339161745514F2C190F1A152E2D2F304979,8D13=17232F3B0B:00010203396A79637566201D211E,29387D71707A30=101C283404:000102033911170D3319152E2F0947442627201F,8D25=3505111D29:000102031811392E2D19528384543E4463751F20,152F1A290F0D=0E1A263202:0001020626232227201E,0F2E03801F0F=101C283404:0001020617385483,030F47202B6B1B=2733030F1B:000102060F17705283797823221E2027,2E712910=121E2A3606:000102062A397129797B7C2E1F2425,162F5D20262B=182430000C:0001020603691817452C2E2D498344,412B6A09633808=3A0A16222E:0001020603700F7B7C2E1F692D48302F565A586366240C21,2B151A292039=17232F3B0B:000102060717706A33392D2E4E674447482322271E210C,71292B4F2023=33030F1B27:0001020607036A5D397C2163664744,0F4E25208A08=04101C2834:000102060775261F20,71290F70150C=101C283404:00010206111803302F565A802D4E2B881F261E0C,0D0F521B=16222E3A0A:00010206090D5B7952838454685D7B7C443D77656366201F1E,030F47454F24=010D192531:000102071283542627201D210C4C78,29580F2E6352031F01=32020E1A26:00010275261E0C2322,6303706F0F292E1F19=0E2632021A:000102081A158483262322270C1E,700F292E1B=101C283404:00011A1615262322271F1E200C214C,472B0F1124=3707131F2B:00013974150726271F1E200C,0F06520D297170382B4507=17233B0B2F:000118111A16175B154C26271E200C232279302F5D528384547543,0F297C7A03=17232F3B0B:000118111A332C2E2D1571292A2627200C7A1979,387C02=172F3B0B23:000118111A332C2E2D1571292A23222627200C7A791970302F5D5283845456,387C454F1F=0E1A263202:0001081811171A160F1571292A26271E20396476452B0D,632E523813=15212D3909:00211D1E232289,8D16=0E2632021A:006526232227201F,8926=05111D2935:00657689,6B0F5225=16223A0A2E:00654C89,8D03=2A3606121E:006589,2970472008=15212D3909:001A170F5B332E2D7129261E203E5D,1503528306=152139092D:001A170F1379232227761926,71293833=1C28340410:001A1715838444363F261F1E200C2322,0F476B52036338=14202C3808:001A2B5448701938754C,152E20242510=0D19253101:0039504089,8D39=283404101C:003926271E20747677642322480C06,2E1F38=0F1B273303:0039262322271E201D210C0748766465776A,150F382939=202C380814:0039332C2E2D2F152B4644261F1E,0F7019382971637A31=192531010D:0039787989,1F2E2010=101C283404:0039787089,2E1F8A034F206B29=05111D2935:00398B7989,0F200C=131F2B3707:0039077426271F1E20,0F29713852832B632D=14202C3808:0039076A7426271F2048,0F79197029717A382C=0E1A263202:00397C343548,8929=3B0B17232F:003934357B7C89,0F2028=16222E0A3A:0039343589,8D34=16222E3A0A:0039343589,880B=111D293505:0039343589,8805=17233B0B2F:0039343589,882E=101C283404:0039343589,8806=17233B0B2F:00390103040618111A17332C2E262322271E157A7071302F45631F2075,807C2B=0915212D39:00396577647969271E2322,52012E1F2620612D=16222E3A0A:00391A6A15384C4943363F7448,0F0379472B6319=192531010D:00394C786F89,0F2E442035=182430000C:003989,882A=121E2A3606:003989,8816=13191F252B313701070D:003989,8801=0D19310125:003989,880D=0F1B273303:0018112C2E01040607332D292A09270C2322696870302F47023945,382052801C=101C340428:00190F153917701A48,472E1F200334=1F2B370713:00195475667689,5229152E2019=222E3A0A16:004C504089,0F5215470A=3A0A16222E:005C702C2F802B154C78,5A562E1F208A45466319=102834041C:0089,090F1538=131F2B3707:71297C790001062A0F802D,5215705D2F=0E1A263202:7100030170391959152E2D2F2B,0F201F4F75668A3824=030F1B2733:5483846376656419786A,298030201A=2430000C18:5452838479195D00012A0D7B7C2C2E3348156366242526201E,0F71292D=07131F2B37:54528384700001020339482D301571565A363F637566,06292B201F8A29=030F1B2733:54528384036F796A153E65,7129631D=2733030F1B:5452848303152F802C2D,2E1F208A7A700F29710C7D22=33030F1B27:118384155B20272E1F21,0F03380E=0E1A263202:1179302F842627201E,0071292E1F0E=06121E2A36:11177B7C52842C2E5B1F20,060071292F0F0E=101C283404:110F70528475660D7129,012E1F20262A=101C283404:110F03706A795215636626271E,0C012F38062C292B07=020E1A2632:110F0001702C2E7129201F,52060C=0E1A263202:110F00017052792E1F1E,71290D2B2020=293505111D:110F1A6A702C2E1952838453712F6375,45201500011D=101C340428:11037B7C2E2F7129,0F52200B=0E1A263202:11000170792C2E7129,0F52201F01=111D350529:110001527B7C2E75,0F2009=04101C2834:1100010206702D804E2B2620,0F52540D00=131F2B3707:110001392E1F20,0F712932=17232F3B0B:117154528384292C2E302D4E092A0D50407970443D,5680410023=2B3707131F:111879690001020370396A2E2D528384543E637566,0F380D58292000=222E3A0A16:111879076A1A171523221E272024,5229700F1D012E2B0C2F0B=06121E2A36:111817000106702C2E71292A0D33802D302F4E2B44,0F52252029=07131F2B37:11180F000704030D7C684580302F153867534775,70204119=2430000C18:11180F00012A0D70795D7B7C39332D2C2E4E4863664C,064F478A2037=1E2A360612:11180F000152548471702C2E2D4E303348492A156144474C63,8A201F38450618=202C380814:11180F000128032A0D7129302C2E2F2D802B09411F1E20,5284543824=2F3B0B1723:11180F0001020370391952845329712B632E7B7C792D2C8020,385D151E=293505111D:11180F0001020339700D29716375662E1F2620,3815568016=16222E3A0A:11180F000102587B7C5283847971302F804B2B497675,09612E1F201E=232F3B0B17:11180F00010E715229702E79692C2D2B15093954444C66,2F565A806132=131F2B3707:11180F71297052838454792A0D33802D153853201F1E212627,012F56476628=3707131F2B:11180F71297000010604032A0D793969302F33802D636675,201F52565A1E18=1D29350511:11180F5C000102030D332C2E195329711563261F202322,52843A=202C380814:11180370392A0D3329712C2F156375795B5D,450C8A00382E1F20010C=3A0A16222E:11185283847975661271393D692D15565A201E262322,292F060D0C02=30000C1824:111852838470795B302F404533802D152B39201E23221D212726,0F2E1F010D2923=2D39091521:111852838453546319297115030D332B2C,060F8A2E38201F38=0D19253101:111800020D041A796933483E5347446563751F1D212026,010F09150C17=2430000C18:1118000717161A2C2E3371292B56433D6375363F,0F010347208A09=020E1A2632:111800012A0D2C705271292E201F,1538617904=30000C1824:11180001032A0D70795B2C2E302F802D4E152B33714161201F26,520958470A=000C182430:11180001020439332C2E302F2B5844477515634C1F2721,0F520D19267A2971702037=232F3B0B17:111800010206037939695483845D2D2E4E446375661F262120,0F52290D7123=31010D1925:111800010206071979697C67474475664C,0F16298A2014=182430000C:11187129705B79000106032A0D397B6F7C802D2C2B61756627261E0C1D21,0F2E15414732=192531010D:111871545283842979397B7C69152B2A0D33485324251F1D1E26,6B00702F800C201E=1F2B370713:5D0007363F232227261E21,037C0F471F202E=0E1A263202:6526232227201F,880E=111D293505:653989,8806=131F2B3707:363F6526232227201E89,8832=1A2632020E:1A454F548384,881D=121E2A3606:1A38712975,0F201A=0E1A263202:1A162623227954,0001710F290C=0F1B273303:1A16170F13152654,3852204F32=0F1B273303:1A5D453A332C2E2F4B25262322271F201E1D21,000F704723=2F3B0B1723:3950177089,522E1F0F201A=1D29350511:39701117302F713819297566,004551152C2E201D1F34=121E2A3606:393589,881A=15212D3909:393589,882C=182430000C:393589,8825=101C283404:393589,881C=2531010D19:394089,71294709636F7C440D=0D19253101:3948007889,8D38=2430000C18:394889,8811=111D293505:394889,882A=0E1A263202:3907,8807=0D19253101:39343589,8831=101C283404:393489,8801=222E3A0A16:390050404C89,0F528329692018=131F2B3707:39006A26201F,0F520D38580629712B09=380814202C:390001022C2E302F1575804B2D261F20,0D0F0319707D5229717A15=17232F3B0B:3989,8D11=0A16222E3A:181179838454637566,0F5229012007=111D293505:18117915384C,52200E=0C18243000:1811795B032C2E302F802D4163754C27261E1D2120,010D0F29521F29=16222E0A3A:1811795B5466,01202F=192531010D:181179000607040D03302F5283844F3A45512B1533664C47,090F702E208A2B=0B17232F3B:18117900012C2E5B1F20,0F710D52291A=122A36061E:181179190E332C2E2D52637566262322271F20,8D02=0F1B273303:181117332C2E1526232227201F1E3E,38030F522922=142038082C:181170792C2F7129,52201F=121E36062A:18117001061579,71292023=121E2A3606:18117000012C2E7129,522024=3505111D29:18110F3900010203700D3329711563752E1F0C201D,38525D1A=101C283404:18110F197983842E230C271F1E7A70525463,2620291503=111D293505:1811002E1F8384,0F2022=1824000C30:181100012C2E2F1F,0F3821=142038082C:181100012C2E2F1F20,0F5229=14202C3808:181100015B3875,2E2034=15212D3909:181100012A0D2C2E2F2B2D304E447129841F,0F09416138200F=0814202C38:181100012A0D52842953411E20,2E1F0F47152F=131F2B3707:18110001032A0D845B7129302F791533536678,0F208A1F1D33=17232F3B0B:18115452840001712970802D2C2E302F2B2A0D78791F,0F204758610E=0F1B273303:18111A16175B3315262322271F1E201D215D838454433E363F754551,00030F290D=0C18243000:18115C0001702A2C2E2F5283847129795B6375802D154C,1F208A2407=15212D3909:88,262052830D=17232F3B0B:88,8D17=102834041C:88,8D0B=15212D0939:88,8D24=121E2A0636:88,8D09=17232F0B3B:88,8D13=111D293505:1979,3F2F2E45207D37=112935051D:1966583F6589,8831=16222E3A0A:4C4089,880C=0C18243000:4C78,297172380D2A2E0F47484112=16222E3A0A:5C0F1811790070528471291F20,2F0380512514=1C28340410:5C0001020652835B0E03804B2D4E2B752024210C,292E565A36=1A2632020E:5C11180001027170520D2984832B15200C,03802E386333=15212D3909:89,6B34=111D293505:89,8D";C.TIME_YI_JI="0D28=,2C2E2128=,2C2E0110=,2C2E0C1F=,2C2E7A701B1C=,01022308=,01026D003026=,000106037A702D02=,000106037A702802=,000106037A703131=,000106037A70341B=,000106087A701F0E=,000106087A702E15=,000106087A702C2E0E39=,000106087A702C2E0D2B=,881727=,88032D=,88352F=,882B2F=,882125=,882A22=,880C1E=,880220=,88161A=,882018=,883422=,880113=,880B11=,883315=,882915=,881F17=,88150D=,88122E=,88302A=,88262A=,883A28=,880826=,881C2C=,881905=,882303=,880F09=,88050B=,883701=,882D01=,88060C=,882410=,881A12=,882E0E=,88380E=,881010=,883630=,881834=,880E38=,882232=,882C30=,88043A=,881E0A=,880006=,883208=,880A04=,881400=,882808=,883137=,883B35=,882737=,881D39=,88133B=,880933=,88251D=,882F1B=,881B1F=,88111D=,880719=,88391B=,88212D=,7A702C0B15=,7A70551515=,7A70552D00=,7A7D2C2E1334=382C,000106083528=382C,7A70000106080504=382C7A6C55700F197120,00010608223A=380006082C,01026D0D2C=380006082C,01027A70551D30=380006082C0F71295283,01027A703636=380006082C0F71295283,0102416D1226=380006082C7A706C550F297120,0102251C=380006082C7A6C55700F197120,01026D2300=3800010608,2C2E0324=3800010608,7A702C2E082E=3800010608,7A70552C2E3B34=38000106082C,2F8026330C=38000106082C,2F80267A701622=38000106082C7A70556C0F197120,1904=38000106082C7A6C55700F197120,1514=38000106087A70556C0F197120,2C2E3138=38000106087A70556C0F197120,2C2E0B10=38000106087A6C55700F197120,2C2E2B28=387A6C55700F197120,000106082C2E2E16=38082C,000106037A700E3A=38082C,000106037A703708=38082C6C550F197120,000106037A701B20=38082C6C550F197120,000106037A70111C=38082C6C550F197120,000106037A703A2D=2C38,000106082733=2C38,000106081015=2C38020F71295283,000106083817=2C2920,7A700F03=2C2920,616D1839=2C292070556C100F,00010608161B=2C2920020F7100010608,302B=2C2920556C0F1971,7A701E07=2C2920010F,1B1B=2C2920010670100F00,352B=2C292000010206100F70,082B=2C292000010206100F707A,0C21=2C292000010870556C100F7A,0617=2C29206C0F1971,7A70552807=2C29207A70556C0F197100010206,122F=2C29207A706C55100F1971,1017=2C29207A706C55100F1971,2731=2C20,616D0436=2C2070550F,7A7D01022E12=2C200F71295283,01021831=2C20556C0F1971,7A702912=2C20100F52,01026D1D33=2C807138152952,000106080E31=2C80713815295270556C100F,000106083201=2C80713815295270556C100F7A,000106080327=2C80713815295202100F,000106037A702B2B=2C80713815295202100F,000106037A702801=2C80713815295202100F,000106083639=2C80713815295202100F7A7055,00010608341D=2C807138152952556C100F,000106037A701B23=2C807138152952010F6C55,7A70302D=2C8071381529520102100F7A7055,2231=2C8071381529520102100F7A6C55,1F13=2C80713815295200010206100F20,7A70313B=2C8071381529526C550F,000106037A701A15=2C8071381529527A70550F,000106080219=2C8071381529527A70556C0F19,000106082E0D=2C80713815295208556C100F,000106037A70161F=2C80711529525670556C100F,000106083813=2C80711529525670556C100F,000106082D05=2C807115295256020F7A706C55,2237=2C80711529525602100F,000106081F0D=2C80711529525602100F55,000106037A702627=2C8071152952560102100F7A706C,2C33=2C8071152952560102100F7A706C,0939=2C80711529525601100F7A7055,416D021F=2C80711529525600010206100F70,0E37=2C80711529525600010870556C10,2129=2C8071152952566C550F,7A702519=2C8071152952566C550F19,7A702417=2C8071152952566C55100F19,000106037A70043B=2C8071152952566C55100F19,000106037A700C1B=2C8071152952566C55100F19,7A703B31=2C8071152952566C100F19,7A705500010603172D=2C8071152952567A70550F,416D3A2F=2C8071152952567A70556C100F,1901=2C8071152952567A706C55100F19,1119=2C8071152952567A6C55700F19,1C2B=2C80711529525608556C100F,000106037A701403=2C80711529525608556C100F,000106037A70071D=2C80711529525608100F55,000106037A701908=292C20,7A7D01026D2E0F=292C200102100F7A7055,032C=292C20000608,0102071C=292C206C550F1971,000106037A700E33=292C207A70556C000108,0503=2920550F,7A702C2E0721=2920556C100F,7A702C1225=2920000108556C100F,7A702C2E1F11=2900010870556C100F7A,032C201A11=297A70556C100F,032C200E35=297A70556C100F,032C20000A=70556C0F197120,7A7D3A29=70556C100F2C20,000106081C25=70556C100F2C20,000106082805=70556C100F2C20,000106082F20=70556C100F2C20,00010608150C=70556C100F29522002,7A7D000106033314=70556C100F,00010608032C20122A=70556C08,7A7D000106032415=70100F2C715220,000106081A0D=4B0F2C20,000106037A701902=4B0F2C20,000106080E3B=4B0F20,7A702C000106032E17=0F2C09382920,7A7000010603363B=0F2C093829206C55,000106037A70082C=0F29528320,7A2C71707D01026D0718=0F712952832C20,7A7D01021C26=0F712952832C20,7A7D01026D3918=0F712952832C2038000608,01027A70552126=0F712952832C2010,01021330=0F712952832C207A7055,01021118=0F712952832C207A7055,01023524=0F715220,7A70552C2E3419=20556C0F1971,7A702C2E1D31=2000010206100F,7A702C1E05=0270290F2C207A,00010608212C=0270550F,00010608032C200C23=0270550F,00010608032C203706=0270550F20,000106082C2E2520=0270550F20,7A7D000106032E13=0270550F202C807115295256,000106081620=020F29528320,000106087A2C71707D0112=020F2952832055,7A2C71707D000106030F08=020F20,7A7055000106032A23=020F712952832C20,2521=020F712952832C20,000106082F21=020F712952832C20,000106080003=020F712952832C20,7A700432=020F712952832C2038000106086C,7A701E03=020F712952832C2070556C10,000106081623=020F712952832C2001,2236=020F712952832C2001,000B=020F712952832C2001,7A70552C36=020F712952832C20013800,416D341E=020F712952832C20017055,7A7D0E32=020F712952832C200110,7A7D0329=020F712952832C2001107A706C55,262D=020F712952832C20017A7055,1229=020F712952832C2000010608,122D=020F712952832C2000010608,1011=020F712952832C2000010608,0A0B=020F712952832C2000010608,1F0F=020F712952832C2000010870556C,1A0E=020F712952832C206C55,7A703312=020F712952832C2010,000106037A70172A=020F712952832C2010,7A7055000106033B3B=020F712952832C2010,416D000106037A700B12=020F712952832C20106C55,000106037A700615=020F712952832C207A7055,3203=020F712952832C207A7055,201B=020F712952832C207A706C5510,2023=020F712952832C207A6C7055,2A1B=020F7129528320,000106087A702C2629=020F7129528320,7A702C2E3709=020F7129528320,7A702C000106083A24=020F7129528320,7A70552C2E341A=020F712952832038000106087A70,2C2E1C2D=020F712952832001,7A702C2E0611=020F712952832001,7A702C2E021A=020F712952832001,7A7D2C2E3815=020F71295283200100,7A702C2E3024=020F71295283200110,616D2C2E093B=020F71295283206C55,7A702C2E000106030505=020F71295283206C55,7A702C030C1A=020F71295283207A706C55,000106082C2E3705=020F712952837A706C55,032C201F0C=02550F20,000106037A700508=02550F20,000106037A703029=02550F20,000106087A702C2E3027=02550F202C807115295256,000106037A703526=02100F2C29528320,000106037A70150E=02100F2C29528320,00010608380F=02100F2C29528320,000106083527=02100F2C29528320,7A70000106031C27=02100F2C2955528320,000106081227=02100F2C29555283207A706C,00010608060F=02100F2C29555283207A706C,000106081D34=02100F7020,7A7D000106030F02=02100F7055528315,2F8026000106083920=02100F7055528315,2F802600010608212A=02100F7055528315,000106082A20=02100F7055528315,000106083A26=02100F7055528315,000106080439=02100F7055528315,000106080008=02100F7055528315,000106081B21=02100F7055528315,00010608071B=02100F7055528315,000106080D24=02100F7055528315,000106082C2E2C32=02100F7055528315,000106082C2E2B2C=02100F7055528315,00010608032C201402=02100F7055528315,00010608032C20391C=02100F7055528315,7A7D000106031F10=02100F705552831538,2F8026000106082D06=02100F70555283157A,2F802600010608290D=02100F20,7A702C000106032416=02100F20,616D000106037A702C34=02100F20292C,7A70000106031C2A=02100F528315,7A7055000106032234=02100F528315,7A7055000106032A21=02100F55528315,000106037A703313=02100F55528315,000106037A700509=02100F55528315,000106037A702D03=02100F55528315,000106037A700613=02100F55528315,000106037A702235=02100F55528315,000106037A70391D=02100F55528315,000106037A70100F=02100F55528315,000106087A702C111B=02100F55528315,000106087A702C2E2916=02100F55528315,7A2C71707D000106030430=02100F55528315,7A2C71707D000106033B32=02100F55528315,7A2C71707D000106081903=02100F55528315,7A702C2E000106033A27=02100F55528315,7A702C000106030931=02100F55528315,7A702C000106030C1C=02100F55528315,7A70000106032735=02100F555283152C8071,000106037A700B13=02100F555283152C807138,000106037A701517=02100F555283152C807138,000106037A702917=02100F555283156C,000106037A703136=550F522010,7A2C71707D01022A1E=550F715220,7A702C2E1333=550F715220,7A702C2E000106081405=556C,000106087A702C2E0433=556C,7A70000106083B38=556C0F197120,7A702C2E1E01=556C0F19712001,7A702C2E190B=556C000108,7A70230B=556C000108,7A702C2E1A0F=556C0001082C807115295256,7A701830=556C0008,7A2C71707D01023814=556C100F295220,7A2C71707D03082F=556C100F295220,7A702C0C1D=556C100F295220,7A702C2E00010603021D=556C100F295220,7A70000106031121=556C100F2952202C,7A701835=556C100F2952202C80713815,000106037A703B30=556C100F29522002,000106037A70290C=556C100F29522002,7A70000106030930=556C100F2952200238,000106037A702B27=556C100F2952200102,7A702C2E3812=556C08,000106037A701012=556C08,000106037A701621=556C08,7A702C2E000106033209=556C08,7A702C2E000106032021=556C082C807138152952,000106037A700009=556C082C807138152952,000106037A702A1D=807138152952000170100F,032C200A05=807138152952000170100F,032C20273B=8071381529527A706C550F,032C203423=80711529525600010870556C100F,032C201511=80711529525600010870556C100F,032C20183B=80711529525600010870556C100F,032C203311=010F2C80093829206C55,7A702B29=010F2C80093829206C55,7A70616D3A25=010F2C09382920,7A70550825=010F2C093829207A6C5570,201E=010F09382920,7A702C2E352E=010670100F2C71522000,1C28=010670100F7152207A6C55,2C2E2E11=0106100F7152,7A70032C203205=0106100F71526C,7A70032C202A19=0102290F20,7A702C2E2A1F=010270290F2C207A6C55,2413=010270290F2C207A6C55,0437=010270290F2C207A6C55,0935=010270550F,032C201B18=010270550F20,2B24=010270550F20,2F80261906=010270550F20,2C2E2732=010270550F20,2C2E071A=010270550F20,2C2E3700=010270550F20,7A7D1724=010270550F203800,2F80263921=010270550F202C29,416D290F=010270550F202C807138152952,1619=010270550F202C8071381529527A,3207=010270550F202C80711529525600,0829=010270550F2000,060D=010270550F2000,0001=010270550F2000,2736=010270550F207A,1B1E=010270550F207A,2C2E140B=010270550F207A6C,0114=010270550F7A6C,032C202C3B=010270550F7A6C,032C20201F=0102550F20,7A702C1A13=0102550F20,7A702C3637=0102550F20,7A702C280B=0102550F20,7A702C223B=0102550F20,7A702C032D04=0102100F2C29528320,7A701409=0102100F2C29528320,7A70552307=0102100F2C2952832000,0005=0102100F295283,032C207A700A00=0102100F2955528320,7A2C71707D082D=0102100F2955528320,7A702C2E2809=0102100F295552832000,7A702C2E2B2D=0102100F7055528315,021E=0102100F7055528315,0C20=0102100F7055528315,2F80263420=0102100F7055528315,2F80261510=0102100F7055528315,2F80262E10=0102100F7055528315,2F80262806=0102100F7055528315,2F80263134=0102100F7055528315,2F80261D38=0102100F7055528315,2F8026251A=0102100F7055528315,2F80263A2A=0102100F7055528315,2F80267A7D1120=0102100F7055528315,2F80267A7D0824=0102100F7055528315,2C2E1E00=0102100F7055528315,2C2E7A2F1D=0102100F7055528315,032C200A06=0102100F7055528315,7A7D2C2E1C2E=0102100F70555283153800,2F80261832=0102100F70555283153800,2C2E280A=0102100F70555283153800,2C2E320A=0102100F705552831538007A,2738=0102100F705552831538007A6C,2F80260720=0102100F705552831538007A6C,2F8026032B=0102100F70555283152C292000,1907=0102100F70555283152C292000,3703=0102100F70555283152C292000,2739=0102100F70555283152C29207A,251B=0102100F70555283152C29207A,2B25=0102100F70555283152C29207A6C,1331=0102100F70555283152C207A,0D29=0102100F70555283152C80717A,1B1D=0102100F70555283158071,032C200D2D=0102100F705552831500,1725=0102100F705552831500,352D=0102100F705552831500,0C19=0102100F705552831500,150F=0102100F705552831500,3025=0102100F705552831500,0F07=0102100F705552831500,1E09=0102100F705552831500,251F=0102100F705552831500,010C=0102100F705552831500,2F80261A10=0102100F705552831500,2F80261016=0102100F705552831500,2F80260934=0102100F705552831500,2F80262910=0102100F705552831500,2F80267A7D1A14=0102100F705552831500,2C2E2304=0102100F705552831500,7A7D3421=0102100F7055528315002C2920,212F=0102100F7055528315002C807138,111F=0102100F7055528315002C807138,3135=0102100F7055528315008071,032C200828=0102100F7055528315007A6C,2022=0102100F70555283156C,7A7D140A=0102100F70555283156C,7A7D2C2E2127=0102100F70555283157A,1618=0102100F70555283157A,0B0F=0102100F70555283157A,1836=0102100F70555283157A,172E=0102100F70555283157A,2F8026352A=0102100F70555283157A,2F80262B2E=0102100F70555283157A,2F8026082A=0102100F70555283157A,2F80262306=0102100F70555283157A,2F80263702=0102100F70555283157A,2F80262C38=0102100F70555283157A,2F80261E06=0102100F70555283157A,2F80261B1A=0102100F70555283157A,2F8026032A=0102100F70555283157A,2C2E1F14=0102100F70555283157A,2C2E3810=0102100F70555283157A,2C2E262C=0102100F70555283157A29,032C20201A=0102100F70555283157A00,2F80260A02=0102100F70555283157A00,2F80261838=0102100F70555283157A6C,2F80260E34=0102100F70555283157A6C,2F80260438=0102100F70555283157A6C,2C2E2F1A=0102100F70555283157A6C,2C2E2305=0102100F528315,7A70553525=0102100F5283152C8071,7A70550723=0102100F528315807138,7A7055032C200D2A=0102100F55528315,2F80267A2C71707D3316=0102100F55528315,2F80267A2C71707D1224=0102100F55528315,2F80267A2C71707D212E=0102100F55528315,2F80267A700616=0102100F55528315,2F80267A70380C=0102100F55528315,2F80267A700434=0102100F55528315,2F80267A702A18=0102100F55528315,7A2C71707D2628=0102100F55528315,7A2C71707D100C=0102100F55528315,7A2C71707D2F80261729=0102100F55528315,7A701F15=0102100F55528315,7A70240E=0102100F55528315,7A703632=0102100F55528315,7A701339=0102100F55528315,7A700115=0102100F55528315,7A702C2C37=0102100F55528315,7A702C320B=0102100F55528315,7A702C3206=0102100F55528315,7A702C2E2238=0102100F55528315,616D2F80267A2C71707D3816=0102100F555283153800,2F80267A701406=0102100F555283153800,2F80267A700111=0102100F555283152C8071,7A700501=0102100F555283152C8071,7A70370B=0102100F555283152C807138,7A703B37=0102100F555283152C80713800,7A701C2F=0102100F555283152920,7A702C240F=0102100F555283152920,7A702C0A03=0102100F555283152920,7A702C0221=0102100F55528315292000,7A702C2E3317=0102100F55528315292000,7A702C2E3634=0102100F5552831500,2F80267A2C71707D3028=0102100F5552831500,7A2C71707D111A=0102100F5552831500,7A2C71707D071E=0102100F5552831500,7A2C71707D2913=0102100F5552831500,7A702F19=0102100F5552831500,7A702301=0102100F5552831500,7A702C3919=0102100F5552831500,7A702C3B33=0102100F5552831500,7A702C2E0223=0102100F5552831500,7A702C03032F=0102100F55528315006C,7A702C2E262E=0102100F555283156C,2F80267A70032E=0102100F555283156C,7A2C71707D0F0B=0102100F555283156C,7A701D3B=0102100F555283156C,7A702C2E030116=01100F1571292C20,2F80267A703200=01100F1571292C20,7A7055370A=01100F1571292C2000,7A701B22=01100F1571292C2000,7A701E04=01100F1571292C2000,416D1336=01100F1571292C20007A70556C,391A=01100F1571292C20007A6C7055,1C24=01100F1571292C207A7055,2F80260D2E=01100F15712920,7A702C2E2D0A=01100F15712920,7A702C2E2800=01100F15712920027A7055,2C2E251E=01100F157129207A70556C,2C2E1228=01100F157129207A70556C,416D2C2E050A=01100F5220,7A70550000=01100F5220,616D2624=01100F5220,616D2F80267A702804=01100F5220006C,7A70550F06=01100F52207A70556C,2C2E2F1E=01100F52207A70556C,2C2E1014=01100F527A70556C,032C20161E=01100F712920,7A702C2E0A0A=01100F71522C2920,616D161C=0070100F292C20,01020F04=0006100F7020,7A7D01026D183A=0006100F7020,616D0102201C=0006100F20,7A2C71707D01026D1D37=000170100F292C20,2F18=000170100F292C802038,161D=00014B0F,032C201338=00014B0F2C2002,2F80261728=00014B0F20,2C2E0F0A=00014B0F20,7A2C71707D1833=00014B0F20,7A702C1407=00014B0F20,7A702C1401=0001060838,2C2E1123=0001060838,416D032C202019=000106082C38,2C31=000106082C38,391F=000106082C38,2523=000106082C38,7A70416D1C29=000106082C38020F71295283,3811=000106082C38020F71295283,7A700937=000106082C386C550F197120,7A700117=00010252100F29202C7A706C55,1337=00010206700F202C807138152952,3A2E=00010206100F7020,616D0610=00010206100F20,7A2C71707D0328=00010206100F20,7A700F01=00010206100F20,7A702C3310=00010206100F20,7A702C2E3139=0001100F298020,7A702C2625=00010870556C100F2C20,1909=00010870556C100F2C20,391E=00010870556C100F2C20,2124=00010870556C100F2C20,2F80267A7D0F00=00010870556C100F2C2038,2D09=00010870556C100F2C2002,0500=00010870556C100F2C207A,2C39=00010870556C100F2C207A,2518=00010870556C100F2C207A,0B0C=00010870556C100F2C207A,2F80262911=00010870556C100F7A,032C200007=000108556C100F2C2029,7A700A07=000108556C100F2C2029,7A701332=000108556C100F20,2C2E7A70100D=000108556C100F20,7A702C2E2239=000108556C100F20,7A702C2E0A01=000108556C100F20,7A702C2E380D=0001086C100F2C20,7A70551D36=0001086C100F2C20,7A70552F1F=000108100F70552920,010D=000108100F70552920,616D0507=000108100F705529202C80713815,0B0D=000108100F705529202C8071157A,3133=000108100F7055292002,2309=000108100F7055292002,416D0002=000108100F705529207A,2F80263202=000108100F705529207A,2F80263638=000108100F705529207A,2C2E2A1A=000108100F705529207A38,2F80262414=000108100F705529207A6C,2C2E2E14=000108100F552920,7A2C71707D1404=000108100F552920,7A2C71707D0B17=000108100F552920,7A70330D=000108100F552920,7A702C172F=000108100F552920,7A702C2E3707=000108100F5529206C,616D7A702C2E302E=6C55700F197120,2C2E7A7D0C22=6C55700F197120,7A7D01026D1E02=6C550F297120,000106037A703923=6C550F297120,7A702C2E03230A=6C550F1920,7A2C71707D240C=6C550F19200210,7A2C71707D000106031A16=6C550F197120,000106037A701513=6C550F197120,7A703A2B=6C550F197120,7A701837=6C550F197120,7A702F23=6C550F197120,7A702F22=6C550F197120,7A702D07=6C550F197120,7A702C2E3922=6C550F197120,7A700102093A=6C550F197120,7A70000106031B19=6C550F197120,616D7A70071F=6C550F197120,616D7A702C2E212B=6C550F197120,616D7A702C2E000106032734=6C550F197120292C,000106037A700325=6C550F1971200001020610,7A702C122B=6C550F19712008,000106037A702411=6C100F2952,7A7055032C20010E=100F2C29528320,01023704=100F2C29528320,0102363A=100F292C206C55,000106037A702B26=100F2920,7A2C71707D01026D302C=100F7055528315,01021E08=100F7055528315,01022730=100F7055528315,01021512=100F7055528315,010200352C=100F7055528315,7A7D01026D2F1C=100F7055528315,7A7D01026D0222=100F70555283153800,01026D2412=100F70555283157A,01022230=100F70555283157A,0102060E=100F70555283157A6C,01022C3A=100F70555283157A6C,01026D1F12=100F1571292C20,01026D3B36=100F1571292C20,01026D1516=100F1571292C20,000106037A702302=100F1571292C20,000106037A701D32=100F1571292C20,000106082F8026330E=100F1571292C20,000106086D2A1C=100F1571292C20,7A7001026D313A=100F1571292C20,7A7000010603341C=100F1571292C20,416D7A70000106032B2A=100F1571292C2002,000106037A700326=100F1571292C20556C,000106037A70273A=100F1571292C2000,01026D0722=100F1571292C2000,01026D2E0C=100F1571292C206C55,000106037A701408=100F1571292C207A706C55,01022020=100F1571292C207A706C55,000106081726=100F1571292C207A6C7055,0102290E=100F1571292C207A6C7055,000106080932=100F1571292C207A6C7055,000106080D26=100F52,00010608032C20100E=100F5283153800,01027A70550B16=100F5220,2F8026000106081122=100F5220,6D010200133A=100F5220,01026D1F16=100F5220,000106037A703132=100F5220,000106083B3A=100F5220,000106082522=100F5220,00010608190A=100F5220,000106082C2E021C=100F5220,7A70000106030936=100F52202C,01026D3A2C=100F52206C55,01027A701A0C=100F52206C55,000106037A700E30=100F52206C55,000106037A700A08=100F52207A706C55,000106083204=100F52207A6C5570,01026D0B0E=100F55528315,01027A2C71707D0004=100F55528315,7A2C71707D01026D1D3A=100F55528315,7A2C71707D01026D3418=100F5552831500,7A2C71707D0102201D=100F712920,7A702C2E00010608030E36=100F71522C2920,01023635=100F715229,00010608032C20021B=7A70550F2C715220,1900=7A70550F715220,2C2E0A09=7A70556C,00010608172C=7A70556C,00010608032C200B14=7A70556C,00010608032C202914=7A70556C0F197120,2C2E0938=7A70556C0F197120,000106082C2E111E=7A70556C000108,0502=7A70556C000108,2F80260D2F=7A70556C0001082C807138152952,2D0B=7A70556C0001082C807138152952,3633=7A70556C0001082C807115295256,0C18=7A70556C0008,01020218=7A70556C0008,0102302F=7A70556C100F295220,000106082C35=7A70556C100F295220,000106081E0B=7A70556C100F2952202C807115,3130=7A70556C100F29522002,000106080506=7A70556C100F29522001,2C2E330F=7A70556C100F29522001022C8071,010F=7A70556C100F295220010200,0435=7A70556C100F295280713815,032C200614=7A70556C100F295201,032C20122C=7A70556C100F29520102,032C203B39=7A706C550F297120,0F05=7A706C550F297102,032C200D25=7A706C550F19712001,616D2233=7A706C550F19712000010608,2626=7A6C70550F197120,01021A17=7A6C70550F197120,00010608262F=7A6C70550F1971202C29,000106083529=7A6C70550F19712002,616D000106082D08=7A6C70550F197120103800,0102341F=7A6C55700F197120,2C2E172B=082C38,7A7055000106030D27=082C38,7A70000106030827=08556C100F2C20,000106037A702803=08556C100F2C20,000106037A701013=08556C100F2C20,7A7000010603262B=08556C100F2C20,7A7000010603240D=08556C100F2C20,7A70000106033631=08556C100F2C20,7A70000106030431=08556C100F20,7A702C2E000106031D35=08100F552920,000106037A701335=08100F552920,000106037A700612=08100F55292038,000106037A70";C.SHEN_SHA=["{s.none}","{sn.tianEn}","{sn.mingFei}","{sn.muCang}","{sn.buJiang}","{sn.siXiang}","{sn.mingFeiDui}","{sn.wuHe}","{sn.sanHe}","{sn.chuShen}","{sn.yueDe}","{sn.yueKong}","{sn.yueDeHe}","{sn.yueEn}","{sn.shiYin}","{sn.wuFu}","{sn.shengQi}","{sn.jinKui}","{sn.xiangRi}","{sn.yinDe}","{sn.liuHe}","{sn.yiHou}","{sn.qingLong}","{sn.xuShi}","{sn.mingTang}","{sn.wangRi}","{sn.yaoAn}","{sn.guanRi}","{sn.jiQi}","{sn.fuDe}","{sn.liuYi}","{sn.jinTang}","{sn.baoGuang}","{sn.minRi}","{sn.linRi}","{sn.tianMa}","{sn.jingAn}","{sn.puHu}","{sn.yiMa}","{sn.tianHou}","{sn.yangDe}","{sn.tianXi}","{sn.tianYi}","{sn.siMing}","{sn.shengXin}","{sn.yuYu}","{sn.shouRi}","{sn.shiDe}","{sn.jieShen}","{sn.shiYang}","{sn.tianCang}","{sn.tianWu}","{sn.yuTang}","{sn.fuSheng}","{sn.tianDe}","{sn.tianDeHe}","{sn.tianYuan}","{sn.tianShe}","{sn.tianFu}","{sn.yinShen}","{sn.jieChu}","{sn.wuXu}","{sn.wuLi}","{sn.chongRi}","{sn.fuRi}","{sn.xueZhi}","{sn.tianZei}","{sn.tuFu}","{sn.youHuo}","{sn.baiHu}","{sn.xiaoHao}","{sn.zhiSi}","{sn.heKui}","{sn.jieSha}","{sn.yueSha}","{sn.yueJian}","{sn.wangWang}","{sn.daShi}","{sn.daBai}","{sn.xianChi}","{sn.yanDui}","{sn.zhaoYao}","{sn.jiuKan}","{sn.jiuJiao}","{sn.tianGang}","{sn.siShen}","{sn.yueHai}","{sn.siQi}","{sn.yuePo}","{sn.daHao}","{sn.tianLao}","{sn.yuanWu}","{sn.yueYan}","{sn.yueXu}","{sn.guiJi}","{sn.xiaoShi}","{sn.tianXing}","{sn.zhuQue}","{sn.jiuKong}","{sn.tianLi}","{sn.diHuo}","{sn.fourHit}","{sn.daSha}","{sn.gouChen}","{sn.baZhuan}","{sn.zaiSha}","{sn.tianHuo}","{sn.xueJi}","{sn.tuHu}","{sn.yueXing}","{sn.chuShuiLong}","{sn.diNang}","{sn.baFeng}","{sn.siFei}","{sn.siJi}","{sn.siQiong}","{sn.wuMu}","{sn.yinCuo}","{sn.siHao}","{sn.yangCuo}","{sn.guChen}","{sn.xiaoHui}","{sn.daHui}","{sn.baLong}","{sn.qiNiao}","{sn.jiuHu}","{sn.liuShe}","{sn.tianGou}","{sn.xingHen}","{sn.liaoLi}","{sn.suiBo}","{sn.zhuZhen}","{sn.sanSang}","{sn.sanYin}","{sn.yinDaoChongYang}","{sn.yinWei}","{sn.yinYangJiaoPo}","{sn.yinYangJuCuo}","{sn.yinYangJiChong}","{sn.guiKu}","{sn.danYin}","{sn.jueYin}","{sn.chunYang}","{sn.yangCuoYinChong}","{sn.qiFu}","{sn.chengRi}","{sn.guYang}","{sn.jueYang}","{sn.chunYin}","{sn.daTui}","{sn.siLi}","{sn.yangPoYinChong}"];C.DAY_SHEN_SHA=[";000002300F14156869717A3F;01001617495C40413C425D6A;0209000C041831031906054A5E6B4B5F;033500041A1B032C06054C4D4E60;04002D321C1D1E104F50615152;05111F53546C55433C3E;062E200721220D01566E44;070B2333242F45;08360A2526242F080157583D59;091234080162463C3D5A;0A270728292A5B6364653F79;0B0237130E2B4748727A3E66;0C09020C04300F0314150568696D;0D3504031617495C40413C6F425D6A;0E38183119064A5E6B4B5F;0F001A1B032C064C4D4E60;10002D321C1D1E104F50615152;110B00111F53546C55433C3E;12360A002E200721220D015644;13002333456D;142526242F080157583F3D59;15001234080162463C3D5A;16090004270728292A5B636465;17350204130E032B47483E66;1802300F14156869;19031617495C40413C425D6A;1A1831031906054A5E6B4B5F;1B0B1A1B032C06054C4D4E;1C360A2D321C1D1E104F50615152;1D111F53546C55433C3E;1E2E200721220D01563F44;1F23334573;20090C042526242F080157583D;2135041234080162463C3D5A;22270728292A5B636465;2302130E032B47483E66;2402300F0314150568696E;250B031617495C40413C425D6A;26360A18311906054A5E6B4B5F;271A1B2C06054C4D4E60;282D321C1D1E104F506151523F;29111F53546C55433C3E;2A090C042E200721220D015644;2B350423334567;2C2526242F0857583D59;2D001234080162463C3D5A;2E00270728292A5B63646574;2F0B0002130E032B47483E66;30360A0002300F141505686975;31001617495C40413C425D6A676D;3218311906054A5E6B4B3F675F76;331A1B2C06054C4D4E60;34090C042D321C1D1E104F50615152;353504111F53546C55433C6F3E;362E200721220D5644;3723334567;382526242F08015758703D6759;390B123408016246703C3D5A84;3A360A270728292A5B636465;3B02130E2B47483E66;",";00090002272A536C4C4D4E41717A;0100300F3103233C6151523F66;020004180E032406150543405D;03000C041A1D340617054A5E6B4F50;04002D1B555F;050B112526321C2B3C42654B3E60;060A2E2014100547546246;0712070D161F566A;0822192F0148453D44;092C083301575868695B633C3D;0A0937131E495C6459;0B020721282903727A3F3E5A;0C020427032A05536C4C4D4E416D;0D0C04300F03233C6F61515266;0E38180E24061543405D;0F0B001A1D3406174A5E6B4F5078;100A002D1B555F;1100112526321C2B3C42654B3E60;12002E2014100147546246;130012070D161F566A6D;140922192F080148453D44;152C083301575868695B633C3F3D44;160413031E495C6459;17020C0407212829033E5A;1802272A536C4C4D4E41;190B300F3103233C61515266;1A0A180E032406150543405D;1B1A1D340617014A5E6B4F50;1C2D1B555F;1D112526321C2B3C42654B3E60;1E092E2014100147546246;1F12070D161F56736E6A3F;200422192F080148453D44;210C042C083301575868695B633C3D;22131E495C6459;230B0207212829033E5A;240A0227032A05536C4C4D4E41;25300F31233C61515266;26180E2406150543405D;271A1D340617054A5E6B4F50;28092D1B555F;29112526321C2B3C42654B3F3E60;2A042E2014100147546246;2B0C0412070D161F566A67;2C22192F0848453D44;2D0B002C083301575868695B633C3D85;2E0A0013031E495C6459;2F0002072128293E5A;300002272A05536C4C4D4E4175;3100300F31233C6151526E676D66;3209180E2406150543405D;331A1D340617054A5E6B4F503F76;34042D1B555F;350C04112526321C2B3C6F42654B3E60;362E20141047546246;370B12070D161F566A67;380A22192F08014845703D6744;392C083301575868695B63703C3D74;3A131E495C6459;3B02072128293E5A;",";00000207282931032B717A6E5D59;01000314473C5A;020A000427182526300F1D16062A054F506A;03360B00041A1906055562464066;04002D2C154A5E6B6C733F788B;0512111B0E1E17483C3E;060C2E20321C016869655F;0753544960;08350907210D230810015B63564B3D77;091324081F014C4D4E453C423D;0A2203342F57586461515244;0B02032C4341727A3E;0C0A020407282931032B055D6D59;0D360B040314473C6F5A;0E3827182526300F1D16062A4F506A3F;0F001A19065562464066;10000C2D2C154A5E6B6C86;110012111B0E1E17483C3E;123509002E20321C0168696E655F;13005354495C6D60;1407210D230810015B63564B3D7F;1537130324081F014C4D4E453C423D;160A042203342F57586461515244;17360B0204033343413E;1802072829312B5D3F59;190314473C5A;1A0C27182526300F1D16062A054F506A;1B1A1906055562464066;1C35092D2C154A5E6B6C;1D12111B0E1E17483C3E;1E2E20321C016869655F;1F5354495C60;200A0407210D230810015B63564B3D80;21360B04130324081F014C4D4E453C423D;2222342F5758646151523F44;2302033343413E;24020C072829312B055D59;2514473C5A;26120927182526300F1D16062A054F506A;271A1906055562464066;282D2C154A5E6B6C76;2912111B0E1E17483C3E;2A0A042E20321C016869655F;2B360B045354495C6760;2C07210D2308105B63564B3F3D77;2D00130324081F014C4D4E453C423D;2E000C22342F57586461515244;2F00023343413E;3035090002072829312B05755D59;310014473C676D5A;3227182526300F1D16062A054F506A67;331A1906055562464066;340A042D2C154A5E6B6C;35360B0412111B0E1E17483C6F3E;362E20321C6869653F5F;375354495C6760;380C07210D230810015B6356704B3D677774;391324081F014C4D4E45703C423D;3A350922342F57586461515244;3B023343413E;",";000A00220362463C44;010B00072128291D334F50645D;02360002230605534855423F59;03000212300F24060568695A;0400042E27342A495C403C8C;050C04184A5E6B3E66788D76;06091A1B2B15014C4D4E;07352D321C14175B636151526577;0811130E16080147546C433C6A3D5F;0920070D190801563D60;0A0A032C2F104541;0B0B252631031E1F57584B3E;0C362203056246717B3C3F6D44;0D072128291D334F50645D;0E020423065348554259;0F00020C0412300F240668696E5A;1009002E12342A495C403C;113500184A5E6B3E66;12001A1B2B15014C4D4E;13002D321C14175B63615152656D77;140A11130E0316080147546C433C6F6A3D5F;150B20070D03190801563D60;1636032C2F104541733F;17252631031E1F5758727B4B3E;1804220362463C44;190C04072128291D334F50645D;1A09022306055348554259;1B3502120D0F24060568695A;1C2E27342A495C403C;1D184A5E6B3E66;1E0A381A1B2B15014C4D4E;1F0B2D321C14175B63615152657F;20363711130E0316080147546C433C6A3F3D5F;2120070D03190801563D60;2204032C2F104541;230C042526311E1F57584B3E;2409220562463C44;2535072128291D334F50645D;26022306055348554259;270212300F24060568695A;280A2E27342A495C403C6F;290B184A5E6B3E66;2A361A1B2B15014C4D4E3F81;2B2D321C14175B6361515265678074;2C0411130E03160847546C433C6A3D5F;2D000C0420070D190801566E3D60;2E09002C2F104541;2F35002526311E1F57584B3E;300022056246703C44;3100072128291D334F50645D676D;320A02230605534855426759;330B02120D0F2406056869755A;34362E27342A495C403C3F;35184A5E6B3E6676;36041A1B2B154C4D4E81;370C042D321C14175B6361515265677774;380911130E16080147546C433C6A3D675F;393520070D190801563D60;3A2C2F104541;3B2526311E1F5758704B3E87;",";00001D2F10575868694F503C;0100122B1F495C5564;0209000207222829140605655D44;03000216063305474C4D4E51526A4B3F;04000C042E300F193C6159;0504182C43403E5A;06271A1E2A014A5E6B6C5B6342;070B2D1B1366;080A112526321C0815013C3D;0920032308170153546246413D;0A07210D310324565F;0B0E033448453E60;0C091D2F1005575868694F50717B3C6D;0D122B1F495C553F;0E020C04072228291406655D44;0F000204160633474C4D4E51526A4B;10002E300F193C6159;110B00182C43403E5A;120A00271A1E2A014A5E6B6C5B6342;13002D1B13036D66;14112526321C030815013C6F3D;1520032308170153546246413D;160907210D31032456735F;170E344845727B3F3E60;180C041D2F10575868694F503C;1904122B1F495C5564;1A0207222829140605655D44;1B0B0216063305474C4D4E51526A4B;1C0A2E300F193C6159;1D182C43403E5A;1E38271A1E2A014A5E6B6C5B6342;1F2D1B130366;2009112526321C030815013C3D;21202308170153546246413F3D;220C0407210D3103565F;23040E3448453E60;241D2F1005575868694F503C;250B122B1F495C5564;260A0207222829140605655D44;270216063305474C4D4E51526A4B;282E300F193C6F616E59;29182C43403E5A;2A09271A1E2A014A5E6B6C5B63427988;2B372D1B133F6766;2C0C04112526321C0308153C3D;2D0004202308170153546246413D;2E0007210D3124565F;2F0B000E3448453E60;300A001D2F1005575868694F50703C89;3100122B1F495C5564676D;320207222829140605655D6744;330216063305474C4D4E7551526A4B;34092E300F193C6159;35182C43403F3E5A;360904271A1E2A4A5E6B6C5B634278;37042D1B136766;38112526321C0815013C3D67;390B202308170153546246413D;3A0A07210D3124566E5F;3B0E03344845703E60;",";003509001E2F554C4D4E453C51525D5F;010057586C646160;0200020E06100543;0300020721282923061F0565;0400042E2224533C7344;05360B04182526300F34335B633F3E74;060A1A13016246404B59;070C2D2B4A5E6B5A;0827111B0314082A0148413C3D;0920321C310316080148413C3D;0A35090319154754495C42;0B12070D1D2C174F50563E;0C1E2F05554C4D4E45717B3C51525D6D5F;0D57586C646160;0E02040E061043;0F360B0002040721282923061F653F;100A002E2224533C44;11000C182526300F34335B633E;12001A1303016246404B59;13002D032B4A5E6B6D5A;14350927111B0314082A0148413C6F3D;1520321C310316080168696A3D66;1619154754495C426E;1712070D1D2C174F5056727B3E;18041E2F554C4D4E453C51525D5F;19360B0457586C64613F60;1A0A020E06100543;1B020C0721282923061F0565;1C2E2224533C44;1D182526300F34335B633E;1E3509381A1303016246404B59;1F2D032B4A5E6B5A;2027111B14082A0148413C3D;2120321C3116080168696A3D66;22040319154754495C42;23360B0412070D1D2C174F50563F3E;240A1E2F05554C4D4E453C51525D5F;250C57586C646160;26020E06100543;27020721282923061F0565;2835092E2224533C6F44;29182526300F34335B633E;2A1A13016246404B5982;2B2D2B4A5E6B675A76;2C0427111B0314082A48413C3D;2D360B000420321C3116080168696A3F3D66;2E0A0019154754495C42;2F000C12070D1D2C174F50563E;30001E2F05554C4D4E45703C51525D5F;310057586C6461676D608E;323509020E0610054367;33020721282923061F057565;342E2224533C6E44;35182526300F34335B633E7974;3637041A13036246404B5982;37360B042D2B4A5E6B3F675A76;380A27111B14082A0148413C3D67;390C20321C3116080168696A3D66;3A0319154754495C42;3B12070D1D2C174F5056703E;",";0000302007210D341556;01000217455D;020A0025262B2F060557586C5F;030B001406056246603C8F;0436000207282916105B6364656A;0537130E191F47483E;0622300F2C0168693F44;07021E33495C40413C;08090C04184A5E423D59;093504121A1B0308014C4D4E51524B3D5A;0A02272D321C1D232A4F507E61;0B1124535455433E66;0C0A2E2007210D341505566D;0D0B0217455D;0E3625262B2F0657586C;0F00140662463C4260;10000207282916105B6364656A3F79;1100130E191F47483E;1209350C0422300F032C01686944;1335000204031E33495C40413C6D;1418310308014A5E6B3D59;15121A1B0308014C4D4E51524B3D5A;160A02272D321C1D232A4F507E61;170B1124535455433C6F6E3E66;18362E2007210D341556;190217455D;1A25262B060557586C3F5F;1B14060562463C4260;1C09020C0407282916105B6364656A;1D3504130E03191F47483E;1E22300F032C01686944;1F02031E495C40413C;200A183108014A5E6B3D59;210B121A1B08014C4D4E51524B3D5A;223602272D321C1D232A4F507E61;231124535455433C3E66;242E2007210D34150556717C3F;25021745735D;26090C0425262B2F060557586C5F;27350414060562463C4260;280207282916105B6364656A74;29130E03191F47483E;2A0A22300F2C01686944;2B0B021E33495C40413C6F67;2C36381831034A5E6B3D59;2D00121A1B08014C4D4E51524B3D5A;2E0002272D321C1D232A4F507E613F;2F00112453545543727C3C3E66;3009000C042E2007210D34150556;313500020417455D676D;3225262B2F060557586C70675F;331406056246703C426084;340A0207282916105B6364656A;350B130E191F47486E3E;363622300F032C7544;37021E33495C40413C67;38183108014A5E6B3F3D675976;39121A1B08014C4D4E51524B3D5A;3A09020C04272D321C1D232A4F507E61;3B35041124535455433C3E66;",";000A002E27202C2A475462464B;010B0002070D1E5666;02002F06150548456E5D;0300061705575868695B633C;040002130323495C645F;0507212829249060;0609341001534C4D4E415152;070212300F31031F3C61423F;080418220E032B080143403D44;090C041A1D14080833014A5E6B6C4F503D;0A0A022D1B16556A59;0B0B112526321C193C653E5A;0C2E27202C2A05475462464B6D;0D02070D1E5666;0E2F061548455D;0F000617575868695B633C85;10090002371323495C645F;11000721282903243F3E60;12000403341001534C4D4E415152;1300020C0412300F31031F3C61426D;140A18220E032B080143403D44;150B1A1D140833014A5E6B6C4F503D;16022D1B16556A59;17112526321C193C6F653E5A;182E27202C2A475462464B;1902070D1E5666;1A092F06150548455D;1B061705575868695B633C3F79;1C0204130323495C645F;1D0C040721282903243E60;1E0A03341001534C4D4E415152;1F0B0227300F311F3C6142;2018220E2B080143406E3D44;211A1D140833014A5E6B6C4F503D;22022D1B16556A59;23112526321C193C653E5A;24092E27202C2A0547546246717C4B;2502070D1E56733F66;26042F06150548455D;270C04061705575868695B633C;280A02130323495C645F;290B07212829243E60;2A341001534C4D4E415152;2B0212300F311F3C6F614267;2C3818220E032B0843403D44;2D001A1D140833014A5E6B5B4F503D78;2E0900022D1B16556A59;2F00112526321C19727C3C653F3E5A;3000042E27202C2A05475462464B;3100020C04070D1E56676D66;320A2F0615054845705D67;330B061705575868695B63703C74;34021323495C645F;3507212829243E60;36033410534C4D4E41755152;370212300F311F3C614267;380918220E2B080143403D6744;391A1D140833014A5E6B6C4F503F3D76;3A02042D1B16556A59;3B0C04112526321C193C653E5A;",";00002E20391C246869655D59;010002345354495C5A;023509002707210D062A055B6356515277;0300132B06054C4D4E453C66;04000203142F1557586473614B3F;0512161743416A3E;060C072829310319015F;07360B02032C476C3C6E60;080A04182526300F1D1E0810014F503D;09041A081F01556246403D;0A022D224A5E6B4486;0B111B0E2333483C423E;0C35092E20321C24056869655D6D59;0D02345354495C5A;0E2707210D062A5B635651523F77;0F00132B064C4D4E453C66;1000020C03142F15575864614B;11360B001203161743416A3E;120A0004072829310319015F;13000204032C476C3C6D60;14182526300F1D1E0810014F503D;151A081F01556246403D;163509022D224A5E6B44;17111B0E2333483C6F423E;182E20321C246869655D3F59;1902345354495C5A;1A0C2707210D062A055B635651527F;1B360B3713032B06054C4D4E453C66;1C0A020403142F15575864614B;1D041203161743416A3E;1E0728293119015F;1F022C476C3C60;203509182526300F1D1E08104F503D;211A081F01556246403D;22022D224A5E6B3F447891;23111B0E2333483C423E;240C2E20321C24056869717C655D59;25360B021C5354495C6E5A;260A042707210D062A055B6356515280;270413032B06054C4D4E453C66;2802142F15575864614B;2912161743416A3E;2A35090728293119015F;2B022C476C3C6F6760;2C38182526300F1D1E08104F503F3D;2D001A081F01556246403D;2E0002092D224A5E6B4476;2F360B00111B0E233348727C3C423E;300A00042E20321C24056869655D59;31000204345354495C676D5A;322707210D062A055B6356705152677774;33132B06054C4D4E45703C66;34350902142F15575864614B;3512161743416A3E;36072829310319753F5F;37022C476C3C6760;380C182526300F1D1E0810014F503D67;39360B1A081F01556246403D;3A0A02042D224A5E6B44;3B04111B0E2333483C423E;",";00090038041A221B194C4D4E44;0135000C042D321C2C335B6361655D77;02002E11130E1E06054754433C59;03001220070D0605565A;0400272F2A454142;050B252631032357583E66;06360A0324150162463C;07072128291D34174F50644B;080208015348553F3D5F;0902300F2B080168693D60;0A09041410495C403C6F;0B35090418161F4A5E6B6C5152403E;0C1A221B19054C4D4E6D44;0D2D321C2C335B6361655D77;0E2E11130E1E064754433C6E59;0F0B351220070D0306565A;10360A0027032F2A454142;1100252631032357583E66;12000324150162463C3F;1300072128291D34174F50644B6D;1409020408015348553D5F;1535020C04300F2B080168693D60;161410495C403C;1718161F4A5E6B6C51526A3E;181A221B194C4D4E4481;190B0A2E11130E031E06054754433C59;1A360A2E11130E031E06054754433C59;1B1220070D030605565A;1C27032F2A454173423F;1D252631032357583E66;1E090424150162463C;1F350C04072128291D34174F50644B;200208015348553D5F;2102300F2B080168693D60;221410495C403C92;230B18161F4A5E6B6C51526A3E7893;24360A1A221B19054C4D4E44;252D321C2C335B6361655D7F;26372E11130E031E06054754433C3F59;271220070D030605565A;280904272F2A454142;29350C042526312357583E66;2A2415016246703C;2B072128291D34174F50644B67;2C02085348556E3D5F;2D090002300F2B080168693D60;2E360A001410495C403C;2F0018161F4A5E6B6C51526A3E;30001A221B19054C4D4E717D3F4481;31002D321C2C335B6361655D676D8074;3209042E11130E1E06054754433C6F6759;33350C042720070D0605565A;34272F2A454142;35252631235758703E6687;36241562463C;370B072128291D34174F50644B67;38360A023A015348553D675F;3902300F2B08016869753D60;3A1410495C403C3F;3B18161F4A5E6B6C727D51526A3E76;",";0000380C041A23104A5E6B5B63;010004122D1B13241F838A;020A002E11252622321C3406053C5D44;030B00200306330553544641;040007210D312B5659;050E031448453E5A;060E1D162F2A01575868694F503C6A;0719495C556466;0809020728292C081501515242653D;09021E081701474C4D4E3F3D;0A0C04300F3C6F614B5F;0B041843403E60;0C0A1A2310054A5E6B5B636D;0D0B122D1B1303241F838A94;0E2E11252622321C34063C5D44;0F002003063353546C624641;100007210D31032B5659;11000E031448453E5A;120900271D162F2A01575868694F503C6A;130019495C55643F6D66;14020C040728292C081501515242653D;1502041E081701474C4D4E3D;160A300F3C614B5F;170B1843403E60;181A23104A456B5B6378;19122D1B1303241F9583;1A2E11252622321C033406053C5D44;1B200306330553546C6246416E;1C0907210D31032B567359;1D0E1448453F3E5A;1E0C04271D163B2A01575868694F503C6A;1F0419495C556466;200A020728292C081501515242653D;210B021E081701474C4D4E3D;22300F3C614B5F;231843403E60;241A2310054A5E425B63;25122D1B1303241F;26092E11252622321C033406053C5D44;272006330553546C6246413F;280C0407210D312B5659;29040E1448453E5A;2A0A271D162F2A01575868694F50703C6A89;2B0B19495C55646766;2C020728292C0815515242653D;2D00021E081701474C4D4E3D;2E00300F3C614B5F;2F001843403E60;3009001A2310054A5E6B5B63717D7988;310037122D1B13241F3F676D;320C042E11252622321C3406053C6F5D6744;33042006330553546C624641;340A07210D312B5659;350B0E03144845703E5A;36271D162F2A575868694F503C6A;3719495C55646766;38020728292C081501515242653D67;39021E081701474C4D4E756E3D;3A09300F3C614B5F;3B184340727D3F3E60;",";000A003837041A1316624640425D6A5F;01360B00042D194A5E6B4B60;020009111B032C06100548413C;030020321C310310061F056869;0400224754495C7344;05070D1D334F505651523F3E;063509232F01554C4D4E453C59;070C24575864615A;0802270E34082A01433D;09020721282908016E653D66;0A0A042B15536C3C6F;0B360B0412182526300F14175B633E;0C1A13031605624640425D6A6D5F;0D2D03194A5E6B4B60;0E2E111B33061048413C;0F0020321C31031E061F68693F;1035090022034754495C44;11000C070D1D334F505651523E;1200232F01554C4D4E453C59;130024575864616D5A;140A0204270E0F082A01433D;15360B0204072128290801653D66;162B15536C3C;17121825260D0F14175B633E;181A1316624640425D6A5F82;192D03194A5E6B4B3F60;1A35092E111B032C061048413C;1B0C20321C31031E061F056869;1C224754495C44;1D07121D334F505651523E;1E0A04232F01554C4D4E453C59;1F360B0424575864615A;2002270E34082A01433D;2102072128290801653D66;222B15536C3C;2312182526300F14175B633F3E;2435091A13031605624640425D6A5F;250C2D03194A5E6B4B60;262E111B2C06100548413C;2720321C311E061F056869;280A04224746495C44;29360B04070D1D334F505651523E;2A232F01554C4D4E45703C59;2B2457586461675A96;2C02270E34082A433D;2D0002072128290801653F3D66;2E3509002B15536C3C;2F000C12182526300F14175B633E;30001A1316624640717D425D6A5F82;31002D194A5E6B4B676D6076;320A042E111B2C06100548413C6F67;33360B0420321C311E061F0568696E;3422034754495C44;35070D1D334F50567051523E;36232F554C4D4E453C59;3724575864613F675A;38350902270E34082A01433D67;39020C07212829080175653D66;3A2B15536C3C;3B12182526300F14175B63727D3E7974;"];class S2{constructor(e,i,s,r){this._day=S2._ymd(e),this._name=i,this._work=s,this._target=S2._ymd(r)}static _ymd(e){return e.indexOf("-")<0?e.substring(0,4)+"-"+e.substring(4,6)+"-"+e.substring(6):e}getDay(){return this._day}setDay(e){this._day=S2._ymd(e)}getName(){return this._name}setName(e){this._name=e}isWork(){return this._work}setWork(e){this._work=e}getTarget(){return this._target}setTarget(e){this._target=S2._ymd(e)}toString(){return this._day+" "+this._name+(this._work?"调休":"")+" "+this._target}}const w0=class{static _padding(t){return(t<10?"0":"")+t}static _findForward(t){const e=w0._DATA_IN_USE.indexOf(t);if(e<0)return null;let i=w0._DATA_IN_USE.substring(e);const s=i.length%w0._SIZE;for(s>0&&(i=i.substring(s));i.indexOf(t)!==0&&i.length>=w0._SIZE;)i=i.substring(w0._SIZE);return i}static _findBackward(t){const e=w0._DATA_IN_USE.lastIndexOf(t);if(e<0)return null;const i=t.length;let s=w0._DATA_IN_USE.substring(0,e+i),r=s.length;const c=r%w0._SIZE;for(c>0&&(s=s.substring(0,r-c)),r=s.length;r-i!==s.lastIndexOf(t)&&r>=w0._SIZE;)s=s.substring(0,r-w0._SIZE),r=s.length;return s}static _buildHolidayForward(t){const e=t.substring(0,8),i=w0._NAMES_IN_USE[t.charCodeAt(8)-w0._ZERO],s=t.charCodeAt(9)===w0._ZERO,r=t.substring(10,18);return new S2(e,i,s,r)}static _buildHolidayBackward(t){const e=t.length,i=t.substring(e-18,e-10),s=w0._NAMES_IN_USE[t.charCodeAt(e-10)-w0._ZERO],r=t.charCodeAt(e-9)===w0._ZERO,c=t.substring(e-8);return new S2(i,s,r,c)}static _findHolidaysForward(t){const e=[];let i=w0._findForward(t);if(i==null)return e;for(;i.indexOf(t)===0;)e.push(w0._buildHolidayForward(i)),i=i.substring(w0._SIZE);return e}static _findHolidaysBackward(t){const e=[];let i=w0._findBackward(t);if(i==null)return e;let s=i.length;const r=t.length;for(;s-r===i.lastIndexOf(t);)e.push(w0._buildHolidayBackward(i)),i=i.substring(0,s-w0._SIZE),s=i.length;return e.reverse(),e}static getHoliday(t,e=0,i=0){const s=e==0||i==0?w0._findHolidaysForward((t+"").replace(/-/g,"")):w0._findHolidaysForward(t+w0._padding(e)+w0._padding(i));return s.length<1?null:s[0]}static getHolidays(t,e=0){return e==0?w0._findHolidaysForward((t+"").replace(/-/g,"")):w0._findHolidaysForward(t+w0._padding(e))}static getHolidaysByTarget(t,e=0){return e==0?w0._findHolidaysBackward((t+"").replace(/-/g,"")):w0._findHolidaysBackward(t+w0._padding(e))}static _fixNames(t){t&&(w0._NAMES_IN_USE=t)}static _fixData(t){if(!t)return;const e=[];for(;t.length>=w0._SIZE;){const i=t.substring(0,w0._SIZE),s=i.substring(0,8),r=w0._TAG_REMOVE==i.substring(8,9),c=w0.getHoliday(s);if(!c)r||e.push(i);else{let o=-1;for(let d=0,g=w0._NAMES_IN_USE.length;d<g;d++)if(w0._NAMES_IN_USE[d]===c.getName()){o=d;break}if(o>-1){const d=s+String.fromCharCode(o+w0._ZERO)+(c.isWork()?"0":"1")+c.getTarget().replace(/-/g,"");w0._DATA_IN_USE=w0._DATA_IN_USE.replace(new RegExp(d,"g"),r?"":i)}}t=t.substring(w0._SIZE)}e.length>0&&(w0._DATA_IN_USE+=e.join(""))}static fix(t,e){e?(Array.isArray(t)&&w0._fixNames(t),w0._fixData(e)):Array.isArray(t)?w0._fixNames(t):w0._fixData(t)}};let _t=w0;_t.NAMES=["元旦节","春节","清明节","劳动节","端午节","中秋节","国庆节","国庆中秋","抗战胜利日"];_t.DATA="200112290020020101200112300020020101200201010120020101200201020120020101200201030120020101200202091020020212200202101020020212200202121120020212200202131120020212200202141120020212200202151120020212200202161120020212200202171120020212200202181120020212200204273020020501200204283020020501200205013120020501200205023120020501200205033120020501200205043120020501200205053120020501200205063120020501200205073120020501200209286020021001200209296020021001200210016120021001200210026120021001200210036120021001200210046120021001200210056120021001200210066120021001200210076120021001200301010120030101200302011120030201200302021120030201200302031120030201200302041120030201200302051120030201200302061120030201200302071120030201200302081020030201200302091020030201200304263020030501200304273020030501200305013120030501200305023120030501200305033120030501200305043120030501200305053120030501200305063120030501200305073120030501200309276020031001200309286020031001200310016120031001200310026120031001200310036120031001200310046120031001200310056120031001200310066120031001200310076120031001200401010120040101200401171020040122200401181020040122200401221120040122200401231120040122200401241120040122200401251120040122200401261120040122200401271120040122200401281120040122200405013120040501200405023120040501200405033120040501200405043120040501200405053120040501200405063120040501200405073120040501200405083020040501200405093020040501200410016120041001200410026120041001200410036120041001200410046120041001200410056120041001200410066120041001200410076120041001200410096020041001200410106020041001200501010120050101200501020120050101200501030120050101200502051020050209200502061020050209200502091120050209200502101120050209200502111120050209200502121120050209200502131120050209200502141120050209200502151120050209200504303020050501200505013120050501200505023120050501200505033120050501200505043120050501200505053120050501200505063120050501200505073120050501200505083020050501200510016120051001200510026120051001200510036120051001200510046120051001200510056120051001200510066120051001200510076120051001200510086020051001200510096020051001200512310020060101200601010120060101200601020120060101200601030120060101200601281020060129200601291120060129200601301120060129200601311120060129200602011120060129200602021120060129200602031120060129200602041120060129200602051020060129200604293020060501200604303020060501200605013120060501200605023120060501200605033120060501200605043120060501200605053120060501200605063120060501200605073120060501200609306020061001200610016120061001200610026120061001200610036120061001200610046120061001200610056120061001200610066120061001200610076120061001200610086020061001200612300020070101200612310020070101200701010120070101200701020120070101200701030120070101200702171020070218200702181120070218200702191120070218200702201120070218200702211120070218200702221120070218200702231120070218200702241120070218200702251020070218200704283020070501200704293020070501200705013120070501200705023120070501200705033120070501200705043120070501200705053120070501200705063120070501200705073120070501200709296020071001200709306020071001200710016120071001200710026120071001200710036120071001200710046120071001200710056120071001200710066120071001200710076120071001200712290020080101200712300120080101200712310120080101200801010120080101200802021020080206200802031020080206200802061120080206200802071120080206200802081120080206200802091120080206200802101120080206200802111120080206200802121120080206200804042120080404200804052120080404200804062120080404200805013120080501200805023120080501200805033120080501200805043020080501200806074120080608200806084120080608200806094120080608200809135120080914200809145120080914200809155120080914200809276020081001200809286020081001200809296120081001200809306120081001200810016120081001200810026120081001200810036120081001200810046120081001200810056120081001200901010120090101200901020120090101200901030120090101200901040020090101200901241020090125200901251120090125200901261120090125200901271120090125200901281120090125200901291120090125200901301120090125200901311120090125200902011020090125200904042120090404200904052120090404200904062120090404200905013120090501200905023120090501200905033120090501200905284120090528200905294120090528200905304120090528200905314020090528200909276020091001200910016120091001200910026120091001200910036120091001200910046120091001200910055120091003200910065120091003200910075120091003200910085120091003200910105020091003201001010120100101201001020120100101201001030120100101201002131120100213201002141120100213201002151120100213201002161120100213201002171120100213201002181120100213201002191120100213201002201020100213201002211020100213201004032120100405201004042120100405201004052120100405201005013120100501201005023120100501201005033120100501201006124020100616201006134020100616201006144120100616201006154120100616201006164120100616201009195020100922201009225120100922201009235120100922201009245120100922201009255020100922201009266020101001201010016120101001201010026120101001201010036120101001201010046120101001201010056120101001201010066120101001201010076120101001201010096020101001201101010120110101201101020120110101201101030120110101201101301020110203201102021120110203201102031120110203201102041120110203201102051120110203201102061120110203201102071120110203201102081120110203201102121020110203201104022020110405201104032120110405201104042120110405201104052120110405201104303120110501201105013120110501201105023120110501201106044120110606201106054120110606201106064120110606201109105120110912201109115120110912201109125120110912201110016120111001201110026120111001201110036120111001201110046120111001201110056120111001201110066120111001201110076120111001201110086020111001201110096020111001201112310020120101201201010120120101201201020120120101201201030120120101201201211020120123201201221120120123201201231120120123201201241120120123201201251120120123201201261120120123201201271120120123201201281120120123201201291020120123201203312020120404201204012020120404201204022120120404201204032120120404201204042120120404201204283020120501201204293120120501201204303120120501201205013120120501201205023020120501201206224120120623201206234120120623201206244120120623201209295020120930201209305120120930201210016120121001201210026120121001201210036120121001201210046120121001201210056120121001201210066120121001201210076120121001201210086020121001201301010120130101201301020120130101201301030120130101201301050020130101201301060020130101201302091120130210201302101120130210201302111120130210201302121120130210201302131120130210201302141120130210201302151120130210201302161020130210201302171020130210201304042120130404201304052120130404201304062120130404201304273020130501201304283020130501201304293120130501201304303120130501201305013120130501201306084020130612201306094020130612201306104120130612201306114120130612201306124120130612201309195120130919201309205120130919201309215120130919201309225020130919201309296020131001201310016120131001201310026120131001201310036120131001201310046120131001201310056120131001201310066120131001201310076120131001201401010120140101201401261020140131201401311120140131201402011120140131201402021120140131201402031120140131201402041120140131201402051120140131201402061120140131201402081020140131201404052120140405201404062120140405201404072120140405201405013120140501201405023120140501201405033120140501201405043020140501201405314120140602201406014120140602201406024120140602201409065120140908201409075120140908201409085120140908201409286020141001201410016120141001201410026120141001201410036120141001201410046120141004201410056120141001201410066120141001201410076120141001201410116020141001201501010120150101201501020120150101201501030120150101201501040020150101201502151020150219201502181120150219201502191120150219201502201120150219201502211120150219201502221120150219201502231120150219201502241120150219201502281020150219201504042120150405201504052120150405201504062120150405201505013120150501201505023120150501201505033120150501201506204120150620201506214120150620201506224120150620201509038120150903201509048120150903201509058120150903201509068020150903201509265120150927201509275120150927201510016120151001201510026120151001201510036120151001201510046120151004201510056120151001201510066120151001201510076120151001201510106020151001201601010120160101201601020120160101201601030120160101201602061020160208201602071120160208201602081120160208201602091120160208201602101120160208201602111120160208201602121120160208201602131120160208201602141020160208201604022120160404201604032120160404201604042120160404201604303120160501201605013120160501201605023120160501201606094120160609201606104120160609201606114120160609201606124020160609201609155120160915201609165120160915201609175120160915201609185020160915201610016120161001201610026120161001201610036120161001201610046120161001201610056120161001201610066120161001201610076120161001201610086020161001201610096020161001201612310120170101201701010120170101201701020120170101201701221020170128201701271120170128201701281120170128201701291120170128201701301120170128201701311120170128201702011120170128201702021120170128201702041020170128201704012020170404201704022120170404201704032120170404201704042120170404201704293120170501201704303120170501201705013120170501201705274020170530201705284120170530201705294120170530201705304120170530201709306020171001201710016120171001201710026120171001201710036120171001201710045120171004201710056120171001201710066120171001201710076120171001201710086120171001201712300120180101201712310120180101201801010120180101201802111020180216201802151120180216201802161120180216201802171120180216201802181120180216201802191120180216201802201120180216201802211120180216201802241020180216201804052120180405201804062120180405201804072120180405201804082020180405201804283020180501201804293120180501201804303120180501201805013120180501201806164120180618201806174120180618201806184120180618201809225120180924201809235120180924201809245120180924201809296020181001201809306020181001201810016120181001201810026120181001201810036120181001201810046120181001201810056120181001201810066120181001201810076120181001201812290020190101201812300120190101201812310120190101201901010120190101201902021020190205201902031020190205201902041120190205201902051120190205201902061120190205201902071120190205201902081120190205201902091120190205201902101120190205201904052120190405201904062120190405201904072120190405201904283020190501201905013120190501201905023120190501201905033120190501201905043120190501201905053020190501201906074120190607201906084120190607201906094120190607201909135120190913201909145120190913201909155120190913201909296020191001201910016120191001201910026120191001201910036120191001201910046120191001201910056120191001201910066120191001201910076120191001201910126020191001202001010120200101202001191020200125202001241120200125202001251120200125202001261120200125202001271120200125202001281120200125202001291120200125202001301120200125202001311120200125202002011120200125202002021120200125202004042120200404202004052120200404202004062120200404202004263020200501202005013120200501202005023120200501202005033120200501202005043120200501202005053120200501202005093020200501202006254120200625202006264120200625202006274120200625202006284020200625202009277020201001202010017120201001202010026120201001202010036120201001202010046120201001202010056120201001202010066120201001202010076120201001202010086120201001202010106020201001202101010120210101202101020120210101202101030120210101202102071020210212202102111120210212202102121120210212202102131120210212202102141120210212202102151120210212202102161120210212202102171120210212202102201020210212202104032120210404202104042120210404202104052120210404202104253020210501202105013120210501202105023120210501202105033120210501202105043120210501202105053120210501202105083020210501202106124120210614202106134120210614202106144120210614202109185020210921202109195120210921202109205120210921202109215120210921202109266020211001202110016120211001202110026120211001202110036120211001202110046120211001202110056120211001202110066120211001202110076120211001202110096020211001202201010120220101202201020120220101202201030120220101202201291020220201202201301020220201202201311120220201202202011120220201202202021120220201202202031120220201202202041120220201202202051120220201202202061120220201202204022020220405202204032120220405202204042120220405202204052120220405202204243020220501202204303120220501202205013120220501202205023120220501202205033120220501202205043120220501202205073020220501202206034120220603202206044120220603202206054120220603202209105120220910202209115120220910202209125120220910202210016120221001202210026120221001202210036120221001202210046120221001202210056120221001202210066120221001202210076120221001202210086020221001202210096020221001202212310120230101202301010120230101202301020120230101202301211120230122202301221120230122202301231120230122202301241120230122202301251120230122202301261120230122202301271120230122202301281020230122202301291020230122202304052120230405202304233020230501202304293120230501202304303120230501202305013120230501202305023120230501202305033120230501202305063020230501202306224120230622202306234120230622202306244120230622202306254020230622202309295120230929202309306120231001202310016120231001202310026120231001202310036120231001202310046120231001202310056120231001202310066120231001202310076020231001202310086020231001202312300120240101202312310120240101202401010120240101202402041020240210202402101120240210202402111120240210202402121120240210202402131120240210202402141120240210202402151120240210202402161120240210202402171120240210202402181020240210202404042120240404202404052120240404202404062120240404202404072020240404202404283020240501202405013120240501202405023120240501202405033120240501202405043120240501202405053120240501202405113020240501202406084120240610202406094120240610202406104120240610202409145020240917202409155120240917202409165120240917202409175120240917202409296020241001202410016120241001202410026120241001202410036120241001202410046120241001202410056120241001202410066120241001202410076120241001202410126020241001202501010120250101202501261020250129202501281120250129202501291120250129202501301120250129202501311120250129202502011120250129202502021120250129202502031120250129202502041120250129202502081020250129202504042120250404202504052120250404202504062120250404202504273020250501202505013120250501202505023120250501202505033120250501202505043120250501202505053120250501202505314120250531202506014120250531202506024120250531202509287020251001202510017120251001202510027120251001202510037120251001202510047120251001202510057120251001202510067120251001202510077120251001202510087120251001202510117020251001202601010120260101202601020120260101202601030120260101202601040020260101202602141020260217202602151120260217202602161120260217202602171120260217202602181120260217202602191120260217202602201120260217202602211120260217202602221120260217202602231120260217202602281020260217202604042120260405202604052120260405202604062120260405202605013120260501202605023120260501202605033120260501202605043120260501202605053120260501202605093020260501202606194120260619202606204120260619202606214120260619202609206020261001202609255120260925202609265120260925202609275120260925202610016120261001202610026120261001202610036120261001202610046120261001202610056120261001202610066120261001202610076120261001202610106020261001";_t._SIZE=18;_t._ZERO=48;_t._TAG_REMOVE="~";_t._NAMES_IN_USE=w0.NAMES;_t._DATA_IN_USE=w0.DATA;class r3{constructor(e,i){let s=!1,r=!1;for(let c=0,o=C.JIE_QI.length;c<o;c++)if(C.JIE_QI[c]===e){c%2==0?r=!0:s=!0;break}this._name=e,this._solar=i,this._jie=s,this._qi=r}getName(){return this._name}getSolar(){return this._solar}setName(e){this._name=e}setSolar(e){this._solar=e}isJie(){return this._jie}isQi(){return this._qi}toString(){return this.getName()}}class Sd{constructor(e,i){this._liuNian=e,this._index=i}getIndex(){return this._index}getMonthInChinese(){return C.MONTH[this._index+1]}getGanZhi(){const e=C.find(this._liuNian.getGanZhi(),C.GAN).index-1,i=[2,4,6,8,0][e%5],s=C.GAN[(this._index+i)%10+1],r=C.ZHI[(this._index+C.BASE_MONTH_ZHI_INDEX)%12+1];return s+r}getXun(){return C.getXun(this.getGanZhi())}getXunKong(){return C.getXunKong(this.getGanZhi())}}class Q{constructor(e,i=""){this._name=e,this._remark=i}getName(){return this._name}getRemark(){return this._remark}toString(){return this._name}toFullString(){const e=[this._name];return this._remark&&e.push("["+this._remark+"]"),e.join("")}}class j1{}j1.SAN_HUI=["1-7","7-7","10-15"];j1.SAN_YUAN=["1-15","7-15","10-15"];j1.WU_LA=["1-1","5-5","7-7","10-1","12-8"];j1.AN_WU=["{dz.wei}","{dz.xu}","{dz.chen}","{dz.yin}","{dz.wu}","{dz.zi}","{dz.you}","{dz.shen}","{dz.si}","{dz.hai}","{dz.mao}","{dz.chou}"];j1.BA_HUI={"{jz.bingWu}":"天会","{jz.renWu}":"地会","{jz.renZi}":"人会","{jz.gengWu}":"日会","{jz.gengShen}":"月会","{jz.xinYou}":"星辰会","{jz.jiaChen}":"五行会","{jz.jiaXu}":"四时会"};j1.BA_JIE={"{jq.liChun}":"东北方度仙上圣天尊同梵炁始青天君下降","{jq.chunFen}":"东方玉宝星上天尊同青帝九炁天君下降","{jq.liXia}":"东南方好生度命天尊同梵炁始丹天君下降","{jq.xiaZhi}":"南方玄真万福天尊同赤帝三炁天君下降","{jq.liQiu}":"西南方太灵虚皇天尊同梵炁始素天君下降","{jq.qiuFen}":"西方太妙至极天尊同白帝七炁天君下降","{jq.liDong}":"西北方无量太华天尊同梵炁始玄天君下降","{jq.dongZhi}":"北方玄上玉宸天尊同黑帝五炁天君下降"};j1.FESTIVAL={"1-1":[new Q("天腊之辰","天腊,此日五帝会于东方九炁青天")],"1-3":[new Q("郝真人圣诞"),new Q("孙真人圣诞")],"1-5":[new Q("孙祖清静元君诞")],"1-7":[new Q("举迁赏会","此日上元赐福,天官同地水二官考校罪福")],"1-9":[new Q("玉皇上帝圣诞")],"1-13":[new Q("关圣帝君飞升")],"1-15":[new Q("上元天官圣诞"),new Q("老祖天师圣诞")],"1-19":[new Q("长春邱真人(邱处机)圣诞")],"1-28":[new Q("许真君(许逊天师)圣诞")],"2-1":[new Q("勾陈天皇大帝圣诞"),new Q("长春刘真人(刘渊然)圣诞")],"2-2":[new Q("土地正神诞"),new Q("姜太公圣诞")],"2-3":[new Q("文昌梓潼帝君圣诞")],"2-6":[new Q("东华帝君圣诞")],"2-13":[new Q("度人无量葛真君圣诞")],"2-15":[new Q("太清道德天尊(太上老君)圣诞")],"2-19":[new Q("慈航真人圣诞")],"3-1":[new Q("谭祖(谭处端)长真真人圣诞")],"3-3":[new Q("玄天上帝圣诞")],"3-6":[new Q("眼光娘娘圣诞")],"3-15":[new Q("天师张大真人圣诞"),new Q("财神赵公元帅圣诞")],"3-16":[new Q("三茅真君得道之辰"),new Q("中岳大帝圣诞")],"3-18":[new Q("王祖(王处一)玉阳真人圣诞"),new Q("后土娘娘圣诞")],"3-19":[new Q("太阳星君圣诞")],"3-20":[new Q("子孙娘娘圣诞")],"3-23":[new Q("天后妈祖圣诞")],"3-26":[new Q("鬼谷先师诞")],"3-28":[new Q("东岳大帝圣诞")],"4-1":[new Q("长生谭真君成道之辰")],"4-10":[new Q("何仙姑圣诞")],"4-14":[new Q("吕祖纯阳祖师圣诞")],"4-15":[new Q("钟离祖师圣诞")],"4-18":[new Q("北极紫微大帝圣诞"),new Q("泰山圣母碧霞元君诞"),new Q("华佗神医先师诞")],"4-20":[new Q("眼光圣母娘娘诞")],"4-28":[new Q("神农先帝诞")],"5-1":[new Q("南极长生大帝圣诞")],"5-5":[new Q("地腊之辰","地腊,此日五帝会于南方三炁丹天"),new Q("南方雷祖圣诞"),new Q("地祗温元帅圣诞"),new Q("雷霆邓天君圣诞")],"5-11":[new Q("城隍爷圣诞")],"5-13":[new Q("关圣帝君降神"),new Q("关平太子圣诞")],"5-18":[new Q("张天师圣诞")],"5-20":[new Q("马祖丹阳真人圣诞")],"5-29":[new Q("紫青白祖师圣诞")],"6-1":[new Q("南斗星君下降")],"6-2":[new Q("南斗星君下降")],"6-3":[new Q("南斗星君下降")],"6-4":[new Q("南斗星君下降")],"6-5":[new Q("南斗星君下降")],"6-6":[new Q("南斗星君下降")],"6-10":[new Q("刘海蟾祖师圣诞")],"6-15":[new Q("灵官王天君圣诞")],"6-19":[new Q("慈航(观音)成道日")],"6-23":[new Q("火神圣诞")],"6-24":[new Q("南极大帝中方雷祖圣诞"),new Q("关圣帝君圣诞")],"6-26":[new Q("二郎真君圣诞")],"7-7":[new Q("道德腊之辰","道德腊,此日五帝会于西方七炁素天"),new Q("庆生中会","此日中元赦罪,地官同天水二官考校罪福")],"7-12":[new Q("西方雷祖圣诞")],"7-15":[new Q("中元地官大帝圣诞")],"7-18":[new Q("王母娘娘圣诞")],"7-20":[new Q("刘祖(刘处玄)长生真人圣诞")],"7-22":[new Q("财帛星君文财神增福相公李诡祖圣诞")],"7-26":[new Q("张三丰祖师圣诞")],"8-1":[new Q("许真君飞升日")],"8-3":[new Q("九天司命灶君诞")],"8-5":[new Q("北方雷祖圣诞")],"8-10":[new Q("北岳大帝诞辰")],"8-15":[new Q("太阴星君诞")],"9-1":[new Q("北斗九皇降世之辰")],"9-2":[new Q("北斗九皇降世之辰")],"9-3":[new Q("北斗九皇降世之辰")],"9-4":[new Q("北斗九皇降世之辰")],"9-5":[new Q("北斗九皇降世之辰")],"9-6":[new Q("北斗九皇降世之辰")],"9-7":[new Q("北斗九皇降世之辰")],"9-8":[new Q("北斗九皇降世之辰")],"9-9":[new Q("北斗九皇降世之辰"),new Q("斗姥元君圣诞"),new Q("重阳帝君圣诞"),new Q("玄天上帝飞升"),new Q("酆都大帝圣诞")],"9-22":[new Q("增福财神诞")],"9-23":[new Q("萨翁真君圣诞")],"9-28":[new Q("五显灵官马元帅圣诞")],"10-1":[new Q("民岁腊之辰","民岁腊,此日五帝会于北方五炁黑天"),new Q("东皇大帝圣诞")],"10-3":[new Q("三茅应化真君圣诞")],"10-6":[new Q("天曹诸司五岳五帝圣诞")],"10-15":[new Q("下元水官大帝圣诞"),new Q("建生大会","此日下元解厄,水官同天地二官考校罪福")],"10-18":[new Q("地母娘娘圣诞")],"10-19":[new Q("长春邱真君飞升")],"10-20":[new Q("虚靖天师(即三十代天师弘悟张真人)诞")],"11-6":[new Q("西岳大帝圣诞")],"11-9":[new Q("湘子韩祖圣诞")],"11-11":[new Q("太乙救苦天尊圣诞")],"11-26":[new Q("北方五道圣诞")],"12-8":[new Q("王侯腊之辰","王侯腊,此日五帝会于上方玄都玉京")],"12-16":[new Q("南岳大帝圣诞"),new Q("福德正神诞")],"12-20":[new Q("鲁班先师圣诞")],"12-21":[new Q("天猷上帝圣诞")],"12-22":[new Q("重阳祖师圣诞")],"12-23":[new Q("祭灶王","最适宜谢旧年太岁,开启拜新年太岁")],"12-25":[new Q("玉帝巡天"),new Q("天神下降")],"12-29":[new Q("清静孙真君(孙不二)成道")]};class O{constructor(e,i="",s=!1,r=""){this._name=e,this._result=i||"",this._everyMonth=s,this._remark=r}getName(){return this._name}getResult(){return this._result}isEveryMonth(){return this._everyMonth}getRemark(){return this._remark}toString(){return this._name}toFullString(){const e=[this._name];return this._result&&e.push(this._result),this._remark&&e.push(this._remark),e.join(" ")}}const j=class{static getXiu(t,e){return j.XIU_27[(j.XIU_OFFSET[Math.abs(t)-1]+e-1)%j.XIU_27.length]}};let e1=j;e1.DAY_ZHAI_GUAN_YIN=["1-8","2-7","2-9","2-19","3-3","3-6","3-13","4-22","5-3","5-17","6-16","6-18","6-19","6-23","7-13","8-16","9-19","9-23","10-2","11-19","11-24","12-25"];e1.XIU_27=["{xx.jiao}","{xx.kang}","{xx.di}","{xx.fang}","{xx.xin}","{xx.tail}","{xx.ji}","{xx.dou}","{xx.nv}","{xx.xu}","{xx.wei}","{xx.shi}","{xx.qiang}","{xx.kui}","{xx.lou}","{xx.vei}","{xx.mao}","{xx.bi}","{xx.zi}","{xx.can}","{xx.jing}","{xx.gui}","{xx.liu}","{xx.xing}","{xx.zhang}","{xx.yi}","{xx.zhen}"];e1.XIU_OFFSET=[11,13,15,17,19,21,24,0,2,4,7,9];e1._DJ="犯者夺纪";e1._JS="犯者减寿";e1._SS="犯者损寿";e1._XL="犯者削禄夺纪";e1._JW="犯者三年内夫妇俱亡";e1._Y=new O("杨公忌");e1._T=new O("四天王巡行","",!0);e1._D=new O("斗降",j._DJ,!0);e1._S=new O("月朔",j._DJ,!0);e1._W=new O("月望",j._DJ,!0);e1._H=new O("月晦",j._JS,!0);e1._L=new O("雷斋日",j._JS,!0);e1._J=new O("九毒日","犯者夭亡,奇祸不测");e1._R=new O("人神在阴","犯者得病",!0,"宜先一日即戒");e1._M=new O("司命奏事",j._JS,!0,"如月小,即戒廿九");e1._HH=new O("月晦",j._JS,!0,"如月小,即戒廿九");e1.FESTIVAL={"1-1":[new O("天腊,玉帝校世人神气禄命",j._XL),j._S],"1-3":[new O("万神都会",j._DJ),j._D],"1-5":[new O("五虚忌")],"1-6":[new O("六耗忌"),j._L],"1-7":[new O("上会日",j._SS)],"1-8":[new O("五殿阎罗天子诞",j._DJ),j._T],"1-9":[new O("玉皇上帝诞",j._DJ)],"1-13":[j._Y],"1-14":[new O("三元降",j._JS),j._T],"1-15":[new O("三元降",j._JS),new O("上元神会",j._DJ),j._W,j._T],"1-16":[new O("三元降",j._JS)],"1-19":[new O("长春真人诞")],"1-23":[new O("三尸神奏事"),j._T],"1-25":[j._H,new O("天地仓开日","犯者损寿,子带疾")],"1-27":[j._D],"1-28":[j._R],"1-29":[j._T],"1-30":[j._HH,j._M,j._T],"2-1":[new O("一殿秦广王诞",j._DJ),j._S],"2-2":[new O("万神都会",j._DJ),new O("福德土地正神诞","犯者得祸")],"2-3":[new O("文昌帝君诞",j._XL),j._D],"2-6":[new O("东华帝君诞"),j._L],"2-8":[new O("释迦牟尼佛出家",j._DJ),new O("三殿宋帝王诞",j._DJ),new O("张大帝诞",j._DJ),j._T],"2-11":[j._Y],"2-14":[j._T],"2-15":[new O("释迦牟尼佛涅槃",j._XL),new O("太上老君诞",j._XL),new O("月望",j._XL,!0),j._T],"2-17":[new O("东方杜将军诞")],"2-18":[new O("四殿五官王诞",j._XL),new O("至圣先师孔子讳辰",j._XL)],"2-19":[new O("观音大士诞",j._DJ)],"2-21":[new O("普贤菩萨诞")],"2-23":[j._T],"2-25":[j._H],"2-27":[j._D],"2-28":[j._R],"2-29":[j._T],"2-30":[j._HH,j._M,j._T],"3-1":[new O("二殿楚江王诞",j._DJ),j._S],"3-3":[new O("玄天上帝诞",j._DJ),j._D],"3-6":[j._L],"3-8":[new O("六殿卞城王诞",j._DJ),j._T],"3-9":[new O("牛鬼神出","犯者产恶胎"),j._Y],"3-12":[new O("中央五道诞")],"3-14":[j._T],"3-15":[new O("昊天上帝诞",j._DJ),new O("玄坛诞",j._DJ),j._W,j._T],"3-16":[new O("准提菩萨诞",j._DJ)],"3-19":[new O("中岳大帝诞"),new O("后土娘娘诞"),new O("三茅降")],"3-20":[new O("天地仓开日",j._SS),new O("子孙娘娘诞")],"3-23":[j._T],"3-25":[j._H],"3-27":[new O("七殿泰山王诞"),j._D],"3-28":[j._R,new O("苍颉至圣先师诞",j._XL),new O("东岳大帝诞")],"3-29":[j._T],"3-30":[j._HH,j._M,j._T],"4-1":[new O("八殿都市王诞",j._DJ),j._S],"4-3":[j._D],"4-4":[new O("万神善会","犯者失瘼夭胎"),new O("文殊菩萨诞")],"4-6":[j._L],"4-7":[new O("南斗、北斗、西斗同降",j._JS),j._Y],"4-8":[new O("释迦牟尼佛诞",j._DJ),new O("万神善会","犯者失瘼夭胎"),new O("善恶童子降","犯者血死"),new O("九殿平等王诞"),j._T],"4-14":[new O("纯阳祖师诞",j._JS),j._T],"4-15":[j._W,new O("钟离祖师诞"),j._T],"4-16":[new O("天地仓开日",j._SS)],"4-17":[new O("十殿转轮王诞",j._DJ)],"4-18":[new O("天地仓开日",j._SS),new O("紫徽大帝诞",j._SS)],"4-20":[new O("眼光圣母诞")],"4-23":[j._T],"4-25":[j._H],"4-27":[j._D],"4-28":[j._R],"4-29":[j._T],"4-30":[j._HH,j._M,j._T],"5-1":[new O("南极长生大帝诞",j._DJ),j._S],"5-3":[j._D],"5-5":[new O("地腊",j._XL),new O("五帝校定生人官爵",j._XL),j._J,j._Y],"5-6":[j._J,j._L],"5-7":[j._J],"5-8":[new O("南方五道诞"),j._T],"5-11":[new O("天地仓开日",j._SS),new O("天下都城隍诞")],"5-12":[new O("炳灵公诞")],"5-13":[new O("关圣降",j._XL)],"5-14":[new O("夜子时为天地交泰",j._JW),j._T],"5-15":[j._W,j._J,j._T],"5-16":[new O("九毒日",j._JW),new O("天地元气造化万物之辰",j._JW)],"5-17":[j._J],"5-18":[new O("张天师诞")],"5-22":[new O("孝娥神诞",j._DJ)],"5-23":[j._T],"5-25":[j._J,j._H],"5-26":[j._J],"5-27":[j._J,j._D],"5-28":[j._R],"5-29":[j._T],"5-30":[j._HH,j._M,j._T],"6-1":[j._S],"6-3":[new O("韦驮菩萨圣诞"),j._D,j._Y],"6-5":[new O("南赡部洲转大轮",j._SS)],"6-6":[new O("天地仓开日",j._SS),j._L],"6-8":[j._T],"6-10":[new O("金粟如来诞")],"6-14":[j._T],"6-15":[j._W,j._T],"6-19":[new O("观世音菩萨成道",j._DJ)],"6-23":[new O("南方火神诞","犯者遭回禄"),j._T],"6-24":[new O("雷祖诞",j._XL),new O("关帝诞",j._XL)],"6-25":[j._H],"6-27":[j._D],"6-28":[j._R],"6-29":[j._T],"6-30":[j._HH,j._M,j._T],"7-1":[j._S,j._Y],"7-3":[j._D],"7-5":[new O("中会日",j._SS,!1,"一作初七")],"7-6":[j._L],"7-7":[new O("道德腊",j._XL),new O("五帝校生人善恶",j._XL),new O("魁星诞",j._XL)],"7-8":[j._T],"7-10":[new O("阴毒日","",!1,"大忌")],"7-12":[new O("长真谭真人诞")],"7-13":[new O("大势至菩萨诞",j._JS)],"7-14":[new O("三元降",j._JS),j._T],"7-15":[j._W,new O("三元降",j._DJ),new O("地官校籍",j._DJ),j._T],"7-16":[new O("三元降",j._JS)],"7-18":[new O("西王母诞",j._DJ)],"7-19":[new O("太岁诞",j._DJ)],"7-22":[new O("增福财神诞",j._XL)],"7-23":[j._T],"7-25":[j._H],"7-27":[j._D],"7-28":[j._R],"7-29":[j._Y,j._T],"7-30":[new O("地藏菩萨诞",j._DJ),j._HH,j._M,j._T],"8-1":[j._S,new O("许真君诞")],"8-3":[j._D,new O("北斗诞",j._XL),new O("司命灶君诞","犯者遭回禄")],"8-5":[new O("雷声大帝诞",j._DJ)],"8-6":[j._L],"8-8":[j._T],"8-10":[new O("北斗大帝诞")],"8-12":[new O("西方五道诞")],"8-14":[j._T],"8-15":[j._W,new O("太明朝元","犯者暴亡",!1,"宜焚香守夜"),j._T],"8-16":[new O("天曹掠刷真君降","犯者贫夭")],"8-18":[new O("天人兴福之辰","",!1,"宜斋戒,存想吉事")],"8-23":[new O("汉恒候张显王诞"),j._T],"8-24":[new O("灶君夫人诞")],"8-25":[j._H],"8-27":[j._D,new O("至圣先师孔子诞",j._XL),j._Y],"8-28":[j._R,new O("四天会事")],"8-29":[j._T],"8-30":[new O("诸神考校","犯者夺算"),j._HH,j._M,j._T],"9-1":[j._S,new O("南斗诞",j._XL),new O("北斗九星降世",j._DJ,!1,"此九日俱宜斋戒")],"9-3":[j._D,new O("五瘟神诞")],"9-6":[j._L],"9-8":[j._T],"9-9":[new O("斗母诞",j._XL),new O("酆都大帝诞"),new O("玄天上帝飞升")],"9-10":[new O("斗母降",j._DJ)],"9-11":[new O("宜戒")],"9-13":[new O("孟婆尊神诞")],"9-14":[j._T],"9-15":[j._W,j._T],"9-17":[new O("金龙四大王诞","犯者遭水厄")],"9-19":[new O("日宫月宫会合",j._JS),new O("观世音菩萨诞",j._JS)],"9-23":[j._T],"9-25":[j._H,j._Y],"9-27":[j._D],"9-28":[j._R],"9-29":[j._T],"9-30":[new O("药师琉璃光佛诞","犯者危疾"),j._HH,j._M,j._T],"10-1":[j._S,new O("民岁腊",j._DJ),new O("四天王降","犯者一年内死")],"10-3":[j._D,new O("三茅诞")],"10-5":[new O("下会日",j._JS),new O("达摩祖师诞",j._JS)],"10-6":[j._L,new O("天曹考察",j._DJ)],"10-8":[new O("佛涅槃日","",!1,"大忌色欲"),j._T],"10-10":[new O("四天王降","犯者一年内死")],"10-11":[new O("宜戒")],"10-14":[new O("三元降",j._JS),j._T],"10-15":[j._W,new O("三元降",j._DJ),new O("下元水府校籍",j._DJ),j._T],"10-16":[new O("三元降",j._JS),j._T],"10-23":[j._Y,j._T],"10-25":[j._H],"10-27":[j._D,new O("北极紫徽大帝降")],"10-28":[j._R],"10-29":[j._T],"10-30":[j._HH,j._M,j._T],"11-1":[j._S],"11-3":[j._D],"11-4":[new O("至圣先师孔子诞",j._XL)],"11-6":[new O("西岳大帝诞")],"11-8":[j._T],"11-11":[new O("天地仓开日",j._DJ),new O("太乙救苦天尊诞",j._DJ)],"11-14":[j._T],"11-15":[new O("月望","上半夜犯男死 下半夜犯女死"),new O("四天王巡行","上半夜犯男死 下半夜犯女死")],"11-17":[new O("阿弥陀佛诞")],"11-19":[new O("太阳日宫诞","犯者得奇祸")],"11-21":[j._Y],"11-23":[new O("张仙诞","犯者绝嗣"),j._T],"11-25":[new O("掠刷大夫降","犯者遭大凶"),j._H],"11-26":[new O("北方五道诞")],"11-27":[j._D],"11-28":[j._R],"11-29":[j._T],"11-30":[j._HH,j._M,j._T],"12-1":[j._S],"12-3":[j._D],"12-6":[new O("天地仓开日",j._JS),j._L],"12-7":[new O("掠刷大夫降","犯者得恶疾")],"12-8":[new O("王侯腊",j._DJ),new O("释迦如来成佛之辰"),j._T,new O("初旬内戊日,亦名王侯腊",j._DJ)],"12-12":[new O("太素三元君朝真")],"12-14":[j._T],"12-15":[j._W,j._T],"12-16":[new O("南岳大帝诞")],"12-19":[j._Y],"12-20":[new O("天地交道","犯者促寿")],"12-21":[new O("天猷上帝诞")],"12-23":[new O("五岳诞降"),j._T],"12-24":[new O("司今朝天奏人善恶","犯者得大祸")],"12-25":[new O("三清玉帝同降,考察善恶","犯者得奇祸"),j._H],"12-27":[j._D],"12-28":[j._R],"12-29":[new O("华严菩萨诞"),j._T],"12-30":[new O("诸神下降,察访善恶","犯者男女俱亡")]};e1.OTHER_FESTIVAL={"1-1":["弥勒菩萨圣诞"],"1-6":["定光佛圣诞"],"2-8":["释迦牟尼佛出家"],"2-15":["释迦牟尼佛涅槃"],"2-19":["观世音菩萨圣诞"],"2-21":["普贤菩萨圣诞"],"3-16":["准提菩萨圣诞"],"4-4":["文殊菩萨圣诞"],"4-8":["释迦牟尼佛圣诞"],"4-15":["佛吉祥日"],"4-28":["药王菩萨圣诞"],"5-13":["伽蓝菩萨圣诞"],"6-3":["韦驮菩萨圣诞"],"6-19":["观音菩萨成道"],"7-13":["大势至菩萨圣诞"],"7-15":["佛欢喜日"],"7-24":["龙树菩萨圣诞"],"7-30":["地藏菩萨圣诞"],"8-15":["月光菩萨圣诞"],"8-22":["燃灯佛圣诞"],"9-9":["摩利支天菩萨圣诞"],"9-19":["观世音菩萨出家"],"9-30":["药师琉璃光佛圣诞"],"10-5":["达摩祖师圣诞"],"10-20":["文殊菩萨出家"],"11-17":["阿弥陀佛圣诞"],"11-19":["日光菩萨圣诞"],"12-8":["释迦牟尼佛成道"],"12-23":["监斋菩萨圣诞"],"12-29":["华严菩萨圣诞"]};class z1{}z1.NUMBER=["{n.one}","{n.two}","{n.three}","{n.four}","{n.five}","{n.six}","{n.seven}","{n.eight}","{n.nine}"];z1.WU_XING=["{wx.shui}","{wx.tu}","{wx.mu}","{wx.mu}","{wx.tu}","{wx.jin}","{wx.jin}","{wx.tu}","{wx.huo}"];z1.POSITION=["{bg.kan}","{bg.kun}","{bg.zhen}","{bg.xun}","{ps.center}","{bg.qian}","{bg.dui}","{bg.gen}","{bg.li}"];z1.LUCK_XUAN_KONG=["{s.goodLuck}","{s.badLuck}","{s.badLuck}","{s.goodLuck}","{s.badLuck}","{s.goodLuck}","{s.badLuck}","{s.goodLuck}","{s.goodLuck}"];z1.YIN_YANG_QI_MEN=["{s.yang}","{s.yin}","{s.yang}","{s.yang}","{s.yang}","{s.yin}","{s.yin}","{s.yang}","{s.yin}"];z1.COLOR=["{s.white}","{s.black}","{s.blue}","{s.green}","{s.yellow}","{s.white}","{s.red}","{s.white}","{s.purple}"];const B0=class{static updateArray(t){const e=B0._ARRAYS[t],i=B0._OBJ_ARRAYS[t],s=Object.keys(e);for(let r=0,c=s.length;r<c;r++){const o=s[r],d=e[o];for(let g=0,f=d.length;g<f;g++)i[o][g]=d[g].replace(/{(.[^}]*)}/g,(E,F)=>B0.getMessage(F))}}static updateStringDictionary(t){const e=B0._DICT_STRING[t],i=B0._OBJ_STRING[t],s=Object.keys(e);for(let r=0,c=s.length;r<c;r++){const o=s[r],d=e[o],g=Object.keys(d);for(let f=0,E=g.length;f<E;f++){const F=g[f],x=F.replace(/{(.[^}]*)}/g,(A,y)=>B0.getMessage(y));i[o][x]=d[F].replace(/{(.[^}]*)}/g,(A,y)=>B0.getMessage(y))}}}static updateNumberDictionary(t){const e=B0._DICT_NUMBER[t],i=B0._OBJ_NUMBER[t],s=Object.keys(e);for(let r=0,c=s.length;r<c;r++){const o=s[r],d=e[o],g=Object.keys(d);for(let f=0,E=g.length;f<E;f++){const F=g[f],x=F.replace(/{(.[^}]*)}/g,(A,y)=>B0.getMessage(y));i[o][x]=d[F]}}}static updateArrayDictionary(t){const e=B0._DICT_ARRAY[t],i=B0._OBJ_ARRAY[t],s=Object.keys(e);for(let r=0,c=s.length;r<c;r++){const o=s[r],d=e[o],g=Object.keys(d);for(let f=0,E=g.length;f<E;f++){const F=g[f],x=F.replace(/{(.[^}]*)}/g,(y,B)=>B0.getMessage(B)),A=d[F];for(let y=0,B=A.length;y<B;y++)A[y]=A[y].replace(/{(.[^}]*)}/g,(_,S)=>B0.getMessage(S));i[o][x]=A}}}static update(){let t=Object.keys(B0._ARRAYS);for(let e=0,i=t.length;e<i;e++)B0.updateArray(t[e]);t=Object.keys(B0._DICT_STRING);for(let e=0,i=t.length;e<i;e++)B0.updateStringDictionary(t[e]);t=Object.keys(B0._DICT_NUMBER);for(let e=0,i=t.length;e<i;e++)B0.updateNumberDictionary(t[e]);t=Object.keys(B0._DICT_ARRAY);for(let e=0,i=t.length;e<i;e++)B0.updateArrayDictionary(t[e])}static setMessages(t,e){if(!e)return;B0._MESSAGES[t]||(B0._MESSAGES[t]={});const i=Object.keys(e);for(let s=0,r=i.length;s<r;s++){const c=i[s];B0._MESSAGES[t][c]=e[c]}B0.update()}static getMessage(t){let e=B0._MESSAGES[B0._LANG][t];return e==null&&(e=B0._MESSAGES[B0._DEFAULT_LANG][t]),e==null&&(e=t),e}static setLanguage(t){B0._MESSAGES[t]&&(B0._LANG=t,B0.update())}static getLanguage(){return B0._LANG}static initArray(t){const e=B0._ARRAYS[t],i=B0._OBJ_ARRAYS[t],s=Object.keys(e);for(let r=0,c=s.length;r<c;r++){const o=s[r];e[o].length=0;const d=i[o];for(let g=0,f=d.length;g<f;g++)e[o].push(d[g])}}static initArrayDictionary(t){const e=B0._DICT_ARRAY[t],i=B0._OBJ_ARRAY[t],s=Object.keys(e);for(let r=0,c=s.length;r<c;r++){const o=s[r],d=i[o],g=Object.keys(d);for(let f=0,E=g.length;f<E;f++){const F=g[f];e[o][F]=d[F]}}}static initStringDictionary(t){const e=B0._DICT_STRING[t],i=B0._OBJ_STRING[t],s=Object.keys(e);for(let r=0,c=s.length;r<c;r++){const o=s[r],d=i[o],g=Object.keys(d);for(let f=0,E=g.length;f<E;f++){const F=g[f];e[o][F]=d[F]}}}static initNumberDictionary(t){const e=B0._DICT_NUMBER[t],i=B0._OBJ_NUMBER[t],s=Object.keys(e);for(let r=0,c=s.length;r<c;r++){const o=s[r],d=i[o],g=Object.keys(d);for(let f=0,E=g.length;f<E;f++){const F=g[f];e[o][F]=d[F]}}}static init(){if(B0._INIT)return;B0._INIT=!0;let t=Object.keys(B0._ARRAYS);for(let e=0,i=t.length;e<i;e++)B0.initArray(t[e]);t=Object.keys(B0._DICT_STRING);for(let e=0,i=t.length;e<i;e++)B0.initStringDictionary(t[e]);t=Object.keys(B0._DICT_NUMBER);for(let e=0,i=t.length;e<i;e++)B0.initNumberDictionary(t[e]);t=Object.keys(B0._DICT_ARRAY);for(let e=0,i=t.length;e<i;e++)B0.initArrayDictionary(t[e]);B0.setLanguage(B0._DEFAULT_LANG)}};let a0=B0;a0._DEFAULT_LANG="chs";a0._INIT=!1;a0._MESSAGES={chs:{"tg.jia":"甲","tg.yi":"乙","tg.bing":"丙","tg.ding":"丁","tg.wu":"戊","tg.ji":"己","tg.geng":"庚","tg.xin":"辛","tg.ren":"壬","tg.gui":"癸","dz.zi":"子","dz.chou":"丑","dz.yin":"寅","dz.mao":"卯","dz.chen":"辰","dz.si":"巳","dz.wu":"午","dz.wei":"未","dz.shen":"申","dz.you":"酉","dz.xu":"戌","dz.hai":"亥","zx.jian":"建","zx.chu":"除","zx.man":"满","zx.ping":"平","zx.ding":"定","zx.zhi":"执","zx.po":"破","zx.wei":"危","zx.cheng":"成","zx.shou":"收","zx.kai":"开","zx.bi":"闭","jz.jiaZi":"甲子","jz.yiChou":"乙丑","jz.bingYin":"丙寅","jz.dingMao":"丁卯","jz.wuChen":"戊辰","jz.jiSi":"己巳","jz.gengWu":"庚午","jz.xinWei":"辛未","jz.renShen":"壬申","jz.guiYou":"癸酉","jz.jiaXu":"甲戌","jz.yiHai":"乙亥","jz.bingZi":"丙子","jz.dingChou":"丁丑","jz.wuYin":"戊寅","jz.jiMao":"己卯","jz.gengChen":"庚辰","jz.xinSi":"辛巳","jz.renWu":"壬午","jz.guiWei":"癸未","jz.jiaShen":"甲申","jz.yiYou":"乙酉","jz.bingXu":"丙戌","jz.dingHai":"丁亥","jz.wuZi":"戊子","jz.jiChou":"己丑","jz.gengYin":"庚寅","jz.xinMao":"辛卯","jz.renChen":"壬辰","jz.guiSi":"癸巳","jz.jiaWu":"甲午","jz.yiWei":"乙未","jz.bingShen":"丙申","jz.dingYou":"丁酉","jz.wuXu":"戊戌","jz.jiHai":"己亥","jz.gengZi":"庚子","jz.xinChou":"辛丑","jz.renYin":"壬寅","jz.guiMao":"癸卯","jz.jiaChen":"甲辰","jz.yiSi":"乙巳","jz.bingWu":"丙午","jz.dingWei":"丁未","jz.wuShen":"戊申","jz.jiYou":"己酉","jz.gengXu":"庚戌","jz.xinHai":"辛亥","jz.renZi":"壬子","jz.guiChou":"癸丑","jz.jiaYin":"甲寅","jz.yiMao":"乙卯","jz.bingChen":"丙辰","jz.dingSi":"丁巳","jz.wuWu":"戊午","jz.jiWei":"己未","jz.gengShen":"庚申","jz.xinYou":"辛酉","jz.renXu":"壬戌","jz.guiHai":"癸亥","sx.rat":"鼠","sx.ox":"牛","sx.tiger":"虎","sx.rabbit":"兔","sx.dragon":"龙","sx.snake":"蛇","sx.horse":"马","sx.goat":"羊","sx.monkey":"猴","sx.rooster":"鸡","sx.dog":"狗","sx.pig":"猪","dw.long":"龙","dw.niu":"牛","dw.gou":"狗","dw.yang":"羊","dw.tu":"兔","dw.shu":"鼠","dw.ji":"鸡","dw.ma":"马","dw.hu":"虎","dw.zhu":"猪","dw.hou":"猴","dw.she":"蛇","dw.huLi":"狐","dw.yan":"燕","dw.bao":"豹","dw.yuan":"猿","dw.yin":"蚓","dw.lu":"鹿","dw.wu":"乌","dw.jiao":"蛟","dw.lang":"狼","dw.fu":"蝠","dw.zhang":"獐","dw.xu":"獝","dw.xie":"獬","dw.han":"犴","dw.he":"貉","dw.zhi":"彘","wx.jin":"金","wx.mu":"木","wx.shui":"水","wx.huo":"火","wx.tu":"土","wx.ri":"日","wx.yue":"月","n.zero":"〇","n.one":"一","n.two":"二","n.three":"三","n.four":"四","n.five":"五","n.six":"六","n.seven":"七","n.eight":"八","n.nine":"九","n.ten":"十","n.eleven":"十一","n.twelve":"十二","d.one":"初一","d.two":"初二","d.three":"初三","d.four":"初四","d.five":"初五","d.six":"初六","d.seven":"初七","d.eight":"初八","d.nine":"初九","d.ten":"初十","d.eleven":"十一","d.twelve":"十二","d.thirteen":"十三","d.fourteen":"十四","d.fifteen":"十五","d.sixteen":"十六","d.seventeen":"十七","d.eighteen":"十八","d.nighteen":"十九","d.twenty":"二十","d.twentyOne":"廿一","d.twentyTwo":"廿二","d.twentyThree":"廿三","d.twentyFour":"廿四","d.twentyFive":"廿五","d.twentySix":"廿六","d.twentySeven":"廿七","d.twentyEight":"廿八","d.twentyNine":"廿九","d.thirty":"三十","m.one":"正","m.two":"二","m.three":"三","m.four":"四","m.five":"五","m.six":"六","m.seven":"七","m.eight":"八","m.nine":"九","m.ten":"十","m.eleven":"冬","m.twelve":"腊","w.sun":"日","w.mon":"一","w.tues":"二","w.wed":"三","w.thur":"四","w.fri":"五","w.sat":"六","xz.aries":"白羊","xz.taurus":"金牛","xz.gemini":"双子","xz.cancer":"巨蟹","xz.leo":"狮子","xz.virgo":"处女","xz.libra":"天秤","xz.scorpio":"天蝎","xz.sagittarius":"射手","xz.capricornus":"摩羯","xz.aquarius":"水瓶","xz.pisces":"双鱼","bg.qian":"乾","bg.kun":"坤","bg.zhen":"震","bg.xun":"巽","bg.kan":"坎","bg.li":"离","bg.gen":"艮","bg.dui":"兑","ps.center":"中","ps.dong":"东","ps.nan":"南","ps.xi":"西","ps.bei":"北","ps.zhong":"中宫","ps.zhengDong":"正东","ps.zhengNan":"正南","ps.zhengXi":"正西","ps.zhengBei":"正北","ps.dongBei":"东北","ps.dongNan":"东南","ps.xiBei":"西北","ps.xiNan":"西南","ps.wai":"外","ps.fangNei":"房内","jq.dongZhi":"冬至","jq.xiaoHan":"小寒","jq.daHan":"大寒","jq.liChun":"立春","jq.yuShui":"雨水","jq.jingZhe":"惊蛰","jq.chunFen":"春分","jq.qingMing":"清明","jq.guYu":"谷雨","jq.liXia":"立夏","jq.xiaoMan":"小满","jq.mangZhong":"芒种","jq.xiaZhi":"夏至","jq.xiaoShu":"小暑","jq.daShu":"大暑","jq.liQiu":"立秋","jq.chuShu":"处暑","jq.baiLu":"白露","jq.qiuFen":"秋分","jq.hanLu":"寒露","jq.shuangJiang":"霜降","jq.liDong":"立冬","jq.xiaoXue":"小雪","jq.daXue":"大雪","sn.qingLong":"青龙","sn.baiHu":"白虎","sn.zhuQue":"朱雀","sn.xuanWu":"玄武","sn.mingTang":"明堂","sn.tianXing":"天刑","sn.tianDe":"天德","sn.jinKui":"金匮","sn.yuTang":"玉堂","sn.siMing":"司命","sn.tianLao":"天牢","sn.gouChen":"勾陈","sn.tianEn":"天恩","sn.muCang":"母仓","sn.shiYang":"时阳","sn.shengQi":"生气","sn.yiHou":"益后","sn.zaiSha":"灾煞","sn.tianHuo":"天火","sn.siJi":"四忌","sn.baLong":"八龙","sn.fuRi":"复日","sn.xuShi":"续世","sn.yueSha":"月煞","sn.yueXu":"月虚","sn.xueZhi":"血支","sn.tianZei":"天贼","sn.wuXu":"五虚","sn.tuFu":"土符","sn.guiJi":"归忌","sn.xueJi":"血忌","sn.yueDe":"月德","sn.yueEn":"月恩","sn.siXiang":"四相","sn.wangRi":"王日","sn.tianCang":"天仓","sn.buJiang":"不将","sn.wuHe":"五合","sn.mingFeiDui":"鸣吠对","sn.yueJian":"月建","sn.xiaoShi":"小时","sn.tuHu":"土府","sn.wangWang":"往亡","sn.yaoAn":"要安","sn.siShen":"死神","sn.tianMa":"天马","sn.jiuHu":"九虎","sn.qiNiao":"七鸟","sn.liuShe":"六蛇","sn.guanRi":"官日","sn.jiQi":"吉期","sn.yuYu":"玉宇","sn.daShi":"大时","sn.daBai":"大败","sn.xianChi":"咸池","sn.shouRi":"守日","sn.tianWu":"天巫","sn.fuDe":"福德","sn.liuYi":"六仪","sn.jinTang":"金堂","sn.yanDui":"厌对","sn.zhaoYao":"招摇","sn.jiuKong":"九空","sn.jiuKan":"九坎","sn.jiuJiao":"九焦","sn.xiangRi":"相日","sn.baoGuang":"宝光","sn.tianGang":"天罡","sn.yueXing":"月刑","sn.yueHai":"月害","sn.youHuo":"游祸","sn.chongRi":"重日","sn.shiDe":"时德","sn.minRi":"民日","sn.sanHe":"三合","sn.linRi":"临日","sn.shiYin":"时阴","sn.mingFei":"鸣吠","sn.siQi":"死气","sn.diNang":"地囊","sn.yueDeHe":"月德合","sn.jingAn":"敬安","sn.puHu":"普护","sn.jieShen":"解神","sn.xiaoHao":"小耗","sn.tianDeHe":"天德合","sn.yueKong":"月空","sn.yiMa":"驿马","sn.tianHou":"天后","sn.chuShen":"除神","sn.yuePo":"月破","sn.daHao":"大耗","sn.wuLi":"五离","sn.yinDe":"阴德","sn.fuSheng":"福生","sn.tianLi":"天吏","sn.zhiSi":"致死","sn.yuanWu":"元武","sn.yangDe":"阳德","sn.tianXi":"天喜","sn.tianYi":"天医","sn.yueYan":"月厌","sn.diHuo":"地火","sn.fourHit":"四击","sn.daSha":"大煞","sn.daHui":"大会","sn.tianYuan":"天愿","sn.liuHe":"六合","sn.wuFu":"五富","sn.shengXin":"圣心","sn.heKui":"河魁","sn.jieSha":"劫煞","sn.siQiong":"四穷","sn.chuShuiLong":"触水龙","sn.baFeng":"八风","sn.tianShe":"天赦","sn.wuMu":"五墓","sn.baZhuan":"八专","sn.yinCuo":"阴错","sn.siHao":"四耗","sn.yangCuo":"阳错","sn.siFei":"四废","sn.sanYin":"三阴","sn.xiaoHui":"小会","sn.yinDaoChongYang":"阴道冲阳","sn.danYin":"单阴","sn.guChen":"孤辰","sn.yinWei":"阴位","sn.xingHen":"行狠","sn.liaoLi":"了戾","sn.jueYin":"绝阴","sn.chunYang":"纯阳","sn.suiBo":"岁薄","sn.yinYangJiaoPo":"阴阳交破","sn.yinYangJuCuo":"阴阳俱错","sn.yinYangJiChong":"阴阳击冲","sn.zhuZhen":"逐阵","sn.yangCuoYinChong":"阳错阴冲","sn.qiFu":"七符","sn.tianGou":"天狗","sn.chengRi":"成日","sn.tianFu":"天符","sn.guYang":"孤阳","sn.jueYang":"绝阳","sn.chunYin":"纯阴","sn.yinShen":"阴神","sn.jieChu":"解除","sn.yangPoYinChong":"阳破阴冲","ss.biJian":"比肩","ss.jieCai":"劫财","ss.shiShen":"食神","ss.shangGuan":"伤官","ss.pianCai":"偏财","ss.zhengCai":"正财","ss.qiSha":"七杀","ss.zhengGuan":"正官","ss.pianYin":"偏印","ss.zhengYin":"正印","s.none":"无","s.huangDao":"黄道","s.heiDao":"黑道","s.goodLuck":"吉","s.badLuck":"凶","s.yin":"阴","s.yang":"阳","s.white":"白","s.black":"黑","s.blue":"碧","s.green":"绿","s.yellow":"黄","s.red":"赤","s.purple":"紫","jr.chuXi":"除夕","jr.chunJie":"春节","jr.yuanXiao":"元宵节","jr.longTou":"龙头节","jr.duanWu":"端午节","jr.qiXi":"七夕节","jr.zhongQiu":"中秋节","jr.chongYang":"重阳节","jr.laBa":"腊八节","jr.yuanDan":"元旦节","jr.qingRen":"情人节","jr.fuNv":"妇女节","jr.zhiShu":"植树节","jr.xiaoFei":"消费者权益日","jr.wuYi":"劳动节","jr.qingNian":"青年节","jr.erTong":"儿童节","jr.yuRen":"愚人节","jr.jianDang":"建党节","jr.jianJun":"建军节","jr.jiaoShi":"教师节","jr.guoQing":"国庆节","jr.wanShengYe":"万圣节前夜","jr.wanSheng":"万圣节","jr.pingAn":"平安夜","jr.shengDan":"圣诞节","ds.changSheng":"长生","ds.muYu":"沐浴","ds.guanDai":"冠带","ds.linGuan":"临官","ds.diWang":"帝旺","ds.shuai":"衰","ds.bing":"病","ds.si":"死","ds.mu":"墓","ds.jue":"绝","ds.tai":"胎","ds.yang":"养","h.first":"初候","h.second":"二候","h.third":"三候","h.qiuYinJie":"蚯蚓结","h.miJiao":"麋角解","h.shuiQuan":"水泉动","h.yanBei":"雁北乡","h.queShi":"鹊始巢","h.zhiShi":"雉始雊","h.jiShi":"鸡始乳","h.zhengNiao":"征鸟厉疾","h.shuiZe":"水泽腹坚","h.dongFeng":"东风解冻","h.zheChongShiZhen":"蛰虫始振","h.yuZhi":"鱼陟负冰","h.taJi":"獭祭鱼","h.houYan":"候雁北","h.caoMuMengDong":"草木萌动","h.taoShi":"桃始华","h.cangGeng":"仓庚鸣","h.yingHua":"鹰化为鸠","h.xuanNiaoZhi":"玄鸟至","h.leiNai":"雷乃发声","h.shiDian":"始电","h.tongShi":"桐始华","h.tianShu":"田鼠化为鴽","h.hongShi":"虹始见","h.pingShi":"萍始生","h.mingJiu":"鸣鸠拂其羽","h.daiSheng":"戴胜降于桑","h.louGuo":"蝼蝈鸣","h.qiuYinChu":"蚯蚓出","h.wangGua":"王瓜生","h.kuCai":"苦菜秀","h.miCao":"靡草死","h.maiQiu":"麦秋至","h.tangLang":"螳螂生","h.juShi":"鵙始鸣","h.fanShe":"反舌无声","h.luJia":"鹿角解","h.tiaoShi":"蜩始鸣","h.banXia":"半夏生","h.wenFeng":"温风至","h.xiShuai":"蟋蟀居壁","h.yingShi":"鹰始挚","h.fuCao":"腐草为萤","h.tuRun":"土润溽暑","h.daYu":"大雨行时","h.liangFeng":"凉风至","h.baiLu":"白露降","h.hanChan":"寒蝉鸣","h.yingNai":"鹰乃祭鸟","h.tianDi":"天地始肃","h.heNai":"禾乃登","h.hongYanLai":"鸿雁来","h.xuanNiaoGui":"玄鸟归","h.qunNiao":"群鸟养羞","h.leiShi":"雷始收声","h.zheChongPiHu":"蛰虫坯户","h.shuiShiHe":"水始涸","h.hongYanLaiBin":"鸿雁来宾","h.queRu":"雀入大水为蛤","h.juYou":"菊有黄花","h.caiNai":"豺乃祭兽","h.caoMuHuangLuo":"草木黄落","h.zheChongXianFu":"蛰虫咸俯","h.shuiShiBing":"水始冰","h.diShi":"地始冻","h.zhiRu":"雉入大水为蜃","h.hongCang":"虹藏不见","h.tianQi":"天气上升地气下降","h.biSe":"闭塞而成冬","h.heDan":"鹖鴠不鸣","h.huShi":"虎始交","h.liTing":"荔挺出","ts.zhan":"占","ts.hu":"户","ts.win":"窗","ts.fang":"房","ts.chuang":"床","ts.lu":"炉","ts.zao":"灶","ts.dui":"碓","ts.mo":"磨","ts.xi":"栖","ts.chu":"厨","ts.ce":"厕","ts.cang":"仓","ts.cangKu":"仓库","ts.daMen":"大门","ts.men":"门","ts.tang":"堂","ly.xianSheng":"先胜","ly.xianFu":"先负","ly.youYin":"友引","ly.foMie":"佛灭","ly.daAn":"大安","ly.chiKou":"赤口","yj.jiSi":"祭祀","yj.qiFu":"祈福","yj.qiuSi":"求嗣","yj.kaiGuang":"开光","yj.suHui":"塑绘","yj.qiJiao":"齐醮","yj.zhaiJiao":"斋醮","yj.muYu":"沐浴","yj.chouShen":"酬神","yj.zaoMiao":"造庙","yj.siZhao":"祀灶","yj.fenXiang":"焚香","yj.xieTu":"谢土","yj.chuHuo":"出火","yj.diaoKe":"雕刻","yj.jiaQu":"嫁娶","yj.DingHun":"订婚","yj.naCai":"纳采","yj.wenMing":"问名","yj.naXu":"纳婿","yj.guiNing":"归宁","yj.anChuang":"安床","yj.heZhang":"合帐","yj.guanJi":"冠笄","yj.dingMeng":"订盟","yj.jinRenKou":"进人口","yj.caiYi":"裁衣","yj.wanMian":"挽面","yj.kaiRong":"开容","yj.xiuFen":"修坟","yj.qiZuan":"启钻","yj.poTu":"破土","yj.anZang":"安葬","yj.liBei":"立碑","yj.chengFu":"成服","yj.chuFu":"除服","yj.kaiShengFen":"开生坟","yj.heShouMu":"合寿木","yj.ruLian":"入殓","yj.yiJiu":"移柩","yj.puDu":"普渡","yj.ruZhai":"入宅","yj.anXiang":"安香","yj.anMen":"安门","yj.xiuZao":"修造","yj.qiJi":"起基","yj.dongTu":"动土","yj.shangLiang":"上梁","yj.shuZhu":"竖柱","yj.kaiJing":"开井开池","yj.zuoBei":"作陂放水","yj.chaiXie":"拆卸","yj.poWu":"破屋","yj.huaiYuan":"坏垣","yj.buYuan":"补垣","yj.faMuZuoLiang":"伐木做梁","yj.zuoZhao":"作灶","yj.jieChu":"解除","yj.kaiZhuYan":"开柱眼","yj.chuanPing":"穿屏扇架","yj.gaiWuHeJi":"盖屋合脊","yj.kaiCe":"开厕","yj.zaoCang":"造仓","yj.saiXue":"塞穴","yj.pingZhi":"平治道涂","yj.zaoQiao":"造桥","yj.zuoCe":"作厕","yj.zhuDi":"筑堤","yj.kaiChi":"开池","yj.faMu":"伐木","yj.kaiQu":"开渠","yj.jueJing":"掘井","yj.saoShe":"扫舍","yj.fangShui":"放水","yj.zaoWu":"造屋","yj.heJi":"合脊","yj.zaoChuChou":"造畜稠","yj.xiuMen":"修门","yj.dingSang":"定磉","yj.zuoLiang":"作梁","yj.xiuShi":"修饰垣墙","yj.jiaMa":"架马","yj.kaiShi":"开市","yj.guaBian":"挂匾","yj.naChai":"纳财","yj.qiuCai":"求财","yj.kaiCang":"开仓","yj.maiChe":"买车","yj.zhiChan":"置产","yj.guYong":"雇佣","yj.chuHuoCai":"出货财","yj.anJiXie":"安机械","yj.zaoCheQi":"造车器","yj.jingLuo":"经络","yj.yunNiang":"酝酿","yj.zuoRan":"作染","yj.guZhu":"鼓铸","yj.zaoChuan":"造船","yj.geMi":"割蜜","yj.zaiZhong":"栽种","yj.quYu":"取渔","yj.jieWang":"结网","yj.muYang":"牧养","yj.anDuiWei":"安碓磑","yj.xiYi":"习艺","yj.ruXue":"入学","yj.liFa":"理发","yj.tanBing":"探病","yj.jianGui":"见贵","yj.chengChuan":"乘船","yj.duShui":"渡水","yj.zhenJiu":"针灸","yj.chuXing":"出行","yj.yiXi":"移徙","yj.fenJu":"分居","yj.TiTou":"剃头","yj.zhengShou":"整手足甲","yj.naChu":"纳畜","yj.buZhuo":"捕捉","yj.tianLie":"畋猎","yj.jiaoNiuMa":"教牛马","yj.huiQinYou":"会亲友","yj.fuRen":"赴任","yj.qiuYi":"求医","yj.zhiBing":"治病","yj.ciSong":"词讼","yj.qiJiDongTu":"起基动土","yj.poWuHuaiYuan":"破屋坏垣","yj.gaiWu":"盖屋","yj.zaoCangKu":"造仓库","yj.liQuanJiaoYi":"立券交易","yj.jiaoYi":"交易","yj.liQuan":"立券","yj.anJi":"安机","yj.huiYou":"会友","yj.qiuYiLiaoBing":"求医疗病","yj.zhuShi":"诸事不宜","yj.yuShi":"馀事勿取","yj.xingSang":"行丧","yj.duanYi":"断蚁","yj.guiXiu":"归岫","xx.bi":"毕","xx.yi":"翼","xx.ji":"箕","xx.kui":"奎","xx.gui":"鬼","xx.di":"氐","xx.xu":"虚","xx.wei":"危","xx.zi":"觜","xx.zhen":"轸","xx.dou":"斗","xx.lou":"娄","xx.liu":"柳","xx.fang":"房","xx.xin":"心","xx.shi":"室","xx.can":"参","xx.jiao":"角","xx.niu":"牛","xx.vei":"胃","xx.xing":"星","xx.zhang":"张","xx.tail":"尾","xx.qiang":"壁","xx.jing":"井","xx.kang":"亢","xx.nv":"女","xx.mao":"昴","sz.chun":"春","sz.xia":"夏","sz.qiu":"秋","sz.dong":"冬","od.first":"孟","od.second":"仲","od.third":"季","yx.shuo":"朔","yx.jiShuo":"既朔","yx.eMeiXin":"蛾眉新","yx.eMei":"蛾眉","yx.xi":"夕","yx.shangXian":"上弦","yx.jiuYe":"九夜","yx.night":"宵","yx.jianYingTu":"渐盈凸","yx.xiaoWang":"小望","yx.wang":"望","yx.jiWang":"既望","yx.liDai":"立待","yx.juDai":"居待","yx.qinDai":"寝待","yx.gengDai":"更待","yx.jianKuiTu":"渐亏凸","yx.xiaXian":"下弦","yx.youMing":"有明","yx.eMeiCan":"蛾眉残","yx.can":"残","yx.xiao":"晓","yx.hui":"晦","ny.sangZhe":"桑柘","ny.baiLa":"白蜡","ny.yangLiu":"杨柳","ny.jinBo":"金箔","ny.haiZhong":"海中","ny.daHai":"大海","ny.shaZhong":"沙中","ny.luZhong":"炉中","ny.shanXia":"山下","ny.daLin":"大林","ny.pingDi":"平地","ny.luPang":"路旁","ny.biShang":"壁上","ny.jianFeng":"剑锋","ny.shanTou":"山头","ny.fuDeng":"覆灯","ny.jianXia":"涧下","ny.tianHe":"天河","ny.chengTou":"城头","ny.daYi":"大驿","ny.chaiChuan":"钗钏","ny.quanZhong":"泉中","ny.daXi":"大溪","ny.wuShang":"屋上","ny.piLi":"霹雳","ny.tianShang":"天上","ny.songBo":"松柏","ny.shiLiu":"石榴","ny.changLiu":"长流"},en:{"tg.jia":"Jia","tg.yi":"Yi","tg.bing":"Bing","tg.ding":"Ding","tg.wu":"Wu","tg.ji":"Ji","tg.geng":"Geng","tg.xin":"Xin","tg.ren":"Ren","tg.gui":"Gui","dz.zi":"Zi","dz.chou":"Chou","dz.yin":"Yin","dz.mao":"Mao","dz.chen":"Chen","dz.si":"Si","dz.wu":"Wu","dz.wei":"Wei","dz.shen":"Shen","dz.you":"You","dz.xu":"Xu","dz.hai":"Hai","zx.jian":"Build","zx.chu":"Remove","zx.man":"Full","zx.ping":"Flat","zx.ding":"Stable","zx.zhi":"Hold","zx.po":"Break","zx.wei":"Danger","zx.cheng":"Complete","zx.shou":"Collect","zx.kai":"Open","zx.bi":"Close","jz.jiaZi":"JiaZi","jz.yiChou":"YiChou","jz.bingYin":"BingYin","jz.dingMao":"DingMao","jz.wuChen":"WuChen","jz.jiSi":"JiSi","jz.gengWu":"GengWu","jz.xinWei":"XinWei","jz.renShen":"RenShen","jz.guiYou":"GuiYou","jz.jiaXu":"JiaXu","jz.yiHai":"YiHai","jz.bingZi":"BingZi","jz.dingChou":"DingChou","jz.wuYin":"WuYin","jz.jiMao":"JiMao","jz.gengChen":"GengChen","jz.xinSi":"XinSi","jz.renWu":"RenWu","jz.guiWei":"GuiWei","jz.jiaShen":"JiaShen","jz.yiYou":"YiYou","jz.bingXu":"BingXu","jz.dingHai":"DingHai","jz.wuZi":"WuZi","jz.jiChou":"JiChou","jz.gengYin":"GengYin","jz.xinMao":"XinMao","jz.renChen":"RenChen","jz.guiSi":"GuiSi","jz.jiaWu":"JiaWu","jz.yiWei":"YiWei","jz.bingShen":"BingShen","jz.dingYou":"DingYou","jz.wuXu":"WuXu","jz.jiHai":"JiHai","jz.gengZi":"GengZi","jz.xinChou":"XinChou","jz.renYin":"RenYin","jz.guiMao":"GuiMao","jz.jiaChen":"JiaChen","jz.yiSi":"YiSi","jz.bingWu":"BingWu","jz.dingWei":"DingWei","jz.wuShen":"WuShen","jz.jiYou":"JiYou","jz.gengXu":"GengXu","jz.xinHai":"XinHai","jz.renZi":"RenZi","jz.guiChou":"GuiChou","jz.jiaYin":"JiaYin","jz.yiMao":"YiMao","jz.bingChen":"BingChen","jz.dingSi":"DingSi","jz.wuWu":"WuWu","jz.jiWei":"JiWei","jz.gengShen":"GengShen","jz.xinYou":"XinYou","jz.renXu":"RenXu","jz.guiHai":"GuiHai","sx.rat":"Rat","sx.ox":"Ox","sx.tiger":"Tiger","sx.rabbit":"Rabbit","sx.dragon":"Dragon","sx.snake":"Snake","sx.horse":"Horse","sx.goat":"Goat","sx.monkey":"Monkey","sx.rooster":"Rooster","sx.dog":"Dog","sx.pig":"Pig","dw.long":"Dragon","dw.niu":"Ox","dw.gou":"Dog","dw.yang":"Goat","dw.tu":"Rabbit","dw.shu":"Rat","dw.ji":"Rooster","dw.ma":"Horse","dw.hu":"Tiger","dw.zhu":"Pig","dw.hou":"Monkey","dw.she":"Snake","dw.huLi":"Fox","dw.yan":"Swallow","dw.bao":"Leopard","dw.yuan":"Ape","dw.yin":"Earthworm","dw.lu":"Deer","dw.wu":"Crow","dw.lang":"Wolf","dw.fu":"Bat","wx.jin":"Metal","wx.mu":"Wood","wx.shui":"Water","wx.huo":"Fire","wx.tu":"Earth","wx.ri":"Sun","wx.yue":"Moon","n.zero":"0","n.one":"1","n.two":"2","n.three":"3","n.four":"4","n.five":"5","n.six":"6","n.seven":"7","n.eight":"8","n.nine":"9","n.ten":"10","n.eleven":"11","n.twelve":"12","w.sun":"Sunday","w.mon":"Monday","w.tues":"Tuesday","w.wed":"Wednesday","w.thur":"Thursday","w.fri":"Friday","w.sat":"Saturday","xz.aries":"Aries","xz.taurus":"Taurus","xz.gemini":"Gemini","xz.cancer":"Cancer","xz.leo":"Leo","xz.virgo":"Virgo","xz.libra":"Libra","xz.scorpio":"Scorpio","xz.sagittarius":"Sagittarius","xz.capricornus":"Capricornus","xz.aquarius":"Aquarius","xz.pisces":"Pisces","bg.qian":"Qian","bg.kun":"Kun","bg.zhen":"Zhen","bg.xun":"Xun","bg.kan":"Kan","bg.li":"Li","bg.gen":"Gen","bg.dui":"Dui","ps.center":"Center","ps.dong":"East","ps.nan":"South","ps.xi":"West","ps.bei":"North","ps.zhong":"Center","ps.zhengDong":"East","ps.zhengNan":"South","ps.zhengXi":"West","ps.zhengBei":"North","ps.dongBei":"Northeast","ps.dongNan":"Southeast","ps.xiBei":"Northwest","ps.xiNan":"Southwest","jq.dongZhi":"Winter Solstice","jq.xiaoHan":"Lesser Cold","jq.daHan":"Great Cold","jq.liChun":"Spring Beginning","jq.yuShui":"Rain Water","jq.jingZhe":"Awakening from Hibernation","jq.chunFen":"Spring Equinox","jq.qingMing":"Fresh Green","jq.guYu":"Grain Rain","jq.liXia":"Beginning of Summer","jq.xiaoMan":"Lesser Fullness","jq.mangZhong":"Grain in Ear","jq.xiaZhi":"Summer Solstice","jq.xiaoShu":"Lesser Heat","jq.daShu":"Greater Heat","jq.liQiu":"Beginning of Autumn","jq.chuShu":"End of Heat","jq.baiLu":"White Dew","jq.qiuFen":"Autumnal Equinox","jq.hanLu":"Cold Dew","jq.shuangJiang":"First Frost","jq.liDong":"Beginning of Winter","jq.xiaoXue":"Light Snow","jq.daXue":"Heavy Snow","sn.qingLong":"Azure Dragon","sn.baiHu":"White Tiger","sn.zhuQue":"Rosefinch","sn.xuanWu":"Black Tortoise","sn.tianEn":"Serene Grace","sn.siShen":"Death","sn.tianMa":"Pegasus","sn.baLong":"Eight Dragon","sn.jiuHu":"Nine Tiger","sn.qiNiao":"Seven Bird","sn.liuShe":"Six Snake","s.none":"None","s.goodLuck":"Good luck","s.badLuck":"Bad luck","s.yin":"Yin","s.yang":"Yang","s.white":"White","s.black":"Black","s.blue":"Blue","s.green":"Green","s.yellow":"Yellow","s.red":"Red","s.purple":"Purple","jr.chuXi":"Chinese New Year's Eve","jr.chunJie":"Luna New Year","jr.yuanXiao":"Lantern Festival","jr.duanWu":"Dragon Boat Festival","jr.qiXi":"Begging Festival","jr.zhongQiu":"Mid-Autumn Festival","jr.laBa":"Laba Festival","jr.yuanDan":"New Year's Day","jr.qingRen":"Valentine's Day","jr.fuNv":"Women's Day","jr.xiaoFei":"Consumer Rights Day","jr.zhiShu":"Arbor Day","jr.wuYi":"International Worker's Day","jr.erTong":"Children's Day","jr.qingNian":"Youth Day","jr.yuRen":"April Fools' Day","jr.jianDang":"Party's Day","jr.jianJun":"Army Day","jr.jiaoShi":"Teachers' Day","jr.guoQing":"National Day","jr.wanShengYe":"All Saints' Eve","jr.wanSheng":"All Saints' Day","jr.pingAn":"Christmas Eve","jr.shengDan":"Christmas Day","ts.zhan":"At","ts.hu":"Household","ts.zao":"Cooker","ts.dui":"Pestle","ts.xi":"Habitat","ts.win":"Window","ts.fang":"Room","ts.chuang":"Bed","ts.lu":"Stove","ts.mo":"Mill","ts.chu":"Kitchen","ts.ce":"Toilet","ts.cang":"Depot","ts.cangKu":"Depot","ts.daMen":"Gate","ts.men":"Door","ts.tang":"Hall","ly.xianSheng":"Win first","ly.xianFu":"Lose first","ly.youYin":"Friend's referral","ly.foMie":"Buddhism's demise","ly.daAn":"Great safety","ly.chiKou":"Chikagoro","yj.jiSi":"Sacrifice","yj.qiFu":"Pray","yj.qiuSi":"Seek heirs","yj.kaiGuang":"Consecretion","yj.suHui":"Paint sculptural","yj.qiJiao":"Build altar","yj.zhaiJiao":"Taoist rites","yj.muYu":"Bathing","yj.chouShen":"Reward gods","yj.zaoMiao":"Build temple","yj.siZhao":"Offer kitchen god","yj.fenXiang":"Burn incense","yj.xieTu":"Earth gratitude","yj.chuHuo":"Expel the flame","yj.diaoKe":"Carving","yj.jiaQu":"Marriage","yj.DingHun":"Engagement","yj.naCai":"Proposing","yj.wenMing":"Ask name","yj.naXu":"Uxorilocal marriage","yj.guiNing":"Visit parents","yj.anChuang":"Bed placing","yj.heZhang":"Make up accounts","yj.guanJi":"Crowning adulthood","yj.dingMeng":"Make alliance","yj.jinRenKou":"Adopt","yj.caiYi":"Dressmaking","yj.wanMian":"Cosmeticsurgery","yj.kaiRong":"Open face","yj.xiuFen":"Grave repair","yj.qiZuan":"Open coffin","yj.poTu":"Break earth","yj.anZang":"Burial","yj.liBei":"Tombstone erecting","yj.chengFu":"Formation of clothes","yj.chuFu":"Mourning clothes removal","yj.kaiShengFen":"Open grave","yj.heShouMu":"Make coffin","yj.ruLian":"Body placing","yj.yiJiu":"Move coffin","yj.puDu":"Save soul","yj.ruZhai":"Enter house","yj.anXiang":"Incenst placement","yj.anMen":"Door placing","yj.xiuZao":"Repair","yj.qiJi":"Digging","yj.dongTu":"Break ground","yj.shangLiang":"Beam placing","yj.shuZhu":"Erecting pillars","yj.kaiJing":"Open pond and well","yj.zuoBei":"Make pond and fill water","yj.chaiXie":"Smash house","yj.poWu":"Break house","yj.huaiYuan":"Demolish","yj.buYuan":"Mending","yj.faMuZuoLiang":"Make beams","yj.zuoZhao":"Make stove","yj.jieChu":"Removal","yj.kaiZhuYan":"Build beam","yj.chuanPing":"Build door","yj.gaiWuHeJi":"Cover house","yj.kaiCe":"Open toilet","yj.zaoCang":"Build depot","yj.saiXue":"Block nest","yj.pingZhi":"Repair roads","yj.zaoQiao":"Build bridge","yj.zuoCe":"Build toilet","yj.zhuDi":"Fill","yj.kaiChi":"Open pond","yj.faMu":"Lumbering","yj.kaiQu":"Canalization","yj.jueJing":"Dig well","yj.saoShe":"Sweep house","yj.fangShui":"Drainage","yj.zaoWu":"Build house","yj.heJi":"Close ridge","yj.zaoChuChou":"Livestock thickening","yj.xiuMen":"Repair door","yj.dingSang":"Fix stone","yj.zuoLiang":"Beam construction","yj.xiuShi":"Decorate wall","yj.jiaMa":"Erect horse","yj.kaiShi":"Opening","yj.guaBian":"Hang plaque","yj.naChai":"Accept wealth","yj.qiuCai":"Seek wealth","yj.kaiCang":"Open depot","yj.maiChe":"Buy car","yj.zhiChan":"Buy property","yj.guYong":"Hire","yj.chuHuoCai":"Delivery","yj.anJiXie":"Build machine","yj.zaoCheQi":"Build car","yj.jingLuo":"Build loom","yj.yunNiang":"Brew","yj.zuoRan":"Dye","yj.guZhu":"Cast","yj.zaoChuan":"Build boat","yj.geMi":"Harvest honey","yj.zaiZhong":"Farming","yj.quYu":"Fishing","yj.jieWang":"Netting","yj.muYang":"Graze","yj.anDuiWei":"Build rub","yj.xiYi":"Learn","yj.ruXue":"Enter school","yj.liFa":"Haircut","yj.tanBing":"Visiting","yj.jianGui":"Meet noble","yj.chengChuan":"Ride boat","yj.duShui":"Cross water","yj.zhenJiu":"Acupuncture","yj.chuXing":"Travel","yj.yiXi":"Move","yj.fenJu":"Live apart","yj.TiTou":"Shave","yj.zhengShou":"Manicure","yj.naChu":"Feed livestock","yj.buZhuo":"Catch","yj.tianLie":"Hunt","yj.jiaoNiuMa":"Train horse","yj.huiQinYou":"Meet friends","yj.fuRen":"Go post","yj.qiuYi":"See doctor","yj.zhiBing":"Treat","yj.ciSong":"Litigation","yj.qiJiDongTu":"Lay foundation","yj.poWuHuaiYuan":"Demolish","yj.gaiWu":"Build house","yj.zaoCangKu":"Build depot","yj.liQuanJiaoYi":"Covenant trade","yj.jiaoYi":"Trade","yj.liQuan":"Covenant","yj.anJi":"Install machine","yj.huiYou":"Meet friends","yj.qiuYiLiaoBing":"Seek treatment","yj.zhuShi":"Everything Sucks","yj.yuShi":"Do nothing else","yj.xingSang":"Funeral","yj.duanYi":"Block ant hole","yj.guiXiu":"Place beam","xx.bi":"Finish","xx.yi":"Wing","xx.ji":"Sieve","xx.kui":"Qui","xx.gui":"Ghost","xx.di":"Foundation","xx.xu":"Virtual","xx.wei":"Danger","xx.zi":"Mouth","xx.zhen":"Cross-bar","xx.dou":"Fight","xx.lou":"Weak","xx.liu":"Willow","xx.fang":"House","xx.xin":"Heart","xx.shi":"Room","xx.can":"Join","xx.jiao":"Horn","xx.niu":"Ox","xx.vei":"Stomach","xx.xing":"Star","xx.zhang":"Chang","xx.tail":"Tail","xx.qiang":"Wall","xx.jing":"Well","xx.kang":"Kang","xx.nv":"Female","xx.mao":"Mao","sz.chun":"Spring","sz.xia":"Summer","sz.qiu":"Autumn","sz.dong":"Winter","yx.shuo":"New","yx.eMeiXin":"New waxing","yx.eMei":"Waxing","yx.xi":"Evening","yx.shangXian":"First quarter","yx.jiuYe":"Nine night","yx.night":"Night","yx.jianYingTu":"Gibbous","yx.xiaoWang":"Little full","yx.wang":"Full","yx.jianKuiTu":"Disseminating","yx.xiaXian":"Third quarter","yx.eMeiCan":"Waning waxing","yx.can":"Waning","yx.xiao":"Daybreak","yx.hui":"Obscure","ny.sangZhe":"Cudrania","ny.baiLa":"Wax","ny.yangLiu":"Willow","ny.jinBo":"Foil","ny.haiZhong":"Sea","ny.daHai":"Ocean","ny.shaZhong":"Sand","ny.luZhong":"Stove","ny.shanXia":"Piedmont","ny.daLin":"Forest","ny.pingDi":"Land","ny.luPang":"Roadside","ny.biShang":"Wall","ny.jianFeng":"Blade","ny.shanTou":"Hilltop","ny.fuDeng":"Light","ny.jianXia":"Valleyn","ny.tianHe":"River","ny.chengTou":"City","ny.daYi":"Post","ny.chaiChuan":"Ornaments","ny.quanZhong":"Spring","ny.daXi":"Stream","ny.wuShang":"Roof","ny.piLi":"Thunderbolt","ny.tianShang":"Sky","ny.songBo":"Coniferin","ny.shiLiu":"Pomegranate","ny.changLiu":"Flows"}};a0._OBJ_STRING={LunarUtil:{TIAN_SHEN_TYPE:C.TIAN_SHEN_TYPE,TIAN_SHEN_TYPE_LUCK:C.TIAN_SHEN_TYPE_LUCK,XIU_LUCK:C.XIU_LUCK,LU:C.LU,XIU:C.XIU,SHA:C.SHA,POSITION_DESC:C.POSITION_DESC,NAYIN:C.NAYIN,WU_XING_GAN:C.WU_XING_GAN,WU_XING_ZHI:C.WU_XING_ZHI,SHOU:C.SHOU,GONG:C.GONG,FESTIVAL:C.FESTIVAL,ZHENG:C.ZHENG,ANIMAL:C.ANIMAL,SHI_SHEN:C.SHI_SHEN,XIU_SONG:C.XIU_SONG},SolarUtil:{FESTIVAL:$0.FESTIVAL},TaoUtil:{BA_HUI:j1.BA_HUI,BA_JIE:j1.BA_JIE}};a0._DICT_STRING={LunarUtil:{TIAN_SHEN_TYPE:{},TIAN_SHEN_TYPE_LUCK:{},XIU_LUCK:{},LU:{},XIU:{},SHA:{},POSITION_DESC:{},NAYIN:{},WU_XING_GAN:{},WU_XING_ZHI:{},SHOU:{},GONG:{},FESTIVAL:{},ZHENG:{},ANIMAL:{},SHI_SHEN:{},XIU_SONG:{}},SolarUtil:{FESTIVAL:{}},TaoUtil:{BA_HUI:{},BA_JIE:{}}};a0._DICT_NUMBER={LunarUtil:{ZHI_TIAN_SHEN_OFFSET:{},CHANG_SHENG_OFFSET:{}}};a0._OBJ_NUMBER={LunarUtil:{ZHI_TIAN_SHEN_OFFSET:C.ZHI_TIAN_SHEN_OFFSET,CHANG_SHENG_OFFSET:C.CHANG_SHENG_OFFSET}};a0._DICT_ARRAY={LunarUtil:{ZHI_HIDE_GAN:{}}};a0._OBJ_ARRAY={LunarUtil:{ZHI_HIDE_GAN:C.ZHI_HIDE_GAN}};a0._ARRAYS={LunarUtil:{GAN:[],ZHI:[],JIA_ZI:[],ZHI_XING:[],XUN:[],XUN_KONG:[],CHONG:[],CHONG_GAN:[],CHONG_GAN_TIE:[],HE_GAN_5:[],HE_ZHI_6:[],SHENGXIAO:[],NUMBER:[],POSITION_XI:[],POSITION_YANG_GUI:[],POSITION_YIN_GUI:[],POSITION_FU:[],POSITION_FU_2:[],POSITION_CAI:[],POSITION_TAI_SUI_YEAR:[],POSITION_GAN:[],POSITION_ZHI:[],JIE_QI:[],JIE_QI_IN_USE:[],TIAN_SHEN:[],SHEN_SHA:[],PENGZU_GAN:[],PENGZU_ZHI:[],MONTH_ZHI:[],CHANG_SHENG:[],HOU:[],WU_HOU:[],POSITION_TAI_DAY:[],POSITION_TAI_MONTH:[],YI_JI:[],LIU_YAO:[],MONTH:[],SEASON:[],DAY:[],YUE_XIANG:[]},SolarUtil:{WEEK:[],XINGZUO:[]},TaoUtil:{AN_WU:[]},FotoUtil:{XIU_27:[]},NineStarUtil:{NUMBER:[],WU_XING:[],POSITION:[],LUCK_XUAN_KONG:[],YIN_YANG_QI_MEN:[],COLOR:[]}};a0._OBJ_ARRAYS={LunarUtil:{GAN:C.GAN,ZHI:C.ZHI,JIA_ZI:C.JIA_ZI,ZHI_XING:C.ZHI_XING,XUN:C.XUN,XUN_KONG:C.XUN_KONG,CHONG:C.CHONG,CHONG_GAN:C.CHONG_GAN,CHONG_GAN_TIE:C.CHONG_GAN_TIE,HE_GAN_5:C.HE_GAN_5,HE_ZHI_6:C.HE_ZHI_6,SHENGXIAO:C.SHENGXIAO,NUMBER:C.NUMBER,POSITION_XI:C.POSITION_XI,POSITION_YANG_GUI:C.POSITION_YANG_GUI,POSITION_YIN_GUI:C.POSITION_YIN_GUI,POSITION_FU:C.POSITION_FU,POSITION_FU_2:C.POSITION_FU_2,POSITION_CAI:C.POSITION_CAI,POSITION_TAI_SUI_YEAR:C.POSITION_TAI_SUI_YEAR,POSITION_GAN:C.POSITION_GAN,POSITION_ZHI:C.POSITION_ZHI,JIE_QI:C.JIE_QI,JIE_QI_IN_USE:C.JIE_QI_IN_USE,TIAN_SHEN:C.TIAN_SHEN,SHEN_SHA:C.SHEN_SHA,PENGZU_GAN:C.PENGZU_GAN,PENGZU_ZHI:C.PENGZU_ZHI,MONTH_ZHI:C.MONTH_ZHI,CHANG_SHENG:C.CHANG_SHENG,HOU:C.HOU,WU_HOU:C.WU_HOU,POSITION_TAI_DAY:C.POSITION_TAI_DAY,POSITION_TAI_MONTH:C.POSITION_TAI_MONTH,YI_JI:C.YI_JI,LIU_YAO:C.LIU_YAO,MONTH:C.MONTH,SEASON:C.SEASON,DAY:C.DAY,YUE_XIANG:C.YUE_XIANG},SolarUtil:{WEEK:$0.WEEK,XINGZUO:$0.XINGZUO},TaoUtil:{AN_WU:j1.AN_WU},FotoUtil:{XIU_27:e1.XIU_27},NineStarUtil:{NUMBER:z1.NUMBER,WU_XING:z1.WU_XING,POSITION:z1.POSITION,LUCK_XUAN_KONG:z1.LUCK_XUAN_KONG,YIN_YANG_QI_MEN:z1.YIN_YANG_QI_MEN,COLOR:z1.COLOR}};class wd{constructor(e,i){this._year=e.getStartYear()+i,this._age=e.getStartAge()+i,this._index=i,this._daYun=e,this._lunar=e.getLunar()}getYear(){return this._year}getAge(){return this._age}getIndex(){return this._index}getLunar(){return this._lunar}getGanZhi(){let e=C.getJiaZiIndex(this._lunar.getJieQiTable()[a0.getMessage("jq.liChun")].getLunar().getYearInGanZhiExact())+this._index;return this._daYun.getIndex()>0&&(e+=this._daYun.getStartAge()-1),e%=C.JIA_ZI.length,C.JIA_ZI[e]}getXun(){return C.getXun(this.getGanZhi())}getXunKong(){return C.getXunKong(this.getGanZhi())}getLiuYue(){const e=[];for(let i=0;i<12;i++)e.push(new Sd(this,i));return e}}class Nd{constructor(e,i,s){this._year=e.getStartYear()+i,this._age=e.getStartAge()+i,this._index=i,this._daYun=e,this._lunar=e.getLunar(),this._forward=s}getYear(){return this._year}getAge(){return this._age}getIndex(){return this._index}getGanZhi(){let e=C.getJiaZiIndex(this._lunar.getTimeInGanZhi()),i=this._index+1;this._daYun.getIndex()>0&&(i+=this._daYun.getStartAge()-1),e+=this._forward?i:-i;const s=C.JIA_ZI.length;for(;e<0;)e+=s;return e%=s,C.JIA_ZI[e]}getXun(){return C.getXun(this.getGanZhi())}getXunKong(){return C.getXunKong(this.getGanZhi())}}class Id{constructor(e,i){const s=e.getLunar(),r=s.getSolar().getYear(),c=e.getStartSolar().getYear();let o=r,d=1,g=c-1,f=c-r;i>=1&&(o=c+(i-1)*10,d=o-r+1,g=o+9,f=d+9),this._startYear=o,this._endYear=g,this._startAge=d,this._endAge=f,this._index=i,this._yun=e,this._lunar=s}getStartYear(){return this._startYear}getEndYear(){return this._endYear}getStartAge(){return this._startAge}getEndAge(){return this._endAge}getIndex(){return this._index}getLunar(){return this._lunar}getGanZhi(){if(this._index<1)return"";let e=C.getJiaZiIndex(this._lunar.getMonthInGanZhiExact());e+=this._yun.isForward()?this._index:-this._index;const i=C.JIA_ZI.length;return e>=i&&(e-=i),e<0&&(e+=i),C.JIA_ZI[e]}getXun(){return C.getXun(this.getGanZhi())}getXunKong(){return C.getXunKong(this.getGanZhi())}getLiuNian(e=10){this._index<1&&(e=this._endYear-this._startYear+1);const i=[];for(let s=0;s<e;s++)i.push(new wd(this,s));return i}getXiaoYun(e=10){this._index<1&&(e=this._endYear-this._startYear+1);const i=[];for(let s=0;s<e;s++)i.push(new Nd(this,s,this._yun.isForward()));return i}}class zd{constructor(e,i,s=1){this._gender=i,this._lunar=e;const r=e.getYearGanIndexExact()%2===0,c=i===1,o=r&&c||!r&&!c;this._forward=o;const d=e.getPrevJie(),g=e.getNextJie(),f=e.getSolar(),E=o?f:d.getSolar(),F=o?g.getSolar():f;let x=0;if(s===2){let A=F.subtractMinute(E);const y=Math.floor(A/4320);A-=y*4320;const B=Math.floor(A/360);A-=B*360;const _=Math.floor(A/12);A-=_*12,x=A*2,this._startYear=y,this._startMonth=B,this._startDay=_}else{const A=F.getHour()==23?11:C.getTimeZhiIndex(F.toYmdHms().substring(11,16)),y=E.getHour()==23?11:C.getTimeZhiIndex(E.toYmdHms().substring(11,16));let B=A-y,_=F.subtract(E);B<0&&(B+=12,_--);const S=Math.floor(B*10/30),M=_*4+S;this._startDay=B*10-S*30;const Y=Math.floor(M/12);this._startMonth=M-Y*12,this._startYear=Y}this._startHour=x}getGender(){return this._gender}getStartYear(){return this._startYear}getStartMonth(){return this._startMonth}getStartDay(){return this._startDay}getStartHour(){return this._startHour}isForward(){return this._forward}getLunar(){return this._lunar}getStartSolar(){let e=this._lunar.getSolar();return e=e.nextYear(this._startYear),e=e.nextMonth(this._startMonth),e=e.next(this._startDay),e.nextHour(this._startHour)}getDaYun(e=10){const i=[];for(let s=0;s<e;s++)i.push(new Id(this,s));return i}}class Jr{constructor(e){this._sect=2,this._lunar=e}static fromLunar(e){return new Jr(e)}getSect(){return this._sect}setSect(e){this._sect=e==1?1:2}getDayGanIndex(){return this._sect===2?this._lunar.getDayGanIndexExact2():this._lunar.getDayGanIndexExact()}getDayZhiIndex(){return this._sect===2?this._lunar.getDayZhiIndexExact2():this._lunar.getDayZhiIndexExact()}getYear(){return this._lunar.getYearInGanZhiExact()}getYearGan(){return this._lunar.getYearGanExact()}getYearZhi(){return this._lunar.getYearZhiExact()}getYearHideGan(){const e=C.ZHI_HIDE_GAN[this.getYearZhi()];return e||[]}getYearWuXing(){const e=C.WU_XING_GAN[this.getYearGan()],i=C.WU_XING_ZHI[this.getYearZhi()];return e&&i?e+i:""}getYearNaYin(){const e=C.NAYIN[this.getYear()];return e||""}getYearShiShenGan(){const e=C.SHI_SHEN[this.getDayGan()+this.getYearGan()];return e||""}getYearShiShenZhi(){const e=this.getDayGan(),i=C.ZHI_HIDE_GAN[this.getYearZhi()],s=[];if(i)for(let r=0,c=i.length;r<c;r++){const o=C.SHI_SHEN[e+i[r]];o&&s.push(o)}return s}getDiShi(e){const i=C.CHANG_SHENG_OFFSET[this.getDayGan()];if(i==null)return"";let s=i+(this.getDayGanIndex()%2==0?e:-e);return s>=12&&(s-=12),s<0&&(s+=12),C.CHANG_SHENG[s]}getYearDiShi(){return this.getDiShi(this._lunar.getYearZhiIndexExact())}getYearXun(){return this._lunar.getYearXunExact()}getYearXunKong(){return this._lunar.getYearXunKongExact()}getMonth(){return this._lunar.getMonthInGanZhiExact()}getMonthGan(){return this._lunar.getMonthGanExact()}getMonthZhi(){return this._lunar.getMonthZhiExact()}getMonthHideGan(){const e=C.ZHI_HIDE_GAN[this.getMonthZhi()];return e||[]}getMonthWuXing(){const e=C.WU_XING_GAN[this.getMonthGan()],i=C.WU_XING_ZHI[this.getMonthZhi()];return e&&i?e+i:""}getMonthNaYin(){const e=C.NAYIN[this.getMonth()];return e||""}getMonthShiShenGan(){const e=C.SHI_SHEN[this.getDayGan()+this.getMonthGan()];return e||""}getMonthShiShenZhi(){const e=this.getDayGan(),i=C.ZHI_HIDE_GAN[this.getMonthZhi()],s=[];if(i)for(let r=0,c=i.length;r<c;r++){const o=C.SHI_SHEN[e+i[r]];o&&s.push(o)}return s}getMonthDiShi(){return this.getDiShi(this._lunar.getMonthZhiIndexExact())}getMonthXun(){return this._lunar.getMonthXunExact()}getMonthXunKong(){return this._lunar.getMonthXunKongExact()}getDay(){return this._sect===2?this._lunar.getDayInGanZhiExact2():this._lunar.getDayInGanZhiExact()}getDayGan(){return this._sect===2?this._lunar.getDayGanExact2():this._lunar.getDayGanExact()}getDayZhi(){return this._sect===2?this._lunar.getDayZhiExact2():this._lunar.getDayZhiExact()}getDayHideGan(){const e=C.ZHI_HIDE_GAN[this.getDayZhi()];return e||[]}getDayWuXing(){const e=C.WU_XING_GAN[this.getDayGan()],i=C.WU_XING_ZHI[this.getDayZhi()];return e&&i?e+i:""}getDayNaYin(){const e=C.NAYIN[this.getDay()];return e||""}getDayShiShenGan(){return"日主"}getDayShiShenZhi(){const e=this.getDayGan(),i=C.ZHI_HIDE_GAN[this.getDayZhi()],s=[];if(i)for(let r=0,c=i.length;r<c;r++){const o=C.SHI_SHEN[e+i[r]];o&&s.push(o)}return s}getDayDiShi(){return this.getDiShi(this.getDayZhiIndex())}getDayXun(){return this._sect===2?this._lunar.getDayXunExact2():this._lunar.getDayXunExact()}getDayXunKong(){return this._sect===2?this._lunar.getDayXunKongExact2():this._lunar.getDayXunKongExact()}getTime(){return this._lunar.getTimeInGanZhi()}getTimeGan(){return this._lunar.getTimeGan()}getTimeZhi(){return this._lunar.getTimeZhi()}getTimeHideGan(){const e=C.ZHI_HIDE_GAN[this.getTimeZhi()];return e||[]}getTimeWuXing(){const e=C.WU_XING_GAN[this._lunar.getTimeGan()],i=C.WU_XING_ZHI[this._lunar.getTimeZhi()];return e&&i?e+i:""}getTimeNaYin(){const e=C.NAYIN[this.getTime()];return e||""}getTimeShiShenGan(){const e=C.SHI_SHEN[this.getDayGan()+this.getTimeGan()];return e||""}getTimeShiShenZhi(){const e=this.getDayGan(),i=C.ZHI_HIDE_GAN[this.getTimeZhi()],s=[];if(i)for(let r=0,c=i.length;r<c;r++){const o=C.SHI_SHEN[e+i[r]];o&&s.push(o)}return s}getTimeDiShi(){return this.getDiShi(this._lunar.getTimeZhiIndex())}getTimeXun(){return this._lunar.getTimeXun()}getTimeXunKong(){return this._lunar.getTimeXunKong()}getTaiYuan(){let e=this._lunar.getMonthGanIndexExact()+1;e>=10&&(e-=10);let i=this._lunar.getMonthZhiIndexExact()+3;return i>=12&&(i-=12),C.GAN[e+1]+C.ZHI[i+1]}getTaiYuanNaYin(){const e=C.NAYIN[this.getTaiYuan()];return e||""}getTaiXi(){const e=this._sect==2?this._lunar.getDayGanIndexExact2():this._lunar.getDayGanIndexExact(),i=this._sect==2?this._lunar.getDayZhiIndexExact2():this._lunar.getDayZhiIndexExact();return C.HE_GAN_5[e]+C.HE_ZHI_6[i]}getTaiXiNaYin(){const e=C.NAYIN[this.getTaiXi()];return e||""}getMingGong(){const e=C.find(this.getMonthZhi(),C.MONTH_ZHI).index,i=C.find(this.getTimeZhi(),C.MONTH_ZHI).index;let s=e+i;s=(s>=14?26:14)-s;let r=(this._lunar.getYearGanIndexExact()+1)*2+s;for(;r>10;)r-=10;return C.GAN[r]+C.MONTH_ZHI[s]}getMingGongNaYin(){const e=C.NAYIN[this.getMingGong()];return e||""}getShenGong(){const e=C.find(this.getMonthZhi(),C.MONTH_ZHI).index,i=C.find(this.getTimeZhi(),C.ZHI).index;let s=e+i;s>12&&(s-=12);let r=(this._lunar.getYearGanIndexExact()+1)*2+s;for(;r>10;)r-=10;return C.GAN[r]+C.MONTH_ZHI[s]}getShenGongNaYin(){const e=C.NAYIN[this.getShenGong()];return e||""}getLunar(){return this._lunar}getYun(e,i=1){return new zd(this._lunar,e,i)}toString(){return this.getYear()+" "+this.getMonth()+" "+this.getDay()+" "+this.getTime()}}const nt=class{static fromIndex(t){return new nt(t)}constructor(t){this._index=t}getNumber(){return z1.NUMBER[this._index]}getColor(){return z1.COLOR[this._index]}getWuXing(){return z1.WU_XING[this._index]}getPosition(){return z1.POSITION[this._index]}getPositionDesc(){const t=C.POSITION_DESC[this.getPosition()];return t||""}getNameInXuanKong(){return nt.NAME_XUAN_KONG[this._index]}getNameInBeiDou(){return nt.NAME_BEI_DOU[this._index]}getNameInQiMen(){return nt.NAME_QI_MEN[this._index]}getNameInTaiYi(){return nt.NAME_TAI_YI[this._index]}getLuckInQiMen(){return nt.LUCK_QI_MEN[this._index]}getLuckInXuanKong(){return z1.LUCK_XUAN_KONG[this._index]}getYinYangInQiMen(){return z1.YIN_YANG_QI_MEN[this._index]}getTypeInTaiYi(){return nt.TYPE_TAI_YI[this._index]}getBaMenInQiMen(){return nt.BA_MEN_QI_MEN[this._index]}getSongInTaiYi(){return nt.SONG_TAI_YI[this._index]}getIndex(){return this._index}toString(){return this.getNumber()+this.getColor()+this.getWuXing()+this.getNameInBeiDou()}toFullString(){let t=this.getNumber();return t+=this.getColor(),t+=this.getWuXing(),t+=" ",t+=this.getPosition(),t+="(",t+=this.getPositionDesc(),t+=") ",t+=this.getNameInBeiDou(),t+=" 玄空[",t+=this.getNameInXuanKong(),t+=" ",t+=this.getLuckInXuanKong(),t+="] 奇门[",t+=this.getNameInQiMen(),t+=" ",t+=this.getLuckInQiMen(),this.getBaMenInQiMen().length>0&&(t+=" ",t+=this.getBaMenInQiMen(),t+="门"),t+=" ",t+=this.getYinYangInQiMen(),t+="] 太乙[",t+=this.getNameInTaiYi(),t+=" ",t+=this.getTypeInTaiYi(),t+="]",t}};let $1=nt;$1.NAME_BEI_DOU=["天枢","天璇","天玑","天权","玉衡","开阳","摇光","洞明","隐元"];$1.NAME_XUAN_KONG=["贪狼","巨门","禄存","文曲","廉贞","武曲","破军","左辅","右弼"];$1.NAME_QI_MEN=["天蓬","天芮","天冲","天辅","天禽","天心","天柱","天任","天英"];$1.BA_MEN_QI_MEN=["休","死","伤","杜","","开","惊","生","景"];$1.NAME_TAI_YI=["太乙","摄提","轩辕","招摇","天符","青龙","咸池","太阴","天乙"];$1.TYPE_TAI_YI=["吉神","凶神","安神","安神","凶神","吉神","凶神","吉神","吉神"];$1.SONG_TAI_YI=["门中太乙明,星官号贪狼,赌彩财喜旺,婚姻大吉昌,出入无阻挡,参谒见贤良,此行三五里,黑衣别阴阳。","门前见摄提,百事必忧疑,相生犹自可,相克祸必临,死门并相会,老妇哭悲啼,求谋并吉事,尽皆不相宜,只可藏隐遁,若动伤身疾。","出入会轩辕,凡事必缠牵,相生全不美,相克更忧煎,远行多不利,博彩尽输钱,九天玄女法,句句不虚言。","招摇号木星,当之事莫行,相克行人阻,阴人口舌迎,梦寐多惊惧,屋响斧自鸣,阴阳消息理,万法弗违情。","五鬼为天符,当门阴女谋,相克无好事,行路阻中途,走失难寻觅,道逢有尼姑,此星当门值,万事有灾除。","神光跃青龙,财气喜重重,投入有酒食,赌彩最兴隆,更逢相生旺,休言克破凶,见贵安营寨,万事总吉同。","吾将为咸池,当之尽不宜,出入多不利,相克有灾情,赌彩全输尽,求财空手回,仙人真妙语,愚人莫与知,动用虚惊退,反复逆风吹。","坐临太阴星,百祸不相侵,求谋悉成就,知交有觅寻,回风归来路,恐有殃伏起,密语中记取,慎乎莫轻行。","迎来天乙星,相逢百事兴,运用和合庆,茶酒喜相迎,求谋并嫁娶,好合有天成,祸福如神验,吉凶甚分明。"];$1.LUCK_QI_MEN=["大凶","大凶","小吉","大吉","大吉","大吉","小凶","小吉","小凶"];class kd{constructor(e,i){this._name=e,this._index=i}getName(){return this._name}setName(e){this._name=e}getIndex(){return this._index}setIndex(e){this._index=e}toString(){return this.getName()}toFullString(){return this.getName()+"第"+this.getIndex()+"天"}}class a3{constructor(e,i){this._name=e,this._index=i}getName(){return this._name}setName(e){this._name=e}getIndex(){return this._index}setIndex(e){this._index=e}toString(){return this.getName()}toFullString(){return this.getName()+"第"+this.getIndex()+"天"}}class G3{static fromYm(e,i){return re.fromYear(e).getMonth(i)}constructor(e,i,s,r,c){this._year=e,this._month=i,this._dayCount=s,this._firstJulianDay=r,this._index=c,this._zhiIndex=(Math.abs(i)-1+C.BASE_MONTH_ZHI_INDEX)%12}getYear(){return this._year}getMonth(){return this._month}getIndex(){return this._index}getGanIndex(){const e=(re.fromYear(this._year).getGanIndex()+1)%5*2;return(Math.abs(this._month)-1+e)%10}getZhiIndex(){return this._zhiIndex}getGan(){return C.GAN[this.getGanIndex()+1]}getZhi(){return C.ZHI[this._zhiIndex+1]}getGanZhi(){return this.getGan()+this.getZhi()}isLeap(){return this._month<0}getDayCount(){return this._dayCount}getFirstJulianDay(){return this._firstJulianDay}getPositionXi(){return C.POSITION_XI[this.getGanIndex()+1]}getPositionXiDesc(){return C.POSITION_DESC[this.getPositionXi()]}getPositionYangGui(){return C.POSITION_YANG_GUI[this.getGanIndex()+1]}getPositionYangGuiDesc(){return C.POSITION_DESC[this.getPositionYangGui()]}getPositionYinGui(){return C.POSITION_YIN_GUI[this.getGanIndex()+1]}getPositionYinGuiDesc(){return C.POSITION_DESC[this.getPositionYinGui()]}getPositionFu(e=2){return(e==1?C.POSITION_FU:C.POSITION_FU_2)[this.getGanIndex()+1]}getPositionFuDesc(e=2){return C.POSITION_DESC[this.getPositionFu(e)]}getPositionCai(){return C.POSITION_CAI[this.getGanIndex()+1]}getPositionCaiDesc(){return C.POSITION_DESC[this.getPositionCai()]}getPositionTaiSui(){switch(Math.abs(this._month)){case 1:case 5:case 9:return"艮";case 3:case 7:case 11:return"坤";case 4:case 8:case 12:return"巽"}return C.POSITION_GAN[k0.fromJulianDay(this.getFirstJulianDay()).getLunar().getMonthGanIndex()]}getPositionTaiSuiDesc(){return C.POSITION_DESC[this.getPositionTaiSui()]}getNineStar(){const e=re.fromYear(this._year).getZhiIndex()%3,s=(13+Math.abs(this._month))%12;let r=27-e*3;s<C.BASE_MONTH_ZHI_INDEX&&(r-=3);const c=(r-s)%9;return $1.fromIndex(c)}toString(){return`${this.getYear()}年${this.isLeap()?"闰":""}${C.MONTH[Math.abs(this.getMonth())]}月(${this.getDayCount()})天`}next(e){if(e==0)return G3.fromYm(this._year,this._month);{let i=Math.abs(e),s=this._year,r=s,c=this._month,o=0,d=re.fromYear(s).getMonths();if(e>0){for(;;){const g=d.length;for(let F=0;F<g;F++){const x=d[F];if(x.getYear()===r&&x.getMonth()===c){o=F;break}}const f=g-o-1;if(i<f)break;i-=f;const E=d[g-1];r=E.getYear(),c=E.getMonth(),s++,d=re.fromYear(s).getMonths()}return d[o+i]}else{for(;;){const g=d.length;for(let E=0;E<g;E++){const F=d[E];if(F.getYear()===r&&F.getMonth()===c){o=E;break}}if(i<=o)break;i-=o;const f=d[0];r=f.getYear(),c=f.getMonth(),s--,d=re.fromYear(s).getMonths()}return d[o-i]}}}}const V=class{static decode(t){const e="0000000000",i=e+e;return t=t.replace(/J/g,"00"),t=t.replace(/I/g,"000"),t=t.replace(/H/g,"0000"),t=t.replace(/G/g,"00000"),t=t.replace(/t/g,"02"),t=t.replace(/s/g,"002"),t=t.replace(/r/g,"0002"),t=t.replace(/q/g,"00002"),t=t.replace(/p/g,"000002"),t=t.replace(/o/g,"0000002"),t=t.replace(/n/g,"00000002"),t=t.replace(/m/g,"000000002"),t=t.replace(/l/g,"0000000002"),t=t.replace(/k/g,"01"),t=t.replace(/j/g,"0101"),t=t.replace(/i/g,"001"),t=t.replace(/h/g,"001001"),t=t.replace(/g/g,"0001"),t=t.replace(/f/g,"00001"),t=t.replace(/e/g,"000001"),t=t.replace(/d/g,"0000001"),t=t.replace(/c/g,"00000001"),t=t.replace(/b/g,"000000001"),t=t.replace(/a/g,"0000000001"),t=t.replace(/A/g,i+i+i),t=t.replace(/B/g,i+i+e),t=t.replace(/C/g,i+i),t=t.replace(/D/g,i+e),t=t.replace(/E/g,i),t=t.replace(/F/g,e),t}static nutationLon2(t){let e=-1.742*t;const i=t*t;let s=0;for(let r=0,c=V.NUT_B.length;r<c;r+=5)s+=(V.NUT_B[r+3]+e)*Math.sin(V.NUT_B[r]+V.NUT_B[r+1]*t+V.NUT_B[r+2]*i),e=0;return s/100/V.SECOND_PER_RAD}static eLon(t,e){t/=10;let i=0,s=1;const r=1,c=V.XL0[r+1]-V.XL0[r];for(let d=0;d<6;d++,s*=t){const g=Math.floor(V.XL0[r+d]),f=Math.floor(V.XL0[r+1+d]),E=f-g;if(E==0)continue;let F=0;e<0?F=f:(F=Math.floor(3*e*E/c+.5+g),d!=0&&(F+=3),F>f&&(F=f));let x=0;for(let A=g;A<F;A+=3)x+=V.XL0[A]*Math.cos(V.XL0[A+1]+t*V.XL0[A+2]);i+=x*s}i/=V.XL0[0];const o=t*t;return i+=(-.0728-2.7702*t-1.1019*o-.0996*o*t)/V.SECOND_PER_RAD,i}static mLon(t,e){const i=V.XL1,s=i[0].length;let r=1,c=0,o=t*t,d=o*t,g=d*t;const f=g*t,E=t-10;c+=(3.81034409+8399.684730072*t-3319e-8*o+311e-10*d-2033e-13*g)*V.SECOND_PER_RAD,c+=5028.792262*t+1.1124406*o+7699e-8*d-23479e-9*g-178e-10*f,E>0&&(c+=-.866+1.43*E+.054*E*E),o/=1e4,d/=1e8,g/=1e8,e*=6,e<0&&(e=s);for(let F=0,x=i.length;F<x;F++,r*=t){const A=i[F],y=A.length;let B=Math.floor(e*y/s+.5);F>0&&(B+=6),B>=y&&(B=y);let _=0;for(let S=0;S<B;S+=6)_+=A[S]*Math.cos(A[S+1]+t*A[S+2]+o*A[S+3]+d*A[S+4]+g*A[S+5]);c+=_*r}return c/=V.SECOND_PER_RAD,c}static gxcSunLon(t){const e=t*t,i=-.043126+628.301955*t-2732e-9*e;return-20.49552*(1+(.016708634-42037e-9*t-1267e-10*e)*Math.cos(i))/V.SECOND_PER_RAD}static ev(t){const e=628.307585*t;return 628.332+21*Math.sin(1.527+e)+.44*Math.sin(1.48+e*2)+.129*Math.sin(5.82+e)*t+55e-5*Math.sin(4.21+e)*t*t}static saLon(t,e){return V.eLon(t,e)+V.nutationLon2(t)+V.gxcSunLon(t)+Math.PI}static dtExt(t,e){const i=(t-1820)/100;return-20+e*i*i}static dtCalc(t){const e=V.DT_AT.length,i=V.DT_AT[e-2],s=V.DT_AT[e-1];if(t>=i)return t>i+100?V.dtExt(t,31):V.dtExt(t,31)-(V.dtExt(i,31)-s)*(i+100-t)/100;let r=0;for(;r<e&&!(t<V.DT_AT[r+5]);r+=5);const c=(t-V.DT_AT[r])/(V.DT_AT[r+5]-V.DT_AT[r])*10,o=c*c,d=o*c;return V.DT_AT[r+1]+V.DT_AT[r+2]*c+V.DT_AT[r+3]*o+V.DT_AT[r+4]*d}static dtT(t){return V.dtCalc(t/365.2425+2e3)/V.SECOND_PER_DAY}static mv(t){let e=8399.71-914*Math.sin(.7848+8328.691425*t+1523e-7*t*t);return e-=179*Math.sin(2.543+15542.7543*t)+160*Math.sin(.1874+7214.0629*t)+62*Math.sin(3.14+16657.3828*t)+34*Math.sin(4.827+16866.9323*t)+22*Math.sin(4.9+23871.4457*t)+12*Math.sin(2.59+14914.4523*t)+7*Math.sin(.23+6585.7609*t)+5*Math.sin(.9+25195.624*t)+5*Math.sin(2.32-7700.3895*t)+5*Math.sin(3.88+8956.9934*t)+5*Math.sin(.49+7771.3771*t),e}static saLonT(t){let e=628.3319653318,i=(t-1.75347-Math.PI)/e;return e=V.ev(i),i+=(t-V.saLon(i,10))/e,e=V.ev(i),i+=(t-V.saLon(i,-1))/e,i}static msaLon(t,e,i){return V.mLon(t,e)+-34e-7-(V.eLon(t,i)+V.gxcSunLon(t)+Math.PI)}static msaLonT(t){let e=7771.37714500204,i=(t+1.08472)/e;return i+=(t-V.msaLon(i,3,3))/e,e=V.mv(i)-V.ev(i),i+=(t-V.msaLon(i,20,10))/e,i+=(t-V.msaLon(i,-1,60))/e,i}static saLonT2(t){const e=628.3319653318;let i=(t-1.75347-Math.PI)/e;return i-=(5297e-9*i*i+.0334166*Math.cos(4.669257+628.307585*i)+2061e-7*Math.cos(2.67823+628.307585*i)*i)/e,i+=(t-V.eLon(i,8)-Math.PI+(20.5+17.2*Math.sin(2.1824-33.75705*i))/V.SECOND_PER_RAD)/e,i}static msaLonT2(t){let e=7771.37714500204,i=(t+1.08472)/e,s=i*i;i-=(-3309e-8*s+.10976*Math.cos(.784758+8328.6914246*i+152292e-9*s)+.02224*Math.cos(.1874+7214.0628654*i-21848e-8*s)-.03342*Math.cos(4.669257+628.307585*i))/e,s=i*i;const r=V.mLon(i,20)-(4.8950632+628.3319653318*i+5297e-9*s+.0334166*Math.cos(4.669257+628.307585*i)+2061e-7*Math.cos(2.67823+628.307585*i)*i+349e-6*Math.cos(4.6261+1256.61517*i)-20.5/V.SECOND_PER_RAD);return e=7771.38-914*Math.sin(.7848+8328.691425*i+1523e-7*s)-179*Math.sin(2.543+15542.7543*i)-160*Math.sin(.1874+7214.0629*i),i+=(t-r)/e,i}static qiHigh(t){let e=V.saLonT2(t)*36525;e=e-V.dtT(e)+V.ONE_THIRD;const i=(e+.5)%1*V.SECOND_PER_DAY;return(i<1200||i>V.SECOND_PER_DAY-1200)&&(e=V.saLonT(t)*36525-V.dtT(e)+V.ONE_THIRD),e}static shuoHigh(t){let e=V.msaLonT2(t)*36525;e=e-V.dtT(e)+V.ONE_THIRD;const i=(e+.5)%1*V.SECOND_PER_DAY;return(i<1800||i>V.SECOND_PER_DAY-1800)&&(e=V.msaLonT(t)*36525-V.dtT(e)+V.ONE_THIRD),e}static qiLow(t){const e=628.3319653318;let i=(t-4.895062166)/e;i-=(53*i*i+334116*Math.cos(4.67+628.307585*i)+2061*Math.cos(2.678+628.3076*i)*i)/e/1e7;const s=4895062166e-2+6283319653318e-3*i+53*i*i+334166*Math.cos(4.669257+628.307585*i)+3489*Math.cos(4.6261+1256.61517*i)+2060.6*Math.cos(2.67823+628.307585*i)*i-994-834*Math.sin(2.1824-33.75705*i);return i-=(s/1e7-t)/628.332+(32*(i+1.8)*(i+1.8)-20)/V.SECOND_PER_DAY/36525,i*36525+V.ONE_THIRD}static shuoLow(t){const e=7771.37714500204;let i=(t+1.08472)/e;return i-=(-331e-7*i*i+.10976*Math.cos(.785+8328.6914*i)+.02224*Math.cos(.187+7214.0629*i)-.03342*Math.cos(4.669+628.3076*i))/e+(32*(i+1.8)*(i+1.8)-20)/V.SECOND_PER_DAY/36525,i*36525+V.ONE_THIRD}static calcShuo(t){const e=V.SHUO_KB.length;let i=0;const s=14;t+=k0.J2000;const r=V.SHUO_KB[0]-s,c=V.SHUO_KB[e-1]-s,o=2436935;if(t<r||t>=o)i=Math.floor(V.shuoHigh(Math.floor((t+s-2451551)/29.5306)*Math.PI*2)+.5);else if(t>=r&&t<c){let d=0;for(;d<e&&!(t+s<V.SHUO_KB[d+2]);d+=2);i=V.SHUO_KB[d]+V.SHUO_KB[d+1]*Math.floor((t+s-V.SHUO_KB[d])/V.SHUO_KB[d+1]),i=Math.floor(i+.5),i==1683460&&i++,i-=k0.J2000}else if(t>=c&&t<o){i=Math.floor(V.shuoLow(Math.floor((t+s-2451551)/29.5306)*Math.PI*2)+.5);const d=Math.floor((t-c)/29.5306),g=V.SB.substring(d,d+1);g=="1"?i+=1:g=="2"&&(i-=1)}return i}static calcQi(t){const e=V.QI_KB.length;let i=0;const s=7;t+=k0.J2000;const r=V.QI_KB[0]-s,c=V.QI_KB[e-1]-s,o=2436935;if(t<r||t>=o)i=Math.floor(V.qiHigh(Math.floor((t+s-2451259)/365.2422*24)*Math.PI/12)+.5);else if(t>=r&&t<c){let d=0;for(;d<e&&!(t+s<V.QI_KB[d+2]);d+=2);i=V.QI_KB[d]+V.QI_KB[d+1]*Math.floor((t+s-V.QI_KB[d])/V.QI_KB[d+1]),i=Math.floor(i+.5),i==1683460&&i++,i-=k0.J2000}else if(t>=c&&t<o){i=Math.floor(V.qiLow(Math.floor((t+s-2451259)/365.2422*24)*Math.PI/12)+.5);const d=Math.floor((t-c)/365.2422*24),g=V.QB.substring(d,d+1);g=="1"?i+=1:g=="2"&&(i-=1)}return i}static qiAccurate(t){const e=V.saLonT(t)*36525;return e-V.dtT(e)+V.ONE_THIRD}static qiAccurate2(t){const e=Math.PI/12,i=Math.floor((t+293)/365.2422*24)*e,s=V.qiAccurate(i);return s-t>5?V.qiAccurate(i-e):s-t<-5?V.qiAccurate(i+e):s}};let I1=V;I1.ONE_THIRD=1/3;I1.SECOND_PER_DAY=86400;I1.SECOND_PER_RAD=648e3/Math.PI;I1.NUT_B=[2.1824,-33.75705,36e-6,-1720,920,3.5069,1256.66393,11e-6,-132,57,1.3375,16799.4182,-51e-6,-23,10,4.3649,-67.5141,72e-6,21,-9,.04,-628.302,0,-14,0,2.36,8328.691,0,7,0,3.46,1884.966,0,-5,2,5.44,16833.175,0,-4,2,3.69,25128.11,0,-3,0,3.55,628.362,0,2,0];I1.DT_AT=[-4e3,108371.7,-13036.8,392,0,-500,17201,-627.82,16.17,-.3413,-150,12200.6,-346.41,5.403,-.1593,150,9113.8,-328.13,-1.647,.0377,500,5707.5,-391.41,.915,.3145,900,2203.4,-283.45,13.034,-.1778,1300,490.1,-57.35,2.085,-.0072,1600,120,-9.81,-1.532,.1403,1700,10.2,-.91,.51,-.037,1800,13.4,-.72,.202,-.0193,1830,7.8,-1.81,.416,-.0247,1860,8.3,-.13,-.406,.0292,1880,-5.4,.32,-.183,.0173,1900,-2.3,2.06,.169,-.0135,1920,21.2,1.69,-.304,.0167,1940,24.2,1.22,-.064,.0031,1960,33.2,.51,.231,-.0109,1980,51,1.29,-.026,.0032,2e3,63.87,.1,0,0,2005,64.7,.21,0,0,2012,66.8,.22,0,0,2016,68.1024,.5456,-.0542,-.001172,2020,69.3612,.0422,-.0502,.006216,2024,69.1752,-.0335,-.0048,811e-6,2028,69.0206,-.0275,.0055,-14e-6,2032,68.9981,.0163,.0054,6e-6,2036,69.1498,.0599,.0053,26e-6,2040,69.4751,.1035,.0051,46e-6,2044,69.9737,.1469,.005,66e-6,2048,70.6451,.1903,.0049,85e-6,2050,71.0457];I1.XL0=[1e10,20,578,920,1100,1124,1136,1148,1217,1226,1229,1229,1229,1229,1937,2363,2618,2633,2660,2666,17534704567,0,0,334165646,4.669256804,6283.075849991,3489428,4.6261024,12566.1517,349706,2.744118,5753.384885,341757,2.828866,3.523118,313590,3.62767,77713.771468,267622,4.418084,7860.419392,234269,6.135162,3930.209696,132429,.742464,11506.76977,127317,2.037097,529.690965,119917,1.109629,1577.343542,99025,5.23268,5884.92685,90186,2.04505,26.29832,85722,3.50849,398.149,77979,1.17883,5223.69392,75314,2.53339,5507.55324,50526,4.58293,18849.22755,49238,4.20507,775.52261,35666,2.91954,.06731,31709,5.84902,11790.62909,28413,1.89869,796.29801,27104,.31489,10977.0788,24281,.34481,5486.77784,20616,4.80647,2544.31442,20539,1.86948,5573.1428,20226,2.45768,6069.77675,15552,.83306,213.2991,13221,3.41118,2942.46342,12618,1.08303,20.7754,11513,.64545,.98032,10285,.636,4694.00295,10190,.97569,15720.83878,10172,4.2668,7.11355,9921,6.2099,2146.1654,9761,.681,155.4204,8580,5.9832,161000.6857,8513,1.2987,6275.9623,8471,3.6708,71430.6956,7964,1.8079,17260.1547,7876,3.037,12036.4607,7465,1.7551,5088.6288,7387,3.5032,3154.6871,7355,4.6793,801.8209,6963,.833,9437.7629,6245,3.9776,8827.3903,6115,1.8184,7084.8968,5696,2.7843,6286.599,5612,4.3869,14143.4952,5558,3.4701,6279.5527,5199,.1891,12139.5535,5161,1.3328,1748.0164,5115,.2831,5856.4777,4900,.4874,1194.447,4104,5.3682,8429.2413,4094,2.3985,19651.0485,3920,6.1683,10447.3878,3677,6.0413,10213.2855,3660,2.5696,1059.3819,3595,1.7088,2352.8662,3557,1.776,6812.7668,3329,.5931,17789.8456,3041,.4429,83996.8473,3005,2.7398,1349.8674,2535,3.1647,4690.4798,2474,.2148,3.5904,2366,.4847,8031.0923,2357,2.0653,3340.6124,2282,5.222,4705.7323,2189,5.5559,553.5694,2142,1.4256,16730.4637,2109,4.1483,951.7184,2030,.3713,283.8593,1992,5.2221,12168.0027,1986,5.7747,6309.3742,1912,3.8222,23581.2582,1889,5.3863,149854.4001,1790,2.2149,13367.9726,1748,4.5605,135.0651,1622,5.9884,11769.8537,1508,4.1957,6256.7775,1442,4.1932,242.7286,1435,3.7236,38.0277,1397,4.4014,6681.2249,1362,1.8893,7632.9433,1250,1.1305,5.5229,1205,2.6223,955.5997,1200,1.0035,632.7837,1129,.1774,4164.312,1083,.3273,103.0928,1052,.9387,11926.2544,1050,5.3591,1592.596,1033,6.1998,6438.4962,1001,6.0291,5746.2713,980,.999,11371.705,980,5.244,27511.468,938,2.624,5760.498,923,.483,522.577,922,4.571,4292.331,905,5.337,6386.169,862,4.165,7058.598,841,3.299,7234.794,836,4.539,25132.303,813,6.112,4732.031,812,6.271,426.598,801,5.821,28.449,787,.996,5643.179,776,2.957,23013.54,769,3.121,7238.676,758,3.974,11499.656,735,4.386,316.392,731,.607,11513.883,719,3.998,74.782,706,.323,263.084,676,5.911,90955.552,663,3.665,17298.182,653,5.791,18073.705,630,4.717,6836.645,615,1.458,233141.314,612,1.075,19804.827,596,3.321,6283.009,596,2.876,6283.143,555,2.452,12352.853,541,5.392,419.485,531,.382,31441.678,519,4.065,6208.294,513,2.361,10973.556,494,5.737,9917.697,450,3.272,11015.106,449,3.653,206.186,447,2.064,7079.374,435,4.423,5216.58,421,1.906,245.832,413,.921,3738.761,402,.84,20.355,387,1.826,11856.219,379,2.344,3.881,374,2.954,3128.389,370,5.031,536.805,365,1.018,16200.773,365,1.083,88860.057,352,5.978,3894.182,352,2.056,244287.6,351,3.713,6290.189,340,1.106,14712.317,339,.978,8635.942,339,3.202,5120.601,333,.837,6496.375,325,3.479,6133.513,316,5.089,21228.392,316,1.328,10873.986,309,3.646,10.637,303,1.802,35371.887,296,3.397,9225.539,288,6.026,154717.61,281,2.585,14314.168,262,3.856,266.607,262,2.579,22483.849,257,1.561,23543.231,255,3.949,1990.745,251,3.744,10575.407,240,1.161,10984.192,238,.106,7.046,236,4.272,6040.347,234,3.577,10969.965,211,3.714,65147.62,210,.754,13521.751,207,4.228,5650.292,202,.814,170.673,201,4.629,6037.244,200,.381,6172.87,199,3.933,6206.81,199,5.197,6262.3,197,1.046,18209.33,195,1.07,5230.807,195,4.869,36.028,194,4.313,6244.943,192,1.229,709.933,192,5.595,6282.096,192,.602,6284.056,189,3.744,23.878,188,1.904,15.252,188,.867,22003.915,182,3.681,15110.466,181,.491,1.484,179,3.222,39302.097,179,1.259,12559.038,62833196674749,0,0,20605886,2.67823456,6283.07584999,430343,2.635127,12566.1517,42526,1.59047,3.52312,11926,5.79557,26.29832,10898,2.96618,1577.34354,9348,2.5921,18849.2275,7212,1.1385,529.691,6777,1.8747,398.149,6733,4.4092,5507.5532,5903,2.888,5223.6939,5598,2.1747,155.4204,4541,.398,796.298,3637,.4662,775.5226,2896,2.6471,7.1135,2084,5.3414,.9803,1910,1.8463,5486.7778,1851,4.9686,213.2991,1729,2.9912,6275.9623,1623,.0322,2544.3144,1583,1.4305,2146.1654,1462,1.2053,10977.0788,1246,2.8343,1748.0164,1188,3.258,5088.6288,1181,5.2738,1194.447,1151,2.075,4694.003,1064,.7661,553.5694,997,1.303,6286.599,972,4.239,1349.867,945,2.7,242.729,858,5.645,951.718,758,5.301,2352.866,639,2.65,9437.763,610,4.666,4690.48,583,1.766,1059.382,531,.909,3154.687,522,5.661,71430.696,520,1.854,801.821,504,1.425,6438.496,433,.241,6812.767,426,.774,10447.388,413,5.24,7084.897,374,2.001,8031.092,356,2.429,14143.495,350,4.8,6279.553,337,.888,12036.461,337,3.862,1592.596,325,3.4,7632.943,322,.616,8429.241,318,3.188,4705.732,297,6.07,4292.331,295,1.431,5746.271,290,2.325,20.355,275,.935,5760.498,270,4.804,7234.794,253,6.223,6836.645,228,5.003,17789.846,225,5.672,11499.656,215,5.202,11513.883,208,3.955,10213.286,208,2.268,522.577,206,2.224,5856.478,206,2.55,25132.303,203,.91,6256.778,189,.532,3340.612,188,4.735,83996.847,179,1.474,4164.312,178,3.025,5.523,177,3.026,5753.385,159,4.637,3.286,157,6.124,5216.58,155,3.077,6681.225,154,4.2,13367.973,143,1.191,3894.182,138,3.093,135.065,136,4.245,426.598,134,5.765,6040.347,128,3.085,5643.179,127,2.092,6290.189,125,3.077,11926.254,125,3.445,536.805,114,3.244,12168.003,112,2.318,16730.464,111,3.901,11506.77,111,5.32,23.878,105,3.75,7860.419,103,2.447,1990.745,96,.82,3.88,96,4.08,6127.66,91,5.42,206.19,91,.42,7079.37,88,5.17,11790.63,81,.34,9917.7,80,3.89,10973.56,78,2.4,1589.07,78,2.58,11371.7,77,3.98,955.6,77,3.36,36.03,76,1.3,103.09,75,5.18,10969.97,75,4.96,6496.37,73,5.21,38.03,72,2.65,6309.37,70,5.61,3738.76,69,2.6,3496.03,69,.39,15.25,69,2.78,20.78,65,1.13,7058.6,64,4.28,28.45,61,5.63,10984.19,60,.73,419.48,60,5.28,10575.41,58,5.55,17298.18,58,3.19,4732.03,5291887,0,0,871984,1.072097,6283.07585,30913,.86729,12566.1517,2734,.053,3.5231,1633,5.1883,26.2983,1575,3.6846,155.4204,954,.757,18849.228,894,2.057,77713.771,695,.827,775.523,506,4.663,1577.344,406,1.031,7.114,381,3.441,5573.143,346,5.141,796.298,317,6.053,5507.553,302,1.192,242.729,289,6.117,529.691,271,.306,398.149,254,2.28,553.569,237,4.381,5223.694,208,3.754,.98,168,.902,951.718,153,5.759,1349.867,145,4.364,1748.016,134,3.721,1194.447,125,2.948,6438.496,122,2.973,2146.165,110,1.271,161000.686,104,.604,3154.687,100,5.986,6286.599,92,4.8,5088.63,89,5.23,7084.9,83,3.31,213.3,76,3.42,5486.78,71,6.19,4690.48,68,3.43,4694,65,1.6,2544.31,64,1.98,801.82,61,2.48,10977.08,50,1.44,6836.65,49,2.34,1592.6,46,1.31,4292.33,46,3.81,149854.4,43,.04,7234.79,40,4.94,7632.94,39,1.57,71430.7,38,3.17,6309.37,35,.99,6040.35,35,.67,1059.38,31,3.18,2352.87,31,3.55,8031.09,30,1.92,10447.39,30,2.52,6127.66,28,4.42,9437.76,28,2.71,3894.18,27,.67,25132.3,26,5.27,6812.77,25,.55,6279.55,23,1.38,4705.73,22,.64,6256.78,20,6.07,640.88,28923,5.84384,6283.07585,3496,0,0,1682,5.4877,12566.1517,296,5.196,155.42,129,4.722,3.523,71,5.3,18849.23,64,5.97,242.73,40,3.79,553.57,11408,3.14159,0,772,4.134,6283.076,77,3.84,12566.15,42,.42,155.42,88,3.14,0,17,2.77,6283.08,5,2.01,155.42,3,2.21,12566.15,27962,3.1987,84334.66158,10164,5.42249,5507.55324,8045,3.8801,5223.6939,4381,3.7044,2352.8662,3193,4.0003,1577.3435,2272,3.9847,1047.7473,1814,4.9837,6283.0758,1639,3.5646,5856.4777,1444,3.7028,9437.7629,1430,3.4112,10213.2855,1125,4.8282,14143.4952,1090,2.0857,6812.7668,1037,4.0566,71092.8814,971,3.473,4694.003,915,1.142,6620.89,878,4.44,5753.385,837,4.993,7084.897,770,5.554,167621.576,719,3.602,529.691,692,4.326,6275.962,558,4.41,7860.419,529,2.484,4705.732,521,6.25,18073.705,903,3.897,5507.553,618,1.73,5223.694,380,5.244,2352.866,166,1.627,84334.662,10001398880,0,0,167069963,3.098463508,6283.075849991,1395602,3.0552461,12566.1517,308372,5.198467,77713.771468,162846,1.173877,5753.384885,157557,2.846852,7860.419392,92480,5.45292,11506.76977,54244,4.56409,3930.2097,47211,3.661,5884.92685,34598,.96369,5507.55324,32878,5.89984,5223.69392,30678,.29867,5573.1428,24319,4.2735,11790.62909,21183,5.84715,1577.34354,18575,5.02194,10977.0788,17484,3.01194,18849.22755,10984,5.05511,5486.77784,9832,.8868,6069.7768,8650,5.6896,15720.8388,8583,1.2708,161000.6857,6490,.2725,17260.1547,6292,.9218,529.691,5706,2.0137,83996.8473,5574,5.2416,71430.6956,4938,3.245,2544.3144,4696,2.5781,775.5226,4466,5.5372,9437.7629,4252,6.0111,6275.9623,3897,5.3607,4694.003,3825,2.3926,8827.3903,3749,.8295,19651.0485,3696,4.9011,12139.5535,3566,1.6747,12036.4607,3454,1.8427,2942.4634,3319,.2437,7084.8968,3192,.1837,5088.6288,3185,1.7778,398.149,2846,1.2134,6286.599,2779,1.8993,6279.5527,2628,4.589,10447.3878,2460,3.7866,8429.2413,2393,4.996,5856.4777,2359,.2687,796.298,2329,2.8078,14143.4952,2210,1.95,3154.6871,2035,4.6527,2146.1654,1951,5.3823,2352.8662,1883,.6731,149854.4001,1833,2.2535,23581.2582,1796,.1987,6812.7668,1731,6.152,16730.4637,1717,4.4332,10213.2855,1619,5.2316,17789.8456,1381,5.1896,8031.0923,1364,3.6852,4705.7323,1314,.6529,13367.9726,1041,4.3329,11769.8537,1017,1.5939,4690.4798,998,4.201,6309.374,966,3.676,27511.468,874,6.064,1748.016,779,3.674,12168.003,771,.312,7632.943,756,2.626,6256.778,746,5.648,11926.254,693,2.924,6681.225,680,1.423,23013.54,674,.563,3340.612,663,5.661,11371.705,659,3.136,801.821,648,2.65,19804.827,615,3.029,233141.314,612,5.134,1194.447,563,4.341,90955.552,552,2.091,17298.182,534,5.1,31441.678,531,2.407,11499.656,523,4.624,6438.496,513,5.324,11513.883,477,.256,11856.219,461,1.722,7234.794,458,3.766,6386.169,458,4.466,5746.271,423,1.055,5760.498,422,1.557,7238.676,415,2.599,7058.598,401,3.03,1059.382,397,1.201,1349.867,379,4.907,4164.312,360,5.707,5643.179,352,3.626,244287.6,348,.761,10973.556,342,3.001,4292.331,336,4.546,4732.031,334,3.138,6836.645,324,4.164,9917.697,316,1.691,11015.106,307,.238,35371.887,298,1.306,6283.143,298,1.75,6283.009,293,5.738,16200.773,286,5.928,14712.317,281,3.515,21228.392,280,5.663,8635.942,277,.513,26.298,268,4.207,18073.705,266,.9,12352.853,260,2.962,25132.303,255,2.477,6208.294,242,2.8,709.933,231,1.054,22483.849,229,1.07,14314.168,216,1.314,154717.61,215,6.038,10873.986,200,.561,7079.374,198,2.614,951.718,197,4.369,167283.762,186,2.861,5216.58,183,1.66,39302.097,183,5.912,3738.761,175,2.145,6290.189,173,2.168,10575.407,171,3.702,1592.596,171,1.343,3128.389,164,5.55,6496.375,164,5.856,10984.192,161,1.998,10969.965,161,1.909,6133.513,157,4.955,25158.602,154,6.216,23543.231,153,5.357,13521.751,150,5.77,18209.33,150,5.439,155.42,139,1.778,9225.539,139,1.626,5120.601,128,2.46,13916.019,123,.717,143571.324,122,2.654,88860.057,121,4.414,3894.182,121,1.192,3.523,120,4.03,553.569,119,1.513,17654.781,117,3.117,14945.316,113,2.698,6040.347,110,3.085,43232.307,109,.998,955.6,108,2.939,17256.632,107,5.285,65147.62,103,.139,11712.955,103,5.85,213.299,102,3.046,6037.244,101,2.842,8662.24,100,3.626,6262.3,98,2.36,6206.81,98,5.11,6172.87,98,2,15110.47,97,2.67,5650.29,97,2.75,6244.94,96,4.02,6282.1,96,5.31,6284.06,92,.1,29088.81,85,3.26,20426.57,84,2.6,28766.92,81,3.58,10177.26,80,5.81,5230.81,78,2.53,16496.36,77,4.06,6127.66,73,.04,5481.25,72,5.96,12559.04,72,5.92,4136.91,71,5.49,22003.91,70,3.41,7.11,69,.62,11403.68,69,3.9,1589.07,69,1.96,12416.59,69,4.51,426.6,67,1.61,11087.29,66,4.5,47162.52,66,5.08,283.86,66,4.32,16858.48,65,1.04,6062.66,64,1.59,18319.54,63,5.7,45892.73,63,4.6,66567.49,63,3.82,13517.87,62,2.62,11190.38,61,1.54,33019.02,60,5.58,10344.3,60,5.38,316428.23,60,5.78,632.78,59,6.12,9623.69,57,.16,17267.27,57,3.86,6076.89,57,1.98,7668.64,56,4.78,20199.09,55,4.56,18875.53,55,3.51,17253.04,54,3.07,226858.24,54,4.83,18422.63,53,5.02,12132.44,52,3.63,5333.9,52,.97,155427.54,51,3.36,20597.24,50,.99,11609.86,50,2.21,1990.75,48,1.62,12146.67,48,1.17,12569.67,47,4.62,5436.99,47,1.81,12562.63,47,.59,21954.16,47,.76,7342.46,46,.27,4590.91,46,3.77,156137.48,45,5.66,10454.5,44,5.84,3496.03,43,.24,17996.03,41,5.93,51092.73,41,4.21,12592.45,40,5.14,1551.05,40,5.28,15671.08,39,3.69,18052.93,39,4.94,24356.78,38,2.72,11933.37,38,5.23,7477.52,38,4.99,9779.11,37,3.7,9388.01,37,4.44,4535.06,36,2.16,28237.23,36,2.54,242.73,36,.22,5429.88,35,6.15,19800.95,35,2.92,36949.23,34,5.63,2379.16,34,5.73,16460.33,34,5.11,5849.36,33,6.19,6268.85,10301861,1.1074897,6283.07584999,172124,1.064423,12566.1517,70222,3.14159,0,3235,1.0217,18849.2275,3080,2.8435,5507.5532,2497,1.3191,5223.6939,1849,1.4243,1577.3435,1008,5.9138,10977.0788,865,1.42,6275.962,863,.271,5486.778,507,1.686,5088.629,499,6.014,6286.599,467,5.987,529.691,440,.518,4694.003,410,1.084,9437.763,387,4.75,2544.314,375,5.071,796.298,352,.023,83996.847,344,.949,71430.696,341,5.412,775.523,322,6.156,2146.165,286,5.484,10447.388,284,3.42,2352.866,255,6.132,6438.496,252,.243,398.149,243,3.092,4690.48,225,3.689,7084.897,220,4.952,6812.767,219,.42,8031.092,209,1.282,1748.016,193,5.314,8429.241,185,1.82,7632.943,175,3.229,6279.553,173,1.537,4705.732,158,4.097,11499.656,158,5.539,3154.687,150,3.633,11513.883,148,3.222,7234.794,147,3.653,1194.447,144,.817,14143.495,135,6.151,5746.271,134,4.644,6836.645,128,2.693,1349.867,123,5.65,5760.498,118,2.577,13367.973,113,3.357,17789.846,110,4.497,4292.331,108,5.828,12036.461,102,5.621,6256.778,99,1.14,1059.38,98,.66,5856.48,93,2.32,10213.29,92,.77,16730.46,88,1.5,11926.25,86,1.42,5753.38,85,.66,155.42,81,1.64,6681.22,80,4.11,951.72,66,4.55,5216.58,65,.98,25132.3,64,4.19,6040.35,64,.52,6290.19,63,1.51,5643.18,59,6.18,4164.31,57,2.3,10973.56,55,2.32,11506.77,55,2.2,1592.6,55,5.27,3340.61,54,5.54,553.57,53,5.04,9917.7,53,.92,11371.7,52,3.98,17298.18,52,3.6,10969.97,49,5.91,3894.18,49,2.51,6127.66,48,1.67,12168,46,.31,801.82,42,3.7,10575.41,42,4.05,10984.19,40,2.17,7860.42,40,4.17,26.3,38,5.82,7058.6,37,3.39,6496.37,36,1.08,6309.37,36,5.34,7079.37,34,3.62,11790.63,32,.32,16200.77,31,4.24,3738.76,29,4.55,11856.22,29,1.26,8635.94,27,3.45,5884.93,26,5.08,10177.26,26,5.38,21228.39,24,2.26,11712.96,24,1.05,242.73,24,5.59,6069.78,23,3.63,6284.06,23,1.64,4732.03,22,3.46,213.3,21,1.05,3496.03,21,3.92,13916.02,21,4.01,5230.81,20,5.16,12352.85,20,.69,1990.75,19,2.73,6062.66,19,5.01,11015.11,18,6.04,6283.01,18,2.85,7238.68,18,5.6,6283.14,18,5.16,17253.04,18,2.54,14314.17,17,1.58,7.11,17,.98,3930.21,17,4.75,17267.27,16,2.19,6076.89,16,2.19,18073.7,16,6.12,3.52,16,4.61,9623.69,16,3.4,16496.36,15,.19,9779.11,15,5.3,13517.87,15,4.26,3128.39,15,.81,709.93,14,.5,25158.6,14,4.38,4136.91,13,.98,65147.62,13,3.31,154717.61,13,2.11,1589.07,13,1.92,22483.85,12,6.03,9225.54,12,1.53,12559.04,12,5.82,6282.1,12,5.61,5642.2,12,2.38,167283.76,12,.39,12132.44,12,3.98,4686.89,12,5.81,12569.67,12,.56,5849.36,11,.45,6172.87,11,5.8,16858.48,11,6.22,12146.67,11,2.27,5429.88,435939,5.784551,6283.07585,12363,5.57935,12566.1517,1234,3.1416,0,879,3.628,77713.771,569,1.87,5573.143,330,5.47,18849.228,147,4.48,5507.553,110,2.842,161000.686,101,2.815,5223.694,85,3.11,1577.34,65,5.47,775.52,61,1.38,6438.5,50,4.42,6286.6,47,3.66,7084.9,46,5.39,149854.4,42,.9,10977.08,40,3.2,5088.63,35,1.81,5486.78,32,5.35,3154.69,30,3.52,796.3,29,4.62,4690.48,28,1.84,4694,27,3.14,71430.7,27,6.17,6836.65,26,1.42,2146.17,25,2.81,1748.02,24,2.18,155.42,23,4.76,7234.79,21,3.38,7632.94,21,.22,4705.73,20,4.22,1349.87,20,2.01,1194.45,20,4.58,529.69,19,1.59,6309.37,18,5.7,6040.35,18,6.03,4292.33,17,2.9,9437.76,17,2,8031.09,17,5.78,83996.85,16,.05,2544.31,15,.95,6127.66,14,.36,10447.39,14,1.48,2352.87,13,.77,553.57,13,5.48,951.72,13,5.27,6279.55,13,3.76,6812.77,11,5.41,6256.78,10,.68,1592.6,10,4.95,398.15,10,1.15,3894.18,10,5.2,244287.6,10,1.94,11856.22,9,5.39,25132.3,8,6.18,1059.38,8,.69,8429.24,8,5.85,242.73,7,5.26,14143.5,7,.52,801.82,6,2.24,8635.94,6,4,13367.97,6,2.77,90955.55,6,5.17,7058.6,5,1.46,233141.31,5,4.13,7860.42,5,3.91,26.3,5,3.89,12036.46,5,5.58,6290.19,5,5.54,1990.75,5,.83,11506.77,5,6.22,6681.22,4,5.26,10575.41,4,1.91,7477.52,4,.43,10213.29,4,1.09,709.93,4,5.09,11015.11,4,4.22,88860.06,4,3.57,7079.37,4,1.98,6284.06,4,3.93,10973.56,4,6.18,9917.7,4,.36,10177.26,4,2.75,3738.76,4,3.33,5643.18,4,5.36,25158.6,14459,4.27319,6283.07585,673,3.917,12566.152,77,0,0,25,3.73,18849.23,4,2.8,6286.6,386,2.564,6283.076,31,2.27,12566.15,5,3.44,5573.14,2,2.05,18849.23,1,2.06,77713.77,1,4.41,161000.69,1,3.82,149854.4,1,4.08,6127.66,1,5.26,6438.5,9,1.22,6283.08,1,.66,12566.15];I1.XL1=[[22639.586,.78475822,8328.691424623,1.5229241,25.0719,-.123598,4586.438,.1873974,7214.06286536,-2.184756,-18.86,.0828,2369.914,2.542952,15542.75428998,-.661832,6.212,-.0408,769.026,3.140313,16657.38284925,3.04585,50.144,-.2472,666.418,1.527671,628.30195521,-.02664,.062,-.0054,411.596,4.826607,16866.932315,-1.28012,-1.07,-.0059,211.656,4.115028,-1114.6285593,-3.70768,-43.93,.2064,205.436,.230523,6585.7609101,-2.15812,-18.92,.0882,191.956,4.898507,23871.4457146,.86109,31.28,-.164,164.729,2.586078,14914.4523348,-.6352,6.15,-.035,147.321,5.4553,-7700.3894694,-1.5496,-25.01,.118,124.988,.48608,7771.377145,-.3309,3.11,-.02,109.38,3.88323,8956.9933798,1.4963,25.13,-.129,55.177,5.57033,-1324.178025,.6183,7.3,-.035,45.1,.89898,25195.62374,.2428,24,-.129,39.533,3.81213,-8538.24089,2.803,26.1,-.118,38.43,4.30115,22756.817155,-2.8466,-12.6,.042,36.124,5.49587,24986.074274,4.5688,75.2,-.371,30.773,1.94559,14428.125731,-4.3695,-37.7,.166,28.397,3.28586,7842.364821,-2.2114,-18.8,.077,24.358,5.64142,16171.056245,-.6885,6.3,-.046,18.585,4.41371,-557.31428,-1.8538,-22,.1,17.954,3.58454,8399.6791,-.3576,3.2,-.03,14.53,4.9416,23243.143759,.888,31.2,-.16,14.38,.9709,32200.137139,2.384,56.4,-.29,14.251,5.7641,-2.3012,1.523,25.1,-.12,13.899,.3735,31085.50858,-1.324,12.4,-.08,13.194,1.7595,-9443.319984,-5.231,-69,.33,9.679,3.0997,-16029.080894,-3.072,-50.1,.24,9.366,.3016,24080.99518,-3.465,-19.9,.08,8.606,4.1582,-1742.930514,-3.681,-44,.21,8.453,2.8416,16100.06857,1.192,28.2,-.14,8.05,2.6292,14286.15038,-.609,6.1,-.03,7.63,6.2388,17285.684804,3.019,50.2,-.25,7.447,1.4845,1256.60391,-.053,.1,-.01,7.371,.2736,5957.458955,-2.131,-19,.09,7.063,5.6715,33.757047,-.308,-3.6,.02,6.383,4.7843,7004.5134,2.141,32.4,-.16,5.742,2.6572,32409.686605,-1.942,5,-.05,4.374,4.3443,22128.5152,-2.82,-13,.05,3.998,3.2545,33524.31516,1.766,49,-.25,3.21,2.2443,14985.44001,-2.516,-16,.06,2.915,1.7138,24499.74767,.834,31,-.17,2.732,1.9887,13799.82378,-4.343,-38,.17,2.568,5.4122,-7072.08751,-1.576,-25,.11,2.521,3.2427,8470.66678,-2.238,-19,.07,2.489,4.0719,-486.3266,-3.734,-44,.2,2.146,5.6135,-1952.47998,.645,7,-.03,1.978,2.7291,39414.2,.199,37,-.21,1.934,1.5682,33314.7657,6.092,100,-.5,1.871,.4166,30457.20662,-1.297,12,-.1,1.753,2.0582,-8886.0057,-3.38,-47,.2,1.437,2.386,-695.87607,.59,7,0,1.373,3.026,-209.54947,4.33,51,-.2,1.262,5.94,16728.37052,1.17,28,-.1,1.224,6.172,6656.74859,-4.04,-41,.2,1.187,5.873,6099.43431,-5.89,-63,.3,1.177,1.014,31571.83518,2.41,56,-.3,1.162,3.84,9585.29534,1.47,25,-.1,1.143,5.639,8364.73984,-2.18,-19,.1,1.078,1.229,70.98768,-1.88,-22,.1,1.059,3.326,40528.82856,3.91,81,-.4,.99,5.013,40738.37803,-.42,30,-.2,.948,5.687,-17772.01141,-6.75,-94,.5,.876,.298,-.35232,0,0,0,.822,2.994,393.02097,0,0,0,.788,1.836,8326.39022,3.05,50,-.2,.752,4.985,22614.8418,.91,31,-.2,.74,2.875,8330.99262,0,0,0,.669,.744,-24357.77232,-4.6,-75,.4,.644,1.314,8393.12577,-2.18,-19,.1,.639,5.888,575.33849,0,0,0,.635,1.116,23385.11911,-2.87,-13,0,.584,5.197,24428.75999,2.71,53,-.3,.583,3.513,-9095.55517,.95,4,0,.572,6.059,29970.88002,-5.03,-32,.1,.565,2.96,.32863,1.52,25,-.1,.561,4.001,-17981.56087,-2.43,-43,.2,.557,.529,7143.07519,-.3,3,0,.546,2.311,25614.37623,4.54,75,-.4,.536,4.229,15752.30376,-4.99,-45,.2,.493,3.316,-8294.9344,-1.83,-29,.1,.491,1.744,8362.4485,1.21,21,-.1,.478,1.803,-10071.6219,-5.2,-69,.3,.454,.857,15333.2048,3.66,57,-.3,.445,2.071,8311.7707,-2.18,-19,.1,.426,.345,23452.6932,-3.44,-20,.1,.42,4.941,33733.8646,-2.56,-2,0,.413,1.642,17495.2343,-1.31,-1,0,.404,1.458,23314.1314,-.99,9,-.1,.395,2.132,38299.5714,-3.51,-6,0,.382,2.7,31781.3846,-1.92,5,0,.375,4.827,6376.2114,2.17,32,-.2,.361,3.867,16833.1753,-.97,3,0,.358,5.044,15056.4277,-4.4,-38,.2,.35,5.157,-8257.7037,-3.4,-47,.2,.344,4.233,157.7344,0,0,0,.34,2.672,13657.8484,-.58,6,0,.329,5.61,41853.0066,3.29,74,-.4,.325,5.895,-39.8149,0,0,0,.309,4.387,21500.2132,-2.79,-13,.1,.302,1.278,786.0419,0,0,0,.302,5.341,-24567.3218,-.27,-24,.1,.301,1.045,5889.8848,-1.57,-12,0,.294,4.201,-2371.2325,-3.65,-44,.2,.293,3.704,21642.1886,-6.55,-57,.2,.29,4.069,32828.4391,2.36,56,-.3,.289,3.472,31713.8105,-1.35,12,-.1,.285,5.407,-33.7814,.31,4,0,.283,5.998,-16.9207,-3.71,-44,.2,.283,2.772,38785.898,.23,37,-.2,.274,5.343,15613.742,-2.54,-16,.1,.263,3.997,25823.9257,.22,24,-.1,.254,.6,24638.3095,-1.61,2,0,.253,1.344,6447.1991,.29,10,-.1,.25,.887,141.9754,-3.76,-44,.2,.247,.317,5329.157,-2.1,-19,.1,.245,.141,36.0484,-3.71,-44,.2,.231,2.287,14357.1381,-2.49,-16,.1,.227,5.158,2.6298,0,0,0,.219,5.085,47742.8914,1.72,63,-.3,.211,2.145,6638.7244,-2.18,-19,.1,.201,4.415,39623.7495,-4.13,-14,0,.194,2.091,588.4927,0,0,0,.193,3.057,-15400.7789,-3.1,-50,0,.186,5.598,16799.3582,-.72,6,0,.185,3.886,1150.677,0,0,0,.183,1.619,7178.0144,1.52,25,0,.181,2.635,8328.3391,1.52,25,0,.181,2.077,8329.0437,1.52,25,0,.179,3.215,-9652.8694,-.9,-18,0,.176,1.716,-8815.018,-5.26,-69,0,.175,5.673,550.7553,0,0,0,.17,2.06,31295.058,-5.6,-39,0,.167,1.239,7211.7617,-.7,6,0,.165,4.499,14967.4158,-.7,6,0,.164,3.595,15540.4531,.9,31,0,.164,4.237,522.3694,0,0,0,.163,4.633,15545.0555,-2.2,-19,0,.161,.478,6428.0209,-2.2,-19,0,.158,2.03,13171.5218,-4.3,-38,0,.157,2.28,7216.3641,-3.7,-44,0,.154,5.65,7935.6705,1.5,25,0,.152,.46,29828.9047,-1.3,12,0,.151,1.19,-.7113,0,0,0,.15,1.42,23942.4334,-1,9,0,.144,2.75,7753.3529,1.5,25,0,.137,2.08,7213.7105,-2.2,-19,0,.137,1.44,7214.4152,-2.2,-19,0,.136,4.46,-1185.6162,-1.8,-22,0,.136,3.03,8000.1048,-2.2,-19,0,.134,2.83,14756.7124,-.7,6,0,.131,5.05,6821.0419,-2.2,-19,0,.128,5.99,-17214.6971,-4.9,-72,0,.127,5.35,8721.7124,1.5,25,0,.126,4.49,46628.2629,-2,19,0,.125,5.94,7149.6285,1.5,25,0,.124,1.09,49067.0695,1.1,55,0,.121,2.88,15471.7666,1.2,28,0,.111,3.92,41643.4571,7.6,125,-1,.11,1.96,8904.0299,1.5,25,0,.106,3.3,-18.0489,-2.2,-19,0,.105,2.3,-4.931,1.5,25,0,.104,2.22,-6.559,-1.9,-22,0,.101,1.44,1884.9059,-.1,0,0,.1,5.92,5471.1324,-5.9,-63,0,.099,1.12,15149.7333,-.7,6,0,.096,4.73,15508.9972,-.4,10,0,.095,5.18,7230.9835,1.5,25,0,.093,3.37,39900.5266,3.9,81,0,.092,2.01,25057.0619,2.7,53,0,.092,1.21,-79.6298,0,0,0,.092,1.65,-26310.2523,-4,-68,0,.091,1.01,42062.5561,-1,23,0,.09,6.1,29342.5781,-5,-32,0,.09,4.43,15542.402,-.7,6,0,.09,3.8,15543.1066,-.7,6,0,.089,4.15,6063.3859,-2.2,-19,0,.086,4.03,52.9691,0,0,0,.085,.49,47952.4409,-2.6,11,0,.085,1.6,7632.8154,2.1,32,0,.084,.22,14392.0773,-.7,6,0,.083,6.22,6028.4466,-4,-41,0,.083,.63,-7909.9389,2.8,26,0,.083,5.2,-77.5523,0,0,0,.082,2.74,8786.1467,-2.2,-19,0,.08,2.43,9166.5428,-2.8,-26,0,.08,3.7,-25405.1732,4.1,27,0,.078,5.68,48857.52,5.4,106,-1,.077,1.85,8315.5735,-2.2,-19,0,.075,5.46,-18191.1103,1.9,8,0,.075,1.41,-16238.6304,1.3,1,0,.074,5.06,40110.0761,-.4,30,0,.072,2.1,64.4343,-3.7,-44,0,.071,2.17,37671.2695,-3.5,-6,0,.069,1.71,16693.4313,-.7,6,0,.069,3.33,-26100.7028,-8.3,-119,1,.068,1.09,8329.4028,1.5,25,0,.068,3.62,8327.9801,1.5,25,0,.068,2.41,16833.1509,-1,3,0,.067,3.4,24709.2971,-3.5,-20,0,.067,1.65,8346.7156,-.3,3,0,.066,2.61,22547.2677,1.5,39,0,.066,3.5,15576.5113,-1,3,0,.065,5.76,33037.9886,-2,5,0,.065,4.58,8322.1325,-.3,3,0,.065,6.2,17913.9868,3,50,0,.065,1.5,22685.8295,-1,9,0,.065,2.37,7180.3058,-1.9,-15,0,.064,1.06,30943.5332,2.4,56,0,.064,1.89,8288.8765,1.5,25,0,.064,4.7,6.0335,.3,4,0,.063,2.83,8368.5063,1.5,25,0,.063,5.66,-2580.7819,.7,7,0,.062,3.78,7056.3285,-2.2,-19,0,.061,1.49,8294.91,1.8,29,0,.061,.12,-10281.1714,-.9,-18,0,.061,3.06,-8362.4729,-1.2,-21,0,.061,4.43,8170.9571,1.5,25,0,.059,5.78,-13.1179,-3.7,-44,0,.059,5.97,6625.5702,-2.2,-19,0,.058,5.01,-.508,-.3,0,0,.058,2.73,7161.0938,-2.2,-19,0,.057,.19,7214.0629,-2.2,-19,0,.057,4,22199.5029,-4.7,-35,0,.057,5.38,8119.142,5.8,76,0,.056,1.07,7542.6495,1.5,25,0,.056,.28,8486.4258,1.5,25,0,.054,4.19,16655.0816,4.6,75,0,.053,.72,7267.032,-2.2,-19,0,.053,3.12,12.6192,.6,7,0,.052,2.99,-32896.013,-1.8,-49,0,.052,3.46,1097.708,0,0,0,.051,5.37,-6443.786,-1.6,-25,0,.051,1.35,7789.401,-2.2,-19,0,.051,5.83,40042.502,.2,38,0,.051,3.63,9114.733,1.5,25,0,.05,1.51,8504.484,-2.5,-22,0,.05,5.23,16659.684,1.5,25,0,.05,1.15,7247.82,-2.5,-23,0,.047,.25,-1290.421,.3,0,0,.047,4.67,-32686.464,-6.1,-100,0,.047,3.49,548.678,0,0,0,.047,2.37,6663.308,-2.2,-19,0,.046,.98,1572.084,0,0,0,.046,2.04,14954.262,-.7,6,0,.046,3.72,6691.693,-2.2,-19,0,.045,6.19,-235.287,0,0,0,.044,2.96,32967.001,-.1,27,0,.044,3.82,-1671.943,-5.6,-66,0,.043,5.82,1179.063,0,0,0,.043,.07,34152.617,1.7,49,0,.043,3.71,6514.773,-.3,0,0,.043,5.62,15.732,-2.5,-23,0,.043,5.8,8351.233,-2.2,-19,0,.042,.27,7740.199,1.5,25,0,.042,6.14,15385.02,-.7,6,0,.042,6.13,7285.051,-4.1,-41,0,.041,1.27,32757.451,4.2,78,0,.041,4.46,8275.722,1.5,25,0,.04,.23,8381.661,1.5,25,0,.04,5.87,-766.864,2.5,29,0,.04,1.66,254.431,0,0,0,.04,.4,9027.981,-.4,0,0,.04,2.96,7777.936,1.5,25,0,.039,4.67,33943.068,6.1,100,0,.039,3.52,8326.062,1.5,25,0,.039,3.75,21013.887,-6.5,-57,0,.039,5.6,606.978,0,0,0,.039,1.19,8331.321,1.5,25,0,.039,2.84,7211.433,-2.2,-19,0,.038,.67,7216.693,-2.2,-19,0,.038,6.22,25161.867,.6,28,0,.038,4.4,7806.322,1.5,25,0,.038,4.16,9179.168,-2.2,-19,0,.037,4.73,14991.999,-.7,6,0,.036,.35,67.514,-.6,-7,0,.036,3.7,25266.611,-1.6,0,0,.036,5.39,16328.796,-.7,6,0,.035,1.44,7174.248,-2.2,-19,0,.035,5,15684.73,-4.4,-38,0,.035,.39,-15.419,-2.2,-19,0,.035,6.07,15020.385,-.7,6,0,.034,6.01,7371.797,-2.2,-19,0,.034,.96,-16623.626,-3.4,-54,0,.033,6.24,9479.368,1.5,25,0,.033,3.21,23661.896,5.2,82,0,.033,4.06,8311.418,-2.2,-19,0,.033,2.4,1965.105,0,0,0,.033,5.17,15489.785,-.7,6,0,.033,5.03,21986.54,.9,31,0,.033,4.1,16691.14,2.7,46,0,.033,5.13,47114.589,1.7,63,0,.033,4.45,8917.184,1.5,25,0,.033,4.23,2.078,0,0,0,.032,2.33,75.251,1.5,25,0,.032,2.1,7253.878,-2.2,-19,0,.032,3.11,-.224,1.5,25,0,.032,4.43,16640.462,-.7,6,0,.032,5.68,8328.363,0,0,0,.031,5.32,8329.02,3,50,0,.031,3.7,16118.093,-.7,6,0,.03,3.67,16721.817,-.7,6,0,.03,5.27,-1881.492,-1.2,-15,0,.03,5.72,8157.839,-2.2,-19,0,.029,5.73,-18400.313,-6.7,-94,0,.029,2.76,16,-2.2,-19,0,.029,1.75,8879.447,1.5,25,0,.029,.32,8851.061,1.5,25,0,.029,.9,14704.903,3.7,57,0,.028,2.9,15595.723,-.7,6,0,.028,5.88,16864.631,.2,24,0,.028,.63,16869.234,-2.8,-26,0,.028,4.04,-18609.863,-2.4,-43,0,.027,5.83,6727.736,-5.9,-63,0,.027,6.12,418.752,4.3,51,0,.027,.14,41157.131,3.9,81,0,.026,3.8,15.542,0,0,0,.026,1.68,50181.698,4.8,99,-1,.026,.32,315.469,0,0,0,.025,5.67,19.188,.3,0,0,.025,3.16,62.133,-2.2,-19,0,.025,3.76,15502.939,-.7,6,0,.025,4.53,45999.961,-2,19,0,.024,3.21,837.851,-4.4,-51,0,.024,2.82,38157.596,.3,37,0,.024,5.21,15540.124,-.7,6,0,.024,.26,14218.576,0,13,0,.024,3.01,15545.384,-.7,6,0,.024,1.16,-17424.247,-.6,-21,0,.023,2.34,-67.574,.6,7,0,.023,2.44,18.024,-1.9,-22,0,.023,3.7,469.4,0,0,0,.023,.72,7136.511,-2.2,-19,0,.023,4.5,15582.569,-.7,6,0,.023,2.8,-16586.395,-4.9,-72,0,.023,1.51,80.182,0,0,0,.023,1.09,5261.583,-1.5,-12,0,.023,.56,54956.954,-.5,44,0,.023,4.01,8550.86,-2.2,-19,0,.023,4.46,38995.448,-4.1,-14,0,.023,3.82,2358.126,0,0,0,.022,3.77,32271.125,.5,34,0,.022,.82,15935.775,-.7,6,0,.022,1.07,24013.421,-2.9,-13,0,.022,.4,8940.078,-2.2,-19,0,.022,2.06,15700.489,-.7,6,0,.022,4.27,15124.002,-5,-45,0,.021,1.16,56071.583,3.2,88,0,.021,5.58,9572.189,-2.2,-19,0,.02,1.7,-17.273,-3.7,-44,0,.02,3.05,214.617,0,0,0,.02,4.41,8391.048,-2.2,-19,0,.02,5.95,23869.145,2.4,56,0,.02,.42,40947.927,-4.7,-21,0,.019,1.39,5818.897,.3,10,0,.019,.71,23873.747,-.7,6,0,.019,2.81,7291.615,-2.2,-19,0,.019,5.09,8428.018,-2.2,-19,0,.019,4.14,6518.187,-1.6,-12,0,.019,3.85,21.33,0,0,0,.018,.66,14445.046,-.7,6,0,.018,1.65,.966,-4,-48,0,.018,5.64,-17143.709,-6.8,-94,0,.018,6.01,7736.432,-2.2,-19,0,.018,2.74,31153.083,-1.9,5,0,.018,4.58,6116.355,-2.2,-19,0,.018,2.28,46.401,.3,0,0,.018,3.8,10213.597,1.4,25,0,.018,2.84,56281.132,-1.1,36,0,.018,3.53,8249.062,1.5,25,0,.017,4.43,20871.911,-3,-13,0,.017,4.44,627.596,0,0,0,.017,1.85,628.308,0,0,0,.017,1.19,8408.321,2,25,0,.017,1.95,7214.056,-2,-19,0,.017,1.57,7214.07,-2,-19,0,.017,1.65,13870.811,-6,-60,0,.017,.3,22.542,-4,-44,0,.017,2.62,-119.445,0,0,0,.016,4.87,5747.909,2,32,0,.016,4.45,14339.108,-1,6,0,.016,1.83,41366.68,0,30,0,.016,4.53,16309.618,-3,-23,0,.016,2.54,15542.754,-1,6,0,.016,6.05,1203.646,0,0,0,.015,5.2,2751.147,0,0,0,.015,1.8,-10699.924,-5,-69,0,.015,.4,22824.391,-3,-20,0,.015,2.1,30666.756,-6,-39,0,.015,2.1,6010.417,-2,-19,0,.015,.7,-23729.47,-5,-75,0,.015,1.4,14363.691,-1,6,0,.015,5.8,16900.689,-2,0,0,.015,5.2,23800.458,3,53,0,.015,5.3,6035,-2,-19,0,.015,1.2,8251.139,2,25,0,.015,3.6,-8.86,0,0,0,.015,.8,882.739,0,0,0,.015,3,1021.329,0,0,0,.015,.6,23296.107,1,31,0,.014,5.4,7227.181,2,25,0,.014,.1,7213.352,-2,-19,0,.014,4,15506.706,3,50,0,.014,3.4,7214.774,-2,-19,0,.014,4.6,6665.385,-2,-19,0,.014,.1,-8.636,-2,-22,0,.014,3.1,15465.202,-1,6,0,.014,4.9,508.863,0,0,0,.014,3.5,8406.244,2,25,0,.014,1.3,13313.497,-8,-82,0,.014,2.8,49276.619,-3,0,0,.014,.1,30528.194,-3,-10,0,.013,1.7,25128.05,1,31,0,.013,2.9,14128.405,-1,6,0,.013,3.4,57395.761,3,80,0,.013,2.7,13029.546,-1,6,0,.013,3.9,7802.556,-2,-19,0,.013,1.6,8258.802,-2,-19,0,.013,2.2,8417.709,-2,-19,0,.013,.7,9965.21,-2,-19,0,.013,3.4,50391.247,0,48,0,.013,3,7134.433,-2,-19,0,.013,2.9,30599.182,-5,-31,0,.013,3.6,-9723.857,1,0,0,.013,4.8,7607.084,-2,-19,0,.012,.8,23837.689,1,35,0,.012,3.6,4.409,-4,-44,0,.012,5,16657.031,3,50,0,.012,4.4,16657.735,3,50,0,.012,1.1,15578.803,-4,-38,0,.012,6,-11.49,0,0,0,.012,1.9,8164.398,0,0,0,.012,2.4,31852.372,-4,-17,0,.012,2.4,6607.085,-2,-19,0,.012,4.2,8359.87,0,0,0,.012,.5,5799.713,-2,-19,0,.012,2.7,7220.622,0,0,0,.012,4.3,-139.72,0,0,0,.012,2.3,13728.836,-2,-16,0,.011,3.6,14912.146,1,31,0,.011,4.7,14916.748,-2,-19,0],[1.6768,4.66926,628.301955,-.0266,.1,-.005,.51642,3.3721,6585.76091,-2.158,-18.9,.09,.41383,5.7277,14914.452335,-.635,6.2,-.04,.37115,3.9695,7700.389469,1.55,25,-.12,.2756,.7416,8956.99338,1.496,25.1,-.13,.24599,4.2253,-2.3012,1.523,25.1,-.12,.07118,.1443,7842.36482,-2.211,-19,.08,.06128,2.4998,16171.05625,-.688,6,0,.04516,.443,8399.6791,-.36,3,0,.04048,5.771,14286.15038,-.61,6,0,.03747,4.626,1256.60391,-.05,0,0,.03707,3.415,5957.45895,-2.13,-19,.1,.03649,1.8,23243.14376,.89,31,-.2,.02438,.042,16029.08089,3.07,50,-.2,.02165,1.017,-1742.93051,-3.68,-44,.2,.01923,3.097,17285.6848,3.02,50,-.3,.01692,1.28,.3286,1.52,25,-.1,.01361,.298,8326.3902,3.05,50,-.2,.01293,4.013,7072.0875,1.58,25,-.1,.01276,4.413,8330.9926,0,0,0,.0127,.101,8470.6668,-2.24,-19,.1,.01097,1.203,22128.5152,-2.82,-13,0,.01088,2.545,15542.7543,-.66,6,0,.00835,.19,7214.0629,-2.18,-19,.1,.00734,4.855,24499.7477,.83,31,-.2,.00686,5.13,13799.8238,-4.34,-38,.2,.00631,.93,-486.3266,-3.73,-44,0,.00585,.699,9585.2953,1.5,25,0,.00566,4.073,8328.3391,1.5,25,0,.00566,.638,8329.0437,1.5,25,0,.00539,2.472,-1952.48,.6,7,0,.00509,2.88,-.7113,0,0,0,.00469,3.56,30457.2066,-1.3,12,0,.00387,.78,-.3523,0,0,0,.00378,1.84,22614.8418,.9,31,0,.00362,5.53,-695.8761,.6,7,0,.00317,2.8,16728.3705,1.2,28,0,.00303,6.07,157.7344,0,0,0,.003,2.53,33.757,-.3,-4,0,.00295,4.16,31571.8352,2.4,56,0,.00289,5.98,7211.7617,-.7,6,0,.00285,2.06,15540.4531,.9,31,0,.00283,2.65,2.6298,0,0,0,.00282,6.17,15545.0555,-2.2,-19,0,.00278,1.23,-39.8149,0,0,0,.00272,3.82,7216.3641,-3.7,-44,0,.0027,4.37,70.9877,-1.9,-22,0,.00256,5.81,13657.8484,-.6,6,0,.00244,5.64,-.2237,1.5,25,0,.0024,2.96,8311.7707,-2.2,-19,0,.00239,.87,-33.7814,.3,4,0,.00216,2.31,15.9995,-2.2,-19,0,.00186,3.46,5329.157,-2.1,-19,0,.00169,2.4,24357.772,4.6,75,0,.00161,5.8,8329.403,1.5,25,0,.00161,5.2,8327.98,1.5,25,0,.0016,4.26,23385.119,-2.9,-13,0,.00156,1.26,550.755,0,0,0,.00155,1.25,21500.213,-2.8,-13,0,.00152,.6,-16.921,-3.7,-44,0,.0015,2.71,-79.63,0,0,0,.0015,5.29,15.542,0,0,0,.00148,1.06,-2371.232,-3.7,-44,0,.00141,.77,8328.691,1.5,25,0,.00141,3.67,7143.075,-.3,0,0,.00138,5.45,25614.376,4.5,75,0,.00129,4.9,23871.446,.9,31,0,.00126,4.03,141.975,-3.8,-44,0,.00124,6.01,522.369,0,0,0,.0012,4.94,-10071.622,-5.2,-69,0,.00118,5.07,-15.419,-2.2,-19,0,.00107,3.49,23452.693,-3.4,-20,0,.00104,4.78,17495.234,-1.3,0,0,.00103,1.44,-18.049,-2.2,-19,0,.00102,5.63,15542.402,-.7,6,0,.00102,2.59,15543.107,-.7,6,0,.001,4.11,-6.559,-1.9,-22,0,97e-5,.08,15400.779,3.1,50,0,96e-5,5.84,31781.385,-1.9,5,0,94e-5,1.08,8328.363,0,0,0,94e-5,2.46,16799.358,-.7,6,0,94e-5,1.69,6376.211,2.2,32,0,93e-5,3.64,8329.02,3,50,0,93e-5,2.65,16655.082,4.6,75,0,9e-4,1.9,15056.428,-4.4,-38,0,89e-5,1.59,52.969,0,0,0,88e-5,2.02,-8257.704,-3.4,-47,0,88e-5,3.02,7213.711,-2.2,-19,0,87e-5,.5,7214.415,-2.2,-19,0,87e-5,.49,16659.684,1.5,25,0,82e-5,5.64,-4.931,1.5,25,0,79e-5,5.17,13171.522,-4.3,-38,0,76e-5,3.6,29828.905,-1.3,12,0,76e-5,4.08,24567.322,.3,24,0,76e-5,4.58,1884.906,-.1,0,0,73e-5,.33,31713.811,-1.4,12,0,73e-5,.93,32828.439,2.4,56,0,71e-5,5.91,38785.898,.2,37,0,69e-5,2.2,15613.742,-2.5,-16,0,66e-5,3.87,15.732,-2.5,-23,0,66e-5,.86,25823.926,.2,24,0,65e-5,2.52,8170.957,1.5,25,0,63e-5,.18,8322.132,-.3,0,0,6e-4,5.84,8326.062,1.5,25,0,6e-4,5.15,8331.321,1.5,25,0,6e-4,2.18,8486.426,1.5,25,0,58e-5,2.3,-1.731,-4,-44,0,58e-5,5.43,14357.138,-2,-16,0,57e-5,3.09,8294.91,2,29,0,57e-5,4.67,-8362.473,-1,-21,0,56e-5,4.15,16833.151,-1,0,0,54e-5,1.93,7056.329,-2,-19,0,54e-5,5.27,8315.574,-2,-19,0,52e-5,5.6,8311.418,-2,-19,0,52e-5,2.7,-77.552,0,0,0,51e-5,4.3,7230.984,2,25,0,5e-4,.4,-.508,0,0,0,49e-5,5.4,7211.433,-2,-19,0,49e-5,4.4,7216.693,-2,-19,0,49e-5,4.3,16864.631,0,24,0,49e-5,2.2,16869.234,-3,-26,0,47e-5,6.1,627.596,0,0,0,47e-5,5,12.619,1,7,0,45e-5,4.9,-8815.018,-5,-69,0,44e-5,1.6,62.133,-2,-19,0,42e-5,2.9,-13.118,-4,-44,0,42e-5,4.1,-119.445,0,0,0,41e-5,4.3,22756.817,-3,-13,0,41e-5,3.6,8288.877,2,25,0,4e-4,.5,6663.308,-2,-19,0,4e-4,1.1,8368.506,2,25,0,39e-5,4.1,6443.786,2,25,0,39e-5,3.1,16657.383,3,50,0,38e-5,.1,16657.031,3,50,0,38e-5,3,16657.735,3,50,0,38e-5,4.6,23942.433,-1,9,0,37e-5,4.3,15385.02,-1,6,0,37e-5,5,548.678,0,0,0,36e-5,1.8,7213.352,-2,-19,0,36e-5,1.7,7214.774,-2,-19,0,35e-5,1.1,7777.936,2,25,0,35e-5,1.6,-8.86,0,0,0,35e-5,4.4,23869.145,2,56,0,35e-5,2,6691.693,-2,-19,0,34e-5,1.3,-1185.616,-2,-22,0,34e-5,2.2,23873.747,-1,6,0,33e-5,2,-235.287,0,0,0,33e-5,3.1,17913.987,3,50,0,33e-5,1,8351.233,-2,-19,0],[.00487,4.6693,628.30196,-.027,0,-.01,.00228,2.6746,-2.3012,1.523,25,-.12,.0015,3.372,6585.76091,-2.16,-19,.1,.0012,5.728,14914.45233,-.64,6,0,.00108,3.969,7700.38947,1.55,25,-.1,8e-4,.742,8956.99338,1.5,25,-.1,254e-6,6.002,.3286,1.52,25,-.1,21e-5,.144,7842.3648,-2.21,-19,0,18e-5,2.5,16171.0562,-.7,6,0,13e-5,.44,8399.6791,-.4,3,0,126e-6,5.03,8326.3902,3,50,0,12e-5,5.77,14286.1504,-.6,6,0,118e-6,5.96,8330.9926,0,0,0,11e-5,1.8,23243.1438,.9,31,0,11e-5,3.42,5957.459,-2.1,-19,0,11e-5,4.63,1256.6039,-.1,0,0,99e-6,4.7,-.7113,0,0,0,7e-5,.04,16029.0809,3.1,50,0,7e-5,5.14,8328.3391,1.5,25,0,7e-5,5.85,8329.0437,1.5,25,0,6e-5,1.02,-1742.9305,-3.7,-44,0,6e-5,3.1,17285.6848,3,50,0,54e-6,5.69,-.352,0,0,0,43e-6,.52,15.542,0,0,0,41e-6,2.03,2.63,0,0,0,4e-5,.1,8470.667,-2.2,-19,0,4e-5,4.01,7072.088,1.6,25,0,36e-6,2.93,-8.86,-.3,0,0,3e-5,1.2,22128.515,-2.8,-13,0,3e-5,2.54,15542.754,-.7,6,0,27e-6,4.43,7211.762,-.7,6,0,26e-6,.51,15540.453,.9,31,0,26e-6,1.44,15545.055,-2.2,-19,0,25e-6,5.37,7216.364,-3.7,-44,0],[12e-6,1.041,-2.3012,1.52,25,-.1,17e-7,.31,-.711,0,0,0]];I1.QI_KB=[1640650479938e-6,15.218425,1642476703182e-6,15.21874996,1683430515601e-6,15.218750011,1752157640664e-6,15.218749978,1807675003759e-6,15.218620279,1883627765182e-6,15.218612292,19073691281e-4,15.218449176,1936603140413e-6,15.218425,193914552418e-5,15.218466998,19471807983e-4,15.218524844,1964362041824e-6,15.218533526,1987372340971e-6,15.218513908,1999653819126e-6,15.218530782,2007445469786e-6,15.218535181,2021324917146e-6,15.218526248,2047257232342e-6,15.218519654,2070282898213e-6,15.218425,207320487285e-5,15.218515221,2080144500926e-6,15.218530782,2086703688963e-6,15.218523776,2110033182763e-6,15.218425,2111190300888e-6,15.218425,2113731271005e-6,15.218515671,2120670840263e-6,15.218425,2123973309063e-6,15.218425,2125068997336e-6,15.218477932,2136026312633e-6,15.218472436,2156099495538e-6,15.218425,2159021324663e-6,15.218425,2162308575254e-6,15.218461742,2178485706538e-6,15.218425,2178759662849e-6,15.218445786,21853340208e-4,15.218425,2187525481425e-6,15.218425,2188621191481e-6,15.218437494,232214776e-2];I1.QB=V.decode("FrcFs22AFsckF2tsDtFqEtF1posFdFgiFseFtmelpsEfhkF2anmelpFlF1ikrotcnEqEq2FfqmcDsrFor22FgFrcgDscFs22FgEeFtE2sfFs22sCoEsaF2tsD1FpeE2eFsssEciFsFnmelpFcFhkF2tcnEqEpFgkrotcnEqrEtFermcDsrE222FgBmcmr22DaEfnaF222sD1FpeForeF2tssEfiFpEoeFssD1iFstEqFppDgFstcnEqEpFg11FscnEqrAoAF2ClAEsDmDtCtBaDlAFbAEpAAAAAD2FgBiBqoBbnBaBoAAAAAAAEgDqAdBqAFrBaBoACdAAf1AACgAAAeBbCamDgEifAE2AABa1C1BgFdiAAACoCeE1ADiEifDaAEqAAFe1AcFbcAAAAAF1iFaAAACpACmFmAAAAAAAACrDaAAADG0");I1.SHUO_KB=[1457698231017e-6,29.53067166,1546082512234e-6,29.53085106,16406407353e-4,29.5306,1642472151543e-6,29.53085439,16834305093e-4,29.53086148,1752148041079e-6,29.53085097,1807665420323e-6,29.53059851,18836181141e-4,29.5306,19073607047e-4,29.5306,19365962249e-4,29.5306,19391356753e-4,29.5306,1947168];I1.SB=V.decode("EqoFscDcrFpmEsF2DfFideFelFpFfFfFiaipqti1ksttikptikqckstekqttgkqttgkqteksttikptikq2fjstgjqttjkqttgkqtekstfkptikq2tijstgjiFkirFsAeACoFsiDaDiADc1AFbBfgdfikijFifegF1FhaikgFag1E2btaieeibggiffdeigFfqDfaiBkF1kEaikhkigeidhhdiegcFfakF1ggkidbiaedksaFffckekidhhdhdikcikiakicjF1deedFhFccgicdekgiFbiaikcfi1kbFibefgEgFdcFkFeFkdcfkF1kfkcickEiFkDacFiEfbiaejcFfffkhkdgkaiei1ehigikhdFikfckF1dhhdikcfgjikhfjicjicgiehdikcikggcifgiejF1jkieFhegikggcikFegiegkfjebhigikggcikdgkaFkijcfkcikfkcifikiggkaeeigefkcdfcfkhkdgkegieidhijcFfakhfgeidieidiegikhfkfckfcjbdehdikggikgkfkicjicjF1dbidikFiggcifgiejkiegkigcdiegfggcikdbgfgefjF1kfegikggcikdgFkeeijcfkcikfkekcikdgkabhkFikaffcfkhkdgkegbiaekfkiakicjhfgqdq2fkiakgkfkhfkfcjiekgFebicggbedF1jikejbbbiakgbgkacgiejkijjgigfiakggfggcibFifjefjF1kfekdgjcibFeFkijcfkfhkfkeaieigekgbhkfikidfcjeaibgekgdkiffiffkiakF1jhbakgdki1dj1ikfkicjicjieeFkgdkicggkighdF1jfgkgfgbdkicggfggkidFkiekgijkeigfiskiggfaidheigF1jekijcikickiggkidhhdbgcfkFikikhkigeidieFikggikhkffaffijhidhhakgdkhkijF1kiakF1kfheakgdkifiggkigicjiejkieedikgdfcggkigieeiejfgkgkigbgikicggkiaideeijkefjeijikhkiggkiaidheigcikaikffikijgkiahi1hhdikgjfifaakekighie1hiaikggikhkffakicjhiahaikggikhkijF1kfejfeFhidikggiffiggkigicjiekgieeigikggiffiggkidheigkgfjkeigiegikifiggkidhedeijcfkFikikhkiggkidhh1ehigcikaffkhkiggkidhh1hhigikekfiFkFikcidhh1hitcikggikhkfkicjicghiediaikggikhkijbjfejfeFhaikggifikiggkigiejkikgkgieeigikggiffiggkigieeigekijcijikggifikiggkideedeijkefkfckikhkiggkidhh1ehijcikaffkhkiggkidhh1hhigikhkikFikfckcidhh1hiaikgjikhfjicjicgiehdikcikggifikigiejfejkieFhegikggifikiggfghigkfjeijkhigikggifikiggkigieeijcijcikfksikifikiggkidehdeijcfdckikhkiggkhghh1ehijikifffffkhsFngErD1pAfBoDd1BlEtFqA2AqoEpDqElAEsEeB2BmADlDkqBtC1FnEpDqnEmFsFsAFnllBbFmDsDiCtDmAB2BmtCgpEplCpAEiBiEoFqFtEqsDcCnFtADnFlEgdkEgmEtEsCtDmADqFtAFrAtEcCqAE1BoFqC1F1DrFtBmFtAC2ACnFaoCgADcADcCcFfoFtDlAFgmFqBq2bpEoAEmkqnEeCtAE1bAEqgDfFfCrgEcBrACfAAABqAAB1AAClEnFeCtCgAADqDoBmtAAACbFiAAADsEtBqAB2FsDqpFqEmFsCeDtFlCeDtoEpClEqAAFrAFoCgFmFsFqEnAEcCqFeCtFtEnAEeFtAAEkFnErAABbFkADnAAeCtFeAfBoAEpFtAABtFqAApDcCGJ");const Ge=class{static fromYear(t){let e;return!Ge._CACHE_YEAR||Ge._CACHE_YEAR.getYear()!=t?(e=new Ge(t),Ge._CACHE_YEAR=e):e=Ge._CACHE_YEAR,e}constructor(t){this._year=t,this._months=[],this._jieQiJulianDays=[];const e=t-4;let i=e%10,s=e%12;i<0&&(i+=10),s<0&&(s+=12),this._ganIndex=i,this._zhiIndex=s,this.compute()}compute(){const t=[],e=[],i=[],s=[];let r,c;const o=this._year;let d=Math.floor((o-2e3)*365.2422+180),g=Math.floor((d-355+183)/365.2422)*365.2422+355;for(I1.calcQi(g)>d&&(g-=365.2422),r=0;r<26;r++)t.push(I1.calcQi(g+15.2184*r));for(r=0,c=C.JIE_QI_IN_USE.length;r<c;r++)r===0?d=I1.qiAccurate2(t[0]-15.2184):r<=26?d=I1.qiAccurate2(t[r-1]):d=I1.qiAccurate2(t[25]+15.2184*(r-26)),this._jieQiJulianDays.push(d+k0.J2000);for(g=I1.calcShuo(t[0]),g>t[0]&&(g-=29.53),r=0;r<16;r++)e.push(I1.calcShuo(g+29.5306*r));for(r=0;r<15;r++)i.push(Math.floor(e[r+1]-e[r])),s.push(r);const f=o-1;let E=16;if(Ge._LEAP_11.indexOf(o)>-1)E=13;else if(Ge._LEAP_12.indexOf(o)>-1)E=14;else if(e[13]<=t[24]){for(r=1;e[r+1]>t[2*r]&&r<13;)r++;E=r}for(c=E;c<15;c++)s[c]-=1;const F=[11,12,1,2,3,4,5,6,7,8,9,10];let x=-1,A=-1,y=f;for(r=0;r<15;r++){const B=e[r]+k0.J2000,_=s[r];let S=F[_%12];1724360<=B&&B<1729794||1807724<=B&&B<1808699?S=F[(_+1)%12]:(B==1729794||B==1808699)&&(S=12),x==-1&&(x=S,A=S),S<x&&(y+=1,A=1),x=S,r==E?S=-S:(B==1729794||B==1808699)&&(S=-11),this._months.push(new G3(y,S,i[r],e[r]+k0.J2000,A)),A++}}getYear(){return this._year}getGanIndex(){return this._ganIndex}getZhiIndex(){return this._zhiIndex}getGan(){return C.GAN[this._ganIndex+1]}getZhi(){return C.ZHI[this._zhiIndex+1]}getGanZhi(){return this.getGan()+this.getZhi()}getJieQiJulianDays(){return this._jieQiJulianDays}getDayCount(){let t=0;for(let e=0,i=this._months.length;e<i;e++){const s=this._months[e];s.getYear()==this._year&&(t+=s.getDayCount())}return t}getMonths(){return this._months}getMonthsInYear(){const t=[];for(let e=0,i=this._months.length;e<i;e++){const s=this._months[e];s.getYear()==this._year&&t.push(s)}return t}getMonth(t){for(let e=0,i=this._months.length;e<i;e++){const s=this._months[e];if(s.getYear()==this._year&&s.getMonth()==t)return s}return null}getLeapMonth(){for(let t=0,e=this._months.length;t<e;t++){const i=this._months[t];if(i.getYear()==this._year&&i.isLeap())return Math.abs(i.getMonth())}return 0}toString(){return`${this.getYear()}`}toFullString(){return`${this.getYear()}年`}_getZaoByGan(t,e){const i=this.getMonth(1);if(i==null)return"";let s=t-k0.fromJulianDay(i.getFirstJulianDay()).getLunar().getDayGanIndex();return s<0&&(s+=10),e.replace("几",C.NUMBER[s+1])}_getZaoByZhi(t,e){const i=this.getMonth(1);if(i==null)return"";let s=t-k0.fromJulianDay(i.getFirstJulianDay()).getLunar().getDayZhiIndex();return s<0&&(s+=12),e.replace("几",C.NUMBER[s+1])}getTouLiang(){return this._getZaoByZhi(0,"几鼠偷粮")}getCaoZi(){return this._getZaoByZhi(0,"草子几分")}getGengTian(){return this._getZaoByZhi(1,"几牛耕田")}getHuaShou(){return this._getZaoByZhi(3,"花收几分")}getZhiShui(){return this._getZaoByZhi(4,"几龙治水")}getTuoGu(){return this._getZaoByZhi(6,"几马驮谷")}getQiangMi(){return this._getZaoByZhi(9,"几鸡抢米")}getKanCan(){return this._getZaoByZhi(9,"几姑看蚕")}getGongZhu(){return this._getZaoByZhi(11,"几屠共猪")}getJiaTian(){return this._getZaoByGan(0,"甲田几分")}getFenBing(){return this._getZaoByGan(2,"几人分饼")}getDeJin(){return this._getZaoByGan(7,"几日得金")}getRenBing(){return this._getZaoByGan(2,this._getZaoByZhi(2,"几人几丙"))}getRenChu(){return this._getZaoByGan(3,this._getZaoByZhi(2,"几人几锄"))}getYuan(){return Ge.YUAN[Math.floor((this._year+2696)/60)%3]+"元"}getYun(){return Ge.YUN[Math.floor((this._year+2696)/20)%9]+"运"}getNineStar(){const t=C.getJiaZiIndex(this.getGanZhi())+1;let i=(62+Math.floor(this._year+2696)/60%3*3-t)%9;return i==0&&(i=9),$1.fromIndex(i-1)}getPositionXi(){return C.POSITION_XI[this._ganIndex+1]}getPositionXiDesc(){return C.POSITION_DESC[this.getPositionXi()]}getPositionYangGui(){return C.POSITION_YANG_GUI[this._ganIndex+1]}getPositionYangGuiDesc(){return C.POSITION_DESC[this.getPositionYangGui()]}getPositionYinGui(){return C.POSITION_YIN_GUI[this._ganIndex+1]}getPositionYinGuiDesc(){return C.POSITION_DESC[this.getPositionYinGui()]}getPositionFu(t=2){return(t==1?C.POSITION_FU:C.POSITION_FU_2)[this._ganIndex+1]}getPositionFuDesc(t=2){return C.POSITION_DESC[this.getPositionFu(t)]}getPositionCai(){return C.POSITION_CAI[this._ganIndex+1]}getPositionCaiDesc(){return C.POSITION_DESC[this.getPositionCai()]}getPositionTaiSui(){return C.POSITION_TAI_SUI_YEAR[this._zhiIndex]}getPositionTaiSuiDesc(){return C.POSITION_DESC[this.getPositionTaiSui()]}next(t){return Ge.fromYear(this._year+t)}};let re=Ge;re.YUAN=["下","上","中"];re.YUN=["七","八","九","一","二","三","四","五","六"];re._LEAP_11=[75,94,170,265,322,398,469,553,583,610,678,735,754,773,849,887,936,1050,1069,1126,1145,1164,1183,1259,1278,1308,1373,1403,1441,1460,1498,1555,1593,1612,1631,1642,2033,2128,2147,2242,2614,2728,2910,3062,3244,3339,3616,3711,3730,3825,4007,4159,4197,4322,4341,4379,4417,4531,4599,4694,4713,4789,4808,4971,5085,5104,5161,5180,5199,5294,5305,5476,5677,5696,5772,5791,5848,5886,6049,6068,6144,6163,6258,6402,6440,6497,6516,6630,6641,6660,6679,6736,6774,6850,6869,6899,6918,6994,7013,7032,7051,7070,7089,7108,7127,7146,7222,7271,7290,7309,7366,7385,7404,7442,7461,7480,7491,7499,7594,7624,7643,7662,7681,7719,7738,7814,7863,7882,7901,7939,7958,7977,7996,8034,8053,8072,8091,8121,8159,8186,8216,8235,8254,8273,8311,8330,8341,8349,8368,8444,8463,8474,8493,8531,8569,8588,8626,8664,8683,8694,8702,8713,8721,8751,8789,8808,8816,8827,8846,8884,8903,8922,8941,8971,9036,9066,9085,9104,9123,9142,9161,9180,9199,9218,9256,9294,9313,9324,9343,9362,9381,9419,9438,9476,9514,9533,9544,9552,9563,9571,9582,9601,9639,9658,9666,9677,9696,9734,9753,9772,9791,9802,9821,9886,9897,9916,9935,9954,9973,9992];re._LEAP_12=[37,56,113,132,151,189,208,227,246,284,303,341,360,379,417,436,458,477,496,515,534,572,591,629,648,667,697,716,792,811,830,868,906,925,944,963,982,1001,1020,1039,1058,1088,1153,1202,1221,1240,1297,1335,1392,1411,1422,1430,1517,1525,1536,1574,3358,3472,3806,3988,4751,4941,5066,5123,5275,5343,5438,5457,5495,5533,5552,5715,5810,5829,5905,5924,6421,6535,6793,6812,6888,6907,7002,7184,7260,7279,7374,7556,7746,7757,7776,7833,7852,7871,7966,8015,8110,8129,8148,8224,8243,8338,8406,8425,8482,8501,8520,8558,8596,8607,8615,8645,8740,8778,8835,8865,8930,8960,8979,8998,9017,9055,9074,9093,9112,9150,9188,9237,9275,9332,9351,9370,9408,9427,9446,9457,9465,9495,9560,9590,9628,9647,9685,9715,9742,9780,9810,9818,9829,9848,9867,9905,9924,9943,9962,1e4];re._CACHE_YEAR=null;class vi{static fromYmdHms(e,i,s,r,c,o){return new vi(e,i,s,r,c,o)}constructor(e,i,s,r,c,o){this._lunar=V0.fromYmdHms(e,i,s,r,c,o),this._zhiIndex=C.getTimeZhiIndex([(r<10?"0":"")+r,(c<10?"0":"")+c].join(":")),this._ganIndex=(this._lunar.getDayGanIndexExact()%5*2+this._zhiIndex)%10}getGanIndex(){return this._ganIndex}getZhiIndex(){return this._zhiIndex}getGan(){return C.GAN[this._ganIndex+1]}getZhi(){return C.ZHI[this._zhiIndex+1]}getGanZhi(){return this.getGan()+this.getZhi()}getShengXiao(){return C.SHENGXIAO[this._zhiIndex+1]}getPositionXi(){return C.POSITION_XI[this._ganIndex+1]}getPositionXiDesc(){return C.POSITION_DESC[this.getPositionXi()]}getPositionYangGui(){return C.POSITION_YANG_GUI[this._ganIndex+1]}getPositionYangGuiDesc(){return C.POSITION_DESC[this.getPositionYangGui()]}getPositionYinGui(){return C.POSITION_YIN_GUI[this._ganIndex+1]}getPositionYinGuiDesc(){return C.POSITION_DESC[this.getPositionYinGui()]}getPositionFu(e=2){return(e===1?C.POSITION_FU:C.POSITION_FU_2)[this._ganIndex+1]}getPositionFuDesc(e=2){return C.POSITION_DESC[this.getPositionFu(e)]}getPositionCai(){return C.POSITION_CAI[this._ganIndex+1]}getPositionCaiDesc(){return C.POSITION_DESC[this.getPositionCai()]}getNaYin(){return C.NAYIN[this.getGanZhi()]}getTianShen(){return C.TIAN_SHEN[(this._zhiIndex+C.ZHI_TIAN_SHEN_OFFSET[this._lunar.getDayZhiExact()])%12+1]}getTianShenType(){return C.TIAN_SHEN_TYPE[this.getTianShen()]}getTianShenLuck(){return C.TIAN_SHEN_TYPE_LUCK[this.getTianShenType()]}getChong(){return C.CHONG[this._zhiIndex]}getSha(){return C.SHA[this.getZhi()]}getChongShengXiao(){const e=this.getChong();for(let i=0,s=C.ZHI.length;i<s;i++)if(C.ZHI[i]===e)return C.SHENGXIAO[i];return""}getChongDesc(){return"("+this.getChongGan()+this.getChong()+")"+this.getChongShengXiao()}getChongGan(){return C.CHONG_GAN[this._ganIndex]}getChongGanTie(){return C.CHONG_GAN_TIE[this._ganIndex]}getYi(){return C.getTimeYi(this._lunar.getDayInGanZhiExact(),this.getGanZhi())}getJi(){return C.getTimeJi(this._lunar.getDayInGanZhiExact(),this.getGanZhi())}getNineStar(){const e=this._lunar.getSolar().toYmd(),i=this._lunar.getJieQiTable();let s=!1;e>=i[a0.getMessage("jq.dongZhi")].toYmd()&&e<i[a0.getMessage("jq.xiaZhi")].toYmd()&&(s=!0);const c=(s?[0,3,6]:[8,5,2])[this._lunar.getDayZhiIndex()%3],o=s?c+this._zhiIndex:c+9-this._zhiIndex;return $1.fromIndex(o%9)}getXun(){return C.getXun(this.getGanZhi())}getXunKong(){return C.getXunKong(this.getGanZhi())}getMinHm(){let e=this._lunar.getHour();return e<1?"00:00":e>22?"23:00":(e%2===0&&(e-=1),(e<10?"0":"")+e+":00")}getMaxHm(){let e=this._lunar.getHour();return e<1?"00:59":e>22?"23:59":(e%2!==0&&(e+=1),(e<10?"0":"")+e+":59")}toString(){return this.getGanZhi()}}const on=class{constructor(t){this._lunar=t}static fromLunar(t){return new on(t)}static fromYmdHms(t,e,i,s,r,c){return on.fromLunar(V0.fromYmdHms(t+on.DEAD_YEAR-1,e,i,s,r,c))}static fromYmd(t,e,i){return on.fromYmdHms(t,e,i,0,0,0)}getLunar(){return this._lunar}getYear(){const t=this._lunar.getSolar().getYear();let e=t-on.DEAD_YEAR;return t===this._lunar.getYear()&&e++,e}getMonth(){return this._lunar.getMonth()}getDay(){return this._lunar.getDay()}getYearInChinese(){const t=this.getYear()+"";let e="";const i=48;for(let s=0,r=t.length;s<r;s++)e+=C.NUMBER[t.charCodeAt(s)-i];return e}getMonthInChinese(){return this._lunar.getMonthInChinese()}getDayInChinese(){return this._lunar.getDayInChinese()}getFestivals(){const t=e1.FESTIVAL[this.getMonth()+"-"+this.getDay()];return t||[]}getOtherFestivals(){const t=[],e=e1.OTHER_FESTIVAL[this.getMonth()+"-"+this.getDay()];return e&&e.forEach(i=>{t.push(i)}),t}isMonthZhai(){const t=this.getMonth();return t===1||t===5||t===9}isDayYangGong(){const t=this.getFestivals();for(let e=0,i=t.length;e<i;e++)if(t[e].getName()==="杨公忌")return!0;return!1}isDayZhaiShuoWang(){const t=this.getDay();return t===1||t===15}isDayZhaiSix(){const t=this.getDay();if(t===8||t===14||t===15||t===23||t===29||t===30)return!0;if(t===28){const e=G3.fromYm(this._lunar.getYear(),this.getMonth());if(e!=null&&e.getDayCount()!==30)return!0}return!1}isDayZhaiTen(){const t=this.getDay();return t===1||t===8||t===14||t===15||t===18||t===23||t===24||t===28||t===29||t===30}isDayZhaiGuanYin(){const t=this.getMonth()+"-"+this.getDay();for(let e=0,i=e1.DAY_ZHAI_GUAN_YIN.length;e<i;e++)if(t===e1.DAY_ZHAI_GUAN_YIN[e])return!0;return!1}getXiu(){return e1.getXiu(this.getMonth(),this.getDay())}getXiuLuck(){return C.XIU_LUCK[this.getXiu()]}getXiuSong(){return C.XIU_SONG[this.getXiu()]}getZheng(){return C.ZHENG[this.getXiu()]}getAnimal(){return C.ANIMAL[this.getXiu()]}getGong(){return C.GONG[this.getXiu()]}getShou(){return C.SHOU[this.getGong()]}toString(){return this.getYearInChinese()+"年"+this.getMonthInChinese()+"月"+this.getDayInChinese()}toFullString(){let t=this.toString();const e=this.getFestivals();for(let i=0,s=e.length;i<s;i++)t+=" ("+e[i]+")";return t}};let Ul=on;Ul.DEAD_YEAR=-543;const cn=class{constructor(t){this._lunar=t}static fromLunar(t){return new cn(t)}static fromYmdHms(t,e,i,s,r,c){return cn.fromLunar(V0.fromYmdHms(t+cn.BIRTH_YEAR,e,i,s,r,c))}static fromYmd(t,e,i){return cn.fromYmdHms(t,e,i,0,0,0)}getLunar(){return this._lunar}getYear(){return this._lunar.getYear()-cn.BIRTH_YEAR}getMonth(){return this._lunar.getMonth()}getDay(){return this._lunar.getDay()}getYearInChinese(){const t=this.getYear()+"";let e="";const i=48;for(let s=0,r=t.length;s<r;s++)e+=C.NUMBER[t.charCodeAt(s)-i];return e}getMonthInChinese(){return this._lunar.getMonthInChinese()}getDayInChinese(){return this._lunar.getDayInChinese()}getFestivals(){const t=[],e=j1.FESTIVAL[this.getMonth()+"-"+this.getDay()];e&&e.forEach(r=>{t.push(r)});const i=this._lunar.getJieQi();a0.getMessage("jq.dongZhi")===i?t.push(new Q("元始天尊圣诞")):a0.getMessage("jq.xiaZhi")===i&&t.push(new Q("灵宝天尊圣诞"));let s=j1.BA_JIE[i];return s&&t.push(new Q(s)),s=j1.BA_HUI[this._lunar.getDayInGanZhi()],s&&t.push(new Q(s)),t}_isDayIn(t){const e=this.getMonth()+"-"+this.getDay();for(let i=0,s=t.length;i<s;i++)if(e===t[i])return!0;return!1}isDaySanHui(){return this._isDayIn(j1.SAN_HUI)}isDaySanYuan(){return this._isDayIn(j1.SAN_YUAN)}isDayBaJie(){return!!j1.BA_JIE[this._lunar.getJieQi()]}isDayWuLa(){return this._isDayIn(j1.WU_LA)}isDayBaHui(){return!!j1.BA_HUI[this._lunar.getDayInGanZhi()]}isDayMingWu(){return a0.getMessage("tg.wu")===this._lunar.getDayGan()}isDayAnWu(){return this._lunar.getDayZhi()===j1.AN_WU[Math.abs(this.getMonth())-1]}isDayWu(){return this.isDayMingWu()||this.isDayAnWu()}isDayTianShe(){let t=!1;const e=this._lunar.getMonthZhi(),i=this._lunar.getDayInGanZhi();return[a0.getMessage("dz.yin"),a0.getMessage("dz.mao"),a0.getMessage("dz.chen")].join(",").indexOf(e)>-1?a0.getMessage("jz.wuYin")===i&&(t=!0):[a0.getMessage("dz.si"),a0.getMessage("dz.wu"),a0.getMessage("dz.wei")].join(",").indexOf(e)>-1?a0.getMessage("jz.jiaWu")===i&&(t=!0):[a0.getMessage("dz.shen"),a0.getMessage("dz.you"),a0.getMessage("dz.xu")].join(",").indexOf(e)>-1?a0.getMessage("jz.wuShen")===i&&(t=!0):[a0.getMessage("dz.hai"),a0.getMessage("dz.zi"),a0.getMessage("dz.chou")].join(",").indexOf(e)>-1&&a0.getMessage("jz.jiaZi")===i&&(t=!0),t}toString(){return this.getYearInChinese()+"年"+this.getMonthInChinese()+"月"+this.getDayInChinese()}toFullString(){return"道歷"+this.getYearInChinese()+"年,天運"+this._lunar.getYearInGanZhi()+"年,"+this._lunar.getMonthInGanZhi()+"月,"+this._lunar.getDayInGanZhi()+"日。"+this.getMonthInChinese()+"月"+this.getDayInChinese()+"日,"+this._lunar.getTimeZhi()+"時。"}};let ql=cn;ql.BIRTH_YEAR=-2697;class V0{static fromYmd(e,i,s){return V0.fromYmdHms(e,i,s,0,0,0)}static fromYmdHms(e,i,s,r,c,o){let d=re.fromYear(e);const g=d.getMonth(i);if(g==null)throw new Error(`wrong lunar year ${e} month ${i}`);if(s<1)throw new Error("lunar day must bigger than 0");const f=g.getDayCount();if(s>f)throw new Error(`only ${f} days in lunar year ${e} month ${i}`);const E=k0.fromJulianDay(g.getFirstJulianDay()+s-1),F=k0.fromYmdHms(E.getYear(),E.getMonth(),E.getDay(),r,c,o);return E.getYear()!==e&&(d=re.fromYear(E.getYear())),new V0(e,i,s,r,c,o,F,d)}static fromSolar(e){let i=0,s=0,r=0;const c=re.fromYear(e.getYear()),o=c.getMonths();for(let d=0,g=o.length;d<g;d++){const f=o[d],E=e.subtract(k0.fromJulianDay(f.getFirstJulianDay()));if(E<f.getDayCount()){i=f.getYear(),s=f.getMonth(),r=E+1;break}}return new V0(i,s,r,e.getHour(),e.getMinute(),e.getSecond(),e,c)}static fromDate(e){return V0.fromSolar(k0.fromDate(e))}static _computeJieQi(e,i){const s=i.getJieQiJulianDays();for(let r=0,c=C.JIE_QI_IN_USE.length;r<c;r++){const o=C.JIE_QI_IN_USE[r];e.jieQiList.push(o),e.jieQi[o]=k0.fromJulianDay(s[r])}}static _computeYear(e,i,s){const r=s-4;let c=r%10,o=r%12;c<0&&(c+=10),o<0&&(o+=12);let d=c,g=o,f=c,E=o;const F=i.getYear(),x=i.toYmd(),A=i.toYmdHms();let y=e.jieQi[a0.getMessage("jq.liChun")];y.getYear()!=F&&(y=e.jieQi.LI_CHUN);const B=y.toYmd(),_=y.toYmdHms();s===F?(x<B&&(d--,g--),A<_&&(f--,E--)):s<F&&(x>=B&&(d++,g++),A>=_&&(f++,E++)),e.yearGanIndex=c,e.yearZhiIndex=o,e.yearGanIndexByLiChun=(d<0?d+10:d)%10,e.yearZhiIndexByLiChun=(g<0?g+12:g)%12,e.yearGanIndexExact=(f<0?f+10:f)%10,e.yearZhiIndexExact=(E<0?E+12:E)%12}static _computeMonth(e,i){let s=null,r=null;const c=i.toYmd(),o=i.toYmdHms(),d=C.JIE_QI_IN_USE.length;let g=-3;for(let E=0;E<d;E+=2){r=e.jieQi[C.JIE_QI_IN_USE[E]];const F=s==null?c:s.toYmd();if(c>=F&&c<r.toYmd())break;s=r,g++}let f=((e.yearGanIndexByLiChun+(g<0?1:0))%5+1)*2%10;e.monthGanIndex=((g<0?g+10:g)+f)%10,e.monthZhiIndex=((g<0?g+12:g)+C.BASE_MONTH_ZHI_INDEX)%12,s=null,g=-3;for(let E=0;E<d;E+=2){r=e.jieQi[C.JIE_QI_IN_USE[E]];const F=s==null?o:s.toYmdHms();if(o>=F&&o<r.toYmdHms())break;s=r,g++}f=((e.yearGanIndexExact+(g<0?1:0))%5+1)*2%10,e.monthGanIndexExact=((g<0?g+10:g)+f)%10,e.monthZhiIndexExact=((g<0?g+12:g)+C.BASE_MONTH_ZHI_INDEX)%12}static _computeDay(e,i,s,r){const c=k0.fromYmdHms(i.getYear(),i.getMonth(),i.getDay(),12,0,0),o=Math.floor(c.getJulianDay())-11,d=o%10,g=o%12;e.dayGanIndex=d,e.dayZhiIndex=g;let f=d,E=g;e.dayGanIndexExact2=f,e.dayZhiIndexExact2=E;const F=(s<10?"0":"")+s+":"+(r<10?"0":"")+r;F>="23:00"&&F<="23:59"&&(f++,f>=10&&(f-=10),E++,E>=12&&(E-=12)),e.dayGanIndexExact=f,e.dayZhiIndexExact=E}static _computeTime(e,i,s){const r=C.getTimeZhiIndex((i<10?"0":"")+i+":"+(s<10?"0":"")+s);e.timeZhiIndex=r,e.timeGanIndex=(e.dayGanIndexExact%5*2+r)%10}static _computeWeek(e,i){e.weekIndex=i.getWeek()}static _compute(e,i,s,r,c){const o={timeGanIndex:0,timeZhiIndex:0,dayGanIndex:0,dayZhiIndex:0,dayGanIndexExact:0,dayZhiIndexExact:0,dayGanIndexExact2:0,dayZhiIndexExact2:0,monthGanIndex:0,monthZhiIndex:0,monthGanIndexExact:0,monthZhiIndexExact:0,yearGanIndex:0,yearZhiIndex:0,yearGanIndexByLiChun:0,yearZhiIndexByLiChun:0,yearGanIndexExact:0,yearZhiIndexExact:0,weekIndex:0,jieQi:{},jieQiList:[]};return V0._computeJieQi(o,c),V0._computeYear(o,r,e),V0._computeMonth(o,r),V0._computeDay(o,r,i,s),V0._computeTime(o,i,s),V0._computeWeek(o,r),o}constructor(e,i,s,r,c,o,d,g){const f=V0._compute(e,r,c,d,g);this._year=e,this._month=i,this._day=s,this._hour=r,this._minute=c,this._second=o,this._timeGanIndex=f.timeGanIndex,this._timeZhiIndex=f.timeZhiIndex,this._dayGanIndex=f.dayGanIndex,this._dayZhiIndex=f.dayZhiIndex,this._dayGanIndexExact=f.dayGanIndexExact,this._dayZhiIndexExact=f.dayZhiIndexExact,this._dayGanIndexExact2=f.dayGanIndexExact2,this._dayZhiIndexExact2=f.dayZhiIndexExact2,this._monthGanIndex=f.monthGanIndex,this._monthZhiIndex=f.monthZhiIndex,this._monthGanIndexExact=f.monthGanIndexExact,this._monthZhiIndexExact=f.monthZhiIndexExact,this._yearGanIndex=f.yearGanIndex,this._yearZhiIndex=f.yearZhiIndex,this._yearGanIndexByLiChun=f.yearGanIndexByLiChun,this._yearZhiIndexByLiChun=f.yearZhiIndexByLiChun,this._yearGanIndexExact=f.yearGanIndexExact,this._yearZhiIndexExact=f.yearZhiIndexExact,this._weekIndex=f.weekIndex,this._jieQi=f.jieQi,this._jieQiList=f.jieQiList,this._solar=d,this._eightChar=new Jr(this),this._lang=a0.getLanguage()}getYear(){return this._year}getMonth(){return this._month}getDay(){return this._day}getHour(){return this._hour}getMinute(){return this._minute}getSecond(){return this._second}getTimeGanIndex(){return this._timeGanIndex}getTimeZhiIndex(){return this._timeZhiIndex}getDayGanIndex(){return this._dayGanIndex}getDayZhiIndex(){return this._dayZhiIndex}getMonthGanIndex(){return this._monthGanIndex}getMonthZhiIndex(){return this._monthZhiIndex}getYearGanIndex(){return this._yearGanIndex}getYearZhiIndex(){return this._yearZhiIndex}getYearGanIndexByLiChun(){return this._yearGanIndexByLiChun}getYearZhiIndexByLiChun(){return this._yearZhiIndexByLiChun}getDayGanIndexExact(){return this._dayGanIndexExact}getDayZhiIndexExact(){return this._dayZhiIndexExact}getDayGanIndexExact2(){return this._dayGanIndexExact2}getDayZhiIndexExact2(){return this._dayZhiIndexExact2}getMonthGanIndexExact(){return this._monthGanIndexExact}getMonthZhiIndexExact(){return this._monthZhiIndexExact}getYearGanIndexExact(){return this._yearGanIndexExact}getYearZhiIndexExact(){return this._yearZhiIndexExact}getGan(){return this.getYearGan()}getZhi(){return this.getYearZhi()}getYearGan(){return C.GAN[this._yearGanIndex+1]}getYearGanByLiChun(){return C.GAN[this._yearGanIndexByLiChun+1]}getYearGanExact(){return C.GAN[this._yearGanIndexExact+1]}getYearZhi(){return C.ZHI[this._yearZhiIndex+1]}getYearZhiByLiChun(){return C.ZHI[this._yearZhiIndexByLiChun+1]}getYearZhiExact(){return C.ZHI[this._yearZhiIndexExact+1]}getYearInGanZhi(){return this.getYearGan()+this.getYearZhi()}getYearInGanZhiByLiChun(){return this.getYearGanByLiChun()+this.getYearZhiByLiChun()}getYearInGanZhiExact(){return this.getYearGanExact()+this.getYearZhiExact()}getMonthGan(){return C.GAN[this._monthGanIndex+1]}getMonthGanExact(){return C.GAN[this._monthGanIndexExact+1]}getMonthZhi(){return C.ZHI[this._monthZhiIndex+1]}getMonthZhiExact(){return C.ZHI[this._monthZhiIndexExact+1]}getMonthInGanZhi(){return this.getMonthGan()+this.getMonthZhi()}getMonthInGanZhiExact(){return this.getMonthGanExact()+this.getMonthZhiExact()}getDayGan(){return C.GAN[this._dayGanIndex+1]}getDayGanExact(){return C.GAN[this._dayGanIndexExact+1]}getDayGanExact2(){return C.GAN[this._dayGanIndexExact2+1]}getDayZhi(){return C.ZHI[this._dayZhiIndex+1]}getDayZhiExact(){return C.ZHI[this._dayZhiIndexExact+1]}getDayZhiExact2(){return C.ZHI[this._dayZhiIndexExact2+1]}getDayInGanZhi(){return this.getDayGan()+this.getDayZhi()}getDayInGanZhiExact(){return this.getDayGanExact()+this.getDayZhiExact()}getDayInGanZhiExact2(){return this.getDayGanExact2()+this.getDayZhiExact2()}getTimeGan(){return C.GAN[this._timeGanIndex+1]}getTimeZhi(){return C.ZHI[this._timeZhiIndex+1]}getTimeInGanZhi(){return this.getTimeGan()+this.getTimeZhi()}getShengxiao(){return this.getYearShengXiao()}getYearShengXiao(){return C.SHENGXIAO[this._yearZhiIndex+1]}getYearShengXiaoByLiChun(){return C.SHENGXIAO[this._yearZhiIndexByLiChun+1]}getYearShengXiaoExact(){return C.SHENGXIAO[this._yearZhiIndexExact+1]}getMonthShengXiao(){return C.SHENGXIAO[this._monthZhiIndex+1]}getMonthShengXiaoExact(){return C.SHENGXIAO[this._monthZhiIndexExact+1]}getDayShengXiao(){return C.SHENGXIAO[this._dayZhiIndex+1]}getTimeShengXiao(){return C.SHENGXIAO[this._timeZhiIndex+1]}getYearInChinese(){const e=this._year+"";let i="";const s=48;for(let r=0,c=e.length;r<c;r++){const o=e.charCodeAt(r);i+=C.NUMBER[o-s]}return i}getMonthInChinese(){return(this._month<0?"闰":"")+C.MONTH[Math.abs(this._month)]}getDayInChinese(){return C.DAY[this._day]}getPengZuGan(){return C.PENGZU_GAN[this._dayGanIndex+1]}getPengZuZhi(){return C.PENGZU_ZHI[this._dayZhiIndex+1]}getPositionXi(){return this.getDayPositionXi()}getPositionXiDesc(){return this.getDayPositionXiDesc()}getPositionYangGui(){return this.getDayPositionYangGui()}getPositionYangGuiDesc(){return this.getDayPositionYangGuiDesc()}getPositionYinGui(){return this.getDayPositionYinGui()}getPositionYinGuiDesc(){return this.getDayPositionYinGuiDesc()}getPositionFu(){return this.getDayPositionFu()}getPositionFuDesc(){return this.getDayPositionFuDesc()}getPositionCai(){return this.getDayPositionCai()}getPositionCaiDesc(){return this.getDayPositionCaiDesc()}getDayPositionXi(){return C.POSITION_XI[this._dayGanIndex+1]}getDayPositionXiDesc(){const e=C.POSITION_DESC[this.getDayPositionXi()];return e||""}getDayPositionYangGui(){return C.POSITION_YANG_GUI[this._dayGanIndex+1]}getDayPositionYangGuiDesc(){const e=C.POSITION_DESC[this.getDayPositionYangGui()];return e||""}getDayPositionYinGui(){return C.POSITION_YIN_GUI[this._dayGanIndex+1]}getDayPositionYinGuiDesc(){const e=C.POSITION_DESC[this.getDayPositionYinGui()];return e||""}getDayPositionFu(e=2){return(e===1?C.POSITION_FU:C.POSITION_FU_2)[this._dayGanIndex+1]}getDayPositionFuDesc(e=2){const i=C.POSITION_DESC[this.getDayPositionFu(e)];return i||""}getDayPositionCai(){return C.POSITION_CAI[this._dayGanIndex+1]}getDayPositionCaiDesc(){const e=C.POSITION_DESC[this.getDayPositionCai()];return e||""}getTimePositionXi(){return C.POSITION_XI[this._timeGanIndex+1]}getTimePositionXiDesc(){const e=C.POSITION_DESC[this.getTimePositionXi()];return e||""}getTimePositionYangGui(){return C.POSITION_YANG_GUI[this._timeGanIndex+1]}getTimePositionYangGuiDesc(){const e=C.POSITION_DESC[this.getTimePositionYangGui()];return e||""}getTimePositionYinGui(){return C.POSITION_YIN_GUI[this._timeGanIndex+1]}getTimePositionYinGuiDesc(){const e=C.POSITION_DESC[this.getTimePositionYinGui()];return e||""}getTimePositionFu(e=2){return(e===1?C.POSITION_FU:C.POSITION_FU_2)[this._timeGanIndex+1]}getTimePositionFuDesc(e=2){const i=C.POSITION_DESC[this.getTimePositionFu(e)];return i||""}getTimePositionCai(){return C.POSITION_CAI[this._timeGanIndex+1]}getTimePositionCaiDesc(){const e=C.POSITION_DESC[this.getTimePositionCai()];return e||""}getYearPositionTaiSui(e=2){let i=this._yearZhiIndexByLiChun;switch(e){case 1:i=this._yearZhiIndex;break;case 3:i=this._yearZhiIndexExact;break}return C.POSITION_TAI_SUI_YEAR[i]}getYearPositionTaiSuiDesc(e=2){return C.POSITION_DESC[this.getYearPositionTaiSui(e)]}getMonthPositionTaiSui(e=2){let i=this._monthZhiIndex,s=this._monthGanIndex;e===3&&(i=this._monthZhiIndexExact,s=this._monthGanIndexExact);let r=i-C.BASE_MONTH_ZHI_INDEX;return r<0&&(r+=12),[a0.getMessage("bg.gen"),C.POSITION_GAN[s],a0.getMessage("bg.kun"),a0.getMessage("bg.xun")][r%4]}getMonthPositionTaiSuiDesc(e=2){return C.POSITION_DESC[this.getMonthPositionTaiSui(e)]}getDayPositionTaiSui(e=2){let i=this.getDayInGanZhiExact2(),s=this._yearZhiIndexByLiChun;switch(e){case 1:i=this.getDayInGanZhi(),s=this._yearZhiIndex;break;case 3:i=this.getDayInGanZhi(),s=this._yearZhiIndexExact;break}return[a0.getMessage("jz.jiaZi"),a0.getMessage("jz.yiChou"),a0.getMessage("jz.bingYin"),a0.getMessage("jz.dingMao"),a0.getMessage("jz.wuChen"),a0.getMessage("jz.jiSi")].join(",").indexOf(i)>-1?a0.getMessage("bg.zhen"):[a0.getMessage("jz.bingZi"),a0.getMessage("jz.dingChou"),a0.getMessage("jz.wuYin"),a0.getMessage("jz.jiMao"),a0.getMessage("jz.gengChen"),a0.getMessage("jz.xinSi")].join(",").indexOf(i)>-1?a0.getMessage("bg.li"):[a0.getMessage("jz.wuZi"),a0.getMessage("jz.jiChou"),a0.getMessage("jz.gengYin"),a0.getMessage("jz.xinMao"),a0.getMessage("jz.renChen"),a0.getMessage("jz.guiSi")].join(",").indexOf(i)>-1?a0.getMessage("ps.center"):[a0.getMessage("jz.gengZi"),a0.getMessage("jz.xinChou"),a0.getMessage("jz.renYin"),a0.getMessage("jz.guiMao"),a0.getMessage("jz.jiaChen"),a0.getMessage("jz.yiSi")].join(",").indexOf(i)>-1?a0.getMessage("bg.dui"):[a0.getMessage("jz.renZi"),a0.getMessage("jz.guiChou"),a0.getMessage("jz.jiaYin"),a0.getMessage("jz.yiMao"),a0.getMessage("jz.bingChen"),a0.getMessage("jz.dingSi")].join(",").indexOf(i)>-1?a0.getMessage("bg.kan"):C.POSITION_TAI_SUI_YEAR[s]}getDayPositionTaiSuiDesc(e=2){return C.POSITION_DESC[this.getDayPositionTaiSui(e)]}getChong(){return this.getDayChong()}getChongGan(){return this.getDayChongGan()}getChongGanTie(){return this.getDayChongGanTie()}getChongShengXiao(){return this.getDayChongShengXiao()}getChongDesc(){return this.getDayChongDesc()}getSha(){return this.getDaySha()}getDayChong(){return C.CHONG[this._dayZhiIndex]}getDayChongGan(){return C.CHONG_GAN[this._dayGanIndex]}getDayChongGanTie(){return C.CHONG_GAN_TIE[this._dayGanIndex]}getDayChongShengXiao(){const e=this.getChong();for(let i=0,s=C.ZHI.length;i<s;i++)if(C.ZHI[i]===e)return C.SHENGXIAO[i];return""}getDayChongDesc(){return"("+this.getDayChongGan()+this.getDayChong()+")"+this.getDayChongShengXiao()}getDaySha(){const e=C.SHA[this.getDayZhi()];return e||""}getTimeChong(){return C.CHONG[this._timeZhiIndex]}getTimeChongGan(){return C.CHONG_GAN[this._timeGanIndex]}getTimeChongGanTie(){return C.CHONG_GAN_TIE[this._timeGanIndex]}getTimeChongShengXiao(){const e=this.getTimeChong();for(let i=0,s=C.ZHI.length;i<s;i++)if(C.ZHI[i]===e)return C.SHENGXIAO[i];return""}getTimeChongDesc(){return"("+this.getTimeChongGan()+this.getTimeChong()+")"+this.getTimeChongShengXiao()}getTimeSha(){const e=C.SHA[this.getTimeZhi()];return e||""}getYearNaYin(){const e=C.NAYIN[this.getYearInGanZhi()];return e||""}getMonthNaYin(){const e=C.NAYIN[this.getMonthInGanZhi()];return e||""}getDayNaYin(){const e=C.NAYIN[this.getDayInGanZhi()];return e||""}getTimeNaYin(){const e=C.NAYIN[this.getTimeInGanZhi()];return e||""}getSeason(){return C.SEASON[Math.abs(this._month)]}static _convertJieQi(e){let i=e;return i==="DONG_ZHI"?i=a0.getMessage("jq.dongZhi"):i==="DA_HAN"?i=a0.getMessage("jq.daHan"):i==="XIAO_HAN"?i=a0.getMessage("jq.xiaoHan"):i==="LI_CHUN"?i=a0.getMessage("jq.liChun"):i==="DA_XUE"?i=a0.getMessage("jq.daXue"):i==="YU_SHUI"?i=a0.getMessage("jq.yuShui"):i==="JING_ZHE"&&(i=a0.getMessage("jq.jingZhe")),i}checkLang(){const e=a0.getLanguage();if(this._lang!=e){for(let i=0,s=C.JIE_QI_IN_USE.length;i<s;i++){const r=C.JIE_QI_IN_USE[i],c=this._jieQiList[i],o=this._jieQi[c];this._jieQiList[i]=r,this._jieQi[r]=o}this._lang=e}}getJie(){for(let e=0,i=C.JIE_QI_IN_USE.length;e<i;e+=2){const s=C.JIE_QI_IN_USE[e],r=this.getJieQiSolar(s);if(r&&r.getYear()===this._solar.getYear()&&r.getMonth()===this._solar.getMonth()&&r.getDay()===this._solar.getDay())return V0._convertJieQi(s)}return""}getQi(){for(let e=1,i=C.JIE_QI_IN_USE.length;e<i;e+=2){const s=C.JIE_QI_IN_USE[e],r=this.getJieQiSolar(s);if(r&&r.getYear()===this._solar.getYear()&&r.getMonth()===this._solar.getMonth()&&r.getDay()===this._solar.getDay())return V0._convertJieQi(s)}return""}getJieQi(){let e="";const i=Object.keys(this._jieQi);for(let s=0,r=i.length;s<r;s++){const c=i[s],o=this._jieQi[c];if(o.getYear()==this._solar.getYear()&&o.getMonth()==this._solar.getMonth()&&o.getDay()==this._solar.getDay()){e=c;break}}return V0._convertJieQi(e)}getWeek(){return this._weekIndex}getWeekInChinese(){return $0.WEEK[this.getWeek()]}getXiu(){const e=C.XIU[this.getDayZhi()+this.getWeek()];return e||""}getXiuLuck(){const e=C.XIU_LUCK[this.getXiu()];return e||""}getXiuSong(){const e=C.XIU_SONG[this.getXiu()];return e||""}getZheng(){const e=C.ZHENG[this.getXiu()];return e||""}getAnimal(){const e=C.ANIMAL[this.getXiu()];return e||""}getGong(){const e=C.GONG[this.getXiu()];return e||""}getShou(){const e=C.SHOU[this.getGong()];return e||""}getFestivals(){const e=[],i=C.FESTIVAL[this._month+"-"+this._day];return i&&e.push(i),Math.abs(this._month)==12&&this._day>=29&&this._year!=this.next(1).getYear()&&e.push(a0.getMessage("jr.chuXi")),e}getOtherFestivals(){const e=[],i=C.OTHER_FESTIVAL[this._month+"-"+this._day];i&&i.forEach(o=>{e.push(o)});let s=this.getJieQiSolar(a0.getMessage("jq.qingMing"));const r=this._solar.toYmd();r===s.next(-1).toYmd()&&e.push("寒食节"),s=this.getJieQiSolar(a0.getMessage("jq.liChun"));let c=4-s.getLunar().getDayGanIndex();return c<0&&(c+=10),r===s.next(c+40).toYmd()&&e.push("春社"),s=this.getJieQiSolar(a0.getMessage("jq.liQiu")),c=4-s.getLunar().getDayGanIndex(),c<0&&(c+=10),r===s.next(c+40).toYmd()&&e.push("秋社"),e}getBaZi(){const e=this.getEightChar(),i=[];return i.push(e.getYear()),i.push(e.getMonth()),i.push(e.getDay()),i.push(e.getTime()),i}getBaZiWuXing(){const e=this.getEightChar(),i=[];return i.push(e.getYearWuXing()),i.push(e.getMonthWuXing()),i.push(e.getDayWuXing()),i.push(e.getTimeWuXing()),i}getBaZiNaYin(){const e=this.getEightChar(),i=[];return i.push(e.getYearNaYin()),i.push(e.getMonthNaYin()),i.push(e.getDayNaYin()),i.push(e.getTimeNaYin()),i}getBaZiShiShenGan(){const e=this.getEightChar(),i=[];return i.push(e.getYearShiShenGan()),i.push(e.getMonthShiShenGan()),i.push(e.getDayShiShenGan()),i.push(e.getTimeShiShenGan()),i}getBaZiShiShenZhi(){const e=this.getEightChar(),i=[];return i.push(e.getYearShiShenZhi()[0]),i.push(e.getMonthShiShenZhi()[0]),i.push(e.getDayShiShenZhi()[0]),i.push(e.getTimeShiShenZhi()[0]),i}getBaZiShiShenYearZhi(){return this.getEightChar().getYearShiShenZhi()}getBaZiShiShenMonthZhi(){return this.getEightChar().getMonthShiShenZhi()}getBaZiShiShenDayZhi(){return this.getEightChar().getDayShiShenZhi()}getBaZiShiShenTimeZhi(){return this.getEightChar().getTimeShiShenZhi()}getZhiXing(){let e=this._dayZhiIndex-this._monthZhiIndex;return e<0&&(e+=12),C.ZHI_XING[e+1]}getDayTianShen(){const e=this.getMonthZhi(),i=C.ZHI_TIAN_SHEN_OFFSET[e];return i==null?"":C.TIAN_SHEN[(this._dayZhiIndex+i)%12+1]}getTimeTianShen(){const e=this.getDayZhiExact(),i=C.ZHI_TIAN_SHEN_OFFSET[e];return i==null?"":C.TIAN_SHEN[(this._timeZhiIndex+i)%12+1]}getDayTianShenType(){const e=C.TIAN_SHEN_TYPE[this.getDayTianShen()];return e||""}getTimeTianShenType(){const e=C.TIAN_SHEN_TYPE[this.getTimeTianShen()];return e||""}getDayTianShenLuck(){const e=C.TIAN_SHEN_TYPE_LUCK[this.getDayTianShenType()];return e||""}getTimeTianShenLuck(){const e=C.TIAN_SHEN_TYPE_LUCK[this.getTimeTianShenType()];return e||""}getDayPositionTai(){return C.POSITION_TAI_DAY[C.getJiaZiIndex(this.getDayInGanZhi())]}getMonthPositionTai(){const e=this._month;return e<0?"":C.POSITION_TAI_MONTH[e-1]}getDayYi(e=1){return C.getDayYi(e==2?this.getMonthInGanZhiExact():this.getMonthInGanZhi(),this.getDayInGanZhi())}getDayJi(e=1){return C.getDayJi(e==2?this.getMonthInGanZhiExact():this.getMonthInGanZhi(),this.getDayInGanZhi())}getDayJiShen(){return C.getDayJiShen(this.getMonthZhiIndex(),this.getDayInGanZhi())}getDayXiongSha(){return C.getDayXiongSha(this.getMonthZhiIndex(),this.getDayInGanZhi())}getTimeYi(){return C.getTimeYi(this.getDayInGanZhiExact(),this.getTimeInGanZhi())}getTimeJi(){return C.getTimeJi(this.getDayInGanZhiExact(),this.getTimeInGanZhi())}getYueXiang(){return C.YUE_XIANG[this._day]}_getYearNineStar(e){const i=C.getJiaZiIndex(e)+1,s=C.getJiaZiIndex(this.getYearInGanZhi())+1;let r=i-s;r>1?r-=60:r<-1&&(r+=60);let o=(62+Math.floor((this._year+r+2696)/60)%3*3-i)%9;return o===0&&(o=9),$1.fromIndex(o-1)}getYearNineStar(e=2){switch(e){case 1:return this._getYearNineStar(this.getYearInGanZhi());case 3:return this._getYearNineStar(this.getYearInGanZhiExact())}return this._getYearNineStar(this.getYearInGanZhiByLiChun())}getMonthNineStar(e=2){let i=this._yearZhiIndexByLiChun,s=this._monthZhiIndex;switch(e){case 1:i=this._yearZhiIndex,s=this._monthZhiIndex;break;case 3:i=this._yearZhiIndexExact,s=this._monthZhiIndexExact;break}let r=27-i%3*3;return s<C.BASE_MONTH_ZHI_INDEX&&(r-=3),$1.fromIndex((r-s)%9)}getJieQiSolar(e){return this.checkLang(),this._jieQi[e]}getDayNineStar(){const e=this._solar.toYmd(),i=this.getJieQiSolar(a0.getMessage("jq.dongZhi")),s=this.getJieQiSolar("DONG_ZHI"),r=this.getJieQiSolar(a0.getMessage("jq.xiaZhi")),c=C.getJiaZiIndex(i.getLunar().getDayInGanZhi()),o=C.getJiaZiIndex(s.getLunar().getDayInGanZhi()),d=C.getJiaZiIndex(r.getLunar().getDayInGanZhi()),g=i.next(c>29?60-c:-c),f=s.next(o>29?60-o:-o),E=r.next(d>29?60-d:-d),F=g.toYmd(),x=f.toYmd(),A=E.toYmd();let y=0;return e>=F&&e<A?y=this._solar.subtract(g)%9:e>=A&&e<x?y=8-this._solar.subtract(E)%9:e>=x?y=this._solar.subtract(f)%9:e<F&&(y=(8+g.subtract(this._solar))%9),$1.fromIndex(y)}getTimeNineStar(){const e=this._solar.toYmd();let i=!1;(e>=this.getJieQiSolar(a0.getMessage("jq.dongZhi")).toYmd()&&e<this.getJieQiSolar(a0.getMessage("jq.xiaZhi")).toYmd()||e>=this.getJieQiSolar("DONG_ZHI").toYmd())&&(i=!0);const r=(i?[0,3,6]:[8,5,2])[this.getDayZhiIndex()%3],c=i?r+this._timeZhiIndex:r+9-this._timeZhiIndex;return $1.fromIndex(c%9)}getSolar(){return this._solar}getJieQiTable(){return this.checkLang(),this._jieQi}getJieQiList(){return this._jieQiList}getNextJie(e=!1){const i=[];for(let s=0,r=C.JIE_QI_IN_USE.length/2;s<r;s++)i.push(C.JIE_QI_IN_USE[s*2]);return this.getNearJieQi(!0,i,e)}getPrevJie(e=!1){const i=[];for(let s=0,r=C.JIE_QI_IN_USE.length/2;s<r;s++)i.push(C.JIE_QI_IN_USE[s*2]);return this.getNearJieQi(!1,i,e)}getNextQi(e=!1){const i=[];for(let s=0,r=C.JIE_QI_IN_USE.length/2;s<r;s++)i.push(C.JIE_QI_IN_USE[s*2+1]);return this.getNearJieQi(!0,i,e)}getPrevQi(e=!1){const i=[];for(let s=0,r=C.JIE_QI_IN_USE.length/2;s<r;s++)i.push(C.JIE_QI_IN_USE[s*2+1]);return this.getNearJieQi(!1,i,e)}getNextJieQi(e=!1){return this.getNearJieQi(!0,[],e)}getPrevJieQi(e=!1){return this.getNearJieQi(!1,[],e)}getNearJieQi(e,i,s){let r="",c=null;const o={};let d=!1;if(i)for(let E=0,F=i.length;E<F;E++)o[i[E]]=!0,d=!0;const g=s?this._solar.toYmd():this._solar.toYmdHms(),f=Object.keys(this._jieQi);for(let E=0,F=f.length;E<F;E++){const x=f[E],A=this._jieQi[x],y=V0._convertJieQi(x);if(d&&!o[y])continue;const B=s?A.toYmd():A.toYmdHms();if(e){if(B<=g)continue;if(c==null)r=y,c=A;else{const _=s?c.toYmd():c.toYmdHms();B<_&&(r=y,c=A)}}else{if(B>g)continue;if(c==null)r=y,c=A;else{const _=s?c.toYmd():c.toYmdHms();B>_&&(r=y,c=A)}}}return new r3(r,c)}getCurrentJieQi(){const e=Object.keys(this._jieQi);for(let i=0,s=e.length;i<s;i++){const r=e[i],c=this._jieQi[r];if(c.getYear()==this._solar.getYear()&&c.getMonth()==this._solar.getMonth()&&c.getDay()==this._solar.getDay())return new r3(V0._convertJieQi(r),c)}return null}getCurrentJie(){for(let e=0,i=C.JIE_QI_IN_USE.length;e<i;e+=2){const s=C.JIE_QI_IN_USE[e],r=this.getJieQiSolar(s);if(r&&r.getYear()===this._solar.getYear()&&r.getMonth()===this._solar.getMonth()&&r.getDay()===this._solar.getDay())return new r3(V0._convertJieQi(s),r)}return null}getCurrentQi(){for(let e=1,i=C.JIE_QI_IN_USE.length;e<i;e+=2){const s=C.JIE_QI_IN_USE[e],r=this.getJieQiSolar(s);if(r&&r.getYear()===this._solar.getYear()&&r.getMonth()===this._solar.getMonth()&&r.getDay()===this._solar.getDay())return new r3(V0._convertJieQi(s),r)}return null}getEightChar(){return this._eightChar}next(e){return this._solar.next(e).getLunar()}getYearXun(){return C.getXun(this.getYearInGanZhi())}getMonthXun(){return C.getXun(this.getMonthInGanZhi())}getDayXun(){return C.getXun(this.getDayInGanZhi())}getTimeXun(){return C.getXun(this.getTimeInGanZhi())}getYearXunByLiChun(){return C.getXun(this.getYearInGanZhiByLiChun())}getYearXunExact(){return C.getXun(this.getYearInGanZhiExact())}getMonthXunExact(){return C.getXun(this.getMonthInGanZhiExact())}getDayXunExact(){return C.getXun(this.getDayInGanZhiExact())}getDayXunExact2(){return C.getXun(this.getDayInGanZhiExact2())}getYearXunKong(){return C.getXunKong(this.getYearInGanZhi())}getMonthXunKong(){return C.getXunKong(this.getMonthInGanZhi())}getDayXunKong(){return C.getXunKong(this.getDayInGanZhi())}getTimeXunKong(){return C.getXunKong(this.getTimeInGanZhi())}getYearXunKongByLiChun(){return C.getXunKong(this.getYearInGanZhiByLiChun())}getYearXunKongExact(){return C.getXunKong(this.getYearInGanZhiExact())}getMonthXunKongExact(){return C.getXunKong(this.getMonthInGanZhiExact())}getDayXunKongExact(){return C.getXunKong(this.getDayInGanZhiExact())}getDayXunKongExact2(){return C.getXunKong(this.getDayInGanZhiExact2())}toString(){return this.getYearInChinese()+"年"+this.getMonthInChinese()+"月"+this.getDayInChinese()}toFullString(){let e=this.toString();e+=" "+this.getYearInGanZhi()+"("+this.getYearShengXiao()+")年",e+=" "+this.getMonthInGanZhi()+"("+this.getMonthShengXiao()+")月",e+=" "+this.getDayInGanZhi()+"("+this.getDayShengXiao()+")日",e+=" "+this.getTimeZhi()+"("+this.getTimeShengXiao()+")时",e+=" 纳音["+this.getYearNaYin()+" "+this.getMonthNaYin()+" "+this.getDayNaYin()+" "+this.getTimeNaYin()+"]",e+=" 星期"+this.getWeekInChinese(),this.getFestivals().forEach(s=>{e+=" ("+s+")"}),this.getOtherFestivals().forEach(s=>{e+=" ("+s+")"});const i=this.getJieQi();return i.length>0&&(e+=" ["+i+"]"),e+=" "+this.getGong()+"方"+this.getShou(),e+=" 星宿["+this.getXiu()+this.getZheng()+this.getAnimal()+"]("+this.getXiuLuck()+")",e+=" 彭祖百忌["+this.getPengZuGan()+" "+this.getPengZuZhi()+"]",e+=" 喜神方位["+this.getDayPositionXi()+"]("+this.getDayPositionXiDesc()+")",e+=" 阳贵神方位["+this.getDayPositionYangGui()+"]("+this.getDayPositionYangGuiDesc()+")",e+=" 阴贵神方位["+this.getDayPositionYinGui()+"]("+this.getDayPositionYinGuiDesc()+")",e+=" 福神方位["+this.getDayPositionFu()+"]("+this.getDayPositionFuDesc()+")",e+=" 财神方位["+this.getDayPositionCai()+"]("+this.getDayPositionCaiDesc()+")",e+=" 冲["+this.getDayChongDesc()+"]",e+=" 煞["+this.getDaySha()+"]",e}getShuJiu(){const e=k0.fromYmd(this._solar.getYear(),this._solar.getMonth(),this._solar.getDay());let i=this.getJieQiSolar("DONG_ZHI"),s=k0.fromYmd(i.getYear(),i.getMonth(),i.getDay());e.isBefore(s)&&(i=this.getJieQiSolar(a0.getMessage("jq.dongZhi")),s=k0.fromYmd(i.getYear(),i.getMonth(),i.getDay()));const r=k0.fromYmd(i.getYear(),i.getMonth(),i.getDay()).next(81);if(e.isBefore(s)||!e.isBefore(r))return null;const c=e.subtract(s);return new kd(C.NUMBER[Math.floor(c/9)+1]+"九",c%9+1)}getFu(){const e=k0.fromYmd(this._solar.getYear(),this._solar.getMonth(),this._solar.getDay()),i=this.getJieQiSolar(a0.getMessage("jq.xiaZhi")),s=this.getJieQiSolar(a0.getMessage("jq.liQiu"));let r=k0.fromYmd(i.getYear(),i.getMonth(),i.getDay()),c=6-i.getLunar().getDayGanIndex();if(c<0&&(c+=10),c+=20,r=r.next(c),e.isBefore(r))return null;let o=e.subtract(r);if(o<10)return new a3("初伏",o+1);if(r=r.next(10),o=e.subtract(r),o<10)return new a3("中伏",o+1);r=r.next(10);const d=k0.fromYmd(s.getYear(),s.getMonth(),s.getDay());if(o=e.subtract(r),d.isAfter(r)){if(o<10)return new a3("中伏",o+11);r=r.next(10),o=e.subtract(r)}return o<10?new a3("末伏",o+1):null}getLiuYao(){return C.LIU_YAO[(Math.abs(this._month)+this._day-2)%6]}getWuHou(){const e=this.getPrevJieQi(!0),i=C.find(e.getName(),C.JIE_QI);let s=Math.floor(this._solar.subtract(e.getSolar())/5);return s>2&&(s=2),C.WU_HOU[(i.index*3+s)%C.WU_HOU.length]}getHou(){const e=this.getPrevJieQi(!0),i=this._solar.subtract(e.getSolar()),s=C.HOU.length-1;let r=Math.floor(i/5);return r>s&&(r=s),e.getName()+" "+C.HOU[r]}getDayLu(){const e=C.LU[this.getDayGan()],i=C.LU[this.getDayZhi()];let s=e+"命互禄";return i&&(s+=" "+i+"命进禄"),s}getTime(){return vi.fromYmdHms(this._year,this._month,this._day,this._hour,this._minute,this._second)}getTimes(){const e=[];e.push(vi.fromYmdHms(this._year,this._month,this._day,0,0,0));for(let i=0;i<12;i++)e.push(vi.fromYmdHms(this._year,this._month,this._day,(i+1)*2-1,0,0));return e}getFoto(){return Ul.fromLunar(this)}getTao(){return ql.fromLunar(this)}}class _i{static fromYm(e,i){return new _i(e,i)}static fromDate(e){return _i.fromYm(e.getFullYear(),e.getMonth()+1)}constructor(e,i){this._year=e,this._month=i}getYear(){return this._year}getMonth(){return this._month}next(e){const i=e<0?-1:1;let s=Math.abs(e),r=this._year+Math.floor(s/12)*i;return s=this._month+s%12*i,s>12?(s-=12,r++):s<1&&(s+=12,r--),_i.fromYm(r,s)}getDays(){const e=[],i=k0.fromYmd(this._year,this._month,1);e.push(i);const s=$0.getDaysOfMonth(this._year,this._month);for(let r=1;r<s;r++)e.push(i.next(r));return e}getWeeks(e){const i=[];let s=fe.fromYmd(this._year,this._month,1,e);for(;;){i.push(s),s=s.next(1,!1);const r=s.getFirstDay();if(r.getYear()>this._year||r.getMonth()>this._month)break}return i}toString(){return`${this.getYear()}-${this.getMonth()}`}toFullString(){return`${this.getYear()}年${this.getMonth()}月`}}const He=class{static fromYmd(t,e,i){return He.fromYmdHms(t,e,i,0,0,0)}static fromYmdHms(t,e,i,s,r,c){return new He(t,e,i,s,r,c)}static fromDate(t){return He.fromYmdHms(t.getFullYear(),t.getMonth()+1,t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds())}static fromJulianDay(t){let e=Math.floor(t+.5),i=t+.5-e;if(e>=2299161){const f=Math.floor((e-186721625e-2)/36524.25);e+=1+f-Math.floor(f/4)}e+=1524;let s=Math.floor((e-122.1)/365.25);e-=Math.floor(365.25*s);let r=Math.floor(e/30.601);e-=Math.floor(30.601*r);let c=e;r>13?(r-=13,s-=4715):(r-=1,s-=4716),i*=24;let o=Math.floor(i);i-=o,i*=60;let d=Math.floor(i);i-=d,i*=60;let g=Math.round(i);return g>59&&(g-=60,d++),d>59&&(d-=60,o++),o>23&&(o-=24,c+=1),He.fromYmdHms(s,r,c,o,d,g)}static fromBaZi(t,e,i,s,r=2,c=1900){r=r==1?1:2;const o=[];let d=C.index(e.substring(1),C.ZHI,-1)-2;if(d<0&&(d+=12),((C.index(t.substring(0,1),C.GAN,-1)+1)*2+d)%10!==C.index(e.substring(0,1),C.GAN,-1))return o;let g=C.getJiaZiIndex(t)-57;g<0&&(g+=60),g++,d*=2;const f=C.index(s.substring(1),C.ZHI,-1)*2;let E=[f];f==0&&r==2&&(E=[0,23]);const F=c-1,x=new Date().getFullYear();for(;g<=x;){if(g>=F){const A=V0.fromYmd(g,1,1),y=A.getJieQiList();let _=A.getJieQiTable()[y[4+d]];if(_.getYear()>=c){let S=C.getJiaZiIndex(i)-C.getJiaZiIndex(_.getLunar().getDayInGanZhiExact2());S<0&&(S+=60),S>0&&(_=_.next(S)),E.forEach(M=>{let Y=0,z=0;S==0&&M===_.getHour()&&(Y=_.getMinute(),z=_.getSecond());let T=He.fromYmdHms(_.getYear(),_.getMonth(),_.getDay(),M,Y,z);S===30&&(T=T.nextHour(-1));const W=T.getLunar(),X=r===2?W.getDayInGanZhiExact2():W.getDayInGanZhiExact();W.getYearInGanZhiExact()===t&&W.getMonthInGanZhiExact()===e&&X===i&&W.getTimeInGanZhi()===s&&o.push(T)})}}g+=60}return o}constructor(t,e,i,s,r,c){if(t===1582&&e===10&&i>4&&i<15)throw new Error(`wrong solar year ${t} month ${e} day ${i}`);if(e<1||e>12)throw new Error(`wrong month ${e}`);if(i<1||i>31)throw new Error(`wrong day ${i}`);if(s<0||s>23)throw new Error(`wrong hour ${s}`);if(r<0||r>59)throw new Error(`wrong minute ${r}`);if(c<0||c>59)throw new Error(`wrong second ${c}`);this._year=t,this._month=e,this._day=i,this._hour=s,this._minute=r,this._second=c}getYear(){return this._year}getMonth(){return this._month}getDay(){return this._day}getHour(){return this._hour}getMinute(){return this._minute}getSecond(){return this._second}getWeek(){return(Math.floor(this.getJulianDay()+.5)+7000001)%7}getWeekInChinese(){return $0.WEEK[this.getWeek()]}getSolarWeek(t){return fe.fromYmd(this._year,this._month,this._day,t)}isLeapYear(){return $0.isLeapYear(this._year)}getFestivals(){const t=[];let e=$0.FESTIVAL[this._month+"-"+this._day];e&&t.push(e);const i=Math.ceil(this._day/7),s=this.getWeek();return e=$0.WEEK_FESTIVAL[this._month+"-"+i+"-"+s],e&&t.push(e),this._day+7>$0.getDaysOfMonth(this._year,this._month)&&(e=$0.WEEK_FESTIVAL[this._month+"-0-"+s],e&&t.push(e)),t}getOtherFestivals(){const t=[],e=$0.OTHER_FESTIVAL[this._month+"-"+this._day];return e&&e.forEach(i=>{t.push(i)}),t}getXingzuo(){return this.getXingZuo()}getXingZuo(){let t=11;const e=this._month*100+this._day;return e>=321&&e<=419?t=0:e>=420&&e<=520?t=1:e>=521&&e<=621?t=2:e>=622&&e<=722?t=3:e>=723&&e<=822?t=4:e>=823&&e<=922?t=5:e>=923&&e<=1023?t=6:e>=1024&&e<=1122?t=7:e>=1123&&e<=1221?t=8:e>=1222||e<=119?t=9:e<=218&&(t=10),$0.XINGZUO[t]}getSalaryRate(){if(this._month===1&&this._day===1||this._month===5&&this._day===1||this._month===10&&this._day>=1&&this._day<=3)return 3;const t=this.getLunar();if(t.getMonth()===1&&t.getDay()>=1&&t.getDay()<=3||t.getMonth()===5&&t.getDay()===5||t.getMonth()===8&&t.getDay()===15||t.getJieQi()==="清明")return 3;const e=_t.getHoliday(this._year,this._month,this._day);if(e){if(!e.isWork())return 2}else{const i=this.getWeek();if(i===6||i===0)return 2}return 1}toYmd(){let t=this._year+"";for(;t.length<4;)t="0"+t;return[t,(this._month<10?"0":"")+this._month,(this._day<10?"0":"")+this._day].join("-")}toYmdHms(){return this.toYmd()+" "+[(this._hour<10?"0":"")+this._hour,(this._minute<10?"0":"")+this._minute,(this._second<10?"0":"")+this._second].join(":")}toString(){return this.toYmd()}toFullString(){let t=this.toYmdHms();return this.isLeapYear()&&(t+=" 闰年"),t+=" 星期"+this.getWeekInChinese(),this.getFestivals().forEach(i=>{t+=" ("+i+")"}),t+=" "+this.getXingZuo()+"座",t}nextYear(t){const e=this._year+t,i=this._month;let s=this._day;return e===1582&&i===10?s>4&&s<15&&(s+=10):i===2&&s>28&&($0.isLeapYear(e)||(s=28)),He.fromYmdHms(e,i,s,this._hour,this._minute,this._second)}nextMonth(t){const e=_i.fromYm(this._year,this._month).next(t),i=e.getYear(),s=e.getMonth();let r=this._day;if(i===1582&&s===10)r>4&&r<15&&(r+=10);else{const c=$0.getDaysOfMonth(i,s);r>c&&(r=c)}return He.fromYmdHms(i,s,r,this._hour,this._minute,this._second)}nextDay(t){let e=this._year,i=this._month,s=this._day;if(e===1582&&i===10&&s>4&&(s-=10),t>0){s+=t;let r=$0.getDaysOfMonth(e,i);for(;s>r;)s-=r,i++,i>12&&(i=1,e++),r=$0.getDaysOfMonth(e,i)}else if(t<0){for(;s+t<=0;)i--,i<1&&(i=12,e--),s+=$0.getDaysOfMonth(e,i);s+=t}return e===1582&&i===10&&s>4&&(s+=10),He.fromYmdHms(e,i,s,this._hour,this._minute,this._second)}next(t,e=!1){if(e){let i=He.fromYmdHms(this._year,this._month,this._day,this._hour,this._minute,this._second);if(t!==0){let s=Math.abs(t);const r=t<1?-1:1;for(;s>0;){i=i.next(r);let c=!0;const o=_t.getHoliday(i.getYear(),i.getMonth(),i.getDay());if(o)c=o.isWork();else{const d=i.getWeek();(d===0||d===6)&&(c=!1)}c&&(s-=1)}}return i}else return this.nextDay(t)}nextHour(t){const e=this._hour+t,i=e<0?-1:1;let s=Math.abs(e),r=Math.floor(s/24)*i;s=s%24*i,s<0&&(s+=24,r--);const c=this.next(r);return He.fromYmdHms(c.getYear(),c.getMonth(),c.getDay(),s,c.getMinute(),c.getSecond())}getLunar(){return V0.fromSolar(this)}getJulianDay(){let t=this._year,e=this._month;const i=this._day+((this._second/60+this._minute)/60+this._hour)/24;let s=0,r=!1;return t*372+e*31+Math.floor(i)>=588829&&(r=!0),e<=2&&(e+=12,t--),r&&(s=Math.floor(t/100),s=2-s+Math.floor(s/4)),Math.floor(365.25*(t+4716))+Math.floor(30.6001*(e+1))+i+s-1524.5}isBefore(t){return this._year>t.getYear()?!1:this._year<t.getYear()?!0:this._month>t.getMonth()?!1:this._month<t.getMonth()?!0:this._day>t.getDay()?!1:this._day<t.getDay()?!0:this._hour>t.getHour()?!1:this._hour<t.getHour()?!0:this._minute>t.getMinute()?!1:this._minute<t.getMinute()?!0:this._second<t.getSecond()}isAfter(t){return this._year>t.getYear()?!0:this._year<t.getYear()?!1:this._month>t.getMonth()?!0:this._month<t.getMonth()?!1:this._day>t.getDay()?!0:this._day<t.getDay()?!1:this._hour>t.getHour()?!0:this._hour<t.getHour()?!1:this._minute>t.getMinute()?!0:this._minute<t.getMinute()?!1:this._second>t.getSecond()}subtract(t){return $0.getDaysBetween(t.getYear(),t.getMonth(),t.getDay(),this._year,this._month,this._day)}subtractMinute(t){let e=this.subtract(t);const i=this._hour*60+this._minute,s=t.getHour()*60+t.getMinute();let r=i-s;return r<0&&(r+=1440,e--),r+=e*1440,r}};let k0=He;k0.J2000=2451545;a0.init();const Md=["休","死","伤","杜","中","开","惊","生","景"],Td=["天蓬","天芮","天冲","天辅","天禽","天心","天柱","天任","天英"],bd=[{name:"冬至",yin:!1,ju:[1,2,3]},{name:"小寒",yin:!1,ju:[2,3,4]},{name:"大寒",yin:!1,ju:[3,4,5]},{name:"立春",yin:!1,ju:[8,9,1]},{name:"雨水",yin:!1,ju:[9,1,2]},{name:"惊蛰",yin:!1,ju:[1,2,3]},{name:"春分",yin:!0,ju:[3,2,1]},{name:"清明",yin:!0,ju:[4,3,2]},{name:"谷雨",yin:!0,ju:[5,4,3]},{name:"立夏",yin:!0,ju:[4,3,2]},{name:"小满",yin:!0,ju:[5,4,3]},{name:"芒种",yin:!0,ju:[6,5,4]},{name:"夏至",yin:!0,ju:[9,8,7]},{name:"小暑",yin:!0,ju:[8,7,6]},{name:"大暑",yin:!0,ju:[7,6,5]},{name:"立秋",yin:!0,ju:[2,1,9]},{name:"处暑",yin:!0,ju:[1,9,8]},{name:"白露",yin:!0,ju:[9,8,7]},{name:"秋分",yin:!0,ju:[7,8,9]},{name:"寒露",yin:!0,ju:[6,7,8]},{name:"霜降",yin:!0,ju:[5,6,7]},{name:"立冬",yin:!0,ju:[6,7,8]},{name:"小雪",yin:!0,ju:[5,6,7]},{name:"大雪",yin:!0,ju:[4,5,6]}],Ci=[1,8,3,4,9,2,7,6];function Od(t,e,i){let s=t,r=e;r<=2&&(s--,r+=12);const c=Math.floor(s/100);return Math.floor(365.25*(s+4716))+Math.floor(30.6001*(r+1))+i+2-c+Math.floor(c/4)-1524.5}function H3(t,e,i){return Math.floor(Od(t,e,i)-2451545)}function _3(t){const i=k0.fromYmdHms(t,6,1,12,0,0).getLunar().getJieQiTable(),s=[];for(const r of Object.keys(i)){const c=i[r];s.push({name:r,time:new Date(c.getYear(),c.getMonth()-1,c.getDay(),c.getHour(),c.getMinute(),c.getSecond())})}return s}function Xl(t,e,i){const s=new Date(t,e-1,i,12,0,0).getTime();let r=null;for(const c of[t-1,t,t+1])for(const o of _3(c)){const d=o.time.getTime();d<=s&&(!r||d>r.time)&&(r={name:o.name,time:d})}return r?r.name:"大雪"}const E7={小寒:11,立春:0,惊蛰:1,清明:2,立夏:3,芒种:4,小暑:5,立秋:6,白露:7,寒露:8,立冬:9,大雪:10};function Jl(t,e,i,s,r=0){const c=new Date(t,e-1,i,s,r).getTime();let o=null;for(const d of[t-1,t,t+1])for(const g of _3(d)){if(E7[g.name]===void 0)continue;const f=g.time.getTime();f<=c&&(!o||f>o.time)&&(o={name:g.name,time:f})}return o?E7[o.name]:0}function Pd(t,e,i){const s=k0.fromYmdHms(t,e,i,12,0,0),r=s.getLunar(),c=r.getEightChar();return{lunarText:r.toString(),ganzhiYear:c.getYear(),ganzhiMonth:c.getMonth(),ganzhiDay:c.getDay(),shengxiao:r.getYearShengXiao(),xingZuo:s.getXingZuo(),jieQi:r.getJieQi()||null,yi:r.getDayYi(),ji:r.getDayJi(),pengZu:r.getPengZuGan()+" "+r.getPengZuZhi(),chong:r.getDayChongDesc(),sha:r.getDaySha()}}/**
|
|
52
|
+
@preserve
|
|
53
|
+
|
|
54
|
+
Astronomy library for JavaScript (browser and Node.js).
|
|
55
|
+
https://github.com/cosinekitty/astronomy
|
|
56
|
+
|
|
57
|
+
MIT License
|
|
58
|
+
|
|
59
|
+
Copyright (c) 2019-2023 Don Cross <cosinekitty@gmail.com>
|
|
60
|
+
|
|
61
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
62
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
63
|
+
in the Software without restriction, including without limitation the rights
|
|
64
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
65
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
66
|
+
furnished to do so, subject to the following conditions:
|
|
67
|
+
|
|
68
|
+
The above copyright notice and this permission notice shall be included in all
|
|
69
|
+
copies or substantial portions of the Software.
|
|
70
|
+
|
|
71
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
72
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
73
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
74
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
75
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
76
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
77
|
+
SOFTWARE.
|
|
78
|
+
*//**
|
|
79
|
+
* @fileoverview Astronomy calculation library for browser scripting and Node.js.
|
|
80
|
+
* @author Don Cross <cosinekitty@gmail.com>
|
|
81
|
+
* @license MIT
|
|
82
|
+
*/const Z3=173.1446326846693,n1=14959787069098932e-8,Wl=63241.07708807546,l0=.017453292519943295,lr=.26179938779914946,d1=57.29577951308232,Wr=3.819718634205488,Yd=71492,Ld=66854,Rd=69911,Gd=1821.6,Hd=1560.8,Zd=2631.2,Ud=2410.3,$l=365.24217,F7=new Date("2000-01-01T12:00:00Z"),Ze=2*Math.PI,$t=3600*(180/Math.PI),dn=484813681109536e-20,Ql=10800*60,qd=2*Ql,p7=7292115e-11,Xd=Ql/Math.PI,Jd=-.17-5*Math.log10(Xd),S3=29.530588,U3=24*3600,Wd=U3*1e3,Kl=.9972695717592592,ji=695700,Vl=ji/n1,it=.996647180302104,gn=it*it,St=6378.1366,$d=St/n1,Qd=St*it,eo=6371,Kd=88,Vd=eo+Kd,eg=1738.1,tg=eg/n1,we=1737.4,to=1736,ng=to/n1,ig=34/60,$r=81.30056,Hi=.0002959122082855911,or=4912547451450812e-26,cr=7243452486162703e-25,Ii=8887692390113509e-25,hr=9549535105779258e-26,Cn=2825345909524226e-22,xn=8459715185680659e-23,yn=1292024916781969e-23,Dn=1524358900784276e-23,ug=218869976542597e-26,w3=Ii/$r;function dr(t){switch(t){case R.Sun:return Hi;case R.Mercury:return or;case R.Venus:return cr;case R.Earth:return Ii;case R.Moon:return w3;case R.EMB:return Ii+w3;case R.Mars:return hr;case R.Jupiter:return Cn;case R.Saturn:return xn;case R.Uranus:return yn;case R.Neptune:return Dn;case R.Pluto:return ug;default:throw`Do not know mass product for body: ${t}`}}function N3(t){if(t!==!0&&t!==!1)throw console.trace(),`Value is not boolean: ${t}`;return t}function P0(t){if(!Number.isFinite(t))throw console.trace(),`Value is not a finite number: ${t}`;return t}function sn(t){return t-Math.floor(t)}function q3(t,e){const i=t.x*t.x+t.y*t.y+t.z*t.z;if(Math.abs(i)<1e-8)throw"AngleBetween: first vector is too short.";const s=e.x*e.x+e.y*e.y+e.z*e.z;if(Math.abs(s)<1e-8)throw"AngleBetween: second vector is too short.";const r=(t.x*e.x+t.y*e.y+t.z*e.z)/Math.sqrt(i*s);return r<=-1?180:r>=1?0:d1*Math.acos(r)}var R;(function(t){t.Sun="Sun",t.Moon="Moon",t.Mercury="Mercury",t.Venus="Venus",t.Earth="Earth",t.Mars="Mars",t.Jupiter="Jupiter",t.Saturn="Saturn",t.Uranus="Uranus",t.Neptune="Neptune",t.Pluto="Pluto",t.SSB="SSB",t.EMB="EMB",t.Star1="Star1",t.Star2="Star2",t.Star3="Star3",t.Star4="Star4",t.Star5="Star5",t.Star6="Star6",t.Star7="Star7",t.Star8="Star8"})(R||(R={}));const sg=[R.Star1,R.Star2,R.Star3,R.Star4,R.Star5,R.Star6,R.Star7,R.Star8],rg=[{ra:0,dec:0,dist:0},{ra:0,dec:0,dist:0},{ra:0,dec:0,dist:0},{ra:0,dec:0,dist:0},{ra:0,dec:0,dist:0},{ra:0,dec:0,dist:0},{ra:0,dec:0,dist:0},{ra:0,dec:0,dist:0}];function no(t){const e=sg.indexOf(t);return e>=0?rg[e]:null}function X3(t){const e=no(t);return e&&e.dist>0?e:null}function ag(t,e,i,s){const r=no(t);if(!r)throw`Invalid star body: ${t}`;if(P0(e),P0(i),P0(s),e<0||e>=24)throw`Invalid right ascension for star: ${e}`;if(i<-90||i>90)throw`Invalid declination for star: ${i}`;if(s<1)throw`Invalid star distance: ${s}`;r.ra=e,r.dec=i,r.dist=s*Wl}var s1;(function(t){t[t.From2000=0]="From2000",t[t.Into2000=1]="Into2000"})(s1||(s1={}));const at={Mercury:{OrbitalPeriod:87.969},Venus:{OrbitalPeriod:224.701},Earth:{OrbitalPeriod:365.256},Mars:{OrbitalPeriod:686.98},Jupiter:{OrbitalPeriod:4332.589},Saturn:{OrbitalPeriod:10759.22},Uranus:{OrbitalPeriod:30685.4},Neptune:{OrbitalPeriod:60189},Pluto:{OrbitalPeriod:90560}};function lg(t){if(t in at)return at[t].OrbitalPeriod;throw`Unknown orbital period for: ${t}`}const Q1={Mercury:[[[[4.40250710144,0,0],[.40989414977,1.48302034195,26087.9031415742],[.050462942,4.47785489551,52175.8062831484],[.00855346844,1.16520322459,78263.70942472259],[.00165590362,4.11969163423,104351.61256629678],[.00034561897,.77930768443,130439.51570787099],[7583476e-11,3.71348404924,156527.41884944518]],[[26087.90313685529,0,0],[.01131199811,6.21874197797,26087.9031415742],[.00292242298,3.04449355541,52175.8062831484],[.00075775081,6.08568821653,78263.70942472259],[.00019676525,2.80965111777,104351.61256629678]]],[[[.11737528961,1.98357498767,26087.9031415742],[.02388076996,5.03738959686,52175.8062831484],[.01222839532,3.14159265359,0],[.0054325181,1.79644363964,78263.70942472259],[.0012977877,4.83232503958,104351.61256629678],[.00031866927,1.58088495658,130439.51570787099],[7963301e-11,4.60972126127,156527.41884944518]],[[.00274646065,3.95008450011,26087.9031415742],[.00099737713,3.14159265359,0]]],[[[.39528271651,0,0],[.07834131818,6.19233722598,26087.9031415742],[.00795525558,2.95989690104,52175.8062831484],[.00121281764,6.01064153797,78263.70942472259],[.00021921969,2.77820093972,104351.61256629678],[4354065e-11,5.82894543774,130439.51570787099]],[[.0021734774,4.65617158665,26087.9031415742],[.00044141826,1.42385544001,52175.8062831484]]]],Venus:[[[[3.17614666774,0,0],[.01353968419,5.59313319619,10213.285546211],[.00089891645,5.30650047764,20426.571092422],[5477194e-11,4.41630661466,7860.4193924392],[3455741e-11,2.6996444782,11790.6290886588],[2372061e-11,2.99377542079,3930.2096962196],[1317168e-11,5.18668228402,26.2983197998],[1664146e-11,4.25018630147,1577.3435424478],[1438387e-11,4.15745084182,9683.5945811164],[1200521e-11,6.15357116043,30639.856638633]],[[10213.28554621638,0,0],[.00095617813,2.4640651111,10213.285546211],[7787201e-11,.6247848222,20426.571092422]]],[[[.05923638472,.26702775812,10213.285546211],[.00040107978,1.14737178112,20426.571092422],[.00032814918,3.14159265359,0]],[[.00287821243,1.88964962838,10213.285546211]]],[[[.72334820891,0,0],[.00489824182,4.02151831717,10213.285546211],[1658058e-11,4.90206728031,20426.571092422],[1378043e-11,1.12846591367,11790.6290886588],[1632096e-11,2.84548795207,7860.4193924392],[498395e-11,2.58682193892,9683.5945811164],[221985e-11,2.01346696541,19367.1891622328],[237454e-11,2.55136053886,15720.8387848784]],[[.00034551041,.89198706276,10213.285546211]]]],Earth:[[[[1.75347045673,0,0],[.03341656453,4.66925680415,6283.0758499914],[.00034894275,4.62610242189,12566.1516999828],[3417572e-11,2.82886579754,3.523118349],[3497056e-11,2.74411783405,5753.3848848968],[3135899e-11,3.62767041756,77713.7714681205],[2676218e-11,4.41808345438,7860.4193924392],[2342691e-11,6.13516214446,3930.2096962196],[1273165e-11,2.03709657878,529.6909650946],[1324294e-11,.74246341673,11506.7697697936],[901854e-11,2.04505446477,26.2983197998],[1199167e-11,1.10962946234,1577.3435424478],[857223e-11,3.50849152283,398.1490034082],[779786e-11,1.17882681962,5223.6939198022],[99025e-10,5.23268072088,5884.9268465832],[753141e-11,2.53339052847,5507.5532386674],[505267e-11,4.58292599973,18849.2275499742],[492392e-11,4.20505711826,775.522611324],[356672e-11,2.91954114478,.0673103028],[284125e-11,1.89869240932,796.2980068164],[242879e-11,.34481445893,5486.777843175],[317087e-11,5.84901948512,11790.6290886588],[271112e-11,.31486255375,10977.078804699],[206217e-11,4.80646631478,2544.3144198834],[205478e-11,1.86953770281,5573.1428014331],[202318e-11,2.45767790232,6069.7767545534],[126225e-11,1.08295459501,20.7753954924],[155516e-11,.83306084617,213.299095438]],[[6283.0758499914,0,0],[.00206058863,2.67823455808,6283.0758499914],[4303419e-11,2.63512233481,12566.1516999828]],[[8721859e-11,1.07253635559,6283.0758499914]]],[[],[[.00227777722,3.4137662053,6283.0758499914],[3805678e-11,3.37063423795,12566.1516999828]]],[[[1.00013988784,0,0],[.01670699632,3.09846350258,6283.0758499914],[.00013956024,3.05524609456,12566.1516999828],[308372e-10,5.19846674381,77713.7714681205],[1628463e-11,1.17387558054,5753.3848848968],[1575572e-11,2.84685214877,7860.4193924392],[924799e-11,5.45292236722,11506.7697697936],[542439e-11,4.56409151453,3930.2096962196],[47211e-10,3.66100022149,5884.9268465832],[85831e-11,1.27079125277,161000.6857376741],[57056e-11,2.01374292245,83996.84731811189],[55736e-11,5.2415979917,71430.69561812909],[174844e-11,3.01193636733,18849.2275499742],[243181e-11,4.2734953079,11790.6290886588]],[[.00103018607,1.10748968172,6283.0758499914],[1721238e-11,1.06442300386,12566.1516999828]],[[4359385e-11,5.78455133808,6283.0758499914]]]],Mars:[[[[6.20347711581,0,0],[.18656368093,5.0503710027,3340.6124266998],[.01108216816,5.40099836344,6681.2248533996],[.00091798406,5.75478744667,10021.8372800994],[.00027744987,5.97049513147,3.523118349],[.00010610235,2.93958560338,2281.2304965106],[.00012315897,.84956094002,2810.9214616052],[8926784e-11,4.15697846427,.0172536522],[8715691e-11,6.11005153139,13362.4497067992],[6797556e-11,.36462229657,398.1490034082],[7774872e-11,3.33968761376,5621.8429232104],[3575078e-11,1.6618650571,2544.3144198834],[4161108e-11,.22814971327,2942.4634232916],[3075252e-11,.85696614132,191.4482661116],[2628117e-11,.64806124465,3337.0893083508],[2937546e-11,6.07893711402,.0673103028],[2389414e-11,5.03896442664,796.2980068164],[2579844e-11,.02996736156,3344.1355450488],[1528141e-11,1.14979301996,6151.533888305],[1798806e-11,.65634057445,529.6909650946],[1264357e-11,3.62275122593,5092.1519581158],[1286228e-11,3.06796065034,2146.1654164752],[1546404e-11,2.91579701718,1751.539531416],[1024902e-11,3.69334099279,8962.4553499102],[891566e-11,.18293837498,16703.062133499],[858759e-11,2.4009381194,2914.0142358238],[832715e-11,2.46418619474,3340.5951730476],[83272e-10,4.49495782139,3340.629680352],[712902e-11,3.66335473479,1059.3819301892],[748723e-11,3.82248614017,155.4203994342],[723861e-11,.67497311481,3738.761430108],[635548e-11,2.92182225127,8432.7643848156],[655162e-11,.48864064125,3127.3133312618],[550474e-11,3.81001042328,.9803210682],[55275e-10,4.47479317037,1748.016413067],[425966e-11,.55364317304,6283.0758499914],[415131e-11,.49662285038,213.299095438],[472167e-11,3.62547124025,1194.4470102246],[306551e-11,.38052848348,6684.7479717486],[312141e-11,.99853944405,6677.7017350506],[293198e-11,4.22131299634,20.7753954924],[302375e-11,4.48618007156,3532.0606928114],[274027e-11,.54222167059,3340.545116397],[281079e-11,5.88163521788,1349.8674096588],[231183e-11,1.28242156993,3870.3033917944],[283602e-11,5.7688543494,3149.1641605882],[236117e-11,5.75503217933,3333.498879699],[274033e-11,.13372524985,3340.6797370026],[299395e-11,2.78323740866,6254.6266625236]],[[3340.61242700512,0,0],[.01457554523,3.60433733236,3340.6124266998],[.00168414711,3.92318567804,6681.2248533996],[.00020622975,4.26108844583,10021.8372800994],[3452392e-11,4.7321039319,3.523118349],[2586332e-11,4.60670058555,13362.4497067992],[841535e-11,4.45864030426,2281.2304965106]],[[.00058152577,2.04961712429,3340.6124266998],[.00013459579,2.45738706163,6681.2248533996]]],[[[.03197134986,3.76832042431,3340.6124266998],[.00298033234,4.10616996305,6681.2248533996],[.00289104742,0,0],[.00031365539,4.4465105309,10021.8372800994],[34841e-9,4.7881254926,13362.4497067992]],[[.00217310991,6.04472194776,3340.6124266998],[.00020976948,3.14159265359,0],[.00012834709,1.60810667915,6681.2248533996]]],[[[1.53033488271,0,0],[.1418495316,3.47971283528,3340.6124266998],[.00660776362,3.81783443019,6681.2248533996],[.00046179117,4.15595316782,10021.8372800994],[8109733e-11,5.55958416318,2810.9214616052],[7485318e-11,1.77239078402,5621.8429232104],[5523191e-11,1.3643630377,2281.2304965106],[382516e-10,4.49407183687,13362.4497067992],[2306537e-11,.09081579001,2544.3144198834],[1999396e-11,5.36059617709,3337.0893083508],[2484394e-11,4.9254563992,2942.4634232916],[1960195e-11,4.74249437639,3344.1355450488],[1167119e-11,2.11260868341,5092.1519581158],[1102816e-11,5.00908403998,398.1490034082],[899066e-11,4.40791133207,529.6909650946],[992252e-11,5.83861961952,6151.533888305],[807354e-11,2.10217065501,1059.3819301892],[797915e-11,3.44839203899,796.2980068164],[740975e-11,1.49906336885,2146.1654164752]],[[.01107433345,2.03250524857,3340.6124266998],[.00103175887,2.37071847807,6681.2248533996],[128772e-9,0,0],[.0001081588,2.70888095665,10021.8372800994]],[[.00044242249,.47930604954,3340.6124266998],[8138042e-11,.86998389204,6681.2248533996]]]],Jupiter:[[[[.59954691494,0,0],[.09695898719,5.06191793158,529.6909650946],[.00573610142,1.44406205629,7.1135470008],[.00306389205,5.41734730184,1059.3819301892],[.00097178296,4.14264726552,632.7837393132],[.00072903078,3.64042916389,522.5774180938],[.00064263975,3.41145165351,103.0927742186],[.00039806064,2.29376740788,419.4846438752],[.00038857767,1.27231755835,316.3918696566],[.00027964629,1.7845459182,536.8045120954],[.0001358973,5.7748104079,1589.0728952838],[8246349e-11,3.5822792584,206.1855484372],[8768704e-11,3.63000308199,949.1756089698],[7368042e-11,5.0810119427,735.8765135318],[626315e-10,.02497628807,213.299095438],[6114062e-11,4.51319998626,1162.4747044078],[4905396e-11,1.32084470588,110.2063212194],[5305285e-11,1.30671216791,14.2270940016],[5305441e-11,4.18625634012,1052.2683831884],[4647248e-11,4.69958103684,3.9321532631],[3045023e-11,4.31676431084,426.598190876],[2609999e-11,1.56667394063,846.0828347512],[2028191e-11,1.06376530715,3.1813937377],[1764763e-11,2.14148655117,1066.49547719],[1722972e-11,3.88036268267,1265.5674786264],[1920945e-11,.97168196472,639.897286314],[1633223e-11,3.58201833555,515.463871093],[1431999e-11,4.29685556046,625.6701923124],[973272e-11,4.09764549134,95.9792272178]],[[529.69096508814,0,0],[.00489503243,4.2208293947,529.6909650946],[.00228917222,6.02646855621,7.1135470008],[.00030099479,4.54540782858,1059.3819301892],[.0002072092,5.45943156902,522.5774180938],[.00012103653,.16994816098,536.8045120954],[6067987e-11,4.42422292017,103.0927742186],[5433968e-11,3.98480737746,419.4846438752],[4237744e-11,5.89008707199,14.2270940016]],[[.00047233601,4.32148536482,7.1135470008],[.00030649436,2.929777887,529.6909650946],[.00014837605,3.14159265359,0]]],[[[.02268615702,3.55852606721,529.6909650946],[.00109971634,3.90809347197,1059.3819301892],[.00110090358,0,0],[8101428e-11,3.60509572885,522.5774180938],[6043996e-11,4.25883108339,1589.0728952838],[6437782e-11,.30627119215,536.8045120954]],[[.00078203446,1.52377859742,529.6909650946]]],[[[5.20887429326,0,0],[.25209327119,3.49108639871,529.6909650946],[.00610599976,3.84115365948,1059.3819301892],[.00282029458,2.57419881293,632.7837393132],[.00187647346,2.07590383214,522.5774180938],[.00086792905,.71001145545,419.4846438752],[.00072062974,.21465724607,536.8045120954],[.00065517248,5.9799588479,316.3918696566],[.00029134542,1.67759379655,103.0927742186],[.00030135335,2.16132003734,949.1756089698],[.00023453271,3.54023522184,735.8765135318],[.00022283743,4.19362594399,1589.0728952838],[.00023947298,.2745803748,7.1135470008],[.00013032614,2.96042965363,1162.4747044078],[970336e-10,1.90669633585,206.1855484372],[.00012749023,2.71550286592,1052.2683831884],[7057931e-11,2.18184839926,1265.5674786264],[6137703e-11,6.26418240033,846.0828347512],[2616976e-11,2.00994012876,1581.959348283]],[[.0127180152,2.64937512894,529.6909650946],[.00061661816,3.00076460387,1059.3819301892],[.00053443713,3.89717383175,522.5774180938],[.00031185171,4.88276958012,536.8045120954],[.00041390269,0,0]]]],Saturn:[[[[.87401354025,0,0],[.11107659762,3.96205090159,213.299095438],[.01414150957,4.58581516874,7.1135470008],[.00398379389,.52112032699,206.1855484372],[.00350769243,3.30329907896,426.598190876],[.00206816305,.24658372002,103.0927742186],[792713e-9,3.84007056878,220.4126424388],[.00023990355,4.66976924553,110.2063212194],[.00016573588,.43719228296,419.4846438752],[.00014906995,5.76903183869,316.3918696566],[.0001582029,.93809155235,632.7837393132],[.00014609559,1.56518472,3.9321532631],[.00013160301,4.44891291899,14.2270940016],[.00015053543,2.71669915667,639.897286314],[.00013005299,5.98119023644,11.0457002639],[.00010725067,3.12939523827,202.2533951741],[5863206e-11,.23656938524,529.6909650946],[5227757e-11,4.20783365759,3.1813937377],[6126317e-11,1.76328667907,277.0349937414],[5019687e-11,3.17787728405,433.7117378768],[459255e-10,.61977744975,199.0720014364],[4005867e-11,2.24479718502,63.7358983034],[2953796e-11,.98280366998,95.9792272178],[387367e-10,3.22283226966,138.5174968707],[2461186e-11,2.03163875071,735.8765135318],[3269484e-11,.77492638211,949.1756089698],[1758145e-11,3.2658010994,522.5774180938],[1640172e-11,5.5050445305,846.0828347512],[1391327e-11,4.02333150505,323.5054166574],[1580648e-11,4.37265307169,309.2783226558],[1123498e-11,2.83726798446,415.5524906121],[1017275e-11,3.71700135395,227.5261894396],[848642e-11,3.1915017083,209.3669421749]],[[213.2990952169,0,0],[.01297370862,1.82834923978,213.299095438],[.00564345393,2.88499717272,7.1135470008],[.00093734369,1.06311793502,426.598190876],[.00107674962,2.27769131009,206.1855484372],[.00040244455,2.04108104671,220.4126424388],[.00019941774,1.2795439047,103.0927742186],[.00010511678,2.7488034213,14.2270940016],[6416106e-11,.38238295041,639.897286314],[4848994e-11,2.43037610229,419.4846438752],[4056892e-11,2.92133209468,110.2063212194],[3768635e-11,3.6496533078,3.9321532631]],[[.0011644133,1.17988132879,7.1135470008],[.00091841837,.0732519584,213.299095438],[.00036661728,0,0],[.00015274496,4.06493179167,206.1855484372]]],[[[.04330678039,3.60284428399,213.299095438],[.00240348302,2.85238489373,426.598190876],[.00084745939,0,0],[.00030863357,3.48441504555,220.4126424388],[.00034116062,.57297307557,206.1855484372],[.0001473407,2.11846596715,639.897286314],[9916667e-11,5.79003188904,419.4846438752],[6993564e-11,4.7360468972,7.1135470008],[4807588e-11,5.43305312061,316.3918696566]],[[.00198927992,4.93901017903,213.299095438],[.00036947916,3.14159265359,0],[.00017966989,.5197943111,426.598190876]]],[[[9.55758135486,0,0],[.52921382865,2.39226219573,213.299095438],[.01873679867,5.2354960466,206.1855484372],[.01464663929,1.64763042902,426.598190876],[.00821891141,5.93520042303,316.3918696566],[.00547506923,5.0153261898,103.0927742186],[.0037168465,2.27114821115,220.4126424388],[.00361778765,3.13904301847,7.1135470008],[.00140617506,5.70406606781,632.7837393132],[.00108974848,3.29313390175,110.2063212194],[.00069006962,5.94099540992,419.4846438752],[.00061053367,.94037691801,639.897286314],[.00048913294,1.55733638681,202.2533951741],[.00034143772,.19519102597,277.0349937414],[.00032401773,5.47084567016,949.1756089698],[.00020936596,.46349251129,735.8765135318],[9796004e-11,5.20477537945,1265.5674786264],[.00011993338,5.98050967385,846.0828347512],[208393e-9,1.52102476129,433.7117378768],[.00015298404,3.0594381494,529.6909650946],[6465823e-11,.17732249942,1052.2683831884],[.00011380257,1.7310542704,522.5774180938],[3419618e-11,4.94550542171,1581.959348283]],[[.0618298134,.2584351148,213.299095438],[.00506577242,.71114625261,206.1855484372],[.00341394029,5.79635741658,426.598190876],[.00188491195,.47215589652,220.4126424388],[.00186261486,3.14159265359,0],[.00143891146,1.40744822888,7.1135470008]],[[.00436902572,4.78671677509,213.299095438]]]],Uranus:[[[[5.48129294297,0,0],[.09260408234,.89106421507,74.7815985673],[.01504247898,3.6271926092,1.4844727083],[.00365981674,1.89962179044,73.297125859],[.00272328168,3.35823706307,149.5631971346],[.00070328461,5.39254450063,63.7358983034],[.00068892678,6.09292483287,76.2660712756],[.00061998615,2.26952066061,2.9689454166],[.00061950719,2.85098872691,11.0457002639],[.0002646877,3.14152083966,71.8126531507],[.00025710476,6.11379840493,454.9093665273],[.0002107885,4.36059339067,148.0787244263],[.00017818647,1.74436930289,36.6485629295],[.00014613507,4.73732166022,3.9321532631],[.00011162509,5.8268179635,224.3447957019],[.0001099791,.48865004018,138.5174968707],[9527478e-11,2.95516862826,35.1640902212],[7545601e-11,5.236265824,109.9456887885],[4220241e-11,3.23328220918,70.8494453042],[40519e-9,2.277550173,151.0476698429],[3354596e-11,1.0654900738,4.4534181249],[2926718e-11,4.62903718891,9.5612275556],[349034e-10,5.48306144511,146.594251718],[3144069e-11,4.75199570434,77.7505439839],[2922333e-11,5.35235361027,85.8272988312],[2272788e-11,4.36600400036,70.3281804424],[2051219e-11,1.51773566586,.1118745846],[2148602e-11,.60745949945,38.1330356378],[1991643e-11,4.92437588682,277.0349937414],[1376226e-11,2.04283539351,65.2203710117],[1666902e-11,3.62744066769,380.12776796],[1284107e-11,3.11347961505,202.2533951741],[1150429e-11,.93343589092,3.1813937377],[1533221e-11,2.58594681212,52.6901980395],[1281604e-11,.54271272721,222.8603229936],[1372139e-11,4.19641530878,111.4301614968],[1221029e-11,.1990065003,108.4612160802],[946181e-11,1.19253165736,127.4717966068],[1150989e-11,4.17898916639,33.6796175129]],[[74.7815986091,0,0],[.00154332863,5.24158770553,74.7815985673],[.00024456474,1.71260334156,1.4844727083],[9258442e-11,.4282973235,11.0457002639],[8265977e-11,1.50218091379,63.7358983034],[915016e-10,1.41213765216,149.5631971346]]],[[[.01346277648,2.61877810547,74.7815985673],[623414e-9,5.08111189648,149.5631971346],[.00061601196,3.14159265359,0],[9963722e-11,1.61603805646,76.2660712756],[992616e-10,.57630380333,73.297125859]],[[.00034101978,.01321929936,74.7815985673]]],[[[19.21264847206,0,0],[.88784984413,5.60377527014,74.7815985673],[.03440836062,.32836099706,73.297125859],[.0205565386,1.7829515933,149.5631971346],[.0064932241,4.52247285911,76.2660712756],[.00602247865,3.86003823674,63.7358983034],[.00496404167,1.40139935333,454.9093665273],[.00338525369,1.58002770318,138.5174968707],[.00243509114,1.57086606044,71.8126531507],[.00190522303,1.99809394714,1.4844727083],[.00161858838,2.79137786799,148.0787244263],[.00143706183,1.38368544947,11.0457002639],[.00093192405,.17437220467,36.6485629295],[.00071424548,4.24509236074,224.3447957019],[.00089806014,3.66105364565,109.9456887885],[.00039009723,1.66971401684,70.8494453042],[.00046677296,1.39976401694,35.1640902212],[.00039025624,3.36234773834,277.0349937414],[.00036755274,3.88649278513,146.594251718],[.00030348723,.70100838798,151.0476698429],[.00029156413,3.180563367,77.7505439839],[.00022637073,.72518687029,529.6909650946],[.00011959076,1.7504339214,984.6003316219],[.00025620756,5.25656086672,380.12776796]],[[.01479896629,3.67205697578,74.7815985673]]]],Neptune:[[[[5.31188633046,0,0],[.0179847553,2.9010127389,38.1330356378],[.01019727652,.48580922867,1.4844727083],[.00124531845,4.83008090676,36.6485629295],[.00042064466,5.41054993053,2.9689454166],[.00037714584,6.09221808686,35.1640902212],[.00033784738,1.24488874087,76.2660712756],[.00016482741,7727998e-11,491.5579294568],[9198584e-11,4.93747051954,39.6175083461],[899425e-10,.27462171806,175.1660598002]],[[38.13303563957,0,0],[.00016604172,4.86323329249,1.4844727083],[.00015744045,2.27887427527,38.1330356378]]],[[[.03088622933,1.44104372644,38.1330356378],[.00027780087,5.91271884599,76.2660712756],[.00027623609,0,0],[.00015355489,2.52123799551,36.6485629295],[.00015448133,3.50877079215,39.6175083461]]],[[[30.07013205828,0,0],[.27062259632,1.32999459377,38.1330356378],[.01691764014,3.25186135653,36.6485629295],[.00807830553,5.18592878704,1.4844727083],[.0053776051,4.52113935896,35.1640902212],[.00495725141,1.5710564165,491.5579294568],[.00274571975,1.84552258866,175.1660598002],[.0001201232,1.92059384991,1021.2488945514],[.00121801746,5.79754470298,76.2660712756],[.00100896068,.3770272493,73.297125859],[.00135134092,3.37220609835,39.6175083461],[7571796e-11,1.07149207335,388.4651552382]]]]};function Qr(t){var e,i,s,r,c,o,d;const g=2e3+(t-14)/$l;return g<-500?(e=(g-1820)/100,-20+32*e*e):g<500?(e=g/100,i=e*e,s=e*i,r=i*i,c=i*s,o=s*s,10583.6-1014.41*e+33.78311*i-5.952053*s-.1798452*r+.022174192*c+.0090316521*o):g<1600?(e=(g-1e3)/100,i=e*e,s=e*i,r=i*i,c=i*s,o=s*s,1574.2-556.01*e+71.23472*i+.319781*s-.8503463*r-.005050998*c+.0083572073*o):g<1700?(e=g-1600,i=e*e,s=e*i,120-.9808*e-.01532*i+s/7129):g<1800?(e=g-1700,i=e*e,s=e*i,r=i*i,8.83+.1603*e-.0059285*i+13336e-8*s-r/1174e3):g<1860?(e=g-1800,i=e*e,s=e*i,r=i*i,c=i*s,o=s*s,d=s*r,13.72-.332447*e+.0068612*i+.0041116*s-37436e-8*r+121272e-10*c-1699e-10*o+875e-12*d):g<1900?(e=g-1860,i=e*e,s=e*i,r=i*i,c=i*s,7.62+.5737*e-.251754*i+.01680668*s-.0004473624*r+c/233174):g<1920?(e=g-1900,i=e*e,s=e*i,r=i*i,-2.79+1.494119*e-.0598939*i+.0061966*s-197e-6*r):g<1941?(e=g-1920,i=e*e,s=e*i,21.2+.84493*e-.0761*i+.0020936*s):g<1961?(e=g-1950,i=e*e,s=e*i,29.07+.407*e-i/233+s/2547):g<1986?(e=g-1975,i=e*e,s=e*i,45.45+1.067*e-i/260-s/718):g<2005?(e=g-2e3,i=e*e,s=e*i,r=i*i,c=i*s,63.86+.3345*e-.060374*i+.0017275*s+651814e-9*r+2373599e-11*c):g<2050?(e=g-2e3,62.92+.32217*e+.005589*e*e):g<2150?(e=(g-1820)/100,-20+32*e*e-.5628*(2150-g)):(e=(g-1820)/100,-20+32*e*e)}function og(t){return Qr(Math.min(t,17*$l))}let io=Qr;function cg(t){io=t}function C7(t){return t+io(t)/86400}class Ne{constructor(e){if(e instanceof Ne){this.date=e.date,this.ut=e.ut,this.tt=e.tt;return}const i=1e3*3600*24;if(e instanceof Date&&Number.isFinite(e.getTime())){this.date=e,this.ut=(e.getTime()-F7.getTime())/i,this.tt=C7(this.ut);return}if(Number.isFinite(e)){this.date=new Date(F7.getTime()+e*i),this.ut=e,this.tt=C7(this.ut);return}throw"Argument must be a Date object, an AstroTime object, or a numeric UTC Julian date."}static FromTerrestrialTime(e){let i=new Ne(e);for(;;){const s=e-i.tt;if(Math.abs(s)<1e-12)return i;i=i.AddDays(s)}}toString(){return this.date.toISOString()}AddDays(e){return new Ne(this.ut+e)}}function hg(t,e,i){return new Ne(t.ut+i*(e.ut-t.ut))}function A0(t){return t instanceof Ne?t:new Ne(t)}function dg(t){function e(x){return x%qd*dn}const i=t.tt/36525,s=e(128710479305e-5+i*1295965810481e-4),r=e(335779.526232+i*17395272628478e-4),c=e(107226070369e-5+i*1602961601209e-3),o=e(450160.398036-i*69628905431e-4);let d=Math.sin(o),g=Math.cos(o),f=(-172064161-174666*i)*d+33386*g,E=(92052331+9086*i)*g+15377*d,F=2*(r-c+o);return d=Math.sin(F),g=Math.cos(F),f+=(-13170906-1675*i)*d-13696*g,E+=(5730336-3015*i)*g-4587*d,F=2*(r+o),d=Math.sin(F),g=Math.cos(F),f+=(-2276413-234*i)*d+2796*g,E+=(978459-485*i)*g+1374*d,F=2*o,d=Math.sin(F),g=Math.cos(F),f+=(2074554+207*i)*d-698*g,E+=(-897492+470*i)*g-291*d,d=Math.sin(s),g=Math.cos(s),f+=(1475877-3633*i)*d+11817*g,E+=(73871-184*i)*g-1924*d,{dpsi:-135e-6+f*1e-7,deps:388e-6+E*1e-7}}function uo(t){var e=t.tt/36525,i=((((-434e-10*e-576e-9)*e+.0020034)*e-1831e-7)*e-46.836769)*e+84381.406;return i/3600}var l3;function n2(t){if(!l3||Math.abs(l3.tt-t.tt)>1e-6){const e=dg(t),i=uo(t),s=i+e.deps/3600;l3={tt:t.tt,dpsi:e.dpsi,deps:e.deps,ee:e.dpsi*Math.cos(i*l0)/15,mobl:i,tobl:s}}return l3}function so(t,e){const i=t*l0,s=Math.cos(i),r=Math.sin(i);return[e[0],e[1]*s-e[2]*r,e[1]*r+e[2]*s]}function gg(t,e){return so(uo(t),e)}let ro=0;function Kt(t){++ro;const e=t.tt/36525;function i(z0,O0){const q0=[];let J0;for(J0=0;J0<=O0-z0;++J0)q0.push(0);return{min:z0,array:q0}}function s(z0,O0,q0,J0){const K0=[];for(let f1=0;f1<=O0-z0;++f1)K0.push(i(q0,J0));return{min:z0,array:K0}}function r(z0,O0,q0){const J0=z0.array[O0-z0.min];return J0.array[q0-J0.min]}function c(z0,O0,q0,J0){const K0=z0.array[O0-z0.min];K0.array[q0-K0.min]=J0}let o,d,g,f,E,F,x,A,y,B,_,S,M,Y,z,T,W,X,Z,$,e0,q,c0,b=s(-6,6,1,4),u0=s(-6,6,1,4);function d0(z0,O0){return r(b,z0,O0)}function E0(z0,O0){return r(u0,z0,O0)}function i0(z0,O0,q0){return c(b,z0,O0,q0)}function K(z0,O0,q0){return c(u0,z0,O0,q0)}function h0(z0,O0,q0,J0,K0){K0(z0*q0-O0*J0,O0*q0+z0*J0)}function G(z0){return Math.sin(Ze*z0)}x=e*e,y=0,c0=0,_=0,S=3422.7;var N=G(.19833+.05611*e),P=G(.27869+.04508*e),g0=G(.16827-.36903*e),m0=G(.34734-5.37261*e),j0=G(.10498-5.37899*e),I0=G(.42681-.41855*e),R0=G(.14943-5.37511*e);for(X=.84*N+.31*P+14.27*g0+7.26*m0+.28*j0+.24*I0,Z=2.94*N+.31*P+14.27*g0+9.34*m0+1.12*j0+.83*I0,$=-6.4*N-1.89*I0,e0=.21*N+.31*P+14.27*g0-88.7*m0-15.3*j0+.24*I0-1.86*R0,q=X-$,A=-3332e-9*G(.59734-5.37261*e)-539e-9*G(.35498-5.37899*e)-64e-9*G(.39943-5.37511*e),M=Ze*sn(.60643382+1336.85522467*e-313e-8*x)+X/$t,Y=Ze*sn(.37489701+1325.55240982*e+2565e-8*x)+Z/$t,z=Ze*sn(.99312619+99.99735956*e-44e-8*x)+$/$t,T=Ze*sn(.25909118+1342.2278298*e-892e-8*x)+e0/$t,W=Ze*sn(.82736186+1236.85308708*e-397e-8*x)+q/$t,E=1;E<=4;++E){switch(E){case 1:g=Y,d=4,f=1.000002208;break;case 2:g=z,d=3,f=.997504612-.002495388*e;break;case 3:g=T,d=4,f=1.000002708+139.978*A;break;case 4:g=W,d=6,f=1;break;default:throw`Internal error: I = ${E}`}for(i0(0,E,1),i0(1,E,Math.cos(g)*f),K(0,E,0),K(1,E,Math.sin(g)*f),F=2;F<=d;++F)h0(d0(F-1,E),E0(F-1,E),d0(1,E),E0(1,E),(z0,O0)=>(i0(F,E,z0),K(F,E,O0)));for(F=1;F<=d;++F)i0(-F,E,d0(F,E)),K(-F,E,-E0(F,E))}function M0(z0,O0,q0,J0){for(var K0={x:1,y:0},f1=[0,z0,O0,q0,J0],C1=1;C1<=4;++C1)f1[C1]!==0&&h0(K0.x,K0.y,d0(f1[C1],C1),E0(f1[C1],C1),(ae,b1)=>(K0.x=ae,K0.y=b1));return K0}function J(z0,O0,q0,J0,K0,f1,C1,ae){var b1=M0(K0,f1,C1,ae);y+=z0*b1.y,c0+=O0*b1.y,_+=q0*b1.x,S+=J0*b1.x}J(13.902,14.06,-.001,.2607,0,0,0,4),J(.403,-4.01,.394,.0023,0,0,0,3),J(2369.912,2373.36,.601,28.2333,0,0,0,2),J(-125.154,-112.79,-.725,-.9781,0,0,0,1),J(1.979,6.98,-.445,.0433,1,0,0,4),J(191.953,192.72,.029,3.0861,1,0,0,2),J(-8.466,-13.51,.455,-.1093,1,0,0,1),J(22639.5,22609.07,.079,186.5398,1,0,0,0),J(18.609,3.59,-.094,.0118,1,0,0,-1),J(-4586.465,-4578.13,-.077,34.3117,1,0,0,-2),J(3.215,5.44,.192,-.0386,1,0,0,-3),J(-38.428,-38.64,.001,.6008,1,0,0,-4),J(-.393,-1.43,-.092,.0086,1,0,0,-6),J(-.289,-1.59,.123,-.0053,0,1,0,4),J(-24.42,-25.1,.04,-.3,0,1,0,2),J(18.023,17.93,.007,.1494,0,1,0,1),J(-668.146,-126.98,-1.302,-.3997,0,1,0,0),J(.56,.32,-.001,-.0037,0,1,0,-1),J(-165.145,-165.06,.054,1.9178,0,1,0,-2),J(-1.877,-6.46,-.416,.0339,0,1,0,-4),J(.213,1.02,-.074,.0054,2,0,0,4),J(14.387,14.78,-.017,.2833,2,0,0,2),J(-.586,-1.2,.054,-.01,2,0,0,1),J(769.016,767.96,.107,10.1657,2,0,0,0),J(1.75,2.01,-.018,.0155,2,0,0,-1),J(-211.656,-152.53,5.679,-.3039,2,0,0,-2),J(1.225,.91,-.03,-.0088,2,0,0,-3),J(-30.773,-34.07,-.308,.3722,2,0,0,-4),J(-.57,-1.4,-.074,.0109,2,0,0,-6),J(-2.921,-11.75,.787,-.0484,1,1,0,2),J(1.267,1.52,-.022,.0164,1,1,0,1),J(-109.673,-115.18,.461,-.949,1,1,0,0),J(-205.962,-182.36,2.056,1.4437,1,1,0,-2),J(.233,.36,.012,-.0025,1,1,0,-3),J(-4.391,-9.66,-.471,.0673,1,1,0,-4),J(.283,1.53,-.111,.006,1,-1,0,4),J(14.577,31.7,-1.54,.2302,1,-1,0,2),J(147.687,138.76,.679,1.1528,1,-1,0,0),J(-1.089,.55,.021,0,1,-1,0,-1),J(28.475,23.59,-.443,-.2257,1,-1,0,-2),J(-.276,-.38,-.006,-.0036,1,-1,0,-3),J(.636,2.27,.146,-.0102,1,-1,0,-4),J(-.189,-1.68,.131,-.0028,0,2,0,2),J(-7.486,-.66,-.037,-.0086,0,2,0,0),J(-8.096,-16.35,-.74,.0918,0,2,0,-2),J(-5.741,-.04,0,-9e-4,0,0,2,2),J(.255,0,0,0,0,0,2,1),J(-411.608,-.2,0,-.0124,0,0,2,0),J(.584,.84,0,.0071,0,0,2,-1),J(-55.173,-52.14,0,-.1052,0,0,2,-2),J(.254,.25,0,-.0017,0,0,2,-3),J(.025,-1.67,0,.0031,0,0,2,-4),J(1.06,2.96,-.166,.0243,3,0,0,2),J(36.124,50.64,-1.3,.6215,3,0,0,0),J(-13.193,-16.4,.258,-.1187,3,0,0,-2),J(-1.187,-.74,.042,.0074,3,0,0,-4),J(-.293,-.31,-.002,.0046,3,0,0,-6),J(-.29,-1.45,.116,-.0051,2,1,0,2),J(-7.649,-10.56,.259,-.1038,2,1,0,0),J(-8.627,-7.59,.078,-.0192,2,1,0,-2),J(-2.74,-2.54,.022,.0324,2,1,0,-4),J(1.181,3.32,-.212,.0213,2,-1,0,2),J(9.703,11.67,-.151,.1268,2,-1,0,0),J(-.352,-.37,.001,-.0028,2,-1,0,-1),J(-2.494,-1.17,-.003,-.0017,2,-1,0,-2),J(.36,.2,-.012,-.0043,2,-1,0,-4),J(-1.167,-1.25,.008,-.0106,1,2,0,0),J(-7.412,-6.12,.117,.0484,1,2,0,-2),J(-.311,-.65,-.032,.0044,1,2,0,-4),J(.757,1.82,-.105,.0112,1,-2,0,2),J(2.58,2.32,.027,.0196,1,-2,0,0),J(2.533,2.4,-.014,-.0212,1,-2,0,-2),J(-.344,-.57,-.025,.0036,0,3,0,-2),J(-.992,-.02,0,0,1,0,2,2),J(-45.099,-.02,0,-.001,1,0,2,0),J(-.179,-9.52,0,-.0833,1,0,2,-2),J(-.301,-.33,0,.0014,1,0,2,-4),J(-6.382,-3.37,0,-.0481,1,0,-2,2),J(39.528,85.13,0,-.7136,1,0,-2,0),J(9.366,.71,0,-.0112,1,0,-2,-2),J(.202,.02,0,0,1,0,-2,-4),J(.415,.1,0,.0013,0,1,2,0),J(-2.152,-2.26,0,-.0066,0,1,2,-2),J(-1.44,-1.3,0,.0014,0,1,-2,2),J(.384,-.04,0,0,0,1,-2,-2),J(1.938,3.6,-.145,.0401,4,0,0,0),J(-.952,-1.58,.052,-.013,4,0,0,-2),J(-.551,-.94,.032,-.0097,3,1,0,0),J(-.482,-.57,.005,-.0045,3,1,0,-2),J(.681,.96,-.026,.0115,3,-1,0,0),J(-.297,-.27,.002,-9e-4,2,2,0,-2),J(.254,.21,-.003,0,2,-2,0,-2),J(-.25,-.22,.004,.0014,1,3,0,-2),J(-3.996,0,0,4e-4,2,0,2,0),J(.557,-.75,0,-.009,2,0,2,-2),J(-.459,-.38,0,-.0053,2,0,-2,2),J(-1.298,.74,0,4e-4,2,0,-2,0),J(.538,1.14,0,-.0141,2,0,-2,-2),J(.263,.02,0,0,1,1,2,0),J(.426,.07,0,-6e-4,1,1,-2,-2),J(-.304,.03,0,3e-4,1,-1,2,0),J(-.372,-.19,0,-.0027,1,-1,-2,2),J(.418,0,0,0,0,0,4,0),J(-.33,-.04,0,0,3,0,2,0);function Y0(z0,O0,q0,J0,K0){return z0*M0(O0,q0,J0,K0).y}B=0,B+=Y0(-526.069,0,0,1,-2),B+=Y0(-3.352,0,0,1,-4),B+=Y0(44.297,1,0,1,-2),B+=Y0(-6,1,0,1,-4),B+=Y0(20.599,-1,0,1,0),B+=Y0(-30.598,-1,0,1,-2),B+=Y0(-24.649,-2,0,1,0),B+=Y0(-2,-2,0,1,-2),B+=Y0(-22.571,0,1,1,-2),B+=Y0(10.985,0,-1,1,-2),y+=.82*G(.7736-62.5512*e)+.31*G(.0466-125.1025*e)+.35*G(.5785-25.1042*e)+.66*G(.4591+1335.8075*e)+.64*G(.313-91.568*e)+1.14*G(.148+1331.2898*e)+.21*G(.5918+1056.5859*e)+.44*G(.5784+1322.8595*e)+.24*G(.2275-5.7374*e)+.28*G(.2965+2.6929*e)+.33*G(.3132+6.3368*e),o=T+c0/$t;let X0=(1.000002708+139.978*A)*(18518.511+1.189+_)*Math.sin(o)-6.24*Math.sin(3*o)+B;return{geo_eclip_lon:Ze*sn((M+y/$t)/Ze),geo_eclip_lat:Math.PI/(180*3600)*X0,distance_au:$t*$d/(.999953253*S)}}class ao{constructor(e,i,s,r,c,o){this.elat=e,this.elon=i,this.mlat=s,this.mlon=r,this.dist_km=c,this.diam_deg=o}}function mg(t){const e=A0(t),i=e.tt/36525,s=i*i,r=s*i,c=s*s,o=Kt(e),d=o.geo_eclip_lon,g=o.geo_eclip_lat,f=o.distance_au*n1,E=l0*1.543,F=l0*hn(93.272095+483202.0175233*i-.0036539*s-r/3526e3+c/86331e4),x=l0*hn(125.0445479-1934.1362891*i+.0020754*s+r/467441-c/60616e3),A=l0*hn(357.5291092+35999.0502909*i-1536e-7*s+r/2449e4),y=l0*hn(134.9633964+477198.8675055*i+.0087414*s+r/69699-c/14712e3),B=l0*hn(297.8501921+445267.1114034*i-.0018819*s+r/545868-c/113065e3),_=1-.002516*i-74e-7*s,S=d-x,M=Math.atan2(Math.sin(S)*Math.cos(g)*Math.cos(E)-Math.sin(g)*Math.sin(E),Math.cos(S)*Math.cos(g)),Y=kn(d1*(M-F)),z=Math.asin(-Math.sin(S)*Math.cos(g)*Math.sin(E)-Math.sin(g)*Math.cos(E)),T=l0*(119.75+131.849*i),W=l0*(72.56+20.186*i),X=-.02752*Math.cos(y)+-.02245*Math.sin(F)+.00684*Math.cos(y-2*F)+-.00293*Math.cos(2*F)+-85e-5*Math.cos(2*F-2*B)+-54e-5*Math.cos(y-2*B)+-2e-4*Math.sin(y+F)+-2e-4*Math.cos(y+2*F)+-2e-4*Math.cos(y-F)+14e-5*Math.cos(y+2*F-2*B),Z=-.02816*Math.sin(y)+.02244*Math.cos(F)+-.00682*Math.sin(y-2*F)+-.00279*Math.sin(2*F)+-83e-5*Math.sin(2*F-2*B)+69e-5*Math.sin(y-2*B)+4e-4*Math.cos(y+F)+-25e-5*Math.sin(2*y)+-23e-5*Math.sin(y+2*F)+2e-4*Math.cos(y-F)+19e-5*Math.sin(y-F)+13e-5*Math.sin(y+2*F-2*B)+-1e-4*Math.cos(y-3*F),e0=-(.0252*_*Math.sin(A)+.00473*Math.sin(2*y-2*F)+-.00467*Math.sin(y)+.00396*Math.sin(T)+.00276*Math.sin(2*y-2*B)+.00196*Math.sin(x)+-.00183*Math.cos(y-F)+.00115*Math.sin(y-2*B)+-96e-5*Math.sin(y-B)+46e-5*Math.sin(2*F-2*B)+-39e-5*Math.sin(y-F)+-32e-5*Math.sin(y-A-B)+27e-5*Math.sin(2*y-A-2*B)+23e-5*Math.sin(W)+-14e-5*Math.sin(2*B)+14e-5*Math.cos(2*y-2*F)+-12e-5*Math.sin(y-2*F)+-12e-5*Math.sin(2*y)+11e-5*Math.sin(2*y-2*A-2*B))+(X*Math.cos(M)+Z*Math.sin(M))*Math.tan(z),q=Z*Math.cos(M)-X*Math.sin(M),c0=2*d1*Math.atan(we/Math.sqrt(f*f-we*we));return new ao(d1*z+q,Y+e0,d1*g,d1*d,f,c0)}function lo(t,e){return[t.rot[0][0]*e[0]+t.rot[1][0]*e[1]+t.rot[2][0]*e[2],t.rot[0][1]*e[0]+t.rot[1][1]*e[1]+t.rot[2][1]*e[2],t.rot[0][2]*e[0]+t.rot[1][2]*e[1]+t.rot[2][2]*e[2]]}function An(t,e,i){const s=J3(e,i);return lo(s,t)}function x7(t,e,i){const s=J3(e,i);return V3(s,t)}function J3(t,e){const i=t.tt/36525;let s=84381.406,r=((((-951e-10*i+132851e-9)*i-.00114045)*i-1.0790069)*i+5038.481507)*i,c=((((3337e-10*i-467e-9)*i-.00772503)*i+.0512623)*i-.025754)*i+s,o=((((-56e-9*i+170663e-9)*i-.00121197)*i-2.3814292)*i+10.556403)*i;s*=dn,r*=dn,c*=dn,o*=dn;const d=Math.sin(s),g=Math.cos(s),f=Math.sin(-r),E=Math.cos(-r),F=Math.sin(-c),x=Math.cos(-c),A=Math.sin(o),y=Math.cos(o),B=y*E-f*A*x,_=y*f*g+A*x*E*g-d*A*F,S=y*f*d+A*x*E*d+g*A*F,M=-A*E-f*y*x,Y=-A*f*g+y*x*E*g-d*y*F,z=-A*f*d+y*x*E*d+g*y*F,T=f*F,W=-F*E*g-d*x,X=-F*E*d+x*g;if(e===s1.Into2000)return new M1([[B,_,S],[M,Y,z],[T,W,X]]);if(e===s1.From2000)return new M1([[B,M,T],[_,Y,W],[S,z,X]]);throw"Invalid precess direction"}function fg(t){const e=.779057273264+.00273781191135448*t.ut,i=t.ut%1;let s=360*((e+i)%1);return s<0&&(s+=360),s}let o3;function wt(t){if(!o3||o3.tt!==t.tt){const e=t.tt/36525;let i=15*n2(t).ee;const s=fg(t);let c=((i+.014506+((((-368e-10*e-29956e-9)*e-44e-8)*e+1.3915817)*e+4612.156534)*e)/3600+s)%360/15;c<0&&(c+=24),o3={tt:t.tt,st:c}}return o3.st}function oo(t){const e=A0(t);return wt(e)}function Eg(t,e){const i=t[0]*n1,s=t[1]*n1,r=t[2]*n1,c=Math.hypot(i,s);let o,d,g;if(c<1e-6)o=0,d=r>0?90:-90,g=Math.abs(r)-Qd;else{const f=Math.atan2(s,i);for(o=d1*f-15*e;o<=-180;)o+=360;for(;o>180;)o-=360;let E=Math.atan2(r,c),F,x,A,y=0;for(;;){if(++y>10)throw"inverse_terra failed to converge.";F=Math.cos(E),x=Math.sin(E);const _=(gn-1)*St,S=F*F,M=x*x,Y=S+gn*M;A=Math.sqrt(Y);const z=_*x*F/A-r*F+c*x;if(Math.abs(z)<1e-8)break;const T=_*((S-M)/A-M*S*(gn-1)/(_*Y))+r*x+c*F;E-=z/T}d=d1*E;const B=St/A;Math.abs(x)>Math.abs(F)?g=r/x-gn*B:g=c/F-B}return new ea(d,o,1e3*g)}function Kr(t,e){const i=t.latitude*l0,s=Math.sin(i),r=Math.cos(i),c=1/Math.hypot(r,it*s),o=gn*c,d=t.height/1e3,g=St*c+d,f=St*o+d,E=(15*e+t.longitude)*l0,F=Math.sin(E),x=Math.cos(E);return{pos:[g*r*x/n1,g*r*F/n1,f*s/n1],vel:[-p7*g*r*F*86400/n1,p7*g*r*x*86400/n1,0]}}function Bn(t,e,i){const s=W3(e,i);return lo(s,t)}function y7(t,e,i){const s=W3(e,i);return V3(s,t)}function W3(t,e){const i=n2(t),s=i.mobl*l0,r=i.tobl*l0,c=i.dpsi*dn,o=Math.cos(s),d=Math.sin(s),g=Math.cos(r),f=Math.sin(r),E=Math.cos(c),F=Math.sin(c),x=E,A=-F*o,y=-F*d,B=F*g,_=E*o*g+d*f,S=E*d*g-o*f,M=F*f,Y=E*o*f-d*g,z=E*d*f+o*g;if(e===s1.From2000)return new M1([[x,B,M],[A,_,Y],[y,S,z]]);if(e===s1.Into2000)return new M1([[x,A,y],[B,_,S],[M,Y,z]]);throw"Invalid precess direction"}function $3(t,e,i){return i===s1.Into2000?An(Bn(t,e,i),e,i):Bn(An(t,e,i),e,i)}function Fg(t,e,i){return i===s1.Into2000?x7(y7(t,e,i),e,i):y7(x7(t,e,i),e,i)}function co(t,e){const i=wt(t),s=Kr(e,i).pos;return $3(s,t,s1.Into2000)}class U0{constructor(e,i,s,r){this.x=e,this.y=i,this.z=s,this.t=r}Length(){return Math.hypot(this.x,this.y,this.z)}}class v1{constructor(e,i,s,r,c,o,d){this.x=e,this.y=i,this.z=s,this.vx=r,this.vy=c,this.vz=o,this.t=d}}class In{constructor(e,i,s){this.lat=P0(e),this.lon=P0(i),this.dist=P0(s)}}class I3{constructor(e,i,s,r){this.ra=P0(e),this.dec=P0(i),this.dist=P0(s),this.vec=r}}function pg(t){if(!(t instanceof Array)||t.length!==3)return!1;for(let e=0;e<3;++e){if(!(t[e]instanceof Array)||t[e].length!==3)return!1;for(let i=0;i<3;++i)if(!Number.isFinite(t[e][i]))return!1}return!0}class M1{constructor(e){this.rot=e}}function Cg(t){if(!pg(t))throw"Argument must be a [3][3] array of numbers";return new M1(t)}class ho{constructor(e,i,s,r){this.azimuth=P0(e),this.altitude=P0(i),this.ra=P0(s),this.dec=P0(r)}}class go{constructor(e,i,s){this.vec=e,this.elat=P0(i),this.elon=P0(s)}}function Vr(t,e){return new U0(t[0],t[1],t[2],e)}function D7(t,e){const i=Vr(t,e),s=i.x*i.x+i.y*i.y,r=Math.sqrt(s+i.z*i.z);if(s===0){if(i.z===0)throw"Indeterminate sky coordinates";return new I3(0,i.z<0?-90:90,r,i)}let c=Wr*Math.atan2(i.y,i.x);c<0&&(c+=24);const o=d1*Math.atan2(t[2],Math.sqrt(s));return new I3(c,o,r,i)}function Fn(t,e){const i=t*l0,s=Math.cos(i),r=Math.sin(i);return[s*e[0]+r*e[1],s*e[1]-r*e[0],e[2]]}function Q3(t,e,i,s,r){let c=A0(t);zn(e),P0(i),P0(s);const o=Math.sin(e.latitude*l0),d=Math.cos(e.latitude*l0),g=Math.sin(e.longitude*l0),f=Math.cos(e.longitude*l0),E=Math.sin(s*l0),F=Math.cos(s*l0),x=Math.sin(i*lr),A=Math.cos(i*lr);let y=[d*f,d*g,o],B=[-o*f,-o*g,d],_=[g,-f,0];const S=-15*wt(c);let M=Fn(S,y),Y=Fn(S,B),z=Fn(S,_),T=[F*A,F*x,E];const W=T[0]*M[0]+T[1]*M[1]+T[2]*M[2],X=T[0]*Y[0]+T[1]*Y[1]+T[2]*Y[2],Z=T[0]*z[0]+T[1]*z[1]+T[2]*z[2];let $=Math.hypot(X,Z),e0;$>0?(e0=-d1*Math.atan2(Z,X),e0<0&&(e0+=360)):e0=0;let q=d1*Math.atan2($,W),c0=i,b=s;if(r){let u0=q,d0=bi(r,90-q);if(q-=d0,d0>0&&q>3e-4){const E0=Math.sin(q*l0),i0=Math.cos(q*l0),K=Math.sin(u0*l0),h0=Math.cos(u0*l0),G=[];for(let N=0;N<3;++N)G.push((T[N]-h0*M[N])/K*E0+M[N]*i0);$=Math.hypot(G[0],G[1]),$>0?(c0=Wr*Math.atan2(G[1],G[0]),c0<0&&(c0+=24)):c0=0,b=d1*Math.atan2(G[2],$)}}return new ho(e0,90-q,c0,b)}function zn(t){if(!(t instanceof ea))throw`Not an instance of the Observer class: ${t}`;if(P0(t.latitude),P0(t.longitude),P0(t.height),t.latitude<-90||t.latitude>90)throw`Latitude ${t.latitude} is out of range. Must be -90..+90.`;return t}class ea{constructor(e,i,s){this.latitude=e,this.longitude=i,this.height=s,zn(this)}}function mo(t){const e=A0(t).AddDays(-1/Z3),i=pn(Q1.Earth,e),s=[-i.x,-i.y,-i.z],[r,c,o]=$3(s,e,s1.From2000),d=l0*n2(e).tobl,g=Math.cos(d),f=Math.sin(d),E=new U0(r,c,o,e);return ta(E,g,f)}function Zi(t,e,i,s,r){zn(i),N3(s),N3(r);const c=A0(e),o=co(c,i),d=Xe(t,c,r),g=[d.x-o[0],d.y-o[1],d.z-o[2]];if(!s)return D7(g,c);const f=$3(g,c,s1.From2000);return D7(f,c)}function xg(t,e,i){const s=A0(t),r=wt(s);let c=Kr(e,r).pos;return i||(c=$3(c,s,s1.Into2000)),Vr(c,s)}function yg(t,e,i){const s=A0(t),r=wt(s),c=Kr(e,r),o=new v1(c.pos[0],c.pos[1],c.pos[2],c.vel[0],c.vel[1],c.vel[2],s);return i?o:Fg(o,s,s1.Into2000)}function Dg(t,e){const i=wt(t.t);let s=[t.x,t.y,t.z];return e||(s=An(s,t.t,s1.From2000),s=Bn(s,t.t,s1.From2000)),Eg(s,i)}function Ag(t,e){const i=Math.sin(t*l0),s=i*i;return 9.7803253359*(1+.00193185265241*s)/Math.sqrt(1-.00669437999013*s)*(1-(315704e-12-210269e-14*s)*e+737452e-19*e*e)}function ta(t,e,i){const s=t.x,r=t.y*e+t.z*i,c=-t.y*i+t.z*e,o=Math.hypot(s,r);let d=0;o>0&&(d=d1*Math.atan2(r,s),d<0&&(d+=360));let g=d1*Math.atan2(c,o),f=new U0(s,r,c,t.t);return new go(f,g,d)}function zi(t){const e=n2(t.t),i=[t.x,t.y,t.z],s=An(i,t.t,s1.From2000),[r,c,o]=Bn(s,t.t,s1.From2000),d=new U0(r,c,o,t.t),g=e.tobl*l0;return ta(d,Math.cos(g),Math.sin(g))}function lt(t){const e=A0(t),i=Kt(e),s=i.distance_au*Math.cos(i.geo_eclip_lat),r=[s*Math.cos(i.geo_eclip_lon),s*Math.sin(i.geo_eclip_lon),i.distance_au*Math.sin(i.geo_eclip_lat)],c=gg(e,r),o=An(c,e,s1.Into2000);return new U0(o[0],o[1],o[2],e)}function A3(t){const e=A0(t),i=Kt(e),s=i.distance_au*Math.cos(i.geo_eclip_lat),r=[s*Math.cos(i.geo_eclip_lon),s*Math.sin(i.geo_eclip_lon),i.distance_au*Math.sin(i.geo_eclip_lat)],c=n2(e),o=so(c.mobl,r),d=Bn(o,e,s1.From2000),g=Vr(d,e),f=c.tobl*l0,E=Math.cos(f),F=Math.sin(f),x=ta(g,E,F);return new In(x.elat,x.elon,i.distance_au)}function Ui(t){const e=A0(t),i=1e-5,s=e.AddDays(-i),r=e.AddDays(+i),c=lt(s),o=lt(r);return new v1((c.x+o.x)/2,(c.y+o.y)/2,(c.z+o.z)/2,(o.x-c.x)/(2*i),(o.y-c.y)/(2*i),(o.z-c.z)/(2*i),e)}function na(t){const e=A0(t),i=Ui(e),s=1+$r;return new v1(i.x/s,i.y/s,i.z/s,i.vx/s,i.vy/s,i.vz/s,e)}function I2(t,e,i){let s=1,r=0;for(let c of t){let o=0;for(let[g,f,E]of c)o+=g*Math.cos(f+e*E);let d=s*o;i&&(d%=Ze),r+=d,s*=e}return r}function Ws(t,e){let i=1,s=0,r=0,c=0;for(let o of t){let d=0,g=0;for(let[f,E,F]of o){let x=E+e*F;d+=f*F*Math.sin(x),c>0&&(g+=f*Math.cos(x))}r+=c*s*g-i*d,s=i,i*=e,++c}return r}const mn=365250,gr=0,mr=1,z3=2;function fr(t){return new l1(t[0]+44036e-11*t[1]-190919e-12*t[2],-479966e-12*t[0]+.917482137087*t[1]-.397776982902*t[2],.397776982902*t[1]+.917482137087*t[2])}function fo(t,e,i){const s=i*Math.cos(e),r=Math.cos(t),c=Math.sin(t);return[s*r,s*c,i*Math.sin(e)]}function pn(t,e){const i=e.tt/mn,s=I2(t[gr],i,!0),r=I2(t[mr],i,!1),c=I2(t[z3],i,!1),o=fo(s,r,c);return fr(o).ToAstroVector(e)}function ki(t,e){const i=e/mn,s=I2(t[gr],i,!0),r=I2(t[mr],i,!1),c=I2(t[z3],i,!1),o=Ws(t[gr],i),d=Ws(t[mr],i),g=Ws(t[z3],i),f=Math.cos(s),E=Math.sin(s),F=Math.cos(r),x=Math.sin(r),A=+(g*F*f)-c*x*f*d-c*F*E*o,y=+(g*F*E)-c*x*E*d+c*F*f*o,B=+(g*x)+c*F*d,_=fo(s,r,c),S=[A/mn,y/mn,B/mn],M=fr(_),Y=fr(S);return new ut(e,M,Y)}function c3(t,e,i,s){const r=s/(s+Hi),c=pn(Q1[i],e);t.x+=r*c.x,t.y+=r*c.y,t.z+=r*c.z}function Bg(t){const e=new U0(0,0,0,t);return c3(e,t,R.Jupiter,Cn),c3(e,t,R.Saturn,xn),c3(e,t,R.Uranus,yn),c3(e,t,R.Neptune,Dn),e}const Er=51,jg=29200,fn=146,Dt=201,w2=[[-73e4,[-26.118207232108,-14.376168177825,3.384402515299],[.0016339372163656,-.0027861699588508,-.0013585880229445]],[-700800,[41.974905202127,-.448502952929,-12.770351505989],[.00073458569351457,.0022785014891658,.00048619778602049]],[-671600,[14.706930780744,44.269110540027,9.353698474772],[-.00210001479998,.00022295915939915,.00070143443551414]],[-642400,[-29.441003929957,-6.43016153057,6.858481011305],[.00084495803960544,-.0030783914758711,-.0012106305981192]],[-613200,[39.444396946234,-6.557989760571,-13.913760296463],[.0011480029005873,.0022400006880665,.00035168075922288]],[-584e3,[20.2303809507,43.266966657189,7.382966091923],[-.0019754081700585,.00053457141292226,.00075929169129793]],[-554800,[-30.65832536462,2.093818874552,9.880531138071],[61010603013347e-18,-.0031326500935382,-.00099346125151067]],[-525600,[35.737703251673,-12.587706024764,-14.677847247563],[.0015802939375649,.0021347678412429,.00019074436384343]],[-496400,[25.466295188546,41.367478338417,5.216476873382],[-.0018054401046468,.0008328308359951,.00080260156912107]],[-467200,[-29.847174904071,10.636426313081,12.297904180106],[-.00063257063052907,-.0029969577578221,-.00074476074151596]],[-438e3,[30.774692107687,-18.236637015304,-14.945535879896],[.0020113162005465,.0019353827024189,-20937793168297e-19]],[-408800,[30.243153324028,38.656267888503,2.938501750218],[-.0016052508674468,.0011183495337525,.00083333973416824]],[-379600,[-27.288984772533,18.643162147874,14.023633623329],[-.0011856388898191,-.0027170609282181,-.00049015526126399]],[-350400,[24.519605196774,-23.245756064727,-14.626862367368],[.0024322321483154,.0016062008146048,-.00023369181613312]],[-321200,[34.505274805875,35.125338586954,.557361475637],[-.0013824391637782,.0013833397561817,.00084823598806262]],[-292e3,[-23.275363915119,25.818514298769,15.055381588598],[-.0016062295460975,-.0023395961498533,-.00024377362639479]],[-262800,[17.050384798092,-27.180376290126,-13.608963321694],[.0028175521080578,.0011358749093955,-.00049548725258825]],[-233600,[38.093671910285,30.880588383337,-1.843688067413],[-.0011317697153459,.0016128814698472,.00084177586176055]],[-204400,[-18.197852930878,31.932869934309,15.438294826279],[-.0019117272501813,-.0019146495909842,-19657304369835e-18]],[-175200,[8.528924039997,-29.618422200048,-11.805400994258],[.0031034370787005,.0005139363329243,-.00077293066202546]],[-146e3,[40.94685725864,25.904973592021,-4.256336240499],[-.00083652705194051,.0018129497136404,.0008156422827306]],[-116800,[-12.326958895325,36.881883446292,15.217158258711],[-.0021166103705038,-.001481442003599,.00017401209844705]],[-87600,[-.633258375909,-30.018759794709,-9.17193287495],[.0032016994581737,-.00025279858672148,-.0010411088271861]],[-58400,[42.936048423883,20.344685584452,-6.588027007912],[-.00050525450073192,.0019910074335507,.00077440196540269]],[-29200,[-5.975910552974,40.61180995846,14.470131723673],[-.0022184202156107,-.0010562361130164,.00033652250216211]],[0,[-9.875369580774,-27.978926224737,-5.753711824704],[.0030287533248818,-.0011276087003636,-.0012651326732361]],[29200,[43.958831986165,14.214147973292,-8.808306227163],[-.00014717608981871,.0021404187242141,.00071486567806614]],[58400,[.67813676352,43.094461639362,13.243238780721],[-.0022358226110718,-.00063233636090933,.00047664798895648]],[87600,[-18.282602096834,-23.30503958666,-1.766620508028],[.0025567245263557,-.0019902940754171,-.0013943491701082]],[116800,[43.873338744526,7.700705617215,-10.814273666425],[.00023174803055677,.0022402163127924,.00062988756452032]],[146e3,[7.392949027906,44.382678951534,11.629500214854],[-.002193281545383,-.00021751799585364,.00059556516201114]],[175200,[-24.981690229261,-16.204012851426,2.466457544298],[.001819398914958,-.0026765419531201,-.0013848283502247]],[204400,[42.530187039511,.845935508021,-12.554907527683],[.00065059779150669,.0022725657282262,.00051133743202822]],[233600,[13.999526486822,44.462363044894,9.669418486465],[-.0021079296569252,.00017533423831993,.00069128485798076]],[262800,[-29.184024803031,-7.371243995762,6.493275957928],[.00093581363109681,-.0030610357109184,-.0012364201089345]],[292e3,[39.831980671753,-6.078405766765,-13.909815358656],[.0011117769689167,.0022362097830152,.00036230548231153]],[321200,[20.294955108476,43.417190420251,7.450091985932],[-.0019742157451535,.00053102050468554,.00075938408813008]],[350400,[-30.66999230216,2.318743558955,9.973480913858],[45605107450676e-18,-.0031308219926928,-.00099066533301924]],[379600,[35.626122155983,-12.897647509224,-14.777586508444],[.0016015684949743,.0021171931182284,.00018002516202204]],[408800,[26.133186148561,41.232139187599,5.00640132622],[-.0017857704419579,.00086046232702817,.00080614690298954]],[438e3,[-29.57674022923,11.863535943587,12.631323039872],[-.00072292830060955,-.0029587820140709,-.000708242964503]],[467200,[29.910805787391,-19.159019294,-15.013363865194],[.0020871080437997,.0018848372554514,-38528655083926e-18]],[496400,[31.375957451819,38.050372720763,2.433138343754],[-.0015546055556611,.0011699815465629,.00083565439266001]],[525600,[-26.360071336928,20.662505904952,14.414696258958],[-.0013142373118349,-.0026236647854842,-.00042542017598193]],[554800,[22.599441488648,-24.508879898306,-14.484045731468],[.0025454108304806,.0014917058755191,-.00030243665086079]],[584e3,[35.877864013014,33.894226366071,-.224524636277],[-.0012941245730845,.0014560427668319,.00084762160640137]],[613200,[-21.538149762417,28.204068269761,15.321973799534],[-.001731211740901,-.0021939631314577,-.0001631691327518]],[642400,[13.971521374415,-28.339941764789,-13.083792871886],[.0029334630526035,.00091860931752944,-.00059939422488627]],[671600,[39.526942044143,28.93989736011,-2.872799527539],[-.0010068481658095,.001702113288809,.00083578230511981]],[700800,[-15.576200701394,34.399412961275,15.466033737854],[-.0020098814612884,-.0017191109825989,70414782780416e-18]],[73e4,[4.24325283709,-30.118201690825,-10.707441231349],[.0031725847067411,.0001609846120227,-.00090672150593868]]];class l1{constructor(e,i,s){this.x=e,this.y=i,this.z=s}clone(){return new l1(this.x,this.y,this.z)}ToAstroVector(e){return new U0(this.x,this.y,this.z,e)}static zero(){return new l1(0,0,0)}quadrature(){return this.x*this.x+this.y*this.y+this.z*this.z}add(e){return new l1(this.x+e.x,this.y+e.y,this.z+e.z)}sub(e){return new l1(this.x-e.x,this.y-e.y,this.z-e.z)}incr(e){this.x+=e.x,this.y+=e.y,this.z+=e.z}decr(e){this.x-=e.x,this.y-=e.y,this.z-=e.z}mul(e){return new l1(e*this.x,e*this.y,e*this.z)}div(e){return new l1(this.x/e,this.y/e,this.z/e)}mean(e){return new l1((this.x+e.x)/2,(this.y+e.y)/2,(this.z+e.z)/2)}neg(){return new l1(-this.x,-this.y,-this.z)}}class ut{constructor(e,i,s){this.tt=e,this.r=i,this.v=s}clone(){return new ut(this.tt,this.r,this.v)}sub(e){return new ut(this.tt,this.r.sub(e.r),this.v.sub(e.v))}}function vg(t){let[e,[i,s,r],[c,o,d]]=t;return new ut(e,new l1(i,s,r),new l1(c,o,d))}function Se(t,e,i,s){const r=s/(s+Hi),c=ki(Q1[i],e);return t.r.incr(c.r.mul(r)),t.v.incr(c.v.mul(r)),c}function xi(t,e,i){const s=i.sub(t),r=s.quadrature();return s.mul(e/(r*Math.sqrt(r)))}class qi{constructor(e){let i=new ut(e,new l1(0,0,0),new l1(0,0,0));this.Jupiter=Se(i,e,R.Jupiter,Cn),this.Saturn=Se(i,e,R.Saturn,xn),this.Uranus=Se(i,e,R.Uranus,yn),this.Neptune=Se(i,e,R.Neptune,Dn),this.Jupiter.r.decr(i.r),this.Jupiter.v.decr(i.v),this.Saturn.r.decr(i.r),this.Saturn.v.decr(i.v),this.Uranus.r.decr(i.r),this.Uranus.v.decr(i.v),this.Neptune.r.decr(i.r),this.Neptune.v.decr(i.v),this.Sun=new ut(e,i.r.mul(-1),i.v.mul(-1))}Acceleration(e){let i=xi(e,Hi,this.Sun.r);return i.incr(xi(e,Cn,this.Jupiter.r)),i.incr(xi(e,xn,this.Saturn.r)),i.incr(xi(e,yn,this.Uranus.r)),i.incr(xi(e,Dn,this.Neptune.r)),i}}class Xi{constructor(e,i,s,r){this.tt=e,this.r=i,this.v=s,this.a=r}clone(){return new Xi(this.tt,this.r.clone(),this.v.clone(),this.a.clone())}}class Eo{constructor(e,i){this.bary=e,this.grav=i}}function jn(t,e,i,s){return new l1(e.x+t*(i.x+t*s.x/2),e.y+t*(i.y+t*s.y/2),e.z+t*(i.z+t*s.z/2))}function Fr(t,e,i){return new l1(e.x+t*i.x,e.y+t*i.y,e.z+t*i.z)}function pr(t,e){const i=t-e.tt,s=new qi(t),r=jn(i,e.r,e.v,e.a),c=s.Acceleration(r).mean(e.a),o=jn(i,e.r,e.v,c),d=e.v.add(c.mul(i)),g=s.Acceleration(o),f=new Xi(t,o,d,g);return new Eo(s,f)}const _g=[];function Fo(t,e){const i=Math.floor(t);return i<0?0:i>=e?e-1:i}function Cr(t){const e=vg(t),i=new qi(e.tt),s=e.r.add(i.Sun.r),r=e.v.add(i.Sun.v),c=i.Acceleration(s),o=new Xi(e.tt,s,r,c);return new Eo(i,o)}function Sg(t,e){const i=w2[0][0];if(e<i||e>w2[Er-1][0])return null;const s=Fo((e-i)/jg,Er-1);if(!t[s]){const c=t[s]=[];c[0]=Cr(w2[s]).grav,c[Dt-1]=Cr(w2[s+1]).grav;let o,d=c[0].tt;for(o=1;o<Dt-1;++o)c[o]=pr(d+=fn,c[o-1]).grav;d=c[Dt-1].tt;var r=[];for(r[Dt-1]=c[Dt-1],o=Dt-2;o>0;--o)r[o]=pr(d-=fn,r[o+1]).grav;for(o=Dt-2;o>0;--o){const g=o/(Dt-1);c[o].r=c[o].r.mul(1-g).add(r[o].r.mul(g)),c[o].v=c[o].v.mul(1-g).add(r[o].v.mul(g)),c[o].a=c[o].a.mul(1-g).add(r[o].a.mul(g))}}return t[s]}function A7(t,e,i){let s=Cr(t);const r=Math.ceil((e-s.grav.tt)/i);for(let c=0;c<r;++c)s=pr(c+1===r?e:s.grav.tt+i,s.grav);return s}function ia(t,e){let i,s,r;const c=Sg(_g,t.tt);if(c){const o=Fo((t.tt-c[0].tt)/fn,Dt-1),d=c[o],g=c[o+1],f=d.a.mean(g.a),E=jn(t.tt-d.tt,d.r,d.v,f),F=Fr(t.tt-d.tt,d.v,f),x=jn(t.tt-g.tt,g.r,g.v,f),A=Fr(t.tt-g.tt,g.v,f),y=(t.tt-d.tt)/fn;i=E.mul(1-y).add(x.mul(y)),s=F.mul(1-y).add(A.mul(y))}else{let o;t.tt<w2[0][0]?o=A7(w2[0],t.tt,-fn):o=A7(w2[Er-1],t.tt,+fn),i=o.grav.r,s=o.grav.v,r=o.bary}return e&&(r||(r=new qi(t.tt)),i=i.sub(r.Sun.r),s=s.sub(r.Sun.v)),new v1(i.x,i.y,i.z,s.x,s.y,s.z,t)}const wg=new M1([[.999432765338654,-.0336771074697641,0],[.0303959428906285,.902057912352809,.430543388542295],[-.0144994559663353,-.430299169409101,.902569881273754]]),h3=[{mu:282489428433814e-21,al:[1.446213296021224,3.5515522861824],a:[[.0028210960212903,0,0]],l:[[-.0001925258348666,4.9369589722645,.01358483658305],[-970803596076e-16,4.3188796477322,.01303413843243],[-8988174165e-14,1.9080016428617,.00305064867158],[-553101050262e-16,1.4936156681569,.01293892891155]],z:[[.0041510849668155,4.089939635545,-.01290686414666],[.0006260521444113,1.446188898627,3.5515522949802],[352747346169e-16,2.1256287034578,.00012727416567]],zeta:[[.0003142172466014,2.7964219722923,-.002315096098],[904169207946e-16,1.0477061879627,-.00056920638196]]},{mu:282483274392893e-21,al:[-.3735263437471362,1.76932271112347],a:[[.0044871037804314,0,0],[4324367498e-16,1.819645606291,1.7822295777568]],l:[[.0008576433172936,4.3188693178264,.01303413830805],[.0004549582875086,1.4936531751079,.01293892881962],[.0003248939825174,1.8196494533458,1.7822295777568],[-.0003074250079334,4.9377037005911,.01358483286724],[.0001982386144784,1.907986905476,.00305101212869],[.0001834063551804,2.1402853388529,.00145009789338],[-.0001434383188452,5.622214036663,.89111478887838],[-771939140944e-16,4.300272437235,2.6733443704266]],z:[[-.0093589104136341,4.0899396509039,-.01290686414666],[.0002988994545555,5.9097265185595,1.7693227079462],[.000213903639035,2.1256289300016,.00012727418407],[.0001980963564781,2.743516829265,.00067797343009],[.0001210388158965,5.5839943711203,320566149e-13],[837042048393e-16,1.6094538368039,-.90402165808846],[823525166369e-16,1.4461887708689,3.5515522949802]],zeta:[[.0040404917832303,1.0477063169425,-.0005692064054],[.0002200421034564,3.3368857864364,-.00012491307307],[.0001662544744719,2.4134862374711,0],[590282470983e-16,5.9719930968366,-3056160225e-14]]},{mu:282498184184723e-21,al:[.2874089391143348,.878207923589328],a:[[.0071566594572575,0,0],[1393029911e-15,1.1586745884981,2.6733443704266]],l:[[.0002310797886226,2.1402987195942,.00145009784384],[-.0001828635964118,4.3188672736968,.01303413828263],[.0001512378778204,4.9373102372298,.01358483481252],[-.0001163720969778,4.300265986149,2.6733443704266],[-955478069846e-16,1.4936612842567,.01293892879857],[815246854464e-16,5.6222137132535,.89111478887838],[-801219679602e-16,1.2995922951532,1.0034433456729],[-607017260182e-16,.64978769669238,.50172167043264]],z:[[.0014289811307319,2.1256295942739,.00012727413029],[.000771093122676,5.5836330003496,320643411e-13],[.0005925911780766,4.0899396636448,-.01290686414666],[.0002045597496146,5.2713683670372,-.12523544076106],[.0001785118648258,.28743156721063,.8782079244252],[.0001131999784893,1.4462127277818,3.5515522949802],[-65877816921e-15,2.2702423990985,-1.7951364394537],[497058888328e-16,5.9096792204858,1.7693227129285]],zeta:[[.0015932721570848,3.3368862796665,-.00012491307058],[.0008533093128905,2.4133881688166,0],[.0003513347911037,5.9720789850127,-3056101771e-14],[-.0001441929255483,1.0477061764435,-.00056920632124]]},{mu:282492144889909e-21,al:[-.3620341291375704,.376486233433828],a:[[.0125879701715314,0,0],[3595204947e-15,.64965776007116,.50172168165034],[27580210652e-16,1.808423578151,3.1750660413359]],l:[[.0005586040123824,2.1404207189815,.00145009793231],[-.0003805813868176,2.7358844897853,2972965062e-14],[.0002205152863262,.649796525964,.5017216724358],[.0001877895151158,1.8084787604005,3.1750660413359],[766916975242e-16,6.2720114319755,1.3928364636651],[747056855106e-16,1.2995916202344,1.0034433456729]],z:[[.0073755808467977,5.5836071576084,3206509914e-14],[.0002065924169942,5.9209831565786,.37648624194703],[.0001589869764021,.28744006242623,.8782079244252],[-.0001561131605348,2.1257397865089,.00012727441285],[.0001486043380971,1.4462134301023,3.5515522949802],[635073108731e-16,5.9096803285954,1.7693227129285],[599351698525e-16,4.1125517584798,-2.7985797954589],[540660842731e-16,5.5390350845569,.00286834082283],[-489596900866e-16,4.6218149483338,-.62695712529519]],zeta:[[.0038422977898495,2.4133922085557,0],[.0022453891791894,5.9721736773277,-3056125525e-14],[-.0002604479450559,3.3368746306409,-.00012491309972],[33211214323e-15,5.5604137742337,.00290037688507]]}];class po{constructor(e,i,s,r){this.io=e,this.europa=i,this.ganymede=s,this.callisto=r}}function Ng(t,e,i){const s=i[0],r=i[1],c=i[2],o=i[3],d=i[4],g=i[5],f=Math.sqrt(e/(s*s*s));let E,F,x,A=r+c*Math.sin(r)-o*Math.cos(r);do E=Math.cos(A),F=Math.sin(A),x=(r-A+c*F-o*E)/(1-c*E-o*F),A+=x;while(Math.abs(x)>=1e-12);E=Math.cos(A),F=Math.sin(A);const y=o*E-c*F,B=-c*E-o*F,_=1/(1+B),M=1/(1+Math.sqrt(1-c*c-o*o)),Y=s*(E-c-M*o*y),z=s*(F-o+M*c*y),T=f*_*s*(-F-M*o*B),W=f*_*s*(+E+M*c*B),X=2*Math.sqrt(1-d*d-g*g),Z=1-2*g*g,$=1-2*d*d,e0=2*g*d;return new v1(Y*Z+z*e0,Y*e0+z*$,(d*z-Y*g)*X,T*Z+W*e0,T*e0+W*$,(d*W-T*g)*X,t)}function d3(t,e){const i=t.tt+18262.5,s=[0,e.al[0]+i*e.al[1],0,0,0,0];for(let[c,o,d]of e.a)s[0]+=c*Math.cos(o+i*d);for(let[c,o,d]of e.l)s[1]+=c*Math.sin(o+i*d);s[1]%=Ze,s[1]<0&&(s[1]+=Ze);for(let[c,o,d]of e.z){const g=o+i*d;s[2]+=c*Math.cos(g),s[3]+=c*Math.sin(g)}for(let[c,o,d]of e.zeta){const g=o+i*d;s[4]+=c*Math.cos(g),s[5]+=c*Math.sin(g)}const r=Ng(t,e.mu,s);return V3(wg,r)}function Ig(t){const e=new Ne(t);return new po(d3(e,h3[0]),d3(e,h3[1]),d3(e,h3[2]),d3(e,h3[3]))}function st(t,e){var i=A0(e);if(t in Q1)return pn(Q1[t],i);if(t===R.Pluto){const o=ia(i,!0);return new U0(o.x,o.y,o.z,i)}if(t===R.Sun)return new U0(0,0,0,i);if(t===R.Moon){var s=pn(Q1.Earth,i),r=lt(i);return new U0(s.x+r.x,s.y+r.y,s.z+r.z,i)}if(t===R.EMB){const o=pn(Q1.Earth,i),d=lt(i),g=1+$r;return new U0(o.x+d.x/g,o.y+d.y/g,o.z+d.z/g,i)}if(t===R.SSB)return Bg(i);const c=X3(t);if(c){const o=new In(c.dec,15*c.ra,c.dist);return K3(o,i)}throw`HelioVector: Unknown body "${t}"`}function z2(t,e){const i=X3(t);if(i)return i.dist;const s=A0(e);return t in Q1?I2(Q1[t][z3],s.tt/mn,!1):st(t,s).Length()}function Co(t,e){let i=e,s=0;for(let r=0;r<10;++r){const c=t(i),o=c.Length()/Z3;if(o>1)throw"Object is too distant for light-travel solver.";const d=e.AddDays(-o);if(s=Math.abs(d.tt-i.tt),s<1e-9)return c;i=d}throw`Light-travel time solver did not converge: dt = ${s}`}class zg{constructor(e,i,s,r){this.observerBody=e,this.targetBody=i,this.aberration=s,this.observerPos=r}Position(e){this.aberration&&(this.observerPos=st(this.observerBody,e));const i=st(this.targetBody,e);return new U0(i.x-this.observerPos.x,i.y-this.observerPos.y,i.z-this.observerPos.z,e)}}function xo(t,e,i,s){N3(s);const r=A0(t);if(X3(i)){const d=st(i,r);if(s){const f=k3(e,r),E=new U0(d.x-f.x,d.y-f.y,d.z-f.z,r),F=Z3/E.Length();return new U0(E.x+f.vx/F,E.y+f.vy/F,E.z+f.vz/F,r)}const g=st(e,r);return new U0(d.x-g.x,d.y-g.y,d.z-g.z,r)}let c;s?c=new U0(0,0,0,r):c=st(e,r);const o=new zg(e,i,s,c);return Co(d=>o.Position(d),r)}function Xe(t,e,i){N3(i);const s=A0(e);switch(t){case R.Earth:return new U0(0,0,0,s);case R.Moon:return lt(s);default:const r=xo(s,R.Earth,t,i);return r.t=s,r}}function _2(t,e){return new v1(t.r.x,t.r.y,t.r.z,t.v.x,t.v.y,t.v.z,e)}function kg(t,e){const i=A0(e);if(t===R.SSB)return new v1(0,0,0,0,0,0,i);if(t===R.Pluto)return ia(i,!1);const s=new qi(i.tt);switch(t){case R.Sun:return _2(s.Sun,i);case R.Jupiter:return _2(s.Jupiter,i);case R.Saturn:return _2(s.Saturn,i);case R.Uranus:return _2(s.Uranus,i);case R.Neptune:return _2(s.Neptune,i);case R.Moon:case R.EMB:const r=ki(Q1[R.Earth],i.tt),c=t===R.Moon?Ui(i):na(i);return new v1(c.x+s.Sun.r.x+r.r.x,c.y+s.Sun.r.y+r.r.y,c.z+s.Sun.r.z+r.r.z,c.vx+s.Sun.v.x+r.v.x,c.vy+s.Sun.v.y+r.v.y,c.vz+s.Sun.v.z+r.v.z,i)}if(t in Q1){const r=ki(Q1[t],i.tt);return new v1(s.Sun.r.x+r.r.x,s.Sun.r.y+r.r.y,s.Sun.r.z+r.r.z,s.Sun.v.x+r.v.x,s.Sun.v.y+r.v.y,s.Sun.v.z+r.v.z,i)}throw`BaryState: Unsupported body "${t}"`}function k3(t,e){const i=A0(e);switch(t){case R.Sun:return new v1(0,0,0,0,0,0,i);case R.SSB:const s=new qi(i.tt);return new v1(-s.Sun.r.x,-s.Sun.r.y,-s.Sun.r.z,-s.Sun.v.x,-s.Sun.v.y,-s.Sun.v.z,i);case R.Mercury:case R.Venus:case R.Earth:case R.Mars:case R.Jupiter:case R.Saturn:case R.Uranus:case R.Neptune:const r=ki(Q1[t],i.tt);return _2(r,i);case R.Pluto:return ia(i,!0);case R.Moon:case R.EMB:const c=ki(Q1.Earth,i.tt),o=t==R.Moon?Ui(i):na(i);return new v1(o.x+c.r.x,o.y+c.r.y,o.z+c.r.z,o.vx+c.v.x,o.vy+c.v.y,o.vz+c.v.z,i);default:if(X3(t)){const d=st(t,i);return new v1(d.x,d.y,d.z,0,0,0,i)}throw`HelioState: Unsupported body "${t}"`}}function Mg(t,e,i,s,r){let c=(r+i)/2-s,o=(r-i)/2,d=s,g;if(c==0){if(o==0||(g=-d/o,g<-1||g>1))return null}else{let F=o*o-4*c*d;if(F<=0)return null;let x=Math.sqrt(F),A=(-o+x)/(2*c),y=(-o-x)/(2*c);if(-1<=A&&A<=1){if(-1<=y&&y<=1)return null;g=A}else if(-1<=y&&y<=1)g=y;else return null}let f=t+g*e,E=(2*c*g+o)/e;return{t:f,df_dt:E}}function T1(t,e,i,s){const r=P0(s&&s.dt_tolerance_seconds||1),c=Math.abs(r/U3);let o=s&&s.init_f1||t(e),d=s&&s.init_f2||t(i),g=NaN,f=0,E=s&&s.iter_limit||20,F=!0;for(;;){if(++f>E)throw"Excessive iteration in Search()";let x=hg(e,i,.5),A=x.ut-e.ut;if(Math.abs(A)<c)return x;F?g=t(x):F=!0;let y=Mg(x.ut,i.ut-x.ut,o,g,d);if(y){let B=A0(y.t),_=t(B);if(y.df_dt!==0){if(Math.abs(_/y.df_dt)<c)return B;let S=1.2*Math.abs(_/y.df_dt);if(S<A/10){let M=B.AddDays(-S),Y=B.AddDays(+S);if((M.ut-e.ut)*(M.ut-i.ut)<0&&(Y.ut-e.ut)*(Y.ut-i.ut)<0){let z=t(M),T=t(Y);if(z<0&&T>=0){o=z,d=T,e=M,i=Y,g=_,F=!1;continue}}}}}if(o<0&&g>=0){i=x,d=g;continue}if(g<0&&d>=0){e=x,o=g;continue}return null}}function kn(t){let e=t;for(;e<=-180;)e+=360;for(;e>180;)e-=360;return e}function hn(t){for(;t<0;)t+=360;for(;t>=360;)t-=360;return t}function yo(t,e,i){function s(o){let d=mo(o);return kn(d.elon-t)}P0(t),P0(i);let r=A0(e),c=r.AddDays(i);return T1(s,r,c,{dt_tolerance_seconds:.01})}function ua(t,e,i){if(t===R.Earth||e===R.Earth)throw"The Earth does not have a longitude as seen from itself.";const s=A0(i),r=Xe(t,s,!1),c=zi(r),o=Xe(e,s,!1),d=zi(o);return hn(c.elon-d.elon)}function vn(t,e){if(t==R.Earth)throw"The Earth does not have an angle as seen from itself.";const i=A0(e),s=Xe(R.Sun,i,!0),r=Xe(t,i,!0);return q3(s,r)}function k2(t,e){if(t===R.Sun)throw"Cannot calculate heliocentric longitude of the Sun.";const i=st(t,e);return zi(i).elon}function Tg(t,e,i,s){let r,c=0,o=0,d=0;switch(t){case R.Mercury:r=-.6,c=4.98,o=-4.88,d=3.02;break;case R.Venus:e<163.6?(r=-4.47,c=1.03,o=.57,d=.13):(r=.98,c=-1.02);break;case R.Mars:r=-1.52,c=1.6;break;case R.Jupiter:r=-9.4,c=.5;break;case R.Uranus:r=-7.19,c=.25;break;case R.Neptune:r=-6.87;break;case R.Pluto:r=-1,c=4;break;default:throw`VisualMagnitude: unsupported body ${t}`}const g=e/100;let f=r+g*(c+g*(o+g*d));return f+=5*Math.log10(i*s),f}function bg(t,e,i,s,r){const c=zi(s),o=l0*28.06,d=l0*(169.51+382e-7*r.tt),g=l0*c.elat,f=l0*c.elon,E=Math.asin(Math.sin(g)*Math.cos(o)-Math.cos(g)*Math.sin(o)*Math.sin(f-d)),F=Math.sin(Math.abs(E));let x=-9+.044*t;return x+=F*(-2.6+1.2*F),x+=5*Math.log10(e*i),{mag:x,ring_tilt:d1*E}}function Og(t,e,i){let s=t*l0,r=s*s,c=r*r,o=-12.717+1.49*Math.abs(s)+.0431*c;const d=385000.6/n1;let g=i/d;return o+=5*Math.log10(e*g),o}class Do{constructor(e,i,s,r,c,o,d,g){this.time=e,this.mag=i,this.phase_angle=s,this.helio_dist=r,this.geo_dist=c,this.gc=o,this.hc=d,this.ring_tilt=g,this.phase_fraction=(1+Math.cos(l0*s))/2}}function B3(t,e){if(t===R.Earth)throw"The illumination of the Earth is not defined.";const i=A0(e),s=pn(Q1.Earth,i);let r,c,o,d;t===R.Sun?(o=new U0(-s.x,-s.y,-s.z,i),c=new U0(0,0,0,i),r=0):(t===R.Moon?(o=lt(i),c=new U0(s.x+o.x,s.y+o.y,s.z+o.z,i)):(c=st(t,e),o=new U0(c.x-s.x,c.y-s.y,c.z-s.z,i)),r=q3(o,c));let g=o.Length(),f=c.Length(),E;if(t===R.Sun)d=Jd+5*Math.log10(g);else if(t===R.Moon)d=Og(r,f,g);else if(t===R.Saturn){const F=bg(r,f,g,o,i);d=F.mag,E=F.ring_tilt}else d=Tg(t,r,f,g);return new Do(i,d,r,f,g,o,c,E)}function Mi(t){if(t===R.Earth)throw"The Earth does not have a synodic period as seen from itself.";if(t===R.Moon)return S3;let e=at[t];if(!e)throw`Not a valid planet name: ${t}`;const i=at.Earth.OrbitalPeriod,s=e.OrbitalPeriod;return Math.abs(i/(i/s-1))}function _n(t,e,i){P0(e);const s=at[t];if(!s)throw`Cannot search relative longitude because body is not a planet: ${t}`;if(t===R.Earth)throw"Cannot search relative longitude for the Earth (it is always 0)";const r=s.OrbitalPeriod>at.Earth.OrbitalPeriod?1:-1;function c(f){const E=k2(t,f),F=k2(R.Earth,f),x=r*(F-E);return kn(x-e)}let o=Mi(t),d=A0(i),g=c(d);g>0&&(g-=360);for(let f=0;f<100;++f){let E=-g/360*o;if(d=d.AddDays(E),Math.abs(E)*U3<1)return d;let F=g;if(g=c(d),Math.abs(F)<30&&F!==g){let x=F/(F-g);x>.5&&x<2&&(o*=x)}}throw`Relative longitude search failed to converge for ${t} near ${d.toString()} (error_angle = ${g}).`}function sa(t){return ua(R.Moon,R.Sun,t)}function Ji(t,e,i){function s(x){let A=sa(x);return kn(A-t)}P0(t),P0(i);const r=1.5,c=A0(e);let o=s(c),d,g,f;if(i<0){if(o<0&&(o+=360),d=-(S3*o)/360,f=d+r,f<i)return null;g=Math.max(i,d-r)}else{if(o>0&&(o-=360),d=-(S3*o)/360,g=d-r,g>i)return null;f=Math.min(i,d+r)}const E=c.AddDays(g),F=c.AddDays(f);return T1(s,E,F,{dt_tolerance_seconds:.1})}class Ao{constructor(e,i){this.quarter=e,this.time=i}}function Bo(t){let e=sa(t),s=(Math.floor(e/90)+1)%4,r=Ji(90*s,t,10);if(!r)throw"Cannot find moon quarter";return new Ao(s,r)}function Pg(t){let e=new Date(t.time.date.getTime()+6*Wd);return Bo(e)}class jo{constructor(e,i,s){this.pressure=e,this.temperature=i,this.density=s}}function vo(t){if(!Number.isFinite(t)||t<-500||t>1e5)throw`Invalid elevation: ${t}`;let r,c;t<=11e3?(r=288.15-.0065*t,c=101325*Math.pow(288.15/r,-5.25577)):t<=2e4?(r=216.65,c=22632*Math.exp(-.00015768832*(t-11e3))):(r=216.65+.001*(t-2e4),c=5474.87*Math.pow(216.65/r,34.16319));const o=c/r/(101325/288.15);return new jo(c,r,o)}function Yg(t,e){const i=t.latitude*l0,s=Math.sin(i),r=Math.cos(i),c=1/Math.hypot(r,s*it),o=c*(it*it),d=(t.height-e)/1e3,g=St*c+d,f=St*o+d,E=1e3*Math.hypot(g*r,f*s),F=.175*Math.pow(1-.0065/283.15*(t.height-2/3*e),3.256);return d1*-(Math.sqrt(2*(1-F)*e/E)/(1-F))}function Lg(t){switch(t){case R.Sun:return Vl;case R.Moon:return tg;default:return 0}}function Rg(t,e,i,s,r,c=0){if(!Number.isFinite(c)||c<0)throw`Invalid value for metersAboveGround: ${c}`;const o=Lg(t),d=vo(e.height-c),f=Yg(e,c)-ig*d.density;return _o(t,e,i,s,r,o,f)}function Gg(t,e,i,s,r,c){if(!Number.isFinite(c)||c<-90||c>90)throw`Invalid altitude angle: ${c}`;return _o(t,e,i,s,r,0,c)}class Hg{constructor(e,i,s,r){this.tx=e,this.ty=i,this.ax=s,this.ay=r}}function xr(t,e,i,s,r,c,o){if(c<0&&o>=0)return new Hg(s,r,c,o);if(c>=0&&o<0)return null;if(t>17)throw"Excessive recursion in rise/set ascent search.";const d=r.ut-s.ut;if(d*U3<1||Math.min(Math.abs(c),Math.abs(o))>i*(d/2))return null;const f=new Ne((s.ut+r.ut)/2),E=e(f);return xr(1+t,e,i,s,f,c,E)||xr(1+t,e,i,f,r,E,o)}function Zg(t,e){if(e<-90||e>90)throw`Invalid geographic latitude: ${e}`;let i,s;switch(t){case R.Moon:i=4.5,s=8.2;break;case R.Sun:i=.8,s=.5;break;case R.Mercury:i=-1.6,s=1;break;case R.Venus:i=-.8,s=.6;break;case R.Mars:i=-.5,s=.4;break;case R.Jupiter:case R.Saturn:case R.Uranus:case R.Neptune:case R.Pluto:i=-.2,s=.2;break;case R.Star1:case R.Star2:case R.Star3:case R.Star4:case R.Star5:case R.Star6:case R.Star7:case R.Star8:i=-.008,s=.008;break;default:throw`Body not allowed for altitude search: ${t}`}const r=l0*e;return Math.abs((360/Kl-i)*Math.cos(r))+Math.abs(s*Math.sin(r))}function _o(t,e,i,s,r,c,o){if(zn(e),P0(r),P0(c),P0(o),o<-90||o>90)throw`Invalid target altitude angle: ${o}`;const d=Zg(t,e.latitude);function g(y){const B=Zi(t,y,e,!0,!0),S=Q3(y,e,B.ra,B.dec).altitude+d1*Math.asin(c/B.dist);return i*(S-o)}const f=A0(s);let E=f,F=f,x=g(E),A=x;for(;;){r<0?(E=F.AddDays(-.42),x=g(E)):(F=E.AddDays(.42),A=g(F));const y=xr(0,g,d,E,F,x,A);if(y){const B=T1(g,y.tx,y.ty,{dt_tolerance_seconds:.1,init_f1:y.ax,init_f2:y.ay});if(B){if(r<0){if(B.ut<f.ut+r)return null}else if(B.ut>f.ut+r)return null;return B}throw`Rise/set search failed after finding ascent: t1=${E}, t2=${F}, a1=${x}, a2=${A}`}if(r<0){if(E.ut<f.ut+r)return null;F=E,A=x}else{if(F.ut>f.ut+r)return null;E=F,x=A}}}class So{constructor(e,i){this.time=e,this.hor=i}}function Ug(t,e,i,s,r=1){zn(e);let c=A0(s),o=0;if(t===R.Earth)throw"Cannot search for hour angle of the Earth.";if(P0(i),i<0||i>=24)throw`Invalid hour angle ${i}`;if(P0(r),r===0)throw"Direction must be positive or negative.";for(;;){++o;let d=wt(c),g=Zi(t,c,e,!0,!0),f=(i+g.ra-e.longitude/15-d)%24;if(o===1?r>0?f<0&&(f+=24):f>0&&(f-=24):f<-12?f+=24:f>12&&(f-=24),Math.abs(f)*3600<.1){const F=Q3(c,e,g.ra,g.dec,"normal");return new So(c,F)}let E=f/24*Kl;c=c.AddDays(E)}}function qg(t,e,i){const s=A0(e),r=oo(s),c=Zi(t,s,i,!0,!0);let o=(i.longitude/15+r-c.ra)%24;return o<0&&(o+=24),o}class wo{constructor(e,i,s,r){this.mar_equinox=e,this.jun_solstice=i,this.sep_equinox=s,this.dec_solstice=r}}function Xg(t){function e(o,d,g){let f=new Date(Date.UTC(t,d-1,g)),E=yo(o,f,20);if(!E)throw`Cannot find season change near ${f.toISOString()}`;return E}if(t instanceof Date&&Number.isFinite(t.getTime())&&(t=t.getUTCFullYear()),!Number.isSafeInteger(t))throw`Cannot calculate seasons because year argument ${t} is neither a Date nor a safe integer.`;let i=e(0,3,10),s=e(90,6,10),r=e(180,9,10),c=e(270,12,10);return new wo(i,s,r,c)}class No{constructor(e,i,s,r){this.time=e,this.visibility=i,this.elongation=s,this.ecliptic_separation=r}}function Io(t,e){let i=A0(e),s=ua(t,R.Sun,i),r;s>180?(r="morning",s=360-s):r="evening";let c=vn(t,i);return new No(i,r,c,s)}function Jg(t,e){function s(g){const f=g.AddDays(-.005),E=g.AddDays(.01/2);let F=vn(t,f),x=vn(t,E);return(F-x)/.01}let r=A0(e);const o={Mercury:{s1:50,s2:85},Venus:{s1:40,s2:50}}[t];if(!o)throw"SearchMaxElongation works for Mercury and Venus only.";let d=0;for(;++d<=2;){let g=k2(t,r),f=k2(R.Earth,r),E=kn(g-f),F,x,A;E>=-o.s1&&E<+o.s1?(A=0,F=+o.s1,x=+o.s2):E>=+o.s2||E<-o.s2?(A=0,F=-o.s2,x=-o.s1):E>=0?(A=-Mi(t)/4,F=+o.s1,x=+o.s2):(A=-Mi(t)/4,F=-o.s2,x=-o.s1);let y=r.AddDays(A),B=_n(t,F,y),_=_n(t,x,B),S=s(B);if(S>=0)throw`SearchMaxElongation: internal error: m1 = ${S}`;let M=s(_);if(M<=0)throw`SearchMaxElongation: internal error: m2 = ${M}`;let Y=T1(s,B,_,{init_f1:S,init_f2:M,dt_tolerance_seconds:10});if(!Y)throw`SearchMaxElongation: failed search iter ${d} (t1=${B.toString()}, t2=${_.toString()})`;if(Y.tt>=r.tt)return Io(t,Y);r=_.AddDays(1)}throw"SearchMaxElongation: failed to find event after 2 tries."}function Wg(t,e){if(t!==R.Venus)throw"SearchPeakMagnitude currently works for Venus only.";const i=.01;function s(o){const d=o.AddDays(-i/2),g=o.AddDays(+i/2),f=B3(t,d).mag;return(B3(t,g).mag-f)/i}let r=A0(e),c=0;for(;++c<=2;){let o=k2(t,r),d=k2(R.Earth,r),g=kn(o-d),f,E,F;g>=-10&&g<10?(F=0,f=10,E=30):g>=30||g<-30?(F=0,f=-30,E=-10):g>=0?(F=-Mi(t)/4,f=10,E=30):(F=-Mi(t)/4,f=-30,E=-10);let x=r.AddDays(F),A=_n(t,f,x),y=_n(t,E,A),B=s(A);if(B>=0)throw`SearchPeakMagnitude: internal error: m1 = ${B}`;let _=s(y);if(_<=0)throw`SearchPeakMagnitude: internal error: m2 = ${_}`;let S=T1(s,A,y,{init_f1:B,init_f2:_,dt_tolerance_seconds:10});if(!S)throw`SearchPeakMagnitude: failed search iter ${c} (t1=${A.toString()}, t2=${y.toString()})`;if(S.tt>=r.tt)return B3(t,S);r=y.AddDays(1)}throw"SearchPeakMagnitude: failed to find event after 2 tries."}var Vt;(function(t){t[t.Pericenter=0]="Pericenter",t[t.Apocenter=1]="Apocenter"})(Vt||(Vt={}));class Ti{constructor(e,i,s){this.time=e,this.kind=i,this.dist_au=s,this.dist_km=s*n1}}function zo(t){function i(g){let f=g.AddDays(-5e-4),E=g.AddDays(.001/2),F=Kt(f).distance_au;return(Kt(E).distance_au-F)/.001}function s(g){return-i(g)}let r=A0(t),c=i(r);const o=5;for(var d=0;d*o<2*S3;++d){let g=r.AddDays(o),f=i(g);if(c*f<=0){if(c<0||f>0){let E=T1(i,r,g,{init_f1:c,init_f2:f});if(!E)throw"SearchLunarApsis INTERNAL ERROR: perigee search failed!";let F=Kt(E).distance_au;return new Ti(E,0,F)}if(c>0||f<0){let E=T1(s,r,g,{init_f1:-c,init_f2:-f});if(!E)throw"SearchLunarApsis INTERNAL ERROR: apogee search failed!";let F=Kt(E).distance_au;return new Ti(E,1,F)}throw"SearchLunarApsis INTERNAL ERROR: cannot classify apsis event!"}r=g,c=f}throw"SearchLunarApsis INTERNAL ERROR: could not find apsis within 2 synodic months of start date."}function $g(t){let i=zo(t.time.AddDays(11));if(i.kind+t.kind!==1)throw`NextLunarApsis INTERNAL ERROR: did not find alternating apogee/perigee: prev=${t.kind} @ ${t.time.toString()}, next=${i.kind} @ ${i.time.toString()}`;return i}function B7(t,e,i,s){const r=e===Vt.Apocenter?1:-1,c=10;for(;;){const o=s/(c-1);if(o<1/1440){const f=i.AddDays(o/2),E=z2(t,f);return new Ti(f,e,E)}let d=-1,g=0;for(let f=0;f<c;++f){const E=i.AddDays(f*o),F=r*z2(t,E);(f==0||F>g)&&(d=f,g=F)}i=i.AddDays((d-1)*o),s=2*o}}function Qg(t,e){const s=e.AddDays(at[t].OrbitalPeriod*-.08333333333333333),r=e.AddDays(at[t].OrbitalPeriod*(270/360));let c=s,o=s,d=-1,g=-1;const f=(r.ut-s.ut)/99;for(let x=0;x<100;++x){const A=s.AddDays(x*f),y=z2(t,A);x===0?g=d=y:(y>g&&(g=y,o=A),y<d&&(d=y,c=A))}const E=B7(t,0,c.AddDays(-2*f),4*f),F=B7(t,1,o.AddDays(-2*f),4*f);if(E.time.tt>=e.tt)return F.time.tt>=e.tt&&F.time.tt<E.time.tt?F:E;if(F.time.tt>=e.tt)return F;throw"Internal error: failed to find Neptune apsis."}function ko(t,e){if(e=A0(e),t===R.Neptune||t===R.Pluto)return Qg(t,e);function i(g){let E=g.AddDays(-5e-4),F=g.AddDays(.001/2),x=z2(t,E);return(z2(t,F)-x)/.001}function s(g){return-i(g)}const r=at[t].OrbitalPeriod,c=r/6;let o=e,d=i(o);for(let g=0;g*c<2*r;++g){const f=o.AddDays(c),E=i(f);if(d*E<=0){let F,x;if(d<0||E>0)F=i,x=Vt.Pericenter;else if(d>0||E<0)F=s,x=Vt.Apocenter;else throw"Internal error with slopes in SearchPlanetApsis";const A=T1(F,o,f);if(!A)throw"Failed to find slope transition in planetary apsis search.";const y=z2(t,A);return new Ti(A,x,y)}o=f,d=E}throw"Internal error: should have found planetary apsis within 2 orbital periods."}function Kg(t,e){if(e.kind!==Vt.Pericenter&&e.kind!==Vt.Apocenter)throw`Invalid apsis kind: ${e.kind}`;const i=.25*at[t].OrbitalPeriod,s=e.time.AddDays(i),r=ko(t,s);if(r.kind+e.kind!==1)throw`Internal error: previous apsis was ${e.kind}, but found ${r.kind} for next apsis.`;return r}function Mn(t){return new M1([[t.rot[0][0],t.rot[1][0],t.rot[2][0]],[t.rot[0][1],t.rot[1][1],t.rot[2][1]],[t.rot[0][2],t.rot[1][2],t.rot[2][2]]])}function i2(t,e){return new M1([[e.rot[0][0]*t.rot[0][0]+e.rot[1][0]*t.rot[0][1]+e.rot[2][0]*t.rot[0][2],e.rot[0][1]*t.rot[0][0]+e.rot[1][1]*t.rot[0][1]+e.rot[2][1]*t.rot[0][2],e.rot[0][2]*t.rot[0][0]+e.rot[1][2]*t.rot[0][1]+e.rot[2][2]*t.rot[0][2]],[e.rot[0][0]*t.rot[1][0]+e.rot[1][0]*t.rot[1][1]+e.rot[2][0]*t.rot[1][2],e.rot[0][1]*t.rot[1][0]+e.rot[1][1]*t.rot[1][1]+e.rot[2][1]*t.rot[1][2],e.rot[0][2]*t.rot[1][0]+e.rot[1][2]*t.rot[1][1]+e.rot[2][2]*t.rot[1][2]],[e.rot[0][0]*t.rot[2][0]+e.rot[1][0]*t.rot[2][1]+e.rot[2][0]*t.rot[2][2],e.rot[0][1]*t.rot[2][0]+e.rot[1][1]*t.rot[2][1]+e.rot[2][1]*t.rot[2][2],e.rot[0][2]*t.rot[2][0]+e.rot[1][2]*t.rot[2][1]+e.rot[2][2]*t.rot[2][2]]])}function Vg(){return new M1([[1,0,0],[0,1,0],[0,0,1]])}function em(t,e,i){if(e!==0&&e!==1&&e!==2)throw`Invalid axis ${e}. Must be [0, 1, 2].`;const s=P0(i)*l0,r=Math.cos(s),c=Math.sin(s),o=(e+1)%3,d=(e+2)%3,g=e;let f=[[0,0,0],[0,0,0],[0,0,0]];return f[o][o]=r*t.rot[o][o]-c*t.rot[o][d],f[o][d]=c*t.rot[o][o]+r*t.rot[o][d],f[o][g]=t.rot[o][g],f[d][o]=r*t.rot[d][o]-c*t.rot[d][d],f[d][d]=c*t.rot[d][o]+r*t.rot[d][d],f[d][g]=t.rot[d][g],f[g][o]=r*t.rot[g][o]-c*t.rot[g][d],f[g][d]=c*t.rot[g][o]+r*t.rot[g][d],f[g][g]=t.rot[g][g],new M1(f)}function K3(t,e){e=A0(e);const i=t.lat*l0,s=t.lon*l0,r=t.dist*Math.cos(i);return new U0(r*Math.cos(s),r*Math.sin(s),t.dist*Math.sin(i),e)}function ra(t){const e=aa(t);return new I3(e.lon/15,e.lat,e.dist,t)}function aa(t){const e=t.x*t.x+t.y*t.y,i=Math.sqrt(e+t.z*t.z);let s,r;if(e===0){if(t.z===0)throw"Zero-length vector not allowed.";r=0,s=t.z<0?-90:90}else r=d1*Math.atan2(t.y,t.x),r<0&&(r+=360),s=d1*Math.atan2(t.z,Math.sqrt(e));return new In(s,r,i)}function Mo(t){return t=360-t,t>=360?t-=360:t<0&&(t+=360),t}function tm(t,e){const i=aa(t);return i.lon=Mo(i.lon),i.lat+=bi(e,i.lat),i}function nm(t,e,i){e=A0(e);const s=Mo(t.lon),r=t.lat+To(i,t.lat),c=new In(r,s,t.dist);return K3(c,e)}function bi(t,e){let i;if(P0(e),e<-90||e>90)return 0;if(t==="normal"||t==="jplhor"){let s=e;s<-1&&(s=-1),i=1.02/Math.tan((s+10.3/(s+5.11))*l0)/60,t==="normal"&&e<-1&&(i*=(e+90)/89)}else if(!t)i=0;else throw`Invalid refraction option: ${t}`;return i}function To(t,e){if(e<-90||e>90)return 0;let i=e-bi(t,e);for(;;){let s=i+bi(t,i)-e;if(Math.abs(s)<1e-14)return i-e;i-=s}}function Si(t,e){return new U0(t.rot[0][0]*e.x+t.rot[1][0]*e.y+t.rot[2][0]*e.z,t.rot[0][1]*e.x+t.rot[1][1]*e.y+t.rot[2][1]*e.z,t.rot[0][2]*e.x+t.rot[1][2]*e.y+t.rot[2][2]*e.z,e.t)}function V3(t,e){return new v1(t.rot[0][0]*e.x+t.rot[1][0]*e.y+t.rot[2][0]*e.z,t.rot[0][1]*e.x+t.rot[1][1]*e.y+t.rot[2][1]*e.z,t.rot[0][2]*e.x+t.rot[1][2]*e.y+t.rot[2][2]*e.z,t.rot[0][0]*e.vx+t.rot[1][0]*e.vy+t.rot[2][0]*e.vz,t.rot[0][1]*e.vx+t.rot[1][1]*e.vy+t.rot[2][1]*e.vz,t.rot[0][2]*e.vx+t.rot[1][2]*e.vy+t.rot[2][2]*e.vz,e.t)}function bo(){return new M1([[1,0,0],[0,.9174821430670688,-.3977769691083922],[0,.3977769691083922,.9174821430670688]])}function im(){return new M1([[1,0,0],[0,.9174821430670688,.3977769691083922],[0,-.3977769691083922,.9174821430670688]])}function eu(t){t=A0(t);const e=J3(t,s1.From2000),i=W3(t,s1.From2000);return i2(e,i)}function um(t){const e=A0(t),i=eu(e),s=Ho(e);return i2(i,s)}function sm(t){const e=A0(t),i=Go(e),s=tu(e);return i2(i,s)}function tu(t){t=A0(t);const e=W3(t,s1.Into2000),i=J3(t,s1.Into2000);return i2(e,i)}function la(t,e){t=A0(t);const i=Math.sin(e.latitude*l0),s=Math.cos(e.latitude*l0),r=Math.sin(e.longitude*l0),c=Math.cos(e.longitude*l0),o=[s*c,s*r,i],d=[-i*c,-i*r,s],g=[r,-c,0],f=-15*wt(t),E=Fn(f,o),F=Fn(f,d),x=Fn(f,g);return new M1([[F[0],x[0],E[0]],[F[1],x[1],E[1]],[F[2],x[2],E[2]]])}function Oo(t,e){const i=la(t,e);return Mn(i)}function Po(t,e){t=A0(t);const i=Oo(t,e),s=tu(t);return i2(i,s)}function rm(t,e){const i=Po(t,e);return Mn(i)}function Yo(t){const e=tu(t),i=bo();return i2(e,i)}function Lo(t){const e=Yo(t);return Mn(e)}function Ro(t,e){t=A0(t);const i=Lo(t),s=la(t,e);return i2(i,s)}function am(t,e){const i=Ro(t,e);return Mn(i)}function lm(){return new M1([[-.0548624779711344,.4941095946388765,-.8676668813529025],[-.8734572784246782,-.4447938112296831,-.1980677870294097],[-.483800052994852,.7470034631630423,.4559861124470794]])}function om(){return new M1([[-.0548624779711344,-.8734572784246782,-.483800052994852],[.4941095946388765,-.4447938112296831,.7470034631630423],[-.8676668813529025,-.1980677870294097,.4559861124470794]])}function Go(t){const i=n2(A0(t)).tobl*l0,s=Math.cos(i),r=Math.sin(i);return new M1([[1,0,0],[0,+s,+r],[0,-r,+s]])}function Ho(t){const i=n2(A0(t)).tobl*l0,s=Math.cos(i),r=Math.sin(i);return new M1([[1,0,0],[0,+s,-r],[0,+r,+s]])}const cm=[["And","Andromeda"],["Ant","Antila"],["Aps","Apus"],["Aql","Aquila"],["Aqr","Aquarius"],["Ara","Ara"],["Ari","Aries"],["Aur","Auriga"],["Boo","Bootes"],["Cae","Caelum"],["Cam","Camelopardis"],["Cap","Capricornus"],["Car","Carina"],["Cas","Cassiopeia"],["Cen","Centaurus"],["Cep","Cepheus"],["Cet","Cetus"],["Cha","Chamaeleon"],["Cir","Circinus"],["CMa","Canis Major"],["CMi","Canis Minor"],["Cnc","Cancer"],["Col","Columba"],["Com","Coma Berenices"],["CrA","Corona Australis"],["CrB","Corona Borealis"],["Crt","Crater"],["Cru","Crux"],["Crv","Corvus"],["CVn","Canes Venatici"],["Cyg","Cygnus"],["Del","Delphinus"],["Dor","Dorado"],["Dra","Draco"],["Equ","Equuleus"],["Eri","Eridanus"],["For","Fornax"],["Gem","Gemini"],["Gru","Grus"],["Her","Hercules"],["Hor","Horologium"],["Hya","Hydra"],["Hyi","Hydrus"],["Ind","Indus"],["Lac","Lacerta"],["Leo","Leo"],["Lep","Lepus"],["Lib","Libra"],["LMi","Leo Minor"],["Lup","Lupus"],["Lyn","Lynx"],["Lyr","Lyra"],["Men","Mensa"],["Mic","Microscopium"],["Mon","Monoceros"],["Mus","Musca"],["Nor","Norma"],["Oct","Octans"],["Oph","Ophiuchus"],["Ori","Orion"],["Pav","Pavo"],["Peg","Pegasus"],["Per","Perseus"],["Phe","Phoenix"],["Pic","Pictor"],["PsA","Pisces Austrinus"],["Psc","Pisces"],["Pup","Puppis"],["Pyx","Pyxis"],["Ret","Reticulum"],["Scl","Sculptor"],["Sco","Scorpius"],["Sct","Scutum"],["Ser","Serpens"],["Sex","Sextans"],["Sge","Sagitta"],["Sgr","Sagittarius"],["Tau","Taurus"],["Tel","Telescopium"],["TrA","Triangulum Australe"],["Tri","Triangulum"],["Tuc","Tucana"],["UMa","Ursa Major"],["UMi","Ursa Minor"],["Vel","Vela"],["Vir","Virgo"],["Vol","Volans"],["Vul","Vulpecula"]],hm=[[83,0,8640,2112],[83,2880,5220,2076],[83,7560,8280,2068],[83,6480,7560,2064],[15,0,2880,2040],[10,3300,3840,1968],[15,0,1800,1920],[10,3840,5220,1920],[83,6300,6480,1920],[33,7260,7560,1920],[15,0,1263,1848],[10,4140,4890,1848],[83,5952,6300,1800],[15,7260,7440,1800],[10,2868,3300,1764],[33,3300,4080,1764],[83,4680,5952,1680],[13,1116,1230,1632],[33,7350,7440,1608],[33,4080,4320,1596],[15,0,120,1584],[83,5040,5640,1584],[15,8490,8640,1584],[33,4320,4860,1536],[33,4860,5190,1512],[15,8340,8490,1512],[10,2196,2520,1488],[33,7200,7350,1476],[15,7393.2,7416,1462],[10,2520,2868,1440],[82,2868,3030,1440],[33,7116,7200,1428],[15,7200,7393.2,1428],[15,8232,8340,1418],[13,0,876,1404],[33,6990,7116,1392],[13,612,687,1380],[13,876,1116,1368],[10,1116,1140,1368],[15,8034,8232,1350],[10,1800,2196,1344],[82,5052,5190,1332],[33,5190,6990,1332],[10,1140,1200,1320],[15,7968,8034,1320],[15,7416,7908,1316],[13,0,612,1296],[50,2196,2340,1296],[82,4350,4860,1272],[33,5490,5670,1272],[15,7908,7968,1266],[10,1200,1800,1260],[13,8232,8400,1260],[33,5670,6120,1236],[62,735,906,1212],[33,6120,6564,1212],[13,0,492,1200],[62,492,600,1200],[50,2340,2448,1200],[13,8400,8640,1200],[82,4860,5052,1164],[13,0,402,1152],[13,8490,8640,1152],[39,6543,6564,1140],[33,6564,6870,1140],[30,6870,6900,1140],[62,600,735,1128],[82,3030,3300,1128],[13,60,312,1104],[82,4320,4350,1080],[50,2448,2652,1068],[30,7887,7908,1056],[30,7875,7887,1050],[30,6900,6984,1044],[82,3300,3660,1008],[82,3660,3882,960],[8,5556,5670,960],[39,5670,5880,960],[50,3330,3450,954],[0,0,906,882],[62,906,924,882],[51,6969,6984,876],[62,1620,1689,864],[30,7824,7875,864],[44,7875,7920,864],[7,2352,2652,852],[50,2652,2790,852],[0,0,720,840],[44,7920,8214,840],[44,8214,8232,828],[0,8232,8460,828],[62,924,978,816],[82,3882,3960,816],[29,4320,4440,816],[50,2790,3330,804],[48,3330,3558,804],[0,258,507,792],[8,5466,5556,792],[0,8460,8550,770],[29,4440,4770,768],[0,8550,8640,752],[29,5025,5052,738],[80,870,978,736],[62,978,1620,736],[7,1620,1710,720],[51,6543,6969,720],[82,3960,4320,696],[30,7080,7530,696],[7,1710,2118,684],[48,3558,3780,684],[29,4770,5025,684],[0,0,24,672],[80,507,600,672],[7,2118,2352,672],[37,2838,2880,672],[30,7530,7824,672],[30,6933,7080,660],[80,690,870,654],[25,5820,5880,648],[8,5430,5466,624],[25,5466,5820,624],[51,6612,6792,624],[48,3870,3960,612],[51,6792,6933,612],[80,600,690,600],[66,258,306,570],[48,3780,3870,564],[87,7650,7710,564],[77,2052,2118,548],[0,24,51,528],[73,5730,5772,528],[37,2118,2238,516],[87,7140,7290,510],[87,6792,6930,506],[0,51,306,504],[87,7290,7404,492],[37,2811,2838,480],[87,7404,7650,468],[87,6930,7140,460],[6,1182,1212,456],[75,6792,6840,444],[59,2052,2076,432],[37,2238,2271,420],[75,6840,7140,388],[77,1788,1920,384],[39,5730,5790,384],[75,7140,7290,378],[77,1662,1788,372],[77,1920,2016,372],[23,4620,4860,360],[39,6210,6570,344],[23,4272,4620,336],[37,2700,2811,324],[39,6030,6210,308],[61,0,51,300],[77,2016,2076,300],[37,2520,2700,300],[61,7602,7680,300],[37,2271,2496,288],[39,6570,6792,288],[31,7515,7578,284],[61,7578,7602,284],[45,4146,4272,264],[59,2247,2271,240],[37,2496,2520,240],[21,2811,2853,240],[61,8580,8640,240],[6,600,1182,238],[31,7251,7308,204],[8,4860,5430,192],[61,8190,8580,180],[21,2853,3330,168],[45,3330,3870,168],[58,6570,6718.4,150],[3,6718.4,6792,150],[31,7500,7515,144],[20,2520,2526,132],[73,6570,6633,108],[39,5790,6030,96],[58,6570,6633,72],[61,7728,7800,66],[66,0,720,48],[73,6690,6792,48],[31,7308,7500,48],[34,7500,7680,48],[61,7680,7728,48],[61,7920,8190,48],[61,7800,7920,42],[20,2526,2592,36],[77,1290,1662,0],[59,1662,1680,0],[20,2592,2910,0],[85,5280,5430,0],[58,6420,6570,0],[16,954,1182,-42],[77,1182,1290,-42],[73,5430,5856,-78],[59,1680,1830,-96],[59,2100,2247,-96],[73,6420,6468,-96],[73,6570,6690,-96],[3,6690,6792,-96],[66,8190,8580,-96],[45,3870,4146,-144],[85,4146,4260,-144],[66,0,120,-168],[66,8580,8640,-168],[85,5130,5280,-192],[58,5730,5856,-192],[3,7200,7392,-216],[4,7680,7872,-216],[58,6180,6468,-240],[54,2100,2910,-264],[35,1770,1830,-264],[59,1830,2100,-264],[41,2910,3012,-264],[74,3450,3870,-264],[85,4260,4620,-264],[58,6330,6360,-280],[3,6792,7200,-288.8],[35,1740,1770,-348],[4,7392,7680,-360],[73,6180,6570,-384],[72,6570,6792,-384],[41,3012,3090,-408],[58,5856,5895,-438],[41,3090,3270,-456],[26,3870,3900,-456],[71,5856,5895,-462],[47,5640,5730,-480],[28,4530,4620,-528],[85,4620,5130,-528],[41,3270,3510,-576],[16,600,954,-585.2],[35,954,1350,-585.2],[26,3900,4260,-588],[28,4260,4530,-588],[47,5130,5370,-588],[58,5856,6030,-590],[16,0,600,-612],[11,7680,7872,-612],[4,7872,8580,-612],[16,8580,8640,-612],[41,3510,3690,-636],[35,1692,1740,-654],[46,1740,2202,-654],[11,7200,7680,-672],[41,3690,3810,-700],[41,4530,5370,-708],[47,5370,5640,-708],[71,5640,5760,-708],[35,1650,1692,-720],[58,6030,6336,-720],[76,6336,6420,-720],[41,3810,3900,-748],[19,2202,2652,-792],[41,4410,4530,-792],[41,3900,4410,-840],[36,1260,1350,-864],[68,3012,3372,-882],[35,1536,1650,-888],[76,6420,6900,-888],[65,7680,8280,-888],[70,8280,8400,-888],[36,1080,1260,-950],[1,3372,3960,-954],[70,0,600,-960],[36,600,1080,-960],[35,1392,1536,-960],[70,8400,8640,-960],[14,5100,5370,-1008],[49,5640,5760,-1008],[71,5760,5911.5,-1008],[9,1740,1800,-1032],[22,1800,2370,-1032],[67,2880,3012,-1032],[35,1230,1392,-1056],[71,5911.5,6420,-1092],[24,6420,6900,-1092],[76,6900,7320,-1092],[53,7320,7680,-1092],[35,1080,1230,-1104],[9,1620,1740,-1116],[49,5520,5640,-1152],[63,0,840,-1156],[35,960,1080,-1176],[40,1470,1536,-1176],[9,1536,1620,-1176],[38,7680,7920,-1200],[67,2160,2880,-1218],[84,2880,2940,-1218],[35,870,960,-1224],[40,1380,1470,-1224],[63,0,660,-1236],[12,2160,2220,-1260],[84,2940,3042,-1272],[40,1260,1380,-1276],[32,1380,1440,-1276],[63,0,570,-1284],[35,780,870,-1296],[64,1620,1800,-1296],[49,5418,5520,-1296],[84,3042,3180,-1308],[12,2220,2340,-1320],[14,4260,4620,-1320],[49,5100,5418,-1320],[56,5418,5520,-1320],[32,1440,1560,-1356],[84,3180,3960,-1356],[14,3960,4050,-1356],[5,6300,6480,-1368],[78,6480,7320,-1368],[38,7920,8400,-1368],[40,1152,1260,-1380],[64,1800,1980,-1380],[12,2340,2460,-1392],[63,0,480,-1404],[35,480,780,-1404],[63,8400,8640,-1404],[32,1560,1650,-1416],[56,5520,5911.5,-1440],[43,7320,7680,-1440],[64,1980,2160,-1464],[18,5460,5520,-1464],[5,5911.5,5970,-1464],[18,5370,5460,-1526],[5,5970,6030,-1526],[64,2160,2460,-1536],[12,2460,3252,-1536],[14,4050,4260,-1536],[27,4260,4620,-1536],[14,4620,5232,-1536],[18,4860,4920,-1560],[5,6030,6060,-1560],[40,780,1152,-1620],[69,1152,1650,-1620],[18,5310,5370,-1620],[5,6060,6300,-1620],[60,6300,6480,-1620],[81,7920,8400,-1620],[32,1650,2370,-1680],[18,4920,5310,-1680],[79,5310,6120,-1680],[81,0,480,-1800],[42,1260,1650,-1800],[86,2370,3252,-1800],[12,3252,4050,-1800],[55,4050,4920,-1800],[60,6480,7680,-1800],[43,7680,8400,-1800],[81,8400,8640,-1800],[81,270,480,-1824],[42,0,1260,-1980],[17,2760,4920,-1980],[2,4920,6480,-1980],[52,1260,2760,-2040],[57,0,8640,-2160]];let $s,j7;class Zo{constructor(e,i,s,r){this.symbol=e,this.name=i,this.ra1875=s,this.dec1875=r}}function dm(t,e){if(P0(t),P0(e),e<-90||e>90)throw"Invalid declination angle. Must be -90..+90.";t%=24,t<0&&(t+=24),$s||($s=eu(new Ne(-45655.74141261017)),j7=new Ne(0));const i=new In(e,15*t,1),s=K3(i,j7),r=Si($s,s),c=ra(r),o=10/240,d=o/15;for(let g of hm){const f=g[3]*o,E=g[1]*d,F=g[2]*d;if(f<=c.dec&&E<=c.ra&&c.ra<F){const x=cm[g[0]];return new Zo(x[0],x[1],c.ra,c.dec)}}throw"Unable to find constellation for given coordinates."}var Ie;(function(t){t.Penumbral="penumbral",t.Partial="partial",t.Annular="annular",t.Total="total"})(Ie||(Ie={}));class Uo{constructor(e,i,s,r,c,o){this.kind=e,this.obscuration=i,this.peak=s,this.sd_penum=r,this.sd_partial=c,this.sd_total=o}}class gm{constructor(e,i,s,r,c,o,d){this.time=e,this.u=i,this.r=s,this.k=r,this.p=c,this.target=o,this.dir=d}}function Wi(t,e,i,s){const r=(s.x*i.x+s.y*i.y+s.z*i.z)/(s.x*s.x+s.y*s.y+s.z*s.z),c=r*s.x-i.x,o=r*s.y-i.y,d=r*s.z-i.z,g=n1*Math.hypot(c,o,d),f=+ji-(1+r)*(ji-t),E=-ji+(1+r)*(ji+t);return new gm(e,r,g,f,E,i,s)}function M3(t){const e=Xe(R.Sun,t,!0),i=new U0(-e.x,-e.y,-e.z,e.t),s=lt(t);return Wi(Vd,t,s,i)}function v7(t){const e=Xe(R.Sun,t,!0),i=lt(t),s=new U0(-i.x,-i.y,-i.z,i.t);return i.x-=e.x,i.y-=e.y,i.z-=e.z,Wi(we,t,s,i)}function yr(t,e){const i=co(t,e),s=Xe(R.Sun,t,!0),r=lt(t),c=new U0(i[0]-r.x,i[1]-r.y,i[2]-r.z,t);return r.x-=s.x,r.y-=s.y,r.z-=s.z,Wi(we,t,c,r)}function T3(t,e,i){const s=Xe(t,i,!0),r=Xe(R.Sun,i,!0),c=new U0(s.x-r.x,s.y-r.y,s.z-r.z,i);return r.x=-s.x,r.y=-s.y,r.z=-s.z,Wi(e,i,r,c)}function oa(t,e){const i=11574074074074073e-21,s=e.AddDays(-i),r=e.AddDays(+i),c=t(s);return(t(r).r-c.r)/i}function mm(t,e,i){const s=11574074074074073e-21,r=T3(t,e,i.AddDays(-s));return(T3(t,e,i.AddDays(+s)).r-r.r)/s}function fm(t){const e=t.AddDays(-.03),i=t.AddDays(.03),s=T1(r=>oa(M3,r),e,i);if(!s)throw"Failed to find peak Earth shadow time.";return M3(s)}function Em(t){const e=t.AddDays(-.03),i=t.AddDays(.03),s=T1(r=>oa(v7,r),e,i);if(!s)throw"Failed to find peak Moon shadow time.";return v7(s)}function Fm(t,e,i){const s=i.AddDays(-1),r=i.AddDays(1),c=T1(o=>mm(t,e,o),s,r);if(!c)throw"Failed to find peak planet shadow time.";return T3(t,e,c)}function pm(t,e){const i=t.AddDays(-.2),s=t.AddDays(.2);function r(o){return yr(o,e)}const c=T1(o=>oa(r,o),i,s);if(!c)throw`PeakLocalMoonShadow: search failure for search_center_time = ${t}`;return yr(c,e)}function Qs(t,e,i){const s=i/1440,r=t.AddDays(-s),c=t.AddDays(+s),o=T1(g=>-(M3(g).r-e),r,t),d=T1(g=>+(M3(g).r-e),t,c);if(!o||!d)throw"Failed to find shadow semiduration";return(d.ut-o.ut)*(1440/2)}function ca(t){const e=Kt(t);return d1*e.geo_eclip_lat}function qo(t,e,i){if(t<=0)throw"Radius of first disc must be positive.";if(e<=0)throw"Radius of second disc must be positive.";if(i<0)throw"Distance between discs is not allowed to be negative.";if(i>=t+e)return 0;if(i==0)return t<=e?1:e*e/(t*t);const s=(t*t-e*e+i*i)/(2*i),r=t*t-s*s;if(r<=0)return t<=e?1:e*e/(t*t);const c=Math.sqrt(r),o=t*t*Math.acos(s/t)-s*c,d=e*e*Math.acos((i-s)/e)-(i-s)*c;return(o+d)/(Math.PI*t*t)}function Xo(t,e){const i=new U0(t.x+e.x,t.y+e.y,t.z+e.z,t.t),s=Math.asin(Vl/i.Length()),r=Math.asin(ng/e.Length()),c=q3(e,i),o=qo(s,r,c*l0);return Math.min(.9999,o)}function Jo(t){let i=A0(t);for(let s=0;s<12;++s){const r=Ji(180,i,40);if(!r)throw"Cannot find full moon.";const c=ca(r);if(Math.abs(c)<1.8){const o=fm(r);if(o.r<o.p+we){let d=Ie.Penumbral,g=0,f=0,E=0,F=Qs(o.time,o.p+we,200);return o.r<o.k+we&&(d=Ie.Partial,E=Qs(o.time,o.k+we,F),o.r+we<o.k?(d=Ie.Total,g=1,f=Qs(o.time,o.k-we,E)):g=qo(we,o.k,o.r)),new Uo(d,g,o.time,F,E,f)}}i=r.AddDays(10)}throw"Failed to find lunar eclipse within 12 full moons."}class Wo{constructor(e,i,s,r,c,o){this.kind=e,this.obscuration=i,this.peak=s,this.distance=r,this.latitude=c,this.longitude=o}}function $o(t){return t>.014?Ie.Total:Ie.Annular}function Cm(t){let e=Ie.Partial,i=t.time,s=t.r,r,c;const o=eu(t.time),d=Si(o,t.dir),g=Si(o,t.target);d.x*=n1,d.y*=n1,d.z*=n1/it,g.x*=n1,g.y*=n1,g.z*=n1/it;const f=St,E=d.x*d.x+d.y*d.y+d.z*d.z,F=-2*(d.x*g.x+d.y*g.y+d.z*g.z),x=g.x*g.x+g.y*g.y+g.z*g.z-f*f,A=F*F-4*E*x;let y;if(A>0){const B=(-F-Math.sqrt(A))/(2*E),_=B*d.x-g.x,S=B*d.y-g.y,M=(B*d.z-g.z)*it,Y=Math.hypot(_,S)*gn;Y==0?r=M>0?90:-90:r=d1*Math.atan(M/Y);const z=wt(i);c=(d1*Math.atan2(S,_)-15*z)%360,c<=-180?c+=360:c>180&&(c-=360);const T=Mn(o);let W=new U0(_/n1,S/n1,M/n1,t.time);W=Si(T,W),W.x+=t.target.x,W.y+=t.target.y,W.z+=t.target.z;const X=Wi(to,t.time,W,t.dir);if(X.r>1e-9||X.r<0)throw`Unexpected shadow distance from geoid intersection = ${X.r}`;e=$o(X.k),y=e===Ie.Total?1:Xo(t.dir,W)}else y=void 0;return new Wo(e,y,i,s,r,c)}function xm(t){t=A0(t);const e=t.AddDays(10);return Jo(e)}function Qo(t){t=A0(t);const e=1.8;let i=t,s;for(s=0;s<12;++s){const r=Ji(0,i,40);if(!r)throw"Cannot find new moon";const c=ca(r);if(Math.abs(c)<e){const o=Em(r);if(o.r<o.p+eo)return Cm(o)}i=r.AddDays(10)}throw"Failed to find solar eclipse within 12 full moons."}function ym(t){t=A0(t);const e=t.AddDays(10);return Qo(e)}class Ko{constructor(e,i){this.time=e,this.altitude=i}}class Vo{constructor(e,i,s,r,c,o,d){this.kind=e,this.obscuration=i,this.partial_begin=s,this.total_begin=r,this.peak=c,this.total_end=o,this.partial_end=d}}function _7(t){return t.p-t.r}function S7(t){return Math.abs(t.k)-t.r}function Dm(t,e){const i=e8(e,t.time);let s=t.time.AddDays(-.2),r=t.time.AddDays(.2);const c=g3(e,1,_7,s,t.time),o=g3(e,-1,_7,t.time,r);let d,g,f;t.r<Math.abs(t.k)?(s=t.time.AddDays(-.01),r=t.time.AddDays(.01),d=g3(e,1,S7,s,t.time),g=g3(e,-1,S7,t.time,r),f=$o(t.k)):f=Ie.Partial;const E=f===Ie.Total?1:Xo(t.dir,t.target);return new Vo(f,E,c,d,i,g,o)}function g3(t,e,i,s,r){function c(d){const g=yr(d,t);return e*i(g)}const o=T1(c,s,r);if(!o)throw"Local eclipse transition search failed.";return e8(t,o)}function e8(t,e){const i=Am(e,t);return new Ko(e,i)}function Am(t,e){const i=Zi(R.Sun,t,e,!0,!0);return Q3(t,e,i.ra,i.dec,"normal").altitude}function t8(t,e){t=A0(t),zn(e);const i=1.8;let s=t;for(;;){const r=Ji(0,s,40);if(!r)throw"Cannot find next new moon";const c=ca(r);if(Math.abs(c)<i){const o=pm(r,e);if(o.r<o.p){const d=Dm(o,e);if(d.partial_begin.altitude>0||d.partial_end.altitude>0)return d}}s=r.AddDays(10)}}function Bm(t,e){t=A0(t);const i=t.AddDays(10);return t8(i,e)}class n8{constructor(e,i,s,r){this.start=e,this.peak=i,this.finish=s,this.separation=r}}function jm(t,e,i,s){const r=T3(e,i,t);return s*(r.r-r.p)}function w7(t,e,i,s,r){const c=T1(o=>jm(o,t,e,r),i,s);if(!c)throw"Planet transit boundary search failed";return c}function i8(t,e){e=A0(e);const i=.4;let s;switch(t){case R.Mercury:s=2439.7;break;case R.Venus:s=6051.8;break;default:throw`Invalid body: ${t}`}let r=e;for(;;){const c=_n(t,0,r);if(vn(t,c)<i){const d=Fm(t,s,c);if(d.r<d.p){const g=d.time.AddDays(-1),f=w7(t,s,g,d.time,-1),E=d.time.AddDays(1),F=w7(t,s,d.time,E,1),x=60*vn(t,d.time);return new n8(f,d.time,F,x)}}r=c.AddDays(10)}}function vm(t,e){e=A0(e);const i=e.AddDays(100);return i8(t,i)}var jt;(function(t){t[t.Invalid=0]="Invalid",t[t.Ascending=1]="Ascending",t[t.Descending=-1]="Descending"})(jt||(jt={}));class u8{constructor(e,i){this.kind=e,this.time=i}}const s8=10;function r8(t){let e=A0(t),i=A3(e);for(;;){const s=e.AddDays(s8),r=A3(s);if(i.lat*r.lat<=0){const c=r.lat>i.lat?jt.Ascending:jt.Descending,o=T1(d=>c*A3(d).lat,e,s);if(!o)throw"Could not find moon node.";return new u8(c,o)}e=s,i=r}}function _m(t){const e=t.time.AddDays(s8),i=r8(e);switch(t.kind){case jt.Ascending:if(i.kind!==jt.Descending)throw`Internal error: previous node was ascending, but this node was: ${i.kind}`;break;case jt.Descending:if(i.kind!==jt.Ascending)throw`Internal error: previous node was descending, but this node was: ${i.kind}`;break;default:throw`Previous node has an invalid node kind: ${t.kind}`}return i}class ha{constructor(e,i,s,r){this.ra=e,this.dec=i,this.spin=s,this.north=r}}function Sm(t){const e=Bn([0,0,1],t,s1.Into2000),i=An(e,t,s1.Into2000),s=new U0(i[0],i[1],i[2],t),r=ra(s),c=190.41375788700253+360.9856122880876*t.ut;return new ha(r.ra,r.dec,c,s)}function wm(t,e){const i=A0(e),s=i.tt,r=s/36525;let c,o,d;switch(t){case R.Sun:c=286.13,o=63.87,d=84.176+14.1844*s;break;case R.Mercury:c=281.0103-.0328*r,o=61.4155-.0049*r,d=329.5988+6.1385108*s+.01067257*Math.sin(l0*(174.7910857+4.092335*s))-.00112309*Math.sin(l0*(349.5821714+8.18467*s))-1104e-7*Math.sin(l0*(164.3732571+12.277005*s))-2539e-8*Math.sin(l0*(339.1643429+16.36934*s))-571e-8*Math.sin(l0*(153.9554286+20.461675*s));break;case R.Venus:c=272.76,o=67.16,d=160.2-1.4813688*s;break;case R.Earth:return Sm(i);case R.Moon:const x=l0*(125.045-.0529921*s),A=l0*(250.089-.1059842*s),y=l0*(260.008+13.0120009*s),B=l0*(176.625+13.3407154*s),_=l0*(357.529+.9856003*s),S=l0*(311.589+26.4057084*s),M=l0*(134.963+13.064993*s),Y=l0*(276.617+.3287146*s),z=l0*(34.226+1.7484877*s),T=l0*(15.134-.1589763*s),W=l0*(119.743+.0036096*s),X=l0*(239.961+.1643573*s),Z=l0*(25.053+12.9590088*s);c=269.9949+.0031*r-3.8787*Math.sin(x)-.1204*Math.sin(A)+.07*Math.sin(y)-.0172*Math.sin(B)+.0072*Math.sin(S)-.0052*Math.sin(T)+.0043*Math.sin(Z),o=66.5392+.013*r+1.5419*Math.cos(x)+.0239*Math.cos(A)-.0278*Math.cos(y)+.0068*Math.cos(B)-.0029*Math.cos(S)+9e-4*Math.cos(M)+8e-4*Math.cos(T)-9e-4*Math.cos(Z),d=38.3213+(13.17635815-14e-13*s)*s+3.561*Math.sin(x)+.1208*Math.sin(A)-.0642*Math.sin(y)+.0158*Math.sin(B)+.0252*Math.sin(_)-.0066*Math.sin(S)-.0047*Math.sin(M)-.0046*Math.sin(Y)+.0028*Math.sin(z)+.0052*Math.sin(T)+.004*Math.sin(W)+.0019*Math.sin(X)-.0044*Math.sin(Z);break;case R.Mars:c=317.269202-.10927547*r+68e-6*Math.sin(l0*(198.991226+19139.4819985*r))+238e-6*Math.sin(l0*(226.292679+38280.8511281*r))+52e-6*Math.sin(l0*(249.663391+57420.7251593*r))+9e-6*Math.sin(l0*(266.18351+76560.636795*r))+.419057*Math.sin(l0*(79.398797+.5042615*r)),o=54.432516-.05827105*r+51e-6*Math.cos(l0*(122.433576+19139.9407476*r))+141e-6*Math.cos(l0*(43.058401+38280.8753272*r))+31e-6*Math.cos(l0*(57.663379+57420.7517205*r))+5e-6*Math.cos(l0*(79.476401+76560.6495004*r))+1.591274*Math.cos(l0*(166.325722+.5042615*r)),d=176.049863+350.891982443297*s+145e-6*Math.sin(l0*(129.071773+19140.0328244*r))+157e-6*Math.sin(l0*(36.352167+38281.0473591*r))+4e-5*Math.sin(l0*(56.668646+57420.929536*r))+1e-6*Math.sin(l0*(67.364003+76560.2552215*r))+1e-6*Math.sin(l0*(104.79268+95700.4387578*r))+.584542*Math.sin(l0*(95.391654+.5042615*r));break;case R.Jupiter:const $=l0*(99.360714+4850.4046*r),e0=l0*(175.895369+1191.9605*r),q=l0*(300.323162+262.5475*r),c0=l0*(114.012305+6070.2476*r),b=l0*(49.511251+64.3*r);c=268.056595-.006499*r+117e-6*Math.sin($)+938e-6*Math.sin(e0)+.001432*Math.sin(q)+3e-5*Math.sin(c0)+.00215*Math.sin(b),o=64.495303+.002413*r+5e-5*Math.cos($)+404e-6*Math.cos(e0)+617e-6*Math.cos(q)-13e-6*Math.cos(c0)+926e-6*Math.cos(b),d=284.95+870.536*s;break;case R.Saturn:c=40.589-.036*r,o=83.537-.004*r,d=38.9+810.7939024*s;break;case R.Uranus:c=257.311,o=-15.175,d=203.81-501.1600928*s;break;case R.Neptune:const u0=l0*(357.85+52.316*r);c=299.36+.7*Math.sin(u0),o=43.46-.51*Math.cos(u0),d=249.978+541.1397757*s-.48*Math.sin(u0);break;case R.Pluto:c=132.993,o=-6.163,d=302.695+56.3625225*s;break;default:throw`Invalid body: ${t}`}const g=o*l0,f=c*l0,E=Math.cos(g),F=new U0(E*Math.cos(f),E*Math.sin(f),Math.sin(g),i);return new ha(c/15,o,d,F)}function Nm(t,e,i,s){const r=A0(e),c=dr(i),o=dr(s);let d,g;return i===R.Earth&&s===R.Moon?(d=new v1(0,0,0,0,0,0,r),g=Ui(r)):(d=k3(i,r),g=k3(s,r)),a8(t,d,c,g,o)}function a8(t,e,i,s,r){if(t<1||t>5)throw`Invalid lagrange point ${t}`;if(!Number.isFinite(i)||i<=0)throw"Major mass must be a positive number.";if(!Number.isFinite(r)||r<=0)throw"Minor mass must be a negative number.";let o=s.x-e.x,d=s.y-e.y,g=s.z-e.z;const f=o*o+d*d+g*g,E=Math.sqrt(f),F=s.vx-e.vx,x=s.vy-e.vy,A=s.vz-e.vz;let y;if(t===4||t===5){const B=d*A-g*x,_=g*F-o*A,S=o*x-d*F;let M=_*g-S*d,Y=S*o-B*g,z=B*d-_*o;const T=Math.sqrt(M*M+Y*Y+z*z);M/=T,Y/=T,z/=T,o/=E,d/=E,g/=E;const W=t==4?.8660254037844386:-.8660254037844386,X=.5*o+W*M,Z=.5*d+W*Y,$=.5*g+W*z,e0=.5*M-W*o,q=.5*Y-W*d,c0=.5*z-W*g,b=E*X,u0=E*Z,d0=E*$,E0=F*o+x*d+A*g,i0=F*M+x*Y+A*z,K=E0*X+i0*e0,h0=E0*Z+i0*q,G=E0*$+i0*c0;y=new v1(b,u0,d0,K,h0,G,e.t)}else{const B=-E*(r/(i+r)),_=+E*(i/(i+r)),S=(i+r)/(f*E);let M,Y,z;if(t===1||t===2)M=i/(i+r)*Math.cbrt(r/(3*i)),Y=-i,t==1?(M=1-M,z=+r):(M=1+M,z=-r);else if(t===3)M=(7/12*r-i)/(r+i),Y=+i,z=+r;else throw`Invalid Langrage point ${t}. Must be an integer 1..5.`;let T=E*M-B,W;do{const X=T-B,Z=T-_,$=S*T+Y/(X*X)+z/(Z*Z),e0=S-2*Y/(X*X*X)-2*z/(Z*Z*Z);W=$/e0,T-=W}while(Math.abs(W/E)>1e-14);M=(T-B)/E,y=new v1(M*o,M*d,M*g,M*F,M*x,M*A,e.t)}return y}class me{constructor(e,i,s){const r=A0(i);this.originBody=e;for(let g of s)if(g.t.tt!==r.tt)throw"Inconsistent times in bodyStates";const c=[],o=me.CalcSolarSystem(r);this.curr=new N7(r,o,c);const d=this.InternalBodyState(e);for(let g of s){const f=new l1(g.x+d.r.x,g.y+d.r.y,g.z+d.r.z),E=new l1(g.vx+d.v.x,g.vy+d.v.y,g.vz+d.v.z),F=l1.zero();c.push(new Xi(r.tt,f,E,F))}this.CalcBodyAccelerations(),this.prev=this.Duplicate()}get OriginBody(){return this.originBody}get Time(){return this.curr.time}Update(e){const i=A0(e),s=i.tt-this.curr.time.tt;if(s===0)this.prev=this.Duplicate();else{this.Swap(),this.curr.time=i,this.curr.gravitators=me.CalcSolarSystem(i);for(let o=0;o<this.curr.bodies.length;++o){const d=this.prev.bodies[o];this.curr.bodies[o].r=jn(s,d.r,d.v,d.a)}this.CalcBodyAccelerations();for(let o=0;o<this.curr.bodies.length;++o){const d=this.prev.bodies[o],g=this.curr.bodies[o],f=d.a.mean(g.a);g.tt=i.tt,g.r=jn(s,d.r,d.v,f),g.v=Fr(s,d.v,f)}this.CalcBodyAccelerations()}const r=[],c=this.InternalBodyState(this.originBody);for(let o of this.curr.bodies)r.push(new v1(o.r.x-c.r.x,o.r.y-c.r.y,o.r.z-c.r.z,o.v.x-c.v.x,o.v.y-c.v.y,o.v.z-c.v.z,i));return r}Swap(){const e=this.curr;this.curr=this.prev,this.prev=e}SolarSystemBodyState(e){const i=this.InternalBodyState(e),s=this.InternalBodyState(this.originBody);return _2(i.sub(s),this.curr.time)}InternalBodyState(e){if(e===R.SSB)return new ut(this.curr.time.tt,l1.zero(),l1.zero());const i=this.curr.gravitators[e];if(i)return i;throw`Invalid body: ${e}`}static CalcSolarSystem(e){const i={},s=new ut(e.tt,l1.zero(),l1.zero());i[R.Mercury]=Se(s,e.tt,R.Mercury,or),i[R.Venus]=Se(s,e.tt,R.Venus,cr),i[R.Earth]=Se(s,e.tt,R.Earth,Ii+w3),i[R.Mars]=Se(s,e.tt,R.Mars,hr),i[R.Jupiter]=Se(s,e.tt,R.Jupiter,Cn),i[R.Saturn]=Se(s,e.tt,R.Saturn,xn),i[R.Uranus]=Se(s,e.tt,R.Uranus,yn),i[R.Neptune]=Se(s,e.tt,R.Neptune,Dn);for(let r in i)i[r].r.decr(s.r),i[r].v.decr(s.v);return i[R.Sun]=new ut(e.tt,s.r.neg(),s.v.neg()),i}CalcBodyAccelerations(){for(let e of this.curr.bodies)e.a=l1.zero(),me.AddAcceleration(e.a,e.r,this.curr.gravitators[R.Sun].r,Hi),me.AddAcceleration(e.a,e.r,this.curr.gravitators[R.Mercury].r,or),me.AddAcceleration(e.a,e.r,this.curr.gravitators[R.Venus].r,cr),me.AddAcceleration(e.a,e.r,this.curr.gravitators[R.Earth].r,Ii+w3),me.AddAcceleration(e.a,e.r,this.curr.gravitators[R.Mars].r,hr),me.AddAcceleration(e.a,e.r,this.curr.gravitators[R.Jupiter].r,Cn),me.AddAcceleration(e.a,e.r,this.curr.gravitators[R.Saturn].r,xn),me.AddAcceleration(e.a,e.r,this.curr.gravitators[R.Uranus].r,yn),me.AddAcceleration(e.a,e.r,this.curr.gravitators[R.Neptune].r,Dn)}static AddAcceleration(e,i,s,r){const c=s.x-i.x,o=s.y-i.y,d=s.z-i.z,g=c*c+o*o+d*d,f=r/(g*Math.sqrt(g));e.x+=c*f,e.y+=o*f,e.z+=d*f}Duplicate(){const e={};for(let s in this.curr.gravitators)e[s]=this.curr.gravitators[s].clone();const i=[];for(let s of this.curr.bodies)i.push(s.clone());return new N7(this.curr.time,e,i)}}class N7{constructor(e,i,s){this.time=e,this.gravitators=i,this.bodies=s}}const Im=Object.freeze(Object.defineProperty({__proto__:null,AU_PER_LY:Wl,AngleBetween:q3,AngleFromSun:vn,Apsis:Ti,get ApsisKind(){return Vt},AstroTime:Ne,Atmosphere:vo,AtmosphereInfo:jo,AxisInfo:ha,BackdatePosition:xo,BaryState:kg,get Body(){return R},CALLISTO_RADIUS_KM:Ud,C_AUDAY:Z3,get CalcMoonCount(){return ro},CombineRotation:i2,Constellation:dm,ConstellationInfo:Zo,CorrectLightTravel:Co,DEG2RAD:l0,DefineStar:ag,DeltaT_EspenakMeeus:Qr,DeltaT_JplHorizons:og,EUROPA_RADIUS_KM:Hd,EclipseEvent:Ko,get EclipseKind(){return Ie},Ecliptic:zi,EclipticCoordinates:go,EclipticGeoMoon:A3,EclipticLongitude:k2,Elongation:Io,ElongationEvent:No,Equator:Zi,EquatorFromVector:ra,EquatorialCoordinates:I3,GANYMEDE_RADIUS_KM:Zd,GeoEmbState:na,GeoMoon:lt,GeoMoonState:Ui,GeoVector:Xe,GlobalSolarEclipseInfo:Wo,GravitySimulator:me,HOUR2RAD:lr,HelioDistance:z2,HelioState:k3,HelioVector:st,Horizon:Q3,HorizonFromVector:tm,HorizontalCoordinates:ho,HourAngle:qg,HourAngleEvent:So,IO_RADIUS_KM:Gd,IdentityMatrix:Vg,Illumination:B3,IlluminationInfo:Do,InverseRefraction:To,InverseRotation:Mn,JUPITER_EQUATORIAL_RADIUS_KM:Yd,JUPITER_MEAN_RADIUS_KM:Rd,JUPITER_POLAR_RADIUS_KM:Ld,JupiterMoons:Ig,JupiterMoonsInfo:po,KM_PER_AU:n1,LagrangePoint:Nm,LagrangePointFast:a8,Libration:mg,LibrationInfo:ao,LocalSolarEclipseInfo:Vo,LunarEclipseInfo:Uo,MakeRotation:Cg,MakeTime:A0,MassProduct:dr,MoonPhase:sa,MoonQuarter:Ao,NextGlobalSolarEclipse:ym,NextLocalSolarEclipse:Bm,NextLunarApsis:$g,NextLunarEclipse:xm,NextMoonNode:_m,NextMoonQuarter:Pg,NextPlanetApsis:Kg,NextTransit:vm,NodeEventInfo:u8,get NodeEventKind(){return jt},Observer:ea,ObserverGravity:Ag,ObserverState:yg,ObserverVector:xg,PairLongitude:ua,Pivot:em,PlanetOrbitalPeriod:lg,RAD2DEG:d1,RAD2HOUR:Wr,Refraction:bi,RotateState:V3,RotateVector:Si,RotationAxis:wm,RotationMatrix:M1,Rotation_ECL_EQD:Lo,Rotation_ECL_EQJ:im,Rotation_ECL_HOR:Ro,Rotation_ECT_EQD:Go,Rotation_ECT_EQJ:sm,Rotation_EQD_ECL:Yo,Rotation_EQD_ECT:Ho,Rotation_EQD_EQJ:tu,Rotation_EQD_HOR:la,Rotation_EQJ_ECL:bo,Rotation_EQJ_ECT:um,Rotation_EQJ_EQD:eu,Rotation_EQJ_GAL:lm,Rotation_EQJ_HOR:rm,Rotation_GAL_EQJ:om,Rotation_HOR_ECL:am,Rotation_HOR_EQD:Oo,Rotation_HOR_EQJ:Po,Search:T1,SearchAltitude:Gg,SearchGlobalSolarEclipse:Qo,SearchHourAngle:Ug,SearchLocalSolarEclipse:t8,SearchLunarApsis:zo,SearchLunarEclipse:Jo,SearchMaxElongation:Jg,SearchMoonNode:r8,SearchMoonPhase:Ji,SearchMoonQuarter:Bo,SearchPeakMagnitude:Wg,SearchPlanetApsis:ko,SearchRelativeLongitude:_n,SearchRiseSet:Rg,SearchSunLongitude:yo,SearchTransit:i8,SeasonInfo:wo,Seasons:Xg,SetDeltaTFunction:cg,SiderealTime:oo,SphereFromVector:aa,Spherical:In,StateVector:v1,SunPosition:mo,TransitInfo:n8,Vector:U0,VectorFromHorizon:nm,VectorFromSphere:K3,VectorObserver:Dg,e_tilt:n2},Symbol.toStringTag,{value:"Module"})),a1=["甲","乙","丙","丁","戊","己","庚","辛","壬","癸"],Q0=["子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥"],U1={甲:"木",乙:"木",丙:"火",丁:"火",戊:"土",己:"土",庚:"金",辛:"金",壬:"水",癸:"水",子:"水",丑:"土",寅:"木",卯:"木",辰:"土",巳:"火",午:"火",未:"土",申:"金",酉:"金",戌:"土",亥:"水"},zm={比肩:"同类",劫财:"同类",食神:"我生",伤官:"我生",偏财:"我克",正财:"我克",七杀:"克我",正官:"克我",偏印:"生我",正印:"生我"},l8=["海中金","炉中火","大林木","路旁土","剑锋金","山头火","涧下水","城头土","白蜡金","杨柳木","泉中水","屋上土","霹雳火","松柏木","长流水","沙中金","山下火","平地木","壁上土","金箔金","覆灯火","天河水","大驿土","钗钏金","桑柘木","大溪水","沙中土","天上火","石榴木","大海水"],r0=(t,e)=>(t%e+e)%e;function Dr(t){return((t-4)%60+60)%60}function km(t){const e=a1.indexOf(t[0]),i=Q0.indexOf(t[1]);for(let s=0;s<6;s++)if(r0(e+10*s,12)===i)return e+10*s;return e}const A2=Im,v2=Math.PI/180,I7=180/Math.PI,En=["白羊","金牛","双子","巨蟹","狮子","处女","天秤","天蝎","射手","摩羯","水瓶","双鱼"],Mm={白羊:"火星",金牛:"金星",双子:"水星",巨蟹:"月亮",狮子:"太阳",处女:"水星",天秤:"金星",天蝎:"火星",射手:"木星",摩羯:"土星",水瓶:"土星",双鱼:"木星"},Tm={太阳:{miao:"狮子",wang:"白羊"},月亮:{miao:"巨蟹",wang:"金牛"},水星:{miao:"双子",wang:"处女"},金星:{miao:"金牛",wang:"双鱼"},火星:{miao:"白羊",wang:"摩羯"},木星:{miao:"射手",wang:"巨蟹"},土星:{miao:"摩羯",wang:"天秤"}},yi=t=>En[Math.floor(r0(t,360)/30)],bm=t=>r0(t,30);function Om(t,e){const i=Tm[t];return i?i.miao===e?{status:"庙",note:t+"入"+e+"为庙(本垣),力量最显"}:i.wang===e?{status:"旺",note:t+"入"+e+"为旺(擢升),助力显著"}:i.miao===En[(En.indexOf(e)+6)%12]?{status:"陷",note:t+"入"+e+"为陷(失势),力量受抑"}:i.wang===En[(En.indexOf(e)+6)%12]?{status:"弱",note:t+"入"+e+"为弱(失位),助力有限"}:{status:"",note:""}:{status:"",note:""}}function Pm(t){const e=(t-2451545)/36525;return(23.4392911-.0130042*e-164e-9*e*e+504e-9*e*e*e)*v2}function Ym(t,e,i,s,r){return(Date.UTC(t,e-1,i,s,r)-288e5)/864e5+24405875e-1}function da(t,e,i,s,r,c,o){const d=Ym(t,e,i,s,r),g=new Date((d-24405875e-1)*864e5),f=[["太阳","☉","Sun","#C8872E"],["月亮","☽","Moon","#8C9BA8"],["水星","☿","Mercury","#7A8A9A"],["金星","♀","Venus","#A5767E"],["火星","♂","Mars","#B0563A"],["木星","♃","Jupiter","#9C7A4A"],["土星","♄","Saturn","#6E7566"]],E=[];for(const[q,c0,b,u0]of f)try{const d0=A2.GeoVector(A2.Body[b],g,!0),E0=A2.Ecliptic(d0,!0);E.push([q,c0,r0(E0.elon,360),u0])}catch{E.push([q,c0,0,u0])}const F=E[0][2],x=E[1][2],A=A2.SiderealTime(g),y=r0(A+(c!==void 0?c/15:8),24),B=y*15,_=Pm(d),S=(o??39.9)*v2,M=r0(Math.atan2(-Math.cos(B*v2),Math.sin(B*v2)*Math.cos(_)+Math.tan(S)*Math.sin(_))*I7+180,360),Y=r0(Math.atan2(Math.sin(B*v2),Math.cos(B*v2)*Math.cos(_))*I7,360),z=[];for(let q=0;q<E.length;q++)for(let c0=q+1;c0<E.length;c0++){const b=r0(E[q][2]-E[c0][2],360),u0=Math.min(b,360-b),d0=8;u0<d0?z.push([E[q][0],E[c0][0],"合","凝聚之象"]):Math.abs(u0-60)<d0?z.push([E[q][0],E[c0][0],"六合","和谐之象"]):Math.abs(u0-90)<d0?z.push([E[q][0],E[c0][0],"刑","紧张之象"]):Math.abs(u0-120)<d0?z.push([E[q][0],E[c0][0],"拱","顺遂之象"]):Math.abs(u0-180)<d0&&z.push([E[q][0],E[c0][0],"冲","对峙之象"])}const T="whole-sign",W=En.map((q,c0)=>{const b=r0(M+c0*30,360),u0=yi(b);return{num:c0+1,cusp:b,sign:u0,ruler:Mm[u0],rulerLng:0}}),X=E.map(([q,c0,b,u0])=>{let d0=!1;if(q!=="太阳"&&q!=="月亮"){const K=new Date(g.getTime()-864e5);try{const h0=A2.GeoVector(A2.Body[f.find(g0=>g0[0]===q)[2]],K,!0),G=A2.Ecliptic(h0,!0),N=r0(G.elon,360),P=r0(b-N,360);d0=P<.5&&P>0?!1:r0(N-b,360)<.5&&r0(N-b,360)>0?!0:r0(b-N,360)>180}catch{}}const E0=yi(b),i0=Math.floor(r0(b-M,360)/30)+1;return{cn:q,sym:c0,color:u0,lng:b,sign:E0,degree:bm(b),house:i0,retrograde:d0,dignity:Om(q,E0)}});W.forEach(q=>{const c0=X.find(b=>b.cn===q.ruler);q.rulerLng=c0?c0.lng:-1});const Z=yi(M),$=yi(F),e0=yi(x);return{planets:E,asc:M,sun:F,moon:x,lstHours:y,aspects:z,mc:Y,epsilon:_/v2,houseSystem:T,houses:W,planetDetails:X,ascSign:Z,sunSign:$,moonSign:e0}}const Ee=[["白羊","Aries","♈"],["金牛","Taurus","♉"],["双子","Gemini","♊"],["巨蟹","Cancer","♋"],["狮子","Leo","♌"],["处女","Virgo","♍"],["天秤","Libra","♎"],["天蝎","Scorpio","♏"],["射手","Sagittarius","♐"],["摩羯","Capricorn","♑"],["水瓶","Aquarius","♒"],["双鱼","Pisces","♓"]],Lm={白羊:"开创 · 冲劲 · 自我",金牛:"安定 · 感官 · 坚持",双子:"思辨 · 灵动 · 交流",巨蟹:"情感 · 归属 · 守护",狮子:"表达 · 尊严 · 创造",处女:"精进 · 服务 · 审慎",天秤:"平衡 · 关系 · 审美",天蝎:"深潜 · 转化 · 掌控",射手:"远志 · 探索 · 信念",摩羯:"务实 · 担当 · 成就",水瓶:"革新 · 独立 · 洞见",双鱼:"共情 · 想象 · 融通"},z7=["命宫","财帛","兄弟","田宅","子女","仆役","夫妻","疾厄","迁移","官禄","福德","相貌"];function ga(t=new Date){const e=t.getFullYear(),i=t.getMonth()+1,s=t.getDate(),r=Pd(e,i,s),c=r.lunarText,o=k0.fromYmdHms(e,i,s,12,0,0).getLunar().getYueXiang()||"";return{lunarText:c,ganzhi:r.ganzhiDay,shengxiao:r.shengxiao,jieQi:r.jieQi,yueXiang:o,yi:r.yi.slice(0,6),ji:r.ji.slice(0,6),chong:r.chong,sha:r.sha,xingZuo:r.xingZuo}}function o8(t=new Date){const e=t.getFullYear(),i=t.getMonth()+1,s=t.getDate(),r=da(e,i,s,12,0),c=r.planets.map(([g])=>{const f=r.planets.find(F=>F[0]===g),E=Math.floor(r0(f[2],360)/30);return{name:g,sign:Ee[E][0],deg:Math.floor(r0(f[2],30))}}),o=Ee[Math.floor(r.sun/30)][0],d=Ee[Math.floor(r.moon/30)][0];return{sunSign:o,moonSign:d,planets:c,yueXiang:ga(t).yueXiang}}const k7={白羊座:["今日行动力充沛,适合推进搁置的计划。沟通时稍放缓语速,能避免不必要的摩擦。","精力旺盛但易急躁,重要决定放在午后做更稳妥。运动或户外活动有助于释放压力。"],金牛座:["今日宜守成,财务上有小而稳的收获。亲近自然或整理居所,能让内心更加安定。","务实的一天,把待办一件件做完会很有成就感。注意饮食规律,别让忙碌挤掉三餐。"],双子座:["今日思维活跃,适合学习、写作与交流。信息量较大,留意分辨哪些值得当真。","灵感如泉涌,不妨把想法记录下来。与旧友联系可能带来新的合作机会。"],巨蟹座:["今日情绪感知敏锐,适合处理家庭与情感事务。表达需求比默默猜测更能靠近彼此。","内心柔软的一天,给自己留一点独处的时间。回忆过往时,记得只带走温暖的部分。"],狮子座:["今日气场强大,适合展示才华与担当。在人群中你的声音会被听见,注意倾听他人的回应。","创造力旺盛,适合创作与表达。适度放下主角光环,合作反而更顺利。"],处女座:["今日条理清晰,适合处理细节与规划。对完美的追求是礼物,但别让它变成苛责自己的鞭子。","效率很高的一天,适合整理与优化。留意健康信号,久坐后记得起身活动。"],天秤座:["今日人际和谐,适合合作与协商。犹豫时先明确自己真正想要什么,平衡才有支点。","审美在线,适合布置环境或改善形象。一段需要平衡的关系值得你花时间经营。"],天蝎座:["今日洞察力深邃,适合深入思考与解决问题。信任直觉,也记得给证据留位置。","内在力量强的一天,适合处理棘手事务。转化正在进行,允许旧模式慢慢离开。"],射手座:["今日向往远方,适合学习、旅行或拓展视野。乐观是你的天赋,行动是它的翅膀。","好奇心旺盛,新的可能性正在浮现。先迈出一步,路线会在途中清晰。"],摩羯座:["今日宜务实推进,长期目标值得投入时间。稳扎稳打的节奏,会在未来显现复利。","责任感强的一天,注意别把工作扛成一个人的事。适度示弱,团队会更稳固。"],水瓶座:["今日思维独特,适合创新与独立工作。你的想法也许超前,耐心解释会让同路人更多。","社交能量足,群体活动带来启发。保持开放,也保留自己的节奏。"],双鱼座:["今日共情力强,适合艺术、冥想与助人。记得给自己也留一份温柔,别把感受都让渡出去。","直觉敏锐的一天,梦境与灵感值得记录。边界感是保护,不是冷漠。"]};function Ks(t=new Date,e){const i=o8(t),s=e||i.sunSign+"座",r=k7[s]||k7.白羊座,c=t.getDate()+t.getMonth()*31,o=r[c%r.length]+" 黄历示:"+ga(t).yi.slice(0,2).join("、")+"为宜。";return{sign:s,text:o,personalized:!!e}}function Ar({children:t,to:e,onClick:i,ghost:s,className:r=""}){const c=`btn-seal ${s?"btn-ghost":""} ${r}`;return e?a.jsx(L0,{to:e,className:c,onClick:i,children:a.jsx("span",{className:"sb-label",children:t})}):a.jsx("button",{className:c,onClick:i,children:a.jsx("span",{className:"sb-label",children:t})})}const M7=[{id:"top",label:"观微之始"},{id:"today",label:"今日黄历"},{id:"home-arts",label:"九术册页"},{id:"home-fa",label:"观微三法"}];function Rm(){const[t,e]=v.useState("top"),i=Fe();v.useEffect(()=>{var c;const r=(c=i.state)==null?void 0:c.scrollTo;r&&requestAnimationFrame(()=>{var o;r==="top"?window.scrollTo({top:0,behavior:"smooth"}):(o=document.getElementById(r))==null||o.scrollIntoView({behavior:"smooth"})})},[i.state]),v.useEffect(()=>{const r=()=>{const c=window.scrollY+140;let o="top";for(const d of M7){const g=document.getElementById(d.id);g&&g.offsetTop<=c&&(o=d.id)}e(o)};return window.addEventListener("scroll",r,{passive:!0}),r(),()=>window.removeEventListener("scroll",r)},[]);const s=r=>{var c;r==="top"?window.scrollTo({top:0,behavior:"smooth"}):(c=document.getElementById(r))==null||c.scrollIntoView({behavior:"smooth"})};return a.jsx("nav",{className:"side-anchor","aria-label":"首页目录",children:M7.map(r=>a.jsxs("button",{className:t===r.id?"active":"",onClick:()=>s(r.id),children:[a.jsx("span",{className:"dot"}),r.label]},r.id))})}function T7(){const t=Fe(),[e]=v.useState(()=>new Date),i=ga(e),s=o8(e),r=k1(),c=Gm(e,r);return v.useEffect(()=>{var d;const o=(d=t.state)==null?void 0:d.scrollTo;o&&(requestAnimationFrame(()=>{var g;(g=document.getElementById(o))==null||g.scrollIntoView({behavior:"smooth"})}),window.history.replaceState({},""))},[t.state]),a.jsxs(a.Fragment,{children:[a.jsxs("section",{className:"hero",style:{position:"relative"},children:[a.jsx("div",{className:"mist","aria-hidden":"true"}),a.jsxs("div",{className:"wrap",style:{position:"relative",zIndex:1},children:[a.jsx("p",{className:"hero-kicker fade-up",children:"纸墨玄境 · 玄学九术"}),a.jsxs("h1",{className:"hero-title fade-up delay-1",children:["观",a.jsx("span",{className:"accent",children:"微"}),"知著"]}),a.jsxs("p",{className:"hero-line fade-up delay-2",children:["以 ",a.jsx("em",{children:"四柱"})," 参命途,以 ",a.jsx("em",{children:"斗数"})," 观星躔,",a.jsx("br",{}),"以 ",a.jsx("em",{children:"遁甲"})," 演天机,以 ",a.jsx("em",{children:"卦象"})," 问本心。"]}),a.jsxs("p",{className:"hero-desc fade-up delay-2",children:["集八字、紫微、奇门、梅花、六爻、大六壬、小六壬、星盘、塔罗九术于一堂。",a.jsx("br",{}),"静气凝神,焚香默坐,方得片刻清明。"]}),a.jsxs("div",{className:"hero-actions fade-up delay-3",children:[a.jsx(Ar,{to:"/",onClick:()=>{var o;return(o=document.getElementById("home-arts"))==null?void 0:o.scrollIntoView({behavior:"smooth"})},children:"入九术之门"}),a.jsx(Ar,{to:"/art/bazi",ghost:!0,children:"先问八字"})]}),a.jsx(Hm,{}),a.jsxs("div",{className:"hero-vert","aria-hidden":"true",children:[a.jsx("span",{children:"静以观微"}),a.jsx("span",{children:"虚以纳象"}),a.jsx("span",{children:"诚以问占"})]})]})]}),a.jsx("section",{className:"wrap",id:"today",style:{scrollMarginTop:"88px",paddingBottom:"var(--sp-6)"},children:a.jsxs("div",{className:"today-grid",children:[a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"今日黄历"}),a.jsxs("div",{className:"result-text",children:[a.jsxs("p",{children:[a.jsx("strong",{children:i.lunarText})," · ",i.ganzhi,"日 · 生肖",i.shengxiao]}),a.jsxs("p",{children:[i.jieQi?`今日节气:<strong>${i.jieQi}</strong> · `:"","月相 ",a.jsx("strong",{children:i.yueXiang})," · 冲",i.chong," 煞",i.sha]}),a.jsxs("p",{style:{marginTop:".4rem"},children:["宜:",i.yi.length?i.yi.map(o=>a.jsx("span",{className:"pill cool",children:o},o)):"—"]}),a.jsxs("p",{children:["忌:",i.ji.length?i.ji.map(o=>a.jsx("span",{className:"pill hot",children:o},o)):"—"]})]})]}),a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"今日星运"}),a.jsxs("div",{className:"result-text",children:[a.jsxs("p",{children:["太阳落 ",a.jsx("strong",{children:s.sunSign})," · 月亮落 ",a.jsx("strong",{children:s.moonSign})," · 月相 ",s.yueXiang]}),a.jsx("p",{className:"tiny muted",style:{marginTop:".3rem",lineHeight:2},children:s.planets.slice(0,7).map(o=>`${o.name}·${o.sign}`).join(" ")}),a.jsxs("p",{style:{marginTop:".4rem",color:"var(--ink)"},children:[a.jsxs("strong",{children:[c.sign,"运势:"]}),c.text]}),a.jsx("p",{className:"tiny muted",children:c.personalized?"依馆中生辰档案而示。":"入馆录生辰档案,星运可依君而示。"})]})]})]})}),a.jsx(Rm,{}),a.jsx("div",{id:"home-arts",style:{scrollMarginTop:"88px",paddingTop:"var(--sp-2)"},children:a.jsxs("div",{className:"wrap",children:[a.jsxs("div",{className:"section-head fade-up",children:[a.jsx("div",{className:"section-eyebrow",children:"九术总览 · Nine Arts"}),a.jsx("h2",{className:"section-title",children:"九术册页"}),a.jsx("p",{className:"section-note",children:"法无高下,术有专攻。择其所应,诚心则灵。"})]}),a.jsx("div",{className:"arts-grid",children:t2.map((o,d)=>a.jsxs(L0,{className:"art-card",to:`/art/${o.id}`,role:"button",tabIndex:0,children:[a.jsxs("div",{className:"art-num",children:[o.num," · ",o.tag]}),a.jsx("div",{className:"art-symbol","aria-hidden":"true",children:o.glyph}),a.jsx("div",{className:"art-name",children:o.name}),a.jsx("div",{className:"art-poem",children:o.poem}),a.jsxs("div",{className:"art-enter",children:["入 观 · ",String(d+1).padStart(2,"0")]})]},o.id))})]})}),a.jsx("div",{className:"about",id:"home-fa",style:{scrollMarginTop:"76px",marginTop:"var(--sp-7)",padding:"var(--sp-7) 0"},children:a.jsxs("div",{className:"wrap",children:[a.jsxs("div",{className:"section-head",children:[a.jsx("div",{className:"section-eyebrow",children:"占问之道 · Ethos"}),a.jsx("h2",{className:"section-title",children:"观微三法"})]}),a.jsxs("div",{className:"about-grid",children:[a.jsxs("div",{className:"about-item",children:[a.jsx("h3",{children:"静"}),a.jsx("p",{children:"占问先定心。宋人焚香默坐,去浮躁而见真。凡问卜,宜独处一室,屏息凝神,一念一事,方得应验。"})]}),a.jsxs("div",{className:"about-item",children:[a.jsx("h3",{children:"诚"}),a.jsx("p",{children:"《易》曰:「匪我求童蒙,童蒙求我。」心诚则气聚,气聚则象显。同问不三占,三占必有疑,疑则不验。"})]}),a.jsxs("div",{className:"about-item",children:[a.jsx("h3",{children:"悟"}),a.jsx("p",{children:"术者,渡舟也,非彼岸也。卦象所指,是镜非命。观照自身,反求诸己,方是问道正途。"})]})]})]})})]})}function Gm(t,e){var i,s;if(!e)return Ks(t);try{const[r,c,o]=e.profile.birthDate.split("-").map(Number),[d,g]=(e.profile.birthTime||"12:00").split(":").map(Number),f=da(r,c,o,d||0,g||0,(i=e.profile.location)==null?void 0:i.lng,(s=e.profile.location)==null?void 0:s.lat),E=Ee[Math.floor(f.sun/30)][0]+"座";return Ks(t,E)}catch{return Ks(t)}}function Hm(){const[t,e]=v.useState(!0);return v.useEffect(()=>{const i=()=>{const s=document.querySelector(".hero");if(!s)return;const r=s.getBoundingClientRect();e(r.bottom>window.innerHeight*.55)};return window.addEventListener("scroll",i,{passive:!0}),i(),()=>window.removeEventListener("scroll",i)},[]),a.jsxs("div",{className:"scroll-hint inline-hint"+(t?"":" hidden"),"aria-hidden":"true",children:[a.jsx("span",{children:"下滑 · 观九术"}),a.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:a.jsx("path",{d:"M12 5v14M19 12l-7 7-7-7"})})]})}function Zm({className:t=""}){return a.jsx("div",{className:"bamboo-art "+t,"aria-hidden":"true",children:a.jsxs("svg",{viewBox:"0 0 320 520",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M0,470 C60,430 120,445 180,425 C240,405 285,420 320,400 L320,520 L0,520 Z",fill:"#96A88F",opacity:".12"}),a.jsx("path",{d:"M0,495 C80,465 160,480 240,462 C280,453 300,462 320,455 L320,520 L0,520 Z",fill:"#7C9792",opacity:".10"}),[0,1,2,3,4].map(e=>{const i=88+e*34,s=40+e*14,r=500-e*30;return a.jsxs("g",{stroke:"#5F7660",strokeWidth:"3.5",strokeLinecap:"round",fill:"none",opacity:".75",children:[a.jsx("path",{d:"M"+i+","+s+" C"+(i-6)+","+(s+r)/2+" "+(i+8)+","+((s+r)/2+20)+" "+i+","+r}),a.jsx("path",{d:"M"+(i-5)+",150 C"+i+",146 "+i+",146 "+(i+5)+",150",strokeWidth:"2",opacity:".5"}),a.jsx("path",{d:"M"+(i-4)+",268 C"+i+",265 "+i+",265 "+(i+4)+",268",strokeWidth:"2",opacity:".5"}),a.jsx("path",{d:"M"+(i-3)+",386 C"+i+",383 "+i+",383 "+(i+3)+",386",strokeWidth:"2",opacity:".5"})]},e)}),[[60,190,40,210,55,240],[120,140,95,150,108,175],[180,230,160,240,172,262],[240,120,218,130,230,152],[70,320,52,330,66,350],[150,300,128,308,140,328],[230,260,210,270,222,290],[100,80,80,92,94,112],[200,170,178,180,190,200],[250,340,232,348,244,366],[60,420,44,430,58,448],[170,400,152,410,164,428]].map((e,i)=>a.jsx("path",{d:"M"+e[0]+","+e[1]+" Q"+e[2]+","+e[3]+" "+e[4]+","+e[5]+" Q"+e[2]+","+e[3]+" "+e[0]+","+e[1],fill:"#5F7660",opacity:".6"},i)),a.jsx("path",{d:"M40,505 C60,470 95,465 115,490 C100,505 70,510 40,505 Z",fill:"#8C9A8A",opacity:".18"}),a.jsx("rect",{x:"248",y:"470",width:"34",height:"34",rx:"2",stroke:"#A5402D",strokeWidth:"1.5",opacity:".55"}),a.jsx("text",{x:"265",y:"492",textAnchor:"middle",fontSize:"16",fill:"#A5402D",opacity:".55",style:{fontFamily:"Kaiti SC, KaiTi, serif"},children:"观微"})]})})}function Um(){return a.jsxs("div",{className:"page-decor",style:{paddingTop:"var(--sp-7)",paddingBottom:"var(--sp-6)"},children:[a.jsx(Zm,{}),a.jsxs("div",{className:"wrap",children:[a.jsx("div",{className:"section-eyebrow",children:"缘起 · Origin"}),a.jsx("h2",{className:"section-title",style:{marginTop:".8rem",fontSize:"var(--fs-2xl)"},children:"观微缘起"}),a.jsxs("div",{className:"result-text mt-4",style:{maxWidth:"70ch"},children:[a.jsx("p",{children:"以纸墨为衣、以留白为韵。玄学问道,贵在内敛沉静——「致虚极,守静笃」,此与观照自身的功夫,本出一源。"}),a.jsxs("p",{children:["本馆以纸墨之雅为衣,纳九派术数为里——",a.jsx("strong",{children:"四柱八字"}),"论命之经纬,",a.jsx("strong",{children:"紫微斗数"}),"布星之宫垣,",a.jsx("strong",{children:"奇门遁甲"}),"演时之局盘,",a.jsx("strong",{children:"梅花易数"}),"观物之象数,",a.jsx("strong",{children:"六爻"}),"承蓍龟之遗法,",a.jsx("strong",{children:"大六壬"}),"推天地人三传,",a.jsx("strong",{children:"小六壬"}),"藏掐指之玄机,",a.jsx("strong",{children:"星盘"}),"应西洋之天穹,",a.jsx("strong",{children:"塔罗"}),"照潜识之幽微。"]}),a.jsx("p",{children:"术数有中西,观照本无二。愿君于这一方纸墨之间,静得片刻,观微知著。"})]}),a.jsx("div",{className:"separator",children:"· · ·"}),a.jsx("div",{className:"center",children:a.jsx(Ar,{to:"/",onClick:()=>{},ghost:!0,children:"启程问占"})})]})]})}function c8({text:t}){return a.jsxs("div",{className:"disclaimer",role:"note",children:[a.jsx("span",{className:"seal-mini",children:"慎"}),a.jsxs("div",{children:[a.jsx("strong",{children:"观微三戒:"}),t??"凡占问所得,皆为先贤智慧之投影,仅供修身养性、怡情遣兴之用,不构成任何决策依据。心诚则灵,勿迷勿执;大事不决,请询人事、法律或专业人士。"]})]})}function H0({title:t,cells:e,children:i,className:s=""}){return a.jsxs("div",{className:`result-card ${s}`,children:[a.jsx("h3",{children:t}),e&&e.length>0&&a.jsx("div",{className:"result-grid",children:e.map((r,c)=>a.jsxs("div",{className:"result-cell",children:[a.jsx("div",{className:"k",children:r.k}),a.jsx("div",{className:`v ${r.big?"big":""} ${r.hot?"hot":""} ${r.cool?"cool":""}`,children:r.v})]},c))}),i&&a.jsx("div",{className:"result-text",children:i})]})}function b7({glyph:t="卦",text:e="静候卦象 · 观微知著"}){return a.jsxs("div",{className:"result-placeholder",children:[a.jsx("div",{className:"glyph","aria-hidden":"true",children:t}),a.jsx("p",{children:e})]})}function qm(){const[t,e]=v.useState("idle"),[i,s]=v.useState(null),[r,c]=v.useState(null),[o,d]=v.useState(""),g=v.useCallback(async E=>{e("casting"),s(null),c(null),d(""),await new Promise(F=>setTimeout(F,420));try{const F=await E();s(F.resultRaw),c(F.divineId),e("done")}catch(F){console.error(F),d((F==null?void 0:F.message)||"推演未应机"),e("error")}},[]),f=v.useCallback(()=>{e("idle"),s(null),c(null),d("")},[]);return{status:t,result:i,divineId:r,errorMsg:o,divine:g,reset:f}}const u2="/api";typeof window<"u"&&(window.__API_BASE__=u2);console.log("[观微] API_BASE =",u2);async function Xm(t,e,i,s){var g;let r=null,c=!1;const o=new AbortController,d=(f,E)=>{c||(c=!0,s==null||s(f,E))};try{const f=await fetch(u2+"/ai/interpret/stream",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t),signal:o.signal});if(!f.ok){const y=await f.json().catch(()=>({}));d(y.error||"AI_HTTP_"+f.status,y.message||"AI 解读暂未应机");return}const E=(g=f.body)==null?void 0:g.getReader(),F=new TextDecoder;let x="",A=0;if(!E){d("NO_STREAM","无法读取响应");return}for(r=setInterval(()=>{A&&Date.now()-A>18e4&&(clearInterval(r),o.abort(),d("STREAM_TIMEOUT","AI 生成逾时,请重试"))},5e3);;){const{done:y,value:B}=await E.read();if(y)break;A||(A=Date.now()),x+=F.decode(B,{stream:!0});const _=x.split(`
|
|
83
|
+
|
|
84
|
+
`);x=_.pop()||"";for(const S of _){if(!S.startsWith("data: "))continue;const M=S.slice(6);try{const Y=JSON.parse(M);if(Y.type==="char")e(Y.char);else if(Y.type==="done"){if(c)continue;c=!0,i(Y.sections||[],Y.full||"",Y.report,Y.truncated===!0,Y.quality==="poor"?"poor":"ok")}else Y.type==="error"&&d(Y.code,Y.message)}catch{}}}r&&clearInterval(r),c||(c=!0,i([],"",void 0,!1,"ok"))}catch(f){if(r&&clearInterval(r),(f==null?void 0:f.name)==="AbortError")return;console.error("[观微 AI] 流式调用异常:",f),d("NETWORK",(f==null?void 0:f.message)||"网络异常")}}async function Jm(t,e,i,s,r,c){const o=await fetch(u2+"/divine",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({username:t,artId:e,inputs:i,profile:s,question:r})});if(!o.ok){let d="推演未应机";try{const g=await o.json();d=g.message||g.error||d}catch{}throw new Error(d)}return o.json()}async function Wm(t,e=1,i=20,s){const r=await fetch(u2+"/divine?username="+encodeURIComponent(t)+"&page="+e+"&pageSize="+i);return r.ok?r.json():{list:[],total:0}}async function $m(t,e){const i=await fetch(u2+"/divine/"+t+"?username="+encodeURIComponent(e));return i.ok?i.json():null}async function Qm(t,e){return(await fetch(u2+"/divine/"+t+"?username="+encodeURIComponent(e),{method:"DELETE"})).ok}function h8(t,e,i){const s=["# "+t.title,"","> 术别:"+e+" · 所问:"+(i||"(未书,心念已至)"),"","## 总述","",t.overview,"",...t.chapters.flatMap(d=>["## "+(d.skill||"参详"),"",d.content,""]),"## 结语","",t.conclusion,"","---",t.disclaimer],r=new Blob(["\uFEFF"+s.join(`
|
|
85
|
+
`)],{type:"text/markdown;charset=utf-8"}),c=URL.createObjectURL(r),o=document.createElement("a");o.href=c,o.download=(t.title||"观微报告")+".md",o.click(),URL.revokeObjectURL(c)}async function Km(t){const e=await fetch(u2+"/hour-infer",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!e.ok){let i="推演未应机";try{const s=await e.json();i=s.message||s.error||i}catch{}throw new Error(i)}return e.json()}function Vm(){const[t,e]=v.useState("idle"),[i,s]=v.useState(""),[r,c]=v.useState([]),[o,d]=v.useState(""),[g,f]=v.useState(""),[E,F]=v.useState(null),[x,A]=v.useState(!1),[y,B]=v.useState("ok"),_=v.useRef(!1),S=v.useRef(!1),M=v.useRef(0),Y=v.useCallback(async T=>{const W=++M.current;_.current=!1,S.current=!1,e("streaming"),s(""),c([]),F(null),A(!1),B("ok"),d(""),f(""),await Xm(T,X=>{M.current===W&&s(Z=>Z+X)},(X,Z,$,e0,q)=>{M.current===W&&(S.current||(S.current=!0,c(X),$?F($):X.length===0&&!$&&F(null),e0&&A(!0),q==="poor"&&B("poor"),e("done")))},(X,Z)=>{M.current===W&&(S.current=!0,d(Z||X),f(X),e("error"))})},[]),z=v.useCallback(()=>{M.current++,_.current=!0,S.current=!0,e("idle"),s(""),c([]),d(""),f(""),F(null),A(!1),B("ok")},[]);return{status:t,text:i,sections:r,report:E,truncated:x,quality:y,errorMsg:o,errorCode:g,interpret:Y,reset:z}}const rt={北京市:{lng:115.985006,lat:40.465325,cities:{北京市:{lng:115.985006,lat:40.465325,districts:{}}}},天津市:{lng:117.407449,lat:40.045342,cities:{天津市:{lng:117.407449,lat:40.045342,districts:{}}}},河北省:{lng:114.502461,lat:38.045474,cities:{石家庄市:{lng:114.502461,lat:38.045474,districts:{长安区:[114.548151,38.047501],桥西区:[114.462931,38.028383],新华区:[114.465974,38.067142],井陉矿区:[114.058178,38.069748],裕华区:[114.533257,38.027696],藁城区:[114.849647,38.033767],鹿泉区:[114.321023,38.093994],栾城区:[114.654281,37.886911],井陉县:[114.144488,38.033614],正定县:[114.569887,38.147835],行唐县:[114.552734,38.437422],灵寿县:[114.37946,38.306546],高邑县:[114.610699,37.605714],深泽县:[115.200207,38.18454],赞皇县:[114.387756,37.660199],无极县:[114.977845,38.176376],平山县:[114.184144,38.259311],元氏县:[114.52618,37.762514],赵县:[114.775362,37.754341],辛集市:[115.217451,37.92904],晋州市:[115.044886,38.027478],新乐市:[114.68578,38.344768]}},唐山市:{lng:118.175393,lat:39.635113,districts:{路南区:[118.210821,39.615162],路北区:[118.174736,39.628538],古冶区:[118.45429,39.715736],开平区:[118.264425,39.676171],丰南区:[118.110793,39.56303],丰润区:[118.155779,39.831363],曹妃甸区:[118.446585,39.278277],滦南县:[118.681552,39.506201],乐亭县:[118.905341,39.42813],迁西县:[118.305139,40.146238],玉田县:[117.753665,39.887323],遵化市:[117.965875,40.188616],迁安市:[118.701933,40.012108],滦州市:[118.699546,39.74485]}},秦皇岛市:{lng:119.586579,lat:39.942531,districts:{海港区:[119.596224,39.943458],山海关区:[119.753591,39.998023],北戴河区:[119.486286,39.825121],抚宁区:[119.240651,39.887053],青龙满族自治县:[118.954555,40.406023],昌黎县:[119.164541,39.709729],卢龙县:[118.881809,39.891639]}},邯郸市:{lng:114.490686,lat:36.612273,districts:{邯山区:[114.484989,36.603196],丛台区:[114.494703,36.611082],复兴区:[114.458242,36.615484],峰峰矿区:[114.209936,36.420487],肥乡区:[114.805154,36.555778],永年区:[114.496162,36.776413],临漳县:[114.610703,36.337604],成安县:[114.680356,36.443832],大名县:[115.152586,36.283316],涉县:[113.673297,36.563143],磁县:[114.38208,36.367673],邱县:[115.168584,36.81325],鸡泽县:[114.878517,36.914908],广平县:[114.950859,36.483603],馆陶县:[115.289057,36.539461],魏县:[114.93411,36.354248],曲周县:[114.957588,36.773398],武安市:[114.194581,36.696115]}},邢台市:{lng:114.508851,lat:37.0682,districts:{襄都区:[114.507131,37.064125],信都区:[114.473687,37.068009],任泽区:[114.684469,37.129952],南和区:[114.691377,37.003812],临城县:[114.506873,37.444009],内丘县:[114.511523,37.287663],柏乡县:[114.693382,37.483596],隆尧县:[114.776348,37.350925],宁晋县:[114.921027,37.618956],巨鹿县:[115.038782,37.21768],新河县:[115.247537,37.526216],广宗县:[115.142797,37.075548],平乡县:[115.029218,37.069404],威县:[115.272749,36.983272],清河县:[115.668999,37.059991],临西县:[115.498684,36.8642],南宫市:[115.398102,37.359668],沙河市:[114.504902,36.861903]}},保定市:{lng:115.482331,lat:38.867657,districts:{竞秀区:[115.470659,38.88662],莲池区:[115.500934,38.865005],满城区:[115.32442,38.95138],清苑区:[115.492221,38.771012],徐水区:[115.64941,39.020395],涞水县:[115.711985,39.393148],阜平县:[114.198801,38.847276],定兴县:[115.796895,39.266195],唐县:[114.981241,38.748542],高阳县:[115.778878,38.690092],容城县:[115.866247,39.05282],涞源县:[114.692567,39.35755],望都县:[115.154009,38.707448],安新县:[115.931979,38.929912],易县:[115.501146,39.35297],曲阳县:[114.704055,38.619992],蠡县:[115.583631,38.496429],顺平县:[115.132749,38.845127],博野县:[115.461798,38.458271],雄县:[116.107474,38.990819],涿州市:[115.973409,39.485765],定州市:[114.991389,38.517602],安国市:[115.33141,38.421367],高碑店市:[115.882704,39.327689]}},张家口市:{lng:114.884091,lat:40.811901,districts:{桥东区:[114.885658,40.813875],桥西区:[114.882127,40.824385],宣化区:[115.0632,40.609368],下花园区:[115.281002,40.488645],万全区:[114.736131,40.765136],崇礼区:[115.281652,40.971302],张北县:[114.715951,41.151713],康保县:[114.615809,41.850046],沽源县:[115.684836,41.667419],尚义县:[113.977713,41.080091],蔚县:[114.582695,39.837181],阳原县:[114.167343,40.113419],怀安县:[114.422364,40.671274],怀来县:[115.520846,40.405405],涿鹿县:[115.219246,40.378701],赤城县:[115.832708,40.912081]}},承德市:{lng:117.939152,lat:40.976204,districts:{双桥区:[117.939152,40.976204],双滦区:[117.797485,40.959756],鹰手营子矿区:[117.661154,40.546956],承德县:[118.172496,40.768637],兴隆县:[117.507098,40.418525],滦平县:[117.337124,40.936644],隆化县:[117.736343,41.316667],丰宁满族自治县:[116.65121,41.209903],宽城满族自治县:[118.488642,40.607981],围场满族蒙古族自治县:[117.764086,41.949404],平泉市:[118.690238,41.00561]}},沧州市:{lng:116.857461,lat:38.310582,districts:{新华区:[116.873049,38.308273],运河区:[116.840063,38.307405],沧县:[117.007478,38.219856],青县:[116.838384,38.569646],东光县:[116.542062,37.88655],海兴县:[117.496606,38.141582],盐山县:[117.229814,38.056141],肃宁县:[115.835856,38.427102],南皮县:[116.709171,38.042439],吴桥县:[116.391512,37.628182],献县:[116.123844,38.189661],孟村回族自治县:[117.105104,38.057953],泊头市:[116.570163,38.073479],任丘市:[116.106764,38.706513],黄骅市:[117.343803,38.369238],河间市:[116.089452,38.44149]}},廊坊市:{lng:116.704441,lat:39.523927,districts:{安次区:[116.694544,39.502569],广阳区:[116.713708,39.521931],固安县:[116.299894,39.436468],永清县:[116.498089,39.319717],香河县:[117.007161,39.757212],大城县:[116.640735,38.699215],文安县:[116.460107,38.866801],大厂回族自治县:[116.986501,39.889266],霸州市:[116.392021,39.117331],三河市:[117.077018,39.982778]}},衡水市:{lng:115.665993,lat:37.735097,districts:{桃城区:[115.694945,37.732237],冀州区:[115.579173,37.542788],枣强县:[115.726499,37.511512],武邑县:[115.892415,37.803774],武强县:[115.970236,38.03698],饶阳县:[115.726577,38.232671],安平县:[115.519627,38.233511],故城县:[115.966747,37.350981],景县:[116.258446,37.686622],阜城县:[116.164727,37.869945],深州市:[115.554596,38.00347]}}}},山西省:{lng:112.549248,lat:37.857014,cities:{太原市:{lng:112.549248,lat:37.857014,districts:{小店区:[112.564273,37.817974],迎泽区:[112.558851,37.855804],杏花岭区:[112.560743,37.879291],尖草坪区:[112.487122,37.939893],万柏林区:[112.522258,37.862653],晋源区:[112.477849,37.715619],清徐县:[112.357961,37.60729],阳曲县:[112.673818,38.058797],娄烦县:[111.793798,38.066035],古交市:[112.174353,37.908534]}},大同市:{lng:113.295259,lat:40.09031,districts:{新荣区:[113.141044,40.258269],平城区:[113.298027,40.075667],云冈区:[113.149693,40.005405],云州区:[113.61244,40.040295],阳高县:[113.749871,40.364927],天镇县:[114.09112,40.421336],广灵县:[114.279252,39.763051],灵丘县:[114.23576,39.438867],浑源县:[113.698091,39.699099],左云县:[112.70641,40.012873]}},阳泉市:{lng:113.583285,lat:37.861188,districts:{城区:[113.586513,37.860938],矿区:[113.559066,37.870085],郊区:[113.58664,37.94096],平定县:[113.631049,37.800289],盂县:[113.41223,38.086131]}},长治市:{lng:113.113556,lat:36.191112,districts:{潞州区:[113.114107,36.187895],上党区:[113.056679,36.052438],屯留区:[112.892741,36.314072],潞城区:[113.223245,36.332232],襄垣县:[113.050094,36.532854],平顺县:[113.438791,36.200202],黎城县:[113.387366,36.502971],壶关县:[113.206138,36.110938],长子县:[112.884656,36.119484],武乡县:[112.8653,36.834315],沁县:[112.70138,36.757123],沁源县:[112.340878,36.500777]}},晋城市:{lng:112.851274,lat:35.497553,districts:{城区:[112.853106,35.496641],沁水县:[112.187213,35.689472],阳城县:[112.422014,35.482177],陵川县:[113.278877,35.775614],泽州县:[112.899137,35.617221],高平市:[112.930691,35.791355]}},朔州市:{lng:112.433387,lat:39.331261,districts:{朔城区:[112.428676,39.324525],平鲁区:[112.295227,39.515603],山阴县:[112.816396,39.52677],应县:[113.187505,39.559187],右玉县:[112.465588,39.988812],怀仁市:[113.100511,39.820789]}},晋中市:{lng:112.736465,lat:37.696495,districts:{榆次区:[112.740056,37.6976],太谷区:[112.554103,37.424595],榆社县:[112.973521,37.069019],左权县:[113.377834,37.079672],和顺县:[113.572919,37.327027],昔阳县:[113.706166,37.60437],寿阳县:[113.177708,37.891136],祁县:[112.330532,37.358739],平遥县:[112.174059,37.195474],灵石县:[111.772759,36.847469],介休市:[111.913857,37.027616]}},运城市:{lng:111.003957,lat:35.022778,districts:{盐湖区:[111.000627,35.025643],临猗县:[110.77493,35.141883],万荣县:[110.843561,35.417042],闻喜县:[111.220306,35.353839],稷山县:[110.978996,35.600412],新绛县:[111.225205,35.613697],绛县:[111.576182,35.49045],垣曲县:[111.67099,35.298293],夏县:[111.223174,35.140441],平陆县:[111.212377,34.837256],芮城县:[110.69114,34.694769],永济市:[110.447984,34.865125],河津市:[110.710268,35.59715]}},忻州市:{lng:112.733538,lat:38.41769,districts:{忻府区:[112.734112,38.417743],定襄县:[112.963231,38.484948],五台县:[113.259012,38.725711],代县:[112.962519,39.065138],繁峙县:[113.267707,39.188104],宁武县:[112.307936,39.001718],静乐县:[111.940231,38.355947],神池县:[112.200438,39.088467],五寨县:[111.841015,38.912761],岢岚县:[111.56981,38.705625],河曲县:[111.146609,39.381895],保德县:[111.085688,39.022576],偏关县:[111.500477,39.442153],原平市:[112.713132,38.729186]}},临汾市:{lng:111.517973,lat:36.08415,districts:{尧都区:[111.522945,36.080366],曲沃县:[111.475529,35.641387],翼城县:[111.713508,35.738621],襄汾县:[111.442932,35.876139],洪洞县:[111.673692,36.255742],古县:[111.920207,36.26855],安泽县:[112.251372,36.146032],浮山县:[111.850039,35.971359],吉县:[110.682853,36.099355],乡宁县:[110.857365,35.975402],大宁县:[110.751283,36.46383],隰县:[110.935809,36.692675],永和县:[110.631276,36.760614],蒲县:[111.09733,36.411682],汾西县:[111.563021,36.653368],侯马市:[111.371272,35.620302],霍州市:[111.723103,36.57202]}},吕梁市:{lng:111.134335,lat:37.524366,districts:{离石区:[111.134462,37.524037],文水县:[112.032595,37.436314],交城县:[112.159154,37.555155],兴县:[111.124816,38.464136],临县:[110.995963,37.960806],柳林县:[110.89613,37.431664],石楼县:[110.837119,36.999426],岚县:[111.671555,38.278654],方山县:[111.238885,37.892632],中阳县:[111.193319,37.342054],交口县:[111.183188,36.983068],孝义市:[111.781568,37.144474],汾阳市:[111.785273,37.267742]}}}},内蒙古自治区:{lng:111.670801,lat:40.818311,cities:{呼和浩特市:{lng:111.670801,lat:40.818311,districts:{新城区:[111.685964,40.826225],回民区:[111.662162,40.815149],玉泉区:[111.66543,40.799421],赛罕区:[111.698463,40.807834],土默特左旗:[111.133615,40.720416],托克托县:[111.197317,40.276729],和林格尔县:[111.824143,40.380288],清水河县:[111.67222,39.912479],武川县:[111.456563,41.094483]}},包头市:{lng:109.840405,lat:40.658168,districts:{东河区:[110.026895,40.587056],昆都仑区:[109.822932,40.661345],青山区:[109.880049,40.668558],石拐区:[110.272565,40.672094],白云鄂博矿区:[109.97016,41.769246],九原区:[109.968122,40.600581],土默特右旗:[110.526766,40.566434],固阳县:[110.063421,41.030004],达尔罕茂明安联合旗:[110.438452,41.702836]}},乌海市:{lng:106.825563,lat:39.673734,districts:{海勃湾区:[106.817762,39.673527],海南区:[106.884789,39.44153],乌达区:[106.722711,39.502288]}},赤峰市:{lng:118.956806,lat:42.275317,districts:{红山区:[118.961087,42.269732],元宝山区:[119.289877,42.041168],松山区:[118.938958,42.281046],阿鲁科尔沁旗:[120.094969,43.87877],巴林左旗:[119.391737,43.980715],巴林右旗:[118.678347,43.528963],林西县:[118.05775,43.605326],克什克腾旗:[117.542465,43.256233],翁牛特旗:[119.022619,42.937128],喀喇沁旗:[118.708572,41.92778],宁城县:[119.339242,41.598692],敖汉旗:[119.906486,42.287012]}},通辽市:{lng:122.263119,lat:43.617429,districts:{科尔沁区:[122.264042,43.617422],科尔沁左翼中旗:[123.313873,44.127166],科尔沁左翼后旗:[122.355155,42.954564],开鲁县:[121.308797,43.602432],库伦旗:[121.774886,42.734692],奈曼旗:[120.662543,42.84685],扎鲁特旗:[120.905275,44.555294],霍林郭勒市:[119.657862,45.532361]}},鄂尔多斯市:{lng:109.99029,lat:39.817179,districts:{东胜区:[109.98945,39.81788],康巴什区:[109.790076,39.607472],达拉特旗:[110.040281,40.404076],准格尔旗:[111.238332,39.865221],鄂托克前旗:[107.48172,38.183257],鄂托克旗:[107.982604,39.095752],杭锦旗:[108.736324,39.831789],乌审旗:[108.842454,38.596611],伊金霍洛旗:[109.787402,39.604312]}},呼伦贝尔市:{lng:119.758168,lat:49.215333,districts:{海拉尔区:[119.764923,49.213889],扎赉诺尔区:[117.716373,49.456567],阿荣旗:[123.464615,48.130503],莫力达瓦达斡尔族自治旗:[124.507401,48.478385],鄂伦春自治旗:[123.725684,50.590177],鄂温克族自治旗:[119.754041,49.143293],陈巴尔虎旗:[119.437609,49.328422],新巴尔虎左旗:[118.267454,48.216571],新巴尔虎右旗:[116.825991,48.669134],满洲里市:[117.455561,49.590788],牙克石市:[120.729005,49.287024],扎兰屯市:[122.744401,48.007412],额尔古纳市:[120.178636,50.2439],根河市:[121.532724,50.780454]}},巴彦淖尔市:{lng:107.416959,lat:40.757402,districts:{临河区:[107.417018,40.757092],五原县:[108.270658,41.097639],磴口县:[107.006056,40.330479],乌拉特前旗:[108.656816,40.725209],乌拉特中旗:[108.515255,41.57254],乌拉特后旗:[107.074941,41.084307],杭锦后旗:[107.147682,40.888797]}},乌兰察布市:{lng:113.114543,lat:41.034126,districts:{集宁区:[113.116453,41.034134],卓资县:[112.577702,40.89576],化德县:[114.01008,41.899335],商都县:[113.560643,41.560163],兴和县:[113.834009,40.872437],凉城县:[112.500911,40.531627],察哈尔右翼前旗:[113.211958,40.786859],察哈尔右翼中旗:[112.633563,41.274212],察哈尔右翼后旗:[113.1906,41.447213],四子王旗:[111.70123,41.528114],丰镇市:[113.163462,40.437534]}},兴安盟:{lng:122.070317,lat:46.076268,districts:{乌兰浩特市:[122.068975,46.077238],阿尔山市:[119.943656,47.177],科尔沁右翼前旗:[121.957544,46.076497],科尔沁右翼中旗:[121.472818,45.059645],扎赉特旗:[122.909332,46.725136],突泉县:[121.564856,45.380986]}},锡林郭勒盟:{lng:116.090996,lat:43.944018,districts:{二连浩特市:[111.97981,43.652895],锡林浩特市:[116.091903,43.944301],阿巴嘎旗:[114.970618,44.022728],苏尼特左旗:[113.653412,43.854108],苏尼特右旗:[112.65539,42.746662],东乌珠穆沁旗:[116.980022,45.510307],西乌珠穆沁旗:[117.615249,44.586147],太仆寺旗:[115.28728,41.895199],镶黄旗:[113.843869,42.239229],正镶白旗:[115.031423,42.286807],正蓝旗:[116.003311,42.245895],多伦县:[116.477288,42.197962]}},阿拉善盟:{lng:105.706422,lat:38.844814,districts:{阿拉善左旗:[105.70192,38.847241],阿拉善右旗:[101.671984,39.21159],额济纳旗:[101.06944,41.958813]}}}},辽宁省:{lng:123.429096,lat:41.796767,cities:{沈阳市:{lng:123.429096,lat:41.796767,districts:{和平区:[123.406664,41.788074],沈河区:[123.445696,41.795591],大东区:[123.469956,41.808503],皇姑区:[123.405677,41.822336],铁西区:[123.350664,41.787808],苏家屯区:[123.341604,41.665904],浑南区:[123.458981,41.741946],沈北新区:[123.521471,42.052312],于洪区:[123.310829,41.795833],辽中区:[122.731269,41.512725],康平县:[123.352703,42.741533],法库县:[123.416722,42.507045],新民市:[122.828868,41.996508]}},大连市:{lng:121.618622,lat:38.91459,districts:{中山区:[121.64376,38.921553],西岗区:[121.616112,38.914266],沙河口区:[121.593702,38.912859],甘井子区:[121.582614,38.975148],旅顺口区:[121.26713,38.812043],金州区:[121.789413,39.052745],普兰店区:[121.9705,39.401555],长海县:[122.587824,39.272399],瓦房店市:[122.002656,39.63065],庄河市:[122.970612,39.69829]}},鞍山市:{lng:122.995632,lat:41.110626,districts:{铁东区:[122.994475,41.110344],铁西区:[122.971834,41.11069],立山区:[123.024806,41.150622],千山区:[122.949298,41.068909],台安县:[122.429736,41.38686],岫岩满族自治县:[123.28833,40.281509],海城市:[122.752199,40.852533]}},抚顺市:{lng:123.921109,lat:41.875956,districts:{新抚区:[123.902858,41.86082],东洲区:[124.047219,41.866829],望花区:[123.801509,41.851803],顺城区:[123.917165,41.881132],抚顺县:[124.097979,41.922644],新宾满族自治县:[125.037547,41.732456],清原满族自治县:[124.927192,42.10135]}},本溪市:{lng:123.770519,lat:41.297909,districts:{平山区:[123.761231,41.291581],溪湖区:[123.765226,41.330056],明山区:[123.763288,41.302429],南芬区:[123.748381,41.104093],本溪满族自治县:[124.126156,41.300344],桓仁满族自治县:[125.359195,41.268997]}},丹东市:{lng:124.383044,lat:40.124296,districts:{元宝区:[124.397814,40.136483],振兴区:[124.361153,40.102801],振安区:[124.427709,40.158557],宽甸满族自治县:[124.784867,40.730412],东港市:[124.149437,39.883467],凤城市:[124.071067,40.457567]}},锦州市:{lng:121.135742,lat:41.119269,districts:{古塔区:[121.130085,41.115719],凌河区:[121.151304,41.114662],太和区:[121.107297,41.105378],黑山县:[122.117915,41.691804],义县:[121.242831,41.537224],凌海市:[121.364236,41.171738],北镇市:[121.795962,41.598764]}},营口市:{lng:122.235151,lat:40.667432,districts:{站前区:[122.253235,40.669949],西市区:[122.210067,40.663086],鲅鱼圈区:[122.127242,40.263646],老边区:[122.382584,40.682723],盖州市:[122.355534,40.405234],大石桥市:[122.505894,40.633973]}},阜新市:{lng:121.648962,lat:42.011796,districts:{海州区:[121.657639,42.011162],新邱区:[121.790541,42.086603],太平区:[121.677575,42.011145],清河门区:[121.42018,41.780477],细河区:[121.654791,42.019218],阜新蒙古族自治县:[121.743125,42.058607],彰武县:[122.537444,42.384823]}},辽阳市:{lng:123.18152,lat:41.269402,districts:{白塔区:[123.172611,41.26745],文圣区:[123.188227,41.266765],宏伟区:[123.200461,41.205747],弓长岭区:[123.431633,41.157831],太子河区:[123.185336,41.251682],辽阳县:[123.079674,41.216479],灯塔市:[123.325864,41.427836]}},盘锦市:{lng:122.06957,lat:41.124484,districts:{双台子区:[122.055733,41.190365],兴隆台区:[122.071624,41.122423],大洼区:[122.071708,40.994428],盘山县:[121.98528,41.240701]}},铁岭市:{lng:123.844279,lat:42.290585,districts:{银州区:[123.844877,42.292278],清河区:[124.14896,42.542978],铁岭县:[123.725669,42.223316],西丰县:[124.72332,42.738091],昌图县:[124.11017,42.784441],调兵山市:[123.545366,42.450734],开原市:[124.045551,42.542141]}},朝阳市:{lng:120.451176,lat:41.576758,districts:{双塔区:[120.44877,41.579389],龙城区:[120.413376,41.576749],朝阳县:[120.404217,41.526342],建平县:[119.642363,41.402576],喀喇沁左翼蒙古族自治县:[119.744883,41.125428],北票市:[120.766951,41.803286],凌源市:[119.404789,41.243086]}},葫芦岛市:{lng:120.856394,lat:40.755572,districts:{连山区:[120.85937,40.755143],龙港区:[120.838569,40.709991],南票区:[120.752314,41.098813],绥中县:[120.342112,40.328407],建昌县:[119.807776,40.812871],兴城市:[120.729365,40.619413]}}}},吉林省:{lng:125.3245,lat:43.886841,cities:{长春市:{lng:125.3245,lat:43.886841,districts:{南关区:[125.337237,43.890235],宽城区:[125.342828,43.903823],朝阳区:[125.318042,43.86491],二道区:[125.384727,43.870824],绿园区:[125.272467,43.892177],双阳区:[125.659018,43.525168],九台区:[125.844682,44.157155],农安县:[125.175287,44.431258],榆树市:[126.550107,44.827642],德惠市:[125.703327,44.533909],公主岭市:[124.817588,43.509474]}},吉林市:{lng:126.55302,lat:43.843577,districts:{昌邑区:[126.570766,43.851118],龙潭区:[126.561429,43.909755],船营区:[126.55239,43.843804],丰满区:[126.560759,43.816594],永吉县:[126.501622,43.667416],蛟河市:[127.342739,43.720579],桦甸市:[126.745445,42.972093],舒兰市:[126.947813,44.410906],磐石市:[126.059929,42.942476]}},四平市:{lng:124.370785,lat:43.170344,districts:{铁西区:[124.360894,43.176263],铁东区:[124.388464,43.16726],梨树县:[124.335802,43.30831],伊通满族自治县:[125.303124,43.345464],双辽市:[123.505283,43.518275]}},辽源市:{lng:125.145349,lat:42.902692,districts:{龙山区:[125.145164,42.902702],西安区:[125.151424,42.920415],东丰县:[125.529623,42.675228],东辽县:[124.991995,42.927724]}},通化市:{lng:125.936501,lat:41.721177,districts:{东昌区:[125.936716,41.721233],二道江区:[126.045987,41.777564],通化县:[125.753121,41.677918],辉南县:[126.042821,42.683459],柳河县:[125.740536,42.281484],梅河口市:[125.687336,42.530002],集安市:[126.186204,41.126276]}},白山市:{lng:126.427839,lat:41.942505,districts:{浑江区:[126.428035,41.943065],江源区:[126.584229,42.048109],抚松县:[127.273796,42.332643],靖宇县:[126.808386,42.389689],长白朝鲜族自治县:[128.203384,41.419361],临江市:[126.919296,41.810689]}},松原市:{lng:124.823608,lat:45.118243,districts:{宁江区:[124.827851,45.176498],前郭尔罗斯蒙古族自治县:[124.826808,45.116288],长岭县:[123.985184,44.276579],乾安县:[124.024361,45.006846],扶余市:[126.042758,44.986199]}},白城市:{lng:122.841114,lat:45.619026,districts:{洮北区:[122.842499,45.619253],镇赉县:[123.202246,45.846089],通榆县:[123.088543,44.80915],洮南市:[122.783779,45.339113],大安市:[124.291512,45.507648]}},延边朝鲜族自治州:{lng:129.513228,lat:42.904823,districts:{延吉市:[129.51579,42.906964],图们市:[129.846701,42.966621],敦化市:[128.22986,43.366921],珲春市:[130.365787,42.871057],龙井市:[129.425747,42.771029],和龙市:[129.008748,42.547004],汪清县:[129.766161,43.315426],安图县:[128.901865,43.110994]}}}},黑龙江省:{lng:126.642464,lat:45.756967,cities:{哈尔滨市:{lng:126.642464,lat:45.756967,districts:{道里区:[126.612532,45.762035],南岗区:[126.652098,45.755971],道外区:[126.648838,45.78454],平房区:[126.629257,45.605567],松北区:[126.563066,45.814656],香坊区:[126.667049,45.713067],呼兰区:[126.603302,45.98423],阿城区:[126.972726,45.538372],双城区:[126.308784,45.377942],依兰县:[129.565594,46.315105],方正县:[128.836131,45.839536],宾县:[127.48594,45.759369],巴彦县:[127.403602,46.081889],木兰县:[128.042675,45.949826],通河县:[128.747786,45.977618],延寿县:[128.331886,45.455648],尚志市:[127.968539,45.214953],五常市:[127.15759,44.919418]}},齐齐哈尔市:{lng:123.95792,lat:47.342081,districts:{龙沙区:[123.957338,47.341736],建华区:[123.955888,47.354494],铁锋区:[123.973555,47.339499],昂昂溪区:[123.813181,47.156867],富拉尔基区:[123.638873,47.20697],碾子山区:[122.887972,47.51401],梅里斯达斡尔族区:[123.754599,47.311113],龙江县:[123.187225,47.336388],依安县:[125.307561,47.890098],泰来县:[123.41953,46.39233],甘南县:[123.506034,47.917838],富裕县:[124.469106,47.797172],克山县:[125.874355,48.034342],克东县:[126.249094,48.03732],拜泉县:[126.091911,47.607363],讷河市:[124.882172,48.481133]}},鸡西市:{lng:130.975966,lat:45.300046,districts:{鸡冠区:[130.974374,45.30034],恒山区:[130.910636,45.213242],滴道区:[130.846823,45.348812],梨树区:[130.697781,45.092195],城子河区:[131.010501,45.338248],麻山区:[130.481126,45.209607],鸡东县:[131.148907,45.250892],虎林市:[132.973881,45.767985],密山市:[131.874137,45.54725]}},鹤岗市:{lng:130.277487,lat:47.332085,districts:{向阳区:[130.292478,47.345372],工农区:[130.276652,47.331678],南山区:[130.275533,47.31324],兴安区:[130.236169,47.252911],东山区:[130.31714,47.337385],兴山区:[130.30534,47.35997],萝北县:[130.829087,47.577577],绥滨县:[131.860526,47.289892]}},双鸭山市:{lng:131.157304,lat:46.643442,districts:{尖山区:[131.15896,46.642961],岭东区:[131.163675,46.591076],四方台区:[131.333181,46.594347],宝山区:[131.404294,46.573366],集贤县:[131.13933,46.72898],友谊县:[131.810622,46.775159],宝清县:[132.206415,46.328781],饶河县:[134.021162,46.801288]}},大庆市:{lng:125.11272,lat:46.590734,districts:{萨尔图区:[125.114643,46.596356],龙凤区:[125.145794,46.573948],让胡路区:[124.868341,46.653254],红岗区:[124.889528,46.403049],大同区:[124.818509,46.034304],肇州县:[125.273254,45.708685],肇源县:[125.081974,45.518832],林甸县:[124.877742,47.186411],杜尔伯特蒙古族自治县:[124.446259,46.865973]}},伊春市:{lng:128.899396,lat:47.724775,districts:{伊美区:[128.907303,47.728171],乌翠区:[128.669859,47.726728],友好区:[128.84075,47.853778],嘉荫县:[130.397684,48.891378],汤旺县:[129.571108,48.454651],丰林县:[129.5336,48.290455],大箐山县:[129.020793,47.028397],南岔县:[129.28246,47.137314],金林区:[129.429117,47.413074],铁力市:[128.030561,46.985772]}},佳木斯市:{lng:130.361634,lat:46.809606,districts:{向阳区:[130.361786,46.809645],前进区:[130.377684,46.812345],东风区:[130.403297,46.822476],郊区:[130.351588,46.80712],桦南县:[130.570112,46.240118],桦川县:[130.723713,47.023039],汤原县:[129.904463,46.730048],同江市:[132.510119,47.651131],富锦市:[132.037951,47.250747],抚远市:[134.294501,48.364707]}},七台河市:{lng:131.015584,lat:45.771266,districts:{新兴区:[130.889482,45.794258],桃山区:[131.015848,45.771217],茄子河区:[131.071561,45.776587],勃利县:[130.575025,45.751573]}},牡丹江市:{lng:129.618602,lat:44.582962,districts:{东安区:[129.623292,44.582399],阳明区:[129.634645,44.596328],爱民区:[129.601232,44.595443],西安区:[129.61311,44.581032],林口县:[130.268402,45.286645],绥芬河市:[131.164856,44.396864],海林市:[129.387902,44.574149],宁安市:[129.470019,44.346836],穆棱市:[130.527085,44.91967],东宁市:[131.125296,44.063578]}},黑河市:{lng:127.499023,lat:50.249585,districts:{爱辉区:[127.497639,50.249027],逊克县:[128.476152,49.582974],孙吴县:[127.327315,49.423941],北安市:[126.508737,48.245437],五大连池市:[126.197694,48.512688],嫩江市:[125.229904,49.177461]}},绥化市:{lng:126.99293,lat:46.637393,districts:{北林区:[126.990665,46.634912],望奎县:[126.484191,46.83352],兰西县:[126.289315,46.259037],青冈县:[126.112268,46.686596],庆安县:[127.510024,46.879203],明水县:[125.907544,47.183527],绥棱县:[127.111121,47.247195],安达市:[125.329926,46.410614],肇东市:[125.991402,46.069471],海伦市:[126.969383,47.460428]}},大兴安岭地区:{lng:124.711526,lat:52.335262,districts:{漠河市:[122.536256,52.972074],加格达奇区:[124.126716,50.424654],呼玛县:[126.662105,51.726998],塔河县:[124.710516,52.335229]}}}},上海市:{lng:121.397516,lat:31.626946,cities:{上海市:{lng:121.397516,lat:31.626946,districts:{}}}},江苏省:{lng:118.767413,lat:32.041544,cities:{南京市:{lng:118.767413,lat:32.041544,districts:{玄武区:[118.792199,32.050678],秦淮区:[118.786088,32.033818],建邺区:[118.732688,32.004538],鼓楼区:[118.769739,32.066966],浦口区:[118.625307,32.05839],栖霞区:[118.808702,32.102147],雨花台区:[118.77207,31.995946],江宁区:[118.850621,31.953418],六合区:[118.85065,32.340655],溧水区:[119.028732,31.653061],高淳区:[118.87589,31.327132]}},无锡市:{lng:120.301663,lat:31.574729,districts:{锡山区:[120.357298,31.585559],惠山区:[120.303543,31.681019],滨湖区:[120.266053,31.550228],梁溪区:[120.296595,31.575706],新吴区:[120.352782,31.550966],江阴市:[120.275891,31.910984],宜兴市:[119.820538,31.364384]}},徐州市:{lng:117.184811,lat:34.261792,districts:{鼓楼区:[117.192941,34.269397],云龙区:[117.194589,34.254805],贾汪区:[117.450212,34.441642],泉山区:[117.182225,34.262249],铜山区:[117.183894,34.19288],丰县:[116.592888,34.696946],沛县:[116.937182,34.729044],睢宁县:[117.95066,33.899222],新沂市:[118.345828,34.368779],邳州市:[117.963923,34.314708]}},常州市:{lng:119.946973,lat:31.772752,districts:{天宁区:[119.963783,31.779632],钟楼区:[119.948388,31.78096],新北区:[119.974654,31.824664],武进区:[119.958773,31.718566],金坛区:[119.573395,31.744399],溧阳市:[119.487816,31.427081]}},苏州市:{lng:120.619585,lat:31.299379,districts:{虎丘区:[120.566833,31.294845],吴中区:[120.624621,31.270839],相城区:[120.618956,31.396684],姑苏区:[120.622249,31.311414],吴江区:[120.641601,31.160404],常熟市:[120.74852,31.658156],张家港市:[120.543441,31.865553],昆山市:[120.958137,31.381925],太仓市:[121.112275,31.452568]}},南通市:{lng:120.864608,lat:32.016212,districts:{崇川区:[120.86635,32.015278],通州区:[121.073171,32.084287],如东县:[121.186088,32.311832],启东市:[121.659724,31.810158],如皋市:[120.566324,32.391591],海门区:[121.176609,31.893528],海安市:[120.465995,32.540288]}},连云港市:{lng:119.178821,lat:34.600018,districts:{连云区:[119.366487,34.739529],海州区:[119.179793,34.601584],赣榆区:[119.128774,34.839154],东海县:[118.766489,34.522859],灌云县:[119.255741,34.298436],灌南县:[119.352331,34.092553]}},淮安市:{lng:119.021265,lat:33.597506,districts:{淮安区:[119.14634,33.507499],淮阴区:[119.020817,33.622452],清江浦区:[119.019454,33.603234],洪泽区:[118.867875,33.294975],涟水县:[119.266078,33.771308],盱眙县:[118.493823,33.00439],金湖县:[119.016936,33.018162]}},盐城市:{lng:120.139998,lat:33.377631,districts:{亭湖区:[120.136078,33.383912],盐都区:[120.139753,33.341288],大丰区:[120.470324,33.199531],响水县:[119.579573,34.19996],滨海县:[119.828434,33.989888],阜宁县:[119.805338,33.78573],射阳县:[120.257444,33.773779],建湖县:[119.793105,33.472621],东台市:[120.314101,32.853174]}},扬州市:{lng:119.421003,lat:32.393159,districts:{广陵区:[119.442267,32.392154],邗江区:[119.397777,32.377899],江都区:[119.567481,32.426564],宝应县:[119.321284,33.23694],仪征市:[119.182443,32.271965],高邮市:[119.443842,32.785164]}},镇江市:{lng:119.452753,lat:32.204402,districts:{京口区:[119.454571,32.206191],润州区:[119.414877,32.213501],丹徒区:[119.433883,32.128972],丹阳市:[119.581911,31.991459],扬中市:[119.828054,32.237266],句容市:[119.167135,31.947355]}},泰州市:{lng:119.915176,lat:32.484882,districts:{海陵区:[119.920187,32.488406],高港区:[119.88166,32.315701],姜堰区:[120.148208,32.508483],兴化市:[119.840162,32.938065],靖江市:[120.26825,32.018168],泰兴市:[120.020228,32.168784]}},宿迁市:{lng:118.275162,lat:33.963008,districts:{宿城区:[118.278984,33.937726],宿豫区:[118.330012,33.941071],沭阳县:[118.775889,34.129097],泗阳县:[118.681284,33.711433],泗洪县:[118.211824,33.456538]}}}},浙江省:{lng:120.153576,lat:30.287459,cities:{杭州市:{lng:120.153576,lat:30.287459,districts:{上城区:[120.171465,30.250236],拱墅区:[120.150053,30.314697],西湖区:[120.147376,30.272934],滨江区:[120.21062,30.206615],萧山区:[120.27069,30.162932],余杭区:[119.978959,30.27365],富阳区:[119.949869,30.049871],临安区:[119.715101,30.231153],钱塘区:[120.493972,30.322904],临平区:[120.299376,30.419025],桐庐县:[119.685045,29.797437],淳安县:[119.044276,29.604177],建德市:[119.279089,29.472284]}},宁波市:{lng:121.549792,lat:29.868388,districts:{海曙区:[121.539698,29.874452],江北区:[121.559282,29.888361],北仑区:[121.831303,29.90944],镇海区:[121.713162,29.952107],鄞州区:[121.558436,29.831662],奉化区:[121.41089,29.662348],象山县:[121.877091,29.470206],宁海县:[121.432606,29.299836],余姚市:[121.156294,30.045404],慈溪市:[121.248052,30.177142]}},温州市:{lng:120.672111,lat:28.000575,districts:{鹿城区:[120.674231,28.003352],龙湾区:[120.763469,27.970254],瓯海区:[120.637145,28.006444],洞头区:[121.156181,27.836057],永嘉县:[120.690968,28.153886],平阳县:[120.564387,27.6693],苍南县:[120.406256,27.507743],文成县:[120.09245,27.789133],泰顺县:[119.71624,27.557309],瑞安市:[120.646171,27.779321],乐清市:[120.967147,28.116083],龙港市:[120.553039,27.578156]}},嘉兴市:{lng:120.750865,lat:30.762653,districts:{南湖区:[120.749953,30.764652],秀洲区:[120.720431,30.763323],嘉善县:[120.921871,30.841352],海盐县:[120.942017,30.522223],海宁市:[120.688821,30.525544],平湖市:[121.014666,30.698921],桐乡市:[120.551085,30.629065]}},湖州市:{lng:120.102398,lat:30.867198,districts:{吴兴区:[120.101416,30.867252],南浔区:[120.417195,30.872742],德清县:[119.967662,30.534927],长兴县:[119.910122,31.00475],安吉县:[119.687891,30.631974]}},绍兴市:{lng:120.582112,lat:29.997117,districts:{越城区:[120.585315,29.996993],柯桥区:[120.476075,30.078038],上虞区:[120.874185,30.016769],新昌县:[120.905665,29.501205],诸暨市:[120.244326,29.713662],嵊州市:[120.82888,29.586606]}},金华市:{lng:119.649506,lat:29.089524,districts:{婺城区:[119.652579,29.082607],金东区:[119.681264,29.095835],武义县:[119.819159,28.896563],浦江县:[119.893363,29.451254],磐安县:[120.44513,29.052627],兰溪市:[119.460521,29.210065],义乌市:[120.074911,29.306863],东阳市:[120.23334,29.262546],永康市:[120.036328,28.895293]}},衢州市:{lng:118.87263,lat:28.941708,districts:{柯城区:[118.873041,28.944539],衢江区:[118.957683,28.973195],常山县:[118.521654,28.900039],开化县:[118.414435,29.136503],龙游县:[119.172525,29.031364],江山市:[118.627879,28.734674]}},舟山市:{lng:122.106863,lat:30.016028,districts:{定海区:[122.108496,30.016423],普陀区:[122.301953,29.945614],岱山县:[122.201132,30.242865],嵊泗县:[122.457809,30.727166]}},台州市:{lng:121.428599,lat:28.661378,districts:{椒江区:[121.431049,28.67615],黄岩区:[121.262138,28.64488],路桥区:[121.37292,28.581799],三门县:[121.376429,29.118955],天台县:[121.031227,29.141126],仙居县:[120.735074,28.849213],温岭市:[121.373611,28.368781],临海市:[121.131229,28.845441],玉环市:[121.232337,28.12842]}},丽水市:{lng:119.921786,lat:28.451993,districts:{莲都区:[119.922293,28.451103],青田县:[120.291939,28.135247],缙云县:[120.078965,28.654208],遂昌县:[119.27589,28.5924],松阳县:[119.485292,28.449937],云和县:[119.569458,28.111077],庆元县:[119.067233,27.618231],景宁畲族自治县:[119.634669,27.977247],龙泉市:[119.132319,28.069177]}}}},安徽省:{lng:117.283042,lat:31.86119,cities:{合肥市:{lng:117.283042,lat:31.86119,districts:{瑶海区:[117.315358,31.86961],庐阳区:[117.283776,31.869011],蜀山区:[117.262072,31.855868],包河区:[117.285751,31.82956],长丰县:[117.164699,32.478548],肥东县:[117.463222,31.883992],肥西县:[117.166118,31.719646],庐江县:[117.289844,31.251488],巢湖市:[117.874155,31.600518]}},芜湖市:{lng:118.376451,lat:31.326319,districts:{镜湖区:[118.376343,31.32559],鸠江区:[118.400174,31.362716],弋江区:[118.377476,31.313394],湾沚区:[118.572301,31.145262],繁昌区:[118.201349,31.080896],南陵县:[118.337104,30.919638],无为市:[117.911432,31.303075]}},蚌埠市:{lng:117.363228,lat:32.939667,districts:{龙子湖区:[117.382312,32.950452],蚌山区:[117.355789,32.938066],禹会区:[117.35259,32.931933],淮上区:[117.34709,32.963147],怀远县:[117.200171,32.956934],五河县:[117.888809,33.146202],固镇县:[117.315962,33.318679]}},淮南市:{lng:117.018329,lat:32.647574,districts:{大通区:[117.052927,32.632066],田家庵区:[117.018318,32.644342],谢家集区:[116.865354,32.598289],八公山区:[116.841111,32.628229],潘集区:[116.816879,32.782117],凤台县:[116.722769,32.705382],寿县:[116.785349,32.577304]}},马鞍山市:{lng:118.507906,lat:31.689362,districts:{花山区:[118.511308,31.69902],雨山区:[118.493104,31.685912],博望区:[118.843742,31.562321],当涂县:[118.489873,31.556167],含山县:[118.105545,31.727758],和县:[118.362998,31.716634]}},淮北市:{lng:116.794664,lat:33.971707,districts:{杜集区:[116.833925,33.991218],相山区:[116.790775,33.970916],烈山区:[116.809465,33.889529],濉溪县:[116.767435,33.916407]}},铜陵市:{lng:117.816576,lat:30.929935,districts:{铜官区:[117.816167,30.927613],义安区:[117.792288,30.952338],郊区:[117.80707,30.908927],枞阳县:[117.222027,30.700615]}},安庆市:{lng:117.043551,lat:30.50883,districts:{迎江区:[117.044965,30.506375],大观区:[117.034512,30.505632],宜秀区:[117.070003,30.541323],怀宁县:[116.828664,30.734994],太湖县:[116.305225,30.451869],宿松县:[116.120204,30.158327],望江县:[116.690927,30.12491],岳西县:[116.360482,30.848502],桐城市:[116.959656,31.050576],潜山市:[116.573665,30.638222]}},黄山市:{lng:118.317325,lat:29.709239,districts:{屯溪区:[118.317354,29.709186],黄山区:[118.136639,30.294517],徽州区:[118.339743,29.825201],歙县:[118.428025,29.867748],休宁县:[118.188531,29.788878],黟县:[117.942911,29.923812],祁门县:[117.717237,29.853472]}},滁州市:{lng:118.316264,lat:32.303627,districts:{琅琊区:[118.316475,32.303797],南谯区:[118.296955,32.329841],来安县:[118.433293,32.450231],全椒县:[118.268576,32.09385],定远县:[117.683713,32.527105],凤阳县:[117.562461,32.867146],天长市:[119.011212,32.6815],明光市:[117.998048,32.781206]}},阜阳市:{lng:115.819729,lat:32.896969,districts:{颍州区:[115.813914,32.891238],颍东区:[115.858747,32.908861],颍泉区:[115.804525,32.924797],临泉县:[115.261688,33.062698],太和县:[115.627243,33.16229],阜南县:[115.590534,32.638102],颍上县:[116.259122,32.637065],界首市:[115.362117,33.26153]}},宿州市:{lng:116.984084,lat:33.633891,districts:{埇桥区:[116.983309,33.633853],砀山县:[116.351113,34.426247],萧县:[116.945399,34.183266],灵璧县:[117.551493,33.540629],泗县:[117.885443,33.47758]}},六安市:{lng:116.507676,lat:31.752889,districts:{金安区:[116.503288,31.754491],裕安区:[116.494543,31.750692],叶集区:[115.913594,31.84768],霍邱县:[116.278875,32.341305],舒城县:[116.944088,31.462848],金寨县:[115.878514,31.681624],霍山县:[116.333078,31.402456]}},亳州市:{lng:115.782939,lat:33.869338,districts:{谯城区:[115.781214,33.869284],涡阳县:[116.211551,33.502831],蒙城县:[116.560337,33.260814],利辛县:[116.207782,33.143503]}},池州市:{lng:117.489157,lat:30.656037,districts:{贵池区:[117.488342,30.657378],东至县:[117.021476,30.096568],石台县:[117.482907,30.210324],青阳县:[117.857395,30.63818]}},宣城市:{lng:118.757995,lat:30.945667,districts:{宣州区:[118.758412,30.946003],郎溪县:[119.185024,31.127834],泾县:[118.412397,30.685975],绩溪县:[118.594705,30.065267],旌德县:[118.543081,30.288057],宁国市:[118.983407,30.626529],广德市:[119.417521,30.893116]}}}},福建省:{lng:119.306239,lat:26.075302,cities:{福州市:{lng:119.306239,lat:26.075302,districts:{鼓楼区:[119.29929,26.082284],台江区:[119.310156,26.058616],仓山区:[119.320988,26.038912],马尾区:[119.458725,25.991975],晋安区:[119.328597,26.078837],长乐区:[119.510849,25.960583],闽侯县:[119.145117,26.148567],连江县:[119.538365,26.202109],罗源县:[119.552645,26.487234],闽清县:[118.868416,26.223793],永泰县:[118.939089,25.864825],平潭县:[119.791197,25.503672],福清市:[119.376992,25.720402]}},厦门市:{lng:118.11022,lat:24.490474,districts:{思明区:[118.087828,24.462059],海沧区:[118.036364,24.492512],湖里区:[118.10943,24.512764],集美区:[118.100869,24.572874],同安区:[118.150455,24.729333],翔安区:[118.242811,24.637479]}},莆田市:{lng:119.007558,lat:25.431011,districts:{城厢区:[119.001028,25.433737],涵江区:[119.119102,25.459273],荔城区:[119.020047,25.430047],秀屿区:[119.092607,25.316141],仙游县:[118.694331,25.356529]}},三明市:{lng:117.635001,lat:26.265444,districts:{三元区:[117.607418,26.234191],明溪县:[117.201845,26.357375],清流县:[116.815821,26.17761],宁化县:[116.659725,26.259932],大田县:[117.849355,25.690803],尤溪县:[118.188577,26.169261],沙县区:[117.789095,26.397361],将乐县:[117.473558,26.728667],泰宁县:[117.177522,26.897995],建宁县:[116.845832,26.831398],永安市:[117.364447,25.974075]}},泉州市:{lng:118.589421,lat:24.908853,districts:{鲤城区:[118.588929,24.907645],丰泽区:[118.605147,24.896041],洛江区:[118.670312,24.941153],泉港区:[118.912285,25.126859],惠安县:[118.798954,25.028718],安溪县:[118.186014,25.056824],永春县:[118.29503,25.320721],德化县:[118.242986,25.489004],金门县:[118.323221,24.436417],石狮市:[118.628402,24.731978],晋江市:[118.577338,24.807322],南安市:[118.387031,24.959494]}},漳州市:{lng:117.661801,lat:24.510897,districts:{芗城区:[117.656461,24.509955],龙文区:[117.671387,24.515656],云霄县:[117.340946,23.950486],漳浦县:[117.614023,24.117907],诏安县:[117.176083,23.710834],长泰区:[117.755913,24.621475],东山县:[117.427679,23.702845],南靖县:[117.365462,24.516425],平和县:[117.313549,24.366158],华安县:[117.53631,25.001416],龙海区:[117.817292,24.445341]}},南平市:{lng:118.178459,lat:26.635627,districts:{延平区:[118.178918,26.636079],建阳区:[118.12267,27.332067],顺昌县:[117.80771,26.792851],浦城县:[118.536822,27.920412],光泽县:[117.337897,27.542803],松溪县:[118.783491,27.525785],政和县:[118.858661,27.365398],邵武市:[117.491544,27.337952],武夷山市:[118.032796,27.751733],建瓯市:[118.321765,27.03502]}},龙岩市:{lng:117.02978,lat:25.091603,districts:{新罗区:[117.030721,25.0918],永定区:[116.732691,24.720442],长汀县:[116.361007,25.842278],上杭县:[116.424774,25.050019],武平县:[116.100928,25.08865],连城县:[116.756687,25.708506],漳平市:[117.42073,25.291597]}},宁德市:{lng:119.527082,lat:26.65924,districts:{蕉城区:[119.527225,26.659253],霞浦县:[120.005214,26.882068],古田县:[118.743156,26.577491],屏南县:[118.987544,26.910826],寿宁县:[119.506733,27.457798],周宁县:[119.338239,27.103106],柘荣县:[119.898226,27.236163],福安市:[119.650798,27.084246],福鼎市:[120.219761,27.318884]}}}},江西省:{lng:115.892151,lat:28.676493,cities:{南昌市:{lng:115.892151,lat:28.676493,districts:{东湖区:[115.889675,28.682988],西湖区:[115.91065,28.662901],青云谱区:[115.907292,28.635724],青山湖区:[115.949044,28.689292],新建区:[115.820806,28.690788],红谷滩区:[115.8580521,28.69819928],南昌县:[115.942465,28.543781],安义县:[115.553109,28.841334],进贤县:[116.267671,28.365681]}},景德镇市:{lng:117.214664,lat:29.29256,districts:{昌江区:[117.195023,29.288465],珠山区:[117.214814,29.292812],浮梁县:[117.217611,29.352251],乐平市:[117.129376,28.967361]}},萍乡市:{lng:113.852186,lat:27.622946,districts:{安源区:[113.855044,27.625826],湘东区:[113.7456,27.639319],莲花县:[113.955582,27.127807],上栗县:[113.800525,27.877041],芦溪县:[114.041206,27.633633]}},九江市:{lng:115.992811,lat:29.712034,districts:{濂溪区:[115.99012,29.676175],浔阳区:[115.995947,29.72465],柴桑区:[115.892977,29.610264],武宁县:[115.105646,29.260182],修水县:[114.573428,29.032729],永修县:[115.809055,29.018212],德安县:[115.762611,29.327474],都昌县:[116.205114,29.275105],湖口县:[116.244313,29.7263],彭泽县:[116.55584,29.898865],瑞昌市:[115.669081,29.676599],共青城市:[115.805712,29.247884],庐山市:[116.043743,29.456169]}},新余市:{lng:114.930835,lat:27.810834,districts:{渝水区:[114.923923,27.819171],分宜县:[114.675262,27.811301]}},鹰潭市:{lng:117.033838,lat:28.238638,districts:{月湖区:[117.034112,28.239076],余江区:[116.822763,28.206177],贵溪市:[117.212103,28.283693]}},赣州市:{lng:114.940278,lat:25.85097,districts:{章贡区:[114.93872,25.851367],南康区:[114.756933,25.661721],赣县区:[115.018461,25.865432],信丰县:[114.930893,25.38023],大余县:[114.362243,25.395937],上犹县:[114.540537,25.794284],崇义县:[114.307348,25.687911],安远县:[115.392328,25.134591],定南县:[115.03267,24.774277],全南县:[114.531589,24.742651],宁都县:[116.018782,26.472054],于都县:[115.411198,25.955033],兴国县:[115.351896,26.330489],会昌县:[115.791158,25.599125],寻乌县:[115.651399,24.954136],石城县:[116.342249,26.326582],瑞金市:[116.034854,25.875278],龙南市:[114.792657,24.90476]}},吉安市:{lng:114.986373,lat:27.111699,districts:{吉州区:[114.987331,27.112367],青原区:[115.016306,27.105879],吉安县:[114.905117,27.040042],吉水县:[115.134569,27.213445],峡江县:[115.319331,27.580862],新干县:[115.399294,27.755758],永丰县:[115.435559,27.321087],泰和县:[114.901393,26.790164],遂川县:[114.51689,26.323705],万安县:[114.784694,26.462085],安福县:[114.61384,27.382746],永新县:[114.242534,26.944721],井冈山市:[114.284421,26.745919]}},宜春市:{lng:114.391136,lat:27.8043,districts:{袁州区:[114.387379,27.800117],奉新县:[115.389899,28.700672],万载县:[114.449012,28.104528],上高县:[114.932653,28.234789],宜丰县:[114.787381,28.388289],靖安县:[115.361744,28.86054],铜鼓县:[114.37014,28.520956],丰城市:[115.786005,28.191584],樟树市:[115.543388,28.055898],高安市:[115.381527,28.420951]}},抚州市:{lng:116.358351,lat:27.98385,districts:{临川区:[116.361404,27.981919],东乡区:[116.605341,28.2325],南城县:[116.63945,27.55531],黎川县:[116.91457,27.292561],南丰县:[116.532994,27.210132],崇仁县:[116.059109,27.760907],乐安县:[115.838432,27.420101],宜黄县:[116.223023,27.546512],金溪县:[116.778751,27.907387],资溪县:[117.066095,27.70653],广昌县:[116.327291,26.838426]}},上饶市:{lng:117.971185,lat:28.44442,districts:{信州区:[117.970522,28.445378],广丰区:[118.189852,28.440285],广信区:[117.90612,28.453897],玉山县:[118.244408,28.673479],铅山县:[117.711906,28.310892],横峰县:[117.608247,28.415103],弋阳县:[117.435002,28.402391],余干县:[116.691072,28.69173],鄱阳县:[116.673748,28.993374],万年县:[117.07015,28.692589],婺源县:[117.86219,29.254015],德兴市:[117.578732,28.945034]}}}},山东省:{lng:117.000923,lat:36.675807,cities:{济南市:{lng:117.000923,lat:36.675807,districts:{历下区:[117.03862,36.664169],市中区:[116.99898,36.657354],槐荫区:[116.947921,36.668205],天桥区:[116.996086,36.693374],历城区:[117.063744,36.681744],长清区:[116.74588,36.561049],章丘区:[117.54069,36.71209],济阳区:[117.176035,36.976771],莱芜区:[117.675808,36.214395],钢城区:[117.82033,36.058038],平阴县:[116.455054,36.286923],商河县:[117.156369,37.310544]}},青岛市:{lng:120.355173,lat:36.082982,districts:{市南区:[120.395966,36.070892],市北区:[120.355026,36.083819],黄岛区:[119.995518,35.875138],崂山区:[120.467393,36.102569],李沧区:[120.421236,36.160023],城阳区:[120.389135,36.306833],即墨区:[120.447352,36.390847],胶州市:[120.006202,36.285878],平度市:[119.959012,36.788828],莱西市:[120.526226,36.86509]}},淄博市:{lng:118.047648,lat:36.814939,districts:{淄川区:[117.967696,36.647272],张店区:[118.053521,36.807049],博山区:[117.85823,36.497567],临淄区:[118.306018,36.816657],周村区:[117.851036,36.803699],桓台县:[118.101556,36.959773],高青县:[117.829839,37.169581],沂源县:[118.166161,36.186282]}},枣庄市:{lng:117.557964,lat:34.856424,districts:{市中区:[117.557281,34.856651],薛城区:[117.265293,34.79789],峄城区:[117.586316,34.767713],台儿庄区:[117.734747,34.564815],山亭区:[117.458968,35.096077],滕州市:[117.162098,35.088498]}},东营市:{lng:118.66471,lat:37.434564,districts:{东营区:[118.507543,37.461567],河口区:[118.529613,37.886015],垦利区:[118.551314,37.588679],利津县:[118.248854,37.493365],广饶县:[118.407522,37.05161]}},烟台市:{lng:121.391382,lat:37.539297,districts:{芝罘区:[121.385877,37.540925],福山区:[121.264741,37.496875],牟平区:[121.60151,37.388356],莱山区:[121.448866,37.473549],蓬莱区:[120.759074,37.811045],龙口市:[120.528328,37.648446],莱阳市:[120.711151,36.977037],莱州市:[119.942135,37.182725],招远市:[120.403142,37.364919],栖霞市:[120.834097,37.305854],海阳市:[121.168392,36.780657]}},潍坊市:{lng:119.107078,lat:36.70925,districts:{潍城区:[119.103784,36.710062],寒亭区:[119.207866,36.772103],坊子区:[119.166326,36.654616],奎文区:[119.137357,36.709494],临朐县:[118.539876,36.516371],昌乐县:[118.839995,36.703253],青州市:[118.484693,36.697855],诸城市:[119.403182,35.997093],寿光市:[118.736451,36.874411],安丘市:[119.206886,36.427417],高密市:[119.757033,36.37754],昌邑市:[119.394502,36.854937]}},济宁市:{lng:116.587245,lat:35.415393,districts:{任城区:[116.595261,35.414828],兖州区:[116.828996,35.556445],微山县:[117.12861,34.809525],鱼台县:[116.650023,34.997706],金乡县:[116.310364,35.06977],嘉祥县:[116.342885,35.398098],汶上县:[116.487146,35.721746],泗水县:[117.273605,35.653216],梁山县:[116.08963,35.801843],曲阜市:[116.991885,35.592788],邹城市:[116.96673,35.405259]}},泰安市:{lng:117.129063,lat:36.194968,districts:{泰山区:[117.129984,36.189313],岱岳区:[117.04353,36.1841],宁阳县:[116.799297,35.76754],东平县:[116.461052,35.930467],新泰市:[117.766092,35.910387],肥城市:[116.763703,36.1856]}},威海市:{lng:122.116394,lat:37.509691,districts:{环翠区:[122.116189,37.510754],文登区:[122.057139,37.196211],荣成市:[122.422896,37.160134],乳山市:[121.536346,36.919622]}},日照市:{lng:119.461208,lat:35.428588,districts:{东港区:[119.457703,35.426152],岚山区:[119.315844,35.119794],五莲县:[119.206745,35.751936],莒县:[118.832859,35.588115]}},临沂市:{lng:118.326443,lat:35.065282,districts:{兰山区:[118.327667,35.061631],罗庄区:[118.284795,34.997204],河东区:[118.398296,35.085004],沂南县:[118.455395,35.547002],郯城县:[118.342963,34.614741],沂水县:[118.634543,35.787029],兰陵县:[118.049968,34.855573],费县:[117.968869,35.269174],平邑县:[117.631884,35.511519],莒南县:[118.838322,35.175911],蒙阴县:[117.943271,35.712435],临沭县:[118.648379,34.917062]}},德州市:{lng:116.307428,lat:37.453968,districts:{德城区:[116.307076,37.453923],陵城区:[116.574929,37.332848],宁津县:[116.79372,37.649619],庆云县:[117.390507,37.777724],临邑县:[116.867028,37.192044],齐河县:[116.758394,36.795497],平原县:[116.433904,37.164465],夏津县:[116.003816,36.950501],武城县:[116.078627,37.209527],乐陵市:[117.216657,37.729115],禹城市:[116.642554,36.934485]}},聊城市:{lng:115.980367,lat:36.456013,districts:{东昌府区:[115.980023,36.45606],茌平区:[116.25335,36.591934],阳谷县:[115.784287,36.113708],莘县:[115.667291,36.237597],东阿县:[116.248855,36.336004],冠县:[115.444808,36.483753],高唐县:[116.229662,36.859755],临清市:[115.713462,36.842598]}},滨州市:{lng:118.016974,lat:37.383542,districts:{滨城区:[118.020149,37.384842],沾化区:[118.129902,37.698456],惠民县:[117.508941,37.483876],阳信县:[117.581326,37.640492],无棣县:[117.616325,37.740848],博兴县:[118.123096,37.147002],邹平市:[117.736807,36.87803]}},菏泽市:{lng:115.469381,lat:35.246531,districts:{牡丹区:[115.470946,35.24311],定陶区:[115.569601,35.072701],曹县:[115.549482,34.823253],单县:[116.08262,34.790851],成武县:[115.897349,34.947366],巨野县:[116.089341,35.390999],郓城县:[115.93885,35.594773],鄄城县:[115.51434,35.560257],东明县:[115.098412,35.289637]}}}},河南省:{lng:113.665412,lat:34.757975,cities:{郑州市:{lng:113.665412,lat:34.757975,districts:{中原区:[113.611576,34.748286],二七区:[113.645422,34.730936],管城回族区:[113.685313,34.746453],金水区:[113.686037,34.775838],上街区:[113.298282,34.808689],惠济区:[113.61836,34.828591],中牟县:[114.022521,34.721976],巩义市:[112.98283,34.75218],荥阳市:[113.391523,34.789077],新密市:[113.380616,34.537846],新郑市:[113.73967,34.394219],登封市:[113.037768,34.459939]}},开封市:{lng:114.341447,lat:34.797049,districts:{龙亭区:[114.353348,34.799833],顺河回族区:[114.364875,34.800459],鼓楼区:[114.3485,34.792383],禹王台区:[114.350246,34.779727],祥符区:[114.437622,34.756476],杞县:[114.770472,34.554585],通许县:[114.467734,34.477302],尉氏县:[114.193927,34.412256],兰考县:[114.820572,34.829899]}},洛阳市:{lng:112.434468,lat:34.663041,districts:{老城区:[112.477298,34.682945],西工区:[112.443232,34.667847],瀍河回族区:[112.491625,34.684738],涧西区:[112.399243,34.654251],孟津区:[112.443892,34.826485],洛龙区:[112.456634,34.618557],新安县:[112.141403,34.728679],栾川县:[111.618386,33.783195],嵩县:[112.087765,34.131563],汝阳县:[112.473789,34.15323],宜阳县:[112.179989,34.516478],洛宁县:[111.655399,34.387179],伊川县:[112.429384,34.423416],偃师区:[112.787739,34.723042]}},平顶山市:{lng:113.307718,lat:33.735241,districts:{新华区:[113.299061,33.737579],卫东区:[113.310327,33.739285],石龙区:[112.889885,33.901538],湛河区:[113.320873,33.725681],宝丰县:[113.066812,33.866359],叶县:[113.358298,33.621252],鲁山县:[112.906703,33.740325],郏县:[113.220451,33.971993],舞钢市:[113.52625,33.302082],汝州市:[112.845336,34.167408]}},安阳市:{lng:114.352482,lat:36.103442,districts:{文峰区:[114.352562,36.098101],北关区:[114.352646,36.10978],殷都区:[114.300098,36.108974],龙安区:[114.323522,36.095568],安阳县:[114.130207,36.130585],汤阴县:[114.362357,35.922349],滑县:[114.524,35.574628],内黄县:[114.904582,35.953702],林州市:[113.823767,36.063403]}},鹤壁市:{lng:114.295444,lat:35.748236,districts:{鹤山区:[114.166551,35.936128],山城区:[114.184202,35.896058],淇滨区:[114.293917,35.748382],浚县:[114.550162,35.671282],淇县:[114.200379,35.609478]}},新乡市:{lng:113.883991,lat:35.302616,districts:{红旗区:[113.878158,35.302684],卫滨区:[113.866065,35.304905],凤泉区:[113.906712,35.379855],牧野区:[113.89716,35.312974],新乡县:[113.806186,35.190021],获嘉县:[113.657249,35.261685],原阳县:[113.965966,35.054001],延津县:[114.200982,35.149515],封丘县:[114.423405,35.04057],卫辉市:[114.065855,35.404295],辉县市:[113.802518,35.461318],长垣市:[114.673807,35.19615]}},焦作市:{lng:113.238266,lat:35.23904,districts:{解放区:[113.226126,35.241353],中站区:[113.175485,35.236145],马村区:[113.321703,35.265453],山阳区:[113.26766,35.21476],修武县:[113.447465,35.229923],博爱县:[113.069313,35.170351],武陟县:[113.408334,35.09885],温县:[113.079118,34.941233],沁阳市:[112.934538,35.08901],孟州市:[112.78708,34.90963]}},濮阳市:{lng:115.041299,lat:35.768234,districts:{华龙区:[115.03184,35.760473],清丰县:[115.107287,35.902413],南乐县:[115.204336,36.075204],范县:[115.504212,35.851977],台前县:[115.855681,35.996474],濮阳县:[115.023844,35.710349]}},许昌市:{lng:113.826063,lat:34.022956,districts:{魏都区:[113.828307,34.02711],建安区:[113.842898,34.005018],鄢陵县:[114.188507,34.100502],襄城县:[113.493166,33.855943],禹州市:[113.471316,34.154403],长葛市:[113.768912,34.219257]}},漯河市:{lng:114.026405,lat:33.575855,districts:{源汇区:[114.017948,33.565441],郾城区:[114.016813,33.588897],召陵区:[114.051686,33.567555],舞阳县:[113.610565,33.436278],临颍县:[113.938891,33.80609]}},三门峡市:{lng:111.194099,lat:34.777338,districts:{湖滨区:[111.19487,34.77812],陕州区:[111.103851,34.720244],渑池县:[111.762992,34.763487],卢氏县:[111.052649,34.053995],义马市:[111.869417,34.746868],灵宝市:[110.88577,34.521264]}},南阳市:{lng:112.540918,lat:32.999082,districts:{宛城区:[112.544591,32.994857],卧龙区:[112.528789,32.989877],南召县:[112.435583,33.488617],方城县:[113.010933,33.255138],西峡县:[111.485772,33.302981],镇平县:[112.232722,33.036651],内乡县:[111.843801,33.046358],淅川县:[111.489026,33.136106],社旗县:[112.938279,33.056126],唐河县:[112.838492,32.687892],新野县:[112.365624,32.524006],桐柏县:[113.406059,32.367153],邓州市:[112.092716,32.681642]}},商丘市:{lng:115.650497,lat:34.437054,districts:{梁园区:[115.65459,34.436553],睢阳区:[115.653813,34.390536],民权县:[115.148146,34.648455],睢县:[115.070109,34.428433],宁陵县:[115.320055,34.449299],柘城县:[115.307433,34.075277],虞城县:[115.863811,34.399634],夏邑县:[116.13989,34.240894],永城市:[116.449672,33.931318]}},信阳市:{lng:114.075031,lat:32.123274,districts:{浉河区:[114.075031,32.123274],平桥区:[114.126027,32.098395],罗山县:[114.533414,32.203206],光山县:[114.903577,32.010398],新县:[114.87705,31.63515],商城县:[115.406297,31.799982],固始县:[115.667328,32.183074],潢川县:[115.050123,32.134024],淮滨县:[115.415451,32.452639],息县:[114.740713,32.344744]}},周口市:{lng:114.649653,lat:33.620357,districts:{川汇区:[114.652136,33.614836],淮阳区:[114.870166,33.732547],扶沟县:[114.392008,34.054061],西华县:[114.530067,33.784378],商水县:[114.60927,33.543845],沈丘县:[115.078375,33.395514],郸城县:[115.189,33.643852],太康县:[114.853834,34.065312],鹿邑县:[115.486386,33.861067],项城市:[114.899521,33.443085]}},驻马店市:{lng:114.024736,lat:32.980169,districts:{驿城区:[114.029149,32.977559],西平县:[114.026864,33.382315],上蔡县:[114.266892,33.264719],平舆县:[114.637105,32.955626],正阳县:[114.38948,32.601826],确山县:[114.026679,32.801538],泌阳县:[113.32605,32.725129],汝南县:[114.359495,33.004535],遂平县:[114.00371,33.14698],新蔡县:[114.975246,32.749948]}},济源市:{lng:112.590047,lat:35.090378,districts:{}}}},湖北省:{lng:114.298572,lat:30.584355,cities:{武汉市:{lng:114.298572,lat:30.584355,districts:{江岸区:[114.30304,30.594911],江汉区:[114.283109,30.578771],硚口区:[114.264568,30.57061],汉阳区:[114.265807,30.549326],武昌区:[114.307344,30.546536],青山区:[114.39707,30.634215],洪山区:[114.400718,30.504259],东西湖区:[114.142483,30.622467],汉南区:[114.08124,30.309637],蔡甸区:[114.029341,30.582186],江夏区:[114.313961,30.349045],黄陂区:[114.374025,30.874155],新洲区:[114.802108,30.842149]}},黄石市:{lng:115.077048,lat:30.220074,districts:{黄石港区:[115.090164,30.212086],西塞山区:[115.093354,30.205365],下陆区:[114.975755,30.177845],铁山区:[114.901366,30.20601],阳新县:[115.212883,29.841572],大冶市:[114.974842,30.098804]}},十堰市:{lng:110.787916,lat:32.646907,districts:{茅箭区:[110.78621,32.644463],张湾区:[110.772365,32.652516],郧阳区:[110.812099,32.838267],郧西县:[110.426472,32.991457],竹山县:[110.2296,32.22586],竹溪县:[109.717196,32.315342],房县:[110.741966,32.055002],丹江口市:[111.513793,32.538839]}},宜昌市:{lng:111.290843,lat:30.702636,districts:{西陵区:[111.295468,30.702476],伍家岗区:[111.307215,30.679053],点军区:[111.268163,30.692322],猇亭区:[111.427642,30.530744],夷陵区:[111.326747,30.770199],远安县:[111.64331,31.059626],兴山县:[110.754499,31.34795],秭归县:[110.976785,30.823908],长阳土家族自治县:[111.198475,30.466534],五峰土家族自治县:[110.674938,30.199252],宜都市:[111.454367,30.387234],当阳市:[111.793419,30.824492],枝江市:[111.751799,30.425364]}},襄阳市:{lng:112.144146,lat:32.042426,districts:{襄城区:[112.150327,32.015088],樊城区:[112.13957,32.058589],襄州区:[112.197378,32.085517],南漳县:[111.844424,31.77692],谷城县:[111.640147,32.262676],保康县:[111.262235,31.873507],老河口市:[111.675732,32.385438],枣阳市:[112.765268,32.123083],宜城市:[112.261441,31.709203]}},鄂州市:{lng:114.890593,lat:30.396536,districts:{梁子湖区:[114.681967,30.098191],华容区:[114.74148,30.534468],鄂城区:[114.890012,30.39669]}},荆门市:{lng:112.204251,lat:31.03542,districts:{东宝区:[112.204804,31.033461],掇刀区:[112.198413,30.980798],沙洋县:[112.595218,30.70359],钟祥市:[112.587267,31.165573],京山市:[113.114595,31.022457]}},孝感市:{lng:113.926655,lat:30.926423,districts:{孝南区:[113.925849,30.925966],孝昌县:[113.988964,31.251618],大悟县:[114.126249,31.565483],云梦县:[113.750616,31.021691],应城市:[113.573842,30.939038],安陆市:[113.690401,31.26174],汉川市:[113.835301,30.652165]}},荆州市:{lng:112.23813,lat:30.326857,districts:{沙市区:[112.257433,30.315895],荆州区:[112.195354,30.350674],公安县:[112.230179,30.059065],监利市:[112.904344,29.820079],江陵县:[112.41735,30.033919],石首市:[112.40887,29.716437],洪湖市:[113.470304,29.81297],松滋市:[111.77818,30.176037]}},黄冈市:{lng:114.879365,lat:30.447711,districts:{黄州区:[114.878934,30.447435],团风县:[114.872029,30.63569],红安县:[114.615095,31.284777],罗田县:[115.398984,30.781679],英山县:[115.67753,30.735794],浠水县:[115.26344,30.454837],蕲春县:[115.433964,30.234927],黄梅县:[115.942548,30.075113],麻城市:[115.02541,31.177906],武穴市:[115.56242,29.849342]}},咸宁市:{lng:114.328963,lat:29.832798,districts:{咸安区:[114.333894,29.824716],嘉鱼县:[113.921547,29.973363],通城县:[113.814131,29.246076],崇阳县:[114.049958,29.54101],通山县:[114.493163,29.604455],赤壁市:[113.88366,29.716879]}},随州市:{lng:113.37377,lat:31.717497,districts:{曾都区:[113.374519,31.717521],随县:[113.301384,31.854246],广水市:[113.826601,31.617731]}},恩施土家族苗族自治州:{lng:109.48699,lat:30.283114,districts:{恩施市:[109.486761,30.282406],利川市:[108.943491,30.294247],建始县:[109.723822,30.601632],巴东县:[110.336665,31.041403],宣恩县:[109.482819,29.98867],咸丰县:[109.15041,29.678967],来凤县:[109.408328,29.506945],鹤峰县:[110.033699,29.887298]}},仙桃市:{lng:113.453974,lat:30.364953,districts:{}},潜江市:{lng:112.896866,lat:30.421215,districts:{}},天门市:{lng:113.165862,lat:30.653061,districts:{}},神农架林区:{lng:110.671525,lat:31.744449,districts:{}}}},湖南省:{lng:112.982279,lat:28.19409,cities:{长沙市:{lng:112.982279,lat:28.19409,districts:{芙蓉区:[112.988094,28.193106],天心区:[112.97307,28.192375],岳麓区:[112.911591,28.213044],开福区:[112.985525,28.201336],雨花区:[113.016337,28.109937],望城区:[112.819549,28.347458],长沙县:[113.080098,28.237888],浏阳市:[113.633301,28.141112],宁乡市:[112.553182,28.253928]}},株洲市:{lng:113.151737,lat:27.835806,districts:{荷塘区:[113.162548,27.833036],芦淞区:[113.155169,27.827246],石峰区:[113.11295,27.871945],天元区:[113.136252,27.826909],渌口区:[113.146175,27.705844],攸县:[113.345774,27.000071],茶陵县:[113.546509,26.789534],炎陵县:[113.776884,26.489459],醴陵市:[113.507157,27.657873]}},湘潭市:{lng:112.944052,lat:27.82973,districts:{雨湖区:[112.907427,27.86077],岳塘区:[112.927707,27.828854],湘潭县:[112.952829,27.778601],湘乡市:[112.525217,27.734918],韶山市:[112.52848,27.922682]}},衡阳市:{lng:112.607693,lat:26.900358,districts:{珠晖区:[112.626324,26.891063],雁峰区:[112.612241,26.893694],石鼓区:[112.607635,26.903908],蒸湘区:[112.570608,26.89087],南岳区:[112.734147,27.240536],衡阳县:[112.379643,26.962388],衡南县:[112.677459,26.739973],衡山县:[112.86971,27.234808],衡东县:[112.950412,27.083531],祁东县:[112.111192,26.787109],耒阳市:[112.847215,26.414162],常宁市:[112.396821,26.406773]}},邵阳市:{lng:111.46923,lat:27.237842,districts:{双清区:[111.479756,27.240001],大祥区:[111.462968,27.233593],北塔区:[111.452315,27.245688],新邵县:[111.459762,27.311429],邵阳县:[111.2757,26.989713],隆回县:[111.038785,27.116002],洞口县:[110.579212,27.062286],绥宁县:[110.155075,26.580622],新宁县:[110.859115,26.438912],城步苗族自治县:[110.313226,26.363575],武冈市:[110.636804,26.732086],邵东市:[111.743168,27.257273]}},岳阳市:{lng:113.132855,lat:29.37029,districts:{岳阳楼区:[113.120751,29.366784],云溪区:[113.27387,29.473395],君山区:[113.004082,29.438062],岳阳县:[113.116073,29.144843],华容县:[112.559369,29.524107],湘阴县:[112.889748,28.677498],平江县:[113.593751,28.701523],汨罗市:[113.079419,28.803149],临湘市:[113.450809,29.471594]}},常德市:{lng:111.691347,lat:29.040225,districts:{武陵区:[111.690718,29.040477],鼎城区:[111.685327,29.014426],安乡县:[112.172289,29.414483],汉寿县:[111.968506,28.907319],澧县:[111.761682,29.64264],临澧县:[111.645602,29.443217],桃源县:[111.484503,28.902734],石门县:[111.379087,29.584703],津市市:[111.879609,29.630867]}},张家界市:{lng:110.479921,lat:29.127401,districts:{永定区:[110.484559,29.125961],武陵源区:[110.54758,29.347827],慈利县:[111.132702,29.423876],桑植县:[110.164039,29.399939]}},益阳市:{lng:112.355042,lat:28.570066,districts:{资阳区:[112.33084,28.592771],赫山区:[112.360946,28.568327],南县:[112.410399,29.372181],桃江县:[112.139732,28.520993],安化县:[111.221824,28.377421],沅江市:[112.361088,28.839713]}},郴州市:{lng:113.032067,lat:25.793589,districts:{北湖区:[113.032208,25.792628],苏仙区:[113.038698,25.793157],桂阳县:[112.734466,25.737447],宜章县:[112.947884,25.394345],永兴县:[113.114819,26.129392],嘉禾县:[112.370618,25.587309],临武县:[112.564589,25.279119],汝城县:[113.685686,25.553759],桂东县:[113.945879,26.073917],安仁县:[113.27217,26.708625],资兴市:[113.23682,25.974152]}},永州市:{lng:111.608019,lat:26.434516,districts:{零陵区:[111.626348,26.223347],冷水滩区:[111.607156,26.434364],祁阳市:[111.85734,26.585929],东安县:[111.313035,26.397278],双牌县:[111.662146,25.959397],道县:[111.591614,25.518444],江永县:[111.346803,25.268154],宁远县:[111.944529,25.584112],蓝山县:[112.194195,25.375255],新田县:[112.220341,25.906927],江华瑶族自治县:[111.577276,25.182596]}},怀化市:{lng:109.97824,lat:27.550082,districts:{鹤城区:[109.982242,27.548474],中方县:[109.948061,27.43736],沅陵县:[110.399161,28.455554],辰溪县:[110.196953,28.005474],溆浦县:[110.593373,27.903802],会同县:[109.720785,26.870789],麻阳苗族自治县:[109.802807,27.865991],新晃侗族自治县:[109.174443,27.359897],芷江侗族自治县:[109.687777,27.437996],靖州苗族侗族自治县:[109.691159,26.573511],通道侗族自治县:[109.783359,26.158349],洪江市:[109.831765,27.201876]}},娄底市:{lng:112.008497,lat:27.728136,districts:{娄星区:[112.008486,27.726643],双峰县:[112.198245,27.459126],新化县:[111.306747,27.737456],冷水江市:[111.434674,27.685759],涟源市:[111.670847,27.692301]}},湘西土家族苗族自治州:{lng:109.739735,lat:28.314296,districts:{吉首市:[109.738273,28.314827],泸溪县:[110.214428,28.214516],凤凰县:[109.599191,27.948308],花垣县:[109.479063,28.581352],保靖县:[109.651445,28.709605],古丈县:[109.949592,28.616973],永顺县:[109.853292,28.998068],龙山县:[109.441189,29.453438]}}}},广东省:{lng:113.280637,lat:23.125178,cities:{广州市:{lng:113.280637,lat:23.125178,districts:{荔湾区:[113.243038,23.124943],越秀区:[113.280714,23.125624],海珠区:[113.262008,23.103131],天河区:[113.335367,23.13559],白云区:[113.262831,23.162281],黄埔区:[113.450761,23.103239],番禺区:[113.364619,22.938582],花都区:[113.211184,23.39205],南沙区:[113.53738,22.794531],从化区:[113.587386,23.545283],增城区:[113.829579,23.290497]}},韶关市:{lng:113.591544,lat:24.801322,districts:{武江区:[113.588289,24.80016],浈江区:[113.599224,24.803977],曲江区:[113.605582,24.680195],始兴县:[114.067205,24.948364],仁化县:[113.748627,25.088226],翁源县:[114.131289,24.353887],乳源瑶族自治县:[113.278417,24.776109],新丰县:[114.207034,24.055412],乐昌市:[113.352413,25.128445],南雄市:[114.311231,25.115328]}},深圳市:{lng:114.085947,lat:22.547,districts:{罗湖区:[114.123885,22.555341],福田区:[114.05096,22.541009],南山区:[113.92943,22.531221],宝安区:[113.828671,22.754741],龙岗区:[114.251372,22.721511],盐田区:[114.235366,22.555069],龙华区:[114.044346,22.691963],坪山区:[114.338441,22.69423],光明区:[113.935895,22.748816]}},珠海市:{lng:113.553986,lat:22.224979,districts:{香洲区:[113.55027,22.271249],斗门区:[113.297739,22.209117],金湾区:[113.345071,22.139122]}},汕头市:{lng:116.708463,lat:23.37102,districts:{龙湖区:[116.732015,23.373754],金平区:[116.703583,23.367071],濠江区:[116.729528,23.279345],潮阳区:[116.602602,23.262336],潮南区:[116.423607,23.249798],澄海区:[116.76336,23.46844],南澳县:[117.027105,23.419562]}},佛山市:{lng:113.122717,lat:23.028762,districts:{禅城区:[113.112414,23.019643],南海区:[113.145577,23.031562],顺德区:[113.281826,22.75851],三水区:[112.899414,23.16504],高明区:[112.882123,22.893855]}},江门市:{lng:113.094942,lat:22.590431,districts:{蓬江区:[113.07859,22.59677],江海区:[113.120601,22.572211],新会区:[113.038584,22.520247],台山市:[112.793414,22.250713],开平市:[112.692262,22.366286],鹤山市:[112.961795,22.768104],恩平市:[112.314051,22.182956]}},湛江市:{lng:110.364977,lat:21.274898,districts:{赤坎区:[110.361634,21.273365],霞山区:[110.406382,21.194229],坡头区:[110.455632,21.24441],麻章区:[110.329167,21.265997],遂溪县:[110.255321,21.376915],徐闻县:[110.175718,20.326083],廉江市:[110.284961,21.611281],雷州市:[110.088275,20.908523],吴川市:[110.780508,21.428453]}},茂名市:{lng:110.919229,lat:21.659751,districts:{茂南区:[110.920542,21.660425],电白区:[111.007264,21.507219],高州市:[110.853251,21.915153],化州市:[110.63839,21.654953],信宜市:[110.941656,22.352681]}},肇庆市:{lng:112.472529,lat:23.051546,districts:{端州区:[112.472329,23.052662],鼎湖区:[112.565249,23.155822],高要区:[112.460846,23.027694],广宁县:[112.440419,23.631486],怀集县:[112.182466,23.913072],封开县:[111.502973,23.434731],德庆县:[111.78156,23.141711],四会市:[112.695028,23.340324]}},惠州市:{lng:114.412599,lat:23.079404,districts:{惠城区:[114.413978,23.079883],惠阳区:[114.469444,22.78851],博罗县:[114.284254,23.167575],惠东县:[114.723092,22.983036],龙门县:[114.259986,23.723894]}},梅州市:{lng:116.117582,lat:24.299112,districts:{梅江区:[116.12116,24.302593],梅县区:[116.083482,24.267825],大埔县:[116.69552,24.351587],丰顺县:[116.184419,23.752771],五华县:[115.775004,23.925424],平远县:[115.891729,24.569651],蕉岭县:[116.170531,24.653313],兴宁市:[115.731648,24.138077]}},汕尾市:{lng:115.364238,lat:22.774485,districts:{城区:[115.363667,22.776227],海丰县:[115.337324,22.971042],陆河县:[115.657565,23.302682],陆丰市:[115.644203,22.946104]}},河源市:{lng:114.697802,lat:23.746266,districts:{源城区:[114.696828,23.746255],紫金县:[115.184383,23.633744],龙川县:[115.256415,24.101174],连平县:[114.495952,24.364227],和平县:[114.941473,24.44318],东源县:[114.742711,23.789093]}},阳江市:{lng:111.975107,lat:21.859222,districts:{江城区:[111.968909,21.859182],阳东区:[112.011267,21.864728],阳西县:[111.617556,21.75367],阳春市:[111.7905,22.169598]}},清远市:{lng:113.051227,lat:23.685022,districts:{清城区:[113.048698,23.688976],清新区:[113.015203,23.736949],佛冈县:[113.534094,23.866739],阳山县:[112.634019,24.470286],连山壮族瑶族自治县:[112.086555,24.567271],连南瑶族自治县:[112.290808,24.719097],英德市:[113.405404,24.18612],连州市:[112.379271,24.783966]}},东莞市:{lng:113.746262,lat:23.046237,districts:{}},中山市:{lng:113.382391,lat:22.521113,districts:{}},潮州市:{lng:116.632301,lat:23.661701,districts:{湘桥区:[116.63365,23.664675],潮安区:[116.67931,23.461012],饶平县:[117.00205,23.668171]}},揭阳市:{lng:116.355733,lat:23.543778,districts:{榕城区:[116.357045,23.535524],揭东区:[116.412947,23.569887],揭西县:[115.838708,23.4273],惠来县:[116.295832,23.029834],普宁市:[116.165082,23.29788]}},云浮市:{lng:112.044439,lat:22.929801,districts:{云城区:[112.04471,22.930827],云安区:[112.005609,23.073152],新兴县:[112.23083,22.703204],郁南县:[111.535921,23.237709],罗定市:[111.578201,22.765415]}}}},广西壮族自治区:{lng:108.320004,lat:22.82402,cities:{南宁市:{lng:108.320004,lat:22.82402,districts:{兴宁区:[108.320189,22.819511],青秀区:[108.346113,22.816614],江南区:[108.310478,22.799593],西乡塘区:[108.306903,22.832779],良庆区:[108.322102,22.75909],邕宁区:[108.484251,22.756598],武鸣区:[108.280717,23.157163],隆安县:[107.688661,23.174763],马山县:[108.172903,23.711758],上林县:[108.603937,23.431769],宾阳县:[108.816735,23.216884],横州市:[109.270987,22.68743]}},柳州市:{lng:109.411703,lat:24.314617,districts:{城中区:[109.411749,24.312324],鱼峰区:[109.415364,24.303848],柳南区:[109.395936,24.287013],柳北区:[109.406577,24.359145],柳江区:[109.334503,24.257512],柳城县:[109.245812,24.655121],鹿寨县:[109.740805,24.483405],融安县:[109.403621,25.214703],融水苗族自治县:[109.252744,25.068812],三江侗族自治县:[109.614846,25.78553]}},桂林市:{lng:110.299121,lat:25.274215,districts:{秀峰区:[110.292445,25.278544],叠彩区:[110.300783,25.301334],象山区:[110.284882,25.261986],七星区:[110.317577,25.254339],雁山区:[110.305667,25.077646],临桂区:[110.205487,25.246257],阳朔县:[110.494699,24.77534],灵川县:[110.325712,25.408541],全州县:[111.072989,25.929897],兴安县:[110.670783,25.609554],永福县:[109.989208,24.986692],灌阳县:[111.160248,25.489098],龙胜各族自治县:[110.009423,25.796428],资源县:[110.642587,26.0342],平乐县:[110.642821,24.632216],恭城瑶族自治县:[110.82952,24.833612],荔浦市:[110.400149,24.497786]}},梧州市:{lng:111.297604,lat:23.474803,districts:{万秀区:[111.315817,23.471318],长洲区:[111.275678,23.4777],龙圩区:[111.246035,23.40996],苍梧县:[111.544008,23.845097],藤县:[110.931826,23.373963],蒙山县:[110.5226,24.199829],岑溪市:[110.998114,22.918406]}},北海市:{lng:109.119254,lat:21.473343,districts:{海城区:[109.107529,21.468443],银海区:[109.118707,21.444909],铁山港区:[109.450573,21.5928],合浦县:[109.200695,21.663554]}},防城港市:{lng:108.345478,lat:21.614631,districts:{港口区:[108.346281,21.614406],防城区:[108.358426,21.764758],上思县:[107.982139,22.151423],东兴市:[107.97017,21.541172]}},钦州市:{lng:108.624175,lat:21.967127,districts:{钦南区:[108.626629,21.966808],钦北区:[108.44911,22.132761],灵山县:[109.293468,22.418041],浦北县:[109.556341,22.268335]}},贵港市:{lng:109.602146,lat:23.0936,districts:{港北区:[109.59481,23.107677],港南区:[109.604665,23.067516],覃塘区:[109.415697,23.132815],平南县:[110.397485,23.544546],桂平市:[110.074668,23.382473]}},玉林市:{lng:110.154393,lat:22.63136,districts:{玉州区:[110.154912,22.632132],福绵区:[110.054155,22.58163],容县:[110.552467,22.856435],陆川县:[110.264842,22.321054],博白县:[109.980004,22.271285],兴业县:[109.877768,22.74187],北流市:[110.348052,22.701648]}},百色市:{lng:106.616285,lat:23.897742,districts:{右江区:[106.615727,23.897675],田阳区:[106.904315,23.736079],田东县:[107.12426,23.600444],德保县:[106.618164,23.321464],那坡县:[105.833553,23.400785],凌云县:[106.56487,24.345643],乐业县:[106.559638,24.782204],田林县:[106.235047,24.290262],西林县:[105.095025,24.492041],隆林各族自治县:[105.342363,24.774318],靖西市:[106.417549,23.134766],平果市:[107.580403,23.320479]}},贺州市:{lng:111.552056,lat:24.414141,districts:{八步区:[111.551991,24.412446],平桂区:[111.524014,24.417148],昭平县:[110.810865,24.172958],钟山县:[111.303629,24.528566],富川瑶族自治县:[111.277228,24.81896]}},河池市:{lng:108.062105,lat:24.695899,districts:{金城江区:[108.062131,24.695625],宜州区:[108.653965,24.492193],南丹县:[107.546605,24.983192],天峨县:[107.174939,24.985964],凤山县:[107.044592,24.544561],东兰县:[107.373696,24.509367],罗城仫佬族自治县:[108.902453,24.779327],环江毛南族自治县:[108.258669,24.827628],巴马瑶族自治县:[107.253126,24.139538],都安瑶族自治县:[108.102761,23.934964],大化瑶族自治县:[107.9945,23.739596]}},来宾市:{lng:109.229772,lat:23.733766,districts:{兴宾区:[109.230541,23.732926],忻城县:[108.667361,24.064779],象州县:[109.684555,23.959824],武宣县:[109.66287,23.604162],金秀瑶族自治县:[110.188556,24.134941],合山市:[108.88858,23.81311]}},崇左市:{lng:107.353926,lat:22.404108,districts:{江州区:[107.354443,22.40469],扶绥县:[107.911533,22.635821],宁明县:[107.067616,22.131353],龙州县:[106.857502,22.343716],大新县:[107.200803,22.833369],天等县:[107.142441,23.082484],凭祥市:[106.759038,22.108882]}}}},海南省:{lng:110.33119,lat:20.031971,cities:{海口市:{lng:110.33119,lat:20.031971,districts:{秀英区:[110.282393,20.008145],龙华区:[110.330373,20.031026],琼山区:[110.354722,20.001051],美兰区:[110.356566,20.03074]}},三亚市:{lng:109.508268,lat:18.247872,districts:{海棠区:[109.760778,18.407516],吉阳区:[109.512081,18.247436],天涯区:[109.506357,18.24734],崖州区:[109.174306,18.352192]}},三沙市:{lng:112.34882,lat:16.831039,districts:{西沙区:[112.3386402,16.8310066],南沙区:[112.891018,9.543575]}},儋州市:{lng:109.576782,lat:19.517486,districts:{}},五指山市:{lng:109.516662,lat:18.776921,districts:{}},琼海市:{lng:110.466785,lat:19.246011,districts:{}},文昌市:{lng:110.753975,lat:19.612986,districts:{}},万宁市:{lng:110.388793,lat:18.796216,districts:{}},东方市:{lng:108.653789,lat:19.10198,districts:{}},定安县:{lng:110.349235,lat:19.684966,districts:{}},屯昌县:{lng:110.102773,lat:19.362916,districts:{}},澄迈县:{lng:110.007147,lat:19.737095,districts:{}},临高县:{lng:109.687697,lat:19.908293,districts:{}},白沙黎族自治县:{lng:109.452606,lat:19.224584,districts:{}},昌江黎族自治县:{lng:109.053351,lat:19.260968,districts:{}},乐东黎族自治县:{lng:109.175444,lat:18.74758,districts:{}},陵水黎族自治县:{lng:110.037218,lat:18.505006,districts:{}},保亭黎族苗族自治县:{lng:109.70245,lat:18.636371,districts:{}},琼中黎族苗族自治县:{lng:109.839996,lat:19.03557,districts:{}}}},重庆市:{lng:108.166551,lat:29.293856,cities:{重庆市:{lng:108.166551,lat:29.293856,districts:{}}}},四川省:{lng:104.065735,lat:30.659462,cities:{成都市:{lng:104.065735,lat:30.659462,districts:{锦江区:[104.080989,30.657689],青羊区:[104.055731,30.667648],金牛区:[104.043487,30.692058],武侯区:[104.05167,30.630862],成华区:[104.103077,30.660275],龙泉驿区:[104.269181,30.56065],青白江区:[104.25494,30.883438],新都区:[104.16022,30.824223],温江区:[103.836776,30.697996],双流区:[103.922706,30.573243],郫都区:[103.887842,30.808752],新津区:[103.812449,30.414284],金堂县:[104.415604,30.858417],大邑县:[103.522397,30.586602],蒲江县:[103.511541,30.194359],都江堰市:[103.627898,30.99114],彭州市:[103.941173,30.985161],邛崃市:[103.46143,30.413271],崇州市:[103.671049,30.631478],简阳市:[104.550339,30.390666]}},自贡市:{lng:104.773447,lat:29.352765,districts:{自流井区:[104.778188,29.343231],贡井区:[104.714372,29.345675],大安区:[104.783229,29.367136],沿滩区:[104.876417,29.272521],荣县:[104.423932,29.454851],富顺县:[104.984256,29.181282]}},攀枝花市:{lng:101.716007,lat:26.580446,districts:{东区:[101.715134,26.580887],西区:[101.637969,26.596776],仁和区:[101.737916,26.497185],米易县:[102.109877,26.887474],盐边县:[101.851848,26.677619]}},泸州市:{lng:105.443348,lat:28.889138,districts:{江阳区:[105.445131,28.882889],纳溪区:[105.37721,28.77631],龙马潭区:[105.435228,28.897572],泸县:[105.376335,29.151288],合江县:[105.834098,28.810325],叙永县:[105.437775,28.167919],古蔺县:[105.813359,28.03948]}},德阳市:{lng:104.398651,lat:31.127991,districts:{旌阳区:[104.389648,31.130428],罗江区:[104.507126,31.303281],中江县:[104.677831,31.03681],广汉市:[104.281903,30.97715],什邡市:[104.173653,31.126881],绵竹市:[104.200162,31.343084]}},绵阳市:{lng:104.741722,lat:31.46402,districts:{涪城区:[104.740971,31.463557],游仙区:[104.770006,31.484772],安州区:[104.560341,31.53894],三台县:[105.090316,31.090909],盐亭县:[105.391991,31.22318],梓潼县:[105.16353,31.635225],北川羌族自治县:[104.468069,31.615863],平武县:[104.530555,32.407588],江油市:[104.744431,31.776386]}},广元市:{lng:105.829757,lat:32.433668,districts:{利州区:[105.826194,32.432276],昭化区:[105.964121,32.322788],朝天区:[105.88917,32.642632],旺苍县:[106.290426,32.22833],青川县:[105.238847,32.585655],剑阁县:[105.527035,32.286517],苍溪县:[105.939706,31.732251]}},遂宁市:{lng:105.571331,lat:30.513311,districts:{船山区:[105.582215,30.502647],安居区:[105.459383,30.346121],蓬溪县:[105.713699,30.774883],大英县:[105.252187,30.581571],射洪市:[105.381849,30.868752]}},内江市:{lng:105.066138,lat:29.58708,districts:{市中区:[105.065467,29.585265],东兴区:[105.067203,29.600107],威远县:[104.668327,29.52686],资中县:[104.852463,29.775295],隆昌市:[105.288074,29.338162]}},乐山市:{lng:103.761263,lat:29.582024,districts:{市中区:[103.75539,29.588327],沙湾区:[103.549961,29.416536],五通桥区:[103.816837,29.406186],金口河区:[103.077831,29.24602],犍为县:[103.944266,29.209782],井研县:[104.06885,29.651645],夹江县:[103.578862,29.741019],沐川县:[103.90211,28.956338],峨边彝族自治县:[103.262148,29.230271],马边彝族自治县:[103.546851,28.838933],峨眉山市:[103.492488,29.597478]}},南充市:{lng:106.082974,lat:30.795281,districts:{顺庆区:[106.084091,30.795572],高坪区:[106.108996,30.781809],嘉陵区:[106.067027,30.762976],南部县:[106.061138,31.349407],营山县:[106.564893,31.075907],蓬安县:[106.413488,31.027978],仪陇县:[106.297083,31.271261],西充县:[105.893021,30.994616],阆中市:[105.975266,31.580466]}},眉山市:{lng:103.831788,lat:30.048318,districts:{东坡区:[103.831553,30.048128],彭山区:[103.8701,30.192298],仁寿县:[104.147646,29.996721],洪雅县:[103.375006,29.904867],丹棱县:[103.518333,30.012751],青神县:[103.846131,29.831469]}},宜宾市:{lng:104.630825,lat:28.760189,districts:{翠屏区:[104.630231,28.760179],南溪区:[104.981133,28.839806],叙州区:[104.541489,28.695678],江安县:[105.068697,28.728102],长宁县:[104.921116,28.577271],高县:[104.519187,28.435676],珙县:[104.712268,28.449041],筠连县:[104.507848,28.162017],兴文县:[105.236549,28.302988],屏山县:[104.162617,28.64237]}},广安市:{lng:106.633369,lat:30.456398,districts:{广安区:[106.632907,30.456462],前锋区:[106.893277,30.4963],岳池县:[106.444451,30.533538],武胜县:[106.292473,30.344291],邻水县:[106.934968,30.334323],华蓥市:[106.777882,30.380574]}},达州市:{lng:107.502262,lat:31.209484,districts:{通川区:[107.501062,31.213522],达川区:[107.507926,31.199062],宣汉县:[107.722254,31.355025],开江县:[107.864135,31.085537],大竹县:[107.20742,30.736289],渠县:[106.970746,30.836348],万源市:[108.037548,32.06777]}},雅安市:{lng:103.001033,lat:29.987722,districts:{雨城区:[103.003398,29.981831],名山区:[103.112214,30.084718],荥经县:[102.844674,29.795529],汉源县:[102.677145,29.349915],石棉县:[102.35962,29.234063],天全县:[102.763462,30.059955],芦山县:[102.924016,30.152907],宝兴县:[102.813377,30.369026]}},巴中市:{lng:106.753669,lat:31.858809,districts:{巴州区:[106.753671,31.858366],恩阳区:[106.486515,31.816336],通江县:[107.247621,31.91212],南江县:[106.843418,32.353164],平昌县:[107.101937,31.562814]}},资阳市:{lng:104.641917,lat:30.122211,districts:{雁江区:[104.642338,30.121686],安岳县:[105.336764,30.099206],乐至县:[105.031142,30.275619]}},阿坝藏族羌族自治州:{lng:102.221374,lat:31.899792,districts:{马尔康市:[102.221187,31.899761],汶川县:[103.580675,31.47463],理县:[103.165486,31.436764],茂县:[103.850684,31.680407],松潘县:[103.599177,32.63838],九寨沟县:[104.236344,33.262097],金川县:[102.064647,31.476356],小金县:[102.363193,30.999016],黑水县:[102.990805,32.061721],壤塘县:[100.979136,32.264887],阿坝县:[101.700985,32.904223],若尔盖县:[102.963726,33.575934],红原县:[102.544906,32.793902]}},甘孜藏族自治州:{lng:101.963815,lat:30.050663,districts:{康定市:[101.964057,30.050738],泸定县:[102.233225,29.912482],丹巴县:[101.886125,30.877083],九龙县:[101.506942,29.001975],雅江县:[101.015735,30.03225],道孚县:[101.123327,30.978767],炉霍县:[100.679495,31.392674],甘孜县:[99.991753,31.61975],新龙县:[100.312094,30.93896],德格县:[98.57999,31.806729],白玉县:[98.824343,31.208805],石渠县:[98.100887,32.975302],色达县:[100.331657,32.268777],理塘县:[100.269862,29.991807],巴塘县:[99.109037,30.005723],乡城县:[99.799943,28.930855],稻城县:[100.296689,29.037544],得荣县:[99.288036,28.71134]}},凉山彝族自治州:{lng:102.258746,lat:27.886762,districts:{西昌市:[102.258758,27.885786],木里藏族自治县:[101.280184,27.926859],盐源县:[101.508909,27.423415],德昌县:[102.178845,27.403827],会理市:[102.249548,26.658702],会东县:[102.578985,26.630713],宁南县:[102.757374,27.065205],普格县:[102.541082,27.376828],布拖县:[102.808801,27.709062],金阳县:[103.248704,27.695916],昭觉县:[102.843991,28.010554],喜德县:[102.412342,28.305486],冕宁县:[102.170046,28.550844],越西县:[102.508875,28.639632],甘洛县:[102.775924,28.977094],美姑县:[103.132007,28.327946],雷波县:[103.571584,28.262946]}}}},贵州省:{lng:106.713478,lat:26.578343,cities:{贵阳市:{lng:106.713478,lat:26.578343,districts:{南明区:[106.715963,26.573743],云岩区:[106.713397,26.58301],花溪区:[106.670791,26.410464],乌当区:[106.762123,26.630928],白云区:[106.633037,26.676849],观山湖区:[106.626323,26.646358],开阳县:[106.969438,27.056793],息烽县:[106.737693,27.092665],修文县:[106.599218,26.840672],清镇市:[106.470278,26.551289]}},六盘水市:{lng:104.846743,lat:26.584643,districts:{钟山区:[104.846244,26.584805],六枝特区:[105.474235,26.210662],水城区:[104.95685,26.540478],盘州市:[104.468367,25.706966]}},遵义市:{lng:106.937265,lat:27.706626,districts:{红花岗区:[106.943784,27.694395],汇川区:[106.937265,27.706626],播州区:[106.831668,27.535288],桐梓县:[106.826591,28.131559],绥阳县:[107.191024,27.951342],正安县:[107.441872,28.550337],道真仡佬族苗族自治县:[107.605342,28.880088],务川仡佬族苗族自治县:[107.887857,28.521567],凤冈县:[107.722021,27.960858],湄潭县:[107.485723,27.765839],余庆县:[107.892566,27.221552],习水县:[106.200954,28.327826],赤水市:[105.698116,28.587057],仁怀市:[106.412476,27.803377]}},安顺市:{lng:105.932188,lat:26.245544,districts:{西秀区:[105.946169,26.248323],平坝区:[106.259942,26.40608],普定县:[105.745609,26.305794],镇宁布依族苗族自治县:[105.768656,26.056096],关岭布依族苗族自治县:[105.618454,25.944248],紫云苗族布依族自治县:[106.084515,25.751567]}},毕节市:{lng:105.28501,lat:27.301693,districts:{七星关区:[105.284852,27.302085],大方县:[105.609254,27.143521],黔西市:[106.038299,27.024923],金沙县:[106.222103,27.459693],织金县:[105.768997,26.668497],纳雍县:[105.375322,26.769875],威宁彝族回族苗族自治县:[104.286523,26.859099],赫章县:[104.726438,27.119243]}},铜仁市:{lng:109.191555,lat:27.718346,districts:{碧江区:[109.192117,27.718745],万山区:[109.21199,27.51903],江口县:[108.848427,27.691904],玉屏侗族自治县:[108.917882,27.238024],石阡县:[108.229854,27.519386],思南县:[108.255827,27.941331],印江土家族苗族自治县:[108.405517,27.997976],德江县:[108.117317,28.26094],沿河土家族自治县:[108.495746,28.560487],松桃苗族自治县:[109.202627,28.165419]}},黔西南布依族苗族自治州:{lng:104.897971,lat:25.08812,districts:{兴义市:[104.897982,25.088599],兴仁市:[105.192778,25.431378],普安县:[104.955347,25.786404],晴隆县:[105.218773,25.832881],贞丰县:[105.650133,25.385752],望谟县:[106.091563,25.166667],册亨县:[105.81241,24.983338],安龙县:[105.471498,25.108959]}},黔东南苗族侗族自治州:{lng:107.977488,lat:26.583352,districts:{凯里市:[107.977541,26.582964],黄平县:[107.901337,26.896973],施秉县:[108.12678,27.034657],三穗县:[108.681121,26.959884],镇远县:[108.423656,27.050233],岑巩县:[108.816459,27.173244],天柱县:[109.212798,26.909684],锦屏县:[109.20252,26.680625],剑河县:[108.440499,26.727349],台江县:[108.314637,26.669138],黎平县:[109.136504,26.230636],榕江县:[108.521026,25.931085],从江县:[108.912648,25.747058],雷山县:[108.079613,26.381027],麻江县:[107.593172,26.494803],丹寨县:[107.794808,26.199497]}},黔南布依族苗族自治州:{lng:107.517156,lat:26.258219,districts:{都匀市:[107.517021,26.258205],福泉市:[107.513508,26.702508],荔波县:[107.8838,25.412239],贵定县:[107.233588,26.580807],瓮安县:[107.478417,27.066339],独山县:[107.542757,25.826283],平塘县:[107.32405,25.831803],罗甸县:[106.750006,25.429894],长顺县:[106.447376,26.022116],龙里县:[106.977733,26.448809],惠水县:[106.657848,26.128637],三都水族自治县:[107.87747,25.985183]}}}},云南省:{lng:102.712251,lat:25.040609,cities:{昆明市:{lng:102.712251,lat:25.040609,districts:{五华区:[102.704412,25.042165],盘龙区:[102.729044,25.070239],官渡区:[102.723437,25.021211],西山区:[102.705904,25.02436],东川区:[103.182,26.08349],呈贡区:[102.801382,24.889275],晋宁区:[102.594987,24.666944],富民县:[102.497888,25.219667],宜良县:[103.145989,24.918215],石林彝族自治县:[103.271962,24.754545],嵩明县:[103.038777,25.335087],禄劝彝族苗族自治县:[102.46905,25.556533],寻甸回族彝族自治县:[103.257588,25.559474],安宁市:[102.485544,24.921785]}},曲靖市:{lng:103.797851,lat:25.501557,districts:{麒麟区:[103.798054,25.501269],沾益区:[103.819262,25.600878],马龙区:[103.578755,25.429451],陆良县:[103.655233,25.022878],师宗县:[103.993808,24.825681],罗平县:[104.309263,24.885708],富源县:[104.25692,25.67064],会泽县:[103.300041,26.412861],宣威市:[104.09554,26.227777]}},玉溪市:{lng:102.543907,lat:24.350461,districts:{红塔区:[102.543468,24.350753],江川区:[102.749839,24.291006],通海县:[102.760039,24.112205],华宁县:[102.928982,24.189807],易门县:[102.16211,24.669598],峨山彝族自治县:[102.404358,24.173256],新平彝族傣族自治县:[101.990903,24.0664],元江哈尼族彝族傣族自治县:[101.999658,23.597618],澄江市:[102.916652,24.669679]}},保山市:{lng:99.167133,lat:25.111802,districts:{隆阳区:[99.165825,25.112144],施甸县:[99.183758,24.730847],龙陵县:[98.693567,24.591912],昌宁县:[99.612344,24.823662],腾冲市:[98.497292,25.01757]}},昭通市:{lng:103.717216,lat:27.336999,districts:{昭阳区:[103.717267,27.336636],鲁甸县:[103.549333,27.191637],巧家县:[102.929284,26.9117],盐津县:[104.23506,28.106923],大关县:[103.891608,27.747114],永善县:[103.63732,28.231526],绥江县:[103.961095,28.599953],镇雄县:[104.873055,27.436267],彝良县:[104.048492,27.627425],威信县:[105.04869,27.843381],水富市:[104.415376,28.629688]}},丽江市:{lng:100.233026,lat:26.872108,districts:{古城区:[100.234412,26.872229],玉龙纳西族自治县:[100.238312,26.830593],永胜县:[100.750901,26.685623],华坪县:[101.267796,26.628834],宁蒗彝族自治县:[100.852427,27.281109]}},普洱市:{lng:100.972344,lat:22.777321,districts:{思茅区:[100.973227,22.776595],宁洱哈尼族彝族自治县:[101.04524,23.062507],墨江哈尼族自治县:[101.687606,23.428165],景东彝族自治县:[100.840011,24.448523],景谷傣族彝族自治县:[100.701425,23.500278],镇沅彝族哈尼族拉祜族自治县:[101.108512,24.005712],江城哈尼族彝族自治县:[101.859144,22.58336],孟连傣族拉祜族佤族自治县:[99.585406,22.325924],澜沧拉祜族自治县:[99.931201,22.553083],西盟佤族自治县:[99.594372,22.644423]}},临沧市:{lng:100.08697,lat:23.886567,districts:{临翔区:[100.086486,23.886562],凤庆县:[99.91871,24.592738],云县:[100.125637,24.439026],永德县:[99.253679,24.028159],镇康县:[98.82743,23.761415],双江拉祜族佤族布朗族傣族自治县:[99.824419,23.477476],耿马傣族佤族自治县:[99.402495,23.534579],沧源佤族自治县:[99.2474,23.146887]}},楚雄彝族自治州:{lng:101.546046,lat:25.041988,districts:{楚雄市:[101.546145,25.040912],双柏县:[101.63824,24.685094],牟定县:[101.543044,25.312111],南华县:[101.274991,25.192408],姚安县:[101.238399,25.505403],大姚县:[101.323602,25.722348],永仁县:[101.671175,26.056316],元谋县:[101.870837,25.703313],武定县:[102.406785,25.5301],禄丰市:[102.075694,25.14327]}},红河哈尼族彝族自治州:{lng:103.384182,lat:23.366775,districts:{个旧市:[103.154752,23.360383],开远市:[103.258679,23.713832],蒙自市:[103.385005,23.366843],弥勒市:[103.436988,24.40837],屏边苗族自治县:[103.687229,22.987013],建水县:[102.820493,23.618387],石屏县:[102.484469,23.712569],泸西县:[103.759622,24.532368],元阳县:[102.837056,23.219773],红河县:[102.42121,23.369191],金平苗族瑶族傣族自治县:[103.228359,22.779982],绿春县:[102.39286,22.99352],河口瑶族自治县:[103.961593,22.507563]}},文山壮族苗族自治州:{lng:104.24401,lat:23.36951,districts:{文山市:[104.244277,23.369216],砚山县:[104.343989,23.612301],西畴县:[104.675711,23.437439],麻栗坡县:[104.701899,23.124202],马关县:[104.398619,23.011723],丘北县:[104.194366,24.040982],广南县:[105.056684,24.050272],富宁县:[105.62856,23.626494]}},西双版纳傣族自治州:{lng:100.797941,lat:22.001724,districts:{景洪市:[100.797947,22.002087],勐海县:[100.448288,21.955866],勐腊县:[101.567051,21.479449]}},大理白族自治州:{lng:100.225668,lat:25.589449,districts:{大理市:[100.241369,25.593067],漾濞彝族自治县:[99.95797,25.669543],祥云县:[100.554025,25.477072],宾川县:[100.578957,25.825904],弥渡县:[100.490669,25.342594],南涧彝族自治县:[100.518683,25.041279],巍山彝族回族自治县:[100.30793,25.230909],永平县:[99.533536,25.461281],云龙县:[99.369402,25.884955],洱源县:[99.951708,26.111184],剑川县:[99.905887,26.530066],鹤庆县:[100.173375,26.55839]}},德宏傣族景颇族自治州:{lng:98.578363,lat:24.436694,districts:{瑞丽市:[97.855883,24.010734],芒市:[98.577608,24.436699],梁河县:[98.298196,24.80742],盈江县:[97.93393,24.709541],陇川县:[97.794441,24.184065]}},怒江傈僳族自治州:{lng:98.854304,lat:25.850949,districts:{泸水市:[98.854063,25.851142],福贡县:[98.867413,26.902738],贡山独龙族怒族自治县:[98.666141,27.738054],兰坪白族普米族自治县:[99.421378,26.453839]}},迪庆藏族自治州:{lng:99.706463,lat:27.826853,districts:{香格里拉市:[99.708667,27.825804],德钦县:[98.91506,28.483272],维西傈僳族自治县:[99.286355,27.180948]}}}},西藏自治区:{lng:91.132212,lat:29.660361,cities:{拉萨市:{lng:91.132212,lat:29.660361,districts:{城关区:[91.132911,29.659472],堆龙德庆区:[91.002823,29.647347],达孜区:[91.350976,29.670314],林周县:[91.261842,29.895754],当雄县:[91.103551,30.474819],尼木县:[90.165545,29.431346],曲水县:[90.738051,29.349895],墨竹工卡县:[91.731158,29.834657]}},日喀则市:{lng:88.885148,lat:29.267519,districts:{桑珠孜区:[88.88667,29.267003],南木林县:[89.099434,29.680459],江孜县:[89.605044,28.908845],定日县:[87.123887,28.656667],萨迦县:[88.023007,28.901077],拉孜县:[87.63743,29.085136],昂仁县:[87.23578,29.294758],谢通门县:[88.260517,29.431597],白朗县:[89.263618,29.106627],仁布县:[89.843207,29.230299],康马县:[89.683406,28.554719],定结县:[87.767723,28.36409],仲巴县:[84.032826,29.768336],亚东县:[88.906806,27.482772],吉隆县:[85.298349,28.852416],聂拉木县:[85.981953,28.15595],萨嘎县:[85.234622,29.328194],岗巴县:[88.518903,28.274371]}},昌都市:{lng:97.178452,lat:31.136875,districts:{卡若区:[97.178255,31.137035],江达县:[98.218351,31.499534],贡觉县:[98.271191,30.859206],类乌齐县:[96.601259,31.213048],丁青县:[95.597748,31.410681],察雅县:[97.565701,30.653038],八宿县:[96.917893,30.053408],左贡县:[97.840532,29.671335],芒康县:[98.596444,29.686615],洛隆县:[95.823418,30.741947],边坝县:[94.707504,30.933849]}},林芝市:{lng:94.362348,lat:29.654693,districts:{巴宜区:[94.360987,29.653732],工布江达县:[93.246515,29.88447],米林县:[94.213679,29.213811],墨脱县:[95.332245,29.32573],波密县:[95.768151,29.858771],察隅县:[97.465002,28.660244],朗县:[93.073429,29.0446]}},山南市:{lng:91.766529,lat:29.236023,districts:{乃东区:[91.76525,29.236106],扎囊县:[91.338,29.246476],贡嘎县:[90.985271,29.289078],桑日县:[92.015732,29.259774],琼结县:[91.683753,29.025242],曲松县:[92.201066,29.063656],措美县:[91.432347,28.437353],洛扎县:[90.858243,28.385765],加查县:[92.591043,29.140921],隆子县:[92.463309,28.408548],错那县:[91.960132,27.991707],浪卡子县:[90.398747,28.96836]}},那曲市:{lng:92.060214,lat:31.476004,districts:{色尼区:[92.061862,31.475756],嘉黎县:[93.232907,30.640846],比如县:[93.68044,31.479917],聂荣县:[92.303659,32.107855],安多县:[91.681879,32.260299],申扎县:[88.709777,30.929056],索县:[93.784964,31.886173],班戈县:[90.011822,31.394578],巴青县:[94.054049,31.918691],尼玛县:[87.236646,31.784979],双湖县:[88.838578,33.18698]}},阿里地区:{lng:80.105498,lat:32.503187,districts:{普兰县:[81.177588,30.291896],札达县:[79.803191,31.478587],噶尔县:[80.105005,32.503373],日土县:[79.731937,33.382454],革吉县:[81.142896,32.389192],改则县:[84.062384,32.302076],措勤县:[85.159254,31.016774]}}}},陕西省:{lng:108.948024,lat:34.263161,cities:{西安市:{lng:108.948024,lat:34.263161,districts:{新城区:[108.959903,34.26927],碑林区:[108.946994,34.251061],莲湖区:[108.933194,34.2656],灞桥区:[109.067261,34.267453],未央区:[108.946022,34.30823],雁塔区:[108.926593,34.213389],阎良区:[109.22802,34.662141],临潼区:[109.213986,34.372065],长安区:[108.941579,34.157097],高陵区:[109.088896,34.535065],鄠邑区:[108.607385,34.108668],蓝田县:[109.317634,34.156189],周至县:[108.216465,34.161532]}},铜川市:{lng:108.979608,lat:34.916582,districts:{王益区:[109.075862,35.069098],印台区:[109.100814,35.111927],耀州区:[108.962538,34.910206],宜君县:[109.118278,35.398766]}},宝鸡市:{lng:107.14487,lat:34.369315,districts:{渭滨区:[107.144467,34.371008],金台区:[107.149943,34.375192],陈仓区:[107.383645,34.352747],凤翔区:[107.400577,34.521668],岐山县:[107.624464,34.44296],扶风县:[107.891419,34.375497],眉县:[107.752371,34.272137],陇县:[106.857066,34.893262],千阳县:[107.132987,34.642584],麟游县:[107.796608,34.677714],凤县:[106.525212,33.912464],太白县:[107.316533,34.059215]}},咸阳市:{lng:108.705117,lat:34.333439,districts:{秦都区:[108.698636,34.329801],杨陵区:[108.086348,34.27135],渭城区:[108.730957,34.336847],三原县:[108.943481,34.613996],泾阳县:[108.83784,34.528493],乾县:[108.247406,34.527261],礼泉县:[108.428317,34.482583],永寿县:[108.143129,34.692619],长武县:[107.795835,35.206122],旬邑县:[108.337231,35.112234],淳化县:[108.581173,34.79797],武功县:[108.212857,34.259732],兴平市:[108.488493,34.297134],彬州市:[108.083674,35.034233]}},渭南市:{lng:109.502882,lat:34.499381,districts:{临渭区:[109.503299,34.501271],华州区:[109.76141,34.511958],潼关县:[110.24726,34.544515],大荔县:[109.943123,34.795011],合阳县:[110.147979,35.237098],澄城县:[109.937609,35.184],蒲城县:[109.589653,34.956034],白水县:[109.594309,35.177291],富平县:[109.187174,34.746679],韩城市:[110.452391,35.475238],华阴市:[110.08952,34.565359]}},延安市:{lng:109.49081,lat:36.596537,districts:{宝塔区:[109.49069,36.596291],安塞区:[109.325341,36.86441],延长县:[110.012961,36.578306],延川县:[110.190314,36.882066],志丹县:[108.768898,36.823031],吴起县:[108.176976,36.924852],甘泉县:[109.34961,36.277729],富县:[109.384136,35.996495],洛川县:[109.435712,35.762133],宜川县:[110.175537,36.050391],黄龙县:[109.83502,35.583276],黄陵县:[109.262469,35.580165],子长市:[109.675968,37.14207]}},汉中市:{lng:107.028621,lat:33.077668,districts:{汉台区:[107.028233,33.077674],南郑区:[106.942393,33.003341],城固县:[107.329887,33.153098],洋县:[107.549962,33.223283],西乡县:[107.765858,32.987961],勉县:[106.680175,33.155618],宁强县:[106.25739,32.830806],略阳县:[106.153899,33.329638],镇巴县:[107.89531,32.535854],留坝县:[106.924377,33.61334],佛坪县:[107.988582,33.520745]}},榆林市:{lng:109.741193,lat:38.290162,districts:{榆阳区:[109.74791,38.299267],横山区:[109.292596,37.964048],府谷县:[111.069645,39.029243],靖边县:[108.80567,37.596084],定边县:[107.601284,37.59523],绥德县:[110.265377,37.507701],米脂县:[110.178683,37.759081],佳县:[110.493367,38.021597],吴堡县:[110.739315,37.451925],清涧县:[110.12146,37.087702],子洲县:[110.03457,37.611573],神木市:[110.497005,38.835641]}},安康市:{lng:109.029273,lat:32.6903,districts:{汉滨区:[109.029098,32.690817],汉阴县:[108.510946,32.891121],石泉县:[108.250512,33.038512],宁陕县:[108.313714,33.312184],紫阳县:[108.537788,32.520176],岚皋县:[108.900663,32.31069],平利县:[109.361865,32.387933],镇坪县:[109.526437,31.883395],旬阳市:[109.368149,32.833567],白河县:[110.114186,32.809484]}},商洛市:{lng:109.939776,lat:33.868319,districts:{商州区:[109.937685,33.869208],洛南县:[110.145716,34.088502],丹凤县:[110.33191,33.694711],商南县:[110.885437,33.526367],山阳县:[109.880435,33.530411],镇安县:[109.151075,33.423981],柞水县:[109.111249,33.682773]}}}},甘肃省:{lng:103.823557,lat:36.058039,cities:{兰州市:{lng:103.823557,lat:36.058039,districts:{城关区:[103.841032,36.049115],七里河区:[103.784326,36.06673],西固区:[103.622331,36.100369],安宁区:[103.724038,36.10329],红古区:[102.861814,36.344177],永登县:[103.262203,36.734428],皋兰县:[103.94933,36.331254],榆中县:[104.114975,35.84443]}},嘉峪关市:{lng:98.277304,lat:39.786529,districts:{}},金昌市:{lng:102.187888,lat:38.514238,districts:{金川区:[102.187683,38.513793],永昌县:[101.971957,38.247354]}},白银市:{lng:104.173606,lat:36.54568,districts:{白银区:[104.17425,36.545649],平川区:[104.819207,36.72921],靖远县:[104.686972,36.561424],会宁县:[105.054337,35.692486],景泰县:[104.066394,37.193519]}},天水市:{lng:105.724998,lat:34.578529,districts:{秦州区:[105.724477,34.578645],麦积区:[105.897631,34.563504],清水县:[106.139878,34.75287],秦安县:[105.6733,34.862354],甘谷县:[105.332347,34.747327],武山县:[104.891696,34.721955],张家川回族自治县:[106.212416,34.993237]}},武威市:{lng:102.634697,lat:37.929996,districts:{凉州区:[102.634492,37.93025],民勤县:[103.090654,38.624621],古浪县:[102.898047,37.470571],天祝藏族自治县:[103.142034,36.971678]}},张掖市:{lng:100.455472,lat:38.932897,districts:{甘州区:[100.454862,38.931774],肃南裕固族自治县:[99.617086,38.837269],民乐县:[100.816623,38.434454],临泽县:[100.166333,39.152151],高台县:[99.81665,39.376308],山丹县:[101.088442,38.784839]}},平凉市:{lng:106.684691,lat:35.54279,districts:{崆峒区:[106.684223,35.54173],泾川县:[107.365218,35.335283],灵台县:[107.620587,35.064009],崇信县:[107.031253,35.304533],庄浪县:[106.041979,35.203428],静宁县:[105.733489,35.525243],华亭市:[106.649308,35.215341]}},酒泉市:{lng:98.510795,lat:39.744023,districts:{肃州区:[98.511155,39.743858],金塔县:[98.902959,39.983036],瓜州县:[95.780591,40.516525],肃北蒙古族自治县:[94.87728,39.51224],阿克塞哈萨克族自治县:[94.337642,39.631642],玉门市:[97.037206,40.28682],敦煌市:[94.664279,40.141119]}},庆阳市:{lng:107.638372,lat:35.734218,districts:{西峰区:[107.638824,35.733713],庆城县:[107.885664,36.013504],环县:[107.308754,36.569322],华池县:[107.986288,36.457304],合水县:[108.019865,35.819005],正宁县:[108.361068,35.490642],宁县:[107.921182,35.50201],镇原县:[107.195706,35.677806]}},定西市:{lng:104.626294,lat:35.579578,districts:{安定区:[104.62577,35.579764],通渭县:[105.250102,35.208922],陇西县:[104.637554,35.003409],渭源县:[104.211742,35.133023],临洮县:[103.862186,35.376233],漳县:[104.466756,34.848642],岷县:[104.039882,34.439105]}},陇南市:{lng:104.929379,lat:33.388598,districts:{武都区:[104.929866,33.388155],成县:[105.734434,33.739863],文县:[104.682448,32.942171],宕昌县:[104.394475,34.042655],康县:[105.609534,33.328266],西和县:[105.299737,34.013718],礼县:[105.181616,34.189387],徽县:[106.085632,33.767785],两当县:[106.306959,33.910729]}},临夏回族自治州:{lng:103.212006,lat:35.599446,districts:{临夏市:[103.211634,35.59941],临夏县:[102.993873,35.49236],康乐县:[103.709852,35.371906],永靖县:[103.319871,35.938933],广河县:[103.576188,35.481688],和政县:[103.350357,35.425971],东乡族自治县:[103.389568,35.66383],积石山保安族东乡族撒拉族自治县:[102.877473,35.712906]}},甘南藏族自治州:{lng:102.911008,lat:34.986354,districts:{合作市:[102.91149,34.985973],临潭县:[103.353054,34.69164],卓尼县:[103.508508,34.588165],舟曲县:[104.370271,33.782964],迭部县:[103.221009,34.055348],玛曲县:[102.075767,33.998068],碌曲县:[102.488495,34.589591],夏河县:[102.520743,35.200853]}}}},青海省:{lng:101.778916,lat:36.623178,cities:{西宁市:{lng:101.778916,lat:36.623178,districts:{城东区:[101.796095,36.616043],城中区:[101.784554,36.621181],城西区:[101.763649,36.628323],城北区:[101.761297,36.648448],湟中区:[101.569475,36.500419],大通回族土族自治县:[101.684183,36.931343],湟源县:[101.263435,36.684818]}},海东市:{lng:102.10327,lat:36.502916,districts:{乐都区:[102.402431,36.480291],平安区:[102.104295,36.502714],民和回族土族自治县:[102.804209,36.329451],互助土族自治县:[101.956734,36.83994],化隆回族自治县:[102.262329,36.098322],循化撒拉族自治县:[102.486534,35.847247]}},海北藏族自治州:{lng:100.901059,lat:36.959435,districts:{门源回族自治县:[101.618461,37.376627],祁连县:[100.249778,38.175409],海晏县:[100.90049,36.959542],刚察县:[100.138417,37.326263]}},黄南藏族自治州:{lng:102.019988,lat:35.517744,districts:{同仁市:[102.017604,35.516337],尖扎县:[102.031953,35.938205],泽库县:[101.469343,35.036842],河南蒙古族自治县:[101.611877,34.734522]}},海南藏族自治州:{lng:100.619542,lat:36.280353,districts:{共和县:[100.619597,36.280286],同德县:[100.579465,35.254492],贵德县:[101.431856,36.040456],兴海县:[99.986963,35.58909],贵南县:[100.74792,35.587085]}},果洛藏族自治州:{lng:100.242143,lat:34.4736,districts:{玛沁县:[100.243531,34.473386],班玛县:[100.737955,32.931589],甘德县:[99.902589,33.966987],达日县:[99.651715,33.753259],久治县:[101.484884,33.430217],玛多县:[98.211343,34.91528]}},玉树藏族自治州:{lng:97.008522,lat:33.004049,districts:{玉树市:[97.008762,33.00393],杂多县:[95.293423,32.891886],称多县:[97.110893,33.367884],治多县:[95.616843,33.852322],囊谦县:[96.479797,32.203206],曲麻莱县:[95.800674,34.12654]}},海西蒙古族藏族自治州:{lng:97.370785,lat:37.374663,districts:{格尔木市:[94.905777,36.401541],德令哈市:[97.370143,37.374555],茫崖市:[90.855955,38.247117],乌兰县:[98.479852,36.930389],都兰县:[98.089161,36.298553],天峻县:[99.02078,37.29906],海西蒙古族藏族自治州直辖:[95.357233,37.853631]}}}},宁夏回族自治区:{lng:106.278179,lat:38.46637,cities:{银川市:{lng:106.278179,lat:38.46637,districts:{兴庆区:[106.278393,38.46747],西夏区:[106.132116,38.492424],金凤区:[106.228486,38.477353],永宁县:[106.253781,38.28043],贺兰县:[106.345904,38.554563],灵武市:[106.334701,38.094058]}},石嘴山市:{lng:106.376173,lat:39.01333,districts:{大武口区:[106.376651,39.014158],惠农区:[106.775513,39.230094],平罗县:[106.54489,38.90674]}},吴忠市:{lng:106.199409,lat:37.986165,districts:{利通区:[106.199419,37.985967],红寺堡区:[106.067315,37.421616],盐池县:[107.40541,37.784222],同心县:[105.914764,36.9829],青铜峡市:[106.075395,38.021509]}},固原市:{lng:106.285241,lat:36.004561,districts:{原州区:[106.28477,36.005337],西吉县:[105.731801,35.965384],隆德县:[106.12344,35.618234],泾源县:[106.338674,35.49344],彭阳县:[106.641512,35.849975]}},中卫市:{lng:105.189568,lat:37.514951,districts:{沙坡头区:[105.190536,37.514564],中宁县:[105.675784,37.489736],海原县:[105.647323,36.562007]}}}},新疆维吾尔自治区:{lng:87.617733,lat:43.792818,cities:{乌鲁木齐市:{lng:87.617733,lat:43.792818,districts:{天山区:[87.620116,43.796428],沙依巴克区:[87.596639,43.788872],新市区:[87.560653,43.870882],水磨沟区:[87.613093,43.816747],头屯河区:[87.425823,43.876053],达坂城区:[88.30994,43.36181],米东区:[87.691801,43.960982],乌鲁木齐县:[87.505603,43.982546]}},克拉玛依市:{lng:84.873946,lat:45.595886,districts:{独山子区:[84.882267,44.327207],克拉玛依区:[84.868918,45.600477],白碱滩区:[85.129882,45.689021],乌尔禾区:[85.697767,46.08776]}},吐鲁番市:{lng:89.184078,lat:42.947613,districts:{高昌区:[89.182324,42.947627],鄯善县:[90.212692,42.865503],托克逊县:[88.655771,42.793536]}},哈密市:{lng:93.51316,lat:42.833248,districts:{伊州区:[93.509174,42.833888],巴里坤哈萨克自治县:[93.021795,43.599032],伊吾县:[94.692773,43.252012]}},昌吉回族自治州:{lng:87.304012,lat:44.014577,districts:{昌吉市:[87.304112,44.013183],阜康市:[87.98384,44.152153],呼图壁县:[86.888613,44.189342],玛纳斯县:[86.217687,44.305625],奇台县:[89.591437,44.021996],吉木萨尔县:[89.181288,43.997162],木垒哈萨克自治县:[90.282833,43.832442]}},博尔塔拉蒙古自治州:{lng:82.074778,lat:44.903258,districts:{博乐市:[82.072237,44.903087],阿拉山口市:[82.569389,45.16777],精河县:[82.892938,44.605645],温泉县:[81.03099,44.973751]}},巴音郭楞蒙古自治州:{lng:86.150969,lat:41.768552,districts:{库尔勒市:[86.145948,41.763122],轮台县:[84.248542,41.781266],尉犁县:[86.263412,41.337428],若羌县:[88.168807,39.023807],且末县:[85.532629,38.138562],焉耆回族自治县:[86.5698,42.064349],和静县:[86.391067,42.31716],和硕县:[86.864947,42.268863],博湖县:[86.631576,41.980166]}},阿克苏地区:{lng:80.265068,lat:41.170712,districts:{阿克苏市:[80.2629,41.171272],库车市:[82.96304,41.717141],温宿县:[80.243273,41.272995],沙雅县:[82.78077,41.226268],新和县:[82.610828,41.551176],拜城县:[81.869881,41.796101],乌什县:[79.230805,41.21587],阿瓦提县:[80.378426,40.638422],柯坪县:[79.04785,40.50624]}},克孜勒苏柯尔克孜自治州:{lng:76.172825,lat:39.713431,districts:{阿图什市:[76.173939,39.712898],阿克陶县:[75.945159,39.147079],阿合奇县:[78.450164,40.937567],乌恰县:[75.25969,39.716633]}},喀什地区:{lng:75.989138,lat:39.467664,districts:{喀什市:[75.98838,39.467861],疏附县:[75.863075,39.378306],疏勒县:[76.053653,39.399461],英吉沙县:[76.174292,38.929839],泽普县:[77.273593,38.191217],莎车县:[77.248884,38.414499],叶城县:[77.420353,37.884679],麦盖提县:[77.651538,38.903384],岳普湖县:[76.7724,39.235248],伽师县:[76.741982,39.494325],巴楚县:[78.55041,39.783479],塔什库尔干塔吉克自治县:[75.228068,37.775437]}},和田地区:{lng:79.92533,lat:37.110687,districts:{和田市:[79.927542,37.108944],和田县:[79.81907,37.120031],墨玉县:[79.736629,37.271511],皮山县:[78.282301,37.616332],洛浦县:[80.184038,37.074377],策勒县:[80.803572,37.001672],于田县:[81.667845,36.854628],民丰县:[82.692354,37.064909]}},伊犁哈萨克自治州:{lng:81.317946,lat:43.92186,districts:{伊宁市:[81.316343,43.922209],奎屯市:[84.901602,44.423445],霍尔果斯市:[80.420759,44.201669],伊宁县:[81.524671,43.977876],察布查尔锡伯自治县:[81.150874,43.838883],霍城县:[80.872508,44.049912],巩留县:[82.227044,43.481618],新源县:[83.258493,43.434249],昭苏县:[81.126029,43.157765],特克斯县:[81.840058,43.214861],尼勒克县:[82.504119,43.789737]}},塔城地区:{lng:82.985732,lat:46.746301,districts:{塔城市:[82.983988,46.746281],乌苏市:[84.677624,44.430115],额敏县:[83.622118,46.522555],沙湾市:[85.622508,44.329544],托里县:[83.60469,45.935863],裕民县:[82.982157,46.202781],和布克赛尔蒙古自治县:[85.733551,46.793001]}},阿勒泰地区:{lng:88.13963,lat:47.848393,districts:{阿勒泰市:[88.138743,47.848911],布尔津县:[86.86186,47.70453],富蕴县:[89.524993,46.993106],福海县:[87.494569,47.113128],哈巴河县:[86.418964,48.059284],青河县:[90.381561,46.672446],吉木乃县:[85.876064,47.434633]}},石河子市:{lng:86.041075,lat:44.305886,districts:{}},阿拉尔市:{lng:81.285884,lat:40.541914,districts:{}},图木舒克市:{lng:79.077978,lat:39.867316,districts:{}},五家渠市:{lng:87.526884,lat:44.167401,districts:{}},北屯市:{lng:87.824932,lat:47.353177,districts:{}},铁门关市:{lng:85.501218,lat:41.827251,districts:{}},双河市:{lng:82.353656,lat:44.840524,districts:{}},可克达拉市:{lng:80.63579,lat:43.6832,districts:{}},昆玉市:{lng:79.287372,lat:37.207994,districts:{}},胡杨河市:{lng:84.8275959,lat:44.69288853,districts:{}}}},香港特别行政区:{lng:113.94612,lat:22.28640778,cities:{香港特别行政区:{lng:113.94612,lat:22.28640778,districts:{}}}},澳门特别行政区:{lng:113.5599542,lat:22.12348639,cities:{澳门特别行政区:{lng:113.5599542,lat:22.12348639,districts:{}}}},台湾省:{lng:121,lat:23.7,cities:{台北市:{lng:121.565,lat:25.033,districts:{}},新北市:{lng:121.466,lat:25.012,districts:{}},桃园市:{lng:121.3,lat:24.994,districts:{}},台中市:{lng:120.679,lat:24.148,districts:{}},台南市:{lng:120.227,lat:22.999,districts:{}},高雄市:{lng:120.312,lat:22.616,districts:{}},基隆市:{lng:121.746,lat:25.128,districts:{}},新竹市:{lng:120.968,lat:24.802,districts:{}},嘉义市:{lng:120.454,lat:23.48,districts:{}},新竹县:{lng:121.006,lat:24.839,districts:{}},苗栗县:{lng:120.819,lat:24.56,districts:{}},彰化县:{lng:120.542,lat:24.08,districts:{}},南投县:{lng:120.685,lat:23.906,districts:{}},云林县:{lng:120.448,lat:23.719,districts:{}},嘉义县:{lng:120.576,lat:23.502,districts:{}},屏东县:{lng:120.548,lat:22.662,districts:{}},宜兰县:{lng:121.75,lat:24.692,districts:{}},花莲县:{lng:121.355,lat:23.977,districts:{}},台东县:{lng:121.114,lat:22.758,districts:{}},澎湖县:{lng:119.57,lat:23.571,districts:{}},金门县:{lng:118.318,lat:24.436,districts:{}},连江县:{lng:119.957,lat:26.16,districts:{}}}}},d8=[{name:"北京",cities:[{name:"北京市",lng:116.407,lat:39.904,districts:[{name:"东城区"},{name:"西城区"},{name:"朝阳区"},{name:"海淀区"},{name:"丰台区"},{name:"通州区"}]}]},{name:"上海",cities:[{name:"上海市",lng:121.474,lat:31.23,districts:[{name:"黄浦区"},{name:"徐汇区"},{name:"静安区"},{name:"浦东新区"},{name:"闵行区"},{name:"嘉定区"}]}]},{name:"天津",cities:[{name:"天津市",lng:117.201,lat:39.084,districts:[{name:"和平区"},{name:"河西区"},{name:"南开区"},{name:"滨海新区"}]}]},{name:"重庆",cities:[{name:"重庆市",lng:106.551,lat:29.563,districts:[{name:"渝中区"},{name:"江北区"},{name:"沙坪坝区"},{name:"南岸区"},{name:"九龙坡区"}]}]},{name:"河北",cities:[{name:"石家庄",lng:114.515,lat:38.042},{name:"唐山",lng:118.18,lat:39.63},{name:"保定",lng:115.464,lat:38.874},{name:"邯郸",lng:114.539,lat:36.625},{name:"秦皇岛",lng:119.6,lat:39.935},{name:"廊坊",lng:116.684,lat:39.538}]},{name:"山西",cities:[{name:"太原",lng:112.549,lat:37.857},{name:"大同",lng:113.3,lat:40.076},{name:"临汾",lng:111.519,lat:36.088},{name:"运城",lng:111.007,lat:35.026},{name:"晋中",lng:112.753,lat:37.687}]},{name:"内蒙古",cities:[{name:"呼和浩特",lng:111.749,lat:40.842},{name:"包头",lng:109.84,lat:40.657},{name:"赤峰",lng:118.887,lat:42.257},{name:"鄂尔多斯",lng:109.781,lat:39.608},{name:"呼伦贝尔",lng:119.766,lat:49.212}]},{name:"辽宁",cities:[{name:"沈阳",lng:123.431,lat:41.805},{name:"大连",lng:121.615,lat:38.914},{name:"鞍山",lng:122.994,lat:41.108},{name:"锦州",lng:121.127,lat:41.095},{name:"丹东",lng:124.354,lat:40}]},{name:"吉林",cities:[{name:"长春",lng:125.323,lat:43.817},{name:"吉林",lng:126.55,lat:43.838},{name:"延边",lng:129.509,lat:42.891},{name:"四平",lng:124.35,lat:43.167}]},{name:"黑龙江",cities:[{name:"哈尔滨",lng:126.535,lat:45.803},{name:"齐齐哈尔",lng:123.918,lat:47.354},{name:"大庆",lng:125.103,lat:46.589},{name:"牡丹江",lng:129.633,lat:44.551},{name:"佳木斯",lng:130.319,lat:46.799}]},{name:"江苏",cities:[{name:"南京",lng:118.797,lat:32.06},{name:"苏州",lng:120.585,lat:31.299},{name:"无锡",lng:120.312,lat:31.491},{name:"徐州",lng:117.284,lat:34.205},{name:"常州",lng:119.974,lat:31.811},{name:"南通",lng:120.895,lat:31.98},{name:"扬州",lng:119.413,lat:32.394},{name:"盐城",lng:120.163,lat:33.348}]},{name:"浙江",cities:[{name:"杭州",lng:120.155,lat:30.274},{name:"宁波",lng:121.55,lat:29.874},{name:"温州",lng:120.699,lat:27.994},{name:"金华",lng:119.647,lat:29.079},{name:"绍兴",lng:120.58,lat:30.03},{name:"嘉兴",lng:120.758,lat:30.746},{name:"台州",lng:121.421,lat:28.656}]},{name:"安徽",cities:[{name:"合肥",lng:117.227,lat:31.821},{name:"芜湖",lng:118.433,lat:31.353},{name:"安庆",lng:117.063,lat:30.543},{name:"蚌埠",lng:117.389,lat:32.916},{name:"黄山",lng:118.338,lat:29.714}]},{name:"福建",cities:[{name:"福州",lng:119.296,lat:26.074},{name:"厦门",lng:118.089,lat:24.48},{name:"泉州",lng:118.676,lat:24.874},{name:"漳州",lng:117.647,lat:24.513},{name:"莆田",lng:119.008,lat:25.454}]},{name:"江西",cities:[{name:"南昌",lng:115.858,lat:28.683},{name:"赣州",lng:114.935,lat:25.831},{name:"九江",lng:116.002,lat:29.705},{name:"景德镇",lng:117.178,lat:29.269}]},{name:"山东",cities:[{name:"济南",lng:117.12,lat:36.651},{name:"青岛",lng:120.383,lat:36.067},{name:"烟台",lng:121.448,lat:37.464},{name:"潍坊",lng:119.162,lat:36.717},{name:"临沂",lng:118.356,lat:35.105},{name:"济宁",lng:116.587,lat:35.415}]},{name:"河南",cities:[{name:"郑州",lng:113.625,lat:34.746},{name:"洛阳",lng:112.454,lat:34.62},{name:"开封",lng:114.307,lat:34.797},{name:"南阳",lng:112.528,lat:32.99},{name:"安阳",lng:114.392,lat:36.098},{name:"信阳",lng:114.091,lat:32.147}]},{name:"湖北",cities:[{name:"武汉",lng:114.305,lat:30.593},{name:"宜昌",lng:111.287,lat:30.692},{name:"襄阳",lng:112.122,lat:32.009},{name:"荆州",lng:112.241,lat:30.325},{name:"黄石",lng:115.038,lat:30.201}]},{name:"湖南",cities:[{name:"长沙",lng:112.939,lat:28.228},{name:"株洲",lng:113.134,lat:27.828},{name:"衡阳",lng:112.572,lat:26.893},{name:"岳阳",lng:113.129,lat:29.357},{name:"张家界",lng:110.479,lat:29.117}]},{name:"广东",cities:[{name:"广州",lng:113.264,lat:23.129,districts:[{name:"越秀区"},{name:"天河区"},{name:"海珠区"},{name:"番禺区"}]},{name:"深圳",lng:114.058,lat:22.543,districts:[{name:"福田区"},{name:"南山区"},{name:"罗湖区"},{name:"宝安区"}]},{name:"佛山",lng:113.122,lat:23.021},{name:"珠海",lng:113.577,lat:22.271},{name:"汕头",lng:116.682,lat:23.354},{name:"东莞",lng:113.752,lat:23.021},{name:"中山",lng:113.392,lat:22.517},{name:"惠州",lng:114.416,lat:23.111}]},{name:"广西",cities:[{name:"南宁",lng:108.366,lat:22.817},{name:"桂林",lng:110.29,lat:25.274},{name:"柳州",lng:109.416,lat:24.326},{name:"北海",lng:109.12,lat:21.481}]},{name:"海南",cities:[{name:"海口",lng:110.199,lat:20.044},{name:"三亚",lng:109.512,lat:18.253},{name:"儋州",lng:109.581,lat:19.521}]},{name:"四川",cities:[{name:"成都",lng:104.066,lat:30.573,districts:[{name:"锦江区"},{name:"青羊区"},{name:"武侯区"},{name:"成华区"}]},{name:"绵阳",lng:104.68,lat:31.467},{name:"乐山",lng:103.765,lat:29.552},{name:"宜宾",lng:104.642,lat:28.752},{name:"南充",lng:106.083,lat:30.795},{name:"攀枝花",lng:101.718,lat:26.582}]},{name:"贵州",cities:[{name:"贵阳",lng:106.63,lat:26.647},{name:"遵义",lng:106.927,lat:27.726},{name:"六盘水",lng:104.83,lat:26.592},{name:"安顺",lng:105.947,lat:26.253}]},{name:"云南",cities:[{name:"昆明",lng:102.833,lat:24.88},{name:"大理",lng:100.267,lat:25.606},{name:"丽江",lng:100.23,lat:26.856},{name:"曲靖",lng:103.796,lat:25.49},{name:"西双版纳",lng:100.797,lat:22.001}]},{name:"西藏",cities:[{name:"拉萨",lng:91.14,lat:29.646},{name:"日喀则",lng:88.88,lat:29.267}]},{name:"陕西",cities:[{name:"西安",lng:108.94,lat:34.341,districts:[{name:"碑林区"},{name:"雁塔区"},{name:"未央区"},{name:"长安区"}]},{name:"宝鸡",lng:107.238,lat:34.362},{name:"咸阳",lng:108.709,lat:34.33},{name:"延安",lng:109.49,lat:36.585},{name:"汉中",lng:107.023,lat:33.067}]},{name:"甘肃",cities:[{name:"兰州",lng:103.834,lat:36.061},{name:"天水",lng:105.725,lat:34.581},{name:"酒泉",lng:98.494,lat:39.732},{name:"敦煌",lng:94.662,lat:40.142}]},{name:"青海",cities:[{name:"西宁",lng:101.778,lat:36.617},{name:"格尔木",lng:94.928,lat:36.406}]},{name:"宁夏",cities:[{name:"银川",lng:106.231,lat:38.487},{name:"吴忠",lng:106.198,lat:37.997},{name:"中卫",lng:105.19,lat:37.5}]},{name:"新疆",cities:[{name:"乌鲁木齐",lng:87.617,lat:43.793},{name:"喀什",lng:75.99,lat:39.47},{name:"伊犁",lng:81.324,lat:43.917},{name:"克拉玛依",lng:84.889,lat:45.58},{name:"吐鲁番",lng:89.19,lat:42.951}]},{name:"香港",cities:[{name:"香港",lng:114.169,lat:22.32}]},{name:"澳门",cities:[{name:"澳门",lng:113.544,lat:22.198}]},{name:"台湾",cities:[{name:"台北",lng:121.565,lat:25.033},{name:"高雄",lng:120.312,lat:22.621},{name:"台中",lng:120.684,lat:24.138}]}];function ma(t,e){for(const i of e)if(t.endsWith(i)&&t.length>i.length)return t.slice(0,-i.length);return t}const ef=["壮族自治区","回族自治区","维吾尔自治区","特别行政区","自治区","省","市"],tf=["地区","自治州","盟","市","县"],nf=["自治县","自治旗","林区","特区","市","县","区","旗"],Sn=t=>ma(t,ef),b3=t=>ma(t,tf),O7=t=>ma(t,nf);function P7(t,e,i){const s=rt[t]?t:Object.keys(rt).find(g=>Sn(g)===Sn(t));if(!s)return null;const r=rt[s],c=r.cities[e]?e:Object.keys(r.cities).find(g=>b3(g)===b3(e));if(!c)return{province:s,city:"",district:"",lng:r.lng,lat:r.lat};const o=r.cities[c],d=o.districts[i]?i:Object.keys(o.districts).find(g=>O7(g)===O7(i));return{province:s,city:c,district:d||"城区",lng:d?o.districts[d][0]:o.lng,lat:d?o.districts[d][1]:o.lat}}function uf(){return Object.keys(rt)}function sf(t){const e=rt[t]?t:Object.keys(rt).find(s=>Sn(s)===Sn(t)),i=e?rt[e]:null;return i?Object.keys(i.cities).map(s=>({name:s,lng:i.cities[s].lng,lat:i.cities[s].lat})):[]}function rf(t,e){const i=rt[t]?t:Object.keys(rt).find(o=>Sn(o)===Sn(t)),s=i?rt[i]:null,r=s&&(s.cities[e]?e:Object.keys(s.cities).find(o=>b3(o)===b3(e))),c=r?s.cities[r]:null;return c?Object.keys(c.districts).map(o=>({name:o})):[]}const Y7={河北:[{name:"邢台",lng:114.505,lat:37.07},{name:"张家口",lng:114.886,lat:40.824},{name:"承德",lng:117.962,lat:40.951},{name:"沧州",lng:116.838,lat:38.304},{name:"衡水",lng:115.67,lat:37.738}],山西:[{name:"阳泉",lng:113.58,lat:37.856},{name:"长治",lng:113.116,lat:36.195},{name:"晋城",lng:112.851,lat:35.491},{name:"朔州",lng:112.433,lat:39.331},{name:"忻州",lng:112.734,lat:38.417}],内蒙古:[{name:"通辽",lng:122.244,lat:43.653},{name:"巴彦淖尔",lng:107.388,lat:40.743},{name:"乌兰察布",lng:113.132,lat:40.995},{name:"兴安盟",lng:122.07,lat:46.082}],辽宁:[{name:"抚顺",lng:123.957,lat:41.881},{name:"本溪",lng:123.766,lat:41.294},{name:"营口",lng:122.235,lat:40.667},{name:"辽阳",lng:123.237,lat:41.269},{name:"盘锦",lng:122.071,lat:41.124}],吉林:[{name:"辽源",lng:125.143,lat:42.887},{name:"通化",lng:125.94,lat:41.728},{name:"白山",lng:126.424,lat:41.94},{name:"松原",lng:124.825,lat:45.142}],黑龙江:[{name:"鸡西",lng:130.969,lat:45.295},{name:"鹤岗",lng:130.298,lat:47.349},{name:"双鸭山",lng:131.159,lat:46.646},{name:"伊春",lng:128.841,lat:47.727},{name:"黑河",lng:127.528,lat:50.245}],江苏:[{name:"连云港",lng:119.221,lat:34.6},{name:"淮安",lng:119.015,lat:33.61},{name:"镇江",lng:119.425,lat:32.187},{name:"泰州",lng:119.926,lat:32.456},{name:"宿迁",lng:118.275,lat:33.963}],浙江:[{name:"湖州",lng:120.086,lat:30.893},{name:"衢州",lng:118.874,lat:28.935},{name:"丽水",lng:119.922,lat:28.467}],安徽:[{name:"淮南",lng:117.018,lat:32.647},{name:"马鞍山",lng:118.506,lat:31.67},{name:"淮北",lng:116.798,lat:33.955},{name:"铜陵",lng:117.812,lat:30.945},{name:"阜阳",lng:115.814,lat:32.89}],福建:[{name:"三明",lng:117.638,lat:26.263},{name:"南平",lng:118.178,lat:26.642},{name:"龙岩",lng:117.017,lat:25.075},{name:"宁德",lng:119.548,lat:26.666}],江西:[{name:"萍乡",lng:113.854,lat:27.622},{name:"新余",lng:114.917,lat:27.817},{name:"鹰潭",lng:117.069,lat:28.26},{name:"吉安",lng:114.993,lat:27.114},{name:"宜春",lng:114.416,lat:27.815},{name:"抚州",lng:116.358,lat:27.984},{name:"上饶",lng:117.943,lat:28.455}],山东:[{name:"淄博",lng:118.055,lat:36.813},{name:"枣庄",lng:117.321,lat:34.81},{name:"东营",lng:118.675,lat:37.434},{name:"泰安",lng:117.087,lat:36.191},{name:"威海",lng:122.12,lat:37.513},{name:"日照",lng:119.527,lat:35.416},{name:"德州",lng:116.359,lat:37.435},{name:"聊城",lng:115.985,lat:36.456},{name:"滨州",lng:117.971,lat:37.381},{name:"菏泽",lng:115.48,lat:35.234}],河南:[{name:"平顶山",lng:113.192,lat:33.766},{name:"鹤壁",lng:114.297,lat:35.748},{name:"新乡",lng:113.927,lat:35.303},{name:"焦作",lng:113.242,lat:35.216},{name:"濮阳",lng:115.03,lat:35.762},{name:"许昌",lng:113.852,lat:34.037},{name:"漯河",lng:114.016,lat:33.58},{name:"三门峡",lng:111.2,lat:34.772},{name:"商丘",lng:115.656,lat:34.414},{name:"周口",lng:114.697,lat:33.626},{name:"驻马店",lng:114.022,lat:33.011}],湖北:[{name:"十堰",lng:110.798,lat:32.629},{name:"荆门",lng:112.199,lat:31.035},{name:"孝感",lng:113.916,lat:30.924},{name:"黄冈",lng:114.872,lat:30.453},{name:"咸宁",lng:114.322,lat:29.841},{name:"随州",lng:113.383,lat:31.69},{name:"恩施",lng:109.487,lat:30.272}],湖南:[{name:"湘潭",lng:112.944,lat:27.83},{name:"邵阳",lng:111.467,lat:27.239},{name:"常德",lng:111.698,lat:29.032},{name:"益阳",lng:112.355,lat:28.554},{name:"郴州",lng:113.014,lat:25.771},{name:"永州",lng:111.613,lat:26.42},{name:"怀化",lng:110.001,lat:27.57},{name:"娄底",lng:111.994,lat:27.697}],广东:[{name:"韶关",lng:113.597,lat:24.81},{name:"江门",lng:113.082,lat:22.579},{name:"湛江",lng:110.365,lat:21.271},{name:"茂名",lng:110.925,lat:21.663},{name:"肇庆",lng:112.473,lat:23.047},{name:"梅州",lng:116.122,lat:24.288},{name:"汕尾",lng:115.375,lat:22.786},{name:"河源",lng:114.7,lat:23.743},{name:"阳江",lng:111.982,lat:21.857},{name:"清远",lng:113.056,lat:23.681},{name:"潮州",lng:116.623,lat:23.657},{name:"揭阳",lng:116.373,lat:23.55},{name:"云浮",lng:112.045,lat:22.915}],广西:[{name:"梧州",lng:111.279,lat:23.476},{name:"防城港",lng:108.354,lat:21.687},{name:"钦州",lng:108.654,lat:21.98},{name:"贵港",lng:109.598,lat:23.111},{name:"玉林",lng:110.181,lat:22.654},{name:"百色",lng:106.618,lat:23.902},{name:"贺州",lng:111.566,lat:24.403},{name:"河池",lng:108.085,lat:24.692},{name:"来宾",lng:109.222,lat:23.751},{name:"崇左",lng:107.365,lat:22.376}],四川:[{name:"自贡",lng:104.778,lat:29.339},{name:"攀枝花",lng:101.718,lat:26.582},{name:"泸州",lng:105.442,lat:28.872},{name:"德阳",lng:104.398,lat:31.127},{name:"广元",lng:105.843,lat:32.435},{name:"遂宁",lng:105.571,lat:30.513},{name:"内江",lng:105.058,lat:29.58},{name:"眉山",lng:103.848,lat:30.075},{name:"达州",lng:107.468,lat:31.209},{name:"雅安",lng:103.042,lat:30.01},{name:"凉山",lng:102.267,lat:27.881}],贵州:[{name:"毕节",lng:105.285,lat:27.302},{name:"铜仁",lng:109.19,lat:27.718},{name:"黔南",lng:107.517,lat:26.258},{name:"黔东南",lng:107.977,lat:26.583},{name:"黔西南",lng:104.897,lat:25.088}],云南:[{name:"玉溪",lng:102.546,lat:24.351},{name:"保山",lng:99.162,lat:25.112},{name:"昭通",lng:103.717,lat:27.338},{name:"普洱",lng:100.966,lat:22.825},{name:"临沧",lng:100.089,lat:23.878},{name:"红河",lng:103.384,lat:23.366},{name:"楚雄",lng:101.546,lat:25.032}],陕西:[{name:"铜川",lng:108.945,lat:34.897},{name:"渭南",lng:109.51,lat:34.5},{name:"榆林",lng:109.735,lat:38.285},{name:"安康",lng:109.029,lat:32.684},{name:"商洛",lng:109.941,lat:33.87}],甘肃:[{name:"嘉峪关",lng:98.29,lat:39.773},{name:"金昌",lng:102.188,lat:38.514},{name:"白银",lng:104.139,lat:36.545},{name:"武威",lng:102.638,lat:37.928},{name:"张掖",lng:100.45,lat:38.925},{name:"平凉",lng:106.665,lat:35.542},{name:"庆阳",lng:107.643,lat:35.71}],新疆:[{name:"哈密",lng:93.515,lat:42.833},{name:"昌吉",lng:87.308,lat:44.011},{name:"巴音郭楞",lng:86.15,lat:41.768},{name:"阿克苏",lng:80.26,lat:41.171},{name:"和田",lng:79.925,lat:37.11}],西藏:[{name:"林芝",lng:94.362,lat:29.649},{name:"山南",lng:91.772,lat:29.237},{name:"那曲",lng:92.053,lat:31.476}]};Object.keys(Y7).forEach(t=>{const e=d8.find(i=>i.name===t);e&&Y7[t].forEach(i=>{e.cities.some(s=>s.name===i.name)||e.cities.push(i)})});const L7={杭州:[{name:"上城区",lng:120.17,lat:30.243},{name:"拱墅区",lng:120.142,lat:30.319},{name:"西湖区",lng:120.13,lat:30.259},{name:"滨江区",lng:120.212,lat:30.209},{name:"萧山区",lng:120.264,lat:30.183}],南京:[{name:"玄武区",lng:118.798,lat:32.048},{name:"秦淮区",lng:118.795,lat:32.011},{name:"鼓楼区",lng:118.77,lat:32.066},{name:"建邺区",lng:118.732,lat:32.004},{name:"江宁区",lng:118.84,lat:31.953}],武汉:[{name:"江岸区",lng:114.309,lat:30.6},{name:"江汉区",lng:114.271,lat:30.601},{name:"武昌区",lng:114.316,lat:30.554},{name:"洪山区",lng:114.344,lat:30.5},{name:"汉阳区",lng:114.218,lat:30.554}],长沙:[{name:"芙蓉区",lng:113.032,lat:28.185},{name:"天心区",lng:112.99,lat:28.113},{name:"岳麓区",lng:112.931,lat:28.235},{name:"开福区",lng:112.985,lat:28.256}],郑州:[{name:"中原区",lng:113.613,lat:34.748},{name:"二七区",lng:113.64,lat:34.724},{name:"金水区",lng:113.661,lat:34.8},{name:"管城回族区",lng:113.677,lat:34.754}],青岛:[{name:"市南区",lng:120.412,lat:36.075},{name:"市北区",lng:120.375,lat:36.087},{name:"崂山区",lng:120.469,lat:36.107},{name:"李沧区",lng:120.433,lat:36.145}],沈阳:[{name:"和平区",lng:123.395,lat:41.79},{name:"沈河区",lng:123.459,lat:41.796},{name:"大东区",lng:123.47,lat:41.805},{name:"皇姑区",lng:123.442,lat:41.82}],大连:[{name:"中山区",lng:121.645,lat:38.918},{name:"西岗区",lng:121.612,lat:38.915},{name:"沙河口区",lng:121.594,lat:38.905},{name:"甘井子区",lng:121.525,lat:38.953}],厦门:[{name:"思明区",lng:118.082,lat:24.445},{name:"湖里区",lng:118.147,lat:24.513},{name:"集美区",lng:118.097,lat:24.576},{name:"海沧区",lng:118.033,lat:24.485}],福州:[{name:"鼓楼区",lng:119.304,lat:26.082},{name:"台江区",lng:119.314,lat:26.058},{name:"仓山区",lng:119.274,lat:26.047},{name:"晋安区",lng:119.328,lat:26.082}],昆明:[{name:"五华区",lng:102.707,lat:25.044},{name:"盘龙区",lng:102.752,lat:25.116},{name:"官渡区",lng:102.749,lat:24.95},{name:"西山区",lng:102.665,lat:25.038}],南宁:[{name:"兴宁区",lng:108.369,lat:22.854},{name:"青秀区",lng:108.494,lat:22.785},{name:"江南区",lng:108.273,lat:22.781},{name:"西乡塘区",lng:108.313,lat:22.833}],哈尔滨:[{name:"道里区",lng:126.617,lat:45.756},{name:"南岗区",lng:126.669,lat:45.76},{name:"道外区",lng:126.649,lat:45.791},{name:"香坊区",lng:126.663,lat:45.708}],长春:[{name:"南关区",lng:125.35,lat:43.864},{name:"宽城区",lng:125.326,lat:43.943},{name:"朝阳区",lng:125.288,lat:43.833},{name:"二道区",lng:125.374,lat:43.865}],济南:[{name:"历下区",lng:117.077,lat:36.666},{name:"市中区",lng:116.997,lat:36.651},{name:"槐荫区",lng:116.901,lat:36.651},{name:"天桥区",lng:116.987,lat:36.678}],合肥:[{name:"瑶海区",lng:117.309,lat:31.858},{name:"庐阳区",lng:117.265,lat:31.879},{name:"蜀山区",lng:117.261,lat:31.851},{name:"包河区",lng:117.31,lat:31.793}],南昌:[{name:"东湖区",lng:115.899,lat:28.685},{name:"西湖区",lng:115.877,lat:28.657},{name:"青云谱区",lng:115.926,lat:28.621},{name:"青山湖区",lng:115.962,lat:28.682}],太原:[{name:"小店区",lng:112.564,lat:37.736},{name:"迎泽区",lng:112.563,lat:37.863},{name:"杏花岭区",lng:112.571,lat:37.887},{name:"尖草坪区",lng:112.487,lat:37.94}],石家庄:[{name:"长安区",lng:114.539,lat:38.047},{name:"桥西区",lng:114.461,lat:38.004},{name:"新华区",lng:114.463,lat:38.051},{name:"裕华区",lng:114.531,lat:38.006}],兰州:[{name:"城关区",lng:103.825,lat:36.057},{name:"七里河区",lng:103.786,lat:36.066},{name:"西固区",lng:103.628,lat:36.088},{name:"安宁区",lng:103.719,lat:36.104}],贵阳:[{name:"南明区",lng:106.714,lat:26.568},{name:"云岩区",lng:106.725,lat:26.604},{name:"花溪区",lng:106.67,lat:26.41},{name:"乌当区",lng:106.751,lat:26.63}],乌鲁木齐:[{name:"天山区",lng:87.631,lat:43.794},{name:"沙依巴克区",lng:87.598,lat:43.801},{name:"新市区",lng:87.574,lat:43.843},{name:"水磨沟区",lng:87.642,lat:43.832}],海口:[{name:"秀英区",lng:110.293,lat:20.007},{name:"龙华区",lng:110.328,lat:20.031},{name:"琼山区",lng:110.354,lat:20.003},{name:"美兰区",lng:110.366,lat:20.029}],三亚:[{name:"吉阳区",lng:109.578,lat:18.281},{name:"天涯区",lng:109.452,lat:18.3},{name:"崖州区",lng:109.172,lat:18.357},{name:"海棠区",lng:109.753,lat:18.4}],银川:[{name:"兴庆区",lng:106.289,lat:38.474},{name:"西夏区",lng:106.162,lat:38.492},{name:"金凤区",lng:106.243,lat:38.473}],西宁:[{name:"城东区",lng:101.803,lat:36.599},{name:"城中区",lng:101.784,lat:36.621},{name:"城西区",lng:101.766,lat:36.628},{name:"城北区",lng:101.766,lat:36.65}]};Object.keys(L7).forEach(t=>{d8.forEach(e=>{const i=e.cities.find(s=>s.name===t);if(i){const s=i.districts||[];i.districts=[...s,...L7[t].map(r=>({name:r.name,lng:r.lng,lat:r.lat}))]}})});function Vs({value:t,options:e,onChange:i,placeholder:s="择…",disabled:r,id:c,allowCustom:o}){const[d,g]=v.useState(!1),[f,E]=v.useState(""),F=v.useRef(null),x=v.useRef(null);v.useEffect(()=>{if(!d)return;const B=_=>{F.current&&!F.current.contains(_.target)&&g(!1)};return document.addEventListener("mousedown",B),()=>document.removeEventListener("mousedown",B)},[d]),v.useEffect(()=>{d&&setTimeout(()=>{var B;return(B=x.current)==null?void 0:B.focus()},30)},[d]);const A=v.useMemo(()=>{const B=f.trim();return B?e.filter(_=>_.label.includes(B)):e},[e,f]),y=e.find(B=>B.value===t);return a.jsxs("div",{className:"song-select song-search"+(d?" open":""),ref:F,children:[a.jsxs("button",{type:"button",className:"trigger",id:c,disabled:r,onClick:()=>g(B=>!B),"aria-haspopup":"listbox","aria-expanded":d,children:[a.jsx("span",{children:y?y.label:s}),a.jsx("svg",{className:"chev",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:a.jsx("path",{d:"m6 9 6 6 6-6"})})]}),d&&a.jsxs("div",{className:"panel",role:"listbox",children:[a.jsx("div",{className:"ss-search",children:a.jsx("input",{ref:x,className:"ss-input",placeholder:"输入以搜…",value:f,onChange:B=>E(B.target.value)})}),a.jsxs("div",{className:"ss-list",children:[A.map(B=>a.jsx("button",{type:"button",className:B.value===t?"sel":"",onClick:()=>{i(B.value),g(!1),E("")},children:B.label},B.value)),A.length===0&&(o&&f.trim()?a.jsxs("button",{type:"button",className:"ss-custom",onClick:()=>{i(f.trim()),g(!1),E("")},children:["取「",f.trim(),"」为区县(以城坐标计)"]}):a.jsx("div",{className:"ss-empty",children:"无契合之项"}))]})]})]})}const af=[[1986,5,4,1986,9,14],[1987,4,12,1987,9,13],[1988,4,10,1988,9,11],[1989,4,16,1989,9,17],[1990,4,15,1990,9,16],[1991,4,14,1991,9,15]];function lf(t,e,i){for(const[s,r,c,o,d,g]of af){const f=new Date(s,r-1,c,2,0,0).getTime(),E=new Date(o,d-1,g,2,0,0).getTime(),F=new Date(t,e-1,i,12,0,0).getTime();if(F>=f&&F<=E)return!0}return!1}function of(t,e,i){return Math.floor((new Date(t,e-1,i).getTime()-new Date(t,0,1).getTime())/864e5)+1}function fa(t,e,i,s,r,c,o=!0){let d=s+r/60;o&&lf(t,e,i)&&(d-=1);const g=d+(c-120)*4/60,f=of(t,e,i),E=2*Math.PI*(f-81)/364,F=9.87*Math.sin(2*E)-7.53*Math.cos(E)-1.5*Math.sin(E),x=g+F/60;let A=x,y=0;for(;A>=24;)A-=24,y++;for(;A<0;)A+=24,y--;const B=Math.floor((A+1)%24/2);return{beijingHours:d,localMeanHours:g,trueSolarHours:x,eotMinutes:F,hourIndex:B,dateOffset:y}}function cf(t,e,i,s){const r=new Date(t,e-1,i);return r.setDate(r.getDate()+s),[r.getFullYear(),r.getMonth()+1,r.getDate()]}const R7=["子时","丑时","寅时","卯时","辰时","巳时","午时","未时","申时","酉时","戌时","亥时"];function nu({value:t,onChange:e,previewHourIndex:i}){const[s,r]=v.useState((t==null?void 0:t.province)??""),[c,o]=v.useState((t==null?void 0:t.city)??""),[d,g]=v.useState((t==null?void 0:t.district)??""),[f,E]=v.useState(!1),[F,x]=v.useState(""),[A,y]=v.useState("");v.useEffect(()=>{t&&(t.province&&t.district!=="手动定位"?(r(t.province),o(t.city||""),g(t.district||"")):t.lng!==void 0&&t.lat!==void 0&&(E(!0),x(String(t.lng)),y(String(t.lat)),t.province&&r(t.province)))},[t==null?void 0:t.province,t==null?void 0:t.city,t==null?void 0:t.district,t==null?void 0:t.lng,t==null?void 0:t.lat]);const B=uf(),_=B.includes(s)?s:B.find(q=>q.replace(/壮族自治区|回族自治区|维吾尔自治区|特别行政区|自治区|省|市$/,"")===s.replace(/壮族自治区|回族自治区|维吾尔自治区|特别行政区|自治区|省|市$/,""))||s,S=sf(_),M=rf(_,c),Y=q=>{r(q),o(""),g(""),e(null)},z=q=>{o(q),g(""),e(null)},T=q=>{g(q);const c0=P7(s,c,q||"城区");e(c0)},W=parseFloat(F),X=parseFloat(A),Z=f&&!isNaN(W)&&!isNaN(X)&&Math.abs(W)<=180&&Math.abs(X)<=90,$=Z?{province:s,city:c,district:d||"手动定位",lng:W,lat:X}:null,e0=$??P7(s,c,d||"城区");return a.jsxs("div",{children:[a.jsxs("div",{className:"field-row",children:[a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"loc-province",children:"省份"}),a.jsx(Vs,{id:"loc-province",value:_,placeholder:"择省…",options:B.map(q=>({value:q,label:q})),onChange:Y})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"loc-city",children:"城市"}),a.jsx(Vs,{id:"loc-city",value:c,placeholder:"择市…",options:S.map(q=>({value:q.name,label:q.name})),onChange:z,disabled:!s})]})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"loc-district",children:"县/区(选至区县;乡镇村请用下方手动定位)"}),a.jsx(Vs,{id:"loc-district",value:d,placeholder:"择区/县…",options:M.map(q=>({value:q.name,label:q.name})),onChange:T,disabled:!c,allowCustom:!0})]}),a.jsxs("div",{className:"field",children:[a.jsxs("label",{style:{display:"flex",alignItems:"center",gap:".5rem",cursor:"pointer"},children:[a.jsx("input",{type:"checkbox",checked:f,onChange:q=>{E(q.target.checked),e($)},style:{width:"auto"}}),"手动定位(乡镇/村等未收录地点:从地图 App 获取经纬度填入)"]}),f&&a.jsxs("div",{className:"field-row",style:{marginTop:".4rem"},children:[a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"loc-lng",children:"东经(如 121.796)"}),a.jsx("input",{className:"input-line",id:"loc-lng",type:"number",step:"0.0001",placeholder:"121.796",value:F,onChange:q=>{x(q.target.value),e(Z?$:null)}})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"loc-lat",children:"北纬(如 41.599)"}),a.jsx("input",{className:"input-line",id:"loc-lat",type:"number",step:"0.0001",placeholder:"41.599",value:A,onChange:q=>{y(q.target.value),e(Z?$:null)}})]})]})]}),e0&&!f&&d&&!M.some(q=>q.name===d)&&a.jsx("p",{className:"hint",style:{color:"var(--cinnabar)"},children:"该区县未收录坐标,暂以城市中心计;如需乡镇/村级精度,请勾选手动定位。"}),Z&&a.jsx("p",{className:"hint",style:{color:"var(--celadon-deep)"},children:"已用手动坐标(优先于行政区划)"}),e0&&a.jsxs("p",{className:"hint",children:["经纬 ",e0.lng.toFixed(2),"°E · ",e0.lat.toFixed(2),"°N",i!==void 0&&(()=>{const q=i*2%24,c0=fa(new Date().getFullYear(),new Date().getMonth()+1,new Date().getDate(),q,0,e0.lng,!1),b=Math.floor(c0.trueSolarHours),u0=Math.round((c0.trueSolarHours-b)*60),d0=Math.floor((c0.trueSolarHours+1)%24/2);return` · ${R7[i]}校正为 ${String(b).padStart(2,"0")}:${String(u0).padStart(2,"0")}(${R7[d0]})`})()]})]})}function g1({value:t,options:e,onChange:i,placeholder:s="择…",disabled:r,id:c}){const[o,d]=v.useState(!1),g=v.useRef(null);v.useEffect(()=>{if(!o)return;const E=F=>{g.current&&!g.current.contains(F.target)&&d(!1)};return document.addEventListener("mousedown",E),()=>document.removeEventListener("mousedown",E)},[o]);const f=e.find(E=>E.value===t);return a.jsxs("div",{className:"song-select"+(o?" open":""),ref:g,children:[a.jsxs("button",{type:"button",className:"trigger",id:c,disabled:r,onClick:()=>d(E=>!E),"aria-haspopup":"listbox","aria-expanded":o,children:[a.jsx("span",{children:f?f.label:s}),a.jsx("svg",{className:"chev",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:a.jsx("path",{d:"m6 9 6 6 6-6"})})]}),o&&a.jsx("div",{className:"panel",role:"listbox",children:e.map(E=>a.jsx("button",{type:"button",className:E.value===t?"sel":"",onClick:()=>{i(E.value),d(!1)},children:E.label},E.value))})]})}const hf=["日","一","二","三","四","五","六"],df=["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"];function G7(t){const e=/^(\d{4})-(\d{2})-(\d{2})$/.exec(t);return e?[Number(e[1]),Number(e[2]),Number(e[3])]:[1990,1,1]}function H7(t,e){return new Date(t,e,0).getDate()}function gf({value:t,onChange:e,id:i}){const[s,r]=v.useState(!1),[c,o]=v.useState(t),[d,g]=v.useState(!1),f=v.useRef(null),[E,F,x]=G7(t),[A,y]=v.useState(E),[B,_]=v.useState(F);v.useEffect(()=>{o(t);const[Z,$]=G7(t);y(Z),_($)},[t]),v.useEffect(()=>{if(!s)return;const Z=$=>{f.current&&!f.current.contains($.target)&&r(!1)};return document.addEventListener("mousedown",Z),()=>document.removeEventListener("mousedown",Z)},[s]);const S=Z=>{e(Z),o(Z),g(!1)},M=Z=>{o(Z);const $=/^(\d{4})-(\d{1,2})-(\d{1,2})$/.exec(Z);if($){const e0=Number($[1]),q=Number($[2]),c0=Number($[3]);if(q>=1&&q<=12&&c0>=1&&c0<=H7(e0,q)){S(e0+"-"+String(q).padStart(2,"0")+"-"+String(c0).padStart(2,"0"));return}}g(!0)},Y=new Date(A,B-1,1).getDay(),z=H7(A,B),T=[...Array.from({length:Y},()=>null),...Array.from({length:z},(Z,$)=>$+1)];for(;T.length%7!==0;)T.push(null);const W=Z=>{let $=A,e0=B+Z;e0<1&&(e0=12,$--),e0>12&&(e0=1,$++),y($),_(e0)},X=Z=>A===E&&B===F&&Z===x;return a.jsxs("div",{className:"cal-input",ref:f,children:[a.jsxs("div",{className:"cal-field",children:[a.jsx("input",{className:"input-line"+(d?" cal-error":""),id:i,placeholder:"1990-06-15",value:c,onChange:Z=>M(Z.target.value)}),a.jsx("button",{type:"button",className:"cal-toggle",onClick:()=>r(Z=>!Z),"aria-label":"开月历",children:a.jsxs("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[a.jsx("rect",{width:"18",height:"18",x:"3",y:"4",rx:"2"}),a.jsx("path",{d:"M16 2v4M8 2v4M3 10h18"})]})})]}),d&&a.jsx("p",{className:"hint",style:{color:"var(--cinnabar)"},children:"历日未合 · 请书如 1990-06-15"}),s&&a.jsxs("div",{className:"cal-panel",children:[a.jsxs("div",{className:"cal-head",children:[a.jsx("button",{type:"button",className:"cal-nav",onClick:()=>W(-1),"aria-label":"上月",children:a.jsx("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:a.jsx("path",{d:"m15 18-6-6 6-6"})})}),a.jsxs("span",{className:"cal-title",children:[A,"年 ",df[B-1]]}),a.jsx("button",{type:"button",className:"cal-nav",onClick:()=>W(1),"aria-label":"下月",children:a.jsx("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:a.jsx("path",{d:"m9 18 6-6-6-6"})})})]}),a.jsx("div",{className:"cal-week",children:hf.map(Z=>a.jsx("span",{children:Z},Z))}),a.jsx("div",{className:"cal-grid",children:T.map((Z,$)=>Z===null?a.jsx("span",{},$):a.jsx("button",{type:"button",className:X(Z)?"sel":"",onClick:()=>{S(A+"-"+String(B).padStart(2,"0")+"-"+String(Z).padStart(2,"0")),r(!1)},children:Z},$))})]})]})}const mf=Array.from({length:201},(t,e)=>1900+e),Z7=t=>String(t).padStart(2,"0");function iu({value:t,onChange:e,id:i}){const[s,r]=v.useState("solar"),[c,o,d]=t?t.split("-").map(Number):[1990,1,1],[g,f]=v.useState(1990),[E,F]=v.useState(1),[x,A]=v.useState(1),[y,B]=v.useState(!1);v.useEffect(()=>{try{const z=k0.fromYmd(c,o,d).getLunar(),T=z.getMonth();f(z.getYear()),F(Math.abs(T)),A(z.getDay()),B(T<0)}catch{}},[c,o,d]);const _=(z,T,W,X)=>{try{const Z=V0.fromYmd(z,X?-T:T,W).getSolar();return Z.getYear()+"-"+Z7(Z.getMonth())+"-"+Z7(Z.getDay())}catch{return t}};v.useEffect(()=>{if(s==="lunar"){const z=_(g,E,x,y);z!==t&&e(z)}},[s,g,E,x,y]);const S=(()=>{for(let z=1;z<=12;z++)try{return V0.fromYmd(g,-z,1),z}catch{}return 0})(),M=S>0&&E===S,Y=(()=>{for(let z=30;z>=29;z--)try{return V0.fromYmd(g,y?-E:E,z),z}catch{}return 30})();return a.jsxs("div",{children:[a.jsx("div",{style:{display:"flex",gap:".5rem",marginBottom:".5rem",maxWidth:130},children:a.jsx(g1,{value:s,options:[{value:"solar",label:"公历"},{value:"lunar",label:"农历"}],onChange:z=>r(z)})}),s==="solar"?a.jsx(gf,{id:i,value:t,onChange:e}):a.jsxs("div",{className:"field-row",style:{gridTemplateColumns:"1fr 1fr 1fr"},children:[a.jsx("div",{className:"field",children:a.jsx(g1,{value:String(g),options:mf.map(z=>({value:String(z),label:String(z)+"年"})),onChange:z=>f(Number(z))})}),a.jsx("div",{className:"field",children:a.jsx(g1,{value:String(E),options:Array.from({length:12},(z,T)=>({value:String(T+1),label:T+1+"月"})),onChange:z=>{F(Number(z)),B(!1)}})}),a.jsx("div",{className:"field",children:a.jsx(g1,{value:String(x),options:Array.from({length:Math.max(Y,x)},(z,T)=>({value:String(T+1),label:T+1+"日"})),onChange:z=>A(Number(z))})})]}),s==="lunar"&&a.jsxs("p",{className:"hint",children:[g,"年",y?"闰":"",E,"月",x,"日 即公历 ",a.jsx("strong",{children:_(g,E,x,y)}),M&&a.jsx("button",{type:"button",style:{marginLeft:".6rem",color:"var(--cinnabar)",textDecoration:"underline"},onClick:()=>B(z=>!z),children:y?"取平月":"取闰月"})]})]})}function Ea({onPick:t,onPicked:e}){const i=k1(),[s,r]=v.useState("");if(!i)return null;const c=[{value:"primary",label:"主档案 · "+(i.profile.birthDate||"未录")},...i.samples.map(d=>({value:d.id,label:d.name+" · "+(d.profile.birthDate||"未录")}))];if(c.length<=1)return null;const o=d=>{if(d==="primary")t(i.profile,{id:"main",name:"主档案"});else{const g=i.samples.find(f=>f.id===d);g&&t(g.profile,{id:g.id,name:g.name})}r(""),e==null||e()};return a.jsxs("div",{className:"field",style:{marginTop:"var(--sp-2)"},children:[a.jsx("label",{children:"取自档案"}),a.jsx(g1,{value:s,placeholder:"择档案以填…",options:c,onChange:o})]})}const ff=["子时 23–01","丑时 01–03","寅时 03–05","卯时 05–07","辰时 07–09","巳时 09–11","午时 11–13","未时 13–15","申时 15–17","酉时 17–19","戌时 19–21","亥时 21–23"];function M2(t){const[e]=t.split(":").map(Number);return Math.floor((e+1)%24/2)}function g8(t){return ff[t]||"未知"}function Ef(t){return g8(M2(t))}function Fa({value:t,onChange:e,id:i,label:s="出生时刻(精确)"}){return a.jsx("div",{children:a.jsxs("div",{style:{display:"flex",gap:".5rem",alignItems:"stretch"},children:[a.jsx("input",{className:"input-line",type:"time",id:i,value:t,onChange:r=>e(r.target.value),style:{flex:1}}),a.jsx("span",{className:"shichen-chip",children:Ef(t)})]})})}const Ff=[[1986,5,4,1986,9,14],[1987,4,12,1987,9,13],[1988,4,10,1988,9,11],[1989,4,16,1989,9,17],[1990,4,15,1990,9,16],[1991,4,14,1991,9,15]];function m8(t){const e=/^(\d{4})-(\d{1,2})-(\d{1,2})$/.exec(t||"");if(!e)return!1;const i=Number(e[1]),s=Number(e[2]),r=Number(e[3]);if(i<1986||i>1991)return!1;const c=new Date(i,s-1,r,12,0,0).getTime();for(const[o,d,g,f,E,F]of Ff){const x=new Date(o,d-1,g,2,0,0).getTime(),A=new Date(f,E-1,F,2,0,0).getTime();if(c>=x&&c<=A)return!0}return!1}const m3={木:{img:"参天之木",nature:"向上伸展、生生不息",realm:"东方 · 青绿 · 肝胆"},火:{img:"燎原之火",nature:"热烈明亮、光明磊落",realm:"南方 · 赤红 · 心肠"},土:{img:"厚重之土",nature:"包容承载、踏实守信",realm:"中央 · 黄褐 · 脾胃"},金:{img:"百炼之金",nature:"坚刚果断、肃杀分明",realm:"西方 · 素白 · 肺腑"},水:{img:"奔流之水",nature:"灵动善变、智谋深远",realm:"北方 · 玄黑 · 肾水"}},rn=["木","火","土","金","水"],pf={寅:{season:"孟春",note:"木气初生,万物发陈"},卯:{season:"仲春",note:"木气正盛,花木繁茂"},辰:{season:"季春",note:"土气渐旺,湿土培木"},巳:{season:"孟夏",note:"火气初升,炎气渐盛"},午:{season:"仲夏",note:"火气当令,烈日当空"},未:{season:"季夏",note:"土气主事,火土相生"},申:{season:"孟秋",note:"金气初肃,万物收敛"},酉:{season:"仲秋",note:"金气正锐,白露为霜"},戌:{season:"季秋",note:"土气回旺,金火入库"},亥:{season:"孟冬",note:"水气初生,寒流暗涌"},子:{season:"仲冬",note:"水气当令,寒凝之季"},丑:{season:"季冬",note:"土气主事,腊月土冻"}},Cf={身强:"根基厚实、气机充盈",身弱:"气机偏弱、喜生扶帮身",中和:"五行流转、不偏不倚"},xf={身强:"宜泄宜克,向外施展方能舒展",身弱:"宜生宜扶,蓄力而后发",中和:"顺势而为,动静皆宜"},yf=[{keys:["伤官","食神"],trait:"才情外放",descs:["食伤泄秀之人,点子多、手脚快,靠本事吃饭,最受不了按部就班的死规矩——适合做需要创造力的行当,把才华落到作品上。","食伤旺的人表达欲强,学东西快,但也容易不耐烦、眼高手低,须防话比事多,把聪明用在刀刃上。"]},{keys:["正印","偏印"],trait:"内秀深思",descs:["印星贴身之人,心思细、记性好,喜欢想明白了再动,重学识涵养,适合深耕专业或与文化、文书相关之事。","印旺的人安全感来自内在储备,遇事习惯先查资料、问老规矩,节奏偏稳,但也要防想太多而行动迟缓。"]},{keys:["正官","七杀"],trait:"自律担当",descs:["官杀在命之人,自我要求高、守规矩、有担当,遇事敢扛,适合有章法有目标的赛道,把约束变成铠甲。","官杀旺的人骨子里要强,见不得自己掉队,压力越大越能顶——但弦绷太紧易生内耗,须学会放自己一马。"]},{keys:["正财","偏财"],trait:"务实经营",descs:["财星入命之人,对现实账目门儿清,务实不空谈,擅长把资源盘活,做生意、管项目都有天然的手感。","财旺的人重实际、讲回报,得失心也重些,钱要赚得稳,更要赚得安心,勿为一时之利透支长远。"]},{keys:["比肩","劫财"],trait:"自立要强",descs:["比劫同气之人,凡事靠自己,不轻易开口求人,性子直、讲义气,适合独当一面的角色,但也易因硬扛而辛苦。","比肩旺的人主见强、不服输,和人共事容易起摩擦,若能学会借力与分工,路会宽很多。"]}],er={木:"东方、青绿色系、晨间运动与肝胆养护",火:"南方、赤红色系、日间活动与心气舒展",土:"居所稳固、黄褐色系、脾胃调理与规律作息",金:"西方、素白色系、呼吸吐纳与肺腑清净",水:"北方、玄黑色系、静坐冥思与肾水滋养"};function Df(t){const e=/[金木水火土]$/.exec(t||"");return e?e[0]:null}function Af(t){return["正印","偏印"].includes(t)?"印":["比肩","劫财"].includes(t)?"比劫":["食神","伤官"].includes(t)?"食伤":["正财","偏财"].includes(t)?"财":["正官","七杀"].includes(t)?"官杀":t}function Bf(t){const e=t.dayGanWx,i=m3[e],s=pf[t.monthGZ[1]]||{season:"",note:""},r=`日主${t.dayGan}${e},如${i.img}——${i.nature};生于${s.season}(${t.monthGZ[1]}月),${s.note},${t.strength==="身强"?"得势而旺":t.strength==="身弱"?"气机有待生扶":"气机中和"}。`,c=`${Cf[t.strength]},${xf[t.strength]}。以${t.yongshen.wx}(${t.yongshen.shishen})为用神,喜${t.yongshen.xi.join("、")},忌${t.yongshen.ji.join("、")};${t.yongshen.tiaohou}。`,o={};t.shishen.forEach(T=>{o[T.name]=(o[T.name]||0)+1}),t.canggan.forEach(T=>T.gans.forEach(W=>{o[W.shishen]=(o[W.shishen]||0)+(W.qi==="本气"?2:1)}));const d=yf.map(T=>({pool:T,weight:T.keys.reduce((W,X)=>W+(o[X]||0),0)})).filter(T=>T.weight>0).sort((T,W)=>W.weight-T.weight).slice(0,3),g=rn.indexOf(e),f=d.map((T,W)=>`${T.pool.trait}——${T.pool.descs[(g+W)%T.pool.descs.length]}`),E=[...rn].sort((T,W)=>(t.wxWeighted[W]||0)-(t.wxWeighted[T]||0)),F=E[0],x=E[E.length-1],A=t.wxWeighted[F]||0,y=t.wxWeighted[x]||0;let B="";if(A-y>=3){const T=rn[(rn.indexOf(F)+2)%5],W=rn[(rn.indexOf(F)+1)%5];B=`盘中${F}气独旺(${A}),旺则须疏——宜以${T}制衡、或以${W}泄秀,方得流通;${x}气偏弱(${y}),可于${er[x]}中缓缓补益,修身养性、仅供参考。`}else A-y>=1?B=`盘中${F}气稍盛、${x}气稍弱,五行大体流通,宜顺其势:近${er[x]},远${er[F]}之过亢,动静有度。`:B="五行分布均衡,气机流通顺畅,无大偏颇——顺势而为即是上策。";const _=new Date().getFullYear(),S=t.dayun.find(T=>_>=T.startYear&&_<=T.endYear);let M="";if(S){const T=Af(S.ganShishen),W=t.yongshen.xi.includes(T);t.yongshen.ji.includes(T)?M=`今行${S.gz}${S.ganShishen}运(${S.startYear}-${S.endYear}),为忌神之运——宜守成、忌冒进,防破耗与无谓竞争,把精力留给真正重要之事。`:W?M=`今行${S.gz}${S.ganShishen}运(${S.startYear}-${S.endYear}),喜神当令——正是进取之时,可放心把计划往前推,善用贵人与资源。`:M=`今行${S.gz}${S.ganShishen}运(${S.startYear}-${S.endYear}),吉凶相参——稳中求进,进可攻退可守,最忌临事犹豫、两头落空。`}const Y=Df(t.nayin),z=Y&&m3[Y]?`年命纳音${t.nayin},其性属${Y},如${m3[Y].img}——${m3[Y].nature},暗合一生之底色。`:`年命纳音${t.nayin},如琴有调,暗合一生之音律。`;return{headline:r,overview:c,character:f,wuxingNote:B,dayunNote:M,nayinNote:z}}function jf(t){var c;const e=["寅","卯","辰","巳","午","未","申","酉","戌","亥","子","丑"],i=Object.entries(t.zwStars).filter(([,o])=>o===t.ming).map(([o])=>o),s=i.length?`命宫安于${e[t.ming]},主星${i.join("、")}坐守——${i.map(o=>_f(o)).join(";")}为一生行运之枢。`:`命宫安于${e[t.ming]}(主星未临,借对宫之星论之)——为一生行运之枢。`,r=`${t.nominalAge??""}虚岁流年命宫落${t.liunianPalaceName||e[t.liunianIdx??0]},流年主星${((c=t.liunianStars)==null?void 0:c.join("、"))||"未临"}——流年之机,观此宫动静。`;return{mingNote:s,liunianNote:r}}const vf={紫微:"帝星入命,气度格局不凡,好揽事、有担当",天机:"机变聪明,心思活络,善谋不善断",太阳:"光明磊落,热心助人,贵在坦荡",武曲:"刚毅务实,财星得用,宜事不宜闲",天同:"福星随和,与世无争,贵人缘佳",廉贞:"次桃花主事,才情与锋芒并具",天府:"库星坐命,稳重守成,善于经营",太阴:"月华照命,细腻内敛,重情重家",贪狼:"欲望与才艺之星,圆融善交际",巨门:"口舌与思辨之星,能言善断亦招是非",天相:"辅弼之星,识大体、善协调",天梁:"荫星照命,逢凶化吉,长辈缘深",七杀:"将星入命,杀伐果断,先苦后成",破军:"破旧立新之星,变动中见机遇"};function _f(t){return vf[t]||`${t}主事`}const Sf=t=>t.map(e=>e.year+" "+e.text).join(`
|
|
86
|
+
`),wf=t=>t.split(`
|
|
87
|
+
`).map(e=>e.trim()).filter(Boolean).map(e=>{const i=/^(\d{4})\s*(.*)$/.exec(e);return i?{year:Number(i[1]),text:(i[2]||"重要事件").slice(0,40)}:null}).filter(e=>!!e&&e.year>=1900&&e.year<=2100).sort((e,i)=>e.year-i.year);function f8({value:t,onChange:e}){const[i,s]=v.useState(!1),[r,c]=v.useState(Sf(t)),o=()=>e(wf(r));return a.jsxs("div",{className:"life-events",style:{marginTop:".4rem"},children:[a.jsxs("button",{type:"button",className:"btn-seal btn-ghost",style:{fontSize:".82rem",padding:".4rem 1rem"},onClick:()=>s(d=>!d),children:[i?"收 起":"📌 补充人生经历(解读校准)",t.length>0&&a.jsxs("span",{className:"tag-cool",style:{marginLeft:".4rem"},children:["已录 ",t.length," 条"]})]}),i&&a.jsxs("div",{style:{marginTop:".6rem"},children:[a.jsx("p",{className:"tiny muted",style:{marginBottom:".3rem"},children:"每行一条:「年份 关键事件」——AI 解读将在对应流年处呼应这些经历,且不与它们矛盾(3-10 条为宜)"}),a.jsx("textarea",{className:"input-line",rows:5,value:r,onChange:d=>c(d.target.value),placeholder:`2004 家庭变故
|
|
88
|
+
2016 换城市
|
|
89
|
+
2020 换工作
|
|
90
|
+
2022 结婚
|
|
91
|
+
2024 健康问题`}),a.jsxs("div",{className:"btn-row",style:{marginTop:".4rem"},children:[a.jsx("button",{className:"btn-seal",style:{fontSize:".82rem",padding:".35rem 1rem"},onClick:o,children:"保 存 校 准"}),t.length>0&&a.jsxs("span",{className:"tiny muted",style:{alignSelf:"center"},children:["共 ",t.length," 条,随排盘一同提交"]})]})]})]})}function Nf({onDivine:t}){const e=k1(),i=e==null?void 0:e.profile,[s,r]=v.useState((i==null?void 0:i.birthDate)||"1990-06-15"),[c,o]=v.useState((i==null?void 0:i.birthTime)||"12:00"),[d,g]=v.useState((i==null?void 0:i.birthTimeUnknown)||!1),[f,E]=v.useState((i==null?void 0:i.gender)||"男"),[F,x]=v.useState((i==null?void 0:i.location)||null),[A,y]=v.useState(""),[B,_]=v.useState(null),[S,M]=v.useState((i==null?void 0:i.lifeEvents)||[]),[Y,z]=v.useState(!1),[T,W]=v.useState(""),[X,Z]=v.useState(!1),[$,e0]=v.useState(null),[q,c0]=v.useState(""),b=m8(s),u0=i&&s===i.birthDate&&c===i.birthTime&&f===i.gender&&JSON.stringify(F)===JSON.stringify(i.location)&&!d,[d0,E0]=v.useState(""),i0=()=>{const[G,N,P]=s.split("-").map(Number);if(!G||!N||!P){E0("⚠ 请先填写有效的出生日期");return}if(new Date(G,N-1,P).getMonth()!==N-1){E0("⚠ 出生日期不合法,请检查");return}E0("");const g0=d?-1:M2(c);t(d?{y:G,m:N,d:P,hourIndex:-1,gender:f,location:F??void 0}:{y:G,m:N,d:P,hourIndex:g0,time:c,gender:f,location:F??void 0},{birthDate:s,birthTime:d?"":c,birthHourIndex:g0,birthTimeUnknown:d||void 0,gender:f,location:F,lifeEvents:S.length?S:void 0},A.trim(),(B==null?void 0:B.id)||"main")},K=async()=>{const[G,N,P]=s.split("-").map(Number),g0=T.split(`
|
|
92
|
+
`).map(m0=>m0.trim()).filter(Boolean).map(m0=>{const j0=/^(\d{4})\s*(.*)$/.exec(m0);return j0?{year:Number(j0[1]),text:(j0[2]||"关键事件").slice(0,40)}:null}).filter(Boolean);if(!g0.length){c0("请按「年份 事件」格式填写,每行一条");return}Z(!0),c0(""),e0(null);try{const m0=await Km({y:G,m:N,d:P,gender:f,location:F,events:g0});e0(m0)}catch(m0){c0((m0==null?void 0:m0.message)||"推演未应机")}finally{Z(!1)}},h0=G=>{g(!1);const N=String(G*2+1).padStart(2,"0")+":00";o(N),z(!1),e0(null)};return a.jsxs(a.Fragment,{children:[a.jsx(Ea,{onPick:(G,N)=>{r(G.birthDate),o(G.birthTime||"12:00"),g(!!G.birthTimeUnknown),E(G.gender),x(G.location),N&&_(N)}}),e&&u0&&a.jsx("p",{className:"hint",style:{color:"var(--celadon-deep)",marginTop:"var(--sp-2)"},children:"已依主档案预填(可改,改后以所书为准)"}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"bz-date",children:"出生日期(公历 / 农历)"}),a.jsx(iu,{id:"bz-date",value:s,onChange:r})]}),b&&a.jsx("p",{className:"tag-hot",style:{marginTop:".3rem"},children:"⚠ 该日期处于中国夏令时期间(1986-1991 年 4-9 月,钟表拨快 1 小时)——请按出生时钟表时间填写,排盘会自动回拨校正。"}),a.jsxs("div",{className:"field-row",children:[a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"bz-time",children:"出生时刻"}),d?a.jsx("p",{className:"hint",style:{padding:".45rem 0"},children:"时辰未录——排盘不排时柱,AI 解读仅依年月日三柱,不涉时柱/子女宫/晚年。"}):a.jsx(Fa,{id:"bz-time",value:c,onChange:o})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"bz-gender",children:"性别"}),a.jsx(g1,{id:"bz-gender",value:f,options:[{value:"男",label:"男"},{value:"女",label:"女"}],onChange:G=>E(G)})]})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{children:"时辰未知"}),a.jsxs("label",{style:{display:"flex",alignItems:"center",gap:".45rem",padding:".45rem 0",cursor:"pointer",fontSize:".9rem"},children:[a.jsx("input",{type:"checkbox",checked:d,onChange:G=>g(G.target.checked)}),"未录(不排时柱)"]})]}),d&&a.jsxs("div",{className:"hour-infer",style:{marginTop:".4rem"},children:[a.jsx("button",{type:"button",className:"btn-seal btn-ghost",style:{fontSize:".82rem",padding:".4rem 1rem"},onClick:()=>z(G=>!G),children:Y?"收 起":"🔍 依人生经历推演时辰"}),Y&&a.jsxs("div",{style:{marginTop:".6rem"},children:[a.jsx("p",{className:"tiny muted",style:{marginBottom:".3rem"},children:"每行一条:「年份 关键事件」(3-8 条为宜,越关键越好)"}),a.jsx("textarea",{className:"input-line",rows:5,value:T,onChange:G=>W(G.target.value),placeholder:`2004 家庭变故
|
|
93
|
+
2014 恋爱
|
|
94
|
+
2016 换城市工作
|
|
95
|
+
2020 换工作
|
|
96
|
+
2022 结婚
|
|
97
|
+
2024 健康问题`}),a.jsx("div",{className:"btn-row",style:{marginTop:".4rem"},children:a.jsx("button",{className:"btn-seal",disabled:X,onClick:K,children:X?"推演中…":"开 始 推 演"})}),q&&a.jsx("p",{className:"tag-hot",style:{marginTop:".4rem"},children:q}),$&&a.jsxs("div",{className:"infer-result",style:{marginTop:".6rem"},children:[a.jsxs("p",{className:"tiny muted",children:[$.chart.yearGZ," 年 / ",$.chart.monthGZ," 月 / ",$.chart.dayGZ," 日——各时辰候选得分(含时柱与流年应象):"]}),$.candidates.slice(0,6).map((G,N)=>a.jsxs("div",{onClick:()=>h0(G.hourIndex),style:{cursor:"pointer",border:"1px solid "+(N===0?"var(--celadon-deep)":"var(--line-soft)"),borderRadius:"var(--r-sm)",padding:".45rem .6rem",marginTop:".35rem",background:N===0?"rgba(94,122,78,.08)":"rgba(251,249,243,.5)"},children:[a.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[a.jsxs("strong",{children:[G.shichen,"时 · ",G.hourGZ," ",N===0?a.jsx("span",{className:"tag-cool",children:"最吻合"}):null]}),a.jsxs("span",{className:"tiny muted",children:["得分 ",G.score]})]}),G.hits.slice(0,2).map((P,g0)=>a.jsxs("div",{className:"tiny muted",style:{marginTop:".15rem"},children:[P.year,":",P.reason]},g0))]},G.hourIndex)),a.jsx("p",{className:"tiny muted",style:{marginTop:".4rem"},children:"点击候选时辰即回填并取消「未知」;推演仅区分时柱细节,大运序列不受时辰影响。"})]})]})]}),d0&&a.jsx("p",{className:"tag-hot",style:{marginTop:".3rem"},children:d0}),a.jsxs("div",{className:"field",children:[a.jsx("label",{children:"出生地点(真太阳时校正)"}),a.jsx(nu,{value:F,onChange:x,previewHourIndex:d?-1:M2(c)}),!F&&a.jsx("p",{className:"hint",style:{marginTop:".3rem"},children:"未选地点:将按北京时间直接排盘(不做真太阳时校正,时辰边界可能偏差约 15-80 分钟)"})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"q-input",children:"所问之事(可选)"}),a.jsx("input",{className:"input-line",id:"q-input",placeholder:"可书所问,AI 报告将由此而发…",maxLength:60,value:A,onChange:G=>y(G.target.value)})]}),a.jsx(f8,{value:S,onChange:M}),a.jsxs("button",{className:"btn-divine",onClick:i0,children:["排 盘",a.jsx("span",{className:"small",children:"布四柱 · 观五行 · 推十神"})]}),a.jsx("p",{className:"hint",style:{marginTop:".8rem"},children:"节气取精确万年历;时柱以出生地经度校正真太阳时;时辰未录时仅排年月日三柱。"})]})}const Br={木:"木",火:"火",土:"土",金:"金",水:"水"},f3=t=>Br[U1[t[0]]]+Br[U1[t[1]]],Di={木:"#5E7A4E",火:"#A5402D",土:"#7A6A4A",金:"#8C7A4E",水:"#3E5F7A"},If=["子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥"];function E8({data:t}){var g;const e=t,i=Bf(e),s=e.hourGZ!=="未知",r=[{name:"年柱",gz:e.yearGZ,wx:f3(e.yearGZ),ss:e.shishen[0].name,scope:"祖上 · 幼年",isDay:!1},{name:"月柱",gz:e.monthGZ,wx:f3(e.monthGZ),ss:e.shishen[1].name,scope:"父母 · 青年",isDay:!1},{name:"日柱",gz:e.dayGZ,wx:f3(e.dayGZ),ss:"日主",scope:"自身 · 中年",isDay:!0},s?{name:"时柱",gz:e.hourGZ,wx:f3(e.hourGZ),ss:e.shishen[3].name,scope:"子女 · 暮年",isDay:!1}:{name:"时柱",gz:"未知",wx:"未录",ss:"未知",scope:"子女 · 暮年",isDay:!1}],c=["木","火","土","金","水"],o=e.dayGanWx,d=c[(c.indexOf(o)+4)%5];return a.jsxs(a.Fragment,{children:[a.jsxs("div",{className:"result-card stagger",children:[a.jsxs("h3",{children:["四柱命盘 · ",e.dayGan,o,"日主"]}),a.jsx("div",{className:"bazi-pan",style:{marginTop:"var(--sp-3)"},children:r.map(f=>a.jsxs("div",{className:"bz-pillar"+(f.isDay?" day-pillar":""),children:[a.jsx("span",{className:"p-zhu",children:f.scope}),a.jsxs("span",{className:"p-name",children:[f.name," · ",f.ss]}),a.jsx("span",{className:"p-gan",style:{color:Di[U1[f.gz[0]]]},children:f.gz[0]}),a.jsx("span",{className:"p-zhi",style:{color:Di[U1[f.gz[1]]]},children:f.gz[1]}),a.jsx("span",{className:"p-wx",children:f.wx}),a.jsx("span",{className:"p-nayin",children:e.nayin})]},f.name))}),a.jsx("p",{style:{marginTop:"var(--sp-3)"},children:a.jsx("strong",{children:i.headline})}),e.trueSolar&&a.jsxs("p",{className:"tag-cool",children:["真太阳时校正:",If[e.correctedHourIndex],"时(依出生地经度 ",e.trueSolar.localMeanHours.toFixed(2),"h → ",e.trueSolar.trueSolarHours.toFixed(2),"h)"]})]}),a.jsxs(H0,{title:"五行流转",cells:c.map(f=>({k:Br[f],v:"●".repeat(Math.max(e.wxCount[f],0))+(e.wxCount[f]===0?"空":"")+" ×"+e.wxCount[f]})),children:[a.jsxs("p",{children:[a.jsxs("strong",{children:["日主:",e.dayGan,o]})," 生扶(",o,"、",d,")共 ",e.support," 数,克泄耗共 ",e.drain," 数 → ",a.jsx("span",{className:e.support>=e.drain?"tag-cool":"tag-hot",children:a.jsx("strong",{children:e.strength})}),"。"]}),a.jsx("p",{children:i.wuxingNote})]}),a.jsxs(H0,{title:"占断要旨",children:[a.jsx("p",{children:i.overview}),i.character.map((f,E)=>a.jsxs("p",{style:{marginTop:".45rem"},children:["◇ ",f]},E)),a.jsx("p",{style:{marginTop:".45rem"},children:i.dayunNote}),a.jsx("p",{className:"tiny muted",style:{marginTop:".5rem"},children:i.nayinNote}),a.jsx("p",{className:"tiny muted",style:{marginTop:".4rem"},children:"此要旨由盘面数据生成,为现代语言之概览,细察仍以全局生克为凭。"})]}),a.jsxs(H0,{title:"十神六亲",children:[a.jsx("p",{children:e.shishen.filter(f=>f.name!=="比肩"||!0).slice(0,4).map((f,E)=>a.jsxs("span",{children:[a.jsx("strong",{children:["年干","月干","日干","时干"][E]}),"为",f.name,"(",zm[f.name],"日主之",f.name,") "]},E))}),a.jsx("p",{children:"十神之义:比劫主自我与同侪,食伤主才情与输出,财星主所得与经营,官杀主约束与担当,印星主滋养与学识。"})]}),a.jsxs(H0,{title:"地支藏干 · 人元十神",children:[a.jsx("p",{className:"tiny muted",style:{marginBottom:"var(--sp-2)"},children:"地支非孤物,各藏人元(本气/中气/余气),十神之根尽在此中——用神是否有根、财官是否有力,皆观藏干。"}),a.jsx("div",{style:{display:"flex",gap:".8rem",flexWrap:"wrap",marginTop:"var(--sp-2)"},children:e.canggan.map((f,E)=>a.jsxs("div",{style:{border:"1px solid var(--line-soft)",borderRadius:"var(--r-sm)",padding:".6rem .8rem",background:"rgba(251,249,243,.5)"},children:[a.jsxs("div",{className:"tiny muted",style:{letterSpacing:".2em"},children:[["年支","月支","日支","时支"][E]," · ",f.zhi]}),a.jsx("div",{style:{marginTop:".3rem",fontSize:".95rem"},children:f.gans.map((F,x)=>a.jsxs("span",{style:{display:"block",color:Di[F.wx]},children:[F.gan," ",a.jsxs("span",{style:{color:"var(--ink-soft)"},children:[F.shishen,"(",F.qi,")"]})]},x))})]},E))})]}),a.jsxs(H0,{title:"用神 · 喜忌",children:[a.jsxs("p",{children:[a.jsxs("strong",{children:["日主",e.strength]}),"(旺衰分 ",e.strengthDetail.score.toFixed(1),":",e.strengthDetail.reasons.join(";"),")"]}),a.jsxs("p",{style:{marginTop:".6rem"},children:["主用神:",a.jsxs("strong",{style:{color:Di[e.yongshen.wx]},children:[e.yongshen.wx,"(",e.yongshen.shishen,")"]})," 调候:",e.yongshen.tiaohou]}),a.jsxs("p",{style:{marginTop:".6rem"},children:["喜 神:",a.jsx("span",{className:"tag-cool",children:e.yongshen.xi.join("、")})," 忌 神:",a.jsx("span",{className:"tag-hot",children:e.yongshen.ji.join("、")})]}),a.jsx("p",{className:"tiny muted",style:{marginTop:".6rem"},children:e.yongshen.reason}),a.jsx("p",{className:"tiny muted",style:{marginTop:".4rem"},children:"用神为全局取运之枢:行运逢喜则顺,逢忌则慎——此为 AI 解读「就盘论命」的核心依据。"})]}),a.jsxs(H0,{title:"大运 · 流年",children:[a.jsxs("p",{children:[a.jsx("strong",{children:e.qiYun.detail}),",大运",(g=e.dayun[0])!=null&&g.forward?"顺行":"逆行","(阳男阴女顺、阴男阳女逆)。"]}),a.jsx("div",{style:{display:"flex",gap:".5rem",flexWrap:"wrap",marginTop:"var(--sp-2)"},children:e.dayun.slice(0,8).map((f,E)=>a.jsxs("div",{style:{border:"1px solid var(--line-soft)",borderRadius:"var(--r-sm)",padding:".5rem .7rem",minWidth:"5.6rem",background:"rgba(251,249,243,.5)"},children:[a.jsx("div",{style:{fontWeight:600,fontSize:"1.05rem"},children:f.gz}),a.jsx("div",{className:"tiny",style:{color:Di[U1[f.gz[0]]]},children:f.ganShishen}),a.jsxs("div",{className:"tiny muted",children:[f.startAge," 岁 · ",f.startYear,"-",f.endYear]})]},E))}),a.jsxs("p",{style:{marginTop:".8rem"},children:["流年:",a.jsxs("strong",{children:[e.liunian.year," 年 ",e.liunian.gz]}),"(",e.liunian.ganShishen," · 支藏",e.liunian.zhiShishen,")——大运为十年之纲,流年为一年之目,合参断吉凶。"]})]}),a.jsxs(H0,{title:"神煞 · 胎元命身",children:[a.jsxs("p",{children:["神煞:",e.shensha.length>0?e.shensha.map((f,E)=>a.jsxs("span",{children:[a.jsx("strong",{className:f.type==="吉"?"tag-cool":f.type==="凶"?"tag-hot":"",children:f.name}),"(",f.zhi,") "]},E)):"四柱无显著神煞,以五行生克为主论之。"]}),a.jsxs("p",{style:{marginTop:".6rem"},children:["胎元 ",a.jsx("strong",{children:e.taiyuan}),"(受气之始) 命宫 ",a.jsx("strong",{children:e.minggong}),"(立命之基) 身宫 ",a.jsx("strong",{children:e.shengong}),"(行事之依)"]}),a.jsx("p",{className:"tiny muted",style:{marginTop:".4rem"},children:"神煞取日干与年支/日支三合:贵人禄神主助力,羊刃主刚猛,驿马主奔波,桃花主情缘。"})]})]})}const F8={紫微:"帝星",天机:"智星",太阳:"官禄",武曲:"财星",天同:"福星",廉贞:"囚星",天府:"库星",太阴:"田宅",贪狼:"桃花",巨门:"暗星",天相:"印星",天梁:"荫星",七杀:"将星",破军:"耗星"},N2=["命宫","兄弟","夫妻","子女","财帛","疾厄","迁移","仆役","官禄","田宅","福德","父母"],At={紫微:"至尊之星,主尊贵、格局、领导力;得辅佐则贵显,孤坐则刚愎。",天机:"善变之星,主智慧、机巧、变动;宜谋略不宜实干。",太阳:"光明之星,主贵气、名声、付出;庙旺则显达,落陷则操劳。",武曲:"刚毅之星,主财富、决断、执行;财帛宫得之尤利。",天同:"福寿之星,主安逸、福气、圆融;与人为善,懒于进取。",廉贞:"次桃花星,主才华、贞操、是非;化气为囚,处世宜慎。",天府:"库府之星,主积蓄、安定、包容;得众星拱卫则富厚。",太阴:"月亮之星,主田宅、财富、内敛;庙旺主富,落陷多劳。",贪狼:"桃花之星,主欲望、才艺、交际;善变多能,戒之在贪。",巨门:"暗曜之星,主口才、是非、思虑;化气为暗,谨言慎行。",天相:"辅佐之星,主印信、协调、仪表;端庄守礼,为人之印。",天梁:"荫庇之星,主清高、寿元、化解;逢凶化吉,孤而不群。",七杀:"肃杀之星,主魄力、变革、冲劲;成败皆烈,宜配吉曜。",破军:"耗损之星,主破旧、开创、动荡;先破后立,劳而有成。"},zf={甲:{lu:"廉贞",quan:"破军",ke:"武曲",ji:"太阳"},乙:{lu:"天机",quan:"天梁",ke:"紫微",ji:"太阴"},丙:{lu:"天同",quan:"天机",ke:"文昌",ji:"廉贞"},丁:{lu:"太阴",quan:"天同",ke:"天机",ji:"巨门"},戊:{lu:"贪狼",quan:"太阴",ke:"右弼",ji:"天机"},己:{lu:"武曲",quan:"贪狼",ke:"天梁",ji:"文曲"},庚:{lu:"太阳",quan:"武曲",ke:"太阴",ji:"天同"},辛:{lu:"巨门",quan:"太阳",ke:"文曲",ji:"文昌"},壬:{lu:"天梁",quan:"紫微",ke:"左辅",ji:"武曲"},癸:{lu:"破军",quan:"巨门",ke:"太阴",ji:"贪狼"}},kf={紫微:["庙","旺","得","旺","庙","旺","得","旺","庙","旺","庙","旺"],天机:["得","庙","得","利","平","利","得","庙","得","利","平","得"],太阳:["庙","庙","旺","旺","旺","旺","得","得","平","平","陷","陷"],武曲:["得","利","庙","旺","旺","庙","得","庙","庙","旺","旺","得"],天同:["平","平","利","庙","庙","庙","旺","陷","平","旺","旺","平"],廉贞:["平","庙","庙","庙","庙","庙","平","平","平","利","利","平"],天府:["庙","庙","得","得","庙","庙","得","得","庙","庙","得","庙"],太阴:["平","平","利","陷","陷","陷","利","庙","旺","庙","庙","旺"],贪狼:["平","庙","利","旺","陷","平","平","庙","庙","旺","平","利"],巨门:["庙","旺","利","陷","旺","利","庙","旺","平","陷","旺","庙"],天相:["庙","得","庙","得","庙","庙","得","得","庙","庙","得","庙"],天梁:["庙","庙","庙","得","得","庙","庙","庙","庙","庙","平","得"],七杀:["旺","旺","得","旺","旺","旺","得","旺","旺","旺","得","旺"],破军:["庙","陷","庙","陷","庙","陷","庙","陷","庙","陷","庙","陷"]},Mf={甲:"寅",乙:"卯",丙:"巳",丁:"午",戊:"巳",己:"午",庚:"申",辛:"酉",壬:"亥",癸:"子"},Tf={甲:["丑","未"],戊:["丑","未"],庚:["丑","未"],乙:["子","申"],己:["子","申"],丙:["亥","酉"],丁:["亥","酉"],壬:["卯","巳"],癸:["卯","巳"],辛:["午","寅"]},bf={申:"寅",子:"寅",辰:"寅",寅:"申",午:"申",戌:"申",巳:"亥",酉:"亥",丑:"亥",亥:"巳",卯:"巳",未:"巳"},Of={寅:"丑",午:"丑",戌:"丑",申:"寅",子:"寅",辰:"寅",巳:"卯",酉:"卯",丑:"卯",亥:"酉",卯:"酉",未:"酉"},Pf={寅:"卯",午:"卯",戌:"卯",申:"戌",子:"戌",辰:"戌",巳:"戌",酉:"戌",丑:"戌",亥:"戌",卯:"戌",未:"戌"},Yf={杀破狼:{name:"杀破狼",ji:"平",desc:"七杀、破军、贪狼三合会照。一生变动开创,先破后立;多有起伏,亦多机遇,宜从事开创性、变动性事业。"},紫府同宫:{name:"紫府同宫",ji:"吉",desc:"紫微、天府同守一宫(寅、申)。双帝星坐命,稳重掌权,财库厚实,是安定型的贵格。"},紫微朝垣:{name:"紫微朝垣",ji:"吉",desc:"紫微独坐午宫,尊贵显达,有领导之象;格局高者主大贵。"},机月同梁:{name:"机月同梁",ji:"平",desc:"天机、太阴、天同、天梁多星组合照会。善谋略、宜公职或专业技术,为人机敏温和。"},日月同宫:{name:"日月同宫",ji:"吉",desc:"太阳、太阴同守丑、未宫。日月并明,阴阳调和,主贵而富,但丑未为陷地,须看庙陷定论。"},日月反背:{name:"日月反背",ji:"凶",desc:"太阳、太阴皆落陷(如太阳子丑、太阴巳午未),阴阳失序,主劳碌奔波、与父母缘分淡。"},月朗天门:{name:"月朗天门",ji:"吉",desc:"太阴独坐亥宫庙旺。月照天门,清贵之象,主聪明秀气,名利双收。"},火贪格:{name:"火贪格",ji:"平",desc:"火星与贪狼同宫或三合。暴发之格,财富来得快、去得也快,宜见好就收。"},铃贪格:{name:"铃贪格",ji:"平",desc:"铃星与贪狼同宫或三合。横发之格,突发机遇获利,成败皆烈。"},石中隐玉:{name:"石中隐玉",ji:"吉",desc:"巨门坐子、午宫(尤以辛年生人)。口才出众,才华内敛,大器晚成。"},君臣庆会:{name:"君臣庆会",ji:"吉",desc:"紫微得左辅右弼拱照,或昌曲同会。君臣得位,主贵显,得贵人扶持。"},禄马交驰:{name:"禄马交驰",ji:"吉",desc:"禄存与天马同宫或三合。财源流动,动中得财,宜外出发展、经商。"},科权禄拱命:{name:"科权禄拱命",ji:"吉",desc:"命宫三合方有化禄、化权、化科拱照。三奇拱命,富贵双全之格。"},廉贞七杀:{name:"廉贞七杀",ji:"平",desc:"廉贞七杀同守丑、未宫。英雄之格,魄力与是非并存,宜纪律性行业。"},命无正曜:{name:"命无正曜",ji:"平",desc:"命宫无十四主星,借对宫星曜为用。性情受环境牵动,宜借外力补足。"}},tt=["寅","卯","辰","巳","午","未","申","酉","戌","亥","子","丑"];function Lf(t,e){return(t%e+e)%e}const U7=["紫微","天同","天府","天相","天梁","太阴","太阳","武曲"];function tr(t){return t+"为"+F8[t]+","+At[t].split(",")[0]}function q7(t){return{命宫:"一生的根基与底色",兄弟:"手足缘分与同侪之助",夫妻:"姻缘之象与伴侣之缘",子女:"子息缘分与晚辈之应",财帛:"求财之途与理财之能",疾厄:"体魄之况与健康之需",迁移:"外出之运与环境之变",仆役:"部属朋友之助",官禄:"事业之途与名位之求",田宅:"家宅之基与置业之机",福德:"福分之厚与心境之安",父母:"父母荫庇与长辈之缘"}[t]||""}function E3(t,e){const i=Object.keys(t.palaces).find(s=>t.palaces[Number(s)]===e);return i!==void 0?N2[Number(i)]:""}function F3(t,e){return Object.keys(t.zwStars).filter(i=>t.zwStars[i]===e)}function Rf(t){var f,E,F;const e=[],i=F3(t,t.ming);if(i.length>0){const x="命宫 · "+tt[t.ming],A="命宫安于"+tt[t.ming]+"位,主星为"+i.join("、")+"。"+i.map(tr).join(";")+"。此组合以"+i[0]+"为纲,一生行运以此为底色。";e.push({title:x,content:A})}else{const x="命宫 · "+tt[t.ming],A="命宫安于"+tt[t.ming]+"位,主星未临,为「命宫无主星」之局。此时当借对宫("+tt[Lf(t.ming+6,12)]+")主星为用,或以紫微落宫为纲领观之。命主性情内敛,行事多受环境牵动,宜借外力补足。";e.push({title:x,content:A})}const s=E3(t,t.zwPos);let r="帝星紫微落于"+(s||"未明之宫")+"。";s==="命宫"?r+="紫微坐命,格局自高,一生贵气与担当并存,唯须防孤高自许。":s==="财帛"?r+="紫微入财帛,掌财有方,格局开阔,宜谋大局之财。":s==="官禄"?r+="紫微入官禄,事业有威,宜居领导之位,名位可期。":s==="田宅"?r+="紫微入田宅,家业殷实,置业有成,祖荫可承。":r+="紫微入"+(s||"未明之宫")+",帝星所临之处即一生重心所在,此宫之事易得显达与助力。",e.push({title:"紫微落宫 · "+(s||"")+"("+tt[t.zwPos]+")",content:r});const c=[];for(let x=0;x<12;x++){const A=t.palaces[x],y=F3(t,A);if(y.length===0)continue;const B=N2[x],_=y.map(tr).join(";");B+""+tt[A]+y.join("、")+_+q7(B)+y[0]+B+(U7.includes(y[0])?"为得地之象,多主顺遂。":"须留意分寸,化其棱角则吉。"),c.push({name:B,stars:y,pos:A})}if(e.push({title:"十二宫要览",content:c.map(x=>x.name+"宫("+tt[x.pos]+")见"+x.stars.join("、")+"——"+x.stars.map(tr).join(";")+"。此宫主"+q7(x.name)+"。"+x.stars[0]+"入"+x.name+","+(U7.includes(x.stars[0])?"为得地之象,多主顺遂。":"须留意分寸,化其棱角则吉。")).join(`
|
|
98
|
+
|
|
99
|
+
`)}),t.dayun&&t.curDayunIdx!==void 0){const x=t.dayun[t.curDayunIdx],A=E3(t,x.palaceIdx),y=F3(t,x.palaceIdx);let B="命主现处第"+(t.curDayunIdx+1)+"大限,行至"+(A||"")+"宫("+tt[x.palaceIdx]+")。";if(y.length){const _=y[0];B+="此宫主星"+y.join("、")+","+_+"入"+(A||"")+","+(At[_].includes("财")?"此十年财机为要,宜务实经营。":At[_].includes("贵")||At[_].includes("官")?"此十年名位为重,宜向上进取。":"此十年"+(A||"")+"之事务为重心,静心经营自有所成。")}else B+="此宫主星未临,十年之事多借他宫之力,宜稳中求进。";e.push({title:"当前大限 · "+x.start+"–"+x.end+"岁",content:B})}if(t.liunianIdx!==void 0){const x=F3(t,t.liunianIdx);let A="今年虚岁"+(t.nominalAge??"")+",流年命宫行至"+(t.liunianPalaceName||"")+"宫("+tt[t.liunianIdx]+")。";if(x.length){const y=x[0];A+="流年主星"+x.join("、")+"照临,"+y+"入此宫,"+(At[y].includes("财")?"今年财机可期,唯须防急进。":At[y].includes("贵")?"今年名望有进,宜谦和持守。":At[y].includes("福")?"今年福泽安稳,家和事顺。":"今年此宫所主之事多有动静,顺势而为即可。")}else A+="流年宫主星未临,今年整体平稳,可按大限之势行事。";e.push({title:"流年之示",content:A})}if(t.geju&&t.geju.length>0){const x=t.geju.map(y=>y.name+(y.ji==="吉"?"(吉格)":y.ji==="凶"?"(凶格)":"(平格)")).join("、"),A=t.geju.map(y=>y.name+":"+y.desc.split("。")[0]+"。").join("");e.push({title:"格局定式",content:"本命会 "+x+"。"+A+"成格之局趋向鲜明:"+(t.geju.some(y=>y.ji==="吉")?"吉格者顺势而取,是命盘中最可依托的优势方向。":"")+(t.geju.some(y=>y.ji==="凶")?"凶格者(或煞忌冲破)须早作防备,化被动为主动。":"")+"平格者动静皆宜,重在行运把握。"})}if(t.sihua){const x=t.sihua,A=((f=t.sihuaPos)==null?void 0:f.lu)!==void 0?E3(t,t.sihuaPos.lu):"",y=((E=t.sihuaPos)==null?void 0:E.ji)!==void 0?E3(t,t.sihuaPos.ji):"";e.push({title:"生年四化",content:x.lu+"化禄(入"+(A||"某宫")+")主财缘与福荫所钟;"+x.quan+"化权主魄力与开创所在;"+x.ke+"化科主名声与文华所显;"+x.ji+"化忌(入"+(y||"某宫")+")是命中最须留意之处——忌星所落之宫,其事务易生阻滞、消耗与执着,宜以"+x.ji+"之性反求克制("+((F=At[x.ji])==null?void 0:F.split(",")[0])+")。四化合观,禄权科为吉化,忌为暗伤,一生取舍可由此参详。"})}const o=[];t.brightness&&(Object.keys(t.zwStars).forEach(x=>{t.brightness[x]==="庙"&&(t.zwStars[x]===t.ming||t.zwStars[x]===t.shen)&&o.push(x+"坐"+(t.zwStars[x]===t.ming?"命":"身")+"宫庙旺")}),o.length&&e.push({title:"庙旺点睛",content:o.join(";")+"——星曜得地,力量全发,是盘中最有力的支撑点;行运至此宫之年,多有实质性进展。"}));const d=i[0]||"紫微",g="盘主以"+d+"为命宫主星("+(i.length?F8[d]:"借对宫之力")+"),紫微落"+(s||"")+"宫、五行属"+t.juName+"。纵观全局,"+(i.length?d+"主"+(At[d].includes("贵")?"格局与担当":"其性之显")+",一生之成在于"+(s||"未明之宫")+"之经营。":"命宫虚而借力,一生之成在于择善而从。")+"大限顺逆已定,行运起伏观其宫位主星之庙陷与四化之忌。"+(t.geju&&t.geju.length?"格局"+t.geju.map(x=>x.name).join("、")+"定其一生趋向,":"")+"此盘为观微所推(含辅曜四化),供修身养性、怡情遣兴之用。";return e.push({title:"命盘总述",content:g}),e}const yt=["寅","卯","辰","巳","午","未","申","酉","戌","亥","子","丑"],Gf=(t,e)=>(t%e+e)%e;function Hf({onDivine:t}){var W;const e=(W=k1())==null?void 0:W.profile,[i,s]=v.useState((e==null?void 0:e.birthDate)||"1990-06-15"),[r,c]=v.useState((e==null?void 0:e.birthTime)||"00:00"),[o,d]=v.useState((e==null?void 0:e.birthTimeUnknown)||!1),[g,f]=v.useState((e==null?void 0:e.gender)||"男"),[E,F]=v.useState((e==null?void 0:e.location)||null),[x,A]=v.useState(""),[y,B]=v.useState(null),[_,S]=v.useState((e==null?void 0:e.lifeEvents)||[]),M=m8(i),[Y,z]=v.useState(""),T=()=>{const[X,Z,$]=i.split("-").map(Number);if(!X||!Z||!$){z("⚠ 请先填写有效的出生日期");return}if(new Date(X,Z-1,$).getMonth()!==Z-1){z("⚠ 出生日期不合法,请检查");return}z("");let e0=1,q=1,c0="甲子",b=X;try{const E0=k0.fromYmd(X,Z,$).getLunar(),i0=E0.getMonth();q=E0.getDay(),e0=Math.abs(i0)+(i0<0&&q>15?1:0),c0=E0.getYearInGanZhi(),b=E0.getYear()}catch{}const u0=o?6:M2(r),d0={birthDate:i,birthTime:o?"":r,birthHourIndex:u0,birthTimeUnknown:o||void 0,gender:g,location:E,lifeEvents:_.length?_:void 0};t({ganzhi:c0,month:e0,day:q,hour:u0,time:o?void 0:r,location:E??void 0,gender:g,birthYear:X,solarDate:[X,Z,$]},d0,x.trim(),(y==null?void 0:y.id)||"main")};return a.jsxs(a.Fragment,{children:[a.jsx(Ea,{onPick:(X,Z)=>{s(X.birthDate),c(X.birthTime||"00:00"),d(!!X.birthTimeUnknown),f(X.gender),F(X.location),Z&&B(Z)}}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"zw-date",children:"出生日期(公历 / 农历,紫微依农历排盘)"}),a.jsx(iu,{id:"zw-date",value:i,onChange:s})]}),M&&a.jsx("p",{className:"tag-hot",style:{marginTop:".3rem"},children:"⚠ 该日期处于中国夏令时期间(1986-1991 年 4-9 月,钟表拨快 1 小时)——请按出生时钟表时间填写,排盘会自动回拨校正。"}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"zw-gender",children:"性别(定大限顺逆)"}),a.jsx(g1,{id:"zw-gender",value:g,options:[{value:"男",label:"男"},{value:"女",label:"女"}],onChange:X=>f(X)})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"zw-time",children:"出生时刻"}),o?a.jsx("p",{className:"hint",style:{padding:".45rem 0"},children:"时辰未录——紫微暂以午时示例排盘(仅观命局五行),AI 解读不涉命宫/身宫/大限细节。"}):a.jsx(Fa,{id:"zw-time",value:r,onChange:c})]}),a.jsx("div",{className:"field",children:a.jsxs("label",{style:{display:"flex",alignItems:"center",gap:".45rem",cursor:"pointer",fontSize:".9rem",fontWeight:400},children:[a.jsx("input",{type:"checkbox",checked:o,onChange:X=>d(X.target.checked)}),"时辰未知(未录)"]})}),Y&&a.jsx("p",{className:"tag-hot",style:{marginTop:".3rem"},children:Y}),a.jsxs("div",{className:"field",children:[a.jsx("label",{children:"出生地点(时辰经度校正)"}),a.jsx(nu,{value:E,onChange:F,previewHourIndex:o?6:M2(r)}),!E&&a.jsx("p",{className:"hint",style:{marginTop:".3rem"},children:"未选地点:将按北京时间直接排盘(不做真太阳时校正)"})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"q-input",children:"所问之事(可选)"}),a.jsx("input",{className:"input-line",id:"q-input",placeholder:"可书所问,AI 报告将由此而发…",maxLength:60,value:x,onChange:X=>A(X.target.value)})]}),a.jsx(f8,{value:_,onChange:S}),a.jsxs("button",{className:"btn-divine",onClick:T,children:["布 盘",a.jsx("span",{className:"small",children:"安命宫 · 定紫微 · 布主星"})]}),a.jsx("p",{className:"hint",style:{marginTop:".8rem"},children:"演示级简盘:十四主星入十二宫,辅曜从略。时辰未录时以午时示例布盘,命宫/身宫仅供参考。"})]})}const Zf=[["寅",0,3],["卯",0,2],["辰",0,1],["巳",0,0],["午",1,0],["未",2,0],["申",3,0],["酉",3,1],["戌",3,2],["亥",3,3],["子",2,3],["丑",1,3]];function p8({data:t}){var o;const e=t,i={};Object.keys(e.zwStars).forEach(d=>{const g=e.zwStars[d];i[g]||(i[g]=[]),i[g].push(d)});const s={};Object.keys(e.fuStars||{}).forEach(d=>{const g=e.fuStars[d];s[g]||(s[g]=[]),s[g].push(d)});const r={};Object.keys(e.sihuaPos||{}).forEach(d=>{const g=e.sihuaPos[d];g!==void 0&&(r[g]||(r[g]=[]),r[g].push(d==="lu"?"禄":d==="quan"?"权":d==="ke"?"科":"忌"))});const c=Zf.map(([d,g,f])=>{const E=yt.indexOf(d),F=i[E]||[],x=s[E]||[],A=r[E]||[],y=Object.keys(e.palaces).find(M=>e.palaces[Number(M)]===E),B=y!==void 0?N2[Number(y)]:"",_=e.ming===E,S=e.shen===E;return{zhi:d,c:g,rw:f,stars:F,fus:x,marks:A,palName:B,isMing:_,isShen:S,pos:E}});return a.jsxs(a.Fragment,{children:[a.jsx(H0,{title:"命盘 · "+e.juName+" · "+e.nayin,children:a.jsxs("p",{children:["命宫安于 ",a.jsx("strong",{children:yt[e.ming]}),e.ming===e.zwPos?"(紫微同宫)":"",",紫微星落 ",a.jsx("strong",{children:yt[e.zwPos]})," 宫。时辰经度校正:",g8(e.correctedHour),"。"]})}),a.jsxs("div",{className:"result-card stagger",children:[a.jsx("h3",{children:"星曜布列"}),a.jsxs("div",{className:"ziwei-grid",style:{marginTop:"1rem"},children:[a.jsxs("div",{className:"zw-cell center",style:{gridColumn:"2/4",gridRow:"2/4"},children:[a.jsx("div",{className:"zw-name",children:"观微"}),a.jsx("div",{className:"tiny muted",children:"紫微简盘"}),a.jsx("div",{className:"tiny muted",children:e.juName})]}),c.sort((d,g)=>d.rw===g.rw?d.c-g.c:d.rw-g.rw).map(d=>a.jsxs("div",{className:"zw-cell"+(d.isMing?" ming-cell":""),style:{gridColumn:d.c+1,gridRow:d.rw+1},children:[a.jsxs("div",{className:"zw-name",children:[a.jsxs("span",{children:[d.zhi," · ",d.palName||"—"]}),d.marks.map((g,f)=>a.jsx("span",{className:"zw-extra",style:{color:g==="忌"?"var(--cinnabar)":"var(--celadon-deep)"},children:g},f)),d.isMing?a.jsx("span",{className:"zw-extra",style:{color:"var(--cinnabar)"},children:"命"}):null,d.isShen?a.jsx("span",{className:"zw-extra",style:{color:"var(--celadon-deep)"},children:"身"}):null]}),a.jsxs("div",{className:"zw-stars",children:[d.stars.map(g=>{const f=["紫微","七杀","破军","贪狼","廉贞"].includes(g),E=["天机","天同","天相","天梁","天府"].includes(g),F=(e.brightness||{})[g]||"";return a.jsxs("span",{className:"star-name "+(f?"star-hot":E?"star-cool":""),children:[g,a.jsx("em",{className:"tiny",style:{fontStyle:"normal",opacity:.65},children:F})]},g)}),d.stars.length===0&&a.jsx("span",{className:"muted",children:"—"})]}),d.fus.length>0&&a.jsx("div",{className:"tiny muted",style:{marginTop:".15rem",lineHeight:1.5},children:d.fus.join("·")})]},d.zhi))]})]}),a.jsxs(H0,{title:"命宫参详",children:[a.jsx("p",{children:jf(e).mingNote}),a.jsx("p",{className:"tiny muted",children:"简盘仅列十四主星,辅曜从略;此参详为现代语言之概览。"})]}),a.jsxs(H0,{title:"命盘基础",children:[a.jsxs("p",{children:["五行局 ",a.jsx("strong",{children:e.juName}),"(",e.nayin,"),起运 ",a.jsxs("strong",{children:[e.startAge," 岁"]}),",大限"," ",a.jsx("strong",{children:e.forward?"顺行":"逆行"}),"(",e.nominalAge," 虚岁,行至第 ",(e.curDayunIdx??0)+1," 大限)。"]}),a.jsxs("p",{children:["命宫在",a.jsx("strong",{children:yt[e.ming]}),",身宫在",a.jsx("strong",{children:yt[e.shen]}),e.shen===e.ming?"(与命宫同宫)":"",";紫微星落",a.jsx("strong",{children:yt[e.zwPos]}),"宫。"]}),a.jsxs("p",{children:["生年四化:",e.sihua.lu,"化禄、",e.sihua.quan,"化权、",e.sihua.ke,"化科、",e.sihua.ji,"化忌(",e.sihua.lu,"化禄主财缘流通,化忌之星须防其暗伤)。"]}),a.jsx("p",{className:"tiny muted",children:"大限起运岁数按五行局数计;四化为斗数断流年吉凶之枢。"})]}),a.jsxs(H0,{title:"格局",children:[e.geju.length>0?a.jsxs(a.Fragment,{children:[a.jsx("p",{children:e.geju.map((d,g)=>a.jsxs("span",{children:[a.jsx("strong",{className:d.ji==="吉"?"tag-cool":d.ji==="凶"?"tag-hot":"",children:d.name}),d.ji==="吉"?"(吉格)":d.ji==="凶"?"(凶格)":"(平格)"," "]},g))}),e.geju.map((d,g)=>a.jsxs("p",{style:{marginTop:".5rem"},children:[a.jsx("strong",{children:d.name}),":",d.desc,a.jsxs("span",{className:"tiny muted",children:["(",d.why,")"]})]},g))]}):a.jsx("p",{children:"本命未会明显格局,以主星庙陷与四化合参论之。"}),a.jsx("p",{className:"tiny muted",style:{marginTop:".5rem"},children:"格局为星曜组合之定式:成格者一生趋向鲜明,破格者(煞忌冲破)则吉格亦减力。"})]}),e.dayun&&e.dayun.length>0&&a.jsxs("div",{className:"result-card stagger",children:[a.jsx("h3",{children:"大限行运"}),a.jsx("div",{className:"result-grid",style:{gridTemplateColumns:"repeat(auto-fit,minmax(140px,1fr))"},children:e.dayun.map((d,g)=>{const f=Object.keys(e.palaces).find(A=>e.palaces[Number(A)]===d.palaceIdx),E=f!==void 0?N2[Number(f)]:"",F=Object.keys(e.zwStars).filter(A=>e.zwStars[A]===d.palaceIdx),x=g===e.curDayunIdx;return a.jsxs("div",{className:"result-cell",style:x?{borderColor:"var(--cinnabar)",boxShadow:"0 0 0 1px rgba(165,64,45,.2)"}:void 0,children:[a.jsxs("div",{className:"k",children:[d.start,"–",d.end," 岁",x?" · 今":""]}),a.jsx("div",{className:"v",style:x?{color:"var(--cinnabar)"}:void 0,children:E}),a.jsx("div",{className:"tiny muted",children:F.join("、")||"主星未临"}),a.jsx("div",{className:"tiny muted",children:qf(F)})]},g)})})]}),a.jsxs(H0,{title:"流年之示",children:[a.jsxs("p",{children:[e.nominalAge," 虚岁,流年命宫落 ",a.jsx("strong",{children:e.liunianPalaceName}),"(",yt[e.liunianIdx??0],"),流年主星:",a.jsx("strong",{children:((o=e.liunianStars)==null?void 0:o.join("、"))||"主星未临"}),"。"]}),a.jsx("div",{className:"mt-2",children:[1,2,3].map(d=>{const g=Gf(e.ming+(e.nominalAge??34)-1+d,12),f=Object.keys(e.zwStars).filter(F=>e.zwStars[F]===g),E=N2[Number(Object.keys(e.palaces).find(F=>e.palaces[Number(F)]===g))||0];return a.jsxs("p",{className:"tiny",style:{lineHeight:2},children:["来年",d===1?"":d+"年"," · ",E,"宫(",yt[g],")· 主星",f.join("、")||"未临"," —— ",Xf(f)]},d)})}),a.jsx("p",{className:"tiny muted",children:"流年为当年太岁行运之要,主星吉凶与宫位庙陷须合参;简盘仅供参考。"})]}),Rf(e).map((d,g)=>{if(d.title==="十二宫要览"){const f=Object.keys(e.palaces).map(E=>({name:N2[Number(E)],pos:e.palaces[Number(E)],stars:Object.keys(e.zwStars).filter(F=>e.zwStars[F]===e.palaces[Number(E)])}));return a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"十二宫概览"}),a.jsx("div",{className:"zw-palace-grid",children:f.map(E=>a.jsxs("div",{className:"zw-palace-cell"+(E.pos===e.ming?" is-ming":"")+(E.stars.length?"":" empty"),children:[a.jsxs("div",{className:"zp-head",children:[a.jsx("span",{className:"zp-name",children:E.name}),a.jsx("span",{className:"zp-zhi",children:yt[E.pos]}),E.pos===e.ming&&a.jsx("span",{className:"zp-ming",children:"命"})]}),a.jsx("div",{className:"zp-stars",children:E.stars.length?E.stars.join(" "):"主星未临"}),a.jsx("div",{className:"zp-theme",children:Uf(E.name)})]},E.name))}),a.jsx("div",{className:"result-text mt-3",children:d.content.split(`
|
|
100
|
+
|
|
101
|
+
`).map((E,F)=>a.jsx("p",{children:E},F))})]},g)}return a.jsx(H0,{title:d.title,children:a.jsx("p",{children:d.content})},g)})]})}function Uf(t){return{命宫:"根基底色",兄弟:"手足同侪",夫妻:"姻缘伴侣",子女:"子息晚辈",财帛:"求财理财",疾厄:"体魄健康",迁移:"外出环境",仆役:"部属朋友",官禄:"事业名位",田宅:"家宅置业",福德:"福分心境",父母:"荫庇长辈"}[t]||""}const jr=["紫微","天同","天府","天相","天梁","太阴","太阳","武曲"],C8=["七杀","破军","贪狼","廉贞","巨门"];function qf(t){return t.length?t.every(e=>jr.includes(e))?"顺遂之运":t.some(e=>C8.includes(e))&&!t.some(e=>jr.includes(e))?"多动之运":"起伏之运":"平淡之运"}function Xf(t){return t.length?t.every(e=>jr.includes(e))?"机缘可观,可谋进取":t.some(e=>C8.includes(e))?"变动较多,宜稳中求进":"平稳过渡":"宜守成"}const Jf=["择时出行","谋事求财","讼事纠纷","考试功名","婚恋姻缘","疾病求医","其他"],Wf={1:[0,2],8:[1,2],3:[2,2],4:[2,1],5:[1,1],9:[2,0],2:[0,0],7:[1,0],6:[0,1]},vr={1:"坎",2:"坤",3:"震",4:"巽",5:"中",6:"乾",7:"兑",8:"艮",9:"离"};function $f(){const t=new Date,e=i=>String(i).padStart(2,"0");return`${t.getFullYear()}-${e(t.getMonth()+1)}-${e(t.getDate())}T${e(t.getHours())}:${e(t.getMinutes())}`}function Qf({onDivine:t}){const[e,i]=v.useState($f()),[s,r]=v.useState("择时出行"),[c,o]=v.useState(""),d=()=>t({datetime:e},void 0,c.trim());return a.jsxs(a.Fragment,{children:[a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"qm-datetime",children:"用事时刻(公历)"}),a.jsx("input",{className:"input-line",type:"datetime-local",id:"qm-datetime",value:e,onChange:g=>i(g.target.value)})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"qm-use",children:"所问之属"}),a.jsx(g1,{id:"qm-use",value:s,options:Jf.map(g=>({value:g,label:g})),onChange:r})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"q-input",children:"所问之事"}),a.jsx("input",{className:"input-line",id:"q-input",placeholder:"默念所问,书之于此…",maxLength:60,value:c,onChange:g=>o(g.target.value)})]}),a.jsxs("button",{className:"btn-divine",onClick:d,children:["起 局",a.jsx("span",{className:"small",children:"定时 · 定局 · 布三奇六仪"})]}),a.jsx("p",{className:"hint",style:{marginTop:".8rem"},children:"节气取精确万年历定阴阳遁,三候取局,九宫布盘。"})]})}function x8({data:t}){const e=t;return a.jsxs(a.Fragment,{children:[a.jsxs(H0,{title:`${e.jqName} · ${e.yin?"阴遁":"阳遁"}${e.ju}局 · ${e.dayGZ}日 ${e.hourGZ}时`,children:[a.jsxs("p",{children:["旬首 ",a.jsx("strong",{children:e.xunshouName}),"(",e.xunShou,"),值符 ",a.jsx("strong",{children:e.zfStar}),",值使 ",a.jsx("strong",{children:e.zsMen}),"。"]}),a.jsxs("p",{children:["三奇六仪以 ",e.yin?"逆":"顺","布于九宫,",e.yin?"阴遁主静,宜守":"阳遁主动,宜进","。用神所临之宫,即事之机枢。"]})]}),a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"九宫盘"}),a.jsx("div",{className:"qimen-grid",style:{marginTop:"1rem"},children:[1,8,3,4,9,2,7,6,5].map(i=>{const s=e.pan[i],[r,c]=Wf[i];return a.jsxs("div",{className:"qm-cell",style:{gridColumn:r+1,gridRow:c+1},children:[a.jsxs("div",{className:"qm-name",children:[vr[i],i===5?" · 中":""]}),a.jsx("div",{className:"qm-items",children:i===5?"中五寄坤":`${s.yi} · ${s.men}门`}),a.jsx("div",{className:"qm-star",children:i===5?"天禽":s.star})]},i)})})]}),a.jsxs(H0,{title:"用事之示",children:[a.jsxs("p",{children:["九宫之中,值符 ",e.zfStar," 所在之",vr[e.zfPalace],"宫为发端;",e.zsMen,"门为使,主行事之出入。择时用事,宜察 ",e.yin?"开、休、生":"景、惊、伤"," 之吉凶(简示)。"]}),a.jsxs("p",{className:"mt-2",children:[a.jsx("strong",{children:"用神参详:"}),Kf(e)]})]})]})}function Kf(t){const e={1:"北",2:"西南",3:"东",4:"东南",5:"中",6:"西北",7:"西",8:"东北",9:"南"},i=[];i.push("值符"+t.zfStar+"落"+vr[t.zfPalace]+"宫("+e[t.zfPalace]+"方),为当下气场之枢纽,谋事可借"+e[t.zfPalace]+"方之势。");const s={开:"开门吉门,主动通达,宜开创进取",休:"休门吉门,主修养安顿,宜休整待机",生:"生门吉门,主生机财源,宜经营求财",伤:"伤门凶门,主损伤争斗,宜避其锋",杜:"杜门平门,主闭塞隐藏,宜守不宜攻",景:"景门平门,主文书声名,宜宣传谋名",死:"死门凶门,主停滞死寂,宜止不宜行",惊:"惊门凶门,主惊恐口舌,宜慎言防变"};return i.push("值使"+t.zsMen+"门,"+(s[t.zsMen]||"主行事出入")+"。"),i.push(t.yin?"阴遁之局,气机内收,宜守成蓄势,谋定后动。":"阳遁之局,气机外放,宜主动作为,顺势而进。"),i.join("")}const Qt={1:{name:"乾",symbol:"☰",nature:"天",wx:"金"},2:{name:"兑",symbol:"☱",nature:"泽",wx:"金"},3:{name:"离",symbol:"☲",nature:"火",wx:"火"},4:{name:"震",symbol:"☳",nature:"雷",wx:"木"},5:{name:"巽",symbol:"☴",nature:"风",wx:"木"},6:{name:"坎",symbol:"☵",nature:"水",wx:"水"},7:{name:"艮",symbol:"☶",nature:"山",wx:"土"},8:{name:"坤",symbol:"☷",nature:"地",wx:"土"}},Vf=[[1,1,"乾为天","元亨利贞。天行健,君子以自强不息。","刚健中正,自强之象"],[8,8,"坤为地","元亨,利牝马之贞。地势坤,君子以厚德载物。","柔顺包容,厚德之象"],[6,4,"水雷屯","元亨利贞,勿用有攸往,利建侯。","始生维艰,草创之象"],[7,6,"山水蒙","亨。匪我求童蒙,童蒙求我。","蒙昧待启,求教之象"],[6,1,"水天需","有孚,光亨,贞吉,利涉大川。","云上于天,待时之象"],[1,6,"天水讼","有孚窒惕,中吉,终凶。利见大人,不利涉大川。","争讼之象,和为贵"],[6,8,"地水师","贞,丈人吉,无咎。","行险而顺,统众之象"],[8,6,"水地比","吉。原筮,元永贞,无咎。","亲附之象,众心所归"],[5,1,"风天小畜","亨。密云不雨,自我西郊。","小有蓄积,待时而动"],[1,2,"天泽履","履虎尾,不咥人,亨。","谨慎履险,如履薄冰"],[8,1,"地天泰","小往大来,吉亨。天地交而万物通。","通泰之象,上下交心"],[1,8,"天地否","否之匪人,不利君子贞,大往小来。","闭塞不通,守正待时"],[1,3,"天火同人","同人于野,亨。利涉大川,利君子贞。","和同于人,同心之象"],[3,1,"火天大有","元亨。柔得尊位而上下应之。","盛大丰有,光明普照"],[8,7,"地山谦","亨,君子有终。天道亏盈而益谦。","谦逊之象,卑以自牧"],[4,8,"雷地豫","利建侯行师。雷出地奋。","和乐之象,顺动而乐"],[2,4,"泽雷随","元亨利贞,无咎。君子以向晦入宴息。","随顺之象,随时而动"],[7,5,"山风蛊","元亨,利涉大川。先甲三日,后甲三日。","整饬之象,革故鼎新"],[8,2,"地泽临","元亨利贞。至于八月有凶。","临下之象,以上临下"],[5,8,"风地观","盥而不荐,有孚颙若。","观仰之象,静观其变"],[3,4,"火雷噬嗑","亨。利用狱。雷电合而章。","咬合之象,明罚敕法"],[7,3,"山火贲","亨。小利有攸往。","文饰之象,饰外修内"],[7,8,"山地剥","不利有攸往。顺而止之。","剥落之象,顺势而止"],[8,4,"地雷复","亨。出入无疾,朋来无咎。","复归之象,一阳来复"],[1,4,"天雷无妄","元亨利贞。其匪正有眚,不利有攸往。","无妄之象,守正勿妄"],[7,1,"山天大畜","利贞。不家食吉,利涉大川。","大蓄之象,厚积薄发"],[7,4,"山雷颐","贞吉。观颐,自求口实。","颐养之象,自养养人"],[2,5,"泽风大过","栋桡,利有攸往,亨。","大过之象,独立不惧"],[6,6,"坎为水","习坎,有孚,维心亨,行有尚。","重险之象,行险守正"],[3,3,"离为火","利贞,亨。畜牝牛吉。","附丽之象,光明相继"],[2,7,"泽山咸","亨,利贞,取女吉。","感应之象,以虚受人"],[4,5,"雷风恒","亨,无咎,贞吉,利有攸往。","恒久之象,守常不易"],[1,7,"天山遁","亨,小利贞。","退避之象,远小人之害"],[4,1,"雷天大壮","利贞。大者壮也。","强盛之象,壮而守正"],[3,8,"火地晋","康侯用锡马蕃庶,昼日三接。","晋升之象,光明上进"],[8,3,"地火明夷","利艰贞。明入地中。","光明受伤,晦而守正"],[5,3,"风火家人","利女贞。","一家之象,各正其位"],[3,2,"火泽睽","小事吉。二女同居,其志不同行。","乖离之象,求同存异"],[6,7,"水山蹇","利西南,不利东北。利见大人,贞吉。","艰难之象,见险知止"],[4,6,"雷水解","利西南。无所往,其来复吉。","解除之象,雷雨作而百果生"],[7,2,"山泽损","有孚,元吉,无咎,可贞,利有攸往。","减损之象,损下益上"],[5,4,"风雷益","利有攸往,利涉大川。","增益之象,损上益下"],[2,1,"泽天夬","扬于王庭,孚号有厉。告自邑,不利即戎。","决断之象,刚决柔也"],[1,5,"天风姤","女壮,勿用取女。","相遇之象,不期而会"],[2,8,"泽地萃","亨。王假有庙,利见大人,亨,利贞。","聚集之象,聚众守正"],[8,5,"地风升","元亨,用见大人,勿恤,南征吉。","上升之象,积小成高"],[2,6,"泽水困","亨,贞,大人吉,无咎,有言不信。","困顿之象,处困守正"],[6,5,"水风井","改邑不改井,无丧无得,往来井井。","井养之象,修己养人"],[2,3,"泽火革","己日乃孚,元亨利贞,悔亡。","变革之象,顺天应人"],[3,5,"火风鼎","元吉,亨。","鼎新之象,正位凝命"],[4,4,"震为雷","亨。震来虩虩,笑言哑哑。","震动之象,恐惧修省"],[7,7,"艮为山","艮其背,不获其身;行其庭,不见其人。","静止之象,安止其所"],[5,7,"风山渐","女归吉,利贞。","渐进之象,循序而行"],[4,2,"雷泽归妹","征凶,无攸利。","归妹之象,不可妄动"],[4,3,"雷火丰","亨,王假之,勿忧,宜日中。","丰盛之象,盛极当惜"],[3,7,"火山旅","小亨,旅贞吉。","行旅之象,柔顺处外"],[5,5,"巽为风","小亨,利有攸往,利见大人。","顺入之象,谦逊申命"],[2,2,"兑为泽","亨,利贞。","喜悦之象,朋友讲习"],[5,6,"风水涣","亨。王假有庙,利涉大川,利贞。","涣散之象,涣而复合"],[6,2,"水泽节","亨。苦节不可贞。","节制之象,节以制度"],[5,2,"风泽中孚","豚鱼吉,利涉大川,利贞。","诚信之象,信及豚鱼"],[4,7,"雷山小过","亨,利贞。可小事,不可大事。","小过之象,宜下不宜上"],[6,3,"水火既济","亨小,利贞。初吉终乱。","既济之象,守成防乱"],[3,6,"火水未济","亨。小狐汔济,濡其尾,无攸利。","未济之象,事未成而慎行"]],y8=Vf.map(([t,e,i,s,r])=>({up:t,down:e,name:i,ci:s,xiang:r})),Oi={};y8.forEach(t=>{Oi[t.up*10+t.down]=t});const eE={};y8.forEach(t=>{eE[t.name]=t});function tE({onDivine:t}){const[e,i]=v.useState("time"),[s,r]=v.useState(3),[c,o]=v.useState(7),[d,g]=v.useState(5),[f,E]=v.useState(""),[F,x]=v.useState("other"),A=()=>t({mode:e,n1:s,n2:c,n3:d,now:new Date().toISOString()},void 0,f.trim());return a.jsxs(a.Fragment,{children:[a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"mh-mode",children:"起卦之法"}),a.jsx(g1,{id:"mh-mode",value:e,options:[{value:"time",label:"时间起卦(以当下年月日时)"},{value:"num",label:"报数起卦(默念所问,取三数)"}],onChange:y=>i(y)})]}),e==="num"?a.jsxs("div",{className:"field-row",children:[a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"mh-n1",children:"一数"}),a.jsx("input",{className:"input-line",type:"number",id:"mh-n1",min:1,max:999,value:s,onChange:y=>r(Number(y.target.value))})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"mh-n2",children:"二数"}),a.jsx("input",{className:"input-line",type:"number",id:"mh-n2",min:1,max:999,value:c,onChange:y=>o(Number(y.target.value))})]})]}):null,a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"mh-n3",children:"三数(动爻)"}),a.jsx("input",{className:"input-line",type:"number",id:"mh-n3",min:1,max:999,value:d,onChange:y=>g(Number(y.target.value))})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"mh-qtype",children:"所问之属"}),a.jsx(g1,{id:"mh-qtype",value:F,options:[{value:"love",label:"情感姻缘"},{value:"career",label:"事业学业"},{value:"wealth",label:"财运投资"},{value:"health",label:"健康"},{value:"travel",label:"出行方位"},{value:"lost",label:"寻物"},{value:"decision",label:"抉择决策"},{value:"other",label:"其他"}],onChange:x})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"q-input",children:"所问之事"}),a.jsx("input",{className:"input-line",id:"q-input",placeholder:"默念所问,书之于此…",maxLength:60,value:f,onChange:y=>E(y.target.value)})]}),a.jsxs("button",{className:"btn-divine",onClick:A,children:["起 卦",a.jsx("span",{className:"small",children:"定本卦 · 推互变 · 辨体用"})]})]})}function nE({yaos:t}){return a.jsx("div",{className:"yao-glyph",style:{display:"flex",flexDirection:"column",gap:"3px",alignItems:"center"},children:t.map((e,i)=>e?a.jsx("span",{className:"yang",style:{display:"block",width:"2.6rem",height:".55rem",background:"var(--ink)",borderRadius:"1px"}},i):a.jsx("span",{className:"yin",style:{display:"block",width:"2.6rem",height:".55rem",borderTop:"1.5px solid var(--ink)",borderBottom:"1.5px solid var(--ink)"}},i))})}function D8({data:t}){const e=t,i=s=>s!==void 0&&Qt[s]?Qt[s].name:"—";return a.jsxs(a.Fragment,{children:[a.jsx(H0,{title:`起卦 · ${e.benGua.name}`,cells:[{k:"上卦 · "+i(e.upper),v:Qt[e.upper].symbol,big:!0},{k:"下卦 · "+i(e.lower),v:Qt[e.lower].symbol,big:!0},{k:"动爻",v:"第 "+e.move+" 爻",big:!0,hot:!0}],children:a.jsxs("p",{children:["本卦 ",a.jsx("strong",{children:e.benGua.name}),":",e.benGua.xiang,"。动而观变,",e.bianGua.name,"为演进之端。"]})}),a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"本卦 · 互卦 · 变卦"}),a.jsxs("div",{className:"result-grid",style:{marginTop:"1rem"},children:[a.jsxs("div",{className:"result-cell",children:[a.jsxs("div",{className:"k",children:["本卦 · ",e.benGua.name]}),a.jsx(nE,{yaos:e.benYao}),a.jsx("div",{className:"tiny muted mt-1",children:e.benGua.ci})]}),a.jsxs("div",{className:"result-cell",children:[a.jsxs("div",{className:"k",children:["互卦 · ",e.huGua?e.huGua.name:"—"]}),a.jsx("div",{className:"tiny muted mt-1",children:"中四爻交互之象"}),a.jsx("div",{className:"tiny muted mt-1",children:e.huGua?e.huGua.xiang:""})]}),a.jsxs("div",{className:"result-cell",children:[a.jsxs("div",{className:"k",children:["变卦 · ",e.bianGua.name]}),a.jsx("div",{className:"tiny muted mt-1",children:"动爻变后之象"}),a.jsx("div",{className:"tiny muted mt-1",children:e.bianGua.xiang})]})]})]}),a.jsxs(H0,{title:"体用生克",children:[a.jsxs("p",{children:["体卦为 ",a.jsxs("strong",{children:[i(e.tiGua),Qt[e.tiGua].symbol]}),"(",e.tiWx,",主事主自身),用卦为 ",a.jsxs("strong",{children:[i(e.yongGua),Qt[e.yongGua].symbol]}),"(",e.yongWx,",主所问之事)。"]}),a.jsxs("p",{children:["体用之间:",a.jsx("span",{className:e.shengke.includes("吉")?"tag-cool":e.shengke.includes("凶")?"tag-hot":"",children:a.jsx("strong",{children:e.shengke})}),"。",e.shengke.includes("生")?"生者如风送帆,事有助力;":e.shengke.includes("克")?"克者如舟行逆水,宜缓宜守;":"比和者势均,事在人为。"]})]}),a.jsxs(H0,{title:`卦辞指引 · ${e.benGua.name}`,children:[a.jsxs("p",{children:["「",e.benGua.ci,"」"]}),a.jsx("p",{children:e.benGua.xiang}),a.jsxs("p",{className:"mt-2",children:[a.jsx("strong",{children:"占断参详:"}),iE(e)]})]})]})}function iE(t){const e=[];return e.push("此卦动于第"+t.move+"爻,"+(t.move<=3?"动在下卦,所问之事多系于内、关于自身之念":"动在上卦,所问之事多系于外、关于彼方之势")+"。"),t.shengke.includes("吉")?e.push("体用之间"+t.shengke+",事有助力,宜顺势推进,但不可恃势而骄。"):t.shengke.includes("凶")?e.push("体用之间"+t.shengke+",事有阻力,宜缓图慎行,先安己而后谋事。"):e.push("体用比和,"+t.shengke+",事在人为,成败系于一心之诚。"),t.bianGua&&e.push("变卦"+t.bianGua.name+"为事之归趋,其象「"+t.bianGua.xiang+"」,可作收束之鉴。"),e.join("")}function uE({onDivine:t}){const[e,i]=v.useState(""),[s,r]=v.useState("other"),c=()=>t({},void 0,e.trim());return a.jsxs(a.Fragment,{children:[a.jsx("p",{className:"small muted",style:{marginTop:".6rem",lineHeight:2},children:"默念所问之事,静心片刻。以三枚铜钱掷之,共六次,自下而上成卦。"}),a.jsxs("div",{className:"coins","aria-hidden":"true",style:{padding:"var(--sp-3) 0"},children:[a.jsx("div",{className:"coin",children:a.jsxs("span",{className:"face",children:["宋",a.jsx("br",{}),"通宝"]})}),a.jsx("div",{className:"coin",children:a.jsxs("span",{className:"face",children:["宋",a.jsx("br",{}),"通宝"]})}),a.jsx("div",{className:"coin",children:a.jsxs("span",{className:"face",children:["宋",a.jsx("br",{}),"通宝"]})})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"ly-qtype",children:"所问之属"}),a.jsx(g1,{id:"ly-qtype",value:s,options:[{value:"love",label:"情感姻缘"},{value:"career",label:"事业学业"},{value:"wealth",label:"财运投资"},{value:"health",label:"健康"},{value:"travel",label:"出行方位"},{value:"lost",label:"寻物"},{value:"decision",label:"抉择决策"},{value:"other",label:"其他"}],onChange:r})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"q-input",children:"所问之事"}),a.jsx("input",{className:"input-line",id:"q-input",placeholder:"默念所问,书之于此…",maxLength:60,value:e,onChange:o=>i(o.target.value)})]}),a.jsxs("button",{className:"btn-divine",onClick:c,children:["掷 钱 成 卦",a.jsx("span",{className:"small",children:"六掷成卦 · 观变断象"})]})]})}const sE=["初爻","二爻","三爻","四爻","五爻","上爻"];function A8({data:t}){const e=t;return a.jsxs(a.Fragment,{children:[a.jsx(H0,{title:e.dongYao.length?`${e.dongYao.length} 爻发动`:"六爻安静",children:a.jsx("div",{style:{maxWidth:420,margin:"0 auto"},children:e.yao.map((i,s)=>{const r=e.names[s].nm,c=r==="老阴"||r==="老阳";return a.jsxs("div",{className:"yao-row",children:[a.jsx("span",{className:"yao-label",children:sE[s]}),a.jsx("span",{className:"yao-glyph",children:i?a.jsx("span",{className:"yang",style:{display:"block",width:"2.6rem",height:".55rem",background:"var(--ink)",borderRadius:"1px"}}):a.jsx("span",{className:"yin",style:{display:"block",width:"2.6rem",height:".55rem",borderTop:"1.5px solid var(--ink)",borderBottom:"1.5px solid var(--ink)"}})}),a.jsxs("span",{className:"yao-move",children:[c?`${r}${r==="老阳"?"○":"×"} 变`:r,c?a.jsx("span",{className:"dot"}):null]})]},s)})})}),e.najia&&a.jsxs(H0,{title:"纳甲装卦 · "+e.najia.gong+"宫("+e.najia.dayGZ+"日 · "+e.najia.monthZhi+"月建)",children:[a.jsx("div",{style:{maxWidth:420,margin:"0 auto"},children:e.najia.lines.map((i,s)=>a.jsxs("div",{className:"yao-row",style:{fontSize:".88rem"},children:[a.jsxs("span",{className:"yao-label",children:[["初","二","三","四","五","上"][s],"爻",i.isShi?" 世":i.isYing?" 应":""]}),a.jsx("span",{className:"yao-glyph",style:{width:"2.6rem",textAlign:"center"},children:a.jsx("strong",{children:i.gz})}),a.jsxs("span",{className:"yao-move",children:[a.jsx("span",{className:"tag-cool",children:i.liuqin})," ",i.shen,i.kong?" · 旬空":""]})]},s))}),a.jsxs("p",{className:"tiny muted",style:{marginTop:".6rem"},children:["世爻为占事之我,应爻为对方之事:世爻",e.najia.shiLiQin,"。月破地支:",e.najia.yuePo.join("、"),";旬空:",e.najia.xunKong.join("、"),"。 六亲以",e.najia.gong,"宫五行为体——取用神之法:问财取妻财、问官取官鬼、问父母长辈取父母、问子女小辈取子孙、问同侪取兄弟。"]})]}),a.jsxs("div",{className:"result-grid",children:[a.jsxs("div",{className:"result-cell",children:[a.jsx("div",{className:"k",children:"本卦"}),a.jsx("div",{className:"v big",children:e.benGua.name}),a.jsx("div",{className:"tiny muted mt-1",children:e.benGua.xiang})]}),a.jsxs("div",{className:"result-cell",children:[a.jsx("div",{className:"k",children:"变卦"}),a.jsx("div",{className:"v big "+(e.dongYao.length?"hot":""),children:e.bianGua.name}),a.jsx("div",{className:"tiny muted mt-1",children:e.dongYao.length?"动爻之变,事之趋向":"无事不变"})]})]}),a.jsxs(H0,{title:`卦辞 · ${e.benGua.name}`,className:"mt-3",children:[a.jsxs("p",{children:["「",e.benGua.ci,"」"]}),a.jsxs("p",{children:[e.benGua.xiang,"。",e.dongYao.length?`今有 ${e.dongYao.map(i=>"第"+i+"爻").join("、")} 发动,${e.bianGua.name}为事之归趋;动而变者,其势在「${e.bianGua.xiang}」。`:"六爻安静,事依现局而行,宜守其常。"]}),a.jsxs("p",{className:"mt-2",children:[a.jsx("strong",{children:"爻位参详:"}),rE(e.dongYao)]})]})]})}function rE(t){if(t.length===0)return"六爻皆静,事在当下,宜守成观察,不轻动。";const e={1:"初爻发动——事发于微,根基初动,宜察其始。",2:"二爻发动——事涉自身与内宅,宜安内而后攘外。",3:"三爻发动——事逢转折关口,多劳多思,宜慎择。",4:"四爻发动——事近上层或外局,进退之间,宜度势。",5:"五爻发动——事居中枢,主事者之决断,宜当机立断。",6:"上爻发动——事已至末,宜知止知足,防盛极而衰。"};return t.map(i=>e[i]||"").join("")}const aE=[["登明","亥"],["河魁","戌"],["从魁","酉"],["传送","申"],["小吉","未"],["胜光","午"],["太乙","巳"],["天罡","辰"],["太冲","卯"],["功曹","寅"],["大吉","丑"],["神后","子"]],X7=[["雨水",2,19,"亥"],["春分",3,21,"戌"],["谷雨",4,20,"酉"],["小满",5,21,"申"],["夏至",6,21,"未"],["大暑",7,23,"午"],["处暑",8,23,"巳"],["秋分",9,23,"辰"],["霜降",10,23,"卯"],["小雪",11,22,"寅"],["冬至",12,22,"丑"],["大寒",1,20,"子"]],lE={甲:"寅",乙:"辰",丙:"巳",丁:"未",戊:"巳",己:"未",庚:"申",辛:"戌",壬:"亥",癸:"丑"},J7={亥:"猪",戌:"犬",酉:"鸡",申:"猴",未:"羊",午:"马",巳:"蛇",辰:"龙",卯:"兔",寅:"虎",丑:"牛",子:"鼠"},oE={亥:"水",戌:"土",酉:"金",申:"金",未:"土",午:"火",巳:"火",辰:"土",卯:"木",寅:"木",丑:"土",子:"水"};function cE(t){const e=t instanceof Date?t:new Date(t),i=e.getFullYear(),s=e.getMonth()+1,r=e.getDate(),c=e.getHours(),o=Math.floor((c+1)%24/2),d=r0(H3(i,s,r)+55,60),g=a1[d%10]+Q0[d%12],f=a1.indexOf(g[0]),E=r0(f%5*2+o,10),F=a1[E]+Q0[o],x=s*100+r;let A="丑";if(x>=120&&x<219)A="子";else if(x>=219)for(let P=X7.length-2;P>=0;P--){const[,g0,m0,j0]=X7[P];if(x>=g0*100+m0){A=j0;break}}const y=Q0.indexOf(A),B=Xl(i,s,r),_={};for(let P=0;P<12;P++)_[r0(o+P,12)]=Q0[r0(y+P,12)];const S=lE[g[0]],M=_[Q0.indexOf(S)],Y=_[Q0.indexOf(M)],z=_[Q0.indexOf(g[1])],T=_[Q0.indexOf(z)],W=M,X=Y,Z=z,$={甲:["丑","未"],戊:["丑","未"],庚:["丑","未"],乙:["子","申"],己:["子","申"],丙:["亥","酉"],丁:["亥","酉"],壬:["卯","巳"],癸:["卯","巳"],辛:["午","寅"]},e0=o>=2&&o<8,q=($[g[0]]||["丑","未"])[e0?0:1],c0=["贵人","螣蛇","朱雀","六合","勾陈","青龙","天空","白虎","太常","玄武","太阴","天后"],b=Q0.indexOf(q),u0=_[b],d0=Q0.indexOf(u0),E0=[10,11,0,1,2,3].includes(d0),i0={};for(let P=0;P<12;P++){const g0=E0?P:-P;i0[r0(d0+g0,12)]=c0[P]}const K=[W,X,Z].map(P=>{const g0=Q0.indexOf(P);return{chuan:P,jiang:i0[g0]||""}}),h0=Q0[o];let G="常课";return A===h0?G="伏吟课":r0(Q0.indexOf(A)-o,12)===6&&(G="反吟课"),{dayGZ:g,hourGZ:F,jiang:A,jqName:B,tianpan:_,ganJi:S,ke1:M,ke2:Y,ke3:z,ke4:T,chuan1:W,chuan2:X,chuan3:Z,guiRen:q,isDay:e0,tianJiang:i0,chuanJiang:K,keti:G,ketiNote:G==="伏吟课"?"天地盘同位,诸事迟滞反复,宜静待其变,不宜躁进。":G==="反吟课"?"天地盘相冲,事有反复翻覆,来去无常,宜缓不宜急。":"四课三传乘常气,事机明朗,顺其自然即可。"}}const nr=t=>{const e=aE.find(i=>i[1]===t);return e?e[0]:t},hE=["问出行","问财利","问讼事","问姻缘","问疾病","问失物","问家宅","其他"];function dE(){const t=new Date,e=i=>String(i).padStart(2,"0");return`${t.getFullYear()}-${e(t.getMonth()+1)}-${e(t.getDate())}T${e(t.getHours())}:${e(t.getMinutes())}`}function gE({onDivine:t}){const[e,i]=v.useState(dE()),[s,r]=v.useState("问出行"),[c,o]=v.useState(""),d=()=>t({datetime:e},void 0,c.trim());return a.jsxs(a.Fragment,{children:[a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"lr-datetime",children:"占时(公历)"}),a.jsx("input",{className:"input-line",type:"datetime-local",id:"lr-datetime",value:e,onChange:g=>i(g.target.value)})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"lr-q",children:"所占之属"}),a.jsx(g1,{id:"lr-q",value:s,options:hE.map(g=>({value:g,label:g})),onChange:r})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"q-input",children:"所占之事"}),a.jsx("input",{className:"input-line",id:"q-input",placeholder:"默念所问,书之于此…",maxLength:60,value:c,onChange:g=>o(g.target.value)})]}),a.jsxs("button",{className:"btn-divine",onClick:d,children:["起 课",a.jsx("span",{className:"small",children:"立天地盘 · 布四课 · 取三传"})]}),a.jsx("p",{className:"hint",style:{marginTop:".8rem"},children:"月将随太阳过宫(中气定将);简式取传。"})]})}function B8({data:t}){const e=t;return a.jsxs(a.Fragment,{children:[a.jsx(H0,{title:`${e.jqName} · ${nr(e.jiang)}(${e.jiang})加 ${e.hourGZ[1]}时`,children:a.jsxs("p",{children:["日干 ",a.jsx("strong",{children:e.dayGZ}),",占时 ",a.jsx("strong",{children:e.hourGZ}),"(",e.hourGZ[1],"时)。月将 ",a.jsx("strong",{children:nr(e.jiang)}),"。"]})}),a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"天地盘"}),a.jsx("div",{className:"liuren-stage mt-2",children:Q0.map((i,s)=>{const r=e.tianpan[s];return a.jsxs("div",{className:"liuren-item",children:[a.jsxs("div",{className:"k",children:[i,"宫(",J7[i],")"]}),a.jsxs("div",{className:"v",children:[r,J7[r]]}),a.jsxs("div",{className:"tiny muted",children:[oE[r]," · ",nr(r)]})]},i)})})]}),a.jsxs(H0,{title:"四课三传",cells:[{k:"一课 · 干上",v:e.ke1,big:!0},{k:"二课 · 干阴",v:e.ke2,big:!0},{k:"三课 · 支上",v:e.ke3,big:!0},{k:"四课 · 支阴",v:e.ke4,big:!0}],children:[a.jsxs("p",{children:["三传(简式):",a.jsxs("strong",{className:"tag-hot",children:["初传 ",e.chuan1]})," → ",a.jsxs("strong",{className:"tag-cool",children:["中传 ",e.chuan2]})," → ",a.jsxs("strong",{children:["末传 ",e.chuan3]}),"。"]}),a.jsx("p",{children:"初传为事发之端,中传为事进之中,末传为事成之归。干为外、支为内,四课之内外,即人事之表里。"}),a.jsxs("p",{className:"mt-2",children:[a.jsx("strong",{children:"三传参详:"}),mE(e)]})]})]})}function mE(t){const e={亥:"水",子:"水",寅:"木",卯:"木",巳:"火",午:"火",申:"金",酉:"金",辰:"土",戌:"土",丑:"土",未:"土"},i=[];return i.push("初传"+t.chuan1+"("+(e[t.chuan1]||"")+")为事之始,"+(["水"].includes(e[t.chuan1]||"")?"水主流动,事有周折":e[t.chuan1]==="金"?"金主决断,事起于刚":e[t.chuan1]==="火"?"火主急速,事发于明":e[t.chuan1]==="木"?"木主生发,事起于新":"土主迟重,事起于稳")+"。"),t.chuan1===t.chuan3?i.push("初末同神,事体回环,首尾相应,宜守初心。"):t.chuan2===t.chuan3?i.push("中末同神,事中已定,后续之势多在把握。"):i.push("三传递进,事势渐明,宜循序而行。"),i.push("月将"+t.jiang+"加时,天地盘已定,观其生克以断吉凶。"),i.join("")}const fE={大安:{ji:"吉",wx:"木",num:"一、五、七",dir:"东方",poem:"身不动时,属木青龙,谋事主一、五、七。",text:"大安事事昌,求谋在东方,失物不远去,宅舍保安康。行人身未动,病者主无妨,将军回田野,仔细好推详。"},留连:{ji:"凶",wx:"水",num:"二、八、十",dir:"南方",poem:"卒未归时,属水玄武,谋事主二、八、十。",text:"留连事难成,求谋日未明,官事只宜缓,去者未回程。失物南方见,急讨方称心,更须防口舌,人口且平平。"},速喜:{ji:"吉",wx:"火",num:"三、六、九",dir:"南方",poem:"人即至时,属火朱雀,谋事主三、六、九。",text:"速喜喜来临,求财向南行,失物申未午,逢人路上寻。官事有福德,病者无祸侵,田宅六畜吉,行人有信音。"},赤口:{ji:"凶",wx:"金",num:"四、七、十",dir:"西方",poem:"官事凶时,属金白虎,谋事主四、七、十。",text:"赤口主口舌,官非切要防,失物急去寻,行人有惊慌。鸡犬多作怪,病者出西方,更须防咀咒,恐怕染瘟殃。"},小吉:{ji:"吉",wx:"水",num:"一、五、七",dir:"东北",poem:"人来喜时,属水六合,谋事主一、五、七。",text:"小吉最吉昌,路上好商良,阳人来报喜,失物在坤方。行人立便至,交关真是强,凡事皆和合,病者叩穹苍。"},空亡:{ji:"凶",wx:"土",num:"二、六、九",dir:"西北",poem:"音信稀时,属土勾陈,谋事主二、六、九。",text:"空亡事不长,阴人多乖张,求财无利益,行人有灾殃。失物寻不见,官事主刑伤,病人逢暗鬼,解禳保安康。"}},_r=["大安","留连","速喜","赤口","小吉","空亡"];function EE({onDivine:t}){const[e,i]=v.useState("time"),[s,r]=v.useState(1),[c,o]=v.useState(1),[d,g]=v.useState(1),[f,E]=v.useState(3),[F,x]=v.useState(5),[A,y]=v.useState(7),[B,_]=v.useState(""),[S,M]=v.useState("other"),Y=()=>t({mode:e,m:s,d:c,h:d,n1:f,n2:F,n3:A},void 0,B.trim());return a.jsxs(a.Fragment,{children:[a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"xlr-mode",children:"取数之法"}),a.jsx(g1,{id:"xlr-mode",value:e,options:[{value:"time",label:"以当下农历月、日、时占"},{value:"num",label:"随取三数占(1–12)"}],onChange:z=>i(z)})]}),e==="time"?a.jsxs("div",{className:"field-row",children:[a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"xlr-m",children:"月"}),a.jsx(g1,{id:"xlr-m",value:String(s),options:Array.from({length:12},(z,T)=>({value:String(T+1),label:String(T+1)})),onChange:z=>r(Number(z))})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"xlr-d",children:"日"}),a.jsx(g1,{id:"xlr-d",value:String(c),options:Array.from({length:30},(z,T)=>({value:String(T+1),label:String(T+1)})),onChange:z=>o(Number(z))})]})]}):a.jsxs("div",{className:"field-row",children:[a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"xlr-n1",children:"一数"}),a.jsx("input",{className:"input-line",type:"number",id:"xlr-n1",min:1,max:12,value:f,onChange:z=>E(Number(z.target.value))})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"xlr-n2",children:"二数"}),a.jsx("input",{className:"input-line",type:"number",id:"xlr-n2",min:1,max:12,value:F,onChange:z=>x(Number(z.target.value))})]})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"xlr-h",children:"时(时辰序)"}),a.jsx(g1,{id:"xlr-h",value:String(d),options:["子(1)","丑(2)","寅(3)","卯(4)","辰(5)","巳(6)","午(7)","未(8)","申(9)","酉(10)","戌(11)","亥(12)"].map((z,T)=>({value:String(T+1),label:z})),onChange:z=>g(Number(z))})]}),e==="num"&&a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"xlr-n3",children:"三数"}),a.jsx("input",{className:"input-line",type:"number",id:"xlr-n3",min:1,max:12,value:A,onChange:z=>y(Number(z.target.value))})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"xlr-qtype",children:"所问之属"}),a.jsx(g1,{id:"xlr-qtype",value:S,options:[{value:"love",label:"情感姻缘"},{value:"career",label:"事业学业"},{value:"wealth",label:"财运投资"},{value:"health",label:"健康"},{value:"travel",label:"出行方位"},{value:"lost",label:"寻物"},{value:"decision",label:"抉择决策"},{value:"other",label:"其他"}],onChange:M})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"q-input",children:"所问之事"}),a.jsx("input",{className:"input-line",id:"q-input",placeholder:"默念所问,书之于此…",maxLength:60,value:B,onChange:z=>_(z.target.value)})]}),a.jsxs("button",{className:"btn-divine",onClick:Y,children:["掐 指 一 算",a.jsx("span",{className:"small",children:"大安起月 · 月上起日 · 日上起时"})]})]})}function j8({data:t}){const e=t,i=e.detail.ji==="吉"?"tag-cool":"tag-hot",s=r0(e.a-1,6),r=r0(s+(e.b-1),6);return a.jsxs(a.Fragment,{children:[a.jsxs(H0,{title:`掌诀 · ${e.name}`,cells:[{k:"吉凶",v:e.detail.ji,big:!0,cool:e.detail.ji==="吉",hot:e.detail.ji!=="吉"},{k:"五行",v:e.detail.wx},{k:"主数",v:e.detail.num},{k:"方位",v:e.detail.dir}],children:[a.jsxs("p",{children:[a.jsx("span",{className:i,children:a.jsx("strong",{children:e.name})})," · ",e.detail.poem]}),a.jsxs("p",{children:["「",e.detail.text,"」"]})]}),a.jsxs(H0,{title:"推演轨迹",children:[a.jsxs("p",{children:[e.a," 月 ",e.b," 日 ",e.c," 时占:大安起月 → 月",e.a,"落 ",a.jsx("strong",{children:_r[s]})," → 日",e.b,"落 ",a.jsx("strong",{children:_r[r]})," → 时",e.c,"终落 ",a.jsx("strong",{className:i,children:e.name}),"。"]}),a.jsxs("p",{className:"mt-2",children:[a.jsx("strong",{children:"断语参详:"}),FE(e)]})]})]})}function FE(t){const e=t.detail,i=[];return i.push("此占得"+t.name+",为"+(e.ji==="吉"?"吉占":"凶占")+"。"),e.ji==="吉"?i.push("主数"+e.num+"、方位"+e.dir+",谋事于"+e.dir+"向或"+e.num.replace(/、/g,"、")+"之数日时,多有应合。"):i.push("此占宜静不宜动,避"+e.dir+"向之事,慎口舌之争;事缓则圆,过此一时再图。"),i.push("五行属"+e.wx+","+(e.wx==="火"?"火性急,事可速决":e.wx==="水"?"水性流,事有迁延":e.wx==="木"?"木性生,事有转机":e.wx==="金"?"金性刚,事须决断":"土性厚,事在积累")+"。"),i.join("")}function pE({onDivine:t}){const e=k1(),i=e==null?void 0:e.profile,[s,r]=v.useState((i==null?void 0:i.birthDate)||"1990-06-15"),[c,o]=v.useState(()=>{const B=((i==null?void 0:i.birthHourIndex)??4)*2;return String(B).padStart(2,"0")+":30"}),[d,g]=v.useState((i==null?void 0:i.location)||null),[f,E]=v.useState((i==null?void 0:i.gender)||"男"),[F,x]=v.useState(null),A=i&&s===i.birthDate&&f===i.gender,y=()=>{const[B,_,S]=s.split("-").map(Number),[M,Y]=c.split(":").map(Number);if(!B||!_||!S)return;const z=Math.floor(((M||0)+1)%24/2),T={birthDate:s,birthTime:c,birthHourIndex:z,gender:f,location:d};t({y:B,m:_,d:S,hour:M||0,min:Y||0,lng:d==null?void 0:d.lng,lat:d==null?void 0:d.lat},T,void 0,(F==null?void 0:F.id)||"main")};return a.jsxs(a.Fragment,{children:[a.jsx(Ea,{onPick:(B,_)=>{r(B.birthDate),o(B.birthTime||"08:30"),E(B.gender),g(B.location),_&&x(_)}}),e&&A&&a.jsx("p",{className:"hint",style:{color:"var(--celadon-deep)",marginTop:"var(--sp-2)"},children:"已依主档案预填(可改,改后以所书为准)"}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"as-date",children:"出生日期(公历 / 农历)"}),a.jsx(iu,{id:"as-date",value:s,onChange:r})]}),a.jsxs("div",{className:"field-row",children:[a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"as-hour",children:"出生时刻"}),a.jsx("input",{className:"input-line",type:"time",id:"as-hour",value:c,onChange:B=>o(B.target.value)})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"as-gender",children:"性别"}),a.jsx(g1,{id:"as-gender",value:f,options:[{value:"男",label:"男"},{value:"女",label:"女"}],onChange:B=>E(B)})]})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{children:"出生地点(上升点需经纬度)"}),a.jsx(nu,{value:d,onChange:g})]}),a.jsxs("button",{className:"btn-divine",onClick:y,children:["布 星 图",a.jsx("span",{className:"small",children:"推行星黄经 · 布十二宫"})]}),a.jsx("p",{className:"hint",style:{marginTop:".8rem"},children:"行星位置采用简略天文近似(平均运动),上升点按本地恒星时 LST 推算,宫位取整宫制,仅供怡情。"})]})}function v8({data:t}){var f;const e=t,i=Math.floor(r0(e.asc,360)/30),s=Math.floor(e.sun/30),r=Math.floor(e.moon/30),c=e.planets.map(([E,F,x])=>{const A=Math.floor(r0(x,360)/30),y=r0(x,30);return{name:E,sym:F,s:A,deg:y}}),o=(e.planetDetails||[]).map(E=>a.jsxs("div",{className:"result-cell",children:[a.jsxs("div",{className:"k",children:[E.cn," ",E.sym," ",E.retrograde?"· 逆行":""]}),a.jsxs("div",{className:"v",children:[E.sign," ",E.degree.toFixed(1),"°"]}),a.jsxs("div",{className:"tiny",children:["落",E.house,"宫",E.dignity.status?" · "+E.dignity.status:""]}),E.dignity.note&&a.jsx("div",{className:"tiny muted",children:E.dignity.note})]},E.cn)),d=(e.houses||[]).map(E=>a.jsxs("div",{className:"result-cell",children:[a.jsxs("div",{className:"k",children:[E.num,"宫"]}),a.jsx("div",{className:"v",children:E.sign}),a.jsxs("div",{className:"tiny",children:["宫主 ",E.ruler]})]},E.num)),g=e.aspects.length?e.aspects.map((E,F)=>a.jsxs("p",{children:[a.jsx("strong",{children:E[0]})," 与 ",a.jsx("strong",{children:E[1]})," 成 ",a.jsx("span",{className:"tag-cool",children:E[2]})," —— ",E[3]]},F)):a.jsx("p",{children:"诸星无显著相位,气机平和。"});return a.jsxs(a.Fragment,{children:[a.jsxs(H0,{title:"命盘之纲",children:[a.jsxs("p",{children:["上升 ",a.jsx("strong",{children:Ee[i][0]})," ",r0(e.asc,30).toFixed(1),"°(本地恒星时 ",e.lstHours.toFixed(2),"h),中天 ",a.jsx("strong",{children:Ee[Math.floor((e.mc??0)/30)][0]}),",太阳落 ",a.jsx("strong",{children:Ee[s][0]}),",月亮落 ",a.jsx("strong",{children:Ee[r][0]}),"。"]}),a.jsxs("p",{className:"tiny muted",children:["回归黄道(Tropical)· VSOP87 精确星历 · 黄赤交角 ",(f=e.epsilon)==null?void 0:f.toFixed(2),"° · 宫位整宫制"]}),a.jsx("p",{children:"太阳主自我之核,月亮主情感之底,上升主处世之貌。三者为命盘之纲。"})]}),a.jsx(H0,{title:"行星经纬",cells:c.map(E=>({k:`${E.name} ${E.sym}`,v:`${Ee[E.s][2]} ${Ee[E.s][0]}座 ${E.deg.toFixed(1)}°`})),children:c.map(E=>a.jsx("p",{className:"tiny muted",children:Lm[Ee[E.s][0]]},E.name))}),a.jsxs(H0,{title:"行星入宫 · 庙旺 · 逆行",children:[a.jsx("div",{className:"result-grid",style:{gridTemplateColumns:"repeat(auto-fit,minmax(150px,1fr))"},children:o}),a.jsx("p",{className:"tiny muted",style:{marginTop:".6rem"},children:"庙=本垣力量最显,旺=擢升助力显著,陷/弱=力量受抑;逆行行星主内省与回炉,其宫位事务易有反复。"})]}),a.jsx(H0,{title:"相位经纬",children:g}),a.jsxs(H0,{title:"行星落宫参详",children:[e.planets.map(E=>{const F=Math.floor(r0(E[2],360)/30),x=r0(F-i+12,12);return a.jsxs("p",{children:[a.jsx("strong",{children:E[0]}),"落",x+1,"宫(",z7[x],")· ",Ee[F][0],"座 —— ",CE(E[0],x)]},E[0])}),a.jsx("p",{className:"tiny muted",children:"整宫制推演,行星入宫主人生领域之侧重;仅供怡情。"})]}),a.jsxs(H0,{title:"十二宫位(整宫制)",children:[a.jsx("p",{children:z7.map((E,F)=>a.jsxs("span",{children:[a.jsx("strong",{children:E}),"·",Ee[r0(i+F,12)][0]," "]},E))}),a.jsx("div",{className:"result-grid",style:{gridTemplateColumns:"repeat(auto-fit,minmax(120px,1fr))",marginTop:".7rem"},children:d}),a.jsx("p",{className:"mt-1",children:"命宫即上升所落之座,为一生行运之门户;宫主星为该宫头星座之古典守护星(不含三王星)。Placidus 宫位制在迭代计划中。"})]})]})}function CE(t,e){const i=["自我形象与人生方向之所在","财帛运用与价值感之来源","思维沟通与手足同侪之域","家宅根基与内在安全之锚","才艺表现与恋爱子女之场","日常工作与身体康健之务","姻缘伴侣与合伙共事之缘","深渊转化与共享资源之秘","远行求学与信念追寻之路","事业名位与社会形象之台","交友结社与理想愿景之圈","潜意识与灵性安顿之隅"];return({太阳:"光芒所注,此生着力之处",月亮:"情感所依,心境冷暖之枢",水星:"思虑所驰,学习表达之道",金星:"喜恶所向,审美人际之趣",火星:"行动所向,冲劲释放之径",木星:"幸运所至,成长拓展之门",土星:"功课所在,磨砺成就之石"}[t]||"此星行运")+",落于"+i[e]+"。"}const xE=[["愚者","The Fool","0","新的开始,赤诚无惧","轻率冒进,需防不测"],["魔术师","The Magician","Ⅰ","万事俱备,主动创造","空有巧言,志大才疏"],["女祭司","The High Priestess","Ⅱ","静观内省,直觉为引","心绪不宁,忽略心声"],["皇后","The Empress","Ⅲ","丰饶滋养,温情守成","过度依赖,失去自我"],["皇帝","The Emperor","Ⅳ","秩序权威,稳如磐石","刚愎自用,压迫过甚"],["教皇","The Hierophant","Ⅴ","师道传承,循规蹈矩","固步自封,迷信权威"],["恋人","The Lovers","Ⅵ","因缘和合,抉择真心","摇摆不定,两难纠缠"],["战车","The Chariot","Ⅶ","意志坚定,克敌制胜","方向迷失,欲速不达"],["力量","Strength","Ⅷ","以柔克刚,心怀慈悲","外强中干,情绪失控"],["隐士","The Hermit","Ⅸ","独行求索,内观得光","孤僻避世,灯下黑处"],["命运之轮","Wheel of Fortune","Ⅹ","时来运转,顺势而为","逆势而行,运去如山"],["正义","Justice","Ⅺ","明辨是非,因果自承","偏颇失衡,判而不公"],["倒吊人","The Hanged Man","Ⅻ","换位而思,以退为进","徒劳挣扎,自缚其身"],["死神","Death","XIII","旧我蜕去,置之死地","抗拒变化,僵而不化"],["节制","Temperance","XIV","中和之道,细水长流","过犹不及,失却分寸"],["恶魔","The Devil","XV","欲望枷锁,直面其缚","沉沦诱惑,作茧自缚"],["高塔","The Tower","XVI","骤变破立,否极泰来","自毁根基,殃及池鱼"],["星星","The Star","XVII","希望如泉,静待天明","希望渺茫,心灰意冷"],["月亮","The Moon","XVIII","迷雾幻影,信直觉行","自欺欺人,暗潮汹涌"],["太阳","The Sun","XIX","光明坦途,赤子之心","骄阳过盛,乐极生悲"],["审判","Judgement","XX","觉醒回响,往事如鉴","逃避清算,旧账难翻"],["世界","The World","XXI","圆满成就,归于一统","功亏一篑,未竟全功"]],wi={权杖:{e:"火",mean:"行动 · 意志 · 热情"},圣杯:{e:"水",mean:"情感 · 关系 · 直觉"},宝剑:{e:"风",mean:"思虑 · 冲突 · 决断"},钱币:{e:"土",mean:"物质 · 事业 · 收获"}},yE={1:"开端之机",2:"权衡之局",3:"萌芽之聚",4:"安定之基",5:"中道之争",6:"馈赠之得",7:"坚守之成",8:"推进之势",9:"独处之思",10:"圆满之极"},W7={侍从:"初学 · 讯息 · 探问",骑士:"奔赴 · 行动 · 挑战",王后:"滋养 · 内在 · 承接",国王:"统御 · 外显 · 成就"};function DE(){const t=[];return xE.forEach(e=>t.push({name:e[0],en:e[1],num:e[2],up:e[3],rev:e[4],major:!0})),Object.keys(wi).forEach(e=>{const i={权杖:"谋事主动,进取之机",圣杯:"情感流动,心之所向",宝剑:"思虑交锋,慎言决断",钱币:"落地生根,务实之得"};for(let s=1;s<=10;s++)t.push({name:e+s,en:e+" "+s,up:i[e]+" · "+yE[s],rev:i[e]+" · 此数未成",major:!1,suit:e,num:String(s)});Object.keys(W7).forEach(s=>{t.push({name:e+s,en:e+" "+s,up:wi[e].mean+" · "+W7[s],rev:wi[e].mean+" · 此位未稳",major:!1,suit:e,num:s})})}),t}function AE(t,e=Math.random){const i=DE(),s=[];for(;s.length<t;){const r=Math.floor(e()*i.length),c=i.splice(r,1)[0];s.push({...c,reversed:e()<.5})}return s}const BE=[{id:"one",name:"单张 · 今日之示",description:"抽取单张,取当下之象",positions:[{id:0,name:"今日之示",description:"当下之象"}]},{id:"three",name:"三张 · 过去当下未来",description:"经典时间线",positions:[{id:0,name:"过去之象",description:"事情的根源与铺垫"},{id:1,name:"当下之境",description:"此刻的核心状况"},{id:2,name:"未来之趋",description:"自然趋势与方向"}]},{id:"two-options",name:"二选一",description:"两个选择对比",positions:[{id:0,name:"选项甲",description:"第一个选择的能量"},{id:1,name:"选项乙",description:"第二个选择的能量"}]},{id:"mind-body",name:"身 · 心 · 灵",description:"三个层面观照内在",positions:[{id:0,name:"身体",description:"身体层面之需"},{id:1,name:"心智",description:"思维与情绪之课"},{id:2,name:"灵性",description:"灵魂与高我之引"}]},{id:"problem",name:"问题 · 障碍 · 建议 · 结果",description:"四张看清一件事",positions:[{id:0,name:"问题本质",description:"这件事的核心"},{id:1,name:"主要障碍",description:"阻碍的能量"},{id:2,name:"建议行动",description:"可为之径"},{id:3,name:"可能结果",description:"顺势之归"}]},{id:"celtic",name:"凯尔特十字(十张)",description:"深入全局之阵",positions:[{id:0,name:"现况",description:"当下的中心"},{id:1,name:"助力",description:"当下之助力"},{id:2,name:"根基",description:"潜藏之基"},{id:3,name:"已逝",description:"渐远的过去"},{id:4,name:"将至",description:"渐近的未来"},{id:5,name:"所惧",description:"心中的顾虑"},{id:6,name:"己身",description:"自身之态度"},{id:7,name:"环境",description:"外在之环境"},{id:8,name:"期望",description:"亲友之期望"},{id:9,name:"终局",description:"大势之归"}]}],pa="guanwei_custom_tarot_spreads";function Pi(){try{const t=localStorage.getItem(pa);return t?JSON.parse(t):[]}catch{return[]}}function jE(t){const e=Pi(),i=e.findIndex(s=>s.id===t.id);i>=0?e[i]=t:e.push(t),localStorage.setItem(pa,JSON.stringify(e))}function $7(t){localStorage.setItem(pa,JSON.stringify(Pi().filter(e=>e.id!==t)))}function Sr(){return[...BE,...Pi()]}function vE({onDivine:t}){const[e,i]=v.useState(""),[s,r]=v.useState("other"),c=Sr(),[o,d]=v.useState("three"),g=c.find(E=>E.id===o)||c[0],f=()=>t({spread:g.id,n:g.positions.length},void 0,e.trim());return a.jsxs(a.Fragment,{children:[a.jsx("p",{className:"small muted",style:{marginTop:".6rem",lineHeight:2},children:"静思所问,心中默念。洗牌之后,凭直觉取牌。"}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"tarot-qtype",children:"所问之属"}),a.jsx(g1,{id:"tarot-qtype",value:s,options:[{value:"love",label:"情感姻缘"},{value:"career",label:"事业学业"},{value:"wealth",label:"财运投资"},{value:"health",label:"健康"},{value:"travel",label:"出行方位"},{value:"lost",label:"寻物"},{value:"decision",label:"抉择决策"},{value:"other",label:"其他"}],onChange:r})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"q-input",children:"所问之事"}),a.jsx("input",{className:"input-line",id:"q-input",placeholder:"默念所问,书之于此…",maxLength:60,value:e,onChange:E=>i(E.target.value)})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{htmlFor:"tarot-spread",children:"牌阵"}),a.jsx(g1,{id:"tarot-spread",value:o,options:c.map(E=>({value:E.id,label:E.name+" · "+E.positions.length+"张"})),onChange:d}),a.jsx("span",{className:"hint",children:g.description})]}),a.jsxs("button",{className:"btn-divine",onClick:f,children:["洗 牌 抽 牌",a.jsx("span",{className:"small",children:"静心默问 · 凭心取牌"})]}),a.jsx("div",{className:"mt-2",style:{textAlign:"center"},children:a.jsx(L0,{className:"tiny muted",to:"/spread-editor",style:{letterSpacing:".15em"},children:"自 创 牌 阵 ›"})})]})}function _8({data:t}){const{spread:e,cards:i}=t,[s,r]=v.useState(i.map(()=>!1)),c=d=>r(g=>g.map((f,E)=>E===d?!0:f)),o=s.every(Boolean);return a.jsxs(a.Fragment,{children:[a.jsx(H0,{title:`洗牌 · 抽牌 · 翻牌 · ${e.name}`,children:a.jsxs("p",{children:[e.description," —— 凭心取 ",i.length," 张,点击牌面翻启。"]})}),a.jsx("div",{className:"tarot-stage",children:a.jsx("div",{className:"tarot-fan",style:{flexWrap:i.length>5?"wrap":"nowrap",maxWidth:i.length>5?520:void 0,gap:i.length>5?"1.2rem":"2px"},children:i.map((d,g)=>{var f;return a.jsxs("div",{className:"tarot-slot",children:[a.jsx("button",{className:"tarot-card "+(s[g]?"revealed picked":"face-down"),onClick:()=>c(g),"aria-label":"翻牌 "+d.name,children:a.jsxs("div",{className:"card-inner",children:[a.jsx("span",{className:"en",children:d.en}),a.jsx("span",{className:"sigil",children:d.major?d.num??"":d.suit?d.suit[0]:""}),a.jsx("span",{className:"cn",children:d.name}),a.jsx("span",{className:"en",children:d.reversed?"逆位":"正位"})]})}),a.jsx("span",{className:"slot-label",children:((f=e.positions[g])==null?void 0:f.name)||"位"+(g+1)})]},g)})})}),a.jsxs(H0,{title:"牌阵之示",children:[i.map((d,g)=>{const f=e.positions[g];return s[g]?a.jsxs("p",{children:[a.jsx("strong",{children:(f==null?void 0:f.name)||"位"+(g+1)})," · ",d.name,"(",d.reversed?"逆位":"正位","):",d.reversed?d.rev:d.up,d.suit?` · ${wi[d.suit].e} · ${wi[d.suit].mean}`:""]},g):a.jsxs("p",{className:"muted",children:[a.jsx("strong",{children:(f==null?void 0:f.name)||"位"+(g+1)})," —— ",a.jsx("span",{className:"tiny",children:"牌未翻启,静候君手"})]},g)}),o&&a.jsxs(a.Fragment,{children:[a.jsxs("p",{className:"mt-2",children:[a.jsx("strong",{children:"全阵参详:"}),_E(i)]}),a.jsx("p",{children:"塔罗非断命之器,乃照心之镜。观照自身,反求诸己。"})]})]})]})}function _E(t,e){const i=t.filter(c=>c.reversed).length,s=t.filter(c=>c.major).length,r=[];return s===t.length?r.push("全为大阿卡纳,此事于你人生分量颇重,非寻常小事。"):s>0?r.push("大阿卡纳"+s+"张,此事有"+(s>t.length/2?"较深":"一定")+"的命途意味,宜郑重观之。"):r.push("皆小阿卡纳,此事多系日常实务,脚踏实地即可。"),i===0?r.push("诸牌皆正,能量顺畅外放,时机可进。"):i<=t.length/2?r.push("逆位"+i+"张,有"+(i===1?"一处":"几处")+"内耗或阻滞,宜先理顺再行。"):r.push("逆位居多,此事内在功课为重,先安己心,外境自转。"),r.join("")}const SE={bazi:{Panel:Nf,Result:E8,placeholder:"静候四柱 · 观五行流转"},ziwei:{Panel:Hf,Result:p8,placeholder:"静候星布 · 观十四主星"},qimen:{Panel:Qf,Result:x8,placeholder:"静候局成 · 观九宫遁甲"},meihua:{Panel:tE,Result:D8,placeholder:"静候心动 · 观梅花开落"},liuyao:{Panel:uE,Result:A8,placeholder:"静候钱落 · 观六爻成象"},liuren:{Panel:gE,Result:B8,placeholder:"静候课起 · 观天地人盘"},xiaoliuren:{Panel:EE,Result:j8,placeholder:"静候指落 · 观掌诀玄机"},astrology:{Panel:pE,Result:v8,placeholder:"静候星布 · 观天穹为书"},tarot:{Panel:vE,Result:_8,placeholder:"静候牌启 · 观镜照本心"}},S8=t=>SE[t],wE="modulepreload",NE=function(t){return"/"+t},Q7={},IE=function(e,i,s){let r=Promise.resolve();if(i&&i.length>0){let o=function(f){return Promise.all(f.map(E=>Promise.resolve(E).then(F=>({status:"fulfilled",value:F}),F=>({status:"rejected",reason:F}))))};document.getElementsByTagName("link");const d=document.querySelector("meta[property=csp-nonce]"),g=(d==null?void 0:d.nonce)||(d==null?void 0:d.getAttribute("nonce"));r=o(i.map(f=>{if(f=NE(f),f in Q7)return;Q7[f]=!0;const E=f.endsWith(".css"),F=E?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${f}"]${F}`))return;const x=document.createElement("link");if(x.rel=E?"stylesheet":wE,E||(x.as="script"),x.crossOrigin="",x.href=f,g&&x.setAttribute("nonce",g),document.head.appendChild(x),E)return new Promise((A,y)=>{x.addEventListener("load",A),x.addEventListener("error",()=>y(new Error(`Unable to preload CSS for ${f}`)))})}))}function c(o){const d=new Event("vite:preloadError",{cancelable:!0});if(d.payload=o,window.dispatchEvent(d),!d.defaultPrevented)throw o}return r.then(o=>{for(const d of o||[])d.status==="rejected"&&c(d.reason);return e().catch(c)})},wr=200;function uu(){try{const t=localStorage.getItem(Gi());return t?JSON.parse(t):[]}catch{return[]}}function zE(t){const e=uu(),i={...t,id:t.artId+"-"+t.createdAt};e.unshift(i),localStorage.setItem(Gi(),JSON.stringify(e.slice(0,wr)));const s=k1();return s&&bl(s.username,e.slice(0,wr)).catch(()=>{}),i}function K7(t){localStorage.setItem(Gi(),JSON.stringify(uu().filter(e=>e.id!==t)))}function kE(t){return uu().find(e=>e.id===t)}async function ME(){const t=k1();if(t)try{const{pullRecordsFromServer:e}=await IE(async()=>{const{pullRecordsFromServer:s}=await Promise.resolve().then(()=>Dd);return{pullRecordsFromServer:s}},[]),i=await e(t.username);i&&Array.isArray(i)&&i.length>0&&localStorage.setItem(Gi(),JSON.stringify(i.slice(0,wr)))}catch{}}function Ca({report:t,artName:e,onExport:i}){var r,c,o,d,g,f,E,F,x,A,y,B,_,S,M,Y,z,T,W,X,Z;const s=t;return a.jsxs("div",{className:"report-view",children:[a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:s.title||"观微解读报告"}),a.jsxs("p",{className:"tiny muted",style:{marginBottom:".5rem"},children:["术别:",e]}),s.overview&&a.jsx("p",{className:"result-text",style:{fontSize:"1rem",color:"var(--ink)"},children:s.overview})]}),s.suitability&&(s.suitability.note||s.suitability.suggestion)&&a.jsxs("div",{className:"result-card fit-card "+(s.suitability.suitable===!0?"fit-ok":s.suitability.suitable==="partial"?"fit-partial":"fit-bad"),children:[a.jsx("h3",{children:"适问之辨"}),s.suitability.note&&a.jsx("p",{className:"result-text",children:s.suitability.note}),s.suitability.suggestion&&a.jsxs("p",{className:"result-text",children:[a.jsx("strong",{children:"✦ 建议:"}),s.suitability.suggestion]})]}),(((r=s.rawReading)==null?void 0:r.summary)||((o=(c=s.rawReading)==null?void 0:c.keyPoints)==null?void 0:o.length))&&a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"原始解读 · 先明盘面"}),s.rawReading.summary&&a.jsx("p",{className:"result-text",children:s.rawReading.summary}),s.rawReading.keyPoints.length>0&&a.jsx("ul",{className:"report-list mt-2",children:s.rawReading.keyPoints.map(($,e0)=>a.jsx("li",{children:$},e0))})]}),s.kind==="mingpan"&&a.jsxs(a.Fragment,{children:[s.character&&(s.character.summary||s.character.traits.length>0)&&a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"命主性格"}),s.character.summary&&a.jsx("p",{className:"result-text",children:s.character.summary}),s.character.traits.length>0&&a.jsx("div",{className:"trait-grid mt-3",children:s.character.traits.map(($,e0)=>a.jsxs("div",{className:"trait-cell",children:[a.jsx("div",{className:"trait-name",children:$.name}),a.jsx("div",{className:"trait-desc",children:$.desc})]},e0))})]}),s.lifeStages&&s.lifeStages.length>0&&a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"人生阶段"}),a.jsx("div",{className:"timeline mt-3",children:s.lifeStages.map(($,e0)=>a.jsxs("div",{className:"tl-item",children:[a.jsx("div",{className:"tl-marker",children:a.jsx("span",{className:"tl-dot"})}),a.jsxs("div",{className:"tl-body",children:[a.jsxs("div",{className:"tl-head",children:[a.jsx("strong",{children:$.stage}),a.jsx("span",{className:"tl-age",children:$.age})]}),a.jsx("p",{className:"tl-summary",children:$.summary})]})]},e0))})]}),(((d=s.family)==null?void 0:d.background)||((g=s.family)==null?void 0:g.parents)||((f=s.family)==null?void 0:f.imprint))&&a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"原生家庭"}),s.family.background&&a.jsxs("div",{className:"fam-block",children:[a.jsx("p",{className:"tiny muted",style:{margin:".3rem 0 .4rem"},children:"家境与氛围"}),a.jsx("p",{className:"result-text",children:s.family.background})]}),s.family.parents&&a.jsxs("div",{className:"fam-block",children:[a.jsx("p",{className:"tiny muted",style:{margin:".3rem 0 .4rem"},children:"父母关系"}),a.jsx("p",{className:"result-text",children:s.family.parents})]}),s.family.imprint&&a.jsxs("div",{className:"fam-block",children:[a.jsx("p",{className:"tiny muted",style:{margin:".3rem 0 .4rem"},children:"家庭印记"}),a.jsx("p",{className:"result-text",children:s.family.imprint})]})]}),(((E=s.mind)==null?void 0:E.action)||((F=s.mind)==null?void 0:F.pattern)||((x=s.mind)==null?void 0:x.growth))&&a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"心智与行动模式"}),s.mind.action&&a.jsxs("div",{className:"mind-block",children:[a.jsx("p",{className:"tiny muted",style:{margin:".3rem 0 .4rem"},children:"行动力与坚持"}),a.jsx("p",{className:"result-text",children:s.mind.action})]}),s.mind.pattern&&a.jsxs("div",{className:"mind-block",children:[a.jsx("p",{className:"tiny muted",style:{margin:".3rem 0 .4rem"},children:"行为循环"}),a.jsx("p",{className:"result-text",children:s.mind.pattern})]}),s.mind.growth&&a.jsxs("div",{className:"mind-block",children:[a.jsx("p",{className:"tiny muted",style:{margin:".3rem 0 .4rem"},children:"成长方向"}),a.jsx("p",{className:"result-text",children:s.mind.growth})]})]}),(((A=s.career)==null?void 0:A.summary)||((y=s.love)==null?void 0:y.summary)||((B=s.wealth)==null?void 0:B.summary)||((_=s.health)==null?void 0:_.summary))&&a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"学业事业 · 爱情 · 财富 · 健康"}),a.jsxs("div",{className:"domain-grid mt-3",children:[((S=s.career)==null?void 0:S.summary)&&a.jsxs("div",{className:"domain-cell",children:[a.jsx("div",{className:"domain-name",children:"学业 · 事业"}),a.jsx("p",{children:s.career.summary}),s.career.direction&&a.jsxs("p",{className:"tiny muted",children:["宜向:",s.career.direction]}),s.career.advice&&a.jsxs("p",{className:"tiny",children:["建议:",s.career.advice]})]}),((M=s.love)==null?void 0:M.summary)&&a.jsxs("div",{className:"domain-cell",children:[a.jsx("div",{className:"domain-name",children:"爱情"}),a.jsx("p",{children:s.love.summary}),s.love.advice&&a.jsxs("p",{className:"tiny",children:["建议:",s.love.advice]})]}),((Y=s.wealth)==null?void 0:Y.summary)&&a.jsxs("div",{className:"domain-cell",children:[a.jsx("div",{className:"domain-name",children:"财富"}),a.jsx("p",{children:s.wealth.summary}),s.wealth.advice&&a.jsxs("p",{className:"tiny",children:["建议:",s.wealth.advice]})]}),((z=s.health)==null?void 0:z.summary)&&a.jsxs("div",{className:"domain-cell",children:[a.jsx("div",{className:"domain-name",children:"健康"}),a.jsx("p",{children:s.health.summary}),s.health.advice&&a.jsxs("p",{className:"tiny",children:["建议:",s.health.advice]})]})]})]})]}),s.kind==="zhanwen"&&a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"局势 · 趋势 · 时机"}),a.jsxs("div",{className:"domain-grid mt-3",children:[s.situation&&a.jsxs("div",{className:"domain-cell",children:[a.jsx("div",{className:"domain-name",children:"当下局势"}),a.jsx("p",{children:s.situation})]}),s.trend&&a.jsxs("div",{className:"domain-cell",children:[a.jsx("div",{className:"domain-name",children:"发展趋势"}),a.jsx("p",{children:s.trend})]}),s.timing&&a.jsxs("div",{className:"domain-cell",children:[a.jsx("div",{className:"domain-name",children:"时机宜忌"}),a.jsx("p",{children:s.timing})]})]})]}),s.advice&&a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"参详建议"}),a.jsx("ul",{className:"report-list mt-1",children:s.advice.split(/[;;]/).filter(Boolean).map(($,e0)=>a.jsx("li",{children:$.trim()},e0))})]}),s.conclusion&&a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"结语"}),a.jsx("p",{className:"result-text",children:s.conclusion})]}),(((T=s.extraSections)==null?void 0:T.length)>0||((W=s.chapters)==null?void 0:W.length)>0)&&a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"更多参详"}),(X=s.chapters)==null?void 0:X.map(($,e0)=>a.jsxs("div",{style:{marginBottom:"var(--sp-2)"},children:[a.jsx("p",{className:"tag-cool",style:{marginBottom:".3rem"},children:a.jsx("strong",{children:$.skill||"参详"})}),a.jsx("p",{className:"result-text",style:{whiteSpace:"pre-wrap"},children:$.content})]},"ch"+e0)),(Z=s.extraSections)==null?void 0:Z.map(($,e0)=>a.jsxs("div",{style:{marginBottom:"var(--sp-2)"},children:[a.jsx("p",{className:"tag-cool",style:{marginBottom:".3rem"},children:a.jsx("strong",{children:$.skill||"参详"})}),a.jsx("p",{className:"result-text",style:{whiteSpace:"pre-wrap"},children:$.content})]},"ex"+e0))]}),a.jsx("p",{className:"tiny muted",style:{marginTop:"var(--sp-2)"},children:s.disclaimer}),a.jsxs("div",{className:"btn-row mt-3",children:[a.jsx("button",{className:"btn-seal btn-ghost",style:{fontSize:".82rem",padding:".4rem 1.1rem"},onClick:i,children:"导 出 报 告"}),a.jsx("button",{className:"btn-seal btn-ghost",style:{fontSize:".82rem",padding:".4rem 1.1rem"},onClick:()=>window.print(),children:"存 为 PDF"})]})]})}const TE=[{domain:"timing",label:"时机择日",words:["何时","什么时候","几时","时机","宜不宜","该不该现在","择日","哪天"]},{domain:"direction",label:"方位出行",words:["方位","方向","往哪","去哪里","哪个方向","出行","旅行","出差","搬家","风水","搬迁"]},{domain:"lost",label:"寻物",words:["失物","丢了","找不到","丢哪","找回","寻找","不见了"]},{domain:"decision",label:"抉择决策",words:["该不该","要不要","能不能","是否","选择","抉择","答应","接受","拒绝","跳槽","辞职","值不值得","可不可以"]},{domain:"love",label:"情感婚姻",words:["感情","爱情","恋爱","复合","分手","喜欢","表白","婚姻","结婚","前任","对象","暧昧","相亲"]},{domain:"career",label:"事业学业",words:["工作","事业","面试","升职","offer","老板","同事","创业","考试","考研","晋升","加薪","项目","合作"]},{domain:"wealth",label:"财运投资",words:["钱","财运","投资","股票","基金","赚钱","收入","债务","还债","买房","理财","生意"]},{domain:"health",label:"健康",words:["健康","病","身体","失眠","手术","治疗","检查","康复"]},{domain:"person",label:"人事关系",words:["同事","朋友","合伙","关系","对方","团队","领导","上司","客户","贵人","婆媳"]},{domain:"mind",label:"心理自我",words:["性格","心理","迷茫","焦虑","成长","灵性","自我","状态","怎么办","心里","情绪","人生方向"]}],ir={qimen:{timing:!0,direction:!0,decision:!0,wealth:!0,career:!0,lost:"partial",person:"partial",love:!1,mind:!1,health:!1},liuyao:{decision:!0,career:!0,wealth:!0,lost:!0,person:!0,love:"partial",health:"partial",timing:"partial",direction:"partial",mind:!1},meihua:{decision:!0,career:!0,wealth:!0,lost:!0,love:!0,person:!0,timing:"partial",direction:"partial",health:"partial",mind:"partial"},xiaoliuren:{timing:!0,decision:!0,lost:!0,direction:"partial",career:"partial",wealth:"partial",love:"partial",mind:!1,person:"partial"},liuren:{person:!0,career:!0,decision:!0,love:!0,wealth:!0,lost:!0,health:"partial",timing:"partial",direction:"partial",mind:"partial"},tarot:{love:!0,mind:!0,decision:!0,career:"partial",wealth:"partial",person:"partial",health:"partial",timing:!1,direction:!1,lost:!1},bazi:{career:!0,wealth:!0,love:!0,health:!0,mind:!0,person:"partial",decision:"partial",timing:"partial",direction:"partial",lost:!1},ziwei:{career:!0,wealth:!0,love:!0,health:!0,mind:!0,person:"partial",decision:"partial",timing:"partial",direction:"partial",lost:!1},astrology:{career:!0,wealth:!0,love:!0,health:!0,mind:!0,person:"partial",decision:"partial",timing:"partial",direction:"partial",lost:!1}};function bE(t){const e=t||"";let i=null;for(const s of TE)for(const r of s.words)e.includes(r)&&(!i||r.length>i.len)&&(i={domain:s.domain,label:s.label,len:r.length});return i?{domain:i.domain,label:i.label}:{domain:"general",label:"综合"}}const V7={qimen:{good:"择时出行、方位趋避、谋事成败、财运契机——凡问时机方位者最契",bad:"情感内心、性格心理之事",suggest:"若问感情,宜改为问「与某人发展之机,何时宜动、何方可往」;若问心理成长,宜用塔罗或命盘观照。"},liuyao:{good:"一事之吉凶成败、谋事、寻物、考试、求财、讼事——凡问具体事务者最契",bad:"抽象的心理性格、长期人生格局",suggest:"若问性格人生,宜以八字/紫微/星盘观格局;若问内心状态,塔罗更宜观照。"},meihua:{good:"心动即占,万象皆可问——时、事、情、财皆可成卦",bad:"(几乎无所不包,仅深度有限)",suggest:"若需更深之命理格局,可再以八字/紫微参详。"},xiaoliuren:{good:"一时一事之吉凶、即时决策、寻物、出行——快捷问占最契",bad:"长期人生格局、深层心理",suggest:"若问长期格局,宜用八字/紫微排盘;若问深层心理,塔罗更宜。"},liuren:{good:"人事往来、合作、婚姻、出行、疾病、失物——人事之王,人事问题最契",bad:"(所长人事,抽象心理为次)",suggest:"若问纯心理状态,塔罗或命盘观照更宜。"},tarot:{good:"情感关系、内心观照、选择困惑、自我成长——镜鉴之心最契",bad:"择时、方位、失物等客观吉凶",suggest:"若问何时宜动、何方可往,宜用奇门遁甲;若问失物,六爻或小六壬更契。"},bazi:{good:"性格格局、事业财运、婚姻感情、人生阶段——命理之经纬",bad:"一时一事的即时吉凶",suggest:"若问即时之事(如出行吉凶、能否成事),宜用六爻/小六壬/奇门起占。"},ziwei:{good:"命盘格局、十二宫人生领域、大限流年——星命之宫垣",bad:"一时一事的即时吉凶",suggest:"若问即时之事,宜用六爻/小六壬/奇门起占。"},astrology:{good:"性格天赋、人生轨迹、行星宫位相位——天穹为书",bad:"一时一事的即时吉凶",suggest:"若问即时之事,宜用六爻/小六壬/奇门起占。"}},ur=t=>({bazi:"四柱八字",ziwei:"紫微斗数",qimen:"奇门遁甲",meihua:"梅花易数",liuyao:"六爻",liuren:"大六壬",xiaoliuren:"小六壬",astrology:"星盘",tarot:"塔罗"})[t]||t;function OE(t,e){const{domain:i,label:s}=bE(e),c=(ir[t]||{})[i]??"partial",o=V7[t]||V7.qimen,d=ur(t),g=Object.keys(ir).filter(F=>F!==t&&ir[F][i]===!0);let f,E;return c===!0?(f="此问属「"+s+"」,恰契"+o.good+"。",E=""):c==="partial"?(f="此问属「"+s+"」,与"+d+"之道部分相契("+o.good+")。以下解读以参详为度。",E=(g.length?"若求更应之占,可试"+g.map(ur).join("、")+"。":"")+o.suggest):(f="此问属「"+s+"」,与"+d+"之道不甚相契("+d+"所长在"+o.good+";"+o.bad+"非其所长)。以下解读仅供建议参详,不作定论。",E=(g.length?"建议更换问题方向:"+g.map(ur).join("、")+"更宜此类之问。":"")+o.suggest),{domain:i,domainLabel:s,suitable:c,reason:f,suggestion:E,betterArts:g}}const PE={bazi:{panelTitle:"布盘",btn:"排 盘",btnSmall:"布四柱 · 观五行 · 推十神"},ziwei:{panelTitle:"布盘",btn:"布 盘",btnSmall:"安命宫 · 定紫微 · 布主星"},qimen:{panelTitle:"起局",btn:"起 局",btnSmall:"定时 · 定局 · 布三奇六仪"},meihua:{panelTitle:"起卦",btn:"起 卦",btnSmall:"定本卦 · 推互变 · 辨体用"},liuyao:{panelTitle:"摇卦",btn:"掷 钱 成 卦",btnSmall:"六掷成卦 · 观变断象"},liuren:{panelTitle:"起课",btn:"起 课",btnSmall:"立天地盘 · 布四课 · 取三传"},xiaoliuren:{panelTitle:"占时",btn:"掐 指 一 算",btnSmall:"大安起月 · 月上起日 · 日上起时"},astrology:{panelTitle:"布盘",btn:"布 星 图",btnSmall:"推行星黄经 · 布十二宫"},tarot:{panelTitle:"问镜",btn:"洗 牌 抽 牌",btnSmall:"静心默问 · 凭心取牌"}};function YE(){const{artId:t}=Y3(),e=t?Bi(t):void 0,{status:i,result:s,divineId:r,errorMsg:c,divine:o,reset:d}=qm(),g=Vm(),f=v.useRef(null),E=v.useRef(""),F=v.useRef(null),x=v.useRef("main"),[A,y]=v.useState(null),B=async(b,u0,d0,E0)=>{var h0;g.reset(),u0&&(f.current=u0),F.current=b,x.current=E0||"main",d0!==void 0&&(E.current=d0);const i0=d0!==void 0?d0:((h0=document.getElementById("q-input"))==null?void 0:h0.value)||"";y(i0.trim()?OE((e==null?void 0:e.id)||"",i0.trim()):null);const K=k1();if(!K){alert("请先入馆(登录)再起占");return}o(async()=>{const G=await Jm(K.username,(e==null?void 0:e.id)||"",b,u0||K.profile,i0.trim()||void 0);return{resultRaw:G.resultRaw,divineId:G.divineId}})},_=["bazi","ziwei","astrology"].includes((e==null?void 0:e.id)||""),S=b=>{var K,h0,G,N,P,g0;const u0=["# "+(b.title||"观微解读报告"),"","> 术别:"+e.name+" · "+new Date().toLocaleString("zh-CN"),"","## 总述","",b.overview,"","## 原始解读","",((K=b.rawReading)==null?void 0:K.summary)||"",...(((h0=b.rawReading)==null?void 0:h0.keyPoints)||[]).map(m0=>"- "+m0),"",...b.character?["## 命主性格","",b.character.summary||"",...(b.character.traits||[]).map(m0=>"- **"+m0.name+"**:"+m0.desc),""]:[],...b.lifeStages?["## 人生阶段","",...b.lifeStages.map(m0=>"**"+m0.stage+"("+m0.age+")**:"+m0.summary),""]:[],...(G=b.career)!=null&&G.summary?["## 学业 · 事业","",b.career.summary,"宜向:"+(b.career.direction||""),"建议:"+(b.career.advice||""),""]:[],...(N=b.love)!=null&&N.summary?["## 爱情","",b.love.summary,"建议:"+(b.love.advice||""),""]:[],...(P=b.wealth)!=null&&P.summary?["## 财富","",b.wealth.summary,"建议:"+(b.wealth.advice||""),""]:[],...(g0=b.health)!=null&&g0.summary?["## 健康","",b.health.summary,"建议:"+(b.health.advice||""),""]:[],...b.situation?["## 当下局势","",b.situation,""]:[],...b.trend?["## 发展趋势","",b.trend,""]:[],...b.timing?["## 时机宜忌","",b.timing,""]:[],...b.advice?["## 参详建议","",...b.advice.split(/[;;]/).filter(Boolean).map(m0=>m0.trim()?"- "+m0.trim():""),""]:[],...b.conclusion?["## 结语","",b.conclusion,""]:[],"---",b.disclaimer||""].filter(Boolean),d0=new Blob(["\uFEFF"+u0.join(`
|
|
102
|
+
`)],{type:"text/markdown;charset=utf-8"}),E0=URL.createObjectURL(d0),i0=document.createElement("a");i0.href=E0,i0.download=(b.title||"观微报告")+".md",i0.click(),URL.revokeObjectURL(E0)},[M,Y]=v.useState(""),[z,T]=v.useState(""),W=()=>{if(!f.current)return;const b=Rl(M,f.current);T(b?"已存为示例档案「"+(M.trim()||"未名档案")+"」":"请先入馆,方可存档"),Y("")},X=v.useRef(null);X.current=r;const Z=v.useRef(null);if(v.useEffect(()=>{var b;if(i==="done"&&s&&e&&Z.current!==s){Z.current=s;const u0=(b=f.current)==null?void 0:b.location,d0=f.current;zE({artId:e.id,createdAt:Date.now(),result:s,location:u0?{lng:u0.lng,lat:u0.lat,province:u0.province,city:u0.city,district:u0.district}:void 0,profileId:x.current,profile:d0?{birthDate:d0.birthDate,birthTime:d0.birthTime,gender:d0.gender,location:d0.location}:null,inputs:F.current,question:E.current||void 0})}},[i,s,e]),!e)return a.jsxs("div",{className:"wrap",style:{paddingTop:"var(--sp-7)",textAlign:"center"},children:[a.jsxs("div",{className:"result-placeholder",children:[a.jsx("div",{className:"glyph",children:"无"}),a.jsx("p",{children:"术无此名 · 请返册页再择"})]}),a.jsx("div",{className:"mt-4",children:a.jsx(L0,{className:"btn-seal btn-ghost",to:"/",children:"返 册 页"})})]});const $=S8(e.id),e0=PE[e.id],q=$==null?void 0:$.Panel,c0=$==null?void 0:$.Result;return a.jsxs(a.Fragment,{children:[a.jsx("section",{className:"module-hero compact",children:a.jsxs("div",{className:"wrap",children:[a.jsxs("div",{className:"mh-row",children:[a.jsx(L0,{className:"back-link",to:"/",onClick:()=>setTimeout(()=>{var b;return(b=document.getElementById("home-arts"))==null?void 0:b.scrollIntoView()},60),children:"‹ 返册页"}),a.jsxs("h2",{className:"module-title",children:[a.jsx("span",{className:"cn",children:e.name}),a.jsx("span",{className:"mh-sub",children:e.poem})]}),a.jsx("p",{className:"mh-kicker",children:e.kicker})]}),a.jsxs("details",{className:"mh-intro",children:[a.jsx("summary",{children:"术之源流 · 点击展卷"}),a.jsx("p",{children:e.intro}),a.jsx("p",{className:"source",children:e.source})]})]})}),a.jsxs("div",{className:"wrap",children:[a.jsxs("div",{className:"altar",children:[a.jsxs("aside",{className:"altar-panel","aria-label":`${e.name}输入`,children:[a.jsx("h3",{className:"panel-title",children:(e0==null?void 0:e0.panelTitle)??"问占"}),q?a.jsx(q,{onDivine:B}):a.jsxs("div",{className:"result-placeholder",style:{minHeight:260,marginTop:"var(--sp-3)"},children:[a.jsx("div",{className:"glyph",style:{fontSize:"2rem"},children:e.glyph}),a.jsx("p",{children:"此术之具,静候铺陈"})]})]}),a.jsxs("div",{className:"altar-result stagger",children:[A&&A.suitable!==!0&&a.jsxs("div",{className:"fit-note",role:"note",children:[a.jsx("strong",{children:A.suitable==="partial"?"适问之辨 · 部分相契":"适问之辨 · 不甚相契"}),a.jsx("p",{children:A.reason}),A.suggestion&&a.jsxs("p",{className:"fit-suggest",children:["✦ ",A.suggestion]})]}),i==="idle"&&a.jsx(b7,{glyph:e.glyph,text:($==null?void 0:$.placeholder)??"静候卦象 · 观微知著"}),i==="casting"&&a.jsxs("div",{className:"result-placeholder",children:[a.jsx("div",{className:"casting-ring",children:a.jsx("div",{className:"casting-glyph",style:{position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center",fontFamily:"var(--font-zm)",fontSize:"1.6rem",color:"var(--celadon-deep)"},children:e.glyph})}),a.jsx("p",{children:"凝神静气 · 卦象将成"})]}),i==="done"&&s&&c0&&a.jsx(c0,{data:s}),i==="error"&&a.jsx(b7,{glyph:"滞",text:c||"推演未应机 · 请稍后再试"}),i==="done"&&s&&a.jsxs("div",{className:"result-card mt-3",children:[a.jsx("h3",{children:"AI 深度解读"}),g.status==="idle"&&a.jsxs("div",{className:"result-text",children:[a.jsx("p",{children:"排盘既成,可召 AI 以现代语言为君详解;引经据典处,另依古籍话术标注出处。"}),a.jsx("button",{className:"btn-seal",style:{marginTop:"var(--sp-2)",fontSize:".9rem",padding:".5rem 1.4rem"},onClick:()=>{console.log("[观微 AI] 点击召请,artId=",e.id,"question=",E.current,"API_BASE=",window.__API_BASE__||"/api"),g.interpret({artId:e.id,divineId:X.current||void 0,question:E.current||void 0,profile:f.current||void 0,reportMode:!0,fit:A||void 0})},children:"召 AI 成报告"})]}),g.status==="streaming"&&a.jsxs("div",{className:"ai-streaming",children:[a.jsxs("div",{className:"ai-stream-head",children:[a.jsx("span",{className:"ai-spinner","aria-hidden":"true"}),a.jsx("span",{className:"tag-cool",children:"AI 依术呈卷中……(Skills 编排 · 分章成文)"})]}),a.jsxs("p",{className:"tiny muted",style:{marginTop:".3rem"},children:["已生成 ",a.jsx("span",{className:"ai-count",style:{fontVariantNumeric:"tabular-nums",color:"var(--celadon-deep)",fontWeight:600},children:g.text.length})," 字 · 长文约需 20-60 秒,请稍候"]}),a.jsx("div",{className:"ai-stream-body",style:{display:"flex",alignItems:"center",justifyContent:"center",minHeight:48,padding:"var(--sp-2) 0"},children:a.jsx("p",{className:"muted",style:{fontSize:"var(--fs-sm)",letterSpacing:".3em",animation:"pulse-soft 1.8s ease-in-out infinite"},children:"静候呈卷 · 成文后即展全篇"})})]}),g.status==="done"&&a.jsxs("div",{className:"result-text",children:[g.truncated&&a.jsx("div",{className:"ai-error",style:{marginBottom:"var(--sp-2)"},children:a.jsxs("p",{className:"tag-hot",children:[a.jsx("strong",{children:"内容截断"}),":本次呈卷因篇幅限制未能完整生成,可重试。"]})}),g.quality==="poor"&&a.jsx("div",{className:"ai-error",style:{marginBottom:"var(--sp-2)"},children:a.jsxs("p",{className:"tag-hot",children:[a.jsx("strong",{children:"内容不完整"}),":本次解读部分章节缺失,可重试。"]})}),g.report?a.jsx(Ca,{report:g.report,artName:e.name,onExport:()=>S(g.report)}):g.sections.length>0?g.sections.map((b,u0)=>a.jsxs("div",{style:{marginBottom:"var(--sp-2)"},children:[a.jsx("p",{className:"tag-cool",style:{marginBottom:".3rem"},children:a.jsx("strong",{children:b.title})}),a.jsx("p",{style:{whiteSpace:"pre-wrap"},children:b.content})]},u0)):g.text?a.jsx("p",{style:{whiteSpace:"pre-wrap"},children:g.text}):null,!g.report&&a.jsx("p",{className:"tiny muted",style:{marginTop:"var(--sp-2)",borderTop:"1px solid var(--line-soft)",paddingTop:".6rem"},children:"凡占问所得,仅供修身养性、怡情遣兴之用,不构成决策依据。"})]}),g.status==="error"&&a.jsxs("div",{className:"ai-error",children:[a.jsxs("p",{className:"tag-hot",children:[a.jsx("strong",{children:"AI 未应机"}),":",g.errorMsg||"AI 解读暂未应机,请稍后再试。"]}),g.errorCode==="AI_UNCONFIGURED"?a.jsxs("div",{className:"ai-config-hint",style:{marginTop:".5rem",padding:".6rem .8rem",border:"1px dashed var(--cinnabar)",borderRadius:"var(--r-sm)"},children:[a.jsxs("p",{className:"tiny",children:[a.jsx("strong",{children:"尚未配置 AI 服务的 API Key"}),"——配置后即可生成 AI 报告:"]}),a.jsxs("ol",{className:"tiny muted",style:{margin:".4rem 0 0 1.2rem",lineHeight:1.8},children:[a.jsxs("li",{children:["终端进入项目目录,运行 ",a.jsx("code",{style:{background:"rgba(0,0,0,.06)",padding:"0 .3rem"},children:"./scripts/setup.sh --key 你的APIKey"}),"(Windows:",a.jsx("code",{style:{background:"rgba(0,0,0,.06)",padding:"0 .3rem"},children:"scripts\\setup.bat --key 你的APIKey"}),")"]}),a.jsxs("li",{children:["Key 申请入口与详细步骤见 ",a.jsx("a",{href:"https://github.com/RubyCcll/guanwei#%F0%9F%94%91-%E8%8E%B7%E5%8F%96-api-key",target:"_blank",rel:"noreferrer",children:"README · 获取 API Key"}),"(DeepSeek 等 5 家任选)"]}),a.jsxs("li",{children:["配置后重启服务即可;也可运行 ",a.jsx("code",{style:{background:"rgba(0,0,0,.06)",padding:"0 .3rem"},children:"guanwei doctor"})," 检查配置"]})]})]}):a.jsx("p",{className:"tiny muted",children:"古法规则解读为备,可先依上列排盘自行观照;若为 AI 服务异常,可于服务端检查 LLM 配置后重试。"}),a.jsxs("div",{className:"btn-row",style:{marginTop:"var(--sp-2)"},children:[a.jsx("button",{className:"btn-seal",style:{fontSize:".82rem",padding:".4rem 1.1rem"},onClick:()=>g.interpret({artId:e.id,resultRaw:s,question:E.current||void 0,profile:f.current||void 0,reportMode:!0,fit:A||void 0}),children:"重 试"}),a.jsx("button",{className:"btn-seal btn-ghost",style:{fontSize:".82rem",padding:".4rem 1.1rem"},onClick:g.reset,children:"收 起"})]})]}),_&&k1()&&a.jsxs("div",{className:"no-print",style:{marginTop:"var(--sp-3)",paddingTop:"var(--sp-2)",borderTop:"1px solid var(--line-soft)"},children:[a.jsx("p",{className:"tiny muted",style:{marginBottom:".4rem"},children:"存此排盘入馆为示例档案(主档案唯一,此为示例):"}),a.jsxs("div",{className:"btn-row",style:{gap:".5rem"},children:[a.jsx("input",{className:"input-line",style:{maxWidth:240},placeholder:"档案名,如:1995 生辰",value:M,onChange:b=>Y(b.target.value)}),a.jsx("button",{className:"btn-seal",style:{fontSize:".8rem",padding:".35rem 1rem"},onClick:W,children:"存 档"})]}),z&&a.jsx("p",{className:"tiny mt-1 "+(z.includes("已存")?"tag-cool":"tag-hot"),children:z})]}),a.jsx("button",{className:"btn-seal btn-ghost no-print",style:{marginTop:"var(--sp-3)",fontSize:".9rem",padding:".5rem 1.4rem"},onClick:()=>{g.reset(),d()},children:"再 起 一 占"})]})]})]}),a.jsx(c8,{})]})]})}const Ai={子:[{gan:"癸",qi:"本气"}],丑:[{gan:"己",qi:"本气"},{gan:"癸",qi:"中气"},{gan:"辛",qi:"余气"}],寅:[{gan:"甲",qi:"本气"},{gan:"丙",qi:"中气"},{gan:"戊",qi:"余气"}],卯:[{gan:"乙",qi:"本气"}],辰:[{gan:"戊",qi:"本气"},{gan:"乙",qi:"中气"},{gan:"癸",qi:"余气"}],巳:[{gan:"丙",qi:"本气"},{gan:"庚",qi:"中气"},{gan:"戊",qi:"余气"}],午:[{gan:"丁",qi:"本气"},{gan:"己",qi:"中气"}],未:[{gan:"己",qi:"本气"},{gan:"丁",qi:"中气"},{gan:"乙",qi:"余气"}],申:[{gan:"庚",qi:"本气"},{gan:"壬",qi:"中气"},{gan:"戊",qi:"余气"}],酉:[{gan:"辛",qi:"本气"}],戌:[{gan:"戊",qi:"本气"},{gan:"辛",qi:"中气"},{gan:"丁",qi:"余气"}],亥:[{gan:"壬",qi:"本气"},{gan:"甲",qi:"中气"}]},LE={甲:["丑","未"],戊:["丑","未"],庚:["丑","未"],乙:["子","申"],己:["子","申"],丙:["亥","酉"],丁:["亥","酉"],壬:["卯","巳"],癸:["卯","巳"],辛:["午","寅"]},RE={甲:"巳",乙:"午",丙:"申",丁:"酉",戊:"申",己:"酉",庚:"亥",辛:"子",壬:"寅",癸:"卯"},GE={甲:"寅",乙:"卯",丙:"巳",丁:"午",戊:"巳",己:"午",庚:"申",辛:"酉",壬:"亥",癸:"子"},HE={甲:"卯",乙:"寅",丙:"午",丁:"巳",戊:"午",己:"巳",庚:"酉",辛:"申",壬:"子",癸:"亥"},el={申:{ma:"寅",tao:"酉",gai:"辰",jiang:"子"},子:{ma:"寅",tao:"酉",gai:"辰",jiang:"子"},辰:{ma:"寅",tao:"酉",gai:"辰",jiang:"子"},寅:{ma:"申",tao:"卯",gai:"戌",jiang:"午"},午:{ma:"申",tao:"卯",gai:"戌",jiang:"午"},戌:{ma:"申",tao:"卯",gai:"戌",jiang:"午"},巳:{ma:"亥",tao:"午",gai:"丑",jiang:"酉"},酉:{ma:"亥",tao:"午",gai:"丑",jiang:"酉"},丑:{ma:"亥",tao:"午",gai:"丑",jiang:"酉"},亥:{ma:"巳",tao:"子",gai:"未",jiang:"卯"},卯:{ma:"巳",tao:"子",gai:"未",jiang:"卯"},未:{ma:"巳",tao:"子",gai:"未",jiang:"卯"}},ZE=["小寒","立春","惊蛰","清明","立夏","芒种","小暑","立秋","白露","寒露","立冬","大雪"],B2=["木","火","土","金","水"];function w8(t){let{y:e,m:i,d:s,hourIndex:r}=t;const c=r==null||r<0;let o=c?-1:r,d;if(!c&&t.location){const[D0,b0]=t.time?t.time.split(":").map(Number):[r*2%24,30];d=fa(e,i,s,D0,b0,t.location.lng),o=d.hourIndex,d.dateOffset!==0&&([e,i,s]=cf(e,i,s,d.dateOffset))}const g=c?12:o*2%24,f=0,E=new Date(e,i-1,s,g,f).getTime();let F=-1/0,x=e-1;for(const D0 of[e-1,e,e+1])for(const b0 of _3(D0))if(b0.name==="立春"){const K1=b0.time.getTime();K1<=E&&K1>F&&(F=K1,x=D0)}const A=UE(x),y=Jl(e,i,s,g,f),B=a1.indexOf(A[0]),_=r0(B%5*2+2+y,10),S=a1[_]+Q0[r0(2+y,12)],M=r0(H3(e,i,s)+55,60),Y=a1[M%10]+Q0[M%12],z=Y[0],T=U1[z];let W="未知";if(!c){const D0=a1.indexOf(z),b0=r0(D0%5*2+o,10);W=a1[b0]+Q0[o]}const X={木:0,火:0,土:0,金:0,水:0},Z=c?[A,S,Y]:[A,S,Y,W];Z.forEach(D0=>{X[U1[D0[0]]]++,X[U1[D0[1]]]++});const $=Z.map(D0=>({gan:D0[0],name:j2(z,D0[0])}));c&&$.push({gan:"□",name:"未知"});const e0=l8[Math.floor(Dr(e)/2)%30],q=X[T]+X[B2[(B2.indexOf(T)+4)%5]],c0=Z.length*2-q,b=Z.map(D0=>({zhi:D0[1],gans:(Ai[D0[1]]||[]).map(b0=>({gan:b0.gan,wx:U1[b0.gan],qi:b0.qi,shishen:j2(z,b0.gan)}))}));c&&b.push({zhi:"?",gans:[]});const u0={木:0,火:0,土:0,金:0,水:0};Z.forEach(D0=>{u0[U1[D0[0]]]+=1}),b.forEach(D0=>D0.gans.forEach(b0=>{u0[b0.wx]+=b0.qi==="本气"?2:1}));const d0=B2.indexOf(T),E0=U1[S[1]],i0=B2.indexOf(E0),K=r0(i0-d0,5),h0=K===0?3:K===4?2:K===1?1:.5;let G=0;const N=[];Z.forEach(D0=>{const b0=Ai[D0[1]]||[],K1=b0.find(oe=>oe.qi==="本气"),Nt=b0.find(oe=>oe.qi!=="本气"&&U1[oe.gan]===T);K1&&U1[K1.gan]===T?(G+=2,N.push(D0[1]+"本气"+K1.gan+"通根")):Nt&&(G+=1,N.push(D0[1]+"藏"+Nt.gan+"微根"))});let P=0;[A[0],S[0],Y[0]].forEach(D0=>{const b0=U1[D0];(b0===T||r0(B2.indexOf(b0)-d0,5)===4)&&(P+=1)});const g0=h0+G+P,m0=[];m0.push((h0>=3?"月令得令("+S[1]+"月"+E0+")":h0>=2?"月令生扶":"月令失令("+S[1]+"月"+E0+")")+" +"+h0),N.length?m0.push("地支通根:"+N.join("、")+" +"+G):m0.push("地支无根 +"+G),m0.push((P>0?"天干得势(比劫印星 "+P+" 位)":"天干无助")+" +"+P);const j0=g0>=7?"身强":g0<=4?"身弱":"中和",I0={身强:["官杀","食伤","财"],身弱:["印","比劫"],中和:["食伤","财","印"]},R0={身强:["印","比劫"],身弱:["财","官杀","食伤"],中和:["比劫","官杀"]},M0=I0[j0]||[],J=R0[j0]||[],Y0=["寅","卯","辰","巳","午","未","申","酉","戌","亥","子","丑"].indexOf(S[1]);let X0="";Y0>=9||Y0<=0?X0="冬月寒凝,宜火调候(丙丁)":Y0>=3&&Y0<=5?X0="夏月炎燥,宜水调候(壬癸)":Y0>=0&&Y0<=2?X0="春月木旺,宜火泄秀或金制衡":X0="秋月金旺,宜火炼金或水泄秀";const z0=j0==="身强"?B2[(d0+2)%5]:B2[(d0+4)%5],O0={wx:z0,shishen:j0==="身强"?"财星":"印星",xi:M0,ji:J,tiaohou:X0,reason:"日主"+j0+"(旺衰分 "+g0+":"+m0.join(";")+")。"+(j0==="身强"?"身强宜克泄耗,取"+z0+"(财星)为用,喜财官食伤,忌印比生扶。":"身弱宜生扶,取"+z0+"(印星)为用,喜印比帮身,忌财官食伤。")+X0+"。"},J0=!(a1.indexOf(A[0])%2===0),K0=[];for(const D0 of[e-1,e,e+1])for(const b0 of _3(D0))ZE.includes(b0.name)&&K0.push({name:b0.name,time:b0.time.getTime()});K0.sort((D0,b0)=>D0.time-b0.time);let f1=0,C1="";if(J0){const D0=K0.find(b0=>b0.time>E);D0&&(f1=(D0.time-E)/864e5,C1=D0.name)}else{const D0=[...K0].reverse().find(b0=>b0.time<E);D0&&(f1=(E-D0.time)/864e5,C1=D0.name)}const ae=Math.max(0,Math.floor(f1/3)),b1=Math.max(0,Math.floor((f1-ae*3)*4)),q1=ae+1,Je=a1.indexOf(S[0]),ct=Q0.indexOf(S[1]),s2=[],r2=e;for(let D0=0;D0<8;D0++){const b0=J0?D0:-D0,K1=a1[r0(Je+b0,10)],Nt=Q0[r0(ct+b0,12)];s2.push({gz:K1+Nt,ganShishen:j2(z,K1),zhiShishen:(Ai[Nt]||[]).map(oe=>oe.gan+j2(z,oe.gan)).join("、"),startAge:q1+D0*10,startYear:r2+q1+D0*10-1,endYear:r2+q1+D0*10+9-1,forward:J0})}const pe=new Date().getFullYear(),a2=Dr(pe),ke=a1[a2%10]+Q0[a2%12],Tn={year:pe,gz:ke,ganShishen:j2(z,ke[0]),zhiShishen:(Ai[ke[1]]||[]).map(D0=>D0.gan+j2(z,D0.gan)).join("、")},D1=[],We=Z.map(D0=>D0[1]),le=new Set(We);(LE[z]||[]).forEach(D0=>{le.has(D0)&&D1.push({name:"天乙贵人",zhi:D0,type:"吉"})});const ht=RE[z];ht&&le.has(ht)&&D1.push({name:"文昌贵人",zhi:ht,type:"吉"});const Ce=GE[z];Ce&&le.has(Ce)&&D1.push({name:"禄神",zhi:Ce,type:"吉"});const l2=HE[z];l2&&le.has(l2)&&D1.push({name:"羊刃",zhi:l2,type:"凶"});const X1=el[A[1]]||el[Y[1]];X1&&(le.has(X1.ma)&&D1.push({name:"驿马",zhi:X1.ma,type:"平"}),le.has(X1.tao)&&D1.push({name:"桃花(咸池)",zhi:X1.tao,type:"平"}),le.has(X1.gai)&&D1.push({name:"华盖",zhi:X1.gai,type:"平"}),le.has(X1.jiang)&&D1.push({name:"将星",zhi:X1.jiang,type:"平"}));const x1=(Ai[S[1]]||[])[0],xe=x1?j2(z,x1.gan):"比肩",Me=Z.findIndex(D0=>D0[0]===(x1==null?void 0:x1.gan)),o2=Me>=0,F0={name:["比肩","劫财"].includes(xe)?xe==="比肩"?"建禄格(月令比肩,不作八格,以身强论)":"羊刃格(月令劫财,旺极须制)":xe+"格",gan:(x1==null?void 0:x1.gan)||"",shishen:xe,basis:"月支"+S[1]+"本气"+((x1==null?void 0:x1.gan)||"")+"("+xe+")"+(o2?",透干于"+["年干","月干","日干","时干"][Me]+",格气有力":",未透干,格气内藏")+";"+X0},o1=a1[r0(Je+1,10)]+Q0[r0(ct+3,12)],ye=c?"未知":Q0[r0(2+r0(y-o,12),12)],$i=c?"未知":Q0[r0(2+r0(y+o,12),12)];return{yearGZ:A,monthGZ:S,dayGZ:Y,hourGZ:W,dayGan:z,dayGanWx:T,wxCount:X,shishen:$,strength:j0,support:q,drain:c0,nayin:e0,correctedHourIndex:o,trueSolar:d,canggan:b,wxWeighted:u0,strengthDetail:{score:g0,ling:h0,gen:G,shi:P,reasons:m0},yongshen:O0,dayun:s2,qiYun:{startAge:q1,startMonth:b1,detail:(J0?"顺行":"逆行")+","+(C1?"距"+C1:"")+(f1>0?" "+f1.toFixed(1)+" 天(3 天为 1 岁)":"")+",约 "+q1+" 岁起运"},liunian:Tn,shensha:D1,taiyuan:o1,minggong:ye,shengong:$i,geju:F0}}function UE(t){const e=Dr(t);return a1[e%10]+Q0[e%12]}function j2(t,e){if(e===t)return"比肩";const i=U1[t],s=U1[e],r=a1.indexOf(t)%2===0,c=a1.indexOf(e)%2===0,o=r===c;if(s===i)return o?"比肩":"劫财";const d=["木","火","土","金","水"],g=d.indexOf(i),f=d.indexOf(s),E=r0(f-g,5);return{1:o?"食神":"伤官",2:o?"偏财":"正财",3:o?"七杀":"正官",4:o?"偏印":"正印"}[E]||"比肩"}const Bt=["寅","卯","辰","巳","午","未","申","酉","戌","亥","子","丑"],H1=t=>Bt.indexOf(t);function qE(t){let{month:e,day:i,hour:s}=t;const r=t.ganzhi,c=r[0],o=r[1];let d=s;if(t.location){const[F0,o1]=t.time?t.time.split(":").map(Number):[s*2%24,30];if(t.solarDate)d=fa(t.solarDate[0],t.solarDate[1],t.solarDate[2],F0,o1,t.location.lng).hourIndex;else{const ye=F0+(o1||0)/60+(t.location.lng-120)*4/60;d=Math.floor(((ye+24)%24+1)%24/2)}}const g=r0(e-1-d,12),f=r0(e-1+d,12),E=l8[Math.floor(km(r)/2)%30],F={甲:"丙",乙:"戊",丙:"庚",丁:"壬",戊:"甲",己:"丙",庚:"戊",辛:"庚",壬:"壬",癸:"甲"},x=a1[r0(a1.indexOf(F[c])+g,10)],A=x+Bt[g],y=Math.floor(a1.indexOf(x)/2)+1,B=Math.floor(r0(g+2,6)/2)+1;let _=y+B;for(;_>5;)_-=5;const M=["木三局","金四局","水二局","火六局","土五局"][_-1],z={二:2,三:3,四:4,五:5,六:6}[M[1]]||4;let T=-1,W=0,X=-1;do{T++;const F0=i+T;W=Math.floor(F0/z),X=F0%z}while(X!==0);W%=12;let Z=W-1;T%2===0?Z+=T:Z-=T;const $=r0(Z,12),e0=r0(12-$,12),q={},c0=["紫微","天机","太阳","武曲","天同","廉贞"],b=[0,-1,-3,-4,-5,-8];c0.forEach((F0,o1)=>{q[F0]=r0($+b[o1],12)});const u0=["天府","太阴","贪狼","巨门","天相","天梁","七杀","破军"],d0=[0,1,2,3,4,5,6,10];u0.forEach((F0,o1)=>{q[F0]=r0(e0+d0[o1],12)});const E0={};for(let F0=0;F0<12;F0++)E0[F0]=r0(g-F0,12);const i0={};i0.左辅=r0(H1("辰")+(e-1),12),i0.右弼=r0(H1("戌")-(e-1),12),i0.文昌=r0(H1("戌")-d,12),i0.文曲=r0(H1("辰")+d,12);const K=Tf[c]||[];K[0]&&(i0.天魁=H1(K[0])),K[1]&&(i0.天钺=H1(K[1]));const h0=Mf[c];if(h0){const F0=H1(h0);i0.禄存=F0,i0.擎羊=r0(F0+1,12),i0.陀罗=r0(F0-1,12)}const G=Of[o];G&&(i0.火星=r0(H1(G)+d,12));const N=Pf[o];N&&(i0.铃星=r0(H1(N)+d,12)),i0.地空=r0(H1("亥")-d,12),i0.地劫=r0(H1("亥")+d,12);const P=bf[o];P&&(i0.天马=H1(P));const g0=H1(o);i0.红鸾=r0(11-g0,12),i0.天喜=r0(i0.红鸾+6,12);const m0={申:"酉",子:"酉",辰:"酉",寅:"卯",午:"卯",戌:"卯",巳:"午",酉:"午",丑:"午",亥:"子",卯:"子",未:"子"};i0.咸池=H1(m0[o]||"酉"),i0.天姚=r0(g0+2,12),i0.天刑=r0(g0+9,12);const j0={亥:["寅","戌"],子:["寅","戌"],丑:["寅","戌"],寅:["巳","丑"],卯:["巳","丑"],辰:["巳","丑"],巳:["申","辰"],午:["申","辰"],未:["申","辰"],申:["亥","未"],酉:["亥","未"],戌:["亥","未"]};i0.孤辰=H1((j0[o]||["寅","戌"])[0]),i0.寡宿=H1((j0[o]||["寅","戌"])[1]),i0.天哭=r0(g0+6,12),i0.天虚=r0(i0.天哭+6,12);const I0=zf[c]||{lu:"",quan:"",ke:"",ji:""},R0={lu:I0.lu,quan:I0.quan,ke:I0.ke,ji:I0.ji},M0={};["lu","quan","ke","ji"].forEach(F0=>{const o1=I0[F0];o1&&q[o1]!==void 0&&(M0[F0]=q[o1])});const J={};Object.keys(q).forEach(F0=>{const o1=q[F0];J[F0]=(kf[F0]||[])[o1]||"平"});const Y0=[],X0=(F0,o1)=>{const ye=Yf[F0];ye&&Y0.push({key:F0,name:ye.name,ji:ye.ji,desc:ye.desc,why:o1})},z0=F0=>Object.keys(q).filter(o1=>q[o1]===F0),O0=z0(g),q0=[g,r0(g+4,12),r0(g-4,12)],J0=q0.flatMap(z0),K0=z0(r0(g+6,12)),f1=J0.filter(F0=>["七杀","破军","贪狼"].includes(F0));f1.length>=2&&X0("杀破狼","命宫三合会 "+[...new Set(f1)].join("、")),q.紫微===q.天府&&X0("紫府同宫","紫微天府同守 "+Bt[q.紫微]+" 宫"),q.紫微===4&&X0("紫微朝垣","紫微独坐午宫");const C1=J0.filter(F0=>["天机","太阴","天同","天梁"].includes(F0));C1.length>=2&&X0("机月同梁","三合会 "+[...new Set(C1)].join("、")),q.太阳===q.太阴&&X0("日月同宫","太阳太阴同守 "+Bt[q.太阳]+" 宫");const ae=J.太阳,b1=J.太阴;ae==="陷"&&b1==="陷"&&X0("日月反背","太阳("+Bt[q.太阳]+ae+")太阴("+Bt[q.太阴]+b1+")皆落陷"),q.太阴===9&&J.太阴==="庙"&&X0("月朗天门","太阴独坐亥宫庙旺");const q1=q.贪狼,Je=i0.火星,ct=i0.铃星,s2=Je!==void 0&&(Je===q1||q0.includes(Je)),r2=ct!==void 0&&(ct===q1||q0.includes(ct));s2&&X0("火贪格","火星与贪狼同宫/三合"),r2&&X0("铃贪格","铃星与贪狼同宫/三合"),(q.巨门===10||q.巨门===4)&&X0("石中隐玉","巨门坐"+Bt[q.巨门]+"宫"+(c==="辛"?",辛年生人尤佳":""));const pe=q.紫微;(i0.左辅===pe||i0.右弼===pe||i0.左辅===r0(pe+6,12)||i0.右弼===r0(pe+6,12)||i0.文昌===pe||i0.文曲===pe)&&X0("君臣庆会","紫微得辅弼/昌曲拱照"),i0.禄存!==void 0&&i0.禄存===i0.天马&&X0("禄马交驰","禄存天马同守 "+Bt[i0.禄存]+" 宫");const ke=["lu","quan","ke"].filter(F0=>M0[F0]!==void 0&&q0.includes(M0[F0]));ke.length>=2&&X0("科权禄拱命","命宫三合方会 "+ke.map(F0=>R0[F0]).join("、")),q.廉贞===q.七杀&&X0("廉贞七杀","廉贞七杀同守 "+Bt[q.廉贞]+" 宫"),O0.length===0&&X0("命无正曜","命宫无十四主星,借对宫 "+[...new Set(K0)].join("、")+" 为用");const D1={二:2,三:3,四:4,五:5,六:6}[M[1]]||4,We=a1.indexOf(r[0])%2===0,le=t.gender,ht=le==="男"&&We||le==="女"&&!We,Ce=[];for(let F0=0;F0<12;F0++){const o1=r0(g+(ht?F0:-F0),12);Ce.push({palaceIdx:o1,start:D1+F0*10,end:D1+F0*10+9})}const l2=t.birthYear||1993,X1=new Date().getFullYear(),x1=Math.max(X1-l2+1,1);let xe=0;for(let F0=0;F0<Ce.length;F0++)if(x1>=Ce[F0].start&&x1<=Ce[F0].end){xe=F0;break}const Me=r0(g+(x1-1),12),o2=N2[Object.keys(E0).find(F0=>E0[Number(F0)]===Me)?Number(Object.keys(E0).find(F0=>E0[Number(F0)]===Me)):0],dt=Object.keys(q).filter(F0=>q[F0]===Me);return{ming:g,shen:f,zwPos:$,zwStars:q,fuStars:i0,palaces:E0,juName:M,mingGZ:A,nayin:E,correctedHour:d,dayun:Ce,curDayunIdx:xe,nominalAge:x1,liunianIdx:Me,liunianPalaceName:o2,liunianStars:dt,startAge:D1,forward:ht,sihua:R0,sihuaPos:M0,brightness:J,geju:Y0}}function XE(t){const e=t.datetime instanceof Date?t.datetime:new Date(t.datetime),i=e.getFullYear(),s=e.getMonth()+1,r=e.getDate(),c=e.getHours(),o=r0(H3(i,s,r)+55,60),d=a1[o%10]+Q0[o%12],g=Math.floor((c+1)%24/2),f=a1.indexOf(d[0]),E=r0(f%5*2+g,10),F=a1[E]+Q0[g],x=Xl(i,s,r),A=bd.find(N=>N.name===x);if(!A)throw new Error("节气未找到: "+x);const y=A.yin,B=Math.floor(r/5)%3,_=A.ju[B],S={戊:"甲子",己:"甲戌",庚:"甲申",辛:"甲午",壬:"甲辰",癸:"甲寅"},M=F[0],Y=["戊","己","庚","辛","壬","癸"].includes(M)?M:"戊",z=["戊","己","庚","辛","壬","癸","丁","丙","乙"],T={},W={};for(let N=0;N<9;N++){const P=y?r0(_-1-N,9)+1:r0(_-1+N,9)+1;T[P]=z[N],W[P]={yi:z[N],men:"",star:""}}const X=Number(Object.keys(T).find(N=>T[Number(N)]===Y)||1),Z=Td[X-1],$=Md[X-1],e0=["休","生","伤","杜","景","死","惊","开"],q=["天蓬","天任","天冲","天辅","天英","天芮","天柱","天心"];Ci.forEach((N,P)=>{W[N].star=q[P];const g0=r0(P-(Ci.indexOf(X)-1),8);W[N].men=e0[g0]}),W[5]={yi:"中",star:"天禽",men:""};const c0=Number(Object.keys(T).find(N=>T[Number(N)]===F[0])||X),b={},d0=[...z.slice(z.indexOf(Y)),...z.slice(0,z.indexOf(Y))],E0=Ci.indexOf(c0);Ci.forEach((N,P)=>{const g0=r0(y?E0-P:E0+P,9);b[N]=d0[g0]}),b[5]="";const i0=["值符","螣蛇","太阴","六合","白虎","玄武","九地","九天"],K={},h0=Ci.filter(N=>N!==5),G=h0.indexOf(X);return h0.forEach((N,P)=>{const g0=r0(y?G-P:G+P,8);K[N]=i0[g0]}),K[5]="",{yin:y,ju:_,jqName:x,dayGZ:d,hourGZ:F,xunShou:Y,xunshouName:S[Y]||"",zfStar:Z,zsMen:$,zfPalace:X,pan:W,zsPalace:c0,tianYi:b,shen:K}}const tl={1:[1,1,1],2:[1,1,0],3:[1,0,1],4:[1,0,0],5:[0,1,1],6:[0,1,0],7:[0,0,1],8:[0,0,0]},O3={7:1,6:2,5:3,4:4,3:5,2:6,1:7,0:8};function nl(t){const e=t[0]*4+t[1]*2+t[2],i=t[3]*4+t[4]*2+t[5];return Oi[O3[i]*10+O3[e]]||null}function JE(t){let e,i,s;{const e0=t.now||new Date,q=e0.getFullYear(),c0=e0.getMonth()+1,b=e0.getDate(),u0=e0.getHours(),d0=Math.floor((u0+1)%24/2)+1,E0=k0.fromYmdHms(q,c0,b,u0,0,0).getLunar(),i0=Math.abs(E0.getMonth()),K=E0.getDay(),G=Q0.indexOf(E0.getYearInGanZhi()[1])+1+i0+K;e=r0(G-1,8)+1;const N=G+d0;i=r0(N-1,8)+1,s=r0(N-1,6)+1}const r=tl[i],c=tl[e],o=[r[0],r[1],r[2],c[0],c[1],c[2]],d=o.map((e0,q)=>q===s-1?1-e0:e0),g=[o[1],o[2],o[3]],f=[o[2],o[3],o[4]],E=nl(o),F=nl(d),x=Oi[O3[f[0]*4+f[1]*2+f[2]]*10+O3[g[0]*4+g[1]*2+g[2]]]||null,A=s<=3,y=A?e:i,B=A?i:e,_=Qt[y].wx,S=Qt[B].wx,M=["木","火","土","金","水"],Y=r0(M.indexOf(S)-M.indexOf(_),5),T={1:"用生体,吉",4:"体克用,吉",2:"用克体,凶",3:"体生用,泄气"}[Y]||"体用比和,平";let W,X,Z,$;{const e0=t.now||new Date,q=k0.fromYmdHms(e0.getFullYear(),e0.getMonth()+1,e0.getDate(),e0.getHours(),0,0).getLunar(),c0=["寅","卯","辰","巳","午","未","申","酉","戌","亥","子","丑"],b=Math.abs(q.getMonth()),u0=c0[(b-1+12)%12];W={寅:"木",卯:"木",辰:"土",巳:"火",午:"火",未:"土",申:"金",酉:"金",戌:"土",亥:"水",子:"水",丑:"土"}[u0];const E0=["木","火","土","金","水"],i0=E0.indexOf(W),K=N=>{const P=r0(E0.indexOf(N)-i0,5);return P===0?"旺":P===1?"死":P===2?"囚":P===3?"休":"相"};X=K(_),Z=K(S);const h0=["旺","相","休","囚","死"].indexOf(X),G=["旺","相","休","囚","死"].indexOf(Z);h0<G?$="体卦"+X+"、用卦"+Z+":体气胜于用气,所占之事主方占优,吉象更实。":h0>G?$="体卦"+X+"、用卦"+Z+":用气胜于体气,所占之事客方势强,宜缓图之。":$="体用卦气同"+X+":势均力敌,成败系于"+(X==="旺"?"当下时令之助":"行运之机")}return{upper:e,lower:i,move:s,benGua:E,bianGua:F,huGua:x,tiGua:y,yongGua:B,tiWx:_,yongWx:S,shengke:T,benYao:o,monthWx:W,tiWangShuai:X,yongWangShuai:Z,wangShuaiNote:$}}const WE={乾为天:{gong:"乾",shi:6},天风姤:{gong:"乾",shi:1},天山遁:{gong:"乾",shi:2},天地否:{gong:"乾",shi:3},风地观:{gong:"乾",shi:4},山地剥:{gong:"乾",shi:5},火地晋:{gong:"乾",shi:4},火天大有:{gong:"乾",shi:3},坎为水:{gong:"坎",shi:6},水泽节:{gong:"坎",shi:1},水雷屯:{gong:"坎",shi:2},水火既济:{gong:"坎",shi:3},泽火革:{gong:"坎",shi:4},雷火丰:{gong:"坎",shi:5},地火明夷:{gong:"坎",shi:4},地水师:{gong:"坎",shi:3},艮为山:{gong:"艮",shi:6},山火贲:{gong:"艮",shi:1},山天大畜:{gong:"艮",shi:2},山泽损:{gong:"艮",shi:3},火泽睽:{gong:"艮",shi:4},天泽履:{gong:"艮",shi:5},风泽中孚:{gong:"艮",shi:4},风山渐:{gong:"艮",shi:3},震为雷:{gong:"震",shi:6},雷地豫:{gong:"震",shi:1},雷水解:{gong:"震",shi:2},雷风恒:{gong:"震",shi:3},地风升:{gong:"震",shi:4},水风井:{gong:"震",shi:5},泽风大过:{gong:"震",shi:4},泽雷随:{gong:"震",shi:3},巽为风:{gong:"巽",shi:6},风天小畜:{gong:"巽",shi:1},风火家人:{gong:"巽",shi:2},风雷益:{gong:"巽",shi:3},天雷无妄:{gong:"巽",shi:4},火雷噬嗑:{gong:"巽",shi:5},山雷颐:{gong:"巽",shi:4},山风蛊:{gong:"巽",shi:3},离为火:{gong:"离",shi:6},火山旅:{gong:"离",shi:1},火风鼎:{gong:"离",shi:2},火水未济:{gong:"离",shi:3},山水蒙:{gong:"离",shi:4},风水涣:{gong:"离",shi:5},天水讼:{gong:"离",shi:4},天火同人:{gong:"离",shi:3},坤为地:{gong:"坤",shi:6},地雷复:{gong:"坤",shi:1},地泽临:{gong:"坤",shi:2},地天泰:{gong:"坤",shi:3},雷天大壮:{gong:"坤",shi:4},泽天夬:{gong:"坤",shi:5},水天需:{gong:"坤",shi:4},水地比:{gong:"坤",shi:3},兑为泽:{gong:"兑",shi:6},泽水困:{gong:"兑",shi:1},泽地萃:{gong:"兑",shi:2},泽山咸:{gong:"兑",shi:3},水山蹇:{gong:"兑",shi:4},地山谦:{gong:"兑",shi:5},雷山小过:{gong:"兑",shi:4},雷泽归妹:{gong:"兑",shi:3}},$E={乾:["甲子","甲寅","甲辰","壬午","壬申","壬戌"],坎:["戊寅","戊辰","戊午","戊申","戊戌","戊子"],艮:["丙辰","丙午","丙申","丙戌","丙子","丙寅"],震:["庚子","庚寅","庚辰","庚午","庚申","庚戌"],巽:["辛丑","辛亥","辛酉","辛未","辛巳","辛卯"],离:["己卯","己丑","己亥","己酉","己未","己巳"],坤:["乙未","乙巳","乙卯","癸丑","癸亥","癸酉"],兑:["丁巳","丁卯","丁丑","丁亥","丁酉","丁未"]},QE={乾:"金",兑:"金",坎:"水",离:"火",震:"木",巽:"木",艮:"土",坤:"土"},KE={甲:["青龙","朱雀","勾陈","腾蛇","白虎","玄武"],乙:["青龙","朱雀","勾陈","腾蛇","白虎","玄武"],丙:["朱雀","勾陈","腾蛇","白虎","玄武","青龙"],丁:["朱雀","勾陈","腾蛇","白虎","玄武","青龙"],戊:["勾陈","腾蛇","白虎","玄武","青龙","朱雀"],己:["腾蛇","白虎","玄武","青龙","朱雀","勾陈"],庚:["白虎","玄武","青龙","朱雀","勾陈","腾蛇"],辛:["白虎","玄武","青龙","朱雀","勾陈","腾蛇"],壬:["玄武","青龙","朱雀","勾陈","腾蛇","白虎"],癸:["玄武","青龙","朱雀","勾陈","腾蛇","白虎"]},VE={甲:"木",乙:"木",丙:"火",丁:"火",戊:"土",己:"土",庚:"金",辛:"金",壬:"水",癸:"水"},il={子:"水",丑:"土",寅:"木",卯:"木",辰:"土",巳:"火",午:"火",未:"土",申:"金",酉:"金",戌:"土",亥:"水"},ul=["木","火","土","金","水"];function eF(t,e){if(e===t)return"兄弟";const i=ul.indexOf(t),r=((ul.indexOf(e)-i)%5+5)%5;return r===1?"子孙":r===2?"妻财":r===3?"官鬼":r===4?"父母":"兄弟"}const tF=["甲","乙","丙","丁","戊","己","庚","辛","壬","癸"],an=["子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥"],ln=(t,e)=>(t%e+e)%e,p3={7:1,6:2,5:3,4:4,3:5,2:6,1:7,0:8};function nF(t=Math.random,e){var A;const i=[],s=[];for(let y=0;y<6;y++){const B=Math.floor(t()*4);let _,S;B===0?(_=0,S="老阴"):B===1?(_=1,S="少阳"):B===2?(_=0,S="少阴"):(_=1,S="老阳"),i.push(_),s.push({v:_,nm:S,backs:B})}const r=p3[i[0]*4+i[1]*2+i[2]],c=p3[i[3]*4+i[4]*2+i[5]],o=Oi[c*10+r],d=i.map((y,B)=>s[B].nm==="老阴"||s[B].nm==="老阳"?1-y:y),g=p3[d[0]*4+d[1]*2+d[2]],f=p3[d[3]*4+d[4]*2+d[5]],E=Oi[f*10+g],F=[];s.forEach((y,B)=>{(y.nm==="老阴"||y.nm==="老阳")&&F.push(B+1)});let x;if(e){const y=WE[o.name];if(y){const B=$E[y.gong]||[],_=ln(H3(e.y,e.m,e.d)+55,60),S=tF[_%10]+an[_%12],M=an[ln(2+Jl(e.y,e.m,e.d,12),12)],Y=KE[S[0]]||[],z=an.indexOf(M),T=[an[ln(z+6,12)]],W=_-_%10,X=[an[ln(W+10,12)],an[ln(W+11,12)]],Z=y.shi,$=ln(Z+2,6)+1,e0=QE[y.gong]||"金",q=B.map((c0,b)=>{const u0=c0[1];return{gz:c0,ganWx:VE[c0[0]]||"",zhiWx:il[u0]||"",liuqin:eF(e0,il[u0]||""),shen:Y[b]||"",isShi:b+1===Z,isYing:b+1===$,kong:X.includes(u0)}});x={gong:y.gong,lines:q,shiPos:Z,yingPos:$,dayGZ:S,monthZhi:M,yuePo:T,xunKong:X,shiLiQin:((A=q[Z-1])==null?void 0:A.liuqin)||""}}}return{yao:i,names:s,benGua:o,bianGua:E,dongYao:F,najia:x}}function iF(t,e,i,s,r,c,o){let d,g,f;d=e,g=i,f=s;const E=r0(d-1,6),F=r0(E+(g-1),6),x=r0(F+(f-1),6),A=_r[x];return{a:d,b:g,c:f,idx:x,name:A,detail:fE[A]}}const uF={kind:"mingpan",title:"辛金女命七杀格:以印化杀,以食制杀,事业感情双线解析",overview:"命主为辛金日主,生于午月,月令七杀当权,构成七杀格。天干两透正印戊土,时干癸水食神,形成「杀印相生」与「食神制杀」并存之局。日主中和,用神取土印星,喜食伤、财、印,忌比劫、官杀,调候喜水。当前行乙卯偏财运(34-43岁),2026年流年丙午,官杀混杂,事业与感情均面临挑战与机遇。",rawReading:{summary:"命主辛金生于午月,月令七杀,但天干两戊正印透出,化杀生身,时干癸水食神制杀调候,日主中和。用神为土印星,喜食伤、财、印,忌比劫、官杀。当前乙卯偏财运,2026年丙午流年官杀混杂,需注意事业压力与感情波动。",keyPoints:["七杀格,印星强旺,杀印相生,主贵气与压力并存","时干癸水食神透出,可制杀调候,但根弱,需大运流年扶助","当前乙卯偏财运,财星生杀,事业压力增大,但亦有财源机会","2026年丙午流年,正官坐七杀,官杀混杂,感情易生变数"]},advice:"事业上善用印星优势,深耕专业领域,考取资质证书;2. 感情中主动沟通,避免因隐忍积累矛盾;3. 财务上以稳健为主,勿因一时冲动投资;4. 健康上注重补水与情绪调节,可定期旅行近水之地;5. 利用食神特性,培养写作、绘画等表达性爱好,作为压力出口。",conclusion:"命主七杀格配印,虽压力常伴,但亦有化压力为动力的天赋。人生如登山,每一步的艰辛都铸就了更坚韧的自己。不必苛求完美,学会与压力共处,善用食神之巧,自能在事业与感情中找到平衡。",disclaimer:"命理分析仅供参考,人生选择仍需结合现实情况,理性决策。",character:{summary:"命主气质外柔内刚,辛金如珠玉,温润而有韧性。七杀格赋予她强烈的目标感和抗压能力,但印星过旺又使她思虑较多,行动前易犹豫。内在动力源于对安全感和认可的追求,核心矛盾在于「想掌控局面」与「依赖他人认可」之间的拉扯。生活中表现为:工作认真负责,但容易因过度操心而疲惫;对亲近之人要求较高,却又不愿直接表达需求。",traits:[{name:"外柔内刚,抗压性强",desc:"日主辛金为珠玉之金,外表温和,但月令七杀当权,内在有不服输的韧性。七杀格之人遇强则强,能在压力下激发潜能。"},{name:"思虑周密,行动谨慎",desc:"天干两戊正印透出,印星主思考、学习、保护。印星过旺则思多行少,做事前会反复权衡,容易错失时机。"},{name:"追求完美,自我要求高",desc:"七杀为忌,代表严苛的标准。命主对自己和他人都有较高要求,容易因细节不满而焦虑。"}],coreConflict:"核心冲突在于「杀印相生」与「食神制杀」两种力量的拉扯。印星化杀,使压力转化为内省与学习,但也可能因过度内化而压抑情绪;食神制杀,试图以才华和表达化解压力,但癸水根弱,制杀不力,常感心有余而力不足。这种张力导致她在「默默承受」与「主动出击」之间摇摆。",emotion:"情绪底色偏紧绷,七杀为忌,容易感到无形的压力与危机感。安全感主要来源于稳定的环境和被认可的感觉,因此对工作成就和人际关系中的肯定较为依赖。压力反应常表现为沉默、回避或过度思考,而非直接宣泄。"},family:{background:"年柱戊辰,纳音大林木,辰为水库,藏戊乙癸,正印坐华盖。家境可能较为传统,重视教育与名声,但华盖星也暗示家人中有信仰或艺术倾向。月柱戊午,正印坐七杀,家庭氛围可能外显和谐,实则暗藏压力,父母对命主期望较高。",parents:"父亲星位(正财)未现,盘面未明示父亲具体状态。母亲星位(偏印)在月支午中藏己土,偏印为继母或非传统母亲角色,也可能代表母亲性格内敛、务实。月干戊正印透出,代表母亲或长辈对命主有实际支持,但午火七杀暗藏,母亲可能同时带来压力,如过度保护或高标准要求。",imprint:"原生家庭使命主形成「必须优秀才被爱」的潜意识。印星过旺,长辈的期望内化为自我要求,导致她习惯性自我加压。同时,七杀在月令,早年可能经历较多管束或竞争,安全感建立较慢,成年后对稳定关系有较强渴求。"},mind:{action:"行动力受印星过旺影响,启动较慢,常因思虑过多而拖延。但一旦开始,七杀格的韧性会让她坚持到底。改善时机在行财运或食伤运时,如当前乙卯偏财运,财星破印,能减少犹豫,增加行动力。",pattern:"反复出现的行为模式是「先隐忍后爆发」。印星化杀,习惯将压力内化,积累到一定程度后通过食神(表达、创作)或七杀(冲突、决断)释放。破局方向在于主动使用食神,如定期表达、写作、运动,避免情绪积压。",growth:"成长方向是加强「食神」的力量,即培养输出与表达的习惯。用神为土印星,但调候喜水,现实中可多接触水相关活动(游泳、旅行近水),或学习沟通技巧,将内在思考转化为外在成果。"},lifeStages:[{stage:"幼年·少年",age:"0-20 岁",summary:"年柱戊辰正印,月柱戊午正印坐七杀,早年家庭环境重视教育,但压力较大。4-13岁行戊午大运,印星加重,学业上可能被严格要求,性格偏内向。14-23岁行丁巳大运,七杀透干,学业竞争激烈,但也锻炼了抗压能力。此阶段宜培养一门技艺或兴趣,作为情绪出口。"},{stage:"青年",age:"20-40 岁",summary:"24-33岁行丙辰大运,正官透干,事业起步,可能进入稳定单位或承担管理职责。但官星为忌,工作压力大,易感束缚。34-43岁行乙卯偏财运,财星生杀,事业上机遇与挑战并存,可能尝试创业或副业,但需注意财务风险。感情方面,官杀混杂,易遇复杂关系,需谨慎选择。"},{stage:"中年",age:"40-60 岁",summary:"44-53岁行甲寅正财运,财星有力,事业财运提升,但财生杀,压力仍存。此阶段宜稳扎稳打,积累财富。54-63岁行癸丑大运,食神透干,制杀有力,事业上可发挥才华,获得认可。感情关系趋于稳定,但需注意健康。"},{stage:"晚年",age:"60 岁后",summary:"64岁后行壬子伤官运,伤官生财,晚年生活丰富,可发展兴趣爱好。但伤官见官,需注意人际关系。时柱癸巳,食神坐正官,子女可能较有出息,晚年可享天伦之乐。"}],career:{summary:"七杀格配印,适合从事需要专业能力和抗压性的工作,如管理、技术、医疗、法律等。印星为用,利于学术研究、教育、文化领域。食神透出,也可发挥创意、表达才能。当前乙卯偏财运,财星生杀,事业压力增大,但也是开拓财源的机会。2026年丙午流年,官杀混杂,工作上易有变动或竞争,需谨慎应对。",direction:"适宜方向:教育、咨询、策划、技术研发、行政管理。也可考虑自由职业或创业,但需注意风险控制。",advice:"针对启动难:设定明确的小目标,借助外部监督(如导师、伙伴);针对坚持难:将大任务分解,定期奖励自己。利用食神特性,多输出作品或方案,以成果驱动行动。"},love:{summary:"配偶星位(正官)在时支巳中藏丙火,正官为夫星,但藏而不透,且巳火为七杀之根,暗示感情中易遇复杂对象或关系不明朗。七杀格女命,对伴侣要求较高,既渴望强者保护,又希望对方温柔体贴。当前乙卯偏财运,财生杀,感情上易有压力或竞争。2026年丙午流年,正官透干,但坐七杀,官杀混杂,感情易生变数,需注意沟通与信任。",advice:"在感情中学会表达需求,避免过度隐忍。选择伴侣时,注重对方稳定性与责任感,而非仅凭一时激情。若遇复杂关系,及时止损,勿因执念消耗自己。"},health:{summary:"日主辛金,生于夏月,火旺土燥,调候喜水。原局水弱,易有皮肤干燥、呼吸道敏感、便秘等问题。七杀为忌,压力大时易引发头痛、失眠。印星过旺,思虑多,需注意脾胃功能。",advice:"多补充水分,饮食清淡,避免辛辣燥热食物。规律运动,如游泳、瑜伽,有助于舒缓压力。保持充足睡眠,必要时进行冥想或心理咨询。"},wealth:{summary:"财星为喜,但原局财星不显,仅藏于辰、巳中,故财运需待大运流年引发。当前乙卯偏财运,偏财透干,有机会获得额外收入,但财生杀,也易因事业压力而破财。44岁后甲寅正财运,财运稳步提升。理财上宜稳健,避免高风险投资。",advice:"建立应急储备金,减少不必要的开支。可学习理财知识,或咨询专业人士。利用食神生财的特性,通过技能或创意增加收入。"},suitability:{suitable:!0,note:"所问事业与感情,盘面信息充分,可提供针对性建议。",suggestion:"无"},quality:"ok"},sF={report:uF},N1={y:1988,m:6,d:15,hourIndex:6,time:"12:00",gender:"女",location:{lng:116.4,lat:39.9,province:"北京市",city:"北京市",district:"东城区"}},sl=[{id:"bazi",name:"四柱八字",glyph:"命",calc:()=>w8(N1)},{id:"ziwei",name:"紫微斗数",glyph:"星",calc:()=>{const t=k0.fromYmd(N1.y,N1.m,N1.d).getLunar();return qE({ganzhi:t.getYearInGanZhi(),month:Math.abs(t.getMonth()),day:t.getDay(),hour:N1.hourIndex,time:N1.time,location:N1.location,gender:N1.gender,birthYear:N1.y,solarDate:[N1.y,N1.m,N1.d]})}},{id:"astrology",name:"古典星盘",glyph:"穹",calc:()=>da(N1.y,N1.m,N1.d,12,0,N1.location.lng,N1.location.lat)},{id:"qimen",name:"奇门遁甲",glyph:"遁",calc:()=>XE({datetime:new Date})},{id:"meihua",name:"梅花易数",glyph:"梅",calc:()=>JE({now:new Date})},{id:"liuyao",name:"六爻",glyph:"爻",calc:()=>nF(void 0,{y:new Date().getFullYear(),m:new Date().getMonth()+1,d:new Date().getDate()})},{id:"liuren",name:"大六壬",glyph:"课",calc:()=>cE(new Date)},{id:"xiaoliuren",name:"小六壬",glyph:"掌",calc:()=>iF("time",new Date().getMonth()+1,new Date().getDate(),new Date().getHours()%12)},{id:"tarot",name:"塔罗",glyph:"镜",calc:()=>({spread:Sr().find(e=>e.id==="three")||Sr()[0],cards:AE(3)})}],sr={bazi:t=>a.jsx(E8,{data:t}),ziwei:t=>a.jsx(p8,{data:t}),astrology:t=>a.jsx(v8,{data:t}),qimen:t=>a.jsx(x8,{data:t}),meihua:t=>a.jsx(D8,{data:t}),liuyao:t=>a.jsx(A8,{data:t}),liuren:t=>a.jsx(B8,{data:t}),xiaoliuren:t=>a.jsx(j8,{data:t}),tarot:t=>a.jsx(_8,{data:t})};function rF(){var A;const[t,e]=v.useState("idle"),[i,s]=v.useState(null),[r,c]=v.useState(!1),[o,d]=v.useState("bazi"),[g,f]=v.useState(null),E=sl.find(y=>y.id===o);w8(N1);const F=()=>{e("idle"),s(null),f(null),c(!1)},x=()=>{e("casting"),s(null),f(null),setTimeout(()=>{try{f(E.calc())}catch(y){console.error("本地排盘失败",y)}o==="bazi"&&s(sF.report),e("done")},900)};return a.jsxs("div",{className:"wrap",style:{paddingTop:"var(--sp-6)"},children:[a.jsx("section",{className:"module-hero compact",children:a.jsx("div",{className:"wrap",children:a.jsxs("div",{className:"mh-row",children:[a.jsx(L0,{className:"back-link",to:"/",children:"‹ 返册页"}),a.jsxs("h2",{className:"module-title",children:[a.jsx("span",{className:"cn",children:"体验演示"}),a.jsx("span",{className:"mh-sub",children:"无需注册 · 无需配置 · 点开即玩"})]}),a.jsx("p",{className:"mh-kicker",children:"九种术数直接体验,八字附完整 AI 解读示例"})]})})}),a.jsxs("div",{className:"wrap",style:{marginTop:"var(--sp-4)"},children:[t==="idle"&&a.jsxs("div",{className:"result-card",style:{padding:"var(--sp-5)"},children:[a.jsx("p",{style:{fontSize:"1.05rem",marginBottom:"var(--sp-2)"},children:"选一种术数,点一下就能看到排盘结果;八字还会附带一份完整的 AI 解读示例。"}),a.jsx("p",{className:"tiny muted",style:{marginBottom:"var(--sp-2)"},children:"示例档案:1988年6月15日 · 北京 · 女;其余术数按当前时刻起例"}),a.jsx("p",{className:"tiny muted",style:{marginBottom:"var(--sp-3)"},children:"三步即玩:① 选术数 → ② 点「开始体验」→ ③ 看结果"}),a.jsx("div",{className:"art-picker",style:{display:"flex",flexWrap:"wrap",gap:".5rem",marginBottom:"var(--sp-4)"},children:sl.map(y=>a.jsxs("button",{onClick:()=>d(y.id),className:"btn-seal btn-ghost"+(y.id===o?" art-active":""),style:{fontSize:".85rem",padding:".45rem 1rem",borderColor:y.id===o?"var(--celadon-deep)":void 0,color:y.id===o?"var(--celadon-deep)":void 0},children:[y.glyph," ",y.name]},y.id))}),a.jsx("button",{className:"btn-seal",style:{fontSize:"1rem",padding:".7rem 2.2rem"},onClick:x,children:"开 始 体 验"})]}),t==="casting"&&a.jsxs("div",{className:"result-card",style:{textAlign:"center",padding:"var(--sp-6)"},children:[a.jsx("div",{className:"casting-ring",children:a.jsx("div",{className:"casting-glyph",style:{position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center",fontFamily:"var(--font-zm)",fontSize:"1.6rem",color:"var(--celadon-deep)"},children:"演"})}),a.jsx("p",{children:"排盘推演中 · 报告将成"})]}),t==="done"&&a.jsxs(a.Fragment,{children:[a.jsxs("div",{className:"altar-result stagger",children:[g&&((A=sr[o])==null?void 0:A.call(sr,g)),i&&a.jsxs("div",{className:"result-card mt-3",children:[a.jsxs("h3",{children:["AI 深度解读 ",a.jsx("span",{className:"tag-cool",style:{marginLeft:".4rem",fontSize:".72rem"},children:"示例报告"})]}),a.jsx(Ca,{report:i,artName:"四柱八字",onExport:()=>h8(i,"四柱八字","事业与感情运势如何")})]}),a.jsxs("div",{className:"btn-row mt-3 no-print",children:[a.jsx("button",{className:"btn-seal btn-ghost",style:{fontSize:".9rem",padding:".5rem 1.4rem"},onClick:F,children:"重 新 演 示"}),a.jsxs("button",{className:"btn-seal btn-ghost",style:{fontSize:".9rem",padding:".5rem 1.4rem"},onClick:()=>c(y=>!y),children:[r?"隐 藏":"查 看","数据(开发者)"]}),a.jsx(L0,{className:"btn-seal btn-ghost",style:{fontSize:".9rem",padding:".5rem 1.4rem",textDecoration:"none"},to:"/auth",children:"体验完整功能(存档 / AI 实时解读)→"})]}),r&&i&&a.jsx("pre",{style:{fontSize:".68rem",lineHeight:1.6,whiteSpace:"pre-wrap",wordBreak:"break-all",background:"rgba(251,249,243,.6)",border:"1px solid var(--line-soft)",borderRadius:"var(--r-sm)",padding:"var(--sp-3)",marginTop:"var(--sp-3)"},children:JSON.stringify(i,null,1).slice(0,4e3)})]}),a.jsx(c8,{})]})]})]})}const Nr=[{id:"yuanhai-ziping",title:"渊海子平",author:"题宋·徐大升编,托名徐子平",era:"宋代",arts:["bazi"],summary:"子平术的奠基之作,首次系统确立以日干为体、以月令为纲的论命体系,为四柱八字的正脉源头。",background:"唐代李虚中以年月日三柱推命,至宋代徐子平加入时柱,四柱完备。本书由徐大升辑录整理,明清以后成为子平命理入门必读。",chapters:[{title:"论五行所生之始",summary:"五行源流与干支属性"},{title:"论天干地支所出",summary:"干支纪时与阴阳配合"},{title:"论日干为主",summary:"确立日干为命主之体"},{title:"继善篇",summary:"命理总纲与格局要义"}],excerpts:[{title:"继善篇(节选)",source:"《渊海子平·继善篇》",original:"人禀天地,命属阴阳。生居覆载之内,尽在五行之中。欲知贵贱,先观月令乃提纲。",translation:"人受天地之气而生,命运归属阴阳消长。人生于天地之间,都在五行运行之中。要知命之贵贱,先看月令——它是判断格局的总纲。",annotation:"「月令乃提纲」:月支为命局旺衰之枢纽,子平术论命首重月令,此句为全书纲领。"},{title:"论日干为主(节选)",source:"《渊海子平》",original:"取日干为主,以年为根,以月为苗,以日为花,以时为果。",translation:"以日干为命主自身,年柱如根、月柱如苗、日柱如花、时柱如果。",annotation:"根苗花果之喻:年主祖上幼年,月主父母青年,日主自身中年,时主子女暮年。"}],sourceNote:"据通行《渊海子平》点校本整理(明刻本系统),原文选段属公开领域。"},{id:"sanming-tonghui",title:"三命通会",author:"明·万民英",era:"明代",arts:["bazi"],summary:"明代命学集大成之作,十二卷巨帙,汇历代命书精要,于纳音、神煞、格局、大运无所不包。",background:"万民英(1521-1603)官至福建布政司参议,博采《渊海子平》《星平会海》等数十家命书,删繁就简而成此编。",chapters:[{title:"论天干地支",summary:"干支阴阳五行总论"},{title:"论纳音取象",summary:"三十纳音之象义"},{title:"论十神",summary:"十神定义与生克"},{title:"论大运",summary:"大运起法与行运吉凶"}],excerpts:[{title:"论人元司令(节选)",source:"《三命通会·卷一》",original:"天气始于甲,地气始于子,子甲相合,命曰岁立。谨候其时,气可与期。",translation:"天干之气从甲开始,地支之气从子开始,子与甲相配,便确立了岁序。恭敬地等待时令,气运便可预期。",annotation:"甲子相配为六十甲子之首,岁立即历法纪元之始,命理以干支纪时推气运。"}],sourceNote:"据《四库全书》本与清刻本整理,选段属公开领域。"},{id:"ditian-sui",title:"滴天髓阐微",author:"清·任铁樵注",era:"清代",arts:["bazi"],summary:"命理经典《滴天髓》的阐发注本,以「天道、地道、人道」三篇立论,重体用、论源流,为子平术登堂入室之阶。",background:"《滴天髓》相传为京图撰、刘伯温注;清代任铁樵以毕生实践逐句阐发,举六百余例证,成为近代命理研习的巅峰文本。",chapters:[{title:"天道篇",summary:"体用与生克"},{title:"地道篇",summary:"旺衰与四时"},{title:"人道篇",summary:"格局与形象"}],excerpts:[{title:"天道(节选)",source:"《滴天髓阐微·天道》",original:"欲识三元万法宗,先观帝载与神功。坤元合德玄机妙,惟向胞胎仔细穷。",translation:"要认识天干、地支、人元这三元的根本法则,先要观察天道承载与造化的功用。地道与天道合德,玄机精妙,须从命局根基处仔细推究。",annotation:"三元指天干、地支、藏干;「帝载神功」喻阴阳造化的根本力量。"},{title:"天干·甲木(节选)",source:"《滴天髓阐微·天干》",original:"甲木参天,脱胎要火。春不容金,秋不容土。火炽乘龙,水宕骑虎。地润天和,植立千古。",translation:"甲木如参天大树,萌芽初生时需要火来温暖生发。春天木旺不喜金来克伐,秋天木衰不喜土重埋根。火太旺时需湿土(辰)来泄,水太旺时需燥土(寅)来制。地润天和,方能植立千古。",annotation:"《滴天髓·天干》十干总诀之一,为甲木调候本源(《穷通宝鉴》转引)。「地润天和,植立千古」为甲木成格之象。"}],sourceNote:"据民国校印本整理,选段属公开领域。"},{id:"ziping-zhenquan",title:"子平真诠",author:"清·沈孝瞻",era:"清代",arts:["bazi"],summary:"专论格局之法,以月令为经、用神为纬,条分缕析正官、七杀、财、印、食伤诸格,为格局派的圭臬。",background:"沈孝瞻精研子平数十年,其论以「格局」立骨,纠正了明清以来重神煞轻格局的风气。",chapters:[{title:"论用神",summary:"月令取用之道"},{title:"论正官格",summary:"正官格的成破"},{title:"论财格",summary:"财格之喜忌"}],excerpts:[{title:"论用神(节选)",source:"《子平真诠》",original:"八字用神,专求月令。以日干配月令地支,而生克不同,格局分焉。",translation:"八字的用神,专门从月令中寻求。以日干配合月令地支,因生克关系不同,格局便由此区分。",annotation:"用神为命局之枢纽,本书主张「专求月令」,是格局派的核心主张。"}],sourceNote:"据《子平真诠》通行本整理,选段属公开领域。"},{id:"qiongtong-baojian",title:"穷通宝鉴",author:"清·余春台辑",era:"清代",arts:["bazi"],summary:"按月令十干逐一论其喜忌用神,以「调候」为纲,务实好用,为实践派命理推崇的案头之书。",background:"原为《栏江网》抄本,余春台整理为《穷通宝鉴》,专论十干在各月令的穷通喜忌,调候之法由此大行。",chapters:[{title:"论甲木",summary:"甲木十二月喜忌"},{title:"论丙火",summary:"丙火十二月喜忌"},{title:"论壬水",summary:"壬水十二月喜忌"}],excerpts:[{title:"论甲木(节选)",source:"《穷通宝鉴·甲木》(转引自《滴天髓·天干》)",original:"甲木参天,脱胎要火。春不容金,秋不容土。火炽乘龙,水宕骑虎。",translation:"甲木如参天大树,初生时需要火来温暖生发。春天木旺不喜金来克伐,秋天木衰不喜土重埋根。火太旺时要有湿土(辰龙)来泄,水太旺时要有燥土(寅虎)来制。",annotation:"此为甲木调候总诀。本源见《滴天髓·天干》(全文含「地润天和,植立千古」),《穷通宝鉴》转引之,两书互见。"}],sourceNote:"据《穷通宝鉴》通行本整理,选段属公开领域。"},{id:"ziwei-quanshu",title:"紫微斗数全书",author:"题明·罗洪先序,托名陈抟所传",era:"明代",arts:["ziwei"],summary:"紫微斗数最重要的传世文本,系统记载安星法、十二宫、十四主星与诸星曜的庙旺落陷,是斗数研习的源头。",background:"传说紫微斗数由北宋陈抟创立,明代始有刊本流布。全书以「紫微星垣」为纲,与八字并称命理双璧。",chapters:[{title:"安星诀",summary:"命宫身宫与诸星安法"},{title:"诸星问答",summary:"十四主星性情论"},{title:"论十二宫",summary:"十二宫分论"}],excerpts:[{title:"太微赋(节选)",source:"《紫微斗数全书·卷一·太微赋第一》",original:"斗数至玄至微,理旨难明,虽设问于百篇之中,犹有言而未尽。至如星之分野,各有所属,寿夭贤愚,富贵贫贱,不可一概论议。其星分布于十二垣,数定乎三十六位,入庙为奇,失度为虚。星临庙旺,再观生克之机;命坐强宫,细察制化之理。",translation:"斗数极为玄妙精微,其理旨难以尽明,即便设问于百篇之中,仍有言犹未尽之处。星曜各有分野归属,寿夭贤愚、富贵贫贱不可一概而论。星曜分布于十二宫垣,定数于三十六位星系格局:入庙为奇,失度为虚。星临庙旺之位,还需再看生克制化之机;命坐强旺之宫,要细察制化之理。",annotation:"「入庙为奇,失度为虚」「星临庙旺,再观生克之机」:庙旺落陷与生克制化,是斗数断吉凶的两大枢纽。"}],sourceNote:"据《紫微斗数全书》坊刻本整理,选段属公开领域。"},{id:"zhouyi",title:"周易",author:"伏羲画卦,文王系辞,孔子作传",era:"先秦",arts:["liuyao","meihua"],summary:"群经之首,中国思想的源头活水。六十四卦三百八十四爻,以阴阳变化通贯天人,是六爻、梅花等一切卦术的根基。",background:"《周易》由经(卦爻辞)与传(十翼)组成。其「观物取象」「穷理尽性」的思维,塑造了整个东方文化的底层结构。",chapters:[{title:"乾卦",summary:"刚健中正之象"},{title:"坤卦",summary:"柔顺厚德之象"},{title:"系辞上传",summary:"易学总论"}],excerpts:[{title:"乾卦(节选)",source:"《周易·乾卦》",original:"元亨利贞。天行健,君子以自强不息。",translation:"乾卦象征创始、通达、和合、正固。天道运行刚健不息,君子应效法它,自强不息地奋进。",annotation:"「元亨利贞」为四德,天行健句为孔子《大象传》对乾卦的发挥。"},{title:"系辞上传(节选)",source:"《周易·系辞上》",original:"易与天地准,故能弥纶天地之道。仰以观于天文,俯以察于地理,是故知幽明之故。",translation:"《易》与天地相准,因此能包罗天地的法则。抬头观察天文,俯身考察地理,因此能知晓幽暗与显明的事理。",annotation:"此为易学认识论的经典表述:观天察地而通幽明。"}],sourceNote:"据《周易正义》(阮刻十三经注疏本)整理,选段属公开领域。"},{id:"meihua-yishu",title:"梅花易数",author:"宋·邵雍",era:"宋代",arts:["meihua"],summary:"以「观梅」起卦而得名,主张心动即占、万物皆数,凡时间、字数、方位、声音皆可起卦,重体用生克而轻程式。",background:"邵雍(1011-1077)为北宋易学大家,其《皇极经世》推演宇宙元会运世。梅花易数以简易灵动著称,是象数易学的通俗化结晶。",chapters:[{title:"观梅占",summary:"起卦法式总说"},{title:"体用论",summary:"体用生克总纲"},{title:"万物皆数",summary:"取数起卦诸法"}],excerpts:[{title:"观梅占(节选)",source:"《梅花易数·观梅占》",original:"辰年十二月十七日申时,康节先生偶观梅,见二雀争枝坠地。先生曰:不动不占,不因事不占。今二雀争枝坠地,怪也。因占之。",translation:"辰年十二月十七日申时,邵康节先生偶然观赏梅花,看见两只喜鹊争枝而坠地。先生说:没有变动不占,没有事因不占。如今二雀争枝坠地,是异常之象。于是起卦占断。",annotation:"此即「梅花易数」得名之由来,也是「不动不占」原则的出处。"}],sourceNote:"据《梅花易数》通行本整理,选段属公开领域。"},{id:"zengshan-buyi",title:"增删卜易",author:"清·野鹤老人",era:"清代",arts:["liuyao"],summary:"六爻实践派的扛鼎之作,以大量实战卦例说明断卦方法,删繁就简,重验不重玄,为六爻研习者的必读经典。",background:"野鹤老人积数十年占验之功,著成此书。书以「增删」为名,即增补卦例、删去虚文的取义。",chapters:[{title:"摇钱起卦",summary:"铜钱起卦法"},{title:"装卦",summary:"纳甲装卦法"},{title:"用神",summary:"取用神之要"}],excerpts:[{title:"用神(节选)",source:"《增删卜易·用神章》",original:"用神者,卦之体也。凡占必先寻用神,用神不现,须寻伏神。",translation:"用神是卦的根本。凡占卜必须先确定用神;用神在卦中不出现时,就要寻找伏神。",annotation:"取用神是六爻断卦的第一步:问财取财爻、问官取官鬼爻等。"}],sourceNote:"据《增删卜易》通行本整理,选段属公开领域。"},{id:"bushe-zhengzong",title:"卜筮正宗",author:"清·王洪绪",era:"清代",arts:["liuyao"],summary:"六爻入门经典,系统讲述装卦、世应、六亲六神、日月动变诸法,条理清晰,为启蒙之善本。",background:"王洪绪精于医卜,其书以「正宗」自任,旨在正本清源,纠正当时卜书的芜杂。",chapters:[{title:"启蒙节要",summary:"干支五行基础"},{title:"八宫诸卦",summary:"六十四卦宫属"},{title:"世应六亲",summary:"世应安法"}],excerpts:[{title:"论用神(节选)",source:"《卜筮正宗》",original:"凡占必以用神为主,有根有气则吉,无根无气则凶。",translation:"凡占卜必须以用神为主,用神有根基有生气的就吉,没有根基没有生气的就凶。",annotation:"「有根」指用神得月日生扶,「有气」指不被刑冲克害。"}],sourceNote:"据《卜筮正宗》通行本整理,选段属公开领域。"},{id:"liuren-daquan",title:"六壬大全",author:"明·郭御青校订",era:"明代",arts:["liuren"],summary:"大六壬集大成之作,汇录起课、九宗门、十二天将、毕法赋等要义,为壬学研习的渊薮。",background:"大六壬与奇门遁甲、太乙神数并称「三式」,六壬最验人事,号称「人事之王」。《六壬大全》明季辑成,流传最广。",chapters:[{title:"起课法",summary:"月将加时立天地盘"},{title:"九宗门",summary:"九种取传之法"},{title:"毕法赋",summary:"百法断课总诀"}],excerpts:[{title:"起课(节选)",source:"《六壬大全·起课》",original:"课传既定,先视四课之生克,次观三传之发用。天地盘加临,日月星为纬。",translation:"课式与三传确定之后,先看四课的生克关系,再看三传的起用。天地盘相互加临,如同日月星辰织成的经纬。",annotation:"四课三传为大六壬断课的主体结构,此句点明课传推演的次序。"}],sourceNote:"据《四库全书》本整理,选段属公开领域。"},{id:"yanpo-diaosou",title:"烟波钓叟歌",author:"托名唐·李靖",era:"唐宋间",arts:["qimen"],summary:"奇门遁甲的纲领歌诀,以韵文总述九宫、八门、九星、八神与三奇六仪之用法,为奇门研习者必背之篇。",background:"歌诀托名李靖所作,实为唐宋间奇门术士的总结之作。「烟波钓叟」即隐者之号,歌诀以口耳相传的方式保存了奇门体系。",chapters:[{title:"总纲",summary:"奇门源流与九宫"},{title:"三奇六仪",summary:"乙丙丁与六仪布局"},{title:"八门九星",summary:"八门九星八神"}],excerpts:[{title:"总纲(节选)",source:"《烟波钓叟歌》",original:"阴阳顺逆妙难穷,二至还乡一九宫。若能了达阴阳理,天地都来一掌中。",translation:"阴阳顺逆的奥妙难以穷尽,冬至夏至阴阳遁的起局回归于一九之宫。若能通达阴阳之理,天地变化尽可运于掌中。",annotation:"「二至」指冬至、夏至,为阴阳遁起局的分界;「一九宫」指阳遁从一宫起、阴遁从九宫起的布法。"}],sourceNote:"据《奇门遁甲统宗》所载歌诀整理,选段属公开领域。"}],N8=t=>Nr.find(e=>e.id===t);function rl(){const{id:t}=Y3(),[e,i]=v.useState(""),[s,r]=v.useState("all");if(t){const o=N8(t);return o?a.jsx(lF,{book:o}):a.jsxs("div",{className:"wrap page-compact",style:{paddingTop:"var(--sp-4)",textAlign:"center"},children:[a.jsxs("div",{className:"result-placeholder",children:[a.jsx("div",{className:"glyph",children:"佚"}),a.jsx("p",{children:"典籍未寻得 · 请返典藏再择"})]}),a.jsx("div",{className:"mt-4",children:a.jsx(L0,{className:"btn-seal btn-ghost",to:"/classics",children:"返 典 藏"})})]})}const c=v.useMemo(()=>Nr.filter(o=>!(s!=="all"&&!o.arts.includes(s)||e&&!o.title.includes(e)&&!o.author.includes(e)&&!o.summary.includes(e))),[s,e]);return a.jsxs("div",{className:"wrap",style:{paddingTop:"var(--sp-7)",paddingBottom:"var(--sp-6)"},children:[a.jsx("div",{className:"section-eyebrow",children:"典藏 · Classics"}),a.jsx("h2",{className:"section-title",style:{marginTop:".8rem"},children:"古籍典藏"}),a.jsxs("p",{className:"section-note",children:["溯术数之源流,录先贤之遗文。共 ",Nr.length," 部典籍,每部附原文选段、注译与出处。"]}),a.jsx("div",{className:"glass-filter",style:{marginTop:"var(--sp-3)"},children:a.jsxs("div",{className:"field-row",style:{marginTop:0,gridTemplateColumns:"1fr 1fr"},children:[a.jsx("div",{className:"field",children:a.jsx("input",{className:"input-line",placeholder:"搜书名 · 作者 · 提要",value:e,onChange:o=>i(o.target.value)})}),a.jsx("div",{className:"field",children:a.jsx(g1,{value:s,options:[{value:"all",label:"全部术数"},...t2.map(o=>({value:o.id,label:o.name}))],onChange:r})})]})}),a.jsx("div",{className:"mt-4",style:{display:"grid",gridTemplateColumns:"repeat(auto-fill,minmax(320px,1fr))",gap:"var(--sp-3)"},children:c.map(o=>a.jsx(aF,{book:o},o.id))}),c.length===0&&a.jsxs("div",{className:"result-placeholder mt-4",children:[a.jsx("div",{className:"glyph",children:"无"}),a.jsx("p",{children:"无典籍契合 · 请易词再寻"})]})]})}function aF({book:t}){return a.jsxs(L0,{to:"/classics/"+t.id,className:"result-card",style:{textDecoration:"none",display:"block",marginBottom:0},children:[a.jsx("h3",{children:t.title}),a.jsxs("div",{className:"tiny muted",style:{marginBottom:".4rem"},children:[t.author," · ",t.era]}),a.jsx("p",{className:"result-text",style:{marginTop:0},children:t.summary}),a.jsx("div",{className:"mt-2",children:t.arts.map(e=>{var i;return a.jsx("span",{className:"pill cool",children:((i=t2.find(s=>s.id===e))==null?void 0:i.name)||e},e)})})]})}function lF({book:t}){return a.jsxs("div",{className:"wrap",style:{paddingTop:"var(--sp-7)",paddingBottom:"var(--sp-6)",maxWidth:880},children:[a.jsx(L0,{className:"back-link",to:"/classics",children:"‹ 返典藏"}),a.jsxs("div",{className:"module-kicker",children:["典藏 · ",t.era]}),a.jsx("div",{className:"module-title-row",children:a.jsxs("h2",{className:"module-title",children:[a.jsx("span",{className:"cn",children:t.title.replace(/[《》]/g,"")}),t.author]})}),a.jsx("div",{className:"mt-2",style:{display:"flex",gap:".5rem",flexWrap:"wrap"},children:t.arts.map(e=>{var i;return a.jsxs(L0,{className:"pill cool",to:"/art/"+e,children:["观 ",(i=t2.find(s=>s.id===e))==null?void 0:i.name]},e)})}),a.jsxs("div",{className:"result-card mt-4",children:[a.jsx("h3",{children:"提要"}),a.jsx("p",{className:"result-text",children:t.summary}),a.jsx("h3",{style:{marginTop:"var(--sp-3)"},children:"成书背景"}),a.jsx("p",{className:"result-text",children:t.background})]}),a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"篇章"}),t.chapters.map((e,i)=>a.jsxs("p",{className:"result-text",children:[a.jsx("strong",{children:e.title})," —— ",e.summary]},i))]}),a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"原文选段"}),t.excerpts.map((e,i)=>a.jsxs("div",{style:{marginBottom:"var(--sp-3)"},children:[a.jsx("p",{className:"tag-cool",style:{letterSpacing:".1em"},children:a.jsx("strong",{children:e.title})}),a.jsx("blockquote",{style:{marginTop:".5rem",padding:"var(--sp-2) var(--sp-3)",background:"var(--paper-deep)",borderLeft:"3px solid var(--celadon)",fontFamily:"var(--font-song)",lineHeight:2.2,color:"var(--ink)"},children:e.original}),e.translation&&a.jsxs("p",{className:"result-text mt-1",children:[a.jsx("strong",{children:"注译:"}),e.translation]}),e.annotation&&a.jsxs("p",{className:"result-text",children:[a.jsx("strong",{children:"参详:"}),e.annotation]}),a.jsxs("p",{className:"tiny muted mt-1",children:["出处:",e.source]})]},i))]}),a.jsxs("p",{className:"tiny muted",children:["版本说明:",t.sourceNote]})]})}const Ir=[{id:"foundation-wuxing",art:"foundation",title:"五行生克",level:"入门",summary:"五行是玄学世界的底层语法,理解生克关系,便握住了万象变化的钥匙。",chapters:[{title:"五行的属性",body:"木曰曲直(生长舒展)、火曰炎上(温热明亮)、土曰稼穑(承载生化)、金曰从革(肃杀收敛)、水曰润下(寒凉流动)。"},{title:"相生之理",body:"木生火、火生土、土生金、金生水、水生木。生者如母之育子,为助力、滋养之源。"},{title:"相克之理",body:"木克土、土克水、水克火、火克金、金克木。克者如官之治民,为约束、制衡之力。"}],exercises:[{prompt:"火生什么?火克什么?",answer:"火生土;火克金",explain:"火燃烧后化为灰土,故火生土;火能熔化金属,故火克金。"}],relatedClassics:["zhouyi"]},{id:"foundation-ganzhi",art:"foundation",title:"天干地支",level:"入门",summary:"十天干十二地支是时间与空间的坐标,干支组合成六十甲子,循环往复纪年纪月纪日纪时。",chapters:[{title:"十天干",body:"甲乙丙丁戊己庚辛壬癸。甲丙戊庚壬为阳,乙丁己辛癸为阴;甲乙属木,丙丁属火,戊己属土,庚辛属金,壬癸属水。"},{title:"十二地支",body:"子丑寅卯辰巳午未申酉戌亥。子寅辰午申戌为阳,丑卯巳未酉亥为阴;寅卯属木,巳午属火,申酉属金,亥子属水,辰戌丑未属土。"},{title:"六十甲子",body:"天干配地支,阳干配阳支、阴干配阴支,依次组合六十年一轮回,称六十甲子。用于纪年、纪月、纪日、纪时。"}],exercises:[{prompt:"2024 年是甲辰年,2025 年是什么年?",answer:"乙巳年",explain:"甲后为乙,辰后为巳,干支顺次推进,故为乙巳年。"}],relatedClassics:["zhouyi"]},{id:"foundation-nayin",art:"foundation",title:"六十甲子与纳音",level:"入门",summary:"纳音以两干两支组合为一象,三十纳音配五行六局,是紫微定局、八字论音的重要工具。",chapters:[{title:"纳音之法",body:"六十甲子每两组配一纳音,共三十种:海中金、炉中火、大林木、路旁土、剑锋金、山头火……"},{title:"五行局",body:"纳音归五行,如海中金、剑锋金等六种金音皆属金四局;紫微斗数据此定五行局以安紫微。"}],exercises:[{prompt:"甲子年的纳音是什么?属什么局?",answer:"海中金;金四局",explain:"甲子乙丑海中金,六金纳音皆配金四局。"}],relatedClassics:["sanming-tonghui"]},{id:"foundation-gua",art:"foundation",title:"八卦与六十四卦",level:"入门",summary:"八卦取象天地雷风水火山泽,两两相重成六十四卦,是易占的根本模型。",chapters:[{title:"八卦取象",body:"乾☰天(金)、坤☷地(土)、震☳雷(木)、巽☴风(木)、坎☵水(水)、离☲火(火)、艮☶山(土)、兑☱泽(金)。"},{title:"先天数",body:"梅花易数用先天数:乾一、兑二、离三、震四、巽五、坎六、艮七、坤八。"},{title:"重卦成象",body:"八卦上下相重得六十四卦,如乾上乾下为乾为天,坎上离下为水火既济。"}],exercises:[{prompt:"震卦的先天数是多少?五行属什么?",answer:"先天数四;属木",explain:"震为雷,先天数四,五行属木。"}],relatedClassics:["zhouyi"]},{id:"foundation-yinyang",art:"foundation",title:"阴阳学说",level:"入门",summary:"一阴一阳之谓道。阴阳的对立、互根、消长、转化,是理解一切术数的总纲。",chapters:[{title:"阴阳之义",body:"阳主动、明、刚、外、热;阴主静、暗、柔、内、寒。两者对立统一,互相转化。"},{title:"占问之用",body:"爻分阴阳、干分阴阳、宫分阴阳。断卦先辨阴阳消长,此为观微之始。"}],exercises:[{prompt:"白天与黑夜,何者为阳?",answer:"白天为阳",explain:"阳主光明主动,故白昼属阳,黑夜属阴。"}],relatedClassics:["zhouyi"]},{id:"bazi-basic",art:"bazi",title:"八字基础:四柱与十神",level:"入门",summary:"从年柱到日柱,从五行到十神,认识子平术的基本框架。",chapters:[{title:"四柱排定",body:"年柱以立春为界,月柱以节气为纲,日柱以历法为准,时柱以时辰定之。本书四柱均按精确节气与真太阳时排定。"},{title:"十神之义",body:"以日干为主:生我者印,我生者食伤,克我者官杀,我克者财,同我者比劫。阴阳同则为偏、异则为正。"},{title:"日主强弱",body:"日主得月令生扶、四柱印比多者为身强,反之克泄耗多者为身弱。强弱定,喜忌出。"}],exercises:[{prompt:"日干为甲(木),见庚(金)为何神?",answer:"七杀",explain:"金克木为官杀,甲为阳木、庚为阳金,阴阳同故为七杀(偏官)。"}],relatedClassics:["yuanhai-ziping","ditian-sui","ziping-zhenquan"]},{id:"ziwei-basic",art:"ziwei",title:"紫微入门:主星与宫垣",level:"入门",summary:"认识十四主星的性情与十二宫垣的领域,读懂一张紫微盘。",chapters:[{title:"十四主星",body:"紫微系六星(紫微、天机、太阳、武曲、天同、廉贞)与天府系八星(天府、太阴、贪狼、巨门、天相、天梁、七杀、破军)。"},{title:"十二宫垣",body:"命宫、兄弟、夫妻、子女、财帛、疾厄、迁移、仆役、官禄、田宅、福德、父母。命宫为枢,官禄财帛为用。"}],exercises:[{prompt:"紫微星的代表意义是什么?",answer:"帝星,主尊贵格局与领导力",explain:"紫微为北斗帝星,象征至尊、格局与统御。"}],relatedClassics:["ziwei-quanshu"]},{id:"meihua-basic",art:"meihua",title:"梅花起卦入门",level:"入门",summary:"学会时间起卦与报数起卦,看懂本卦、互卦、变卦与体用生克。",chapters:[{title:"起卦之法",body:"时间起卦以年支序、月、日之和定上卦,加时数定下卦与动爻;报数起卦以三数定上下卦与动爻。"},{title:"体用生克",body:"无动爻之卦为体(事主),有动爻之卦为用(所问)。用生体吉、体克用吉、用克体凶、体生用泄气、比和平。"}],exercises:[{prompt:"报数 1、2、3 起卦:上卦下卦各是什么?",answer:"上乾下兑(天泽履),动爻三",explain:"1 取乾(先天数一),2 取兑(先天数二),3 定动爻。"}],relatedClassics:["meihua-yishu"]},{id:"liuyao-basic",art:"liuyao",title:"六爻摇卦入门",level:"入门",summary:"三枚铜钱六次成卦,看懂阴阳老少四象与动变之机。",chapters:[{title:"摇卦之法",body:"三枚铜钱同掷,三背为老阳、三字为老阴、二背一字为少阳、一背二字为少阴。自下而上六次成卦。"},{title:"动变之义",body:"老阳老阴为动爻,动则变:阳变阴、阴变阳。本卦为现局,变卦为归趋,动爻为事机。"}],exercises:[{prompt:"三枚铜钱掷出两背一字,是什么?",answer:"少阳",explain:"二背一字为少阳,属阳爻不动。"}],relatedClassics:["zengshan-buyi","bushe-zhengzong","zhouyi"]},{id:"xiaoliuren-basic",art:"xiaoliuren",title:"小六壬掌诀入门",level:"入门",summary:"六掌玄机,掐指即知。大安起月、月上起日、日上起时。",chapters:[{title:"六掌定位",body:"大安、留连、速喜、赤口、小吉、空亡六位,循环于掌上,顺数取位。"},{title:"吉凶要义",body:"大安、速喜、小吉为吉;留连、赤口、空亡为凶。结合五行方位与主数综合断之。"}],exercises:[{prompt:"正月初一子时占,得什么?",answer:"大安",explain:"大安起月,正月落大安;初一仍在大安;子时(一数)顺数一位仍为大安。"}],relatedClassics:[]},{id:"qimen-basic",art:"qimen",title:"奇门九宫入门",level:"入门",summary:"认识洛书九宫、八门九星与三奇六仪,看懂一张奇门盘。",chapters:[{title:"九宫八门",body:"洛书九宫:坎一坤二震三巽四中五乾六兑七艮八离九。八门:休生伤杜景死惊开。"},{title:"阴阳遁与局",body:"冬至后阳遁顺布,夏至后阴遁逆布;每节气分上中下三元,各配局数。"}],exercises:[{prompt:"开门在哪个方位?主什么?",answer:"西北乾宫,主吉庆通达",explain:"开门居乾宫西北,为八门中最吉之门。"}],relatedClassics:["yanpo-diaosou"]},{id:"liuren-basic",art:"liuren",title:"大六壬月将入门",level:"入门",summary:"月将随太阳过宫,月将加时立天地盘,四课三传断人事始终。",chapters:[{title:"月将之要",body:"月将即太阳所在之宫,中气过宫换将。如雨水后为亥将登明,春分后为戌将河魁。"},{title:"四课三传",body:"日干遁干为干上,干支互乘得四课;三传示事之始终:初传事发之端,中传事进之中,末传事成之归。"}],exercises:[{prompt:"雨水节气后月将为何?",answer:"亥将(登明)",explain:"雨水(约 2/19)后太阳过宫入亥,故为亥将登明。"}],relatedClassics:["liuren-daquan"]},{id:"dao-jingcheng",art:"dao",title:"占问之道:静诚悟",level:"入门",summary:"观微三法——静以定心、诚以聚气、悟以观照。占问之前,先正其心。",chapters:[{title:"静",body:"占问先定心。独处一室,屏息凝神,一念一事,方得应验。"},{title:"诚",body:"心诚则气聚,气聚则象显。同问不三占,三占必有疑,疑则不验。"},{title:"悟",body:"术者,渡舟也,非彼岸也。卦象所指,是镜非命。观照自身,反求诸己。"}],exercises:[],relatedClassics:["zhouyi"]},{id:"tarot-basic",art:"tarot",title:"塔罗大阿卡纳之旅",level:"入门",summary:"二十二张大阿卡纳是灵魂成长的旅程地图,从愚者到世界。",chapters:[{title:"愚者到战车",body:"愚者启程(0),魔术师掌创造(Ⅰ),女祭司守直觉(Ⅱ),皇后育丰饶(Ⅲ),皇帝立秩序(Ⅳ),教皇传师道(Ⅴ),恋人择真心(Ⅵ),战车克敌制胜(Ⅶ)。"},{title:"力量到世界",body:"力量以柔克刚(Ⅷ),隐士独行求索(Ⅸ),命运之轮顺势(Ⅹ),正义明断(Ⅺ),倒吊人换位(Ⅻ),死神蜕旧(XIII),节制中和(XIV),恶魔直面欲望(XV),高塔破立(XVI),星星怀希望(XVII),月亮信直觉(XVIII),太阳见光明(XIX),审判觉醒来(XX),世界归于圆满(XXI)。"}],exercises:[{prompt:"大阿卡纳中「愚者」的数字是多少?",answer:"0",explain:"愚者编号 0,代表旅程之始与无限可能。"}],relatedClassics:[]},{id:"astrology-basic",art:"astrology",title:"星座与行星入门",level:"入门",summary:"太阳主自我、月亮主情感、上升主处世,认识七行星与十二星座的语言。",chapters:[{title:"三大支柱",body:"太阳星座:自我核心与人生目标;月亮星座:情感需求与内在底色;上升星座:处世面具与第一印象。"},{title:"相位之语",body:"合相凝聚、六合和谐、拱相顺遂、刑相紧张、冲相对峙。相位是行星之间的对话方式。"}],exercises:[{prompt:"上升星座由什么决定?",answer:"出生时刻与出生地经纬度",explain:"上升点是出生时刻东方地平线升起的星座,依赖精确时刻与地点计算。"}],relatedClassics:[]}],oF=t=>Ir.find(e=>e.id===t),I8=t=>{var e;return t==="foundation"?"入门基础":t==="dao"?"占问之道":((e=t2.find(i=>i.id===t))==null?void 0:e.name)||t};function al(){const{id:t}=Y3();if(t){const i=oF(t);return i?a.jsx(cF,{course:i}):a.jsxs("div",{className:"wrap page-compact",style:{paddingTop:"var(--sp-4)",textAlign:"center"},children:[a.jsxs("div",{className:"result-placeholder",children:[a.jsx("div",{className:"glyph",children:"佚"}),a.jsx("p",{children:"课程未寻得 · 请返学馆再择"})]}),a.jsx("div",{className:"mt-4",children:a.jsx(L0,{className:"btn-seal btn-ghost",to:"/academy",children:"返 学 馆"})})]})}const e=["foundation","dao",...t2.map(i=>i.id)];return a.jsxs("div",{className:"wrap",style:{paddingTop:"var(--sp-7)",paddingBottom:"var(--sp-6)"},children:[a.jsx("div",{className:"section-eyebrow",children:"学馆 · Academy"}),a.jsx("h2",{className:"section-title",style:{marginTop:".8rem"},children:"观微学馆"}),a.jsxs("p",{className:"section-note",children:["入门基础 · 各术入门 · 占问之道,循序渐进。共 ",Ir.length," 门课程。"]}),e.map(i=>{const s=Ir.filter(r=>r.art===i);return s.length?a.jsxs("div",{className:"mt-5",children:[a.jsx("h3",{className:"tag-cool",style:{letterSpacing:".25em",marginBottom:"var(--sp-2)"},children:I8(i)}),a.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill,minmax(300px,1fr))",gap:"var(--sp-3)"},children:s.map(r=>a.jsxs(L0,{to:"/academy/"+r.id,className:"result-card",style:{textDecoration:"none",display:"block",marginBottom:0},children:[a.jsx("h3",{children:r.title}),a.jsx("p",{className:"result-text",style:{marginTop:0},children:r.summary}),a.jsxs("div",{className:"mt-2",children:[a.jsx("span",{className:"pill",children:r.level}),a.jsxs("span",{className:"pill cool",children:[r.chapters.length," 章 · ",r.exercises.length," 练"]})]})]},r.id))})]},i):null})]})}function cF({course:t}){const[e,i]=v.useState({}),[s,r]=v.useState({}),c=o=>r(d=>({...d,[o]:!0}));return a.jsxs("div",{className:"wrap",style:{paddingTop:"var(--sp-7)",paddingBottom:"var(--sp-6)",maxWidth:880},children:[a.jsx(L0,{className:"back-link",to:"/academy",children:"‹ 返学馆"}),a.jsxs("div",{className:"module-kicker",children:["学馆 · ",I8(t.art)]}),a.jsx("div",{className:"module-title-row",children:a.jsxs("h2",{className:"module-title",children:[a.jsx("span",{className:"cn",children:t.title}),t.level]})}),a.jsx("p",{className:"module-intro",children:t.summary}),a.jsxs("div",{className:"result-card mt-4",children:[a.jsx("h3",{children:"讲义"}),t.chapters.map((o,d)=>a.jsxs("div",{style:{marginBottom:"var(--sp-2)"},children:[a.jsx("p",{className:"tag-cool",children:a.jsxs("strong",{children:[d+1,". ",o.title]})}),a.jsx("p",{className:"result-text",children:o.body})]},d))]}),t.exercises.length>0&&a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"小试牛刀"}),t.exercises.map((o,d)=>{const g=s[d]&&(e[d]||"").trim()===o.answer;return a.jsxs("div",{style:{marginBottom:"var(--sp-3)"},children:[a.jsxs("p",{className:"result-text",children:[a.jsxs("strong",{children:["练习 ",d+1,":"]}),o.prompt]}),a.jsxs("div",{className:"btn-row",style:{gap:".6rem",marginTop:".4rem"},children:[a.jsx("input",{className:"input-line",style:{maxWidth:320},placeholder:"书答案于此",value:e[d]||"",onChange:f=>{i(E=>({...E,[d]:f.target.value})),r(E=>({...E,[d]:!1}))},disabled:s[d]}),!s[d]&&a.jsx("button",{className:"btn-seal",style:{fontSize:".8rem",padding:".35rem 1rem"},onClick:()=>c(d),children:"自 检"})]}),s[d]&&a.jsxs("p",{className:"mt-1 "+(g?"tag-cool":"tag-hot"),children:[a.jsxs("strong",{children:[g?"对 · 甚善":"未中 · 再思"," "]}),g?o.explain:"参考答案:"+o.answer+"。"+o.explain]})]},d)})]}),t.relatedClassics.length>0&&a.jsxs("div",{className:"result-card",children:[a.jsx("h3",{children:"延伸典藏"}),a.jsx("div",{style:{display:"flex",gap:".5rem",flexWrap:"wrap"},children:t.relatedClassics.map(o=>{const d=N8(o);return d?a.jsx(L0,{className:"pill",to:"/classics/"+o,children:d.title},o):null})})]})]})}function ll(t){const e=new Date(t),i=s=>String(s).padStart(2,"0");return`${e.getFullYear()}年${e.getMonth()+1}月${e.getDate()}日 ${i(e.getHours())}:${i(e.getMinutes())}`}function ol(){const{id:t}=Y3(),[e,i]=v.useState(0),[s,r]=v.useState("all"),[c,o]=v.useState("");if(t){const F=kE(t);if(!F)return a.jsxs("div",{className:"wrap page-compact",style:{paddingTop:"var(--sp-4)",textAlign:"center"},children:[a.jsxs("div",{className:"result-placeholder",children:[a.jsx("div",{className:"glyph",children:"佚"}),a.jsx("p",{children:"此占无痕 · 请返记录再择"})]}),a.jsx("div",{className:"mt-4",children:a.jsx(L0,{className:"btn-seal btn-ghost",to:"/history",children:"返 记 录"})})]});const x=Bi(F.artId),A=S8(F.artId);return a.jsxs("div",{className:"wrap",style:{paddingTop:"var(--sp-7)",paddingBottom:"var(--sp-6)"},children:[a.jsx(L0,{className:"back-link",to:"/history",children:"‹ 返记录"}),a.jsxs("div",{className:"module-kicker",children:["留痕 · ",(x==null?void 0:x.name)||F.artId]}),a.jsx("div",{className:"module-title-row",children:a.jsxs("h2",{className:"module-title",children:[a.jsx("span",{className:"cn",children:(x==null?void 0:x.name)||"占问"}),ll(F.createdAt)]})}),(F.profile||F.question)&&a.jsxs("div",{className:"result-card",style:{marginTop:"1rem"},children:[F.question&&a.jsxs("p",{className:"result-text",children:[a.jsx("strong",{children:"所问:"}),F.question]}),F.profile&&a.jsxs("p",{className:"result-text tiny",style:{marginTop:".4rem"},children:[a.jsx("strong",{children:"档案:"}),F.profile.gender||"",F.profile.birthDate?" · "+F.profile.birthDate:"",F.profile.birthTime?" "+F.profile.birthTime:"",(()=>{var B,_,S,M;const y=F.profile.location;return y?" · "+(y.province||"")+(y.city||"")+(y.district||"")+"("+((_=(B=y.lng)==null?void 0:B.toFixed)==null?void 0:_.call(B,2))+","+((M=(S=y.lat)==null?void 0:S.toFixed)==null?void 0:M.call(S,2))+")":""})()]})]}),a.jsx("div",{className:"mt-4",children:A!=null&&A.Result?a.jsx(A.Result,{data:F.result}):a.jsx("p",{className:"result-text",children:"此术结果暂无法回看。"})}),a.jsx("button",{className:"btn-seal btn-ghost",style:{marginTop:"var(--sp-3)",fontSize:".85rem",padding:".4rem 1.2rem"},onClick:()=>{confirm("确定删除此占问记录?")&&(K7(F.id),window.location.hash="#/history")},children:"删 此 记 录"})]})}const d=v.useMemo(()=>uu(),[e,s,c]),[g,f]=v.useState("all"),E=d.filter(F=>{if(g!=="all"&&(F.profileId||"main")!==g||s!=="all"&&F.artId!==s)return!1;if(c){const x=Bi(F.artId);if(!((x==null?void 0:x.name)||"").includes(c)&&!F.id.includes(c))return!1}return!0});return a.jsxs("div",{className:"wrap",style:{paddingTop:"var(--sp-7)",paddingBottom:"var(--sp-6)"},children:[a.jsx("div",{className:"section-eyebrow",children:"留痕 · Records"}),a.jsx("h2",{className:"section-title",style:{marginTop:".8rem"},children:"占问记录"}),a.jsxs("p",{className:"section-note",children:["每问留痕,观照来时路。共 ",d.length," 次占问(本地上限 200 条)。"]}),a.jsxs("div",{className:"field-row",style:{marginTop:"var(--sp-3)",gridTemplateColumns:"1fr 1fr"},children:[a.jsx("div",{className:"field",children:a.jsx("input",{className:"input-line",placeholder:"搜术名…",value:c,onChange:F=>o(F.target.value)})}),a.jsx("div",{className:"field",children:a.jsx(g1,{value:s,options:[{value:"all",label:"全部九术"},...["bazi","ziwei","qimen","meihua","liuyao","liuren","xiaoliuren","astrology","tarot"].map(F=>{var x;return{value:F,label:((x=Bi(F))==null?void 0:x.name)||F}})],onChange:r})})]}),E.length===0?a.jsxs("div",{className:"result-placeholder",style:{marginTop:"var(--sp-5)"},children:[a.jsx("div",{className:"glyph",children:"痕"}),a.jsx("p",{children:d.length?"无契合之占 · 请易词再寻":"尚无占问记录 · 诚心一问,方始留痕"})]}):a.jsx("div",{className:"mt-4",style:{display:"grid",gridTemplateColumns:"repeat(auto-fill,minmax(300px,1fr))",gap:"var(--sp-3)"},children:E.map(F=>{const x=Bi(F.artId),A=hF(F.result);return a.jsxs("div",{className:"result-card",style:{marginBottom:0,display:"flex",flexDirection:"column"},children:[a.jsx("h3",{style:{fontSize:"1rem"},children:(x==null?void 0:x.name)||F.artId}),a.jsx("div",{className:"tiny muted",children:ll(F.createdAt)}),a.jsx("p",{className:"result-text",style:{flex:1},children:A}),a.jsxs("div",{style:{display:"flex",gap:".6rem",marginTop:"var(--sp-1)"},children:[a.jsx(L0,{className:"pill cool",to:"/history/"+F.id,children:"回 看"}),a.jsx("button",{className:"pill hot",onClick:()=>{K7(F.id),i(y=>y+1)},children:"删 除"})]})]},F.id)})})]})}function hF(t){const e=t;return e?e.yearGZ?`${e.yearGZ}年 ${e.monthGZ}月 ${e.dayGZ}日 ${e.hourGZ}时 · ${e.strength||""}`:e.benGua?`本卦${e.benGua.name} · ${e.bianGua?"变"+e.bianGua.name:""} · ${e.shengke||""}`:e.ju?`${e.jqName} · ${e.yin?"阴":"阳"}遁${e.ju}局 · ${e.dayGZ}日`:e.name&&e.detail?`${e.name} · ${e.detail.ji||""} · ${e.detail.wx||""}`:e.jiang?`${e.jiang}将加时 · 四课${e.ke1}/${e.ke2}/${e.ke3}/${e.ke4}`:e.ming!==void 0?`命宫@${e.ming} · ${e.juName||""} · 紫微@${e.zwPos}`:Array.isArray(e)&&e[0]&&e[0].name?`${e.length} 张牌:${e.map(i=>i.name).join("、")}`:e.planets?`太阳落${cl(e.sun)} · 月亮落${cl(e.moon)}`:e.yin!==void 0?`${e.jqName||""} · ${e.yin?"阴":"阳"}遁${e.ju}局`:JSON.stringify(e).slice(0,40):"(结果不可读)"}function cl(t){return["白羊","金牛","双子","巨蟹","狮子","处女","天秤","天蝎","射手","摩羯","水瓶","双鱼"][Math.floor((t%360+360)%360/30)]}function dF({initial:t,onChange:e}){const[i,s]=v.useState(t.birthDate),[r,c]=v.useState(t.birthTime||"12:00"),[o,d]=v.useState(t.gender),[g,f]=v.useState(t.location),E=F=>{e({birthDate:F.birthDate??i,birthTime:F.birthTime??r,birthHourIndex:M2(F.birthTime??r),gender:F.gender??o,location:F.location!==void 0?F.location:g})};return a.jsxs(a.Fragment,{children:[a.jsxs("div",{className:"field",children:[a.jsx("label",{children:"出生日期(公历 / 农历)"}),a.jsx(iu,{value:i,onChange:F=>{s(F),E({birthDate:F})}})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{children:"出生时刻(精确)"}),a.jsx(Fa,{value:r,onChange:F=>{c(F),E({birthTime:F})}})]}),a.jsx("div",{className:"field-row",children:a.jsxs("div",{className:"field",children:[a.jsx("label",{children:"性别"}),a.jsx(g1,{value:o,options:[{value:"男",label:"男"},{value:"女",label:"女"}],onChange:F=>{d(F),E({gender:F})}})]})}),a.jsxs("div",{className:"field",children:[a.jsx("label",{children:"出生地点"}),a.jsx(nu,{value:g,onChange:F=>{f(F),E({location:F})},previewHourIndex:M2(r)})]})]})}function gF(){const t=br(),e=Ml(),[,i]=v.useState(0),s=()=>i(b=>b+1),r=k1(),[c,o]=v.useState(r?"profile":"register"),[d,g]=v.useState(""),[f,E]=v.useState(""),[F,x]=v.useState(""),[A,y]=v.useState(!1),[B,_]=v.useState(null),S=()=>{const b=c==="register"?Ol(d,f):Pl(d,f);x(b.message),y(b.ok),b.ok&&(o("profile"),_({type:"primary"}),t("/auth"),ME().catch(()=>{}),b.user&&D3(b.user.username,b.user.profile,b.user.samples).catch(()=>{}))},M=b=>{if(r){if((B==null?void 0:B.type)==="primary"){const u0=Ll(b);u0&&(x("主档案已存"),y(!0),D3(u0.username,u0.profile,u0.samples).catch(()=>{}))}else if((B==null?void 0:B.type)==="sample"){const u0=Gl(B.id,b);u0&&(x("示例档案已存"),y(!0),D3(u0.username,u0.profile,u0.samples).catch(()=>{}))}s()}},Y=()=>{Xr(),t("/")},[z,T]=v.useState([]),[W,X]=v.useState(!1),[Z,$]=v.useState(null),e0=async()=>{if(r)try{const b=await Wm(r.username);T(b.list),X(!0)}catch{}};v.useEffect(()=>{r&&e0()},[r==null?void 0:r.username]);const q=async b=>{if(!r)return;const u0=await $m(b,r.username);u0&&$(u0)},c0=async b=>{if(!r)return;await e("除「此占」于史册?",{title:"慎问",confirmText:"除 之",danger:!0})&&await Qm(b,r.username)&&T(d0=>d0.filter(E0=>E0.divineId!==b))};if(!r)return a.jsxs("div",{className:"wrap page-compact",style:{paddingBottom:"var(--sp-6)",maxWidth:560},children:[a.jsx("div",{className:"section-eyebrow",children:"入馆 · Gate"}),a.jsx("h2",{className:"section-title",style:{marginTop:".8rem"},children:"观微入馆"}),a.jsx("p",{className:"section-note",children:"录生辰档案,每日星运可依君而示;占问留痕,各归其馆。"}),a.jsxs("div",{className:"altar-panel",style:{position:"static",marginTop:"var(--sp-4)"},children:[a.jsxs("div",{className:"btn-row",style:{marginBottom:"var(--sp-3)"},children:[a.jsx("button",{className:"btn-seal "+(c==="register"?"":"btn-ghost"),style:{fontSize:".9rem",padding:".45rem 1.2rem"},onClick:()=>o("register"),children:"注 册"}),a.jsx("button",{className:"btn-seal "+(c==="login"?"":"btn-ghost"),style:{fontSize:".9rem",padding:".45rem 1.2rem"},onClick:()=>o("login"),children:"登 录"})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{children:"名号"}),a.jsx("input",{className:"input-line",placeholder:"取一雅号",value:d,onChange:b=>g(b.target.value)})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{children:"密语"}),a.jsx("input",{className:"input-line",type:"password",placeholder:"四字以上",value:f,onChange:b=>E(b.target.value)})]}),a.jsx("button",{className:"btn-divine",onClick:S,children:c==="register"?"入 馆":"入 座"}),F&&a.jsx("p",{className:"mt-3 "+(A?"tag-cool":"tag-hot"),children:F})]})]});if(B){const b=B.type==="sample"&&r.samples.find(d0=>d0.id===B.id)||null,u0=B.type==="primary"?"主档案(默认账号档案)":"示例档案 · "+((b==null?void 0:b.name)||"");return a.jsxs("div",{className:"wrap page-compact",style:{paddingBottom:"var(--sp-6)",maxWidth:640},children:[a.jsxs("div",{className:"mh-row",style:{marginBottom:"var(--sp-3)"},children:[a.jsx("button",{className:"back-link",onClick:()=>{_(null),s()},children:"‹ 返档案列表"}),a.jsxs("h2",{className:"page-title-compact",children:["编 辑 · ",u0]})]}),a.jsxs("div",{className:"altar-panel",style:{position:"static",marginTop:"var(--sp-4)"},children:[a.jsx(dF,{initial:B.type==="primary"?r.profile:b.profile,onChange:M}),a.jsxs("div",{className:"btn-row mt-4",children:[a.jsx("button",{className:"btn-seal",style:{fontSize:".85rem",padding:".45rem 1.2rem"},onClick:()=>{_(null),s()},children:"存 档 完 成"}),B.type==="sample"&&b&&a.jsx("button",{className:"btn-seal btn-ghost",style:{fontSize:".85rem",padding:".45rem 1.2rem"},onClick:async()=>{await e("以「"+b.name+"」为主档案?原主档案将转示例。",{title:"慎问",confirmText:"设 为 主"})&&(Zl(b.id),_({type:"primary"}),s())},children:"设为主档案"}),B.type==="sample"&&b&&a.jsx("button",{className:"btn-seal btn-ghost",style:{fontSize:".85rem",padding:".45rem 1.2rem"},onClick:async()=>{await e("除「"+b.name+"」此档?",{title:"慎问",confirmText:"除 之",danger:!0})&&(Hl(b.id),_(null),s())},children:"删 此 档"})]})]}),F&&a.jsx("p",{className:"mt-3 "+(A?"tag-cool":"tag-hot"),children:F})]})}return a.jsxs("div",{className:"wrap page-compact",style:{paddingBottom:"var(--sp-6)",maxWidth:760},children:[a.jsx("div",{className:"section-eyebrow",children:"入馆 · 档案"}),a.jsxs("h2",{className:"section-title",style:{marginTop:".8rem"},children:["吾之档案 · ",r.username]}),a.jsx("p",{className:"section-note",children:"主档案唯一(默认账号档案);其余为示例档案,皆可编辑、切换。"}),a.jsxs("div",{className:"profile-card primary",onClick:()=>_({type:"primary"}),role:"button",tabIndex:0,children:[a.jsx("div",{className:"pc-badge",children:"主"}),a.jsxs("div",{className:"pc-body",children:[a.jsxs("div",{className:"pc-title",children:["主档案 · ",r.username]}),a.jsx("div",{className:"pc-info",children:hl(r.profile)})]}),a.jsx("div",{className:"pc-action",children:"编 辑 ›"})]}),r.samples.length===0?a.jsxs("div",{className:"result-placeholder",style:{marginTop:"var(--sp-4)",minHeight:140},children:[a.jsx("div",{className:"glyph",style:{fontSize:"2rem"},children:"档"}),a.jsx("p",{children:"尚无示例档案 · 排盘时可「存为示例档案」"})]}):a.jsx("div",{className:"mt-4",style:{display:"grid",gap:".8rem"},children:r.samples.map(b=>a.jsxs("div",{className:"profile-card",onClick:()=>_({type:"sample",id:b.id}),role:"button",tabIndex:0,children:[a.jsx("div",{className:"pc-badge sample",children:"示"}),a.jsxs("div",{className:"pc-body",children:[a.jsx("div",{className:"pc-title",children:b.name}),a.jsx("div",{className:"pc-info",children:hl(b.profile)})]}),a.jsx("div",{className:"pc-action",children:"编 辑 ›"})]},b.id))}),a.jsxs("h3",{className:"panel-title",style:{marginTop:"var(--sp-6)"},children:["占卜历史 · ",r.username]}),W?z.length===0?a.jsxs("div",{className:"result-placeholder",style:{marginTop:"var(--sp-3)",minHeight:110},children:[a.jsx("div",{className:"glyph",style:{fontSize:"1.8rem"},children:"史"}),a.jsx("p",{children:"尚无占卜记录 · 起占后自动载入此册"})]}):a.jsx("div",{className:"mt-3",style:{display:"grid",gap:".6rem"},children:z.map(b=>a.jsxs("div",{className:"profile-card",style:{cursor:"pointer"},onClick:()=>q(b.divineId),role:"button",tabIndex:0,children:[a.jsx("div",{className:"pc-badge sample",children:C3(b.artId)}),a.jsxs("div",{className:"pc-body",children:[a.jsx("div",{className:"pc-title",children:b.question||"(未书,心念已至)"}),a.jsxs("div",{className:"pc-info",children:[new Date(b.createdAt).toLocaleString("zh-CN")," · "+(b.hasReport?"已有 AI 报告":b.status==="ai_poor"?"AI 未成":"仅排盘")]})]}),a.jsx("div",{className:"pc-action",onClick:u0=>{u0.stopPropagation(),c0(b.divineId)},role:"button",tabIndex:0,style:{color:"var(--ink-faint)"},children:"删 除"})]},b.divineId))}):a.jsx("p",{className:"tiny muted",style:{marginTop:"var(--sp-2)"},children:"载录中……"}),Z&&a.jsx("div",{style:{position:"fixed",inset:0,background:"rgba(15,25,20,.55)",zIndex:99,display:"flex",alignItems:"center",justifyContent:"center",padding:"1rem"},onClick:()=>$(null),children:a.jsxs("div",{className:"altar-panel",style:{position:"static",maxWidth:720,maxHeight:"82vh",overflowY:"auto",background:"var(--paper)"},onClick:b=>b.stopPropagation(),children:[a.jsxs("div",{className:"mh-row",style:{marginBottom:"var(--sp-2)"},children:[a.jsx("h3",{className:"panel-title",children:"占 卜 详 情"}),a.jsx("button",{className:"btn-seal btn-ghost",style:{fontSize:".78rem",padding:".3rem .9rem"},onClick:()=>$(null),children:"关 闭"})]}),a.jsxs("p",{className:"tiny muted",style:{marginBottom:"var(--sp-3)"},children:[C3(String(Z.artId||""))," · ",new Date(Number(Z.createdAt)).toLocaleString("zh-CN"),Z.question?" · 所问:"+String(Z.question):""]}),Z.report?a.jsx(Ca,{report:Z.report,artName:C3(String(Z.artId||"")),onExport:()=>h8(Z.report,C3(String(Z.artId||"")),String(Z.question||""))}):a.jsxs("div",{className:"result-placeholder",style:{minHeight:120},children:[a.jsx("div",{className:"glyph",style:{fontSize:"1.8rem"},children:"盘"}),a.jsx("p",{children:"此占尚未召 AI 成文,仅存排盘之象"})]}),Z.resultRaw&&a.jsxs("details",{className:"mh-intro",style:{marginTop:"var(--sp-2)"},children:[a.jsx("summary",{children:"排盘原始数据"}),a.jsx("pre",{style:{fontSize:".72rem",lineHeight:1.7,whiteSpace:"pre-wrap",wordBreak:"break-all"},children:JSON.stringify(Z.resultRaw,null,1)})]})]})}),a.jsxs("div",{className:"btn-row mt-5",children:[a.jsx("button",{className:"btn-seal btn-ghost",style:{fontSize:".85rem",padding:".4rem 1.2rem"},onClick:Y,children:"离 馆"}),a.jsx(L0,{className:"btn-seal",style:{fontSize:".85rem",padding:".4rem 1.2rem"},to:"/",children:"返 首 页"})]})]})}function hl(t){const e=[t.birthDate+" "+(t.birthTime||"--:--")];return e.push("时辰"+(t.birthHourIndex+1)),e.push(t.gender),t.location?(e.push(t.location.province+t.location.city+(t.location.district||"")),e.push(t.location.lng.toFixed(2)+"°E "+t.location.lat.toFixed(2)+"°N")):e.push("未录地"),e.join(" · ")}const mF={bazi:"八字",ziwei:"紫微",astrology:"星盘",qimen:"奇门",meihua:"梅花",liuyao:"六爻",liuren:"大六壬",xiaoliuren:"小六壬",tarot:"塔罗"};function C3(t){return mF[t]||t||"占"}function fF(){const t=br(),e=Ml(),[i,s]=v.useState(""),[r,c]=v.useState(""),[o,d]=v.useState([{id:0,name:"现况",description:"当下的状况"},{id:1,name:"指引",description:"可为之径"}]),g=()=>{o.length>=10||d([...o,{id:o.length,name:"位"+(o.length+1),description:"请书其义"}])},f=y=>{o.length<=2||d(o.filter((B,_)=>_!==y).map((B,_)=>({...B,id:_})))},E=(y,B,_)=>{d(o.map((S,M)=>M===y?{...S,[B]:_}:S))},F=()=>{if(!i.trim()||o.length<2)return;const y={id:"custom-"+Date.now(),name:i.trim(),description:r.trim()||"君之自创牌阵",positions:o,isCustom:!0};jE(y),t("/art/tarot")},x=async()=>{const y=Pi();if(!y.length)return;await e("将尽除所创牌阵,共 "+y.length+" 个,是否确然?",{title:"慎问",confirmText:"尽 除",danger:!0})&&(y.forEach(_=>$7(_.id)),t("/art/tarot"))},A=Pi();return a.jsxs("div",{className:"wrap",style:{paddingTop:"var(--sp-7)",paddingBottom:"var(--sp-6)",maxWidth:760},children:[a.jsx(L0,{className:"back-link",to:"/art/tarot",children:"‹ 返问镜"}),a.jsx("div",{className:"module-kicker",children:"镜鉴 · 自创"}),a.jsx("div",{className:"module-title-row",children:a.jsxs("h2",{className:"module-title",children:[a.jsx("span",{className:"cn",children:"自创牌阵"}),"布位立义"]})}),a.jsx("p",{className:"module-intro",children:"为所问之事,自定牌位之序与其义。二至十位皆可。"}),a.jsxs("div",{className:"altar-panel",style:{position:"static",marginTop:"var(--sp-4)"},children:[a.jsxs("div",{className:"field",children:[a.jsx("label",{children:"牌阵名"}),a.jsx("input",{className:"input-line",placeholder:"例:吾之三问",value:i,onChange:y=>s(y.target.value)})]}),a.jsxs("div",{className:"field",children:[a.jsx("label",{children:"牌阵述"}),a.jsx("input",{className:"input-line",placeholder:"此阵为何而设…",value:r,onChange:y=>c(y.target.value)})]}),a.jsxs("div",{className:"field",children:[a.jsxs("label",{children:["牌位(",o.length,"/10)"]}),o.map((y,B)=>a.jsxs("div",{style:{display:"flex",gap:".5rem",marginBottom:".5rem",alignItems:"center"},children:[a.jsxs("span",{className:"tiny muted",style:{width:"1.6rem",textAlign:"right"},children:["#",B+1]}),a.jsx("input",{className:"input-line",style:{maxWidth:180},placeholder:"位名",value:y.name,onChange:_=>E(B,"name",_.target.value)}),a.jsx("input",{className:"input-line",placeholder:"位义",value:y.description,onChange:_=>E(B,"description",_.target.value)}),a.jsx("button",{className:"pill hot",style:{cursor:"pointer",flexShrink:0},onClick:()=>f(B),disabled:o.length<=2,children:"删"})]},y.id)),a.jsx("button",{className:"btn-seal btn-ghost",style:{fontSize:".8rem",padding:".35rem 1rem"},onClick:g,disabled:o.length>=10,children:"增 位"})]}),a.jsxs("div",{style:{display:"flex",gap:".8rem",marginTop:"var(--sp-3)"},children:[a.jsx("button",{className:"btn-divine",style:{width:"auto",padding:".7rem 2rem",marginTop:0},onClick:F,children:"存 阵"}),a.jsx("button",{className:"btn-seal btn-ghost",style:{fontSize:".85rem",padding:".5rem 1.2rem"},onClick:x,children:"清 所 创"})]})]}),A.length>0&&a.jsxs("div",{className:"mt-4",children:[a.jsx("h3",{className:"tag-cool",style:{letterSpacing:".25em",marginBottom:"var(--sp-2)"},children:"已创牌阵"}),A.map(y=>a.jsxs("div",{className:"result-card",style:{marginBottom:".8rem",display:"flex",justifyContent:"space-between",alignItems:"center"},children:[a.jsxs("div",{children:[a.jsx("strong",{children:y.name})," ",a.jsxs("span",{className:"tiny muted",children:["· ",y.positions.length," 位 · ",y.description]})]}),a.jsx("button",{className:"pill hot",style:{cursor:"pointer"},onClick:async()=>{await e("除「"+y.name+"」此阵?",{title:"慎问",confirmText:"除 之",danger:!0})&&($7(y.id),t(0))},children:"删"})]},y.id))]})]})}function EF(){const t=Fe();return v.useEffect(()=>{t.pathname.startsWith("/art/")&&window.scrollTo({top:0,behavior:"instant"})},[t.pathname]),null}function FF(){return a.jsx(sd,{children:a.jsxs(Cd,{children:[a.jsx(EF,{}),a.jsx(Fd,{}),a.jsx(pd,{}),a.jsx(Bd,{}),a.jsx("main",{children:a.jsx(xd,{children:a.jsxs(Th,{children:[a.jsx(se,{path:"/",element:a.jsx(T7,{})}),a.jsx(se,{path:"/about",element:a.jsx(Um,{})}),a.jsx(se,{path:"/classics",element:a.jsx(rl,{})}),a.jsx(se,{path:"/classics/:id",element:a.jsx(rl,{})}),a.jsx(se,{path:"/academy",element:a.jsx(al,{})}),a.jsx(se,{path:"/academy/:id",element:a.jsx(al,{})}),a.jsx(se,{path:"/history",element:a.jsx(ol,{})}),a.jsx(se,{path:"/history/:id",element:a.jsx(ol,{})}),a.jsx(se,{path:"/auth",element:a.jsx(gF,{})}),a.jsx(se,{path:"/spread-editor",element:a.jsx(fF,{})}),a.jsx(se,{path:"/demo",element:a.jsx(rF,{})}),a.jsx(se,{path:"/art/:artId",element:a.jsx(YE,{})}),a.jsx(se,{path:"*",element:a.jsx(T7,{})})]})})}),a.jsx(_d,{})]})})}bc.createRoot(document.getElementById("root")).render(a.jsx(v.StrictMode,{children:a.jsx(FF,{})}));
|