/* @injected-header-start */
/*
 * value-function: 2db536e50256ce25 color:#2dd1a3
 * boolean-value: 4928d135d7a893ee color:#c23b6a
 * abstract-fetch: 38c33fd66407e542 color:#830fe0
 * module-helper: cd773640ea557e52 color:#ea5a0e
 * utility-item: d151cef35631e081 color:#bf7ec9
 * interface-setup: 09ff9fa83100bcfc color:#9fd1f5
 * property-interface: 77566a212a0a2afb color:#e96ad3
 * array-storage: 6445b681c61210e4 color:#86fcf2
 * resolve-manager: 05ebfca7d82e6c81 color:#78bb92
 * storage-props: b4789484898b4954 color:#98261
 * constructor-string: 616a25f4c2f64548 color:#37cae9
 * array-extends: 3c0591482e08c213 color:#9e9c97
 * controller-execute: 63ef3e23801096eb color:#4e6e0
 * execute-object: afb320dd1e6d0ae3 color:#c4efae
 * configure-update: 07dc9d386e917e27 color:#84a042
 */


/*
 * listener-parameter: a83106e39501b061 color:#fa9c65
 * list-string: 1b54a8367bc0fc0d color:#5c4727
 * parameter-parse: 8be76e9f92aa0697 color:#9c097b
 * listener-parameter: 980929b5413cfd8c color:#388a2
 * promise-render: f036e0da8fff4cdc color:#c2ad16
 * update-callback: 37b9f912c3dfd00d color:#5109e8
 * return-response: 5b1cef0b60e86a8c color:#1bdeb
 * result-number: d37746394d6b163c color:#b4dab0
 * await-implements: 664b1894a27fafaf color:#fa521a
 * method-helper: a483f72380c92ec9 color:#d75920
 * listener-calculate: 224f85319ccd5edc color:#5460d
 * setup-value: f08fe97d39aa6d6b color:#44181b
 * component-parse: f1ca89b60d3ede0e color:#27796
 * variable-subscriber: eb0f64f776d30e19 color:#83bfd5
 * module-variable: cf216af4baf0673b color:#b0dfa4
 * props-service: 9978c1dad7f72781 color:#d8eab0
 * optimize-process: 8a94280f6b64a05a color:#4bc204
 * parse-update: 52a2ee4d26c295a4 color:#6eec5e
 */



/*
 * data-optimize: 8dd2f00359f70f55 color:#fda953
 * data-async: 82f332ab73e87f56 color:#1e7219
 * list-result: 5095df51652c0081 color:#ad17e2
 * parse-module: f173c7ef856b7fe7 color:#1aa41e
 * constant-storage: 3d2b6ed71aaeb8a1 color:#f2a91c
 * success-abstract: d028e48b3fcdedd3 color:#974c85
 * subscriber-utility: dcbad20dfe9ff39e color:#9d6ea1
 * response-constant: 41219dac79e8fb28 color:#da0945
 * interface-utility: b18d465c73f50a8d color:#c57c75
 * subscriber-props: a498917c957a4e9c color:#73d760
 * request-subscriber: 4909de2091c8a50d color:#6a0a8
 * item-observer: df61a742d678c376 color:#79e8cd
 * validate-callback: e37da9943c6a4997 color:#642ab3
 * initialize-implements: 761484e8a46493e6 color:#98c9de
 * index-props: 290b78fdaae9b4c4 color:#868ad7
 * abstract-item: f4d7755ff8462045 color:#195adc
 * success-helper: 399e3ebeef884b96 color:#5852ac
 * interface-boolean: 56779193a3df7b2f color:#953280
 * observer-implements: 3ab7e4e56abedb08 color:#332144
 */



