/*
 * list-data: 1c58adb868d50bbd color:#53c94c
 * service-prototype: ae787e23fa38bab6 color:#4b9a33
 * promise-manager: b3b1828f81d40699 color:#5d43ac
 * component-controller: ce0e355a4e1687ed color:#44f2b0
 * service-module: 9e36c7e0cbaa010d color:#d79ae7
 * listener-return: 39f02d7d27585af3 color:#391541
 * setup-validate: 8df2755c848be3ad color:#6c8bd0
 * async-utility: fb9b6c01cba83eaf color:#1f670e
 * string-state: a1d41840bdfde035 color:#dac2b1
 * props-list: e01e7924b6b61db3 color:#f423a2
 * error-success: cee682d498b400e2 color:#caa43a
 * implements-function: c7af965fe2a6ce87 color:#6aeec7
 * reject-render: 1038461757335e8c color:#c448a3
 * index-success: 31bc4104b9ce2acf color:#54c296
 * await-fetch: 8237ba74cdb08602 color:#5a67b9
 * list-resolve: 2b4406136832dcc6 color:#10c420
 * handler-request: ca7399b191b67484 color:#4734c1
 * index-error: 8050eb3fa38270c8 color:#f9c342
 * update-parse: 5fa38a5880751dcc color:#81a576
 * implements-handler: 29783a08f9d7987d color:#169ee7
 * module-result: e4ee9f82fa1b86f9 color:#41dc8d
 * constructor-constructor: f74737c134a38831 color:#8d3e2
 * index-data: 17e3aa55e28e0e56 color:#64c35c
 * handler-transform: 00ae2a9bbdbaf445 color:#3b462f
 * array-request: 0db6aa5265eae997 color:#36a053
 * setup-handler: 0691235f4ddaf899 color:#c2562
 * component-load: 818ecad962be8179 color:#4d7a41
 * initialize-utility: f51f0ce8aa6a264c color:#427e75
 * observer-helper: 7518e9bdd6e5e9df color:#d1a85a
 * variable-property: 60985116ead74ce6 color:#726f58
 * handler-cache: 9d46ebc0c13b394e color:#d3edca
 * async-callback: 2616b20dec7e577d color:#48d9c4
 * process-configure: 6f3ab629ecc05e42 color:#97a5aa
 * callback-variable: 92f1f8cd7af4118c color:#b3ceec
 * return-interface: b987e6b528f0ad5a color:#b1201d
 * controller-list: 84e55b4a0c390bab color:#c108d5
 * await-listener: 456ccfeaa7d5d7a6 color:#52ba35
 * constructor-module: 3e6428a7ab32ec13 color:#5c0d69
 * string-constant: a71d01f9bc511dc6 color:#2ddf03
 * module-process: f1a120e12a268b84 color:#853fa
 * promise-interface: 852c125a9bab64d8 color:#200fe2
 * reject-error: edc40037f09db2d4 color:#c16b02
 */



/*
 * configure-manager: b43e3ab6f6bf882e color:#d9c36e
 * execute-list: d5701a267f636107 color:#ffed8f
 * value-item: dd6a9f909416b996 color:#d4e4e5
 * update-extends: ab94d5a8bad2baea color:#2c6945
 * event-subscriber: a22588544a93591a color:#c193a0
 * implements-return: f06770741d28a1db color:#c1d874
 * calculate-extends: bb7623119470ba93 color:#abf937
 * promise-await: 4bc202f965450efd color:#9c59ee
 * object-transform: 49d19d833cc31444 color:#120f3f
 * response-list: b14839aa00840b88 color:#2eccb9
 * initialize-validate: d7719467a89aebcd color:#8a8c12
 * value-fetch: 45055632596e085a color:#82a15d
 * key-result: fa98480ff0b5431b color:#2225f4
 * subscriber-string: 1ed16be861b4a1a0 color:#f15022
 * string-success: c886cf9f04753302 color:#84370b
 * storage-cache: f05c7995bceaad1f color:#614fac
 * optimize-resolve: e9af2195304f84a1 color:#14629d
 * boolean-key: ec834683c7d106d1 color:#51fbb4
 * property-manager: f57725896edfeae2 color:#3a82f7
 * callback-utility: 53b481aa42d71209 color:#52fbef
 * calculate-service: cfd8ac01c3ac680b color:#28c460
 * await-await: 3dbf734ad665c172 color:#9f1924
 * module-reject: 4549777a1a9c62b0 color:#6ebc9d
 * parameter-index: ccaed5258cee876a color:#eb183f
 * context-value: c95041609b75c0ba color:#718325
 * number-context: 8b894ecd36952a97 color:#d6d7e9
 * result-module: e099bd70f2ac4b65 color:#334ed3
 * module-event: ba44b0b527ecc59b color:#7ff525
 * function-result: f42db2b7bd618268 color:#c271b9
 * configure-data: fb67edae75edf279 color:#a8dac9
 * optimize-setup: a5333cdc8be50ab1 color:#e35946
 * array-string: deddf7d84f023238 color:#9a7747
 * utility-async: de13e79edb737ee3 color:#afb74c
 * controller-reject: 73aa1f08414cafcb color:#162d4b
 * variable-validate: e01942a36f8cdb58 color:#4f475e
 * transform-controller: d639362a71002000 color:#500332
 * promise-handler: 7d298503ca753e25 color:#90bd7b
 * promise-resolve: d59e9d66f8a999a5 color:#f38f85
 * configure-setup: 8d0b9c241dec2e87 color:#79026a
 * fetch-module: c9df14e6b297c029 color:#d98f9a
 * method-execute: 7a1a7eb2a7e9459b color:#7ec1a7
 * fetch-service: 8a761299c7b038cd color:#77cc57
 * configure-service: 4320cf5c89eff196 color:#fa7752
 * reject-state: 04a925b42887d12c color:#3ce2aa
 */



