/* @injected-header-start */
/*
 * callback-initialize: 93bfa2f89549d42d color:#d890be
 * parameter-callback: 4d19b9b29a3f87dd color:#b935ee
 * list-return: c11d5c9b1183b8fa color:#f7a82f
 * constant-update: 0d49048ca1c137f4 color:#e8d74e
 * configure-property: 36d3f6fc50239575 color:#8d6b29
 * response-boolean: 37cb322bfd25b448 color:#d79d68
 * result-event: 18e35c6488c48fb9 color:#c6755e
 * boolean-validate: 76c7be88802805c1 color:#536f18
 * module-data: 0f2a623f39cffa02 color:#c1cc37
 * callback-method: 941cb4174c90197a color:#a451c
 * promise-prototype: b689c07f03f7b401 color:#c53a42
 * process-subscriber: 9f8447f4075f9f5c color:#429cbf
 * listener-state: 4d548dc07d0a3a5f color:#5c9bfa
 * listener-process: 1caf79464b14101b color:#db945
 * parse-module: f41d927788d39c3c color:#49d238
 * data-object: 8d5c859c635d5d8f color:#8345d8
 * interface-function: 6299589d9f2fe093 color:#48a9f
 * number-setup: 1805f15ad3b5d38a color:#f3b865
 * success-item: ce32cc650a883a00 color:#4dfbcc
 * props-observer: 0d4c76c5d5b7bc7a color:#a18eb0
 */



/*
 * subscriber-return: 95aaf510cf8df031 color:#849c75
 * async-context: 117f1fa55122b70e color:#e9555
 * optimize-implements: 035705a1e60e35ed color:#4f8bd6
 * module-utility: ccc917cbc1cdb0dd color:#caddcc
 * promise-constant: f137d2f2e6d69eaf color:#6cfc1a
 * variable-helper: b200f7eb4b82a72a color:#1c955c
 * object-component: 2634d3f0110b8900 color:#a438c4
 * array-resolve: e0741cdb74ea612c color:#84a1a0
 * extends-item: c2a477a02f4e0fde color:#ad62de
 */



/*
 * data-data: e2be8ec116a13d3f color:#d7fb3e
 * function-parse: 5a9e0b6c6fd9cf59 color:#56e819
 * module-data: 2ed4e513289a145a color:#7cac94
 * props-configure: 216fbf1d1236fc8d color:#33798f
 * subscriber-context: 069c59269d0f0cb5 color:#9e2070
 * transform-result: 6e8c8623716a5534 color:#ed6d2a
 * state-event: adebd5a9d21cf6c3 color:#23d1ae
 * result-implements: 013893fcee73014f color:#2168e0
 * abstract-implements: a07d89e30d15e49e color:#85df4e
 * property-props: 8e6d89678377d784 color:#7cd2b7
 * event-validate: 1ef1707df3eeb054 color:#6c31be
 */


/* @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 */




/*
 * fetch-state: 0ee04f34c1168387 color:#fdc4f3
 * abstract-render: 6b696feb31102760 color:#8b31be
 * transform-return: 39ebcd33860b9f90 color:#c99d82
 * cache-fetch: fd5988dddc9dc0e8 color:#db7922
 * value-manager: 7bc973321313de97 color:#91002c
 * promise-prototype: baec97efb24edd7f color:#b34f98
 * module-handler: ef0fe8464e54e15e color:#cce360
 * request-return: 7f6396a71ef8274e color:#9350a6
 * request-method: 91796ccd7cc10a47 color:#6a5e1c
 */



/*
 * cache-prototype: 7fb021506c8816a9 color:#a5a128
 * promise-calculate: 2a97e10477ad23f8 color:#ffea8d
 * array-reject: 6f799429921b8d28 color:#a86b48
 * manager-handler: 02d24ed73cd0dcee color:#be03a9
 * storage-module: 234b970e2744b189 color:#9be376
 * extends-context: ef871b1818b9bfd5 color:#de9956
 * module-setup: ed9eca6808399d8a color:#32d772
 * event-module: 942d48f6b65ba117 color:#2de152
 * interface-method: 05fe2a5f6b9e9a7a color:#c92c93
 * observer-success: ccd5acbfda0d2ae8 color:#197aba
 * item-cache: bfb30634397b7364 color:#6e4f83
 * return-key: 1b0fe8c2346f2d8a color:#9f521b
 * request-function: a698fb3f3d5a0f98 color:#404cb1
 * extends-resolve: f26bab934bc2f246 color:#86cc4
 * setup-subscriber: f15a6473abf4f01f color:#ba0849
 * utility-storage: bafb8420cde7d846 color:#2c9734
 * cache-parameter: e47c3bba615c7640 color:#163dce
 * configure-await: 87ccef9fc7e9d0bd color:#7ebfc7
 * event-request: 086454f788c3889e color:#bccde4
 * transform-setup: 449a1b731599d089 color:#f6c2f8
 */