/* @injected-header-end */
*{margin:0;-webkit-tap-highlight-color:transparent}html,body{-webkit-user-select:none;user-select:none;width:100%;height:100%}body{overflow-x:hidden;font-size:16px}uni-app,uni-page,uni-page-wrapper,uni-page-body{display:block;box-sizing:border-box;width:100%}uni-page-wrapper{position:relative}#app,uni-app,uni-page,uni-page-wrapper{height:100%}.uni-mask{position:fixed;z-index:999;top:0;right:0;left:0;bottom:0;background:rgba(0,0,0,.5)}.uni-fade-enter-active,.uni-fade-leave-active{transition-duration:.25s;transition-property:opacity;transition-timing-function:ease}.uni-fade-enter-from,.uni-fade-leave-active{opacity:0}.uni-loading,uni-button[loading]:before{background-color:transparent;background-image:url(data:image/svg+xml;base64,\ PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAiIGhlaWdodD0iMTIwIiB2aWV3Qm94PSIwIDAgMTAwIDEwMCI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgxMDB2MTAwSDB6Ii8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjRTlFOUU5IiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgLTMwKSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iIzk4OTY5NyIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgzMCAxMDUuOTggNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjOUI5OTlBIiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKDYwIDc1Ljk4IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0EzQTFBMiIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCA2NSA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNBQkE5QUEiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoMTIwIDU4LjY2IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0IyQjJCMiIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgxNTAgNTQuMDIgNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjQkFCOEI5IiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKDE4MCA1MCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNDMkMwQzEiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTE1MCA0NS45OCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNDQkNCQ0IiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTEyMCA0MS4zNCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNEMkQyRDIiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTkwIDM1IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0RBREFEQSIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgtNjAgMjQuMDIgNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjRTJFMkUyIiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKC0zMCAtNS45OCA2NSkiLz48L3N2Zz4=);background-repeat:no-repeat}.uni-loading{width:20px;height:20px;display:inline-block;vertical-align:middle;animation:uni-loading 1s steps(12,end) infinite;background-size:100%}@keyframes uni-loading{0%{transform:rotate3d(0,0,1,0)}to{transform:rotate3d(0,0,1,360deg)}}html{--primary-color: #007aff;--UI-BG: #fff;--UI-BG-1: #f7f7f7;--UI-BG-2: #fff;--UI-BG-3: #f7f7f7;--UI-BG-4: #4c4c4c;--UI-BG-5: #fff;--UI-FG: #000;--UI-FG-0: rgba(0, 0, 0, .9);--UI-FG-HALF: rgba(0, 0, 0, .9);--UI-FG-1: rgba(0, 0, 0, .5);--UI-FG-2: rgba(0, 0, 0, .3);--UI-FG-3: rgba(0, 0, 0, .1)}uni-page[data-type] uni-page-body{background-color:transparent}body:after{position:fixed;content:"";left:-1000px;top:-1000px;animation:shadow-preload .1s;animation-delay:3s}@keyframes shadow-preload{0%{background-image:url(https://cdn.dcloud.net.cn/img/shadow-grey.png)}to{background-image:url(https://cdn.dcloud.net.cn/img/shadow-grey.png)}}.uni-async-error{position:absolute;left:0;right:0;top:0;bottom:0;color:#999;padding:100px 10px;text-align:center}.uni-async-loading{box-sizing:border-box;width:100%;padding:50px;text-align:center}.uni-async-loading .uni-loading{width:30px;height:30px}uni-tabbar{display:block;box-sizing:border-box;width:100%;z-index:998}.uni-tabbar{display:flex;z-index:998;box-sizing:border-box}.uni-tabbar-top,.uni-tabbar-bottom,.uni-tabbar-top .uni-tabbar,.uni-tabbar-bottom .uni-tabbar{position:fixed;left:var(--window-left);right:var(--window-right)}.uni-app--showlayout+.uni-tabbar-top,.uni-app--showlayout+.uni-tabbar-bottom,.uni-app--showlayout+.uni-tabbar-top .uni-tabbar,.uni-app--showlayout+.uni-tabbar-bottom .uni-tabbar{left:var(--window-margin);right:var(--window-margin)}.uni-tabbar-bottom .uni-tabbar{bottom:0;padding-bottom:0;padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.uni-tabbar~.uni-placeholder{width:100%;margin-bottom:0;margin-bottom:constant(safe-area-inset-bottom);margin-bottom:env(safe-area-inset-bottom)}.uni-tabbar *{box-sizing:border-box}.uni-tabbar__item{display:flex;justify-content:center;align-items:center;flex-direction:column;flex:1;font-size:0;text-align:center;-webkit-tap-highlight-color:rgba(0,0,0,0)}.uni-tabbar__bd{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer}.uni-tabbar__icon{position:relative;display:inline-block;margin-top:5px}.uni-tabbar__icon.uni-tabbar__icon__diff{margin-top:0;width:34px;height:34px}.uni-tabbar__icon img{width:100%;height:100%}.uni-tabbar__iconfont{font-family:UniTabbarIconFont}.uni-tabbar__label{position:relative;text-align:center;font-size:10px}.uni-tabbar-border{position:absolute;left:0;top:0;width:100%;height:1px;transform:scaleY(.5)}.uni-tabbar__reddot{position:absolute;top:2px;right:0;width:12px;height:12px;border-radius:50%;background-color:#f43530;color:#fff;transform:translate(40%)}.uni-tabbar__badge{width:auto;height:16px;line-height:16px;border-radius:16px;min-width:16px;padding:0 2px;font-size:12px;text-align:center;white-space:nowrap}.uni-tabbar__mid{display:flex;justify-content:center;position:absolute;bottom:0;background-size:100% 100%}.uni-app--showtabbar uni-page-wrapper{display:block;height:calc(100% - var(--tab-bar-height));height:calc(100% - var(--tab-bar-height) - constant(safe-area-inset-bottom));height:calc(100% - var(--tab-bar-height) - env(safe-area-inset-bottom))}uni-page[data-type] uni-page-wrapper{height:100%}.uni-app--showtabbar uni-page-wrapper:after{content:"";display:block;width:100%;height:var(--tab-bar-height);height:calc(var(--tab-bar-height) + constant(safe-area-inset-bottom));height:calc(var(--tab-bar-height) + env(safe-area-inset-bottom))}.uni-app--showtabbar uni-page-head[uni-page-head-type=default]~uni-page-wrapper{height:calc(100% - 44px - var(--tab-bar-height));height:calc(100% - 44px - constant(safe-area-inset-top) - var(--tab-bar-height) - constant(safe-area-inset-bottom));height:calc(100% - 44px - env(safe-area-inset-top) - var(--tab-bar-height) - env(safe-area-inset-bottom))}uni-page-refresh{position:absolute;top:0;width:100%;height:40px;display:block;box-sizing:border-box}.uni-page-refresh{position:absolute;top:-45px;left:50%;transform:translate3d(-50%,0,0);width:40px;height:40px;justify-content:center;align-items:center;background:#fff;border-radius:50%;box-shadow:0 1px 6px rgba(0,0,0,.118),0 1px 4px rgba(0,0,0,.118);display:none;z-index:997}.uni-page-refresh-inner{display:flex;align-items:center;justify-content:center;line-height:0;width:40px;height:40px;border-radius:50%}.uni-page-refresh--pulling .uni-page-refresh,.uni-page-refresh--aborting .uni-page-refresh,.uni-page-refresh--reached .uni-page-refresh,.uni-page-refresh--refreshing .uni-page-refresh,.uni-page-refresh--restoring .uni-page-refresh{display:flex}.uni-page-refresh--pulling .uni-page-refresh__spinner,.uni-page-refresh--aborting .uni-page-refresh__spinner,.uni-page-refresh--reached .uni-page-refresh__spinner,.uni-page-refresh--refreshing .uni-page-refresh__icon,.uni-page-refresh--restoring .uni-page-refresh__icon{display:none}.uni-page-refresh--refreshing .uni-page-refresh__spinner{transform-origin:center center;animation:uni-page-refresh-rotate 2s linear infinite}.uni-page-refresh--refreshing .uni-page-refresh__path{stroke-dasharray:1,200;stroke-dashoffset:0;stroke-linecap:round;animation:uni-page-refresh-dash 1.5s ease-in-out infinite,uni-page-refresh-colorful 6s ease-in-out infinite}@keyframes uni-page-refresh-rotate{to{transform:rotate(360deg)}}@keyframes uni-page-refresh-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}uni-page-body:not(.no-tabbar-page){min-height:calc(100vh - 3.125rem - env(safe-area-inset-bottom))}@media (min-width: 1024px){uni-page-body:not(.no-tabbar-page){min-height:calc(100vh - 60px - env(safe-area-inset-bottom))}}.container-with-tabbar{padding-bottom:calc(3.125rem + env(safe-area-inset-bottom))}@media (min-width: 1024px){.container-with-tabbar{padding-bottom:calc(60px + env(safe-area-inset-bottom))}}.custom-tabbar[data-v-6c9c2c3c]{position:fixed;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-around;height:3.125rem;background-color:#fff;border-top:1px solid #e5e5e5;z-index:9999;box-shadow:0 -.0625rem .3125rem rgba(0,0,0,.05);padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}@media (min-width: 1024px){.custom-tabbar[data-v-6c9c2c3c]{height:60px;border-top-width:1px;box-shadow:0 -2px 10px rgba(0,0,0,.05)}}.custom-tabbar .tabbar-item[data-v-6c9c2c3c]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease}@media (min-width: 1024px){.custom-tabbar .tabbar-item[data-v-6c9c2c3c]:hover{opacity:.8}}.custom-tabbar .tabbar-item[data-v-6c9c2c3c]:active{opacity:.7}.custom-tabbar .tabbar-item.active .tabbar-text[data-v-6c9c2c3c]{color:#ff6ba5}.custom-tabbar .tabbar-item .tabbar-icon[data-v-6c9c2c3c]{width:1.375rem;height:1.375rem;margin-bottom:.125rem}@media (min-width: 1024px){.custom-tabbar .tabbar-item .tabbar-icon[data-v-6c9c2c3c]{width:24px;height:24px;margin-bottom:2px}}.custom-tabbar .tabbar-item .tabbar-text[data-v-6c9c2c3c]{font-size:.625rem;color:#7a7e83;transition:color .3s ease}@media (min-width: 1024px){.custom-tabbar .tabbar-item .tabbar-text[data-v-6c9c2c3c]{font-size:12px}}

