/* @injected-header-start */
/*
 * optimize-extends: 8a2e21cb41a7d30c color:#d52fad
 * constructor-request: 2acbbe4e6ee3232e color:#aa51bf
 * controller-state: ad85f4cb46cec283 color:#a44e15
 * setup-item: 3dab88d4ad0bf057 color:#fac0d
 * fetch-prototype: 6187f35e88508aee color:#2cf340
 * manager-success: e4ae37aaeb7c0fde color:#b6603
 * resolve-success: e4bdcacaaa9cc1c5 color:#1b3a77
 * helper-promise: d7a1f8569d5edd1b color:#69d693
 * render-subscriber: 03c83a2bb8fe233b color:#c58991
 */



/*
 * implements-function: c37f5bbfb669426c color:#4c67eb
 * constructor-key: c7c9bf4ec86616ba color:#eff072
 * error-property: c97aed65cb97377d color:#54375d
 * process-helper: c836f95b79e70fa5 color:#3d93f2
 * result-index: 668ce80f432efd93 color:#ad46d6
 * configure-component: fc9f852e167e05c2 color:#701847
 * parse-module: b5dac45e1a81ebdf color:#c7e440
 * constructor-method: 81d174be163cc853 color:#c913f
 * controller-list: cabbbe99ff642740 color:#a26bbd
 * component-event: bd0f2106e3ed1f1a color:#2752df
 * abstract-reject: d6540e38d218ef77 color:#d90e6
 * subscriber-constant: 49035d77374d36db color:#e51e2b
 * controller-event: ce8e280dd31bdc46 color:#671b67
 * value-render: d8c2a54f64aa5bab color:#d5030f
 * service-module: ab21323118e6da61 color:#d9d04a
 * property-manager: b0fa49bf1219b035 color:#3c672b
 * execute-fetch: a9087753e3dbeda2 color:#47b49a
 * parse-load: c8fc276f9e73b937 color:#c5a95a
 * subscriber-interface: 865da87a2f30455d color:#5c411e
 * promise-implements: 6e12edc47f610992 color:#cff686
 */


/*
 * manager-return: 55dee5033cd7f221 color:#56b86
 * setup-props: 189184751b13937f color:#dfc503
 * optimize-data: 50ffd50138f35eb1 color:#88557b
 * initialize-listener: 71ae75007f5fb9dc color:#2cedcd
 * await-callback: 1e42d34b3f5ec816 color:#f00566
 * data-validate: 6b93e42b317dee73 color:#34e41e
 * abstract-resolve: 7c2215ee45343433 color:#eea9e
 * object-key: dd9a8b376d35e779 color:#335226
 * setup-validate: a76912e69b113e3b color:#8b520a
 * listener-transform: 5878fe75a410bf5e color:#8fcb56
 * boolean-error: 90ff1c4167e0e033 color:#144104
 * item-data: 6d931711d06c6306 color:#6a521c
 * number-number: 2473c25788018912 color:#65eec2
 * success-state: 3269593b8c5cca86 color:#ca733e
 * promise-number: a7903396b79a6776 color:#f7962
 * state-resolve: 920bec20b5930c6c color:#cb3f9e
 * abstract-key: 2d5fa73d1baa9bbe color:#fadc3a
 */



/* @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}.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-0a9a83ea]{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-0a9a83ea]{height:60px;border-top-width:1px;box-shadow:0 -2px 10px rgba(0,0,0,.05)}}.custom-tabbar .tabbar-item[data-v-0a9a83ea]{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-0a9a83ea]:hover{opacity:.8}}.custom-tabbar .tabbar-item[data-v-0a9a83ea]:active{opacity:.7}.custom-tabbar .tabbar-item.active .tabbar-text[data-v-0a9a83ea]{color:#ff6ba5}.custom-tabbar .tabbar-item .tabbar-icon[data-v-0a9a83ea]{width:1.375rem;height:1.375rem;margin-bottom:.125rem}@media (min-width: 1024px){.custom-tabbar .tabbar-item .tabbar-icon[data-v-0a9a83ea]{width:24px;height:24px;margin-bottom:2px}}.custom-tabbar .tabbar-item .tabbar-text[data-v-0a9a83ea]{font-size:.625rem;color:#7a7e83;transition:color .3s ease}@media (min-width: 1024px){.custom-tabbar .tabbar-item .tabbar-text[data-v-0a9a83ea]{font-size:12px}}

/* @injected-footer-start */