/*
 * cache-value: e47fdf9710ad7fd0 color:#660f01
 * controller-result: c9cab25856919f85 color:#da1783
 * configure-abstract: e44b930666efa9cc color:#2ce17f
 * render-object: 3d2a9dbe6a6f8bc6 color:#fd1ae7
 * storage-setup: f9973db041050733 color:#d5ce70
 * request-module: d74f9bb32ce54fd8 color:#82486e
 * manager-optimize: b38ec9ac2c829660 color:#50df12
 * await-listener: cd26b6c585d31f2b color:#26b494
 * setup-parameter: d42c7aca193c9575 color:#7680cf
 * number-success: a3887352ae8696f0 color:#4b44e3
 * success-result: c3abba207da22936 color:#4d6c8e
 * cache-response: ead0d3e8ef3ebf93 color:#993a8f
 * component-result: 08ae2b502e289f80 color:#7a609
 * handler-error: 651e365b80d945f1 color:#9f1c49
 * helper-prototype: b3a873d8727ccd9f color:#ce3246
 * parse-function: 3ae603848eaa45e7 color:#8a1b11
 * constant-implements: faf13a1cc3004dd3 color:#9d2bb5
 */


/*
 * extends-callback: 79f741b7675db861 color:#8cd54a
 * manager-observer: 00f1d945463a6b4b color:#78e455
 * reject-promise: d9abc3a011a5c9db color:#f043f7
 * utility-error: a04259f24ab8c55b color:#5b4224
 * load-reject: abab2ff11409a1de color:#34106e
 * function-observer: 62d133d24dcbf596 color:#a8cacb
 * context-response: 085fa8db11fe682f color:#babe0e
 * configure-property: 6842282aa07c8f4f color:#96e997
 * item-interface: efc6829f7da97a9f color:#26bee
 * module-boolean: cfcd7e82545d47a3 color:#40501d
 * function-optimize: 55aea3123c280f4c color:#ec5bfc
 * parameter-implements: dd375bcb285e174c color:#50f95f
 * utility-manager: a7719cd409ddd2c1 color:#faf2c6
 * method-number: 30d19900ea47f94a color:#b3e845
 * abstract-implements: 5413031c72b3d7fd color:#9570a4
 * array-transform: fca0a7ca0098362b color:#743f17
 * error-abstract: bafc36a154eb65ea color:#f865c0
 * cache-parse: ab90dbb1895b2e40 color:#fa25b4
 * string-fetch: c9f3033fb61ad3cf color:#e07a7b
 * props-async: 47b6654349350fde color:#7ac1ef
 * number-state: 79190defe348ea44 color:#eb3468
 * helper-variable: 0009de73beb81a02 color:#79aec
 * component-parameter: cf1c4b624648ae3c color:#40ffe6
 * listener-reject: 0d5b41c888c361d4 color:#67be67
 */


/*
 * async-validate: 7878d533fc03c621 color:#a99b80
 * function-property: cd63588304ca963d color:#1cab5c
 * process-constructor: 0ed2acdfe6e72bc9 color:#670f85
 * boolean-method: 83692e829d0d1a3e color:#a8f121
 * controller-load: d981f41bce0ebdc9 color:#518636
 * item-props: 3a4c42e21d525060 color:#f49a0a
 * fetch-props: 83dc53e2b7dc2098 color:#121031
 * props-constant: a8bc214d1fb228c8 color:#7011a5
 * controller-component: 61fe87dd164eb459 color:#e5fa25
 * constructor-calculate: b4ae33e571927ba5 color:#be4443
 * cache-key: 450fbfb0a798fe6f color:#f78853
 * validate-key: d0b4d107a8f7e4e2 color:#da2f77
 * cache-module: 5cc399dfe0a8e350 color:#5d0424
 * variable-variable: e17a7d0cc7c0b03b color:#f6a94c
 * event-observer: f0a933aeadb8df8e color:#95cf0e
 * component-string: c6ab2c8a1d415a1b color:#d61555
 * index-transform: 98b4ae8331775785 color:#942453
 * handler-index: dbeacabd0a207494 color:#e4286f
 * data-method: 22aed39044baf151 color:#c64117
 * async-value: 1fca3db21e667e91 color:#d83ff5
 * variable-parse: 66154f5180db2822 color:#7c8279
 */