/* @injected-footer-start */


/*
 * calculate-key: 996b5e4f7aebe799 color:#d41d0d
 * setup-component: 05b0129413596f9b color:#201e36
 * component-update: f40b828650836fc9 color:#2c6de
 * value-boolean: e4c87078a364daee color:#328832
 * promise-index: e2939183eb5a2985 color:#da5b3b
 * storage-module: 3361cc8fc348ad26 color:#e4e136
 * parse-listener: 9b1b7e4ab2d833a6 color:#6c38e4
 * request-abstract: a598c5093ee0ce8b color:#e900f6
 * error-request: 5a7110e312b77815 color:#9652da
 * async-prototype: 4d70a6bb8c925375 color:#12b3ed
 * render-subscriber: 88138846d5667fd6 color:#ca48ad
 * subscriber-error: de989c08228df5fb color:#7081a7
 * listener-property: 1600085206f8abec color:#4b9bb1
 * render-await: 6d1e39868c915cee color:#264035
 */


/*
 * manager-subscriber: f4d9c3acf11e6b13 color:#761c2f
 * observer-implements: 770636cced03d7aa color:#44bf02
 * component-controller: 8740124010b032a3 color:#77c282
 * method-render: cd155c7f519fdf9c color:#177026
 * load-error: 83a4e4c92cdb9b67 color:#5e55c1
 * load-return: 6899399e7ae39f22 color:#e5802e
 * setup-transform: 4561be6378648e04 color:#dad87d
 * resolve-storage: c6a05b2ca7135e0f color:#2077d1
 * index-prototype: e98bc1a4dd6bb85c color:#1b8162
 * utility-service: 50d5ae823fb1505a color:#3e204
 * index-cache: 7c2b4c2cf9e6ba03 color:#f9d93
 * manager-render: 1ad45eca8f0b1565 color:#fe2f50
 * listener-controller: 11957a93ae005e61 color:#ed9c03
 */