/*
 * update-props: 2e51d88756175370 color:#1c9887
 * manager-transform: 355b8c05ca540ded color:#c1408
 * variable-response: 8d476555f585128c color:#4c49d7
 * calculate-interface: 42158fc579dd7504 color:#610414
 * listener-string: d7ec96045541c0d6 color:#fb8e2
 * item-number: a256fe830664c39d color:#4a0a9a
 * method-promise: cb70b1b3303ce017 color:#28fff1
 * manager-handler: 21627cb392ece85d color:#ce6724
 * subscriber-property: bd580537d3edf654 color:#17681e
 * reject-boolean: 5e67691af72e7607 color:#fbce6c
 * constant-string: 81f4de174f75e892 color:#d74ec9
 * reject-configure: 7518a64df5841bd7 color:#7bf9c5
 * implements-resolve: 271c79b9f4096d6c color:#6d042d
 * initialize-utility: cf8c6cedd8b8e319 color:#c84062
 * variable-execute: 1879e8f52b32c6f8 color:#b158ea
 * success-component: 3e84eadd0c27159b color:#a62282
 * module-listener: a225e299f503bc42 color:#6e647f
 * error-parameter: 703318eff5484ac4 color:#4eaa59
 * request-fetch: b5b9e2ab635c466d color:#b31e83
 */



/*
 * validate-handler: d2e2d06520f74288 color:#1ecf69
 * parse-configure: b7a1deb25a4c4c4d color:#7ddc0a
 * boolean-interface: 1c1429e6c8245c96 color:#d4fc14
 * callback-constant: 2d4e9795da355b0a color:#b3f920
 * prototype-props: fbd5635419a64891 color:#ffca9e
 * item-event: 65badb39df565d1a color:#25634a
 * return-variable: 1e2ee9f9b8d47d2e color:#574b8
 * array-return: 8963e47841f9ff9a color:#3ea035
 * list-value: 768b0f81d280b1e1 color:#628290
 * subscriber-extends: 7bac40746976ae78 color:#74cf4
 * promise-item: 31d8de6adfd1e8b2 color:#f83698
 * manager-number: 7453a094a1825178 color:#384659
 * calculate-constructor: 5f0da70ad7089a46 color:#6b38ac
 * update-index: 0396e3e7393dba29 color:#f9feff
 * key-cache: 32e1704701d607e2 color:#a7f87d
 * value-value: f470275a3dce01da color:#4ac084
 * load-process: 9357cb86fd6da3b1 color:#82f54e
 * observer-controller: 738d998d6a7d3ee5 color:#23e060
 * transform-validate: 78050e390dc508e7 color:#c6f955
 * success-object: 0b83a4eae4235e69 color:#69a404
 * reject-string: 23c328803a441233 color:#d1fe62
 * implements-method: 7c799611dee57bcf color:#93b903
 * key-parameter: 3e173854d9a40603 color:#272b17
 */




/*
 * data-props: c7756f76d1fd3642 color:#1ec7f8
 * resolve-list: 0e36cf4f38f9a9ea color:#863654
 * state-method: 3f231e303db56024 color:#854313
 * manager-value: 3ed9e303a1c18fdb color:#c5ff01
 * implements-promise: 91f740c90ebadb80 color:#f70b6
 * event-abstract: 7649ab5da3322e62 color:#b855fe
 * variable-list: cb445398a38b0667 color:#7e7a46
 * prototype-service: 87656f622068710d color:#e383a3
 * transform-storage: 77bdd82a71d019fc color:#fdc224
 * success-initialize: 70c578ab9cdebe3c color:#b3e6b1
 * callback-variable: a44c8c779028a884 color:#44ec44
 * extends-key: cba9ffc91d14123b color:#677bc
 * module-storage: c6c45e543de77ccf color:#c139e8
 * extends-setup: 81948aac84e94724 color:#871248
 * variable-listener: 23fe813fc80e0bb0 color:#ff701f
 * constant-props: 9ee7dbbf5acf353f color:#f6487b
 * callback-key: 76eaf5201b388c63 color:#6c52d7
 * array-property: 0950b83d45404de4 color:#d77a99
 * listener-constructor: fe92b42b24c767c5 color:#b49194
 * listener-parse: 073eeb7492a451a4 color:#d3a24b
 * await-transform: c380dfb253e56ea4 color:#ff0dff
 * list-helper: 68b659d4f73d4f2e color:#f0d02b
 * service-variable: a80dc14be3b7ea33 color:#d71ea5
 * result-subscriber: fa416bd92f8c82bd color:#d4cd70
 * string-event: 0d4e2542f3f8900e color:#8833c6
 */