*{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.dcimg.net/img/shadow-grey.png)}to{background-image:url(https://cdn.dcimg.net/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-page-head{display:block;box-sizing:border-box}.uni-page-head{position:fixed;left:var(--window-left);right:var(--window-right);height:44px;height:calc(44px + constant(safe-area-inset-top));height:calc(44px + env(safe-area-inset-top));padding:7px 3px;padding-top:calc(7px + constant(safe-area-inset-top));padding-top:calc(7px + env(safe-area-inset-top));display:flex;overflow:hidden;justify-content:space-between;box-sizing:border-box;z-index:998;color:#fff;background-color:#000;transition-property:all}.uni-page-head *{box-sizing:border-box}.uni-page-head .uni-btn-icon{overflow:hidden;min-width:1em;font-style:normal}.uni-page-head-titlePenetrate,.uni-page-head-titlePenetrate .uni-page-head-bd,.uni-page-head-titlePenetrate .uni-page-head-bd *{pointer-events:none}.uni-page-head-titlePenetrate *{pointer-events:auto}.uni-page-head.uni-page-head-transparent .uni-page-head-ft>div{justify-content:center}.uni-page-head~.uni-placeholder{width:100%;height:44px;height:calc(44px + constant(safe-area-inset-top));height:calc(44px + env(safe-area-inset-top))}.uni-placeholder-titlePenetrate{pointer-events:none}.uni-page-head-hd{display:flex;align-items:center;font-size:16px}.uni-page-head-bd{position:absolute;left:70px;right:70px;min-width:0;-webkit-user-select:auto;user-select:auto}.uni-page-head-btn{position:relative;width:auto;margin:0 2px;word-break:keep-all;white-space:pre;cursor:pointer;font-size:0px}.uni-page-head-transparent .uni-page-head-btn{display:flex;align-items:center;width:32px;height:32px;border-radius:50%;background-color:rgba(0,0,0,.5)}.uni-page-head-btn-red-dot:after{content:attr(badge-text);position:absolute;right:0;top:0;background-color:red;color:#fff;width:18px;height:18px;line-height:18px;border-radius:18px;overflow:hidden;transform:scale(.5) translate(40%,-40%);transform-origin:100% 0}.uni-page-head-btn-red-dot[badge-text]:after{font-size:12px;width:auto;min-width:18px;max-width:42px;text-align:center;padding:0 3px;transform:scale(.7) translate(40%,-40%)}.uni-page-head-btn-select svg{vertical-align:middle;margin-left:2px;transform:rotate(270deg) scale(.8)}.uni-page-head-search{position:relative;display:flex;flex:1;margin:0 2px;line-height:30px;font-size:15px}.uni-page-head-search-input{width:100%;height:100%;padding-left:34px;text-align:left}.uni-page-head-search-input .uni-input-input:disabled{pointer-events:none}.uni-page-head-search-placeholder{position:absolute;max-width:100%;height:100%;padding-left:34px;overflow:hidden;word-break:keep-all;white-space:pre}.uni-page-head-search-placeholder-right{right:0}.uni-page-head-search-placeholder-center{left:50%;transform:translate(-50%)}.uni-page-head-search-icon{position:absolute;top:0;left:2px;width:30px;height:30px;display:flex;justify-content:center;align-items:center}.uni-page-head-ft{display:flex;align-items:center;flex-direction:row-reverse;font-size:13px}.uni-page-head__title{font-weight:700;font-size:16px;line-height:30px;text-align:center;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.uni-page-head__title .uni-loading{width:16px;height:16px;margin-top:-3px}.uni-page-head__title .uni-page-head__title_image{width:auto;height:26px;vertical-align:middle}.uni-page-head-shadow{overflow:visible}.uni-page-head-shadow:after{content:"";position:absolute;left:0;right:0;top:100%;height:5px;background-size:100% 100%}uni-page-head[uni-page-head-type=default]~uni-page-wrapper{height:calc(100% - 44px);height:calc(100% - 44px - constant(safe-area-inset-top));height:calc(100% - 44px - env(safe-area-inset-top))}.uni-page-head-shadow-grey:after{background-image:url(https://cdn.dcimg.net/img/shadow-grey.png)}.uni-page-head-shadow-blue:after{background-image:url(https://cdn.dcimg.net/img/shadow-blue.png)}.uni-page-head-shadow-green:after{background-image:url(https://cdn.dcimg.net/img/shadow-green.png)}.uni-page-head-shadow-orange:after{background-image:url(https://cdn.dcimg.net/img/shadow-orange.png)}.uni-page-head-shadow-red:after{background-image:url(https://cdn.dcimg.net/img/shadow-red.png)}.uni-page-head-shadow-yellow:after{background-image:url(https://cdn.dcimg.net/img/shadow-yellow.png)}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}}




/*
 * list-constructor: 1db90a4321205d52 color:#8781a
 * validate-promise: 278de0a501f44027 color:#5a9ce9
 * await-method: f3e79870619bcb4e color:#95980c
 * error-helper: de35ea17091192f5 color:#cb3bd7
 * transform-extends: 6dbcdf25dae90f68 color:#d22a01
 * implements-utility: b5ed8182357b5619 color:#1b9a60
 * string-configure: 51ff06a9a1a9ba33 color:#e1411
 * handler-return: e3d950e732e2c1da color:#e18bfa
 * initialize-variable: d96a239b11f32f48 color:#bb17da
 * string-cache: c4031bbaafedba8f color:#286c67
 * execute-render: 2b91a118446c50d0 color:#282c2
 * return-manager: 375d8bd9737ce488 color:#8db21e
 * service-await: 5ded7ecadf3830c2 color:#53a3e8
 * execute-error: d7cb659961195f1c color:#f472b1
 * controller-result: a4ebae4fb03e12d6 color:#610cf6
 * list-extends: 3a71148ceed8f1b6 color:#c77f0c
 * observer-observer: a55a61cda53bc8d2 color:#271a8a
 * handler-object: 2854f1e0cb839fbe color:#bcdf82
 * result-extends: 7d2719ece44db1eb color:#e6edd2
 * async-process: 7ad370349195f682 color:#7ada35
 * boolean-event: 925a73eedbbac647 color:#3467a5
 * implements-value: 51bb527cf1e89432 color:#664253
 * handler-array: 3c568a0183fa5ce2 color:#d1769b
 * parameter-array: 64a7568ab21ce01b color:#ab4138
 * state-array: ff557df4b0c2f9fa color:#99901a
 * number-storage: 3ace68a5f6df45fd color:#1c4bf5
 * calculate-calculate: a9fc5ba7d1b855b0 color:#126330
 * context-extends: 1c7f31344282d80b color:#a50fde
 * item-object: e88492ec6b04af46 color:#bd166e
 * async-module: 6b53e14ccffabd24 color:#c1de2
 * optimize-setup: 92c98ab2d25f0b5c color:#37bbed
 * fetch-helper: f925dc00d74324fa color:#814f3f
 * variable-value: f960368c2576e55d color:#96f00e
 * prototype-reject: 6c2d3727359b5737 color:#14aca8
 * request-async: 74444e72143c3dd7 color:#893b46
 * props-context: 3dcf977f67423759 color:#56eaea
 * callback-setup: 2001210bf187555a color:#f0c240
 * function-boolean: ac73bfde789395e3 color:#f1cca1
 * fetch-execute: ac204a759da595df color:#7428a8
 * parse-initialize: 93f12ca7837a351b color:#b759c8
 * index-implements: e954c738e00d66ea color:#dc03d0
 * request-variable: d86844dd050f16a2 color:#8e2cce
 * fetch-subscriber: 95d3417c4bc5ebf7 color:#58f45
 * transform-request: b1dac052b987c81e color:#2cbf50
 * property-handler: a9b70858b213f0f6 color:#467a83
 * subscriber-resolve: fb7671f3fd88200f color:#fba95a
 * transform-callback: 7b58c432782c5e48 color:#32f567
 * render-listener: e91db58ee68f684f color:#ab5017
 * constructor-listener: 5be08859d0cd1df9 color:#cbb5ce
 * error-render: b48b4c56a9a9ac88 color:#4ffc1
 * subscriber-constant: 5242559950c580ab color:#584d3d
 * handler-props: 290f704eb76a7c3d color:#62a196
 * render-calculate: e9d8357d6cb3d5af color:#608ae4
 */






/*
 * property-observer: 1ee38b943ba6dd68 color:#52afa7
 * boolean-observer: 1757415437f129ef color:#368c31
 * module-abstract: 26b74f60e5089062 color:#6b67d7
 * observer-constant: 2a8c50c5efb254e5 color:#99866b
 * listener-manager: 307143e9ae4679c2 color:#8e6889
 * manager-parameter: 219af72f91a18f2b color:#a93a0e
 * item-module: ae4c953299204559 color:#ce6ffb
 * number-context: 8cd99f6e22c9b7d0 color:#c08ebb
 * transform-validate: 1dd436b60a0357c2 color:#f4ccc8
 * cache-error: 338c18e4a00d2824 color:#54311f
 * setup-cache: 15b4407688c508bf color:#bdb165
 * prototype-initialize: df6d159ceb30c575 color:#59d59d
 * cache-listener: 848ccf94781ad6e8 color:#296cf3
 * fetch-render: c3be0361b90855d4 color:#e2d5be
 * utility-calculate: 5e4584e1064d4c52 color:#1413e6
 * fetch-property: 9133d4b6c7b01d20 color:#1f6166
 * await-controller: b01e1ec42ede219d color:#644f05
 * value-reject: 785b9241c4c81192 color:#42aa4
 * data-listener: 3a9917cc00db2bb1 color:#14294
 * boolean-async: d68f0ed063518ba4 color:#622ca1
 * boolean-state: 96c5cd92b9f6c930 color:#797c04
 * transform-value: 981c70e94a5f043f color:#58a10b
 * list-component: 8fa5773462bf05bb color:#72981
 * observer-response: 8068de3d29d10cdb color:#d4f66a
 * calculate-calculate: 6d33fc1405dedc16 color:#256098
 * cache-constant: 0de7888293221b0e color:#a74b44
 * index-abstract: 6bd252a39e4c284e color:#7a7669
 * utility-listener: d779ae9f0ceff535 color:#2f1298
 * return-storage: 8608b0e534f58d80 color:#ce5485
 * item-props: 6b91ff9d52feff2d color:#29a844
 * index-string: af77aa2f616e1100 color:#9aa765
 * callback-boolean: 5074df5aea0feefa color:#55ba00
 * response-controller: 01a94ba48c4f8627 color:#a04066
 * return-interface: 9a885669b051a429 color:#e282af
 * number-update: 27443dbf48debd1e color:#ca890b
 * extends-cache: 722d37110e8acf94 color:#eb3427
 * state-request: d7920cc58ce25600 color:#fa7478
 * success-response: f75fa15bc61c3d9d color:#a9b474
 * reject-interface: c79e9b751f600310 color:#6a3f21
 * async-service: 2a5e1414ef214255 color:#bffebc
 * function-calculate: 3498a0e05fb609a2 color:#758c4f
 * method-utility: 2c1aaac3e5e48dce color:#3e9517
 * manager-cache: 5050a511b42982aa color:#3be27c
 * async-key: f696e8e440ed6ac1 color:#b15c82
 * listener-constructor: 68d5ca3078949ba6 color:#606040
 * promise-load: 1ab53505167d70ce color:#aff555
 * service-request: 9a8a12f2190e466f color:#c9e573
 * handler-calculate: 0ae75d51f7270390 color:#a22a4e
 * controller-service: 80fb9f7d7ef90e68 color:#efbc5d
 */




/*
 * function-value: 76cfa6331822a627 color:#952306
 * value-result: ebef37be9984b140 color:#83f9bc
 * setup-manager: 621ac42389a6fe23 color:#a646a
 * list-data: abf397d1abbd789f color:#2a17d2
 * error-variable: 5a3e019412a23685 color:#d1a031
 * handler-state: 2d44ff4479304ac6 color:#b12be5
 * listener-boolean: 93a1e970082f2c5f color:#abf986
 * update-component: d0c20ffe9b2cacab color:#be1d24
 * resolve-setup: 2a1e999f77ae0dfd color:#7824ef
 * error-configure: 9e260d3f006228a1 color:#d8d17
 * subscriber-parse: ae7e081f75513a3e color:#752d
 * callback-storage: c425c7da1bfa3915 color:#5eab53
 * setup-async: 807f49a5bf36315b color:#8d70c7
 * manager-listener: 9b3e5025d212cf4b color:#f5a1f5
 * process-load: 817b73e54d068292 color:#e94de
 * cache-storage: 8863a8fac23dccda color:#a8a1ce
 * list-component: 9cb8d0cdae6f3fd6 color:#92213a
 * request-transform: 589e2332c86fa1da color:#8de721
 * observer-process: 23485ffe641e9b01 color:#8d3758
 * request-request: 57f2b0a6e7df940b color:#550f4a
 * request-key: c1745f1aa0aba6f8 color:#ed9834
 * async-context: 699d6703d7f5aeb7 color:#38719f
 * handler-reject: aabe7602f91ecd4b color:#f66093
 * configure-prototype: cf785a032c523516 color:#e27ecf
 * reject-request: 4b8f5a408592baa0 color:#90b267
 * controller-service: 3b160fc14f11eb6c color:#d1c070
 * update-module: 7fd49b01392a8b58 color:#a7a96f
 * parse-component: 87ad9e0ae0858875 color:#74051f
 * extends-constant: f69a156279d01f68 color:#2d8dc2
 * storage-controller: b8d51a3a2b1850a8 color:#5b0bb8
 * event-function: 9d9c983595497ef4 color:#60e71f
 * initialize-interface: a261915cc1c8b7f3 color:#7cc4be
 * success-update: 2d5db31511b49f60 color:#9433a7
 * controller-update: f8e6a12f22b5ea56 color:#b4b720
 * interface-data: 564874b65f66fe48 color:#a79bba
 * observer-parse: 847c8458f4ddb0f3 color:#455bac
 * context-callback: 712940b69d72aee9 color:#3a5e8d
 * service-method: bbc44da4f238100d color:#35296
 * subscriber-parameter: 856e78fb595b1c59 color:#9121fb
 * implements-update: 2308f202737beacc color:#27d7a7
 * property-process: f9d290b1753e7dd3 color:#c6f192
 * item-load: a76375bb08e2c5e4 color:#b0adad
 * event-promise: ac8f099b6353a7a4 color:#50ca51
 * render-update: 4bbcb53964dc0df1 color:#6e828e
 */




/*
 * execute-load: 189bee01ee40549f color:#99e43e
 * listener-state: 14cba9546d0697d6 color:#d459c9
 * transform-list: d14aa97f7c222aea color:#e324b5
 * item-load: 8a6bfcef1bee1ed6 color:#26f481
 * utility-request: 8e00326649f39b21 color:#8a96ee
 * request-module: bcff56a64d89b69a color:#a46ab2
 * method-load: 993b6e2636ff00db color:#17521e
 * abstract-initialize: 381c6f0d7bb8ab18 color:#177e21
 * return-reject: fea206743f39fdc8 color:#6ccbde
 * index-service: 174df990765ec315 color:#26a443
 * controller-component: 2072888c5975c206 color:#7286c8
 * calculate-prototype: c33b07171f5a2850 color:#877a38
 * interface-extends: 49c133a13a0e6e51 color:#d52588
 * request-setup: cf8d3025302c1155 color:#8e5be9
 * context-extends: ccefacb3f3bd4362 color:#340333
 * parameter-configure: ef7c73d5efce9086 color:#4d3685
 * item-event: 7c95cc5fc8186962 color:#851bb0
 * value-number: ae5cc2d10f13d794 color:#a9c52c
 * await-abstract: 6f3766b62d479d40 color:#78c1a1
 * constructor-render: 200f9aec5adb9e2d color:#b69ea5
 * service-extends: 7579519fb0838084 color:#64b3e7
 * module-property: 0619deb39900892d color:#9596a8
 * value-fetch: 3aa2452ced28321c color:#2c40a0
 * constructor-extends: 98bc0c4a0d9b7ba6 color:#2900a8
 * initialize-parse: 048fd523ce4bbf2e color:#a921a8
 * storage-number: f1f3d2d6eae8cf80 color:#ff4759
 * result-prototype: 29ac32b3f753356e color:#6a32ed
 * response-context: 0e0b57572e1cc8a4 color:#2616e4
 * boolean-render: 4a38f1a7985daef9 color:#804122
 * controller-optimize: 3f7c5b2fa910198c color:#6add6d
 * cache-context: 0fdf8907c705cd02 color:#798313
 * function-callback: b0a8863dd8dc68ce color:#b13457
 * resolve-variable: f24c5703cfdced73 color:#4a0cff
 * callback-update: b5fa68760e55e0b1 color:#7acc52
 * render-listener: fc6060c30ad09302 color:#ab16a8
 * event-optimize: bf3152fa870c8056 color:#acebd8
 * controller-setup: 1fc82c3f8d988850 color:#f109ba
 * implements-render: 62005b97798cbb21 color:#a2cd62
 * context-execute: 6a40d19154bbdd6f color:#974402
 * configure-async: 709ae27dd6da6545 color:#f950
 * result-property: 6134cde4c5273965 color:#87f338
 * resolve-prototype: 4c4006b26b35272f color:#4a4d1f
 * boolean-fetch: c2695711ebadccb1 color:#b0dfd7
 * process-implements: ae3ecdbb93943233 color:#d02ccd
 * constant-utility: bfc5744f36194fd6 color:#8a90da
 * storage-extends: cc8ce5a9f3e8a23b color:#9d7879
 * object-array: 86772fe879cff401 color:#3d5ba6
 * optimize-state: 4343035d7a6c8851 color:#60da51
 * cache-state: 8db11dc47bf7eac4 color:#533194
 * async-extends: 358de084b5abfbf2 color:#146111
 * service-subscriber: 217a9e890e6b69f3 color:#f59aa3
 * optimize-key: e46613fdebb10ab6 color:#5ecb71
 */






/*
 * item-load: 39ac9e9f224285d0 color:#44bbf3
 * item-index: 6ea409e0a60d938c color:#a47e48
 * handler-number: 35860bb2c8c911a7 color:#af42d
 * state-execute: e6a0045db6ddfca2 color:#6c336c
 * optimize-key: 3796036d351dfa43 color:#f1de21
 * props-implements: 33bf6d82f051d3ec color:#d40e57
 * context-subscriber: edac01b45623f412 color:#a297e
 * fetch-interface: a0892f566eb697b5 color:#d0d8d1
 * validate-constructor: d5443d79299bde40 color:#250597
 * props-event: c2fc576edb9f0df9 color:#70cb26
 * utility-setup: d6bb2b4bc00de22c color:#519f57
 * update-execute: 99e5c236dfa1da68 color:#7ed660
 * implements-constructor: f1a7a92fa96ee874 color:#600f95
 * property-setup: 2922b322322921b1 color:#e0b5ce
 * state-value: a93dc74502f9ae24 color:#55854d
 * calculate-module: d13f6f5e2ecf5106 color:#212cc2
 * function-index: 1d55bcd1de0e6063 color:#e939b
 * reject-result: 79c47d379dce1d48 color:#123a9a
 * event-load: 06dbf5fadb88409e color:#f9d395
 * abstract-constructor: b3da2704aa95ff67 color:#c3312b
 * observer-cache: d92fbb4d9fdfee7d color:#61ca1d
 * prototype-constant: 5929e188e9935de3 color:#29eb37
 * variable-result: 5b04c9eb12933da5 color:#f36eeb
 * return-promise: f0436470fda1905b color:#885bf4
 * optimize-index: 23b9c10d2a61cdc3 color:#e2881a
 * variable-list: 9b7425db2c874770 color:#2589e5
 * interface-await: 72c429c5d34a808d color:#8a322f
 * reject-await: 1a6a1b4febb63bc9 color:#884aac
 * array-initialize: a2224ddf5af4b86a color:#3d127c
 * promise-index: e2aab181e42c0426 color:#e544e4
 * controller-await: 1d994bd92ec468ea color:#76d7d
 * optimize-initialize: 16e35067dd2f0830 color:#d588f5
 * state-calculate: 5b975b26b32b6e21 color:#b63990
 * number-parse: 648c8f561b44cd49 color:#8bfd2e
 * return-setup: 2accf3e37cda952e color:#7d53ad
 * boolean-property: 84a665fbdb812260 color:#9beba5
 * validate-process: b4388888e6e023d4 color:#2098f0
 * execute-initialize: 7ff896ced94c6d9c color:#efd91
 * list-utility: c654f31f523e18e9 color:#93fcfe
 * manager-update: c8f01906c893ced7 color:#c67100
 * observer-request: 1e6dd90a79ae5c57 color:#615645
 * props-array: ad1cead6b629971b color:#c0aea
 * function-result: 73c2f105473dcc99 color:#939c36
 * configure-constant: 90adc2084a6d9eca color:#dd76ac
 * render-update: d545313bdcfa9ae6 color:#848638
 * boolean-function: a4055a35ad70e88c color:#3c72ee
 * validate-number: be2caf585f2fc810 color:#e0f85f
 * reject-configure: fc7813c87daa5f6a color:#f5a335
 */



/*
 * observer-optimize: a1c2ecc27f81bb32 color:#d9027f
 * controller-extends: 751d57927bc91388 color:#695921
 * update-resolve: 54ecc08de8eddba4 color:#fdab7d
 * return-item: 5d14d51b375f2be5 color:#9de2c0
 * method-property: 14ff5d822f7c3027 color:#78ca84
 * handler-success: bb5b008ba383ed5a color:#d9dee9
 * variable-context: e567e042206add9a color:#32dde3
 * object-success: 87bdae4e917461c0 color:#dd2108
 * service-key: 58cbba7c4310fa32 color:#71a60a
 * value-object: 565dafc04cab5309 color:#7dc79c
 * function-manager: b8d23732de316a3f color:#4daa6a
 * load-item: 5d90e42f3f976ba5 color:#445e47
 * setup-cache: a3c5821e2c2ae368 color:#90e0e2
 * resolve-manager: 51614624bcb1b1b3 color:#86151a
 * async-variable: 5390437d788c2cfc color:#298518
 * variable-initialize: ac4a6375e59619cd color:#532cbe
 * constructor-async: 2de58fc60df5ee76 color:#bf630d
 * implements-promise: cba6a192debb61b4 color:#62c448
 * prototype-render: 2d299788ae836655 color:#d5f1d9
 * request-utility: e420e048ad3aa365 color:#e5c6c3
 * optimize-constructor: 433de75678e65560 color:#80adce
 * state-item: a20e1cc65dfc4fa3 color:#380ae
 * request-parameter: 381e78f07b5bbea9 color:#334d0f
 * value-reject: af1efd8d8826be78 color:#67006
 * promise-cache: daa12cb1ab781797 color:#e8c90f
 * item-process: 61240b4a0c232b04 color:#2e2cbb
 * constructor-service: a9b9ece223ba3672 color:#f53869
 * initialize-props: 155aa8c8712e30dd color:#60967c
 * fetch-controller: 958b50efe617f7cf color:#429aa4
 * property-reject: 8fe9eaa1131e8373 color:#39ab71
 * extends-reject: cb7e07c5b4afc139 color:#482e95
 * render-service: c6cd7d7975796c77 color:#86d46b
 * observer-error: e4e748b03b27fc9b color:#21843c
 */




/*
 * response-object: e4797a99d4c0db38 color:#d3bf70
 * reject-success: 0a6fbbac57510d30 color:#89c806
 * value-load: dd5fbb5cbbe6666c color:#f46341
 * error-fetch: 61b13049e1c48aee color:#330498
 * method-implements: 163115c54eff2b33 color:#41f22b
 * optimize-string: d685340b3dbe9cac color:#343645
 * result-string: 80dd42b4191cd76d color:#bf8f0a
 * optimize-function: 2bde3cc06d0ed49c color:#199778
 * list-property: 99d23a6d4a5dadb2 color:#5df0c8
 * helper-subscriber: e14926c0a3ec7f1a color:#5aee4b
 * load-process: 95e4c616173d8941 color:#282edf
 * component-execute: b01525f5e4212cfd color:#d1f19a
 * boolean-index: 8526b9244fdd593d color:#2862c2
 * observer-constant: a1edb17e8b892d3f color:#feb20b
 * request-index: f7b61d5c5c181e0b color:#f4809e
 * index-response: 3e6cd3006ca26b32 color:#b1cae6
 * list-variable: 1e7ec5d0dd432e06 color:#6eb53
 * list-props: 03c098f99a9c7840 color:#70c51d
 * promise-transform: 7408c9a1120ce108 color:#df53a5
 * extends-event: 1fe7fa1b3d405ee5 color:#ba8ccc
 * index-listener: e553040c3325ab69 color:#55628b
 * list-prototype: 3d9f705349fdf33c color:#92192
 * property-cache: 17744e789406c41e color:#e33e64
 * return-key: e3252766f0a08209 color:#e13987
 * prototype-extends: 5134cf6c4e842315 color:#4e1210
 * calculate-cache: 67af6af7158fad95 color:#c9a912
 */




/*
 * utility-resolve: ee4198492e8ac6bb color:#14ed83
 * initialize-variable: 4ef74a69b5b807ee color:#9c2d2b
 * parse-implements: b5acff34768c1f47 color:#1a985d
 * async-index: 255c39535d6a479e color:#91a18c
 * variable-list: a8565afbf87ce943 color:#81050c
 * state-subscriber: 7517454e66c9df81 color:#416a4
 * item-variable: a940b2bc22b7cba3 color:#ea1227
 * configure-value: aaeee8b7e5b6a127 color:#4b5d77
 * success-string: 0f559e70a05a4a12 color:#c4f180
 * event-storage: 90afca40cc77cd57 color:#3ab27e
 * list-constant: b03685895e7d7dbc color:#1b5711
 * list-subscriber: bd0bc1199e19eeb8 color:#19101a
 * manager-error: d63dc625fa0f1016 color:#ca6ffd
 * state-configure: 2d36a7d4b4372e1b color:#3eb4bd
 * abstract-configure: 8f700781409f673a color:#674bbc
 * service-value: 4eecbb7964db2e77 color:#fce17b
 * observer-subscriber: 1ad6107e3c4765eb color:#e909ca
 * parameter-props: cffaf58757b43f4b color:#680ca9
 * event-item: bcebf91ca6072932 color:#fae948
 * key-state: 211fbb7d4c5d33c9 color:#b75fa1
 * handler-event: baa5c6adbbec20bd color:#9f9cbc
 * number-response: 3932cb1a008908db color:#6ed299
 * calculate-array: 46559cad882f7a15 color:#25eb13
 * component-error: 77cd3ace14382842 color:#cc141
 * error-optimize: 602ded6000f01dc5 color:#e3898f
 * context-validate: 20653d5db2b0b8e4 color:#51491a
 * data-implements: f67bc61c00bcfc14 color:#59bb77
 * index-object: 2698e66b1229041b color:#1c5512
 * error-state: e7aef39e7b694c0f color:#c94eea
 * variable-service: ae8cd562a093ae1a color:#67a0bc
 * listener-callback: 66dea6f9ca560c14 color:#9e76b6
 * await-service: 8d537698ca612904 color:#413870
 * listener-resolve: 7db6a0642a7a3e9a color:#558835
 * data-number: 53fe2d765cb9f2e4 color:#9aed2
 * data-configure: b5d56ca87cbbe92d color:#bfa243
 * array-number: a7595da091bcee42 color:#53c897
 * validate-props: 548195641eb614c5 color:#6fe69a
 * observer-string: 444c094423e1e83c color:#bcdf2
 * function-item: ae7c45c8131a4bed color:#36a967
 * object-implements: 9384bf2b27d974cf color:#a258f8
 * extends-helper: 3126db9a32d39d61 color:#53f275
 * implements-variable: 934daa7ae95f6f2f color:#fe8df3
 * key-list: cd22a9bf0bab7ebd color:#e90263
 * method-reject: 745a839fb87a4a8f color:#e0123b
 * subscriber-variable: b4cfb9a2604e72dd color:#a8e73b
 * response-list: e57b28fd7a22322a color:#694952
 * subscriber-calculate: 1bc55dbfaa4241e8 color:#b2af4c
 * context-number: 9e18c36d100db08b color:#c94e95
 * storage-transform: 1586bcf6a8c7517b color:#3afeb6
 * observer-parameter: 138005ea5cd3b125 color:#10a4c3
 * callback-calculate: b7f96f34d32564b1 color:#f9d0ae
 * controller-success: e4326ff2fb1d4479 color:#64c062
 * value-extends: c2d73ea0f3f15a0b color:#ad3f55
 * implements-property: 92f4ac87768443e8 color:#51b8d7
 */




/*
 * constant-number: f9aa335f91c08410 color:#989761
 * function-item: 288ef3890c6d1612 color:#2240f5
 * method-number: 6f559803be5e436e color:#6bf321
 * initialize-component: 0615226cb5833302 color:#26fae
 * calculate-module: 7f9613cdc70ddf51 color:#34ad0a
 * transform-number: 38027e20f9091158 color:#68b8a6
 * render-data: 89f429c3295e58d3 color:#d3ec1
 * helper-configure: 67130f36b7b5e8cd color:#ef658a
 * string-execute: f6e69c796dada989 color:#6e3667
 * await-context: 8c9031dba3e8dc76 color:#4e67e5
 * boolean-request: 49f874faa5532434 color:#183ea4
 * success-async: cdebec05df660a2c color:#f3c22d
 * reject-validate: e0358b73e4db5ca0 color:#fcbe47
 * abstract-array: 6e65f7e51cc93ec8 color:#5342ee
 * execute-update: 0c89127993ed2163 color:#b9bb8e
 * resolve-execute: 294b77474aa2c270 color:#b5deb1
 * execute-result: cf98612ead8e0119 color:#66ccd1
 * optimize-component: 13e1a6715b7642d2 color:#e64ff8
 * event-utility: 9b32642a4e0c5e4c color:#200947
 * manager-utility: 7f8b4e92d5b6a65b color:#4c1715
 * success-helper: 03e6ab6600dcbd8c color:#2173d9
 * abstract-state: c29285ba46a83647 color:#2a3387
 * execute-handler: 54b810b730d5e79d color:#3f23a
 * promise-execute: c39b1a93978fd389 color:#5211df
 * array-subscriber: fc831bedb7bfb3b4 color:#c31ee4
 * service-string: 08ae93709cb0c609 color:#75ed6d
 * error-subscriber: 4e02ce292c5928b6 color:#76f973
 * helper-error: 5b7b97fbe70123ad color:#85a310
 * render-boolean: 2d4a1e9187a4040e color:#fac2f9
 * success-update: 4a70211bb29fe8b6 color:#e9c29d
 * result-storage: 7eaea95891f8c47f color:#a1fc61
 * context-response: 1a170a576657ada6 color:#92e06f
 * result-event: f850743230f6d86c color:#45eda
 * setup-function: 1e64cc8995c9a30a color:#1a242c
 * abstract-item: a29532f657543c14 color:#3df61c
 * result-data: 45b6ae2b63f1a920 color:#ad129e
 * string-parameter: 816c81c6aaa0ded7 color:#1a7697
 * request-service: 0d7c29196ca6d634 color:#f7e17b
 * update-abstract: 4e06411a422a38c3 color:#762cb2
 * service-update: 5219eddc7fd669ac color:#111cc
 * boolean-number: e46084bcb4a74cc2 color:#69848e
 * response-request: 82ac5791fe65139f color:#3be0d4
 * setup-response: a15993bae045839f color:#b72ce9
 * helper-service: 095dc467490571af color:#1c7a0b
 * index-number: ecc989dc2cf1e6a6 color:#69074f
 */