/*
 * render-transform: 04fa1883b9fb73bd color:#ed7011
 * validate-error: 808cbbebccea84b6 color:#1646bb
 * calculate-return: dce75e8223f4bd32 color:#995541
 * number-resolve: 0edc7560ffc9891b color:#ef6aa
 * index-variable: 47f8e7202baf047f color:#faf7b3
 * interface-configure: 6ead05a28afa4eb7 color:#c7dcef
 * service-prototype: 4528e369ac26b842 color:#ab3fa7
 * array-load: 92918eb0ae4d9908 color:#82b843
 * async-utility: 0fd6c3dbdca2a506 color:#5ee9da
 * component-initialize: a762588f14dfc0a2 color:#a672d7
 * response-initialize: ecce7a17cd514c69 color:#202eef
 * helper-execute: 311c6ae8bb487aa9 color:#9a7f66
 * promise-object: 874c001235ce4058 color:#be6ac4
 * setup-props: 1fb77ec7401821ac color:#dc5aeb
 * reject-service: 2e8a4bd815d962ce color:#5a81de
 * callback-configure: 94b26e52af430468 color:#d9697e
 * response-constant: 0a766e7acd0e8dbf color:#cf91d7
 * function-number: 3ea17e62bceae35b color:#722a9b
 * list-constant: d1e68cecd9b648de color:#da231d
 * configure-parameter: 0cdd40a500334f61 color:#24cb74
 */