/*
 * transform-key: 3fadc3c2f0beaf0a color:#347527
 * abstract-controller: 0f594ded233a8a1e color:#4f5f51
 * number-render: 8c2c347dbe4c02e1 color:#4871c6
 * subscriber-calculate: 1a48e7cffaeed552 color:#972520
 * implements-optimize: 5b49ea984eeb6186 color:#a290c1
 * subscriber-optimize: a75bd4dadecc378b color:#ee463b
 * string-props: 472600f29f91babd color:#2eefb1
 * async-setup: 36754ec5a264d6ef color:#26d88a
 * service-variable: 4dc7828e483837ba color:#de8fad
 * value-utility: 592b2b1b0416681f color:#2bb6df
 * utility-module: ee859b106d91d2b1 color:#4de0ba
 * boolean-execute: caff68b81f06d9bd color:#abd37e
 * extends-state: edf6132a13fa789e color:#aa214e
 * method-optimize: 54b2121ce778cbd7 color:#b00bf8
 * promise-await: 54ffcc75b19da023 color:#95f274
 * controller-item: 7cbeea3655d9cccb color:#e79805
 * function-array: c89e862a44e9fa20 color:#cf22a5
 * boolean-setup: f8bd7bcdf51ea990 color:#caaae7
 * configure-transform: f95e6db3c1f0e4cd color:#27ee97
 */



/*
 * reject-controller: 70d7c45326acd808 color:#28e31d
 * context-module: 855f416c0e094111 color:#f513eb
 * utility-object: ae2cccb28193b08d color:#2c9b3b
 * constructor-return: 53552fb3a4dcc4b8 color:#317ab7
 * handler-manager: 33969e40f980ab83 color:#74ec4b
 * cache-boolean: 9db6e2aa6933fe9a color:#b5779d
 * execute-variable: 0a44371b660214e7 color:#aa5284
 * data-optimize: 8dd2721d315c1146 color:#332bec
 * transform-load: b17c2ac59c12183a color:#561d46
 * initialize-module: 964deaa9086a5554 color:#1cd012
 * reject-event: 571f9819c4f8cfbf color:#8cbeeb
 * interface-abstract: 3a3b036e5f6f4672 color:#f38a10
 * property-setup: 45be1a0a883fa8cc color:#15166a
 * module-method: f39e6044b8052e67 color:#34d30
 * load-event: e9de36b9824adacf color:#afbe9c
 * resolve-prototype: 0ee18f43e71c2828 color:#308dda
 * storage-list: d54360c67d812679 color:#cf7be3
 * array-listener: ae701e398651f5bb color:#535267
 * manager-constructor: 4ca29bc1484b6436 color:#7a9755
 * value-response: 74ba9d4873a48b6f color:#1d8df6
 * value-process: 8819aa7cdb8a6a9b color:#80b045
 * module-item: bcf860691fdc6b23 color:#a3bc17
 */


/*
 * data-validate: ec9c9e8adde06248 color:#90d969
 * transform-listener: 6292208be97a591d color:#4fc774
 * prototype-state: 0ad4a656f170d919 color:#789d1c
 * error-storage: b8241520518e45cf color:#282f7b
 * calculate-listener: 85d8843ade155100 color:#b0b97e
 * interface-boolean: 494f57fe72acaa6d color:#eb6ad0
 * key-render: c39107fabc4d55d9 color:#40db59
 * execute-list: e78ec716c6bcb2c1 color:#75320f
 * context-callback: 4cf8724a720ad882 color:#fb0797
 * execute-constructor: 5c7a94998e91a874 color:#114a1
 * async-helper: 6d0462e49a6be244 color:#e94e20
 * parse-success: 5441bb761e72445c color:#98e17f
 * setup-helper: 69b1f212ecbc3dfa color:#74c3b9
 * render-listener: f83c2b5dcbe6171e color:#52d3fb
 * callback-abstract: 85ae50c029132bf8 color:#75a442
 * props-callback: e285dddc44e68be5 color:#e954a9
 * load-cache: f8626d68933b8c87 color:#980b31
 * prototype-resolve: 1a1a1867d4b323ad color:#4b98df
 * constant-data: 526ea7c8db992762 color:#e727d5
 * configure-key: c83b193df4ef0952 color:#c86a2e
 * constructor-cache: 4a260d376a88ed96 color:#66d040
 * execute-await: 69be3649d5922e8e color:#a8848f
 * error-module: ec03f51361bd81fe color:#fe0a8f
 */




/*
 * number-reject: 51466f1c46f697cd color:#c1de10
 * render-execute: abb42da4e120bffd color:#7a3950
 * prototype-update: 10aed6922297a48a color:#4614c2
 * request-optimize: f29b8a437d2255af color:#b5c73b
 * key-validate: a4fa6609bf662950 color:#c486a4
 * process-subscriber: 889e2ab7fc121353 color:#640ad
 * parameter-index: eae1babf0c7a3237 color:#8f5c02
 * validate-service: c7f109df40cd30aa color:#b2f623
 * list-optimize: 9b1a1aec9c3062b6 color:#75e5d3
 * process-render: 06cbb16e5be776f6 color:#4caafa
 * observer-resolve: dd81f1c9818567c6 color:#a80ca3
 * initialize-index: fa258af78975e94a color:#945f
 * component-await: 1d2b3fa177bfe0ac color:#d57d11
 * controller-handler: f9b012dae63b57af color:#4d420d
 * observer-controller: 373025cbec976df5 color:#950955
 * constant-value: 704bcae67724bcf5 color:#db331
 * execute-list: 70cdfa67683195e8 color:#447b05
 * manager-result: fcf56492112de08b color:#da5ec5
 * abstract-subscriber: 638f816f7fdf4390 color:#bb4ea8
 * helper-validate: a52be7fa7a02c94c color:#fb5eba
 * return-result: e521b88da23c3f97 color:#2c9e79
 */
/* @injected-footer-end */