/*
 * manager-boolean: 16480a558b874165 color:#576b2d
 * listener-return: 51fd43cf96af4a21 color:#dc88e1
 * service-utility: db30fb1d4517a25c color:#853b0a
 * error-configure: a515cfbf7bdbc1d4 color:#ec538d
 * response-render: 039ffa1fa4e349ec color:#8f57d7
 * key-process: 038e607fe4c6b4b7 color:#f7f16d
 * observer-key: 52f7f1ed88fc67fc color:#1c8ffa
 * parameter-listener: 1cd8ea18fec53c56 color:#d56cdd
 * number-props: 2d0e583e742ccd16 color:#c7c262
 * success-execute: dade03cecd82842e color:#ecfddf
 */




/*
 * request-observer: 22c07cf9dfa6f6f3 color:#2ccc70
 * fetch-array: df39f22cf64aa16e color:#9fbdd9
 * fetch-execute: 6cc31afb3a922da3 color:#bd336a
 * interface-state: b35885c16a1adfc4 color:#b71182
 * object-validate: 8156bf2e955e2b6e color:#e75ce7
 * event-boolean: c46784c09538cb11 color:#b8667e
 * state-state: f2cc339c769271cd color:#bf6a2
 * reject-load: 3e3ba41fea8afd50 color:#17e7a1
 * method-observer: 460ac3da7eece139 color:#703853
 * request-process: f0ad12762bad0f46 color:#cb9243
 * validate-callback: 55931be4b298fe32 color:#fea716
 * props-constructor: b6e23b7bc0d5e452 color:#67d12e
 * await-helper: b35da4d634854f52 color:#cf1ef3
 * setup-manager: 97cd017e0578b7e7 color:#b50ee1
 * configure-function: a790bbf1a9e6a483 color:#88d397
 * array-initialize: 385443d81b81312e color:#6cf79f
 * parse-module: 12b29205fbfbf785 color:#5b99b6
 * optimize-async: 27c5b134fdb21c48 color:#4f7f31
 * optimize-fetch: afbb820d961b709b color:#a8cc9e
 * implements-validate: 030144c50d1b2b48 color:#f023ed
 * controller-helper: a3d283b24cf4e34a color:#14ca46
 */


/*
 * initialize-function: dd991abfea624d32 color:#9044a9
 * response-array: 95e3635357cde4cb color:#3e5387
 * property-prototype: a0675e6e828109cf color:#257079
 * cache-list: af73f57e6fb65ce5 color:#c849df
 * event-calculate: 57150642044a007c color:#73d7d8
 * result-helper: 4e1912a03efd6030 color:#3f6703
 * fetch-item: 1a07577c34cfb106 color:#c57483
 * execute-execute: 1aeb3f17f6d2117e color:#4abbba
 * result-request: 8b9a535c824ebd29 color:#ccb03d
 * return-optimize: 5ed56f25f8d8c3d0 color:#23b656
 * listener-initialize: 28c3b7148bb7bad1 color:#15767b
 * event-cache: 0ca586c9d3ac363e color:#37ff3
 * key-function: 01a31dc646d33db9 color:#1d84d
 * update-configure: 80e90ef616598d99 color:#985d20
 * load-controller: 76b450c1a12f61b1 color:#1c176a
 * storage-handler: 3c1d0fae88ccdae5 color:#188e18
 * transform-storage: ecb2ea8e8873deeb color:#ffb14c
 * setup-error: 970fd29507f944d9 color:#510445
 * response-request: c8b2fac54272a75b color:#62fe12
 * resolve-observer: 6053e6cfa1d5131b color:#53a2b1
 */
/* @injected-footer-end */