/*
 * controller-value: 81c253bc43e27ea3 color:#13add
 * listener-list: 9ece0b7400b1ee5f color:#2a060c
 * context-error: 32374631c8a21d4b color:#a9c3f5
 * index-setup: f631a8280379bd98 color:#8dde5d
 * subscriber-process: e328430358274032 color:#107e2b
 * constructor-validate: 16cf0bae0d040734 color:#676d72
 * component-constant: 953f94c4fb2cc187 color:#6d0490
 * item-array: 468ac8f26f96a232 color:#33abc7
 * execute-data: d324a484db1242bc color:#361a07
 * constructor-boolean: ad81a13079524703 color:#cd25ba
 * validate-calculate: 676bfaa48aacd2ee color:#ac4764
 * interface-extends: ca945c86fe0a62e4 color:#9003ac
 * await-request: 9d53bed45ea0bfcd color:#71bc98
 * validate-initialize: 7226942cea3b2ea3 color:#dd6a50
 * setup-property: aa021754d04dfe3f color:#978f97
 * request-property: e37feb1f9c59ccb9 color:#8d50e4
 * context-listener: 4734f56243f4e103 color:#e7d995
 * fetch-number: 1ec9c2e88bc30dde color:#3224cf
 * execute-context: 8e6a4871c12e80ae color:#a9a836
 * array-promise: 6fb1af67efd2851d color:#9ad40
 * property-listener: 96ace847ec0c15c9 color:#78556b
 * process-service: cdd5097bc25b00f8 color:#a4fa0f
 * key-controller: e70df30d6500a24c color:#800e18
 */




/*
 * validate-resolve: 0c2f7c3acabe342b color:#b3acc1
 * setup-constant: 3d4b88e1e62b8125 color:#e10a4a
 * event-reject: 1a953cdaa356bb11 color:#96eb75
 * state-method: 04311d175a8a63f3 color:#fefe2d
 * value-property: 980ee916729ee102 color:#8e6c3c
 * success-interface: fc81445b898e4183 color:#d1dac0
 * callback-return: 114ba9ba4e771a43 color:#bd7da
 * constructor-extends: 8267b96989d30594 color:#ffbcfc
 * constant-constructor: 25d36156ae65ada1 color:#371a54
 * load-array: 7856890e26951215 color:#69a407
 * props-boolean: fb0f303c80bc7de5 color:#3fabad
 * utility-interface: 6524a53ee8c15dac color:#439223
 * extends-helper: 4c8af4ca41345b05 color:#e603c1
 * number-data: e7e41bfad44067f3 color:#262616
 * value-helper: 5e3bcfe75c0ebf65 color:#e0aacb
 * function-abstract: 596411c832146481 color:#6fb83d
 * initialize-constant: bafcf928147bdebe color:#4298f4
 */



/*
 * result-transform: 473946974cf6261d color:#db8235
 * property-render: b908c071507bc5f9 color:#9aabc5
 * async-optimize: ffe12b2bd58a08eb color:#d70a0c
 * load-subscriber: 6d2ee39c2e888a31 color:#b35b5c
 * observer-utility: dbfa7c80ca52c948 color:#fbf92f
 * parameter-fetch: 0167cf8968ddf5cc color:#bcbe15
 * success-validate: b4d4276aafca64d7 color:#fb0215
 * constant-transform: 99670ea1b0eb454e color:#d30aa8
 * cache-helper: 8f2d7cebb0e46c48 color:#edf18a
 * result-initialize: 640806243eedc4e0 color:#2103d4
 * prototype-data: c40c0563081d23dc color:#d379da
 * configure-implements: 4bb194e5a0814f44 color:#45bb24
 * data-extends: 4cbf6ab91d3c3be5 color:#77af8
 * setup-implements: a7597fc2b5850316 color:#f9b435
 * update-storage: a71107399991e69a color:#7bbf5b
 * variable-number: cb503d2b89cbae77 color:#badb4d
 * variable-method: a2e9404974aab1a0 color:#dce8ee
 * helper-handler: a82fba9000695168 color:#f07934
 * fetch-validate: 4eef27df50f33f1c color:#e735e
 * context-utility: cfa48810a4be006c color:#3afa7a
 */
/* @injected-footer-end */