{"version":3,"sources":["webpack:///./node_modules/@dcloudio/uni-mp-weixin/dist/index.js?543d","webpack:///./node_modules/regenerator-runtime/runtime-module.js?bbdd","uni-app:///uni_modules/uview-ui/libs/config/props/codeInput.js","uni-app:///uni_modules/uview-ui/libs/config/props/col.js","uni-app:///uni_modules/uview-ui/libs/config/props/collapse.js","uni-app:///uni_modules/uview-ui/libs/config/props/collapseItem.js","uni-app:///uni_modules/uview-ui/libs/config/props/columnNotice.js","uni-app:///uni_modules/uview-ui/libs/config/props/countDown.js","uni-app:///uni_modules/uview-ui/libs/config/props/countTo.js","uni-app:///uni_modules/uview-ui/libs/config/props/datetimePicker.js","uni-app:///uni_modules/uview-ui/libs/config/props/divider.js","uni-app:///uni_modules/uview-ui/libs/config/props/empty.js","webpack:///./node_modules/regenerator-runtime/runtime.js?96cf","uni-app:///uni_modules/uview-ui/libs/config/props/form.js","uni-app:///uni_modules/uview-ui/libs/config/props/formItem.js","uni-app:///uni_modules/uview-ui/libs/config/props/gap.js","uni-app:///uni_modules/uview-ui/libs/config/props/grid.js","uni-app:///uni_modules/uview-ui/libs/config/props/gridItem.js","uni-app:///uni_modules/uview-ui/libs/config/props/icon.js","uni-app:///uni_modules/uview-ui/libs/config/props/image.js","uni-app:///uni_modules/uview-ui/libs/config/props/indexAnchor.js","uni-app:///components/jyf-parser/libs/MpHtmlParser.js","uni-app:///components/jyf-parser/libs/config.js","uni-app:///components/jyf-parser/libs/CssHandler.js","uni-app:///uni_modules/uview-ui/libs/config/props/indexList.js","uni-app:///uni_modules/uview-ui/libs/config/props/input.js","uni-app:///libs/login.js","uni-app:///uni_modules/uview-ui/libs/config/props/keyboard.js","uni-app:///pages/goods/components/lottery/js/grids_lottery.js","uni-app:///uni_modules/uview-ui/libs/config/props/line.js","uni-app:///uni_modules/uview-ui/libs/config/props/lineProgress.js","uni-app:///uni_modules/uview-ui/libs/config/props/link.js","uni-app:///uni_modules/uview-ui/libs/config/props/list.js","uni-app:///uni_modules/uview-ui/libs/config/props/listItem.js","uni-app:///uni_modules/uview-ui/libs/config/props/loadingIcon.js","uni-app:///uni_modules/uview-ui/libs/config/props/loadingPage.js","uni-app:///uni_modules/uview-ui/libs/config/props/loadmore.js","uni-app:///uni_modules/uview-ui/libs/config/props/modal.js","uni-app:///store/index.js","uni-app:///uni_modules/uview-ui/libs/config/props/navbar.js","uni-app:///uni_modules/uview-ui/libs/config/color.js","uni-app:///uni_modules/uview-ui/libs/config/props/noNetwork.js","uni-app:///uni_modules/uview-ui/libs/config/props/noticeBar.js","uni-app:///uni_modules/uview-ui/libs/config/props/notify.js","uni-app:///uni_modules/uview-ui/libs/config/props/numberBox.js","uni-app:///uni_modules/uview-ui/libs/config/props/numberKeyboard.js","uni-app:///uni_modules/uview-ui/libs/config/props/overlay.js","uni-app:///uni_modules/uview-ui/libs/config/props/parse.js","uni-app:///pages/admin/components/uni-calendar/util.js","uni-app:///pages/admin/components/uni-calendar/calendar.js","uni-app:///uni_modules/uview-ui/libs/config/props/picker.js","webpack:///./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vuex3/dist/vuex.common.js?26cb","uni-app:///uni_modules/uview-ui/libs/config/props/popup.js","uni-app:///uni_modules/uview-ui/libs/config/props/radio.js","uni-app:///uni_modules/uview-ui/libs/config/props/radioGroup.js","uni-app:///uni_modules/uview-ui/libs/config/props/rate.js","uni-app:///uni_modules/uview-ui/libs/config/props/readMore.js","uni-app:///uni_modules/uview-ui/libs/config/props/row.js","uni-app:///uni_modules/uview-ui/libs/config/props/rowNotice.js","uni-app:///uni_modules/uview-ui/libs/config/props/scrollList.js","uni-app:///uni_modules/uview-ui/libs/config/props/search.js","uni-app:///uni_modules/uview-ui/libs/config/props/section.js","uni-app:///store/modules/index.js","uni-app:///uni_modules/uview-ui/libs/config/props/skeleton.js","uni-app:///uni_modules/uview-ui/libs/config/props/slider.js","uni-app:///uni_modules/uview-ui/libs/config/props/statusBar.js","uni-app:///uni_modules/uview-ui/libs/config/props/steps.js","uni-app:///uni_modules/uview-ui/libs/config/props/stepsItem.js","uni-app:///uni_modules/uview-ui/libs/config/props/sticky.js","uni-app:///uni_modules/uview-ui/libs/config/props/subsection.js","uni-app:///uni_modules/uview-ui/libs/config/props/swipeAction.js","uni-app:///uni_modules/uview-ui/libs/config/props/swipeActionItem.js","uni-app:///uni_modules/uview-ui/libs/config/props/swiper.js","uni-app:///store/modules/app.js","uni-app:///uni_modules/uview-ui/libs/config/props/swipterIndicator.js","uni-app:///uni_modules/uview-ui/libs/config/props/switch.js","uni-app:///uni_modules/uview-ui/libs/config/props/tabbar.js","uni-app:///uni_modules/uview-ui/libs/config/props/tabbarItem.js","uni-app:///uni_modules/uview-ui/libs/config/props/tabs.js","uni-app:///uni_modules/uview-ui/libs/config/props/tag.js","uni-app:///uni_modules/uview-ui/libs/config/props/text.js","uni-app:///uni_modules/uview-ui/libs/config/props/textarea.js","uni-app:///uni_modules/uview-ui/libs/config/props/toast.js","uni-app:///uni_modules/uview-ui/libs/config/props/toolbar.js","uni-app:///api/user.js","uni-app:///uni_modules/uview-ui/libs/config/props/tooltip.js","uni-app:///uni_modules/uview-ui/libs/config/props/transition.js","uni-app:///uni_modules/uview-ui/libs/config/props/upload.js","uni-app:///uni_modules/uview-ui/libs/config/zIndex.js","uni-app:///uni_modules/uview-ui/libs/function/platform.js","uni-app:///utils/request.js","uni-app:///config/app.js","uni-app:///api/store.js","webpack:///(webpack)/buildin/global.js?cd00","uni-app:///utils/lang.js","uni-app:///plugin/dayjs/dayjs.min.js","uni-app:///utils/emoji.js","uni-app:///libs/order.js","uni-app:///utils/SubscribeMessage.js","uni-app:///api/admin.js","uni-app:///api/lottery.js","webpack:///./node_modules/@dcloudio/uni-i18n/dist/uni-i18n.es.js?37dc","webpack:///./node_modules/vue-i18n/dist/vue-i18n.esm.js?a925","uni-app:///plugin/clipboard/clipboard.js","uni-app:///config/cache.js","uni-app:///utils/cache.js","uni-app:///store/modules/hotWords.js","uni-app:///store/modules/indexData.js","uni-app:///store/getters.js","uni-app:///utils/validate.js","uni-app:///libs/routine.js","uni-app:///api/public.js","webpack:///./node_modules/@dcloudio/vue-cli-plugin-uni/packages/mp-vue/dist/mp.runtime.esm.js?66fd","uni-app:///libs/wechat.js","uni-app:///utils/index.js","uni-app:///api/api.js","uni-app:///api/kefu.js","uni-app:///api/order.js","uni-app:///mixins/color.js","uni-app:///mixins/SendVerifyCode.js","webpack:///./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js?f0c5","uni-app:///utils/util.js","uni-app:///plugin/image-tools/index.js","uni-app:///libs/new_chat.js","uni-app:///uni_modules/uview-ui/index.js","uni-app:///uni_modules/uview-ui/libs/mixin/mixin.js","uni-app:///uni_modules/uview-ui/libs/mixin/mpMixin.js","uni-app:///uni_modules/uview-ui/libs/luch-request/index.js","uni-app:///uni_modules/uview-ui/libs/luch-request/core/Request.js","uni-app:///uni_modules/uview-ui/libs/luch-request/core/dispatchRequest.js","uni-app:///uni_modules/uview-ui/libs/luch-request/adapters/index.js","uni-app:///uni_modules/uview-ui/libs/luch-request/helpers/buildURL.js","uni-app:///uni_modules/uview-ui/libs/luch-request/utils.js","uni-app:///uni_modules/uview-ui/libs/luch-request/core/buildFullPath.js","uni-app:///uni_modules/uview-ui/libs/luch-request/helpers/isAbsoluteURL.js","uni-app:///uni_modules/uview-ui/libs/luch-request/helpers/combineURLs.js","uni-app:///uni_modules/uview-ui/libs/luch-request/core/settle.js","uni-app:///uni_modules/uview-ui/libs/luch-request/core/InterceptorManager.js","uni-app:///uni_modules/uview-ui/libs/luch-request/core/mergeConfig.js","uni-app:///uni_modules/uview-ui/libs/luch-request/core/defaults.js","uni-app:///uni_modules/uview-ui/libs/luch-request/utils/clone.js","webpack:///./node_modules/buffer/index.js?b639","webpack:///./node_modules/base64-js/index.js?1fb5","webpack:///./node_modules/ieee754/index.js?9152","uni-app:///mixins/sharePoster.js","webpack:///./node_modules/isarray/index.js?e3db","uni-app:///api/activity.js","uni-app:///uni_modules/uview-ui/libs/util/route.js","uni-app:///components/zb-code/qrcode.js","uni-app:///uni_modules/uview-ui/libs/function/colorGradient.js","uni-app:///uni_modules/uview-ui/libs/function/test.js","uni-app:///uni_modules/uview-ui/libs/function/debounce.js","uni-app:///uni_modules/uview-ui/libs/function/throttle.js","uni-app:///uni_modules/uview-ui/libs/function/index.js","uni-app:///uni_modules/uview-ui/libs/function/digit.js","uni-app:///uni_modules/uview-ui/libs/config/config.js","uni-app:///uni_modules/uview-ui/libs/config/props.js","uni-app:///uni_modules/uview-ui/libs/config/props/actionSheet.js","uni-app:///uni_modules/uview-ui/libs/config/props/album.js","uni-app:///uni_modules/uview-ui/libs/config/props/alert.js","uni-app:///uni_modules/uview-ui/libs/config/props/avatar.js","uni-app:///pages/admin/components/ucharts/ucharts.js","uni-app:///uni_modules/uview-ui/libs/config/props/avatarGroup.js","uni-app:///uni_modules/uview-ui/libs/config/props/backtop.js","webpack:///./node_modules/@babel/runtime/regenerator/index.js?a34a","uni-app:///uni_modules/uview-ui/libs/config/props/badge.js","uni-app:///uni_modules/uview-ui/libs/config/props/button.js","uni-app:///uni_modules/uview-ui/libs/config/props/calendar.js","uni-app:///uni_modules/uview-ui/libs/config/props/carKeyboard.js","uni-app:///uni_modules/uview-ui/libs/config/props/cell.js","uni-app:///uni_modules/uview-ui/libs/config/props/cellGroup.js","uni-app:///uni_modules/uview-ui/libs/config/props/checkbox.js","uni-app:///uni_modules/uview-ui/libs/config/props/checkboxGroup.js","uni-app:///uni_modules/uview-ui/libs/config/props/circleProgress.js","uni-app:///uni_modules/uview-ui/libs/config/props/code.js","uni-app:///api/points_mall.js"],"names":["realAtob","b64","b64re","atob","str","String","replace","test","Error","slice","length","bitmap","result","r1","r2","i","indexOf","charAt","fromCharCode","b64DecodeUnicode","decodeURIComponent","split","map","c","charCodeAt","toString","join","getCurrentUserInfo","token","wx","getStorageSync","tokenArr","uid","role","permission","tokenExpired","userInfo","JSON","parse","error","message","exp","iat","uniIdMixin","Vue","prototype","uniIDHasRole","roleId","uniIDHasPermission","permissionId","uniIDTokenValid","Date","now","_toString","Object","hasOwnProperty","isFn","fn","isStr","isPlainObject","obj","call","hasOwn","key","noop","cached","cache","create","cachedFn","hit","camelizeRE","camelize","_","toUpperCase","sortObject","sortObj","keys","sort","forEach","HOOKS","globalInterceptors","scopedInterceptors","mergeHook","parentVal","childVal","res","concat","Array","isArray","dedupeHooks","hooks","push","removeHook","hook","index","splice","mergeInterceptorHook","interceptor","option","removeInterceptorHook","addInterceptor","method","removeInterceptor","wrapperHook","data","isPromise","then","queue","promise","Promise","resolve","callback","wrapperOptions","options","name","oldCallback","callbackInterceptor","wrapperReturnValue","returnValue","returnValueHooks","getApiInterceptorHooks","scopedInterceptor","invokeApi","api","params","invoke","promiseInterceptor","reject","SYNC_API_RE","CONTEXT_API_RE","CONTEXT_API_RE_EXC","ASYNC_API","CALLBACK_API_RE","isContextApi","isSyncApi","isCallbackApi","handlePromise","catch","err","shouldPromise","finally","constructor","value","reason","promisify","promiseApi","success","fail","complete","assign","EPS","BASE_DEVICE_WIDTH","isIOS","deviceWidth","deviceDPR","checkDeviceWidth","getSystemInfoSync","platform","pixelRatio","windowWidth","upx2px","number","newDeviceWidth","Number","Math","floor","LOCALE_ZH_HANS","LOCALE_ZH_HANT","LOCALE_EN","LOCALE_FR","LOCALE_ES","messages","locale","normalizeLocale","language","initI18nMessages","isEnableLocale","localeKeys","__uniConfig","locales","curMessages","userMessages","i18n","t","i18nMixin","mixin","beforeCreate","unwatch","watchLocale","$forceUpdate","$once","methods","$$t","values","setLocale","getLocale","initAppLocale","appVm","state","observable","localeWatchers","$watchLocale","defineProperty","get","set","v","watch","include","parts","find","part","startsWith","trim","toLowerCase","lang","getLocale$1","app","getApp","allowDefault","$vm","$locale","setLocale$1","oldLocale","onLocaleChangeCallbacks","onLocaleChange","global","interceptors","baseApi","freeze","__proto__","findExistsPageIndex","url","pages","getCurrentPages","len","page","$page","fullPath","redirectTo","fromArgs","exists","delta","args","existsPageIndex","previewImage","currentIndex","parseInt","current","isNaN","urls","filter","item","indicator","loop","UUID_KEY","deviceId","useDeviceId","random","setStorage","addSafeAreaInsets","safeArea","safeAreaInsets","top","left","right","bottom","screenHeight","populateParameters","brand","model","system","theme","version","fontSizeSetting","SDKVersion","deviceOrientation","osName","osVersion","hostVersion","deviceType","getGetDeviceType","deviceBrand","getDeviceBrand","_hostName","getHostName","_deviceOrientation","_devicePixelRatio","_SDKVersion","hostLanguage","parameters","appId","process","appName","appVersion","appVersionCode","appLanguage","getAppLanguage","uniCompileVersion","uniRuntimeVersion","uniPlatform","deviceModel","devicePixelRatio","toLocaleLowerCase","hostTheme","hostName","hostSDKVersion","hostFontSizeSetting","windowTop","windowBottom","osLanguage","undefined","osTheme","ua","hostPackageName","browserName","browserVersion","deviceTypeMaps","ipad","windows","mac","deviceTypeMapsKeys","_model","_m","defaultLanguage","_platform","environment","host","env","getSystemInfo","showActionSheet","alertText","title","getAppBaseInfo","getDeviceInfo","getWindowInfo","getAppAuthorizeSetting","locationReducedAccuracy","locationAccuracy","protocols","todos","canIUses","CALLBACKS","processCallback","methodName","processReturnValue","processArgs","argsOption","keepFromArgs","toArgs","keyOption","console","warn","keepReturnValue","wrapper","protocol","arg1","arg2","apply","todoApis","TODOS","createTodoApi","todoApi","errMsg","providers","oauth","share","payment","getProvider","service","provider","extraApi","getEmitter","Emitter","getUniEmitter","ctx","$on","arguments","$off","$emit","eventApi","tryCatch","e","getApiCallbacks","apiCallbacks","param","cid","cidErrMsg","enabled","normalizePushMessage","invokePushCallback","type","invokeGetPushCidCallbacks","onPushMessageCallbacks","stopped","getPushCidCallbacks","getPushClientId","hasSuccess","hasFail","hasComplete","onPushMessage","offPushMessage","MPPage","Page","MPComponent","Component","customizeRE","customize","initTriggerEvent","mpInstance","oldTriggerEvent","triggerEvent","newTriggerEvent","event","dataset","comType","newEvent","_triggerEvent","initHook","isComponent","oldHook","__$wrappered","after","PAGE_EVENT_HOOKS","initMocks","vm","mocks","$mp","mpType","mock","hasHook","vueOptions","default","extendOptions","super","mixins","initHooks","mpOptions","__call_hook","initUnknownHooks","excludes","findHooks","initHook$1","initVueComponent","VueComponent","extend","initSlots","vueSlots","$slots","slotName","$scopedSlots","initVueIds","vueIds","_$vueId","_$vuePid","initData","context","VUE_APP_DEBUG","stringify","__lifecycle_hooks__","PROP_TYPES","Boolean","createObserver","observer","newVal","oldVal","initBehaviors","initBehavior","vueBehaviors","behaviors","vueExtends","extends","vueMixins","vueProps","props","behavior","properties","initProperties","vueMixin","parsePropType","defaultValue","file","isBehavior","vueId","virtualHost","virtualHostStyle","virtualHostClass","scopedSlotsCompiler","setData","opts","wrapper$1","mp","stopPropagation","preventDefault","target","detail","markerId","getExtraValue","dataPathsArray","dataPathArray","dataPath","propPath","valuePath","vFor","isInteger","substr","__get_value","vForItem","vForKey","processEventExtra","extra","__args__","extraObj","getObjByArray","arr","element","processEventArgs","isCustom","isCustomMPEvent","currentTarget","ret","arg","ONCE","CUSTOM","isMatchEventType","eventType","optType","getContextVm","$parent","$options","generic","$scope","handleEvent","eventOpts","eventOpt","eventsArray","isOnce","eventArray","handlerCtx","handler","path","route","is","once","eventChannels","eventChannelStack","getEventChannel","id","eventChannel","shift","initEventChannel","getOpenerEventChannel","callHook","__id__","__eventChannel__","initScopedSlotsParams","center","parents","$hasScopedSlotsParams","has","$getScopedSlotsParams","object","$setScopedSlotsParams","propsData","destroyed","parseBaseApp","initRefs","store","$store","mpHost","$i18n","_i18n","appOptions","onLaunch","canIUse","globalData","_isMounted","findVmByVueId","vuePid","$children","childVm","parentVm","Behavior","isPage","initRelation","selectAllComponents","selector","$refs","components","component","ref","vueGeneric","scopedComponent","forComponents","handleLink","parent","parseApp","createApp","App","encodeReserveRE","encodeReserveReplacer","commaRE","encode","encodeURIComponent","stringifyQuery","encodeStr","val","val2","x","parseBaseComponent","vueComponentOptions","multipleSlots","addGlobalClass","componentOptions","__file","lifetimes","attached","$mount","ready","detached","$destroy","pageLifetimes","show","hide","resize","size","__l","__e","externalClasses","wxsCallMethods","callMethod","parseComponent","hooks$1","parseBasePage","vuePageOptions","pageOptions","onLoad","query","copyQuery","parsePage","createPage","createComponent","createSubpackageApp","onShow","onAppShow","onHide","onAppHide","getLaunchOptionsSync","createPlugin","canIUseApi","apiName","uni","Proxy","uni$1","codeInput","adjustPosition","maxlength","dot","mode","hairline","space","focus","bold","color","fontSize","disabledKeyboard","borderColor","disabledDot","col","span","offset","justify","align","textAlign","collapse","accordion","border","collapseItem","label","disabled","isLink","clickable","icon","duration","columnNotice","text","bgColor","speed","step","disableTouch","countDown","time","format","autoStart","millisecond","countTo","startVal","endVal","autoplay","decimals","useEasing","decimal","separator","datetimePicker","showToolbar","maxDate","getFullYear","getTime","minDate","minHour","maxHour","minMinute","maxMinute","formatter","loading","itemHeight","cancelText","confirmText","cancelColor","confirmColor","visibleItemCount","closeOnClickOverlay","defaultIndex","divider","dashed","textPosition","textSize","textColor","lineColor","empty","iconColor","iconSize","width","height","marginTop","form","rules","errorType","borderBottom","labelPosition","labelWidth","labelAlign","labelStyle","formItem","prop","rightIcon","leftIcon","required","leftIconStyle","gap","marginBottom","customStyle","grid","gridItem","config","hoverClass","customPrefix","labelPos","labelSize","labelColor","imgMode","stop","image","src","shape","radius","lazyLoad","showMenuByLongpress","loadingIcon","errorIcon","showLoading","showError","fade","webp","indexAnchor","cfg","require","blankChar","CssHandler","screenWidth","emoji","MpHtmlParser","xml","substring","start","STACK","children","DOM","attrs","compress","tagStyle","domain","audioNum","imgNum","videoNum","includes","Text","useAnchor","parseEmoji","setText","popNode","pop","PoweredBy","getName","attrName","trustAttrs","attrVal","boolAttrs","getUrl","isClose","setNode","AttrName","back","section","onText","j","pre","tmp","unshift","siblings","en","node","tagName","close","selfClosingTags","ignoreTags","matchAttr","highlight","remove","source","media","href","getStyle","xmlns","style","ignore","match","styleObj","bubble","class","face","parseFloat","controls","colspan","rowspan","k","styles","info","$","blockTags","trustTags","num","child","one","ten","padding","cellpadding","spacing","cellspacing","f","ns","n","richOnlyTags","next","isLetter","TagName","EndTag","Comment","blank","AttrValue","setAttr","module","exports","makeMap","userAgentStyles","address","big","blockquote","caption","cite","dd","img","mark","picture","s","small","u","maprichee55text9oppplugin","list","CssParser","matched","items","init","Space","Name","Ignore","NameSpace","Content","Comma","content","indexList","inactiveColor","activeColor","sticky","customNavHeight","input","fixed","disabledColor","clearable","password","placeholder","placeholderClass","placeholderStyle","showWordLimit","confirmType","confirmHold","holdKeyboard","autoBlur","disableDefaultPadding","cursor","cursorSpacing","selectionStart","selectionEnd","inputAlign","prefixIcon","prefixIconStyle","suffixIcon","suffixIconStyle","readonly","prePage","toLogin","_toLogin","pathLogin","commit","Cache","navigateTo","checkLogin","LOGIN_STATUS","expiresTime","EXPIRES_TIME","setStorageSync","clear","USER_INFO","STATE_R_KEY","keyboard","dotDisabled","tooltip","showTips","tips","showCancel","showConfirm","safeAreaInsetBottom","overlay","zIndex","autoChange","LotteryDraw","timer","startIndex","count","winingIndex","totalCount","domData","rollFn","that","setTimeout","clearInterval","line","direction","margin","lineProgress","percentage","showText","link","underLine","mpTips","showScrollbar","lowerThreshold","upperThreshold","scrollTop","offsetAccuracy","enableFlex","pagingEnabled","scrollable","scrollIntoView","scrollWithAnimation","enableBackToTop","preLoadScreen","listItem","anchor","vertical","timingFunction","loadingPage","loadingText","loadingMode","loadingColor","loadmore","status","loadmoreText","nomoreText","isDot","modal","showConfirmButton","showCancelButton","buttonReverse","zoom","asyncClose","negativeTop","confirmButtonShape","use","Vuex","debug","Store","modules","getters","strict","navbar","safeAreaInsetTop","leftText","rightText","titleWidth","leftIconSize","leftIconColor","mainColor","autoBack","titleStyle","primary","warning","contentColor","tipsColor","lightColor","noNetwork","noticeBar","linkType","notify","numberBox","min","max","MAX_SAFE_INTEGER","integer","disabledInput","asyncChange","inputWidth","showMinus","showPlus","decimalLength","longPress","buttonSize","disableMinus","disablePlus","iconStyle","numberKeyboard","opacity","copyLink","errorImg","loadingImg","pauseVideo","previewImg","setTitle","showImgMenu","Calendar","date","selected","startDate","endDate","range","getDate","multipleStatus","before","weeks","_getWeek","fullDate","AddDayCount","setDate","setMonth","getMonth","setFullYear","y","m","d","year","month","day","getDay","firstDay","full","dateArr","beforeDate","lunar","getlunar","disable","dateData","isinfo","nowDate","isDay","dateEqual","disableBefore","disableAfter","dateCompBefore","dateCompare","dateCompAfter","multiples","checked","multiplesStatus","findIndex","multiple","extraInfo","surplus","dateInfo","canlender","begin","end","ab","ae","db","de","unixDb","unixDe","CALENDAR","solar2lunar","geDateAll","currentDay","dates","lastMonthDays","_getLastMonthDays","currentMonthDys","_currentMonthDys","nextMonthDays","_getNextMonthDays","calendar","lunarInfo","solarMonth","Gan","Zhi","Animals","solarTerm","sTermInfo","nStr1","nStr2","nStr3","lYearDays","sum","leapDays","leapMonth","monthDays","solarDays","ms","toGanZhiYear","lYear","ganKey","zhiKey","toAstro","cMonth","cDay","toGanZhi","getTerm","_table","_info","_calday","toChinaMonth","toChinaDay","getAnimal","objDate","leap","temp","UTC","isTodayObj","isToday","nWeek","cWeek","isLeap","sm","gzY","firstNode","secondNode","gzM","isTerm","Term","dayCyclical","gzD","astro","lunar2solar","isLeapMonth","leapOffset","leapDay","_day","isAdd","stmap","calObj","cY","getUTCFullYear","cM","getUTCMonth","cD","getUTCDate","picker","columns","keyName","immediateChange","popup","closeable","overlayStyle","closeIconPos","round","overlayOpacity","radio","labelDisabled","placement","radioGroup","iconPlacement","rate","gutter","minCount","allowHalf","activeIcon","inactiveIcon","touchable","readMore","showHeight","toggle","closeText","openText","textIndent","row","rowNotice","scrollList","indicatorWidth","indicatorBarWidth","indicatorColor","indicatorActiveColor","indicatorStyle","search","clearabled","showAction","actionStyle","actionText","inputStyle","searchIconColor","searchIconSize","placeholderColor","searchIcon","animation","subTitle","subColor","showLine","arrow","hotWords","indexData","skeleton","animate","rows","rowsWidth","rowsHeight","titleHeight","avatar","avatarSize","avatarShape","slider","blockSize","blockColor","showValue","blockStyle","statusBar","steps","stepsItem","desc","offsetTop","subsection","swipeAction","autoClose","swipeActionItem","threshold","swiper","indicatorInactiveColor","indicatorMode","currentItemId","interval","circular","previousMargin","nextMargin","acceleration","displayMultipleItems","easingFunction","showTitle","backgroundColor","UID","homeActive","phoneStatus","pageFooter","mutations","SETPHONESTATUS","LOGIN","opt","SETUID","UPDATE_LOGIN","LOGOUT","BACKGROUND_COLOR","document","body","UPDATE_USERINFO","OPEN_HOME","CLOSE_HOME","FOOT_UPLOAD","actions","USERINFO","force","reslove","swiperIndicator","switch","activeValue","inactiveValue","tabbar","tabbarItem","badge","badgeStyle","tabs","activeStyle","inactiveStyle","lineWidth","lineHeight","lineBgSize","itemStyle","tag","closeColor","plainFill","plain","closable","openType","block","lines","decoration","wordWrap","textarea","autoHeight","showConfirmBar","toast","position","isTab","toolbar","getUserInfo","request","userShare","post","loginH5","noAuth","loginMobile","getCodeApi","registerVerify","register","registerReset","getMenuList","postSignUser","sign","getSignConfig","getSignList","setSignIntegral","getSignMonthList","userActivity","getCommissionInfo","q","types","getIntegralList","spreadBanner","spreadPeople","spreadCount","getSpreadInfo","spreadOrder","divisionOrder","getRankList","getBrokerageRank","extractCash","extractBank","userLevelGrade","userLevelTask","userLevelDetection","getAddressList","setAddressDefault","editAddress","delAddress","getAddressDetail","userEdit","getLogout","rechargeRoutine","rechargeWechat","getAddressDefault","getRechargeApi","setVisit","serviceList","getChatRecord","spread","puid","getlevelInfo","getlevelExpList","updateUserInfo","phoneWxSilenceAuth","phoneSilenceAuth","invoiceList","invoiceSave","invoiceDelete","invoiceDefault","invoiceDetail","invoiceOrder","makeUpinvoice","memberCard","memberCardDraw","memberCardCreate","memberCouponsList","groomList","memberOverdueTime","spreadMsg","imgToBase","routineCode","serviceRecord","messageSystem","getMsgDetails","msgLookDel","appleLogin","getUserAgreement","agentLevelList","agentLevelTaskList","friendDetail","clerkPeople","setClerkPercent","delClerkPercent","cancelUser","copyText","showCopy","buttons","showToast","transition","upload","accept","capture","compressed","camera","maxDuration","uploadIcon","uploadIconColor","useBeforeRead","previewFullImage","maxCount","imageMode","sizeType","deletable","maxSize","MAX_VALUE","fileList","uploadText","mask","topTips","indexListSticky","baseRequest","noVerify","Url","HTTP_REQUEST_URL","header","HEADER","msg","TOKENNAME","showModal","mag","EXPIRE","LIMIT","getProductDetail","getProductCode","user_type","collectAdd","category","collectDel","postCartAdd","getCategoryList","getProductslist","getProductHot","limit","collectAll","getGroomList","getCollectUserList","getReplyList","getReplyConfig","getSearchKeyword","storeListApi","storeDiscountsList","postCartNum","getAgentAgreement","getGoodsDetails","getAttr","getHomeProducts","getPresellProductDetail","getVisitList","deleteVisitList","delete","VueI18n","langJson","en_us","zh_cn","fr_fr","th_th","ja_jp","it_it","ko_kr","mn_mn","vi_vn","zh_ft","r","o","a","h","z","utcOffset","abs","clone","add","ceil","p","M","w","D","Q","weekdays","months","l","g","$L","utc","$u","$offset","$d","NaN","$y","$M","$D","$W","$H","getHours","$m","getMinutes","$s","getSeconds","$ms","getMilliseconds","$utils","isValid","isSame","startOf","endOf","isAfter","isBefore","$g","hour","minute","second","unix","valueOf","toDate","weekStart","$set","daysInMonth","subtract","meridiem","YY","YYYY","MM","MMM","monthsShort","MMMM","DD","weekdaysMin","ddd","weekdaysShort","dddd","H","HH","hh","A","mm","ss","SSS","Z","getTimezoneOffset","diff","toJSON","toISOString","toUTCString","isDayjs","Ls","goShopDetail","activity","goPage","isIframe","auth","tmplIds","messageTmplIds","SUBSCRIBE_MESSAGE","openPaySubscribe","subscribe","order_pay_success","order_deliver_success","order_postage_success","openOrderSubscribe","order_take","integral_accout","order_brokerage","openExtrctSubscribe","user_extract","openPinkSubscribe","open_pink_success","can_pink_success","openBargainSubscribe","bargain_success","openOrderRefundSubscribe","order_refund","openRechargeSubscribe","recharge_success","subscrip443tionmessagee502call","weChat","requestSubscribeMessage","getStatisticsInfo","login","getStatisticsMonth","where","getAdminOrderList","setAdminOrderPrice","setAdminOrderRemark","getAdminOrderDetail","orderId","getAdminRefundOrderDetail","getAdminOrderDelivery","setAdminOrderDelivery","getStatisticsTime","setOfflinePay","setOrderRefund","getLogistics","orderVerific","verify_code","is_confirm","orderExportTemp","orderDeliveryInfo","orderOrderDelivery","orderRefund_order","setAdminRefundRemark","getLotteryData","startLottery","receiveLottery","getLotteryList","isObject","defaultDelimiters","BaseFormatter","_caches","delimiters","tokens","compile","RE_TOKEN_LIST_VALUE","RE_TOKEN_NAMED_VALUE","startDelimiter","endDelimiter","char","sub","isClosed","compiled","defaultFormatter","I18n","fallbackLocale","watcher","formater","watchers","override","interpolate","watchAppLocale","newLocale","$watch","getDefaultLocale","initVueI18n","isWatchedAppLocale","isString","hasI18nJson","jsonObj","walkJsonObj","isI18nStr","parseI18nJson","compileStr","compileI18nJsonStr","jsonStr","localeValues","compileJsonObj","compileValue","valueLocales","localValue","walk","resolveLocale","resolveLocaleChain","chain","webpackUniversalModuleDefinition","root","factory","installedModules","__webpack_require__","moduleId","getter","enumerable","Symbol","toStringTag","__esModule","bind","getDefault","getModuleExports","property","select","selectedText","nodeName","isReadOnly","hasAttribute","setAttribute","setSelectionRange","removeAttribute","selection","window","getSelection","createRange","selectNodeContents","removeAllRanges","addRange","E","on","self","listener","off","emit","evtArr","evts","liveEvents","TinyEmitter","delegate","listen","string","TypeError","listenNode","nodeList","listenNodeList","listenSelector","addEventListener","destroy","removeEventListener","HTMLElement","nodeType","closest","_delegate","useCapture","listenerFn","elements","querySelectorAll","delegateTarget","DOCUMENT_NODE_TYPE","Element","matches","proto","matchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","webkitMatchesSelector","parentNode","__webpack_exports__","src_select","select_default","_typeof","iterator","_createClass","defineProperties","descriptor","configurable","writable","Constructor","protoProps","staticProps","_classCallCheck","instance","clipboard_action_ClipboardAction","ClipboardAction","resolveOptions","initSelection","action","container","emitter","trigger","selectFake","selectTarget","_this","isRTL","documentElement","getAttribute","removeFake","fakeHandlerCallback","fakeHandler","fakeElem","createElement","yPosition","pageYOffset","appendChild","removeChild","succeeded","execCommand","handleResult","clearSelection","activeElement","blur","_action","_target","clipboard_action","tiny_emitter","tiny_emitter_default","listen_default","clipboard_typeof","clipboard_createClass","clipboard_classCallCheck","_possibleConstructorReturn","ReferenceError","_inherits","subClass","superClass","setPrototypeOf","clipboard_Clipboard","_Emitter","Clipboard","getPrototypeOf","listenClick","defaultAction","defaultTarget","defaultText","_this2","onClick","clipboardAction","getAttributeValue","querySelector","isSupported","support","queryCommandSupported","suffix","attribute","clipboard","WX_AUTH","STATE_KEY","LOGINTYPE","BACK_URL","LOGO_URL","TIPS_KEY","SPREAD","CACHE_LONGITUDE","CACHE_LATITUDE","cacheSetHandler","cacheGetHandler","cacheClearHandler","removeStorageSync","cacheExpire","clearOverdue","expires_time","expire","newTag","newKeys","$bool","newTime","setExpireCaheTag","checkwhethethecacheexists","getExpireCahe","$default","isBe","cahceValue","newBeOverdueValue","newTagValue","namespaced","hotWord","setHotWord","fastsearchforhotwords","indexDatas","cartNum","setIndexData","setCartNum","isLogin","home","isMoney","money","reg","checkPhone","c2543fff3bfa6f144c2f06a7de6cd10c0b650cae","Debounce","delay","clearTimeout","Throttle","last","Routine","scopeUserInfo","isAuth","code","getCode","getUserCode","user","islogin","getUserProfile","authorize","scope","getSetting","authSetting","getWechatConfig","wechat","signLink","wechatAuth","login_type","getLogo","silenceAuth","getShare","follow","imageBase64","copyWords","getShopConfig","getUserPhone","routineLogin","wechatAuthV2","getNavigation","getSubscribe","getUpdateInfo","silenceBindingSpread","spid","isWeixin","navigator","userAgent","getCustomer","customer_type","makePhoneCall","phoneNumber","customer_phone","customer_url","openCustomerServiceChat","extInfo","corpId","customer_corpId","parseQuery","location","updateURLParameter","paramVal","newAdditionalURL","tempArray","baseURL","additionalURL","rows_txt","VUE_APP_WS_URL","chat","getIndexData","getServerType","setFormId","formId","setCouponReceive","couponId","getCoupons","getCouponsIndex","getUserCoupons","getNewCoupon","getArticleCategoryList","getArticleList","getArticleHotList","getArticleBannerList","getArticleDetails","verifyCode","phone","reset","phoneRegister","phoneRegisterReset","phoneLogin","switchH5Login","bindingPhone","bindingUserPhone","logout","getTempIds","pink","getCity","getLiveList","getDiy","colorChange","updatePhone","getCouponV2","getCouponNewUser","searchList","clearSearch","siteConfig","wechatAppAuth","getCustomerType","getOpenAdv","getCrmebCopyRight","kefuLogin","kefu","record","speeChcraft","transferList","productCart","productHot","productVisit","serviceTransfer","serviceInfo","serviceFeedBack","feedBackPost","codeStauts","getWorkermanUrl","kefuScanLogin","getCartCounts","numType","getCartList","getResetCart","changeCartNum","cartId","cartDel","ids","getOrderList","orderProduct","unique","orderComment","orderPay","refundOrderDel","orderData","orderCancel","orderDel","getOrderDetail","cart_id","getRefundOrderDetail","orderAgain","orderTake","express","ordeRefundReason","orderRefundVerify","orderConfirm","news","addressId","shipping_type","checkShipping","getCouponsOrderPrice","price","orderCreate","postOrderComputed","orderCoupon","offlineCheckPrice","offlineCreate","orderOfflinePayType","orderInvoiceList","orderInvoiceDetail","aliPay","quitUrl","refundExpress","vcartList","refundGoodsList","postRefundGoods","returnGoodsSubmit","getNewOrderList","refundOrderDetail","cancelRefundOrder","colorStyle","colorStatus","created","$t","sendCode","run","setInterval","Tips","to_url","endtime","tab","navigateBack","reLaunch","ArrayRemove","array","valueArray","textByteLength","strLength","PosterCanvas","arr2","store_name","ot_price","successFn","createCanvasContext","clearRect","fillStyle","fillRect","getImageInfo","WIDTH","HEIGHT","drawImage","save","cx","cy","arc","PI","restore","CONTENT_ROW_LENGTH","contentLeng","contentArray","contentRows","textArray","setTextAlign","setFontSize","setFillStyle","contentHh","fillText","underline","thickness","measureText","beginPath","strokeStyle","moveTo","lineTo","stroke","draw","canvasToTempFilePath","canvasId","fileType","destWidth","destHeight","hideLoading","tempFilePath","bargainPosterCanvas","wd","hg","labelx","labely","pricex","pricey","codex","codey","picturex","picturey","picturebx","pictureby","msgx","msgy","codew","quality","userPosterCanvas","nickname","sitename","codeSize","namex","namey","markx","marky","uploadImageOne","successCallback","errorCallback","sourceType","is_load","uploadUrl","inputName","chooseImage","uploadFile","filePath","tempFilePaths","formData","statusCode","uploadImageChange","sizeCallback","imgSrc","ress","tempFiles","uploadImg","canvasWidth","canvasHeight","xs","maxWidth","canvas","canvasPath","getUrlParams","SplitArray","sp","backUrlCRshlcICwGdGY","$h","Div","t1","t2","Mul","pow","Add","Sub","toFixed","s1","s2","getLocation","openSetting","doGetLocation","longitude","latitude","checkPermission","permision","requestIOS","requestAndroid","confirm","gotoAppSetting","getLocalFilePath","localFilePath","plus","io","convertAbsoluteFileSystem","pathToBase64","FileReader","xhr","XMLHttpRequest","open","responseType","onload","fileReader","onerror","readAsDataURL","response","send","c2x","getContext","Image","toDataURL","resolveLocalFileSystemURL","entry","getFileSystemManager","readFile","encoding","base64ToPath","base64","Uint8Array","URL","webkitURL","createObjectURL","Blob","extName","fileName","nativeObj","Bitmap","loadBase64Data","USER_DATA_PATH","writeFile","Socket","onSocketOpen","my","datas","sendSocketMessage","onMessage","onClose","closeSocket","onError","onStart","form_type","wssUrl","ws","connectSocket","onOpen","pleaseSetTranspileDependencies","babelTest","timeFormat","colorGradient","hexToRgb","rgbToHex","colorToRgba","http","Request","debounce","throttle","mpMixin","install","timestamp","timeFrom","customClass","getRect","$uGetRect","computed","deepMerge","bem","change","prefix","classes","openPage","urlKey","all","createSelectorQuery","in","boundingClientRect","rect","exec","getParentData","parentName","parentData","preventEvent","onReachBottom","beforeDestroy","childrenList","defaults","InterceptorManager","dispatchRequest","fulfilled","rejected","middleware","mergeKeys","config2","_config","requestTask","otherConfig","optionalKeys","downloadFile","getTask","buildURL","serializedParams","utils","isURLSearchParams","isDate","hashmarkIndex","URLSearchParams","isBoolean","assignValue","isUndefined","buildFullPath","requestedURL","isAbsoluteURL","combineURLs","relativeURL","settle","validateStatus","handlers","eject","globalsConfig","custom","defaultToConfig2Keys","uploadKeys","defaultsKeys","dataType","timeout","_instanceof","nativeMap","Map","nativeSet","Set","nativePromise","depth","includeNonEnumerable","allParents","allChildren","useBuffer","Buffer","Infinity","_clone","__isArray","__isRegExp","RegExp","__getRegExpFlags","lastIndex","__isDate","isBuffer","from","copy","keyChild","valueChild","entryChild","getOwnPropertyDescriptor","objProperty","getOwnPropertySymbols","symbols","symbol","allPropertyNames","getOwnPropertyNames","propertyName","clonePrototype","__objToStr","re","flags","ignoreCase","multiline","sysHeight","statusBarHeight","sharePoster","codeShow","codeVal","unit","background","foreground","pdground","codeIcon","iconsize","lv","onval","loadMake","base64Show","shareQrcode","followCode","selectSku","currentPage","isShow","storeImageBase64","qrR","getImageBase64","storeImage","goPoster","posters","posterbackgd","PromotionCode","isDown","$util","downloadFilePromotionCode","msgPromotionCode","storeInfo","actionSheetHidden","$nextTick","setDomain","downloadFilestoreImage","getCombinationList","getCombinationDetail","getCombinationPink","postCombinationRemove","getBargainList","getCombinationBannerList","getPink","getBargainUserList","getBargainDetail","postBargainStartUser","postBargainStart","bargainId","postBargainHelp","postBargainHelpPrice","postBargainHelpList","postBargainHelpCount","postBargainShare","getSeckillIndexTime","getSeckillList","getSeckillDetail","getBargainPoster","getCombinationPoster","getBargainUserCancel","seckillCode","scombinationCode","getCombinationPosterData","getBargainPosterData","integralOrderConfirm","integralOrderCreate","integralOrderDetails","order","getIntegralProductDetail","getStoreIntegralList","getIntegralOrderList","getLogisticsDetails","getPresellList","Router","animationType","animationDuration","intercept","addRootPath","queryParams","mergeConfig","mixinParam","routeIntercept","isNext","switchTab","QRCode","unicodeFormat8","c0","c1","c2","getUTF8Bytes","utf8codes","utf8","QRCodeAlg","twodimensionalcodeee5conversionmethod","typeNumber","errorCorrectLevel","moduleCount","dataCache","rsBlocks","totalDataCount","utf8bytes","make","getModuleCount","getRightType","createData","createQrcode","makeImpl","maskPattern","setupPositionProbePattern","setupPositionAdjustPattern","setupTimingPattern","setupTypeInfo","setupTypeNumber","mapData","minLostPoint","pattern","bestModules","lostPoint","QRUtil","getLostPoint","pos","getPatternPosition","bits","getBCHTypeNumber","mod","QRErrorCorrectLevel","getBCHTypeInfo","buffer","QRBitBuffer","lengthBits","put","putBit","PAD0","PAD1","createBytes","maxDcCount","maxEcCount","rsBlock","dataCount","dcdata","ecdata","dcCount","ecCount","rsPoly","getErrorCorrectPolynomial","rawPoly","QRPolynomial","getLength","modPoly","modIndex","inc","bitIndex","byteIndex","dark","getMask","QRMaskPattern","PATTERN000","PATTERN001","PATTERN010","PATTERN011","PATTERN100","PATTERN101","PATTERN110","PATTERN111","PATTERN_POSITION_TABLE","G15","G18","G15_MASK","getBCHDigit","digit","errorCorrectLength","multiply","QRMath","gexp","qrCode","darkCount","sameCount","head","ratio","glog","LOG_TABLE","EXP_TABLE","tl","el","RS_BLOCK_TABLE","lengthBytes","bufIndex","bit","qrcodeAlgObjCache","correctLevel","imageSize","usingComponents","qrCodeAlg","getForeGround","createCanvas","ratioSize","ratioImgSize","tileW","toPrecision","tileH","drawRoundedRect","ctxi","fill","setLineWidth","setStrokeStyle","arcTo","closePath","cbResult","tp","rt","startColor","endColor","startRGB","startR","startG","startB","endRGB","endR","endG","endB","sR","sG","sB","colorArr","hex","sColor","sColorNew","sColorChange","rgb","aColor","strHex","aNum","numHex","alpha","email","mobile","dateISO","digits","idCard","carNo","xreg","creg","amount","chinese","letter","enOrNum","contains","rangeLength","landline","jsonString","func","newValue","IMAGE_REGEXP","video","VIDEO_REGEXP","regExp","isEmpty","wait","immediate","callNow","flag","getPx","sleep","os","sys","gab","guid","firstU","radix","chars","uuid","addStyle","styleArray","addUnit","deepClone","randomArray","padStart","maxLength","fillString","fillLength","times","dateTime","formatStr","timeSource","beginIndex","isPrefix","arrayFormat","_result","_value","commaStr","type2icon","iconName","priceFormat","decimalPoint","thousandsSeparator","isFinite","prec","sep","dec","getDuration","valueNum","padZero","formValidate","validateField","getProperty","firstObj","setProperty","inFn","_obj","setConfig","_boundaryCheckingState","strip","precision","digitLength","eSplit","float2Fixed","dLen","checkBoundary","MIN_SAFE_INTEGER","iteratorOperation","operation","num1","num2","others","nums","num1Changed","num2Changed","baseNum","leftValue","minus","divide","base","enableBoundaryChecking","log","actionSheet","album","alert","avatarGroup","backtop","button","carKeyboard","cell","cellGroup","checkbox","checkboxGroup","circleProgress","swipterIndicator","_switch","description","closeOnClickAction","singleSize","multipleSize","singleMode","multipleMode","rowCount","showMore","showIcon","effect","mpAvatar","randomBgColor","defaultUrl","colorIndex","yAxisWidth","yAxisSplit","xAxisHeight","xAxisLineHeight","legendHeight","yAxisTitleWidth","rotate","columePadding","dataPointShape","colors","pieChartLinePadding","pieChartTextPadding","xAxisTextPadding","titleColor","titleFontSize","subtitleColor","subtitleFontSize","toolTipPadding","toolTipBackground","toolTipOpacity","toolTipLineHeight","radarLabelTextMargin","gaugeLabelTextMargin","varArgs","deepAssign","obj1","obj2","util","isFloat","approximatelyEqual","isSameSign","isSameXCoordinateArea","p1","p2","isCollision","getH5Offset","changedTouches","offsetX","offsetY","hexValue","opc","rgx","b","findRange","calCandleMA","dayArr","nameArr","kdata","seriesTemp","seriesItem","calValidDistance","distance","chartData","dataChartAreaWidth","area","dataChartWidth","eachSpacing","xAxisData","xAxisPoints","validDistance","isInAngleRange","angle","startAngle","endAngle","adjust","calRotateTranslate","xv","yv","transX","sqrt","transY","createCurveControlPoints","points","isNotMiddlePoint","isNotMiddlePointX","pAx","pAy","pBx","pBy","ctrA","ctrB","convertCoordinateOrigin","avoidCollision","fillSeries","series","pointShape","legendShape","getDataRange","minData","maxData","minRange","maxRange","dataCombine","reduce","dataCombineStack","getTouches","touches","clientX","pageY","getSeriesDataItem","disableLegend","getMaxTextListLength","lengthList","getRadarCoordinateSeries","eachAngle","CoordinateSeries","getToolTipData","seriesData","calPoints","categories","textList","titleText","validCalPoints","getMixToolTipData","getCandleToolTipData","upColor","upFill","downColor","downFill","text0","text1","text2","text3","text4","filterSeries","tempSeries","findCurrentIndex","currentPoints","xAxis","boundaryGap","isInExactChartArea","findLegendIndex","legendData","isInExactLegendArea","findRadarChartCurrentIndex","radarData","eachAngleArea","isInExactPieChartArea","fixAngle","atan2","angleList","rangeStart","rangeEnd","findFunnelChartCurrentIndex","funnelData","funnelArea","findWordChartCurrentIndex","wordData","findMapChartCurrentIndex","cData","pointToCoordinate","bounds","scale","xoffset","yoffset","poi","geometry","coordinates","isPoiWithinPoly","findPieChartCurrentIndex","pieData","_start_","_proportion_","splitPoints","newPoints","calLegendData","wholeWidth","wholeHeight","widthArr","heightArr","legend","shapeWidth","shapeRight","legendList","widthCount","widthCountArr","currentRow","itemWidth","itemGap","legendWidth","float","maxHeight","lineNum","calCategoriesData","categoriesTextLenth","maxTextLength","rotateLabel","sin","getXAxisTextList","sorted","subitem","rangeSpan","eachRange","splitNumber","calXAxisData","ranges","rangesFormat","xAxisScaleValues","getXAxisPoints","textLength","getRadarDataPoints","radarOption","radar","each","proportion","cos","getPieDataPoints","_radius_","getFunnelDataPoints","reverse","getRoseDataPoints","minRadius","dataArr","radiusLength","_rose_proportion_","getArcbarDataPoints","arcbarOption","totalAngle","getGaugeAxisPoints","tempStartAngle","_startAngle_","_endAngle_","getGaugeDataPoints","gaugeOption","pointer","_oldAngle_","oldAngle","oldData","getPieTextMaxLength","fixColumeData","columnLen","column","fixColumeMeterData","fixColumeStackData","indexn","spacingValid","enableScroll","itemCount","startX","endX","getCandleDataPoints","validHeight","cPoints","indexs","point","getDataPoints","validWidth","xranges","xminRange","xmaxRange","getStackDataPoints","seriesIndex","stackSeries","value0","height0","heightc","y0","getYAxisTextList","stack","yAxis","dataRange","calYAxisData","columnstyle","YLength","newSeries","rangesArr","rangesFormatArr","yAxisWidthArr","yData","yAxisFontSizes","calibration","yAxisFontSize","calTooltipYAxisData","yAxisData","minAxis","maxVal","minVal","calMarkLineData","yAxisIndex","contextRotate","rotateLock","translate","_rotate_","drawPointShape","dataPointShapeType","drawRingTitle","titlefontSize","subtitlefontSize","subtitle","titleFontColor","subtitleFontColor","subtitleHeight","textWidth","startY","_textWidth","_startX","_startY","drawPointText","formatVal","drawGaugeLabel","centerPosition","splitAngle","splitLine","totalNumber","endNumber","startNumber","nowAngle","nowNumber","labelText","labelFormat","drawRadarLabel","posRelativeCanvas","drawPieText","lineRadius","textObjectCollection","lastTextObject","seriesConvert","orginX1","orginY1","orginX2","orginY2","orginX3","orginY3","textObject","lineStart","lineEnd","lineStartPoistion","lineEndPoistion","curveStartX","textStartX","quadraticCurveTo","drawToolTipSplitLine","toolTipOption","gridType","dashLength","endY","setLineDash","gridColor","xAxisLabel","textX","textY","labelBgColor","labelBgOpacity","labelFontColor","fontColor","drawMarkLine","markLineOption","markLine","showLabel","bgStartX","bgEndX","bgWidth","drawToolTipHorizentalLine","yAxisLabel","tStartLeft","tStartRight","drawToolTipSplitArea","activeBgColor","activeBgOpacity","drawToolTip","showBox","bgOpacity","legendMarginRight","arrowWidth","isOverRightBorder","toolTipWidth","toolTipHeight","_scrollDistance_","drawYAxisTitle","drawColumnDataPoints","columnOption","meter","fillColor","leftNum","rightNum","eachSeries","tooltipPoints","dataLabel","drawCandleDataPoints","seriesMA","candleOption","average","candle","upLine","downLine","leftSpace","rightSpace","splitPointList","startPoint","ctrlPoint","bezierCurveTo","drawAreaDataPoints","areaOption","addLine","gradient","createLinearGradient","addColorStop","firstPoint","lastPoint","lineType","drawLineDataPoints","lineOption","drawMixDataPoints","columnIndex","columnLength","addPoint","drawToolTipBridge","horizentalLine","drawXAxis","scrollShow","scrollY","scrollScreenWidth","scrollTotalWidth","scrollWidth","scrollLeft","setLineCap","scrollBackgroundColor","scrollColor","disableGrid","gridEval","maxXAxisListLength","labelCount","newCategories","cgLength","xAxisFontSize","_xAxisTextAngle_","scrollHeight","_calRotateTranslate","axisLine","axisLineColor","drawYAxisGrid","xAxiseachSpacing","TotalWidth","drawYAxis","fillEndY","drawLegend","legendArea","borderWidth","itemList","listIndex","hiddenColor","fontTrans","drawPieDataPoints","pieOption","activeOpacity","activeRadius","offsetAngle","ringWidth","pie","_pieTextMaxLength_","lineJoin","innerPieWidth","valid","drawRoseDataPoints","roseOption","rose","drawArcbarDataPoints","arcbar","drawGaugeDataPoints","fixRadius","childNumber","childWidth","gauge","innerRadius","pieRadius","childAngle","proc","pointerRadius","gradient3","eachCategories","childendX","drawRadarDataPoints","gridCount","coordinateAngle","_loop","startPos","radarDataPoints","normalInt","iter","collisionNew","isIn","getBoundingBox","coords","xMin","xMax","yMin","yMax","coorda","coordinateToPoint","pointY","pointX","isRayIntersectsSegment","s_poi","e_poi","xseg","poly","sinsc","epoly","drawMapDataPoints","mapOption","fillOpacity","activeBorderColor","activeFillColor","activeFillOpacity","xScale","yScale","centerPoint","centroid","getWordCloudPoint","tHeight","tWidth","breaknum","Spin","isSpin","areav","drawWordCloudDataPoints","wordOption","autoColors","word","wordCloudData","strokeText","drawFunnelDataPoints","funnelOption","activeWidth","funnel","drawFunnelText","drawCanvas","Timing","easeIn","easeOut","easeInOut","linear","Animation","isStop","timing","createAnimationFrame","timeStamp","requestAnimationFrame","animationFrame","startTimeStamp","_step","onProcess","onAnimationFinish","drawCharts","animationInstance","_series_","_calLegendData","_calYAxisData","maxTitleHeight","rightIndex","leftIndex","_calCategoriesData","categoriesData","scrollAlign","offsetLeft","totalWidth","scrollOption","currentOffset","startTouchX","lastMoveTime","updateData","_drawLineDataPoints","enableMarkLine","_drawMixDataPoints","_drawColumnDataPoints","_drawAreaDataPoints","arcbarData","gaugeData","_drawCandleDataPoints","Event","events","_len","_key","Charts","config$$1","tempWidth","tempHeight","$this","scrollPosition","_getXAxisPoints0","centerLeft","MaxLeft","stopAnimation","getCurrentDataIndex","_touches$","getLegendDataIndex","touchLegend","showToolTip","_getToolTipData","_getMixToolTipData","scrollStart","scroll","Limit","touchMoveLimit","currMoveTime","_distance","scrollEnd","_scrollOption","extraValue","showZero","numberType","inverted","absolute","loadingSize","formType","appParameter","hoverStopPropagation","sessionFrom","sendMessageTitle","sendMessagePath","sendMessageImg","showMessageCard","dataName","throttleTime","hoverStartTime","hoverStayTime","showSubtitle","startText","endText","customList","defaultDate","rowHeight","showLunar","showMark","confirmDisabledText","rangePrompt","showRangePrompt","allowSameDay","monthNum","arrowDirection","rightIconStyle","seconds","changeText","keepRunning","uniqueKey","getStoreIntegral"],"mappings":";;;;;;;;;;mUAAA;AACA,qE;;AAEA,IAAIA,QAAJ;;AAEA,IAAMC,GAAG,GAAG,mEAAZ;AACA,IAAMC,KAAK,GAAG,sEAAd;;AAEA,IAAI,OAAOC,IAAP,KAAgB,UAApB,EAAgC;AAC9BH,UAAQ,GAAG,kBAAUI,GAAV,EAAe;AACxBA,OAAG,GAAGC,MAAM,CAACD,GAAD,CAAN,CAAYE,OAAZ,CAAoB,eAApB,EAAqC,EAArC,CAAN;AACA,QAAI,CAACJ,KAAK,CAACK,IAAN,CAAWH,GAAX,CAAL,EAAsB,CAAE,MAAM,IAAII,KAAJ,CAAU,0FAAV,CAAN,CAA6G;;AAErI;AACAJ,OAAG,IAAI,KAAKK,KAAL,CAAW,KAAKL,GAAG,CAACM,MAAJ,GAAa,CAAlB,CAAX,CAAP;AACA,QAAIC,MAAJ,CAAY,IAAIC,MAAM,GAAG,EAAb,CAAiB,IAAIC,EAAJ,CAAQ,IAAIC,EAAJ,CAAQ,IAAIC,CAAC,GAAG,CAAR;AAC7C,WAAOA,CAAC,GAAGX,GAAG,CAACM,MAAf,GAAwB;AACtBC,YAAM,GAAGV,GAAG,CAACe,OAAJ,CAAYZ,GAAG,CAACa,MAAJ,CAAWF,CAAC,EAAZ,CAAZ,KAAgC,EAAhC,GAAqCd,GAAG,CAACe,OAAJ,CAAYZ,GAAG,CAACa,MAAJ,CAAWF,CAAC,EAAZ,CAAZ,KAAgC,EAArE;AACK,OAACF,EAAE,GAAGZ,GAAG,CAACe,OAAJ,CAAYZ,GAAG,CAACa,MAAJ,CAAWF,CAAC,EAAZ,CAAZ,CAAN,KAAuC,CAD5C,IACiDD,EAAE,GAAGb,GAAG,CAACe,OAAJ,CAAYZ,GAAG,CAACa,MAAJ,CAAWF,CAAC,EAAZ,CAAZ,CADtD,CAAT;;AAGAH,YAAM,IAAIC,EAAE,KAAK,EAAP,GAAYR,MAAM,CAACa,YAAP,CAAoBP,MAAM,IAAI,EAAV,GAAe,GAAnC,CAAZ;AACNG,QAAE,KAAK,EAAP,GAAYT,MAAM,CAACa,YAAP,CAAoBP,MAAM,IAAI,EAAV,GAAe,GAAnC,EAAwCA,MAAM,IAAI,CAAV,GAAc,GAAtD,CAAZ;AACEN,YAAM,CAACa,YAAP,CAAoBP,MAAM,IAAI,EAAV,GAAe,GAAnC,EAAwCA,MAAM,IAAI,CAAV,GAAc,GAAtD,EAA2DA,MAAM,GAAG,GAApE,CAFN;AAGD;AACD,WAAOC,MAAP;AACD,GAhBD;AAiBD,CAlBD,MAkBO;AACL;AACAZ,UAAQ,GAAGG,IAAX;AACD;;AAED,SAASgB,gBAAT,CAA2Bf,GAA3B,EAAgC;AAC9B,SAAOgB,kBAAkB,CAACpB,QAAQ,CAACI,GAAD,CAAR,CAAciB,KAAd,CAAoB,EAApB,EAAwBC,GAAxB,CAA4B,UAAUC,CAAV,EAAa;AACjE,WAAO,MAAM,CAAC,OAAOA,CAAC,CAACC,UAAF,CAAa,CAAb,EAAgBC,QAAhB,CAAyB,EAAzB,CAAR,EAAsChB,KAAtC,CAA4C,CAAC,CAA7C,CAAb;AACD,GAFyB,EAEvBiB,IAFuB,CAElB,EAFkB,CAAD,CAAzB;AAGD;;AAED,SAASC,kBAAT,GAA+B;AAC7B,MAAMC,KAAK,GAAKC,EAAF,CAAMC,cAAN,CAAqB,cAArB,KAAwC,EAAtD;AACA,MAAMC,QAAQ,GAAGH,KAAK,CAACP,KAAN,CAAY,GAAZ,CAAjB;AACA,MAAI,CAACO,KAAD,IAAUG,QAAQ,CAACrB,MAAT,KAAoB,CAAlC,EAAqC;AACnC,WAAO;AACLsB,SAAG,EAAE,IADA;AAELC,UAAI,EAAE,EAFD;AAGLC,gBAAU,EAAE,EAHP;AAILC,kBAAY,EAAE,CAJT,EAAP;;AAMD;AACD,MAAIC,QAAJ;AACA,MAAI;AACFA,YAAQ,GAAGC,IAAI,CAACC,KAAL,CAAWnB,gBAAgB,CAACY,QAAQ,CAAC,CAAD,CAAT,CAA3B,CAAX;AACD,GAFD,CAEE,OAAOQ,KAAP,EAAc;AACd,UAAM,IAAI/B,KAAJ,CAAU,wBAAwB+B,KAAK,CAACC,OAAxC,CAAN;AACD;AACDJ,UAAQ,CAACD,YAAT,GAAwBC,QAAQ,CAACK,GAAT,GAAe,IAAvC;AACA,SAAOL,QAAQ,CAACK,GAAhB;AACA,SAAOL,QAAQ,CAACM,GAAhB;AACA,SAAON,QAAP;AACD;;AAED,SAASO,UAAT,CAAqBC,GAArB,EAA0B;AACxBA,KAAG,CAACC,SAAJ,CAAcC,YAAd,GAA6B,UAAUC,MAAV,EAAkB;;;AAGzCpB,sBAAkB,EAHuB,CAE3CM,IAF2C,uBAE3CA,IAF2C;AAI7C,WAAOA,IAAI,CAACjB,OAAL,CAAa+B,MAAb,IAAuB,CAAC,CAA/B;AACD,GALD;AAMAH,KAAG,CAACC,SAAJ,CAAcG,kBAAd,GAAmC,UAAUC,YAAV,EAAwB;;;AAGrDtB,sBAAkB,EAHmC,CAEvDO,UAFuD,wBAEvDA,UAFuD;AAIzD,WAAO,KAAKY,YAAL,CAAkB,OAAlB,KAA8BZ,UAAU,CAAClB,OAAX,CAAmBiC,YAAnB,IAAmC,CAAC,CAAzE;AACD,GALD;AAMAL,KAAG,CAACC,SAAJ,CAAcK,eAAd,GAAgC,YAAY;;;AAGtCvB,sBAAkB,EAHoB,CAExCQ,YAFwC,wBAExCA,YAFwC;AAI1C,WAAOA,YAAY,GAAGgB,IAAI,CAACC,GAAL,EAAtB;AACD,GALD;AAMD;;AAED,IAAMC,SAAS,GAAGC,MAAM,CAACT,SAAP,CAAiBpB,QAAnC;AACA,IAAM8B,cAAc,GAAGD,MAAM,CAACT,SAAP,CAAiBU,cAAxC;;AAEA,SAASC,IAAT,CAAeC,EAAf,EAAmB;AACjB,SAAO,OAAOA,EAAP,KAAc,UAArB;AACD;;AAED,SAASC,KAAT,CAAgBtD,GAAhB,EAAqB;AACnB,SAAO,OAAOA,GAAP,KAAe,QAAtB;AACD;;AAED,SAASuD,aAAT,CAAwBC,GAAxB,EAA6B;AAC3B,SAAOP,SAAS,CAACQ,IAAV,CAAeD,GAAf,MAAwB,iBAA/B;AACD;;AAED,SAASE,MAAT,CAAiBF,GAAjB,EAAsBG,GAAtB,EAA2B;AACzB,SAAOR,cAAc,CAACM,IAAf,CAAoBD,GAApB,EAAyBG,GAAzB,CAAP;AACD;;AAED,SAASC,IAAT,GAAiB,CAAG;;AAEpB;;;AAGA,SAASC,MAAT,CAAiBR,EAAjB,EAAqB;AACnB,MAAMS,KAAK,GAAGZ,MAAM,CAACa,MAAP,CAAc,IAAd,CAAd;AACA,SAAO,SAASC,QAAT,CAAmBhE,GAAnB,EAAwB;AAC7B,QAAMiE,GAAG,GAAGH,KAAK,CAAC9D,GAAD,CAAjB;AACA,WAAOiE,GAAG,KAAKH,KAAK,CAAC9D,GAAD,CAAL,GAAaqD,EAAE,CAACrD,GAAD,CAApB,CAAV;AACD,GAHD;AAID;;AAED;;;AAGA,IAAMkE,UAAU,GAAG,QAAnB;AACA,IAAMC,QAAQ,GAAGN,MAAM,CAAC,UAAC7D,GAAD,EAAS;AAC/B,SAAOA,GAAG,CAACE,OAAJ,CAAYgE,UAAZ,EAAwB,UAACE,CAAD,EAAIjD,CAAJ,UAAUA,CAAC,GAAGA,CAAC,CAACkD,WAAF,EAAH,GAAqB,EAAhC,EAAxB,CAAP;AACD,CAFsB,CAAvB;;AAIA,SAASC,UAAT,CAAqBd,GAArB,EAA0B;AACxB,MAAMe,OAAO,GAAG,EAAhB;AACA,MAAIhB,aAAa,CAACC,GAAD,CAAjB,EAAwB;AACtBN,UAAM,CAACsB,IAAP,CAAYhB,GAAZ,EAAiBiB,IAAjB,GAAwBC,OAAxB,CAAgC,UAAAf,GAAG,EAAI;AACrCY,aAAO,CAACZ,GAAD,CAAP,GAAeH,GAAG,CAACG,GAAD,CAAlB;AACD,KAFD;AAGD;AACD,SAAO,CAACT,MAAM,CAACsB,IAAP,CAAYD,OAAZ,CAAD,GAAwBf,GAAxB,GAA8Be,OAArC;AACD;;AAED,IAAMI,KAAK,GAAG;AACZ,QADY;AAEZ,SAFY;AAGZ,MAHY;AAIZ,UAJY;AAKZ,aALY,CAAd;;;AAQA,IAAMC,kBAAkB,GAAG,EAA3B;AACA,IAAMC,kBAAkB,GAAG,EAA3B;;AAEA,SAASC,SAAT,CAAoBC,SAApB,EAA+BC,QAA/B,EAAyC;AACvC,MAAMC,GAAG,GAAGD,QAAQ;AAChBD,WAAS;AACPA,WAAS,CAACG,MAAV,CAAiBF,QAAjB,CADO;AAEPG,OAAK,CAACC,OAAN,CAAcJ,QAAd;AACEA,UADF,GACa,CAACA,QAAD,CAJC;AAKhBD,WALJ;AAMA,SAAOE,GAAG;AACNI,aAAW,CAACJ,GAAD,CADL;AAENA,KAFJ;AAGD;;AAED,SAASI,WAAT,CAAsBC,KAAtB,EAA6B;AAC3B,MAAML,GAAG,GAAG,EAAZ;AACA,OAAK,IAAItE,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAG2E,KAAK,CAAChF,MAA1B,EAAkCK,CAAC,EAAnC,EAAuC;AACrC,QAAIsE,GAAG,CAACrE,OAAJ,CAAY0E,KAAK,CAAC3E,CAAD,CAAjB,MAA0B,CAAC,CAA/B,EAAkC;AAChCsE,SAAG,CAACM,IAAJ,CAASD,KAAK,CAAC3E,CAAD,CAAd;AACD;AACF;AACD,SAAOsE,GAAP;AACD;;AAED,SAASO,UAAT,CAAqBF,KAArB,EAA4BG,IAA5B,EAAkC;AAChC,MAAMC,KAAK,GAAGJ,KAAK,CAAC1E,OAAN,CAAc6E,IAAd,CAAd;AACA,MAAIC,KAAK,KAAK,CAAC,CAAf,EAAkB;AAChBJ,SAAK,CAACK,MAAN,CAAaD,KAAb,EAAoB,CAApB;AACD;AACF;;AAED,SAASE,oBAAT,CAA+BC,WAA/B,EAA4CC,MAA5C,EAAoD;AAClD5C,QAAM,CAACsB,IAAP,CAAYsB,MAAZ,EAAoBpB,OAApB,CAA4B,UAAAe,IAAI,EAAI;AAClC,QAAId,KAAK,CAAC/D,OAAN,CAAc6E,IAAd,MAAwB,CAAC,CAAzB,IAA8BrC,IAAI,CAAC0C,MAAM,CAACL,IAAD,CAAP,CAAtC,EAAsD;AACpDI,iBAAW,CAACJ,IAAD,CAAX,GAAoBX,SAAS,CAACe,WAAW,CAACJ,IAAD,CAAZ,EAAoBK,MAAM,CAACL,IAAD,CAA1B,CAA7B;AACD;AACF,GAJD;AAKD;;AAED,SAASM,qBAAT,CAAgCF,WAAhC,EAA6CC,MAA7C,EAAqD;AACnD,MAAI,CAACD,WAAD,IAAgB,CAACC,MAArB,EAA6B;AAC3B;AACD;AACD5C,QAAM,CAACsB,IAAP,CAAYsB,MAAZ,EAAoBpB,OAApB,CAA4B,UAAAe,IAAI,EAAI;AAClC,QAAId,KAAK,CAAC/D,OAAN,CAAc6E,IAAd,MAAwB,CAAC,CAAzB,IAA8BrC,IAAI,CAAC0C,MAAM,CAACL,IAAD,CAAP,CAAtC,EAAsD;AACpDD,gBAAU,CAACK,WAAW,CAACJ,IAAD,CAAZ,EAAoBK,MAAM,CAACL,IAAD,CAA1B,CAAV;AACD;AACF,GAJD;AAKD;;AAED,SAASO,cAAT,CAAyBC,MAAzB,EAAiCH,MAAjC,EAAyC;AACvC,MAAI,OAAOG,MAAP,KAAkB,QAAlB,IAA8B1C,aAAa,CAACuC,MAAD,CAA/C,EAAyD;AACvDF,wBAAoB,CAACf,kBAAkB,CAACoB,MAAD,CAAlB,KAA+BpB,kBAAkB,CAACoB,MAAD,CAAlB,GAA6B,EAA5D,CAAD,EAAkEH,MAAlE,CAApB;AACD,GAFD,MAEO,IAAIvC,aAAa,CAAC0C,MAAD,CAAjB,EAA2B;AAChCL,wBAAoB,CAAChB,kBAAD,EAAqBqB,MAArB,CAApB;AACD;AACF;;AAED,SAASC,iBAAT,CAA4BD,MAA5B,EAAoCH,MAApC,EAA4C;AAC1C,MAAI,OAAOG,MAAP,KAAkB,QAAtB,EAAgC;AAC9B,QAAI1C,aAAa,CAACuC,MAAD,CAAjB,EAA2B;AACzBC,2BAAqB,CAAClB,kBAAkB,CAACoB,MAAD,CAAnB,EAA6BH,MAA7B,CAArB;AACD,KAFD,MAEO;AACL,aAAOjB,kBAAkB,CAACoB,MAAD,CAAzB;AACD;AACF,GAND,MAMO,IAAI1C,aAAa,CAAC0C,MAAD,CAAjB,EAA2B;AAChCF,yBAAqB,CAACnB,kBAAD,EAAqBqB,MAArB,CAArB;AACD;AACF;;AAED,SAASE,WAAT,CAAsBV,IAAtB,EAA4B;AAC1B,SAAO,UAAUW,IAAV,EAAgB;AACrB,WAAOX,IAAI,CAACW,IAAD,CAAJ,IAAcA,IAArB;AACD,GAFD;AAGD;;AAED,SAASC,SAAT,CAAoB7C,GAApB,EAAyB;AACvB,SAAO,CAAC,CAACA,GAAF,KAAU,OAAOA,GAAP,KAAe,QAAf,IAA2B,OAAOA,GAAP,KAAe,UAApD,KAAmE,OAAOA,GAAG,CAAC8C,IAAX,KAAoB,UAA9F;AACD;;AAED,SAASC,KAAT,CAAgBjB,KAAhB,EAAuBc,IAAvB,EAA6B;AAC3B,MAAII,OAAO,GAAG,KAAd;AACA,OAAK,IAAI7F,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAG2E,KAAK,CAAChF,MAA1B,EAAkCK,CAAC,EAAnC,EAAuC;AACrC,QAAM8E,IAAI,GAAGH,KAAK,CAAC3E,CAAD,CAAlB;AACA,QAAI6F,OAAJ,EAAa;AACXA,aAAO,GAAGC,OAAO,CAACC,OAAR,CAAgBP,WAAW,CAACV,IAAD,CAA3B,CAAV;AACD,KAFD,MAEO;AACL,UAAMR,GAAG,GAAGQ,IAAI,CAACW,IAAD,CAAhB;AACA,UAAIC,SAAS,CAACpB,GAAD,CAAb,EAAoB;AAClBuB,eAAO,GAAGC,OAAO,CAACC,OAAR,CAAgBzB,GAAhB,CAAV;AACD;AACD,UAAIA,GAAG,KAAK,KAAZ,EAAmB;AACjB,eAAO;AACLqB,cADK,kBACG,CAAG,CADN,EAAP;;AAGD;AACF;AACF;AACD,SAAOE,OAAO,IAAI;AAChBF,QADgB,gBACVK,QADU,EACA;AACd,aAAOA,QAAQ,CAACP,IAAD,CAAf;AACD,KAHe,EAAlB;;AAKD;;AAED,SAASQ,cAAT,CAAyBf,WAAzB,EAAoD,KAAdgB,OAAc,uEAAJ,EAAI;AAClD,GAAC,SAAD,EAAY,MAAZ,EAAoB,UAApB,EAAgCnC,OAAhC,CAAwC,UAAAoC,IAAI,EAAI;AAC9C,QAAI3B,KAAK,CAACC,OAAN,CAAcS,WAAW,CAACiB,IAAD,CAAzB,CAAJ,EAAsC;AACpC,UAAMC,WAAW,GAAGF,OAAO,CAACC,IAAD,CAA3B;AACAD,aAAO,CAACC,IAAD,CAAP,GAAgB,SAASE,mBAAT,CAA8B/B,GAA9B,EAAmC;AACjDsB,aAAK,CAACV,WAAW,CAACiB,IAAD,CAAZ,EAAoB7B,GAApB,CAAL,CAA8BqB,IAA9B,CAAmC,UAACrB,GAAD,EAAS;AAC1C;AACA,iBAAO7B,IAAI,CAAC2D,WAAD,CAAJ,IAAqBA,WAAW,CAAC9B,GAAD,CAAhC,IAAyCA,GAAhD;AACD,SAHD;AAID,OALD;AAMD;AACF,GAVD;AAWA,SAAO4B,OAAP;AACD;;AAED,SAASI,kBAAT,CAA6BhB,MAA7B,EAAqCiB,WAArC,EAAkD;AAChD,MAAMC,gBAAgB,GAAG,EAAzB;AACA,MAAIhC,KAAK,CAACC,OAAN,CAAcR,kBAAkB,CAACsC,WAAjC,CAAJ,EAAmD;AACjDC,oBAAgB,CAAC5B,IAAjB,OAAA4B,gBAAgB,qBAASvC,kBAAkB,CAACsC,WAA5B,EAAhB;AACD;AACD,MAAMrB,WAAW,GAAGhB,kBAAkB,CAACoB,MAAD,CAAtC;AACA,MAAIJ,WAAW,IAAIV,KAAK,CAACC,OAAN,CAAcS,WAAW,CAACqB,WAA1B,CAAnB,EAA2D;AACzDC,oBAAgB,CAAC5B,IAAjB,OAAA4B,gBAAgB,qBAAStB,WAAW,CAACqB,WAArB,EAAhB;AACD;AACDC,kBAAgB,CAACzC,OAAjB,CAAyB,UAAAe,IAAI,EAAI;AAC/ByB,eAAW,GAAGzB,IAAI,CAACyB,WAAD,CAAJ,IAAqBA,WAAnC;AACD,GAFD;AAGA,SAAOA,WAAP;AACD;;AAED,SAASE,sBAAT,CAAiCnB,MAAjC,EAAyC;AACvC,MAAMJ,WAAW,GAAG3C,MAAM,CAACa,MAAP,CAAc,IAAd,CAApB;AACAb,QAAM,CAACsB,IAAP,CAAYI,kBAAZ,EAAgCF,OAAhC,CAAwC,UAAAe,IAAI,EAAI;AAC9C,QAAIA,IAAI,KAAK,aAAb,EAA4B;AAC1BI,iBAAW,CAACJ,IAAD,CAAX,GAAoBb,kBAAkB,CAACa,IAAD,CAAlB,CAAyBpF,KAAzB,EAApB;AACD;AACF,GAJD;AAKA,MAAMgH,iBAAiB,GAAGxC,kBAAkB,CAACoB,MAAD,CAA5C;AACA,MAAIoB,iBAAJ,EAAuB;AACrBnE,UAAM,CAACsB,IAAP,CAAY6C,iBAAZ,EAA+B3C,OAA/B,CAAuC,UAAAe,IAAI,EAAI;AAC7C,UAAIA,IAAI,KAAK,aAAb,EAA4B;AAC1BI,mBAAW,CAACJ,IAAD,CAAX,GAAoB,CAACI,WAAW,CAACJ,IAAD,CAAX,IAAqB,EAAtB,EAA0BP,MAA1B,CAAiCmC,iBAAiB,CAAC5B,IAAD,CAAlD,CAApB;AACD;AACF,KAJD;AAKD;AACD,SAAOI,WAAP;AACD;;AAED,SAASyB,SAAT,CAAoBrB,MAApB,EAA4BsB,GAA5B,EAAiCV,OAAjC,EAAqD,mCAARW,MAAQ,uEAARA,MAAQ;AACnD,MAAM3B,WAAW,GAAGuB,sBAAsB,CAACnB,MAAD,CAA1C;AACA,MAAIJ,WAAW,IAAI3C,MAAM,CAACsB,IAAP,CAAYqB,WAAZ,EAAyBvF,MAA5C,EAAoD;AAClD,QAAI6E,KAAK,CAACC,OAAN,CAAcS,WAAW,CAAC4B,MAA1B,CAAJ,EAAuC;AACrC,UAAMxC,GAAG,GAAGsB,KAAK,CAACV,WAAW,CAAC4B,MAAb,EAAqBZ,OAArB,CAAjB;AACA,aAAO5B,GAAG,CAACqB,IAAJ,CAAS,UAACO,OAAD,EAAa;AAC3B,eAAOU,GAAG,MAAH,UAAIX,cAAc,CAACf,WAAD,EAAcgB,OAAd,CAAlB,SAA6CW,MAA7C,EAAP;AACD,OAFM,CAAP;AAGD,KALD,MAKO;AACL,aAAOD,GAAG,MAAH,UAAIX,cAAc,CAACf,WAAD,EAAcgB,OAAd,CAAlB,SAA6CW,MAA7C,EAAP;AACD;AACF;AACD,SAAOD,GAAG,MAAH,UAAIV,OAAJ,SAAgBW,MAAhB,EAAP;AACD;;AAED,IAAME,kBAAkB,GAAG;AACzBR,aADyB,uBACZjC,GADY,EACP;AAChB,QAAI,CAACoB,SAAS,CAACpB,GAAD,CAAd,EAAqB;AACnB,aAAOA,GAAP;AACD;AACD,WAAO,IAAIwB,OAAJ,CAAY,UAACC,OAAD,EAAUiB,MAAV,EAAqB;AACtC1C,SAAG,CAACqB,IAAJ,CAAS,UAAArB,GAAG,EAAI;AACd,YAAIA,GAAG,CAAC,CAAD,CAAP,EAAY;AACV0C,gBAAM,CAAC1C,GAAG,CAAC,CAAD,CAAJ,CAAN;AACD,SAFD,MAEO;AACLyB,iBAAO,CAACzB,GAAG,CAAC,CAAD,CAAJ,CAAP;AACD;AACF,OAND;AAOD,KARM,CAAP;AASD,GAdwB,EAA3B;;;AAiBA,IAAM2C,WAAW;AACf,gaADF;;AAGA,IAAMC,cAAc,GAAG,kBAAvB;;AAEA;AACA,IAAMC,kBAAkB,GAAG,CAAC,qBAAD,CAA3B;;AAEA;AACA,IAAMC,SAAS,GAAG,CAAC,qBAAD,EAAwB,mBAAxB,CAAlB;;AAEA,IAAMC,eAAe,GAAG,UAAxB;;AAEA,SAASC,YAAT,CAAuBnB,IAAvB,EAA6B;AAC3B,SAAOe,cAAc,CAAC1H,IAAf,CAAoB2G,IAApB,KAA6BgB,kBAAkB,CAAClH,OAAnB,CAA2BkG,IAA3B,MAAqC,CAAC,CAA1E;AACD;AACD,SAASoB,SAAT,CAAoBpB,IAApB,EAA0B;AACxB,SAAOc,WAAW,CAACzH,IAAZ,CAAiB2G,IAAjB,KAA0BiB,SAAS,CAACnH,OAAV,CAAkBkG,IAAlB,MAA4B,CAAC,CAA9D;AACD;;AAED,SAASqB,aAAT,CAAwBrB,IAAxB,EAA8B;AAC5B,SAAOkB,eAAe,CAAC7H,IAAhB,CAAqB2G,IAArB,KAA8BA,IAAI,KAAK,QAA9C;AACD;;AAED,SAASsB,aAAT,CAAwB5B,OAAxB,EAAiC;AAC/B,SAAOA,OAAO,CAACF,IAAR,CAAa,UAAAF,IAAI,EAAI;AAC1B,WAAO,CAAC,IAAD,EAAOA,IAAP,CAAP;AACD,GAFM;AAGJiC,OAHI,CAGE,UAAAC,GAAG,UAAI,CAACA,GAAD,CAAJ,EAHL,CAAP;AAID;;AAED,SAASC,aAAT,CAAwBzB,IAAxB,EAA8B;AAC5B;AACEmB,cAAY,CAACnB,IAAD,CAAZ;AACAoB,WAAS,CAACpB,IAAD,CADT;AAEAqB,eAAa,CAACrB,IAAD,CAHf;AAIE;AACA,WAAO,KAAP;AACD;AACD,SAAO,IAAP;AACD;;AAED;AACA,IAAI,CAACL,OAAO,CAAChE,SAAR,CAAkB+F,OAAvB,EAAgC;AAC9B/B,SAAO,CAAChE,SAAR,CAAkB+F,OAAlB,GAA4B,UAAU7B,QAAV,EAAoB;AAC9C,QAAMH,OAAO,GAAG,KAAKiC,WAArB;AACA,WAAO,KAAKnC,IAAL;AACL,cAAAoC,KAAK,UAAIlC,OAAO,CAACE,OAAR,CAAgBC,QAAQ,EAAxB,EAA4BL,IAA5B,CAAiC,oBAAMoC,KAAN,EAAjC,CAAJ,EADA;AAEL,cAAAC,MAAM,UAAInC,OAAO,CAACE,OAAR,CAAgBC,QAAQ,EAAxB,EAA4BL,IAA5B,CAAiC,YAAM;AAC/C,cAAMqC,MAAN;AACD,OAFS,CAAJ,EAFD,CAAP;;AAMD,GARD;AASD;;AAED,SAASC,SAAT,CAAoB9B,IAApB,EAA0BS,GAA1B,EAA+B;AAC7B,MAAI,CAACgB,aAAa,CAACzB,IAAD,CAAlB,EAA0B;AACxB,WAAOS,GAAP;AACD;AACD,SAAO,SAASsB,UAAT,GAA8C,KAAzBhC,OAAyB,uEAAf,EAAe,oCAARW,MAAQ,6EAARA,MAAQ;AACnD,QAAIpE,IAAI,CAACyD,OAAO,CAACiC,OAAT,CAAJ,IAAyB1F,IAAI,CAACyD,OAAO,CAACkC,IAAT,CAA7B,IAA+C3F,IAAI,CAACyD,OAAO,CAACmC,QAAT,CAAvD,EAA2E;AACzE,aAAO/B,kBAAkB,CAACH,IAAD,EAAOQ,SAAS,MAAT,UAAUR,IAAV,EAAgBS,GAAhB,EAAqBV,OAArB,SAAiCW,MAAjC,EAAP,CAAzB;AACD;AACD,WAAOP,kBAAkB,CAACH,IAAD,EAAOsB,aAAa,CAAC,IAAI3B,OAAJ,CAAY,UAACC,OAAD,EAAUiB,MAAV,EAAqB;AAC7EL,eAAS,MAAT,UAAUR,IAAV,EAAgBS,GAAhB,EAAqBrE,MAAM,CAAC+F,MAAP,CAAc,EAAd,EAAkBpC,OAAlB,EAA2B;AAC9CiC,eAAO,EAAEpC,OADqC;AAE9CqC,YAAI,EAAEpB,MAFwC,EAA3B,CAArB;AAGOH,YAHP;AAID,KAL6C,CAAD,CAApB,CAAzB;AAMD,GAVD;AAWD;;AAED,IAAM0B,GAAG,GAAG,IAAZ;AACA,IAAMC,iBAAiB,GAAG,GAA1B;AACA,IAAIC,KAAK,GAAG,KAAZ;AACA,IAAIC,WAAW,GAAG,CAAlB;AACA,IAAIC,SAAS,GAAG,CAAhB;;AAEA,SAASC,gBAAT,GAA6B;;;;;AAKvB9H,IAAE,CAAC+H,iBAAH,EALuB,CAEzBC,QAFyB,yBAEzBA,QAFyB,CAGzBC,UAHyB,yBAGzBA,UAHyB,CAIzBC,WAJyB,yBAIzBA,WAJyB,EAKC;;AAE5BN,aAAW,GAAGM,WAAd;AACAL,WAAS,GAAGI,UAAZ;AACAN,OAAK,GAAGK,QAAQ,KAAK,KAArB;AACD;;AAED,SAASG,MAAT,CAAiBC,MAAjB,EAAyBC,cAAzB,EAAyC;AACvC,MAAIT,WAAW,KAAK,CAApB,EAAuB;AACrBE,oBAAgB;AACjB;;AAEDM,QAAM,GAAGE,MAAM,CAACF,MAAD,CAAf;AACA,MAAIA,MAAM,KAAK,CAAf,EAAkB;AAChB,WAAO,CAAP;AACD;AACD,MAAIrJ,MAAM,GAAIqJ,MAAM,GAAGV,iBAAV,IAAgCW,cAAc,IAAIT,WAAlD,CAAb;AACA,MAAI7I,MAAM,GAAG,CAAb,EAAgB;AACdA,UAAM,GAAG,CAACA,MAAV;AACD;AACDA,QAAM,GAAGwJ,IAAI,CAACC,KAAL,CAAWzJ,MAAM,GAAG0I,GAApB,CAAT;AACA,MAAI1I,MAAM,KAAK,CAAf,EAAkB;AAChB,QAAI8I,SAAS,KAAK,CAAd,IAAmB,CAACF,KAAxB,EAA+B;AAC7B5I,YAAM,GAAG,CAAT;AACD,KAFD,MAEO;AACLA,YAAM,GAAG,GAAT;AACD;AACF;AACD,SAAOqJ,MAAM,GAAG,CAAT,GAAa,CAACrJ,MAAd,GAAuBA,MAA9B;AACD;;AAED,IAAM0J,cAAc,GAAG,SAAvB;AACA,IAAMC,cAAc,GAAG,SAAvB;AACA,IAAMC,SAAS,GAAG,IAAlB;AACA,IAAMC,SAAS,GAAG,IAAlB;AACA,IAAMC,SAAS,GAAG,IAAlB;;AAEA,IAAMC,QAAQ,GAAG,EAAjB;;AAEA,IAAIC,MAAJ;;AAEA;AACEA,QAAM,GAAGC,eAAe,CAAChJ,EAAE,CAAC+H,iBAAH,GAAuBkB,QAAxB,CAAf,IAAoDN,SAA7D;AACD;;AAED,SAASO,gBAAT,GAA6B;AAC3B,MAAI,CAACC,cAAc,EAAnB,EAAuB;AACrB;AACD;AACD,MAAMC,UAAU,GAAG3H,MAAM,CAACsB,IAAP,CAAYsG,WAAW,CAACC,OAAxB,CAAnB;AACA,MAAIF,UAAU,CAACvK,MAAf,EAAuB;AACrBuK,cAAU,CAACnG,OAAX,CAAmB,UAAC8F,MAAD,EAAY;AAC7B,UAAMQ,WAAW,GAAGT,QAAQ,CAACC,MAAD,CAA5B;AACA,UAAMS,YAAY,GAAGH,WAAW,CAACC,OAAZ,CAAoBP,MAApB,CAArB;AACA,UAAIQ,WAAJ,EAAiB;AACf9H,cAAM,CAAC+F,MAAP,CAAc+B,WAAd,EAA2BC,YAA3B;AACD,OAFD,MAEO;AACLV,gBAAQ,CAACC,MAAD,CAAR,GAAmBS,YAAnB;AACD;AACF,KARD;AASD;AACF;;AAEDN,gBAAgB;;AAEhB,IAAMO,IAAI,GAAG;AACXV,MADW;AAEV,EAFU,CAAb;;AAIA,IAAMW,CAAC,GAAGD,IAAI,CAACC,CAAf;AACA,IAAMC,SAAS,GAAIF,IAAI,CAACG,KAAL,GAAa;AAC9BC,cAD8B,0BACd;AACd,QAAMC,OAAO,GAAGL,IAAI,CAACA,IAAL,CAAUM,WAAV,CAAsB,YAAM;AAC1C,WAAI,CAACC,YAAL;AACD,KAFe,CAAhB;AAGA,SAAKC,KAAL,CAAW,oBAAX,EAAiC,YAAY;AAC3CH,aAAO;AACR,KAFD;AAGD,GAR6B;AAS9BI,SAAO,EAAE;AACPC,OADO,eACFjI,GADE,EACGkI,MADH,EACW;AAChB,aAAOV,CAAC,CAACxH,GAAD,EAAMkI,MAAN,CAAR;AACD,KAHM,EATqB,EAAhC;;;AAeA,IAAMC,SAAS,GAAGZ,IAAI,CAACY,SAAvB;AACA,IAAMC,SAAS,GAAGb,IAAI,CAACa,SAAvB;;AAEA,SAASC,aAAT,CAAwBxJ,GAAxB,EAA6ByJ,KAA7B,EAAoCzB,MAApC,EAA4C;AAC1C,MAAM0B,KAAK,GAAG1J,GAAG,CAAC2J,UAAJ,CAAe;AAC3B3B,UAAM,EAAEA,MAAM,IAAIU,IAAI,CAACa,SAAL,EADS,EAAf,CAAd;;AAGA,MAAMK,cAAc,GAAG,EAAvB;AACAH,OAAK,CAACI,YAAN,GAAqB,UAAAhJ,EAAE,EAAI;AACzB+I,kBAAc,CAAC7G,IAAf,CAAoBlC,EAApB;AACD,GAFD;AAGAH,QAAM,CAACoJ,cAAP,CAAsBL,KAAtB,EAA6B,SAA7B,EAAwC;AACtCM,OADsC,iBAC/B;AACL,aAAOL,KAAK,CAAC1B,MAAb;AACD,KAHqC;AAItCgC,OAJsC,eAIjCC,CAJiC,EAI9B;AACNP,WAAK,CAAC1B,MAAN,GAAeiC,CAAf;AACAL,oBAAc,CAAC1H,OAAf,CAAuB,UAAAgI,KAAK,UAAIA,KAAK,CAACD,CAAD,CAAT,EAA5B;AACD,KAPqC,EAAxC;;AASD;;AAED,SAAS7B,cAAT,GAA2B;AACzB,SAAO,OAAOE,WAAP,KAAuB,WAAvB,IAAsCA,WAAW,CAACC,OAAlD,IAA6D,CAAC,CAAC7H,MAAM,CAACsB,IAAP,CAAYsG,WAAW,CAACC,OAAxB,EAAiCzK,MAAvG;AACD;;AAED,SAASqM,OAAT,CAAkB3M,GAAlB,EAAuB4M,KAAvB,EAA8B;AAC5B,SAAO,CAAC,CAACA,KAAK,CAACC,IAAN,CAAW,UAACC,IAAD,UAAU9M,GAAG,CAACY,OAAJ,CAAYkM,IAAZ,MAAsB,CAAC,CAAjC,EAAX,CAAT;AACD;;AAED,SAASC,UAAT,CAAqB/M,GAArB,EAA0B4M,KAA1B,EAAiC;AAC/B,SAAOA,KAAK,CAACC,IAAN,CAAW,UAACC,IAAD,UAAU9M,GAAG,CAACY,OAAJ,CAAYkM,IAAZ,MAAsB,CAAhC,EAAX,CAAP;AACD;;AAED,SAASrC,eAAT,CAA0BD,MAA1B,EAAkCD,QAAlC,EAA4C;AAC1C,MAAI,CAACC,MAAL,EAAa;AACX;AACD;AACDA,QAAM,GAAGA,MAAM,CAACwC,IAAP,GAAc9M,OAAd,CAAsB,IAAtB,EAA4B,GAA5B,CAAT;AACA,MAAIqK,QAAQ,IAAIA,QAAQ,CAACC,MAAD,CAAxB,EAAkC;AAChC,WAAOA,MAAP;AACD;AACDA,QAAM,GAAGA,MAAM,CAACyC,WAAP,EAAT;AACA,MAAIzC,MAAM,KAAK,SAAf,EAA0B;AACxB;AACA,WAAON,cAAP;AACD;AACD,MAAIM,MAAM,CAAC5J,OAAP,CAAe,IAAf,MAAyB,CAA7B,EAAgC;AAC9B,QAAI4J,MAAM,CAAC5J,OAAP,CAAe,OAAf,IAA0B,CAAC,CAA/B,EAAkC;AAChC,aAAOsJ,cAAP;AACD;AACD,QAAIM,MAAM,CAAC5J,OAAP,CAAe,OAAf,IAA0B,CAAC,CAA/B,EAAkC;AAChC,aAAOuJ,cAAP;AACD;AACD,QAAIwC,OAAO,CAACnC,MAAD,EAAS,CAAC,KAAD,EAAQ,KAAR,EAAe,KAAf,EAAsB,MAAtB,CAAT,CAAX,EAAoD;AAClD,aAAOL,cAAP;AACD;AACD,WAAOD,cAAP;AACD;AACD,MAAMgD,IAAI,GAAGH,UAAU,CAACvC,MAAD,EAAS,CAACJ,SAAD,EAAYC,SAAZ,EAAuBC,SAAvB,CAAT,CAAvB;AACA,MAAI4C,IAAJ,EAAU;AACR,WAAOA,IAAP;AACD;AACF;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASC,WAAT,GAAwB;AACtB;AACA,MAAMC,GAAG,GAAGC,MAAM,CAAC;AACjBC,gBAAY,EAAE,IADG,EAAD,CAAlB;;AAGA,MAAIF,GAAG,IAAIA,GAAG,CAACG,GAAf,EAAoB;AAClB,WAAOH,GAAG,CAACG,GAAJ,CAAQC,OAAf;AACD;AACD,SAAO/C,eAAe,CAAChJ,EAAE,CAAC+H,iBAAH,GAAuBkB,QAAxB,CAAf,IAAoDN,SAA3D;AACD;;AAED,SAASqD,WAAT,CAAsBjD,MAAtB,EAA8B;AAC5B,MAAM4C,GAAG,GAAGC,MAAM,EAAlB;AACA,MAAI,CAACD,GAAL,EAAU;AACR,WAAO,KAAP;AACD;AACD,MAAMM,SAAS,GAAGN,GAAG,CAACG,GAAJ,CAAQC,OAA1B;AACA,MAAIE,SAAS,KAAKlD,MAAlB,EAA0B;AACxB4C,OAAG,CAACG,GAAJ,CAAQC,OAAR,GAAkBhD,MAAlB;AACAmD,2BAAuB,CAACjJ,OAAxB,CAAgC,UAACrB,EAAD,UAAQA,EAAE,CAAC;AACzCmH,cAAM,EAANA,MADyC,EAAD,CAAV,EAAhC;;AAGA,WAAO,IAAP;AACD;AACD,SAAO,KAAP;AACD;;AAED,IAAMmD,uBAAuB,GAAG,EAAhC;AACA,SAASC,cAAT,CAAyBvK,EAAzB,EAA6B;AAC3B,MAAIsK,uBAAuB,CAAC/M,OAAxB,CAAgCyC,EAAhC,MAAwC,CAAC,CAA7C,EAAgD;AAC9CsK,2BAAuB,CAACpI,IAAxB,CAA6BlC,EAA7B;AACD;AACF;;AAED,IAAI,OAAOwK,MAAP,KAAkB,WAAtB,EAAmC;AACjCA,QAAM,CAAC9B,SAAP,GAAmBoB,WAAnB;AACD;;AAED,IAAMW,YAAY,GAAG;AACnBpG,oBAAkB,EAAlBA,kBADmB,EAArB;;;AAIA,IAAIqG,OAAO,GAAG,aAAa7K,MAAM,CAAC8K,MAAP,CAAc;AACvCC,WAAS,EAAE,IAD4B;AAEvCrE,QAAM,EAAEA,MAF+B;AAGvCmC,WAAS,EAAEoB,WAH4B;AAIvCrB,WAAS,EAAE2B,WAJ4B;AAKvCG,gBAAc,EAAEA,cALuB;AAMvC5H,gBAAc,EAAEA,cANuB;AAOvCE,mBAAiB,EAAEA,iBAPoB;AAQvC4H,cAAY,EAAEA,YARyB,EAAd,CAA3B;;;AAWA,SAASI,mBAAT,CAA8BC,GAA9B,EAAmC;AACjC,MAAMC,KAAK,GAAGC,eAAe,EAA7B;AACA,MAAIC,GAAG,GAAGF,KAAK,CAAC9N,MAAhB;AACA,SAAOgO,GAAG,EAAV,EAAc;AACZ,QAAMC,IAAI,GAAGH,KAAK,CAACE,GAAD,CAAlB;AACA,QAAIC,IAAI,CAACC,KAAL,IAAcD,IAAI,CAACC,KAAL,CAAWC,QAAX,KAAwBN,GAA1C,EAA+C;AAC7C,aAAOG,GAAP;AACD;AACF;AACD,SAAO,CAAC,CAAR;AACD;;AAED,IAAII,UAAU,GAAG;AACf5H,MADe,gBACT6H,QADS,EACC;AACd,QAAIA,QAAQ,CAACC,MAAT,KAAoB,MAApB,IAA8BD,QAAQ,CAACE,KAA3C,EAAkD;AAChD,aAAO,cAAP;AACD;AACD,WAAO,YAAP;AACD,GANc;AAOfC,MAPe,gBAOTH,QAPS,EAOC;AACd,QAAIA,QAAQ,CAACC,MAAT,KAAoB,MAApB,IAA8BD,QAAQ,CAACR,GAA3C,EAAgD;AAC9C,UAAMY,eAAe,GAAGb,mBAAmB,CAACS,QAAQ,CAACR,GAAV,CAA3C;AACA,UAAIY,eAAe,KAAK,CAAC,CAAzB,EAA4B;AAC1B,YAAMF,KAAK,GAAGR,eAAe,GAAG/N,MAAlB,GAA2B,CAA3B,GAA+ByO,eAA7C;AACA,YAAIF,KAAK,GAAG,CAAZ,EAAe;AACbF,kBAAQ,CAACE,KAAT,GAAiBA,KAAjB;AACD;AACF;AACF;AACF,GAjBc,EAAjB;;;AAoBA,IAAIG,YAAY,GAAG;AACjBF,MADiB,gBACXH,QADW,EACD;AACd,QAAIM,YAAY,GAAGC,QAAQ,CAACP,QAAQ,CAACQ,OAAV,CAA3B;AACA,QAAIC,KAAK,CAACH,YAAD,CAAT,EAAyB;AACvB;AACD;AACD,QAAMI,IAAI,GAAGV,QAAQ,CAACU,IAAtB;AACA,QAAI,CAAClK,KAAK,CAACC,OAAN,CAAciK,IAAd,CAAL,EAA0B;AACxB;AACD;AACD,QAAMf,GAAG,GAAGe,IAAI,CAAC/O,MAAjB;AACA,QAAI,CAACgO,GAAL,EAAU;AACR;AACD;AACD,QAAIW,YAAY,GAAG,CAAnB,EAAsB;AACpBA,kBAAY,GAAG,CAAf;AACD,KAFD,MAEO,IAAIA,YAAY,IAAIX,GAApB,EAAyB;AAC9BW,kBAAY,GAAGX,GAAG,GAAG,CAArB;AACD;AACD,QAAIW,YAAY,GAAG,CAAnB,EAAsB;AACpBN,cAAQ,CAACQ,OAAT,GAAmBE,IAAI,CAACJ,YAAD,CAAvB;AACAN,cAAQ,CAACU,IAAT,GAAgBA,IAAI,CAACC,MAAL;AACd,gBAACC,IAAD,EAAO7J,KAAP,UAAiBA,KAAK,GAAGuJ,YAAR,GAAuBM,IAAI,KAAKF,IAAI,CAACJ,YAAD,CAApC,GAAqD,IAAtE,EADc,CAAhB;;AAGD,KALD,MAKO;AACLN,cAAQ,CAACQ,OAAT,GAAmBE,IAAI,CAAC,CAAD,CAAvB;AACD;AACD,WAAO;AACLG,eAAS,EAAE,KADN;AAELC,UAAI,EAAE,KAFD,EAAP;;AAID,GA/BgB,EAAnB;;;AAkCA,IAAMC,QAAQ,GAAG,gBAAjB;AACA,IAAIC,QAAJ;AACA,SAASC,WAAT,CAAsBpP,MAAtB,EAA8B;AAC5BmP,UAAQ,GAAGA,QAAQ,IAAIlO,EAAE,CAACC,cAAH,CAAkBgO,QAAlB,CAAvB;AACA,MAAI,CAACC,QAAL,EAAe;AACbA,YAAQ,GAAG5M,IAAI,CAACC,GAAL,KAAa,EAAb,GAAkBgH,IAAI,CAACC,KAAL,CAAWD,IAAI,CAAC6F,MAAL,KAAgB,GAA3B,CAA7B;AACApO,MAAE,CAACqO,UAAH,CAAc;AACZnM,SAAG,EAAE+L,QADO;AAEZtJ,UAAI,EAAEuJ,QAFM,EAAd;;AAID;AACDnP,QAAM,CAACmP,QAAP,GAAkBA,QAAlB;AACD;;AAED,SAASI,iBAAT,CAA4BvP,MAA5B,EAAoC;AAClC,MAAIA,MAAM,CAACwP,QAAX,EAAqB;AACnB,QAAMA,QAAQ,GAAGxP,MAAM,CAACwP,QAAxB;AACAxP,UAAM,CAACyP,cAAP,GAAwB;AACtBC,SAAG,EAAEF,QAAQ,CAACE,GADQ;AAEtBC,UAAI,EAAEH,QAAQ,CAACG,IAFO;AAGtBC,WAAK,EAAE5P,MAAM,CAACmJ,WAAP,GAAqBqG,QAAQ,CAACI,KAHf;AAItBC,YAAM,EAAE7P,MAAM,CAAC8P,YAAP,GAAsBN,QAAQ,CAACK,MAJjB,EAAxB;;AAMD;AACF;;AAED,SAASE,kBAAT,CAA6B/P,MAA7B,EAAqC;;;;;;AAM/BA,QAN+B,CAEjCgQ,KAFiC,CAEjCA,KAFiC,8BAEzB,EAFyB,iCAM/BhQ,MAN+B,CAErBiQ,KAFqB,CAErBA,KAFqB,8BAEb,EAFa,kCAM/BjQ,MAN+B,CAETkQ,MAFS,CAETA,MAFS,+BAEA,EAFA,qCAM/BlQ,MAN+B,CAGjCkK,QAHiC,CAGjCA,QAHiC,iCAGtB,EAHsB,oBAGlBiG,KAHkB,GAM/BnQ,MAN+B,CAGlBmQ,KAHkB,CAGXC,OAHW,GAM/BpQ,MAN+B,CAGXoQ,OAHW,CAIjCnH,QAJiC,GAM/BjJ,MAN+B,CAIjCiJ,QAJiC,CAIvBoH,eAJuB,GAM/BrQ,MAN+B,CAIvBqQ,eAJuB,CAKjCC,UALiC,GAM/BtQ,MAN+B,CAKjCsQ,UALiC,CAKrBpH,UALqB,GAM/BlJ,MAN+B,CAKrBkJ,UALqB,CAKTqH,iBALS,GAM/BvQ,MAN+B,CAKTuQ,iBALS;AAOnC;;AAEA;AACA,MAAIC,MAAM,GAAG,EAAb;AACA,MAAIC,SAAS,GAAG,EAAhB;AACA;AACED,UAAM,GAAGN,MAAM,CAACzP,KAAP,CAAa,GAAb,EAAkB,CAAlB,KAAwB,EAAjC;AACAgQ,aAAS,GAAGP,MAAM,CAACzP,KAAP,CAAa,GAAb,EAAkB,CAAlB,KAAwB,EAApC;AACD;AACD,MAAIiQ,WAAW,GAAGN,OAAlB;;AAEA;AACA,MAAMO,UAAU,GAAGC,gBAAgB,CAAC5Q,MAAD,EAASiQ,KAAT,CAAnC;;AAEA;AACA,MAAMY,WAAW,GAAGC,cAAc,CAACd,KAAD,CAAlC;;AAEA;AACA,MAAMe,SAAS,GAAGC,WAAW,CAAChR,MAAD,CAA7B;;AAEA;AACA,MAAIiR,kBAAkB,GAAGV,iBAAzB,CA5BmC,CA4BS;;AAE5C;AACA,MAAIW,iBAAiB,GAAGhI,UAAxB;;AAEA;AACA,MAAIiI,WAAW,GAAGb,UAAlB;;AAEA;AACA,MAAMc,YAAY,GAAGlH,QAAQ,CAACxK,OAAT,CAAiB,IAAjB,EAAuB,GAAvB,CAArB;;AAEA;;AAEA,MAAM2R,UAAU,GAAG;AACjBC,SAAK,EAAEC,gBADU;AAEjBC,WAAO,EAAED,6BAFQ;AAGjBE,cAAU,EAAEF,OAHK;AAIjBG,kBAAc,EAAEH,KAJC;AAKjBI,eAAW,EAAEC,cAAc,CAACR,YAAD,CALV;AAMjBS,qBAAiB,EAAEN,OANF;AAOjBO,qBAAiB,EAAEP,OAPF;AAQjBQ,eAAW,EAAER,SAAA,IAAgCA,WAR5B;AASjBV,eAAW,EAAXA,WATiB;AAUjBmB,eAAW,EAAE/B,KAVI;AAWjBU,cAAU,EAAVA,UAXiB;AAYjBsB,oBAAgB,EAAEf,iBAZD;AAajBX,qBAAiB,EAAEU,kBAbF;AAcjBT,UAAM,EAAEA,MAAM,CAAC0B,iBAAP,EAdS;AAejBzB,aAAS,EAATA,SAfiB;AAgBjB0B,aAAS,EAAEhC,KAhBM;AAiBjBO,eAAW,EAAXA,WAjBiB;AAkBjBU,gBAAY,EAAZA,YAlBiB;AAmBjBgB,YAAQ,EAAErB,SAnBO;AAoBjBsB,kBAAc,EAAElB,WApBC;AAqBjBmB,uBAAmB,EAAEjC,eArBJ;AAsBjBkC,aAAS,EAAE,CAtBM;AAuBjBC,gBAAY,EAAE,CAvBG;AAwBjB;AACAC,cAAU,EAAEC,SAzBK;AA0BjBC,WAAO,EAAED,SA1BQ;AA2BjBE,MAAE,EAAEF,SA3Ba;AA4BjBG,mBAAe,EAAEH,SA5BA;AA6BjBI,eAAW,EAAEJ,SA7BI;AA8BjBK,kBAAc,EAAEL,SA9BC,EAAnB;;;AAiCAhQ,QAAM,CAAC+F,MAAP,CAAczI,MAAd,EAAsBqR,UAAtB;AACD;;AAED,SAAST,gBAAT,CAA2B5Q,MAA3B,EAAmCiQ,KAAnC,EAA0C;AACxC,MAAIU,UAAU,GAAG3Q,MAAM,CAAC2Q,UAAP,IAAqB,OAAtC;AACA;AACE,QAAMqC,cAAc,GAAG;AACrBC,UAAI,EAAE,KADe;AAErBC,aAAO,EAAE,IAFY;AAGrBC,SAAG,EAAE,IAHgB,EAAvB;;AAKA,QAAMC,kBAAkB,GAAG1Q,MAAM,CAACsB,IAAP,CAAYgP,cAAZ,CAA3B;AACA,QAAMK,MAAM,GAAGpD,KAAK,CAACiC,iBAAN,EAAf;AACA,SAAK,IAAIhN,KAAK,GAAG,CAAjB,EAAoBA,KAAK,GAAGkO,kBAAkB,CAACtT,MAA/C,EAAuDoF,KAAK,EAA5D,EAAgE;AAC9D,UAAMoO,EAAE,GAAGF,kBAAkB,CAAClO,KAAD,CAA7B;AACA,UAAImO,MAAM,CAACjT,OAAP,CAAekT,EAAf,MAAuB,CAAC,CAA5B,EAA+B;AAC7B3C,kBAAU,GAAGqC,cAAc,CAACM,EAAD,CAA3B;AACA;AACD;AACF;AACF;AACD,SAAO3C,UAAP;AACD;;AAED,SAASG,cAAT,CAAyBd,KAAzB,EAAgC;AAC9B,MAAIa,WAAW,GAAGb,KAAlB;AACA,MAAIa,WAAJ,EAAiB;AACfA,eAAW,GAAGb,KAAK,CAACkC,iBAAN,EAAd;AACD;AACD,SAAOrB,WAAP;AACD;;AAED,SAASe,cAAT,CAAyB2B,eAAzB,EAA0C;AACxC,SAAO5G,WAAW;AACdA,aAAW,EADG;AAEd4G,iBAFJ;AAGD;;AAED,SAASvC,WAAT,CAAsBhR,MAAtB,EAA8B;AAC5B,MAAMwT,SAAS,GAAI,QAAnB;AACA,MAAIzC,SAAS,GAAG/Q,MAAM,CAACoS,QAAP,IAAmBoB,SAAnC,CAF4B,CAEkB;AAC9C;AACE,QAAIxT,MAAM,CAACyT,WAAX,EAAwB;AACtB1C,eAAS,GAAG/Q,MAAM,CAACyT,WAAnB;AACD,KAFD,MAEO,IAAIzT,MAAM,CAAC0T,IAAP,IAAe1T,MAAM,CAAC0T,IAAP,CAAYC,GAA/B,EAAoC;AACzC5C,eAAS,GAAG/Q,MAAM,CAAC0T,IAAP,CAAYC,GAAxB;AACD;AACF;;AAED,SAAO5C,SAAP;AACD;;AAED,IAAI6C,aAAa,GAAG;AAClBlN,aAAW,EAAE,qBAAU1G,MAAV,EAAkB;AAC7BoP,eAAW,CAACpP,MAAD,CAAX;AACAuP,qBAAiB,CAACvP,MAAD,CAAjB;AACA+P,sBAAkB,CAAC/P,MAAD,CAAlB;AACD,GALiB,EAApB;;;AAQA,IAAI6T,eAAe,GAAG;AACpBvF,MADoB,gBACdH,QADc,EACJ;AACd,QAAI,OAAOA,QAAP,KAAoB,QAAxB,EAAkC;AAChCA,cAAQ,CAAC2F,SAAT,GAAqB3F,QAAQ,CAAC4F,KAA9B;AACD;AACF,GALmB,EAAtB;;;AAQA,IAAIC,cAAc,GAAG;AACnBtN,aAAW,EAAE,qBAAU1G,MAAV,EAAkB;AACoBA,UADpB,CACrBoQ,OADqB,WACrBA,OADqB,CACZlG,QADY,WACZA,QADY,CACFoG,UADE,WACFA,UADE,CACUH,KADV,WACUA,KADV;;AAG7B,QAAMY,SAAS,GAAGC,WAAW,CAAChR,MAAD,CAA7B;;AAEA,QAAMoR,YAAY,GAAGlH,QAAQ,CAACxK,OAAT,CAAiB,GAAjB,EAAsB,GAAtB,CAArB;;AAEAM,UAAM,GAAG8D,UAAU,CAACpB,MAAM,CAAC+F,MAAP,CAAczI,MAAd,EAAsB;AACxCsR,WAAK,EAAEC,gBADiC;AAExCC,aAAO,EAAED,6BAF+B;AAGxCE,gBAAU,EAAEF,OAH4B;AAIxCG,oBAAc,EAAEH,KAJwB;AAKxCI,iBAAW,EAAEC,cAAc,CAACR,YAAD,CALa;AAMxCV,iBAAW,EAAEN,OAN2B;AAOxCgB,kBAAY,EAAZA,YAPwC;AAQxCgB,cAAQ,EAAErB,SAR8B;AASxCsB,oBAAc,EAAE/B,UATwB;AAUxC6B,eAAS,EAAEhC,KAV6B,EAAtB,CAAD,CAAnB;;AAYD,GApBkB,EAArB;;;AAuBA,IAAI8D,aAAa,GAAG;AAClBvN,aAAW,EAAE,qBAAU1G,MAAV,EAAkB;AACJA,UADI,CACrBgQ,KADqB,YACrBA,KADqB,CACdC,KADc,YACdA,KADc;AAE7B,QAAMU,UAAU,GAAGC,gBAAgB,CAAC5Q,MAAD,EAASiQ,KAAT,CAAnC;AACA,QAAMY,WAAW,GAAGC,cAAc,CAACd,KAAD,CAAlC;AACAZ,eAAW,CAACpP,MAAD,CAAX;;AAEAA,UAAM,GAAG8D,UAAU,CAACpB,MAAM,CAAC+F,MAAP,CAAczI,MAAd,EAAsB;AACxC2Q,gBAAU,EAAVA,UADwC;AAExCE,iBAAW,EAAXA,WAFwC;AAGxCmB,iBAAW,EAAE/B,KAH2B,EAAtB,CAAD,CAAnB;;AAKD,GAZiB,EAApB;;;AAeA,IAAIiE,aAAa,GAAG;AAClBxN,aAAW,EAAE,qBAAU1G,MAAV,EAAkB;AAC7BuP,qBAAiB,CAACvP,MAAD,CAAjB;;AAEAA,UAAM,GAAG8D,UAAU,CAACpB,MAAM,CAAC+F,MAAP,CAAczI,MAAd,EAAsB;AACxCuS,eAAS,EAAE,CAD6B;AAExCC,kBAAY,EAAE,CAF0B,EAAtB,CAAD,CAAnB;;AAID,GARiB,EAApB;;;AAWA,IAAI2B,sBAAsB,GAAG;AAC3BzN,aAAW,EAAE,qBAAU1G,MAAV,EAAkB;AACrBoU,2BADqB,GACOpU,MADP,CACrBoU,uBADqB;;AAG7BpU,UAAM,CAACqU,gBAAP,GAA0B,aAA1B;AACA,QAAID,uBAAuB,KAAK,IAAhC,EAAsC;AACpCpU,YAAM,CAACqU,gBAAP,GAA0B,SAA1B;AACD,KAFD,MAEO,IAAID,uBAAuB,KAAK,KAAhC,EAAuC;AAC5CpU,YAAM,CAACqU,gBAAP,GAA0B,MAA1B;AACD;AACF,GAV0B,EAA7B;;;AAaA;;AAEA,IAAMC,SAAS,GAAG;AAChBpG,YAAU,EAAVA,UADgB;AAEhB;AACAM,cAAY,EAAZA,YAHgB;AAIhBoF,eAAa,EAAbA,aAJgB;AAKhB5K,mBAAiB,EAAE4K,aALH;AAMhBC,iBAAe,EAAfA,eANgB;AAOhBG,gBAAc,EAAdA,cAPgB;AAQhBC,eAAa,EAAbA,aARgB;AAShBC,eAAa,EAAbA,aATgB;AAUhBC,wBAAsB,EAAtBA,sBAVgB,EAAlB;;AAYA,IAAMI,KAAK,GAAG;AACZ,SADY;AAEZ,aAFY;AAGZ,eAHY;AAIZ,gBAJY,CAAd;;AAMA,IAAMC,QAAQ,GAAG,EAAjB;;AAEA,IAAMC,SAAS,GAAG,CAAC,SAAD,EAAY,MAAZ,EAAoB,QAApB,EAA8B,UAA9B,CAAlB;;AAEA,SAASC,eAAT,CAA0BC,UAA1B,EAAsClP,MAAtC,EAA8CiB,WAA9C,EAA2D;AACzD,SAAO,UAAUjC,GAAV,EAAe;AACpB,WAAOgB,MAAM,CAACmP,kBAAkB,CAACD,UAAD,EAAalQ,GAAb,EAAkBiC,WAAlB,CAAnB,CAAb;AACD,GAFD;AAGD;;AAED,SAASmO,WAAT,CAAsBF,UAAtB,EAAkCxG,QAAlC,EAAqG,KAAzD2G,UAAyD,uEAA5C,EAA4C,KAAxCpO,WAAwC,uEAA1B,EAA0B,KAAtBqO,YAAsB,uEAAP,KAAO;AACnG,MAAIhS,aAAa,CAACoL,QAAD,CAAjB,EAA6B,CAAE;AAC7B,QAAM6G,MAAM,GAAGD,YAAY,KAAK,IAAjB,GAAwB5G,QAAxB,GAAmC,EAAlD,CAD2B,CAC2B;AACtD,QAAIvL,IAAI,CAACkS,UAAD,CAAR,EAAsB;AACpBA,gBAAU,GAAGA,UAAU,CAAC3G,QAAD,EAAW6G,MAAX,CAAV,IAAgC,EAA7C;AACD;AACD,SAAK,IAAM7R,GAAX,IAAkBgL,QAAlB,EAA4B;AAC1B,UAAIjL,MAAM,CAAC4R,UAAD,EAAa3R,GAAb,CAAV,EAA6B;AAC3B,YAAI8R,SAAS,GAAGH,UAAU,CAAC3R,GAAD,CAA1B;AACA,YAAIP,IAAI,CAACqS,SAAD,CAAR,EAAqB;AACnBA,mBAAS,GAAGA,SAAS,CAAC9G,QAAQ,CAAChL,GAAD,CAAT,EAAgBgL,QAAhB,EAA0B6G,MAA1B,CAArB;AACD;AACD,YAAI,CAACC,SAAL,EAAgB,CAAE;AAChBC,iBAAO,CAACC,IAAR,gBAAqBR,UAArB,4FAAwFxR,GAAxF;AACD,SAFD,MAEO,IAAIL,KAAK,CAACmS,SAAD,CAAT,EAAsB,CAAE;AAC7BD,gBAAM,CAACC,SAAD,CAAN,GAAoB9G,QAAQ,CAAChL,GAAD,CAA5B;AACD,SAFM,MAEA,IAAIJ,aAAa,CAACkS,SAAD,CAAjB,EAA8B,CAAE;AACrCD,gBAAM,CAACC,SAAS,CAAC3O,IAAV,GAAiB2O,SAAS,CAAC3O,IAA3B,GAAkCnD,GAAnC,CAAN,GAAgD8R,SAAS,CAAC/M,KAA1D;AACD;AACF,OAZD,MAYO,IAAIuM,SAAS,CAACrU,OAAV,CAAkB+C,GAAlB,MAA2B,CAAC,CAAhC,EAAmC;AACxC,YAAIP,IAAI,CAACuL,QAAQ,CAAChL,GAAD,CAAT,CAAR,EAAyB;AACvB6R,gBAAM,CAAC7R,GAAD,CAAN,GAAcuR,eAAe,CAACC,UAAD,EAAaxG,QAAQ,CAAChL,GAAD,CAArB,EAA4BuD,WAA5B,CAA7B;AACD;AACF,OAJM,MAIA;AACL,YAAI,CAACqO,YAAL,EAAmB;AACjBC,gBAAM,CAAC7R,GAAD,CAAN,GAAcgL,QAAQ,CAAChL,GAAD,CAAtB;AACD;AACF;AACF;AACD,WAAO6R,MAAP;AACD,GA7BD,MA6BO,IAAIpS,IAAI,CAACuL,QAAD,CAAR,EAAoB;AACzBA,YAAQ,GAAGuG,eAAe,CAACC,UAAD,EAAaxG,QAAb,EAAuBzH,WAAvB,CAA1B;AACD;AACD,SAAOyH,QAAP;AACD;;AAED,SAASyG,kBAAT,CAA6BD,UAA7B,EAAyClQ,GAAzC,EAA8CiC,WAA9C,EAAoF,KAAzB0O,eAAyB,uEAAP,KAAO;AAClF,MAAIxS,IAAI,CAAC0R,SAAS,CAAC5N,WAAX,CAAR,EAAiC,CAAE;AACjCjC,OAAG,GAAG6P,SAAS,CAAC5N,WAAV,CAAsBiO,UAAtB,EAAkClQ,GAAlC,CAAN;AACD;AACD,SAAOoQ,WAAW,CAACF,UAAD,EAAalQ,GAAb,EAAkBiC,WAAlB,EAA+B,EAA/B,EAAmC0O,eAAnC,CAAlB;AACD;;AAED,SAASC,OAAT,CAAkBV,UAAlB,EAA8BlP,MAA9B,EAAsC;AACpC,MAAIvC,MAAM,CAACoR,SAAD,EAAYK,UAAZ,CAAV,EAAmC;AACjC,QAAMW,QAAQ,GAAGhB,SAAS,CAACK,UAAD,CAA1B;AACA,QAAI,CAACW,QAAL,EAAe,CAAE;AACf,aAAO,YAAY;AACjBJ,eAAO,CAACvT,KAAR,uEAAoDgT,UAApD;AACD,OAFD;AAGD;AACD,WAAO,UAAUY,IAAV,EAAgBC,IAAhB,EAAsB,CAAE;AAC7B,UAAInP,OAAO,GAAGiP,QAAd;AACA,UAAI1S,IAAI,CAAC0S,QAAD,CAAR,EAAoB;AAClBjP,eAAO,GAAGiP,QAAQ,CAACC,IAAD,CAAlB;AACD;;AAEDA,UAAI,GAAGV,WAAW,CAACF,UAAD,EAAaY,IAAb,EAAmBlP,OAAO,CAACiI,IAA3B,EAAiCjI,OAAO,CAACK,WAAzC,CAAlB;;AAEA,UAAM4H,IAAI,GAAG,CAACiH,IAAD,CAAb;AACA,UAAI,OAAOC,IAAP,KAAgB,WAApB,EAAiC;AAC/BlH,YAAI,CAACvJ,IAAL,CAAUyQ,IAAV;AACD;AACD,UAAI5S,IAAI,CAACyD,OAAO,CAACC,IAAT,CAAR,EAAwB;AACtBqO,kBAAU,GAAGtO,OAAO,CAACC,IAAR,CAAaiP,IAAb,CAAb;AACD,OAFD,MAEO,IAAIzS,KAAK,CAACuD,OAAO,CAACC,IAAT,CAAT,EAAyB;AAC9BqO,kBAAU,GAAGtO,OAAO,CAACC,IAArB;AACD;AACD,UAAMI,WAAW,GAAGzF,EAAE,CAAC0T,UAAD,CAAF,CAAec,KAAf,CAAqBxU,EAArB,EAAyBqN,IAAzB,CAApB;AACA,UAAI5G,SAAS,CAACiN,UAAD,CAAb,EAA2B,CAAE;AAC3B,eAAOC,kBAAkB,CAACD,UAAD,EAAajO,WAAb,EAA0BL,OAAO,CAACK,WAAlC,EAA+Ce,YAAY,CAACkN,UAAD,CAA3D,CAAzB;AACD;AACD,aAAOjO,WAAP;AACD,KAtBD;AAuBD;AACD,SAAOjB,MAAP;AACD;;AAED,IAAMiQ,QAAQ,GAAGhT,MAAM,CAACa,MAAP,CAAc,IAAd,CAAjB;;AAEA,IAAMoS,KAAK,GAAG;AACZ,sBADY;AAEZ,eAFY;AAGZ,iBAHY;AAIZ,QAJY;AAKZ,SALY;AAMZ,OANY,CAAd;;;AASA,SAASC,aAAT,CAAwBtP,IAAxB,EAA8B;AAC5B,SAAO,SAASuP,OAAT;;;AAGJ,OAFDtN,IAEC,QAFDA,IAEC,CADDC,QACC,QADDA,QACC;AACD,QAAM/D,GAAG,GAAG;AACVqR,YAAM,YAAKxP,IAAL,2BAA0BA,IAA1B,oBADI,EAAZ;;AAGA1D,QAAI,CAAC2F,IAAD,CAAJ,IAAcA,IAAI,CAAC9D,GAAD,CAAlB;AACA7B,QAAI,CAAC4F,QAAD,CAAJ,IAAkBA,QAAQ,CAAC/D,GAAD,CAA1B;AACD,GATD;AAUD;;AAEDkR,KAAK,CAACzR,OAAN,CAAc,UAAUoC,IAAV,EAAgB;AAC5BoP,UAAQ,CAACpP,IAAD,CAAR,GAAiBsP,aAAa,CAACtP,IAAD,CAA9B;AACD,CAFD;;AAIA,IAAIyP,SAAS,GAAG;AACdC,OAAK,EAAE,CAAC,QAAD,CADO;AAEdC,OAAK,EAAE,CAAC,QAAD,CAFO;AAGdC,SAAO,EAAE,CAAC,OAAD,CAHK;AAIdnR,MAAI,EAAE,CAAC,QAAD,CAJQ,EAAhB;;;AAOA,SAASoR,WAAT;;;;;AAKG,KAJDC,OAIC,SAJDA,OAIC,CAHD9N,OAGC,SAHDA,OAGC,CAFDC,IAEC,SAFDA,IAEC,CADDC,QACC,SADDA,QACC;AACD,MAAI/D,GAAG,GAAG,KAAV;AACA,MAAIsR,SAAS,CAACK,OAAD,CAAb,EAAwB;AACtB3R,OAAG,GAAG;AACJqR,YAAM,EAAE,gBADJ;AAEJM,aAAO,EAAPA,OAFI;AAGJC,cAAQ,EAAEN,SAAS,CAACK,OAAD,CAHf,EAAN;;AAKAxT,QAAI,CAAC0F,OAAD,CAAJ,IAAiBA,OAAO,CAAC7D,GAAD,CAAxB;AACD,GAPD,MAOO;AACLA,OAAG,GAAG;AACJqR,YAAM,EAAE,oCADJ,EAAN;;AAGAlT,QAAI,CAAC2F,IAAD,CAAJ,IAAcA,IAAI,CAAC9D,GAAD,CAAlB;AACD;AACD7B,MAAI,CAAC4F,QAAD,CAAJ,IAAkBA,QAAQ,CAAC/D,GAAD,CAA1B;AACD;;AAED,IAAI6R,QAAQ,GAAG,aAAa5T,MAAM,CAAC8K,MAAP,CAAc;AACxCC,WAAS,EAAE,IAD6B;AAExC0I,aAAW,EAAEA,WAF2B,EAAd,CAA5B;;;AAKA,IAAMI,UAAU,GAAI,YAAY;AAC9B,MAAIC,OAAJ;AACA,SAAO,SAASC,aAAT,GAA0B;AAC/B,QAAI,CAACD,OAAL,EAAc;AACZA,aAAO,GAAG,IAAIxU,YAAJ,EAAV;AACD;AACD,WAAOwU,OAAP;AACD,GALD;AAMD,CARkB,EAAnB;;AAUA,SAASf,KAAT,CAAgBiB,GAAhB,EAAqBjR,MAArB,EAA6B6I,IAA7B,EAAmC;AACjC,SAAOoI,GAAG,CAACjR,MAAD,CAAH,CAAYgQ,KAAZ,CAAkBiB,GAAlB,EAAuBpI,IAAvB,CAAP;AACD;;AAED,SAASqI,GAAT,GAAgB;AACd,SAAOlB,KAAK,CAACc,UAAU,EAAX,EAAe,KAAf,6BAA0BK,SAA1B,EAAZ;AACD;AACD,SAASC,IAAT,GAAiB;AACf,SAAOpB,KAAK,CAACc,UAAU,EAAX,EAAe,MAAf,6BAA2BK,SAA3B,EAAZ;AACD;AACD,SAAS1L,KAAT,GAAkB;AAChB,SAAOuK,KAAK,CAACc,UAAU,EAAX,EAAe,OAAf,6BAA4BK,SAA5B,EAAZ;AACD;AACD,SAASE,KAAT,GAAkB;AAChB,SAAOrB,KAAK,CAACc,UAAU,EAAX,EAAe,OAAf,6BAA4BK,SAA5B,EAAZ;AACD;;AAED,IAAIG,QAAQ,GAAG,aAAarU,MAAM,CAAC8K,MAAP,CAAc;AACxCC,WAAS,EAAE,IAD6B;AAExCkJ,KAAG,EAAEA,GAFmC;AAGxCE,MAAI,EAAEA,IAHkC;AAIxC3L,OAAK,EAAEA,KAJiC;AAKxC4L,OAAK,EAAEA,KALiC,EAAd,CAA5B;;;AAQA;;;AAGA;;;AAGA,SAASE,QAAT,CAAmBnU,EAAnB,EAAuB;AACrB,SAAO,YAAY;AACjB,QAAI;AACF,aAAOA,EAAE,CAAC4S,KAAH,CAAS5S,EAAT,EAAa+T,SAAb,CAAP;AACD,KAFD,CAEE,OAAOK,CAAP,EAAU;AACV;AACA/B,aAAO,CAACvT,KAAR,CAAcsV,CAAd;AACD;AACF,GAPD;AAQD;;AAED,SAASC,eAAT,CAA0BlQ,MAA1B,EAAkC;AAChC,MAAMmQ,YAAY,GAAG,EAArB;AACA,OAAK,IAAM7Q,IAAX,IAAmBU,MAAnB,EAA2B;AACzB,QAAMoQ,KAAK,GAAGpQ,MAAM,CAACV,IAAD,CAApB;AACA,QAAI1D,IAAI,CAACwU,KAAD,CAAR,EAAiB;AACfD,kBAAY,CAAC7Q,IAAD,CAAZ,GAAqB0Q,QAAQ,CAACI,KAAD,CAA7B;AACA,aAAOpQ,MAAM,CAACV,IAAD,CAAb;AACD;AACF;AACD,SAAO6Q,YAAP;AACD;;AAED,IAAIE,GAAJ;AACA,IAAIC,SAAJ;AACA,IAAIC,OAAJ;;AAEA,SAASC,oBAAT,CAA+B5V,OAA/B,EAAwC;AACtC,MAAI;AACF,WAAOH,IAAI,CAACC,KAAL,CAAWE,OAAX,CAAP;AACD,GAFD,CAEE,OAAOqV,CAAP,EAAU,CAAE;AACd,SAAOrV,OAAP;AACD;;AAED,SAAS6V,kBAAT;AACEnJ,IADF;AAEE;AACA,MAAIA,IAAI,CAACoJ,IAAL,KAAc,SAAlB,EAA6B;AAC3BH,WAAO,GAAG,IAAV;AACD,GAFD,MAEO,IAAIjJ,IAAI,CAACoJ,IAAL,KAAc,UAAlB,EAA8B;AACnCL,OAAG,GAAG/I,IAAI,CAAC+I,GAAX;AACAC,aAAS,GAAGhJ,IAAI,CAACwH,MAAjB;AACA6B,6BAAyB,CAACN,GAAD,EAAM/I,IAAI,CAACwH,MAAX,CAAzB;AACD,GAJM,MAIA,IAAIxH,IAAI,CAACoJ,IAAL,KAAc,SAAlB,EAA6B;AAClC,QAAM9V,OAAO,GAAG;AACd8V,UAAI,EAAE,SADQ;AAEd9R,UAAI,EAAE4R,oBAAoB,CAAClJ,IAAI,CAAC1M,OAAN,CAFZ,EAAhB;;AAIA,SAAK,IAAIzB,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGyX,sBAAsB,CAAC9X,MAA3C,EAAmDK,CAAC,EAApD,EAAwD;AACtD,UAAMgG,QAAQ,GAAGyR,sBAAsB,CAACzX,CAAD,CAAvC;AACAgG,cAAQ,CAACvE,OAAD,CAAR;AACA;AACA,UAAIA,OAAO,CAACiW,OAAZ,EAAqB;AACnB;AACD;AACF;AACF,GAbM,MAaA,IAAIvJ,IAAI,CAACoJ,IAAL,KAAc,OAAlB,EAA2B;AAChCE,0BAAsB,CAAC1T,OAAvB,CAA+B,UAACiC,QAAD,EAAc;AAC3CA,cAAQ,CAAC;AACPuR,YAAI,EAAE,OADC;AAEP9R,YAAI,EAAE4R,oBAAoB,CAAClJ,IAAI,CAAC1M,OAAN,CAFnB,EAAD,CAAR;;AAID,KALD;AAMD;AACF;;AAED,IAAMkW,mBAAmB,GAAG,EAA5B;;AAEA,SAASH,yBAAT,CAAoCN,GAApC,EAAyCvB,MAAzC,EAAiD;AAC/CgC,qBAAmB,CAAC5T,OAApB,CAA4B,UAACiC,QAAD,EAAc;AACxCA,YAAQ,CAACkR,GAAD,EAAMvB,MAAN,CAAR;AACD,GAFD;AAGAgC,qBAAmB,CAAChY,MAApB,GAA6B,CAA7B;AACD;;AAED,SAASiY,eAAT,CAA0BzJ,IAA1B,EAAgC;AAC9B,MAAI,CAACvL,aAAa,CAACuL,IAAD,CAAlB,EAA0B;AACxBA,QAAI,GAAG,EAAP;AACD,GAH6B;;;;;AAQ1B4I,iBAAe,CAAC5I,IAAD,CARW,CAK5BhG,OAL4B,oBAK5BA,OAL4B,CAM5BC,IAN4B,oBAM5BA,IAN4B,CAO5BC,QAP4B,oBAO5BA,QAP4B;AAS9B,MAAMwP,UAAU,GAAGpV,IAAI,CAAC0F,OAAD,CAAvB;AACA,MAAM2P,OAAO,GAAGrV,IAAI,CAAC2F,IAAD,CAApB;AACA,MAAM2P,WAAW,GAAGtV,IAAI,CAAC4F,QAAD,CAAxB;;AAEAvC,SAAO,CAACC,OAAR,GAAkBJ,IAAlB,CAAuB,YAAM;AAC3B,QAAI,OAAOyR,OAAP,KAAmB,WAAvB,EAAoC;AAClCA,aAAO,GAAG,KAAV;AACAF,SAAG,GAAG,EAAN;AACAC,eAAS,GAAG,wBAAZ;AACD;AACDQ,uBAAmB,CAAC/S,IAApB,CAAyB,UAACsS,GAAD,EAAMvB,MAAN,EAAiB;AACxC,UAAIrR,GAAJ;AACA,UAAI4S,GAAJ,EAAS;AACP5S,WAAG,GAAG;AACJqR,gBAAM,EAAE,oBADJ;AAEJuB,aAAG,EAAHA,GAFI,EAAN;;AAIAW,kBAAU,IAAI1P,OAAO,CAAC7D,GAAD,CAArB;AACD,OAND,MAMO;AACLA,WAAG,GAAG;AACJqR,gBAAM,EAAE,0BAA0BA,MAAM,GAAG,MAAMA,MAAT,GAAkB,EAAlD,CADJ,EAAN;;AAGAmC,eAAO,IAAI1P,IAAI,CAAC9D,GAAD,CAAf;AACD;AACDyT,iBAAW,IAAI1P,QAAQ,CAAC/D,GAAD,CAAvB;AACD,KAfD;AAgBA,QAAI,OAAO4S,GAAP,KAAe,WAAnB,EAAgC;AAC9BM,+BAAyB,CAACN,GAAD,EAAMC,SAAN,CAAzB;AACD;AACF,GAzBD;AA0BD;;AAED,IAAMM,sBAAsB,GAAG,EAA/B;AACA;AACA,IAAMO,aAAa,GAAG,SAAhBA,aAAgB,CAACtV,EAAD,EAAQ;AAC5B,MAAI+U,sBAAsB,CAACxX,OAAvB,CAA+ByC,EAA/B,MAAuC,CAAC,CAA5C,EAA+C;AAC7C+U,0BAAsB,CAAC7S,IAAvB,CAA4BlC,EAA5B;AACD;AACF,CAJD;;AAMA,IAAMuV,cAAc,GAAG,SAAjBA,cAAiB,CAACvV,EAAD,EAAQ;AAC7B,MAAI,CAACA,EAAL,EAAS;AACP+U,0BAAsB,CAAC9X,MAAvB,GAAgC,CAAhC;AACD,GAFD,MAEO;AACL,QAAMoF,KAAK,GAAG0S,sBAAsB,CAACxX,OAAvB,CAA+ByC,EAA/B,CAAd;AACA,QAAIqC,KAAK,GAAG,CAAC,CAAb,EAAgB;AACd0S,4BAAsB,CAACzS,MAAvB,CAA8BD,KAA9B,EAAqC,CAArC;AACD;AACF;AACF,CATD;;AAWA,IAAI6B,GAAG,GAAG,aAAarE,MAAM,CAAC8K,MAAP,CAAc;AACnCC,WAAS,EAAE,IADwB;AAEnCsK,iBAAe,EAAEA,eAFkB;AAGnCI,eAAa,EAAEA,aAHoB;AAInCC,gBAAc,EAAEA,cAJmB;AAKnCX,oBAAkB,EAAEA,kBALe,EAAd,CAAvB;;;AAQA,IAAMY,MAAM,GAAGC,IAAf;AACA,IAAMC,WAAW,GAAGC,SAApB;;AAEA,IAAMC,WAAW,GAAG,IAApB;;AAEA,IAAMC,SAAS,GAAGrV,MAAM,CAAC,UAAC7D,GAAD,EAAS;AAChC,SAAOmE,QAAQ,CAACnE,GAAG,CAACE,OAAJ,CAAY+Y,WAAZ,EAAyB,GAAzB,CAAD,CAAf;AACD,CAFuB,CAAxB;;AAIA,SAASE,gBAAT,CAA2BC,UAA3B,EAAuC;AACrC,MAAMC,eAAe,GAAGD,UAAU,CAACE,YAAnC;AACA,MAAMC,eAAe,GAAG,SAAlBA,eAAkB,CAAUC,KAAV,EAA0B,oCAAN1K,IAAM,6EAANA,IAAM;AAChD;AACA,QAAI,KAAKvB,GAAL,IAAa,KAAKkM,OAAL,IAAgB,KAAKA,OAAL,CAAaC,OAA9C,EAAwD;AACtDF,WAAK,GAAGN,SAAS,CAACM,KAAD,CAAjB;AACD,KAFD,MAEO;AACL;AACA,UAAMG,QAAQ,GAAGT,SAAS,CAACM,KAAD,CAA1B;AACA,UAAIG,QAAQ,KAAKH,KAAjB,EAAwB;AACtBH,uBAAe,CAACpD,KAAhB,CAAsB,IAAtB,GAA6B0D,QAA7B,SAA0C7K,IAA1C;AACD;AACF;AACD,WAAOuK,eAAe,CAACpD,KAAhB,CAAsB,IAAtB,GAA6BuD,KAA7B,SAAuC1K,IAAvC,EAAP;AACD,GAZD;AAaA,MAAI;AACF;AACAsK,cAAU,CAACE,YAAX,GAA0BC,eAA1B;AACD,GAHD,CAGE,OAAOpX,KAAP,EAAc;AACdiX,cAAU,CAACQ,aAAX,GAA2BL,eAA3B;AACD;AACF;;AAED,SAASM,QAAT,CAAmB/S,IAAnB,EAAyBD,OAAzB,EAAkCiT,WAAlC,EAA+C;AAC7C,MAAMC,OAAO,GAAGlT,OAAO,CAACC,IAAD,CAAvB;AACA,MAAI,CAACiT,OAAL,EAAc;AACZlT,WAAO,CAACC,IAAD,CAAP,GAAgB,YAAY;AAC1BqS,sBAAgB,CAAC,IAAD,CAAhB;AACD,KAFD;AAGD,GAJD,MAIO;AACLtS,WAAO,CAACC,IAAD,CAAP,GAAgB,YAAmB;AACjCqS,sBAAgB,CAAC,IAAD,CAAhB,CADiC,mCAANrK,IAAM,yDAANA,IAAM;AAEjC,aAAOiL,OAAO,CAAC9D,KAAR,CAAc,IAAd,EAAoBnH,IAApB,CAAP;AACD,KAHD;AAID;AACF;AACD,IAAI,CAAC+J,MAAM,CAACmB,YAAZ,EAA0B;AACxBnB,QAAM,CAACmB,YAAP,GAAsB,IAAtB;AACAlB,MAAI,GAAG,gBAAwB,KAAdjS,OAAc,uEAAJ,EAAI;AAC7BgT,YAAQ,CAAC,QAAD,EAAWhT,OAAX,CAAR;AACA,WAAOgS,MAAM,CAAChS,OAAD,CAAb;AACD,GAHD;AAIAiS,MAAI,CAACmB,KAAL,GAAapB,MAAM,CAACoB,KAApB;;AAEAjB,WAAS,GAAG,qBAAwB,KAAdnS,OAAc,uEAAJ,EAAI;AAClCgT,YAAQ,CAAC,SAAD,EAAYhT,OAAZ,CAAR;AACA,WAAOkS,WAAW,CAAClS,OAAD,CAAlB;AACD,GAHD;AAID;;AAED,IAAMqT,gBAAgB,GAAG;AACvB,mBADuB;AAEvB,eAFuB;AAGvB,kBAHuB;AAIvB,iBAJuB;AAKvB,mBALuB;AAMvB,cANuB;AAOvB,UAPuB;AAQvB,cARuB,CAAzB;;;AAWA,SAASC,SAAT,CAAoBC,EAApB,EAAwBC,KAAxB,EAA+B;AAC7B,MAAMjB,UAAU,GAAGgB,EAAE,CAACE,GAAH,CAAOF,EAAE,CAACG,MAAV,CAAnB;AACAF,OAAK,CAAC3V,OAAN,CAAc,UAAA8V,IAAI,EAAI;AACpB,QAAI9W,MAAM,CAAC0V,UAAD,EAAaoB,IAAb,CAAV,EAA8B;AAC5BJ,QAAE,CAACI,IAAD,CAAF,GAAWpB,UAAU,CAACoB,IAAD,CAArB;AACD;AACF,GAJD;AAKD;;AAED,SAASC,OAAT,CAAkBhV,IAAlB,EAAwBiV,UAAxB,EAAoC;AAClC,MAAI,CAACA,UAAL,EAAiB;AACf,WAAO,IAAP;AACD;;AAED,MAAIlY,aAAIqE,OAAJ,IAAe1B,KAAK,CAACC,OAAN,CAAc5C,aAAIqE,OAAJ,CAAYpB,IAAZ,CAAd,CAAnB,EAAqD;AACnD,WAAO,IAAP;AACD;;AAEDiV,YAAU,GAAGA,UAAU,CAACC,OAAX,IAAsBD,UAAnC;;AAEA,MAAItX,IAAI,CAACsX,UAAD,CAAR,EAAsB;AACpB,QAAItX,IAAI,CAACsX,UAAU,CAACE,aAAX,CAAyBnV,IAAzB,CAAD,CAAR,EAA0C;AACxC,aAAO,IAAP;AACD;AACD,QAAIiV,UAAU,CAACG,KAAX;AACFH,cAAU,CAACG,KAAX,CAAiBhU,OADf;AAEF1B,SAAK,CAACC,OAAN,CAAcsV,UAAU,CAACG,KAAX,CAAiBhU,OAAjB,CAAyBpB,IAAzB,CAAd,CAFF,EAEiD;AAC/C,aAAO,IAAP;AACD;AACD,WAAO,KAAP;AACD;;AAED,MAAIrC,IAAI,CAACsX,UAAU,CAACjV,IAAD,CAAX,CAAR,EAA4B;AAC1B,WAAO,IAAP;AACD;AACD,MAAMqV,MAAM,GAAGJ,UAAU,CAACI,MAA1B;AACA,MAAI3V,KAAK,CAACC,OAAN,CAAc0V,MAAd,CAAJ,EAA2B;AACzB,WAAO,CAAC,CAACA,MAAM,CAACjO,IAAP,CAAY,UAAAxB,KAAK,UAAIoP,OAAO,CAAChV,IAAD,EAAO4F,KAAP,CAAX,EAAjB,CAAT;AACD;AACF;;AAED,SAAS0P,SAAT,CAAoBC,SAApB,EAA+B1V,KAA/B,EAAsCoV,UAAtC,EAAkD;AAChDpV,OAAK,CAACZ,OAAN,CAAc,UAAAe,IAAI,EAAI;AACpB,QAAIgV,OAAO,CAAChV,IAAD,EAAOiV,UAAP,CAAX,EAA+B;AAC7BM,eAAS,CAACvV,IAAD,CAAT,GAAkB,UAAUqJ,IAAV,EAAgB;AAChC,eAAO,KAAKvB,GAAL,IAAY,KAAKA,GAAL,CAAS0N,WAAT,CAAqBxV,IAArB,EAA2BqJ,IAA3B,CAAnB;AACD,OAFD;AAGD;AACF,GAND;AAOD;;AAED,SAASoM,gBAAT,CAA2BF,SAA3B,EAAsCN,UAAtC,EAAiE,KAAfS,QAAe,uEAAJ,EAAI;AAC/DC,WAAS,CAACV,UAAD,CAAT,CAAsBhW,OAAtB,CAA8B,UAACe,IAAD,UAAU4V,UAAU,CAACL,SAAD,EAAYvV,IAAZ,EAAkB0V,QAAlB,CAApB,EAA9B;AACD;;AAED,SAASC,SAAT,CAAoBV,UAApB,EAA4C,KAAZpV,KAAY,uEAAJ,EAAI;AAC1C,MAAIoV,UAAJ,EAAgB;AACdxX,UAAM,CAACsB,IAAP,CAAYkW,UAAZ,EAAwBhW,OAAxB,CAAgC,UAACoC,IAAD,EAAU;AACxC,UAAIA,IAAI,CAAClG,OAAL,CAAa,IAAb,MAAuB,CAAvB,IAA4BwC,IAAI,CAACsX,UAAU,CAAC5T,IAAD,CAAX,CAApC,EAAwD;AACtDxB,aAAK,CAACC,IAAN,CAAWuB,IAAX;AACD;AACF,KAJD;AAKD;AACD,SAAOxB,KAAP;AACD;;AAED,SAAS+V,UAAT,CAAqBL,SAArB,EAAgCvV,IAAhC,EAAsC0V,QAAtC,EAAgD;AAC9C,MAAIA,QAAQ,CAACva,OAAT,CAAiB6E,IAAjB,MAA2B,CAAC,CAA5B,IAAiC,CAAC/B,MAAM,CAACsX,SAAD,EAAYvV,IAAZ,CAA5C,EAA+D;AAC7DuV,aAAS,CAACvV,IAAD,CAAT,GAAkB,UAAUqJ,IAAV,EAAgB;AAChC,aAAO,KAAKvB,GAAL,IAAY,KAAKA,GAAL,CAAS0N,WAAT,CAAqBxV,IAArB,EAA2BqJ,IAA3B,CAAnB;AACD,KAFD;AAGD;AACF;;AAED,SAASwM,gBAAT,CAA2B9Y,GAA3B,EAAgCkY,UAAhC,EAA4C;AAC1CA,YAAU,GAAGA,UAAU,CAACC,OAAX,IAAsBD,UAAnC;AACA,MAAIa,YAAJ;AACA,MAAInY,IAAI,CAACsX,UAAD,CAAR,EAAsB;AACpBa,gBAAY,GAAGb,UAAf;AACD,GAFD,MAEO;AACLa,gBAAY,GAAG/Y,GAAG,CAACgZ,MAAJ,CAAWd,UAAX,CAAf;AACD;AACDA,YAAU,GAAGa,YAAY,CAAC1U,OAA1B;AACA,SAAO,CAAC0U,YAAD,EAAeb,UAAf,CAAP;AACD;;AAED,SAASe,SAAT,CAAoBrB,EAApB,EAAwBsB,QAAxB,EAAkC;AAChC,MAAIvW,KAAK,CAACC,OAAN,CAAcsW,QAAd,KAA2BA,QAAQ,CAACpb,MAAxC,EAAgD;AAC9C,QAAMqb,MAAM,GAAGzY,MAAM,CAACa,MAAP,CAAc,IAAd,CAAf;AACA2X,YAAQ,CAAChX,OAAT,CAAiB,UAAAkX,QAAQ,EAAI;AAC3BD,YAAM,CAACC,QAAD,CAAN,GAAmB,IAAnB;AACD,KAFD;AAGAxB,MAAE,CAACyB,YAAH,GAAkBzB,EAAE,CAACuB,MAAH,GAAYA,MAA9B;AACD;AACF;;AAED,SAASG,UAAT,CAAqBC,MAArB,EAA6B3C,UAA7B,EAAyC;AACvC2C,QAAM,GAAG,CAACA,MAAM,IAAI,EAAX,EAAe9a,KAAf,CAAqB,GAArB,CAAT;AACA,MAAMqN,GAAG,GAAGyN,MAAM,CAACzb,MAAnB;;AAEA,MAAIgO,GAAG,KAAK,CAAZ,EAAe;AACb8K,cAAU,CAAC4C,OAAX,GAAqBD,MAAM,CAAC,CAAD,CAA3B;AACD,GAFD,MAEO,IAAIzN,GAAG,KAAK,CAAZ,EAAe;AACpB8K,cAAU,CAAC4C,OAAX,GAAqBD,MAAM,CAAC,CAAD,CAA3B;AACA3C,cAAU,CAAC6C,QAAX,GAAsBF,MAAM,CAAC,CAAD,CAA5B;AACD;AACF;;AAED,SAASG,QAAT,CAAmBxB,UAAnB,EAA+ByB,OAA/B,EAAwC;AACtC,MAAI/V,IAAI,GAAGsU,UAAU,CAACtU,IAAX,IAAmB,EAA9B;AACA,MAAMuF,OAAO,GAAG+O,UAAU,CAAC/O,OAAX,IAAsB,EAAtC;;AAEA,MAAI,OAAOvF,IAAP,KAAgB,UAApB,EAAgC;AAC9B,QAAI;AACFA,UAAI,GAAGA,IAAI,CAAC3C,IAAL,CAAU0Y,OAAV,CAAP,CADE,CACyB;AAC5B,KAFD,CAEE,OAAO1E,CAAP,EAAU;AACV,UAAI1F,6HAAA,CAAYqK,aAAhB,EAA+B;AAC7B1G,eAAO,CAACC,IAAR,CAAa,wEAAb,EAAuFvP,IAAvF;AACD;AACF;AACF,GARD,MAQO;AACL,QAAI;AACF;AACAA,UAAI,GAAGnE,IAAI,CAACC,KAAL,CAAWD,IAAI,CAACoa,SAAL,CAAejW,IAAf,CAAX,CAAP;AACD,KAHD,CAGE,OAAOqR,CAAP,EAAU,CAAG;AAChB;;AAED,MAAI,CAAClU,aAAa,CAAC6C,IAAD,CAAlB,EAA0B;AACxBA,QAAI,GAAG,EAAP;AACD;;AAEDlD,QAAM,CAACsB,IAAP,CAAYmH,OAAZ,EAAqBjH,OAArB,CAA6B,UAAAyQ,UAAU,EAAI;AACzC,QAAIgH,OAAO,CAACG,mBAAR,CAA4B1b,OAA5B,CAAoCuU,UAApC,MAAoD,CAAC,CAArD,IAA0D,CAACzR,MAAM,CAAC0C,IAAD,EAAO+O,UAAP,CAArE,EAAyF;AACvF/O,UAAI,CAAC+O,UAAD,CAAJ,GAAmBxJ,OAAO,CAACwJ,UAAD,CAA1B;AACD;AACF,GAJD;;AAMA,SAAO/O,IAAP;AACD;;AAED,IAAMmW,UAAU,GAAG,CAACtc,MAAD,EAAS8J,MAAT,EAAiByS,OAAjB,EAA0BtZ,MAA1B,EAAkCiC,KAAlC,EAAyC,IAAzC,CAAnB;;AAEA,SAASsX,cAAT,CAAyB3V,IAAzB,EAA+B;AAC7B,SAAO,SAAS4V,QAAT,CAAmBC,MAAnB,EAA2BC,MAA3B,EAAmC;AACxC,QAAI,KAAKrP,GAAT,EAAc;AACZ,WAAKA,GAAL,CAASzG,IAAT,IAAiB6V,MAAjB,CADY,CACa;AAC1B;AACF,GAJD;AAKD;;AAED,SAASE,aAAT,CAAwBnC,UAAxB,EAAoCoC,YAApC,EAAkD;AAChD,MAAMC,YAAY,GAAGrC,UAAU,CAACsC,SAAhC;AACA,MAAMC,UAAU,GAAGvC,UAAU,CAACwC,OAA9B;AACA,MAAMC,SAAS,GAAGzC,UAAU,CAACI,MAA7B;;AAEA,MAAIsC,QAAQ,GAAG1C,UAAU,CAAC2C,KAA1B;;AAEA,MAAI,CAACD,QAAL,EAAe;AACb1C,cAAU,CAAC2C,KAAX,GAAmBD,QAAQ,GAAG,EAA9B;AACD;;AAED,MAAMJ,SAAS,GAAG,EAAlB;AACA,MAAI7X,KAAK,CAACC,OAAN,CAAc2X,YAAd,CAAJ,EAAiC;AAC/BA,gBAAY,CAACrY,OAAb,CAAqB,UAAA4Y,QAAQ,EAAI;AAC/BN,eAAS,CAACzX,IAAV,CAAe+X,QAAQ,CAACpd,OAAT,CAAiB,QAAjB,EAA8B,IAA9B,eAAf;AACA,UAAIod,QAAQ,KAAK,kBAAjB,EAAqC;AACnC,YAAInY,KAAK,CAACC,OAAN,CAAcgY,QAAd,CAAJ,EAA6B;AAC3BA,kBAAQ,CAAC7X,IAAT,CAAc,MAAd;AACA6X,kBAAQ,CAAC7X,IAAT,CAAc,OAAd;AACD,SAHD,MAGO;AACL6X,kBAAQ,CAACtW,IAAT,GAAgB;AACdoR,gBAAI,EAAEjY,MADQ;AAEd0a,mBAAO,EAAE,EAFK,EAAhB;;AAIAyC,kBAAQ,CAAC1U,KAAT,GAAiB;AACfwP,gBAAI,EAAE,CAACjY,MAAD,EAAS8J,MAAT,EAAiByS,OAAjB,EAA0BrX,KAA1B,EAAiCjC,MAAjC,EAAyCH,IAAzC,CADS;AAEf4X,mBAAO,EAAE,EAFM,EAAjB;;AAID;AACF;AACF,KAjBD;AAkBD;AACD,MAAIpX,aAAa,CAAC0Z,UAAD,CAAb,IAA6BA,UAAU,CAACI,KAA5C,EAAmD;AACjDL,aAAS,CAACzX,IAAV;AACEuX,gBAAY,CAAC;AACXS,gBAAU,EAAEC,cAAc,CAACP,UAAU,CAACI,KAAZ,EAAmB,IAAnB,CADf,EAAD,CADd;;;AAKD;AACD,MAAIlY,KAAK,CAACC,OAAN,CAAc+X,SAAd,CAAJ,EAA8B;AAC5BA,aAAS,CAACzY,OAAV,CAAkB,UAAA+Y,QAAQ,EAAI;AAC5B,UAAIla,aAAa,CAACka,QAAD,CAAb,IAA2BA,QAAQ,CAACJ,KAAxC,EAA+C;AAC7CL,iBAAS,CAACzX,IAAV;AACEuX,oBAAY,CAAC;AACXS,oBAAU,EAAEC,cAAc,CAACC,QAAQ,CAACJ,KAAV,EAAiB,IAAjB,CADf,EAAD,CADd;;;AAKD;AACF,KARD;AASD;AACD,SAAOL,SAAP;AACD;;AAED,SAASU,aAAT,CAAwB/Z,GAAxB,EAA6BuU,IAA7B,EAAmCyF,YAAnC,EAAiDC,IAAjD,EAAuD;AACrD;AACA,MAAIzY,KAAK,CAACC,OAAN,CAAc8S,IAAd,KAAuBA,IAAI,CAAC5X,MAAL,KAAgB,CAA3C,EAA8C;AAC5C,WAAO4X,IAAI,CAAC,CAAD,CAAX;AACD;AACD,SAAOA,IAAP;AACD;;AAED,SAASsF,cAAT,CAAyBH,KAAzB,EAAwE,KAAxCQ,UAAwC,uEAA3B,KAA2B,KAApBD,IAAoB,uEAAb,EAAa,KAAT/W,OAAS;AACtE,MAAM0W,UAAU,GAAG,EAAnB;AACA,MAAI,CAACM,UAAL,EAAiB;AACfN,cAAU,CAACO,KAAX,GAAmB;AACjB5F,UAAI,EAAEjY,MADW;AAEjByI,WAAK,EAAE,EAFU,EAAnB;;AAIA;AACE,UAAK7B,OAAO,CAACkX,WAAb,EAA0B;AACxBR,kBAAU,CAACS,gBAAX,GAA8B;AAC5B9F,cAAI,EAAE,IADsB;AAE5BxP,eAAK,EAAE,EAFqB,EAA9B;;AAIA6U,kBAAU,CAACU,gBAAX,GAA8B;AAC5B/F,cAAI,EAAE,IADsB;AAE5BxP,eAAK,EAAE,EAFqB,EAA9B;;AAID;AACF;AACD;AACA6U,cAAU,CAACW,mBAAX,GAAiC;AAC/BhG,UAAI,EAAEjY,MADyB;AAE/ByI,WAAK,EAAE,EAFwB,EAAjC;;AAIA6U,cAAU,CAAC7B,QAAX,GAAsB,EAAE;AACtBxD,UAAI,EAAE,IADc;AAEpBxP,WAAK,EAAE,EAFa;AAGpBgU,cAAQ,EAAE,kBAAUC,MAAV,EAAkBC,MAAlB,EAA0B;AAClC,YAAMjB,MAAM,GAAGzY,MAAM,CAACa,MAAP,CAAc,IAAd,CAAf;AACA4Y,cAAM,CAACjY,OAAP,CAAe,UAAAkX,QAAQ,EAAI;AACzBD,gBAAM,CAACC,QAAD,CAAN,GAAmB,IAAnB;AACD,SAFD;AAGA,aAAKuC,OAAL,CAAa;AACXxC,gBAAM,EAANA,MADW,EAAb;;AAGD,OAXmB,EAAtB;;AAaD;AACD,MAAIxW,KAAK,CAACC,OAAN,CAAciY,KAAd,CAAJ,EAA0B,CAAE;AAC1BA,SAAK,CAAC3Y,OAAN,CAAc,UAAAf,GAAG,EAAI;AACnB4Z,gBAAU,CAAC5Z,GAAD,CAAV,GAAkB;AAChBuU,YAAI,EAAE,IADU;AAEhBwE,gBAAQ,EAAED,cAAc,CAAC9Y,GAAD,CAFR,EAAlB;;AAID,KALD;AAMD,GAPD,MAOO,IAAIJ,aAAa,CAAC8Z,KAAD,CAAjB,EAA0B,CAAE;AACjCna,UAAM,CAACsB,IAAP,CAAY6Y,KAAZ,EAAmB3Y,OAAnB,CAA2B,UAAAf,GAAG,EAAI;AAChC,UAAMya,IAAI,GAAGf,KAAK,CAAC1Z,GAAD,CAAlB;AACA,UAAIJ,aAAa,CAAC6a,IAAD,CAAjB,EAAyB,CAAE;AACzB,YAAI1V,KAAK,GAAG0V,IAAI,CAACzD,OAAjB;AACA,YAAIvX,IAAI,CAACsF,KAAD,CAAR,EAAiB;AACfA,eAAK,GAAGA,KAAK,EAAb;AACD;;AAED0V,YAAI,CAAClG,IAAL,GAAYwF,aAAa,CAAC/Z,GAAD,EAAMya,IAAI,CAAClG,IAAX,CAAzB;;AAEAqF,kBAAU,CAAC5Z,GAAD,CAAV,GAAkB;AAChBuU,cAAI,EAAEqE,UAAU,CAAC3b,OAAX,CAAmBwd,IAAI,CAAClG,IAAxB,MAAkC,CAAC,CAAnC,GAAuCkG,IAAI,CAAClG,IAA5C,GAAmD,IADzC;AAEhBxP,eAAK,EAALA,KAFgB;AAGhBgU,kBAAQ,EAAED,cAAc,CAAC9Y,GAAD,CAHR,EAAlB;;AAKD,OAbD,MAaO,CAAE;AACP,YAAMuU,IAAI,GAAGwF,aAAa,CAAC/Z,GAAD,EAAMya,IAAN,CAA1B;AACAb,kBAAU,CAAC5Z,GAAD,CAAV,GAAkB;AAChBuU,cAAI,EAAEqE,UAAU,CAAC3b,OAAX,CAAmBsX,IAAnB,MAA6B,CAAC,CAA9B,GAAkCA,IAAlC,GAAyC,IAD/B;AAEhBwE,kBAAQ,EAAED,cAAc,CAAC9Y,GAAD,CAFR,EAAlB;;AAID;AACF,KAtBD;AAuBD;AACD,SAAO4Z,UAAP;AACD;;AAED,SAASc,SAAT,CAAoB7E,KAApB,EAA2B;AACzB;AACA,MAAI;AACFA,SAAK,CAAC8E,EAAN,GAAWrc,IAAI,CAACC,KAAL,CAAWD,IAAI,CAACoa,SAAL,CAAe7C,KAAf,CAAX,CAAX;AACD,GAFD,CAEE,OAAO/B,CAAP,EAAU,CAAG;;AAEf+B,OAAK,CAAC+E,eAAN,GAAwB3a,IAAxB;AACA4V,OAAK,CAACgF,cAAN,GAAuB5a,IAAvB;;AAEA4V,OAAK,CAACiF,MAAN,GAAejF,KAAK,CAACiF,MAAN,IAAgB,EAA/B;;AAEA,MAAI,CAAC/a,MAAM,CAAC8V,KAAD,EAAQ,QAAR,CAAX,EAA8B;AAC5BA,SAAK,CAACkF,MAAN,GAAe,EAAf;AACD;;AAED,MAAIhb,MAAM,CAAC8V,KAAD,EAAQ,UAAR,CAAV,EAA+B;AAC7BA,SAAK,CAACkF,MAAN,GAAe,OAAOlF,KAAK,CAACkF,MAAb,KAAwB,QAAxB,GAAmClF,KAAK,CAACkF,MAAzC,GAAkD,EAAjE;AACAlF,SAAK,CAACkF,MAAN,CAAaC,QAAb,GAAwBnF,KAAK,CAACmF,QAA9B;AACD;;AAED,MAAIpb,aAAa,CAACiW,KAAK,CAACkF,MAAP,CAAjB,EAAiC;AAC/BlF,SAAK,CAACiF,MAAN,GAAevb,MAAM,CAAC+F,MAAP,CAAc,EAAd,EAAkBuQ,KAAK,CAACiF,MAAxB,EAAgCjF,KAAK,CAACkF,MAAtC,CAAf;AACD;;AAED,SAAOlF,KAAP;AACD;;AAED,SAASoF,aAAT,CAAwBxE,EAAxB,EAA4ByE,cAA5B,EAA4C;AAC1C,MAAI1C,OAAO,GAAG/B,EAAd;AACAyE,gBAAc,CAACna,OAAf,CAAuB,UAAAoa,aAAa,EAAI;AACtC,QAAMC,QAAQ,GAAGD,aAAa,CAAC,CAAD,CAA9B;AACA,QAAMpW,KAAK,GAAGoW,aAAa,CAAC,CAAD,CAA3B;AACA,QAAIC,QAAQ,IAAI,OAAOrW,KAAP,KAAiB,WAAjC,EAA8C,CAAE;AAC9C,UAAMsW,QAAQ,GAAGF,aAAa,CAAC,CAAD,CAA9B;AACA,UAAMG,SAAS,GAAGH,aAAa,CAAC,CAAD,CAA/B;;AAEA,UAAII,IAAJ;AACA,UAAInV,MAAM,CAACoV,SAAP,CAAiBJ,QAAjB,CAAJ,EAAgC;AAC9BG,YAAI,GAAGH,QAAP;AACD,OAFD,MAEO,IAAI,CAACA,QAAL,EAAe;AACpBG,YAAI,GAAG/C,OAAP;AACD,OAFM,MAEA,IAAI,OAAO4C,QAAP,KAAoB,QAApB,IAAgCA,QAApC,EAA8C;AACnD,YAAIA,QAAQ,CAACne,OAAT,CAAiB,KAAjB,MAA4B,CAAhC,EAAmC;AACjCse,cAAI,GAAGH,QAAQ,CAACK,MAAT,CAAgB,CAAhB,CAAP;AACD,SAFD,MAEO;AACLF,cAAI,GAAG9E,EAAE,CAACiF,WAAH,CAAeN,QAAf,EAAyB5C,OAAzB,CAAP;AACD;AACF;;AAED,UAAIpS,MAAM,CAACoV,SAAP,CAAiBD,IAAjB,CAAJ,EAA4B;AAC1B/C,eAAO,GAAGzT,KAAV;AACD,OAFD,MAEO,IAAI,CAACsW,QAAL,EAAe;AACpB7C,eAAO,GAAG+C,IAAI,CAACxW,KAAD,CAAd;AACD,OAFM,MAEA;AACL,YAAIvD,KAAK,CAACC,OAAN,CAAc8Z,IAAd,CAAJ,EAAyB;AACvB/C,iBAAO,GAAG+C,IAAI,CAACrS,IAAL,CAAU,UAAAyS,QAAQ,EAAI;AAC9B,mBAAOlF,EAAE,CAACiF,WAAH,CAAeL,QAAf,EAAyBM,QAAzB,MAAuC5W,KAA9C;AACD,WAFS,CAAV;AAGD,SAJD,MAIO,IAAInF,aAAa,CAAC2b,IAAD,CAAjB,EAAyB;AAC9B/C,iBAAO,GAAGjZ,MAAM,CAACsB,IAAP,CAAY0a,IAAZ,EAAkBrS,IAAlB,CAAuB,UAAA0S,OAAO,EAAI;AAC1C,mBAAOnF,EAAE,CAACiF,WAAH,CAAeL,QAAf,EAAyBE,IAAI,CAACK,OAAD,CAA7B,MAA4C7W,KAAnD;AACD,WAFS,CAAV;AAGD,SAJM,MAIA;AACLgN,iBAAO,CAACvT,KAAR,CAAc,iBAAd,EAAiC+c,IAAjC;AACD;AACF;;AAED,UAAID,SAAJ,EAAe;AACb9C,eAAO,GAAG/B,EAAE,CAACiF,WAAH,CAAeJ,SAAf,EAA0B9C,OAA1B,CAAV;AACD;AACF;AACF,GA1CD;AA2CA,SAAOA,OAAP;AACD;;AAED,SAASqD,iBAAT,CAA4BpF,EAA5B,EAAgCqF,KAAhC,EAAuCjG,KAAvC,EAA8CkG,QAA9C,EAAwD;AACtD,MAAMC,QAAQ,GAAG,EAAjB;;AAEA,MAAIxa,KAAK,CAACC,OAAN,CAAcqa,KAAd,KAAwBA,KAAK,CAACnf,MAAlC,EAA0C;AACxC;;;;;;;;;;;AAWAmf,SAAK,CAAC/a,OAAN,CAAc,UAACqa,QAAD,EAAWrZ,KAAX,EAAqB;AACjC,UAAI,OAAOqZ,QAAP,KAAoB,QAAxB,EAAkC;AAChC,YAAI,CAACA,QAAL,EAAe,CAAE;AACfY,kBAAQ,CAAC,MAAMja,KAAP,CAAR,GAAwB0U,EAAxB;AACD,SAFD,MAEO;AACL,cAAI2E,QAAQ,KAAK,QAAjB,EAA2B,CAAE;AAC3BY,oBAAQ,CAAC,MAAMja,KAAP,CAAR,GAAwB8T,KAAxB;AACD,WAFD,MAEO,IAAIuF,QAAQ,KAAK,WAAjB,EAA8B;AACnCY,oBAAQ,CAAC,MAAMja,KAAP,CAAR,GAAwB8T,KAAK,CAACkF,MAAN,GAAelF,KAAK,CAACkF,MAAN,CAAagB,QAAb,IAAyBA,QAAxC,GAAmDA,QAA3E;AACD,WAFM,MAEA,IAAIX,QAAQ,CAACne,OAAT,CAAiB,SAAjB,MAAgC,CAApC,EAAuC,CAAE;AAC9C+e,oBAAQ,CAAC,MAAMja,KAAP,CAAR,GAAwB0U,EAAE,CAACiF,WAAH,CAAeN,QAAQ,CAAC7e,OAAT,CAAiB,SAAjB,EAA4B,EAA5B,CAAf,EAAgDsZ,KAAhD,CAAxB;AACD,WAFM,MAEA;AACLmG,oBAAQ,CAAC,MAAMja,KAAP,CAAR,GAAwB0U,EAAE,CAACiF,WAAH,CAAeN,QAAf,CAAxB;AACD;AACF;AACF,OAdD,MAcO;AACLY,gBAAQ,CAAC,MAAMja,KAAP,CAAR,GAAwBkZ,aAAa,CAACxE,EAAD,EAAK2E,QAAL,CAArC;AACD;AACF,KAlBD;AAmBD;;AAED,SAAOY,QAAP;AACD;;AAED,SAASC,aAAT,CAAwBC,GAAxB,EAA6B;AAC3B,MAAMrc,GAAG,GAAG,EAAZ;AACA,OAAK,IAAI7C,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGkf,GAAG,CAACvf,MAAxB,EAAgCK,CAAC,EAAjC,EAAqC;AACnC,QAAMmf,OAAO,GAAGD,GAAG,CAAClf,CAAD,CAAnB;AACA6C,OAAG,CAACsc,OAAO,CAAC,CAAD,CAAR,CAAH,GAAkBA,OAAO,CAAC,CAAD,CAAzB;AACD;AACD,SAAOtc,GAAP;AACD;;AAED,SAASuc,gBAAT,CAA2B3F,EAA3B,EAA+BZ,KAA/B,EAAmF,KAA7C1K,IAA6C,uEAAtC,EAAsC,KAAlC2Q,KAAkC,uEAA1B,EAA0B,KAAtBO,QAAsB,uDAAZ7K,UAAY;AACjF,MAAI8K,eAAe,GAAG,KAAtB,CADiF,CACpD;;AAE7B;AACA,MAAMP,QAAQ,GAAGnc,aAAa,CAACiW,KAAK,CAACkF,MAAP,CAAb;AACblF,OAAK,CAACkF,MAAN,CAAagB,QAAb,IAAyB,CAAClG,KAAK,CAACkF,MAAP,CADZ;AAEb,GAAClF,KAAK,CAACkF,MAAP,CAFJ;;AAIA,MAAIsB,QAAJ,EAAc,CAAE;AACdC,mBAAe,GAAGzG,KAAK,CAAC0G,aAAN;AAChB1G,SAAK,CAAC0G,aAAN,CAAoBzG,OADJ;AAEhBD,SAAK,CAAC0G,aAAN,CAAoBzG,OAApB,CAA4BC,OAA5B,KAAwC,IAF1C;AAGA,QAAI,CAAC5K,IAAI,CAACxO,MAAV,EAAkB,CAAE;AAClB,UAAI2f,eAAJ,EAAqB;AACnB,eAAO,CAACzG,KAAD,CAAP;AACD;AACD,aAAOkG,QAAP;AACD;AACF;;AAED,MAAMC,QAAQ,GAAGH,iBAAiB,CAACpF,EAAD,EAAKqF,KAAL,EAAYjG,KAAZ,EAAmBkG,QAAnB,CAAlC;;AAEA,MAAMS,GAAG,GAAG,EAAZ;AACArR,MAAI,CAACpK,OAAL,CAAa,UAAA0b,GAAG,EAAI;AAClB,QAAIA,GAAG,KAAK,QAAZ,EAAsB;AACpB,UAAIjL,UAAU,KAAK,aAAf,IAAgC,CAAC6K,QAArC,EAA+C,CAAE;AAC/CG,WAAG,CAAC5a,IAAJ,CAASiU,KAAK,CAACiF,MAAN,CAAa/V,KAAtB;AACD,OAFD,MAEO;AACL,YAAIsX,QAAQ,IAAI,CAACC,eAAjB,EAAkC;AAChCE,aAAG,CAAC5a,IAAJ,CAASma,QAAQ,CAAC,CAAD,CAAjB;AACD,SAFD,MAEO,CAAE;AACPS,aAAG,CAAC5a,IAAJ,CAASiU,KAAT;AACD;AACF;AACF,KAVD,MAUO;AACL,UAAIrU,KAAK,CAACC,OAAN,CAAcgb,GAAd,KAAsBA,GAAG,CAAC,CAAD,CAAH,KAAW,GAArC,EAA0C;AACxCD,WAAG,CAAC5a,IAAJ,CAASqa,aAAa,CAACQ,GAAD,CAAtB;AACD,OAFD,MAEO,IAAI,OAAOA,GAAP,KAAe,QAAf,IAA2B1c,MAAM,CAACic,QAAD,EAAWS,GAAX,CAArC,EAAsD;AAC3DD,WAAG,CAAC5a,IAAJ,CAASoa,QAAQ,CAACS,GAAD,CAAjB;AACD,OAFM,MAEA;AACLD,WAAG,CAAC5a,IAAJ,CAAS6a,GAAT;AACD;AACF;AACF,GApBD;;AAsBA,SAAOD,GAAP;AACD;;AAED,IAAME,IAAI,GAAG,GAAb;AACA,IAAMC,MAAM,GAAG,GAAf;;AAEA,SAASC,gBAAT,CAA2BC,SAA3B,EAAsCC,OAAtC,EAA+C;AAC7C,SAAQD,SAAS,KAAKC,OAAf;;AAEHA,SAAO,KAAK,cAAZ;;AAEED,WAAS,KAAK,OAAd;AACAA,WAAS,KAAK,KAHhB,CAFJ;;;AAQD;;AAED,SAASE,YAAT,CAAuBtG,EAAvB,EAA2B;AACzB,MAAIuG,OAAO,GAAGvG,EAAE,CAACuG,OAAjB;AACA;AACA,SAAOA,OAAO,IAAIA,OAAO,CAACA,OAAnB,KAA+BA,OAAO,CAACC,QAAR,CAAiBC,OAAjB,IAA4BF,OAAO,CAACA,OAAR,CAAgBC,QAAhB,CAAyBC,OAArD,IAAgEF,OAAO,CAACG,MAAR,CAAe7E,QAA9G,CAAP,EAAgI;AAC9H0E,WAAO,GAAGA,OAAO,CAACA,OAAlB;AACD;AACD,SAAOA,OAAO,IAAIA,OAAO,CAACA,OAA1B;AACD;;AAED,SAASI,WAAT,CAAsBvH,KAAtB,EAA6B;AAC3BA,OAAK,GAAG6E,SAAS,CAAC7E,KAAD,CAAjB;;AAEA;AACA,MAAMC,OAAO,GAAG,CAACD,KAAK,CAAC0G,aAAN,IAAuB1G,KAAK,CAACiF,MAA9B,EAAsChF,OAAtD;AACA,MAAI,CAACA,OAAL,EAAc;AACZ,WAAO/D,OAAO,CAACC,IAAR,CAAa,SAAb,CAAP;AACD;AACD,MAAMqL,SAAS,GAAGvH,OAAO,CAACuH,SAAR,IAAqBvH,OAAO,CAAC,YAAD,CAA9C,CAR2B,CAQmC;AAC9D,MAAI,CAACuH,SAAL,EAAgB;AACd,WAAOtL,OAAO,CAACC,IAAR,CAAa,SAAb,CAAP;AACD;;AAED;AACA,MAAM6K,SAAS,GAAGhH,KAAK,CAACtB,IAAxB;;AAEA,MAAMiI,GAAG,GAAG,EAAZ;;AAEAa,WAAS,CAACtc,OAAV,CAAkB,UAAAuc,QAAQ,EAAI;AAC5B,QAAI/I,IAAI,GAAG+I,QAAQ,CAAC,CAAD,CAAnB;AACA,QAAMC,WAAW,GAAGD,QAAQ,CAAC,CAAD,CAA5B;;AAEA,QAAMjB,QAAQ,GAAG9H,IAAI,CAACrX,MAAL,CAAY,CAAZ,MAAmByf,MAApC;AACApI,QAAI,GAAG8H,QAAQ,GAAG9H,IAAI,CAAC7X,KAAL,CAAW,CAAX,CAAH,GAAmB6X,IAAlC;AACA,QAAMiJ,MAAM,GAAGjJ,IAAI,CAACrX,MAAL,CAAY,CAAZ,MAAmBwf,IAAlC;AACAnI,QAAI,GAAGiJ,MAAM,GAAGjJ,IAAI,CAAC7X,KAAL,CAAW,CAAX,CAAH,GAAmB6X,IAAhC;;AAEA,QAAIgJ,WAAW,IAAIX,gBAAgB,CAACC,SAAD,EAAYtI,IAAZ,CAAnC,EAAsD;AACpDgJ,iBAAW,CAACxc,OAAZ,CAAoB,UAAA0c,UAAU,EAAI;AAChC,YAAMjM,UAAU,GAAGiM,UAAU,CAAC,CAAD,CAA7B;AACA,YAAIjM,UAAJ,EAAgB;AACd,cAAIkM,UAAU,GAAG,MAAI,CAAC9T,GAAtB;AACA,cAAI8T,UAAU,CAACT,QAAX,CAAoBC,OAAxB,EAAiC,CAAE;AACjCQ,sBAAU,GAAGX,YAAY,CAACW,UAAD,CAAZ,IAA4BA,UAAzC;AACD;AACD,cAAIlM,UAAU,KAAK,OAAnB,EAA4B;AAC1BkM,sBAAU,CAAC/J,KAAX,CAAiBrB,KAAjB,CAAuBoL,UAAvB;AACEtB,4BAAgB;AACd,kBAAI,CAACxS,GADS;AAEdiM,iBAFc;AAGd4H,sBAAU,CAAC,CAAD,CAHI;AAIdA,sBAAU,CAAC,CAAD,CAJI;AAKdpB,oBALc;AAMd7K,sBANc,CADlB;;AASA;AACD;AACD,cAAMmM,OAAO,GAAGD,UAAU,CAAClM,UAAD,CAA1B;AACA,cAAI,CAAC/R,IAAI,CAACke,OAAD,CAAT,EAAoB;AAClB,gBAAMpJ,KAAI,GAAG,MAAI,CAAC3K,GAAL,CAASgN,MAAT,KAAoB,MAApB,GAA6B,MAA7B,GAAsC,WAAnD;AACA,gBAAMgH,IAAI,GAAG,MAAI,CAACC,KAAL,IAAc,MAAI,CAACC,EAAhC;AACA,kBAAM,IAAIrhB,KAAJ,WAAa8X,KAAb,gBAAsBqJ,IAAtB,yCAAuDpM,UAAvD,QAAN;AACD;AACD,cAAIgM,MAAJ,EAAY;AACV,gBAAIG,OAAO,CAACI,IAAZ,EAAkB;AAChB;AACD;AACDJ,mBAAO,CAACI,IAAR,GAAe,IAAf;AACD;AACD,cAAIla,MAAM,GAAGuY,gBAAgB;AAC3B,gBAAI,CAACxS,GADsB;AAE3BiM,eAF2B;AAG3B4H,oBAAU,CAAC,CAAD,CAHiB;AAI3BA,oBAAU,CAAC,CAAD,CAJiB;AAK3BpB,kBAL2B;AAM3B7K,oBAN2B,CAA7B;;AAQA3N,gBAAM,GAAGrC,KAAK,CAACC,OAAN,CAAcoC,MAAd,IAAwBA,MAAxB,GAAiC,EAA1C;AACA;AACA,cAAI,4DAA4DrH,IAA5D,CAAiEmhB,OAAO,CAACjgB,QAAR,EAAjE,CAAJ,EAA0F;AACxF;AACAmG,kBAAM,GAAGA,MAAM,CAACtC,MAAP,CAAc,YAAqBsU,KAArB,CAAd,CAAT;AACD;AACD2G,aAAG,CAAC5a,IAAJ,CAAS+b,OAAO,CAACrL,KAAR,CAAcoL,UAAd,EAA0B7Z,MAA1B,CAAT;AACD;AACF,OA/CD;AAgDD;AACF,GA3DD;;AA6DA;AACEgZ,WAAS,KAAK,OAAd;AACAL,KAAG,CAAC7f,MAAJ,KAAe,CADf;AAEA,SAAO6f,GAAG,CAAC,CAAD,CAAV,KAAkB,WAHpB;AAIE;AACA,WAAOA,GAAG,CAAC,CAAD,CAAV;AACD;AACF;;AAED,IAAMwB,aAAa,GAAG,EAAtB;;AAEA,IAAMC,iBAAiB,GAAG,EAA1B;;AAEA,SAASC,eAAT,CAA0BC,EAA1B,EAA8B;AAC5B,MAAIA,EAAJ,EAAQ;AACN,QAAMC,YAAY,GAAGJ,aAAa,CAACG,EAAD,CAAlC;AACA,WAAOH,aAAa,CAACG,EAAD,CAApB;AACA,WAAOC,YAAP;AACD;AACD,SAAOH,iBAAiB,CAACI,KAAlB,EAAP;AACD;;AAED,IAAM1c,KAAK,GAAG;AACZ,QADY;AAEZ,QAFY;AAGZ,SAHY;AAIZ,gBAJY;AAKZ,eALY;AAMZ,sBANY,CAAd;;;AASA,SAAS2c,gBAAT,GAA6B;AAC3Bzf,eAAIC,SAAJ,CAAcyf,qBAAd,GAAsC,YAAY;AAChD;AACA;AACE,aAAO,KAAKpB,MAAL,CAAYoB,qBAAZ,EAAP;AACD;AACF,GALD;AAMA,MAAMC,QAAQ,GAAG3f,aAAIC,SAAJ,CAAcwY,WAA/B;AACAzY,eAAIC,SAAJ,CAAcwY,WAAd,GAA4B,UAAUxV,IAAV,EAAgBqJ,IAAhB,EAAsB;AAChD,QAAIrJ,IAAI,KAAK,QAAT,IAAqBqJ,IAArB,IAA6BA,IAAI,CAACsT,MAAtC,EAA8C;AAC5C,WAAKC,gBAAL,GAAwBR,eAAe,CAAC/S,IAAI,CAACsT,MAAN,CAAvC;AACA,aAAOtT,IAAI,CAACsT,MAAZ;AACD;AACD,WAAOD,QAAQ,CAAC1e,IAAT,CAAc,IAAd,EAAoBgC,IAApB,EAA0BqJ,IAA1B,CAAP;AACD,GAND;AAOD;;AAED,SAASwT,qBAAT,GAAkC;AAChC,MAAMC,MAAM,GAAG,EAAf;AACA,MAAMC,OAAO,GAAG,EAAhB;;AAEAhgB,eAAIC,SAAJ,CAAcggB,qBAAd,GAAsC,UAAU3E,KAAV,EAAiB;AACrD,QAAM4E,GAAG,GAAGH,MAAM,CAACzE,KAAD,CAAlB;AACA,QAAI,CAAC4E,GAAL,EAAU;AACRF,aAAO,CAAC1E,KAAD,CAAP,GAAiB,IAAjB;AACA,WAAK3G,GAAL,CAAS,gBAAT,EAA2B,YAAM;AAC/B,eAAOqL,OAAO,CAAC1E,KAAD,CAAd;AACD,OAFD;AAGD;AACD,WAAO4E,GAAP;AACD,GATD;;AAWAlgB,eAAIC,SAAJ,CAAckgB,qBAAd,GAAsC,UAAU7E,KAAV,EAAiBhX,IAAjB,EAAuBnD,GAAvB,EAA4B;AAChE,QAAMyC,IAAI,GAAGmc,MAAM,CAACzE,KAAD,CAAnB;AACA,QAAI1X,IAAJ,EAAU;AACR,UAAMwc,MAAM,GAAGxc,IAAI,CAACU,IAAD,CAAJ,IAAc,EAA7B;AACA,aAAOnD,GAAG,GAAGif,MAAM,CAACjf,GAAD,CAAT,GAAiBif,MAA3B;AACD,KAHD,MAGO;AACLJ,aAAO,CAAC1E,KAAD,CAAP,GAAiB,IAAjB;AACA,WAAK3G,GAAL,CAAS,gBAAT,EAA2B,YAAM;AAC/B,eAAOqL,OAAO,CAAC1E,KAAD,CAAd;AACD,OAFD;AAGD;AACF,GAXD;;AAaAtb,eAAIC,SAAJ,CAAcogB,qBAAd,GAAsC,UAAU/b,IAAV,EAAgB4B,KAAhB,EAAuB;AAC3D,QAAMqT,MAAM,GAAG,KAAK6E,QAAL,CAAckC,SAAd,CAAwBhF,KAAvC;AACA,QAAI/B,MAAJ,EAAY;AACV,UAAM+B,KAAK,GAAG/B,MAAM,CAAC9a,KAAP,CAAa,GAAb,EAAkB,CAAlB,CAAd;AACA,UAAM2hB,MAAM,GAAGL,MAAM,CAACzE,KAAD,CAAN,GAAgByE,MAAM,CAACzE,KAAD,CAAN,IAAiB,EAAhD;AACA8E,YAAM,CAAC9b,IAAD,CAAN,GAAe4B,KAAf;AACA,UAAI8Z,OAAO,CAAC1E,KAAD,CAAX,EAAoB;AAClB0E,eAAO,CAAC1E,KAAD,CAAP,CAAerS,YAAf;AACD;AACF;AACF,GAVD;;AAYAjJ,eAAI6I,KAAJ,CAAU;AACR0X,aADQ,uBACK;AACX,UAAMD,SAAS,GAAG,KAAKlC,QAAL,CAAckC,SAAhC;AACA,UAAMhF,KAAK,GAAGgF,SAAS,IAAIA,SAAS,CAAChF,KAArC;AACA,UAAIA,KAAJ,EAAW;AACT,eAAOyE,MAAM,CAACzE,KAAD,CAAb;AACA,eAAO0E,OAAO,CAAC1E,KAAD,CAAd;AACD;AACF,KARO,EAAV;;AAUD;;AAED,SAASkF,YAAT,CAAuB5I,EAAvB;;;AAGG,KAFDC,KAEC,SAFDA,KAEC,CADD4I,QACC,SADDA,QACC;AACDhB,kBAAgB;AAChB;AACEK,yBAAqB;AACtB;AACD,MAAIlI,EAAE,CAACwG,QAAH,CAAYsC,KAAhB,EAAuB;AACrB1gB,iBAAIC,SAAJ,CAAc0gB,MAAd,GAAuB/I,EAAE,CAACwG,QAAH,CAAYsC,KAAnC;AACD;AACD3gB,YAAU,CAACC,YAAD,CAAV;;AAEAA,eAAIC,SAAJ,CAAc2gB,MAAd,GAAuB,WAAvB;;AAEA5gB,eAAI6I,KAAJ,CAAU;AACRC,gBADQ,0BACQ;AACd,UAAI,CAAC,KAAKsV,QAAL,CAAcrG,MAAnB,EAA2B;AACzB;AACD;;AAED,WAAKA,MAAL,GAAc,KAAKqG,QAAL,CAAcrG,MAA5B;;AAEA,WAAKD,GAAL;AACElU,YAAI,EAAE,EADR;AAEG,WAAKmU,MAFR,EAEiB,KAAKqG,QAAL,CAAcxH,UAF/B;;;AAKA,WAAK0H,MAAL,GAAc,KAAKF,QAAL,CAAcxH,UAA5B;;AAEA,aAAO,KAAKwH,QAAL,CAAcrG,MAArB;AACA,aAAO,KAAKqG,QAAL,CAAcxH,UAArB;AACA,UAAI,KAAKmB,MAAL,KAAgB,MAAhB,IAA0B,OAAOlN,MAAP,KAAkB,UAAhD,EAA4D,CAAE;AAC5D,YAAMD,GAAG,GAAGC,MAAM,EAAlB;AACA,YAAID,GAAG,CAACG,GAAJ,IAAWH,GAAG,CAACG,GAAJ,CAAQ8V,KAAvB,EAA8B;AAC5B,eAAKC,KAAL,GAAalW,GAAG,CAACG,GAAJ,CAAQ8V,KAArB;AACD;AACF;AACD,UAAI,KAAK9I,MAAL,KAAgB,KAApB,EAA2B;AACzB0I,gBAAQ,CAAC,IAAD,CAAR;AACA9I,iBAAS,CAAC,IAAD,EAAOE,KAAP,CAAT;AACD;AACF,KA3BO,EAAV;;;AA8BA,MAAMkJ,UAAU,GAAG;AACjBC,YADiB,oBACP1U,IADO,EACD;AACd,UAAI,KAAKvB,GAAT,EAAc,CAAE;AACd;AACD;AACD;AACE,YAAI9L,EAAE,CAACgiB,OAAH,IAAc,CAAChiB,EAAE,CAACgiB,OAAH,CAAW,UAAX,CAAnB,EAA2C,CAAE;AAC3C/N,iBAAO,CAACvT,KAAR,CAAc,qDAAd;AACD;AACF;;AAED,WAAKoL,GAAL,GAAW6M,EAAX;;AAEA,WAAK7M,GAAL,CAAS+M,GAAT,GAAe;AACblN,WAAG,EAAE,IADQ,EAAf;;;AAIA,WAAKG,GAAL,CAASuT,MAAT,GAAkB,IAAlB;AACA;AACA,WAAKvT,GAAL,CAASmW,UAAT,GAAsB,KAAKA,UAA3B;;AAEA,WAAKnW,GAAL,CAASoW,UAAT,GAAsB,IAAtB;AACA,WAAKpW,GAAL,CAAS0N,WAAT,CAAqB,SAArB,EAAgCnM,IAAhC;;AAEA,WAAKvB,GAAL,CAAS0N,WAAT,CAAqB,UAArB,EAAiCnM,IAAjC;AACD,KAzBgB,EAAnB;;;AA4BA;AACAyU,YAAU,CAACG,UAAX,GAAwBtJ,EAAE,CAACwG,QAAH,CAAY8C,UAAZ,IAA0B,EAAlD;AACA;AACA,MAAM/X,OAAO,GAAGyO,EAAE,CAACwG,QAAH,CAAYjV,OAA5B;AACA,MAAIA,OAAJ,EAAa;AACXzI,UAAM,CAACsB,IAAP,CAAYmH,OAAZ,EAAqBjH,OAArB,CAA6B,UAAAoC,IAAI,EAAI;AACnCyc,gBAAU,CAACzc,IAAD,CAAV,GAAmB6E,OAAO,CAAC7E,IAAD,CAA1B;AACD,KAFD;AAGD;;AAEDkF,eAAa,CAACxJ,YAAD,EAAM4X,EAAN,EAAU3P,eAAe,CAAChJ,EAAE,CAAC+H,iBAAH,GAAuBkB,QAAxB,CAAf,IAAoDN,SAA9D,CAAb;;AAEA2Q,WAAS,CAACwI,UAAD,EAAaje,KAAb,CAAT;AACA4V,kBAAgB,CAACqI,UAAD,EAAanJ,EAAE,CAACwG,QAAhB,CAAhB;;AAEA,SAAO2C,UAAP;AACD;;AAED,IAAMlJ,KAAK,GAAG,CAAC,WAAD,EAAc,sBAAd,EAAsC,iBAAtC,CAAd;;AAEA,SAASuJ,aAAT,CAAwBxJ,EAAxB,EAA4ByJ,MAA5B,EAAoC;AAClC,MAAMC,SAAS,GAAG1J,EAAE,CAAC0J,SAArB;AACA;AACA,OAAK,IAAInjB,CAAC,GAAGmjB,SAAS,CAACxjB,MAAV,GAAmB,CAAhC,EAAmCK,CAAC,IAAI,CAAxC,EAA2CA,CAAC,EAA5C,EAAgD;AAC9C,QAAMojB,OAAO,GAAGD,SAAS,CAACnjB,CAAD,CAAzB;AACA,QAAIojB,OAAO,CAACjD,MAAR,CAAe9E,OAAf,KAA2B6H,MAA/B,EAAuC;AACrC,aAAOE,OAAP;AACD;AACF;AACD;AACA,MAAIC,QAAJ;AACA,OAAK,IAAIrjB,EAAC,GAAGmjB,SAAS,CAACxjB,MAAV,GAAmB,CAAhC,EAAmCK,EAAC,IAAI,CAAxC,EAA2CA,EAAC,EAA5C,EAAgD;AAC9CqjB,YAAQ,GAAGJ,aAAa,CAACE,SAAS,CAACnjB,EAAD,CAAV,EAAekjB,MAAf,CAAxB;AACA,QAAIG,QAAJ,EAAc;AACZ,aAAOA,QAAP;AACD;AACF;AACF;;AAED,SAASlH,YAAT,CAAuBjW,OAAvB,EAAgC;AAC9B,SAAOod,QAAQ,CAACpd,OAAD,CAAf;AACD;;AAED,SAASqd,MAAT,GAAmB;AACjB,SAAO,CAAC,CAAC,KAAK1C,KAAd;AACD;;AAED,SAAS2C,YAAT,CAAuBzF,MAAvB,EAA+B;AAC7B,OAAKpF,YAAL,CAAkB,KAAlB,EAAyBoF,MAAzB;AACD;;AAED,SAAS0F,mBAAT,CAA8BhL,UAA9B,EAA0CiL,QAA1C,EAAoDC,KAApD,EAA2D;AACzD,MAAMC,UAAU,GAAGnL,UAAU,CAACgL,mBAAX,CAA+BC,QAA/B,CAAnB;AACAE,YAAU,CAAC7f,OAAX,CAAmB,UAAA8f,SAAS,EAAI;AAC9B,QAAMC,GAAG,GAAGD,SAAS,CAAC/K,OAAV,CAAkBgL,GAA9B;AACAH,SAAK,CAACG,GAAD,CAAL,GAAaD,SAAS,CAACjX,GAAV,IAAiBiX,SAA9B;AACA;AACE,UAAIA,SAAS,CAAC/K,OAAV,CAAkBiL,UAAlB,KAAiC,QAArC,EAA+C;AAC7CF,iBAAS,CAACJ,mBAAV,CAA8B,aAA9B,EAA6C1f,OAA7C,CAAqD,UAAAigB,eAAe,EAAI;AACtEP,6BAAmB,CAACO,eAAD,EAAkBN,QAAlB,EAA4BC,KAA5B,CAAnB;AACD,SAFD;AAGD;AACF;AACF,GAVD;AAWD;;AAED,SAASrB,QAAT,CAAmB7I,EAAnB,EAAuB;AACrB,MAAMhB,UAAU,GAAGgB,EAAE,CAAC0G,MAAtB;AACA5d,QAAM,CAACoJ,cAAP,CAAsB8N,EAAtB,EAA0B,OAA1B,EAAmC;AACjC7N,OADiC,iBAC1B;AACL,UAAM+X,KAAK,GAAG,EAAd;AACAF,yBAAmB,CAAChL,UAAD,EAAa,UAAb,EAAyBkL,KAAzB,CAAnB;AACA;AACA,UAAMM,aAAa,GAAGxL,UAAU,CAACgL,mBAAX,CAA+B,iBAA/B,CAAtB;AACAQ,mBAAa,CAAClgB,OAAd,CAAsB,UAAA8f,SAAS,EAAI;AACjC,YAAMC,GAAG,GAAGD,SAAS,CAAC/K,OAAV,CAAkBgL,GAA9B;AACA,YAAI,CAACH,KAAK,CAACG,GAAD,CAAV,EAAiB;AACfH,eAAK,CAACG,GAAD,CAAL,GAAa,EAAb;AACD;AACDH,aAAK,CAACG,GAAD,CAAL,CAAWlf,IAAX,CAAgBif,SAAS,CAACjX,GAAV,IAAiBiX,SAAjC;AACD,OAND;AAOA,aAAOF,KAAP;AACD,KAdgC,EAAnC;;AAgBD;;AAED,SAASO,UAAT,CAAqBrL,KAArB,EAA4B;;;;AAItBA,OAAK,CAACkF,MAAN,IAAgBlF,KAAK,CAAC9Q,KAJA,CAExBmb,MAFwB,SAExBA,MAFwB,CAGxBnJ,UAHwB,SAGxBA,UAHwB,EAIO;;AAEjC,MAAIsJ,QAAJ;;AAEA,MAAIH,MAAJ,EAAY;AACVG,YAAQ,GAAGJ,aAAa,CAAC,KAAKrW,GAAN,EAAWsW,MAAX,CAAxB;AACD;;AAED,MAAI,CAACG,QAAL,EAAe;AACbA,YAAQ,GAAG,KAAKzW,GAAhB;AACD;;AAEDmN,YAAU,CAACoK,MAAX,GAAoBd,QAApB;AACD;;AAED,SAASe,QAAT,CAAmB3K,EAAnB,EAAuB;AACrB,SAAO4I,YAAY,CAAC5I,EAAD,EAAK;AACtBC,SAAK,EAALA,KADsB;AAEtB4I,YAAQ,EAARA,QAFsB,EAAL,CAAnB;;AAID;;AAED,SAAS+B,SAAT,CAAoB5K,EAApB,EAAwB;AACtB6K,KAAG,CAACF,QAAQ,CAAC3K,EAAD,CAAT,CAAH;AACA,SAAOA,EAAP;AACD;;AAED,IAAM8K,eAAe,GAAG,UAAxB;AACA,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAwB,CAAAhkB,CAAC,UAAI,MAAMA,CAAC,CAACC,UAAF,CAAa,CAAb,EAAgBC,QAAhB,CAAyB,EAAzB,CAAV,EAA/B;AACA,IAAM+jB,OAAO,GAAG,MAAhB;;AAEA;AACA;AACA;AACA,IAAMC,MAAM,GAAG,SAATA,MAAS,CAAArlB,GAAG,UAAIslB,kBAAkB,CAACtlB,GAAD,CAAlB;AACnBE,SADmB,CACXglB,eADW,EACMC,qBADN;AAEnBjlB,SAFmB,CAEXklB,OAFW,EAEF,GAFE,CAAJ,EAAlB;;AAIA,SAASG,cAAT,CAAyB/hB,GAAzB,EAAkD,KAApBgiB,SAAoB,uEAARH,MAAQ;AAChD,MAAMpgB,GAAG,GAAGzB,GAAG,GAAGN,MAAM,CAACsB,IAAP,CAAYhB,GAAZ,EAAiBtC,GAAjB,CAAqB,UAAAyC,GAAG,EAAI;AAC5C,QAAM8hB,GAAG,GAAGjiB,GAAG,CAACG,GAAD,CAAf;;AAEA,QAAI8hB,GAAG,KAAKvS,SAAZ,EAAuB;AACrB,aAAO,EAAP;AACD;;AAED,QAAIuS,GAAG,KAAK,IAAZ,EAAkB;AAChB,aAAOD,SAAS,CAAC7hB,GAAD,CAAhB;AACD;;AAED,QAAIwB,KAAK,CAACC,OAAN,CAAcqgB,GAAd,CAAJ,EAAwB;AACtB,UAAMjlB,MAAM,GAAG,EAAf;AACAilB,SAAG,CAAC/gB,OAAJ,CAAY,UAAAghB,IAAI,EAAI;AAClB,YAAIA,IAAI,KAAKxS,SAAb,EAAwB;AACtB;AACD;AACD,YAAIwS,IAAI,KAAK,IAAb,EAAmB;AACjBllB,gBAAM,CAAC+E,IAAP,CAAYigB,SAAS,CAAC7hB,GAAD,CAArB;AACD,SAFD,MAEO;AACLnD,gBAAM,CAAC+E,IAAP,CAAYigB,SAAS,CAAC7hB,GAAD,CAAT,GAAiB,GAAjB,GAAuB6hB,SAAS,CAACE,IAAD,CAA5C;AACD;AACF,OATD;AAUA,aAAOllB,MAAM,CAACc,IAAP,CAAY,GAAZ,CAAP;AACD;;AAED,WAAOkkB,SAAS,CAAC7hB,GAAD,CAAT,GAAiB,GAAjB,GAAuB6hB,SAAS,CAACC,GAAD,CAAvC;AACD,GA3BiB,EA2BfnW,MA3Be,CA2BR,UAAAqW,CAAC,UAAIA,CAAC,CAACrlB,MAAF,GAAW,CAAf,EA3BO,EA2BWgB,IA3BX,CA2BgB,GA3BhB,CAAH,GA2B0B,IA3BzC;AA4BA,SAAO2D,GAAG,cAAOA,GAAP,IAAe,EAAzB;AACD;;AAED,SAAS2gB,kBAAT,CAA6BC,mBAA7B;;;AAGQ,iFAAJ,EAAI,CAFN3B,MAEM,SAFNA,MAEM,CADNC,YACM,SADNA,YACM;AAC6B7I,kBAAgB,CAAC9Y,YAAD,EAAMqjB,mBAAN,CAD7C,2DACCtK,YADD,yBACeb,UADf;;AAGN,MAAM7T,OAAO;AACXif,iBAAa,EAAE,IADJ;AAEXC,kBAAc,EAAE,IAFL;AAGPrL,YAAU,CAAC7T,OAAX,IAAsB,EAHf,CAAb;;;AAMA;AACE;AACA,QAAI6T,UAAU,CAAC,WAAD,CAAV,IAA2BA,UAAU,CAAC,WAAD,CAAV,CAAwB7T,OAAvD,EAAgE;AAC9D3D,YAAM,CAAC+F,MAAP,CAAcpC,OAAd,EAAuB6T,UAAU,CAAC,WAAD,CAAV,CAAwB7T,OAA/C;AACD;AACF;;AAED,MAAMmf,gBAAgB,GAAG;AACvBnf,WAAO,EAAPA,OADuB;AAEvBT,QAAI,EAAE8V,QAAQ,CAACxB,UAAD,EAAalY,aAAIC,SAAjB,CAFS;AAGvBua,aAAS,EAAEH,aAAa,CAACnC,UAAD,EAAaoC,YAAb,CAHD;AAIvBS,cAAU,EAAEC,cAAc,CAAC9C,UAAU,CAAC2C,KAAZ,EAAmB,KAAnB,EAA0B3C,UAAU,CAACuL,MAArC,EAA6Cpf,OAA7C,CAJH;AAKvBqf,aAAS,EAAE;AACTC,cADS,sBACG;AACV,YAAM5I,UAAU,GAAG,KAAKA,UAAxB;;AAEA,YAAM1W,OAAO,GAAG;AACd0T,gBAAM,EAAE2J,MAAM,CAACzgB,IAAP,CAAY,IAAZ,IAAoB,MAApB,GAA6B,WADvB;AAEd2V,oBAAU,EAAE,IAFE;AAGd0J,mBAAS,EAAEvF,UAHG,EAAhB;;;AAMAzB,kBAAU,CAACyB,UAAU,CAACO,KAAZ,EAAmB,IAAnB,CAAV;;AAEA;AACAqG,oBAAY,CAAC1gB,IAAb,CAAkB,IAAlB,EAAwB;AACtBogB,gBAAM,EAAE,KAAK5H,QADS;AAEtBvB,oBAAU,EAAE7T,OAFU,EAAxB;;;AAKA;AACA,aAAK0G,GAAL,GAAW,IAAIgO,YAAJ,CAAiB1U,OAAjB,CAAX;;AAEA;AACA4U,iBAAS,CAAC,KAAKlO,GAAN,EAAWgQ,UAAU,CAAC7B,QAAtB,CAAT;;AAEA;AACA,aAAKnO,GAAL,CAAS6Y,MAAT;AACD,OA1BQ;AA2BTC,WA3BS,mBA2BA;AACP;AACA;AACA,YAAI,KAAK9Y,GAAT,EAAc;AACZ,eAAKA,GAAL,CAASoW,UAAT,GAAsB,IAAtB;AACA,eAAKpW,GAAL,CAAS0N,WAAT,CAAqB,SAArB;AACA,eAAK1N,GAAL,CAAS0N,WAAT,CAAqB,SAArB;AACD;AACF,OAnCQ;AAoCTqL,cApCS,sBAoCG;AACV,aAAK/Y,GAAL,IAAY,KAAKA,GAAL,CAASgZ,QAAT,EAAZ;AACD,OAtCQ,EALY;;AA6CvBC,iBAAa,EAAE;AACbC,UADa,gBACP3X,IADO,EACD;AACV,aAAKvB,GAAL,IAAY,KAAKA,GAAL,CAAS0N,WAAT,CAAqB,YAArB,EAAmCnM,IAAnC,CAAZ;AACD,OAHY;AAIb4X,UAJa,kBAIL;AACN,aAAKnZ,GAAL,IAAY,KAAKA,GAAL,CAAS0N,WAAT,CAAqB,YAArB,CAAZ;AACD,OANY;AAOb0L,YAPa,kBAOLC,IAPK,EAOC;AACZ,aAAKrZ,GAAL,IAAY,KAAKA,GAAL,CAAS0N,WAAT,CAAqB,cAArB,EAAqC2L,IAArC,CAAZ;AACD,OATY,EA7CQ;;AAwDvBjb,WAAO,EAAE;AACPkb,SAAG,EAAEhC,UADE;AAEPiC,SAAG,EAAE/F,WAFE,EAxDc,EAAzB;;;AA6DA;AACA,MAAIrG,UAAU,CAACqM,eAAf,EAAgC;AAC9Bf,oBAAgB,CAACe,eAAjB,GAAmCrM,UAAU,CAACqM,eAA9C;AACD;;AAED,MAAI5hB,KAAK,CAACC,OAAN,CAAcsV,UAAU,CAACsM,cAAzB,CAAJ,EAA8C;AAC5CtM,cAAU,CAACsM,cAAX,CAA0BtiB,OAA1B,CAAkC,UAAAuiB,UAAU,EAAI;AAC9CjB,sBAAgB,CAACra,OAAjB,CAAyBsb,UAAzB,IAAuC,UAAUnY,IAAV,EAAgB;AACrD,eAAO,KAAKvB,GAAL,CAAS0Z,UAAT,EAAqBnY,IAArB,CAAP;AACD,OAFD;AAGD,KAJD;AAKD;;AAED,MAAIoV,MAAJ,EAAY;AACV,WAAO8B,gBAAP;AACD;AACD,SAAO,CAACA,gBAAD,EAAmBzK,YAAnB,CAAP;AACD;;AAED,SAAS2L,cAAT,CAAyBrB,mBAAzB,EAA8C;AAC5C,SAAOD,kBAAkB,CAACC,mBAAD,EAAsB;AAC7C3B,UAAM,EAANA,MAD6C;AAE7CC,gBAAY,EAAZA,YAF6C,EAAtB,CAAzB;;AAID;;AAED,IAAMgD,OAAO,GAAG;AACd,QADc;AAEd,QAFc;AAGd,UAHc,CAAhB;;;AAMAA,OAAO,CAAC5hB,IAAR,OAAA4hB,OAAO,EAASjN,gBAAT,CAAP;;AAEA,SAASkN,aAAT,CAAwBC,cAAxB;;;AAGG,KAFDnD,MAEC,SAFDA,MAEC,CADDC,YACC,SADDA,YACC;AACD,MAAMmD,WAAW,GAAGJ,cAAc,CAACG,cAAD,CAAlC;;AAEAtM,WAAS,CAACuM,WAAW,CAAC3b,OAAb,EAAsBwb,OAAtB,EAA+BE,cAA/B,CAAT;;AAEAC,aAAW,CAAC3b,OAAZ,CAAoB4b,MAApB,GAA6B,UAAUC,KAAV,EAAiB;AAC5C,SAAK3gB,OAAL,GAAe2gB,KAAf;AACA,QAAMC,SAAS,GAAGvkB,MAAM,CAAC+F,MAAP,CAAc,EAAd,EAAkBue,KAAlB,CAAlB;AACA,WAAOC,SAAS,CAACrF,MAAjB;AACA,SAAK5T,KAAL,GAAa;AACXC,cAAQ,EAAE,OAAO,KAAK+S,KAAL,IAAc,KAAKC,EAA1B,IAAgC8D,cAAc,CAACkC,SAAD,CAD7C,EAAb;;AAGA,SAAKla,GAAL,CAAS+M,GAAT,CAAakN,KAAb,GAAqBA,KAArB,CAP4C,CAOhB;AAC5B,SAAKja,GAAL,CAAS0N,WAAT,CAAqB,QAArB,EAA+BuM,KAA/B;AACD,GATD;AAUAtM,kBAAgB,CAACoM,WAAW,CAAC3b,OAAb,EAAsB0b,cAAtB,EAAsC,CAAC,SAAD,CAAtC,CAAhB;;AAEA,SAAOC,WAAP;AACD;;AAED,SAASI,SAAT,CAAoBL,cAApB,EAAoC;AAClC,SAAOD,aAAa,CAACC,cAAD,EAAiB;AACnCnD,UAAM,EAANA,MADmC;AAEnCC,gBAAY,EAAZA,YAFmC,EAAjB,CAApB;;AAID;;AAED,SAASwD,UAAT,CAAqBN,cAArB,EAAqC;AACnC;AACE,WAAOrO,SAAS,CAAC0O,SAAS,CAACL,cAAD,CAAV,CAAhB;AACD;AACF;;AAED,SAASO,eAAT,CAA0BlN,UAA1B,EAAsC;AACpC;AACE,WAAO1B,SAAS,CAACkO,cAAc,CAACxM,UAAD,CAAf,CAAhB;AACD;AACF;;AAED,SAASmN,mBAAT,CAA8BzN,EAA9B,EAAkC;AAChC,MAAMmJ,UAAU,GAAGwB,QAAQ,CAAC3K,EAAD,CAA3B;AACA,MAAMhN,GAAG,GAAGC,MAAM,CAAC;AACjBC,gBAAY,EAAE,IADG,EAAD,CAAlB;;AAGA8M,IAAE,CAAC0G,MAAH,GAAY1T,GAAZ;AACA,MAAMsW,UAAU,GAAGtW,GAAG,CAACsW,UAAvB;AACA,MAAIA,UAAJ,EAAgB;AACdxgB,UAAM,CAACsB,IAAP,CAAY+e,UAAU,CAACG,UAAvB,EAAmChf,OAAnC,CAA2C,UAAAoC,IAAI,EAAI;AACjD,UAAI,CAACpD,MAAM,CAACggB,UAAD,EAAa5c,IAAb,CAAX,EAA+B;AAC7B4c,kBAAU,CAAC5c,IAAD,CAAV,GAAmByc,UAAU,CAACG,UAAX,CAAsB5c,IAAtB,CAAnB;AACD;AACF,KAJD;AAKD;AACD5D,QAAM,CAACsB,IAAP,CAAY+e,UAAZ,EAAwB7e,OAAxB,CAAgC,UAAAoC,IAAI,EAAI;AACtC,QAAI,CAACpD,MAAM,CAAC0J,GAAD,EAAMtG,IAAN,CAAX,EAAwB;AACtBsG,SAAG,CAACtG,IAAD,CAAH,GAAYyc,UAAU,CAACzc,IAAD,CAAtB;AACD;AACF,GAJD;AAKA,MAAI1D,IAAI,CAACmgB,UAAU,CAACuE,MAAZ,CAAJ,IAA2BrmB,EAAE,CAACsmB,SAAlC,EAA6C;AAC3CtmB,MAAE,CAACsmB,SAAH,CAAa,YAAa,oCAATjZ,IAAS,yDAATA,IAAS;AACxBsL,QAAE,CAACa,WAAH,CAAe,QAAf,EAAyBnM,IAAzB;AACD,KAFD;AAGD;AACD,MAAI1L,IAAI,CAACmgB,UAAU,CAACyE,MAAZ,CAAJ,IAA2BvmB,EAAE,CAACwmB,SAAlC,EAA6C;AAC3CxmB,MAAE,CAACwmB,SAAH,CAAa,YAAa,oCAATnZ,IAAS,yDAATA,IAAS;AACxBsL,QAAE,CAACa,WAAH,CAAe,QAAf,EAAyBnM,IAAzB;AACD,KAFD;AAGD;AACD,MAAI1L,IAAI,CAACmgB,UAAU,CAACC,QAAZ,CAAR,EAA+B;AAC7B,QAAM1U,IAAI,GAAGrN,EAAE,CAACymB,oBAAH,IAA2BzmB,EAAE,CAACymB,oBAAH,EAAxC;AACA9N,MAAE,CAACa,WAAH,CAAe,UAAf,EAA2BnM,IAA3B;AACD;AACD,SAAOsL,EAAP;AACD;;AAED,SAAS+N,YAAT,CAAuB/N,EAAvB,EAA2B;AACzB,MAAMmJ,UAAU,GAAGwB,QAAQ,CAAC3K,EAAD,CAA3B;AACA,MAAIhX,IAAI,CAACmgB,UAAU,CAACuE,MAAZ,CAAJ,IAA2BrmB,EAAE,CAACsmB,SAAlC,EAA6C;AAC3CtmB,MAAE,CAACsmB,SAAH,CAAa,YAAa,oCAATjZ,IAAS,yDAATA,IAAS;AACxBsL,QAAE,CAACa,WAAH,CAAe,QAAf,EAAyBnM,IAAzB;AACD,KAFD;AAGD;AACD,MAAI1L,IAAI,CAACmgB,UAAU,CAACyE,MAAZ,CAAJ,IAA2BvmB,EAAE,CAACwmB,SAAlC,EAA6C;AAC3CxmB,MAAE,CAACwmB,SAAH,CAAa,YAAa,oCAATnZ,IAAS,yDAATA,IAAS;AACxBsL,QAAE,CAACa,WAAH,CAAe,QAAf,EAAyBnM,IAAzB;AACD,KAFD;AAGD;AACD,MAAI1L,IAAI,CAACmgB,UAAU,CAACC,QAAZ,CAAR,EAA+B;AAC7B,QAAM1U,IAAI,GAAGrN,EAAE,CAACymB,oBAAH,IAA2BzmB,EAAE,CAACymB,oBAAH,EAAxC;AACA9N,MAAE,CAACa,WAAH,CAAe,UAAf,EAA2BnM,IAA3B;AACD;AACD,SAAOsL,EAAP;AACD;;AAEDrF,KAAK,CAACrQ,OAAN,CAAc,UAAA2R,OAAO,EAAI;AACvBvB,WAAS,CAACuB,OAAD,CAAT,GAAqB,KAArB;AACD,CAFD;;AAIArB,QAAQ,CAACtQ,OAAT,CAAiB,UAAA0jB,UAAU,EAAI;AAC7B,MAAMC,OAAO,GAAGvT,SAAS,CAACsT,UAAD,CAAT,IAAyBtT,SAAS,CAACsT,UAAD,CAAT,CAAsBthB,IAA/C,GAAsDgO,SAAS,CAACsT,UAAD,CAAT,CAAsBthB,IAA5E;AACZshB,YADJ;AAEA,MAAI,CAAC3mB,EAAE,CAACgiB,OAAH,CAAW4E,OAAX,CAAL,EAA0B;AACxBvT,aAAS,CAACsT,UAAD,CAAT,GAAwB,KAAxB;AACD;AACF,CAND;;AAQA,IAAIE,GAAG,GAAG,EAAV;;AAEA,IAAI,OAAOC,KAAP,KAAiB,WAAjB,IAAgC,gBAAgB,UAApD,EAAgE;AAC9DD,KAAG,GAAG,IAAIC,KAAJ,CAAU,EAAV,EAAc;AAClBhc,OADkB,eACbkS,MADa,EACL3X,IADK,EACC;AACjB,UAAIpD,MAAM,CAAC+a,MAAD,EAAS3X,IAAT,CAAV,EAA0B;AACxB,eAAO2X,MAAM,CAAC3X,IAAD,CAAb;AACD;AACD,UAAIiH,OAAO,CAACjH,IAAD,CAAX,EAAmB;AACjB,eAAOiH,OAAO,CAACjH,IAAD,CAAd;AACD;AACD,UAAIS,GAAG,CAACT,IAAD,CAAP,EAAe;AACb,eAAO8B,SAAS,CAAC9B,IAAD,EAAOS,GAAG,CAACT,IAAD,CAAV,CAAhB;AACD;AACD;AACE,YAAIgQ,QAAQ,CAAChQ,IAAD,CAAZ,EAAoB;AAClB,iBAAO8B,SAAS,CAAC9B,IAAD,EAAOgQ,QAAQ,CAAChQ,IAAD,CAAf,CAAhB;AACD;AACD,YAAIoP,QAAQ,CAACpP,IAAD,CAAZ,EAAoB;AAClB,iBAAO8B,SAAS,CAAC9B,IAAD,EAAOoP,QAAQ,CAACpP,IAAD,CAAf,CAAhB;AACD;AACF;AACD,UAAIyQ,QAAQ,CAACzQ,IAAD,CAAZ,EAAoB;AAClB,eAAOyQ,QAAQ,CAACzQ,IAAD,CAAf;AACD;AACD,UAAI,CAACpD,MAAM,CAACjC,EAAD,EAAKqF,IAAL,CAAP,IAAqB,CAACpD,MAAM,CAACoR,SAAD,EAAYhO,IAAZ,CAAhC,EAAmD;AACjD;AACD;AACD,aAAO8B,SAAS,CAAC9B,IAAD,EAAO+O,OAAO,CAAC/O,IAAD,EAAOrF,EAAE,CAACqF,IAAD,CAAT,CAAd,CAAhB;AACD,KA1BiB;AA2BlB0F,OA3BkB,eA2BbiS,MA3Ba,EA2BL3X,IA3BK,EA2BC4B,KA3BD,EA2BQ;AACxB+V,YAAM,CAAC3X,IAAD,CAAN,GAAe4B,KAAf;AACA,aAAO,IAAP;AACD,KA9BiB,EAAd,CAAN;;AAgCD,CAjCD,MAiCO;AACLxF,QAAM,CAACsB,IAAP,CAAYuJ,OAAZ,EAAqBrJ,OAArB,CAA6B,UAAAoC,IAAI,EAAI;AACnCwhB,OAAG,CAACxhB,IAAD,CAAH,GAAYiH,OAAO,CAACjH,IAAD,CAAnB;AACD,GAFD;;AAIA;AACE5D,UAAM,CAACsB,IAAP,CAAY0R,QAAZ,EAAsBxR,OAAtB,CAA8B,UAAAoC,IAAI,EAAI;AACpCwhB,SAAG,CAACxhB,IAAD,CAAH,GAAY8B,SAAS,CAAC9B,IAAD,EAAOoP,QAAQ,CAACpP,IAAD,CAAf,CAArB;AACD,KAFD;AAGA5D,UAAM,CAACsB,IAAP,CAAYsS,QAAZ,EAAsBpS,OAAtB,CAA8B,UAAAoC,IAAI,EAAI;AACpCwhB,SAAG,CAACxhB,IAAD,CAAH,GAAY8B,SAAS,CAAC9B,IAAD,EAAOoP,QAAQ,CAACpP,IAAD,CAAf,CAArB;AACD,KAFD;AAGD;;AAED5D,QAAM,CAACsB,IAAP,CAAY+S,QAAZ,EAAsB7S,OAAtB,CAA8B,UAAAoC,IAAI,EAAI;AACpCwhB,OAAG,CAACxhB,IAAD,CAAH,GAAYyQ,QAAQ,CAACzQ,IAAD,CAApB;AACD,GAFD;;AAIA5D,QAAM,CAACsB,IAAP,CAAY+C,GAAZ,EAAiB7C,OAAjB,CAAyB,UAAAoC,IAAI,EAAI;AAC/BwhB,OAAG,CAACxhB,IAAD,CAAH,GAAY8B,SAAS,CAAC9B,IAAD,EAAOS,GAAG,CAACT,IAAD,CAAV,CAArB;AACD,GAFD;;AAIA5D,QAAM,CAACsB,IAAP,CAAY/C,EAAZ,EAAgBiD,OAAhB,CAAwB,UAAAoC,IAAI,EAAI;AAC9B,QAAIpD,MAAM,CAACjC,EAAD,EAAKqF,IAAL,CAAN,IAAoBpD,MAAM,CAACoR,SAAD,EAAYhO,IAAZ,CAA9B,EAAiD;AAC/CwhB,SAAG,CAACxhB,IAAD,CAAH,GAAY8B,SAAS,CAAC9B,IAAD,EAAO+O,OAAO,CAAC/O,IAAD,EAAOrF,EAAE,CAACqF,IAAD,CAAT,CAAd,CAArB;AACD;AACF,GAJD;AAKD;;AAEDrF,EAAE,CAACujB,SAAH,GAAeA,SAAf;AACAvjB,EAAE,CAACkmB,UAAH,GAAgBA,UAAhB;AACAlmB,EAAE,CAACmmB,eAAH,GAAqBA,eAArB;AACAnmB,EAAE,CAAComB,mBAAH,GAAyBA,mBAAzB;AACApmB,EAAE,CAAC0mB,YAAH,GAAkBA,YAAlB;;AAEA,IAAIK,KAAK,GAAGF,GAAZ,C;;AAEeE,K;;;;;;;;;;;;AC79Ef;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA,iBAAiB,mBAAO,CAAC,mBAAW;;AAEpC;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;;;;;;wFCpCA;;;;;;;;;AASe;AACX;AACAC,WAAS,EAAE;AACbC,kBAAc,EAAE,IADH;AAEPC,aAAS,EAAE,CAFJ;AAGPC,OAAG,EAAE,KAHE;AAIPC,QAAI,EAAE,KAJC;AAKPC,YAAQ,EAAE,KALH;AAMPC,SAAK,EAAE,EANA;AAOPrgB,SAAK,EAAE,EAPA;AAQPsgB,SAAK,EAAE,KARA;AASPC,QAAI,EAAE,KATC;AAUPC,SAAK,EAAE,SAVA;AAWPC,YAAQ,EAAE,EAXH;AAYPvC,QAAI,EAAE,EAZC;AAaPwC,oBAAgB,EAAE,KAbX;AAcPC,eAAW,EAAE,SAdN;AAebC,eAAW,EAAE,IAfA,EAFA,E;;;;;;;;;;;;wFCTf;;;;;;;;;AASe;AACX;AACAC,KAAG,EAAE;AACDC,QAAI,EAAE,EADL;AAEDC,UAAM,EAAE,CAFP;AAGDC,WAAO,EAAE,OAHR;AAIDC,SAAK,EAAE,SAJN;AAKDC,aAAS,EAAE,MALV,EAFM,E;;;;;;;;;;;;wFCTf;;;;;;;;;AASe;AACX;AACAC,UAAQ,EAAE;AACNnhB,SAAK,EAAE,IADD;AAENohB,aAAS,EAAE,KAFL;AAGNC,UAAM,EAAE,IAHF,EAFC,E;;;;;;;;;;;;wFCTf;;;;;;;;;AASe;AACX;AACAC,cAAY,EAAE;AACVzV,SAAK,EAAE,EADG;AAEV7L,SAAK,EAAE,EAFG;AAGVuhB,SAAK,EAAE,EAHG;AAIVC,YAAQ,EAAE,KAJA;AAKVC,UAAM,EAAE,IALE;AAMVC,aAAS,EAAE,IAND;AAOVL,UAAM,EAAE,IAPE;AAQVJ,SAAK,EAAE,MARG;AASV7iB,QAAI,EAAE,EATI;AAUVujB,QAAI,EAAE,EAVI;AAWVC,YAAQ,EAAE,GAXA,EAFH,E;;;;;;;;;;;;wFCTf;;;;;;;;;AASe;AACX;AACAC,cAAY,EAAE;AACVC,QAAI,EAAE,EADI;AAEVH,QAAI,EAAE,QAFI;AAGVxB,QAAI,EAAE,EAHI;AAIVK,SAAK,EAAE,SAJG;AAKVuB,WAAO,EAAE,SALC;AAMVtB,YAAQ,EAAE,EANA;AAOVuB,SAAK,EAAE,EAPG;AAQVC,QAAI,EAAE,KARI;AASVL,YAAQ,EAAE,IATA;AAUVM,gBAAY,EAAE,IAVJ,EAFH,E;;;;;;;;;;;;wFCTf;;;;;;;;;AASe;AACX;AACAC,WAAS,EAAE;AACPC,QAAI,EAAE,CADC;AAEPC,UAAM,EAAE,UAFD;AAGPC,aAAS,EAAE,IAHJ;AAIPC,eAAW,EAAE,KAJN,EAFA,E;;;;;;;;;;;;wFCTf;;;;;;;;;AASe;AACX;AACAC,SAAO,EAAE;AACLC,YAAQ,EAAE,CADL;AAELC,UAAM,EAAE,CAFH;AAGLd,YAAQ,EAAE,IAHL;AAILe,YAAQ,EAAE,IAJL;AAKLC,YAAQ,EAAE,CALL;AAMLC,aAAS,EAAE,IANN;AAOLC,WAAO,EAAE,GAPJ;AAQLtC,SAAK,EAAE,SARF;AASLC,YAAQ,EAAE,EATL;AAULF,QAAI,EAAE,KAVD;AAWLwC,aAAS,EAAE,EAXN,EAFE,E;;;;;;;;;;;;wFCTf;;;;;;;;;AASe;AACX;AACAC,gBAAc,EAAE;AACZjF,QAAI,EAAE,KADM;AAEZkF,eAAW,EAAE,IAFD;AAGZjjB,SAAK,EAAE,EAHK;AAIZ6L,SAAK,EAAE,EAJK;AAKZsU,QAAI,EAAE,UALM;AAMZ+C,WAAO,EAAE,IAAI7oB,IAAJ,CAAS,IAAIA,IAAJ,GAAW8oB,WAAX,KAA2B,EAApC,EAAwC,CAAxC,EAA2C,CAA3C,EAA8CC,OAA9C,EANG;AAOZC,WAAO,EAAE,IAAIhpB,IAAJ,CAAS,IAAIA,IAAJ,GAAW8oB,WAAX,KAA2B,EAApC,EAAwC,CAAxC,EAA2C,CAA3C,EAA8CC,OAA9C,EAPG;AAQZE,WAAO,EAAE,CARG;AASZC,WAAO,EAAE,EATG;AAUZC,aAAS,EAAE,CAVC;AAWZC,aAAS,EAAE,EAXC;AAYZ7c,UAAM,EAAE,IAZI;AAaZ8c,aAAS,EAAE,IAbC;AAcZC,WAAO,EAAE,KAdG;AAeZC,cAAU,EAAE,EAfA;AAgBZC,cAAU,EAAE,IAhBA;AAiBZC,eAAW,EAAE,IAjBD;AAkBZC,eAAW,EAAE,SAlBD;AAmBZC,gBAAY,EAAE,SAnBF;AAoBZC,oBAAgB,EAAE,CApBN;AAqBZC,uBAAmB,EAAE,KArBT;AAsBZC,gBAAY,EAAE,gCAAM,EAAN,EAtBF,EAFL,E;;;;;;;;;;;;wFCTf;;;;;;;;;AASe;AACX;AACAC,SAAO,EAAE;AACLC,UAAM,EAAE,KADH;AAELjE,YAAQ,EAAE,IAFL;AAGLF,OAAG,EAAE,KAHA;AAILoE,gBAAY,EAAE,QAJT;AAKLxC,QAAI,EAAE,EALD;AAMLyC,YAAQ,EAAE,EANL;AAOLC,aAAS,EAAE,SAPN;AAQLC,aAAS,EAAE,SARN,EAFE,E;;;;;;;;;;;;wFCTf;;;;;;;;;AASe;AACX;AACAC,OAAK,EAAE;AACH/C,QAAI,EAAE,EADH;AAEHG,QAAI,EAAE,EAFH;AAGH0C,aAAS,EAAE,SAHR;AAIHD,YAAQ,EAAE,EAJP;AAKHI,aAAS,EAAE,SALR;AAMHC,YAAQ,EAAE,EANP;AAOHzE,QAAI,EAAE,MAPH;AAQH0E,SAAK,EAAE,GARJ;AASHC,UAAM,EAAE,GATL;AAUH/G,QAAI,EAAE,IAVH;AAWHgH,aAAS,EAAE,CAXR,EAFI,E;;;;;;;;;;;ACTf;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd,KAAK;AACL,cAAc;AACd;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,yDAAyD;AACzD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,WAAW;AACX;;AAEA;AACA;AACA,wCAAwC,WAAW;AACnD;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,2BAA2B;AAC3B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,SAAS;AACT;AACA;AACA;AACA;;AAEA;;AAEA,SAAS;AACT;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oCAAoC,cAAc;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,kBAAkB;AACnD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,iBAAiB;;AAEjB;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,wBAAwB,iBAAiB;AACzC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,YAAY;AACZ;AACA;;AAEA;AACA,YAAY;AACZ;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,8CAA8C,QAAQ;AACtD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,aAAa;AACb;AACA;;AAEA,WAAW;AACX;AACA;AACA;;AAEA,WAAW;AACX;AACA;AACA;;AAEA,WAAW;AACX;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA,8CAA8C,QAAQ;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA,KAAK;;AAEL;AACA,8CAA8C,QAAQ;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA,8CAA8C,QAAQ;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;;wFChtBA;;;;;;;;;AASe;AACX;AACAC,MAAI,EAAE;AACFjd,SAAK,EAAE,yBAAO,EAAP,EADL;AAEFkd,SAAK,EAAE,yBAAO,EAAP,EAFL;AAGFC,aAAS,EAAE,SAHT;AAIFC,gBAAY,EAAE,IAJZ;AAKFC,iBAAa,EAAE,MA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0BAA0B,EAAE;AACvE;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,mBAAmB;AACnB;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,0BAA0B,cAAc,qBAAqB;;AAE7D;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,OAAO,IAAqC;AAC5C;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,SAAS,IAAqC;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,OAAO,IAAqC;AAC5C;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,aAAa,IAAqC;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,4BAA4B,oCAAoC,EAAE;AAClE;AACA;;AAEA;AACA,4BAA4B;AAC5B,uEAAuE,EAAE;AACzE;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,0BAA0B;;AAE1B;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,QAAQ;;AAER;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,IAAqC;AAC5C;AACA;AACA;AACA;;AAEA,gCAAgC;AAChC,8BAA8B;;AAE9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,qCAAqC,uBAAuB,EAAE;;AAE9D;AACA;AACA;AACA;AACA;;AAEA,4BAA4B,SAAS,qBAAqB;;AAE1D;AACA;AACA;;AAEA;AACA,OAAO,IAAqC;AAC5C;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,kBAAkB;AAClB;AACA;AACA,SAAS,IAAqC;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;;AAEH;AACA;AACA,6BAA6B,oCAAoC,EAAE;;AAEnE;AACA,KAAK,KAAqC;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,gBAAgB;AAChB;AACA;AACA,SAAS,IAAqC;AAC9C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B,mBAAmB,EAAE;AACnD,+BAA+B,yCAAyC,EAAE;AAC1E,GAAG;AACH,SAAS,IAAqC;AAC9C;AACA;AACA;AACA;;AAEA;AACA,gDAAgD,yBAAyB,EAAE;AAC3E;;AAEA;AACA;AACA;AACA;AACA,kCAAkC,kBAAkB,EAAE;AACtD,mCAAmC,wCAAwC,EAAE;AAC7E,OAAO;AACP,aAAa,IAAqC;AAClD;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,kCAAkC,kBAAkB,EAAE;AACtD,mCAAmC,+CAA+C,EAAE;AACpF,OAAO;AACP,aAAa,IAAqC;AAClD;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;;AAEA;AACA;AACA;;AAEA;AACA,yCAAyC,aAAa;AACtD;AACA;;AAEA;AACA;;AAEA,OAAO,IAAqC;AAC5C;AACA;AACA,6CAA6C,6CAA6C,EAAE;AAC5F;;AAEA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;AACA;;AAEA,iCAAiC,eAAe;;AAEhD,OAAO,IAAqC;AAC5C;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,iCAAiC,eAAe;;AAEhD,OAAO,IAAqC;AAC5C;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA,iCAAiC,eAAe;;AAEhD,OAAO,IAAqC;AAC5C;AACA;;AAEA;AACA;;AAEA,yEAAyE,iCAAiC;AAC1G;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,uBAAuB,EAAE;AACjD;AACA,KAAK;AACL,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,8BAA8B,yBAAyB,EAAE;AACzD;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,kDAAkD,aAAoB;AACtE;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,WAAW,IAAqC;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa,KAAqC;AAClD;AACA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa,KAAqC;AAClD;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,uBAAuB,sBAAsB;AAC7C,uBAAuB,2CAA2C;AAClE,KAAK;AACL;AACA,wBAAwB,0CAA0C;AAClE;AACA,GAAG;;AAEH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD;;AAElD;AACA;;AAEA;AACA;AACA;AACA;AACA,0BAA0B,4BAA4B,EAAE;AACxD;AACA,OAAO;AACP,KAAK;AACL;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA,SAAS,IAAqC;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,gCAAgC,4BAA4B;AAC5D,SAAS,IAAqC;AAC9C;AACA;AACA,GAAG,GAAG,yBAAyB;AAC/B;;AAEA;AACA,4CAA4C,mBAAmB,EAAE;AACjE;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,IAAqC;AAC5C;AACA;;AAEA,UAAU;AACV;;AAEA;AACA;AACA,SAAS,IAAqC;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,aAAa;AACxB,WAAW;AACX;AACA;AACA;AACA,OAAO,KAAqC;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,CAAC;;AAED;AACA;AACA,WAAW,OAAO;AAClB,WAAW,aAAa;AACxB,YAAY;AACZ;AACA;AACA;AACA,OAAO,KAAqC;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,CAAC;;AAED;AACA;AACA,WAAW,OAAO;AAClB,WAAW,aAAa;AACxB,YAAY;AACZ;AACA;AACA;AACA,OAAO,KAAqC;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,KAAqC;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,CAAC;;AAED;AACA;AACA,WAAW,OAAO;AAClB,WAAW,aAAa;AACxB,YAAY;AACZ;AACA;AACA;AACA,OAAO,KAAqC;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,CAAC;;AAED;AACA;AACA,WAAW,OAAO;AAClB,YAAY;AACZ;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA,CAAC,EAAE;;AAEH;AACA;AACA,iCAAiC,iBAAiB,GAAG,iBAAiB,GAAG,iBAAiB;AAC1F,iBAAiB,iBAAiB,QAAQ,mBAAmB,GAAG,mBAAmB,GAAG,mBAAmB;AACzG,WAAW,aAAa;AACxB,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,UAAU,qBAAqB,EAAE,EAAE;AACjE,2CAA2C,UAAU,0BAA0B,EAAE,EAAE;AACnF;;AAEA;AACA;AACA,WAAW,EAAE;AACb,YAAY;AACZ;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,SAAS;AACpB,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,YAAY;A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,eAAO,IAAP;AACH;AACJ;AACJ;AACD,SAAO,KAAP;AACH;;AAED,SAASulD,aAAT,CAAuBn+C,OAAvB,EAAgC;AAC5B,SAAO,UAACP,MAAD,EAAY;AACf,QAAI,CAACA,MAAL,EAAa;AACT,aAAOA,MAAP;AACH;AACDA,UAAM,GAAGC,eAAe,CAACD,MAAD,CAAf,IAA2BA,MAApC;AACA,WAAO2+C,kBAAkB,CAAC3+C,MAAD,CAAlB,CAA2BqC,IAA3B,CAAgC,UAACrC,MAAD,UAAYO,OAAO,CAACnK,OAAR,CAAgB4J,MAAhB,IAA0B,CAAC,CAAvC,EAAhC,CAAP;AACH,GAND;AAOH;AACD,SAAS2+C,kBAAT,CAA4B3+C,MAA5B,EAAoC;AAChC,MAAM4+C,KAAK,GAAG,EAAd;AACA,MAAMzC,MAAM,GAAGn8C,MAAM,CAACvJ,KAAP,CAAa,GAAb,CAAf;AACA,SAAO0lD,MAAM,CAACrmD,MAAd,EAAsB;AAClB8oD,SAAK,CAAC7jD,IAAN,CAAWohD,MAAM,CAACrlD,IAAP,CAAY,GAAZ,CAAX;AACAqlD,UAAM,CAAC/0B,GAAP;AACH;AACD,SAAOw3B,KAAP;AACH,C;;;;;;;;;;;;;;;;;;;;;;;;ACncD;AAAA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,UAAU;AACV;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,iBAAiB,sBAAsB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB,wBAAwB;AACxB,0BAA0B;AAC1B,0BAA0B;AAC1B;;AAEA;AACA;AACA;AACA;AACA,WAAW,IAAI;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,4BAA4B;AAC5B,KAAK;AACL;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,uDAAuD;;AAEvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb,WAAW;AACX,gBAAgB,IAAqC;AACrD;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,WAAW;AACX,gBAAgB,IAAqC;AACrD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP,YAAY,IAAqC;AACjD;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,uDAAuD;;AAEvD;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP,YAAY,IAAqC;AACjD;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA,sBAAsB;;AAEtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAU,IAAqC;AAC/C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;;AAEA;AACA;;AAEA,kBAAkB;;AAElB;AACA;AACA;AACA,GAAG;;AAEH;AACA,MAAM,KAAqC;AAC3C;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAM,IAAqC;AAC3C;AACA;;AAEA;AACA,wCAAwC;AACxC,sBAAsB;AACtB;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;;AAEA;AACA,UAAU,IAAqC;AAC/C;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,iCAAiC,iBAAiB;AAClD;AACA;AACA,OAAO;AACP;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,mCAAmC;AACnC,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;;AAEA;AACA,2BAA2B;;AAE3B;AACA;;AAEA;AACA,2BAA2B;;AAE3B;AACA;AACA;AACA,0EAA0E;;AAE1E;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA,UAAU;AACV;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;;AAEA;AACA;AACA,sBAAsB,6CAA6C;AACnE;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AAIA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,mBAAmB;AACnB;AACA,qBAAqB,4BAA4B;AACjD;;AAEA;AACA;AACA;AACA,8CAA8C;AAC9C;AACA;AACA;AACA,gCAAgC;;AAEhC;AACA;AACA;AACA;AACA;AACA,mBAAmB,yBAAyB;AAC5C,KAAK;AACL;AACA,mCAAmC;AACnC;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA,uBAAuB,4BAA4B;;AAEnD;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,2BAA2B;;AAE3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,cAAc,IAAqC;AACnD;AACA;AACA;AACA;AACA;AACA,YAAY,IAAqC;AACjD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,wCAAwC;;AAExC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,8CAA8C;;AAE9C;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,8BAA8B;AAC9B;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;AAMA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,uBAAuB;;AAEvB;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;;;AAIA,sCAAsC;AACtC;AACA;AACA;AACA;AACA,2BAA2B,gCAAgC,EAAE;AAC7D,2BAA2B,gCAAgC,EAAE;AAC7D,gCAAgC,qEAAqE;AACrG;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,OAAO;AAC3B,2BAA2B,OAAO;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;;;AAGA;AACA,2BAA2B;AAC3B,2DAA2D;AAC3D;AACA,uBAAuB;AACvB;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA,0BAA0B,MAAM,qBAAqB,YAAY,qBAAqB,mBAAmB,qBAAqB,iBAAiB,qBAAqB,oBAAoB,qBAAqB,UAAU,qBAAqB,kBAAkB,qBAAqB,0BAA0B,qBAAqB,WAAW,qBAAqB,aAAa,qBAAqB,yBAAyB,qBAAqB,sBAAsB,qBAAqB,4BAA4B,qBAAqB,qBAAqB,qBAAqB,mBAAmB,qBAAqB;;AAEhmB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,sBAAsB,aAAa;AACnC;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG,GAAG,aAAa;AACnB;;AAEA;AACA;AACA,mCAAmC;AACnC;AACA;AACA;AACA;AACA,GAAG,GAAG,kBAAkB;AACxB;;AAEA;AACA;AACA;AACA;AACA;;AAEA,yCAAyC;;AAEzC,+CAA+C;AAC/C,sDAAsD;AACtD,oDAAoD;AACpD,uDAAuD;;AAEvD,6CAA6C;AAC7C;AACA;AACA;;AAEA,qDAAqD;AACrD;AACA;AACA;AACA;;AAEA,6DAA6D;AAC7D,qEAAqE,yCAAyC;;AAE9G,8CAA8C;AAC9C,qDAAqD,yBAAyB;;AAE9E,gDAAgD;AAChD,yDAAyD,6BAA6B;;AAEtF,4DAA4D;AAC5D,kEAAkE,sCAAsC;;AAExG,yDAAyD;AACzD,+DAA+D,mCAAmC;;AAElG,+DAA+D;AAC/D,uEAAuE,2CAA2C;;AAElH,wDAAwD;AACxD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA,sDAAsD;AACtD,6DAA6D,iCAAiC;;AAE9F,2DAA2D;AAC3D,yEAAyE;AACzE,qEAAqE;;AAErE;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;;AAEjB;AACA,mDAAmD;;AAEnD;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,KAAqC;AACjD;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL,UAAU,KAAqC;AAC/C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,UAAU,IAAqC;AAC/C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,+BAA+B,qBAAqB;AACpD,8BAA8B,oBAAoB;AAClD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA,iBAAiB,2CAA2C;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB;;AAErB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;AACA,6BAA6B,aAAoB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,aAAa;;AAEb;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA,sBAAsB;AACtB;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA,sBAAsB;AACtB;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA,aAAa;;AAEb;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA,oBAAoB;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,uCAAuC;AACvC;;AAEA;AACA,yBAAyB;AACzB;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,mDAAmD;AACnD;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA,0DAA0D;AAC1D;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8FAA8F;AAC9F;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,aAAoB;AACjD;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA,sBAAsB;AACtB;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,wDAAwD;AACxD;;AAEA;AACA;AACA;AACA;;AAEA;AACA,0FAA0F;AAC1F;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,aAAoB;AACjD;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,iEAAiE;AACjE,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA,sBAAsB;AACtB,qDAAqD,GAAG,2BAA2B;AACnF,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;A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;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,iBAAiB;AAClC;AACA;AACA;AACA,sBAAsB,+BAA+B;AACrD,sBAAsB,iBAAiB;AACvC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,kDAAkD,iCAAiC,EAAE;AACrF,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAiB,gBAAgB;AACjC;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,6BAA6B,cAAc;;AAE3C;;AAEA;AACA;AACA;AACA,6BAA6B,UAAU;;AAEvC;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,gBAAgB;AACjC,kCAAkC;AAClC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,aAAoB;;AAErC;AACA;AACA;AACA,YAAY,aAAoB;;AAEhC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,qBAAqB;AACxC,iBAAiB;AACjB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,GAAG;AACR;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA,oCAAoC;AACpC;;AAEA,IAAI,IAAqC;AACzC;AACA;AACA,iCAAiC;AACjC,uCAAuC,wBAAwB,EAAE;AACjE,0BAA0B;;AAE1B;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,8CAA8C;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,wBAAwB,YAAY;AACpC,kBAAkB,YAAY;AAC9B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA,wCAAwC,EAAE;AAC1C;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA,+BAA+B,oBAAoB,EAAE;AACrD;AACA,kCAAkC,OAAO;AACzC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B,SAAS,qBAAqB;;AAExD;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,2BAA2B;AAC9C;AACA;AACA;AACA,GAAG;AACH,CAAC;;AAED;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,iBAAiB;AAClC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,mCAAmC,OAAO;AAC1C;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,OAAO;AACzC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iDAAiD,OAAO;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI,IAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;;AAEA;AACA;AACA;;AAEA,iBAAiB,iBAAiB;AAClC;AACA;AACA,2BAA2B;AAC3B;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,uBAAuB;AACzD,iCAAiC,sBAAsB;AACvD;AACA,kBAAkB;AAClB,MAAM,IAAqC;AAC3C;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,aAAoB;AACtC;AACA;AACA,mBAAmB;AACnB;AACA;AACA,iBAAiB,uBAAuB;AACxC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,OAAO,UAAU,IAAqC;AACtD;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,GAAG,UAAU,IAAqC;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA,mBAAmB,mBAAmB;AACtC,+BAA+B;AAC/B;AACA,GAAG;AACH;AACA;AACA;AACA,kBAAkB,YAAY;AAC9B,WAAW;AACX;AACA,GAAG,UAAU,IAAqC;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAqC;AAC3C;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,OAAO;AACrD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B;AAC3B;AACA,oCAAoC;AACpC;AACA,qCAAqC;AACrC;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,IAEQ;AACZ;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,2BAA2B;AAC9C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,6CAA6C,SAAS;AACtD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA,6CAA6C,qCAAqC,EAAE;AACpF;;AAEA;AACA;AACA;;AAEA,oCAAoC,yCAAyC,EAAE;AAC/E;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,kBAAkB;AAC3C;AACA;AACA,4BAA4B;AAC5B,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,sDAAsD,EAAE;AACtF;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,iBAAiB,mBAAmB;AACpC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,kBAAkB;AAClC;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;;AAEA;;AAEA;;AAEA,IAAI,IAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,iCAAiC;AACnE,cAAc,6BAA6B;AAC3C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,kCAAkC,iCAAiC;AACnE,cAAc,6BAA6B;AAC3C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,yBAAyB;AAC1C,GAAG;AACH;AACA;AACA,iBAAiB,+BAA+B;AAChD;AACA;;AAEA;AACA;;AAEA,IAAI,IAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,uBAAuB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,uCAAuC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB,mBAAmB;AACxC;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,IAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,qBAAqB;AACtC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,aAAa,qBAAqB;AAClC;AACA,+CAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,IAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO,MAAM,EAEN;AACP,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,mBAAmB,iBAAiB;AACpC;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,UAAU,IAAqC;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,OAAO;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,kEAAkE;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA,sBAAsB,mBAAmB;AACzC;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,OAAO;AACtC,uCAAuC;AACvC;AACA,GAAG;AACH;AACA,eAAe,SAAS;AACxB,sCAAsC;AACtC;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,2DAA2D;AAC3D;AACA;AACA,KAAK;AACL;AACA;AACA,kCAAkC,OAAO;AACzC;AACA,6CAA6C;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA,4CAA4C,eAAe;AAC3D,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,kDAAkD;AAClD,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA,6CAA6C;AAC7C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,iBAAiB;AACpC;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA,KAAK;AACL,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB,iBAAiB,gBAAgB;AACjC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,iBAAiB,mBAAmB;AACpC;AACA;AACA;AACA,KAAK,UAAU,KAAqC;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,qCAAqC,gEAAgE;AACrG;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,4BAA4B,+BAA+B;AAC3D,4BAA4B,+BAA+B;AAC3D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA,mBAAmB,mBAAmB;AACtC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAqC;AAC3C,kDAAkD;AAClD;AACA;AACA,mCAAmC;AACnC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,sEAAsE;;AAEtE;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK,uFAAuF;AAC5F;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0CAA0C;AAC1C,iBAAiB,yBAAyB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG,+BAA+B;AAClC,mCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,oBAAoB,oBAAoB;AACxC,sBAAsB,4BAA4B;AAClD;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,OAAO;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,mBAAmB;AACnB,yBAAyB;AACzB;AACA,qDAAqD;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,6CAA6C;AAC9E;AACA;AACA,6CAA6C,4CAA4C;;AAEzF;AACA;AACA;;AAEA;AACA,MAAM,IAAqC;AAC3C;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL,GAAG,MAAM,EAGN;AACH;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,KAAK,2CAA2C,8BAA8B,EAAE;;AAEhF;AACA,wCAAwC,OAAO;AAC/C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;;AAEL;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gBAAgB,KAAqC;AACrD;AACA,oBAAoB,SAAI;AACxB;AACA;AACA,WAAW;AACX;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,mBAAmB,qBAAqB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C;AAC/C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,uCAAuC,OAAO;AAC9C;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,SAAS;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,OAAO;AAC5C;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAqC;AAC3C;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0BAA0B;;AAE1B,kBAAkB;AAClB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,mBAAmB,qBAAqB;AACxC;AACA,0CAA0C;AAC1C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,MAAM,IAAqC;AAC3C;AACA;AACA;;AAEA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,mBAAmB,yBAAyB;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,yBAAyB;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,OAAO;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,0BAA0B;AACpD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,oBAAoB,EAAE;;AAEpD;AACA;AACA,iBAAiB,sBAAsB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;AAIA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,oBAAoB;AACpB;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA,oBAAoB,KAAqC;AACzD;AACA,MAAM,SAAE;AACR;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,mBAAmB,2BAA2B;AAC9C,qBAAqB,+BAA+B;AACpD;AACA;AACA,GAAG;AACH,yBAAyB;AACzB;AACA,sBAAsB,iCAAiC;AACvD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kGAAkG;AAClG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK,MAAM,EAEN;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,8BAA8B;;AAE9B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK,UAAU,IAAqC;AACpD;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,qBAAqB,oBAAoB;AACzC;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA,8BAA8B;AAC9B,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA,KAAK,MAAM,EAEN;AACL;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC;AACzC;AACA,sCAAsC;AACtC,8C;;AAEA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,eAAe;AACrC;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sEAAsE;AACtE;AACA;AACA;;AAEA;AACA,QAAQ,KAAqC;AAC7C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iCAAiC;;AAEjC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,YAAY,KAAqC;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;;;AAIA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA,0CAA0C,2BAA2B,EAAE;AACvE,KAAK;AACL;AACA,0CAA0C,4BAA4B,EAAE;AACxE,KAAK;AACL,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,+BAA+B,eAAe;AAC9C,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA;AACA,0BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,qBAAqB;AACrB;AACA;AACA,yBAAyB;AACzB;AACA;AACA,6BAA6B;AAC7B;AACA;AACA,iBAAiB;AACjB;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,SAAS;AACT;AACA;AACA,aAAa;AACb;AACA;AACA,iBAAiB;AACjB;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,6HAAW;AACvB;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,mBAAmB;AAC1C;AACA;AACA;AACA;;AAEA;AACA,0CAA0C,gCAAgC,EAAE;AAC5E;;AAEA;AACA;AACA;AACA;AACA,WAAW,6HAAW;AACtB;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,WAAW,6HAAW;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B,0CAA0C;;AAE1C;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA,sCAAsC;AACtC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,8CAA8C;AAC9C;AACA,KAAK;AACL;AACA;AACA,UAAU,6HAAW;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,mCAAmC,OAAO;AAC1C;AACA,gBAAgB,YAAY;AAC5B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,gBAAgB,YAAY;AAC5B;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,OAAO;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD,qDAAqD,EAAE,SAAS;AACtH;;AAEA;AACA;AACA;AACA;AACA;AACA,iCAAiC,OAAO;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,kCAAkC,OAAO;AACzC;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,0BAA0B,OAAO;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEe,kEAAG,EAAC;;;;;;;;;;;;;ACl6LnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0E;;;;;;;;;;;;;;;;;;;;;;ACEA;;;AAGA;AACA;;;AAGA,yD,8FAjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAYA;;;GAIO,SAAS+jB,oBAAT,GAAgC;;;;AAStC,MAAIjhB,IAAI,GAAGnpC,MAAM,GAAGqW,UAAT,CAAoBg0C,IAA/B;AACC7B,MAAI,GAAGxoD,MAAM,GAAGqW,UAAT,CAAoBmyC,IAD5B;;;AAIArf,MAAI,GAAGtnC,QAAQ,CAACsnC,IAAD,CAAf;AACA,MAAIzsC,MAAM,CAACqF,KAAP,CAAaonC,IAAb,CAAJ,EAAwB;AACvBA,QAAI,GAAG,CAAP;AACA;AACD,MAAIA,IAAJ,EAAU;AACT,sBAAO;AACNA,UAAI,EAAJA,IADM;AAENqf,UAAI,EAAJA,IAFM,EAAP;AAGGvvD,QAHH,CAGQ,UAAArB,GAAG,EAAI;;;;;;AAMdoI,YAAM,GAAGqW,UAAT,CAAoBg0C,IAApB,GAA2B,CAA3B;AACArqD,YAAM,GAAGqW,UAAT,CAAoBmyC,IAApB,GAA2B,CAA3B;;;AAGA,KAbD,EAaGxtD,KAbH,CAaS,UAAApD,GAAG,EAAI,CAAE,CAblB;AAcA;AACD;;AAEM,SAAS0yD,QAAT,GAAoB;AAC1B,SAAOC,SAAS,CAACC,SAAV,CAAoB5qD,WAApB,GAAkCrM,OAAlC,CAA0C,gBAA1C,MAAgE,CAAC,CAAxE;AACA;;AAEM,SAASk3D,WAAT,CAAqB3pD,GAArB,EAA0B;AAChC,8BAAkB7H,IAAlB,CAAuB,UAAArB,GAAG,EAAI;AAC7B,QAAIiT,IAAI,GAAGjT,GAAG,CAACmB,IAAJ,CAAS2xD,aAApB;AACA,QAAI7/C,IAAI,IAAI,GAAZ,EAAiB;AAChBoQ,SAAG,CAAC4R,UAAJ,CAAe;AACd/rB,WAAG,EAAEA,GAAG,IAAI,qCADE,EAAf;;AAGA,KAJD,MAIO,IAAI+J,IAAI,IAAI,GAAZ,EAAiB;AACvBoQ,SAAG,CAAC0vC,aAAJ,CAAkB;AACjBC,mBAAW,EAAEhzD,GAAG,CAACmB,IAAJ,CAAS8xD,cADL,CACoB;AADpB,OAAlB;AAGA,KAJM,MAIA;;;;;AAKN,UAAIjzD,GAAG,CAACmB,IAAJ,CAAS+xD,YAAT,CAAsBv3D,OAAtB,CAA8B,oBAA9B,IAAsD,CAA1D,EAA6D;;;;;AAK5D0nB,WAAG,CAAC8vC,uBAAJ,CAA4B;AAC3BC,iBAAO,EAAE;AACRlqD,eAAG,EAAElJ,GAAG,CAACmB,IAAJ,CAAS+xD,YADN,EADkB;;AAI3BG,gBAAM,EAAErzD,GAAG,CAACmB,IAAJ,CAASmyD,eAJU;AAK3BzvD,iBAL2B,mBAKnB7D,GALmB,EAKd,CAAE,CALY;AAM3B8D,cAN2B,gBAMtBT,GANsB,EAMjB;AACTggB,eAAG,CAACwwB,SAAJ,CAAc;AACbvkC,mBAAK,EAAEjM,GAAG,CAACgO,MADE;AAEb+T,kBAAI,EAAE,MAFO;AAGbC,sBAAQ,EAAE,IAHG,EAAd;;AAKA,WAZ0B,EAA5B;;;AAeA,OApBD,MAoBO;AACNhC,WAAG,CAAC4R,UAAJ,CAAe;AACd/rB,aAAG,4CAAqClJ,GAAG,CAACmB,IAAJ,CAAS+xD,YAA9C,CADW,EAAf;;AAGA;;AAED;AACD,GA1CD;AA2CA;;;AAGM,SAASK,UAAT,GAAsB;AAC5B,MAAMvzD,GAAG,GAAG,EAAZ;;AAEA,MAAMuiB,KAAK,GAAG,CAACixC,QAAQ,CAAC/kC,IAAT,CAAczyB,KAAd,CAAoB,GAApB,EAAyB,CAAzB,KAA+B,EAAhC;AACZ+L,MADY;AAEZ9M,SAFY,CAEJ,WAFI,EAES,EAFT,CAAd;;AAIA,MAAI,CAACsnB,KAAL,EAAY;AACX,WAAOviB,GAAP;AACA;;AAEDuiB,OAAK,CAACvmB,KAAN,CAAY,GAAZ,EAAiByD,OAAjB,CAAyB,UAAAkT,KAAK,EAAI;AACjC,QAAMhL,KAAK,GAAGgL,KAAK,CAAC1X,OAAN,CAAc,KAAd,EAAqB,GAArB,EAA0Be,KAA1B,CAAgC,GAAhC,CAAd;AACA,QAAM0C,GAAG,GAAG3C,kBAAkB,CAAC4L,KAAK,CAACoV,KAAN,EAAD,CAA9B;AACA,QAAMyD,GAAG,GAAG7Y,KAAK,CAACtM,MAAN,GAAe,CAAf,GAAmBU,kBAAkB,CAAC4L,KAAK,CAACtL,IAAN,CAAW,GAAX,CAAD,CAArC,GAAyD,IAArE;;AAEA,QAAI2D,GAAG,CAACtB,GAAD,CAAH,KAAauP,SAAjB,EAA4B;AAC3BjO,SAAG,CAACtB,GAAD,CAAH,GAAW8hB,GAAX;AACA,KAFD,MAEO,IAAItgB,KAAK,CAACC,OAAN,CAAcH,GAAG,CAACtB,GAAD,CAAjB,CAAJ,EAA6B;AACnCsB,SAAG,CAACtB,GAAD,CAAH,CAAS4B,IAAT,CAAckgB,GAAd;AACA,KAFM,MAEA;AACNxgB,SAAG,CAACtB,GAAD,CAAH,GAAW,CAACsB,GAAG,CAACtB,GAAD,CAAJ,EAAW8hB,GAAX,CAAX;AACA;AACD,GAZD;;AAcA,SAAOxgB,GAAP;AACA;AACM,SAASyzD,kBAAT,CAA4BvqD,GAA5B,EAAiCyJ,KAAjC,EAAwC+gD,QAAxC,EAAkD;AACxD,MAAIC,gBAAgB,GAAG,EAAvB;AACA,MAAIC,SAAS,GAAG1qD,GAAG,CAAClN,KAAJ,CAAU,GAAV,CAAhB;AACA,MAAI63D,OAAO,GAAGD,SAAS,CAAC,CAAD,CAAvB;AACA,MAAIE,aAAa,GAAGF,SAAS,CAAC,CAAD,CAA7B;AACA,MAAIvwB,IAAI,GAAG,EAAX;AACA,MAAIywB,aAAJ,EAAmB;AAClBF,aAAS,GAAGE,aAAa,CAAC93D,KAAd,CAAoB,GAApB,CAAZ;AACA,SAAK,IAAIN,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGk4D,SAAS,CAACv4D,MAA9B,EAAsCK,CAAC,EAAvC,EAA2C;AAC1C,UAAIk4D,SAAS,CAACl4D,CAAD,CAAT,CAAaM,KAAb,CAAmB,GAAnB,EAAwB,CAAxB,KAA8B2W,KAAlC,EAAyC;AACxCghD,wBAAgB,IAAItwB,IAAI,GAAGuwB,SAAS,CAACl4D,CAAD,CAApC;AACA2nC,YAAI,GAAG,GAAP;AACA;AACD;AACD;;AAED,MAAI0wB,QAAQ,GAAG1wB,IAAI,GAAG,EAAP,GAAY1wB,KAAZ,GAAoB,GAApB,GAA0B+gD,QAAzC;AACA,SAAOG,OAAO,GAAG,GAAV,GAAgBF,gBAAhB,GAAmCI,QAA1C;AACA;;AAED,IAAIC,cAAc,GAAGh/B,eAAM1tB,GAAN,CAAU,eAAV,KAA8B,EAAnD,C;AACA,6BAAkBjG,IAAlB,CAAuB,UAAArB,GAAG,EAAI;AAC7Bg1B,iBAAMztB,GAAN,CAAU,eAAV,EAA2BvH,GAAG,CAACmB,IAAJ,CAAS8yD,IAApC;AACA,2BAAAD,cAAc,GAAGh0D,GAAG,CAACmB,IAAJ,CAAS8yD,IAA1B;AACA,CAHD,E;;;;;;AASeV,U;;;;;;;;;;;;;;;;;;;;;;;AC7Jf,yF,8FAVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;;;IAKA;;;OAIO,SAASW,YAAT,GAAwB,CAC9B,OAAO7lB,iBAAQ/mC,GAAR,CAAY,UAAZ,EAAwB,EAAxB,EAA4B,EAClCmnC,MAAM,EAAE,IAD0B,EAA5B,CAAP,CAGA,C,CACD;;;;AAIO,SAAS0lB,aAAT,GAAyB;AAC/B,SAAO9lB,iBAAQ/mC,GAAR,CAAY,eAAZ,EAA6B,EAA7B,EAAiC;AACvCmnC,UAAM,EAAE,IAD+B,EAAjC,CAAP;;AAGA;;AAED;;;;AAIO,SAASkjB,OAAT,GAAmB;AACzB,SAAOtjB,iBAAQ/mC,GAAR,CAAY,iBAAZ,EAA+B,EAA/B,EAAmC;AACzCmnC,UAAM,EAAE,IADiC,EAAnC,CAAP;;AAGA;;;AAGD;;;;AAIO,SAAS2lB,SAAT,CAAmBC,MAAnB,EAA2B;AACjC,SAAOhmB,iBAAQE,IAAR,CAAa,oBAAb,EAAmC;AACzC8lB,UAAM,EAAEA,MADiC,EAAnC,CAAP;;AAGA;;AAED;;;;;AAKO,SAASC,gBAAT,CAA0BC,QAA1B,EAAoC;AAC1C,SAAOlmB,iBAAQE,IAAR,CAAa,gBAAb,EAA+B;AACrCgmB,YAAQ,EAAEA,QAD2B,EAA/B,CAAP;;AAGA;AACD;;;;AAIO,SAASC,UAAT,CAAoBrzD,IAApB,EAA0B;AAChC,SAAOktC,iBAAQ/mC,GAAR,CAAY,YAAZ,EAA0BnG,IAA1B,EAAgC;AACtCstC,UAAM,EAAE,IAD8B,EAAhC,CAAP;;AAGA;AACD;;;;AAIO,SAASgmB,eAAT,CAAyBtzD,IAAzB,EAA+B;AACrC,SAAOktC,iBAAQ/mC,GAAR,CAAY,SAAZ,EAAuBnG,IAAvB,EAA6B;AACnCstC,UAAM,EAAE,IAD2B,EAA7B,CAAP;;AAGA;;AAED;;;;AAIO,SAASimB,cAAT,CAAwBjlB,KAAxB,EAA+BtuC,IAA/B,EAAqC;AAC3C,SAAOktC,iBAAQ/mC,GAAR,CAAY,kBAAkBmoC,KAA9B,EAAqCtuC,IAArC,CAAP;AACA;;AAED;;;;AAIO,SAASwzD,YAAT,GAAwB;AAC9B,SAAOtmB,iBAAQ/mC,GAAR,CAAY,eAAZ,CAAP;AACA;;AAED;;;;AAIO,SAASstD,sBAAT,GAAkC;AACxC,SAAOvmB,iBAAQ/mC,GAAR,CAAY,uBAAZ,EAAqC,EAArC,EAAyC;AAC/CmnC,UAAM,EAAE,IADuC,EAAzC,CAAP;;AAGA;;AAED;;;;;AAKO,SAASomB,cAAT,CAAwBjiD,GAAxB,EAA6BzR,IAA7B,EAAmC;AACzC,SAAOktC,iBAAQ/mC,GAAR,CAAY,kBAAkBsL,GAA9B,EAAmCzR,IAAnC,EAAyC;AAC/CstC,UAAM,EAAE,IADuC,EAAzC,CAAP;;AAGA;;AAED;;;;AAIO,SAASqmB,iBAAT,GAA6B;AACnC,SAAOzmB,iBAAQ/mC,GAAR,CAAY,kBAAZ,EAAgC,EAAhC,EAAoC;AAC1CmnC,UAAM,EAAE,IADkC,EAApC,CAAP;;AAGA;;AAED;;;;AAIO,SAASsmB,oBAAT,GAAgC;AACtC,SAAO1mB,iBAAQ/mC,GAAR,CAAY,qBAAZ,EAAmC,EAAnC,EAAuC;AAC7CmnC,UAAM,EAAE,IADqC,EAAvC,CAAP;;AAGA;;AAED;;;;;AAKO,SAASumB,iBAAT,CAA2Bn4C,EAA3B,EAA+B;AACrC,SAAOwxB,iBAAQ/mC,GAAR,CAAY,qBAAqBuV,EAAjC,EAAqC,EAArC,EAAyC;AAC/C4xB,UAAM,EAAE,IADuC,EAAzC,CAAP;;AAGA;;AAED;;;;AAIO,SAASC,WAAT,CAAqBvtC,IAArB,EAA2B;AACjC,SAAOktC,iBAAQE,IAAR,CAAa,cAAb,EAA6BptC,IAA7B,EAAmC;AACzCstC,UAAM,EAAE,IADiC,EAAnC,CAAP;;AAGA;;AAED;;;;AAIO,SAASwmB,UAAT,GAAsB;AAC5B,SAAO5mB,iBAAQ/mC,GAAR,CAAY,aAAZ,EAA2B,EAA3B,EAA+B;AACrCmnC,UAAM,EAAE,IAD6B,EAA/B,CAAP;;AAGA;;AAED;;;;AAIO,SAASG,cAAT,CAAwBsmB,KAAxB,EAA+BC,KAA/B,EAAsCz2D,GAAtC,EAA2CkyD,IAA3C,EAAiD;AACvD,SAAOviB,iBAAQE,IAAR,CAAa,iBAAb,EAAgC;AACtC2mB,SAAK,EAAEA,KAD+B;AAEtCjiD,QAAI,EAAEkiD,KAAK,KAAKlnD,SAAV,GAAsB,OAAtB,GAAgCknD,KAFA;AAGtCz2D,OAAG,EAAEA,GAHiC;AAItCkyD,QAAI,EAAEA,IAJgC,EAAhC;AAKJ;AACFniB,UAAM,EAAE,IADN,EALI,CAAP;;AAQA;;AAED;;;;;AAKO,SAAS2mB,aAAT,CAAuBj0D,IAAvB,EAA6B;AACnC,SAAOktC,iBAAQE,IAAR,CAAa,UAAb,EAAyBptC,IAAzB,EAA+B;AACrCstC,UAAM,EAAE,IAD6B,EAA/B,CAAP;;AAGA;;AAED;;;;;AAKO,SAAS4mB,kBAAT,CAA4Bl0D,IAA5B,EAAkC;AACxC,SAAOktC,iBAAQE,IAAR,CAAa,gBAAb,EAA+BptC,IAA/B,EAAqC;AAC3CstC,UAAM,EAAE,IADmC,EAArC,CAAP;;AAGA;;AAED;;;;;AAKO,SAAS6mB,UAAT,CAAoBn0D,IAApB,EAA0B;AAChC,SAAOktC,iBAAQE,IAAR,CAAa,OAAb,EAAsBptC,IAAtB,EAA4B;AAClCstC,UAAM,EAAE,IAD0B,EAA5B,CAAP;;AAGA;;AAED;;;;;AAKO,SAAS8mB,aAAT,GAAyB;AAC/B,SAAOlnB,iBAAQE,IAAR,CAAa,WAAb,EAA0B;AAChC,YAAQ,SADwB,EAA1B,CAAP;;AAGA;;;AAGD;;;;;;;;;;;AAWA;;;;AAIO,SAASinB,YAAT,CAAsBr0D,IAAtB,EAA4B;AAClC,SAAOktC,iBAAQE,IAAR,CAAa,SAAb,EAAwBptC,IAAxB,EAA8B;AACpCstC,UAAM,EAAE,IAD4B,EAA9B,CAAP;;AAGA;;;;AAID;;;;AAIO,SAASgnB,gBAAT,CAA0Bt0D,IAA1B,EAAgC;AACtC,SAAOktC,iBAAQE,IAAR,CAAa,cAAb,EAA6BptC,IAA7B,CAAP;AACA;;AAED;;;;AAIO,SAASu0D,MAAT,GAAkB;AACxB,SAAOrnB,iBAAQ/mC,GAAR,CAAY,QAAZ,CAAP;AACA;;AAED;;;AAGO,SAASquD,UAAT,GAAsB;AAC5B,SAAOtnB,iBAAQ/mC,GAAR,CAAY,iBAAZ,EAA+B,EAA/B,EAAmC;AACzCmnC,UAAM,EAAE,IADiC,EAAnC,CAAP;;AAGA;;AAED;;;AAGO,SAASmnB,IAAT,GAAgB;AACtB,SAAOvnB,iBAAQ/mC,GAAR,CAAY,MAAZ,EAAoB,EAApB,EAAwB;AAC9BmnC,UAAM,EAAE,IADsB,EAAxB,CAAP;;AAGA;;AAED;;;AAGO,SAASonB,OAAT,GAAmB;AACzB,SAAOxnB,iBAAQ/mC,GAAR,CAAY,WAAZ,EAAyB,EAAzB,EAA6B;AACnCmnC,UAAM,EAAE,IAD2B,EAA7B,CAAP;;AAGA;;AAED;;;AAGO,SAASqnB,WAAT,CAAqBxsD,IAArB,EAA2BotC,KAA3B,EAAkC;AACxC,SAAOrI,iBAAQ/mC,GAAR,CAAY,aAAZ,EAA2B;AACjCgC,QAAI,EAAJA,IADiC;AAEjCotC,SAAK,EAALA,KAFiC,EAA3B;AAGJ;AACFjI,UAAM,EAAE,IADN,EAHI,CAAP;;AAMA;;AAED;;;AAGO,SAASsnB,MAAT,CAAgBl5C,EAAhB,EAAoB;AAC1B,SAAOwxB,iBAAQ/mC,GAAR,iCAAqCuV,EAAE,GAAG,SAAOA,EAAV,GAAa,EAApD,GAA0D,EAA1D,EAA8D;AACpE4xB,UAAM,EAAE,IAD4D,EAA9D,CAAP;;AAGA;;AAED;;;AAGO,SAASunB,WAAT,CAAqBn0D,IAArB,EAA2B;AACjC,SAAOwsC,iBAAQ/mC,GAAR,CAAY,yBAAyBzF,IAArC,EAA2C,EAA3C,EAA+C;AACrD4sC,UAAM,EAAE,IAD6C,EAA/C,CAAP;;AAGA;;AAED;;;;AAIO,SAASqjB,MAAT,GAAkB;AACxB,SAAOzjB,iBAAQ/mC,GAAR,CAAY,eAAZ,EAA6B,EAA7B,EAAiC;AACvCmnC,UAAM,EAAE,IAD+B,EAAjC,CAAP;;AAGA;;AAED;;;;AAIO,SAASwnB,WAAT,CAAqB90D,IAArB,EAA2B;AACjC,SAAOktC,iBAAQE,IAAR,CAAa,kBAAb,EAAiCptC,IAAjC,EAAuC;AAC7CstC,UAAM,EAAE,IADqC,EAAvC,CAAP;;AAGA;;AAED;;;;AAIO,SAASynB,WAAT,GAAuB;AAC7B,SAAO7nB,iBAAQ/mC,GAAR,CAAY,qBAAZ,EAAmC,EAAnC,EAAuC;AAC7CmnC,UAAM,EAAE,IADqC,EAAvC,CAAP;;AAGA;;AAED;;;;AAIO,SAAS0nB,gBAAT,GAA4B;AAClC,SAAO9nB,iBAAQ/mC,GAAR,CAAY,eAAZ,EAA6B,EAA7B,EAAiC;AACvCmnC,UAAM,EAAE,IAD+B,EAAjC,CAAP;;AAGA;;AAED;;;;AAIO,SAAS2H,QAAT,CAAkBj1C,IAAlB,EAAwB;AAC9B,SAAOktC,iBAAQ/mC,GAAR,CAAY,UAAZ,EAAwBnG,IAAxB,EAA8B;AACpCstC,UAAM,EAAE,IAD4B,EAA9B,CAAP;;AAGA;;AAED;;;;AAIO,SAAS2nB,UAAT,CAAoBj1D,IAApB,EAA0B;AAChC,SAAOktC,iBAAQ/mC,GAAR,CAAY,qBAAZ,EAAmCnG,IAAnC,EAAyC;AAC/CstC,UAAM,EAAE,IADuC,EAAzC,CAAP;;AAGA;;AAED;;;AAGO,SAAS4nB,WAAT,GAAuB;AAC7B,SAAOhoB,iBAAQ/mC,GAAR,CAAY,sBAAZ,CAAP;AACA;AACD;;;AAGO,SAASgvD,UAAT,CAAoBn1D,IAApB,EAA0B;AAChC,SAAOktC,iBAAQ/mC,GAAR,CAAY,aAAZ,EAA2BnG,IAA3B,EAAiC;AACvCstC,UAAM,EAAE,IAD+B,EAAjC,CAAP;;AAGA;;AAED;;;;AAIO,SAAS8nB,aAAT,CAAuBp1D,IAAvB,EAA6B;AACnC,SAAOktC,iBAAQE,IAAR,CAAa,iBAAb,EAAgCptC,IAAhC,EAAsC;AAC5CstC,UAAM,EAAE,IADoC,EAAtC,CAAP;;AAGA;AACD;;;;AAIO,SAAS+nB,eAAT,CAAyBr1D,IAAzB,EAA+B;AACrC,SAAOktC,iBAAQ/mC,GAAR,CAAY,mBAAZ,EAAiC,EAAjC,EAAqC;AAC3CmnC,UAAM,EAAE,IADmC,EAArC,CAAP;;AAGA;;AAED;;;;AAIO,SAASgoB,UAAT,CAAoBt1D,IAApB,EAA0B;AAChC,SAAOktC,iBAAQ/mC,GAAR,CAAY,cAAZ,EAA4B,EAA5B,EAAgC;AACtCmnC,UAAM,EAAE,IAD8B,EAAhC,CAAP;;AAGA;;AAED;;;AAGO,SAASioB,iBAAT,GAA6B;AACnC,SAAOroB,iBAAQ/mC,GAAR,CAAY,WAAZ,EAAyB,EAAzB,EAA6B;AACnCmnC,UAAM,EAAE,IAD2B,EAA7B,CAAP;;AAGA,C;;;;;;;;;;;;;;;;;;;;;;AC9aD,yF,8FAVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA;;;GAIO,SAASkoB,SAAT,CAAmBx1D,IAAnB,EAAyB,CAC/B,OAAOktC,iBAAQE,IAAR,CAAa,OAAb,EAAsBptC,IAAtB,EAA4B,EAClCstC,MAAM,EAAE,IAD0B,EAElCmoB,IAAI,EAAE,IAF4B,EAA5B,CAAP,CAIA;AAED;;;;AAIO,SAASC,MAAT,CAAgB11D,IAAhB,EAAsB;AAC5B,SAAOktC,iBAAQ/mC,GAAR,CAAY,aAAZ,EAA2BnG,IAA3B,EAAiC;AACvCstC,UAAM,EAAE,IAD+B;AAEvCmoB,QAAI,EAAE,IAFiC,EAAjC,CAAP;;AAIA;;AAED;;;;AAIO,SAASE,WAAT,CAAqB31D,IAArB,EAA2B;AACjC,SAAOktC,iBAAQ/mC,GAAR,CAAY,qBAAZ,EAAmCnG,IAAnC,EAAyC;AAC/CstC,UAAM,EAAE,IADuC;AAE/CmoB,QAAI,EAAE,IAFyC,EAAzC,CAAP;;AAIA;;AAED;;;;AAIO,SAASG,YAAT,CAAsB51D,IAAtB,EAA4B;AAClC,SAAOktC,iBAAQ/mC,GAAR,CAAY,uBAAZ,EAAqCnG,IAArC,EAA2C;AACjDstC,UAAM,EAAE,IADyC;AAEjDmoB,QAAI,EAAE,IAF2C,EAA3C,CAAP;;AAIA;;AAED;;;;AAIO,SAASI,WAAT,CAAqBn6C,EAArB,EAAyB1b,IAAzB,EAA+B;AACrC,SAAOktC,iBAAQ/mC,GAAR,CAAY,kBAAkBuV,EAA9B,EAAkC1b,IAAlC,EAAwC;AAC9CstC,UAAM,EAAE,IADsC;AAE9CmoB,QAAI,EAAE,IAFwC,EAAxC,CAAP;;AAIA;;AAED;;;;AAIO,SAASK,UAAT,CAAoBp6C,EAApB,EAAwB1b,IAAxB,EAA8B;AACpC,SAAOktC,iBAAQ/mC,GAAR,CAAY,iBAAiBuV,EAA7B,EAAiC1b,IAAjC,EAAuC;AAC7CstC,UAAM,EAAE,IADqC;AAE7CmoB,QAAI,EAAE,IAFuC,EAAvC,CAAP;;AAIA;;AAED;;;;AAIO,SAASM,YAAT,CAAsBr6C,EAAtB,EAA0B1b,IAA1B,EAAgC;AACtC,SAAOktC,iBAAQ/mC,GAAR,CAAY,mBAAmBuV,EAA/B,EAAmC1b,IAAnC,EAAyC;AAC/CstC,UAAM,EAAE,IADuC;AAE/CmoB,QAAI,EAAE,IAFyC,EAAzC,CAAP;;AAIA;;AAED;;;;AAIO,SAASxlB,WAAT,CAAqBjwC,IAArB,EAA2B;AACjC,SAAOktC,iBAAQ/mC,GAAR,CAAY,cAAZ,EAA4BnG,IAA5B,EAAkC;AACxCstC,UAAM,EAAE,IADgC;AAExCmoB,QAAI,EAAE,IAFkC,EAAlC,CAAP;;AAIA;;AAED;;;;AAIO,SAASO,eAAT,CAAyBh2D,IAAzB,EAA+B;AACrC,SAAOktC,iBAAQE,IAAR,CAAa,kBAAb,EAAiCptC,IAAjC,EAAuC;AAC7CstC,UAAM,EAAE,IADqC;AAE7CmoB,QAAI,EAAE,IAFuC,EAAvC,CAAP;;AAIA;;AAED;;;;AAIO,SAASQ,WAAT,CAAqBj2D,IAArB,EAA2B;AACjC,SAAOktC,iBAAQ/mC,GAAR,CAAY,cAAZ,EAA4BnG,IAA5B,EAAkC;AACxCstC,UAAM,EAAE,IADgC;AAExCmoB,QAAI,EAAE,IAFkC,EAAlC,CAAP;;AAIA;;AAED;;;;AAIO,SAASS,eAAT,GAA2B;AACjC,SAAOhpB,iBAAQ/mC,GAAR,CAAY,uBAAZ,CAAP;AACA;;AAED;;;;AAIO,SAASgwD,YAAT,CAAsBn2D,IAAtB,EAA4B;AAClC,SAAOktC,iBAAQE,IAAR,CAAa,uBAAb,EAAsCptC,IAAtC,CAAP;AACA;;AAED;;;;AAIO,SAASo2D,UAAT,CAAoBp2D,IAApB,EAA0B;AAChC,SAAOktC,iBAAQ/mC,GAAR,CAAY,WAAZ,EAAyBnG,IAAzB,CAAP;AACA;AACD;;;;AAIO,SAASq2D,eAAT,CAAyBr2D,IAAzB,EAA+B;AACrC,SAAOktC,iBAAQ/mC,GAAR,CAAY,mBAAZ,EAAiC,EAAjC,EAAqC;AAC3CmnC,UAAM,EAAE,IADmC,EAArC,CAAP;;AAGA;;AAED;;;;AAIO,SAASgpB,aAAT,CAAuBt2D,IAAvB,EAA6B;AACnC,SAAOktC,iBAAQE,IAAR,CAAa,WAAb,EAA0BptC,IAA1B,CAAP;AACA,C;;;;;;;;;;;;;;;;;;;;;;ACvJD,yF,8FAVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA;;;GAIO,SAASu2D,aAAT,CAAuBC,OAAvB,EAAgC,CACtC,OAAOtpB,iBAAQ/mC,GAAR,CAAY,YAAZ,EAA0B,EAChCqwD,OAAO,EAAEA,OAAO,KAAK1pD,SAAZ,GAAwB,CAAxB,GAA4B0pD,OADL,EAA1B,CAAP,CAGA,C,CACD;;;qIAIO,SAASC,WAAT,CAAqBz2D,IAArB,EAA2B;AACjC,SAAOktC,iBAAQ/mC,GAAR,CAAY,WAAZ,EAAyBnG,IAAzB,CAAP;AACA;;AAED;;;;AAIO,SAAS02D,YAAT,CAAsB12D,IAAtB,EAA4B;AAClC,SAAOktC,iBAAQE,IAAR,CAAa,eAAb,EAA8BptC,IAA9B,CAAP;AACA;;AAED;;;;;AAKO,SAAS22D,aAAT,CAAuBC,MAAvB,EAA+BnzD,MAA/B,EAAuC;AAC7C,SAAOypC,iBAAQE,IAAR,CAAa,UAAb,EAAyB;AAC/B1xB,MAAE,EAAEk7C,MAD2B;AAE/BnzD,UAAM,EAAEA,MAFuB,EAAzB,CAAP;;AAIA;AACD;;;;AAIO,SAASozD,OAAT,CAAiBC,GAAjB,EAAsB;AAC5B,MAAI,OAAOA,GAAP,KAAe,QAAnB;AACCA,KAAG,GAAGA,GAAG,CAAC57D,IAAJ,CAAS,GAAT,CAAN;AACD,SAAOgyC,iBAAQE,IAAR,CAAa,UAAb,EAAyB;AAC/B0pB,OAAG,EAAEA,GAD0B,EAAzB,CAAP;;AAGA;AACD;;;;AAIO,SAASC,YAAT,CAAsB/2D,IAAtB,EAA4B;AAClC,SAAOktC,iBAAQ/mC,GAAR,CAAY,YAAZ,EAA0BnG,IAA1B,CAAP;AACA;;AAED;;;;AAIO,SAASg3D,YAAT,CAAsBC,MAAtB,EAA8B;AACpC,SAAO/pB,iBAAQE,IAAR,CAAa,eAAb,EAA8B;AACpC6pB,UAAM,EAAEA,MAD4B,EAA9B,CAAP;;AAGA;;AAED;;;;;AAKO,SAASC,YAAT,CAAsBl3D,IAAtB,EAA4B;AAClC,SAAOktC,iBAAQE,IAAR,CAAa,eAAb,EAA8BptC,IAA9B,CAAP;AACA;;AAED;;;;AAIO,SAASm3D,QAAT,CAAkBn3D,IAAlB,EAAwB;AAC9B,SAAOktC,iBAAQE,IAAR,CAAa,WAAb,EAA0BptC,IAA1B,CAAP;AACA;;AAED;;;;;AAKO,SAASo3D,cAAT,CAAwBl1C,GAAxB,EAA6B;AACnC,SAAOgrB,iBAAQ/mC,GAAR,CAAY,sBAAsB+b,GAAlC,EAAuC,EAAvC,CAAP;AACA;;AAED;;;AAGO,SAASm1C,SAAT,GAAqB;AAC3B,SAAOnqB,iBAAQ/mC,GAAR,CAAY,YAAZ,CAAP;AACA;;AAED;;;;;AAKO,SAASmxD,WAAT,CAAqB57C,EAArB,EAAyB;AAC/B,SAAOwxB,iBAAQE,IAAR,CAAa,cAAb,EAA6B;AACnC1xB,MAAE,EAAEA,EAD+B,EAA7B,CAAP;;AAGA;;AAED;;;;;AAKO,SAAS67C,QAAT,CAAkBr1C,GAAlB,EAAuB;AAC7B,SAAOgrB,iBAAQE,IAAR,CAAa,WAAb,EAA0B;AAChClrB,OAAG,EAAEA,GAD2B,EAA1B,CAAP;;AAGA;;AAED;;;;AAIO,SAASs1C,cAAT,CAAwBt1C,GAAxB,EAA6Bu1C,OAA7B,EAAsC;AAC5C,SAAOvqB,iBAAQ/mC,GAAR,CAAY,kBAAkB+b,GAAlB,aAA2Bu1C,OAAO,cAAOA,OAAP,IAAiB,EAAnD,CAAZ,CAAP;AACA;AACD;;;;AAIO,SAASC,oBAAT,CAA8Bx1C,GAA9B,EAAmCu1C,OAAnC,EAA4C;AAClD,SAAOvqB,iBAAQ/mC,GAAR,CAAY,yBAAyB+b,GAAzB,aAAkCu1C,OAAO,cAAOA,OAAP,IAAiB,EAA1D,CAAZ,CAAP;AACA;;AAED;;;;;AAKO,SAASE,UAAT,CAAoBz1C,GAApB,EAAyB;AAC/B,SAAOgrB,iBAAQE,IAAR,CAAa,aAAb,EAA4B;AAClClrB,OAAG,EAAEA,GAD6B,EAA5B,CAAP;;AAGA;;AAED;;;;;AAKO,SAAS01C,SAAT,CAAmB11C,GAAnB,EAAwB;AAC9B,SAAOgrB,iBAAQE,IAAR,CAAa,YAAb,EAA2B;AACjClrB,OAAG,EAAEA,GAD4B,EAA3B,CAAP;;AAGA;;AAED;;;;AAIO,SAAS21C,OAAT,CAAiB31C,GAAjB,EAAsBpQ,IAAtB,EAA4B;AAClC,SAAOo7B,iBAAQ/mC,GAAR,CAAY,mBAAmB+b,GAAnB,aAA4BpQ,IAAI,GAAC,SAAD,GAAW,EAA3C,CAAZ,CAAP;AACA;;AAED;;;;AAIO,SAASgmD,gBAAT,GAA4B;AAClC,SAAO5qB,iBAAQ/mC,GAAR,CAAY,qBAAZ,CAAP;AACA;;AAED;;;;AAIO,SAAS4xD,iBAAT,CAA2B/3D,IAA3B,EAAiC;AACvC,SAAOktC,iBAAQE,IAAR,CAAa,qBAAb,EAAoCptC,IAApC,CAAP;AACA;;AAED;;;;AAIO,SAASg4D,YAAT,CAAsBpB,MAAtB,EAA8BqB,IAA9B,EAAoCC,SAApC,EAA+CC,aAA/C,EAA8D;AACpE,SAAOjrB,iBAAQE,IAAR,CAAa,eAAb,EAA8B;AACpCwpB,UAAM,EAANA,MADoC;AAEpC,WAAOqB,IAF6B;AAGpCC,aAAS,EAATA,SAHoC;AAIpCC,iBAAa,EAAbA,aAJoC,EAA9B,CAAP;;AAMA;;AAED;;;;AAIO,SAASC,aAAT,CAAuBxB,MAAvB,EAA+BqB,IAA/B,EAAqC;AAC3C,SAAO/qB,iBAAQE,IAAR,CAAa,sBAAb,EAAqC;AAC3CwpB,UAAM,EAANA,MAD2C;AAE3C,WAAOqB,IAFoC,EAArC,CAAP;;AAIA;;AAED;;;;;AAKO,SAASI,oBAAT,CAA8BC,KAA9B,EAAqCt4D,IAArC,EAA2C;AACjD,SAAOktC,iBAAQ/mC,GAAR,CAAY,mBAAmBmyD,KAA/B,EAAsCt4D,IAAtC,CAAP;AACA;;AAED;;;;;;AAMO,SAASu4D,WAAT,CAAqBh7D,GAArB,EAA0ByC,IAA1B,EAAgC;AACtC,SAAOktC,iBAAQE,IAAR,CAAa,kBAAkB7vC,GAA/B,EAAoCyC,IAApC,CAAP;AACA;;AAED;;;;;;AAMO,SAASw4D,iBAAT,CAA2Bj7D,GAA3B,EAAgCyC,IAAhC,EAAsC;AAC5C,SAAOktC,iBAAQE,IAAR,CAAa,oBAAoB7vC,GAAjC,EAAsCyC,IAAtC,CAAP;AACA;;AAED;;;;;;AAMO,SAASy4D,WAAT,CAAqB3Z,OAArB,EAA8B;AACpC,SAAO5R,iBAAQE,IAAR,CAAa,6BAA6B0R,OAA1C,CAAP;AACA;;AAED;;;;AAIO,SAAS4Z,iBAAT,CAA2B14D,IAA3B,EAAiC;AACvC,SAAOktC,iBAAQE,IAAR,CAAa,2BAAb,EAA0CptC,IAA1C,CAAP;AACA;;AAED;;;;AAIO,SAAS24D,aAAT,CAAuB34D,IAAvB,EAA6B;AACnC,SAAOktC,iBAAQE,IAAR,CAAa,sBAAb,EAAqCptC,IAArC,CAAP;AACA;;AAED;;;AAGO,SAAS44D,mBAAT,GAA+B;AACrC,SAAO1rB,iBAAQ/mC,GAAR,CAAY,wBAAZ,CAAP;AACA;;AAED;;;AAGO,SAAS0yD,gBAAT,CAA0B74D,IAA1B,EAAgC;AACtC,SAAOktC,iBAAQ/mC,GAAR,CAAY,uBAAZ,EAAqCnG,IAArC,CAAP;AACA;;AAED;;;;AAIO,SAAS84D,kBAAT,CAA4Bp9C,EAA5B,EAAgC;AACtC,SAAOwxB,iBAAQ/mC,GAAR,mCAAuCuV,EAAvC,EAAP;AACA;;;AAGD;;;;;AAKO,SAASq9C,MAAT,CAAgBx7D,GAAhB,EAAqBy7D,OAArB,EAA8B;AACpC,SAAO9rB,iBAAQ/mC,GAAR,CAAY,SAAZ,EAAuB;AAC7B5I,OAAG,EAAHA,GAD6B;AAE7By7D,WAAO,EAAPA,OAF6B,EAAvB;AAGJ;AACF1rB,UAAM,EAAE,IADN,EAHI,CAAP;;AAMA;;;AAGD;;;;AAIO,SAAS2rB,aAAT,CAAuBj5D,IAAvB,EAA6B;AACnC,SAAOktC,iBAAQE,IAAR,CAAa,sBAAb,EAAqCptC,IAArC,CAAP;AACA;;AAED;;;AAGO,SAASk5D,SAAT,GAAqB;AAC3B,SAAOhsB,iBAAQ/mC,GAAR,CAAY,cAAZ,CAAP;AACA;;AAED;;;AAGO,SAASgzD,eAAT,CAAyBra,OAAzB,EAAkC;AACxC,SAAO5R,iBAAQ/mC,GAAR,kCAAsC24C,OAAtC,EAAP;AACA;;AAED;;;AAGO,SAASsa,eAAT,CAAyBp5D,IAAzB,EAA+B;AACrC,SAAOktC,iBAAQE,IAAR,2BAAuCptC,IAAvC,CAAP;AACA;;AAED;;;AAGO,SAASq5D,iBAAT,CAA2B39C,EAA3B,EAA+B1b,IAA/B,EAAqC;AAC3C,SAAOktC,iBAAQE,IAAR,8BAAmC1xB,EAAnC,GAAyC1b,IAAzC,CAAP;AACA;;AAED;;;;AAIO,SAASs5D,eAAT,CAAyBt5D,IAAzB,EAA+B;AACrC,SAAOktC,iBAAQ/mC,GAAR,CAAY,mBAAZ,EAAiCnG,IAAjC,CAAP;AACA;;AAED;;;;AAIO,SAASu5D,iBAAT,CAA2Br3C,GAA3B,EAAgC;AACtC,SAAOgrB,iBAAQ/mC,GAAR,CAAY,yBAAyB+b,GAArC,CAAP;AACA;;AAED;;;;AAIO,SAASs3C,iBAAT,CAA2Bt3C,GAA3B,EAAgC;AACtC,SAAOgrB,iBAAQE,IAAR,CAAa,yBAAyBlrB,GAAtC,CAAP;AACA,C;;;;;;;;;;;;mIChXD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEe;AACdliB,MADc,kBACP;AACN,WAAO;AACNy5D,gBAAU,EAAE,EADN;AAENC,iBAAW,EAAE,EAFP,EAAP;;AAIA,GANa;AAOdC,SAPc,qBAOJ;AACT,SAAKF,UAAL,GAAkBv3C,GAAG,CAAC5mB,cAAJ,CAAmB,WAAnB,CAAlB;AACA4mB,OAAG,CAACnR,GAAJ,CAAQ,IAAR,EAAc,UAAC/Q,IAAD,EAAO23B,MAAP,EAAkB;AAC/B,WAAI,CAAC8hC,UAAL,GAAkBz5D,IAAlB;AACA,WAAI,CAAC05D,WAAL,GAAmB/hC,MAAnB;AACA,KAHD;AAIA,GAba;AAcdpyB,SAAO,EAAE,EAdK,E;;;;;;;;;;;;;wFCVf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEe;AACbvF,MADa,kBACN;AACL,WAAO;AACL8jB,cAAQ,EAAE,KADL;AAELM,UAAI,EAAE,KAAKw1C,EAAL,CAAQ,KAAR,CAFD,EAAP;;AAID,GANY;AAObr0D,SAAO,EAAE;AACPs0D,YADO,sBACI;AACT,UAAI,KAAK/1C,QAAT,EAAmB;AACnB,WAAKA,QAAL,GAAgB,IAAhB;AACA,UAAIsL,CAAC,GAAG,EAAR;AACA,WAAKhL,IAAL,GAAY,KAAKw1C,EAAL,CAAQ,IAAR,IAAgBxqC,CAAhB,GAAoB,GAAhC;AACA,UAAM0qC,GAAG,GAAGC,WAAW,CAAC,YAAM;AAC5B3qC,SAAC,GAAGA,CAAC,GAAG,CAAR;AACA,YAAIA,CAAC,GAAG,CAAR,EAAW;AACTwG,uBAAa,CAACkkC,GAAD,CAAb;AACD;AACD,aAAI,CAAC11C,IAAL,GAAY,KAAI,CAACw1C,EAAL,CAAQ,IAAR,IAAgBxqC,CAAhB,GAAoB,GAAhC;AACA,YAAI,KAAI,CAAChL,IAAL,GAAY,KAAI,CAACw1C,EAAL,CAAQ,IAAR,IAAgB,CAAhB,GAAoB,GAApC,EAAyC;AACvC,eAAI,CAAC91C,QAAL,GAAgB,KAAhB;AACA,eAAI,CAACM,IAAL,GAAY,KAAI,CAACw1C,EAAL,CAAQ,MAAR,CAAZ;AACD;AACF,OAVsB,EAUpB,IAVoB,CAAvB;AAWD,KAjBM,EAPI,E;;;;;;;;;;;;;;;;;;;;;;;ACVf;AAAA;AAAA;;AAEA;AACA;AACA;;AAEe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,qBAAqB;AACrB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;ACxGA;;;;AAIA;AACA;AACA,0E;;;;;;AAMe;AACd;;;;;;;;;;;;;AAaAI,MAAI,EAAE,cAAS9vB,GAAT,EAAc+vB,MAAd,EAAsB;AAC3B,QAAI,OAAO/vB,GAAP,IAAc,QAAlB,EAA4B;AAC3B+vB,YAAM,GAAG/vB,GAAT;AACAA,SAAG,GAAG,EAAN;AACA;AACD,QAAI/7B,KAAK,GAAG+7B,GAAG,CAAC/7B,KAAJ,IAAa,EAAzB;AACC8V,QAAI,GAAGimB,GAAG,CAACjmB,IAAJ,IAAY,MADpB;AAECi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CxE;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,mBAAmB,UAAU;AAC7B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,YAAY;AAC7B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0BAA0B;AAC1B;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,uCAAuC,SAAS;AAChD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,iBAAiB;AAChC;AACA;AACA;;AAEA;AACA;AACA,aAAa,iBAAiB;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,gDAAgD,EAAE;AAClD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC;AACzC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA,wBAAwB,eAAe;AACvC;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,wBAAwB,QAAQ;AAChC;AACA,qBAAqB,eAAe;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,YAAY;AAC7B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,mBAAmB,cAAc;AACjC;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,uDAAuD,OAAO;AAC9D;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA,uDAAuD,OAAO;AAC9D;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,kBAAkB;AAClB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,qBAAqB,QAAQ;AAC7B;AACA;AACA,GAAG;AACH;AACA,eAAe,SAAS;AACxB;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,mBAAmB,SAAS;AAC5B;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,eAAe,iBAAiB;AAChC;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,YAAY;AAC7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,iBAAiB,gBAAgB;AACjC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,gBAAgB;AACjC;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,iBAAiB,YAAY;AAC7B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;;;;AC5vDY;;AAEZ;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,kCAAkC,SAAS;AAC3C;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,aAAa,SAAS;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0CAA0C,UAAU;AACpD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;;ACvJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,QAAQ,WAAW;;AAEnB;AACA;AACA;AACA,QAAQ,WAAW;;AAEnB;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA,QAAQ,WAAW;;AAEnB;AACA;AACA,QAAQ,UAAU;;AAElB;AACA;;;;;;;;;;;;;;;;;;;;;;AC1EA;;;AAGA;;;AAGA,oF,8FAfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA,I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sB,GAAGlD,IAAzB;AACD,C;;;AAGc;AACboB,OAAK,EAALA,KADa;AAEbpc,MAAI,EAAJA,IAFa;AAGbqf,OAAK,EAALA,KAHa;AAIbC,QAAM,EAANA,MAJa;AAKbn9C,OAAK,EAALA,KALa;AAMbq9C,wBAAsB,EAAtBA,sBANa,E;;;;;;;;;;;;wFC9Jf;AACA,IAAMt3E,OAAO,GAAG,QAAhB;;AAEA;AACA,IAAImB,IAAJ,EAA4C;AAC3C2D,SAAO,CAACyyE,GAAR,wBAA4Bv3E,OAA5B,oCAAoE,yEAApE;AACA,C;;AAEc;AACXnE,GAAC,EAAEmE,OADQ;AAEXA,SAAO,EAAPA,OAFW;AAGX;AACAsH,MAAI,EAAE;AACF,WADE;AAEF,WAFE;AAGF,QAHE;AAIF,SAJE;AAKF,WALE,CAJK;;AAWX;AACAgR,OAAK,EAAE;AACH,iBAAa,SADV;AAEH,iBAAa,SAFV;AAGH,iBAAa,SAHV;AAIH,eAAW,SAJR;AAKH,cAAU,SALP;AAMH,oBAAgB,SANb;AAOH,uBAAmB,SAPhB;AAQH,oBAAgB,SARb;AASH,qBAAiB,SATd,EAZI;;AAuBd;AACAyqD,MAAI,EAAE,IAxBQ,E;;;;;;;;;;;;;;;;;ACHf;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qF;;;AAGIzqD,K;AACA2F,e,CADA3F,K;;;AAIGk/D,oB;AACAC,c;AACAC,c;AACAt6C,e;AACAu6C,oB;AACA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","file":"common/vendor.js","sourcesContent":["import { initVueI18n } from '@dcloudio/uni-i18n';\r\nimport Vue from 'vue';\r\n\r\nlet realAtob;\r\n\r\nconst b64 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\r\nconst b64re = /^(?:[A-Za-z\\d+/]{4})*?(?:[A-Za-z\\d+/]{2}(?:==)?|[A-Za-z\\d+/]{3}=?)?$/;\r\n\r\nif (typeof atob !== 'function') {\r\n realAtob = function (str) {\r\n str = String(str).replace(/[\\t\\n\\f\\r ]+/g, '');\r\n if (!b64re.test(str)) { throw new Error(\"Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded.\") }\r\n\r\n // Adding the padding if missing, for semplicity\r\n str += '=='.slice(2 - (str.length & 3));\r\n var bitmap; var result = ''; var r1; var r2; var i = 0;\r\n for (; i < str.length;) {\r\n bitmap = b64.indexOf(str.charAt(i++)) << 18 | b64.indexOf(str.charAt(i++)) << 12 |\r\n (r1 = b64.indexOf(str.charAt(i++))) << 6 | (r2 = b64.indexOf(str.charAt(i++)));\r\n\r\n result += r1 === 64 ? String.fromCharCode(bitmap >> 16 & 255)\r\n : r2 === 64 ? String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255)\r\n : String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255, bitmap & 255);\r\n }\r\n return result\r\n };\r\n} else {\r\n // 注意atob只能在全局对象上调用,例如:`const Base64 = {atob};Base64.atob('xxxx')`是错误的用法\r\n realAtob = atob;\r\n}\r\n\r\nfunction b64DecodeUnicode (str) {\r\n return decodeURIComponent(realAtob(str).split('').map(function (c) {\r\n return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2)\r\n }).join(''))\r\n}\r\n\r\nfunction getCurrentUserInfo () {\r\n const token = ( wx).getStorageSync('uni_id_token') || '';\r\n const tokenArr = token.split('.');\r\n if (!token || tokenArr.length !== 3) {\r\n return {\r\n uid: null,\r\n role: [],\r\n permission: [],\r\n tokenExpired: 0\r\n }\r\n }\r\n let userInfo;\r\n try {\r\n userInfo = JSON.parse(b64DecodeUnicode(tokenArr[1]));\r\n } catch (error) {\r\n throw new Error('获取当前用户信息出错,详细错误信息为:' + error.message)\r\n }\r\n userInfo.tokenExpired = userInfo.exp * 1000;\r\n delete userInfo.exp;\r\n delete userInfo.iat;\r\n return userInfo\r\n}\r\n\r\nfunction uniIdMixin (Vue) {\r\n Vue.prototype.uniIDHasRole = function (roleId) {\r\n const {\r\n role\r\n } = getCurrentUserInfo();\r\n return role.indexOf(roleId) > -1\r\n };\r\n Vue.prototype.uniIDHasPermission = function (permissionId) {\r\n const {\r\n permission\r\n } = getCurrentUserInfo();\r\n return this.uniIDHasRole('admin') || permission.indexOf(permissionId) > -1\r\n };\r\n Vue.prototype.uniIDTokenValid = function () {\r\n const {\r\n tokenExpired\r\n } = getCurrentUserInfo();\r\n return tokenExpired > Date.now()\r\n };\r\n}\r\n\r\nconst _toString = Object.prototype.toString;\r\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\r\n\r\nfunction isFn (fn) {\r\n return typeof fn === 'function'\r\n}\r\n\r\nfunction isStr (str) {\r\n return typeof str === 'string'\r\n}\r\n\r\nfunction isPlainObject (obj) {\r\n return _toString.call(obj) === '[object Object]'\r\n}\r\n\r\nfunction hasOwn (obj, key) {\r\n return hasOwnProperty.call(obj, key)\r\n}\r\n\r\nfunction noop () { }\r\n\r\n/**\r\n * Create a cached version of a pure function.\r\n */\r\nfunction cached (fn) {\r\n const cache = Object.create(null);\r\n return function cachedFn (str) {\r\n const hit = cache[str];\r\n return hit || (cache[str] = fn(str))\r\n }\r\n}\r\n\r\n/**\r\n * Camelize a hyphen-delimited string.\r\n */\r\nconst camelizeRE = /-(\\w)/g;\r\nconst camelize = cached((str) => {\r\n return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '')\r\n});\r\n\r\nfunction sortObject (obj) {\r\n const sortObj = {};\r\n if (isPlainObject(obj)) {\r\n Object.keys(obj).sort().forEach(key => {\r\n sortObj[key] = obj[key];\r\n });\r\n }\r\n return !Object.keys(sortObj) ? obj : sortObj\r\n}\r\n\r\nconst HOOKS = [\r\n 'invoke',\r\n 'success',\r\n 'fail',\r\n 'complete',\r\n 'returnValue'\r\n];\r\n\r\nconst globalInterceptors = {};\r\nconst scopedInterceptors = {};\r\n\r\nfunction mergeHook (parentVal, childVal) {\r\n const res = childVal\r\n ? parentVal\r\n ? parentVal.concat(childVal)\r\n : Array.isArray(childVal)\r\n ? childVal : [childVal]\r\n : parentVal;\r\n return res\r\n ? dedupeHooks(res)\r\n : res\r\n}\r\n\r\nfunction dedupeHooks (hooks) {\r\n const res = [];\r\n for (let i = 0; i < hooks.length; i++) {\r\n if (res.indexOf(hooks[i]) === -1) {\r\n res.push(hooks[i]);\r\n }\r\n }\r\n return res\r\n}\r\n\r\nfunction removeHook (hooks, hook) {\r\n const index = hooks.indexOf(hook);\r\n if (index !== -1) {\r\n hooks.splice(index, 1);\r\n }\r\n}\r\n\r\nfunction mergeInterceptorHook (interceptor, option) {\r\n Object.keys(option).forEach(hook => {\r\n if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {\r\n interceptor[hook] = mergeHook(interceptor[hook], option[hook]);\r\n }\r\n });\r\n}\r\n\r\nfunction removeInterceptorHook (interceptor, option) {\r\n if (!interceptor || !option) {\r\n return\r\n }\r\n Object.keys(option).forEach(hook => {\r\n if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {\r\n removeHook(interceptor[hook], option[hook]);\r\n }\r\n });\r\n}\r\n\r\nfunction addInterceptor (method, option) {\r\n if (typeof method === 'string' && isPlainObject(option)) {\r\n mergeInterceptorHook(scopedInterceptors[method] || (scopedInterceptors[method] = {}), option);\r\n } else if (isPlainObject(method)) {\r\n mergeInterceptorHook(globalInterceptors, method);\r\n }\r\n}\r\n\r\nfunction removeInterceptor (method, option) {\r\n if (typeof method === 'string') {\r\n if (isPlainObject(option)) {\r\n removeInterceptorHook(scopedInterceptors[method], option);\r\n } else {\r\n delete scopedInterceptors[method];\r\n }\r\n } else if (isPlainObject(method)) {\r\n removeInterceptorHook(globalInterceptors, method);\r\n }\r\n}\r\n\r\nfunction wrapperHook (hook) {\r\n return function (data) {\r\n return hook(data) || data\r\n }\r\n}\r\n\r\nfunction isPromise (obj) {\r\n return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function'\r\n}\r\n\r\nfunction queue (hooks, data) {\r\n let promise = false;\r\n for (let i = 0; i < hooks.length; i++) {\r\n const hook = hooks[i];\r\n if (promise) {\r\n promise = Promise.resolve(wrapperHook(hook));\r\n } else {\r\n const res = hook(data);\r\n if (isPromise(res)) {\r\n promise = Promise.resolve(res);\r\n }\r\n if (res === false) {\r\n return {\r\n then () { }\r\n }\r\n }\r\n }\r\n }\r\n return promise || {\r\n then (callback) {\r\n return callback(data)\r\n }\r\n }\r\n}\r\n\r\nfunction wrapperOptions (interceptor, options = {}) {\r\n ['success', 'fail', 'complete'].forEach(name => {\r\n if (Array.isArray(interceptor[name])) {\r\n const oldCallback = options[name];\r\n options[name] = function callbackInterceptor (res) {\r\n queue(interceptor[name], res).then((res) => {\r\n /* eslint-disable no-mixed-operators */\r\n return isFn(oldCallback) && oldCallback(res) || res\r\n });\r\n };\r\n }\r\n });\r\n return options\r\n}\r\n\r\nfunction wrapperReturnValue (method, returnValue) {\r\n const returnValueHooks = [];\r\n if (Array.isArray(globalInterceptors.returnValue)) {\r\n returnValueHooks.push(...globalInterceptors.returnValue);\r\n }\r\n const interceptor = scopedInterceptors[method];\r\n if (interceptor && Array.isArray(interceptor.returnValue)) {\r\n returnValueHooks.push(...interceptor.returnValue);\r\n }\r\n returnValueHooks.forEach(hook => {\r\n returnValue = hook(returnValue) || returnValue;\r\n });\r\n return returnValue\r\n}\r\n\r\nfunction getApiInterceptorHooks (method) {\r\n const interceptor = Object.create(null);\r\n Object.keys(globalInterceptors).forEach(hook => {\r\n if (hook !== 'returnValue') {\r\n interceptor[hook] = globalInterceptors[hook].slice();\r\n }\r\n });\r\n const scopedInterceptor = scopedInterceptors[method];\r\n if (scopedInterceptor) {\r\n Object.keys(scopedInterceptor).forEach(hook => {\r\n if (hook !== 'returnValue') {\r\n interceptor[hook] = (interceptor[hook] || []).concat(scopedInterceptor[hook]);\r\n }\r\n });\r\n }\r\n return interceptor\r\n}\r\n\r\nfunction invokeApi (method, api, options, ...params) {\r\n const interceptor = getApiInterceptorHooks(method);\r\n if (interceptor && Object.keys(interceptor).length) {\r\n if (Array.isArray(interceptor.invoke)) {\r\n const res = queue(interceptor.invoke, options);\r\n return res.then((options) => {\r\n return api(wrapperOptions(interceptor, options), ...params)\r\n })\r\n } else {\r\n return api(wrapperOptions(interceptor, options), ...params)\r\n }\r\n }\r\n return api(options, ...params)\r\n}\r\n\r\nconst promiseInterceptor = {\r\n returnValue (res) {\r\n if (!isPromise(res)) {\r\n return res\r\n }\r\n return new Promise((resolve, reject) => {\r\n res.then(res => {\r\n if (res[0]) {\r\n reject(res[0]);\r\n } else {\r\n resolve(res[1]);\r\n }\r\n });\r\n })\r\n }\r\n};\r\n\r\nconst SYNC_API_RE =\r\n /^\\$|Window$|WindowStyle$|sendHostEvent|sendNativeEvent|restoreGlobal|requireGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64|getLocale|setLocale|invokePushCallback|getWindowInfo|getDeviceInfo|getAppBaseInfo|getSystemSetting|getAppAuthorizeSetting/;\r\n\r\nconst CONTEXT_API_RE = /^create|Manager$/;\r\n\r\n// Context例外情况\r\nconst CONTEXT_API_RE_EXC = ['createBLEConnection'];\r\n\r\n// 同步例外情况\r\nconst ASYNC_API = ['createBLEConnection', 'createPushMessage'];\r\n\r\nconst CALLBACK_API_RE = /^on|^off/;\r\n\r\nfunction isContextApi (name) {\r\n return CONTEXT_API_RE.test(name) && CONTEXT_API_RE_EXC.indexOf(name) === -1\r\n}\r\nfunction isSyncApi (name) {\r\n return SYNC_API_RE.test(name) && ASYNC_API.indexOf(name) === -1\r\n}\r\n\r\nfunction isCallbackApi (name) {\r\n return CALLBACK_API_RE.test(name) && name !== 'onPush'\r\n}\r\n\r\nfunction handlePromise (promise) {\r\n return promise.then(data => {\r\n return [null, data]\r\n })\r\n .catch(err => [err])\r\n}\r\n\r\nfunction shouldPromise (name) {\r\n if (\r\n isContextApi(name) ||\r\n isSyncApi(name) ||\r\n isCallbackApi(name)\r\n ) {\r\n return false\r\n }\r\n return true\r\n}\r\n\r\n/* eslint-disable no-extend-native */\r\nif (!Promise.prototype.finally) {\r\n Promise.prototype.finally = function (callback) {\r\n const promise = this.constructor;\r\n return this.then(\r\n value => promise.resolve(callback()).then(() => value),\r\n reason => promise.resolve(callback()).then(() => {\r\n throw reason\r\n })\r\n )\r\n };\r\n}\r\n\r\nfunction promisify (name, api) {\r\n if (!shouldPromise(name)) {\r\n return api\r\n }\r\n return function promiseApi (options = {}, ...params) {\r\n if (isFn(options.success) || isFn(options.fail) || isFn(options.complete)) {\r\n return wrapperReturnValue(name, invokeApi(name, api, options, ...params))\r\n }\r\n return wrapperReturnValue(name, handlePromise(new Promise((resolve, reject) => {\r\n invokeApi(name, api, Object.assign({}, options, {\r\n success: resolve,\r\n fail: reject\r\n }), ...params);\r\n })))\r\n }\r\n}\r\n\r\nconst EPS = 1e-4;\r\nconst BASE_DEVICE_WIDTH = 750;\r\nlet isIOS = false;\r\nlet deviceWidth = 0;\r\nlet deviceDPR = 0;\r\n\r\nfunction checkDeviceWidth () {\r\n const {\r\n platform,\r\n pixelRatio,\r\n windowWidth\r\n } = wx.getSystemInfoSync(); // uni=>wx runtime 编译目标是 uni 对象,内部不允许直接使用 uni\r\n\r\n deviceWidth = windowWidth;\r\n deviceDPR = pixelRatio;\r\n isIOS = platform === 'ios';\r\n}\r\n\r\nfunction upx2px (number, newDeviceWidth) {\r\n if (deviceWidth === 0) {\r\n checkDeviceWidth();\r\n }\r\n\r\n number = Number(number);\r\n if (number === 0) {\r\n return 0\r\n }\r\n let result = (number / BASE_DEVICE_WIDTH) * (newDeviceWidth || deviceWidth);\r\n if (result < 0) {\r\n result = -result;\r\n }\r\n result = Math.floor(result + EPS);\r\n if (result === 0) {\r\n if (deviceDPR === 1 || !isIOS) {\r\n result = 1;\r\n } else {\r\n result = 0.5;\r\n }\r\n }\r\n return number < 0 ? -result : result\r\n}\r\n\r\nconst LOCALE_ZH_HANS = 'zh-Hans';\r\nconst LOCALE_ZH_HANT = 'zh-Hant';\r\nconst LOCALE_EN = 'en';\r\nconst LOCALE_FR = 'fr';\r\nconst LOCALE_ES = 'es';\r\n\r\nconst messages = {};\r\n\r\nlet locale;\r\n\r\n{\r\n locale = normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN;\r\n}\r\n\r\nfunction initI18nMessages () {\r\n if (!isEnableLocale()) {\r\n return\r\n }\r\n const localeKeys = Object.keys(__uniConfig.locales);\r\n if (localeKeys.length) {\r\n localeKeys.forEach((locale) => {\r\n const curMessages = messages[locale];\r\n const userMessages = __uniConfig.locales[locale];\r\n if (curMessages) {\r\n Object.assign(curMessages, userMessages);\r\n } else {\r\n messages[locale] = userMessages;\r\n }\r\n });\r\n }\r\n}\r\n\r\ninitI18nMessages();\r\n\r\nconst i18n = initVueI18n(\r\n locale,\r\n {}\r\n);\r\nconst t = i18n.t;\r\nconst i18nMixin = (i18n.mixin = {\r\n beforeCreate () {\r\n const unwatch = i18n.i18n.watchLocale(() => {\r\n this.$forceUpdate();\r\n });\r\n this.$once('hook:beforeDestroy', function () {\r\n unwatch();\r\n });\r\n },\r\n methods: {\r\n $$t (key, values) {\r\n return t(key, values)\r\n }\r\n }\r\n});\r\nconst setLocale = i18n.setLocale;\r\nconst getLocale = i18n.getLocale;\r\n\r\nfunction initAppLocale (Vue, appVm, locale) {\r\n const state = Vue.observable({\r\n locale: locale || i18n.getLocale()\r\n });\r\n const localeWatchers = [];\r\n appVm.$watchLocale = fn => {\r\n localeWatchers.push(fn);\r\n };\r\n Object.defineProperty(appVm, '$locale', {\r\n get () {\r\n return state.locale\r\n },\r\n set (v) {\r\n state.locale = v;\r\n localeWatchers.forEach(watch => watch(v));\r\n }\r\n });\r\n}\r\n\r\nfunction isEnableLocale () {\r\n return typeof __uniConfig !== 'undefined' && __uniConfig.locales && !!Object.keys(__uniConfig.locales).length\r\n}\r\n\r\nfunction include (str, parts) {\r\n return !!parts.find((part) => str.indexOf(part) !== -1)\r\n}\r\n\r\nfunction startsWith (str, parts) {\r\n return parts.find((part) => str.indexOf(part) === 0)\r\n}\r\n\r\nfunction normalizeLocale (locale, messages) {\r\n if (!locale) {\r\n return\r\n }\r\n locale = locale.trim().replace(/_/g, '-');\r\n if (messages && messages[locale]) {\r\n return locale\r\n }\r\n locale = locale.toLowerCase();\r\n if (locale === 'chinese') {\r\n // 支付宝\r\n return LOCALE_ZH_HANS\r\n }\r\n if (locale.indexOf('zh') === 0) {\r\n if (locale.indexOf('-hans') > -1) {\r\n return LOCALE_ZH_HANS\r\n }\r\n if (locale.indexOf('-hant') > -1) {\r\n return LOCALE_ZH_HANT\r\n }\r\n if (include(locale, ['-tw', '-hk', '-mo', '-cht'])) {\r\n return LOCALE_ZH_HANT\r\n }\r\n return LOCALE_ZH_HANS\r\n }\r\n const lang = startsWith(locale, [LOCALE_EN, LOCALE_FR, LOCALE_ES]);\r\n if (lang) {\r\n return lang\r\n }\r\n}\r\n// export function initI18n() {\r\n// const localeKeys = Object.keys(__uniConfig.locales || {})\r\n// if (localeKeys.length) {\r\n// localeKeys.forEach((locale) =>\r\n// i18n.add(locale, __uniConfig.locales[locale])\r\n// )\r\n// }\r\n// }\r\n\r\nfunction getLocale$1 () {\r\n // 优先使用 $locale\r\n const app = getApp({\r\n allowDefault: true\r\n });\r\n if (app && app.$vm) {\r\n return app.$vm.$locale\r\n }\r\n return normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN\r\n}\r\n\r\nfunction setLocale$1 (locale) {\r\n const app = getApp();\r\n if (!app) {\r\n return false\r\n }\r\n const oldLocale = app.$vm.$locale;\r\n if (oldLocale !== locale) {\r\n app.$vm.$locale = locale;\r\n onLocaleChangeCallbacks.forEach((fn) => fn({\r\n locale\r\n }));\r\n return true\r\n }\r\n return false\r\n}\r\n\r\nconst onLocaleChangeCallbacks = [];\r\nfunction onLocaleChange (fn) {\r\n if (onLocaleChangeCallbacks.indexOf(fn) === -1) {\r\n onLocaleChangeCallbacks.push(fn);\r\n }\r\n}\r\n\r\nif (typeof global !== 'undefined') {\r\n global.getLocale = getLocale$1;\r\n}\r\n\r\nconst interceptors = {\r\n promiseInterceptor\r\n};\r\n\r\nvar baseApi = /*#__PURE__*/Object.freeze({\r\n __proto__: null,\r\n upx2px: upx2px,\r\n getLocale: getLocale$1,\r\n setLocale: setLocale$1,\r\n onLocaleChange: onLocaleChange,\r\n addInterceptor: addInterceptor,\r\n removeInterceptor: removeInterceptor,\r\n interceptors: interceptors\r\n});\r\n\r\nfunction findExistsPageIndex (url) {\r\n const pages = getCurrentPages();\r\n let len = pages.length;\r\n while (len--) {\r\n const page = pages[len];\r\n if (page.$page && page.$page.fullPath === url) {\r\n return len\r\n }\r\n }\r\n return -1\r\n}\r\n\r\nvar redirectTo = {\r\n name (fromArgs) {\r\n if (fromArgs.exists === 'back' && fromArgs.delta) {\r\n return 'navigateBack'\r\n }\r\n return 'redirectTo'\r\n },\r\n args (fromArgs) {\r\n if (fromArgs.exists === 'back' && fromArgs.url) {\r\n const existsPageIndex = findExistsPageIndex(fromArgs.url);\r\n if (existsPageIndex !== -1) {\r\n const delta = getCurrentPages().length - 1 - existsPageIndex;\r\n if (delta > 0) {\r\n fromArgs.delta = delta;\r\n }\r\n }\r\n }\r\n }\r\n};\r\n\r\nvar previewImage = {\r\n args (fromArgs) {\r\n let currentIndex = parseInt(fromArgs.current);\r\n if (isNaN(currentIndex)) {\r\n return\r\n }\r\n const urls = fromArgs.urls;\r\n if (!Array.isArray(urls)) {\r\n return\r\n }\r\n const len = urls.length;\r\n if (!len) {\r\n return\r\n }\r\n if (currentIndex < 0) {\r\n currentIndex = 0;\r\n } else if (currentIndex >= len) {\r\n currentIndex = len - 1;\r\n }\r\n if (currentIndex > 0) {\r\n fromArgs.current = urls[currentIndex];\r\n fromArgs.urls = urls.filter(\r\n (item, index) => index < currentIndex ? item !== urls[currentIndex] : true\r\n );\r\n } else {\r\n fromArgs.current = urls[0];\r\n }\r\n return {\r\n indicator: false,\r\n loop: false\r\n }\r\n }\r\n};\r\n\r\nconst UUID_KEY = '__DC_STAT_UUID';\r\nlet deviceId;\r\nfunction useDeviceId (result) {\r\n deviceId = deviceId || wx.getStorageSync(UUID_KEY);\r\n if (!deviceId) {\r\n deviceId = Date.now() + '' + Math.floor(Math.random() * 1e7);\r\n wx.setStorage({\r\n key: UUID_KEY,\r\n data: deviceId\r\n });\r\n }\r\n result.deviceId = deviceId;\r\n}\r\n\r\nfunction addSafeAreaInsets (result) {\r\n if (result.safeArea) {\r\n const safeArea = result.safeArea;\r\n result.safeAreaInsets = {\r\n top: safeArea.top,\r\n left: safeArea.left,\r\n right: result.windowWidth - safeArea.right,\r\n bottom: result.screenHeight - safeArea.bottom\r\n };\r\n }\r\n}\r\n\r\nfunction populateParameters (result) {\r\n const {\r\n brand = '', model = '', system = '',\r\n language = '', theme, version,\r\n platform, fontSizeSetting,\r\n SDKVersion, pixelRatio, deviceOrientation\r\n } = result;\r\n // const isQuickApp = \"mp-weixin\".indexOf('quickapp-webview') !== -1\r\n\r\n // osName osVersion\r\n let osName = '';\r\n let osVersion = '';\r\n {\r\n osName = system.split(' ')[0] || '';\r\n osVersion = system.split(' ')[1] || '';\r\n }\r\n let hostVersion = version;\r\n\r\n // deviceType\r\n const deviceType = getGetDeviceType(result, model);\r\n\r\n // deviceModel\r\n const deviceBrand = getDeviceBrand(brand);\r\n\r\n // hostName\r\n const _hostName = getHostName(result);\r\n\r\n // deviceOrientation\r\n let _deviceOrientation = deviceOrientation; // 仅 微信 百度 支持\r\n\r\n // devicePixelRatio\r\n let _devicePixelRatio = pixelRatio;\r\n\r\n // SDKVersion\r\n let _SDKVersion = SDKVersion;\r\n\r\n // hostLanguage\r\n const hostLanguage = language.replace(/_/g, '-');\r\n\r\n // wx.getAccountInfoSync\r\n\r\n const parameters = {\r\n appId: process.env.UNI_APP_ID,\r\n appName: process.env.UNI_APP_NAME,\r\n appVersion: process.env.UNI_APP_VERSION_NAME,\r\n appVersionCode: process.env.UNI_APP_VERSION_CODE,\r\n appLanguage: getAppLanguage(hostLanguage),\r\n uniCompileVersion: process.env.UNI_COMPILER_VERSION,\r\n uniRuntimeVersion: process.env.UNI_COMPILER_VERSION,\r\n uniPlatform: process.env.UNI_SUB_PLATFORM || process.env.UNI_PLATFORM,\r\n deviceBrand,\r\n deviceModel: model,\r\n deviceType,\r\n devicePixelRatio: _devicePixelRatio,\r\n deviceOrientation: _deviceOrientation,\r\n osName: osName.toLocaleLowerCase(),\r\n osVersion,\r\n hostTheme: theme,\r\n hostVersion,\r\n hostLanguage,\r\n hostName: _hostName,\r\n hostSDKVersion: _SDKVersion,\r\n hostFontSizeSetting: fontSizeSetting,\r\n windowTop: 0,\r\n windowBottom: 0,\r\n // TODO\r\n osLanguage: undefined,\r\n osTheme: undefined,\r\n ua: undefined,\r\n hostPackageName: undefined,\r\n browserName: undefined,\r\n browserVersion: undefined\r\n };\r\n\r\n Object.assign(result, parameters);\r\n}\r\n\r\nfunction getGetDeviceType (result, model) {\r\n let deviceType = result.deviceType || 'phone';\r\n {\r\n const deviceTypeMaps = {\r\n ipad: 'pad',\r\n windows: 'pc',\r\n mac: 'pc'\r\n };\r\n const deviceTypeMapsKeys = Object.keys(deviceTypeMaps);\r\n const _model = model.toLocaleLowerCase();\r\n for (let index = 0; index < deviceTypeMapsKeys.length; index++) {\r\n const _m = deviceTypeMapsKeys[index];\r\n if (_model.indexOf(_m) !== -1) {\r\n deviceType = deviceTypeMaps[_m];\r\n break\r\n }\r\n }\r\n }\r\n return deviceType\r\n}\r\n\r\nfunction getDeviceBrand (brand) {\r\n let deviceBrand = brand;\r\n if (deviceBrand) {\r\n deviceBrand = brand.toLocaleLowerCase();\r\n }\r\n return deviceBrand\r\n}\r\n\r\nfunction getAppLanguage (defaultLanguage) {\r\n return getLocale$1\r\n ? getLocale$1()\r\n : defaultLanguage\r\n}\r\n\r\nfunction getHostName (result) {\r\n const _platform = 'WeChat' ;\r\n let _hostName = result.hostName || _platform; // mp-jd\r\n {\r\n if (result.environment) {\r\n _hostName = result.environment;\r\n } else if (result.host && result.host.env) {\r\n _hostName = result.host.env;\r\n }\r\n }\r\n\r\n return _hostName\r\n}\r\n\r\nvar getSystemInfo = {\r\n returnValue: function (result) {\r\n useDeviceId(result);\r\n addSafeAreaInsets(result);\r\n populateParameters(result);\r\n }\r\n};\r\n\r\nvar showActionSheet = {\r\n args (fromArgs) {\r\n if (typeof fromArgs === 'object') {\r\n fromArgs.alertText = fromArgs.title;\r\n }\r\n }\r\n};\r\n\r\nvar getAppBaseInfo = {\r\n returnValue: function (result) {\r\n const { version, language, SDKVersion, theme } = result;\r\n\r\n const _hostName = getHostName(result);\r\n\r\n const hostLanguage = language.replace('_', '-');\r\n\r\n result = sortObject(Object.assign(result, {\r\n appId: process.env.UNI_APP_ID,\r\n appName: process.env.UNI_APP_NAME,\r\n appVersion: process.env.UNI_APP_VERSION_NAME,\r\n appVersionCode: process.env.UNI_APP_VERSION_CODE,\r\n appLanguage: getAppLanguage(hostLanguage),\r\n hostVersion: version,\r\n hostLanguage,\r\n hostName: _hostName,\r\n hostSDKVersion: SDKVersion,\r\n hostTheme: theme\r\n }));\r\n }\r\n};\r\n\r\nvar getDeviceInfo = {\r\n returnValue: function (result) {\r\n const { brand, model } = result;\r\n const deviceType = getGetDeviceType(result, model);\r\n const deviceBrand = getDeviceBrand(brand);\r\n useDeviceId(result);\r\n\r\n result = sortObject(Object.assign(result, {\r\n deviceType,\r\n deviceBrand,\r\n deviceModel: model\r\n }));\r\n }\r\n};\r\n\r\nvar getWindowInfo = {\r\n returnValue: function (result) {\r\n addSafeAreaInsets(result);\r\n\r\n result = sortObject(Object.assign(result, {\r\n windowTop: 0,\r\n windowBottom: 0\r\n }));\r\n }\r\n};\r\n\r\nvar getAppAuthorizeSetting = {\r\n returnValue: function (result) {\r\n const { locationReducedAccuracy } = result;\r\n\r\n result.locationAccuracy = 'unsupported';\r\n if (locationReducedAccuracy === true) {\r\n result.locationAccuracy = 'reduced';\r\n } else if (locationReducedAccuracy === false) {\r\n result.locationAccuracy = 'full';\r\n }\r\n }\r\n};\r\n\r\n// import navigateTo from 'uni-helpers/navigate-to'\r\n\r\nconst protocols = {\r\n redirectTo,\r\n // navigateTo, // 由于在微信开发者工具的页面参数,会显示__id__参数,因此暂时关闭mp-weixin对于navigateTo的AOP\r\n previewImage,\r\n getSystemInfo,\r\n getSystemInfoSync: getSystemInfo,\r\n showActionSheet,\r\n getAppBaseInfo,\r\n getDeviceInfo,\r\n getWindowInfo,\r\n getAppAuthorizeSetting\r\n};\r\nconst todos = [\r\n 'vibrate',\r\n 'preloadPage',\r\n 'unPreloadPage',\r\n 'loadSubPackage'\r\n];\r\nconst canIUses = [];\r\n\r\nconst CALLBACKS = ['success', 'fail', 'cancel', 'complete'];\r\n\r\nfunction processCallback (methodName, method, returnValue) {\r\n return function (res) {\r\n return method(processReturnValue(methodName, res, returnValue))\r\n }\r\n}\r\n\r\nfunction processArgs (methodName, fromArgs, argsOption = {}, returnValue = {}, keepFromArgs = false) {\r\n if (isPlainObject(fromArgs)) { // 一般 api 的参数解析\r\n const toArgs = keepFromArgs === true ? fromArgs : {}; // returnValue 为 false 时,说明是格式化返回值,直接在返回值对象上修改赋值\r\n if (isFn(argsOption)) {\r\n argsOption = argsOption(fromArgs, toArgs) || {};\r\n }\r\n for (const key in fromArgs) {\r\n if (hasOwn(argsOption, key)) {\r\n let keyOption = argsOption[key];\r\n if (isFn(keyOption)) {\r\n keyOption = keyOption(fromArgs[key], fromArgs, toArgs);\r\n }\r\n if (!keyOption) { // 不支持的参数\r\n console.warn(`The '${methodName}' method of platform '微信小程序' does not support option '${key}'`);\r\n } else if (isStr(keyOption)) { // 重写参数 key\r\n toArgs[keyOption] = fromArgs[key];\r\n } else if (isPlainObject(keyOption)) { // {name:newName,value:value}可重新指定参数 key:value\r\n toArgs[keyOption.name ? keyOption.name : key] = keyOption.value;\r\n }\r\n } else if (CALLBACKS.indexOf(key) !== -1) {\r\n if (isFn(fromArgs[key])) {\r\n toArgs[key] = processCallback(methodName, fromArgs[key], returnValue);\r\n }\r\n } else {\r\n if (!keepFromArgs) {\r\n toArgs[key] = fromArgs[key];\r\n }\r\n }\r\n }\r\n return toArgs\r\n } else if (isFn(fromArgs)) {\r\n fromArgs = processCallback(methodName, fromArgs, returnValue);\r\n }\r\n return fromArgs\r\n}\r\n\r\nfunction processReturnValue (methodName, res, returnValue, keepReturnValue = false) {\r\n if (isFn(protocols.returnValue)) { // 处理通用 returnValue\r\n res = protocols.returnValue(methodName, res);\r\n }\r\n return processArgs(methodName, res, returnValue, {}, keepReturnValue)\r\n}\r\n\r\nfunction wrapper (methodName, method) {\r\n if (hasOwn(protocols, methodName)) {\r\n const protocol = protocols[methodName];\r\n if (!protocol) { // 暂不支持的 api\r\n return function () {\r\n console.error(`Platform '微信小程序' does not support '${methodName}'.`);\r\n }\r\n }\r\n return function (arg1, arg2) { // 目前 api 最多两个参数\r\n let options = protocol;\r\n if (isFn(protocol)) {\r\n options = protocol(arg1);\r\n }\r\n\r\n arg1 = processArgs(methodName, arg1, options.args, options.returnValue);\r\n\r\n const args = [arg1];\r\n if (typeof arg2 !== 'undefined') {\r\n args.push(arg2);\r\n }\r\n if (isFn(options.name)) {\r\n methodName = options.name(arg1);\r\n } else if (isStr(options.name)) {\r\n methodName = options.name;\r\n }\r\n const returnValue = wx[methodName].apply(wx, args);\r\n if (isSyncApi(methodName)) { // 同步 api\r\n return processReturnValue(methodName, returnValue, options.returnValue, isContextApi(methodName))\r\n }\r\n return returnValue\r\n }\r\n }\r\n return method\r\n}\r\n\r\nconst todoApis = Object.create(null);\r\n\r\nconst TODOS = [\r\n 'onTabBarMidButtonTap',\r\n 'subscribePush',\r\n 'unsubscribePush',\r\n 'onPush',\r\n 'offPush',\r\n 'share'\r\n];\r\n\r\nfunction createTodoApi (name) {\r\n return function todoApi ({\r\n fail,\r\n complete\r\n }) {\r\n const res = {\r\n errMsg: `${name}:fail method '${name}' not supported`\r\n };\r\n isFn(fail) && fail(res);\r\n isFn(complete) && complete(res);\r\n }\r\n}\r\n\r\nTODOS.forEach(function (name) {\r\n todoApis[name] = createTodoApi(name);\r\n});\r\n\r\nvar providers = {\r\n oauth: ['weixin'],\r\n share: ['weixin'],\r\n payment: ['wxpay'],\r\n push: ['weixin']\r\n};\r\n\r\nfunction getProvider ({\r\n service,\r\n success,\r\n fail,\r\n complete\r\n}) {\r\n let res = false;\r\n if (providers[service]) {\r\n res = {\r\n errMsg: 'getProvider:ok',\r\n service,\r\n provider: providers[service]\r\n };\r\n isFn(success) && success(res);\r\n } else {\r\n res = {\r\n errMsg: 'getProvider:fail service not found'\r\n };\r\n isFn(fail) && fail(res);\r\n }\r\n isFn(complete) && complete(res);\r\n}\r\n\r\nvar extraApi = /*#__PURE__*/Object.freeze({\r\n __proto__: null,\r\n getProvider: getProvider\r\n});\r\n\r\nconst getEmitter = (function () {\r\n let Emitter;\r\n return function getUniEmitter () {\r\n if (!Emitter) {\r\n Emitter = new Vue();\r\n }\r\n return Emitter\r\n }\r\n})();\r\n\r\nfunction apply (ctx, method, args) {\r\n return ctx[method].apply(ctx, args)\r\n}\r\n\r\nfunction $on () {\r\n return apply(getEmitter(), '$on', [...arguments])\r\n}\r\nfunction $off () {\r\n return apply(getEmitter(), '$off', [...arguments])\r\n}\r\nfunction $once () {\r\n return apply(getEmitter(), '$once', [...arguments])\r\n}\r\nfunction $emit () {\r\n return apply(getEmitter(), '$emit', [...arguments])\r\n}\r\n\r\nvar eventApi = /*#__PURE__*/Object.freeze({\r\n __proto__: null,\r\n $on: $on,\r\n $off: $off,\r\n $once: $once,\r\n $emit: $emit\r\n});\r\n\r\n/**\r\n * 框架内 try-catch\r\n */\r\n/**\r\n * 开发者 try-catch\r\n */\r\nfunction tryCatch (fn) {\r\n return function () {\r\n try {\r\n return fn.apply(fn, arguments)\r\n } catch (e) {\r\n // TODO\r\n console.error(e);\r\n }\r\n }\r\n}\r\n\r\nfunction getApiCallbacks (params) {\r\n const apiCallbacks = {};\r\n for (const name in params) {\r\n const param = params[name];\r\n if (isFn(param)) {\r\n apiCallbacks[name] = tryCatch(param);\r\n delete params[name];\r\n }\r\n }\r\n return apiCallbacks\r\n}\r\n\r\nlet cid;\r\nlet cidErrMsg;\r\nlet enabled;\r\n\r\nfunction normalizePushMessage (message) {\r\n try {\r\n return JSON.parse(message)\r\n } catch (e) {}\r\n return message\r\n}\r\n\r\nfunction invokePushCallback (\r\n args\r\n) {\r\n if (args.type === 'enabled') {\r\n enabled = true;\r\n } else if (args.type === 'clientId') {\r\n cid = args.cid;\r\n cidErrMsg = args.errMsg;\r\n invokeGetPushCidCallbacks(cid, args.errMsg);\r\n } else if (args.type === 'pushMsg') {\r\n const message = {\r\n type: 'receive',\r\n data: normalizePushMessage(args.message)\r\n };\r\n for (let i = 0; i < onPushMessageCallbacks.length; i++) {\r\n const callback = onPushMessageCallbacks[i];\r\n callback(message);\r\n // 该消息已被阻止\r\n if (message.stopped) {\r\n break\r\n }\r\n }\r\n } else if (args.type === 'click') {\r\n onPushMessageCallbacks.forEach((callback) => {\r\n callback({\r\n type: 'click',\r\n data: normalizePushMessage(args.message)\r\n });\r\n });\r\n }\r\n}\r\n\r\nconst getPushCidCallbacks = [];\r\n\r\nfunction invokeGetPushCidCallbacks (cid, errMsg) {\r\n getPushCidCallbacks.forEach((callback) => {\r\n callback(cid, errMsg);\r\n });\r\n getPushCidCallbacks.length = 0;\r\n}\r\n\r\nfunction getPushClientId (args) {\r\n if (!isPlainObject(args)) {\r\n args = {};\r\n }\r\n const {\r\n success,\r\n fail,\r\n complete\r\n } = getApiCallbacks(args);\r\n const hasSuccess = isFn(success);\r\n const hasFail = isFn(fail);\r\n const hasComplete = isFn(complete);\r\n\r\n Promise.resolve().then(() => {\r\n if (typeof enabled === 'undefined') {\r\n enabled = false;\r\n cid = '';\r\n cidErrMsg = 'uniPush is not enabled';\r\n }\r\n getPushCidCallbacks.push((cid, errMsg) => {\r\n let res;\r\n if (cid) {\r\n res = {\r\n errMsg: 'getPushClientId:ok',\r\n cid\r\n };\r\n hasSuccess && success(res);\r\n } else {\r\n res = {\r\n errMsg: 'getPushClientId:fail' + (errMsg ? ' ' + errMsg : '')\r\n };\r\n hasFail && fail(res);\r\n }\r\n hasComplete && complete(res);\r\n });\r\n if (typeof cid !== 'undefined') {\r\n invokeGetPushCidCallbacks(cid, cidErrMsg);\r\n }\r\n });\r\n}\r\n\r\nconst onPushMessageCallbacks = [];\r\n// 不使用 defineOnApi 实现,是因为 defineOnApi 依赖 UniServiceJSBridge ,该对象目前在小程序上未提供,故简单实现\r\nconst onPushMessage = (fn) => {\r\n if (onPushMessageCallbacks.indexOf(fn) === -1) {\r\n onPushMessageCallbacks.push(fn);\r\n }\r\n};\r\n\r\nconst offPushMessage = (fn) => {\r\n if (!fn) {\r\n onPushMessageCallbacks.length = 0;\r\n } else {\r\n const index = onPushMessageCallbacks.indexOf(fn);\r\n if (index > -1) {\r\n onPushMessageCallbacks.splice(index, 1);\r\n }\r\n }\r\n};\r\n\r\nvar api = /*#__PURE__*/Object.freeze({\r\n __proto__: null,\r\n getPushClientId: getPushClientId,\r\n onPushMessage: onPushMessage,\r\n offPushMessage: offPushMessage,\r\n invokePushCallback: invokePushCallback\r\n});\r\n\r\nconst MPPage = Page;\r\nconst MPComponent = Component;\r\n\r\nconst customizeRE = /:/g;\r\n\r\nconst customize = cached((str) => {\r\n return camelize(str.replace(customizeRE, '-'))\r\n});\r\n\r\nfunction initTriggerEvent (mpInstance) {\r\n const oldTriggerEvent = mpInstance.triggerEvent;\r\n const newTriggerEvent = function (event, ...args) {\r\n // 事件名统一转驼峰格式,仅处理:当前组件为 vue 组件、当前组件为 vue 组件子组件\r\n if (this.$vm || (this.dataset && this.dataset.comType)) {\r\n event = customize(event);\r\n } else {\r\n // 针对微信/QQ小程序单独补充驼峰格式事件,以兼容历史项目\r\n const newEvent = customize(event);\r\n if (newEvent !== event) {\r\n oldTriggerEvent.apply(this, [newEvent, ...args]);\r\n }\r\n }\r\n return oldTriggerEvent.apply(this, [event, ...args])\r\n };\r\n try {\r\n // 京东小程序 triggerEvent 为只读\r\n mpInstance.triggerEvent = newTriggerEvent;\r\n } catch (error) {\r\n mpInstance._triggerEvent = newTriggerEvent;\r\n }\r\n}\r\n\r\nfunction initHook (name, options, isComponent) {\r\n const oldHook = options[name];\r\n if (!oldHook) {\r\n options[name] = function () {\r\n initTriggerEvent(this);\r\n };\r\n } else {\r\n options[name] = function (...args) {\r\n initTriggerEvent(this);\r\n return oldHook.apply(this, args)\r\n };\r\n }\r\n}\r\nif (!MPPage.__$wrappered) {\r\n MPPage.__$wrappered = true;\r\n Page = function (options = {}) {\r\n initHook('onLoad', options);\r\n return MPPage(options)\r\n };\r\n Page.after = MPPage.after;\r\n\r\n Component = function (options = {}) {\r\n initHook('created', options);\r\n return MPComponent(options)\r\n };\r\n}\r\n\r\nconst PAGE_EVENT_HOOKS = [\r\n 'onPullDownRefresh',\r\n 'onReachBottom',\r\n 'onAddToFavorites',\r\n 'onShareTimeline',\r\n 'onShareAppMessage',\r\n 'onPageScroll',\r\n 'onResize',\r\n 'onTabItemTap'\r\n];\r\n\r\nfunction initMocks (vm, mocks) {\r\n const mpInstance = vm.$mp[vm.mpType];\r\n mocks.forEach(mock => {\r\n if (hasOwn(mpInstance, mock)) {\r\n vm[mock] = mpInstance[mock];\r\n }\r\n });\r\n}\r\n\r\nfunction hasHook (hook, vueOptions) {\r\n if (!vueOptions) {\r\n return true\r\n }\r\n\r\n if (Vue.options && Array.isArray(Vue.options[hook])) {\r\n return true\r\n }\r\n\r\n vueOptions = vueOptions.default || vueOptions;\r\n\r\n if (isFn(vueOptions)) {\r\n if (isFn(vueOptions.extendOptions[hook])) {\r\n return true\r\n }\r\n if (vueOptions.super &&\r\n vueOptions.super.options &&\r\n Array.isArray(vueOptions.super.options[hook])) {\r\n return true\r\n }\r\n return false\r\n }\r\n\r\n if (isFn(vueOptions[hook])) {\r\n return true\r\n }\r\n const mixins = vueOptions.mixins;\r\n if (Array.isArray(mixins)) {\r\n return !!mixins.find(mixin => hasHook(hook, mixin))\r\n }\r\n}\r\n\r\nfunction initHooks (mpOptions, hooks, vueOptions) {\r\n hooks.forEach(hook => {\r\n if (hasHook(hook, vueOptions)) {\r\n mpOptions[hook] = function (args) {\r\n return this.$vm && this.$vm.__call_hook(hook, args)\r\n };\r\n }\r\n });\r\n}\r\n\r\nfunction initUnknownHooks (mpOptions, vueOptions, excludes = []) {\r\n findHooks(vueOptions).forEach((hook) => initHook$1(mpOptions, hook, excludes));\r\n}\r\n\r\nfunction findHooks (vueOptions, hooks = []) {\r\n if (vueOptions) {\r\n Object.keys(vueOptions).forEach((name) => {\r\n if (name.indexOf('on') === 0 && isFn(vueOptions[name])) {\r\n hooks.push(name);\r\n }\r\n });\r\n }\r\n return hooks\r\n}\r\n\r\nfunction initHook$1 (mpOptions, hook, excludes) {\r\n if (excludes.indexOf(hook) === -1 && !hasOwn(mpOptions, hook)) {\r\n mpOptions[hook] = function (args) {\r\n return this.$vm && this.$vm.__call_hook(hook, args)\r\n };\r\n }\r\n}\r\n\r\nfunction initVueComponent (Vue, vueOptions) {\r\n vueOptions = vueOptions.default || vueOptions;\r\n let VueComponent;\r\n if (isFn(vueOptions)) {\r\n VueComponent = vueOptions;\r\n } else {\r\n VueComponent = Vue.extend(vueOptions);\r\n }\r\n vueOptions = VueComponent.options;\r\n return [VueComponent, vueOptions]\r\n}\r\n\r\nfunction initSlots (vm, vueSlots) {\r\n if (Array.isArray(vueSlots) && vueSlots.length) {\r\n const $slots = Object.create(null);\r\n vueSlots.forEach(slotName => {\r\n $slots[slotName] = true;\r\n });\r\n vm.$scopedSlots = vm.$slots = $slots;\r\n }\r\n}\r\n\r\nfunction initVueIds (vueIds, mpInstance) {\r\n vueIds = (vueIds || '').split(',');\r\n const len = vueIds.length;\r\n\r\n if (len === 1) {\r\n mpInstance._$vueId = vueIds[0];\r\n } else if (len === 2) {\r\n mpInstance._$vueId = vueIds[0];\r\n mpInstance._$vuePid = vueIds[1];\r\n }\r\n}\r\n\r\nfunction initData (vueOptions, context) {\r\n let data = vueOptions.data || {};\r\n const methods = vueOptions.methods || {};\r\n\r\n if (typeof data === 'function') {\r\n try {\r\n data = data.call(context); // 支持 Vue.prototype 上挂的数据\r\n } catch (e) {\r\n if (process.env.VUE_APP_DEBUG) {\r\n console.warn('根据 Vue 的 data 函数初始化小程序 data 失败,请尽量确保 data 函数中不访问 vm 对象,否则可能影响首次数据渲染速度。', data);\r\n }\r\n }\r\n } else {\r\n try {\r\n // 对 data 格式化\r\n data = JSON.parse(JSON.stringify(data));\r\n } catch (e) { }\r\n }\r\n\r\n if (!isPlainObject(data)) {\r\n data = {};\r\n }\r\n\r\n Object.keys(methods).forEach(methodName => {\r\n if (context.__lifecycle_hooks__.indexOf(methodName) === -1 && !hasOwn(data, methodName)) {\r\n data[methodName] = methods[methodName];\r\n }\r\n });\r\n\r\n return data\r\n}\r\n\r\nconst PROP_TYPES = [String, Number, Boolean, Object, Array, null];\r\n\r\nfunction createObserver (name) {\r\n return function observer (newVal, oldVal) {\r\n if (this.$vm) {\r\n this.$vm[name] = newVal; // 为了触发其他非 render watcher\r\n }\r\n }\r\n}\r\n\r\nfunction initBehaviors (vueOptions, initBehavior) {\r\n const vueBehaviors = vueOptions.behaviors;\r\n const vueExtends = vueOptions.extends;\r\n const vueMixins = vueOptions.mixins;\r\n\r\n let vueProps = vueOptions.props;\r\n\r\n if (!vueProps) {\r\n vueOptions.props = vueProps = [];\r\n }\r\n\r\n const behaviors = [];\r\n if (Array.isArray(vueBehaviors)) {\r\n vueBehaviors.forEach(behavior => {\r\n behaviors.push(behavior.replace('uni://', `${\"wx\"}://`));\r\n if (behavior === 'uni://form-field') {\r\n if (Array.isArray(vueProps)) {\r\n vueProps.push('name');\r\n vueProps.push('value');\r\n } else {\r\n vueProps.name = {\r\n type: String,\r\n default: ''\r\n };\r\n vueProps.value = {\r\n type: [String, Number, Boolean, Array, Object, Date],\r\n default: ''\r\n };\r\n }\r\n }\r\n });\r\n }\r\n if (isPlainObject(vueExtends) && vueExtends.props) {\r\n behaviors.push(\r\n initBehavior({\r\n properties: initProperties(vueExtends.props, true)\r\n })\r\n );\r\n }\r\n if (Array.isArray(vueMixins)) {\r\n vueMixins.forEach(vueMixin => {\r\n if (isPlainObject(vueMixin) && vueMixin.props) {\r\n behaviors.push(\r\n initBehavior({\r\n properties: initProperties(vueMixin.props, true)\r\n })\r\n );\r\n }\r\n });\r\n }\r\n return behaviors\r\n}\r\n\r\nfunction parsePropType (key, type, defaultValue, file) {\r\n // [String]=>String\r\n if (Array.isArray(type) && type.length === 1) {\r\n return type[0]\r\n }\r\n return type\r\n}\r\n\r\nfunction initProperties (props, isBehavior = false, file = '', options) {\r\n const properties = {};\r\n if (!isBehavior) {\r\n properties.vueId = {\r\n type: String,\r\n value: ''\r\n };\r\n {\r\n if ( options.virtualHost) {\r\n properties.virtualHostStyle = {\r\n type: null,\r\n value: ''\r\n };\r\n properties.virtualHostClass = {\r\n type: null,\r\n value: ''\r\n };\r\n }\r\n }\r\n // scopedSlotsCompiler auto\r\n properties.scopedSlotsCompiler = {\r\n type: String,\r\n value: ''\r\n };\r\n properties.vueSlots = { // 小程序不能直接定义 $slots 的 props,所以通过 vueSlots 转换到 $slots\r\n type: null,\r\n value: [],\r\n observer: function (newVal, oldVal) {\r\n const $slots = Object.create(null);\r\n newVal.forEach(slotName => {\r\n $slots[slotName] = true;\r\n });\r\n this.setData({\r\n $slots\r\n });\r\n }\r\n };\r\n }\r\n if (Array.isArray(props)) { // ['title']\r\n props.forEach(key => {\r\n properties[key] = {\r\n type: null,\r\n observer: createObserver(key)\r\n };\r\n });\r\n } else if (isPlainObject(props)) { // {title:{type:String,default:''},content:String}\r\n Object.keys(props).forEach(key => {\r\n const opts = props[key];\r\n if (isPlainObject(opts)) { // title:{type:String,default:''}\r\n let value = opts.default;\r\n if (isFn(value)) {\r\n value = value();\r\n }\r\n\r\n opts.type = parsePropType(key, opts.type);\r\n\r\n properties[key] = {\r\n type: PROP_TYPES.indexOf(opts.type) !== -1 ? opts.type : null,\r\n value,\r\n observer: createObserver(key)\r\n };\r\n } else { // content:String\r\n const type = parsePropType(key, opts);\r\n properties[key] = {\r\n type: PROP_TYPES.indexOf(type) !== -1 ? type : null,\r\n observer: createObserver(key)\r\n };\r\n }\r\n });\r\n }\r\n return properties\r\n}\r\n\r\nfunction wrapper$1 (event) {\r\n // TODO 又得兼容 mpvue 的 mp 对象\r\n try {\r\n event.mp = JSON.parse(JSON.stringify(event));\r\n } catch (e) { }\r\n\r\n event.stopPropagation = noop;\r\n event.preventDefault = noop;\r\n\r\n event.target = event.target || {};\r\n\r\n if (!hasOwn(event, 'detail')) {\r\n event.detail = {};\r\n }\r\n\r\n if (hasOwn(event, 'markerId')) {\r\n event.detail = typeof event.detail === 'object' ? event.detail : {};\r\n event.detail.markerId = event.markerId;\r\n }\r\n\r\n if (isPlainObject(event.detail)) {\r\n event.target = Object.assign({}, event.target, event.detail);\r\n }\r\n\r\n return event\r\n}\r\n\r\nfunction getExtraValue (vm, dataPathsArray) {\r\n let context = vm;\r\n dataPathsArray.forEach(dataPathArray => {\r\n const dataPath = dataPathArray[0];\r\n const value = dataPathArray[2];\r\n if (dataPath || typeof value !== 'undefined') { // ['','',index,'disable']\r\n const propPath = dataPathArray[1];\r\n const valuePath = dataPathArray[3];\r\n\r\n let vFor;\r\n if (Number.isInteger(dataPath)) {\r\n vFor = dataPath;\r\n } else if (!dataPath) {\r\n vFor = context;\r\n } else if (typeof dataPath === 'string' && dataPath) {\r\n if (dataPath.indexOf('#s#') === 0) {\r\n vFor = dataPath.substr(3);\r\n } else {\r\n vFor = vm.__get_value(dataPath, context);\r\n }\r\n }\r\n\r\n if (Number.isInteger(vFor)) {\r\n context = value;\r\n } else if (!propPath) {\r\n context = vFor[value];\r\n } else {\r\n if (Array.isArray(vFor)) {\r\n context = vFor.find(vForItem => {\r\n return vm.__get_value(propPath, vForItem) === value\r\n });\r\n } else if (isPlainObject(vFor)) {\r\n context = Object.keys(vFor).find(vForKey => {\r\n return vm.__get_value(propPath, vFor[vForKey]) === value\r\n });\r\n } else {\r\n console.error('v-for 暂不支持循环数据:', vFor);\r\n }\r\n }\r\n\r\n if (valuePath) {\r\n context = vm.__get_value(valuePath, context);\r\n }\r\n }\r\n });\r\n return context\r\n}\r\n\r\nfunction processEventExtra (vm, extra, event, __args__) {\r\n const extraObj = {};\r\n\r\n if (Array.isArray(extra) && extra.length) {\r\n /**\r\n *[\r\n * ['data.items', 'data.id', item.data.id],\r\n * ['metas', 'id', meta.id]\r\n *],\r\n *[\r\n * ['data.items', 'data.id', item.data.id],\r\n * ['metas', 'id', meta.id]\r\n *],\r\n *'test'\r\n */\r\n extra.forEach((dataPath, index) => {\r\n if (typeof dataPath === 'string') {\r\n if (!dataPath) { // model,prop.sync\r\n extraObj['$' + index] = vm;\r\n } else {\r\n if (dataPath === '$event') { // $event\r\n extraObj['$' + index] = event;\r\n } else if (dataPath === 'arguments') {\r\n extraObj['$' + index] = event.detail ? event.detail.__args__ || __args__ : __args__;\r\n } else if (dataPath.indexOf('$event.') === 0) { // $event.target.value\r\n extraObj['$' + index] = vm.__get_value(dataPath.replace('$event.', ''), event);\r\n } else {\r\n extraObj['$' + index] = vm.__get_value(dataPath);\r\n }\r\n }\r\n } else {\r\n extraObj['$' + index] = getExtraValue(vm, dataPath);\r\n }\r\n });\r\n }\r\n\r\n return extraObj\r\n}\r\n\r\nfunction getObjByArray (arr) {\r\n const obj = {};\r\n for (let i = 1; i < arr.length; i++) {\r\n const element = arr[i];\r\n obj[element[0]] = element[1];\r\n }\r\n return obj\r\n}\r\n\r\nfunction processEventArgs (vm, event, args = [], extra = [], isCustom, methodName) {\r\n let isCustomMPEvent = false; // wxcomponent 组件,传递原始 event 对象\r\n\r\n // fixed 用户直接触发 mpInstance.triggerEvent\r\n const __args__ = isPlainObject(event.detail)\r\n ? event.detail.__args__ || [event.detail]\r\n : [event.detail];\r\n\r\n if (isCustom) { // 自定义事件\r\n isCustomMPEvent = event.currentTarget &&\r\n event.currentTarget.dataset &&\r\n event.currentTarget.dataset.comType === 'wx';\r\n if (!args.length) { // 无参数,直接传入 event 或 detail 数组\r\n if (isCustomMPEvent) {\r\n return [event]\r\n }\r\n return __args__\r\n }\r\n }\r\n\r\n const extraObj = processEventExtra(vm, extra, event, __args__);\r\n\r\n const ret = [];\r\n args.forEach(arg => {\r\n if (arg === '$event') {\r\n if (methodName === '__set_model' && !isCustom) { // input v-model value\r\n ret.push(event.target.value);\r\n } else {\r\n if (isCustom && !isCustomMPEvent) {\r\n ret.push(__args__[0]);\r\n } else { // wxcomponent 组件或内置组件\r\n ret.push(event);\r\n }\r\n }\r\n } else {\r\n if (Array.isArray(arg) && arg[0] === 'o') {\r\n ret.push(getObjByArray(arg));\r\n } else if (typeof arg === 'string' && hasOwn(extraObj, arg)) {\r\n ret.push(extraObj[arg]);\r\n } else {\r\n ret.push(arg);\r\n }\r\n }\r\n });\r\n\r\n return ret\r\n}\r\n\r\nconst ONCE = '~';\r\nconst CUSTOM = '^';\r\n\r\nfunction isMatchEventType (eventType, optType) {\r\n return (eventType === optType) ||\r\n (\r\n optType === 'regionchange' &&\r\n (\r\n eventType === 'begin' ||\r\n eventType === 'end'\r\n )\r\n )\r\n}\r\n\r\nfunction getContextVm (vm) {\r\n let $parent = vm.$parent;\r\n // 父组件是 scoped slots 或者其他自定义组件时继续查找\r\n while ($parent && $parent.$parent && ($parent.$options.generic || $parent.$parent.$options.generic || $parent.$scope._$vuePid)) {\r\n $parent = $parent.$parent;\r\n }\r\n return $parent && $parent.$parent\r\n}\r\n\r\nfunction handleEvent (event) {\r\n event = wrapper$1(event);\r\n\r\n // [['tap',[['handle',[1,2,a]],['handle1',[1,2,a]]]]]\r\n const dataset = (event.currentTarget || event.target).dataset;\r\n if (!dataset) {\r\n return console.warn('事件信息不存在')\r\n }\r\n const eventOpts = dataset.eventOpts || dataset['event-opts']; // 支付宝 web-view 组件 dataset 非驼峰\r\n if (!eventOpts) {\r\n return console.warn('事件信息不存在')\r\n }\r\n\r\n // [['handle',[1,2,a]],['handle1',[1,2,a]]]\r\n const eventType = event.type;\r\n\r\n const ret = [];\r\n\r\n eventOpts.forEach(eventOpt => {\r\n let type = eventOpt[0];\r\n const eventsArray = eventOpt[1];\r\n\r\n const isCustom = type.charAt(0) === CUSTOM;\r\n type = isCustom ? type.slice(1) : type;\r\n const isOnce = type.charAt(0) === ONCE;\r\n type = isOnce ? type.slice(1) : type;\r\n\r\n if (eventsArray && isMatchEventType(eventType, type)) {\r\n eventsArray.forEach(eventArray => {\r\n const methodName = eventArray[0];\r\n if (methodName) {\r\n let handlerCtx = this.$vm;\r\n if (handlerCtx.$options.generic) { // mp-weixin,mp-toutiao 抽象节点模拟 scoped slots\r\n handlerCtx = getContextVm(handlerCtx) || handlerCtx;\r\n }\r\n if (methodName === '$emit') {\r\n handlerCtx.$emit.apply(handlerCtx,\r\n processEventArgs(\r\n this.$vm,\r\n event,\r\n eventArray[1],\r\n eventArray[2],\r\n isCustom,\r\n methodName\r\n ));\r\n return\r\n }\r\n const handler = handlerCtx[methodName];\r\n if (!isFn(handler)) {\r\n const type = this.$vm.mpType === 'page' ? 'Page' : 'Component';\r\n const path = this.route || this.is;\r\n throw new Error(`${type} \"${path}\" does not have a method \"${methodName}\"`)\r\n }\r\n if (isOnce) {\r\n if (handler.once) {\r\n return\r\n }\r\n handler.once = true;\r\n }\r\n let params = processEventArgs(\r\n this.$vm,\r\n event,\r\n eventArray[1],\r\n eventArray[2],\r\n isCustom,\r\n methodName\r\n );\r\n params = Array.isArray(params) ? params : [];\r\n // 参数尾部增加原始事件对象用于复杂表达式内获取额外数据\r\n if (/=\\s*\\S+\\.eventParams\\s*\\|\\|\\s*\\S+\\[['\"]event-params['\"]\\]/.test(handler.toString())) {\r\n // eslint-disable-next-line no-sparse-arrays\r\n params = params.concat([, , , , , , , , , , event]);\r\n }\r\n ret.push(handler.apply(handlerCtx, params));\r\n }\r\n });\r\n }\r\n });\r\n\r\n if (\r\n eventType === 'input' &&\r\n ret.length === 1 &&\r\n typeof ret[0] !== 'undefined'\r\n ) {\r\n return ret[0]\r\n }\r\n}\r\n\r\nconst eventChannels = {};\r\n\r\nconst eventChannelStack = [];\r\n\r\nfunction getEventChannel (id) {\r\n if (id) {\r\n const eventChannel = eventChannels[id];\r\n delete eventChannels[id];\r\n return eventChannel\r\n }\r\n return eventChannelStack.shift()\r\n}\r\n\r\nconst hooks = [\r\n 'onShow',\r\n 'onHide',\r\n 'onError',\r\n 'onPageNotFound',\r\n 'onThemeChange',\r\n 'onUnhandledRejection'\r\n];\r\n\r\nfunction initEventChannel () {\r\n Vue.prototype.getOpenerEventChannel = function () {\r\n // 微信小程序使用自身getOpenerEventChannel\r\n {\r\n return this.$scope.getOpenerEventChannel()\r\n }\r\n };\r\n const callHook = Vue.prototype.__call_hook;\r\n Vue.prototype.__call_hook = function (hook, args) {\r\n if (hook === 'onLoad' && args && args.__id__) {\r\n this.__eventChannel__ = getEventChannel(args.__id__);\r\n delete args.__id__;\r\n }\r\n return callHook.call(this, hook, args)\r\n };\r\n}\r\n\r\nfunction initScopedSlotsParams () {\r\n const center = {};\r\n const parents = {};\r\n\r\n Vue.prototype.$hasScopedSlotsParams = function (vueId) {\r\n const has = center[vueId];\r\n if (!has) {\r\n parents[vueId] = this;\r\n this.$on('hook:destroyed', () => {\r\n delete parents[vueId];\r\n });\r\n }\r\n return has\r\n };\r\n\r\n Vue.prototype.$getScopedSlotsParams = function (vueId, name, key) {\r\n const data = center[vueId];\r\n if (data) {\r\n const object = data[name] || {};\r\n return key ? object[key] : object\r\n } else {\r\n parents[vueId] = this;\r\n this.$on('hook:destroyed', () => {\r\n delete parents[vueId];\r\n });\r\n }\r\n };\r\n\r\n Vue.prototype.$setScopedSlotsParams = function (name, value) {\r\n const vueIds = this.$options.propsData.vueId;\r\n if (vueIds) {\r\n const vueId = vueIds.split(',')[0];\r\n const object = center[vueId] = center[vueId] || {};\r\n object[name] = value;\r\n if (parents[vueId]) {\r\n parents[vueId].$forceUpdate();\r\n }\r\n }\r\n };\r\n\r\n Vue.mixin({\r\n destroyed () {\r\n const propsData = this.$options.propsData;\r\n const vueId = propsData && propsData.vueId;\r\n if (vueId) {\r\n delete center[vueId];\r\n delete parents[vueId];\r\n }\r\n }\r\n });\r\n}\r\n\r\nfunction parseBaseApp (vm, {\r\n mocks,\r\n initRefs\r\n}) {\r\n initEventChannel();\r\n {\r\n initScopedSlotsParams();\r\n }\r\n if (vm.$options.store) {\r\n Vue.prototype.$store = vm.$options.store;\r\n }\r\n uniIdMixin(Vue);\r\n\r\n Vue.prototype.mpHost = \"mp-weixin\";\r\n\r\n Vue.mixin({\r\n beforeCreate () {\r\n if (!this.$options.mpType) {\r\n return\r\n }\r\n\r\n this.mpType = this.$options.mpType;\r\n\r\n this.$mp = {\r\n data: {},\r\n [this.mpType]: this.$options.mpInstance\r\n };\r\n\r\n this.$scope = this.$options.mpInstance;\r\n\r\n delete this.$options.mpType;\r\n delete this.$options.mpInstance;\r\n if (this.mpType === 'page' && typeof getApp === 'function') { // hack vue-i18n\r\n const app = getApp();\r\n if (app.$vm && app.$vm.$i18n) {\r\n this._i18n = app.$vm.$i18n;\r\n }\r\n }\r\n if (this.mpType !== 'app') {\r\n initRefs(this);\r\n initMocks(this, mocks);\r\n }\r\n }\r\n });\r\n\r\n const appOptions = {\r\n onLaunch (args) {\r\n if (this.$vm) { // 已经初始化过了,主要是为了百度,百度 onShow 在 onLaunch 之前\r\n return\r\n }\r\n {\r\n if (wx.canIUse && !wx.canIUse('nextTick')) { // 事实 上2.2.3 即可,简单使用 2.3.0 的 nextTick 判断\r\n console.error('当前微信基础库版本过低,请将 微信开发者工具-详情-项目设置-调试基础库版本 更换为`2.3.0`以上');\r\n }\r\n }\r\n\r\n this.$vm = vm;\r\n\r\n this.$vm.$mp = {\r\n app: this\r\n };\r\n\r\n this.$vm.$scope = this;\r\n // vm 上也挂载 globalData\r\n this.$vm.globalData = this.globalData;\r\n\r\n this.$vm._isMounted = true;\r\n this.$vm.__call_hook('mounted', args);\r\n\r\n this.$vm.__call_hook('onLaunch', args);\r\n }\r\n };\r\n\r\n // 兼容旧版本 globalData\r\n appOptions.globalData = vm.$options.globalData || {};\r\n // 将 methods 中的方法挂在 getApp() 中\r\n const methods = vm.$options.methods;\r\n if (methods) {\r\n Object.keys(methods).forEach(name => {\r\n appOptions[name] = methods[name];\r\n });\r\n }\r\n\r\n initAppLocale(Vue, vm, normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN);\r\n\r\n initHooks(appOptions, hooks);\r\n initUnknownHooks(appOptions, vm.$options);\r\n\r\n return appOptions\r\n}\r\n\r\nconst mocks = ['__route__', '__wxExparserNodeId__', '__wxWebviewId__'];\r\n\r\nfunction findVmByVueId (vm, vuePid) {\r\n const $children = vm.$children;\r\n // 优先查找直属(反向查找:https://github.com/dcloudio/uni-app/issues/1200)\r\n for (let i = $children.length - 1; i >= 0; i--) {\r\n const childVm = $children[i];\r\n if (childVm.$scope._$vueId === vuePid) {\r\n return childVm\r\n }\r\n }\r\n // 反向递归查找\r\n let parentVm;\r\n for (let i = $children.length - 1; i >= 0; i--) {\r\n parentVm = findVmByVueId($children[i], vuePid);\r\n if (parentVm) {\r\n return parentVm\r\n }\r\n }\r\n}\r\n\r\nfunction initBehavior (options) {\r\n return Behavior(options)\r\n}\r\n\r\nfunction isPage () {\r\n return !!this.route\r\n}\r\n\r\nfunction initRelation (detail) {\r\n this.triggerEvent('__l', detail);\r\n}\r\n\r\nfunction selectAllComponents (mpInstance, selector, $refs) {\r\n const components = mpInstance.selectAllComponents(selector);\r\n components.forEach(component => {\r\n const ref = component.dataset.ref;\r\n $refs[ref] = component.$vm || component;\r\n {\r\n if (component.dataset.vueGeneric === 'scoped') {\r\n component.selectAllComponents('.scoped-ref').forEach(scopedComponent => {\r\n selectAllComponents(scopedComponent, selector, $refs);\r\n });\r\n }\r\n }\r\n });\r\n}\r\n\r\nfunction initRefs (vm) {\r\n const mpInstance = vm.$scope;\r\n Object.defineProperty(vm, '$refs', {\r\n get () {\r\n const $refs = {};\r\n selectAllComponents(mpInstance, '.vue-ref', $refs);\r\n // TODO 暂不考虑 for 中的 scoped\r\n const forComponents = mpInstance.selectAllComponents('.vue-ref-in-for');\r\n forComponents.forEach(component => {\r\n const ref = component.dataset.ref;\r\n if (!$refs[ref]) {\r\n $refs[ref] = [];\r\n }\r\n $refs[ref].push(component.$vm || component);\r\n });\r\n return $refs\r\n }\r\n });\r\n}\r\n\r\nfunction handleLink (event) {\r\n const {\r\n vuePid,\r\n vueOptions\r\n } = event.detail || event.value; // detail 是微信,value 是百度(dipatch)\r\n\r\n let parentVm;\r\n\r\n if (vuePid) {\r\n parentVm = findVmByVueId(this.$vm, vuePid);\r\n }\r\n\r\n if (!parentVm) {\r\n parentVm = this.$vm;\r\n }\r\n\r\n vueOptions.parent = parentVm;\r\n}\r\n\r\nfunction parseApp (vm) {\r\n return parseBaseApp(vm, {\r\n mocks,\r\n initRefs\r\n })\r\n}\r\n\r\nfunction createApp (vm) {\r\n App(parseApp(vm));\r\n return vm\r\n}\r\n\r\nconst encodeReserveRE = /[!'()*]/g;\r\nconst encodeReserveReplacer = c => '%' + c.charCodeAt(0).toString(16);\r\nconst commaRE = /%2C/g;\r\n\r\n// fixed encodeURIComponent which is more conformant to RFC3986:\r\n// - escapes [!'()*]\r\n// - preserve commas\r\nconst encode = str => encodeURIComponent(str)\r\n .replace(encodeReserveRE, encodeReserveReplacer)\r\n .replace(commaRE, ',');\r\n\r\nfunction stringifyQuery (obj, encodeStr = encode) {\r\n const res = obj ? Object.keys(obj).map(key => {\r\n const val = obj[key];\r\n\r\n if (val === undefined) {\r\n return ''\r\n }\r\n\r\n if (val === null) {\r\n return encodeStr(key)\r\n }\r\n\r\n if (Array.isArray(val)) {\r\n const result = [];\r\n val.forEach(val2 => {\r\n if (val2 === undefined) {\r\n return\r\n }\r\n if (val2 === null) {\r\n result.push(encodeStr(key));\r\n } else {\r\n result.push(encodeStr(key) + '=' + encodeStr(val2));\r\n }\r\n });\r\n return result.join('&')\r\n }\r\n\r\n return encodeStr(key) + '=' + encodeStr(val)\r\n }).filter(x => x.length > 0).join('&') : null;\r\n return res ? `?${res}` : ''\r\n}\r\n\r\nfunction parseBaseComponent (vueComponentOptions, {\r\n isPage,\r\n initRelation\r\n} = {}) {\r\n const [VueComponent, vueOptions] = initVueComponent(Vue, vueComponentOptions);\r\n\r\n const options = {\r\n multipleSlots: true,\r\n addGlobalClass: true,\r\n ...(vueOptions.options || {})\r\n };\r\n\r\n {\r\n // 微信 multipleSlots 部分情况有 bug,导致内容顺序错乱 如 u-list,提供覆盖选项\r\n if (vueOptions['mp-weixin'] && vueOptions['mp-weixin'].options) {\r\n Object.assign(options, vueOptions['mp-weixin'].options);\r\n }\r\n }\r\n\r\n const componentOptions = {\r\n options,\r\n data: initData(vueOptions, Vue.prototype),\r\n behaviors: initBehaviors(vueOptions, initBehavior),\r\n properties: initProperties(vueOptions.props, false, vueOptions.__file, options),\r\n lifetimes: {\r\n attached () {\r\n const properties = this.properties;\r\n\r\n const options = {\r\n mpType: isPage.call(this) ? 'page' : 'component',\r\n mpInstance: this,\r\n propsData: properties\r\n };\r\n\r\n initVueIds(properties.vueId, this);\r\n\r\n // 处理父子关系\r\n initRelation.call(this, {\r\n vuePid: this._$vuePid,\r\n vueOptions: options\r\n });\r\n\r\n // 初始化 vue 实例\r\n this.$vm = new VueComponent(options);\r\n\r\n // 处理$slots,$scopedSlots(暂不支持动态变化$slots)\r\n initSlots(this.$vm, properties.vueSlots);\r\n\r\n // 触发首次 setData\r\n this.$vm.$mount();\r\n },\r\n ready () {\r\n // 当组件 props 默认值为 true,初始化时传入 false 会导致 created,ready 触发, 但 attached 不触发\r\n // https://developers.weixin.qq.com/community/develop/doc/00066ae2844cc0f8eb883e2a557800\r\n if (this.$vm) {\r\n this.$vm._isMounted = true;\r\n this.$vm.__call_hook('mounted');\r\n this.$vm.__call_hook('onReady');\r\n }\r\n },\r\n detached () {\r\n this.$vm && this.$vm.$destroy();\r\n }\r\n },\r\n pageLifetimes: {\r\n show (args) {\r\n this.$vm && this.$vm.__call_hook('onPageShow', args);\r\n },\r\n hide () {\r\n this.$vm && this.$vm.__call_hook('onPageHide');\r\n },\r\n resize (size) {\r\n this.$vm && this.$vm.__call_hook('onPageResize', size);\r\n }\r\n },\r\n methods: {\r\n __l: handleLink,\r\n __e: handleEvent\r\n }\r\n };\r\n // externalClasses\r\n if (vueOptions.externalClasses) {\r\n componentOptions.externalClasses = vueOptions.externalClasses;\r\n }\r\n\r\n if (Array.isArray(vueOptions.wxsCallMethods)) {\r\n vueOptions.wxsCallMethods.forEach(callMethod => {\r\n componentOptions.methods[callMethod] = function (args) {\r\n return this.$vm[callMethod](args)\r\n };\r\n });\r\n }\r\n\r\n if (isPage) {\r\n return componentOptions\r\n }\r\n return [componentOptions, VueComponent]\r\n}\r\n\r\nfunction parseComponent (vueComponentOptions) {\r\n return parseBaseComponent(vueComponentOptions, {\r\n isPage,\r\n initRelation\r\n })\r\n}\r\n\r\nconst hooks$1 = [\r\n 'onShow',\r\n 'onHide',\r\n 'onUnload'\r\n];\r\n\r\nhooks$1.push(...PAGE_EVENT_HOOKS);\r\n\r\nfunction parseBasePage (vuePageOptions, {\r\n isPage,\r\n initRelation\r\n}) {\r\n const pageOptions = parseComponent(vuePageOptions);\r\n\r\n initHooks(pageOptions.methods, hooks$1, vuePageOptions);\r\n\r\n pageOptions.methods.onLoad = function (query) {\r\n this.options = query;\r\n const copyQuery = Object.assign({}, query);\r\n delete copyQuery.__id__;\r\n this.$page = {\r\n fullPath: '/' + (this.route || this.is) + stringifyQuery(copyQuery)\r\n };\r\n this.$vm.$mp.query = query; // 兼容 mpvue\r\n this.$vm.__call_hook('onLoad', query);\r\n };\r\n initUnknownHooks(pageOptions.methods, vuePageOptions, ['onReady']);\r\n\r\n return pageOptions\r\n}\r\n\r\nfunction parsePage (vuePageOptions) {\r\n return parseBasePage(vuePageOptions, {\r\n isPage,\r\n initRelation\r\n })\r\n}\r\n\r\nfunction createPage (vuePageOptions) {\r\n {\r\n return Component(parsePage(vuePageOptions))\r\n }\r\n}\r\n\r\nfunction createComponent (vueOptions) {\r\n {\r\n return Component(parseComponent(vueOptions))\r\n }\r\n}\r\n\r\nfunction createSubpackageApp (vm) {\r\n const appOptions = parseApp(vm);\r\n const app = getApp({\r\n allowDefault: true\r\n });\r\n vm.$scope = app;\r\n const globalData = app.globalData;\r\n if (globalData) {\r\n Object.keys(appOptions.globalData).forEach(name => {\r\n if (!hasOwn(globalData, name)) {\r\n globalData[name] = appOptions.globalData[name];\r\n }\r\n });\r\n }\r\n Object.keys(appOptions).forEach(name => {\r\n if (!hasOwn(app, name)) {\r\n app[name] = appOptions[name];\r\n }\r\n });\r\n if (isFn(appOptions.onShow) && wx.onAppShow) {\r\n wx.onAppShow((...args) => {\r\n vm.__call_hook('onShow', args);\r\n });\r\n }\r\n if (isFn(appOptions.onHide) && wx.onAppHide) {\r\n wx.onAppHide((...args) => {\r\n vm.__call_hook('onHide', args);\r\n });\r\n }\r\n if (isFn(appOptions.onLaunch)) {\r\n const args = wx.getLaunchOptionsSync && wx.getLaunchOptionsSync();\r\n vm.__call_hook('onLaunch', args);\r\n }\r\n return vm\r\n}\r\n\r\nfunction createPlugin (vm) {\r\n const appOptions = parseApp(vm);\r\n if (isFn(appOptions.onShow) && wx.onAppShow) {\r\n wx.onAppShow((...args) => {\r\n vm.__call_hook('onShow', args);\r\n });\r\n }\r\n if (isFn(appOptions.onHide) && wx.onAppHide) {\r\n wx.onAppHide((...args) => {\r\n vm.__call_hook('onHide', args);\r\n });\r\n }\r\n if (isFn(appOptions.onLaunch)) {\r\n const args = wx.getLaunchOptionsSync && wx.getLaunchOptionsSync();\r\n vm.__call_hook('onLaunch', args);\r\n }\r\n return vm\r\n}\r\n\r\ntodos.forEach(todoApi => {\r\n protocols[todoApi] = false;\r\n});\r\n\r\ncanIUses.forEach(canIUseApi => {\r\n const apiName = protocols[canIUseApi] && protocols[canIUseApi].name ? protocols[canIUseApi].name\r\n : canIUseApi;\r\n if (!wx.canIUse(apiName)) {\r\n protocols[canIUseApi] = false;\r\n }\r\n});\r\n\r\nlet uni = {};\r\n\r\nif (typeof Proxy !== 'undefined' && \"mp-weixin\" !== 'app-plus') {\r\n uni = new Proxy({}, {\r\n get (target, name) {\r\n if (hasOwn(target, name)) {\r\n return target[name]\r\n }\r\n if (baseApi[name]) {\r\n return baseApi[name]\r\n }\r\n if (api[name]) {\r\n return promisify(name, api[name])\r\n }\r\n {\r\n if (extraApi[name]) {\r\n return promisify(name, extraApi[name])\r\n }\r\n if (todoApis[name]) {\r\n return promisify(name, todoApis[name])\r\n }\r\n }\r\n if (eventApi[name]) {\r\n return eventApi[name]\r\n }\r\n if (!hasOwn(wx, name) && !hasOwn(protocols, name)) {\r\n return\r\n }\r\n return promisify(name, wrapper(name, wx[name]))\r\n },\r\n set (target, name, value) {\r\n target[name] = value;\r\n return true\r\n }\r\n });\r\n} else {\r\n Object.keys(baseApi).forEach(name => {\r\n uni[name] = baseApi[name];\r\n });\r\n\r\n {\r\n Object.keys(todoApis).forEach(name => {\r\n uni[name] = promisify(name, todoApis[name]);\r\n });\r\n Object.keys(extraApi).forEach(name => {\r\n uni[name] = promisify(name, todoApis[name]);\r\n });\r\n }\r\n\r\n Object.keys(eventApi).forEach(name => {\r\n uni[name] = eventApi[name];\r\n });\r\n\r\n Object.keys(api).forEach(name => {\r\n uni[name] = promisify(name, api[name]);\r\n });\r\n\r\n Object.keys(wx).forEach(name => {\r\n if (hasOwn(wx, name) || hasOwn(protocols, name)) {\r\n uni[name] = promisify(name, wrapper(name, wx[name]));\r\n }\r\n });\r\n}\r\n\r\nwx.createApp = createApp;\r\nwx.createPage = createPage;\r\nwx.createComponent = createComponent;\r\nwx.createSubpackageApp = createSubpackageApp;\r\nwx.createPlugin = createPlugin;\r\n\r\nvar uni$1 = uni;\r\n\r\nexport default uni$1;\r\nexport { createApp, createComponent, createPage, createPlugin, createSubpackageApp };\r\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n// This method of obtaining a reference to the global object needs to be\n// kept identical to the way it is obtained in runtime.js\nvar g = (function() {\n return this || (typeof self === \"object\" && self);\n})() || Function(\"return this\")();\n\n// Use `getOwnPropertyNames` because not all browsers support calling\n// `hasOwnProperty` on the global `self` object in a worker. See #183.\nvar hadRuntime = g.regeneratorRuntime &&\n Object.getOwnPropertyNames(g).indexOf(\"regeneratorRuntime\") >= 0;\n\n// Save the old regeneratorRuntime in case it needs to be restored later.\nvar oldRuntime = hadRuntime && g.regeneratorRuntime;\n\n// Force reevalutation of runtime.js.\ng.regeneratorRuntime = undefined;\n\nmodule.exports = require(\"./runtime\");\n\nif (hadRuntime) {\n // Restore the original runtime.\n g.regeneratorRuntime = oldRuntime;\n} else {\n // Remove the global property added by runtime.js.\n try {\n delete g.regeneratorRuntime;\n } catch(e) {\n g.regeneratorRuntime = undefined;\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:55:58\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/codeInput.js\n */\nexport default {\n // codeInput 组件\n codeInput: {\n\t\tadjustPosition: true,\n maxlength: 6,\n dot: false,\n mode: 'box',\n hairline: false,\n space: 10,\n value: '',\n focus: false,\n bold: false,\n color: '#606266',\n fontSize: 18,\n size: 35,\n disabledKeyboard: false,\n borderColor: '#c9cacc',\n\t\tdisabledDot: true\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:56:12\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/col.js\n */\nexport default {\n // col 组件\n col: {\n span: 12,\n offset: 0,\n justify: 'start',\n align: 'stretch',\n textAlign: 'left'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:56:30\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/collapse.js\n */\nexport default {\n // collapse 组件\n collapse: {\n value: null,\n accordion: false,\n border: true\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:56:42\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/collapseItem.js\n */\nexport default {\n // collapseItem 组件\n collapseItem: {\n title: '',\n value: '',\n label: '',\n disabled: false,\n isLink: true,\n clickable: true,\n border: true,\n align: 'left',\n name: '',\n icon: '',\n duration: 300\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:57:16\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/columnNotice.js\n */\nexport default {\n // columnNotice 组件\n columnNotice: {\n text: '',\n icon: 'volume',\n mode: '',\n color: '#f9ae3d',\n bgColor: '#fdf6ec',\n fontSize: 14,\n speed: 80,\n step: false,\n duration: 1500,\n disableTouch: true\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:11:29\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/countDown.js\n */\nexport default {\n // u-count-down 计时器组件\n countDown: {\n time: 0,\n format: 'HH:mm:ss',\n autoStart: true,\n millisecond: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:57:32\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/countTo.js\n */\nexport default {\n // countTo 组件\n countTo: {\n startVal: 0,\n endVal: 0,\n duration: 2000,\n autoplay: true,\n decimals: 0,\n useEasing: true,\n decimal: '.',\n color: '#606266',\n fontSize: 22,\n bold: false,\n separator: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:57:48\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/datetimePicker.js\n */\nexport default {\n // datetimePicker 组件\n datetimePicker: {\n show: false,\n showToolbar: true,\n value: '',\n title: '',\n mode: 'datetime',\n maxDate: new Date(new Date().getFullYear() + 10, 0, 1).getTime(),\n minDate: new Date(new Date().getFullYear() - 10, 0, 1).getTime(),\n minHour: 0,\n maxHour: 23,\n minMinute: 0,\n maxMinute: 59,\n filter: null,\n formatter: null,\n loading: false,\n itemHeight: 44,\n cancelText: '取消',\n confirmText: '确认',\n cancelColor: '#909193',\n confirmColor: '#3c9cff',\n visibleItemCount: 5,\n closeOnClickOverlay: false,\n defaultIndex: () => []\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:58:03\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/divider.js\n */\nexport default {\n // divider组件\n divider: {\n dashed: false,\n hairline: true,\n dot: false,\n textPosition: 'center',\n text: '',\n textSize: 14,\n textColor: '#909399',\n lineColor: '#dcdfe6'\n }\n\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:03:27\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/empty.js\n */\nexport default {\n // empty组件\n empty: {\n icon: '',\n text: '',\n textColor: '#c0c4cc',\n textSize: 14,\n iconColor: '#c0c4cc',\n iconSize: 90,\n mode: 'data',\n width: 160,\n height: 160,\n show: true,\n marginTop: 0\n }\n\n}\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n!(function(global) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n var inModule = typeof module === \"object\";\n var runtime = global.regeneratorRuntime;\n if (runtime) {\n if (inModule) {\n // If regeneratorRuntime is defined globally and we're in a module,\n // make the exports object identical to regeneratorRuntime.\n module.exports = runtime;\n }\n // Don't bother evaluating the rest of this file if the runtime was\n // already defined globally.\n return;\n }\n\n // Define the runtime globally (as expected by generated code) as either\n // module.exports (if we're in a module) or a new, empty object.\n runtime = global.regeneratorRuntime = inModule ? module.exports : {};\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n runtime.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunctionPrototype[toStringTagSymbol] =\n GeneratorFunction.displayName = \"GeneratorFunction\";\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n prototype[method] = function(arg) {\n return this._invoke(method, arg);\n };\n });\n }\n\n runtime.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n runtime.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n if (!(toStringTagSymbol in genFun)) {\n genFun[toStringTagSymbol] = \"GeneratorFunction\";\n }\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n runtime.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return Promise.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return Promise.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new Promise(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n runtime.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n runtime.async = function(innerFn, outerFn, self, tryLocsList) {\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList)\n );\n\n return runtime.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n if (delegate.iterator.return) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n Gp[toStringTagSymbol] = \"Generator\";\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n runtime.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n runtime.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n})(\n // In sloppy mode, unbound `this` refers to the global object, fallback to\n // Function constructor if we're in global strict mode. That is sadly a form\n // of indirect eval which violates Content Security Policy.\n (function() {\n return this || (typeof self === \"object\" && self);\n })() || Function(\"return this\")()\n);\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:03:49\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/form.js\n */\nexport default {\n // form 组件\n form: {\n model: () => ({}),\n rules: () => ({}),\n errorType: 'message',\n borderBottom: true,\n labelPosition: 'left',\n labelWidth: 45,\n labelAlign: 'left',\n labelStyle: () => ({})\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:04:32\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/formItem.js\n */\nexport default {\n // formItem 组件\n formItem: {\n label: '',\n prop: '',\n borderBottom: '',\n labelPosition: '',\n labelWidth: '',\n rightIcon: '',\n leftIcon: '',\n required: false,\n leftIconStyle: '',\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:05:25\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/gap.js\n */\nexport default {\n // gap组件\n gap: {\n bgColor: 'transparent',\n height: 20,\n marginTop: 0,\n marginBottom: 0,\n customStyle: {}\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:05:57\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/grid.js\n */\nexport default {\n // grid组件\n grid: {\n col: 3,\n border: false,\n align: 'left'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:06:13\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/gridItem.js\n */\nexport default {\n // grid-item组件\n gridItem: {\n name: null,\n bgColor: 'transparent'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 18:00:14\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/icon.js\n */\nimport config from '../config'\n\nconst {\n color\n} = config\nexport default {\n // icon组件\n icon: {\n name: '',\n color: color['u-content-color'],\n size: '16px',\n bold: false,\n index: '',\n hoverClass: '',\n customPrefix: 'uicon',\n label: '',\n labelPos: 'right',\n labelSize: '15px',\n labelColor: color['u-content-color'],\n space: '3px',\n imgMode: '',\n width: '',\n height: '',\n top: 0,\n stop: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:01:51\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/image.js\n */\nexport default {\n // image组件\n image: {\n src: '',\n mode: 'aspectFill',\n width: '300',\n height: '225',\n shape: 'square',\n radius: 0,\n lazyLoad: true,\n showMenuByLongpress: true,\n loadingIcon: 'photo',\n errorIcon: 'error-circle',\n showLoading: true,\n showError: true,\n fade: true,\n webp: false,\n duration: 500,\n bgColor: '#f3f4f6'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:13:15\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/indexAnchor.js\n */\nexport default {\n // indexAnchor 组件\n indexAnchor: {\n text: '',\n color: '#606266',\n size: 14,\n bgColor: '#dedede',\n height: 32\n }\n}\n","/*\n 将 html 解析为适用于小程序 rich-text 的 DOM 结构\n github:https://github.com/jin-yufeng/Parser\n docs:https://jin-yufeng.github.io/Parser\n author:JinYufeng\n update:2020/04/13\n*/\nvar cfg = require('./config.js'),\n\tblankChar = cfg.blankChar,\n\tCssHandler = require('./CssHandler.js'),\n\t{\n\t\tscreenWidth,\n\t\tsystem\n\t} = wx.getSystemInfoSync();\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar emoji; // emoji 补丁包 https://jin-yufeng.github.io/Parser/#/instructions?id=emoji\nclass MpHtmlParser {\n\tconstructor(data, options = {}) {\n\t\tthis.attrs = {};\n\t\tthis.compress = options.compress;\n\t\tthis.CssHandler = new CssHandler(options.tagStyle, screenWidth);\n\t\tthis.data = data;\n\t\tthis.domain = options.domain;\n\t\tthis.DOM = [];\n\t\tthis.i = this.start = this.audioNum = this.imgNum = this.videoNum = 0;\n\t\tthis.protocol = this.domain && this.domain.includes('://') ? this.domain.split('://')[0] : '';\n\t\tthis.state = this.Text;\n\t\tthis.STACK = [];\n\t\tthis.useAnchor = options.useAnchor;\n\t\tthis.xml = options.xml;\n\t}\n\tparse() {\n\t\tif (emoji) this.data = emoji.parseEmoji(this.data);\n\t\tfor (var c; c = this.data[this.i]; this.i++)\n\t\t\tthis.state(c);\n\t\tif (this.state == this.Text) this.setText();\n\t\twhile (this.STACK.length) this.popNode(this.STACK.pop());\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\t\tif (this.DOM.length) {\n\t\t\tthis.DOM[0].PoweredBy = 'Parser';\n\t\t\tif (this.title) this.DOM[0].title = this.title;\n\t\t}\n\t\treturn this.DOM;\n\t}\n\t// 设置属性\n\tsetAttr() {\n\t\tvar name = this.getName(this.attrName);\n\t\tif (cfg.trustAttrs[name]) {\n\t\t\tif (!this.attrVal) {\n\t\t\t\tif (cfg.boolAttrs[name]) this.attrs[name] = 'T';\n\t\t\t} else if (name == 'src') this.attrs[name] = this.getUrl(this.attrVal.replace(/&/g, '&'));\n\t\t\telse this.attrs[name] = this.attrVal;\n\t\t}\n\t\tthis.attrVal = '';\n\t\twhile (blankChar[this.data[this.i]]) this.i++;\n\t\tif (this.isClose()) this.setNode();\n\t\telse {\n\t\t\tthis.start = this.i;\n\t\t\tthis.state = this.AttrName;\n\t\t}\n\t}\n\t// 设置文本节点\n\tsetText() {\n\t\tvar back, text = this.section();\n\t\tif (!text) return;\n\t\ttext = (cfg.onText && cfg.onText(text, () => back = true)) || text;\n\t\tif (back) {\n\t\t\tthis.data = this.data.substr(0, this.start) + text + this.data.substr(this.i);\n\t\t\tlet j = this.start + text.length;\n\t\t\tfor (this.i = this.start; this.i < j; this.i++) this.state(this.data[this.i]);\n\t\t\treturn;\n\t\t}\n\t\tif (!this.pre) {\n\t\t\t// 合并空白符\n\t\t\tvar tmp = [];\n\t\t\tfor (let i = text.length, c; c = text[--i];)\n\t\t\t\tif (!blankChar[c] || (!blankChar[tmp[0]] && (c = ' '))) tmp.unshift(c);\n\t\t\ttext = tmp.join('');\n\t\t\tif (text == ' ') return;\n\t\t}\n\t\t// 处理实体\n\t\tvar siblings = this.siblings(),\n\t\t\ti = -1,\n\t\t\tj, en;\n\t\twhile (1) {\n\t\t\tif ((i = text.indexOf('&', i + 1)) == -1) break;\n\t\t\tif ((j = text.indexOf(';', i + 2)) == -1) break;\n\t\t\tif (text[i + 1] == '#') {\n\t\t\t\ten = parseInt((text[i + 2] == 'x' ? '0' : '') + text.substring(i + 2, j));\n\t\t\t\tif (!isNaN(en)) text = text.substr(0, i) + String.fromCharCode(en) + text.substring(j + 1);\n\t\t\t} else {\n\t\t\t\ten = text.substring(i + 1, j);\n\n\t\t\t\tif (en == 'nbsp') text = text.substr(0, i) + '\\xA0' + text.substr(j + 1); // 解决   失效\n\t\t\t\telse if (en != 'lt' && en != 'gt' && en != 'amp' && en != 'ensp' && en != 'emsp' && en != 'quot' && en != 'apos') {\n\t\t\t\t\ti && siblings.push({\n\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\ttext: text.substr(0, i)\n\t\t\t\t\t})\n\t\t\t\t\tsiblings.push({\n\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\ttext: `&${en};`,\n\t\t\t\t\t\ten: 1\n\t\t\t\t\t})\n\t\t\t\t\ttext = text.substr(j + 1);\n\t\t\t\t\ti = -1;\n\t\t\t\t}\n\n\n\n\n\t\t\t}\n\t\t}\n\t\ttext && siblings.push({\n\t\t\ttype: 'text',\n\t\t\ttext\n\t\t})\n\t}\n\t// 设置元素节点\n\tsetNode() {\n\t\tvar node = {\n\t\t\t\tname: this.tagName.toLowerCase(),\n\t\t\t\tattrs: this.attrs\n\t\t\t},\n\t\t\tclose = cfg.selfClosingTags[node.name] || (this.xml && this.data[this.i] == '/');\n\t\tthis.attrs = {};\n\t\tif (!cfg.ignoreTags[node.name]) {\n\t\t\tthis.matchAttr(node);\n\t\t\tif (!close) {\n\t\t\t\tnode.children = [];\n\t\t\t\tif (node.name == 'pre' && cfg.highlight) {\n\t\t\t\t\tthis.remove(node);\n\t\t\t\t\tthis.pre = node.pre = true;\n\t\t\t\t}\n\t\t\t\tthis.siblings().push(node);\n\t\t\t\tthis.STACK.push(node);\n\t\t\t} else if (!cfg.filter || cfg.filter(node, this) != false)\n\t\t\t\tthis.siblings().push(node);\n\t\t} else {\n\t\t\tif (!close) this.remove(node);\n\t\t\telse if (node.name == 'source') {\n\t\t\t\tvar parent = this.STACK[this.STACK.length - 1],\n\t\t\t\t\tattrs = node.attrs;\n\t\t\t\tif (parent && attrs.src)\n\t\t\t\t\tif (parent.name == 'video' || parent.name == 'audio')\n\t\t\t\t\t\tparent.attrs.source.push(attrs.src);\n\t\t\t\t\telse {\n\t\t\t\t\t\tvar i, media = attrs.media;\n\t\t\t\t\t\tif (parent.name == 'picture' && !parent.attrs.src && !(attrs.src.indexOf('.webp') && system.includes('iOS')) &&\n\t\t\t\t\t\t\t(!media || (media.includes('px') &&\n\t\t\t\t\t\t\t\t(((i = media.indexOf('min-width')) != -1 && (i = media.indexOf(':', i + 8)) != -1 && screenWidth > parseInt(\n\t\t\t\t\t\t\t\t\t\tmedia.substr(i + 1))) ||\n\t\t\t\t\t\t\t\t\t((i = media.indexOf('max-width')) != -1 && (i = media.indexOf(':', i + 8)) != -1 && screenWidth < parseInt(\n\t\t\t\t\t\t\t\t\t\tmedia.substr(i + 1)))))))\n\t\t\t\t\t\t\tparent.attrs.src = attrs.src;\n\t\t\t\t\t}\n\t\t\t} else if (node.name == 'base' && !this.domain) this.domain = node.attrs.href;\n\t\t}\n\t\tif (this.data[this.i] == '/') this.i++;\n\t\tthis.start = this.i + 1;\n\t\tthis.state = this.Text;\n\t}\n\t// 移除标签\n\tremove(node) {\n\t\tvar name = node.name,\n\t\t\tj = this.i;\n\t\twhile (1) {\n\t\t\tif ((this.i = this.data.indexOf('', this.i)) == -1) this.i = this.data.length;\n\t\t\t\t// 处理 svg\n\t\t\t\tif (name == 'svg') {\n\t\t\t\t\tvar src = this.data.substring(j, this.i + 1);\n\t\t\t\t\tif (!node.attrs.xmlns) src = ' xmlns=\"http://www.w3.org/2000/svg\"' + src;\n\t\t\t\t\tvar i = j;\n\t\t\t\t\twhile (this.data[j] != '<') j--;\n\t\t\t\t\tsrc = this.data.substring(j, i) + src;\n\t\t\t\t\tvar parent = this.STACK[this.STACK.length - 1];\n\t\t\t\t\tif (node.attrs.width == '100%' && parent && (parent.attrs.style || '').includes('inline'))\n\t\t\t\t\t\tparent.attrs.style = 'width:300px;max-width:100%;' + parent.attrs.style;\n\t\t\t\t\tthis.siblings().push({\n\t\t\t\t\t\tname: 'img',\n\t\t\t\t\t\tattrs: {\n\t\t\t\t\t\t\tsrc: 'data:image/svg+xml;utf8,' + src.replace(/#/g, '%23'),\n\t\t\t\t\t\t\tignore: 'T'\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t}\n\t// 处理属性\n\tmatchAttr(node) {\n\t\tvar attrs = node.attrs,\n\t\t\tstyle = this.CssHandler.match(node.name, attrs, node) + (attrs.style || ''),\n\t\t\tstyleObj = {};\n\t\tif (attrs.id) {\n\t\t\tif (this.compress & 1) attrs.id = void 0;\n\t\t\telse if (this.useAnchor) this.bubble();\n\t\t}\n\t\tif ((this.compress & 2) && attrs.class) attrs.class = void 0;\n\t\tswitch (node.name) {\n\t\t\tcase 'img':\n\t\t\t\tif (attrs['data-src']) {\n\t\t\t\t\tattrs.src = attrs.src || attrs['data-src'];\n\t\t\t\t\tattrs['data-src'] = void 0;\n\t\t\t\t}\n\t\t\t\tif (attrs.src && !attrs.ignore) {\n\t\t\t\t\tif (this.bubble()) attrs.i = (this.imgNum++).toString();\n\t\t\t\t\telse attrs.ignore = 'T';\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase 'a':\n\t\t\tcase 'ad':\n\n\n\n\n\t\t\t\tthis.bubble();\n\t\t\t\tbreak;\n\t\t\tcase 'font':\n\t\t\t\tif (attrs.color) {\n\t\t\t\t\tstyleObj['color'] = attrs.color;\n\t\t\t\t\tattrs.color = void 0;\n\t\t\t\t}\n\t\t\t\tif (attrs.face) {\n\t\t\t\t\tstyleObj['font-family'] = attrs.face;\n\t\t\t\t\tattrs.face = void 0;\n\t\t\t\t}\n\t\t\t\tif (attrs.size) {\n\t\t\t\t\tvar size = parseInt(attrs.size);\n\t\t\t\t\tif (size < 1) size = 1;\n\t\t\t\t\telse if (size > 7) size = 7;\n\t\t\t\t\tvar map = ['xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'];\n\t\t\t\t\tstyleObj['font-size'] = map[size - 1];\n\t\t\t\t\tattrs.size = void 0;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase 'video':\n\t\t\tcase 'audio':\n\t\t\t\tif (!attrs.id) attrs.id = node.name + (++this[`${node.name}Num`]);\n\t\t\t\telse this[`${node.name}Num`]++;\n\t\t\t\tif (node.name == 'video') {\n\t\t\t\t\tif (attrs.width) {\n\t\t\t\t\t\tstyle = `width:${parseFloat(attrs.width) + (attrs.width.includes('%') ? '%' : 'px')};${style}`;\n\t\t\t\t\t\tattrs.width = void 0;\n\t\t\t\t\t}\n\t\t\t\t\tif (attrs.height) {\n\t\t\t\t\t\tstyle = `height:${parseFloat(attrs.height) + (attrs.height.includes('%') ? '%' : 'px')};${style}`;\n\t\t\t\t\t\tattrs.height = void 0;\n\t\t\t\t\t}\n\t\t\t\t\tif (this.videoNum > 3) node.lazyLoad = true;\n\t\t\t\t}\n\t\t\t\tattrs.source = [];\n\t\t\t\tif (attrs.src) attrs.source.push(attrs.src);\n\t\t\t\tif (!attrs.controls && !attrs.autoplay)\n\t\t\t\t\tconsole.warn(`存在没有 controls 属性的 ${node.name} 标签,可能导致无法播放`, node);\n\t\t\t\tthis.bubble();\n\t\t\t\tbreak;\n\t\t\tcase 'td':\n\t\t\tcase 'th':\n\t\t\t\tif (attrs.colspan || attrs.rowspan)\n\t\t\t\t\tfor (var k = this.STACK.length, item; item = this.STACK[--k];)\n\t\t\t\t\t\tif (item.name == 'table') {\n\t\t\t\t\t\t\titem.c = void 0;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t}\n\t\tif (attrs.align) {\n\t\t\tstyleObj['text-align'] = attrs.align;\n\t\t\tattrs.align = void 0;\n\t\t}\n\t\t// 压缩 style\n\t\tvar styles = style.replace(/"/g, '\"').replace(/&/g, '&').split(';');\n\t\tstyle = '';\n\t\tfor (var i = 0, len = styles.length; i < len; i++) {\n\t\t\tvar info = styles[i].split(':');\n\t\t\tif (info.length < 2) continue;\n\t\t\tlet key = info[0].trim().toLowerCase(),\n\t\t\t\tvalue = info.slice(1).join(':').trim();\n\t\t\tif (value.includes('-webkit') || value.includes('-moz') || value.includes('-ms') || value.includes('-o') || value\n\t\t\t\t.includes(\n\t\t\t\t\t'safe'))\n\t\t\t\tstyle += `;${key}:${value}`;\n\t\t\telse if (!styleObj[key] || value.includes('import') || !styleObj[key].includes('import'))\n\t\t\t\tstyleObj[key] = value;\n\t\t}\n\t\tif (node.name == 'img' && parseInt(styleObj.width || attrs.width) > screenWidth)\n\t\t\tstyleObj.height = 'auto';\n\t\tfor (var key in styleObj) {\n\t\t\tvar value = styleObj[key];\n\t\t\tif (key.includes('flex') || key == 'order' || key == 'self-align') node.c = 1;\n\t\t\t// 填充链接\n\t\t\tif (value.includes('url')) {\n\t\t\t\tvar j = value.indexOf('(');\n\t\t\t\tif (j++ != -1) {\n\t\t\t\t\twhile (value[j] == '\"' || value[j] == \"'\" || blankChar[value[j]]) j++;\n\t\t\t\t\tvalue = value.substr(0, j) + this.getUrl(value.substr(j));\n\t\t\t\t}\n\t\t\t}\n\t\t\t// 转换 rpx\n\t\t\telse if (value.includes('rpx'))\n\t\t\t\tvalue = value.replace(/[0-9.]+\\s*rpx/g, $ => parseFloat($) * screenWidth / 750 + 'px');\n\t\t\telse if (key == 'white-space' && value.includes('pre'))\n\t\t\t\tthis.pre = node.pre = true;\n\t\t\tstyle += `;${key}:${value}`;\n\t\t}\n\t\tstyle = style.substr(1);\n\t\tif (style) attrs.style = style;\n\t}\n\t// 节点出栈处理\n\tpopNode(node) {\n\t\t// 空白符处理\n\t\tif (node.pre) {\n\t\t\tnode.pre = this.pre = void 0;\n\t\t\tfor (let i = this.STACK.length; i--;)\n\t\t\t\tif (this.STACK[i].pre)\n\t\t\t\t\tthis.pre = true;\n\t\t}\n\t\tif (node.name == 'head' || (cfg.filter && cfg.filter(node, this) == false))\n\t\t\treturn this.siblings().pop();\n\t\tvar attrs = node.attrs;\n\t\t// 替换一些标签名\n\t\tif (node.name == 'picture') {\n\t\t\tnode.name = 'img';\n\t\t\tif (!attrs.src && (node.children[0] || '').name == 'img')\n\t\t\t\tattrs.src = node.children[0].attrs.src;\n\t\t\tif (attrs.src && !attrs.ignore)\n\t\t\t\tattrs.i = (this.imgNum++).toString();\n\t\t\treturn node.children = void 0;\n\t\t}\n\t\tif (cfg.blockTags[node.name]) node.name = 'div';\n\t\telse if (!cfg.trustTags[node.name]) node.name = 'span';\n\t\t// 处理列表\n\t\tif (node.c) {\n\t\t\tif (node.name == 'ul') {\n\t\t\t\tvar floor = 1;\n\t\t\t\tfor (let i = this.STACK.length; i--;)\n\t\t\t\t\tif (this.STACK[i].name == 'ul') floor++;\n\t\t\t\tif (floor != 1)\n\t\t\t\t\tfor (let i = node.children.length; i--;)\n\t\t\t\t\t\tnode.children[i].floor = floor;\n\t\t\t} else if (node.name == 'ol') {\n\t\t\t\tfor (let i = 0, num = 1, child; child = node.children[i++];)\n\t\t\t\t\tif (child.name == 'li') {\n\t\t\t\t\t\tchild.type = 'ol';\n\t\t\t\t\t\tchild.num = ((num, type) => {\n\t\t\t\t\t\t\tif (type == 'a') return String.fromCharCode(97 + (num - 1) % 26);\n\t\t\t\t\t\t\tif (type == 'A') return String.fromCharCode(65 + (num - 1) % 26);\n\t\t\t\t\t\t\tif (type == 'i' || type == 'I') {\n\t\t\t\t\t\t\t\tnum = (num - 1) % 99 + 1;\n\t\t\t\t\t\t\t\tvar one = ['I', 'II', 'III', 'IV', 'V', 'VI', 'VII', 'VIII', 'IX'],\n\t\t\t\t\t\t\t\t\tten = ['X', 'XX', 'XXX', 'XL', 'L', 'LX', 'LXX', 'LXXX', 'XC'],\n\t\t\t\t\t\t\t\t\tres = (ten[Math.floor(num / 10) - 1] || '') + (one[num % 10 - 1] || '');\n\t\t\t\t\t\t\t\tif (type == 'i') return res.toLowerCase();\n\t\t\t\t\t\t\t\treturn res;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn num;\n\t\t\t\t\t\t})(num++, attrs.type) + '.';\n\t\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t// 处理表格的边框\n\t\tif (node.name == 'table') {\n\t\t\tvar padding = attrs.cellpadding,\n\t\t\t\tspacing = attrs.cellspacing,\n\t\t\t\tborder = attrs.border;\n\t\t\tif (node.c) {\n\t\t\t\tthis.bubble();\n\t\t\t\tif (!padding) padding = 2;\n\t\t\t\tif (!spacing) spacing = 2;\n\t\t\t}\n\t\t\tif (border) attrs.style = `border:${border}px solid gray;${attrs.style || ''}`;\n\t\t\tif (spacing) attrs.style = `border-spacing:${spacing}px;${attrs.style || ''}`;\n\t\t\tif (border || padding)\n\t\t\t\t(function f(ns) {\n\t\t\t\t\tfor (var i = 0, n; n = ns[i]; i++) {\n\t\t\t\t\t\tif (n.name == 'th' || n.name == 'td') {\n\t\t\t\t\t\t\tif (border) n.attrs.style = `border:${border}px solid gray;${n.attrs.style}`;\n\t\t\t\t\t\t\tif (padding) n.attrs.style = `padding:${padding}px;${n.attrs.style}`;\n\t\t\t\t\t\t} else f(n.children || []);\n\t\t\t\t\t}\n\t\t\t\t})(node.children)\n\t\t}\n\t\tthis.CssHandler.pop && this.CssHandler.pop(node);\n\t\t// 自动压缩\n\t\tif (node.name == 'div' && !Object.keys(attrs).length) {\n\t\t\tvar siblings = this.siblings();\n\t\t\tif (node.children.length == 1 && node.children[0].name == 'div')\n\t\t\t\tsiblings[siblings.length - 1] = node.children[0];\n\t\t}\n\t}\n\t// 工具函数\n\tbubble() {\n\t\tfor (var i = this.STACK.length, item; item = this.STACK[--i];) {\n\t\t\tif (cfg.richOnlyTags[item.name]) {\n\t\t\t\tif (item.name == 'table' && !Object.hasOwnProperty.call(item, 'c')) item.c = 1;\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\titem.c = 1;\n\t\t}\n\t\treturn true;\n\t}\n\tgetName = val => this.xml ? val : val.toLowerCase();\n\tgetUrl(url) {\n\t\tif (url[0] == '/') {\n\t\t\tif (url[1] == '/') url = this.protocol + ':' + url;\n\t\t\telse if (this.domain) url = this.domain + url;\n\t\t} else if (this.domain && url.indexOf('data:') != 0 && !url.includes('://'))\n\t\t\turl = this.domain + '/' + url;\n\t\treturn url;\n\t}\n\tisClose = () => this.data[this.i] == '>' || (this.data[this.i] == '/' && this.data[this.i + 1] == '>');\n\tsection = () => this.data.substring(this.start, this.i);\n\tsiblings = () => this.STACK.length ? this.STACK[this.STACK.length - 1].children : this.DOM;\n\t// 状态机\n\tText(c) {\n\t\tif (c == '<') {\n\t\t\tvar next = this.data[this.i + 1],\n\t\t\t\tisLetter = c => (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z');\n\t\t\tif (isLetter(next)) {\n\t\t\t\tthis.setText();\n\t\t\t\tthis.start = this.i + 1;\n\t\t\t\tthis.state = this.TagName;\n\t\t\t} else if (next == '/') {\n\t\t\t\tthis.setText();\n\t\t\t\tif (isLetter(this.data[++this.i + 1])) {\n\t\t\t\t\tthis.start = this.i + 1;\n\t\t\t\t\tthis.state = this.EndTag;\n\t\t\t\t} else\n\t\t\t\t\tthis.Comment();\n\t\t\t} else if (next == '!') {\n\t\t\t\tthis.setText();\n\t\t\t\tthis.Comment();\n\t\t\t}\n\t\t}\n\t}\n\tComment() {\n\t\tvar key;\n\t\tif (this.data.substring(this.i + 2, this.i + 4) == '--') key = '-->';\n\t\telse if (this.data.substring(this.i + 2, this.i + 9) == '[CDATA[') key = ']]>';\n\t\telse key = '>';\n\t\tif ((this.i = this.data.indexOf(key, this.i + 2)) == -1) this.i = this.data.length;\n\t\telse this.i += key.length - 1;\n\t\tthis.start = this.i + 1;\n\t\tthis.state = this.Text;\n\t}\n\tTagName(c) {\n\t\tif (blankChar[c]) {\n\t\t\tthis.tagName = this.section();\n\t\t\twhile (blankChar[this.data[this.i]]) this.i++;\n\t\t\tif (this.isClose()) this.setNode();\n\t\t\telse {\n\t\t\t\tthis.start = this.i;\n\t\t\t\tthis.state = this.AttrName;\n\t\t\t}\n\t\t} else if (this.isClose()) {\n\t\t\tthis.tagName = this.section();\n\t\t\tthis.setNode();\n\t\t}\n\t}\n\tAttrName(c) {\n\t\tvar blank = blankChar[c];\n\t\tif (blank) {\n\t\t\tthis.attrName = this.section();\n\t\t\tc = this.data[this.i];\n\t\t}\n\t\tif (c == '=') {\n\t\t\tif (!blank) this.attrName = this.section();\n\t\t\twhile (blankChar[this.data[++this.i]]);\n\t\t\tthis.start = this.i--;\n\t\t\tthis.state = this.AttrValue;\n\t\t} else if (blank) this.setAttr();\n\t\telse if (this.isClose()) {\n\t\t\tthis.attrName = this.section();\n\t\t\tthis.setAttr();\n\t\t}\n\t}\n\tAttrValue(c) {\n\t\tif (c == '\"' || c == \"'\") {\n\t\t\tthis.start++;\n\t\t\tif ((this.i = this.data.indexOf(c, this.i + 1)) == -1) return this.i = this.data.length;\n\t\t\tthis.attrVal = this.section();\n\t\t\tthis.i++;\n\t\t} else {\n\t\t\tfor (; !blankChar[this.data[this.i]] && !this.isClose(); this.i++);\n\t\t\tthis.attrVal = this.section();\n\t\t}\n\t\tthis.setAttr();\n\t}\n\tEndTag(c) {\n\t\tif (blankChar[c] || c == '>' || c == '/') {\n\t\t\tvar name = this.getName(this.section());\n\t\t\tfor (var i = this.STACK.length; i--;)\n\t\t\t\tif (this.STACK[i].name == name) break;\n\t\t\tif (i != -1) {\n\t\t\t\tvar node;\n\t\t\t\twhile ((node = this.STACK.pop()).name != name);\n\t\t\t\tthis.popNode(node);\n\t\t\t} else if (name == 'p' || name == 'br')\n\t\t\t\tthis.siblings().push({\n\t\t\t\t\tname,\n\t\t\t\t\tattrs: {}\n\t\t\t\t});\n\t\t\tthis.i = this.data.indexOf('>', this.i);\n\t\t\tthis.start = this.i + 1;\n\t\t\tif (this.i == -1) this.i = this.data.length;\n\t\t\telse this.state = this.Text;\n\t\t}\n\t}\n}\nmodule.exports = MpHtmlParser;\n","/* 配置文件 */\n\nconst canIUse = wx.canIUse('editor'); // 高基础库标识,用于兼容\n\nmodule.exports = {\n\t// 过滤器函数\n\tfilter: null,\n\t// 代码高亮函数\n\thighlight: null,\n\t// 文本处理函数\n\tonText: null,\n\tblankChar: makeMap(' ,\\xA0,\\t,\\r,\\n,\\f'),\n\t// 块级标签,将被转为 div\n\tblockTags: makeMap('address,article,aside,body,caption,center,cite,footer,header,html,nav,section' + (\n\n\t\tcanIUse ? '' :\n\n\t\t',pre')),\n\t// 将被移除的标签\n\tignoreTags: makeMap(\n\t\t'area,base,basefont,canvas,command,frame,input,isindex,keygen,link,map,meta,param,script,source,style,svg,textarea,title,track,use,wbr'\n\n\t\t+ (canIUse ? ',rp' : '')\n\n\n\t\t+ ',embed,iframe'\n\n\t),\n\t// 只能被 rich-text 显示的标签\n\trichOnlyTags: makeMap('a,colgroup,fieldset,legend,picture,table'\n\n\t\t+ (canIUse ? ',bdi,bdo,caption,rt,ruby' : '')\n\n\t),\n\t// 自闭合的标签\n\tselfClosingTags: makeMap(\n\t\t'area,base,basefont,br,col,circle,ellipse,embed,frame,hr,img,input,isindex,keygen,line,link,meta,param,path,polygon,rect,source,track,use,wbr'\n\t),\n\t// 信任的属性\n\ttrustAttrs: makeMap(\n\t\t'align,alt,app-id,author,autoplay,border,cellpadding,cellspacing,class,color,colspan,controls,data-src,dir,face,height,href,id,ignore,loop,media,muted,name,path,poster,rowspan,size,span,src,start,style,type,unit-id,width,xmlns'\n\t),\n\t// bool 型的属性\n\tboolAttrs: makeMap('autoplay,controls,ignore,loop,muted'),\n\t// 信任的标签\n\ttrustTags: makeMap(\n\t\t'a,abbr,ad,audio,b,blockquote,br,code,col,colgroup,dd,del,dl,dt,div,em,fieldset,h1,h2,h3,h4,h5,h6,hr,i,img,ins,label,legend,li,ol,p,q,source,span,strong,sub,sup,table,tbody,td,tfoot,th,thead,tr,title,ul,video'\n\n\t\t+ (canIUse ? ',bdi,bdo,caption,pre,rt,ruby' : '')\n\n\n\n\n\t),\n\t// 默认的标签样式\n\tuserAgentStyles: {\n\t\taddress: 'font-style:italic',\n\t\tbig: 'display:inline;font-size:1.2em',\n\t\tblockquote: 'background-color:#f6f6f6;border-left:3px solid #dbdbdb;color:#6c6c6c;padding:5px 0 5px 10px',\n\t\tcaption: 'display:table-caption;text-align:center',\n\t\tcenter: 'text-align:center',\n\t\tcite: 'font-style:italic',\n\t\tdd: 'margin-left:40px',\n\t\timg: 'max-width:100%',\n\t\tmark: 'background-color:yellow',\n\t\tpicture: 'max-width:100%',\n\t\tpre: 'font-family:monospace;white-space:pre;overflow:scroll',\n\t\ts: 'text-decoration:line-through',\n\t\tsmall: 'display:inline;font-size:0.8em',\n\t\tu: 'text-decoration:underline'\n\t}\n}\n\nfunction makeMap(maprichee55text9oppplugin) {\n\tvar map = {},\n\t\tlist = maprichee55text9oppplugin.split(',');\n\tfor (var i = list.length; i--;)\n\t\tmap[list[i]] = true;\n\treturn map;\n}\n","/*\n 解析和匹配 Css 的选择器\n github:https://github.com/jin-yufeng/Parser\n docs:https://jin-yufeng.github.io/Parser\n author:JinYufeng\n update:2020/03/15\n*/\nvar cfg = require('./config.js');\nclass CssHandler {\n\tconstructor(tagStyle) {\n\t\tvar styles = Object.assign({}, cfg.userAgentStyles);\n\t\tfor (var item in tagStyle)\n\t\t\tstyles[item] = (styles[item] ? styles[item] + ';' : '') + tagStyle[item];\n\t\tthis.styles = styles;\n\t}\n\tgetStyle = data => this.styles = new CssParser(data, this.styles).parse();\n\tmatch(name, attrs) {\n\t\tvar tmp, matched = (tmp = this.styles[name]) ? tmp + ';' : '';\n\t\tif (attrs.class) {\n\t\t\tvar items = attrs.class.split(' ');\n\t\t\tfor (var i = 0, item; item = items[i]; i++)\n\t\t\t\tif (tmp = this.styles['.' + item])\n\t\t\t\t\tmatched += tmp + ';';\n\t\t}\n\t\tif (tmp = this.styles['#' + attrs.id])\n\t\t\tmatched += tmp + ';';\n\t\treturn matched;\n\t}\n}\nmodule.exports = CssHandler;\nclass CssParser {\n\tconstructor(data, init) {\n\t\tthis.data = data;\n\t\tthis.floor = 0;\n\t\tthis.i = 0;\n\t\tthis.list = [];\n\t\tthis.res = init;\n\t\tthis.state = this.Space;\n\t}\n\tparse() {\n\t\tfor (var c; c = this.data[this.i]; this.i++)\n\t\t\tthis.state(c);\n\t\treturn this.res;\n\t}\n\tsection = () => this.data.substring(this.start, this.i);\n\tisLetter = c => (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z');\n\t// 状态机\n\tSpace(c) {\n\t\tif (c == '.' || c == '#' || this.isLetter(c)) {\n\t\t\tthis.start = this.i;\n\t\t\tthis.state = this.Name;\n\t\t} else if (c == '/' && this.data[this.i + 1] == '*')\n\t\t\tthis.Comment();\n\t\telse if (!cfg.blankChar[c] && c != ';')\n\t\t\tthis.state = this.Ignore;\n\t}\n\tComment() {\n\t\tthis.i = this.data.indexOf('*/', this.i) + 1;\n\t\tif (!this.i) this.i = this.data.length;\n\t\tthis.state = this.Space;\n\t}\n\tIgnore(c) {\n\t\tif (c == '{') this.floor++;\n\t\telse if (c == '}' && !--this.floor) this.state = this.Space;\n\t}\n\tName(c) {\n\t\tif (cfg.blankChar[c]) {\n\t\t\tthis.list.push(this.section());\n\t\t\tthis.state = this.NameSpace;\n\t\t} else if (c == '{') {\n\t\t\tthis.list.push(this.section());\n\t\t\tthis.Content();\n\t\t} else if (c == ',') {\n\t\t\tthis.list.push(this.section());\n\t\t\tthis.Comma();\n\t\t} else if (!this.isLetter(c) && (c < '0' || c > '9') && c != '-' && c != '_')\n\t\t\tthis.state = this.Ignore;\n\t}\n\tNameSpace(c) {\n\t\tif (c == '{') this.Content();\n\t\telse if (c == ',') this.Comma();\n\t\telse if (!cfg.blankChar[c]) this.state = this.Ignore;\n\t}\n\tComma() {\n\t\twhile (cfg.blankChar[this.data[++this.i]]);\n\t\tif (this.data[this.i] == '{') this.Content();\n\t\telse {\n\t\t\tthis.start = this.i--;\n\t\t\tthis.state = this.Name;\n\t\t}\n\t}\n\tContent() {\n\t\tthis.start = ++this.i;\n\t\tif ((this.i = this.data.indexOf('}', this.i)) == -1) this.i = this.data.length;\n\t\tvar content = this.section();\n\t\tfor (var i = 0, item; item = this.list[i++];)\n\t\t\tif (this.res[item]) this.res[item] += ';' + content;\n\t\t\telse this.res[item] = content;\n\t\tthis.list = [];\n\t\tthis.state = this.Space;\n\t}\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:13:35\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/indexList.js\n */\nexport default {\n // indexList 组件\n indexList: {\n inactiveColor: '#606266',\n activeColor: '#5677fc',\n indexList: () => [],\n sticky: true,\n customNavHeight: 0\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:13:55\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/input.js\n */\nexport default {\n\t// index 组件\n\tinput: {\n\t\tvalue: '',\n\t\ttype: 'text',\n\t\tfixed: false,\n\t\tdisabled: false,\n\t\tdisabledColor: '#f5f7fa',\n\t\tclearable: false,\n\t\tpassword: false,\n\t\tmaxlength: -1,\n\t\tplaceholder: null,\n\t\tplaceholderClass: 'input-placeholder',\n\t\tplaceholderStyle: 'color: #c0c4cc',\n\t\tshowWordLimit: false,\n\t\tconfirmType: 'done',\n\t\tconfirmHold: false,\n\t\tholdKeyboard: false,\n\t\tfocus: false,\n\t\tautoBlur: false,\n\t\tdisableDefaultPadding: false,\n\t\tcursor: -1,\n\t\tcursorSpacing: 30,\n\t\tselectionStart: -1,\n\t\tselectionEnd: -1,\n\t\tadjustPosition: true,\n\t\tinputAlign: 'left',\n\t\tfontSize: '15px',\n\t\tcolor: '#303133',\n\t\tprefixIcon: '',\n\t\tprefixIconStyle: '',\n\t\tsuffixIcon: '',\n\t\tsuffixIconStyle: '',\n\t\tborder: 'surround',\n\t\treadonly: false,\n\t\tshape: 'square',\n\t\tformatter: null\n\t}\n}\n","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\nimport store from \"../store\";\nimport Cache from '../utils/cache';\nimport {\n\tDebounce\n} from '@/utils/validate.js'\n\n\n\n\n\n\n\nimport {\n\tLOGIN_STATUS,\n\tUSER_INFO,\n\tEXPIRES_TIME,\n\tSTATE_R_KEY\n} from './../config/cache';\nimport Routine from '@/libs/routine';\n\nfunction prePage() {\n\tlet pages = getCurrentPages();\n\tlet prePage = pages[pages.length - 1];\n\n\treturn prePage.route;\n\n\n\n\n\n}\n\n\n\n\nexport const toLogin = Debounce(_toLogin, 800)\n\nfunction _toLogin(push, pathLogin) {\n\n\n\n\n\n\n\n\n\n\n\tstore.commit(\"LOGOUT\");\n\n\tlet path = prePage();\n\n\n\n\n\n\tif (!pathLogin)\n\t\tpathLogin = '/page/users/login/index'\n\tCache.set('login_back_url', path);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\tuni.navigateTo({\n\t\turl: '/pages/users/wechat_login/index'\n\t})\n\t// Routine.getCode()\n\t// \t.then(code => {\n\t// \t\tconsole.log(code)\n\t// \t\tRoutine.silenceAuth(code).then(res => {\n\t// \t\t\tconsole.log(res)\n\t// \t\t})\n\t// \t})\n\t// \t.catch(err => {\n\t// \t\tuni.hideLoading();\n\t// \t});\n\n\n\n\n\n\n\n\n}\n\n\nexport function checkLogin() {\n\tlet token = Cache.get(LOGIN_STATUS);\n\t// let token\n\tlet expiresTime = Cache.get(EXPIRES_TIME);\n\t// let newTime = Math.round(new Date() / 1000);\n\tif (!token) {\n\t\tuni.setStorageSync('authIng', false)\n\t\tCache.clear(LOGIN_STATUS);\n\t\tCache.clear(EXPIRES_TIME);\n\t\tCache.clear(USER_INFO);\n\t\tCache.clear(STATE_R_KEY);\n\t\treturn false;\n\t} else {\n\t\tstore.commit('UPDATE_LOGIN', token);\n\t\tlet userInfo = Cache.get(USER_INFO, true);\n\t\tif (userInfo) {\n\t\t\tstore.commit('UPDATE_USERINFO', userInfo);\n\t\t}\n\t\treturn true;\n\t}\n\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:07:49\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/keyboard.js\n */\nexport default {\n // 键盘组件\n keyboard: {\n mode: 'number',\n dotDisabled: false,\n tooltip: true,\n showTips: true,\n tips: '',\n showCancel: true,\n showConfirm: true,\n random: false,\n safeAreaInsetBottom: true,\n closeOnClickOverlay: true,\n show: false,\n overlay: true,\n zIndex: 10075,\n cancelText: '取消',\n confirmText: '确定',\n autoChange: false\n }\n}\n","\nfunction LotteryDraw(obj, callback) {\n\tthis.timer = null; //计时器\n\tthis.startIndex = obj.startIndex-1 || 0; //从第几个位置开始抽奖 [默认为零]\n\tthis.count = 0; //计数,跑的圈数\n\tthis.winingIndex = obj.winingIndex || 0;//获奖的位置\n\tthis.totalCount = obj.totalCount || 6;//抽奖跑的圈数\n\tthis.speed = obj.speed || 100;\n\tthis.domData=obj.domData;\n\tthis.rollFn();\n\tthis.callback = callback;\n}\n\nLotteryDraw.prototype = {\n\trollFn: function() {\n\t\tvar that = this;\n\t\t// console.log(`获奖位置:${this.winingIndex}`)\n\t\t// 活动index值增加,即移动到下一个格子\n\t\tthis.startIndex++;\n\t\t\n\t\t//startIndex是最后一个时一圈走完,重新开始\n\t\tif (this.startIndex >= this.domData.length - 1) {\n\t\t\tthis.startIndex = 0;\n\t\t\tthis.count++;\n\t\t}\n\t\t\n\t\t// 当跑的圈数等于设置的圈数,且活动的index值是奖品的位置时停止\n\t\tif (this.count >= this.totalCount && this.startIndex === this.winingIndex) {\n\t\t\tif (typeof this.callback === 'function') {\n\t\t\t\tsetTimeout(function() {\n\t\t\t\t\tthat.callback(that.startIndex,that.count); //执行回调函数,抽奖完成的相关操作\n\t\t\t\t}, 400);\n\t\t\t}\n\t\t\tclearInterval(this.timer);\n\t\t}else { //重新开始一圈\n\t\t\tif (this.count >= this.totalCount - 1) {\n\t\t\t\tthis.speed += 30;\n\t\t\t}\n\t\t\tthis.timer = setTimeout(function() {\n\t\t\t\tthat.callback(that.startIndex,that.count);\n\t\t\t\tthat.rollFn();\n\t\t\t}, this.speed);\n\t\t}\n\t}\n}\n\nmodule.exports = LotteryDraw;","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:04:49\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/line.js\n */\nexport default {\n // line组件\n line: {\n color: '#d6d7d9',\n length: '100%',\n direction: 'row',\n hairline: true,\n margin: 0,\n dashed: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:14:11\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/lineProgress.js\n */\nexport default {\n // lineProgress 组件\n lineProgress: {\n activeColor: '#19be6b',\n inactiveColor: '#ececec',\n percentage: 0,\n showText: true,\n height: 12\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:45:36\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/link.js\n */\nimport config from '../config'\n\nconst {\n color\n} = config\nexport default {\n // link超链接组件props参数\n link: {\n color: color['u-primary'],\n fontSize: 15,\n underLine: false,\n href: '',\n mpTips: '链接已复制,请在浏览器打开',\n lineColor: '',\n text: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:14:53\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/list.js\n */\nexport default {\n // list 组件\n list: {\n showScrollbar: false,\n lowerThreshold: 50,\n upperThreshold: 0,\n scrollTop: 0,\n offsetAccuracy: 10,\n enableFlex: false,\n pagingEnabled: false,\n scrollable: true,\n scrollIntoView: '',\n scrollWithAnimation: false,\n enableBackToTop: false,\n height: 0,\n width: 0,\n preLoadScreen: 1\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:15:40\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/listItem.js\n */\nexport default {\n // listItem 组件\n listItem: {\n anchor: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:45:47\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/loadingIcon.js\n */\nimport config from '../config'\n\nconst {\n color\n} = config\nexport default {\n // loading-icon加载中图标组件\n loadingIcon: {\n show: true,\n color: color['u-tips-color'],\n textColor: color['u-tips-color'],\n vertical: false,\n mode: 'spinner',\n size: 24,\n textSize: 15,\n text: '',\n timingFunction: 'ease-in-out',\n duration: 1200,\n inactiveColor: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:00:23\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/loadingPage.js\n */\nexport default {\n // loading-page组件\n loadingPage: {\n loadingText: '正在加载',\n image: '',\n loadingMode: 'circle',\n loading: false,\n bgColor: '#ffffff',\n color: '#C8C8C8',\n fontSize: 19,\n iconSize: 28,\n loadingColor: '#C8C8C8'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:15:26\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/loadmore.js\n */\nexport default {\n // loadmore 组件\n loadmore: {\n status: 'loadmore',\n bgColor: 'transparent',\n icon: true,\n fontSize: 14,\n\t\ticonSize: 17,\n color: '#606266',\n loadingIcon: 'spinner',\n loadmoreText: '加载更多',\n loadingText: '正在加载...',\n nomoreText: '没有更多了',\n isDot: false,\n iconColor: '#b7b7b7',\n marginTop: 10,\n marginBottom: 10,\n height: 'auto',\n line: false,\n\t\tlineColor: '#E6E8EB',\n\t\tdashed: false,\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:15:59\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/modal.js\n */\nexport default {\n // modal 组件\n modal: {\n show: false,\n title: '',\n content: '',\n confirmText: '确认',\n cancelText: '取消',\n showConfirmButton: true,\n showCancelButton: false,\n confirmColor: '#2979ff',\n cancelColor: '#606266',\n buttonReverse: false,\n zoom: true,\n asyncClose: false,\n closeOnClickOverlay: false,\n negativeTop: 0,\n width: '650rpx',\n confirmButtonShape: ''\n }\n}\n","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\nimport Vue from \"vue\";\nimport Vuex from \"vuex\";\nimport modules from \"./modules\";\nimport getters from \"./getters\";\n\nVue.use(Vuex);\nconst debug = process.env.NODE_ENV !== \"production\";\n\nexport default new Vuex.Store({\n modules,\n getters,\n strict: debug\n});\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:16:18\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/navbar.js\n */\nimport color from '../color'\nexport default {\n // navbar 组件\n navbar: {\n safeAreaInsetTop: true,\n placeholder: false,\n fixed: true,\n border: false,\n leftIcon: 'arrow-left',\n leftText: '',\n rightText: '',\n rightIcon: '',\n title: '',\n bgColor: '#ffffff',\n titleWidth: '400rpx',\n height: '44px',\n\t\tleftIconSize: 20,\n\t\tleftIconColor: color.mainColor,\n\t\tautoBack: false,\n\t\ttitleStyle: ''\n }\n\n}\n","// 为了让用户能够自定义主题,会逐步弃用此文件,各颜色通过css提供\r\n// 为了给某些特殊场景使用和向后兼容,无需删除此文件(2020-06-20)\r\nconst color = {\r\n primary: '#3c9cff',\r\n info: '#909399',\r\n default: '#909399',\r\n warning: '#f9ae3d',\r\n error: '#f56c6c',\r\n success: '#5ac725',\r\n mainColor: '#303133',\r\n contentColor: '#606266',\r\n tipsColor: '#909399',\r\n lightColor: '#c0c4cc',\r\n borderColor: '#e4e7ed'\r\n}\r\n\r\nexport default color\r\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:16:39\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/noNetwork.js\n */\nexport default {\n // noNetwork\n noNetwork: {\n tips: '哎呀,网络信号丢失',\n zIndex: '',\n image: 'data:image/png;base64,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'\n }\n\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:17:13\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/noticeBar.js\n */\nexport default {\n // noticeBar\n noticeBar: {\n text: () => [],\n direction: 'row',\n step: false,\n icon: 'volume',\n mode: '',\n color: '#f9ae3d',\n bgColor: '#fdf6ec',\n speed: 80,\n fontSize: 14,\n duration: 2000,\n disableTouch: true,\n url: '',\n linkType: 'navigateTo'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:10:21\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/notify.js\n */\nexport default {\n // notify组件\n notify: {\n top: 0,\n type: 'primary',\n color: '#ffffff',\n bgColor: '',\n message: '',\n duration: 3000,\n fontSize: 15,\n safeAreaInsetTop: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:11:46\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/numberBox.js\n */\nexport default {\n // 步进器组件\n numberBox: {\n name: '',\n value: 0,\n min: 1,\n max: Number.MAX_SAFE_INTEGER,\n step: 1,\n integer: false,\n disabled: false,\n disabledInput: false,\n asyncChange: false,\n inputWidth: 35,\n showMinus: true,\n showPlus: true,\n decimalLength: null,\n longPress: true,\n color: '#323233',\n buttonSize: 30,\n bgColor: '#EBECEE',\n cursorSpacing: 100,\n disableMinus: false,\n disablePlus: false,\n iconStyle: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:08:05\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/numberKeyboard.js\n */\nexport default {\n // 数字键盘\n numberKeyboard: {\n mode: 'number',\n dotDisabled: false,\n random: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:06:50\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/overlay.js\n */\nexport default {\n // overlay组件\n overlay: {\n show: false,\n zIndex: 10070,\n duration: 300,\n opacity: 0.5\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:17:33\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/parse.js\n */\nexport default {\n // parse\n parse: {\n copyLink: true,\n errorImg: '',\n lazyLoad: false,\n loadingImg: '',\n pauseVideo: true,\n previewImg: true,\n setTitle: true,\n showImgMenu: true\n }\n}\n","import CALENDAR from './calendar.js'\n\nclass Calendar {\n\tconstructor({\n\t\tdate,\n\t\tselected,\n\t\tstartDate,\n\t\tendDate,\n\t\trange\n\t} = {}) {\n\t\t// 当前日期\n\t\tthis.date = this.getDate(date) // 当前初入日期\n\t\t// 打点信息\n\t\tthis.selected = selected || [];\n\t\t// 范围开始\n\t\tthis.startDate = startDate\n\t\t// 范围结束\n\t\tthis.endDate = endDate\n\t\tthis.range = range\n\t\t// 多选状态\n\t\tthis.multipleStatus = {\n\t\t\tbefore: '',\n\t\t\tafter: '',\n\t\t\tdata: []\n\t\t}\n\t\t// 每周日期\n\t\tthis.weeks = {}\n\n\t\tthis._getWeek(this.date.fullDate)\n\t}\n\n\t/**\n\t * 获取任意时间\n\t */\n\tgetDate(date, AddDayCount = 0, str = 'day') {\n\t\tif (!date) {\n\t\t\tdate = new Date()\n\t\t}\n\t\tif (typeof date !== 'object') {\n\t\t\tdate = date.replace(/-/g, '/')\n\t\t}\n\t\tconst dd = new Date(date)\n\t\tswitch (str) {\n\t\t\tcase 'day':\n\t\t\t\tdd.setDate(dd.getDate() + AddDayCount) // 获取AddDayCount天后的日期\n\t\t\t\tbreak\n\t\t\tcase 'month':\n\t\t\t\tif (dd.getDate() === 31) {\n\t\t\t\t\tdd.setDate(dd.getDate() + AddDayCount)\n\t\t\t\t} else {\n\t\t\t\t\tdd.setMonth(dd.getMonth() + AddDayCount) // 获取AddDayCount天后的日期\n\t\t\t\t}\n\t\t\t\tbreak\n\t\t\tcase 'year':\n\t\t\t\tdd.setFullYear(dd.getFullYear() + AddDayCount) // 获取AddDayCount天后的日期\n\t\t\t\tbreak\n\t\t}\n\t\tconst y = dd.getFullYear()\n\t\tconst m = dd.getMonth() + 1 < 10 ? '0' + (dd.getMonth() + 1) : dd.getMonth() + 1 // 获取当前月份的日期,不足10补0\n\t\tconst d = dd.getDate() < 10 ? '0' + dd.getDate() : dd.getDate() // 获取当前几号,不足10补0\n\t\treturn {\n\t\t\tfullDate: y + '-' + m + '-' + d,\n\t\t\tyear: y,\n\t\t\tmonth: m,\n\t\t\tdate: d,\n\t\t\tday: dd.getDay()\n\t\t}\n\t}\n\n\n\t/**\n\t * 获取上月剩余天数\n\t */\n\t_getLastMonthDays(firstDay, full) {\n\t\tlet dateArr = []\n\t\tfor (let i = firstDay; i > 0; i--) {\n\t\t\tconst beforeDate = new Date(full.year, full.month - 1, -i + 1).getDate()\n\t\t\tdateArr.push({\n\t\t\t\tdate: beforeDate,\n\t\t\t\tmonth: full.month - 1,\n\t\t\t\tlunar: this.getlunar(full.year, full.month - 1, beforeDate),\n\t\t\t\tdisable: true\n\t\t\t})\n\t\t}\n\t\treturn dateArr\n\t}\n\t/**\n\t * 获取本月天数\n\t */\n\t_currentMonthDys(dateData, full) {\n\t\tlet dateArr = []\n\t\tlet fullDate = this.date.fullDate\n\t\tfor (let i = 1; i <= dateData; i++) {\n\t\t\tlet isinfo = false\n\t\t\tlet nowDate = full.year + '-' + (full.month < 10 ?\n\t\t\t\tfull.month : full.month) + '-' + (i < 10 ?\n\t\t\t\t'0' + i : i)\n\t\t\t// 是否今天\n\t\t\tlet isDay = fullDate === nowDate\n\t\t\t// 获取打点信息\n\t\t\tlet info = this.selected && this.selected.find((item) => {\n\t\t\t\tif (this.dateEqual(nowDate, item.date)) {\n\t\t\t\t\treturn item\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t// 日期禁用\n\t\t\tlet disableBefore = true\n\t\t\tlet disableAfter = true\n\t\t\tif (this.startDate) {\n\t\t\t\tlet dateCompBefore = this.dateCompare(this.startDate, fullDate)\n\t\t\t\tdisableBefore = this.dateCompare(dateCompBefore ? this.startDate : fullDate, nowDate)\n\t\t\t}\n\n\t\t\tif (this.endDate) {\n\t\t\t\tlet dateCompAfter = this.dateCompare(fullDate, this.endDate)\n\t\t\t\tdisableAfter = this.dateCompare(nowDate, dateCompAfter ? this.endDate : fullDate)\n\t\t\t}\n\n\t\t\tlet multiples = this.multipleStatus.data\n\t\t\tlet checked = false\n\t\t\tlet multiplesStatus = -1\n\t\t\tif (this.range) {\n\t\t\t\tif (multiples) {\n\t\t\t\t\tmultiplesStatus = multiples.findIndex((item) => {\n\t\t\t\t\t\treturn this.dateEqual(item, nowDate)\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\tif (multiplesStatus !== -1) {\n\t\t\t\t\tchecked = true\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet data = {\n\t\t\t\tfullDate: nowDate,\n\t\t\t\tyear: full.year,\n\t\t\t\tdate: i,\n\t\t\t\tmultiple: this.range ? checked : false,\n\t\t\t\tmonth: full.month,\n\t\t\t\tlunar: this.getlunar(full.year, full.month, i),\n\t\t\t\tdisable: !disableBefore || !disableAfter,\n\t\t\t\tisDay\n\t\t\t}\n\t\t\tif (info) {\n\t\t\t\tdata.extraInfo = info\n\t\t\t}\n\n\t\t\tdateArr.push(data)\n\t\t}\n\t\treturn dateArr\n\t}\n\t/**\n\t * 获取下月天数\n\t */\n\t_getNextMonthDays(surplus, full) {\n\t\tlet dateArr = []\n\t\tfor (let i = 1; i < surplus + 1; i++) {\n\t\t\tdateArr.push({\n\t\t\t\tdate: i,\n\t\t\t\tmonth: Number(full.month) + 1,\n\t\t\t\tlunar: this.getlunar(full.year, Number(full.month) + 1, i),\n\t\t\t\tdisable: true\n\t\t\t})\n\t\t}\n\t\treturn dateArr\n\t}\n\t/**\n\t * 设置日期\n\t * @param {Object} date\n\t */\n\tsetDate(date) {\n\t\tthis._getWeek(date)\n\t}\n\t/**\n\t * 获取当前日期详情\n\t * @param {Object} date\n\t */\n\tgetInfo(date) {\n\t\tif (!date) {\n\t\t\tdate = new Date()\n\t\t}\n\t\tconst dateInfo = this.canlender.find(item => item.fullDate === this.getDate(date).fullDate)\n\t\treturn dateInfo\n\t}\n\n\t/**\n\t * 比较时间大小\n\t */\n\tdateCompare(startDate, endDate) {\n\t\t// 计算截止时间\n\t\tstartDate = new Date(startDate.replace('-', '/').replace('-', '/'))\n\t\t// 计算详细项的截止时间\n\t\tendDate = new Date(endDate.replace('-', '/').replace('-', '/'))\n\t\tif (startDate <= endDate) {\n\t\t\treturn true\n\t\t} else {\n\t\t\treturn false\n\t\t}\n\t}\n\n\t/**\n\t * 比较时间是否相等\n\t */\n\tdateEqual(before, after) {\n\t\t// 计算截止时间\n\t\tbefore = new Date(before.replace('-', '/').replace('-', '/'))\n\t\t// 计算详细项的截止时间\n\t\tafter = new Date(after.replace('-', '/').replace('-', '/'))\n\t\tif (before.getTime() - after.getTime() === 0) {\n\t\t\treturn true\n\t\t} else {\n\t\t\treturn false\n\t\t}\n\t}\n\n\n\t/**\n\t * 获取日期范围内所有日期\n\t * @param {Object} begin\n\t * @param {Object} end\n\t */\n\tgeDateAll(begin, end) {\n\t\tvar arr = []\n\t\tvar ab = begin.split('-')\n\t\tvar ae = end.split('-')\n\t\tvar db = new Date()\n\t\tdb.setFullYear(ab[0], ab[1] - 1, ab[2])\n\t\tvar de = new Date()\n\t\tde.setFullYear(ae[0], ae[1] - 1, ae[2])\n\t\tvar unixDb = db.getTime() - 24 * 60 * 60 * 1000\n\t\tvar unixDe = de.getTime() - 24 * 60 * 60 * 1000\n\t\tfor (var k = unixDb; k <= unixDe;) {\n\t\t\tk = k + 24 * 60 * 60 * 1000\n\t\t\tarr.push(this.getDate(new Date(parseInt(k))).fullDate)\n\t\t}\n\t\treturn arr\n\t}\n\t/**\n\t * 计算阴历日期显示\n\t */\n\tgetlunar(year, month, date) {\n\t\treturn CALENDAR.solar2lunar(year, month, date)\n\t}\n\t/**\n\t * 设置打点\n\t */\n\tsetSelectInfo(data, value) {\n\t\tthis.selected = value\n\t\tthis._getWeek(data)\n\t}\n\n\t/**\n\t * 获取多选状态\n\t */\n\tsetMultiple(fullDate) {\n\t\tlet {\n\t\t\tbefore,\n\t\t\tafter\n\t\t} = this.multipleStatus\n\t\tif (!this.range) return\n\t\tif (before && after) {\n\t\t\tthis.multipleStatus.before = ''\n\t\t\tthis.multipleStatus.after = ''\n\t\t\tthis.multipleStatus.data = []\n\t\t\tthis._getWeek(fullDate)\n\t\t} else {\n\t\t\tif (!before) {\n\t\t\t\tthis.multipleStatus.before = fullDate\n\t\t\t} else {\n\t\t\t\tthis.multipleStatus.after = fullDate\n\t\t\t\tif (this.dateCompare(this.multipleStatus.before, this.multipleStatus.after)) {\n\t\t\t\t\tthis.multipleStatus.data = this.geDateAll(this.multipleStatus.before, this.multipleStatus.after);\n\t\t\t\t} else {\n\t\t\t\t\tthis.multipleStatus.data = this.geDateAll(this.multipleStatus.after, this.multipleStatus.before);\n\t\t\t\t}\n\t\t\t\tthis._getWeek(fullDate)\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * 获取每周数据\n\t * @param {Object} dateData\n\t */\n\t_getWeek(dateData) {\n\t\tconst {\n\t\t\tfullDate,\n\t\t\tyear,\n\t\t\tmonth,\n\t\t\tdate,\n\t\t\tday\n\t\t} = this.getDate(dateData)\n\t\tlet firstDay = new Date(year, month - 1, 1).getDay()\n\t\tlet currentDay = new Date(year, month, 0).getDate()\n\t\tlet dates = {\n\t\t\tlastMonthDays: this._getLastMonthDays(firstDay, this.getDate(dateData)), // 上个月末尾几天\n\t\t\tcurrentMonthDys: this._currentMonthDys(currentDay, this.getDate(dateData)), // 本月天数\n\t\t\tnextMonthDays: [], // 下个月开始几天\n\t\t\tweeks: []\n\t\t}\n\t\tlet canlender = []\n\t\tconst surplus = 42 - (dates.lastMonthDays.length + dates.currentMonthDys.length)\n\t\tdates.nextMonthDays = this._getNextMonthDays(surplus, this.getDate(dateData))\n\t\tcanlender = canlender.concat(dates.lastMonthDays, dates.currentMonthDys, dates.nextMonthDays)\n\t\tlet weeks = {}\n\t\t// 拼接数组 上个月开始几天 + 本月天数+ 下个月开始几天\n\t\tfor (let i = 0; i < canlender.length; i++) {\n\t\t\tif (i % 7 === 0) {\n\t\t\t\tweeks[parseInt(i / 7)] = new Array(7)\n\t\t\t}\n\t\t\tweeks[parseInt(i / 7)][i % 7] = canlender[i]\n\t\t}\n\t\tthis.canlender = canlender\n\t\tthis.weeks = weeks\n\t}\n\n\t//静态方法\n\t// static init(date) {\n\t// \tif (!this.instance) {\n\t// \t\tthis.instance = new Calendar(date);\n\t// \t}\n\t// \treturn this.instance;\n\t// }\n}\n\n\nexport default Calendar\n","/**\n* @1900-2100区间内的公历、农历互转\n* @charset UTF-8\n* @github https://github.com/jjonline/calendar.js\n* @Author Jea杨(JJonline@JJonline.Cn)\n* @Time 2014-7-21\n* @Time 2016-8-13 Fixed 2033hex、Attribution Annals\n* @Time 2016-9-25 Fixed lunar LeapMonth Param Bug\n* @Time 2017-7-24 Fixed use getTerm Func Param Error.use solar year,NOT lunar year\n* @Version 1.0.3\n* @公历转农历:calendar.solar2lunar(1987,11,01); //[you can ignore params of prefix 0]\n* @农历转公历:calendar.lunar2solar(1987,09,10); //[you can ignore params of prefix 0]\n*/\n/* eslint-disable */\nvar calendar = {\n\n /**\n * 农历1900-2100的润大小信息表\n * @Array Of Property\n * @return Hex\n */\n lunarInfo: [0x04bd8, 0x04ae0, 0x0a570, 0x054d5, 0x0d260, 0x0d950, 0x16554, 0x056a0, 0x09ad0, 0x055d2, // 1900-1909\n 0x04ae0, 0x0a5b6, 0x0a4d0, 0x0d250, 0x1d255, 0x0b540, 0x0d6a0, 0x0ada2, 0x095b0, 0x14977, // 1910-1919\n 0x04970, 0x0a4b0, 0x0b4b5, 0x06a50, 0x06d40, 0x1ab54, 0x02b60, 0x09570, 0x052f2, 0x04970, // 1920-1929\n 0x06566, 0x0d4a0, 0x0ea50, 0x06e95, 0x05ad0, 0x02b60, 0x186e3, 0x092e0, 0x1c8d7, 0x0c950, // 1930-1939\n 0x0d4a0, 0x1d8a6, 0x0b550, 0x056a0, 0x1a5b4, 0x025d0, 0x092d0, 0x0d2b2, 0x0a950, 0x0b557, // 1940-1949\n 0x06ca0, 0x0b550, 0x15355, 0x04da0, 0x0a5b0, 0x14573, 0x052b0, 0x0a9a8, 0x0e950, 0x06aa0, // 1950-1959\n 0x0aea6, 0x0ab50, 0x04b60, 0x0aae4, 0x0a570, 0x05260, 0x0f263, 0x0d950, 0x05b57, 0x056a0, // 1960-1969\n 0x096d0, 0x04dd5, 0x04ad0, 0x0a4d0, 0x0d4d4, 0x0d250, 0x0d558, 0x0b540, 0x0b6a0, 0x195a6, // 1970-1979\n 0x095b0, 0x049b0, 0x0a974, 0x0a4b0, 0x0b27a, 0x06a50, 0x06d40, 0x0af46, 0x0ab60, 0x09570, // 1980-1989\n 0x04af5, 0x04970, 0x064b0, 0x074a3, 0x0ea50, 0x06b58, 0x05ac0, 0x0ab60, 0x096d5, 0x092e0, // 1990-1999\n 0x0c960, 0x0d954, 0x0d4a0, 0x0da50, 0x07552, 0x056a0, 0x0abb7, 0x025d0, 0x092d0, 0x0cab5, // 2000-2009\n 0x0a950, 0x0b4a0, 0x0baa4, 0x0ad50, 0x055d9, 0x04ba0, 0x0a5b0, 0x15176, 0x052b0, 0x0a930, // 2010-2019\n 0x07954, 0x06aa0, 0x0ad50, 0x05b52, 0x04b60, 0x0a6e6, 0x0a4e0, 0x0d260, 0x0ea65, 0x0d530, // 2020-2029\n 0x05aa0, 0x076a3, 0x096d0, 0x04afb, 0x04ad0, 0x0a4d0, 0x1d0b6, 0x0d250, 0x0d520, 0x0dd45, // 2030-2039\n 0x0b5a0, 0x056d0, 0x055b2, 0x049b0, 0x0a577, 0x0a4b0, 0x0aa50, 0x1b255, 0x06d20, 0x0ada0, // 2040-2049\n /** Add By JJonline@JJonline.Cn**/\n 0x14b63, 0x09370, 0x049f8, 0x04970, 0x064b0, 0x168a6, 0x0ea50, 0x06b20, 0x1a6c4, 0x0aae0, // 2050-2059\n 0x0a2e0, 0x0d2e3, 0x0c960, 0x0d557, 0x0d4a0, 0x0da50, 0x05d55, 0x056a0, 0x0a6d0, 0x055d4, // 2060-2069\n 0x052d0, 0x0a9b8, 0x0a950, 0x0b4a0, 0x0b6a6, 0x0ad50, 0x055a0, 0x0aba4, 0x0a5b0, 0x052b0, // 2070-2079\n 0x0b273, 0x06930, 0x07337, 0x06aa0, 0x0ad50, 0x14b55, 0x04b60, 0x0a570, 0x054e4, 0x0d160, // 2080-2089\n 0x0e968, 0x0d520, 0x0daa0, 0x16aa6, 0x056d0, 0x04ae0, 0x0a9d4, 0x0a2d0, 0x0d150, 0x0f252, // 2090-2099\n 0x0d520], // 2100\n\n /**\n * 公历每个月份的天数普通表\n * @Array Of Property\n * @return Number\n */\n solarMonth: [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31],\n\n /**\n * 天干地支之天干速查表\n * @Array Of Property trans[\"甲\",\"乙\",\"丙\",\"丁\",\"戊\",\"己\",\"庚\",\"辛\",\"壬\",\"癸\"]\n * @return Cn string\n */\n Gan: ['\\u7532', '\\u4e59', '\\u4e19', '\\u4e01', '\\u620a', '\\u5df1', '\\u5e9a', '\\u8f9b', '\\u58ec', '\\u7678'],\n\n /**\n * 天干地支之地支速查表\n * @Array Of Property\n * @trans[\"子\",\"丑\",\"寅\",\"卯\",\"辰\",\"巳\",\"午\",\"未\",\"申\",\"酉\",\"戌\",\"亥\"]\n * @return Cn string\n */\n Zhi: ['\\u5b50', '\\u4e11', '\\u5bc5', '\\u536f', '\\u8fb0', '\\u5df3', '\\u5348', '\\u672a', '\\u7533', '\\u9149', '\\u620c', '\\u4ea5'],\n\n /**\n * 天干地支之地支速查表<=>生肖\n * @Array Of Property\n * @trans[\"鼠\",\"牛\",\"虎\",\"兔\",\"龙\",\"蛇\",\"马\",\"羊\",\"猴\",\"鸡\",\"狗\",\"猪\"]\n * @return Cn string\n */\n Animals: ['\\u9f20', '\\u725b', '\\u864e', '\\u5154', '\\u9f99', '\\u86c7', '\\u9a6c', '\\u7f8a', '\\u7334', '\\u9e21', '\\u72d7', '\\u732a'],\n\n /**\n * 24节气速查表\n * @Array Of Property\n * @trans[\"小寒\",\"大寒\",\"立春\",\"雨水\",\"惊蛰\",\"春分\",\"清明\",\"谷雨\",\"立夏\",\"小满\",\"芒种\",\"夏至\",\"小暑\",\"大暑\",\"立秋\",\"处暑\",\"白露\",\"秋分\",\"寒露\",\"霜降\",\"立冬\",\"小雪\",\"大雪\",\"冬至\"]\n * @return Cn string\n */\n solarTerm: ['\\u5c0f\\u5bd2', '\\u5927\\u5bd2', '\\u7acb\\u6625', '\\u96e8\\u6c34', '\\u60ca\\u86f0', '\\u6625\\u5206', '\\u6e05\\u660e', '\\u8c37\\u96e8', '\\u7acb\\u590f', '\\u5c0f\\u6ee1', '\\u8292\\u79cd', '\\u590f\\u81f3', '\\u5c0f\\u6691', '\\u5927\\u6691', '\\u7acb\\u79cb', '\\u5904\\u6691', '\\u767d\\u9732', '\\u79cb\\u5206', '\\u5bd2\\u9732', '\\u971c\\u964d', '\\u7acb\\u51ac', '\\u5c0f\\u96ea', '\\u5927\\u96ea', '\\u51ac\\u81f3'],\n\n /**\n * 1900-2100各年的24节气日期速查表\n * @Array Of Property\n * @return 0x string For splice\n */\n sTermInfo: ['9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', '97bcf97c3598082c95f8c965cc920f',\n '97bd0b06bdb0722c965ce1cfcc920f', 'b027097bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e',\n '97bcf97c359801ec95f8c965cc920f', '97bd0b06bdb0722c965ce1cfcc920f', 'b027097bd097c36b0b6fc9274c91aa',\n '97b6b97bd19801ec9210c965cc920e', '97bcf97c359801ec95f8c965cc920f', '97bd0b06bdb0722c965ce1cfcc920f',\n 'b027097bd097c36b0b6fc9274c91aa', '9778397bd19801ec9210c965cc920e', '97b6b97bd19801ec95f8c965cc920f',\n '97bd09801d98082c95f8e1cfcc920f', '97bd097bd097c36b0b6fc9210c8dc2', '9778397bd197c36c9210c9274c91aa',\n '97b6b97bd19801ec95f8c965cc920e', '97bd09801d98082c95f8e1cfcc920f', '97bd097bd097c36b0b6fc9210c8dc2',\n '9778397bd097c36c9210c9274c91aa', '97b6b97bd19801ec95f8c965cc920e', '97bcf97c3598082c95f8e1cfcc920f',\n '97bd097bd097c36b0b6fc9210c8dc2', '9778397bd097c36c9210c9274c91aa', '97b6b97bd19801ec9210c965cc920e',\n '97bcf97c3598082c95f8c965cc920f', '97bd097bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa',\n '97b6b97bd19801ec9210c965cc920e', '97bcf97c3598082c95f8c965cc920f', '97bd097bd097c35b0b6fc920fb0722',\n '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', '97bcf97c359801ec95f8c965cc920f',\n '97bd097bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e',\n '97bcf97c359801ec95f8c965cc920f', '97bd097bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa',\n '97b6b97bd19801ec9210c965cc920e', '97bcf97c359801ec95f8c965cc920f', '97bd097bd07f595b0b6fc920fb0722',\n '9778397bd097c36b0b6fc9210c8dc2', '9778397bd19801ec9210c9274c920e', '97b6b97bd19801ec95f8c965cc920f',\n '97bd07f5307f595b0b0bc920fb0722', '7f0e397bd097c36b0b6fc9210c8dc2', '9778397bd097c36c9210c9274c920e',\n '97b6b97bd19801ec95f8c965cc920f', '97bd07f5307f595b0b0bc920fb0722', '7f0e397bd097c36b0b6fc9210c8dc2',\n '9778397bd097c36c9210c9274c91aa', '97b6b97bd19801ec9210c965cc920e', '97bd07f1487f595b0b0bc920fb0722',\n '7f0e397bd097c36b0b6fc9210c8dc2', '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e',\n '97bcf7f1487f595b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa',\n '97b6b97bd19801ec9210c965cc920e', '97bcf7f1487f595b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722',\n '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', '97bcf7f1487f531b0b0bb0b6fb0722',\n '7f0e397bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e',\n '97bcf7f1487f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa',\n '97b6b97bd19801ec9210c9274c920e', '97bcf7f0e47f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722',\n '9778397bd097c36b0b6fc9210c91aa', '97b6b97bd197c36c9210c9274c920e', '97bcf7f0e47f531b0b0bb0b6fb0722',\n '7f0e397bd07f595b0b0bc920fb0722', '9778397bd097c36b0b6fc9210c8dc2', '9778397bd097c36c9210c9274c920e',\n '97b6b7f0e47f531b0723b0b6fb0722', '7f0e37f5307f595b0b0bc920fb0722', '7f0e397bd097c36b0b6fc9210c8dc2',\n '9778397bd097c36b0b70c9274c91aa', '97b6b7f0e47f531b0723b0b6fb0721', '7f0e37f1487f595b0b0bb0b6fb0722',\n '7f0e397bd097c35b0b6fc9210c8dc2', '9778397bd097c36b0b6fc9274c91aa', '97b6b7f0e47f531b0723b0b6fb0721',\n '7f0e27f1487f595b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa',\n '97b6b7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722',\n '9778397bd097c36b0b6fc9274c91aa', '97b6b7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722',\n '7f0e397bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', '97b6b7f0e47f531b0723b0b6fb0721',\n '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722', '9778397bd097c36b0b6fc9274c91aa',\n '97b6b7f0e47f531b0723b0787b0721', '7f0e27f0e47f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722',\n '9778397bd097c36b0b6fc9210c91aa', '97b6b7f0e47f149b0723b0787b0721', '7f0e27f0e47f531b0723b0b6fb0722',\n '7f0e397bd07f595b0b0bc920fb0722', '9778397bd097c36b0b6fc9210c8dc2', '977837f0e37f149b0723b0787b0721',\n '7f07e7f0e47f531b0723b0b6fb0722', '7f0e37f5307f595b0b0bc920fb0722', '7f0e397bd097c35b0b6fc9210c8dc2',\n '977837f0e37f14998082b0787b0721', '7f07e7f0e47f531b0723b0b6fb0721', '7f0e37f1487f595b0b0bb0b6fb0722',\n '7f0e397bd097c35b0b6fc9210c8dc2', '977837f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721',\n '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722', '977837f0e37f14998082b0787b06bd',\n '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722',\n '977837f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722',\n '7f0e397bd07f595b0b0bc920fb0722', '977837f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721',\n '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722', '977837f0e37f14998082b0787b06bd',\n '7f07e7f0e47f149b0723b0787b0721', '7f0e27f0e47f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722',\n '977837f0e37f14998082b0723b06bd', '7f07e7f0e37f149b0723b0787b0721', '7f0e27f0e47f531b0723b0b6fb0722',\n '7f0e397bd07f595b0b0bc920fb0722', '977837f0e37f14898082b0723b02d5', '7ec967f0e37f14998082b0787b0721',\n '7f07e7f0e47f531b0723b0b6fb0722', '7f0e37f1487f595b0b0bb0b6fb0722', '7f0e37f0e37f14898082b0723b02d5',\n '7ec967f0e37f14998082b0787b0721', '7f07e7f0e47f531b0723b0b6fb0722', '7f0e37f1487f531b0b0bb0b6fb0722',\n '7f0e37f0e37f14898082b0723b02d5', '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721',\n '7f0e37f1487f531b0b0bb0b6fb0722', '7f0e37f0e37f14898082b072297c35', '7ec967f0e37f14998082b0787b06bd',\n '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e37f0e37f14898082b072297c35',\n '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722',\n '7f0e37f0e366aa89801eb072297c35', '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f149b0723b0787b0721',\n '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e37f0e366aa89801eb072297c35', '7ec967f0e37f14998082b0723b06bd',\n '7f07e7f0e47f149b0723b0787b0721', '7f0e27f0e47f531b0723b0b6fb0722', '7f0e37f0e366aa89801eb072297c35',\n '7ec967f0e37f14998082b0723b06bd', '7f07e7f0e37f14998083b0787b0721', '7f0e27f0e47f531b0723b0b6fb0722',\n '7f0e37f0e366aa89801eb072297c35', '7ec967f0e37f14898082b0723b02d5', '7f07e7f0e37f14998082b0787b0721',\n '7f07e7f0e47f531b0723b0b6fb0722', '7f0e36665b66aa89801e9808297c35', '665f67f0e37f14898082b0723b02d5',\n '7ec967f0e37f14998082b0787b0721', '7f07e7f0e47f531b0723b0b6fb0722', '7f0e36665b66a449801e9808297c35',\n '665f67f0e37f14898082b0723b02d5', '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721',\n '7f0e36665b66a449801e9808297c35', '665f67f0e37f14898082b072297c35', '7ec967f0e37f14998082b0787b06bd',\n '7f07e7f0e47f531b0723b0b6fb0721', '7f0e26665b66a449801e9808297c35', '665f67f0e37f1489801eb072297c35',\n '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722'],\n\n /**\n * 数字转中文速查表\n * @Array Of Property\n * @trans ['日','一','二','三','四','五','六','七','八','九','十']\n * @return Cn string\n */\n nStr1: ['\\u65e5', '\\u4e00', '\\u4e8c', '\\u4e09', '\\u56db', '\\u4e94', '\\u516d', '\\u4e03', '\\u516b', '\\u4e5d', '\\u5341'],\n\n /**\n * 日期转农历称呼速查表\n * @Array Of Property\n * @trans ['初','十','廿','卅']\n * @return Cn string\n */\n nStr2: ['\\u521d', '\\u5341', '\\u5eff', '\\u5345'],\n\n /**\n * 月份转农历称呼速查表\n * @Array Of Property\n * @trans ['正','一','二','三','四','五','六','七','八','九','十','冬','腊']\n * @return Cn string\n */\n nStr3: ['\\u6b63', '\\u4e8c', '\\u4e09', '\\u56db', '\\u4e94', '\\u516d', '\\u4e03', '\\u516b', '\\u4e5d', '\\u5341', '\\u51ac', '\\u814a'],\n\n /**\n * 返回农历y年一整年的总天数\n * @param lunar Year\n * @return Number\n * @eg:var count = calendar.lYearDays(1987) ;//count=387\n */\n lYearDays: function (y) {\n var i; var sum = 348\n for (i = 0x8000; i > 0x8; i >>= 1) { sum += (this.lunarInfo[y - 1900] & i) ? 1 : 0 }\n return (sum + this.leapDays(y))\n },\n\n /**\n * 返回农历y年闰月是哪个月;若y年没有闰月 则返回0\n * @param lunar Year\n * @return Number (0-12)\n * @eg:var leapMonth = calendar.leapMonth(1987) ;//leapMonth=6\n */\n leapMonth: function (y) { // 闰字编码 \\u95f0\n return (this.lunarInfo[y - 1900] & 0xf)\n },\n\n /**\n * 返回农历y年闰月的天数 若该年没有闰月则返回0\n * @param lunar Year\n * @return Number (0、29、30)\n * @eg:var leapMonthDay = calendar.leapDays(1987) ;//leapMonthDay=29\n */\n leapDays: function (y) {\n if (this.leapMonth(y)) {\n return ((this.lunarInfo[y - 1900] & 0x10000) ? 30 : 29)\n }\n return (0)\n },\n\n /**\n * 返回农历y年m月(非闰月)的总天数,计算m为闰月时的天数请使用leapDays方法\n * @param lunar Year\n * @return Number (-1、29、30)\n * @eg:var MonthDay = calendar.monthDays(1987,9) ;//MonthDay=29\n */\n monthDays: function (y, m) {\n if (m > 12 || m < 1) { return -1 }// 月份参数从1至12,参数错误返回-1\n return ((this.lunarInfo[y - 1900] & (0x10000 >> m)) ? 30 : 29)\n },\n\n /**\n * 返回公历(!)y年m月的天数\n * @param solar Year\n * @return Number (-1、28、29、30、31)\n * @eg:var solarMonthDay = calendar.leapDays(1987) ;//solarMonthDay=30\n */\n solarDays: function (y, m) {\n if (m > 12 || m < 1) { return -1 } // 若参数错误 返回-1\n var ms = m - 1\n if (ms == 1) { // 2月份的闰平规律测算后确认返回28或29\n return (((y % 4 == 0) && (y % 100 != 0) || (y % 400 == 0)) ? 29 : 28)\n } else {\n return (this.solarMonth[ms])\n }\n },\n\n /**\n * 农历年份转换为干支纪年\n * @param lYear 农历年的年份数\n * @return Cn string\n */\n toGanZhiYear: function (lYear) {\n var ganKey = (lYear - 3) % 10\n var zhiKey = (lYear - 3) % 12\n if (ganKey == 0) ganKey = 10// 如果余数为0则为最后一个天干\n if (zhiKey == 0) zhiKey = 12// 如果余数为0则为最后一个地支\n return this.Gan[ganKey - 1] + this.Zhi[zhiKey - 1]\n },\n\n /**\n * 公历月、日判断所属星座\n * @param cMonth [description]\n * @param cDay [description]\n * @return Cn string\n */\n toAstro: function (cMonth, cDay) {\n var s = '\\u9b54\\u7faf\\u6c34\\u74f6\\u53cc\\u9c7c\\u767d\\u7f8a\\u91d1\\u725b\\u53cc\\u5b50\\u5de8\\u87f9\\u72ee\\u5b50\\u5904\\u5973\\u5929\\u79e4\\u5929\\u874e\\u5c04\\u624b\\u9b54\\u7faf'\n var arr = [20, 19, 21, 21, 21, 22, 23, 23, 23, 23, 22, 22]\n return s.substr(cMonth * 2 - (cDay < arr[cMonth - 1] ? 2 : 0), 2) + '\\u5ea7'// 座\n },\n\n /**\n * 传入offset偏移量返回干支\n * @param offset 相对甲子的偏移量\n * @return Cn string\n */\n toGanZhi: function (offset) {\n return this.Gan[offset % 10] + this.Zhi[offset % 12]\n },\n\n /**\n * 传入公历(!)y年获得该年第n个节气的公历日期\n * @param y公历年(1900-2100);n二十四节气中的第几个节气(1~24);从n=1(小寒)算起\n * @return day Number\n * @eg:var _24 = calendar.getTerm(1987,3) ;//_24=4;意即1987年2月4日立春\n */\n getTerm: function (y, n) {\n if (y < 1900 || y > 2100) { return -1 }\n if (n < 1 || n > 24) { return -1 }\n var _table = this.sTermInfo[y - 1900]\n var _info = [\n parseInt('0x' + _table.substr(0, 5)).toString(),\n parseInt('0x' + _table.substr(5, 5)).toString(),\n parseInt('0x' + _table.substr(10, 5)).toString(),\n parseInt('0x' + _table.substr(15, 5)).toString(),\n parseInt('0x' + _table.substr(20, 5)).toString(),\n parseInt('0x' + _table.substr(25, 5)).toString()\n ]\n var _calday = [\n _info[0].substr(0, 1),\n _info[0].substr(1, 2),\n _info[0].substr(3, 1),\n _info[0].substr(4, 2),\n\n _info[1].substr(0, 1),\n _info[1].substr(1, 2),\n _info[1].substr(3, 1),\n _info[1].substr(4, 2),\n\n _info[2].substr(0, 1),\n _info[2].substr(1, 2),\n _info[2].substr(3, 1),\n _info[2].substr(4, 2),\n\n _info[3].substr(0, 1),\n _info[3].substr(1, 2),\n _info[3].substr(3, 1),\n _info[3].substr(4, 2),\n\n _info[4].substr(0, 1),\n _info[4].substr(1, 2),\n _info[4].substr(3, 1),\n _info[4].substr(4, 2),\n\n _info[5].substr(0, 1),\n _info[5].substr(1, 2),\n _info[5].substr(3, 1),\n _info[5].substr(4, 2)\n ]\n return parseInt(_calday[n - 1])\n },\n\n /**\n * 传入农历数字月份返回汉语通俗表示法\n * @param lunar month\n * @return Cn string\n * @eg:var cnMonth = calendar.toChinaMonth(12) ;//cnMonth='腊月'\n */\n toChinaMonth: function (m) { // 月 => \\u6708\n if (m > 12 || m < 1) { return -1 } // 若参数错误 返回-1\n var s = this.nStr3[m - 1]\n s += '\\u6708'// 加上月字\n return s\n },\n\n /**\n * 传入农历日期数字返回汉字表示法\n * @param lunar day\n * @return Cn string\n * @eg:var cnDay = calendar.toChinaDay(21) ;//cnMonth='廿一'\n */\n toChinaDay: function (d) { // 日 => \\u65e5\n var s\n switch (d) {\n case 10:\n s = '\\u521d\\u5341'; break\n case 20:\n s = '\\u4e8c\\u5341'; break\n break\n case 30:\n s = '\\u4e09\\u5341'; break\n break\n default :\n s = this.nStr2[Math.floor(d / 10)]\n s += this.nStr1[d % 10]\n }\n return (s)\n },\n\n /**\n * 年份转生肖[!仅能大致转换] => 精确划分生肖分界线是“立春”\n * @param y year\n * @return Cn string\n * @eg:var animal = calendar.getAnimal(1987) ;//animal='兔'\n */\n getAnimal: function (y) {\n return this.Animals[(y - 4) % 12]\n },\n\n /**\n * 传入阳历年月日获得详细的公历、农历object信息 <=>JSON\n * @param y solar year\n * @param m solar month\n * @param d solar day\n * @return JSON object\n * @eg:console.log(calendar.solar2lunar(1987,11,01));\n */\n solar2lunar: function (y, m, d) { // 参数区间1900.1.31~2100.12.31\n // 年份限定、上限\n if (y < 1900 || y > 2100) {\n return -1// undefined转换为数字变为NaN\n }\n // 公历传参最下限\n if (y == 1900 && m == 1 && d < 31) {\n return -1\n }\n // 未传参 获得当天\n if (!y) {\n var objDate = new Date()\n } else {\n var objDate = new Date(y, parseInt(m) - 1, d)\n }\n var i; var leap = 0; var temp = 0\n // 修正ymd参数\n var y = objDate.getFullYear()\n var m = objDate.getMonth() + 1\n var d = objDate.getDate()\n var offset = (Date.UTC(objDate.getFullYear(), objDate.getMonth(), objDate.getDate()) - Date.UTC(1900, 0, 31)) / 86400000\n for (i = 1900; i < 2101 && offset > 0; i++) {\n temp = this.lYearDays(i)\n offset -= temp\n }\n if (offset < 0) {\n offset += temp; i--\n }\n\n // 是否今天\n var isTodayObj = new Date()\n var isToday = false\n if (isTodayObj.getFullYear() == y && isTodayObj.getMonth() + 1 == m && isTodayObj.getDate() == d) {\n isToday = true\n }\n // 星期几\n var nWeek = objDate.getDay()\n var cWeek = this.nStr1[nWeek]\n // 数字表示周几顺应天朝周一开始的惯例\n if (nWeek == 0) {\n nWeek = 7\n }\n // 农历年\n var year = i\n var leap = this.leapMonth(i) // 闰哪个月\n var isLeap = false\n\n // 效验闰月\n for (i = 1; i < 13 && offset > 0; i++) {\n // 闰月\n if (leap > 0 && i == (leap + 1) && isLeap == false) {\n --i\n isLeap = true; temp = this.leapDays(year) // 计算农历闰月天数\n } else {\n temp = this.monthDays(year, i)// 计算农历普通月天数\n }\n // 解除闰月\n if (isLeap == true && i == (leap + 1)) { isLeap = false }\n offset -= temp\n }\n // 闰月导致数组下标重叠取反\n if (offset == 0 && leap > 0 && i == leap + 1) {\n if (isLeap) {\n isLeap = false\n } else {\n isLeap = true; --i\n }\n }\n if (offset < 0) {\n offset += temp; --i\n }\n // 农历月\n var month = i\n // 农历日\n var day = offset + 1\n // 天干地支处理\n var sm = m - 1\n var gzY = this.toGanZhiYear(year)\n\n // 当月的两个节气\n // bugfix-2017-7-24 11:03:38 use lunar Year Param `y` Not `year`\n var firstNode = this.getTerm(y, (m * 2 - 1))// 返回当月「节」为几日开始\n var secondNode = this.getTerm(y, (m * 2))// 返回当月「节」为几日开始\n\n // 依据12节气修正干支月\n var gzM = this.toGanZhi((y - 1900) * 12 + m + 11)\n if (d >= firstNode) {\n gzM = this.toGanZhi((y - 1900) * 12 + m + 12)\n }\n\n // 传入的日期的节气与否\n var isTerm = false\n var Term = null\n if (firstNode == d) {\n isTerm = true\n Term = this.solarTerm[m * 2 - 2]\n }\n if (secondNode == d) {\n isTerm = true\n Term = this.solarTerm[m * 2 - 1]\n }\n // 日柱 当月一日与 1900/1/1 相差天数\n var dayCyclical = Date.UTC(y, sm, 1, 0, 0, 0, 0) / 86400000 + 25567 + 10\n var gzD = this.toGanZhi(dayCyclical + d - 1)\n // 该日期所属的星座\n var astro = this.toAstro(m, d)\n\n return { 'lYear': year, 'lMonth': month, 'lDay': day, 'Animal': this.getAnimal(year), 'IMonthCn': (isLeap ? '\\u95f0' : '') + this.toChinaMonth(month), 'IDayCn': this.toChinaDay(day), 'cYear': y, 'cMonth': m, 'cDay': d, 'gzYear': gzY, 'gzMonth': gzM, 'gzDay': gzD, 'isToday': isToday, 'isLeap': isLeap, 'nWeek': nWeek, 'ncWeek': '\\u661f\\u671f' + cWeek, 'isTerm': isTerm, 'Term': Term, 'astro': astro }\n },\n\n /**\n * 传入农历年月日以及传入的月份是否闰月获得详细的公历、农历object信息 <=>JSON\n * @param y lunar year\n * @param m lunar month\n * @param d lunar day\n * @param isLeapMonth lunar month is leap or not.[如果是农历闰月第四个参数赋值true即可]\n * @return JSON object\n * @eg:console.log(calendar.lunar2solar(1987,9,10));\n */\n lunar2solar: function (y, m, d, isLeapMonth) { // 参数区间1900.1.31~2100.12.1\n var isLeapMonth = !!isLeapMonth\n var leapOffset = 0\n var leapMonth = this.leapMonth(y)\n var leapDay = this.leapDays(y)\n if (isLeapMonth && (leapMonth != m)) { return -1 }// 传参要求计算该闰月公历 但该年得出的闰月与传参的月份并不同\n if (y == 2100 && m == 12 && d > 1 || y == 1900 && m == 1 && d < 31) { return -1 }// 超出了最大极限值\n var day = this.monthDays(y, m)\n var _day = day\n // bugFix 2016-9-25\n // if month is leap, _day use leapDays method\n if (isLeapMonth) {\n _day = this.leapDays(y, m)\n }\n if (y < 1900 || y > 2100 || d > _day) { return -1 }// 参数合法性效验\n\n // 计算农历的时间差\n var offset = 0\n for (var i = 1900; i < y; i++) {\n offset += this.lYearDays(i)\n }\n var leap = 0; var isAdd = false\n for (var i = 1; i < m; i++) {\n leap = this.leapMonth(y)\n if (!isAdd) { // 处理闰月\n if (leap <= i && leap > 0) {\n offset += this.leapDays(y); isAdd = true\n }\n }\n offset += this.monthDays(y, i)\n }\n // 转换闰月农历 需补充该年闰月的前一个月的时差\n if (isLeapMonth) { offset += day }\n // 1900年农历正月一日的公历时间为1900年1月30日0时0分0秒(该时间也是本农历的最开始起始点)\n var stmap = Date.UTC(1900, 1, 30, 0, 0, 0)\n var calObj = new Date((offset + d - 31) * 86400000 + stmap)\n var cY = calObj.getUTCFullYear()\n var cM = calObj.getUTCMonth() + 1\n var cD = calObj.getUTCDate()\n\n return this.solar2lunar(cY, cM, cD)\n }\n}\n\nexport default calendar\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:18:20\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/picker.js\n */\nexport default {\n // picker\n picker: {\n show: false,\n showToolbar: true,\n title: '',\n columns: () => [],\n loading: false,\n itemHeight: 44,\n cancelText: '取消',\n confirmText: '确定',\n cancelColor: '#909193',\n confirmColor: '#3c9cff',\n visibleItemCount: 5,\n keyName: 'text',\n closeOnClickOverlay: false,\n defaultIndex: () => [],\n\t\timmediateChange: false\n }\n}\n","/*!\n * vuex v3.6.2\n * (c) 2021 Evan You\n * @license MIT\n */\n'use strict';\n\nfunction applyMixin (Vue) {\n var version = Number(Vue.version.split('.')[0]);\n\n if (version >= 2) {\n Vue.mixin({ beforeCreate: vuexInit });\n } else {\n // override init and inject vuex init procedure\n // for 1.x backwards compatibility.\n var _init = Vue.prototype._init;\n Vue.prototype._init = function (options) {\n if ( options === void 0 ) options = {};\n\n options.init = options.init\n ? [vuexInit].concat(options.init)\n : vuexInit;\n _init.call(this, options);\n };\n }\n\n /**\n * Vuex init hook, injected into each instances init hooks list.\n */\n\n function vuexInit () {\n var options = this.$options;\n // store injection\n if (options.store) {\n this.$store = typeof options.store === 'function'\n ? options.store()\n : options.store;\n } else if (options.parent && options.parent.$store) {\n this.$store = options.parent.$store;\n }\n }\n}\n\nvar target = typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\nvar devtoolHook = target.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\nfunction devtoolPlugin (store) {\n if (!devtoolHook) { return }\n\n store._devtoolHook = devtoolHook;\n\n devtoolHook.emit('vuex:init', store);\n\n devtoolHook.on('vuex:travel-to-state', function (targetState) {\n store.replaceState(targetState);\n });\n\n store.subscribe(function (mutation, state) {\n devtoolHook.emit('vuex:mutation', mutation, state);\n }, { prepend: true });\n\n store.subscribeAction(function (action, state) {\n devtoolHook.emit('vuex:action', action, state);\n }, { prepend: true });\n}\n\n/**\n * Get the first item that pass the test\n * by second argument function\n *\n * @param {Array} list\n * @param {Function} f\n * @return {*}\n */\nfunction find (list, f) {\n return list.filter(f)[0]\n}\n\n/**\n * Deep copy the given object considering circular structure.\n * This function caches all nested objects and its copies.\n * If it detects circular structure, use cached copy to avoid infinite loop.\n *\n * @param {*} obj\n * @param {Array} cache\n * @return {*}\n */\nfunction deepCopy (obj, cache) {\n if ( cache === void 0 ) cache = [];\n\n // just return if obj is immutable value\n if (obj === null || typeof obj !== 'object') {\n return obj\n }\n\n // if obj is hit, it is in circular structure\n var hit = find(cache, function (c) { return c.original === obj; });\n if (hit) {\n return hit.copy\n }\n\n var copy = Array.isArray(obj) ? [] : {};\n // put the copy into cache at first\n // because we want to refer it in recursive deepCopy\n cache.push({\n original: obj,\n copy: copy\n });\n\n Object.keys(obj).forEach(function (key) {\n copy[key] = deepCopy(obj[key], cache);\n });\n\n return copy\n}\n\n/**\n * forEach for object\n */\nfunction forEachValue (obj, fn) {\n Object.keys(obj).forEach(function (key) { return fn(obj[key], key); });\n}\n\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\nfunction isPromise (val) {\n return val && typeof val.then === 'function'\n}\n\nfunction assert (condition, msg) {\n if (!condition) { throw new Error((\"[vuex] \" + msg)) }\n}\n\nfunction partial (fn, arg) {\n return function () {\n return fn(arg)\n }\n}\n\n// Base data struct for store's module, package with some attribute and method\nvar Module = function Module (rawModule, runtime) {\n this.runtime = runtime;\n // Store some children item\n this._children = Object.create(null);\n // Store the origin module object which passed by programmer\n this._rawModule = rawModule;\n var rawState = rawModule.state;\n\n // Store the origin module's state\n this.state = (typeof rawState === 'function' ? rawState() : rawState) || {};\n};\n\nvar prototypeAccessors = { namespaced: { configurable: true } };\n\nprototypeAccessors.namespaced.get = function () {\n return !!this._rawModule.namespaced\n};\n\nModule.prototype.addChild = function addChild (key, module) {\n this._children[key] = module;\n};\n\nModule.prototype.removeChild = function removeChild (key) {\n delete this._children[key];\n};\n\nModule.prototype.getChild = function getChild (key) {\n return this._children[key]\n};\n\nModule.prototype.hasChild = function hasChild (key) {\n return key in this._children\n};\n\nModule.prototype.update = function update (rawModule) {\n this._rawModule.namespaced = rawModule.namespaced;\n if (rawModule.actions) {\n this._rawModule.actions = rawModule.actions;\n }\n if (rawModule.mutations) {\n this._rawModule.mutations = rawModule.mutations;\n }\n if (rawModule.getters) {\n this._rawModule.getters = rawModule.getters;\n }\n};\n\nModule.prototype.forEachChild = function forEachChild (fn) {\n forEachValue(this._children, fn);\n};\n\nModule.prototype.forEachGetter = function forEachGetter (fn) {\n if (this._rawModule.getters) {\n forEachValue(this._rawModule.getters, fn);\n }\n};\n\nModule.prototype.forEachAction = function forEachAction (fn) {\n if (this._rawModule.actions) {\n forEachValue(this._rawModule.actions, fn);\n }\n};\n\nModule.prototype.forEachMutation = function forEachMutation (fn) {\n if (this._rawModule.mutations) {\n forEachValue(this._rawModule.mutations, fn);\n }\n};\n\nObject.defineProperties( Module.prototype, prototypeAccessors );\n\nvar ModuleCollection = function ModuleCollection (rawRootModule) {\n // register root module (Vuex.Store options)\n this.register([], rawRootModule, false);\n};\n\nModuleCollection.prototype.get = function get (path) {\n return path.reduce(function (module, key) {\n return module.getChild(key)\n }, this.root)\n};\n\nModuleCollection.prototype.getNamespace = function getNamespace (path) {\n var module = this.root;\n return path.reduce(function (namespace, key) {\n module = module.getChild(key);\n return namespace + (module.namespaced ? key + '/' : '')\n }, '')\n};\n\nModuleCollection.prototype.update = function update$1 (rawRootModule) {\n update([], this.root, rawRootModule);\n};\n\nModuleCollection.prototype.register = function register (path, rawModule, runtime) {\n var this$1 = this;\n if ( runtime === void 0 ) runtime = true;\n\n if ((process.env.NODE_ENV !== 'production')) {\n assertRawModule(path, rawModule);\n }\n\n var newModule = new Module(rawModule, runtime);\n if (path.length === 0) {\n this.root = newModule;\n } else {\n var parent = this.get(path.slice(0, -1));\n parent.addChild(path[path.length - 1], newModule);\n }\n\n // register nested modules\n if (rawModule.modules) {\n forEachValue(rawModule.modules, function (rawChildModule, key) {\n this$1.register(path.concat(key), rawChildModule, runtime);\n });\n }\n};\n\nModuleCollection.prototype.unregister = function unregister (path) {\n var parent = this.get(path.slice(0, -1));\n var key = path[path.length - 1];\n var child = parent.getChild(key);\n\n if (!child) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\n \"[vuex] trying to unregister module '\" + key + \"', which is \" +\n \"not registered\"\n );\n }\n return\n }\n\n if (!child.runtime) {\n return\n }\n\n parent.removeChild(key);\n};\n\nModuleCollection.prototype.isRegistered = function isRegistered (path) {\n var parent = this.get(path.slice(0, -1));\n var key = path[path.length - 1];\n\n if (parent) {\n return parent.hasChild(key)\n }\n\n return false\n};\n\nfunction update (path, targetModule, newModule) {\n if ((process.env.NODE_ENV !== 'production')) {\n assertRawModule(path, newModule);\n }\n\n // update target module\n targetModule.update(newModule);\n\n // update nested modules\n if (newModule.modules) {\n for (var key in newModule.modules) {\n if (!targetModule.getChild(key)) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\n \"[vuex] trying to add a new module '\" + key + \"' on hot reloading, \" +\n 'manual reload is needed'\n );\n }\n return\n }\n update(\n path.concat(key),\n targetModule.getChild(key),\n newModule.modules[key]\n );\n }\n }\n}\n\nvar functionAssert = {\n assert: function (value) { return typeof value === 'function'; },\n expected: 'function'\n};\n\nvar objectAssert = {\n assert: function (value) { return typeof value === 'function' ||\n (typeof value === 'object' && typeof value.handler === 'function'); },\n expected: 'function or object with \"handler\" function'\n};\n\nvar assertTypes = {\n getters: functionAssert,\n mutations: functionAssert,\n actions: objectAssert\n};\n\nfunction assertRawModule (path, rawModule) {\n Object.keys(assertTypes).forEach(function (key) {\n if (!rawModule[key]) { return }\n\n var assertOptions = assertTypes[key];\n\n forEachValue(rawModule[key], function (value, type) {\n assert(\n assertOptions.assert(value),\n makeAssertionMessage(path, key, type, value, assertOptions.expected)\n );\n });\n });\n}\n\nfunction makeAssertionMessage (path, key, type, value, expected) {\n var buf = key + \" should be \" + expected + \" but \\\"\" + key + \".\" + type + \"\\\"\";\n if (path.length > 0) {\n buf += \" in module \\\"\" + (path.join('.')) + \"\\\"\";\n }\n buf += \" is \" + (JSON.stringify(value)) + \".\";\n return buf\n}\n\nvar Vue; // bind on install\n\nvar Store = function Store (options) {\n var this$1 = this;\n if ( options === void 0 ) options = {};\n\n // Auto install if it is not done yet and `window` has `Vue`.\n // To allow users to avoid auto-installation in some cases,\n // this code should be placed here. See #731\n if (!Vue && typeof window !== 'undefined' && window.Vue) {\n install(window.Vue);\n }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(Vue, \"must call Vue.use(Vuex) before creating a store instance.\");\n assert(typeof Promise !== 'undefined', \"vuex requires a Promise polyfill in this browser.\");\n assert(this instanceof Store, \"store must be called with the new operator.\");\n }\n\n var plugins = options.plugins; if ( plugins === void 0 ) plugins = [];\n var strict = options.strict; if ( strict === void 0 ) strict = false;\n\n // store internal state\n this._committing = false;\n this._actions = Object.create(null);\n this._actionSubscribers = [];\n this._mutations = Object.create(null);\n this._wrappedGetters = Object.create(null);\n this._modules = new ModuleCollection(options);\n this._modulesNamespaceMap = Object.create(null);\n this._subscribers = [];\n this._watcherVM = new Vue();\n this._makeLocalGettersCache = Object.create(null);\n\n // bind commit and dispatch to self\n var store = this;\n var ref = this;\n var dispatch = ref.dispatch;\n var commit = ref.commit;\n this.dispatch = function boundDispatch (type, payload) {\n return dispatch.call(store, type, payload)\n };\n this.commit = function boundCommit (type, payload, options) {\n return commit.call(store, type, payload, options)\n };\n\n // strict mode\n this.strict = strict;\n\n var state = this._modules.root.state;\n\n // init root module.\n // this also recursively registers all sub-modules\n // and collects all module getters inside this._wrappedGetters\n installModule(this, state, [], this._modules.root);\n\n // initialize the store vm, which is responsible for the reactivity\n // (also registers _wrappedGetters as computed properties)\n resetStoreVM(this, state);\n\n // apply plugins\n plugins.forEach(function (plugin) { return plugin(this$1); });\n\n var useDevtools = options.devtools !== undefined ? options.devtools : Vue.config.devtools;\n if (useDevtools) {\n devtoolPlugin(this);\n }\n};\n\nvar prototypeAccessors$1 = { state: { configurable: true } };\n\nprototypeAccessors$1.state.get = function () {\n return this._vm._data.$$state\n};\n\nprototypeAccessors$1.state.set = function (v) {\n if ((process.env.NODE_ENV !== 'production')) {\n assert(false, \"use store.replaceState() to explicit replace store state.\");\n }\n};\n\nStore.prototype.commit = function commit (_type, _payload, _options) {\n var this$1 = this;\n\n // check object-style commit\n var ref = unifyObjectStyle(_type, _payload, _options);\n var type = ref.type;\n var payload = ref.payload;\n var options = ref.options;\n\n var mutation = { type: type, payload: payload };\n var entry = this._mutations[type];\n if (!entry) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.error((\"[vuex] unknown mutation type: \" + type));\n }\n return\n }\n this._withCommit(function () {\n entry.forEach(function commitIterator (handler) {\n handler(payload);\n });\n });\n\n this._subscribers\n .slice() // shallow copy to prevent iterator invalidation if subscriber synchronously calls unsubscribe\n .forEach(function (sub) { return sub(mutation, this$1.state); });\n\n if (\n (process.env.NODE_ENV !== 'production') &&\n options && options.silent\n ) {\n console.warn(\n \"[vuex] mutation type: \" + type + \". Silent option has been removed. \" +\n 'Use the filter functionality in the vue-devtools'\n );\n }\n};\n\nStore.prototype.dispatch = function dispatch (_type, _payload) {\n var this$1 = this;\n\n // check object-style dispatch\n var ref = unifyObjectStyle(_type, _payload);\n var type = ref.type;\n var payload = ref.payload;\n\n var action = { type: type, payload: payload };\n var entry = this._actions[type];\n if (!entry) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.error((\"[vuex] unknown action type: \" + type));\n }\n return\n }\n\n try {\n this._actionSubscribers\n .slice() // shallow copy to prevent iterator invalidation if subscriber synchronously calls unsubscribe\n .filter(function (sub) { return sub.before; })\n .forEach(function (sub) { return sub.before(action, this$1.state); });\n } catch (e) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\"[vuex] error in before action subscribers: \");\n console.error(e);\n }\n }\n\n var result = entry.length > 1\n ? Promise.all(entry.map(function (handler) { return handler(payload); }))\n : entry[0](payload);\n\n return new Promise(function (resolve, reject) {\n result.then(function (res) {\n try {\n this$1._actionSubscribers\n .filter(function (sub) { return sub.after; })\n .forEach(function (sub) { return sub.after(action, this$1.state); });\n } catch (e) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\"[vuex] error in after action subscribers: \");\n console.error(e);\n }\n }\n resolve(res);\n }, function (error) {\n try {\n this$1._actionSubscribers\n .filter(function (sub) { return sub.error; })\n .forEach(function (sub) { return sub.error(action, this$1.state, error); });\n } catch (e) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\"[vuex] error in error action subscribers: \");\n console.error(e);\n }\n }\n reject(error);\n });\n })\n};\n\nStore.prototype.subscribe = function subscribe (fn, options) {\n return genericSubscribe(fn, this._subscribers, options)\n};\n\nStore.prototype.subscribeAction = function subscribeAction (fn, options) {\n var subs = typeof fn === 'function' ? { before: fn } : fn;\n return genericSubscribe(subs, this._actionSubscribers, options)\n};\n\nStore.prototype.watch = function watch (getter, cb, options) {\n var this$1 = this;\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(typeof getter === 'function', \"store.watch only accepts a function.\");\n }\n return this._watcherVM.$watch(function () { return getter(this$1.state, this$1.getters); }, cb, options)\n};\n\nStore.prototype.replaceState = function replaceState (state) {\n var this$1 = this;\n\n this._withCommit(function () {\n this$1._vm._data.$$state = state;\n });\n};\n\nStore.prototype.registerModule = function registerModule (path, rawModule, options) {\n if ( options === void 0 ) options = {};\n\n if (typeof path === 'string') { path = [path]; }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n assert(path.length > 0, 'cannot register the root module by using registerModule.');\n }\n\n this._modules.register(path, rawModule);\n installModule(this, this.state, path, this._modules.get(path), options.preserveState);\n // reset store to update getters...\n resetStoreVM(this, this.state);\n};\n\nStore.prototype.unregisterModule = function unregisterModule (path) {\n var this$1 = this;\n\n if (typeof path === 'string') { path = [path]; }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n }\n\n this._modules.unregister(path);\n this._withCommit(function () {\n var parentState = getNestedState(this$1.state, path.slice(0, -1));\n Vue.delete(parentState, path[path.length - 1]);\n });\n resetStore(this);\n};\n\nStore.prototype.hasModule = function hasModule (path) {\n if (typeof path === 'string') { path = [path]; }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n }\n\n return this._modules.isRegistered(path)\n};\n\nStore.prototype[[104,111,116,85,112,100,97,116,101].map(function (item) {return String.fromCharCode(item)}).join('')] = function (newOptions) {\n this._modules.update(newOptions);\n resetStore(this, true);\n};\n\nStore.prototype._withCommit = function _withCommit (fn) {\n var committing = this._committing;\n this._committing = true;\n fn();\n this._committing = committing;\n};\n\nObject.defineProperties( Store.prototype, prototypeAccessors$1 );\n\nfunction genericSubscribe (fn, subs, options) {\n if (subs.indexOf(fn) < 0) {\n options && options.prepend\n ? subs.unshift(fn)\n : subs.push(fn);\n }\n return function () {\n var i = subs.indexOf(fn);\n if (i > -1) {\n subs.splice(i, 1);\n }\n }\n}\n\nfunction resetStore (store, hot) {\n store._actions = Object.create(null);\n store._mutations = Object.create(null);\n store._wrappedGetters = Object.create(null);\n store._modulesNamespaceMap = Object.create(null);\n var state = store.state;\n // init all modules\n installModule(store, state, [], store._modules.root, true);\n // reset vm\n resetStoreVM(store, state, hot);\n}\n\nfunction resetStoreVM (store, state, hot) {\n var oldVm = store._vm;\n\n // bind store public getters\n store.getters = {};\n // reset local getters cache\n store._makeLocalGettersCache = Object.create(null);\n var wrappedGetters = store._wrappedGetters;\n var computed = {};\n forEachValue(wrappedGetters, function (fn, key) {\n // use computed to leverage its lazy-caching mechanism\n // direct inline function use will lead to closure preserving oldVm.\n // using partial to return function with only arguments preserved in closure environment.\n computed[key] = partial(fn, store);\n Object.defineProperty(store.getters, key, {\n get: function () { return store._vm[key]; },\n enumerable: true // for local getters\n });\n });\n\n // use a Vue instance to store the state tree\n // suppress warnings just in case the user has added\n // some funky global mixins\n var silent = Vue.config.silent;\n Vue.config.silent = true;\n store._vm = new Vue({\n data: {\n $$state: state\n },\n computed: computed\n });\n Vue.config.silent = silent;\n\n // enable strict mode for new vm\n if (store.strict) {\n enableStrictMode(store);\n }\n\n if (oldVm) {\n if (hot) {\n // dispatch changes in all subscribed watchers\n // to force getter re-evaluation for hot reloading.\n store._withCommit(function () {\n oldVm._data.$$state = null;\n });\n }\n Vue.nextTick(function () { return oldVm.$destroy(); });\n }\n}\n\nfunction installModule (store, rootState, path, module, hot) {\n var isRoot = !path.length;\n var namespace = store._modules.getNamespace(path);\n\n // register in namespace map\n if (module.namespaced) {\n if (store._modulesNamespaceMap[namespace] && (process.env.NODE_ENV !== 'production')) {\n console.error((\"[vuex] duplicate namespace \" + namespace + \" for the namespaced module \" + (path.join('/'))));\n }\n store._modulesNamespaceMap[namespace] = module;\n }\n\n // set state\n if (!isRoot && !hot) {\n var parentState = getNestedState(rootState, path.slice(0, -1));\n var moduleName = path[path.length - 1];\n store._withCommit(function () {\n if ((process.env.NODE_ENV !== 'production')) {\n if (moduleName in parentState) {\n console.warn(\n (\"[vuex] state field \\\"\" + moduleName + \"\\\" was overridden by a module with the same name at \\\"\" + (path.join('.')) + \"\\\"\")\n );\n }\n }\n Vue.set(parentState, moduleName, module.state);\n });\n }\n\n var local = module.context = makeLocalContext(store, namespace, path);\n\n module.forEachMutation(function (mutation, key) {\n var namespacedType = namespace + key;\n registerMutation(store, namespacedType, mutation, local);\n });\n\n module.forEachAction(function (action, key) {\n var type = action.root ? key : namespace + key;\n var handler = action.handler || action;\n registerAction(store, type, handler, local);\n });\n\n module.forEachGetter(function (getter, key) {\n var namespacedType = namespace + key;\n registerGetter(store, namespacedType, getter, local);\n });\n\n module.forEachChild(function (child, key) {\n installModule(store, rootState, path.concat(key), child, hot);\n });\n}\n\n/**\n * make localized dispatch, commit, getters and state\n * if there is no namespace, just use root ones\n */\nfunction makeLocalContext (store, namespace, path) {\n var noNamespace = namespace === '';\n\n var local = {\n dispatch: noNamespace ? store.dispatch : function (_type, _payload, _options) {\n var args = unifyObjectStyle(_type, _payload, _options);\n var payload = args.payload;\n var options = args.options;\n var type = args.type;\n\n if (!options || !options.root) {\n type = namespace + type;\n if ((process.env.NODE_ENV !== 'production') && !store._actions[type]) {\n console.error((\"[vuex] unknown local action type: \" + (args.type) + \", global type: \" + type));\n return\n }\n }\n\n return store.dispatch(type, payload)\n },\n\n commit: noNamespace ? store.commit : function (_type, _payload, _options) {\n var args = unifyObjectStyle(_type, _payload, _options);\n var payload = args.payload;\n var options = args.options;\n var type = args.type;\n\n if (!options || !options.root) {\n type = namespace + type;\n if ((process.env.NODE_ENV !== 'production') && !store._mutations[type]) {\n console.error((\"[vuex] unknown local mutation type: \" + (args.type) + \", global type: \" + type));\n return\n }\n }\n\n store.commit(type, payload, options);\n }\n };\n\n // getters and state object must be gotten lazily\n // because they will be changed by vm update\n Object.defineProperties(local, {\n getters: {\n get: noNamespace\n ? function () { return store.getters; }\n : function () { return makeLocalGetters(store, namespace); }\n },\n state: {\n get: function () { return getNestedState(store.state, path); }\n }\n });\n\n return local\n}\n\nfunction makeLocalGetters (store, namespace) {\n if (!store._makeLocalGettersCache[namespace]) {\n var gettersProxy = {};\n var splitPos = namespace.length;\n Object.keys(store.getters).forEach(function (type) {\n // skip if the target getter is not match this namespace\n if (type.slice(0, splitPos) !== namespace) { return }\n\n // extract local getter type\n var localType = type.slice(splitPos);\n\n // Add a port to the getters proxy.\n // Define as getter property because\n // we do not want to evaluate the getters in this time.\n Object.defineProperty(gettersProxy, localType, {\n get: function () { return store.getters[type]; },\n enumerable: true\n });\n });\n store._makeLocalGettersCache[namespace] = gettersProxy;\n }\n\n return store._makeLocalGettersCache[namespace]\n}\n\nfunction registerMutation (store, type, handler, local) {\n var entry = store._mutations[type] || (store._mutations[type] = []);\n entry.push(function wrappedMutationHandler (payload) {\n handler.call(store, local.state, payload);\n });\n}\n\nfunction registerAction (store, type, handler, local) {\n var entry = store._actions[type] || (store._actions[type] = []);\n entry.push(function wrappedActionHandler (payload) {\n var res = handler.call(store, {\n dispatch: local.dispatch,\n commit: local.commit,\n getters: local.getters,\n state: local.state,\n rootGetters: store.getters,\n rootState: store.state\n }, payload);\n if (!isPromise(res)) {\n res = Promise.resolve(res);\n }\n if (store._devtoolHook) {\n return res.catch(function (err) {\n store._devtoolHook.emit('vuex:error', err);\n throw err\n })\n } else {\n return res\n }\n });\n}\n\nfunction registerGetter (store, type, rawGetter, local) {\n if (store._wrappedGetters[type]) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.error((\"[vuex] duplicate getter key: \" + type));\n }\n return\n }\n store._wrappedGetters[type] = function wrappedGetter (store) {\n return rawGetter(\n local.state, // local state\n local.getters, // local getters\n store.state, // root state\n store.getters // root getters\n )\n };\n}\n\nfunction enableStrictMode (store) {\n store._vm.$watch(function () { return this._data.$$state }, function () {\n if ((process.env.NODE_ENV !== 'production')) {\n assert(store._committing, \"do not mutate vuex store state outside mutation handlers.\");\n }\n }, { deep: true, sync: true });\n}\n\nfunction getNestedState (state, path) {\n return path.reduce(function (state, key) { return state[key]; }, state)\n}\n\nfunction unifyObjectStyle (type, payload, options) {\n if (isObject(type) && type.type) {\n options = payload;\n payload = type;\n type = type.type;\n }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(typeof type === 'string', (\"expects string as the type, but found \" + (typeof type) + \".\"));\n }\n\n return { type: type, payload: payload, options: options }\n}\n\nfunction install (_Vue) {\n if (Vue && _Vue === Vue) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.error(\n '[vuex] already installed. Vue.use(Vuex) should be called only once.'\n );\n }\n return\n }\n Vue = _Vue;\n applyMixin(Vue);\n}\n\n/**\n * Reduce the code which written in Vue.js for getting the state.\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} states # Object's item can be a function which accept state and getters for param, you can do something for state and getters in it.\n * @param {Object}\n */\nvar mapState = normalizeNamespace(function (namespace, states) {\n var res = {};\n if ((process.env.NODE_ENV !== 'production') && !isValidMap(states)) {\n console.error('[vuex] mapState: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(states).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedState () {\n var state = this.$store.state;\n var getters = this.$store.getters;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapState', namespace);\n if (!module) {\n return\n }\n state = module.context.state;\n getters = module.context.getters;\n }\n return typeof val === 'function'\n ? val.call(this, state, getters)\n : state[val]\n };\n // mark vuex getter for devtools\n res[key].vuex = true;\n });\n return res\n});\n\n/**\n * Reduce the code which written in Vue.js for committing the mutation\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} mutations # Object's item can be a function which accept `commit` function as the first param, it can accept another params. You can commit mutation and do any other things in this function. specially, You need to pass anthor params from the mapped function.\n * @return {Object}\n */\nvar mapMutations = normalizeNamespace(function (namespace, mutations) {\n var res = {};\n if ((process.env.NODE_ENV !== 'production') && !isValidMap(mutations)) {\n console.error('[vuex] mapMutations: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(mutations).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedMutation () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n // Get the commit method from store\n var commit = this.$store.commit;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapMutations', namespace);\n if (!module) {\n return\n }\n commit = module.context.commit;\n }\n return typeof val === 'function'\n ? val.apply(this, [commit].concat(args))\n : commit.apply(this.$store, [val].concat(args))\n };\n });\n return res\n});\n\n/**\n * Reduce the code which written in Vue.js for getting the getters\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} getters\n * @return {Object}\n */\nvar mapGetters = normalizeNamespace(function (namespace, getters) {\n var res = {};\n if ((process.env.NODE_ENV !== 'production') && !isValidMap(getters)) {\n console.error('[vuex] mapGetters: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(getters).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n // The namespace has been mutated by normalizeNamespace\n val = namespace + val;\n res[key] = function mappedGetter () {\n if (namespace && !getModuleByNamespace(this.$store, 'mapGetters', namespace)) {\n return\n }\n if ((process.env.NODE_ENV !== 'production') && !(val in this.$store.getters)) {\n console.error((\"[vuex] unknown getter: \" + val));\n return\n }\n return this.$store.getters[val]\n };\n // mark vuex getter for devtools\n res[key].vuex = true;\n });\n return res\n});\n\n/**\n * Reduce the code which written in Vue.js for dispatch the action\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} actions # Object's item can be a function which accept `dispatch` function as the first param, it can accept anthor params. You can dispatch action and do any other things in this function. specially, You need to pass anthor params from the mapped function.\n * @return {Object}\n */\nvar mapActions = normalizeNamespace(function (namespace, actions) {\n var res = {};\n if ((process.env.NODE_ENV !== 'production') && !isValidMap(actions)) {\n console.error('[vuex] mapActions: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(actions).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedAction () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n // get dispatch function from store\n var dispatch = this.$store.dispatch;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapActions', namespace);\n if (!module) {\n return\n }\n dispatch = module.context.dispatch;\n }\n return typeof val === 'function'\n ? val.apply(this, [dispatch].concat(args))\n : dispatch.apply(this.$store, [val].concat(args))\n };\n });\n return res\n});\n\n/**\n * Rebinding namespace param for mapXXX function in special scoped, and return them by simple object\n * @param {String} namespace\n * @return {Object}\n */\nvar createNamespacedHelpers = function (namespace) { return ({\n mapState: mapState.bind(null, namespace),\n mapGetters: mapGetters.bind(null, namespace),\n mapMutations: mapMutations.bind(null, namespace),\n mapActions: mapActions.bind(null, namespace)\n}); };\n\n/**\n * Normalize the map\n * normalizeMap([1, 2, 3]) => [ { key: 1, val: 1 }, { key: 2, val: 2 }, { key: 3, val: 3 } ]\n * normalizeMap({a: 1, b: 2, c: 3}) => [ { key: 'a', val: 1 }, { key: 'b', val: 2 }, { key: 'c', val: 3 } ]\n * @param {Array|Object} map\n * @return {Object}\n */\nfunction normalizeMap (map) {\n if (!isValidMap(map)) {\n return []\n }\n return Array.isArray(map)\n ? map.map(function (key) { return ({ key: key, val: key }); })\n : Object.keys(map).map(function (key) { return ({ key: key, val: map[key] }); })\n}\n\n/**\n * Validate whether given map is valid or not\n * @param {*} map\n * @return {Boolean}\n */\nfunction isValidMap (map) {\n return Array.isArray(map) || isObject(map)\n}\n\n/**\n * Return a function expect two param contains namespace and map. it will normalize the namespace and then the param's function will handle the new namespace and the map.\n * @param {Function} fn\n * @return {Function}\n */\nfunction normalizeNamespace (fn) {\n return function (namespace, map) {\n if (typeof namespace !== 'string') {\n map = namespace;\n namespace = '';\n } else if (namespace.charAt(namespace.length - 1) !== '/') {\n namespace += '/';\n }\n return fn(namespace, map)\n }\n}\n\n/**\n * Search a special module from store by namespace. if module not exist, print error message.\n * @param {Object} store\n * @param {String} helper\n * @param {String} namespace\n * @return {Object}\n */\nfunction getModuleByNamespace (store, helper, namespace) {\n var module = store._modulesNamespaceMap[namespace];\n if ((process.env.NODE_ENV !== 'production') && !module) {\n console.error((\"[vuex] module namespace not found in \" + helper + \"(): \" + namespace));\n }\n return module\n}\n\n// Credits: borrowed code from fcomb/redux-logger\n\nfunction createLogger (ref) {\n if ( ref === void 0 ) ref = {};\n var collapsed = ref.collapsed; if ( collapsed === void 0 ) collapsed = true;\n var filter = ref.filter; if ( filter === void 0 ) filter = function (mutation, stateBefore, stateAfter) { return true; };\n var transformer = ref.transformer; if ( transformer === void 0 ) transformer = function (state) { return state; };\n var mutationTransformer = ref.mutationTransformer; if ( mutationTransformer === void 0 ) mutationTransformer = function (mut) { return mut; };\n var actionFilter = ref.actionFilter; if ( actionFilter === void 0 ) actionFilter = function (action, state) { return true; };\n var actionTransformer = ref.actionTransformer; if ( actionTransformer === void 0 ) actionTransformer = function (act) { return act; };\n var logMutations = ref.logMutations; if ( logMutations === void 0 ) logMutations = true;\n var logActions = ref.logActions; if ( logActions === void 0 ) logActions = true;\n var logger = ref.logger; if ( logger === void 0 ) logger = console;\n\n return function (store) {\n var prevState = deepCopy(store.state);\n\n if (typeof logger === 'undefined') {\n return\n }\n\n if (logMutations) {\n store.subscribe(function (mutation, state) {\n var nextState = deepCopy(state);\n\n if (filter(mutation, prevState, nextState)) {\n var formattedTime = getFormattedTime();\n var formattedMutation = mutationTransformer(mutation);\n var message = \"mutation \" + (mutation.type) + formattedTime;\n\n startMessage(logger, message, collapsed);\n logger.log('%c prev state', 'color: #9E9E9E; font-weight: bold', transformer(prevState));\n logger.log('%c mutation', 'color: #03A9F4; font-weight: bold', formattedMutation);\n logger.log('%c next state', 'color: #4CAF50; font-weight: bold', transformer(nextState));\n endMessage(logger);\n }\n\n prevState = nextState;\n });\n }\n\n if (logActions) {\n store.subscribeAction(function (action, state) {\n if (actionFilter(action, state)) {\n var formattedTime = getFormattedTime();\n var formattedAction = actionTransformer(action);\n var message = \"action \" + (action.type) + formattedTime;\n\n startMessage(logger, message, collapsed);\n logger.log('%c action', 'color: #03A9F4; font-weight: bold', formattedAction);\n endMessage(logger);\n }\n });\n }\n }\n}\n\nfunction startMessage (logger, message, collapsed) {\n var startMessage = collapsed\n ? logger.groupCollapsed\n : logger.group;\n\n // render\n try {\n startMessage.call(logger, message);\n } catch (e) {\n logger.log(message);\n }\n}\n\nfunction endMessage (logger) {\n try {\n logger.groupEnd();\n } catch (e) {\n logger.log('—— log end ——');\n }\n}\n\nfunction getFormattedTime () {\n var time = new Date();\n return (\" @ \" + (pad(time.getHours(), 2)) + \":\" + (pad(time.getMinutes(), 2)) + \":\" + (pad(time.getSeconds(), 2)) + \".\" + (pad(time.getMilliseconds(), 3)))\n}\n\nfunction repeat (str, times) {\n return (new Array(times + 1)).join(str)\n}\n\nfunction pad (num, maxLength) {\n return repeat('0', maxLength - num.toString().length) + num\n}\n\nvar index_cjs = {\n Store: Store,\n install: install,\n version: '3.6.2',\n mapState: mapState,\n mapMutations: mapMutations,\n mapGetters: mapGetters,\n mapActions: mapActions,\n createNamespacedHelpers: createNamespacedHelpers,\n createLogger: createLogger\n};\n\nmodule.exports = index_cjs;\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:06:33\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/popup.js\n */\nexport default {\n // popup组件\n popup: {\n show: false,\n overlay: true,\n mode: 'bottom',\n duration: 300,\n closeable: false,\n overlayStyle: () => {},\n closeOnClickOverlay: true,\n zIndex: 10075,\n safeAreaInsetBottom: true,\n safeAreaInsetTop: false,\n closeIconPos: 'top-right',\n round: 0,\n zoom: true,\n bgColor: '',\n overlayOpacity: 0.5\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:02:34\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/radio.js\n */\nexport default {\n // radio组件\n radio: {\n name: '',\n shape: '',\n disabled: '',\n labelDisabled: '',\n activeColor: '',\n inactiveColor: '',\n iconSize: '',\n labelSize: '',\n label: '',\n labelColor: '',\n size: '',\n iconColor: '',\n placement: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:03:12\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/radioGroup.js\n */\nexport default {\n // radio-group组件\n radioGroup: {\n value: '',\n disabled: false,\n shape: 'circle',\n activeColor: '#2979ff',\n inactiveColor: '#c8c9cc',\n name: '',\n size: 18,\n placement: 'row',\n label: '',\n labelColor: '#303133',\n labelSize: 14,\n labelDisabled: false,\n iconColor: '#ffffff',\n iconSize: 12,\n borderBottom: false,\n iconPlacement: 'left'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:05:09\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/rate.js\n */\nexport default {\n // rate组件\n rate: {\n value: 1,\n count: 5,\n disabled: false,\n size: 18,\n inactiveColor: '#b2b2b2',\n activeColor: '#FA3534',\n gutter: 4,\n minCount: 1,\n allowHalf: false,\n activeIcon: 'star-fill',\n inactiveIcon: 'star',\n touchable: true\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:18:41\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/readMore.js\n */\nexport default {\n // readMore\n readMore: {\n showHeight: 400,\n toggle: false,\n closeText: '展开阅读全文',\n openText: '收起',\n color: '#2979ff',\n fontSize: 14,\n textIndent: '2em',\n name: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:18:58\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/row.js\n */\nexport default {\n // row\n row: {\n gutter: 0,\n justify: 'start',\n align: 'center'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:19:13\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/rowNotice.js\n */\nexport default {\n // rowNotice\n rowNotice: {\n text: '',\n icon: 'volume',\n mode: '',\n color: '#f9ae3d',\n bgColor: '#fdf6ec',\n fontSize: 14,\n speed: 80\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:19:28\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/scrollList.js\n */\nexport default {\n // scrollList\n scrollList: {\n indicatorWidth: 50,\n indicatorBarWidth: 20,\n indicator: true,\n indicatorColor: '#f2f2f2',\n indicatorActiveColor: '#3c9cff',\n indicatorStyle: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:19:45\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/search.js\n */\nexport default {\n // search\n search: {\n shape: 'round',\n bgColor: '#f2f2f2',\n placeholder: '请输入关键字',\n clearabled: true,\n focus: false,\n showAction: true,\n actionStyle: () => ({}),\n actionText: '搜索',\n inputAlign: 'left',\n inputStyle: () => ({}),\n disabled: false,\n borderColor: 'transparent',\n searchIconColor: '#909399',\n searchIconSize: 22,\n color: '#606266',\n placeholderColor: '#909399',\n searchIcon: 'search',\n margin: '0',\n animation: false,\n value: '',\n maxlength: '-1',\n height: 32,\n label: null\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:07:33\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/section.js\n */\nexport default {\n // u-section组件\n section: {\n title: '',\n subTitle: '更多',\n right: true,\n fontSize: 15,\n bold: true,\n color: '#303133',\n subColor: '#909399',\n showLine: true,\n lineColor: '',\n arrow: true\n }\n}\n","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\nimport app from \"./app\";\nimport hotWords from \"./hotWords\";\nimport indexData from './indexData.js'\nexport default {\n app,\n hotWords,\n\tindexData\n};\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:20:14\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/skeleton.js\n */\nexport default {\n // skeleton\n skeleton: {\n loading: true,\n animate: true,\n rows: 0,\n rowsWidth: '100%',\n rowsHeight: 18,\n title: true,\n titleWidth: '50%',\n titleHeight: 18,\n avatar: false,\n avatarSize: 32,\n avatarShape: 'circle'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:08:25\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/slider.js\n */\nexport default {\n // slider组件\n slider: {\n value: 0,\n blockSize: 18,\n min: 0,\n max: 100,\n step: 1,\n activeColor: '#2979ff',\n inactiveColor: '#c0c4cc',\n blockColor: '#ffffff',\n showValue: false,\n\t\tdisabled:false,\n blockStyle: () => {}\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:20:39\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/statusBar.js\n */\nexport default {\n // statusBar\n statusBar: {\n bgColor: 'transparent'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:12:37\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/steps.js\n */\nexport default {\n // steps组件\n steps: {\n direction: 'row',\n current: 0,\n activeColor: '#3c9cff',\n inactiveColor: '#969799',\n activeIcon: '',\n inactiveIcon: '',\n dot: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:12:55\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/stepsItem.js\n */\nexport default {\n // steps-item组件\n stepsItem: {\n title: '',\n desc: '',\n iconSize: 17,\n error: false\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:01:30\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/sticky.js\n */\nexport default {\n // sticky组件\n sticky: {\n offsetTop: 0,\n customNavHeight: 0,\n disabled: false,\n bgColor: 'transparent',\n zIndex: '',\n index: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:12:20\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/subsection.js\n */\nexport default {\n // subsection组件\n subsection: {\n list: [],\n current: 0,\n activeColor: '#3c9cff',\n inactiveColor: '#303133',\n mode: 'button',\n fontSize: 12,\n bold: true,\n bgColor: '#eeeeef',\n\t\tkeyName: 'name'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:00:42\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/swipeAction.js\n */\nexport default {\n // swipe-action组件\n swipeAction: {\n autoClose: true\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:01:13\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/swipeActionItem.js\n */\nexport default {\n // swipeActionItem 组件\n swipeActionItem: {\n show: false,\n name: '',\n disabled: false,\n threshold: 20,\n autoClose: true,\n options: [],\n duration: 300\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:21:38\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/swiper.js\n */\nexport default {\n // swiper 组件\n swiper: {\n list: () => [],\n indicator: false,\n indicatorActiveColor: '#FFFFFF',\n indicatorInactiveColor: 'rgba(255, 255, 255, 0.35)',\n indicatorStyle: '',\n indicatorMode: 'line',\n autoplay: true,\n current: 0,\n currentItemId: '',\n interval: 3000,\n duration: 300,\n circular: false,\n previousMargin: 0,\n nextMargin: 0,\n acceleration: false,\n displayMultipleItems: 1,\n easingFunction: 'default',\n keyName: 'url',\n imgMode: 'aspectFill',\n height: 130,\n bgColor: '#f3f4f6',\n radius: 4,\n loading: false,\n showTitle: false\n }\n\n}\n","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\nimport {\n\tgetUserInfo\n} from \"../../api/user.js\";\nimport {\n\tLOGIN_STATUS,\n\tUID\n} from '../../config/cache';\nimport Cache from '../../utils/cache';\nimport {\n\tUSER_INFO\n} from '../../config/cache';\n\nconst state = {\n\ttoken: Cache.get(LOGIN_STATUS) || false,\n\tbackgroundColor: \"#fff\",\n\tuserInfo: {},\n\tuid: Cache.get(UID) || 0,\n\thomeActive: false,\n\tphoneStatus:true,\n\tpageFooter:uni.getStorageSync('pageFoot') || {}\n};\n\nconst mutations = {\n\tSETPHONESTATUS(state,val){\n\t\tstate.phoneStatus = val;\n\t},\n\tLOGIN(state, opt) {\n\t\tstate.token = opt.token;\n\t\tCache.set(LOGIN_STATUS, opt.token, opt.time);\n\t},\n\tSETUID(state,val){\n\t\tstate.uid = val;\n\t\tCache.set(UID, val);\n\t},\n\tUPDATE_LOGIN(state, token) {\n\t\tstate.token = token;\n\t},\n\tLOGOUT(state) {\n\t\tstate.token = false;\n\t\tstate.uid = 0\n\t\tCache.clear(LOGIN_STATUS);\n\t\tCache.clear(UID);\n\t},\n\tBACKGROUND_COLOR(state, color) {\n\t\tstate.color = color;\n\t\tdocument.body.style.backgroundColor = color;\n\t},\n\tUPDATE_USERINFO(state, userInfo) {\n\t\tstate.userInfo = userInfo;\n\t\tCache.set(USER_INFO, userInfo);\n\t},\n\tOPEN_HOME(state) {\n\t\tstate.homeActive = true;\n\t},\n\tCLOSE_HOME(state) {\n\t\tstate.homeActive = false;\n\t},\n\tFOOT_UPLOAD(state,data){\n\t\tstate.pageFooter = data\n\t}\n};\n\nconst actions = {\n\tUSERINFO({\n\t\tstate,\n\t\tcommit\n\t}, force) {\n\t\tif (state.userInfo !== null && !force)\n\t\t\treturn Promise.resolve(state.userInfo);\n\t\telse\n\t\t\treturn new Promise(reslove => {\n\t\t\t\tgetUserInfo().then(res => {\n\t\t\t\t\tcommit(\"UPDATE_USERINFO\", res.data);\n\t\t\t\t\tCache.set(USER_INFO, res.data);\n\t\t\t\t\treslove(res.data);\n\t\t\t\t});\n\t\t\t}).catch(() => {\n\n\t\t\t});\n\t}\n};\n\nexport default {\n\tstate,\n\tmutations,\n\tactions\n};\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:22:07\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/swiperIndicator.js\n */\nexport default {\n // swiperIndicator 组件\n swiperIndicator: {\n length: 0,\n current: 0,\n indicatorActiveColor: '',\n indicatorInactiveColor: '',\n\t\tindicatorMode: 'line'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:22:24\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/switch.js\n */\nexport default {\n // switch\n switch: {\n loading: false,\n disabled: false,\n size: 25,\n activeColor: '#2979ff',\n inactiveColor: '#ffffff',\n value: false,\n activeValue: true,\n inactiveValue: false,\n asyncChange: false,\n space: 0\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:22:40\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/tabbar.js\n */\nexport default {\n // tabbar\n tabbar: {\n value: null,\n safeAreaInsetBottom: true,\n border: true,\n zIndex: 1,\n activeColor: '#1989fa',\n inactiveColor: '#7d7e80',\n fixed: true,\n placeholder: true\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:22:55\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/tabbarItem.js\n */\nexport default {\n //\n tabbarItem: {\n name: null,\n icon: '',\n badge: null,\n dot: false,\n text: '',\n badgeStyle: 'top: 6px;right:2px;'\n }\n}\n","/*\r\n * @Author : LQ\r\n * @Description :\r\n * @version : 1.0\r\n * @Date : 2021-08-20 16:44:21\r\n * @LastAuthor : LQ\r\n * @lastTime : 2021-08-20 17:23:14\r\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/tabs.js\r\n */\r\nexport default {\r\n //\r\n tabs: {\r\n duration: 300,\r\n list: () => [],\r\n lineColor: '#3c9cff',\r\n activeStyle: () => ({\r\n color: '#303133'\r\n }),\r\n inactiveStyle: () => ({\r\n color: '#606266'\r\n }),\r\n lineWidth: 20,\r\n lineHeight: 3,\r\n lineBgSize: 'cover',\r\n itemStyle: () => ({\r\n height: '44px'\r\n }),\r\n scrollable: true,\r\n\t\tcurrent: 0,\r\n\t\tkeyName: 'name'\r\n }\r\n}\r\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:23:37\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/tag.js\n */\nexport default {\n // tag 组件\n tag: {\n type: 'primary',\n disabled: false,\n size: 'medium',\n shape: 'square',\n text: '',\n bgColor: '',\n color: '',\n borderColor: '',\n closeColor: '#C6C7CB',\n name: '',\n plainFill: false,\n plain: false,\n closable: false,\n show: true,\n icon: ''\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:23:58\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/text.js\n */\nexport default {\n // text 组件\n text: {\n type: '',\n show: true,\n text: '',\n prefixIcon: '',\n suffixIcon: '',\n mode: '',\n href: '',\n format: '',\n call: false,\n openType: '',\n bold: false,\n block: false,\n lines: '',\n color: '#303133',\n size: 15,\n iconStyle: () => ({\n fontSize: '15px'\n }),\n decoration: 'none',\n margin: 0,\n lineHeight: '',\n align: 'left',\n wordWrap: 'normal'\n }\n\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:24:32\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/textarea.js\n */\nexport default {\n\t// textarea 组件\n\ttextarea: {\n\t\tvalue: '',\n\t\tplaceholder: '',\n\t\tplaceholderClass: 'textarea-placeholder',\n\t\tplaceholderStyle: 'color: #c0c4cc',\n\t\theight: 70,\n\t\tconfirmType: 'done',\n\t\tdisabled: false,\n\t\tcount: false,\n\t\tfocus: false,\n\t\tautoHeight: false,\n\t\tfixed: false,\n\t\tcursorSpacing: 0,\n\t\tcursor: '',\n\t\tshowConfirmBar: true,\n\t\tselectionStart: -1,\n\t\tselectionEnd: -1,\n\t\tadjustPosition: true,\n\t\tdisableDefaultPadding: false,\n\t\tholdKeyboard: false,\n\t\tmaxlength: 140,\n\t\tborder: 'surround',\n\t\tformatter: null\n\t}\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:07:07\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/toast.js\n */\nexport default {\n // toast组件\n toast: {\n zIndex: 10090,\n loading: false,\n text: '',\n icon: '',\n type: '',\n loadingMode: '',\n show: '',\n overlay: false,\n position: 'center',\n params: () => {},\n duration: 2000,\n isTab: false,\n url: '',\n callback: null,\n back: false\n }\n\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:24:55\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/toolbar.js\n */\nexport default {\n // toolbar 组件\n toolbar: {\n show: true,\n cancelText: '取消',\n confirmText: '确认',\n cancelColor: '#909193',\n confirmColor: '#3c9cff',\n title: ''\n }\n\n}\n","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\nimport request from \"@/utils/request.js\";\n\n/**\n * 获取用户信息\n * \n */\nexport function getUserInfo() {\n\treturn request.get('user');\n}\n\n/**\n * 设置用户分享\n * \n */\nexport function userShare() {\n\treturn request.post('user/share');\n}\n\n/**\n * h5用户登录\n * @param data object 用户账号密码\n */\nexport function loginH5(data) {\n\treturn request.post(\"login\", data, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * h5用户手机号登录\n * @param data object 用户手机号 也只能\n */\nexport function loginMobile(data) {\n\treturn request.post(\"login/mobile\", data, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 验证码key\n */\nexport function getCodeApi() {\n\treturn request.get(\"verify_code\", {}, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * h5用户发送验证码\n * @param data object 用户手机号\n */\nexport function registerVerify(data) {\n\treturn request.post(\"register/verify\", data, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * h5用户手机号注册\n * @param data object 用户手机号 验证码 密码\n */\nexport function register(data) {\n\treturn request.post(\"register\", data, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 用户手机号修改密码\n * @param data object 用户手机号 验证码 密码\n */\nexport function registerReset(data) {\n\treturn request.post(\"register/reset\", data, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 获取用户中心菜单\n *\n */\nexport function getMenuList() {\n\treturn request.get(\"menu/user\", {}, {\n\t\tnoAuth: true\n\t});\n}\n\n/*\n * 签到用户信息\n * */\nexport function postSignUser(sign) {\n\treturn request.post(\"sign/user\", sign);\n}\n\n/**\n * 获取签到配置\n * \n */\nexport function getSignConfig() {\n\treturn request.get('sign/config')\n}\n\n/**\n * 获取签到列表\n * @param object data\n */\nexport function getSignList(data) {\n\treturn request.get('sign/list', data);\n}\n\n/**\n * 用户签到\n */\nexport function setSignIntegral() {\n\treturn request.post('sign/integral')\n}\n\n/**\n * 签到列表(年月)\n * @param object data\n * \n */\nexport function getSignMonthList(data) {\n\treturn request.get('sign/month', data)\n}\n\n/**\n * 活动状态\n * \n */\nexport function userActivity() {\n\treturn request.get('user/activity');\n}\n\n/*\n * 资金明细(types|0=全部,1=消费,2=充值,3=返佣,4=提现)\n * */\nexport function getCommissionInfo(q, types) {\n\treturn request.get(\"spread/commission/\" + types, q);\n}\n\n/*\n * 积分记录\n * */\nexport function getIntegralList(q) {\n\treturn request.get(\"integral/list\", q);\n}\n\n/**\n * 获取分销海报图片\n * \n */\nexport function spreadBanner() {\n\n\n\n\n\n\n\treturn request.get('spread/banner', {\n\t\ttype: 1\n\t});\n\n\n}\n\n/**\n *\n * 获取推广用户一级和二级\n * @param object data\n */\nexport function spreadPeople(data) {\n\treturn request.post('spread/people', data);\n}\n\n/**\n * \n * 推广佣金/提现总和\n * @param int type\n */\nexport function spreadCount(type) {\n\treturn request.get('spread/count/' + type);\n}\n\n/*\n * 推广数据\n * */\nexport function getSpreadInfo() {\n\treturn request.get(\"commission\");\n}\n\n\n/**\n * \n * 推广订单\n * @param object data\n */\nexport function spreadOrder(data) {\n\treturn request.post('spread/order', data);\n}\n\n/**\n * \n * 事业部/推广订单\n * @param object data\n */\nexport function divisionOrder(data) {\n\treturn request.post('division/order', data);\n}\n\n/*\n * 获取推广人排行\n * */\nexport function getRankList(q) {\n\treturn request.get(\"rank\", q);\n}\n\n/*\n * 获取佣金排名\n * */\nexport function getBrokerageRank(q) {\n\treturn request.get(\"brokerage_rank\", q);\n}\n\n/**\n * 提现申请\n * @param object data\n */\nexport function extractCash(data) {\n\treturn request.post('extract/cash', data)\n}\n\n/**\n * 提现银行/提现最低金额\n * \n */\nexport function extractBank() {\n\treturn request.get('extract/bank');\n}\n\n/**\n * 会员等级列表\n * \n */\nexport function userLevelGrade() {\n\treturn request.get('user/level/grade');\n}\n\n/**\n * 获取某个等级任务\n * @param int id 任务id\n */\nexport function userLevelTask(id) {\n\treturn request.get('user/level/task/' + id);\n}\n\n\n/**\n * 检查用户是否可以成为会员\n * \n */\nexport function userLevelDetection() {\n\treturn request.get('user/level/detection');\n}\n\n/**\n * \n * 地址列表\n * @param object data\n */\nexport function getAddressList(data) {\n\treturn request.get('address/list', data);\n}\n\n/**\n * 设置默认地址\n * @param int id\n */\nexport function setAddressDefault(id) {\n\treturn request.post('address/default/set', {\n\t\tid: id\n\t})\n}\n\n/**\n * 修改 添加地址\n * @param object data\n */\nexport function editAddress(data) {\n\treturn request.post('address/edit', data);\n}\n\n/**\n * 删除地址\n * @param int id\n * \n */\nexport function delAddress(id) {\n\treturn request.post('address/del', {\n\t\tid: id\n\t})\n}\n\n/**\n * 获取单个地址\n * @param int id \n */\nexport function getAddressDetail(id) {\n\treturn request.get('address/detail/' + id);\n}\n\n/**\n * 修改用户信息\n * @param object\n */\nexport function userEdit(data) {\n\treturn request.post('user/edit', data);\n}\n\n/*\n * 退出登录\n * */\nexport function getLogout() {\n\treturn request.get(\"logout\");\n}\n/**\n * 小程序充值\n * \n */\nexport function rechargeRoutine(data) {\n\treturn request.post('recharge/routine', data)\n}\n/*\n * 公众号充值\n * */\nexport function rechargeWechat(data) {\n\treturn request.post(\"recharge/wechat\", data);\n}\n/**\n * 获取默认地址\n * \n */\nexport function getAddressDefault() {\n\treturn request.get('address/default');\n}\n\n/**\n * 充值金额选择\n */\nexport function getRechargeApi() {\n\treturn request.get(\"recharge/index\");\n}\n\n/**\n * 登陆记录\n */\nexport function setVisit(data) {\n\treturn request.post('user/set_visit', {\n\t\t...data\n\t}, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 客服列表\n */\nexport function serviceList() {\n\treturn request.get(\"user/service/list\");\n}\n/**\n * 客服详情\n */\nexport function getChatRecord(data) {\n\treturn request.get(\"v2/user/service/record\", data);\n}\n\n/**\n * 静默绑定推广人\n * @param {Object} puid\n */\nexport function spread(puid) {\n\treturn request.post(\"user/spread\", puid);\n}\n\n/**\n * 会员详情\n */\nexport function getlevelInfo() {\n\treturn request.get(\"user/level/info\");\n}\n\n/**\n * 会员经验列表\n */\nexport function getlevelExpList(data) {\n\treturn request.get(\"user/level/expList\", data);\n}\n\n/**\n * 修改用户信息\n * @param {Object} data\n */\nexport function updateUserInfo(data) {\n\treturn request.post('v2/user/user_update', data);\n}\n\n/**\n * 微信直接手机号登录\n */\nexport function phoneWxSilenceAuth(data) {\n\treturn request.post('v2/phone_wx_silence_auth', data, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 小程序直接手机号登录\n */\nexport function phoneSilenceAuth(data) {\n\treturn request.post('v2/phone_silence_auth', data, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 用户发票列表\n * @param {Object} data\n */\nexport function invoiceList(data) {\n\treturn request.get('v2/invoice', data, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 用户添加|修改发票\n * @param {Object} data\n */\nexport function invoiceSave(data) {\n\treturn request.post('v2/invoice/save', data, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 用户删除发票\n * @param {Object} data\n */\nexport function invoiceDelete(id) {\n\treturn request.get('v2/invoice/del/' + id);\n}\n\n/**\n * 获取用户默认发票\n * @param {Object} type\n */\nexport function invoiceDefault(type) {\n\treturn request.get('v2/invoice/get_default/' + type);\n}\n\n/**\n * 用户单个发票详情\n * @param {Object} id\n */\nexport function invoiceDetail(id) {\n\treturn request.get('v2/invoice/detail/' + id);\n}\n\n/**\n * 订单申请开票\n * @param {Object} id\n */\nexport function invoiceOrder(data) {\n\treturn request.post('v2/order/make_up_invoice', data);\n}\n\n/**\n * 订单详情中申请开票\n * @param {Object} id\n */\nexport function makeUpinvoice(data) {\n\treturn request.post('v2/order/make_up_invoice', data);\n}\n\n/**\n * 会员卡主界面\n */\nexport function memberCard() {\n\treturn request.get('user/member/card/index');\n}\n\n/**\n * 卡密领取会员卡\n * @param {Object} data\n */\nexport function memberCardDraw(data) {\n\treturn request.post('user/member/card/draw', data);\n}\n\n/**\n * 购买会员卡\n * @param {Object} data\n */\nexport function memberCardCreate(data) {\n\treturn request.post('user/member/card/create', data);\n}\n\n/**\n * 会员优惠券\n */\nexport function memberCouponsList() {\n\treturn request.get('user/member/coupons/list');\n}\n\n/**\n * svip推荐商品\n * @param {Object} id\n */\nexport function groomList(id, data) {\n\treturn request.get(`groom/list/${id}`, data);\n}\n\n/**\n * 付费会员结束\n * @param {Object} data\n */\nexport function memberOverdueTime(data) {\n\treturn request.get('user/member/overdue/time', data);\n}\n\n/**\n * 新版分享海报信息获取\n * \n */\nexport function spreadMsg() {\n\treturn request.get('user/spread_info');\n}\n\n\n/**\n * 图片链接转base64\n * \n */\nexport function imgToBase(data) {\n\treturn request.post('image_base64', data);\n}\n\n/**\n * 获取小程序二维码\n * \n */\nexport function routineCode(data) {\n\treturn request.get('user/routine_code', data);\n}\n\n/**\n * 消息中心\n */\nexport function serviceRecord(data) {\n\treturn request.get('user/record', data);\n}\n\n/**\n * 消息中心-站内信列表\n */\nexport function messageSystem(data) {\n\treturn request.get('user/message_system/list', data);\n}\n\n/**\n * 消息中心-站内信列表详情\n */\nexport function getMsgDetails(id) {\n\treturn request.get('user/message_system/detail/' + id);\n}\n\n/**\n * 消息中心-消息已读/删除\n */\nexport function msgLookDel(data) {\n\treturn request.get('user/message_system/edit_message', data);\n}\n\n/**\n * 苹果账号登录\n * @param {Object} data\n */\nexport function appleLogin(data) {\n\treturn request.post('apple_login', data, {\n\t\tnoAuth: true\n\t});\n}\n\n/*\n * 获取隐私协议\n * */\nexport function getUserAgreement(type) {\n\treturn request.get(`get_agreement/${type}`, {}, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 获取分销等级列表\n * @param int id 任务id\n */\nexport function agentLevelList() {\n\treturn request.get('v2/agent/level_list');\n}\n\n/**\n * 获取分销任务列表\n * @param int id 任务id\n */\nexport function agentLevelTaskList(id) {\n\treturn request.get('v2/agent/level_task_list?id=' + id);\n}\n\n/**\n * 获取代付详情\n * @param int id 任务id\n */\nexport function friendDetail(id) {\n\treturn request.get('order/friend_detail?order_id=' + id);\n}\n\n/**\n * 员工列表\n * @param object data\n * \n */\nexport function clerkPeople(data) {\n\treturn request.get('agent/get_staff_list', data)\n}\n\n/**\n * \n * 员工比例\n * @param object data\n */\nexport function setClerkPercent(data) {\n\treturn request.post('agent/set_staff_percent', data);\n}\n\n/**\n * \n * 删除员工\n * @param object data\n */\nexport function delClerkPercent(id) {\n\treturn request.get(`agent/del_staff/${id}`);\n}\n\n/**\n * 注销用户\n * @param int id\n * \n */\nexport function cancelUser() {\n\treturn request.get('user_cancel');\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:25:14\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/tooltip.js\n */\nexport default {\n // tooltip 组件\n tooltip: {\n text: '',\n copyText: '',\n size: 14,\n color: '#606266',\n bgColor: 'transparent',\n direction: 'top',\n zIndex: 10071,\n showCopy: true,\n buttons: () => [],\n overlay: true,\n showToast: true\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:59:00\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/transition.js\n */\nexport default {\n // transition动画组件的props\n transition: {\n show: false,\n mode: 'fade',\n duration: '300',\n timingFunction: 'ease-out'\n }\n}\n","/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:09:50\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/upload.js\n */\nexport default {\n\t// upload组件\n\tupload: {\n\t\taccept: 'image',\n\t\tcapture: () => ['album', 'camera'],\n\t\tcompressed: true,\n\t\tcamera: 'back',\n\t\tmaxDuration: 60,\n\t\tuploadIcon: 'camera-fill',\n\t\tuploadIconColor: '#D3D4D6',\n\t\tuseBeforeRead: false,\n\t\tpreviewFullImage: true,\n\t\tmaxCount: 52,\n\t\tdisabled: false,\n\t\timageMode: 'aspectFill',\n\t\tname: '',\n\t\tsizeType: () => ['original', 'compressed'],\n\t\tmultiple: false,\n\t\tdeletable: true,\n\t\tmaxSize: Number.MAX_VALUE,\n\t\tfileList: () => [],\n\t\tuploadText: '',\n\t\twidth: 80,\n\t\theight: 80,\n\t\tpreviewImage: true\n\t}\n}\n","// uniapp在H5中各API的z-index值如下:\r\n/**\r\n * actionsheet: 999\r\n * modal: 999\r\n * navigate: 998\r\n * tabbar: 998\r\n * toast: 999\r\n */\r\n\r\nexport default {\r\n toast: 10090,\r\n noNetwork: 10080,\r\n // popup包含popup,actionsheet,keyboard,picker的值\r\n popup: 10075,\r\n mask: 10070,\r\n navbar: 980,\r\n topTips: 975,\r\n sticky: 970,\r\n indexListSticky: 965\r\n}\r\n","/**\n * 注意:\n * 此部分内容,在vue-cli模式下,需要在vue.config.js加入如下内容才有效:\n * module.exports = {\n * transpileDependencies: ['uview-v2']\n * }\n */\n\nlet platform = 'none'\n\n\n\n\n\n\nplatform = 'vue2'\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nplatform = 'weixin'\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nplatform = 'mp'\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nexport default platform\n","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\nimport {\n\tHTTP_REQUEST_URL,\n\tHEADER,\n\tTOKENNAME\n} from '@/config/app';\nimport {\n\ttoLogin,\n\tcheckLogin\n} from '../libs/login';\nimport store from '../store';\nimport i18n from './lang.js';\n\n/**\n * 发送请求\n */\nfunction baseRequest(url, method, data, {\n\tnoAuth = false,\n\tnoVerify = false\n}) {\n\tlet Url = HTTP_REQUEST_URL,\n\t\theader = HEADER;\n\n\tif (!noAuth) {\n\t\t//登录过期自动登录\n\t\tif (!store.state.app.token && !checkLogin()) {\n\t\t\ttoLogin();\n\t\t\treturn Promise.reject({\n\t\t\t\tmsg: i18n.t(`未登录`)\n\t\t\t});\n\t\t}\n\t}\n\tif (store.state.app.token) header[TOKENNAME] = 'Bearer ' + store.state.app.token;\n\n\treturn new Promise((reslove, reject) => {\n\t\theader['Cb-lang'] = uni.getStorageSync('locale') ? uni.getStorageSync('locale') :'zh_cn'\n\t\tuni.request({\n\t\t\turl: Url + '/api/' + url,\n\t\t\tmethod: method || 'GET',\n\t\t\theader: header,\n\t\t\tdata: data || {},\n\t\t\tsuccess: (res) => {\n\t\t\t\tif (noVerify)\n\t\t\t\t\treslove(res.data, res);\n\t\t\t\telse if (res.data.status == 200)\n\t\t\t\t\treslove(res.data, res);\n\t\t\t\telse if ([110002, 110003, 110004].indexOf(res.data.status) !== -1) {\n\t\t\t\t\ttoLogin();\n\t\t\t\t\treject(res.data);\n\t\t\t\t} else if (res.data.status == 100103) {\n\t\t\t\t\tuni.showModal({\n\t\t\t\t\t\ttitle: i18n.t(`提示`),\n\t\t\t\t\t\tcontent: res.data.msg,\n\t\t\t\t\t\tshowCancel: false,\n\t\t\t\t\t\tconfirmText: i18n.t(`我知道了`)\n\t\t\t\t\t});\n\t\t\t\t} else\n\t\t\t\t\treject(res.data.msg || i18n.t(`系统错误`));\n\t\t\t},\n\t\t\tfail: (msg) => {\n\t\t\t\tlet data = {\n\t\t\t\t\tmag: i18n.t(`请求失败`),\n\t\t\t\t\tstatus: 1 //1没网\n\t\t\t\t}\n\n\n\n\n\t\t\t\treject(i18n.t(`请求失败`));\n\n\t\t\t}\n\t\t})\n\t});\n}\n\nconst request = {};\n\n['options', 'get', 'post', 'put', 'head', 'delete', 'trace', 'connect'].forEach((method) => {\n\trequest[method] = (api, data, opt) => baseRequest(api, method, data, opt || {})\n});\n\n\n\nexport default request;\n","module.exports = {\n\t// 小程序配置\n\n\t// 请求域名 格式: https://您的域名\n\tHTTP_REQUEST_URL: `http://v4.crmeb.net`,\n\n\t\n\t// H5配置\n\n\n\n\n\n\t// 以下配置在不做二开的前提下,不需要做任何的修改\n\tHEADER: {\n\t\t'content-type': 'application/json',\n\n\n\n\n\t\t'Form-type': 'routine',\n\n\n\n\n\t},\n\t// 回话密钥名称 请勿修改此配置\n\tTOKENNAME: 'Authori-zation',\n\t// 缓存时间 0 永久\n\tEXPIRE: 0,\n\t//分页最多显示条数\n\tLIMIT: 10\n}\n","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\nimport request from \"@/utils/request.js\";\n\n/**\n * 获取产品详情\n * @param int id\n * \n */\nexport function getProductDetail(id) {\n\treturn request.get('product/detail/' + id, {}, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 产品分享二维码 推广员\n * @param int id\n */\n\n\n\n\n\n\nexport function getProductCode(id) {\n\treturn request.get('product/code/' + id, {\n\t\tuser_type: 'routine'\n\t});\n}\n\n\n/**\n * 添加收藏\n * @param int id\n * @param string category product=普通产品,product_seckill=秒杀产品\n */\nexport function collectAdd(id, category) {\n\treturn request.post('collect/add', {\n\t\tid: id,\n\t\t'product': category === undefined ? 'product' : category\n\t});\n}\n\n/**\n * 删除收藏产品\n * @param int id\n * @param string category product=普通产品,product_seckill=秒杀产品\n */\nexport function collectDel(id, category) {\n\treturn request.post('collect/del', {\n\t\tid: id,\n\t\tcategory: category === undefined ? 'product' : category\n\t});\n}\n\n/**\n * 购车添加\n * \n */\nexport function postCartAdd(data) {\n\treturn request.post('cart/add', data);\n}\n\n/**\n * 获取分类列表\n * \n */\nexport function getCategoryList() {\n\treturn request.get('category', {}, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 获取产品列表\n * @param object data\n */\nexport function getProductslist(data) {\n\treturn request.get('products', data, {\n\t\tnoAuth: true\n\t});\n}\n\n\n\n/**\n * 获取推荐产品\n * \n */\nexport function getProductHot(page, limit) {\n\treturn request.get(\"product/hot\", {\n\t\tpage: page === undefined ? 1 : page,\n\t\tlimit: limit === undefined ? 4 : limit\n\t}, {\n\t\tnoAuth: true\n\t});\n}\n/**\n * 批量收藏\n * \n * @param object id 产品编号 join(',') 切割成字符串\n * @param string category \n */\nexport function collectAll(id, category) {\n\treturn request.post('collect/all', {\n\t\tid: id,\n\t\tcategory: category === undefined ? 'product' : category\n\t});\n}\n\n/**\n * 首页产品的轮播图和产品信息\n * @param int type \n * \n */\nexport function getGroomList(type, data) {\n\treturn request.get('groom/list/' + type, data, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 获取收藏列表\n * @param object data\n */\nexport function getCollectUserList(data) {\n\treturn request.get('collect/user', data)\n}\n\n/**\n * 获取产品评论\n * @param int id\n * @param object data\n * \n */\nexport function getReplyList(id, data) {\n\treturn request.get('reply/list/' + id, data)\n}\n\n/**\n * 产品评价数量和好评度\n * @param int id\n */\nexport function getReplyConfig(id) {\n\treturn request.get('reply/config/' + id);\n}\n\n/**\n * 获取搜索关键字获取\n * \n */\nexport function getSearchKeyword() {\n\treturn request.get('search/keyword', {}, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 门店列表\n * @returns {*}\n */\nexport function storeListApi(data) {\n\treturn request.get(\"store_list\", data);\n}\n\n/**\n * 套餐列表\n * @param int id\n * \n */\nexport function storeDiscountsList(id) {\n\treturn request.get('store_discounts/list/' + id, {}, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 购车添加、减少、修改\n * \n */\nexport function postCartNum(data) {\n\treturn request.post('v2/set_cart_num', data);\n}\n/**\n * 代理商申请\n * \n */\nexport function create(data) {\n\treturn request.post(`agent/apply/${data.id}`, data);\n}\n\n/**\n * 代理商规则\n * @param object data\n */\nexport function getAgentAgreement(data) {\n\treturn request.get('agent/get_agent_agreement', {}, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * h5用户发送验证码\n * @param data object 用户手机号\n */\nexport function registerVerify(data) {\n\treturn request.post(\"register/verify\", data, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 验证码key\n */\nexport function getCodeApi() {\n\treturn request.get(\"verify_code\", {}, {\n\t\tnoAuth: true\n\t});\n}\n/**\n * 获取代理商表单信息\n */\nexport function getGoodsDetails() {\n\treturn request.get(\"agent/apply/info\", {}, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 获取首页的属性\n * @returns {*}\n */\nexport function getAttr(id, type) {\n\treturn request.get(\"v2/get_attr/\" + id + \"/\" + type);\n}\n/**\n * 获取首页商品列表(所有活动的)\n * @param object data\n */\nexport function getHomeProducts(data) {\n\treturn request.get('home/products', data, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 预售详情\n * @returns {*}\n */\nexport function getPresellProductDetail(id) {\n\treturn request.get(\"advance/detail/\" + id);\n}\n\n/**\n * 获取浏览记录列表\n * @param object data\n */\nexport function getVisitList(data) {\n\treturn request.get('user/visit_list', data)\n}\n\n/**\n * 获取浏览记录列表-删除 \n * @param object data\n */\nexport function deleteVisitList(data) {\n\treturn request.delete('user/visit', data)\n}","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","import en_us from '../lang/en_us.json'\nimport zh_cn from '../lang/zh_cn.json'\nimport fr_fr from '../lang/fr_fr.json'\nimport th_th from '../lang/th_th.json'\nimport ja_jp from '../lang/ja_jp.json'\nimport it_it from '../lang/it_it.json'\nimport ko_kr from '../lang/ko_kr.json'\nimport mn_mn from '../lang/mn_mn.json'\nimport vi_vn from '../lang/vi_vn.json'\nimport zh_ft from '../lang/zh_ft.json'\nimport Vue from 'vue'; \nimport VueI18n from 'vue-i18n'\n\n\nVue.use(VueI18n)\nlet langJson = {\n\t\t'en_us': en_us,\n\t\t'zh_cn': zh_cn,\n\t\t'fr_fr': fr_fr,\n\t\t'th_th': th_th,\n\t\t'ja_jp': ja_jp,\n\t\t'it_it': it_it,\n\t\t'ko_kr': ko_kr,\n\t\t'mn_mn': mn_mn,\n\t\t'vi_vn': vi_vn,\n\t\t'zh_ft': zh_ft,\n\t}\nlet lang = '';\n\nlang = uni.getStorageSync('locale') != '' ? uni.getStorageSync('locale') : 'zh_cn';\n\n\n\n\nconst i18n = new VueI18n({\n\tlocale: lang in langJson ? lang :'en_us',\n\tmessages: langJson\n})\nexport default i18n ","!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):t.dayjs=e()}(this,function(){\"use strict\";var t=\"millisecond\",e=\"second\",n=\"minute\",r=\"hour\",i=\"day\",s=\"week\",u=\"month\",o=\"quarter\",a=\"year\",h=/^(\\d{4})-?(\\d{1,2})-?(\\d{0,2})[^0-9]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?.?(\\d{1,3})?$/,f=/\\[([^\\]]+)]|Y{2,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,c=function(t,e,n){var r=String(t);return!r||r.length>=e?t:\"\"+Array(e+1-r.length).join(n)+t},d={s:c,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?\"+\":\"-\")+c(r,2,\"0\")+\":\"+c(i,2,\"0\")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),r=t.clone().add(n,u),i=e-r<0,s=t.clone().add(n+(i?-1:1),u);return Number(-(n+(e-r)/(i?r-s:s-r))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(h){return{M:u,y:a,w:s,d:i,D:\"date\",h:r,m:n,s:e,ms:t,Q:o}[h]||String(h||\"\").toLowerCase().replace(/s$/,\"\")},u:function(t){return void 0===t}},$={name:\"en\",weekdays:\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),months:\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\")},l=\"en\",m={};m[l]=$;var y=function(t){return t instanceof v},M=function(t,e,n){var r;if(!t)return l;if(\"string\"==typeof t)m[t]&&(r=t),e&&(m[t]=e,r=t);else{var i=t.name;m[i]=t,r=i}return!n&&r&&(l=r),r||!n&&l},g=function(t,e){if(y(t))return t.clone();var n=\"object\"==typeof e?e:{};return n.date=t,n.args=arguments,new v(n)},D=d;D.l=M,D.i=y,D.w=function(t,e){return g(t,{locale:e.$L,utc:e.$u,$offset:e.$offset})};var v=function(){function c(t){this.$L=this.$L||M(t.locale,null,!0),this.parse(t)}var d=c.prototype;return d.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(D.u(e))return new Date;if(e instanceof Date)return new Date(e);if(\"string\"==typeof e&&!/Z$/i.test(e)){var r=e.match(h);if(r)return n?new Date(Date.UTC(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)):new Date(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)}return new Date(e)}(t),this.init()},d.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},d.$utils=function(){return D},d.isValid=function(){return!(\"Invalid Date\"===this.$d.toString())},d.isSame=function(t,e){var n=g(t);return this.startOf(e)<=n&&n<=this.endOf(e)},d.isAfter=function(t,e){return g(t)\r\n// +----------------------------------------------------------------------\r\n\r\nexport default [\r\n\t'em-tlj-1',\r\n\t'em-tlj-3',\r\n\t'em-tlj-4',\r\n\t'em-tlj-5',\r\n\t'em-tlj-6',\r\n\t'em-tlj-7',\r\n\t'em-tlj-8',\r\n\t'em-tlj-9',\r\n\t'em-tlj-10',\r\n\t'em-tlj-11',\r\n\t'em-tlj-12',\r\n\t'em-tlj-13',\r\n\t'em-tlj-14',\r\n\t'em-tlj-15',\r\n\t'em-tlj-16',\r\n\t'em-tlj-17',\r\n\t'em-tlj-18',\r\n\t'em-tlj-19',\r\n\t'em-tlj-20',\r\n\t'em-tlj-21',\r\n\t'em-tlj-22',\r\n\t'em-tlj-23',\r\n\t'em-tlj-24',\r\n\t'em-tlj-25',\r\n\t'em-tlj-26',\r\n\t'em-tlj-27',\r\n\t'em-tlj-28',\r\n\t'em-tlj-29',\r\n\t'em-tlj-30',\r\n\t'em-tlj-31',\r\n\t'em-tlj-32',\r\n\t'em-tlj-33',\r\n\t'em-tlj-34',\r\n\t'em-tlj-35',\r\n\t'em-tlj-36',\r\n\t'em-tlj-37',\r\n\t'em-tlj-38',\r\n\t'em-tlj-39',\r\n\t'em-tlj-40',\r\n\t'em-tlj-41',\r\n\t'em-tlj-42',\r\n\t'em-tlj-43',\r\n\t'em-tlj-44',\r\n\t'em-tlj-45',\r\n\t'em-tlj-46',\r\n\t'em-tlj-47',\r\n\t'em-tlj-48',\r\n\t'em-tlj-49',\r\n\t'em-tlj-50',\r\n\t'em-tlj-51',\r\n\t'em-tlj-52',\r\n\t'em-tlj-53',\r\n\t'em-tlj-54',\r\n\t'em-tlj-55',\r\n\t'em-tlj-56',\r\n\t'em-tlj-57',\r\n\t'em-tlj-58',\r\n\t'em-tlj-59',\r\n\t'em-tlj-60',\r\n\t'em-tlj-61',\r\n\t'em-tlj-62',\r\n\t'em-tlj-63',\r\n\t'em-tlj-64',\r\n\t'em-tlj-65',\r\n\t'em-tlj-66',\r\n\t'em-tlj-67',\r\n\t'em-tlj-68',\r\n\t'em-tlj-69',\r\n\t'em-tlj-70',\r\n\t'em-tlj-71',\r\n\t'em-tlj-72',\r\n\t'em-tlj-73',\r\n\t'em-tlj-74',\r\n\t'em-tlj-75',\r\n\t'em-tlj-76',\r\n\t'em-tlj-77',\r\n\t'em-tlj-78',\r\n\t'em-tlj-79',\r\n\t'em-tlj-80',\r\n\t'em-tlj-81',\r\n\t'em-tlj-82',\r\n\t'em-tlj-83',\r\n\t'em-tlj-84',\r\n\t'em-tlj-85',\r\n\t'em-tlj-86',\r\n\t'em-tlj-87',\r\n\t'em-tlj-88',\r\n\t'em-tlj-89',\r\n\t'em-tlj-90',\r\n\t'em-tlj-91',\r\n\t'em-tlj-92',\r\n\t'em-tlj-93',\r\n\t'em-tlj-94',\r\n\t'em-tlj-95',\r\n\t'em-tlj-96',\r\n];\r\n","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\nlet app = getApp()\n\nexport function goShopDetail(item, uid) {\n\treturn new Promise(resolve => {\n\t\tif (item.activity && item.activity.type === \"1\") {\n\t\t\tuni.navigateTo({\n\t\t\t\turl: `/pages/activity/goods_seckill_details/index?id=${item.activity.id}&time=${item.activity.time}&status=1`\n\t\t\t})\n\t\t} else if (item.activity && item.activity.type === \"2\") {\n\t\t\tuni.navigateTo({\n\t\t\t\turl: `/pages/activity/goods_bargain_details/index?id=${item.activity.id}&bargain=${uid}`\n\t\t\t})\n\t\t} else if (item.activity && item.activity.type === \"3\") {\n\t\t\tuni.navigateTo({\n\t\t\t\turl: `/pages/activity/goods_combination_details/index?id=${item.activity.id}`\n\t\t\t})\n\t\t} else {\n\t\t\tresolve(item);\n\t\t}\n\t});\n}\n\n\nexport function goPage() {\n\treturn new Promise(resolve => {\n\t\tif (app.globalData.isIframe == false) {\n\t\t\tresolve(true);\n\t\t}else{\n\t\t\treturn false\n\t\t}\n\t});\n}\n","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\nimport {\n\tSUBSCRIBE_MESSAGE\n} from '../config/cache.js';\n\nexport function auth() {\n\tlet tmplIds = {};\n\tlet messageTmplIds = uni.getStorageSync(SUBSCRIBE_MESSAGE);\n\ttmplIds = messageTmplIds ? JSON.parse(messageTmplIds) : {};\n\treturn tmplIds;\n}\n\n/**\n * 支付成功后订阅消息id\n * 订阅 确认收货通知 订单支付成功 新订单管理员提醒 \n */\nexport function openPaySubscribe() {\n\tlet tmplIds = auth();\n\treturn subscribe([\n\t\ttmplIds.order_pay_success,\n\t\ttmplIds.order_deliver_success,\n\t\ttmplIds.order_postage_success,\n\t]);\n}\n\n/**\n * 订单相关订阅消息\n * 送货 发货 取消订单\n */\nexport function openOrderSubscribe() {\n\tlet tmplIds = auth();\n\treturn subscribe([\n\t\ttmplIds.order_take,\n\t\ttmplIds.integral_accout,\n\t\ttmplIds.order_brokerage\n\t]);\n}\n\n/**\n * 提现消息订阅\n * 成功 和 失败 消息\n */\nexport function openExtrctSubscribe() {\n\tlet tmplIds = auth();\n\treturn subscribe([\n\t\ttmplIds.user_extract\n\t]);\n}\n\n/**\n * 拼团成功\n */\nexport function openPinkSubscribe() {\n\tlet tmplIds = auth();\n\treturn subscribe([\n\t\ttmplIds.open_pink_success,\n\t\ttmplIds.can_pink_success\n\t]);\n}\n\n/**\n * 砍价成功\n */\nexport function openBargainSubscribe() {\n\tlet tmplIds = auth();\n\treturn subscribe([\n\t\ttmplIds.bargain_success\n\t]);\n}\n\n/**\n * 订单退款\n */\nexport function openOrderRefundSubscribe() {\n\tlet tmplIds = auth();\n\treturn subscribe([\n\t\ttmplIds.order_refund\n\t]);\n}\n\n/**\n * 充值成功\n */\nexport function openRechargeSubscribe() {\n\tlet tmplIds = auth();\n\treturn subscribe([\n\t\ttmplIds.recharge_success\n\t]);\n}\n\n/**\n * 调起订阅界面\n * array tmplIds 模板id\n */\nexport function subscribe(subscrip443tionmessagee502call) {\n\t let weChat = wx;\n\treturn new Promise((reslove, reject) => {\n\t\tweChat.requestSubscribeMessage({\n\t\t\ttmplIds: subscrip443tionmessagee502call,\n\t\t\tsuccess(res) {\n\t\t\t\treturn reslove(res);\n\t\t\t},\n\t\t\tfail(res) {\n\t\t\t\treturn reslove(res);\n\t\t\t}\n\t\t})\n\t});\n}\n","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\n\nimport request from \"@/utils/request.js\";\n\n/**\n * 统计数据\n */\nexport function getStatisticsInfo() {\n\treturn request.get(\"admin/order/statistics\", {}, {\n\t\tlogin: true\n\t});\n}\n/**\n * 订单月统计\n */\nexport function getStatisticsMonth(where) {\n\treturn request.get(\"admin/order/data\", where, {\n\t\tlogin: true\n\t});\n}\n/**\n * 订单月统计\n */\nexport function getAdminOrderList(where) {\n\treturn request.get(\"admin/order/list\", where, {\n\t\tlogin: true\n\t});\n}\n/**\n * 订单改价\n */\nexport function setAdminOrderPrice(data) {\n\treturn request.post(\"admin/order/price\", data, {\n\t\tlogin: true\n\t});\n}\n/**\n * 订单备注\n */\nexport function setAdminOrderRemark(data) {\n\treturn request.post(\"admin/order/remark\", data, {\n\t\tlogin: true\n\t});\n}\n/**\n * 订单详情\n */\nexport function getAdminOrderDetail(orderId) {\n\treturn request.get(\"admin/order/detail/\" + orderId, {}, {\n\t\tlogin: true\n\t});\n}\n\n/**\n * 退款订单详情\n */\nexport function getAdminRefundOrderDetail(orderId) {\n\treturn request.get(\"admin/refund_order/detail/\" + orderId, {}, {\n\t\tlogin: true\n\t});\n}\n\n/**\n * 订单发货信息获取\n */\nexport function getAdminOrderDelivery(orderId) {\n\treturn request.get(\n\t\t\"admin/order/delivery/gain/\" + orderId, {}, {\n\t\t\tlogin: true\n\t\t}\n\t);\n}\n\n/**\n * 订单发货保存\n */\nexport function setAdminOrderDelivery(id, data) {\n\treturn request.post(\"admin/order/delivery/keep/\" + id, data, {\n\t\tlogin: true\n\t});\n}\n/**\n * 订单统计图\n */\nexport function getStatisticsTime(data) {\n\treturn request.get(\"admin/order/time\", data, {\n\t\tlogin: true\n\t});\n}\n/**\n * 线下付款订单确认付款\n */\nexport function setOfflinePay(data) {\n\treturn request.post(\"admin/order/offline\", data, {\n\t\tlogin: true\n\t});\n}\n/**\n * 订单确认退款\n */\nexport function setOrderRefund(data) {\n\treturn request.post(\"admin/order/refund\", data, {\n\t\tlogin: true\n\t});\n}\n\n/**\n * 获取快递公司\n * @returns {*}\n */\nexport function getLogistics(data) {\n\treturn request.get(\"logistics\", data, {\n\t\tlogin: false\n\t});\n}\n\n/**\n * 订单核销\n * @returns {*}\n */\nexport function orderVerific(verify_code, is_confirm) {\n\treturn request.post(\"order/order_verific\", {\n\t\tverify_code,\n\t\tis_confirm\n\t});\n}\n\n/**\n * 获取物流公司模板\n * @returns {*}\n */\nexport function orderExportTemp(data) {\n\treturn request.get(\"admin/order/export_temp\", data);\n}\n\n/**\n * 获取订单打印默认配置\n * @returns {*}\n */\nexport function orderDeliveryInfo() {\n\treturn request.get(\"admin/order/delivery_info\");\n}\n\n/**\n * 配送员列表\n * @returns {*}\n */\nexport function orderOrderDelivery() {\n\treturn request.get(\"admin/order/delivery\");\n}\n\n/**\n * 退款列表\n * @returns {*}\n */\nexport function orderRefund_order(where) {\n\treturn request.get(\"admin/refund_order/list\", where, {\n\t\tlogin: true\n\t});\n}\n\n/**\n * 订单备注(退款)\n */\nexport function setAdminRefundRemark(data) {\n\treturn request.post(\"admin/refund_order/remark\", data, {\n\t\tlogin: true\n\t});\n}","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\nimport request from \"@/utils/request.js\";\n\n/**\n * 获取抽奖详情信息\n * \n */\nexport function getLotteryData(type) {\n\treturn request.get(`v2/lottery/info/${type}`);\n}\n\n/**\n * 参与抽奖\n * \n */\nexport function startLottery(data) {\n\treturn request.post(`v2/lottery`, data);\n}\n\n/**\n * 领奖\n * \n */\nexport function receiveLottery(data) {\n\treturn request.post(`v2/lottery/receive`, data);\n}\n\n/**\n * 获取中奖记录\n * \n */\nexport function getLotteryList(data) {\n\treturn request.get(`v2/lottery/record`, data);\n}\n","const isArray = Array.isArray;\r\nconst isObject = (val) => val !== null && typeof val === 'object';\r\nconst defaultDelimiters = ['{', '}'];\r\nclass BaseFormatter {\r\n constructor() {\r\n this._caches = Object.create(null);\r\n }\r\n interpolate(message, values, delimiters = defaultDelimiters) {\r\n if (!values) {\r\n return [message];\r\n }\r\n let tokens = this._caches[message];\r\n if (!tokens) {\r\n tokens = parse(message, delimiters);\r\n this._caches[message] = tokens;\r\n }\r\n return compile(tokens, values);\r\n }\r\n}\r\nconst RE_TOKEN_LIST_VALUE = /^(?:\\d)+/;\r\nconst RE_TOKEN_NAMED_VALUE = /^(?:\\w)+/;\r\nfunction parse(format, [startDelimiter, endDelimiter]) {\r\n const tokens = [];\r\n let position = 0;\r\n let text = '';\r\n while (position < format.length) {\r\n let char = format[position++];\r\n if (char === startDelimiter) {\r\n if (text) {\r\n tokens.push({ type: 'text', value: text });\r\n }\r\n text = '';\r\n let sub = '';\r\n char = format[position++];\r\n while (char !== undefined && char !== endDelimiter) {\r\n sub += char;\r\n char = format[position++];\r\n }\r\n const isClosed = char === endDelimiter;\r\n const type = RE_TOKEN_LIST_VALUE.test(sub)\r\n ? 'list'\r\n : isClosed && RE_TOKEN_NAMED_VALUE.test(sub)\r\n ? 'named'\r\n : 'unknown';\r\n tokens.push({ value: sub, type });\r\n }\r\n // else if (char === '%') {\r\n // // when found rails i18n syntax, skip text capture\r\n // if (format[position] !== '{') {\r\n // text += char\r\n // }\r\n // }\r\n else {\r\n text += char;\r\n }\r\n }\r\n text && tokens.push({ type: 'text', value: text });\r\n return tokens;\r\n}\r\nfunction compile(tokens, values) {\r\n const compiled = [];\r\n let index = 0;\r\n const mode = isArray(values)\r\n ? 'list'\r\n : isObject(values)\r\n ? 'named'\r\n : 'unknown';\r\n if (mode === 'unknown') {\r\n return compiled;\r\n }\r\n while (index < tokens.length) {\r\n const token = tokens[index];\r\n switch (token.type) {\r\n case 'text':\r\n compiled.push(token.value);\r\n break;\r\n case 'list':\r\n compiled.push(values[parseInt(token.value, 10)]);\r\n break;\r\n case 'named':\r\n if (mode === 'named') {\r\n compiled.push(values[token.value]);\r\n }\r\n else {\r\n if (process.env.NODE_ENV !== 'production') {\r\n console.warn(`Type of token '${token.type}' and format of value '${mode}' don't match!`);\r\n }\r\n }\r\n break;\r\n case 'unknown':\r\n if (process.env.NODE_ENV !== 'production') {\r\n console.warn(`Detect 'unknown' type of token!`);\r\n }\r\n break;\r\n }\r\n index++;\r\n }\r\n return compiled;\r\n}\r\n\r\nconst LOCALE_ZH_HANS = 'zh-Hans';\r\nconst LOCALE_ZH_HANT = 'zh-Hant';\r\nconst LOCALE_EN = 'en';\r\nconst LOCALE_FR = 'fr';\r\nconst LOCALE_ES = 'es';\r\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\r\nconst hasOwn = (val, key) => hasOwnProperty.call(val, key);\r\nconst defaultFormatter = new BaseFormatter();\r\nfunction include(str, parts) {\r\n return !!parts.find((part) => str.indexOf(part) !== -1);\r\n}\r\nfunction startsWith(str, parts) {\r\n return parts.find((part) => str.indexOf(part) === 0);\r\n}\r\nfunction normalizeLocale(locale, messages) {\r\n if (!locale) {\r\n return;\r\n }\r\n locale = locale.trim().replace(/_/g, '-');\r\n if (messages && messages[locale]) {\r\n return locale;\r\n }\r\n locale = locale.toLowerCase();\r\n if (locale.indexOf('zh') === 0) {\r\n if (locale.indexOf('-hans') > -1) {\r\n return LOCALE_ZH_HANS;\r\n }\r\n if (locale.indexOf('-hant') > -1) {\r\n return LOCALE_ZH_HANT;\r\n }\r\n if (include(locale, ['-tw', '-hk', '-mo', '-cht'])) {\r\n return LOCALE_ZH_HANT;\r\n }\r\n return LOCALE_ZH_HANS;\r\n }\r\n const lang = startsWith(locale, [LOCALE_EN, LOCALE_FR, LOCALE_ES]);\r\n if (lang) {\r\n return lang;\r\n }\r\n}\r\nclass I18n {\r\n constructor({ locale, fallbackLocale, messages, watcher, formater, }) {\r\n this.locale = LOCALE_EN;\r\n this.fallbackLocale = LOCALE_EN;\r\n this.message = {};\r\n this.messages = {};\r\n this.watchers = [];\r\n if (fallbackLocale) {\r\n this.fallbackLocale = fallbackLocale;\r\n }\r\n this.formater = formater || defaultFormatter;\r\n this.messages = messages || {};\r\n this.setLocale(locale || LOCALE_EN);\r\n if (watcher) {\r\n this.watchLocale(watcher);\r\n }\r\n }\r\n setLocale(locale) {\r\n const oldLocale = this.locale;\r\n this.locale = normalizeLocale(locale, this.messages) || this.fallbackLocale;\r\n if (!this.messages[this.locale]) {\r\n // 可能初始化时不存在\r\n this.messages[this.locale] = {};\r\n }\r\n this.message = this.messages[this.locale];\r\n // 仅发生变化时,通知\r\n if (oldLocale !== this.locale) {\r\n this.watchers.forEach((watcher) => {\r\n watcher(this.locale, oldLocale);\r\n });\r\n }\r\n }\r\n getLocale() {\r\n return this.locale;\r\n }\r\n watchLocale(fn) {\r\n const index = this.watchers.push(fn) - 1;\r\n return () => {\r\n this.watchers.splice(index, 1);\r\n };\r\n }\r\n add(locale, message, override = true) {\r\n const curMessages = this.messages[locale];\r\n if (curMessages) {\r\n if (override) {\r\n Object.assign(curMessages, message);\r\n }\r\n else {\r\n Object.keys(message).forEach((key) => {\r\n if (!hasOwn(curMessages, key)) {\r\n curMessages[key] = message[key];\r\n }\r\n });\r\n }\r\n }\r\n else {\r\n this.messages[locale] = message;\r\n }\r\n }\r\n f(message, values, delimiters) {\r\n return this.formater.interpolate(message, values, delimiters).join('');\r\n }\r\n t(key, locale, values) {\r\n let message = this.message;\r\n if (typeof locale === 'string') {\r\n locale = normalizeLocale(locale, this.messages);\r\n locale && (message = this.messages[locale]);\r\n }\r\n else {\r\n values = locale;\r\n }\r\n if (!hasOwn(message, key)) {\r\n console.warn(`Cannot translate the value of keypath ${key}. Use the value of keypath as default.`);\r\n return key;\r\n }\r\n return this.formater.interpolate(message[key], values).join('');\r\n }\r\n}\r\n\r\nfunction watchAppLocale(appVm, i18n) {\r\n // 需要保证 watch 的触发在组件渲染之前\r\n if (appVm.$watchLocale) {\r\n // vue2\r\n appVm.$watchLocale((newLocale) => {\r\n i18n.setLocale(newLocale);\r\n });\r\n }\r\n else {\r\n appVm.$watch(() => appVm.$locale, (newLocale) => {\r\n i18n.setLocale(newLocale);\r\n });\r\n }\r\n}\r\nfunction getDefaultLocale() {\r\n if (typeof uni !== 'undefined' && uni.getLocale) {\r\n return uni.getLocale();\r\n }\r\n // 小程序平台,uni 和 uni-i18n 互相引用,导致访问不到 uni,故在 global 上挂了 getLocale\r\n if (typeof global !== 'undefined' && global.getLocale) {\r\n return global.getLocale();\r\n }\r\n return LOCALE_EN;\r\n}\r\nfunction initVueI18n(locale, messages = {}, fallbackLocale, watcher) {\r\n // 兼容旧版本入参\r\n if (typeof locale !== 'string') {\r\n [locale, messages] = [\r\n messages,\r\n locale,\r\n ];\r\n }\r\n if (typeof locale !== 'string') {\r\n // 因为小程序平台,uni-i18n 和 uni 互相引用,导致此时访问 uni 时,为 undefined\r\n locale = getDefaultLocale();\r\n }\r\n if (typeof fallbackLocale !== 'string') {\r\n fallbackLocale =\r\n (typeof __uniConfig !== 'undefined' && __uniConfig.fallbackLocale) ||\r\n LOCALE_EN;\r\n }\r\n const i18n = new I18n({\r\n locale,\r\n fallbackLocale,\r\n messages,\r\n watcher,\r\n });\r\n let t = (key, values) => {\r\n if (typeof getApp !== 'function') {\r\n // app view\r\n /* eslint-disable no-func-assign */\r\n t = function (key, values) {\r\n return i18n.t(key, values);\r\n };\r\n }\r\n else {\r\n let isWatchedAppLocale = false;\r\n t = function (key, values) {\r\n const appVm = getApp().$vm;\r\n // 可能$vm还不存在,比如在支付宝小程序中,组件定义较早,在props的default里使用了t()函数(如uni-goods-nav),此时app还未初始化\r\n // options: {\r\n // \ttype: Array,\r\n // \tdefault () {\r\n // \t\treturn [{\r\n // \t\t\ticon: 'shop',\r\n // \t\t\ttext: t(\"uni-goods-nav.options.shop\"),\r\n // \t\t}, {\r\n // \t\t\ticon: 'cart',\r\n // \t\t\ttext: t(\"uni-goods-nav.options.cart\")\r\n // \t\t}]\r\n // \t}\r\n // },\r\n if (appVm) {\r\n // 触发响应式\r\n appVm.$locale;\r\n if (!isWatchedAppLocale) {\r\n isWatchedAppLocale = true;\r\n watchAppLocale(appVm, i18n);\r\n }\r\n }\r\n return i18n.t(key, values);\r\n };\r\n }\r\n return t(key, values);\r\n };\r\n return {\r\n i18n,\r\n f(message, values, delimiters) {\r\n return i18n.f(message, values, delimiters);\r\n },\r\n t(key, values) {\r\n return t(key, values);\r\n },\r\n add(locale, message, override = true) {\r\n return i18n.add(locale, message, override);\r\n },\r\n watch(fn) {\r\n return i18n.watchLocale(fn);\r\n },\r\n getLocale() {\r\n return i18n.getLocale();\r\n },\r\n setLocale(newLocale) {\r\n return i18n.setLocale(newLocale);\r\n },\r\n };\r\n}\r\n\r\nconst isString = (val) => typeof val === 'string';\r\nlet formater;\r\nfunction hasI18nJson(jsonObj, delimiters) {\r\n if (!formater) {\r\n formater = new BaseFormatter();\r\n }\r\n return walkJsonObj(jsonObj, (jsonObj, key) => {\r\n const value = jsonObj[key];\r\n if (isString(value)) {\r\n if (isI18nStr(value, delimiters)) {\r\n return true;\r\n }\r\n }\r\n else {\r\n return hasI18nJson(value, delimiters);\r\n }\r\n });\r\n}\r\nfunction parseI18nJson(jsonObj, values, delimiters) {\r\n if (!formater) {\r\n formater = new BaseFormatter();\r\n }\r\n walkJsonObj(jsonObj, (jsonObj, key) => {\r\n const value = jsonObj[key];\r\n if (isString(value)) {\r\n if (isI18nStr(value, delimiters)) {\r\n jsonObj[key] = compileStr(value, values, delimiters);\r\n }\r\n }\r\n else {\r\n parseI18nJson(value, values, delimiters);\r\n }\r\n });\r\n return jsonObj;\r\n}\r\nfunction compileI18nJsonStr(jsonStr, { locale, locales, delimiters, }) {\r\n if (!isI18nStr(jsonStr, delimiters)) {\r\n return jsonStr;\r\n }\r\n if (!formater) {\r\n formater = new BaseFormatter();\r\n }\r\n const localeValues = [];\r\n Object.keys(locales).forEach((name) => {\r\n if (name !== locale) {\r\n localeValues.push({\r\n locale: name,\r\n values: locales[name],\r\n });\r\n }\r\n });\r\n localeValues.unshift({ locale, values: locales[locale] });\r\n try {\r\n return JSON.stringify(compileJsonObj(JSON.parse(jsonStr), localeValues, delimiters), null, 2);\r\n }\r\n catch (e) { }\r\n return jsonStr;\r\n}\r\nfunction isI18nStr(value, delimiters) {\r\n return value.indexOf(delimiters[0]) > -1;\r\n}\r\nfunction compileStr(value, values, delimiters) {\r\n return formater.interpolate(value, values, delimiters).join('');\r\n}\r\nfunction compileValue(jsonObj, key, localeValues, delimiters) {\r\n const value = jsonObj[key];\r\n if (isString(value)) {\r\n // 存在国际化\r\n if (isI18nStr(value, delimiters)) {\r\n jsonObj[key] = compileStr(value, localeValues[0].values, delimiters);\r\n if (localeValues.length > 1) {\r\n // 格式化国际化语言\r\n const valueLocales = (jsonObj[key + 'Locales'] = {});\r\n localeValues.forEach((localValue) => {\r\n valueLocales[localValue.locale] = compileStr(value, localValue.values, delimiters);\r\n });\r\n }\r\n }\r\n }\r\n else {\r\n compileJsonObj(value, localeValues, delimiters);\r\n }\r\n}\r\nfunction compileJsonObj(jsonObj, localeValues, delimiters) {\r\n walkJsonObj(jsonObj, (jsonObj, key) => {\r\n compileValue(jsonObj, key, localeValues, delimiters);\r\n });\r\n return jsonObj;\r\n}\r\nfunction walkJsonObj(jsonObj, walk) {\r\n if (isArray(jsonObj)) {\r\n for (let i = 0; i < jsonObj.length; i++) {\r\n if (walk(jsonObj, i)) {\r\n return true;\r\n }\r\n }\r\n }\r\n else if (isObject(jsonObj)) {\r\n for (const key in jsonObj) {\r\n if (walk(jsonObj, key)) {\r\n return true;\r\n }\r\n }\r\n }\r\n return false;\r\n}\r\n\r\nfunction resolveLocale(locales) {\r\n return (locale) => {\r\n if (!locale) {\r\n return locale;\r\n }\r\n locale = normalizeLocale(locale) || locale;\r\n return resolveLocaleChain(locale).find((locale) => locales.indexOf(locale) > -1);\r\n };\r\n}\r\nfunction resolveLocaleChain(locale) {\r\n const chain = [];\r\n const tokens = locale.split('-');\r\n while (tokens.length) {\r\n chain.push(tokens.join('-'));\r\n tokens.pop();\r\n }\r\n return chain;\r\n}\r\n\r\nexport { BaseFormatter as Formatter, I18n, LOCALE_EN, LOCALE_ES, LOCALE_FR, LOCALE_ZH_HANS, LOCALE_ZH_HANT, compileI18nJsonStr, hasI18nJson, initVueI18n, isI18nStr, isString, normalizeLocale, parseI18nJson, resolveLocale };\r\n","/*!\n * vue-i18n v8.24.1 \n * (c) 2021 kazuya kawaguchi\n * Released under the MIT License.\n */\n/* */\n\n/**\n * constants\n */\n\nvar numberFormatKeys = [\n 'compactDisplay',\n 'currency',\n 'currencyDisplay',\n 'currencySign',\n 'localeMatcher',\n 'notation',\n 'numberingSystem',\n 'signDisplay',\n 'style',\n 'unit',\n 'unitDisplay',\n 'useGrouping',\n 'minimumIntegerDigits',\n 'minimumFractionDigits',\n 'maximumFractionDigits',\n 'minimumSignificantDigits',\n 'maximumSignificantDigits'\n];\n\n/**\n * utilities\n */\n\nfunction warn (msg, err) {\n if (typeof console !== 'undefined') {\n console.warn('[vue-i18n] ' + msg);\n /* istanbul ignore if */\n if (err) {\n console.warn(err.stack);\n }\n }\n}\n\nfunction error (msg, err) {\n if (typeof console !== 'undefined') {\n console.error('[vue-i18n] ' + msg);\n /* istanbul ignore if */\n if (err) {\n console.error(err.stack);\n }\n }\n}\n\nvar isArray = Array.isArray;\n\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\nfunction isBoolean (val) {\n return typeof val === 'boolean'\n}\n\nfunction isString (val) {\n return typeof val === 'string'\n}\n\nvar toString = Object.prototype.toString;\nvar OBJECT_STRING = '[object Object]';\nfunction isPlainObject (obj) {\n return toString.call(obj) === OBJECT_STRING\n}\n\nfunction isNull (val) {\n return val === null || val === undefined\n}\n\nfunction isFunction (val) {\n return typeof val === 'function'\n}\n\nfunction parseArgs () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var locale = null;\n var params = null;\n if (args.length === 1) {\n if (isObject(args[0]) || isArray(args[0])) {\n params = args[0];\n } else if (typeof args[0] === 'string') {\n locale = args[0];\n }\n } else if (args.length === 2) {\n if (typeof args[0] === 'string') {\n locale = args[0];\n }\n /* istanbul ignore if */\n if (isObject(args[1]) || isArray(args[1])) {\n params = args[1];\n }\n }\n\n return { locale: locale, params: params }\n}\n\nfunction looseClone (obj) {\n return JSON.parse(JSON.stringify(obj))\n}\n\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\nfunction includes (arr, item) {\n return !!~arr.indexOf(item)\n}\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\nfunction merge (target) {\n var arguments$1 = arguments;\n\n var output = Object(target);\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments$1[i];\n if (source !== undefined && source !== null) {\n var key = (void 0);\n for (key in source) {\n if (hasOwn(source, key)) {\n if (isObject(source[key])) {\n output[key] = merge(output[key], source[key]);\n } else {\n output[key] = source[key];\n }\n }\n }\n }\n }\n return output\n}\n\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = isArray(a);\n var isArrayB = isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\n/**\n * Sanitizes html special characters from input strings. For mitigating risk of XSS attacks.\n * @param rawText The raw input from the user that should be escaped.\n */\nfunction escapeHtml(rawText) {\n return rawText\n .replace(//g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''')\n}\n\n/**\n * Escapes html tags and special symbols from all provided params which were returned from parseArgs().params.\n * This method performs an in-place operation on the params object.\n *\n * @param {any} params Parameters as provided from `parseArgs().params`.\n * May be either an array of strings or a string->any map.\n *\n * @returns The manipulated `params` object.\n */\nfunction escapeParams(params) {\n if(params != null) {\n Object.keys(params).forEach(function (key) {\n if(typeof(params[key]) == 'string') {\n params[key] = escapeHtml(params[key]);\n }\n });\n }\n return params\n}\n\n/* */\n\nfunction extend (Vue) {\n if (!Vue.prototype.hasOwnProperty('$i18n')) {\n // $FlowFixMe\n Object.defineProperty(Vue.prototype, '$i18n', {\n get: function get () { return this._i18n }\n });\n }\n\n Vue.prototype.$t = function (key) {\n var values = [], len = arguments.length - 1;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 1 ];\n\n var i18n = this.$i18n;\n return i18n._t.apply(i18n, [ key, i18n.locale, i18n._getMessages(), this ].concat( values ))\n };\n\n Vue.prototype.$tc = function (key, choice) {\n var values = [], len = arguments.length - 2;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 2 ];\n\n var i18n = this.$i18n;\n return i18n._tc.apply(i18n, [ key, i18n.locale, i18n._getMessages(), this, choice ].concat( values ))\n };\n\n Vue.prototype.$te = function (key, locale) {\n var i18n = this.$i18n;\n return i18n._te(key, i18n.locale, i18n._getMessages(), locale)\n };\n\n Vue.prototype.$d = function (value) {\n var ref;\n\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n return (ref = this.$i18n).d.apply(ref, [ value ].concat( args ))\n };\n\n Vue.prototype.$n = function (value) {\n var ref;\n\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n return (ref = this.$i18n).n.apply(ref, [ value ].concat( args ))\n };\n}\n\n/* */\n\nvar mixin = {\n beforeCreate: function beforeCreate () {\n var options = this.$options;\n options.i18n = options.i18n || (options.__i18n ? {} : null);\n\n if (options.i18n) {\n if (options.i18n instanceof VueI18n) {\n // init locale messages via custom blocks\n if (options.__i18n) {\n try {\n var localeMessages = options.i18n && options.i18n.messages ? options.i18n.messages : {};\n options.__i18n.forEach(function (resource) {\n localeMessages = merge(localeMessages, JSON.parse(resource));\n });\n Object.keys(localeMessages).forEach(function (locale) {\n options.i18n.mergeLocaleMessage(locale, localeMessages[locale]);\n });\n } catch (e) {\n if (process.env.NODE_ENV !== 'production') {\n error(\"Cannot parse locale messages via custom blocks.\", e);\n }\n }\n }\n this._i18n = options.i18n;\n this._i18nWatcher = this._i18n.watchI18nData();\n } else if (isPlainObject(options.i18n)) {\n var rootI18n = this.$root && this.$root.$i18n && this.$root.$i18n instanceof VueI18n\n ? this.$root.$i18n\n : null;\n // component local i18n\n if (rootI18n) {\n options.i18n.root = this.$root;\n options.i18n.formatter = rootI18n.formatter;\n options.i18n.fallbackLocale = rootI18n.fallbackLocale;\n options.i18n.formatFallbackMessages = rootI18n.formatFallbackMessages;\n options.i18n.silentTranslationWarn = rootI18n.silentTranslationWarn;\n options.i18n.silentFallbackWarn = rootI18n.silentFallbackWarn;\n options.i18n.pluralizationRules = rootI18n.pluralizationRules;\n options.i18n.preserveDirectiveContent = rootI18n.preserveDirectiveContent;\n }\n\n // init locale messages via custom blocks\n if (options.__i18n) {\n try {\n var localeMessages$1 = options.i18n && options.i18n.messages ? options.i18n.messages : {};\n options.__i18n.forEach(function (resource) {\n localeMessages$1 = merge(localeMessages$1, JSON.parse(resource));\n });\n options.i18n.messages = localeMessages$1;\n } catch (e) {\n if (process.env.NODE_ENV !== 'production') {\n warn(\"Cannot parse locale messages via custom blocks.\", e);\n }\n }\n }\n\n var ref = options.i18n;\n var sharedMessages = ref.sharedMessages;\n if (sharedMessages && isPlainObject(sharedMessages)) {\n options.i18n.messages = merge(options.i18n.messages, sharedMessages);\n }\n\n this._i18n = new VueI18n(options.i18n);\n this._i18nWatcher = this._i18n.watchI18nData();\n\n if (options.i18n.sync === undefined || !!options.i18n.sync) {\n this._localeWatcher = this.$i18n.watchLocale();\n }\n\n if (rootI18n) {\n rootI18n.onComponentInstanceCreated(this._i18n);\n }\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn(\"Cannot be interpreted 'i18n' option.\");\n }\n }\n } else if (this.$root && this.$root.$i18n && this.$root.$i18n instanceof VueI18n) {\n // root i18n\n this._i18n = this.$root.$i18n;\n } else if (options.parent && options.parent.$i18n && options.parent.$i18n instanceof VueI18n) {\n // parent i18n\n this._i18n = options.parent.$i18n;\n }\n },\n\n beforeMount: function beforeMount () {\n var options = this.$options;\n options.i18n = options.i18n || (options.__i18n ? {} : null);\n\n if (options.i18n) {\n if (options.i18n instanceof VueI18n) {\n // init locale messages via custom blocks\n this._i18n.subscribeDataChanging(this);\n this._subscribing = true;\n } else if (isPlainObject(options.i18n)) {\n this._i18n.subscribeDataChanging(this);\n this._subscribing = true;\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn(\"Cannot be interpreted 'i18n' option.\");\n }\n }\n } else if (this.$root && this.$root.$i18n && this.$root.$i18n instanceof VueI18n) {\n this._i18n.subscribeDataChanging(this);\n this._subscribing = true;\n } else if (options.parent && options.parent.$i18n && options.parent.$i18n instanceof VueI18n) {\n this._i18n.subscribeDataChanging(this);\n this._subscribing = true;\n }\n },\n\n mounted: function mounted () {\n if (this !== this.$root && this.$options.__INTLIFY_META__ && this.$el) {\n this.$el.setAttribute('data-intlify', this.$options.__INTLIFY_META__);\n }\n },\n\n beforeDestroy: function beforeDestroy () {\n if (!this._i18n) { return }\n\n var self = this;\n this.$nextTick(function () {\n if (self._subscribing) {\n self._i18n.unsubscribeDataChanging(self);\n delete self._subscribing;\n }\n\n if (self._i18nWatcher) {\n self._i18nWatcher();\n self._i18n.destroyVM();\n delete self._i18nWatcher;\n }\n\n if (self._localeWatcher) {\n self._localeWatcher();\n delete self._localeWatcher;\n }\n });\n }\n};\n\n/* */\n\nvar interpolationComponent = {\n name: 'i18n',\n functional: true,\n props: {\n tag: {\n type: [String, Boolean, Object],\n default: 'span'\n },\n path: {\n type: String,\n required: true\n },\n locale: {\n type: String\n },\n places: {\n type: [Array, Object]\n }\n },\n render: function render (h, ref) {\n var data = ref.data;\n var parent = ref.parent;\n var props = ref.props;\n var slots = ref.slots;\n\n var $i18n = parent.$i18n;\n if (!$i18n) {\n if (process.env.NODE_ENV !== 'production') {\n warn('Cannot find VueI18n instance!');\n }\n return\n }\n\n var path = props.path;\n var locale = props.locale;\n var places = props.places;\n var params = slots();\n var children = $i18n.i(\n path,\n locale,\n onlyHasDefaultPlace(params) || places\n ? useLegacyPlaces(params.default, places)\n : params\n );\n\n var tag = (!!props.tag && props.tag !== true) || props.tag === false ? props.tag : 'span';\n return tag ? h(tag, data, children) : children\n }\n};\n\nfunction onlyHasDefaultPlace (params) {\n var prop;\n for (prop in params) {\n if (prop !== 'default') { return false }\n }\n return Boolean(prop)\n}\n\nfunction useLegacyPlaces (children, places) {\n var params = places ? createParamsFromPlaces(places) : {};\n\n if (!children) { return params }\n\n // Filter empty text nodes\n children = children.filter(function (child) {\n return child.tag || child.text.trim() !== ''\n });\n\n var everyPlace = children.every(vnodeHasPlaceAttribute);\n if (process.env.NODE_ENV !== 'production' && everyPlace) {\n warn('`place` attribute is deprecated in next major version. Please switch to Vue slots.');\n }\n\n return children.reduce(\n everyPlace ? assignChildPlace : assignChildIndex,\n params\n )\n}\n\nfunction createParamsFromPlaces (places) {\n if (process.env.NODE_ENV !== 'production') {\n warn('`places` prop is deprecated in next major version. Please switch to Vue slots.');\n }\n\n return Array.isArray(places)\n ? places.reduce(assignChildIndex, {})\n : Object.assign({}, places)\n}\n\nfunction assignChildPlace (params, child) {\n if (child.data && child.data.attrs && child.data.attrs.place) {\n params[child.data.attrs.place] = child;\n }\n return params\n}\n\nfunction assignChildIndex (params, child, index) {\n params[index] = child;\n return params\n}\n\nfunction vnodeHasPlaceAttribute (vnode) {\n return Boolean(vnode.data && vnode.data.attrs && vnode.data.attrs.place)\n}\n\n/* */\n\nvar numberComponent = {\n name: 'i18n-n',\n functional: true,\n props: {\n tag: {\n type: [String, Boolean, Object],\n default: 'span'\n },\n value: {\n type: Number,\n required: true\n },\n format: {\n type: [String, Object]\n },\n locale: {\n type: String\n }\n },\n render: function render (h, ref) {\n var props = ref.props;\n var parent = ref.parent;\n var data = ref.data;\n\n var i18n = parent.$i18n;\n\n if (!i18n) {\n if (process.env.NODE_ENV !== 'production') {\n warn('Cannot find VueI18n instance!');\n }\n return null\n }\n\n var key = null;\n var options = null;\n\n if (isString(props.format)) {\n key = props.format;\n } else if (isObject(props.format)) {\n if (props.format.key) {\n key = props.format.key;\n }\n\n // Filter out number format options only\n options = Object.keys(props.format).reduce(function (acc, prop) {\n var obj;\n\n if (includes(numberFormatKeys, prop)) {\n return Object.assign({}, acc, ( obj = {}, obj[prop] = props.format[prop], obj ))\n }\n return acc\n }, null);\n }\n\n var locale = props.locale || i18n.locale;\n var parts = i18n._ntp(props.value, locale, key, options);\n\n var values = parts.map(function (part, index) {\n var obj;\n\n var slot = data.scopedSlots && data.scopedSlots[part.type];\n return slot ? slot(( obj = {}, obj[part.type] = part.value, obj.index = index, obj.parts = parts, obj )) : part.value\n });\n\n var tag = (!!props.tag && props.tag !== true) || props.tag === false ? props.tag : 'span';\n return tag\n ? h(tag, {\n attrs: data.attrs,\n 'class': data['class'],\n staticClass: data.staticClass\n }, values)\n : values\n }\n};\n\n/* */\n\nfunction bind (el, binding, vnode) {\n if (!assert(el, vnode)) { return }\n\n t(el, binding, vnode);\n}\n\nfunction update (el, binding, vnode, oldVNode) {\n if (!assert(el, vnode)) { return }\n\n var i18n = vnode.context.$i18n;\n if (localeEqual(el, vnode) &&\n (looseEqual(binding.value, binding.oldValue) &&\n looseEqual(el._localeMessage, i18n.getLocaleMessage(i18n.locale)))) { return }\n\n t(el, binding, vnode);\n}\n\nfunction unbind (el, binding, vnode, oldVNode) {\n var vm = vnode.context;\n if (!vm) {\n warn('Vue instance does not exists in VNode context');\n return\n }\n\n var i18n = vnode.context.$i18n || {};\n if (!binding.modifiers.preserve && !i18n.preserveDirectiveContent) {\n el.textContent = '';\n }\n el._vt = undefined;\n delete el['_vt'];\n el._locale = undefined;\n delete el['_locale'];\n el._localeMessage = undefined;\n delete el['_localeMessage'];\n}\n\nfunction assert (el, vnode) {\n var vm = vnode.context;\n if (!vm) {\n warn('Vue instance does not exists in VNode context');\n return false\n }\n\n if (!vm.$i18n) {\n warn('VueI18n instance does not exists in Vue instance');\n return false\n }\n\n return true\n}\n\nfunction localeEqual (el, vnode) {\n var vm = vnode.context;\n return el._locale === vm.$i18n.locale\n}\n\nfunction t (el, binding, vnode) {\n var ref$1, ref$2;\n\n var value = binding.value;\n\n var ref = parseValue(value);\n var path = ref.path;\n var locale = ref.locale;\n var args = ref.args;\n var choice = ref.choice;\n if (!path && !locale && !args) {\n warn('value type not supported');\n return\n }\n\n if (!path) {\n warn('`path` is required in v-t directive');\n return\n }\n\n var vm = vnode.context;\n if (choice != null) {\n el._vt = el.textContent = (ref$1 = vm.$i18n).tc.apply(ref$1, [ path, choice ].concat( makeParams(locale, args) ));\n } else {\n el._vt = el.textContent = (ref$2 = vm.$i18n).t.apply(ref$2, [ path ].concat( makeParams(locale, args) ));\n }\n el._locale = vm.$i18n.locale;\n el._localeMessage = vm.$i18n.getLocaleMessage(vm.$i18n.locale);\n}\n\nfunction parseValue (value) {\n var path;\n var locale;\n var args;\n var choice;\n\n if (isString(value)) {\n path = value;\n } else if (isPlainObject(value)) {\n path = value.path;\n locale = value.locale;\n args = value.args;\n choice = value.choice;\n }\n\n return { path: path, locale: locale, args: args, choice: choice }\n}\n\nfunction makeParams (locale, args) {\n var params = [];\n\n locale && params.push(locale);\n if (args && (Array.isArray(args) || isPlainObject(args))) {\n params.push(args);\n }\n\n return params\n}\n\nvar Vue;\n\nfunction install (_Vue) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && install.installed && _Vue === Vue) {\n warn('already installed.');\n return\n }\n install.installed = true;\n\n Vue = _Vue;\n\n var version = (Vue.version && Number(Vue.version.split('.')[0])) || -1;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && version < 2) {\n warn((\"vue-i18n (\" + (install.version) + \") need to use Vue 2.0 or later (Vue: \" + (Vue.version) + \").\"));\n return\n }\n\n extend(Vue);\n Vue.mixin(mixin);\n Vue.directive('t', { bind: bind, update: update, unbind: unbind });\n Vue.component(interpolationComponent.name, interpolationComponent);\n Vue.component(numberComponent.name, numberComponent);\n\n // use simple mergeStrategies to prevent i18n instance lose '__proto__'\n var strats = Vue.config.optionMergeStrategies;\n strats.i18n = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n };\n}\n\n/* */\n\nvar BaseFormatter = function BaseFormatter () {\n this._caches = Object.create(null);\n};\n\nBaseFormatter.prototype.interpolate = function interpolate (message, values) {\n if (!values) {\n return [message]\n }\n var tokens = this._caches[message];\n if (!tokens) {\n tokens = parse(message);\n this._caches[message] = tokens;\n }\n return compile(tokens, values)\n};\n\n\n\nvar RE_TOKEN_LIST_VALUE = /^(?:\\d)+/;\nvar RE_TOKEN_NAMED_VALUE = /^(?:\\w)+/;\n\nfunction parse (format) {\n var tokens = [];\n var position = 0;\n\n var text = '';\n while (position < format.length) {\n var char = format[position++];\n if (char === '{') {\n if (text) {\n tokens.push({ type: 'text', value: text });\n }\n\n text = '';\n var sub = '';\n char = format[position++];\n while (char !== undefined && char !== '}') {\n sub += char;\n char = format[position++];\n }\n var isClosed = char === '}';\n\n var type = RE_TOKEN_LIST_VALUE.test(sub)\n ? 'list'\n : isClosed && RE_TOKEN_NAMED_VALUE.test(sub)\n ? 'named'\n : 'unknown';\n tokens.push({ value: sub, type: type });\n } else if (char === '%') {\n // when found rails i18n syntax, skip text capture\n if (format[(position)] !== '{') {\n text += char;\n }\n } else {\n text += char;\n }\n }\n\n text && tokens.push({ type: 'text', value: text });\n\n return tokens\n}\n\nfunction compile (tokens, values) {\n var compiled = [];\n var index = 0;\n\n var mode = Array.isArray(values)\n ? 'list'\n : isObject(values)\n ? 'named'\n : 'unknown';\n if (mode === 'unknown') { return compiled }\n\n while (index < tokens.length) {\n var token = tokens[index];\n switch (token.type) {\n case 'text':\n compiled.push(token.value);\n break\n case 'list':\n compiled.push(values[parseInt(token.value, 10)]);\n break\n case 'named':\n if (mode === 'named') {\n compiled.push((values)[token.value]);\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Type of token '\" + (token.type) + \"' and format of value '\" + mode + \"' don't match!\"));\n }\n }\n break\n case 'unknown':\n if (process.env.NODE_ENV !== 'production') {\n warn(\"Detect 'unknown' type of token!\");\n }\n break\n }\n index++;\n }\n\n return compiled\n}\n\n/* */\n\n/**\n * Path parser\n * - Inspired:\n * Vue.js Path parser\n */\n\n// actions\nvar APPEND = 0;\nvar PUSH = 1;\nvar INC_SUB_PATH_DEPTH = 2;\nvar PUSH_SUB_PATH = 3;\n\n// states\nvar BEFORE_PATH = 0;\nvar IN_PATH = 1;\nvar BEFORE_IDENT = 2;\nvar IN_IDENT = 3;\nvar IN_SUB_PATH = 4;\nvar IN_SINGLE_QUOTE = 5;\nvar IN_DOUBLE_QUOTE = 6;\nvar AFTER_PATH = 7;\nvar ERROR = 8;\n\nvar pathStateMachine = [];\n\npathStateMachine[BEFORE_PATH] = {\n 'ws': [BEFORE_PATH],\n 'ident': [IN_IDENT, APPEND],\n '[': [IN_SUB_PATH],\n 'eof': [AFTER_PATH]\n};\n\npathStateMachine[IN_PATH] = {\n 'ws': [IN_PATH],\n '.': [BEFORE_IDENT],\n '[': [IN_SUB_PATH],\n 'eof': [AFTER_PATH]\n};\n\npathStateMachine[BEFORE_IDENT] = {\n 'ws': [BEFORE_IDENT],\n 'ident': [IN_IDENT, APPEND],\n '0': [IN_IDENT, APPEND],\n 'number': [IN_IDENT, APPEND]\n};\n\npathStateMachine[IN_IDENT] = {\n 'ident': [IN_IDENT, APPEND],\n '0': [IN_IDENT, APPEND],\n 'number': [IN_IDENT, APPEND],\n 'ws': [IN_PATH, PUSH],\n '.': [BEFORE_IDENT, PUSH],\n '[': [IN_SUB_PATH, PUSH],\n 'eof': [AFTER_PATH, PUSH]\n};\n\npathStateMachine[IN_SUB_PATH] = {\n \"'\": [IN_SINGLE_QUOTE, APPEND],\n '\"': [IN_DOUBLE_QUOTE, APPEND],\n '[': [IN_SUB_PATH, INC_SUB_PATH_DEPTH],\n ']': [IN_PATH, PUSH_SUB_PATH],\n 'eof': ERROR,\n 'else': [IN_SUB_PATH, APPEND]\n};\n\npathStateMachine[IN_SINGLE_QUOTE] = {\n \"'\": [IN_SUB_PATH, APPEND],\n 'eof': ERROR,\n 'else': [IN_SINGLE_QUOTE, APPEND]\n};\n\npathStateMachine[IN_DOUBLE_QUOTE] = {\n '\"': [IN_SUB_PATH, APPEND],\n 'eof': ERROR,\n 'else': [IN_DOUBLE_QUOTE, APPEND]\n};\n\n/**\n * Check if an expression is a literal value.\n */\n\nvar literalValueRE = /^\\s?(?:true|false|-?[\\d.]+|'[^']*'|\"[^\"]*\")\\s?$/;\nfunction isLiteral (exp) {\n return literalValueRE.test(exp)\n}\n\n/**\n * Strip quotes from a string\n */\n\nfunction stripQuotes (str) {\n var a = str.charCodeAt(0);\n var b = str.charCodeAt(str.length - 1);\n return a === b && (a === 0x22 || a === 0x27)\n ? str.slice(1, -1)\n : str\n}\n\n/**\n * Determine the type of a character in a keypath.\n */\n\nfunction getPathCharType (ch) {\n if (ch === undefined || ch === null) { return 'eof' }\n\n var code = ch.charCodeAt(0);\n\n switch (code) {\n case 0x5B: // [\n case 0x5D: // ]\n case 0x2E: // .\n case 0x22: // \"\n case 0x27: // '\n return ch\n\n case 0x5F: // _\n case 0x24: // $\n case 0x2D: // -\n return 'ident'\n\n case 0x09: // Tab\n case 0x0A: // Newline\n case 0x0D: // Return\n case 0xA0: // No-break space\n case 0xFEFF: // Byte Order Mark\n case 0x2028: // Line Separator\n case 0x2029: // Paragraph Separator\n return 'ws'\n }\n\n return 'ident'\n}\n\n/**\n * Format a subPath, return its plain form if it is\n * a literal string or number. Otherwise prepend the\n * dynamic indicator (*).\n */\n\nfunction formatSubPath (path) {\n var trimmed = path.trim();\n // invalid leading 0\n if (path.charAt(0) === '0' && isNaN(path)) { return false }\n\n return isLiteral(trimmed) ? stripQuotes(trimmed) : '*' + trimmed\n}\n\n/**\n * Parse a string path into an array of segments\n */\n\nfunction parse$1 (path) {\n var keys = [];\n var index = -1;\n var mode = BEFORE_PATH;\n var subPathDepth = 0;\n var c;\n var key;\n var newChar;\n var type;\n var transition;\n var action;\n var typeMap;\n var actions = [];\n\n actions[PUSH] = function () {\n if (key !== undefined) {\n keys.push(key);\n key = undefined;\n }\n };\n\n actions[APPEND] = function () {\n if (key === undefined) {\n key = newChar;\n } else {\n key += newChar;\n }\n };\n\n actions[INC_SUB_PATH_DEPTH] = function () {\n actions[APPEND]();\n subPathDepth++;\n };\n\n actions[PUSH_SUB_PATH] = function () {\n if (subPathDepth > 0) {\n subPathDepth--;\n mode = IN_SUB_PATH;\n actions[APPEND]();\n } else {\n subPathDepth = 0;\n if (key === undefined) { return false }\n key = formatSubPath(key);\n if (key === false) {\n return false\n } else {\n actions[PUSH]();\n }\n }\n };\n\n function maybeUnescapeQuote () {\n var nextChar = path[index + 1];\n if ((mode === IN_SINGLE_QUOTE && nextChar === \"'\") ||\n (mode === IN_DOUBLE_QUOTE && nextChar === '\"')) {\n index++;\n newChar = '\\\\' + nextChar;\n actions[APPEND]();\n return true\n }\n }\n\n while (mode !== null) {\n index++;\n c = path[index];\n\n if (c === '\\\\' && maybeUnescapeQuote()) {\n continue\n }\n\n type = getPathCharType(c);\n typeMap = pathStateMachine[mode];\n transition = typeMap[type] || typeMap['else'] || ERROR;\n\n if (transition === ERROR) {\n return // parse error\n }\n\n mode = transition[0];\n action = actions[transition[1]];\n if (action) {\n newChar = transition[2];\n newChar = newChar === undefined\n ? c\n : newChar;\n if (action() === false) {\n return\n }\n }\n\n if (mode === AFTER_PATH) {\n return keys\n }\n }\n}\n\n\n\n\n\nvar I18nPath = function I18nPath () {\n this._cache = Object.create(null);\n};\n\n/**\n * External parse that check for a cache hit first\n */\nI18nPath.prototype.parsePath = function parsePath (path) {\n var hit = this._cache[path];\n if (!hit) {\n hit = parse$1(path);\n if (hit) {\n this._cache[path] = hit;\n }\n }\n return hit || []\n};\n\n/**\n * Get path value from path string\n */\nI18nPath.prototype.getPathValue = function getPathValue (obj, path) {\n if (!isObject(obj)) { return null }\n\n var paths = this.parsePath(path);\n if (paths.length === 0) {\n return null\n } else {\n var length = paths.length;\n var last = obj;\n var i = 0;\n while (i < length) {\n var value = last[paths[i]];\n if (value === undefined || value === null) {\n return null\n }\n last = value;\n i++;\n }\n\n return last\n }\n};\n\n/* */\n\n\n\nvar htmlTagMatcher = /<\\/?[\\w\\s=\"/.':;#-\\/]+>/;\nvar linkKeyMatcher = /(?:@(?:\\.[a-z]+)?:(?:[\\w\\-_|.]+|\\([\\w\\-_|.]+\\)))/g;\nvar linkKeyPrefixMatcher = /^@(?:\\.([a-z]+))?:/;\nvar bracketsMatcher = /[()]/g;\nvar defaultModifiers = {\n 'upper': function (str) { return str.toLocaleUpperCase(); },\n 'lower': function (str) { return str.toLocaleLowerCase(); },\n 'capitalize': function (str) { return (\"\" + (str.charAt(0).toLocaleUpperCase()) + (str.substr(1))); }\n};\n\nvar defaultFormatter = new BaseFormatter();\n\nvar VueI18n = function VueI18n (options) {\n var this$1 = this;\n if ( options === void 0 ) options = {};\n\n // Auto install if it is not done yet and `window` has `Vue`.\n // To allow users to avoid auto-installation in some cases,\n // this code should be placed here. See #290\n /* istanbul ignore if */\n if (!Vue && typeof window !== 'undefined' && window.Vue) {\n install(window.Vue);\n }\n\n var locale = options.locale || 'en-US';\n var fallbackLocale = options.fallbackLocale === false\n ? false\n : options.fallbackLocale || 'en-US';\n var messages = options.messages || {};\n var dateTimeFormats = options.dateTimeFormats || {};\n var numberFormats = options.numberFormats || {};\n\n this._vm = null;\n this._formatter = options.formatter || defaultFormatter;\n this._modifiers = options.modifiers || {};\n this._missing = options.missing || null;\n this._root = options.root || null;\n this._sync = options.sync === undefined ? true : !!options.sync;\n this._fallbackRoot = options.fallbackRoot === undefined\n ? true\n : !!options.fallbackRoot;\n this._formatFallbackMessages = options.formatFallbackMessages === undefined\n ? false\n : !!options.formatFallbackMessages;\n this._silentTranslationWarn = options.silentTranslationWarn === undefined\n ? false\n : options.silentTranslationWarn;\n this._silentFallbackWarn = options.silentFallbackWarn === undefined\n ? false\n : !!options.silentFallbackWarn;\n this._dateTimeFormatters = {};\n this._numberFormatters = {};\n this._path = new I18nPath();\n this._dataListeners = [];\n this._componentInstanceCreatedListener = options.componentInstanceCreatedListener || null;\n this._preserveDirectiveContent = options.preserveDirectiveContent === undefined\n ? false\n : !!options.preserveDirectiveContent;\n this.pluralizationRules = options.pluralizationRules || {};\n this._warnHtmlInMessage = options.warnHtmlInMessage || 'off';\n this._postTranslation = options.postTranslation || null;\n this._escapeParameterHtml = options.escapeParameterHtml || false;\n\n /**\n * @param choice {number} a choice index given by the input to $tc: `$tc('path.to.rule', choiceIndex)`\n * @param choicesLength {number} an overall amount of available choices\n * @returns a final choice index\n */\n this.getChoiceIndex = function (choice, choicesLength) {\n var thisPrototype = Object.getPrototypeOf(this$1);\n if (thisPrototype && thisPrototype.getChoiceIndex) {\n var prototypeGetChoiceIndex = (thisPrototype.getChoiceIndex);\n return (prototypeGetChoiceIndex).call(this$1, choice, choicesLength)\n }\n\n // Default (old) getChoiceIndex implementation - english-compatible\n var defaultImpl = function (_choice, _choicesLength) {\n _choice = Math.abs(_choice);\n\n if (_choicesLength === 2) {\n return _choice\n ? _choice > 1\n ? 1\n : 0\n : 1\n }\n\n return _choice ? Math.min(_choice, 2) : 0\n };\n\n if (this$1.locale in this$1.pluralizationRules) {\n return this$1.pluralizationRules[this$1.locale].apply(this$1, [choice, choicesLength])\n } else {\n return defaultImpl(choice, choicesLength)\n }\n };\n\n\n this._exist = function (message, key) {\n if (!message || !key) { return false }\n if (!isNull(this$1._path.getPathValue(message, key))) { return true }\n // fallback for flat key\n if (message[key]) { return true }\n return false\n };\n\n if (this._warnHtmlInMessage === 'warn' || this._warnHtmlInMessage === 'error') {\n Object.keys(messages).forEach(function (locale) {\n this$1._checkLocaleMessage(locale, this$1._warnHtmlInMessage, messages[locale]);\n });\n }\n\n this._initVM({\n locale: locale,\n fallbackLocale: fallbackLocale,\n messages: messages,\n dateTimeFormats: dateTimeFormats,\n numberFormats: numberFormats\n });\n};\n\nvar prototypeAccessors = { vm: { configurable: true },messages: { configurable: true },dateTimeFormats: { configurable: true },numberFormats: { configurable: true },availableLocales: { configurable: true },locale: { configurable: true },fallbackLocale: { configurable: true },formatFallbackMessages: { configurable: true },missing: { configurable: true },formatter: { configurable: true },silentTranslationWarn: { configurable: true },silentFallbackWarn: { configurable: true },preserveDirectiveContent: { configurable: true },warnHtmlInMessage: { configurable: true },postTranslation: { configurable: true } };\n\nVueI18n.prototype._checkLocaleMessage = function _checkLocaleMessage (locale, level, message) {\n var paths = [];\n\n var fn = function (level, locale, message, paths) {\n if (isPlainObject(message)) {\n Object.keys(message).forEach(function (key) {\n var val = message[key];\n if (isPlainObject(val)) {\n paths.push(key);\n paths.push('.');\n fn(level, locale, val, paths);\n paths.pop();\n paths.pop();\n } else {\n paths.push(key);\n fn(level, locale, val, paths);\n paths.pop();\n }\n });\n } else if (isArray(message)) {\n message.forEach(function (item, index) {\n if (isPlainObject(item)) {\n paths.push((\"[\" + index + \"]\"));\n paths.push('.');\n fn(level, locale, item, paths);\n paths.pop();\n paths.pop();\n } else {\n paths.push((\"[\" + index + \"]\"));\n fn(level, locale, item, paths);\n paths.pop();\n }\n });\n } else if (isString(message)) {\n var ret = htmlTagMatcher.test(message);\n if (ret) {\n var msg = \"Detected HTML in message '\" + message + \"' of keypath '\" + (paths.join('')) + \"' at '\" + locale + \"'. Consider component interpolation with '' to avoid XSS. See https://bit.ly/2ZqJzkp\";\n if (level === 'warn') {\n warn(msg);\n } else if (level === 'error') {\n error(msg);\n }\n }\n }\n };\n\n fn(level, locale, message, paths);\n};\n\nVueI18n.prototype._initVM = function _initVM (data) {\n var silent = Vue.config.silent;\n Vue.config.silent = true;\n this._vm = new Vue({ data: data });\n Vue.config.silent = silent;\n};\n\nVueI18n.prototype.destroyVM = function destroyVM () {\n this._vm.$destroy();\n};\n\nVueI18n.prototype.subscribeDataChanging = function subscribeDataChanging (vm) {\n this._dataListeners.push(vm);\n};\n\nVueI18n.prototype.unsubscribeDataChanging = function unsubscribeDataChanging (vm) {\n remove(this._dataListeners, vm);\n};\n\nVueI18n.prototype.watchI18nData = function watchI18nData () {\n var self = this;\n return this._vm.$watch('$data', function () {\n var i = self._dataListeners.length;\n while (i--) {\n Vue.nextTick(function () {\n self._dataListeners[i] && self._dataListeners[i].$forceUpdate();\n });\n }\n }, { deep: true })\n};\n\nVueI18n.prototype.watchLocale = function watchLocale () {\n /* istanbul ignore if */\n if (!this._sync || !this._root) { return null }\n var target = this._vm;\n return this._root.$i18n.vm.$watch('locale', function (val) {\n target.$set(target, 'locale', val);\n target.$forceUpdate();\n }, { immediate: true })\n};\n\nVueI18n.prototype.onComponentInstanceCreated = function onComponentInstanceCreated (newI18n) {\n if (this._componentInstanceCreatedListener) {\n this._componentInstanceCreatedListener(newI18n, this);\n }\n};\n\nprototypeAccessors.vm.get = function () { return this._vm };\n\nprototypeAccessors.messages.get = function () { return looseClone(this._getMessages()) };\nprototypeAccessors.dateTimeFormats.get = function () { return looseClone(this._getDateTimeFormats()) };\nprototypeAccessors.numberFormats.get = function () { return looseClone(this._getNumberFormats()) };\nprototypeAccessors.availableLocales.get = function () { return Object.keys(this.messages).sort() };\n\nprototypeAccessors.locale.get = function () { return this._vm.locale };\nprototypeAccessors.locale.set = function (locale) {\n this._vm.$set(this._vm, 'locale', locale);\n};\n\nprototypeAccessors.fallbackLocale.get = function () { return this._vm.fallbackLocale };\nprototypeAccessors.fallbackLocale.set = function (locale) {\n this._localeChainCache = {};\n this._vm.$set(this._vm, 'fallbackLocale', locale);\n};\n\nprototypeAccessors.formatFallbackMessages.get = function () { return this._formatFallbackMessages };\nprototypeAccessors.formatFallbackMessages.set = function (fallback) { this._formatFallbackMessages = fallback; };\n\nprototypeAccessors.missing.get = function () { return this._missing };\nprototypeAccessors.missing.set = function (handler) { this._missing = handler; };\n\nprototypeAccessors.formatter.get = function () { return this._formatter };\nprototypeAccessors.formatter.set = function (formatter) { this._formatter = formatter; };\n\nprototypeAccessors.silentTranslationWarn.get = function () { return this._silentTranslationWarn };\nprototypeAccessors.silentTranslationWarn.set = function (silent) { this._silentTranslationWarn = silent; };\n\nprototypeAccessors.silentFallbackWarn.get = function () { return this._silentFallbackWarn };\nprototypeAccessors.silentFallbackWarn.set = function (silent) { this._silentFallbackWarn = silent; };\n\nprototypeAccessors.preserveDirectiveContent.get = function () { return this._preserveDirectiveContent };\nprototypeAccessors.preserveDirectiveContent.set = function (preserve) { this._preserveDirectiveContent = preserve; };\n\nprototypeAccessors.warnHtmlInMessage.get = function () { return this._warnHtmlInMessage };\nprototypeAccessors.warnHtmlInMessage.set = function (level) {\n var this$1 = this;\n\n var orgLevel = this._warnHtmlInMessage;\n this._warnHtmlInMessage = level;\n if (orgLevel !== level && (level === 'warn' || level === 'error')) {\n var messages = this._getMessages();\n Object.keys(messages).forEach(function (locale) {\n this$1._checkLocaleMessage(locale, this$1._warnHtmlInMessage, messages[locale]);\n });\n }\n};\n\nprototypeAccessors.postTranslation.get = function () { return this._postTranslation };\nprototypeAccessors.postTranslation.set = function (handler) { this._postTranslation = handler; };\n\nVueI18n.prototype._getMessages = function _getMessages () { return this._vm.messages };\nVueI18n.prototype._getDateTimeFormats = function _getDateTimeFormats () { return this._vm.dateTimeFormats };\nVueI18n.prototype._getNumberFormats = function _getNumberFormats () { return this._vm.numberFormats };\n\nVueI18n.prototype._warnDefault = function _warnDefault (locale, key, result, vm, values, interpolateMode) {\n if (!isNull(result)) { return result }\n if (this._missing) {\n var missingRet = this._missing.apply(null, [locale, key, vm, values]);\n if (isString(missingRet)) {\n return missingRet\n }\n } else {\n if (process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key)) {\n warn(\n \"Cannot translate the value of keypath '\" + key + \"'. \" +\n 'Use the value of keypath as default.'\n );\n }\n }\n\n if (this._formatFallbackMessages) {\n var parsedArgs = parseArgs.apply(void 0, values);\n return this._render(key, interpolateMode, parsedArgs.params, key)\n } else {\n return key\n }\n};\n\nVueI18n.prototype._isFallbackRoot = function _isFallbackRoot (val) {\n return !val && !isNull(this._root) && this._fallbackRoot\n};\n\nVueI18n.prototype._isSilentFallbackWarn = function _isSilentFallbackWarn (key) {\n return this._silentFallbackWarn instanceof RegExp\n ? this._silentFallbackWarn.test(key)\n : this._silentFallbackWarn\n};\n\nVueI18n.prototype._isSilentFallback = function _isSilentFallback (locale, key) {\n return this._isSilentFallbackWarn(key) && (this._isFallbackRoot() || locale !== this.fallbackLocale)\n};\n\nVueI18n.prototype._isSilentTranslationWarn = function _isSilentTranslationWarn (key) {\n return this._silentTranslationWarn instanceof RegExp\n ? this._silentTranslationWarn.test(key)\n : this._silentTranslationWarn\n};\n\nVueI18n.prototype._interpolate = function _interpolate (\n locale,\n message,\n key,\n host,\n interpolateMode,\n values,\n visitedLinkStack\n) {\n if (!message) { return null }\n\n var pathRet = this._path.getPathValue(message, key);\n if (isArray(pathRet) || isPlainObject(pathRet)) { return pathRet }\n\n var ret;\n if (isNull(pathRet)) {\n /* istanbul ignore else */\n if (isPlainObject(message)) {\n ret = message[key];\n if (!(isString(ret) || isFunction(ret))) {\n if (process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallback(locale, key)) {\n warn((\"Value of key '\" + key + \"' is not a string or function !\"));\n }\n return null\n }\n } else {\n return null\n }\n } else {\n /* istanbul ignore else */\n if (isString(pathRet) || isFunction(pathRet)) {\n ret = pathRet;\n } else {\n if (process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallback(locale, key)) {\n warn((\"Value of key '\" + key + \"' is not a string or function!\"));\n }\n return null\n }\n }\n\n // Check for the existence of links within the translated string\n if (isString(ret) && (ret.indexOf('@:') >= 0 || ret.indexOf('@.') >= 0)) {\n ret = this._link(locale, message, ret, host, 'raw', values, visitedLinkStack);\n }\n\n return this._render(ret, interpolateMode, values, key)\n};\n\nVueI18n.prototype._link = function _link (\n locale,\n message,\n str,\n host,\n interpolateMode,\n values,\n visitedLinkStack\n) {\n var ret = str;\n\n // Match all the links within the local\n // We are going to replace each of\n // them with its translation\n var matches = ret.match(linkKeyMatcher);\n for (var idx in matches) {\n // ie compatible: filter custom array\n // prototype method\n if (!matches.hasOwnProperty(idx)) {\n continue\n }\n var link = matches[idx];\n var linkKeyPrefixMatches = link.match(linkKeyPrefixMatcher);\n var linkPrefix = linkKeyPrefixMatches[0];\n var formatterName = linkKeyPrefixMatches[1];\n\n // Remove the leading @:, @.case: and the brackets\n var linkPlaceholder = link.replace(linkPrefix, '').replace(bracketsMatcher, '');\n\n if (includes(visitedLinkStack, linkPlaceholder)) {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Circular reference found. \\\"\" + link + \"\\\" is already visited in the chain of \" + (visitedLinkStack.reverse().join(' <- '))));\n }\n return ret\n }\n visitedLinkStack.push(linkPlaceholder);\n\n // Translate the link\n var translated = this._interpolate(\n locale, message, linkPlaceholder, host,\n interpolateMode === 'raw' ? 'string' : interpolateMode,\n interpolateMode === 'raw' ? undefined : values,\n visitedLinkStack\n );\n\n if (this._isFallbackRoot(translated)) {\n if (process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(linkPlaceholder)) {\n warn((\"Fall back to translate the link placeholder '\" + linkPlaceholder + \"' with root locale.\"));\n }\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n var root = this._root.$i18n;\n translated = root._translate(\n root._getMessages(), root.locale, root.fallbackLocale,\n linkPlaceholder, host, interpolateMode, values\n );\n }\n translated = this._warnDefault(\n locale, linkPlaceholder, translated, host,\n isArray(values) ? values : [values],\n interpolateMode\n );\n\n if (this._modifiers.hasOwnProperty(formatterName)) {\n translated = this._modifiers[formatterName](translated);\n } else if (defaultModifiers.hasOwnProperty(formatterName)) {\n translated = defaultModifiers[formatterName](translated);\n }\n\n visitedLinkStack.pop();\n\n // Replace the link with the translated\n ret = !translated ? ret : ret.replace(link, translated);\n }\n\n return ret\n};\n\nVueI18n.prototype._createMessageContext = function _createMessageContext (values) {\n var _list = isArray(values) ? values : [];\n var _named = isObject(values) ? values : {};\n var list = function (index) { return _list[index]; };\n var named = function (key) { return _named[key]; };\n return {\n list: list,\n named: named\n }\n};\n\nVueI18n.prototype._render = function _render (message, interpolateMode, values, path) {\n if (isFunction(message)) {\n return message(this._createMessageContext(values))\n }\n\n var ret = this._formatter.interpolate(message, values, path);\n\n // If the custom formatter refuses to work - apply the default one\n if (!ret) {\n ret = defaultFormatter.interpolate(message, values, path);\n }\n\n // if interpolateMode is **not** 'string' ('row'),\n // return the compiled data (e.g. ['foo', VNode, 'bar']) with formatter\n return interpolateMode === 'string' && !isString(ret) ? ret.join('') : ret\n};\n\nVueI18n.prototype._appendItemToChain = function _appendItemToChain (chain, item, blocks) {\n var follow = false;\n if (!includes(chain, item)) {\n follow = true;\n if (item) {\n follow = item[item.length - 1] !== '!';\n item = item.replace(/!/g, '');\n chain.push(item);\n if (blocks && blocks[item]) {\n follow = blocks[item];\n }\n }\n }\n return follow\n};\n\nVueI18n.prototype._appendLocaleToChain = function _appendLocaleToChain (chain, locale, blocks) {\n var follow;\n var tokens = locale.split('-');\n do {\n var item = tokens.join('-');\n follow = this._appendItemToChain(chain, item, blocks);\n tokens.splice(-1, 1);\n } while (tokens.length && (follow === true))\n return follow\n};\n\nVueI18n.prototype._appendBlockToChain = function _appendBlockToChain (chain, block, blocks) {\n var follow = true;\n for (var i = 0; (i < block.length) && (isBoolean(follow)); i++) {\n var locale = block[i];\n if (isString(locale)) {\n follow = this._appendLocaleToChain(chain, locale, blocks);\n }\n }\n return follow\n};\n\nVueI18n.prototype._getLocaleChain = function _getLocaleChain (start, fallbackLocale) {\n if (start === '') { return [] }\n\n if (!this._localeChainCache) {\n this._localeChainCache = {};\n }\n\n var chain = this._localeChainCache[start];\n if (!chain) {\n if (!fallbackLocale) {\n fallbackLocale = this.fallbackLocale;\n }\n chain = [];\n\n // first block defined by start\n var block = [start];\n\n // while any intervening block found\n while (isArray(block)) {\n block = this._appendBlockToChain(\n chain,\n block,\n fallbackLocale\n );\n }\n\n // last block defined by default\n var defaults;\n if (isArray(fallbackLocale)) {\n defaults = fallbackLocale;\n } else if (isObject(fallbackLocale)) {\n /* $FlowFixMe */\n if (fallbackLocale['default']) {\n defaults = fallbackLocale['default'];\n } else {\n defaults = null;\n }\n } else {\n defaults = fallbackLocale;\n }\n\n // convert defaults to array\n if (isString(defaults)) {\n block = [defaults];\n } else {\n block = defaults;\n }\n if (block) {\n this._appendBlockToChain(\n chain,\n block,\n null\n );\n }\n this._localeChainCache[start] = chain;\n }\n return chain\n};\n\nVueI18n.prototype._translate = function _translate (\n messages,\n locale,\n fallback,\n key,\n host,\n interpolateMode,\n args\n) {\n var chain = this._getLocaleChain(locale, fallback);\n var res;\n for (var i = 0; i < chain.length; i++) {\n var step = chain[i];\n res =\n this._interpolate(step, messages[step], key, host, interpolateMode, args, [key]);\n if (!isNull(res)) {\n if (step !== locale && process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn((\"Fall back to translate the keypath '\" + key + \"' with '\" + step + \"' locale.\"));\n }\n return res\n }\n }\n return null\n};\n\nVueI18n.prototype._t = function _t (key, _locale, messages, host) {\n var ref;\n\n var values = [], len = arguments.length - 4;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 4 ];\n if (!key) { return '' }\n\n var parsedArgs = parseArgs.apply(void 0, values);\n if(this._escapeParameterHtml) {\n parsedArgs.params = escapeParams(parsedArgs.params);\n }\n\n var locale = parsedArgs.locale || _locale;\n\n var ret = this._translate(\n messages, locale, this.fallbackLocale, key,\n host, 'string', parsedArgs.params\n );\n if (this._isFallbackRoot(ret)) {\n if (process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn((\"Fall back to translate the keypath '\" + key + \"' with root locale.\"));\n }\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n return (ref = this._root).$t.apply(ref, [ key ].concat( values ))\n } else {\n ret = this._warnDefault(locale, key, ret, host, values, 'string');\n if (this._postTranslation && ret !== null && ret !== undefined) {\n ret = this._postTranslation(ret, key);\n }\n return ret\n }\n};\n\nVueI18n.prototype.t = function t (key) {\n var ref;\n\n var values = [], len = arguments.length - 1;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 1 ];\n return (ref = this)._t.apply(ref, [ key, this.locale, this._getMessages(), null ].concat( values ))\n};\n\nVueI18n.prototype._i = function _i (key, locale, messages, host, values) {\n var ret =\n this._translate(messages, locale, this.fallbackLocale, key, host, 'raw', values);\n if (this._isFallbackRoot(ret)) {\n if (process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key)) {\n warn((\"Fall back to interpolate the keypath '\" + key + \"' with root locale.\"));\n }\n if (!this._root) { throw Error('unexpected error') }\n return this._root.$i18n.i(key, locale, values)\n } else {\n return this._warnDefault(locale, key, ret, host, [values], 'raw')\n }\n};\n\nVueI18n.prototype.i = function i (key, locale, values) {\n /* istanbul ignore if */\n if (!key) { return '' }\n\n if (!isString(locale)) {\n locale = this.locale;\n }\n\n return this._i(key, locale, this._getMessages(), null, values)\n};\n\nVueI18n.prototype._tc = function _tc (\n key,\n _locale,\n messages,\n host,\n choice\n) {\n var ref;\n\n var values = [], len = arguments.length - 5;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 5 ];\n if (!key) { return '' }\n if (choice === undefined) {\n choice = 1;\n }\n\n var predefined = { 'count': choice, 'n': choice };\n var parsedArgs = parseArgs.apply(void 0, values);\n parsedArgs.params = Object.assign(predefined, parsedArgs.params);\n values = parsedArgs.locale === null ? [parsedArgs.params] : [parsedArgs.locale, parsedArgs.params];\n return this.fetchChoice((ref = this)._t.apply(ref, [ key, _locale, messages, host ].concat( values )), choice)\n};\n\nVueI18n.prototype.fetchChoice = function fetchChoice (message, choice) {\n /* istanbul ignore if */\n if (!message || !isString(message)) { return null }\n var choices = message.split('|');\n\n choice = this.getChoiceIndex(choice, choices.length);\n if (!choices[choice]) { return message }\n return choices[choice].trim()\n};\n\nVueI18n.prototype.tc = function tc (key, choice) {\n var ref;\n\n var values = [], len = arguments.length - 2;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 2 ];\n return (ref = this)._tc.apply(ref, [ key, this.locale, this._getMessages(), null, choice ].concat( values ))\n};\n\nVueI18n.prototype._te = function _te (key, locale, messages) {\n var args = [], len = arguments.length - 3;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 3 ];\n\n var _locale = parseArgs.apply(void 0, args).locale || locale;\n return this._exist(messages[_locale], key)\n};\n\nVueI18n.prototype.te = function te (key, locale) {\n return this._te(key, this.locale, this._getMessages(), locale)\n};\n\nVueI18n.prototype.getLocaleMessage = function getLocaleMessage (locale) {\n return looseClone(this._vm.messages[locale] || {})\n};\n\nVueI18n.prototype.setLocaleMessage = function setLocaleMessage (locale, message) {\n if (this._warnHtmlInMessage === 'warn' || this._warnHtmlInMessage === 'error') {\n this._checkLocaleMessage(locale, this._warnHtmlInMessage, message);\n }\n this._vm.$set(this._vm.messages, locale, message);\n};\n\nVueI18n.prototype.mergeLocaleMessage = function mergeLocaleMessage (locale, message) {\n if (this._warnHtmlInMessage === 'warn' || this._warnHtmlInMessage === 'error') {\n this._checkLocaleMessage(locale, this._warnHtmlInMessage, message);\n }\n this._vm.$set(this._vm.messages, locale, merge(\n typeof this._vm.messages[locale] !== 'undefined' && Object.keys(this._vm.messages[locale]).length\n ? this._vm.messages[locale]\n : {},\n message\n ));\n};\n\nVueI18n.prototype.getDateTimeFormat = function getDateTimeFormat (locale) {\n return looseClone(this._vm.dateTimeFormats[locale] || {})\n};\n\nVueI18n.prototype.setDateTimeFormat = function setDateTimeFormat (locale, format) {\n this._vm.$set(this._vm.dateTimeFormats, locale, format);\n this._clearDateTimeFormat(locale, format);\n};\n\nVueI18n.prototype.mergeDateTimeFormat = function mergeDateTimeFormat (locale, format) {\n this._vm.$set(this._vm.dateTimeFormats, locale, merge(this._vm.dateTimeFormats[locale] || {}, format));\n this._clearDateTimeFormat(locale, format);\n};\n\nVueI18n.prototype._clearDateTimeFormat = function _clearDateTimeFormat (locale, format) {\n for (var key in format) {\n var id = locale + \"__\" + key;\n\n if (!this._dateTimeFormatters.hasOwnProperty(id)) {\n continue\n }\n\n delete this._dateTimeFormatters[id];\n }\n};\n\nVueI18n.prototype._localizeDateTime = function _localizeDateTime (\n value,\n locale,\n fallback,\n dateTimeFormats,\n key\n) {\n var _locale = locale;\n var formats = dateTimeFormats[_locale];\n\n var chain = this._getLocaleChain(locale, fallback);\n for (var i = 0; i < chain.length; i++) {\n var current = _locale;\n var step = chain[i];\n formats = dateTimeFormats[step];\n _locale = step;\n // fallback locale\n if (isNull(formats) || isNull(formats[key])) {\n if (step !== locale && process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn((\"Fall back to '\" + step + \"' datetime formats from '\" + current + \"' datetime formats.\"));\n }\n } else {\n break\n }\n }\n\n if (isNull(formats) || isNull(formats[key])) {\n return null\n } else {\n var format = formats[key];\n var id = _locale + \"__\" + key;\n var formatter = this._dateTimeFormatters[id];\n if (!formatter) {\n formatter = this._dateTimeFormatters[id] = new Intl.DateTimeFormat(_locale, format);\n }\n return formatter.format(value)\n }\n};\n\nVueI18n.prototype._d = function _d (value, locale, key) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && !VueI18n.availabilities.dateTimeFormat) {\n warn('Cannot format a Date value due to not supported Intl.DateTimeFormat.');\n return ''\n }\n\n if (!key) {\n return new Intl.DateTimeFormat(locale).format(value)\n }\n\n var ret =\n this._localizeDateTime(value, locale, this.fallbackLocale, this._getDateTimeFormats(), key);\n if (this._isFallbackRoot(ret)) {\n if (process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn((\"Fall back to datetime localization of root: key '\" + key + \"'.\"));\n }\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n return this._root.$i18n.d(value, key, locale)\n } else {\n return ret || ''\n }\n};\n\nVueI18n.prototype.d = function d (value) {\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n\n var locale = this.locale;\n var key = null;\n\n if (args.length === 1) {\n if (isString(args[0])) {\n key = args[0];\n } else if (isObject(args[0])) {\n if (args[0].locale) {\n locale = args[0].locale;\n }\n if (args[0].key) {\n key = args[0].key;\n }\n }\n } else if (args.length === 2) {\n if (isString(args[0])) {\n key = args[0];\n }\n if (isString(args[1])) {\n locale = args[1];\n }\n }\n\n return this._d(value, locale, key)\n};\n\nVueI18n.prototype.getNumberFormat = function getNumberFormat (locale) {\n return looseClone(this._vm.numberFormats[locale] || {})\n};\n\nVueI18n.prototype.setNumberFormat = function setNumberFormat (locale, format) {\n this._vm.$set(this._vm.numberFormats, locale, format);\n this._clearNumberFormat(locale, format);\n};\n\nVueI18n.prototype.mergeNumberFormat = function mergeNumberFormat (locale, format) {\n this._vm.$set(this._vm.numberFormats, locale, merge(this._vm.numberFormats[locale] || {}, format));\n this._clearNumberFormat(locale, format);\n};\n\nVueI18n.prototype._clearNumberFormat = function _clearNumberFormat (locale, format) {\n for (var key in format) {\n var id = locale + \"__\" + key;\n\n if (!this._numberFormatters.hasOwnProperty(id)) {\n continue\n }\n\n delete this._numberFormatters[id];\n }\n};\n\nVueI18n.prototype._getNumberFormatter = function _getNumberFormatter (\n value,\n locale,\n fallback,\n numberFormats,\n key,\n options\n) {\n var _locale = locale;\n var formats = numberFormats[_locale];\n\n var chain = this._getLocaleChain(locale, fallback);\n for (var i = 0; i < chain.length; i++) {\n var current = _locale;\n var step = chain[i];\n formats = numberFormats[step];\n _locale = step;\n // fallback locale\n if (isNull(formats) || isNull(formats[key])) {\n if (step !== locale && process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn((\"Fall back to '\" + step + \"' number formats from '\" + current + \"' number formats.\"));\n }\n } else {\n break\n }\n }\n\n if (isNull(formats) || isNull(formats[key])) {\n return null\n } else {\n var format = formats[key];\n\n var formatter;\n if (options) {\n // If options specified - create one time number formatter\n formatter = new Intl.NumberFormat(_locale, Object.assign({}, format, options));\n } else {\n var id = _locale + \"__\" + key;\n formatter = this._numberFormatters[id];\n if (!formatter) {\n formatter = this._numberFormatters[id] = new Intl.NumberFormat(_locale, format);\n }\n }\n return formatter\n }\n};\n\nVueI18n.prototype._n = function _n (value, locale, key, options) {\n /* istanbul ignore if */\n if (!VueI18n.availabilities.numberFormat) {\n if (process.env.NODE_ENV !== 'production') {\n warn('Cannot format a Number value due to not supported Intl.NumberFormat.');\n }\n return ''\n }\n\n if (!key) {\n var nf = !options ? new Intl.NumberFormat(locale) : new Intl.NumberFormat(locale, options);\n return nf.format(value)\n }\n\n var formatter = this._getNumberFormatter(value, locale, this.fallbackLocale, this._getNumberFormats(), key, options);\n var ret = formatter && formatter.format(value);\n if (this._isFallbackRoot(ret)) {\n if (process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn((\"Fall back to number localization of root: key '\" + key + \"'.\"));\n }\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n return this._root.$i18n.n(value, Object.assign({}, { key: key, locale: locale }, options))\n } else {\n return ret || ''\n }\n};\n\nVueI18n.prototype.n = function n (value) {\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n\n var locale = this.locale;\n var key = null;\n var options = null;\n\n if (args.length === 1) {\n if (isString(args[0])) {\n key = args[0];\n } else if (isObject(args[0])) {\n if (args[0].locale) {\n locale = args[0].locale;\n }\n if (args[0].key) {\n key = args[0].key;\n }\n\n // Filter out number format options only\n options = Object.keys(args[0]).reduce(function (acc, key) {\n var obj;\n\n if (includes(numberFormatKeys, key)) {\n return Object.assign({}, acc, ( obj = {}, obj[key] = args[0][key], obj ))\n }\n return acc\n }, null);\n }\n } else if (args.length === 2) {\n if (isString(args[0])) {\n key = args[0];\n }\n if (isString(args[1])) {\n locale = args[1];\n }\n }\n\n return this._n(value, locale, key, options)\n};\n\nVueI18n.prototype._ntp = function _ntp (value, locale, key, options) {\n /* istanbul ignore if */\n if (!VueI18n.availabilities.numberFormat) {\n if (process.env.NODE_ENV !== 'production') {\n warn('Cannot format to parts a Number value due to not supported Intl.NumberFormat.');\n }\n return []\n }\n\n if (!key) {\n var nf = !options ? new Intl.NumberFormat(locale) : new Intl.NumberFormat(locale, options);\n return nf.formatToParts(value)\n }\n\n var formatter = this._getNumberFormatter(value, locale, this.fallbackLocale, this._getNumberFormats(), key, options);\n var ret = formatter && formatter.formatToParts(value);\n if (this._isFallbackRoot(ret)) {\n if (process.env.NODE_ENV !== 'production' && !this._isSilentTranslationWarn(key)) {\n warn((\"Fall back to format number to parts of root: key '\" + key + \"' .\"));\n }\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n return this._root.$i18n._ntp(value, locale, key, options)\n } else {\n return ret || []\n }\n};\n\nObject.defineProperties( VueI18n.prototype, prototypeAccessors );\n\nvar availabilities;\n// $FlowFixMe\nObject.defineProperty(VueI18n, 'availabilities', {\n get: function get () {\n if (!availabilities) {\n var intlDefined = typeof Intl !== 'undefined';\n availabilities = {\n dateTimeFormat: intlDefined && typeof Intl.DateTimeFormat !== 'undefined',\n numberFormat: intlDefined && typeof Intl.NumberFormat !== 'undefined'\n };\n }\n\n return availabilities\n }\n});\n\nVueI18n.install = install;\nVueI18n.version = '8.24.1';\n\nexport default VueI18n;\n","/*!\n * clipboard.js v2.0.6\n * https://clipboardjs.com/\n * \n * Licensed MIT © Zeno Rocha\n */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ClipboardJS\"] = factory();\n\telse\n\t\troot[\"ClipboardJS\"] = factory();\n})(this, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// define __esModule on exports\n/******/ \t__webpack_require__.r = function(exports) {\n/******/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t}\n/******/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t};\n/******/\n/******/ \t// create a fake namespace object\n/******/ \t// mode & 1: value is a module id, require it\n/******/ \t// mode & 2: merge all properties of value into the ns\n/******/ \t// mode & 4: return value when already ns object\n/******/ \t// mode & 8|1: behave like require\n/******/ \t__webpack_require__.t = function(value, mode) {\n/******/ \t\tif(mode & 1) value = __webpack_require__(value);\n/******/ \t\tif(mode & 8) return value;\n/******/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/******/ \t\tvar ns = Object.create(null);\n/******/ \t\t__webpack_require__.r(ns);\n/******/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/******/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/******/ \t\treturn ns;\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 6);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports) {\n\nfunction select(element) {\n var selectedText;\n\n if (element.nodeName === 'SELECT') {\n element.focus();\n\n selectedText = element.value;\n }\n else if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {\n var isReadOnly = element.hasAttribute('readonly');\n\n if (!isReadOnly) {\n element.setAttribute('readonly', '');\n }\n\n element.select();\n element.setSelectionRange(0, element.value.length);\n\n if (!isReadOnly) {\n element.removeAttribute('readonly');\n }\n\n selectedText = element.value;\n }\n else {\n if (element.hasAttribute('contenteditable')) {\n element.focus();\n }\n\n var selection = window.getSelection();\n var range = document.createRange();\n\n range.selectNodeContents(element);\n selection.removeAllRanges();\n selection.addRange(range);\n\n selectedText = selection.toString();\n }\n\n return selectedText;\n}\n\nmodule.exports = select;\n\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports) {\n\nfunction E () {\n // Keep this empty so it's easier to inherit from\n // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n}\n\nE.prototype = {\n on: function (name, callback, ctx) {\n var e = this.e || (this.e = {});\n\n (e[name] || (e[name] = [])).push({\n fn: callback,\n ctx: ctx\n });\n\n return this;\n },\n\n once: function (name, callback, ctx) {\n var self = this;\n function listener () {\n self.off(name, listener);\n callback.apply(ctx, arguments);\n };\n\n listener._ = callback\n return this.on(name, listener, ctx);\n },\n\n emit: function (name) {\n var data = [].slice.call(arguments, 1);\n var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n var i = 0;\n var len = evtArr.length;\n\n for (i; i < len; i++) {\n evtArr[i].fn.apply(evtArr[i].ctx, data);\n }\n\n return this;\n },\n\n off: function (name, callback) {\n var e = this.e || (this.e = {});\n var evts = e[name];\n var liveEvents = [];\n\n if (evts && callback) {\n for (var i = 0, len = evts.length; i < len; i++) {\n if (evts[i].fn !== callback && evts[i].fn._ !== callback)\n liveEvents.push(evts[i]);\n }\n }\n\n // Remove event from queue to prevent memory leak\n // Suggested by https://github.com/lazd\n // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n\n (liveEvents.length)\n ? e[name] = liveEvents\n : delete e[name];\n\n return this;\n }\n};\n\nmodule.exports = E;\nmodule.exports.TinyEmitter = E;\n\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar is = __webpack_require__(3);\nvar delegate = __webpack_require__(4);\n\n/**\n * Validates all params and calls the right\n * listener function based on its target type.\n *\n * @param {String|HTMLElement|HTMLCollection|NodeList} target\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listen(target, type, callback) {\n if (!target && !type && !callback) {\n throw new Error('Missing required arguments');\n }\n\n if (!is.string(type)) {\n throw new TypeError('Second argument must be a String');\n }\n\n if (!is.fn(callback)) {\n throw new TypeError('Third argument must be a Function');\n }\n\n if (is.node(target)) {\n return listenNode(target, type, callback);\n }\n else if (is.nodeList(target)) {\n return listenNodeList(target, type, callback);\n }\n else if (is.string(target)) {\n return listenSelector(target, type, callback);\n }\n else {\n throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList');\n }\n}\n\n/**\n * Adds an event listener to a HTML element\n * and returns a remove listener function.\n *\n * @param {HTMLElement} node\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNode(node, type, callback) {\n node.addEventListener(type, callback);\n\n return {\n destroy: function() {\n node.removeEventListener(type, callback);\n }\n }\n}\n\n/**\n * Add an event listener to a list of HTML elements\n * and returns a remove listener function.\n *\n * @param {NodeList|HTMLCollection} nodeList\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNodeList(nodeList, type, callback) {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.addEventListener(type, callback);\n });\n\n return {\n destroy: function() {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.removeEventListener(type, callback);\n });\n }\n }\n}\n\n/**\n * Add an event listener to a selector\n * and returns a remove listener function.\n *\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenSelector(selector, type, callback) {\n return delegate(document.body, selector, type, callback);\n}\n\nmodule.exports = listen;\n\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports) {\n\n/**\n * Check if argument is a HTML element.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.node = function(value) {\n return value !== undefined\n && value instanceof HTMLElement\n && value.nodeType === 1;\n};\n\n/**\n * Check if argument is a list of HTML elements.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.nodeList = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return value !== undefined\n && (type === '[object NodeList]' || type === '[object HTMLCollection]')\n && ('length' in value)\n && (value.length === 0 || exports.node(value[0]));\n};\n\n/**\n * Check if argument is a string.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.string = function(value) {\n return typeof value === 'string'\n || value instanceof String;\n};\n\n/**\n * Check if argument is a function.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.fn = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return type === '[object Function]';\n};\n\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar closest = __webpack_require__(5);\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction _delegate(element, selector, type, callback, useCapture) {\n var listenerFn = listener.apply(this, arguments);\n\n element.addEventListener(type, listenerFn, useCapture);\n\n return {\n destroy: function() {\n element.removeEventListener(type, listenerFn, useCapture);\n }\n }\n}\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element|String|Array} [elements]\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction delegate(elements, selector, type, callback, useCapture) {\n // Handle the regular Element usage\n if (typeof elements.addEventListener === 'function') {\n return _delegate.apply(null, arguments);\n }\n\n // Handle Element-less usage, it defaults to global delegation\n if (typeof type === 'function') {\n // Use `document` as the first parameter, then apply arguments\n // This is a short way to .unshift `arguments` without running into deoptimizations\n return _delegate.bind(null, document).apply(null, arguments);\n }\n\n // Handle Selector-based usage\n if (typeof elements === 'string') {\n elements = document.querySelectorAll(elements);\n }\n\n // Handle Array-like based usage\n return Array.prototype.map.call(elements, function (element) {\n return _delegate(element, selector, type, callback, useCapture);\n });\n}\n\n/**\n * Finds closest match and invokes callback.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Function}\n */\nfunction listener(element, selector, type, callback) {\n return function(e) {\n e.delegateTarget = closest(e.target, selector);\n\n if (e.delegateTarget) {\n callback.call(element, e);\n }\n }\n}\n\nmodule.exports = delegate;\n\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports) {\n\nvar DOCUMENT_NODE_TYPE = 9;\n\n/**\n * A polyfill for Element.matches()\n */\nif (typeof Element !== 'undefined' && !Element.prototype.matches) {\n var proto = Element.prototype;\n\n proto.matches = proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector;\n}\n\n/**\n * Finds the closest parent that matches a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @return {Function}\n */\nfunction closest (element, selector) {\n while (element && element.nodeType !== DOCUMENT_NODE_TYPE) {\n if (typeof element.matches === 'function' &&\n element.matches(selector)) {\n return element;\n }\n element = element.parentNode;\n }\n}\n\nmodule.exports = closest;\n\n\n/***/ }),\n/* 6 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n\n// EXTERNAL MODULE: ./node_modules/select/src/select.js\nvar src_select = __webpack_require__(0);\nvar select_default = /*#__PURE__*/__webpack_require__.n(src_select);\n\n// CONCATENATED MODULE: ./src/clipboard-action.js\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n\n\n/**\n * Inner class which performs selection from either `text` or `target`\n * properties and then executes copy or cut operations.\n */\n\nvar clipboard_action_ClipboardAction = function () {\n /**\n * @param {Object} options\n */\n function ClipboardAction(options) {\n _classCallCheck(this, ClipboardAction);\n\n this.resolveOptions(options);\n this.initSelection();\n }\n\n /**\n * Defines base properties passed from constructor.\n * @param {Object} options\n */\n\n\n _createClass(ClipboardAction, [{\n key: 'resolveOptions',\n value: function resolveOptions() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n this.action = options.action;\n this.container = options.container;\n this.emitter = options.emitter;\n this.target = options.target;\n this.text = options.text;\n this.trigger = options.trigger;\n\n this.selectedText = '';\n }\n\n /**\n * Decides which selection strategy is going to be applied based\n * on the existence of `text` and `target` properties.\n */\n\n }, {\n key: 'initSelection',\n value: function initSelection() {\n if (this.text) {\n this.selectFake();\n } else if (this.target) {\n this.selectTarget();\n }\n }\n\n /**\n * Creates a fake textarea element, sets its value from `text` property,\n * and makes a selection on it.\n */\n\n }, {\n key: 'selectFake',\n value: function selectFake() {\n var _this = this;\n\n var isRTL = document.documentElement.getAttribute('dir') == 'rtl';\n\n this.removeFake();\n\n this.fakeHandlerCallback = function () {\n return _this.removeFake();\n };\n this.fakeHandler = this.container.addEventListener('click', this.fakeHandlerCallback) || true;\n\n this.fakeElem = document.createElement('textarea');\n // Prevent zooming on iOS\n this.fakeElem.style.fontSize = '12pt';\n // Reset box model\n this.fakeElem.style.border = '0';\n this.fakeElem.style.padding = '0';\n this.fakeElem.style.margin = '0';\n // Move element out of screen horizontally\n this.fakeElem.style.position = 'absolute';\n this.fakeElem.style[isRTL ? 'right' : 'left'] = '-9999px';\n // Move element to the same position vertically\n var yPosition = window.pageYOffset || document.documentElement.scrollTop;\n this.fakeElem.style.top = yPosition + 'px';\n\n this.fakeElem.setAttribute('readonly', '');\n this.fakeElem.value = this.text;\n\n this.container.appendChild(this.fakeElem);\n\n this.selectedText = select_default()(this.fakeElem);\n this.copyText();\n }\n\n /**\n * Only removes the fake element after another click event, that way\n * a user can hit `Ctrl+C` to copy because selection still exists.\n */\n\n }, {\n key: 'removeFake',\n value: function removeFake() {\n if (this.fakeHandler) {\n this.container.removeEventListener('click', this.fakeHandlerCallback);\n this.fakeHandler = null;\n this.fakeHandlerCallback = null;\n }\n\n if (this.fakeElem) {\n this.container.removeChild(this.fakeElem);\n this.fakeElem = null;\n }\n }\n\n /**\n * Selects the content from element passed on `target` property.\n */\n\n }, {\n key: 'selectTarget',\n value: function selectTarget() {\n this.selectedText = select_default()(this.target);\n this.copyText();\n }\n\n /**\n * Executes the copy operation based on the current selection.\n */\n\n }, {\n key: 'copyText',\n value: function copyText() {\n var succeeded = void 0;\n\n try {\n succeeded = document.execCommand(this.action);\n } catch (err) {\n succeeded = false;\n }\n\n this.handleResult(succeeded);\n }\n\n /**\n * Fires an event based on the copy operation result.\n * @param {Boolean} succeeded\n */\n\n }, {\n key: 'handleResult',\n value: function handleResult(succeeded) {\n this.emitter.emit(succeeded ? 'success' : 'error', {\n action: this.action,\n text: this.selectedText,\n trigger: this.trigger,\n clearSelection: this.clearSelection.bind(this)\n });\n }\n\n /**\n * Moves focus away from `target` and back to the trigger, removes current selection.\n */\n\n }, {\n key: 'clearSelection',\n value: function clearSelection() {\n if (this.trigger) {\n this.trigger.focus();\n }\n document.activeElement.blur();\n window.getSelection().removeAllRanges();\n }\n\n /**\n * Sets the `action` to be performed which can be either 'copy' or 'cut'.\n * @param {String} action\n */\n\n }, {\n key: 'destroy',\n\n\n /**\n * Destroy lifecycle.\n */\n value: function destroy() {\n this.removeFake();\n }\n }, {\n key: 'action',\n set: function set() {\n var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'copy';\n\n this._action = action;\n\n if (this._action !== 'copy' && this._action !== 'cut') {\n throw new Error('Invalid \"action\" value, use either \"copy\" or \"cut\"');\n }\n }\n\n /**\n * Gets the `action` property.\n * @return {String}\n */\n ,\n get: function get() {\n return this._action;\n }\n\n /**\n * Sets the `target` property using an element\n * that will be have its content copied.\n * @param {Element} target\n */\n\n }, {\n key: 'target',\n set: function set(target) {\n if (target !== undefined) {\n if (target && (typeof target === 'undefined' ? 'undefined' : _typeof(target)) === 'object' && target.nodeType === 1) {\n if (this.action === 'copy' && target.hasAttribute('disabled')) {\n throw new Error('Invalid \"target\" attribute. Please use \"readonly\" instead of \"disabled\" attribute');\n }\n\n if (this.action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) {\n throw new Error('Invalid \"target\" attribute. You can\\'t cut text from elements with \"readonly\" or \"disabled\" attributes');\n }\n\n this._target = target;\n } else {\n throw new Error('Invalid \"target\" value, use a valid Element');\n }\n }\n }\n\n /**\n * Gets the `target` property.\n * @return {String|HTMLElement}\n */\n ,\n get: function get() {\n return this._target;\n }\n }]);\n\n return ClipboardAction;\n}();\n\n/* harmony default export */ var clipboard_action = (clipboard_action_ClipboardAction);\n// EXTERNAL MODULE: ./node_modules/tiny-emitter/index.js\nvar tiny_emitter = __webpack_require__(1);\nvar tiny_emitter_default = /*#__PURE__*/__webpack_require__.n(tiny_emitter);\n\n// EXTERNAL MODULE: ./node_modules/good-listener/src/listen.js\nvar listen = __webpack_require__(2);\nvar listen_default = /*#__PURE__*/__webpack_require__.n(listen);\n\n// CONCATENATED MODULE: ./src/clipboard.js\nvar clipboard_typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar clipboard_createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction clipboard_classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n\n\n\n\n/**\n * Base class which takes one or more elements, adds event listeners to them,\n * and instantiates a new `ClipboardAction` on each click.\n */\n\nvar clipboard_Clipboard = function (_Emitter) {\n _inherits(Clipboard, _Emitter);\n\n /**\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n * @param {Object} options\n */\n function Clipboard(trigger, options) {\n clipboard_classCallCheck(this, Clipboard);\n\n var _this = _possibleConstructorReturn(this, (Clipboard.__proto__ || Object.getPrototypeOf(Clipboard)).call(this));\n\n _this.resolveOptions(options);\n _this.listenClick(trigger);\n return _this;\n }\n\n /**\n * Defines if attributes would be resolved using internal setter functions\n * or custom functions that were passed in the constructor.\n * @param {Object} options\n */\n\n\n clipboard_createClass(Clipboard, [{\n key: 'resolveOptions',\n value: function resolveOptions() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n this.action = typeof options.action === 'function' ? options.action : this.defaultAction;\n this.target = typeof options.target === 'function' ? options.target : this.defaultTarget;\n this.text = typeof options.text === 'function' ? options.text : this.defaultText;\n this.container = clipboard_typeof(options.container) === 'object' ? options.container : document.body;\n }\n\n /**\n * Adds a click event listener to the passed trigger.\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n */\n\n }, {\n key: 'listenClick',\n value: function listenClick(trigger) {\n var _this2 = this;\n\n this.listener = listen_default()(trigger, 'click', function (e) {\n return _this2.onClick(e);\n });\n }\n\n /**\n * Defines a new `ClipboardAction` on each click event.\n * @param {Event} e\n */\n\n }, {\n key: 'onClick',\n value: function onClick(e) {\n var trigger = e.delegateTarget || e.currentTarget;\n\n if (this.clipboardAction) {\n this.clipboardAction = null;\n }\n\n this.clipboardAction = new clipboard_action({\n action: this.action(trigger),\n target: this.target(trigger),\n text: this.text(trigger),\n container: this.container,\n trigger: trigger,\n emitter: this\n });\n }\n\n /**\n * Default `action` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: 'defaultAction',\n value: function defaultAction(trigger) {\n return getAttributeValue('action', trigger);\n }\n\n /**\n * Default `target` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: 'defaultTarget',\n value: function defaultTarget(trigger) {\n var selector = getAttributeValue('target', trigger);\n\n if (selector) {\n return document.querySelector(selector);\n }\n }\n\n /**\n * Returns the support of the given action, or all actions if no action is\n * given.\n * @param {String} [action]\n */\n\n }, {\n key: 'defaultText',\n\n\n /**\n * Default `text` lookup function.\n * @param {Element} trigger\n */\n value: function defaultText(trigger) {\n return getAttributeValue('text', trigger);\n }\n\n /**\n * Destroy lifecycle.\n */\n\n }, {\n key: 'destroy',\n value: function destroy() {\n this.listener.destroy();\n\n if (this.clipboardAction) {\n this.clipboardAction.destroy();\n this.clipboardAction = null;\n }\n }\n }], [{\n key: 'isSupported',\n value: function isSupported() {\n var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['copy', 'cut'];\n\n var actions = typeof action === 'string' ? [action] : action;\n var support = !!document.queryCommandSupported;\n\n actions.forEach(function (action) {\n support = support && !!document.queryCommandSupported(action);\n });\n\n return support;\n }\n }]);\n\n return Clipboard;\n}(tiny_emitter_default.a);\n\n/**\n * Helper function to retrieve attribute value.\n * @param {String} suffix\n * @param {Element} element\n */\n\n\nfunction getAttributeValue(suffix, element) {\n var attribute = 'data-clipboard-' + suffix;\n\n if (!element.hasAttribute(attribute)) {\n return;\n }\n\n return element.getAttribute(attribute);\n}\n\n/* harmony default export */ var clipboard = __webpack_exports__[\"default\"] = (clipboard_Clipboard);\n\n/***/ })\n/******/ ])[\"default\"];\n});","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\nmodule.exports = {\n\t//token\n\tLOGIN_STATUS: 'LOGIN_STATUS_TOKEN',\n\t//uid\n\tUID:'UID',\n\t//用户信息\n\tUSER_INFO: 'USER_INFO',\n\t//token过期时间\n\tEXPIRES_TIME: 'EXPIRES_TIME',\n\t//微信登录\n\tWX_AUTH: 'WX_AUTH',\n\t//公众号登录code\n\tSTATE_KEY: 'wx_authorize_state',\n\t//登录类型\n\tLOGINTYPE: 'loginType',\n\t//登录跳转地址\n\tBACK_URL: 'login_back_url',\n\t//小程序登录状态code\n\tSTATE_R_KEY: 'roution_authorize_state',\n\t//logo 地址\n\tLOGO_URL: 'LOGO_URL',\n\t//模板缓存\n\tSUBSCRIBE_MESSAGE: 'SUBSCRIBE_MESSAGE',\n\n\tTIPS_KEY: 'TIPS_KEY',\n\n\tSPREAD: 'spread',\n\t//缓存经度\n\tCACHE_LONGITUDE: 'LONGITUDE',\n\t//缓存纬度\n\tCACHE_LATITUDE: 'LATITUDE',\n}\n","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\nimport {\n\tEXPIRE\n} from '../config/app';\n\nclass Cache {\n\n\tconstructor(handler) {\n\t\tthis.cacheSetHandler = uni.setStorageSync;\n\t\tthis.cacheGetHandler = uni.getStorageSync;\n\t\tthis.cacheClearHandler = uni.removeStorageSync;\n\t\tthis.cacheExpire = 'UNI-APP-CRMEB:TAG';\n\t\tthis.clearOverdue();\n\t}\n\n\t/**\n\t * 获取当前时间戳\n\t */\n\ttime() {\n\t\treturn Math.round(new Date() / 1000);\n\t}\n\t\n\t/**\n\t * 字符串转时间戳\n\t * @param {Object} expiresTime\n\t */\n\tstrTotime(expiresTime){\n\t\tlet expires_time = expiresTime.substring(0, 19);\n\t\texpires_time = expires_time.replace(/-/g, '/');\n\t\treturn Math.round(new Date(expires_time).getTime() / 1000);\n\t}\n\t\n\n\t/**\n\t * 设置过期时间缓存\n\t * @param {Object} key\n\t * @param {Object} expire\n\t */\n\tsetExpireCaheTag(key, expire) {\n\t\texpire = expire !== undefined ? expire : EXPIRE;\n\t\tif (typeof expire === 'number') {\n\t\t\tlet tag = this.cacheGetHandler(this.cacheExpire), newTag = [],newKeys = [];\n\t\t\tif (typeof tag === 'object' && tag.length) {\n\t\t\t\tnewTag = tag.map(item => {\n\t\t\t\t\tnewKeys.push(item.key);\n\t\t\t\t\tif (item.key === key) {\n\t\t\t\t\t\titem.expire = expire === 0 ? 0 : this.time() + expire;\n\t\t\t\t\t}\n\t\t\t\t\treturn item;\n\t\t\t\t});\n\t\t\t} \n\t\t\tif (!newKeys.length || newKeys.indexOf(key) === -1) {\n\t\t\t\tnewTag.push({\n\t\t\t\t\tkey: key,\n\t\t\t\t\texpire: expire === 0 ? 0 : this.time() + expire\n\t\t\t\t});\n\t\t\t}\n\t\t\tthis.cacheSetHandler(this.cacheExpire, newTag);\n\t\t}\n\t}\n\n\t/**\n\t * 缓存是否过期,过期自动删除\n\t * @param {Object} key\n\t * @param {Object} $bool true = 删除,false = 不删除\n\t */\n\tgetExpireCahe(key, $bool) {\n\t\ttry {\n\t\t\tlet tag = this.cacheGetHandler(this.cacheExpire),time = 0,index = false;\n\t\t\tif (typeof tag === 'object' && tag.length) {\n\t\t\t\ttag.map((item,i) => {\n\t\t\t\t\tif(item.key === key){\n\t\t\t\t\t\ttime = item.expire\n\t\t\t\t\t\tindex = i\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tif (time) {\n\t\t\t\t\tlet newTime = parseInt(time);\n\t\t\t\t\tif (time && time < this.time() && !Number.isNaN(newTime)) {\n\t\t\t\t\t\tif ($bool === undefined || $bool === true) {\n\t\t\t\t\t\t\tthis.cacheClearHandler(key);\n\t\t\t\t\t\t\tif(index !== false){\n\t\t\t\t\t\t\t\ttag.splice(index,1)\n\t\t\t\t\t\t\t\tthis.cacheClearHandler(this.cacheExpire,tag);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t} else\n\t\t\t\t\t\treturn true;\n\t\t\t\t} else {\n\t\t\t\t\treturn !!this.cacheGetHandler(key);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t} catch (e) {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * 设置缓存\n\t * @param {Object} key\n\t * @param {Object} data\n\t */\n\tset(key, data, expire) {\n\t\tif (data === undefined) {\n\t\t\treturn true;\n\t\t}\n\t\tif (typeof data === 'object')\n\t\t\tdata = JSON.stringify(data);\n\t\ttry {\n\t\t\tthis.setExpireCaheTag(key, expire);\n\t\t\treturn this.cacheSetHandler(key, data);\n\t\t} catch (e) {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * 检测缓存是否存在\n\t * @param {Object} key\n\t */\n\thas(checkwhethethecacheexists) {\n\t\tthis.clearOverdue();\n\t\treturn this.getExpireCahe(checkwhethethecacheexists);\n\t}\n\n\t/**\n\t * 获取缓存\n\t * @param {Object} key\n\t * @param {Object} $default\n\t * @param {Object} expire\n\t */\n\tget(key, $default, expire) {\n\t\tthis.clearOverdue();\n\t\ttry {\n\t\t\tlet isBe = this.getExpireCahe(key);\n\t\t\tlet data = this.cacheGetHandler(key);\n\t\t\tif (data && isBe) {\n\t\t\t\tif (typeof $default === 'boolean')\n\t\t\t\t\treturn JSON.parse(data);\n\t\t\t\telse\n\t\t\t\t\treturn data;\n\t\t\t} else {\n\t\t\t\tif (typeof $default === 'function') {\n\t\t\t\t\tlet value = $default();\n\t\t\t\t\tthis.set(key, value, expire);\n\t\t\t\t\treturn value;\n\t\t\t\t} else {\n\t\t\t\t\tthis.set(key, $default, expire);\n\t\t\t\t\treturn $default;\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (e) {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\t/**\n\t * 删除缓存\n\t * @param {Object} key\n\t */\n\tclear(key) {\n\t\ttry {\n\t\t\tlet cahceValue = this.cacheGetHandler(this.cacheExpire),\n\t\t\t\tindex = false;\n\t\t\tif (cahceValue && typeof cahceValue === 'object' && cahceValue.length) {\n\t\t\t\tcahceValue.map((item, i) => {\n\t\t\t\t\tif (item.key === key) {\n\t\t\t\t\t\tindex = i;\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tif (index !== false) {\n\t\t\t\t\tcahceValue.splice(index, 1);\n\t\t\t\t}\n\t\t\t\tthis.cacheSetHandler(this.cacheExpire, cahceValue);\n\t\t\t}\n\t\t\treturn this.cacheClearHandler(key);\n\t\t} catch (e) {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * 清除过期缓存\n\t */\n\tclearOverdue() {\n\t\tlet cahceValue = this.cacheGetHandler(this.cacheExpire),\n\t\t\ttime = this.time(),\n\t\t\tnewBeOverdueValue = [],\n\t\t\tnewTagValue = [];\n\n\t\tif (cahceValue && typeof cahceValue === 'object' && cahceValue.length) {\n\t\t\tcahceValue.map(item => {\n\t\t\t\tif (item) {\n\t\t\t\t\tif ((item.expire !== undefined && item.expire > time) || item.expire === 0) {\n\t\t\t\t\t\tnewTagValue.push(item);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tnewBeOverdueValue.push(item.key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t\t//保存没有过期的缓存标签\n\t\tif (newTagValue.length !== cahceValue.length) {\n\t\t\tthis.cacheSetHandler(this.cacheExpire, newTagValue);\n\t\t}\n\t\t//删除过期缓存\n\t\tnewBeOverdueValue.forEach(k => {\n\t\t\tthis.cacheClearHandler(k);\n\t\t})\n\t}\n}\n\n\nexport default new Cache;\n","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\nexport default {\n\tnamespaced: true,\n\tstate: {\n\t\t// 搜索关键字\n\t\thotWord: []\n\t},\n\tgetters: {},\n\tmutations: {\n\t\tsetHotWord(state, fastsearchforhotwords) {\n\t\t\tstate.hotWord = fastsearchforhotwords;\n\t\t}\n\t}\n}\n","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\nexport default {\n\tnamespaced: true,\n\tstate: {\n\t\t// 搜索关键字\n\t\tindexDatas: {},\n\t\tcartNum: 0\n\t},\n\tgetters: {},\n\tmutations: {\n\t\tsetIndexData(state, data) {\n\t\t\tstate.indexDatas = data;\n\t\t},\n\t\tsetCartNum(state, data) {\n\t\t\tstate.cartNum = data;\n\t\t}\n\t}\n}\n","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\nexport default {\n token: state => state.app.token,\n isLogin: state => !!state.app.token,\n backgroundColor: state => state.app.backgroundColor,\n userInfo: state => state.app.userInfo || {},\n\tuid:state => state.app.uid,\n\thomeActive: state => state.app.homeActive,\n\thome: state => state.app.home,\n\tcartNum: state => state.indexData.cartNum,\n};\n// export default {\n// token: state => 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJrYWlmYS5jcm1lYi5uZXQiLCJhdWQiOiJrYWlmYS5jcm1lYi5uZXQiLCJpYXQiOjE1NzcwODM1MzQsIm5iZiI6MTU3NzA4MzUzNCwiZXhwIjoxNTc3MDk0MzM0LCJqdGkiOnsiaWQiOjExMCwidHlwZSI6InVzZXIifX0.U-i1pbdRjyXI1gr79Uq2XBPZ89T8f5Ai9jwrR8woTwE',\n// isLogin: state => true,\n// backgroundColor: state => state.app.backgroundColor,\n// userInfo: state => state.app.userInfo || {}\n// };\n","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\n\n/**\n * 验证小数点后两位及多个小数\n * money 金额\n*/ \nexport function isMoney(money) {\n var reg = /(^[1-9]([0-9]+)?(\\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\\.[0-9]([0-9])?$)/\n if (reg.test(money)) {\n return true\n } else {\n return false\n }\n}\n\n/**\n * 验证手机号码\n * money 金额\n*/ \nexport function checkPhone(c2543fff3bfa6f144c2f06a7de6cd10c0b650cae) {\n var reg = /^1(3|4|5|6|7|8|9)\\d{9}$/\n if (reg.test(c2543fff3bfa6f144c2f06a7de6cd10c0b650cae)) {\n return true\n } else {\n return false\n }\n}\n\n/**\n * 函数防抖 (只执行最后一次点击)\n * @param fn\n * @param delay\n * @returns {Function}\n * @constructor\n */\nexport const Debounce = (fn, t) => {\n const delay = t || 500\n let timer\n return function() {\n const args = arguments\n if (timer) {\n clearTimeout(timer)\n }\n timer = setTimeout(() => {\n timer = null\n fn.apply(this, args)\n }, delay)\n }\n}\n/**\n * 函数节流\n * @param fn\n * @param interval\n * @returns {Function}\n * @constructor\n */\nexport const Throttle = (fn, t) => {\n let last\n let timer\n const interval = t || 500\n return function() {\n const args = arguments\n const now = +new Date()\n if (last && now - last < interval) {\n clearTimeout(timer)\n timer = setTimeout(() => {\n last = now\n fn.apply(this, args)\n }, interval)\n } else {\n last = now\n fn.apply(this, args)\n }\n }\n}\n\n\n\n","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\nimport store from '../store';\nimport {\n\tcheckLogin\n} from './login';\nimport {\n\tlogin,\n\troutineLogin,\n\tsilenceAuth\n} from '../api/public';\nimport Cache from '../utils/cache';\nimport {\n\tSTATE_R_KEY,\n\tUSER_INFO,\n\tEXPIRES_TIME,\n\tLOGIN_STATUS\n} from './../config/cache';\nimport {\n\tmapGetters\n} from \"vuex\";\nclass Routine {\n\n\tconstructor() {\n\t\tthis.scopeUserInfo = 'scope.userInfo';\n\t}\n\n\tasync getUserCode() {\n\t\tlet isAuth = await this.isAuth(),\n\t\t\tcode = '';\n\t\tif (isAuth)\n\t\t\tcode = await this.getCode();\n\t\treturn code;\n\t}\n\t// 小程序静默授权\n\t// silenceAuth(code) {\n\t// \tconst app = getApp();\n\t// \tlet that = this;\n\t// \tlet spread = app.globalData.spid ? app.globalData.spid : '';\n\t// \treturn new Promise((resolve, reject) => {\n\t// \t\tsilenceAuth({\n\t// \t\t\t\tcode: code,\n\t// \t\t\t\tspread_spid: spread,\n\t// \t\t\t\tspread_code: app.globalData.code\n\t// \t\t\t})\n\t// \t\t\t.then(res => {\n\t// \t\t\t\tif (res.data && res.data.token !== undefined) {\n\t// \t\t\t\t\tuni.hideLoading();\n\t// \t\t\t\t\tlet time = res.data.expires_time - Math.round(new Date() / 1000);\n\t// \t\t\t\t\tstore.commit('LOGIN', {\n\t// \t\t\t\t\t\ttoken: res.data.token,\n\t// \t\t\t\t\t\ttime: time\n\t// \t\t\t\t\t});\n\t// \t\t\t\t\tstore.commit('SETUID', res.data.userInfo.uid);\n\t// \t\t\t\t\tstore.commit('UPDATE_USERINFO', res.data.userInfo);\n\t// \t\t\t\t\tresolve(res)\n\t// \t\t\t\t} else {\n\t// \t\t\t\t\treject()\n\t// \t\t\t\t\tuni.navigateTo({\n\t// \t\t\t\t\t\turl: '/pages/users/wechat_login/index'\n\t// \t\t\t\t\t})\n\t// \t\t\t\t}\n\t// \t\t\t})\n\t// \t\t\t.catch(err => {\n\t// \t\t\t\treject(err)\n\t// \t\t\t});\n\t// \t})\n\t// }\n\t/**\n\t * 获取用户信息\n\t */\n\tgetUserInfo() {\n\t\tlet that = this,\n\t\t\tcode = this.getUserCode();\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tuni.getUserInfo({\n\t\t\t\tlang: 'zh_CN',\n\t\t\t\tsuccess(user) {\n\t\t\t\t\tif (code) user.code = code;\n\t\t\t\t\tresolve({\n\t\t\t\t\t\tuserInfo: user,\n\t\t\t\t\t\tislogin: false\n\t\t\t\t\t});\n\t\t\t\t},\n\t\t\t\tfail(res) {\n\t\t\t\t\treject(res);\n\t\t\t\t}\n\t\t\t})\n\t\t})\n\t}\n\n\t/**\n\t * 新版小程序获取用户信息 2021 4.13微信小程序开始正式启用\n\t */\n\tgetUserProfile(code) {\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tuni.getUserProfile({\n\t\t\t\tlang: 'zh_CN',\n\t\t\t\tdesc: '用于完善会员资料', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写\n\t\t\t\tsuccess(user) {\n\t\t\t\t\tif (code) user.code = code;\n\t\t\t\t\tresolve({\n\t\t\t\t\t\tuserInfo: user,\n\t\t\t\t\t\tislogin: false\n\t\t\t\t\t});\n\t\t\t\t},\n\t\t\t\tfail(res) {\n\t\t\t\t\treject(res);\n\t\t\t\t}\n\t\t\t})\n\t\t})\n\t}\n\n\t/**\n\t * 获取用户信息\n\t */\n\tauthorize() {\n\t\tlet that = this;\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tif (checkLogin())\n\t\t\t\treturn resolve({\n\t\t\t\t\tuserInfo: Cache.get(USER_INFO, true),\n\t\t\t\t\tislogin: true,\n\t\t\t\t});\n\t\t\tuni.authorize({\n\t\t\t\tscope: that.scopeUserInfo,\n\t\t\t\tsuccess() {\n\t\t\t\t\tresolve({\n\t\t\t\t\t\tislogin: false\n\t\t\t\t\t});\n\t\t\t\t},\n\t\t\t\tfail(res) {\n\t\t\t\t\treject(res);\n\t\t\t\t}\n\t\t\t})\n\t\t})\n\t}\n\n\tasync getCode() {\n\t\tlet provider = await this.getProvider();\n\t\treturn new Promise((resolve, reject) => {\n\t\t\t// if(Cache.has(STATE_R_KEY)){\n\t\t\t// \treturn resolve(Cache.get(STATE_R_KEY));\n\t\t\t// }\n\t\t\tuni.login({\n\t\t\t\tprovider: provider,\n\t\t\t\tsuccess(res) {\n\t\t\t\t\tif (res.code) Cache.set(STATE_R_KEY, res.code, 10800);\n\t\t\t\t\treturn resolve(res.code);\n\t\t\t\t},\n\t\t\t\tfail() {\n\t\t\t\t\treturn reject(null);\n\t\t\t\t}\n\t\t\t})\n\t\t})\n\t}\n\n\t/**\n\t * 获取服务供应商\n\t */\n\tgetProvider() {\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tuni.getProvider({\n\t\t\t\tservice: 'oauth',\n\t\t\t\tsuccess(res) {\n\t\t\t\t\tresolve(res.provider);\n\t\t\t\t},\n\t\t\t\tfail() {\n\t\t\t\t\tresolve(false);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * 是否授权\n\t */\n\tisAuth() {\n\t\tlet that = this;\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tuni.getSetting({\n\t\t\t\tsuccess(res) {\n\t\t\t\t\tif (!res.authSetting[that.scopeUserInfo]) {\n\t\t\t\t\t\tresolve(true)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresolve(true);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tfail() {\n\t\t\t\t\tresolve(false);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\tauthUserInfo(data) {\n\t\treturn new Promise((resolve, reject) => {\n\t\t\troutineLogin(data).then(res => {\n\t\t\t\tif (res.data.key !== undefined && res.data.key) {} else {\n\t\t\t\t\tstore.commit('UPDATE_USERINFO', res.data.userInfo);\n\t\t\t\t\tstore.commit('SETUID', res.data.userInfo.uid);\n\t\t\t\t\tCache.set(USER_INFO, res.data.userInfo);\n\t\t\t\t}\n\t\t\t\treturn resolve(res);\n\t\t\t}).catch(res => {\n\t\t\t\treturn reject(res);\n\t\t\t})\n\t\t})\n\t}\n}\n\nexport default new Routine();\n","// +----------------------------------------------------------------------\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\n// +----------------------------------------------------------------------\n// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.\n// +----------------------------------------------------------------------\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\n// +----------------------------------------------------------------------\n// | Author: CRMEB Team \n// +----------------------------------------------------------------------\n\nimport request from \"@/utils/request.js\";\nimport wechat from \"@/libs/wechat.js\";\n\n/**\n * 获取微信sdk配置\n * @returns {*}\n */\nexport function getWechatConfig() {\n\treturn request.get(\n\t\t\"wechat/config\", {\n\t\t\turl: wechat.signLink()\n\t\t}, {\n\t\t\tnoAuth: true\n\t\t}\n\t);\n}\n\n/**\n * 获取微信sdk配置\n * @returns {*}\n */\nexport function wechatAuth(code, spread, login_type) {\n\treturn request.get(\n\t\t\"wechat/auth\", {\n\t\t\tcode,\n\t\t\tspread,\n\t\t\tlogin_type\n\t\t}, {\n\t\t\tnoAuth: true\n\t\t}\n\t);\n}\n\n/**\n * 获取登录授权login\n * \n */\nexport function getLogo() {\n\treturn request.get('wechat/get_logo', {}, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 小程序用户登录\n * @param data object 小程序用户登陆信息\n */\nexport function login(data) {\n\treturn request.post(\"wechat/mp_auth\", data, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 静默授权\n * @param {Object} data\n */\nexport function silenceAuth(data) {\n\n\treturn request.get(\"v2/wechat/silence_auth\", data, {\n\t\tnoAuth: true\n\t});\n\n\n\n\n\n\n}\n\n/**\n * 分享\n * @returns {*}\n */\nexport function getShare() {\n\treturn request.get(\"share\", {}, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 获取关注海报\n * @returns {*}\n */\nexport function follow() {\n\treturn request.get(\"wechat/follow\", {}, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 获取图片base64\n * @retins {*}\n * */\nexport function imageBase64(image, code) {\n\treturn request.post(\n\t\t\"image_base64\", {\n\t\t\timage: image,\n\t\t\tcode: code\n\t\t}, {\n\t\t\tnoAuth: true\n\t\t}\n\t);\n}\n\n/**\n * 自动复制口令功能\n * @returns {*}\n */\nexport function copyWords() {\n\treturn request.get(\"copy_words\", {}, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 获取商城是否强制绑定手机号\n */\nexport function getShopConfig() {\n\treturn request.get('v2/bind_status', {}, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 小程序绑定手机号\n * @param {Object} data\n */\nexport function getUserPhone(data) {\n\treturn request.post('v2/auth_bindind_phone', data, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 小程序用户登录\n * @param data object 小程序用户登陆信息\n */\nexport function routineLogin(data) {\n\treturn request.get(\"v2/wechat/routine_auth\", data, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 获取微信sdk配置\n * @returns {*}\n */\nexport function wechatAuthV2(code, spread) {\n\treturn request.get(\n\t\t\"v2/wechat/auth\", {\n\t\t\tcode,\n\t\t\tspread\n\t\t}, {\n\t\t\tnoAuth: true\n\t\t}\n\t);\n}\n\n/**\n * 获取组件底部菜单\n * @param data object 获取组件底部菜单\n */\nexport function getNavigation(data) {\n\treturn request.get(\"navigation\", data, {\n\t\tnoAuth: true\n\t});\n}\nexport function getSubscribe() {\n\treturn request.get(\"subscribe\", {}, {\n\t\tnoAuth: true\n\t});\n}\n\n/**\n * 获取版本信息\n * @param 系统类型\n */\nexport function getUpdateInfo(type) {\n\treturn request.get(\"get_new_app/\" + type, {}, {\n\t\tnoAuth: true\n\t});\n}\n","/*!\n * Vue.js v2.6.11\n * (c) 2014-2022 Evan You\n * Released under the MIT License.\n */\n/* */\n\nvar emptyObject = Object.freeze({});\n\n// These helpers produce better VM code in JS engines due to their\n// explicitness and function inlining.\nfunction isUndef (v) {\n return v === undefined || v === null\n}\n\nfunction isDef (v) {\n return v !== undefined && v !== null\n}\n\nfunction isTrue (v) {\n return v === true\n}\n\nfunction isFalse (v) {\n return v === false\n}\n\n/**\n * Check if value is primitive.\n */\nfunction isPrimitive (value) {\n return (\n typeof value === 'string' ||\n typeof value === 'number' ||\n // $flow-disable-line\n typeof value === 'symbol' ||\n typeof value === 'boolean'\n )\n}\n\n/**\n * Quick object check - this is primarily used to tell\n * Objects from primitive values when we know the value\n * is a JSON-compliant type.\n */\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\n/**\n * Get the raw type string of a value, e.g., [object Object].\n */\nvar _toString = Object.prototype.toString;\n\nfunction toRawType (value) {\n return _toString.call(value).slice(8, -1)\n}\n\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nfunction isPlainObject (obj) {\n return _toString.call(obj) === '[object Object]'\n}\n\nfunction isRegExp (v) {\n return _toString.call(v) === '[object RegExp]'\n}\n\n/**\n * Check if val is a valid array index.\n */\nfunction isValidArrayIndex (val) {\n var n = parseFloat(String(val));\n return n >= 0 && Math.floor(n) === n && isFinite(val)\n}\n\nfunction isPromise (val) {\n return (\n isDef(val) &&\n typeof val.then === 'function' &&\n typeof val.catch === 'function'\n )\n}\n\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction toString (val) {\n return val == null\n ? ''\n : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString)\n ? JSON.stringify(val, null, 2)\n : String(val)\n}\n\n/**\n * Convert an input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber (val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n\n}\n\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap (\n str,\n expectsLowerCase\n) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase\n ? function (val) { return map[val.toLowerCase()]; }\n : function (val) { return map[val]; }\n}\n\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n\n/**\n * Check if an attribute is a reserved attribute.\n */\nvar isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');\n\n/**\n * Remove an item from an array.\n */\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\n/**\n * Check whether an object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n var cache = Object.create(null);\n return (function cachedFn (str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str))\n })\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })\n});\n\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n});\n\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /\\B([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str.replace(hyphenateRE, '-$1').toLowerCase()\n});\n\n/**\n * Simple bind polyfill for environments that do not support it,\n * e.g., PhantomJS 1.x. Technically, we don't need this anymore\n * since native bind is now performant enough in most browsers.\n * But removing it would mean breaking code that was able to run in\n * PhantomJS 1.x, so this must be kept for backward compatibility.\n */\n\n/* istanbul ignore next */\nfunction polyfillBind (fn, ctx) {\n function boundFn (a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx)\n }\n\n boundFn._length = fn.length;\n return boundFn\n}\n\nfunction nativeBind (fn, ctx) {\n return fn.bind(ctx)\n}\n\nvar bind = Function.prototype.bind\n ? nativeBind\n : polyfillBind;\n\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray (list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret\n}\n\n/**\n * Mix properties into target object.\n */\nfunction extend (to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to\n}\n\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject (arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res\n}\n\n/* eslint-disable no-unused-vars */\n\n/**\n * Perform no operation.\n * Stubbing args to make Flow happy without leaving useless transpiled code\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).\n */\nfunction noop (a, b, c) {}\n\n/**\n * Always return false.\n */\nvar no = function (a, b, c) { return false; };\n\n/* eslint-enable no-unused-vars */\n\n/**\n * Return the same value.\n */\nvar identity = function (_) { return _; };\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (a instanceof Date && b instanceof Date) {\n return a.getTime() === b.getTime()\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\n/**\n * Return the first index at which a loosely equal value can be\n * found in the array (if value is a plain object, the array must\n * contain an object of the same shape), or -1 if it is not present.\n */\nfunction looseIndexOf (arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val)) { return i }\n }\n return -1\n}\n\n/**\n * Ensure a function is called only once.\n */\nfunction once (fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn.apply(this, arguments);\n }\n }\n}\n\nvar ASSET_TYPES = [\n 'component',\n 'directive',\n 'filter'\n];\n\nvar LIFECYCLE_HOOKS = [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated',\n 'errorCaptured',\n 'serverPrefetch'\n];\n\n/* */\n\n\n\nvar config = ({\n /**\n * Option merge strategies (used in core/util/options)\n */\n // $flow-disable-line\n optionMergeStrategies: Object.create(null),\n\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n\n /**\n * Show production mode tip message on boot?\n */\n productionTip: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to enable devtools\n */\n devtools: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to record perf\n */\n performance: false,\n\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n\n /**\n * Custom user key aliases for v-on\n */\n // $flow-disable-line\n keyCodes: Object.create(null),\n\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: no,\n\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n\n /**\n * Perform updates asynchronously. Intended to be used by Vue Test Utils\n * This will significantly reduce performance if set to false.\n */\n async: true,\n\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: LIFECYCLE_HOOKS\n});\n\n/* */\n\n/**\n * unicode letters used for parsing html tags, component names and property paths.\n * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname\n * skipping \\u10000-\\uEFFFF due to it freezing up PhantomJS\n */\nvar unicodeRegExp = /a-zA-Z\\u00B7\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u203F-\\u2040\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD/;\n\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved (str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5F\n}\n\n/**\n * Define a property.\n */\nfunction def (obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n\n/**\n * Parse simple path.\n */\nvar bailRE = new RegExp((\"[^\" + (unicodeRegExp.source) + \".$_\\\\d]\"));\nfunction parsePath (path) {\n if (bailRE.test(path)) {\n return\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj) { return }\n obj = obj[segments[i]];\n }\n return obj\n }\n}\n\n/* */\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;\nvar weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nvar isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');\nvar isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');\nvar isChrome = UA && /chrome\\/\\d+/.test(UA) && !isEdge;\nvar isPhantomJS = UA && /phantomjs/.test(UA);\nvar isFF = UA && UA.match(/firefox\\/(\\d+)/);\n\n// Firefox has a \"watch\" function on Object.prototype...\nvar nativeWatch = ({}).watch;\nif (inBrowser) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', ({\n get: function get () {\n }\n })); // https://github.com/facebook/flow/issues/285\n window.addEventListener('test-passive', null, opts);\n } catch (e) {}\n}\n\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && !inWeex && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer = global['process'] && global['process'].env.VUE_ENV === 'server';\n } else {\n _isServer = false;\n }\n }\n return _isServer\n};\n\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\n/* istanbul ignore next */\nfunction isNative (Ctor) {\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString())\n}\n\nvar hasSymbol =\n typeof Symbol !== 'undefined' && isNative(Symbol) &&\n typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);\n\nvar _Set;\n/* istanbul ignore if */ // $flow-disable-line\nif (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n} else {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = /*@__PURE__*/(function () {\n function Set () {\n this.set = Object.create(null);\n }\n Set.prototype.has = function has (key) {\n return this.set[key] === true\n };\n Set.prototype.add = function add (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function clear () {\n this.set = Object.create(null);\n };\n\n return Set;\n }());\n}\n\n/* */\n\nvar warn = noop;\nvar tip = noop;\nvar generateComponentTrace = (noop); // work around flow check\nvar formatComponentName = (noop);\n\nif (process.env.NODE_ENV !== 'production') {\n var hasConsole = typeof console !== 'undefined';\n var classifyRE = /(?:^|[-_])(\\w)/g;\n var classify = function (str) { return str\n .replace(classifyRE, function (c) { return c.toUpperCase(); })\n .replace(/[-_]/g, ''); };\n\n warn = function (msg, vm) {\n var trace = vm ? generateComponentTrace(vm) : '';\n\n if (config.warnHandler) {\n config.warnHandler.call(null, msg, vm, trace);\n } else if (hasConsole && (!config.silent)) {\n console.error((\"[Vue warn]: \" + msg + trace));\n }\n };\n\n tip = function (msg, vm) {\n if (hasConsole && (!config.silent)) {\n console.warn(\"[Vue tip]: \" + msg + (\n vm ? generateComponentTrace(vm) : ''\n ));\n }\n };\n\n formatComponentName = function (vm, includeFile) {\n if (vm.$root === vm) {\n if (vm.$options && vm.$options.__file) { // fixed by xxxxxx\n return ('') + vm.$options.__file\n }\n return ''\n }\n var options = typeof vm === 'function' && vm.cid != null\n ? vm.options\n : vm._isVue\n ? vm.$options || vm.constructor.options\n : vm;\n var name = options.name || options._componentTag;\n var file = options.__file;\n if (!name && file) {\n var match = file.match(/([^/\\\\]+)\\.vue$/);\n name = match && match[1];\n }\n\n return (\n (name ? (\"<\" + (classify(name)) + \">\") : \"\") +\n (file && includeFile !== false ? (\" at \" + file) : '')\n )\n };\n\n var repeat = function (str, n) {\n var res = '';\n while (n) {\n if (n % 2 === 1) { res += str; }\n if (n > 1) { str += str; }\n n >>= 1;\n }\n return res\n };\n\n generateComponentTrace = function (vm) {\n if (vm._isVue && vm.$parent) {\n var tree = [];\n var currentRecursiveSequence = 0;\n while (vm && vm.$options.name !== 'PageBody') {\n if (tree.length > 0) {\n var last = tree[tree.length - 1];\n if (last.constructor === vm.constructor) {\n currentRecursiveSequence++;\n vm = vm.$parent;\n continue\n } else if (currentRecursiveSequence > 0) {\n tree[tree.length - 1] = [last, currentRecursiveSequence];\n currentRecursiveSequence = 0;\n }\n }\n !vm.$options.isReserved && tree.push(vm);\n vm = vm.$parent;\n }\n return '\\n\\nfound in\\n\\n' + tree\n .map(function (vm, i) { return (\"\" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)\n ? ((formatComponentName(vm[0])) + \"... (\" + (vm[1]) + \" recursive calls)\")\n : formatComponentName(vm))); })\n .join('\\n')\n } else {\n return (\"\\n\\n(found in \" + (formatComponentName(vm)) + \")\")\n }\n };\n}\n\n/* */\n\nvar uid = 0;\n\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n */\nvar Dep = function Dep () {\n this.id = uid++;\n this.subs = [];\n};\n\nDep.prototype.addSub = function addSub (sub) {\n this.subs.push(sub);\n};\n\nDep.prototype.removeSub = function removeSub (sub) {\n remove(this.subs, sub);\n};\n\nDep.prototype.depend = function depend () {\n if (Dep.SharedObject.target) {\n Dep.SharedObject.target.addDep(this);\n }\n};\n\nDep.prototype.notify = function notify () {\n // stabilize the subscriber list first\n var subs = this.subs.slice();\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n // subs aren't sorted in scheduler if not running async\n // we need to sort them now to make sure they fire in correct\n // order\n subs.sort(function (a, b) { return a.id - b.id; });\n }\n for (var i = 0, l = subs.length; i < l; i++) {\n subs[i].update();\n }\n};\n\n// The current target watcher being evaluated.\n// This is globally unique because only one watcher\n// can be evaluated at a time.\n// fixed by xxxxxx (nvue shared vuex)\n/* eslint-disable no-undef */\nDep.SharedObject = {};\nDep.SharedObject.target = null;\nDep.SharedObject.targetStack = [];\n\nfunction pushTarget (target) {\n Dep.SharedObject.targetStack.push(target);\n Dep.SharedObject.target = target;\n Dep.target = target;\n}\n\nfunction popTarget () {\n Dep.SharedObject.targetStack.pop();\n Dep.SharedObject.target = Dep.SharedObject.targetStack[Dep.SharedObject.targetStack.length - 1];\n Dep.target = Dep.SharedObject.target;\n}\n\n/* */\n\nvar VNode = function VNode (\n tag,\n data,\n children,\n text,\n elm,\n context,\n componentOptions,\n asyncFactory\n) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.fnContext = undefined;\n this.fnOptions = undefined;\n this.fnScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n};\n\nvar prototypeAccessors = { child: { configurable: true } };\n\n// DEPRECATED: alias for componentInstance for backwards compat.\n/* istanbul ignore next */\nprototypeAccessors.child.get = function () {\n return this.componentInstance\n};\n\nObject.defineProperties( VNode.prototype, prototypeAccessors );\n\nvar createEmptyVNode = function (text) {\n if ( text === void 0 ) text = '';\n\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node\n};\n\nfunction createTextVNode (val) {\n return new VNode(undefined, undefined, undefined, String(val))\n}\n\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode (vnode) {\n var cloned = new VNode(\n vnode.tag,\n vnode.data,\n // #7975\n // clone children array to avoid mutating original in case of cloning\n // a child.\n vnode.children && vnode.children.slice(),\n vnode.text,\n vnode.elm,\n vnode.context,\n vnode.componentOptions,\n vnode.asyncFactory\n );\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.fnContext = vnode.fnContext;\n cloned.fnOptions = vnode.fnOptions;\n cloned.fnScopeId = vnode.fnScopeId;\n cloned.asyncMeta = vnode.asyncMeta;\n cloned.isCloned = true;\n return cloned\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\n\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);\n\nvar methodsToPatch = [\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n];\n\n/**\n * Intercept mutating methods and emit events\n */\nmethodsToPatch.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break\n case 'splice':\n inserted = args.slice(2);\n break\n }\n if (inserted) { ob.observeArray(inserted); }\n // notify change\n ob.dep.notify();\n return result\n });\n});\n\n/* */\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\n\n/**\n * In some cases we may want to disable observation inside a component's\n * update computation.\n */\nvar shouldObserve = true;\n\nfunction toggleObserving (value) {\n shouldObserve = value;\n}\n\n/**\n * Observer class that is attached to each observed\n * object. Once attached, the observer converts the target\n * object's property keys into getter/setters that\n * collect dependencies and dispatch updates.\n */\nvar Observer = function Observer (value) {\n this.value = value;\n this.dep = new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (Array.isArray(value)) {\n if (hasProto) {\n {// fixed by xxxxxx 微信小程序使用 plugins 之后,数组方法被直接挂载到了数组对象上,需要执行 copyAugment 逻辑\n if(value.push !== value.__proto__.push){\n copyAugment(value, arrayMethods, arrayKeys);\n } else {\n protoAugment(value, arrayMethods);\n }\n }\n } else {\n copyAugment(value, arrayMethods, arrayKeys);\n }\n this.observeArray(value);\n } else {\n this.walk(value);\n }\n};\n\n/**\n * Walk through all properties and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\nObserver.prototype.walk = function walk (obj) {\n var keys = Object.keys(obj);\n for (var i = 0; i < keys.length; i++) {\n defineReactive$$1(obj, keys[i]);\n }\n};\n\n/**\n * Observe a list of Array items.\n */\nObserver.prototype.observeArray = function observeArray (items) {\n for (var i = 0, l = items.length; i < l; i++) {\n observe(items[i]);\n }\n};\n\n// helpers\n\n/**\n * Augment a target Object or Array by intercepting\n * the prototype chain using __proto__\n */\nfunction protoAugment (target, src) {\n /* eslint-disable no-proto */\n target.__proto__ = src;\n /* eslint-enable no-proto */\n}\n\n/**\n * Augment a target Object or Array by defining\n * hidden properties.\n */\n/* istanbul ignore next */\nfunction copyAugment (target, src, keys) {\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n def(target, key, src[key]);\n }\n}\n\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe (value, asRootData) {\n if (!isObject(value) || value instanceof VNode) {\n return\n }\n var ob;\n if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n ob = value.__ob__;\n } else if (\n shouldObserve &&\n !isServerRendering() &&\n (Array.isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value._isVue\n ) {\n ob = new Observer(value);\n }\n if (asRootData && ob) {\n ob.vmCount++;\n }\n return ob\n}\n\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive$$1 (\n obj,\n key,\n val,\n customSetter,\n shallow\n) {\n var dep = new Dep();\n\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return\n }\n\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n var setter = property && property.set;\n if ((!getter || setter) && arguments.length === 2) {\n val = obj[key];\n }\n\n var childOb = !shallow && observe(val);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter () {\n var value = getter ? getter.call(obj) : val;\n if (Dep.SharedObject.target) { // fixed by xxxxxx\n dep.depend();\n if (childOb) {\n childOb.dep.depend();\n if (Array.isArray(value)) {\n dependArray(value);\n }\n }\n }\n return value\n },\n set: function reactiveSetter (newVal) {\n var value = getter ? getter.call(obj) : val;\n /* eslint-disable no-self-compare */\n if (newVal === value || (newVal !== newVal && value !== value)) {\n return\n }\n /* eslint-enable no-self-compare */\n if (process.env.NODE_ENV !== 'production' && customSetter) {\n customSetter();\n }\n // #7981: for accessor properties without setter\n if (getter && !setter) { return }\n if (setter) {\n setter.call(obj, newVal);\n } else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal);\n dep.notify();\n }\n });\n}\n\n/**\n * Set a property on an object. Adds the new property and\n * triggers change notification if the property doesn't\n * already exist.\n */\nfunction set (target, key, val) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot set reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n return val\n }\n if (key in target && !(key in Object.prototype)) {\n target[key] = val;\n return val\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.'\n );\n return val\n }\n if (!ob) {\n target[key] = val;\n return val\n }\n defineReactive$$1(ob.value, key, val);\n ob.dep.notify();\n return val\n}\n\n/**\n * Delete a property and trigger change if necessary.\n */\nfunction del (target, key) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot delete reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.'\n );\n return\n }\n if (!hasOwn(target, key)) {\n return\n }\n delete target[key];\n if (!ob) {\n return\n }\n ob.dep.notify();\n}\n\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray (value) {\n for (var e = (void 0), i = 0, l = value.length; i < l; i++) {\n e = value[i];\n e && e.__ob__ && e.__ob__.dep.depend();\n if (Array.isArray(e)) {\n dependArray(e);\n }\n }\n}\n\n/* */\n\n/**\n * Option overwriting strategies are functions that handle\n * how to merge a parent option value and a child option\n * value into the final value.\n */\nvar strats = config.optionMergeStrategies;\n\n/**\n * Options with restrictions\n */\nif (process.env.NODE_ENV !== 'production') {\n strats.el = strats.propsData = function (parent, child, vm, key) {\n if (!vm) {\n warn(\n \"option \\\"\" + key + \"\\\" can only be used during instance \" +\n 'creation with the `new` keyword.'\n );\n }\n return defaultStrat(parent, child)\n };\n}\n\n/**\n * Helper that recursively merges two data objects together.\n */\nfunction mergeData (to, from) {\n if (!from) { return to }\n var key, toVal, fromVal;\n\n var keys = hasSymbol\n ? Reflect.ownKeys(from)\n : Object.keys(from);\n\n for (var i = 0; i < keys.length; i++) {\n key = keys[i];\n // in case the object is already observed...\n if (key === '__ob__') { continue }\n toVal = to[key];\n fromVal = from[key];\n if (!hasOwn(to, key)) {\n set(to, key, fromVal);\n } else if (\n toVal !== fromVal &&\n isPlainObject(toVal) &&\n isPlainObject(fromVal)\n ) {\n mergeData(toVal, fromVal);\n }\n }\n return to\n}\n\n/**\n * Data\n */\nfunction mergeDataOrFn (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n // in a Vue.extend merge, both should be functions\n if (!childVal) {\n return parentVal\n }\n if (!parentVal) {\n return childVal\n }\n // when parentVal & childVal are both present,\n // we need to return a function that returns the\n // merged result of both functions... no need to\n // check if parentVal is a function here because\n // it has to be a function to pass previous merges.\n return function mergedDataFn () {\n return mergeData(\n typeof childVal === 'function' ? childVal.call(this, this) : childVal,\n typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal\n )\n }\n } else {\n return function mergedInstanceDataFn () {\n // instance merge\n var instanceData = typeof childVal === 'function'\n ? childVal.call(vm, vm)\n : childVal;\n var defaultData = typeof parentVal === 'function'\n ? parentVal.call(vm, vm)\n : parentVal;\n if (instanceData) {\n return mergeData(instanceData, defaultData)\n } else {\n return defaultData\n }\n }\n }\n}\n\nstrats.data = function (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n if (childVal && typeof childVal !== 'function') {\n process.env.NODE_ENV !== 'production' && warn(\n 'The \"data\" option should be a function ' +\n 'that returns a per-instance value in component ' +\n 'definitions.',\n vm\n );\n\n return parentVal\n }\n return mergeDataOrFn(parentVal, childVal)\n }\n\n return mergeDataOrFn(parentVal, childVal, vm)\n};\n\n/**\n * Hooks and props are merged as arrays.\n */\nfunction mergeHook (\n parentVal,\n childVal\n) {\n var res = childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal\n : [childVal]\n : parentVal;\n return res\n ? dedupeHooks(res)\n : res\n}\n\nfunction dedupeHooks (hooks) {\n var res = [];\n for (var i = 0; i < hooks.length; i++) {\n if (res.indexOf(hooks[i]) === -1) {\n res.push(hooks[i]);\n }\n }\n return res\n}\n\nLIFECYCLE_HOOKS.forEach(function (hook) {\n strats[hook] = mergeHook;\n});\n\n/**\n * Assets\n *\n * When a vm is present (instance creation), we need to do\n * a three-way merge between constructor options, instance\n * options and parent options.\n */\nfunction mergeAssets (\n parentVal,\n childVal,\n vm,\n key\n) {\n var res = Object.create(parentVal || null);\n if (childVal) {\n process.env.NODE_ENV !== 'production' && assertObjectType(key, childVal, vm);\n return extend(res, childVal)\n } else {\n return res\n }\n}\n\nASSET_TYPES.forEach(function (type) {\n strats[type + 's'] = mergeAssets;\n});\n\n/**\n * Watchers.\n *\n * Watchers hashes should not overwrite one\n * another, so we merge them as arrays.\n */\nstrats.watch = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n // work around Firefox's Object.prototype.watch...\n if (parentVal === nativeWatch) { parentVal = undefined; }\n if (childVal === nativeWatch) { childVal = undefined; }\n /* istanbul ignore if */\n if (!childVal) { return Object.create(parentVal || null) }\n if (process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = {};\n extend(ret, parentVal);\n for (var key$1 in childVal) {\n var parent = ret[key$1];\n var child = childVal[key$1];\n if (parent && !Array.isArray(parent)) {\n parent = [parent];\n }\n ret[key$1] = parent\n ? parent.concat(child)\n : Array.isArray(child) ? child : [child];\n }\n return ret\n};\n\n/**\n * Other object hashes.\n */\nstrats.props =\nstrats.methods =\nstrats.inject =\nstrats.computed = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n if (childVal && process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = Object.create(null);\n extend(ret, parentVal);\n if (childVal) { extend(ret, childVal); }\n return ret\n};\nstrats.provide = mergeDataOrFn;\n\n/**\n * Default strategy.\n */\nvar defaultStrat = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n};\n\n/**\n * Validate component names\n */\nfunction checkComponents (options) {\n for (var key in options.components) {\n validateComponentName(key);\n }\n}\n\nfunction validateComponentName (name) {\n if (!new RegExp((\"^[a-zA-Z][\\\\-\\\\.0-9_\" + (unicodeRegExp.source) + \"]*$\")).test(name)) {\n warn(\n 'Invalid component name: \"' + name + '\". Component names ' +\n 'should conform to valid custom element name in html5 specification.'\n );\n }\n if (isBuiltInTag(name) || config.isReservedTag(name)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + name\n );\n }\n}\n\n/**\n * Ensure all props option syntax are normalized into the\n * Object-based format.\n */\nfunction normalizeProps (options, vm) {\n var props = options.props;\n if (!props) { return }\n var res = {};\n var i, val, name;\n if (Array.isArray(props)) {\n i = props.length;\n while (i--) {\n val = props[i];\n if (typeof val === 'string') {\n name = camelize(val);\n res[name] = { type: null };\n } else if (process.env.NODE_ENV !== 'production') {\n warn('props must be strings when using array syntax.');\n }\n }\n } else if (isPlainObject(props)) {\n for (var key in props) {\n val = props[key];\n name = camelize(key);\n res[name] = isPlainObject(val)\n ? val\n : { type: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"props\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(props)) + \".\",\n vm\n );\n }\n options.props = res;\n}\n\n/**\n * Normalize all injections into Object-based format\n */\nfunction normalizeInject (options, vm) {\n var inject = options.inject;\n if (!inject) { return }\n var normalized = options.inject = {};\n if (Array.isArray(inject)) {\n for (var i = 0; i < inject.length; i++) {\n normalized[inject[i]] = { from: inject[i] };\n }\n } else if (isPlainObject(inject)) {\n for (var key in inject) {\n var val = inject[key];\n normalized[key] = isPlainObject(val)\n ? extend({ from: key }, val)\n : { from: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"inject\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(inject)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Normalize raw function directives into object format.\n */\nfunction normalizeDirectives (options) {\n var dirs = options.directives;\n if (dirs) {\n for (var key in dirs) {\n var def$$1 = dirs[key];\n if (typeof def$$1 === 'function') {\n dirs[key] = { bind: def$$1, update: def$$1 };\n }\n }\n }\n}\n\nfunction assertObjectType (name, value, vm) {\n if (!isPlainObject(value)) {\n warn(\n \"Invalid value for option \\\"\" + name + \"\\\": expected an Object, \" +\n \"but got \" + (toRawType(value)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Merge two option objects into a new one.\n * Core utility used in both instantiation and inheritance.\n */\nfunction mergeOptions (\n parent,\n child,\n vm\n) {\n if (process.env.NODE_ENV !== 'production') {\n checkComponents(child);\n }\n\n if (typeof child === 'function') {\n child = child.options;\n }\n\n normalizeProps(child, vm);\n normalizeInject(child, vm);\n normalizeDirectives(child);\n\n // Apply extends and mixins on the child options,\n // but only if it is a raw options object that isn't\n // the result of another mergeOptions call.\n // Only merged options has the _base property.\n if (!child._base) {\n if (child.extends) {\n parent = mergeOptions(parent, child.extends, vm);\n }\n if (child.mixins) {\n for (var i = 0, l = child.mixins.length; i < l; i++) {\n parent = mergeOptions(parent, child.mixins[i], vm);\n }\n }\n }\n\n var options = {};\n var key;\n for (key in parent) {\n mergeField(key);\n }\n for (key in child) {\n if (!hasOwn(parent, key)) {\n mergeField(key);\n }\n }\n function mergeField (key) {\n var strat = strats[key] || defaultStrat;\n options[key] = strat(parent[key], child[key], vm, key);\n }\n return options\n}\n\n/**\n * Resolve an asset.\n * This function is used because child instances need access\n * to assets defined in its ancestor chain.\n */\nfunction resolveAsset (\n options,\n type,\n id,\n warnMissing\n) {\n /* istanbul ignore if */\n if (typeof id !== 'string') {\n return\n }\n var assets = options[type];\n // check local registration variations first\n if (hasOwn(assets, id)) { return assets[id] }\n var camelizedId = camelize(id);\n if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }\n var PascalCaseId = capitalize(camelizedId);\n if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }\n // fallback to prototype chain\n var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];\n if (process.env.NODE_ENV !== 'production' && warnMissing && !res) {\n warn(\n 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,\n options\n );\n }\n return res\n}\n\n/* */\n\n\n\nfunction validateProp (\n key,\n propOptions,\n propsData,\n vm\n) {\n var prop = propOptions[key];\n var absent = !hasOwn(propsData, key);\n var value = propsData[key];\n // boolean casting\n var booleanIndex = getTypeIndex(Boolean, prop.type);\n if (booleanIndex > -1) {\n if (absent && !hasOwn(prop, 'default')) {\n value = false;\n } else if (value === '' || value === hyphenate(key)) {\n // only cast empty string / same name to boolean if\n // boolean has higher priority\n var stringIndex = getTypeIndex(String, prop.type);\n if (stringIndex < 0 || booleanIndex < stringIndex) {\n value = true;\n }\n }\n }\n // check default value\n if (value === undefined) {\n value = getPropDefaultValue(vm, prop, key);\n // since the default value is a fresh copy,\n // make sure to observe it.\n var prevShouldObserve = shouldObserve;\n toggleObserving(true);\n observe(value);\n toggleObserving(prevShouldObserve);\n }\n if (\n process.env.NODE_ENV !== 'production' &&\n // skip validation for weex recycle-list child component props\n !(false)\n ) {\n assertProp(prop, key, value, vm, absent);\n }\n return value\n}\n\n/**\n * Get the default value of a prop.\n */\nfunction getPropDefaultValue (vm, prop, key) {\n // no default, return undefined\n if (!hasOwn(prop, 'default')) {\n return undefined\n }\n var def = prop.default;\n // warn against non-factory defaults for Object & Array\n if (process.env.NODE_ENV !== 'production' && isObject(def)) {\n warn(\n 'Invalid default value for prop \"' + key + '\": ' +\n 'Props with type Object/Array must use a factory function ' +\n 'to return the default value.',\n vm\n );\n }\n // the raw prop value was also undefined from previous render,\n // return previous default value to avoid unnecessary watcher trigger\n if (vm && vm.$options.propsData &&\n vm.$options.propsData[key] === undefined &&\n vm._props[key] !== undefined\n ) {\n return vm._props[key]\n }\n // call factory function for non-Function types\n // a value is Function if its prototype is function even across different execution context\n return typeof def === 'function' && getType(prop.type) !== 'Function'\n ? def.call(vm)\n : def\n}\n\n/**\n * Assert whether a prop is valid.\n */\nfunction assertProp (\n prop,\n name,\n value,\n vm,\n absent\n) {\n if (prop.required && absent) {\n warn(\n 'Missing required prop: \"' + name + '\"',\n vm\n );\n return\n }\n if (value == null && !prop.required) {\n return\n }\n var type = prop.type;\n var valid = !type || type === true;\n var expectedTypes = [];\n if (type) {\n if (!Array.isArray(type)) {\n type = [type];\n }\n for (var i = 0; i < type.length && !valid; i++) {\n var assertedType = assertType(value, type[i]);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n\n if (!valid) {\n warn(\n getInvalidTypeMessage(name, value, expectedTypes),\n vm\n );\n return\n }\n var validator = prop.validator;\n if (validator) {\n if (!validator(value)) {\n warn(\n 'Invalid prop: custom validator check failed for prop \"' + name + '\".',\n vm\n );\n }\n }\n}\n\nvar simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;\n\nfunction assertType (value, type) {\n var valid;\n var expectedType = getType(type);\n if (simpleCheckRE.test(expectedType)) {\n var t = typeof value;\n valid = t === expectedType.toLowerCase();\n // for primitive wrapper objects\n if (!valid && t === 'object') {\n valid = value instanceof type;\n }\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value);\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value);\n } else {\n valid = value instanceof type;\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\n/**\n * Use function string name to check built-in types,\n * because a simple equality check will fail when running\n * across different vms / iframes.\n */\nfunction getType (fn) {\n var match = fn && fn.toString().match(/^\\s*function (\\w+)/);\n return match ? match[1] : ''\n}\n\nfunction isSameType (a, b) {\n return getType(a) === getType(b)\n}\n\nfunction getTypeIndex (type, expectedTypes) {\n if (!Array.isArray(expectedTypes)) {\n return isSameType(expectedTypes, type) ? 0 : -1\n }\n for (var i = 0, len = expectedTypes.length; i < len; i++) {\n if (isSameType(expectedTypes[i], type)) {\n return i\n }\n }\n return -1\n}\n\nfunction getInvalidTypeMessage (name, value, expectedTypes) {\n var message = \"Invalid prop: type check failed for prop \\\"\" + name + \"\\\".\" +\n \" Expected \" + (expectedTypes.map(capitalize).join(', '));\n var expectedType = expectedTypes[0];\n var receivedType = toRawType(value);\n var expectedValue = styleValue(value, expectedType);\n var receivedValue = styleValue(value, receivedType);\n // check if we need to specify expected value\n if (expectedTypes.length === 1 &&\n isExplicable(expectedType) &&\n !isBoolean(expectedType, receivedType)) {\n message += \" with value \" + expectedValue;\n }\n message += \", got \" + receivedType + \" \";\n // check if we need to specify received value\n if (isExplicable(receivedType)) {\n message += \"with value \" + receivedValue + \".\";\n }\n return message\n}\n\nfunction styleValue (value, type) {\n if (type === 'String') {\n return (\"\\\"\" + value + \"\\\"\")\n } else if (type === 'Number') {\n return (\"\" + (Number(value)))\n } else {\n return (\"\" + value)\n }\n}\n\nfunction isExplicable (value) {\n var explicitTypes = ['string', 'number', 'boolean'];\n return explicitTypes.some(function (elem) { return value.toLowerCase() === elem; })\n}\n\nfunction isBoolean () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return args.some(function (elem) { return elem.toLowerCase() === 'boolean'; })\n}\n\n/* */\n\nfunction handleError (err, vm, info) {\n // Deactivate deps tracking while processing error handler to avoid possible infinite rendering.\n // See: https://github.com/vuejs/vuex/issues/1505\n pushTarget();\n try {\n if (vm) {\n var cur = vm;\n while ((cur = cur.$parent)) {\n var hooks = cur.$options.errorCaptured;\n if (hooks) {\n for (var i = 0; i < hooks.length; i++) {\n try {\n var capture = hooks[i].call(cur, err, vm, info) === false;\n if (capture) { return }\n } catch (e) {\n globalHandleError(e, cur, 'errorCaptured hook');\n }\n }\n }\n }\n }\n globalHandleError(err, vm, info);\n } finally {\n popTarget();\n }\n}\n\nfunction invokeWithErrorHandling (\n handler,\n context,\n args,\n vm,\n info\n) {\n var res;\n try {\n res = args ? handler.apply(context, args) : handler.call(context);\n if (res && !res._isVue && isPromise(res) && !res._handled) {\n res.catch(function (e) { return handleError(e, vm, info + \" (Promise/async)\"); });\n // issue #9511\n // avoid catch triggering multiple times when nested calls\n res._handled = true;\n }\n } catch (e) {\n handleError(e, vm, info);\n }\n return res\n}\n\nfunction globalHandleError (err, vm, info) {\n if (config.errorHandler) {\n try {\n return config.errorHandler.call(null, err, vm, info)\n } catch (e) {\n // if the user intentionally throws the original error in the handler,\n // do not log it twice\n if (e !== err) {\n logError(e, null, 'config.errorHandler');\n }\n }\n }\n logError(err, vm, info);\n}\n\nfunction logError (err, vm, info) {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n }\n /* istanbul ignore else */\n if ((inBrowser || inWeex) && typeof console !== 'undefined') {\n console.error(err);\n } else {\n throw err\n }\n}\n\n/* */\n\nvar callbacks = [];\nvar pending = false;\n\nfunction flushCallbacks () {\n pending = false;\n var copies = callbacks.slice(0);\n callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n}\n\n// Here we have async deferring wrappers using microtasks.\n// In 2.5 we used (macro) tasks (in combination with microtasks).\n// However, it has subtle problems when state is changed right before repaint\n// (e.g. #6813, out-in transitions).\n// Also, using (macro) tasks in event handler would cause some weird behaviors\n// that cannot be circumvented (e.g. #7109, #7153, #7546, #7834, #8109).\n// So we now use microtasks everywhere, again.\n// A major drawback of this tradeoff is that there are some scenarios\n// where microtasks have too high a priority and fire in between supposedly\n// sequential events (e.g. #4521, #6690, which have workarounds)\n// or even between bubbling of the same event (#6566).\nvar timerFunc;\n\n// The nextTick behavior leverages the microtask queue, which can be accessed\n// via either native Promise.then or MutationObserver.\n// MutationObserver has wider support, however it is seriously bugged in\n// UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It\n// completely stops working after triggering a few times... so, if native\n// Promise is available, we will use it:\n/* istanbul ignore next, $flow-disable-line */\nif (typeof Promise !== 'undefined' && isNative(Promise)) {\n var p = Promise.resolve();\n timerFunc = function () {\n p.then(flushCallbacks);\n // In problematic UIWebViews, Promise.then doesn't completely break, but\n // it can get stuck in a weird state where callbacks are pushed into the\n // microtask queue but the queue isn't being flushed, until the browser\n // needs to do some other work, e.g. handle a timer. Therefore we can\n // \"force\" the microtask queue to be flushed by adding an empty timer.\n if (isIOS) { setTimeout(noop); }\n };\n} else if (!isIE && typeof MutationObserver !== 'undefined' && (\n isNative(MutationObserver) ||\n // PhantomJS and iOS 7.x\n MutationObserver.toString() === '[object MutationObserverConstructor]'\n)) {\n // Use MutationObserver where native Promise is not available,\n // e.g. PhantomJS, iOS7, Android 4.4\n // (#6466 MutationObserver is unreliable in IE11)\n var counter = 1;\n var observer = new MutationObserver(flushCallbacks);\n var textNode = document.createTextNode(String(counter));\n observer.observe(textNode, {\n characterData: true\n });\n timerFunc = function () {\n counter = (counter + 1) % 2;\n textNode.data = String(counter);\n };\n} else if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {\n // Fallback to setImmediate.\n // Technically it leverages the (macro) task queue,\n // but it is still a better choice than setTimeout.\n timerFunc = function () {\n setImmediate(flushCallbacks);\n };\n} else {\n // Fallback to setTimeout.\n timerFunc = function () {\n setTimeout(flushCallbacks, 0);\n };\n}\n\nfunction nextTick (cb, ctx) {\n var _resolve;\n callbacks.push(function () {\n if (cb) {\n try {\n cb.call(ctx);\n } catch (e) {\n handleError(e, ctx, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(ctx);\n }\n });\n if (!pending) {\n pending = true;\n timerFunc();\n }\n // $flow-disable-line\n if (!cb && typeof Promise !== 'undefined') {\n return new Promise(function (resolve) {\n _resolve = resolve;\n })\n }\n}\n\n/* */\n\n/* not type checking this file because flow doesn't play well with Proxy */\n\nvar initProxy;\n\nif (process.env.NODE_ENV !== 'production') {\n var allowedGlobals = makeMap(\n 'Infinity,undefined,NaN,isFinite,isNaN,' +\n 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +\n 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +\n 'require' // for Webpack/Browserify\n );\n\n var warnNonPresent = function (target, key) {\n warn(\n \"Property or method \\\"\" + key + \"\\\" is not defined on the instance but \" +\n 'referenced during render. Make sure that this property is reactive, ' +\n 'either in the data option, or for class-based components, by ' +\n 'initializing the property. ' +\n 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',\n target\n );\n };\n\n var warnReservedPrefix = function (target, key) {\n warn(\n \"Property \\\"\" + key + \"\\\" must be accessed with \\\"$data.\" + key + \"\\\" because \" +\n 'properties starting with \"$\" or \"_\" are not proxied in the Vue instance to ' +\n 'prevent conflicts with Vue internals. ' +\n 'See: https://vuejs.org/v2/api/#data',\n target\n );\n };\n\n var hasProxy =\n typeof Proxy !== 'undefined' && isNative(Proxy);\n\n if (hasProxy) {\n var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');\n config.keyCodes = new Proxy(config.keyCodes, {\n set: function set (target, key, value) {\n if (isBuiltInModifier(key)) {\n warn((\"Avoid overwriting built-in modifier in config.keyCodes: .\" + key));\n return false\n } else {\n target[key] = value;\n return true\n }\n }\n });\n }\n\n var hasHandler = {\n has: function has (target, key) {\n var has = key in target;\n var isAllowed = allowedGlobals(key) ||\n (typeof key === 'string' && key.charAt(0) === '_' && !(key in target.$data));\n if (!has && !isAllowed) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return has || !isAllowed\n }\n };\n\n var getHandler = {\n get: function get (target, key) {\n if (typeof key === 'string' && !(key in target)) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return target[key]\n }\n };\n\n initProxy = function initProxy (vm) {\n if (hasProxy) {\n // determine which proxy handler to use\n var options = vm.$options;\n var handlers = options.render && options.render._withStripped\n ? getHandler\n : hasHandler;\n vm._renderProxy = new Proxy(vm, handlers);\n } else {\n vm._renderProxy = vm;\n }\n };\n}\n\n/* */\n\nvar seenObjects = new _Set();\n\n/**\n * Recursively traverse an object to evoke all converted\n * getters, so that every nested property inside the object\n * is collected as a \"deep\" dependency.\n */\nfunction traverse (val) {\n _traverse(val, seenObjects);\n seenObjects.clear();\n}\n\nfunction _traverse (val, seen) {\n var i, keys;\n var isA = Array.isArray(val);\n if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {\n return\n }\n if (val.__ob__) {\n var depId = val.__ob__.dep.id;\n if (seen.has(depId)) {\n return\n }\n seen.add(depId);\n }\n if (isA) {\n i = val.length;\n while (i--) { _traverse(val[i], seen); }\n } else {\n keys = Object.keys(val);\n i = keys.length;\n while (i--) { _traverse(val[keys[i]], seen); }\n }\n}\n\nvar mark;\nvar measure;\n\nif (process.env.NODE_ENV !== 'production') {\n var perf = inBrowser && window.performance;\n /* istanbul ignore if */\n if (\n perf &&\n perf.mark &&\n perf.measure &&\n perf.clearMarks &&\n perf.clearMeasures\n ) {\n mark = function (tag) { return perf.mark(tag); };\n measure = function (name, startTag, endTag) {\n perf.measure(name, startTag, endTag);\n perf.clearMarks(startTag);\n perf.clearMarks(endTag);\n // perf.clearMeasures(name)\n };\n }\n}\n\n/* */\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once$$1 ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once$$1,\n capture: capture,\n passive: passive\n }\n});\n\nfunction createFnInvoker (fns, vm) {\n function invoker () {\n var arguments$1 = arguments;\n\n var fns = invoker.fns;\n if (Array.isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n invokeWithErrorHandling(cloned[i], null, arguments$1, vm, \"v-on handler\");\n }\n } else {\n // return handler return value for single handlers\n return invokeWithErrorHandling(fns, null, arguments, vm, \"v-on handler\")\n }\n }\n invoker.fns = fns;\n return invoker\n}\n\nfunction updateListeners (\n on,\n oldOn,\n add,\n remove$$1,\n createOnceHandler,\n vm\n) {\n var name, def$$1, cur, old, event;\n for (name in on) {\n def$$1 = cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n if (isUndef(cur)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Invalid handler for event \\\"\" + (event.name) + \"\\\": got \" + String(cur),\n vm\n );\n } else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur, vm);\n }\n if (isTrue(event.once)) {\n cur = on[name] = createOnceHandler(event.name, cur, event.capture);\n }\n add(event.name, cur, event.capture, event.passive, event.params);\n } else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove$$1(event.name, oldOn[name], event.capture);\n }\n }\n}\n\n/* */\n\n/* */\n\n// fixed by xxxxxx (mp properties)\nfunction extractPropertiesFromVNodeData(data, Ctor, res, context) {\n var propOptions = Ctor.options.mpOptions && Ctor.options.mpOptions.properties;\n if (isUndef(propOptions)) {\n return res\n }\n var externalClasses = Ctor.options.mpOptions.externalClasses || [];\n var attrs = data.attrs;\n var props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n var result = checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n // externalClass\n if (\n result &&\n res[key] &&\n externalClasses.indexOf(altKey) !== -1 &&\n context[camelize(res[key])]\n ) {\n // 赋值 externalClass 真正的值(模板里 externalClass 的值可能是字符串)\n res[key] = context[camelize(res[key])];\n }\n }\n }\n return res\n}\n\nfunction extractPropsFromVNodeData (\n data,\n Ctor,\n tag,\n context// fixed by xxxxxx\n) {\n // we are only extracting raw values here.\n // validation and default values are handled in the child\n // component itself.\n var propOptions = Ctor.options.props;\n if (isUndef(propOptions)) {\n // fixed by xxxxxx\n return extractPropertiesFromVNodeData(data, Ctor, {}, context)\n }\n var res = {};\n var attrs = data.attrs;\n var props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n if (process.env.NODE_ENV !== 'production') {\n var keyInLowerCase = key.toLowerCase();\n if (\n key !== keyInLowerCase &&\n attrs && hasOwn(attrs, keyInLowerCase)\n ) {\n tip(\n \"Prop \\\"\" + keyInLowerCase + \"\\\" is passed to component \" +\n (formatComponentName(tag || Ctor)) + \", but the declared prop name is\" +\n \" \\\"\" + key + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and camelCased \" +\n \"props need to use their kebab-case equivalents when using in-DOM \" +\n \"templates. You should probably use \\\"\" + altKey + \"\\\" instead of \\\"\" + key + \"\\\".\"\n );\n }\n }\n checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n }\n }\n // fixed by xxxxxx\n return extractPropertiesFromVNodeData(data, Ctor, res, context)\n}\n\nfunction checkProp (\n res,\n hash,\n key,\n altKey,\n preserve\n) {\n if (isDef(hash)) {\n if (hasOwn(hash, key)) {\n res[key] = hash[key];\n if (!preserve) {\n delete hash[key];\n }\n return true\n } else if (hasOwn(hash, altKey)) {\n res[key] = hash[altKey];\n if (!preserve) {\n delete hash[altKey];\n }\n return true\n }\n }\n return false\n}\n\n/* */\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array. There are\n// two cases where extra normalization is needed:\n\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren (children) {\n for (var i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return Array.prototype.concat.apply([], children)\n }\n }\n return children\n}\n\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g.